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+CisKK2ludCBSb3VuZChpbnQgbik7CitzdGQ6OnN0cmluZyBQcmV0dHlJbnQobG9uZyB2YWx1ZSwgc2l6ZV90IGJhc2UpOworCisjZW5kaWYgIC8vIEJFTkNITUFSS1NfVVRJTFNfSApkaWZmIC0tZ2l0IGEvYnVpbGQvcnVuLW9uLWhvc3QubWsgYi9idWlsZC9ydW4tb24taG9zdC5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzdlNWQ1Ci0tLSAvZGV2L251bGwKKysrIGIvYnVpbGQvcnVuLW9uLWhvc3QubWsKQEAgLTAsMCArMSw0NCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKworIyBJbmNsdWRlIG9uY2UKK2lmbmVxICgkKGJpb25pY19ydW5fb25faG9zdF9ta19pbmNsdWRlZCksdHJ1ZSkKK2Jpb25pY19ydW5fb25faG9zdF9ta19pbmNsdWRlZDo9dHJ1ZQorCitpZm5lcSAoJChUQVJHRVRfQVJDSCksJChmaWx0ZXIgJChUQVJHRVRfQVJDSCksYXJtIG1pcHMgeDg2KSkKK0xJTktFUiA9IGxpbmtlcjY0CitlbHNlCitMSU5LRVIgPSBsaW5rZXIKK2VuZGlmCisKK2lmZXEgKCQoVEFSR0VUX0FSQ0gpLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQorIyBndGVzdCBuZWVkcyBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGZvciBkZWF0aCB0ZXN0IG91dHB1dC4KKyMgTWFrZSBzdXJlIHRvIGNyZWF0ZSBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGlmIGRvZXNuJ3QgZXhpc3QuCisjIGJpb25pYyBpdHNlbGYgc2hvdWxkIGFsd2F5cyB3b3JrIHJlbGF0aXZlIHRvIEFORFJPSURfREFUQSBvciBBTkRST0lEX1JPT1QuCitiaW9uaWMtcHJlcGFyZS1ydW4tb24taG9zdDogJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS8kKExJTktFUikgJChUQVJHRVRfT1VUKS9ldGMvaG9zdHMgJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS9zaAorCWlmIFsgISAtZCAvc3lzdGVtIF07IHRoZW4gXAorCSAgZWNobyAiQXR0ZW1wdGluZyB0byBjcmVhdGUgL3N5c3RlbSI7IFwKKwkgIHN1ZG8gbWtkaXIgLXAgLW0gMDc3NyAvc3lzdGVtOyBcCisJZmkKKwlta2RpciAtcCAkKFRBUkdFVF9PVVRfREFUQSkvbG9jYWwvdG1wCisJbG4gLWZzIGByZWFscGF0aCAkKFRBUkdFVF9PVVQpL2JpbmAgL3N5c3RlbS8KKwlsbiAtZnMgYHJlYWxwYXRoICQoVEFSR0VUX09VVCkvZXRjYCAvc3lzdGVtLworCWxuIC1mcyBgcmVhbHBhdGggJChUQVJHRVRfT1VUKS9saWJgIC9zeXN0ZW0vCisJaWYgWyAtZCAiJChUQVJHRVRfT1VUKS9saWI2NCIgXTsgdGhlbiBcCisJICBsbiAtZnMgYHJlYWxwYXRoICQoVEFSR0VUX09VVCkvbGliNjRgIC9zeXN0ZW0vOyBcCisJZmkKK2VuZGlmCitlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9BbmRyb2lkLm1rIGIvbGliYy9BbmRyb2lkLm1rCmluZGV4IDMwMDUwOTIuLjJjMzNhOGYgMTAwNjQ0Ci0tLSBhL2xpYmMvQW5kcm9pZC5taworKysgYi9saWJjL0FuZHJvaWQubWsKQEAgLTEsNSArMSw3IEBACiBMT0NBTF9QQVRIIDo9ICQoY2FsbCBteS1kaXIpCiAKK2Jpb25pY19jb3ZlcmFnZSA6PSBmYWxzZQorCiAjIE1ha2UgZXZlcnl0aGluZyBkZXBlbmQgb24gYW55IGNoYW5nZXMgdG8gaW5jbHVkZWQgbWFrZWZpbGVzLgogbGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCiAKQEAgLTM4LDEyICs0MCw5IEBACiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogbGliY19jb21tb25fc3JjX2ZpbGVzIDo9IFwKICAgICBiaW9uaWMvYmluZHJlc3Zwb3J0LmMgXAotICAgIGJpb25pYy9kYWVtb24uYyBcCi0gICAgYmlvbmljL2Vyci5jIFwKICAgICBiaW9uaWMvZXRoZXJfYXRvbi5jIFwKICAgICBiaW9uaWMvZXRoZXJfbnRvYS5jIFwKICAgICBiaW9uaWMvZnRzLmMgXAotICAgIGJpb25pYy9nZXRob3N0bmFtZS5jIFwKICAgICBiaW9uaWMvZ2V0cHJpb3JpdHkuYyBcCiAgICAgYmlvbmljL2lmX2luZGV4dG9uYW1lLmMgXAogICAgIGJpb25pYy9pZl9uYW1ldG9pbmRleC5jIFwKQEAgLTUxLDExICs1MCw5IEBACiAgICAgYmlvbmljL2lvY3RsLmMgXAogICAgIGJpb25pYy9pc2F0dHkuYyBcCiAgICAgYmlvbmljL21lbW1lbS5jIFwKLSAgICBiaW9uaWMvcGF0aGNvbmYuYyBcCiAgICAgYmlvbmljL3B1dHV0bGluZS5jIFwKICAgICBiaW9uaWMvc2NoZWRfY3B1YWxsb2MuYyBcCiAgICAgYmlvbmljL3NjaGVkX2NwdWNvdW50LmMgXAotICAgIGJpb25pYy9zZW1hcGhvcmUuYyBcCiAgICAgYmlvbmljL3NpZ2Jsb2NrLmMgXAogICAgIGJpb25pYy9zaWdpbnRlcnJ1cHQuYyBcCiAgICAgYmlvbmljL3NpZ3NldG1hc2suYyBcCkBAIC02NCwxMyArNjEsMjQgQEAKICAgICBzdGRpby9mcmVhZC5jIFwKICAgICBzdGRpby9zbnByaW50Zi5jXAogICAgIHN0ZGlvL3NwcmludGYuYyBcCisgICAgc3RkaW8vc3RkaW8uYyBcCisgICAgc3RkaW8vc3RkaW9fZXh0LmNwcCBcCisgICAgc3RkbGliL2F0ZXhpdC5jIFwKKyAgICBzdGRsaWIvZXhpdC5jIFwKIAogIyBGb3J0aWZ5IGltcGxlbWVudGF0aW9ucyBvZiBsaWJjIGZ1bmN0aW9ucy4KIGxpYmNfY29tbW9uX3NyY19maWxlcyArPSBcCiAgICAgYmlvbmljL19fRkRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fZmdldHNfY2hrLmNwcCBcCisgICAgYmlvbmljL19fbWVtY2hyX2Noay5jcHAgXAogICAgIGJpb25pYy9fX21lbW1vdmVfY2hrLmNwcCBcCisgICAgYmlvbmljL19fbWVtcmNocl9jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19wb2xsX2Noay5jcHAgXAorICAgIGJpb25pYy9fX3ByZWFkNjRfY2hrLmNwcCBcCisgICAgYmlvbmljL19fcHJlYWRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fcmVhZF9jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19yZWFkbGlua19jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19yZWFkbGlua2F0X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3JlY3Zmcm9tX2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cGNweV9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHBuY3B5X2Noay5jcHAgXApAQCAtODUsMTMgKzkzLDE0IEBACiAgICAgYmlvbmljL19fdnNucHJpbnRmX2Noay5jcHAgXAogICAgIGJpb25pYy9fX3ZzcHJpbnRmX2Noay5jcHAgXAogCi1saWJjX2Jpb25pY19zcmNfZmlsZXMgOj0gXAorbGliY19iaW9uaWNfbmRrX3NyY19maWxlcyA6PSBcCiAgICAgYmlvbmljL2Fib3J0LmNwcCBcCiAgICAgYmlvbmljL2FjY2VwdC5jcHAgXAogICAgIGJpb25pYy9hY2NlcHQ0LmNwcCBcCiAgICAgYmlvbmljL2FjY2Vzcy5jcHAgXAogICAgIGJpb25pYy9hc3NlcnQuY3BwIFwKICAgICBiaW9uaWMvYXRvZi5jcHAgXAorICAgIGJpb25pYy9iaW9uaWNfc3lzdHJhY2UuY3BwIFwKICAgICBiaW9uaWMvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuY3BwIFwKICAgICBiaW9uaWMvYnJrLmNwcCBcCiAgICAgYmlvbmljL2MxNnJ0b21iLmNwcCBcCkBAIC0xMDAsNyArMTA5LDEwIEBACiAgICAgYmlvbmljL2Nob3duLmNwcCBcCiAgICAgYmlvbmljL2NsZWFyZW52LmNwcCBcCiAgICAgYmlvbmljL2Nsb2NrLmNwcCBcCisgICAgYmlvbmljL2Nsb2NrX2dldGNwdWNsb2NraWQuY3BwIFwKKyAgICBiaW9uaWMvY2xvY2tfbmFub3NsZWVwLmNwcCBcCiAgICAgYmlvbmljL2Nsb25lLmNwcCBcCisgICAgYmlvbmljL2Nsb3NlLmNwcCBcCiAgICAgYmlvbmljL19fY21zZ19ueHRoZHIuY3BwIFwKICAgICBiaW9uaWMvY29ubmVjdC5jcHAgXAogICAgIGJpb25pYy9jdHlwZS5jcHAgXApAQCAtMTEwLDE5ICsxMjIsMjIgQEAKICAgICBiaW9uaWMvZXBvbGxfcHdhaXQuY3BwIFwKICAgICBiaW9uaWMvZXBvbGxfd2FpdC5jcHAgXAogICAgIGJpb25pYy9fX2Vycm5vLmNwcCBcCisgICAgYmlvbmljL2Vycm9yLmNwcCBcCiAgICAgYmlvbmljL2V2ZW50ZmRfcmVhZC5jcHAgXAogICAgIGJpb25pYy9ldmVudGZkX3dyaXRlLmNwcCBcCisgICAgYmlvbmljL2ZhY2Nlc3NhdC5jcHAgXAorICAgIGJpb25pYy9mY2htb2QuY3BwIFwKKyAgICBiaW9uaWMvZmNobW9kYXQuY3BwIFwKICAgICBiaW9uaWMvZmZzLmNwcCBcCiAgICAgYmlvbmljL2Zsb2NrZmlsZS5jcHAgXAotICAgIGJpb25pYy9mb3JrLmNwcCBcCiAgICAgYmlvbmljL2ZwY2xhc3NpZnkuY3BwIFwKICAgICBiaW9uaWMvZnV0aW1lbnMuY3BwIFwKLSAgICBiaW9uaWMvZ2V0YXV4dmFsLmNwcCBcCiAgICAgYmlvbmljL2dldGN3ZC5jcHAgXAotICAgIGJpb25pYy9nZXRlbnRyb3B5X2xpbnV4LmMgXAorICAgIGJpb25pYy9nZXRob3N0bmFtZS5jcHAgXAogICAgIGJpb25pYy9nZXRwZ3JwLmNwcCBcCiAgICAgYmlvbmljL2dldHBpZC5jcHAgXAogICAgIGJpb25pYy9nZXR0aWQuY3BwIFwKKyAgICBiaW9uaWMvX19nbnVfYmFzZW5hbWUuY3BwIFwKICAgICBiaW9uaWMvaW5vdGlmeV9pbml0LmNwcCBcCiAgICAgYmlvbmljL2xjaG93bi5jcHAgXAogICAgIGJpb25pYy9sZnM2NF9zdXBwb3J0LmNwcCBcCkBAIC0xMzQsNDIgKzE0OSwyNSBAQAogICAgIGJpb25pYy9saW5rLmNwcCBcCiAgICAgYmlvbmljL2xvY2FsZS5jcHAgXAogICAgIGJpb25pYy9sc3RhdC5jcHAgXAorICAgIGJpb25pYy9tYWxsb2NfaW5mby5jcHAgXAogICAgIGJpb25pYy9tYnJ0b2MxNi5jcHAgXAogICAgIGJpb25pYy9tYnJ0b2MzMi5jcHAgXAogICAgIGJpb25pYy9tYnN0YXRlLmNwcCBcCisgICAgYmlvbmljL21lbXBjcHkuY3BwIFwKICAgICBiaW9uaWMvbWtkaXIuY3BwIFwKICAgICBiaW9uaWMvbWtmaWZvLmNwcCBcCiAgICAgYmlvbmljL21rbm9kLmNwcCBcCiAgICAgYmlvbmljL21udGVudC5jcHAgXAogICAgIGJpb25pYy9OZXRkQ2xpZW50RGlzcGF0Y2guY3BwIFwKICAgICBiaW9uaWMvb3Blbi5jcHAgXAorICAgIGJpb25pYy9wYXRoY29uZi5jcHAgXAogICAgIGJpb25pYy9wYXVzZS5jcHAgXAogICAgIGJpb25pYy9waXBlLmNwcCBcCiAgICAgYmlvbmljL3BvbGwuY3BwIFwKICAgICBiaW9uaWMvcG9zaXhfZmFkdmlzZS5jcHAgXAogICAgIGJpb25pYy9wb3NpeF9mYWxsb2NhdGUuY3BwIFwKKyAgICBiaW9uaWMvcG9zaXhfbWFkdmlzZS5jcHAgXAogICAgIGJpb25pYy9wb3NpeF90aW1lcnMuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9hdGZvcmsuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9hdHRyLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfY29uZC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2NyZWF0ZS5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2RldGFjaC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2VxdWFsLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfZXhpdC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2dldGNwdWNsb2NraWQuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9nZXRzY2hlZHBhcmFtLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfZ2V0dGlkX25wLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfaW50ZXJuYWxzLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfam9pbi5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2tleS5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2tpbGwuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9tdXRleC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX29uY2UuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9yd2xvY2suY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9zZWxmLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfc2V0bmFtZV9ucC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX3NldHNjaGVkcGFyYW0uY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9zaWdtYXNrLmNwcCBcCiAgICAgYmlvbmljL3B0cmFjZS5jcHAgXAogICAgIGJpb25pYy9wdHkuY3BwIFwKICAgICBiaW9uaWMvcmFpc2UuY3BwIFwKQEAgLTE4Miw2ICsxODAsNyBAQAogICAgIGJpb25pYy9zY2FuZGlyLmNwcCBcCiAgICAgYmlvbmljL3NjaGVkX2dldGFmZmluaXR5LmNwcCBcCiAgICAgYmlvbmljL3NjaGVkX2dldGNwdS5jcHAgXAorICAgIGJpb25pYy9zZW1hcGhvcmUuY3BwIFwKICAgICBiaW9uaWMvc2VuZC5jcHAgXAogICAgIGJpb25pYy9zZXRlZ2lkLmNwcCBcCiAgICAgYmlvbmljL19fc2V0X2Vycm5vLmNwcCBcCkBAIC0xOTcsMjQgKzE5NiwyMSBAQAogICAgIGJpb25pYy9zaWduYWxmZC5jcHAgXAogICAgIGJpb25pYy9zaWdwZW5kaW5nLmNwcCBcCiAgICAgYmlvbmljL3NpZ3Byb2NtYXNrLmNwcCBcCisgICAgYmlvbmljL3NpZ3F1ZXVlLmNwcCBcCiAgICAgYmlvbmljL3NpZ3N1c3BlbmQuY3BwIFwKKyAgICBiaW9uaWMvc2lndGltZWR3YWl0LmNwcCBcCiAgICAgYmlvbmljL3NpZ3dhaXQuY3BwIFwKKyAgICBiaW9uaWMvc2lnd2FpdGluZm8uY3BwIFwKICAgICBiaW9uaWMvc29ja2V0LmNwcCBcCiAgICAgYmlvbmljL3N0YXQuY3BwIFwKICAgICBiaW9uaWMvc3RhdHZmcy5jcHAgXAotICAgIGJpb25pYy9zdHJjb2xsX2wuY3BwIFwKICAgICBiaW9uaWMvc3RyZXJyb3IuY3BwIFwKICAgICBiaW9uaWMvc3RyZXJyb3Jfci5jcHAgXAotICAgIGJpb25pYy9zdHJmdGltZV9sLmNwcCBcCiAgICAgYmlvbmljL3N0cnNpZ25hbC5jcHAgXAogICAgIGJpb25pYy9zdHJ0b2xkLmNwcCBcCi0gICAgYmlvbmljL3N0cnRvbGRfbC5jcHAgXAotICAgIGJpb25pYy9zdHJ0b2xsX2wuY3BwIFwKLSAgICBiaW9uaWMvc3RydG91bGxfbC5jcHAgXAotICAgIGJpb25pYy9zdHJ4ZnJtX2wuY3BwIFwKICAgICBiaW9uaWMvc3R1YnMuY3BwIFwKICAgICBiaW9uaWMvc3ltbGluay5jcHAgXAotICAgIGJpb25pYy9zeXNjb25mLmNwcCBcCisgICAgYmlvbmljL3N5c2luZm8uY3BwIFwKICAgICBiaW9uaWMvc3lzbG9nLmNwcCBcCiAgICAgYmlvbmljL3N5c19zaWdsaXN0LmMgXAogICAgIGJpb25pYy9zeXNfc2lnbmFtZS5jIFwKQEAgLTIyNiwxMCArMjIyLDI3IEBACiAgICAgYmlvbmljL3Vtb3VudC5jcHAgXAogICAgIGJpb25pYy91bmxpbmsuY3BwIFwKICAgICBiaW9uaWMvdXRpbWVzLmNwcCBcCi0gICAgYmlvbmljL3Zkc28uY3BwIFwKICAgICBiaW9uaWMvd2FpdC5jcHAgXAogICAgIGJpb25pYy93Y2hhci5jcHAgXAogICAgIGJpb25pYy93Y3R5cGUuY3BwIFwKKyAgICBiaW9uaWMvd21lbXBjcHkuY3BwIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzIDo9CisKKyMgVGhlIGZvcmsgaW1wbGVtZW50YXRpb24gZGVwZW5kcyBvbiBwdGhyZWFkIGRhdGEsIHNvIHdlIGNhbid0IGluY2x1ZGUgaXQgaW4KKyMgbGliY19uZGsuYS4KK2xpYmNfYmlvbmljX3NyY19maWxlcyArPSBiaW9uaWMvZm9yay5jcHAKKworIyBUaGUgZGF0YSB0aGF0IGJhY2tzIGdldGF1eHZhbCBpcyBpbml0aWFsaXplZCBpbiB0aGUgbGliYyBpbml0IGZ1bmN0aW9ucyB3aGljaAorIyBhcmUgaW52b2tlZCBieSB0aGUgbGlua2VyLiBJZiB0aGlzIGZpbGUgaXMgaW5jbHVkZWQgaW4gbGliY19uZGsuYSwgb25seSBvbmUgb2YKKyMgdGhlIGNvcGllcyBvZiB0aGUgZ2xvYmFsIGRhdGEgd2lsbCBiZSBpbml0aWFsaXplZCwgcmVzdWx0aW5nIGluIG51bGxwdHIKKyMgZGVyZWZlcmVuY2VzLgorbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy9nZXRhdXh2YWwuY3BwCisKKyMgVGhlc2UgdGhyZWUgcmVxdWlyZSBnZXRhdXh2YWwsIHdoaWNoIGlzbid0IGF2YWlsYWJsZSBvbiBvbGRlciBwbGF0Zm9ybXMuCitsaWJjX2Jpb25pY19zcmNfZmlsZXMgKz0gYmlvbmljL2dldGVudHJvcHlfbGludXguYworbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy9zeXNjb25mLmNwcAorbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy92ZHNvLmNwcAogCiBsaWJjX2N4YV9zcmNfZmlsZXMgOj0gXAogICAgIGJpb25pYy9fX2N4YV9ndWFyZC5jcHAgXApAQCAtMjQwLDkgKzI1Myw2IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vbGRleHAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vc2xlZXAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vdXNsZWVwLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9hYnMuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvZ2V0b3B0X2xvbmcuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvaW1heGFicy5jIFwKQEAgLTI2Nyw3ICsyNzcsNiBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3djc3Nwbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93Y3N0b2suYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNoci5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1zZXQuYyBcCiAKIGxpYmNfdXBzdHJlYW1fbmV0YnNkX3NyY19maWxlcyA6PSBcCkBAIC0yODgsOCArMjk3LDggQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2Rpdi5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2RyYW5kNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9lcmFuZDQ4LmMgXAotICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvanJhbmQ0OC5jIFwKKyAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2xjb25nNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9sZGl2LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvbGxkaXYuYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9scmFuZDQ4LmMgXApAQCAtMjk3LDE0ICszMDYsMTIgQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL25yYW5kNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9fcmFuZDQ4LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmFuZF9yLmMgXAotICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvc2VlZDQ4LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvc3JhbmQ0OC5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RyaW5nL21lbWNjcHkuYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0cmluZy9zdHJjYXNlc3RyLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdHJpbmcvc3RyY29sbC5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RyaW5nL3N0cnhmcm0uYyBcCi0gICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3VuaXN0ZC9raWxscGcuYyBcCiAKIGxpYmNfdXBzdHJlYW1fb3BlbmJzZF9nZHRvYV9zcmNfZmlsZXMgOj0gXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9nZHRvYV9zdXBwb3J0LmNwcCBcCkBAIC0zMzMsMTEgKzM0MCwxOCBAQAogICAgICQobGliY191cHN0cmVhbV9vcGVuYnNkX2dkdG9hX3NyY19maWxlcykgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2Evc3RydG9yUS5jIFwKIAorIyBUaGVzZSB0d28gZGVwZW5kIG9uIGdldGVudHJvcHlfbGludXguY3BwLCB3aGljaCBpc24ndCBpbiBsaWJjX25kay5hLgogbGliY191cHN0cmVhbV9vcGVuYnNkX3NyY19maWxlcyA6PSBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jcnlwdC9hcmM0cmFuZG9tLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvY3J5cHQvYXJjNHJhbmRvbV91bmlmb3JtLmMgXAorCitsaWJjX3Vwc3RyZWFtX29wZW5ic2RfbmRrX3NyY19maWxlcyA6PSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jb21wYXQtNDMva2lsbHBnLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2FsYXJtLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2N0eXBlXy5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9kYWVtb24uYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2VycnguYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXhlYy5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9mbm1hdGNoLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2Z0b2suYyBcCkBAIC0zNDcsNiArMzYxLDEyIEBACiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdGltZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi90b2xvd2VyXy5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi90b3VwcGVyXy5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3ZlcnJ4LmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJuLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJueC5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi93YXJuLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm54LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbG9jYWxlL2J0b3djLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbG9jYWxlL21icmxlbi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2xvY2FsZS9tYnN0b3djcy5jIFwKQEAgLTM4MCw2ICs0MDAsNyBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vYXNwcmludGYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9jbHJlcnIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9kcHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmRvcGVuLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmVvZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZlcnJvci5jIFwKQEAgLTM5MSw2ICs0MTIsOSBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldHdjLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldHdzLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmlsZW5vLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mbWVtb3Blbi5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZvcGVuLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZnByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZwdXJnZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZwdXRjLmMgXApAQCAtNDE4LDYgKzQ0Miw4IEBACiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXR3Y2hhci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21ha2VidWYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9ta3RlbXAuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX21lbXN0cmVhbS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL29wZW5fd21lbXN0cmVhbS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3BlcnJvci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3ByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dGMuYyBcCkBAIC00MzQsNyArNDYwLDYgQEAKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldGJ1ZmZlci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldHZidWYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zc2NhbmYuYyBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zdGRpby5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3N3cHJpbnRmLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc3dzY2FuZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3RlbXBuYW0uYyBcCkBAIC00NjAsMTMgKzQ4NSwxNCBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vd3ByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3dzY2FuZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3dzZXR1cC5jIFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvYXRvaS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdG9sLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2F0b2xsLmMgXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2V4aXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvZ2V0ZW52LmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2luc3F1ZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9sc2VhcmNoLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3JlYWxsb2NhcnJheS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc2V0ZW52LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvaW1heC5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2wuYyBcCkBAIC00ODYsMTMgKzUxMiw1NyBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cnNwbi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJzdHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RydG9rLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd2NzbGNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy93Y3NzdHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd2Nzd2lkdGguYyBcCiAKK2xpYmNfcHRocmVhZF9zcmNfZmlsZXMgOj0gXAorICAgIGJpb25pYy9wdGhyZWFkX2F0Zm9yay5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2F0dHIuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9jb25kLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfY3JlYXRlLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZGV0YWNoLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZXF1YWwuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9leGl0LmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZ2V0Y3B1Y2xvY2tpZC5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2dldHNjaGVkcGFyYW0uY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9nZXR0aWRfbnAuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2pvaW4uY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9rZXkuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9raWxsLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfbXV0ZXguY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9vbmNlLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfcndsb2NrLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfc2VsZi5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX3NldG5hbWVfbnAuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9zZXRzY2hlZHBhcmFtLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfc2lnbWFzay5jcHAgXAorCitsaWJjX3RocmVhZF9hdGV4aXRfaW1wbF9zcmNfZmlsZXMgOj0gXAorICAgIGJpb25pYy9fX2N4YV90aHJlYWRfYXRleGl0X2ltcGwuY3BwIFwKKwogbGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMgOj0gXAogICAgIGJpb25pYy9kbF9pdGVyYXRlX3BoZHJfc3RhdGljLmNwcCBcCiAKKyMgVmFyaW91cyBraW5kcyBvZiBMUDMyIGNydWZ0LgorIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbGliY19iaW9uaWNfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICBiaW9uaWMvbW1hcC5jcHAgXAorCitsaWJjX2NvbW1vbl9zcmNfZmlsZXNfMzIgKz0gXAorICAgIGJpb25pYy9sZWdhY3lfMzJfYml0X3N1cHBvcnQuY3BwIFwKKyAgICBiaW9uaWMvbmRrX2NydWZ0LmNwcCBcCisgICAgYmlvbmljL3RpbWU2NC5jIFwKKworbGliY19uZXRic2Rfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICB1cHN0cmVhbS1uZXRic2QvY29tbW9uL2xpYi9saWJjL2hhc2gvc2hhMS9zaGExLmMgXAorCitsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dHcuYyBcCisKKwogIyBEZWZpbmUgc29tZSBjb21tb24gY2ZsYWdzCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBsaWJjX2NvbW1vbl9jZmxhZ3MgOj0gXApAQCAtNTM1LDEzICs2MDUsNiBAQAogICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLURNQUxMT0NfQUxJR05NRU5UPSQoQk9BUkRfTUFMTE9DX0FMSUdOTUVOVCkKIGVuZGlmCiAKLSMgRGVmaW5lIEFORFJPSURfU01QIGFwcHJvcHJpYXRlbHkuCi1pZmVxICgkKFRBUkdFVF9DUFVfU01QKSx0cnVlKQotICAgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtREFORFJPSURfU01QPTEKLWVsc2UKLSAgICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLURBTkRST0lEX1NNUD0wCi1lbmRpZgotCiAjIERlZmluZSBzb21lIGNvbW1vbiBjb25seWZsYWdzCiBsaWJjX2NvbW1vbl9jb25seWZsYWdzIDo9IFwKICAgICAtc3RkPWdudTk5CkBAIC01NTYsMTIgKzYxOSwxMyBAQAogICAgICQoTE9DQUxfUEFUSCkvc3RkaW8gICBcCiAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSMgQWRkIGluIHRoZSBhcmNoLXNwZWNpZmljIGZsYWdzLgorIyBBZGQgaW4gdGhlIGFyY2ggb3IgMzItYml0IHNwZWNpZmljIGZsYWdzCiAjIE11c3QgYmUgY2FsbGVkIHdpdGggJChldmFsKS4KICMgJCgxKTogdGhlIExPQ0FMXyB2YXJpYWJsZSBuYW1lCiAjICQoMik6IHRoZSBiaW9uaWMgdmFyaWFibGUgbmFtZSB0byBwdWxsIGluCiBkZWZpbmUgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncwogJCgxKV8kKFRBUkdFVF9BUkNIKSArPSAkKCQoMilfJChUQVJHRVRfQVJDSCkpCiskKDEpXzMyICs9ICQoJCgyKV8zMikKIGlmZGVmIFRBUkdFVF8yTkRfQVJDSAogJCgxKV8kKFRBUkdFVF8yTkRfQVJDSCkgKz0gJCgkKDIpXyQoVEFSR0VUXzJORF9BUkNIKSkKIGVuZGlmCkBAIC01ODYsNyArNjUwLDEwIEBACiBMT0NBTF9NT0RVTEUgOj0gbGliY19zdGFja19wcm90ZWN0b3IKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKIGluY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKQEAgLTYyNCw3ICs2OTEsMTAgQEAKIExPQ0FMX01PRFVMRSA6PSBsaWJjX3R6Y29kZQogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQpAQCAtNjQyLDI1ICs3MTIsMzUgQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvaXNjL2V2X3RpbWVycy5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvcmVzb2x2L210Y3R4cmVzLmMgXAogCi1MT0NBTF9DRkxBR1MgOj0gXAorIyBXZSB1c2UgdGhlIE9wZW5CU0QgcmVzX3JhbmRvbS4KK0xPQ0FMX0NGTEFHUyArPSBcCisgICAgLURyZXNfcmFuZG9taWQ9X19yZXNfcmFuZG9taWQKK0xPQ0FMX1NSQ19GSUxFUyArPSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvcmVzX3JhbmRvbS5jIFwKKworTE9DQUxfQ0ZMQUdTICs9IFwKICAgICAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1EQU5EUk9JRF9DSEFOR0VTIFwKICAgICAtRElORVQ2IFwKICAgICAtZnZpc2liaWxpdHk9aGlkZGVuIFwKICAgICAtV25vLXVudXNlZC1wYXJhbWV0ZXIgXAotICAgIC1JJChMT0NBTF9QQVRIKS9kbnMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUgXAogICAgIC1pbmNsdWRlIG5ldGJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL2Rucy9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZSBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2RucwogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQpAQCAtNjc5LDE3ICs3NTksMjEgQEAKIExPQ0FMX0NGTEFHUyA6PSBcCiAgICAgJChsaWJjX2NvbW1vbl9jZmxhZ3MpIFwKICAgICAtV25vLXNpZ24tY29tcGFyZSAtV25vLXVuaW5pdGlhbGl6ZWQgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvaW5jbHVkZSBcCiAgICAgLWluY2x1ZGUgZnJlZWJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvaW5jbHVkZSBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2ZyZWVic2QKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19mcmVlYnNkX3NyY19maWxlcykpCkBAIC03MTAsMTcgKzc5NCwyMSBAQAogICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCiAgICAgLVduby1zaWduLWNvbXBhcmUgLVduby11bmluaXRpYWxpemVkIFwKICAgICAtRFBPU0lYX01JU1RBS0UgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlIFwKLSAgICAtSSQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAogICAgIC1pbmNsdWRlIG5ldGJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAorCiBMT0NBTF9NT0RVTEUgOj0gbGliY19uZXRic2QKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19uZXRic2Rfc3JjX2ZpbGVzKSkKQEAgLTcyOCw2ICs4MTYsNDYgQEAKIAogCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfb3BlbmJzZF9uZGsuYSAtIHVwc3RyZWFtIE9wZW5CU0QgQyBsaWJyYXJ5IGNvZGUKKyMgdGhhdCBjYW4gYmUgc2FmZWx5IGluY2x1ZGVkIGluIHRoZSBsaWJjX25kay5hIChkb2Vzbid0CisjIGNvbnRhaW4gYW55IHRyb3VibGVzb21lIGdsb2JhbCBkYXRhIG9yIGNvbnN0cnVjdG9ycykuCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjCisjIFRoZXNlIGZpbGVzIGFyZSBidWlsdCB3aXRoIHRoZSBvcGVuYnNkLWNvbXBhdC5oIGhlYWRlciBmaWxlCisjIGF1dG9tYXRpY2FsbHkgaW5jbHVkZWQuCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJjX3Vwc3RyZWFtX29wZW5ic2RfbmRrX3NyY19maWxlcykKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorCitMT0NBTF9DRkxBR1MgOj0gXAorICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCisgICAgLVduby1zaWduLWNvbXBhcmUgXAorICAgIC1Xbm8tdW5pbml0aWFsaXplZCBcCisgICAgLVduby11bnVzZWQtcGFyYW1ldGVyIFwKKyAgICAtaW5jbHVkZSBvcGVuYnNkLWNvbXBhdC5oIFwKKworTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvIFwKKworTE9DQUxfTU9EVUxFIDo9IGxpYmNfb3BlbmJzZF9uZGsKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKK0xPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQorCiskKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCitpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCisKKworIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIyBsaWJjX29wZW5ic2QuYSAtIHVwc3RyZWFtIE9wZW5CU0QgQyBsaWJyYXJ5IGNvZGUKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICMKQEAgLTczNywyOCArODY1LDI5IEBACiBpbmNsdWRlICQoQ0xFQVJfVkFSUykKIAogTE9DQUxfU1JDX0ZJTEVTIDo9ICQobGliY191cHN0cmVhbV9vcGVuYnNkX3NyY19maWxlcykKLWlmbmVxICgsJChmaWx0ZXIgJChUQVJHRVRfQVJDSCkseDg2IHg4Nl82NCkpCi0gICMgQ2xhbmcgaGFzIHdyb25nIGxvbmcgZG91YmxlIHNpemUgb3IgTERCTF9NQU5UX0RJRywgaHR0cDovL2IvMTcxNjM2NTEuCi0gIExPQ0FMX0NMQU5HIDo9IGZhbHNlCi1lbHNlCi0gIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQotZW5kaWYKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogCiBMT0NBTF9DRkxBR1MgOj0gXAogICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCi0gICAgLVduby1zaWduLWNvbXBhcmUgLVduby11bmluaXRpYWxpemVkIC1Xbm8tdW51c2VkLXBhcmFtZXRlciBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvIFwKKyAgICAtV25vLXNpZ24tY29tcGFyZSBcCisgICAgLVduby11bmluaXRpYWxpemVkIFwKKyAgICAtV25vLXVudXNlZC1wYXJhbWV0ZXIgXAogICAgIC1pbmNsdWRlIG9wZW5ic2QtY29tcGF0LmggXAogCiBMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBcCisgICAgJChMT0NBTF9QQVRIKS9wcml2YXRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCisgICAgJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dkdG9hLyBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX29wZW5ic2QKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfb3BlbmJzZF9zcmNfZmlsZXMpKQpAQCAtNzc2LDI4ICs5MDUsMjcgQEAKIAogTE9DQUxfU1JDX0ZJTEVTXzMyIDo9ICQobGliY191cHN0cmVhbV9vcGVuYnNkX2dkdG9hX3NyY19maWxlc18zMikKIExPQ0FMX1NSQ19GSUxFU182NCA6PSAkKGxpYmNfdXBzdHJlYW1fb3BlbmJzZF9nZHRvYV9zcmNfZmlsZXNfNjQpCi1pZm5lcSAoLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQotICAjIENsYW5nIGhhcyB3cm9uZyBsb25nIGRvdWJsZSBzaXplIG9yIExEQkxfTUFOVF9ESUcsIGh0dHA6Ly9iLzE3MTYzNjUxLgotICBMT0NBTF9DTEFORyA6PSBmYWxzZQotZWxzZQotICBMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKLWVuZGlmCitMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKIAogTE9DQUxfQ0ZMQUdTIDo9IFwKICAgICAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1Xbm8tc2lnbi1jb21wYXJlIC1Xbm8tdW5pbml0aWFsaXplZCBcCiAgICAgLWZ2aXNpYmlsaXR5PWhpZGRlbiBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCiAgICAgLWluY2x1ZGUgb3BlbmJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9pbmNsdWRlIFwKKwogTE9DQUxfTU9EVUxFIDo9IGxpYmNfZ2R0b2EKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCkBAIC04MTMsMjMgKzk0MSwxMTUgQEAKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1XZnJhbWUtbGFyZ2VyLXRoYW49MjA0OCBcCiAKLWlmZXEgKCQoVEFSR0VUX0FSQ0gpLHg4Nl82NCkKLSAgIyBDbGFuZyBhc3NlbWJsZXIgaGFzIHByb2JsZW0gd2l0aCBzc3NlMy1zdHJjbXAtc2xtLlMsIGh0dHA6Ly9iLzE3MzAyOTkxCi0gIExPQ0FMX0NMQU5HX0FTRkxBR1MgKz0gLW5vLWludGVncmF0ZWQtYXMKLWVuZGlmCisjIHNzc2UzLXN0cmNtcC1zbG0uUyBkb2VzIG5vdCBjb21waWxlIHdpdGggQ2xhbmcuCitMT0NBTF9DTEFOR19BU0ZMQUdTX3g4Nl82NCArPSAtbm8taW50ZWdyYXRlZC1hcworCisjIG1lbWNweS5TLCBtZW1jaHIuUywgZXRjLiBkbyBub3QgY29tcGlsZSB3aXRoIENsYW5nLgorTE9DQUxfQ0xBTkdfQVNGTEFHU19hcm0gKz0gLW5vLWludGVncmF0ZWQtYXMKK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtNjQgKz0gLW5vLWludGVncmF0ZWQtYXMKIAogTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCi1MT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQotTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKSAtV29sZC1zdHlsZS1jYXN0CitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykgYmlvbmljL2xpYnN0ZGMrKy9pbmNsdWRlCiBMT0NBTF9NT0RVTEUgOj0gbGliY19iaW9uaWMKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKworCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfYmlvbmljX25kay5hIC0gVGhlIHBvcnRpb25zIG9mIGxpYmNfYmlvbmljIHRoYXQgY2FuCisjIGJlIHNhZmVseSB1c2VkIGluIGxpYmNfbmRrLmEgKG5vIHRyb3VibGVzb21lIGdsb2JhbCBkYXRhCisjIG9yIGNvbnN0cnVjdG9ycykuCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJjX2Jpb25pY19uZGtfc3JjX2ZpbGVzKQorTE9DQUxfQ0ZMQUdTIDo9ICQobGliY19jb21tb25fY2ZsYWdzKSBcCisgICAgLVdmcmFtZS1sYXJnZXItdGhhbj0yMDQ4IFwKKworIyBzc3NlMy1zdHJjbXAtc2xtLlMgZG9lcyBub3QgY29tcGlsZSB3aXRoIENsYW5nLgorTE9DQUxfQ0xBTkdfQVNGTEFHU194ODZfNjQgKz0gLW5vLWludGVncmF0ZWQtYXMKKworIyBtZW1jcHkuUywgbWVtY2hyLlMsIGV0Yy4gZG8gbm90IGNvbXBpbGUgd2l0aCBDbGFuZy4KK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtICs9IC1uby1pbnRlZ3JhdGVkLWFzCitMT0NBTF9DTEFOR19BU0ZMQUdTX2FybTY0ICs9IC1uby1pbnRlZ3JhdGVkLWFzCisKK0xPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQorTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykgLVdvbGQtc3R5bGUtY2FzdAorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIGJpb25pYy9saWJzdGRjKysvaW5jbHVkZQorTE9DQUxfTU9EVUxFIDo9IGxpYmNfYmlvbmljX25kaworTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX1NSQ19GSUxFUyxsaWJjX2Jpb25pY19zcmNfZmlsZXMpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQogCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKK0xPQ0FMX1NSQ19GSUxFUyA6PSAkKGxpYmNfdGhyZWFkX2F0ZXhpdF9pbXBsX3NyY19maWxlcykKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgLVdmcmFtZS1sYXJnZXItdGhhbj0yMDQ4CisKK0xPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQorTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykgLVdvbGQtc3R5bGUtY2FzdAorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9NT0RVTEUgOj0gbGliY190aHJlYWRfYXRleGl0X2ltcGwKKyMgVE9ETzogQ2xhbmcgdHJpZXMgdG8gdXNlIF9fdGxzX2dldF9hZGRyIHdoaWNoIGlzIG5vdCBzdXBwb3J0ZWQgeWV0CisjIHJlbW92ZSBhZnRlciBpdCBpcyBpbXBsZW1lbnRlZC4KK0xPQ0FMX0NMQU5HIDo9IGZhbHNlCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKKworaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQorCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfcHRocmVhZC5hIC0gcHRocmVhZHMgcGFydHMgdGhhdCBwcmV2aW91c2x5IGxpdmVkIGluCisjIGxpYmNfYmlvbmljLmEuIFJlbG9jYXRlZCB0byB0aGVpciBvd24gbGlicmFyeSBiZWNhdXNlCisjIHRoZXkgY2FuJ3QgYmUgaW5jbHVkZWQgaW4gbGliY19uZGsuYSAoYXMgdGhleSBsYXlvdXQgb2YKKyMgcHRocmVhZF90IGhhcyBjaGFuZ2VkIG92ZXIgdGhlIHllYXJzIGFuZCBoYXMgQUJJCisjIGNvbXBhdGliaWxpdHkgaXNzdWVzKS4KKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSAkKGxpYmNfcHRocmVhZF9zcmNfZmlsZXMpCitMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpIFwKKyAgICAtV2ZyYW1lLWxhcmdlci10aGFuPTIwNDggXAorCisjIHNzc2UzLXN0cmNtcC1zbG0uUyBkb2VzIG5vdCBjb21waWxlIHdpdGggQ2xhbmcuCitMT0NBTF9DTEFOR19BU0ZMQUdTX3g4Nl82NCArPSAtbm8taW50ZWdyYXRlZC1hcworCisjIG1lbWNweS5TLCBtZW1jaHIuUywgZXRjLiBkbyBub3QgY29tcGlsZSB3aXRoIENsYW5nLgorTE9DQUxfQ0xBTkdfQVNGTEFHU19hcm0gKz0gLW5vLWludGVncmF0ZWQtYXMKK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtNjQgKz0gLW5vLWludGVncmF0ZWQtYXMKKworTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKSAtV29sZC1zdHlsZS1jYXN0CitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX01PRFVMRSA6PSBsaWJjX3B0aHJlYWQKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKwogCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAjIGxpYmNfY3hhLmEgLSBUaGluZ3MgdHJhZGl0aW9uYWxseSBpbiBsaWJzdGRjKysKQEAgLTg0MywxMiArMTA2MywyMSBAQAogCiBMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBiaW9uaWMvbGlic3RkYysrL2luY2x1ZGUKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2N4YQotIyBHQ0MgcmVmdXNlcyB0byBoaWRlIG5ldy9kZWxldGUKLUxPQ0FMX0NMQU5HIDo9IHRydWUKK0xPQ0FMX0NMQU5HIDo9IHRydWUgIyBHQ0MgcmVmdXNlcyB0byBoaWRlIG5ldy9kZWxldGUKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorIyBiLzE3NTc0MDc4OiBOZWVkIHRvIGRpc2FibGUgY292ZXJhZ2UgdW50aWwgd2UgaGF2ZSBhIHByZWJ1aWx0IGxpYnByb2ZpbGVfcnQuCisjIFNpbmNlIHRoaXMgaXMgYSBzdGF0aWMgbGlicmFyeSBidWlsdCB3aXRoIGNsYW5nLCBpdCBuZWVkcyB0byBsaW5rCisjIGxpYnByb2ZpbGVfcnQgd2hlbiBpdCBpcyBsaW5rZWQgaW50byB0aGUgZmluYWwgYmluYXJ5LiBTaW5jZSB0aGUgZmluYWwgYmluYXJ5CisjIGlzIGJ1aWx0IHdpdGggR0NDLCBpdCB3b24ndCBsaW5rIGxpYnByb2ZpbGVfcnQuIFdlIGNhbid0IHZlcnkgZWFzaWx5IGp1c3QgYWRkCisjIGxpYnByb2ZpbGVfcnQgdG8gYWxsIGxpbmsgbGluZXMgdGhlIHdheSB3ZSd2ZSBkb25lIGZvciBsaWJnY292IGJlY2F1c2UKKyMgbGlicHJvZmlsZV9ydCBpc24ndCBwcmVidWlsdCwgYW5kIGl0IHdvdWxkIGJlIHRyaWNreSB0byB3cml0ZSBhIHJ1bGUgdGhhdAorIyB3b3VsZCBtYWtlIHN1cmUgbGlicHJvZmlsZV9ydCBpcyBidWlsdC4KK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSBmYWxzZQogCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKQEAgLTg2Niw3ICsxMDk1LDEwIEBACiBMT0NBTF9NT0RVTEUgOj0gbGliY19zeXNjYWxscwogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQogCkBAIC04ODUsOCArMTExNyw3OCBAQAogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpIC1mbm8tYnVpbHRpbgogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKworIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyBsaWJjX25kay5hCisjIENvbXBhdGliaWxpdHkgbGlicmFyeSBmb3IgdGhlIE5ESy4gVGhpcyBsaWJyYXJ5IGNvbnRhaW5zCisjIGFsbCB0aGUgcGFydHMgb2YgbGliYyB0aGF0IGFyZSBzYWZlIHRvIHN0YXRpY2FsbHkgbGluay4KKyMgV2UgY2FuJ3Qgc2FmZWx5IHN0YXRpY2FsbHkgbGluayB0aGluZ3MgdGhhdCBjYW4gb25seSBydW4KKyMgb24gYSBjZXJ0YWluIHZlcnNpb24gb2YgdGhlIE9TLiBFeGFtcGxlcyBpbmNsdWRlCisjIGFueXRoaW5nIHRoYXQgdGFsa3MgdG8gbmV0ZCAoYSBsYXJnZSBwb3J0aW9uIG9mIHRoZSBETlMKKyMgY29kZSkgYW5kIGFueXRoaW5nIHRoYXQgaXMgZGVwZW5kZW50IG9uIHRoZSBsYXlvdXQgb2YgYQorIyBkYXRhIHN0cnVjdHVyZSB0aGF0IGhhcyBjaGFuZ2VkIGFjcm9zcyByZWxlYXNlcyAoc3VjaCBhcworIyBwdGhyZWFkX3QpLgorIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKKworTE9DQUxfTU9EVUxFIDo9IGxpYmNfbmRrCitMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKK0xPQ0FMX0FTRkxBR1MgOj0gJChMT0NBTF9DRkxBR1MpCitMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgLWZ2aXNpYmlsaXR5PWhpZGRlbiAtTzAKK0xPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogCitMT0NBTF9TUkNfRklMRVMgOj0gXAorICAgICQobGliY19jb21tb25fc3JjX2ZpbGVzKSBcCisgICAgJChsaWJjX2FyY2hfZHluYW1pY19zcmNfZmlsZXMpIFwKKyAgICAkKGxpYmNfbmRrX3N0dWJfc3JjX2ZpbGVzKSBcCisgICAgYmlvbmljL21hbGxvY19kZWJ1Z19jb21tb24uY3BwIFwKKworTE9DQUxfU1JDX0ZJTEVTX2FybSArPSBcCisgICAgYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luX3NvLmMgXAorICAgIGFyY2gtYXJtL2Jpb25pYy9hdGV4aXRfbGVnYWN5LmMgXAorICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRlbmRfc28uUyBcCisKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgXAorICAgIC1ETElCQ19TVEFUSUMgXAorCitMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IFwKKyAgICBsaWJjX2Jpb25pY19uZGsgXAorICAgIGxpYmNfY3hhIFwKKyAgICBsaWJjX2ZyZWVic2QgXAorICAgIGxpYmNfZ2R0b2EgXAorICAgIGxpYmNfbWFsbG9jIFwKKyAgICBsaWJjX25ldGJzZCBcCisgICAgbGliY19vcGVuYnNkX25kayBcCisgICAgbGliY19zdGFja19wcm90ZWN0b3IgXAorICAgIGxpYmNfc3lzY2FsbHMgXAorICAgIGxpYmNfdHpjb2RlIFwKKyAgICBsaWJtIFwKKworTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGliY19hZWFiaQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCisKK2lmbmVxICgkKE1BTExPQ19JTVBMKSxkbG1hbGxvYykKK0xPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgKz0gbGliamVtYWxsb2MKK2VuZGlmCisKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19jb21tb25fc3JjX2ZpbGVzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19hcmNoX2R5bmFtaWNfc3JjX2ZpbGVzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9BU0ZMQUdTLExPQ0FMX0NGTEFHUykpCisKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTkwNSw2ICsxMjA3LDcgQEAKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCiBMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IFwKICAgICBsaWJjX2Jpb25pYyBcCisgICAgbGliY19iaW9uaWNfbmRrIFwKICAgICBsaWJjX2N4YSBcCiAgICAgbGliY19kbnMgXAogICAgIGxpYmNfZnJlZWJzZCBcCkBAIC05MTIsMjAgKzEyMTUsMjIgQEAKICAgICBsaWJjX21hbGxvYyBcCiAgICAgbGliY19uZXRic2QgXAogICAgIGxpYmNfb3BlbmJzZCBcCisgICAgbGliY19vcGVuYnNkX25kayBcCisgICAgbGliY19wdGhyZWFkIFwKICAgICBsaWJjX3N0YWNrX3Byb3RlY3RvciBcCiAgICAgbGliY19zeXNjYWxscyBcCisgICAgbGliY190aHJlYWRfYXRleGl0X2ltcGwgXAogICAgIGxpYmNfdHpjb2RlIFwKIAogTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGliY19hZWFiaQogCi1pZm5lcSAoJChNQUxMT0NfSU1QTCksZGxtYWxsb2MpCi1MT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTICs9IGxpYmplbWFsbG9jCi1lbmRpZgotCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CiAKICMgVE9ETzogc3BsaXQgb3V0IHRoZSBhc2ZsYWdzLgogTE9DQUxfQVNGTEFHUyA6PSAkKExPQ0FMX0NGTEFHUykKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19jb21tb25fc3JjX2ZpbGVzKSkKQEAgLTk0Nyw3ICsxMjUyLDYgQEAKIAogTE9DQUxfU1JDX0ZJTEVTIDo9IFwKICAgICAkKGxpYmNfYXJjaF9zdGF0aWNfc3JjX2ZpbGVzKSBcCi0gICAgJChsaWJjX3N0YXRpY19jb21tb25fc3JjX2ZpbGVzKSBcCiAgICAgYmlvbmljL2xpYmNfaW5pdF9zdGF0aWMuY3BwCiAKIExPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQpAQCAtOTYxLDcgKzEyNjUsMTAgQEAKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIExPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliY19jb21tb24KK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMpKQpAQCAtOTgyLDYgKzEyODksOSBAQAogTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCiBMT0NBTF9NT0RVTEUgOj0gbGliY19tYWxsb2MKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIGluY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKIApAQCAtOTkzLDcgKzEzMDMsNiBAQAogCiBMT0NBTF9TUkNfRklMRVMgOj0gXAogICAgICQobGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMpIFwKLSAgICAkKGxpYmNfc3RhdGljX2NvbW1vbl9zcmNfZmlsZXMpIFwKICAgICBiaW9uaWMvbWFsbG9jX2RlYnVnX2NvbW1vbi5jcHAgXAogICAgIGJpb25pYy9saWJjX2luaXRfc3RhdGljLmNwcCBcCiAKQEAgLTEwMDcsNyArMTMxNiwxNSBAQAogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQogTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJjX2NvbW1vbgorCitpZm5lcSAoJChNQUxMT0NfSU1QTCksZGxtYWxsb2MpCitMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTICs9IGxpYmplbWFsbG9jCitlbmRpZgorCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfYXJjaF9zdGF0aWNfc3JjX2ZpbGVzKSkKQEAgLTEwMjIsMTggKzEzMzksMjMgQEAKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKKwogTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCiBMT0NBTF9TUkNfRklMRVMgOj0gXAorICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jIFwKKyAgICBhcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUyBcCiAgICAgJChsaWJjX2FyY2hfZHluYW1pY19zcmNfZmlsZXMpIFwKLSAgICAkKGxpYmNfc3RhdGljX2NvbW1vbl9zcmNfZmlsZXMpIFwKICAgICBiaW9uaWMvbWFsbG9jX2RlYnVnX2NvbW1vbi5jcHAgXAogICAgIGJpb25pYy9saWJjX2luaXRfZHluYW1pYy5jcHAgXAogICAgIGJpb25pYy9OZXRkQ2xpZW50LmNwcCBcCisgICAgYXJjaC1jb21tb24vYmlvbmljL2NydGVuZF9zby5TIFwKIAogTE9DQUxfTU9EVUxFIDo9IGxpYmMKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQotTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIExPQ0FMX1JFUVVJUkVEX01PRFVMRVMgOj0gdHpkYXRhCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSBcCisgICAgJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykgXAorICAgICQoTE9DQUxfUEFUSCkvdmVyc2lvbl9zY3JpcHQudHh0IFwKIAogIyBMZWF2ZSB0aGUgc3ltYm9scyBpbiB0aGUgc2hhcmVkIGxpYnJhcnkgc28gdGhhdCBzdGFjayB1bndpbmRlcnMgY2FuIHByb2R1Y2UKICMgbWVhbmluZ2Z1bCBuYW1lIHJlc29sdXRpb24uCkBAIC0xMDQ5LDI1ICsxMzcxLDM5IEBACiAKIExPQ0FMX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliZGwKIExPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliY19jb21tb24KKworaWZuZXEgKCQoTUFMTE9DX0lNUEwpLGRsbWFsbG9jKQorTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFUyArPSBsaWJqZW1hbGxvYworZW5kaWYKKworTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogCisjIERvbid0IHJlLWV4cG9ydCBuZXcvZGVsZXRlIGFuZCBmcmllbmRzLCBldmVuIGlmIHRoZSBjb21waWxlciByZWFsbHkgd2FudHMgdG8uCitMT0NBTF9MREZMQUdTIDo9IC1XbCwtLXZlcnNpb24tc2NyaXB0LCQoTE9DQUxfUEFUSCkvdmVyc2lvbl9zY3JpcHQudHh0CisKICMgV2UnZCByZWFsbHkgbGlrZSB0byBkbyB0aGlzIGZvciBhbGwgYXJjaGl0ZWN0dXJlcywgYnV0IHNpbmNlIHRoaXMgd2Fzbid0IGRvbmUKICMgYmVmb3JlLCB0aGVzZSBzeW1ib2xzIG11c3QgY29udGludWUgdG8gYmUgZXhwb3J0ZWQgb24gTFAzMiBmb3IgYmluYXJ5CiAjIGNvbXBhdGliaWxpdHkuCi1MT0NBTF9MREZMQUdTX2FybTY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQotTE9DQUxfTERGTEFHU19taXBzNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCi1MT0NBTF9MREZMQUdTX3g4Nl82NCA6PSAtV2wsLS1leGNsdWRlLWxpYnMsbGliZ2NjLmEKKyMgVE9ETzogZGlzYWJsZWQgZm9yIGh0dHA6Ly9iLzIwMDY1Nzc0LgorI0xPQ0FMX0xERkxBR1NfNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCisKKyMgVE9ETzogVGhpcyBpcyB0byB3b3JrIGFyb3VuZCBiLzE5MDU5ODg1LiBSZW1vdmUgYWZ0ZXIgcm9vdCBjYXVzZSBpcyBmaXhlZAorTE9DQUxfTERGTEFHU19hcm0gOj0gLVdsLC0taGFzaC1zdHlsZT1zeXN2CiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19hcmNoX2R5bmFtaWNfc3JjX2ZpbGVzKSkKLSQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19zdGF0aWNfY29tbW9uX3NyY19maWxlcykpCisKK0xPQ0FMX05PX0NSVCA6PSB0cnVlCitMT0NBTF9BU0ZMQUdTICs9ICQobGliY19jcnRfdGFyZ2V0X2NmbGFncykKKwogIyBzcGVjaWFsIGZvciBhcm0KLUxPQ0FMX05PX0NSVF9hcm0gOj0gdHJ1ZQogTE9DQUxfQ0ZMQUdTX2FybSArPSAtRENSVF9MRUdBQ1lfV09SS0FST1VORAogTE9DQUxfU1JDX0ZJTEVTX2FybSArPSBcCi0gICAgYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luX3NvLmMgXAotICAgIGFyY2gtYXJtL2Jpb25pYy9hdGV4aXRfbGVnYWN5LmMgXAotICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRlbmRfc28uUworICAgIGFyY2gtYXJtL2Jpb25pYy9hdGV4aXRfbGVnYWN5LmMKKworTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQogCkBAIC0xMDg1LDEwICsxNDIxLDcgQEAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIGluY2x1ZGUgJChDTEVBUl9WQVJTKQogCi1MT0NBTF9DRkxBR1MgOj0gXAotICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCi0gICAgLURNQUxMT0NfTEVBS19DSEVDSyBcCi0KK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKIApAQCAtMTEwNSwxNyArMTQzOCwyNiBAQAogCiBMT0NBTF9NT0RVTEUgOj0gbGliY19tYWxsb2NfZGVidWdfbGVhawogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCi1MT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gXAorICAgICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ZlcnNpb25fc2NyaXB0LnR4dCBcCiAKIExPQ0FMX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliYyBsaWJkbAorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogIyBPbmx5IG5lZWQgdGhpcyBmb3IgYXJtIHNpbmNlIGxpYmMrKyB1c2VzIGl0cyBvd24gdW53aW5kIGNvZGUgdGhhdAogIyBkb2Vzbid0IG1peCB3aXRoIHRoZSBvdGhlciBkZWZhdWx0IHVud2luZCBjb2RlLgotTE9DQUxfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGliYysrCitMT0NBTF9TVEFUSUNfTElCUkFSSUVTX2FybSA6PSBsaWJ1bndpbmRfbGx2bQorTE9DQUxfU1RBVElDX0xJQlJBUklFUyArPSBsaWJjKythYmkKIExPQ0FMX0FMTE9XX1VOREVGSU5FRF9TWU1CT0xTIDo9IHRydWUKIAorIyBEb24ndCByZS1leHBvcnQgbmV3L2RlbGV0ZSBhbmQgZnJpZW5kcywgZXZlbiBpZiB0aGUgY29tcGlsZXIgcmVhbGx5IHdhbnRzIHRvLgorTE9DQUxfTERGTEFHUyA6PSAtV2wsLS12ZXJzaW9uLXNjcmlwdCwkKExPQ0FMX1BBVEgpL3ZlcnNpb25fc2NyaXB0LnR4dAorCiAjIERvbid0IGluc3RhbGwgb24gcmVsZWFzZSBidWlsZAogTE9DQUxfTU9EVUxFX1RBR1MgOj0gZW5nIGRlYnVnCitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiBpbmNsdWRlICQoQlVJTERfU0hBUkVEX0xJQlJBUlkpCkBAIC0xMTQxLDEzICsxNDgzLDIxIEBACiAKIExPQ0FMX01PRFVMRSA6PSBsaWJjX21hbGxvY19kZWJ1Z19xZW11CiBMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKLUxPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSBcCisgICAgJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykgXAorICAgICQoTE9DQUxfUEFUSCkvdmVyc2lvbl9zY3JpcHQudHh0IFwKIAogTE9DQUxfU0hBUkVEX0xJQlJBUklFUyA6PSBsaWJjIGxpYmRsCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CiAKKyMgRG9uJ3QgcmUtZXhwb3J0IG5ldy9kZWxldGUgYW5kIGZyaWVuZHMsIGV2ZW4gaWYgdGhlIGNvbXBpbGVyIHJlYWxseSB3YW50cyB0by4KK0xPQ0FMX0xERkxBR1MgOj0gLVdsLC0tdmVyc2lvbi1zY3JpcHQsJChMT0NBTF9QQVRIKS92ZXJzaW9uX3NjcmlwdC50eHQKKwogIyBEb24ndCBpbnN0YWxsIG9uIHJlbGVhc2UgYnVpbGQKIExPQ0FMX01PRFVMRV9UQUdTIDo9IGVuZyBkZWJ1ZworTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQpAQCAtMTE2NCwyNiArMTUxNCwzNiBAQAogICAgIGJpb25pYy9saWJjX2xvZ2dpbmcuY3BwIFwKIAogaW5jbHVkZSAkKENMRUFSX1ZBUlMpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBiaW9uaWMvbGlic3RkYysrL2luY2x1ZGUKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCisKKyMgVE9ETzogVGhpcyBpcyB0byB3b3JrIGFyb3VuZCBiLzE5MDU5ODg1LiBSZW1vdmUgYWZ0ZXIgcm9vdCBjYXVzZSBpcyBmaXhlZAorTE9DQUxfTERGTEFHU19hcm0gOj0gLVdsLC0taGFzaC1zdHlsZT1zeXN2CisKIExPQ0FMX1NSQ19GSUxFUyA6PSAkKGxpYnN0ZGN4eF9jb21tb25fc3JjX2ZpbGVzKQogTE9DQUxfTU9EVUxFOj0gbGlic3RkYysrCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliYworTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIGluY2x1ZGUgJChCVUlMRF9TSEFSRURfTElCUkFSWSkKIAogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIyBsaWJzdGRjKysuYQogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogaW5jbHVkZSAkKENMRUFSX1ZBUlMpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBiaW9uaWMvbGlic3RkYysrL2luY2x1ZGUKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCiBMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJzdGRjeHhfY29tbW9uX3NyY19maWxlcykKIExPQ0FMX01PRFVMRTo9IGxpYnN0ZGMrKwogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9IGxpYmMKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKIApkaWZmIC0tZ2l0IGEvbGliYy9OT1RJQ0UgYi9saWJjL05PVElDRQppbmRleCA4MGQ5YTI3Li4xZmEzMWMyIDEwMDY0NAotLS0gYS9saWJjL05PVElDRQorKysgYi9saWJjL05PVElDRQpAQCAtMTY3OSwzNSArMTY3OSw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAxOTkwIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KLUFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi1BTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLUZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi1EQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi1IT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotU1VDSCBEQU1BR0UuCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiBBbGwgcmlnaHRzIHJlc2VydmVkLgogCkBAIC0yNTExLDM1ICsyNDgyLDYgQEAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogQ29weXJpZ2h0IChjKSAxOTkzCi0gICAgIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotCi1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJlIG1ldDoKLTEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0yLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLTMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi1GT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLU9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLUxJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLU9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLVNVQ0ggREFNQUdFLgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUNvcHlyaWdodCAoYykgMTk5MwogICAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtMjU2OCwzMyArMjUxMCw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAxOTkzIENocmlzdG9waGVyIEcuIERlbWV0cmlvdQotQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0zLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCi1JTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCi1PRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgotSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi1OT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi1EQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLVRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLShJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCiBDb3B5cmlnaHQgKGMpIDE5OTMgTWFydGluIEJpcmdtZWllcgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIApAQCAtMjcxNCw2MyArMjYyOSw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAxOTk2LTIwMDQgUGVyIEZvZ2Vsc3Ryb20sIE9wc3ljb24gQUIKLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi1PUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLURJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLU9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLUxJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLU9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLVNVQ0ggREFNQUdFLgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUNvcHlyaWdodCAoYykgMTk5NyBNYXJrIEJyaW5pY29tYmUKLUFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzIHNvZnR3YXJlCi0gICBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnZW1lbnQ6Ci0gICBUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IE1hcmsgQnJpbmljb21iZQotNC4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLUFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi1GT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLU9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLUxJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLU9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLVNVQ0ggREFNQUdFLgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KIENvcHlyaWdodCAoYykgMTk5NyBNYXJrIEJyaW5pY29tYmUKIENvcHlyaWdodCAoYykgMjAxMCBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QuCiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzEzMSwzOCArMjk4OSw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAxOTk5IEt1bmdsaWdhIFRla25pc2thIEjDtmdza29sYW4KLShSb3lhbCBJbnN0aXR1dGUgb2YgVGVjaG5vbG9neSwgU3RvY2tob2xtLCBTd2VkZW4pLgotQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0KLTEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi0zLiBOZWl0aGVyIHRoZSBuYW1lIG9mIEtUSCBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCi0gICB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0gICBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgS1RIIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi1FWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi1QVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBLVEggT1IgSVRTIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgotQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCi1XSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgotT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KIENvcHlyaWdodCAoYykgMjAwMCBCZW4gSGFycmlzLgogQ29weXJpZ2h0IChDKSAxOTk1LCAxOTk2LCAxOTk3LCBhbmQgMTk5OCBXSURFIFByb2plY3QuCiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzQyNiwzNCArMzI1Miw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAyMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0zLiBOZWl0aGVyIHRoZSBuYW1lIG9mIE9wc3ljb24gQUIgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLVdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi1ESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLURBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi1PUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLUhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi1MSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi1PVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi1TVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCiBDb3B5cmlnaHQgKGMpIDIwMDIgVGhlIE5ldEJTRCBGb3VuZGF0aW9uLCBJbmMuCiBBbGwgcmlnaHRzIHJlc2VydmVkLgogCkBAIC00MDg2LDYgKzM4ODQsMjIgQEAKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCitDb3B5cmlnaHQgKGMpIDIwMDggT3R0byBNb2VyYmVlayA8b3R0b0BkcmlqZi5uZXQ+CisKK1Blcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcy4KKworVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCitXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCitNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCitBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCiBDb3B5cmlnaHQgKGMpIDIwMDggVG9kZCBDLiBNaWxsZXIgPG1pbGxlcnRAb3BlbmJzZC5vcmc+CiAKIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQpAQCAtNDQyMiw2ICs0MjM2LDM5IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAorQ29weXJpZ2h0IChjKSAyMDExIE1hcnRpbiBQaWV1Y2hvdCA8bXBpQG9wZW5ic2Qub3JnPgorCitQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKK3B1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKK2NvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisKK1RIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKK0FOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKK1dIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKK09SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQ29weXJpZ2h0IChjKSAyMDExIE1hcnRpbiBQaWV1Y2hvdCA8bXBpQG9wZW5ic2Qub3JnPgorQ29weXJpZ2h0IChjKSAyMDA5IFRlZCBVbmFuZ3N0CisKK1Blcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcy4KKworVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCitXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCitNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCitBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCiBDb3B5cmlnaHQgKGMpIDIwMTEgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAogQ29weXJpZ2h0IChjKSAyMDA4IEFSTSBMdGQKIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC00NjM5LDM1ICs0NDg2LDMyIEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAyMDEzLCBMaW5hcm8gTGltaXRlZAotICAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KK0NvcHlyaWdodCAoYykgMjAxMyBUaGUgTmV0QlNEIEZvdW5kYXRpb24sIEluYy4KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCiAKLSAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gICBhcmUgbWV0OgorVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBUaGUgTmV0QlNEIEZvdW5kYXRpb24KK2J5IENocmlzdG9zIFpvdWxhcy4KIAotICAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CisxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCiAKLSAgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0KLSAgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBMaW5hcm8gTGltaXRlZCBub3IgdGhlIG5hbWVzIG9mIGl0cwotICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCi0gICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0KLSAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAgICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gICBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gICBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gICBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAgIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICAgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICAgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gICBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgTkVUQlNEIEZPVU5EQVRJT04sIElOQy4gQU5EIENPTlRSSUJVVE9SUworYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVECitUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBGT1VOREFUSU9OIE9SIENPTlRSSUJVVE9SUworQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApAQCAtNDg1Myw2ICs0Njk3LDQyIEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAorQ29weXJpZ2h0IDE5OTcgTmllbHMgUHJvdm9zIDxwcm92b3NAcGh5c25ldC51bmktaGFtYnVyZy5kZT4KK0NvcHlyaWdodCAyMDA4IERhbWllbiBNaWxsZXIgPGRqbUBvcGVuYnNkLm9yZz4KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1RoZW8gZGUgUmFhZHQgPGRlcmFhZHRAb3BlbmJzZC5vcmc+IGNhbWUgdXAgd2l0aCB0aGUgaWRlYSBvZiB1c2luZworc3VjaCBhIG1hdGhlbWF0aWNhbCBzeXN0ZW0gdG8gZ2VuZXJhdGUgbW9yZSByYW5kb20gKHlldCBub24tcmVwZWF0aW5nKQoraWRzIHRvIHNvbHZlIHRoZSByZXNvbHZlci9uYW1lZCBwcm9ibGVtLiAgQnV0IE5pZWxzIGRlc2lnbmVkIHRoZQorYWN0dWFsIHN5c3RlbSBiYXNlZCBvbiB0aGUgY29uc3RyYWludHMuCisKK0xhdGVyIG1vZGlmaWVkIGJ5IERhbWllbiBNaWxsZXIgdG8gd3JhcCB0aGUgTENHIG91dHB1dCBpbiBhIDE1LWJpdAorcGVybXV0YXRpb24gZ2VuZXJhdG9yIGJhc2VkIG9uIGEgTHVieS1SYWNrb2ZmIGJsb2NrIGNpcGhlci4gVGhpcworZW5zdXJlcyB0aGUgb3V0cHV0IGlzIG5vbi1yZXBlYXRpbmcgYW5kIHByZXNlcnZlcyB0aGUgTVNCIHR3aWRkbGUKK3RyaWNrLCBidXQgbWFrZXMgaXQgbW9yZSByZXNpc3RhbnQgdG8gTENHIHByZWRpY3Rpb24uCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKzIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgorSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUworT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KK0lOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKK0lOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAorTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCitUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKK1RISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogQ29weXJpZ2h0IDIwMDAgRGF2aWQgRS4gTydCcmllbiwgSm9obiBELiBQb2xzdHJhLgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIApkaWZmIC0tZ2l0IGEvbGliYy9TWVNDQUxMUy5UWFQgYi9saWJjL1NZU0NBTExTLlRYVAppbmRleCBjM2I3YmFiLi4zM2UzMGViIDEwMDY0NAotLS0gYS9saWJjL1NZU0NBTExTLlRYVAorKysgYi9saWJjL1NZU0NBTExTLlRYVApAQCAtOTUsMTMgKzk1LDEzIEBACiBzc2l6ZV90ICAgICBwcmVhZDY0fHByZWFkKGludCwgdm9pZCosIHNpemVfdCwgb2ZmX3QpIGFybTY0LG1pcHM2NCx4ODZfNjQKIHNzaXplX3QgICAgIHB3cml0ZTY0KGludCwgdm9pZCosIHNpemVfdCwgb2ZmNjRfdCkgYXJtLG1pcHMseDg2CiBzc2l6ZV90ICAgICBwd3JpdGU2NHxwd3JpdGUoaW50LCB2b2lkKiwgc2l6ZV90LCBvZmZfdCkgYXJtNjQsbWlwczY0LHg4Nl82NAotaW50ICAgICAgICAgY2xvc2UoaW50KSAgICAgICAgICAgICAgICAgICAgICBhbGwKK2ludCAgICAgICAgIF9fX2Nsb3NlOmNsb3NlKGludCkgIGFsbAogcGlkX3QgICAgICAgX19nZXRwaWQ6Z2V0cGlkKCkgIGFsbAogaW50ICAgICAgICAgbXVubWFwKHZvaWQqLCBzaXplX3QpICBhbGwKIHZvaWQqICAgICAgIG1yZW1hcCh2b2lkKiwgc2l6ZV90LCBzaXplX3QsIHVuc2lnbmVkIGxvbmcpICBhbGwKIGludCAgICAgICAgIG1zeW5jKGNvbnN0IHZvaWQqLCBzaXplX3QsIGludCkgICAgYWxsCiBpbnQgICAgICAgICBtcHJvdGVjdChjb25zdCB2b2lkKiwgc2l6ZV90LCBpbnQpICBhbGwKLWludCAgICAgICAgIG1hZHZpc2UoY29uc3Qgdm9pZCosIHNpemVfdCwgaW50KSAgYWxsCitpbnQgICAgICAgICBtYWR2aXNlKHZvaWQqLCBzaXplX3QsIGludCkgIGFsbAogaW50ICAgICAgICAgbWxvY2soY29uc3Qgdm9pZCogYWRkciwgc2l6ZV90IGxlbikgICAgYWxsCiBpbnQgICAgICAgICBtdW5sb2NrKGNvbnN0IHZvaWQqIGFkZHIsIHNpemVfdCBsZW4pICAgYWxsCiBpbnQgICAgICAgICBtbG9ja2FsbChpbnQgZmxhZ3MpICAgYWxsCkBAIC0xMTMsNyArMTEzLDcgQEAKIGludCAgICAgICAgIF9fZmNudGw2NDpmY250bDY0KGludCwgaW50LCB2b2lkKikgIGFybSxtaXBzLHg4NgogaW50ICAgICAgICAgZmNudGwoaW50LCBpbnQsIHZvaWQqKSAgYXJtNjQsbWlwczY0LHg4Nl82NAogaW50ICAgICAgICAgZmxvY2soaW50LCBpbnQpICAgYWxsCi1pbnQgICAgICAgICBmY2htb2QoaW50LCBtb2RlX3QpICBhbGwKK2ludCAgICAgICAgIF9fX2ZjaG1vZDpmY2htb2QoaW50LCBtb2RlX3QpICBhbGwKIGludCAgICAgICAgIGR1cChpbnQpICBhbGwKIGludCAgICAgICAgIHBpcGUyKGludCosIGludCkgYWxsCiBpbnQgICAgICAgICBkdXAzKGludCwgaW50LCBpbnQpICAgYWxsCkBAIC0xMzAsMTEgKzEzMCwxMSBAQAogaW50IF9fZ2V0ZGVudHM2NDpnZXRkZW50czY0KHVuc2lnbmVkIGludCwgc3RydWN0IGRpcmVudCosIHVuc2lnbmVkIGludCkgICBhcm0sYXJtNjQsbWlwcyxtaXBzNjQseDg2LHg4Nl82NAogCiBpbnQgX19vcGVuYXQ6b3BlbmF0KGludCwgY29uc3QgY2hhciosIGludCwgbW9kZV90KSBhbGwKLWludCBmYWNjZXNzYXQoaW50LCBjb25zdCBjaGFyKiwgaW50LCBpbnQpICBhbGwKLWludCBmY2htb2RhdChpbnQsIGNvbnN0IGNoYXIqLCBtb2RlX3QsIGludCkgIGFsbAoraW50IF9fX2ZhY2Nlc3NhdDpmYWNjZXNzYXQoaW50LCBjb25zdCBjaGFyKiwgaW50KSAgYWxsCitpbnQgX19fZmNobW9kYXQ6ZmNobW9kYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90KSAgYWxsCiBpbnQgZmNob3duYXQoaW50LCBjb25zdCBjaGFyKiwgdWlkX3QsIGdpZF90LCBpbnQpICBhbGwKIGludCBmc3RhdGF0NjR8ZnN0YXRhdDpmc3RhdGF0NjQoaW50LCBjb25zdCBjaGFyKiwgc3RydWN0IHN0YXQqLCBpbnQpICAgYXJtLG1pcHMseDg2Ci1pbnQgZnN0YXRhdDY0fGZzdGF0YXQ6bmV3ZnN0YXRhdChpbnQsIGNvbnN0IGNoYXIqLCBzdHJ1Y3Qgc3RhdCosIGludCkgIGFybTY0LG1pcHM2NCx4ODZfNjQKK2ludCBmc3RhdGF0NjR8ZnN0YXRhdDpuZXdmc3RhdGF0KGludCwgY29uc3QgY2hhciosIHN0cnVjdCBzdGF0KiwgaW50KSAgYXJtNjQseDg2XzY0CiBpbnQgbGlua2F0KGludCwgY29uc3QgY2hhciosIGludCwgY29uc3QgY2hhciosIGludCkgIGFsbAogaW50IG1rZGlyYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90KSAgYWxsCiBpbnQgbWtub2RhdChpbnQsIGNvbnN0IGNoYXIqLCBtb2RlX3QsIGRldl90KSAgYWxsCkBAIC0xNzQsMTIgKzE3NCwxMiBAQAogaW50IF9fZmFkdmlzZTY0OmZhZHZpc2U2NChpbnQsIG9mZjY0X3QsIG9mZjY0X3QsIGludCkgYXJtNjQsbWlwcyxtaXBzNjQseDg2XzY0CiAKIGludCBfX2ZzdGF0ZnM2NDpmc3RhdGZzNjQoaW50LCBzaXplX3QsIHN0cnVjdCBzdGF0ZnMqKSAgYXJtLG1pcHMseDg2Ci1pbnQgZnN0YXRmczY0fGZzdGF0ZnM6ZnN0YXRmcyhpbnQsIHN0cnVjdCBzdGF0ZnMqKSAgYXJtNjQsbWlwczY0LHg4Nl82NAoraW50IF9fZnN0YXRmczpmc3RhdGZzKGludCwgc3RydWN0IHN0YXRmcyopICBhcm02NCxtaXBzNjQseDg2XzY0CiBpbnQgX19zdGF0ZnM2NDpzdGF0ZnM2NChjb25zdCBjaGFyKiwgc2l6ZV90LCBzdHJ1Y3Qgc3RhdGZzKikgIGFybSxtaXBzLHg4NgotaW50IHN0YXRmczY0fHN0YXRmczpzdGF0ZnMoY29uc3QgY2hhciosIHN0cnVjdCBzdGF0ZnMqKSAgYXJtNjQsbWlwczY0LHg4Nl82NAoraW50IF9fc3RhdGZzOnN0YXRmcyhjb25zdCBjaGFyKiwgc3RydWN0IHN0YXRmcyopICBhcm02NCxtaXBzNjQseDg2XzY0CiAKIGludCAgICAgZnN0YXQ2NHxmc3RhdDpmc3RhdDY0KGludCwgc3RydWN0IHN0YXQqKSAgICBhcm0sbWlwcyx4ODYKLWludCAgICAgZnN0YXQ2NHxmc3RhdDpmc3RhdChpbnQsIHN0cnVjdCBzdGF0KikgICAgYXJtNjQsbWlwczY0LHg4Nl82NAoraW50ICAgICBmc3RhdDY0fGZzdGF0OmZzdGF0KGludCwgc3RydWN0IHN0YXQqKSAgICBhcm02NCx4ODZfNjQKIAogIyBmaWxlIHN5c3RlbQogaW50ICAgICBjaGRpcihjb25zdCBjaGFyKikgICAgICAgICAgICAgIGFsbApAQCAtMjAyLDkgKzIwMiw5IEBACiBpbnQgICAgICAgICAgIHNldHRpbWVvZmRheShjb25zdCBzdHJ1Y3QgdGltZXZhbCosIGNvbnN0IHN0cnVjdCB0aW1lem9uZSopICAgYWxsCiBjbG9ja190ICAgICAgIHRpbWVzKHN0cnVjdCB0bXMqKSAgICAgICBhbGwKIGludCAgICAgICAgICAgbmFub3NsZWVwKGNvbnN0IHN0cnVjdCB0aW1lc3BlYyosIHN0cnVjdCB0aW1lc3BlYyopICAgYWxsCi1pbnQgICAgICAgICAgIGNsb2NrX3NldHRpbWUoY2xvY2tpZF90IGNsa19pZCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiB0cCkgIGFsbAotaW50ICAgICAgICAgICBjbG9ja19nZXRyZXMoY2xvY2tpZF90IGNsa19pZCwgc3RydWN0IHRpbWVzcGVjKiByZXMpICAgYWxsCi1pbnQgICAgICAgICAgIGNsb2NrX25hbm9zbGVlcChjbG9ja2lkX3QgY2xvY2tfaWQsIGludCBmbGFncywgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiByZXEsIHN0cnVjdCB0aW1lc3BlYyogcmVtKSAgYWxsCitpbnQgICAgICAgICAgIGNsb2NrX3NldHRpbWUoY2xvY2tpZF90LCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqKSAgYWxsCitpbnQgICAgICAgICAgIGNsb2NrX2dldHJlcyhjbG9ja2lkX3QsIHN0cnVjdCB0aW1lc3BlYyopICAgYWxsCitpbnQgICAgICAgICAgIF9fY2xvY2tfbmFub3NsZWVwOmNsb2NrX25hbm9zbGVlcChjbG9ja2lkX3QsIGludCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgc3RydWN0IHRpbWVzcGVjKikgIGFsbAogaW50ICAgICAgICAgICBnZXRpdGltZXIoaW50LCBjb25zdCBzdHJ1Y3QgaXRpbWVydmFsKikgICBhbGwKIGludCAgICAgICAgICAgc2V0aXRpbWVyKGludCwgY29uc3Qgc3RydWN0IGl0aW1lcnZhbCosIHN0cnVjdCBpdGltZXJ2YWwqKSAgYWxsCiBpbnQgICAgICAgICAgIF9fdGltZXJfY3JlYXRlOnRpbWVyX2NyZWF0ZShjbG9ja2lkX3QgY2xvY2tpZCwgc3RydWN0IHNpZ2V2ZW50KiBldnAsIF9fa2VybmVsX3RpbWVyX3QqIHRpbWVyaWQpICAgIGFsbApAQCAtMjIzLDYgKzIyMyw3IEBACiBpbnQgICAgIF9fcnRfc2lncHJvY21hc2s6cnRfc2lncHJvY21hc2soaW50LCBjb25zdCBzaWdzZXRfdCosIHNpZ3NldF90Kiwgc2l6ZV90KSAgYWxsCiBpbnQgICAgIF9fcnRfc2lnc3VzcGVuZDpydF9zaWdzdXNwZW5kKGNvbnN0IHNpZ3NldF90Kiwgc2l6ZV90KSAgYWxsCiBpbnQgICAgIF9fcnRfc2lndGltZWR3YWl0OnJ0X3NpZ3RpbWVkd2FpdChjb25zdCBzaWdzZXRfdCosIHN0cnVjdCBzaWdpbmZvX3QqLCBzdHJ1Y3QgdGltZXNwZWNfdCosIHNpemVfdCkgIGFsbAoraW50ICAgICBfX3J0X3NpZ3F1ZXVlaW5mbzpydF9zaWdxdWV1ZWluZm8ocGlkX3QsIGludCwgc2lnaW5mb190KikgIGFsbAogaW50ICAgICBfX3NpZ25hbGZkNDpzaWduYWxmZDQoaW50LCBjb25zdCBzaWdzZXRfdCosIHNpemVfdCwgaW50KSAgYWxsCiAKICMgc29ja2V0cwpAQCAtMzEzLDYgKzMxNCw4IEBACiBpbnQgc2V0ZnNnaWQoZ2lkX3QpICBhbGwKIGludCBzZXRmc3VpZCh1aWRfdCkgIGFsbAogCitpbnQgc2V0aG9zdG5hbWUoY29uc3QgY2hhciosIHNpemVfdCkgIGFsbAorCiBwaWRfdCB3YWl0NChwaWRfdCwgaW50KiwgaW50LCBzdHJ1Y3QgcnVzYWdlKikgIGFsbAogaW50IF9fd2FpdGlkOndhaXRpZChpbnQsIHBpZF90LCBzdHJ1Y3Qgc2lnaW5mb190KiwgaW50LCB2b2lkKikgIGFsbAogCkBAIC0zMjEsNyArMzI0LDcgQEAKIGludCAgICAgY2FjaGVmbHVzaDpfX0FSTV9OUl9jYWNoZWZsdXNoKGxvbmcgc3RhcnQsIGxvbmcgZW5kLCBsb25nIGZsYWdzKSAgYXJtCiAKICMgTUlQUy1zcGVjaWZpYwotaW50ICAgICBfZmx1c2hfY2FjaGU6Y2FjaGVmbHVzaChjaGFyKiBhZGRyLCBjb25zdCBpbnQgbmJ5dGVzLCBjb25zdCBpbnQgb3ApIG1pcHMsbWlwczY0CitpbnQgICAgIF9mbHVzaF9jYWNoZTpjYWNoZWZsdXNoKGNoYXIqIGFkZHIsIGNvbnN0IGludCBuYnl0ZXMsIGNvbnN0IGludCBvcCkgbWlwcwogaW50ICAgICBfX3NldF90bHM6c2V0X3RocmVhZF9hcmVhKHZvaWQqKSBtaXBzLG1pcHM2NAogCiAjIHg4Ni1zcGVjaWZpYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9hcm0ubWsgYi9saWJjL2FyY2gtYXJtL2FybS5tawppbmRleCBjY2E0ZWQwLi42ZWY4MWJiIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2FybS5taworKysgYi9saWJjL2FyY2gtYXJtL2FybS5tawpAQCAtMSwzMCArMSwxMCBAQAogIyAzMi1iaXQgYXJtLgogCiAjCi0jIFZhcmlvdXMga2luZHMgb2YgTFAzMiBjcnVmdC4KLSMKLQotbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCi0gICAgYmlvbmljL21tYXAuY3BwIFwKLQotbGliY19jb21tb25fc3JjX2ZpbGVzX2FybSArPSBcCi0gICAgYmlvbmljL2xlZ2FjeV8zMl9iaXRfc3VwcG9ydC5jcHAgXAotICAgIGJpb25pYy9uZGtfY3J1ZnQuY3BwIFwKLSAgICBiaW9uaWMvdGltZTY0LmMgXAotCi1saWJjX25ldGJzZF9zcmNfZmlsZXNfYXJtICs9IFwKLSAgICB1cHN0cmVhbS1uZXRic2QvY29tbW9uL2xpYi9saWJjL2hhc2gvc2hhMS9zaGExLmMgXAotCi1saWJjX29wZW5ic2Rfc3JjX2ZpbGVzX2FybSArPSBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9wdXR3LmMgXAotCi0jCiAjIERlZmF1bHQgaW1wbGVtZW50YXRpb25zIG9mIGZ1bmN0aW9ucyB0aGF0IGFyZSBjb21tb25seSBvcHRpbWl6ZWQuCiAjCiAKIGxpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAotICAgIGJpb25pYy9tZW1jaHIuYyBcCi0gICAgYmlvbmljL21lbXJjaHIuYyBcCiAgICAgYmlvbmljL3N0cmNoci5jcHAgXAogICAgIGJpb25pYy9zdHJubGVuLmMgXAogICAgIGJpb25pYy9zdHJyY2hyLmNwcCBcCkBAIC00MCw3ICsyMCw4IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbW1vdmUuYyBcCiAKIGxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfYXJtICs9IFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9iY29weS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtcmNoci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBuY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmxjYXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGNweS5jIFwKQEAgLTU4LDExICszOSw5IEBACiAgICAgYXJjaC1hcm0vYmlvbmljL19fYmlvbmljX2Nsb25lLlMgXAogICAgIGFyY2gtYXJtL2Jpb25pYy9fZXhpdF93aXRoX3N0YWNrX3RlYXJkb3duLlMgXAogICAgIGFyY2gtYXJtL2Jpb25pYy9saWJnY2NfY29tcGF0LmMgXAotICAgIGFyY2gtYXJtL2Jpb25pYy9tZW1jbXAuUyBcCisgICAgYXJjaC1hcm0vYmlvbmljL2xpYmdjY19wcm90ZWN0X3Vud2luZC5jIFwKICAgICBhcmNoLWFybS9iaW9uaWMvX19yZXN0b3JlLlMgXAotICAgIGFyY2gtYXJtL2Jpb25pYy9fc2V0am1wLlMgXAogICAgIGFyY2gtYXJtL2Jpb25pYy9zZXRqbXAuUyBcCi0gICAgYXJjaC1hcm0vYmlvbmljL3NpZ3NldGptcC5TIFwKICAgICBhcmNoLWFybS9iaW9uaWMvc3lzY2FsbC5TIFwKIAogbGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXNfYXJtIDo9IGFyY2gtYXJtL2Jpb25pYy9leGlkeF9zdGF0aWMuYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvX19hZWFiaS5jIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvX19hZWFiaS5jCmluZGV4IDMyNTRmNjQuLjI1NGM3YTYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYWVhYmkuYworKysgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9fX2FlYWJpLmMKQEAgLTM5LDYgKzM5LDkgQEAKIAogZXh0ZXJuIGludCBfX2N4YV9hdGV4aXQodm9pZCAoKikodm9pZCopLCB2b2lkKiwgdm9pZCopOwogCisvLyBBbGwgb2YgdGhlc2UgYXJlIHdlYWsgc3ltYm9scyB0byBhdm9pZCBtdWx0aXBsZSBkZWZpbml0aW9uIGVycm9ycyB3aGVuCisvLyBsaW5raW5nIHdpdGggbGlic3RkYysrLXYzIG9yIGNvbXBpbGVyLXJ0LgorCiAvKiBUaGUgIkMrKyBBQkkgZm9yIEFSTSIgZG9jdW1lbnQgc3RhdGVzIHRoYXQgc3RhdGljIEMrKyBjb25zdHJ1Y3RvcnMsCiAgKiB3aGljaCBhcmUgY2FsbGVkIGZyb20gdGhlIC5pbml0X2FycmF5LCBzaG91bGQgbWFudWFsbHkgY2FsbAogICogX19hZWFiaV9hdGV4aXQoKSB0byByZWdpc3RlciBzdGF0aWMgZGVzdHJ1Y3RvcnMgZXhwbGljaXRseS4KQEAgLTQ3LDM1ICs1MCwzNSBAQAogICogdmFyaWFibGUgZnJvbSB0aGUgc2hhcmVkIG9iamVjdCB0aGF0IGNvbnRhaW5zIHRoZSBjb25zdHJ1Y3Rvci9kZXN0cnVjdG9yCiAgKi8KIAotLy8gTWFrZSB0aGlzIGEgd2VhayBzeW1ib2wgdG8gYXZvaWQgYSBtdWx0aXBsZSBkZWZpbml0aW9uIGVycm9yIHdoZW4gbGlua2luZyB3aXRoIGxpYnN0ZGMrKy12My4KIGludCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkKIF9fYWVhYmlfYXRleGl0KHZvaWQgKm9iamVjdCwgdm9pZCAoKmRlc3RydWN0b3IpICh2b2lkICopLCB2b2lkICpkc29faGFuZGxlKSB7CiAgICAgcmV0dXJuIF9fY3hhX2F0ZXhpdChkZXN0cnVjdG9yLCBvYmplY3QsIGRzb19oYW5kbGUpOwogfQogCiAKLXZvaWQgX19hZWFiaV9tZW1jcHk4KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpCitfX2FlYWJpX21lbWNweTgodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3QgbikgewogICAgIG1lbWNweShkZXN0LCBzcmMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtY3B5NCh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbWNweTQodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3QgbikgewogICAgIG1lbWNweShkZXN0LCBzcmMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtY3B5KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtY3B5KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKICAgICBtZW1jcHkoZGVzdCwgc3JjLCBuKTsKIH0KIAogCi12b2lkIF9fYWVhYmlfbWVtbW92ZTgodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3Qgbikgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1tb3ZlOCh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7CiAgICAgbWVtbW92ZShkZXN0LCBzcmMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtbW92ZTQodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3Qgbikgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1tb3ZlNCh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7CiAgICAgbWVtbW92ZShkZXN0LCBzcmMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtbW92ZSh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbW1vdmUodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3QgbikgewogICAgIG1lbW1vdmUoZGVzdCwgc3JjLCBuKTsKIH0KIApAQCAtODQsMjcgKzg3LDI3IEBACiAgKiAgVGhpcyBhbGxvd3MgX19hZWFiaV9tZW1jbHIgdG8gdGFpbC1jYWxsIF9fYWVhYmlfbWVtc2V0CiAgKi8KIAotdm9pZCBfX2FlYWJpX21lbXNldDgodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbXNldDgodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7CiAgICAgbWVtc2V0KGRlc3QsIGMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtc2V0NCh2b2lkICpkZXN0LCBzaXplX3QgbiwgaW50IGMpIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtc2V0NCh2b2lkICpkZXN0LCBzaXplX3QgbiwgaW50IGMpIHsKICAgICBtZW1zZXQoZGVzdCwgYywgbik7CiB9CiAKLXZvaWQgX19hZWFiaV9tZW1zZXQodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbXNldCh2b2lkICpkZXN0LCBzaXplX3QgbiwgaW50IGMpIHsKICAgICBtZW1zZXQoZGVzdCwgYywgbik7CiB9CiAKIAotdm9pZCBfX2FlYWJpX21lbWNscjgodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtY2xyOCh2b2lkICpkZXN0LCBzaXplX3QgbikgewogICAgIF9fYWVhYmlfbWVtc2V0OChkZXN0LCBuLCAwKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbWNscjQodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtY2xyNCh2b2lkICpkZXN0LCBzaXplX3QgbikgewogICAgIF9fYWVhYmlfbWVtc2V0NChkZXN0LCBuLCAwKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbWNscih2b2lkICpkZXN0LCBzaXplX3Qgbikgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1jbHIodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKICAgICBfX2FlYWJpX21lbXNldChkZXN0LCBuLCAwKTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYmlvbmljX2Nsb25lLlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCmluZGV4IGY1Y2Y5ZTAuLmEyNjhmOWQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYmlvbmljX2Nsb25lLlMKKysrIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUwpAQCAtNDIsMTMgKzQyLDE0IEBACiAgICAgIyBsb2FkIGV4dHJhIHBhcmFtZXRlcnMKICAgICBsZG1mZCAgIGlwLCB7cjQsIHI1LCByNn0KIAotICAgICMgc3RvcmUgJ2ZuJyBhbmQgJ2FyZycgdG8gdGhlIGNoaWxkIHN0YWNrCi0gICAgc3RyICAgICByNSwgW3IxLCAjLTRdCi0gICAgc3RyICAgICByNiwgW3IxLCAjLThdCisgICAgIyBQdXNoICdmbicgYW5kICdhcmcnIG9udG8gdGhlIGNoaWxkIHN0YWNrLgorICAgIHN0bWRiICAgcjEhLCB7cjUsIHI2fQogCi0gICAgIyBTeXN0ZW0gY2FsbAorICAgICMgTWFrZSB0aGUgc3lzdGVtIGNhbGwuCiAgICAgbGRyICAgICByNywgPV9fTlJfY2xvbmUKICAgICBzd2kgICAgICMwCisKKyAgICAjIEFyZSB3ZSB0aGUgY2hpbGQ/CiAgICAgbW92cyAgICByMCwgcjAKICAgICBiZXEgICAgIDFmCiAKQEAgLTYyLDggKzYzLDggQEAKIDE6ICAjIFRoZSBjaGlsZC4KICAgICAjIFNldHRpbmcgbHIgdG8gMCB3aWxsIG1ha2UgdGhlIHVud2luZGVyIHN0b3AgYXQgX19zdGFydF90aHJlYWQKICAgICBtb3YgICAgbHIsICMwCi0gICAgbGRyICAgIHIwLCBbc3AsICMtNF0KLSAgICBsZHIgICAgcjEsIFtzcCwgIy04XQorICAgICMgQ2FsbCBfX3N0YXJ0X3RocmVhZCB3aXRoIHRoZSAnZm4nIGFuZCAnYXJnJyB3ZSBzdG9yZWQgb24gdGhlIGNoaWxkIHN0YWNrLgorICAgIHBvcCAgICB7cjAsIHIxfQogICAgIGIgICAgICBfX3N0YXJ0X3RocmVhZAogRU5EKF9fYmlvbmljX2Nsb25lKQogLmhpZGRlbiBfX2Jpb25pY19jbG9uZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvX3NldGptcC5TIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvX3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NGEwYTMxLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19zZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDExMyArMCwwIEBACi0vKgkkT3BlbkJTRDogX3NldGptcC5TLHYgMS4yIDIwMDQvMDIvMDEgMDU6NDA6NTIgZHJhaG4gRXhwICQJKi8KLS8qCSROZXRCU0Q6IF9zZXRqbXAuUyx2IDEuNSAyMDAzLzA0LzA1IDIzOjA4OjUxIGJqaDIxIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTcgTWFyayBCcmluaWNvbWJlCi0gKiBDb3B5cmlnaHQgKGMpIDIwMTAgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0LgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcyBzb2Z0d2FyZQotICogICAgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ2VtZW50OgotICoJVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSBNYXJrIEJyaW5pY29tYmUKLSAqIDQuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotI2luY2x1ZGUgPG1hY2hpbmUvY3B1LWZlYXR1cmVzLmg+Ci0KLS8qCi0gKiBDIGxpYnJhcnkgLS0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKglfbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglfc2V0am1wKGEpCi0gKiBieSByZXN0b3JpbmcgcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLgotICogVGhlIHByZXZpb3VzIHNpZ25hbCBzdGF0ZSBpcyBOT1QgcmVzdG9yZWQuCi0gKgotICogTm90ZTogcjAgaXMgdGhlIHJldHVybiB2YWx1ZQotICogICAgICAgcjEtcjMgYXJlIHNjcmF0Y2ggcmVnaXN0ZXJzIGluIGZ1bmN0aW9ucwotICovCi0KLUVOVFJZKF9zZXRqbXApCi0JbGRyCXIxLCAuTF9zZXRqbXBfbWFnaWMKLQlzdHIJcjEsIFtyMCwgIyhfSkJfTUFHSUMgKiA0KV0KLQotCS8qIFN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMSwgcjAsICMoX0pCX0NPUkVfQkFTRSAqIDQpCi0Jc3RtaWEgICByMSwge3I0LXIxNH0KLQotI2lmZGVmIF9fQVJNX0hBVkVfVkZQCi0JLyogU3RvcmUgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMSwgcjAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0KQotCXZzdG1pYSAgcjEsIHtkOC1kMTV9Ci0JLyogU3RvcmUgZmxvYXRpbmctcG9pbnQgc3RhdGUgKi8KLQlmbXJ4ICAgIHIxLCBmcHNjcgotCXN0ciAgICAgcjEsIFtyMCwgIyhfSkJfRkxPQVRfU1RBVEUgKiA0KV0KLSNlbmRpZiAgLyogX19BUk1fSEFWRV9WRlAgKi8KLQotICAgICAgICBtb3YJcjAsICMweDAwMDAwMDAwCi0gICAgICAgIGJ4ICAgICAgbHIKLUVORChfc2V0am1wKQotCi0uTF9zZXRqbXBfbWFnaWM6Ci0JLndvcmQJX0pCX01BR0lDX19TRVRKTVAKLQotRU5UUlkoX2xvbmdqbXApCi0JbGRyCXIyLCAuTF9zZXRqbXBfbWFnaWMKLQlsZHIJcjMsIFtyMCwgIyhfSkJfTUFHSUMgKiA0KV0KLQl0ZXEJcjIsIHIzCi0JYm5lCWJvdGNoCi0KLSNpZmRlZiBfX0FSTV9IQVZFX1ZGUAotCS8qIFJlc3RvcmUgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMiwgcjAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0KQotCXZsZG1pYSAgcjIsIHtkOC1kMTV9Ci0JLyogUmVzdG9yZSBmbG9hdGluZy1wb2ludCBzdGF0ZSAqLwotCWxkciAgICAgcjIsIFtyMCwgIyhfSkJfRkxPQVRfU1RBVEUgKiA0KV0KLQlmbXhyICAgIGZwc2NyLCByMgotI2VuZGlmIC8qIF9fQVJNX0hBVkVfVkZQICovCi0KLQkvKiBSZXN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMiwgcjAsICMoX0pCX0NPUkVfQkFTRSAqIDQpCi0JbGRtaWEgICByMiwge3I0LXIxNH0KLQotCS8qIFZhbGlkYXRlIHNwIGFuZCByMTQgKi8KLQl0ZXEJc3AsICMwCi0JdGVxbmUJcjE0LCAjMAotCWJlcQlib3RjaAotCi0JLyogU2V0IHJldHVybiB2YWx1ZSAqLwotCW1vdglyMCwgcjEKLQl0ZXEJcjAsICMweDAwMDAwMDAwCi0JbW92ZXEJcjAsICMweDAwMDAwMDAxCi0JYnggICAgICBscgotCi0JLyogdmFsaWRhdGlvbiBmYWlsZWQsIGRpZSBkaWUgZGllLiAqLwotYm90Y2g6Ci0JYmwJUElDX1NZTShsb25nam1wZXJyb3IsIFBMVCkKLQlibAlQSUNfU1lNKGFib3J0LCBQTFQpCi0JYgkuIC0gOAkJLyogQ2Fubm90IGdldCBoZXJlICovCi1FTkQoX2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9hYm9ydF9hcm0uUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL2Fib3J0X2FybS5TCmluZGV4IDZiMTgxZWYuLjEwMzk1MDIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL2Fib3J0X2FybS5TCisrKyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL2Fib3J0X2FybS5TCkBAIC00MCw1ICs0MCw1IEBACiAgICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4CiAgICAgLmNmaV9yZWxfb2Zmc2V0IHIzLCAwCiAgICAgLmNmaV9yZWxfb2Zmc2V0IHIxNCwgNAotICAgIGJsICAgICAgUElDX1NZTShfX2xpYmNfYW5kcm9pZF9hYm9ydCwgUExUKQorICAgIGJsICAgICAgX19saWJjX2FuZHJvaWRfYWJvcnQKIEVORChhYm9ydCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL2xpYmdjY19wcm90ZWN0X3Vud2luZC5jIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvbGliZ2NjX3Byb3RlY3RfdW53aW5kLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmQ3NThmYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL2xpYmdjY19wcm90ZWN0X3Vud2luZC5jCkBAIC0wLDAgKzEsOTMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisvLyBUT0RPOiBUaGlzIGZpbGUgc2hvdWxkIGdvIGF3YXkgb25jZSB1bndpbmRlciBtaWdyYXRpb24gdG8gbGliYysrLnNvIGlzIGNvbXBsZXRlLgorCitleHRlcm4gY2hhciBfVW53aW5kX0JhY2t0cmFjZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9GaW5kX2V4aWR4IF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3RvcmVfVkZQX0QgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfUmVzdG9yZV9WRlAgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfUmVzdG9yZV9WRlBfRF8xNl90b18zMSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9SZXN0b3JlX1dNTVhEIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3RvcmVfV01NWEMgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX0dldENGQSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9SYWlzZUV4Y2VwdGlvbiBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9Gb3JjZWRVbndpbmQgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfUmVzdW1lIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3VtZV9vcl9SZXRocm93IF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9Db21wbGV0ZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfRGVsZXRlRXhjZXB0aW9uIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9WUlNfR2V0IF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9WUlNfU2V0IF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX0JhY2t0cmFjZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfVlJTX1BvcCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9TYXZlX1ZGUF9EIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1NhdmVfVkZQIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1NhdmVfVkZQX0RfMTZfdG9fMzEgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfU2F2ZV9XTU1YRCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9TYXZlX1dNTVhDIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19fVW53aW5kX1JhaXNlRXhjZXB0aW9uIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9SYWlzZUV4Y2VwdGlvbiBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fX1Vud2luZF9SZXN1bWUgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX1Jlc3VtZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fX1Vud2luZF9SZXN1bWVfb3JfUmV0aHJvdyBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfUmVzdW1lX29yX1JldGhyb3cgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX19VbndpbmRfRm9yY2VkVW53aW5kIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9Gb3JjZWRVbndpbmQgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX19VbndpbmRfQmFja3RyYWNlIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9HZXRSZWdpb25TdGFydCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfR2V0TGFuZ3VhZ2VTcGVjaWZpY0RhdGEgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX0dldERhdGFSZWxCYXNlIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9HZXRUZXh0UmVsQmFzZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKKwordm9pZCogX19iaW9uaWNfbGliZ2NjX3Vud2luZF9zeW1ib2xzW10gPSB7CisgICAgJl9VbndpbmRfQmFja3RyYWNlLAorICAgICZfX2dudV9VbndpbmRfRmluZF9leGlkeCwKKyAgICAmX19nbnVfVW53aW5kX1Jlc3RvcmVfVkZQX0QsCisgICAgJl9fZ251X1Vud2luZF9SZXN0b3JlX1ZGUCwKKyAgICAmX19nbnVfVW53aW5kX1Jlc3RvcmVfVkZQX0RfMTZfdG9fMzEsCisgICAgJl9fZ251X1Vud2luZF9SZXN0b3JlX1dNTVhELAorICAgICZfX2dudV9VbndpbmRfUmVzdG9yZV9XTU1YQywKKyAgICAmX1Vud2luZF9HZXRDRkEsCisgICAgJl9fZ251X1Vud2luZF9SYWlzZUV4Y2VwdGlvbiwKKyAgICAmX19nbnVfVW53aW5kX0ZvcmNlZFVud2luZCwKKyAgICAmX19nbnVfVW53aW5kX1Jlc3VtZSwKKyAgICAmX19nbnVfVW53aW5kX1Jlc3VtZV9vcl9SZXRocm93LAorICAgICZfVW53aW5kX0NvbXBsZXRlLAorICAgICZfVW53aW5kX0RlbGV0ZUV4Y2VwdGlvbiwKKyAgICAmX1Vud2luZF9WUlNfR2V0LAorICAgICZfVW53aW5kX1ZSU19TZXQsCisgICAgJl9fZ251X1Vud2luZF9CYWNrdHJhY2UsCisgICAgJl9VbndpbmRfVlJTX1BvcCwKKyAgICAmX19nbnVfVW53aW5kX1NhdmVfVkZQX0QsCisgICAgJl9fZ251X1Vud2luZF9TYXZlX1ZGUCwKKyAgICAmX19nbnVfVW53aW5kX1NhdmVfVkZQX0RfMTZfdG9fMzEsCisgICAgJl9fZ251X1Vud2luZF9TYXZlX1dNTVhELAorICAgICZfX2dudV9VbndpbmRfU2F2ZV9XTU1YQywKKyAgICAmX19fVW53aW5kX1JhaXNlRXhjZXB0aW9uLAorICAgICZfVW53aW5kX1JhaXNlRXhjZXB0aW9uLAorICAgICZfX19VbndpbmRfUmVzdW1lLAorICAgICZfVW53aW5kX1Jlc3VtZSwKKyAgICAmX19fVW53aW5kX1Jlc3VtZV9vcl9SZXRocm93LAorICAgICZfVW53aW5kX1Jlc3VtZV9vcl9SZXRocm93LAorICAgICZfX19VbndpbmRfRm9yY2VkVW53aW5kLAorICAgICZfVW53aW5kX0ZvcmNlZFVud2luZCwKKyAgICAmX19fVW53aW5kX0JhY2t0cmFjZSwKKyAgICAmX1Vud2luZF9HZXRSZWdpb25TdGFydCwKKyAgICAmX1Vud2luZF9HZXRMYW5ndWFnZVNwZWNpZmljRGF0YSwKKyAgICAmX1Vud2luZF9HZXREYXRhUmVsQmFzZSwKKyAgICAmX1Vud2luZF9HZXRUZXh0UmVsQmFzZSwKK307CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYzliMTBjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5TCisrKyAvZGV2L251bGwKQEAgLTEsNjg2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPG1hY2hpbmUvY3B1LWZlYXR1cmVzLmg+Ci0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLSNpZiBkZWZpbmVkKF9fQVJNX05FT05fXykgJiYgIWRlZmluZWQoQVJDSF9BUk1fVVNFX05PTl9ORU9OX01FTUNQWSkKLQotICAgICAgICAudGV4dAotICAgICAgICAuZnB1ICAgIG5lb24KLQotI2lmZGVmIEhBVkVfMzJfQllURV9DQUNIRV9MSU5FCi0vKiBhIHByZWZldGNoIGRpc3RhbmNlIG9mIDIgY2FjaGUtbGluZXMgKi8KLSNkZWZpbmUgQ0FDSEVfTElORV9TSVpFICAgICAzMgotI2Vsc2UKLS8qIGEgcHJlZmV0Y2ggZGlzdGFuY2Ugb2YgNCBjYWNoZS1saW5lcyB3b3JrcyBiZXN0IGV4cGVyaW1lbnRhbGx5ICovCi0jZGVmaW5lIENBQ0hFX0xJTkVfU0laRSAgICAgNjQKLSNlbmRpZgotCi1FTlRSWShtZW1jcHkpCi0gICAgICAgIC5zYXZlICAgICAgIHtyMCwgbHJ9Ci0gICAgICAgIC8qIHN0YXJ0IHByZWxvYWRpbmcgYXMgZWFybHkgYXMgcG9zc2libGUgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDApXQotICAgICAgICBzdG1mZCAgICAgICBzcCEsIHtyMCwgbHJ9Ci0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAxKV0KLQotLyogSWYgTmVvbiBzdXBwb3J0cyB1bmFsaWduZWQgYWNjZXNzIHRoZW4gcmVtb3ZlIHRoZSBhbGlnbiBjb2RlLAotICogdW5sZXNzIGEgc2l6ZSBsaW1pdCBoYXMgYmVlbiBzcGVjaWZpZWQuCi0gKi8KLSNpZm5kZWYgTkVPTl9VTkFMSUdORURfQUNDRVNTCi0gICAgICAgIC8qIGRvIHdlIGhhdmUgYXQgbGVhc3QgMTYtYnl0ZXMgdG8gY29weSAobmVlZGVkIGZvciBhbGlnbm1lbnQgYmVsb3cpICovCi0gICAgICAgIGNtcCAgICAgICAgIHIyLCAjMTYKLSAgICAgICAgYmxvICAgICAgICAgNWYKLQotICAgICAgICAvKiBjaGVjayBpZiBidWZmZXJzIGFyZSBhbGlnbmVkLiBJZiBzbywgcnVuIGFybS1vbmx5IHZlcnNpb24gKi8KLSAgICAgICAgZW9yICAgICAgICAgcjMsIHIwLCByMQotICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweDMKLSAgICAgICAgYmVxICAgICAgICAgMTFmCi0KLSAgICAgICAgLyogYWxpZ24gZGVzdGluYXRpb24gdG8gY2FjaGUtbGluZSBmb3IgdGhlIHdyaXRlLWJ1ZmZlciAqLwotICAgICAgICByc2IgICAgICAgICByMywgcjAsICMwCi0gICAgICAgIGFuZHMgICAgICAgIHIzLCByMywgIzB4RgotICAgICAgICBiZXEgICAgICAgICAyZgotCi0gICAgICAgIC8qIGNvcHkgdXAgdG8gMTUtYnl0ZXMgKGNvdW50IGluIHIzKSAqLwotICAgICAgICBzdWIgICAgICAgICByMiwgcjIsIHIzCi0gICAgICAgIG1vdnMgICAgICAgIGlwLCByMywgbHNsICMzMQotICAgICAgICBsZHJtaWIgICAgICBsciwgW3IxXSwgIzEKLSAgICAgICAgc3RybWliICAgICAgbHIsIFtyMF0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIGlwLCBbcjFdLCAjMQotICAgICAgICBsZHJjc2IgICAgICBsciwgW3IxXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgaXAsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGxyLCBbcjBdLCAjMQotICAgICAgICBtb3ZzICAgICAgICBpcCwgcjMsIGxzbCAjMjkKLSAgICAgICAgYmdlICAgICAgICAgMWYKLSAgICAgICAgLy8gY29waWVzIDQgYnl0ZXMsIGRlc3RpbmF0aW9uIDMyLWJpdHMgYWxpZ25lZAotICAgICAgICB2bGQ0LjggICAgICB7ZDBbMF0sIGQxWzBdLCBkMlswXSwgZDNbMF19LCBbcjFdIQotICAgICAgICB2c3Q0LjggICAgICB7ZDBbMF0sIGQxWzBdLCBkMlswXSwgZDNbMF19LCBbcjAsIDozMl0hCi0xOiAgICAgIGJjYyAgICAgICAgIDJmCi0gICAgICAgIC8vIGNvcGllcyA4IGJ5dGVzLCBkZXN0aW5hdGlvbiA2NC1iaXRzIGFsaWduZWQKLSAgICAgICAgdmxkMS44ICAgICAge2QwfSwgW3IxXSEKLSAgICAgICAgdnN0MS44ICAgICAge2QwfSwgW3IwLCA6NjRdIQotMjoKLSAgICAgICAgLyogcHJlbG9hZCBpbW1lZGlhdGVseSB0aGUgbmV4dCBjYWNoZSBsaW5lLCB3aGljaCB3ZSBtYXkgbmVlZCAqLwotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMCldCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAxKV0KLQotI2lmZGVmIEhBVkVfMzJfQllURV9DQUNIRV9MSU5FCi0gICAgICAgIC8qIG1ha2Ugc3VyZSB3ZSBoYXZlIGF0IGxlYXN0IDMyIGJ5dGVzIHRvIGNvcHkgKi8KLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgYmxvICAgICAgICAgNGYKLQotICAgICAgICAvKiBwcmVsb2FkIGFsbCB0aGUgY2FjaGUgbGluZXMgd2UgbmVlZC4KLSAgICAgICAgICogTk9URTogdGhlIG51bWJlciBvZiBwbGQgYmVsb3cgZGVwZW5kcyBvbiBQUkVGRVRDSF9ESVNUQU5DRSwKLSAgICAgICAgICogaWRlYWxseSB3b3VsZCB3b3VsZCBpbmNyZWFzZSB0aGUgZGlzdGFuY2UgaW4gdGhlIG1haW4gbG9vcCB0bwotICAgICAgICAgKiBhdm9pZCB0aGUgZ29vZnkgY29kZSBiZWxvdy4gSW4gcHJhY3RpY2UgdGhpcyBkb2Vzbid0IHNlZW0gdG8gbWFrZQotICAgICAgICAgKiBhIGJpZyBkaWZmZXJlbmNlLgotICAgICAgICAgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKFBSRUZFVENIX0RJU1RBTkNFKV0KLQotMTogICAgICAvKiBUaGUgbWFpbiBsb29wIGNvcGllcyAzMiBieXRlcyBhdCBhIHRpbWUgKi8KLSAgICAgICAgdmxkMS44ICAgICAge2QwICAtIGQzfSwgICBbcjFdIQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoUFJFRkVUQ0hfRElTVEFOQ0UpXQotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICMzMgotICAgICAgICB2c3QxLjggICAgICB7ZDAgIC0gZDN9LCAgIFtyMCwgOjEyOF0hCi0gICAgICAgIGJocyAgICAgICAgIDFiCi0jZWxzZQotICAgICAgICAvKiBtYWtlIHN1cmUgd2UgaGF2ZSBhdCBsZWFzdCA2NCBieXRlcyB0byBjb3B5ICovCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIGJsbyAgICAgICAgIDJmCi0KLSAgICAgICAgLyogcHJlbG9hZCBhbGwgdGhlIGNhY2hlIGxpbmVzIHdlIG5lZWQuICovCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAyKV0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotCi0xOiAgICAgIC8qIFRoZSBtYWluIGxvb3AgY29waWVzIDY0IGJ5dGVzIGF0IGEgdGltZSAqLwotICAgICAgICB2bGQxLjggICAgICB7ZDAgLSBkM30sIFtyMV0hCi0gICAgICAgIHZsZDEuOCAgICAgIHtkNCAtIGQ3fSwgW3IxXSEKLSNpZmRlZiAgSEFWRV8zMl9CWVRFX0NBQ0hFX0xJTkUKLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDIpXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMyldCi0jZWxzZQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMyldCi0jZW5kaWYKLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjNjQKLSAgICAgICAgdnN0MS44ICAgICAge2QwIC0gZDN9LCBbcjAsIDoxMjhdIQotICAgICAgICB2c3QxLjggICAgICB7ZDQgLSBkN30sIFtyMCwgOjEyOF0hCi0gICAgICAgIGJocyAgICAgICAgIDFiCi0KLTI6ICAgICAgLyogZml4LXVwIHRoZSByZW1haW5pbmcgY291bnQgYW5kIG1ha2Ugc3VyZSB3ZSBoYXZlID49IDMyIGJ5dGVzIGxlZnQgKi8KLSAgICAgICAgYWRkICAgICAgICAgcjIsIHIyLCAjNjQKLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgYmxvICAgICAgICAgNGYKLQotMzogICAgICAvKiAzMiBieXRlcyBhdCBhIHRpbWUuIFRoZXNlIGNhY2hlIGxpbmVzIHdlcmUgYWxyZWFkeSBwcmVsb2FkZWQgKi8KLSAgICAgICAgdmxkMS44ICAgICAge2QwIC0gZDN9LCBbcjFdIQotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICMzMgotICAgICAgICB2c3QxLjggICAgICB7ZDAgLSBkM30sIFtyMCwgOjEyOF0hCi0gICAgICAgIGJocyAgICAgICAgIDNiCi0jZW5kaWYKLTQ6ICAgICAgLyogbGVzcyB0aGFuIDMyIGxlZnQgKi8KLSAgICAgICAgYWRkICAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgdHN0ICAgICAgICAgcjIsICMweDEwCi0gICAgICAgIGJlcSAgICAgICAgIDVmCi0gICAgICAgIC8vIGNvcGllcyAxNiBieXRlcywgMTI4LWJpdHMgYWxpZ25lZAotICAgICAgICB2bGQxLjggICAgICB7ZDAsIGQxfSwgW3IxXSEKLSAgICAgICAgdnN0MS44ICAgICAge2QwLCBkMX0sIFtyMCwgOjEyOF0hCi01OiAgICAgIC8qIGNvcHkgdXAgdG8gMTUtYnl0ZXMgKGNvdW50IGluIHIyKSAqLwotICAgICAgICBtb3ZzICAgICAgICBpcCwgcjIsIGxzbCAjMjkKLSAgICAgICAgYmNjICAgICAgICAgMWYKLSAgICAgICAgdmxkMS44ICAgICAge2QwfSwgW3IxXSEKLSAgICAgICAgdnN0MS44ICAgICAge2QwfSwgW3IwXSEKLTE6ICAgICAgYmdlICAgICAgICAgMmYKLSAgICAgICAgdmxkNC44ICAgICAge2QwWzBdLCBkMVswXSwgZDJbMF0sIGQzWzBdfSwgW3IxXSEKLSAgICAgICAgdnN0NC44ICAgICAge2QwWzBdLCBkMVswXSwgZDJbMF0sIGQzWzBdfSwgW3IwXSEKLTI6ICAgICAgbW92cyAgICAgICAgaXAsIHIyLCBsc2wgIzMxCi0gICAgICAgIGxkcm1pYiAgICAgIHIzLCBbcjFdLCAjMQotICAgICAgICBsZHJjc2IgICAgICBpcCwgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgbHIsIFtyMV0sICMxCi0gICAgICAgIHN0cm1pYiAgICAgIHIzLCBbcjBdLCAjMQotICAgICAgICBzdHJjc2IgICAgICBpcCwgW3IwXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgbHIsIFtyMF0sICMxCi0KLSAgICAgICAgbGRtZmQgICAgICAgc3AhLCB7cjAsIGxyfQotICAgICAgICBieCAgICAgICAgICBscgotCi0jZWxzZSAgIC8qIE5FT05fVU5BTElHTkVEX0FDQ0VTUyAqLwotCi0gICAgICAgIC8vIENoZWNrIHNvIGRpdmlkZXIgaXMgYXQgbGVhc3QgMTYgYnl0ZXMsIG5lZWRlZCBmb3IgYWxpZ25tZW50IGNvZGUuCi0gICAgICAgIGNtcCAgICAgICAgIHIyLCAjMTYKLSAgICAgICAgYmxvICAgICAgICAgNWYKLQotI2lmZGVmIE5FT05fTUVNQ1BZX0FMSUdOTUVOVF9ESVZJREVSCi0gICAgICAgIC8qIENoZWNrIHRoZSB1cHBlciBzaXplIGxpbWl0IGZvciBOZW9uIHVuYWxpZ25lZCBtZW1vcnkgYWNjZXNzIGluIG1lbWNweSAqLwotI2lmIE5FT05fTUVNQ1BZX0FMSUdOTUVOVF9ESVZJREVSID49IDE2Ci0gICAgICAgIGNtcCAgICAgICAgIHIyLCAjTkVPTl9NRU1DUFlfQUxJR05NRU5UX0RJVklERVIKLSAgICAgICAgYmxvICAgICAgICAgM2YKLSNlbmRpZgotICAgICAgICAvKiBjaGVjayBpZiBidWZmZXJzIGFyZSBhbGlnbmVkLiBJZiBzbywgcnVuIGFybS1vbmx5IHZlcnNpb24gKi8KLSAgICAgICAgZW9yICAgICAgICAgcjMsIHIwLCByMQotICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweDMKLSAgICAgICAgYmVxICAgICAgICAgMTFmCi0KLSAgICAgICAgLyogYWxpZ24gZGVzdGluYXRpb24gdG8gMTYgYnl0ZXMgZm9yIHRoZSB3cml0ZS1idWZmZXIgKi8KLSAgICAgICAgcnNiICAgICAgICAgcjMsIHIwLCAjMAotICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweEYKLSAgICAgICAgYmVxICAgICAgICAgM2YKLQotICAgICAgICAvKiBjb3B5IHVwIHRvIDE1LWJ5dGVzIChjb3VudCBpbiByMykgKi8KLSAgICAgICAgc3ViICAgICAgICAgcjIsIHIyLCByMwotICAgICAgICBtb3ZzICAgICAgICBpcCwgcjMsIGxzbCAjMzEKLSAgICAgICAgbGRybWliICAgICAgbHIsIFtyMV0sICMxCi0gICAgICAgIHN0cm1pYiAgICAgIGxyLCBbcjBdLCAjMQotICAgICAgICBsZHJjc2IgICAgICBpcCwgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgbHIsIFtyMV0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGlwLCBbcjBdLCAjMQotICAgICAgICBzdHJjc2IgICAgICBsciwgW3IwXSwgIzEKLSAgICAgICAgbW92cyAgICAgICAgaXAsIHIzLCBsc2wgIzI5Ci0gICAgICAgIGJnZSAgICAgICAgIDFmCi0gICAgICAgIC8vIGNvcGllcyA0IGJ5dGVzLCBkZXN0aW5hdGlvbiAzMi1iaXRzIGFsaWduZWQKLSAgICAgICAgdmxkMS4zMiAgICAge2QwWzBdfSwgW3IxXSEKLSAgICAgICAgdnN0MS4zMiAgICAge2QwWzBdfSwgW3IwLCA6MzJdIQotMTogICAgICBiY2MgICAgICAgICAyZgotICAgICAgICAvLyBjb3BpZXMgOCBieXRlcywgZGVzdGluYXRpb24gNjQtYml0cyBhbGlnbmVkCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMH0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMH0sIFtyMCwgOjY0XSEKLTI6Ci0gICAgICAgIC8qIHByZWxvYWQgaW1tZWRpYXRlbHkgdGhlIG5leHQgY2FjaGUgbGluZSwgd2hpY2ggd2UgbWF5IG5lZWQgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDApXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMSldCi0zOgotI2VuZGlmCi0gICAgICAgIC8qIG1ha2Ugc3VyZSB3ZSBoYXZlIGF0IGxlYXN0IDY0IGJ5dGVzIHRvIGNvcHkgKi8KLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjNjQKLSAgICAgICAgYmxvICAgICAgICAgMmYKLQotICAgICAgICAvKiBwcmVsb2FkIGFsbCB0aGUgY2FjaGUgbGluZXMgd2UgbmVlZCAqLwotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMildCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAzKV0KLQotMTogICAgICAvKiBUaGUgbWFpbiBsb29wIGNvcGllcyA2NCBieXRlcyBhdCBhIHRpbWUgKi8KLSAgICAgICAgdmxkMS44ICAgICAge2QwIC0gZDN9LCBbcjFdIQotICAgICAgICB2bGQxLjggICAgICB7ZDQgLSBkN30sIFtyMV0hCi0jaWZkZWYgIEhBVkVfMzJfQllURV9DQUNIRV9MSU5FCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAyKV0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotI2Vsc2UKLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotI2VuZGlmCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIHZzdDEuOCAgICAgIHtkMCAtIGQzfSwgW3IwXSEKLSAgICAgICAgdnN0MS44ICAgICAge2Q0IC0gZDd9LCBbcjBdIQotICAgICAgICBiaHMgICAgICAgICAxYgotCi0yOiAgICAgIC8qIGZpeC11cCB0aGUgcmVtYWluaW5nIGNvdW50IGFuZCBtYWtlIHN1cmUgd2UgaGF2ZSA+PSAzMiBieXRlcyBsZWZ0ICovCi0gICAgICAgIGFkZCAgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIGJsbyAgICAgICAgIDRmCi0KLTM6ICAgICAgLyogMzIgYnl0ZXMgYXQgYSB0aW1lLiBUaGVzZSBjYWNoZSBsaW5lcyB3ZXJlIGFscmVhZHkgcHJlbG9hZGVkICovCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMCAtIGQzfSwgW3IxXSEKLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgdnN0MS44ICAgICAge2QwIC0gZDN9LCBbcjBdIQotICAgICAgICBiaHMgICAgICAgICAzYgotCi00OiAgICAgIC8qIGxlc3MgdGhhbiAzMiBsZWZ0ICovCi0gICAgICAgIGFkZCAgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIHRzdCAgICAgICAgIHIyLCAjMHgxMAotICAgICAgICBiZXEgICAgICAgICA1ZgotICAgICAgICAvLyBjb3BpZXMgMTYgYnl0ZXMsIDEyOC1iaXRzIGFsaWduZWQKLSAgICAgICAgdmxkMS44ICAgICAge2QwLCBkMX0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMCwgZDF9LCBbcjBdIQotNTogICAgICAvKiBjb3B5IHVwIHRvIDE1LWJ5dGVzIChjb3VudCBpbiByMikgKi8KLSAgICAgICAgbW92cyAgICAgICAgaXAsIHIyLCBsc2wgIzI5Ci0gICAgICAgIGJjYyAgICAgICAgIDFmCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMH0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMH0sIFtyMF0hCi0xOiAgICAgIGJnZSAgICAgICAgIDJmCi0gICAgICAgIHZsZDEuMzIgICAgIHtkMFswXX0sIFtyMV0hCi0gICAgICAgIHZzdDEuMzIgICAgIHtkMFswXX0sIFtyMF0hCi0yOiAgICAgIG1vdnMgICAgICAgIGlwLCByMiwgbHNsICMzMQotICAgICAgICBsZHJtaWIgICAgICByMywgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgaXAsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIGxyLCBbcjFdLCAjMQotICAgICAgICBzdHJtaWIgICAgICByMywgW3IwXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgaXAsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGxyLCBbcjBdLCAjMQotCi0gICAgICAgIGxkbWZkICAgICAgIHNwISwge3IwLCBscn0KLSAgICAgICAgYnggICAgICAgICAgbHIKLSNlbmRpZiAgLyogTkVPTl9VTkFMSUdORURfQUNDRVNTICovCi0xMToKLSAgICAgICAgLyogU2ltcGxlIGFybS1vbmx5IGNvcHkgbG9vcCB0byBoYW5kbGUgYWxpZ25lZCBjb3B5IG9wZXJhdGlvbnMgKi8KLSAgICAgICAgc3RtZmQgICAgICAgc3AhLCB7cjQsIHI1LCByNiwgcjcsIHI4fQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMildCi0KLSAgICAgICAgLyogQ2hlY2sgYWxpZ25tZW50ICovCi0gICAgICAgIHJzYiAgICAgICAgIHIzLCByMSwgIzAKLSAgICAgICAgYW5kcyAgICAgICAgcjMsICMzCi0gICAgICAgIGJlcSAgICAgICAgIDJmCi0KLSAgICAgICAgLyogYWxpZ24gc291cmNlIHRvIDMyIGJpdHMuIFdlIG5lZWQgdG8gaW5zZXJ0IDIgaW5zdHJ1Y3Rpb25zIGJldHdlZW4KLSAgICAgICAgICogYSBsZHJbYnxoXSBhbmQgc3RyW2J8aF0gYmVjYXVzZSBieXRlIGFuZCBoYWxmLXdvcmQgaW5zdHJ1Y3Rpb25zCi0gICAgICAgICAqIHN0YWxsIDIgY3ljbGVzLgotICAgICAgICAgKi8KLSAgICAgICAgbW92cyAgICAgICAgcjEyLCByMywgbHNsICMzMQotICAgICAgICBzdWIgICAgICAgICByMiwgcjIsIHIzICAgICAgLyogd2Uga25vdyB0aGF0IHIzIDw9IHIyIGJlY2F1c2UgcjIgPj0gNCAqLwotICAgICAgICBsZHJtaWIgICAgICByMywgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgcjQsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIHI1LCBbcjFdLCAjMQotICAgICAgICBzdHJtaWIgICAgICByMywgW3IwXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgcjQsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIHI1LCBbcjBdLCAjMQotMjoKLSAgICAgICAgc3VicyAgICAgICAgcjIsICMzMgotICAgICAgICBibHQgICAgICAgICA1ZgotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMyldCi0zOiAgICAgIC8qIE1haW4gY29weSBsb29wLCBjb3B5aW5nIDMyIGJ5dGVzIGF0IGEgdGltZSAqLwotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogNCldCi0gICAgICAgIGxkbWlhICAgICAgIHIxISwge3IzLCByNCwgcjUsIHI2LCByNywgcjgsIHIxMiwgbHJ9Ci0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIHN0bWlhICAgICAgIHIwISwge3IzLCByNCwgcjUsIHI2LCByNywgcjgsIHIxMiwgbHJ9Ci0gICAgICAgIGJnZSAgICAgICAgIDNiCi01OiAgICAgIC8qIEhhbmRsZSBhbnkgcmVtYWluaW5nIGJ5dGVzICovCi0gICAgICAgIGFkZHMgICAgICAgIHIyLCAjMzIKLSAgICAgICAgYmVxICAgICAgICAgNmYKLQotICAgICAgICBtb3ZzICAgICAgICByMTIsIHIyLCBsc2wgIzI4Ci0gICAgICAgIGxkbWNzaWEgICAgIHIxISwge3IzLCByNCwgcjUsIHI2fSAgIC8qIDE2IGJ5dGVzICovCi0gICAgICAgIGxkbW1paWEgICAgIHIxISwge3I3LCByOH0gICAgICAgICAgIC8qICA4IGJ5dGVzICovCi0gICAgICAgIHN0bWNzaWEgICAgIHIwISwge3IzLCByNCwgcjUsIHI2fQotICAgICAgICBzdG1taWlhICAgICByMCEsIHtyNywgcjh9Ci0gICAgICAgIG1vdnMgICAgICAgIHIxMiwgcjIsIGxzbCAjMzAKLSAgICAgICAgbGRyY3MgICAgICAgcjMsIFtyMV0sICM0ICAgICAgICAgICAgLyogIDQgYnl0ZXMgKi8KLSAgICAgICAgbGRybWloICAgICAgcjQsIFtyMV0sICMyICAgICAgICAgICAgLyogIDIgYnl0ZXMgKi8KLSAgICAgICAgc3RyY3MgICAgICAgcjMsIFtyMF0sICM0Ci0gICAgICAgIHN0cm1paCAgICAgIHI0LCBbcjBdLCAjMgotICAgICAgICB0c3QgICAgICAgICByMiwgIzB4MQotICAgICAgICBsZHJuZWIgICAgICByMywgW3IxXSAgICAgICAgICAgICAgICAvKiAgbGFzdCBieXRlICAqLwotICAgICAgICBzdHJuZWIgICAgICByMywgW3IwXQotNjoKLSAgICAgICAgbGRtZmQgICAgICAgc3AhLCB7cjQsIHI1LCByNiwgcjcsIHI4fQotICAgICAgICBsZG1mZCAgICAgICBzcCEsIHtyMCwgcGN9Ci1FTkQobWVtY3B5KQotCi0KLSNlbHNlICAgLyogX19BUk1fQVJDSF9fIDwgNyAqLwotCi0KLQkJLyoKLQkJICogT3B0aW1pemVkIG1lbWNweSgpIGZvciBBUk0uCi0gICAgICAgICAqCi0JCSAqIG5vdGUgdGhhdCBtZW1jcHkoKSBhbHdheXMgcmV0dXJucyB0aGUgZGVzdGluYXRpb24gcG9pbnRlciwKLQkJICogc28gd2UgaGF2ZSB0byBwcmVzZXJ2ZSBSMC4KLQkJICovCi0KLUVOVFJZKG1lbWNweSkKLQkJLyogVGhlIHN0YWNrIG11c3QgYWx3YXlzIGJlIDY0LWJpdHMgYWxpZ25lZCB0byBiZSBjb21wbGlhbnQgd2l0aCB0aGUKLQkJICogQVJNIEFCSS4gU2luY2Ugd2UgaGF2ZSB0byBzYXZlIFIwLCB3ZSBtaWdodCBhcyB3ZWxsIHNhdmUgUjQKLQkJICogd2hpY2ggd2UgY2FuIHVzZSBmb3IgYmV0dGVyIHBpcGVsaW5pbmcgb2YgdGhlIHJlYWRzIGJlbG93Ci0JCSAqLwotICAgICAgICAuc2F2ZSAgICAgICB7cjAsIHI0LCBscn0KLSAgICAgICAgc3RtZmQgICAgICAgc3AhLCB7cjAsIHI0LCBscn0KLSAgICAgICAgLyogTWFraW5nIHJvb20gZm9yIHI1LXIxMSB3aGljaCB3aWxsIGJlIHNwaWxsZWQgbGF0ZXIgKi8KLSAgICAgICAgLnBhZCAgICAgICAgIzI4Ci0gICAgICAgIHN1YiAgICAgICAgIHNwLCBzcCwgIzI4Ci0KLSAgICAgICAgLy8gcHJlbG9hZCB0aGUgZGVzdGluYXRpb24gYmVjYXVzZSB3ZSdsbCBhbGlnbiBpdCB0byBhIGNhY2hlIGxpbmUKLSAgICAgICAgLy8gd2l0aCBzbWFsbCB3cml0ZXMuIEFsc28gc3RhcnQgdGhlIHNvdXJjZSAicHVtcCIuCi0gICAgICAgIHBsZCAgICAgICAgIFtyMCwgIzBdCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIzBdCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIzMyXQotCi0JCS8qIGl0IHNpbXBsaWZpZXMgdGhpbmdzIHRvIHRha2UgY2FyZSBvZiBsZW48NCBlYXJseSAqLwotCQljbXAJCQlyMiwgIzQKLQkJYmxvCQkJY29weV9sYXN0XzNfYW5kX3JldHVybgotCi0JCS8qIGNvbXB1dGUgdGhlIG9mZnNldCB0byBhbGlnbiB0aGUgc291cmNlCi0JCSAqIG9mZnNldCA9ICg0LShzcmMmMykpJjMgPSAtc3JjICYgMwotCQkgKi8KLQkJcnNiCQkJcjMsIHIxLCAjMAotCQlhbmRzCQlyMywgcjMsICMzCi0JCWJlcQkJCXNyY19hbGlnbmVkCi0KLQkJLyogYWxpZ24gc291cmNlIHRvIDMyIGJpdHMuIFdlIG5lZWQgdG8gaW5zZXJ0IDIgaW5zdHJ1Y3Rpb25zIGJldHdlZW4KLQkJICogYSBsZHJbYnxoXSBhbmQgc3RyW2J8aF0gYmVjYXVzZSBieXRlIGFuZCBoYWxmLXdvcmQgaW5zdHJ1Y3Rpb25zCi0JCSAqIHN0YWxsIDIgY3ljbGVzLgotCQkgKi8KLQkJbW92cwkJcjEyLCByMywgbHNsICMzMQotCQlzdWIJCQlyMiwgcjIsIHIzCQkvKiB3ZSBrbm93IHRoYXQgcjMgPD0gcjIgYmVjYXVzZSByMiA+PSA0ICovCi0JCWxkcm1pYgkJcjMsIFtyMV0sICMxCi0JCWxkcmNzYgkJcjQsIFtyMV0sICMxCi0JCWxkcmNzYgkJcjEyLFtyMV0sICMxCi0gICAgICAgIHN0cm1pYgkJcjMsIFtyMF0sICMxCi0JCXN0cmNzYgkJcjQsIFtyMF0sICMxCi0JCXN0cmNzYgkJcjEyLFtyMF0sICMxCi0KLXNyY19hbGlnbmVkOgotCi0JCS8qIHNlZSBpZiBzcmMgYW5kIGRzdCBhcmUgYWxpZ25lZCB0b2dldGhlciAoY29uZ3J1ZW50KSAqLwotCQllb3IJCQlyMTIsIHIwLCByMQotCQl0c3QJCQlyMTIsICMzCi0JCWJuZQkJCW5vbl9jb25ncnVlbnQKLQotICAgICAgICAvKiBVc2UgcG9zdC1pbmNyaW1lbnQgbW9kZSBmb3Igc3RtIHRvIHNwaWxsIHI1LXIxMSB0byByZXNlcnZlZCBzdGFjawotICAgICAgICAgKiBmcmFtZS4gRG9uJ3QgdXBkYXRlIHNwLgotICAgICAgICAgKi8KLSAgICAgICAgc3RtZWEJCXNwLCB7cjUtcjExfQotCi0JCS8qIGFsaWduIHRoZSBkZXN0aW5hdGlvbiB0byBhIGNhY2hlLWxpbmUgKi8KLQkJcnNiICAgICAgICAgcjMsIHIwLCAjMAotCQlhbmRzCQlyMywgcjMsICMweDFDCi0JCWJlcSAgICAgICAgIGNvbmdydWVudF9hbGlnbmVkMzIKLQkJY21wICAgICAgICAgcjMsIHIyCi0JCWFuZGhpCQlyMywgcjIsICMweDFDCi0KLQkJLyogY29uZGl0aW9ubmFseSBjb3BpZXMgMCB0byA3IHdvcmRzIChsZW5ndGggaW4gcjMpICovCi0JCW1vdnMJCXIxMiwgcjMsIGxzbCAjMjgKLQkJbGRtY3NpYQkJcjEhLCB7cjQsIHI1LCByNiwgcjd9CS8qIDE2IGJ5dGVzICovCi0JCWxkbW1paWEJCXIxISwge3I4LCByOX0JCQkvKiAgOCBieXRlcyAqLwotCQlzdG1jc2lhCQlyMCEsIHtyNCwgcjUsIHI2LCByN30KLQkJc3RtbWlpYQkJcjAhLCB7cjgsIHI5fQotCQl0c3QgICAgICAgICByMywgIzB4NAotCQlsZHJuZQkJcjEwLFtyMV0sICM0CQkJLyogIDQgYnl0ZXMgKi8KLQkJc3RybmUJCXIxMCxbcjBdLCAjNAotCQlzdWIgICAgICAgICByMiwgcjIsIHIzCi0KLWNvbmdydWVudF9hbGlnbmVkMzI6Ci0JCS8qCi0JCSAqIGhlcmUgc291cmNlIGlzIGFsaWduZWQgdG8gMzIgYnl0ZXMuCi0JCSAqLwotCi1jYWNoZWRfYWxpZ25lZDMyOgotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICMzMgotICAgICAgICBibG8gICAgICAgICBsZXNzX3RoYW5fMzJfbGVmdAotCi0gICAgICAgIC8qCi0gICAgICAgICAqIFdlIHByZWxvYWQgYSBjYWNoZS1saW5lIHVwIHRvIDY0IGJ5dGVzIGFoZWFkLiBPbiB0aGUgOTI2LCB0aGlzIHdpbGwKLSAgICAgICAgICogc3RhbGwgb25seSB1bnRpbCB0aGUgcmVxdWVzdGVkIHdvcmxkIGlzIGZldGNoZWQsIGJ1dCB0aGUgbGluZWZpbGwKLSAgICAgICAgICogY29udGludWVzIGluIHRoZSB0aGUgYmFja2dyb3VuZC4KLSAgICAgICAgICogV2hpbGUgdGhlIGxpbmVmaWxsIGlzIGdvaW5nLCB3ZSB3cml0ZSBvdXIgcHJldmlvdXMgY2FjaGUtbGluZQotICAgICAgICAgKiBpbnRvIHRoZSB3cml0ZS1idWZmZXIgKHdoaWNoIHNob3VsZCBoYXZlIHNvbWUgZnJlZSBzcGFjZSkuCi0gICAgICAgICAqIFdoZW4gdGhlIGxpbmVmaWxsIGlzIGRvbmUsIHRoZSB3cml0ZWJ1ZmZlciB3aWxsCi0gICAgICAgICAqIHN0YXJ0IGR1bXBpbmcgaXRzIGNvbnRlbnQgaW50byBtZW1vcnkKLSAgICAgICAgICoKLSAgICAgICAgICogV2hpbGUgYWxsIHRoaXMgaXMgZ29pbmcsIHdlIHRoZW4gbG9hZCBhIGZ1bGwgY2FjaGUgbGluZSBpbnRvCi0gICAgICAgICAqIDggcmVnaXN0ZXJzLCB0aGlzIGNhY2hlIGxpbmUgc2hvdWxkIGJlIGluIHRoZSBjYWNoZSBieSBub3cKLSAgICAgICAgICogKG9yIHBhcnRseSBpbiB0aGUgY2FjaGUpLgotICAgICAgICAgKgotICAgICAgICAgKiBUaGlzIGNvZGUgc2hvdWxkIHdvcmsgd2VsbCByZWdhcmRsZXNzIG9mIHRoZSBzb3VyY2UvZGVzdCBhbGlnbm1lbnQuCi0gICAgICAgICAqCi0gICAgICAgICAqLwotCi0gICAgICAgIC8vIEFsaWduIHRoZSBwcmVsb2FkIHJlZ2lzdGVyIHRvIGEgY2FjaGUtbGluZSBiZWNhdXNlIHRoZSBjcHUgZG9lcwotICAgICAgICAvLyAiY3JpdGljYWwgd29yZCBmaXJzdCIgKHRoZSBmaXJzdCB3b3JkIHJlcXVlc3RlZCBpcyBsb2FkZWQgZmlyc3QpLgotICAgICAgICBiaWMgICAgICAgICByMTIsIHIxLCAjMHgxRgotICAgICAgICBhZGQgICAgICAgICByMTIsIHIxMiwgIzY0Ci0KLTE6ICAgICAgbGRtaWEgICAgICAgcjEhLCB7IHI0LXIxMSB9Ci0gICAgICAgIHBsZCAgICAgICAgIFtyMTIsICM2NF0KLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLQotICAgICAgICAvLyBOT1RFOiBpZiByMTIgaXMgbW9yZSB0aGFuIDY0IGFoZWFkIG9mIHIxLCB0aGUgZm9sbG93aW5nIGxkcmhpCi0gICAgICAgIC8vIGZvciBBUk05IHByZWxvYWQgd2lsbCBub3QgYmUgc2FmZWx5IGd1YXJkZWQgYnkgdGhlIHByZWNlZGluZyBzdWJzLgotICAgICAgICAvLyBXaGVuIGl0IGlzIHNhZmVseSBndWFyZGVkIHRoZSBvbmx5IHBvc3NpYmlsaXR5IHRvIGhhdmUgU0lHU0VHViBoZXJlCi0gICAgICAgIC8vIGlzIGJlY2F1c2UgdGhlIGNhbGxlciBvdmVyc3RhdGVzIHRoZSBsZW5ndGguCi0gICAgICAgIGxkcmhpICAgICAgIHIzLCBbcjEyXSwgIzMyICAgICAgLyogY2hlYXAgQVJNOSBwcmVsb2FkICovCi0gICAgICAgIHN0bWlhICAgICAgIHIwISwgeyByNC1yMTEgfQotCQliaHMgICAgICAgICAxYgotCi0gICAgICAgIGFkZCAgICAgICAgIHIyLCByMiwgIzMyCi0KLQotCi0KLWxlc3NfdGhhbl8zMl9sZWZ0OgotCQkvKgotCQkgKiBsZXNzIHRoYW4gMzIgYnl0ZXMgbGVmdCBhdCB0aGlzIHBvaW50IChsZW5ndGggaW4gcjIpCi0JCSAqLwotCi0JCS8qIHNraXAgYWxsIHRoaXMgaWYgdGhlcmUgaXMgbm90aGluZyB0byBkbywgd2hpY2ggc2hvdWxkCi0JCSAqIGJlIGEgY29tbW9uIGNhc2UgKGlmIG5vdCBleGVjdXRlZCB0aGUgY29kZSBiZWxvdyB0YWtlcwotCQkgKiBhYm91dCAxNiBjeWNsZXMpCi0JCSAqLwotCQl0c3QJCQlyMiwgIzB4MUYKLQkJYmVxCQkJMWYKLQotCQkvKiBjb25kaXRpb25uYWx5IGNvcGllcyAwIHRvIDMxIGJ5dGVzICovCi0JCW1vdnMJCXIxMiwgcjIsIGxzbCAjMjgKLQkJbGRtY3NpYQkJcjEhLCB7cjQsIHI1LCByNiwgcjd9CS8qIDE2IGJ5dGVzICovCi0JCWxkbW1paWEJCXIxISwge3I4LCByOX0JCQkvKiAgOCBieXRlcyAqLwotCQlzdG1jc2lhCQlyMCEsIHtyNCwgcjUsIHI2LCByN30KLQkJc3RtbWlpYQkJcjAhLCB7cjgsIHI5fQotCQltb3ZzCQlyMTIsIHIyLCBsc2wgIzMwCi0JCWxkcmNzCQlyMywgW3IxXSwgIzQJCQkvKiAgNCBieXRlcyAqLwotCQlsZHJtaWgJCXI0LCBbcjFdLCAjMgkJCS8qICAyIGJ5dGVzICovCi0JCXN0cmNzCQlyMywgW3IwXSwgIzQKLQkJc3RybWloCQlyNCwgW3IwXSwgIzIKLQkJdHN0ICAgICAgICAgcjIsICMweDEKLQkJbGRybmViCQlyMywgW3IxXQkJCQkvKiAgbGFzdCBieXRlICAqLwotCQlzdHJuZWIJCXIzLCBbcjBdCi0KLQkJLyogd2UncmUgZG9uZSEgcmVzdG9yZSBldmVyeXRoaW5nIGFuZCByZXR1cm4gKi8KLTE6CQlsZG1mZAkJc3AhLCB7cjUtcjExfQotCQlsZG1mZAkJc3AhLCB7cjAsIHI0LCBscn0KLQkJYngJCQlscgotCi0JCS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotbm9uX2NvbmdydWVudDoKLQkJLyoKLQkJICogaGVyZSBzb3VyY2UgaXMgYWxpZ25lZCB0byA0IGJ5dGVzCi0JCSAqIGJ1dCBkZXN0aW5hdGlvbiBpcyBub3QuCi0JCSAqCi0JCSAqIGluIHRoZSBjb2RlIGJlbG93IHIyIGlzIHRoZSBudW1iZXIgb2YgYnl0ZXMgcmVhZAotCQkgKiAodGhlIG51bWJlciBvZiBieXRlcyB3cml0dGVuIGlzIGFsd2F5cyBzbWFsbGVyLCBiZWNhdXNlIHdlIGhhdmUKLQkJICogcGFydGlhbCB3b3JkcyBpbiB0aGUgc2hpZnQgcXVldWUpCi0JCSAqLwotCQljbXAJCQlyMiwgIzQKLQkJYmxvCQkJY29weV9sYXN0XzNfYW5kX3JldHVybgotCi0gICAgICAgIC8qIFVzZSBwb3N0LWluY3JpbWVudCBtb2RlIGZvciBzdG0gdG8gc3BpbGwgcjUtcjExIHRvIHJlc2VydmVkIHN0YWNrCi0gICAgICAgICAqIGZyYW1lLiBEb24ndCB1cGRhdGUgc3AuCi0gICAgICAgICAqLwotICAgICAgICBzdG1lYQkJc3AsIHtyNS1yMTF9Ci0KLQkJLyogY29tcHV0ZSBzaGlmdHMgbmVlZGVkIHRvIGFsaWduIHNyYyB0byBkZXN0ICovCi0JCXJzYgkJCXI1LCByMCwgIzAKLQkJYW5kCQkJcjUsIHI1LCAjMwkJCS8qIHI1ID0gIyBieXRlcyBpbiBwYXJ0aWFsIHdvcmRzICovCi0JCW1vdgkJCXIxMiwgcjUsIGxzbCAjMwkJLyogcjEyID0gcmlnaHQgKi8KLQkJcnNiCQkJbHIsIHIxMiwgIzMyCQkvKiBsciA9IGxlZnQgICovCi0KLQkJLyogcmVhZCB0aGUgZmlyc3Qgd29yZCAqLwotCQlsZHIJCQlyMywgW3IxXSwgIzQKLQkJc3ViCQkJcjIsIHIyLCAjNAotCi0JCS8qIHdyaXRlIGEgcGFydGlhbCB3b3JkICgwIHRvIDMgYnl0ZXMpLCBzdWNoIHRoYXQgZGVzdGluYXRpb24KLQkJICogYmVjb21lcyBhbGlnbmVkIHRvIDMyIGJpdHMgKHI1ID0gbmIgb2Ygd29yZHMgdG8gY29weSBmb3IgYWxpZ25tZW50KQotCQkgKi8KLQkJbW92cwkJcjUsIHI1LCBsc2wgIzMxCi0JCXN0cm1pYgkJcjMsIFtyMF0sICMxCi0JCW1vdm1pCQlyMywgcjMsIGxzciAjOAotCQlzdHJjc2IJCXIzLCBbcjBdLCAjMQotCQltb3ZjcwkJcjMsIHIzLCBsc3IgIzgKLQkJc3RyY3NiCQlyMywgW3IwXSwgIzEKLQkJbW92Y3MJCXIzLCByMywgbHNyICM4Ci0KLQkJY21wCQkJcjIsICM0Ci0JCWJsbwkJCXBhcnRpYWxfd29yZF90YWlsCi0KLQkJLyogQWxpZ24gZGVzdGluYXRpb24gdG8gMzIgYnl0ZXMgKGNhY2hlIGxpbmUgYm91bmRhcnkpICovCi0xOgkJdHN0CQkJcjAsICMweDFjCi0JCWJlcQkJCTJmCi0JCWxkcgkJCXI1LCBbcjFdLCAjNAotCQlzdWIgICAgICAgICByMiwgcjIsICM0Ci0JCW9ycgkJCXI0LCByMywgcjUsCQlsc2wgbHIKLQkJbW92CQkJcjMsIHI1LAkJCWxzciByMTIKLQkJc3RyCQkJcjQsIFtyMF0sICM0Ci0gICAgICAgIGNtcCAgICAgICAgIHIyLCAjNAotCQliaHMJCQkxYgotCQlibG8JCQlwYXJ0aWFsX3dvcmRfdGFpbAotCi0JCS8qIGNvcHkgMzIgYnl0ZXMgYXQgYSB0aW1lICovCi0yOgkJc3VicwkJcjIsIHIyLCAjMzIKLQkJYmxvCQkJbGVzc190aGFuX3RoaXJ0eXR3bwotCi0JCS8qIFVzZSBpbW1lZGlhdGUgbW9kZSBmb3IgdGhlIHNoaWZ0cywgYmVjYXVzZSB0aGVyZSBpcyBhbiBleHRyYSBjeWNsZQotCQkgKiBmb3IgcmVnaXN0ZXIgc2hpZnRzLCB3aGljaCBjb3VsZCBhY2NvdW50IGZvciB1cCB0byA1MCUgb2YKLQkJICogcGVyZm9ybWFuY2UgaGl0LgotCQkgKi8KLQotICAgICAgICBjbXAJCQlyMTIsICMyNAotCQliZXEJCQlsb29wMjQKLQkJY21wCQkJcjEyLCAjOAotCQliZXEJCQlsb29wOAotCi1sb29wMTY6Ci0gICAgICAgIGxkciAgICAgICAgIHIxMiwgW3IxXSwgIzQKLTE6ICAgICAgbW92ICAgICAgICAgcjQsIHIxMgotCQlsZG1pYQkJcjEhLCB7ICAgcjUscjYscjcsICByOCxyOSxyMTAscjExfQotICAgICAgICBwbGQgICAgICAgICBbcjEsICM2NF0KLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgbGRyaHMgICAgICAgcjEyLCBbcjFdLCAjNAotCQlvcnIJCQlyMywgcjMsIHI0LAkJbHNsICMxNgotCQltb3YJCQlyNCwgcjQsCQkJbHNyICMxNgotCQlvcnIJCQlyNCwgcjQsIHI1LAkJbHNsICMxNgotCQltb3YJCQlyNSwgcjUsCQkJbHNyICMxNgotCQlvcnIJCQlyNSwgcjUsIHI2LAkJbHNsICMxNgotCQltb3YJCQlyNiwgcjYsCQkJbHNyICMxNgotCQlvcnIJCQlyNiwgcjYsIHI3LAkJbHNsICMxNgotCQltb3YJCQlyNywgcjcsCQkJbHNyICMxNgotCQlvcnIJCQlyNywgcjcsIHI4LAkJbHNsICMxNgotCQltb3YJCQlyOCwgcjgsCQkJbHNyICMxNgotCQlvcnIJCQlyOCwgcjgsIHI5LAkJbHNsICMxNgotCQltb3YJCQlyOSwgcjksCQkJbHNyICMxNgotCQlvcnIJCQlyOSwgcjksIHIxMCwJbHNsICMxNgotCQltb3YJCQlyMTAsIHIxMCwJCWxzciAjMTYKLQkJb3JyCQkJcjEwLCByMTAsIHIxMSwJbHNsICMxNgotCQlzdG1pYQkJcjAhLCB7cjMscjQscjUscjYsIHI3LHI4LHI5LHIxMH0KLQkJbW92CQkJcjMsIHIxMSwJCWxzciAjMTYKLQkJYmhzCQkJMWIKLQkJYgkJCWxlc3NfdGhhbl90aGlydHl0d28KLQotbG9vcDg6Ci0gICAgICAgIGxkciAgICAgICAgIHIxMiwgW3IxXSwgIzQKLTE6ICAgICAgbW92ICAgICAgICAgcjQsIHIxMgotCQlsZG1pYQkJcjEhLCB7ICAgcjUscjYscjcsICByOCxyOSxyMTAscjExfQotICAgICAgICBwbGQgICAgICAgICBbcjEsICM2NF0KLQkJc3VicwkJcjIsIHIyLCAjMzIKLSAgICAgICAgbGRyaHMgICAgICAgcjEyLCBbcjFdLCAjNAotCQlvcnIJCQlyMywgcjMsIHI0LAkJbHNsICMyNAotCQltb3YJCQlyNCwgcjQsCQkJbHNyICM4Ci0JCW9ycgkJCXI0LCByNCwgcjUsCQlsc2wgIzI0Ci0JCW1vdgkJCXI1LCByNSwJCQlsc3IgIzgKLQkJb3JyCQkJcjUsIHI1LCByNiwJCWxzbCAjMjQKLQkJbW92CQkJcjYsIHI2LAkJCWxzciAjOAotCQlvcnIJCQlyNiwgcjYsIHI3LAkJbHNsICMyNAotCQltb3YJCQlyNywgcjcsCQkJbHNyICM4Ci0JCW9ycgkJCXI3LCByNywgcjgsCQlsc2wgIzI0Ci0JCW1vdgkJCXI4LCByOCwJCQlsc3IgIzgKLQkJb3JyCQkJcjgsIHI4LCByOSwJCWxzbCAjMjQKLQkJbW92CQkJcjksIHI5LAkJCWxzciAjOAotCQlvcnIJCQlyOSwgcjksIHIxMCwJbHNsICMyNAotCQltb3YJCQlyMTAsIHIxMCwJCWxzciAjOAotCQlvcnIJCQlyMTAsIHIxMCwgcjExLAlsc2wgIzI0Ci0JCXN0bWlhCQlyMCEsIHtyMyxyNCxyNSxyNiwgcjcscjgscjkscjEwfQotCQltb3YJCQlyMywgcjExLAkJbHNyICM4Ci0JCWJocwkJCTFiCi0JCWIJCQlsZXNzX3RoYW5fdGhpcnR5dHdvCi0KLWxvb3AyNDoKLSAgICAgICAgbGRyICAgICAgICAgcjEyLCBbcjFdLCAjNAotMTogICAgICBtb3YgICAgICAgICByNCwgcjEyCi0JCWxkbWlhCQlyMSEsIHsgICByNSxyNixyNywgIHI4LHI5LHIxMCxyMTF9Ci0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIzY0XQotCQlzdWJzCQlyMiwgcjIsICMzMgotICAgICAgICBsZHJocyAgICAgICByMTIsIFtyMV0sICM0Ci0JCW9ycgkJCXIzLCByMywgcjQsCQlsc2wgIzgKLQkJbW92CQkJcjQsIHI0LAkJCWxzciAjMjQKLQkJb3JyCQkJcjQsIHI0LCByNSwJCWxzbCAjOAotCQltb3YJCQlyNSwgcjUsCQkJbHNyICMyNAotCQlvcnIJCQlyNSwgcjUsIHI2LAkJbHNsICM4Ci0JCW1vdgkJCXI2LCByNiwJCQlsc3IgIzI0Ci0JCW9ycgkJCXI2LCByNiwgcjcsCQlsc2wgIzgKLQkJbW92CQkJcjcsIHI3LAkJCWxzciAjMjQKLQkJb3JyCQkJcjcsIHI3LCByOCwJCWxzbCAjOAotCQltb3YJCQlyOCwgcjgsCQkJbHNyICMyNAotCQlvcnIJCQlyOCwgcjgsIHI5LAkJbHNsICM4Ci0JCW1vdgkJCXI5LCByOSwJCQlsc3IgIzI0Ci0JCW9ycgkJCXI5LCByOSwgcjEwLAlsc2wgIzgKLQkJbW92CQkJcjEwLCByMTAsCQlsc3IgIzI0Ci0JCW9ycgkJCXIxMCwgcjEwLCByMTEsCWxzbCAjOAotCQlzdG1pYQkJcjAhLCB7cjMscjQscjUscjYsIHI3LHI4LHI5LHIxMH0KLQkJbW92CQkJcjMsIHIxMSwJCWxzciAjMjQKLQkJYmhzCQkJMWIKLQotCi1sZXNzX3RoYW5fdGhpcnR5dHdvOgotCQkvKiBjb3B5IHRoZSBsYXN0IDAgdG8gMzEgYnl0ZXMgb2YgdGhlIHNvdXJjZSAqLwotCQlyc2IJCQlyMTIsIGxyLCAjMzIJCS8qIHdlIGNvcnJ1cHRlZCByMTIsIHJlY29tcHV0ZSBpdCAgKi8KLQkJYWRkCQkJcjIsIHIyLCAjMzIKLQkJY21wCQkJcjIsICM0Ci0JCWJsbwkJCXBhcnRpYWxfd29yZF90YWlsCi0KLTE6CQlsZHIJCQlyNSwgW3IxXSwgIzQKLQkJc3ViICAgICAgICAgcjIsIHIyLCAjNAotCQlvcnIJCQlyNCwgcjMsIHI1LAkJbHNsIGxyCi0JCW1vdgkJCXIzLAlyNSwJCQlsc3IgcjEyCi0JCXN0cgkJCXI0LCBbcjBdLCAjNAotICAgICAgICBjbXAgICAgICAgICByMiwgIzQKLQkJYmhzCQkJMWIKLQotcGFydGlhbF93b3JkX3RhaWw6Ci0JCS8qIHdlIGhhdmUgYSBwYXJ0aWFsIHdvcmQgaW4gdGhlIGlucHV0IGJ1ZmZlciAqLwotCQltb3ZzCQlyNSwgbHIsIGxzbCAjKDMxLTMpCi0JCXN0cm1pYgkJcjMsIFtyMF0sICMxCi0JCW1vdm1pCQlyMywgcjMsIGxzciAjOAotCQlzdHJjc2IJCXIzLCBbcjBdLCAjMQotCQltb3ZjcwkJcjMsIHIzLCBsc3IgIzgKLQkJc3RyY3NiCQlyMywgW3IwXSwgIzEKLQotCQkvKiBSZWZpbGwgc3BpbGxlZCByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suIERvbid0IHVwZGF0ZSBzcC4gKi8KLQkJbGRtZmQJCXNwLCB7cjUtcjExfQotCi1jb3B5X2xhc3RfM19hbmRfcmV0dXJuOgotCQltb3ZzCQlyMiwgcjIsIGxzbCAjMzEJLyogY29weSByZW1haW5pbmcgMCwgMSwgMiBvciAzIGJ5dGVzICovCi0JCWxkcm1pYgkJcjIsIFtyMV0sICMxCi0JCWxkcmNzYgkJcjMsIFtyMV0sICMxCi0JCWxkcmNzYgkJcjEyLFtyMV0KLQkJc3RybWliCQlyMiwgW3IwXSwgIzEKLQkJc3RyY3NiCQlyMywgW3IwXSwgIzEKLQkJc3RyY3NiCQlyMTIsW3IwXQotCi0gICAgICAgIC8qIHdlJ3JlIGRvbmUhIHJlc3RvcmUgc3AgYW5kIHNwaWxsZWQgcmVnaXN0ZXJzIGFuZCByZXR1cm4gKi8KLSAgICAgICAgYWRkICAgICAgICAgc3AsICBzcCwgIzI4Ci0JCWxkbWZkCQlzcCEsIHtyMCwgcjQsIGxyfQotCQlieAkJCWxyCi1FTkQobWVtY3B5KQotCi0KLSNlbmRpZiAgICAvKiBfX0FSTV9BUkNIX18gPCA3ICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuYTkuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5hOS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNTk3MDFkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5hOS5TCisrKyAvZGV2L251bGwKQEAgLTEsNjE0ICswLDAgQEAKLS8qIENvcHlyaWdodCAoYykgMjAxMywgTGluYXJvIExpbWl0ZWQKLSAgIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLSAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gICBhcmUgbWV0OgotCi0gICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0KLSAgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0KLSAgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBMaW5hcm8gTGltaXRlZCBub3IgdGhlIG5hbWVzIG9mIGl0cwotICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCi0gICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0KLSAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAgICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gICBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gICBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gICBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAgIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICAgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICAgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gICBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0gKi8KLQotLyoKLSAgIFRoaXMgbWVtY3B5IHJvdXRpbmUgaXMgb3B0aW1pc2VkIGZvciBDb3J0ZXgtQTE1IGNvcmVzIGFuZCB0YWtlcyBhZHZhbnRhZ2UKLSAgIG9mIFZGUCBvciBORU9OIHdoZW4gYnVpbHQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgZmxhZ3MuCi0KLSAgIEFzc3VtcHRpb25zOgotCi0gICAgQVJNdjYgKEFSTXY3LWEgaWYgdXNpbmcgTmVvbikKLSAgICBBUk0gc3RhdGUKLSAgICBVbmFsaWduZWQgYWNjZXNzZXMKLSAgICBMRFJEL1NUUkQgc3VwcG9ydCB1bmFsaWduZWQgd29yZCBhY2Nlc3NlcwotCi0gKi8KLQotI2luY2x1ZGUgPG1hY2hpbmUvY3B1LWZlYXR1cmVzLmg+Ci0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLQkuc3ludGF4IHVuaWZpZWQKLQkvKiBUaGlzIGltcGxlbWVudGF0aW9uIHJlcXVpcmVzIEFSTSBzdGF0ZS4gICovCi0JLmFybQotCi0jaWZkZWYgX19BUk1fTkVPTl9fCi0KLQkuZnB1CW5lb24KLQkuYXJjaAlhcm12Ny1hCi0jIGRlZmluZSBGUkFNRV9TSVpFCTQKLSMgZGVmaW5lIFVTRV9WRlAKLSMgZGVmaW5lIFVTRV9ORU9OCi0KLSNlbGlmICFkZWZpbmVkIChfX1NPRlRGUF9fKQotCi0JLmFyY2gJYXJtdjYKLQkuZnB1CXZmcHYyCi0jIGRlZmluZSBGUkFNRV9TSVpFCTMyCi0jIGRlZmluZSBVU0VfVkZQCi0KLSNlbHNlCi0JLmFyY2gJYXJtdjYKLSMgZGVmaW5lIEZSQU1FX1NJWkUgICAgMzIKLQotI2VuZGlmCi0KLS8qIE9sZCB2ZXJzaW9ucyBvZiBHQVMgaW5jb3JyZWN0bHkgaW1wbGVtZW50IHRoZSBORU9OIGFsaWduIHNlbWFudGljcy4gICovCi0jaWZkZWYgQlJPS0VOX0FTTV9ORU9OX0FMSUdOCi0jZGVmaW5lIEFMSUdOKGFkZHIsIGFsaWduKSBhZGRyLDphbGlnbgotI2Vsc2UKLSNkZWZpbmUgQUxJR04oYWRkciwgYWxpZ24pIGFkZHI6YWxpZ24KLSNlbmRpZgotCi0jZGVmaW5lIFBDX09GRlNFVAk4CS8qIFBDIHBpcGVsaW5lIGNvbXBlbnNhdGlvbi4gICovCi0jZGVmaW5lIElOU05fU0laRQk0Ci0KLS8qIENhbGwgcGFyYW1ldGVycy4gICovCi0jZGVmaW5lIGRzdGluCXIwCi0jZGVmaW5lIHNyYwlyMQotI2RlZmluZSBjb3VudAlyMgotCi0vKiBMb2NhbHMuICAqLwotI2RlZmluZSB0bXAxCXIzCi0jZGVmaW5lIGRzdAlpcAotI2RlZmluZSB0bXAyCXIxMAotCi0jaWZuZGVmIFVTRV9ORU9OCi0vKiBGb3IgYnVsayBjb3BpZXMgdXNpbmcgR1AgcmVnaXN0ZXJzLiAgKi8KLSNkZWZpbmUJQV9sCXIyCQkvKiBDYWxsLWNsb2JiZXJlZC4gICovCi0jZGVmaW5lCUFfaAlyMwkJLyogQ2FsbC1jbG9iYmVyZWQuICAqLwotI2RlZmluZQlCX2wJcjQKLSNkZWZpbmUJQl9oCXI1Ci0jZGVmaW5lCUNfbAlyNgotI2RlZmluZQlDX2gJcjcKLSNkZWZpbmUJRF9sCXI4Ci0jZGVmaW5lCURfaAlyOQotI2VuZGlmCi0KLS8qIE51bWJlciBvZiBsaW5lcyBhaGVhZCB0byBwcmUtZmV0Y2ggZGF0YS4gIElmIHlvdSBjaGFuZ2UgdGhpcyB0aGUgY29kZQotICAgYmVsb3cgd2lsbCBuZWVkIGFkanVzdG1lbnQgdG8gY29tcGVuc2F0ZS4gICovCi0KLSNkZWZpbmUgcHJlZmV0Y2hfbGluZXMJNQotCi0jaWZkZWYgVVNFX1ZGUAotCS5tYWNybwljcHlfbGluZV92ZnAgdnJlZywgYmFzZQotCXZzdHIJXHZyZWcsIFtkc3QsICNcYmFzZV0KLQl2bGRyCVx2cmVnLCBbc3JjLCAjXGJhc2VdCi0JdnN0cglkMCwgW2RzdCwgI1xiYXNlICsgOF0KLQl2bGRyCWQwLCBbc3JjLCAjXGJhc2UgKyA4XQotCXZzdHIJZDEsIFtkc3QsICNcYmFzZSArIDE2XQotCXZsZHIJZDEsIFtzcmMsICNcYmFzZSArIDE2XQotCXZzdHIJZDIsIFtkc3QsICNcYmFzZSArIDI0XQotCXZsZHIJZDIsIFtzcmMsICNcYmFzZSArIDI0XQotCXZzdHIJXHZyZWcsIFtkc3QsICNcYmFzZSArIDMyXQotCXZsZHIJXHZyZWcsIFtzcmMsICNcYmFzZSArIHByZWZldGNoX2xpbmVzICogNjQgLSAzMl0KLQl2c3RyCWQwLCBbZHN0LCAjXGJhc2UgKyA0MF0KLQl2bGRyCWQwLCBbc3JjLCAjXGJhc2UgKyA0MF0KLQl2c3RyCWQxLCBbZHN0LCAjXGJhc2UgKyA0OF0KLQl2bGRyCWQxLCBbc3JjLCAjXGJhc2UgKyA0OF0KLQl2c3RyCWQyLCBbZHN0LCAjXGJhc2UgKyA1Nl0KLQl2bGRyCWQyLCBbc3JjLCAjXGJhc2UgKyA1Nl0KLQkuZW5kbQotCi0JLm1hY3JvCWNweV90YWlsX3ZmcCB2cmVnLCBiYXNlCi0JdnN0cglcdnJlZywgW2RzdCwgI1xiYXNlXQotCXZsZHIJXHZyZWcsIFtzcmMsICNcYmFzZV0KLQl2c3RyCWQwLCBbZHN0LCAjXGJhc2UgKyA4XQotCXZsZHIJZDAsIFtzcmMsICNcYmFzZSArIDhdCi0JdnN0cglkMSwgW2RzdCwgI1xiYXNlICsgMTZdCi0JdmxkcglkMSwgW3NyYywgI1xiYXNlICsgMTZdCi0JdnN0cglkMiwgW2RzdCwgI1xiYXNlICsgMjRdCi0JdmxkcglkMiwgW3NyYywgI1xiYXNlICsgMjRdCi0JdnN0cglcdnJlZywgW2RzdCwgI1xiYXNlICsgMzJdCi0JdnN0cglkMCwgW2RzdCwgI1xiYXNlICsgNDBdCi0JdmxkcglkMCwgW3NyYywgI1xiYXNlICsgNDBdCi0JdnN0cglkMSwgW2RzdCwgI1xiYXNlICsgNDhdCi0JdmxkcglkMSwgW3NyYywgI1xiYXNlICsgNDhdCi0JdnN0cglkMiwgW2RzdCwgI1xiYXNlICsgNTZdCi0JdmxkcglkMiwgW3NyYywgI1xiYXNlICsgNTZdCi0JLmVuZG0KLSNlbmRpZgotCi0JLnAyYWxpZ24gNgotRU5UUlkobWVtY3B5KQotCi0JbW92CWRzdCwgZHN0aW4JLyogUHJlc2VydmUgZHN0aW4sIHdlIG5lZWQgdG8gcmV0dXJuIGl0LiAgKi8KLQljbXAJY291bnQsICM2NAotCWJnZQkuTGNweV9ub3Rfc2hvcnQKLQkvKiBEZWFsIHdpdGggc21hbGwgY29waWVzIHF1aWNrbHkgYnkgZHJvcHBpbmcgc3RyYWlnaHQgaW50byB0aGUKLQkgICBleGl0IGJsb2NrLiAgKi8KLQotLkx0YWlsNjN1bmFsaWduZWQ6Ci0jaWZkZWYgVVNFX05FT04KLQlhbmQJdG1wMSwgY291bnQsICMweDM4Ci0JcnNiCXRtcDEsIHRtcDEsICMoNTYgLSBQQ19PRkZTRVQgKyBJTlNOX1NJWkUpCi0JYWRkCXBjLCBwYywgdG1wMQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogMTQgd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDEyIHdvcmRzIHRvIGdvLiAgKi8KLQl2c3QxLjgJe2QwfSwgW2RzdF0hCi0JdmxkMS44CXtkMH0sIFtzcmNdIQkvKiAxMCB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogOCB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogNiB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogNCB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogMiB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCi0JdHN0CWNvdW50LCAjNAotCWxkcm5lCXRtcDEsIFtzcmNdLCAjNAotCXN0cm5lCXRtcDEsIFtkc3RdLCAjNAotI2Vsc2UKLQkvKiBDb3B5IHVwIHRvIDE1IGZ1bGwgd29yZHMgb2YgZGF0YS4gIE1heSBub3QgYmUgYWxpZ25lZC4gICovCi0JLyogQ2Fubm90IHVzZSBWRlAgZm9yIHVuYWxpZ25lZCBkYXRhLiAgKi8KLQlhbmQJdG1wMSwgY291bnQsICMweDNjCi0JYWRkCWRzdCwgZHN0LCB0bXAxCi0JYWRkCXNyYywgc3JjLCB0bXAxCi0JcnNiCXRtcDEsIHRtcDEsICMoNjAgLSBQQ19PRkZTRVQvMiArIElOU05fU0laRS8yKQotCS8qIEp1bXAgZGlyZWN0bHkgaW50byB0aGUgc2VxdWVuY2UgYmVsb3cgYXQgdGhlIGNvcnJlY3Qgb2Zmc2V0LiAgKi8KLQlhZGQJcGMsIHBjLCB0bXAxLCBsc2wgIzEKLQotCWxkcgl0bXAxLCBbc3JjLCAjLTYwXQkvKiAxNSB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtNjBdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy01Nl0JLyogMTQgd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTU2XQotCWxkcgl0bXAxLCBbc3JjLCAjLTUyXQotCXN0cgl0bXAxLCBbZHN0LCAjLTUyXQotCi0JbGRyCXRtcDEsIFtzcmMsICMtNDhdCS8qIDEyIHdvcmRzIHRvIGdvLiAgKi8KLQlzdHIJdG1wMSwgW2RzdCwgIy00OF0KLQlsZHIJdG1wMSwgW3NyYywgIy00NF0KLQlzdHIJdG1wMSwgW2RzdCwgIy00NF0KLQotCWxkcgl0bXAxLCBbc3JjLCAjLTQwXQkvKiAxMCB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtNDBdCi0JbGRyCXRtcDEsIFtzcmMsICMtMzZdCi0Jc3RyCXRtcDEsIFtkc3QsICMtMzZdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy0zMl0JLyogOCB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtMzJdCi0JbGRyCXRtcDEsIFtzcmMsICMtMjhdCi0Jc3RyCXRtcDEsIFtkc3QsICMtMjhdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy0yNF0JLyogNiB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtMjRdCi0JbGRyCXRtcDEsIFtzcmMsICMtMjBdCi0Jc3RyCXRtcDEsIFtkc3QsICMtMjBdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy0xNl0JLyogNCB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtMTZdCi0JbGRyCXRtcDEsIFtzcmMsICMtMTJdCi0Jc3RyCXRtcDEsIFtkc3QsICMtMTJdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy04XQkvKiAyIHdvcmRzIHRvIGdvLiAgKi8KLQlzdHIJdG1wMSwgW2RzdCwgIy04XQotCWxkcgl0bXAxLCBbc3JjLCAjLTRdCi0Jc3RyCXRtcDEsIFtkc3QsICMtNF0KLSNlbmRpZgotCi0JbHNscwljb3VudCwgY291bnQsICMzMQotCWxkcmhjcwl0bXAxLCBbc3JjXSwgIzIKLQlsZHJibmUJc3JjLCBbc3JjXQkJLyogU3JjIGlzIGRlYWQsIHVzZSBhcyBhIHNjcmF0Y2guICAqLwotCXN0cmhjcwl0bXAxLCBbZHN0XSwgIzIKLQlzdHJibmUJc3JjLCBbZHN0XQotCWJ4CWxyCi0KLS5MY3B5X25vdF9zaG9ydDoKLQkvKiBBdCBsZWFzdCA2NCBieXRlcyB0byBjb3B5LCBidXQgZG9uJ3Qga25vdyB0aGUgYWxpZ25tZW50IHlldC4gICovCi0Jc3RyCXRtcDIsIFtzcCwgIy1GUkFNRV9TSVpFXSEKLQlhbmQJdG1wMiwgc3JjLCAjNwotCWFuZAl0bXAxLCBkc3QsICM3Ci0JY21wCXRtcDEsIHRtcDIKLQlibmUJLkxjcHlfbm90YWxpZ25lZAotCi0jaWZkZWYgVVNFX1ZGUAotCS8qIE1hZ2ljIGR1c3QgYWxlcnQhICBGb3JjZSBWRlAgb24gQ29ydGV4LUE5LiAgRXhwZXJpbWVudHMgc2hvdwotCSAgIHRoYXQgdGhlIEZQIHBpcGVsaW5lIGlzIG11Y2ggYmV0dGVyIGF0IHN0cmVhbWluZyBsb2FkcyBhbmQKLQkgICBzdG9yZXMuICBUaGlzIGlzIG91dHNpZGUgdGhlIGNyaXRpY2FsIGxvb3AuICAqLwotCXZtb3YuZjMyCXMwLCBzMAotI2VuZGlmCi0KLQkvKiBTUkMgYW5kIERTVCBoYXZlIHRoZSBzYW1lIG11dHVhbCAzMi1iaXQgYWxpZ25tZW50LCBidXQgd2UgbWF5Ci0JICAgc3RpbGwgbmVlZCB0byBwcmUtY29weSBzb21lIGJ5dGVzIHRvIGdldCB0byBuYXR1cmFsIGFsaWdubWVudC4KLQkgICBXZSBicmluZyBEU1QgaW50byBmdWxsIDY0LWJpdCBhbGlnbm1lbnQuICAqLwotCWxzbHMJdG1wMiwgZHN0LCAjMjkKLQliZXEJMWYKLQlyc2JzCXRtcDIsIHRtcDIsICMwCi0Jc3ViCWNvdW50LCBjb3VudCwgdG1wMiwgbHNyICMyOQotCWxkcm1pCXRtcDEsIFtzcmNdLCAjNAotCXN0cm1pCXRtcDEsIFtkc3RdLCAjNAotCWxzbHMJdG1wMiwgdG1wMiwgIzIKLQlsZHJoY3MJdG1wMSwgW3NyY10sICMyCi0JbGRyYm5lCXRtcDIsIFtzcmNdLCAjMQotCXN0cmhjcwl0bXAxLCBbZHN0XSwgIzIKLQlzdHJibmUJdG1wMiwgW2RzdF0sICMxCi0KLTE6Ci0Jc3Vicwl0bXAyLCBjb3VudCwgIzY0CS8qIFVzZSB0bXAyIGZvciBjb3VudC4gICovCi0JYmx0CS5MdGFpbDYzYWxpZ25lZAotCi0JY21wCXRtcDIsICM1MTIKLQliZ2UJLkxjcHlfYm9keV9sb25nCi0KLS5MY3B5X2JvZHlfbWVkaXVtOgkJCS8qIENvdW50IGluIHRtcDIuICAqLwotI2lmZGVmIFVTRV9WRlAKLTE6Ci0JdmxkcglkMCwgW3NyYywgIzBdCi0Jc3Vicwl0bXAyLCB0bXAyLCAjNjQKLQl2bGRyCWQxLCBbc3JjLCAjOF0KLQl2c3RyCWQwLCBbZHN0LCAjMF0KLQl2bGRyCWQwLCBbc3JjLCAjMTZdCi0JdnN0cglkMSwgW2RzdCwgIzhdCi0JdmxkcglkMSwgW3NyYywgIzI0XQotCXZzdHIJZDAsIFtkc3QsICMxNl0KLQl2bGRyCWQwLCBbc3JjLCAjMzJdCi0JdnN0cglkMSwgW2RzdCwgIzI0XQotCXZsZHIJZDEsIFtzcmMsICM0MF0KLQl2c3RyCWQwLCBbZHN0LCAjMzJdCi0JdmxkcglkMCwgW3NyYywgIzQ4XQotCXZzdHIJZDEsIFtkc3QsICM0MF0KLQl2bGRyCWQxLCBbc3JjLCAjNTZdCi0JdnN0cglkMCwgW2RzdCwgIzQ4XQotCWFkZAlzcmMsIHNyYywgIzY0Ci0JdnN0cglkMSwgW2RzdCwgIzU2XQotCWFkZAlkc3QsIGRzdCwgIzY0Ci0JYmdlCTFiCi0JdHN0CXRtcDIsICMweDNmCi0JYmVxCS5MZG9uZQotCi0uTHRhaWw2M2FsaWduZWQ6CQkJLyogQ291bnQgaW4gdG1wMi4gICovCi0JYW5kCXRtcDEsIHRtcDIsICMweDM4Ci0JYWRkCWRzdCwgZHN0LCB0bXAxCi0JYWRkCXNyYywgc3JjLCB0bXAxCi0JcnNiCXRtcDEsIHRtcDEsICMoNTYgLSBQQ19PRkZTRVQgKyBJTlNOX1NJWkUpCi0JYWRkCXBjLCBwYywgdG1wMQotCi0JdmxkcglkMCwgW3NyYywgIy01Nl0JLyogMTQgd29yZHMgdG8gZ28uICAqLwotCXZzdHIJZDAsIFtkc3QsICMtNTZdCi0JdmxkcglkMCwgW3NyYywgIy00OF0JLyogMTIgd29yZHMgdG8gZ28uICAqLwotCXZzdHIJZDAsIFtkc3QsICMtNDhdCi0JdmxkcglkMCwgW3NyYywgIy00MF0JLyogMTAgd29yZHMgdG8gZ28uICAqLwotCXZzdHIJZDAsIFtkc3QsICMtNDBdCi0JdmxkcglkMCwgW3NyYywgIy0zMl0JLyogOCB3b3JkcyB0byBnby4gICovCi0JdnN0cglkMCwgW2RzdCwgIy0zMl0KLQl2bGRyCWQwLCBbc3JjLCAjLTI0XQkvKiA2IHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLTI0XQotCXZsZHIJZDAsIFtzcmMsICMtMTZdCS8qIDQgd29yZHMgdG8gZ28uICAqLwotCXZzdHIJZDAsIFtkc3QsICMtMTZdCi0JdmxkcglkMCwgW3NyYywgIy04XQkvKiAyIHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLThdCi0jZWxzZQotCXN1YglzcmMsIHNyYywgIzgKLQlzdWIJZHN0LCBkc3QsICM4Ci0xOgotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM4XQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM4XQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICMxNl0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjMTZdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzI0XQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMyNF0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjMzJdCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzMyXQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM0MF0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjNDBdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzQ4XQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM0OF0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjNTZdCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzU2XQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM2NF0hCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzY0XSEKLQlzdWJzCXRtcDIsIHRtcDIsICM2NAotCWJnZQkxYgotCXRzdAl0bXAyLCAjMHgzZgotCWJuZQkxZgotCWxkcgl0bXAyLFtzcF0sICNGUkFNRV9TSVpFCi0JYngJbHIKLTE6Ci0JYWRkCXNyYywgc3JjLCAjOAotCWFkZAlkc3QsIGRzdCwgIzgKLQotLkx0YWlsNjNhbGlnbmVkOgkJCS8qIENvdW50IGluIHRtcDIuICAqLwotCS8qIENvcHkgdXAgdG8gNyBkLXdvcmRzIG9mIGRhdGEuICBTaW1pbGFyIHRvIEx0YWlsNjN1bmFsaWduZWQsIGJ1dAotCSAgIHdlIGtub3cgdGhhdCB0aGUgc3JjIGFuZCBkZXN0IGFyZSAzMi1iaXQgYWxpZ25lZCBzbyB3ZSBjYW4gdXNlCi0JICAgTERSRC9TVFJEIHRvIGltcHJvdmUgZWZmaWNpZW5jeS4gICovCi0JLyogVE1QMiBpcyBub3cgbmVnYXRpdmUsIGJ1dCB3ZSBkb24ndCBjYXJlIGFib3V0IHRoYXQuICBUaGUgYm90dG9tCi0JICAgc2l4IGJpdHMgc3RpbGwgdGVsbCB1cyBob3cgbWFueSBieXRlcyBhcmUgbGVmdCB0byBjb3B5LiAgKi8KLQotCWFuZAl0bXAxLCB0bXAyLCAjMHgzOAotCWFkZAlkc3QsIGRzdCwgdG1wMQotCWFkZAlzcmMsIHNyYywgdG1wMQotCXJzYgl0bXAxLCB0bXAxLCAjKDU2IC0gUENfT0ZGU0VUICsgSU5TTl9TSVpFKQotCWFkZAlwYywgcGMsIHRtcDEKLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLTU2XQkvKiAxNCB3b3JkcyB0byBnby4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIy01Nl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLTQ4XQkvKiAxMiB3b3JkcyB0byBnby4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIy00OF0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLTQwXQkvKiAxMCB3b3JkcyB0byBnby4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIy00MF0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLTMyXQkvKiA4IHdvcmRzIHRvIGdvLiAgKi8KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjLTMyXQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICMtMjRdCS8qIDYgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtMjRdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy0xNl0JLyogNCB3b3JkcyB0byBnby4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIy0xNl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLThdCS8qIDIgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtOF0KLQotI2VuZGlmCi0JdHN0CXRtcDIsICM0Ci0JbGRybmUJdG1wMSwgW3NyY10sICM0Ci0Jc3RybmUJdG1wMSwgW2RzdF0sICM0Ci0JbHNscwl0bXAyLCB0bXAyLCAjMzEJCS8qIENvdW50ICh0bXAyKSBub3cgZGVhZC4gKi8KLQlsZHJoY3MJdG1wMSwgW3NyY10sICMyCi0JbGRyYm5lCXRtcDIsIFtzcmNdCi0Jc3RyaGNzCXRtcDEsIFtkc3RdLCAjMgotCXN0cmJuZQl0bXAyLCBbZHN0XQotCi0uTGRvbmU6Ci0JbGRyCXRtcDIsIFtzcF0sICNGUkFNRV9TSVpFCi0JYngJbHIKLQotLkxjcHlfYm9keV9sb25nOgkJCS8qIENvdW50IGluIHRtcDIuICAqLwotCi0JLyogTG9uZyBjb3B5LiAgV2Uga25vdyB0aGF0IHRoZXJlJ3MgYXQgbGVhc3QgKHByZWZldGNoX2xpbmVzICogNjQpCi0JICAgYnl0ZXMgdG8gZ28uICAqLwotI2lmZGVmIFVTRV9WRlAKLQkvKiBEb24ndCB1c2UgUExELiAgSW5zdGVhZCwgcmVhZCBzb21lIGRhdGEgaW4gYWR2YW5jZSBvZiB0aGUgY3VycmVudAotCSAgIGNvcHkgcG9zaXRpb24gaW50byBhIHJlZ2lzdGVyLiAgVGhpcyBzaG91bGQgYWN0IGxpa2UgYSBQTEQKLQkgICBvcGVyYXRpb24gYnV0IHdlIHdvbid0IGhhdmUgdG8gcmVwZWF0IHRoZSB0cmFuc2Zlci4gICovCi0KLQl2bGRyCWQzLCBbc3JjLCAjMF0KLQl2bGRyCWQ0LCBbc3JjLCAjNjRdCi0JdmxkcglkNSwgW3NyYywgIzEyOF0KLQl2bGRyCWQ2LCBbc3JjLCAjMTkyXQotCXZsZHIJZDcsIFtzcmMsICMyNTZdCi0KLQl2bGRyCWQwLCBbc3JjLCAjOF0KLQl2bGRyCWQxLCBbc3JjLCAjMTZdCi0JdmxkcglkMiwgW3NyYywgIzI0XQotCWFkZAlzcmMsIHNyYywgIzMyCi0KLQlzdWJzCXRtcDIsIHRtcDIsICNwcmVmZXRjaF9saW5lcyAqIDY0ICogMgotCWJsdAkyZgotMToKLQljcHlfbGluZV92ZnAJZDMsIDAKLQljcHlfbGluZV92ZnAJZDQsIDY0Ci0JY3B5X2xpbmVfdmZwCWQ1LCAxMjgKLQlhZGQJZHN0LCBkc3QsICMzICogNjQKLQlhZGQJc3JjLCBzcmMsICMzICogNjQKLQljcHlfbGluZV92ZnAJZDYsIDAKLQljcHlfbGluZV92ZnAJZDcsIDY0Ci0JYWRkCWRzdCwgZHN0LCAjMiAqIDY0Ci0JYWRkCXNyYywgc3JjLCAjMiAqIDY0Ci0Jc3Vicwl0bXAyLCB0bXAyLCAjcHJlZmV0Y2hfbGluZXMgKiA2NAotCWJnZQkxYgotCi0yOgotCWNweV90YWlsX3ZmcAlkMywgMAotCWNweV90YWlsX3ZmcAlkNCwgNjQKLQljcHlfdGFpbF92ZnAJZDUsIDEyOAotCWFkZAlzcmMsIHNyYywgIzMgKiA2NAotCWFkZAlkc3QsIGRzdCwgIzMgKiA2NAotCWNweV90YWlsX3ZmcAlkNiwgMAotCXZzdHIJZDcsIFtkc3QsICM2NF0KLQl2bGRyCWQ3LCBbc3JjLCAjNjRdCi0JdnN0cglkMCwgW2RzdCwgIzY0ICsgOF0KLQl2bGRyCWQwLCBbc3JjLCAjNjQgKyA4XQotCXZzdHIJZDEsIFtkc3QsICM2NCArIDE2XQotCXZsZHIJZDEsIFtzcmMsICM2NCArIDE2XQotCXZzdHIJZDIsIFtkc3QsICM2NCArIDI0XQotCXZsZHIJZDIsIFtzcmMsICM2NCArIDI0XQotCXZzdHIJZDcsIFtkc3QsICM2NCArIDMyXQotCWFkZAlzcmMsIHNyYywgIzk2Ci0JdnN0cglkMCwgW2RzdCwgIzY0ICsgNDBdCi0JdnN0cglkMSwgW2RzdCwgIzY0ICsgNDhdCi0JdnN0cglkMiwgW2RzdCwgIzY0ICsgNTZdCi0JYWRkCWRzdCwgZHN0LCAjMTI4Ci0JYWRkCXRtcDIsIHRtcDIsICNwcmVmZXRjaF9saW5lcyAqIDY0Ci0JYgkuTGNweV9ib2R5X21lZGl1bQotI2Vsc2UKLQkvKiBMb25nIGNvcHkuICBVc2UgYW4gU01TIHN0eWxlIGxvb3AgdG8gbWF4aW1pemUgdGhlIEkvTwotCSAgIGJhbmR3aWR0aCBvZiB0aGUgY29yZS4gIFdlIGRvbid0IGhhdmUgZW5vdWdoIHNwYXJlIHJlZ2lzdGVycwotCSAgIHRvIHN5bnRoZXNpc2UgcHJlZmV0Y2hpbmcsIHNvIHVzZSBQTEQgb3BlcmF0aW9ucy4gICovCi0JLyogUHJlLWJpYXMgc3JjIGFuZCBkc3QuICAqLwotCXN1YglzcmMsIHNyYywgIzgKLQlzdWIJZHN0LCBkc3QsICM4Ci0JcGxkCVtzcmMsICM4XQotCXBsZAlbc3JjLCAjNzJdCi0Jc3Vicwl0bXAyLCB0bXAyLCAjNjQKLQlwbGQJW3NyYywgIzEzNl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjOF0KLQlzdHJkCUJfbCwgQl9oLCBbc3AsICM4XQotCWxkcmQJQl9sLCBCX2gsIFtzcmMsICMxNl0KLQlzdHJkCUNfbCwgQ19oLCBbc3AsICMxNl0KLQlsZHJkCUNfbCwgQ19oLCBbc3JjLCAjMjRdCi0Jc3RyZAlEX2wsIERfaCwgW3NwLCAjMjRdCi0JcGxkCVtzcmMsICMyMDBdCi0JbGRyZAlEX2wsIERfaCwgW3NyYywgIzMyXSEKLQliCTFmCi0JLnAyYWxpZ24JNgotMjoKLQlwbGQJW3NyYywgIzIzMl0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjNDBdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzQwXQotCXN0cmQJQl9sLCBCX2gsIFtkc3QsICM0OF0KLQlsZHJkCUJfbCwgQl9oLCBbc3JjLCAjNDhdCi0Jc3RyZAlDX2wsIENfaCwgW2RzdCwgIzU2XQotCWxkcmQJQ19sLCBDX2gsIFtzcmMsICM1Nl0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjNjRdIQotCWxkcmQJRF9sLCBEX2gsIFtzcmMsICM2NF0hCi0Jc3Vicwl0bXAyLCB0bXAyLCAjNjQKLTE6Ci0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzhdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzhdCi0Jc3RyZAlCX2wsIEJfaCwgW2RzdCwgIzE2XQotCWxkcmQJQl9sLCBCX2gsIFtzcmMsICMxNl0KLQlzdHJkCUNfbCwgQ19oLCBbZHN0LCAjMjRdCi0JbGRyZAlDX2wsIENfaCwgW3NyYywgIzI0XQotCXN0cmQJRF9sLCBEX2gsIFtkc3QsICMzMl0KLQlsZHJkCURfbCwgRF9oLCBbc3JjLCAjMzJdCi0JYmNzCTJiCi0JLyogU2F2ZSB0aGUgcmVtYWluaW5nIGJ5dGVzIGFuZCByZXN0b3JlIHRoZSBjYWxsZWUtc2F2ZWQgcmVncy4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzQwXQotCWFkZAlzcmMsIHNyYywgIzQwCi0Jc3RyZAlCX2wsIEJfaCwgW2RzdCwgIzQ4XQotCWxkcmQJQl9sLCBCX2gsIFtzcCwgIzhdCi0Jc3RyZAlDX2wsIENfaCwgW2RzdCwgIzU2XQotCWxkcmQJQ19sLCBDX2gsIFtzcCwgIzE2XQotCXN0cmQJRF9sLCBEX2gsIFtkc3QsICM2NF0KLQlsZHJkCURfbCwgRF9oLCBbc3AsICMyNF0KLQlhZGQJZHN0LCBkc3QsICM3MgotCXRzdAl0bXAyLCAjMHgzZgotCWJuZQkuTHRhaWw2M2FsaWduZWQKLQlsZHIJdG1wMiwgW3NwXSwgI0ZSQU1FX1NJWkUKLQlieAlscgotI2VuZGlmCi0KLS5MY3B5X25vdGFsaWduZWQ6Ci0JcGxkCVtzcmNdCi0JcGxkCVtzcmMsICM2NF0KLQkvKiBUaGVyZSdzIGF0IGxlYXN0IDY0IGJ5dGVzIHRvIGNvcHksIGJ1dCB0aGVyZSBpcyBubyBtdXR1YWwKLQkgICBhbGlnbm1lbnQuICAqLwotCS8qIEJyaW5nIERTVCB0byA2NC1iaXQgYWxpZ25tZW50LiAgKi8KLQlsc2xzCXRtcDIsIGRzdCwgIzI5Ci0JcGxkCVtzcmMsICMoMiAqIDY0KV0KLQliZXEJMWYKLQlyc2JzCXRtcDIsIHRtcDIsICMwCi0Jc3ViCWNvdW50LCBjb3VudCwgdG1wMiwgbHNyICMyOQotCWxkcm1pCXRtcDEsIFtzcmNdLCAjNAotCXN0cm1pCXRtcDEsIFtkc3RdLCAjNAotCWxzbHMJdG1wMiwgdG1wMiwgIzIKLQlsZHJibmUJdG1wMSwgW3NyY10sICMxCi0JbGRyaGNzCXRtcDIsIFtzcmNdLCAjMgotCXN0cmJuZQl0bXAxLCBbZHN0XSwgIzEKLQlzdHJoY3MJdG1wMiwgW2RzdF0sICMyCi0xOgotCXBsZAlbc3JjLCAjKDMgKiA2NCldCi0Jc3Vicwljb3VudCwgY291bnQsICM2NAotCWxkcm1pCXRtcDIsIFtzcF0sICNGUkFNRV9TSVpFCi0JYm1pCS5MdGFpbDYzdW5hbGlnbmVkCi0JcGxkCVtzcmMsICMoNCAqIDY0KV0KLQotI2lmZGVmIFVTRV9ORU9OCi0JdmxkMS44CXtkMC1kM30sIFtzcmNdIQotCXZsZDEuOAl7ZDQtZDd9LCBbc3JjXSEKLQlzdWJzCWNvdW50LCBjb3VudCwgIzY0Ci0JYm1pCTJmCi0xOgotCXBsZAlbc3JjLCAjKDQgKiA2NCldCi0JdnN0MS44CXtkMC1kM30sIFtBTElHTiAoZHN0LCA2NCldIQotCXZsZDEuOAl7ZDAtZDN9LCBbc3JjXSEKLQl2c3QxLjgJe2Q0LWQ3fSwgW0FMSUdOIChkc3QsIDY0KV0hCi0JdmxkMS44CXtkNC1kN30sIFtzcmNdIQotCXN1YnMJY291bnQsIGNvdW50LCAjNjQKLQlicGwJMWIKLTI6Ci0JdnN0MS44CXtkMC1kM30sIFtBTElHTiAoZHN0LCA2NCldIQotCXZzdDEuOAl7ZDQtZDd9LCBbQUxJR04gKGRzdCwgNjQpXSEKLQlhbmRzCWNvdW50LCBjb3VudCwgIzB4M2YKLSNlbHNlCi0JLyogVXNlIGFuIFNNUyBzdHlsZSBsb29wIHRvIG1heGltaXplIHRoZSBJL08gYmFuZHdpZHRoLiAgKi8KLQlzdWIJc3JjLCBzcmMsICM0Ci0Jc3ViCWRzdCwgZHN0LCAjOAotCXN1YnMJdG1wMiwgY291bnQsICM2NAkvKiBVc2UgdG1wMiBmb3IgY291bnQuICAqLwotCWxkcglBX2wsIFtzcmMsICM0XQotCWxkcglBX2gsIFtzcmMsICM4XQotCXN0cmQJQl9sLCBCX2gsIFtzcCwgIzhdCi0JbGRyCUJfbCwgW3NyYywgIzEyXQotCWxkcglCX2gsIFtzcmMsICMxNl0KLQlzdHJkCUNfbCwgQ19oLCBbc3AsICMxNl0KLQlsZHIJQ19sLCBbc3JjLCAjMjBdCi0JbGRyCUNfaCwgW3NyYywgIzI0XQotCXN0cmQJRF9sLCBEX2gsIFtzcCwgIzI0XQotCWxkcglEX2wsIFtzcmMsICMyOF0KLQlsZHIJRF9oLCBbc3JjLCAjMzJdIQotCWIJMWYKLQkucDJhbGlnbgk2Ci0yOgotCXBsZAlbc3JjLCAjKDUgKiA2NCkgLSAoMzIgLSA0KV0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjNDBdCi0JbGRyCUFfbCwgW3NyYywgIzM2XQotCWxkcglBX2gsIFtzcmMsICM0MF0KLQlzdHJkCUJfbCwgQl9oLCBbZHN0LCAjNDhdCi0JbGRyCUJfbCwgW3NyYywgIzQ0XQotCWxkcglCX2gsIFtzcmMsICM0OF0KLQlzdHJkCUNfbCwgQ19oLCBbZHN0LCAjNTZdCi0JbGRyCUNfbCwgW3NyYywgIzUyXQotCWxkcglDX2gsIFtzcmMsICM1Nl0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjNjRdIQotCWxkcglEX2wsIFtzcmMsICM2MF0KLQlsZHIJRF9oLCBbc3JjLCAjNjRdIQotCXN1YnMJdG1wMiwgdG1wMiwgIzY0Ci0xOgotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM4XQotCWxkcglBX2wsIFtzcmMsICM0XQotCWxkcglBX2gsIFtzcmMsICM4XQotCXN0cmQJQl9sLCBCX2gsIFtkc3QsICMxNl0KLQlsZHIJQl9sLCBbc3JjLCAjMTJdCi0JbGRyCUJfaCwgW3NyYywgIzE2XQotCXN0cmQJQ19sLCBDX2gsIFtkc3QsICMyNF0KLQlsZHIJQ19sLCBbc3JjLCAjMjBdCi0JbGRyCUNfaCwgW3NyYywgIzI0XQotCXN0cmQJRF9sLCBEX2gsIFtkc3QsICMzMl0KLQlsZHIJRF9sLCBbc3JjLCAjMjhdCi0JbGRyCURfaCwgW3NyYywgIzMyXQotCWJjcwkyYgotCi0JLyogU2F2ZSB0aGUgcmVtYWluaW5nIGJ5dGVzIGFuZCByZXN0b3JlIHRoZSBjYWxsZWUtc2F2ZWQgcmVncy4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzQwXQotCWFkZAlzcmMsIHNyYywgIzM2Ci0Jc3RyZAlCX2wsIEJfaCwgW2RzdCwgIzQ4XQotCWxkcmQJQl9sLCBCX2gsIFtzcCwgIzhdCi0Jc3RyZAlDX2wsIENfaCwgW2RzdCwgIzU2XQotCWxkcmQJQ19sLCBDX2gsIFtzcCwgIzE2XQotCXN0cmQJRF9sLCBEX2gsIFtkc3QsICM2NF0KLQlsZHJkCURfbCwgRF9oLCBbc3AsICMyNF0KLQlhZGQJZHN0LCBkc3QsICM3MgotCWFuZHMJY291bnQsIHRtcDIsICMweDNmCi0jZW5kaWYKLQlsZHIJdG1wMiwgW3NwXSwgI0ZSQU1FX1NJWkUKLQlibmUJLkx0YWlsNjN1bmFsaWduZWQKLQlieAlscgotRU5EKG1lbWNweSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NldGptcC5TIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvc2V0am1wLlMKaW5kZXggZWQ1OWQwNy4uODIyMGMwOCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9iaW9uaWMvc2V0am1wLlMKKysrIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvc2V0am1wLlMKQEAgLTEsNiArMSwzIEBACi0vKgkkT3BlbkJTRDogc2V0am1wLlMsdiAxLjIgMjAwNC8wMi8wMSAwNTo0MDo1MiBkcmFobiBFeHAgJAkqLwotLyoJJE5ldEJTRDogc2V0am1wLlMsdiAxLjUgMjAwMy8wNC8wNSAyMzowODo1MSBiamgyMSBFeHAgJAkqLwotCiAvKgogICogQ29weXJpZ2h0IChjKSAxOTk3IE1hcmsgQnJpbmljb21iZQogICogQ29weXJpZ2h0IChjKSAyMDEwIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdC4KQEAgLTM1LDExOSArMzIsMTQyIEBACiAgKi8KIAogI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9jcHUtZmVhdHVyZXMuaD4KIAotLyoKLSAqIEMgbGlicmFyeSAtLSBzZXRqbXAsIGxvbmdqbXAKLSAqCi0gKglsb25nam1wKGEsdikKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8KLSAqCXNldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgcmVzdG9yZWQuCi0gKi8KKy8vIEFjY29yZGluZyB0byB0aGUgQVJNIEFBUENTIGRvY3VtZW50LCB3ZSBvbmx5IG5lZWQgdG8gc2F2ZQorLy8gdGhlIGZvbGxvd2luZyByZWdpc3RlcnM6CisvLworLy8gIENvcmUgICByNC1yMTQKKy8vCisvLyAgVkZQICAgIGQ4LWQxNSAgKHNlZSBzZWN0aW9uIDUuMS4yLjEpCisvLworLy8gICAgICBSZWdpc3RlcnMgczE2LXMzMSAoZDgtZDE1LCBxNC1xNykgbXVzdCBiZSBwcmVzZXJ2ZWQgYWNyb3NzIHN1YnJvdXRpbmUKKy8vICAgICAgY2FsbHM7IHJlZ2lzdGVycyBzMC1zMTUgKGQwLWQ3LCBxMC1xMykgZG8gbm90IG5lZWQgdG8gYmUgcHJlc2VydmVkCisvLyAgICAgIChhbmQgY2FuIGJlIHVzZWQgZm9yIHBhc3NpbmcgYXJndW1lbnRzIG9yIHJldHVybmluZyByZXN1bHRzIGluIHN0YW5kYXJkCisvLyAgICAgIHByb2NlZHVyZS1jYWxsIHZhcmlhbnRzKS4gUmVnaXN0ZXJzIGQxNi1kMzEgKHE4LXExNSksIGlmIHByZXNlbnQsIGRvCisvLyAgICAgIG5vdCBuZWVkIHRvIGJlIHByZXNlcnZlZC4KKy8vCisvLyAgRlBTQ1IgIHNhdmVkIGJlY2F1c2UgZ2xpYmMgZG9lcy4KKworLy8gVGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBhIGptcF9idWYgaXMgdG90YWxseSBwcml2YXRlLgorLy8gQ3VycmVudCBsYXlvdXQgKG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSk6CisvLworLy8gd29yZCAgIG5hbWUgICAgICAgICBkZXNjcmlwdGlvbgorLy8gMCAgICAgIG1hZ2ljICAgICAgICBtYWdpYyBudW1iZXIKKy8vIDEgICAgICBzaWdtYXNrICAgICAgc2lnbmFsIG1hc2sgKG5vdCB1c2VkIHdpdGggX3NldGptcCAvIF9sb25nam1wKQorLy8gMiAgICAgIGZsb2F0X2Jhc2UgICBiYXNlIG9mIGZsb2F0IHJlZ2lzdGVycyAoZDggdG8gZDE1KQorLy8gMTggICAgIGZsb2F0X3N0YXRlICBmbG9hdGluZy1wb2ludCBzdGF0dXMgYW5kIGNvbnRyb2wgcmVnaXN0ZXIKKy8vIDE5ICAgICBjb3JlX2Jhc2UgICAgYmFzZSBvZiBjb3JlIHJlZ2lzdGVycyAocjQgdG8gcjE0KQorLy8gMzAgICAgIHJlc2VydmVkICAgICByZXNlcnZlZCBlbnRyaWVzIChyb29tIHRvIGdyb3cpCisvLyA2NAorLy8KKy8vIE5PVEU6IGZsb2F0X2Jhc2UgbXVzdCBiZSBhdCBhbiBldmVuIHdvcmQgaW5kZXgsIHNpbmNlIHRoZQorLy8gICAgICAgRlAgcmVnaXN0ZXJzIHdpbGwgYmUgbG9hZGVkL3N0b3JlZCB3aXRoIGluc3RydWN0aW9ucworLy8gICAgICAgdGhhdCBleHBlY3QgOC1ieXRlIGFsaWdubWVudC4KKworI2RlZmluZSBfSkJfU0lHRkxBRyAgICAgMAorI2RlZmluZSBfSkJfU0lHTUFTSyAgICAgKF9KQl9TSUdGTEFHKzEpCisjZGVmaW5lIF9KQl9GTE9BVF9CQVNFICAoX0pCX1NJR01BU0srMSkKKyNkZWZpbmUgX0pCX0ZMT0FUX1NUQVRFIChfSkJfRkxPQVRfQkFTRSArICgxNS04KzEpKjIpCisjZGVmaW5lIF9KQl9DT1JFX0JBU0UgICAoX0pCX0ZMT0FUX1NUQVRFKzEpCiAKIEVOVFJZKHNldGptcCkKLQkvKiBCbG9jayBhbGwgc2lnbmFscyBhbmQgcmV0cmlldmUgdGhlIG9sZCBzaWduYWwgbWFzayAqLwotCXN0bWZkCXNwISwge3IwLCByMTR9Ci0JLmNmaV9kZWZfY2ZhX29mZnNldCA4Ci0JLmNmaV9yZWxfb2Zmc2V0IHIwLCAwCi0JLmNmaV9yZWxfb2Zmc2V0IHIxNCwgNAotCW1vdglyMCwgIzB4MDAwMDAwMDAKLQotCWJsCVBJQ19TWU0oc2lnYmxvY2ssIFBMVCkKLQltb3YJcjEsIHIwCi0KLQlsZG1mZAlzcCEsIHtyMCwgcjE0fQotCS5jZmlfZGVmX2NmYV9vZmZzZXQgMAotCi0JLyogU3RvcmUgc2lnbmFsIG1hc2sgKi8KLQlzdHIJcjEsIFtyMCwgIyhfSkJfU0lHTUFTSyAqIDQpXQotCi0JbGRyCXIxLCAuTHNldGptcF9tYWdpYwotCXN0cglyMSwgW3IwLCAjKF9KQl9NQUdJQyAqIDQpXQotCi0JLyogU3RvcmUgY29yZSByZWdpc3RlcnMgKi8KLQlhZGQgICAgIHIxLCByMCwgIyhfSkJfQ09SRV9CQVNFICogNCkKLQlzdG1pYSAgIHIxLCB7cjQtcjE0fQotCi0jaWZkZWYgX19BUk1fSEFWRV9WRlAKLQkvKiBTdG9yZSBmbG9hdGluZy1wb2ludCByZWdpc3RlcnMgKi8KLQlhZGQgICAgIHIxLCByMCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQpCi0JdnN0bWlhICByMSwge2Q4LWQxNX0KLQkvKiBTdG9yZSBmbG9hdGluZy1wb2ludCBzdGF0ZSAqLwotCWZtcnggICAgcjEsIGZwc2NyCi0Jc3RyICAgICByMSwgW3IwLCAjKF9KQl9GTE9BVF9TVEFURSAqIDQpXQotI2VuZGlmICAvKiBfX0FSTV9IQVZFX1ZGUCAqLwotCi0JbW92CXIwLCAjMHgwMDAwMDAwMAotCWJ4ICAgICAgbHIKKyAgbW92IHIxLCAjMQorICBiIHNpZ3NldGptcAogRU5EKHNldGptcCkKIAotLkxzZXRqbXBfbWFnaWM6Ci0JLndvcmQJX0pCX01BR0lDX1NFVEpNUAorRU5UUlkoX3NldGptcCkKKyAgbW92IHIxLCAjMAorICBiIHNpZ3NldGptcAorRU5EKF9zZXRqbXApCiAKKy8vIGludCBzaWdzZXRqbXAoc2lnam1wX2J1ZiBlbnYsIGludCBzYXZlX3NpZ25hbF9tYXNrKTsKK0VOVFJZKHNpZ3NldGptcCkKKyAgLy8gUmVjb3JkIHdoZXRoZXIgb3Igbm90IHdlJ3JlIHNhdmluZyB0aGUgc2lnbmFsIG1hc2suCisgIHN0ciByMSwgW3IwLCAjKF9KQl9TSUdGTEFHICogNCldCiAKLUVOVFJZKGxvbmdqbXApCi0JbGRyCXIyLCAuTHNldGptcF9tYWdpYwotCWxkcglyMywgW3IwLCAjKF9KQl9NQUdJQyAqIDQpXQotCXRlcQlyMiwgcjMKLQlibmUJYm90Y2gKKyAgLy8gRG8gd2UgbmVlZCB0byBzYXZlIHRoZSBzaWduYWwgbWFzaz8KKyAgdGVxIHIxLCAjMAorICBiZXEgMWYKIAotCS8qIEZldGNoIHNpZ25hbCBtYXNrICovCi0JbGRyCXIyLCBbcjAsICMoX0pCX1NJR01BU0sgKiA0KV0KKyAgLy8gR2V0IGN1cnJlbnQgc2lnbmFsIG1hc2suCisgIHN0bWZkIHNwISwge3IwLCByMTR9CisgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAuY2ZpX3JlbF9vZmZzZXQgcjAsIDAKKyAgLmNmaV9yZWxfb2Zmc2V0IHIxNCwgNAorICBtb3YgcjAsICMwCisgIGJsIHNpZ2Jsb2NrCisgIG1vdiByMSwgcjAKKyAgbGRtZmQgc3AhLCB7cjAsIHIxNH0KKyAgLmNmaV9kZWZfY2ZhX29mZnNldCAwCiAKLQkvKiBTZXQgc2lnbmFsIG1hc2sgKi8KLQlzdG1mZAlzcCEsIHtyMCwgcjEsIHIxNH0KLQkuY2ZpX2RlZl9jZmFfb2Zmc2V0IDEyCi0JLmNmaV9yZWxfb2Zmc2V0IHIwLCAwCi0JLmNmaV9yZWxfb2Zmc2V0IHIxLCA0Ci0JLmNmaV9yZWxfb2Zmc2V0IHIxNCwgOAotCXN1YglzcCwgc3AsICM0CS8qIGFsaWduIHRoZSBzdGFjayAqLwotCS5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAvLyBTYXZlIHRoZSBzaWduYWwgbWFzay4KKyAgc3RyIHIxLCBbcjAsICMoX0pCX1NJR01BU0sgKiA0KV0KIAotCW1vdglyMCwgcjIKLQlibAlQSUNfU1lNKHNpZ3NldG1hc2ssIFBMVCkKKzE6CisgIC8vIFNhdmUgY29yZSByZWdpc3RlcnMuCisgIGFkZCByMSwgcjAsICMoX0pCX0NPUkVfQkFTRSAqIDQpCisgIHN0bWlhIHIxLCB7cjQtcjE0fQogCi0JYWRkCXNwLCBzcCwgIzQJLyogdW5hbGlnbiB0aGUgc3RhY2sgKi8KLQkuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00Ci0JbGRtZmQJc3AhLCB7cjAsIHIxLCByMTR9Ci0JLmNmaV9kZWZfY2ZhX29mZnNldCAwCisgIC8vIFNhdmUgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXJzLgorICBhZGQgcjEsIHIwLCAjKF9KQl9GTE9BVF9CQVNFICogNCkKKyAgdnN0bWlhICByMSwge2Q4LWQxNX0KIAotI2lmZGVmIF9fQVJNX0hBVkVfVkZQCi0JLyogUmVzdG9yZSBmbG9hdGluZy1wb2ludCByZWdpc3RlcnMgKi8KLQlhZGQgICAgIHIyLCByMCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQpCi0JdmxkbWlhICByMiwge2Q4LWQxNX0KLQkvKiBSZXN0b3JlIGZsb2F0aW5nLXBvaW50IHN0YXRlICovCi0JbGRyICAgICByMiwgW3IwLCAjKF9KQl9GTE9BVF9TVEFURSAqIDQpXQotCWZteHIgICAgZnBzY3IsIHIyCi0jZW5kaWYgLyogX19BUk1fSEFWRV9WRlAgKi8KKyAgLy8gU2F2ZSBmbG9hdGluZy1wb2ludCBzdGF0ZS4KKyAgZm1yeCByMSwgZnBzY3IKKyAgc3RyIHIxLCBbcjAsICMoX0pCX0ZMT0FUX1NUQVRFICogNCldCiAKLQkvKiBSZXN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMiwgcjAsICMoX0pCX0NPUkVfQkFTRSAqIDQpCi0JbGRtaWEgICByMiwge3I0LXIxNH0KKyAgbW92IHIwLCAjMAorICBieCBscgorRU5EKHNpZ3NldGptcCkKIAotCS8qIFZhbGlkYXRlIHNwIGFuZCByMTQgKi8KLQl0ZXEJc3AsICMwCi0JdGVxbmUJcjE0LCAjMAotCWJlcQlib3RjaAorLy8gdm9pZCBzaWdsb25nam1wKHNpZ2ptcF9idWYgZW52LCBpbnQgdmFsdWUpOworRU5UUlkoc2lnbG9uZ2ptcCkKKyAgLy8gRG8gd2UgbmVlZCB0byByZXN0b3JlIHRoZSBzaWduYWwgbWFzaz8KKyAgbGRyIHIyLCBbcjAsICMoX0pCX1NJR0ZMQUcgKiA0KV0KKyAgdGVxIHIyLCAjMAorICBiZXEgMWYKIAotCS8qIFNldCByZXR1cm4gdmFsdWUgKi8KKyAgLy8gUmVzdG9yZSB0aGUgc2lnbmFsIG1hc2suCisgIHN0bWZkIHNwISwge3IwLCByMSwgcjE0fQorICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDEyCisgIC5jZmlfcmVsX29mZnNldCByMCwgMAorICAuY2ZpX3JlbF9vZmZzZXQgcjEsIDQKKyAgLmNmaV9yZWxfb2Zmc2V0IHIxNCwgOAorICBzdWIgc3AsIHNwLCAjNCAvLyBBbGlnbiB0aGUgc3RhY2suCisgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAogCi0JbW92CXIwLCByMQotCXRlcQlyMCwgIzB4MDAwMDAwMDAKLQltb3ZlcQlyMCwgIzB4MDAwMDAwMDEKLSAgICAgICAgYnggICAgICBscgotI2lmZGVmIF9fQVJNXzI2X18KLQltb3YJcjE1LCByMTQKLSNlbHNlCi0JbW92CXIxNSwgcjE0Ci0jZW5kaWYKKyAgbGRyIHIwLCBbcjAsICMoX0pCX1NJR01BU0sgKiA0KV0KKyAgYmwgc2lnc2V0bWFzawogCi0JLyogdmFsaWRhdGlvbiBmYWlsZWQsIGRpZSBkaWUgZGllLiAqLwotYm90Y2g6Ci0JYmwJUElDX1NZTShsb25nam1wZXJyb3IsIFBMVCkKLQlibAlQSUNfU1lNKGFib3J0LCBQTFQpCi0JYgkuIC0gOAkJLyogQ2Fubm90IGdldCBoZXJlICovCi1FTkQobG9uZ2ptcCkKKyAgYWRkIHNwLCBzcCwgIzQgLy8gVW5hbGlnbiB0aGUgc3RhY2suCisgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgLTQKKyAgbGRtZmQgc3AhLCB7cjAsIHIxLCByMTR9CisgIC5jZmlfZGVmX2NmYV9vZmZzZXQgMAorCisxOgorICAvLyBSZXN0b3JlIGZsb2F0aW5nLXBvaW50IHJlZ2lzdGVycy4KKyAgYWRkIHIyLCByMCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQpCisgIHZsZG1pYSByMiwge2Q4LWQxNX0KKworICAvLyBSZXN0b3JlIGZsb2F0aW5nLXBvaW50IHN0YXRlLgorICBsZHIgcjIsIFtyMCwgIyhfSkJfRkxPQVRfU1RBVEUgKiA0KV0KKyAgZm14ciBmcHNjciwgcjIKKworICAvLyBSZXN0b3JlIGNvcmUgcmVnaXN0ZXJzLgorICBhZGQgcjIsIHIwLCAjKF9KQl9DT1JFX0JBU0UgKiA0KQorICBsZG1pYSByMiwge3I0LXIxNH0KKworICAvLyBWYWxpZGF0ZSBzcCBhbmQgcjE0LgorICB0ZXEgc3AsICMwCisgIHRlcW5lIHIxNCwgIzAKKyAgYmxlcSBsb25nam1wZXJyb3IKKworICAvLyBTZXQgcmV0dXJuIHZhbHVlLgorICBtb3YgcjAsIHIxCisgIHRlcSByMCwgIzAKKyAgbW92ZXEgcjAsICMxCisgIGJ4IGxyCitFTkQoc2lnbG9uZ2ptcCkKKworQUxJQVNfU1lNQk9MKGxvbmdqbXAsIHNpZ2xvbmdqbXApCitBTElBU19TWU1CT0woX2xvbmdqbXAsIHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9zaWdzZXRqbXAuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NpZ3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MDE2ZjUwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NpZ3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHNpZ3NldGptcC5TLHYgMS4yIDIwMDQvMDIvMDEgMDU6NDA6NTIgZHJhaG4gRXhwICQJKi8KLS8qCSROZXRCU0Q6IHNpZ3NldGptcC5TLHYgMS4zIDIwMDIvMDgvMTcgMTk6NTQ6MzAgdGhvcnBlaiBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTk3IE1hcmsgQnJpbmljb21iZQotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcyBzb2Z0d2FyZQotICogICAgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ2VtZW50OgotICoJVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSBNYXJrIEJyaW5pY29tYmUKLSAqIDQuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDAKLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+Ci0KLS8qCi0gKiBDIGxpYnJhcnkgLS0gc2lnc2V0am1wLCBzaWdsb25nam1wCi0gKgotICoJbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglzZXRqbXAoYSwgbSkKLSAqIGJ5IHJlc3RvcmluZyByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suCi0gKiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIHJlc3RvcmVkLgotICovCi0KLUVOVFJZKHNpZ3NldGptcCkKLQl0ZXEJcjEsICMwCi0JYmVxCVBJQ19TWU0oX3NldGptcCwgUExUKQotCWIJUElDX1NZTShzZXRqbXAsIFBMVCkKLUVORChzaWdzZXRqbXApCi0KLS5MX3NldGptcF9tYWdpYzoKLQkud29yZAlfSkJfTUFHSUNfX1NFVEpNUAotCi1FTlRSWShzaWdsb25nam1wKQotCWxkcglyMiwgLkxfc2V0am1wX21hZ2ljCi0JbGRyCXIzLCBbcjBdCi0JdGVxCXIyLCByMwotCWJlcQlQSUNfU1lNKF9sb25nam1wLCBQTFQpCi0JYglQSUNfU1lNKGxvbmdqbXAsIFBMVCkKLUVORChzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvc3RyY21wLlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9zdHJjbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmRiYTk0Mi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9zdHJjbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDMxNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChjKSAyMDExIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIENvcHlyaWdodCAoYykgMjAwOCBBUk0gTHRkCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gVGhlIG5hbWUgb2YgdGhlIGNvbXBhbnkgbWF5IG5vdCBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotICogICAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi0gKiAgICBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVJNIExURCBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKLSAqIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCi0gKiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgotICogSU4gTk8gRVZFTlQgU0hBTEwgQVJNIExURCBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVECi0gKiBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCi0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORwotICogTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8bWFjaGluZS9jcHUtZmVhdHVyZXMuaD4KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotCS50ZXh0Ci0KLSNpZmRlZiBfX0FSTUVCX18KLSNkZWZpbmUgU0hGVDJMU0IgbHNsCi0jZGVmaW5lIFNIRlQyTFNCRVEgbHNsZXEKLSNkZWZpbmUgU0hGVDJNU0IgbHNyCi0jZGVmaW5lIFNIRlQyTVNCRVEgbHNyZXEKLSNkZWZpbmUgTVNCIDB4MDAwMDAwZmYKLSNkZWZpbmUgTFNCIDB4ZmYwMDAwMDAKLSNlbHNlCi0jZGVmaW5lIFNIRlQyTFNCIGxzcgotI2RlZmluZSBTSEZUMkxTQkVRIGxzcmVxCi0jZGVmaW5lIFNIRlQyTVNCIGxzbAotI2RlZmluZSBTSEZUMk1TQkVRIGxzbGVxCi0jZGVmaW5lIE1TQiAweGZmMDAwMDAwCi0jZGVmaW5lIExTQiAweDAwMDAwMGZmCi0jZW5kaWYKLQotI2RlZmluZSBtYWdpYzEoUkVHKSBSRUcKLSNkZWZpbmUgbWFnaWMyKFJFRykgUkVHLCBsc2wgIzcKLQotRU5UUlkoc3RyY21wKQotCXBsZAlbcjAsICMwXQotCXBsZAlbcjEsICMwXQotCWVvcglyMiwgcjAsIHIxCi0JdHN0CXIyLCAjMwotCi0JLyogU3RyaW5ncyBub3QgYXQgc2FtZSBieXRlIG9mZnNldCBmcm9tIGEgd29yZCBib3VuZGFyeS4gICovCi0JYm5lCS5Mc3RyY21wX3VuYWxpZ25lZAotCWFuZHMJcjIsIHIwLCAjMwotCWJpYwlyMCwgcjAsICMzCi0JYmljCXIxLCByMSwgIzMKLQlsZHIJaXAsIFtyMF0sICM0Ci0JaXQJZXEKLQlsZHJlcQlyMywgW3IxXSwgIzQKLQliZXEJMWYKLQotCS8qIEFsdGhvdWdoIHMxIGFuZCBzMiBoYXZlIGlkZW50aWNhbCBpbml0aWFsIGFsaWdubWVudCwgdGhleSBhcmUKLQkgKiBub3QgY3VycmVudGx5IHdvcmQgYWxpZ25lZC4gIFJhdGhlciB0aGFuIGNvbXBhcmluZyBieXRlcywKLQkgKiBtYWtlIHN1cmUgdGhhdCBhbnkgYnl0ZXMgZmV0Y2hlZCBmcm9tIGJlZm9yZSB0aGUgYWRkcmVzc2VkCi0JICogYnl0ZXMgYXJlIGZvcmNlZCB0byAweGZmLiAgVGhlbiB0aGV5IHdpbGwgYWx3YXlzIGNvbXBhcmUKLQkgKiBlcXVhbC4KLQkgKi8KLQllb3IJcjIsIHIyLCAjMwotCWxzbAlyMiwgcjIsICMzCi0JbXZuCXIzLCAjTVNCCi0JU0hGVDJMU0IJcjIsIHIzLCByMgotCWxkcglyMywgW3IxXSwgIzQKLQlvcnIJaXAsIGlwLCByMgotCW9ycglyMywgcjMsIHIyCi0xOgotCS8qIExvYWQgdGhlICdtYWdpYycgY29uc3RhbnQgMHgwMTAxMDEwMS4gKi8KLQlzdHIJcjQsIFtzcCwgIy00XSEKLQltb3YJcjQsICMxCi0Jb3JyCXI0LCByNCwgcjQsIGxzbCAjOAotCW9ycglyNCwgcjQsIHI0LCBsc2wgIzE2Ci0JLnAyYWxpZ24JMgotNDoKLQlwbGQJW3IwLCAjOF0KLQlwbGQJW3IxLCAjOF0KLQlzdWIJcjIsIGlwLCBtYWdpYzEocjQpCi0JY21wCWlwLCByMwotCWl0dHR0CWVxCi0KLQkvKiBjaGVjayBmb3IgYW55IHplcm8gYnl0ZXMgaW4gZmlyc3Qgd29yZCAqLwotCWJpY2VxCXIyLCByMiwgaXAKLQl0c3RlcQlyMiwgbWFnaWMyKHI0KQotCWxkcmVxCWlwLCBbcjBdLCAjNAotCWxkcmVxCXIzLCBbcjFdLCAjNAotCWJlcQk0YgotMjoKLQkvKiBUaGVyZSdzIGEgemVybyBvciBhIGRpZmZlcmVudCBieXRlIGluIHRoZSB3b3JkICovCi0JU0hGVDJNU0IJcjAsIGlwLCAjMjQKLQlTSEZUMkxTQglpcCwgaXAsICM4Ci0JY21wCXIwLCAjMQotCWl0CWNzCi0JY21wY3MJcjAsIHIzLCBTSEZUMk1TQiAjMjQKLQlpdAllcQotCVNIRlQyTFNCRVEgcjMsIHIzLCAjOAotCWJlcQkyYgotCS8qIE9uIGEgYmlnLWVuZGlhbiBtYWNoaW5lLCByMCBjb250YWlucyB0aGUgZGVzaXJlZCBieXRlIGluIGJpdHMKLQkgKiAwLTc7IG9uIGEgbGl0dGxlLWVuZGlhbiBtYWNoaW5lIHRoZXkgYXJlIGluIGJpdHMgMjQtMzEuICBJbgotCSAqIGJvdGggY2FzZXMgdGhlIG90aGVyIGJpdHMgaW4gcjAgYXJlIGFsbCB6ZXJvLiAgRm9yIHIzIHRoZQotCSAqIGludGVyZXN0aW5nIGJ5dGUgaXMgYXQgdGhlIG90aGVyIGVuZCBvZiB0aGUgd29yZCwgYnV0IHRoZQotCSAqIG90aGVyIGJpdHMgYXJlIG5vdCBuZWNlc3NhcmlseSB6ZXJvLiAgV2UgbmVlZCBhIHNpZ25lZCByZXN1bHQKLQkgKiByZXByZXNlbnRpbmcgdGhlIGRpZmZlcm5lY2UgaW4gdGhlIHVuc2lnbmVkIGJ5dGVzLCBzbyBmb3IgdGhlCi0JICogbGl0dGxlLWVuZGlhbiBjYXNlIHdlIGNhbid0IGp1c3Qgc2hpZnQgdGhlIGludGVyZXN0aW5nIGJpdHMgdXAuCi0JICovCi0jaWZkZWYgX19BUk1FQl9fCi0Jc3ViCXIwLCByMCwgcjMsIGxzciAjMjQKLSNlbHNlCi0JYW5kCXIzLCByMywgIzI1NQotCS8qIE5vIFJTQiBpbnN0cnVjdGlvbiBpbiBUaHVtYjIgKi8KLSNpZmRlZiBfX3RodW1iMl9fCi0JbHNyCXIwLCByMCwgIzI0Ci0Jc3ViCXIwLCByMCwgcjMKLSNlbHNlCi0JcnNiCXIwLCByMywgcjAsIGxzciAjMjQKLSNlbmRpZgotI2VuZGlmCi0JbGRyCXI0LCBbc3BdLCAjNAotCWJ4CWxyCi0KLS5Mc3RyY21wX3VuYWxpZ25lZDoKLQl3cDEgLnJlcSByMAotCXdwMiAucmVxIHIxCi0JYjEgIC5yZXEgcjIKLQl3MSAgLnJlcSByNAotCXcyICAucmVxIHI1Ci0JdDEgIC5yZXEgaXAKLQlAIHIzIGlzIHNjcmF0Y2gKLQotCS8qIEZpcnN0IG9mIGFsbCwgY29tcGFyZSBieXRlcyB1bnRpbCB3cDEoc3AxKSBpcyB3b3JkLWFsaWduZWQuICovCi0xOgotCXRzdAl3cDEsICMzCi0JYmVxCTJmCi0JbGRyYglyMiwgW3dwMV0sICMxCi0JbGRyYglyMywgW3dwMl0sICMxCi0JY21wCXIyLCAjMQotCWl0CWNzCi0JY21wY3MJcjIsIHIzCi0JYmVxCTFiCi0Jc3ViCXIwLCByMiwgcjMKLQlieAlscgotCi0yOgotCXN0cglyNSwgW3NwLCAjLTRdIQotCXN0cglyNCwgW3NwLCAjLTRdIQotCW1vdgliMSwgIzEKLQlvcnIJYjEsIGIxLCBiMSwgbHNsICM4Ci0Jb3JyCWIxLCBiMSwgYjEsIGxzbCAjMTYKLQotCWFuZAl0MSwgd3AyLCAjMwotCWJpYwl3cDIsIHdwMiwgIzMKLQlsZHIJdzEsIFt3cDFdLCAjNAotCWxkcgl3MiwgW3dwMl0sICM0Ci0JY21wCXQxLCAjMgotCWJlcQkyZgotCWJoaQkzZgotCi0JLyogQ3JpdGljYWwgaW5uZXIgTG9vcDogQmxvY2sgd2l0aCAzIGJ5dGVzIGluaXRpYWwgb3ZlcmxhcCAqLwotCS5wMmFsaWduCTIKLTE6Ci0JYmljCXQxLCB3MSwgI01TQgotCWNtcAl0MSwgdzIsIFNIRlQyTFNCICM4Ci0Jc3ViCXIzLCB3MSwgYjEKLQliaWMJcjMsIHIzLCB3MQotCWJuZQk0ZgotCWFuZHMJcjMsIHIzLCBiMSwgbHNsICM3Ci0JaXQJZXEKLQlsZHJlcQl3MiwgW3dwMl0sICM0Ci0JYm5lCTVmCi0JZW9yCXQxLCB0MSwgdzEKLQljbXAJdDEsIHcyLCBTSEZUMk1TQiAjMjQKLQlibmUJNmYKLQlsZHIJdzEsIFt3cDFdLCAjNAotCWIJMWIKLTQ6Ci0JU0hGVDJMU0IJdzIsIHcyLCAjOAotCWIJOGYKLQotNToKLSNpZmRlZiBfX0FSTUVCX18KLQkvKiBUaGUgc3luZHJvbWUgdmFsdWUgbWF5IGNvbnRhaW4gZmFsc2Ugb25lcyBpZiB0aGUgc3RyaW5nIGVuZHMKLQkgKiB3aXRoIHRoZSBieXRlcyAweDAxIDB4MDAKLQkgKi8KLQl0c3QJdzEsICMweGZmMDAwMDAwCi0JaXR0CW5lCi0JdHN0bmUJdzEsICMweDAwZmYwMDAwCi0JdHN0bmUJdzEsICMweDAwMDBmZjAwCi0JYmVxCTdmCi0jZWxzZQotCWJpY3MJcjMsIHIzLCAjMHhmZjAwMDAwMAotCWJuZQk3ZgotI2VuZGlmCi0JbGRyYgl3MiwgW3dwMl0KLQlTSEZUMkxTQgl0MSwgdzEsICMyNAotI2lmZGVmIF9fQVJNRUJfXwotCWxzbAl3MiwgdzIsICMyNAotI2VuZGlmCi0JYgk4ZgotCi02OgotCVNIRlQyTFNCCXQxLCB3MSwgIzI0Ci0JYW5kCXcyLCB3MiwgI0xTQgotCWIJOGYKLQotCS8qIENyaXRpY2FsIGlubmVyIExvb3A6IEJsb2NrIHdpdGggMiBieXRlcyBpbml0aWFsIG92ZXJsYXAgKi8KLQkucDJhbGlnbgkyCi0yOgotCVNIRlQyTVNCCXQxLCB3MSwgIzE2Ci0Jc3ViCXIzLCB3MSwgYjEKLQlTSEZUMkxTQgl0MSwgdDEsICMxNgotCWJpYwlyMywgcjMsIHcxCi0JY21wCXQxLCB3MiwgU0hGVDJMU0IgIzE2Ci0JYm5lCTRmCi0JYW5kcwlyMywgcjMsIGIxLCBsc2wgIzcKLQlpdAllcQotCWxkcmVxCXcyLCBbd3AyXSwgIzQKLQlibmUJNWYKLQllb3IJdDEsIHQxLCB3MQotCWNtcAl0MSwgdzIsIFNIRlQyTVNCICMxNgotCWJuZQk2ZgotCWxkcgl3MSwgW3dwMV0sICM0Ci0JYgkyYgotCi01OgotI2lmZGVmIF9fQVJNRUJfXwotCS8qIFRoZSBzeW5kcm9tZSB2YWx1ZSBtYXkgY29udGFpbiBmYWxzZSBvbmVzIGlmIHRoZSBzdHJpbmcgZW5kcwotCSAqIHdpdGggdGhlIGJ5dGVzIDB4MDEgMHgwMAotCSAqLwotCXRzdAl3MSwgIzB4ZmYwMDAwMDAKLQlpdAluZQotCXRzdG5lCXcxLCAjMHgwMGZmMDAwMAotCWJlcQk3ZgotI2Vsc2UKLQlsc2xzCXIzLCByMywgIzE2Ci0JYm5lCTdmCi0jZW5kaWYKLQlsZHJoCXcyLCBbd3AyXQotCVNIRlQyTFNCCXQxLCB3MSwgIzE2Ci0jaWZkZWYgX19BUk1FQl9fCi0JbHNsCXcyLCB3MiwgIzE2Ci0jZW5kaWYKLQliCThmCi0KLTY6Ci0JU0hGVDJNU0IJdzIsIHcyLCAjMTYKLQlTSEZUMkxTQgl0MSwgdzEsICMxNgotNDoKLQlTSEZUMkxTQgl3MiwgdzIsICMxNgotCWIJOGYKLQotCS8qIENyaXRpY2FsIGlubmVyIExvb3A6IEJsb2NrIHdpdGggMSBieXRlIGluaXRpYWwgb3ZlcmxhcCAqLwotCS5wMmFsaWduCTIKLTM6Ci0JYW5kCXQxLCB3MSwgI0xTQgotCWNtcAl0MSwgdzIsIFNIRlQyTFNCICMyNAotCXN1YglyMywgdzEsIGIxCi0JYmljCXIzLCByMywgdzEKLQlibmUJNGYKLQlhbmRzCXIzLCByMywgYjEsIGxzbCAjNwotCWl0CWVxCi0JbGRyZXEJdzIsIFt3cDJdLCAjNAotCWJuZQk1ZgotCWVvcgl0MSwgdDEsIHcxCi0JY21wCXQxLCB3MiwgU0hGVDJNU0IgIzgKLQlibmUJNmYKLQlsZHIJdzEsIFt3cDFdLCAjNAotCWIJM2IKLTQ6Ci0JU0hGVDJMU0IJdzIsIHcyLCAjMjQKLQliCThmCi01OgotCS8qIFRoZSBzeW5kcm9tZSB2YWx1ZSBtYXkgY29udGFpbiBmYWxzZSBvbmVzIGlmIHRoZSBzdHJpbmcgZW5kcwotCSAqIHdpdGggdGhlIGJ5dGVzIDB4MDEgMHgwMAotCSAqLwotCXRzdAl3MSwgI0xTQgotCWJlcQk3ZgotCWxkcgl3MiwgW3dwMl0sICM0Ci02OgotCVNIRlQyTFNCCXQxLCB3MSwgIzgKLQliaWMJdzIsIHcyLCAjTVNCCi0JYgk4ZgotNzoKLQltb3YJcjAsICMwCi0JbGRyCXI0LCBbc3BdLCAjNAotCWxkcglyNSwgW3NwXSwgIzQKLQlieAlscgotCi04OgotCWFuZAlyMiwgdDEsICNMU0IKLQlhbmQJcjAsIHcyLCAjTFNCCi0JY21wCXIwLCAjMQotCWl0CWNzCi0JY21wY3MJcjAsIHIyCi0JaXR0CWVxCi0JU0hGVDJMU0JFUQl0MSwgdDEsICM4Ci0JU0hGVDJMU0JFUQl3MiwgdzIsICM4Ci0JYmVxCThiCi0Jc3ViCXIwLCByMiwgcjAKLQlsZHIJcjQsIFtzcF0sICM0Ci0JbGRyCXI1LCBbc3BdLCAjNAotCWJ4CWxyCi1FTkQoc3RyY21wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTE1L2NvcnRleC1hMTUubWsgYi9saWJjL2FyY2gtYXJtL2NvcnRleC1hMTUvY29ydGV4LWExNS5tawppbmRleCBmMWFiZTMyLi42ZmEzMjcwIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2NvcnRleC1hMTUvY29ydGV4LWExNS5taworKysgYi9saWJjL2FyY2gtYXJtL2NvcnRleC1hMTUvY29ydGV4LWExNS5tawpAQCAtOCw0ICs4LDkgQEAKICAgICBhcmNoLWFybS9jb3J0ZXgtYTE1L2Jpb25pYy9zdHJjcHkuUyBcCiAgICAgYXJjaC1hcm0vY29ydGV4LWExNS9iaW9uaWMvX19zdHJjcHlfY2hrLlMgXAogICAgIGFyY2gtYXJtL2NvcnRleC1hMTUvYmlvbmljL3N0cmxlbi5TIFwKLSAgICBiaW9uaWMvbWVtbW92ZS5jIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvbWVtY21wLlMgXAorCitsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbW1vdmUuUyBcCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9jb3J0ZXgtYTkubWsgYi9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9jb3J0ZXgtYTkubWsKaW5kZXggYzgyZGIzYi4uN2IzOGRlMSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTkvY29ydGV4LWE5Lm1rCisrKyBiL2xpYmMvYXJjaC1hcm0vY29ydGV4LWE5L2NvcnRleC1hOS5tawpAQCAtOCw0ICs4LDkgQEAKICAgICBhcmNoLWFybS9jb3J0ZXgtYTkvYmlvbmljL3N0cmNweS5TIFwKICAgICBhcmNoLWFybS9jb3J0ZXgtYTkvYmlvbmljL19fc3RyY3B5X2Noay5TIFwKICAgICBhcmNoLWFybS9jb3J0ZXgtYTkvYmlvbmljL3N0cmxlbi5TIFwKLSAgICBiaW9uaWMvbWVtbW92ZS5jIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvbWVtY21wLlMgXAorCitsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbW1vdmUuUyBcCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtc2V0LlMgYi9saWJjL2FyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtc2V0LlMKaW5kZXggYmYzZDlhZC4uZDc3YzI0NCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbXNldC5TCisrKyBiL2xpYmMvYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1zZXQuUwpAQCAtMzcsNiArMzcsNyBAQAogICAgICAgICAgKiBtZW1zZXQoKSByZXR1cm5zIGl0cyBmaXJzdCBhcmd1bWVudC4KICAgICAgICAgICovCiAKKyAgICAgICAgLmNwdSAgICAgICAgY29ydGV4LWExNQogICAgICAgICAuZnB1ICAgICAgICBuZW9uCiAgICAgICAgIC5zeW50YXggICAgIHVuaWZpZWQKIApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9kZW52ZXIvZGVudmVyLm1rIGIvbGliYy9hcmNoLWFybS9kZW52ZXIvZGVudmVyLm1rCmluZGV4IDBiYzUyYTIuLjVmZGRmOTUgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vZGVudmVyL2RlbnZlci5taworKysgYi9saWJjL2FyY2gtYXJtL2RlbnZlci9kZW52ZXIubWsKQEAgLTEsNCArMSw1IEBACiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1jbXAuUyBcCiAgICAgYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1jcHkuUyBcCiAgICAgYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1tb3ZlLlMgXAogICAgIGFyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtc2V0LlMgXApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvbWVtY21wLlMgYi9saWJjL2FyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNtcC5TCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBsaWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jbXAuUwpyZW5hbWUgdG8gbGliYy9hcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1jbXAuUwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9nZW5lcmljL2dlbmVyaWMubWsgYi9saWJjL2FyY2gtYXJtL2dlbmVyaWMvZ2VuZXJpYy5tawppbmRleCA5NWJlODY3Li5lNDlkNmQyIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2dlbmVyaWMvZ2VuZXJpYy5taworKysgYi9saWJjL2FyY2gtYXJtL2dlbmVyaWMvZ2VuZXJpYy5tawpAQCAtMSwxMSArMSwxNCBAQAogbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvbWVtY21wLlMgXAogICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNweS5TIFwKICAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1zZXQuUyBcCiAgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvc3RyY21wLlMgXAogICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL3N0cmNweS5TIFwKICAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9zdHJsZW4uYyBcCi0gICAgYmlvbmljL21lbW1vdmUuYyBcCiAgICAgYmlvbmljL19fc3RyY2F0X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNweV9jaGsuY3BwIFwKKworbGliY19vcGVuYnNkX3NyY19maWxlc19hcm0gKz0gXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbW1vdmUuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RwY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmNhdC5jIFwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2FzbS5oIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvYXNtLmgKaW5kZXggNzk1NGYwNS4uNzBkYmU2NyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvYXNtLmgKKysrIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvYXNtLmgKQEAgLTM4LDkgKzM4LDcgQEAKICNpZm5kZWYgX0FSTTMyX0FTTV9IXwogI2RlZmluZSBfQVJNMzJfQVNNX0hfCiAKLSNpZm5kZWYgX0FMSUdOX1RFWFQKLSMgZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAwCi0jZW5kaWYKKyNkZWZpbmUgX19iaW9uaWNfYXNtX2FsaWduIDAKIAogI3VuZGVmIF9fYmlvbmljX2FzbV9jdXN0b21fZW50cnkKICN1bmRlZiBfX2Jpb25pY19hc21fY3VzdG9tX2VuZApAQCAtNTAsMTAgKzQ4LDQgQEAKICN1bmRlZiBfX2Jpb25pY19hc21fZnVuY3Rpb25fdHlwZQogI2RlZmluZSBfX2Jpb25pY19hc21fZnVuY3Rpb25fdHlwZSAjZnVuY3Rpb24KIAotI2lmIGRlZmluZWQoX19FTEZfXykgJiYgZGVmaW5lZChQSUMpCi0jZGVmaW5lIFBJQ19TWU0oeCx5KSB4ICMjICggIyMgeSAjIyApCi0jZWxzZQotI2RlZmluZSBQSUNfU1lNKHgseSkgeAotI2VuZGlmCi0KICNlbmRpZiAvKiAhX0FSTV9BU01fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2NwdS1mZWF0dXJlcy5oIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvY3B1LWZlYXR1cmVzLmgKaW5kZXggZmM1YThmZC4uZmM4YzgwZCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvY3B1LWZlYXR1cmVzLmgKKysrIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvY3B1LWZlYXR1cmVzLmgKQEAgLTI4LDE0ICsyOCw2IEBACiAjaWZuZGVmIF9BUk1fTUFDSElORV9DUFVfRkVBVFVSRVNfSAogI2RlZmluZSBfQVJNX01BQ0hJTkVfQ1BVX0ZFQVRVUkVTX0gKIAotLyogVGhlIHB1cnBvc2Ugb2YgdGhpcyBmaWxlIGlzIHRvIGRlZmluZSBzZXZlcmFsIG1hY3JvcyBjb3JyZXNwb25kaW5nCi0gKiB0byBDUFUgZmVhdHVyZXMgdGhhdCBtYXkgb3IgbWF5IG5vdCBiZSBhdmFpbGFibGUgYXQgYnVpbGQgdGltZSBvbgotICogb24gdGhlIHRhcmdldCBDUFUuCi0gKgotICogVGhpcyBpcyBkb25lIHRvIGFic3RyYWN0IHVzIGZyb20gdGhlIHZhcmlvdXMgQVJNIEFyY2hpdGVjdHVyZQotICogcXVpcmtzIGFuZCBhbHBoYWJldCBzb3VwLgotICovCi0KIC8qIF9fQVJNX0FSQ0hfXyBpcyBhIG51bWJlciBjb3JyZXNwb25kaW5nIHRvIHRoZSBBUk0gcmV2aXNpb24KICAqIHdlJ3JlIGdvaW5nIHRvIHN1cHBvcnQuIE91ciB0b29sY2hhaW4gZG9lc24ndCBkZWZpbmUgX19BUk1fQVJDSF9fCiAgKiBzbyB0cnkgdG8gZ3Vlc3MgaXQuCkBAIC01MywzMSArNDUsNCBAQAogIyAgZW5kaWYKICNlbmRpZgogCi0vKiBkZWZpbmUgX19BUk1fSEFWRV9IQUxGV09SRF9NVUxUSVBMWSB3aGVuIGhhbGYtd29yZCBtdWx0aXBseSBpbnN0cnVjdGlvbnMKLSAqIHRoaXMgbWVhbnMgdmFyaWFudHMgb2Y6IHNtdWwsIHNtdWx3LCBzbWxhLCBzbWxhdywgc21sYWwKLSAqLwotI2RlZmluZSAgX19BUk1fSEFWRV9IQUxGV09SRF9NVUxUSVBMWSAgMQotCi0vKiBkZWZpbmUgX19BUk1fSEFWRV9MRFJFWEQgZm9yIEFSTXY3IGFyY2hpdGVjdHVyZQotICogKGFsc28gcHJlc2VudCBpbiBBUk12NkssIGJ1dCBub3QgaW1wbGVtZW50ZWQgaW4gQVJNdjctTSwgbmVpdGhlciBvZiB3aGljaAotICogd2UgY2FyZSBhYm91dCkKLSAqLwotI2lmIF9fQVJNX0FSQ0hfXyA+PSA3Ci0jICBkZWZpbmUgX19BUk1fSEFWRV9MRFJFWEQKLSNlbmRpZgotCi0vKiBkZWZpbmUgX0FSTV9IQVZFX1ZGUCBpZiB3ZSBoYXZlIFZGUHYzCi0gKi8KLSNpZiBfX0FSTV9BUkNIX18gPj0gNyAmJiBkZWZpbmVkIF9fVkZQX0ZQX18KLSMgIGRlZmluZSBfX0FSTV9IQVZFX1ZGUAotI2VuZGlmCi0KLS8qIGRlZmluZSBfQVJNX0hBVkVfTkVPTiBmb3IgQVJNdjcgYXJjaGl0ZWN0dXJlIGlmIHdlIHN1cHBvcnQgdGhlCi0gKiBOZW9uIFNJTUQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuIFRoaXMgYWxzbyBpbXBsaWVzCi0gKiB0aGF0IFZGUHYzLUQzMiBpcyBzdXBwb3J0ZWQuCi0gKi8KLSNpZiBfX0FSTV9BUkNIX18gPj0gNyAmJiBkZWZpbmVkIF9fQVJNX05FT05fXwotIyAgZGVmaW5lIF9fQVJNX0hBVkVfTkVPTgotI2VuZGlmCi0KICNlbmRpZiAvKiBfQVJNX01BQ0hJTkVfQ1BVX0ZFQVRVUkVTX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmggYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCmluZGV4IDk3ZDg0MzQuLjU0MmY2MzggMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKKysrIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZWxmX21hY2hkZXAuaApAQCAtMTAyLDYgKzEwMiw4IEBACiAKIC8qIDExMi0xMjcgYXJlIHJlc2VydmVkIGZvciBwcml2YXRlIGV4cGVyaW1lbnRzLiAqLwogCisjZGVmaW5lIFJfQVJNX0lSRUxBVElWRSAgIDE2MAorCiAjZGVmaW5lIFJfQVJNX1JYUEMyNQkJMjQ5CiAjZGVmaW5lIFJfQVJNX1JTQlJFTDMyCQkyNTAKICNkZWZpbmUgUl9BUk1fVEhNX1JQQzIyCQkyNTEKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhkOTcyM2QuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3OSArMCwwIEBACi0vKgkkT3BlbkJTRDogZW5kaWFuLmgsdiAxLjMgMjAwNS8xMi8xMyAwMDozNToyMyBtaWxsZXJ0IEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfQVJNX0VORElBTl9IXwotI2RlZmluZSBfQVJNX0VORElBTl9IXwotCi0jaWZkZWYgX19HTlVDX18KLQotLyogQWNjb3JkaW5nIHRvIFJlYWxWaWV3IEFzc2VtYmxlciBVc2VyJ3MgR3VpZGUsIFJFViBhbmQgUkVWMTYgYXJlIGF2YWlsYWJsZQotICogaW4gVGh1bWIgY29kZSBhbmQgMTYtYml0IGluc3RydWN0aW9ucyB3aGVuIHVzZWQgaW4gVGh1bWItMiBjb2RlLgotICoKLSAqIFJFViBSZCwgUm0KLSAqICAgUmQgYW5kIFJtIG11c3QgYm90aCBiZSBMbyByZWdpc3RlcnMuCi0gKgotICogUkVWMTYgUmQsIFJtCi0gKiAgIFJkIGFuZCBSbSBtdXN0IGJvdGggYmUgTG8gcmVnaXN0ZXJzLgotICoKLSAqIFRoZSArbCBjb25zdHJhaW50IHRha2VzIGNhcmUgb2YgdGhpcyB3aXRob3V0IGNvbnN0cmFpbmluZyB1cyBpbiBBUk0gbW9kZS4KLSAqLwotI2RlZmluZSBfX3N3YXAxNm1kKHgpICh7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICByZWdpc3RlciB1X2ludDE2X3QgX3ggPSAoeCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oInJldjE2ICUwLCAlMCIgOiAiK2wiIChfeCkpOyAgICAgICAgICAgXAotICAgIF94OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLX0pCi0KLSNkZWZpbmUgX19zd2FwMzJtZCh4KSAoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgcmVnaXN0ZXIgdV9pbnQzMl90IF94ID0gKHgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJyZXYgJTAsICUwIiA6ICIrbCIgKF94KSk7ICAgICAgICAgICAgIFwKLSAgICBfeDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi19KQotCi0jZGVmaW5lIF9fc3dhcDY0bWQoeCkgKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIHVfaW50NjRfdCBfc3dhcDY0bWRfeCA9ICh4KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAodV9pbnQ2NF90KSBfX3N3YXAzMm1kKF9zd2FwNjRtZF94ID4+IDMyKSB8ICAgICAgICAgICAgICAgICBcCi0gICAgICAgICh1X2ludDY0X3QpIF9fc3dhcDMybWQoX3N3YXA2NG1kX3ggJiAweGZmZmZmZmZmKSA8PCAzMjsgXAotfSkKLQotLyogVGVsbCBzeXMvZW5kaWFuLmggd2UgaGF2ZSBNRCB2YXJpYW50cyBvZiB0aGUgc3dhcCBtYWNyb3MuICAqLwotI2RlZmluZSBNRF9TV0FQCi0KLSNlbmRpZiAgLyogX19HTlVDX18gKi8KLQotI2lmIGRlZmluZWQoX19BUk1FQl9fKQotI2RlZmluZSBfQllURV9PUkRFUiBfQklHX0VORElBTgotI2Vsc2UKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KLSNlbmRpZgotI2RlZmluZSBfX1NUUklDVF9BTElHTk1FTlQKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+Ci0KLSNlbmRpZiAgLyogIV9BUk1fRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9leGVjLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIyN2IyMDcuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCisrKyAvZGV2L251bGwKQEAgLTEsNTAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4ZWMuaCx2IDEuOSAyMDAzLzA0LzE3IDAzOjQyOjE0IGRyYWhuIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBleGVjLmgsdiAxLjYgMTk5NC8xMC8yNyAwNDoxNjowNSBjZ2QgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5MyBDaHJpc3RvcGhlciBHLiBEZW1ldHJpb3UKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAqICAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKLSAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKLSAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCi0gKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgX0FSTV9FWEVDX0hfCi0jZGVmaW5lIF9BUk1fRVhFQ19IXwotCi0jZGVmaW5lIF9fTERQR1NaCTQwOTYKLQotI2RlZmluZSBOQVRJVkVfRVhFQ19FTEYKLQotI2RlZmluZSBBUkNIX0VMRlNJWkUJCTMyCi0KLSNkZWZpbmUgRUxGX1RBUkdfQ0xBU1MJCUVMRkNMQVNTMzIKLSNkZWZpbmUgRUxGX1RBUkdfREFUQQkJRUxGREFUQTJMU0IKLSNkZWZpbmUgRUxGX1RBUkdfTUFDSAkJRU1fQVJNCi0KLSNkZWZpbmUgX05MSVNUX0RPX0FPVVQKLSNkZWZpbmUgX05MSVNUX0RPX0VMRgotCi0jZGVmaW5lIF9LRVJOX0RPX0FPVVQKLSNkZWZpbmUgX0tFUk5fRE9fRUxGCi0KLSNlbmRpZiAgLyogX0FSTV9FWEVDX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaCBiL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCmluZGV4IDA5NDEyMDIuLmNjOWMzNDcgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCisrKyBiL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCkBAIC0yNiwxMCArMjYsNiBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotLyoKLSAqIG1hY2hpbmUvc2V0am1wLmg6IG1hY2hpbmUgZGVwZW5kZW50IHNldGptcC1yZWxhdGVkIGluZm9ybWF0aW9uLgotICovCi0KIC8qIF9KQkxFTiBpcyB0aGUgc2l6ZSBvZiBhIGptcF9idWYgaW4gbG9uZ3MuCiAgKiBEbyBub3QgbW9kaWZ5IHRoaXMgdmFsdWUgb3IgeW91IHdpbGwgYnJlYWsgdGhlIEFCSSAhCiAgKgpAQCAtMzcsNDYgKzMzLDMgQEAKICAqIHRoYXQgd2FzIHJlcGxhY2VkIGJ5IHRoaXMgb25lLgogICovCiAjZGVmaW5lIF9KQkxFTiAgNjQKLQotLyogQWNjb3JkaW5nIHRvIHRoZSBBUk0gQUFQQ1MgZG9jdW1lbnQsIHdlIG9ubHkgbmVlZCB0byBzYXZlCi0gKiB0aGUgZm9sbG93aW5nIHJlZ2lzdGVyczoKLSAqCi0gKiAgQ29yZSAgIHI0LXIxNAotICoKLSAqICBWRlAgICAgZDgtZDE1ICAoc2VlIHNlY3Rpb24gNS4xLjIuMSkKLSAqCi0gKiAgICAgIFJlZ2lzdGVycyBzMTYtczMxIChkOC1kMTUsIHE0LXE3KSBtdXN0IGJlIHByZXNlcnZlZCBhY3Jvc3Mgc3Vicm91dGluZQotICogICAgICBjYWxsczsgcmVnaXN0ZXJzIHMwLXMxNSAoZDAtZDcsIHEwLXEzKSBkbyBub3QgbmVlZCB0byBiZSBwcmVzZXJ2ZWQKLSAqICAgICAgKGFuZCBjYW4gYmUgdXNlZCBmb3IgcGFzc2luZyBhcmd1bWVudHMgb3IgcmV0dXJuaW5nIHJlc3VsdHMgaW4gc3RhbmRhcmQKLSAqICAgICAgcHJvY2VkdXJlLWNhbGwgdmFyaWFudHMpLiBSZWdpc3RlcnMgZDE2LWQzMSAocTgtcTE1KSwgaWYgcHJlc2VudCwgZG8KLSAqICAgICAgbm90IG5lZWQgdG8gYmUgcHJlc2VydmVkLgotICoKLSAqICBGUFNDUiAgc2F2ZWQgYmVjYXVzZSBHTGliYyBkb2VzIHNhdmVzIGl0IHRvby4KLSAqCi0gKi8KLQotLyogVGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBhIGptcF9idWYgaXMgdG90YWxseSBwcml2YXRlLgotICogQ3VycmVudCBsYXlvdXQgKG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSk6Ci0gKgotICogd29yZCAgIG5hbWUgICAgICAgICBkZXNjcmlwdGlvbgotICogMCAgICAgIG1hZ2ljICAgICAgICBtYWdpYyBudW1iZXIKLSAqIDEgICAgICBzaWdtYXNrICAgICAgc2lnbmFsIG1hc2sgKG5vdCB1c2VkIHdpdGggX3NldGptcCAvIF9sb25nam1wKQotICogMiAgICAgIGZsb2F0X2Jhc2UgICBiYXNlIG9mIGZsb2F0IHJlZ2lzdGVycyAoZDggdG8gZDE1KQotICogMTggICAgIGZsb2F0X3N0YXRlICBmbG9hdGluZy1wb2ludCBzdGF0dXMgYW5kIGNvbnRyb2wgcmVnaXN0ZXIKLSAqIDE5ICAgICBjb3JlX2Jhc2UgICAgYmFzZSBvZiBjb3JlIHJlZ2lzdGVycyAocjQgdG8gcjE0KQotICogMzAgICAgIHJlc2VydmVkICAgICByZXNlcnZlZCBlbnRyaWVzIChyb29tIHRvIGdyb3cpCi0gKiA2NAotICoKLSAqIE5PVEU6IGZsb2F0X2Jhc2UgbXVzdCBiZSBhdCBhbiBldmVuIHdvcmQgaW5kZXgsIHNpbmNlIHRoZQotICogICAgICAgRlAgcmVnaXN0ZXJzIHdpbGwgYmUgbG9hZGVkL3N0b3JlZCB3aXRoIGluc3RydWN0aW9ucwotICogICAgICAgdGhhdCBleHBlY3QgOC1ieXRlIGFsaWdubWVudC4KLSAqLwotCi0jZGVmaW5lIF9KQl9NQUdJQyAgICAgICAwCi0jZGVmaW5lIF9KQl9TSUdNQVNLICAgICAoX0pCX01BR0lDKzEpCi0jZGVmaW5lIF9KQl9GTE9BVF9CQVNFICAoX0pCX1NJR01BU0srMSkKLSNkZWZpbmUgX0pCX0ZMT0FUX1NUQVRFIChfSkJfRkxPQVRfQkFTRSArICgxNS04KzEpKjIpCi0jZGVmaW5lIF9KQl9DT1JFX0JBU0UgICAoX0pCX0ZMT0FUX1NUQVRFKzEpCi0KLSNkZWZpbmUgX0pCX01BR0lDX19TRVRKTVAJMHg0Mjc4ZjUwMAotI2RlZmluZSBfSkJfTUFHSUNfU0VUSk1QCTB4NDI3OGY1MDEKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0va3JhaXQva3JhaXQubWsgYi9saWJjL2FyY2gtYXJtL2tyYWl0L2tyYWl0Lm1rCmluZGV4IDFiYjdiMGEuLjg4YjRkNjYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0va3JhaXQva3JhaXQubWsKKysrIGIvbGliYy9hcmNoLWFybS9rcmFpdC9rcmFpdC5tawpAQCAtMTEsNCArMTEsOSBAQAogICAgIGFyY2gtYXJtL2NvcnRleC1hMTUvYmlvbmljL3N0cmNhdC5TIFwKICAgICBhcmNoLWFybS9jb3J0ZXgtYTE1L2Jpb25pYy9zdHJjcHkuUyBcCiAgICAgYXJjaC1hcm0vY29ydGV4LWExNS9iaW9uaWMvc3RybGVuLlMgXAotICAgIGJpb25pYy9tZW1tb3ZlLmMgXAorCitsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1jbXAuUyBcCisKK2xpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAorICAgIGFyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtbW92ZS5TIFwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYjhhMjMwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19jbG9zZS5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fY2xvc2UpCisgICAgbW92ICAgICBpcCwgcjcKKyAgICBsZHIgICAgIHI3LCA9X19OUl9jbG9zZQorICAgIHN3aSAgICAgIzAKKyAgICBtb3YgICAgIHI3LCBpcAorICAgIGNtbiAgICAgcjAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBieGxzICAgIGxyCisgICAgbmVnICAgICByMCwgcjAKKyAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCitFTkQoX19fY2xvc2UpCisuaGlkZGVuIF9fX2Nsb3NlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZDA5Y2Y3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZhY2Nlc3NhdCkKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX2ZhY2Nlc3NhdAorICAgIHN3aSAgICAgIzAKKyAgICBtb3YgICAgIHI3LCBpcAorICAgIGNtbiAgICAgcjAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBieGxzICAgIGxyCisgICAgbmVnICAgICByMCwgcjAKKyAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCitFTkQoX19fZmFjY2Vzc2F0KQorLmhpZGRlbiBfX19mYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fZmNobW9kLlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2ZGE0ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZjaG1vZC5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kKQorICAgIG1vdiAgICAgaXAsIHI3CisgICAgbGRyICAgICByNywgPV9fTlJfZmNobW9kCisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChfX19mY2htb2QpCisuaGlkZGVuIF9fX2ZjaG1vZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxYmJkYTUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2RhdCkKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX2ZjaG1vZGF0CisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChfX19mY2htb2RhdCkKKy5oaWRkZW4gX19fZmNobW9kYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTdmZmM0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCkBAIC0wLDAgKzEsMTQgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19jbG9ja19uYW5vc2xlZXApCisgICAgbW92ICAgICBpcCwgcjcKKyAgICBsZHIgICAgIHI3LCA9X19OUl9jbG9ja19uYW5vc2xlZXAKKyAgICBzd2kgICAgICMwCisgICAgbW92ICAgICByNywgaXAKKyAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgYnhscyAgICBscgorICAgIG5lZyAgICAgcjAsIHIwCisgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAorRU5EKF9fY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM4MjNjZWUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKQEAgLTAsMCArMSwxNCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3J0X3NpZ3F1ZXVlaW5mbykKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX3J0X3NpZ3F1ZXVlaW5mbworICAgIHN3aSAgICAgIzAKKyAgICBtb3YgICAgIHI3LCBpcAorICAgIGNtbiAgICAgcjAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBieGxzICAgIGxyCisgICAgbmVnICAgICByMCwgcjAKKyAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCitFTkQoX19ydF9zaWdxdWV1ZWluZm8pCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19leGl0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19leGl0LlMKaW5kZXggMzI4YTVjZS4uNzdkYTc0MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fZXhpdC5TCisrKyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX2V4aXQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKIEVORChfZXhpdCkKIAotICAgIC5nbG9ibCBfRXhpdAotICAgIC5lcXUgX0V4aXQsIF9leGl0CitBTElBU19TWU1CT0woX0V4aXQsIF9leGl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgwMjk1YmIuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvY2tfbmFub3NsZWVwKQotICAgIG1vdiAgICAgaXAsIHI3Ci0gICAgbGRyICAgICByNywgPV9fTlJfY2xvY2tfbmFub3NsZWVwCi0gICAgc3dpICAgICAjMAotICAgIG1vdiAgICAgcjcsIGlwCi0gICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGJ4bHMgICAgbHIKLSAgICBuZWcgICAgIHIwLCByMAotICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLUVORChjbG9ja19uYW5vc2xlZXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2Nsb3NlLlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2Nsb3NlLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVjMDU0NDUuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9jbG9zZS5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9zZSkKLSAgICBtb3YgICAgIGlwLCByNwotICAgIGxkciAgICAgcjcsID1fX05SX2Nsb3NlCi0gICAgc3dpICAgICAjMAotICAgIG1vdiAgICAgcjcsIGlwCi0gICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGJ4bHMgICAgbHIKLSAgICBuZWcgICAgIHIwLCByMAotICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLUVORChjbG9zZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMWRmNWMwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmFjY2Vzc2F0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZhY2Nlc3NhdCkKLSAgICBtb3YgICAgIGlwLCByNwotICAgIGxkciAgICAgcjcsID1fX05SX2ZhY2Nlc3NhdAotICAgIHN3aSAgICAgIzAKLSAgICBtb3YgICAgIHI3LCBpcAotICAgIGNtbiAgICAgcjAsICMoTUFYX0VSUk5PICsgMSkKLSAgICBieGxzICAgIGxyCi0gICAgbmVnICAgICByMCwgcjAKLSAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi1FTkQoZmFjY2Vzc2F0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mY2htb2QuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmNobW9kLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU2NzVmMGEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mY2htb2QuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kKQotICAgIG1vdiAgICAgaXAsIHI3Ci0gICAgbGRyICAgICByNywgPV9fTlJfZmNobW9kCi0gICAgc3dpICAgICAjMAotICAgIG1vdiAgICAgcjcsIGlwCi0gICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGJ4bHMgICAgbHIKLSAgICBuZWcgICAgIHIwLCByMAotICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLUVORChmY2htb2QpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZjaG1vZGF0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNmN2UwZWUuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mY2htb2RhdC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2RhdCkKLSAgICBtb3YgICAgIGlwLCByNwotICAgIGxkciAgICAgcjcsID1fX05SX2ZjaG1vZGF0Ci0gICAgc3dpICAgICAjMAotICAgIG1vdiAgICAgcjcsIGlwCi0gICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGJ4bHMgICAgbHIKLSAgICBuZWcgICAgIHIwLCByMAotICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLUVORChmY2htb2RhdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZnN0YXQ2NC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdDY0LlMKaW5kZXggYzYwZTdlZS4uNzk4YmJhNyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdDY0LlMKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdDY0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCiBFTkQoZnN0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdAotICAgIC5lcXUgZnN0YXQsIGZzdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdCwgZnN0YXQ2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZnN0YXRhdDY0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCmluZGV4IGNlNTZjMzYuLjAzZTAwNTIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZnN0YXRhdDY0LlMKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdGF0NjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKIEVORChmc3RhdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXRhdAotICAgIC5lcXUgZnN0YXRhdCwgZnN0YXRhdDY0CitBTElBU19TWU1CT0woZnN0YXRhdCwgZnN0YXRhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9zZXRob3N0bmFtZS5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9zZXRob3N0bmFtZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhOThmZDMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKQEAgLTAsMCArMSwxNCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzZXRob3N0bmFtZSkKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX3NldGhvc3RuYW1lCisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChzZXRob3N0bmFtZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9hcm02NC5tayBiL2xpYmMvYXJjaC1hcm02NC9hcm02NC5tawppbmRleCBiYjZjYTYzLi42YTJmMzEzIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvYXJtNjQubWsKKysrIGIvbGliYy9hcmNoLWFybTY0L2FybTY0Lm1rCkBAIC04LDcgKzgsNiBAQAogICAgIGJpb25pYy9fX21lbXNldF9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHJjcHlfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY2F0X2Noay5jcHAgXAotICAgIGJpb25pYy9tZW1yY2hyLmMgXAogICAgIGJpb25pYy9zdHJyY2hyLmNwcCBcCiAKIGxpYmNfZnJlZWJzZF9zcmNfZmlsZXNfYXJtNjQgKz0gXApAQCAtMjEsNiArMjAsNyBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jbXAuYyBcCiAKIGxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfYXJtNjQgKz0gXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbXJjaHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RwbmNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJjYXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGNhdC5jIFwKQEAgLTM1LDEzICszNSwxMyBAQAogbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybTY0ICs9IFwKICAgICBhcmNoLWFybTY0L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TIFwKICAgICBhcmNoLWFybTY0L2Jpb25pYy9fZXhpdF93aXRoX3N0YWNrX3RlYXJkb3duLlMgXAotICAgIGFyY2gtYXJtNjQvYmlvbmljL19zZXRqbXAuUyBcCiAgICAgYXJjaC1hcm02NC9iaW9uaWMvc2V0am1wLlMgXAogICAgIGFyY2gtYXJtNjQvYmlvbmljL19fc2V0X3Rscy5jIFwKLSAgICBhcmNoLWFybTY0L2Jpb25pYy9zaWdzZXRqbXAuUyBcCiAgICAgYXJjaC1hcm02NC9iaW9uaWMvc3lzY2FsbC5TIFwKICAgICBhcmNoLWFybTY0L2Jpb25pYy92Zm9yay5TIFwKIAorIyBXb3JrIGFyb3VuZCBmb3IgaHR0cDovL2IvMjAwNjU3NzQuCitsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtNjQgKz0gYXJjaC1hcm02NC9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jCiAKIGxpYmNfY3J0X3RhcmdldF9jZmxhZ3NfYXJtNjQgOj0gXAogICAgIC1JJChMT0NBTF9QQVRIKS9hcmNoLWFybTY0L2luY2x1ZGUKQEAgLTYxLDYgKzYxLDYgQEAKICQoZXJyb3IgIlRBUkdFVF9DUFVfVkFSSUFOVCBub3Qgc2V0IG9yIHNldCB0byBhbiB1bmtub3duIHZhbHVlLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIGdlbmVyaWMsIGRlbnZlcjY0LiBVc2UgZ2VuZXJpYyBmb3IgZGV2aWNlcyB0aGF0IGRvIG5vdCBoYXZlIGEgQ1BVIHNpbWlsYXIgdG8gYW55IG9mIHRoZSBzdXBwb3J0ZWQgY3B1IHZhcmlhbnRzLiIpCiBlbmRpZgogaW5jbHVkZSAkKGNwdV92YXJpYW50X21rKQotbGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMgKz0gJChjcHVfdmFyaWFua19taykKK2xpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzICs9ICQoY3B1X3ZhcmlhbnRfbWspCiAKIGNwdV92YXJpYW50X21rIDo9CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvYmlvbmljL19fYmlvbmljX2Nsb25lLlMgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL19fYmlvbmljX2Nsb25lLlMKaW5kZXggNTZhYzBmNi4uMjdlNDRlNyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUwpAQCAtMzEsOCArMzEsOCBAQAogLy8gcGlkX3QgX19iaW9uaWNfY2xvbmUoaW50IGZsYWdzLCB2b2lkKiBjaGlsZF9zdGFjaywgcGlkX3QqIHBhcmVudF90aWQsIHZvaWQqIHRscywgcGlkX3QqIGNoaWxkX3RpZCwgaW50ICgqZm4pKHZvaWQqKSwgdm9pZCogYXJnKTsKIAogRU5UUlkoX19iaW9uaWNfY2xvbmUpCi0gICAgIyBDb3B5ICdmbicgYW5kICdhcmcnIG9udG8gdGhlIGNoaWxkIHN0YWNrLgotICAgIHN0cCAgICAgeDUsIHg2LCBbeDEsICMtMTZdCisgICAgIyBQdXNoICdmbicgYW5kICdhcmcnIG9udG8gdGhlIGNoaWxkIHN0YWNrLgorICAgIHN0cCAgICAgeDUsIHg2LCBbeDEsICMtMTZdIQogCiAgICAgIyBNYWtlIHRoZSBzeXN0ZW0gY2FsbC4KICAgICBtb3YgICAgIHg4LCBfX05SX2Nsb25lCkBAIC00OSwxMiArNDksMTIgQEAKICAgICByZXQKIAogLkxfYmNfY2hpbGQ6Ci0gICAgIyBXZSdyZSBpbiB0aGUgY2hpbGQgbm93LiBTZXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUgcmVjb3JkIGNoYWluLi4uCi0gICAgbW92ICAgICB4MjksIHh6cgotICAgICMgU2V0dGluZyB4MzAgdG8gMCB3aWxsIG1ha2UgdGhlIHVud2luZGVyIHN0b3AgYXQgX19zdGFydF90aHJlYWQKLSAgICBtb3YgICAgIHgzMCwgeHpyCi0gICAgIyAuLi5hbmQgY2FsbCBfX3N0YXJ0X3RocmVhZCB3aXRoIHRoZSAnZm4nIGFuZCAnYXJnJyB3ZSBzdG9yZWQgb24gdGhlIGNoaWxkIHN0YWNrLgotICAgIGxkcCAgICAgeDAsIHgxLCBbc3AsICMtMTZdCisgICAgIyBXZSdyZSBpbiB0aGUgY2hpbGQgbm93LiBTZXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUgcmVjb3JkIGNoYWluLgorICAgIG1vdiAgICAgeDI5LCAjMAorICAgICMgU2V0dGluZyB4MzAgdG8gMCB3aWxsIG1ha2UgdGhlIHVud2luZGVyIHN0b3AgYXQgX19zdGFydF90aHJlYWQuCisgICAgbW92ICAgICB4MzAsICMwCisgICAgIyBDYWxsIF9fc3RhcnRfdGhyZWFkIHdpdGggdGhlICdmbicgYW5kICdhcmcnIHdlIHN0b3JlZCBvbiB0aGUgY2hpbGQgc3RhY2suCisgICAgbGRwICAgICB4MCwgeDEsIFtzcF0sICMxNgogICAgIGIgICAgICAgX19zdGFydF90aHJlYWQKIEVORChfX2Jpb25pY19jbG9uZSkKIC5oaWRkZW4gX19iaW9uaWNfY2xvbmUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvX3NldGptcC5TIGIvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9fc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM4MzY4OTkuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9fc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxMTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KLQotLyoKLSAqIEMgbGlicmFyeSAtIF9zZXRqbXAsIF9sb25nam1wCi0gKgotICogX2xvbmdqbXAoam1wX2J1ZiBzdGF0ZSwgaW50IHZhbHVlKQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0byBfc2V0am1wKHN0YXRlKSBieSByZXN0b3JpbmcKLSAqIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4gVGhlIHByZXZpb3VzIHNpZ25hbCBzdGF0ZSBpcyBOT1QgcmVzdG9yZWQuCi0gKgotICogTk9URTogeDAgcmV0dXJuIHZhbHVlCi0gKiAgICAgICB4OS14MTUgdGVtcG9yYXJ5IHJlZ2lzdGVycwotICovCi0KLUVOVFJZKF9zZXRqbXApCi0gICAgLyogc3RvcmUgbWFnaWMgbnVtYmVyICovCi0gICAgbGRyICAgICB3OSwgLkxfc2V0am1wX21hZ2ljCi0gICAgc3RyICAgICB3OSwgW3gwLCAjKF9KQl9NQUdJQyAqIDQpXQotCi0gICAgLyogc3RvcmUgY29yZSByZWdpc3RlcnMgKi8KLSAgICBtb3YgICAgIHgxMCwgc3AKLSAgICBzdHAgICAgIHgzMCwgeDEwLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDApXQotICAgIHN0cCAgICAgeDI4LCB4MjksIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMSldCi0gICAgc3RwICAgICB4MjYsIHgyNywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBzdHAgICAgIHgyNCwgeDI1LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDMpXQotICAgIHN0cCAgICAgeDIyLCB4MjMsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNCldCi0gICAgc3RwICAgICB4MjAsIHgyMSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA1KV0KLSAgICBzdHIgICAgIHgxOSwgICAgICBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDYpXQotCi0gICAgLyogc3RvcmUgZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXJzICovCi0gICAgc3RwICAgICBkMTQsIGQxNSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMCldCi0gICAgc3RwICAgICBkMTIsIGQxMywgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMSldCi0gICAgc3RwICAgICBkMTAsIGQxMSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMildCi0gICAgc3RwICAgICBkOCwgIGQ5LCAgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMyldCi0KLSAgICBtb3YgICAgIHcwLCB3enIKLSAgICByZXQKLUVORChfc2V0am1wKQotCi0uTF9zZXRqbXBfbWFnaWM6Ci0gICAgLndvcmQgICBfSkJfTUFHSUNfX1NFVEpNUAotCi1FTlRSWShfbG9uZ2ptcCkKLSAgICAvKiBjaGVjayBtYWdpYyAqLwotICAgIGxkciAgICAgdzksIC5MX3NldGptcF9tYWdpYwotICAgIGxkciAgICAgdzEwLCBbeDAsICMoX0pCX01BR0lDICogNCldCi0gICAgY21wICAgICB3OSwgdzEwCi0gICAgYi5uZSAgICAuTF9mYWlsCi0KLSAgICAvKiByZXN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0gICAgbGRwICAgICB4MzAsIHgxMCwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAwKV0KLSAgICBtb3YgICAgIHNwLCB4MTAKLSAgICBsZHAgICAgIHgyOCwgeDI5LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDEpXQotICAgIGxkcCAgICAgeDI2LCB4MjcsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMildCi0gICAgbGRwICAgICB4MjQsIHgyNSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAzKV0KLSAgICBsZHAgICAgIHgyMiwgeDIzLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDQpXQotICAgIGxkcCAgICAgeDIwLCB4MjEsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNSldCi0gICAgbGRyICAgICB4MTksICAgICAgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA2KV0KLQotICAgIC8qIHJlc3RvcmUgZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXJzICovCi0gICAgbGRwICAgICBkMTQsIGQxNSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMCldCi0gICAgbGRwICAgICBkMTIsIGQxMywgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMSldCi0gICAgbGRwICAgICBkMTAsIGQxMSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMildCi0gICAgbGRwICAgICBkOCwgIGQ5LCAgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMyldCi0KLSAgICAvKiB2YWxpZGF0ZSBzcCAoc3AgbW9kIDE2ID0gMCkgYW5kIGxyIChsciBtb2QgNCA9IDApICovCi0gICAgdHN0ICAgICB4MzAsICMzCi0gICAgYi5uZSAgICAuTF9mYWlsCi0gICAgbW92ICAgICB4MTAsIHNwCi0gICAgdHN0ICAgICB4MTAsICMxNQotICAgIGIubmUgICAgLkxfZmFpbAotCi0gICAgLyogc2V0IHJldHVybiB2YWx1ZSAqLwotICAgIGNtcCAgICAgdzEsIHd6cgotICAgIGNzaW5jICAgdzAsIHcxLCB3enIsIG5lCi0gICAgcmV0Ci0KLSAgICAvKiB2YWxpZGF0aW9uIGZhaWxlZCwgZGllIGRpZSBkaWUgKi8KLS5MX2ZhaWw6Ci0gICAgYmwgICAgICBQSUNfU1lNKGxvbmdqbXBlcnJvciwgUExUKQotICAgIGJsICAgICAgUElDX1NZTShhYm9ydCwgUExUKQotICAgIGIgICAgICAgIC4gLSA4ICAgICAgIC8qIENhbm5vdCBnZXQgaGVyZSAqLwotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9jcnRiZWdpbi5jIGIvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9jcnRiZWdpbi5jCmluZGV4IGZlYzBiMTEuLjdlMmM1ZDcgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvY3J0YmVnaW4uYworKysgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL2NydGJlZ2luLmMKQEAgLTY3LDMgKzY3LDQgQEAKIAogI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9fX2Rzb19oYW5kbGUuaCIKICNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvYXRleGl0LmgiCisjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL3B0aHJlYWRfYXRmb3JrLmgiCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvYmlvbmljL2xpYmdjY19jb21wYXQuYyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkYWUzZjUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL2xpYmdjY19jb21wYXQuYwpAQCAtMCwwICsxLDE1IEBACisvKiBTVE9QU0hJUDogcmVtb3ZlIHRoaXMgb25jZSB0aGUgZmxvdW5kZXIgYmxvYnMgaGF2ZSBiZWVuIHJlYnVpbHQgKGh0dHA6Ly9iLzIwMDY1Nzc0KS4gKi8KKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKworZXh0ZXJuIHZvaWQgX19jbGVhcl9jYWNoZShjaGFyKiwgY2hhciopOworZXh0ZXJuIGNoYXIgX1Vud2luZF9CYWNrdHJhY2U7CitleHRlcm4gY2hhciBfVW53aW5kX0dldElQOworCit2b2lkKiBfX2Jpb25pY19saWJnY2NfY29tcGF0X3N5bWJvbHNbXSA9IHsKKyAgICAmX19jbGVhcl9jYWNoZSwKKyAgICAmX1Vud2luZF9CYWNrdHJhY2UsCisgICAgJl9VbndpbmRfR2V0SVAsCit9OworCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2V0am1wLlMgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL3NldGptcC5TCmluZGV4IGY5ZDIyNjYuLmJhMGEyMjYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2V0am1wLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9zZXRqbXAuUwpAQCAtMjcsOTcgKzI3LDEyNCBAQAogICovCiAKICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgogCi0vKgotICogQyBsaWJyYXJ5IC0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKiBfbG9uZ2ptcChqbXBfYnVmIHN0YXRlLCBpbnQgdmFsdWUpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvIF9zZXRqbXAoc3RhdGUpIGJ5IHJlc3RvcmluZwotICogcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIE5PVCByZXN0b3JlZC4KLSAqCi0gKiBOT1RFOiB4MCByZXR1cm4gdmFsdWUKLSAqICAgICAgIHg5LXgxNSB0ZW1wb3JhcnkgcmVnaXN0ZXJzCi0gKi8KKy8vIEFjY29yZGluZyB0byBBQVJDSDY0IFBDUyBkb2N1bWVudCB3ZSBuZWVkIHRvIHNhdmUgdGhlIGZvbGxvd2luZworLy8gcmVnaXN0ZXJzOgorLy8KKy8vIENvcmUgICAgIHgxOSAtIHgzMCwgc3AgKHNlZSBzZWN0aW9uIDUuMS4xKQorLy8gVkZQICAgICAgZDggLSBkMTUgKHNlZSBzZWN0aW9uIDUuMS4yKQorLy8KKy8vIE5PVEU6IEFsbCB0aGUgcmVnaXN0ZXJzIHNhdmVkIGhlcmUgd2lsbCBoYXZlIDY0IGJpdCB2YWxlcy4KKy8vICAgICAgIEFBUENTIG1hbmRhdGVzIHRoYXQgdGhlIGhpZ2hlciBwYXJ0IG9mIHEgcmVnaXN0ZXJzIGRvIG5vdCBuZWVkIHRvCisvLyAgICAgICBiZSBzYXZlZCBieSB0aGUgY2FsbGVlLgorCisjZGVmaW5lIF9KQl9TSUdGTEFHICAgICAwCisjZGVmaW5lIF9KQl9TSUdNQVNLICAgICAoX0pCX1NJR0ZMQUcgKyAxKQorI2RlZmluZSBfSkJfWDMwX1NQICAgICAgKF9KQl9TSUdNQVNLICsgMSkKKyNkZWZpbmUgX0pCX1gyOF9YMjkgICAgIChfSkJfWDMwX1NQICArIDIpCisjZGVmaW5lIF9KQl9YMjZfWDI3ICAgICAoX0pCX1gyOF9YMjkgKyAyKQorI2RlZmluZSBfSkJfWDI0X1gyNSAgICAgKF9KQl9YMjZfWDI3ICsgMikKKyNkZWZpbmUgX0pCX1gyMl9YMjMgICAgIChfSkJfWDI0X1gyNSArIDIpCisjZGVmaW5lIF9KQl9YMjBfWDIxICAgICAoX0pCX1gyMl9YMjMgKyAyKQorI2RlZmluZSBfSkJfWDE5ICAgICAgICAgKF9KQl9YMjBfWDIxICsgMikKKyNkZWZpbmUgX0pCX0QxNF9EMTUgICAgIChfSkJfWDE5ICsgMSkKKyNkZWZpbmUgX0pCX0QxMl9EMTMgICAgIChfSkJfRDE0X0QxNSArIDIpCisjZGVmaW5lIF9KQl9EMTBfRDExICAgICAoX0pCX0QxMl9EMTMgKyAyKQorI2RlZmluZSBfSkJfRDhfRDkgICAgICAgKF9KQl9EMTBfRDExICsgMikKIAogRU5UUlkoc2V0am1wKQotICAgIC8qIGJsb2NrIGFsbCBzaWduYWxzIGFuIHJldHJpZXZlIHNpZ25hbCBtYXNrICovCi0gICAgc3RwICAgICB4MCwgeDMwLCBbc3AsICMtMTZdIQotCi0gICAgbW92ICAgICB4MCwgeHpyCi0gICAgYmwgICAgICBQSUNfU1lNKHNpZ2Jsb2NrLCBQTFQpCi0gICAgbW92ICAgICB3MSwgdzAKLQotICAgIGxkcCAgICAgeDAsIHgzMCwgW3NwXSwgIzE2Ci0KLSAgICAvKiBzdG9yZSBzaWduYWwgbWFzayAqLwotICAgIHN0ciAgICAgdzEsIFt4MCwgIyhfSkJfU0lHTUFTSyAqNCldCi0KLSAgICAvKiBzdG9yZSBtYWdpYyBudW1iZXIgKi8KLSAgICBsZHIgICAgIHc5LCAuTF9zZXRqbXBfbWFnaWMKLSAgICBzdHIgICAgIHc5LCBbeDAsICMoX0pCX01BR0lDICogNCldCi0KLSAgICAvKiBzdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotICAgIG1vdiAgICAgeDEwLCBzcAotICAgIHN0cCAgICAgeDMwLCB4MTAsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMCldCi0gICAgc3RwICAgICB4MjgsIHgyOSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBzdHAgICAgIHgyNiwgeDI3LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDIpXQotICAgIHN0cCAgICAgeDI0LCB4MjUsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMyldCi0gICAgc3RwICAgICB4MjIsIHgyMywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA0KV0KLSAgICBzdHAgICAgIHgyMCwgeDIxLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDUpXQotICAgIHN0ciAgICAgeDE5LCAgICAgIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNildCi0KLSAgICAvKiBzdG9yZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMgKi8KLSAgICBzdHAgICAgIGQxNCwgZDE1LCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAwKV0KLSAgICBzdHAgICAgIGQxMiwgZDEzLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBzdHAgICAgIGQxMCwgZDExLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBzdHAgICAgIGQ4LCAgZDksICBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAzKV0KLQotICAgIG1vdiAgICAgdzAsIHd6cgotICAgIHJldAorICBtb3YgdzEsICMxCisgIGIgc2lnc2V0am1wCiBFTkQoc2V0am1wKQogCi0uTF9zZXRqbXBfbWFnaWM6Ci0gICAgLndvcmQgICBfSkJfTUFHSUNfX1NFVEpNUAorRU5UUlkoX3NldGptcCkKKyAgbW92IHcxLCAjMAorICBiIHNpZ3NldGptcAorRU5EKF9zZXRqbXApCiAKLUVOVFJZKGxvbmdqbXApCi0gICAgLyogY2hlY2sgbWFnaWMgKi8KLSAgICBsZHIgICAgIHc5LCAuTF9zZXRqbXBfbWFnaWMKLSAgICBsZHIgICAgIHcxMCwgW3gwLCAjKF9KQl9NQUdJQyAqIDQpXQotICAgIGNtcCAgICAgdzksIHcxMAotICAgIGIubmUgICAgLkxfZmFpbAorLy8gaW50IHNpZ3NldGptcChzaWdqbXBfYnVmIGVudiwgaW50IHNhdmVfc2lnbmFsX21hc2spOworRU5UUlkoc2lnc2V0am1wKQorICAvLyBSZWNvcmQgd2hldGhlciBvciBub3Qgd2UncmUgc2F2aW5nIHRoZSBzaWduYWwgbWFzay4KKyAgc3RyIHcxLCBbeDAsICMoX0pCX1NJR0ZMQUcgKiA4KV0KIAotICAgIC8qIHJlc3RvcmUgY29yZSByZWdpc3RlcnMgKi8KLSAgICBsZHAgICAgIHgzMCwgeDEwLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDApXQotICAgIG1vdiAgICAgc3AsIHgxMAotICAgIGxkcCAgICAgeDI4LCB4MjksIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMSldCi0gICAgbGRwICAgICB4MjYsIHgyNywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBsZHAgICAgIHgyNCwgeDI1LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDMpXQotICAgIGxkcCAgICAgeDIyLCB4MjMsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNCldCi0gICAgbGRwICAgICB4MjAsIHgyMSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA1KV0KLSAgICBsZHIgICAgIHgxOSwgICAgICBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDYpXQorICAvLyBEbyB3ZSBuZWVkIHRvIHNhdmUgdGhlIHNpZ25hbCBtYXNrPworICBjYnogdzEsIDFmCiAKLSAgICAvKiByZXN0b3JlIGZsb2F0aW5nIHBvaW50IHJlZ2lzdGVycyAqLwotICAgIGxkcCAgICAgZDE0LCBkMTUsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDApXQotICAgIGxkcCAgICAgZDEyLCBkMTMsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDEpXQotICAgIGxkcCAgICAgZDEwLCBkMTEsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDIpXQotICAgIGxkcCAgICAgZDgsICBkOSwgIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDMpXQorICAvLyBTYXZlIGN1cnJlbnQgc2lnbmFsIG1hc2suCisgIHN0cCB4MCwgeDMwLCBbc3AsICMtMTZdIQorICAvLyBUaGUgJ2hvdycgYXJndW1lbnQgaXMgaWdub3JlZCBpZiBuZXdfbWFzayBpcyBOVUxMLgorICBtb3YgeDEsICMwIC8vIE5VTEwuCisgIGFkZCB4MiwgeDAsICMoX0pCX1NJR01BU0sgKiA4KSAvLyBvbGRfbWFzay4KKyAgYmwgc2lncHJvY21hc2sKKyAgbGRwIHgwLCB4MzAsIFtzcF0sICMxNgogCi0gICAgLyogdmFsaWRhdGUgc3AgKHNwIG1vZCAxNiA9IDApIGFuZCBsciAobHIgbW9kIDQgPSAwKSAqLwotICAgIHRzdCAgICAgeDMwLCAjMwotICAgIGIubmUgICAgLkxfZmFpbAotICAgIG1vdiAgICAgeDEwLCBzcAotICAgIHRzdCAgICAgeDEwLCAjMTUKLSAgICBiLm5lICAgIC5MX2ZhaWwKKzE6CisgIC8vIFNhdmUgY29yZSByZWdpc3RlcnMuCisgIG1vdiB4MTAsIHNwCisgIHN0cCB4MzAsIHgxMCwgW3gwLCAjKF9KQl9YMzBfU1AgICogOCldCisgIHN0cCB4MjgsIHgyOSwgW3gwLCAjKF9KQl9YMjhfWDI5ICogOCldCisgIHN0cCB4MjYsIHgyNywgW3gwLCAjKF9KQl9YMjZfWDI3ICogOCldCisgIHN0cCB4MjQsIHgyNSwgW3gwLCAjKF9KQl9YMjRfWDI1ICogOCldCisgIHN0cCB4MjIsIHgyMywgW3gwLCAjKF9KQl9YMjJfWDIzICogOCldCisgIHN0cCB4MjAsIHgyMSwgW3gwLCAjKF9KQl9YMjBfWDIxICogOCldCisgIHN0ciB4MTksICAgICAgW3gwLCAjKF9KQl9YMTkgICAgICogOCldCiAKLSAgICAvKiBzZXQgcmV0dXJuIHZhbHVlICovCi0gICAgY21wICAgICB3MSwgd3pyCi0gICAgY3NpbmMgICB3MCwgdzEsIHd6ciwgbmUKLSAgICByZXQKKyAgLy8gU2F2ZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMuCisgIHN0cCBkMTQsIGQxNSwgW3gwLCAjKF9KQl9EMTRfRDE1ICogOCldCisgIHN0cCBkMTIsIGQxMywgW3gwLCAjKF9KQl9EMTJfRDEzICogOCldCisgIHN0cCBkMTAsIGQxMSwgW3gwLCAjKF9KQl9EMTBfRDExICogOCldCisgIHN0cCBkOCwgIGQ5LCAgW3gwLCAjKF9KQl9EOF9EOSAgICogOCldCiAKLSAgICAvKiB2YWxpZGF0aW9uIGZhaWxlZCwgZGllIGRpZSBkaWUgKi8KLS5MX2ZhaWw6Ci0gICAgYmwgICAgICBQSUNfU1lNKGxvbmdqbXBlcnJvciwgUExUKQotICAgIGJsICAgICAgUElDX1NZTShhYm9ydCwgUExUKQotICAgIGIgICAgICAgLiAtIDggICAgICAgLyogQ2Fubm90IGdldCBoZXJlICovCi1FTkQobG9uZ2ptcCkKKyAgbW92IHcwLCAjMAorICByZXQKK0VORChzaWdzZXRqbXApCisKKy8vIHZvaWQgc2lnbG9uZ2ptcChzaWdqbXBfYnVmIGVudiwgaW50IHZhbHVlKTsKK0VOVFJZKHNpZ2xvbmdqbXApCisgIC8vIERvIHdlIG5lZWQgdG8gcmVzdG9yZSB0aGUgc2lnbmFsIG1hc2s/CisgIGxkciB3OSwgW3gwLCAjKF9KQl9TSUdGTEFHICogOCldCisgIGNieiB3OSwgMWYKKworICAvLyBSZXN0b3JlIHNpZ25hbCBtYXNrLgorICBzdHAgeDAsIHgzMCwgW3NwLCAjLTE2XSEKKyAgbW92IHgxOSwgeDEgLy8gU2F2ZSAndmFsdWUnLgorICBtb3YgeDIsIHgwCisgIG1vdiB4MCwgIzIgLy8gU0lHX1NFVE1BU0sKKyAgYWRkIHgxLCB4MiwgIyhfSkJfU0lHTUFTSyAqIDgpIC8vIG5ld19tYXNrLgorICBtb3YgeDIsICMwIC8vIE5VTEwuCisgIGJsIHNpZ3Byb2NtYXNrCisgIG1vdiB4MSwgeDE5IC8vIFJlc3RvcmUgJ3ZhbHVlJy4KKyAgbGRwIHgwLCB4MzAsIFtzcF0sICMxNgorCisxOgorICAvLyBSZXN0b3JlIGNvcmUgcmVnaXN0ZXJzLgorICBsZHAgeDMwLCB4MTAsIFt4MCwgIyhfSkJfWDMwX1NQICAqIDgpXQorICBtb3Ygc3AsIHgxMAorICBsZHAgeDI4LCB4MjksIFt4MCwgIyhfSkJfWDI4X1gyOSAqIDgpXQorICBsZHAgeDI2LCB4MjcsIFt4MCwgIyhfSkJfWDI2X1gyNyAqIDgpXQorICBsZHAgeDI0LCB4MjUsIFt4MCwgIyhfSkJfWDI0X1gyNSAqIDgpXQorICBsZHAgeDIyLCB4MjMsIFt4MCwgIyhfSkJfWDIyX1gyMyAqIDgpXQorICBsZHAgeDIwLCB4MjEsIFt4MCwgIyhfSkJfWDIwX1gyMSAqIDgpXQorICBsZHIgeDE5LCAgICAgIFt4MCwgIyhfSkJfWDE5ICAgICAqIDgpXQorCisgIC8vIFJlc3RvcmUgZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXJzLgorICBsZHAgZDE0LCBkMTUsIFt4MCwgIyhfSkJfRDE0X0QxNSAqIDgpXQorICBsZHAgZDEyLCBkMTMsIFt4MCwgIyhfSkJfRDEyX0QxMyAqIDgpXQorICBsZHAgZDEwLCBkMTEsIFt4MCwgIyhfSkJfRDEwX0QxMSAqIDgpXQorICBsZHAgZDgsICBkOSwgIFt4MCwgIyhfSkJfRDhfRDkgICAqIDgpXQorCisgIC8vIFZhbGlkYXRlIHNwIChzcCBtb2QgMTYgPSAwKSBhbmQgbHIgKGxyIG1vZCA0ID0gMCkuCisgIHRzdCB4MzAsICMzCisgIGIubmUgbG9uZ2ptcGVycm9yCisgIG1vdiB4MTAsIHNwCisgIHRzdCB4MTAsICMxNQorICBiLm5lIGxvbmdqbXBlcnJvcgorCisgIC8vIFNldCByZXR1cm4gdmFsdWUuCisgIGNtcCB3MSwgd3pyCisgIGNzaW5jIHcwLCB3MSwgd3pyLCBuZQorICByZXQKK0VORChzaWdsb25nam1wKQorCitBTElBU19TWU1CT0wobG9uZ2ptcCwgc2lnbG9uZ2ptcCkKK0FMSUFTX1NZTUJPTChfbG9uZ2ptcCwgc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2lnc2V0am1wLlMgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL3NpZ3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZmRiMzY3Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2lnc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogaW50IHNpZ3NldGptcChzaWdqbXBfYnVmIGVudiwgaW50IHNhdmVzaWdzKTsKLSAqIHZvaWQgc2lnbG9uZ2ptcChzaWdqbXBfYnVmIGVudiwgaW50IHZhbCk7Ci0gKi8KLQotRU5UUlkoc2lnc2V0am1wKQotICAgIGNieiAgICAgdzEsIFBJQ19TWU0oX3NldGptcCwgUExUKQotICAgIGIgICAgICAgUElDX1NZTShzZXRqbXAsIFBMVCkKLUVORChzaWdzZXRqbXApCi0KLS5MX3NldGptcF9tYWdpYzoKLSAgICAud29yZCAgIF9KQl9NQUdJQ19fU0VUSk1QCi0KLUVOVFJZKHNpZ2xvbmdqbXApCi0gICAgbGRyICAgICB3MiwgLkxfc2V0am1wX21hZ2ljCi0gICAgbGRyICAgICB3MywgW3gwXQotICAgIGNtcCAgICAgdzIsIHczCi0gICAgYi5lcSAgICBQSUNfU1lNKF9sb25nam1wLCBQTFQpCi0gICAgYiAgICAgICBQSUNfU1lNKGxvbmdqbXAsIFBMVCkKLUVORChzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9hc20uaCBiL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKaW5kZXggNGJmYWJhZi4uMmJlYTA0MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9hc20uaAorKysgYi9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCkBAIC0zOCwxNyArMzgsOSBAQAogI2lmbmRlZiBfQUFSQ0g2NF9BU01fSF8KICNkZWZpbmUgX0FBUkNINjRfQVNNX0hfCiAKLSNpZm5kZWYgX0FMSUdOX1RFWFQKLSMgZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAwCi0jZW5kaWYKKyNkZWZpbmUgX19iaW9uaWNfYXNtX2FsaWduIDAKIAogI3VuZGVmIF9fYmlvbmljX2FzbV9mdW5jdGlvbl90eXBlCiAjZGVmaW5lIF9fYmlvbmljX2FzbV9mdW5jdGlvbl90eXBlICVmdW5jdGlvbgogCi0jaWYgZGVmaW5lZChfX0VMRl9fKSAmJiBkZWZpbmVkKFBJQykKLSNkZWZpbmUgUElDX1NZTSh4LHkpIHggIyMgKCAjIyB5ICMjICkKLSNlbHNlCi0jZGVmaW5lIFBJQ19TWU0oeCx5KSB4Ci0jZW5kaWYKLQogI2VuZGlmIC8qIF9BQVJDSDY0X0FTTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaCBiL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3YTAzOGQuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfQUFSQ0g2NF9FTkRJQU5fSF8KLSNkZWZpbmUgX0FBUkNINjRfRU5ESUFOX0hfCi0KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+Ci0KLSNpZmRlZiBfX0dOVUNfXwotCi0jZGVmaW5lIF9fc3dhcDE2bWQoeCkgKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIHJlZ2lzdGVyIHVfaW50MTZfdCBfeCA9ICh4KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBfX2FzbSB2b2xhdGlsZSAoInJldjE2ICUwLCAlMCIgOiAiK3IiIChfeCkpOyAgICAgICAgICAgICAgICBcCi0gICAgX3g7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotfSkKLQotLyogVXNlIEdDQyBidWlsdGlucyAqLwotI2RlZmluZSBfX3N3YXAzMm1kKHgpIF9fYnVpbHRpbl9ic3dhcDMyKHgpCi0jZGVmaW5lIF9fc3dhcDY0bWQoeCkgX19idWlsdGluX2Jzd2FwNjQoeCkKLQotLyogVGVsbCBzeXMvZW5kaWFuLmggd2UgaGF2ZSBNRCB2YXJpYW50cyBvZiB0aGUgc3dhcCBtYWNyb3MuICAqLwotI2RlZmluZSBNRF9TV0FQCi0KLSNlbmRpZiAgLyogX19HTlVDX18gKi8KLQotI2lmIGRlZmluZWQoX19BQVJDSDY0RUJfXykKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0JJR19FTkRJQU4KLSNlbHNlCi0jZGVmaW5lIF9CWVRFX09SREVSIF9MSVRUTEVfRU5ESUFOCi0jZW5kaWYKLQotI2VuZGlmIC8qIF9BQVJDSDY0X0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzQzNzYyNi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaAorKysgL2Rldi9udWxsCkBAIC0xLDUwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBleGVjLmgsdiAxLjkgMjAwMy8wNC8xNyAwMzo0MjoxNCBkcmFobiBFeHAgJAkqLwotLyoJJE5ldEJTRDogZXhlYy5oLHYgMS42IDE5OTQvMTAvMjcgMDQ6MTY6MDUgY2dkIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTMgQ2hyaXN0b3BoZXIgRy4gRGVtZXRyaW91Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgbm90IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzCi0gKiAgICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCi0gKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgotICogSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0gKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIF9BQVJDSDY0X0VYRUNfSF8KLSNkZWZpbmUgX0FBUkNINjRfRVhFQ19IXwotCi0jZGVmaW5lCV9fTERQR1NaCQk0MDk2Ci0KLSNkZWZpbmUJTkFUSVZFX0VYRUNfRUxGCi0KLSNkZWZpbmUJQVJDSF9FTEZTSVpFCQk2NAotCi0jZGVmaW5lCUVMRl9UQVJHX0NMQVNTCQlFTEZDTEFTUzY0CQkvKiA2NC1iaXQgb2JqZWN0cyAqLwotI2RlZmluZQlFTEZfVEFSR19EQVRBCQlFTEZEQVRBMkxTQgotI2RlZmluZQlFTEZfVEFSR19NQUNICQlFTV9BQVJDSDY0Ci0KLSNkZWZpbmUJX05MSVNUX0RPX0FPVVQKLSNkZWZpbmUJX05MSVNUX0RPX0VMRgotCi0jZGVmaW5lCV9LRVJOX0RPX0FPVVQKLSNkZWZpbmUJX0tFUk5fRE9fRUxGNjQKLQotI2VuZGlmICAvKiBfQUFSQ0g2NF9FWEVDX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oIGIvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaAppbmRleCAxYzIzN2RhLi4yN2MyZmU1IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCisrKyBiL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKQEAgLTI2LDQ4ICsyNiw1IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCi0vKgotICogbWFjaGluZS9zZXRqbXAuaDogbWFjaGluZSBkZXBlbmRlbnQgc2V0am1wLXJlbGF0ZWQgaW5mb3JtYXRpb24uCi0gKi8KLQotLyogX0pCTEVOIGlzIHRoZSBzaXplIG9mIGEgam1wX2J1ZiBpbiBsb25ncyg2NGJpdCBvbiBBQXJjaDY0KSAqLworLyogX0pCTEVOIGlzIHRoZSBzaXplIG9mIGEgam1wX2J1ZiBpbiBsb25ncyAoNjRiaXQgb24gQUFyY2g2NCkgKi8KICNkZWZpbmUgX0pCTEVOIDMyCi0KLS8qIEFjY29yZGluZyB0byBBQVJDSDY0IFBDUyBkb2N1bWVudCB3ZSBuZWVkIHRvIHNhdmUgdGhlIGZvbGxvd2luZwotICogcmVnaXN0ZXJzOgotICoKLSAqIENvcmUgICAgIHgxOSAtIHgzMCwgc3AgKHNlZSBzZWN0aW9uIDUuMS4xKQotICogVkZQICAgICAgZDggLSBkMTUgKHNlZSBzZWN0aW9uIDUuMS4yKQotICoKLSAqIE5PVEU6IEFsbCB0aGUgcmVnaXN0ZXJzIHNhdmVkIGhlcmUgd2lsbCBoYXZlIDY0Yml0IHZhbGVzIChleGNlcHQgRlBTUikuCi0gKiAgICAgICBBQVBDUyBtYW5kYXRlcyB0aGF0IHRoZSBoaWdoZXIgcGFydCBvZiBxIHJlZ2lzdGVycyBkb2VzIG5vdCBuZWVkIHRvCi0gKiAgICAgICBiZSBzYXZldmVkIGJ5IHRoZSBjYWxsZWUuCi0gKi8KLQotLyogVGhlIHN0cnVjdHVyZSBvZiBqbXBfYnVmIGZvciBBQXJjaDY0OgotICoKLSAqIE5PVEU6IF9KQkxFTiBpcyB0aGUgc2l6ZSBvZiBqbXBfYnVmIGluIGxvbmdzKDY0Yml0IG9uIEFBcmNoNjQpISBUaGUgdGFibGUKLSAqICAgICAgYmVsb3cgY29tcHV0ZXMgdGhlIG9mZnNldHMgaW4gd29yZHMoMzJiaXQpLgotICoKLSAqICB3b3JkICAgICAgICBuYW1lICAgICAgICAgICAgZGVzY3JpcHRpb24KLSAqICAwICAgICAgIG1hZ2ljICAgICAgICAgICBtYWdpYyBudW1iZXIKLSAqICAxICAgICAgIHNpZ21hc2sgICAgICAgICBzaWduYWwgbWFzayAobm90IHVzZWQgd2l0aCBfc2V0am1wIC8gX2xvbmdqbXApCi0gKiAgMiAgICAgICBjb3JlX2Jhc2UgICAgICAgYmFzZSBvZiBjb3JlIHJlZ2lzdGVycyAoeDE5LXgzMCwgc3ApCi0gKiAgMjggICAgICBmbG9hdF9iYXNlICAgICAgYmFzZSBvZiBmbG9hdCByZWdpc3RlcnMgKGQ4LWQxNSkKLSAqICA0NCAgICAgIHJlc2VydmVkICAgICAgICByZXNlcnZlZCBlbnRyaWVzIChyb29tIHRvIGdyb3cpCi0gKiAgNjQKLSAqCi0gKgotICogIE5PVEU6IFRoZSBpbnN0cnVjdGlvbnMgdGhhdCBsb2FkL3N0b3JlIGNvcmUvdmZwIHJlZ2lzdGVycyBleHBlY3QgOC1ieXRlCi0gKiAgICAgICAgYWxpZ25tZW50LiBDb250cmFyeSB0byB0aGUgcHJldmlvdXMgc2V0am1wIGhlYWRlciBmb3IgQVJNIHdlIGRvIG5vdAotICogICAgICAgIG5lZWQgdG8gc2F2ZSBzdGF0dXMvY29udHJvbCByZWdpc3RlcnMgZm9yIFZGUCAoaXQgaXMgbm90IGEKLSAqICAgICAgICByZXF1aXJlbWVudCBmb3Igc2V0am1wKS4KLSAqLwotCi0jZGVmaW5lIF9KQl9NQUdJQyAgICAgICAwCi0jZGVmaW5lIF9KQl9TSUdNQVNLICAgICAoX0pCX01BR0lDKzEpCi0jZGVmaW5lIF9KQl9DT1JFX0JBU0UgICAoX0pCX1NJR01BU0srMSkKLSNkZWZpbmUgX0pCX0ZMT0FUX0JBU0UgIChfSkJfQ09SRV9CQVNFICsgKDMxLTE5KzEpKjIpCi0KLSNkZWZpbmUgX0pCX01BR0lDX19TRVRKTVAgICAweDUzNjU3MjAwCi0jZGVmaW5lIF9KQl9NQUdJQ19TRVRKTVAgICAgMHg1MzY1NzIwMQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2Nsb3NlLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZmI4MzYxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2Nsb3NlLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19jbG9zZSkKKyAgICBtb3YgICAgIHg4LCBfX05SX2Nsb3NlCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fX2Nsb3NlKQorLmhpZGRlbiBfX19jbG9zZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhNDFiNjkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mYWNjZXNzYXQpCisgICAgbW92ICAgICB4OCwgX19OUl9mYWNjZXNzYXQKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19fZmFjY2Vzc2F0KQorLmhpZGRlbiBfX19mYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mY2htb2QuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mY2htb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMTQzYzY1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kKQorICAgIG1vdiAgICAgeDgsIF9fTlJfZmNobW9kCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fX2ZjaG1vZCkKKy5oaWRkZW4gX19fZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmNobW9kYXQuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhYjM3MzYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmNobW9kYXQuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZGF0KQorICAgIG1vdiAgICAgeDgsIF9fTlJfZmNobW9kYXQKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19fZmNobW9kYXQpCisuaGlkZGVuIF9fX2ZjaG1vZGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkZjE1ZDYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fY2xvY2tfbmFub3NsZWVwKQorICAgIG1vdiAgICAgeDgsIF9fTlJfY2xvY2tfbmFub3NsZWVwCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fY2xvY2tfbmFub3NsZWVwKQorLmhpZGRlbiBfX2Nsb2NrX25hbm9zbGVlcApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fZnN0YXRmcy5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fZnN0YXRmcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlMzUwZDYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2ZzdGF0ZnMpCisgICAgbW92ICAgICB4OCwgX19OUl9mc3RhdGZzCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fZnN0YXRmcykKKy5oaWRkZW4gX19mc3RhdGZzCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJiMjNlMTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fcnRfc2lncXVldWVpbmZvKQorICAgIG1vdiAgICAgeDgsIF9fTlJfcnRfc2lncXVldWVpbmZvCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fcnRfc2lncXVldWVpbmZvKQorLmhpZGRlbiBfX3J0X3NpZ3F1ZXVlaW5mbwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fc3RhdGZzLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19zdGF0ZnMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjJjNTkwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fc3RhdGZzLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3N0YXRmcykKKyAgICBtb3YgICAgIHg4LCBfX05SX3N0YXRmcworICAgIHN2YyAgICAgIzAKKworICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBjbmVnICAgIHgwLCB4MCwgaGkKKyAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisKKyAgICByZXQKK0VORChfX3N0YXRmcykKKy5oaWRkZW4gX19zdGF0ZnMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fZXhpdC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19leGl0LlMKaW5kZXggZWRmNjc0NC4uZDUwZjM4ZCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19leGl0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChfZXhpdCkKIAotICAgIC5nbG9ibCBfRXhpdAotICAgIC5lcXUgX0V4aXQsIF9leGl0CitBTElBU19TWU1CT0woX0V4aXQsIF9leGl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNDljNWNjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvY2tfbmFub3NsZWVwKQotICAgIG1vdiAgICAgeDgsIF9fTlJfY2xvY2tfbmFub3NsZWVwCi0gICAgc3ZjICAgICAjMAotCi0gICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGNuZWcgICAgeDAsIHgwLCBoaQotICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLQotICAgIHJldAotRU5EKGNsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9jbG9zZS5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb3NlLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM2MjQ1ODEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb3NlLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb3NlKQotICAgIG1vdiAgICAgeDgsIF9fTlJfY2xvc2UKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoY2xvc2UpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFjY2Vzc2F0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRjOTZjZmEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmYWNjZXNzYXQpCi0gICAgbW92ICAgICB4OCwgX19OUl9mYWNjZXNzYXQKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoZmFjY2Vzc2F0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TCmluZGV4IGVmM2Q0YTQuLmQ0MmEwYmEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mYWxsb2NhdGUuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChmYWxsb2NhdGUpCiAKLSAgICAuZ2xvYmwgZmFsbG9jYXRlNjQKLSAgICAuZXF1IGZhbGxvY2F0ZTY0LCBmYWxsb2NhdGUKK0FMSUFTX1NZTUJPTChmYWxsb2NhdGU2NCwgZmFsbG9jYXRlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4M2E4MDYwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mY2htb2QuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kKQotICAgIG1vdiAgICAgeDgsIF9fTlJfZmNobW9kCi0gICAgc3ZjICAgICAjMAotCi0gICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGNuZWcgICAgeDAsIHgwLCBoaQotICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLQotICAgIHJldAotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mY2htb2RhdC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZGF0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhjNWJiMGUuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIG1vdiAgICAgeDgsIF9fTlJfZmNobW9kYXQKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoZmNobW9kYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXQ2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0NjQuUwppbmRleCA4NWEwN2Y1Li5mN2M5ZjU0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdDY0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChmc3RhdDY0KQogCi0gICAgLmdsb2JsIGZzdGF0Ci0gICAgLmVxdSBmc3RhdCwgZnN0YXQ2NAorQUxJQVNfU1lNQk9MKGZzdGF0LCBmc3RhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCmluZGV4IGRhZmQ5ODIuLjlmOGYyYzUgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdGF0NjQuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChmc3RhdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXRhdAotICAgIC5lcXUgZnN0YXRhdCwgZnN0YXRhdDY0CitBTElBU19TWU1CT0woZnN0YXRhdCwgZnN0YXRhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0ZnM2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0ZnM2NC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyY2EyZGNkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZnN0YXRmczY0KQotICAgIG1vdiAgICAgeDgsIF9fTlJfZnN0YXRmcwotICAgIHN2YyAgICAgIzAKLQotICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKLSAgICBjbmVnICAgIHgwLCB4MCwgaGkKLSAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0KLSAgICByZXQKLUVORChmc3RhdGZzNjQpCi0KLSAgICAuZ2xvYmwgZnN0YXRmcwotICAgIC5lcXUgZnN0YXRmcywgZnN0YXRmczY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMKaW5kZXggYzZlOTlmNS4uYzIxZTA5OCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mdHJ1bmNhdGUuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKGZ0cnVuY2F0ZSkKIAotICAgIC5nbG9ibCBmdHJ1bmNhdGU2NAotICAgIC5lcXUgZnRydW5jYXRlNjQsIGZ0cnVuY2F0ZQorQUxJQVNfU1lNQk9MKGZ0cnVuY2F0ZTY0LCBmdHJ1bmNhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKaW5kZXggNTE4YWI3My4uMDNlZTlhOCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2dldHJsaW1pdC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9nZXRybGltaXQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKGdldHJsaW1pdCkKIAotICAgIC5nbG9ibCBnZXRybGltaXQ2NAotICAgIC5lcXUgZ2V0cmxpbWl0NjQsIGdldHJsaW1pdAorQUxJQVNfU1lNQk9MKGdldHJsaW1pdDY0LCBnZXRybGltaXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvbHNlZWsuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9sc2Vlay5TCmluZGV4IGRlOTZkZjAuLjkzYWZlYjcgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9sc2Vlay5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9sc2Vlay5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQobHNlZWspCiAKLSAgICAuZ2xvYmwgbHNlZWs2NAotICAgIC5lcXUgbHNlZWs2NCwgbHNlZWsKK0FMSUFTX1NZTUJPTChsc2VlazY0LCBsc2VlaykKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9tbWFwLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvbW1hcC5TCmluZGV4IDY0Yjk1NWUuLjY1MzcxYmMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9tbWFwLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL21tYXAuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKG1tYXApCiAKLSAgICAuZ2xvYmwgbW1hcDY0Ci0gICAgLmVxdSBtbWFwNjQsIG1tYXAKK0FMSUFTX1NZTUJPTChtbWFwNjQsIG1tYXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJlYWQ2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3ByZWFkNjQuUwppbmRleCBlYWZjMDQ0Li42YzlmMGU5IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJlYWQ2NC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wcmVhZDY0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChwcmVhZDY0KQogCi0gICAgLmdsb2JsIHByZWFkCi0gICAgLmVxdSBwcmVhZCwgcHJlYWQ2NAorQUxJQVNfU1lNQk9MKHByZWFkLCBwcmVhZDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3BybGltaXQ2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3BybGltaXQ2NC5TCmluZGV4IDJiZWNlOTkuLjljMDE4YmEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wcmxpbWl0NjQuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChwcmxpbWl0NjQpCiAKLSAgICAuZ2xvYmwgcHJsaW1pdAotICAgIC5lcXUgcHJsaW1pdCwgcHJsaW1pdDY0CitBTElBU19TWU1CT0wocHJsaW1pdCwgcHJsaW1pdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3B3cml0ZTY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHdyaXRlNjQuUwppbmRleCA2OTcwOTU0Li4xNTk5YzE0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHdyaXRlNjQuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHdyaXRlNjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKHB3cml0ZTY0KQogCi0gICAgLmdsb2JsIHB3cml0ZQotICAgIC5lcXUgcHdyaXRlLCBwd3JpdGU2NAorQUxJQVNfU1lNQk9MKHB3cml0ZSwgcHdyaXRlNjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc2VuZGZpbGUuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZW5kZmlsZS5TCmluZGV4IDE3YTBkNDYuLjUwYWMxMmQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZW5kZmlsZS5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZW5kZmlsZS5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQoc2VuZGZpbGUpCiAKLSAgICAuZ2xvYmwgc2VuZGZpbGU2NAotICAgIC5lcXUgc2VuZGZpbGU2NCwgc2VuZGZpbGUKK0FMSUFTX1NZTUJPTChzZW5kZmlsZTY0LCBzZW5kZmlsZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmRlYTQ1NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TCkBAIC0wLDAgKzEsMTQgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc2V0aG9zdG5hbWUpCisgICAgbW92ICAgICB4OCwgX19OUl9zZXRob3N0bmFtZQorICAgIHN2YyAgICAgIzAKKworICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBjbmVnICAgIHgwLCB4MCwgaGkKKyAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisKKyAgICByZXQKK0VORChzZXRob3N0bmFtZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZXRybGltaXQuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZXRybGltaXQuUwppbmRleCA2Y2I2Yjk4Li41MmM3NWExIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldHJsaW1pdC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQoc2V0cmxpbWl0KQogCi0gICAgLmdsb2JsIHNldHJsaW1pdDY0Ci0gICAgLmVxdSBzZXRybGltaXQ2NCwgc2V0cmxpbWl0CitBTElBU19TWU1CT0woc2V0cmxpbWl0NjQsIHNldHJsaW1pdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zdGF0ZnM2NC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3N0YXRmczY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVjOGM1ODguLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3N0YXRmczY0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKHN0YXRmczY0KQotICAgIG1vdiAgICAgeDgsIF9fTlJfc3RhdGZzCi0gICAgc3ZjICAgICAjMAotCi0gICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGNuZWcgICAgeDAsIHgwLCBoaQotICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLQotICAgIHJldAotRU5EKHN0YXRmczY0KQotCi0gICAgLmdsb2JsIHN0YXRmcwotICAgIC5lcXUgc3RhdGZzLCBzdGF0ZnM2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3RydW5jYXRlLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUwppbmRleCAwZTVhMzNlLi5lMDFjYzdkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKHRydW5jYXRlKQogCi0gICAgLmdsb2JsIHRydW5jYXRlNjQKLSAgICAuZXF1IHRydW5jYXRlNjQsIHRydW5jYXRlCitBTElBU19TWU1CT0wodHJ1bmNhdGU2NCwgdHJ1bmNhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbi5jIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YmVnaW4uYwppbmRleCBmYTlmM2YzLi5jNDY0MDVjIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbi5jCisrKyBiL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luLmMKQEAgLTU5LDYgKzU5LDcgQEAKIAogI2luY2x1ZGUgIl9fZHNvX2hhbmRsZS5oIgogI2luY2x1ZGUgImF0ZXhpdC5oIgorI2luY2x1ZGUgInB0aHJlYWRfYXRmb3JrLmgiCiAjaWZkZWYgX19pMzg2X18KICMgaW5jbHVkZSAiLi4vLi4vYXJjaC14ODYvYmlvbmljL19fc3RhY2tfY2hrX2ZhaWxfbG9jYWwuaCIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YmVnaW5fc28uYyBiL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luX3NvLmMKaW5kZXggNjQxZTQ1YS4uMzc1NDM2MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YmVnaW5fc28uYworKysgYi9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jCkBAIC01Niw2ICs1Niw3IEBACiAjIGluY2x1ZGUgIl9fZHNvX2hhbmRsZV9zby5oIgogIyBpbmNsdWRlICJhdGV4aXQuaCIKICNlbmRpZgorI2luY2x1ZGUgInB0aHJlYWRfYXRmb3JrLmgiCiAjaWZkZWYgX19pMzg2X18KICMgaW5jbHVkZSAiLi4vLi4vYXJjaC14ODYvYmlvbmljL19fc3RhY2tfY2hrX2ZhaWxfbG9jYWwuaCIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUyBiL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJyYW5kLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTFiYmZiZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJyYW5kLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisJLnNlY3Rpb24JLm5vdGUuYW5kcm9pZC5pZGVudCwiYSIsJW5vdGUKKwkuYWxpZ24JMgorCS50eXBlCWFiaXRhZywgJW9iamVjdAorYWJpdGFnOgorCS5sb25nCTJmLTFmCQkJLyogaW50MzJfdCBuYW1lc3ogKi8KKwkubG9uZwkzZi0yZgkJCS8qIGludDMyX3QgZGVzY3N6ICovCisJLmxvbmcJMQkJCS8qIGludDMyX3QgdHlwZSAqLworMToJLmFzY2lpCSJBbmRyb2lkXDAiCQkvKiBjaGFyIG5hbWVbXSAqLworMjoJLmxvbmcJUExBVEZPUk1fU0RLX1ZFUlNJT04JLyogaW50MzJfdCBhbmRyb2lkX2FwaSAqLworMzoKKwkuc2l6ZQlhYml0YWcsIC4tYWJpdGFnCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9wdGhyZWFkX2F0Zm9yay5oIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvcHRocmVhZF9hdGZvcmsuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYzQ4YTEyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvcHRocmVhZF9hdGZvcmsuaApAQCAtMCwwICsxLDI5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuIHZvaWQqIF9fZHNvX2hhbmRsZTsKKworZXh0ZXJuIGludCBfX3JlZ2lzdGVyX2F0Zm9yayh2b2lkICgqcHJlcGFyZSkodm9pZCksIHZvaWQgKCpwYXJlbnQpKHZvaWQpLCB2b2lkICgqY2hpbGQpKHZvaWQpLCB2b2lkKiBkc28pOworCisjaWZuZGVmIF9MSUJDCisvLyBMaWJjIHVzZWQgdG8gZXhwb3J0IHRoaXMgaW4gcHJldmlvdXMgdmVyc2lvbnMsIHRoZXJlZm9yZSBpdCBuZWVkcworLy8gdG8gcmVtYWluIGdsb2JhbCBmb3IgYmluYXJ5IGNvbXBhdGliaWxpdHkuCitfX2F0dHJpYnV0ZV9fICgodmlzaWJpbGl0eSAoImhpZGRlbiIpKSkKKyNlbmRpZgoraW50IHB0aHJlYWRfYXRmb3JrKHZvaWQgKCpwcmVwYXJlKSh2b2lkKSwgdm9pZCAoKnBhcmVudCkodm9pZCksIHZvaWQgKCpjaGlsZCkodm9pZCkpIHsKKyAgcmV0dXJuIF9fcmVnaXN0ZXJfYXRmb3JrKHByZXBhcmUsIHBhcmVudCwgY2hpbGQsICZfX2Rzb19oYW5kbGUpOworfQorCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvX3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHMvYmlvbmljL19zZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDIzN2U2ZC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvX3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTUwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBfc2V0am1wLlMsdiAxLjQgMjAwNS8wOC8wNyAxNjo0MDoxNSBlc3BpZSBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgT3BzeWNvbiBBQiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ251bS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2lnbmFsLmg+Ci0KLS8qCi0gKiBfc2V0am1wLCBfbG9uZ2ptcCAobm90IHJlc3RvcmluZyBzaWduYWwgc3RhdGUpCi0gKgotICogWFhYIEZQU0VUIHNob3VsZCBwcm9iYWJseSBiZSB0YWtlbiBmcm9tIFNSIHNldHRpbmcuIGhtbW0uLi4KLSAqICBHUE9GRiBhbmQgRlJBTUVTSVpFIG11c3QgYmUgdGhlIHNhbWUgZm9yIGJvdGggX3NldGptcCBhbmQgX2xvbmdqbXAhCi0gKgotICovCi0KLUZSQU1FU1o9IE1LRlNJWigwLDQpCi1HUE9GRj0gRlJBTUVTWi0yKlJFR1NaCi0KLUxFQUYoX3NldGptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIF9zZXRqbXApCi0JU0FWRV9HUChHUE9GRikKLQkuc2V0CW5vcmVvcmRlcgotI2lmIGRlZmluZWQoX19taXBzNjQpCi0JZGxpCXYwLCAweEFDRURCQURFCQkJIyBzaWdjb250ZXh0IG1hZ2ljIG51bWJlcgotI2Vsc2UKLQlsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbmRpZgotCVJFR19TCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JUkVHX1MJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX1MJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX1MJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX1MJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX1MJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX1MJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX1MJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX1MJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX1MJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCi0JUkVHX0wJdjAsIEdQT0ZGKHNwKQotCVJFR19TCXYwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVBUUl9BRERVIHYwLCBzcCwgRlJBTUVTWgotCVJFR19TCXYwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotCVJFR19TCXJhLCBTQ19QQyhhMCkKLQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQlsaQl2MCwgMQkJCQkjIGJlIG5pY2UgaWYgd2UgY291bGQgdGVsbAotCVJFR19TCXYwLCBTQ19GUFVTRUQoYTApCQkjIHNjX2ZwdXNlZCA9IDEKLQljZmMxCXYwLCAkMzEKLQlzLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCXMuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0JUkVHX1MJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWoJcmEKLQkgbW92ZQl2MCwgemVybwotRU5EKF9zZXRqbXApCi0KLUxFQUYoX2xvbmdqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBfbG9uZ2ptcCkKLQlTQVZFX0dQKEdQT0ZGKQotCS5zZXQgICAgbm9yZW9yZGVyCi0JUkVHX0wJdjAsIFNDX1JFR1MrWkVSTypSRUdTWihhMCkKLQlibmUJdjAsIDB4QUNFREJBREUsIGJvdGNoCQkjIGp1bXAgaWYgZXJyb3IKLQlSRUdfTAlyYSwgU0NfUEMoYTApCi0JUkVHX0wJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotCVJFR19MCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19MCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19MCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19MCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19MCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19MCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19MCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19MCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19MCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQotCVJFR19MCWdwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVJFR19MCXNwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQljdGMxCXYwLCAkMzEKLQlsLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCWwuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLwotCWJuZQlhMSwgemVybywgMWYKLQkgbm9wCi0JbGkJYTEsIDEJCQkjIG5ldmVyIHJldHVybiAwIQotMToKLQlqCXJhCi0JIG1vdmUJdjAsIGExCi0KLWJvdGNoOgotCWphbAlsb25nam1wZXJyb3IKLQlub3AKLQlqYWwJYWJvcnQKLQlub3AKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL2F0ZXhpdC5oIGIvbGliYy9hcmNoLW1pcHMvYmlvbmljL2F0ZXhpdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NTkwMDhjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9hdGV4aXQuaAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotZXh0ZXJuIHZvaWQgKl9fZHNvX2hhbmRsZTsKLWV4dGVybiBpbnQgX19jeGFfYXRleGl0KHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcsIHZvaWQgKmRzbyk7Ci0KLV9fYXR0cmlidXRlX18gKCh2aXNpYmlsaXR5ICgiaGlkZGVuIikpKQotaW50IGF0ZXhpdCh2b2lkICgqZnVuYykodm9pZCkpCi17Ci0gIHJldHVybiAoX19jeGFfYXRleGl0KCh2b2lkICgqKSh2b2lkICopKWZ1bmMsICh2b2lkICopMCwgJl9fZHNvX2hhbmRsZSkpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL2NydGJlZ2luLmMgYi9saWJjL2FyY2gtbWlwcy9iaW9uaWMvY3J0YmVnaW4uYwppbmRleCAyOGU4ODE3Li5kNzJlYzdiIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvY3J0YmVnaW4uYworKysgYi9saWJjL2FyY2gtbWlwcy9iaW9uaWMvY3J0YmVnaW4uYwpAQCAtOTEsNCArOTEsNSBAQAogKTsKIAogI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9fX2Rzb19oYW5kbGUuaCIKLSNpbmNsdWRlICJhdGV4aXQuaCIKKyNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvYXRleGl0LmgiCisjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL3B0aHJlYWRfYXRmb3JrLmgiCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvY3J0YmVnaW5fc28uYyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbl9zby5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNjY0Y2U2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbl9zby5jCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi1leHRlcm4gdm9pZCBfX2N4YV9maW5hbGl6ZSh2b2lkICopOwotZXh0ZXJuIHZvaWQgKl9fZHNvX2hhbmRsZTsKLQotX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiaGlkZGVuIiksZGVzdHJ1Y3RvcikpCi12b2lkIF9fb25fZGxjbG9zZSgpIHsKLSAgX19jeGFfZmluYWxpemUoJl9fZHNvX2hhbmRsZSk7Ci19Ci0KLSNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvX19kc29faGFuZGxlX3NvLmgiCi0jaW5jbHVkZSAiYXRleGl0LmgiCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvc2V0am1wLlMgYi9saWJjL2FyY2gtbWlwcy9iaW9uaWMvc2V0am1wLlMKaW5kZXggMzE3ODZiZS4uYmVkOTU2MiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL3NldGptcC5TCisrKyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zZXRqbXAuUwpAQCAtMSw1ICsxLDMwIEBACi0vKiAgICAgICRPcGVuQlNEOiBzZXRqbXAuUyx2IDEuNSAyMDA1LzA4LzA3IDE2OjQwOjE1IGVzcGllIEV4cCAkICovCi0KKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLwogLyoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKICAqCkBAIC0yOCwxNCArNTMsMTIyIEBACiAgKiBTVUNIIERBTUFHRS4KICAqCiAgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkxLCAxOTkzLCAxOTk1LAorICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogSGF2YXJkIEVpZG5lcy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKy8qCisgKiBDb3B5cmlnaHQgKGMpIDE5OTIsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIFJhbHBoIENhbXBiZWxsLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqCisgKglAKCMpc2lnbmFsLmgJOC4xIChCZXJrZWxleSkgNi8xMC85MworICovCiAKICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ251bS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2lnbmFsLmg+CisjaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KKworLyogam1wYnVmIGlzIGRlY2xhcmVkIHRvIHVzZXJzIGFzIGFuIGFycmF5IG9mIGxvbmdzLCB3aGljaCBpcyBvbmx5CisgKiA0LWJ5dGUgYWxpZ25lZCBpbiAzMi1iaXQgYnVpbGRzLiAgVGhlIE1pcHMgam1wYnVmIGJlZ2lucyB3aXRoIGEKKyAqIGR5bmFtaWNhbGx5LXNpemVkIDAtIG9yIDQtYnl0ZSB1bnVzZWQgZmlsbGVyIHNvIHRoYXQgZG91YmxlLXByZWMgRlAgcmVncworICogYXJlIHNhdmVkIHRvIDgtYnl0ZS1hbGlnbmVkIG1lbSBjZWxscy4KKyAqIEFsbCB0aGUgZm9sbG93aW5nIGptcGJ1ZiBvZmZzZXRzIGFyZSBmcm9tIHRoZSByb3VuZGVkLURPV04gYmFzZSBhZGRyLgorICovCisKKy8qIEZpZWxkcyBvZiBzYW1lIHNpemUgb24gYWxsIE1JUFMgYWJpczogKi8KKy8qICAgICAJZmllbGQ6CQlieXRlIG9mZnNldDoJc2l6ZToJCQkJCQkqLworLyogICAgIAlkeW5hbSBmaWxsZXIJKDAqNCkJCSAgIDAtNCBieXRlcyBvZiByb3VuZGRvd24gZmlsbGVyLCBET04nVCBUT1VDSCEhCisJCQkJCQlvZnRlbiBvdmVybGF5cyB1c2VyIHN0b3JhZ2UhIQkJKi8KKyNkZWZpbmUJU0NfTUFHSUNfT0ZGU0VUCSgxKjQpCQkvKiA0IGJ5dGVzLCBpZGVudGlmeSBqbXBidWYsIGZpcnN0IGFjdHVhbCBmaWVsZCAqLworI2RlZmluZQlTQ19GTEFHX09GRlNFVAkoMio0KQkJLyogNCBieXRlcywgc2F2ZXNpZ3MgZmxhZyAqLworI2RlZmluZQlTQ19GUFNSX09GRlNFVAkoMyo0KQkJLyogNCBieXRlcywgZmxvYXRpbmcgcG9pbnQgY29udHJvbC9zdGF0dXMgcmVnICovCisvKiBmb2xsb3dpbmcgZmllbGRzIGFyZSA4LWJ5dGUgYWxpZ25lZCAqLworI2RlZmluZQlTQ19NQVNLX09GRlNFVAkoNCo0KQkJLyogMTYgYnl0ZXMsIG1pcHMzMi9taXBzNjQgdmVyc2lvbiBvZiBzaWdzZXRfdCAqLworI2RlZmluZQlTQ19TUEFSRV9PRkZTRVQJKDgqNCkJCS8qIDggYnl0ZXMsIHJlc2VydmVkIGZvciBmdXR1cmUgdXNlcyAqLworCisvKiBSZWdpc3RlcnMgdGhhdCBhcmUgNC1ieXRlIG9uIG1pcHMzMiBvMzIsIGFuZCA4LWJ5dGUgb24gbWlwczY0IG42NCBhYmkgKi8KKyNkZWZpbmUJU0NfUkVHU19PRkZTRVQJKDEwKjQpCQkvKiBTQ19SRUdTX0JZVEVTICovCisjZGVmaW5lCVNDX1JFR1NfU0FWRUQJMTIgLypyZWdzKi8JLyogcmEsczAtczgsZ3Asc3AgKi8KKyNkZWZpbmUJU0NfUkVHU19CWVRFUyAgIChTQ19SRUdTX1NBVkVEKlJFR1NaKQorI2RlZmluZQlTQ19SRUdTCQlTQ19SRUdTX09GRlNFVAorCisvKiBEb3VibGUgZmxvYXRpbmcgcHQgcmVnaXN0ZXJzIGFyZSA4LWJ5dGVzIG9uIGFsbCBhYmlzLAorICogYnV0IHRoZSBudW1iZXIgb2Ygc2F2ZWQgZnAgcmVncyB2YXJpZXMgZm9yIG8zMi9uMzIgdmVyc3VzIG42NCBhYmlzOgorICovCisKKyNpZmRlZiBfX0xQNjRfXworI2RlZmluZQlTQ19GUFJFR1NfU0FWRUQJOCAgLyogYWxsICBmcCByZWdzIGYyNCxmMjUsZjI2LGYyNyxmMjgsZjI5LGYzMCxmMzEgKi8KKyNlbHNlCisjZGVmaW5lCVNDX0ZQUkVHU19TQVZFRAk2ICAvKiBldmVuIGZwIHJlZ3MgZjIwLGYyMixmMjQsZjI2LGYyOCxmMzAgKi8KKyNlbmRpZgorCisjZGVmaW5lCVNDX0ZQUkVHU19PRkZTRVQgKFNDX1JFR1NfT0ZGU0VUICsgU0NfUkVHU19CWVRFUykgIC8qIFNDX0ZQUkVHU19CWVRFUyAqLworI2RlZmluZQlTQ19GUFJFR1NfQllURVMgKFNDX0ZQUkVHU19TQVZFRCpSRUdTWl9GUCkKKyNkZWZpbmUJU0NfRlBSRUdTCVNDX0ZQUkVHU19PRkZTRVQKKworI2RlZmluZQlTQ19UT1RBTF9CWVRFUwkoU0NfRlBSRUdTX09GRlNFVCArIFNDX0ZQUkVHU19CWVRFUykKKyNkZWZpbmUJU0NfVE9UQUxfTE9OR1MJKFNDX1RPVEFMX0JZVEVTL1JFR1NaKQorCisjaWYgU0NfVE9UQUxfTE9OR1MgPiBfSkJMRU4KKyNlcnJvciBfSkJMRU4gaXMgdG9vIHNtYWxsCisjZW5kaWYKIAogLyoKLSAqIHNldGptcCwgbG9uZ2ptcCBpbXBsZW1lbnRhdGlvbiBmb3IgbGliYy4gdGhpcyBjb2RlIGRlcGVuZHMKLSAqIG9uIHRoZSBsYXlvdXQgb2YgdGhlIHN0cnVjdCBzaWdjb250ZXh0IGluIG1hY2hpbmUvc2lnbmFsLmguCisgKgorICogIEdQT0ZGIGFuZCBGUkFNRVNJWkUgbXVzdCBiZSB0aGUgc2FtZSBmb3IgYWxsIHNldGptcC9sb25nam1wIHJvdXRpbmVzCiAgKgogICovCiAKQEAgLTQ1LDEzMCArMTc4LDE3OSBAQAogR1BPRkY9IEZSQU1FU1otMipSRUdTWgogUkFPRkY9IEZSQU1FU1otMSpSRUdTWgogCi1OT05fTEVBRihzZXRqbXAsIEZSQU1FU1osIHJhKQorTk9OX0xFQUYoc2lnc2V0am1wLCBGUkFNRVNaLCByYSkKIAkubWFzawkweDgwMDAwMDAwLCBSQU9GRgogCVBUUl9TVUJVIHNwLCBGUkFNRVNaCQkJIyBhbGxvY2F0ZSBzdGFjayBmcmFtZQotCVNFVFVQX0dQNjQoR1BPRkYsIHNldGptcCkKKwlTRVRVUF9HUDY0KEdQT0ZGLCBzaWdzZXRqbXApCiAJU0FWRV9HUChHUE9GRikKIAkuc2V0CXJlb3JkZXIKLQlSRUdfUwlyYSwgUkFPRkYoc3ApCQkJIyBzYXZlIHN0YXRlCisKK3NldGptcF9jb21tb246CisjaWZuZGVmIF9fTFA2NF9fCisJbGkJdDAsIH43CisJYW5kCWEwLCB0MAkJCQkjIHJvdW5kIGptcGJ1ZiBhZGRyIERPV04gdG8gOC1ieXRlIGJvdW5kYXJ5CisjZW5kaWYKKwlzdwlhMSwgU0NfRkxBR19PRkZTRVQoYTApCQkjIHNhdmUgc2F2ZXNpZ3MgZmxhZworCWJlcXoJYTEsIDFmCQkJCSMgZG8gc2F2aW5nIG9mIHNpZ25hbCBtYXNrPworCisJUkVHX1MJcmEsIFJBT0ZGKHNwKQkJCSMgc3BpbGwgc3RhdGUKIAlSRUdfUwlhMCwgQTBPRkYoc3ApCi0KLQltb3ZlCWEwLCB6ZXJvCQkJIyBnZXQgY3VycmVudCBzaWduYWwgbWFzawotCWphbAlzaWdibG9jawotCi0JUkVHX0wJdjEsIEEwT0ZGKHNwKQkJCSMgdjEgPSBqbXBidWYKLQlSRUdfUwl2MCwgU0NfTUFTSyh2MSkJCQkjIHNhdmUgc2NfbWFzayA9IHNpZ2Jsb2NrKDApCi0KLQlSRUdfTAlhMCwgQTBPRkYoc3ApCQkJIyByZXN0b3JlIGptcGJ1ZgorCSMgY2FsbCBzaWdwcm9jbWFzayhpbnQgaG93IGlnbm9yZWQsIHNpZ3NldF90KiBudWxsLCBzaWdzZXRfdCogU0NfTUFTSyhhMCkpOgorCUxBCWEyLCBTQ19NQVNLX09GRlNFVChhMCkJCSMgZ2V0cyBjdXJyZW50IHNpZ25hbCBtYXNrCisJbGkJYTAsIDAJCQkJIyBob3c7IGlnbm9yZWQgd2hlbiBuZXcgbWFzayBpcyBudWxsCisJbGkJYTEsIDAJCQkJIyBudWxsIG5ldyBtYXNrCisJamFsCXNpZ3Byb2NtYXNrCQkJIyBnZXQgY3VycmVudCBzaWduYWwgbWFzaworCVJFR19MCWEwLCBBME9GRihzcCkKIAlSRUdfTAlyYSwgUkFPRkYoc3ApCi0JUkVHX1MJcmEsIFNDX1BDKGEwKQkJCSMgc2NfcGMgPSByZXR1cm4gYWRkcmVzcwotI2lmIGRlZmluZWQoX19taXBzNjQpCi0JZGxpCXYwLCAweEFDRURCQURFCQkJIyBzaWdjb250ZXh0IG1hZ2ljIG51bWJlcgotI2Vsc2UKKzE6CiAJbGkJdjAsIDB4QUNFREJBREUJCQkjIHNpZ2NvbnRleHQgbWFnaWMgbnVtYmVyCi0jZW5kaWYKLQlSRUdfUwl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCVJFR19TCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19TCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19TCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19TCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19TCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19TCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19TCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19TCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19TCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQorCXN3CXYwLCBTQ19NQUdJQ19PRkZTRVQoYTApCisJIyBjYWxsZWUtc2F2ZWQgbG9uZy1zaXplZCByZWdzOgorCVJFR19TCXJhLCBTQ19SRUdTKzAqUkVHU1ooYTApCisJUkVHX1MJczAsIFNDX1JFR1MrMSpSRUdTWihhMCkKKwlSRUdfUwlzMSwgU0NfUkVHUysyKlJFR1NaKGEwKQorCVJFR19TCXMyLCBTQ19SRUdTKzMqUkVHU1ooYTApCisJUkVHX1MJczMsIFNDX1JFR1MrNCpSRUdTWihhMCkKKwlSRUdfUwlzNCwgU0NfUkVHUys1KlJFR1NaKGEwKQorCVJFR19TCXM1LCBTQ19SRUdTKzYqUkVHU1ooYTApCisJUkVHX1MJczYsIFNDX1JFR1MrNypSRUdTWihhMCkKKwlSRUdfUwlzNywgU0NfUkVHUys4KlJFR1NaKGEwKQorCVJFR19TCXM4LCBTQ19SRUdTKzkqUkVHU1ooYTApCiAJUkVHX0wJdjAsIEdQT0ZGKHNwKQotCVJFR19TCXYwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQorCVJFR19TCXYwLCBTQ19SRUdTKzEwKlJFR1NaKGEwKQkjIHNhdmUgZ3AKIAlQVFJfQUREVSB2MCwgc3AsIEZSQU1FU1oKLQlSRUdfUwl2MCwgU0NfUkVHUytTUCpSRUdTWihhMCkKKwlSRUdfUwl2MCwgU0NfUkVHUysxMSpSRUdTWihhMCkJIyBzYXZlIG9yaWcgc3AKIAotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQlsaQl2MCwgMQkJCQkjIGJlIG5pY2UgaWYgd2UgY291bGQgdGVsbAotCVJFR19TCXYwLCBTQ19GUFVTRUQoYTApCQkjIHNjX2ZwdXNlZCA9IDEKIAljZmMxCXYwLCAkMzEKLQlzLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCXMuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQorCisjaWZkZWYgX19MUDY0X18KKwkjIGNhbGxlZS1zYXZlZCBmcCByZWdzIG9uIG1pcHMgbjY0IEFCSSBhcmUgJGYyNC4uJGYzMQorCXMuZAkkZjI0LCBTQ19GUFJFR1MrMCpSRUdTWl9GUChhMCkKKwlzLmQJJGYyNSwgU0NfRlBSRUdTKzEqUkVHU1pfRlAoYTApCisJcy5kCSRmMjYsIFNDX0ZQUkVHUysyKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjI3LCBTQ19GUFJFR1MrMypSRUdTWl9GUChhMCkKKwlzLmQJJGYyOCwgU0NfRlBSRUdTKzQqUkVHU1pfRlAoYTApCisJcy5kCSRmMjksIFNDX0ZQUkVHUys1KlJFR1NaX0ZQKGEwKQorCXMuZAkkZjMwLCBTQ19GUFJFR1MrNipSRUdTWl9GUChhMCkKKwlzLmQJJGYzMSwgU0NfRlBSRUdTKzcqUkVHU1pfRlAoYTApCisjZWxzZQorCSMgY2FsbGVlLXNhdmVkIGZwIHJlZ3Mgb24gbWlwcyBvMzIgQUJJIGFyZQorCSMgICB0aGUgZXZlbi1udW1iZXJlZCBkb3VibGUgZnAgcmVncyAkZjIwLCRmMjIsLi4uJGYzMAorCXMuZAkkZjIwLCBTQ19GUFJFR1MrMCpSRUdTWl9GUChhMCkKKwlzLmQJJGYyMiwgU0NfRlBSRUdTKzEqUkVHU1pfRlAoYTApCisJcy5kCSRmMjQsIFNDX0ZQUkVHUysyKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjI2LCBTQ19GUFJFR1MrMypSRUdTWl9GUChhMCkKKwlzLmQJJGYyOCwgU0NfRlBSRUdTKzQqUkVHU1pfRlAoYTApCisJcy5kCSRmMzAsIFNDX0ZQUkVHUys1KlJFR1NaX0ZQKGEwKQogI2VuZGlmCi0JUkVHX1MJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KKwlzdwl2MCwgU0NfRlBTUl9PRkZTRVQoYTApCiAJbW92ZQl2MCwgemVybwogCVJFU1RPUkVfR1A2NAogCVBUUl9BRERVIHNwLCBGUkFNRVNaCiAJaglyYQorRU5EKHNpZ3NldGptcCkKIAotYm90Y2g6Ci0JamFsCWxvbmdqbXBlcnJvcgotCWphbAlhYm9ydAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCisKKyMgQWx0ZXJuYXRlIGVudHJ5IHBvaW50czoKKworTk9OX0xFQUYoc2V0am1wLCBGUkFNRVNaLCByYSkKKwkubWFzawkweDgwMDAwMDAwLCBSQU9GRgorCVBUUl9TVUJVIHNwLCBGUkFNRVNaCisJU0VUVVBfR1A2NChHUE9GRiwgc2V0am1wKQkJIyBjYW4ndCBzaGFyZSBzaWdzZXRqbXAncyBncCBjb2RlCisJU0FWRV9HUChHUE9GRikKKwkuc2V0CXJlb3JkZXIKKworCWxpCWExLCAxCQkJCSMgc2F2ZS9yZXN0b3JlIHNpZ25hbHMgc3RhdGUKKwliCXNldGptcF9jb21tb24JCQkjIHRhaWwgY2FsbAogRU5EKHNldGptcCkKIAogCi1MRUFGKGxvbmdqbXAsIEZSQU1FU1opCitOT05fTEVBRihfc2V0am1wLCBGUkFNRVNaLCByYSkKKwkubWFzawkweDgwMDAwMDAwLCBSQU9GRgogCVBUUl9TVUJVIHNwLCBGUkFNRVNaCi0JU0VUVVBfR1A2NChHUE9GRiwgbG9uZ2ptcCkKKwlTRVRVUF9HUDY0KEdQT0ZGLCBfc2V0am1wKQkJIyBjYW4ndCBzaGFyZSBzaWdzZXRqbXAncyBncCBjb2RlCiAJU0FWRV9HUChHUE9GRikKIAkuc2V0CXJlb3JkZXIKLQlzdwlhMSwgQTFPRkYoc3ApCi0Jc3cJYTAsIEEwT0ZGKHNwKQogCi0JbHcJYTAsIFNDX01BU0soYTApCi0JamFsCXNpZ3NldG1hc2sKKwlsaQlhMSwgMAkJCQkjIGRvbid0IHNhdmUvcmVzdG9yZSBzaWduYWxzCisJYglzZXRqbXBfY29tbW9uCQkJIyB0YWlsIGNhbGwKK0VORChfc2V0am1wKQogCi0JbHcJYTAsIEEwT0ZGKHNwKQotCWx3CWExLCBBMU9GRihzcCkKIAotCS5zZXQJbm9yZW9yZGVyCi0JUkVHX0wJdjAsIFNDX1JFR1MrWkVSTypSRUdTWihhMCkKLQlibmUJdjAsIDB4QUNFREJBREUsIGJvdGNoCQkjIGp1bXAgaWYgZXJyb3IKLQlSRUdfTAlyYSwgU0NfUEMoYTApCi0JUkVHX0wJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX0wJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX0wJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX0wJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX0wJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX0wJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX0wJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX0wJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX0wJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCi0JUkVHX0wJZ3AsIFNDX1JFR1MrR1AqUkVHU1ooYTApCi0JUkVHX0wJc3AsIFNDX1JFR1MrU1AqUkVHU1ooYTApCitOT05fTEVBRihzaWdsb25nam1wLCBGUkFNRVNaLCByYSkKKwkubWFzawkweDgwMDAwMDAwLCBSQU9GRgorCVBUUl9TVUJVIHNwLCBGUkFNRVNaCisJU0VUVVBfR1A2NChHUE9GRiwgc2lnbG9uZ2ptcCkKKwlTQVZFX0dQKEdQT0ZGKQorCS5zZXQJcmVvcmRlcgogCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCVJFR19MCXYwLCBTQ19GUFJFR1MrKChGU1ItRjApKlJFR1NaKShhMCkKLQljdGMxCXYwLCAkMzEKLQlsLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCWwuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQorI2lmbmRlZiBfX0xQNjRfXworCWxpCXQwLCB+NworCWFuZAlhMCwgdDAJCQkJIyByb3VuZCBqbXBidWYgYWRkciBET1dOIHRvIDgtYnl0ZSBib3VuZGFyeQogI2VuZGlmCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLworCWx3CXYwLCBTQ19NQUdJQ19PRkZTRVQoYTApCisJbGkJdDAsIDB4QUNFREJBREUKKwlibmUJdjAsIHQwLCBsb25nam1wX2JvdGNoCQkjIGp1bXAgaWYgZXJyb3IKKworCWx3CXQwLCBTQ19GTEFHX09GRlNFVChhMCkJCSMgZ2V0IHNhdmVzaWdzIGZsYWcKKwliZXF6CXQwLCAxZgkJCQkjIHJlc3RvcmUgc2lnbmFsIG1hc2s/CisKKwlSRUdfUwlhMSwgQTFPRkYoc3ApCQkJIyB0ZW1wIHNwaWxsCisJUkVHX1MJYTAsIEEwT0ZGKHNwKQorICAgICAgICAjIGNhbGwgc2lncHJvY21hc2soaW50IGhvdyBTSUdfU0VUTUFTSywgc2lnc2V0X3QqIFNDX01BU0soYTApLCBzaWdzZXRfdCogbnVsbCk6CisJTEEJYTEsIFNDX01BU0tfT0ZGU0VUKGEwKQkJIyBzaWduYWxzIGJlaW5nIHJlc3RvcmVkCisJbGkJYTAsIDMJCQkJIyBtaXBzIFNJR19TRVRNQVNLCisJbGkJYTIsIDAJCQkJIyBudWxsCisJamFsCXNpZ3Byb2NtYXNrCQkJIyByZXN0b3JlIHNpZ25hbCBtYXNrCisJUkVHX0wJYTAsIEEwT0ZGKHNwKQorCVJFR19MCWExLCBBMU9GRihzcCkKKzE6CisJIyBjYWxsZWUtc2F2ZWQgbG9uZy1zaXplZCByZWdzOgorCVJFR19MCXJhLCBTQ19SRUdTKzAqUkVHU1ooYTApCisJUkVHX0wJczAsIFNDX1JFR1MrMSpSRUdTWihhMCkKKwlSRUdfTAlzMSwgU0NfUkVHUysyKlJFR1NaKGEwKQorCVJFR19MCXMyLCBTQ19SRUdTKzMqUkVHU1ooYTApCisJUkVHX0wJczMsIFNDX1JFR1MrNCpSRUdTWihhMCkKKwlSRUdfTAlzNCwgU0NfUkVHUys1KlJFR1NaKGEwKQorCVJFR19MCXM1LCBTQ19SRUdTKzYqUkVHU1ooYTApCisJUkVHX0wJczYsIFNDX1JFR1MrNypSRUdTWihhMCkKKwlSRUdfTAlzNywgU0NfUkVHUys4KlJFR1NaKGEwKQorCVJFR19MCXM4LCBTQ19SRUdTKzkqUkVHU1ooYTApCisJUkVHX0wJZ3AsIFNDX1JFR1MrMTAqUkVHU1ooYTApCisJUkVHX0wJc3AsIFNDX1JFR1MrMTEqUkVHU1ooYTApCisKKwlsdwl2MCwgU0NfRlBTUl9PRkZTRVQoYTApCisJY3RjMQl2MCwgJDMxCQkJIyByZXN0b3JlIG9sZCBmciBtb2RlIGJlZm9yZSBmcCB2YWx1ZXMKKyNpZmRlZiBfX0xQNjRfXworCSMgY2FsbGVlLXNhdmVkIGZwIHJlZ3Mgb24gbWlwcyBuNjQgQUJJIGFyZSAkZjI0Li4kZjMxCisJbC5kCSRmMjQsIFNDX0ZQUkVHUyswKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI1LCBTQ19GUFJFR1MrMSpSRUdTWl9GUChhMCkKKwlsLmQJJGYyNiwgU0NfRlBSRUdTKzIqUkVHU1pfRlAoYTApCisJbC5kCSRmMjcsIFNDX0ZQUkVHUyszKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI4LCBTQ19GUFJFR1MrNCpSRUdTWl9GUChhMCkKKwlsLmQJJGYyOSwgU0NfRlBSRUdTKzUqUkVHU1pfRlAoYTApCisJbC5kCSRmMzAsIFNDX0ZQUkVHUys2KlJFR1NaX0ZQKGEwKQorCWwuZAkkZjMxLCBTQ19GUFJFR1MrNypSRUdTWl9GUChhMCkKKyNlbHNlCisJIyBjYWxsZWUtc2F2ZWQgZnAgcmVncyBvbiBtaXBzIG8zMiBBQkkgYXJlCisJIyAgIHRoZSBldmVuLW51bWJlcmVkIGRvdWJsZSBmcCByZWdzICRmMjAsJGYyMiwuLi4kZjMwCisJbC5kCSRmMjAsIFNDX0ZQUkVHUyswKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjIyLCBTQ19GUFJFR1MrMSpSRUdTWl9GUChhMCkKKwlsLmQJJGYyNCwgU0NfRlBSRUdTKzIqUkVHU1pfRlAoYTApCisJbC5kCSRmMjYsIFNDX0ZQUkVHUyszKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI4LCBTQ19GUFJFR1MrNCpSRUdTWl9GUChhMCkKKwlsLmQJJGYzMCwgU0NfRlBSRUdTKzUqUkVHU1pfRlAoYTApCisjZW5kaWYKIAlibmUJYTEsIHplcm8sIDFmCi0JIG5vcAogCWxpCWExLCAxCQkJIyBuZXZlciByZXR1cm4gMCEKIDE6Ci0JaglyYQotCSBtb3ZlCXYwLCBhMQorCW1vdmUJdjAsIGExCisJaglyYQkJCSMgcmV0dXJuIHRvIHNldGptcCBjYWxsIHNpdGUKIAotRU5EKGxvbmdqbXApCitsb25nam1wX2JvdGNoOgorCWphbAlsb25nam1wZXJyb3IKKwlqYWwJYWJvcnQKK0VORChzaWdsb25nam1wKQorCitBTElBU19TWU1CT0wobG9uZ2ptcCwgc2lnbG9uZ2ptcCkKK0FMSUFTX1NZTUJPTChfbG9uZ2ptcCwgc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zaWdzZXRqbXAuUyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zaWdzZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWQyZTVlYS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvc2lnc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi0vKiAkT3BlbkJTRDogc2lnc2V0am1wLlMsdiAxLjUgMjAwNS8wOC8wNyAxNjo0MDoxNSBlc3BpZSBFeHAgJCAqLwotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTEsIDE5OTMsIDE5OTUsCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBIYXZhcmQgRWlkbmVzLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9yZWdudW0uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogdHJhbXBvbGluZXMgZm9yIHNpZ3NldGptcCBhbmQgIHNpZ2xvbmdqbXAgc2F2ZSBhbmQgcmVzdG9yZSBtYXNrLgotICoKLSAqLwotRlJBTUVTWj0gTUtGU0laKDEsMSkKLUdQT0ZGPSBGUkFNRVNaLTIqUkVHU1oKLQotTEVBRihzaWdzZXRqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBzaWdzZXRqbXApCi0JLnNldAlyZW9yZGVyCi0JUkVHX1MJYTEsIChfSkJMRU4qUkVHU1opKGEwKQkJIyBzYXZlICJzYXZlbWFzayIKLQlibmUJYTEsIDB4MCwgMWYJCQkjIGRvIHNhdmluZyBvZiBzaWduYWwgbWFzaz8KLQlMQQl0OSwgX3NldGptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIgdDkKLQotMToJTEEJdDksIHNldGptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIgdDkKLUVORChzaWdzZXRqbXApCi0KLUxFQUYoc2lnbG9uZ2ptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIHNpZ2xvbmdqbXApCi0JLnNldAlyZW9yZGVyCi0JUkVHX0wJdDAsIChfSkJMRU4qUkVHU1opKGEwKQkJIyBnZXQgInNhdmVtYXNrIgotCWJuZQl0MCwgMHgwLCAxZgkJCSMgcmVzdG9yZSBzaWduYWwgbWFzaz8KLQlMQQl0OSwgX2xvbmdqbXAKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWpyCXQ5Ci0xOgotCUxBCXQ5LCBsb25nam1wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqcgl0OQotRU5EKHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvYXNtLmggYi9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvYXNtLmgKaW5kZXggNWVhY2RlMy4uY2RjNzkxNCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCisrKyBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9hc20uaApAQCAtMjgsOSArMjgsNyBAQAogI2lmbmRlZiBfTUlQUzY0X0FTTV9ICiAjZGVmaW5lIF9NSVBTNjRfQVNNX0gKIAotI2lmbmRlZiBfQUxJR05fVEVYVAotIyBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDQKLSNlbmRpZgorI2RlZmluZSBfX2Jpb25pY19hc21fYWxpZ24gNAogCiAjdW5kZWYgX19iaW9uaWNfYXNtX2N1c3RvbV9lbnRyeQogI3VuZGVmIF9fYmlvbmljX2FzbV9jdXN0b21fZW5kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvZWxmX21hY2hkZXAuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCmluZGV4IGQyN2Q0MzEuLjBhYWNlZGYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCisrKyBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCkBAIC0xMjEsNiArMTIxLDcgQEAKICNkZWZpbmUJRFRfTUlQU19HT1RTWU0JCTB4NzAwMDAwMTMJLyogZmlyc3QgZHluYW1pYyBzeW0gaW4gZ290ICovCiAjZGVmaW5lIERUX01JUFNfSElQQUdFTk8JMHg3MDAwMDAxNAogI2RlZmluZQlEVF9NSVBTX1JMRF9NQVAJCTB4NzAwMDAwMTYJLyogYWRkcmVzcyBvZiBsb2FkZXIgbWFwICovCisjZGVmaW5lIERUX01JUFNfUkxEX01BUDIJMHg3MDAwMDAzNQkvKiBvZmZzZXQgb2YgbG9hZGVyIG1hcCwgdXNlZCBmb3IgUElFICovCiAKIC8qCiAgKiBFTEYgRmxhZ3MKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDFhOTAwNC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3MCArMCwwIEBACi0vKgkkT3BlbkJTRDogZW5kaWFuLmgsdiAxLjUgMjAwNi8wMi8yNyAyMzozNTo1OSBtaW9kIEV4cCAkICovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAwMiBPcHN5Y29uIEFCICAod3d3Lm9wc3ljb24uc2UgLyB3d3cub3BzeWNvbi5jb20pCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpZm5kZWYgX01JUFM2NF9FTkRJQU5fSF8KLSNkZWZpbmUgX01JUFM2NF9FTkRJQU5fSF8KLQotI2lmZGVmIF9fR05VQ19fCi0KLSNpZiBkZWZpbmVkKF9fbWlwc19pc2FfcmV2KSAmJiAoX19taXBzX2lzYV9yZXYgPj0gMikKLSNkZWZpbmUgX19zd2FwMTZtZCh4KSAoewkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQxNl90IF94ID0gKHgpOwkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQxNl90IF9yOwkJCQkJXAotICAgIF9fYXNtIHZvbGF0aWxlICgid3NiaCAlMCwgJTEiIDogIj1yIiAoX3IpIDogInIiIChfeCkpOwlcCi0gICAgX3I7CQkJCQkJCQlcCi19KQotCi0jZGVmaW5lIF9fc3dhcDMybWQoeCkgKHsJCQkJCVwKLSAgICByZWdpc3RlciB1aW50MzJfdCBfeCA9ICh4KTsJCQkJCVwKLSAgICByZWdpc3RlciB1aW50MzJfdCBfcjsJCQkJCVwKLSAgICBfX2FzbSB2b2xhdGlsZSAoIndzYmggJTAsICUxOyByb3RyICUwLCAlMCwgMTYiIDogIj1yIiAoX3IpIDogInIiIChfeCkpOyBcCi0gICAgX3I7CQkJCQkJCQlcCi19KQotCi0jZGVmaW5lIF9fc3dhcDY0bWQoeCkgKHsJCQkJCVwKLSAgICB1aW50NjRfdCBfc3dhcDY0bWRfeCA9ICh4KTsJCQkJCVwKLSAgICAodWludDY0X3QpIF9fc3dhcDMybWQoX3N3YXA2NG1kX3ggPj4gMzIpIHwJCQlcCi0gICAgICAgICh1aW50NjRfdCkgX19zd2FwMzJtZChfc3dhcDY0bWRfeCAmIDB4ZmZmZmZmZmYpIDw8IDMyOwlcCi19KQotCi0vKiBUZWxsIHN5cy9lbmRpYW4uaCB3ZSBoYXZlIE1EIHZhcmlhbnRzIG9mIHRoZSBzd2FwIG1hY3Jvcy4gICovCi0jZGVmaW5lIE1EX1NXQVAKLQotI2VuZGlmICAvKiBfX21pcHMzMnIyX18gKi8KLSNlbmRpZiAgLyogX19HTlVDX18gKi8KLQotI2lmIGRlZmluZWQoX19NSVBTRUJfXykKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0JJR19FTkRJQU4KLSNlbHNlCi0jZGVmaW5lIF9CWVRFX09SREVSIF9MSVRUTEVfRU5ESUFOCi0jZW5kaWYKLSNkZWZpbmUgX19TVFJJQ1RfQUxJR05NRU5UCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c3lzL2VuZGlhbi5oPgotCi0jZW5kaWYgLyogX01JUFM2NF9FTkRJQU5fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzYzZjc0Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9leGVjLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxODggKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4ZWMuaCx2IDEuMSAyMDA0LzEwLzE4IDE5OjA1OjM2IGdyYW5nZSBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTk2LTIwMDQgUGVyIEZvZ2Vsc3Ryb20sIE9wc3ljb24gQUIKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2lmbmRlZiBfTUlQUzY0X0VYRUNfSF8KLSNkZWZpbmUgX01JUFM2NF9FWEVDX0hfCi0KLSNkZWZpbmUJX19MRFBHU1oJNDA5NgotCi0vKgotICogIERlZmluZSB3aGF0IGV4ZWMgImZvcm1hdHMiIHdlIHNob3VsZCBoYW5kbGUuCi0gKi8KLSNkZWZpbmUgTkFUSVZFX0VYRUNfRUxGCi0jZGVmaW5lIE5BVElWRV9FTEZTSVpFIDY0Ci0jZGVmaW5lCUVYRUNfU0NSSVBUCi0KLS8qCi0gKiAgSWYgaW5jbHVkZWQgZnJvbSBzeXMvZXhlYy5oIGRlZmluZSBrZXJuZWxzIEVMRiBmb3JtYXQuCi0gKi8KLSNpZmRlZiBfX0xQNjRfXwotI2RlZmluZQlBUkNIX0VMRlNJWkUgNjQKLSNkZWZpbmUgREJfRUxGU0laRSA2NAotI2RlZmluZSBFTEZfVEFSR19DTEFTUyAgRUxGQ0xBU1M2NAotI2Vsc2UKLSNkZWZpbmUJQVJDSF9FTEZTSVpFIDMyCi0jZGVmaW5lIERCX0VMRlNJWkUgMzIKLSNkZWZpbmUgRUxGX1RBUkdfQ0xBU1MgIEVMRkNMQVNTMzIKLSNlbmRpZgotCi0jaWYgZGVmaW5lZChfX01JUFNFQl9fKQotI2RlZmluZSBFTEZfVEFSR19EQVRBCQlFTEZEQVRBMk1TQgotI2Vsc2UKLSNkZWZpbmUgRUxGX1RBUkdfREFUQQkJRUxGREFUQTJMU0IKLSNlbmRpZgotI2RlZmluZSBFTEZfVEFSR19NQUNICQlFTV9NSVBTCi0KLSNkZWZpbmUgX05MSVNUX0RPX0VMRgotCi0jaWYgZGVmaW5lZChfTFA2NCkKLSNkZWZpbmUgX0tFUk5fRE9fRUxGNjQKLSNpZiBkZWZpbmVkKENPTVBBVF9PMzIpCi0jZGVmaW5lIF9LRVJOX0RPX0VMRgotI2VuZGlmCi0jZWxzZQotI2RlZmluZSBfS0VSTl9ET19FTEYKLSNlbmRpZgotCi0vKiBJbmZvcm1hdGlvbiB0YWtlbiBmcm9tIE1JUFMgQUJJIHN1cHBsZW1lbnRhbCAqLwotCi0vKiBBcmNoaXRlY3R1cmUgZGVwZW5kZW50IFNlZ21lbnQgdHlwZXMgLSBwX3R5cGUgKi8KLSNkZWZpbmUgUFRfTUlQU19SRUdJTkZPIDB4NzAwMDAwMDAgICAgICAvKiBSZWdpc3RlciB1c2FnZSBpbmZvcm1hdGlvbiAqLwotCi0vKiBBcmNoaXRlY3R1cmUgZGVwZW5kZW50IGRfdGFnIGZpZWxkIGZvciBFbGYzMl9EeW4uICAqLwotI2RlZmluZSBEVF9NSVBTX1JMRF9WRVJTSU9OICAweDcwMDAwMDAxIC8qIFJ1bnRpbWUgTGlua2VyIEludGVyZmFjZSBJRCAqLwotI2RlZmluZSBEVF9NSVBTX1RJTUVfU1RBTVAgICAweDcwMDAwMDAyIC8qIFRpbWVzdGFtcCAqLwotI2RlZmluZSBEVF9NSVBTX0lDSEVDS1NVTSAgICAweDcwMDAwMDAzIC8qIENrc3VtIG9mIGV4dC4gc3RyLiBhbmQgY29tLiBzaXplcyAqLwotI2RlZmluZSBEVF9NSVBTX0lWRVJTSU9OICAgICAweDcwMDAwMDA0IC8qIFZlcnNpb24gc3RyaW5nIChzdHJpbmcgdGJsIGluZGV4KSAqLwotI2RlZmluZSBEVF9NSVBTX0ZMQUdTICAgICAgICAweDcwMDAwMDA1IC8qIEZsYWdzICovCi0jZGVmaW5lIERUX01JUFNfQkFTRV9BRERSRVNTIDB4NzAwMDAwMDYgLyogU2VnbWVudCBiYXNlIGFkZHJlc3MgKi8KLSNkZWZpbmUgRFRfTUlQU19DT05GTElDVCAgICAgMHg3MDAwMDAwOCAvKiBBZHIgb2YgLmNvbmZsaWN0IHNlY3Rpb24gKi8KLSNkZWZpbmUgRFRfTUlQU19MSUJMSVNUICAgICAgMHg3MDAwMDAwOSAvKiBBZGRyZXNzIG9mIC5saWJsaXN0IHNlY3Rpb24gKi8KLSNkZWZpbmUgRFRfTUlQU19MT0NBTF9HT1ROTyAgMHg3MDAwMDAwYSAvKiBOdW1iZXIgb2YgbG9jYWwgLkdPVCBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfQ09ORkxJQ1ROTyAgIDB4NzAwMDAwMGIgLyogTnVtYmVyIG9mIC5jb25mbGljdCBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfTElCTElTVE5PICAgIDB4NzAwMDAwMTAgLyogTnVtYmVyIG9mIC5saWJsaXN0IGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19TWU1UQUJOTyAgICAgMHg3MDAwMDAxMSAvKiBOdW1iZXIgb2YgLmR5bnN5bSBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfVU5SRUZFWFROTyAgIDB4NzAwMDAwMTIgLyogRmlyc3QgZXh0ZXJuYWwgRFlOU1lNICovCi0jZGVmaW5lIERUX01JUFNfR09UU1lNICAgICAgIDB4NzAwMDAwMTMgLyogRmlyc3QgR09UIGVudHJ5IGluIC5keW5zeW0gKi8KLSNkZWZpbmUgRFRfTUlQU19ISVBBR0VOTyAgICAgMHg3MDAwMDAxNCAvKiBOdW1iZXIgb2YgR09UIHBhZ2UgdGFibGUgZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX1JMRF9NQVAgICAgICAweDcwMDAwMDE2IC8qIEFkZHJlc3Mgb2YgZGVidWcgbWFwIHBvaW50ZXIgKi8KLQotI2RlZmluZSBEVF9QUk9DTlVNIChEVF9NSVBTX1JMRF9NQVAgLSBEVF9MT1BST0MgKyAxKQotCi0vKgotICogTGVnYWwgdmFsdWVzIGZvciBlX2ZsYWdzIGZpZWxkIG9mIEVsZjMyX0VoZHIuCi0gKi8KLSNkZWZpbmUgRUZfTUlQU19OT1JFT1JERVIJMHgwMDAwMDAwMQkvKiAubm9yZW9yZGVyIHdhcyB1c2VkICovCi0jZGVmaW5lIEVGX01JUFNfUElDCQkweDAwMDAwMDAyCS8qIENvbnRhaW5zIFBJQyBjb2RlICovCi0jZGVmaW5lIEVGX01JUFNfQ1BJQwkJMHgwMDAwMDAwNAkvKiBVc2VzIFBJQyBjYWxsaW5nIHNlcXVlbmNlICovCi0jZGVmaW5lCUVGX01JUFNfQUJJMgkJMHgwMDAwMDAyMAkvKiAtbjMyIG9uIElyaXggNiAqLwotI2RlZmluZQlFRl9NSVBTXzMyQklUTU9ERQkweDAwMDAwMTAwCS8qIDY0IGJpdCBpbiAzMiBiaXQgbW9kZS4uLiAqLwotI2RlZmluZSBFRl9NSVBTX0FSQ0gJCTB4ZjAwMDAwMDAJLyogTUlQUyBhcmNoaXRlY3R1cmUgbGV2ZWwgKi8KLSNkZWZpbmUJRV9NSVBTX0FSQ0hfMQkJMHgwMDAwMDAwMAotI2RlZmluZQlFX01JUFNfQVJDSF8yCQkweDEwMDAwMDAwCi0jZGVmaW5lCUVfTUlQU19BUkNIXzMJCTB4MjAwMDAwMDAKLSNkZWZpbmUJRV9NSVBTX0FSQ0hfNAkJMHgzMDAwMDAwMAotI2RlZmluZQlFRl9NSVBTX0FCSQkJMHgwMDAwZjAwMAkvKiBBQkkgbGV2ZWwgKi8KLSNkZWZpbmUJRV9NSVBTX0FCSV9OT05FCQkweDAwMDAwMDAwCS8qIEFCSSBsZXZlbCBub3Qgc2V0ICovCi0jZGVmaW5lCUVfTUlQU19BQklfTzMyCQkweDAwMDAxMDAwCi0jZGVmaW5lCUVfTUlQU19BQklfTzY0CQkweDAwMDAyMDAwCi0jZGVmaW5lCUVfTUlQU19BQklfRUFCSTMyCTB4MDAwMDQwMDAKLSNkZWZpbmUJRV9NSVBTX0FCSV9FQUJJNjQJMHgwMDAwNDAwMAotCi0vKgotICogTWlwcyBzcGVjaWFsIHNlY3Rpb25zLgotICovCi0jZGVmaW5lCVNITl9NSVBTX0FDT01NT04JMHhmZjAwCQkvKiBBbGxvY2F0ZWQgY29tbW9uIHN5bWJvbHMgKi8KLSNkZWZpbmUJU0hOX01JUFNfU0NPTU1PTgkweGZmMDMJCS8qIFNtYWxsIGNvbW1vbiBzeW1ib2xzICovCi0jZGVmaW5lCVNITl9NSVBTX1NVTkRFRklORUQJMHhmZjA0CQkvKiBTbWFsbCB1bmRlZmluZWQgc3ltYm9scyAqLwotCi0vKgotICogTGVnYWwgdmFsdWVzIGZvciBzaF90eXBlIGZpZWxkIG9mIEVsZjMyX1NoZHIuCi0gKi8KLSNkZWZpbmUJU0hUX01JUFNfTElCTElTVCAgMHg3MDAwMDAwMAkvKiBTaGFyZWQgb2JqZWN0cyB1c2VkIGluIGxpbmsgKi8KLSNkZWZpbmUJU0hUX01JUFNfQ09ORkxJQ1QgMHg3MDAwMDAwMgkvKiBDb25mbGljdGluZyBzeW1ib2xzICovCi0jZGVmaW5lCVNIVF9NSVBTX0dQVEFCICAgIDB4NzAwMDAwMDMJLyogR2xvYmFsIGRhdGEgYXJlYSBzaXplcyAqLwotI2RlZmluZQlTSFRfTUlQU19VQ09ERSAgICAweDcwMDAwMDA0CS8qIFJlc2VydmVkIGZvciBTR0kvTUlQUyBjb21waWxlcnMgKi8KLSNkZWZpbmUJU0hUX01JUFNfREVCVUcgICAgMHg3MDAwMDAwNQkvKiBNSVBTIEVDT0ZGIGRlYnVnZ2luZyBpbmZvcm1hdGlvbiAqLwotI2RlZmluZQlTSFRfTUlQU19SRUdJTkZPICAweDcwMDAwMDA2CS8qIFJlZ2lzdGVyIHVzYWdlIGluZm9ybWF0aW9uICovCi0KLS8qCi0gKiBMZWdhbCB2YWx1ZXMgZm9yIHNoX2ZsYWdzIGZpZWxkIG9mIEVsZjMyX1NoZHIuCi0gKi8KLSNkZWZpbmUJU0hGX01JUFNfR1BSRUwJMHgxMDAwMDAwMAkvKiBNdXN0IGJlIHBhcnQgb2YgZ2xvYmFsIGRhdGEgYXJlYSAqLwotCi0jaWYgMAotLyoKLSAqIEVudHJpZXMgZm91bmQgaW4gc2VjdGlvbnMgb2YgdHlwZSBTSFRfTUlQU19HUFRBQi4KLSAqLwotdHlwZWRlZiB1bmlvbiB7Ci0Jc3RydWN0IHsKLQkJRWxmMzJfV29yZCBndF9jdXJyZW50X2dfdmFsdWU7CS8qIC1HIHZhbCB1c2VkIGluIGNvbXBpbGF0aW9uICovCi0JCUVsZjMyX1dvcmQgZ3RfdW51c2VkOwkvKiBOb3QgdXNlZCAqLwotCX0gZ3RfaGVhZGVyOwkJCS8qIEZpcnN0IGVudHJ5IGluIHNlY3Rpb24gKi8KLQlzdHJ1Y3QgewotCQlFbGYzMl9Xb3JkIGd0X2dfdmFsdWU7CS8qIElmIHRoaXMgdmFsIHdlcmUgdXNlZCBmb3IgLUcgKi8KLQkJRWxmMzJfV29yZCBndF9ieXRlczsJLyogVGhpcyBtYW55IGJ5dGVzIHdvdWxkIGJlIHVzZWQgKi8KLQl9IGd0X2VudHJ5OwkJCS8qIFN1YnNlcXVlbnQgZW50cmllcyBpbiBzZWN0aW9uICovCi19IEVsZjMyX2dwdGFiOwotCi0vKgotICogRW50cnkgZm91bmQgaW4gc2VjdGlvbnMgb2YgdHlwZSBTSFRfTUlQU19SRUdJTkZPLgotICovCi10eXBlZGVmIHN0cnVjdCB7Ci0JRWxmMzJfV29yZAlyaV9ncHJtYXNrOwkvKiBHZW5lcmFsIHJlZ2lzdGVycyB1c2VkICovCi0JRWxmMzJfV29yZAlyaV9jcHJtYXNrWzRdOwkvKiBDb3Byb2Nlc3NvciByZWdpc3RlcnMgdXNlZCAqLwotCUVsZjMyX1N3b3JkCXJpX2dwX3ZhbHVlOwkvKiAkZ3AgcmVnaXN0ZXIgdmFsdWUgKi8KLX0gRWxmMzJfUmVnSW5mbzsKLSNlbmRpZgotCi0KLS8qCi0gKiBNaXBzIHJlbG9jYXRpb25zLgotICovCi0KLSNkZWZpbmUJUl9NSVBTX05PTkUJMAkvKiBObyByZWxvYyAqLwotI2RlZmluZQlSX01JUFNfMTYJMQkvKiBEaXJlY3QgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU18zMgkyCS8qIERpcmVjdCAzMiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX1JFTDMyCTMJLyogUEMgcmVsYXRpdmUgMzIgYml0ICovCi0jZGVmaW5lCVJfTUlQU18yNgk0CS8qIERpcmVjdCAyNiBiaXQgc2hpZnRlZCAqLwotI2RlZmluZQlSX01JUFNfSEkxNgk1CS8qIEhpZ2ggMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19MTzE2CTYJLyogTG93IDE2IGJpdCAqLwotI2RlZmluZQlSX01JUFNfR1BSRUwxNgk3CS8qIEdQIHJlbGF0aXZlIDE2IGJpdCAqLwotI2RlZmluZQlSX01JUFNfTElURVJBTAk4CS8qIDE2IGJpdCBsaXRlcmFsIGVudHJ5ICovCi0jZGVmaW5lCVJfTUlQU19HT1QxNgk5CS8qIDE2IGJpdCBHT1QgZW50cnkgKi8KLSNkZWZpbmUJUl9NSVBTX1BDMTYJMTAJLyogUEMgcmVsYXRpdmUgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19DQUxMMTYJMTEJLyogMTYgYml0IEdPVCBlbnRyeSBmb3IgZnVuY3Rpb24gKi8KLSNkZWZpbmUJUl9NSVBTX0dQUkVMMzIJMTIJLyogR1AgcmVsYXRpdmUgMzIgYml0ICovCi0KLSNkZWZpbmUJUl9NSVBTXzY0CTE4Ci0KLSNkZWZpbmUJUl9NSVBTX1JFTDMyXzY0CSgoUl9NSVBTXzY0IDw8IDgpIHwgUl9NSVBTX1JFTDMyKQotCi0KLSNlbmRpZgkvKiAhX01JUFM2NF9FWEVDX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmggYi9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmgKaW5kZXggYWUxODM5Mi4uM2E3Y2Q2OCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3JlZ2RlZi5oCisrKyBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdkZWYuaApAQCAtMzcsNiArMzcsMTMgQEAKICNpZm5kZWYgX01JUFNfUkVHREVGX0hfCiAjZGVmaW5lIF9NSVBTX1JFR0RFRl9IXwogCisjaWYgKF9NSVBTX1NJTSA9PSBfQUJJNjQpICYmICFkZWZpbmVkKF9fbWlwc19uNjQpCisjZGVmaW5lIF9fbWlwc19uNjQgMQorI2VuZGlmCisjaWYgKF9NSVBTX1NJTSA9PSBfQUJJTjMyKSAmJiAgIWRlZmluZWQoX19taXBzX24zMikKKyNkZWZpbmUgX19taXBzX24zMiAxCisjZW5kaWYKKwogI2RlZmluZSB6ZXJvCSQwCS8qIGFsd2F5cyB6ZXJvICovCiAjZGVmaW5lIEFUCSRhdAkvKiBhc3NlbWJsZXIgdGVtcCAqLwogI2RlZmluZSB2MAkkMgkvKiByZXR1cm4gdmFsdWUgKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdudW0uaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdudW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmZlMTI4MC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvcmVnbnVtLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTkgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHJlZ251bS5oLHYgMS4zIDIwMDQvMDgvMTAgMjA6Mjg6MTMgZGVyYWFkdCBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaWZuZGVmIF9NSVBTNjRfUkVHTlVNX0hfCi0jZGVmaW5lIF9NSVBTNjRfUkVHTlVNX0hfCi0KLS8qCi0gKiBMb2NhdGlvbiBvZiB0aGUgc2F2ZWQgcmVnaXN0ZXJzIHJlbGF0aXZlIHRvIFpFUk8uCi0gKiBVc2FnZSBpcyBwLT5wX3JlZ3NbWFhdLgotICovCi0jZGVmaW5lIFpFUk8JMAotI2RlZmluZSBBU1QJMQotI2RlZmluZSBWMAkyCi0jZGVmaW5lIFYxCTMKLSNkZWZpbmUgQTAJNAotI2RlZmluZSBBMQk1Ci0jZGVmaW5lIEEyCTYKLSNkZWZpbmUgQTMJNwotI2RlZmluZSBUMAk4Ci0jZGVmaW5lIFQxCTkKLSNkZWZpbmUgVDIJMTAKLSNkZWZpbmUgVDMJMTEKLSNkZWZpbmUgVDQJMTIKLSNkZWZpbmUgVDUJMTMKLSNkZWZpbmUgVDYJMTQKLSNkZWZpbmUgVDcJMTUKLSNkZWZpbmUgUzAJMTYKLSNkZWZpbmUgUzEJMTcKLSNkZWZpbmUgUzIJMTgKLSNkZWZpbmUgUzMJMTkKLSNkZWZpbmUgUzQJMjAKLSNkZWZpbmUgUzUJMjEKLSNkZWZpbmUgUzYJMjIKLSNkZWZpbmUgUzcJMjMKLSNkZWZpbmUgVDgJMjQKLSNkZWZpbmUgVDkJMjUKLSNkZWZpbmUgSzAJMjYKLSNkZWZpbmUgSzEJMjcKLSNkZWZpbmUgR1AJMjgKLSNkZWZpbmUgU1AJMjkKLSNkZWZpbmUgUzgJMzAKLSNkZWZpbmUgUkEJMzEKLSNkZWZpbmUJU1IJMzIKLSNkZWZpbmUJUFMJU1IJLyogYWxpYXMgZm9yIFNSICovCi0jZGVmaW5lIE1VTExPCTMzCi0jZGVmaW5lIE1VTEhJCTM0Ci0jZGVmaW5lIEJBRFZBRERSIDM1Ci0jZGVmaW5lIENBVVNFCTM2Ci0jZGVmaW5lCVBDCTM3Ci0jZGVmaW5lCUlDCTM4Ci0jZGVmaW5lCUNQTAkzOQotCi0jZGVmaW5lCU5VTVNBVkVSRUdTIDQwCQkvKiBOdW1iZXIgb2YgcmVnaXN0ZXJzIHNhdmVkIGluIHRyYXAgKi8KLQotI2RlZmluZSBGUEJBU0UJTlVNU0FWRVJFR1MKLSNkZWZpbmUgRjAJKEZQQkFTRSswKQotI2RlZmluZSBGMQkoRlBCQVNFKzEpCi0jZGVmaW5lIEYyCShGUEJBU0UrMikKLSNkZWZpbmUgRjMJKEZQQkFTRSszKQotI2RlZmluZSBGNAkoRlBCQVNFKzQpCi0jZGVmaW5lIEY1CShGUEJBU0UrNSkKLSNkZWZpbmUgRjYJKEZQQkFTRSs2KQotI2RlZmluZSBGNwkoRlBCQVNFKzcpCi0jZGVmaW5lIEY4CShGUEJBU0UrOCkKLSNkZWZpbmUgRjkJKEZQQkFTRSs5KQotI2RlZmluZSBGMTAJKEZQQkFTRSsxMCkKLSNkZWZpbmUgRjExCShGUEJBU0UrMTEpCi0jZGVmaW5lIEYxMgkoRlBCQVNFKzEyKQotI2RlZmluZSBGMTMJKEZQQkFTRSsxMykKLSNkZWZpbmUgRjE0CShGUEJBU0UrMTQpCi0jZGVmaW5lIEYxNQkoRlBCQVNFKzE1KQotI2RlZmluZSBGMTYJKEZQQkFTRSsxNikKLSNkZWZpbmUgRjE3CShGUEJBU0UrMTcpCi0jZGVmaW5lIEYxOAkoRlBCQVNFKzE4KQotI2RlZmluZSBGMTkJKEZQQkFTRSsxOSkKLSNkZWZpbmUgRjIwCShGUEJBU0UrMjApCi0jZGVmaW5lIEYyMQkoRlBCQVNFKzIxKQotI2RlZmluZSBGMjIJKEZQQkFTRSsyMikKLSNkZWZpbmUgRjIzCShGUEJBU0UrMjMpCi0jZGVmaW5lIEYyNAkoRlBCQVNFKzI0KQotI2RlZmluZSBGMjUJKEZQQkFTRSsyNSkKLSNkZWZpbmUgRjI2CShGUEJBU0UrMjYpCi0jZGVmaW5lIEYyNwkoRlBCQVNFKzI3KQotI2RlZmluZSBGMjgJKEZQQkFTRSsyOCkKLSNkZWZpbmUgRjI5CShGUEJBU0UrMjkpCi0jZGVmaW5lIEYzMAkoRlBCQVNFKzMwKQotI2RlZmluZSBGMzEJKEZQQkFTRSszMSkKLSNkZWZpbmUJRlNSCShGUEJBU0UrMzIpCi0KLSNkZWZpbmUJTlVNRlBSRUdTIDMzCi0KLSNkZWZpbmUJTlJFR1MJKE5VTVNBVkVSRUdTICsgTlVNRlBSRUdTKQotCi0jZW5kaWYgLyogIV9NSVBTNjRfUkVHTlVNX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmggYi9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKaW5kZXggNTViYTdiZS4uNDA2N2Q1MSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCisrKyBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaApAQCAtNSw2ICs1LDExIEBACiAjaWZuZGVmIF9NSVBTX1NFVEpNUF9IXwogI2RlZmluZSBfTUlQU19TRVRKTVBfSF8KIAotI2RlZmluZQlfSkJMRU4JMTU3CQkvKiBzaXplLCBpbiBsb25ncywgb2YgYSBqbXBfYnVmICovCisjaWZkZWYgX19MUDY0X18KKyNkZWZpbmUJX0pCTEVOCTI1CS8qIHNpemUsIGluIDgtYnl0ZSBsb25ncywgb2YgYSBtaXBzNjQgam1wX2J1Zi9zaWdqbXBfYnVmICovCisjZWxzZQorI2RlZmluZQlfSkJMRU4JMTU3CS8qIGhpc3RvcmljYWwgc2l6ZSwgaW4gNC1ieXRlIGxvbmdzLCBvZiBhIG1pcHMzMiBqbXBfYnVmICovCisJCQkvKiBhY3R1YWwgdXNlZCBzaXplIGlzIDM0ICovCisjZW5kaWYKIAogI2VuZGlmIC8qICFfTUlQU19TRVRKTVBfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zaWduYWwuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zaWduYWwuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjMxNzE1Yy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvc2lnbmFsLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgkkT3BlbkJTRDogc2lnbmFsLmgsdiAxLjggMjAwNi8wMS8wOSAxODoxODozNyBtaWxsZXJ0IEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTIsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIFJhbHBoIENhbXBiZWxsLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKglAKCMpc2lnbmFsLmgJOC4xIChCZXJrZWxleSkgNi8xMC85MwotICovCi0KLSNpZm5kZWYgX01JUFNfU0lHTkFMX0hfCi0jZGVmaW5lIF9NSVBTX1NJR05BTF9IXwotCi0jZGVmaW5lCVNDX1JFR01BU0sJKDAqUkVHU1opCi0jZGVmaW5lCVNDX1NUQVRVUwkoMSpSRUdTWikKLSNkZWZpbmUJU0NfUEMJCSgyKlJFR1NaKQotI2RlZmluZQlTQ19SRUdTCQkoU0NfUEMrOCkKLSNkZWZpbmUJU0NfRlBSRUdTCShTQ19SRUdTKzMyKjgpCi0jZGVmaW5lCVNDX0FDWAkJKFNDX0ZQUkVHUyszMipSRUdTWl9GUCkKLSNkZWZpbmUJU0NfVVNFRF9NQVRICShTQ19BQ1grMypSRUdTWikKLS8qIE9wZW5CU0QgY29tcGF0aWJpbGl0eSAqLwotI2RlZmluZQlTQ19NQVNLCQlTQ19SRUdNQVNLCi0jZGVmaW5lCVNDX0ZQVVNFRAlTQ19VU0VEX01BVEgKLQotI2VuZGlmCS8qICFfTUlQU19TSUdOQUxfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zZ2lkZWZzLmggYi9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL3NnaWRlZnMuaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gbGliYy9pbmNsdWRlL3NnaWRlZnMuaApyZW5hbWUgdG8gbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9zZ2lkZWZzLmgKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL21pcHMubWsgYi9saWJjL2FyY2gtbWlwcy9taXBzLm1rCmluZGV4IGFjNzVhNGIuLjMzZWNlYWIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL21pcHMubWsKKysrIGIvbGliYy9hcmNoLW1pcHMvbWlwcy5tawpAQCAtMSwzNiArMSwxNSBAQAogIyAzMi1iaXQgbWlwcy4KIAogIwotIyBWYXJpb3VzIGtpbmRzIG9mIExQMzIgY3J1ZnQuCi0jCi0KLWxpYmNfYmlvbmljX3NyY19maWxlc19taXBzICs9IFwKLSAgICBiaW9uaWMvbW1hcC5jcHAgXAotCi1saWJjX2NvbW1vbl9zcmNfZmlsZXNfbWlwcyArPSBcCi0gICAgYmlvbmljL2xlZ2FjeV8zMl9iaXRfc3VwcG9ydC5jcHAgXAotICAgIGJpb25pYy9uZGtfY3J1ZnQuY3BwIFwKLSAgICBiaW9uaWMvdGltZTY0LmMgXAotCi1saWJjX25ldGJzZF9zcmNfZmlsZXNfbWlwcyArPSBcCi0gICAgdXBzdHJlYW0tbmV0YnNkL2NvbW1vbi9saWIvbGliYy9oYXNoL3NoYTEvc2hhMS5jIFwKLQotbGliY19vcGVuYnNkX3NyY19maWxlc19taXBzICs9IFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dHcuYyBcCi0KLSMKICMgRGVmYXVsdCBpbXBsZW1lbnRhdGlvbnMgb2YgZnVuY3Rpb25zIHRoYXQgYXJlIGNvbW1vbmx5IG9wdGltaXplZC4KICMKIAogbGliY19iaW9uaWNfc3JjX2ZpbGVzX21pcHMgKz0gXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtY21wLmMgXAogICAgIGJpb25pYy9fX21lbWNweV9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19tZW1zZXRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY3B5X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNhdF9jaGsuY3BwIFwKLSAgICBiaW9uaWMvbWVtY2hyLmMgXAotICAgIGJpb25pYy9tZW1jbXAuYyBcCi0gICAgYmlvbmljL21lbW1vdmUuYyBcCi0gICAgYmlvbmljL21lbXJjaHIuYyBcCiAgICAgYmlvbmljL3N0cmNoci5jcHAgXAogICAgIGJpb25pYy9zdHJubGVuLmMgXAogICAgIGJpb25pYy9zdHJyY2hyLmNwcCBcCkBAIC00Niw3ICsyNSw5IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbW1vdmUuYyBcCiAKIGxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfbWlwcyArPSBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvYmNvcHkuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtY2hyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbW1vdmUuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtcmNoci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBjcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RwbmNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJjYXQuYyBcCkBAIC02Nyw5ICs0OCw3IEBACiAgICAgYXJjaC1taXBzL2Jpb25pYy9iemVyby5TIFwKICAgICBhcmNoLW1pcHMvYmlvbmljL2NhY2hlZmx1c2guY3BwIFwKICAgICBhcmNoLW1pcHMvYmlvbmljL19leGl0X3dpdGhfc3RhY2tfdGVhcmRvd24uUyBcCi0gICAgYXJjaC1taXBzL2Jpb25pYy9fc2V0am1wLlMgXAogICAgIGFyY2gtbWlwcy9iaW9uaWMvc2V0am1wLlMgXAotICAgIGFyY2gtbWlwcy9iaW9uaWMvc2lnc2V0am1wLlMgXAogICAgIGFyY2gtbWlwcy9iaW9uaWMvc3lzY2FsbC5TIFwKICAgICBhcmNoLW1pcHMvYmlvbmljL3Zmb3JrLlMgXAogCkBAIC04MSwxMSArNjAsOSBAQAogCiBlbHNlCiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfbWlwcyArPSBcCi0gICAgYmlvbmljL21lbWNweS5jcHAgXAotICAgIGJpb25pYy9tZW1zZXQuYyBcCi0KLWxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfbWlwcyArPSBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGVuLmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtY3B5LmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvc3RybGVuLmMgXAogCiBlbmRpZgogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9tZW1jbXAuYyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1jbXAuYwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gbGliYy9iaW9uaWMvbWVtY21wLmMKcmVuYW1lIHRvIGxpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1jbXAuYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbWNweS5jIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbWNweS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1NTFhNmQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtY3B5LmMKQEAgLTAsMCArMSw5MSBAQAorLyoJJE9wZW5CU0Q6IG1lbWNweS5jLHYgMS4xIDIwMTQvMTEvMzAgMTk6NDM6NTYgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzeXNsb2cuaD4KKworLyoKKyAqIHNpemVvZih3b3JkKSBNVVNUIEJFIEEgUE9XRVIgT0YgVFdPCisgKiBTTyBUSEFUIHdtYXNrIEJFTE9XIElTIEFMTCBPTkVTCisgKi8KK3R5cGVkZWYJbG9uZyB3b3JkOwkJLyogIndvcmQiIHVzZWQgZm9yIG9wdGltYWwgY29weSBzcGVlZCAqLworCisjZGVmaW5lCXdzaXplCXNpemVvZih3b3JkKQorI2RlZmluZQl3bWFzawkod3NpemUgLSAxKQorCisvKgorICogQ29weSBhIGJsb2NrIG9mIG1lbW9yeSwgbm90IGhhbmRsaW5nIG92ZXJsYXAuCisgKi8KK3ZvaWQgKgorbWVtY3B5KHZvaWQgKmRzdDAsIGNvbnN0IHZvaWQgKnNyYzAsIHNpemVfdCBsZW5ndGgpCit7CisJY2hhciAqZHN0ID0gZHN0MDsKKwljb25zdCBjaGFyICpzcmMgPSBzcmMwOworCXNpemVfdCB0OworCisJaWYgKGxlbmd0aCA9PSAwIHx8IGRzdCA9PSBzcmMpCQkvKiBub3RoaW5nIHRvIGRvICovCisJCWdvdG8gZG9uZTsKKworCS8qCisJICogTWFjcm9zOiBsb29wLXQtdGltZXM7IGFuZCBsb29wLXQtdGltZXMsIHQ+MAorCSAqLworI2RlZmluZQlUTE9PUChzKSBpZiAodCkgVExPT1AxKHMpCisjZGVmaW5lCVRMT09QMShzKSBkbyB7IHM7IH0gd2hpbGUgKC0tdCkKKworCS8qCisJICogQ29weSBmb3J3YXJkLgorCSAqLworCXQgPSAobG9uZylzcmM7CS8qIG9ubHkgbmVlZCBsb3cgYml0cyAqLworCWlmICgodCB8IChsb25nKWRzdCkgJiB3bWFzaykgeworCQkvKgorCQkgKiBUcnkgdG8gYWxpZ24gb3BlcmFuZHMuICBUaGlzIGNhbm5vdCBiZSBkb25lCisJCSAqIHVubGVzcyB0aGUgbG93IGJpdHMgbWF0Y2guCisJCSAqLworCQlpZiAoKHQgXiAobG9uZylkc3QpICYgd21hc2sgfHwgbGVuZ3RoIDwgd3NpemUpCisJCQl0ID0gbGVuZ3RoOworCQllbHNlCisJCQl0ID0gd3NpemUgLSAodCAmIHdtYXNrKTsKKwkJbGVuZ3RoIC09IHQ7CisJCVRMT09QMSgqZHN0KysgPSAqc3JjKyspOworCX0KKwkvKgorCSAqIENvcHkgd2hvbGUgd29yZHMsIHRoZW4gbW9wIHVwIGFueSB0cmFpbGluZyBieXRlcy4KKwkgKi8KKwl0ID0gbGVuZ3RoIC8gd3NpemU7CisJVExPT1AoKih3b3JkICopZHN0ID0gKih3b3JkICopc3JjOyBzcmMgKz0gd3NpemU7IGRzdCArPSB3c2l6ZSk7CisJdCA9IGxlbmd0aCAmIHdtYXNrOworCVRMT09QKCpkc3QrKyA9ICpzcmMrKyk7Citkb25lOgorCXJldHVybiAoZHN0MCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LlMgYi9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LlMKaW5kZXggM2U2MzBjYS4uMDliNzU2YiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbXNldC5TCisrKyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1zZXQuUwpAQCAtNjcsODYgKzY3LDYgQEAKICNkZWZpbmUgREJHCiAjZW5kaWYKIAotLyoKLSAqIHZvaWQgX21lbXNldDE2KHVpbnQxNl90KiBkc3QsIHVpbnQxNl90IHZhbHVlLCBzaXplX3Qgc2l6ZSk7Ci0gKi8KLQotTEVBRihfbWVtc2V0MTYsMCkKLQkuc2V0IG5vcmVvcmRlcgotREJHCS8qIENoZWNrIHBhcmFtZXRlcnMgKi8KLURCRwlhbmRpCXQwLGEwLDEJCQkjIGEwIG11c3QgYmUgaGFsZndvcmQgYWxpZ25lZAotREJHCXRuZQl0MCx6ZXJvCi1EQkcJYW5kaQl0MixhMiwxCQkJIyBhMiBtdXN0IGJlIGV2ZW4KLURCRwl0bmUJdDIsemVybwotCi0jaWZkZWYgRklYQVJHUwotCSMgZW5zdXJlIGNvdW50IGlzIGV2ZW4KLSNpZiAoX19taXBzPT0zMikgJiYgKF9fbWlwc19pc2FfcmV2Pj0yKQotCWlucwlhMix6ZXJvLDAsMQotI2Vsc2UKLQlvcmkJYTIsMQotCXhvcmkJYTIsMQotI2VuZGlmCi0jZW5kaWYKLQotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCWExLGExLDE2LDE2Ci0jZWxzZQotCWFuZGkJYTEsMHhmZmZmCi0Jc2xsCXQzLGExLDE2Ci0Jb3IJYTEsdDMKLSNlbmRpZgotCi0JYmVxeglhMiwuTGRvbmUKLQkgYW5kaQl0MSxhMCwyCi0JYmVxegl0MSwuTGFsaWdub2sKLQkgYWRkdQl0MCxhMCxhMgkJIyB0MCBpcyB0aGUgInBhc3QgdGhlIGVuZCIgYWRkcmVzcwotCXNoCWExLDAoYTApCQkjIHN0b3JlIG9uZSBoYWxmd29yZCB0byBnZXQgYWxpZ25lZAotCWFkZHUJYTAsMgotCXN1YnUJYTIsMgotLkxhbGlnbm9rOgotCXNsdGkJdDEsYTIsNAkJCSMgLkxhbGlnbmVkIGZvciA0IG9yIG1vcmUgYnl0ZXMKLQliZXF6CXQxLC5MYWxpZ25lZAotCSBzbmUJdDEsYTIsMgkJCSMgb25lIG1vcmUgaGFsZndvcmQ/Ci0JYm5legl0MSwuTGRvbmUKLQkgbm9wCi0Jc2gJYTEsMChhMCkKLS5MZG9uZToKLQlqCXJhCi0JIG5vcAotCS5zZXQgcmVvcmRlcgotRU5EKF9tZW1zZXQxNikKLQotLyoKLSAqIHZvaWQgX21lbXNldDMyKHVpbnQzMl90KiBkc3QsIHVpbnQzMl90IHZhbHVlLCBzaXplX3Qgc2l6ZSk7Ci0gKi8KLQotTEVBRihfbWVtc2V0MzIsMCkKLQkuc2V0IG5vcmVvcmRlcgotREJHCS8qIENoZWNrIHBhcmFtZXRlcnMgKi8KLURCRwlhbmRpCXQwLGEwLDMJCQkjIGEwIG11c3QgYmUgd29yZCBhbGlnbmVkCi1EQkcJdG5lCXQwLHplcm8KLURCRwlhbmRpCXQyLGEyLDMJCQkjIGEyIG11c3QgYmUgYSBtdWx0aXBsZSBvZiA0IGJ5dGVzCi1EQkcJdG5lCXQyLHplcm8KLQotI2lmZGVmIEZJWEFSR1MKLQkjIGVuc3VyZSBjb3VudCBpcyBhIG11bHRpcGxlIG9mIDQKLSNpZiAoX19taXBzPT0zMikgJiYgKF9fbWlwc19pc2FfcmV2Pj0yKQotCWlucwkkYTIsJDAsMCwyCi0jZWxzZQotCW9yaQlhMiwzCi0JeG9yaQlhMiwzCi0jZW5kaWYKLSNlbmRpZgotCi0JYm5leglhMiwuTGFsaWduZWQJCSMgYW55IHdvcmsgdG8gZG8/Ci0JIGFkZHUJdDAsYTAsYTIJCSMgdDAgaXMgdGhlICJwYXN0IHRoZSBlbmQiIGFkZHJlc3MKLQotCWoJcmEKLQkgbm9wCi0JLnNldCByZW9yZGVyCi1FTkQoX21lbXNldDMyKQotCiBMRUFGKG1lbXNldCwwKQogCiAJLnNldAlub3Jlb3JkZXIKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21lbXNldC5jIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbXNldC5jCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBsaWJjL2Jpb25pYy9tZW1zZXQuYwpyZW5hbWUgdG8gbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbXNldC5jCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWlwc19zdHJsZW4uYyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9taXBzX3N0cmxlbi5jCmluZGV4IDlmYjdlNmEuLjQ1ZmM0YjQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL3N0cmluZy9taXBzX3N0cmxlbi5jCisrKyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9taXBzX3N0cmxlbi5jCkBAIC0zMCw2ICszMCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlICJtaXBzLXN0cmluZy1vcHMuaCIKIAogI2RlZmluZSBkb19zdHJsZW5fd29yZChfX2F2KSB7XApAQCAtNDcsOCArNDgsOCBAQAogI2RlZmluZSBzdHJsZW4gbXlfc3RybGVuCiAjZW5kaWYKIAotaW50Ci1zdHJsZW4gKGNvbnN0IHZvaWQgKl9hKQorc2l6ZV90CitzdHJsZW4gKGNvbnN0IGNoYXIgKl9hKQogewogICBpbnQgY250ID0gMDsKICAgdW5zaWduZWQgeDsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGVuLmMgYi9saWJjL2FyY2gtbWlwcy9zdHJpbmcvc3RybGVuLmMKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIGxpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGVuLmMKcmVuYW1lIHRvIGxpYmMvYXJjaC1taXBzL3N0cmluZy9zdHJsZW4uYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2Nsb3NlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzU2Y2ZkNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2Nsb3NlLlMKQEAgLTAsMCArMSwyMCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19jbG9zZSkKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgdDkKKyAgICBsaSB2MCwgX19OUl9jbG9zZQorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBsYSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGogdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKK0VORChfX19jbG9zZSkKKy5oaWRkZW4gX19fY2xvc2UKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGUxMWJhZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCkBAIC0wLDAgKzEsMjAgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmFjY2Vzc2F0KQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX2ZhY2Nlc3NhdAorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBsYSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGogdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKK0VORChfX19mYWNjZXNzYXQpCisuaGlkZGVuIF9fX2ZhY2Nlc3NhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmNobW9kLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYzEwMmVjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmNobW9kLlMKQEAgLTAsMCArMSwyMCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2QpCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkIHQ5CisgICAgbGkgdjAsIF9fTlJfZmNobW9kCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKF9fX2ZjaG1vZCkKKy5oaWRkZW4gX19fZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmNobW9kYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNTgxZWZhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmNobW9kYXQuUwpAQCAtMCwwICsxLDIwIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZGF0KQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX2ZjaG1vZGF0CisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKF9fX2ZjaG1vZGF0KQorLmhpZGRlbiBfX19mY2htb2RhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdiZmEyNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKQEAgLTAsMCArMSwxOSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2Nsb2NrX25hbm9zbGVlcCkKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgdDkKKyAgICBsaSB2MCwgX19OUl9jbG9ja19uYW5vc2xlZXAKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBqIHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCitFTkQoX19jbG9ja19uYW5vc2xlZXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOTc4YmM0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpAQCAtMCwwICsxLDE5IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fcnRfc2lncXVldWVpbmZvKQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX3J0X3NpZ3F1ZXVlaW5mbworICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBsYSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGogdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKK0VORChfX3J0X3NpZ3F1ZXVlaW5mbykKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19leGl0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fZXhpdC5TCmluZGV4IDVhYzEzMjQuLjZlOTdhYWMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXQuUwpAQCAtMTgsNSArMTgsNCBAQAogICAgIC5zZXQgcmVvcmRlcgogRU5EKF9leGl0KQogCi0gICAgLmdsb2JsIF9FeGl0Ci0gICAgLmVxdSBfRXhpdCwgX2V4aXQKK0FMSUFTX1NZTUJPTChfRXhpdCwgX2V4aXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MDAyYWI0Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9ja19uYW5vc2xlZXApCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICAuY3Bsb2FkIHQ5Ci0gICAgbGkgdjAsIF9fTlJfY2xvY2tfbmFub3NsZWVwCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgaiB0OQotICAgIG5vcAotICAgIC5zZXQgcmVvcmRlcgotRU5EKGNsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb3NlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9zZS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMzFmNDk3Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb3NlLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb3NlKQotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgLmNwbG9hZCB0OQotICAgIGxpIHYwLCBfX05SX2Nsb3NlCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgaiB0OQotICAgIG5vcAotICAgIC5zZXQgcmVvcmRlcgotRU5EKGNsb3NlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mYWNjZXNzYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTYxNjEwNi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mYWNjZXNzYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmFjY2Vzc2F0KQotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgLmNwbG9hZCB0OQotICAgIGxpIHYwLCBfX05SX2ZhY2Nlc3NhdAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBsYSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIGogdDkKLSAgICBub3AKLSAgICAuc2V0IHJlb3JkZXIKLUVORChmYWNjZXNzYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2htb2QuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYTk1Y2MzLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICAuY3Bsb2FkIHQ5Ci0gICAgbGkgdjAsIF9fTlJfZmNobW9kCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgaiB0OQotICAgIG5vcAotICAgIC5zZXQgcmVvcmRlcgotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2htb2RhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkOWRlMDM2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgLmNwbG9hZCB0OQotICAgIGxpIHYwLCBfX05SX2ZjaG1vZGF0Ci0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgaiB0OQotICAgIG5vcAotICAgIC5zZXQgcmVvcmRlcgotRU5EKGZjaG1vZGF0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXQ2NC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXQ2NC5TCmluZGV4IDUyNWMyM2MuLjE2ZTI3OTEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0NjQuUworKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdDY0LlMKQEAgLTE4LDUgKzE4LDQgQEAKICAgICAuc2V0IHJlb3JkZXIKIEVORChmc3RhdDY0KQogCi0gICAgLmdsb2JsIGZzdGF0Ci0gICAgLmVxdSBmc3RhdCwgZnN0YXQ2NAorQUxJQVNfU1lNQk9MKGZzdGF0LCBmc3RhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXRhdDY0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0NjQuUwppbmRleCBmN2I4ZTFkLi5lYmNmNmIwIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0NjQuUworKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0NjQuUwpAQCAtMTgsNSArMTgsNCBAQAogICAgIC5zZXQgcmVvcmRlcgogRU5EKGZzdGF0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdGF0Ci0gICAgLmVxdSBmc3RhdGF0LCBmc3RhdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdGF0LCBmc3RhdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRob3N0bmFtZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOTg3YjUyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpAQCAtMCwwICsxLDE5IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNldGhvc3RuYW1lKQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX3NldGhvc3RuYW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKHNldGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvX3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvX3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMjM3ZTZkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL19zZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDE1MCArMCwwIEBACi0vKgkkT3BlbkJTRDogX3NldGptcC5TLHYgMS40IDIwMDUvMDgvMDcgMTY6NDA6MTUgZXNwaWUgRXhwICQgKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMiBPcHN5Y29uIEFCICAod3d3Lm9wc3ljb24uc2UgLyB3d3cub3BzeWNvbi5jb20pCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIE9wc3ljb24gQUIgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9yZWdudW0uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NpZ25hbC5oPgotCi0vKgotICogX3NldGptcCwgX2xvbmdqbXAgKG5vdCByZXN0b3Jpbmcgc2lnbmFsIHN0YXRlKQotICoKLSAqIFhYWCBGUFNFVCBzaG91bGQgcHJvYmFibHkgYmUgdGFrZW4gZnJvbSBTUiBzZXR0aW5nLiBobW1tLi4uCi0gKiAgR1BPRkYgYW5kIEZSQU1FU0laRSBtdXN0IGJlIHRoZSBzYW1lIGZvciBib3RoIF9zZXRqbXAgYW5kIF9sb25nam1wIQotICoKLSAqLwotCi1GUkFNRVNaPSBNS0ZTSVooMCw0KQotR1BPRkY9IEZSQU1FU1otMipSRUdTWgotCi1MRUFGKF9zZXRqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBfc2V0am1wKQotCVNBVkVfR1AoR1BPRkYpCi0JLnNldAlub3Jlb3JkZXIKLSNpZiBkZWZpbmVkKF9fbWlwczY0KQotCWRsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbHNlCi0JbGkJdjAsIDB4QUNFREJBREUJCQkjIHNpZ2NvbnRleHQgbWFnaWMgbnVtYmVyCi0jZW5kaWYKLQlSRUdfUwl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCVJFR19TCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19TCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19TCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19TCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19TCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19TCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19TCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19TCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19TCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQotCVJFR19MCXYwLCBHUE9GRihzcCkKLQlSRUdfUwl2MCwgU0NfUkVHUytHUCpSRUdTWihhMCkKLQlQVFJfQUREVSB2MCwgc3AsIEZSQU1FU1oKLQlSRUdfUwl2MCwgU0NfUkVHUytTUCpSRUdTWihhMCkKLQlSRUdfUwlyYSwgU0NfUEMoYTApCi0KLSNpZiAhZGVmaW5lZChTT0ZURkxPQVQpCi0JbGkJdjAsIDEJCQkJIyBiZSBuaWNlIGlmIHdlIGNvdWxkIHRlbGwKLQlSRUdfUwl2MCwgU0NfRlBVU0VEKGEwKQkJIyBzY19mcHVzZWQgPSAxCi0JY2ZjMQl2MCwgJDMxCi0Jcy5kCSRmMjAsIFNDX0ZQUkVHUysoKEYyMC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjIyLCBTQ19GUFJFR1MrKChGMjItRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNCwgU0NfRlBSRUdTKygoRjI0LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjYsIFNDX0ZQUkVHUysoKEYyNi1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI4LCBTQ19GUFJFR1MrKChGMjgtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYzMCwgU0NfRlBSRUdTKygoRjMwLUYwKSpSRUdTWl9GUCkoYTApCi0jaWYgX01JUFNfRlBTRVQgPT0gMzIKLQlzLmQJJGYyMSwgU0NfRlBSRUdTKygoRjIxLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjMsIFNDX0ZQUkVHUysoKEYyMy1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI1LCBTQ19GUFJFR1MrKChGMjUtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNywgU0NfRlBSRUdTKygoRjI3LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjksIFNDX0ZQUkVHUysoKEYyOS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjMxLCBTQ19GUFJFR1MrKChGMzEtRjApKlJFR1NaX0ZQKShhMCkKLSNlbmRpZgotCVJFR19TCXYwLCBTQ19GUFJFR1MrKChGU1ItRjApKlJFR1NaKShhMCkKLSNlbmRpZiAvKiAhU09GVEZMT0FUICovCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqCXJhCi0JIG1vdmUJdjAsIHplcm8KLUVORChfc2V0am1wKQotCi1MRUFGKF9sb25nam1wLCBGUkFNRVNaKQotCVBUUl9TVUJVIHNwLCBGUkFNRVNaCi0JU0VUVVBfR1A2NChHUE9GRiwgX2xvbmdqbXApCi0JU0FWRV9HUChHUE9GRikKLQkuc2V0ICAgIG5vcmVvcmRlcgotCVJFR19MCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JYm5lCXYwLCAweEFDRURCQURFLCBib3RjaAkJIyBqdW1wIGlmIGVycm9yCi0JUkVHX0wJcmEsIFNDX1BDKGEwKQotCVJFR19MCXYwLCBTQ19GUFJFR1MrKChGU1ItRjApKlJFR1NaKShhMCkKLQlSRUdfTAlzMCwgU0NfUkVHUytTMCpSRUdTWihhMCkKLQlSRUdfTAlzMSwgU0NfUkVHUytTMSpSRUdTWihhMCkKLQlSRUdfTAlzMiwgU0NfUkVHUytTMipSRUdTWihhMCkKLQlSRUdfTAlzMywgU0NfUkVHUytTMypSRUdTWihhMCkKLQlSRUdfTAlzNCwgU0NfUkVHUytTNCpSRUdTWihhMCkKLQlSRUdfTAlzNSwgU0NfUkVHUytTNSpSRUdTWihhMCkKLQlSRUdfTAlzNiwgU0NfUkVHUytTNipSRUdTWihhMCkKLQlSRUdfTAlzNywgU0NfUkVHUytTNypSRUdTWihhMCkKLQlSRUdfTAlzOCwgU0NfUkVHUytTOCpSRUdTWihhMCkKLQlSRUdfTAlncCwgU0NfUkVHUytHUCpSRUdTWihhMCkKLQlSRUdfTAlzcCwgU0NfUkVHUytTUCpSRUdTWihhMCkKLSNpZiAhZGVmaW5lZChTT0ZURkxPQVQpCi0JY3RjMQl2MCwgJDMxCi0JbC5kCSRmMjAsIFNDX0ZQUkVHUysoKEYyMC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjIyLCBTQ19GUFJFR1MrKChGMjItRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNCwgU0NfRlBSRUdTKygoRjI0LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjYsIFNDX0ZQUkVHUysoKEYyNi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI4LCBTQ19GUFJFR1MrKChGMjgtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYzMCwgU0NfRlBSRUdTKygoRjMwLUYwKSpSRUdTWl9GUCkoYTApCi0jaWYgX01JUFNfRlBTRVQgPT0gMzIKLQlsLmQJJGYyMSwgU0NfRlBSRUdTKygoRjIxLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjMsIFNDX0ZQUkVHUysoKEYyMy1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI1LCBTQ19GUFJFR1MrKChGMjUtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNywgU0NfRlBSRUdTKygoRjI3LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjksIFNDX0ZQUkVHUysoKEYyOS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMxLCBTQ19GUFJFR1MrKChGMzEtRjApKlJFR1NaX0ZQKShhMCkKLSNlbmRpZgotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KLQlibmUJYTEsIHplcm8sIDFmCi0JIG5vcAotCWxpCWExLCAxCQkJIyBuZXZlciByZXR1cm4gMCEKLTE6Ci0JaglyYQotCSBtb3ZlCXYwLCBhMQotCi1ib3RjaDoKLQlqYWwJbG9uZ2ptcGVycm9yCi0Jbm9wCi0JamFsCWFib3J0Ci0Jbm9wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLUVORChfbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2F0ZXhpdC5oIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvYXRleGl0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc1OTAwOGMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvYXRleGl0LmgKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLWV4dGVybiB2b2lkICpfX2Rzb19oYW5kbGU7Ci1leHRlcm4gaW50IF9fY3hhX2F0ZXhpdCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnLCB2b2lkICpkc28pOwotCi1fX2F0dHJpYnV0ZV9fICgodmlzaWJpbGl0eSAoImhpZGRlbiIpKSkKLWludCBhdGV4aXQodm9pZCAoKmZ1bmMpKHZvaWQpKQotewotICByZXR1cm4gKF9fY3hhX2F0ZXhpdCgodm9pZCAoKikodm9pZCAqKSlmdW5jLCAodm9pZCAqKTAsICZfX2Rzb19oYW5kbGUpKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2NydGJlZ2luLmMgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9jcnRiZWdpbi5jCmluZGV4IDJlYTMxYWQuLmJkZDQyM2IgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2NydGJlZ2luLmMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvY3J0YmVnaW4uYwpAQCAtOTEsNCArOTEsNSBAQAogKTsKIAogI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9fX2Rzb19oYW5kbGUuaCIKLSNpbmNsdWRlICJhdGV4aXQuaCIKKyNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvYXRleGl0LmgiCisjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL3B0aHJlYWRfYXRmb3JrLmgiCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9jcnRiZWdpbl9zby5jIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvY3J0YmVnaW5fc28uYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDY2NGNlNi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9jcnRiZWdpbl9zby5jCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi1leHRlcm4gdm9pZCBfX2N4YV9maW5hbGl6ZSh2b2lkICopOwotZXh0ZXJuIHZvaWQgKl9fZHNvX2hhbmRsZTsKLQotX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiaGlkZGVuIiksZGVzdHJ1Y3RvcikpCi12b2lkIF9fb25fZGxjbG9zZSgpIHsKLSAgX19jeGFfZmluYWxpemUoJl9fZHNvX2hhbmRsZSk7Ci19Ci0KLSNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvX19kc29faGFuZGxlX3NvLmgiCi0jaW5jbHVkZSAiYXRleGl0LmgiCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMTc4NmJlLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTc0ICswLDAgQEAKLS8qICAgICAgJE9wZW5CU0Q6IHNldGptcC5TLHYgMS41IDIwMDUvMDgvMDcgMTY6NDA6MTUgZXNwaWUgRXhwICQgKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMS0yMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgT3BzeWNvbiBBQiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ251bS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2lnbmFsLmg+Ci0KLS8qCi0gKiBzZXRqbXAsIGxvbmdqbXAgaW1wbGVtZW50YXRpb24gZm9yIGxpYmMuIHRoaXMgY29kZSBkZXBlbmRzCi0gKiBvbiB0aGUgbGF5b3V0IG9mIHRoZSBzdHJ1Y3Qgc2lnY29udGV4dCBpbiBtYWNoaW5lL3NpZ25hbC5oLgotICoKLSAqLwotCi1GUkFNRVNaPSBNS0ZTSVooMiw2KQotQTFPRkY9IEZSQU1FU1otNCpSRUdTWgotQTBPRkY9IEZSQU1FU1otMypSRUdTWgotR1BPRkY9IEZSQU1FU1otMipSRUdTWgotUkFPRkY9IEZSQU1FU1otMSpSRUdTWgotCi1OT05fTEVBRihzZXRqbXAsIEZSQU1FU1osIHJhKQotCS5tYXNrCTB4ODAwMDAwMDAsIFJBT0ZGCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oJCQkjIGFsbG9jYXRlIHN0YWNrIGZyYW1lCi0JU0VUVVBfR1A2NChHUE9GRiwgc2V0am1wKQotCVNBVkVfR1AoR1BPRkYpCi0JLnNldAlyZW9yZGVyCi0JUkVHX1MJcmEsIFJBT0ZGKHNwKQkJCSMgc2F2ZSBzdGF0ZQotCVJFR19TCWEwLCBBME9GRihzcCkKLQotCW1vdmUJYTAsIHplcm8JCQkjIGdldCBjdXJyZW50IHNpZ25hbCBtYXNrCi0JamFsCXNpZ2Jsb2NrCi0KLQlSRUdfTAl2MSwgQTBPRkYoc3ApCQkJIyB2MSA9IGptcGJ1ZgotCVJFR19TCXYwLCBTQ19NQVNLKHYxKQkJCSMgc2F2ZSBzY19tYXNrID0gc2lnYmxvY2soMCkKLQotCVJFR19MCWEwLCBBME9GRihzcCkJCQkjIHJlc3RvcmUgam1wYnVmCi0JUkVHX0wJcmEsIFJBT0ZGKHNwKQotCVJFR19TCXJhLCBTQ19QQyhhMCkJCQkjIHNjX3BjID0gcmV0dXJuIGFkZHJlc3MKLSNpZiBkZWZpbmVkKF9fbWlwczY0KQotCWRsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbHNlCi0JbGkJdjAsIDB4QUNFREJBREUJCQkjIHNpZ2NvbnRleHQgbWFnaWMgbnVtYmVyCi0jZW5kaWYKLQlSRUdfUwl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCVJFR19TCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19TCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19TCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19TCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19TCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19TCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19TCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19TCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19TCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQotCVJFR19MCXYwLCBHUE9GRihzcCkKLQlSRUdfUwl2MCwgU0NfUkVHUytHUCpSRUdTWihhMCkKLQlQVFJfQUREVSB2MCwgc3AsIEZSQU1FU1oKLQlSRUdfUwl2MCwgU0NfUkVHUytTUCpSRUdTWihhMCkKLQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQlsaQl2MCwgMQkJCQkjIGJlIG5pY2UgaWYgd2UgY291bGQgdGVsbAotCVJFR19TCXYwLCBTQ19GUFVTRUQoYTApCQkjIHNjX2ZwdXNlZCA9IDEKLQljZmMxCXYwLCAkMzEKLQlzLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCXMuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0JUkVHX1MJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KLQltb3ZlCXYwLCB6ZXJvCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqCXJhCi0KLWJvdGNoOgotCWphbAlsb25nam1wZXJyb3IKLQlqYWwJYWJvcnQKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotRU5EKHNldGptcCkKLQotCi1MRUFGKGxvbmdqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBsb25nam1wKQotCVNBVkVfR1AoR1BPRkYpCi0JLnNldAlyZW9yZGVyCi0Jc3cJYTEsIEExT0ZGKHNwKQotCXN3CWEwLCBBME9GRihzcCkKLQotCWx3CWEwLCBTQ19NQVNLKGEwKQotCWphbAlzaWdzZXRtYXNrCi0KLQlsdwlhMCwgQTBPRkYoc3ApCi0JbHcJYTEsIEExT0ZGKHNwKQotCi0JLnNldAlub3Jlb3JkZXIKLQlSRUdfTAl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCWJuZQl2MCwgMHhBQ0VEQkFERSwgYm90Y2gJCSMganVtcCBpZiBlcnJvcgotCVJFR19MCXJhLCBTQ19QQyhhMCkKLQlSRUdfTAlzMCwgU0NfUkVHUytTMCpSRUdTWihhMCkKLQlSRUdfTAlzMSwgU0NfUkVHUytTMSpSRUdTWihhMCkKLQlSRUdfTAlzMiwgU0NfUkVHUytTMipSRUdTWihhMCkKLQlSRUdfTAlzMywgU0NfUkVHUytTMypSRUdTWihhMCkKLQlSRUdfTAlzNCwgU0NfUkVHUytTNCpSRUdTWihhMCkKLQlSRUdfTAlzNSwgU0NfUkVHUytTNSpSRUdTWihhMCkKLQlSRUdfTAlzNiwgU0NfUkVHUytTNipSRUdTWihhMCkKLQlSRUdfTAlzNywgU0NfUkVHUytTNypSRUdTWihhMCkKLQlSRUdfTAlzOCwgU0NfUkVHUytTOCpSRUdTWihhMCkKLQlSRUdfTAlncCwgU0NfUkVHUytHUCpSRUdTWihhMCkKLQlSRUdfTAlzcCwgU0NfUkVHUytTUCpSRUdTWihhMCkKLQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQlSRUdfTAl2MCwgU0NfRlBSRUdTKygoRlNSLUYwKSpSRUdTWikoYTApCi0JY3RjMQl2MCwgJDMxCi0JbC5kCSRmMjAsIFNDX0ZQUkVHUysoKEYyMC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjIyLCBTQ19GUFJFR1MrKChGMjItRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNCwgU0NfRlBSRUdTKygoRjI0LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjYsIFNDX0ZQUkVHUysoKEYyNi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI4LCBTQ19GUFJFR1MrKChGMjgtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYzMCwgU0NfRlBSRUdTKygoRjMwLUYwKSpSRUdTWl9GUCkoYTApCi0jaWYgX01JUFNfRlBTRVQgPT0gMzIKLQlsLmQJJGYyMSwgU0NfRlBSRUdTKygoRjIxLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjMsIFNDX0ZQUkVHUysoKEYyMy1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI1LCBTQ19GUFJFR1MrKChGMjUtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNywgU0NfRlBSRUdTKygoRjI3LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjksIFNDX0ZQUkVHUysoKEYyOS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMxLCBTQ19GUFJFR1MrKChGMzEtRjApKlJFR1NaX0ZQKShhMCkKLSNlbmRpZgotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KLQlibmUJYTEsIHplcm8sIDFmCi0JIG5vcAotCWxpCWExLCAxCQkJIyBuZXZlciByZXR1cm4gMCEKLTE6Ci0JaglyYQotCSBtb3ZlCXYwLCBhMQotCi1FTkQobG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMC4uYjExN2JiNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TCkBAIC0wLDAgKzEgQEAKKy4uLy4uL2FyY2gtbWlwcy9iaW9uaWMvc2V0am1wLlMKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zaWdzZXRqbXAuUyBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NpZ3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZDJlNWVhLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NpZ3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotLyogJE9wZW5CU0Q6IHNpZ3NldGptcC5TLHYgMS41IDIwMDUvMDgvMDcgMTY6NDA6MTUgZXNwaWUgRXhwICQgKi8KLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkxLCAxOTkzLCAxOTk1LAotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogSGF2YXJkIEVpZG5lcy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvcmVnbnVtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KLQotLyoKLSAqIHRyYW1wb2xpbmVzIGZvciBzaWdzZXRqbXAgYW5kICBzaWdsb25nam1wIHNhdmUgYW5kIHJlc3RvcmUgbWFzay4KLSAqCi0gKi8KLUZSQU1FU1o9IE1LRlNJWigxLDEpCi1HUE9GRj0gRlJBTUVTWi0yKlJFR1NaCi0KLUxFQUYoc2lnc2V0am1wLCBGUkFNRVNaKQotCVBUUl9TVUJVIHNwLCBGUkFNRVNaCi0JU0VUVVBfR1A2NChHUE9GRiwgc2lnc2V0am1wKQotCS5zZXQJcmVvcmRlcgotCVJFR19TCWExLCAoX0pCTEVOKlJFR1NaKShhMCkJCSMgc2F2ZSAic2F2ZW1hc2siCi0JYm5lCWExLCAweDAsIDFmCQkJIyBkbyBzYXZpbmcgb2Ygc2lnbmFsIG1hc2s/Ci0JTEEJdDksIF9zZXRqbXAKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWpyIHQ5Ci0KLTE6CUxBCXQ5LCBzZXRqbXAKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWpyIHQ5Ci1FTkQoc2lnc2V0am1wKQotCi1MRUFGKHNpZ2xvbmdqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBzaWdsb25nam1wKQotCS5zZXQJcmVvcmRlcgotCVJFR19MCXQwLCAoX0pCTEVOKlJFR1NaKShhMCkJCSMgZ2V0ICJzYXZlbWFzayIKLQlibmUJdDAsIDB4MCwgMWYJCQkjIHJlc3RvcmUgc2lnbmFsIG1hc2s/Ci0JTEEJdDksIF9sb25nam1wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqcgl0OQotMToKLQlMQQl0OSwgbG9uZ2ptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIJdDkKLUVORChzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc3RhdC5jcHAgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zdGF0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNzY3ZmJkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc3RhdC5jcHAKQEAgLTAsMCArMSwxMDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N5c2NhbGwuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworc3RydWN0IGtlcm5lbF9zdGF0IHsKKyB1bnNpZ25lZCBpbnQgc3RfZGV2OworIHVuc2lnbmVkIGludCBzdF9wYWQwWzNdOworIHVuc2lnbmVkIGxvbmcgc3RfaW5vOworIG1vZGVfdCBzdF9tb2RlOworIF9fdTMyIHN0X25saW5rOworIHVpZF90IHN0X3VpZDsKKyBnaWRfdCBzdF9naWQ7CisgdW5zaWduZWQgaW50IHN0X3JkZXY7CisgdW5zaWduZWQgaW50IHN0X3BhZDFbM107CisgX19rZXJuZWxfb2ZmX3Qgc3Rfc2l6ZTsKKyB1bnNpZ25lZCBpbnQgX3N0X2F0aW1lOworIHVuc2lnbmVkIGludCBzdF9hdGltZV9uc2VjOworIHVuc2lnbmVkIGludCBfc3RfbXRpbWU7CisgdW5zaWduZWQgaW50IHN0X210aW1lX25zZWM7CisgdW5zaWduZWQgaW50IF9zdF9jdGltZTsKKyB1bnNpZ25lZCBpbnQgc3RfY3RpbWVfbnNlYzsKKyB1bnNpZ25lZCBpbnQgc3RfYmxrc2l6ZTsKKyB1bnNpZ25lZCBpbnQgc3RfcGFkMjsKKyB1bnNpZ25lZCBsb25nIHN0X2Jsb2NrczsKK307CisKK3ZvaWQgY29weV9zdGF0KHN0cnVjdCBzdGF0ICpzdCwgc3RydWN0IGtlcm5lbF9zdGF0ICpzKQoreworICBzdC0+c3RfZGV2ID0gc3RhdGljX2Nhc3Q8ZGV2X3Q+KHMtPnN0X2Rldik7CisgIHN0LT5zdF9pbm8gPSBzdGF0aWNfY2FzdDxpbm9fdD4ocy0+c3RfaW5vKTsKKyAgc3QtPnN0X21vZGUgPSBzdGF0aWNfY2FzdDxtb2RlX3Q+KHMtPnN0X21vZGUpOworICBzdC0+c3RfbmxpbmsgPSBzdGF0aWNfY2FzdDxubGlua190PihzLT5zdF9ubGluayk7CisgIHN0LT5zdF91aWQgPSBzdGF0aWNfY2FzdDx1aWRfdD4ocy0+c3RfdWlkKTsKKyAgc3QtPnN0X2dpZCA9IHN0YXRpY19jYXN0PGdpZF90PihzLT5zdF9naWQpOworICBzdC0+c3RfcmRldiA9IHN0YXRpY19jYXN0PGRldl90PihzLT5zdF9yZGV2KTsKKyAgc3QtPnN0X3NpemUgPSBzdGF0aWNfY2FzdDxvZmZfdD4ocy0+c3Rfc2l6ZSk7CisgIHN0LT5zdF9ibGtzaXplID0gc3RhdGljX2Nhc3Q8aW50PihzLT5zdF9ibGtzaXplKTsKKyAgc3QtPnN0X2Jsb2NrcyA9IHN0YXRpY19jYXN0PGxvbmc+KHMtPnN0X2Jsb2Nrcyk7CisgIHN0LT5zdF9hdGltLnR2X3NlYyA9IHN0YXRpY19jYXN0PHRpbWVfdD4ocy0+X3N0X2F0aW1lKTsKKyAgc3QtPnN0X2F0aW0udHZfbnNlYyA9IHN0YXRpY19jYXN0PGxvbmc+KHMtPnN0X2F0aW1lX25zZWMpOworICBzdC0+c3RfbXRpbS50dl9zZWMgPSBzdGF0aWNfY2FzdDx0aW1lX3Q+KHMtPl9zdF9tdGltZSk7CisgIHN0LT5zdF9tdGltLnR2X25zZWMgPSBzdGF0aWNfY2FzdDxsb25nPihzLT5zdF9tdGltZV9uc2VjKTsKKyAgc3QtPnN0X2N0aW0udHZfc2VjID0gc3RhdGljX2Nhc3Q8dGltZV90PihzLT5fc3RfY3RpbWUpOworICBzdC0+c3RfY3RpbS50dl9uc2VjID0gc3RhdGljX2Nhc3Q8bG9uZz4ocy0+c3RfY3RpbWVfbnNlYyk7Cit9CisKK2ludCBmc3RhdChpbnQgZnAsIHN0cnVjdCBzdGF0ICpzdCkKK3sKKyAga2VybmVsX3N0YXQgczsKKyAgaW50IHJldDsKKyAgcmV0ID0gc3lzY2FsbCAoX19OUl9mc3RhdCwgZnAsICZzKTsKKyAgY29weV9zdGF0IChzdCwgJnMpOworICByZXR1cm4gcmV0OworfQorX19zdHJvbmdfYWxpYXMoZnN0YXQ2NCwgZnN0YXQpOworCitpbnQgbmV3ZnN0YXRhdChpbnQgZGlyZmQsIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBzdHJ1Y3Qgc3RhdCAqYnVmLCBpbnQgZmxhZ3MpCit7CisgICBrZXJuZWxfc3RhdCBzOworICAgaW50IHJldDsKKyAgIHJldCA9IHN5c2NhbGwoX19OUl9uZXdmc3RhdGF0LCBkaXJmZCwgcGF0aG5hbWUsICZzLCBmbGFncyk7CisgICBjb3B5X3N0YXQoYnVmLCAmcyk7CisgICByZXR1cm4gcmV0OworfQorCitpbnQgZnN0YXRhdChpbnQgZGlyZmQsIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBzdHJ1Y3Qgc3RhdCAqYnVmLCBpbnQgZmxhZ3MpCit7CisgICBrZXJuZWxfc3RhdCBzOworICAgaW50IHJldDsKKyAgIHJldCA9IHN5c2NhbGwoX19OUl9uZXdmc3RhdGF0LCBkaXJmZCwgcGF0aG5hbWUsICZzLCBmbGFncyk7CisgICBjb3B5X3N0YXQoYnVmLCAmcyk7CisgICByZXR1cm4gcmV0OworfQorX19zdHJvbmdfYWxpYXMoZnN0YXRhdDY0LCBmc3RhdGF0KTsKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3N5c2NhbGwuUyBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3N5c2NhbGwuUwppbmRleCA5MjQ3NDFkLi40YzczOWZkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zeXNjYWxsLlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc3lzY2FsbC5TCkBAIC01Miw3ICs1Miw3IEBACiAjZWxzZQogCW1vdmUJYTMsIGE0CiAJbW92ZQlhNCwgYTUKLQlSRUdfTAlhNSwgRlJBTUVTWihzcCkKKwltb3ZlCWE1LCBhNgogI2VuZGlmCiAJc3lzY2FsbAogCW1vdmUJYTAsIHYwCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUgYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMC4uZmFiYmU4YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZQpAQCAtMCwwICsxIEBACisuLi9hcmNoLW1pcHMvaW5jbHVkZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlYWNkZTMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKKysrIC9kZXYvbnVsbApAQCAtMSwyMDggKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGFzbS5oLHYgMS43IDIwMDQvMTAvMjAgMTI6NDk6MTUgcGVmbyBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotI2lmbmRlZiBfTUlQUzY0X0FTTV9ICi0jZGVmaW5lIF9NSVBTNjRfQVNNX0gKLQotI2lmbmRlZiBfQUxJR05fVEVYVAotIyBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDQKLSNlbmRpZgotCi0jdW5kZWYgX19iaW9uaWNfYXNtX2N1c3RvbV9lbnRyeQotI3VuZGVmIF9fYmlvbmljX2FzbV9jdXN0b21fZW5kCi0jZGVmaW5lIF9fYmlvbmljX2FzbV9jdXN0b21fZW50cnkoZikgLmVudCBmCi0jZGVmaW5lIF9fYmlvbmljX2FzbV9jdXN0b21fZW5kKGYpIC5lbmQgZgotCi0jaW5jbHVkZSA8bWFjaGluZS9yZWdkZWYuaD4KLQotI2RlZmluZQlfTUlQU19JU0FfTUlQUzEJMQkvKiBSMjAwMC9SMzAwMCAqLwotI2RlZmluZQlfTUlQU19JU0FfTUlQUzIJMgkvKiBSNDAwMC9SNjAwMCAqLwotI2RlZmluZQlfTUlQU19JU0FfTUlQUzMJMwkvKiBSNDAwMCAqLwotI2RlZmluZQlfTUlQU19JU0FfTUlQUzQJNAkvKiBURlAgKFIxeDAwMCkgKi8KLSNkZWZpbmUJX01JUFNfSVNBX01JUFM1IDUKLSNkZWZpbmUJX01JUFNfSVNBX01JUFMzMiA2Ci0jZGVmaW5lCV9NSVBTX0lTQV9NSVBTNjQgNwotCi0jaWYgIWRlZmluZWQoQUJJQ0FMTFMpICYmICFkZWZpbmVkKF9OT19BQklDQUxMUykKLSNkZWZpbmUJQUJJQ0FMTFMJLmFiaWNhbGxzCi0jZW5kaWYKLQotI2lmIGRlZmluZWQoQUJJQ0FMTFMpICYmICFkZWZpbmVkKF9LRVJORUwpCi0JQUJJQ0FMTFMKLSNlbmRpZgotCi0jaWYgIWRlZmluZWQoX19NSVBTRUxfXykgJiYgIWRlZmluZWQoX19NSVBTRUJfXykKLSNlcnJvciAiX19NSVBTRUxfXyBvciBfX01JUFNFQl9fIG11c3QgYmUgZGVmaW5lZCIKLSNlbmRpZgotLyoKLSAqIERlZmluZSBob3cgdG8gYWNjZXNzIHVuYWxpZ25lZCBkYXRhIHdvcmQKLSAqLwotI2lmIGRlZmluZWQoX19NSVBTRUxfXykKLSNkZWZpbmUgTFdMTyAgICBsd2wKLSNkZWZpbmUgTFdISSAgICBsd3IKLSNkZWZpbmUJU1dMTwlzd2wKLSNkZWZpbmUJU1dISQlzd3IKLSNkZWZpbmUgTERMTyAgICBsZGwKLSNkZWZpbmUgTERISSAgICBsZHIKLSNkZWZpbmUJU0RMTwlzZGwKLSNkZWZpbmUJU0RISQlzZHIKLSNlbmRpZgotI2lmIGRlZmluZWQoX19NSVBTRUJfXykKLSNkZWZpbmUgTFdMTyAgICBsd3IKLSNkZWZpbmUgTFdISSAgICBsd2wKLSNkZWZpbmUJU1dMTwlzd3IKLSNkZWZpbmUJU1dISQlzd2wKLSNkZWZpbmUgTERMTyAgICBsZHIKLSNkZWZpbmUgTERISSAgICBsZGwKLSNkZWZpbmUJU0RMTwlzZHIKLSNkZWZpbmUJU0RISQlzZGwKLSNlbmRpZgotCi0vKgotICogIERlZmluZSBwcm9ncmFtbWluZyBlbnZpcm9ubWVudCBmb3IgQUJJLgotICovCi0jaWYgZGVmaW5lZChBQklDQUxMUykgJiYgIWRlZmluZWQoX0tFUk5FTCkgJiYgIWRlZmluZWQoX1NUQU5EQUxPTkUpCi0KLSNpZiAoX01JUFNfU0lNID09IF9BQklPMzIpIHx8IChfTUlQU19TSU0gPT0gX0FCSTMyKQotI2RlZmluZSBOQVJHU0FWRQk0Ci0KLSNkZWZpbmUJU0VUVVBfR1AJCVwKLQkuc2V0CW5vcmVvcmRlcjsJXAotCS5jcGxvYWQJdDk7CQlcCi0JLnNldAlyZW9yZGVyOwotCi0jZGVmaW5lCVNBVkVfR1AoeCkJCVwKLQkuY3ByZXN0b3JlIHgKLQotI2RlZmluZQlTRVRVUF9HUDY0KGdwb2ZmLCBuYW1lKQotI2RlZmluZQlSRVNUT1JFX0dQNjQKLSNlbmRpZgotCi0jaWYgKF9NSVBTX1NJTSA9PSBfQUJJNjQpIHx8IChfTUlQU19TSU0gPT0gX0FCSU4zMikKLSNkZWZpbmUgTkFSR1NBVkUJMAotCi0jZGVmaW5lCVNFVFVQX0dQCi0jZGVmaW5lCVNBVkVfR1AoeCkKLSNkZWZpbmUJU0VUVVBfR1A2NChncG9mZiwgbmFtZSkJXAotCS5jcHNldHVwIHQ5LCBncG9mZiwgbmFtZQotI2RlZmluZQlSRVNUT1JFX0dQNjQJCVwKLQkuY3ByZXR1cm4KLSNlbmRpZgotCi0jZGVmaW5lCU1LRlNJWihuYXJnLGxvY2FscykgKCgobmFyZytsb2NhbHMpKlJFR1NaKzMxKSYofjMxKSkKLQotI2Vsc2UgLyogZGVmaW5lZChBQklDQUxMUykgJiYgIWRlZmluZWQoX0tFUk5FTCkgKi8KLQotI2RlZmluZQlOQVJHU0FWRQk0Ci0jZGVmaW5lCVNFVFVQX0dQCi0jZGVmaW5lCVNBVkVfR1AoeCkKLQotI2RlZmluZQlBTElHTlNaCQkxNgkvKiBTdGFjayBsYXlvdXQgYWxpZ25tZW50ICovCi0jZGVmaW5lCUZSQU1FU1ooc3opCSgoKHN6KSArIChBTElHTlNaLTEpKSAmIH4oQUxJR05TWi0xKSkKLQotI2VuZGlmCi0KLS8qCi0gKiAgQmFzaWMgcmVnaXN0ZXIgb3BlcmF0aW9ucyBiYXNlZCBvbiBzZWxlY3RlZCBJU0EKLSAqLwotI2lmIChfTUlQU19JU0EgPT0gX01JUFNfSVNBX01JUFMxIHx8IF9NSVBTX0lTQSA9PSBfTUlQU19JU0FfTUlQUzIgfHwgX01JUFNfSVNBID09IF9NSVBTX0lTQV9NSVBTMzIpCi0jZGVmaW5lIFJFR1NaCQk0CS8qIDMyIGJpdCBtb2RlIHJlZ2lzdGVyIHNpemUgKi8KLSNkZWZpbmUgTE9HUkVHU1oJMgkvKiBsb2cgcnNpemUgKi8KLSNkZWZpbmUJUkVHX1MJc3cKLSNkZWZpbmUJUkVHX0wJbHcKLSNkZWZpbmUJQ0ZfU1oJCTI0CS8qIENhbGwgZnJhbWUgc2l6ZSAqLwotI2RlZmluZQlDRl9BUkdTWgkxNgkvKiBDYWxsIGZyYW1lIGFyZyBzaXplICovCi0jZGVmaW5lCUNGX1JBX09GRlMJMjAJLyogQ2FsbCByYSBzYXZlIG9mZnNldCAqLwotI2VuZGlmCi0KLSNpZiAoX01JUFNfSVNBID09IF9NSVBTX0lTQV9NSVBTMyB8fCBfTUlQU19JU0EgPT0gX01JUFNfSVNBX01JUFM0IHx8IF9NSVBTX0lTQSA9PSBfTUlQU19JU0FfTUlQUzY0KQotI2RlZmluZSBSRUdTWgkJOAkvKiA2NCBiaXQgbW9kZSByZWdpc3RlciBzaXplICovCi0jZGVmaW5lIExPR1JFR1NaCTMJLyogbG9nIHJzaXplICovCi0jZGVmaW5lCVJFR19TCXNkCi0jZGVmaW5lCVJFR19MCWxkCi0jZGVmaW5lCUNGX1NaCQk0OAkvKiBDYWxsIGZyYW1lIHNpemUgKG11bHRpcGxlIG9mIEFMSUdOU1opICovCi0jZGVmaW5lCUNGX0FSR1NaCTMyCS8qIENhbGwgZnJhbWUgYXJnIHNpemUgKi8KLSNkZWZpbmUJQ0ZfUkFfT0ZGUwk0MAkvKiBDYWxsIHJhIHNhdmUgb2Zmc2V0ICovCi0jZW5kaWYKLQotI2RlZmluZSBSRUdTWl9GUAkgOAkvKiA2NCBiaXQgRlAgcmVnaXN0ZXIgc2l6ZSAqLwotCi0jaWZuZGVmIF9fTFA2NF9fCi0jZGVmaW5lCVBUUl9MCQlsdwotI2RlZmluZQlQVFJfUwkJc3cKLSNkZWZpbmUJUFRSX1NVQgkJc3ViCi0jZGVmaW5lCVBUUl9BREQJCWFkZAotI2RlZmluZQlQVFJfU1VCVQlzdWJ1Ci0jZGVmaW5lCVBUUl9BRERVCWFkZHUKLSNkZWZpbmUgTEkJCWxpCi0jZGVmaW5lCUxBCQlsYQotI2RlZmluZQlQVFJfU0xMCQlzbGwKLSNkZWZpbmUJUFRSX1NSTAkJc3JsCi0jZGVmaW5lCVBUUl9WQUwJCS53b3JkCi0jZWxzZQotI2RlZmluZQlQVFJfTAkJbGQKLSNkZWZpbmUJUFRSX1MJCXNkCi0jZGVmaW5lCVBUUl9BREQJCWRhZGQKLSNkZWZpbmUJUFRSX1NVQgkJZHN1YgotI2RlZmluZQlQVFJfU1VCVQlkc3VidQotI2RlZmluZQlQVFJfQUREVQlkYWRkdQotI2RlZmluZSBMSQkJZGxpCi0jZGVmaW5lIExBCQlkbGEKLSNkZWZpbmUJUFRSX1NMTAkJZHNsbAotI2RlZmluZQlQVFJfU1JMCQlkc3JsCi0jZGVmaW5lCVBUUl9WQUwJCS5kd29yZAotI2VuZGlmCi0KLS8qCi0gKiBMRUFGKHgsIGZzaXplKQotICoKLSAqCURlY2xhcmUgYSBsZWFmIHJvdXRpbmUuCi0gKi8KLSNkZWZpbmUgTEVBRih4LCBmc2l6ZSkJCVwKLQkuYWxpZ24JMzsJCVwKLQkuZ2xvYmwgeDsJCVwKLQkuZW50IHgsIDA7CQlcCi14OiA7CQkJCVwKLQkuY2ZpX3N0YXJ0cHJvYzsgXAotCS5mcmFtZSBzcCwgZnNpemUsIHJhOwlcCi0JU0VUVVBfR1AJCVwKLQotLyoKLSAqIE5PTl9MRUFGKHgpCi0gKgotICoJRGVjbGFyZSBhIG5vbi1sZWFmIHJvdXRpbmUgKGEgcm91dGluZSB0aGF0IG1ha2VzIG90aGVyIEMgY2FsbHMpLgotICovCi0jZGVmaW5lIE5PTl9MRUFGKHgsIGZzaXplLCByZXRwYykgXAotCS5hbGlnbgkzOwkJXAotCS5nbG9ibCB4OwkJXAotCS5lbnQgeCwgMDsJCVwKLXg6IDsJCQkJXAotCS5jZmlfc3RhcnRwcm9jOyBcCi0JLmZyYW1lIHNwLCBmc2l6ZSwgcmV0cGM7IFwKLQlTRVRVUF9HUAkJXAotCi0jZW5kaWYgLyogIV9NSVBTX0FTTV9IICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvZWxmX21hY2hkZXAuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDI3ZDQzMS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCisrKyAvZGV2L251bGwKQEAgLTEsMTk2ICswLDAgQEAKLS8qCSROZXRCU0Q6IGVsZl9tYWNoZGVwLmgsdiAxLjE1IDIwMTEvMDMvMTUgMDc6Mzk6MjIgbWF0dCBFeHAgJAkqLwotCi0jaWZuZGVmIF9NSVBTX0VMRl9NQUNIREVQX0hfCi0jZGVmaW5lICBfTUlQU19FTEZfTUFDSERFUF9IXwotCi0jaWZkZWYgX0xQNjQKLSNkZWZpbmUgQVJDSF9FTEZTSVpFCQk2NAkvKiBNRCBuYXRpdmUgYmluYXJ5IHNpemUgKi8KLSNlbHNlCi0jZGVmaW5lIEFSQ0hfRUxGU0laRQkJMzIJLyogTUQgbmF0aXZlIGJpbmFyeSBzaXplICovCi0jZW5kaWYKLQotI2lmIEVMRlNJWkUgPT0gMzIKLSNkZWZpbmUJRUxGMzJfTUFDSERFUF9JRF9DQVNFUwkJCQkJCVwKLQkJY2FzZSBFTV9NSVBTOgkJCQkJCVwKLQkJCWJyZWFrOwotCi0jZGVmaW5lCUVMRjMyX01BQ0hERVBfSUQJRU1fTUlQUwotI2VsaWYgRUxGU0laRSA9PSA2NAotI2RlZmluZQlFTEY2NF9NQUNIREVQX0lEX0NBU0VTCQkJCQkJXAotCQljYXNlIEVNX01JUFM6CQkJCQkJXAotCQkJYnJlYWs7Ci0KLSNkZWZpbmUJRUxGNjRfTUFDSERFUF9JRAlFTV9NSVBTCi0jZW5kaWYKLQotLyogbWlwcyByZWxvY3MuICAqLwotCi0jZGVmaW5lIFJfTUlQU19OT05FCQkwCi0jZGVmaW5lIFJfTUlQU18xNgkJMQotI2RlZmluZSBSX01JUFNfMzIJCTIKLSNkZWZpbmUgUl9NSVBTX1JFTDMyCQkzCi0jZGVmaW5lIFJfTUlQU19SRUwJCVJfTUlQU19SRUwzMgotI2RlZmluZSBSX01JUFNfMjYJCTQKLSNkZWZpbmUgUl9NSVBTX0hJMTYJCTUJLyogaGlnaCAxNiBiaXRzIG9mIHN5bWJvbCB2YWx1ZSAqLwotI2RlZmluZSBSX01JUFNfTE8xNgkJNgkvKiBsb3cgMTYgYml0cyBvZiBzeW1ib2wgdmFsdWUgKi8KLSNkZWZpbmUgUl9NSVBTX0dQUkVMMTYJCTcgIAkvKiBHUC1yZWxhdGl2ZSByZWZlcmVuY2UgICovCi0jZGVmaW5lIFJfTUlQU19MSVRFUkFMCQk4IAkvKiBSZWZlcmVuY2UgdG8gbGl0ZXJhbCBzZWN0aW9uICAqLwotI2RlZmluZSBSX01JUFNfR09UMTYJCTkJLyogUmVmZXJlbmNlIHRvIGdsb2JhbCBvZmZzZXQgdGFibGUgKi8KLSNkZWZpbmUgUl9NSVBTX0dPVAkJUl9NSVBTX0dPVDE2Ci0jZGVmaW5lIFJfTUlQU19QQzE2CQkxMCAgCS8qIDE2IGJpdCBQQyByZWxhdGl2ZSByZWZlcmVuY2UgKi8KLSNkZWZpbmUgUl9NSVBTX0NBTEwxNiAJCTExICAJLyogMTYgYml0IGNhbGwgdGhydSBnbGJsIG9mZnNldCB0YmwgKi8KLSNkZWZpbmUgUl9NSVBTX0NBTEwJCVJfTUlQU19DQUxMMTYKLSNkZWZpbmUgUl9NSVBTX0dQUkVMMzIJCTEyCi0KLS8qIDEzLCAxNCwgMTUgYXJlIG5vdCBkZWZpbmVkIGF0IHRoaXMgcG9pbnQuICovCi0jZGVmaW5lIFJfTUlQU19VTlVTRUQxCQkxMwotI2RlZmluZSBSX01JUFNfVU5VU0VEMgkJMTQKLSNkZWZpbmUgUl9NSVBTX1VOVVNFRDMJCTE1Ci0KLS8qCi0gKiBUaGUgcmVtYWluaW5nIHJlbG9jcyBhcmUgYXBwYXJlbnRseSBwYXJ0IG9mIHRoZSA2NC1iaXQgSXJpeCBFTEYgQUJJLgotICovCi0jZGVmaW5lIFJfTUlQU19TSElGVDUJCTE2Ci0jZGVmaW5lIFJfTUlQU19TSElGVDYJCTE3Ci0KLSNkZWZpbmUgUl9NSVBTXzY0CQkxOAotI2RlZmluZSBSX01JUFNfR09UX0RJU1AJCTE5Ci0jZGVmaW5lIFJfTUlQU19HT1RfUEFHRQkJMjAKLSNkZWZpbmUgUl9NSVBTX0dPVF9PRlNUCQkyMQotI2RlZmluZSBSX01JUFNfR09UX0hJMTYJCTIyCi0jZGVmaW5lIFJfTUlQU19HT1RfTE8xNgkJMjMKLSNkZWZpbmUgUl9NSVBTX1NVQiAJCTI0Ci0jZGVmaW5lIFJfTUlQU19JTlNFUlRfQQkJMjUKLSNkZWZpbmUgUl9NSVBTX0lOU0VSVF9CCQkyNgotI2RlZmluZSBSX01JUFNfREVMRVRFCQkyNwotI2RlZmluZSBSX01JUFNfSElHSEVSCQkyOAotI2RlZmluZSBSX01JUFNfSElHSEVTVAkJMjkKLSNkZWZpbmUgUl9NSVBTX0NBTExfSEkxNgkzMAotI2RlZmluZSBSX01JUFNfQ0FMTF9MTzE2CTMxCi0jZGVmaW5lIFJfTUlQU19TQ05fRElTUAkJMzIKLSNkZWZpbmUgUl9NSVBTX1JFTDE2CQkzMwotI2RlZmluZSBSX01JUFNfQUREX0lNTUVESUFURQkzNAotI2RlZmluZSBSX01JUFNfUEpVTVAJCTM1Ci0jZGVmaW5lIFJfTUlQU19SRUxHT1QJCTM2Ci0jZGVmaW5lCVJfTUlQU19KQUxSCQkzNwotLyogVExTIHJlbG9jYXRpb25zICovCi0KLSNkZWZpbmUgUl9NSVBTX1RMU19EVFBNT0QzMgkzOAkvKiBNb2R1bGUgbnVtYmVyIDMyIGJpdCAqLwotI2RlZmluZSBSX01JUFNfVExTX0RUUFJFTDMyCTM5CS8qIE1vZHVsZS1yZWxhdGl2ZSBvZmZzZXQgMzIgYml0ICovCi0jZGVmaW5lIFJfTUlQU19UTFNfRFRQTU9ENjQJNDAJLyogTW9kdWxlIG51bWJlciA2NCBiaXQgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19EVFBSRUw2NAk0MQkvKiBNb2R1bGUtcmVsYXRpdmUgb2Zmc2V0IDY0IGJpdCAqLwotI2RlZmluZSBSX01JUFNfVExTX0dECQk0MgkvKiAxNiBiaXQgR09UIG9mZnNldCBmb3IgR0QgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19MRE0JCTQzCS8qIDE2IGJpdCBHT1Qgb2Zmc2V0IGZvciBMRE0gKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19EVFBSRUxfSEkxNgk0NAkvKiBNb2R1bGUtcmVsYXRpdmUgb2Zmc2V0LCBoaWdoIDE2IGJpdHMgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19EVFBSRUxfTE8xNgk0NQkvKiBNb2R1bGUtcmVsYXRpdmUgb2Zmc2V0LCBsb3cgMTYgYml0cyAqLwotI2RlZmluZSBSX01JUFNfVExTX0dPVFRQUkVMCTQ2CS8qIDE2IGJpdCBHT1Qgb2Zmc2V0IGZvciBJRSAqLwotI2RlZmluZSBSX01JUFNfVExTX1RQUkVMMzIJNDcJLyogVFAtcmVsYXRpdmUgb2Zmc2V0LCAzMiBiaXQgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19UUFJFTDY0CTQ4CS8qIFRQLXJlbGF0aXZlIG9mZnNldCwgNjQgYml0ICovCi0jZGVmaW5lIFJfTUlQU19UTFNfVFBSRUxfSEkxNgk0OQkvKiBUUC1yZWxhdGl2ZSBvZmZzZXQsIGhpZ2ggMTYgYml0cyAqLwotI2RlZmluZSBSX01JUFNfVExTX1RQUkVMX0xPMTYJNTAJLyogVFAtcmVsYXRpdmUgb2Zmc2V0LCBsb3cgMTYgYml0cyAqLwotCi0jZGVmaW5lIFJfTUlQU19tYXgJCTUxCi0KLSNkZWZpbmUgUl9UWVBFKG5hbWUpCQlfX0NPTkNBVChSX01JUFNfLG5hbWUpCi0KLSNkZWZpbmUJUl9NSVBTMTZfbWluCQkxMDAKLSNkZWZpbmUJUl9NSVBTMTZfMjYJCTEwMAotI2RlZmluZQlSX01JUFMxNl9HUFJFTAkJMTAxCi0jZGVmaW5lCVJfTUlQUzE2X0dPVDE2CQkxMDIKLSNkZWZpbmUJUl9NSVBTMTZfQ0FMTDE2CQkxMDMKLSNkZWZpbmUJUl9NSVBTMTZfSEkxNgkJMTA0Ci0jZGVmaW5lCVJfTUlQUzE2X0xPMTYJCTEwNQotI2RlZmluZQlSX01JUFMxNl9tYXgJCTEwNgotCi0KLS8qIG1pcHMgZHluYW1pYyB0YWdzICovCi0KLSNkZWZpbmUgRFRfTUlQU19STERfVkVSU0lPTgkweDcwMDAwMDAxCi0jZGVmaW5lIERUX01JUFNfVElNRV9TVEFNUAkweDcwMDAwMDAyCi0jZGVmaW5lIERUX01JUFNfSUNIRUNLU1VNCTB4NzAwMDAwMDMKLSNkZWZpbmUgRFRfTUlQU19JVkVSU0lPTgkweDcwMDAwMDA0Ci0jZGVmaW5lIERUX01JUFNfRkxBR1MJCTB4NzAwMDAwMDUKLSNkZWZpbmUgRFRfTUlQU19CQVNFX0FERFJFU1MJMHg3MDAwMDAwNgotI2RlZmluZSBEVF9NSVBTX0NPTkZMSUNUCTB4NzAwMDAwMDgKLSNkZWZpbmUgRFRfTUlQU19MSUJMSVNUCQkweDcwMDAwMDA5Ci0jZGVmaW5lIERUX01JUFNfQ09ORkxJQ1ROTwkweDcwMDAwMDBiCi0jZGVmaW5lCURUX01JUFNfTE9DQUxfR09UTk8JMHg3MDAwMDAwYQkvKiBudW1iZXIgb2YgbG9jYWwgZ290IGVudHMgKi8KLSNkZWZpbmUgRFRfTUlQU19MSUJMSVNUTk8JMHg3MDAwMDAxMAotI2RlZmluZQlEVF9NSVBTX1NZTVRBQk5PCTB4NzAwMDAwMTEJLyogbnVtYmVyIG9mIC5keW5zeW0gZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX1VOUkVGRVhUTk8JMHg3MDAwMDAxMgotI2RlZmluZQlEVF9NSVBTX0dPVFNZTQkJMHg3MDAwMDAxMwkvKiBmaXJzdCBkeW5hbWljIHN5bSBpbiBnb3QgKi8KLSNkZWZpbmUgRFRfTUlQU19ISVBBR0VOTwkweDcwMDAwMDE0Ci0jZGVmaW5lCURUX01JUFNfUkxEX01BUAkJMHg3MDAwMDAxNgkvKiBhZGRyZXNzIG9mIGxvYWRlciBtYXAgKi8KLQotLyoKLSAqIEVMRiBGbGFncwotICovCi0jZGVmaW5lCUVGX01JUFNfUElDCQkweDAwMDAwMDAyCS8qIENvbnRhaW5zIFBJQyBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQ1BJQwkJMHgwMDAwMDAwNAkvKiBTVEQgUElDIGNhbGxpbmcgc2VxdWVuY2UgKi8KLSNkZWZpbmUJRUZfTUlQU19BQkkyCQkweDAwMDAwMDIwCS8qIE4zMiAqLwotCi0jZGVmaW5lCUVGX01JUFNfQVJDSF9BU0UJMHgwZjAwMDAwMAkvKiBBcmNoaXRlY3R1cmFsIGV4dGVuc2lvbnMgKi8KLSNkZWZpbmUJRUZfTUlQU19BUkNIX01ETVgJMHgwODAwMDAwMAkvKiBNRE1YIG11bHRpbWVkaWEgZXh0ZW5zaW9uICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF9NMTYJMHgwNDAwMDAwMAkvKiBNSVBTLTE2IElTQSBleHRlbnNpb25zICovCi0KLSNkZWZpbmUJRUZfTUlQU19BUkNICQkweGYwMDAwMDAwCS8qIEFyY2hpdGVjdHVyZSBmaWVsZCAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfMQkJMHgwMDAwMDAwMAkvKiAtbWlwczEgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfMgkJMHgxMDAwMDAwMAkvKiAtbWlwczIgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfMwkJMHgyMDAwMDAwMAkvKiAtbWlwczMgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfNAkJMHgzMDAwMDAwMAkvKiAtbWlwczQgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfNQkJMHg0MDAwMDAwMAkvKiAtbWlwczUgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfMzIJCTB4NTAwMDAwMDAJLyogLW1pcHMzMiBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF82NAkJMHg2MDAwMDAwMAkvKiAtbWlwczY0IGNvZGUgKi8KLSNkZWZpbmUJRUZfTUlQU19BUkNIXzMyUjIJMHg3MDAwMDAwMAkvKiAtbWlwczMycjIgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfNjRSMgkweDgwMDAwMDAwCS8qIC1taXBzNjRyMiBjb2RlICovCi0KLSNkZWZpbmUJRUZfTUlQU19BQkkJCTB4MDAwMGYwMDAKLSNkZWZpbmUJRUZfTUlQU19BQklfTzMyCQkweDAwMDAxMDAwCi0jZGVmaW5lCUVGX01JUFNfQUJJX082NAkJMHgwMDAwMjAwMAotI2RlZmluZQlFRl9NSVBTX0FCSV9FQUJJMzIJMHgwMDAwMzAwMAotI2RlZmluZQlFRl9NSVBTX0FCSV9FQUJJNjQJMHgwMDAwNDAwMAotCi0jaWYgZGVmaW5lZChfX01JUFNFQl9fKQotI2RlZmluZQlFTEYzMl9NQUNIREVQX0VORElBTk5FU1MJRUxGREFUQTJNU0IKLSNkZWZpbmUJRUxGNjRfTUFDSERFUF9FTkRJQU5ORVNTCUVMRkRBVEEyTVNCCi0jZWxpZiBkZWZpbmVkKF9fTUlQU0VMX18pCi0jZGVmaW5lCUVMRjMyX01BQ0hERVBfRU5ESUFOTkVTUwlFTEZEQVRBMkxTQgotI2RlZmluZQlFTEY2NF9NQUNIREVQX0VORElBTk5FU1MJRUxGREFUQTJMU0IKLSNlbGlmICFkZWZpbmVkKEhBVkVfTkJUT09MX0NPTkZJR19IKQotI2Vycm9yIG5laXRoZXIgX19NSVBTRUxfXyBub3IgX19NSVBTRUJfXyBhcmUgZGVmaW5lZC4KLSNlbmRpZgotCi0jaWZkZWYgX0tFUk5FTAotI2lmZGVmIF9LRVJORUxfT1BUCi0jaW5jbHVkZSAib3B0X2NvbXBhdF9uZXRic2QuaCIKLSNlbmRpZgotI2lmZGVmIENPTVBBVF8xNgotLyoKLSAqIFVwIHRvIDEuNiwgdGhlIEVMRiBkeW5hbWljIGxvYWRlciAobGQuZWxmX3NvKSB3YXMgbm90IHJlbG9jYXRhYmxlLgotICogVGVsbCB0aGUga2VybmVsIEVMRiBleGVjIGNvZGUgbm90IHRvIHRyeSByZWxvY2F0aW5nIHRoZSBpbnRlcnByZXRlcgotICogZm9yIGR5bmFtaWNhbGx5LWxpbmtlZCBFTEYgYmluYXJpZXMuCi0gKi8KLSNkZWZpbmUgRUxGX0lOVEVSUF9OT05fUkVMT0NBVEFCTEUKLSNlbmRpZiAvKiBDT01QQVRfMTYgKi8KLQotLyoKLSAqIFdlIG5lZWQgdG8gYmUgYWJsZSB0byBpbmNsdWRlIHRoZSBFTEYgaGVhZGVyIHNvIHdlIGNhbiBwaWNrIG91dCB0aGUKLSAqIEFCSSBiZWluZyB1c2VkLgotICovCi0jaWZkZWYgRUxGU0laRQotI2RlZmluZQlFTEZfTURfUFJPQkVfRlVOQwlFTEZOQU1FMihtaXBzX25ldGJzZCxwcm9iZSkKLSNkZWZpbmUJRUxGX01EX0NPUkVEVU1QX1NFVFVQCUVMRk5BTUUyKGNvcmVkdW1wLHNldHVwKQotI2VuZGlmCi0KLXN0cnVjdCBleGVjX3BhY2thZ2U7Ci0KLWludCBtaXBzX25ldGJzZF9lbGYzMl9wcm9iZShzdHJ1Y3QgbHdwICosIHN0cnVjdCBleGVjX3BhY2thZ2UgKiwgdm9pZCAqLCBjaGFyICosCi0JdmFkZHJfdCAqKTsKLXZvaWQgY29yZWR1bXBfZWxmMzJfc2V0dXAoc3RydWN0IGx3cCAqLCB2b2lkICopOwotCi1pbnQgbWlwc19uZXRic2RfZWxmNjRfcHJvYmUoc3RydWN0IGx3cCAqLCBzdHJ1Y3QgZXhlY19wYWNrYWdlICosIHZvaWQgKiwgY2hhciAqLAotCXZhZGRyX3QgKik7Ci12b2lkIGNvcmVkdW1wX2VsZjY0X3NldHVwKHN0cnVjdCBsd3AgKiwgdm9pZCAqKTsKLSNlbmRpZiAvKiBfS0VSTkVMICovCi0KLSNlbmRpZiAvKiBfTUlQU19FTEZfTUFDSERFUF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDFhOTAwNC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDcwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBlbmRpYW4uaCx2IDEuNSAyMDA2LzAyLzI3IDIzOjM1OjU5IG1pb2QgRXhwICQgKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMS0yMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2lmbmRlZiBfTUlQUzY0X0VORElBTl9IXwotI2RlZmluZSBfTUlQUzY0X0VORElBTl9IXwotCi0jaWZkZWYgX19HTlVDX18KLQotI2lmIGRlZmluZWQoX19taXBzX2lzYV9yZXYpICYmIChfX21pcHNfaXNhX3JldiA+PSAyKQotI2RlZmluZSBfX3N3YXAxNm1kKHgpICh7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDE2X3QgX3ggPSAoeCk7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDE2X3QgX3I7CQkJCQlcCi0gICAgX19hc20gdm9sYXRpbGUgKCJ3c2JoICUwLCAlMSIgOiAiPXIiIChfcikgOiAiciIgKF94KSk7CVwKLSAgICBfcjsJCQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwMzJtZCh4KSAoewkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQzMl90IF94ID0gKHgpOwkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQzMl90IF9yOwkJCQkJXAotICAgIF9fYXNtIHZvbGF0aWxlICgid3NiaCAlMCwgJTE7IHJvdHIgJTAsICUwLCAxNiIgOiAiPXIiIChfcikgOiAiciIgKF94KSk7IFwKLSAgICBfcjsJCQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwNjRtZCh4KSAoewkJCQkJXAotICAgIHVpbnQ2NF90IF9zd2FwNjRtZF94ID0gKHgpOwkJCQkJXAotICAgICh1aW50NjRfdCkgX19zd2FwMzJtZChfc3dhcDY0bWRfeCA+PiAzMikgfAkJCVwKLSAgICAgICAgKHVpbnQ2NF90KSBfX3N3YXAzMm1kKF9zd2FwNjRtZF94ICYgMHhmZmZmZmZmZikgPDwgMzI7CVwKLX0pCi0KLS8qIFRlbGwgc3lzL2VuZGlhbi5oIHdlIGhhdmUgTUQgdmFyaWFudHMgb2YgdGhlIHN3YXAgbWFjcm9zLiAgKi8KLSNkZWZpbmUgTURfU1dBUAotCi0jZW5kaWYgIC8qIF9fbWlwczMycjJfXyAqLwotI2VuZGlmICAvKiBfX0dOVUNfXyAqLwotCi0jaWYgZGVmaW5lZChfX01JUFNFQl9fKQotI2RlZmluZSBfQllURV9PUkRFUiBfQklHX0VORElBTgotI2Vsc2UKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KLSNlbmRpZgotI2RlZmluZSBfX1NUUklDVF9BTElHTk1FTlQKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+Ci0KLSNlbmRpZiAvKiBfTUlQUzY0X0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzYzZjc0Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaAorKysgL2Rldi9udWxsCkBAIC0xLDE4OCArMCwwIEBACi0vKgkkT3BlbkJTRDogZXhlYy5oLHYgMS4xIDIwMDQvMTAvMTggMTk6MDU6MzYgZ3JhbmdlIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTYtMjAwNCBQZXIgRm9nZWxzdHJvbSwgT3BzeWNvbiBBQgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaWZuZGVmIF9NSVBTNjRfRVhFQ19IXwotI2RlZmluZSBfTUlQUzY0X0VYRUNfSF8KLQotI2RlZmluZQlfX0xEUEdTWgk0MDk2Ci0KLS8qCi0gKiAgRGVmaW5lIHdoYXQgZXhlYyAiZm9ybWF0cyIgd2Ugc2hvdWxkIGhhbmRsZS4KLSAqLwotI2RlZmluZSBOQVRJVkVfRVhFQ19FTEYKLSNkZWZpbmUgTkFUSVZFX0VMRlNJWkUgNjQKLSNkZWZpbmUJRVhFQ19TQ1JJUFQKLQotLyoKLSAqICBJZiBpbmNsdWRlZCBmcm9tIHN5cy9leGVjLmggZGVmaW5lIGtlcm5lbHMgRUxGIGZvcm1hdC4KLSAqLwotI2lmZGVmIF9fTFA2NF9fCi0jZGVmaW5lCUFSQ0hfRUxGU0laRSA2NAotI2RlZmluZSBEQl9FTEZTSVpFIDY0Ci0jZGVmaW5lIEVMRl9UQVJHX0NMQVNTICBFTEZDTEFTUzY0Ci0jZWxzZQotI2RlZmluZQlBUkNIX0VMRlNJWkUgMzIKLSNkZWZpbmUgREJfRUxGU0laRSAzMgotI2RlZmluZSBFTEZfVEFSR19DTEFTUyAgRUxGQ0xBU1MzMgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKF9fTUlQU0VCX18pCi0jZGVmaW5lIEVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTVNCCi0jZWxzZQotI2RlZmluZSBFTEZfVEFSR19EQVRBCQlFTEZEQVRBMkxTQgotI2VuZGlmCi0jZGVmaW5lIEVMRl9UQVJHX01BQ0gJCUVNX01JUFMKLQotI2RlZmluZSBfTkxJU1RfRE9fRUxGCi0KLSNpZiBkZWZpbmVkKF9MUDY0KQotI2RlZmluZSBfS0VSTl9ET19FTEY2NAotI2lmIGRlZmluZWQoQ09NUEFUX08zMikKLSNkZWZpbmUgX0tFUk5fRE9fRUxGCi0jZW5kaWYKLSNlbHNlCi0jZGVmaW5lIF9LRVJOX0RPX0VMRgotI2VuZGlmCi0KLS8qIEluZm9ybWF0aW9uIHRha2VuIGZyb20gTUlQUyBBQkkgc3VwcGxlbWVudGFsICovCi0KLS8qIEFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgU2VnbWVudCB0eXBlcyAtIHBfdHlwZSAqLwotI2RlZmluZSBQVF9NSVBTX1JFR0lORk8gMHg3MDAwMDAwMCAgICAgIC8qIFJlZ2lzdGVyIHVzYWdlIGluZm9ybWF0aW9uICovCi0KLS8qIEFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgZF90YWcgZmllbGQgZm9yIEVsZjMyX0R5bi4gICovCi0jZGVmaW5lIERUX01JUFNfUkxEX1ZFUlNJT04gIDB4NzAwMDAwMDEgLyogUnVudGltZSBMaW5rZXIgSW50ZXJmYWNlIElEICovCi0jZGVmaW5lIERUX01JUFNfVElNRV9TVEFNUCAgIDB4NzAwMDAwMDIgLyogVGltZXN0YW1wICovCi0jZGVmaW5lIERUX01JUFNfSUNIRUNLU1VNICAgIDB4NzAwMDAwMDMgLyogQ2tzdW0gb2YgZXh0LiBzdHIuIGFuZCBjb20uIHNpemVzICovCi0jZGVmaW5lIERUX01JUFNfSVZFUlNJT04gICAgIDB4NzAwMDAwMDQgLyogVmVyc2lvbiBzdHJpbmcgKHN0cmluZyB0YmwgaW5kZXgpICovCi0jZGVmaW5lIERUX01JUFNfRkxBR1MgICAgICAgIDB4NzAwMDAwMDUgLyogRmxhZ3MgKi8KLSNkZWZpbmUgRFRfTUlQU19CQVNFX0FERFJFU1MgMHg3MDAwMDAwNiAvKiBTZWdtZW50IGJhc2UgYWRkcmVzcyAqLwotI2RlZmluZSBEVF9NSVBTX0NPTkZMSUNUICAgICAweDcwMDAwMDA4IC8qIEFkciBvZiAuY29uZmxpY3Qgc2VjdGlvbiAqLwotI2RlZmluZSBEVF9NSVBTX0xJQkxJU1QgICAgICAweDcwMDAwMDA5IC8qIEFkZHJlc3Mgb2YgLmxpYmxpc3Qgc2VjdGlvbiAqLwotI2RlZmluZSBEVF9NSVBTX0xPQ0FMX0dPVE5PICAweDcwMDAwMDBhIC8qIE51bWJlciBvZiBsb2NhbCAuR09UIGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19DT05GTElDVE5PICAgMHg3MDAwMDAwYiAvKiBOdW1iZXIgb2YgLmNvbmZsaWN0IGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19MSUJMSVNUTk8gICAgMHg3MDAwMDAxMCAvKiBOdW1iZXIgb2YgLmxpYmxpc3QgZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX1NZTVRBQk5PICAgICAweDcwMDAwMDExIC8qIE51bWJlciBvZiAuZHluc3ltIGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19VTlJFRkVYVE5PICAgMHg3MDAwMDAxMiAvKiBGaXJzdCBleHRlcm5hbCBEWU5TWU0gKi8KLSNkZWZpbmUgRFRfTUlQU19HT1RTWU0gICAgICAgMHg3MDAwMDAxMyAvKiBGaXJzdCBHT1QgZW50cnkgaW4gLmR5bnN5bSAqLwotI2RlZmluZSBEVF9NSVBTX0hJUEFHRU5PICAgICAweDcwMDAwMDE0IC8qIE51bWJlciBvZiBHT1QgcGFnZSB0YWJsZSBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfUkxEX01BUCAgICAgIDB4NzAwMDAwMTYgLyogQWRkcmVzcyBvZiBkZWJ1ZyBtYXAgcG9pbnRlciAqLwotCi0jZGVmaW5lIERUX1BST0NOVU0gKERUX01JUFNfUkxEX01BUCAtIERUX0xPUFJPQyArIDEpCi0KLS8qCi0gKiBMZWdhbCB2YWx1ZXMgZm9yIGVfZmxhZ3MgZmllbGQgb2YgRWxmMzJfRWhkci4KLSAqLwotI2RlZmluZSBFRl9NSVBTX05PUkVPUkRFUgkweDAwMDAwMDAxCS8qIC5ub3Jlb3JkZXIgd2FzIHVzZWQgKi8KLSNkZWZpbmUgRUZfTUlQU19QSUMJCTB4MDAwMDAwMDIJLyogQ29udGFpbnMgUElDIGNvZGUgKi8KLSNkZWZpbmUgRUZfTUlQU19DUElDCQkweDAwMDAwMDA0CS8qIFVzZXMgUElDIGNhbGxpbmcgc2VxdWVuY2UgKi8KLSNkZWZpbmUJRUZfTUlQU19BQkkyCQkweDAwMDAwMDIwCS8qIC1uMzIgb24gSXJpeCA2ICovCi0jZGVmaW5lCUVGX01JUFNfMzJCSVRNT0RFCTB4MDAwMDAxMDAJLyogNjQgYml0IGluIDMyIGJpdCBtb2RlLi4uICovCi0jZGVmaW5lIEVGX01JUFNfQVJDSAkJMHhmMDAwMDAwMAkvKiBNSVBTIGFyY2hpdGVjdHVyZSBsZXZlbCAqLwotI2RlZmluZQlFX01JUFNfQVJDSF8xCQkweDAwMDAwMDAwCi0jZGVmaW5lCUVfTUlQU19BUkNIXzIJCTB4MTAwMDAwMDAKLSNkZWZpbmUJRV9NSVBTX0FSQ0hfMwkJMHgyMDAwMDAwMAotI2RlZmluZQlFX01JUFNfQVJDSF80CQkweDMwMDAwMDAwCi0jZGVmaW5lCUVGX01JUFNfQUJJCQkweDAwMDBmMDAwCS8qIEFCSSBsZXZlbCAqLwotI2RlZmluZQlFX01JUFNfQUJJX05PTkUJCTB4MDAwMDAwMDAJLyogQUJJIGxldmVsIG5vdCBzZXQgKi8KLSNkZWZpbmUJRV9NSVBTX0FCSV9PMzIJCTB4MDAwMDEwMDAKLSNkZWZpbmUJRV9NSVBTX0FCSV9PNjQJCTB4MDAwMDIwMDAKLSNkZWZpbmUJRV9NSVBTX0FCSV9FQUJJMzIJMHgwMDAwNDAwMAotI2RlZmluZQlFX01JUFNfQUJJX0VBQkk2NAkweDAwMDA0MDAwCi0KLS8qCi0gKiBNaXBzIHNwZWNpYWwgc2VjdGlvbnMuCi0gKi8KLSNkZWZpbmUJU0hOX01JUFNfQUNPTU1PTgkweGZmMDAJCS8qIEFsbG9jYXRlZCBjb21tb24gc3ltYm9scyAqLwotI2RlZmluZQlTSE5fTUlQU19TQ09NTU9OCTB4ZmYwMwkJLyogU21hbGwgY29tbW9uIHN5bWJvbHMgKi8KLSNkZWZpbmUJU0hOX01JUFNfU1VOREVGSU5FRAkweGZmMDQJCS8qIFNtYWxsIHVuZGVmaW5lZCBzeW1ib2xzICovCi0KLS8qCi0gKiBMZWdhbCB2YWx1ZXMgZm9yIHNoX3R5cGUgZmllbGQgb2YgRWxmMzJfU2hkci4KLSAqLwotI2RlZmluZQlTSFRfTUlQU19MSUJMSVNUICAweDcwMDAwMDAwCS8qIFNoYXJlZCBvYmplY3RzIHVzZWQgaW4gbGluayAqLwotI2RlZmluZQlTSFRfTUlQU19DT05GTElDVCAweDcwMDAwMDAyCS8qIENvbmZsaWN0aW5nIHN5bWJvbHMgKi8KLSNkZWZpbmUJU0hUX01JUFNfR1BUQUIgICAgMHg3MDAwMDAwMwkvKiBHbG9iYWwgZGF0YSBhcmVhIHNpemVzICovCi0jZGVmaW5lCVNIVF9NSVBTX1VDT0RFICAgIDB4NzAwMDAwMDQJLyogUmVzZXJ2ZWQgZm9yIFNHSS9NSVBTIGNvbXBpbGVycyAqLwotI2RlZmluZQlTSFRfTUlQU19ERUJVRyAgICAweDcwMDAwMDA1CS8qIE1JUFMgRUNPRkYgZGVidWdnaW5nIGluZm9ybWF0aW9uICovCi0jZGVmaW5lCVNIVF9NSVBTX1JFR0lORk8gIDB4NzAwMDAwMDYJLyogUmVnaXN0ZXIgdXNhZ2UgaW5mb3JtYXRpb24gKi8KLQotLyoKLSAqIExlZ2FsIHZhbHVlcyBmb3Igc2hfZmxhZ3MgZmllbGQgb2YgRWxmMzJfU2hkci4KLSAqLwotI2RlZmluZQlTSEZfTUlQU19HUFJFTAkweDEwMDAwMDAwCS8qIE11c3QgYmUgcGFydCBvZiBnbG9iYWwgZGF0YSBhcmVhICovCi0KLSNpZiAwCi0vKgotICogRW50cmllcyBmb3VuZCBpbiBzZWN0aW9ucyBvZiB0eXBlIFNIVF9NSVBTX0dQVEFCLgotICovCi10eXBlZGVmIHVuaW9uIHsKLQlzdHJ1Y3QgewotCQlFbGYzMl9Xb3JkIGd0X2N1cnJlbnRfZ192YWx1ZTsJLyogLUcgdmFsIHVzZWQgaW4gY29tcGlsYXRpb24gKi8KLQkJRWxmMzJfV29yZCBndF91bnVzZWQ7CS8qIE5vdCB1c2VkICovCi0JfSBndF9oZWFkZXI7CQkJLyogRmlyc3QgZW50cnkgaW4gc2VjdGlvbiAqLwotCXN0cnVjdCB7Ci0JCUVsZjMyX1dvcmQgZ3RfZ192YWx1ZTsJLyogSWYgdGhpcyB2YWwgd2VyZSB1c2VkIGZvciAtRyAqLwotCQlFbGYzMl9Xb3JkIGd0X2J5dGVzOwkvKiBUaGlzIG1hbnkgYnl0ZXMgd291bGQgYmUgdXNlZCAqLwotCX0gZ3RfZW50cnk7CQkJLyogU3Vic2VxdWVudCBlbnRyaWVzIGluIHNlY3Rpb24gKi8KLX0gRWxmMzJfZ3B0YWI7Ci0KLS8qCi0gKiBFbnRyeSBmb3VuZCBpbiBzZWN0aW9ucyBvZiB0eXBlIFNIVF9NSVBTX1JFR0lORk8uCi0gKi8KLXR5cGVkZWYgc3RydWN0IHsKLQlFbGYzMl9Xb3JkCXJpX2dwcm1hc2s7CS8qIEdlbmVyYWwgcmVnaXN0ZXJzIHVzZWQgKi8KLQlFbGYzMl9Xb3JkCXJpX2Nwcm1hc2tbNF07CS8qIENvcHJvY2Vzc29yIHJlZ2lzdGVycyB1c2VkICovCi0JRWxmMzJfU3dvcmQJcmlfZ3BfdmFsdWU7CS8qICRncCByZWdpc3RlciB2YWx1ZSAqLwotfSBFbGYzMl9SZWdJbmZvOwotI2VuZGlmCi0KLQotLyoKLSAqIE1pcHMgcmVsb2NhdGlvbnMuCi0gKi8KLQotI2RlZmluZQlSX01JUFNfTk9ORQkwCS8qIE5vIHJlbG9jICovCi0jZGVmaW5lCVJfTUlQU18xNgkxCS8qIERpcmVjdCAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTXzMyCTIJLyogRGlyZWN0IDMyIGJpdCAqLwotI2RlZmluZQlSX01JUFNfUkVMMzIJMwkvKiBQQyByZWxhdGl2ZSAzMiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTXzI2CTQJLyogRGlyZWN0IDI2IGJpdCBzaGlmdGVkICovCi0jZGVmaW5lCVJfTUlQU19ISTE2CTUJLyogSGlnaCAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0xPMTYJNgkvKiBMb3cgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19HUFJFTDE2CTcJLyogR1AgcmVsYXRpdmUgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19MSVRFUkFMCTgJLyogMTYgYml0IGxpdGVyYWwgZW50cnkgKi8KLSNkZWZpbmUJUl9NSVBTX0dPVDE2CTkJLyogMTYgYml0IEdPVCBlbnRyeSAqLwotI2RlZmluZQlSX01JUFNfUEMxNgkxMAkvKiBQQyByZWxhdGl2ZSAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0NBTEwxNgkxMQkvKiAxNiBiaXQgR09UIGVudHJ5IGZvciBmdW5jdGlvbiAqLwotI2RlZmluZQlSX01JUFNfR1BSRUwzMgkxMgkvKiBHUCByZWxhdGl2ZSAzMiBiaXQgKi8KLQotI2RlZmluZQlSX01JUFNfNjQJMTgKLQotI2RlZmluZQlSX01JUFNfUkVMMzJfNjQJKChSX01JUFNfNjQgPDwgOCkgfCBSX01JUFNfUkVMMzIpCi0KLQotI2VuZGlmCS8qICFfTUlQUzY0X0VYRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3JlZ2RlZi5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhN2NkNjguLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmgKKysrIC9kZXYvbnVsbApAQCAtMSw5OSArMCwwIEBACi0vKgkkT3BlbkJTRDogcmVnZGVmLmgsdiAxLjMgMjAwNS8wOC8wNyAwNzoyOTo0NCBtaW9kIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTIsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIFJhbHBoIENhbXBiZWxsLiBUaGlzIGZpbGUgaXMgZGVyaXZlZCBmcm9tIHRoZSBNSVBTIFJJU0MKLSAqIEFyY2hpdGVjdHVyZSBib29rIGJ5IEdlcnJ5IEthbmUuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqCUAoIylyZWdkZWYuaAk4LjEgKEJlcmtlbGV5KSA2LzEwLzkzCi0gKi8KLSNpZm5kZWYgX01JUFNfUkVHREVGX0hfCi0jZGVmaW5lIF9NSVBTX1JFR0RFRl9IXwotCi0jaWYgKF9NSVBTX1NJTSA9PSBfQUJJNjQpICYmICFkZWZpbmVkKF9fbWlwc19uNjQpCi0jZGVmaW5lIF9fbWlwc19uNjQgMQotI2VuZGlmCi0jaWYgKF9NSVBTX1NJTSA9PSBfQUJJTjMyKSAmJiAgIWRlZmluZWQoX19taXBzX24zMikKLSNkZWZpbmUgX19taXBzX24zMiAxCi0jZW5kaWYKLQotI2RlZmluZSB6ZXJvCSQwCS8qIGFsd2F5cyB6ZXJvICovCi0jZGVmaW5lIEFUCSRhdAkvKiBhc3NlbWJsZXIgdGVtcCAqLwotI2RlZmluZSB2MAkkMgkvKiByZXR1cm4gdmFsdWUgKi8KLSNkZWZpbmUgdjEJJDMKLSNkZWZpbmUgYTAJJDQJLyogYXJndW1lbnQgcmVnaXN0ZXJzICovCi0jZGVmaW5lIGExCSQ1Ci0jZGVmaW5lIGEyCSQ2Ci0jZGVmaW5lIGEzCSQ3Ci0jaWYgZGVmaW5lZChfX21pcHNfbjMyKSB8fCBkZWZpbmVkKF9fbWlwc19uNjQpCi0jZGVmaW5lIGE0CSQ4CS8qIGV4cGFuZGVkIHJlZ2lzdGVyIGFyZ3VtZW50cyAqLwotI2RlZmluZSBhNQkkOQotI2RlZmluZSBhNgkkMTAKLSNkZWZpbmUgYTcJJDExCi0jZGVmaW5lIHRhMAkkOAkvKiBhbGlhcyAqLwotI2RlZmluZSB0YTEJJDkKLSNkZWZpbmUgdGEyCSQxMAotI2RlZmluZSB0YTMJJDExCi0jZGVmaW5lIHQwCSQxMgkvKiB0ZW1wIHJlZ2lzdGVycyAobm90IHNhdmVkIGFjcm9zcyBzdWJyb3V0aW5lIGNhbGxzKSAqLwotI2RlZmluZSB0MQkkMTMKLSNkZWZpbmUgdDIJJDE0Ci0jZGVmaW5lIHQzCSQxNQotI2Vsc2UKLSNkZWZpbmUgdDAJJDgJLyogdGVtcCByZWdpc3RlcnMgKG5vdCBzYXZlZCBhY3Jvc3Mgc3Vicm91dGluZSBjYWxscykgKi8KLSNkZWZpbmUgdDEJJDkKLSNkZWZpbmUgdDIJJDEwCi0jZGVmaW5lIHQzCSQxMQotI2RlZmluZSB0NAkkMTIKLSNkZWZpbmUgdDUJJDEzCi0jZGVmaW5lIHQ2CSQxNAotI2RlZmluZSB0NwkkMTUKLSNkZWZpbmUgdGEwCSQxMgkvKiBhbGlhcyAqLwotI2RlZmluZSB0YTEJJDEzCi0jZGVmaW5lIHRhMgkkMTQKLSNkZWZpbmUgdGEzCSQxNQotI2VuZGlmCi0jZGVmaW5lIHMwCSQxNgkvKiBzYXZlZCBhY3Jvc3Mgc3Vicm91dGluZSBjYWxscyAoY2FsbGVlIHNhdmVkKSAqLwotI2RlZmluZSBzMQkkMTcKLSNkZWZpbmUgczIJJDE4Ci0jZGVmaW5lIHMzCSQxOQotI2RlZmluZSBzNAkkMjAKLSNkZWZpbmUgczUJJDIxCi0jZGVmaW5lIHM2CSQyMgotI2RlZmluZSBzNwkkMjMKLSNkZWZpbmUgdDgJJDI0CS8qIHR3byBtb3JlIHRlbXAgcmVnaXN0ZXJzICovCi0jZGVmaW5lIHQ5CSQyNQotI2RlZmluZSBrMAkkMjYJLyoga2VybmVsIHRlbXBvcmFyeSAqLwotI2RlZmluZSBrMQkkMjcKLSNkZWZpbmUgZ3AJJDI4CS8qIGdsb2JhbCBwb2ludGVyICovCi0jZGVmaW5lIHNwCSQyOQkvKiBzdGFjayBwb2ludGVyICovCi0jZGVmaW5lIHM4CSQzMAkvKiBvbmUgbW9yZSBjYWxsZWUgc2F2ZWQgKi8KLSNkZWZpbmUgcmEJJDMxCS8qIHJldHVybiBhZGRyZXNzICovCi0KLSNlbmRpZiAvKiAhX01JUFNfUkVHREVGX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9yZWdudW0uaCBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3JlZ251bS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZmUxMjgwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3JlZ251bS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTE5ICswLDAgQEAKLS8qCSRPcGVuQlNEOiByZWdudW0uaCx2IDEuMyAyMDA0LzA4LzEwIDIwOjI4OjEzIGRlcmFhZHQgRXhwICQgKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMS0yMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2lmbmRlZiBfTUlQUzY0X1JFR05VTV9IXwotI2RlZmluZSBfTUlQUzY0X1JFR05VTV9IXwotCi0vKgotICogTG9jYXRpb24gb2YgdGhlIHNhdmVkIHJlZ2lzdGVycyByZWxhdGl2ZSB0byBaRVJPLgotICogVXNhZ2UgaXMgcC0+cF9yZWdzW1hYXS4KLSAqLwotI2RlZmluZSBaRVJPCTAKLSNkZWZpbmUgQVNUCTEKLSNkZWZpbmUgVjAJMgotI2RlZmluZSBWMQkzCi0jZGVmaW5lIEEwCTQKLSNkZWZpbmUgQTEJNQotI2RlZmluZSBBMgk2Ci0jZGVmaW5lIEEzCTcKLSNkZWZpbmUgVDAJOAotI2RlZmluZSBUMQk5Ci0jZGVmaW5lIFQyCTEwCi0jZGVmaW5lIFQzCTExCi0jZGVmaW5lIFQ0CTEyCi0jZGVmaW5lIFQ1CTEzCi0jZGVmaW5lIFQ2CTE0Ci0jZGVmaW5lIFQ3CTE1Ci0jZGVmaW5lIFMwCTE2Ci0jZGVmaW5lIFMxCTE3Ci0jZGVmaW5lIFMyCTE4Ci0jZGVmaW5lIFMzCTE5Ci0jZGVmaW5lIFM0CTIwCi0jZGVmaW5lIFM1CTIxCi0jZGVmaW5lIFM2CTIyCi0jZGVmaW5lIFM3CTIzCi0jZGVmaW5lIFQ4CTI0Ci0jZGVmaW5lIFQ5CTI1Ci0jZGVmaW5lIEswCTI2Ci0jZGVmaW5lIEsxCTI3Ci0jZGVmaW5lIEdQCTI4Ci0jZGVmaW5lIFNQCTI5Ci0jZGVmaW5lIFM4CTMwCi0jZGVmaW5lIFJBCTMxCi0jZGVmaW5lCVNSCTMyCi0jZGVmaW5lCVBTCVNSCS8qIGFsaWFzIGZvciBTUiAqLwotI2RlZmluZSBNVUxMTwkzMwotI2RlZmluZSBNVUxISQkzNAotI2RlZmluZSBCQURWQUREUiAzNQotI2RlZmluZSBDQVVTRQkzNgotI2RlZmluZQlQQwkzNwotI2RlZmluZQlJQwkzOAotI2RlZmluZQlDUEwJMzkKLQotI2RlZmluZQlOVU1TQVZFUkVHUyA0MAkJLyogTnVtYmVyIG9mIHJlZ2lzdGVycyBzYXZlZCBpbiB0cmFwICovCi0KLSNkZWZpbmUgRlBCQVNFCU5VTVNBVkVSRUdTCi0jZGVmaW5lIEYwCShGUEJBU0UrMCkKLSNkZWZpbmUgRjEJKEZQQkFTRSsxKQotI2RlZmluZSBGMgkoRlBCQVNFKzIpCi0jZGVmaW5lIEYzCShGUEJBU0UrMykKLSNkZWZpbmUgRjQJKEZQQkFTRSs0KQotI2RlZmluZSBGNQkoRlBCQVNFKzUpCi0jZGVmaW5lIEY2CShGUEJBU0UrNikKLSNkZWZpbmUgRjcJKEZQQkFTRSs3KQotI2RlZmluZSBGOAkoRlBCQVNFKzgpCi0jZGVmaW5lIEY5CShGUEJBU0UrOSkKLSNkZWZpbmUgRjEwCShGUEJBU0UrMTApCi0jZGVmaW5lIEYxMQkoRlBCQVNFKzExKQotI2RlZmluZSBGMTIJKEZQQkFTRSsxMikKLSNkZWZpbmUgRjEzCShGUEJBU0UrMTMpCi0jZGVmaW5lIEYxNAkoRlBCQVNFKzE0KQotI2RlZmluZSBGMTUJKEZQQkFTRSsxNSkKLSNkZWZpbmUgRjE2CShGUEJBU0UrMTYpCi0jZGVmaW5lIEYxNwkoRlBCQVNFKzE3KQotI2RlZmluZSBGMTgJKEZQQkFTRSsxOCkKLSNkZWZpbmUgRjE5CShGUEJBU0UrMTkpCi0jZGVmaW5lIEYyMAkoRlBCQVNFKzIwKQotI2RlZmluZSBGMjEJKEZQQkFTRSsyMSkKLSNkZWZpbmUgRjIyCShGUEJBU0UrMjIpCi0jZGVmaW5lIEYyMwkoRlBCQVNFKzIzKQotI2RlZmluZSBGMjQJKEZQQkFTRSsyNCkKLSNkZWZpbmUgRjI1CShGUEJBU0UrMjUpCi0jZGVmaW5lIEYyNgkoRlBCQVNFKzI2KQotI2RlZmluZSBGMjcJKEZQQkFTRSsyNykKLSNkZWZpbmUgRjI4CShGUEJBU0UrMjgpCi0jZGVmaW5lIEYyOQkoRlBCQVNFKzI5KQotI2RlZmluZSBGMzAJKEZQQkFTRSszMCkKLSNkZWZpbmUgRjMxCShGUEJBU0UrMzEpCi0jZGVmaW5lCUZTUgkoRlBCQVNFKzMyKQotCi0jZGVmaW5lCU5VTUZQUkVHUyAzMwotCi0jZGVmaW5lCU5SRUdTCShOVU1TQVZFUkVHUyArIE5VTUZQUkVHUykKLQotI2VuZGlmIC8qICFfTUlQUzY0X1JFR05VTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTViYTdiZS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaAorKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBzZXRqbXAuaCx2IDEuMiAyMDA0LzA4LzEwIDIxOjEwOjU2IHBlZm8gRXhwICQJKi8KLQotLyogUHVibGljIGRvbWFpbiAqLwotCi0jaWZuZGVmIF9NSVBTX1NFVEpNUF9IXwotI2RlZmluZSBfTUlQU19TRVRKTVBfSF8KLQotI2RlZmluZQlfSkJMRU4JMTU3CQkvKiBzaXplLCBpbiBsb25ncywgb2YgYSBqbXBfYnVmICovCi0KLSNlbmRpZiAvKiAhX01JUFNfU0VUSk1QX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9zaWduYWwuaCBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3NpZ25hbC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMzE3MTVjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3NpZ25hbC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHNpZ25hbC5oLHYgMS44IDIwMDYvMDEvMDkgMTg6MTg6MzcgbWlsbGVydCBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTkyLCAxOTkzCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBSYWxwaCBDYW1wYmVsbC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICoJQCgjKXNpZ25hbC5oCTguMSAoQmVya2VsZXkpIDYvMTAvOTMKLSAqLwotCi0jaWZuZGVmIF9NSVBTX1NJR05BTF9IXwotI2RlZmluZSBfTUlQU19TSUdOQUxfSF8KLQotI2RlZmluZQlTQ19SRUdNQVNLCSgwKlJFR1NaKQotI2RlZmluZQlTQ19TVEFUVVMJKDEqUkVHU1opCi0jZGVmaW5lCVNDX1BDCQkoMipSRUdTWikKLSNkZWZpbmUJU0NfUkVHUwkJKFNDX1BDKzgpCi0jZGVmaW5lCVNDX0ZQUkVHUwkoU0NfUkVHUyszMio4KQotI2RlZmluZQlTQ19BQ1gJCShTQ19GUFJFR1MrMzIqUkVHU1pfRlApCi0jZGVmaW5lCVNDX1VTRURfTUFUSAkoU0NfQUNYKzMqUkVHU1opCi0vKiBPcGVuQlNEIGNvbXBhdGliaWxpdHkgKi8KLSNkZWZpbmUJU0NfTUFTSwkJU0NfUkVHTUFTSwotI2RlZmluZQlTQ19GUFVTRUQJU0NfVVNFRF9NQVRICi0KLSNlbmRpZgkvKiAhX01JUFNfU0lHTkFMX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L21pcHM2NC5tayBiL2xpYmMvYXJjaC1taXBzNjQvbWlwczY0Lm1rCmluZGV4IDBkNGI3MjcuLjJiODFlNjMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvbWlwczY0Lm1rCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvbWlwczY0Lm1rCkBAIC05LDE1ICs5LDEzIEBACiAgICAgYmlvbmljL19fbWVtc2V0X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNweV9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHJjYXRfY2hrLmNwcCBcCi0gICAgYmlvbmljL21lbWNoci5jIFwKLSAgICBiaW9uaWMvbWVtY21wLmMgXAotICAgIGJpb25pYy9tZW1jcHkuY3BwIFwKLSAgICBiaW9uaWMvbWVtbW92ZS5jIFwKLSAgICBiaW9uaWMvbWVtcmNoci5jIFwKLSAgICBiaW9uaWMvbWVtc2V0LmMgXAogICAgIGJpb25pYy9zdHJjaHIuY3BwIFwKICAgICBiaW9uaWMvc3Rybmxlbi5jIFwKICAgICBiaW9uaWMvc3RycmNoci5jcHAgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtY21wLmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtY3B5LmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LmMgXAorICAgIGFyY2gtbWlwcy9zdHJpbmcvc3RybGVuLmMgXAogCiBsaWJjX2ZyZWVic2Rfc3JjX2ZpbGVzX21pcHM2NCArPSBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd2NzY2F0LmMgXApAQCAtMzAsNiArMjgsOSBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1tb3ZlLmMgXAogCiBsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzX21pcHM2NCArPSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtY2hyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbW1vdmUuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtcmNoci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBjcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RwbmNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJjYXQuYyBcCkBAIC0zNyw3ICszOCw2IEBACiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RyY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmxjYXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGNweS5jIFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsZW4uYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybmNhdC5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJuY21wLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cm5jcHkuYyBcCkBAIC00OSwxMiArNDksMTAgQEAKIGxpYmNfYmlvbmljX3NyY19maWxlc19taXBzNjQgKz0gXAogICAgIGFyY2gtbWlwczY0L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TIFwKICAgICBhcmNoLW1pcHM2NC9iaW9uaWMvX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bi5TIFwKLSAgICBhcmNoLW1pcHM2NC9iaW9uaWMvX19nZXRfc3AuUyBcCi0gICAgYXJjaC1taXBzNjQvYmlvbmljL19zZXRqbXAuUyBcCiAgICAgYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TIFwKLSAgICBhcmNoLW1pcHM2NC9iaW9uaWMvc2lnc2V0am1wLlMgXAogICAgIGFyY2gtbWlwczY0L2Jpb25pYy9zeXNjYWxsLlMgXAogICAgIGFyY2gtbWlwczY0L2Jpb25pYy92Zm9yay5TIFwKKyAgICBhcmNoLW1pcHM2NC9iaW9uaWMvc3RhdC5jcHAgXAogCiBsaWJjX2NydF90YXJnZXRfY2ZsYWdzX21pcHM2NCA6PSBcCiAgICAgJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfR0xPQkFMX0NGTEFHUykgXApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zdHJpbmcvbWVtc2V0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N0cmluZy9tZW1zZXQuUwppbmRleCAzZTYzMGNhLi4wOWI3NTZiIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N0cmluZy9tZW1zZXQuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N0cmluZy9tZW1zZXQuUwpAQCAtNjcsODYgKzY3LDYgQEAKICNkZWZpbmUgREJHCiAjZW5kaWYKIAotLyoKLSAqIHZvaWQgX21lbXNldDE2KHVpbnQxNl90KiBkc3QsIHVpbnQxNl90IHZhbHVlLCBzaXplX3Qgc2l6ZSk7Ci0gKi8KLQotTEVBRihfbWVtc2V0MTYsMCkKLQkuc2V0IG5vcmVvcmRlcgotREJHCS8qIENoZWNrIHBhcmFtZXRlcnMgKi8KLURCRwlhbmRpCXQwLGEwLDEJCQkjIGEwIG11c3QgYmUgaGFsZndvcmQgYWxpZ25lZAotREJHCXRuZQl0MCx6ZXJvCi1EQkcJYW5kaQl0MixhMiwxCQkJIyBhMiBtdXN0IGJlIGV2ZW4KLURCRwl0bmUJdDIsemVybwotCi0jaWZkZWYgRklYQVJHUwotCSMgZW5zdXJlIGNvdW50IGlzIGV2ZW4KLSNpZiAoX19taXBzPT0zMikgJiYgKF9fbWlwc19pc2FfcmV2Pj0yKQotCWlucwlhMix6ZXJvLDAsMQotI2Vsc2UKLQlvcmkJYTIsMQotCXhvcmkJYTIsMQotI2VuZGlmCi0jZW5kaWYKLQotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCWExLGExLDE2LDE2Ci0jZWxzZQotCWFuZGkJYTEsMHhmZmZmCi0Jc2xsCXQzLGExLDE2Ci0Jb3IJYTEsdDMKLSNlbmRpZgotCi0JYmVxeglhMiwuTGRvbmUKLQkgYW5kaQl0MSxhMCwyCi0JYmVxegl0MSwuTGFsaWdub2sKLQkgYWRkdQl0MCxhMCxhMgkJIyB0MCBpcyB0aGUgInBhc3QgdGhlIGVuZCIgYWRkcmVzcwotCXNoCWExLDAoYTApCQkjIHN0b3JlIG9uZSBoYWxmd29yZCB0byBnZXQgYWxpZ25lZAotCWFkZHUJYTAsMgotCXN1YnUJYTIsMgotLkxhbGlnbm9rOgotCXNsdGkJdDEsYTIsNAkJCSMgLkxhbGlnbmVkIGZvciA0IG9yIG1vcmUgYnl0ZXMKLQliZXF6CXQxLC5MYWxpZ25lZAotCSBzbmUJdDEsYTIsMgkJCSMgb25lIG1vcmUgaGFsZndvcmQ/Ci0JYm5legl0MSwuTGRvbmUKLQkgbm9wCi0Jc2gJYTEsMChhMCkKLS5MZG9uZToKLQlqCXJhCi0JIG5vcAotCS5zZXQgcmVvcmRlcgotRU5EKF9tZW1zZXQxNikKLQotLyoKLSAqIHZvaWQgX21lbXNldDMyKHVpbnQzMl90KiBkc3QsIHVpbnQzMl90IHZhbHVlLCBzaXplX3Qgc2l6ZSk7Ci0gKi8KLQotTEVBRihfbWVtc2V0MzIsMCkKLQkuc2V0IG5vcmVvcmRlcgotREJHCS8qIENoZWNrIHBhcmFtZXRlcnMgKi8KLURCRwlhbmRpCXQwLGEwLDMJCQkjIGEwIG11c3QgYmUgd29yZCBhbGlnbmVkCi1EQkcJdG5lCXQwLHplcm8KLURCRwlhbmRpCXQyLGEyLDMJCQkjIGEyIG11c3QgYmUgYSBtdWx0aXBsZSBvZiA0IGJ5dGVzCi1EQkcJdG5lCXQyLHplcm8KLQotI2lmZGVmIEZJWEFSR1MKLQkjIGVuc3VyZSBjb3VudCBpcyBhIG11bHRpcGxlIG9mIDQKLSNpZiAoX19taXBzPT0zMikgJiYgKF9fbWlwc19pc2FfcmV2Pj0yKQotCWlucwkkYTIsJDAsMCwyCi0jZWxzZQotCW9yaQlhMiwzCi0JeG9yaQlhMiwzCi0jZW5kaWYKLSNlbmRpZgotCi0JYm5leglhMiwuTGFsaWduZWQJCSMgYW55IHdvcmsgdG8gZG8/Ci0JIGFkZHUJdDAsYTAsYTIJCSMgdDAgaXMgdGhlICJwYXN0IHRoZSBlbmQiIGFkZHJlc3MKLQotCWoJcmEKLQkgbm9wCi0JLnNldCByZW9yZGVyCi1FTkQoX21lbXNldDMyKQotCiBMRUFGKG1lbXNldCwwKQogCiAJLnNldAlub3Jlb3JkZXIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMWNlNzA4Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19jbG9zZS5TCkBAIC0wLDAgKzEsMjYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fY2xvc2UpCisgICAgLnNldCBwdXNoCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICBsaSB2MCwgX19OUl9jbG9zZQorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX19jbG9zZSkKKy5oaWRkZW4gX19fY2xvc2UKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI0MDYyNWYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCkBAIC0wLDAgKzEsMjYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmFjY2Vzc2F0KQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfZmFjY2Vzc2F0CisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fX2ZhY2Nlc3NhdCkKKy5oaWRkZW4gX19fZmFjY2Vzc2F0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19mY2htb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YzE2YzU0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19mY2htb2QuUwpAQCAtMCwwICsxLDI2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZCkKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX2ZjaG1vZAorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX19mY2htb2QpCisuaGlkZGVuIF9fX2ZjaG1vZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUwZjEwOGUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2RhdCkKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX2ZjaG1vZGF0CisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fX2ZjaG1vZGF0KQorLmhpZGRlbiBfX19mY2htb2RhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwNDY3NWYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2Nsb2NrX25hbm9zbGVlcCkKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX2Nsb2NrX25hbm9zbGVlcAorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX2Nsb2NrX25hbm9zbGVlcCkKKy5oaWRkZW4gX19jbG9ja19uYW5vc2xlZXAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fZnN0YXRmcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg3NjZlMjIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fZnN0YXRmcy5TCkBAIC0wLDAgKzEsMjYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19mc3RhdGZzKQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfZnN0YXRmcworICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX2ZzdGF0ZnMpCisuaGlkZGVuIF9fZnN0YXRmcwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5N2FlYmEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3J0X3NpZ3F1ZXVlaW5mbykKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX3J0X3NpZ3F1ZXVlaW5mbworICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX3J0X3NpZ3F1ZXVlaW5mbykKKy5oaWRkZW4gX19ydF9zaWdxdWV1ZWluZm8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19zdGF0ZnMuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19zdGF0ZnMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmRiNGUyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX3N0YXRmcy5TCkBAIC0wLDAgKzEsMjYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19zdGF0ZnMpCisgICAgLnNldCBwdXNoCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICBsaSB2MCwgX19OUl9zdGF0ZnMKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbW92ZSB0MCwgcmEKKyAgICBiYWwgICAgIDJmCisgICAgbm9wCisyOgorICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKKyAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIC5jcHJldHVybgorICAgIGogdDkKKyAgICBtb3ZlIHJhLCB0MAorICAgIC5zZXQgcG9wCitFTkQoX19zdGF0ZnMpCisuaGlkZGVuIF9fc3RhdGZzCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19leGl0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19leGl0LlMKaW5kZXggZGE1YTJmNy4uMzdmODExOSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fZXhpdC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2V4aXQuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQoX2V4aXQpCiAKLSAgICAuZ2xvYmwgX0V4aXQKLSAgICAuZXF1IF9FeGl0LCBfZXhpdAorQUxJQVNfU1lNQk9MKF9FeGl0LCBfZXhpdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2ZsdXNoX2NhY2hlLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19mbHVzaF9jYWNoZS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhOWU0ODQyLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2ZsdXNoX2NhY2hlLlMKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKF9mbHVzaF9jYWNoZSkKLSAgICAuc2V0IHB1c2gKLSAgICAuc2V0IG5vcmVvcmRlcgotICAgIGxpIHYwLCBfX05SX2NhY2hlZmx1c2gKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoX2ZsdXNoX2NhY2hlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5NThhMTAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUworKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvY2tfbmFub3NsZWVwKQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfY2xvY2tfbmFub3NsZWVwCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIG1vdmUgdDAsIHJhCi0gICAgYmFsICAgICAyZgotICAgIG5vcAotMjoKLSAgICAuY3BzZXR1cCByYSwgdDEsIDJiCi0gICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICAuY3ByZXR1cm4KLSAgICBqIHQ5Ci0gICAgbW92ZSByYSwgdDAKLSAgICAuc2V0IHBvcAotRU5EKGNsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvY2xvc2UuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvY2xvc2UuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWUyMzdkZC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Nsb3NlLlMKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb3NlKQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfY2xvc2UKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoY2xvc2UpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mYWNjZXNzYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMThiYjgwMC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmYWNjZXNzYXQpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9mYWNjZXNzYXQKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoZmFjY2Vzc2F0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mYWxsb2NhdGUuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMKaW5kZXggYzFlZjBlZC4uMTRlMjVhMCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mYWxsb2NhdGUuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChmYWxsb2NhdGUpCiAKLSAgICAuZ2xvYmwgZmFsbG9jYXRlNjQKLSAgICAuZXF1IGZhbGxvY2F0ZTY0LCBmYWxsb2NhdGUKK0FMSUFTX1NZTUJPTChmYWxsb2NhdGU2NCwgZmFsbG9jYXRlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mY2htb2QuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmNobW9kLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE4NzdiNzguLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mY2htb2QuUworKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kKQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfZmNobW9kCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIG1vdmUgdDAsIHJhCi0gICAgYmFsICAgICAyZgotICAgIG5vcAotMjoKLSAgICAuY3BzZXR1cCByYSwgdDEsIDJiCi0gICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICAuY3ByZXR1cm4KLSAgICBqIHQ5Ci0gICAgbW92ZSByYSwgdDAKLSAgICAuc2V0IHBvcAotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmNobW9kYXQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmNobW9kYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTUxNDkyYS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfZmNobW9kYXQKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoZmNobW9kYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZzdGF0NjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXQ2NC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMTRkNTFjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXQ2NC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmc3RhdDY0KQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfZnN0YXQKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoZnN0YXQ2NCkKLQotICAgIC5nbG9ibCBmc3RhdAotICAgIC5lcXUgZnN0YXQsIGZzdGF0NjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ODg4YTQzLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZzdGF0YXQ2NCkKLSAgICAuc2V0IHB1c2gKLSAgICAuc2V0IG5vcmVvcmRlcgotICAgIGxpIHYwLCBfX05SX25ld2ZzdGF0YXQKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoZnN0YXRhdDY0KQotCi0gICAgLmdsb2JsIGZzdGF0YXQKLSAgICAuZXF1IGZzdGF0YXQsIGZzdGF0YXQ2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdGZzNjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXRmczY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyZTg4NWMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZnN0YXRmczY0KQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfZnN0YXRmcwotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChmc3RhdGZzNjQpCi0KLSAgICAuZ2xvYmwgZnN0YXRmcwotICAgIC5lcXUgZnN0YXRmcywgZnN0YXRmczY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mdHJ1bmNhdGUuUwppbmRleCA1OGI4NDdiLi4wNjNlOGYzIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKGZ0cnVuY2F0ZSkKIAotICAgIC5nbG9ibCBmdHJ1bmNhdGU2NAotICAgIC5lcXUgZnRydW5jYXRlNjQsIGZ0cnVuY2F0ZQorQUxJQVNfU1lNQk9MKGZ0cnVuY2F0ZTY0LCBmdHJ1bmNhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2dldHJsaW1pdC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9nZXRybGltaXQuUwppbmRleCA3NTc2YzE3Li41ZTJhODJhIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2dldHJsaW1pdC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKGdldHJsaW1pdCkKIAotICAgIC5nbG9ibCBnZXRybGltaXQ2NAotICAgIC5lcXUgZ2V0cmxpbWl0NjQsIGdldHJsaW1pdAorQUxJQVNfU1lNQk9MKGdldHJsaW1pdDY0LCBnZXRybGltaXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2xzZWVrLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2xzZWVrLlMKaW5kZXggNWM5MmQ3MC4uM2JmYzI5ZCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9sc2Vlay5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvbHNlZWsuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQobHNlZWspCiAKLSAgICAuZ2xvYmwgbHNlZWs2NAotICAgIC5lcXUgbHNlZWs2NCwgbHNlZWsKK0FMSUFTX1NZTUJPTChsc2VlazY0LCBsc2VlaykKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvbW1hcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9tbWFwLlMKaW5kZXggMzkzMjcxYS4uY2M1M2ViMiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9tbWFwLlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9tbWFwLlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKG1tYXApCiAKLSAgICAuZ2xvYmwgbW1hcDY0Ci0gICAgLmVxdSBtbWFwNjQsIG1tYXAKK0FMSUFTX1NZTUJPTChtbWFwNjQsIG1tYXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3ByZWFkNjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJlYWQ2NC5TCmluZGV4IDkwZTA2MTIuLjc5NjViYTkgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJlYWQ2NC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJlYWQ2NC5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChwcmVhZDY0KQogCi0gICAgLmdsb2JsIHByZWFkCi0gICAgLmVxdSBwcmVhZCwgcHJlYWQ2NAorQUxJQVNfU1lNQk9MKHByZWFkLCBwcmVhZDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmxpbWl0NjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMKaW5kZXggNWYwYmExZC4uZTA0YTViNiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmxpbWl0NjQuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3BybGltaXQ2NC5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChwcmxpbWl0NjQpCiAKLSAgICAuZ2xvYmwgcHJsaW1pdAotICAgIC5lcXUgcHJsaW1pdCwgcHJsaW1pdDY0CitBTElBU19TWU1CT0wocHJsaW1pdCwgcHJsaW1pdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wd3JpdGU2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wd3JpdGU2NC5TCmluZGV4IGUzNGY4ZGIuLjk3ZTAxODMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHdyaXRlNjQuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3B3cml0ZTY0LlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKHB3cml0ZTY0KQogCi0gICAgLmdsb2JsIHB3cml0ZQotICAgIC5lcXUgcHdyaXRlLCBwd3JpdGU2NAorQUxJQVNfU1lNQk9MKHB3cml0ZSwgcHdyaXRlNjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NlbmRmaWxlLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKaW5kZXggZjMzMDI0Mi4uYTUwNDU5ZSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZW5kZmlsZS5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2VuZGZpbGUuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQoc2VuZGZpbGUpCiAKLSAgICAuZ2xvYmwgc2VuZGZpbGU2NAotICAgIC5lcXUgc2VuZGZpbGU2NCwgc2VuZGZpbGUKK0FMSUFTX1NZTUJPTChzZW5kZmlsZTY0LCBzZW5kZmlsZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjEzMmEyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TCkBAIC0wLDAgKzEsMjUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc2V0aG9zdG5hbWUpCisgICAgLnNldCBwdXNoCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICBsaSB2MCwgX19OUl9zZXRob3N0bmFtZQorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChzZXRob3N0bmFtZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NldHJsaW1pdC5TCmluZGV4IDBlNWU4MGUuLmJlNmZkYzMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRybGltaXQuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQoc2V0cmxpbWl0KQogCi0gICAgLmdsb2JsIHNldHJsaW1pdDY0Ci0gICAgLmVxdSBzZXRybGltaXQ2NCwgc2V0cmxpbWl0CitBTElBU19TWU1CT0woc2V0cmxpbWl0NjQsIHNldHJsaW1pdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc3RhdGZzNjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc3RhdGZzNjQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzQzNTFmNy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3N0YXRmczY0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKHN0YXRmczY0KQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfc3RhdGZzCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIG1vdmUgdDAsIHJhCi0gICAgYmFsICAgICAyZgotICAgIG5vcAotMjoKLSAgICAuY3BzZXR1cCByYSwgdDEsIDJiCi0gICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICAuY3ByZXR1cm4KLSAgICBqIHQ5Ci0gICAgbW92ZSByYSwgdDAKLSAgICAuc2V0IHBvcAotRU5EKHN0YXRmczY0KQotCi0gICAgLmdsb2JsIHN0YXRmcwotICAgIC5lcXUgc3RhdGZzLCBzdGF0ZnM2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy90cnVuY2F0ZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy90cnVuY2F0ZS5TCmluZGV4IGZiM2I3ZWIuLmI4MzI3OTYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3RydW5jYXRlLlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKHRydW5jYXRlKQogCi0gICAgLmdsb2JsIHRydW5jYXRlNjQKLSAgICAuZXF1IHRydW5jYXRlNjQsIHRydW5jYXRlCitBTElBU19TWU1CT0wodHJ1bmNhdGU2NCwgdHJ1bmNhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3NzZTItd2NzbGVuLWF0b20uUyBiL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NlMi13Y3NsZW4tYXRvbS5TCmluZGV4IDZhNmFkNTEuLjJmMTBkYjQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NlMi13Y3NsZW4tYXRvbS5TCisrKyBiL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NlMi13Y3NsZW4tYXRvbS5TCkBAIC02NSwyMSArNjUsMjEgQEAKIEVOVFJZICh3Y3NsZW4pCiAJbW92CVNUUiglZXNwKSwgJWVkeAogI2VuZGlmCi0JY21wCSQwLCAoJWVkeCkKKwljbXBsCSQwLCAoJWVkeCkKIAlqeglMKGV4aXRfdGFpbDApCi0JY21wCSQwLCA0KCVlZHgpCisJY21wbAkkMCwgNCglZWR4KQogCWp6CUwoZXhpdF90YWlsMSkKLQljbXAJJDAsIDgoJWVkeCkKKwljbXBsCSQwLCA4KCVlZHgpCiAJanoJTChleGl0X3RhaWwyKQotCWNtcAkkMCwgMTIoJWVkeCkKKwljbXBsCSQwLCAxMiglZWR4KQogCWp6CUwoZXhpdF90YWlsMykKLQljbXAJJDAsIDE2KCVlZHgpCisJY21wbAkkMCwgMTYoJWVkeCkKIAlqeglMKGV4aXRfdGFpbDQpCi0JY21wCSQwLCAyMCglZWR4KQorCWNtcGwJJDAsIDIwKCVlZHgpCiAJanoJTChleGl0X3RhaWw1KQotCWNtcAkkMCwgMjQoJWVkeCkKKwljbXBsCSQwLCAyNCglZWR4KQogCWp6CUwoZXhpdF90YWlsNikKLQljbXAJJDAsIDI4KCVlZHgpCisJY21wbAkkMCwgMjgoJWVkeCkKIAlqeglMKGV4aXRfdGFpbDcpCiAKIAlweG9yCSV4bW0wLCAleG1tMApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjYXQtYXRvbS5TIGIvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjYXQtYXRvbS5TCmluZGV4IDE3YjA4NDMuLjhhMzg5YTMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NzZTMtd2NzY2F0LWF0b20uUworKysgYi9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NhdC1hdG9tLlMKQEAgLTk4LDEzICs5OCwxMyBAQAogCW1vdglTVFIyKCVlc3ApLCAlZWN4CiAJbGVhCSglZWRpLCAlZWF4KSwgJWVkeAogCi0JY21wCSQwLCAoJWVjeCkKKwljbXBsCSQwLCAoJWVjeCkKIAlqeglMKEV4aXQ0KQotCWNtcAkkMCwgNCglZWN4KQorCWNtcGwJJDAsIDQoJWVjeCkKIAlqeglMKEV4aXQ4KQotCWNtcAkkMCwgOCglZWN4KQorCWNtcGwJJDAsIDgoJWVjeCkKIAlqeglMKEV4aXQxMikKLQljbXAJJDAsIDEyKCVlY3gpCisJY21wbAkkMCwgMTIoJWVjeCkKIAlqeglMKEV4aXQxNikKIAogI3VuZGVmIFJFVFVSTgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjcHktYXRvbS5TIGIvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjcHktYXRvbS5TCmluZGV4IDhiYTg0YmMuLjI3Y2I2MWUgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NzZTMtd2NzY3B5LWF0b20uUworKysgYi9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NweS1hdG9tLlMKQEAgLTkyLDEzICs5MiwxMyBAQAogCW1vdglTVFIxKCVlc3ApLCAlZWR4CiAJbW92CVNUUjIoJWVzcCksICVlY3gKIAotCWNtcAkkMCwgKCVlY3gpCisJY21wbAkkMCwgKCVlY3gpCiAJanoJTChFeGl0VGFpbDQpCi0JY21wCSQwLCA0KCVlY3gpCisJY21wbAkkMCwgNCglZWN4KQogCWp6CUwoRXhpdFRhaWw4KQotCWNtcAkkMCwgOCglZWN4KQorCWNtcGwJJDAsIDgoJWVjeCkKIAlqeglMKEV4aXRUYWlsMTIpCi0JY21wCSQwLCAxMiglZWN4KQorCWNtcGwJJDAsIDEyKCVlY3gpCiAJanoJTChFeGl0VGFpbDE2KQogCiAJUFVTSAkoJWVkaSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvYmlvbmljL19fYmlvbmljX2Nsb25lLlMgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCmluZGV4IGVmNzhhZWUuLjFhNmY2NDIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYmlvbmljL19fYmlvbmljX2Nsb25lLlMKKysrIGIvbGliYy9hcmNoLXg4Ni9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUwpAQCAtMyw4ICszLDE0IEBACiAvLyBwaWRfdCBfX2Jpb25pY19jbG9uZShpbnQgZmxhZ3MsIHZvaWQqIGNoaWxkX3N0YWNrLCBwaWRfdCogcGFyZW50X3RpZCwgdm9pZCogdGxzLCBwaWRfdCogY2hpbGRfdGlkLCBpbnQgKCpmbikodm9pZCopLCB2b2lkKiBhcmcpOwogRU5UUlkoX19iaW9uaWNfY2xvbmUpCiAgICAgICAgIHB1c2hsICAgJWVieAorICAgICAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAgICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAogICAgICAgICBwdXNobCAgICVlc2kKKyAgICAgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKICAgICAgICAgcHVzaGwgICAlZWRpCisgICAgICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgICAgICAuY2ZpX3JlbF9vZmZzZXQgZWRpLCAwCiAKICAgICAgICAgIyBMb2FkIHN5c3RlbSBjYWxsIGFyZ3VtZW50cyBpbnRvIHJlZ2lzdGVycy4KICAgICAgICAgbW92bCAgICAxNiglZXNwKSwgJWVieCAgICMgZmxhZ3MKQEAgLTQ2LDggKzUyLDE0IEBACiAgICAgICAgICMgV2UncmUgdGhlIHBhcmVudDsgbm90aGluZyB0byBkby4KIC5MX2JjX3JldHVybjoKICAgICAgICAgcG9wbCAgICAlZWRpCisgICAgICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgLTQKKyAgICAgICAgLmNmaV9yZXN0b3JlIGVkaQogICAgICAgICBwb3BsICAgICVlc2kKKyAgICAgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAorICAgICAgICAuY2ZpX3Jlc3RvcmUgZXNpCiAgICAgICAgIHBvcGwgICAgJWVieAorICAgICAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgICAgICAgIC5jZmlfcmVzdG9yZSBlYngKICAgICAgICAgcmV0CiBFTkQoX19iaW9uaWNfY2xvbmUpCiAuaGlkZGVuIF9fYmlvbmljX2Nsb25lCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2Jpb25pYy9fc2V0am1wLlMgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9fc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBiMjU2YTIuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvX3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsNzMgKzAsMCBAQAotLyogJE9wZW5CU0Q6IF9zZXRqbXAuUyx2IDEuNSAyMDA1LzA4LzA3IDExOjMwOjM4IGVzcGllIEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBXaWxsaWFtIEpvbGl0ei4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi0vKgotICogQyBsaWJyYXJ5IC0tIF9zZXRqbXAsIF9sb25nam1wCi0gKgotICoJX2xvbmdqbXAoYSx2KQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0bwotICoJX3NldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgTk9UIHJlc3RvcmVkLgotICovCi0KLUVOVFJZKF9zZXRqbXApCi0JbW92bAk0KCVlc3ApLCVlYXgKLQltb3ZsCTAoJWVzcCksJWVkeAotCW1vdmwJJWVkeCwgMCglZWF4KQkJLyogcnRhICovCi0JbW92bAklZWJ4LCA0KCVlYXgpCi0JbW92bAklZXNwLCA4KCVlYXgpCi0JbW92bAklZWJwLDEyKCVlYXgpCi0JbW92bAklZXNpLDE2KCVlYXgpCi0JbW92bAklZWRpLDIwKCVlYXgpCi0JeG9ybAklZWF4LCVlYXgKLQlyZXQKLUVORChfc2V0am1wKQotCi1FTlRSWShfbG9uZ2ptcCkKLQltb3ZsCTQoJWVzcCksJWVkeAotCW1vdmwJOCglZXNwKSwlZWF4Ci0JbW92bAkwKCVlZHgpLCVlY3gKLQltb3ZsCTQoJWVkeCksJWVieAotCW1vdmwJOCglZWR4KSwlZXNwCi0JbW92bAkxMiglZWR4KSwlZWJwCi0JbW92bAkxNiglZWR4KSwlZXNpCi0JbW92bAkyMCglZWR4KSwlZWRpCi0JdGVzdGwJJWVheCwlZWF4Ci0Jam56CTFmCi0JaW5jbAklZWF4Ci0xOgltb3ZsCSVlY3gsMCglZXNwKQotCXJldAotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc2V0am1wLlMgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9zZXRqbXAuUwppbmRleCA4ZjlkNjdjLi4xOGFkODEwIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L2Jpb25pYy9zZXRqbXAuUworKysgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9zZXRqbXAuUwpAQCAtMSw0ICsxLDMgQEAKLS8qICRPcGVuQlNEOiBzZXRqbXAuUyx2IDEuOCAyMDA1LzA4LzA3IDExOjMwOjM4IGVzcGllIEV4cCAkICovCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTMzLDU1ICszMiw5NiBAQAogCiAjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CiAKLS8qCi0gKiBDIGxpYnJhcnkgLS0gc2V0am1wLCBsb25nam1wCi0gKgotICoJbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglzZXRqbXAoYSkKLSAqIGJ5IHJlc3RvcmluZyByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suCi0gKiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIHJlc3RvcmVkLgotICovCisjZGVmaW5lIF9KQl9FRFggMAorI2RlZmluZSBfSkJfRUJYIDEKKyNkZWZpbmUgX0pCX0VTUCAyCisjZGVmaW5lIF9KQl9FQlAgMworI2RlZmluZSBfSkJfRVNJIDQKKyNkZWZpbmUgX0pCX0VESSA1CisjZGVmaW5lIF9KQl9TSUdNQVNLIDYKKyNkZWZpbmUgX0pCX1NJR0ZMQUcgNwogCiBFTlRSWShzZXRqbXApCi0JUElDX1BST0xPR1VFCi0JcHVzaGwJJDAKLQljYWxsCVBJQ19QTFQoc2lnYmxvY2spCi0JYWRkbAkkNCwlZXNwCi0JUElDX0VQSUxPR1VFCi0KLQltb3ZsCTQoJWVzcCksJWVjeAotCW1vdmwJMCglZXNwKSwlZWR4Ci0JbW92bAklZWR4LCAwKCVlY3gpCi0JbW92bAklZWJ4LCA0KCVlY3gpCi0JbW92bAklZXNwLCA4KCVlY3gpCi0JbW92bAklZWJwLDEyKCVlY3gpCi0JbW92bAklZXNpLDE2KCVlY3gpCi0JbW92bAklZWRpLDIwKCVlY3gpCi0JbW92bAklZWF4LDI0KCVlY3gpCi0JeG9ybAklZWF4LCVlYXgKLQlyZXQKKyAgbW92bCA0KCVlc3ApLCVlY3gKKyAgbW92bCAkMSwoX0pCX1NJR0ZMQUcgKiA0KSglZWN4KQorICBqbXAgLkxfc2lnc2V0am1wX3NpZ25hbF9tYXNrCiBFTkQoc2V0am1wKQogCi1FTlRSWShsb25nam1wKQotCW1vdmwJNCglZXNwKSwlZWR4Ci0JUElDX1BST0xPR1VFCi0JcHVzaGwJMjQoJWVkeCkKLQljYWxsCVBJQ19QTFQoc2lnc2V0bWFzaykKLQlhZGRsCSQ0LCVlc3AKLQlQSUNfRVBJTE9HVUUKK0VOVFJZKF9zZXRqbXApCisgIG1vdmwgNCglZXNwKSwlZWN4CisgIG1vdmwgJDAsKF9KQl9TSUdGTEFHICogNCkoJWVjeCkKKyAgam1wIC5MX3NpZ3NldGptcF9ub19zaWduYWxfbWFzaworRU5EKF9zZXRqbXApCiAKLQltb3ZsCTQoJWVzcCksJWVkeAotCW1vdmwJOCglZXNwKSwlZWF4Ci0JbW92bAkwKCVlZHgpLCVlY3gKLQltb3ZsCTQoJWVkeCksJWVieAotCW1vdmwJOCglZWR4KSwlZXNwCi0JbW92bAkxMiglZWR4KSwlZWJwCi0JbW92bAkxNiglZWR4KSwlZXNpCi0JbW92bAkyMCglZWR4KSwlZWRpCi0JdGVzdGwJJWVheCwlZWF4Ci0Jam56CTFmCi0JaW5jbAklZWF4Ci0xOgltb3ZsCSVlY3gsMCglZXNwKQotCXJldAotRU5EKGxvbmdqbXApCitFTlRSWShzaWdzZXRqbXApCisgIG1vdmwgNCglZXNwKSwlZWN4CisgIG1vdmwgOCglZXNwKSwlZWF4CisKKyAgLy8gUmVjb3JkIHdoZXRoZXIgb3Igbm90IHRoZSBzaWduYWwgbWFzayBpcyB2YWxpZC4KKyAgbW92bCAlZWF4LChfSkJfU0lHRkxBRyAqIDQpKCVlY3gpCisKKyAgLy8gRG8gd2UgbmVlZCB0byBzYXZlIHRoZSBzaWduYWwgbWFzaz8KKyAgdGVzdGwgJWVheCwlZWF4CisgIGp6IDFmCisKKy5MX3NpZ3NldGptcF9zaWduYWxfbWFzazoKKyAgLy8gR2V0IHRoZSBjdXJyZW50IHNpZ25hbCBtYXNrLgorICBQSUNfUFJPTE9HVUUKKyAgcHVzaGwgJDAKKyAgY2FsbCBQSUNfUExUKHNpZ2Jsb2NrKQorICBhZGRsICQ0LCVlc3AKKyAgUElDX0VQSUxPR1VFCisKKyAgLy8gU2F2ZSB0aGUgc2lnbmFsIG1hc2suCisgIG1vdmwgNCglZXNwKSwlZWN4CisgIG1vdmwgJWVheCwoX0pCX1NJR01BU0sgKiA0KSglZWN4KQorCisuTF9zaWdzZXRqbXBfbm9fc2lnbmFsX21hc2s6CisxOgorICAvLyBTYXZlIHRoZSBjYWxsZWUtc2F2ZSByZWdpc3RlcnMuCisgIG1vdmwgMCglZXNwKSwlZWR4CisgIG1vdmwgJWVkeCwoX0pCX0VEWCAqIDQpKCVlY3gpCisgIG1vdmwgJWVieCwoX0pCX0VCWCAqIDQpKCVlY3gpCisgIG1vdmwgJWVzcCwoX0pCX0VTUCAqIDQpKCVlY3gpCisgIG1vdmwgJWVicCwoX0pCX0VCUCAqIDQpKCVlY3gpCisgIG1vdmwgJWVzaSwoX0pCX0VTSSAqIDQpKCVlY3gpCisgIG1vdmwgJWVkaSwoX0pCX0VESSAqIDQpKCVlY3gpCisKKyAgeG9ybCAlZWF4LCVlYXgKKyAgcmV0CitFTkQoc2lnc2V0am1wKQorCitFTlRSWShzaWdsb25nam1wKQorICAvLyBEbyB3ZSBoYXZlIGEgc2lnbmFsIG1hc2sgdG8gcmVzdG9yZT8KKyAgbW92bCA0KCVlc3ApLCVlZHgKKyAgY21wbCAkMCwoX0pCX1NJR0ZMQUcgKiA0KSglZWR4KQorICBqeiAxZgorCisgIC8vIFJlc3RvcmUgdGhlIHNpZ25hbCBtYXNrLgorICBQSUNfUFJPTE9HVUUKKyAgcHVzaGwgKF9KQl9TSUdNQVNLICogNCkoJWVkeCkKKyAgY2FsbCBQSUNfUExUKHNpZ3NldG1hc2spCisgIGFkZGwgJDQsJWVzcAorICBQSUNfRVBJTE9HVUUKKworMToKKyAgLy8gUmVzdG9yZSB0aGUgY2FsbGVlLXNhdmUgcmVnaXN0ZXJzLgorICBtb3ZsIDQoJWVzcCksJWVkeAorICBtb3ZsIDgoJWVzcCksJWVheAorICBtb3ZsIChfSkJfRURYICogNCkoJWVkeCksJWVjeAorICBtb3ZsIChfSkJfRUJYICogNCkoJWVkeCksJWVieAorICBtb3ZsIChfSkJfRVNQICogNCkoJWVkeCksJWVzcAorICBtb3ZsIChfSkJfRUJQICogNCkoJWVkeCksJWVicAorICBtb3ZsIChfSkJfRVNJICogNCkoJWVkeCksJWVzaQorICBtb3ZsIChfSkJfRURJICogNCkoJWVkeCksJWVkaQorCisgIHRlc3RsICVlYXgsJWVheAorICBqbnogMmYKKyAgaW5jbCAlZWF4CisyOgorICBtb3ZsICVlY3gsMCglZXNwKQorICByZXQKK0VORChzaWdsb25nam1wKQorCitBTElBU19TWU1CT0wobG9uZ2ptcCwgc2lnbG9uZ2ptcCkKK0FMSUFTX1NZTUJPTChfbG9uZ2ptcCwgc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvYmlvbmljL3NpZ3NldGptcC5TIGIvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc2lnc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1MGM2MDYuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc2lnc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSw4NiArMCwwIEBACi0vKiAkT3BlbkJTRDogc2lnc2V0am1wLlMsdiAxLjcgMjAwNS8wOC8wNyAxMTozMDozOCBlc3BpZSBFeHAgJCAqLwotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogV2lsbGlhbSBKb2xpdHouCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoc2lnc2V0am1wKQotCW1vdmwJNCglZXNwKSwlZWN4Ci0JbW92bAk4KCVlc3ApLCVlYXgKLQltb3ZsCSVlYXgsMjgoJWVjeCkKLQl0ZXN0bAklZWF4LCVlYXgKLQlqegkxZgotCi0JUElDX1BST0xPR1VFCi0JcHVzaGwJJDAKLQljYWxsCVBJQ19QTFQoc2lnYmxvY2spCi0JYWRkbAkkNCwlZXNwCi0JUElDX0VQSUxPR1VFCi0KLQltb3ZsCTQoJWVzcCksJWVjeAotCW1vdmwJJWVheCwyNCglZWN4KQotMToJbW92bAkwKCVlc3ApLCVlZHgKLQltb3ZsCSVlZHgsIDAoJWVjeCkKLQltb3ZsCSVlYngsIDQoJWVjeCkKLQltb3ZsCSVlc3AsIDgoJWVjeCkKLQltb3ZsCSVlYnAsMTIoJWVjeCkKLQltb3ZsCSVlc2ksMTYoJWVjeCkKLQltb3ZsCSVlZGksMjAoJWVjeCkKLQl4b3JsCSVlYXgsJWVheAotCXJldAotRU5EKHNpZ3NldGptcCkKLQotRU5UUlkoc2lnbG9uZ2ptcCkKLQltb3ZsCTQoJWVzcCksJWVkeAotCWNtcGwJJDAsMjgoJWVkeCkKLQlqegkxZgotCi0JUElDX1BST0xPR1VFCi0JcHVzaGwJMjQoJWVkeCkKLQljYWxsCVBJQ19QTFQoc2lnc2V0bWFzaykKLQlhZGRsCSQ0LCVlc3AKLQlQSUNfRVBJTE9HVUUKLQotMToJbW92bAk0KCVlc3ApLCVlZHgKLQltb3ZsCTgoJWVzcCksJWVheAotCW1vdmwJMCglZWR4KSwlZWN4Ci0JbW92bAk0KCVlZHgpLCVlYngKLQltb3ZsCTgoJWVkeCksJWVzcAotCW1vdmwJMTIoJWVkeCksJWVicAotCW1vdmwJMTYoJWVkeCksJWVzaQotCW1vdmwJMjAoJWVkeCksJWVkaQotCXRlc3RsCSVlYXgsJWVheAotCWpuegkyZgotCWluY2wJJWVheAotMjoJbW92bAklZWN4LDAoJWVzcCkKLQlyZXQKLUVORChzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc3lzY2FsbC5TIGIvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc3lzY2FsbC5TCmluZGV4IGY4NWVjMzkuLjJhMTUxMDIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYmlvbmljL3N5c2NhbGwuUworKysgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9zeXNjYWxsLlMKQEAgLTE1LDkgKzE1LDE3IEBACiBFTlRSWShzeXNjYWxsKQogICAgICMgUHVzaCB0aGUgY2FsbGVlIHNhdmUgcmVnaXN0ZXJzLgogICAgIHB1c2ggICAgJWVieAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKICAgICBwdXNoICAgICVlc2kKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZXNpLCAwCiAgICAgcHVzaCAgICAlZWRpCisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVkaSwgMAogICAgIHB1c2ggICAgJWVicAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlYnAsIDAKIAogICAgICMgTG9hZCBhbGwgdGhlIGFyZ3VtZW50cyBmcm9tIHRoZSBjYWxsaW5nIGZyYW1lLgogICAgICMgKE5vdCBhbGwgd2lsbCBiZSB2YWxpZCwgZGVwZW5kaW5nIG9uIHRoZSBzeXNjYWxsLikKQEAgLTQzLDggKzUxLDE2IEBACiAxOgogICAgICMgUmVzdG9yZSB0aGUgY2FsbGVlIHNhdmUgcmVnaXN0ZXJzLgogICAgIHBvcCAgICAlZWJwCisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAorICAgIC5jZmlfcmVzdG9yZSBlYnAKICAgICBwb3AgICAgJWVkaQorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgLTQKKyAgICAuY2ZpX3Jlc3RvcmUgZWRpCiAgICAgcG9wICAgICVlc2kKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgICAgLmNmaV9yZXN0b3JlIGVzaQogICAgIHBvcCAgICAlZWJ4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAorICAgIC5jZmlfcmVzdG9yZSBlYngKICAgICByZXQKIEVORChzeXNjYWxsKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvdmZvcmsuUyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL3Zmb3JrLlMKaW5kZXggNmMwMjkxMC4uY2E3YWYwZiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvdmZvcmsuUworKysgYi9saWJjL2FyY2gteDg2L2Jpb25pYy92Zm9yay5TCkBAIC0zMiw2ICszMiw4IEBACiAKIEVOVFJZKHZmb3JrKQogICBwb3BsICAgICVlY3ggIC8vIEdyYWIgdGhlIHJldHVybiBhZGRyZXNzLgorICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAogICBtb3ZsICAgICRfX05SX3Zmb3JrLCAlZWF4CiAgIGludCAgICAgJDB4ODAKICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9pbmNsdWRlL21hY2hpbmUvYXNtLmggYi9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9hc20uaAppbmRleCA2NzI0OTNkLi45NDNmOWRkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9hc20uaAorKysgYi9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9hc20uaApAQCAtNDksMTUgKzQ5LDYgQEAKICNkZWZpbmUgUElDX0dPVCh4KQl4QEdPVCglZWJ4KQogI2RlZmluZSBQSUNfR09UT0ZGKHgpCXhAR09UT0ZGKCVlYngpCiAKLS8qIGxldCBrZXJuZWxzIGFuZCBvdGhlcnMgb3ZlcnJpZGUgZW50cnlwb2ludCBhbGlnbm1lbnQgKi8KLSNpZiAhZGVmaW5lZChfQUxJR05fVEVYVCkgJiYgIWRlZmluZWQoX0tFUk5FTCkKLSMgaWZkZWYgX1NUQU5EQUxPTkUKLSMgIGRlZmluZSBfQUxJR05fVEVYVCAuYWxpZ24gMQotIyBlbGlmIGRlZmluZWQgX19FTEZfXwotIyAgZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAxNgotIyBlbHNlCi0jICBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDQKLSMgZW5kaWYKLSNlbmRpZgorI2RlZmluZSBfX2Jpb25pY19hc21fYWxpZ24gMTYKIAogI2VuZGlmIC8qICFfSTM4Nl9BU01fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oIGIvbGliYy9hcmNoLXg4Ni9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUxNTA2YjEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgkkT3BlbkJTRDogZW5kaWFuLmgsdiAxLjE3IDIwMTEvMDMvMTIgMDQ6MDM6MDQgZ3VlbnRoZXIgRXhwICQJKi8KLQotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTcgTmlrbGFzIEhhbGxxdmlzdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKLSAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKLSAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCi0gKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgX01BQ0hJTkVfRU5ESUFOX0hfCi0jZGVmaW5lIF9NQUNISU5FX0VORElBTl9IXwotCi0jaWZkZWYgX19HTlVDX18KLQotI2RlZmluZQlfX3N3YXAzMm1kKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQl1aW50MzJfdCBfX3N3YXAzMm1kX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19hc20gKCJic3dhcCAlMCIgOiAiK3IiIChfX3N3YXAzMm1kX3gpKTsJCQlcCi0JX19zd2FwMzJtZF94OwkJCQkJCQlcCi19KQotCi0jZGVmaW5lCV9fc3dhcDY0bWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVpbnQ2NF90IF9fc3dhcDY0bWRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQkodWludDY0X3QpX19zd2FwMzJtZChfX3N3YXA2NG1kX3ggPj4gMzIpIHwJCQlcCi0JICAgICh1aW50NjRfdClfX3N3YXAzMm1kKF9fc3dhcDY0bWRfeCAmIDB4ZmZmZmZmZmYpIDw8IDMyOwlcCi19KQotI2RlZmluZQlfX3N3YXAxNm1kKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQl1aW50MTZfdCBfX3N3YXAxNm1kX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19hc20gKCJyb3J3ICQ4LCAldzAiIDogIityIiAoX19zd2FwMTZtZF94KSk7CQkJXAotCV9fc3dhcDE2bWRfeDsJCQkJCQkJXAotfSkKLQotLyogVGVsbCBzeXMvZW5kaWFuLmggd2UgaGF2ZSBNRCB2YXJpYW50cyBvZiB0aGUgc3dhcCBtYWNyb3MuICAqLwotI2RlZmluZSBNRF9TV0FQCi0KLSNlbmRpZgkvKiBfX0dOVUNfXyAqLwotCi0jZGVmaW5lIF9CWVRFX09SREVSIF9MSVRUTEVfRU5ESUFOCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c3lzL2VuZGlhbi5oPgotCi0jZW5kaWYgLyogX01BQ0hJTkVfRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9leGVjLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQwOTE3NDEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4ZWMuaCx2IDEuOSAyMDAzLzA0LzE3IDAzOjQyOjE0IGRyYWhuIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBleGVjLmgsdiAxLjYgMTk5NC8xMC8yNyAwNDoxNjowNSBjZ2QgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5MyBDaHJpc3RvcGhlciBHLiBEZW1ldHJpb3UKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAqICAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKLSAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKLSAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCi0gKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgX0kzODZfRVhFQ19IXwotI2RlZmluZSBfSTM4Nl9FWEVDX0hfCi0KLSNkZWZpbmUgX19MRFBHU1oJNDA5NgotCi0jZGVmaW5lIE5BVElWRV9FWEVDX0VMRgotCi0jZGVmaW5lIEFSQ0hfRUxGU0laRQkJMzIKLQotI2RlZmluZSBFTEZfVEFSR19DTEFTUwkJRUxGQ0xBU1MzMgotI2RlZmluZSBFTEZfVEFSR19EQVRBCQlFTEZEQVRBMkxTQgotI2RlZmluZSBFTEZfVEFSR19NQUNICQlFTV8zODYgLyogWFhYIC0gRU1fNDg2IGlzIGN1cnJlbnRseSB1bnVzZWQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGFsbCBPU3MvY29tcGlsZXJzL2xpbmtlcnMgKi8KLQotI2RlZmluZSBfTkxJU1RfRE9fQU9VVAotI2RlZmluZSBfTkxJU1RfRE9fRUxGCi0KLSNkZWZpbmUgX0tFUk5fRE9fQU9VVAotI2RlZmluZSBfS0VSTl9ET19FTEYKLQotI2VuZGlmICAvKiBfSTM4Nl9FWEVDX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2Nsb3NlLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2Nsb3NlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzk2OTQ0YgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fY2xvc2UuUwpAQCAtMCwwICsxLDIyIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2Nsb3NlKQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBtb3YgICAgIDgoJWVzcCksICVlYngKKyAgICBtb3ZsICAgICRfX05SX2Nsb3NlLCAlZWF4CisgICAgaW50ICAgICAkMHg4MAorICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgcHVzaGwgICAlZWF4CisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGFkZGwgICAgJDQsICVlc3AKKzE6CisgICAgcG9wbCAgICAlZWJ4CisgICAgcmV0CitFTkQoX19fY2xvc2UpCisuaGlkZGVuIF9fX2Nsb3NlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjFhNmVhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDMyIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZhY2Nlc3NhdCkKKyAgICBwdXNobCAgICVlYngKKyAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCisgICAgcHVzaGwgICAlZWN4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAorICAgIHB1c2hsICAgJWVkeAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlZHgsIDAKKyAgICBtb3YgICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgbW92ICAgICAyMCglZXNwKSwgJWVjeAorICAgIG1vdiAgICAgMjQoJWVzcCksICVlZHgKKyAgICBtb3ZsICAgICRfX05SX2ZhY2Nlc3NhdCwgJWVheAorICAgIGludCAgICAgJDB4ODAKKyAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIHB1c2hsICAgJWVheAorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBhZGRsICAgICQ0LCAlZXNwCisxOgorICAgIHBvcGwgICAgJWVkeAorICAgIHBvcGwgICAgJWVjeAorICAgIHBvcGwgICAgJWVieAorICAgIHJldAorRU5EKF9fX2ZhY2Nlc3NhdCkKKy5oaWRkZW4gX19fZmFjY2Vzc2F0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mY2htb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMTlhNjk1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mY2htb2QuUwpAQCAtMCwwICsxLDI3IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZCkKKyAgICBwdXNobCAgICVlYngKKyAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCisgICAgcHVzaGwgICAlZWN4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAorICAgIG1vdiAgICAgMTIoJWVzcCksICVlYngKKyAgICBtb3YgICAgIDE2KCVlc3ApLCAlZWN4CisgICAgbW92bCAgICAkX19OUl9mY2htb2QsICVlYXgKKyAgICBpbnQgICAgICQweDgwCisgICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBwdXNobCAgICVlYXgKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgYWRkbCAgICAkNCwgJWVzcAorMToKKyAgICBwb3BsICAgICVlY3gKKyAgICBwb3BsICAgICVlYngKKyAgICByZXQKK0VORChfX19mY2htb2QpCisuaGlkZGVuIF9fX2ZjaG1vZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIxNWJiNjQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKQEAgLTAsMCArMSwzMiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2RhdCkKKyAgICBwdXNobCAgICVlYngKKyAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCisgICAgcHVzaGwgICAlZWN4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAorICAgIHB1c2hsICAgJWVkeAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlZHgsIDAKKyAgICBtb3YgICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgbW92ICAgICAyMCglZXNwKSwgJWVjeAorICAgIG1vdiAgICAgMjQoJWVzcCksICVlZHgKKyAgICBtb3ZsICAgICRfX05SX2ZjaG1vZGF0LCAlZWF4CisgICAgaW50ICAgICAkMHg4MAorICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgcHVzaGwgICAlZWF4CisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGFkZGwgICAgJDQsICVlc3AKKzE6CisgICAgcG9wbCAgICAlZWR4CisgICAgcG9wbCAgICAlZWN4CisgICAgcG9wbCAgICAlZWJ4CisgICAgcmV0CitFTkQoX19fZmNobW9kYXQpCisuaGlkZGVuIF9fX2ZjaG1vZGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzVhNTRkMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpAQCAtMCwwICsxLDM2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fY2xvY2tfbmFub3NsZWVwKQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBwdXNobCAgICVlY3gKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCisgICAgcHVzaGwgICAlZWR4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAorICAgIHB1c2hsICAgJWVzaQorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKKyAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWJ4CisgICAgbW92ICAgICAyNCglZXNwKSwgJWVjeAorICAgIG1vdiAgICAgMjgoJWVzcCksICVlZHgKKyAgICBtb3YgICAgIDMyKCVlc3ApLCAlZXNpCisgICAgbW92bCAgICAkX19OUl9jbG9ja19uYW5vc2xlZXAsICVlYXgKKyAgICBpbnQgICAgICQweDgwCisgICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBwdXNobCAgICVlYXgKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgYWRkbCAgICAkNCwgJWVzcAorMToKKyAgICBwb3BsICAgICVlc2kKKyAgICBwb3BsICAgICVlZHgKKyAgICBwb3BsICAgICVlY3gKKyAgICBwb3BsICAgICVlYngKKyAgICByZXQKK0VORChfX2Nsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MTUyMTAwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCkBAIC0wLDAgKzEsMzEgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19ydF9zaWdxdWV1ZWluZm8pCisgICAgcHVzaGwgICAlZWJ4CisgICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAorICAgIHB1c2hsICAgJWVjeAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlY3gsIDAKKyAgICBwdXNobCAgICVlZHgKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWR4LCAwCisgICAgbW92ICAgICAxNiglZXNwKSwgJWVieAorICAgIG1vdiAgICAgMjAoJWVzcCksICVlY3gKKyAgICBtb3YgICAgIDI0KCVlc3ApLCAlZWR4CisgICAgbW92bCAgICAkX19OUl9ydF9zaWdxdWV1ZWluZm8sICVlYXgKKyAgICBpbnQgICAgICQweDgwCisgICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBwdXNobCAgICVlYXgKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgYWRkbCAgICAkNCwgJWVzcAorMToKKyAgICBwb3BsICAgICVlZHgKKyAgICBwb3BsICAgICVlY3gKKyAgICBwb3BsICAgICVlYngKKyAgICByZXQKK0VORChfX3J0X3NpZ3F1ZXVlaW5mbykKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX2V4aXQuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX2V4aXQuUwppbmRleCA4NTI4ZWU0Li45OTQ1YjM1IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fZXhpdC5TCkBAIC0yMCw1ICsyMCw0IEBACiAgICAgcmV0CiBFTkQoX2V4aXQpCiAKLSAgICAuZ2xvYmwgX0V4aXQKLSAgICAuZXF1IF9FeGl0LCBfZXhpdAorQUxJQVNfU1lNQk9MKF9FeGl0LCBfZXhpdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZTJjYzAzLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb2NrX25hbm9zbGVlcCkKLSAgICBwdXNobCAgICVlYngKLSAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCi0gICAgcHVzaGwgICAlZWN4Ci0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAotICAgIHB1c2hsICAgJWVkeAotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlZHgsIDAKLSAgICBwdXNobCAgICVlc2kKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZXNpLCAwCi0gICAgbW92ICAgICAyMCglZXNwKSwgJWVieAotICAgIG1vdiAgICAgMjQoJWVzcCksICVlY3gKLSAgICBtb3YgICAgIDI4KCVlc3ApLCAlZWR4Ci0gICAgbW92ICAgICAzMiglZXNwKSwgJWVzaQotICAgIG1vdmwgICAgJF9fTlJfY2xvY2tfbmFub3NsZWVwLCAlZWF4Ci0gICAgaW50ICAgICAkMHg4MAotICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKLSAgICBqYiAgICAgIDFmCi0gICAgbmVnbCAgICAlZWF4Ci0gICAgcHVzaGwgICAlZWF4Ci0gICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAotICAgIGFkZGwgICAgJDQsICVlc3AKLTE6Ci0gICAgcG9wbCAgICAlZXNpCi0gICAgcG9wbCAgICAlZWR4Ci0gICAgcG9wbCAgICAlZWN4Ci0gICAgcG9wbCAgICAlZWJ4Ci0gICAgcmV0Ci1FTkQoY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9jbG9zZS5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9jbG9zZS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNmNjZTYyLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvY2xvc2UuUworKysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvc2UpCi0gICAgcHVzaGwgICAlZWJ4Ci0gICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAotICAgIG1vdiAgICAgOCglZXNwKSwgJWVieAotICAgIG1vdmwgICAgJF9fTlJfY2xvc2UsICVlYXgKLSAgICBpbnQgICAgICQweDgwCi0gICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBwdXNobCAgICVlYXgKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgYWRkbCAgICAkNCwgJWVzcAotMToKLSAgICBwb3BsICAgICVlYngKLSAgICByZXQKLUVORChjbG9zZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZDUyMjMxLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmFjY2Vzc2F0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZhY2Nlc3NhdCkKLSAgICBwdXNobCAgICVlYngKLSAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCi0gICAgcHVzaGwgICAlZWN4Ci0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAotICAgIHB1c2hsICAgJWVkeAotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlZHgsIDAKLSAgICBwdXNobCAgICVlc2kKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZXNpLCAwCi0gICAgbW92ICAgICAyMCglZXNwKSwgJWVieAotICAgIG1vdiAgICAgMjQoJWVzcCksICVlY3gKLSAgICBtb3YgICAgIDI4KCVlc3ApLCAlZWR4Ci0gICAgbW92ICAgICAzMiglZXNwKSwgJWVzaQotICAgIG1vdmwgICAgJF9fTlJfZmFjY2Vzc2F0LCAlZWF4Ci0gICAgaW50ICAgICAkMHg4MAotICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKLSAgICBqYiAgICAgIDFmCi0gICAgbmVnbCAgICAlZWF4Ci0gICAgcHVzaGwgICAlZWF4Ci0gICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAotICAgIGFkZGwgICAgJDQsICVlc3AKLTE6Ci0gICAgcG9wbCAgICAlZXNpCi0gICAgcG9wbCAgICAlZWR4Ci0gICAgcG9wbCAgICAlZWN4Ci0gICAgcG9wbCAgICAlZWJ4Ci0gICAgcmV0Ci1FTkQoZmFjY2Vzc2F0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mY2htb2QuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmNobW9kLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM3ODUxZmYuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mY2htb2QuUworKysgL2Rldi9udWxsCkBAIC0xLDI2ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kKQotICAgIHB1c2hsICAgJWVieAotICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAotICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKLSAgICBwdXNobCAgICVlY3gKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCi0gICAgbW92ICAgICAxMiglZXNwKSwgJWVieAotICAgIG1vdiAgICAgMTYoJWVzcCksICVlY3gKLSAgICBtb3ZsICAgICRfX05SX2ZjaG1vZCwgJWVheAotICAgIGludCAgICAgJDB4ODAKLSAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIHB1c2hsICAgJWVheAotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBhZGRsICAgICQ0LCAlZXNwCi0xOgotICAgIHBvcGwgICAgJWVjeAotICAgIHBvcGwgICAgJWVieAotICAgIHJldAotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmNobW9kYXQuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmNobW9kYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjUxNTUxMi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIHB1c2hsICAgJWVieAotICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAotICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKLSAgICBwdXNobCAgICVlY3gKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCi0gICAgcHVzaGwgICAlZWR4Ci0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAotICAgIHB1c2hsICAgJWVzaQotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKLSAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWJ4Ci0gICAgbW92ICAgICAyNCglZXNwKSwgJWVjeAotICAgIG1vdiAgICAgMjgoJWVzcCksICVlZHgKLSAgICBtb3YgICAgIDMyKCVlc3ApLCAlZXNpCi0gICAgbW92bCAgICAkX19OUl9mY2htb2RhdCwgJWVheAotICAgIGludCAgICAgJDB4ODAKLSAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIHB1c2hsICAgJWVheAotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBhZGRsICAgICQ0LCAlZXNwCi0xOgotICAgIHBvcGwgICAgJWVzaQotICAgIHBvcGwgICAgJWVkeAotICAgIHBvcGwgICAgJWVjeAotICAgIHBvcGwgICAgJWVieAotICAgIHJldAotRU5EKGZjaG1vZGF0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mc3RhdDY0LlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0NjQuUwppbmRleCBmYzE2MjMzLi5iYTM4NWE0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0NjQuUworKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0NjQuUwpAQCAtMjUsNSArMjUsNCBAQAogICAgIHJldAogRU5EKGZzdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXQKLSAgICAuZXF1IGZzdGF0LCBmc3RhdDY0CitBTElBU19TWU1CT0woZnN0YXQsIGZzdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mc3RhdGF0NjQuUwppbmRleCBhMzY5N2U2Li45MGU4N2I2IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXRhdDY0LlMKQEAgLTM1LDUgKzM1LDQgQEAKICAgICByZXQKIEVORChmc3RhdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXRhdAotICAgIC5lcXUgZnN0YXRhdCwgZnN0YXRhdDY0CitBTElBU19TWU1CT0woZnN0YXRhdCwgZnN0YXRhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9zZXRob3N0bmFtZS5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9zZXRob3N0bmFtZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJmY2ZkNzMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzZXRob3N0bmFtZSkKKyAgICBwdXNobCAgICVlYngKKyAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCisgICAgcHVzaGwgICAlZWN4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAorICAgIG1vdiAgICAgMTIoJWVzcCksICVlYngKKyAgICBtb3YgICAgIDE2KCVlc3ApLCAlZWN4CisgICAgbW92bCAgICAkX19OUl9zZXRob3N0bmFtZSwgJWVheAorICAgIGludCAgICAgJDB4ODAKKyAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIHB1c2hsICAgJWVheAorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBhZGRsICAgICQ0LCAlZXNwCisxOgorICAgIHBvcGwgICAgJWVjeAorICAgIHBvcGwgICAgJWVieAorICAgIHJldAorRU5EKHNldGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni94ODYubWsgYi9saWJjL2FyY2gteDg2L3g4Ni5tawppbmRleCAyYzkwMzE3Li5lNWQ3MGE5IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L3g4Ni5taworKysgYi9saWJjL2FyY2gteDg2L3g4Ni5tawpAQCAtMSwyNCArMSw2IEBACiAjIDMyLWJpdCB4ODYuCiAKICMKLSMgVmFyaW91cyBraW5kcyBvZiBMUDMyIGNydWZ0LgotIwotCi1saWJjX2Jpb25pY19zcmNfZmlsZXNfeDg2ICs9IFwKLSAgICBiaW9uaWMvbW1hcC5jcHAgXAotCi1saWJjX2NvbW1vbl9zcmNfZmlsZXNfeDg2ICs9IFwKLSAgICBiaW9uaWMvbGVnYWN5XzMyX2JpdF9zdXBwb3J0LmNwcCBcCi0gICAgYmlvbmljL25ka19jcnVmdC5jcHAgXAotICAgIGJpb25pYy90aW1lNjQuYyBcCi0KLWxpYmNfbmV0YnNkX3NyY19maWxlc194ODYgKz0gXAotICAgIHVwc3RyZWFtLW5ldGJzZC9jb21tb24vbGliL2xpYmMvaGFzaC9zaGExL3NoYTEuYyBcCi0KLWxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfeDg2ICs9IFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dHcuYyBcCi0KLSMKICMgRGVmYXVsdCBpbXBsZW1lbnRhdGlvbnMgb2YgZnVuY3Rpb25zIHRoYXQgYXJlIGNvbW1vbmx5IG9wdGltaXplZC4KICMKIApAQCAtNDAsMTAgKzIyLDggQEAKICAgICBhcmNoLXg4Ni9iaW9uaWMvX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bi5TIFwKICAgICBhcmNoLXg4Ni9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jIFwKICAgICBhcmNoLXg4Ni9iaW9uaWMvX19yZXN0b3JlLlMgXAotICAgIGFyY2gteDg2L2Jpb25pYy9fc2V0am1wLlMgXAogICAgIGFyY2gteDg2L2Jpb25pYy9zZXRqbXAuUyBcCiAgICAgYXJjaC14ODYvYmlvbmljL19fc2V0X3Rscy5jIFwKLSAgICBhcmNoLXg4Ni9iaW9uaWMvc2lnc2V0am1wLlMgXAogICAgIGFyY2gteDg2L2Jpb25pYy9zeXNjYWxsLlMgXAogICAgIGFyY2gteDg2L2Jpb25pYy92Zm9yay5TIFwKIApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvX3NldGptcC5TIGIvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvX3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNjE3MDMwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL19zZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDgzICswLDAgQEAKLS8qCSRPcGVuQlNEOiBfc2V0am1wLlMsdiAxLjEgMjAwNC8wMS8yOCAwMTo0NDo0NSBtaWNrZXkgRXhwICQJKi8KLS8qCSROZXRCU0Q6IF9zZXRqbXAuUyx2IDEuMSAyMDAxLzA2LzE5IDAwOjI1OjAyIGZ2ZGwgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMSBXYXNhYmkgU3lzdGVtcywgSW5jLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBXcml0dGVuIGJ5IEZyYW5rIHZhbiBkZXIgTGluZGVuIGZvciBXYXNhYmkgU3lzdGVtcywgSW5jLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzIHNvZnR3YXJlCi0gKiAgICBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnZW1lbnQ6Ci0gKiAgICAgIFRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgZm9yIHRoZSBOZXRCU0QgUHJvamVjdCBieQotICogICAgICBXYXNhYmkgU3lzdGVtcywgSW5jLgotICogNC4gVGhlIG5hbWUgb2YgV2FzYWJpIFN5c3RlbXMsIEluYy4gbWF5IG5vdCBiZSB1c2VkIHRvIGVuZG9yc2UKLSAqICAgIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgotICogICAgd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgV0FTQUJJIFNZU1RFTVMsIElOQy4gYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRAotICogVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBXQVNBQkkgU1lTVEVNUywgSU5DCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi0gKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KLQotLyoKLSAqIEMgbGlicmFyeSAtLSBfc2V0am1wLCBfbG9uZ2ptcAotICoKLSAqCV9sb25nam1wKGEsdikKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8KLSAqCV9zZXRqbXAoYSkKLSAqIGJ5IHJlc3RvcmluZyByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suCi0gKiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIE5PVCByZXN0b3JlZC4KLSAqLwotCi1FTlRSWShfc2V0am1wKQotCW1vdnEgICAgKCVyc3ApLCVyMTEKLQltb3ZxICAgICVyYngsKF9KQl9SQlggKiA4KSglcmRpKQotCW1vdnEgICAgJXJicCwoX0pCX1JCUCAqIDgpKCVyZGkpCi0JbW92cSAgICAlcjEyLChfSkJfUjEyICogOCkoJXJkaSkKLQltb3ZxICAgICVyMTMsKF9KQl9SMTMgKiA4KSglcmRpKQotCW1vdnEgICAgJXIxNCwoX0pCX1IxNCAqIDgpKCVyZGkpCi0JbW92cSAgICAlcjE1LChfSkJfUjE1ICogOCkoJXJkaSkKLQltb3ZxICAgICVyc3AsKF9KQl9SU1AgKiA4KSglcmRpKQotCW1vdnEgICAgJXIxMSwoX0pCX1BDICAqIDgpKCVyZGkpCi0KLQl4b3JsCSVlYXgsJWVheAotCXJldAotRU5EKF9zZXRqbXApCi0KLUVOVFJZKF9sb25nam1wKQotCW1vdnEgICAgKF9KQl9SQlggKiA4KSglcmRpKSwlcmJ4Ci0JbW92cSAgICAoX0pCX1JCUCAqIDgpKCVyZGkpLCVyYnAKLQltb3ZxICAgIChfSkJfUjEyICogOCkoJXJkaSksJXIxMgotCW1vdnEgICAgKF9KQl9SMTMgKiA4KSglcmRpKSwlcjEzCi0JbW92cSAgICAoX0pCX1IxNCAqIDgpKCVyZGkpLCVyMTQKLQltb3ZxICAgIChfSkJfUjE1ICogOCkoJXJkaSksJXIxNQotCW1vdnEgICAgKF9KQl9SU1AgKiA4KSglcmRpKSwlcnNwCi0JbW92cSAgICAoX0pCX1BDICAqIDgpKCVyZGkpLCVyMTEKLQotCW1vdmwJJWVzaSwlZWF4Ci0JdGVzdGwJJWVheCwlZWF4Ci0Jam56CTFmCi0JaW5jbAklZWF4Ci0xOgltb3ZxCSVyMTEsMCglcnNwKQotCXJldAotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvc2V0am1wLlMgYi9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9zZXRqbXAuUwppbmRleCBmMzU2ODc3Li41NTU5ZjU0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9zZXRqbXAuUworKysgYi9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9zZXRqbXAuUwpAQCAtMSw2ICsxLDMgQEAKLS8qCSRPcGVuQlNEOiBzZXRqbXAuUyx2IDEuMyAyMDEyLzA4LzIyIDE3OjE5OjM0IHBhc2NhbCBFeHAgJAkqLwotLyoJJE5ldEJTRDogX19zZXRqbXAxNC5TLHYgMS4xIDIwMDEvMDYvMTkgMDA6MjU6MDIgZnZkbCBFeHAgJAkqLwotCiAvKgogICogQ29weXJpZ2h0IChjKSAyMDAxIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzcsNjAgKzM0LDEwMCBAQAogICovCiAKICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgogCi0vKgotICogQyBsaWJyYXJ5IC0tIF9zZXRqbXAsIF9sb25nam1wCi0gKgotICoJbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglzZXRqbXAoYSkKLSAqIGJ5IHJlc3RvcmluZyByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suCi0gKiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIHJlc3RvcmVkLgotICovCisvLyBUaGVzZSBhcmUgb25seSB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycy4gQ29kZSBjYWxsaW5nIHNldGptcAorLy8gd2lsbCBleHBlY3QgdGhlIHJlc3QgdG8gYmUgY2xvYmJlcmVkIGFueXdheS4KKworI2RlZmluZSBfSkJfUkJYIDAKKyNkZWZpbmUgX0pCX1JCUCAxCisjZGVmaW5lIF9KQl9SMTIgMgorI2RlZmluZSBfSkJfUjEzIDMKKyNkZWZpbmUgX0pCX1IxNCA0CisjZGVmaW5lIF9KQl9SMTUgNQorI2RlZmluZSBfSkJfUlNQIDYKKyNkZWZpbmUgX0pCX1BDIDcKKyNkZWZpbmUgX0pCX1NJR0ZMQUcgOAorI2RlZmluZSBfSkJfU0lHTUFTSyA5CisjZGVmaW5lIF9KQl9TSUdNQVNLX1JUIDEwIC8vIHNpZ3Byb2NtYXNrIHdpbGwgd3JpdGUgaGVyZSB0b28uCiAKIEVOVFJZKHNldGptcCkKLQlwdXNocQklcmRpCi0JeG9ycQklcmRpLCVyZGkKLQljYWxsCVBJQ19QTFQoc2lnYmxvY2spCi0JcG9wcQklcmRpCi0JbW92cQklcmF4LChfSkJfU0lHTUFTSyAqIDgpKCVyZGkpCi0KLQltb3ZxCSglcnNwKSwlcjExCi0JbW92cQklcmJ4LChfSkJfUkJYICogOCkoJXJkaSkKLQltb3ZxCSVyYnAsKF9KQl9SQlAgKiA4KSglcmRpKQotCW1vdnEJJXIxMiwoX0pCX1IxMiAqIDgpKCVyZGkpCi0JbW92cQklcjEzLChfSkJfUjEzICogOCkoJXJkaSkKLQltb3ZxCSVyMTQsKF9KQl9SMTQgKiA4KSglcmRpKQotCW1vdnEJJXIxNSwoX0pCX1IxNSAqIDgpKCVyZGkpCi0JbW92cQklcnNwLChfSkJfUlNQICogOCkoJXJkaSkKLQltb3ZxCSVyMTEsKF9KQl9QQyAgKiA4KSglcmRpKQotCi0yOgl4b3JsCSVlYXgsJWVheAotCXJldAorICBtb3ZsICQxLCVlc2kKKyAgam1wIFBJQ19QTFQoc2lnc2V0am1wKQogRU5EKHNldGptcCkKIAotRU5UUlkobG9uZ2ptcCkKLQltb3ZxCSVyZGksJXIxMgotCW1vdmwJJWVzaSwlcjhkCitFTlRSWShfc2V0am1wKQorICBtb3ZsICQwLCVlc2kKKyAgam1wIFBJQ19QTFQoc2lnc2V0am1wKQorRU5EKF9zZXRqbXApCiAKLQltb3ZxCShfSkJfU0lHTUFTSyAqIDgpKCVyZGkpLCVyZGkKLQlwdXNocQklcjgKLQljYWxsCVBJQ19QTFQoc2lnc2V0bWFzaykKLQlwb3BxCSVyOAotCW1vdnEJKF9KQl9SQlggKiA4KSglcjEyKSwlcmJ4Ci0JbW92cQkoX0pCX1JCUCAqIDgpKCVyMTIpLCVyYnAKLQltb3ZxCShfSkJfUjEzICogOCkoJXIxMiksJXIxMwotCW1vdnEJKF9KQl9SMTQgKiA4KSglcjEyKSwlcjE0Ci0JbW92cQkoX0pCX1IxNSAqIDgpKCVyMTIpLCVyMTUKLQltb3ZxCShfSkJfUlNQICogOCkoJXIxMiksJXJzcAotCW1vdnEJKF9KQl9QQyAgKiA4KSglcjEyKSwlcjExCi0JbW92cQkoX0pCX1IxMiAqIDgpKCVyMTIpLCVyMTIKKy8vIGludCBzaWdzZXRqbXAoc2lnam1wX2J1ZiBlbnYsIGludCBzYXZlX3NpZ25hbF9tYXNrKTsKK0VOVFJZKHNpZ3NldGptcCkKKyAgLy8gUmVjb3JkIHdoZXRoZXIgb3Igbm90IHdlJ3JlIHNhdmluZyB0aGUgc2lnbmFsIG1hc2suCisgIG1vdmwgJWVzaSwoX0pCX1NJR0ZMQUcgKiA4KSglcmRpKQogCi0JbW92bAklcjhkLCVlYXgKLQl0ZXN0bAklZWF4LCVlYXgKLQlqbnoJMWYKLQlpbmNsCSVlYXgKLTE6CW1vdnEJJXIxMSwwKCVyc3ApCi0JcmV0Ci1FTkQobG9uZ2ptcCkKKyAgLy8gRG8gd2UgbmVlZCB0byBzYXZlIHRoZSBzaWduYWwgbWFzaz8KKyAgdGVzdGwgJWVzaSwlZXNpCisgIGp6IDJmCisKKyAgLy8gU2F2ZSBjdXJyZW50IHNpZ25hbCBtYXNrLgorICBwdXNocSAlcmRpIC8vIFB1c2ggJ2VudicuCisgIC8vIFRoZSAnaG93JyBhcmd1bWVudCBpcyBpZ25vcmVkIGlmIG5ld19tYXNrIGlzIE5VTEwuCisgIHhvcnEgJXJzaSwlcnNpIC8vIE5VTEwuCisgIGxlYXEgKF9KQl9TSUdNQVNLICogOCkoJXJkaSksJXJkeCAvLyBvbGRfbWFzay4KKyAgY2FsbCBQSUNfUExUKHNpZ3Byb2NtYXNrKQorICBwb3BxICVyZGkgLy8gUG9wICdlbnYnLgorCisyOgorICAvLyBTYXZlIHRoZSBjYWxsZWUtc2F2ZSByZWdpc3RlcnMuCisgIG1vdnEgKCVyc3ApLCVyMTEKKyAgbW92cSAlcmJ4LChfSkJfUkJYICogOCkoJXJkaSkKKyAgbW92cSAlcmJwLChfSkJfUkJQICogOCkoJXJkaSkKKyAgbW92cSAlcjEyLChfSkJfUjEyICogOCkoJXJkaSkKKyAgbW92cSAlcjEzLChfSkJfUjEzICogOCkoJXJkaSkKKyAgbW92cSAlcjE0LChfSkJfUjE0ICogOCkoJXJkaSkKKyAgbW92cSAlcjE1LChfSkJfUjE1ICogOCkoJXJkaSkKKyAgbW92cSAlcnNwLChfSkJfUlNQICogOCkoJXJkaSkKKyAgbW92cSAlcjExLChfSkJfUEMgICogOCkoJXJkaSkKKworICB4b3JsICVlYXgsJWVheAorICByZXQKK0VORChzaWdzZXRqbXApCisKKy8vIHZvaWQgc2lnbG9uZ2ptcChzaWdqbXBfYnVmIGVudiwgaW50IHZhbHVlKTsKK0VOVFJZKHNpZ2xvbmdqbXApCisgIG1vdnEgJXJkaSwlcjEyCisgIHB1c2hxICVyc2kgLy8gUHVzaCAndmFsdWUnLgorCisgIC8vIERvIHdlIG5lZWQgdG8gcmVzdG9yZSB0aGUgc2lnbmFsIG1hc2s/CisgIGNtcGwgJDAsKF9KQl9TSUdGTEFHICogOCkoJXJkaSkKKyAganogMmYKKworICAvLyBSZXN0b3JlIHRoZSBzaWduYWwgbWFzay4KKyAgbW92cSAkMiwlcmRpIC8vIFNJR19TRVRNQVNLLgorICBsZWFxIChfSkJfU0lHTUFTSyAqIDgpKCVyMTIpLCVyc2kgLy8gbmV3X21hc2suCisgIHhvcnEgJXJkeCwlcmR4IC8vIE5VTEwuCisgIGNhbGwgUElDX1BMVChzaWdwcm9jbWFzaykKKworMjoKKyAgcG9wcSAlcmF4IC8vIFBvcCAndmFsdWUnLgorCisgIC8vIFJlc3RvcmUgdGhlIGNhbGxlZS1zYXZlIHJlZ2lzdGVycy4KKyAgbW92cSAoX0pCX1JCWCAqIDgpKCVyMTIpLCVyYngKKyAgbW92cSAoX0pCX1JCUCAqIDgpKCVyMTIpLCVyYnAKKyAgbW92cSAoX0pCX1IxMyAqIDgpKCVyMTIpLCVyMTMKKyAgbW92cSAoX0pCX1IxNCAqIDgpKCVyMTIpLCVyMTQKKyAgbW92cSAoX0pCX1IxNSAqIDgpKCVyMTIpLCVyMTUKKyAgbW92cSAoX0pCX1JTUCAqIDgpKCVyMTIpLCVyc3AKKyAgbW92cSAoX0pCX1BDICAqIDgpKCVyMTIpLCVyMTEKKyAgbW92cSAoX0pCX1IxMiAqIDgpKCVyMTIpLCVyMTIKKworICB0ZXN0bCAlZWF4LCVlYXgKKyAgam56IDFmCisgIGluY2wgJWVheAorMToKKyAgbW92cSAlcjExLDAoJXJzcCkKKyAgcmV0CitFTkQoc2lnbG9uZ2ptcCkKKworQUxJQVNfU1lNQk9MKGxvbmdqbXAsIHNpZ2xvbmdqbXApCitBTElBU19TWU1CT0woX2xvbmdqbXAsIHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9zaWdzZXRqbXAuUyBiL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NpZ3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzFmZWEzLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NpZ3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTAxICswLDAgQEAKLS8qCSRPcGVuQlNEOiBzaWdzZXRqbXAuUyx2IDEuMyAyMDEyLzA4LzIyIDE3OjE5OjM0IHBhc2NhbCBFeHAgJAkqLwotLyoJJE5ldEJTRDogX19zZXRqbXAxNC5TLHYgMS4xIDIwMDEvMDYvMTkgMDA6MjU6MDIgZnZkbCBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFdyaXR0ZW4gYnkgRnJhbmsgdmFuIGRlciBMaW5kZW4gZm9yIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMgc29mdHdhcmUKLSAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdlbWVudDoKLSAqICAgICAgVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBmb3IgdGhlIE5ldEJTRCBQcm9qZWN0IGJ5Ci0gKiAgICAgIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKiA0LiBUaGUgbmFtZSBvZiBXYXNhYmkgU3lzdGVtcywgSW5jLiBtYXkgbm90IGJlIHVzZWQgdG8gZW5kb3JzZQotICogICAgb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCi0gKiAgICB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBXQVNBQkkgU1lTVEVNUywgSU5DLiBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVECi0gKiBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFdBU0FCSSBTWVNURU1TLCBJTkMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+Ci0KLS8qCi0gKiBDIGxpYnJhcnkgLS0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKglsb25nam1wKGEsdikKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8KLSAqCXNldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgcmVzdG9yZWQuCi0gKi8KLQotRU5UUlkoc2lnc2V0am1wKQotCW1vdmwgICAgJWVzaSwoX0pCX1NJR0ZMQUcgICogOCkoJXJkaSkKLQl0ZXN0bCAgICVlc2ksJWVzaQotCWp6ICAgICAgMmYKLQotCXB1c2hxCSVyZGkKLQl4b3JxCSVyZGksJXJkaQotCWNhbGwJUElDX1BMVChzaWdibG9jaykKLQlwb3BxCSVyZGkKLQltb3ZxCSVyYXgsKF9KQl9TSUdNQVNLICogOCkoJXJkaSkKLQotMjoJbW92cQkoJXJzcCksJXIxMQotCW1vdnEJJXJieCwoX0pCX1JCWCAqIDgpKCVyZGkpCi0JbW92cQklcmJwLChfSkJfUkJQICogOCkoJXJkaSkKLQltb3ZxCSVyMTIsKF9KQl9SMTIgKiA4KSglcmRpKQotCW1vdnEJJXIxMywoX0pCX1IxMyAqIDgpKCVyZGkpCi0JbW92cQklcjE0LChfSkJfUjE0ICogOCkoJXJkaSkKLQltb3ZxCSVyMTUsKF9KQl9SMTUgKiA4KSglcmRpKQotCW1vdnEJJXJzcCwoX0pCX1JTUCAqIDgpKCVyZGkpCi0JbW92cQklcjExLChfSkJfUEMgICogOCkoJXJkaSkKLQotMjoJeG9ybAklZWF4LCVlYXgKLQlyZXQKLUVORChzaWdzZXRqbXApCi0KLUVOVFJZKHNpZ2xvbmdqbXApCi0JbW92cQklcmRpLCVyMTIKLQlwdXNocSAgICVyc2kKLQljbXBsICAgICQwLCAoX0pCX1NJR0ZMQUcgKiA4KSglcmRpKQotCWp6ICAgICAgMmYKLQotCW1vdnEJKF9KQl9TSUdNQVNLICogOCkoJXJkaSksJXJkaQotCWNhbGwJUElDX1BMVChzaWdzZXRtYXNrKQotMjoJcG9wcQklcmF4Ci0JbW92cQkoX0pCX1JCWCAqIDgpKCVyMTIpLCVyYngKLQltb3ZxCShfSkJfUkJQICogOCkoJXIxMiksJXJicAotCW1vdnEJKF9KQl9SMTMgKiA4KSglcjEyKSwlcjEzCi0JbW92cQkoX0pCX1IxNCAqIDgpKCVyMTIpLCVyMTQKLQltb3ZxCShfSkJfUjE1ICogOCkoJXIxMiksJXIxNQotCW1vdnEJKF9KQl9SU1AgKiA4KSglcjEyKSwlcnNwCi0JbW92cQkoX0pCX1BDICAqIDgpKCVyMTIpLCVyMTEKLQltb3ZxCShfSkJfUjEyICogOCkoJXIxMiksJXIxMgotCi0JdGVzdGwJJWVheCwlZWF4Ci0Jam56CTFmCi0JaW5jbAklZWF4Ci0xOgltb3ZxCSVyMTEsMCglcnNwKQotCXJldAotRU5EKHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9hc20uaCBiL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCmluZGV4IDA2ZGEzOWEuLjI4Y2QwOGYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCkBAIC00MCwxMyArNDAsNiBAQAogI2RlZmluZSBQSUNfUExUKHgpCXhAUExUCiAjZGVmaW5lIFBJQ19HT1QoeCkJeEBHT1RQQ1JFTCglcmlwKQogCi0vKiBsZXQga2VybmVscyBhbmQgb3RoZXJzIG92ZXJyaWRlIGVudHJ5cG9pbnQgYWxpZ25tZW50ICovCi0jaWZuZGVmIF9BTElHTl9URVhUCi0jIGlmZGVmIF9TVEFOREFMT05FCi0jICBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDQKLSMgZWxzZQotIyAgZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAxNgotIyBlbmRpZgotI2VuZGlmCisjZGVmaW5lIF9fYmlvbmljX2FzbV9hbGlnbiAxNgogCiAjZW5kaWYgLyogIV9BTUQ2NF9BU01fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc4ODlhMzcuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgkkT3BlbkJTRDogZW5kaWFuLmgsdiAxLjUgMjAxMS8wMy8xMiAyMjoyNzo0OCBndWVudGhlciBFeHAgJAkqLwotCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5NyBOaWtsYXMgSGFsbHF2aXN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfTUFDSElORV9FTkRJQU5fSF8KLSNkZWZpbmUgX01BQ0hJTkVfRU5ESUFOX0hfCi0KLSNpZmRlZiBfX0dOVUNfXwotCi0jZGVmaW5lCV9fc3dhcDMybWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVfaW50MzJfdCBfX3N3YXAzMm1kX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19hc20gKCJic3dhcCAlMCIgOiAiK3IiIChfX3N3YXAzMm1kX3gpKTsJCQlcCi0JX19zd2FwMzJtZF94OwkJCQkJCQlcCi19KQotCi0jZGVmaW5lCV9fc3dhcDY0bWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVfaW50NjRfdCBfX3N3YXA2NG1kX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19hc20gKCJic3dhcHEgJTAiIDogIityIiAoX19zd2FwNjRtZF94KSk7CQkJXAotCV9fc3dhcDY0bWRfeDsJCQkJCQkJXAotfSkKLQotI2RlZmluZQlfX3N3YXAxNm1kKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQl1X2ludDE2X3QgX19zd2FwMTZtZF94ID0gKHgpOwkJCQkJXAotCQkJCQkJCQkJXAotCV9fYXNtICgicm9ydyAkOCwgJXcwIiA6ICIrciIgKF9fc3dhcDE2bWRfeCkpOwkJCVwKLQlfX3N3YXAxNm1kX3g7CQkJCQkJCVwKLX0pCi0KLS8qIFRlbGwgc3lzL2VuZGlhbi5oIHdlIGhhdmUgTUQgdmFyaWFudHMgb2YgdGhlIHN3YXAgbWFjcm9zLiAgKi8KLSNkZWZpbmUgTURfU1dBUAotCi0jZW5kaWYJLyogX19HTlVDX18gKi8KLQotI2RlZmluZSBfQllURV9PUkRFUiBfTElUVExFX0VORElBTgotI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KLQotI2VuZGlmIC8qIF9NQUNISU5FX0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4MjkzNTFjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaAorKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBleGVjLmgsdiAxLjQgMjAxMi8wOS8xMSAxNTo0NDoxNyBkZXJhYWR0IEV4cCAkCSovCi0vKgotICogV3JpdHRlbiBieSBBcnR1ciBHcmFib3dza2kgPGFydEBvcGVuYnNkLm9yZz4gUHVibGljIERvbWFpbgotICovCi0KLSNpZm5kZWYgX01BQ0hJTkVfRVhFQ19IXwotI2RlZmluZSBfTUFDSElORV9FWEVDX0hfCi0KLSNkZWZpbmUgX19MRFBHU1ogNDA5NgotCi0jZGVmaW5lIEFSQ0hfRUxGU0laRSA2NAotCi0jZGVmaW5lIEVMRl9UQVJHX0NMQVNTCQlFTEZDTEFTUzY0Ci0jZGVmaW5lIEVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTFNCCi0jZGVmaW5lIEVMRl9UQVJHX01BQ0gJCUVNX1g4Nl82NAotCi0jZGVmaW5lIF9OTElTVF9ET19FTEYKLSNkZWZpbmUgX0tFUk5fRE9fRUxGNjQKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaCBiL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCmluZGV4IDAxZDYwNjYuLjQ2ZGRkNGIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCkBAIC0xLDIxICsxLDQgQEAKIC8qCSRPcGVuQlNEOiBzZXRqbXAuaCx2IDEuMSAyMDA0LzAxLzI4IDAxOjM5OjM5IG1pY2tleSBFeHAgJAkqLwogLyoJJE5ldEJTRDogc2V0am1wLmgsdiAxLjEgMjAwMy8wNC8yNiAxODozOTo0NyBmdmRsIEV4cCAkCSovCiAKLS8qCi0gKiBtYWNoaW5lL3NldGptcC5oOiBtYWNoaW5lIGRlcGVuZGVudCBzZXRqbXAtcmVsYXRlZCBpbmZvcm1hdGlvbi4KLSAqIFRoZXNlIGFyZSBvbmx5IHRoZSBjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzLCBjb2RlIGNhbGxpbmcgc2V0am1wCi0gKiB3aWxsIGV4cGVjdCB0aGUgcmVzdCB0byBiZSBjbG9iYmVyZWQgYW55d2F5LgotICovCi0KLSNkZWZpbmUgX0pCX1JCWAkJMAotI2RlZmluZSBfSkJfUkJQCQkxCi0jZGVmaW5lIF9KQl9SMTIJCTIKLSNkZWZpbmUgX0pCX1IxMwkJMwotI2RlZmluZSBfSkJfUjE0CQk0Ci0jZGVmaW5lIF9KQl9SMTUJCTUKLSNkZWZpbmUgX0pCX1JTUAkJNgotI2RlZmluZSBfSkJfUEMJCTcKLSNkZWZpbmUgX0pCX1NJR0ZMQUcJOAotI2RlZmluZSBfSkJfU0lHTUFTSwk5Ci0KICNkZWZpbmUJX0pCTEVOCTExCQkvKiBzaXplLCBpbiBsb25ncywgb2YgYSBqbXBfYnVmICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cmxjYXQtc2xtLlMgYi9saWJjL2FyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cmxjYXQtc2xtLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDc5ZThjMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RybGNhdC1zbG0uUwpAQCAtMCwwICsxLDM3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjZGVmaW5lIFVTRV9BU19TVFJMQ0FUCisKKyNpZm5kZWYgU1RSTENQWQorIyBkZWZpbmUgU1RSTENQWQlzdHJsY2F0CisjZW5kaWYKKworI2luY2x1ZGUgInNzZTItc3RybGNweS1zbG0uUyIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RybGNweS1zbG0uUyBiL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RybGNweS1zbG0uUwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi45ZDRiNTJmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY3B5LXNsbS5TCkBAIC0wLDAgKzEsMTA2MiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBMCisjIGRlZmluZSBMKGxhYmVsKQkuTCMjbGFiZWwKKyNlbmRpZgorCisjaWZuZGVmIGNmaV9zdGFydHByb2MKKyMgZGVmaW5lIGNmaV9zdGFydHByb2MJLmNmaV9zdGFydHByb2MKKyNlbmRpZgorCisjaWZuZGVmIGNmaV9lbmRwcm9jCisjIGRlZmluZSBjZmlfZW5kcHJvYwkuY2ZpX2VuZHByb2MKKyNlbmRpZgorCisjaWZuZGVmIEVOVFJZCisjIGRlZmluZSBFTlRSWShuYW1lKQlcCisJLnR5cGUgbmFtZSwgQGZ1bmN0aW9uOwlcCisJLmdsb2JsIG5hbWU7CVwKKwkucDJhbGlnbiA0OwlcCituYW1lOglcCisJY2ZpX3N0YXJ0cHJvYworI2VuZGlmCisKKyNpZm5kZWYgRU5ECisjIGRlZmluZSBFTkQobmFtZSkJXAorICAgICAgIGNmaV9lbmRwcm9jOwlcCisgICAgICAgLnNpemUgbmFtZSwgLi1uYW1lCisjZW5kaWYKKworCisjaWZuZGVmIFNUUkxDUFkKKyMgZGVmaW5lIFNUUkxDUFkJc3RybGNweQorI2VuZGlmCisKKyNkZWZpbmUgSk1QVEJMKEksIEIpCUkgLSBCCisjZGVmaW5lIEJSQU5DSF9UT19KTVBUQkxfRU5UUlkoVEFCTEUsIElOREVYLCBTQ0FMRSkJXAorCWxlYQlUQUJMRSglcmlwKSwgJXIxMTsJXAorCW1vdnNscQkoJXIxMSwgSU5ERVgsIFNDQUxFKSwgJXJjeDsJXAorCWxlYQkoJXIxMSwgJXJjeCksICVyY3g7CVwKKwlqbXAJKiVyY3gKKworI2RlZmluZSBSRVRVUk4JXAorCWFkZAklcjksICVyYXg7CVwKKwlyZXQKKworLnRleHQKK0VOVFJZIChTVFJMQ1BZKQorCXhvcgklcmF4LCAlcmF4CisJeG9yCSVyOSwgJXI5CisJbW92CSVyZHgsICVyOAorCWNtcAkkMCwgJXI4CisJanoJTChDYWxjdWxhdGVTcmNMZW4pCisKKyNpZmRlZiBVU0VfQVNfU1RSTENBVAorCXhvcgklcmN4LCAlcmN4CisJcHhvcgkleG1tMCwgJXhtbTAKKworCW1vdmRxdQkoJXJkaSksICV4bW0xCisJcGNtcGVxYiAleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCisJY21wCSQxNywgJXI4CisJamIJTChTaXplRW5kQ2FzZTEpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoU3RyaW5nRW5kQ2FzZTEpCisKKwlhZGQJJDE2LCAlcmF4CisJbW92ZHF1CTE2KCVyZGkpLCAleG1tMQorCXBjbXBlcWIgJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKworCWNtcAkkMzMsICVyOAorCWpiCUwoU2l6ZUVuZENhc2UxKQorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKFN0cmluZ0VuZENhc2UxKQorCisJbW92CSVyZGksICVyY3gKKwlhbmQJJDE1LCAlcmN4CisJYW5kCSQtMTYsICVyZGkKKworCWFkZAklcmN4LCAlcjgKKwlzdWIJJDE2LCAlcjgKKworTChEc3RMZW5Mb29wKToKKwltb3ZkcWEJKCVyZGksICVyYXgpLCAleG1tMQorCXBjbXBlcWIgJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwlzdWIJJDE2LCAlcjgKKwlqYmUJTChTaXplRW5kQ2FzZTIpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoU3RyaW5nRW5kQ2FzZTIpCisJYWRkCSQxNiwgJXJheAorCWptcAlMKERzdExlbkxvb3ApCisKK0woU3RyaW5nRW5kQ2FzZTIpOgorCWFkZAkkMTYsICVyOAorCWJzZgklcmR4LCAlcmR4CisJc3ViCSVyZHgsICVyOAorCWFkZAklcmR4LCAlcmF4CisJc3ViCSVyY3gsICVyOQorCWFkZAklcmF4LCAlcmRpCisJam1wCSBMKENvcHlTcmNTdHJpbmcpCisKK0woU2l6ZUVuZENhc2UxKToKKwl0ZXN0CSVyZHgsICVyZHgKKwlqeglMKFNpemVFbmQpCisJYnNmCSVyZHgsICVyZHgKKwlhZGQJJXJkeCwgJXJheAorCWNtcAklcjgsICVyYXgKKwlqYglMKFN0cmluZ0VuZCkKK0woU2l6ZUVuZCk6CisJbW92CSVyOCwgJXI5CisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuQ2FzZTEpCisKK0woU2l6ZUVuZENhc2UyKToKKwlhZGQJJDE2LCAlcjgKKwl0ZXN0CSVyZHgsICVyZHgKKwlqeglMKFN0cmluZ0VuZENhc2U0KQorCWJzZgklcmR4LCAlcmR4CisJY21wCSVyOCwgJXJkeAorCWpiCUwoU3RyaW5nRW5kQ2FzZTMpCitMKFN0cmluZ0VuZENhc2U0KToKKwlhZGQJJXI4LCAlcmF4CisJc3ViCSVyY3gsICVyYXgKKwltb3YJJXJheCwgJXI5CisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuQ2FzZTEpCisKK0woU3RyaW5nRW5kQ2FzZTMpOgorCWFkZAklcmR4LCAlcmF4CisJc3ViCSVyY3gsICVyOQorCWFkZAklcmF4LCAlcmRpCisJc3ViCSVyZHgsICVyOAorCWptcAlMKENvcHlTcmNTdHJpbmcpCisKK0woU3RyaW5nRW5kQ2FzZTEpOgorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyZHgsICVyYXgKKwlzdWIJJXJjeCwgJXJheAorTChTdHJpbmdFbmQpOgorCWFkZAklcmF4LCAlcmRpCisJc3ViCSVyYXgsICVyOAorI2VuZGlmCisKKwltb3YJJXJzaSwgJXJjeAorCWFuZAkkNjMsICVyY3gKKwljbXAJJDMyLCAlcmN4CisJamJlCUwoQ29weVNyY1N0cmluZykKKworCWFuZAkkLTE2LCAlcnNpCisJYW5kCSQxNSwgJXJjeAorCXB4b3IJJXhtbTAsICV4bW0wCisJcHhvcgkleG1tMSwgJXhtbTEKKworCXBjbXBlcWIJKCVyc2kpLCAleG1tMQorCXBtb3Ztc2tiICV4bW0xLCAlcmR4CisJc2hyCSVjbCwgJXJkeAorCW1vdgkkMTYsICVyMTAKKwlzdWIJJXJjeCwgJXIxMAorCWNtcAklcjEwLCAlcjgKKwlqYmUJTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsQ2FzZTJPckNhc2UzKQorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWwpCisKKwlwY21wZXFiCTE2KCVyc2kpLCAleG1tMAorCXBtb3Ztc2tiICV4bW0wLCAlcmR4CisJYWRkCSQxNiwgJXIxMAorCWNtcAklcjEwLCAlcjgKKwlqYmUJTChDb3B5RnJvbTFUbzMyQnl0ZXNDYXNlMk9yQ2FzZTMpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8zMkJ5dGVzKQorCisJbW92ZHF1CSglcnNpLCAlcmN4KSwgJXhtbTEKKwltb3ZkcXUJJXhtbTEsICglcmRpKQorI2lmZGVmIFVTRV9BU19TVFJMQ0FUCisJYWRkCSVyYXgsICVyOQorI2VuZGlmCisJam1wCUwoTG9vcFN0YXJ0KQorCisJLnAyYWxpZ24gNAorTChDb3B5U3JjU3RyaW5nKToKKyNpZmRlZiBVU0VfQVNfU1RSTENBVAorCWFkZAklcmF4LCAlcjkKKwl4b3IJJXJheCwgJXJheAorI2VuZGlmCisJcHhvcgkleG1tMCwgJXhtbTAKKwltb3ZkcXUJKCVyc2kpLCAleG1tMQorCXBjbXBlcWIJJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKworCWNtcAkkMTcsICVyOAorCWpiCUwoQ29weUZyb20xVG8xNkJ5dGVzVGFpbDFDYXNlMk9yQ2FzZTMpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8xNkJ5dGVzVGFpbDEpCisKKwltb3ZkcXUJMTYoJXJzaSksICV4bW0yCisJcGNtcGVxYgkleG1tMiwgJXhtbTAKKwltb3ZkcXUJJXhtbTEsICglcmRpKQorCXBtb3Ztc2tiICV4bW0wLCAlcmR4CisJYWRkCSQxNiwgJXJheAorCisJY21wCSQzMywgJXI4CisJamIJTChDb3B5RnJvbTFUbzMyQnl0ZXMxQ2FzZTJPckNhc2UzKQorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMzJCeXRlczEpCisKKwltb3YJJXJzaSwgJXJjeAorCWFuZAkkMTUsICVyY3gKKwlhbmQJJC0xNiwgJXJzaQorCitMKExvb3BTdGFydCk6CisJc3ViCSVyY3gsICVyZGkKKwlhZGQJJXJjeCwgJXI4CisJc3ViCSQxNiwgJXI4CisJbW92CSQxNiwgJXJheAorCitMKDE2TG9vcCk6CisJbW92ZHFhCSglcnNpLCAlcmF4KSwgJXhtbTEKKwlwY21wZXFiCSV4bW0xLCAleG1tMAorCXBtb3Ztc2tiICV4bW0wLCAlcmR4CisJc3ViCSQxNiwgJXI4CisJamJlCUwoQ29weUZyb20xVG8xNkJ5dGVzQ2FzZTJPckNhc2UzKQorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMTZCeXRlc1htbUV4aXQpCisJbW92ZHF1CSV4bW0xLCAoJXJkaSwgJXJheCkKKwlhZGQJJDE2LCAlcmF4CisJam1wCUwoMTZMb29wKQorCisvKi0tLS0tLUVuZCBvZiBtYWluIHBhcnQgd2l0aCBsb29wcy0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCisKKy8qIENhc2UxICovCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzE2Qnl0ZXMpOgorCWFkZAklcmN4LCAlcmRpCisJYWRkCSVyY3gsICVyc2kKKwlic2YJJXJkeCwgJXJkeAorCWFkZAklcmR4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0U3RyaW5nVGFpbFRhYmxlKSwgJXJkeCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbCk6CisJYWRkCSVyY3gsICVyc2kKKwlic2YJJXJkeCwgJXJkeAorCWFkZAklcmR4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0U3RyaW5nVGFpbFRhYmxlKSwgJXJkeCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8zMkJ5dGVzMSk6CisJYWRkCSQxNiwgJXJzaQorCWFkZAkkMTYsICVyZGkKKwlzdWIJJDE2LCAlcjgKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbDEpOgorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyZHgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRTdHJpbmdUYWlsVGFibGUpLCAlcmR4LCA0KQorCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzMyQnl0ZXMpOgorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyY3gsICVyc2kKKwlhZGQJJDE2LCAlcmR4CisJc3ViCSVyY3gsICVyZHgKKwlhZGQJJXJkeCwgJXJheAorCUJSQU5DSF9UT19KTVBUQkxfRU5UUlkgKEwoRXhpdFN0cmluZ1RhaWxUYWJsZSksICVyZHgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMTZCeXRlc0V4aXQpOgorCWFkZAklcmR4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0U3RyaW5nVGFpbFRhYmxlKSwgJXJkeCwgNCkKKworLyogQ2FzZTIgKi8KKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzQ2FzZTIpOgorCWFkZAkkMTYsICVyOAorCWFkZAklcmF4LCAlcmRpCisJYWRkCSVyYXgsICVyc2kKKwlic2YJJXJkeCwgJXJkeAorCXN1YgklcmN4LCAlcmF4CisJY21wCSVyOCwgJXJkeAorCWpiCUwoQ29weUZyb20xVG8xNkJ5dGVzRXhpdCkKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMzJCeXRlc0Nhc2UyKToKKwlhZGQJJXJjeCwgJXJzaQorCWJzZgklcmR4LCAlcmR4CisJYWRkCSQxNiwgJXJkeAorCXN1YgklcmN4LCAlcmR4CisJY21wCSVyOCwgJXJkeAorCWpiCUwoQ29weUZyb20xVG8xNkJ5dGVzRXhpdCkKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbENhc2UyKToKKwlhZGQJJXJjeCwgJXJzaQorCWJzZgklcmR4LCAlcmR4CisJY21wCSVyOCwgJXJkeAorCWpiCUwoQ29weUZyb20xVG8xNkJ5dGVzRXhpdCkKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWwxQ2FzZTIpOgorCWJzZgklcmR4LCAlcmR4CisJY21wCSVyOCwgJXJkeAorCWpiCUwoQ29weUZyb20xVG8xNkJ5dGVzRXhpdCkKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKy8qIENhc2UyIG9yIENhc2UzLCAgQ2FzZTMgKi8KKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzQ2FzZTJPckNhc2UzKToKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChDb3B5RnJvbTFUbzE2Qnl0ZXNDYXNlMikKKwlhZGQJJDE2LCAlcjgKKwlhZGQJJXJheCwgJXJkaQorCWFkZAklcmF4LCAlcnNpCisJYWRkCSVyOCwgJXJheAorCXN1YgklcmN4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMzJCeXRlc0Nhc2UyT3JDYXNlMyk6CisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8zMkJ5dGVzQ2FzZTIpCisJYWRkCSVyY3gsICVyc2kKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWxDYXNlMk9yQ2FzZTMpOgorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWxDYXNlMikKKwlhZGQJJXJjeCwgJXJzaQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8zMkJ5dGVzMUNhc2UyT3JDYXNlMyk6CisJYWRkCSQxNiwgJXJkaQorCWFkZAkkMTYsICVyc2kKKwlzdWIJJDE2LCAlcjgKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbDFDYXNlMk9yQ2FzZTMpOgorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWwxQ2FzZTIpCisJYWRkCSVyOCwgJXJheAorCUJSQU5DSF9UT19KTVBUQkxfRU5UUlkgKEwoRXhpdFRhYmxlKSwgJXI4LCA0KQorCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNYbW1FeGl0KToKKwlic2YJJXJkeCwgJXJkeAorCWFkZAklcmF4LCAlcmRpCisJYWRkCSVyYXgsICVyc2kKKwlhZGQJJXJkeCwgJXJheAorCXN1YgklcmN4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0U3RyaW5nVGFpbFRhYmxlKSwgJXJkeCwgNCkKKworLyotLS0tLS0tLS0tLS1FbmQgbGFiZWxzIHJlZ2FyZGluZyB3aXRoIGNvcHlpbmcgMS0xNiBieXRlcy0tYW5kIDEtMzIgYnl0ZXMtLS0tKi8KKworCisJLnAyYWxpZ24gNAorTChFeGl0MCk6CisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKEV4aXQxKToKKwltb3ZiCSQwLCAoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyKToKKwltb3ZiCSglcnNpKSwgJWRoCisJbW92YgklZGgsICglcmRpKQorCW1vdmIJJDAsIDEoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQzKToKKwltb3Z3CSglcnNpKSwgJWR4CisJbW92dwklZHgsICglcmRpKQorCW1vdmIJJDAsIDIoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQ0KToKKwltb3Z3CSglcnNpKSwgJWN4CisJbW92YgkyKCVyc2kpLCAlZGgKKwltb3Z3CSVjeCwgKCVyZGkpCisJbW92YgklZGgsIDIoJXJkaSkKKwltb3ZiCSQwLCAzKCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0NSk6CisJbW92bAkoJXJzaSksICVlZHgKKwltb3ZsCSVlZHgsICglcmRpKQorCW1vdmIJJDAsIDQoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQ2KToKKwltb3ZsCSglcnNpKSwgJWVjeAorCW1vdmIJNCglcnNpKSwgJWRoCisJbW92bAklZWN4LCAoJXJkaSkKKwltb3ZiCSVkaCwgNCglcmRpKQorCW1vdmIJJDAsIDUoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQ3KToKKwltb3ZsCSglcnNpKSwgJWVjeAorCW1vdncJNCglcnNpKSwgJWR4CisJbW92bAklZWN4LCAoJXJkaSkKKwltb3Z3CSVkeCwgNCglcmRpKQorCW1vdmIJJDAsIDYoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQ4KToKKwltb3ZsCSglcnNpKSwgJWVjeAorCW1vdmwJMyglcnNpKSwgJWVkeAorCW1vdmwJJWVjeCwgKCVyZGkpCisJbW92bAklZWR4LCAzKCVyZGkpCisJbW92YgkkMCwgNyglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDkpOgorCW1vdnEJKCVyc2kpLCAlcmR4CisJbW92cQklcmR4LCAoJXJkaSkKKwltb3ZiCSQwLCA4KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTApOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92Ygk4KCVyc2kpLCAlZGgKKwltb3ZxCSVyY3gsICglcmRpKQorCW1vdmIJJWRoLCA4KCVyZGkpCisJbW92YgkkMCwgOSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDExKToKKwltb3ZxCSglcnNpKSwgJXJjeAorCW1vdncJOCglcnNpKSwgJWR4CisJbW92cQklcmN4LCAoJXJkaSkKKwltb3Z3CSVkeCwgOCglcmRpKQorCW1vdmIJJDAsIDEwKCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTIpOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92bAk3KCVyc2kpLCAlZWR4CisJbW92cQklcmN4LCAoJXJkaSkKKwltb3ZsCSVlZHgsIDcoJXJkaSkKKwltb3ZiCSQwLCAxMSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDEzKToKKwltb3ZxCSglcnNpKSwgJXJjeAorCW1vdmwJOCglcnNpKSwgJWVkeAorCW1vdnEJJXJjeCwgKCVyZGkpCisJbW92bAklZWR4LCA4KCVyZGkpCisJbW92YgkkMCwgMTIoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxNCk6CisJbW92cQkoJXJzaSksICVyY3gKKwltb3ZxCTUoJXJzaSksICVyZHgKKwltb3ZxCSVyY3gsICglcmRpKQorCW1vdnEJJXJkeCwgNSglcmRpKQorCW1vdmIJJDAsIDEzKCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTUpOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92cQk2KCVyc2kpLCAlcmR4CisJbW92cQklcmN4LCAoJXJkaSkKKwltb3ZxCSVyZHgsIDYoJXJkaSkKKwltb3ZiCSQwLCAxNCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDE2KToKKwltb3ZxCSglcnNpKSwgJXJjeAorCW1vdnEJNyglcnNpKSwgJXJkeAorCW1vdnEJJXJjeCwgKCVyZGkpCisJbW92cQklcmR4LCA3KCVyZGkpCisJbW92YgkkMCwgMTUoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxNyk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmIJJDAsIDE2KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTgpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92YgkxNiglcnNpKSwgJWRoCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZiCSVkaCwgMTYoJXJkaSkKKwltb3ZiCSQwLCAxNyglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDE5KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdncJMTYoJXJzaSksICVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92dwklY3gsIDE2KCVyZGkpCisJbW92YgkkMCwgMTgoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyMCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZsCTE1KCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZsCSVlY3gsIDE1KCVyZGkpCisJbW92YgkkMCwgMTkoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyMSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZsCTE2KCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZsCSVlY3gsIDE2KCVyZGkpCisJbW92YgkkMCwgMjAoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyMik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZsCTE2KCVyc2kpLCAlZWN4CisJbW92YgkyMCglcnNpKSwgJWRoCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZsCSVlY3gsIDE2KCVyZGkpCisJbW92YgklZGgsIDIwKCVyZGkpCisJbW92YgkkMCwgMjEoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyMyk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZxCTE0KCVyc2kpLCAlcmN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZxCSVyY3gsIDE0KCVyZGkpCisJbW92YgkkMCwgMjIoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyNCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZxCTE1KCVyc2kpLCAlcmN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZxCSVyY3gsIDE1KCVyZGkpCisJbW92YgkkMCwgMjMoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyNSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZxCTE2KCVyc2kpLCAlcmN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZxCSVyY3gsIDE2KCVyZGkpCisJbW92YgkkMCwgMjQoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyNik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZxCTE2KCVyc2kpLCAlcmN4CisJbW92YgkyNCglcnNpKSwgJWRoCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZxCSVyY3gsIDE2KCVyZGkpCisJbW92CSVkaCwgMjQoJXJkaSkKKwltb3ZiCSQwLCAyNSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDI3KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTYoJXJzaSksICVyZHgKKwltb3Z3CTI0KCVyc2kpLCAlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJkeCwgMTYoJXJkaSkKKwltb3Z3CSVjeCwgMjQoJXJkaSkKKwltb3ZiCSQwLCAyNiglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDI4KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTYoJXJzaSksICVyZHgKKwltb3ZsCTIzKCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZxCSVyZHgsIDE2KCVyZGkpCisJbW92bAklZWN4LCAyMyglcmRpKQorCW1vdmIJJDAsIDI3KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MjkpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92cQkxNiglcnNpKSwgJXJkeAorCW1vdmwJMjQoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJkeCwgMTYoJXJkaSkKKwltb3ZsCSVlY3gsIDI0KCVyZGkpCisJbW92YgkkMCwgMjgoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQzMCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTMoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDEzKCVyZGkpCisJbW92YgkkMCwgMjkoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQzMSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTQoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE0KCVyZGkpCisJbW92YgkkMCwgMzAoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQzMik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTUoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE1KCVyZGkpCisJbW92YgkkMCwgMzEoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwwKToKKwltb3YJKCVyc2kpLCAlZGwKKwltb3YJJWRsLCAoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDEpOgorCW1vdgkoJXJzaSksICVkeAorCW1vdgklZHgsICglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMik6CisJbW92CSglcnNpKSwgJWN4CisJbW92CTIoJXJzaSksICVkbAorCW1vdgklY3gsICglcmRpKQorCW1vdgklZGwsIDIoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDMpOgorCW1vdgkoJXJzaSksICVlZHgKKwltb3YJJWVkeCwgKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWw0KToKKwltb3YJKCVyc2kpLCAlZWN4CisJbW92CTQoJXJzaSksICVkbAorCW1vdgklZWN4LCAoJXJkaSkKKwltb3YJJWRsLCA0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWw1KToKKwltb3YJKCVyc2kpLCAlZWN4CisJbW92CTQoJXJzaSksICVkeAorCW1vdgklZWN4LCAoJXJkaSkKKwltb3YJJWR4LCA0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWw2KToKKwltb3YJKCVyc2kpLCAlZWN4CisJbW92CTMoJXJzaSksICVlZHgKKwltb3YJJWVjeCwgKCVyZGkpCisJbW92CSVlZHgsIDMoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDcpOgorCW1vdgkoJXJzaSksICVyZHgKKwltb3YJJXJkeCwgKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWw4KToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTgoJXJzaSksICVkbAorCW1vdgklcmN4LCAoJXJkaSkKKwltb3YJJWRsLCA4KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWw5KToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTgoJXJzaSksICVkeAorCW1vdgklcmN4LCAoJXJkaSkKKwltb3YJJWR4LCA4KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxMCk6CisJbW92CSglcnNpKSwgJXJjeAorCW1vdgk3KCVyc2kpLCAlZWR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklZWR4LCA3KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxMSk6CisJbW92CSglcnNpKSwgJXJjeAorCW1vdgk4KCVyc2kpLCAlZWR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklZWR4LCA4KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxMik6CisJbW92CSglcnNpKSwgJXJjeAorCW1vdgk1KCVyc2kpLCAlcmR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklcmR4LCA1KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxMyk6CisJbW92CSglcnNpKSwgJXJjeAorCW1vdgk2KCVyc2kpLCAlcmR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklcmR4LCA2KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxNCk6CisJbW92CSglcnNpKSwgJXJjeAorCW1vdgk3KCVyc2kpLCAlcmR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklcmR4LCA3KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxNSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMTYpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlY2wKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklY2wsIDE2KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxNyk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVjeCwgMTYoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDE4KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNSglcnNpKSwgJWVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVlY3gsIDE1KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxOSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklZWN4LCAxNiglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjApOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlZWN4CisJbW92CTIwKCVyc2kpLCAlZGwKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklZWN4LCAxNiglcmRpKQorCW1vdgklZGwsIDIwKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyMSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTQoJXJzaSksICVyY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklcmN4LCAxNCglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjIpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE1KCVyc2kpLCAlcmN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJjeCwgMTUoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDIzKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJXJjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVyY3gsIDE2KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyNCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVyZHgKKwltb3YJMjQoJXJzaSksICVjbAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVyZHgsIDE2KCVyZGkpCisJbW92CSVjbCwgMjQoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDI1KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJXJkeAorCW1vdgkyNCglcnNpKSwgJWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJkeCwgMTYoJXJkaSkKKwltb3YJJWN4LCAyNCglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjYpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlcmR4CisJbW92CTIzKCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJkeCwgMTYoJXJkaSkKKwltb3YJJWVjeCwgMjMoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDI3KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJXJkeAorCW1vdgkyNCglcnNpKSwgJWVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVyZHgsIDE2KCVyZGkpCisJbW92CSVlY3gsIDI0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyOCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTMoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDEzKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyOSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTQoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwzMCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTUoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE1KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwzMSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTYoJXJzaSksICV4bW0yCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE2KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwzMik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTYoJXJzaSksICV4bW0yCisJbW92CTMyKCVyc2kpLCAlY2wKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTYoJXJkaSkKKwltb3YJJWNsLCAzMiglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMzMpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92ZHF1CTE2KCVyc2kpLCAleG1tMgorCW1vdgkzMiglcnNpKSwgJWNsCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3ZkcXUJJXhtbTIsIDE2KCVyZGkpCisJbW92CSVjbCwgMzIoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woQ2FsY3VsYXRlU3JjTGVuQ2FzZTEpOgorCXhvcgklcjgsICVyOAorCXhvcgklcmF4LCAlcmF4CitMKENhbGN1bGF0ZVNyY0xlbik6CisJcHhvcgkleG1tMCwgJXhtbTAKKwl4b3IJJXJjeCwgJXJjeAorCWFkZAklcjgsICVyc2kKKwltb3ZkcXUJKCVyc2kpLCAleG1tMQorCXBjbXBlcWIJJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChTcmNMZW5Mb29wRW5kKQorCisJYWRkCSVyYXgsICVyOQorCW1vdgkkMTYsICVyYXgKKwltb3YJJXJzaSwgJXJjeAorCWFuZAkkMTUsICVyY3gKKwlhbmQJJC0xNiwgJXJzaQorTChTcmNMZW5Mb29wKToKKwltb3ZkcWEJKCVyc2ksICVyYXgpLCAleG1tMQorCXBjbXBlcWIJJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChTcmNMZW5Mb29wRW5kKQorCWFkZAkkMTYsICVyYXgKKwlqbXAJTChTcmNMZW5Mb29wKQorCisJLnAyYWxpZ24gNAorTChTcmNMZW5Mb29wRW5kKToKKwlic2YJJXJkeCwgJXJkeAorCWFkZAklcmR4LCAlcmF4CisJc3ViCSVyY3gsICVyYXgKKwlSRVRVUk4KKworRU5EIChTVFJMQ1BZKQorCisJLnAyYWxpZ24gNAorCS5zZWN0aW9uIC5yb2RhdGEKK0woRXhpdFRhYmxlKToKKwkuaW50CUpNUFRCTChMKEV4aXQwKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDEpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MiksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQzKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDQpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0NSksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQ2KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDcpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0OCksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQ5KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDEwKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDExKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDEyKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDEzKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE0KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE1KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE2KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE3KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE4KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDE5KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDIwKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDIxKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDIyKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDIzKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI0KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI1KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI2KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI3KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI4KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDI5KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDMwKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDMxKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDMyKSwgTChFeGl0VGFibGUpKQorTChFeGl0U3RyaW5nVGFpbFRhYmxlKToKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwwKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwzKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw0KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw1KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw2KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw3KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw4KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWw5KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxMCksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTEpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDEyKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxMyksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTQpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDE1KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxNiksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTcpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDE4KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxOSksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjApLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDIxKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyMiksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjMpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDI0KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyNSksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjYpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDI3KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyOCksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjkpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDMwKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwzMSksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMzIpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDMzKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NjA3ZjA1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19jbG9zZS5TCkBAIC0wLDAgKzEsMTYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fY2xvc2UpCisgICAgbW92bCAgICAkX19OUl9jbG9zZSwgJWVheAorICAgIHN5c2NhbGwKKyAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIG1vdmwgICAgJWVheCwgJWVkaQorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKzE6CisgICAgcmV0CitFTkQoX19fY2xvc2UpCisuaGlkZGVuIF9fX2Nsb3NlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOGZkM2Y1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDE2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+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+KHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oLTEpKTsKIAotICAvKiBTYW5pdHkgY2hlY2sgLSBmaXJzdCBlbnRyeSBtdXN0IGJlIC0xICovCi0gIGlmIChhcnJheSA9PSBOVUxMIHx8IChzaXplX3QpZmluaV9hcnJheVswXSAhPSBtaW51czEpIHsKKyAgLy8gU2FuaXR5IGNoZWNrIC0gZmlyc3QgZW50cnkgbXVzdCBiZSAtMS4KKyAgaWYgKGFycmF5ID09IE5VTEwgfHwgZmluaV9hcnJheVswXSAhPSBtaW51czEpIHsKICAgICByZXR1cm47CiAgIH0KIAotICAvKiBza2lwIG92ZXIgaXQgKi8KKyAgLy8gU2tpcCBvdmVyIGl0LgogICBmaW5pX2FycmF5ICs9IDE7CiAKLSAgLyogQ291bnQgdGhlIG51bWJlciBvZiBkZXN0cnVjdG9ycy4gKi8KKyAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBkZXN0cnVjdG9ycy4KICAgaW50IGNvdW50ID0gMDsKICAgd2hpbGUgKGZpbmlfYXJyYXlbY291bnRdICE9IE5VTEwpIHsKICAgICArK2NvdW50OwogICB9CiAKLSAgLyogTm93IGNhbGwgZWFjaCBkZXN0cnVjdG9yIGluIHJldmVyc2Ugb3JkZXIuICovCisgIC8vIE5vdyBjYWxsIGVhY2ggZGVzdHJ1Y3RvciBpbiByZXZlcnNlIG9yZGVyLgogICB3aGlsZSAoY291bnQgPiAwKSB7Ci0gICAgdm9pZCAoKmZ1bmMpKCkgPSAodm9pZCAoKikoKSkgZmluaV9hcnJheVstLWNvdW50XTsKKyAgICBEdG9yIGR0b3IgPSBmaW5pX2FycmF5Wy0tY291bnRdOwogCi0gICAgLyogU2FuaXR5IGNoZWNrLCBhbnkgLTEgaW4gdGhlIGxpc3QgaXMgaWdub3JlZCAqLwotICAgIGlmICgoc2l6ZV90KWZ1bmMgPT0gbWludXMxKSB7CisgICAgLy8gU2FuaXR5IGNoZWNrLCBhbnkgLTEgaW4gdGhlIGxpc3QgaXMgaWdub3JlZC4KKyAgICBpZiAoZHRvciA9PSBtaW51czEpIHsKICAgICAgIGNvbnRpbnVlOwogICAgIH0KIAotICAgIGZ1bmMoKTsKKyAgICBkdG9yKCk7CiAgIH0KIAogI2lmbmRlZiBMSUJDX1NUQVRJQwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbGliY19sb2dnaW5nLmNwcCBiL2xpYmMvYmlvbmljL2xpYmNfbG9nZ2luZy5jcHAKaW5kZXggNTY1NTUyNi4uN2FkMjFjNCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbGliY19sb2dnaW5nLmNwcAorKysgYi9saWJjL2Jpb25pYy9saWJjX2xvZ2dpbmcuY3BwCkBAIC03NSwxMCArNzUsMTIgQEAKICAgICAgIGxlbiA9IHN0cmxlbihkYXRhKTsKICAgICB9CiAKKyAgICB0b3RhbCArPSBsZW47CisKICAgICB3aGlsZSAobGVuID4gMCkgewogICAgICAgaW50IGF2YWlsID0gZW5kXyAtIHBvc187CiAgICAgICBpZiAoYXZhaWwgPT0gMCkgewotICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuOwogICAgICAgfQogICAgICAgaWYgKGF2YWlsID4gbGVuKSB7CiAgICAgICAgIGF2YWlsID0gbGVuOwpAQCAtODcsMTEgKzg5LDEwIEBACiAgICAgICBwb3NfICs9IGF2YWlsOwogICAgICAgcG9zX1swXSA9ICdcMCc7CiAgICAgICBsZW4gLT0gYXZhaWw7Ci0gICAgICB0b3RhbCArPSBhdmFpbDsKICAgICB9CiAgIH0KIAotICBpbnQgdG90YWw7CisgIHNpemVfdCB0b3RhbDsKIAogIHByaXZhdGU6CiAgIGNoYXIqIGJ1ZmZlcl87CkBAIC0xMDksMTggKzExMCwxOSBAQAogICAgICAgbGVuID0gc3RybGVuKGRhdGEpOwogICAgIH0KIAorICAgIHRvdGFsICs9IGxlbjsKKwogICAgIHdoaWxlIChsZW4gPiAwKSB7CiAgICAgICBpbnQgcmMgPSBURU1QX0ZBSUxVUkVfUkVUUlkod3JpdGUoZmRfLCBkYXRhLCBsZW4pKTsKICAgICAgIGlmIChyYyA9PSAtMSkgewotICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuOwogICAgICAgfQogICAgICAgZGF0YSArPSByYzsKICAgICAgIGxlbiAtPSByYzsKLSAgICAgIHRvdGFsICs9IHJjOwogICAgIH0KICAgfQogCi0gIGludCB0b3RhbDsKKyAgc2l6ZV90IHRvdGFsOwogCiAgcHJpdmF0ZToKICAgaW50IGZkXzsKQEAgLTQyNSw3ICs0MjcsNyBAQAogfQogCiBzdGF0aWMgaW50IF9fbGliY193cml0ZV9zdGRlcnIoY29uc3QgY2hhciogdGFnLCBjb25zdCBjaGFyKiBtc2cpIHsKLSAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oIi9kZXYvc3RkZXJyIiwgT19DTE9FWEVDIHwgT19XUk9OTFkpKTsKKyAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oIi9kZXYvc3RkZXJyIiwgT19DTE9FWEVDIHwgT19XUk9OTFkgfCBPX0FQUEVORCkpOwogICBpZiAoZmQgPT0gLTEpIHsKICAgICByZXR1cm4gLTE7CiAgIH0KQEAgLTQzNiw3ICs0MzgsNyBAQAogICB2ZWNbMV0uaW92X2Jhc2UgPSBjb25zdF9jYXN0PGNoYXIqPigiOiAiKTsKICAgdmVjWzFdLmlvdl9sZW4gPSAyOwogICB2ZWNbMl0uaW92X2Jhc2UgPSBjb25zdF9jYXN0PGNoYXIqPihtc2cpOwotICB2ZWNbMl0uaW92X2xlbiA9IHN0cmxlbihtc2cpICsgMTsKKyAgdmVjWzJdLmlvdl9sZW4gPSBzdHJsZW4obXNnKTsKICAgdmVjWzNdLmlvdl9iYXNlID0gY29uc3RfY2FzdDxjaGFyKj4oIlxuIik7CiAgIHZlY1szXS5pb3ZfbGVuID0gMTsKIApAQCAtNDQ2LDggKzQ0OCw3IEBACiB9CiAKICNpZmRlZiBUQVJHRVRfVVNFU19MT0dECi1zdGF0aWMgaW50IF9fbGliY19vcGVuX2xvZ19zb2NrZXQoKQoteworc3RhdGljIGludCBfX2xpYmNfb3Blbl9sb2dfc29ja2V0KCkgewogICAvLyBUb0RvOiBJZGVhbGx5IHdlIHdhbnQgdGhpcyB0byBmYWlsIGlmIHRoZSBnaWQgb2YgdGhlIGN1cnJlbnQKICAgLy8gcHJvY2VzcyBpcyBBSURfTE9HRCwgYnV0IHdpbGwgaGF2ZSB0byB3YWl0IHVudGlsIHdlIGhhdmUKICAgLy8gcmVnaXN0ZXJlZCB0aGlzIGluIHByaXZhdGUvYW5kcm9pZF9maWxlc3lzdGVtX2NvbmZpZy5oLiBXZSBoYXZlCkBAIC00ODksNyArNDkwLDYgQEAKIHN0YXRpYyBpbnQgX19saWJjX3dyaXRlX2xvZyhpbnQgcHJpb3JpdHksIGNvbnN0IGNoYXIqIHRhZywgY29uc3QgY2hhciogbXNnKSB7CiAjaWZkZWYgVEFSR0VUX1VTRVNfTE9HRAogICBpbnQgbWFpbl9sb2dfZmQgPSBfX2xpYmNfb3Blbl9sb2dfc29ja2V0KCk7Ci0KICAgaWYgKG1haW5fbG9nX2ZkID09IC0xKSB7CiAgICAgLy8gVHJ5IHN0ZGVyciBpbnN0ZWFkLgogICAgIHJldHVybiBfX2xpYmNfd3JpdGVfc3RkZXJyKHRhZywgbXNnKTsKQEAgLTYxMiw3ICs2MTIsNyBAQAogICBpZiAodGFnICE9IDApIHsKICAgICBfX2xpYmNfYW5kcm9pZF9sb2dfZXZlbnRfdWlkKHRhZyk7CiAgIH0KLSAgX19saWJjX2ZhdGFsKCJGT1JUSUZZX1NPVVJDRTogJXMuIENhbGxpbmcgYWJvcnQoKS4iLCBtc2cpOworICBfX2xpYmNfZmF0YWwoIkZPUlRJRlk6ICVzIiwgbXNnKTsKIH0KIAogc3RhdGljIHZvaWQgX19saWJjX2ZhdGFsKGNvbnN0IGNoYXIqIGZvcm1hdCwgdmFfbGlzdCBhcmdzKSB7CkBAIC02MjAsMTIgKzYyMCwxMiBAQAogICBCdWZmZXJPdXRwdXRTdHJlYW0gb3MobXNnLCBzaXplb2YobXNnKSk7CiAgIG91dF92Zm9ybWF0KG9zLCBmb3JtYXQsIGFyZ3MpOwogCi0gIC8vIGxvZyB0byBzdGRlcnIgZm9yIHRoZSBiZW5lZml0IG9mICJhZGIgc2hlbGwiIHVzZXJzLgorICAvLyBMb2cgdG8gc3RkZXJyIGZvciB0aGUgYmVuZWZpdCBvZiAiYWRiIHNoZWxsIiB1c2Vycy4KICAgc3RydWN0IGlvdmVjIGlvdlsyXSA9IHsKLSAgICB7bXNnLCBzdHJsZW4obXNnKX0sCi0gICAge2NvbnN0X2Nhc3Q8dm9pZCo+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+CiAKICNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc3lzdGVtX3Byb3BlcnRpZXMuY3BwIGIvbGliYy9iaW9uaWMvc3lzdGVtX3Byb3BlcnRpZXMuY3BwCmluZGV4IDBlMTZiZjMuLmFhZTk5YjEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3N5c3RlbV9wcm9wZXJ0aWVzLmNwcAorKysgYi9saWJjL2Jpb25pYy9zeXN0ZW1fcHJvcGVydGllcy5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAjaW5jbHVkZSA8bmV3PgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+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+cmlnaHQpLCBwcm9wZm4sIGNvb2tpZSk7CiAgICAgICAgIGlmIChlcnIgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTU5OCw2ICs2MDYsMTQgQEAKICAgICByZXR1cm4gZmluZF9wcm9wZXJ0eShyb290X25vZGUoKSwgbmFtZSwgc3RybGVuKG5hbWUpLCBOVUxMLCAwLCBmYWxzZSk7CiB9CiAKKy8vIFRoZSBDMTEgc3RhbmRhcmQgZG9lc24ndCBhbGxvdyBhdG9taWMgbG9hZHMgZnJvbSBjb25zdCBmaWVsZHMsCisvLyB0aG91Z2ggQysrMTEgZG9lcy4gIEZ1ZGdlIGl0IHVudGlsIHN0YW5kYXJkcyBnZXQgc3RyYWlnaHRlbmVkIG91dC4KK3N0YXRpYyBpbmxpbmUgdWludF9sZWFzdDMyX3QgbG9hZF9jb25zdF9hdG9taWMoY29uc3QgYXRvbWljX3VpbnRfbGVhc3QzMl90KiBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXIgbW8pIHsKKyAgICBhdG9taWNfdWludF9sZWFzdDMyX3QqIG5vbl9jb25zdF9zID0gY29uc3RfY2FzdDxhdG9taWNfdWludF9sZWFzdDMyX3QqPihzKTsKKyAgICByZXR1cm4gYXRvbWljX2xvYWRfZXhwbGljaXQobm9uX2NvbnN0X3MsIG1vKTsKK30KKwogaW50IF9fc3lzdGVtX3Byb3BlcnR5X3JlYWQoY29uc3QgcHJvcF9pbmZvICpwaSwgY2hhciAqbmFtZSwgY2hhciAqdmFsdWUpCiB7CiAgICAgaWYgKF9fcHJlZGljdF9mYWxzZShjb21wYXRfbW9kZSkpIHsKQEAgLTYwNSwxMSArNjIxLDIwIEBACiAgICAgfQogCiAgICAgd2hpbGUgKHRydWUpIHsKLSAgICAgICAgdWludDMyX3Qgc2VyaWFsID0gX19zeXN0ZW1fcHJvcGVydHlfc2VyaWFsKHBpKTsKKyAgICAgICAgdWludDMyX3Qgc2VyaWFsID0gX19zeXN0ZW1fcHJvcGVydHlfc2VyaWFsKHBpKTsgLy8gYWNxdWlyZSBzZW1hbnRpY3MKICAgICAgICAgc2l6ZV90IGxlbiA9IFNFUklBTF9WQUxVRV9MRU4oc2VyaWFsKTsKICAgICAgICAgbWVtY3B5KHZhbHVlLCBwaS0+dmFsdWUsIGxlbiArIDEpOwotICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICAgIGlmIChzZXJpYWwgPT0gcGktPnNlcmlhbCkgeworICAgICAgICAvLyBUT0RPOiBGaXggdGhlIHN5bmNocm9uaXphdGlvbiBzY2hlbWUgaGVyZS4KKyAgICAgICAgLy8gVGhlcmUgaXMgbm8gZnVsbHkgc3VwcG9ydGVkIHdheSB0byBpbXBsZW1lbnQgdGhpcyBraW5kCisgICAgICAgIC8vIG9mIHN5bmNocm9uaXphdGlvbiBpbiBDKysxMSwgc2luY2UgdGhlIG1lbWNweSByYWNlcyB3aXRoCisgICAgICAgIC8vIHVwZGF0ZXMgdG8gcGksIGFuZCB0aGUgZGF0YSBiZWluZyBhY2Nlc3NlZCBpcyBub3QgYXRvbWljLgorICAgICAgICAvLyBUaGUgZm9sbG93aW5nIGZlbmNlIGlzIHVuaW50dWl0aXZlLCBidXQgd291bGQgYmUgdGhlCisgICAgICAgIC8vIGNvcnJlY3Qgb25lIGlmIG1lbWNweSB1c2VkIG1lbW9yeV9vcmRlcl9yZWxheGVkIGF0b21pYyBhY2Nlc3Nlcy4KKyAgICAgICAgLy8gSW4gcHJhY3RpY2UgaXQgc2VlbXMgdW5saWtlbHkgdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgd291bGQKKyAgICAgICAgLy8gd291bGQgYmUgYW55IGRpZmZlcmVudCwgc28gdGhpcyBzaG91bGQgYmUgT0suCisgICAgICAgIGF0b21pY190aHJlYWRfZmVuY2UobWVtb3J5X29yZGVyX2FjcXVpcmUpOworICAgICAgICBpZiAoc2VyaWFsID09CisgICAgICAgICAgICAgICAgbG9hZF9jb25zdF9hdG9taWMoJihwaS0+c2VyaWFsKSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpKSB7CiAgICAgICAgICAgICBpZiAobmFtZSAhPSAwKSB7CiAgICAgICAgICAgICAgICAgc3RyY3B5KG5hbWUsIHBpLT5uYW1lKTsKICAgICAgICAgICAgIH0KQEAgLTY1OCwxNCArNjgzLDI0IEBACiAgICAgaWYgKGxlbiA+PSBQUk9QX1ZBTFVFX01BWCkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgcGktPnNlcmlhbCA9IHBpLT5zZXJpYWwgfCAxOwotICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKKyAgICB1aW50MzJfdCBzZXJpYWwgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmcGktPnNlcmlhbCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgIHNlcmlhbCB8PSAxOworICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmcGktPnNlcmlhbCwgc2VyaWFsLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgLy8gVGhlIG1lbWNweSBjYWxsIGhlcmUgYWxzbyByYWNlcy4gIEFnYWluIHByZXRlbmQgaXQKKyAgICAvLyB1c2VkIG1lbW9yeV9vcmRlcl9yZWxheGVkIGF0b21pY3MsIGFuZCB1c2UgdGhlIGFuYWxvZ291cworICAgIC8vIGNvdW50ZXJpbnR1aXRpdmUgZmVuY2UuCisgICAgYXRvbWljX3RocmVhZF9mZW5jZShtZW1vcnlfb3JkZXJfcmVsZWFzZSk7CiAgICAgbWVtY3B5KHBpLT52YWx1ZSwgdmFsdWUsIGxlbiArIDEpOwotICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICBwaS0+c2VyaWFsID0gKGxlbiA8PCAyNCkgfCAoKHBpLT5zZXJpYWwgKyAxKSAmIDB4ZmZmZmZmKTsKKyAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQoCisgICAgICAgICZwaS0+c2VyaWFsLAorICAgICAgICAobGVuIDw8IDI0KSB8ICgoc2VyaWFsICsgMSkgJiAweGZmZmZmZiksCisgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICBfX2Z1dGV4X3dha2UoJnBpLT5zZXJpYWwsIElOVDMyX01BWCk7CiAKLSAgICBwYS0+c2VyaWFsKys7CisgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KAorICAgICAgICAmcGEtPnNlcmlhbCwKKyAgICAgICAgYXRvbWljX2xvYWRfZXhwbGljaXQoJnBhLT5zZXJpYWwsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSArIDEsCisgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICBfX2Z1dGV4X3dha2UoJnBhLT5zZXJpYWwsIElOVDMyX01BWCk7CiAKICAgICByZXR1cm4gMDsKQEAgLTY4OCwxNyArNzIzLDI1IEBACiAgICAgaWYgKCFwaSkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgcGEtPnNlcmlhbCsrOworICAgIC8vIFRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgbXV0YXRvciwgYnV0IHdlIHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQKKyAgICAvLyB1cGRhdGVzIGFyZSB2aXNpYmxlIHRvIGEgcmVhZGVyIHdhaXRpbmcgZm9yIHRoZSB1cGRhdGUuCisgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KAorICAgICAgICAmcGEtPnNlcmlhbCwKKyAgICAgICAgYXRvbWljX2xvYWRfZXhwbGljaXQoJnBhLT5zZXJpYWwsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSArIDEsCisgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICBfX2Z1dGV4X3dha2UoJnBhLT5zZXJpYWwsIElOVDMyX01BWCk7CiAgICAgcmV0dXJuIDA7CiB9CiAKKy8vIFdhaXQgZm9yIG5vbi1sb2NrZWQgc2VyaWFsLCBhbmQgcmV0cmlldmUgaXQgd2l0aCBhY3F1aXJlIHNlbWFudGljcy4KIHVuc2lnbmVkIGludCBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwoY29uc3QgcHJvcF9pbmZvICpwaSkKIHsKLSAgICB1aW50MzJfdCBzZXJpYWwgPSBwaS0+c2VyaWFsOworICAgIHVpbnQzMl90IHNlcmlhbCA9IGxvYWRfY29uc3RfYXRvbWljKCZwaS0+c2VyaWFsLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CiAgICAgd2hpbGUgKFNFUklBTF9ESVJUWShzZXJpYWwpKSB7Ci0gICAgICAgIF9fZnV0ZXhfd2FpdChjb25zdF9jYXN0PHZvbGF0aWxlIHVpbnQzMl90Kj4oJnBpLT5zZXJpYWwpLCBzZXJpYWwsIE5VTEwpOwotICAgICAgICBzZXJpYWwgPSBwaS0+c2VyaWFsOworICAgICAgICBfX2Z1dGV4X3dhaXQoY29uc3RfY2FzdDx2b2xhdGlsZSB2b2lkICo+KAorICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkICo+KCZwaS0+c2VyaWFsKSksCisgICAgICAgICAgICAgICAgICAgICBzZXJpYWwsIE5VTEwpOworICAgICAgICBzZXJpYWwgPSBsb2FkX2NvbnN0X2F0b21pYygmcGktPnNlcmlhbCwgbWVtb3J5X29yZGVyX2FjcXVpcmUpOwogICAgIH0KICAgICByZXR1cm4gc2VyaWFsOwogfQpAQCAtNzA2LDEyICs3NDksMTQgQEAKIHVuc2lnbmVkIGludCBfX3N5c3RlbV9wcm9wZXJ0eV93YWl0X2FueSh1bnNpZ25lZCBpbnQgc2VyaWFsKQogewogICAgIHByb3BfYXJlYSAqcGEgPSBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX187CisgICAgdWludDMyX3QgbXlfc2VyaWFsOwogCiAgICAgZG8gewogICAgICAgICBfX2Z1dGV4X3dhaXQoJnBhLT5zZXJpYWwsIHNlcmlhbCwgTlVMTCk7Ci0gICAgfSB3aGlsZSAocGEtPnNlcmlhbCA9PSBzZXJpYWwpOworICAgICAgICBteV9zZXJpYWwgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmcGEtPnNlcmlhbCwgbWVtb3J5X29yZGVyX2FjcXVpcmUpOworICAgIH0gd2hpbGUgKG15X3NlcmlhbCA9PSBzZXJpYWwpOwogCi0gICAgcmV0dXJuIHBhLT5zZXJpYWw7CisgICAgcmV0dXJuIG15X3NlcmlhbDsKIH0KIAogY29uc3QgcHJvcF9pbmZvICpfX3N5c3RlbV9wcm9wZXJ0eV9maW5kX250aCh1bnNpZ25lZCBuKQpAQCAtNzMzLDUgKzc3OCw1IEBACiAgICAgICAgIHJldHVybiBfX3N5c3RlbV9wcm9wZXJ0eV9mb3JlYWNoX2NvbXBhdChwcm9wZm4sIGNvb2tpZSk7CiAgICAgfQogCi0gICAgcmV0dXJuIGZvcmVhY2hfcHJvcGVydHkoMCwgcHJvcGZuLCBjb29raWUpOworICAgIHJldHVybiBmb3JlYWNoX3Byb3BlcnR5KHJvb3Rfbm9kZSgpLCBwcm9wZm4sIGNvb2tpZSk7CiB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy90ZGVzdHJveS5jcHAgYi9saWJjL2Jpb25pYy90ZGVzdHJveS5jcHAKaW5kZXggNDk2MTRiOC4uOTVjM2U2NCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvdGRlc3Ryb3kuY3BwCisrKyBiL2xpYmMvYmlvbmljL3RkZXN0cm95LmNwcApAQCAtMjEsNyArMjEsNyBAQAogLy8gRGVzdHJveSBhIHRyZWUgYW5kIGZyZWUgYWxsIGFsbG9jYXRlZCByZXNvdXJjZXMuCiAvLyBUaGlzIGlzIGEgR05VIGV4dGVuc2lvbiwgbm90IGF2YWlsYWJsZSBmcm9tIEJTRC4KIHZvaWQgdGRlc3Ryb3kodm9pZCogcm9vdCwgdm9pZCAoKmRlc3Ryb3lfZnVuYykodm9pZCopKSB7Ci0gIG5vZGVfdCogcm9vdF9ub2RlID0gKG5vZGVfdCopIHJvb3Q7CisgIG5vZGVfdCogcm9vdF9ub2RlID0gcmVpbnRlcnByZXRfY2FzdDxub2RlX3QqPihyb290KTsKICAgaWYgKHJvb3Rfbm9kZSA9PSBOVUxMKSB7CiAgICAgcmV0dXJuOwogICB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy90ZXJtaW9zLmNwcCBiL2xpYmMvYmlvbmljL3Rlcm1pb3MuY3BwCmluZGV4IDA4MmRjZGMuLjQ0YWU2NDMgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3Rlcm1pb3MuY3BwCisrKyBiL2xpYmMvYmlvbmljL3Rlcm1pb3MuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDx0ZXJtaW9zLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3RpbWU2NC5jIGIvbGliYy9iaW9uaWMvdGltZTY0LmMKaW5kZXggOTVkZmFiNS4uZGEzOGJmMyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvdGltZTY0LmMKKysrIGIvbGliYy9iaW9uaWMvdGltZTY0LmMKQEAgLTc0OCwxMCArNzQ4LDI0IEBACiBjaGFyICphc2N0aW1lNjRfciggY29uc3Qgc3RydWN0IFRNKiBkYXRlLCBjaGFyICpyZXN1bHQgKSB7CiAgICAgLyogSSBmaWd1cmUgZXZlcnl0aGluZyBlbHNlIGNhbiBiZSBkaXNwbGF5ZWQsIGV2ZW4gaG91ciAyNSwgYnV0IGlmCiAgICAgICAgdGhlc2UgYXJlIG91dCBvZiByYW5nZSB3ZSB3YWxrIG9mZiB0aGUgbmFtZSBhcnJheXMgKi8KLSAgICBpZiggIXZhbGlkX3RtX3dkYXkoZGF0ZSkgfHwgIXZhbGlkX3RtX21vbihkYXRlKSApCisgICAgaWYgKCF2YWxpZF90bV93ZGF5KGRhdGUpIHx8ICF2YWxpZF90bV9tb24oZGF0ZSkpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCi0gICAgc3ByaW50ZihyZXN1bHQsICIlLjNzICUuM3MlM2QgJS4yZDolLjJkOiUuMmQgJWRcbiIsCisgICAgLyogRG9jcyBzdGF0ZSB0aGlzIGZ1bmN0aW9uIGRvZXMgbm90IHN1cHBvcnQgeWVhcnMgYmV5b25kIDk5OTkuICovCisgICAgaWYgKDE5MDAgKyBkYXRlLT50bV95ZWFyID4gOTk5OSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKgorICAgICAqIFRoZSBJQk0gZG9jcyBmb3IgdGhpcyBmdW5jdGlvbiBzdGF0ZSB0aGF0IHRoZSByZXN1bHQgYnVmZmVyIGNhbiBiZQorICAgICAqIGFzc3VtZWQgdG8gYmUgYXQgbGVhc3QgMjYgYnl0ZXMgd2lkZS4gVGhlIGRvY3MgYWxzbyBzdGF0ZSB0aGF0IHRoaXMgaXMKKyAgICAgKiBvbmx5IHZhbGlkIGZvciB5ZWFycyA8PSA5OTk5LCBzbyB3ZSBrbm93IHRoaXMgZm9ybWF0IHN0cmluZyB3aWxsIG5vdAorICAgICAqIHByaW50IG1vcmUgdGhhbiB0aGF0IG1hbnkgY2hhcmFjdGVycy4KKyAgICAgKgorICAgICAqIGh0dHA6Ly93d3ctMDEuaWJtLmNvbS9zdXBwb3J0L2tub3dsZWRnZWNlbnRlci9TU0xUQldfMi4xLjAvY29tLmlibS56b3MudjJyMS5icHhiZDAwL2FzY3RpbWVyLmh0bQorICAgICAqLworICAgIHNucHJpbnRmKHJlc3VsdCwgMjYsICIlLjNzICUuM3MlM2QgJS4yZDolLjJkOiUuMmQgJWRcbiIsCiAgICAgICAgIHdkYXlfbmFtZVtkYXRlLT50bV93ZGF5XSwKICAgICAgICAgbW9uX25hbWVbZGF0ZS0+dG1fbW9uXSwKICAgICAgICAgZGF0ZS0+dG1fbWRheSwgZGF0ZS0+dG1faG91ciwKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3V0aW1lcy5jcHAgYi9saWJjL2Jpb25pYy91dGltZXMuY3BwCmluZGV4IDY1ZjJkMGIuLjBiNjZlNmMgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3V0aW1lcy5jcHAKKysrIGIvbGliYy9iaW9uaWMvdXRpbWVzLmNwcApAQCAtMjYsNiArMjYsNyBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy92ZHNvLmNwcCBiL2xpYmMvYmlvbmljL3Zkc28uY3BwCmluZGV4IDA4NzVlZTYuLmEyNDA2NjMgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3Zkc28uY3BwCisrKyBiL2xpYmMvYmlvbmljL3Zkc28uY3BwCkBAIC0xNSw2ICsxNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgPGxpbmsuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzeXMvYXV4di5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC01MiwxMyArNTMsMTMgQEAKIAogaW50IGNsb2NrX2dldHRpbWUoaW50IGNsb2NrX2lkLCB0aW1lc3BlYyogdHApIHsKICAgc3RhdGljIGludCAoKnZkc29fY2xvY2tfZ2V0dGltZSkoaW50LCB0aW1lc3BlYyopID0KLSAgICAgIChpbnQgKCopKGludCwgdGltZXNwZWMqKSkgdmRzb19lbnRyaWVzW1ZEU09fQ0xPQ0tfR0VUVElNRV0uZm47CisgICAgICByZWludGVycHJldF9jYXN0PGludCAoKikoaW50LCB0aW1lc3BlYyopPih2ZHNvX2VudHJpZXNbVkRTT19DTE9DS19HRVRUSU1FXS5mbik7CiAgIHJldHVybiB2ZHNvX2Nsb2NrX2dldHRpbWUoY2xvY2tfaWQsIHRwKTsKIH0KIAogaW50IGdldHRpbWVvZmRheSh0aW1ldmFsKiB0diwgc3RydWN0IHRpbWV6b25lKiB0eikgewogICBzdGF0aWMgaW50ICgqdmRzb19nZXR0aW1lb2ZkYXkpKHRpbWV2YWwqLCBzdHJ1Y3QgdGltZXpvbmUqKSA9Ci0gICAgICAoaW50ICgqKSh0aW1ldmFsKiwgc3RydWN0IHRpbWV6b25lKikpIHZkc29fZW50cmllc1tWRFNPX0dFVFRJTUVPRkRBWV0uZm47CisgICAgICByZWludGVycHJldF9jYXN0PGludCAoKikodGltZXZhbCosIHN0cnVjdCB0aW1lem9uZSopPih2ZHNvX2VudHJpZXNbVkRTT19HRVRUSU1FT0ZEQVldLmZuKTsKICAgcmV0dXJuIHZkc29fZ2V0dGltZW9mZGF5KHR2LCB0eik7CiB9CiAKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3dtZW1wY3B5LmNwcCBiL2xpYmMvYmlvbmljL3dtZW1wY3B5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NGViZjg2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvd21lbXBjcHkuY3BwCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHdjaGFyLmg+CisKK3djaGFyX3QqIHdtZW1wY3B5KHdjaGFyX3QqIGRzdCwgY29uc3Qgd2NoYXJfdCogc3JjLCBzaXplX3QgbikgeworICByZXR1cm4gd21lbWNweShkc3QsIHNyYywgbikgKyBuOworfQpkaWZmIC0tZ2l0IGEvbGliYy9jcnQubWsgYi9saWJjL2NydC5tawppbmRleCBjM2JhNTRiLi42MzY1MzMyIDEwMDY0NAotLS0gYS9saWJjL2NydC5taworKysgYi9saWJjL2NydC5tawpAQCAtMzEsMzAgKzMxLDE5IEBACiAKIG15X2xpYmNfY3J0X3RhcmdldF9sZGZsYWdzIDo9ICQobGliY19jcnRfdGFyZ2V0X2xkZmxhZ3NfJChteV9hcmNoKSkKIAotCi0jIFNlZSB0aGUgY29tbWVudCBpbiBjcnRicmFuZC5jIGZvciB0aGUgcmVhc29uIHdoeSB3ZSBuZWVkIHRvIGdlbmVyYXRlCi0jIGNydGJyYW5kLnMgYmVmb3JlIGdlbmVyYXRpbmcgY3J0YnJhbmQuby4KLUdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YnJhbmQucwotJChHRU4pOiBQUklWQVRFX0NDIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX0NDKQotJChHRU4pOiBQUklWQVRFX0NGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9zb19jZmxhZ3MpCi0kKEdFTik6ICQoTE9DQUxfUEFUSCkvYmlvbmljL2NydGJyYW5kLmMKLQlAbWtkaXIgLXAgJChkaXIgJEApCi0JJChoaWRlKSAkKFBSSVZBVEVfQ0MpICQoUFJJVkFURV9DRkxBR1MpIC1TIFwKLQkJLU1EIC1NRiAkKEA6JS5zPSUuZCkgLW8gJEAgJDwKLQkkKGhpZGUpIHNlZCAtaSAtZSAnL1wubm90ZVwuQUJJLXRhZy9zL3Byb2diaXRzL25vdGUvJyAkQAotCSQoY2FsbCB0cmFuc2Zvcm0tZC10by1wLWFyZ3MsJChAOiUucz0lLmQpLCQoQDolLnM9JS5QKSkKLS1pbmNsdWRlICQoR0VOOiUucz0lLlApCi0KLQorIyBjcnRicmFuZC5TIC0+IGNydGJyYW5kLm8KIEdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YnJhbmQubwogJChHRU4pOiBQUklWQVRFX0NDIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX0NDKQogJChHRU4pOiBQUklWQVRFX0NGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9zb19jZmxhZ3MpCi0kKEdFTik6ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRicmFuZC5zCiskKEdFTik6ICQoTE9DQUxfUEFUSCkvYXJjaC1jb21tb24vYmlvbmljL2NydGJyYW5kLlMKIAlAbWtkaXIgLXAgJChkaXIgJEApCi0JJChoaWRlKSAkKFBSSVZBVEVfQ0MpICQoUFJJVkFURV9DRkxBR1MpIC1vICRAIC1jICQ8CisJJChoaWRlKSAkKFBSSVZBVEVfQ0MpICQoUFJJVkFURV9DRkxBR1MpIFwKKwkJLU1EIC1NRiAkKEA6JS5vPSUuZCkgLW8gJEAgLWMgJDwKKwkkKHRyYW5zZm9ybS1kLXRvLXApCistaW5jbHVkZSAkKEdFTjolLm89JS5QKQogCi0KLUdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fc28ubworIyBjcnRiZWdpbl9zby5jIC0+IGNydGJlZ2luX3NvMS5vCitHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX3NvMS5vCiAkKEdFTik6IFBSSVZBVEVfQ0MgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfQ0MpCiAkKEdFTik6IFBSSVZBVEVfQ0ZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X3NvX2NmbGFncykKICQoR0VOKTogJChteV9saWJjX2NydF90YXJnZXRfY3J0YmVnaW5fc29fZmlsZSkKQEAgLTY0LDcgKzUzLDE2IEBACiAJJCh0cmFuc2Zvcm0tZC10by1wKQogLWluY2x1ZGUgJChHRU46JS5vPSUuUCkKIAorIyBjcnRiZWdpbl9zbzEubyArIGNydGJyYW5kLm8gLT4gY3J0YmVnaW5fc28ubworR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9zby5vCiskKEdFTik6IFBSSVZBVEVfTEQgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfTEQpCiskKEdFTik6IFBSSVZBVEVfTERGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9sZGZsYWdzKQorJChHRU4pOiAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fc28xLm8gXAorICAgICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRicmFuZC5vCisJQG1rZGlyIC1wICQoZGlyICRAKQorCSQoaGlkZSkgJChQUklWQVRFX0xEKSAkKFBSSVZBVEVfTERGTEFHUykgLXIgLW8gJEAgJF4KIAorIyBjcnRlbmRfc28uUyAtPiBjcnRlbmRfc28ubwogR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRlbmRfc28ubwogJChHRU4pOiBQUklWQVRFX0NDIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX0NDKQogJChHRU4pOiBQUklWQVRFX0NGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9zb19jZmxhZ3MpCkBAIC03NSw4ICs3Myw3IEBACiAJJCh0cmFuc2Zvcm0tZC10by1wKQogLWluY2x1ZGUgJChHRU46JS5vPSUuUCkKIAotCi0jIFRoZSBmb2xsb3dpbmcgdHdvIGFyZSBpbnN0YWxsZWQgdG8gZGV2aWNlCisjIGNydGJlZ2luX3NvLm8gYW5kIGNydGVuZF9zby5vIGFyZSBpbnN0YWxsZWQgdG8gZGV2aWNlCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX1NIQVJFRF9MSUJSQVJJRVMpL2NydGJlZ2luX3NvLm8KICQoR0VOKTogJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX3NvLm8KIAkkKGhpZGUpIG1rZGlyIC1wICQoZGlyICRAKSAmJiBjcCAtZiAkPCAkQApAQCAtODcsNyArODQsNyBAQAogCSQoaGlkZSkgbWtkaXIgLXAgJChkaXIgJEApICYmIGNwIC1mICQ8ICRACiBBTExfR0VORVJBVEVEX1NPVVJDRVMgKz0gJChHRU4pCiAKLQorIyBjcnRiZWdpbi5jIC0+IGNydGJlZ2luX3N0YXRpYzEubwogR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9zdGF0aWMxLm8KICQoR0VOKTogUFJJVkFURV9DQyA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9DQykKICQoR0VOKTogUFJJVkFURV9DRkxBR1MgOj0gJChteV9saWJjX2NydF90YXJnZXRfY2ZsYWdzKQpAQCAtOTgsNyArOTUsNyBAQAogCSQodHJhbnNmb3JtLWQtdG8tcCkKIC1pbmNsdWRlICQoR0VOOiUubz0lLlApCiAKLQorIyBjcnRiZWdpbl9zdGF0aWMxLm8gKyBjcnRicmFuZC5vIC0+IGNydGJlZ2luX3N0YXRpYy5vCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX3N0YXRpYy5vCiAkKEdFTik6IFBSSVZBVEVfTEQgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfTEQpCiAkKEdFTik6IFBSSVZBVEVfTERGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9sZGZsYWdzKQpAQCAtMTA3LDcgKzEwNCw3IEBACiAJQG1rZGlyIC1wICQoZGlyICRAKQogCSQoaGlkZSkgJChQUklWQVRFX0xEKSAkKFBSSVZBVEVfTERGTEFHUykgLXIgLW8gJEAgJF4KIAotCisjIGNydGJlZ2luLmMgLT4gY3J0YmVnaW5fZHluYW1pYzEubwogR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9keW5hbWljMS5vCiAkKEdFTik6IFBSSVZBVEVfQ0MgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfQ0MpCiAkKEdFTik6IFBSSVZBVEVfQ0ZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X2NmbGFncykKQEAgLTExOCw3ICsxMTUsNyBAQAogCSQodHJhbnNmb3JtLWQtdG8tcCkKIC1pbmNsdWRlICQoR0VOOiUubz0lLlApCiAKLQorIyBjcnRiZWdpbl9keW5hbWljMS5vICsgY3J0YnJhbmQubyAtPiBjcnRiZWdpbl9keW5hbWljLm8KIEdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fZHluYW1pYy5vCiAkKEdFTik6IFBSSVZBVEVfTEQgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfTEQpCiAkKEdFTik6IFBSSVZBVEVfTERGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9sZGZsYWdzKQpAQCAtMTI3LDcgKzEyNCw3IEBACiAJQG1rZGlyIC1wICQoZGlyICRAKQogCSQoaGlkZSkgJChQUklWQVRFX0xEKSAkKFBSSVZBVEVfTERGTEFHUykgLXIgLW8gJEAgJF4KIAotCisjIGNydGVuZC5TIC0+IGNydGVuZF9hbmRyb2lkLm8KICMgV2UgcmVuYW1lIGNydGVuZC5vIHRvIGNydGVuZF9hbmRyb2lkLm8gdG8gYXZvaWQgYQogIyBuYW1lIGNsYXNoIGJldHdlZW4gZ2NjIGFuZCBiaW9uaWMuCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGVuZF9hbmRyb2lkLm8KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL2dldGhuYW1hZGRyLmMgYi9saWJjL2Rucy9nZXRobmFtYWRkci5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDg0N2I4Li4wMDAwMDAwCi0tLSBhL2xpYmMvZG5zL2dldGhuYW1hZGRyLmMKKysrIC9kZXYvbnVsbApAQCAtMSwxNDE2ICswLDAgQEAKLS8qCSROZXRCU0Q6IGdldGhuYW1hZGRyLmMsdiAxLjcwIDIwMDYvMDMvMjIgMDA6MDM6NTEgY2hyaXN0b3MgRXhwICQJKi8KLQotLyoKLSAqICsrQ29weXJpZ2h0KysgMTk4NSwgMTk4OCwgMTk5MwotICogLQotICogQ29weXJpZ2h0IChjKSAxOTg1LCAxOTg4LCAxOTkzCi0gKiAgICBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKiAtCi0gKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTMgYnkgRGlnaXRhbCBFcXVpcG1lbnQgQ29ycG9yYXRpb24uCi0gKgotICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55Ci0gKiBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLCBhbmQgdGhhdAotICogdGhlIG5hbWUgb2YgRGlnaXRhbCBFcXVpcG1lbnQgQ29ycG9yYXRpb24gbm90IGJlIHVzZWQgaW4gYWR2ZXJ0aXNpbmcgb3IKLSAqIHB1YmxpY2l0eSBwZXJ0YWluaW5nIHRvIGRpc3RyaWJ1dGlvbiBvZiB0aGUgZG9jdW1lbnQgb3Igc29mdHdhcmUgd2l0aG91dAotICogc3BlY2lmaWMsIHdyaXR0ZW4gcHJpb3IgcGVybWlzc2lvbi4KLSAqCi0gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgRElHSVRBTCBFUVVJUE1FTlQgQ09SUC4gRElTQ0xBSU1TIEFMTAotICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFLCBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiAgIElOIE5PIEVWRU5UIFNIQUxMIERJR0lUQUwgRVFVSVBNRU5UCi0gKiBDT1JQT1JBVElPTiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IKLSAqIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTCi0gKiBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLgotICogLQotICogLS1Db3B5cmlnaHQtLQotICovCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLQotI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgotI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KLSNpbmNsdWRlIDxzeXMvdW4uaD4KLSNpbmNsdWRlIDxuZXRpbmV0L2luLmg+Ci0jaW5jbHVkZSA8YXJwYS9pbmV0Lmg+Ci0jaW5jbHVkZSA8YXJwYS9uYW1lc2VyLmg+Ci0jaW5jbHVkZSAiTmV0ZENsaWVudERpc3BhdGNoLmgiCi0jaW5jbHVkZSAicmVzb2x2X25ldGlkLmgiCi0jaW5jbHVkZSAicmVzb2x2X3ByaXZhdGUuaCIKLSNpbmNsdWRlICJyZXNvbHZfY2FjaGUuaCIKLSNpbmNsdWRlIDxhc3NlcnQuaD4KLSNpbmNsdWRlIDxjdHlwZS5oPgotI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8bmV0ZGIuaD4KLSNpbmNsdWRlIDxzdGRhcmcuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0cmluZ3MuaD4KLSNpbmNsdWRlIDxzeXNsb2cuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLQotI2RlZmluZSBBTElHTkJZVEVTIChzaXplb2YodWludHB0cl90KSAtIDEpCi0jZGVmaW5lIEFMSUdOKHApICgoKHVpbnRwdHJfdCkocCkgKyBBTElHTkJZVEVTKSAmfiBBTElHTkJZVEVTKQotCi0jaWZuZGVmIExPR19BVVRICi0jIGRlZmluZSBMT0dfQVVUSCAwCi0jZW5kaWYKLQotI2RlZmluZSBNVUxUSV9QVFJTX0FSRV9BTElBU0VTIDEJLyogWFhYIC0gZXhwZXJpbWVudGFsICovCi0KLSNpbmNsdWRlICJuc3N3aXRjaC5oIgotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotCi0vLyBUaGlzIHNob3VsZCBiZSBzeW5jaHJvbml6ZWQgdG8gUmVzcG9uc2VDb2RlLmgKLXN0YXRpYyBjb25zdCBpbnQgRG5zUHJveHlRdWVyeVJlc3VsdCA9IDIyMjsKLQotc3RhdGljIGNvbnN0IGNoYXIgQXNrZWRGb3JHb3RbXSA9Ci0JCQkgICJnZXRob3N0YnkqLmdldGFuc3dlcjogYXNrZWQgZm9yIFwiJXNcIiwgZ290IFwiJXNcIiI7Ci0KLSNkZWZpbmUJTUFYUEFDS0VUCSg2NCoxMDI0KQotCi10eXBlZGVmIHVuaW9uIHsKLSAgICBIRUFERVIgaGRyOwotICAgIHVfY2hhciBidWZbTUFYUEFDS0VUXTsKLX0gcXVlcnlidWY7Ci0KLXR5cGVkZWYgdW5pb24gewotICAgIGludDMyX3QgYWw7Ci0gICAgY2hhciBhYzsKLX0gYWxpZ247Ci0KLSNpZmRlZiBERUJVRwotc3RhdGljIHZvaWQgZHByaW50Zihjb25zdCBjaGFyICosIHJlc19zdGF0ZSwgLi4uKQotCV9fYXR0cmlidXRlX18oKF9fZm9ybWF0X18oX19wcmludGZfXywgMSwgMykpKTsKLSNlbmRpZgotc3RhdGljIHN0cnVjdCBob3N0ZW50ICpnZXRhbnN3ZXIoY29uc3QgcXVlcnlidWYgKiwgaW50LCBjb25zdCBjaGFyICosIGludCwKLSAgICByZXNfc3RhdGUpOwotc3RhdGljIHZvaWQgbWFwX3Y0djZfYWRkcmVzcyhjb25zdCBjaGFyICosIGNoYXIgKik7Ci1zdGF0aWMgdm9pZCBtYXBfdjR2Nl9ob3N0ZW50KHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiosIGNoYXIgKik7Ci1zdGF0aWMgdm9pZCBhZGRyc29ydChjaGFyICoqLCBpbnQsIHJlc19zdGF0ZSk7Ci0KLXN0YXRpYyB2b2lkIF9zZXRodGVudChpbnQpOwotc3RhdGljIHZvaWQgX2VuZGh0ZW50KHZvaWQpOwotc3RhdGljIHN0cnVjdCBob3N0ZW50ICpfZ2V0aHRlbnQodm9pZCk7Ci12b2lkIGh0X3NldGhvc3RlbnQoaW50KTsKLXZvaWQgaHRfZW5kaG9zdGVudCh2b2lkKTsKLXN0cnVjdCBob3N0ZW50ICpodF9nZXRob3N0YnluYW1lKGNoYXIgKik7Ci1zdHJ1Y3QgaG9zdGVudCAqaHRfZ2V0aG9zdGJ5YWRkcihjb25zdCBjaGFyICosIGludCwgaW50KTsKLXZvaWQgZG5zX3NlcnZpY2Uodm9pZCk7Ci0jdW5kZWYgZG5fc2tpcG5hbWUKLWludCBkbl9za2lwbmFtZShjb25zdCB1X2NoYXIgKiwgY29uc3QgdV9jaGFyICopOwotc3RhdGljIGludCBfZ2V0aHRieWFkZHIodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOwotc3RhdGljIGludCBfZ2V0aHRieW5hbWUodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOwotc3RhdGljIHN0cnVjdCBob3N0ZW50ICpfZ2V0aHRieW5hbWUyKGNvbnN0IGNoYXIgKiwgaW50KTsKLXN0YXRpYyBpbnQgX2Ruc19nZXRodGJ5YWRkcih2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7Ci1zdGF0aWMgaW50IF9kbnNfZ2V0aHRieW5hbWUodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOwotCi1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKmdldGhvc3RieW5hbWVfaW50ZXJuYWwoY29uc3QgY2hhciAqLCBpbnQsIHJlc19zdGF0ZSwgdW5zaWduZWQsIHVuc2lnbmVkKTsKLQotc3RhdGljIGNvbnN0IG5zX3NyYyBkZWZhdWx0X2Ruc19maWxlc1tdID0gewotCXsgTlNTUkNfRklMRVMsIAlOU19TVUNDRVNTIH0sCi0JeyBOU1NSQ19ETlMsIAlOU19TVUNDRVNTIH0sCi0JeyAwLCAwIH0KLX07Ci0KLQotI2lmZGVmIERFQlVHCi1zdGF0aWMgdm9pZAotZHByaW50Zihjb25zdCBjaGFyICptc2csIHJlc19zdGF0ZSByZXMsIC4uLikKLXsKLQlhc3NlcnQobXNnICE9IE5VTEwpOwotCi0JaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19ERUJVRykgewotCQlpbnQgc2F2ZSA9IGVycm5vOwotCQl2YV9saXN0IGFwOwotCi0JCXZhX3N0YXJ0IChhcCwgcmVzKTsKLQkJdnByaW50Zihtc2csIGFwKTsKLQkJdmFfZW5kIChhcCk7Ci0KLQkJZXJybm8gPSBzYXZlOwotCX0KLX0KLSNlbHNlCi0jIGRlZmluZSBkcHJpbnRmKG1zZywgcmVzLCBudW0pICgodm9pZCkwKSAvKm5hZGEqLwotI2VuZGlmCi0KLSNkZWZpbmUgQk9VTkRFRF9JTkNSKHgpIFwKLQlkbyB7IFwKLQkJY3AgKz0gKHgpOyBcCi0JCWlmIChjcCA+IGVvbSkgeyBcCi0JCQloX2Vycm5vID0gTk9fUkVDT1ZFUlk7IFwKLQkJCXJldHVybiBOVUxMOyBcCi0JCX0gXAotCX0gd2hpbGUgKC8qQ09OU1RDT05EKi8wKQotCi0jZGVmaW5lIEJPVU5EU19DSEVDSyhwdHIsIGNvdW50KSBcCi0JZG8geyBcCi0JCWlmICgocHRyKSArIChjb3VudCkgPiBlb20pIHsgXAotCQkJaF9lcnJubyA9IE5PX1JFQ09WRVJZOyBcCi0JCQlyZXR1cm4gTlVMTDsgXAotCQl9IFwKLQl9IHdoaWxlICgvKkNPTlNUQ09ORCovMCkKLQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLWdldGFuc3dlcihjb25zdCBxdWVyeWJ1ZiAqYW5zd2VyLCBpbnQgYW5zbGVuLCBjb25zdCBjaGFyICpxbmFtZSwgaW50IHF0eXBlLAotICAgIHJlc19zdGF0ZSByZXMpCi17Ci0JY29uc3QgSEVBREVSICpocDsKLQljb25zdCB1X2NoYXIgKmNwOwotCWludCBuOwotCWNvbnN0IHVfY2hhciAqZW9tLCAqZXJkYXRhOwotCWNoYXIgKmJwLCAqKmFwLCAqKmhhcCwgKmVwOwotCWludCB0eXBlLCBjbGFzcywgYW5jb3VudCwgcWRjb3VudDsKLQlpbnQgaGF2ZWFuc3dlciwgaGFkX2Vycm9yOwotCWludCB0b29iaWcgPSAwOwotCWNoYXIgdGJ1ZltNQVhETkFNRV07Ci0JY29uc3QgY2hhciAqdG5hbWU7Ci0JaW50ICgqbmFtZV9vaykoY29uc3QgY2hhciAqKTsKLQlyZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotCWFzc2VydChhbnN3ZXIgIT0gTlVMTCk7Ci0JYXNzZXJ0KHFuYW1lICE9IE5VTEwpOwotCi0JdG5hbWUgPSBxbmFtZTsKLQlycy0+aG9zdC5oX25hbWUgPSBOVUxMOwotCWVvbSA9IGFuc3dlci0+YnVmICsgYW5zbGVuOwotCXN3aXRjaCAocXR5cGUpIHsKLQljYXNlIFRfQToKLQljYXNlIFRfQUFBQToKLQkJbmFtZV9vayA9IHJlc19obm9rOwotCQlicmVhazsKLQljYXNlIFRfUFRSOgotCQluYW1lX29rID0gcmVzX2Rub2s7Ci0JCWJyZWFrOwotCWRlZmF1bHQ6Ci0JCXJldHVybiBOVUxMOwkvKiBYWFggc2hvdWxkIGJlIGFib3J0KCk7ICovCi0JfQotCS8qCi0JICogZmluZCBmaXJzdCBzYXRpc2ZhY3RvcnkgYW5zd2VyCi0JICovCi0JaHAgPSAmYW5zd2VyLT5oZHI7Ci0JYW5jb3VudCA9IG50b2hzKGhwLT5hbmNvdW50KTsKLQlxZGNvdW50ID0gbnRvaHMoaHAtPnFkY291bnQpOwotCWJwID0gcnMtPmhvc3RidWY7Ci0JZXAgPSBycy0+aG9zdGJ1ZiArIHNpemVvZiBycy0+aG9zdGJ1ZjsKLQljcCA9IGFuc3dlci0+YnVmOwotCUJPVU5ERURfSU5DUihIRklYRURTWik7Ci0JaWYgKHFkY291bnQgIT0gMSkgewotCQloX2Vycm5vID0gTk9fUkVDT1ZFUlk7Ci0JCXJldHVybiBOVUxMOwotCX0KLQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgZXAgLSBicCk7Ci0JaWYgKChuIDwgMCkgfHwgISgqbmFtZV9vaykoYnApKSB7Ci0JCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCUJPVU5ERURfSU5DUihuICsgUUZJWEVEU1opOwotCWlmIChxdHlwZSA9PSBUX0EgfHwgcXR5cGUgPT0gVF9BQUFBKSB7Ci0JCS8qIHJlc19zZW5kKCkgaGFzIGFscmVhZHkgdmVyaWZpZWQgdGhhdCB0aGUgcXVlcnkgbmFtZSBpcyB0aGUKLQkJICogc2FtZSBhcyB0aGUgb25lIHdlIHNlbnQ7IHRoaXMganVzdCBnZXRzIHRoZSBleHBhbmRlZCBuYW1lCi0JCSAqIChpLmUuLCB3aXRoIHRoZSBzdWNjZWVkaW5nIHNlYXJjaC1kb21haW4gdGFja2VkIG9uKS4KLQkJICovCi0JCW4gPSBzdHJsZW4oYnApICsgMTsJCS8qIGZvciB0aGUgXDAgKi8KLQkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKLQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJCXJldHVybiBOVUxMOwotCQl9Ci0JCXJzLT5ob3N0LmhfbmFtZSA9IGJwOwotCQlicCArPSBuOwotCQkvKiBUaGUgcW5hbWUgY2FuIGJlIGFiYnJldmlhdGVkLCBidXQgaF9uYW1lIGlzIG5vdyBhYnNvbHV0ZS4gKi8KLQkJcW5hbWUgPSBycy0+aG9zdC5oX25hbWU7Ci0JfQotCWFwID0gcnMtPmhvc3RfYWxpYXNlczsKLQkqYXAgPSBOVUxMOwotCXJzLT5ob3N0LmhfYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0JaGFwID0gcnMtPmhfYWRkcl9wdHJzOwotCSpoYXAgPSBOVUxMOwotCXJzLT5ob3N0LmhfYWRkcl9saXN0ID0gcnMtPmhfYWRkcl9wdHJzOwotCWhhdmVhbnN3ZXIgPSAwOwotCWhhZF9lcnJvciA9IDA7Ci0Jd2hpbGUgKGFuY291bnQtLSA+IDAgJiYgY3AgPCBlb20gJiYgIWhhZF9lcnJvcikgewotCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgZXAgLSBicCk7Ci0JCWlmICgobiA8IDApIHx8ICEoKm5hbWVfb2spKGJwKSkgewotCQkJaGFkX2Vycm9yKys7Ci0JCQljb250aW51ZTsKLQkJfQotCQljcCArPSBuOwkJCS8qIG5hbWUgKi8KLQkJQk9VTkRTX0NIRUNLKGNwLCAzICogSU5UMTZTWiArIElOVDMyU1opOwotCQl0eXBlID0gX2dldHNob3J0KGNwKTsKLSAJCWNwICs9IElOVDE2U1o7CQkJLyogdHlwZSAqLwotCQljbGFzcyA9IF9nZXRzaG9ydChjcCk7Ci0gCQljcCArPSBJTlQxNlNaICsgSU5UMzJTWjsJLyogY2xhc3MsIFRUTCAqLwotCQluID0gX2dldHNob3J0KGNwKTsKLQkJY3AgKz0gSU5UMTZTWjsJCQkvKiBsZW4gKi8KLQkJQk9VTkRTX0NIRUNLKGNwLCBuKTsKLQkJZXJkYXRhID0gY3AgKyBuOwotCQlpZiAoY2xhc3MgIT0gQ19JTikgewotCQkJLyogWFhYIC0gZGVidWc/IHN5c2xvZz8gKi8KLQkJCWNwICs9IG47Ci0JCQljb250aW51ZTsJCS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KLQkJfQotCQlpZiAoKHF0eXBlID09IFRfQSB8fCBxdHlwZSA9PSBUX0FBQUEpICYmIHR5cGUgPT0gVF9DTkFNRSkgewotCQkJaWYgKGFwID49ICZycy0+aG9zdF9hbGlhc2VzW01BWEFMSUFTRVMtMV0pCi0JCQkJY29udGludWU7Ci0JCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCB0YnVmLCBzaXplb2YgdGJ1Zik7Ci0JCQlpZiAoKG4gPCAwKSB8fCAhKCpuYW1lX29rKSh0YnVmKSkgewotCQkJCWhhZF9lcnJvcisrOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJY3AgKz0gbjsKLQkJCWlmIChjcCAhPSBlcmRhdGEpIHsKLQkJCQloX2Vycm5vID0gTk9fUkVDT1ZFUlk7Ci0JCQkJcmV0dXJuIE5VTEw7Ci0JCQl9Ci0JCQkvKiBTdG9yZSBhbGlhcy4gKi8KLQkJCSphcCsrID0gYnA7Ci0JCQluID0gc3RybGVuKGJwKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCWlmIChuID49IE1BWEhPU1ROQU1FTEVOKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQlicCArPSBuOwotCQkJLyogR2V0IGNhbm9uaWNhbCBuYW1lLiAqLwotCQkJbiA9IHN0cmxlbih0YnVmKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCWlmIChuID4gZXAgLSBicCB8fCBuID49IE1BWEhPU1ROQU1FTEVOKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQlzdHJsY3B5KGJwLCB0YnVmLCAoc2l6ZV90KShlcCAtIGJwKSk7Ci0JCQlycy0+aG9zdC5oX25hbWUgPSBicDsKLQkJCWJwICs9IG47Ci0JCQljb250aW51ZTsKLQkJfQotCQlpZiAocXR5cGUgPT0gVF9QVFIgJiYgdHlwZSA9PSBUX0NOQU1FKSB7Ci0JCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCB0YnVmLCBzaXplb2YgdGJ1Zik7Ci0JCQlpZiAobiA8IDAgfHwgIXJlc19kbm9rKHRidWYpKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQljcCArPSBuOwotCQkJaWYgKGNwICE9IGVyZGF0YSkgewotCQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KLQkJCS8qIEdldCBjYW5vbmljYWwgbmFtZS4gKi8KLQkJCW4gPSBzdHJsZW4odGJ1ZikgKyAxOwkvKiBmb3IgdGhlIFwwICovCi0JCQlpZiAobiA+IGVwIC0gYnAgfHwgbiA+PSBNQVhIT1NUTkFNRUxFTikgewotCQkJCWhhZF9lcnJvcisrOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJc3RybGNweShicCwgdGJ1ZiwgKHNpemVfdCkoZXAgLSBicCkpOwotCQkJdG5hbWUgPSBicDsKLQkJCWJwICs9IG47Ci0JCQljb250aW51ZTsKLQkJfQotCQlpZiAodHlwZSAhPSBxdHlwZSkgewotCQkJaWYgKHR5cGUgIT0gVF9LRVkgJiYgdHlwZSAhPSBUX1NJRykKLQkJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVUSCwKLQkgICAgICAgImdldGhvc3RieSouZ2V0YW5zd2VyOiBhc2tlZCBmb3IgXCIlcyAlcyAlc1wiLCBnb3QgdHlwZSBcIiVzXCIiLAotCQkJCSAgICAgICBxbmFtZSwgcF9jbGFzcyhDX0lOKSwgcF90eXBlKHF0eXBlKSwKLQkJCQkgICAgICAgcF90eXBlKHR5cGUpKTsKLQkJCWNwICs9IG47Ci0JCQljb250aW51ZTsJCS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KLQkJfQotCQlzd2l0Y2ggKHR5cGUpIHsKLQkJY2FzZSBUX1BUUjoKLQkJCWlmIChzdHJjYXNlY21wKHRuYW1lLCBicCkgIT0gMCkgewotCQkJCXN5c2xvZyhMT0dfTk9USUNFfExPR19BVVRILAotCQkJCSAgICAgICBBc2tlZEZvckdvdCwgcW5hbWUsIGJwKTsKLQkJCQljcCArPSBuOwotCQkJCWNvbnRpbnVlOwkvKiBYWFggLSBoYWRfZXJyb3IrKyA/ICovCi0JCQl9Ci0JCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgZXAgLSBicCk7Ci0JCQlpZiAoKG4gPCAwKSB8fCAhcmVzX2hub2soYnApKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJYnJlYWs7Ci0JCQl9Ci0jaWYgTVVMVElfUFRSU19BUkVfQUxJQVNFUwotCQkJY3AgKz0gbjsKLQkJCWlmIChjcCAhPSBlcmRhdGEpIHsKLQkJCQloX2Vycm5vID0gTk9fUkVDT1ZFUlk7Ci0JCQkJcmV0dXJuIE5VTEw7Ci0JCQl9Ci0JCQlpZiAoIWhhdmVhbnN3ZXIpCi0JCQkJcnMtPmhvc3QuaF9uYW1lID0gYnA7Ci0JCQllbHNlIGlmIChhcCA8ICZycy0+aG9zdF9hbGlhc2VzW01BWEFMSUFTRVMtMV0pCi0JCQkJKmFwKysgPSBicDsKLQkJCWVsc2UKLQkJCQluID0gLTE7Ci0JCQlpZiAobiAhPSAtMSkgewotCQkJCW4gPSBzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLwotCQkJCWlmIChuID49IE1BWEhPU1ROQU1FTEVOKSB7Ci0JCQkJCWhhZF9lcnJvcisrOwotCQkJCQlicmVhazsKLQkJCQl9Ci0JCQkJYnAgKz0gbjsKLQkJCX0KLQkJCWJyZWFrOwotI2Vsc2UKLQkJCXJzLT5ob3N0LmhfbmFtZSA9IGJwOwotCQkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpIHsKLQkJCQluID0gc3RybGVuKGJwKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCQlpZiAobiA+PSBNQVhIT1NUTkFNRUxFTikgewotCQkJCQloYWRfZXJyb3IrKzsKLQkJCQkJYnJlYWs7Ci0JCQkJfQotCQkJCWJwICs9IG47Ci0JCQkJbWFwX3Y0djZfaG9zdGVudCgmcnMtPmhvc3QsICZicCwgZXApOwotCQkJfQotCQkJaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JCQlyZXR1cm4gJnJzLT5ob3N0OwotI2VuZGlmCi0JCWNhc2UgVF9BOgotCQljYXNlIFRfQUFBQToKLQkJCWlmIChzdHJjYXNlY21wKHJzLT5ob3N0LmhfbmFtZSwgYnApICE9IDApIHsKLQkJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVUSCwKLQkJCQkgICAgICAgQXNrZWRGb3JHb3QsIHJzLT5ob3N0LmhfbmFtZSwgYnApOwotCQkJCWNwICs9IG47Ci0JCQkJY29udGludWU7CS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KLQkJCX0KLQkJCWlmIChuICE9IHJzLT5ob3N0LmhfbGVuZ3RoKSB7Ci0JCQkJY3AgKz0gbjsKLQkJCQljb250aW51ZTsKLQkJCX0KLQkJCWlmICh0eXBlID09IFRfQUFBQSkgewotCQkJCXN0cnVjdCBpbjZfYWRkciBpbjY7Ci0JCQkJbWVtY3B5KCZpbjYsIGNwLCBJTjZBRERSU1opOwotCQkJCWlmIChJTjZfSVNfQUREUl9WNE1BUFBFRCgmaW42KSkgewotCQkJCQljcCArPSBuOwotCQkJCQljb250aW51ZTsKLQkJCQl9Ci0JCQl9Ci0JCQlpZiAoIWhhdmVhbnN3ZXIpIHsKLQkJCQlpbnQgbm47Ci0KLQkJCQlycy0+aG9zdC5oX25hbWUgPSBicDsKLQkJCQlubiA9IHN0cmxlbihicCkgKyAxOwkvKiBmb3IgdGhlIFwwICovCi0JCQkJYnAgKz0gbm47Ci0JCQl9Ci0KLQkJCWJwICs9IHNpemVvZihhbGlnbikgLQotCQkJICAgIChzaXplX3QpKCh1X2xvbmcpYnAgJSBzaXplb2YoYWxpZ24pKTsKLQotCQkJaWYgKGJwICsgbiA+PSAmcnMtPmhvc3RidWZbc2l6ZW9mIHJzLT5ob3N0YnVmXSkgewotCQkJCWRwcmludGYoInNpemUgKCVkKSB0b28gYmlnXG4iLCByZXMsIG4pOwotCQkJCWhhZF9lcnJvcisrOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJaWYgKGhhcCA+PSAmcnMtPmhfYWRkcl9wdHJzW01BWEFERFJTLTFdKSB7Ci0JCQkJaWYgKCF0b29iaWcrKykKLQkJCQkJZHByaW50ZigiVG9vIG1hbnkgYWRkcmVzc2VzICglZClcbiIsCi0JCQkJCQlyZXMsIE1BWEFERFJTKTsKLQkJCQljcCArPSBuOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJKHZvaWQpbWVtY3B5KCpoYXArKyA9IGJwLCBjcCwgKHNpemVfdCluKTsKLQkJCWJwICs9IG47Ci0JCQljcCArPSBuOwotCQkJaWYgKGNwICE9IGVyZGF0YSkgewotCQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KLQkJCWJyZWFrOwotCQlkZWZhdWx0OgotCQkJYWJvcnQoKTsKLQkJfQotCQlpZiAoIWhhZF9lcnJvcikKLQkJCWhhdmVhbnN3ZXIrKzsKLQl9Ci0JaWYgKGhhdmVhbnN3ZXIpIHsKLQkJKmFwID0gTlVMTDsKLQkJKmhhcCA9IE5VTEw7Ci0JCS8qCi0JCSAqIE5vdGU6IHdlIHNvcnQgZXZlbiBpZiBob3N0IGNhbiB0YWtlIG9ubHkgb25lIGFkZHJlc3MKLQkJICogaW4gaXRzIHJldHVybiBzdHJ1Y3R1cmVzIC0gc2hvdWxkIGdpdmUgaXQgdGhlICJiZXN0IgotCQkgKiBhZGRyZXNzIGluIHRoYXQgY2FzZSwgbm90IHNvbWUgcmFuZG9tIG9uZQotCQkgKi8KLQkJaWYgKHJlcy0+bnNvcnQgJiYgaGF2ZWFuc3dlciA+IDEgJiYgcXR5cGUgPT0gVF9BKQotCQkJYWRkcnNvcnQocnMtPmhfYWRkcl9wdHJzLCBoYXZlYW5zd2VyLCByZXMpOwotCQlpZiAoIXJzLT5ob3N0LmhfbmFtZSkgewotCQkJbiA9IHN0cmxlbihxbmFtZSkgKyAxOwkvKiBmb3IgdGhlIFwwICovCi0JCQlpZiAobiA+IGVwIC0gYnAgfHwgbiA+PSBNQVhIT1NUTkFNRUxFTikKLQkJCQlnb3RvIG5vX3JlY292ZXJ5OwotCQkJc3RybGNweShicCwgcW5hbWUsIChzaXplX3QpKGVwIC0gYnApKTsKLQkJCXJzLT5ob3N0LmhfbmFtZSA9IGJwOwotCQkJYnAgKz0gbjsKLQkJfQotCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikKLQkJCW1hcF92NHY2X2hvc3RlbnQoJnJzLT5ob3N0LCAmYnAsIGVwKTsKLQkJaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JCXJldHVybiAmcnMtPmhvc3Q7Ci0JfQotIG5vX3JlY292ZXJ5OgotCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQlyZXR1cm4gTlVMTDsKLX0KLQotaW50Ci1nZXRob3N0YnluYW1lX3IoY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpidWYsIHNpemVfdCBidWZsZW4sCi0gICAgc3RydWN0IGhvc3RlbnQqKnJlc3VsdCwgaW50ICplcnJvcnApCi17Ci0gICAgICAgIHN0cnVjdCBob3N0ZW50ICpyZXM7Ci0KLSAgICAgICAgcmVzID0gZ2V0aG9zdGJ5bmFtZShuYW1lKTsKLSAgICAgICAgKmVycm9ycCA9IGhfZXJybm87Ci0gICAgICAgIGlmIChyZXMgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgICpyZXN1bHQgPSBOVUxMOwotICAgICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgICAgICBtZW1jcHkoaHAsIHJlcywgc2l6ZW9mICpocCk7Ci0gICAgICAgICpyZXN1bHQgPSBocDsKLSAgICAgICAgcmV0dXJuIDA7Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RieW5hbWUoY29uc3QgY2hhciAqbmFtZSkKLXsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0JcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOwotCi0JaWYgKHJlcyA9PSBOVUxMKQotCQlyZXR1cm4gTlVMTDsKLQotCWFzc2VydChuYW1lICE9IE5VTEwpOwotCi0JLyogdHJ5IElQdjYgZmlyc3QgLSBpZiB0aGF0IGZhaWxzIGRvIElQdjQgKi8KLQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikgewotCQlocCA9IGdldGhvc3RieW5hbWVfaW50ZXJuYWwobmFtZSwgQUZfSU5FVDYsIHJlcywgTkVUSURfVU5TRVQsIE1BUktfVU5TRVQpOwotCQlpZiAoaHApIHsKLQkJCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCQkJcmV0dXJuIGhwOwotCQl9Ci0JfQotCWhwID0gZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChuYW1lLCBBRl9JTkVULCByZXMsIE5FVElEX1VOU0VULCBNQVJLX1VOU0VUKTsKLQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKLQlyZXR1cm4gaHA7Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RieW5hbWUyKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZikKLXsKLQlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnluYW1lZm9ybmV0KG5hbWUsIGFmLCBORVRJRF9VTlNFVCwgTUFSS19VTlNFVCk7Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWFuZHJvaWRfZ2V0aG9zdGJ5bmFtZWZvcm5ldChjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYsIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQotewotCXN0cnVjdCBob3N0ZW50ICpocDsKLQlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0KLQlpZiAocmVzID09IE5VTEwpCi0JCXJldHVybiBOVUxMOwotCWhwID0gZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChuYW1lLCBhZiwgcmVzLCBuZXRpZCwgbWFyayk7Ci0JX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JcmV0dXJuIGhwOwotfQotCi0KLXN0YXRpYyBGSUxFKiBhbmRyb2lkX29wZW5fcHJveHkoKQotewotCWludCBzb2NrOwotCWNvbnN0IGludCBvbmUgPSAxOwotCXN0cnVjdCBzb2NrYWRkcl91biBwcm94eV9hZGRyOwotCi0Jc29jayA9IHNvY2tldChBRl9VTklYLCBTT0NLX1NUUkVBTSB8IFNPQ0tfQ0xPRVhFQywgMCk7Ci0JaWYgKHNvY2sgPCAwKSB7Ci0JCXJldHVybiBOVUxMOwotCX0KLQotCXNldHNvY2tvcHQoc29jaywgU09MX1NPQ0tFVCwgU09fUkVVU0VBRERSLCAmb25lLCBzaXplb2Yob25lKSk7Ci0JbWVtc2V0KCZwcm94eV9hZGRyLCAwLCBzaXplb2YocHJveHlfYWRkcikpOwotCXByb3h5X2FkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7Ci0Jc3RybGNweShwcm94eV9hZGRyLnN1bl9wYXRoLCAiL2Rldi9zb2NrZXQvZG5zcHJveHlkIiwgc2l6ZW9mKHByb3h5X2FkZHIuc3VuX3BhdGgpKTsKLQlpZiAoVEVNUF9GQUlMVVJFX1JFVFJZKGNvbm5lY3Qoc29jaywKLQkJCShjb25zdCBzdHJ1Y3Qgc29ja2FkZHIqKSAmcHJveHlfYWRkciwKLQkJCXNpemVvZihwcm94eV9hZGRyKSkpICE9IDApIHsKLQkJY2xvc2Uoc29jayk7Ci0JCXJldHVybiBOVUxMOwotCX0KLQotCXJldHVybiBmZG9wZW4oc29jaywgInIrIik7Ci19Ci0KLXN0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCi1hbmRyb2lkX3JlYWRfaG9zdGVudChGSUxFKiBwcm94eSkKLXsKLQl1aW50MzJfdCBzaXplOwotCWNoYXIgYnVmWzRdOwotCWlmIChmcmVhZChidWYsIDEsIHNpemVvZihidWYpLCBwcm94eSkgIT0gc2l6ZW9mKGJ1ZikpIHJldHVybiBOVUxMOwotCi0JLyogVGhpcyBpcyByZWFkaW5nIHNlcmlhbGl6ZWQgZGF0YSBmcm9tIHN5c3RlbS9uZXRkL3NlcnZlci9EbnNQcm94eUxpc3RlbmVyLmNwcAotCSAqIGFuZCBjaGFuZ2VzIGhlcmUgbmVlZCB0byBiZSBtYXRjaGVkIHRoZXJlICovCi0JaW50IHJlc3VsdF9jb2RlID0gc3RydG9sKGJ1ZiwgTlVMTCwgMTApOwotCWlmIChyZXN1bHRfY29kZSAhPSBEbnNQcm94eVF1ZXJ5UmVzdWx0KSB7Ci0JCWZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0JaWYgKGZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KSAhPSBzaXplb2Yoc2l6ZSkpIHJldHVybiBOVUxMOwotCXNpemUgPSBudG9obChzaXplKTsKLQlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCW1lbXNldCgmcnMtPmhvc3QsIDAsIHNpemVvZihycy0+aG9zdCkpOwotCWNoYXIgKnB0ciA9IHJzLT5ob3N0YnVmOwotCi0JaWYgKGZyZWFkKHB0ciwgMSwgc2l6ZSwgcHJveHkpICE9IHNpemUpIHJldHVybiBOVUxMOwotCXB0ciArPSBzaXplOwotCXJzLT5ob3N0LmhfbmFtZSA9IHJzLT5ob3N0YnVmOwotCi0JY2hhciAqKmFsaWFzZXMgPSBycy0+aG9zdF9hbGlhc2VzOwotCXJzLT5ob3N0LmhfYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0Jd2hpbGUgKDEpIHsKLQkJaWYgKGZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KSAhPSBzaXplb2Yoc2l6ZSkpIHJldHVybiBOVUxMOwotCQlzaXplID0gbnRvaGwoc2l6ZSk7Ci0KLQkJaWYgKHNpemUgPT0gMCkgewotCQkJKmFsaWFzZXMgPSBOVUxMOwotCQkJYnJlYWs7Ci0JCX0KLQkJaWYgKGZyZWFkKHB0ciwgMSwgc2l6ZSwgcHJveHkpICE9IHNpemUpIHJldHVybiBOVUxMOwotCQkqYWxpYXNlcysrID0gcHRyOwotCQlwdHIgKz0gc2l6ZTsKLQl9Ci0KLQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7Ci0JcnMtPmhvc3QuaF9hZGRydHlwZSA9IG50b2hsKHNpemUpOwotCi0JaWYgKGZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KSAhPSBzaXplb2Yoc2l6ZSkpIHJldHVybiBOVUxMOwotCXJzLT5ob3N0LmhfbGVuZ3RoID0gbnRvaGwoc2l6ZSk7Ci0KLQljaGFyICoqYWRkcnMgPSBycy0+aF9hZGRyX3B0cnM7Ci0JcnMtPmhvc3QuaF9hZGRyX2xpc3QgPSBycy0+aF9hZGRyX3B0cnM7Ci0Jd2hpbGUgKDEpIHsKLQkJaWYgKGZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KSAhPSBzaXplb2Yoc2l6ZSkpIHJldHVybiBOVUxMOwotCQlzaXplID0gbnRvaGwoc2l6ZSk7Ci0JCWlmIChzaXplID09IDApIHsKLQkJCSphZGRycyA9IE5VTEw7Ci0JCQlicmVhazsKLQkJfQotCQlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7Ci0JCSphZGRycysrID0gcHRyOwotCQlwdHIgKz0gc2l6ZTsKLQl9Ci0KLQlyZXR1cm4gJnJzLT5ob3N0OwotfQotCi0KLXN0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCi1nZXRob3N0YnluYW1lX2ludGVybmFsX3JlYWwoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmLCByZXNfc3RhdGUgcmVzKQotewotCWNvbnN0IGNoYXIgKmNwOwotCWNoYXIgKmJwLCAqZXA7Ci0JaW50IHNpemU7Ci0Jc3RydWN0IGhvc3RlbnQgKmhwOwotCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0KLQlzdGF0aWMgY29uc3QgbnNfZHRhYiBkdGFiW10gPSB7Ci0JCU5TX0ZJTEVTX0NCKF9nZXRodGJ5bmFtZSwgTlVMTCkKLQkJeyBOU1NSQ19ETlMsIF9kbnNfZ2V0aHRieW5hbWUsIE5VTEwgfSwJLyogZm9yY2UgLURIRVNJT0QgKi8KLQkJeyAwLCAwLCAwIH0KLQl9OwotCi0JYXNzZXJ0KG5hbWUgIT0gTlVMTCk7Ci0KLQlzd2l0Y2ggKGFmKSB7Ci0JY2FzZSBBRl9JTkVUOgotCQlzaXplID0gSU5BRERSU1o7Ci0JCWJyZWFrOwotCWNhc2UgQUZfSU5FVDY6Ci0JCXNpemUgPSBJTjZBRERSU1o7Ci0JCWJyZWFrOwotCWRlZmF1bHQ6Ci0JCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJZXJybm8gPSBFQUZOT1NVUFBPUlQ7Ci0JCXJldHVybiBOVUxMOwotCX0KLQotCXJzLT5ob3N0LmhfYWRkcnR5cGUgPSBhZjsKLQlycy0+aG9zdC5oX2xlbmd0aCA9IHNpemU7Ci0KLQkvKgotCSAqIGlmIHRoZXJlIGFyZW4ndCBhbnkgZG90cywgaXQgY291bGQgYmUgYSB1c2VyLWxldmVsIGFsaWFzLgotCSAqIHRoaXMgaXMgYWxzbyBkb25lIGluIHJlc19ucXVlcnkoKSBzaW5jZSB3ZSBhcmUgbm90IHRoZSBvbmx5Ci0JICogZnVuY3Rpb24gdGhhdCBsb29rcyB1cCBob3N0IG5hbWVzLgotCSAqLwotCWlmICghc3RyY2hyKG5hbWUsICcuJykgJiYgKGNwID0gX19ob3N0YWxpYXMobmFtZSkpKQotCQluYW1lID0gY3A7Ci0KLQkvKgotCSAqIGRpc2FsbG93IG5hbWVzIGNvbnNpc3Rpbmcgb25seSBvZiBkaWdpdHMvZG90cywgdW5sZXNzCi0JICogdGhleSBlbmQgaW4gYSBkb3QuCi0JICovCi0JaWYgKGlzZGlnaXQoKHVfY2hhcikgbmFtZVswXSkpCi0JCWZvciAoY3AgPSBuYW1lOzsgKytjcCkgewotCQkJaWYgKCEqY3ApIHsKLQkJCQlpZiAoKi0tY3AgPT0gJy4nKQotCQkJCQlicmVhazsKLQkJCQkvKgotCQkJCSAqIEFsbC1udW1lcmljLCBubyBkb3QgYXQgdGhlIGVuZC4KLQkJCQkgKiBGYWtlIHVwIGEgaG9zdGVudCBhcyBpZiB3ZSdkIGFjdHVhbGx5Ci0JCQkJICogZG9uZSBhIGxvb2t1cC4KLQkJCQkgKi8KLQkJCQlpZiAoaW5ldF9wdG9uKGFmLCBuYW1lLAotCQkJCSAgICAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcikgPD0gMCkgewotCQkJCQloX2Vycm5vID0gSE9TVF9OT1RfRk9VTkQ7Ci0JCQkJCXJldHVybiBOVUxMOwotCQkJCX0KLQkJCQlzdHJuY3B5KHJzLT5ob3N0YnVmLCBuYW1lLCBNQVhETkFNRSk7Ci0JCQkJcnMtPmhvc3RidWZbTUFYRE5BTUVdID0gJ1wwJzsKLQkJCQlicCA9IHJzLT5ob3N0YnVmICsgTUFYRE5BTUU7Ci0JCQkJZXAgPSBycy0+aG9zdGJ1ZiArIHNpemVvZiBycy0+aG9zdGJ1ZjsKLQkJCQlycy0+aG9zdC5oX25hbWUgPSBycy0+aG9zdGJ1ZjsKLQkJCQlycy0+aG9zdC5oX2FsaWFzZXMgPSBycy0+aG9zdF9hbGlhc2VzOwotCQkJCXJzLT5ob3N0X2FsaWFzZXNbMF0gPSBOVUxMOwotCQkJCXJzLT5oX2FkZHJfcHRyc1swXSA9IChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyOwotCQkJCXJzLT5oX2FkZHJfcHRyc1sxXSA9IE5VTEw7Ci0JCQkJcnMtPmhvc3QuaF9hZGRyX2xpc3QgPSBycy0+aF9hZGRyX3B0cnM7Ci0JCQkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpCi0JCQkJCW1hcF92NHY2X2hvc3RlbnQoJnJzLT5ob3N0LCAmYnAsIGVwKTsKLQkJCQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQkJCQlyZXR1cm4gJnJzLT5ob3N0OwotCQkJfQotCQkJaWYgKCFpc2RpZ2l0KCh1X2NoYXIpICpjcCkgJiYgKmNwICE9ICcuJykKLQkJCQlicmVhazsKLQkJfQotCWlmICgoaXN4ZGlnaXQoKHVfY2hhcikgbmFtZVswXSkgJiYgc3RyY2hyKG5hbWUsICc6JykgIT0gTlVMTCkgfHwKLQkgICAgbmFtZVswXSA9PSAnOicpCi0JCWZvciAoY3AgPSBuYW1lOzsgKytjcCkgewotCQkJaWYgKCEqY3ApIHsKLQkJCQlpZiAoKi0tY3AgPT0gJy4nKQotCQkJCQlicmVhazsKLQkJCQkvKgotCQkJCSAqIEFsbC1JUHY2LWxlZ2FsLCBubyBkb3QgYXQgdGhlIGVuZC4KLQkJCQkgKiBGYWtlIHVwIGEgaG9zdGVudCBhcyBpZiB3ZSdkIGFjdHVhbGx5Ci0JCQkJICogZG9uZSBhIGxvb2t1cC4KLQkJCQkgKi8KLQkJCQlpZiAoaW5ldF9wdG9uKGFmLCBuYW1lLAotCQkJCSAgICAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcikgPD0gMCkgewotCQkJCQloX2Vycm5vID0gSE9TVF9OT1RfRk9VTkQ7Ci0JCQkJCXJldHVybiBOVUxMOwotCQkJCX0KLQkJCQlzdHJuY3B5KHJzLT5ob3N0YnVmLCBuYW1lLCBNQVhETkFNRSk7Ci0JCQkJcnMtPmhvc3RidWZbTUFYRE5BTUVdID0gJ1wwJzsKLQkJCQlicCA9IHJzLT5ob3N0YnVmICsgTUFYRE5BTUU7Ci0JCQkJZXAgPSBycy0+aG9zdGJ1ZiArIHNpemVvZiBycy0+aG9zdGJ1ZjsKLQkJCQlycy0+aG9zdC5oX25hbWUgPSBycy0+aG9zdGJ1ZjsKLQkJCQlycy0+aG9zdC5oX2FsaWFzZXMgPSBycy0+aG9zdF9hbGlhc2VzOwotCQkJCXJzLT5ob3N0X2FsaWFzZXNbMF0gPSBOVUxMOwotCQkJCXJzLT5oX2FkZHJfcHRyc1swXSA9IChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyOwotCQkJCXJzLT5oX2FkZHJfcHRyc1sxXSA9IE5VTEw7Ci0JCQkJcnMtPmhvc3QuaF9hZGRyX2xpc3QgPSBycy0+aF9hZGRyX3B0cnM7Ci0JCQkJaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JCQkJcmV0dXJuICZycy0+aG9zdDsKLQkJCX0KLQkJCWlmICghaXN4ZGlnaXQoKHVfY2hhcikgKmNwKSAmJiAqY3AgIT0gJzonICYmICpjcCAhPSAnLicpCi0JCQkJYnJlYWs7Ci0JCX0KLQotCWhwID0gTlVMTDsKLQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JaWYgKG5zZGlzcGF0Y2goJmhwLCBkdGFiLCBOU0RCX0hPU1RTLCAiZ2V0aG9zdGJ5bmFtZSIsCi0JICAgIGRlZmF1bHRfZG5zX2ZpbGVzLCBuYW1lLCBzdHJsZW4obmFtZSksIGFmKSAhPSBOU19TVUNDRVNTKSB7Ci0JCXJldHVybiBOVUxMOwotCX0KLQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQlyZXR1cm4gaHA7Ci19Ci0KLQotLy8gdmVyeSBzaW1pbGFyIGluIHByb3h5LW5lc3MgdG8gYW5kcm9pZF9nZXRhZGRyaW5mb19wcm94eQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RieW5hbWVfaW50ZXJuYWwoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmLCByZXNfc3RhdGUgcmVzLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKLXsKLQljb25zdCBjaGFyICpjYWNoZV9tb2RlID0gZ2V0ZW52KCJBTkRST0lEX0ROU19NT0RFIik7Ci0JRklMRSogcHJveHkgPSBOVUxMOwotCXN0cnVjdCBob3N0ZW50ICpyZXN1bHQgPSBOVUxMOwotCi0JaWYgKGNhY2hlX21vZGUgIT0gTlVMTCAmJiBzdHJjbXAoY2FjaGVfbW9kZSwgImxvY2FsIikgPT0gMCkgewotCQlyZXNfc2V0bmV0aWQocmVzLCBuZXRpZCk7Ci0JCXJlc19zZXRtYXJrKHJlcywgbWFyayk7Ci0JCXJldHVybiBnZXRob3N0YnluYW1lX2ludGVybmFsX3JlYWwobmFtZSwgYWYsIHJlcyk7Ci0JfQotCi0JcHJveHkgPSBhbmRyb2lkX29wZW5fcHJveHkoKTsKLQlpZiAocHJveHkgPT0gTlVMTCkgZ290byBleGl0OwotCi0JbmV0aWQgPSBfX25ldGRDbGllbnREaXNwYXRjaC5uZXRJZEZvclJlc29sdihuZXRpZCk7Ci0KLQkvKiBUaGlzIGlzIHdyaXRpbmcgdG8gc3lzdGVtL25ldGQvc2VydmVyL0Ruc1Byb3h5TGlzdGVuZXIuY3BwIGFuZCBjaGFuZ2VzCi0JICogaGVyZSBuZWVkIHRvIGJlIG1hdGNoZWQgdGhlcmUgKi8KLQlpZiAoZnByaW50Zihwcm94eSwgImdldGhvc3RieW5hbWUgJXUgJXMgJWQiLAotCQkJbmV0aWQsCi0JCQluYW1lID09IE5VTEwgPyAiXiIgOiBuYW1lLAotCQkJYWYpIDwgMCkgewotCQlnb3RvIGV4aXQ7Ci0JfQotCi0JaWYgKGZwdXRjKDAsIHByb3h5KSA9PSBFT0YgfHwgZmZsdXNoKHByb3h5KSAhPSAwKSB7Ci0JCWdvdG8gZXhpdDsKLQl9Ci0KLQlyZXN1bHQgPSBhbmRyb2lkX3JlYWRfaG9zdGVudChwcm94eSk7Ci0KLWV4aXQ6Ci0JaWYgKHByb3h5ICE9IE5VTEwpIHsKLQkJZmNsb3NlKHByb3h5KTsKLQl9Ci0JcmV0dXJuIHJlc3VsdDsKLX0KLQotCi1zdHJ1Y3QgaG9zdGVudCAqCi1hbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoY29uc3Qgdm9pZCAqYWRkciwKLSAgICBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsIHVuc2lnbmVkIG5ldGlkKQotewotCXN0cnVjdCBob3N0ZW50ICpyZXN1bHQgPSBOVUxMOwotCUZJTEUqIHByb3h5ID0gYW5kcm9pZF9vcGVuX3Byb3h5KCk7Ci0KLQlpZiAocHJveHkgPT0gTlVMTCkgZ290byBleGl0OwotCi0JY2hhciBidWZbSU5FVDZfQUREUlNUUkxFTl07ICAvL2JpZyBlbm91Z2ggZm9yIElQdjQgYW5kIElQdjYKLQljb25zdCBjaGFyICogYWRkclN0ciA9IGluZXRfbnRvcChhZiwgYWRkciwgYnVmLCBzaXplb2YoYnVmKSk7Ci0JaWYgKGFkZHJTdHIgPT0gTlVMTCkgZ290byBleGl0OwotCi0JbmV0aWQgPSBfX25ldGRDbGllbnREaXNwYXRjaC5uZXRJZEZvclJlc29sdihuZXRpZCk7Ci0KLQlpZiAoZnByaW50Zihwcm94eSwgImdldGhvc3RieWFkZHIgJXMgJWQgJWQgJXUiLAotCQkJYWRkclN0ciwgbGVuLCBhZiwgbmV0aWQpIDwgMCkgewotCQlnb3RvIGV4aXQ7Ci0JfQotCi0JaWYgKGZwdXRjKDAsIHByb3h5KSA9PSBFT0YgfHwgZmZsdXNoKHByb3h5KSAhPSAwKSB7Ci0JCWdvdG8gZXhpdDsKLQl9Ci0KLQlyZXN1bHQgPSBhbmRyb2lkX3JlYWRfaG9zdGVudChwcm94eSk7Ci1leGl0OgotCWlmIChwcm94eSAhPSBOVUxMKSB7Ci0JCWZjbG9zZShwcm94eSk7Ci0JfQotCXJldHVybiByZXN1bHQ7Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9yZWFsKGNvbnN0IHZvaWQgKmFkZHIsCi0gICAgc29ja2xlbl90IGxlbiwgaW50IGFmLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKLXsKLQljb25zdCB1X2NoYXIgKnVhZGRyID0gKGNvbnN0IHVfY2hhciAqKWFkZHI7Ci0Jc29ja2xlbl90IHNpemU7Ci0Jc3RydWN0IGhvc3RlbnQgKmhwOwotCXN0YXRpYyBjb25zdCBuc19kdGFiIGR0YWJbXSA9IHsKLQkJTlNfRklMRVNfQ0IoX2dldGh0YnlhZGRyLCBOVUxMKQotCQl7IE5TU1JDX0ROUywgX2Ruc19nZXRodGJ5YWRkciwgTlVMTCB9LAkvKiBmb3JjZSAtREhFU0lPRCAqLwotCQl7IDAsIDAsIDAgfQotCX07Ci0KLQlhc3NlcnQoYWRkciAhPSBOVUxMKTsKLQotCWlmIChhZiA9PSBBRl9JTkVUNiAmJiBsZW4gPT0gTlNfSU42QUREUlNaICYmCi0JICAgIChJTjZfSVNfQUREUl9MSU5LTE9DQUwoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpIHx8Ci0JICAgICBJTjZfSVNfQUREUl9TSVRFTE9DQUwoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpKSkgewotCQloX2Vycm5vID0gSE9TVF9OT1RfRk9VTkQ7Ci0JCXJldHVybiBOVUxMOwotCX0KLQlpZiAoYWYgPT0gQUZfSU5FVDYgJiYgbGVuID09IE5TX0lONkFERFJTWiAmJgotCSAgICAoSU42X0lTX0FERFJfVjRNQVBQRUQoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpIHx8Ci0JICAgICBJTjZfSVNfQUREUl9WNENPTVBBVCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikpKSB7Ci0JCS8qIFVubWFwLiAqLwotCQl1YWRkciArPSBOU19JTjZBRERSU1ogLSBOU19JTkFERFJTWjsKLQkJYWRkciA9IHVhZGRyOwotCQlhZiA9IEFGX0lORVQ7Ci0JCWxlbiA9IE5TX0lOQUREUlNaOwotCX0KLQlzd2l0Y2ggKGFmKSB7Ci0JY2FzZSBBRl9JTkVUOgotCQlzaXplID0gTlNfSU5BRERSU1o7Ci0JCWJyZWFrOwotCWNhc2UgQUZfSU5FVDY6Ci0JCXNpemUgPSBOU19JTjZBRERSU1o7Ci0JCWJyZWFrOwotCWRlZmF1bHQ6Ci0JCWVycm5vID0gRUFGTk9TVVBQT1JUOwotCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCXJldHVybiBOVUxMOwotCX0KLQlpZiAoc2l6ZSAhPSBsZW4pIHsKLQkJZXJybm8gPSBFSU5WQUw7Ci0JCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWhwID0gTlVMTDsKLQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JaWYgKG5zZGlzcGF0Y2goJmhwLCBkdGFiLCBOU0RCX0hPU1RTLCAiZ2V0aG9zdGJ5YWRkciIsCi0JCWRlZmF1bHRfZG5zX2ZpbGVzLCB1YWRkciwgbGVuLCBhZiwgbmV0aWQsIG1hcmspICE9IE5TX1NVQ0NFU1MpCi0JCXJldHVybiBOVUxMOwotCWhfZXJybm8gPSBORVREQl9TVUNDRVNTOwotCXJldHVybiBocDsKLX0KLQotc3RydWN0IGhvc3RlbnQgKgotYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0KGNvbnN0IHZvaWQgKmFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZiwgdW5zaWduZWQgbmV0aWQsIHVuc2lnbmVkIG1hcmspCi17Ci0JY29uc3QgY2hhciAqY2FjaGVfbW9kZSA9IGdldGVudigiQU5EUk9JRF9ETlNfTU9ERSIpOwotCi0JaWYgKGNhY2hlX21vZGUgPT0gTlVMTCB8fCBzdHJjbXAoY2FjaGVfbW9kZSwgImxvY2FsIikgIT0gMCkgewotCQlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGFkZHIsIGxlbiwgYWYsIG5ldGlkKTsKLQl9IGVsc2UgewotCQlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3JlYWwoYWRkcixsZW4sIGFmLCBuZXRpZCwgbWFyayk7Ci0JfQotfQotCi1zdHJ1Y3QgaG9zdGVudCAqCi1nZXRob3N0YnlhZGRyKGNvbnN0IHZvaWQgKmFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZikKLXsKLQlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0KGFkZHIsIGxlbiwgYWYsIE5FVElEX1VOU0VULCBNQVJLX1VOU0VUKTsKLX0KLQotCi1zdGF0aWMgdm9pZAotX3NldGh0ZW50KGludCBmKQotewotICAgIHJlc19zdGF0aWMgIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotICAgIGlmIChycyA9PSBOVUxMKSByZXR1cm47Ci0JaWYgKCFycy0+aG9zdGYpCi0JCXJzLT5ob3N0ZiA9IGZvcGVuKF9QQVRIX0hPU1RTLCAiciIgKTsKLQllbHNlCi0JCXJld2luZChycy0+aG9zdGYpOwotCXJzLT5zdGF5b3BlbiA9IGY7Ci19Ci0KLXN0YXRpYyB2b2lkCi1fZW5kaHRlbnQodm9pZCkKLXsKLSAgICByZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLSAgICBpZiAocnMgPT0gTlVMTCkgcmV0dXJuOwotCi0JaWYgKHJzLT5ob3N0ZiAmJiAhcnMtPnN0YXlvcGVuKSB7Ci0JCSh2b2lkKSBmY2xvc2UocnMtPmhvc3RmKTsKLQkJcnMtPmhvc3RmID0gTlVMTDsKLQl9Ci19Ci0KLXN0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCi1fZ2V0aHRlbnQodm9pZCkKLXsKLQljaGFyICpwOwotCWNoYXIgKmNwLCAqKnE7Ci0JaW50IGFmLCBsZW47Ci0JcmVzX3N0YXRpYyAgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0KLQlpZiAoIXJzLT5ob3N0ZiAmJiAhKHJzLT5ob3N0ZiA9IGZvcGVuKF9QQVRIX0hPU1RTLCAiciIgKSkpIHsKLQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0gYWdhaW46Ci0JaWYgKCEocCA9IGZnZXRzKHJzLT5ob3N0YnVmLCBzaXplb2YgcnMtPmhvc3RidWYsIHJzLT5ob3N0ZikpKSB7Ci0JCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWlmICgqcCA9PSAnIycpCi0JCWdvdG8gYWdhaW47Ci0JaWYgKCEoY3AgPSBzdHJwYnJrKHAsICIjXG4iKSkpCi0JCWdvdG8gYWdhaW47Ci0JKmNwID0gJ1wwJzsKLQlpZiAoIShjcCA9IHN0cnBicmsocCwgIiBcdCIpKSkKLQkJZ290byBhZ2FpbjsKLQkqY3ArKyA9ICdcMCc7Ci0JaWYgKGluZXRfcHRvbihBRl9JTkVUNiwgcCwgKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHIpID4gMCkgewotCQlhZiA9IEFGX0lORVQ2OwotCQlsZW4gPSBJTjZBRERSU1o7Ci0JfSBlbHNlIGlmIChpbmV0X3B0b24oQUZfSU5FVCwgcCwgKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHIpID4gMCkgewotCQlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0JCWlmIChyZXMgPT0gTlVMTCkKLQkJCXJldHVybiBOVUxMOwotCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikgewotCQkJbWFwX3Y0djZfYWRkcmVzcygoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkciwKLQkJCSAgICAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcik7Ci0JCQlhZiA9IEFGX0lORVQ2OwotCQkJbGVuID0gSU42QUREUlNaOwotCQl9IGVsc2UgewotCQkJYWYgPSBBRl9JTkVUOwotCQkJbGVuID0gSU5BRERSU1o7Ci0JCX0KLQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JfSBlbHNlIHsKLQkJZ290byBhZ2FpbjsKLQl9Ci0JLyogaWYgdGhpcyBpcyBub3Qgc29tZXRoaW5nIHdlJ3JlIGxvb2tpbmcgZm9yLCBza2lwIGl0LiAqLwotCWlmIChycy0+aG9zdC5oX2FkZHJ0eXBlICE9IDAgJiYgcnMtPmhvc3QuaF9hZGRydHlwZSAhPSBhZikKLQkJZ290byBhZ2FpbjsKLQlpZiAocnMtPmhvc3QuaF9sZW5ndGggIT0gMCAmJiBycy0+aG9zdC5oX2xlbmd0aCAhPSBsZW4pCi0JCWdvdG8gYWdhaW47Ci0JcnMtPmhfYWRkcl9wdHJzWzBdID0gKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHI7Ci0JcnMtPmhfYWRkcl9wdHJzWzFdID0gTlVMTDsKLQlycy0+aG9zdC5oX2FkZHJfbGlzdCA9IHJzLT5oX2FkZHJfcHRyczsKLQlycy0+aG9zdC5oX2xlbmd0aCA9IGxlbjsKLQlycy0+aG9zdC5oX2FkZHJ0eXBlID0gYWY7Ci0Jd2hpbGUgKCpjcCA9PSAnICcgfHwgKmNwID09ICdcdCcpCi0JCWNwKys7Ci0JcnMtPmhvc3QuaF9uYW1lID0gY3A7Ci0JcSA9IHJzLT5ob3N0LmhfYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0JaWYgKChjcCA9IHN0cnBicmsoY3AsICIgXHQiKSkgIT0gTlVMTCkKLQkJKmNwKysgPSAnXDAnOwotCXdoaWxlIChjcCAmJiAqY3ApIHsKLQkJaWYgKCpjcCA9PSAnICcgfHwgKmNwID09ICdcdCcpIHsKLQkJCWNwKys7Ci0JCQljb250aW51ZTsKLQkJfQotCQlpZiAocSA8ICZycy0+aG9zdF9hbGlhc2VzW01BWEFMSUFTRVMgLSAxXSkKLQkJCSpxKysgPSBjcDsKLQkJaWYgKChjcCA9IHN0cnBicmsoY3AsICIgXHQiKSkgIT0gTlVMTCkKLQkJCSpjcCsrID0gJ1wwJzsKLQl9Ci0JKnEgPSBOVUxMOwotCWhfZXJybm8gPSBORVREQl9TVUNDRVNTOwotCXJldHVybiAmcnMtPmhvc3Q7Ci19Ci0KLS8qQVJHU1VTRUQqLwotaW50Ci1fZ2V0aHRieW5hbWUodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCi17Ci0Jc3RydWN0IGhvc3RlbnQgKmhwOwotCWNvbnN0IGNoYXIgKm5hbWU7Ci0JaW50IGFmOwotCi0JYXNzZXJ0KHJ2ICE9IE5VTEwpOwotCi0JbmFtZSA9IHZhX2FyZyhhcCwgY2hhciAqKTsKLQkvKiBOT1NUUklDVCBza2lwIGxlbiAqLyh2b2lkKXZhX2FyZyhhcCwgaW50KTsKLQlhZiA9IHZhX2FyZyhhcCwgaW50KTsKLQotCWhwID0gTlVMTDsKLSNpZiAwCi0JewotCQlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0JCWlmIChyZXMgPT0gTlVMTCkKLQkJCXJldHVybiBOU19OT1RGT1VORDsKLQkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpCi0JCQlocCA9IF9nZXRodGJ5bmFtZTIobmFtZSwgQUZfSU5FVDYpOwotCQlpZiAoaHA9PU5VTEwpCi0JCQlocCA9IF9nZXRodGJ5bmFtZTIobmFtZSwgQUZfSU5FVCk7Ci0JCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCX0KLSNlbHNlCi0JaHAgPSBfZ2V0aHRieW5hbWUyKG5hbWUsIGFmKTsKLSNlbmRpZgotCSooKHN0cnVjdCBob3N0ZW50ICoqKXJ2KSA9IGhwOwotCWlmIChocCA9PSBOVUxMKSB7Ci0JCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCX0KLQlyZXR1cm4gTlNfU1VDQ0VTUzsKLX0KLQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLV9nZXRodGJ5bmFtZTIoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmKQotewotCXN0cnVjdCBob3N0ZW50ICpwOwotCWNoYXIgKnRtcGJ1ZiwgKnB0ciwgKipjcDsKLQlpbnQgbnVtOwotCXNpemVfdCBsZW47Ci0JcmVzX3N0YXRpYyBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotCWFzc2VydChuYW1lICE9IE5VTEwpOwotCi0JX3NldGh0ZW50KHJzLT5zdGF5b3Blbik7Ci0JcHRyID0gdG1wYnVmID0gTlVMTDsKLQludW0gPSAwOwotCXdoaWxlICgocCA9IF9nZXRodGVudCgpKSAhPSBOVUxMICYmIG51bSA8IE1BWEFERFJTKSB7Ci0JCWlmIChwLT5oX2FkZHJ0eXBlICE9IGFmKQotCQkJY29udGludWU7Ci0JCWlmIChzdHJjYXNlY21wKHAtPmhfbmFtZSwgbmFtZSkgIT0gMCkgewotCQkJZm9yIChjcCA9IHAtPmhfYWxpYXNlczsgKmNwICE9IE5VTEw7IGNwKyspCi0JCQkJaWYgKHN0cmNhc2VjbXAoKmNwLCBuYW1lKSA9PSAwKQotCQkJCQlicmVhazsKLQkJCWlmICgqY3AgPT0gTlVMTCkgY29udGludWU7Ci0JCX0KLQotCQlpZiAobnVtID09IDApIHsKLQkJCXNpemVfdCBidWZzaXplOwotCQkJY2hhciAqc3JjOwotCi0JCQlidWZzaXplID0gc3RybGVuKHAtPmhfbmFtZSkgKyAyICsKLQkJCQkgIE1BWEFERFJTICogcC0+aF9sZW5ndGggKwotCQkJCSAgQUxJR05CWVRFUzsKLQkJCWZvciAoY3AgPSBwLT5oX2FsaWFzZXM7ICpjcCAhPSBOVUxMOyBjcCsrKQotCQkJCWJ1ZnNpemUgKz0gc3RybGVuKCpjcCkgKyAxOwotCi0JCQlpZiAoKHRtcGJ1ZiA9IG1hbGxvYyhidWZzaXplKSkgPT0gTlVMTCkgewotCQkJCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KLQotCQkJcHRyID0gdG1wYnVmOwotCQkJc3JjID0gcC0+aF9uYW1lOwotCQkJd2hpbGUgKCgqcHRyKysgPSAqc3JjKyspICE9ICdcMCcpOwotCQkJZm9yIChjcCA9IHAtPmhfYWxpYXNlczsgKmNwICE9IE5VTEw7IGNwKyspIHsKLQkJCQlzcmMgPSAqY3A7Ci0JCQkJd2hpbGUgKCgqcHRyKysgPSAqc3JjKyspICE9ICdcMCcpOwotCQkJfQotCQkJKnB0cisrID0gJ1wwJzsKLQotCQkJcHRyID0gKGNoYXIgKikodm9pZCAqKUFMSUdOKHB0cik7Ci0JCX0KLQotCQkodm9pZCltZW1jcHkocHRyLCBwLT5oX2FkZHJfbGlzdFswXSwgKHNpemVfdClwLT5oX2xlbmd0aCk7Ci0JCXB0ciArPSBwLT5oX2xlbmd0aDsKLQkJbnVtKys7Ci0JfQotCV9lbmRodGVudCgpOwotCWlmIChudW0gPT0gMCkgcmV0dXJuIE5VTEw7Ci0KLQlsZW4gPSBwdHIgLSB0bXBidWY7Ci0JaWYgKGxlbiA+IChzaXplb2YocnMtPmhvc3RidWYpIC0gQUxJR05CWVRFUykpIHsKLQkJZnJlZSh0bXBidWYpOwotCQllcnJubyA9IEVOT1NQQzsKLQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0JcHRyID0gbWVtY3B5KCh2b2lkICopQUxJR04ocnMtPmhvc3RidWYpLCB0bXBidWYsIGxlbik7Ci0JZnJlZSh0bXBidWYpOwotCi0JcnMtPmhvc3QuaF9uYW1lID0gcHRyOwotCXdoaWxlICgqcHRyKyspOwotCi0JY3AgPSBycy0+aG9zdF9hbGlhc2VzOwotCXdoaWxlICgqcHRyKSB7Ci0JCSpjcCsrID0gcHRyOwotCQl3aGlsZSAoKnB0cisrKTsKLQl9Ci0JcHRyKys7Ci0JKmNwID0gTlVMTDsKLQotCXB0ciA9IChjaGFyICopKHZvaWQgKilBTElHTihwdHIpOwotCWNwID0gcnMtPmhfYWRkcl9wdHJzOwotCXdoaWxlIChudW0tLSkgewotCQkqY3ArKyA9IHB0cjsKLQkJcHRyICs9IHJzLT5ob3N0LmhfbGVuZ3RoOwotCX0KLQkqY3AgPSBOVUxMOwotCi0JcmV0dXJuICZycy0+aG9zdDsKLX0KLQotLypBUkdTVVNFRCovCi1zdGF0aWMgaW50Ci1fZ2V0aHRieWFkZHIodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCi17Ci0Jc3RydWN0IGhvc3RlbnQgKnA7Ci0JY29uc3QgdW5zaWduZWQgY2hhciAqYWRkcjsKLQlpbnQgbGVuLCBhZjsKLQlyZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotCWFzc2VydChydiAhPSBOVUxMKTsKLQotCWFkZHIgPSB2YV9hcmcoYXAsIHVuc2lnbmVkIGNoYXIgKik7Ci0JbGVuID0gdmFfYXJnKGFwLCBpbnQpOwotCWFmID0gdmFfYXJnKGFwLCBpbnQpOwotCi0JcnMtPmhvc3QuaF9sZW5ndGggPSBsZW47Ci0JcnMtPmhvc3QuaF9hZGRydHlwZSA9IGFmOwotCi0JX3NldGh0ZW50KHJzLT5zdGF5b3Blbik7Ci0Jd2hpbGUgKChwID0gX2dldGh0ZW50KCkpICE9IE5VTEwpCi0JCWlmIChwLT5oX2FkZHJ0eXBlID09IGFmICYmICFtZW1jbXAocC0+aF9hZGRyLCBhZGRyLAotCQkgICAgKHNpemVfdClsZW4pKQotCQkJYnJlYWs7Ci0JX2VuZGh0ZW50KCk7Ci0JKigoc3RydWN0IGhvc3RlbnQgKiopcnYpID0gcDsKLQlpZiAocD09TlVMTCkgewotCQloX2Vycm5vID0gSE9TVF9OT1RfRk9VTkQ7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JcmV0dXJuIE5TX1NVQ0NFU1M7Ci19Ci0KLXN0YXRpYyB2b2lkCi1tYXBfdjR2Nl9hZGRyZXNzKGNvbnN0IGNoYXIgKnNyYywgY2hhciAqZHN0KQotewotCXVfY2hhciAqcCA9ICh1X2NoYXIgKilkc3Q7Ci0JY2hhciB0bXBbSU5BRERSU1pdOwotCWludCBpOwotCi0JYXNzZXJ0KHNyYyAhPSBOVUxMKTsKLQlhc3NlcnQoZHN0ICE9IE5VTEwpOwotCi0JLyogU3Rhc2ggYSB0ZW1wb3JhcnkgY29weSBzbyBvdXIgY2FsbGVyIGNhbiB1cGRhdGUgaW4gcGxhY2UuICovCi0JKHZvaWQpbWVtY3B5KHRtcCwgc3JjLCBJTkFERFJTWik7Ci0JLyogTWFyayB0aGlzIGlwdjYgYWRkciBhcyBhIG1hcHBlZCBpcHY0LiAqLwotCWZvciAoaSA9IDA7IGkgPCAxMDsgaSsrKQotCQkqcCsrID0gMHgwMDsKLQkqcCsrID0gMHhmZjsKLQkqcCsrID0gMHhmZjsKLQkvKiBSZXRyaWV2ZSB0aGUgc2F2ZWQgY29weSBhbmQgd2UncmUgZG9uZS4gKi8KLQkodm9pZCltZW1jcHkoKHZvaWQgKilwLCB0bXAsIElOQUREUlNaKTsKLX0KLQotc3RhdGljIHZvaWQKLW1hcF92NHY2X2hvc3RlbnQoc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICoqYnBwLCBjaGFyICplcCkKLXsKLQljaGFyICoqYXA7Ci0KLQlhc3NlcnQoaHAgIT0gTlVMTCk7Ci0JYXNzZXJ0KGJwcCAhPSBOVUxMKTsKLQlhc3NlcnQoZXAgIT0gTlVMTCk7Ci0KLQlpZiAoaHAtPmhfYWRkcnR5cGUgIT0gQUZfSU5FVCB8fCBocC0+aF9sZW5ndGggIT0gSU5BRERSU1opCi0JCXJldHVybjsKLQlocC0+aF9hZGRydHlwZSA9IEFGX0lORVQ2OwotCWhwLT5oX2xlbmd0aCA9IElONkFERFJTWjsKLQlmb3IgKGFwID0gaHAtPmhfYWRkcl9saXN0OyAqYXA7IGFwKyspIHsKLQkJaW50IGkgPSBzaXplb2YoYWxpZ24pIC0gKHNpemVfdCkoKHVfbG9uZykqYnBwICUgc2l6ZW9mKGFsaWduKSk7Ci0KLQkJaWYgKGVwIC0gKmJwcCA8IChpICsgSU42QUREUlNaKSkgewotCQkJLyogT3V0IG9mIG1lbW9yeS4gIFRydW5jYXRlIGFkZHJlc3MgbGlzdCBoZXJlLiAgWFhYICovCi0JCQkqYXAgPSBOVUxMOwotCQkJcmV0dXJuOwotCQl9Ci0JCSpicHAgKz0gaTsKLQkJbWFwX3Y0djZfYWRkcmVzcygqYXAsICpicHApOwotCQkqYXAgPSAqYnBwOwotCQkqYnBwICs9IElONkFERFJTWjsKLQl9Ci19Ci0KLXN0YXRpYyB2b2lkCi1hZGRyc29ydChjaGFyICoqYXAsIGludCBudW0sIHJlc19zdGF0ZSByZXMpCi17Ci0JaW50IGksIGo7Ci0JY2hhciAqKnA7Ci0Jc2hvcnQgYXZhbFtNQVhBRERSU107Ci0JaW50IG5lZWRzb3J0ID0gMDsKLQotCWFzc2VydChhcCAhPSBOVUxMKTsKLQotCXAgPSBhcDsKLQlmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKyssIHArKykgewotCSAgICBmb3IgKGogPSAwIDsgKHVuc2lnbmVkKWogPCByZXMtPm5zb3J0OyBqKyspCi0JCWlmIChyZXMtPnNvcnRfbGlzdFtqXS5hZGRyLnNfYWRkciA9PQotCQkgICAgKCgoc3RydWN0IGluX2FkZHIgKikodm9pZCAqKSgqcCkpLT5zX2FkZHIgJgotCQkgICAgcmVzLT5zb3J0X2xpc3Rbal0ubWFzaykpCi0JCQlicmVhazsKLQkgICAgYXZhbFtpXSA9IGo7Ci0JICAgIGlmIChuZWVkc29ydCA9PSAwICYmIGkgPiAwICYmIGogPCBhdmFsW2ktMV0pCi0JCW5lZWRzb3J0ID0gaTsKLQl9Ci0JaWYgKCFuZWVkc29ydCkKLQkgICAgcmV0dXJuOwotCi0Jd2hpbGUgKG5lZWRzb3J0IDwgbnVtKSB7Ci0JICAgIGZvciAoaiA9IG5lZWRzb3J0IC0gMTsgaiA+PSAwOyBqLS0pIHsKLQkJaWYgKGF2YWxbal0gPiBhdmFsW2orMV0pIHsKLQkJICAgIGNoYXIgKmhwOwotCi0JCSAgICBpID0gYXZhbFtqXTsKLQkJICAgIGF2YWxbal0gPSBhdmFsW2orMV07Ci0JCSAgICBhdmFsW2orMV0gPSBpOwotCi0JCSAgICBocCA9IGFwW2pdOwotCQkgICAgYXBbal0gPSBhcFtqKzFdOwotCQkgICAgYXBbaisxXSA9IGhwOwotCQl9IGVsc2UKLQkJICAgIGJyZWFrOwotCSAgICB9Ci0JICAgIG5lZWRzb3J0Kys7Ci0JfQotfQotCi1zdHJ1Y3QgaG9zdGVudCAqCi1nZXRob3N0ZW50KHZvaWQpCi17Ci0gICAgcmVzX3N0YXRpYyAgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0JcnMtPmhvc3QuaF9hZGRydHlwZSA9IDA7Ci0JcnMtPmhvc3QuaF9sZW5ndGggPSAwOwotCXJldHVybiBfZ2V0aHRlbnQoKTsKLX0KLQotLypBUkdTVVNFRCovCi1zdGF0aWMgaW50Ci1fZG5zX2dldGh0YnluYW1lKHZvaWQgKnJ2LCB2b2lkICpjYl9kYXRhLCB2YV9saXN0IGFwKQotewotCXF1ZXJ5YnVmICpidWY7Ci0JaW50IG4sIHR5cGU7Ci0Jc3RydWN0IGhvc3RlbnQgKmhwOwotCWNvbnN0IGNoYXIgKm5hbWU7Ci0JaW50IGFmOwotCXJlc19zdGF0ZSByZXM7Ci0KLQlhc3NlcnQocnYgIT0gTlVMTCk7Ci0KLQluYW1lID0gdmFfYXJnKGFwLCBjaGFyICopOwotCS8qIE5PU1RSSUNUIHNraXAgbGVuICovKHZvaWQpdmFfYXJnKGFwLCBpbnQpOwotCWFmID0gdmFfYXJnKGFwLCBpbnQpOwotCi0Jc3dpdGNoIChhZikgewotCWNhc2UgQUZfSU5FVDoKLQkJdHlwZSA9IFRfQTsKLQkJYnJlYWs7Ci0JY2FzZSBBRl9JTkVUNjoKLQkJdHlwZSA9IFRfQUFBQTsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJcmV0dXJuIE5TX1VOQVZBSUw7Ci0JfQotCWJ1ZiA9IG1hbGxvYyhzaXplb2YoKmJ1ZikpOwotCWlmIChidWYgPT0gTlVMTCkgewotCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0JaWYgKHJlcyA9PSBOVUxMKSB7Ci0JCWZyZWUoYnVmKTsKLQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCX0KLQluID0gcmVzX25zZWFyY2gocmVzLCBuYW1lLCBDX0lOLCB0eXBlLCBidWYtPmJ1Ziwgc2l6ZW9mKGJ1Zi0+YnVmKSk7Ci0JaWYgKG4gPCAwKSB7Ci0JCWZyZWUoYnVmKTsKLQkJZHByaW50ZigicmVzX25zZWFyY2ggZmFpbGVkICglZClcbiIsIHJlcywgbik7Ci0JCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JfQotCWhwID0gZ2V0YW5zd2VyKGJ1ZiwgbiwgbmFtZSwgdHlwZSwgcmVzKTsKLQlmcmVlKGJ1Zik7Ci0JX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JaWYgKGhwID09IE5VTEwpCi0JCXN3aXRjaCAoaF9lcnJubykgewotCQljYXNlIEhPU1RfTk9UX0ZPVU5EOgotCQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCQljYXNlIFRSWV9BR0FJTjoKLQkJCXJldHVybiBOU19UUllBR0FJTjsKLQkJZGVmYXVsdDoKLQkJCXJldHVybiBOU19VTkFWQUlMOwotCQl9Ci0JKigoc3RydWN0IGhvc3RlbnQgKiopcnYpID0gaHA7Ci0JcmV0dXJuIE5TX1NVQ0NFU1M7Ci19Ci0KLS8qQVJHU1VTRUQqLwotc3RhdGljIGludAotX2Ruc19nZXRodGJ5YWRkcih2b2lkICpydiwgdm9pZAkqY2JfZGF0YSwgdmFfbGlzdCBhcCkKLXsKLQljaGFyIHFidWZbTUFYRE5BTUUgKyAxXSwgKnFwLCAqZXA7Ci0JaW50IG47Ci0JcXVlcnlidWYgKmJ1ZjsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0JY29uc3QgdW5zaWduZWQgY2hhciAqdWFkZHI7Ci0JaW50IGxlbiwgYWYsIGFkdmFuY2U7Ci0JcmVzX3N0YXRlIHJlczsKLQl1bnNpZ25lZCBuZXRpZCwgbWFyazsKLQlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCi0JYXNzZXJ0KHJ2ICE9IE5VTEwpOwotCi0JdWFkZHIgPSB2YV9hcmcoYXAsIHVuc2lnbmVkIGNoYXIgKik7Ci0JbGVuID0gdmFfYXJnKGFwLCBpbnQpOwotCWFmID0gdmFfYXJnKGFwLCBpbnQpOwotCW5ldGlkID0gdmFfYXJnKGFwLCB1bnNpZ25lZCk7Ci0JbWFyayA9IHZhX2FyZyhhcCwgdW5zaWduZWQpOwotCi0Jc3dpdGNoIChhZikgewotCWNhc2UgQUZfSU5FVDoKLQkJKHZvaWQpc25wcmludGYocWJ1Ziwgc2l6ZW9mKHFidWYpLCAiJXUuJXUuJXUuJXUuaW4tYWRkci5hcnBhIiwKLQkJICAgICh1YWRkclszXSAmIDB4ZmYpLCAodWFkZHJbMl0gJiAweGZmKSwKLQkJICAgICh1YWRkclsxXSAmIDB4ZmYpLCAodWFkZHJbMF0gJiAweGZmKSk7Ci0JCWJyZWFrOwotCi0JY2FzZSBBRl9JTkVUNjoKLQkJcXAgPSBxYnVmOwotCQllcCA9IHFidWYgKyBzaXplb2YocWJ1ZikgLSAxOwotCQlmb3IgKG4gPSBJTjZBRERSU1ogLSAxOyBuID49IDA7IG4tLSkgewotCQkJYWR2YW5jZSA9IHNucHJpbnRmKHFwLCAoc2l6ZV90KShlcCAtIHFwKSwgIiV4LiV4LiIsCi0JCQkgICAgdWFkZHJbbl0gJiAweGYsCi0JCQkgICAgKCh1bnNpZ25lZCBpbnQpdWFkZHJbbl0gPj4gNCkgJiAweGYpOwotCQkJaWYgKGFkdmFuY2UgPiAwICYmIHFwICsgYWR2YW5jZSA8IGVwKQotCQkJCXFwICs9IGFkdmFuY2U7Ci0JCQllbHNlIHsKLQkJCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCQkJfQotCQl9Ci0JCWlmIChzdHJsY2F0KHFidWYsICJpcDYuYXJwYSIsIHNpemVvZihxYnVmKSkgPj0gc2l6ZW9mKHFidWYpKSB7Ci0JCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JCX0KLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJYWJvcnQoKTsKLQl9Ci0KLQlidWYgPSBtYWxsb2Moc2l6ZW9mKCpidWYpKTsKLQlpZiAoYnVmID09IE5VTEwpIHsKLQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JfQotCXJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOwotCWlmIChyZXMgPT0gTlVMTCkgewotCQlmcmVlKGJ1Zik7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JcmVzX3NldG5ldGlkKHJlcywgbmV0aWQpOwotCXJlc19zZXRtYXJrKHJlcywgbWFyayk7Ci0JbiA9IHJlc19ucXVlcnkocmVzLCBxYnVmLCBDX0lOLCBUX1BUUiwgYnVmLT5idWYsIHNpemVvZihidWYtPmJ1ZikpOwotCWlmIChuIDwgMCkgewotCQlmcmVlKGJ1Zik7Ci0JCWRwcmludGYoInJlc19ucXVlcnkgZmFpbGVkICglZClcbiIsIHJlcywgbik7Ci0JCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JfQotCWhwID0gZ2V0YW5zd2VyKGJ1ZiwgbiwgcWJ1ZiwgVF9QVFIsIHJlcyk7Ci0JZnJlZShidWYpOwotCWlmIChocCA9PSBOVUxMKSB7Ci0JCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCQlzd2l0Y2ggKGhfZXJybm8pIHsKLQkJY2FzZSBIT1NUX05PVF9GT1VORDoKLQkJCXJldHVybiBOU19OT1RGT1VORDsKLQkJY2FzZSBUUllfQUdBSU46Ci0JCQlyZXR1cm4gTlNfVFJZQUdBSU47Ci0JCWRlZmF1bHQ6Ci0JCQlyZXR1cm4gTlNfVU5BVkFJTDsKLQkJfQotCX0KLQlocC0+aF9hZGRydHlwZSA9IGFmOwotCWhwLT5oX2xlbmd0aCA9IGxlbjsKLQkodm9pZCltZW1jcHkocnMtPmhvc3RfYWRkciwgdWFkZHIsIChzaXplX3QpbGVuKTsKLQlycy0+aF9hZGRyX3B0cnNbMF0gPSAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcjsKLQlycy0+aF9hZGRyX3B0cnNbMV0gPSBOVUxMOwotCWlmIChhZiA9PSBBRl9JTkVUICYmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KSkgewotCQltYXBfdjR2Nl9hZGRyZXNzKChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyLAotCQkgICAgKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHIpOwotCQlocC0+aF9hZGRydHlwZSA9IEFGX0lORVQ2OwotCQlocC0+aF9sZW5ndGggPSBJTjZBRERSU1o7Ci0JfQotCi0JX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JKigoc3RydWN0IGhvc3RlbnQgKiopcnYpID0gaHA7Ci0JaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JcmV0dXJuIE5TX1NVQ0NFU1M7Ci19CmRpZmYgLS1naXQgYS9saWJjL2Rucy9pbmNsdWRlL2hvc3RlbnQuaCBiL2xpYmMvZG5zL2luY2x1ZGUvaG9zdGVudC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhiOWE2MzcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Rucy9pbmNsdWRlL2hvc3RlbnQuaApAQCAtMCwwICsxLDkzIEBACisvKgkkTmV0QlNEOiBob3N0ZW50LmgsdiAxLjIgMjAxMy8wOC8yNyAwOTo1NjoxMiBjaHJpc3RvcyBFeHAgJAkqLworCisvKi0KKyAqIENvcHlyaWdodCAoYykgMjAxMyBUaGUgTmV0QlNEIEZvdW5kYXRpb24sIEluYy4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBUaGUgTmV0QlNEIEZvdW5kYXRpb24KKyAqIGJ5IENocmlzdG9zIFpvdWxhcy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBORVRCU0QgRk9VTkRBVElPTiwgSU5DLiBBTkQgQ09OVFJJQlVUT1JTCisgKiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQKKyAqIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEZPVU5EQVRJT04gT1IgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworI2lmbmRlZiBfRE5TX05FVF9IT1NURU5UX0gKKyNkZWZpbmUgX0ROU19ORVRfSE9TVEVOVF9ICisKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPG5ldGRiLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKy8qCisgKiBUaGVzZSBhcmUgbm90IGJlaW5nIGFkdmVydGlzZWQgYmVjYXVzZSB0aGUgaW50ZXJmYWNlcyBhcmUgbm9uLXN0YW5kYXJkLgorICogVGhlcmUgYXJlIHZlcnNpb25zIGJ5IGxpbnV4LCBhaXgsIHFueCwgc3VuLCBldGMuIE91ciB2ZXJzaW9ucyBhcmUgdXNlZAorICogaW50ZXJuYWxseSB0byBwcm92aWRlIHRocmVhZCBzYWZldHk7IHRoZXkgbW9zdGx5IHJlc2VtYmxlIHFueC4KKyAqLwordm9pZCBzZXRob3N0ZW50X3IoRklMRSAqKik7CitzdHJ1Y3QgaG9zdGVudAkqbmV0YnNkX2dldGhvc3RlbnRfcihGSUxFICosIHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiwgc2l6ZV90LCBpbnQgKik7Cit2b2lkIGVuZGhvc3RlbnRfcihGSUxFICoqKTsKKworLyoKKyAqIFRoZSBmb2xsb3dpbmcgYXJlIGludGVybmFsIEFQSSdzIGFuZCBhcmUgdXNlZCBvbmx5IGZvciB0ZXN0aW5nLgorICovCitzdHJ1Y3QgZ2V0bmFtYWRkciB7CisJc3RydWN0IGhvc3RlbnQgKmhwOworCWNoYXIgKmJ1ZjsKKwlzaXplX3QgYnVmbGVuOworCWludCAqaGU7Cit9OworCisvKiAvZXRjL2hvc3RzIGxvb2t1cCAqLworaW50IF9oZl9nZXRodGJ5YWRkcih2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7CitpbnQgX2hmX2dldGh0YnluYW1lKHZvaWQgKiwgdm9pZCAqLCB2YV9saXN0KTsKKworI2lmZGVmIFlQCisvKiBOSVMgbG9va3VwICovCitpbnQgX3lwX2dldGh0YnlhZGRyKHZvaWQgKiwgdm9pZCAqLCB2YV9saXN0KTsKK2ludCBfeXBfZ2V0aHRieW5hbWUodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOworI2VuZGlmCisKKyNkZWZpbmUgSEVOVF9BUlJBWShkc3QsIGFudW0sIHB0ciwgbGVuKSBcCisJZG8geyBcCisJCXNpemVfdCBfbGVuID0gKGFudW0gKyAxKSAqIHNpemVvZigqZHN0KTsgXAorCQlpZiAoX2xlbiA+IGxlbikgXAorCQkJZ290byBub3NwYzsgXAorCQlkc3QgPSAodm9pZCAqKXB0cjsgXAorCQlwdHIgKz0gX2xlbjsgXAorCQlsZW4gLT0gX2xlbjsgXAorCX0gd2hpbGUgKC8qQ09OU1RDT05EKi8wKQorCisjZGVmaW5lIEhFTlRfQ09QWShkc3QsIHNyYywgc2xlbiwgcHRyLCBsZW4pIFwKKwlkbyB7IFwKKwkJaWYgKChzaXplX3Qpc2xlbiA+IGxlbikgXAorCQkJZ290byBub3NwYzsgXAorCQltZW1jcHkocHRyLCBzcmMsIChzaXplX3Qpc2xlbik7IFwKKwkJZHN0ID0gcHRyOyBcCisJCXB0ciArPSBzbGVuOyBcCisJCWxlbiAtPSBzbGVuOyBcCisJfSB3aGlsZSAoLyogQ09OU1RDT05EICovMCkKKworI2RlZmluZSBIRU5UX1NDT1BZKGRzdCwgc3JjLCBwdHIsIGxlbikgXAorCWRvIHsgXAorCQlzaXplX3QgX2xlbiA9IHN0cmxlbihzcmMpICsgMTsgXAorCQlIRU5UX0NPUFkoZHN0LCBzcmMsIF9sZW4sIHB0ciwgbGVuKTsgXAorCX0gd2hpbGUgKC8qIENPTlNUQ09ORCAqLzApCisKKyNlbmRpZiAvKiBfRE5TX05FVF9IT1NURU5UX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X25ldGlkLmggYi9saWJjL2Rucy9pbmNsdWRlL3Jlc29sdl9uZXRpZC5oCmluZGV4IGU1NTIxYjguLjFkMGY4NjkgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X25ldGlkLmgKKysrIGIvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfbmV0aWQuaApAQCAtMzQsNiArMzQsNyBAQAogICovCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CiAKIC8qCiAgKiBQYXNzaW5nIE5FVElEX1VOU0VUIGFzIHRoZSBuZXRJZCBjYXVzZXMgc3lzdGVtL25ldGQvc2VydmVyL0Ruc1Byb3h5TGlzdGVuZXIuY3BwIHRvCkBAIC02OCw5ICs2OSw5IEBACiBleHRlcm4gdm9pZCBfcmVzb2x2X2RlbGV0ZV9jYWNoZV9mb3JfbmV0KHVuc2lnbmVkIG5ldGlkKSBfX3VzZWRfaW5fbmV0ZDsKIAogLyogSW50ZXJuYWwgdXNlIG9ubHkuICovCi1zdHJ1Y3QgaG9zdGVudCAqYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGNvbnN0IHZvaWQgKiwgc29ja2xlbl90LCBpbnQgLCB1bnNpZ25lZCk7Ci1pbnQgYW5kcm9pZF9nZXRuYW1laW5mb2Zvcm5ldChjb25zdCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90LCBjaGFyICosIHNpemVfdCwgY2hhciAqLCBzaXplX3QsCi0JCSBpbnQsIHVuc2lnbmVkLCB1bnNpZ25lZCk7CitzdHJ1Y3QgaG9zdGVudCAqYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGNvbnN0IHZvaWQgKiwgc29ja2xlbl90LCBpbnQgLCB1bnNpZ25lZCwgdW5zaWduZWQpIF9fTElCQ19ISURERU5fXzsKK2ludCBhbmRyb2lkX2dldG5hbWVpbmZvZm9ybmV0KGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QsIGNoYXIgKiwgc2l6ZV90LCBjaGFyICosIHNpemVfdCwgaW50LCB1bnNpZ25lZCwgdW5zaWduZWQpIF9fTElCQ19ISURERU5fXzsKK0ZJTEUqIGFuZHJvaWRfb3Blbl9wcm94eSh2b2lkKSBfX0xJQkNfSElEREVOX187CiAKIC8qIGRlbGV0ZSB0aGUgY2FjaGUgYXNzb2NpYXRlZCB3aXRoIGEgY2VydGFpbiBuZXR3b3JrICovCiBleHRlcm4gdm9pZCBfcmVzb2x2X2RlbGV0ZV9jYWNoZV9mb3JfbmV0KHVuc2lnbmVkIG5ldGlkKTsKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X3ByaXZhdGUuaCBiL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X3ByaXZhdGUuaAppbmRleCBhOTFhNGI4Li4wZGFiM2Q4IDEwMDY0NAotLS0gYS9saWJjL2Rucy9pbmNsdWRlL3Jlc29sdl9wcml2YXRlLmgKKysrIGIvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfcHJpdmF0ZS5oCkBAIC02Myw2ICs2MywxMyBAQAogLyogRGVzcGl0ZSB0aGlzIGZpbGUncyBuYW1lLCBpdCdzIHBhcnQgb2YgbGlicmVzb2x2LiBPbiBBbmRyb2lkLCB0aGF0IG1lYW5zIGl0J3MgcGFydCBvZiBsaWJjIDotKCAqLwogI3ByYWdtYSBHQ0MgdmlzaWJpbGl0eSBwdXNoKGRlZmF1bHQpCiAKKy8vIExpbnV4IGRlZmluZXMgTUFYSE9TVE5BTUVMRU4gYXMgNjQsIHdoaWxlIHRoZSBkb21haW4gbmFtZSBsaW1pdCBpbgorLy8gUkZDIDEwMzQgYW5kIFJGQyAxMDM1IGlzIDI1NSBvY3RldHMuCisjaWZkZWYgTUFYSE9TVE5BTUVMRU4KKyN1bmRlZiBNQVhIT1NUTkFNRUxFTgorI2VuZGlmCisjZGVmaW5lIE1BWEhPU1ROQU1FTEVOIDI1NgorCiAvKgogICogUmV2aXNpb24gaW5mb3JtYXRpb24uICBUaGlzIGlzIHRoZSByZWxlYXNlIGRhdGUgaW4gWVlZWU1NREQgZm9ybWF0LgogICogSXQgY2FuIGNoYW5nZSBldmVyeSBkYXkgc28gdGhlIHJpZ2h0IHRoaW5nIHRvIGRvIHdpdGggaXQgaXMgdXNlIGl0CkBAIC00MjYsNyArNDMzLDcgQEAKIGludAkJYjY0X3B0b24oY2hhciBjb25zdCAqLCB1X2NoYXIgKiwgc2l6ZV90KTsKICNlbmRpZgogaW50CQlsb2NfYXRvbihjb25zdCBjaGFyICosIHVfY2hhciAqKTsKLWNvbnN0IGNoYXIgKglsb2NfbnRvYShjb25zdCB1X2NoYXIgKiwgY2hhciAqKTsKK2NvbnN0IGNoYXIgKglsb2NfbnRvYShjb25zdCB1X2NoYXIgKiwgY2hhciAqLCBzaXplX3QpOwogaW50CQlkbl9za2lwbmFtZShjb25zdCB1X2NoYXIgKiwgY29uc3QgdV9jaGFyICopOwogdm9pZAkJcHV0bG9uZyh1aW50MzJfdCwgdV9jaGFyICopOwogdm9pZAkJcHV0c2hvcnQodWludDE2X3QsIHVfY2hhciAqKTsKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25hbWVzZXIvbnNfbmFtZS5jIGIvbGliYy9kbnMvbmFtZXNlci9uc19uYW1lLmMKaW5kZXggZTM3NTlhYi4uM2EyMDJjMSAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmFtZXNlci9uc19uYW1lLmMKKysrIGIvbGliYy9kbnMvbmFtZXNlci9uc19uYW1lLmMKQEAgLTQzLDEyICs0Myw2IEBACiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8bGltaXRzLmg+CiAKLSNpZmRlZiBTUFJJTlRGX0NIQVIKLSMgZGVmaW5lIFNQUklOVEYoeCkgKChpbnQpc3RybGVuKHNwcmludGYvKioveCkpCi0jZWxzZQotIyBkZWZpbmUgU1BSSU5URih4KSAoc3ByaW50ZiB4KQotI2VuZGlmCi0KICNkZWZpbmUgTlNfVFlQRV9FTFQJCQkweDQwIC8qIEVETlMwIGV4dGVuZGVkIGxhYmVsIHR5cGUgKi8KICNkZWZpbmUgRE5TX0xBQkVMVFlQRV9CSVRTVFJJTkcJCTB4NDEKIApAQCAtMTAxMiwzMSArMTAwNiwzMSBAQAogCQlyZXR1cm4oLTEpOwogCiAJY3ArKzsKLQlpID0gU1BSSU5URigoZG4sICJcXFt4IikpOworCWkgPSBzbnByaW50ZihkbiwgZW9tIC0gZG4sICJcXFt4Iik7CiAJaWYgKGkgPCAwKQogCQlyZXR1cm4gKC0xKTsKIAlkbiArPSBpOwogCWZvciAoYiA9IGJsZW47IGIgPiA3OyBiIC09IDgsIGNwKyspIHsKLQkJaSA9IFNQUklOVEYoKGRuLCAiJTAyeCIsICpjcCAmIDB4ZmYpKTsKKwkJaSA9IHNucHJpbnRmKGRuLCBlb20gLSBkbiwgIiUwMngiLCAqY3AgJiAweGZmKTsKIAkJaWYgKGkgPCAwKQogCQkJcmV0dXJuICgtMSk7CiAJCWRuICs9IGk7CiAJfQogCWlmIChiID4gNCkgewogCQl0YyA9ICpjcCsrOwotCQlpID0gU1BSSU5URigoZG4sICIlMDJ4IiwgdGMgJiAoMHhmZiA8PCAoOCAtIGIpKSkpOworCQlpID0gc25wcmludGYoZG4sIGVvbSAtIGRuLCAiJTAyeCIsIHRjICYgKDB4ZmYgPDwgKDggLSBiKSkpOwogCQlpZiAoaSA8IDApCiAJCQlyZXR1cm4gKC0xKTsKIAkJZG4gKz0gaTsKIAl9IGVsc2UgaWYgKGIgPiAwKSB7CiAJCXRjID0gKmNwKys7Ci0JCWkgPSBTUFJJTlRGKChkbiwgIiUxeCIsCi0JCQkgICAgICAgKCgodV9pbnQzMl90KXRjID4+IDQpICYgMHgwZikgJiAoMHgwZiA8PCAoNCAtIGIpKSkpOworCQlpID0gc25wcmludGYoZG4sIGVvbSAtIGRuLCAiJTF4IiwKKwkJCSAgICAgICAoKCh1X2ludDMyX3QpdGMgPj4gNCkgJiAweDBmKSAmICgweDBmIDw8ICg0IC0gYikpKTsKIAkJaWYgKGkgPCAwKQogCQkJcmV0dXJuICgtMSk7CiAJCWRuICs9IGk7CiAJfQotCWkgPSBTUFJJTlRGKChkbiwgIi8lZF0iLCBibGVuKSk7CisJaSA9IHNucHJpbnRmKGRuLCBlb20gLSBkbiwgIi8lZF0iLCBibGVuKTsKIAlpZiAoaSA8IDApCiAJCXJldHVybiAoLTEpOwogCWRuICs9IGk7CmRpZmYgLS1naXQgYS9saWJjL2Rucy9uYW1lc2VyL25zX3ByaW50LmMgYi9saWJjL2Rucy9uYW1lc2VyL25zX3ByaW50LmMKaW5kZXggMGE2YTFkNi4uMzJjODcxNSAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmFtZXNlci9uc19wcmludC5jCisrKyBiL2xpYmMvZG5zL25hbWVzZXIvbnNfcHJpbnQuYwpAQCAtNDgsMTIgKzQ4LDYgQEAKICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxjdHlwZS5oPgogCi0jaWZkZWYgU1BSSU5URl9DSEFSCi0jIGRlZmluZSBTUFJJTlRGKHgpICgoaW50KXN0cmxlbihzcHJpbnRmLyoqL3gpKQotI2Vsc2UKLSMgZGVmaW5lIFNQUklOVEYoeCkgKHNwcmludGYgeCkKLSNlbmRpZgotCiAjaWZuZGVmIE1JTgogI2RlZmluZQlNSU4oeCx5KQkoKHgpPCh5KT8oeCk6KHkpKQogI2VuZGlmCkBAIC0xNTUsNyArMTQ5LDcgQEAKIAkgKi8KIAlUKHggPSBuc19mb3JtYXRfdHRsKHR0bCwgYnVmLCBidWZsZW4pKTsKIAlhZGRsZW4oKHNpemVfdCl4LCAmYnVmLCAmYnVmbGVuKTsKLQlsZW4gPSBTUFJJTlRGKCh0bXAsICIgJXMgJXMiLCBwX2NsYXNzKGNsYXNzKSwgcF90eXBlKHR5cGUpKSk7CisJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiAlcyAlcyIsIHBfY2xhc3MoY2xhc3MpLCBwX3R5cGUodHlwZSkpOwogCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAlUKHNwYWNlZCA9IGFkZHRhYigoc2l6ZV90KSh4ICsgbGVuKSwgKHNpemVfdCkxNiwgc3BhY2VkLCAmYnVmLCAmYnVmbGVuKSk7CiAKQEAgLTIxOCw3ICsyMTIsNyBAQAogCQkvKiBTZXJpYWwgbnVtYmVyLiAqLwogCQl0ID0gbnNfZ2V0MzIocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMzJTWjsKIAkJVChhZGRzdHIoIlx0XHRcdFx0XHQiLCAoc2l6ZV90KTUsICZidWYsICZidWZsZW4pKTsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJWx1IiwgdCkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJWx1IiwgdCk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJVChzcGFjZWQgPSBhZGR0YWIoKHNpemVfdClsZW4sIChzaXplX3QpMTYsIHNwYWNlZCwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlUKGFkZHN0cigiOyBzZXJpYWxcbiIsIChzaXplX3QpOSwgJmJ1ZiwgJmJ1ZmxlbikpOwpAQCAtMjc1LDcgKzI2OSw3IEBACiAJCS8qIFByaW9yaXR5LiAqLwogCQl0ID0gbnNfZ2V0MTYocmRhdGEpOwogCQlyZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCB0KSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCB0KTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIFRhcmdldC4gKi8KQEAgLTI5Myw3ICsyODcsNyBAQAogCQkvKiBQcmlvcml0eS4gKi8KIAkJdCA9IG5zX2dldDE2KHJkYXRhKTsKIAkJcmRhdGEgKz0gTlNfSU5UMTZTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgdCkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgdCk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBOYW1lMS4gKi8KQEAgLTM0NCw3ICszMzgsNyBAQAogCQljaGFyIHRbMjU1XTsKIAogCQkvKiBYWFggcHJvdG9jb2wgZm9ybWF0IGNoZWNraW5nPyAqLwotCQkodm9pZCkgbG9jX250b2EocmRhdGEsIHQpOworCQkodm9pZCkgbG9jX250b2EocmRhdGEsIHQsIHNpemVvZih0KSk7CiAJCVQoYWRkc3RyKHQsIHN0cmxlbih0KSwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlicmVhazsKIAkgICAgfQpAQCAtMzU5LDcgKzM1Myw3IEBACiAJCS8qIE9yZGVyLCBQcmVjZWRlbmNlLiAqLwogCQlvcmRlciA9IG5zX2dldDE2KHJkYXRhKTsJcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJcHJlZmVyZW5jZSA9IG5zX2dldDE2KHJkYXRhKTsJcmRhdGEgKz0gTlNfSU5UMTZTWjsKLQkJbGVuID0gU1BSSU5URigodCwgIiV1ICV1ICIsIG9yZGVyLCBwcmVmZXJlbmNlKSk7CisJCWxlbiA9IHNucHJpbnRmKHQsIHNpemVvZih0KSwgIiV1ICV1ICIsIG9yZGVyLCBwcmVmZXJlbmNlKTsKIAkJVChhZGRzdHIodCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBGbGFncy4gKi8KQEAgLTQwMSw3ICszOTUsNyBAQAogCQlwcmlvcml0eSA9IG5zX2dldDE2KHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDE2U1o7CiAJCXdlaWdodCAgID0gbnNfZ2V0MTYocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJcG9ydCAgICAgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0LCAiJXUgJXUgJXUgIiwgcHJpb3JpdHksIHdlaWdodCwgcG9ydCkpOworCQlsZW4gPSBzbnByaW50Zih0LCBzaXplb2YodCksICIldSAldSAldSAiLCBwcmlvcml0eSwgd2VpZ2h0LCBwb3J0KTsKIAkJVChhZGRzdHIodCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBTZXJ2ZXIuICovCkBAIC00MzIsNyArNDI2LDcgQEAKIAkJcmRhdGEgKz0gTlNfSU5BRERSU1o7CiAKIAkJLyogUHJvdG9jb2wuICovCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiAldSAoICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiICV1ICggIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSArPSBOU19JTlQ4U1o7CiAKQEAgLTQ0OSw3ICs0NDMsNyBAQAogCQkJCQkJbGNudCA9IDEwOwogCQkJCQkJc3BhY2VkID0gMDsKIAkJCQkJfQotCQkJCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlZCAiLCBuKSk7CisJCQkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlZCAiLCBuKTsKIAkJCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJCQlsY250LS07CiAJCQkJfQpAQCAtNDgwLDggKzQ3NCw4IEBACiAJCWtleWZsYWdzID0gbnNfZ2V0MTYocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJcHJvdG9jb2wgPSAqcmRhdGErKzsKIAkJYWxnb3JpdGhtID0gKnJkYXRhKys7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIjB4JTA0eCAldSAldSIsCi0JCQkgICAgICAga2V5ZmxhZ3MsIHByb3RvY29sLCBhbGdvcml0aG0pKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIjB4JTA0eCAldSAldSIsCisJCQkgICAgICAga2V5ZmxhZ3MsIHByb3RvY29sLCBhbGdvcml0aG0pOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogUHVibGljIGtleSBkYXRhLiAqLwpAQCAtNTAyLDcgKzQ5Niw3IEBACiAJCX0KIAkJaWYgKGxlbiA+IDE1KQogCQkJVChhZGRzdHIoIiApIiwgKHNpemVfdCkyLCAmYnVmLCAmYnVmbGVuKSk7Ci0JCW4gPSBTUFJJTlRGKCh0bXAsICIgOyBrZXlfdGFnPSAldSIsIGtleV9pZCkpOworCQluID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiA7IGtleV90YWc9ICV1Iiwga2V5X2lkKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KW4sICZidWYsICZidWZsZW4pKTsKIAogCQlicmVhazsKQEAgLTUyNCwyNSArNTE4LDI1IEBACiAJCWFsZ29yaXRobSA9ICpyZGF0YSsrOwogCQlsYWJlbHMgPSAqcmRhdGErKzsKIAkJdCA9IG5zX2dldDMyKHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDMyU1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVzICVkICVkICVsdSAiLAotCQkJICAgICAgIHBfdHlwZSgoaW50KXR5cCksIGFsZ29yaXRobSwgbGFiZWxzLCB0KSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlcyAlZCAlZCAlbHUgIiwKKwkJCSAgICAgICBwX3R5cGUoKGludCl0eXApLCBhbGdvcml0aG0sIGxhYmVscywgdCk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJaWYgKGxhYmVscyA+ICh1X2ludClkbl9jb3VudF9sYWJlbHMobmFtZSkpCiAJCQlnb3RvIGZvcm1lcnI7CiAKIAkJLyogU2lnbmF0dXJlIGV4cGlyeS4gKi8KIAkJdCA9IG5zX2dldDMyKHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDMyU1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVzICIsIHBfc2Vjc3RvZGF0ZSh0KSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIFRpbWUgc2lnbmVkLiAqLwogCQl0ID0gbnNfZ2V0MzIocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMzJTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlcyAiLCBwX3NlY3N0b2RhdGUodCkpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogU2lnbmF0dXJlIEZvb3RwcmludC4gKi8KIAkJZm9vdHByaW50ID0gbnNfZ2V0MTYocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMTZTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgZm9vdHByaW50KSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCBmb290cHJpbnQpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogU2lnbmVyJ3MgbmFtZS4gKi8KQEAgLTU3OSw3ICs1NzMsNyBAQAogCQluID0gZWRhdGEgLSByZGF0YTsKIAkJZm9yIChjID0gMDsgYyA8IG4qODsgYysrKQogCQkJaWYgKE5TX05YVF9CSVRfSVNTRVQoYywgcmRhdGEpKSB7Ci0JCQkJbGVuID0gU1BSSU5URigodG1wLCAiICVzIiwgcF90eXBlKChpbnQpYykpKTsKKwkJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiICVzIiwgcF90eXBlKChpbnQpYykpOwogCQkJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJCX0KIAkJYnJlYWs7CkBAIC01OTYsNyArNTkwLDcgQEAKIAkJa2V5X3RhZyA9IG5zX2dldDE2KHJkYXRhKTsgcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJYWxnID0gKHVfaW50KSAqcmRhdGErKzsKIAotCQlsZW4gPSBTUFJJTlRGKCh0bXAxLCAiJWQgJWQgJWQgIiwgY190eXBlLCBrZXlfdGFnLCBhbGcpKTsKKwkJbGVuID0gc25wcmludGYodG1wMSwgc2l6ZW9mKHRtcDEpLCAiJWQgJWQgJWQgIiwgY190eXBlLCBrZXlfdGFnLCBhbGcpOwogCQlUKGFkZHN0cih0bXAxLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlzaXogPSAoZWRhdGEtcmRhdGEpKjQvMyArIDQ7IC8qICIrNCIgYWNjb3VudHMgZm9yIHRyYWlsaW5nIFwwICovCiAJCWlmIChzaXogPiBzaXplb2YoYmFzZTY0X2NlcnQpICogMy80KSB7CkBAIC02NDAsMTIgKzYzNCwxMiBAQAogCiAJCS8qIEluY2VwdGlvbi4gKi8KIAkJdCA9IG5zX2dldDMyKHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDMyU1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVzICIsIHBfc2Vjc3RvZGF0ZSh0KSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIEV4cGVyYXRpb24uICovCiAJCXQgPSBuc19nZXQzMihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQzMlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlcyAiLCBwX3NlY3N0b2RhdGUodCkpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiVzICIsIHBfc2Vjc3RvZGF0ZSh0KSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBNb2RlICwgRXJyb3IsIEtleSBTaXplLiAqLwpAQCAtNjUzLDcgKzY0Nyw3IEBACiAJCW1vZGUgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwogCQllcnIgID0gbnNfZ2V0MTYocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJa2V5c2l6ZSAgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAldSAldSAiLCBtb2RlLCBlcnIsIGtleXNpemUpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICV1ICV1ICIsIG1vZGUsIGVyciwga2V5c2l6ZSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBYWFggbmVlZCB0byBkdW1wIGtleSwgcHJpbnQgb3RoZXJkYXRhIGxlbmd0aCAmIG90aGVyIGRhdGEgKi8KQEAgLTY3MCw3ICs2NjQsNyBAQAogCQluID0gbnNfZ2V0MTYocmRhdGEpOyByZGF0YSArPSBJTlQxNlNaOwogCQlyZGF0YSArPSBuOyAvKiBzaWcgKi8KIAkJbiA9IG5zX2dldDE2KHJkYXRhKTsgcmRhdGEgKz0gSU5UMTZTWjsgLyogb3JpZ2luYWwgaWQgKi8KLQkJc3ByaW50ZihidWYsICIlZCIsIG5zX2dldDE2KHJkYXRhKSk7CisJCXNucHJpbnRmKGJ1ZiwgYnVmbGVuLCAiJWQiLCBuc19nZXQxNihyZGF0YSkpOwogCQlyZGF0YSArPSBJTlQxNlNaOwogCQlhZGRsZW4oc3RybGVuKGJ1ZiksICZidWYsICZidWZsZW4pOwogCQlicmVhazsKQEAgLTY4Miw3ICs2NzYsNyBAQAogCiAJCS8qIHByZWZpeCBsZW5ndGggKi8KIAkJaWYgKHJkbGVuID09IDBVKSBnb3RvIGZvcm1lcnI7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVkICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJWQgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlwYml0ID0gKnJkYXRhOwogCQlpZiAocGJpdCA+IDEyOCkgZ290byBmb3JtZXJyOwpAQCAtNzEwLDcgKzcwNCw3IEBACiAJICAgIH0KIAogCWNhc2UgbnNfdF9vcHQ6IHsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgYnl0ZXMiLCBjbGFzcykpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgYnl0ZXMiLCBjbGFzcyk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJYnJlYWs7CiAJICAgIH0KQEAgLTcyNCwyMSArNzE4LDIxIEBACiAJCQlpZiAocmRsZW4gPCA0VSkgZ290byBmb3JtZXJyOwogCQkJdCA9IG5zX2dldDE2KHJkYXRhKTsKIAkJCXJkYXRhICs9IE5TX0lOVDE2U1o7Ci0JCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCB0KSk7CisJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgdCk7CiAJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCX0gZWxzZQogCQkJaWYgKHJkbGVuIDwgMlUpIGdvdG8gZm9ybWVycjsKIAotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCAqcmRhdGEpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICIsICpyZGF0YSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJcmRhdGErKzsKIAotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCAqcmRhdGEpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICIsICpyZGF0YSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJcmRhdGErKzsKIAogCQl3aGlsZSAocmRhdGEgPCBlZGF0YSkgewotCQkJbGVuID0gU1BSSU5URigodG1wLCAiJTAyWCIsICpyZGF0YSkpOworCQkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiUwMlgiLCAqcmRhdGEpOwogCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJcmRhdGErKzsKIAkJfQpAQCAtNzQ5LDE3ICs3NDMsMTcgQEAKIAljYXNlIG5zX3RfbnNlYzNwYXJhbTogewogCQl1X2ludCB0LCB3LCBsLCBqLCBrLCBjOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCiAJCXQgPSBuc19nZXQxNihyZGF0YSk7CiAJCXJkYXRhICs9IE5TX0lOVDE2U1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsIHQpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICIsIHQpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJdCA9ICpyZGF0YSsrOwpAQCAtNzY3LDcgKzc2MSw3IEBACiAJCQlUKGFkZHN0cigiLSIsIDEsICZidWYsICZidWZsZW4pKTsKIAkJfSBlbHNlIHsKIAkJCXdoaWxlICh0LS0gPiAwKSB7Ci0JCQkJbGVuID0gU1BSSU5URigodG1wLCAiJTAyWCIsICpyZGF0YSkpOworCQkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlMDJYIiwgKnJkYXRhKTsKIAkJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQkJcmRhdGErKzsKIAkJCX0KQEAgLTg1MSw3ICs4NDUsNyBAQAogCQkJCQlpZiAoKHJkYXRhW2pdICYgKDB4ODAgPj4gaykpID09IDApCiAJCQkJCQljb250aW51ZTsKIAkJCQkJYyA9IHcgKiAyNTYgKyBqICogOCArIGs7Ci0JCQkJCWxlbiA9IFNQUklOVEYoKHRtcCwgIiAlcyIsIHBfdHlwZSgobnNfdHlwZSljKSkpOworCQkJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiICVzIiwgcF90eXBlKChuc190eXBlKWMpKTsKIAkJCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJCX0KIAkJCX0KQEAgLTg3NSw3ICs4NjksNyBAQAogCQkJCQlpZiAoKHJkYXRhW2pdICYgKDB4ODAgPj4gaykpID09IDApCiAJCQkJCQljb250aW51ZTsKIAkJCQkJYyA9IHcgKiAyNTYgKyBqICogOCArIGs7Ci0JCQkJCWxlbiA9IFNQUklOVEYoKHRtcCwgIiAlcyIsIHBfdHlwZSgobnNfdHlwZSljKSkpOworCQkJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiICVzIiwgcF90eXBlKChuc190eXBlKWMpKTsKIAkJCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJCX0KIAkJCX0KQEAgLTk0OSwxNSArOTQzLDE1IEBACiAJCQlnb3RvIGhleGlmeTsKIAkJfQogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCkBAIC0xMDMwLDExICsxMDI0LDExIEBACiAJCQljb25zdCBjaGFyICpzdHIgPSAicmVjb3JkIHRvbyBsb25nIHRvIHByaW50IjsKIAkJCVQoYWRkc3RyKHN0ciwgc3RybGVuKHN0ciksICZidWYsICZidWZsZW4pKTsKIAkJfSBlbHNlIHsKLQkJCWxlbiA9IHNwcmludGYodG1wLCAiKCAldSAiLCBhbGdvcml0aG0pOworCQkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiggJXUgIiwgYWxnb3JpdGhtKTsKIAkJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkJZm9yIChpID0gMDsgaSA8IGhpcF9sZW47IGkrKykgewotCQkJCWxlbiA9IHNwcmludGYodG1wLCAiJTAyWCIsICpyZGF0YSk7CisJCQkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiUwMlgiLCAqcmRhdGEpOwogCQkJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJCQlyZGF0YSsrOwogCQkJfQpAQCAtMTA2OSwyMyArMTA2MywyMyBAQAogCWludCBuLCBtOwogCWNoYXIgKnA7CiAKLQlsZW4gPSBTUFJJTlRGKCh0bXAsICJcXCMgJXUlc1x0OyAlcyIsICh1bnNpZ25lZCkoZWRhdGEgLSByZGF0YSksCi0JCSAgICAgICByZGxlbiAhPSAwVSA/ICIgKCIgOiAiIiwgY29tbWVudCkpOworCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICJcXCMgJXUlc1x0OyAlcyIsICh1bnNpZ25lZCkoZWRhdGEgLSByZGF0YSksCisJCSAgICAgICByZGxlbiAhPSAwVSA/ICIgKCIgOiAiIiwgY29tbWVudCk7CiAJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCXdoaWxlIChyZGF0YSA8IGVkYXRhKSB7CiAJCXAgPSB0bXA7Ci0JCXAgKz0gU1BSSU5URigocCwgIlxuXHQiKSk7CisJCXAgKz0gc25wcmludGYocCwgc2l6ZW9mKHRtcCksICJcblx0Iik7CiAJCXNwYWNlZCA9IDA7CiAJCW4gPSBNSU4oMTYsIChpbnQpKGVkYXRhIC0gcmRhdGEpKTsKIAkJZm9yIChtID0gMDsgbSA8IG47IG0rKykKLQkJCXAgKz0gU1BSSU5URigocCwgIiUwMnggIiwgcmRhdGFbbV0pKTsKKwkJCXAgKz0gc25wcmludGYocCwgc2l6ZW9mKHRtcCkgLSAocCAtIHRtcCksICIlMDJ4ICIsIHJkYXRhW21dKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KShwIC0gdG1wKSwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlpZiAobiA8IDE2KSB7CiAJCQlUKGFkZHN0cigiKSIsIChzaXplX3QpMSwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJVChhZGR0YWIoKHNpemVfdCkocCAtIHRtcCArIDEpLCAoc2l6ZV90KTQ4LCBzcGFjZWQsICZidWYsICZidWZsZW4pKTsKIAkJfQogCQlwID0gdG1wOwotCQlwICs9IFNQUklOVEYoKHAsICI7ICIpKTsKKwkJcCArPSBzbnByaW50ZihwLCBzaXplb2YodG1wKSwgIjsgIik7CiAJCWZvciAobSA9IDA7IG0gPCBuOyBtKyspCiAJCQkqcCsrID0gKGlzYXNjaWkocmRhdGFbbV0pICYmIGlzcHJpbnQocmRhdGFbbV0pKQogCQkJCT8gcmRhdGFbbV0KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25hbWVzZXIvbnNfdHRsLmMgYi9saWJjL2Rucy9uYW1lc2VyL25zX3R0bC5jCmluZGV4IDIzOTViOTkuLmRlMDczYjggMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25hbWVzZXIvbnNfdHRsLmMKKysrIGIvbGliYy9kbnMvbmFtZXNlci9uc190dGwuYwpAQCAtMzYsMTIgKzM2LDYgQEAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogCi0jaWZkZWYgU1BSSU5URl9DSEFSCi0jIGRlZmluZSBTUFJJTlRGKHgpIHN0cmxlbihzcHJpbnRmLyoqL3gpCi0jZWxzZQotIyBkZWZpbmUgU1BSSU5URih4KSAoKHNpemVfdClzcHJpbnRmIHgpCi0jZW5kaWYKLQogLyogRm9yd2FyZC4gKi8KIAogc3RhdGljIGludAlmbXQxKGludCB0LCBjaGFyIHMsIGNoYXIgKipidWYsIHNpemVfdCAqYnVmbGVuKTsKQEAgLTE1Nyw4ICsxNTEsOCBAQAogCWNoYXIgdG1wWzUwXTsKIAlzaXplX3QgbGVuOwogCi0JbGVuID0gU1BSSU5URigodG1wLCAiJWQlYyIsIHQsIHMpKTsKLQlpZiAobGVuICsgMSA+ICpidWZsZW4pCisJbGVuID0gKHNpemVfdClzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJWQlYyIsIHQsIHMpOworCWlmICgoaW50KWxlbiA8IDAgfHwgbGVuICsgMSA+ICpidWZsZW4pCiAJCXJldHVybiAoLTEpOwogCXN0cmNweSgqYnVmLCB0bXApOwogCSpidWYgKz0gbGVuOwpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L2dldGFkZHJpbmZvLmMgYi9saWJjL2Rucy9uZXQvZ2V0YWRkcmluZm8uYwppbmRleCAyNjEyZDZhLi5jNzNjMDg1IDEwMDY0NAotLS0gYS9saWJjL2Rucy9uZXQvZ2V0YWRkcmluZm8uYworKysgYi9saWJjL2Rucy9uZXQvZ2V0YWRkcmluZm8uYwpAQCAtMzI0LDcgKzMyNCwxMSBAQAogewogCXN0cnVjdCBhZGRyaW5mbyAqbmV4dDsKIAotCWFzc2VydChhaSAhPSBOVUxMKTsKKyNpZiBfX0FORFJPSURfXworCWlmIChhaSA9PSBOVUxMKSByZXR1cm47CisjZWxzZQorCV9ESUFHQVNTRVJUKGFpICE9IE5VTEwpOworI2VuZGlmCiAKIAlkbyB7CiAJCW5leHQgPSBhaS0+YWlfbmV4dDsKQEAgLTQwOCwxNiArNDEyLDIxIEBACiAJcmV0dXJuIF90ZXN0X2Nvbm5lY3QoUEZfSU5FVCwgJmFkZHIuZ2VuZXJpYywgc2l6ZW9mKGFkZHIuaW4pLCBtYXJrKTsKIH0KIAorYm9vbCByZWFkQkUzMihGSUxFKiBmcCwgaW50MzJfdCogcmVzdWx0KSB7CisgIGludDMyX3QgdG1wOworICBpZiAoZnJlYWQoJnRtcCwgc2l6ZW9mKHRtcCksIDEsIGZwKSAhPSAxKSB7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisgICpyZXN1bHQgPSBudG9obCh0bXApOworICByZXR1cm4gdHJ1ZTsKK30KKwogLy8gUmV0dXJucyAwIG9uIHN1Y2Nlc3MsIGVsc2UgcmV0dXJucyBvbiBlcnJvci4KIHN0YXRpYyBpbnQKIGFuZHJvaWRfZ2V0YWRkcmluZm9fcHJveHkoCiAgICAgY29uc3QgY2hhciAqaG9zdG5hbWUsIGNvbnN0IGNoYXIgKnNlcnZuYW1lLAogICAgIGNvbnN0IHN0cnVjdCBhZGRyaW5mbyAqaGludHMsIHN0cnVjdCBhZGRyaW5mbyAqKnJlcywgdW5zaWduZWQgbmV0aWQpCiB7Ci0JaW50IHNvY2s7Ci0JY29uc3QgaW50IG9uZSA9IDE7Ci0Jc3RydWN0IHNvY2thZGRyX3VuIHByb3h5X2FkZHI7Ci0JRklMRSogcHJveHkgPSBOVUxMOwogCWludCBzdWNjZXNzID0gMDsKIAogCS8vIENsZWFyIHRoaXMgYXQgc3RhcnQsIGFzIHdlIHVzZSBpdHMgbm9uLU5VTExuZXNzIGxhdGVyIChpbiB0aGUKQEAgLTQzMywyNyArNDQyLDE0IEBACiAJCXJldHVybiBFQUlfTk9EQVRBOwogCX0KIAotCXNvY2sgPSBzb2NrZXQoQUZfVU5JWCwgU09DS19TVFJFQU0gfCBTT0NLX0NMT0VYRUMsIDApOwotCWlmIChzb2NrIDwgMCkgewotCQlyZXR1cm4gRUFJX05PREFUQTsKLQl9Ci0KLQlzZXRzb2Nrb3B0KHNvY2ssIFNPTF9TT0NLRVQsIFNPX1JFVVNFQUREUiwgJm9uZSwgc2l6ZW9mKG9uZSkpOwotCW1lbXNldCgmcHJveHlfYWRkciwgMCwgc2l6ZW9mKHByb3h5X2FkZHIpKTsKLQlwcm94eV9hZGRyLnN1bl9mYW1pbHkgPSBBRl9VTklYOwotCXN0cmxjcHkocHJveHlfYWRkci5zdW5fcGF0aCwgIi9kZXYvc29ja2V0L2Ruc3Byb3h5ZCIsCi0JCXNpemVvZihwcm94eV9hZGRyLnN1bl9wYXRoKSk7Ci0JaWYgKFRFTVBfRkFJTFVSRV9SRVRSWShjb25uZWN0KHNvY2ssCi0JCQkJICAgICAgIChjb25zdCBzdHJ1Y3Qgc29ja2FkZHIqKSAmcHJveHlfYWRkciwKLQkJCQkgICAgICAgc2l6ZW9mKHByb3h5X2FkZHIpKSkgIT0gMCkgewotCQljbG9zZShzb2NrKTsKLQkJcmV0dXJuIEVBSV9OT0RBVEE7CisJRklMRSogcHJveHkgPSBhbmRyb2lkX29wZW5fcHJveHkoKTsKKwlpZiAocHJveHkgPT0gTlVMTCkgeworCQlyZXR1cm4gRUFJX1NZU1RFTTsKIAl9CiAKIAluZXRpZCA9IF9fbmV0ZENsaWVudERpc3BhdGNoLm5ldElkRm9yUmVzb2x2KG5ldGlkKTsKIAogCS8vIFNlbmQgdGhlIHJlcXVlc3QuCi0JcHJveHkgPSBmZG9wZW4oc29jaywgInIrIik7CiAJaWYgKGZwcmludGYocHJveHksICJnZXRhZGRyaW5mbyAlcyAlcyAlZCAlZCAlZCAlZCAldSIsCiAJCSAgICBob3N0bmFtZSA9PSBOVUxMID8gIl4iIDogaG9zdG5hbWUsCiAJCSAgICBzZXJ2bmFtZSA9PSBOVUxMID8gIl4iIDogc2Vydm5hbWUsCkBAIC00ODYsNjEgKzQ4Miw2MiBAQAogCXN0cnVjdCBhZGRyaW5mbyogYWkgPSBOVUxMOwogCXN0cnVjdCBhZGRyaW5mbyoqIG5leHRyZXMgPSByZXM7CiAJd2hpbGUgKDEpIHsKLQkJdWludDMyX3QgYWRkcmluZm9fbGVuOwotCQlpZiAoZnJlYWQoJmFkZHJpbmZvX2xlbiwgc2l6ZW9mKGFkZHJpbmZvX2xlbiksCi0JCQkgIDEsIHByb3h5KSAhPSAxKSB7CisJCWludDMyX3QgaGF2ZV9tb3JlOworCQlpZiAoIXJlYWRCRTMyKHByb3h5LCAmaGF2ZV9tb3JlKSkgewogCQkJYnJlYWs7CiAJCX0KLQkJYWRkcmluZm9fbGVuID0gbnRvaGwoYWRkcmluZm9fbGVuKTsKLQkJaWYgKGFkZHJpbmZvX2xlbiA9PSAwKSB7CisJCWlmIChoYXZlX21vcmUgPT0gMCkgewogCQkJc3VjY2VzcyA9IDE7CiAJCQlicmVhazsKIAkJfQogCi0JCWlmIChhZGRyaW5mb19sZW4gPCBzaXplb2Yoc3RydWN0IGFkZHJpbmZvKSkgewotCQkJYnJlYWs7Ci0JCX0KLQkJc3RydWN0IGFkZHJpbmZvKiBhaSA9IGNhbGxvYygxLCBhZGRyaW5mb19sZW4gKwotCQkJCQkgICAgIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSkpOworCQlzdHJ1Y3QgYWRkcmluZm8qIGFpID0gY2FsbG9jKDEsIHNpemVvZihzdHJ1Y3QgYWRkcmluZm8pICsgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlKSk7CiAJCWlmIChhaSA9PSBOVUxMKSB7CiAJCQlicmVhazsKIAkJfQorCQlhaS0+YWlfYWRkciA9IChzdHJ1Y3Qgc29ja2FkZHIqKShhaSArIDEpOwogCi0JCWlmIChmcmVhZChhaSwgYWRkcmluZm9fbGVuLCAxLCBwcm94eSkgIT0gMSkgewotCQkJLy8gRXJyb3I7IGZhbGwgdGhyb3VnaC4KKwkJLy8gc3RydWN0IGFkZHJpbmZvIHsKKwkJLy8JaW50CWFpX2ZsYWdzOwkvKiBBSV9QQVNTSVZFLCBBSV9DQU5PTk5BTUUsIEFJX05VTUVSSUNIT1NUICovCisJCS8vCWludAlhaV9mYW1pbHk7CS8qIFBGX3h4eCAqLworCQkvLwlpbnQJYWlfc29ja3R5cGU7CS8qIFNPQ0tfeHh4ICovCisJCS8vCWludAlhaV9wcm90b2NvbDsJLyogMCBvciBJUFBST1RPX3h4eCBmb3IgSVB2NCBhbmQgSVB2NiAqLworCQkvLwlzb2NrbGVuX3QgYWlfYWRkcmxlbjsJLyogbGVuZ3RoIG9mIGFpX2FkZHIgKi8KKwkJLy8JY2hhcgkqYWlfY2Fub25uYW1lOwkvKiBjYW5vbmljYWwgbmFtZSBmb3IgaG9zdG5hbWUgKi8KKwkJLy8Jc3RydWN0CXNvY2thZGRyICphaV9hZGRyOwkvKiBiaW5hcnkgYWRkcmVzcyAqLworCQkvLwlzdHJ1Y3QJYWRkcmluZm8gKmFpX25leHQ7CS8qIG5leHQgc3RydWN0dXJlIGluIGxpbmtlZCBsaXN0ICovCisJCS8vIH07CisKKwkJLy8gUmVhZCB0aGUgc3RydWN0IHBpZWNlIGJ5IHBpZWNlIGJlY2F1c2Ugd2UgbWlnaHQgYmUgYSAzMi1iaXQgcHJvY2VzcworCQkvLyB0YWxraW5nIHRvIGEgNjQtYml0IG5ldGQuCisJCWludDMyX3QgYWRkcl9sZW47CisJCWJvb2wgc3VjY2VzcyA9CisJCQkJcmVhZEJFMzIocHJveHksICZhaS0+YWlfZmxhZ3MpICYmCisJCQkJcmVhZEJFMzIocHJveHksICZhaS0+YWlfZmFtaWx5KSAmJgorCQkJCXJlYWRCRTMyKHByb3h5LCAmYWktPmFpX3NvY2t0eXBlKSAmJgorCQkJCXJlYWRCRTMyKHByb3h5LCAmYWktPmFpX3Byb3RvY29sKSAmJgorCQkJCXJlYWRCRTMyKHByb3h5LCAmYWRkcl9sZW4pOworCQlpZiAoIXN1Y2Nlc3MpIHsKIAkJCWJyZWFrOwogCQl9CiAKLQkJLy8gWmVybyBvdXQgdGhlIHBvaW50ZXIgZmllbGRzIHdlIGNvcGllZCB3aGljaCBhcmVuJ3QKLQkJLy8gdmFsaWQgaW4gdGhpcyBhZGRyZXNzIHNwYWNlLgotCQlhaS0+YWlfYWRkciA9IE5VTEw7Ci0JCWFpLT5haV9jYW5vbm5hbWUgPSBOVUxMOwotCQlhaS0+YWlfbmV4dCA9IE5VTEw7Ci0KLQkJLy8gc3RydWN0IHNvY2thZGRyCi0JCXVpbnQzMl90IGFkZHJfbGVuOwotCQlpZiAoZnJlYWQoJmFkZHJfbGVuLCBzaXplb2YoYWRkcl9sZW4pLCAxLCBwcm94eSkgIT0gMSkgewotCQkJYnJlYWs7Ci0JCX0KLQkJYWRkcl9sZW4gPSBudG9obChhZGRyX2xlbik7CisJCS8vIFNldCBhaV9hZGRybGVuIGFuZCByZWFkIHRoZSBhaV9hZGRyIGRhdGEuCisJCWFpLT5haV9hZGRybGVuID0gYWRkcl9sZW47CiAJCWlmIChhZGRyX2xlbiAhPSAwKSB7Ci0JCQlpZiAoYWRkcl9sZW4gPiBzaXplb2Yoc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UpKSB7CisJCQlpZiAoKHNpemVfdCkgYWRkcl9sZW4gPiBzaXplb2Yoc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UpKSB7CiAJCQkJLy8gQm9ndXM7IHRvbyBiaWcuCiAJCQkJYnJlYWs7CiAJCQl9Ci0JCQlzdHJ1Y3Qgc29ja2FkZHIqIGFkZHIgPSAoc3RydWN0IHNvY2thZGRyKikoYWkgKyAxKTsKLQkJCWlmIChmcmVhZChhZGRyLCBhZGRyX2xlbiwgMSwgcHJveHkpICE9IDEpIHsKKwkJCWlmIChmcmVhZChhaS0+YWlfYWRkciwgYWRkcl9sZW4sIDEsIHByb3h5KSAhPSAxKSB7CiAJCQkJYnJlYWs7CiAJCQl9Ci0JCQlhaS0+YWlfYWRkciA9IGFkZHI7CiAJCX0KIAotCQkvLyBjYW5ub25uYW1lCi0JCXVpbnQzMl90IG5hbWVfbGVuOwotCQlpZiAoZnJlYWQoJm5hbWVfbGVuLCBzaXplb2YobmFtZV9sZW4pLCAxLCBwcm94eSkgIT0gMSkgeworCQkvLyBUaGUgc3RyaW5nIGZvciBhaV9jYW5ub25uYW1lLgorCQlpbnQzMl90IG5hbWVfbGVuOworCQlpZiAoIXJlYWRCRTMyKHByb3h5LCAmbmFtZV9sZW4pKSB7CiAJCQlicmVhazsKIAkJfQotCQluYW1lX2xlbiA9IG50b2hsKG5hbWVfbGVuKTsKIAkJaWYgKG5hbWVfbGVuICE9IDApIHsKIAkJCWFpLT5haV9jYW5vbm5hbWUgPSAoY2hhciopIG1hbGxvYyhuYW1lX2xlbik7CiAJCQlpZiAoZnJlYWQoYWktPmFpX2Nhbm9ubmFtZSwgbmFtZV9sZW4sIDEsIHByb3h5KSAhPSAxKSB7CkBAIC01OTksNyArNTk2LDYgQEAKIAlzdHJ1Y3QgYWRkcmluZm8gYWkwOwogCXN0cnVjdCBhZGRyaW5mbyAqcGFpOwogCWNvbnN0IHN0cnVjdCBleHBsb3JlICpleDsKLQljb25zdCBjaGFyKiBjYWNoZV9tb2RlID0gZ2V0ZW52KCJBTkRST0lEX0ROU19NT0RFIik7CiAKIAkvKiBob3N0bmFtZSBpcyBhbGxvd2VkIHRvIGJlIE5VTEwgKi8KIAkvKiBzZXJ2bmFtZSBpcyBhbGxvd2VkIHRvIGJlIE5VTEwgKi8KQEAgLTczNCwxMyArNzMwLDEyIEBACiAJaWYgKHBhaS0+YWlfZmxhZ3MgJiBBSV9OVU1FUklDSE9TVCkKIAkJRVJSKEVBSV9OT05BTUUpOwogCi0gICAgICAgIC8qCi0gICAgICAgICAqIEJFR0lOIEFORFJPSUQgQ0hBTkdFUzsgcHJveHlpbmcgdG8gdGhlIGNhY2hlCi0gICAgICAgICAqLwotCWlmIChjYWNoZV9tb2RlID09IE5VTEwgfHwgc3RyY21wKGNhY2hlX21vZGUsICJsb2NhbCIpICE9IDApIHsKLQkJLy8gd2UncmUgbm90IHRoZSBwcm94eSAtIHBhc3MgdGhlIHJlcXVlc3QgdG8gdGhlbQotCQlyZXR1cm4gYW5kcm9pZF9nZXRhZGRyaW5mb19wcm94eShob3N0bmFtZSwgc2Vydm5hbWUsIGhpbnRzLCByZXMsIG5ldGlkKTsKKyNpZiBkZWZpbmVkKF9fQU5EUk9JRF9fKQorCWludCBnYWlfZXJyb3IgPSBhbmRyb2lkX2dldGFkZHJpbmZvX3Byb3h5KGhvc3RuYW1lLCBzZXJ2bmFtZSwgaGludHMsIHJlcywgbmV0aWQpOworCWlmIChnYWlfZXJyb3IgIT0gRUFJX1NZU1RFTSkgeworCQlyZXR1cm4gZ2FpX2Vycm9yOwogCX0KKyNlbmRpZgogCiAJLyoKIAkgKiBob3N0bmFtZSBhcyBhbHBoYWJldGljYWwgbmFtZS4KQEAgLTIwMTcsNyArMjAxMiw3IEBACiB7CiAKIAlpZiAoISpob3N0ZikKLQkJKmhvc3RmID0gZm9wZW4oX1BBVEhfSE9TVFMsICJyIiApOworCQkqaG9zdGYgPSBmb3BlbihfUEFUSF9IT1NUUywgInJlIik7CiAJZWxzZQogCQlyZXdpbmQoKmhvc3RmKTsKIH0KQEAgLTIwNDYsNyArMjA0MSw3IEBACiAJYXNzZXJ0KG5hbWUgIT0gTlVMTCk7CiAJYXNzZXJ0KHBhaSAhPSBOVUxMKTsKIAotCWlmICghKmhvc3RmICYmICEoKmhvc3RmID0gZm9wZW4oX1BBVEhfSE9TVFMsICJyIiApKSkKKwlpZiAoISpob3N0ZiAmJiAhKCpob3N0ZiA9IGZvcGVuKF9QQVRIX0hPU1RTLCAicmUiKSkpCiAJCXJldHVybiAoTlVMTCk7CiAgYWdhaW46CiAJaWYgKCEocCA9IGZnZXRzKGhvc3RidWYsIHNpemVvZiBob3N0YnVmLCAqaG9zdGYpKSkKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25ldC9nZXRobmFtYWRkci5jIGIvbGliYy9kbnMvbmV0L2dldGhuYW1hZGRyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGY1ODAwYQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvZG5zL25ldC9nZXRobmFtYWRkci5jCkBAIC0wLDAgKzEsMTYzMSBAQAorLyoJJE5ldEJTRDogZ2V0aG5hbWFkZHIuYyx2IDEuOTEgMjAxNC8wNi8xOSAxNTowODoxOCBjaHJpc3RvcyBFeHAgJAkqLworCisvKgorICogKytDb3B5cmlnaHQrKyAxOTg1LCAxOTg4LCAxOTkzCisgKiAtCisgKiBDb3B5cmlnaHQgKGMpIDE5ODUsIDE5ODgsIDE5OTMKKyAqICAgIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqIC0KKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5MyBieSBEaWdpdGFsIEVxdWlwbWVudCBDb3Jwb3JhdGlvbi4KKyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKKyAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMsIGFuZCB0aGF0CisgKiB0aGUgbmFtZSBvZiBEaWdpdGFsIEVxdWlwbWVudCBDb3Jwb3JhdGlvbiBub3QgYmUgdXNlZCBpbiBhZHZlcnRpc2luZyBvcgorICogcHVibGljaXR5IHBlcnRhaW5pbmcgdG8gZGlzdHJpYnV0aW9uIG9mIHRoZSBkb2N1bWVudCBvciBzb2Z0d2FyZSB3aXRob3V0CisgKiBzcGVjaWZpYywgd3JpdHRlbiBwcmlvciBwZXJtaXNzaW9uLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBESUdJVEFMIEVRVUlQTUVOVCBDT1JQLiBESVNDTEFJTVMgQUxMCisgKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUsIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTCisgKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuICAgSU4gTk8gRVZFTlQgU0hBTEwgRElHSVRBTCBFUVVJUE1FTlQKKyAqIENPUlBPUkFUSU9OIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUgorICogUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMKKyAqIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUworICogU09GVFdBUkUuCisgKiAtCisgKiAtLUNvcHlyaWdodC0tCisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgorI2luY2x1ZGUgPHN5cy91bi5oPgorI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNpbmNsdWRlIDxhcnBhL2luZXQuaD4KKyNpbmNsdWRlIDxhcnBhL25hbWVzZXIuaD4KKyNpbmNsdWRlICJOZXRkQ2xpZW50RGlzcGF0Y2guaCIKKyNpbmNsdWRlICJyZXNvbHZfbmV0aWQuaCIKKyNpbmNsdWRlICJyZXNvbHZfcHJpdmF0ZS5oIgorI2luY2x1ZGUgInJlc29sdl9jYWNoZS5oIgorI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxuZXRkYi5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZ3MuaD4KKyNpbmNsdWRlIDxzeXNsb2cuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2RlZmluZSBBTElHTkJZVEVTIChzaXplb2YodWludHB0cl90KSAtIDEpCisjZGVmaW5lIEFMSUdOKHApICgoKHVpbnRwdHJfdCkocCkgKyBBTElHTkJZVEVTKSAmfiBBTElHTkJZVEVTKQorCisjaWZuZGVmIExPR19BVVRICisjIGRlZmluZSBMT0dfQVVUSCAwCisjZW5kaWYKKworI2RlZmluZSBNVUxUSV9QVFJTX0FSRV9BTElBU0VTIDEJLyogWFhYIC0gZXhwZXJpbWVudGFsICovCisKKyNpbmNsdWRlICJuc3N3aXRjaC5oIgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorCisjaW5jbHVkZSAiaG9zdGVudC5oIgorCisjZGVmaW5lIG1heWJlX29rKHJlcywgbm0sIG9rKSAoKChyZXMpLT5vcHRpb25zICYgUkVTX05PQ0hFQ0tOQU1FKSAhPSAwVSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9rKShubSkgIT0gMCkKKyNkZWZpbmUgbWF5YmVfaG5vayhyZXMsIGhuKSBtYXliZV9vaygocmVzKSwgKGhuKSwgcmVzX2hub2spCisjZGVmaW5lIG1heWJlX2Rub2socmVzLCBkbikgbWF5YmVfb2soKHJlcyksIChkbiksIHJlc19kbm9rKQorCisjZGVmaW5lIGFkZGFsaWFzKGQsIHMsIGFyciwgc2l6KSBkbyB7CQkJXAorCWlmIChkID49ICZhcnJbc2l6XSkgewkJCQlcCisJCWNoYXIgKip4cHRyID0gcmVhbGxvYyhhcnIsIChzaXogKyAxMCkgKiBzaXplb2YoKmFycikpOyBcCisJCWlmICh4cHRyID09IE5VTEwpCQkJXAorCQkJZ290byBub3NwYzsJCQlcCisJCWQgPSB4cHRyICsgKGQgLSBhcnIpOwkJCVwKKwkJYXJyID0geHB0cjsJCQkJXAorCQlzaXogKz0gMTA7CQkJCVwKKwl9CQkJCQkJXAorCSpkKysgPSBzOwkJCQkJXAorfSB3aGlsZSAoLypDT05TVENPTkQqLzApCisKKyNkZWZpbmUgc2V0dXAoYXJyLCBzaXopIGRvIHsJCQkJXAorCWFyciA9IG1hbGxvYygoc2l6ID0gMTApICogc2l6ZW9mKCphcnIpKTsgCVwKKwlpZiAoYXJyID09IE5VTEwpCQkJCVwKKwkJZ290byBub3NwYzsJCQkJXAorfSB3aGlsZSAoLypDT05TVENPTkQqLzApCisKKy8vIFRoaXMgc2hvdWxkIGJlIHN5bmNocm9uaXplZCB0byBSZXNwb25zZUNvZGUuaAorc3RhdGljIGNvbnN0IGludCBEbnNQcm94eVF1ZXJ5UmVzdWx0ID0gMjIyOworCitzdGF0aWMgY29uc3QgY2hhciBBc2tlZEZvckdvdFtdID0KKwkJCSAgImdldGhvc3RieSouZ2V0YW5zd2VyOiBhc2tlZCBmb3IgXCIlc1wiLCBnb3QgXCIlc1wiIjsKKworI2RlZmluZQlNQVhQQUNLRVQJKDY0KjEwMjQpCisKK3R5cGVkZWYgdW5pb24geworICAgIEhFQURFUiBoZHI7CisgICAgdV9jaGFyIGJ1ZltNQVhQQUNLRVRdOworfSBxdWVyeWJ1ZjsKKwordHlwZWRlZiB1bmlvbiB7CisgICAgaW50MzJfdCBhbDsKKyAgICBjaGFyIGFjOworfSBhbGlnbjsKKworI2lmZGVmIERFQlVHCitzdGF0aWMgdm9pZCBkZWJ1Z3ByaW50Zihjb25zdCBjaGFyICosIHJlc19zdGF0ZSwgLi4uKQorCV9fYXR0cmlidXRlX18oKF9fZm9ybWF0X18oX19wcmludGZfXywgMSwgMykpKTsKKyNlbmRpZgorc3RhdGljIHN0cnVjdCBob3N0ZW50ICpnZXRhbnN3ZXIoY29uc3QgcXVlcnlidWYgKiwgaW50LCBjb25zdCBjaGFyICosIGludCwKKyAgICByZXNfc3RhdGUsIHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiwgc2l6ZV90LCBpbnQgKik7CitzdGF0aWMgdm9pZCBtYXBfdjR2Nl9hZGRyZXNzKGNvbnN0IGNoYXIgKiwgY2hhciAqKTsKK3N0YXRpYyB2b2lkIG1hcF92NHY2X2hvc3RlbnQoc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqKiwgY2hhciAqKTsKK3N0YXRpYyB2b2lkIGFkZHJzb3J0KGNoYXIgKiosIGludCwgcmVzX3N0YXRlKTsKKwordm9pZCBodF9zZXRob3N0ZW50KGludCk7Cit2b2lkIGh0X2VuZGhvc3RlbnQodm9pZCk7CitzdHJ1Y3QgaG9zdGVudCAqaHRfZ2V0aG9zdGJ5bmFtZShjaGFyICopOworc3RydWN0IGhvc3RlbnQgKmh0X2dldGhvc3RieWFkZHIoY29uc3QgY2hhciAqLCBpbnQsIGludCk7Cit2b2lkIGRuc19zZXJ2aWNlKHZvaWQpOworI3VuZGVmIGRuX3NraXBuYW1lCitpbnQgZG5fc2tpcG5hbWUoY29uc3QgdV9jaGFyICosIGNvbnN0IHVfY2hhciAqKTsKK3N0YXRpYyBpbnQgX2Ruc19nZXRodGJ5YWRkcih2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7CitzdGF0aWMgaW50IF9kbnNfZ2V0aHRieW5hbWUodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOworCitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKmdldGhvc3RieW5hbWVfaW50ZXJuYWwoY29uc3QgY2hhciAqLCBpbnQsIHJlc19zdGF0ZSwKKyAgICBzdHJ1Y3QgaG9zdGVudCAqLCBjaGFyICosIHNpemVfdCwgaW50ICosIHVuc2lnbmVkLCB1bnNpZ25lZCk7CitzdGF0aWMgc3RydWN0IGhvc3RlbnQqIGFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eV9pbnRlcm5hbChjb25zdCB2b2lkKiwgc29ja2xlbl90LAorICAgIGludCwgc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqLCBzaXplX3QsIGludCAqLCB1bnNpZ25lZCwgdW5zaWduZWQpOworCitzdGF0aWMgY29uc3QgbnNfc3JjIGRlZmF1bHRfZG5zX2ZpbGVzW10gPSB7CisJeyBOU1NSQ19GSUxFUywgCU5TX1NVQ0NFU1MgfSwKKwl7IE5TU1JDX0ROUywgCU5TX1NVQ0NFU1MgfSwKKwl7IDAsIDAgfQorfTsKKworCisjaWZkZWYgREVCVUcKK3N0YXRpYyB2b2lkCitkZWJ1Z3ByaW50Zihjb25zdCBjaGFyICptc2csIHJlc19zdGF0ZSByZXMsIC4uLikKK3sKKwlfRElBR0FTU0VSVChtc2cgIT0gTlVMTCk7CisKKwlpZiAocmVzLT5vcHRpb25zICYgUkVTX0RFQlVHKSB7CisJCWludCBzYXZlID0gZXJybm87CisJCXZhX2xpc3QgYXA7CisKKwkJdmFfc3RhcnQgKGFwLCByZXMpOworCQl2cHJpbnRmKG1zZywgYXApOworCQl2YV9lbmQgKGFwKTsKKworCQllcnJubyA9IHNhdmU7CisJfQorfQorI2Vsc2UKKyMgZGVmaW5lIGRlYnVncHJpbnRmKG1zZywgcmVzLCBudW0pIC8qbmFkYSovCisjZW5kaWYKKworI2RlZmluZSBCT1VOREVEX0lOQ1IoeCkgXAorCWRvIHsgXAorCQljcCArPSAoeCk7IFwKKwkJaWYgKGNwID4gZW9tKSBcCisJCQlnb3RvIG5vX3JlY292ZXJ5OyBcCisJfSB3aGlsZSAoLypDT05TVENPTkQqLzApCisKKyNkZWZpbmUgQk9VTkRTX0NIRUNLKHB0ciwgY291bnQpIFwKKwlkbyB7IFwKKwkJaWYgKChwdHIpICsgKGNvdW50KSA+IGVvbSkgXAorCQkJZ290byBub19yZWNvdmVyeTsgXAorCX0gd2hpbGUgKC8qQ09OU1RDT05EKi8wKQorCitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKgorZ2V0YW5zd2VyKGNvbnN0IHF1ZXJ5YnVmICphbnN3ZXIsIGludCBhbnNsZW4sIGNvbnN0IGNoYXIgKnFuYW1lLCBpbnQgcXR5cGUsCisgICAgcmVzX3N0YXRlIHJlcywgc3RydWN0IGhvc3RlbnQgKmhlbnQsIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZmxlbiwgaW50ICpoZSkKK3sKKwljb25zdCBIRUFERVIgKmhwOworCWNvbnN0IHVfY2hhciAqY3A7CisJaW50IG47CisJc2l6ZV90IHFsZW47CisJY29uc3QgdV9jaGFyICplb20sICplcmRhdGE7CisJY2hhciAqYnAsICoqYXAsICoqaGFwLCAqZXA7CisJaW50IHR5cGUsIGNsYXNzLCBhbmNvdW50LCBxZGNvdW50OworCWludCBoYXZlYW5zd2VyLCBoYWRfZXJyb3I7CisJaW50IHRvb2JpZyA9IDA7CisJY2hhciB0YnVmW01BWEROQU1FXTsKKwljaGFyICoqYWxpYXNlczsKKwlzaXplX3QgbWF4YWxpYXNlczsKKwljaGFyICphZGRyX3B0cnNbTUFYQUREUlNdOworCWNvbnN0IGNoYXIgKnRuYW1lOworCWludCAoKm5hbWVfb2spKGNvbnN0IGNoYXIgKik7CisKKwlfRElBR0FTU0VSVChhbnN3ZXIgIT0gTlVMTCk7CisJX0RJQUdBU1NFUlQocW5hbWUgIT0gTlVMTCk7CisKKwl0bmFtZSA9IHFuYW1lOworCWhlbnQtPmhfbmFtZSA9IE5VTEw7CisJZW9tID0gYW5zd2VyLT5idWYgKyBhbnNsZW47CisJc3dpdGNoIChxdHlwZSkgeworCWNhc2UgVF9BOgorCWNhc2UgVF9BQUFBOgorCQluYW1lX29rID0gcmVzX2hub2s7CisJCWJyZWFrOworCWNhc2UgVF9QVFI6CisJCW5hbWVfb2sgPSByZXNfZG5vazsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkgICpoZSA9IE5PX1JFQ09WRVJZOworCQlyZXR1cm4gTlVMTDsJLyogWFhYIHNob3VsZCBiZSBhYm9ydCgpOyAqLworCX0KKworCXNldHVwKGFsaWFzZXMsIG1heGFsaWFzZXMpOworCS8qCisJICogZmluZCBmaXJzdCBzYXRpc2ZhY3RvcnkgYW5zd2VyCisJICovCisJaHAgPSAmYW5zd2VyLT5oZHI7CisJYW5jb3VudCA9IG50b2hzKGhwLT5hbmNvdW50KTsKKwlxZGNvdW50ID0gbnRvaHMoaHAtPnFkY291bnQpOworCWJwID0gYnVmOworCWVwID0gYnVmICsgYnVmbGVuOworCWNwID0gYW5zd2VyLT5idWY7CisJQk9VTkRFRF9JTkNSKEhGSVhFRFNaKTsKKwlpZiAocWRjb3VudCAhPSAxKQorCQlnb3RvIG5vX3JlY292ZXJ5OworCisJbiA9IGRuX2V4cGFuZChhbnN3ZXItPmJ1ZiwgZW9tLCBjcCwgYnAsIChpbnQpKGVwIC0gYnApKTsKKwlpZiAoKG4gPCAwKSB8fCAhbWF5YmVfb2socmVzLCBicCwgbmFtZV9vaykpCisJCWdvdG8gbm9fcmVjb3Zlcnk7CisKKwlCT1VOREVEX0lOQ1IobiArIFFGSVhFRFNaKTsKKwlpZiAocXR5cGUgPT0gVF9BIHx8IHF0eXBlID09IFRfQUFBQSkgeworCQkvKiByZXNfc2VuZCgpIGhhcyBhbHJlYWR5IHZlcmlmaWVkIHRoYXQgdGhlIHF1ZXJ5IG5hbWUgaXMgdGhlCisJCSAqIHNhbWUgYXMgdGhlIG9uZSB3ZSBzZW50OyB0aGlzIGp1c3QgZ2V0cyB0aGUgZXhwYW5kZWQgbmFtZQorCQkgKiAoaS5lLiwgd2l0aCB0aGUgc3VjY2VlZGluZyBzZWFyY2gtZG9tYWluIHRhY2tlZCBvbikuCisJCSAqLworCQluID0gKGludClzdHJsZW4oYnApICsgMTsJCS8qIGZvciB0aGUgXDAgKi8KKwkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pCisJCQlnb3RvIG5vX3JlY292ZXJ5OworCQloZW50LT5oX25hbWUgPSBicDsKKwkJYnAgKz0gbjsKKwkJLyogVGhlIHFuYW1lIGNhbiBiZSBhYmJyZXZpYXRlZCwgYnV0IGhfbmFtZSBpcyBub3cgYWJzb2x1dGUuICovCisJCXFuYW1lID0gaGVudC0+aF9uYW1lOworCX0KKwloZW50LT5oX2FsaWFzZXMgPSBhcCA9IGFsaWFzZXM7CisJaGVudC0+aF9hZGRyX2xpc3QgPSBoYXAgPSBhZGRyX3B0cnM7CisJKmFwID0gTlVMTDsKKwkqaGFwID0gTlVMTDsKKwloYXZlYW5zd2VyID0gMDsKKwloYWRfZXJyb3IgPSAwOworCXdoaWxlIChhbmNvdW50LS0gPiAwICYmIGNwIDwgZW9tICYmICFoYWRfZXJyb3IpIHsKKwkJbiA9IGRuX2V4cGFuZChhbnN3ZXItPmJ1ZiwgZW9tLCBjcCwgYnAsIChpbnQpKGVwIC0gYnApKTsKKwkJaWYgKChuIDwgMCkgfHwgIW1heWJlX29rKHJlcywgYnAsIG5hbWVfb2spKSB7CisJCQloYWRfZXJyb3IrKzsKKwkJCWNvbnRpbnVlOworCQl9CisJCWNwICs9IG47CQkJLyogbmFtZSAqLworCQlCT1VORFNfQ0hFQ0soY3AsIDMgKiBJTlQxNlNaICsgSU5UMzJTWik7CisJCXR5cGUgPSBfZ2V0c2hvcnQoY3ApOworIAkJY3AgKz0gSU5UMTZTWjsJCQkvKiB0eXBlICovCisJCWNsYXNzID0gX2dldHNob3J0KGNwKTsKKyAJCWNwICs9IElOVDE2U1ogKyBJTlQzMlNaOwkvKiBjbGFzcywgVFRMICovCisJCW4gPSBfZ2V0c2hvcnQoY3ApOworCQljcCArPSBJTlQxNlNaOwkJCS8qIGxlbiAqLworCQlCT1VORFNfQ0hFQ0soY3AsIG4pOworCQllcmRhdGEgPSBjcCArIG47CisJCWlmIChjbGFzcyAhPSBDX0lOKSB7CisJCQkvKiBYWFggLSBkZWJ1Zz8gc3lzbG9nPyAqLworCQkJY3AgKz0gbjsKKwkJCWNvbnRpbnVlOwkJLyogWFhYIC0gaGFkX2Vycm9yKysgPyAqLworCQl9CisJCWlmICgocXR5cGUgPT0gVF9BIHx8IHF0eXBlID09IFRfQUFBQSkgJiYgdHlwZSA9PSBUX0NOQU1FKSB7CisJCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCB0YnVmLAorCQkJICAgIChpbnQpc2l6ZW9mIHRidWYpOworCQkJaWYgKChuIDwgMCkgfHwgIW1heWJlX29rKHJlcywgdGJ1ZiwgbmFtZV9vaykpIHsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWNwICs9IG47CisJCQlpZiAoY3AgIT0gZXJkYXRhKQorCQkJCWdvdG8gbm9fcmVjb3Zlcnk7CisJCQkvKiBTdG9yZSBhbGlhcy4gKi8KKwkJCWFkZGFsaWFzKGFwLCBicCwgYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJCQluID0gKGludClzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLworCQkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWJwICs9IG47CisJCQkvKiBHZXQgY2Fub25pY2FsIG5hbWUuICovCisJCQluID0gKGludClzdHJsZW4odGJ1ZikgKyAxOwkvKiBmb3IgdGhlIFwwICovCisJCQlpZiAobiA+IGVwIC0gYnAgfHwgbiA+PSBNQVhIT1NUTkFNRUxFTikgeworCQkJCWhhZF9lcnJvcisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJc3RybGNweShicCwgdGJ1ZiwgKHNpemVfdCkoZXAgLSBicCkpOworCQkJaGVudC0+aF9uYW1lID0gYnA7CisJCQlicCArPSBuOworCQkJY29udGludWU7CisJCX0KKwkJaWYgKHF0eXBlID09IFRfUFRSICYmIHR5cGUgPT0gVF9DTkFNRSkgeworCQkJbiA9IGRuX2V4cGFuZChhbnN3ZXItPmJ1ZiwgZW9tLCBjcCwgdGJ1ZiwKKwkJCSAgICAoaW50KXNpemVvZiB0YnVmKTsKKwkJCWlmIChuIDwgMCB8fCAhbWF5YmVfZG5vayhyZXMsIHRidWYpKSB7CisJCQkJaGFkX2Vycm9yKys7CisJCQkJY29udGludWU7CisJCQl9CisJCQljcCArPSBuOworCQkJaWYgKGNwICE9IGVyZGF0YSkKKwkJCQlnb3RvIG5vX3JlY292ZXJ5OworCQkJLyogR2V0IGNhbm9uaWNhbCBuYW1lLiAqLworCQkJbiA9IChpbnQpc3RybGVuKHRidWYpICsgMTsJLyogZm9yIHRoZSBcMCAqLworCQkJaWYgKG4gPiBlcCAtIGJwIHx8IG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCXN0cmxjcHkoYnAsIHRidWYsIChzaXplX3QpKGVwIC0gYnApKTsKKwkJCXRuYW1lID0gYnA7CisJCQlicCArPSBuOworCQkJY29udGludWU7CisJCX0KKwkJaWYgKHR5cGUgIT0gcXR5cGUpIHsKKwkJCWlmICh0eXBlICE9IFRfS0VZICYmIHR5cGUgIT0gVF9TSUcpCisJCQkJc3lzbG9nKExPR19OT1RJQ0V8TE9HX0FVVEgsCisJICAgICAgICJnZXRob3N0YnkqLmdldGFuc3dlcjogYXNrZWQgZm9yIFwiJXMgJXMgJXNcIiwgZ290IHR5cGUgXCIlc1wiIiwKKwkJCQkgICAgICAgcW5hbWUsIHBfY2xhc3MoQ19JTiksIHBfdHlwZShxdHlwZSksCisJCQkJICAgICAgIHBfdHlwZSh0eXBlKSk7CisJCQljcCArPSBuOworCQkJY29udGludWU7CQkvKiBYWFggLSBoYWRfZXJyb3IrKyA/ICovCisJCX0KKwkJc3dpdGNoICh0eXBlKSB7CisJCWNhc2UgVF9QVFI6CisJCQlpZiAoc3RyY2FzZWNtcCh0bmFtZSwgYnApICE9IDApIHsKKwkJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVUSCwKKwkJCQkgICAgICAgQXNrZWRGb3JHb3QsIHFuYW1lLCBicCk7CisJCQkJY3AgKz0gbjsKKwkJCQljb250aW51ZTsJLyogWFhYIC0gaGFkX2Vycm9yKysgPyAqLworCQkJfQorCQkJbiA9IGRuX2V4cGFuZChhbnN3ZXItPmJ1ZiwgZW9tLCBjcCwgYnAsIChpbnQpKGVwIC0gYnApKTsKKwkJCWlmICgobiA8IDApIHx8ICFtYXliZV9obm9rKHJlcywgYnApKSB7CisJCQkJaGFkX2Vycm9yKys7CisJCQkJYnJlYWs7CisJCQl9CisjaWYgTVVMVElfUFRSU19BUkVfQUxJQVNFUworCQkJY3AgKz0gbjsKKwkJCWlmIChjcCAhPSBlcmRhdGEpCisJCQkJZ290byBub19yZWNvdmVyeTsKKwkJCWlmICghaGF2ZWFuc3dlcikKKwkJCQloZW50LT5oX25hbWUgPSBicDsKKwkJCWVsc2UKKwkJCQlhZGRhbGlhcyhhcCwgYnAsIGFsaWFzZXMsIG1heGFsaWFzZXMpOworCQkJaWYgKG4gIT0gLTEpIHsKKwkJCQluID0gKGludClzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLworCQkJCWlmIChuID49IE1BWEhPU1ROQU1FTEVOKSB7CisJCQkJCWhhZF9lcnJvcisrOworCQkJCQlicmVhazsKKwkJCQl9CisJCQkJYnAgKz0gbjsKKwkJCX0KKwkJCWJyZWFrOworI2Vsc2UKKwkJCWhlbnQtPmhfbmFtZSA9IGJwOworCQkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpIHsKKwkJCQluID0gc3RybGVuKGJwKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KKwkJCQlpZiAobiA+PSBNQVhIT1NUTkFNRUxFTikgeworCQkJCQloYWRfZXJyb3IrKzsKKwkJCQkJYnJlYWs7CisJCQkJfQorCQkJCWJwICs9IG47CisJCQkJbWFwX3Y0djZfaG9zdGVudChoZW50LCAmYnAsIGVwKTsKKwkJCX0KKwkJCWdvdG8gc3VjY2VzczsKKyNlbmRpZgorCQljYXNlIFRfQToKKwkJY2FzZSBUX0FBQUE6CisJCQlpZiAoc3RyY2FzZWNtcChoZW50LT5oX25hbWUsIGJwKSAhPSAwKSB7CisJCQkJc3lzbG9nKExPR19OT1RJQ0V8TE9HX0FVVEgsCisJCQkJICAgICAgIEFza2VkRm9yR290LCBoZW50LT5oX25hbWUsIGJwKTsKKwkJCQljcCArPSBuOworCQkJCWNvbnRpbnVlOwkvKiBYWFggLSBoYWRfZXJyb3IrKyA/ICovCisJCQl9CisJCQlpZiAobiAhPSBoZW50LT5oX2xlbmd0aCkgeworCQkJCWNwICs9IG47CisJCQkJY29udGludWU7CisJCQl9CisJCQlpZiAodHlwZSA9PSBUX0FBQUEpIHsKKwkJCQlzdHJ1Y3QgaW42X2FkZHIgaW42OworCQkJCW1lbWNweSgmaW42LCBjcCwgTlNfSU42QUREUlNaKTsKKwkJCQlpZiAoSU42X0lTX0FERFJfVjRNQVBQRUQoJmluNikpIHsKKwkJCQkJY3AgKz0gbjsKKwkJCQkJY29udGludWU7CisJCQkJfQorCQkJfQorCQkJaWYgKCFoYXZlYW5zd2VyKSB7CisJCQkJaW50IG5uOworCisJCQkJaGVudC0+aF9uYW1lID0gYnA7CisJCQkJbm4gPSAoaW50KXN0cmxlbihicCkgKyAxOwkvKiBmb3IgdGhlIFwwICovCisJCQkJYnAgKz0gbm47CisJCQl9CisKKwkJCWJwICs9IHNpemVvZihhbGlnbikgLQorCQkJICAgIChzaXplX3QpKCh1X2xvbmcpYnAgJSBzaXplb2YoYWxpZ24pKTsKKworCQkJaWYgKGJwICsgbiA+PSBlcCkgeworCQkJCWRlYnVncHJpbnRmKCJzaXplICglZCkgdG9vIGJpZ1xuIiwgcmVzLCBuKTsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWlmIChoYXAgPj0gJmFkZHJfcHRyc1tNQVhBRERSUyAtIDFdKSB7CisJCQkJaWYgKCF0b29iaWcrKykgeworCQkJCQlkZWJ1Z3ByaW50ZigiVG9vIG1hbnkgYWRkcmVzc2VzICglZClcbiIsCisJCQkJCQlyZXMsIE1BWEFERFJTKTsKKwkJCQl9CisJCQkJY3AgKz0gbjsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCSh2b2lkKW1lbWNweSgqaGFwKysgPSBicCwgY3AsIChzaXplX3Qpbik7CisJCQlicCArPSBuOworCQkJY3AgKz0gbjsKKwkJCWlmIChjcCAhPSBlcmRhdGEpCisJCQkJZ290byBub19yZWNvdmVyeTsKKwkJCWJyZWFrOworCQlkZWZhdWx0OgorCQkJYWJvcnQoKTsKKwkJfQorCQlpZiAoIWhhZF9lcnJvcikKKwkJCWhhdmVhbnN3ZXIrKzsKKwl9CisJaWYgKGhhdmVhbnN3ZXIpIHsKKwkJKmFwID0gTlVMTDsKKwkJKmhhcCA9IE5VTEw7CisJCS8qCisJCSAqIE5vdGU6IHdlIHNvcnQgZXZlbiBpZiBob3N0IGNhbiB0YWtlIG9ubHkgb25lIGFkZHJlc3MKKwkJICogaW4gaXRzIHJldHVybiBzdHJ1Y3R1cmVzIC0gc2hvdWxkIGdpdmUgaXQgdGhlICJiZXN0IgorCQkgKiBhZGRyZXNzIGluIHRoYXQgY2FzZSwgbm90IHNvbWUgcmFuZG9tIG9uZQorCQkgKi8KKwkJaWYgKHJlcy0+bnNvcnQgJiYgaGF2ZWFuc3dlciA+IDEgJiYgcXR5cGUgPT0gVF9BKQorCQkJYWRkcnNvcnQoYWRkcl9wdHJzLCBoYXZlYW5zd2VyLCByZXMpOworCQlpZiAoIWhlbnQtPmhfbmFtZSkgeworCQkJbiA9IChpbnQpc3RybGVuKHFuYW1lKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KKwkJCWlmIChuID4gZXAgLSBicCB8fCBuID49IE1BWEhPU1ROQU1FTEVOKQorCQkJCWdvdG8gbm9fcmVjb3Zlcnk7CisJCQlzdHJsY3B5KGJwLCBxbmFtZSwgKHNpemVfdCkoZXAgLSBicCkpOworCQkJaGVudC0+aF9uYW1lID0gYnA7CisJCQlicCArPSBuOworCQl9CisJCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KQorCQkJbWFwX3Y0djZfaG9zdGVudChoZW50LCAmYnAsIGVwKTsKKwkgIGdvdG8gc3VjY2VzczsKKwl9Citub19yZWNvdmVyeToKKwlmcmVlKGFsaWFzZXMpOworCSpoZSA9IE5PX1JFQ09WRVJZOworCXJldHVybiBOVUxMOworc3VjY2VzczoKKwlicCA9IChjaGFyICopQUxJR04oYnApOworCW4gPSAoaW50KShhcCAtIGFsaWFzZXMpOworCXFsZW4gPSAobiArIDEpICogc2l6ZW9mKCpoZW50LT5oX2FsaWFzZXMpOworCWlmICgoc2l6ZV90KShlcCAtIGJwKSA8IHFsZW4pCisJCWdvdG8gbm9zcGM7CisJaGVudC0+aF9hbGlhc2VzID0gKHZvaWQgKilicDsKKwltZW1jcHkoYnAsIGFsaWFzZXMsIHFsZW4pOworCWZyZWUoYWxpYXNlcyk7CisJYWxpYXNlcyA9IE5VTEw7CisKKwlicCArPSBxbGVuOworCW4gPSAoaW50KShoYXAgLSBhZGRyX3B0cnMpOworCXFsZW4gPSAobiArIDEpICogc2l6ZW9mKCpoZW50LT5oX2FkZHJfbGlzdCk7CisJaWYgKChzaXplX3QpKGVwIC0gYnApIDwgcWxlbikKKwkJZ290byBub3NwYzsKKwloZW50LT5oX2FkZHJfbGlzdCA9ICh2b2lkICopYnA7CisJbWVtY3B5KGJwLCBhZGRyX3B0cnMsIHFsZW4pOworCSpoZSA9IE5FVERCX1NVQ0NFU1M7CisJcmV0dXJuIGhlbnQ7Citub3NwYzoKKwlmcmVlKGFsaWFzZXMpOworCWVycm5vID0gRU5PU1BDOworCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCXJldHVybiBOVUxMOworfQorCisvKiBUaGUgcHJvdG90eXBlIG9mIGdldGhvc3RieW5hbWVfciBpcyBmcm9tIGdsaWJjLCBub3QgdGhhdCBpbiBuZXRic2QuICovCitpbnQKK2dldGhvc3RieW5hbWVfcihjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaG9zdGVudCAqaHAsIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZmxlbiwKKyAgICBzdHJ1Y3QgaG9zdGVudCAqKnJlc3VsdCwgaW50ICplcnJvcnApCit7CisJcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCisJaWYgKHJlcyA9PSBOVUxMKSB7CisJICAqcmVzdWx0ID0gTlVMTDsKKwkJKmVycm9ycCA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gLTE7CisJfQorCisJX0RJQUdBU1NFUlQobmFtZSAhPSBOVUxMKTsKKworCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KSB7CisJCSpyZXN1bHQgPSBnZXRob3N0YnluYW1lX2ludGVybmFsKG5hbWUsIEFGX0lORVQ2LCByZXMsIGhwLCBidWYsIGJ1ZmxlbiwgZXJyb3JwLCBORVRJRF9VTlNFVCwKKwkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFSS19VTlNFVCk7CisJCWlmICgqcmVzdWx0KSB7CisJCQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwkJCXJldHVybiAwOworCQl9CisJfQorCSpyZXN1bHQgPSBnZXRob3N0YnluYW1lX2ludGVybmFsKG5hbWUsIEFGX0lORVQsIHJlcywgaHAsIGJ1ZiwgYnVmbGVuLCBlcnJvcnAsIE5FVElEX1VOU0VULAorCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BUktfVU5TRVQpOworCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCWlmICghKnJlc3VsdCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkgIGVycm5vID0gRVJBTkdFOworCSAgcmV0dXJuIEVSQU5HRTsgLyogUmV0dXJuIGVycm9yIGFzIGluIGxpbnV4IG1hbnVhbCBwYWdlLiAqLworCX0KKwlyZXR1cm4gKCpyZXN1bHQpID8gMCA6IC0xOworfQorCisvKiBUaGUgcHJvdG90eXBlIG9mIGdldGhvc3RieW5hbWUyX3IgaXMgZnJvbSBnbGliYywgbm90IHRoYXQgaW4gbmV0YnNkLiAqLworaW50CitnZXRob3N0YnluYW1lMl9yKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpidWYsCisgICAgc2l6ZV90IGJ1Zmxlbiwgc3RydWN0IGhvc3RlbnQgKipyZXN1bHQsIGludCAqZXJyb3JwKQoreworCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKKworCWlmIChyZXMgPT0gTlVMTCkgeworCQkqcmVzdWx0ID0gTlVMTDsKKwkJKmVycm9ycCA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gLTE7CisJfQorCSpyZXN1bHQgPSBnZXRob3N0YnluYW1lX2ludGVybmFsKG5hbWUsIGFmLCByZXMsIGhwLCBidWYsIGJ1ZmxlbiwgZXJyb3JwLCBORVRJRF9VTlNFVCwKKwkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNQVJLX1VOU0VUKTsKKwlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwlpZiAoISpyZXN1bHQgJiYgZXJybm8gPT0gRU5PU1BDKSB7CisJCWVycm5vID0gRVJBTkdFOworCQlyZXR1cm4gRVJBTkdFOworCX0KKwlyZXR1cm4gKCpyZXN1bHQpID8gMCA6IC0xOworfQorCitfX0xJQkNfSElEREVOX18gRklMRSogYW5kcm9pZF9vcGVuX3Byb3h5KCkgeworCWNvbnN0IGNoYXIqIGNhY2hlX21vZGUgPSBnZXRlbnYoIkFORFJPSURfRE5TX01PREUiKTsKKwlib29sIHVzZV9wcm94eSA9IChjYWNoZV9tb2RlID09IE5VTEwgfHwgc3RyY21wKGNhY2hlX21vZGUsICJsb2NhbCIpICE9IDApOworCWlmICghdXNlX3Byb3h5KSB7CisJCXJldHVybiBOVUxMOworCX0KKworCWludCBzID0gc29ja2V0KEFGX1VOSVgsIFNPQ0tfU1RSRUFNIHwgU09DS19DTE9FWEVDLCAwKTsKKwlpZiAocyA9PSAtMSkgeworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwljb25zdCBpbnQgb25lID0gMTsKKwlzZXRzb2Nrb3B0KHMsIFNPTF9TT0NLRVQsIFNPX1JFVVNFQUREUiwgJm9uZSwgc2l6ZW9mKG9uZSkpOworCisJc3RydWN0IHNvY2thZGRyX3VuIHByb3h5X2FkZHI7CisJbWVtc2V0KCZwcm94eV9hZGRyLCAwLCBzaXplb2YocHJveHlfYWRkcikpOworCXByb3h5X2FkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7CisJc3RybGNweShwcm94eV9hZGRyLnN1bl9wYXRoLCAiL2Rldi9zb2NrZXQvZG5zcHJveHlkIiwgc2l6ZW9mKHByb3h5X2FkZHIuc3VuX3BhdGgpKTsKKworCWlmIChURU1QX0ZBSUxVUkVfUkVUUlkoY29ubmVjdChzLCAoY29uc3Qgc3RydWN0IHNvY2thZGRyKikgJnByb3h5X2FkZHIsIHNpemVvZihwcm94eV9hZGRyKSkpICE9IDApIHsKKwkJY2xvc2Uocyk7CisJCXJldHVybiBOVUxMOworCX0KKworCXJldHVybiBmZG9wZW4ocywgInIrIik7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCithbmRyb2lkX3JlYWRfaG9zdGVudChGSUxFKiBwcm94eSwgc3RydWN0IGhvc3RlbnQqIGhwLCBjaGFyKiBoYnVmLCBzaXplX3QgaGJ1ZmxlbiwgaW50ICpoZSkKK3sKKwl1aW50MzJfdCBzaXplOworCWNoYXIgYnVmWzRdOworCWlmIChmcmVhZChidWYsIDEsIHNpemVvZihidWYpLCBwcm94eSkgIT0gc2l6ZW9mKGJ1ZikpIHJldHVybiBOVUxMOworCisJLy8gVGhpcyBpcyByZWFkaW5nIHNlcmlhbGl6ZWQgZGF0YSBmcm9tIHN5c3RlbS9uZXRkL3NlcnZlci9EbnNQcm94eUxpc3RlbmVyLmNwcAorCS8vIGFuZCBjaGFuZ2VzIGhlcmUgbmVlZCB0byBiZSBtYXRjaGVkIHRoZXJlLgorCWludCByZXN1bHRfY29kZSA9IHN0cnRvbChidWYsIE5VTEwsIDEwKTsKKwlpZiAocmVzdWx0X2NvZGUgIT0gRG5zUHJveHlRdWVyeVJlc3VsdCkgeworCQlmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSk7CisJCSpoZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7CisJc2l6ZSA9IG50b2hsKHNpemUpOworCisJbWVtc2V0KGhwLCAwLCBzaXplb2YoKmhwKSk7CisJY2hhciAqcHRyID0gaGJ1ZjsKKwljaGFyICpoYnVmX2VuZCA9IGhidWYgKyBoYnVmbGVuOworCisJaWYgKHB0ciArIHNpemUgPiBoYnVmX2VuZCkgeworCQlnb3RvIG5vc3BjOworCX0KKwlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7CisJaHAtPmhfbmFtZSA9IHB0cjsKKwlwdHIgKz0gc2l6ZTsKKworCWNoYXIgKmFsaWFzZXNfcHRyc1tNQVhBTElBU0VTXTsKKwljaGFyICoqYWxpYXNlcyA9ICZhbGlhc2VzX3B0cnNbMF07CisKKwl3aGlsZSAoMSkgeworCQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7CisJCXNpemUgPSBudG9obChzaXplKTsKKworCQlpZiAoc2l6ZSA9PSAwKSB7CisJCQkqYWxpYXNlcyA9IE5VTEw7CisJCQlicmVhazsKKwkJfQorCQlpZiAocHRyICsgc2l6ZSA+IGhidWZfZW5kKSB7CisJCSAgZ290byBub3NwYzsKKwkJfQorCQlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7CisJCWlmIChhbGlhc2VzIDwgJmFsaWFzZXNfcHRyc1tNQVhBTElBU0VTIC0gMV0pIHsKKwkJICAqYWxpYXNlcysrID0gcHRyOworCQl9CisJCXB0ciArPSBzaXplOworCX0KKworCWludCBhbGlhc2VzX2xlbiA9ICgoaW50KShhbGlhc2VzIC0gYWxpYXNlc19wdHJzKSArIDEpICogc2l6ZW9mKCpocC0+aF9hbGlhc2VzKTsKKwlpZiAocHRyICsgYWxpYXNlc19sZW4gPiBoYnVmX2VuZCkgeworCQlnb3RvIG5vc3BjOworCX0KKwlocC0+aF9hbGlhc2VzID0gKHZvaWQqKXB0cjsKKwltZW1jcHkocHRyLCBhbGlhc2VzX3B0cnMsIGFsaWFzZXNfbGVuKTsKKwlwdHIgKz0gYWxpYXNlc19sZW47CisKKwlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7CisJaHAtPmhfYWRkcnR5cGUgPSBudG9obChzaXplKTsKKworCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKKwlocC0+aF9sZW5ndGggPSBudG9obChzaXplKTsKKworCWNoYXIgKmFkZHJfcHRyc1tNQVhBRERSU107CisJY2hhciAqKmFkZHJfcCA9ICZhZGRyX3B0cnNbMF07CisKKwl3aGlsZSAoMSkgeworCQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7CisJCXNpemUgPSBudG9obChzaXplKTsKKwkJaWYgKHNpemUgPT0gMCkgeworCQkJKmFkZHJfcCA9IE5VTEw7CisJCQlicmVhazsKKwkJfQorCQlpZiAocHRyICsgc2l6ZSA+IGhidWZfZW5kKSB7CisJCSAgZ290byBub3NwYzsKKwkJfQorCQlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7CisJCWlmIChhZGRyX3AgPCAmYWRkcl9wdHJzW01BWEFERFJTIC0gMV0pIHsKKwkJICAqYWRkcl9wKysgPSBwdHI7CisJCX0KKwkJcHRyICs9IHNpemU7CisJfQorCisJaW50IGFkZHJzX2xlbiA9ICgoaW50KShhZGRyX3AgLSBhZGRyX3B0cnMpICsgMSkgKiBzaXplb2YoKmhwLT5oX2FkZHJfbGlzdCk7CisJaWYgKHB0ciArIGFkZHJzX2xlbiA+IGhidWZfZW5kKSB7CisJCWdvdG8gbm9zcGM7CisJfQorCWhwLT5oX2FkZHJfbGlzdCA9ICh2b2lkKilwdHI7CisJbWVtY3B5KHB0ciwgYWRkcl9wdHJzLCBhZGRyc19sZW4pOworCSpoZSA9IE5FVERCX1NVQ0NFU1M7CisJcmV0dXJuIGhwOworCitub3NwYzoKKwkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwllcnJubyA9IEVOT1NQQzsKKwlyZXR1cm4gTlVMTDsKK30KKworc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKK2dldGhvc3RieW5hbWVfaW50ZXJuYWxfcmVhbChjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYsIHJlc19zdGF0ZSByZXMsIHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBidWZsZW4sIGludCAqaGUpCit7CisJY29uc3QgY2hhciAqY3A7CisJc3RydWN0IGdldG5hbWFkZHIgaW5mbzsKKwljaGFyIGhidWZbTUFYSE9TVE5BTUVMRU5dOworCXNpemVfdCBzaXplOworCXN0YXRpYyBjb25zdCBuc19kdGFiIGR0YWJbXSA9IHsKKwkJTlNfRklMRVNfQ0IoX2hmX2dldGh0YnluYW1lLCBOVUxMKQorCQl7IE5TU1JDX0ROUywgX2Ruc19nZXRodGJ5bmFtZSwgTlVMTCB9LAkvKiBmb3JjZSAtREhFU0lPRCAqLworCQlOU19OSVNfQ0IoX3lwX2dldGh0YnluYW1lLCBOVUxMKQorCQlOU19OVUxMX0NCCisJfTsKKworCV9ESUFHQVNTRVJUKG5hbWUgIT0gTlVMTCk7CisKKwlzd2l0Y2ggKGFmKSB7CisJY2FzZSBBRl9JTkVUOgorCQlzaXplID0gTlNfSU5BRERSU1o7CisJCWJyZWFrOworCWNhc2UgQUZfSU5FVDY6CisJCXNpemUgPSBOU19JTjZBRERSU1o7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCQllcnJubyA9IEVBRk5PU1VQUE9SVDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCWlmIChidWZsZW4gPCBzaXplKQorCQlnb3RvIG5vc3BjOworCisJaHAtPmhfYWRkcnR5cGUgPSBhZjsKKwlocC0+aF9sZW5ndGggPSAoaW50KXNpemU7CisKKwkvKgorCSAqIGlmIHRoZXJlIGFyZW4ndCBhbnkgZG90cywgaXQgY291bGQgYmUgYSB1c2VyLWxldmVsIGFsaWFzLgorCSAqIHRoaXMgaXMgYWxzbyBkb25lIGluIHJlc19ucXVlcnkoKSBzaW5jZSB3ZSBhcmUgbm90IHRoZSBvbmx5CisJICogZnVuY3Rpb24gdGhhdCBsb29rcyB1cCBob3N0IG5hbWVzLgorCSAqLworCWlmICghc3RyY2hyKG5hbWUsICcuJykgJiYgKGNwID0gcmVzX2hvc3RhbGlhcyhyZXMsIG5hbWUsCisJICAgIGhidWYsIHNpemVvZihoYnVmKSkpKQorCQluYW1lID0gY3A7CisKKwkvKgorCSAqIGRpc2FsbG93IG5hbWVzIGNvbnNpc3Rpbmcgb25seSBvZiBkaWdpdHMvZG90cywgdW5sZXNzCisJICogdGhleSBlbmQgaW4gYSBkb3QuCisJICovCisJaWYgKGlzZGlnaXQoKHVfY2hhcikgbmFtZVswXSkpCisJCWZvciAoY3AgPSBuYW1lOzsgKytjcCkgeworCQkJaWYgKCEqY3ApIHsKKwkJCQlpZiAoKi0tY3AgPT0gJy4nKQorCQkJCQlicmVhazsKKwkJCQkvKgorCQkJCSAqIEFsbC1udW1lcmljLCBubyBkb3QgYXQgdGhlIGVuZC4KKwkJCQkgKiBGYWtlIHVwIGEgaG9zdGVudCBhcyBpZiB3ZSdkIGFjdHVhbGx5CisJCQkJICogZG9uZSBhIGxvb2t1cC4KKwkJCQkgKi8KKwkJCQlnb3RvIGZha2U7CisJCQl9CisJCQlpZiAoIWlzZGlnaXQoKHVfY2hhcikgKmNwKSAmJiAqY3AgIT0gJy4nKQorCQkJCWJyZWFrOworCQl9CisJaWYgKChpc3hkaWdpdCgodV9jaGFyKSBuYW1lWzBdKSAmJiBzdHJjaHIobmFtZSwgJzonKSAhPSBOVUxMKSB8fAorCSAgICBuYW1lWzBdID09ICc6JykKKwkJZm9yIChjcCA9IG5hbWU7OyArK2NwKSB7CisJCQlpZiAoISpjcCkgeworCQkJCWlmICgqLS1jcCA9PSAnLicpCisJCQkJCWJyZWFrOworCQkJCS8qCisJCQkJICogQWxsLUlQdjYtbGVnYWwsIG5vIGRvdCBhdCB0aGUgZW5kLgorCQkJCSAqIEZha2UgdXAgYSBob3N0ZW50IGFzIGlmIHdlJ2QgYWN0dWFsbHkKKwkJCQkgKiBkb25lIGEgbG9va3VwLgorCQkJCSAqLworCQkJCWdvdG8gZmFrZTsKKwkJCX0KKwkJCWlmICghaXN4ZGlnaXQoKHVfY2hhcikgKmNwKSAmJiAqY3AgIT0gJzonICYmICpjcCAhPSAnLicpCisJCQkJYnJlYWs7CisJCX0KKworCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCWluZm8uaHAgPSBocDsKKwlpbmZvLmJ1ZiA9IGJ1ZjsKKwlpbmZvLmJ1ZmxlbiA9IGJ1ZmxlbjsKKwlpbmZvLmhlID0gaGU7CisJaWYgKG5zZGlzcGF0Y2goJmluZm8sIGR0YWIsIE5TREJfSE9TVFMsICJnZXRob3N0YnluYW1lIiwKKwkgICAgZGVmYXVsdF9kbnNfZmlsZXMsIG5hbWUsIHN0cmxlbihuYW1lKSwgYWYpICE9IE5TX1NVQ0NFU1MpCisJCXJldHVybiBOVUxMOworCSpoZSA9IE5FVERCX1NVQ0NFU1M7CisJcmV0dXJuIGhwOworbm9zcGM6CisJKmhlID0gTkVUREJfSU5URVJOQUw7CisJZXJybm8gPSBFTk9TUEM7CisJcmV0dXJuIE5VTEw7CitmYWtlOgorCUhFTlRfQVJSQVkoaHAtPmhfYWRkcl9saXN0LCAxLCBidWYsIGJ1Zmxlbik7CisJSEVOVF9BUlJBWShocC0+aF9hbGlhc2VzLCAwLCBidWYsIGJ1Zmxlbik7CisKKwlocC0+aF9hbGlhc2VzWzBdID0gTlVMTDsKKwlpZiAoc2l6ZSA+IGJ1ZmxlbikKKwkJZ290byBub3NwYzsKKworCWlmIChpbmV0X3B0b24oYWYsIG5hbWUsIGJ1ZikgPD0gMCkgeworCQkqaGUgPSBIT1NUX05PVF9GT1VORDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCWhwLT5oX2FkZHJfbGlzdFswXSA9IGJ1ZjsKKwlocC0+aF9hZGRyX2xpc3RbMV0gPSBOVUxMOworCWJ1ZiArPSBzaXplOworCWJ1ZmxlbiAtPSBzaXplOworCUhFTlRfU0NPUFkoaHAtPmhfbmFtZSwgbmFtZSwgYnVmLCBidWZsZW4pOworCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KQorCQltYXBfdjR2Nl9ob3N0ZW50KGhwLCAmYnVmLCBidWYgKyBidWZsZW4pOworCSpoZSA9IE5FVERCX1NVQ0NFU1M7CisJcmV0dXJuIGhwOworfQorCisvLyB2ZXJ5IHNpbWlsYXIgaW4gcHJveHktbmVzcyB0byBhbmRyb2lkX2dldGFkZHJpbmZvX3Byb3h5CitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYsIHJlc19zdGF0ZSByZXMsIHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqaGJ1ZiwKKyAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGhidWZsZW4sIGludCAqZXJyb3JwLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKK3sKKwlGSUxFKiBwcm94eSA9IGFuZHJvaWRfb3Blbl9wcm94eSgpOworCWlmIChwcm94eSA9PSBOVUxMKSB7CisJCS8vIEVpdGhlciB3ZSdyZSBub3Qgc3VwcG9zZWQgdG8gYmUgdXNpbmcgdGhlIHByb3h5IG9yIHRoZSBwcm94eSBpcyB1bmF2YWlsYWJsZS4KKwkJcmVzX3NldG5ldGlkKHJlcywgbmV0aWQpOworCQlyZXNfc2V0bWFyayhyZXMsIG1hcmspOworCQlyZXR1cm4gZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbF9yZWFsKG5hbWUsIGFmLCByZXMsIGhwLCBoYnVmLCBoYnVmbGVuLCBlcnJvcnApOworCX0KKworCW5ldGlkID0gX19uZXRkQ2xpZW50RGlzcGF0Y2gubmV0SWRGb3JSZXNvbHYobmV0aWQpOworCisJLy8gVGhpcyBpcyB3cml0aW5nIHRvIHN5c3RlbS9uZXRkL3NlcnZlci9EbnNQcm94eUxpc3RlbmVyLmNwcCBhbmQgY2hhbmdlcworCS8vIGhlcmUgbmVlZCB0byBiZSBtYXRjaGVkIHRoZXJlLgorCWlmIChmcHJpbnRmKHByb3h5LCAiZ2V0aG9zdGJ5bmFtZSAldSAlcyAlZCIsCisJCQluZXRpZCwKKwkJCW5hbWUgPT0gTlVMTCA/ICJeIiA6IG5hbWUsCisJCQlhZikgPCAwKSB7CisJCWZjbG9zZShwcm94eSk7CisJCXJldHVybiBOVUxMOworCX0KKworCWlmIChmcHV0YygwLCBwcm94eSkgPT0gRU9GIHx8IGZmbHVzaChwcm94eSkgIT0gMCkgeworCQlmY2xvc2UocHJveHkpOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwlzdHJ1Y3QgaG9zdGVudCogcmVzdWx0ID0gYW5kcm9pZF9yZWFkX2hvc3RlbnQocHJveHksIGhwLCBoYnVmLCBoYnVmbGVuLCBlcnJvcnApOworCWZjbG9zZShwcm94eSk7CisJcmV0dXJuIHJlc3VsdDsKK30KKworLyogVGhlIHByb3RvdHlwZSBvZiBnZXRob3N0YnlhZGRyX3IgaXMgZnJvbSBnbGliYywgbm90IHRoYXQgaW4gbmV0YnNkLiAqLworaW50IGdldGhvc3RieWFkZHJfcihjb25zdCB2b2lkICphZGRyLCBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsIHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICBzaXplX3QgYnVmbGVuLCBzdHJ1Y3QgaG9zdGVudCAqKnJlc3VsdCwgaW50ICpoX2Vycm5vcCkKK3sKKwkqcmVzdWx0ID0gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5X2ludGVybmFsKGFkZHIsIGxlbiwgYWYsIGhwLCBidWYsIGJ1ZmxlbiwgaF9lcnJub3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkVUSURfVU5TRVQsIE1BUktfVU5TRVQpOworCWlmICghKnJlc3VsdCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkJZXJybm8gPSBFUkFOR0U7CisJCXJldHVybiBFUkFOR0U7CisJfQorCXJldHVybiAoKnJlc3VsdCkgPyAwIDogLTE7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCithbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcmVhbChjb25zdCB2b2lkICphZGRyLCBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsIHN0cnVjdCBob3N0ZW50ICpocCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZmxlbiwgaW50ICpoZSwgdW5zaWduZWQgbmV0aWQsIHVuc2lnbmVkIG1hcmspCit7CisJY29uc3QgdV9jaGFyICp1YWRkciA9IChjb25zdCB1X2NoYXIgKilhZGRyOworCXNvY2tsZW5fdCBzaXplOworCXN0cnVjdCBnZXRuYW1hZGRyIGluZm87CisJc3RhdGljIGNvbnN0IG5zX2R0YWIgZHRhYltdID0geworCQlOU19GSUxFU19DQihfaGZfZ2V0aHRieWFkZHIsIE5VTEwpCisJCXsgTlNTUkNfRE5TLCBfZG5zX2dldGh0YnlhZGRyLCBOVUxMIH0sCS8qIGZvcmNlIC1ESEVTSU9EICovCisJCU5TX05JU19DQihfeXBfZ2V0aHRieWFkZHIsIE5VTEwpCisJCU5TX05VTExfQ0IKKwl9OworCisJX0RJQUdBU1NFUlQoYWRkciAhPSBOVUxMKTsKKworCWlmIChhZiA9PSBBRl9JTkVUNiAmJiBsZW4gPT0gTlNfSU42QUREUlNaICYmCisJICAgIChJTjZfSVNfQUREUl9MSU5LTE9DQUwoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpIHx8CisJICAgICBJTjZfSVNfQUREUl9TSVRFTE9DQUwoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpKSkgeworCQkqaGUgPSBIT1NUX05PVF9GT1VORDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCWlmIChhZiA9PSBBRl9JTkVUNiAmJiBsZW4gPT0gTlNfSU42QUREUlNaICYmCisJICAgIChJTjZfSVNfQUREUl9WNE1BUFBFRCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikgfHwKKwkgICAgIElONl9JU19BRERSX1Y0Q09NUEFUKChjb25zdCBzdHJ1Y3QgaW42X2FkZHIgKilhZGRyKSkpIHsKKwkJLyogVW5tYXAuICovCisJCXVhZGRyICs9IE5TX0lONkFERFJTWiAtIE5TX0lOQUREUlNaOworCQlhZGRyID0gdWFkZHI7CisJCWFmID0gQUZfSU5FVDsKKwkJbGVuID0gTlNfSU5BRERSU1o7CisJfQorCXN3aXRjaCAoYWYpIHsKKwljYXNlIEFGX0lORVQ6CisJCXNpemUgPSBOU19JTkFERFJTWjsKKwkJYnJlYWs7CisJY2FzZSBBRl9JTkVUNjoKKwkJc2l6ZSA9IE5TX0lONkFERFJTWjsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJZXJybm8gPSBFQUZOT1NVUFBPUlQ7CisJCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaWYgKHNpemUgIT0gbGVuKSB7CisJCWVycm5vID0gRUlOVkFMOworCQkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCWluZm8uaHAgPSBocDsKKwlpbmZvLmJ1ZiA9IGJ1ZjsKKwlpbmZvLmJ1ZmxlbiA9IGJ1ZmxlbjsKKwlpbmZvLmhlID0gaGU7CisJKmhlID0gTkVUREJfSU5URVJOQUw7CisJaWYgKG5zZGlzcGF0Y2goJmluZm8sIGR0YWIsIE5TREJfSE9TVFMsICJnZXRob3N0YnlhZGRyIiwKKwkgICAgZGVmYXVsdF9kbnNfZmlsZXMsIHVhZGRyLCBsZW4sIGFmLCBuZXRpZCwgbWFyaykgIT0gTlNfU1VDQ0VTUykKKwkJcmV0dXJuIE5VTEw7CisJKmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gaHA7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCoKK2FuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eV9pbnRlcm5hbChjb25zdCB2b2lkKiBhZGRyLCBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqaGJ1Ziwgc2l6ZV90IGhidWZsZW4sIGludCAqaGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQoreworCUZJTEUqIHByb3h5ID0gYW5kcm9pZF9vcGVuX3Byb3h5KCk7CisJaWYgKHByb3h5ID09IE5VTEwpIHsKKwkJLy8gRWl0aGVyIHdlJ3JlIG5vdCBzdXBwb3NlZCB0byBiZSB1c2luZyB0aGUgcHJveHkgb3IgdGhlIHByb3h5IGlzIHVuYXZhaWxhYmxlLgorCQlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3JlYWwoYWRkcixsZW4sIGFmLCBocCwgaGJ1ZiwgaGJ1ZmxlbiwgaGUsIG5ldGlkLCBtYXJrKTsKKwl9CisKKwljaGFyIGJ1ZltJTkVUNl9BRERSU1RSTEVOXTsgIC8vYmlnIGVub3VnaCBmb3IgSVB2NCBhbmQgSVB2NgorCWNvbnN0IGNoYXIgKiBhZGRyU3RyID0gaW5ldF9udG9wKGFmLCBhZGRyLCBidWYsIHNpemVvZihidWYpKTsKKwlpZiAoYWRkclN0ciA9PSBOVUxMKSB7CisJCWZjbG9zZShwcm94eSk7CisJCXJldHVybiBOVUxMOworCX0KKworCW5ldGlkID0gX19uZXRkQ2xpZW50RGlzcGF0Y2gubmV0SWRGb3JSZXNvbHYobmV0aWQpOworCisJaWYgKGZwcmludGYocHJveHksICJnZXRob3N0YnlhZGRyICVzICVkICVkICV1IiwKKwkJCWFkZHJTdHIsIGxlbiwgYWYsIG5ldGlkKSA8IDApIHsKKwkJZmNsb3NlKHByb3h5KTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaWYgKGZwdXRjKDAsIHByb3h5KSA9PSBFT0YgfHwgZmZsdXNoKHByb3h5KSAhPSAwKSB7CisJCWZjbG9zZShwcm94eSk7CisJCXJldHVybiBOVUxMOworCX0KKworCXN0cnVjdCBob3N0ZW50ICpyZXN1bHQgPSBhbmRyb2lkX3JlYWRfaG9zdGVudChwcm94eSwgaHAsIGhidWYsIGhidWZsZW4sIGhlKTsKKwlmY2xvc2UocHJveHkpOworCXJldHVybiByZXN1bHQ7Cit9CisKK3N0cnVjdCBob3N0ZW50KgorbmV0YnNkX2dldGhvc3RlbnRfcihGSUxFICpoZiwgc3RydWN0IGhvc3RlbnQgKmhlbnQsIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZmxlbiwgaW50ICpoZSkKK3sKKwljaGFyICpwLCAqbmFtZTsKKwljaGFyICpjcCwgKipxOworCWludCBhZiwgbGVuOworCXNpemVfdCBhbnVtOworCWNoYXIgKiphbGlhc2VzOworCXNpemVfdCBtYXhhbGlhc2VzOworCXN0cnVjdCBpbjZfYWRkciBob3N0X2FkZHI7CisKKwlpZiAoaGYgPT0gTlVMTCkgeworCQkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiBOVUxMOworCX0KKwlwID0gTlVMTDsKKwlzZXR1cChhbGlhc2VzLCBtYXhhbGlhc2VzKTsKKworCS8qIEFsbG9jYXRlIGEgbmV3IHNwYWNlIHRvIHJlYWQgZmlsZSBsaW5lcyBsaWtlIHVwc3RyZWFtIGRvZXMuCisJICogVG8ga2VlcCByZWVudHJhbmN5IHdlIGNhbm5vdCB1c2UgX19yZXNfZ2V0X3N0YXRpYygpLT5ob3N0YnVmIGhlcmUsCisJICogYXMgdGhlIGJ1ZmZlciBtYXkgYmUgdXNlZCB0byBzdG9yZSBjb250ZW50IGZvciBhIHByZXZpb3VzIGhvc3RlbnQKKwkgKiByZXR1cm5lZCBieSBub24tcmVlbnRyYW50IGZ1bmN0aW9ucyBsaWtlIGdldGhvc3RieW5hbWUoKS4KKwkgKi8KKwljb25zdCBzaXplX3QgbGluZV9idWZfc2l6ZSA9IHNpemVvZihfX3Jlc19nZXRfc3RhdGljKCktPmhvc3RidWYpOworCWlmICgocCA9IG1hbGxvYyhsaW5lX2J1Zl9zaXplKSkgPT0gTlVMTCkgeworCSAgZ290byBub3NwYzsKKwl9CisJZm9yICg7OykgeworCQlpZiAoIWZnZXRzKHAsIGxpbmVfYnVmX3NpemUsIGhmKSkgeworCQkJZnJlZShwKTsKKwkJCWZyZWUoYWxpYXNlcyk7CisJCQkqaGUgPSBIT1NUX05PVF9GT1VORDsKKwkJCXJldHVybiBOVUxMOworICAgIAkJfQorCQlpZiAoKnAgPT0gJyMnKSB7CisJCQljb250aW51ZTsKKwkJfQorCQlpZiAoIShjcCA9IHN0cnBicmsocCwgIiNcbiIpKSkgeworCQkJY29udGludWU7CisJCX0KKwkJKmNwID0gJ1wwJzsKKwkJaWYgKCEoY3AgPSBzdHJwYnJrKHAsICIgXHQiKSkpCisJCQljb250aW51ZTsKKwkJKmNwKysgPSAnXDAnOworCQlpZiAoaW5ldF9wdG9uKEFGX0lORVQ2LCBwLCAmaG9zdF9hZGRyKSA+IDApIHsKKwkJCWFmID0gQUZfSU5FVDY7CisJCQlsZW4gPSBOU19JTjZBRERSU1o7CisJCX0gZWxzZSB7CisJCQlpZiAoaW5ldF9wdG9uKEFGX0lORVQsIHAsICZob3N0X2FkZHIpIDw9IDApCisJCQkJY29udGludWU7CisKKwkJCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKKwkJCWlmIChyZXMgPT0gTlVMTCkKKwkJCQlnb3RvIG5vc3BjOworCQkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpIHsKKwkJCQltYXBfdjR2Nl9hZGRyZXNzKGJ1ZiwgYnVmKTsKKwkJCQlhZiA9IEFGX0lORVQ2OworCQkJCWxlbiA9IE5TX0lONkFERFJTWjsKKwkJCX0gZWxzZSB7CisJCQkJYWYgPSBBRl9JTkVUOworCQkJCWxlbiA9IE5TX0lOQUREUlNaOworCQkJfQorCQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJCX0KKworCQkvKiBpZiB0aGlzIGlzIG5vdCBzb21ldGhpbmcgd2UncmUgbG9va2luZyBmb3IsIHNraXAgaXQuICovCisJCWlmIChoZW50LT5oX2FkZHJ0eXBlICE9IDAgJiYgaGVudC0+aF9hZGRydHlwZSAhPSBhZikKKwkJCWNvbnRpbnVlOworCQlpZiAoaGVudC0+aF9sZW5ndGggIT0gMCAmJiBoZW50LT5oX2xlbmd0aCAhPSBsZW4pCisJCQljb250aW51ZTsKKworCQl3aGlsZSAoKmNwID09ICcgJyB8fCAqY3AgPT0gJ1x0JykKKwkJCWNwKys7CisJCWlmICgoY3AgPSBzdHJwYnJrKG5hbWUgPSBjcCwgIiBcdCIpKSAhPSBOVUxMKQorCQkJKmNwKysgPSAnXDAnOworCQlxID0gYWxpYXNlczsKKwkJd2hpbGUgKGNwICYmICpjcCkgeworCQkJaWYgKCpjcCA9PSAnICcgfHwgKmNwID09ICdcdCcpIHsKKwkJCQljcCsrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJYWRkYWxpYXMocSwgY3AsIGFsaWFzZXMsIG1heGFsaWFzZXMpOworCQkJaWYgKChjcCA9IHN0cnBicmsoY3AsICIgXHQiKSkgIT0gTlVMTCkKKwkJCQkqY3ArKyA9ICdcMCc7CisJCX0KKwkJYnJlYWs7CisJfQorCWhlbnQtPmhfbGVuZ3RoID0gbGVuOworCWhlbnQtPmhfYWRkcnR5cGUgPSBhZjsKKwlIRU5UX0FSUkFZKGhlbnQtPmhfYWRkcl9saXN0LCAxLCBidWYsIGJ1Zmxlbik7CisJYW51bSA9IChzaXplX3QpKHEgLSBhbGlhc2VzKTsKKwlIRU5UX0FSUkFZKGhlbnQtPmhfYWxpYXNlcywgYW51bSwgYnVmLCBidWZsZW4pOworCUhFTlRfQ09QWShoZW50LT5oX2FkZHJfbGlzdFswXSwgJmhvc3RfYWRkciwgaGVudC0+aF9sZW5ndGgsIGJ1ZiwKKwkgICAgYnVmbGVuKTsKKwloZW50LT5oX2FkZHJfbGlzdFsxXSA9IE5VTEw7CisKKwlIRU5UX1NDT1BZKGhlbnQtPmhfbmFtZSwgbmFtZSwgYnVmLCBidWZsZW4pOworCWZvciAoc2l6ZV90IGkgPSAwOyBpIDwgYW51bTsgaSsrKQorCQlIRU5UX1NDT1BZKGhlbnQtPmhfYWxpYXNlc1tpXSwgYWxpYXNlc1tpXSwgYnVmLCBidWZsZW4pOworCWhlbnQtPmhfYWxpYXNlc1thbnVtXSA9IE5VTEw7CisKKwkqaGUgPSBORVREQl9TVUNDRVNTOworCWZyZWUocCk7CisJZnJlZShhbGlhc2VzKTsKKwlyZXR1cm4gaGVudDsKK25vc3BjOgorCWZyZWUocCk7CisJZnJlZShhbGlhc2VzKTsKKwllcnJubyA9IEVOT1NQQzsKKwkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwlyZXR1cm4gTlVMTDsKK30KKworc3RhdGljIHZvaWQKK21hcF92NHY2X2FkZHJlc3MoY29uc3QgY2hhciAqc3JjLCBjaGFyICpkc3QpCit7CisJdV9jaGFyICpwID0gKHVfY2hhciAqKWRzdDsKKwljaGFyIHRtcFtOU19JTkFERFJTWl07CisJaW50IGk7CisKKwlfRElBR0FTU0VSVChzcmMgIT0gTlVMTCk7CisJX0RJQUdBU1NFUlQoZHN0ICE9IE5VTEwpOworCisJLyogU3Rhc2ggYSB0ZW1wb3JhcnkgY29weSBzbyBvdXIgY2FsbGVyIGNhbiB1cGRhdGUgaW4gcGxhY2UuICovCisJKHZvaWQpbWVtY3B5KHRtcCwgc3JjLCBOU19JTkFERFJTWik7CisJLyogTWFyayB0aGlzIGlwdjYgYWRkciBhcyBhIG1hcHBlZCBpcHY0LiAqLworCWZvciAoaSA9IDA7IGkgPCAxMDsgaSsrKQorCQkqcCsrID0gMHgwMDsKKwkqcCsrID0gMHhmZjsKKwkqcCsrID0gMHhmZjsKKwkvKiBSZXRyaWV2ZSB0aGUgc2F2ZWQgY29weSBhbmQgd2UncmUgZG9uZS4gKi8KKwkodm9pZCltZW1jcHkocCwgdG1wLCBOU19JTkFERFJTWik7Cit9CisKK3N0YXRpYyB2b2lkCittYXBfdjR2Nl9ob3N0ZW50KHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqKmJwcCwgY2hhciAqZXApCit7CisJY2hhciAqKmFwOworCisJX0RJQUdBU1NFUlQoaHAgIT0gTlVMTCk7CisJX0RJQUdBU1NFUlQoYnBwICE9IE5VTEwpOworCV9ESUFHQVNTRVJUKGVwICE9IE5VTEwpOworCisJaWYgKGhwLT5oX2FkZHJ0eXBlICE9IEFGX0lORVQgfHwgaHAtPmhfbGVuZ3RoICE9IE5TX0lOQUREUlNaKQorCQlyZXR1cm47CisJaHAtPmhfYWRkcnR5cGUgPSBBRl9JTkVUNjsKKwlocC0+aF9sZW5ndGggPSBOU19JTjZBRERSU1o7CisJZm9yIChhcCA9IGhwLT5oX2FkZHJfbGlzdDsgKmFwOyBhcCsrKSB7CisJCWludCBpID0gKGludCkoc2l6ZW9mKGFsaWduKSAtCisJCSAgICAoc2l6ZV90KSgodV9sb25nKSpicHAgJSBzaXplb2YoYWxpZ24pKSk7CisKKwkJaWYgKGVwIC0gKmJwcCA8IChpICsgTlNfSU42QUREUlNaKSkgeworCQkJLyogT3V0IG9mIG1lbW9yeS4gIFRydW5jYXRlIGFkZHJlc3MgbGlzdCBoZXJlLiAgWFhYICovCisJCQkqYXAgPSBOVUxMOworCQkJcmV0dXJuOworCQl9CisJCSpicHAgKz0gaTsKKwkJbWFwX3Y0djZfYWRkcmVzcygqYXAsICpicHApOworCQkqYXAgPSAqYnBwOworCQkqYnBwICs9IE5TX0lONkFERFJTWjsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCithZGRyc29ydChjaGFyICoqYXAsIGludCBudW0sIHJlc19zdGF0ZSByZXMpCit7CisJaW50IGksIGo7CisJY2hhciAqKnA7CisJc2hvcnQgYXZhbFtNQVhBRERSU107CisJaW50IG5lZWRzb3J0ID0gMDsKKworCV9ESUFHQVNTRVJUKGFwICE9IE5VTEwpOworCisJcCA9IGFwOworCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKywgcCsrKSB7CisJICAgIGZvciAoaiA9IDAgOyAodW5zaWduZWQpaiA8IHJlcy0+bnNvcnQ7IGorKykKKwkJaWYgKHJlcy0+c29ydF9saXN0W2pdLmFkZHIuc19hZGRyID09CisJCSAgICAoKChzdHJ1Y3QgaW5fYWRkciAqKSh2b2lkICopKCpwKSktPnNfYWRkciAmCisJCSAgICByZXMtPnNvcnRfbGlzdFtqXS5tYXNrKSkKKwkJCWJyZWFrOworCSAgICBhdmFsW2ldID0gajsKKwkgICAgaWYgKG5lZWRzb3J0ID09IDAgJiYgaSA+IDAgJiYgaiA8IGF2YWxbaS0xXSkKKwkJbmVlZHNvcnQgPSBpOworCX0KKwlpZiAoIW5lZWRzb3J0KQorCSAgICByZXR1cm47CisKKwl3aGlsZSAobmVlZHNvcnQgPCBudW0pIHsKKwkgICAgZm9yIChqID0gbmVlZHNvcnQgLSAxOyBqID49IDA7IGotLSkgeworCQlpZiAoYXZhbFtqXSA+IGF2YWxbaisxXSkgeworCQkgICAgY2hhciAqaHA7CisKKwkJICAgIGkgPSBhdmFsW2pdOworCQkgICAgYXZhbFtqXSA9IGF2YWxbaisxXTsKKwkJICAgIGF2YWxbaisxXSA9IGk7CisKKwkJICAgIGhwID0gYXBbal07CisJCSAgICBhcFtqXSA9IGFwW2orMV07CisJCSAgICBhcFtqKzFdID0gaHA7CisJCX0gZWxzZQorCQkgICAgYnJlYWs7CisJICAgIH0KKwkgICAgbmVlZHNvcnQrKzsKKwl9Cit9CisKKy8qQVJHU1VTRUQqLworc3RhdGljIGludAorX2Ruc19nZXRodGJ5bmFtZSh2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKK3sKKwlxdWVyeWJ1ZiAqYnVmOworCWludCBuLCB0eXBlOworCXN0cnVjdCBob3N0ZW50ICpocDsKKwljb25zdCBjaGFyICpuYW1lOworCXJlc19zdGF0ZSByZXM7CisJc3RydWN0IGdldG5hbWFkZHIgKmluZm8gPSBydjsKKworCV9ESUFHQVNTRVJUKHJ2ICE9IE5VTEwpOworCisJbmFtZSA9IHZhX2FyZyhhcCwgY2hhciAqKTsKKwkvKiBOT1NUUklDVCBza2lwIHN0cmluZyBsZW4gKi8odm9pZCl2YV9hcmcoYXAsIGludCk7CisJaW5mby0+aHAtPmhfYWRkcnR5cGUgPSB2YV9hcmcoYXAsIGludCk7CisKKwlzd2l0Y2ggKGluZm8tPmhwLT5oX2FkZHJ0eXBlKSB7CisJY2FzZSBBRl9JTkVUOgorCQlpbmZvLT5ocC0+aF9sZW5ndGggPSBOU19JTkFERFJTWjsKKwkJdHlwZSA9IFRfQTsKKwkJYnJlYWs7CisJY2FzZSBBRl9JTkVUNjoKKwkJaW5mby0+aHAtPmhfbGVuZ3RoID0gTlNfSU42QUREUlNaOworCQl0eXBlID0gVF9BQUFBOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlyZXR1cm4gTlNfVU5BVkFJTDsKKwl9CisJYnVmID0gbWFsbG9jKHNpemVvZigqYnVmKSk7CisJaWYgKGJ1ZiA9PSBOVUxMKSB7CisJCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCXJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCWlmIChyZXMgPT0gTlVMTCkgeworCQlmcmVlKGJ1Zik7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJbiA9IHJlc19uc2VhcmNoKHJlcywgbmFtZSwgQ19JTiwgdHlwZSwgYnVmLT5idWYsIChpbnQpc2l6ZW9mKGJ1Zi0+YnVmKSk7CisJaWYgKG4gPCAwKSB7CisJCWZyZWUoYnVmKTsKKwkJZGVidWdwcmludGYoInJlc19uc2VhcmNoIGZhaWxlZCAoJWQpXG4iLCByZXMsIG4pOworCQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwkJcmV0dXJuIE5TX05PVEZPVU5EOworCX0KKwlocCA9IGdldGFuc3dlcihidWYsIG4sIG5hbWUsIHR5cGUsIHJlcywgaW5mby0+aHAsIGluZm8tPmJ1ZiwKKwkgICAgaW5mby0+YnVmbGVuLCBpbmZvLT5oZSk7CisJZnJlZShidWYpOworCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCWlmIChocCA9PSBOVUxMKQorCQlzd2l0Y2ggKCppbmZvLT5oZSkgeworCQljYXNlIEhPU1RfTk9UX0ZPVU5EOgorCQkJcmV0dXJuIE5TX05PVEZPVU5EOworCQljYXNlIFRSWV9BR0FJTjoKKwkJCXJldHVybiBOU19UUllBR0FJTjsKKwkJZGVmYXVsdDoKKwkJCXJldHVybiBOU19VTkFWQUlMOworCQl9CisJcmV0dXJuIE5TX1NVQ0NFU1M7Cit9CisKKy8qQVJHU1VTRUQqLworc3RhdGljIGludAorX2Ruc19nZXRodGJ5YWRkcih2b2lkICpydiwgdm9pZAkqY2JfZGF0YSwgdmFfbGlzdCBhcCkKK3sKKwljaGFyIHFidWZbTUFYRE5BTUUgKyAxXSwgKnFwLCAqZXA7CisJaW50IG47CisJcXVlcnlidWYgKmJ1ZjsKKwlzdHJ1Y3QgaG9zdGVudCAqaHA7CisJY29uc3QgdW5zaWduZWQgY2hhciAqdWFkZHI7CisJaW50IGFkdmFuY2U7CisJcmVzX3N0YXRlIHJlczsKKwljaGFyICpiZjsKKwlzaXplX3QgYmxlbjsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbyA9IHJ2OworCXVuc2lnbmVkIG5ldGlkLCBtYXJrOworCisJX0RJQUdBU1NFUlQocnYgIT0gTlVMTCk7CisKKwl1YWRkciA9IHZhX2FyZyhhcCwgdW5zaWduZWQgY2hhciAqKTsKKwlpbmZvLT5ocC0+aF9sZW5ndGggPSB2YV9hcmcoYXAsIGludCk7CisJaW5mby0+aHAtPmhfYWRkcnR5cGUgPSB2YV9hcmcoYXAsIGludCk7CisJbmV0aWQgPSB2YV9hcmcoYXAsIHVuc2lnbmVkKTsKKwltYXJrID0gdmFfYXJnKGFwLCB1bnNpZ25lZCk7CisKKwlzd2l0Y2ggKGluZm8tPmhwLT5oX2FkZHJ0eXBlKSB7CisJY2FzZSBBRl9JTkVUOgorCQkodm9pZClzbnByaW50ZihxYnVmLCBzaXplb2YocWJ1ZiksICIldS4ldS4ldS4ldS5pbi1hZGRyLmFycGEiLAorCQkgICAgKHVhZGRyWzNdICYgMHhmZiksICh1YWRkclsyXSAmIDB4ZmYpLAorCQkgICAgKHVhZGRyWzFdICYgMHhmZiksICh1YWRkclswXSAmIDB4ZmYpKTsKKwkJYnJlYWs7CisKKwljYXNlIEFGX0lORVQ2OgorCQlxcCA9IHFidWY7CisJCWVwID0gcWJ1ZiArIHNpemVvZihxYnVmKSAtIDE7CisJCWZvciAobiA9IE5TX0lONkFERFJTWiAtIDE7IG4gPj0gMDsgbi0tKSB7CisJCQlhZHZhbmNlID0gc25wcmludGYocXAsIChzaXplX3QpKGVwIC0gcXApLCAiJXguJXguIiwKKwkJCSAgICB1YWRkcltuXSAmIDB4ZiwKKwkJCSAgICAoKHVuc2lnbmVkIGludCl1YWRkcltuXSA+PiA0KSAmIDB4Zik7CisJCQlpZiAoYWR2YW5jZSA+IDAgJiYgcXAgKyBhZHZhbmNlIDwgZXApCisJCQkJcXAgKz0gYWR2YW5jZTsKKwkJCWVsc2UgeworCQkJCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCQkJCXJldHVybiBOU19OT1RGT1VORDsKKwkJCX0KKwkJfQorCQlpZiAoc3RybGNhdChxYnVmLCAiaXA2LmFycGEiLCBzaXplb2YocWJ1ZikpID49IHNpemVvZihxYnVmKSkgeworCQkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJCX0KKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJcmV0dXJuIE5TX1VOQVZBSUw7CisJfQorCisJYnVmID0gbWFsbG9jKHNpemVvZigqYnVmKSk7CisJaWYgKGJ1ZiA9PSBOVUxMKSB7CisJCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCXJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCWlmIChyZXMgPT0gTlVMTCkgeworCQlmcmVlKGJ1Zik7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmVzX3NldG5ldGlkKHJlcywgbmV0aWQpOworCXJlc19zZXRtYXJrKHJlcywgbWFyayk7CisJbiA9IHJlc19ucXVlcnkocmVzLCBxYnVmLCBDX0lOLCBUX1BUUiwgYnVmLT5idWYsIChpbnQpc2l6ZW9mKGJ1Zi0+YnVmKSk7CisJaWYgKG4gPCAwKSB7CisJCWZyZWUoYnVmKTsKKwkJZGVidWdwcmludGYoInJlc19ucXVlcnkgZmFpbGVkICglZClcbiIsIHJlcywgbik7CisJCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCWhwID0gZ2V0YW5zd2VyKGJ1ZiwgbiwgcWJ1ZiwgVF9QVFIsIHJlcywgaW5mby0+aHAsIGluZm8tPmJ1ZiwKKwkgICAgaW5mby0+YnVmbGVuLCBpbmZvLT5oZSk7CisJZnJlZShidWYpOworCWlmIChocCA9PSBOVUxMKSB7CisJCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCQlzd2l0Y2ggKCppbmZvLT5oZSkgeworCQljYXNlIEhPU1RfTk9UX0ZPVU5EOgorCQkJcmV0dXJuIE5TX05PVEZPVU5EOworCQljYXNlIFRSWV9BR0FJTjoKKwkJCXJldHVybiBOU19UUllBR0FJTjsKKwkJZGVmYXVsdDoKKwkJCXJldHVybiBOU19VTkFWQUlMOworCQl9CisJfQorCisJYmYgPSAodm9pZCAqKShocC0+aF9hZGRyX2xpc3QgKyAyKTsKKwlibGVuID0gKHNpemVfdCkoYmYgLSBpbmZvLT5idWYpOworCWlmIChibGVuICsgaW5mby0+aHAtPmhfbGVuZ3RoID4gaW5mby0+YnVmbGVuKQorCQlnb3RvIG5vc3BjOworCWhwLT5oX2FkZHJfbGlzdFswXSA9IGJmOworCWhwLT5oX2FkZHJfbGlzdFsxXSA9IE5VTEw7CisJKHZvaWQpbWVtY3B5KGJmLCB1YWRkciwgKHNpemVfdClpbmZvLT5ocC0+aF9sZW5ndGgpOworCWlmIChpbmZvLT5ocC0+aF9hZGRydHlwZSA9PSBBRl9JTkVUICYmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KSkgeworCQlpZiAoYmxlbiArIE5TX0lONkFERFJTWiA+IGluZm8tPmJ1ZmxlbikKKwkJCWdvdG8gbm9zcGM7CisJCW1hcF92NHY2X2FkZHJlc3MoYmYsIGJmKTsKKwkJaHAtPmhfYWRkcnR5cGUgPSBBRl9JTkVUNjsKKwkJaHAtPmhfbGVuZ3RoID0gTlNfSU42QUREUlNaOworCX0KKworCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCSppbmZvLT5oZSA9IE5FVERCX1NVQ0NFU1M7CisJcmV0dXJuIE5TX1NVQ0NFU1M7Citub3NwYzoKKwllcnJubyA9IEVOT1NQQzsKKwkqaW5mby0+aGUgPSBORVREQl9JTlRFUk5BTDsKKwlyZXR1cm4gTlNfVU5BVkFJTDsKK30KKworI2lmZGVmIFlQCisvKkFSR1NVU0VEKi8KK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCitfeXBfaG9zdGVudChjaGFyICpsaW5lLCBpbnQgYWYsIHN0cnVjdCBnZXRuYW1hZGRyICppbmZvKQoreworCXN0cnVjdCBpbjZfYWRkciBob3N0X2FkZHJzW01BWEFERFJTXTsKKwljaGFyICoqYWxpYXNlczsKKwlzaXplX3QgbWF4YWxpYXNlczsKKwljaGFyICpwID0gbGluZTsKKwljaGFyICpjcCwgKipxLCAqcHRyOworCXNpemVfdCBsZW4sIGFudW0sIGk7CisJaW50IGFkZHJvazsKKwlpbnQgbW9yZTsKKwlzaXplX3QgbmFkZHJzOworCXN0cnVjdCBob3N0ZW50ICpocCA9IGluZm8tPmhwOworCisJX0RJQUdBU1NFUlQobGluZSAhPSBOVUxMKTsKKworCWhwLT5oX25hbWUgPSBOVUxMOworCWhwLT5oX2FkZHJ0eXBlID0gYWY7CisJc3dpdGNoIChhZikgeworCWNhc2UgQUZfSU5FVDoKKwkJaHAtPmhfbGVuZ3RoID0gTlNfSU5BRERSU1o7CisJCWJyZWFrOworCWNhc2UgQUZfSU5FVDY6CisJCWhwLT5oX2xlbmd0aCA9IE5TX0lONkFERFJTWjsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJcmV0dXJuIE5VTEw7CisJfQorCXNldHVwKGFsaWFzZXMsIG1heGFsaWFzZXMpOworCW5hZGRycyA9IDA7CisJcSA9IGFsaWFzZXM7CisKK25leHRsaW5lOgorCS8qIGNoZWNrIGZvciBob3N0X2FkZHJzIG92ZXJmbG93ICovCisJaWYgKG5hZGRycyA+PSBfX2FycmF5Y291bnQoaG9zdF9hZGRycykpCisJCWdvdG8gZG9uZTsKKworCW1vcmUgPSAwOworCWNwID0gc3RycGJyayhwLCAiIFx0Iik7CisJaWYgKGNwID09IE5VTEwpCisJCWdvdG8gZG9uZTsKKwkqY3ArKyA9ICdcMCc7CisKKwkvKiBwIGhhcyBzaG91bGQgaGF2ZSBhbiBhZGRyZXNzICovCisJYWRkcm9rID0gaW5ldF9wdG9uKGFmLCBwLCAmaG9zdF9hZGRyc1tuYWRkcnNdKTsKKwlpZiAoYWRkcm9rICE9IDEpIHsKKwkJLyogc2tpcCB0byB0aGUgbmV4dCBsaW5lICovCisJCXdoaWxlIChjcCAmJiAqY3ApIHsKKwkJCWlmICgqY3AgPT0gJ1xuJykgeworCQkJCWNwKys7CisJCQkJZ290byBuZXh0bGluZTsKKwkJCX0KKwkJCWNwKys7CisJCX0KKwkJZ290byBkb25lOworCX0KKwluYWRkcnMrKzsKKworCXdoaWxlICgqY3AgPT0gJyAnIHx8ICpjcCA9PSAnXHQnKQorCQljcCsrOworCXAgPSBjcDsKKwljcCA9IHN0cnBicmsocCwgIiBcdFxuIik7CisJaWYgKGNwICE9IE5VTEwpIHsKKwkJaWYgKCpjcCA9PSAnXG4nKQorCQkJbW9yZSA9IDE7CisJCSpjcCsrID0gJ1wwJzsKKwl9CisJaWYgKCFocC0+aF9uYW1lKQorCQlocC0+aF9uYW1lID0gcDsKKwllbHNlIGlmIChzdHJjbXAoaHAtPmhfbmFtZSwgcCkgPT0gMCkKKwkJOworCWVsc2UKKwkJYWRkYWxpYXMocSwgcCwgYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJcCA9IGNwOworCWlmIChtb3JlKQorCQlnb3RvIG5leHRsaW5lOworCisJd2hpbGUgKGNwICYmICpjcCkgeworCQlpZiAoKmNwID09ICcgJyB8fCAqY3AgPT0gJ1x0JykgeworCQkJY3ArKzsKKwkJCWNvbnRpbnVlOworCQl9CisJCWlmICgqY3AgPT0gJ1xuJykgeworCQkJY3ArKzsKKwkJCWdvdG8gbmV4dGxpbmU7CisJCX0KKwkJYWRkYWxpYXMocSwgY3AsIGFsaWFzZXMsIG1heGFsaWFzZXMpOworCQljcCA9IHN0cnBicmsoY3AsICIgXHQiKTsKKwkJaWYgKGNwICE9IE5VTEwpCisJCQkqY3ArKyA9ICdcMCc7CisJfQorCitkb25lOgorCWlmIChocC0+aF9uYW1lID09IE5VTEwpIHsKKwkJZnJlZShhbGlhc2VzKTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJcHRyID0gaW5mby0+YnVmOworCWxlbiA9IGluZm8tPmJ1ZmxlbjsKKworCWFudW0gPSAoc2l6ZV90KShxIC0gYWxpYXNlcyk7CisJSEVOVF9BUlJBWShocC0+aF9hZGRyX2xpc3QsIG5hZGRycywgcHRyLCBsZW4pOworCUhFTlRfQVJSQVkoaHAtPmhfYWxpYXNlcywgYW51bSwgcHRyLCBsZW4pOworCisJZm9yIChpID0gMDsgaSA8IG5hZGRyczsgaSsrKQorCQlIRU5UX0NPUFkoaHAtPmhfYWRkcl9saXN0W2ldLCAmaG9zdF9hZGRyc1tpXSwgaHAtPmhfbGVuZ3RoLAorCQkgICAgcHRyLCBsZW4pOworCWhwLT5oX2FkZHJfbGlzdFtuYWRkcnNdID0gTlVMTDsKKworCUhFTlRfU0NPUFkoaHAtPmhfbmFtZSwgaHAtPmhfbmFtZSwgcHRyLCBsZW4pOworCisJZm9yIChpID0gMDsgaSA8IGFudW07IGkrKykKKwkJSEVOVF9TQ09QWShocC0+aF9hbGlhc2VzW2ldLCBhbGlhc2VzW2ldLCBwdHIsIGxlbik7CisJaHAtPmhfYWxpYXNlc1thbnVtXSA9IE5VTEw7CisJZnJlZShhbGlhc2VzKTsKKworCXJldHVybiBocDsKK25vc3BjOgorCWZyZWUoYWxpYXNlcyk7CisJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJZXJybm8gPSBFTk9TUEM7CisJcmV0dXJuIE5VTEw7Cit9CisKKy8qQVJHU1VTRUQqLworaW50CitfeXBfZ2V0aHRieWFkZHIodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCit7CisJc3RydWN0IGhvc3RlbnQgKmhwID0gTlVMTDsKKwljaGFyICp5cGN1cnJlbnQ7CisJaW50IHlwY3VycmVudGxlbiwgcjsKKwljaGFyIG5hbWVbSU5FVDZfQUREUlNUUkxFTl07CS8qIFhYWCBlbm91Z2g/ICovCisJY29uc3QgdW5zaWduZWQgY2hhciAqdWFkZHI7CisJaW50IGFmOworCWNvbnN0IGNoYXIgKm1hcDsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbyA9IHJ2OworCisJX0RJQUdBU1NFUlQocnYgIT0gTlVMTCk7CisKKwl1YWRkciA9IHZhX2FyZyhhcCwgdW5zaWduZWQgY2hhciAqKTsKKwkvKiBOT1NUUklDVCBza2lwIGxlbiAqLyh2b2lkKXZhX2FyZyhhcCwgaW50KTsKKwlhZiA9IHZhX2FyZyhhcCwgaW50KTsKKworCWlmICghX195cGRvbWFpbikgeworCQlpZiAoX3lwX2NoZWNrKCZfX3lwZG9tYWluKSA9PSAwKQorCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJfQorCS8qCisJICogWFhYIHVuZm9ydHVuYXRlbHksIHdlIGNhbm5vdCBzdXBwb3J0IElQdjYgZXh0ZW5kZWQgc2NvcGVkIGFkZHJlc3MKKwkgKiBub3RhdGlvbiBoZXJlLiAgZ2V0aG9zdGJ5YWRkcigpIGlzIG5vdCBzY29wZS1hd2FyZS4gIHRvbyBiYWQuCisJICovCisJaWYgKGluZXRfbnRvcChhZiwgdWFkZHIsIG5hbWUsIChzb2NrbGVuX3Qpc2l6ZW9mKG5hbWUpKSA9PSBOVUxMKQorCQlyZXR1cm4gTlNfVU5BVkFJTDsKKwlzd2l0Y2ggKGFmKSB7CisJY2FzZSBBRl9JTkVUOgorCQltYXAgPSAiaG9zdHMuYnlhZGRyIjsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJbWFwID0gImlwbm9kZXMuYnlhZGRyIjsKKwkJYnJlYWs7CisJfQorCXlwY3VycmVudCA9IE5VTEw7CisJciA9IHlwX21hdGNoKF9feXBkb21haW4sIG1hcCwgbmFtZSwKKwkJKGludClzdHJsZW4obmFtZSksICZ5cGN1cnJlbnQsICZ5cGN1cnJlbnRsZW4pOworCWlmIChyID09IDApCisJCWhwID0gX3lwX2hvc3RlbnQoeXBjdXJyZW50LCBhZiwgaW5mbyk7CisJZWxzZQorCQlocCA9IE5VTEw7CisJZnJlZSh5cGN1cnJlbnQpOworCWlmIChocCA9PSBOVUxMKSB7CisJCSppbmZvLT5oZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCXJldHVybiBOU19TVUNDRVNTOworfQorCisvKkFSR1NVU0VEKi8KK2ludAorX3lwX2dldGh0YnluYW1lKHZvaWQgKnJ2LCB2b2lkICpjYl9kYXRhLCB2YV9saXN0IGFwKQoreworCXN0cnVjdCBob3N0ZW50ICpocDsKKwljaGFyICp5cGN1cnJlbnQ7CisJaW50IHlwY3VycmVudGxlbiwgcjsKKwljb25zdCBjaGFyICpuYW1lOworCWludCBhZjsKKwljb25zdCBjaGFyICptYXA7CisJc3RydWN0IGdldG5hbWFkZHIgKmluZm8gPSBydjsKKworCV9ESUFHQVNTRVJUKHJ2ICE9IE5VTEwpOworCisJbmFtZSA9IHZhX2FyZyhhcCwgY2hhciAqKTsKKwkvKiBOT1NUUklDVCBza2lwIHN0cmluZyBsZW4gKi8odm9pZCl2YV9hcmcoYXAsIGludCk7CisJYWYgPSB2YV9hcmcoYXAsIGludCk7CisKKwlpZiAoIV9feXBkb21haW4pIHsKKwkJaWYgKF95cF9jaGVjaygmX195cGRvbWFpbikgPT0gMCkKKwkJCXJldHVybiBOU19VTkFWQUlMOworCX0KKwlzd2l0Y2ggKGFmKSB7CisJY2FzZSBBRl9JTkVUOgorCQltYXAgPSAiaG9zdHMuYnluYW1lIjsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJbWFwID0gImlwbm9kZXMuYnluYW1lIjsKKwkJYnJlYWs7CisJfQorCXlwY3VycmVudCA9IE5VTEw7CisJciA9IHlwX21hdGNoKF9feXBkb21haW4sIG1hcCwgbmFtZSwKKwkJKGludClzdHJsZW4obmFtZSksICZ5cGN1cnJlbnQsICZ5cGN1cnJlbnRsZW4pOworCWlmIChyID09IDApCisJCWhwID0gX3lwX2hvc3RlbnQoeXBjdXJyZW50LCBhZiwgaW5mbyk7CisJZWxzZQorCQlocCA9IE5VTEw7CisJZnJlZSh5cGN1cnJlbnQpOworCWlmIChocCA9PSBOVUxMKSB7CisJCSppbmZvLT5oZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCXJldHVybiBOU19TVUNDRVNTOworfQorI2VuZGlmCisKKy8qCisgKiBOb24tcmVlbnRyYW50IHZlcnNpb25zLgorICovCisKK3N0cnVjdCBob3N0ZW50ICoKK2dldGhvc3RieW5hbWUoY29uc3QgY2hhciAqbmFtZSkKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqcmVzdWx0ID0gTlVMTDsKKwlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOyAvKiBVc2UgcmVzX3N0YXRpYyB0byBwcm92aWRlIHRocmVhZC1zYWZldHkuICovCisKKwlnZXRob3N0YnluYW1lX3IobmFtZSwgJnJzLT5ob3N0LCBycy0+aG9zdGJ1Ziwgc2l6ZW9mKHJzLT5ob3N0YnVmKSwgJnJlc3VsdCwgJmhfZXJybm8pOworCXJldHVybiByZXN1bHQ7Cit9CisKK3N0cnVjdCBob3N0ZW50ICoKK2dldGhvc3RieW5hbWUyKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZikKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqcmVzdWx0ID0gTlVMTDsKKwlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOyAvKiBVc2UgcmVzX3N0YXRpYyB0byBwcm92aWRlIHRocmVhZC1zYWZldHkuICovCisKKwlnZXRob3N0YnluYW1lMl9yKG5hbWUsIGFmLCAmcnMtPmhvc3QsIHJzLT5ob3N0YnVmLCBzaXplb2YocnMtPmhvc3RidWYpLCAmcmVzdWx0LCAmaF9lcnJubyk7CisJcmV0dXJuIHJlc3VsdDsKK30KKworc3RydWN0IGhvc3RlbnQgKgorYW5kcm9pZF9nZXRob3N0YnluYW1lZm9ybmV0KGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgdW5zaWduZWQgbmV0aWQsIHVuc2lnbmVkIG1hcmspCit7CisJc3RydWN0IGhvc3RlbnQgKmhwOworCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKKwlpZiAocmVzID09IE5VTEwpCisJCXJldHVybiBOVUxMOworCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7IC8qIFVzZSByZXNfc3RhdGljIHRvIHByb3ZpZGUgdGhyZWFkLXNhZmV0eS4gKi8KKwlocCA9IGdldGhvc3RieW5hbWVfaW50ZXJuYWwobmFtZSwgYWYsIHJlcywgJnJzLT5ob3N0LCBycy0+aG9zdGJ1Ziwgc2l6ZW9mKHJzLT5ob3N0YnVmKSwKKwkgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmhfZXJybm8sIG5ldGlkLCBtYXJrKTsKKwlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwlyZXR1cm4gaHA7Cit9CisKK3N0cnVjdCBob3N0ZW50ICoKK2dldGhvc3RieWFkZHIoY29uc3Qgdm9pZCAqYWRkciwgc29ja2xlbl90IGxlbiwgaW50IGFmKQoreworCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoYWRkciwgbGVuLCBhZiwgTkVUSURfVU5TRVQsIE1BUktfVU5TRVQpOworfQorCitzdHJ1Y3QgaG9zdGVudCAqCithbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXQoY29uc3Qgdm9pZCAqYWRkciwgc29ja2xlbl90IGxlbiwgaW50IGFmLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKK3sKKwlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGFkZHIsIGxlbiwgYWYsIG5ldGlkLCBtYXJrKTsKK30KKworX19MSUJDX0hJRERFTl9fIHN0cnVjdCBob3N0ZW50KgorYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGNvbnN0IHZvaWQqIGFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKK3sKKwlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOyAvKiBVc2UgcmVzX3N0YXRpYyB0byBwcm92aWRlIHRocmVhZC1zYWZldHkuICovCisJcmV0dXJuIGFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eV9pbnRlcm5hbChhZGRyLCBsZW4sIGFmLCAmcnMtPmhvc3QsIHJzLT5ob3N0YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihycy0+aG9zdGJ1ZiksICZoX2Vycm5vLCBuZXRpZCwgbWFyayk7Cit9CisKK3N0cnVjdCBob3N0ZW50ICoKK2dldGhvc3RlbnQodm9pZCkKK3sKKyAgcmVzX3N0YXRpYyAgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7CisJaWYgKCFycy0+aG9zdGYpIHsKKwkgIHNldGhvc3RlbnRfcigmcnMtPmhvc3RmKTsKKwkgIGlmICghcnMtPmhvc3RmKSB7CisJICAgIGhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKKwkgICAgcmV0dXJuIE5VTEw7CisJICB9CisJfQorCW1lbXNldCgmcnMtPmhvc3QsIDAsIHNpemVvZihycy0+aG9zdCkpOworCXJldHVybiBuZXRic2RfZ2V0aG9zdGVudF9yKHJzLT5ob3N0ZiwgJnJzLT5ob3N0LCBycy0+aG9zdGJ1Ziwgc2l6ZW9mKHJzLT5ob3N0YnVmKSwgJmhfZXJybm8pOworfQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L2dldG5hbWVpbmZvLmMgYi9saWJjL2Rucy9uZXQvZ2V0bmFtZWluZm8uYwppbmRleCBiOWMwMjgwLi44OTNlOTgyIDEwMDY0NAotLS0gYS9saWJjL2Rucy9uZXQvZ2V0bmFtZWluZm8uYworKysgYi9saWJjL2Rucy9uZXQvZ2V0bmFtZWluZm8uYwpAQCAtMzAzLDcgKzMwMyw3IEBACiAJCQlicmVhazsKIAkJfQogCX0gZWxzZSB7Ci0JCWhwID0gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5KGFkZHIsIGFmZC0+YV9hZGRybGVuLCBhZmQtPmFfYWYsIG5ldGlkKTsKKwkJaHAgPSBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoYWRkciwgYWZkLT5hX2FkZHJsZW4sIGFmZC0+YV9hZiwgbmV0aWQsIG1hcmspOwogCQlpZiAoaHApIHsKICNpZiAwCiAJCQkvKgpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L2dldHNlcnZieW5hbWUuYyBiL2xpYmMvZG5zL25ldC9nZXRzZXJ2YnluYW1lLmMKaW5kZXggYzk1YzliMC4uYzMyNDE2YyAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmV0L2dldHNlcnZieW5hbWUuYworKysgYi9saWJjL2Rucy9uZXQvZ2V0c2VydmJ5bmFtZS5jCkBAIC0yNSwyOSArMjUsMTkgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKwogI2luY2x1ZGUgPG5ldGRiLmg+CisKICNpbmNsdWRlICJzZXJ2ZW50LmgiCiAKLXN0cnVjdCBzZXJ2ZW50ICoKLWdldHNlcnZieW5hbWUoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqcHJvdG8pCi17Ci0gICAgcmVzX3N0YXRpYyAgICAgICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotICAgIGlmIChycyA9PSBOVUxMIHx8IHByb3RvID09IE5VTEwgfHwgbmFtZSA9PSBOVUxMKSB7Ci0gICAgICAgIGVycm5vID0gRUlOVkFMOwotICAgICAgICByZXR1cm4gTlVMTDsKK3N0cnVjdCBzZXJ2ZW50KiBnZXRzZXJ2YnluYW1lKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNoYXIqIHByb3RvKSB7CisgIHJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7CisgIHJzLT5zZXJ2ZW50X3B0ciA9IE5VTEw7CisgIHN0cnVjdCBzZXJ2ZW50KiBzOworICB3aGlsZSAoKHMgPSBnZXRzZXJ2ZW50X3IocnMpKSAhPSBOVUxMKSB7CisgICAgaWYgKHN0cmNtcChzLT5zX25hbWUsIG5hbWUpID09IDAgJiYgKHByb3RvID09IE5VTEwgfHwgc3RyY21wKHMtPnNfcHJvdG8sIHByb3RvKSA9PSAwKSkgeworICAgICAgcmV0dXJuIHM7CiAgICAgfQotCi0gICAgcnMtPnNlcnZlbnRfcHRyID0gTlVMTDsKLSAgICB3aGlsZSAoMSkgewotICAgICAgICBzdHJ1Y3Qgc2VydmVudCogIHMgPSBnZXRzZXJ2ZW50X3IocnMpOwotICAgICAgICBpZiAocyA9PSBOVUxMKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGlmICggIXN0cmNtcCggcy0+c19uYW1lLCBuYW1lICkgJiYgIXN0cmNtcCggcy0+c19wcm90bywgcHJvdG8gKSApCi0gICAgICAgICAgICByZXR1cm4gczsKLSAgICB9Ci0KLSAgICByZXR1cm4gTlVMTDsKKyAgfQorICByZXR1cm4gTlVMTDsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25ldC9nZXRzZXJ2ZW50LmMgYi9saWJjL2Rucy9uZXQvZ2V0c2VydmVudC5jCmluZGV4IDlmNmVjMzIuLjBhNzI3YzcgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25ldC9nZXRzZXJ2ZW50LmMKKysrIGIvbGliYy9kbnMvbmV0L2dldHNlcnZlbnQuYwpAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPGVuZGlhbi5oPgorI2luY2x1ZGUgPG1hbGxvYy5oPgogI2luY2x1ZGUgPG5ldGRiLmg+CiAjaW5jbHVkZSAic2VydmVudC5oIgogI2luY2x1ZGUgInNlcnZpY2VzLmgiCmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvbnNkaXNwYXRjaC5jIGIvbGliYy9kbnMvbmV0L25zZGlzcGF0Y2guYwppbmRleCBmYjZkOGY2Li5kMDI1NTkyIDEwMDY0NAotLS0gYS9saWJjL2Rucy9uZXQvbnNkaXNwYXRjaC5jCisrKyBiL2xpYmMvZG5zL25ldC9uc2Rpc3BhdGNoLmMKQEAgLTcxLDYgKzcxLDcgQEAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIAogI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8bnNzd2l0Y2guaD4KICNpbmNsdWRlIDxzdGRhcmcuaD4KICNpbmNsdWRlIDxzdHJpbmdzLmg+CkBAIC0xMzMsNiArMTM0LDEwIEBACiAJCQkJY29udGludWU7CiAJCQlpZiAocmVzdWx0ICYgc3JjbGlzdFtpXS5mbGFncykKIAkJCQlicmVhazsKKwkJCS8qIFN0b3AgdHJ5aW5nIG5leHQgcmVzb2x2ZXIgd2hlbiB0aGVyZSBpcyBhIG1lbW9yeSBzcGFjZSBmYXRhbCBlcnJvci4gKi8KKwkJCWlmICgocmVzdWx0ICYgTlNfVU5BVkFJTCkgIT0gMCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkJCSAgYnJlYWs7CisJCQl9CiAJCX0KIAl9CiAJcmVzdWx0ICY9IE5TX1NUQVRVU01BU0s7CS8qIGNsZWFyIHByaXZhdGUgZmxhZ3MgaW4gcmVzdWx0ICovCmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvc2VydmljZXMuaCBiL2xpYmMvZG5zL25ldC9zZXJ2aWNlcy5oCmluZGV4IGZhMTk5ZDAuLjdmNzQ4ZjcgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25ldC9zZXJ2aWNlcy5oCisrKyBiL2xpYmMvZG5zL25ldC9zZXJ2aWNlcy5oCkBAIC0zMCw4ICszMCw4IEBACiBcNnRhY2Fjc1wwXDYxdVwwXAogXDEycmUtbWFpbC1ja1wwXDYydFwwXAogXDEycmUtbWFpbC1ja1wwXDYydVwwXAotXDZkb21haW5cMFw2NXRcMVwxMm5hbWVzZXJ2ZXJcCi1cNmRvbWFpblwwXDY1dVwxXDEybmFtZXNlcnZlclwKK1w2ZG9tYWluXDBcNjV0XDBcCitcNmRvbWFpblwwXDY1dVwwXAogXDNtdHBcMFw3MXRcMFwKIFwxMXRhY2Fjcy1kc1wwXDEwMXRcMFwKIFwxMXRhY2Fjcy1kc1wwXDEwMXVcMFwKQEAgLTQ0LDggKzQ0LDggQEAKIFw2Z29waGVyXDBcMTA2dVwwXAogXDNyamVcMFwxMTV0XDFcNm5ldHJqc1wKIFw2ZmluZ2VyXDBcMTE3dFwwXAotXDN3d3dcMFwxMjB0XDFcNGh0dHBcCi1cM3d3d1wwXDEyMHVcMFwKK1w0aHR0cFwwXDEyMHRcMVwzd3d3XAorXDRodHRwXDBcMTIwdVwwXAogXDRsaW5rXDBcMTI3dFwxXDd0dHlsaW5rXAogXDEwa2VyYmVyb3NcMFwxMzB0XDNcMTFrZXJiZXJvczVcNGtyYjVcMTRrZXJiZXJvcy1zZWNcCiBcMTBrZXJiZXJvc1wwXDEzMHVcM1wxMWtlcmJlcm9zNVw0a3JiNVwxNGtlcmJlcm9zLXNlY1wKQEAgLTEzOCwxMiArMTM4LDE2IEBACiBcNGxkYXBcMVwyMDV1XDBcCiBcNGltc3BcMVwyMjZ0XDBcCiBcNGltc3BcMVwyMjZ1XDBcCitcNnN2cmxvY1wxXDI1M3RcMFwKK1w2c3ZybG9jXDFcMjUzdVwwXAogXDVodHRwc1wxXDI3M3RcMFwKIFw1aHR0cHNcMVwyNzN1XDBcCiBcNHNucHBcMVwyNzR0XDBcCiBcNHNucHBcMVwyNzR1XDBcCiBcMTRtaWNyb3NvZnQtZHNcMVwyNzV0XDBcCiBcMTRtaWNyb3NvZnQtZHNcMVwyNzV1XDBcCitcN2twYXNzd2RcMVwzMjB0XDBcCitcN2twYXNzd2RcMVwzMjB1XDBcCiBcNHNhZnRcMVwzNDd0XDBcCiBcNHNhZnRcMVwzNDd1XDBcCiBcNmlzYWttcFwxXDM2NHRcMFwKQEAgLTE1OCw2ICsxNjIsOCBAQAogXDEwbnBtcC1ndWlcMlwxNDN1XDFcMTRkcXMzMTNfZXhlY2RcCiBcMTBobW1wLWluZFwyXDE0NHRcMVwyMGRxczMxM19pbnRlcmNlbGxcCiBcMTBobW1wLWluZFwyXDE0NHVcMVwyMGRxczMxM19pbnRlcmNlbGxcCitcNHFtcXBcMlwxNjR0XDBcCitcNHFtcXBcMlwxNjR1XDBcCiBcM2lwcFwyXDE2N3RcMFwKIFwzaXBwXDJcMTY3dVwwXAogXDRleGVjXDJcMHRcMFwKQEAgLTE4MSw4ICsxODcsMTQgQEAKIFw0dXVjcFwyXDM0dFwxXDV1dWNwZFwKIFw2a2xvZ2luXDJcMzd0XDBcCiBcNmtzaGVsbFwyXDQwdFwxXDVrcmNtZFwKK1wxNWRoY3B2Ni1jbGllbnRcMlw0MnRcMFwKK1wxNWRoY3B2Ni1jbGllbnRcMlw0MnVcMFwKK1wxNWRoY3B2Ni1zZXJ2ZXJcMlw0M3RcMFwKK1wxNWRoY3B2Ni1zZXJ2ZXJcMlw0M3VcMFwKIFwxMmFmcG92ZXJ0Y3BcMlw0NHRcMFwKIFwxMmFmcG92ZXJ0Y3BcMlw0NHVcMFwKK1w0aWRmcFwyXDQ1dFwwXAorXDRpZGZwXDJcNDV1XDBcCiBcMTByZW1vdGVmc1wyXDU0dFwyXDEycmZzX3NlcnZlclwzcmZzXAogXDVubnRwc1wyXDYzdFwxXDVzbm50cFwKIFw1bm50cHNcMlw2M3VcMVw1c25udHBcCkBAIC0yMzksMTkgKzI1MSwzMyBAQAogXDEzc2EtbXNnLXBvcnRcNlwxNTZ1XDFcMTNvbGQtcmFkYWNjdFwKIFw2a2VybWl0XDZcMTYxdFwwXAogXDZrZXJtaXRcNlwxNjF1XDBcCitcMTFncm91cHdpc2VcNlwyMTV0XDBcCitcMTFncm91cHdpc2VcNlwyMTV1XDBcCiBcM2wyZlw2XDI0NXRcMVw0bDJ0cFwKIFwzbDJmXDZcMjQ1dVwxXDRsMnRwXAogXDZyYWRpdXNcN1wyNHRcMFwKIFw2cmFkaXVzXDdcMjR1XDBcCiBcMTNyYWRpdXMtYWNjdFw3XDI1dFwxXDdyYWRhY2N0XAogXDEzcmFkaXVzLWFjY3RcN1wyNXVcMVw3cmFkYWNjdFwKK1w0bXNucFw3XDEwN3RcMFwKK1w0bXNucFw3XDEwN3VcMFwKIFwxM3VuaXgtc3RhdHVzXDdcMjQ1dFwwXAogXDEybG9nLXNlcnZlclw3XDI0NnRcMFwKIFwxMnJlbW90ZXBpbmdcN1wyNDd0XDBcCitcMTJjaXNjby1zY2NwXDdcMzIwdFwwXAorXDEyY2lzY28tc2NjcFw3XDMyMHVcMFwKK1w2c2VhcmNoXDdcMzMydFwxXDRuZHRwXAorXDEzcGlwZS1zZXJ2ZXJcN1wzMzJ0XDFcMTNwaXBlX3NlcnZlclwKIFwzbmZzXDEwXDF0XDBcCiBcM25mc1wxMFwxdVwwXAorXDZnbnVuZXRcMTBcNDZ0XDBcCitcNmdudW5ldFwxMFw0NnVcMFwKIFwxMnJ0Y20tc2MxMDRcMTBcNjV0XDBcCiBcMTJydGNtLXNjMTA0XDEwXDY1dVwwXAorXDE1Z3NpZ2F0ZWtlZXBlclwxMFwxMDd0XDBcCitcMTVnc2lnYXRla2VlcGVyXDEwXDEwN3VcMFwKK1w0Z3Jpc1wxMFwxMjd0XDBcCitcNGdyaXNcMTBcMTI3dVwwXAogXDEyY3ZzcHNlcnZlclwxMVwxNDF0XDBcCiBcMTJjdnNwc2VydmVyXDExXDE0MXVcMFwKIFw1dmVudXNcMTFcMTc2dFwwXApAQCAtMjY2LDEwICsyOTIsMTQgQEAKIFwzbW9uXDEyXDI3dVwwXAogXDRkaWN0XDEyXDEwNHRcMFwKIFw0ZGljdFwxMlwxMDR1XDBcCitcMTVmNS1nbG9iYWxzaXRlXDEyXDM1MHRcMFwKK1wxNWY1LWdsb2JhbHNpdGVcMTJcMzUwdVwwXAorXDZnc2lmdHBcMTJcMzczdFwwXAorXDZnc2lmdHBcMTJcMzczdVwwXAogXDRncHNkXDEzXDIwM3RcMFwKIFw0Z3BzZFwxM1wyMDN1XDBcCi1cNmdkc19kYlwxM1wzNTJ0XDBcCi1cNmdkc19kYlwxM1wzNTJ1XDBcCitcNmdkcy1kYlwxM1wzNTJ0XDFcNmdkc19kYlwKK1w2Z2RzLWRiXDEzXDM1MnVcMVw2Z2RzX2RiXAogXDVpY3B2MlwxNFw3MnRcMVwzaWNwXAogXDVpY3B2MlwxNFw3MnVcMVwzaWNwXAogXDVteXNxbFwxNFwzNTJ0XDBcCkBAIC0yODIsMjQgKzMxMiw0OSBAQAogXDRkYWFwXDE2XDE1MXVcMFwKIFwzc3ZuXDE2XDE1MnRcMVwxMnN1YnZlcnNpb25cCiBcM3N2blwxNlwxNTJ1XDFcMTJzdWJ2ZXJzaW9uXAorXDVzdXVjcFwxN1wyNzd0XDBcCitcNXN1dWNwXDE3XDI3N3VcMFwKK1w2c3lzcnFkXDE3XDM3NnRcMFwKK1w2c3lzcnFkXDE3XDM3NnVcMFwKK1w1c2lldmVcMjBcMTM2dFwwXAorXDRlcG1kXDIxXDIxdFwwXAorXDRlcG1kXDIxXDIxdVwwXAorXDZyZW1jdGxcMjFcMjV0XDBcCitcNnJlbWN0bFwyMVwyNXVcMFwKK1wxMWY1LWlxdWVyeVwyMVwxdFwwXAorXDExZjUtaXF1ZXJ5XDIxXDF1XDBcCiBcM2lheFwyMVwzMzF0XDBcCiBcM2lheFwyMVwzMzF1XDBcCitcM210blwyMlwxMjN0XDBcCitcM210blwyMlwxMjN1XDBcCiBcMTNyYWRtaW4tcG9ydFwyM1w0M3RcMFwKIFwxM3JhZG1pbi1wb3J0XDIzXDQzdVwwXAogXDNyZmVcMjNcMjEydVwwXAogXDNyZmVcMjNcMjEydFwwXAorXDRtbWNjXDIzXDI3MnRcMFwKK1w0bW1jY1wyM1wyNzJ1XDBcCiBcM3NpcFwyM1wzMDR0XDBcCiBcM3NpcFwyM1wzMDR1XDBcCiBcN3NpcC10bHNcMjNcMzA1dFwwXAogXDdzaXAtdGxzXDIzXDMwNXVcMFwKK1wzYW9sXDI0XDEwNnRcMFwKK1wzYW9sXDI0XDEwNnVcMFwKIFwxM3htcHAtY2xpZW50XDI0XDE0NnRcMVwxNWphYmJlci1jbGllbnRcCiBcMTN4bXBwLWNsaWVudFwyNFwxNDZ1XDFcMTVqYWJiZXItY2xpZW50XAogXDEzeG1wcC1zZXJ2ZXJcMjRcMjI1dFwxXDE1amFiYmVyLXNlcnZlclwKIFwxM3htcHAtc2VydmVyXDI0XDIyNXVcMVwxNWphYmJlci1zZXJ2ZXJcCiBcMTBjZmVuZ2luZVwyNFwyNzR0XDBcCiBcMTBjZmVuZ2luZVwyNFwyNzR1XDBcCitcNG1kbnNcMjRcMzUxdFwwXAorXDRtZG5zXDI0XDM1MXVcMFwKIFwxMnBvc3RncmVzcWxcMjVcNzB0XDFcMTBwb3N0Z3Jlc1wKIFwxMnBvc3RncmVzcWxcMjVcNzB1XDFcMTBwb3N0Z3Jlc1wKK1w3ZnJlZWNpdlwyNVwyNjR0XDFcNHJwdHBcCitcN2ZyZWVjaXZcMjVcMjY0dVwwXAorXDRhbXFwXDI2XDUwdFwwXAorXDRhbXFwXDI2XDUwdVwwXAorXDNnZ3pcMjZcNzB0XDBcCitcM2dnelwyNlw3MHVcMFwKIFwzeDExXDI3XDE2MHRcMVw1eDExLTBcCiBcM3gxMVwyN1wxNjB1XDFcNXgxMS0wXAogXDV4MTEtMVwyN1wxNjF0XDBcCkBAIC0zMjAsNiArMzc1LDEyIEBACiBcMTRnbnV0ZWxsYS1zdmNcMzBcMzEydVwwXAogXDE0Z251dGVsbGEtcnRyXDMwXDMxM3RcMFwKIFwxNGdudXRlbGxhLXJ0clwzMFwzMTN1XDBcCitcMTNzZ2UtcW1hc3RlclwzMVw1NHRcMVwxM3NnZV9xbWFzdGVyXAorXDEzc2dlLXFtYXN0ZXJcMzFcNTR1XDFcMTNzZ2VfcW1hc3RlclwKK1wxMXNnZS1leGVjZFwzMVw1NXRcMVwxMXNnZV9leGVjZFwKK1wxMXNnZS1leGVjZFwzMVw1NXVcMVwxMXNnZV9leGVjZFwKK1wxM215c3FsLXByb3h5XDMxXDU2dFwwXAorXDEzbXlzcWwtcHJveHlcMzFcNTZ1XDBcCiBcMTdhZnMzLWZpbGVzZXJ2ZXJcMzNcMTMwdFwxXDNiYnNcCiBcMTdhZnMzLWZpbGVzZXJ2ZXJcMzNcMTMwdVwxXDNiYnNcCiBcMTVhZnMzLWNhbGxiYWNrXDMzXDEzMXRcMFwKQEAgLTM0MiwxMiArNDAzLDIxIEBACiBcMTNhZnMzLXJtdHN5c1wzM1wxNDF1XDBcCiBcMTRmb250LXNlcnZpY2VcMzNcMjc0dFwxXDN4ZnNcCiBcMTRmb250LXNlcnZpY2VcMzNcMjc0dVwxXDN4ZnNcCitcMTBodHRwLWFsdFwzN1wyMjB0XDFcMTB3ZWJjYWNoZVwKK1wxMGh0dHAtYWx0XDM3XDIyMHVcMFwKIFwxMmJhY3VsYS1kaXJcNDNcMjE1dFwwXAogXDEyYmFjdWxhLWRpclw0M1wyMTV1XDBcCiBcMTFiYWN1bGEtZmRcNDNcMjE2dFwwXAogXDExYmFjdWxhLWZkXDQzXDIxNnVcMFwKIFwxMWJhY3VsYS1zZFw0M1wyMTd0XDBcCiBcMTFiYWN1bGEtc2RcNDNcMjE3dVwwXAorXDV4bW1zMlw0NVwzMDN0XDBcCitcNXhtbXMyXDQ1XDMwM3VcMFwKK1wzbmJkXDUyXDcxdFwwXAorXDE0emFiYml4LWFnZW50XDQ3XDEwMnRcMFwKK1wxNHphYmJpeC1hZ2VudFw0N1wxMDJ1XDBcCitcMTZ6YWJiaXgtdHJhcHBlclw0N1wxMDN0XDBcCitcMTZ6YWJiaXgtdHJhcHBlclw0N1wxMDN1XDBcCiBcNmFtYW5kYVw0N1wxNDB0XDBcCiBcNmFtYW5kYVw0N1wxNDB1XDBcCiBcM2hrcFw1NFwxNTN0XDBcCkBAIC0zNjQsMTYgKzQzNCwxNyBAQAogXDRicGNkXDY1XDMyNnVcMFwKIFw2dm9waWVkXDY1XDMyN3RcMFwKIFw2dm9waWVkXDY1XDMyN3VcMFwKK1w0ZGNhcFwxMjZcMTU1dFwwXAorXDdnc2lkY2FwXDEyNlwxNjB0XDBcCiBcNHdubjZcMTI3XDF0XDBcCiBcNHdubjZcMTI3XDF1XDBcCiBcMTFrZXJiZXJvczRcMlwzNTZ1XDJcMTNrZXJiZXJvcy1pdlwza2RjXAogXDExa2VyYmVyb3M0XDJcMzU2dFwyXDEza2VyYmVyb3MtaXZcM2tkY1wKLVwxN2tlcmJlcm9zX21hc3RlclwyXDM1N3VcMFwKLVwxN2tlcmJlcm9zX21hc3RlclwyXDM1N3RcMFwKLVwxNXBhc3N3ZF9zZXJ2ZXJcMlwzNjB1XDBcCi1cMTBrcmJfcHJvcFwyXDM2MnRcMlwxMWtyYjVfcHJvcFw1aHByb3BcCitcMTdrZXJiZXJvcy1tYXN0ZXJcMlwzNTd1XDFcMTdrZXJiZXJvc19tYXN0ZXJcCitcMTdrZXJiZXJvcy1tYXN0ZXJcMlwzNTd0XDBcCitcMTVwYXNzd2Qtc2VydmVyXDJcMzYwdVwxXDE1cGFzc3dkX3NlcnZlclwKK1wxMGtyYi1wcm9wXDJcMzYydFwzXDEwa3JiX3Byb3BcMTFrcmI1X3Byb3BcNWhwcm9wXAogXDExa3JidXBkYXRlXDJcMzcwdFwxXDRrcmVnXAotXDdrcGFzc3dkXDJcMzcxdFwxXDRrcHdkXAogXDRzd2F0XDNcMjA1dFwwXAogXDRrcG9wXDRcMTI1dFwwXAogXDVrbmV0ZFwxMFw1dFwwXApAQCAtMzg5LDkgKzQ2MCw5IEBACiBcMTBwb3BwYXNzZFwwXDE1MnRcMFwKIFwxMHBvcHBhc3NkXDBcMTUydVwwXAogXDVzc210cFwxXDMyMXRcMVw1c210cHNcCi1cMTBtb2lyYV9kYlwzXDd0XDBcCi1cMTRtb2lyYV91cGRhdGVcM1wxMXRcMFwKLVwxMm1vaXJhX3VyZWdcM1wxM3VcMFwKK1wxMG1vaXJhLWRiXDNcN3RcMVwxMG1vaXJhX2RiXAorXDE0bW9pcmEtdXBkYXRlXDNcMTF0XDFcMTRtb2lyYV91cGRhdGVcCitcMTJtb2lyYS11cmVnXDNcMTN1XDFcMTJtb2lyYV91cmVnXAogXDVzcGFtZFwzXDE3dFwwXAogXDVvbWlyclwzXDUwdFwxXDZvbWlycmRcCiBcNW9taXJyXDNcNTB1XDFcNm9taXJyZFwKQEAgLTQwNCw5ICs0NzUsNyBAQAogXDR4dGVsXDVcNDF0XDBcCiBcNXh0ZWx3XDVcNDJ0XDBcCiBcN3N1cHBvcnRcNVwzNzF0XDBcCi1cNXNpZXZlXDdcMzIwdFwwXAogXDdjZmluZ2VyXDdcMzIzdFwwXAotXDRuZHRwXDdcMzMydFwwXAogXDRmcm94XDEwXDExMXRcMFwKIFwxMG5pbnN0YWxsXDEwXDE0NnRcMFwKIFwxMG5pbnN0YWxsXDEwXDE0NnVcMFwKQEAgLTQzNiw5ICs1MDUsNyBAQAogXDdob3N0bW9uXDI0XDM1M3RcMFwKIFw3aG9zdG1vblwyNFwzNTN1XDBcCiBcNXJwbGF5XDI1XDI2M3VcMFwKLVw1cnBsYXlcMjVcMjYzdFwwXAotXDRycHRwXDI1XDI2NHVcMFwKLVw0cnB0cFwyNVwyNjR0XDBcCitcNG5ycGVcMjZcNDJ0XDBcCiBcNG5zY2FcMjZcNDN0XDBcCiBcNG1ydGRcMjZcNTJ0XDBcCiBcNmJncHNpbVwyNlw1M3RcMFwKQEAgLTQ0NiwxNCArNTEzLDE1IEBACiBcMTFzYW5lLXBvcnRcMzFcMjQ2dFwyXDRzYW5lXDVzYW5lZFwKIFw0aXJjZFwzMlwxM3RcMFwKIFwxMHpvcGUtZnRwXDM3XDEyNXRcMFwKLVwxMHdlYmNhY2hlXDM3XDIyMHRcMFwKIFw2dHByb3h5XDM3XDIyMXRcMFwKIFw3b21uaW9yYlwzN1wyMzB0XDBcCiBcN29tbmlvcmJcMzdcMjMwdVwwXAogXDIwY2xjLWJ1aWxkLWRhZW1vblw0M1wzNnRcMFwKIFw2eGluZXRkXDQzXDIxMnRcMFwKIFwxM21hbmRlbHNwYXduXDQ0XDIxN3VcMVwxMm1hbmRlbGJyb3RcCitcM2dpdFw0NFwzMTJ0XDBcCiBcNHpvcGVcNDVcMzExdFwwXAorXDZ3ZWJtaW5cNDdcMjB0XDBcCiBcN2thbWFuZGFcNDdcMTQxdFwwXAogXDdrYW1hbmRhXDQ3XDE0MXVcMFwKIFwxMWFtYW5kYWlkeFw0N1wxNDJ0XDBcCkBAIC00NzMsNiArNTQxLDcgQEAKIFw1Ymlua3BcMTM3XDM1MnRcMFwKIFwzYXNwXDE1MlwzNTZ0XDBcCiBcM2FzcFwxNTJcMzU2dVwwXAorXDZjc3luYzJcMTcwXDIyMXRcMFwKIFwxMWRpcmNwcm94eVwzMzZcMjUwdFwwXAogXDV0Zmlkb1wzNTNcMjF0XDBcCiBcNGZpZG9cMzUzXDIzdFwwXApkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L3NldGhvc3RlbnQuYyBiL2xpYmMvZG5zL25ldC9zZXRob3N0ZW50LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTE2NDIxZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvZG5zL25ldC9zZXRob3N0ZW50LmMKQEAgLTAsMCArMSwyNzUgQEAKKy8qCSROZXRCU0Q6IHNldGhvc3RlbnQuYyx2IDEuMjAgMjAxNC8wMy8xNyAxMzoyNDoyMyBjaHJpc3RvcyBFeHAgJAkqLworCisvKgorICogQ29weXJpZ2h0IChjKSAxOTg1LCAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQorI2lmIDAKK3N0YXRpYyBjaGFyIHNjY3NpZFtdID0gIkAoIylzZXRob3N0ZW50LmMJOC4xIChCZXJrZWxleSkgNi80LzkzIjsKK3N0YXRpYyBjaGFyIHJjc2lkW10gPSAiSWQ6IHNldGhvc3RlbnQuYyx2IDguNSAxOTk2LzA5LzI4IDA2OjUxOjA3IHZpeGllIEV4cCAiOworI2Vsc2UKK19fUkNTSUQoIiROZXRCU0Q6IHNldGhvc3RlbnQuYyx2IDEuMjAgMjAxNC8wMy8xNyAxMzoyNDoyMyBjaHJpc3RvcyBFeHAgJCIpOworI2VuZGlmCisjZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLworCisjaW5jbHVkZSAibmFtZXNwYWNlLmgiCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPGFycGEvbmFtZXNlci5oPgorI2luY2x1ZGUgPGFycGEvaW5ldC5oPgorI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPG5zc3dpdGNoLmg+CisjaW5jbHVkZSA8bmV0ZGIuaD4KKyNpbmNsdWRlIDxyZXNvbHYuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSAiaG9zdGVudC5oIgorI2luY2x1ZGUgInJlc29sdl9wcml2YXRlLmgiCisKKyNkZWZpbmUgQUxJR05CWVRFUyAoc2l6ZW9mKHVpbnRwdHJfdCkgLSAxKQorI2RlZmluZSBBTElHTihwKSAoKCh1aW50cHRyX3QpKHApICsgQUxJR05CWVRFUykgJn4gQUxJR05CWVRFUykKKworI2lmbmRlZiBfUkVFTlRSQU5UCit2b2lkCXJlc19jbG9zZSh2b2lkKTsKKyNlbmRpZgorCitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKl9oZl9nZXRodGJ5bmFtZTIoY29uc3QgY2hhciAqLCBpbnQsIHN0cnVjdCBnZXRuYW1hZGRyICopOworCitzdGF0aWMgY29uc3QgY2hhciAqX2hfaG9zdHMgPSBfUEFUSF9IT1NUUzsKKwordm9pZAorc2V0aG9zdGVudF9yKEZJTEUgKipoZikKK3sKKwlpZiAoISpoZikKKwkJKmhmID0gZm9wZW4oX2hfaG9zdHMsICJyZSIpOworCWVsc2UKKwkJcmV3aW5kKCpoZik7Cit9CisKK3ZvaWQKK2VuZGhvc3RlbnRfcihGSUxFICoqaGYpCit7CisJaWYgKCpoZikgeworCQkodm9pZClmY2xvc2UoKmhmKTsKKwkJKmhmID0gTlVMTDsKKwl9Cit9CisKKy8qQVJHU1VTRUQqLworaW50CitfaGZfZ2V0aHRieW5hbWUodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCit7CisJc3RydWN0IGhvc3RlbnQgKmhwOworCWNvbnN0IGNoYXIgKm5hbWU7CisJaW50IGFmOworCXN0cnVjdCBnZXRuYW1hZGRyICppbmZvID0gcnY7CisKKwlfRElBR0FTU0VSVChydiAhPSBOVUxMKTsKKworCW5hbWUgPSB2YV9hcmcoYXAsIGNoYXIgKik7CisJLyogTk9TVFJJQ1Qgc2tpcCBzdHJpbmcgbGVuICovKHZvaWQpdmFfYXJnKGFwLCBpbnQpOworCWFmID0gdmFfYXJnKGFwLCBpbnQpOworCisjaWYgMAorCXsKKwkJcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCQlpZiAocmVzID09IE5VTEwpCisJCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KQorCQkJaHAgPSBfaGZfZ2V0aHRieW5hbWUyKG5hbWUsIEFGX0lORVQ2LCBpbmZvKTsKKwkJZWxzZQorCQkJaHAgPSBOVUxMOworCQlpZiAoaHAgPT0gTlVMTCkKKwkJCWhwID0gX2hmX2dldGh0YnluYW1lMihuYW1lLCBBRl9JTkVULCBpbmZvKTsKKwkJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJfQorI2Vsc2UKKwlocCA9IF9oZl9nZXRodGJ5bmFtZTIobmFtZSwgYWYsIGluZm8pOworI2VuZGlmCisJaWYgKGhwID09IE5VTEwpIHsKKwkJaWYgKCppbmZvLT5oZSA9PSBORVREQl9JTlRFUk5BTCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkJCXJldHVybiBOU19VTkFWQUlMOworCQl9CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmV0dXJuIE5TX1NVQ0NFU1M7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCitfaGZfZ2V0aHRieW5hbWUyKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgc3RydWN0IGdldG5hbWFkZHIgKmluZm8pCit7CisJc3RydWN0IGhvc3RlbnQgKmhwLCBoZW50OworCWNoYXIgKmJ1ZiwgKnB0cjsKKwlzaXplX3QgbGVuLCBhbnVtLCBudW0sIGk7CisJRklMRSAqaGY7CisJY2hhciAqYWxpYXNlc1tNQVhBTElBU0VTXTsKKwljaGFyICphZGRyX3B0cnNbTUFYQUREUlNdOworCisJX0RJQUdBU1NFUlQobmFtZSAhPSBOVUxMKTsKKworCWhmID0gTlVMTDsKKwlzZXRob3N0ZW50X3IoJmhmKTsKKwlpZiAoaGYgPT0gTlVMTCkgeworCQllcnJubyA9IEVJTlZBTDsKKwkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiBOVUxMOworCX0KKworCWlmICgocHRyID0gYnVmID0gbWFsbG9jKGxlbiA9IGluZm8tPmJ1ZmxlbikpID09IE5VTEwpIHsKKwkJZW5kaG9zdGVudF9yKCZoZik7CisJCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwlhbnVtID0gMDsJCS8qIFhYWDogZ2NjICovCisJaGVudC5oX25hbWUgPSBOVUxMOwkvKiBYWFg6IGdjYyAqLworCWhlbnQuaF9hZGRydHlwZSA9IDA7CS8qIFhYWDogZ2NjICovCisJaGVudC5oX2xlbmd0aCA9IDA7CS8qIFhYWDogZ2NjICovCisKKwlmb3IgKG51bSA9IDA7IG51bSA8IE1BWEFERFJTOykgeworCQlpbmZvLT5ocC0+aF9hZGRydHlwZSA9IGFmOworCQlpbmZvLT5ocC0+aF9sZW5ndGggPSAwOworCisJCWhwID0gbmV0YnNkX2dldGhvc3RlbnRfcihoZiwgaW5mby0+aHAsIGluZm8tPmJ1ZiwgaW5mby0+YnVmbGVuLAorCQkgICAgaW5mby0+aGUpOworCQlpZiAoaHAgPT0gTlVMTCkgeworCQkJaWYgKCppbmZvLT5oZSA9PSBORVREQl9JTlRFUk5BTCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkJCQlnb3RvIG5vc3BjOworCQkJfQorCQkJYnJlYWs7CisJCX0KKworCQlpZiAoc3RyY2FzZWNtcChocC0+aF9uYW1lLCBuYW1lKSAhPSAwKSB7CisJCQljaGFyICoqY3A7CisJCQlmb3IgKGNwID0gaHAtPmhfYWxpYXNlczsgKmNwICE9IE5VTEw7IGNwKyspCisJCQkJaWYgKHN0cmNhc2VjbXAoKmNwLCBuYW1lKSA9PSAwKQorCQkJCQlicmVhazsKKwkJCWlmICgqY3AgPT0gTlVMTCkgY29udGludWU7CisJCX0KKworCQlpZiAobnVtID09IDApIHsKKwkJCWhlbnQuaF9hZGRydHlwZSA9IGFmID0gaHAtPmhfYWRkcnR5cGU7CisJCQloZW50LmhfbGVuZ3RoID0gaHAtPmhfbGVuZ3RoOworCisJCQlIRU5UX1NDT1BZKGhlbnQuaF9uYW1lLCBocC0+aF9uYW1lLCBwdHIsIGxlbik7CisJCQlmb3IgKGFudW0gPSAwOyBocC0+aF9hbGlhc2VzW2FudW1dOyBhbnVtKyspIHsKKwkJCQlpZiAoYW51bSA+PSBNQVhBTElBU0VTKQorCQkJCQlnb3RvIG5vc3BjOworCQkJCUhFTlRfU0NPUFkoYWxpYXNlc1thbnVtXSwgaHAtPmhfYWxpYXNlc1thbnVtXSwKKwkJCQkgICAgcHRyLCBsZW4pOworCQkJfQorCQkJcHRyID0gKHZvaWQgKilBTElHTihwdHIpOworCQkJaWYgKChzaXplX3QpKHB0ciAtIGJ1ZikgPj0gaW5mby0+YnVmbGVuKQorCQkJCWdvdG8gbm9zcGM7CisJCX0KKworCQlpZiAobnVtID49IE1BWEFERFJTKQorCQkJZ290byBub3NwYzsKKwkJSEVOVF9DT1BZKGFkZHJfcHRyc1tudW1dLCBocC0+aF9hZGRyX2xpc3RbMF0sIGhwLT5oX2xlbmd0aCwgcHRyLAorCQkgICAgbGVuKTsKKwkJbnVtKys7CisJfQorCWVuZGhvc3RlbnRfcigmaGYpOworCisJaWYgKG51bSA9PSAwKSB7CisJCSppbmZvLT5oZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlmcmVlKGJ1Zik7CisJCXJldHVybiBOVUxMOworCX0KKworCWhwID0gaW5mby0+aHA7CisJcHRyID0gaW5mby0+YnVmOworCWxlbiA9IGluZm8tPmJ1ZmxlbjsKKworCWhwLT5oX2FkZHJ0eXBlID0gaGVudC5oX2FkZHJ0eXBlOworCWhwLT5oX2xlbmd0aCA9IGhlbnQuaF9sZW5ndGg7CisKKwlIRU5UX0FSUkFZKGhwLT5oX2FsaWFzZXMsIGFudW0sIHB0ciwgbGVuKTsKKwlIRU5UX0FSUkFZKGhwLT5oX2FkZHJfbGlzdCwgbnVtLCBwdHIsIGxlbik7CisKKwlmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKyspCisJCUhFTlRfQ09QWShocC0+aF9hZGRyX2xpc3RbaV0sIGFkZHJfcHRyc1tpXSwgaHAtPmhfbGVuZ3RoLCBwdHIsCisJCSAgICBsZW4pOworCWhwLT5oX2FkZHJfbGlzdFtudW1dID0gTlVMTDsKKworCUhFTlRfU0NPUFkoaHAtPmhfbmFtZSwgaGVudC5oX25hbWUsIHB0ciwgbGVuKTsKKworCWZvciAoaSA9IDA7IGkgPCBhbnVtOyBpKyspCisJCUhFTlRfU0NPUFkoaHAtPmhfYWxpYXNlc1tpXSwgYWxpYXNlc1tpXSwgcHRyLCBsZW4pOworCWhwLT5oX2FsaWFzZXNbYW51bV0gPSBOVUxMOworCisJZnJlZShidWYpOworCXJldHVybiBocDsKK25vc3BjOgorCWVuZGhvc3RlbnRfcigmaGYpOworCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCWZyZWUoYnVmKTsKKwllcnJubyA9IEVOT1NQQzsKKwlyZXR1cm4gTlVMTDsKK30KKworLypBUkdTVVNFRCovCitpbnQKK19oZl9nZXRodGJ5YWRkcih2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqaHA7CisJY29uc3QgdW5zaWduZWQgY2hhciAqYWRkcjsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbyA9IHJ2OworCUZJTEUgKmhmOworCisJX0RJQUdBU1NFUlQocnYgIT0gTlVMTCk7CisKKwlhZGRyID0gdmFfYXJnKGFwLCB1bnNpZ25lZCBjaGFyICopOworCWluZm8tPmhwLT5oX2xlbmd0aCA9IHZhX2FyZyhhcCwgaW50KTsKKwlpbmZvLT5ocC0+aF9hZGRydHlwZSA9IHZhX2FyZyhhcCwgaW50KTsKKworCWhmID0gTlVMTDsKKwlzZXRob3N0ZW50X3IoJmhmKTsKKwlpZiAoaGYgPT0gTlVMTCkgeworCQkqaW5mby0+aGUgPSBORVREQl9JTlRFUk5BTDsKKwkJcmV0dXJuIE5TX1VOQVZBSUw7CisJfQorCXdoaWxlICgoaHAgPSBuZXRic2RfZ2V0aG9zdGVudF9yKGhmLCBpbmZvLT5ocCwgaW5mby0+YnVmLCBpbmZvLT5idWZsZW4sCisJICAgIGluZm8tPmhlKSkgIT0gTlVMTCkKKwkJaWYgKCFtZW1jbXAoaHAtPmhfYWRkcl9saXN0WzBdLCBhZGRyLCAoc2l6ZV90KWhwLT5oX2xlbmd0aCkpCisJCQlicmVhazsKKwllbmRob3N0ZW50X3IoJmhmKTsKKworCWlmIChocCA9PSBOVUxMKSB7CisJCWlmIChlcnJubyA9PSBFTk9TUEMpIHsKKwkJCXJldHVybiBOU19VTkFWQUlMOworCQl9CisJCSppbmZvLT5oZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCXJldHVybiBOU19TVUNDRVNTOworfQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvcmVzb2x2L3Jlc19jYWNoZS5jIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19jYWNoZS5jCmluZGV4IGQ2OGVjM2IuLjVhNzg0NTAgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfY2FjaGUuYworKysgYi9saWJjL2Rucy9yZXNvbHYvcmVzX2NhY2hlLmMKQEAgLTI4LDYgKzI4LDggQEAKIAogI2luY2x1ZGUgInJlc29sdl9jYWNoZS5oIgogI2luY2x1ZGUgPHJlc29sdi5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dGltZS5oPgpAQCAtNDUsNiArNDcsOCBAQAogI2luY2x1ZGUgInJlc29sdl9uZXRpZC5oIgogI2luY2x1ZGUgInJlc19wcml2YXRlLmgiCiAKKyNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorCiAvKiBUaGlzIGNvZGUgaW1wbGVtZW50cyBhIHNtYWxsIGFuZCAqc2ltcGxlKiBETlMgcmVzb2x2ZXIgY2FjaGUuCiAgKgogICogSXQgaXMgb25seSB1c2VkIHRvIGNhY2hlIEROUyBhbnN3ZXJzIGZvciBhIHRpbWUgZGVmaW5lZCBieSB0aGUgc21hbGxlc3QgVFRMCkBAIC0xMDAsMTAgKzEwNCw2IEBACiAgKi8KICNkZWZpbmUgIENPTkZJR19FTlYgICJCSU9OSUNfRE5TQ0FDSEUiCiAKLS8qIGVudHJpZXMgb2xkZXIgdGhhbiBDT05GSUdfU0VDT05EUyBzZWNvbmRzIGFyZSBhbHdheXMgZGlzY2FyZGVkLgotICovCi0jZGVmaW5lICBDT05GSUdfU0VDT05EUyAgICAoNjAqMTApICAgIC8qIDEwIG1pbnV0ZXMgKi8KLQogLyogZGVmYXVsdCBudW1iZXIgb2YgZW50cmllcyBrZXB0IGluIHRoZSBjYWNoZS4gVGhpcyB2YWx1ZSBoYXMgYmVlbgogICogZGV0ZXJtaW5lZCBieSBicm93c2luZyB0aHJvdWdoIHZhcmlvdXMgc2l0ZXMgYW5kIGNvdW50aW5nIHRoZSBudW1iZXIKICAqIG9mIGNvcnJlc3BvbmRpbmcgcmVxdWVzdHMuIEtlZXAgaW4gbWluZCB0aGF0IG91ciBmcmFtZXdvcmsgaXMgY3VycmVudGx5CkBAIC0xNTIsMTMgKzE1MiwyMSBAQAogLyogc2V0IHRvIDEgdG8gZGVidWcgcXVlcnkgZGF0YSAqLwogI2RlZmluZSAgREVCVUdfREFUQSAgMAogCi0jdW5kZWYgWExPRwogI2lmIERFQlVHCi0jICBpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgotIyAgZGVmaW5lIFhMT0coLi4uKSAgX19saWJjX2Zvcm1hdF9sb2coQU5EUk9JRF9MT0dfREVCVUcsImxpYmMiLF9fVkFfQVJHU19fKQorI2RlZmluZSBfX0RFQlVHX18KKyNlbHNlCisjZGVmaW5lIF9fREVCVUdfXyBfX2F0dHJpYnV0ZV9fKCh1bnVzZWQpKQorI2VuZGlmCiAKLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0ZGFyZy5oPgorI3VuZGVmIFhMT0cKKworI2RlZmluZSBYTE9HKC4uLikgKHsgXAorICAgIGlmIChERUJVRykgeyBcCisgICAgICAgIF9fbGliY19mb3JtYXRfbG9nKEFORFJPSURfTE9HX0RFQlVHLCJsaWJjIixfX1ZBX0FSR1NfXyk7IFwKKyAgICB9IGVsc2UgeyBcCisgICAgICAgICgodm9pZCkwKTsgXAorICAgIH0gXAorfSkKIAogLyoqIEJPVU5ERUQgQlVGRkVSIEZPUk1BVFRJTkcKICAqKi8KQEAgLTIwNSw3ICsyMTMsNyBAQAogICovCiAKIC8qIGFkZCBhIGNoYXIgdG8gYSBib3VuZGVkIGJ1ZmZlciAqLwotc3RhdGljIGNoYXIqCitjaGFyKgogX2JwcmludF9jKCBjaGFyKiAgcCwgY2hhciogIGVuZCwgaW50ICBjICkKIHsKICAgICBpZiAocCA8IGVuZCkgewpAQCAtMjIwLDcgKzIyOCw3IEBACiB9CiAKIC8qIGFkZCBhIHNlcXVlbmNlIG9mIGJ5dGVzIHRvIGEgYm91bmRlZCBidWZmZXIgKi8KLXN0YXRpYyBjaGFyKgorY2hhcioKIF9icHJpbnRfYiggY2hhciogIHAsIGNoYXIqICBlbmQsIGNvbnN0IGNoYXIqICBidWYsIGludCAgbGVuICkKIHsKICAgICBpbnQgIGF2YWlsID0gZW5kIC0gcDsKQEAgLTI0MywxNSArMjUxLDE1IEBACiB9CiAKIC8qIGFkZCBhIHN0cmluZyB0byBhIGJvdW5kZWQgYnVmZmVyICovCi1zdGF0aWMgY2hhcioKK2NoYXIqCiBfYnByaW50X3MoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCBjb25zdCBjaGFyKiAgc3RyICkKIHsKICAgICByZXR1cm4gX2JwcmludF9iKHAsIGVuZCwgc3RyLCBzdHJsZW4oc3RyKSk7CiB9CiAKIC8qIGFkZCBhIGZvcm1hdHRlZCBzdHJpbmcgdG8gYSBib3VuZGVkIGJ1ZmZlciAqLwotc3RhdGljIGNoYXIqCi1fYnByaW50KCBjaGFyKiAgcCwgY2hhciogIGVuZCwgY29uc3QgY2hhciogIGZvcm1hdCwgLi4uICkKK2NoYXIqIF9icHJpbnQoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCBjb25zdCBjaGFyKiAgZm9ybWF0LCAuLi4gKSBfX0RFQlVHX187CitjaGFyKiBfYnByaW50KCBjaGFyKiAgcCwgY2hhciogIGVuZCwgY29uc3QgY2hhciogIGZvcm1hdCwgLi4uICkKIHsKICAgICBpbnQgICAgICBhdmFpbCwgbjsKICAgICB2YV9saXN0ICBhcmdzOwpAQCAtMjc4LDcgKzI4Niw3IEBACiB9CiAKIC8qIGFkZCBhIGhleCB2YWx1ZSB0byBhIGJvdW5kZWQgYnVmZmVyLCB1cCB0byA4IGRpZ2l0cyAqLwotc3RhdGljIGNoYXIqCitjaGFyKgogX2JwcmludF9oZXgoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCB1bnNpZ25lZCAgdmFsdWUsIGludCAgbnVtRGlnaXRzICkKIHsKICAgICBjaGFyICAgdGV4dFtzaXplb2YodW5zaWduZWQpKjJdOwpAQCAtMjkxLDcgKzI5OSw3IEBACiB9CiAKIC8qIGFkZCB0aGUgaGV4YWRlY2ltYWwgZHVtcCBvZiBzb21lIG1lbW9yeSBhcmVhIHRvIGEgYm91bmRlZCBidWZmZXIgKi8KLXN0YXRpYyBjaGFyKgorY2hhcioKIF9icHJpbnRfaGV4ZHVtcCggY2hhciogIHAsIGNoYXIqICBlbmQsIGNvbnN0IHVpbnQ4X3QqICBkYXRhLCBpbnQgIGRhdGFsZW4gKQogewogICAgIGludCAgIGxpbmVTaXplID0gMTY7CkBAIC0zMzAsMjAgKzMzOCwxNyBAQAogfQogCiAvKiBkdW1wIHRoZSBjb250ZW50IG9mIGEgcXVlcnkgb2YgcGFja2V0IHRvIHRoZSBsb2cgKi8KLXN0YXRpYyB2b2lkCi1YTE9HX0JZVEVTKCBjb25zdCB2b2lkKiAgYmFzZSwgaW50ICBsZW4gKQordm9pZCBYTE9HX0JZVEVTKCBjb25zdCB2b2lkKiAgYmFzZSwgaW50ICBsZW4gKSBfX0RFQlVHX187Cit2b2lkIFhMT0dfQllURVMoIGNvbnN0IHZvaWQqICBiYXNlLCBpbnQgIGxlbiApCiB7Ci0gICAgY2hhciAgYnVmZlsxMDI0XTsKLSAgICBjaGFyKiAgcCA9IGJ1ZmYsICplbmQgPSBwICsgc2l6ZW9mKGJ1ZmYpOworICAgIGlmIChERUJVR19EQVRBKSB7CisgICAgICAgIGNoYXIgIGJ1ZmZbMTAyNF07CisgICAgICAgIGNoYXIqICBwID0gYnVmZiwgKmVuZCA9IHAgKyBzaXplb2YoYnVmZik7CiAKLSAgICBwID0gX2JwcmludF9oZXhkdW1wKHAsIGVuZCwgYmFzZSwgbGVuKTsKLSAgICBYTE9HKCIlcyIsYnVmZik7Ci19Ci0KLSNlbHNlIC8qICFERUJVRyAqLwotIyAgZGVmaW5lICBYTE9HKC4uLikgICAgICAgICgodm9pZCkwKQotIyAgZGVmaW5lICBYTE9HX0JZVEVTKGEsYikgICgodm9pZCkwKQotI2VuZGlmCisgICAgICAgIHAgPSBfYnByaW50X2hleGR1bXAocCwgZW5kLCBiYXNlLCBsZW4pOworICAgICAgICBYTE9HKCIlcyIsYnVmZik7CisgICAgfQorfSBfX0RFQlVHX18KIAogc3RhdGljIHRpbWVfdAogX3RpbWVfbm93KCB2b2lkICkKQEAgLTEwOTAsNyArMTA5NSw3IEBACiAgICAgICAgIFhMT0coIm5zX3BhcnNlcnIgZmFpbGVkLiAlc1xuIiwgc3RyZXJyb3IoZXJybm8pKTsKICAgICB9CiAKLSAgICBYTE9HKCJUVEwgPSAlZFxuIiwgcmVzdWx0KTsKKyAgICBYTE9HKCJUVEwgPSAlbHVcbiIsIHJlc3VsdCk7CiAKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMTQ1Myw3ICsxNDU4LDcgQEAKICAgICBjaGFyKiBidWY7CiAgICAgaW50IGZpbGVMZW47CiAKLSAgICBmcCA9IGZvcGVuKCIvZGF0YS9yZXNsb2cudHh0IiwgIncrIik7CisgICAgZnAgPSBmb3BlbigiL2RhdGEvcmVzbG9nLnR4dCIsICJ3K2UiKTsKICAgICBpZiAoZnAgIT0gTlVMTCkgewogICAgICAgICBzdGF0ZXAgPSBfX3Jlc19nZXRfc3RhdGUoKTsKIApAQCAtMTk0OSw3ICsxOTU0LDcgQEAKICAgICAgICAgaGludHMuYWlfZmFtaWx5ID0gUEZfVU5TUEVDOwogICAgICAgICBoaW50cy5haV9zb2NrdHlwZSA9IFNPQ0tfREdSQU07IC8qZHVtbXkqLwogICAgICAgICBoaW50cy5haV9mbGFncyA9IEFJX05VTUVSSUNIT1NUOwotICAgICAgICBzcHJpbnRmKHNidWYsICIldSIsIE5BTUVTRVJWRVJfUE9SVCk7CisgICAgICAgIHNucHJpbnRmKHNidWYsIHNpemVvZihzYnVmKSwgIiV1IiwgTkFNRVNFUlZFUl9QT1JUKTsKIAogICAgICAgICBpbmRleCA9IDA7CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBudW1zZXJ2ZXJzICYmIGkgPCBNQVhOUzsgaSsrKSB7CmRpZmYgLS1naXQgYS9saWJjL2Rucy9yZXNvbHYvcmVzX2RlYnVnLmMgYi9saWJjL2Rucy9yZXNvbHYvcmVzX2RlYnVnLmMKaW5kZXggN2EwNWE1Zi4uNWY4ODljYiAxMDA2NDQKLS0tIGEvbGliYy9kbnMvcmVzb2x2L3Jlc19kZWJ1Zy5jCisrKyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfZGVidWcuYwpAQCAtMTI2LDE0ICsxMjYsNiBAQAogI2luY2x1ZGUgPHN0cmluZ3MuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAKLQotCi0jaWZkZWYgU1BSSU5URl9DSEFSCi0jIGRlZmluZSBTUFJJTlRGKHgpIHN0cmxlbihzcHJpbnRmLyoqL3gpCi0jZWxzZQotIyBkZWZpbmUgU1BSSU5URih4KSBzcHJpbnRmIHgKLSNlbmRpZgotCiBleHRlcm4gY29uc3QgY2hhciAqIGNvbnN0IF9yZXNfb3Bjb2Rlc1tdOwogZXh0ZXJuIGNvbnN0IGNoYXIgKiBjb25zdCBfcmVzX3NlY3Rpb25jb2Rlc1tdOwogCkBAIC01ODgsNyArNTgwLDcgQEAKIAkJfQogCX0KIAotCXNwcmludGYodW5uYW1lLCAiJWQiLCBudW1iZXIpOwkJLyogWFhYIG5vbnJlZW50cmFudCAqLworCXNucHJpbnRmKHVubmFtZSwgc2l6ZW9mKHVubmFtZSksICIlZCIsIG51bWJlcik7CQkvKiBYWFggbm9ucmVlbnRyYW50ICovCiAJaWYgKHN1Y2Nlc3MpCiAJCSpzdWNjZXNzID0gMDsKIAlyZXR1cm4gKHVubmFtZSk7CkBAIC02MDUsNyArNTk3LDcgQEAKIAkJCXJldHVybiAoc3ltcy0+aHVtYW5uYW1lKTsKIAkJfQogCX0KLQlzcHJpbnRmKHVubmFtZSwgIiVkIiwgbnVtYmVyKTsJCS8qIFhYWCBub25yZWVudHJhbnQgKi8KKwlzbnByaW50Zih1bm5hbWUsIHNpemVvZih1bm5hbWUpLCAiJWQiLCBudW1iZXIpOwkJLyogWFhYIG5vbnJlZW50cmFudCAqLwogCWlmIChzdWNjZXNzKQogCQkqc3VjY2VzcyA9IDA7CiAJcmV0dXJuICh1bm5hbWUpOwpAQCAtNjI1LDcgKzYxNyw3IEBACiAJCXJldHVybiAocmVzdWx0KTsKIAlpZiAodHlwZSA8IDAgfHwgdHlwZSA+IDB4ZmZmZikKIAkJcmV0dXJuICgiQkFEVFlQRSIpOwotCXNwcmludGYodHlwZWJ1ZiwgIlRZUEUlZCIsIHR5cGUpOworCXNucHJpbnRmKHR5cGVidWYsIHNpemVvZih0eXBlYnVmKSwgIlRZUEUlZCIsIHR5cGUpOwogCXJldHVybiAodHlwZWJ1Zik7CiB9CiAKQEAgLTY2MSw3ICs2NTMsNyBAQAogCQlyZXR1cm4gKHJlc3VsdCk7CiAJaWYgKGNsYXNzIDwgMCB8fCBjbGFzcyA+IDB4ZmZmZikKIAkJcmV0dXJuICgiQkFEQ0xBU1MiKTsKLQlzcHJpbnRmKGNsYXNzYnVmLCAiQ0xBU1MlZCIsIGNsYXNzKTsKKwlzbnByaW50ZihjbGFzc2J1Ziwgc2l6ZW9mKGNsYXNzYnVmKSwgIkNMQVNTJWQiLCBjbGFzcyk7CiAJcmV0dXJuIChjbGFzc2J1Zik7CiB9CiAKQEAgLTcwMyw3ICs2OTUsNyBAQAogCWNhc2UgUkVTX05PX05JQkJMRTI6CXJldHVybiAibm8tbmliYmxlMiI7CiAjZW5kaWYKIAkJCQkvKiBYWFggbm9ucmVlbnRyYW50ICovCi0JZGVmYXVsdDoJCXNwcmludGYobmJ1ZiwgIj8weCVseD8iLCAodV9sb25nKW9wdGlvbik7CisJZGVmYXVsdDoJCXNucHJpbnRmKG5idWYsIHNpemVvZihuYnVmKSwgIj8weCVseD8iLCAodV9sb25nKW9wdGlvbik7CiAJCQkJcmV0dXJuIChuYnVmKTsKIAl9CiB9CkBAIC03MTYsNyArNzA4LDcgQEAKIAlzdGF0aWMgY2hhciBuYnVmWzQwXTsJCS8qIFhYWCBub25yZWVudHJhbnQgKi8KIAogCWlmIChuc19mb3JtYXRfdHRsKCh1X2xvbmcpdmFsdWUsIG5idWYsIHNpemVvZiBuYnVmKSA8IDApCi0JCXNwcmludGYobmJ1ZiwgIiV1IiwgdmFsdWUpOworCQlzbnByaW50ZihuYnVmLCBzaXplb2YobmJ1ZiksICIldSIsIHZhbHVlKTsKIAlyZXR1cm4gKG5idWYpOwogfQogCkBAIC03NDUsNyArNzM3LDcgQEAKIAkJYnJlYWs7CiAjZW5kaWYKIAlkZWZhdWx0OgotCQlzcHJpbnRmKHJldCwgIlthZiVkXSIsIHUuc2luLnNpbl9mYW1pbHkpOworCQlzbnByaW50ZihyZXQsIHNpemVvZihyZXQpLCAiW2FmJWRdIiwgdS5zaW4uc2luX2ZhbWlseSk7CiAJCWJyZWFrOwogCX0KIAlpZiAoc2l6ZSA+IDBVKSB7CkBAIC03NzcsNyArNzY5LDcgQEAKIAogCXZhbCA9IG1hbnRpc3NhICogcG93ZXJvZnRlbltleHBvbmVudF07CiAKLQkodm9pZCkgc3ByaW50ZihyZXRidWYsICIlbHUuJS4ybHUiLCB2YWwvMTAwLCB2YWwlMTAwKTsKKwkodm9pZCkgc25wcmludGYocmV0YnVmLCBzaXplb2YocmV0YnVmKSwgIiVsdS4lLjJsdSIsIHZhbC8xMDAsIHZhbCUxMDApOwogCXJldHVybiAocmV0YnVmKTsKIH0KIApAQCAtMTAyOCw3ICsxMDIwLDcgQEAKIAogLyogdGFrZXMgYW4gb24tdGhlLXdpcmUgTE9DIFJSIGFuZCBmb3JtYXRzIGl0IGluIGEgaHVtYW4gcmVhZGFibGUgZm9ybWF0LiAqLwogY29uc3QgY2hhciAqCi1sb2NfbnRvYShjb25zdCB1X2NoYXIgKmJpbmFyeSwgY2hhciAqYXNjaWkpCitsb2NfbnRvYShjb25zdCB1X2NoYXIgKmJpbmFyeSwgY2hhciAqYXNjaWksIHNpemVfdCBidWZzaXopCiB7CiAJc3RhdGljIGNvbnN0IGNoYXIgKmVycm9yID0gIj8iOwogCXN0YXRpYyBjaGFyIHRtcGJ1ZltzaXplb2YKQEAgLTEwNTUsNyArMTA0Nyw3IEBACiAJCWFzY2lpID0gdG1wYnVmOwogCiAJaWYgKHZlcnNpb252YWwpIHsKLQkJKHZvaWQpIHNwcmludGYoYXNjaWksICI7IGVycm9yOiB1bmtub3duIExPQyBSUiB2ZXJzaW9uIik7CisJCSh2b2lkKSBzbnByaW50Zihhc2NpaSwgYnVmc2l6LCAiOyBlcnJvcjogdW5rbm93biBMT0MgUlIgdmVyc2lvbiIpOwogCQlyZXR1cm4gKGFzY2lpKTsKIAl9CiAKQEAgLTExMTQsNyArMTEwNiw3IEBACiAJaHBzdHIgPSBzdHJkdXAocHJlY3NpemVfbnRvYSgodV9pbnQzMl90KWhwdmFsKSk7CiAJdnBzdHIgPSBzdHJkdXAocHJlY3NpemVfbnRvYSgodV9pbnQzMl90KXZwdmFsKSk7CiAKLQlzcHJpbnRmKGFzY2lpLAorCXNucHJpbnRmKGFzY2lpLCBidWZzaXosCiAJICAgICIlZCAlLjJkICUuMmQuJS4zZCAlYyAlZCAlLjJkICUuMmQuJS4zZCAlYyAlcyVkLiUuMmRtICVzbSAlc20gJXNtIiwKIAkJbGF0ZGVnLCBsYXRtaW4sIGxhdHNlYywgbGF0c2VjZnJhYywgbm9ydGhzb3V0aCwKIAkJbG9uZ2RlZywgbG9uZ21pbiwgbG9uZ3NlYywgbG9uZ3NlY2ZyYWMsIGVhc3R3ZXN0LApAQCAtMTE4MCw3ICsxMTcyLDcgQEAKICNlbmRpZgogCW15dGltZS0+dG1feWVhciArPSAxOTAwOwogCW15dGltZS0+dG1fbW9uICs9IDE7Ci0Jc3ByaW50ZihvdXRwdXQsICIlMDRkJTAyZCUwMmQlMDJkJTAyZCUwMmQiLAorCXNucHJpbnRmKG91dHB1dCwgc2l6ZW9mKG91dHB1dCksICIlMDRkJTAyZCUwMmQlMDJkJTAyZCUwMmQiLAogCQlteXRpbWUtPnRtX3llYXIsIG15dGltZS0+dG1fbW9uLCBteXRpbWUtPnRtX21kYXksCiAJCW15dGltZS0+dG1faG91ciwgbXl0aW1lLT50bV9taW4sIG15dGltZS0+dG1fc2VjKTsKIAlyZXR1cm4gKG91dHB1dCk7CmRpZmYgLS1naXQgYS9saWJjL2Rucy9yZXNvbHYvcmVzX2luaXQuYyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfaW5pdC5jCmluZGV4IGYxY2JlZDguLjcxM2I2ZTAgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfaW5pdC5jCisrKyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfaW5pdC5jCkBAIC0yODksNyArMjg5LDcgQEAKIAkgbGluZVtzaXplb2YobmFtZSkgLSAxXSA9PSAnXHQnKSkKIAogCW5zZXJ2ID0gMDsKLQlpZiAoKGZwID0gZm9wZW4oX1BBVEhfUkVTQ09ORiwgInIiKSkgIT0gTlVMTCkgeworCWlmICgoZnAgPSBmb3BlbihfUEFUSF9SRVNDT05GLCAicmUiKSkgIT0gTlVMTCkgewogCSAgICAvKiByZWFkIHRoZSBjb25maWcgZmlsZSAqLwogCSAgICB3aGlsZSAoZmdldHMoYnVmLCBzaXplb2YoYnVmKSwgZnApICE9IE5VTEwpIHsKIAkJLyogc2tpcCBjb21tZW50cyAqLwpAQCAtNjE2LDQ3ICs2MTYsNiBAQAogfQogI2VuZGlmCiAKLSNpZmRlZiBBTkRST0lEX0NIQU5HRVMKLXN0YXRpYyBpbnQKLXJlYWxfcmFuZG9taWQodV9pbnQgKnJhbmRvbV92YWx1ZSkgewotCS8qIG9wZW4gdGhlIG5vbmJsb2NraW5nIHJhbmRvbSBkZXZpY2UsIHJldHVybmluZyAtMSBvbiBmYWlsdXJlICovCi0JaW50IHJhbmRvbV9kZXZpY2UgPSBvcGVuKCIvZGV2L3VyYW5kb20iLCBPX1JET05MWSB8IE9fQ0xPRVhFQyk7Ci0JaWYgKHJhbmRvbV9kZXZpY2UgPCAwKSB7Ci0JCXJldHVybiAtMTsKLQl9Ci0KLQkvKiByZWFkIGZyb20gdGhlIHJhbmRvbSBkZXZpY2UsIHJldHVybmluZyAtMSBvbiBmYWlsdXJlIChvciB0b28gbWFueSByZXRyaWVzKSovCi0JZm9yICh1X2ludCByZXRyeSA9IDU7IHJldHJ5ID4gMDsgcmV0cnktLSkgewotCQlpbnQgcmV0dmFsID0gcmVhZChyYW5kb21fZGV2aWNlLCByYW5kb21fdmFsdWUsIHNpemVvZih1X2ludCkpOwotCQlpZiAocmV0dmFsID09IHNpemVvZih1X2ludCkpIHsKLQkJCSpyYW5kb21fdmFsdWUgJj0gMHhmZmZmOwotCQkJY2xvc2UocmFuZG9tX2RldmljZSk7Ci0JCQlyZXR1cm4gMDsKLQkJfSBlbHNlIGlmICgocmV0dmFsIDwgMCkgJiYgKGVycm5vICE9IEVJTlRSKSkgewotCQkJYnJlYWs7Ci0JCX0KLQl9Ci0KLQljbG9zZShyYW5kb21fZGV2aWNlKTsKLQlyZXR1cm4gLTE7Ci19Ci0jZW5kaWYgLyogQU5EUk9JRF9DSEFOR0VTICovCi0KLXVfaW50Ci1yZXNfcmFuZG9taWQodm9pZCkgewotI2lmZGVmIEFORFJPSURfQ0hBTkdFUwotCWludCBzdGF0dXMgPSAwOwotCXVfaW50IG91dHB1dCA9IDA7Ci0Jc3RhdHVzID0gcmVhbF9yYW5kb21pZCgmb3V0cHV0KTsKLQlpZiAoc3RhdHVzICE9IC0xKSB7Ci0JCXJldHVybiBvdXRwdXQ7Ci0JfQotI2VuZGlmIC8qIEFORFJPSURfQ0hBTkdFUyAqLwotCXN0cnVjdCB0aW1ldmFsIG5vdzsKLQlnZXR0aW1lb2ZkYXkoJm5vdywgTlVMTCk7Ci0JcmV0dXJuICgweGZmZmYgJiAobm93LnR2X3NlYyBeIG5vdy50dl91c2VjIF4gZ2V0cGlkKCkpKTsKLX0KLQogLyolCiAgKiBUaGlzIHJvdXRpbmUgaXMgZm9yIGNsb3NpbmcgdGhlIHNvY2tldCBpZiBhIHZpcnR1YWwgY2lyY3VpdCBpcyB1c2VkIGFuZAogICogdGhlIHByb2dyYW0gd2FudHMgdG8gY2xvc2UgaXQuICBUaGlzIHByb3ZpZGVzIHN1cHBvcnQgZm9yIGVuZGhvc3RlbnQoKQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvcmVzb2x2L3Jlc19xdWVyeS5jIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19xdWVyeS5jCmluZGV4IDZjZDliMTUuLjA5YmU4YjQgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfcXVlcnkuYworKysgYi9saWJjL2Rucy9yZXNvbHYvcmVzX3F1ZXJ5LmMKQEAgLTQxNCw3ICs0MTQsNyBAQAogCQkJUkVTX1NFVF9IX0VSUk5PKHN0YXRwLCBOT19SRUNPVkVSWSk7CiAJCQlyZXR1cm4gKC0xKTsKIAkJfQotCQlzcHJpbnRmKG5idWYsICIlcy4lcyIsIG5hbWUsIGRvbWFpbik7CisJCXNucHJpbnRmKG5idWYsIHNpemVvZihuYnVmKSwgIiVzLiVzIiwgbmFtZSwgZG9tYWluKTsKIAl9CiAJcmV0dXJuIChyZXNfbnF1ZXJ5KHN0YXRwLCBsb25nbmFtZSwgY2xhc3MsIHR5cGUsIGFuc3dlciwgYW5zbGVuKSk7CiB9CmRpZmYgLS1naXQgYS9saWJjL2Rucy9yZXNvbHYvcmVzX3N0YXRlLmMgYi9saWJjL2Rucy9yZXNvbHYvcmVzX3N0YXRlLmMKaW5kZXggNTc3OTFkMS4uYWZjY2Q5OSAxMDA2NDQKLS0tIGEvbGliYy9kbnMvcmVzb2x2L3Jlc19zdGF0ZS5jCisrKyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfc3RhdGUuYwpAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgInJlc29sdl9jYWNoZS5oIgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KIAogI2RlZmluZSBfUkVBTExZX0lOQ0xVREVfU1lTX19TWVNURU1fUFJPUEVSVElFU19IXwogI2luY2x1ZGUgPHN5cy9fc3lzdGVtX3Byb3BlcnRpZXMuaD4KQEAgLTQ5LDkgKzUwLDYgQEAKICMgIGRlZmluZSBEKC4uLikgIGRve313aGlsZSgwKQogI2VuZGlmCiAKLXN0YXRpYyBwdGhyZWFkX2tleV90ICAgX3Jlc19rZXk7Ci1zdGF0aWMgcHRocmVhZF9vbmNlX3QgIF9yZXNfb25jZSA9IFBUSFJFQURfT05DRV9JTklUOwotCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgaW50ICAgICAgICAgICAgICAgICAgX2hfZXJybm87CiAgICAgLy8gVE9ETzogSGF2ZSBvbmUgX19yZXNfc3RhdGUgcGVyIG5ldHdvcmsgc28gd2UgZG9uJ3QgaGF2ZSB0byByZXBvcHVsYXRlIGZyZXF1ZW50bHkuCkBAIC0xMDUsMTcgKzEwMywxNiBAQAogICAgIGZyZWUocnQpOwogfQogCi1zdGF0aWMgdm9pZAotX3Jlc19pbml0X2tleSggdm9pZCApCi17Ci0gICAgcHRocmVhZF9rZXlfY3JlYXRlKCAmX3Jlc19rZXksIF9yZXNfdGhyZWFkX2ZyZWUgKTsKK3N0YXRpYyBwdGhyZWFkX2tleV90IF9yZXNfa2V5OworCitfX2F0dHJpYnV0ZV9fKChjb25zdHJ1Y3RvcikpIHN0YXRpYyB2b2lkIF9fcmVzX2tleV9pbml0KCkgeworICAgIHB0aHJlYWRfa2V5X2NyZWF0ZSgmX3Jlc19rZXksIF9yZXNfdGhyZWFkX2ZyZWUpOwogfQogCiBzdGF0aWMgX3Jlc190aHJlYWQqCiBfcmVzX3RocmVhZF9nZXQodm9pZCkKIHsKICAgICBfcmVzX3RocmVhZCogIHJ0OwotICAgIHB0aHJlYWRfb25jZSggJl9yZXNfb25jZSwgX3Jlc19pbml0X2tleSApOwogICAgIHJ0ID0gcHRocmVhZF9nZXRzcGVjaWZpYyggX3Jlc19rZXkgKTsKIAogICAgIGlmIChydCAhPSBOVUxMKSB7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvYW5kcm9pZC9kbGV4dC5oIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvZGxleHQuaAppbmRleCBmMjdlNGU1Li5mMTBhOGEyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvYW5kcm9pZC9kbGV4dC5oCisrKyBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2RsZXh0LmgKQEAgLTE4LDcgKzE4LDkgQEAKICNkZWZpbmUgX19BTkRST0lEX0RMRVhUX0hfXwogCiAjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+ICAvKiBmb3Igb2ZmNjRfdCAqLwogCiBfX0JFR0lOX0RFQ0xTCiAKQEAgLTU3LDE2ICs1OSwyOCBAQAogICAvKiBJZiBvcGVuaW5nIGEgbGlicmFyeSB1c2luZyBsaWJyYXJ5X2ZkIHJlYWQgaXQgc3RhcnRpbmcgYXQgbGlicmFyeV9mZF9vZmZzZXQuCiAgICAqIFRoaXMgZmxhZyBpcyBvbmx5IHZhbGlkIHdoZW4gQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRCBpcyBzZXQuCiAgICAqLwotCiAgIEFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkRfT0ZGU0VUICAgID0gMHgyMCwKIAorICAvKiBXaGVuIHNldCwgZG8gbm90IGNoZWNrIGlmIHRoZSBsaWJyYXJ5IGhhcyBhbHJlYWR5IGJlZW4gbG9hZGVkIGJ5IGZpbGUgc3RhdCgyKXMuCisgICAqCisgICAqIFRoaXMgZmxhZyBhbGxvd3MgZm9yY2VkIGxvYWRpbmcgb2YgdGhlIGxpYnJhcnkgaW4gdGhlIGNhc2Ugd2hlbiBmb3Igc29tZQorICAgKiByZWFzb24gbXVsdGlwbGUgRUxGIGZpbGVzIHNoYXJlIHRoZSBzYW1lIGZpbGVuYW1lIChiZWNhdXNlIHRoZSBhbHJlYWR5LWxvYWRlZAorICAgKiBsaWJyYXJ5IGhhcyBiZWVuIHJlbW92ZWQgYW5kIG92ZXJ3cml0dGVuLCBmb3IgZXhhbXBsZSkuCisgICAqCisgICAqIE5vdGUgdGhhdCBpZiB0aGUgbGlicmFyeSBoYXMgdGhlIHNhbWUgZHRfc29uYW1lIGFzIGFuIG9sZCBvbmUgYW5kIHNvbWUgb3RoZXIKKyAgICogbGlicmFyeSBoYXMgdGhlIHNvbmFtZSBpbiBEVF9ORUVERUQgbGlzdCwgdGhlIGZpcnN0IG9uZSB3aWxsIGJlIHVzZWQgdG8gcmVzb2x2ZSBhbnkKKyAgICogZGVwZW5kZW5jaWVzLgorICAgKi8KKyAgQU5EUk9JRF9ETEVYVF9GT1JDRV9MT0FEID0gMHg0MCwKKwogICAvKiBNYXNrIG9mIHZhbGlkIGJpdHMgKi8KICAgQU5EUk9JRF9ETEVYVF9WQUxJRF9GTEFHX0JJVFMgICAgICAgPSBBTkRST0lEX0RMRVhUX1JFU0VSVkVEX0FERFJFU1MgfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFORFJPSURfRExFWFRfUkVTRVJWRURfQUREUkVTU19ISU5UIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkRST0lEX0RMRVhUX1dSSVRFX1JFTFJPIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkRST0lEX0RMRVhUX1VTRV9SRUxSTyB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRCB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFORFJPSURfRExFWFRfRk9SQ0VfTE9BRCwKIH07CiAKIHR5cGVkZWYgc3RydWN0IHsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9lcnJub19pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfZXJybm9faW5saW5lcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcxMDk2ZmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfZXJybm9faW5saW5lcy5oCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfQU5EUk9JRF9MRUdBQ1lfRVJSTk9fSU5MSU5FU19ICisjZGVmaW5lIF9BTkRST0lEX0xFR0FDWV9FUlJOT19JTkxJTkVTX0gKKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorCitfX0JFR0lOX0RFQ0xTCisKK3N0YXRpYyBfX2lubGluZSBpbnQgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCkpIF9fc2V0X2Vycm5vKGludCBuKSB7CisgIGVycm5vID0gbjsKKyAgcmV0dXJuIC0xOworfQorCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX0FORFJPSURfTEVHQUNZX0VSUk5PX0lOTElORVNfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3NpZ25hbF9pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc2lnbmFsX2lubGluZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYjZlNjg3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3NpZ25hbF9pbmxpbmVzLmgKQEAgLTAsMCArMSw5OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9BTkRST0lEX0xFR0FDWV9TSUdOQUxfSU5MSU5FU19IXworI2RlZmluZSBfQU5EUk9JRF9MRUdBQ1lfU0lHTkFMX0lOTElORVNfSF8KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorCitfX0JFR0lOX0RFQ0xTCisKK2V4dGVybiBzaWdoYW5kbGVyX3QgYnNkX3NpZ25hbChpbnQgc2lnbnVtLCBzaWdoYW5kbGVyX3QgaGFuZGxlcik7CisKK3N0YXRpYyBfX2lubGluZSBpbnQgc2lnaXNtZW1iZXIoc2lnc2V0X3QgKnNldCwgaW50IHNpZ251bSkgeworICAvKiBTaWduYWwgbnVtYmVycyBzdGFydCBhdCAxLCBidXQgYml0IHBvc2l0aW9ucyBzdGFydCBhdCAwLiAqLworICBpbnQgYml0ID0gc2lnbnVtIC0gMTsKKyAgY29uc3QgdW5zaWduZWQgbG9uZyAqbG9jYWxfc2V0ID0gKGNvbnN0IHVuc2lnbmVkIGxvbmcgKilzZXQ7CisgIGlmIChzZXQgPT0gTlVMTCB8fCBiaXQgPCAwIHx8IGJpdCA+PSAoaW50KSg4ICogc2l6ZW9mKHNpZ3NldF90KSkpIHsKKyAgICBlcnJubyA9IEVJTlZBTDsKKyAgICByZXR1cm4gLTE7CisgIH0KKyAgcmV0dXJuIChpbnQpKChsb2NhbF9zZXRbYml0IC8gTE9OR19CSVRdID4+IChiaXQgJSBMT05HX0JJVCkpICYgMSk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgc2lnYWRkc2V0KHNpZ3NldF90ICpzZXQsIGludCBzaWdudW0pIHsKKyAgLyogU2lnbmFsIG51bWJlcnMgc3RhcnQgYXQgMSwgYnV0IGJpdCBwb3NpdGlvbnMgc3RhcnQgYXQgMC4gKi8KKyAgaW50IGJpdCA9IHNpZ251bSAtIDE7CisgIHVuc2lnbmVkIGxvbmcgKmxvY2FsX3NldCA9ICh1bnNpZ25lZCBsb25nICopc2V0OworICBpZiAoc2V0ID09IE5VTEwgfHwgYml0IDwgMCB8fCBiaXQgPj0gKGludCkoOCAqIHNpemVvZihzaWdzZXRfdCkpKSB7CisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisgIGxvY2FsX3NldFtiaXQgLyBMT05HX0JJVF0gfD0gMVVMIDw8IChiaXQgJSBMT05HX0JJVCk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IHNpZ2RlbHNldChzaWdzZXRfdCAqc2V0LCBpbnQgc2lnbnVtKSB7CisgIC8qIFNpZ25hbCBudW1iZXJzIHN0YXJ0IGF0IDEsIGJ1dCBiaXQgcG9zaXRpb25zIHN0YXJ0IGF0IDAuICovCisgIGludCBiaXQgPSBzaWdudW0gLSAxOworICB1bnNpZ25lZCBsb25nICpsb2NhbF9zZXQgPSAodW5zaWduZWQgbG9uZyAqKXNldDsKKyAgaWYgKHNldCA9PSBOVUxMIHx8IGJpdCA8IDAgfHwgYml0ID49IChpbnQpKDggKiBzaXplb2Yoc2lnc2V0X3QpKSkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorICBsb2NhbF9zZXRbYml0IC8gTE9OR19CSVRdICY9IH4oMVVMIDw8IChiaXQgJSBMT05HX0JJVCkpOworICByZXR1cm4gMDsKK30KKworc3RhdGljIF9faW5saW5lIGludCBzaWdlbXB0eXNldChzaWdzZXRfdCAqc2V0KSB7CisgIGlmIChzZXQgPT0gTlVMTCkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorICBtZW1zZXQoc2V0LCAwLCBzaXplb2Yoc2lnc2V0X3QpKTsKKyAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgc2lnZmlsbHNldChzaWdzZXRfdCAqc2V0KSB7CisgIGlmIChzZXQgPT0gTlVMTCkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorICBtZW1zZXQoc2V0LCB+MCwgc2l6ZW9mKHNpZ3NldF90KSk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgX19pbmxpbmUgc2lnaGFuZGxlcl90IHNpZ25hbChpbnQgcywgc2lnaGFuZGxlcl90IGYpIHsKKyAgcmV0dXJuIGJzZF9zaWduYWwocywgZik7Cit9CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfQU5EUk9JRF9MRUdBQ1lfU0lHTkFMX0lOTElORVNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zdGRsaWJfaW5saW5lcy5oIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N0ZGxpYl9pbmxpbmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNThhMmE5ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zdGRsaWJfaW5saW5lcy5oCkBAIC0wLDAgKzEsNjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfQU5EUk9JRF9MRUdBQ1lfU1RETElCX0lOTElORVNfSF8KKyNkZWZpbmUgX0FORFJPSURfTEVHQUNZX1NURExJQl9JTkxJTkVTX0hfCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworX19CRUdJTl9ERUNMUworCitzdGF0aWMgX19pbmxpbmUgZmxvYXQgc3RydG9mKGNvbnN0IGNoYXIgKm5wdHIsIGNoYXIgKiplbmRwdHIpIHsKKyAgcmV0dXJuIChmbG9hdClzdHJ0b2QobnB0ciwgZW5kcHRyKTsKK30KKworc3RhdGljIF9faW5saW5lIGRvdWJsZSBhdG9mKGNvbnN0IGNoYXIgKm5wdHIpIHsgcmV0dXJuIChzdHJ0b2QobnB0ciwgTlVMTCkpOyB9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgYWJzKGludCBfX24pIHsgcmV0dXJuIChfX24gPCAwKSA/IC1fX24gOiBfX247IH0KKworc3RhdGljIF9faW5saW5lIGxvbmcgbGFicyhsb25nIF9fbikgeyByZXR1cm4gKF9fbiA8IDBMKSA/IC1fX24gOiBfX247IH0KKworc3RhdGljIF9faW5saW5lIGxvbmcgbG9uZyBsbGFicyhsb25nIGxvbmcgX19uKSB7CisgIHJldHVybiAoX19uIDwgMExMKSA/IC1fX24gOiBfX247Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgcmFuZCh2b2lkKSB7IHJldHVybiAoaW50KWxyYW5kNDgoKTsgfQorCitzdGF0aWMgX19pbmxpbmUgdm9pZCBzcmFuZCh1bnNpZ25lZCBpbnQgX19zKSB7IHNyYW5kNDgoX19zKTsgfQorCitzdGF0aWMgX19pbmxpbmUgbG9uZyByYW5kb20odm9pZCkgeyByZXR1cm4gbHJhbmQ0OCgpOyB9CisKK3N0YXRpYyBfX2lubGluZSB2b2lkIHNyYW5kb20odW5zaWduZWQgaW50IF9fcykgeyBzcmFuZDQ4KF9fcyk7IH0KKworc3RhdGljIF9faW5saW5lIGludCBncmFudHB0KGludCBfX2ZkIF9fYXR0cmlidXRlKCh1bnVzZWQpKSkgeworICByZXR1cm4gMDsgLyogZGV2cHRzIGRvZXMgdGhpcyBhbGwgZm9yIHVzISAqLworfQorCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX0FORFJPSURfTEVHQUNZX1NURExJQl9JTkxJTkVTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3lzX2F0b21pY3NfaW5saW5lcy5oIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N5c19hdG9taWNzX2lubGluZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NWNiYWRlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N5c19hdG9taWNzX2lubGluZXMuaApAQCAtMCwwICsxLDcyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX0FORFJPSURfTEVHQUNZX1NZU19BVE9NSUNTX0lOTElORVNfSF8KKyNkZWZpbmUgX0FORFJPSURfTEVHQUNZX1NZU19BVE9NSUNTX0lOTElORVNfSF8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorCitfX0JFR0lOX0RFQ0xTCisKKy8qIE5vdGU6IGF0b21pYyBvcGVyYXRpb25zIHRoYXQgd2VyZSBleHBvcnRlZCBieSB0aGUgQyBsaWJyYXJ5IGRpZG4ndAorICogICAgICAgcHJvdmlkZSBhbnkgbWVtb3J5IGJhcnJpZXJzLCB3aGljaCBjcmVhdGVkIHBvdGVudGlhbCBpc3N1ZXMgb24KKyAqICAgICAgIG11bHRpLWNvcmUgZGV2aWNlcy4gV2Ugbm93IGRlZmluZSB0aGVtIGFzIGlubGluZWQgY2FsbHMgdG8KKyAqICAgICAgIEdDQyBzeW5jIGJ1aWx0aW5zLCB3aGljaCBhbHdheXMgcHJvdmlkZSBhIGZ1bGwgYmFycmllci4KKyAqCisgKiAgICAgICBOT1RFOiBUaGUgQyBsaWJyYXJ5IHN0aWxsIGV4cG9ydHMgYXRvbWljIGZ1bmN0aW9ucyBieSB0aGUgc2FtZQorICogICAgICAgICAgICAgIG5hbWUgdG8gZW5zdXJlIEFCSSBzdGFiaWxpdHkgZm9yIGV4aXN0aW5nIE5ESyBtYWNoaW5lIGNvZGUuCisgKgorICogICAgICAgSWYgeW91IGFyZSBhbiBOREsgZGV2ZWxvcGVyLCB3ZSBlbmNvdXJhZ2UgeW91IHRvIHJlYnVpbGQgeW91cgorICogICAgICAgdW5tb2RpZmllZCBzb3VyY2VzIGFnYWluc3QgdGhpcyBoZWFkZXIgYXMgc29vbiBhcyBwb3NzaWJsZS4KKyAqLworI2RlZmluZSBfX0FUT01JQ19JTkxJTkVfXyBzdGF0aWMgX19pbmxpbmUgX19hdHRyaWJ1dGVfXygoYWx3YXlzX2lubGluZSkpCisKK19fQVRPTUlDX0lOTElORV9fIGludCBfX2F0b21pY19jbXB4Y2hnKGludCBvbGQsIGludCBfbmV3LCB2b2xhdGlsZSBpbnQgKnB0cikgeworICAvKiBXZSBtdXN0IHJldHVybiAwIG9uIHN1Y2Nlc3MgKi8KKyAgcmV0dXJuIF9fc3luY192YWxfY29tcGFyZV9hbmRfc3dhcChwdHIsIG9sZCwgX25ldykgIT0gb2xkOworfQorCitfX0FUT01JQ19JTkxJTkVfXyBpbnQgX19hdG9taWNfc3dhcChpbnQgX25ldywgdm9sYXRpbGUgaW50ICpwdHIpIHsKKyAgaW50IHByZXY7CisgIGRvIHsKKyAgICBwcmV2ID0gKnB0cjsKKyAgfSB3aGlsZSAoX19zeW5jX3ZhbF9jb21wYXJlX2FuZF9zd2FwKHB0ciwgcHJldiwgX25ldykgIT0gcHJldik7CisgIHJldHVybiBwcmV2OworfQorCitfX0FUT01JQ19JTkxJTkVfXyBpbnQgX19hdG9taWNfZGVjKHZvbGF0aWxlIGludCAqcHRyKSB7CisgIHJldHVybiBfX3N5bmNfZmV0Y2hfYW5kX3N1YihwdHIsIDEpOworfQorCitfX0FUT01JQ19JTkxJTkVfXyBpbnQgX19hdG9taWNfaW5jKHZvbGF0aWxlIGludCAqcHRyKSB7CisgIHJldHVybiBfX3N5bmNfZmV0Y2hfYW5kX2FkZChwdHIsIDEpOworfQorCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX0FORFJPSURfTEVHQUNZX1NZU19BVE9NSUNTX0lOTElORVNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zeXNfc3RhdF9pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3lzX3N0YXRfaW5saW5lcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY2ZDNjMGYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3lzX3N0YXRfaW5saW5lcy5oCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfQU5EUk9JRF9MRUdBQ1lfU1lTX1NUQVRfSU5MSU5FU19IXworI2RlZmluZSBfQU5EUk9JRF9MRUdBQ1lfU1lTX1NUQVRfSU5MSU5FU19IXworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKK19fQkVHSU5fREVDTFMKKworc3RhdGljIF9faW5saW5lIGludCBta2ZpZm8oY29uc3QgY2hhciAqX19wLCBtb2RlX3QgX19tKSB7CisgIHJldHVybiBta25vZChfX3AsIChfX20gJiB+U19JRk1UKSB8IFNfSUZJRk8sIChkZXZfdCkwKTsKK30KKworX19FTkRfREVDTFMKKworI2VuZGlmIC8qIF9BTkRST0lEX0xFR0FDWV9TWVNfU1RBVF9JTkxJTkVTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfdGVybWlvc19pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfdGVybWlvc19pbmxpbmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmI2MWYyNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV90ZXJtaW9zX2lubGluZXMuaApAQCAtMCwwICsxLDkzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX0FORFJPSURfTEVHQUNZX1RFUk1JT1NfSU5MSU5FU19IXworI2RlZmluZSBfQU5EUk9JRF9MRUdBQ1lfVEVSTUlPU19JTkxJTkVTX0hfCisKKyNpbmNsdWRlIDxsaW51eC90ZXJtaW9zLmg+CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKK19fQkVHSU5fREVDTFMKKworc3RhdGljIF9faW5saW5lIGludCB0Y2dldGF0dHIoaW50IGZkLCBzdHJ1Y3QgdGVybWlvcyAqcykgeworICByZXR1cm4gaW9jdGwoZmQsIFRDR0VUUywgcyk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgdGNzZXRhdHRyKGludCBmZCwgaW50IF9fb3B0LCBjb25zdCBzdHJ1Y3QgdGVybWlvcyAqcykgeworICByZXR1cm4gaW9jdGwoZmQsIF9fb3B0LCAodm9pZCAqKXMpOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IHRjZmxvdyhpbnQgZmQsIGludCBhY3Rpb24pIHsKKyAgcmV0dXJuIGlvY3RsKGZkLCBUQ1hPTkMsICh2b2lkICopKGludHB0cl90KWFjdGlvbik7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgdGNmbHVzaChpbnQgZmQsIGludCBfX3F1ZXVlKSB7CisgIHJldHVybiBpb2N0bChmZCwgVENGTFNILCAodm9pZCAqKShpbnRwdHJfdClfX3F1ZXVlKTsKK30KKworc3RhdGljIF9faW5saW5lIHBpZF90IHRjZ2V0c2lkKGludCBmZCkgeworICBwaWRfdCBfcGlkOworICByZXR1cm4gaW9jdGwoZmQsIFRJT0NHU0lELCAmX3BpZCkgPyAocGlkX3QpLTEgOiBfcGlkOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IHRjc2VuZGJyZWFrKGludCBmZCwgaW50IF9fZHVyYXRpb24pIHsKKyAgcmV0dXJuIGlvY3RsKGZkLCBUQ1NCUktQLCAodm9pZCAqKSh1aW50cHRyX3QpX19kdXJhdGlvbik7Cit9CisKK3N0YXRpYyBfX2lubGluZSBzcGVlZF90IGNmZ2V0b3NwZWVkKGNvbnN0IHN0cnVjdCB0ZXJtaW9zICpzKSB7CisgIHJldHVybiAoc3BlZWRfdCkocy0+Y19jZmxhZyAmIENCQVVEKTsKK30KKworc3RhdGljIF9faW5saW5lIGludCBjZnNldG9zcGVlZChzdHJ1Y3QgdGVybWlvcyAqcywgc3BlZWRfdCBzcGVlZCkgeworICBzLT5jX2NmbGFnID0gKHMtPmNfY2ZsYWcgJiB+Q0JBVUQpIHwgKHNwZWVkICYgQ0JBVUQpOworICByZXR1cm4gMDsKK30KKworc3RhdGljIF9faW5saW5lIHNwZWVkX3QgY2ZnZXRpc3BlZWQoY29uc3Qgc3RydWN0IHRlcm1pb3MgKnMpIHsKKyAgcmV0dXJuIChzcGVlZF90KShzLT5jX2NmbGFnICYgQ0JBVUQpOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IGNmc2V0aXNwZWVkKHN0cnVjdCB0ZXJtaW9zICpzLCBzcGVlZF90IHNwZWVkKSB7CisgIHMtPmNfY2ZsYWcgPSAocy0+Y19jZmxhZyAmIH5DQkFVRCkgfCAoc3BlZWQgJiBDQkFVRCk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgX19pbmxpbmUgdm9pZCBjZm1ha2VyYXcoc3RydWN0IHRlcm1pb3MgKnMpIHsKKyAgcy0+Y19pZmxhZyAmPQorICAgICAgfihJR05CUksgfCBCUktJTlQgfCBQQVJNUksgfCBJU1RSSVAgfCBJTkxDUiB8IElHTkNSIHwgSUNSTkwgfCBJWE9OKTsKKyAgcy0+Y19vZmxhZyAmPSB+T1BPU1Q7CisgIHMtPmNfbGZsYWcgJj0gfihFQ0hPIHwgRUNIT05MIHwgSUNBTk9OIHwgSVNJRyB8IElFWFRFTik7CisgIHMtPmNfY2ZsYWcgJj0gfihDU0laRSB8IFBBUkVOQik7CisgIHMtPmNfY2ZsYWcgfD0gQ1M4OworfQorCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX0FORFJPSURfTEVHQUNZX1RFUk1JT1NfSU5MSU5FU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2FycGEvbmFtZXNlcl9jb21wYXQuaCBiL2xpYmMvaW5jbHVkZS9hcnBhL25hbWVzZXJfY29tcGF0LmgKaW5kZXggZTA2MGY2MC4uNTM5ODY0ZSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2FycGEvbmFtZXNlcl9jb21wYXQuaAorKysgYi9saWJjL2luY2x1ZGUvYXJwYS9uYW1lc2VyX2NvbXBhdC5oCkBAIC00NCw1MyArNDQsNiBAQAogCiAjaW5jbHVkZSA8ZW5kaWFuLmg+CiAKLSNpZm5kZWYgQllURV9PUkRFUgotI2lmIChCU0QgPj0gMTk5MTAzKQotIyBpbmNsdWRlIDxtYWNoaW5lL2VuZGlhbi5oPgotI2Vsc2UKLSNpZmRlZiBfX2xpbnV4X18KLSMgaW5jbHVkZSA8ZW5kaWFuLmg+Ci0jZWxzZQotI2RlZmluZQlMSVRUTEVfRU5ESUFOCTEyMzQJLyogbGVhc3Qtc2lnbmlmaWNhbnQgYnl0ZSBmaXJzdCAodmF4LCBwYykgKi8KLSNkZWZpbmUJQklHX0VORElBTgk0MzIxCS8qIG1vc3Qtc2lnbmlmaWNhbnQgYnl0ZSBmaXJzdCAoSUJNLCBuZXQpICovCi0jZGVmaW5lCVBEUF9FTkRJQU4JMzQxMgkvKiBMU0IgZmlyc3QgaW4gd29yZCwgTVNXIGZpcnN0IGluIGxvbmcgKHBkcCkqLwotCi0jaWYgZGVmaW5lZCh2YXgpIHx8IGRlZmluZWQobnMzMjAwMCkgfHwgZGVmaW5lZChzdW4zODYpIHx8IGRlZmluZWQoaTM4NikgfHwgXAotICAgIGRlZmluZWQoTUlQU0VMKSB8fCBkZWZpbmVkKF9NSVBTRUwpIHx8IGRlZmluZWQoQklUX1pFUk9fT05fUklHSFQpIHx8IFwKLSAgICBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9faTM4NikgfHwgZGVmaW5lZChfX2FtZDY0X18pIHx8IFwKLSAgICBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoTUlQU0VMKSB8fCBkZWZpbmVkKF9NSVBTRUwpIHx8IFwKLSAgICBkZWZpbmVkKEJJVF9aRVJPX09OX1JJR0hUKSB8fCBkZWZpbmVkKF9fYWxwaGFfXykgfHwgZGVmaW5lZChfX2FscGhhKSB8fCBcCi0gICAgKGRlZmluZWQoX19MeW54X18pICYmIGRlZmluZWQoX194ODZfXykpCi0jZGVmaW5lIEJZVEVfT1JERVIJTElUVExFX0VORElBTgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKHNlbCkgfHwgZGVmaW5lZChweXIpIHx8IGRlZmluZWQobWM2ODAwMCkgfHwgZGVmaW5lZChzcGFyYykgfHwgXAotICAgIGRlZmluZWQoaXM2OGspIHx8IGRlZmluZWQodGFob2UpIHx8IGRlZmluZWQoaWJtMDMyKSB8fCBkZWZpbmVkKGlibTM3MCkgfHwgXAotICAgIGRlZmluZWQoTUlQU0VCKSB8fCBkZWZpbmVkKF9NSVBTRUIpIHx8IGRlZmluZWQoX0lCTVIyKSB8fCBkZWZpbmVkKERHVVgpIHx8XAotICAgIGRlZmluZWQoYXBvbGxvKSB8fCBkZWZpbmVkKF9fY29udmV4X18pIHx8IGRlZmluZWQoX0NSQVkpIHx8IFwKLSAgICBkZWZpbmVkKF9faHBwYSkgfHwgZGVmaW5lZChfX2hwOTAwMCkgfHwgXAotICAgIGRlZmluZWQoX19ocDkwMDBzMzAwKSB8fCBkZWZpbmVkKF9faHA5MDAwczcwMCkgfHwgXAotICAgIGRlZmluZWQoX19ocDMwMDBzOTAwKSB8fCBkZWZpbmVkKF9faHB1eCkgfHwgZGVmaW5lZChNUEUpIHx8IFwKLSAgICBkZWZpbmVkIChCSVRfWkVST19PTl9MRUZUKSB8fCBkZWZpbmVkKG02OGspIHx8IGRlZmluZWQoX19zcGFyYykgfHwgIFwKLSAgICAoZGVmaW5lZChfX0x5bnhfXykgJiYgXAotICAgICAoZGVmaW5lZChfXzY4a19fKSB8fCBkZWZpbmVkKF9fc3BhcmNfXykgfHwgZGVmaW5lZChfX3Bvd2VycGNfXykpKQotI2RlZmluZSBCWVRFX09SREVSCUJJR19FTkRJQU4KLSNlbmRpZgotI2VuZGlmIC8qIF9fbGludXggKi8KLSNlbmRpZiAvKiBCU0QgKi8KLSNlbmRpZiAvKiBCWVRFX09SREVSICovCi0KLSNpZiAhZGVmaW5lZChCWVRFX09SREVSKSB8fCBcCi0gICAgKEJZVEVfT1JERVIgIT0gQklHX0VORElBTiAmJiBCWVRFX09SREVSICE9IExJVFRMRV9FTkRJQU4gJiYgXAotICAgIEJZVEVfT1JERVIgIT0gUERQX0VORElBTikKLQkvKiB5b3UgbXVzdCBkZXRlcm1pbmUgd2hhdCB0aGUgY29ycmVjdCBiaXQgb3JkZXIgaXMgZm9yCi0JICogeW91ciBjb21waWxlciAtIHRoZSBuZXh0IGxpbmUgaXMgYW4gaW50ZW50aW9uYWwgZXJyb3IKLQkgKiB3aGljaCB3aWxsIGZvcmNlIHlvdXIgY29tcGlsZXMgdG8gYm9tYiB1bnRpbCB5b3UgZml4Ci0JICogdGhlIGFib3ZlIG1hY3Jvcy4KLQkgKi8KLSAgI2Vycm9yICJVbmRlZmluZWQgb3IgaW52YWxpZCBCWVRFX09SREVSIjsKLSNlbmRpZgotCiAvKgogICogU3RydWN0dXJlIGZvciBxdWVyeSBoZWFkZXIuICBUaGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpcyBtYWNoaW5lLSBhbmQKICAqIGNvbXBpbGVyLWRlcGVuZGVudCwgZGVwZW5kaW5nIG9uIHRoZSBieXRlL2JpdCBvcmRlciBhbmQgdGhlIGxheW91dApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2N0eXBlLmggYi9saWJjL2luY2x1ZGUvY3R5cGUuaAppbmRleCBkMDVhOTUyLi44M2I1YmE3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvY3R5cGUuaAorKysgYi9saWJjL2luY2x1ZGUvY3R5cGUuaApAQCAtNDMsMzYgKzQzLDM3IEBACiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8eGxvY2FsZS5oPgogCi0jZGVmaW5lCV9DVFlQRV9VCTB4MDEKLSNkZWZpbmUJX0NUWVBFX0wJMHgwMgotI2RlZmluZQlfQ1RZUEVfRAkweDA0Ci0jZGVmaW5lCV9DVFlQRV9TCTB4MDgKLSNkZWZpbmUJX0NUWVBFX1AJMHgxMAotI2RlZmluZQlfQ1RZUEVfQwkweDIwCi0jZGVmaW5lCV9DVFlQRV9YCTB4NDAKLSNkZWZpbmUJX0NUWVBFX0IJMHg4MAotI2RlZmluZQlfQ1RZUEVfUgkoX0NUWVBFX1B8X0NUWVBFX1V8X0NUWVBFX0x8X0NUWVBFX0R8X0NUWVBFX0IpCi0jZGVmaW5lCV9DVFlQRV9BCShfQ1RZUEVfTHxfQ1RZUEVfVSkKKyNkZWZpbmUgX0NUWVBFX1UgMHgwMQorI2RlZmluZSBfQ1RZUEVfTCAweDAyCisjZGVmaW5lIF9DVFlQRV9EIDB4MDQKKyNkZWZpbmUgX0NUWVBFX1MgMHgwOAorI2RlZmluZSBfQ1RZUEVfUCAweDEwCisjZGVmaW5lIF9DVFlQRV9DIDB4MjAKKyNkZWZpbmUgX0NUWVBFX1ggMHg0MAorI2RlZmluZSBfQ1RZUEVfQiAweDgwCisjZGVmaW5lIF9DVFlQRV9SIChfQ1RZUEVfUHxfQ1RZUEVfVXxfQ1RZUEVfTHxfQ1RZUEVfRHxfQ1RZUEVfQikKKyNkZWZpbmUgX0NUWVBFX0EgKF9DVFlQRV9MfF9DVFlQRV9VKQogCiBfX0JFR0lOX0RFQ0xTCiAKIGV4dGVybiBjb25zdCBjaGFyCSpfY3R5cGVfOwogCiAjaWYgZGVmaW5lZChfX0dOVUNfXykgfHwgZGVmaW5lZChfQU5TSV9MSUJSQVJZKSB8fCBkZWZpbmVkKGxpbnQpCi1pbnQJaXNhbG51bShpbnQpOwotaW50CWlzYWxwaGEoaW50KTsKLWludAlpc2NudHJsKGludCk7Ci1pbnQJaXNkaWdpdChpbnQpOwotaW50CWlzZ3JhcGgoaW50KTsKLWludAlpc2xvd2VyKGludCk7Ci1pbnQJaXNwcmludChpbnQpOwotaW50CWlzcHVuY3QoaW50KTsKLWludAlpc3NwYWNlKGludCk7Ci1pbnQJaXN1cHBlcihpbnQpOwotaW50CWlzeGRpZ2l0KGludCk7Ci1pbnQJdG9sb3dlcihpbnQpOwotaW50CXRvdXBwZXIoaW50KTsKK2ludCBpc2FsbnVtKGludCk7CitpbnQgaXNhbHBoYShpbnQpOworaW50IGlzY250cmwoaW50KTsKK2ludCBpc2RpZ2l0KGludCk7CitpbnQgaXNncmFwaChpbnQpOworaW50IGlzbG93ZXIoaW50KTsKK2ludCBpc3ByaW50KGludCk7CitpbnQgaXNwdW5jdChpbnQpOworaW50IGlzc3BhY2UoaW50KTsKK2ludCBpc3VwcGVyKGludCk7CitpbnQgaXN4ZGlnaXQoaW50KTsKK2ludCB0b2xvd2VyKGludCk7CitpbnQgdG91cHBlcihpbnQpOwogCisjaWYgX19BTkRST0lEX0FQSV9fID49IDIxCiBpbnQgaXNhbG51bV9sKGludCwgbG9jYWxlX3QpOwogaW50IGlzYWxwaGFfbChpbnQsIGxvY2FsZV90KTsKIGludCBpc2JsYW5rX2woaW50LCBsb2NhbGVfdCk7CkBAIC04NywxNyArODgsMTggQEAKIGludCBpc3hkaWdpdF9sKGludCwgbG9jYWxlX3QpOwogaW50IHRvbG93ZXJfbChpbnQsIGxvY2FsZV90KTsKIGludCB0b3VwcGVyX2woaW50LCBsb2NhbGVfdCk7CisjZW5kaWYgLyogX19BTkRST0lEX0FQSV9fID49IDIxICovCiAKICNpZiBfX0JTRF9WSVNJQkxFIHx8IF9fSVNPX0NfVklTSUJMRSA+PSAxOTk5IHx8IF9fUE9TSVhfVklTSUJMRSA+IDIwMDExMiBcCiAgICAgfHwgX19YUEdfVklTSUJMRSA+IDYwMAotaW50CWlzYmxhbmsoaW50KTsKK2ludCBpc2JsYW5rKGludCk7CiAjZW5kaWYKIAogI2lmIF9fQlNEX1ZJU0lCTEUgfHwgX19YUEdfVklTSUJMRQotaW50CWlzYXNjaWkoaW50KTsKLWludAl0b2FzY2lpKGludCk7Ci1pbnQJX3RvbG93ZXIoaW50KTsKLWludAlfdG91cHBlcihpbnQpOworaW50IGlzYXNjaWkoaW50KTsKK2ludCB0b2FzY2lpKGludCk7CitpbnQgX3RvbG93ZXIoaW50KTsKK2ludCBfdG91cHBlcihpbnQpOwogI2VuZGlmIC8qIF9fQlNEX1ZJU0lCTEUgfHwgX19YUEdfVklTSUJMRSAqLwogCiAjZW5kaWYgLyogX19HTlVDX18gfHwgX0FOU0lfTElCUkFSWSB8fCBsaW50ICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZGlyZW50LmggYi9saWJjL2luY2x1ZGUvZGlyZW50LmgKaW5kZXggYTg0OWE2MS4uNjM3MTZhNCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2RpcmVudC5oCisrKyBiL2xpYmMvaW5jbHVkZS9kaXJlbnQuaApAQCAtNTgsNiArNTgsMTIgQEAKIAogI3VuZGVmIF9fRElSRU5UNjRfQk9EWQogCisvKiBnbGliYyBjb21wYXRpYmlsaXR5LiAqLworI3VuZGVmIF9ESVJFTlRfSEFWRV9EX05BTUxFTiAvKiBMaW51eCBkb2Vzbid0IGhhdmUgYSBkX25hbWxlbiBmaWVsZC4gKi8KKyNkZWZpbmUgX0RJUkVOVF9IQVZFX0RfUkVDTEVOCisjZGVmaW5lIF9ESVJFTlRfSEFWRV9EX09GRgorI2RlZmluZSBfRElSRU5UX0hBVkVfRF9UWVBFCisKICNkZWZpbmUgZF9maWxlbm8gZF9pbm8KIAogdHlwZWRlZiBzdHJ1Y3QgRElSIERJUjsKQEAgLTcwLDYgKzc2LDggQEAKIGV4dGVybiBpbnQgcmVhZGRpcjY0X3IoRElSKiwgc3RydWN0IGRpcmVudDY0Kiwgc3RydWN0IGRpcmVudDY0KiopOwogZXh0ZXJuIGludCBjbG9zZWRpcihESVIqKTsKIGV4dGVybiB2b2lkIHJld2luZGRpcihESVIqKTsKK2V4dGVybiB2b2lkIHNlZWtkaXIoRElSKiwgbG9uZyk7CitleHRlcm4gbG9uZyB0ZWxsZGlyKERJUiopOwogZXh0ZXJuIGludCBkaXJmZChESVIqKTsKIGV4dGVybiBpbnQgYWxwaGFzb3J0KGNvbnN0IHN0cnVjdCBkaXJlbnQqKiwgY29uc3Qgc3RydWN0IGRpcmVudCoqKTsKIGV4dGVybiBpbnQgYWxwaGFzb3J0NjQoY29uc3Qgc3RydWN0IGRpcmVudDY0KiosIGNvbnN0IHN0cnVjdCBkaXJlbnQ2NCoqKTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9kbGZjbi5oIGIvbGliYy9pbmNsdWRlL2RsZmNuLmgKaW5kZXggOGRkZTA4Yy4uYWZhNzY4NyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2RsZmNuLmgKKysrIGIvbGliYy9pbmNsdWRlL2RsZmNuLmgKQEAgLTY0LDYgKzY0LDcgQEAKICAgUlRMRF9HTE9CQUwgPSAyLAogI2VuZGlmCiAgIFJUTERfTk9MT0FEID0gNCwKKyAgUlRMRF9OT0RFTEVURSA9IDB4MDEwMDAsCiB9OwogCiAjaWYgZGVmaW5lZCAoX19MUDY0X18pCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZWxmLmggYi9saWJjL2luY2x1ZGUvZWxmLmgKaW5kZXggN2RlNDY0ZS4uZGY3NjhiYSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2VsZi5oCisrKyBiL2xpYmMvaW5jbHVkZS9lbGYuaApAQCAtNDgsMzUgKzQ4LDEwMCBAQAogICB9IGFfdW47CiB9IEVsZjY0X2F1eHZfdDsKIAordHlwZWRlZiBFbGYzMl9IYWxmIEVsZjMyX1ZlcnN5bTsKK3R5cGVkZWYgRWxmNjRfSGFsZiBFbGY2NF9WZXJzeW07CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmMzJfSGFsZiB2ZF92ZXJzaW9uOworICBFbGYzMl9IYWxmIHZkX2ZsYWdzOworICBFbGYzMl9IYWxmIHZkX25keDsKKyAgRWxmMzJfSGFsZiB2ZF9jbnQ7CisgIEVsZjMyX1dvcmQgdmRfaGFzaDsKKyAgRWxmMzJfV29yZCB2ZF9hdXg7CisgIEVsZjMyX1dvcmQgdmRfbmV4dDsKK30gRWxmMzJfVmVyZGVmOworCit0eXBlZGVmIHN0cnVjdCB7CisgIEVsZjMyX1dvcmQgdmRhX25hbWU7CisgIEVsZjMyX1dvcmQgdmRhX25leHQ7Cit9IEVsZjMyX1ZlcmRhdXg7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmNjRfSGFsZiB2ZF92ZXJzaW9uOworICBFbGY2NF9IYWxmIHZkX2ZsYWdzOworICBFbGY2NF9IYWxmIHZkX25keDsKKyAgRWxmNjRfSGFsZiB2ZF9jbnQ7CisgIEVsZjY0X1dvcmQgdmRfaGFzaDsKKyAgRWxmNjRfV29yZCB2ZF9hdXg7CisgIEVsZjY0X1dvcmQgdmRfbmV4dDsKK30gRWxmNjRfVmVyZGVmOworCit0eXBlZGVmIHN0cnVjdCB7CisgIEVsZjY0X1dvcmQgdmRhX25hbWU7CisgIEVsZjY0X1dvcmQgdmRhX25leHQ7Cit9IEVsZjY0X1ZlcmRhdXg7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmMzJfSGFsZiB2bl92ZXJzaW9uOworICBFbGYzMl9IYWxmIHZuX2NudDsKKyAgRWxmMzJfV29yZCB2bl9maWxlOworICBFbGYzMl9Xb3JkIHZuX2F1eDsKKyAgRWxmMzJfV29yZCB2bl9uZXh0OworfSBFbGYzMl9WZXJuZWVkOworCit0eXBlZGVmIHN0cnVjdCB7CisgIEVsZjMyX1dvcmQgdm5hX2hhc2g7CisgIEVsZjMyX0hhbGYgdm5hX2ZsYWdzOworICBFbGYzMl9IYWxmIHZuYV9vdGhlcjsKKyAgRWxmMzJfV29yZCB2bmFfbmFtZTsKKyAgRWxmMzJfV29yZCB2bmFfbmV4dDsKK30gRWxmMzJfVmVybmF1eDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICBFbGY2NF9IYWxmIHZuX3ZlcnNpb247CisgIEVsZjY0X0hhbGYgdm5fY250OworICBFbGY2NF9Xb3JkIHZuX2ZpbGU7CisgIEVsZjY0X1dvcmQgdm5fYXV4OworICBFbGY2NF9Xb3JkIHZuX25leHQ7Cit9IEVsZjY0X1Zlcm5lZWQ7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmNjRfV29yZCB2bmFfaGFzaDsKKyAgRWxmNjRfSGFsZiB2bmFfZmxhZ3M7CisgIEVsZjY0X0hhbGYgdm5hX290aGVyOworICBFbGY2NF9Xb3JkIHZuYV9uYW1lOworICBFbGY2NF9Xb3JkIHZuYV9uZXh0OworfSBFbGY2NF9WZXJuYXV4OworCiAjZGVmaW5lIERGX09SSUdJTiAgICAgMHgwMDAwMDAwMQogI2RlZmluZSBERl9TWU1CT0xJQyAgIDB4MDAwMDAwMDIKICNkZWZpbmUgREZfVEVYVFJFTCAgICAweDAwMDAwMDA0CiAjZGVmaW5lIERGX0JJTkRfTk9XICAgMHgwMDAwMDAwOAogI2RlZmluZSBERl9TVEFUSUNfVExTIDB4MDAwMDAwMTAKIAotI2RlZmluZSBERl8xX05PVyAgICAgICAgMHgwMDAwMDAwMSAvLyBQZXJmb3JtIGNvbXBsZXRlIHJlbG9jYXRpb24gcHJvY2Vzc2luZy4KLSNkZWZpbmUgREZfMV9HTE9CQUwgICAgIDB4MDAwMDAwMDIgLy8gaW1wbGllcyBSVExEX0dMT0JBTAorI2RlZmluZSBERl8xX05PVyAgICAgICAgMHgwMDAwMDAwMSAvKiBQZXJmb3JtIGNvbXBsZXRlIHJlbG9jYXRpb24gcHJvY2Vzc2luZy4gKi8KKyNkZWZpbmUgREZfMV9HTE9CQUwgICAgIDB4MDAwMDAwMDIgLyogaW1wbGllcyBSVExEX0dMT0JBTCAqLwogI2RlZmluZSBERl8xX0dST1VQICAgICAgMHgwMDAwMDAwNAotI2RlZmluZSBERl8xX05PREVMRVRFICAgMHgwMDAwMDAwOCAvLyBpbXBsaWVzIFJUTERfTk9ERUxFVEUKKyNkZWZpbmUgREZfMV9OT0RFTEVURSAgIDB4MDAwMDAwMDggLyogaW1wbGllcyBSVExEX05PREVMRVRFICovCiAjZGVmaW5lIERGXzFfTE9BREZMVFIgICAweDAwMDAwMDEwCiAjZGVmaW5lIERGXzFfSU5JVEZJUlNUICAweDAwMDAwMDIwCi0jZGVmaW5lIERGXzFfTk9PUEVOICAgICAweDAwMDAwMDQwIC8vIE9iamVjdCBjYW4gbm90IGJlIHVzZWQgd2l0aCBkbG9wZW4oMykKKyNkZWZpbmUgREZfMV9OT09QRU4gICAgIDB4MDAwMDAwNDAgLyogT2JqZWN0IGNhbiBub3QgYmUgdXNlZCB3aXRoIGRsb3BlbigzKSAqLwogI2RlZmluZSBERl8xX09SSUdJTiAgICAgMHgwMDAwMDA4MAogI2RlZmluZSBERl8xX0RJUkVDVCAgICAgMHgwMDAwMDEwMAogI2RlZmluZSBERl8xX1RSQU5TICAgICAgMHgwMDAwMDIwMAogI2RlZmluZSBERl8xX0lOVEVSUE9TRSAgMHgwMDAwMDQwMAogI2RlZmluZSBERl8xX05PREVGTElCICAgMHgwMDAwMDgwMAotI2RlZmluZSBERl8xX05PRFVNUCAgICAgMHgwMDAwMTAwMCAvLyBPYmplY3QgY2Fubm90IGJlIGR1bXBlZCB3aXRoIGRsZHVtcCgzKQorI2RlZmluZSBERl8xX05PRFVNUCAgICAgMHgwMDAwMTAwMCAvKiBPYmplY3QgY2Fubm90IGJlIGR1bXBlZCB3aXRoIGRsZHVtcCgzKSAqLwogI2RlZmluZSBERl8xX0NPTkZBTFQgICAgMHgwMDAwMjAwMAogI2RlZmluZSBERl8xX0VOREZJTFRFRSAgMHgwMDAwNDAwMAogI2RlZmluZSBERl8xX0RJU1BSRUxETkUgMHgwMDAwODAwMAogI2RlZmluZSBERl8xX0RJU1BSRUxQTkQgMHgwMDAxMDAwMAogI2RlZmluZSBERl8xX05PRElSRUNUICAgMHgwMDAyMDAwMAotI2RlZmluZSBERl8xX0lHTk1VTERFRiAgMHgwMDA0MDAwMCAvLyBJbnRlcm5hbCB1c2UKLSNkZWZpbmUgREZfMV9OT0tTWU1TICAgIDB4MDAwODAwMDAgLy8gSW50ZXJuYWwgdXNlCi0jZGVmaW5lIERGXzFfTk9IRFIgICAgICAweDAwMTAwMDAwIC8vIEludGVybmFsIHVzZQorI2RlZmluZSBERl8xX0lHTk1VTERFRiAgMHgwMDA0MDAwMCAvKiBJbnRlcm5hbCB1c2UgKi8KKyNkZWZpbmUgREZfMV9OT0tTWU1TICAgIDB4MDAwODAwMDAgLyogSW50ZXJuYWwgdXNlICovCisjZGVmaW5lIERGXzFfTk9IRFIgICAgICAweDAwMTAwMDAwIC8qIEludGVybmFsIHVzZSAqLwogI2RlZmluZSBERl8xX0VESVRFRCAgICAgMHgwMDIwMDAwMAotI2RlZmluZSBERl8xX05PUkVMT0MgICAgMHgwMDQwMDAwMCAvLyBJbnRlcm5hbCB1c2UKKyNkZWZpbmUgREZfMV9OT1JFTE9DICAgIDB4MDA0MDAwMDAgLyogSW50ZXJuYWwgdXNlICovCiAjZGVmaW5lIERGXzFfU1lNSU5UUE9TRSAweDAwODAwMDAwCiAjZGVmaW5lIERGXzFfR0xPQkFVRElUICAweDAxMDAwMDAwCiAjZGVmaW5lIERGXzFfU0lOR0xFVE9OICAweDAyMDAwMDAwCkBAIC05NCw2ICsxNTksMTYgQEAKICNkZWZpbmUgRFRfUFJFSU5JVF9BUlJBWSAzMgogI2RlZmluZSBEVF9QUkVJTklUX0FSUkFZU1ogMzMKIAorLyogQW5kcm9pZCBjb21wcmVzc2VkIHJlbC9yZWxhIHNlY3Rpb25zICovCisjZGVmaW5lIERUX0FORFJPSURfUkVMIChEVF9MT09TICsgMikKKyNkZWZpbmUgRFRfQU5EUk9JRF9SRUxTWiAoRFRfTE9PUyArIDMpCisKKyNkZWZpbmUgRFRfQU5EUk9JRF9SRUxBIChEVF9MT09TICsgNCkKKyNkZWZpbmUgRFRfQU5EUk9JRF9SRUxBU1ogKERUX0xPT1MgKyA1KQorCisvKiBnbnUgaGFzaCBlbnRyeSAqLworI2RlZmluZSBEVF9HTlVfSEFTSCAweDZmZmZmZWY1CisKICNkZWZpbmUgRUxGT1NBQklfU1lTViAwIC8qIFN5bm9ueW0gZm9yIEVMRk9TQUJJX05PTkUgdXNlZCBieSB2YWxncmluZC4gKi8KIAogI2RlZmluZSBQVF9HTlVfUkVMUk8gMHg2NDc0ZTU1MgpAQCAtMTAzLDEwICsxNzgsMjYgQEAKICNkZWZpbmUgU1RCX0xPUFJPQyAgICAxMwogI2RlZmluZSBTVEJfSElQUk9DICAgIDE1CiAKKyNkZWZpbmUgU0hUX0xPT1MgICAgMHg2MDAwMDAwMAorI2RlZmluZSBTSFRfSElPUyAgICAweDZmZmZmZmZmCisKICNkZWZpbmUgU1RUX0dOVV9JRlVOQyAxMAogI2RlZmluZSBTVFRfTE9PUyAgICAgIDEwCiAjZGVmaW5lIFNUVF9ISU9TICAgICAgMTIKICNkZWZpbmUgU1RUX0xPUFJPQyAgICAxMwogI2RlZmluZSBTVFRfSElQUk9DICAgIDE1CiAKKy8qIFRoZSBrZXJuZWwgdXNlcyBOVF9QUkZQUkVHIGJ1dCBnbGliYyBhbHNvIG9mZmVycyBOVF9GUFJFR1NFVCAqLworI2RlZmluZSBOVF9GUFJFR1NFVCBOVF9QUkZQUkVHCisKKyNkZWZpbmUgRUxGX05PVEVfR05VICJHTlUiCisKKyNkZWZpbmUgTlRfR05VX0JVSUxEX0lEIDMKKworI2RlZmluZSBWRVJfRkxHX0JBU0UgMHgxCisjZGVmaW5lIFZFUl9GTEdfV0VBSyAweDIKKworI2RlZmluZSBWRVJfTkRYX0xPQ0FMICAwCisjZGVmaW5lIFZFUl9ORFhfR0xPQkFMIDEKKwogI2VuZGlmIC8qIF9FTEZfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2Vycm5vLmggYi9saWJjL2luY2x1ZGUvZXJybm8uaAppbmRleCAxYTM2YjdhLi44MmY0YjQyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZXJybm8uaAorKysgYi9saWJjL2luY2x1ZGUvZXJybm8uaApAQCAtNDYsNiArNDYsMTAgQEAKIC8qIGEgbWFjcm8gZXhwYW5kaW5nIHRvIHRoZSBlcnJubyBsLXZhbHVlICovCiAjZGVmaW5lICBlcnJubyAgICgqX19lcnJubygpKQogCisjaWYgX19BTkRST0lEX0FQSV9fIDwgMjEKKyNpbmNsdWRlIDxhbmRyb2lkL2xlZ2FjeV9lcnJub19pbmxpbmVzLmg+CisjZW5kaWYKKwogX19FTkRfREVDTFMKIAogI2VuZGlmIC8qIF9FUlJOT19IICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZXJyb3IuaCBiL2xpYmMvaW5jbHVkZS9lcnJvci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkMTI4ODQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvZXJyb3IuaApAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX0VSUk9SX0gKKyNkZWZpbmUgX0VSUk9SX0ggMQorCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKK19fQkVHSU5fREVDTFMKKwordm9pZCBlcnJvcihpbnQsIGludCwgY29uc3QgY2hhciosIC4uLikgX19wcmludGZsaWtlKDMsIDQpOwordm9pZCBlcnJvcl9hdF9saW5lKGludCwgaW50LCBjb25zdCBjaGFyKiwgdW5zaWduZWQgaW50LCBjb25zdCBjaGFyKiwgLi4uKSBfX3ByaW50Zmxpa2UoNSwgNik7CisKK2V4dGVybiB2b2lkICgqZXJyb3JfcHJpbnRfcHJvZ25hbWUpKHZvaWQpOworZXh0ZXJuIHVuc2lnbmVkIGludCBlcnJvcl9tZXNzYWdlX2NvdW50OworZXh0ZXJuIGludCBlcnJvcl9vbmVfcGVyX2xpbmU7CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2ZjbnRsLmggYi9saWJjL2luY2x1ZGUvZmNudGwuaAppbmRleCA3OTRlNjJjLi4wZjAxNmQ3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZmNudGwuaAorKysgYi9saWJjL2luY2x1ZGUvZmNudGwuaApAQCAtMzMsMjYgKzMzLDIwIEBACiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvZmFkdmlzZS5oPgogI2luY2x1ZGUgPGxpbnV4L2ZjbnRsLmg+CisjaW5jbHVkZSA8bGludXgvc3RhdC5oPgogI2luY2x1ZGUgPGxpbnV4L3Vpby5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPiAgLyogdGhpcyBpcyBub3QgcmVxdWlyZWQsIGJ1dCBtYWtlcyBjbGllbnQgY29kZSBtdWNoIGhhcHBpZXIgKi8KIAogX19CRUdJTl9ERUNMUwogCiAjaWZkZWYgX19MUDY0X18KLS8qIExQNjQga2VybmVscyBkb24ndCBoYXZlIGZsb2NrNjQgYmVjYXVzZSB0aGVpciBmbG9jayBpcyA2NC1iaXQuICovCi1zdHJ1Y3QgZmxvY2s2NCB7Ci0gIHNob3J0IGxfdHlwZTsKLSAgc2hvcnQgbF93aGVuY2U7Ci0gIG9mZjY0X3QgbF9zdGFydDsKLSAgb2ZmNjRfdCBsX2xlbjsKLSAgcGlkX3QgbF9waWQ7Ci19OworLyogTFA2NCBrZXJuZWxzIGRvbid0IGhhdmUgRl8qNjQgZGVmaW5lcyBiZWNhdXNlIHRoZWlyIGZsb2NrIGlzIDY0LWJpdC4gKi8KICNkZWZpbmUgRl9HRVRMSzY0ICBGX0dFVExLCiAjZGVmaW5lIEZfU0VUTEs2NCAgRl9TRVRMSwogI2RlZmluZSBGX1NFVExLVzY0IEZfU0VUTEtXCiAjZW5kaWYKIAogI2RlZmluZSBPX0FTWU5DIEZBU1lOQworI2RlZmluZSBPX1JTWU5DIE9fU1lOQwogCiAjZGVmaW5lIFNQTElDRV9GX01PVkUgMQogI2RlZmluZSBTUExJQ0VfRl9OT05CTE9DSyAyCkBAIC02NSwyMiArNTksMjkgQEAKIAogZXh0ZXJuIGludCBjcmVhdChjb25zdCBjaGFyKiwgbW9kZV90KTsKIGV4dGVybiBpbnQgY3JlYXQ2NChjb25zdCBjaGFyKiwgbW9kZV90KTsKLWV4dGVybiBpbnQgZmFsbG9jYXRlNjQoaW50LCBpbnQsIG9mZjY0X3QsIG9mZjY0X3QpOwotZXh0ZXJuIGludCBmYWxsb2NhdGUoaW50LCBpbnQsIG9mZl90LCBvZmZfdCk7CiBleHRlcm4gaW50IGZjbnRsKGludCwgaW50LCAuLi4pOwogZXh0ZXJuIGludCBvcGVuYXQoaW50LCBjb25zdCBjaGFyKiwgaW50LCAuLi4pOwogZXh0ZXJuIGludCBvcGVuYXQ2NChpbnQsIGNvbnN0IGNoYXIqLCBpbnQsIC4uLik7CiBleHRlcm4gaW50IG9wZW4oY29uc3QgY2hhciosIGludCwgLi4uKTsKIGV4dGVybiBpbnQgb3BlbjY0KGNvbnN0IGNoYXIqLCBpbnQsIC4uLik7Ci1leHRlcm4gaW50IHBvc2l4X2ZhZHZpc2U2NChpbnQsIG9mZjY0X3QsIG9mZjY0X3QsIGludCk7Ci1leHRlcm4gaW50IHBvc2l4X2ZhZHZpc2UoaW50LCBvZmZfdCwgb2ZmX3QsIGludCk7Ci1leHRlcm4gaW50IHBvc2l4X2ZhbGxvY2F0ZTY0KGludCwgb2ZmNjRfdCwgb2ZmNjRfdCk7Ci1leHRlcm4gaW50IHBvc2l4X2ZhbGxvY2F0ZShpbnQsIG9mZl90LCBvZmZfdCk7CiBleHRlcm4gc3NpemVfdCBzcGxpY2UoaW50LCBvZmY2NF90KiwgaW50LCBvZmY2NF90Kiwgc2l6ZV90LCB1bnNpZ25lZCBpbnQpOwogZXh0ZXJuIHNzaXplX3QgdGVlKGludCwgaW50LCBzaXplX3QsIHVuc2lnbmVkIGludCk7CiBleHRlcm4gaW50IHVubGlua2F0KGludCwgY29uc3QgY2hhciosIGludCk7CiBleHRlcm4gc3NpemVfdCB2bXNwbGljZShpbnQsIGNvbnN0IHN0cnVjdCBpb3ZlYyosIHNpemVfdCwgdW5zaWduZWQgaW50KTsKIAorI2lmIGRlZmluZWQoX19VU0VfRklMRV9PRkZTRVQ2NCkKK2V4dGVybiBpbnQgZmFsbG9jYXRlKGludCwgaW50LCBvZmZfdCwgb2ZmX3QpIF9fUkVOQU1FKGZhbGxvY2F0ZTY0KTsKK2V4dGVybiBpbnQgcG9zaXhfZmFkdmlzZShpbnQsIG9mZl90LCBvZmZfdCwgaW50KSBfX1JFTkFNRShwb3NpeF9mYWR2aXNlNjQpOworZXh0ZXJuIGludCBwb3NpeF9mYWxsb2NhdGUoaW50LCBvZmZfdCwgb2ZmX3QpIF9fUkVOQU1FKHBvc2l4X2ZhbGxvY2F0ZSk7CisjZWxzZQorZXh0ZXJuIGludCBmYWxsb2NhdGUoaW50LCBpbnQsIG9mZl90LCBvZmZfdCk7CitleHRlcm4gaW50IHBvc2l4X2ZhZHZpc2UoaW50LCBvZmZfdCwgb2ZmX3QsIGludCk7CitleHRlcm4gaW50IHBvc2l4X2ZhbGxvY2F0ZShpbnQsIG9mZl90LCBvZmZfdCk7CisjZW5kaWYKK2V4dGVybiBpbnQgZmFsbG9jYXRlNjQoaW50LCBpbnQsIG9mZjY0X3QsIG9mZjY0X3QpOworZXh0ZXJuIGludCBwb3NpeF9mYWR2aXNlNjQoaW50LCBvZmY2NF90LCBvZmY2NF90LCBpbnQpOworZXh0ZXJuIGludCBwb3NpeF9mYWxsb2NhdGU2NChpbnQsIG9mZjY0X3QsIG9mZjY0X3QpOworCiBleHRlcm4gaW50IF9fb3Blbl8yKGNvbnN0IGNoYXIqLCBpbnQpOwogZXh0ZXJuIGludCBfX29wZW5fcmVhbChjb25zdCBjaGFyKiwgaW50LCAuLi4pIF9fUkVOQU1FKG9wZW4pOwogZXh0ZXJuIGludCBfX29wZW5hdF8yKGludCwgY29uc3QgY2hhciosIGludCk7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZmVhdHVyZXMuaCBiL2xpYmMvaW5jbHVkZS9mZWF0dXJlcy5oCmluZGV4IDM0M2M4NGQuLmEyNzljN2YgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9mZWF0dXJlcy5oCisrKyBiL2xpYmMvaW5jbHVkZS9mZWF0dXJlcy5oCkBAIC0yNSwzNCArMjUsMTEgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfRkVBVFVSRVNfSF8KICNkZWZpbmUgX0ZFQVRVUkVTX0hfCiAKLS8qIGNlcnRhaW4gTGludXgtc3BlY2lmaWMgcHJvZ3JhbXMgZXhwZWN0IGEgPGZlYXR1cmVzLmg+IGhlYWRlciBmaWxlCi0gKiB0aGF0IGRlZmluZXMgdmFyaW91cyBmZWF0dXJlcyBtYWNyb3MKLSAqLwotCi0vKiB3ZSBkbyBpbmNsdWRlIGEgbnVtYmVyIG9mIEJTRCBleHRlbnNpb25zICovCi0jZGVmaW5lICBfQlNEX1NPVVJDRSAgMQotCi0vKiB3ZSBkbyBpbmNsdWRlIGEgbnVtYmVyIG9mIEdOVSBleHRlbnNpb25zICovCi0jZGVmaW5lICBfR05VX1NPVVJDRSAgMQotCi0vKiBDOTUgc3VwcG9ydCAqLwotI3VuZGVmIF9fVVNFX0lTT0M5NQotI2lmIGRlZmluZWQgX19TVERDX1ZFUlNJT05fXyAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTQwOUwKLSMgZGVmaW5lIF9fVVNFX0lTT0M5NSAgIDEKLSNlbmRpZgotCi0vKiBDOTkgc3VwcG9ydCAqLwotI3VuZGVmIF9fVVNFX0lTT0M5OQotI2lmIGRlZmluZWQgX19TVERDX1ZFUlNJT05fXyAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwKLSMgZGVmaW5lIF9fVVNFX0lTT0M5OSAgIDEKLSNlbmRpZgotCi0vKiBQb3NpeCBzdXBwb3J0ICovCi0jZGVmaW5lICBfX1VTRV9QT1NJWCAgIDEKLSNkZWZpbmUgIF9fVVNFX1BPU0lYMiAgMQotI2RlZmluZSAgX19VU0VfWFBHICAgICAxCisvKiBPdXIgPGZlYXR1cmVzLmg+IG1hY3JvIGZ1biBpcyBhbGwgaW4gPHN5cy9jZGVmcy5oPi4gKi8KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIAogI2VuZGlmIC8qIF9GRUFUVVJFU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2Z0cy5oIGIvbGliYy9pbmNsdWRlL2Z0cy5oCmluZGV4IGRhMjZhODguLmNkZTAzNDkgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9mdHMuaAorKysgYi9saWJjL2luY2x1ZGUvZnRzLmgKQEAgLTM1LDYgKzM1LDggQEAKICNpZm5kZWYJX0ZUU19IXwogI2RlZmluZQlfRlRTX0hfCiAKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKwogdHlwZWRlZiBzdHJ1Y3QgewogCXN0cnVjdCBfZnRzZW50ICpmdHNfY3VyOwkvKiBjdXJyZW50IG5vZGUgKi8KIAlzdHJ1Y3QgX2Z0c2VudCAqZnRzX2NoaWxkOwkvKiBsaW5rZWQgbGlzdCBvZiBjaGlsZHJlbiAqLwpAQCAtMTExLDggKzExMyw2IEBACiAJY2hhciBmdHNfbmFtZVsxXTsJCS8qIGZpbGUgbmFtZSAqLwogfSBGVFNFTlQ7CiAKLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLQogX19CRUdJTl9ERUNMUwogRlRTRU5UCSpmdHNfY2hpbGRyZW4oRlRTICosIGludCk7CiBpbnQJIGZ0c19jbG9zZShGVFMgKik7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZ3JwLmggYi9saWJjL2luY2x1ZGUvZ3JwLmgKaW5kZXggZmM0ZDUyMC4uZGY3YTYxMyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2dycC5oCisrKyBiL2xpYmMvaW5jbHVkZS9ncnAuaApAQCAtNTQsOSArNTQsOSBAQAogc3RydWN0IGdyb3VwCSpnZXRncmdpZChnaWRfdCk7CiBzdHJ1Y3QgZ3JvdXAJKmdldGdybmFtKGNvbnN0IGNoYXIgKik7CiAjaWYgX19QT1NJWF9WSVNJQkxFID49IDIwMDExMiB8fCBfX1hQR19WSVNJQkxFCi1zdHJ1Y3QgZ3JvdXAJKmdldGdyZW50KHZvaWQpOwotdm9pZAkJIHNldGdyZW50KHZvaWQpOwotdm9pZAkJIGVuZGdyZW50KHZvaWQpOworc3RydWN0IGdyb3VwCSpnZXRncmVudCh2b2lkKSAgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCgiZ2V0Z3JlbnQgaXMgbWVhbmluZ2xlc3Mgb24gQW5kcm9pZCIpKSk7Cit2b2lkIHNldGdyZW50KHZvaWQpIF9fYXR0cmlidXRlX18oKGRlcHJlY2F0ZWQoInNldGdyZW50IGlzIG1lYW5pbmdsZXNzIG9uIEFuZHJvaWQiKSkpOwordm9pZCBlbmRncmVudCh2b2lkKSBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKCJlbmRncmVudCBpcyBtZWFuaW5nbGVzcyBvbiBBbmRyb2lkIikpKTsKIGludAkJIGdldGdyZ2lkX3IoZ2lkX3QsIHN0cnVjdCBncm91cCAqLCBjaGFyICosCiAJCSAgICBzaXplX3QsIHN0cnVjdCBncm91cCAqKik7CiBpbnQJCSBnZXRncm5hbV9yKGNvbnN0IGNoYXIgKiwgc3RydWN0IGdyb3VwICosIGNoYXIgKiwKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9saWJnZW4uaCBiL2xpYmMvaW5jbHVkZS9saWJnZW4uaAppbmRleCA5ZGNlYzc1Li5lODkzMjhlIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbGliZ2VuLmgKKysrIGIvbGliYy9pbmNsdWRlL2xpYmdlbi5oCkBAIC0yNSw2ICsyNSw3IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX0xJQkdFTl9ICiAjZGVmaW5lIF9MSUJHRU5fSAogCkBAIC0zMyw4ICszNCwxOCBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKLS8qIE9uIEFuZHJvaWQgdGhlc2UgZG9uJ3QgbW9kaWZ5IHRoZWlyIGlucHV0LCBhbmQgdXNlIHRocmVhZC1sb2NhbCBzdG9yYWdlIGZvciB0aGVpciByZXN1bHRzLiAqLworI2lmICFkZWZpbmVkKF9fYmlvbmljX3VzaW5nX2dudV9iYXNlbmFtZSkKKy8qCisgKiA8c3RyaW5nLmg+IGdldHMgeW91IHRoZSBHTlUgYmFzZW5hbWUuCisgKiA8bGliZ2VuLmg+IHRoZSBQT1NJWCBvbmUuCisgKiBOb3RlIHRoYXQgb3VyICJQT1NJWCIgb25lIGhhcyB0aGUgd3JvbmcgYXJndW1lbnQgY3YtcXVhbGlmaWVycywgYnV0IGRvZXNuJ3QKKyAqIG1vZGlmeSBpdHMgaW5wdXQgYW5kIHVzZXMgdGhyZWFkLWxvY2FsIHN0b3JhZ2UgZm9yIHRoZSByZXN1bHQgaWYgbmVjZXNzYXJ5LgorICovCiBleHRlcm4gY2hhciogYmFzZW5hbWUoY29uc3QgY2hhciopOworI2RlZmluZSBfX2Jpb25pY191c2luZ19wb3NpeF9iYXNlbmFtZQorI2VuZGlmCisKKy8qIFRoaXMgaGFzIHRoZSB3cm9uZyBhcmd1bWVudCBjdi1xdWFsaWZpZXJzLCBidXQgZG9lc24ndCBtb2RpZnkgaXRzIGlucHV0IGFuZCB1c2VzIHRocmVhZC1sb2NhbCBzdG9yYWdlIGZvciB0aGUgcmVzdWx0IGlmIG5lY2Vzc2FyeS4gKi8KIGV4dGVybiBjaGFyKiBkaXJuYW1lKGNvbnN0IGNoYXIqKTsKIAogI2lmICFkZWZpbmVkKF9fTFA2NF9fKQpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2xpbWl0cy5oIGIvbGliYy9pbmNsdWRlL2xpbWl0cy5oCmluZGV4IGZiMDk2NTcuLjZhZTYyOWIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9saW1pdHMuaAorKysgYi9saWJjL2luY2x1ZGUvbGltaXRzLmgKQEAgLTM3LDM5ICszNyw2IEBACiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIAotI2lmIF9fUE9TSVhfVklTSUJMRQotI2RlZmluZQlfUE9TSVhfQVJHX01BWAkJNDA5NgotI2RlZmluZQlfUE9TSVhfQ0hJTERfTUFYCTI1Ci0jZGVmaW5lCV9QT1NJWF9MSU5LX01BWAkJOAotI2RlZmluZQlfUE9TSVhfTUFYX0NBTk9OCTI1NQotI2RlZmluZQlfUE9TSVhfTUFYX0lOUFVUCTI1NQotI2RlZmluZQlfUE9TSVhfTkFNRV9NQVgJCTE0Ci0jZGVmaW5lCV9QT1NJWF9OR1JPVVBTX01BWAkwCi0jZGVmaW5lCV9QT1NJWF9PUEVOX01BWAkJMTYKLSNkZWZpbmUJX1BPU0lYX1BBVEhfTUFYCQkyNTYKLSNkZWZpbmUgX1BPU0lYX1BJUEVfQlVGCQk1MTIKLSNkZWZpbmUJX1BPU0lYX1JFX0RVUF9NQVgJMjU1Ci0jZGVmaW5lIF9QT1NJWF9TU0laRV9NQVgJMzI3NjcKLSNkZWZpbmUgX1BPU0lYX1NUUkVBTV9NQVgJOAotI2RlZmluZSBfUE9TSVhfU1lNTElOS19NQVgJMjU1Ci0jZGVmaW5lIF9QT1NJWF9TWU1MT09QX01BWAk4Ci0jZGVmaW5lIF9QT1NJWF9UWk5BTUVfTUFYCTMKLQotI2RlZmluZQlfUE9TSVgyX0JDX0JBU0VfTUFYCTk5Ci0jZGVmaW5lCV9QT1NJWDJfQkNfRElNX01BWAkyMDQ4Ci0jZGVmaW5lCV9QT1NJWDJfQkNfU0NBTEVfTUFYCTk5Ci0jZGVmaW5lCV9QT1NJWDJfQkNfU1RSSU5HX01BWAkxMDAwCi0jZGVmaW5lCV9QT1NJWDJfQ09MTF9XRUlHSFRTX01BWAkyCi0jZGVmaW5lCV9QT1NJWDJfRVhQUl9ORVNUX01BWAkzMgotI2RlZmluZQlfUE9TSVgyX0xJTkVfTUFYCTIwNDgKLSNkZWZpbmUJX1BPU0lYMl9SRV9EVVBfTUFYCV9QT1NJWF9SRV9EVVBfTUFYCi0KLSNpZiBfX1BPU0lYX1ZJU0lCTEUgPj0gMjAwMTEyCi0jZGVmaW5lIF9QT1NJWF9UVFlfTkFNRV9NQVgJOQkvKiBpbmNsdWRlcyB0cmFpbGluZyBOVUwgKi8KLSNkZWZpbmUgX1BPU0lYX0xPR0lOX05BTUVfTUFYCTkJLyogaW5jbHVkZXMgdHJhaWxpbmcgTlVMICovCi0jZW5kaWYgLyogX19QT1NJWF9WSVNJQkxFID49IDIwMDExMiAqLwotI2VuZGlmIC8qIF9fUE9TSVhfVklTSUJMRSAqLwotCiAjaWYgX19YUEdfVklTSUJMRQogI2RlZmluZSBQQVNTX01BWAkJMTI4CS8qIF9QQVNTV09SRF9MRU4gZnJvbSA8cHdkLmg+ICovCiAKQEAgLTEyNSw0ICs5MiwxMCBAQAogLyogZ2xpYmMncyBQQUdFX01BU0sgaXMgdGhlIGJpdHdpc2UgbmVnYXRpb24gb2YgQlNEJ3MhIFRPRE86IHJlbW92ZT8gKi8KICNkZWZpbmUgUEFHRV9NQVNLICh+KFBBR0VfU0laRSAtIDEpKQogCisjZGVmaW5lIFNFTV9WQUxVRV9NQVggMHgzZmZmZmZmZgorCisvKiBQT1NJWCBzYXlzIHRoZXNlIGJlbG9uZyBpbiA8dW5pc3RkLmg+IGJ1dCBCU0QgaGFzIHNvbWUgaW4gPGxpbWl0cy5oPi4gKi8KKyNpbmNsdWRlIDxtYWNoaW5lL3Bvc2l4X2xpbWl0cy5oPgorCisjZGVmaW5lIEhPU1RfTkFNRV9NQVggX1BPU0lYX0hPU1RfTkFNRV9NQVgKICNlbmRpZiAvKiAhX0xJTUlUU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmggYi9saWJjL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYzg5NTE5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9NQUNISU5FX0VORElBTl9IXworI2RlZmluZSBfTUFDSElORV9FTkRJQU5fSF8KKworLyogVGhpcyBmaWxlIGlzIGZvciBCU0Qgc291cmNlIGNvbXBhdGliaWxpdHkgb25seS4gVXNlIDxlbmRpYW4uaD4gb3IgPHN5cy9lbmRpYW4uaD4gaW5zdGVhZC4gKi8KKyNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+CisKKyNlbmRpZiAvKiBfTUFDSElORV9FTkRJQU5fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3Bvc2l4X2xpbWl0cy5oIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvcG9zaXhfbGltaXRzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzg3YWY1YwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3Bvc2l4X2xpbWl0cy5oCkBAIC0wLDAgKzEsMTU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX1BPU0lYX0xJTUlUU19IXworI2RlZmluZSBfUE9TSVhfTElNSVRTX0hfCisKKworLyogQW55IGNvbnN0YW50IHZhbHVlcyBoZXJlIG90aGVyIHRoYW4gLTEgb3IgMjAwODA5TCBhcmUgZXhwbGljaXRseSBzcGVjaWZpZWQgYnkgUE9TSVguMS0yMDA4LiAqLworLyogS2VlcCBpdCBzb3J0ZWQuICovCisjZGVmaW5lIF9QT1NJWF9BRFZJU09SWV9JTkZPICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9BSU9fTElTVElPX01BWCAgICAgICAyCisjZGVmaW5lIF9QT1NJWF9BSU9fTUFYICAgICAgICAgICAgICAxCisjZGVmaW5lIF9QT1NJWF9BUkdfTUFYICAgICAgICAgICAgICA0MDk2CisjZGVmaW5lIF9QT1NJWF9BU1lOQ0hST05PVVNfSU8gICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9CQVJSSUVSUyAgICAgICAgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9DSElMRF9NQVggICAgICAgICAgICAyNQorI2RlZmluZSBfUE9TSVhfQ0hPV05fUkVTVFJJQ1RFRCAgICAgMSAgLyogeWVzLCBjaG93biByZXF1aXJlcyBhcHByb3ByaWF0ZSBwcml2aWxlZ2VzICovCisjZGVmaW5lIF9QT1NJWF9DTE9DS19TRUxFQ1RJT04gICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9DUFVUSU1FICAgICAgICAgICAgICAwICAvKiBVc2Ugc3lzY29uZiB0byBkZXRlY3Qgc3VwcG9ydCBhdCBydW50aW1lLiAqLworI2RlZmluZSBfUE9TSVhfREVMQVlUSU1FUl9NQVggICAgICAgMzIKKyNkZWZpbmUgX1BPU0lYX0ZTWU5DICAgICAgICAgICAgICAgIDIwMDgwOUwgIC8qIGZkYXRhc3luYygpIHN1cHBvcnRlZCAqLworI2RlZmluZSBfUE9TSVhfSE9TVF9OQU1FX01BWCAgICAgICAgMjU1CisjZGVmaW5lIF9QT1NJWF9JUFY2ICAgICAgICAgICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9KT0JfQ09OVFJPTCAgICAgICAgICAxICAvKiBqb2IgY29udHJvbCBpcyBhIExpbnV4IGZlYXR1cmUgKi8KKyNkZWZpbmUgX1BPU0lYX0xJTktfTUFYICAgICAgICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX0xPR0lOX05BTUVfTUFYICAgICAgIDkgIC8qIGluY2x1ZGVzIHRyYWlsaW5nIE5VTCAqLworI2RlZmluZSBfUE9TSVhfTUFQUEVEX0ZJTEVTICAgICAgICAgMjAwODA5TCAgLyogbW1hcC1lZCBmaWxlcyBzdXBwb3J0ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX01BWF9DQU5PTiAgICAgICAgICAgIDI1NQorI2RlZmluZSBfUE9TSVhfTUFYX0lOUFVUICAgICAgICAgICAgMjU1CisjZGVmaW5lIF9QT1NJWF9NRU1MT0NLICAgICAgICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9NRU1MT0NLX1JBTkdFICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9NRU1PUllfUFJPVEVDVElPTiAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9NRVNTQUdFX1BBU1NJTkcgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9NT05PVE9OSUNfQ0xPQ0sgICAgICAwICAvKiB0aGUgbW9ub3RvbmljIGNsb2NrIG1heSBiZSBhdmFpbGFibGU7IGFzayBzeXNjb25mICovCisjZGVmaW5lIF9QT1NJWF9NUV9PUEVOX01BWCAgICAgICAgICA4CisjZGVmaW5lIF9QT1NJWF9NUV9QUklPX01BWCAgICAgICAgICAzMgorI2RlZmluZSBfUE9TSVhfTkFNRV9NQVggICAgICAgICAgICAgMTQKKyNkZWZpbmUgX1BPU0lYX05HUk9VUFNfTUFYICAgICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX05PX1RSVU5DICAgICAgICAgICAgIDEgIC8qIHZlcnkgbG9uZyBwYXRobmFtZXMgZ2VuZXJhdGUgYW4gZXJyb3IgKi8KKyNkZWZpbmUgX1BPU0lYX09QRU5fTUFYICAgICAgICAgICAgIDIwCisjZGVmaW5lIF9QT1NJWF9QQVRIX01BWCAgICAgICAgICAgICAyNTYKKyNkZWZpbmUgX1BPU0lYX1BJUEVfQlVGICAgICAgICAgICAgIDUxMgorI2RlZmluZSBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORyAgMjAwODA5TCAgLyogcHJpb3JpdHkgc2NoZWR1bGluZyBpcyBhIExpbnV4IGZlYXR1cmUgKi8KKyNkZWZpbmUgX1BPU0lYX1BSSU9SSVRJWkVEX0lPICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1JBV19TT0NLRVRTICAgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1JFQURFUl9XUklURVJfTE9DS1MgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1JFQUxUSU1FX1NJR05BTFMgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1JFR0VYUCAgICAgICAgICAgICAgIDEKKyNkZWZpbmUgX1BPU0lYX1JFX0RVUF9NQVggICAgICAgICAgIDI1NQorI2RlZmluZSBfUE9TSVhfU0FWRURfSURTICAgICAgICAgICAgMSAgLyogc2F2ZWQgdXNlciBpZHMgaXMgYSBMaW51eCBmZWF0dXJlICovCisjZGVmaW5lIF9QT1NJWF9TRU1BUEhPUkVTICAgICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9TRU1fTlNFTVNfTUFYICAgICAgICAyNTYKKyNkZWZpbmUgX1BPU0lYX1NFTV9WQUxVRV9NQVggICAgICAgIDMyNzY3CisjZGVmaW5lIF9QT1NJWF9TSEFSRURfTUVNT1JZX09CSkVDVFMgIC0xICAvKiBzaG1fb3BlbigpL3NobV91bmxpbmsoKSBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1NIRUxMICAgICAgICAgICAgICAgIDEgICAvKiBzeXN0ZW0oKSBzdXBwb3J0ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1NJR1FVRVVFX01BWCAgICAgICAgIDMyCisjZGVmaW5lIF9QT1NJWF9TUEFXTiAgICAgICAgICAgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9TUElOX0xPQ0tTICAgICAgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9TUE9SQURJQ19TRVJWRVIgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWF9TU0laRV9NQVggICAgICAgICAgICAzMjc2NworI2RlZmluZSBfUE9TSVhfU1RSRUFNX01BWCAgICAgICAgICAgOAorI2RlZmluZSBfUE9TSVhfU1lNTElOS19NQVggICAgICAgICAgMjU1CisjZGVmaW5lIF9QT1NJWF9TWU1MT09QX01BWCAgICAgICAgICA4CisjZGVmaW5lIF9QT1NJWF9TWU5DSFJPTklaRURfSU8gICAgICAyMDA4MDlMICAvKiBzeW5jaHJvbml6ZWQgaS9vIHN1cHBvcnRlZCAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEUyAgICAgICAgICAgICAgMjAwODA5TCAgLyogd2Ugc3VwcG9ydCB0aHJlYWRzICovCisjZGVmaW5lIF9QT1NJWF9USFJFQURfQVRUUl9TVEFDS0FERFIgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9BVFRSX1NUQUNLU0laRSAgMjAwODA5TAorI2RlZmluZSBfUE9TSVhfVEhSRUFEX0NQVVRJTUUgICAgICAgMCAgLyogVXNlIHN5c2NvbmYgdG8gZGV0ZWN0IHN1cHBvcnQgYXQgcnVudGltZS4gKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMgNAorI2RlZmluZSBfUE9TSVhfVEhSRUFEX0tFWVNfTUFYICAgICAgMTI4CisjZGVmaW5lIF9QT1NJWF9USFJFQURfUFJJT1JJVFlfU0NIRURVTElORyAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9USFJFQURfUFJJT19JTkhFUklUICAyMDA4MDlMICAvKiBsaW51eCBmZWF0dXJlICovCisjZGVmaW5lIF9QT1NJWF9USFJFQURfUFJJT19QUk9URUNUICAyMDA4MDlMICAvKiBsaW51eCBmZWF0dXJlICovCisjZGVmaW5lIF9QT1NJWF9USFJFQURfUFJPQ0VTU19TSEFSRUQgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9ST0JVU1RfUFJJT19JTkhFUklUIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9ST0JVU1RfUFJJT19QUk9URUNUIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUyAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9USFJFQURfU1BPUkFESUNfU0VSVkVSIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9USFJFQURTX01BWCAgIDY0CisjZGVmaW5lIF9QT1NJWF9USU1FT1VUUyAgICAgICAgICAgICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9USU1FUlMgICAgICAgICAgICAgICAyMDA4MDlMICAvKiBQb3NpeCB0aW1lcnMgYXJlIHN1cHBvcnRlZCAqLworI2RlZmluZSBfUE9TSVhfVElNRVJfTUFYICAgICAgICAgICAgMzIKKyNkZWZpbmUgX1BPU0lYX1RSQUNFICAgICAgICAgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RSQUNFX0VWRU5UX0ZJTFRFUiAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RSQUNFX0lOSEVSSVQgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RSQUNFX0xPRyAgICAgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RSQUNFX05BTUVfTUFYICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX1RSQUNFX1NZU19NQVggICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX1RSQUNFX1VTRVJfRVZFTlRfTUFYIDMyCisjZGVmaW5lIF9QT1NJWF9UVFlfTkFNRV9NQVggICAgICAgICA5ICAvKiBpbmNsdWRlcyB0cmFpbGluZyBOVUwgKi8KKyNkZWZpbmUgX1BPU0lYX1RZUEVEX01FTU9SWV9PQkpFQ1RTIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1RaTkFNRV9NQVggICAgICAgICAgIDYKKyNkZWZpbmUgX1BPU0lYX1ZESVNBQkxFICAgICAgICAgICAgICdcMCcKKworI2lmIGRlZmluZWQoX19MUDY0X18pCisjZGVmaW5lIF9QT1NJWF9WN19JTFAzMl9PRkYzMiAgICAgICAtMQorI2RlZmluZSBfUE9TSVhfVjdfSUxQMzJfT0ZGQklHICAgICAgLTEKKyNkZWZpbmUgX1BPU0lYX1Y3X0xQNjRfT0ZGNjQgICAgICAgICAxCisjZGVmaW5lIF9QT1NJWF9WN19MUEJJR19PRkZCSUcgICAgICAgMQorI2Vsc2UKKyNkZWZpbmUgX1BPU0lYX1Y3X0lMUDMyX09GRjMyICAgICAgICAxCisjZGVmaW5lIF9QT1NJWF9WN19JTFAzMl9PRkZCSUcgICAgICAtMQorI2RlZmluZSBfUE9TSVhfVjdfTFA2NF9PRkY2NCAgICAgICAgLTEKKyNkZWZpbmUgX1BPU0lYX1Y3X0xQQklHX09GRkJJRyAgICAgIC0xCisjZW5kaWYKKworI2RlZmluZSBfUE9TSVgyX0JDX0JBU0VfTUFYICAgICAgICAgOTkKKyNkZWZpbmUgX1BPU0lYMl9CQ19ESU1fTUFYICAgICAgICAgIDIwNDgKKyNkZWZpbmUgX1BPU0lYMl9CQ19TQ0FMRV9NQVggICAgICAgIDk5CisjZGVmaW5lIF9QT1NJWDJfQkNfU1RSSU5HX01BWCAgICAgICAxMDAwCisjZGVmaW5lIF9QT1NJWDJfQ0hBUkNMQVNTX05BTUVfTUFYICAxNAorI2RlZmluZSBfUE9TSVgyX0NIQVJfVEVSTSAgICAgICAgICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVgyX0NPTExfV0VJR0hUU19NQVggICAgMgorI2RlZmluZSBfUE9TSVgyX0NfQklORCAgICAgICAgICAgICAgX1BPU0lYX1ZFUlNJT04KKyNkZWZpbmUgX1BPU0lYMl9DX0RFViAgICAgICAgICAgICAgIC0xICAvKiBjIGRldiB1dGlsaXRpZXMgbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWDJfRVhQUl9ORVNUX01BWCAgICAgICAzMgorI2RlZmluZSBfUE9TSVgyX0xJTkVfTUFYICAgICAgICAgICAgMjA0OAorI2RlZmluZSBfUE9TSVgyX0xPQ0FMRURFRiAgICAgICAgICAgLTEgIC8qIGxvY2FsZWRlZiB1dGlsaXRpeSBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYMl9SRV9EVVBfTUFYICAgICAgICAgIF9QT1NJWF9SRV9EVVBfTUFYCisjZGVmaW5lIF9QT1NJWDJfU1dfREVWICAgICAgICAgICAgICAtMSAgLyogc29mdHdhcmUgZGV2IHV0aWxpdGllcyBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYMl9VUEUgICAgICAgICAgICAgICAgIC0xICAvKiB1c2VyIHBvcnRhYmlsaXR5IHV0aWxpdGllcyBub3QgaW1wbGVtZW50ZWQgKi8KKworI2RlZmluZSBfWE9QRU5fRU5IX0kxOE4gICAgICAgICAgICAgLTEgIC8qIHdlIGRvbid0IHN1cHBvcnQgaW50ZXJuYXRpb25hbGl6YXRpb24gaW4gdGhlIEMgbGlicmFyeSAqLworI2RlZmluZSBfWE9QRU5fQ1JZUFQgICAgICAgICAgICAgICAgLTEgIC8qIGRvbid0IHN1cHBvcnQgWC9PcGVuIEVuY3J5cHRpb24gKi8KKyNkZWZpbmUgX1hPUEVOX0lPVl9NQVggICAgICAgICAgICAgIDE2CisjZGVmaW5lIF9YT1BFTl9MRUdBQ1kgICAgICAgICAgICAgICAtMSAgLyogbm90IHN1cHBvcnQgYWxsICovCisjZGVmaW5lIF9YT1BFTl9SRUFMVElNRSAgICAgICAgICAgICAtMSAvKiB3ZSBkb24ndCBzdXBwb3J0IGFsbCB0aGVzZSBmdW5jdGlvbnMgKi8KKyNkZWZpbmUgX1hPUEVOX1JFQUxUSU1FX1RIUkVBRFMgICAgIC0xICAvKiBzYW1lIGhlcmUgKi8KKyNkZWZpbmUgX1hPUEVOX1NITSAgICAgICAgICAgICAgICAgIC0xCisjZGVmaW5lIF9YT1BFTl9VTklYICAgICAgICAgICAgICAgICAxCisKKyNlbmRpZiAvKiBfUE9TSVhfTElNSVRTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbWFjaGluZS9wdGhyZWFkX3R5cGVzLmggYi9saWJjL2luY2x1ZGUvbWFjaGluZS9wdGhyZWFkX3R5cGVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTAwNTQxYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3B0aHJlYWRfdHlwZXMuaApAQCAtMCwwICsxLDQ4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX01BQ0hJTkVfUFRIUkVBRF9UWVBFU19IXworI2RlZmluZSBfTUFDSElORV9QVEhSRUFEX1RZUEVTX0hfCisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKwordHlwZWRlZiBsb25nIHB0aHJlYWRfdDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICB1aW50MzJfdCBmbGFnczsKKyAgdm9pZCogc3RhY2tfYmFzZTsKKyAgc2l6ZV90IHN0YWNrX3NpemU7CisgIHNpemVfdCBndWFyZF9zaXplOworICBpbnQzMl90IHNjaGVkX3BvbGljeTsKKyAgaW50MzJfdCBzY2hlZF9wcmlvcml0eTsKKyNpZmRlZiBfX0xQNjRfXworICBjaGFyIF9fcmVzZXJ2ZWRbMTZdOworI2VuZGlmCit9IHB0aHJlYWRfYXR0cl90OworCisjZW5kaWYgLyogX01BQ0hJTkVfUFRIUkVBRF9UWVBFU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL21hY2hpbmUvdGltZXNwZWMuaCBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3RpbWVzcGVjLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTE3NzlhZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3RpbWVzcGVjLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9NQUNISU5FX1RJTUVTUEVDX0hfCisjZGVmaW5lIF9NQUNISU5FX1RJTUVTUEVDX0hfCisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworLyoKKyAqIFRoaXMgZmlsZSBpcyB1c2VkIHRvIGluY2x1ZGUgdGltZXNwZWMgZGVmaW5pdGlvbiB3aXRob3V0IGludHJvZHVjaW5nIHRoZSB3aG9sZQorICogPGxpbnV4L3RpbWUuaD4sIDxzeXMvdGltZS5oPiBvciA8dGltZS5oPi4KKyAqLworI2lmbmRlZiBfU1RSVUNUX1RJTUVTUEVDCisjZGVmaW5lIF9TVFJVQ1RfVElNRVNQRUMKK3N0cnVjdCB0aW1lc3BlYyB7CisgIHRpbWVfdCB0dl9zZWM7CisgIGxvbmcgdHZfbnNlYzsKK307CisjZW5kaWYKKworI2VuZGlmIC8qIF9NQUNISU5FX1RJTUVTUEVDX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbWFsbG9jLmggYi9saWJjL2luY2x1ZGUvbWFsbG9jLmgKaW5kZXggZTZlYTI3Ni4uY2IxZGQzYiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL21hbGxvYy5oCisrKyBiL2xpYmMvaW5jbHVkZS9tYWxsb2MuaApAQCAtMjQsNiArMjQsNyBAQAogICovCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KIAogX19CRUdJTl9ERUNMUwogCkBAIC01Myw2ICs1NCwyNyBAQAogCiBleHRlcm4gc3RydWN0IG1hbGxpbmZvIG1hbGxpbmZvKHZvaWQpOwogCisvKgorICogWE1MIHN0cnVjdHVyZSBmb3IgbWFsbG9jX2luZm8oMykgaXMgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6CisgKgorICogPG1hbGxvYyB2ZXJzaW9uPSJqZW1hbGxvYy0xIj4KKyAqICAgPGhlYXAgbnI9IklOVCI+CisgKiAgICAgPGFsbG9jYXRlZC1sYXJnZT5JTlQ8L2FsbG9jYXRlZC1sYXJnZT4KKyAqICAgICA8YWxsb2NhdGVkLWh1Z2U+SU5UPC9hbGxvY2F0ZWQtaHVnZT4KKyAqICAgICA8YWxsb2NhdGVkLWJpbnM+SU5UPC9hbGxvY2F0ZWQtYmlucz4KKyAqICAgICA8Ymlucy10b3RhbD5JTlQ8L2JpbnMtdG90YWw+CisgKiAgICAgPGJpbiBucj0iSU5UIj4KKyAqICAgICAgIDxhbGxvY2F0ZWQ+SU5UPC9hbGxvY2F0ZWQ+CisgKiAgICAgICA8bm1hbGxvYz5JTlQ8L25tYWxsb2M+CisgKiAgICAgICA8bmRhbGxvYz5JTlQ8L25kYWxsb2M+CisgKiAgICAgPC9iaW4+CisgKiAgICAgPCEtLSBtb3JlIGJpbnMgLS0+CisgKiAgIDwvaGVhcD4KKyAqICAgPCEtLSBtb3JlIGhlYXBzIC0tPgorICogPC9tYWxsb2M+CisgKi8KK2V4dGVybiBpbnQgbWFsbG9jX2luZm8oaW50LCBGSUxFICopOworCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgIC8qIExJQkNfSU5DTFVERV9NQUxMT0NfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9uZXQvZXRoZXJuZXQuaCBiL2xpYmMvaW5jbHVkZS9uZXQvZXRoZXJuZXQuaAppbmRleCBiMWI4OGRkLi40Nzg1OGIzIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbmV0L2V0aGVybmV0LmgKKysrIGIvbGliYy9pbmNsdWRlL25ldC9ldGhlcm5ldC5oCkBAIC0yNSw4ICsyNSwxMSBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9ORVRfRVRIRVJORVRfSF8KLSNkZWZpbmUgX05FVF9JRl9FVEhFUk5FVF9IXworI2RlZmluZSBfTkVUX0VUSEVSTkVUX0hfCisKICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogI2luY2x1ZGUgPG5ldC9pZl9ldGhlci5oPgotI2VuZGlmIC8qICFfTkVUX0VUSEVSTkVUX0hfICovCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL25ldC9pZi5oIGIvbGliYy9pbmNsdWRlL25ldC9pZi5oCmluZGV4IGYzNmYzN2UuLjBlZmJmN2YgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9uZXQvaWYuaAorKysgYi9saWJjL2luY2x1ZGUvbmV0L2lmLmgKQEAgLTI2LDkgKzI2LDEzIEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjaWZuZGVmIF9ORVRfSUZfSF8KKyNkZWZpbmUgX05FVF9JRl9IXworCiAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2luY2x1ZGUgPGxpbnV4L2lmLmg+CiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKICNpZm5kZWYgSUZfTkFNRVNJWkUKICNkZWZpbmUgSUZfTkFNRVNJWkUgSUZOQU1TSVoKICNlbmRpZgpAQCAtNDIsMyArNDYsNSBAQAogZXh0ZXJuIGNoYXIqICAgICAgICBpZl9pbmRleHRvbmFtZSh1bnNpZ25lZCBpZmluZGV4LCBjaGFyICppZm5hbWUpOwogCiBfX0VORF9ERUNMUworCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9uZXQvaWZfdHlwZXMuaCBiL2xpYmMvaW5jbHVkZS9uZXQvaWZfdHlwZXMuaAppbmRleCBmMGEwNGY3Li5lZmY2ZDUzIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbmV0L2lmX3R5cGVzLmgKKysrIGIvbGliYy9pbmNsdWRlL25ldC9pZl90eXBlcy5oCkBAIC0xLDQgKzEsNCBAQAotLyoJJE5ldEJTRDogaWZfdHlwZXMuaCx2IDEuMjQgMjAwNS8xMi8xMCAyMzoyMTozOCBlbGFkIEV4cCAkCSovCisvKgkkTmV0QlNEOiBpZl90eXBlcy5oLHYgMS4yNiAyMDEyLzA4LzA1IDIxOjIxOjQxIHdpeiBFeHAgJAkqLwogCiAvKgogICogQ29weXJpZ2h0IChjKSAxOTg5LCAxOTkzLCAxOTk0CkBAIC0yNDksNyArMjQ5LDcgQEAKICNkZWZpbmUgSUZUX0RPQ1NDQUJMRVVQU1RSRUFNQ0hBTk5FTCAweGNkIC8qIENBVFYgVXBzdHJlYW0gQ2hhbm5lbCAqLwogI2RlZmluZSBJRlRfRUNPTkVUCQkgICAweGNlIC8qIEFjb3JuIEVjb25ldCAqLwogI2RlZmluZSBJRlRfUE9OMTU1CQkgICAweGNmIC8qIEZTQU4gMTU1TWIgU3ltZXRyaWNhbCBQT04gaW50ZXJmYWNlICovCi0jZGVmaW5lIElGVF9QT042MjIJCSAgIDB4ZDAgLyogRlNBTiA2MjJNYiBTeW1ldHJpY2FsIFBPTiBpbnRlcmZhY2UgKi8qLworI2RlZmluZSBJRlRfUE9ONjIyCQkgICAweGQwIC8qIEZTQU4gNjIyTWIgU3ltZXRyaWNhbCBQT04gaW50ZXJmYWNlICovCiAjZGVmaW5lIElGVF9CUklER0UJCSAgIDB4ZDEgLyogVHJhbnNwYXJlbnQgYnJpZGdlIGludGVyZmFjZSAqLwogI2RlZmluZSBJRlRfTElORUdST1VQCQkgICAweGQyIC8qIEludGVyZmFjZSBjb21tb24gdG8gbXVsdGlwbGUgbGluZXMgKi8KICNkZWZpbmUgSUZUX1ZPSUNFRU1GR0QJCSAgIDB4ZDMgLyogdm9pY2UgRSZNIEZlYXR1cmUgR3JvdXAgRCAqLwpAQCAtMjYzLDUgKzI2Myw2IEBACiAjZGVmaW5lIElGVF9GQUlUSAkweGYyCiAjZGVmaW5lIElGVF9QRkxPRwkweGY1CQkvKiBQYWNrZXQgZmlsdGVyIGxvZ2dpbmcgKi8KICNkZWZpbmUgSUZUX1BGU1lOQwkweGY2CQkvKiBQYWNrZXQgZmlsdGVyIHN0YXRlIHN5bmNpbmcgKi8KKyNkZWZpbmUgSUZUX0NBUlAJMHhmOAkJLyogQ29tbW9uIEFkZHJlc3MgUmVkdW5kYW5jeSBQcm90b2NvbCAqLwogCiAjZW5kaWYgLyogIV9ORVRfSUZfVFlQRVNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9uZXQvcm91dGUuaCBiL2xpYmMvaW5jbHVkZS9uZXQvcm91dGUuaAppbmRleCBhNjBkZjI0Li4zMjZmYmU3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbmV0L3JvdXRlLmgKKysrIGIvbGliYy9pbmNsdWRlL25ldC9yb3V0ZS5oCkBAIC0xICsxLDM3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX05FVF9ST1VURV9IXworI2RlZmluZSBfTkVUX1JPVVRFX0hfCisKKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CiAjaW5jbHVkZSA8bGludXgvcm91dGUuaD4KKyNpbmNsdWRlIDxsaW51eC9pbjYuaD4KKyNpbmNsdWRlIDxsaW51eC9pcHY2X3JvdXRlLmg+CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL25ldGRiLmggYi9saWJjL2luY2x1ZGUvbmV0ZGIuaAppbmRleCA1MjdkNWMxLi4zYmI5NzNjIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbmV0ZGIuaAorKysgYi9saWJjL2luY2x1ZGUvbmV0ZGIuaApAQCAtNzMsOSArNzMsNiBAQAogI2RlZmluZQlfUEFUSF9QUk9UT0NPTFMJIi9zeXN0ZW0vZXRjL3Byb3RvY29scyIKICNkZWZpbmUJX1BBVEhfU0VSVklDRVMJIi9zeXN0ZW0vZXRjL3NlcnZpY2VzIgogCi0jZGVmaW5lICBNQVhIT1NUTkFNRUxFTiAgMjU2Ci0KLQogLyoKICAqIFN0cnVjdHVyZXMgcmV0dXJuZWQgYnkgbmV0d29yayBkYXRhIGJhc2UgbGlicmFyeS4gIEFsbCBhZGRyZXNzZXMgYXJlCiAgKiBzdXBwbGllZCBpbiBob3N0IG9yZGVyLCBhbmQgcmV0dXJuZWQgaW4gbmV0d29yayBvcmRlciAoc3VpdGFibGUgZm9yCkBAIC0yMDksNyArMjA2LDcgQEAKIHZvaWQgZW5kc2VydmVudCh2b2lkKTsKIHZvaWQgZnJlZWhvc3RlbnQoc3RydWN0IGhvc3RlbnQgKik7CiBzdHJ1Y3QgaG9zdGVudAkqZ2V0aG9zdGJ5YWRkcihjb25zdCB2b2lkICosIHNvY2tsZW5fdCwgaW50KTsKLWludCBnZXRob3N0YnlhZGRyX3IoY29uc3Qgdm9pZCAqLCBpbnQsIGludCwgc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqLCBzaXplX3QsIHN0cnVjdCBob3N0ZW50ICoqLCBpbnQgKik7CitpbnQgZ2V0aG9zdGJ5YWRkcl9yKGNvbnN0IHZvaWQgKiwgc29ja2xlbl90LCBpbnQsIHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiwgc2l6ZV90LCBzdHJ1Y3QgaG9zdGVudCAqKiwgaW50ICopOwogc3RydWN0IGhvc3RlbnQJKmdldGhvc3RieW5hbWUoY29uc3QgY2hhciAqKTsKIGludCBnZXRob3N0YnluYW1lX3IoY29uc3QgY2hhciAqLCBzdHJ1Y3QgaG9zdGVudCAqLCBjaGFyICosIHNpemVfdCwgc3RydWN0IGhvc3RlbnQgKiosIGludCAqKTsKIHN0cnVjdCBob3N0ZW50CSpnZXRob3N0YnluYW1lMihjb25zdCBjaGFyICosIGludCk7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvcGF0aGNvbmYuaCBiL2xpYmMvaW5jbHVkZS9wYXRoY29uZi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5NGY5Nzg3Li4wMDAwMDAwCi0tLSBhL2xpYmMvaW5jbHVkZS9wYXRoY29uZi5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotI2lmbmRlZiBfUEFUSENPTkZfSF8KLSNkZWZpbmUgX1BBVEhDT05GX0hfCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLQotX19CRUdJTl9ERUNMUwotCi0vKiBjb25zdGFudHMgdG8gYmUgdXNlZCBmb3IgdGhlICduYW1lJyBwYXJlbWV0ZXIgb2YgcGF0aGNvbmYvZnBhdGhjb25mICovCi0KLSNkZWZpbmUgIF9QQ19GSUxFU0laRUJJVFMgICAgICAgMHgwMDAwCi0jZGVmaW5lICBfUENfTElOS19NQVggICAgICAgICAgIDB4MDAwMQotI2RlZmluZSAgX1BDX01BWF9DQU5PTiAgICAgICAgICAweDAwMDIKLSNkZWZpbmUgIF9QQ19NQVhfSU5QVVQgICAgICAgICAgMHgwMDAzCi0jZGVmaW5lICBfUENfTkFNRV9NQVggICAgICAgICAgIDB4MDAwNAotI2RlZmluZSAgX1BDX1BBVEhfTUFYICAgICAgICAgICAweDAwMDUKLSNkZWZpbmUgIF9QQ19QSVBFX0JVRiAgICAgICAgICAgMHgwMDA2Ci0jZGVmaW5lICBfUENfMl9TWU1MSU5LUyAgICAgICAgIDB4MDAwNwotI2RlZmluZSAgX1BDX0FMTE9DX1NJWkVfTUlOICAgICAweDAwMDgKLSNkZWZpbmUgIF9QQ19SRUNfSU5DUl9YRkVSX1NJWkUgMHgwMDA5Ci0jZGVmaW5lICBfUENfUkVDX01BWF9YRkVSX1NJWkUgIDB4MDAwYQotI2RlZmluZSAgX1BDX1JFQ19NSU5fWEZFUl9TSVpFICAweDAwMGIKLSNkZWZpbmUgIF9QQ19SRUNfWEZFUl9BTElHTiAgICAgMHgwMDBjCi0jZGVmaW5lICBfUENfU1lNTElOS19NQVggICAgICAgIDB4MDAwZAotI2RlZmluZSAgX1BDX0NIT1dOX1JFU1RSSUNURUQgICAweDAwMGUKLSNkZWZpbmUgIF9QQ19OT19UUlVOQyAgICAgICAgICAgMHgwMDBmCi0jZGVmaW5lICBfUENfVkRJU0FCTEUgICAgICAgICAgIDB4MDAxMAotI2RlZmluZSAgX1BDX0FTWU5DX0lPICAgICAgICAgICAweDAwMTEKLSNkZWZpbmUgIF9QQ19QUklPX0lPICAgICAgICAgICAgMHgwMDEyCi0jZGVmaW5lICBfUENfU1lOQ19JTyAgICAgICAgICAgIDB4MDAxMwotCi1leHRlcm4gbG9uZyBmcGF0aGNvbmYoaW50IGZpbGRlcywgaW50IG5hbWUpOwotZXh0ZXJuIGxvbmcgcGF0aGNvbmYoY29uc3QgY2hhciAqcGF0aCwgaW50IG5hbWUpOwotCi1fX0VORF9ERUNMUwotCi0jZW5kaWYgLyogX1BBVEhDT05GX0hfICovCi0KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wYXRocy5oIGIvbGliYy9pbmNsdWRlL3BhdGhzLmgKaW5kZXggYTcyMTYyZi4uODJjMjgwNCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3BhdGhzLmgKKysrIGIvbGliYy9pbmNsdWRlL3BhdGhzLmgKQEAgLTMyLDQzICszMiwxMyBAQAogI2lmbmRlZiBfUEFUSFNfSF8KICNkZWZpbmUJX1BBVEhTX0hfCiAKLS8qIERlZmF1bHQgc2VhcmNoIHBhdGguICovCi0jZGVmaW5lCV9QQVRIX0RFRlBBVEgJIi91c3IvYmluOi9iaW4iCi0vKiBBbGwgc3RhbmRhcmQgdXRpbGl0aWVzIHBhdGguICovCi0jZGVmaW5lCV9QQVRIX1NURFBBVEggXAotCSIvdXNyL2JpbjovYmluOi91c3Ivc2Jpbjovc2JpbiIKLQogI2RlZmluZQlfUEFUSF9CU0hFTEwJIi9zeXN0ZW0vYmluL3NoIgogI2RlZmluZQlfUEFUSF9DT05TT0xFCSIvZGV2L2NvbnNvbGUiCi0jZGVmaW5lCV9QQVRIX0NTSEVMTAkiL2Jpbi9jc2giCi0jZGVmaW5lCV9QQVRIX0RFVkRCCSIvdmFyL3J1bi9kZXYuZGIiCi0jZGVmaW5lCV9QQVRIX0RFVk5VTEwJIi9kZXYvbnVsbCIKLSNkZWZpbmUJX1BBVEhfRFJVTQkiL2Rldi9kcnVtIgotI2RlZmluZQlfUEFUSF9LTE9HCSIvcHJvYy9rbXNnIgotI2RlZmluZQlfUEFUSF9LTUVNCSIvZGV2L2ttZW0iCi0jZGVmaW5lCV9QQVRIX0xBU1RMT0cJIi92YXIvbG9nL2xhc3Rsb2ciCi0jZGVmaW5lCV9QQVRIX01BSUxESVIJIi92YXIvbWFpbCIKLSNkZWZpbmUJX1BBVEhfTUFOCSIvdXNyL3NoYXJlL21hbiIKLSNkZWZpbmUJX1BBVEhfTUVNCSIvZGV2L21lbSIKLSNkZWZpbmUJX1BBVEhfTU5UVEFCCSIvZXRjL2ZzdGFiIgotI2RlZmluZQlfUEFUSF9NT1VOVEVECSIvZXRjL210YWIiCi0jZGVmaW5lCV9QQVRIX05PTE9HSU4JIi9ldGMvbm9sb2dpbiIKLSNkZWZpbmUJX1BBVEhfUFJFU0VSVkUJIi92YXIvbGliIgotI2RlZmluZQlfUEFUSF9SV0hPRElSCSIvdmFyL3Nwb29sL3J3aG8iCi0jZGVmaW5lCV9QQVRIX1NFTkRNQUlMCSIvdXNyL3NiaW4vc2VuZG1haWwiCi0jZGVmaW5lCV9QQVRIX1NIQURPVwkiL2V0Yy9zaGFkb3ciCi0jZGVmaW5lCV9QQVRIX1NIRUxMUwkiL2V0Yy9zaGVsbHMiCi0jZGVmaW5lCV9QQVRIX1RUWQkiL2Rldi90dHkiCi0jZGVmaW5lCV9QQVRIX1VOSVgJIi9ib290L3ZtbGludXgiCi0jZGVmaW5lIF9QQVRIX1VUTVAJIi92YXIvcnVuL3V0bXAiCi0jZGVmaW5lCV9QQVRIX1ZJCSIvYmluL3ZpIgotI2RlZmluZSBfUEFUSF9XVE1QCSIvdmFyL2xvZy93dG1wIgotCi0vKiBQcm92aWRlIHRyYWlsaW5nIHNsYXNoLCBzaW5jZSBtb3N0bHkgdXNlZCBmb3IgYnVpbGRpbmcgcGF0aG5hbWVzLiAqLworI2RlZmluZQlfUEFUSF9ERUZQQVRICSIvc2JpbjovdmVuZG9yL2Jpbjovc3lzdGVtL3NiaW46L3N5c3RlbS9iaW46L3N5c3RlbS94YmluIgogI2RlZmluZQlfUEFUSF9ERVYJIi9kZXYvIgotI2RlZmluZQlfUEFUSF9UTVAJIi90bXAvIgotI2RlZmluZQlfUEFUSF9WQVJEQgkiL3Zhci9kYi8iCi0jZGVmaW5lCV9QQVRIX1ZBUlJVTgkiL3Zhci9ydW4vIgotI2RlZmluZQlfUEFUSF9WQVJUTVAJIi92YXIvdG1wLyIKKyNkZWZpbmUJX1BBVEhfREVWTlVMTAkiL2Rldi9udWxsIgorI2RlZmluZQlfUEFUSF9LTE9HCSIvcHJvYy9rbXNnIgorI2RlZmluZQlfUEFUSF9NT1VOVEVECSIvcHJvYy9tb3VudHMiCisjZGVmaW5lCV9QQVRIX1RUWQkiL2Rldi90dHkiCiAKICNlbmRpZiAvKiAhX1BBVEhTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvcG9sbC5oIGIvbGliYy9pbmNsdWRlL3BvbGwuaAppbmRleCAwMTk5Y2FiLi43YzE2ZDgxIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvcG9sbC5oCisrKyBiL2xpYmMvaW5jbHVkZS9wb2xsLmgKQEAgLTM4LDggKzM4LDUyIEBACiAKIHR5cGVkZWYgdW5zaWduZWQgaW50IG5mZHNfdDsKIAotZXh0ZXJuIGludCBwb2xsKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGludCk7Ci1leHRlcm4gaW50IHBwb2xsKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyosIGNvbnN0IHNpZ3NldF90Kik7CitpbnQgcG9sbChzdHJ1Y3QgcG9sbGZkKiwgbmZkc190LCBpbnQpOworaW50IHBwb2xsKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyosIGNvbnN0IHNpZ3NldF90Kik7CisKK2ludCBfX3BvbGxfY2hrKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGludCwgc2l6ZV90KTsKK2ludCBfX3BvbGxfcmVhbChzdHJ1Y3QgcG9sbGZkKiwgbmZkc190LCBpbnQpIF9fUkVOQU1FKHBvbGwpOworX19lcnJvcmRlY2woX19wb2xsX3Rvb19zbWFsbF9lcnJvciwgInBvbGw6IHBvbGxmZCBhcnJheSBzbWFsbGVyIHRoYW4gZmQgY291bnQiKTsKKworaW50IF9fcHBvbGxfY2hrKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyosIGNvbnN0IHNpZ3NldF90Kiwgc2l6ZV90KTsKK2ludCBfX3Bwb2xsX3JlYWwoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgY29uc3Qgc2lnc2V0X3QqKSBfX1JFTkFNRShwcG9sbCk7CitfX2Vycm9yZGVjbChfX3Bwb2xsX3Rvb19zbWFsbF9lcnJvciwgInBwb2xsOiBwb2xsZmQgYXJyYXkgc21hbGxlciB0aGFuIGZkIGNvdW50Iik7CisKKyNpZiBkZWZpbmVkKF9fQklPTklDX0ZPUlRJRlkpCisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitpbnQgcG9sbChzdHJ1Y3QgcG9sbGZkKiBmZHMsIG5mZHNfdCBmZF9jb3VudCwgaW50IHRpbWVvdXQpIHsKKyNpZiBkZWZpbmVkKF9fY2xhbmdfXykKKyAgcmV0dXJuIF9fcG9sbF9jaGsoZmRzLCBmZF9jb3VudCwgdGltZW91dCwgX19ib3MoZmRzKSk7CisjZWxzZQorICBpZiAoX19ib3MoZmRzKSAhPSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgIGlmICghX19idWlsdGluX2NvbnN0YW50X3AoZmRfY291bnQpKSB7CisgICAgICByZXR1cm4gX19wb2xsX2NoayhmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBfX2JvcyhmZHMpKTsKKyAgICB9IGVsc2UgaWYgKF9fYm9zKGZkcykgLyBzaXplb2YoKmZkcykgPCBmZF9jb3VudCkgeworICAgICAgX19wb2xsX3Rvb19zbWFsbF9lcnJvcigpOworICAgIH0KKyAgfQorICByZXR1cm4gX19wb2xsX3JlYWwoZmRzLCBmZF9jb3VudCwgdGltZW91dCk7CisjZW5kaWYKK30KKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK2ludCBwcG9sbChzdHJ1Y3QgcG9sbGZkKiBmZHMsIG5mZHNfdCBmZF9jb3VudCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiB0aW1lb3V0LCBjb25zdCBzaWdzZXRfdCogbWFzaykgeworI2lmIGRlZmluZWQoX19jbGFuZ19fKQorICByZXR1cm4gX19wcG9sbF9jaGsoZmRzLCBmZF9jb3VudCwgdGltZW91dCwgbWFzaywgX19ib3MoZmRzKSk7CisjZWxzZQorICBpZiAoX19ib3MoZmRzKSAhPSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgIGlmICghX19idWlsdGluX2NvbnN0YW50X3AoZmRfY291bnQpKSB7CisgICAgICByZXR1cm4gX19wcG9sbF9jaGsoZmRzLCBmZF9jb3VudCwgdGltZW91dCwgbWFzaywgX19ib3MoZmRzKSk7CisgICAgfSBlbHNlIGlmIChfX2JvcyhmZHMpIC8gc2l6ZW9mKCpmZHMpIDwgZmRfY291bnQpIHsKKyAgICAgIF9fcHBvbGxfdG9vX3NtYWxsX2Vycm9yKCk7CisgICAgfQorICB9CisgIHJldHVybiBfX3Bwb2xsX3JlYWwoZmRzLCBmZF9jb3VudCwgdGltZW91dCwgbWFzayk7CisjZW5kaWYKK30KKworI2VuZGlmCiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wdGhyZWFkLmggYi9saWJjL2luY2x1ZGUvcHRocmVhZC5oCmluZGV4IGMzMjg5MGIuLjI2ZDY4ZTQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9wdGhyZWFkLmgKKysrIGIvbGliYy9pbmNsdWRlL3B0aHJlYWQuaApAQCAtMjksMzIgKzI5LDIyIEBACiAjaWZuZGVmIF9QVEhSRUFEX0hfCiAjZGVmaW5lIF9QVEhSRUFEX0hfCiAKLSNpbmNsdWRlIDx0aW1lLmg+Ci0jaW5jbHVkZSA8c2lnbmFsLmg+Ci0jaW5jbHVkZSA8c2NoZWQuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxtYWNoaW5lL3B0aHJlYWRfdHlwZXMuaD4KKyNpbmNsdWRlIDxzY2hlZC5oPgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotCi0jaWYgZGVmaW5lZChfX0xQNjRfXykKLSAgI2RlZmluZSBfX1JFU0VSVkVEX0lOSVRJQUxJWkVSICwgezB9Ci0jZWxzZQotICAjZGVmaW5lIF9fUkVTRVJWRURfSU5JVElBTElaRVIKLSNlbmRpZgorI2luY2x1ZGUgPHRpbWUuaD4KIAogdHlwZWRlZiBzdHJ1Y3QgewotICBpbnQgdm9sYXRpbGUgdmFsdWU7Ci0jaWZkZWYgX19MUDY0X18KLSAgY2hhciBfX3Jlc2VydmVkWzM2XTsKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBpbnQzMl90IF9fcHJpdmF0ZVsxMF07CisjZWxzZQorICBpbnQzMl90IF9fcHJpdmF0ZVsxXTsKICNlbmRpZgogfSBwdGhyZWFkX211dGV4X3Q7CiAKLSNkZWZpbmUgIF9fUFRIUkVBRF9NVVRFWF9JTklUX1ZBTFVFICAgICAgICAgICAgMAotI2RlZmluZSAgX19QVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUX1ZBTFVFICAweDQwMDAKLSNkZWZpbmUgIF9fUFRIUkVBRF9FUlJPUkNIRUNLX01VVEVYX0lOSVRfVkFMVUUgMHg4MDAwCi0KLSNkZWZpbmUgIFBUSFJFQURfTVVURVhfSU5JVElBTElaRVIgICAgICAgICAgICAge19fUFRIUkVBRF9NVVRFWF9JTklUX1ZBTFVFIF9fUkVTRVJWRURfSU5JVElBTElaRVJ9Ci0jZGVmaW5lICBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUiAgIHtfX1BUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRfVkFMVUUgX19SRVNFUlZFRF9JTklUSUFMSVpFUn0KLSNkZWZpbmUgIFBUSFJFQURfRVJST1JDSEVDS19NVVRFWF9JTklUSUFMSVpFUiAge19fUFRIUkVBRF9FUlJPUkNIRUNLX01VVEVYX0lOSVRfVkFMVUUgX19SRVNFUlZFRF9JTklUSUFMSVpFUn0KK3R5cGVkZWYgbG9uZyBwdGhyZWFkX211dGV4YXR0cl90OwogCiBlbnVtIHsKICAgICBQVEhSRUFEX01VVEVYX05PUk1BTCA9IDAsCkBAIC02Nyw2MCArNTcsNDIgQEAKICAgICBQVEhSRUFEX01VVEVYX0RFRkFVTFQgPSBQVEhSRUFEX01VVEVYX05PUk1BTAogfTsKIAorI2RlZmluZSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSIHsgeyAoKFBUSFJFQURfTVVURVhfTk9STUFMICYgMykgPDwgMTQpIH0gfQorI2RlZmluZSBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUl9OUCB7IHsgKChQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSAmIDMpIDw8IDE0KSB9IH0KKyNkZWZpbmUgUFRIUkVBRF9FUlJPUkNIRUNLX01VVEVYX0lOSVRJQUxJWkVSX05QIHsgeyAoKFBUSFJFQURfTVVURVhfRVJST1JDSEVDSyAmIDMpIDw8IDE0KSB9IH0KKwogdHlwZWRlZiBzdHJ1Y3QgewotICBpbnQgdm9sYXRpbGUgdmFsdWU7Ci0jaWZkZWYgX19MUDY0X18KLSAgY2hhciBfX3Jlc2VydmVkWzQ0XTsKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBpbnQzMl90IF9fcHJpdmF0ZVsxMl07CisjZWxzZQorICBpbnQzMl90IF9fcHJpdmF0ZVsxXTsKICNlbmRpZgogfSBwdGhyZWFkX2NvbmRfdDsKIAotI2RlZmluZSBQVEhSRUFEX0NPTkRfSU5JVElBTElaRVIgIHswIF9fUkVTRVJWRURfSU5JVElBTElaRVJ9Cit0eXBlZGVmIGxvbmcgcHRocmVhZF9jb25kYXR0cl90OworCisjZGVmaW5lIFBUSFJFQURfQ09ORF9JTklUSUFMSVpFUiAgeyB7IDAgfSB9CiAKIHR5cGVkZWYgc3RydWN0IHsKLSAgdWludDMyX3QgZmxhZ3M7Ci0gIHZvaWQqIHN0YWNrX2Jhc2U7Ci0gIHNpemVfdCBzdGFja19zaXplOwotICBzaXplX3QgZ3VhcmRfc2l6ZTsKLSAgaW50MzJfdCBzY2hlZF9wb2xpY3k7Ci0gIGludDMyX3Qgc2NoZWRfcHJpb3JpdHk7Ci0jaWZkZWYgX19MUDY0X18KLSAgY2hhciBfX3Jlc2VydmVkWzE2XTsKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBpbnQzMl90IF9fcHJpdmF0ZVsxNF07CisjZWxzZQorICBpbnQzMl90IF9fcHJpdmF0ZVsxMF07CiAjZW5kaWYKLX0gcHRocmVhZF9hdHRyX3Q7Ci0KLXR5cGVkZWYgbG9uZyBwdGhyZWFkX211dGV4YXR0cl90OwotdHlwZWRlZiBsb25nIHB0aHJlYWRfY29uZGF0dHJfdDsKK30gcHRocmVhZF9yd2xvY2tfdDsKIAogdHlwZWRlZiBsb25nIHB0aHJlYWRfcndsb2NrYXR0cl90OwogCi10eXBlZGVmIHN0cnVjdCB7Ci0jaWYgIWRlZmluZWQoX19MUDY0X18pCi0gIHB0aHJlYWRfbXV0ZXhfdCBfX3VudXNlZF9sb2NrOwotICBwdGhyZWFkX2NvbmRfdCBfX3VudXNlZF9jb25kOwotI2VuZGlmCi0gIHZvbGF0aWxlIGludDMyX3Qgc3RhdGU7IC8vIDA9dW5sb2NrLCAtMT13cml0ZXIgbG9jaywgK249cmVhZGVyIGxvY2sKLSAgdm9sYXRpbGUgaW50MzJfdCB3cml0ZXJfdGhyZWFkX2lkOwotICB2b2xhdGlsZSBpbnQzMl90IHBlbmRpbmdfcmVhZGVyczsKLSAgdm9sYXRpbGUgaW50MzJfdCBwZW5kaW5nX3dyaXRlcnM7Ci0gIGludDMyX3QgYXR0cjsKLSNpZmRlZiBfX0xQNjRfXwotICBjaGFyIF9fcmVzZXJ2ZWRbMzZdOwotI2Vsc2UKLSAgY2hhciBfX3Jlc2VydmVkWzEyXTsKLSNlbmRpZgorI2RlZmluZSBQVEhSRUFEX1JXTE9DS19JTklUSUFMSVpFUiAgeyB7IDAgfSB9CiAKLX0gcHRocmVhZF9yd2xvY2tfdDsKLQotI2lmZGVmIF9fTFA2NF9fCi0gICNkZWZpbmUgUFRIUkVBRF9SV0xPQ0tfSU5JVElBTElaRVIgIHsgMCwgMCwgMCwgMCwgMCwgeyAwIH0gfQotI2Vsc2UKLSAgI2RlZmluZSBQVEhSRUFEX1JXTE9DS19JTklUSUFMSVpFUiAgeyBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSLCBQVEhSRUFEX0NPTkRfSU5JVElBTElaRVIsIDAsIDAsIDAsIDAsIDAsIHsgMCB9IH0KLSNlbmRpZgorZW51bSB7CisgIFBUSFJFQURfUldMT0NLX1BSRUZFUl9SRUFERVJfTlAgPSAwLAorICBQVEhSRUFEX1JXTE9DS19QUkVGRVJfV1JJVEVSX05PTlJFQ1VSU0lWRV9OUCA9IDEsCit9OwogCiB0eXBlZGVmIGludCBwdGhyZWFkX2tleV90OwotdHlwZWRlZiBsb25nIHB0aHJlYWRfdDsKIAotdHlwZWRlZiB2b2xhdGlsZSBpbnQgcHRocmVhZF9vbmNlX3Q7Cit0eXBlZGVmIGludCBwdGhyZWFkX29uY2VfdDsKIAogI2RlZmluZSBQVEhSRUFEX09OQ0VfSU5JVCAwCiAKQEAgLTE5NSw4ICsxNjcsNiBAQAogaW50IHB0aHJlYWRfa2V5X2NyZWF0ZShwdGhyZWFkX2tleV90Kiwgdm9pZCAoKikodm9pZCopKSBfX25vbm51bGwoKDEpKTsKIGludCBwdGhyZWFkX2tleV9kZWxldGUocHRocmVhZF9rZXlfdCk7CiAKLWludCBwdGhyZWFkX2tpbGwocHRocmVhZF90LCBpbnQpOwotCiBpbnQgcHRocmVhZF9tdXRleGF0dHJfZGVzdHJveShwdGhyZWFkX211dGV4YXR0cl90KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9tdXRleGF0dHJfZ2V0cHNoYXJlZChjb25zdCBwdGhyZWFkX211dGV4YXR0cl90KiwgaW50KikgX19ub25udWxsKCgxLCAyKSk7CiBpbnQgcHRocmVhZF9tdXRleGF0dHJfZ2V0dHlwZShjb25zdCBwdGhyZWFkX211dGV4YXR0cl90KiwgaW50KikgX19ub25udWxsKCgxLCAyKSk7CkBAIC0yMDYsMTcgKzE3NiwxOSBAQAogCiBpbnQgcHRocmVhZF9tdXRleF9kZXN0cm95KHB0aHJlYWRfbXV0ZXhfdCopIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfbXV0ZXhfaW5pdChwdGhyZWFkX211dGV4X3QqLCBjb25zdCBwdGhyZWFkX211dGV4YXR0cl90KikgX19ub25udWxsKCgxKSk7Ci1pbnQgcHRocmVhZF9tdXRleF9sb2NrKHB0aHJlYWRfbXV0ZXhfdCopIC8qIF9fbm9ubnVsbCgoMSkpICovOworaW50IHB0aHJlYWRfbXV0ZXhfbG9jayhwdGhyZWFkX211dGV4X3QqKSBfX25vbm51bGwoKDEpKTsKIGludCBwdGhyZWFkX211dGV4X3RpbWVkbG9jayhwdGhyZWFkX211dGV4X3QqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqKSBfX25vbm51bGwoKDEsIDIpKTsKIGludCBwdGhyZWFkX211dGV4X3RyeWxvY2socHRocmVhZF9tdXRleF90KikgX19ub25udWxsKCgxKSk7Ci1pbnQgcHRocmVhZF9tdXRleF91bmxvY2socHRocmVhZF9tdXRleF90KikgLyogX19ub25udWxsKCgxKSkgKi87CitpbnQgcHRocmVhZF9tdXRleF91bmxvY2socHRocmVhZF9tdXRleF90KikgX19ub25udWxsKCgxKSk7CiAKIGludCBwdGhyZWFkX29uY2UocHRocmVhZF9vbmNlX3QqLCB2b2lkICgqKSh2b2lkKSkgX19ub25udWxsKCgxLCAyKSk7CiAKK2ludCBwdGhyZWFkX3J3bG9ja2F0dHJfaW5pdChwdGhyZWFkX3J3bG9ja2F0dHJfdCopIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfcndsb2NrYXR0cl9kZXN0cm95KHB0aHJlYWRfcndsb2NrYXR0cl90KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9yd2xvY2thdHRyX2dldHBzaGFyZWQoY29uc3QgcHRocmVhZF9yd2xvY2thdHRyX3QqLCBpbnQqKSBfX25vbm51bGwoKDEsIDIpKTsKLWludCBwdGhyZWFkX3J3bG9ja2F0dHJfaW5pdChwdGhyZWFkX3J3bG9ja2F0dHJfdCopIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfcndsb2NrYXR0cl9zZXRwc2hhcmVkKHB0aHJlYWRfcndsb2NrYXR0cl90KiwgaW50KSBfX25vbm51bGwoKDEpKTsKK2ludCBwdGhyZWFkX3J3bG9ja2F0dHJfZ2V0a2luZF9ucChjb25zdCBwdGhyZWFkX3J3bG9ja2F0dHJfdCosIGludCopIF9fbm9ubnVsbCgoMSwgMikpOworaW50IHB0aHJlYWRfcndsb2NrYXR0cl9zZXRraW5kX25wKHB0aHJlYWRfcndsb2NrYXR0cl90KiwgaW50KSBfX25vbm51bGwoKDEpKTsKIAogaW50IHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3kocHRocmVhZF9yd2xvY2tfdCopIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfcndsb2NrX2luaXQocHRocmVhZF9yd2xvY2tfdCosIGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KikgX19ub25udWxsKCgxKSk7CkBAIC0yMzYsOCArMjA4LDYgQEAKIAogaW50IHB0aHJlYWRfc2V0c3BlY2lmaWMocHRocmVhZF9rZXlfdCwgY29uc3Qgdm9pZCopOwogCi1pbnQgcHRocmVhZF9zaWdtYXNrKGludCwgY29uc3Qgc2lnc2V0X3QqLCBzaWdzZXRfdCopOwotCiB0eXBlZGVmIHZvaWQgKCpfX3B0aHJlYWRfY2xlYW51cF9mdW5jX3QpKHZvaWQqKTsKIAogdHlwZWRlZiBzdHJ1Y3QgX19wdGhyZWFkX2NsZWFudXBfdCB7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvcHR5LmggYi9saWJjL2luY2x1ZGUvcHR5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmNhMTEzNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9wdHkuaApAQCAtMCwwICsxLDQ0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX1BUWV9ICisjZGVmaW5lIF9QVFlfSAorCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKKyNpbmNsdWRlIDx0ZXJtaW9zLmg+CisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisKK19fQkVHSU5fREVDTFMKKworaW50IG9wZW5wdHkoaW50KiwgaW50KiwgY2hhciosIGNvbnN0IHN0cnVjdCB0ZXJtaW9zKiwgY29uc3Qgc3RydWN0IHdpbnNpemUqKTsKK2ludCBmb3JrcHR5KGludCosIGNoYXIqLCBjb25zdCBzdHJ1Y3QgdGVybWlvcyosIGNvbnN0IHN0cnVjdCB3aW5zaXplKik7CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfUFRZX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wd2QuaCBiL2xpYmMvaW5jbHVkZS9wd2QuaAppbmRleCA2ZDQ4M2MwLi42MDEyYjk2IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvcHdkLmgKKysrIGIvbGliYy9pbmNsdWRlL3B3ZC5oCkBAIC0xMTksMTAgKzExOSw2IEBACiBpbnQgZ2V0cHduYW1fcihjb25zdCBjaGFyKiwgc3RydWN0IHBhc3N3ZCosIGNoYXIqLCBzaXplX3QsIHN0cnVjdCBwYXNzd2QqKik7CiBpbnQgZ2V0cHd1aWRfcih1aWRfdCwgc3RydWN0IHBhc3N3ZCosIGNoYXIqLCBzaXplX3QsIHN0cnVjdCBwYXNzd2QqKik7CiAKLXZvaWQgZW5kcHdlbnQodm9pZCk7Ci1zdHJ1Y3QgcGFzc3dkKiBnZXRwd2VudCh2b2lkKTsKLWludCBzZXRwd2VudCh2b2lkKTsKLQogX19FTkRfREVDTFMKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc2NoZWQuaCBiL2xpYmMvaW5jbHVkZS9zY2hlZC5oCmluZGV4IGU0M2I2Y2MuLjkzMGRkN2MgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zY2hlZC5oCisrKyBiL2xpYmMvaW5jbHVkZS9zY2hlZC5oCkBAIC0yOCwxMCArMjgsOSBAQAogI2lmbmRlZiBfU0NIRURfSF8KICNkZWZpbmUgX1NDSEVEX0hfCiAKLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotCiAjaW5jbHVkZSA8bGludXgvc2NoZWQuaD4KKyNpbmNsdWRlIDxtYWNoaW5lL3RpbWVzcGVjLmg+CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAKIF9fQkVHSU5fREVDTFMKIApAQCAtMzksOSArMzgsOCBAQAogI2RlZmluZSBTQ0hFRF9PVEhFUiBTQ0hFRF9OT1JNQUwKIAogc3RydWN0IHNjaGVkX3BhcmFtIHsKLSAgaW50IF9fc2NoZWRfcHJpb3JpdHk7CisgIGludCBzY2hlZF9wcmlvcml0eTsKIH07Ci0jZGVmaW5lIHNjaGVkX3ByaW9yaXR5IF9fc2NoZWRfcHJpb3JpdHkKIAogZXh0ZXJuIGludCBzY2hlZF9zZXRzY2hlZHVsZXIocGlkX3QsIGludCwgY29uc3Qgc3RydWN0IHNjaGVkX3BhcmFtKik7CiBleHRlcm4gaW50IHNjaGVkX2dldHNjaGVkdWxlcihwaWRfdCk7CkBAIC01Miw3ICs1MCw3IEBACiBleHRlcm4gaW50IHNjaGVkX2dldHBhcmFtKHBpZF90LCBzdHJ1Y3Qgc2NoZWRfcGFyYW0qKTsKIGV4dGVybiBpbnQgc2NoZWRfcnJfZ2V0X2ludGVydmFsKHBpZF90LCBzdHJ1Y3QgdGltZXNwZWMqKTsKIAotI2lmZGVmIF9HTlVfU09VUkNFCisjaWYgZGVmaW5lZChfX1VTRV9HTlUpCiAKIGV4dGVybiBpbnQgY2xvbmUoaW50ICgqKSh2b2lkKiksIHZvaWQqLCBpbnQsIHZvaWQqLCAuLi4pOwogZXh0ZXJuIGludCB1bnNoYXJlKGludCk7CkBAIC0xNDYsNyArMTQ0LDcgQEAKIAogZXh0ZXJuIGludCBfX3NjaGVkX2NwdWNvdW50KHNpemVfdCBzZXRzaXplLCBjcHVfc2V0X3QqIHNldCk7CiAKLSNlbmRpZiAvKiBfR05VX1NPVVJDRSAqLworI2VuZGlmIC8qIF9fVVNFX0dOVSAqLwogCiBfX0VORF9ERUNMUwogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc2VtYXBob3JlLmggYi9saWJjL2luY2x1ZGUvc2VtYXBob3JlLmgKaW5kZXggN2FlM2MzYS4uNGVmMTNhZiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3NlbWFwaG9yZS5oCisrKyBiL2xpYmMvaW5jbHVkZS9zZW1hcGhvcmUuaApAQCAtMjUsNiArMjUsNyBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9TRU1BUEhPUkVfSAogI2RlZmluZSBfU0VNQVBIT1JFX0gKIApAQCAtMzIsOCArMzMsMTAgQEAKIAogX19CRUdJTl9ERUNMUwogCitzdHJ1Y3QgdGltZXNwZWM7CisKIHR5cGVkZWYgc3RydWN0IHsKLSAgdm9sYXRpbGUgdW5zaWduZWQgaW50IGNvdW50OworICB1bnNpZ25lZCBpbnQgY291bnQ7CiAjaWZkZWYgX19MUDY0X18KICAgaW50IF9fcmVzZXJ2ZWRbM107CiAjZW5kaWYKQEAgLTQxLDIwICs0NCwxOCBAQAogCiAjZGVmaW5lIFNFTV9GQUlMRUQgTlVMTAogCi1leHRlcm4gaW50IHNlbV9pbml0KHNlbV90ICpzZW0sIGludCBwc2hhcmVkLCB1bnNpZ25lZCBpbnQgdmFsdWUpOworaW50IHNlbV9kZXN0cm95KHNlbV90Kik7CitpbnQgc2VtX2dldHZhbHVlKHNlbV90KiwgaW50Kik7CitpbnQgc2VtX2luaXQoc2VtX3QqLCBpbnQsIHVuc2lnbmVkIGludCk7CitpbnQgc2VtX3Bvc3Qoc2VtX3QqKTsKK2ludCBzZW1fdGltZWR3YWl0KHNlbV90KiwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKik7CitpbnQgc2VtX3RyeXdhaXQoc2VtX3QqKTsKK2ludCBzZW1fd2FpdChzZW1fdCopOwogCi1leHRlcm4gaW50ICAgIHNlbV9jbG9zZShzZW1fdCAqKTsKLWV4dGVybiBpbnQgICAgc2VtX2Rlc3Ryb3koc2VtX3QgKik7Ci1leHRlcm4gaW50ICAgIHNlbV9nZXR2YWx1ZShzZW1fdCAqLCBpbnQgKik7Ci1leHRlcm4gaW50ICAgIHNlbV9pbml0KHNlbV90ICosIGludCwgdW5zaWduZWQgaW50KTsKLWV4dGVybiBzZW1fdCAqc2VtX29wZW4oY29uc3QgY2hhciAqLCBpbnQsIC4uLik7Ci1leHRlcm4gaW50ICAgIHNlbV9wb3N0KHNlbV90ICopOwotZXh0ZXJuIGludCAgICBzZW1fdHJ5d2FpdChzZW1fdCAqKTsKLWV4dGVybiBpbnQgICAgc2VtX3VubGluayhjb25zdCBjaGFyICopOwotZXh0ZXJuIGludCAgICBzZW1fd2FpdChzZW1fdCAqKTsKLQotc3RydWN0IHRpbWVzcGVjOwotZXh0ZXJuIGludCAgICBzZW1fdGltZWR3YWl0KHNlbV90ICpzZW0sIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyAqYWJzX3RpbWVvdXQpOworLyogVGhlc2UgYXJlbid0IGFjdHVhbGx5IGltcGxlbWVudGVkLiAqLworc2VtX3QqIHNlbV9vcGVuKGNvbnN0IGNoYXIqLCBpbnQsIC4uLik7CitpbnQgc2VtX2Nsb3NlKHNlbV90Kik7CitpbnQgc2VtX3VubGluayhjb25zdCBjaGFyKik7CiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zaWduYWwuaCBiL2xpYmMvaW5jbHVkZS9zaWduYWwuaAppbmRleCBlMjNlNjViLi41NTRlMGFjIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc2lnbmFsLmgKKysrIGIvbGliYy9pbmNsdWRlL3NpZ25hbC5oCkBAIC0yOSwxMiArMjksMTIgQEAKICNpZm5kZWYgX1NJR05BTF9IXwogI2RlZmluZSBfU0lHTkFMX0hfCiAKLSNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPGxpbWl0cy5oPgkJLyogRm9yIExPTkdfQklUICovCi0jaW5jbHVkZSA8c3RyaW5nLmg+CQkvKiBGb3IgbWVtc2V0KCkgKi8KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxhc20vc2lnY29udGV4dC5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPG1hY2hpbmUvcHRocmVhZF90eXBlcy5oPgorI2luY2x1ZGUgPG1hY2hpbmUvdGltZXNwZWMuaD4KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KIAogI2lmIGRlZmluZWQoX19MUDY0X18pIHx8IGRlZmluZWQoX19taXBzX18pCiAvKiBGb3IgNjQtYml0IChhbmQgbWlwcyksIHRoZSBrZXJuZWwncyBzdHJ1Y3Qgc2lnYWN0aW9uIGRvZXNuJ3QgbWF0Y2ggdGhlIFBPU0lYIG9uZSwKQEAgLTEwNSwxNSArMTA1LDE1IEBACiAKIGV4dGVybiBpbnQgc2lnYWN0aW9uKGludCwgY29uc3Qgc3RydWN0IHNpZ2FjdGlvbiosIHN0cnVjdCBzaWdhY3Rpb24qKTsKIAotZXh0ZXJuIHNpZ2hhbmRsZXJfdCBzaWduYWwoaW50LCBzaWdoYW5kbGVyX3QpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBzaWdoYW5kbGVyX3Qgc2lnbmFsKGludCwgc2lnaGFuZGxlcl90KTspCiAKIGV4dGVybiBpbnQgc2lnaW50ZXJydXB0KGludCwgaW50KTsKIAotZXh0ZXJuIGludCBzaWdhZGRzZXQoc2lnc2V0X3QqLCBpbnQpOwotZXh0ZXJuIGludCBzaWdkZWxzZXQoc2lnc2V0X3QqLCBpbnQpOwotZXh0ZXJuIGludCBzaWdlbXB0eXNldChzaWdzZXRfdCopOwotZXh0ZXJuIGludCBzaWdmaWxsc2V0KHNpZ3NldF90Kik7Ci1leHRlcm4gaW50IHNpZ2lzbWVtYmVyKGNvbnN0IHNpZ3NldF90KiwgaW50KTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IHNpZ2FkZHNldChzaWdzZXRfdCosIGludCk7KQorX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBpbnQgc2lnZGVsc2V0KHNpZ3NldF90KiwgaW50KTspCitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIGludCBzaWdlbXB0eXNldChzaWdzZXRfdCopOykKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IHNpZ2ZpbGxzZXQoc2lnc2V0X3QqKTspCitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIGludCBzaWdpc21lbWJlcihjb25zdCBzaWdzZXRfdCosIGludCk7KQogCiBleHRlcm4gaW50IHNpZ3BlbmRpbmcoc2lnc2V0X3QqKSBfX25vbm51bGwoKDEpKTsKIGV4dGVybiBpbnQgc2lncHJvY21hc2soaW50LCBjb25zdCBzaWdzZXRfdCosIHNpZ3NldF90Kik7CkBAIC0xMjksNiArMTI5LDE3IEBACiBleHRlcm4gdm9pZCBwc2lnaW5mbyhjb25zdCBzaWdpbmZvX3QqLCBjb25zdCBjaGFyKik7CiBleHRlcm4gdm9pZCBwc2lnbmFsKGludCwgY29uc3QgY2hhciopOwogCitleHRlcm4gaW50IHB0aHJlYWRfa2lsbChwdGhyZWFkX3QsIGludCk7CitleHRlcm4gaW50IHB0aHJlYWRfc2lnbWFzayhpbnQsIGNvbnN0IHNpZ3NldF90Kiwgc2lnc2V0X3QqKTsKKworZXh0ZXJuIGludCBzaWdxdWV1ZShwaWRfdCwgaW50LCBjb25zdCB1bmlvbiBzaWd2YWwpOworZXh0ZXJuIGludCBzaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QqLCBzaWdpbmZvX3QqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqKTsKK2V4dGVybiBpbnQgc2lnd2FpdGluZm8oY29uc3Qgc2lnc2V0X3QqLCBzaWdpbmZvX3QqKTsKKworI2lmIF9fQU5EUk9JRF9BUElfXyA8IDIxCisjaW5jbHVkZSA8YW5kcm9pZC9sZWdhY3lfc2lnbmFsX2lubGluZXMuaD4KKyNlbmRpZgorCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX1NJR05BTF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N0ZGF0b21pYy5oIGIvbGliYy9pbmNsdWRlL3N0ZGF0b21pYy5oCmluZGV4IDU4Y2IxYmMuLjJjNGYxY2UgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zdGRhdG9taWMuaAorKysgYi9saWJjL2luY2x1ZGUvc3RkYXRvbWljLmgKQEAgLTMyLDYgKzMyLDEyIEBACiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIAorI2lmIGRlZmluZWQoX19HTlVDX18pICYmICFkZWZpbmVkKF9fR05VQ19QUkVSRVEpCisvKiBEdXBsaWNhdGUgZGVmaW5pdGlvbiBoZXJlLCBzaW5jZSB0aGUgbWluZ3cgc3lzL2NkZWZzLmggb21pdHMgdGhlICAqLworLyogZGVmaW5pdGlvbiwgYW5kIHRoaXMgbmVlZHMgdG8gYmUgdXNhYmxlIHRoZXJlLiAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUJX19HTlVDX1BSRVJFUSh4LCB5KSAgICBcCisJKChfX0dOVUNfXyA9PSAoeCkgJiYgX19HTlVDX01JTk9SX18gPj0gKHkpKSB8fCAoX19HTlVDX18gPiAoeCkpKQorI2VuZGlmIC8qIF9fR05VQ19fICYmIC4uLiAqLwogCiAjaWYgZGVmaW5lZChfX2NwbHVzcGx1cykgJiYgX19jcGx1c3BsdXMgPj0gMjAxMTAzTCAmJiBkZWZpbmVkKF9VU0lOR19MSUJDWFgpCiAjIGlmZGVmIF9fY2xhbmdfXwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N0ZGlvLmggYi9saWJjL2luY2x1ZGUvc3RkaW8uaAppbmRleCBhMDE2MWRlLi5mNWVkNjUyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3RkaW8uaAorKysgYi9saWJjL2luY2x1ZGUvc3RkaW8uaApAQCAtMzgsNiArMzgsMTQgQEAKICNpZm5kZWYJX1NURElPX0hfCiAjZGVmaW5lCV9TVERJT19IXwogCisvKgorICogVGhpcyBmaWxlIG11c3QgY29udGFpbiBhIHJlZmVyZW5jZSB0byBfX2dudWNfdmFfbGlzdCBzbyB0aGF0IEdDQydzCisgKiBmaXhpbmNsdWRlcyBrbm93cyB0aGF0IHRoYXQncyB3aGF0J3MgYmVpbmcgdXNlZCBmb3IgdmFfbGlzdCwgYW5kIHNvCisgKiB0byBsZWF2ZSBvdXIgPHN0ZGlvLmg+IGFsb25lLiAoZml4aW5jbHVkZXMgZ2V0cyBpbiB0aGUgd2F5IG9mIHBvaW50aW5nCisgKiBvbmUgdG9vbGNoYWluIGF0IHZhcmlvdXMgZGlmZmVyZW50IHNldHMgb2YgcGxhdGZvcm0gaGVhZGVycy4pCisgKiBJZiB5b3UgYWx0ZXIgdGhpcyBjb21tZW50LCBiZSBzdXJlIHRvIGtlZXAgIl9fZ251Y192YV9saXN0IiBpbiBpdCEKKyAqLworCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAKQEAgLTQ5LDggKzU3LDYgQEAKIAogX19CRUdJTl9ERUNMUwogCi0jZGVmaW5lCV9GU1RESU8JCQkvKiBEZWZpbmUgZm9yIG5ldyBzdGRpbyB3aXRoIGZ1bmN0aW9ucy4gKi8KLQogdHlwZWRlZiBvZmZfdCBmcG9zX3Q7CQkvKiBzdGRpbyBmaWxlIHBvc2l0aW9uIHR5cGUgKi8KIAogLyoKQEAgLTEzOCw3ICsxNDQsMTYgQEAKIAlmcG9zX3QJX29mZnNldDsJLyogY3VycmVudCBsc2VlayBvZmZzZXQgKi8KIH0gRklMRTsKIAorLyogTGVnYWN5IEJTRCBpbXBsZW1lbnRhdGlvbiBvZiBzdGRpbi9zdGRvdXQvc3RkZXJyLiAqLwogZXh0ZXJuIEZJTEUgX19zRltdOworLyogTW9yZSBvYnZpb3VzIGltcGxlbWVudGF0aW9uLiAqLworZXh0ZXJuIEZJTEUqIHN0ZGluOworZXh0ZXJuIEZJTEUqIHN0ZG91dDsKK2V4dGVybiBGSUxFKiBzdGRlcnI7CisvKiBDOTkgYW5kIGVhcmxpZXIgcGx1cyBjdXJyZW50IEMrKyBzdGFuZGFyZHMgc2F5IHRoZXNlIG11c3QgYmUgbWFjcm9zLiAqLworI2RlZmluZSBzdGRpbiBzdGRpbgorI2RlZmluZSBzdGRvdXQgc3Rkb3V0CisjZGVmaW5lIHN0ZGVyciBzdGRlcnIKIAogI2RlZmluZQlfX1NMQkYJMHgwMDAxCQkvKiBsaW5lIGJ1ZmZlcmVkICovCiAjZGVmaW5lCV9fU05CRgkweDAwMDIJCS8qIHVuYnVmZmVyZWQgKi8KQEAgLTE5MCwyMCArMjA1LDkgQEAKICNkZWZpbmUJTF90bXBuYW0JMTAyNAkvKiBYWFggbXVzdCBiZSA9PSBQQVRIX01BWCAqLwogI2RlZmluZQlUTVBfTUFYCQkzMDg5MTU3NzYKIAotLyogQWx3YXlzIGVuc3VyZSB0aGF0IHRoZXNlIGFyZSBjb25zaXN0ZW50IHdpdGggPGZjbnRsLmg+IGFuZCA8dW5pc3RkLmg+ISAqLwotI2lmbmRlZiBTRUVLX1NFVAotI2RlZmluZQlTRUVLX1NFVAkwCS8qIHNldCBmaWxlIG9mZnNldCB0byBvZmZzZXQgKi8KLSNlbmRpZgotI2lmbmRlZiBTRUVLX0NVUgotI2RlZmluZQlTRUVLX0NVUgkxCS8qIHNldCBmaWxlIG9mZnNldCB0byBjdXJyZW50IHBsdXMgb2Zmc2V0ICovCi0jZW5kaWYKLSNpZm5kZWYgU0VFS19FTkQKLSNkZWZpbmUJU0VFS19FTkQJMgkvKiBzZXQgZmlsZSBvZmZzZXQgdG8gRU9GIHBsdXMgb2Zmc2V0ICovCi0jZW5kaWYKLQotI2RlZmluZQlzdGRpbgkoJl9fc0ZbMF0pCi0jZGVmaW5lCXN0ZG91dAkoJl9fc0ZbMV0pCi0jZGVmaW5lCXN0ZGVycgkoJl9fc0ZbMl0pCisjZGVmaW5lIFNFRUtfU0VUIDAKKyNkZWZpbmUgU0VFS19DVVIgMQorI2RlZmluZSBTRUVLX0VORCAyCiAKIC8qCiAgKiBGdW5jdGlvbnMgZGVmaW5lZCBpbiBBTlNJIEMgc3RhbmRhcmQuCkBAIC0yNjAsMjcgKzI2NCwzOCBAQAogCiAjaWZuZGVmIF9fQVVESVRfXwogI2lmICFkZWZpbmVkKF9fU1REQ19WRVJTSU9OX18pIHx8IF9fU1REQ19WRVJTSU9OX18gPCAyMDExMTJMCi1jaGFyKiBnZXRzKGNoYXIqKSBfX3dhcm5hdHRyKCJnZXRzIGlzIHZlcnkgdW5zYWZlOyBjb25zaWRlciB1c2luZyBmZ2V0cyIpOworY2hhciogZ2V0cyhjaGFyKikgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCgiZ2V0cyBpcyB1bnNhZmUsIHVzZSBmZ2V0cyBpbnN0ZWFkIikpKTsKICNlbmRpZgogaW50IHNwcmludGYoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgLi4uKQogICAgIF9fcHJpbnRmbGlrZSgyLCAzKSBfX3dhcm5hdHRyKCJzcHJpbnRmIGlzIG9mdGVuIG1pc3VzZWQ7IHBsZWFzZSB1c2Ugc25wcmludGYiKTsKLWNoYXIqIHRtcG5hbShjaGFyKikgX193YXJuYXR0cigidG1wbmFtIHBvc3NpYmx5IHVzZWQgdW5zYWZlbHk7IGNvbnNpZGVyIHVzaW5nIG1rc3RlbXAiKTsKIGludCB2c3ByaW50ZihjaGFyKiBfX3Jlc3RyaWN0LCBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0LCBfX3ZhX2xpc3QpCiAgICAgX19wcmludGZsaWtlKDIsIDApIF9fd2FybmF0dHIoInZzcHJpbnRmIGlzIG9mdGVuIG1pc3VzZWQ7IHBsZWFzZSB1c2UgdnNucHJpbnRmIik7CitjaGFyKiB0bXBuYW0oY2hhciopIF9fYXR0cmlidXRlX18oKGRlcHJlY2F0ZWQoInRtcG5hbSBpcyB1bnNhZmUsIHVzZSBta3N0ZW1wIG9yIHRtcGZpbGUgaW5zdGVhZCIpKSk7CiAjaWYgX19YUEdfVklTSUJMRQogY2hhciogdGVtcG5hbShjb25zdCBjaGFyKiwgY29uc3QgY2hhciopCi0gICAgX193YXJuYXR0cigidGVtcG5hbSBwb3NzaWJseSB1c2VkIHVuc2FmZWx5OyBjb25zaWRlciB1c2luZyBta3N0ZW1wIik7CisgICAgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCgidGVtcG5hbSBpcyB1bnNhZmUsIHVzZSBta3N0ZW1wIG9yIHRtcGZpbGUgaW5zdGVhZCIpKSk7CiAjZW5kaWYKICNlbmRpZgogCiBleHRlcm4gaW50IHJlbmFtZShjb25zdCBjaGFyKiwgY29uc3QgY2hhciopOwogZXh0ZXJuIGludCByZW5hbWVhdChpbnQsIGNvbnN0IGNoYXIqLCBpbnQsIGNvbnN0IGNoYXIqKTsKIAorI2lmIGRlZmluZWQoX19VU0VfRklMRV9PRkZTRVQ2NCkKKy8qIE5vdCBwb3NzaWJsZS4gKi8KK2ludAkgZmdldHBvcyhGSUxFICogX19yZXN0cmljdCwgZnBvc190ICogX19yZXN0cmljdCkKKwlfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18oIm5vdCBhdmFpbGFibGUgd2l0aCBfRklMRV9PRkZTRVRfQklUUz02NCIpKSk7CitpbnQJIGZzZXRwb3MoRklMRSAqLCBjb25zdCBmcG9zX3QgKikKKwlfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18oIm5vdCBhdmFpbGFibGUgd2l0aCBfRklMRV9PRkZTRVRfQklUUz02NCIpKSk7CitpbnQJIGZzZWVrbyhGSUxFICosIG9mZl90LCBpbnQpCisJX19hdHRyaWJ1dGVfXygoX19lcnJvcl9fKCJub3QgYXZhaWxhYmxlIHdpdGggX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiKSkpOworb2ZmX3QJIGZ0ZWxsbyhGSUxFICopCisJX19hdHRyaWJ1dGVfXygoX19lcnJvcl9fKCJub3QgYXZhaWxhYmxlIHdpdGggX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiKSkpOworI2Vsc2UKIGludAkgZmdldHBvcyhGSUxFICogX19yZXN0cmljdCwgZnBvc190ICogX19yZXN0cmljdCk7CiBpbnQJIGZzZXRwb3MoRklMRSAqLCBjb25zdCBmcG9zX3QgKik7Ci0KIGludAkgZnNlZWtvKEZJTEUgKiwgb2ZmX3QsIGludCk7CiBvZmZfdAkgZnRlbGxvKEZJTEUgKik7CisjZW5kaWYKIAogI2lmIF9fSVNPX0NfVklTSUJMRSA+PSAxOTk5IHx8IF9fQlNEX1ZJU0lCTEUKIGludAkgc25wcmludGYoY2hhciAqIF9fcmVzdHJpY3QsIHNpemVfdCwgY29uc3QgY2hhciAqIF9fcmVzdHJpY3QsIC4uLikKQEAgLTMyNCw2ICszMzksMTEgQEAKIGludAkgcHV0Y2hhcl91bmxvY2tlZChpbnQpOwogI2VuZGlmIC8qIF9fUE9TSVhfVklTSUJMRSA+PSAxOTk1MDYgKi8KIAorI2lmIF9fUE9TSVhfVklTSUJMRSA+PSAyMDA4MDkKK0ZJTEUqIGZtZW1vcGVuKHZvaWQqLCBzaXplX3QsIGNvbnN0IGNoYXIqKTsKK0ZJTEUqIG9wZW5fbWVtc3RyZWFtKGNoYXIqKiwgc2l6ZV90Kik7CisjZW5kaWYgLyogX19QT1NJWF9WSVNJQkxFID49IDIwMDgwOSAqLworCiAjZW5kaWYgLyogX19CU0RfVklTSUJMRSB8fCBfX1BPU0lYX1ZJU0lCTEUgfHwgX19YUEdfVklTSUJMRSAqLwogCiAvKgpAQCAtMzQwLDYgKzM2MCwxMCBAQAogICAgIF9fdmFfbGlzdCkKIAkJX19wcmludGZsaWtlKDIsIDApOwogCit2b2lkIGNsZWFyZXJyX3VubG9ja2VkKEZJTEUqKTsKK2ludCBmZW9mX3VubG9ja2VkKEZJTEUqKTsKK2ludCBmZXJyb3JfdW5sb2NrZWQoRklMRSopOworCiAvKgogICogU3RkaW8gZnVuY3Rpb24tYWNjZXNzIGludGVyZmFjZS4KICAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N0ZGlvX2V4dC5oIGIvbGliYy9pbmNsdWRlL3N0ZGlvX2V4dC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyOTllNTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvc3RkaW9fZXh0LmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9TVERJT19FWFRfSAorI2RlZmluZSBfU1RESU9fRVhUX0gKKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNkZWZpbmUgRlNFVExPQ0tJTkdfUVVFUlkgMAorI2RlZmluZSBGU0VUTE9DS0lOR19JTlRFUk5BTCAxCisjZGVmaW5lIEZTRVRMT0NLSU5HX0JZQ0FMTEVSIDIKKworX19CRUdJTl9ERUNMUworCitzaXplX3QgX19mYnVmc2l6ZShGSUxFKik7CitpbnQgX19mcmVhZGluZyhGSUxFKik7CitpbnQgX19md3JpdGluZyhGSUxFKik7CitpbnQgX19mcmVhZGFibGUoRklMRSopOworaW50IF9fZndyaXRhYmxlKEZJTEUqKTsKK2ludCBfX2ZsYmYoRklMRSopOwordm9pZCBfX2ZwdXJnZShGSUxFKik7CitzaXplX3QgX19mcGVuZGluZyhGSUxFKik7Cit2b2lkIF9mbHVzaGxiZih2b2lkKTsKK2ludCBfX2ZzZXRsb2NraW5nKEZJTEUqLCBpbnQpOworCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX1NURElPX0VYVF9IICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3RkbGliLmggYi9saWJjL2luY2x1ZGUvc3RkbGliLmgKaW5kZXggNTJmMzcxYi4uZWZjYTU3NyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N0ZGxpYi5oCisrKyBiL2xpYmMvaW5jbHVkZS9zdGRsaWIuaApAQCAtMjUsMTYgKzI1LDE2IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCi0jaWZuZGVmIF9TVERMSUJfSF8KLSNkZWZpbmUgX1NURExJQl9IXworCisjaWZuZGVmIF9TVERMSUJfSAorI2RlZmluZSBfU1RETElCX0gKIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHhsb2NhbGUuaD4KIAotI2luY2x1ZGUgPHN0ZGRlZi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGFsbG9jYS5oPgotI2luY2x1ZGUgPHN0cmluZ3MuaD4KLSNpbmNsdWRlIDxtZW1vcnkuaD4KKyNpbmNsdWRlIDxtYWxsb2MuaD4KKyNpbmNsdWRlIDxzdGRkZWYuaD4KIAogX19CRUdJTl9ERUNMUwogCkBAIC01OCw5ICs1OCwxNiBAQAogZXh0ZXJuIGludCBjbGVhcmVudih2b2lkKTsKIAogZXh0ZXJuIGNoYXIqIG1rZHRlbXAoY2hhciopOwotZXh0ZXJuIGNoYXIqIG1rdGVtcChjaGFyKikgX193YXJuYXR0cigibWt0ZW1wIHBvc3NpYmx5IHVzZWQgdW5zYWZlbHk7IGNvbnNpZGVyIHVzaW5nIG1rc3RlbXAiKTsKLWV4dGVybiBpbnQgbWtzdGVtcChjaGFyKik7CitleHRlcm4gY2hhciogbWt0ZW1wKGNoYXIqKSBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKCJta3RlbXAgaXMgdW5zYWZlLCB1c2UgbWtzdGVtcCBvciB0bXBmaWxlIGluc3RlYWQiKSkpOworCitleHRlcm4gaW50IG1rb3N0ZW1wNjQoY2hhciosIGludCk7CitleHRlcm4gaW50IG1rb3N0ZW1wKGNoYXIqLCBpbnQpOworZXh0ZXJuIGludCBta29zdGVtcHM2NChjaGFyKiwgaW50LCBpbnQpOworZXh0ZXJuIGludCBta29zdGVtcHMoY2hhciosIGludCwgaW50KTsKIGV4dGVybiBpbnQgbWtzdGVtcDY0KGNoYXIqKTsKK2V4dGVybiBpbnQgbWtzdGVtcChjaGFyKik7CitleHRlcm4gaW50IG1rc3RlbXBzNjQoY2hhciosIGludCk7CitleHRlcm4gaW50IG1rc3RlbXBzKGNoYXIqLCBpbnQpOwogCiBleHRlcm4gbG9uZyBzdHJ0b2woY29uc3QgY2hhciAqLCBjaGFyICoqLCBpbnQpOwogZXh0ZXJuIGxvbmcgbG9uZyBzdHJ0b2xsKGNvbnN0IGNoYXIgKiwgY2hhciAqKiwgaW50KTsKQEAgLTY5LDEwICs3NiwxMCBAQAogCiBleHRlcm4gaW50IHBvc2l4X21lbWFsaWduKHZvaWQgKiptZW1wdHIsIHNpemVfdCBhbGlnbm1lbnQsIHNpemVfdCBzaXplKTsKIAotZXh0ZXJuIGRvdWJsZSBhdG9mKGNvbnN0IGNoYXIqKTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gZG91YmxlIGF0b2YoY29uc3QgY2hhciopOykKIAogZXh0ZXJuIGRvdWJsZSBzdHJ0b2QoY29uc3QgY2hhciosIGNoYXIqKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKLWV4dGVybiBmbG9hdCBzdHJ0b2YoY29uc3QgY2hhciosIGNoYXIqKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gZmxvYXQgc3RydG9mKGNvbnN0IGNoYXIqLCBjaGFyKiopIF9fTElCQ19BQklfUFVCTElDX187KQogZXh0ZXJuIGxvbmcgZG91YmxlIHN0cnRvbGQoY29uc3QgY2hhciosIGNoYXIqKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKIAogZXh0ZXJuIGxvbmcgZG91YmxlIHN0cnRvbGRfbChjb25zdCBjaGFyICosIGNoYXIgKiosIGxvY2FsZV90KSBfX0xJQkNfQUJJX1BVQkxJQ19fOwpAQCAtODMsMTIgKzkwLDEyIEBACiBleHRlcm4gbG9uZyBhdG9sKGNvbnN0IGNoYXIqKSBfX3B1cmVmdW5jOwogZXh0ZXJuIGxvbmcgbG9uZyBhdG9sbChjb25zdCBjaGFyKikgX19wdXJlZnVuYzsKIAotZXh0ZXJuIGludCBhYnMoaW50KSBfX3B1cmUyOwotZXh0ZXJuIGxvbmcgbGFicyhsb25nKSBfX3B1cmUyOwotZXh0ZXJuIGxvbmcgbG9uZyBsbGFicyhsb25nIGxvbmcpIF9fcHVyZTI7CitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIGludCBhYnMoaW50KSBfX3B1cmUyOykKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gbG9uZyBsYWJzKGxvbmcpIF9fcHVyZTI7KQorX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBsb25nIGxvbmcgbGxhYnMobG9uZyBsb25nKSBfX3B1cmUyOykKIAogZXh0ZXJuIGNoYXIgKiByZWFscGF0aChjb25zdCBjaGFyICpwYXRoLCBjaGFyICpyZXNvbHZlZCk7Ci1leHRlcm4gaW50IHN5c3RlbShjb25zdCBjaGFyICogc3RyaW5nKTsKK2V4dGVybiBpbnQgc3lzdGVtKGNvbnN0IGNoYXIgKnN0cmluZyk7CiAKIGV4dGVybiB2b2lkICogYnNlYXJjaChjb25zdCB2b2lkICprZXksIGNvbnN0IHZvaWQgKmJhc2UwLAogCXNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUsCkBAIC05NiwzNCArMTAzLDM1IEBACiAKIGV4dGVybiB2b2lkIHFzb3J0KHZvaWQgKiwgc2l6ZV90LCBzaXplX3QsIGludCAoKikoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICopKTsKIAotZXh0ZXJuIGxvbmcganJhbmQ0OCh1bnNpZ25lZCBzaG9ydCAqKTsKLWV4dGVybiBsb25nIG1yYW5kNDgodm9pZCk7Ci1leHRlcm4gbG9uZyBucmFuZDQ4KHVuc2lnbmVkIHNob3J0ICopOwotZXh0ZXJuIGxvbmcgbHJhbmQ0OCh2b2lkKTsKLWV4dGVybiB1bnNpZ25lZCBzaG9ydCAqc2VlZDQ4KHVuc2lnbmVkIHNob3J0Kik7Ci1leHRlcm4gZG91YmxlIGVyYW5kNDgodW5zaWduZWQgc2hvcnQgeHN1YmlbM10pOwotZXh0ZXJuIGRvdWJsZSBkcmFuZDQ4KHZvaWQpOwotZXh0ZXJuIHZvaWQgc3JhbmQ0OChsb25nKTsKLQotdW5zaWduZWQgaW50IGFyYzRyYW5kb20odm9pZCk7Ci11bnNpZ25lZCBpbnQgYXJjNHJhbmRvbV91bmlmb3JtKHVuc2lnbmVkIGludCk7Cit1aW50MzJfdCBhcmM0cmFuZG9tKHZvaWQpOwordWludDMyX3QgYXJjNHJhbmRvbV91bmlmb3JtKHVpbnQzMl90KTsKIHZvaWQgYXJjNHJhbmRvbV9idWYodm9pZCosIHNpemVfdCk7CiAKICNkZWZpbmUgUkFORF9NQVggMHg3ZmZmZmZmZgogCi1pbnQgcmFuZCh2b2lkKTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShpbnQgcmFuZCh2b2lkKTspCiBpbnQgcmFuZF9yKHVuc2lnbmVkIGludCopOwotdm9pZCBzcmFuZCh1bnNpZ25lZCBpbnQpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKHZvaWQgc3JhbmQodW5zaWduZWQgaW50KTspCisKK2RvdWJsZSBkcmFuZDQ4KHZvaWQpOworZG91YmxlIGVyYW5kNDgodW5zaWduZWQgc2hvcnRbM10pOworbG9uZyBqcmFuZDQ4KHVuc2lnbmVkIHNob3J0WzNdKTsKK3ZvaWQgbGNvbmc0OCh1bnNpZ25lZCBzaG9ydFs3XSk7Citsb25nIGxyYW5kNDgodm9pZCk7Citsb25nIG1yYW5kNDgodm9pZCk7Citsb25nIG5yYW5kNDgodW5zaWduZWQgc2hvcnRbM10pOwordW5zaWduZWQgc2hvcnQqIHNlZWQ0OCh1bnNpZ25lZCBzaG9ydFszXSk7Cit2b2lkIHNyYW5kNDgobG9uZyk7CiAKIGNoYXIqIGluaXRzdGF0ZSh1bnNpZ25lZCBpbnQsIGNoYXIqLCBzaXplX3QpOwotbG9uZyByYW5kb20odm9pZCk7CitfQklPTklDX05PVF9CRUZPUkVfMjEobG9uZyByYW5kb20odm9pZCk7KQogY2hhciogc2V0c3RhdGUoY2hhciopOwotdm9pZCBzcmFuZG9tKHVuc2lnbmVkIGludCk7CitfQklPTklDX05PVF9CRUZPUkVfMjEodm9pZCBzcmFuZG9tKHVuc2lnbmVkIGludCk7KQogCiBpbnQgZ2V0cHQodm9pZCk7Ci1pbnQgZ3JhbnRwdChpbnQpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGludCBncmFudHB0KGludCk7KQogaW50IHBvc2l4X29wZW5wdChpbnQpOwotY2hhciogcHRzbmFtZShpbnQpIF9fd2FybmF0dHIoInB0c25hbWUgaXMgbm90IHRocmVhZC1zYWZlOyB1c2UgcHRzbmFtZV9yIGluc3RlYWQiKTsKK2NoYXIqIHB0c25hbWUoaW50KTsKIGludCBwdHNuYW1lX3IoaW50LCBjaGFyKiwgc2l6ZV90KTsKIGludCB1bmxvY2twdChpbnQpOwogCkBAIC0xNjQsNiArMTcyLDMxIEBACiBleHRlcm4gc2l6ZV90IF9fY3R5cGVfZ2V0X21iX2N1cl9tYXgodm9pZCk7CiAjZGVmaW5lIE1CX0NVUl9NQVggX19jdHlwZV9nZXRfbWJfY3VyX21heCgpCiAKKyNpZiBfX0FORFJPSURfQVBJX18gPCAyMQorI2luY2x1ZGUgPGFuZHJvaWQvbGVnYWN5X3N0ZGxpYl9pbmxpbmVzLmg+CisjZW5kaWYKKworI2lmIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkKKworZXh0ZXJuIGNoYXIqIF9fcmVhbHBhdGhfcmVhbChjb25zdCBjaGFyKiwgY2hhciopIF9fUkVOQU1FKHJlYWxwYXRoKTsKK19fZXJyb3JkZWNsKF9fcmVhbHBhdGhfc2l6ZV9lcnJvciwgInJlYWxwYXRoIG91dHB1dCBwYXJhbWV0ZXIgbXVzdCBiZSBOVUxMIG9yIGEgPj0gUEFUSF9NQVggYnl0ZXMgYnVmZmVyIik7CisKKyNpZiAhZGVmaW5lZChfX2NsYW5nX18pCitfX0JJT05JQ19GT1JUSUZZX0lOTElORQorY2hhciogcmVhbHBhdGgoY29uc3QgY2hhciogcGF0aCwgY2hhciogcmVzb2x2ZWQpIHsKKyAgICBzaXplX3QgYm9zID0gX19ib3MocmVzb2x2ZWQpOworCisgICAgLyogUEFUSF9NQVggaXMgdW5hdmFpbGFibGUgd2l0aG91dCBwb2xsdXRpbmcgdGhlIG5hbWVzcGFjZSwgYnV0IGl0J3MgYWx3YXlzIDQwOTYgb24gTGludXggKi8KKyAgICBpZiAoYm9zICE9IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFICYmIGJvcyA8IDQwOTYpIHsKKyAgICAgICAgX19yZWFscGF0aF9zaXplX2Vycm9yKCk7CisgICAgfQorCisgICAgcmV0dXJuIF9fcmVhbHBhdGhfcmVhbChwYXRoLCByZXNvbHZlZCk7Cit9CisjZW5kaWYKKworI2VuZGlmIC8qIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkgKi8KKwogX19FTkRfREVDTFMKIAotI2VuZGlmIC8qIF9TVERMSUJfSF8gKi8KKyNlbmRpZiAvKiBfU1RETElCX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zdHJpbmcuaCBiL2xpYmMvaW5jbHVkZS9zdHJpbmcuaAppbmRleCBmMmY2ZGQyLi5kMzJjMTY0IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3RyaW5nLmgKKysrIGIvbGliYy9pbmNsdWRlL3N0cmluZy5oCkBAIC0yNSwyMSArMjUsMjggQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KLSNpZm5kZWYgX1NUUklOR19IXwotI2RlZmluZSBfU1RSSU5HX0hfCisKKyNpZm5kZWYgX1NUUklOR19ICisjZGVmaW5lIF9TVFJJTkdfSAogCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3RkZGVmLmg+Ci0jaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8eGxvY2FsZS5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKKyNpZiBkZWZpbmVkKF9fVVNFX0JTRCkKKyNpbmNsdWRlIDxzdHJpbmdzLmg+CisjZW5kaWYKKwogZXh0ZXJuIHZvaWQqICBtZW1jY3B5KHZvaWQqIF9fcmVzdHJpY3QsIGNvbnN0IHZvaWQqIF9fcmVzdHJpY3QsIGludCwgc2l6ZV90KTsKIGV4dGVybiB2b2lkKiAgbWVtY2hyKGNvbnN0IHZvaWQgKiwgaW50LCBzaXplX3QpIF9fcHVyZWZ1bmM7CiBleHRlcm4gdm9pZCogIG1lbXJjaHIoY29uc3Qgdm9pZCAqLCBpbnQsIHNpemVfdCkgX19wdXJlZnVuYzsKIGV4dGVybiBpbnQgICAgbWVtY21wKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqLCBzaXplX3QpIF9fcHVyZWZ1bmM7CiBleHRlcm4gdm9pZCogIG1lbWNweSh2b2lkKiBfX3Jlc3RyaWN0LCBjb25zdCB2b2lkKiBfX3Jlc3RyaWN0LCBzaXplX3QpOworI2lmIGRlZmluZWQoX19VU0VfR05VKQorZXh0ZXJuIHZvaWQqICBtZW1wY3B5KHZvaWQqIF9fcmVzdHJpY3QsIGNvbnN0IHZvaWQqIF9fcmVzdHJpY3QsIHNpemVfdCk7CisjZW5kaWYKIGV4dGVybiB2b2lkKiAgbWVtbW92ZSh2b2lkICosIGNvbnN0IHZvaWQgKiwgc2l6ZV90KTsKIGV4dGVybiB2b2lkKiAgbWVtc2V0KHZvaWQgKiwgaW50LCBzaXplX3QpOwogZXh0ZXJuIHZvaWQqICBtZW1tZW0oY29uc3Qgdm9pZCAqLCBzaXplX3QsIGNvbnN0IHZvaWQgKiwgc2l6ZV90KSBfX3B1cmVmdW5jOwpAQCAtNTcsOCArNjQsMTEgQEAKIGV4dGVybiBjaGFyKiAgc3RyY3B5KGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QpOwogZXh0ZXJuIGNoYXIqICBzdHJjYXQoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCk7CiAKLWV4dGVybiBpbnQgICAgc3RyY2FzZWNtcChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKikgX19wdXJlZnVuYzsKLWV4dGVybiBpbnQgICAgc3RybmNhc2VjbXAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHNpemVfdCkgX19wdXJlZnVuYzsKK2ludCBzdHJjYXNlY21wKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKikgX19wdXJlZnVuYzsKK2ludCBzdHJjYXNlY21wX2woY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBsb2NhbGVfdCkgX19wdXJlZnVuYzsKK2ludCBzdHJuY2FzZWNtcChjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIHNpemVfdCkgX19wdXJlZnVuYzsKK2ludCBzdHJuY2FzZWNtcF9sKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90LCBsb2NhbGVfdCkgX19wdXJlZnVuYzsKKwogZXh0ZXJuIGNoYXIqICBzdHJkdXAoY29uc3QgY2hhciAqKTsKIAogZXh0ZXJuIGNoYXIqICBzdHJzdHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopIF9fcHVyZWZ1bmM7CkBAIC02Niw4ICs3NiwxMyBAQAogZXh0ZXJuIGNoYXIqICBzdHJ0b2soY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCk7CiBleHRlcm4gY2hhciogIHN0cnRva19yKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIGNoYXIqKiBfX3Jlc3RyaWN0KTsKIAotZXh0ZXJuIGNoYXIqICBzdHJlcnJvcihpbnQpOwotZXh0ZXJuIGludCAgICBzdHJlcnJvcl9yKGludCBlcnJudW0sIGNoYXIgKmJ1Ziwgc2l6ZV90IG4pOworZXh0ZXJuIGNoYXIqIHN0cmVycm9yKGludCk7CitleHRlcm4gY2hhciogc3RyZXJyb3JfbChpbnQsIGxvY2FsZV90KTsKKyNpZiBkZWZpbmVkKF9fVVNFX0dOVSkKK2V4dGVybiBjaGFyKiBzdHJlcnJvcl9yKGludCwgY2hhciosIHNpemVfdCkgX19SRU5BTUUoX19nbnVfc3RyZXJyb3Jfcik7CisjZWxzZSAvKiBQT1NJWCAqLworZXh0ZXJuIGludCBzdHJlcnJvcl9yKGludCwgY2hhciosIHNpemVfdCk7CisjZW5kaWYKIAogZXh0ZXJuIHNpemVfdCBzdHJubGVuKGNvbnN0IGNoYXIgKiwgc2l6ZV90KSBfX3B1cmVmdW5jOwogZXh0ZXJuIGNoYXIqICBzdHJuY2F0KGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIHNpemVfdCk7CkBAIC05Miw2ICsxMDcsMjcgQEAKIGV4dGVybiBpbnQgICAgc3RyY29sbF9sKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBsb2NhbGVfdCkgX19wdXJlZnVuYzsKIGV4dGVybiBzaXplX3Qgc3RyeGZybV9sKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIHNpemVfdCwgbG9jYWxlX3QpOwogCisjaWYgZGVmaW5lZChfX1VTRV9HTlUpICYmICFkZWZpbmVkKF9fYmlvbmljX3VzaW5nX3Bvc2l4X2Jhc2VuYW1lKQorLyoKKyAqIGdsaWJjIGhhcyBhIGJhc2VuYW1lIGluIDxzdHJpbmcuaD4gdGhhdCdzIGRpZmZlcmVudCB0byB0aGUgUE9TSVggb25lIGluIDxsaWJnZW4uaD4uCisgKiBJdCBkb2Vzbid0IG1vZGlmeSBpdHMgYXJndW1lbnQsIGFuZCBpbiBDKysgaXQncyBjb25zdC1jb3JyZWN0LgorICovCisjaWYgZGVmaW5lZChfX2NwbHVzcGx1cykKK2V4dGVybiAiQysrIiBjaGFyKiBiYXNlbmFtZShjaGFyKikgX19SRU5BTUUoX19nbnVfYmFzZW5hbWUpIF9fbm9ubnVsbCgoMSkpOworZXh0ZXJuICJDKysiIGNvbnN0IGNoYXIqIGJhc2VuYW1lKGNvbnN0IGNoYXIqKSBfX1JFTkFNRShfX2dudV9iYXNlbmFtZSkgX19ub25udWxsKCgxKSk7CisjZWxzZQorZXh0ZXJuIGNoYXIqIGJhc2VuYW1lKGNvbnN0IGNoYXIqKSBfX1JFTkFNRShfX2dudV9iYXNlbmFtZSkgX19ub25udWxsKCgxKSk7CisjZW5kaWYKKyNkZWZpbmUgX19iaW9uaWNfdXNpbmdfZ251X2Jhc2VuYW1lCisjZW5kaWYKKworZXh0ZXJuIHZvaWQqIF9fbWVtY2hyX2Noayhjb25zdCB2b2lkKiwgaW50LCBzaXplX3QsIHNpemVfdCk7CitfX2Vycm9yZGVjbChfX21lbWNocl9idWZfc2l6ZV9lcnJvciwgIm1lbWNociBjYWxsZWQgd2l0aCBzaXplIGJpZ2dlciB0aGFuIGJ1ZmZlciIpOworCitleHRlcm4gdm9pZCogX19tZW1yY2hyX2Noayhjb25zdCB2b2lkKiwgaW50LCBzaXplX3QsIHNpemVfdCk7CitfX2Vycm9yZGVjbChfX21lbXJjaHJfYnVmX3NpemVfZXJyb3IsICJtZW1yY2hyIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gYnVmZmVyIik7CitleHRlcm4gdm9pZCogX19tZW1yY2hyX3JlYWwoY29uc3Qgdm9pZCosIGludCwgc2l6ZV90KSBfX1JFTkFNRShtZW1yY2hyKTsKKwogZXh0ZXJuIGNoYXIqIF9fc3RwbmNweV9jaGsyKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIHNpemVfdCwgc2l6ZV90LCBzaXplX3QpOwogZXh0ZXJuIGNoYXIqIF9fc3RybmNweV9jaGsyKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIHNpemVfdCwgc2l6ZV90LCBzaXplX3QpOwogZXh0ZXJuIHNpemVfdCBfX3N0cmxjcHlfcmVhbChjaGFyKiBfX3Jlc3RyaWN0LCBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0LCBzaXplX3QpIF9fUkVOQU1FKHN0cmxjcHkpOwpAQCAtMTAyLDYgKzEzOCw0OCBAQAogI2lmIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkKIAogX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK3ZvaWQqIG1lbWNocihjb25zdCB2b2lkICpzLCBpbnQgYywgc2l6ZV90IG4pIHsKKyAgICBzaXplX3QgYm9zID0gX19ib3Mocyk7CisKKyNpZiAhZGVmaW5lZChfX2NsYW5nX18pCisgICAgaWYgKGJvcyA9PSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgICAgICByZXR1cm4gX19idWlsdGluX21lbWNocihzLCBjLCBuKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AobikgJiYgKG4gPiBib3MpKSB7CisgICAgICAgIF9fbWVtY2hyX2J1Zl9zaXplX2Vycm9yKCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKG4pICYmIChuIDw9IGJvcykpIHsKKyAgICAgICAgcmV0dXJuIF9fYnVpbHRpbl9tZW1jaHIocywgYywgbik7CisgICAgfQorI2VuZGlmCisKKyAgICByZXR1cm4gX19tZW1jaHJfY2hrKHMsIGMsIG4sIGJvcyk7Cit9CisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCit2b2lkKiBtZW1yY2hyKGNvbnN0IHZvaWQgKnMsIGludCBjLCBzaXplX3QgbikgeworICAgIHNpemVfdCBib3MgPSBfX2JvcyhzKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKyAgICBpZiAoYm9zID09IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgICAgIHJldHVybiBfX21lbXJjaHJfcmVhbChzLCBjLCBuKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AobikgJiYgKG4gPiBib3MpKSB7CisgICAgICAgIF9fbWVtcmNocl9idWZfc2l6ZV9lcnJvcigpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChuKSAmJiAobiA8PSBib3MpKSB7CisgICAgICAgIHJldHVybiBfX21lbXJjaHJfcmVhbChzLCBjLCBuKTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX21lbXJjaHJfY2hrKHMsIGMsIG4sIGJvcyk7Cit9CisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCiB2b2lkKiBtZW1jcHkodm9pZCogX19yZXN0cmljdCBkZXN0LCBjb25zdCB2b2lkKiBfX3Jlc3RyaWN0IHNyYywgc2l6ZV90IGNvcHlfYW1vdW50KSB7CiAgICAgcmV0dXJuIF9fYnVpbHRpbl9fX21lbWNweV9jaGsoZGVzdCwgc3JjLCBjb3B5X2Ftb3VudCwgX19ib3MwKGRlc3QpKTsKIH0KQEAgLTI4MSw0ICszNTksNCBAQAogCiBfX0VORF9ERUNMUwogCi0jZW5kaWYgLyogX1NUUklOR19IXyAqLworI2VuZGlmIC8qIF9TVFJJTkdfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N0cmluZ3MuaCBiL2xpYmMvaW5jbHVkZS9zdHJpbmdzLmgKaW5kZXggYWUyNjFjZi4uMTI1MzAwNiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N0cmluZ3MuaAorKysgYi9saWJjL2luY2x1ZGUvc3RyaW5ncy5oCkBAIC00MSwyMiArNDEsMjMgQEAKIAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHhsb2NhbGUuaD4KIAogX19CRUdJTl9ERUNMUwogI2lmIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkKLSNkZWZpbmUgYmNvcHkoYjEsIGIyLCBsZW4pIFwKLSAgKHZvaWQpKF9fYnVpbHRpbl9fX21lbW1vdmVfY2hrKChiMiksIChiMSksIChsZW4pLCBfX2JvczAoYjIpKSkKLSNkZWZpbmUgYnplcm8oYiwgbGVuKSBcCi0gICh2b2lkKShfX2J1aWx0aW5fX19tZW1zZXRfY2hrKChiKSwgJ1wwJywgKGxlbiksIF9fYm9zMChiKSkpCisjZGVmaW5lIGJjb3B5KGIxLCBiMiwgbGVuKSAodm9pZCkoX19idWlsdGluX19fbWVtbW92ZV9jaGsoKGIyKSwgKGIxKSwgKGxlbiksIF9fYm9zMChiMikpKQorI2RlZmluZSBiemVybyhiLCBsZW4pICh2b2lkKShfX2J1aWx0aW5fX19tZW1zZXRfY2hrKChiKSwgJ1wwJywgKGxlbiksIF9fYm9zMChiKSkpCiAjZWxzZQogI2RlZmluZSBiY29weShiMSwgYjIsIGxlbikgKHZvaWQpKF9fYnVpbHRpbl9tZW1tb3ZlKChiMiksIChiMSksIChsZW4pKSkKICNkZWZpbmUgYnplcm8oYiwgbGVuKSAodm9pZCkoX19idWlsdGluX21lbXNldCgoYiksICdcMCcsIChsZW4pKSkKICNlbmRpZgogCitpbnQgZmZzKGludCk7CiAKLWludAkgZmZzKGludCk7Ci1pbnQJIHN0cmNhc2VjbXAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotaW50CSBzdHJuY2FzZWNtcChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgc2l6ZV90KTsKK2ludCBzdHJjYXNlY21wKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKikgX19wdXJlZnVuYzsKK2ludCBzdHJjYXNlY21wX2woY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBsb2NhbGVfdCkgX19wdXJlZnVuYzsKK2ludCBzdHJuY2FzZWNtcChjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIHNpemVfdCkgX19wdXJlZnVuYzsKK2ludCBzdHJuY2FzZWNtcF9sKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90LCBsb2NhbGVfdCkgX19wdXJlZnVuYzsKIAogX19FTkRfREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9fZXJyZGVmcy5oIGIvbGliYy9pbmNsdWRlL3N5cy9fZXJyZGVmcy5oCmluZGV4IDNlZWFkZjQuLjNjM2M5ZDcgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvX2VycmRlZnMuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL19lcnJkZWZzLmgKQEAgLTQ1LDcgKzQ1LDcgQEAKIF9fQklPTklDX0VSUkRFRiggRU5YSU8gICAgICAgICAgLCAgIDYsICJObyBzdWNoIGRldmljZSBvciBhZGRyZXNzIiApCiBfX0JJT05JQ19FUlJERUYoIEUyQklHICAgICAgICAgICwgICA3LCAiQXJndW1lbnQgbGlzdCB0b28gbG9uZyIgKQogX19CSU9OSUNfRVJSREVGKCBFTk9FWEVDICAgICAgICAsICAgOCwgIkV4ZWMgZm9ybWF0IGVycm9yIiApCi1fX0JJT05JQ19FUlJERUYoIEVCQURGICAgICAgICAgICwgICA5LCAiQmFkIGZpbGUgbnVtYmVyIiApCitfX0JJT05JQ19FUlJERUYoIEVCQURGICAgICAgICAgICwgICA5LCAiQmFkIGZpbGUgZGVzY3JpcHRvciIgKQogX19CSU9OSUNfRVJSREVGKCBFQ0hJTEQgICAgICAgICAsICAxMCwgIk5vIGNoaWxkIHByb2Nlc3NlcyIgKQogX19CSU9OSUNfRVJSREVGKCBFQUdBSU4gICAgICAgICAsICAxMSwgIlRyeSBhZ2FpbiIgKQogX19CSU9OSUNfRVJSREVGKCBFTk9NRU0gICAgICAgICAsICAxMiwgIk91dCBvZiBtZW1vcnkiICkKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvX3N5c3RlbV9wcm9wZXJ0aWVzLmggYi9saWJjL2luY2x1ZGUvc3lzL19zeXN0ZW1fcHJvcGVydGllcy5oCmluZGV4IDAzNDllNGMuLjdmZjNkZWQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvX3N5c3RlbV9wcm9wZXJ0aWVzLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9fc3lzdGVtX3Byb3BlcnRpZXMuaApAQCAtNTAsNyArNTAsNyBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKLXN0cnVjdCBwcm9wX21zZyAKK3N0cnVjdCBwcm9wX21zZwogewogICAgIHVuc2lnbmVkIGNtZDsKICAgICBjaGFyIG5hbWVbUFJPUF9OQU1FX01BWF07CkBAIC01OCw3ICs1OCw3IEBACiB9OwogCiAjZGVmaW5lIFBST1BfTVNHX1NFVFBST1AgMQotICAgIAorCiAvKgogKiogUnVsZXM6CiAqKgpAQCAtODAsOCArODAsOCBAQAogCiAjZGVmaW5lIFBST1BfUEFUSF9SQU1ESVNLX0RFRkFVTFQgICIvZGVmYXVsdC5wcm9wIgogI2RlZmluZSBQUk9QX1BBVEhfU1lTVEVNX0JVSUxEICAgICAiL3N5c3RlbS9idWlsZC5wcm9wIgotI2RlZmluZSBQUk9QX1BBVEhfU1lTVEVNX0RFRkFVTFQgICAiL3N5c3RlbS9kZWZhdWx0LnByb3AiCiAjZGVmaW5lIFBST1BfUEFUSF9WRU5ET1JfQlVJTEQgICAgICIvdmVuZG9yL2J1aWxkLnByb3AiCisjZGVmaW5lIFBST1BfUEFUSF9CT09USU1BR0VfQlVJTEQgICIvYnVpbGQucHJvcCIKICNkZWZpbmUgUFJPUF9QQVRIX0xPQ0FMX09WRVJSSURFICAgIi9kYXRhL2xvY2FsLnByb3AiCiAjZGVmaW5lIFBST1BfUEFUSF9GQUNUT1JZICAgICAgICAgICIvZmFjdG9yeS9mYWN0b3J5LnByb3AiCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvYXRvbWljcy5oIGIvbGliYy9pbmNsdWRlL3N5cy9hdG9taWNzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzhhYjM2NgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvYXRvbWljcy5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfU1lTX0FUT01JQ1NfSF8KKyNkZWZpbmUgX1NZU19BVE9NSUNTX0hfCisKKy8qCisgKiBUaGVzZSBnb3QgcHJvcGVyIG91dCBvZiBsaW5lIGRlZmluaXRpb25zIGluIEwuIFB1dHRpbmcgdGhlIGlubGluZSBkZWZpbml0aW9ucworICogYmFjayBmb3Igb2xkIHRhcmdldHMgYnJpbmdzIHVzIGNsb3NlciB0byBiZWluZyBhYmxlIHRvIHVzZSBvbmUgc2V0IG9mIGhlYWRlcnMKKyAqIGZvciBhbGwgQVBJIGxldmVscy4KKyAqCisgKiBUaGUgb3RoZXIgaW5saW5lcyB3ZSBwdXQgYmFjayB3ZW50IGluIHRvIHRoZWlyIGFwcHJvcHJpYXRlIGhlYWRlcnMsIGJ1dCB0aGUKKyAqIHN5cy9hdG9taWNzLmggaGVhZGVyIHdhcyByZW1vdmVkLCBzbyB3ZSdsbCBqdXN0IGFkZCB0aGVzZSBzb21ld2hlcmUgd2UgY2FuIGJlCisgKiBzdXJlIHRoZXkgd2lsbCBiZSBpbmNsdWRlZC4KKyAqLworI2lmIF9fQU5EUk9JRF9BUElfXyA8IDIxCisjaW5jbHVkZSA8YW5kcm9pZC9sZWdhY3lfc3lzX2F0b21pY3NfaW5saW5lcy5oPgorI2VuZGlmCisKKyNlbmRpZiAvKiBfU1lTX0FUT01JQ1NfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvY2FjaGVjdGwuaCBiL2xpYmMvaW5jbHVkZS9zeXMvY2FjaGVjdGwuaAppbmRleCA1N2U2YWU3Li5hMzAyZmY4IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL2NhY2hlY3RsLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9jYWNoZWN0bC5oCkBAIC0zMSw2ICszMSw1IEBACiAjaWZkZWYgX19taXBzX18KICNpbmNsdWRlIDxhc20vY2FjaGVjdGwuaD4KIGV4dGVybiBpbnQgX19jYWNoZWN0bCAodm9pZCAqYWRkciwgX19jb25zdCBpbnQgbmJ5dGVzLCBfX2NvbnN0IGludCBvcCk7Ci1leHRlcm4gaW50IF9mbHVzaF9jYWNoZSAoY2hhciAqYWRkciwgX19jb25zdCBpbnQgbmJ5dGVzLCBfX2NvbnN0IGludCBvcCk7CiAjZW5kaWYKICNlbmRpZiAvKiBzeXMvY2FjaGVjdGwuaCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9jZGVmcy5oIGIvbGliYy9pbmNsdWRlL3N5cy9jZGVmcy5oCmluZGV4IDUwNGU0MzkuLjA0NjEzZjQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvY2RlZnMuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL2NkZWZzLmgKQEAgLTc3LDcgKzc3LDkgQEAKICNkZWZpbmUJX19HTlVDX1BSRVJFUSh4LCB5KQkwCiAjZW5kaWYKIAotI2luY2x1ZGUgPHN5cy9jZGVmc19lbGYuaD4KKyNkZWZpbmUgX19zdHJvbmdfYWxpYXMoYWxpYXMsIHN5bSkgXAorICAgIF9fYXNtX18oIi5nbG9iYWwgIiAjYWxpYXMgIlxuIiBcCisgICAgICAgICAgICAjYWxpYXMgIiA9ICIgI3N5bSk7CiAKICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQogI2RlZmluZQlfX0JFR0lOX0RFQ0xTCQlleHRlcm4gIkMiIHsKQEAgLTI2MywxMyArMjY1LDYgQEAKICNlbmRpZgogI2VuZGlmIC8qICEoX19TVERDX1ZFUlNJT05fXyA+PSAxOTk5MDFMKSAqLwogCi0jaWYgZGVmaW5lZChfS0VSTkVMKQotI2lmIGRlZmluZWQoTk9fS0VSTkVMX1JDU0lEUykKLSN1bmRlZiBfX0tFUk5FTF9SQ1NJRAotI2RlZmluZQlfX0tFUk5FTF9SQ1NJRChfbiwgX3MpCQkvKiBub3RoaW5nICovCi0jZW5kaWYgLyogTk9fS0VSTkVMX1JDU0lEUyAqLwotI2VuZGlmIC8qIF9LRVJORUwgKi8KLQogLyoKICAqIEEgYmFycmllciB0byBzdG9wIHRoZSBvcHRpbWl6ZXIgZnJvbSBtb3ZpbmcgY29kZSBvciBhc3N1bWUgbGl2ZQogICogcmVnaXN0ZXIgdmFsdWVzLiBUaGlzIGlzIGdjYyBzcGVjaWZpYywgdGhlIHZlcnNpb24gaXMgbW9yZSBvciBsZXNzCkBAIC0zNDAsMTMgKzMzNSwxNSBAQAogI2VuZGlmCiAKICNpZiBfX0dOVUNfUFJFUkVRKDQsIDMpCi0jZGVmaW5lIF9fZXJyb3JkZWNsKG5hbWUsIG1zZykgZXh0ZXJuIHZvaWQgbmFtZSh2b2lkKSBfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18obXNnKSkpCisjZGVmaW5lIF9fZXJyb3JhdHRyKG1zZykgX19hdHRyaWJ1dGVfXygoX19lcnJvcl9fKG1zZykpKQogI2RlZmluZSBfX3dhcm5hdHRyKG1zZykgX19hdHRyaWJ1dGVfXygoX193YXJuaW5nX18obXNnKSkpCiAjZWxzZQotI2RlZmluZSBfX2Vycm9yZGVjbChuYW1lLCBtc2cpIGV4dGVybiB2b2lkIG5hbWUodm9pZCkKKyNkZWZpbmUgX19lcnJvcmF0dHIobXNnKQogI2RlZmluZSBfX3dhcm5hdHRyKG1zZykKICNlbmRpZgogCisjZGVmaW5lIF9fZXJyb3JkZWNsKG5hbWUsIG1zZykgZXh0ZXJuIHZvaWQgbmFtZSh2b2lkKSBfX2Vycm9yYXR0cihtc2cpCisKIC8qCiAgKiBTb21lIEJTRCBzb3VyY2UgbmVlZHMgdGhlc2UgbWFjcm9zLgogICogT3JpZ2luYWxseSB0aGV5IGVtYmVkZGVkIHRoZSByY3MgdmVyc2lvbnMgb2YgZWFjaCBzb3VyY2UgZmlsZQpAQCAtMzU4LDkgKzM1NSw0MSBAQAogI2RlZmluZSBfX1JDU0lEKF9zKSAvKiBub3RoaW5nICovCiAjZGVmaW5lIF9fU0NDU0lEKF9zKSAvKiBub3RoaW5nICovCiAKKy8qCisgKiBfQlNEX1NPVVJDRSBhbmQgX0dOVV9TT1VSQ0UgYXJlIGV4cGVjdGVkIHRvIGJlIGRlZmluZWQgYnkgY2FsbGVycyBiZWZvcmUKKyAqIGFueSBzdGFuZGFyZCBoZWFkZXIgZmlsZSBpcyBpbmNsdWRlZC4gSW4gdGhvc2UgaGVhZGVyIGZpbGVzIHdlIHRlc3QKKyAqIGFnYWluc3QgX19VU0VfQlNEIGFuZCBfX1VTRV9HTlUuIGdsaWJjIGRvZXMgdGhpcyBpbiA8ZmVhdHVyZXMuaD4gYnV0IHdlCisgKiBkbyBpdCBpbiA8c3lzL2NkZWZzLmg+IGluc3RlYWQgYmVjYXVzZSB0aGF0J3Mgd2hlcmUgb3VyIGV4aXN0aW5nCisgKiBfUE9TSVhfQ19TT1VSQ0UgdGVzdHMgd2VyZSwgYW5kIHdlJ3JlIGFscmVhZHkgY29uZmlkZW50IHRoYXQgPHN5cy9jZGVmcy5oPgorICogaXMgaW5jbHVkZWQgZXZlcnl3aGVyZSBpdCBzaG91bGQgYmUuCisgKgorICogVGhlIF9HTlVfU09VUkNFIHRlc3QgbmVlZHMgdG8gY29tZSBiZWZvcmUgYW55IF9CU0RfU09VUkNFIG9yIF9QT1NJWCogdGVzdHMKKyAqIGJlY2F1c2UgX0dOVV9TT1VSQ0UgaW1wbGllcyBldmVyeXRoaW5nIGVsc2UuCisgKi8KKyNpZiBkZWZpbmVkKF9HTlVfU09VUkNFKQorIyBkZWZpbmUgX19VU0VfR05VIDEKKyMgdW5kZWYgX1BPU0lYX1NPVVJDRQorIyBkZWZpbmUgX1BPU0lYX1NPVVJDRSAxCisjIHVuZGVmIF9QT1NJWF9DX1NPVVJDRQorIyBkZWZpbmUgX1BPU0lYX0NfU09VUkNFIDIwMDgwOUwKKyMgdW5kZWYgX0JTRF9TT1VSQ0UKKyMgZGVmaW5lIF9CU0RfU09VUkNFIDEKKyNlbmRpZgorCisjaWYgZGVmaW5lZChfQlNEX1NPVVJDRSkKKyMgZGVmaW5lIF9fVVNFX0JTRCAxCisjZW5kaWYKKworLyoKKyAqIF9GSUxFX09GRlNFVF9CSVRTIDY0IHN1cHBvcnQuCisgKi8KKyNpZiAhZGVmaW5lZChfX0xQNjRfXykgJiYgZGVmaW5lZChfRklMRV9PRkZTRVRfQklUUykKKyNpZiBfRklMRV9PRkZTRVRfQklUUyA9PSA2NAorI2RlZmluZSBfX1VTRV9GSUxFX09GRlNFVDY0IDEKKyNlbmRpZgorI2VuZGlmCisKIC8qLQotICogVGhlIGZvbGxvd2luZyBkZWZpbml0aW9ucyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBiZWhhdmlvciBvcmlnaW5hbGx5Ci0gKiBpbXBsZW1lbnRlZCBpbiA8c3lzL19wb3NpeC5oPiwgYnV0IHdpdGggYSBkaWZmZXJlbnQgbGV2ZWwgb2YgZ3JhbnVsYXJpdHkuCiAgKiBQT1NJWC4xIHJlcXVpcmVzIHRoYXQgdGhlIG1hY3JvcyB3ZSB0ZXN0IGJlIGRlZmluZWQgYmVmb3JlIGFueSBzdGFuZGFyZAogICogaGVhZGVyIGZpbGUgaXMgaW5jbHVkZWQuCiAgKgpAQCAtNTM4LDQgKzU2NywxMCBAQAogLyogVXNlZCB0byByZW5hbWUgZnVuY3Rpb25zIHNvIHRoYXQgdGhlIGNvbXBpbGVyIGVtaXRzIGEgY2FsbCB0byAneCcgcmF0aGVyIHRoYW4gdGhlIGZ1bmN0aW9uIHRoaXMgd2FzIGFwcGxpZWQgdG8uICovCiAjZGVmaW5lIF9fUkVOQU1FKHgpIF9fYXNtX18oI3gpCiAKKyNpZiBfX0FORFJPSURfQVBJX18gPj0gMjEKKyNkZWZpbmUgX0JJT05JQ19OT1RfQkVGT1JFXzIxKHgpIHgKKyNlbHNlCisjZGVmaW5lIF9CSU9OSUNfTk9UX0JFRk9SRV8yMSh4KQorI2VuZGlmIC8qIF9fQU5EUk9JRF9BUElfXyA+PSAyMSAqLworCiAjZW5kaWYgLyogIV9TWVNfQ0RFRlNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvY2RlZnNfZWxmLmggYi9saWJjL2luY2x1ZGUvc3lzL2NkZWZzX2VsZi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YmIwYTU3Li4wMDAwMDAwCi0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvY2RlZnNfZWxmLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NyArMCwwIEBACi0vKgkkTmV0QlNEOiBjZGVmc19lbGYuaCx2IDEuMjIgMjAwNS8wMi8yNiAyMjoyNTozNCBwZXJyeSBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTk1LCAxOTk2IENhcm5lZ2llLU1lbGxvbiBVbml2ZXJzaXR5LgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBBdXRob3I6IENocmlzIEcuIERlbWV0cmlvdQotICoKLSAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnkgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBhbmQKLSAqIGl0cyBkb2N1bWVudGF0aW9uIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IGJvdGggdGhlIGNvcHlyaWdodAotICogbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzIG9mIHRoZQotICogc29mdHdhcmUsIGRlcml2YXRpdmUgd29ya3Mgb3IgbW9kaWZpZWQgdmVyc2lvbnMsIGFuZCBhbnkgcG9ydGlvbnMKLSAqIHRoZXJlb2YsIGFuZCB0aGF0IGJvdGggbm90aWNlcyBhcHBlYXIgaW4gc3VwcG9ydGluZyBkb2N1bWVudGF0aW9uLgotICoKLSAqIENBUk5FR0lFIE1FTExPTiBBTExPV1MgRlJFRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSBJTiBJVFMgIkFTIElTIgotICogQ09ORElUSU9OLiAgQ0FSTkVHSUUgTUVMTE9OIERJU0NMQUlNUyBBTlkgTElBQklMSVRZIE9GIEFOWSBLSU5ECi0gKiBGT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUuCi0gKgotICogQ2FybmVnaWUgTWVsbG9uIHJlcXVlc3RzIHVzZXJzIG9mIHRoaXMgc29mdHdhcmUgdG8gcmV0dXJuIHRvCi0gKgotICogIFNvZnR3YXJlIERpc3RyaWJ1dGlvbiBDb29yZGluYXRvciAgb3IgIFNvZnR3YXJlLkRpc3RyaWJ1dGlvbkBDUy5DTVUuRURVCi0gKiAgU2Nob29sIG9mIENvbXB1dGVyIFNjaWVuY2UKLSAqICBDYXJuZWdpZSBNZWxsb24gVW5pdmVyc2l0eQotICogIFBpdHRzYnVyZ2ggUEEgMTUyMTMtMzg5MAotICoKLSAqIGFueSBpbXByb3ZlbWVudHMgb3IgZXh0ZW5zaW9ucyB0aGF0IHRoZXkgbWFrZSBhbmQgZ3JhbnQgQ2FybmVnaWUgdGhlCi0gKiByaWdodHMgdG8gcmVkaXN0cmlidXRlIHRoZXNlIGNoYW5nZXMuCi0gKi8KLQotI2lmbmRlZiBfU1lTX0NERUZTX0VMRl9IXwotI2RlZmluZQlfU1lTX0NERUZTX0VMRl9IXwotCi0jZGVmaW5lIF9fc3Ryb25nX2FsaWFzKGFsaWFzLCBzeW0pIFwKLSAgICBfX2FzbV9fKCIuZ2xvYmFsICIgI2FsaWFzICJcbiIgXAotICAgICAgICAgICAgI2FsaWFzICIgPSAiICNzeW0pOwotCi0jZGVmaW5lIF9fd2Vha19hbGlhcyhhbGlhcyxzeW0pIFwKLSAgICBfX2FzbV9fKCIud2VhayAiICNhbGlhcyAiXG4iIFwKLSAgICAgICAgICAgICNhbGlhcyAiID0gIiAjc3ltKTsKLQotLyogV2UgdXNlIF9fd2FybmF0dHIgaW5zdGVhZCBvZiBfX3dhcm5fcmVmZXJlbmNlcy4KLSAqIFRPRE86IHJlbW92ZSB0aGlzIGFuZCBwdXQgYW4gZW1wdHkgZGVmaW5pdGlvbiBpbiBvbmUgb2YgdGhlIHVwc3RyZWFtLSogY29tcGF0aWJpbGl0eSBoZWFkZXJzLgotICovCi0jZGVmaW5lCV9fd2Fybl9yZWZlcmVuY2VzKHN5bSxtc2cpCQkJCQlcCi0gICAgLypfX2FzbV9fKCIuc2VjdGlvbiAuZ251Lndhcm5pbmcuIiAjc3ltICJcblx0LmFzY2lpIFwiIiBtc2cgIlwiXG5cdC50ZXh0Iik7Ki8KLQotI2VuZGlmIC8qICFfU1lTX0NERUZTX0VMRl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9lbmRpYW4uaCBiL2xpYmMvaW5jbHVkZS9zeXMvZW5kaWFuLmgKaW5kZXggYmU0YzkwNS4uMmZkNDgwZCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9lbmRpYW4uaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL2VuZGlhbi5oCkBAIC0xLDUgKzEsMyBAQAotLyoJJE9wZW5CU0Q6IGVuZGlhbi5oLHYgMS4xNyAyMDA2LzAxLzA2IDE4OjUzOjA1IG1pbGxlcnQgRXhwICQJKi8KLQogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTcgTmlrbGFzIEhhbGxxdmlzdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgpAQCAtMjQsMTY5ICsyMiwzMCBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0vKgotICogR2VuZXJpYyBkZWZpbml0aW9ucyBmb3IgbGl0dGxlLSBhbmQgYmlnLWVuZGlhbiBzeXN0ZW1zLiAgT3RoZXIgZW5kaWFuZXNzZXMKLSAqIGhhcyB0byBiZSBkZWFsdCB3aXRoIGluIHRoZSBzcGVjaWZpYyBtYWNoaW5lL2VuZGlhbi5oIGZpbGUgZm9yIHRoYXQgcG9ydC4KLSAqCi0gKiBUaGlzIGZpbGUgaXMgbWVhbnQgdG8gYmUgaW5jbHVkZWQgZnJvbSBhIGxpdHRsZS0gb3IgYmlnLWVuZGlhbiBwb3J0J3MKLSAqIG1hY2hpbmUvZW5kaWFuLmggYWZ0ZXIgc2V0dGluZyBfQllURV9PUkRFUiB0byBlaXRoZXIgMTIzNCBmb3IgbGl0dGxlIGVuZGlhbgotICogb3IgNDMyMSBmb3IgYmlnLi4KLSAqLwotCiAjaWZuZGVmIF9TWVNfRU5ESUFOX0hfCiAjZGVmaW5lIF9TWVNfRU5ESUFOX0hfCiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxtYWNoaW5lL2VuZGlhbi5oPgogCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAKICNkZWZpbmUgX0xJVFRMRV9FTkRJQU4JMTIzNAogI2RlZmluZSBfQklHX0VORElBTgk0MzIxCiAjZGVmaW5lIF9QRFBfRU5ESUFOCTM0MTIKKyNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KKyNkZWZpbmUgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECiAKLSNpZiBfX0JTRF9WSVNJQkxFCi0jZGVmaW5lIExJVFRMRV9FTkRJQU4JX0xJVFRMRV9FTkRJQU4KLSNkZWZpbmUgQklHX0VORElBTglfQklHX0VORElBTgotI2RlZmluZSBQRFBfRU5ESUFOCV9QRFBfRU5ESUFOCi0jZGVmaW5lIEJZVEVfT1JERVIJX0JZVEVfT1JERVIKKyNpZm5kZWYgX19MSVRUTEVfRU5ESUFOCisjZGVmaW5lIF9fTElUVExFX0VORElBTiBfTElUVExFX0VORElBTgogI2VuZGlmCi0KLSNpZmRlZiBfX0dOVUNfXwotCi0jZGVmaW5lIF9fc3dhcDE2Z2VuKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQlfX3VpbnQxNl90IF9fc3dhcDE2Z2VuX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JKF9fdWludDE2X3QpKChfX3N3YXAxNmdlbl94ICYgMHhmZikgPDwgOCB8CQkJXAotCSAgICAoX19zd2FwMTZnZW5feCAmIDB4ZmYwMCkgPj4gOCk7CQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwMzJnZW4oeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCV9fdWludDMyX3QgX19zd2FwMzJnZW5feCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQkoX191aW50MzJfdCkoKF9fc3dhcDMyZ2VuX3ggJiAweGZmKSA8PCAyNCB8CQkJXAotCSAgICAoX19zd2FwMzJnZW5feCAmIDB4ZmYwMCkgPDwgOCB8CQkJCVwKLQkgICAgKF9fc3dhcDMyZ2VuX3ggJiAweGZmMDAwMCkgPj4gOCB8CQkJCVwKLQkgICAgKF9fc3dhcDMyZ2VuX3ggJiAweGZmMDAwMDAwKSA+PiAyNCk7CQkJXAotfSkKLQotI2RlZmluZSBfX3N3YXA2NGdlbih4KSBfX3N0YXRlbWVudCh7CQkJCQlcCi0JX191aW50NjRfdCBfX3N3YXA2NGdlbl94ID0gKHgpOwkJCQkJXAotCQkJCQkJCQkJXAotCShfX3VpbnQ2NF90KSgoX19zd2FwNjRnZW5feCAmIDB4ZmYpIDw8IDU2IHwJCQlcCi0JICAgIChfX3N3YXA2NGdlbl94ICYgMHhmZjAwVUxMKSA8PCA0MCB8CQkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDAwMFVMTCkgPDwgMjQgfAkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDAwMDAwVUxMKSA8PCA4IHwJCQlcCi0JICAgIChfX3N3YXA2NGdlbl94ICYgMHhmZjAwMDAwMDAwVUxMKSA+PiA4IHwJCQlcCi0JICAgIChfX3N3YXA2NGdlbl94ICYgMHhmZjAwMDAwMDAwMDBVTEwpID4+IDI0IHwJCQlcCi0JICAgIChfX3N3YXA2NGdlbl94ICYgMHhmZjAwMDAwMDAwMDAwMFVMTCkgPj4gNDAgfAkJXAotCSAgICAoX19zd2FwNjRnZW5feCAmIDB4ZmYwMDAwMDAwMDAwMDAwMFVMTCkgPj4gNTYpOwkJXAotfSkKLQotI2Vsc2UgLyogX19HTlVDX18gKi8KLQotLyogTm90ZSB0aGF0IHRoZXNlIG1hY3JvcyBldmFsdWF0ZSB0aGVpciBhcmd1bWVudHMgc2V2ZXJhbCB0aW1lcy4gICovCi0jZGVmaW5lIF9fc3dhcDE2Z2VuKHgpCQkJCQkJCVwKLSAgICAoX191aW50MTZfdCkoKChfX3VpbnQxNl90KSh4KSAmIDB4ZmYpIDw8IDggfCAoKF9fdWludDE2X3QpKHgpICYgMHhmZjAwKSA+PiA4KQotCi0jZGVmaW5lIF9fc3dhcDMyZ2VuKHgpCQkJCQkJCVwKLSAgICAoX191aW50MzJfdCkoKChfX3VpbnQzMl90KSh4KSAmIDB4ZmYpIDw8IDI0IHwJCQlcCi0gICAgKChfX3VpbnQzMl90KSh4KSAmIDB4ZmYwMCkgPDwgOCB8ICgoX191aW50MzJfdCkoeCkgJiAweGZmMDAwMCkgPj4gOCB8XAotICAgICgoX191aW50MzJfdCkoeCkgJiAweGZmMDAwMDAwKSA+PiAyNCkKLQotI2RlZmluZSBfX3N3YXA2NGdlbih4KQkJCQkJCQlcCi0JKF9fdWludDY0X3QpKCgoKF9fdWludDY0X3QpKHgpICYgMHhmZikgPDwgNTYpIHwJCQlcCi0JICAgICgoX191aW50NjRfdCkoeCkgJiAweGZmMDBVTEwpIDw8IDQwIHwJCQlcCi0JICAgICgoX191aW50NjRfdCkoeCkgJiAweGZmMDAwMFVMTCkgPDwgMjQgfAkJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMDAwMDBVTEwpIDw8IDggfAkJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMDAwMDAwMFVMTCkgPj4gOCB8CQkJXAotCSAgICAoKF9fdWludDY0X3QpKHgpICYgMHhmZjAwMDAwMDAwMDBVTEwpID4+IDI0IHwJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMDAwMDAwMDAwMDBVTEwpID4+IDQwIHwJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMDAwMDAwMDAwMDAwMFVMTCkgPj4gNTYpCi0KLSNlbmRpZiAvKiBfX0dOVUNfXyAqLwotCi0vKgotICogRGVmaW5lIE1EX1NXQVAgaWYgeW91IHByb3ZpZGUgc3dhcHsxNiwzMn1tZCBmdW5jdGlvbnMvbWFjcm9zIHRoYXQgYXJlCi0gKiBvcHRpbWl6ZWQgZm9yIHlvdXIgYXJjaGl0ZWN0dXJlLCAgVGhlc2Ugd2lsbCBiZSB1c2VkIGZvciBzd2FwezE2LDMyfQotICogdW5sZXNzIHRoZSBhcmd1bWVudCBpcyBhIGNvbnN0YW50IGFuZCB3ZSBhcmUgdXNpbmcgR0NDLCB3aGVyZSB3ZSBjYW4KLSAqIHRha2UgYWR2YW50YWdlIG9mIHRoZSBDU0UgcGhhc2UgbXVjaCBiZXR0ZXIgYnkgdXNpbmcgdGhlIGdlbmVyaWMgdmVyc2lvbi4KLSAqLwotI2lmZGVmIE1EX1NXQVAKLSNpZiBfX0dOVUNfXwotCi0jZGVmaW5lIF9fc3dhcDE2KHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQlfX3VpbnQxNl90IF9fc3dhcDE2X3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19idWlsdGluX2NvbnN0YW50X3AoeCkgPyBfX3N3YXAxNmdlbihfX3N3YXAxNl94KSA6CQlcCi0JICAgIF9fc3dhcDE2bWQoX19zd2FwMTZfeCk7CQkJCQlcCi19KQotCi0jZGVmaW5lIF9fc3dhcDMyKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQlfX3VpbnQzMl90IF9fc3dhcDMyX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19idWlsdGluX2NvbnN0YW50X3AoeCkgPyBfX3N3YXAzMmdlbihfX3N3YXAzMl94KSA6CQlcCi0JICAgIF9fc3dhcDMybWQoX19zd2FwMzJfeCk7CQkJCQlcCi19KQotCi0jZGVmaW5lIF9fc3dhcDY0KHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQlfX3VpbnQ2NF90IF9fc3dhcDY0X3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19idWlsdGluX2NvbnN0YW50X3AoeCkgPyBfX3N3YXA2NGdlbihfX3N3YXA2NF94KSA6CQlcCi0JICAgIF9fc3dhcDY0bWQoX19zd2FwNjRfeCk7CQkJCQlcCi19KQotCi0jZW5kaWYgLyogX19HTlVDX18gICovCi0KLSNlbHNlIC8qIE1EX1NXQVAgKi8KLSNkZWZpbmUgX19zd2FwMTYgX19zd2FwMTZnZW4KLSNkZWZpbmUgX19zd2FwMzIgX19zd2FwMzJnZW4KLSNkZWZpbmUgX19zd2FwNjQgX19zd2FwNjRnZW4KLSNlbmRpZiAvKiBNRF9TV0FQICovCi0KLSNkZWZpbmUgX19zd2FwMTZfbXVsdGkodiwgbikgZG8gewkJCQkJCVwKLQlfX3NpemVfdCBfX3N3YXAxNl9tdWx0aV9uID0gKG4pOwkJCQlcCi0JX191aW50MTZfdCAqX19zd2FwMTZfbXVsdGlfdiA9ICh2KTsJCQkJXAotCQkJCQkJCQkJXAotCXdoaWxlIChfX3N3YXAxNl9tdWx0aV9uKSB7CQkJCQlcCi0JCSpfX3N3YXAxNl9tdWx0aV92ID0gc3dhcDE2KCpfX3N3YXAxNl9tdWx0aV92KTsJCVwKLQkJX19zd2FwMTZfbXVsdGlfdisrOwkJCQkJXAotCQlfX3N3YXAxNl9tdWx0aV9uLS07CQkJCQlcCi0JfQkJCQkJCQkJXAotfSB3aGlsZSAoMCkKLQotI2lmIF9fQlNEX1ZJU0lCTEUKLSNkZWZpbmUgc3dhcDE2IF9fc3dhcDE2Ci0jZGVmaW5lIHN3YXAzMiBfX3N3YXAzMgotI2RlZmluZSBzd2FwNjQgX19zd2FwNjQKLSNkZWZpbmUgc3dhcDE2X211bHRpIF9fc3dhcDE2X211bHRpCi0jZW5kaWYgLyogX19CU0RfVklTSUJMRSAqLwotCi0jaWYgX0JZVEVfT1JERVIgPT0gX0xJVFRMRV9FTkRJQU4KLQotLyogQ2FuIGJlIG92ZXJyaWRkZW4gYnkgbWFjaGluZS9lbmRpYW4uaCBiZWZvcmUgaW5jbHVzaW9uIG9mIHRoaXMgZmlsZS4gICovCi0jaWZuZGVmIF9RVUFEX0hJR0hXT1JECi0jZGVmaW5lIF9RVUFEX0hJR0hXT1JEIDEKKyNpZm5kZWYgX19CSUdfRU5ESUFOCisjZGVmaW5lIF9fQklHX0VORElBTiBfQklHX0VORElBTgogI2VuZGlmCi0jaWZuZGVmIF9RVUFEX0xPV1dPUkQKLSNkZWZpbmUgX1FVQURfTE9XV09SRCAwCi0jZW5kaWYKKyNkZWZpbmUgX19CWVRFX09SREVSIF9CWVRFX09SREVSCiAKLSNpZiBfX0JTRF9WSVNJQkxFCi0jZGVmaW5lIGh0b2JlMTYgX19zd2FwMTYKLSNkZWZpbmUgaHRvYmUzMiBfX3N3YXAzMgotI2RlZmluZSBodG9iZTY0IF9fc3dhcDY0Ci0jZGVmaW5lIGJldG9oMTYgX19zd2FwMTYKLSNkZWZpbmUgYmV0b2gzMiBfX3N3YXAzMgotI2RlZmluZSBiZXRvaDY0IF9fc3dhcDY0Ci0KLSNkZWZpbmUgaHRvbGUxNih4KSAoeCkKLSNkZWZpbmUgaHRvbGUzMih4KSAoeCkKLSNkZWZpbmUgaHRvbGU2NCh4KSAoeCkKLSNkZWZpbmUgbGV0b2gxNih4KSAoeCkKLSNkZWZpbmUgbGV0b2gzMih4KSAoeCkKLSNkZWZpbmUgbGV0b2g2NCh4KSAoeCkKLSNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFICovCisjZGVmaW5lIF9fc3dhcDE2IF9fYnVpbHRpbl9ic3dhcDE2CisjZGVmaW5lIF9fc3dhcDMyIF9fYnVpbHRpbl9ic3dhcDMyCisjZGVmaW5lIF9fc3dhcDY0IF9fYnVpbHRpbl9ic3dhcDY0CiAKIC8qIGdsaWJjIGNvbXBhdGliaWxpdHkuICovCiBfX0JFR0lOX0RFQ0xTCkBAIC0yMDUsNjcgKzY0LDM1IEBACiAjZGVmaW5lIGh0b25xKHgpIF9fc3dhcDY0KHgpCiAjZGVmaW5lIG50b2hxKHgpIF9fc3dhcDY0KHgpCiAKLSNkZWZpbmUgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0KLSNlbmRpZiAvKiBfQllURV9PUkRFUiAqLwotCi0jaWYgX0JZVEVfT1JERVIgPT0gX0JJR19FTkRJQU4KLQotLyogQ2FuIGJlIG92ZXJyaWRkZW4gYnkgbWFjaGluZS9lbmRpYW4uaCBiZWZvcmUgaW5jbHVzaW9uIG9mIHRoaXMgZmlsZS4gICovCi0jaWZuZGVmIF9RVUFEX0hJR0hXT1JECi0jZGVmaW5lIF9RVUFEX0hJR0hXT1JEIDAKLSNlbmRpZgotI2lmbmRlZiBfUVVBRF9MT1dXT1JECi0jZGVmaW5lIF9RVUFEX0xPV1dPUkQgMQotI2VuZGlmCi0KICNpZiBfX0JTRF9WSVNJQkxFCi0jZGVmaW5lIGh0b2xlMTYgX19zd2FwMTYKLSNkZWZpbmUgaHRvbGUzMiBfX3N3YXAzMgotI2RlZmluZSBodG9sZTY0IF9fc3dhcDY0Ci0jZGVmaW5lIGxldG9oMTYgX19zd2FwMTYKLSNkZWZpbmUgbGV0b2gzMiBfX3N3YXAzMgotI2RlZmluZSBsZXRvaDY0IF9fc3dhcDY0CisjZGVmaW5lIExJVFRMRV9FTkRJQU4gX0xJVFRMRV9FTkRJQU4KKyNkZWZpbmUgQklHX0VORElBTiBfQklHX0VORElBTgorI2RlZmluZSBQRFBfRU5ESUFOIF9QRFBfRU5ESUFOCisjZGVmaW5lIEJZVEVfT1JERVIgX0JZVEVfT1JERVIKIAotI2RlZmluZSBodG9iZTE2KHgpICh4KQotI2RlZmluZSBodG9iZTMyKHgpICh4KQotI2RlZmluZSBodG9iZTY0KHgpICh4KQotI2RlZmluZSBiZXRvaDE2KHgpICh4KQotI2RlZmluZSBiZXRvaDMyKHgpICh4KQotI2RlZmluZSBiZXRvaDY0KHgpICh4KQotI2VuZGlmIC8qIF9fQlNEX1ZJU0lCTEUgKi8KLQotI2RlZmluZSBodG9ucyh4KSAoeCkKLSNkZWZpbmUgaHRvbmwoeCkgKHgpCi0jZGVmaW5lIG50b2hzKHgpICh4KQotI2RlZmluZSBudG9obCh4KSAoeCkKLQotLyogQmlvbmljIGFkZGl0aW9ucyAqLwotI2RlZmluZSBudG9ocSh4KSAoeCkKLSNkZWZpbmUgaHRvbnEoeCkgKHgpCi0KLSNkZWZpbmUgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0KLSNlbmRpZiAvKiBfQllURV9PUkRFUiAqLwotCi0jaWYgX19CU0RfVklTSUJMRQogI2RlZmluZQlOVE9ITCh4KSAoeCkgPSBudG9obCgodV9pbnQzMl90KSh4KSkKICNkZWZpbmUJTlRPSFMoeCkgKHgpID0gbnRvaHMoKHVfaW50MTZfdCkoeCkpCiAjZGVmaW5lCUhUT05MKHgpICh4KSA9IGh0b25sKCh1X2ludDMyX3QpKHgpKQogI2RlZmluZQlIVE9OUyh4KSAoeCkgPSBodG9ucygodV9pbnQxNl90KSh4KSkKLSNlbmRpZgogCisjZGVmaW5lIHN3YXAxNiBfX3N3YXAxNgorI2RlZmluZSBzd2FwMzIgX19zd2FwMzIKKyNkZWZpbmUgc3dhcDY0IF9fc3dhcDY0CiAKLSNkZWZpbmUgIF9fQllURV9PUkRFUiAgICAgICBfQllURV9PUkRFUgotI2lmbmRlZiAgX19MSVRUTEVfRU5ESUFOCi0jZGVmaW5lICBfX0xJVFRMRV9FTkRJQU4gICAgX0xJVFRMRV9FTkRJQU4KLSNlbmRpZgotI2lmbmRlZiAgX19CSUdfRU5ESUFOCi0jZGVmaW5lICBfX0JJR19FTkRJQU4gICAgICAgX0JJR19FTkRJQU4KLSNlbmRpZgorI2RlZmluZSBodG9iZTE2IF9fc3dhcDE2CisjZGVmaW5lIGh0b2JlMzIgX19zd2FwMzIKKyNkZWZpbmUgaHRvYmU2NCBfX3N3YXA2NAorI2RlZmluZSBiZXRvaDE2IF9fc3dhcDE2CisjZGVmaW5lIGJldG9oMzIgX19zd2FwMzIKKyNkZWZpbmUgYmV0b2g2NCBfX3N3YXA2NAogCisjZGVmaW5lIGh0b2xlMTYoeCkgKHgpCisjZGVmaW5lIGh0b2xlMzIoeCkgKHgpCisjZGVmaW5lIGh0b2xlNjQoeCkgKHgpCisjZGVmaW5lIGxldG9oMTYoeCkgKHgpCisjZGVmaW5lIGxldG9oMzIoeCkgKHgpCisjZGVmaW5lIGxldG9oNjQoeCkgKHgpCiAKLSNpZmRlZiBfX0JTRF9WSVNJQkxFCiAvKgogICogZ2xpYmMtY29tcGF0aWJsZSBiZVhYdG9oL2xlWFh0b2ggc3lub255bXMgZm9yIGh0b2JlWFgvaHRvbGVYWC4KICAqIFRoZSBCU0RzIGV4cG9ydCBib3RoIHNldHMgb2YgbmFtZXMsIGJpb25pYyBoaXN0b3JpY2FsbHkgb25seQpAQCAtMjc4LDYgKzEwNSw2IEBACiAjZGVmaW5lIGxlMTZ0b2goeCkgaHRvbGUxNih4KQogI2RlZmluZSBsZTMydG9oKHgpIGh0b2xlMzIoeCkKICNkZWZpbmUgbGU2NHRvaCh4KSBodG9sZTY0KHgpCi0jZW5kaWYKKyNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFICovCiAKICNlbmRpZiAvKiBfU1lTX0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9maWxlLmggYi9saWJjL2luY2x1ZGUvc3lzL2ZpbGUuaAppbmRleCBjZjJmNGIxLi5mNDE0ZDM0IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL2ZpbGUuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL2ZpbGUuaApAQCAtMjUsMTQgKzI1LDE5IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX1NZU19GSUxFX0hfCiAjZGVmaW5lIF9TWVNfRklMRV9IXwogCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAKLS8qIEFORFJPSUQ6IG5lZWRlZCBmb3IgZmxvY2soKSAqLwotI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CiAKK19fQkVHSU5fREVDTFMKKworaW50IGZsb2NrKGludCwgaW50KTsKKworX19FTkRfREVDTFMKKwogI2VuZGlmIC8qIF9TWVNfRklMRV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9nbGliYy1zeXNjYWxscy5oIGIvbGliYy9pbmNsdWRlL3N5cy9nbGliYy1zeXNjYWxscy5oCmluZGV4IDQ1OWVlNzguLjkyNjIwOWIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvZ2xpYmMtc3lzY2FsbHMuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL2dsaWJjLXN5c2NhbGxzLmgKQEAgLTEyLDYgKzEyLDcgQEAKICNkZWZpbmUgU1lTX2FyY2hfc3BlY2lmaWNfc3lzY2FsbCBfX05SX2FyY2hfc3BlY2lmaWNfc3lzY2FsbAogI2RlZmluZSBTWVNfYmRmbHVzaCBfX05SX2JkZmx1c2gKICNkZWZpbmUgU1lTX2JpbmQgX19OUl9iaW5kCisjZGVmaW5lIFNZU19icGYgX19OUl9icGYKICNkZWZpbmUgU1lTX2JyayBfX05SX2JyawogI2RlZmluZSBTWVNfY2FwZ2V0IF9fTlJfY2FwZ2V0CiAjZGVmaW5lIFNZU19jYXBzZXQgX19OUl9jYXBzZXQKQEAgLTkwLDYgKzkxLDcgQEAKICNkZWZpbmUgU1lTX2dldHBpZCBfX05SX2dldHBpZAogI2RlZmluZSBTWVNfZ2V0cHBpZCBfX05SX2dldHBwaWQKICNkZWZpbmUgU1lTX2dldHByaW9yaXR5IF9fTlJfZ2V0cHJpb3JpdHkKKyNkZWZpbmUgU1lTX2dldHJhbmRvbSBfX05SX2dldHJhbmRvbQogI2RlZmluZSBTWVNfZ2V0cmVzZ2lkIF9fTlJfZ2V0cmVzZ2lkCiAjZGVmaW5lIFNZU19nZXRyZXN1aWQgX19OUl9nZXRyZXN1aWQKICNkZWZpbmUgU1lTX2dldHJsaW1pdCBfX05SX2dldHJsaW1pdApAQCAtMTM0LDYgKzEzNiw3IEBACiAjZGVmaW5lIFNZU19sc3RhdDY0IF9fTlJfbHN0YXQ2NAogI2RlZmluZSBTWVNfbWFkdmlzZSBfX05SX21hZHZpc2UKICNkZWZpbmUgU1lTX21iaW5kIF9fTlJfbWJpbmQKKyNkZWZpbmUgU1lTX21lbWZkX2NyZWF0ZSBfX05SX21lbWZkX2NyZWF0ZQogI2RlZmluZSBTWVNfbWlncmF0ZV9wYWdlcyBfX05SX21pZ3JhdGVfcGFnZXMKICNkZWZpbmUgU1lTX21pbmNvcmUgX19OUl9taW5jb3JlCiAjZGVmaW5lIFNZU19ta2RpciBfX05SX21rZGlyCkBAIC0yMDMsNiArMjA2LDcgQEAKICNkZWZpbmUgU1lTX3JlbW92ZXhhdHRyIF9fTlJfcmVtb3ZleGF0dHIKICNkZWZpbmUgU1lTX3JlbmFtZSBfX05SX3JlbmFtZQogI2RlZmluZSBTWVNfcmVuYW1lYXQgX19OUl9yZW5hbWVhdAorI2RlZmluZSBTWVNfcmVuYW1lYXQyIF9fTlJfcmVuYW1lYXQyCiAjZGVmaW5lIFNZU19yZXF1ZXN0X2tleSBfX05SX3JlcXVlc3Rfa2V5CiAjZGVmaW5lIFNZU19yZXN0YXJ0X3N5c2NhbGwgX19OUl9yZXN0YXJ0X3N5c2NhbGwKICNkZWZpbmUgU1lTX3JtZGlyIF9fTlJfcm1kaXIKQEAgLTIyNiw2ICsyMzAsNyBAQAogI2RlZmluZSBTWVNfc2NoZWRfc2V0cGFyYW0gX19OUl9zY2hlZF9zZXRwYXJhbQogI2RlZmluZSBTWVNfc2NoZWRfc2V0c2NoZWR1bGVyIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyCiAjZGVmaW5lIFNZU19zY2hlZF95aWVsZCBfX05SX3NjaGVkX3lpZWxkCisjZGVmaW5lIFNZU19zZWNjb21wIF9fTlJfc2VjY29tcAogI2RlZmluZSBTWVNfc2VsZWN0IF9fTlJfc2VsZWN0CiAjZGVmaW5lIFNZU19zZW1jdGwgX19OUl9zZW1jdGwKICNkZWZpbmUgU1lTX3NlbWdldCBfX05SX3NlbWdldApAQCAtMzMyLDYgKzMzNyw3IEBACiAjZGVmaW5lIFNZU19hcm1fc3luY19maWxlX3JhbmdlIF9fTlJfYXJtX3N5bmNfZmlsZV9yYW5nZQogI2RlZmluZSBTWVNfYmRmbHVzaCBfX05SX2JkZmx1c2gKICNkZWZpbmUgU1lTX2JpbmQgX19OUl9iaW5kCisjZGVmaW5lIFNZU19icGYgX19OUl9icGYKICNkZWZpbmUgU1lTX2JyayBfX05SX2JyawogI2RlZmluZSBTWVNfY2FwZ2V0IF9fTlJfY2FwZ2V0CiAjZGVmaW5lIFNZU19jYXBzZXQgX19OUl9jYXBzZXQKQEAgLTQxNCw2ICs0MjAsNyBAQAogI2RlZmluZSBTWVNfZ2V0cGlkIF9fTlJfZ2V0cGlkCiAjZGVmaW5lIFNZU19nZXRwcGlkIF9fTlJfZ2V0cHBpZAogI2RlZmluZSBTWVNfZ2V0cHJpb3JpdHkgX19OUl9nZXRwcmlvcml0eQorI2RlZmluZSBTWVNfZ2V0cmFuZG9tIF9fTlJfZ2V0cmFuZG9tCiAjZGVmaW5lIFNZU19nZXRyZXNnaWQgX19OUl9nZXRyZXNnaWQKICNkZWZpbmUgU1lTX2dldHJlc2dpZDMyIF9fTlJfZ2V0cmVzZ2lkMzIKICNkZWZpbmUgU1lTX2dldHJlc3VpZCBfX05SX2dldHJlc3VpZApAQCAtNDYyLDYgKzQ2OSw3IEBACiAjZGVmaW5lIFNZU19sc3RhdDY0IF9fTlJfbHN0YXQ2NAogI2RlZmluZSBTWVNfbWFkdmlzZSBfX05SX21hZHZpc2UKICNkZWZpbmUgU1lTX21iaW5kIF9fTlJfbWJpbmQKKyNkZWZpbmUgU1lTX21lbWZkX2NyZWF0ZSBfX05SX21lbWZkX2NyZWF0ZQogI2RlZmluZSBTWVNfbWluY29yZSBfX05SX21pbmNvcmUKICNkZWZpbmUgU1lTX21rZGlyIF9fTlJfbWtkaXIKICNkZWZpbmUgU1lTX21rZGlyYXQgX19OUl9ta2RpcmF0CkBAIC01MzMsNiArNTQxLDcgQEAKICNkZWZpbmUgU1lTX3JlbW92ZXhhdHRyIF9fTlJfcmVtb3ZleGF0dHIKICNkZWZpbmUgU1lTX3JlbmFtZSBfX05SX3JlbmFtZQogI2RlZmluZSBTWVNfcmVuYW1lYXQgX19OUl9yZW5hbWVhdAorI2RlZmluZSBTWVNfcmVuYW1lYXQyIF9fTlJfcmVuYW1lYXQyCiAjZGVmaW5lIFNZU19yZXF1ZXN0X2tleSBfX05SX3JlcXVlc3Rfa2V5CiAjZGVmaW5lIFNZU19yZXN0YXJ0X3N5c2NhbGwgX19OUl9yZXN0YXJ0X3N5c2NhbGwKICNkZWZpbmUgU1lTX3JtZGlyIF9fTlJfcm1kaXIKQEAgLTU1Niw2ICs1NjUsNyBAQAogI2RlZmluZSBTWVNfc2NoZWRfc2V0cGFyYW0gX19OUl9zY2hlZF9zZXRwYXJhbQogI2RlZmluZSBTWVNfc2NoZWRfc2V0c2NoZWR1bGVyIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyCiAjZGVmaW5lIFNZU19zY2hlZF95aWVsZCBfX05SX3NjaGVkX3lpZWxkCisjZGVmaW5lIFNZU19zZWNjb21wIF9fTlJfc2VjY29tcAogI2RlZmluZSBTWVNfc2VsZWN0IF9fTlJfc2VsZWN0CiAjZGVmaW5lIFNZU19zZW1jdGwgX19OUl9zZW1jdGwKICNkZWZpbmUgU1lTX3NlbWdldCBfX05SX3NlbWdldApAQCAtNjc5LDYgKzY4OSw3IEBACiAjZGVmaW5lIFNZU19hbGFybSBfX05SX2FsYXJtCiAjZGVmaW5lIFNZU19iZGZsdXNoIF9fTlJfYmRmbHVzaAogI2RlZmluZSBTWVNfYmluZCBfX05SX2JpbmQKKyNkZWZpbmUgU1lTX2JwZiBfX05SX2JwZgogI2RlZmluZSBTWVNfYnJlYWsgX19OUl9icmVhawogI2RlZmluZSBTWVNfYnJrIF9fTlJfYnJrCiAjZGVmaW5lIFNZU19jYWNoZWN0bCBfX05SX2NhY2hlY3RsCkBAIC03NjMsNiArNzc0LDcgQEAKICNkZWZpbmUgU1lTX2dldHBtc2cgX19OUl9nZXRwbXNnCiAjZGVmaW5lIFNZU19nZXRwcGlkIF9fTlJfZ2V0cHBpZAogI2RlZmluZSBTWVNfZ2V0cHJpb3JpdHkgX19OUl9nZXRwcmlvcml0eQorI2RlZmluZSBTWVNfZ2V0cmFuZG9tIF9fTlJfZ2V0cmFuZG9tCiAjZGVmaW5lIFNZU19nZXRyZXNnaWQgX19OUl9nZXRyZXNnaWQKICNkZWZpbmUgU1lTX2dldHJlc3VpZCBfX05SX2dldHJlc3VpZAogI2RlZmluZSBTWVNfZ2V0cmxpbWl0IF9fTlJfZ2V0cmxpbWl0CkBAIC04MTIsNiArODI0LDcgQEAKICNkZWZpbmUgU1lTX2xzdGF0NjQgX19OUl9sc3RhdDY0CiAjZGVmaW5lIFNZU19tYWR2aXNlIF9fTlJfbWFkdmlzZQogI2RlZmluZSBTWVNfbWJpbmQgX19OUl9tYmluZAorI2RlZmluZSBTWVNfbWVtZmRfY3JlYXRlIF9fTlJfbWVtZmRfY3JlYXRlCiAjZGVmaW5lIFNZU19taWdyYXRlX3BhZ2VzIF9fTlJfbWlncmF0ZV9wYWdlcwogI2RlZmluZSBTWVNfbWluY29yZSBfX05SX21pbmNvcmUKICNkZWZpbmUgU1lTX21rZGlyIF9fTlJfbWtkaXIKQEAgLTg4OCw2ICs5MDEsNyBAQAogI2RlZmluZSBTWVNfcmVtb3ZleGF0dHIgX19OUl9yZW1vdmV4YXR0cgogI2RlZmluZSBTWVNfcmVuYW1lIF9fTlJfcmVuYW1lCiAjZGVmaW5lIFNZU19yZW5hbWVhdCBfX05SX3JlbmFtZWF0CisjZGVmaW5lIFNZU19yZW5hbWVhdDIgX19OUl9yZW5hbWVhdDIKICNkZWZpbmUgU1lTX3JlcXVlc3Rfa2V5IF9fTlJfcmVxdWVzdF9rZXkKICNkZWZpbmUgU1lTX3Jlc2VydmVkMTc3IF9fTlJfcmVzZXJ2ZWQxNzcKICNkZWZpbmUgU1lTX3Jlc2VydmVkMTkzIF9fTlJfcmVzZXJ2ZWQxOTMKQEAgLTkxNSw2ICs5MjksNyBAQAogI2RlZmluZSBTWVNfc2NoZWRfc2V0cGFyYW0gX19OUl9zY2hlZF9zZXRwYXJhbQogI2RlZmluZSBTWVNfc2NoZWRfc2V0c2NoZWR1bGVyIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyCiAjZGVmaW5lIFNZU19zY2hlZF95aWVsZCBfX05SX3NjaGVkX3lpZWxkCisjZGVmaW5lIFNZU19zZWNjb21wIF9fTlJfc2VjY29tcAogI2RlZmluZSBTWVNfc2VtY3RsIF9fTlJfc2VtY3RsCiAjZGVmaW5lIFNZU19zZW1nZXQgX19OUl9zZW1nZXQKICNkZWZpbmUgU1lTX3NlbW9wIF9fTlJfc2Vtb3AKQEAgLTEwMzksNiArMTA1NCw3IEBACiAjZGVmaW5lIFNZU19hZnNfc3lzY2FsbCBfX05SX2Fmc19zeXNjYWxsCiAjZGVmaW5lIFNZU19hbGFybSBfX05SX2FsYXJtCiAjZGVmaW5lIFNZU19iZGZsdXNoIF9fTlJfYmRmbHVzaAorI2RlZmluZSBTWVNfYnBmIF9fTlJfYnBmCiAjZGVmaW5lIFNZU19icmVhayBfX05SX2JyZWFrCiAjZGVmaW5lIFNZU19icmsgX19OUl9icmsKICNkZWZpbmUgU1lTX2NhcGdldCBfX05SX2NhcGdldApAQCAtMTEyNyw2ICsxMTQzLDcgQEAKICNkZWZpbmUgU1lTX2dldHBtc2cgX19OUl9nZXRwbXNnCiAjZGVmaW5lIFNZU19nZXRwcGlkIF9fTlJfZ2V0cHBpZAogI2RlZmluZSBTWVNfZ2V0cHJpb3JpdHkgX19OUl9nZXRwcmlvcml0eQorI2RlZmluZSBTWVNfZ2V0cmFuZG9tIF9fTlJfZ2V0cmFuZG9tCiAjZGVmaW5lIFNZU19nZXRyZXNnaWQgX19OUl9nZXRyZXNnaWQKICNkZWZpbmUgU1lTX2dldHJlc2dpZDMyIF9fTlJfZ2V0cmVzZ2lkMzIKICNkZWZpbmUgU1lTX2dldHJlc3VpZCBfX05SX2dldHJlc3VpZApAQCAtMTE3Nyw2ICsxMTk0LDcgQEAKICNkZWZpbmUgU1lTX2xzdGF0NjQgX19OUl9sc3RhdDY0CiAjZGVmaW5lIFNZU19tYWR2aXNlIF9fTlJfbWFkdmlzZQogI2RlZmluZSBTWVNfbWJpbmQgX19OUl9tYmluZAorI2RlZmluZSBTWVNfbWVtZmRfY3JlYXRlIF9fTlJfbWVtZmRfY3JlYXRlCiAjZGVmaW5lIFNZU19taWdyYXRlX3BhZ2VzIF9fTlJfbWlncmF0ZV9wYWdlcwogI2RlZmluZSBTWVNfbWluY29yZSBfX05SX21pbmNvcmUKICNkZWZpbmUgU1lTX21rZGlyIF9fTlJfbWtkaXIKQEAgLTEyNTAsNiArMTI2OCw3IEBACiAjZGVmaW5lIFNZU19yZW1vdmV4YXR0ciBfX05SX3JlbW92ZXhhdHRyCiAjZGVmaW5lIFNZU19yZW5hbWUgX19OUl9yZW5hbWUKICNkZWZpbmUgU1lTX3JlbmFtZWF0IF9fTlJfcmVuYW1lYXQKKyNkZWZpbmUgU1lTX3JlbmFtZWF0MiBfX05SX3JlbmFtZWF0MgogI2RlZmluZSBTWVNfcmVxdWVzdF9rZXkgX19OUl9yZXF1ZXN0X2tleQogI2RlZmluZSBTWVNfcmVzdGFydF9zeXNjYWxsIF9fTlJfcmVzdGFydF9zeXNjYWxsCiAjZGVmaW5lIFNZU19ybWRpciBfX05SX3JtZGlyCkBAIC0xMjczLDYgKzEyOTIsNyBAQAogI2RlZmluZSBTWVNfc2NoZWRfc2V0cGFyYW0gX19OUl9zY2hlZF9zZXRwYXJhbQogI2RlZmluZSBTWVNfc2NoZWRfc2V0c2NoZWR1bGVyIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyCiAjZGVmaW5lIFNZU19zY2hlZF95aWVsZCBfX05SX3NjaGVkX3lpZWxkCisjZGVmaW5lIFNZU19zZWNjb21wIF9fTlJfc2VjY29tcAogI2RlZmluZSBTWVNfc2VsZWN0IF9fTlJfc2VsZWN0CiAjZGVmaW5lIFNZU19zZW5kZmlsZSBfX05SX3NlbmRmaWxlCiAjZGVmaW5lIFNZU19zZW5kZmlsZTY0IF9fTlJfc2VuZGZpbGU2NApAQCAtMTM4OSw2ICsxNDA5LDcgQEAKICNkZWZpbmUgU1lTX2FsYXJtIF9fTlJfYWxhcm0KICNkZWZpbmUgU1lTX2FyY2hfcHJjdGwgX19OUl9hcmNoX3ByY3RsCiAjZGVmaW5lIFNZU19iaW5kIF9fTlJfYmluZAorI2RlZmluZSBTWVNfYnBmIF9fTlJfYnBmCiAjZGVmaW5lIFNZU19icmsgX19OUl9icmsKICNkZWZpbmUgU1lTX2NhcGdldCBfX05SX2NhcGdldAogI2RlZmluZSBTWVNfY2Fwc2V0IF9fTlJfY2Fwc2V0CkBAIC0xNDY3LDYgKzE0ODgsNyBAQAogI2RlZmluZSBTWVNfZ2V0cG1zZyBfX05SX2dldHBtc2cKICNkZWZpbmUgU1lTX2dldHBwaWQgX19OUl9nZXRwcGlkCiAjZGVmaW5lIFNZU19nZXRwcmlvcml0eSBfX05SX2dldHByaW9yaXR5CisjZGVmaW5lIFNZU19nZXRyYW5kb20gX19OUl9nZXRyYW5kb20KICNkZWZpbmUgU1lTX2dldHJlc2dpZCBfX05SX2dldHJlc2dpZAogI2RlZmluZSBTWVNfZ2V0cmVzdWlkIF9fTlJfZ2V0cmVzdWlkCiAjZGVmaW5lIFNZU19nZXRybGltaXQgX19OUl9nZXRybGltaXQKQEAgLTE0OTQsNiArMTUxNiw3IEBACiAjZGVmaW5lIFNZU19pb3ByaW9fZ2V0IF9fTlJfaW9wcmlvX2dldAogI2RlZmluZSBTWVNfaW9wcmlvX3NldCBfX05SX2lvcHJpb19zZXQKICNkZWZpbmUgU1lTX2tjbXAgX19OUl9rY21wCisjZGVmaW5lIFNZU19rZXhlY19maWxlX2xvYWQgX19OUl9rZXhlY19maWxlX2xvYWQKICNkZWZpbmUgU1lTX2tleGVjX2xvYWQgX19OUl9rZXhlY19sb2FkCiAjZGVmaW5lIFNZU19rZXljdGwgX19OUl9rZXljdGwKICNkZWZpbmUgU1lTX2tpbGwgX19OUl9raWxsCkBAIC0xNTExLDYgKzE1MzQsNyBAQAogI2RlZmluZSBTWVNfbHN0YXQgX19OUl9sc3RhdAogI2RlZmluZSBTWVNfbWFkdmlzZSBfX05SX21hZHZpc2UKICNkZWZpbmUgU1lTX21iaW5kIF9fTlJfbWJpbmQKKyNkZWZpbmUgU1lTX21lbWZkX2NyZWF0ZSBfX05SX21lbWZkX2NyZWF0ZQogI2RlZmluZSBTWVNfbWlncmF0ZV9wYWdlcyBfX05SX21pZ3JhdGVfcGFnZXMKICNkZWZpbmUgU1lTX21pbmNvcmUgX19OUl9taW5jb3JlCiAjZGVmaW5lIFNZU19ta2RpciBfX05SX21rZGlyCkBAIC0xNTgwLDYgKzE2MDQsNyBAQAogI2RlZmluZSBTWVNfcmVtb3ZleGF0dHIgX19OUl9yZW1vdmV4YXR0cgogI2RlZmluZSBTWVNfcmVuYW1lIF9fTlJfcmVuYW1lCiAjZGVmaW5lIFNZU19yZW5hbWVhdCBfX05SX3JlbmFtZWF0CisjZGVmaW5lIFNZU19yZW5hbWVhdDIgX19OUl9yZW5hbWVhdDIKICNkZWZpbmUgU1lTX3JlcXVlc3Rfa2V5IF9fTlJfcmVxdWVzdF9rZXkKICNkZWZpbmUgU1lTX3Jlc3RhcnRfc3lzY2FsbCBfX05SX3Jlc3RhcnRfc3lzY2FsbAogI2RlZmluZSBTWVNfcm1kaXIgX19OUl9ybWRpcgpAQCAtMTYwMyw2ICsxNjI4LDcgQEAKICNkZWZpbmUgU1lTX3NjaGVkX3NldHBhcmFtIF9fTlJfc2NoZWRfc2V0cGFyYW0KICNkZWZpbmUgU1lTX3NjaGVkX3NldHNjaGVkdWxlciBfX05SX3NjaGVkX3NldHNjaGVkdWxlcgogI2RlZmluZSBTWVNfc2NoZWRfeWllbGQgX19OUl9zY2hlZF95aWVsZAorI2RlZmluZSBTWVNfc2VjY29tcCBfX05SX3NlY2NvbXAKICNkZWZpbmUgU1lTX3NlY3VyaXR5IF9fTlJfc2VjdXJpdHkKICNkZWZpbmUgU1lTX3NlbGVjdCBfX05SX3NlbGVjdAogI2RlZmluZSBTWVNfc2VtY3RsIF9fTlJfc2VtY3RsCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2xpbWl0cy5oIGIvbGliYy9pbmNsdWRlL3N5cy9saW1pdHMuaAppbmRleCBjNTBlYjEwLi5iZTc5Y2YzIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL2xpbWl0cy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvbGltaXRzLmgKQEAgLTExNSw1NyArMTE1LDEzIEBACiAKIC8qIEJpb25pYy1zcGVjaWZpYyBkZWZpbml0aW9ucyAqLwogCi0jZGVmaW5lICBfUE9TSVhfVkVSU0lPTiAgICAgICAgICAgICAyMDAxMTJMICAgLyogUG9zaXggQyBsYW5ndWFnZSBiaW5kaW5ncyB2ZXJzaW9uICovCisjZGVmaW5lICBfUE9TSVhfVkVSU0lPTiAgICAgICAgICAgICAyMDA4MDlMICAgLyogUG9zaXggQyBsYW5ndWFnZSBiaW5kaW5ncyB2ZXJzaW9uICovCiAjZGVmaW5lICBfUE9TSVgyX1ZFUlNJT04gICAgICAgICAgICAtMSAgICAgICAgLyogd2UgZG9uJ3Qgc3VwcG9ydCBQb3NpeCBjb21tYW5kLWxpbmUgdG9vbHMgKi8KLSNkZWZpbmUgIF9QT1NJWDJfQ19WRVJTSU9OICAgICAgICAgIF9QT1NJWF9WRVJTSU9OCi0jZGVmaW5lICBfWE9QRU5fVkVSU0lPTiAgICAgICAgICAgICA1MDAgICAgICAgLyogYnkgUG9zaXggZGVmaW5pdGlvbiAqLwotI2RlZmluZSAgX1hPUEVOX1hDVV9WRVJTSU9OICAgICAgICAgLTEgICAgICAgIC8qIHdlIGRvbid0IHN1cHBvcnQgY29tbWFuZC1saW5lIHV0aWxpdGllcyAqLwotCi0vKiB0ZWxsIHdoYXQgd2UgaW1wbGVtZW50IGxlZ2FjeSBzdHVmZiB3aGVuIGFwcHJvcHJpYXRlICovCi0jaWYgX1BPU0lYX1ZFUlNJT04gPiAwCi0jZGVmaW5lICBfWE9QRU5fWFBHMiAgICAgICAgICAgICAgICAxCi0jZGVmaW5lICBfWE9QRU5fWFBHMyAgICAgICAgICAgICAgICAxCi0jZGVmaW5lICBfWE9QRU5fWFBHNCAgICAgICAgICAgICAgICAxCi0jZGVmaW5lICBfWE9QRU5fVU5JWCAgICAgICAgICAgICAgICAxCi0jZW5kaWYKLQotI2RlZmluZSAgX1hPUEVOX0VOSF9JMThOICAgICAgICAgIC0xICAvKiB3ZSBkb24ndCBzdXBwb3J0IGludGVybmF0aW9uYWxpemF0aW9uIGluIHRoZSBDIGxpYnJhcnkgKi8KLSNkZWZpbmUgIF9YT1BFTl9DUllQVCAgICAgICAgICAgICAtMSAgLyogZG9uJ3Qgc3VwcG9ydCBYL09wZW4gRW5jcnlwdGlvbiAqLwotI2RlZmluZSAgX1hPUEVOX0xFR0FDWSAgICAgICAgICAgIC0xICAvKiBkb24ndCBjbGFpbSB3ZSBzdXBwb3J0IHRoZXNlLCB3ZSBoYXZlIHNvbWUgb2YgdGhlbSBidXQgbm90IGFsbCAqLwotI2RlZmluZSAgX1hPUEVOX1JFQUxUSU1FICAgICAgICAgIC0xIC8qIHdlIGRvbid0IHN1cHBvcnQgYWxsIHRoZXNlIGZ1bmN0aW9ucyAqLwotI2RlZmluZSAgX1hPUEVOX1JFQUxUSU1FX1RIUkVBRFMgIC0xICAvKiBzYW1lIGhlcmUgKi8KLQotI2RlZmluZSAgX1BPU0lYX1JFQUxUSU1FX1NJR05BTFMgICAgLTEgIC8qIGZvciBub3csIHRoaXMgaXMgbm90IHN1cHBvcnRlZCAqLwotI2RlZmluZSAgX1BPU0lYX1BSSU9SSVRZX1NDSEVEVUxJTkcgIDEgIC8qIHByaW9yaXR5IHNjaGVkdWxpbmcgaXMgYSBMaW51eCBmZWF0dXJlICovCi0jZGVmaW5lICBfUE9TSVhfVElNRVJTICAgICAgICAgICAgICAgMSAgLyogUG9zaXggdGltZXJzIGFyZSBzdXBwb3J0ZWQgKi8KLSN1bmRlZiAgIF9QT1NJWF9BU1lOQ0hST05PVVNfSU8gICAgICAgICAvKiBhaW9fIGZ1bmN0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCAqLwotI2RlZmluZSAgX1BPU0lYX1NZTkNIUk9OSVpFRF9JTyAgICAgIDEgIC8qIHN5bmNocm9uaXplZCBpL28gc3VwcG9ydGVkICovCi0jZGVmaW5lICBfUE9TSVhfRlNZTkMgICAgICAgICAgICAgICAgMSAgLyogZmRhdGFzeW5jKCkgc3VwcG9ydGVkICovCi0jZGVmaW5lICBfUE9TSVhfTUFQUEVEX0ZJTEVTICAgICAgICAgMSAgLyogbW1hcC1lZCBmaWxlcyBzdXBwb3J0ZWQgKi8KLQotLyogWFhYOiBUT0RPOiBjb21wbGV0ZSBhbmQgY2hlY2sgbGlzdCBoZXJlICovCisjZGVmaW5lICBfWE9QRU5fVkVSU0lPTiAgICAgICAgICAgICA3MDAgICAgICAgLyogYnkgUG9zaXggZGVmaW5pdGlvbiAqLwogCiAKLSNkZWZpbmUgIF9QT1NJWF9USFJFQURTICAgICAgICAgICAgIDEgICAgLyogd2Ugc3VwcG9ydCB0aHJlYWRzICovCi0jZGVmaW5lICBfUE9TSVhfVEhSRUFEX1NUQUNLQUREUiAgICAxICAgIC8qIHdlIHN1cHBvcnQgdGhyZWFkIHN0YWNrIGFkZHJlc3MgKi8KLSNkZWZpbmUgIF9QT1NJWF9USFJFQURfU1RBQ0tTSVpFICAgIDEgICAgLyogd2Ugc3VwcG9ydCB0aHJlYWQgc3RhY2sgc2l6ZSAqLwotI2RlZmluZSAgX1BPU0lYX1RIUkVBRF9QUklPX0lOSEVSSVQgMjAwMTEyTCAgIC8qIGxpbnV4IGZlYXR1cmUgKi8KLSNkZWZpbmUgIF9QT1NJWF9USFJFQURfUFJJT19QUk9URUNUIDIwMDExMkwgICAvKiBsaW51eCBmZWF0dXJlICovCi0KLSN1bmRlZiAgIF9QT1NJWF9QUk9DRVNTX1NIQVJFRCAgICAgICAgICAgLyogd2UgZG9uJ3Qgc3VwcG9ydCBwcm9jZXNzLXNoYXJlZCBzeW5jaHJvbml6YXRpb24gKi8KLSN1bmRlZiAgIF9QT1NJWF9USFJFQURfU0FGRV9GVU5DVElPTlMgICAgLyogbW9zdCBmdW5jdGlvbnMgYXJlLCBidXQgbm90IGV2ZXJ5dGhpbmcgeWV0ICovCi0jZGVmaW5lICBfUE9TSVhfQ0hPV05fUkVTVFJJQ1RFRCAgICAxICAgIC8qIHllcywgY2hvd24gcmVxdWlyZXMgYXBwcm9wcmlhdGUgcHJpdmlsZWdlcyAqLwotI2RlZmluZSAgX1BPU0lYX01PTk9UT05JQ19DTE9DSyAgICAgMCAgICAvKiB0aGUgbW9ub3RvbmljIGNsb2NrIG1heSBiZSBhdmFpbGFibGU7IGFzayBzeXNjb25mICovCi0jZGVmaW5lICBfUE9TSVhfTk9fVFJVTkMgICAgICAgICAgICAxICAgIC8qIHZlcnkgbG9uZyBwYXRobmFtZXMgZ2VuZXJhdGUgYW4gZXJyb3IgKi8KLSNkZWZpbmUgIF9QT1NJWF9TQVZFRF9JRFMgICAgICAgICAgIDEgICAgLyogc2F2ZWQgdXNlciBpZHMgaXMgYSBMaW51eCBmZWF0dXJlICovCi0jZGVmaW5lICBfUE9TSVhfSk9CX0NPTlRST0wgICAgICAgICAxICAgIC8qIGpvYiBjb250cm9sIGlzIGEgTGludXggZmVhdHVyZSAqLwotCi0jZGVmaW5lIF9QT1NJWF9USFJFQURfREVTVFJVQ1RPUl9JVEVSQVRJT05TIDQgLyogdGhlIG1pbmltdW0gbWFuZGF0ZWQgYnkgUE9TSVggKi8KLSNkZWZpbmUgUFRIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMgX1BPU0lYX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMKLSNkZWZpbmUgX1BPU0lYX1RIUkVBRF9LRVlTX01BWCAxMjggICAgICAgICAgICAvKiB0aGUgbWluaW11bSBtYW5kYXRlZCBieSBQT1NJWCAqLwotI2RlZmluZSBQVEhSRUFEX0tFWVNfTUFYIF9QT1NJWF9USFJFQURfS0VZU19NQVgKLSNkZWZpbmUgX1BPU0lYX1RIUkVBRF9USFJFQURTX01BWCA2NCAgICAgICAgICAvKiB0aGUgbWluaW11bSBtYW5kYXRlZCBieSBQT1NJWCAqLwotI2RlZmluZSBQVEhSRUFEX1RIUkVBRFNfTUFYICAgICAgICAgICAgICAgICAgIC8qIGJpb25pYyBoYXMgbm8gc3BlY2lmaWMgbGltaXQgKi8KLQorI2RlZmluZSBQVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUyA0ICAgICAvLyA+PSBfUE9TSVhfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUworI2RlZmluZSBQVEhSRUFEX0tFWVNfTUFYICAgICAgICAgICAgICAxMjggICAvLyA+PSBfUE9TSVhfVEhSRUFEX0tFWVNfTUFYCisjZGVmaW5lIFBUSFJFQURfVEhSRUFEU19NQVggICAgICAgICAgIDIwNDggIC8vIGJpb25pYyBoYXMgbm8gc3BlY2lmaWMgbGltaXQKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL21tYW4uaCBiL2xpYmMvaW5jbHVkZS9zeXMvbW1hbi5oCmluZGV4IDVhOGM5ODUuLjY4NTdmNjAgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvbW1hbi5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvbW1hbi5oCkBAIC00Myw4ICs0MywxOSBAQAogI2RlZmluZSBNUkVNQVBfTUFZTU9WRSAgMQogI2RlZmluZSBNUkVNQVBfRklYRUQgICAgMgogCisjZGVmaW5lIFBPU0lYX01BRFZfTk9STUFMICAgICBNQURWX05PUk1BTAorI2RlZmluZSBQT1NJWF9NQURWX1JBTkRPTSAgICAgTUFEVl9SQU5ET00KKyNkZWZpbmUgUE9TSVhfTUFEVl9TRVFVRU5USUFMIE1BRFZfU0VRVUVOVElBTAorI2RlZmluZSBQT1NJWF9NQURWX1dJTExORUVEICAgTUFEVl9XSUxMTkVFRAorI2RlZmluZSBQT1NJWF9NQURWX0RPTlRORUVEICAgTUFEVl9ET05UTkVFRAorCisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KQorZXh0ZXJuIHZvaWQqIG1tYXAodm9pZCosIHNpemVfdCwgaW50LCBpbnQsIGludCwgb2ZmX3QpIF9fUkVOQU1FKG1tYXA2NCk7CisjZWxzZQogZXh0ZXJuIHZvaWQqIG1tYXAodm9pZCosIHNpemVfdCwgaW50LCBpbnQsIGludCwgb2ZmX3QpOworI2VuZGlmCiBleHRlcm4gdm9pZCogbW1hcDY0KHZvaWQqLCBzaXplX3QsIGludCwgaW50LCBpbnQsIG9mZjY0X3QpOworCiBleHRlcm4gaW50IG11bm1hcCh2b2lkKiwgc2l6ZV90KTsKIGV4dGVybiBpbnQgbXN5bmMoY29uc3Qgdm9pZCosIHNpemVfdCwgaW50KTsKIGV4dGVybiBpbnQgbXByb3RlY3QoY29uc3Qgdm9pZCosIHNpemVfdCwgaW50KTsKQEAgLTU0LDEzICs2NSwxNSBAQAogZXh0ZXJuIGludCBtdW5sb2NrYWxsKHZvaWQpOwogZXh0ZXJuIGludCBtbG9jayhjb25zdCB2b2lkKiwgc2l6ZV90KTsKIGV4dGVybiBpbnQgbXVubG9jayhjb25zdCB2b2lkKiwgc2l6ZV90KTsKLWV4dGVybiBpbnQgbWFkdmlzZShjb25zdCB2b2lkKiwgc2l6ZV90LCBpbnQpOworZXh0ZXJuIGludCBtYWR2aXNlKHZvaWQqLCBzaXplX3QsIGludCk7CiAKIGV4dGVybiBpbnQgbWxvY2soY29uc3Qgdm9pZCosIHNpemVfdCk7CiBleHRlcm4gaW50IG11bmxvY2soY29uc3Qgdm9pZCosIHNpemVfdCk7CiAKIGV4dGVybiBpbnQgbWluY29yZSh2b2lkKiwgc2l6ZV90LCB1bnNpZ25lZCBjaGFyKik7CiAKK2V4dGVybiBpbnQgcG9zaXhfbWFkdmlzZSh2b2lkKiwgc2l6ZV90LCBpbnQpOworCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX1NZU19NTUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL21vdW50LmggYi9saWJjL2luY2x1ZGUvc3lzL21vdW50LmgKaW5kZXggM2MzNWQzMS4uZmQ3Y2YxNyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9tb3VudC5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvbW91bnQuaApAQCAtMjUsNiArMjUsNyBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9TWVNfTU9VTlRfSAogI2RlZmluZSBfU1lTX01PVU5UX0gKIApAQCAtMzUsOSArMzYsMTAgQEAKIF9fQkVHSU5fREVDTFMKIAogLyogdW1vdW50MiBmbGFncy4gKi8KLSNkZWZpbmUgTU5UX0ZPUkNFCTEJLyogRm9yY2libHkgdW5tb3VudCAqLwotI2RlZmluZSBNTlRfREVUQUNICTIJLyogRGV0YWNoIGZyb20gdHJlZSBvbmx5ICovCi0jZGVmaW5lIE1OVF9FWFBJUkUJNAkvKiBNYXJrIGZvciBleHBpcnkgKi8KKyNkZWZpbmUgTU5UX0ZPUkNFIDEKKyNkZWZpbmUgTU5UX0RFVEFDSCAyCisjZGVmaW5lIE1OVF9FWFBJUkUgNAorI2RlZmluZSBVTU9VTlRfTk9GT0xMT1cgOAogCiBleHRlcm4gaW50IG1vdW50KGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IHZvaWQqKTsKIGV4dGVybiBpbnQgdW1vdW50KGNvbnN0IGNoYXIqKTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvcmVzb3VyY2UuaCBiL2xpYmMvaW5jbHVkZS9zeXMvcmVzb3VyY2UuaAppbmRleCBhOTFmYTUzLi4zZjhkZDQ1IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3Jlc291cmNlLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9yZXNvdXJjZS5oCkBAIC0zNiw2ICszNiwxMCBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKKy8qIFRoZSBrZXJuZWwgaGVhZGVyIGRvZXNuJ3QgaGF2ZSB0aGVzZSwgYnV0IFBPU0lYIGRvZXMuICovCisjZGVmaW5lIFJMSU1fU0FWRURfQ1VSIFJMSU1fSU5GSU5JVFkKKyNkZWZpbmUgUkxJTV9TQVZFRF9NQVggUkxJTV9JTkZJTklUWQorCiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgcmxpbV90OwogCiBleHRlcm4gaW50IGdldHJsaW1pdChpbnQsIHN0cnVjdCBybGltaXQqKTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvc2VsZWN0LmggYi9saWJjL2luY2x1ZGUvc3lzL3NlbGVjdC5oCmluZGV4IDMyYzEyMDYuLjBjNGE4MjMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvc2VsZWN0LmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9zZWxlY3QuaApAQCAtMjksMTEgKzI5LDEwIEBACiAjaWZuZGVmIF9TWVNfU0VMRUNUX0hfCiAjZGVmaW5lIF9TWVNfU0VMRUNUX0hfCiAKLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L3RpbWUuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KLSNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KIAogX19CRUdJTl9ERUNMUwogCkBAIC00OSw3ICs0OCwxNCBAQAogI2RlZmluZSBfX0ZETUFTSyhmZCkgKDFVTCA8PCAoKGZkKSAlIE5GREJJVFMpKQogI2RlZmluZSBfX0ZEU19CSVRTKHNldCkgKCgoZmRfc2V0Kikoc2V0KSktPmZkc19iaXRzKQogCi0jZGVmaW5lIEZEX1pFUk8oc2V0KSAobWVtc2V0KHNldCwgMCwgc2l6ZW9mKCooZmRfc2V0Kikoc2V0KSkpKQorLyogSW5saW5lIGxvb3Agc28gd2UgZG9uJ3QgaGF2ZSB0byBkZWNsYXJlIG1lbXNldC4gKi8KKyNkZWZpbmUgRkRfWkVSTyhzZXQpIFwKKyAgZG8geyBcCisgICAgc2l6ZV90IF9faTsgXAorICAgIGZvciAoX19pID0gMDsgX19pIDwgX19GRFNFVF9MT05HUzsgKytfX2kpIHsgXAorICAgICAgKHNldCktPmZkc19iaXRzW19faV0gPSAwOyBcCisgICAgfSBcCisgIH0gd2hpbGUgKDApCiAKIGV4dGVybiB2b2lkIF9fRkRfQ0xSX2NoayhpbnQsIGZkX3NldCosIHNpemVfdCk7CiBleHRlcm4gdm9pZCBfX0ZEX1NFVF9jaGsoaW50LCBmZF9zZXQqLCBzaXplX3QpOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9zZW5kZmlsZS5oIGIvbGliYy9pbmNsdWRlL3N5cy9zZW5kZmlsZS5oCmluZGV4IDgxYTNjNDQuLmM1ODhlNjggMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvc2VuZGZpbGUuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3NlbmRmaWxlLmgKQEAgLTM0LDcgKzM0LDExIEBACiAKIF9fQkVHSU5fREVDTFMKIAorI2lmIGRlZmluZWQoX19VU0VfRklMRV9PRkZTRVQ2NCkKK2V4dGVybiBzc2l6ZV90IHNlbmRmaWxlKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QqIG9mZnNldCwgc2l6ZV90IGNvdW50KSBfX1JFTkFNRShzZW5kZmlsZTY0KTsKKyNlbHNlCiBleHRlcm4gc3NpemVfdCBzZW5kZmlsZShpbnQgb3V0X2ZkLCBpbnQgaW5fZmQsIG9mZl90KiBvZmZzZXQsIHNpemVfdCBjb3VudCk7CisjZW5kaWYKIGV4dGVybiBzc2l6ZV90IHNlbmRmaWxlNjQoaW50IG91dF9mZCwgaW50IGluX2ZkLCBvZmY2NF90KiBvZmZzZXQsIHNpemVfdCBjb3VudCk7CiAKIF9fRU5EX0RFQ0xTCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3N0YXQuaCBiL2xpYmMvaW5jbHVkZS9zeXMvc3RhdC5oCmluZGV4IDljNzM3M2EuLmMyMjUxNmYgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvc3RhdC5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvc3RhdC5oCkBAIC0yNSw5MSArMjUsODEgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfU1lTX1NUQVRfSF8KICNkZWZpbmUgX1NZU19TVEFUX0hfCiAKKyNpbmNsdWRlIDxsaW51eC9zdGF0Lmg+CisjaW5jbHVkZSA8bWFjaGluZS90aW1lc3BlYy5oPgogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0jaW5jbHVkZSA8bGludXgvc3RhdC5oPgotCi0jaW5jbHVkZSA8ZW5kaWFuLmg+CiAKIF9fQkVHSU5fREVDTFMKIAotI2lmIGRlZmluZWQoX19hYXJjaDY0X18pCisjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykgfHwgKGRlZmluZWQoX19taXBzX18pICYmIGRlZmluZWQoX19MUDY0X18pKQogI2RlZmluZSBfX1NUQVQ2NF9CT0RZIFwKLSAgdW5zaWduZWQgbG9uZyBzdF9kZXY7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9pbm87IFwKLSAgdW5zaWduZWQgaW50IHN0X21vZGU7IFwKLSAgdW5zaWduZWQgaW50IHN0X25saW5rOyBcCisgIGRldl90IHN0X2RldjsgXAorICBpbm9fdCBzdF9pbm87IFwKKyAgbW9kZV90IHN0X21vZGU7IFwKKyAgbmxpbmtfdCBzdF9ubGluazsgXAogICB1aWRfdCBzdF91aWQ7IFwKICAgZ2lkX3Qgc3RfZ2lkOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsgXAorICBkZXZfdCBzdF9yZGV2OyBcCiAgIHVuc2lnbmVkIGxvbmcgX19wYWQxOyBcCi0gIGxvbmcgc3Rfc2l6ZTsgXAorICBvZmZfdCBzdF9zaXplOyBcCiAgIGludCBzdF9ibGtzaXplOyBcCiAgIGludCBfX3BhZDI7IFwKICAgbG9uZyBzdF9ibG9ja3M7IFwKLSAgbG9uZyBzdF9hdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7IFwKLSAgbG9uZyBzdF9tdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7IFwKLSAgbG9uZyBzdF9jdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2F0aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X210aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2N0aW07IFwKICAgdW5zaWduZWQgaW50IF9fdW51c2VkNDsgXAogICB1bnNpZ25lZCBpbnQgX191bnVzZWQ1OyBcCiAKLSNlbGlmIGRlZmluZWQoX19taXBzX18pCisjZWxpZiBkZWZpbmVkKF9fbWlwc19fKSAmJiAhZGVmaW5lZChfX0xQNjRfXykKICNkZWZpbmUgX19TVEFUNjRfQk9EWSBcCiAgIHVuc2lnbmVkIGludCBzdF9kZXY7IFwKICAgdW5zaWduZWQgaW50IF9fcGFkMFszXTsgXAogICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOyBcCi0gIHVuc2lnbmVkIGludCBzdF9tb2RlOyBcCi0gIHVuc2lnbmVkIGludCBzdF9ubGluazsgXAorICBtb2RlX3Qgc3RfbW9kZTsgXAorICBubGlua190IHN0X25saW5rOyBcCiAgIHVpZF90IHN0X3VpZDsgXAogICBnaWRfdCBzdF9naWQ7IFwKICAgdW5zaWduZWQgaW50IHN0X3JkZXY7IFwKICAgdW5zaWduZWQgaW50IF9fcGFkMVszXTsgXAogICBsb25nIGxvbmcgc3Rfc2l6ZTsgXAotICB1bnNpZ25lZCBpbnQgc3RfYXRpbWU7IFwKLSAgdW5zaWduZWQgaW50IHN0X2F0aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgaW50IHN0X210aW1lOyBcCi0gIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOyBcCi0gIHVuc2lnbmVkIGludCBzdF9jdGltZTsgXAotICB1bnNpZ25lZCBpbnQgc3RfY3RpbWVfbnNlYzsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfYXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfbXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfY3RpbTsgXAogICB1bnNpZ25lZCBpbnQgc3RfYmxrc2l6ZTsgXAogICB1bnNpZ25lZCBpbnQgX19wYWQyOyBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9ibG9ja3M7IFwKIAogI2VsaWYgZGVmaW5lZChfX3g4Nl82NF9fKQogI2RlZmluZSBfX1NUQVQ2NF9CT0RZIFwKLSAgdW5zaWduZWQgbG9uZyBzdF9kZXY7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9pbm87IFwKKyAgZGV2X3Qgc3RfZGV2OyBcCisgIGlub190IHN0X2lubzsgXAogICB1bnNpZ25lZCBsb25nIHN0X25saW5rOyBcCi0gIHVuc2lnbmVkIGludCBzdF9tb2RlOyBcCisgIG1vZGVfdCBzdF9tb2RlOyBcCiAgIHVpZF90IHN0X3VpZDsgXAogICBnaWRfdCBzdF9naWQ7IFwKICAgdW5zaWduZWQgaW50IF9fcGFkMDsgXAotICB1bnNpZ25lZCBsb25nIHN0X3JkZXY7IFwKLSAgbG9uZyBzdF9zaXplOyBcCisgIGRldl90IHN0X3JkZXY7IFwKKyAgb2ZmX3Qgc3Rfc2l6ZTsgXAogICBsb25nIHN0X2Jsa3NpemU7IFwKICAgbG9uZyBzdF9ibG9ja3M7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2F0aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X210aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2N0aW07IFwKICAgbG9uZyBfX3BhZDNbM107IFwKIAotI2Vsc2UKKyNlbHNlIC8qIF9fYXJtX18gfHwgX19pMzg2X18gKi8KICNkZWZpbmUgX19TVEFUNjRfQk9EWSBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9kZXY7IFwKICAgdW5zaWduZWQgY2hhciBfX3BhZDBbNF07IFwKICAgdW5zaWduZWQgbG9uZyBfX3N0X2lubzsgXAogICB1bnNpZ25lZCBpbnQgc3RfbW9kZTsgXAotICB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7IFwKKyAgbmxpbmtfdCBzdF9ubGluazsgXAogICB1aWRfdCBzdF91aWQ7IFwKICAgZ2lkX3Qgc3RfZ2lkOyBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OyBcCkBAIC0xMTcsMTIgKzEwNyw5IEBACiAgIGxvbmcgbG9uZyBzdF9zaXplOyBcCiAgIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsgXAogICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfYmxvY2tzOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9hdGltOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9tdGltOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9jdGltOyBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87IFwKIAogI2VuZGlmCkBAIC0xMzIsOSArMTE5LDE0IEBACiAKICN1bmRlZiBfX1NUQVQ2NF9CT0RZCiAKLSNkZWZpbmUgc3RfYXRpbWVuc2VjIHN0X2F0aW1lX25zZWMKLSNkZWZpbmUgc3RfbXRpbWVuc2VjIHN0X210aW1lX25zZWMKLSNkZWZpbmUgc3RfY3RpbWVuc2VjIHN0X2N0aW1lX25zZWMKKy8qIENvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9ucyBvZiBQT1NJWC4gKi8KKyNkZWZpbmUgc3RfYXRpbWUgc3RfYXRpbS50dl9zZWMKKyNkZWZpbmUgc3RfbXRpbWUgc3RfbXRpbS50dl9zZWMKKyNkZWZpbmUgc3RfY3RpbWUgc3RfY3RpbS50dl9zZWMKKy8qIENvbXBhdGliaWxpdHkgd2l0aCBnbGliYy4gKi8KKyNkZWZpbmUgc3RfYXRpbWVuc2VjIHN0X2F0aW0udHZfbnNlYworI2RlZmluZSBzdF9tdGltZW5zZWMgc3RfbXRpbS50dl9uc2VjCisjZGVmaW5lIHN0X2N0aW1lbnNlYyBzdF9jdGltLnR2X25zZWMKIAogI2lmZGVmIF9fVVNFX0JTRAogLyogUGVybWlzc2lvbiBtYWNyb3MgcHJvdmlkZWQgYnkgZ2xpYmMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBCU0RzLiAqLwpAQCAtMTc5LDcgKzE3MSw4IEBACiB9CiAjZW5kaWYgLyogZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKSAqLwogCi1leHRlcm4gaW50IG1rZmlmbyhjb25zdCBjaGFyKiwgbW9kZV90KTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IG1rZmlmbyhjb25zdCBjaGFyKiwgbW9kZV90KTspCitleHRlcm4gaW50IG1rZmlmb2F0KGludCwgY29uc3QgY2hhciosIG1vZGVfdCk7CiAKIGV4dGVybiBpbnQgZmNobW9kYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90LCBpbnQpOwogZXh0ZXJuIGludCBta2RpcmF0KGludCwgY29uc3QgY2hhciosIG1vZGVfdCk7CkBAIC0xOTAsNiArMTgzLDEwIEBACiBleHRlcm4gaW50IHV0aW1lbnNhdChpbnQgZmQsIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyB0aW1lc1syXSwgaW50IGZsYWdzKTsKIGV4dGVybiBpbnQgZnV0aW1lbnMoaW50IGZkLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMgdGltZXNbMl0pOwogCisjaWYgX19BTkRST0lEX0FQSV9fIDwgMjEKKyNpbmNsdWRlIDxhbmRyb2lkL2xlZ2FjeV9zeXNfc3RhdF9pbmxpbmVzLmg+CisjZW5kaWYKKwogX19FTkRfREVDTFMKIAogI2VuZGlmIC8qIF9TWVNfU1RBVF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9zeXNjYWxsLmggYi9saWJjL2luY2x1ZGUvc3lzL3N5c2NhbGwuaAppbmRleCAzNGEyOWRmLi4yMWVhZjMzIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3N5c2NhbGwuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3N5c2NhbGwuaApAQCAtMjUsMjAgKzI1LDEzIEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX1NZU19TWVNDQUxMX0hfCiAjZGVmaW5lIF9TWVNfU1lTQ0FMTF9IXwogCi0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxhc20vdW5pc3RkLmg+CisjaW5jbHVkZSA8YXNtL3VuaXN0ZC5oPiAvKiBMaW51eCBrZXJuZWwgX19OUl8qIG5hbWVzLiAqLworI2luY2x1ZGUgPHN5cy9nbGliYy1zeXNjYWxscy5oPiAvKiBnbGliYy1jb21wYXRpYmxlIFNZU18qIGFsaWFzZXMuICovCiAKLSNpbmNsdWRlIDxzeXMvZ2xpYmMtc3lzY2FsbHMuaD4gLyogZ2xpYmMtY29tcGF0aWJsZSBTWVNfKiBhbGlhc2VzIGZvciBvdXIgX19OUl8qIG5hbWVzLiAqLwotCi1fX0JFR0lOX0RFQ0xTCi0KLWxvbmcgc3lzY2FsbChsb25nIG51bWJlciwgLi4uKTsKLQotX19FTkRfREVDTFMKKy8qIFRoZSBzeXNjYWxsIGZ1bmN0aW9uIGl0c2VsZiBpcyBkZWNsYXJlZCBpbiA8dW5pc3RkLmg+LCBub3QgaGVyZS4gKi8KIAogI2VuZGlmIC8qIF9TWVNfU1lTQ0FMTF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9zeXNjb25mLmggYi9saWJjL2luY2x1ZGUvc3lzL3N5c2NvbmYuaAppbmRleCAzZDA1OGQ3Li5jYTMyMTMyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3N5c2NvbmYuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3N5c2NvbmYuaApAQCAtNTAsNyArNTAsNyBAQAogI2RlZmluZSBfU0NfUEFTU19NQVggICAgICAgICAgICAweDAwMGMKICNkZWZpbmUgX1NDXzJfQ19CSU5EICAgICAgICAgICAgMHgwMDBkCiAjZGVmaW5lIF9TQ18yX0NfREVWICAgICAgICAgICAgIDB4MDAwZQotI2RlZmluZSBfU0NfMl9DX1ZFUlNJT04gICAgICAgICAweDAwMGYKKyNkZWZpbmUgX1NDXzJfQ19WRVJTSU9OICAgICAgICAgMHgwMDBmICAvKiBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDgsIFRPRE86IHJlbW92ZSBpdC4gKi8KICNkZWZpbmUgX1NDXzJfQ0hBUl9URVJNICAgICAgICAgMHgwMDEwCiAjZGVmaW5lIF9TQ18yX0ZPUlRfREVWICAgICAgICAgIDB4MDAxMQogI2RlZmluZSBfU0NfMl9GT1JUX1JVTiAgICAgICAgICAweDAwMTIKQEAgLTY4LDcgKzY4LDcgQEAKICNkZWZpbmUgX1NDX1hPUEVOX0VOSF9JMThOICAgICAgMHgwMDFlCiAjZGVmaW5lIF9TQ19YT1BFTl9TSE0gICAgICAgICAgIDB4MDAxZgogI2RlZmluZSBfU0NfWE9QRU5fVkVSU0lPTiAgICAgICAweDAwMjAKLSNkZWZpbmUgX1NDX1hPUEVOX1hDVV9WRVJTSU9OICAgMHgwMDIxCisjZGVmaW5lIF9TQ19YT1BFTl9YQ1VfVkVSU0lPTiAgIDB4MDAyMSAgLyogT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LCBUT0RPOiByZW1vdmUgaXQuICovCiAjZGVmaW5lIF9TQ19YT1BFTl9SRUFMVElNRSAgICAgIDB4MDAyMgogI2RlZmluZSBfU0NfWE9QRU5fUkVBTFRJTUVfVEhSRUFEUyAgMHgwMDIzCiAjZGVmaW5lIF9TQ19YT1BFTl9MRUdBQ1kgICAgICAgIDB4MDAyNApAQCAtNzcsMTAgKzc3LDEwIEBACiAjZGVmaW5lIF9TQ19QQUdFU0laRSAgICAgICAgICAgIDB4MDAyNwogI2RlZmluZSBfU0NfUEFHRV9TSVpFICAgICAgICAgICAweDAwMjgKICNkZWZpbmUgX1NDX1hPUEVOX1VOSVggICAgICAgICAgMHgwMDI5Ci0jZGVmaW5lIF9TQ19YQlM1X0lMUDMyX09GRjMyICAgIDB4MDAyYQotI2RlZmluZSBfU0NfWEJTNV9JTFAzMl9PRkZCSUcgICAweDAwMmIKLSNkZWZpbmUgX1NDX1hCUzVfTFA2NF9PRkY2NCAgICAgMHgwMDJjCi0jZGVmaW5lIF9TQ19YQlM1X0xQQklHX09GRkJJRyAgIDB4MDAyZAorI2RlZmluZSBfU0NfWEJTNV9JTFAzMl9PRkYzMiAgICAweDAwMmEgIC8qIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOCwgVE9ETzogcmVtb3ZlIGl0LiAqLworI2RlZmluZSBfU0NfWEJTNV9JTFAzMl9PRkZCSUcgICAweDAwMmIgIC8qIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOCwgVE9ETzogcmVtb3ZlIGl0LiAqLworI2RlZmluZSBfU0NfWEJTNV9MUDY0X09GRjY0ICAgICAweDAwMmMgIC8qIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOCwgVE9ETzogcmVtb3ZlIGl0LiAqLworI2RlZmluZSBfU0NfWEJTNV9MUEJJR19PRkZCSUcgICAweDAwMmQgIC8qIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOCwgVE9ETzogcmVtb3ZlIGl0LiAqLwogI2RlZmluZSBfU0NfQUlPX0xJU1RJT19NQVggICAgICAweDAwMmUKICNkZWZpbmUgX1NDX0FJT19NQVggICAgICAgICAgICAgMHgwMDJmCiAjZGVmaW5lIF9TQ19BSU9fUFJJT19ERUxUQV9NQVggIDB4MDAzMApAQCAtMTI5LDYgKzEyOSw2NSBAQAogI2RlZmluZSBfU0NfQVZQSFlTX1BBR0VTICAgICAgICAgICAgICAgIDB4MDA2MwogI2RlZmluZSBfU0NfTU9OT1RPTklDX0NMT0NLICAgICAgICAgICAgIDB4MDA2NAogCisjZGVmaW5lIF9TQ18yX1BCUyAgICAgICAgICAgICAgIDB4MDA2NQorI2RlZmluZSBfU0NfMl9QQlNfQUNDT1VOVElORyAgICAweDAwNjYKKyNkZWZpbmUgX1NDXzJfUEJTX0NIRUNLUE9JTlQgICAgMHgwMDY3CisjZGVmaW5lIF9TQ18yX1BCU19MT0NBVEUgICAgICAgIDB4MDA2OAorI2RlZmluZSBfU0NfMl9QQlNfTUVTU0FHRSAgICAgICAweDAwNjkKKyNkZWZpbmUgX1NDXzJfUEJTX1RSQUNLICAgICAgICAgMHgwMDZhCisjZGVmaW5lIF9TQ19BRFZJU09SWV9JTkZPICAgICAgIDB4MDA2YgorI2RlZmluZSBfU0NfQkFSUklFUlMgICAgICAgICAgICAweDAwNmMKKyNkZWZpbmUgX1NDX0NMT0NLX1NFTEVDVElPTiAgICAgMHgwMDZkCisjZGVmaW5lIF9TQ19DUFVUSU1FICAgICAgICAgICAgIDB4MDA2ZQorI2RlZmluZSBfU0NfSE9TVF9OQU1FX01BWCAgICAgICAweDAwNmYKKyNkZWZpbmUgX1NDX0lQVjYgICAgICAgICAgICAgICAgMHgwMDcwCisjZGVmaW5lIF9TQ19SQVdfU09DS0VUUyAgICAgICAgIDB4MDA3MQorI2RlZmluZSBfU0NfUkVBREVSX1dSSVRFUl9MT0NLUyAweDAwNzIKKyNkZWZpbmUgX1NDX1JFR0VYUCAgICAgICAgICAgICAgMHgwMDczCisjZGVmaW5lIF9TQ19TSEVMTCAgICAgICAgICAgICAgIDB4MDA3NAorI2RlZmluZSBfU0NfU1BBV04gICAgICAgICAgICAgICAweDAwNzUKKyNkZWZpbmUgX1NDX1NQSU5fTE9DS1MgICAgICAgICAgMHgwMDc2CisjZGVmaW5lIF9TQ19TUE9SQURJQ19TRVJWRVIgICAgIDB4MDA3NworI2RlZmluZSBfU0NfU1NfUkVQTF9NQVggICAgICAgICAweDAwNzgKKyNkZWZpbmUgX1NDX1NZTUxPT1BfTUFYICAgICAgICAgMHgwMDc5CisjZGVmaW5lIF9TQ19USFJFQURfQ1BVVElNRSAgICAgIDB4MDA3YQorI2RlZmluZSBfU0NfVEhSRUFEX1BST0NFU1NfU0hBUkVEICAgICAgIDB4MDA3YgorI2RlZmluZSBfU0NfVEhSRUFEX1JPQlVTVF9QUklPX0lOSEVSSVQgIDB4MDA3YworI2RlZmluZSBfU0NfVEhSRUFEX1JPQlVTVF9QUklPX1BST1RFQ1QgIDB4MDA3ZAorI2RlZmluZSBfU0NfVEhSRUFEX1NQT1JBRElDX1NFUlZFUiAgICAgIDB4MDA3ZQorI2RlZmluZSBfU0NfVElNRU9VVFMgICAgICAgICAgICAweDAwN2YKKyNkZWZpbmUgX1NDX1RSQUNFICAgICAgICAgICAgICAgMHgwMDgwCisjZGVmaW5lIF9TQ19UUkFDRV9FVkVOVF9GSUxURVIgIDB4MDA4MQorI2RlZmluZSBfU0NfVFJBQ0VfRVZFTlRfTkFNRV9NQVggIDB4MDA4MgorI2RlZmluZSBfU0NfVFJBQ0VfSU5IRVJJVCAgICAgICAweDAwODMKKyNkZWZpbmUgX1NDX1RSQUNFX0xPRyAgICAgICAgICAgMHgwMDg0CisjZGVmaW5lIF9TQ19UUkFDRV9OQU1FX01BWCAgICAgIDB4MDA4NQorI2RlZmluZSBfU0NfVFJBQ0VfU1lTX01BWCAgICAgICAweDAwODYKKyNkZWZpbmUgX1NDX1RSQUNFX1VTRVJfRVZFTlRfTUFYICAweDAwODcKKyNkZWZpbmUgX1NDX1RZUEVEX01FTU9SWV9PQkpFQ1RTICAweDAwODgKKyNkZWZpbmUgX1NDX1Y3X0lMUDMyX09GRjMyICAgICAgMHgwMDg5CisjZGVmaW5lIF9TQ19WN19JTFAzMl9PRkZCSUcgICAgIDB4MDA4YQorI2RlZmluZSBfU0NfVjdfTFA2NF9PRkY2NCAgICAgICAweDAwOGIKKyNkZWZpbmUgX1NDX1Y3X0xQQklHX09GRkJJRyAgICAgMHgwMDhjCisjZGVmaW5lIF9TQ19YT1BFTl9TVFJFQU1TICAgICAgIDB4MDA4ZAorI2RlZmluZSBfU0NfWE9QRU5fVVVDUCAgICAgICAgICAweDAwOGUKKworI2RlZmluZSBfU0NfTEVWRUwxX0lDQUNIRV9TSVpFICAgICAgMHgwMDhmCisjZGVmaW5lIF9TQ19MRVZFTDFfSUNBQ0hFX0FTU09DICAgICAweDAwOTAKKyNkZWZpbmUgX1NDX0xFVkVMMV9JQ0FDSEVfTElORVNJWkUgIDB4MDA5MQorI2RlZmluZSBfU0NfTEVWRUwxX0RDQUNIRV9TSVpFICAgICAgMHgwMDkyCisjZGVmaW5lIF9TQ19MRVZFTDFfRENBQ0hFX0FTU09DICAgICAweDAwOTMKKyNkZWZpbmUgX1NDX0xFVkVMMV9EQ0FDSEVfTElORVNJWkUgIDB4MDA5NAorI2RlZmluZSBfU0NfTEVWRUwyX0NBQ0hFX1NJWkUgICAgICAgMHgwMDk1CisjZGVmaW5lIF9TQ19MRVZFTDJfQ0FDSEVfQVNTT0MgICAgICAweDAwOTYKKyNkZWZpbmUgX1NDX0xFVkVMMl9DQUNIRV9MSU5FU0laRSAgIDB4MDA5NworI2RlZmluZSBfU0NfTEVWRUwzX0NBQ0hFX1NJWkUgICAgICAgMHgwMDk4CisjZGVmaW5lIF9TQ19MRVZFTDNfQ0FDSEVfQVNTT0MgICAgICAweDAwOTkKKyNkZWZpbmUgX1NDX0xFVkVMM19DQUNIRV9MSU5FU0laRSAgIDB4MDA5YQorI2RlZmluZSBfU0NfTEVWRUw0X0NBQ0hFX1NJWkUgICAgICAgMHgwMDliCisjZGVmaW5lIF9TQ19MRVZFTDRfQ0FDSEVfQVNTT0MgICAgICAweDAwOWMKKyNkZWZpbmUgX1NDX0xFVkVMNF9DQUNIRV9MSU5FU0laRSAgIDB4MDA5ZAorCiBsb25nIHN5c2NvbmYoaW50KTsKIAogX19FTkRfREVDTFMKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvc3lzaW5mby5oIGIvbGliYy9pbmNsdWRlL3N5cy9zeXNpbmZvLmgKaW5kZXggYzdlNDZlNi4uYjY2YmM4ZSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9zeXNpbmZvLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9zeXNpbmZvLmgKQEAgLTMzLDcgKzMzLDE1IEBACiAKIF9fQkVHSU5fREVDTFMKIAotZXh0ZXJuIGludCBzeXNpbmZvIChzdHJ1Y3Qgc3lzaW5mbyAqaW5mbyk7CitpbnQgc3lzaW5mbyhzdHJ1Y3Qgc3lzaW5mbyogaW5mbyk7CisKK2ludCBnZXRfbnByb2NzX2NvbmYodm9pZCk7CisKK2ludCBnZXRfbnByb2NzKHZvaWQpOworCitsb25nIGdldF9waHlzX3BhZ2VzKHZvaWQpOworCitsb25nIGdldF9hdnBoeXNfcGFnZXModm9pZCk7CiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvdHlwZXMuaCBiL2xpYmMvaW5jbHVkZS9zeXMvdHlwZXMuaAppbmRleCBhNWZhNjkyLi5hNmIwZmQ4IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3R5cGVzLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy90eXBlcy5oCkBAIC05MCwxNiArOTAsMTQgQEAKIHR5cGVkZWYgX19rZXJuZWxfdGltZV90IF9fdGltZV90OwogdHlwZWRlZiBfX3RpbWVfdCB0aW1lX3Q7CiAKLS8qIFRoaXMgaGlzdG9yaWNhbCBhY2NpZGVudCBtZWFucyB0aGF0IHdlIGhhZCBhIDMyLWJpdCBvZmZfdCBvbiAzMi1iaXQgYXJjaGl0ZWN0dXJlcy4gKi8KLSNpZiAhZGVmaW5lZChfX0xQNjRfXykKLXR5cGVkZWYgX19rZXJuZWxfb2ZmX3Qgb2ZmX3Q7Ci10eXBlZGVmIF9fa2VybmVsX2xvZmZfdCBsb2ZmX3Q7CisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KSB8fCBkZWZpbmVkKF9fTFA2NF9fKQordHlwZWRlZiBpbnQ2NF90IG9mZl90OwordHlwZWRlZiBvZmZfdCBsb2ZmX3Q7CiB0eXBlZGVmIGxvZmZfdCBvZmY2NF90OwogI2Vsc2UKLS8qIFdlIGNvdWxkIHJlLXVzZSB0aGUgTFAzMiBkZWZpbml0aW9ucywgYnV0IHRoYXQgd291bGQgbWVhbiB0aGF0IGFsdGhvdWdoIG9mZl90IGFuZCBsb2ZmX3Qvb2ZmNjRfdAotICogd291bGQgYmUgdGhlIHNhbWUgc2l6ZSwgdGhleSB3b3VsZG4ndCBhY3R1YWxseSBiZSB0aGUgc2FtZSB0eXBlLCB3aGljaCBjYW4gbGVhZCB0byB3YXJuaW5ncy4gKi8KKy8qIFRoaXMgaGlzdG9yaWNhbCBhY2NpZGVudCBtZWFucyB0aGF0IHdlIGhhZCBhIDMyLWJpdCBvZmZfdCBvbiAzMi1iaXQgYXJjaGl0ZWN0dXJlcy4gKi8KIHR5cGVkZWYgX19rZXJuZWxfb2ZmX3Qgb2ZmX3Q7Ci10eXBlZGVmIG9mZl90IGxvZmZfdDsKK3R5cGVkZWYgX19rZXJuZWxfbG9mZl90IGxvZmZfdDsKIHR5cGVkZWYgbG9mZl90IG9mZjY0X3Q7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy91Y29udGV4dC5oIGIvbGliYy9pbmNsdWRlL3N5cy91Y29udGV4dC5oCmluZGV4IGRkMmEwYmIuLmI2OGQ3MDQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvdWNvbnRleHQuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3Vjb250ZXh0LmgKQEAgLTE4MCw2ICsxODAsMjUgQEAKICAgfSBmcF9yOwogfSBmcHJlZ3NldF90OwogCisjaWZkZWYgX19MUDY0X18KK3R5cGVkZWYgc3RydWN0IHsKKyAgZ3JlZ3NldF90IGdyZWdzOworICBmcHJlZ3NldF90IGZwcmVnczsKKyAgZ3JlZ190IG1kaGk7CisgIGdyZWdfdCBoaTE7CisgIGdyZWdfdCBoaTI7CisgIGdyZWdfdCBoaTM7CisgIGdyZWdfdCBtZGxvOworICBncmVnX3QgbG8xOworICBncmVnX3QgbG8yOworICBncmVnX3QgbG8zOworICBncmVnX3QgcGM7CisgIHVpbnQzMl90IGZwY19jc3I7CisgIHVpbnQzMl90IHVzZWRfbWF0aDsKKyAgdWludDMyX3QgZHNwOworICB1aW50MzJfdCByZXNlcnZlZDsKK30gbWNvbnRleHRfdDsKKyNlbHNlCiB0eXBlZGVmIHN0cnVjdCB7CiAgIHVuc2lnbmVkIHJlZ21hc2s7CiAgIHVuc2lnbmVkIHN0YXR1czsKQEAgLTIwMCw2ICsyMTksNyBAQAogICB1bnNpZ25lZCBsb25nIGhpMzsKICAgdW5zaWduZWQgbG9uZyBsbzM7CiB9IG1jb250ZXh0X3Q7CisjZW5kaWYKIAogdHlwZWRlZiBzdHJ1Y3QgdWNvbnRleHQgewogICB1bnNpZ25lZCBsb25nIHVjX2ZsYWdzOwpAQCAtMjA5LDEwICsyMjksNiBAQAogICBzaWdzZXRfdCB1Y19zaWdtYXNrOwogfSB1Y29udGV4dF90OwogCi0jZWxpZiBkZWZpbmVkKF9fbWlwczY0X18pCi0KLSNlcnJvciBUT0RPCi0KICNlbGlmIGRlZmluZWQoX194ODZfNjRfXykKIAogZW51bSB7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3VzZXIuaCBiL2xpYmMvaW5jbHVkZS9zeXMvdXNlci5oCmluZGV4IDBlMzY4MjUuLmIzNzBhZGQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvdXNlci5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvdXNlci5oCkBAIC0zMSw2ICszMSw3IEBACiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4gLyogRm9yIFBBR0VfU0laRS4gKi8KKyNpbmNsdWRlIDxzdGRkZWYuaD4gLyogRm9yIHNpemVfdC4gKi8KIAogX19CRUdJTl9ERUNMUwogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3Zmcy5oIGIvbGliYy9pbmNsdWRlL3N5cy92ZnMuaAppbmRleCA1MzU4ZmZiLi4xZmJjOGJlIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3Zmcy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvdmZzLmgKQEAgLTI1LDYgKzI1LDcgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfU1lTX1ZGU19IXwogI2RlZmluZSBfU1lTX1ZGU19IXwogCkBAIC0xMTQsNTAgKzExNSwyNyBAQAogI2RlZmluZSBfU1RBVEZTX0ZfRlJTSVpFCiAjZGVmaW5lIF9TVEFURlNfRl9GTEFHUwogCi0jZGVmaW5lICBBREZTX1NVUEVSX01BR0lDICAgICAgMHhhZGY1Ci0jZGVmaW5lICBBRkZTX1NVUEVSX01BR0lDICAgICAgMHhBREZGCi0jZGVmaW5lICBCRUZTX1NVUEVSX01BR0lDICAgICAgMHg0MjQ2NTMzMQotI2RlZmluZSAgQkZTX01BR0lDICAgICAgICAgICAgIDB4MUJBREZBQ0UKLSNkZWZpbmUgIENJRlNfTUFHSUNfTlVNQkVSICAgICAweEZGNTM0RDQyCi0jZGVmaW5lICBDT0RBX1NVUEVSX01BR0lDICAgICAgMHg3Mzc1NzI0NQotI2RlZmluZSAgQ09IX1NVUEVSX01BR0lDICAgICAgIDB4MDEyRkY3QjcKLSNkZWZpbmUgIENSQU1GU19NQUdJQyAgICAgICAgICAweDI4Y2QzZDQ1Ci0jZGVmaW5lICBERVZGU19TVVBFUl9NQUdJQyAgICAgMHgxMzczCi0jZGVmaW5lICBFRlNfU1VQRVJfTUFHSUMgICAgICAgMHgwMDQxNEE1MwotI2RlZmluZSAgRVhUX1NVUEVSX01BR0lDICAgICAgIDB4MTM3RAotI2RlZmluZSAgRVhUMl9PTERfU1VQRVJfTUFHSUMgIDB4RUY1MQotI2RlZmluZSAgRVhUMl9TVVBFUl9NQUdJQyAgICAgIDB4RUY1MwotI2RlZmluZSAgRVhUM19TVVBFUl9NQUdJQyAgICAgIDB4RUY1MwotI2RlZmluZSAgSEZTX1NVUEVSX01BR0lDICAgICAgIDB4NDI0NAotI2RlZmluZSAgSFBGU19TVVBFUl9NQUdJQyAgICAgIDB4Rjk5NUU4NDkKLSNkZWZpbmUgIEhVR0VUTEJGU19NQUdJQyAgICAgICAweDk1ODQ1OGY2Ci0jZGVmaW5lICBJU09GU19TVVBFUl9NQUdJQyAgICAgMHg5NjYwCi0jZGVmaW5lICBKRkZTMl9TVVBFUl9NQUdJQyAgICAgMHg3MmI2Ci0jZGVmaW5lICBKRlNfU1VQRVJfTUFHSUMgICAgICAgMHgzMTUzNDY0YQotI2RlZmluZSAgTUlOSVhfU1VQRVJfTUFHSUMgICAgIDB4MTM3RiAvKiBvcmlnLiBtaW5peCAqLwotI2RlZmluZSAgTUlOSVhfU1VQRVJfTUFHSUMyICAgIDB4MTM4RiAvKiAzMCBjaGFyIG1pbml4ICovCi0jZGVmaW5lICBNSU5JWDJfU1VQRVJfTUFHSUMgICAgMHgyNDY4IC8qIG1pbml4IFYyICovCi0jZGVmaW5lICBNSU5JWDJfU1VQRVJfTUFHSUMyICAgMHgyNDc4IC8qIG1pbml4IFYyLCAzMCBjaGFyIG5hbWVzICovCi0jZGVmaW5lICBNU0RPU19TVVBFUl9NQUdJQyAgICAgMHg0ZDQ0Ci0jZGVmaW5lICBOQ1BfU1VQRVJfTUFHSUMgICAgICAgMHg1NjRjCi0jZGVmaW5lICBORlNfU1VQRVJfTUFHSUMgICAgICAgMHg2OTY5Ci0jZGVmaW5lICBOVEZTX1NCX01BR0lDICAgICAgICAgMHg1MzQ2NTQ0ZQotI2RlZmluZSAgT1BFTlBST01fU1VQRVJfTUFHSUMgIDB4OWZhMQotI2RlZmluZSAgUFJPQ19TVVBFUl9NQUdJQyAgICAgIDB4OWZhMAotI2RlZmluZSAgUU5YNF9TVVBFUl9NQUdJQyAgICAgIDB4MDAyZgotI2RlZmluZSAgUkVJU0VSRlNfU1VQRVJfTUFHSUMgIDB4NTI2NTQ5NzMKLSNkZWZpbmUgIFJPTUZTX01BR0lDICAgICAgICAgICAweDcyNzUKLSNkZWZpbmUgIFNNQl9TVVBFUl9NQUdJQyAgICAgICAweDUxN0IKLSNkZWZpbmUgIFNZU1YyX1NVUEVSX01BR0lDICAgICAweDAxMkZGN0I2Ci0jZGVmaW5lICBTWVNWNF9TVVBFUl9NQUdJQyAgICAgMHgwMTJGRjdCNQotI2RlZmluZSAgVE1QRlNfTUFHSUMgICAgICAgICAgIDB4MDEwMjE5OTQKLSNkZWZpbmUgIFVERl9TVVBFUl9NQUdJQyAgICAgICAweDE1MDEzMzQ2Ci0jZGVmaW5lICBVRlNfTUFHSUMgICAgICAgICAgICAgMHgwMDAxMTk1NAotI2RlZmluZSAgVVNCREVWSUNFX1NVUEVSX01BR0lDIDB4OWZhMgotI2RlZmluZSAgVlhGU19TVVBFUl9NQUdJQyAgICAgIDB4YTUwMUZDRjUKLSNkZWZpbmUgIFhFTklYX1NVUEVSX01BR0lDICAgICAweDAxMkZGN0I0Ci0jZGVmaW5lICBYRlNfU1VQRVJfTUFHSUMgICAgICAgMHg1ODQ2NTM0MgotI2RlZmluZSAgX1hJQUZTX1NVUEVSX01BR0lDICAgIDB4MDEyRkQxNkQKKy8qIFB1bGwgaW4gdGhlIGtlcm5lbCBtYWdpYyBudW1iZXJzLiAqLworI2luY2x1ZGUgPGxpbnV4L21hZ2ljLmg+CisvKiBBZGQgaW4gb25lcyB0aGF0IHdlIGhhZCBoaXN0b3JpY2FsbHkgdGhhdCBhcmVuJ3QgaW4gdGhlIHVhcGkgaGVhZGVyLiAqLworI2RlZmluZSBCRUZTX1NVUEVSX01BR0lDICAgICAgMHg0MjQ2NTMzMQorI2RlZmluZSBCRlNfTUFHSUMgICAgICAgICAgICAgMHgxQkFERkFDRQorI2RlZmluZSBDSUZTX01BR0lDX05VTUJFUiAgICAgMHhGRjUzNEQ0MgorI2RlZmluZSBDT0hfU1VQRVJfTUFHSUMgICAgICAgMHgwMTJGRjdCNworI2RlZmluZSBERVZGU19TVVBFUl9NQUdJQyAgICAgMHgxMzczCisjZGVmaW5lIEVYVF9TVVBFUl9NQUdJQyAgICAgICAweDEzN0QKKyNkZWZpbmUgRVhUMl9PTERfU1VQRVJfTUFHSUMgIDB4RUY1MQorI2RlZmluZSBIRlNfU1VQRVJfTUFHSUMgICAgICAgMHg0MjQ0CisjZGVmaW5lIEpGU19TVVBFUl9NQUdJQyAgICAgICAweDMxNTM0NjRhCisjZGVmaW5lIE5URlNfU0JfTUFHSUMgICAgICAgICAweDUzNDY1NDRlCisjZGVmaW5lIFJPTUZTX01BR0lDICAgICAgICAgICAweDcyNzUKKyNkZWZpbmUgU1lTVjJfU1VQRVJfTUFHSUMgICAgIDB4MDEyRkY3QjYKKyNkZWZpbmUgU1lTVjRfU1VQRVJfTUFHSUMgICAgIDB4MDEyRkY3QjUKKyNkZWZpbmUgVURGX1NVUEVSX01BR0lDICAgICAgIDB4MTUwMTMzNDYKKyNkZWZpbmUgVUZTX01BR0lDICAgICAgICAgICAgIDB4MDAwMTE5NTQKKyNkZWZpbmUgVlhGU19TVVBFUl9NQUdJQyAgICAgIDB4YTUwMUZDRjUKKyNkZWZpbmUgWEVOSVhfU1VQRVJfTUFHSUMgICAgIDB4MDEyRkY3QjQKKyNkZWZpbmUgWEZTX1NVUEVSX01BR0lDICAgICAgIDB4NTg0NjUzNDIKIAogZXh0ZXJuIGludCBzdGF0ZnMoY29uc3QgY2hhciosIHN0cnVjdCBzdGF0ZnMqKSBfX25vbm51bGwoKDEsIDIpKTsKIGV4dGVybiBpbnQgc3RhdGZzNjQoY29uc3QgY2hhciosIHN0cnVjdCBzdGF0ZnM2NCopIF9fbm9ubnVsbCgoMSwgMikpOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5c2xvZy5oIGIvbGliYy9pbmNsdWRlL3N5c2xvZy5oCmluZGV4IGNiY2VhYjIuLjgwMDBmMDMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXNsb2cuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzbG9nLmgKQEAgLTQ3LDYgKzQ3LDcgQEAKIAogI2RlZmluZSBMT0dfUFJJTUFTSyA3CiAjZGVmaW5lIExPR19QUkkoeCkgKCh4KSAmIExPR19QUklNQVNLKQorI2RlZmluZSBMT0dfTUFLRVBSSShmYWMsIHByaSkgKChmYWMpIHwgKHByaSkpCiAKIC8qIEZhY2lsaXRpZXMgYXJlIGN1cnJlbnRseSBpZ25vcmVkIG9uIEFuZHJvaWQuICovCiAjZGVmaW5lIExPR19LRVJOICAgICAwMDAwCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvdGVybWlvcy5oIGIvbGliYy9pbmNsdWRlL3Rlcm1pb3MuaAppbmRleCBiOTY4NWNhLi42ODNmZGUyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvdGVybWlvcy5oCisrKyBiL2xpYmMvaW5jbHVkZS90ZXJtaW9zLmgKQEAgLTM1LDYgKzM1LDcgQEAKIAogX19CRUdJTl9ERUNMUwogCisjaWYgX19BTkRST0lEX0FQSV9fID49IDIxCiBzcGVlZF90IGNmZ2V0aXNwZWVkKGNvbnN0IHN0cnVjdCB0ZXJtaW9zKik7CiBzcGVlZF90IGNmZ2V0b3NwZWVkKGNvbnN0IHN0cnVjdCB0ZXJtaW9zKik7CiB2b2lkIGNmbWFrZXJhdyhzdHJ1Y3QgdGVybWlvcyopOwpAQCAtNDgsNiArNDksOSBAQAogcGlkX3QgdGNnZXRzaWQoaW50KTsKIGludCB0Y3NlbmRicmVhayhpbnQsIGludCk7CiBpbnQgdGNzZXRhdHRyKGludCwgaW50LCBjb25zdCBzdHJ1Y3QgdGVybWlvcyopOworI2Vsc2UKKyNpbmNsdWRlIDxhbmRyb2lkL2xlZ2FjeV90ZXJtaW9zX2lubGluZXMuaD4KKyNlbmRpZgogCiBfX0VORF9ERUNMUwogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvdGltZS5oIGIvbGliYy9pbmNsdWRlL3RpbWUuaAppbmRleCAzNGE1M2IyLi4xYjBmNmExIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvdGltZS5oCisrKyBiL2xpYmMvaW5jbHVkZS90aW1lLmgKQEAgLTg1LDggKzg1LDEyIEBACiAKIGV4dGVybiBjbG9ja190IGNsb2NrKHZvaWQpIF9fTElCQ19BQklfUFVCTElDX187CiAKLWV4dGVybiBpbnQgY2xvY2tfZ2V0cmVzKGludCwgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKLWV4dGVybiBpbnQgY2xvY2tfZ2V0dGltZShpbnQsIHN0cnVjdCB0aW1lc3BlYyopIF9fTElCQ19BQklfUFVCTElDX187CitleHRlcm4gaW50IGNsb2NrX2dldGNwdWNsb2NraWQocGlkX3QsIGNsb2NraWRfdCopIF9fTElCQ19BQklfUFVCTElDX187CisKK2V4dGVybiBpbnQgY2xvY2tfZ2V0cmVzKGNsb2NraWRfdCwgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKK2V4dGVybiBpbnQgY2xvY2tfZ2V0dGltZShjbG9ja2lkX3QsIHN0cnVjdCB0aW1lc3BlYyopIF9fTElCQ19BQklfUFVCTElDX187CitleHRlcm4gaW50IGNsb2NrX25hbm9zbGVlcChjbG9ja2lkX3QsIGludCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKK2V4dGVybiBpbnQgY2xvY2tfc2V0dGltZShjbG9ja2lkX3QsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyopIF9fTElCQ19BQklfUFVCTElDX187CiAKIGV4dGVybiBpbnQgdGltZXJfY3JlYXRlKGludCwgc3RydWN0IHNpZ2V2ZW50KiwgdGltZXJfdCopIF9fTElCQ19BQklfUFVCTElDX187CiBleHRlcm4gaW50IHRpbWVyX2RlbGV0ZSh0aW1lcl90KSBfX0xJQkNfQUJJX1BVQkxJQ19fOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3VuaXN0ZC5oIGIvbGliYy9pbmNsdWRlL3VuaXN0ZC5oCmluZGV4IDFiZmRiMGUuLmYwZGUyOWUgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS91bmlzdGQuaAorKysgYi9saWJjL2luY2x1ZGUvdW5pc3RkLmgKQEAgLTI1LDYgKzI1LDcgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfVU5JU1REX0hfCiAjZGVmaW5lIF9VTklTVERfSF8KIApAQCAtMzMsMjAgKzM0LDQ1IEBACiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3lzL3NlbGVjdC5oPgogI2luY2x1ZGUgPHN5cy9zeXNjb25mLmg+Ci0jaW5jbHVkZSA8cGF0aGNvbmYuaD4KKworI2luY2x1ZGUgPG1hY2hpbmUvcG9zaXhfbGltaXRzLmg+CiAKIF9fQkVHSU5fREVDTFMKIAotLyogU3RhbmRhcmQgZmlsZSBkZXNjcmlwdG9yIG51bWJlcnMuICovCiAjZGVmaW5lIFNURElOX0ZJTEVOTwkwCiAjZGVmaW5lIFNURE9VVF9GSUxFTk8JMQogI2RlZmluZSBTVERFUlJfRklMRU5PCTIKIAotLyogVmFsdWVzIGZvciB3aGVuY2UgaW4gZnNlZWsgYW5kIGxzZWVrICovCisjZGVmaW5lIEZfT0sgMAorI2RlZmluZSBYX09LIDEKKyNkZWZpbmUgV19PSyAyCisjZGVmaW5lIFJfT0sgNAorCiAjZGVmaW5lIFNFRUtfU0VUIDAKICNkZWZpbmUgU0VFS19DVVIgMQogI2RlZmluZSBTRUVLX0VORCAyCiAKKyNkZWZpbmUgX1BDX0ZJTEVTSVpFQklUUyAwCisjZGVmaW5lIF9QQ19MSU5LX01BWCAxCisjZGVmaW5lIF9QQ19NQVhfQ0FOT04gMgorI2RlZmluZSBfUENfTUFYX0lOUFVUIDMKKyNkZWZpbmUgX1BDX05BTUVfTUFYIDQKKyNkZWZpbmUgX1BDX1BBVEhfTUFYIDUKKyNkZWZpbmUgX1BDX1BJUEVfQlVGIDYKKyNkZWZpbmUgX1BDXzJfU1lNTElOS1MgNworI2RlZmluZSBfUENfQUxMT0NfU0laRV9NSU4gOAorI2RlZmluZSBfUENfUkVDX0lOQ1JfWEZFUl9TSVpFIDkKKyNkZWZpbmUgX1BDX1JFQ19NQVhfWEZFUl9TSVpFIDEwCisjZGVmaW5lIF9QQ19SRUNfTUlOX1hGRVJfU0laRSAxMQorI2RlZmluZSBfUENfUkVDX1hGRVJfQUxJR04gMTIKKyNkZWZpbmUgX1BDX1NZTUxJTktfTUFYIDEzCisjZGVmaW5lIF9QQ19DSE9XTl9SRVNUUklDVEVEIDE0CisjZGVmaW5lIF9QQ19OT19UUlVOQyAxNQorI2RlZmluZSBfUENfVkRJU0FCTEUgMTYKKyNkZWZpbmUgX1BDX0FTWU5DX0lPIDE3CisjZGVmaW5lIF9QQ19QUklPX0lPIDE4CisjZGVmaW5lIF9QQ19TWU5DX0lPIDE5CisKIGV4dGVybiBjaGFyKiogZW52aXJvbjsKIAogZXh0ZXJuIF9fbm9yZXR1cm4gdm9pZCBfZXhpdChpbnQpOwpAQCAtOTAsMTcgKzExNiw5IEBACiBleHRlcm4gaW50IGdldHJlc3VpZCh1aWRfdCAqcnVpZCwgdWlkX3QgKmV1aWQsIHVpZF90ICpzdWlkKTsKIGV4dGVybiBpbnQgZ2V0cmVzZ2lkKGdpZF90ICpyZ2lkLCBnaWRfdCAqZWdpZCwgZ2lkX3QgKnNnaWQpOwogZXh0ZXJuIGNoYXIqIGdldGxvZ2luKHZvaWQpOwotZXh0ZXJuIGNoYXIqIGdldHVzZXJzaGVsbCh2b2lkKTsKLWV4dGVybiB2b2lkIHNldHVzZXJzaGVsbCh2b2lkKTsKLWV4dGVybiB2b2lkIGVuZHVzZXJzaGVsbCh2b2lkKTsKIAotCi0KLS8qIE1hY3JvcyBmb3IgYWNjZXNzKCkgKi8KLSNkZWZpbmUgUl9PSyAgNCAgLyogUmVhZCAqLwotI2RlZmluZSBXX09LICAyICAvKiBXcml0ZSAqLwotI2RlZmluZSBYX09LICAxICAvKiBFeGVjdXRlICovCi0jZGVmaW5lIEZfT0sgIDAgIC8qIEV4aXN0ZW5jZSAqLworZXh0ZXJuIGxvbmcgZnBhdGhjb25mKGludCwgaW50KTsKK2V4dGVybiBsb25nIHBhdGhjb25mKGNvbnN0IGNoYXIqLCBpbnQpOwogCiBleHRlcm4gaW50IGFjY2Vzcyhjb25zdCBjaGFyKiwgaW50KTsKIGV4dGVybiBpbnQgZmFjY2Vzc2F0KGludCwgY29uc3QgY2hhciosIGludCwgaW50KTsKQEAgLTExMiw3ICsxMzAsNyBAQAogZXh0ZXJuIGludCBmY2hkaXIoaW50KTsKIGV4dGVybiBpbnQgcm1kaXIoY29uc3QgY2hhciAqKTsKIGV4dGVybiBpbnQgcGlwZShpbnQgKik7Ci0jaWZkZWYgX0dOVV9TT1VSQ0UKKyNpZiBkZWZpbmVkKF9fVVNFX0dOVSkKIGV4dGVybiBpbnQgcGlwZTIoaW50ICosIGludCk7CiAjZW5kaWYKIGV4dGVybiBpbnQgY2hyb290KGNvbnN0IGNoYXIgKik7CkBAIC0xMjQsMzQgKzE0Miw0MCBAQAogZXh0ZXJuIGludCBmY2hvd24oaW50LCB1aWRfdCwgZ2lkX3QpOwogZXh0ZXJuIGludCBmY2hvd25hdChpbnQsIGNvbnN0IGNoYXIqLCB1aWRfdCwgZ2lkX3QsIGludCk7CiBleHRlcm4gaW50IGxjaG93bihjb25zdCBjaGFyICosIHVpZF90LCBnaWRfdCk7Ci1leHRlcm4gaW50IHRydW5jYXRlKGNvbnN0IGNoYXIgKiwgb2ZmX3QpOwotZXh0ZXJuIGludCB0cnVuY2F0ZTY0KGNvbnN0IGNoYXIgKiwgb2ZmNjRfdCk7CiBleHRlcm4gY2hhciAqZ2V0Y3dkKGNoYXIgKiwgc2l6ZV90KTsKIAogZXh0ZXJuIGludCBzeW5jKHZvaWQpOwogCiBleHRlcm4gaW50IGNsb3NlKGludCk7Ci1leHRlcm4gb2ZmX3QgbHNlZWsoaW50LCBvZmZfdCwgaW50KTsKLWV4dGVybiBvZmY2NF90IGxzZWVrNjQoaW50LCBvZmY2NF90LCBpbnQpOwogCiBleHRlcm4gc3NpemVfdCByZWFkKGludCwgdm9pZCAqLCBzaXplX3QpOwogZXh0ZXJuIHNzaXplX3Qgd3JpdGUoaW50LCBjb25zdCB2b2lkICosIHNpemVfdCk7Ci1leHRlcm4gc3NpemVfdCBwcmVhZChpbnQsIHZvaWQgKiwgc2l6ZV90LCBvZmZfdCk7Ci1leHRlcm4gc3NpemVfdCBwcmVhZDY0KGludCwgdm9pZCAqLCBzaXplX3QsIG9mZjY0X3QpOwotZXh0ZXJuIHNzaXplX3QgcHdyaXRlKGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIG9mZl90KTsKLWV4dGVybiBzc2l6ZV90IHB3cml0ZTY0KGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIG9mZjY0X3QpOwogCiBleHRlcm4gaW50IGR1cChpbnQpOwogZXh0ZXJuIGludCBkdXAyKGludCwgaW50KTsKLSNpZmRlZiBfR05VX1NPVVJDRQogZXh0ZXJuIGludCBkdXAzKGludCwgaW50LCBpbnQpOwotI2VuZGlmCiBleHRlcm4gaW50IGZjbnRsKGludCwgaW50LCAuLi4pOwogZXh0ZXJuIGludCBpb2N0bChpbnQsIGludCwgLi4uKTsKLWV4dGVybiBpbnQgZmxvY2soaW50LCBpbnQpOwogZXh0ZXJuIGludCBmc3luYyhpbnQpOwogZXh0ZXJuIGludCBmZGF0YXN5bmMoaW50KTsKKworI2lmIGRlZmluZWQoX19VU0VfRklMRV9PRkZTRVQ2NCkKK2V4dGVybiBpbnQgdHJ1bmNhdGUoY29uc3QgY2hhciAqLCBvZmZfdCkgX19SRU5BTUUodHJ1bmNhdGU2NCk7CitleHRlcm4gb2ZmX3QgbHNlZWsoaW50LCBvZmZfdCwgaW50KSBfX1JFTkFNRShsc2VlazY0KTsKK2V4dGVybiBzc2l6ZV90IHByZWFkKGludCwgdm9pZCAqLCBzaXplX3QsIG9mZl90KSBfX1JFTkFNRShwcmVhZDY0KTsKK2V4dGVybiBzc2l6ZV90IHB3cml0ZShpbnQsIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBvZmZfdCkgX19SRU5BTUUocHdyaXRlNjQpOworZXh0ZXJuIGludCBmdHJ1bmNhdGUoaW50LCBvZmZfdCkgX19SRU5BTUUoZnRydW5jYXRlNjQpOworI2Vsc2UKK2V4dGVybiBpbnQgdHJ1bmNhdGUoY29uc3QgY2hhciAqLCBvZmZfdCk7CitleHRlcm4gb2ZmX3QgbHNlZWsoaW50LCBvZmZfdCwgaW50KTsKK2V4dGVybiBzc2l6ZV90IHByZWFkKGludCwgdm9pZCAqLCBzaXplX3QsIG9mZl90KTsKK2V4dGVybiBzc2l6ZV90IHB3cml0ZShpbnQsIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBvZmZfdCk7CiBleHRlcm4gaW50IGZ0cnVuY2F0ZShpbnQsIG9mZl90KTsKKyNlbmRpZgorZXh0ZXJuIGludCB0cnVuY2F0ZTY0KGNvbnN0IGNoYXIgKiwgb2ZmNjRfdCk7CitleHRlcm4gb2ZmNjRfdCBsc2VlazY0KGludCwgb2ZmNjRfdCwgaW50KTsKK2V4dGVybiBzc2l6ZV90IHByZWFkNjQoaW50LCB2b2lkICosIHNpemVfdCwgb2ZmNjRfdCk7CitleHRlcm4gc3NpemVfdCBwd3JpdGU2NChpbnQsIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBvZmY2NF90KTsKIGV4dGVybiBpbnQgZnRydW5jYXRlNjQoaW50LCBvZmY2NF90KTsKIAogZXh0ZXJuIGludCBwYXVzZSh2b2lkKTsKQEAgLTE1OSw3ICsxODMsOCBAQAogZXh0ZXJuIHVuc2lnbmVkIGludCBzbGVlcCh1bnNpZ25lZCBpbnQpOwogZXh0ZXJuIGludCB1c2xlZXAodXNlY29uZHNfdCk7CiAKLWV4dGVybiBpbnQgZ2V0aG9zdG5hbWUoY2hhciAqLCBzaXplX3QpOworaW50IGdldGhvc3RuYW1lKGNoYXIqLCBzaXplX3QpOworaW50IHNldGhvc3RuYW1lKGNvbnN0IGNoYXIqLCBzaXplX3QpOwogCiBleHRlcm4gdm9pZCAqX19icmsodm9pZCAqKTsKIGV4dGVybiBpbnQgYnJrKHZvaWQgKik7CkBAIC0xNzAsNyArMTk1LDcgQEAKIGV4dGVybiBpbnQgb3B0aW5kLCBvcHRlcnIsIG9wdG9wdDsKIAogZXh0ZXJuIGludCBpc2F0dHkoaW50KTsKLWV4dGVybiBjaGFyKiB0dHluYW1lKGludCkgX193YXJuYXR0cigidHR5bmFtZSBpcyBub3QgdGhyZWFkLXNhZmU7IHVzZSB0dHluYW1lX3IgaW5zdGVhZCIpOworZXh0ZXJuIGNoYXIqIHR0eW5hbWUoaW50KTsKIGV4dGVybiBpbnQgdHR5bmFtZV9yKGludCwgY2hhciosIHNpemVfdCk7CiAKIGV4dGVybiBpbnQgIGFjY3QoY29uc3QgY2hhciogIGZpbGVwYXRoKTsKQEAgLTE3OSw2ICsyMDQsOCBAQAogCiBsb25nIHN5c2NvbmYoaW50KTsKIAorbG9uZyBzeXNjYWxsKGxvbmcgbnVtYmVyLCAuLi4pOworCiBleHRlcm4gaW50IGRhZW1vbihpbnQsIGludCk7CiAKICNpZiBkZWZpbmVkKF9fYXJtX18pIHx8IChkZWZpbmVkKF9fbWlwc19fKSAmJiAhZGVmaW5lZChfX0xQNjRfXykpCkBAIC0xOTcsMTMgKzIyNCw4OSBAQAogICAgIH0gd2hpbGUgKF9yYyA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUik7IFwKICAgICBfcmM7IH0pCiAKK2V4dGVybiBzc2l6ZV90IF9fcHJlYWRfY2hrKGludCwgdm9pZCosIHNpemVfdCwgb2ZmX3QsIHNpemVfdCk7CitfX2Vycm9yZGVjbChfX3ByZWFkX2Rlc3Rfc2l6ZV9lcnJvciwgInByZWFkIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gZGVzdGluYXRpb24iKTsKK19fZXJyb3JkZWNsKF9fcHJlYWRfY291bnRfdG9vYmlnX2Vycm9yLCAicHJlYWQgY2FsbGVkIHdpdGggY291bnQgPiBTU0laRV9NQVgiKTsKK2V4dGVybiBzc2l6ZV90IF9fcHJlYWRfcmVhbChpbnQsIHZvaWQqLCBzaXplX3QsIG9mZl90KSBfX1JFTkFNRShwcmVhZCk7CisKK2V4dGVybiBzc2l6ZV90IF9fcHJlYWQ2NF9jaGsoaW50LCB2b2lkKiwgc2l6ZV90LCBvZmY2NF90LCBzaXplX3QpOworX19lcnJvcmRlY2woX19wcmVhZDY0X2Rlc3Rfc2l6ZV9lcnJvciwgInByZWFkNjQgY2FsbGVkIHdpdGggc2l6ZSBiaWdnZXIgdGhhbiBkZXN0aW5hdGlvbiIpOworX19lcnJvcmRlY2woX19wcmVhZDY0X2NvdW50X3Rvb2JpZ19lcnJvciwgInByZWFkNjQgY2FsbGVkIHdpdGggY291bnQgPiBTU0laRV9NQVgiKTsKK2V4dGVybiBzc2l6ZV90IF9fcHJlYWQ2NF9yZWFsKGludCwgdm9pZCosIHNpemVfdCwgb2ZmNjRfdCkgX19SRU5BTUUocHJlYWQ2NCk7CisKIGV4dGVybiBzc2l6ZV90IF9fcmVhZF9jaGsoaW50LCB2b2lkKiwgc2l6ZV90LCBzaXplX3QpOwogX19lcnJvcmRlY2woX19yZWFkX2Rlc3Rfc2l6ZV9lcnJvciwgInJlYWQgY2FsbGVkIHdpdGggc2l6ZSBiaWdnZXIgdGhhbiBkZXN0aW5hdGlvbiIpOwogX19lcnJvcmRlY2woX19yZWFkX2NvdW50X3Rvb2JpZ19lcnJvciwgInJlYWQgY2FsbGVkIHdpdGggY291bnQgPiBTU0laRV9NQVgiKTsKIGV4dGVybiBzc2l6ZV90IF9fcmVhZF9yZWFsKGludCwgdm9pZCosIHNpemVfdCkgX19SRU5BTUUocmVhZCk7CiAKK2V4dGVybiBzc2l6ZV90IF9fcmVhZGxpbmtfY2hrKGNvbnN0IGNoYXIqLCBjaGFyKiwgc2l6ZV90LCBzaXplX3QpOworX19lcnJvcmRlY2woX19yZWFkbGlua19kZXN0X3NpemVfZXJyb3IsICJyZWFkbGluayBjYWxsZWQgd2l0aCBzaXplIGJpZ2dlciB0aGFuIGRlc3RpbmF0aW9uIik7CitfX2Vycm9yZGVjbChfX3JlYWRsaW5rX3NpemVfdG9vYmlnX2Vycm9yLCAicmVhZGxpbmsgY2FsbGVkIHdpdGggc2l6ZSA+IFNTSVpFX01BWCIpOworZXh0ZXJuIHNzaXplX3QgX19yZWFkbGlua19yZWFsKGNvbnN0IGNoYXIqLCBjaGFyKiwgc2l6ZV90KSBfX1JFTkFNRShyZWFkbGluayk7CisKK2V4dGVybiBzc2l6ZV90IF9fcmVhZGxpbmthdF9jaGsoaW50IGRpcmZkLCBjb25zdCBjaGFyKiwgY2hhciosIHNpemVfdCwgc2l6ZV90KTsKK19fZXJyb3JkZWNsKF9fcmVhZGxpbmthdF9kZXN0X3NpemVfZXJyb3IsICJyZWFkbGlua2F0IGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gZGVzdGluYXRpb24iKTsKK19fZXJyb3JkZWNsKF9fcmVhZGxpbmthdF9zaXplX3Rvb2JpZ19lcnJvciwgInJlYWRsaW5rYXQgY2FsbGVkIHdpdGggc2l6ZSA+IFNTSVpFX01BWCIpOworZXh0ZXJuIHNzaXplX3QgX19yZWFkbGlua2F0X3JlYWwoaW50IGRpcmZkLCBjb25zdCBjaGFyKiwgY2hhciosIHNpemVfdCkgX19SRU5BTUUocmVhZGxpbmthdCk7CisKICNpZiBkZWZpbmVkKF9fQklPTklDX0ZPUlRJRlkpCiAKKyNpZiBkZWZpbmVkKF9fVVNFX0ZJTEVfT0ZGU0VUNjQpCisjZGVmaW5lIF9fUFJFQURfUFJFRklYKHgpIF9fcHJlYWQ2NF8gIyMgeAorI2Vsc2UKKyNkZWZpbmUgX19QUkVBRF9QUkVGSVgoeCkgX19wcmVhZF8gIyMgeAorI2VuZGlmCisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitzc2l6ZV90IHByZWFkKGludCBmZCwgdm9pZCogYnVmLCBzaXplX3QgY291bnQsIG9mZl90IG9mZnNldCkgeworICAgIHNpemVfdCBib3MgPSBfX2JvczAoYnVmKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AoY291bnQpICYmIChjb3VudCA+IFNTSVpFX01BWCkpIHsKKyAgICAgICAgX19QUkVBRF9QUkVGSVgoY291bnRfdG9vYmlnX2Vycm9yKSgpOworICAgIH0KKworICAgIGlmIChib3MgPT0gX19CSU9OSUNfRk9SVElGWV9VTktOT1dOX1NJWkUpIHsKKyAgICAgICAgcmV0dXJuIF9fUFJFQURfUFJFRklYKHJlYWwpKGZkLCBidWYsIGNvdW50LCBvZmZzZXQpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChjb3VudCkgJiYgKGNvdW50ID4gYm9zKSkgeworICAgICAgICBfX1BSRUFEX1BSRUZJWChkZXN0X3NpemVfZXJyb3IpKCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKGNvdW50KSAmJiAoY291bnQgPD0gYm9zKSkgeworICAgICAgICByZXR1cm4gX19QUkVBRF9QUkVGSVgocmVhbCkoZmQsIGJ1ZiwgY291bnQsIG9mZnNldCk7CisgICAgfQorI2VuZGlmCisKKyAgICByZXR1cm4gX19QUkVBRF9QUkVGSVgoY2hrKShmZCwgYnVmLCBjb3VudCwgb2Zmc2V0LCBib3MpOworfQorCitfX0JJT05JQ19GT1JUSUZZX0lOTElORQorc3NpemVfdCBwcmVhZDY0KGludCBmZCwgdm9pZCogYnVmLCBzaXplX3QgY291bnQsIG9mZjY0X3Qgb2Zmc2V0KSB7CisgICAgc2l6ZV90IGJvcyA9IF9fYm9zMChidWYpOworCisjaWYgIWRlZmluZWQoX19jbGFuZ19fKQorICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChjb3VudCkgJiYgKGNvdW50ID4gU1NJWkVfTUFYKSkgeworICAgICAgICBfX3ByZWFkNjRfY291bnRfdG9vYmlnX2Vycm9yKCk7CisgICAgfQorCisgICAgaWYgKGJvcyA9PSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgICAgICByZXR1cm4gX19wcmVhZDY0X3JlYWwoZmQsIGJ1ZiwgY291bnQsIG9mZnNldCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKGNvdW50KSAmJiAoY291bnQgPiBib3MpKSB7CisgICAgICAgIF9fcHJlYWQ2NF9kZXN0X3NpemVfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AoY291bnQpICYmIChjb3VudCA8PSBib3MpKSB7CisgICAgICAgIHJldHVybiBfX3ByZWFkNjRfcmVhbChmZCwgYnVmLCBjb3VudCwgb2Zmc2V0KTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX3ByZWFkNjRfY2hrKGZkLCBidWYsIGNvdW50LCBvZmZzZXQsIGJvcyk7Cit9CisKIF9fQklPTklDX0ZPUlRJRllfSU5MSU5FCiBzc2l6ZV90IHJlYWQoaW50IGZkLCB2b2lkKiBidWYsIHNpemVfdCBjb3VudCkgewogICAgIHNpemVfdCBib3MgPSBfX2JvczAoYnVmKTsKQEAgLTIyOCw2ICszMzEsNTcgQEAKIAogICAgIHJldHVybiBfX3JlYWRfY2hrKGZkLCBidWYsIGNvdW50LCBib3MpOwogfQorCitfX0JJT05JQ19GT1JUSUZZX0lOTElORQorc3NpemVfdCByZWFkbGluayhjb25zdCBjaGFyKiBwYXRoLCBjaGFyKiBidWYsIHNpemVfdCBzaXplKSB7CisgICAgc2l6ZV90IGJvcyA9IF9fYm9zKGJ1Zik7CisKKyNpZiAhZGVmaW5lZChfX2NsYW5nX18pCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHNpemUpICYmIChzaXplID4gU1NJWkVfTUFYKSkgeworICAgICAgICBfX3JlYWRsaW5rX3NpemVfdG9vYmlnX2Vycm9yKCk7CisgICAgfQorCisgICAgaWYgKGJvcyA9PSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgICAgICByZXR1cm4gX19yZWFkbGlua19yZWFsKHBhdGgsIGJ1Ziwgc2l6ZSk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHNpemUpICYmIChzaXplID4gYm9zKSkgeworICAgICAgICBfX3JlYWRsaW5rX2Rlc3Rfc2l6ZV9lcnJvcigpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzaXplKSAmJiAoc2l6ZSA8PSBib3MpKSB7CisgICAgICAgIHJldHVybiBfX3JlYWRsaW5rX3JlYWwocGF0aCwgYnVmLCBzaXplKTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX3JlYWRsaW5rX2NoayhwYXRoLCBidWYsIHNpemUsIGJvcyk7Cit9CisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitzc2l6ZV90IHJlYWRsaW5rYXQoaW50IGRpcmZkLCBjb25zdCBjaGFyKiBwYXRoLCBjaGFyKiBidWYsIHNpemVfdCBzaXplKSB7CisgICAgc2l6ZV90IGJvcyA9IF9fYm9zKGJ1Zik7CisKKyNpZiAhZGVmaW5lZChfX2NsYW5nX18pCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHNpemUpICYmIChzaXplID4gU1NJWkVfTUFYKSkgeworICAgICAgICBfX3JlYWRsaW5rYXRfc2l6ZV90b29iaWdfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoYm9zID09IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgICAgIHJldHVybiBfX3JlYWRsaW5rYXRfcmVhbChkaXJmZCwgcGF0aCwgYnVmLCBzaXplKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Aoc2l6ZSkgJiYgKHNpemUgPiBib3MpKSB7CisgICAgICAgIF9fcmVhZGxpbmthdF9kZXN0X3NpemVfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Aoc2l6ZSkgJiYgKHNpemUgPD0gYm9zKSkgeworICAgICAgICByZXR1cm4gX19yZWFkbGlua2F0X3JlYWwoZGlyZmQsIHBhdGgsIGJ1Ziwgc2l6ZSk7CisgICAgfQorI2VuZGlmCisKKyAgICByZXR1cm4gX19yZWFkbGlua2F0X2NoayhkaXJmZCwgcGF0aCwgYnVmLCBzaXplLCBib3MpOworfQorCiAjZW5kaWYgLyogZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKSAqLwogCiBfX0VORF9ERUNMUwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3V0bXAuaCBiL2xpYmMvaW5jbHVkZS91dG1wLmgKaW5kZXggZDc2NDIyNy4uZWJmMjM3MiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3V0bXAuaAorKysgYi9saWJjL2luY2x1ZGUvdXRtcC5oCkBAIC05MSw2ICs5MSw4IEBACiB2b2lkIHNldHV0ZW50KCk7CiBzdHJ1Y3QgdXRtcCogZ2V0dXRlbnQoKTsKIAoraW50IGxvZ2luX3R0eShpbnQpOworCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX1VUTVBfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS93Y2hhci5oIGIvbGliYy9pbmNsdWRlL3djaGFyLmgKaW5kZXggZTBlNWM4Mi4uZWE2YWNhMCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3djaGFyLmgKKysrIGIvbGliYy9pbmNsdWRlL3djaGFyLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlIDxzdGRhcmcuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4KICNpbmNsdWRlIDx0aW1lLmg+CisjaW5jbHVkZSA8eGxvY2FsZS5oPgogCiAjaW5jbHVkZSA8bWFjaGluZS93Y2hhcl9saW1pdHMuaD4KIApAQCAtMTEwLDggKzExMSwxMSBAQAogZXh0ZXJuIGludCB2c3dzY2FuZihjb25zdCB3Y2hhcl90KiwgY29uc3Qgd2NoYXJfdCosIHZhX2xpc3QpOwogZXh0ZXJuIGludCB2d3ByaW50Zihjb25zdCB3Y2hhcl90KiwgdmFfbGlzdCk7CiBleHRlcm4gaW50IHZ3c2NhbmYoY29uc3Qgd2NoYXJfdCosIHZhX2xpc3QpOworZXh0ZXJuIHdjaGFyX3QqIHdjcGNweSAod2NoYXJfdCosIGNvbnN0IHdjaGFyX3QgKik7CitleHRlcm4gd2NoYXJfdCogd2NwbmNweSAod2NoYXJfdCosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90KTsKIGV4dGVybiBzaXplX3QgICAgICAgICAgICB3Y3J0b21iKGNoYXIgKiwgd2NoYXJfdCwgbWJzdGF0ZV90ICopOwogZXh0ZXJuIGludCAgICAgICAgICAgICAgIHdjc2Nhc2VjbXAoY29uc3Qgd2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICopOworZXh0ZXJuIGludCAgICAgICAgICAgICAgIHdjc2Nhc2VjbXBfbChjb25zdCB3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgbG9jYWxlX3QpOwogZXh0ZXJuIHdjaGFyX3QgICAgICAgICAgKndjc2NhdCh3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKik7CiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd2NzY2hyKGNvbnN0IHdjaGFyX3QgKiwgd2NoYXJfdCk7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzY21wKGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqKTsKQEAgLTEyMSw2ICsxMjUsNyBAQAogZXh0ZXJuIHNpemVfdCAgICAgICAgICAgIHdjc2Z0aW1lKHdjaGFyX3QgKiwgc2l6ZV90LCBjb25zdCB3Y2hhcl90ICosIGNvbnN0IHN0cnVjdCB0bSAqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOwogZXh0ZXJuIHNpemVfdCAgICAgICAgICAgIHdjc2xlbihjb25zdCB3Y2hhcl90ICopOwogZXh0ZXJuIGludCAgICAgICAgICAgICAgIHdjc25jYXNlY21wKGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOworZXh0ZXJuIGludCAgICAgICAgICAgICAgIHdjc25jYXNlY21wX2woY29uc3Qgd2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCwgbG9jYWxlX3QpOwogZXh0ZXJuIHdjaGFyX3QgICAgICAgICAgKndjc25jYXQod2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzbmNtcChjb25zdCB3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90KTsKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3Y3NuY3B5KHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOwpAQCAtMTQ2LDYgKzE1MSw5IEBACiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd21lbWNocihjb25zdCB3Y2hhcl90ICosIHdjaGFyX3QsIHNpemVfdCk7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd21lbWNtcChjb25zdCB3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90KTsKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3bWVtY3B5KHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOworI2lmIGRlZmluZWQoX19VU0VfR05VKQorZXh0ZXJuIHdjaGFyX3QgICAgICAgICAgKndtZW1wY3B5KHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOworI2VuZGlmCiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd21lbW1vdmUod2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd21lbXNldCh3Y2hhcl90ICosIHdjaGFyX3QsIHNpemVfdCk7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd3ByaW50Zihjb25zdCB3Y2hhcl90ICosIC4uLik7CkBAIC0xNjYsNiArMTc0LDcgQEAKIGV4dGVybiB3Y3RyYW5zX3Qgd2N0cmFucyhjb25zdCBjaGFyKik7CiAKICNpZiBfX1BPU0lYX1ZJU0lCTEUgPj0gMjAwODA5CitGSUxFKiBvcGVuX3dtZW1zdHJlYW0od2NoYXJfdCoqLCBzaXplX3QqKTsKIHdjaGFyX3QqIHdjc2R1cChjb25zdCB3Y2hhcl90Kik7CiBzaXplX3Qgd2Nzbmxlbihjb25zdCB3Y2hhcl90Kiwgc2l6ZV90KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdG9vbHMvY2xlYW5faGVhZGVyLnB5IGIvbGliYy9rZXJuZWwvdG9vbHMvY2xlYW5faGVhZGVyLnB5CmluZGV4IDY2MDE4MTcuLjBlMGVkNzYgMTAwNzU1Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL2NsZWFuX2hlYWRlci5weQorKysgYi9saWJjL2tlcm5lbC90b29scy9jbGVhbl9oZWFkZXIucHkKQEAgLTYwLDEyICs2MCw3IEBACiAjICAgdXNpbmcgdGhlbSBhbnl3YXkuCiAjCiAjCi0jIDMuIFdoaXRlc3BhY2UgY2xlYW51cDoKLSMKLSMgICBUaGUgZmluYWwgcGFzcyByZW1vdmVzIGFueSBjb21tZW50cyBhbmQgZW1wdHkgbGluZXMgZnJvbSB0aGUgZmluYWwgaGVhZGVycy4KLSMKLSMKLSMgNC4gQWRkIGEgc3RhbmRhcmQgZGlzY2xhaW1lcjoKKyMgMy4gQWRkIGEgc3RhbmRhcmQgZGlzY2xhaW1lcjoKICMKICMgICBUaGUgbWVzc2FnZToKICMKQEAgLTE0MSw4ICsxMzYsOSBAQAogCiAgICAgIyBub3csIGxldCdzIHBhcnNlIHRoZSBmaWxlCiAgICAgIwotICAgIGJsb2NrcyA9IGNwcC5CbG9ja1BhcnNlcigpLnBhcnNlRmlsZShwYXRoKQotICAgIGlmIG5vdCBibG9ja3M6CisgICAgcGFyc2VyID0gY3BwLkJsb2NrUGFyc2VyKCkKKyAgICBibG9ja3MgPSBwYXJzZXIucGFyc2VGaWxlKHBhdGgpCisgICAgaWYgbm90IHBhcnNlci5wYXJzZWQ6CiAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoICJlcnJvcjogY2FuJ3QgcGFyc2UgJyVzJyIgJSBwYXRoICkKICAgICAgICAgc3lzLmV4aXQoMSkKIApAQCAtMTU3LDkgKzE1Myw3IEBACiAgICAgYmxvY2tzLm9wdGltaXplSWYwMSgpCiAgICAgYmxvY2tzLnJlbW92ZVZhcnNBbmRGdW5jcyggc3RhdGljcyApCiAgICAgYmxvY2tzLnJlcGxhY2VUb2tlbnMoIGtlcm5lbF90b2tlbl9yZXBsYWNlbWVudHMgKQotICAgIGJsb2Nrcy5yZW1vdmVDb21tZW50cygpCiAgICAgYmxvY2tzLnJlbW92ZU1hY3JvRGVmaW5lcygga2VybmVsX2lnbm9yZWRfbWFjcm9zICkKLSAgICBibG9ja3MucmVtb3ZlV2hpdGVTcGFjZSgpCiAKICAgICBvdXQgPSBTdHJpbmdPdXRwdXQoKQogICAgIG91dC53cml0ZSgga2VybmVsX2Rpc2NsYWltZXIgKQpAQCAtMTk5LDggKzE5Myw3IEBACiAgICAgICAgIGlmIG9wdCA9PSAnLXUnOgogICAgICAgICAgICAgbm9VcGRhdGUgPSAwCiAgICAgICAgIGVsaWYgb3B0ID09ICctdic6Ci0gICAgICAgICAgICB2ZXJib3NlID0gMQotICAgICAgICAgICAgRF9zZXRsZXZlbCgxKQorICAgICAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhsZXZlbD1sb2dnaW5nLkRFQlVHKQogICAgICAgICBlbGlmIG9wdCA9PSAnLWsnOgogICAgICAgICAgICAga2VybmVsX29yaWdpbmFsX3BhdGggPSBhcmcKICAgICAgICAgZWxpZiBvcHQgPT0gJy1kJzoKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3Rvb2xzL2NwcC5weSBiL2xpYmMva2VybmVsL3Rvb2xzL2NwcC5weQppbmRleCAyYmU5NTMyLi4xMGNlMjkwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC90b29scy9jcHAucHkKKysrIGIvbGliYy9rZXJuZWwvdG9vbHMvY3BwLnB5CkBAIC0xLDU2MCArMSw0MDMgQEAKLSMgYSBnbG9yaWZpZWQgQyBwcmUtcHJvY2Vzc29yIHBhcnNlcgorIyEvdXNyL2Jpbi9weXRob24KKyIiIkEgZ2xvcmlmaWVkIEMgcHJlLXByb2Nlc3NvciBwYXJzZXIuIiIiCiAKLWltcG9ydCBzeXMsIHJlLCBzdHJpbmcKLWZyb20gdXRpbHMgaW1wb3J0ICoKLWZyb20gZGVmYXVsdHMgaW1wb3J0ICoKK2ltcG9ydCBjdHlwZXMKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHNpdGUKK2ltcG9ydCB1dGlscwogCi1kZWJ1Z1Rva2VucyAgICAgICAgICAgICA9IEZhbHNlCi1kZWJ1Z0RpcmVjdGl2ZVRva2VuaXplciA9IEZhbHNlCi1kZWJ1Z0xpbmVQYXJzaW5nICAgICAgICA9IEZhbHNlCi1kZWJ1Z0NwcEV4cHIgICAgICAgICAgICA9IEZhbHNlCi1kZWJ1Z09wdGltSWYwMSAgICAgICAgICA9IEZhbHNlCit0b3AgPSBvcy5nZXRlbnYoJ0FORFJPSURfQlVJTERfVE9QJykKK2lmIHRvcCBpcyBOb25lOgorICAgIHV0aWxzLnBhbmljKCdBTkRST0lEX0JVSUxEX1RPUCBub3Qgc2V0LlxuJykKIAotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgICAgIEMgUCBQICAgVCBPIEsgRSBOIFMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBTZXQgdXAgdGhlIGVudiB2YXJzIGZvciBsaWJjbGFuZy4KK3NpdGUuYWRkc2l0ZWRpcihvcy5wYXRoLmpvaW4odG9wLCAnZXh0ZXJuYWwvY2xhbmcvYmluZGluZ3MvcHl0aG9uJykpCisKK2ltcG9ydCBjbGFuZy5jaW5kZXgKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBjb25mCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgQ3Vyc29yCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgQ3Vyc29yS2luZAorZnJvbSBjbGFuZy5jaW5kZXggaW1wb3J0IFNvdXJjZUxvY2F0aW9uCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgU291cmNlUmFuZ2UKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBUb2tlbkdyb3VwCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgVG9rZW5LaW5kCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgVHJhbnNsYXRpb25Vbml0CisKKyMgU2V0IHVwIExEX0xJQlJBUllfUEFUSCB0byBpbmNsdWRlIGxpYmNsYW5nLnNvLCBsaWJMTFZNLnNvLCBhbmQgZXRjLgorIyBOb3RlIHRoYXQgc2V0dGluZyBMRF9MSUJSQVJZX1BBVEggd2l0aCBvcy5wdXRlbnYoKSBzb21ldGltZXMgZG9lc24ndCBoZWxwLgorY2xhbmcuY2luZGV4LkNvbmZpZy5zZXRfbGlicmFyeV9wYXRoKG9zLnBhdGguam9pbih0b3AsICdwcmVidWlsdHMvc2RrL3Rvb2xzL2xpbnV4L2xpYjY0JykpCisKK2Zyb20gZGVmYXVsdHMgaW1wb3J0IGtDcHBVbmRlZmluZWRNYWNybworZnJvbSBkZWZhdWx0cyBpbXBvcnQga2VybmVsX3JlbW92ZV9jb25maWdfbWFjcm9zCitmcm9tIGRlZmF1bHRzIGltcG9ydCBrZXJuZWxfdG9rZW5fcmVwbGFjZW1lbnRzCisKKworZGVidWdCbG9ja1BhcnNlciA9IEZhbHNlCitkZWJ1Z0NwcEV4cHIgPSBGYWxzZQorZGVidWdPcHRpbUlmMDEgPSBGYWxzZQorCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgQyBQIFAgICBUIE8gSyBFIE4gUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKICMgdGhlIGxpc3Qgb2Ygc3VwcG9ydGVkIEMtcHJlcHJvY2Vzc29yIHRva2VucwogIyBwbHVzIGEgY291cGxlIG9mIEMgdG9rZW5zIGFzIHdlbGwKLXRva0VPRiAgICAgICA9ICJcMCIKLXRva0xOICAgICAgICA9ICJcbiIKK3Rva0VPRiA9ICJcMCIKK3Rva0xOID0gIlxuIgogdG9rU1RSSU5HSUZZID0gIiMiCi10b2tDT05DQVQgICAgPSAiIyMiCi10b2tMT0dJQ0FORCAgPSAiJiYiCi10b2tMT0dJQ09SICAgPSAifHwiCi10b2tTSEwgICAgICAgPSAiPDwiCi10b2tTSFIgICAgICAgPSAiPj4iCi10b2tFUVVBTCAgICAgPSAiPT0iCi10b2tORVFVQUwgICAgPSAiIT0iCi10b2tMVCAgICAgICAgPSAiPCIKLXRva0xURSAgICAgICA9ICI8PSIKLXRva0dUICAgICAgICA9ICI+IgotdG9rR1RFICAgICAgID0gIj49IgotdG9rRUxMSVBTSVMgID0gIi4uLiIKLXRva1NQQUNFICAgICA9ICIgIgotdG9rREVGSU5FRCAgID0gImRlZmluZWQiCi10b2tMUEFSRU4gICAgPSAiKCIKLXRva1JQQVJFTiAgICA9ICIpIgotdG9rTk9UICAgICAgID0gIiEiCi10b2tQTFVTICAgICAgPSAiKyIKLXRva01JTlVTICAgICA9ICItIgotdG9rTVVMVElQTFkgID0gIioiCi10b2tESVZJREUgICAgPSAiLyIKLXRva01PRFVMVVMgICA9ICIlIgotdG9rQklOQU5EICAgID0gIiYiCi10b2tCSU5PUiAgICAgPSAifCIKLXRva0JJTlhPUiAgICA9ICJeIgotdG9rQ09NTUEgICAgID0gIiwiCi10b2tMQlJBQ0UgICAgPSAieyIKLXRva1JCUkFDRSAgICA9ICJ9IgotdG9rQVJST1cgICAgID0gIi0+IgordG9rQ09OQ0FUID0gIiMjIgordG9rTE9HSUNBTkQgPSAiJiYiCit0b2tMT0dJQ09SID0gInx8IgordG9rU0hMID0gIjw8IgordG9rU0hSID0gIj4+IgordG9rRVFVQUwgPSAiPT0iCit0b2tORVFVQUwgPSAiIT0iCit0b2tMVCA9ICI8IgordG9rTFRFID0gIjw9IgordG9rR1QgPSAiPiIKK3Rva0dURSA9ICI+PSIKK3Rva0VMTElQU0lTID0gIi4uLiIKK3Rva1NQQUNFID0gIiAiCit0b2tERUZJTkVEID0gImRlZmluZWQiCit0b2tMUEFSRU4gPSAiKCIKK3Rva1JQQVJFTiA9ICIpIgordG9rTk9UID0gIiEiCit0b2tQTFVTID0gIisiCit0b2tNSU5VUyA9ICItIgordG9rTVVMVElQTFkgPSAiKiIKK3Rva0RJVklERSA9ICIvIgordG9rTU9EVUxVUyA9ICIlIgordG9rQklOQU5EID0gIiYiCit0b2tCSU5PUiA9ICJ8IgordG9rQklOWE9SID0gIl4iCit0b2tDT01NQSA9ICIsIgordG9rTEJSQUNFID0gInsiCit0b2tSQlJBQ0UgPSAifSIKK3Rva0FSUk9XID0gIi0+IgogdG9rSU5DUkVNRU5UID0gIisrIgogdG9rREVDUkVNRU5UID0gIi0tIgotdG9rTlVNQkVSICAgID0gIjxudW1iZXI+IgotdG9rSURFTlQgICAgID0gIjxpZGVudD4iCi10b2tTVFJJTkcgICAgPSAiPHN0cmluZz4iCit0b2tOVU1CRVIgPSAiPG51bWJlcj4iCit0b2tJREVOVCA9ICI8aWRlbnQ+IgordG9rU1RSSU5HID0gIjxzdHJpbmc+IgogCi1jbGFzcyBUb2tlbjoKLSAgICAiIiJhIHNpbXBsZSBjbGFzcyB0byBob2xkIGluZm9ybWF0aW9uIGFib3V0IGEgZ2l2ZW4gdG9rZW4uCi0gICAgICAgZWFjaCB0b2tlbiBoYXMgYSBwb3NpdGlvbiBpbiB0aGUgc291cmNlIGNvZGUsIGFzIHdlbGwgYXMKLSAgICAgICBhbiAnaWQnIGFuZCBhICd2YWx1ZScuIHRoZSBpZCBpcyBhIHN0cmluZyB0aGF0IGlkZW50aWZpZXMKLSAgICAgICB0aGUgdG9rZW4ncyBjbGFzcywgd2hpbGUgdGhlIHZhbHVlIGlzIHRoZSBzdHJpbmcgb2YgdGhlCi0gICAgICAgb3JpZ2luYWwgdG9rZW4gaXRzZWxmLgogCi0gICAgICAgZm9yIGV4YW1wbGUsIHRoZSB0b2tlbml6ZXIgY29uY2F0ZW5hdGVzIGEgc2VyaWVzIG9mIHNwYWNlcwotICAgICAgIGFuZCB0YWJzIGFzIGEgc2luZ2xlIHRva1NQQUNFIGlkLCB3aG9zZSB2YWx1ZSBpZiB0aGUgb3JpZ2luYWwKLSAgICAgICBzcGFjZXMrdGFicyBzZXF1ZW5jZS4iIiIKK2NsYXNzIFRva2VuKGNsYW5nLmNpbmRleC5Ub2tlbik6CisgICAgIiIiQSBjbGFzcyB0aGF0IHJlcHJlc2VudHMgb25lIHRva2VuIGFmdGVyIHBhcnNpbmcuCiAKLSAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIHNlbGYuaWQgICAgID0gTm9uZQotICAgICAgICBzZWxmLnZhbHVlICA9IE5vbmUKLSAgICAgICAgc2VsZi5saW5lbm8gPSAwCi0gICAgICAgIHNlbGYuY29sbm8gID0gMAorICAgIEl0IGluaGVyaXRzIHRoZSBjbGFzcyBpbiBsaWJjbGFuZywgd2l0aCBhbiBleHRyYSBpZCBwcm9wZXJ0eSB0byBob2xkIHRoZQorICAgIG5ldyBzcGVsbGluZyBvZiB0aGUgdG9rZW4uIFRoZSBzcGVsbGluZyBwcm9wZXJ0eSBpbiB0aGUgYmFzZSBjbGFzcyBpcworICAgIGRlZmluZWQgYXMgcmVhZC1vbmx5LiBOZXcgbmFtZXMgYWZ0ZXIgbWFjcm8gaW5zdGFudGlhdGlvbiBhcmUgc2F2ZWQgaW4KKyAgICB0aGVpciBpZHMgbm93LiBJdCBhbHNvIGZhY2lsaXRhdGVzIHRoZSByZW5hbWluZyBvZiBkaXJlY3RpdmUgb3B0aW1pemF0aW9ucworICAgIGxpa2UgcmVwbGFjaW5nICdpZm5kZWYgWCcgd2l0aCAnaWYgIWRlZmluZWQoWCknLgogCi0gICAgZGVmIHNldChzZWxmLGlkLHZhbD1Ob25lKToKLSAgICAgICAgc2VsZi5pZCA9IGlkCi0gICAgICAgIGlmIHZhbDoKLSAgICAgICAgICAgIHNlbGYudmFsdWUgPSB2YWwKKyAgICBJdCBhbHNvIG92ZXJyaWRlcyB0aGUgY3Vyc29yIHByb3BlcnR5IG9mIHRoZSBiYXNlIGNsYXNzLiBCZWNhdXNlIHRoZSBvbmUKKyAgICBpbiBsaWJjbGFuZyBhbHdheXMgcXVlcmllcyBiYXNlZCBvbiBhIHNpbmdsZSB0b2tlbiwgd2hpY2ggdXN1YWxseSBkb2Vzbid0CisgICAgaG9sZCB1c2VmdWwgaW5mb3JtYXRpb24uIFRoZSBjdXJzb3IgaW4gdGhpcyBjbGFzcyBjYW4gYmUgc2V0IGJ5IGNhbGxpbmcKKyAgICBDcHBUb2tlbml6ZXIuZ2V0VG9rZW5zV2l0aEN1cnNvcnMoKS4gT3RoZXJ3aXNlIGl0IHJldHVybnMgdGhlIG9uZSBpbiB0aGUKKyAgICBiYXNlIGNsYXNzLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHR1PU5vbmUsIGdyb3VwPU5vbmUsIGludF9kYXRhPU5vbmUsIHB0cl9kYXRhPU5vbmUsCisgICAgICAgICAgICAgICAgIGN1cnNvcj1Ob25lKToKKyAgICAgICAgY2xhbmcuY2luZGV4LlRva2VuLl9faW5pdF9fKHNlbGYpCisgICAgICAgIHNlbGYuX2lkID0gTm9uZQorICAgICAgICBzZWxmLl90dSA9IHR1CisgICAgICAgIHNlbGYuX2dyb3VwID0gZ3JvdXAKKyAgICAgICAgc2VsZi5fY3Vyc29yID0gY3Vyc29yCisgICAgICAgICMgc2VsZi5pbnRfZGF0YSBhbmQgc2VsZi5wdHJfZGF0YSBhcmUgZnJvbSB0aGUgYmFzZSBjbGFzcy4gQnV0CisgICAgICAgICMgc2VsZi5pbnRfZGF0YSBkb2Vzbid0IGFjY2VwdCBhIE5vbmUgdmFsdWUuCisgICAgICAgIGlmIGludF9kYXRhIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5pbnRfZGF0YSA9IGludF9kYXRhCisgICAgICAgIHNlbGYucHRyX2RhdGEgPSBwdHJfZGF0YQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGlkKHNlbGYpOgorICAgICAgICAiIiJOYW1lIG9mIHRoZSB0b2tlbi4iIiIKKyAgICAgICAgaWYgc2VsZi5faWQgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLnNwZWxsaW5nCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLnZhbHVlID0gaWQKLSAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9pZAogCi0gICAgZGVmIGNvcHlGcm9tKHNlbGYsc3JjKToKLSAgICAgICAgc2VsZi5pZCAgICAgPSBzcmMuaWQKLSAgICAgICAgc2VsZi52YWx1ZSAgPSBzcmMudmFsdWUKLSAgICAgICAgc2VsZi5saW5lbm8gPSBzcmMubGluZW5vCi0gICAgICAgIHNlbGYuY29sbm8gID0gc3JjLmNvbG5vCisgICAgQGlkLnNldHRlcgorICAgIGRlZiBpZChzZWxmLCBuZXdfaWQpOgorICAgICAgICAiIiJTZXR0aW5nIG5hbWUgb2YgdGhlIHRva2VuLiIiIgorICAgICAgICBzZWxmLl9pZCA9IG5ld19pZAorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGN1cnNvcihzZWxmKToKKyAgICAgICAgaWYgc2VsZi5fY3Vyc29yIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9jdXJzb3IgPSBjbGFuZy5jaW5kZXguVG9rZW4uY3Vyc29yCisgICAgICAgIHJldHVybiBzZWxmLl9jdXJzb3IKKworICAgIEBjdXJzb3Iuc2V0dGVyCisgICAgZGVmIGN1cnNvcihzZWxmLCBuZXdfY3Vyc29yKToKKyAgICAgICAgc2VsZi5fY3Vyc29yID0gbmV3X2N1cnNvcgogCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgotICAgICAgICBpZiBzZWxmLmlkID09IHRva0lERU5UOgotICAgICAgICAgICAgcmV0dXJuICIoaWRlbnQgJXMpIiAlIHNlbGYudmFsdWUKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tOVU1CRVI6Ci0gICAgICAgICAgICByZXR1cm4gIihudW1iZXIgJXMpIiAlIHNlbGYudmFsdWUKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tTVFJJTkc6Ci0gICAgICAgICAgICByZXR1cm4gIihzdHJpbmcgJyVzJykiICUgc2VsZi52YWx1ZQotICAgICAgICBpZiBzZWxmLmlkID09IHRva0xOOgotICAgICAgICAgICAgcmV0dXJuICI8TE4+IgotICAgICAgICBpZiBzZWxmLmlkID09IHRva0VPRjoKLSAgICAgICAgICAgIHJldHVybiAiPEVPRj4iCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rU1BBQ0UgYW5kIHNlbGYudmFsdWUgPT0gIlxcIjoKLSAgICAgICAgICAgICMgdGhpcyBjb3JyZXNwb25kcyB0byBhIHRyYWlsaW5nIFwgdGhhdCB3YXMgdHJhbnNmb3JtZWQgaW50byBhIHRva1NQQUNFCi0gICAgICAgICAgICByZXR1cm4gIjxcXD4iCisgICAgICAgIGlmIHNlbGYuaWQgPT0gJ2RlZmluZWQnOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuaWQKKyAgICAgICAgZWxpZiBzZWxmLmtpbmQgPT0gVG9rZW5LaW5kLklERU5USUZJRVI6CisgICAgICAgICAgICByZXR1cm4gIihpZGVudCAlcykiICUgc2VsZi5pZAogCiAgICAgICAgIHJldHVybiBzZWxmLmlkCiAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tJREVOVDoKLSAgICAgICAgICAgIHJldHVybiBzZWxmLnZhbHVlCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rTlVNQkVSOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYudmFsdWUKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tTVFJJTkc6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi52YWx1ZQotICAgICAgICBpZiBzZWxmLmlkID09IHRva0VPRjoKLSAgICAgICAgICAgIHJldHVybiAiPEVPRj4iCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICBpZiBzZWxmLnZhbHVlID09ICJcXCI6ICAjIHRyYWlsaW5nIFwKLSAgICAgICAgICAgICAgICByZXR1cm4gIlxcXG4iCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLnZhbHVlCi0KICAgICAgICAgcmV0dXJuIHNlbGYuaWQKIAorCiBjbGFzcyBCYWRFeHBlY3RlZFRva2VuKEV4Y2VwdGlvbik6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsbXNnKToKLSAgICAgICAgcHJpbnQgbXNnCisgICAgIiIiQW4gZXhjZXB0aW9uIHRoYXQgd2lsbCBiZSByYWlzZWQgZm9yIHVuZXhwZWN0ZWQgdG9rZW5zLiIiIgorICAgIHBhc3MKIAogCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgQyBQIFAgICBUIE8gSyBFIE4gSSBaIEUgUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFRoZSBfX2NvbnRhaW5zX18gZnVuY3Rpb24gaW4gbGliY2xhbmcgU291cmNlUmFuZ2UgY2xhc3MgY29udGFpbnMgYSBidWcuIEl0CisjIGdpdmVzIHdyb25nIHJlc3VsdCB3aGVuIGRlYWxpbmcgd2l0aCBzaW5nbGUgbGluZSByYW5nZS4KKyMgQnVnIGZpbGVkIHdpdGggdXBzdHJlYW06CisjIGh0dHA6Ly9sbHZtLm9yZy9idWdzL3Nob3dfYnVnLmNnaT9pZD0yMjI0MywgaHR0cDovL3Jldmlld3MubGx2bS5vcmcvRDcyNzcKK2RlZiBTb3VyY2VSYW5nZV9fY29udGFpbnNfXyhzZWxmLCBvdGhlcik6CisgICAgIiIiRGV0ZXJtaW5lIGlmIGEgZ2l2ZW4gbG9jYXRpb24gaXMgaW5zaWRlIHRoZSByYW5nZS4iIiIKKyAgICBpZiBub3QgaXNpbnN0YW5jZShvdGhlciwgU291cmNlTG9jYXRpb24pOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBpZiBvdGhlci5maWxlIGlzIE5vbmUgYW5kIHNlbGYuc3RhcnQuZmlsZSBpcyBOb25lOgorICAgICAgICBwYXNzCisgICAgZWxpZiAoc2VsZi5zdGFydC5maWxlLm5hbWUgIT0gb3RoZXIuZmlsZS5uYW1lIG9yCisgICAgICAgICAgb3RoZXIuZmlsZS5uYW1lICE9IHNlbGYuZW5kLmZpbGUubmFtZSk6CisgICAgICAgICMgc2FtZSBmaWxlIG5hbWUKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgIyBzYW1lIGZpbGUsIGluIGJldHdlZW4gbGluZXMKKyAgICBpZiBzZWxmLnN0YXJ0LmxpbmUgPCBvdGhlci5saW5lIDwgc2VsZi5lbmQubGluZToKKyAgICAgICAgcmV0dXJuIFRydWUKKyAgICAjIHNhbWUgZmlsZSwgc2FtZSBsaW5lCisgICAgZWxpZiBzZWxmLnN0YXJ0LmxpbmUgPT0gb3RoZXIubGluZSA9PSBzZWxmLmVuZC5saW5lOgorICAgICAgICBpZiBzZWxmLnN0YXJ0LmNvbHVtbiA8PSBvdGhlci5jb2x1bW4gPD0gc2VsZi5lbmQuY29sdW1uOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICBlbGlmIHNlbGYuc3RhcnQubGluZSA9PSBvdGhlci5saW5lOgorICAgICAgICAjIHNhbWUgZmlsZSBmaXJzdCBsaW5lCisgICAgICAgIGlmIHNlbGYuc3RhcnQuY29sdW1uIDw9IG90aGVyLmNvbHVtbjoKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgZWxpZiBvdGhlci5saW5lID09IHNlbGYuZW5kLmxpbmU6CisgICAgICAgICMgc2FtZSBmaWxlIGxhc3QgbGluZQorICAgICAgICBpZiBvdGhlci5jb2x1bW4gPD0gc2VsZi5lbmQuY29sdW1uOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICByZXR1cm4gRmFsc2UKIAotIyBsaXN0IG9mIGxvbmcgc3ltYm9scywgaS5lLiB0aG9zZSB0aGF0IHRha2UgbW9yZSB0aGFuIG9uZSBjaGFyYWN0ZXJzCi1jcHBMb25nU3ltYm9scyA9IFsgdG9rQ09OQ0FULCB0b2tMT0dJQ0FORCwgdG9rTE9HSUNPUiwgdG9rU0hMLCB0b2tTSFIsIHRva0VMTElQU0lTLCB0b2tFUVVBTCxcCi0gICAgICAgICAgICAgICAgICAgdG9rTkVRVUFMLCB0b2tMVEUsIHRva0dURSwgdG9rQVJST1csIHRva0lOQ1JFTUVOVCwgdG9rREVDUkVNRU5UIF0KIAotY2xhc3MgQ3BwVG9rZW5pemVyOgotICAgICIiImFuIGFic3RyYWN0IGNsYXNzIHVzZWQgdG8gY29udmVydCBzb21lIGlucHV0IHRleHQgaW50byBhIGxpc3QKLSAgICAgICBvZiB0b2tlbnMuIHJlYWwgaW1wbGVtZW50YXRpb25zIGZvbGxvdyBhbmQgZGlmZmVyIGluIHRoZSBmb3JtYXQKLSAgICAgICBvZiB0aGUgaW5wdXQgdGV4dCBvbmx5IiIiCitTb3VyY2VSYW5nZS5fX2NvbnRhaW5zX18gPSBTb3VyY2VSYW5nZV9fY29udGFpbnNfXworCisKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICBDIFAgUCAgIFQgTyBLIEUgTiBJIFogRSBSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKworY2xhc3MgQ3BwVG9rZW5pemVyKG9iamVjdCk6CisgICAgIiIiQSB0b2tlbml6ZXIgdGhhdCBjb252ZXJ0cyBzb21lIGlucHV0IHRleHQgaW50byBhIGxpc3Qgb2YgdG9rZW5zLgorCisgICAgSXQgY2FsbHMgbGliY2xhbmcncyB0b2tlbml6ZXIgdG8gZ2V0IHRoZSBwYXJzZWQgdG9rZW5zLiBJbiBhZGRpdGlvbiwgaXQKKyAgICB1cGRhdGVzIHRoZSBjdXJzb3IgcHJvcGVydHkgaW4gZWFjaCB0b2tlbiBhZnRlciBwYXJzaW5nLCBieSBjYWxsaW5nCisgICAgZ2V0VG9rZW5zV2l0aEN1cnNvcnMoKS4KKyAgICAiIiIKKworICAgIGNsYW5nX2ZsYWdzID0gWyctRScsICcteCcsICdjJ10KKyAgICBvcHRpb25zID0gVHJhbnNsYXRpb25Vbml0LlBBUlNFX0RFVEFJTEVEX1BST0NFU1NJTkdfUkVDT1JECiAKICAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgICIiImluaXRpYWxpemUgYSBuZXcgQ3BwVG9rZW5pemVyIG9iamVjdCIiIgotICAgICAgICBzZWxmLmVvZiAgPSBGYWxzZSAgIyBlbmQgb2YgZmlsZSByZWFjaGVkID8KLSAgICAgICAgc2VsZi50ZXh0ID0gTm9uZSAgICMgY29udGVudCBvZiBjdXJyZW50IGxpbmUsIHdpdGggZmluYWwgXG4gc3RyaXBwZWQKLSAgICAgICAgc2VsZi5saW5lID0gMCAgICAgICMgbnVtYmVyIG9mIGN1cnJlbnQgbGluZQotICAgICAgICBzZWxmLnBvcyAgPSAwICAgICAgIyBjdXJyZW50IGNoYXJhY3RlciBwb3NpdGlvbiBpbiBjdXJyZW50IGxpbmUKLSAgICAgICAgc2VsZi5sZW4gID0gMCAgICAgICMgbGVuZ3RoIG9mIGN1cnJlbnQgbGluZSB0ZXh0Ci0gICAgICAgIHNlbGYuaGVsZCA9IFRva2VuKCkKKyAgICAgICAgIiIiSW5pdGlhbGl6ZSBhIG5ldyBDcHBUb2tlbml6ZXIgb2JqZWN0LiIiIgorICAgICAgICBzZWxmLl9pbmRleGVyID0gY2xhbmcuY2luZGV4LkluZGV4LmNyZWF0ZSgpCisgICAgICAgIHNlbGYuX3R1ID0gTm9uZQorICAgICAgICBzZWxmLl9pbmRleCA9IDAKKyAgICAgICAgc2VsZi50b2tlbnMgPSBOb25lCiAKLSAgICBkZWYgc2V0TGluZVRleHQoc2VsZixsaW5lKToKLSAgICAgICAgIiIic2V0IHRoZSBjb250ZW50IG9mIHRoZSAobmV4dCkgY3VycmVudCBsaW5lLiBzaG91bGQgYmUgY2FsbGVkCi0gICAgICAgICAgIGJ5IGZpbGxMaW5lVGV4dCgpIGluIGRlcml2ZWQgY2xhc3NlcyIiIgotICAgICAgICBzZWxmLnRleHQgPSBsaW5lCi0gICAgICAgIHNlbGYubGVuICA9IGxlbihsaW5lKQotICAgICAgICBzZWxmLnBvcyAgPSAwCisgICAgZGVmIF9nZXRUb2tlbnNXaXRoQ3Vyc29ycyhzZWxmKToKKyAgICAgICAgIiIiSGVscGVyIG1ldGhvZCB0byByZXR1cm4gYWxsIHRva2VucyB3aXRoIHRoZWlyIGN1cnNvcnMuCiAKLSAgICBkZWYgZmlsbExpbmVUZXh0KHNlbGYpOgotICAgICAgICAiIiJyZWZyZXNoIHRoZSBjb250ZW50IG9mICdsaW5lJyB3aXRoIGEgbmV3IGxpbmUgb2YgaW5wdXQiIiIKLSAgICAgICAgIyB0byBiZSBvdmVycmlkZW4KLSAgICAgICAgc2VsZi5lb2YgPSBUcnVlCisgICAgICAgIFRoZSBjdXJzb3IgcHJvcGVydHkgaW4gYSBjbGFuZyBUb2tlbiBkb2Vzbid0IHByb3ZpZGUgZW5vdWdoCisgICAgICAgIGluZm9ybWF0aW9uLiBCZWNhdXNlIGl0IGlzIHF1ZXJpZWQgYmFzZWQgb24gc2luZ2xlIHRva2VuIGVhY2ggdGltZQorICAgICAgICB3aXRob3V0IGFueSBjb250ZXh0LCBpLmUuIHZpYSBjYWxsaW5nIGNvbmYubGliLmNsYW5nX2Fubm90YXRlVG9rZW5zKCkKKyAgICAgICAgd2l0aCBvbmx5IG9uZSB0b2tlbiBnaXZlbi4gU28gd2Ugb2Z0ZW4gc2VlICdJTlZBTElEX0ZJTEUnIGluIG9uZQorICAgICAgICB0b2tlbidzIGN1cnNvci4gSW4gdGhpcyBmdW5jdGlvbiBpdCBwYXNzZXMgYWxsIHRoZSBhdmFpbGFibGUgdG9rZW5zCisgICAgICAgIHRvIGdldCBtb3JlIGluZm9ybWF0aXZlIGN1cnNvcnMuCisgICAgICAgICIiIgogCi0gICAgZGVmIG1hcmtQb3Moc2VsZix0b2spOgotICAgICAgICAiIiJtYXJrIHRoZSBwb3NpdGlvbiBvZiB0aGUgY3VycmVudCB0b2tlbiBpbiB0aGUgc291cmNlIGZpbGUiIiIKLSAgICAgICAgaWYgc2VsZi5lb2Ygb3Igc2VsZi5wb3MgPiBzZWxmLmxlbjoKLSAgICAgICAgICAgIHRvay5saW5lbm8gPSBzZWxmLmxpbmUgKyAxCi0gICAgICAgICAgICB0b2suY29sbm8gID0gMAorICAgICAgICB0b2tlbnNfbWVtb3J5ID0gY3R5cGVzLlBPSU5URVIoY2xhbmcuY2luZGV4LlRva2VuKSgpCisgICAgICAgIHRva2Vuc19jb3VudCA9IGN0eXBlcy5jX3VpbnQoKQorCisgICAgICAgIGNvbmYubGliLmNsYW5nX3Rva2VuaXplKHNlbGYuX3R1LCBzZWxmLl90dS5jdXJzb3IuZXh0ZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHlwZXMuYnlyZWYodG9rZW5zX21lbW9yeSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0eXBlcy5ieXJlZih0b2tlbnNfY291bnQpKQorCisgICAgICAgIGNvdW50ID0gaW50KHRva2Vuc19jb3VudC52YWx1ZSkKKworICAgICAgICAjIElmIHdlIGdldCBubyB0b2tlbnMsIG5vIG1lbW9yeSB3YXMgYWxsb2NhdGVkLiBCZSBzdXJlIG5vdCB0byByZXR1cm4KKyAgICAgICAgIyBhbnl0aGluZyBhbmQgcG90ZW50aWFsbHkgY2FsbCBhIGRlc3RydWN0b3Igb24gbm90aGluZy4KKyAgICAgICAgaWYgY291bnQgPCAxOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgY3Vyc29ycyA9IChDdXJzb3IgKiBjb3VudCkoKQorICAgICAgICBjdXJzb3JzX21lbW9yeSA9IGN0eXBlcy5jYXN0KGN1cnNvcnMsIGN0eXBlcy5QT0lOVEVSKEN1cnNvcikpCisKKyAgICAgICAgY29uZi5saWIuY2xhbmdfYW5ub3RhdGVUb2tlbnMoc2VsZi5fdHUsIHRva2Vuc19tZW1vcnksIGNvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3JzX21lbW9yeSkKKworICAgICAgICB0b2tlbnNfYXJyYXkgPSBjdHlwZXMuY2FzdCgKKyAgICAgICAgICAgIHRva2Vuc19tZW1vcnksCisgICAgICAgICAgICBjdHlwZXMuUE9JTlRFUihjbGFuZy5jaW5kZXguVG9rZW4gKiBjb3VudCkpLmNvbnRlbnRzCisgICAgICAgIHRva2VuX2dyb3VwID0gVG9rZW5Hcm91cChzZWxmLl90dSwgdG9rZW5zX21lbW9yeSwgdG9rZW5zX2NvdW50KQorCisgICAgICAgIHRva2VucyA9IFtdCisgICAgICAgIGZvciBpIGluIHhyYW5nZSgwLCBjb3VudCk6CisgICAgICAgICAgICB0b2tlbiA9IFRva2VuKHNlbGYuX3R1LCB0b2tlbl9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW50X2RhdGE9dG9rZW5zX2FycmF5W2ldLmludF9kYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwdHJfZGF0YT10b2tlbnNfYXJyYXlbaV0ucHRyX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcj1jdXJzb3JzW2ldKQorICAgICAgICAgICAgIyBXZSBvbmx5IHdhbnQgbm9uLWNvbW1lbnQgdG9rZW5zLgorICAgICAgICAgICAgaWYgdG9rZW4ua2luZCAhPSBUb2tlbktpbmQuQ09NTUVOVDoKKyAgICAgICAgICAgICAgICB0b2tlbnMuYXBwZW5kKHRva2VuKQorCisgICAgICAgIHJldHVybiB0b2tlbnMKKworICAgIGRlZiBwYXJzZVN0cmluZyhzZWxmLCBsaW5lcyk6CisgICAgICAgICIiIlBhcnNlIGEgbGlzdCBvZiB0ZXh0IGxpbmVzIGludG8gYSBCbG9ja0xpc3Qgb2JqZWN0LiIiIgorICAgICAgICBmaWxlXyA9ICdkdW1teS5jJworICAgICAgICBzZWxmLl90dSA9IHNlbGYuX2luZGV4ZXIucGFyc2UoZmlsZV8sIHNlbGYuY2xhbmdfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNhdmVkX2ZpbGVzPVsoZmlsZV8sIGxpbmVzKV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXNlbGYub3B0aW9ucykKKyAgICAgICAgc2VsZi50b2tlbnMgPSBzZWxmLl9nZXRUb2tlbnNXaXRoQ3Vyc29ycygpCisKKyAgICBkZWYgcGFyc2VGaWxlKHNlbGYsIGZpbGVfKToKKyAgICAgICAgIiIiUGFyc2UgYSBmaWxlIGludG8gYSBCbG9ja0xpc3Qgb2JqZWN0LiIiIgorICAgICAgICBzZWxmLl90dSA9IHNlbGYuX2luZGV4ZXIucGFyc2UoZmlsZV8sIHNlbGYuY2xhbmdfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXNlbGYub3B0aW9ucykKKyAgICAgICAgc2VsZi50b2tlbnMgPSBzZWxmLl9nZXRUb2tlbnNXaXRoQ3Vyc29ycygpCisKKyAgICBkZWYgbmV4dFRva2VuKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gbmV4dCB0b2tlbiBmcm9tIHRoZSBsaXN0LiIiIgorICAgICAgICBpZiBzZWxmLl9pbmRleCA8IGxlbihzZWxmLnRva2Vucyk6CisgICAgICAgICAgICB0ID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgICAgICByZXR1cm4gdAogICAgICAgICBlbHNlOgotICAgICAgICAgICAgdG9rLmxpbmVubyA9IHNlbGYubGluZQotICAgICAgICAgICAgdG9rLmNvbG5vICA9IHNlbGYucG9zCi0KLSAgICBkZWYgcGVla0NoYXIoc2VsZik6Ci0gICAgICAgICIiInJldHVybiB0aGUgY3VycmVudCB0b2tlbiB1bmRlciB0aGUgY3Vyc29yIHdpdGhvdXQgbW92aW5nIGl0IiIiCi0gICAgICAgIGlmIHNlbGYuZW9mOgotICAgICAgICAgICAgcmV0dXJuIHRva0VPRgotCi0gICAgICAgIGlmIHNlbGYucG9zID4gc2VsZi5sZW46Ci0gICAgICAgICAgICBzZWxmLnBvcyAgID0gMAotICAgICAgICAgICAgc2VsZi5saW5lICs9IDEKLSAgICAgICAgICAgIHNlbGYuZmlsbExpbmVUZXh0KCkKLSAgICAgICAgICAgIGlmIHNlbGYuZW9mOgotICAgICAgICAgICAgICAgIHJldHVybiB0b2tFT0YKLQotICAgICAgICBpZiBzZWxmLnBvcyA9PSBzZWxmLmxlbjoKLSAgICAgICAgICAgIHJldHVybiB0b2tMTgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYudGV4dFtzZWxmLnBvc10KLQotICAgIGRlZiBwZWVrTkNoYXIoc2VsZixuKToKLSAgICAgICAgIiIidHJ5IHRvIHBlZWsgdGhlIG5leHQgbiBjaGFycyBvbiB0aGUgc2FtZSBsaW5lIiIiCi0gICAgICAgIGlmIHNlbGYucG9zICsgbiA+IHNlbGYubGVuOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgcmV0dXJuIHNlbGYudGV4dFtzZWxmLnBvczpzZWxmLnBvcytuXQogCi0gICAgZGVmIHNraXBDaGFyKHNlbGYpOgotICAgICAgICAiIiJpbmNyZW1lbnQgdGhlIHRva2VuIGN1cnNvciBwb3NpdGlvbiIiIgotICAgICAgICBpZiBub3Qgc2VsZi5lb2Y6Ci0gICAgICAgICAgICBzZWxmLnBvcyArPSAxCiAKLSAgICBkZWYgc2tpcE5DaGFycyhzZWxmLG4pOgotICAgICAgICBpZiBzZWxmLnBvcyArIG4gPD0gc2VsZi5sZW46Ci0gICAgICAgICAgICBzZWxmLnBvcyArPSBuCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICB3aGlsZSBuID4gMDoKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgICAgICBuIC09IDEKK2NsYXNzIENwcFN0cmluZ1Rva2VuaXplcihDcHBUb2tlbml6ZXIpOgorICAgICIiIkEgQ3BwVG9rZW5pemVyIGRlcml2ZWQgY2xhc3MgdGhhdCBhY2NlcHRzIGEgc3RyaW5nIG9mIHRleHQgYXMgaW5wdXQuIiIiCiAKLSAgICBkZWYgbmV4dENoYXIoc2VsZik6Ci0gICAgICAgICIiInJldHJpZXZlIHRoZSB0b2tlbiBhdCB0aGUgY3VycmVudCBjdXJzb3IgcG9zaXRpb24sIHRoZW4gc2tpcCBpdCIiIgotICAgICAgICByZXN1bHQgPSBzZWxmLnBlZWtDaGFyKCkKLSAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgIHJldHVybiAgcmVzdWx0Ci0KLSAgICBkZWYgZ2V0RXNjYXBlKHNlbGYpOgotICAgICAgICAjIHRyeSB0byBnZXQgYWxsIGNoYXJhY3RlcnMgYWZ0ZXIgYSBiYWNrc2xhc2ggKFwpCi0gICAgICAgIHJlc3VsdCA9IHNlbGYubmV4dENoYXIoKQotICAgICAgICBpZiByZXN1bHQgPT0gIjAiOgotICAgICAgICAgICAgIyBvY3RhbCBudW1iZXIgPwotICAgICAgICAgICAgbnVtID0gc2VsZi5wZWVrTkNoYXIoMykKLSAgICAgICAgICAgIGlmIG51bSAhPSBOb25lOgotICAgICAgICAgICAgICAgIGlzT2N0YWwgPSBUcnVlCi0gICAgICAgICAgICAgICAgZm9yIGQgaW4gbnVtOgotICAgICAgICAgICAgICAgICAgICBpZiBub3QgZCBpbiAiMDEyMzQ1NjciOgotICAgICAgICAgICAgICAgICAgICAgICAgaXNPY3RhbCA9IEZhbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGlmIGlzT2N0YWw6Ci0gICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBudW0KLSAgICAgICAgICAgICAgICAgICAgc2VsZi5za2lwTkNoYXJzKDMpCi0gICAgICAgIGVsaWYgcmVzdWx0ID09ICJ4IiBvciByZXN1bHQgPT0gIlgiOgotICAgICAgICAgICAgIyBoZXggbnVtYmVyID8KLSAgICAgICAgICAgIG51bSA9IHNlbGYucGVla05DaGFyKDIpCi0gICAgICAgICAgICBpZiBudW0gIT0gTm9uZToKLSAgICAgICAgICAgICAgICBpc0hleCA9IFRydWUKLSAgICAgICAgICAgICAgICBmb3IgZCBpbiBudW06Ci0gICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkIGluICIwMTIzNDU2NzhhYmNkZWZBQkNERUYiOgotICAgICAgICAgICAgICAgICAgICAgICAgaXNIZXggPSBGYWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBpZiBpc0hleDoKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9IG51bQotICAgICAgICAgICAgICAgICAgICBzZWxmLnNraXBOQ2hhcnMoMikKLSAgICAgICAgZWxpZiByZXN1bHQgPT0gInUiIG9yIHJlc3VsdCA9PSAiVSI6Ci0gICAgICAgICAgICAjIHVuaWNvZGUgY2hhciA/Ci0gICAgICAgICAgICBudW0gPSBzZWxmLnBlZWtOQ2hhcig0KQotICAgICAgICAgICAgaWYgbnVtICE9IE5vbmU6Ci0gICAgICAgICAgICAgICAgaXNIZXggPSBUcnVlCi0gICAgICAgICAgICAgICAgZm9yIGQgaW4gbnVtOgotICAgICAgICAgICAgICAgICAgICBpZiBub3QgZCBpbiAiMDEyMzQ1Njc4YWJjZGVmQUJDREVGIjoKLSAgICAgICAgICAgICAgICAgICAgICAgIGlzSGV4ID0gRmFsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgaWYgaXNIZXg6Ci0gICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBudW0KLSAgICAgICAgICAgICAgICAgICAgc2VsZi5za2lwTkNoYXJzKDQpCi0KLSAgICAgICAgcmV0dXJuIHJlc3VsdAotCi0gICAgZGVmIG5leHRSZWFsVG9rZW4oc2VsZix0b2spOgotICAgICAgICAiIiJyZXR1cm4gbmV4dCBDUFAgdG9rZW4sIHVzZWQgaW50ZXJuYWxseSBieSBuZXh0VG9rZW4oKSIiIgotICAgICAgICBjID0gc2VsZi5uZXh0Q2hhcigpCi0gICAgICAgIGlmIGMgPT0gdG9rRU9GIG9yIGMgPT0gdG9rTE46Ci0gICAgICAgICAgICByZXR1cm4gdG9rLnNldChjKQotCi0gICAgICAgIGlmIGMgPT0gJy8nOgotICAgICAgICAgICAgYyA9IHNlbGYucGVla0NoYXIoKQotICAgICAgICAgICAgaWYgYyA9PSAnLyc6ICAgIyBDKysgY29tbWVudCBsaW5lCi0gICAgICAgICAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICAgICAgYyA9IHNlbGYubmV4dENoYXIoKQotICAgICAgICAgICAgICAgICAgICBpZiBjID09IHRva0VPRiBvciBjID09IHRva0xOOgotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tMTikKLSAgICAgICAgICAgIGlmIGMgPT0gJyonOiAgICMgQyBjb21tZW50IHN0YXJ0Ci0gICAgICAgICAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgICAgICAgICAgdmFsdWUgPSAiLyoiCi0gICAgICAgICAgICAgICAgcHJldl9jID0gTm9uZQotICAgICAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgICAgIGMgPSBzZWxmLm5leHRDaGFyKCkKLSAgICAgICAgICAgICAgICAgICAgaWYgYyA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tFT0YsdmFsdWUpCi0gICAgICAgICAgICAgICAgICAgIGlmIGMgPT0gJy8nIGFuZCBwcmV2X2MgPT0gJyonOgotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgcHJldl9jID0gYwotICAgICAgICAgICAgICAgICAgICB2YWx1ZSArPSBjCi0KLSAgICAgICAgICAgICAgICB2YWx1ZSArPSAiLyIKLSAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tTUEFDRSx2YWx1ZSkKLSAgICAgICAgICAgIGMgPSAnLycKLQotICAgICAgICBpZiBjLmlzc3BhY2UoKToKLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgYzIgPSBzZWxmLnBlZWtDaGFyKCkKLSAgICAgICAgICAgICAgICBpZiBjMiA9PSB0b2tMTiBvciBub3QgYzIuaXNzcGFjZSgpOgotICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGMgKz0gYzIKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva1NQQUNFLGMpCi0KLSAgICAgICAgaWYgYyA9PSAnXFwnOgotICAgICAgICAgICAgaWYgZGVidWdUb2tlbnM6Ci0gICAgICAgICAgICAgICAgcHJpbnQgIm5leHRSZWFsVG9rZW46IFxcIGZvdW5kLCBuZXh0IHRva2VuIGlzICclcyciICUgcmVwcihzZWxmLnBlZWtDaGFyKCkpCi0gICAgICAgICAgICBpZiBzZWxmLnBlZWtDaGFyKCkgPT0gdG9rTE46ICAgIyB0cmFpbGluZyBcCi0gICAgICAgICAgICAgICAgIyBlYXQgdGhlIHRva0xOCi0gICAgICAgICAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgICAgICAgICAgIyB3ZSByZXBsYWNlIGEgdHJhaWxpbmcgXCBieSBhIHRva1NQQUNFIHdob3NlIHZhbHVlIGlzCi0gICAgICAgICAgICAgICAgIyBzaW1wbHkgIlxcIi4gdGhpcyBhbGxvd3MgdXMgdG8gZGV0ZWN0IHRoZW0gbGF0ZXIgd2hlbgotICAgICAgICAgICAgICAgICMgbmVlZGVkLgotICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva1NQQUNFLCJcXCIpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICMgdHJlYXQgYXMgYSBzaW5nbGUgdG9rZW4gaGVyZSA/Ci0gICAgICAgICAgICAgICAgYyArPXNlbGYuZ2V0RXNjYXBlKCkKLSAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldChjKQotCi0gICAgICAgIGlmIGMgPT0gIiciOiAgIyBjaGFycwotICAgICAgICAgICAgYzIgPSBzZWxmLm5leHRDaGFyKCkKLSAgICAgICAgICAgIGMgKz0gYzIKLSAgICAgICAgICAgIGlmIGMyID09ICdcXCc6Ci0gICAgICAgICAgICAgICAgYyArPSBzZWxmLmdldEVzY2FwZSgpCi0KLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgYzIgPSBzZWxmLm5leHRDaGFyKCkKLSAgICAgICAgICAgICAgICBpZiBjMiA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgYyArPSBjMgotICAgICAgICAgICAgICAgIGlmIGMyID09ICInIjoKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLQotICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rU1RSSU5HLCBjKQotCi0gICAgICAgIGlmIGMgPT0gJyInOiAgIyBzdHJpbmdzCi0gICAgICAgICAgICBxdW90ZSA9IDAKLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgYzIgID0gc2VsZi5uZXh0Q2hhcigpCi0gICAgICAgICAgICAgICAgaWYgYzIgPT0gdG9rRU9GOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tTVFJJTkcsYykKLQotICAgICAgICAgICAgICAgIGMgKz0gYzIKLSAgICAgICAgICAgICAgICBpZiBub3QgcXVvdGU6Ci0gICAgICAgICAgICAgICAgICAgIGlmIGMyID09ICciJzoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva1NUUklORyxjKQotICAgICAgICAgICAgICAgICAgICBpZiBjMiA9PSAiXFwiOgotICAgICAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSAxCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSAwCi0KLSAgICAgICAgaWYgYyA+PSAiMCIgYW5kIGMgPD0gIjkiOiAgIyBpbnRlZ2VycyA/Ci0gICAgICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgICAgIGMyID0gc2VsZi5wZWVrQ2hhcigpCi0gICAgICAgICAgICAgICAgaWYgYzIgPT0gdG9rTE4gb3IgKG5vdCBjMi5pc2FsbnVtKCkgYW5kIGMyICE9ICJfIik6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgYyArPSBjMgotICAgICAgICAgICAgICAgIHNlbGYuc2tpcENoYXIoKQotICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rTlVNQkVSLGMpCi0KLSAgICAgICAgaWYgYy5pc2FsbnVtKCkgb3IgYyA9PSAiXyI6ICAjIGlkZW50aWZpZXJzID8KLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgYzIgPSBzZWxmLnBlZWtDaGFyKCkKLSAgICAgICAgICAgICAgICBpZiBjMiA9PSB0b2tMTiBvciAobm90IGMyLmlzYWxudW0oKSBhbmQgYzIgIT0gIl8iKToKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBjICs9IGMyCi0gICAgICAgICAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgICAgICBpZiBjID09IHRva0RFRklORUQ6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rREVGSU5FRCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rSURFTlQsYykKLQotICAgICAgICAjIGNoZWNrIHNwZWNpYWwgc3ltYm9scwotICAgICAgICBmb3Igc2sgaW4gY3BwTG9uZ1N5bWJvbHM6Ci0gICAgICAgICAgICBpZiBjID09IHNrWzBdOgotICAgICAgICAgICAgICAgIHNrbGVuID0gbGVuKHNrWzE6XSkKLSAgICAgICAgICAgICAgICBpZiBzZWxmLnBvcyArIHNrbGVuIDw9IHNlbGYubGVuIGFuZCBcCi0gICAgICAgICAgICAgICAgICAgc2VsZi50ZXh0W3NlbGYucG9zOnNlbGYucG9zK3NrbGVuXSA9PSBza1sxOl06Ci0gICAgICAgICAgICAgICAgICAgIHNlbGYucG9zICs9IHNrbGVuCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHNrKQotCi0gICAgICAgIHJldHVybiB0b2suc2V0KGMpCi0KLSAgICBkZWYgbmV4dFRva2VuKHNlbGYsdG9rKToKLSAgICAgICAgIiIicmV0dXJuIHRoZSBuZXh0IHRva2VuIGZyb20gdGhlIGlucHV0IHRleHQuIHRoaXMgZnVuY3Rpb24KLSAgICAgICAgICAgcmVhbGx5IHVwZGF0ZXMgJ3RvaycsIGFuZCBkb2VzIG5vdCByZXR1cm4gYSBuZXcgb25lIiIiCi0gICAgICAgIHNlbGYubWFya1Bvcyh0b2spCi0gICAgICAgIHNlbGYubmV4dFJlYWxUb2tlbih0b2spCi0KLSAgICBkZWYgZ2V0VG9rZW4oc2VsZik6Ci0gICAgICAgIHRvayA9IFRva2VuKCkKLSAgICAgICAgc2VsZi5uZXh0VG9rZW4odG9rKQotICAgICAgICBpZiBkZWJ1Z1Rva2VuczoKLSAgICAgICAgICAgIHByaW50ICJnZXRUb2tlbnM6ICVzIiAlIHJlcHIodG9rKQotICAgICAgICByZXR1cm4gdG9rCi0KLSAgICBkZWYgdG9Ub2tlbkxpc3Qoc2VsZik6Ci0gICAgICAgICIiImNvbnZlcnQgdGhlIGlucHV0IHRleHQgb2YgYSBDcHBUb2tlbml6ZXIgaW50byBhIGRpcmVjdAotICAgICAgICAgICBsaXN0IG9mIHRva2VuIG9iamVjdHMuIHRva0VPRiBpcyBzdHJpcHBlZCBmcm9tIHRoZSByZXN1bHQiIiIKLSAgICAgICAgcmVzdWx0ID0gW10KLSAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgIHRvayA9IFRva2VuKCkKLSAgICAgICAgICAgIHNlbGYubmV4dFRva2VuKHRvaykKLSAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQodG9rKQotICAgICAgICByZXR1cm4gcmVzdWx0Ci0KLWNsYXNzIENwcExpbmVUb2tlbml6ZXIoQ3BwVG9rZW5pemVyKToKLSAgICAiIiJhIENwcFRva2VuaXplciBkZXJpdmVkIGNsYXNzIHRoYXQgYWNjZXB0cyBhIHNpbmdsZSBsaW5lIG9mIHRleHQgYXMgaW5wdXQiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZixsaW5lLGxpbmVubz0xKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbGluZSk6CiAgICAgICAgIENwcFRva2VuaXplci5fX2luaXRfXyhzZWxmKQotICAgICAgICBzZWxmLmxpbmUgPSBsaW5lbm8KLSAgICAgICAgc2VsZi5zZXRMaW5lVGV4dChsaW5lKQotCi0KLWNsYXNzIENwcExpbmVzVG9rZW5pemVyKENwcFRva2VuaXplcik6Ci0gICAgIiIiYSBDcHBUb2tlbml6ZXIgZGVyaXZlZCBjbGFzcyB0aGF0IGFjY2VwdHMgYSBsaXN0IG9mIHRleGR0IGxpbmVzIGFzIGlucHV0LgotICAgICAgIHRoZSBsaW5lcyBtdXN0IG5vdCBoYXZlIGEgdHJhaWxpbmcgXG4iIiIKLSAgICBkZWYgX19pbml0X18oc2VsZixsaW5lcz1bXSxsaW5lbm89MSk6Ci0gICAgICAgICIiImluaXRpYWxpemUgYSBDcHBMaW5lc1Rva2VuaXplci4geW91IGNhbiBsYXRlciBhZGQgbGluZXMgdXNpbmcgYWRkTGluZXMoKSIiIgotICAgICAgICBDcHBUb2tlbml6ZXIuX19pbml0X18oc2VsZikKLSAgICAgICAgc2VsZi5saW5lICA9IGxpbmVubwotICAgICAgICBzZWxmLmxpbmVzID0gbGluZXMKLSAgICAgICAgc2VsZi5pbmRleCA9IDAKLSAgICAgICAgc2VsZi5jb3VudCA9IGxlbihsaW5lcykKLQotICAgICAgICBpZiBzZWxmLmNvdW50ID4gMDoKLSAgICAgICAgICAgIHNlbGYuZmlsbExpbmVUZXh0KCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuZW9mID0gVHJ1ZQotCi0gICAgZGVmIGFkZExpbmUoc2VsZixsaW5lKToKLSAgICAgICAgIiIiYWRkIGEgbGluZSB0byBhIENwcExpbmVzVG9rZW5pemVyLiB0aGlzIGNhbiBiZSBkb25lIGFmdGVyIHRva2VuaXphdGlvbgotICAgICAgICAgICBoYXBwZW5zIiIiCi0gICAgICAgIGlmIHNlbGYuY291bnQgPT0gMDoKLSAgICAgICAgICAgIHNlbGYuc2V0TGluZVRleHQobGluZSkKLSAgICAgICAgICAgIHNlbGYuaW5kZXggPSAxCi0gICAgICAgIHNlbGYubGluZXMuYXBwZW5kKGxpbmUpCi0gICAgICAgIHNlbGYuY291bnQgKz0gMQotICAgICAgICBzZWxmLmVvZiAgICA9IEZhbHNlCi0KLSAgICBkZWYgZmlsbExpbmVUZXh0KHNlbGYpOgotICAgICAgICBpZiBzZWxmLmluZGV4IDwgc2VsZi5jb3VudDoKLSAgICAgICAgICAgIHNlbGYuc2V0TGluZVRleHQoc2VsZi5saW5lc1tzZWxmLmluZGV4XSkKLSAgICAgICAgICAgIHNlbGYuaW5kZXggKz0gMQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5lb2YgPSBUcnVlCisgICAgICAgIHNlbGYucGFyc2VTdHJpbmcobGluZSkKIAogCiBjbGFzcyBDcHBGaWxlVG9rZW5pemVyKENwcFRva2VuaXplcik6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsZmlsZSxsaW5lbm89MSk6Ci0gICAgICAgIENwcFRva2VuaXplci5fX2luaXRfXyhzZWxmKQotICAgICAgICBzZWxmLmZpbGUgPSBmaWxlCi0gICAgICAgIHNlbGYubGluZSA9IGxpbmVubworICAgICIiIkEgQ3BwVG9rZW5pemVyIGRlcml2ZWQgY2xhc3MgdGhhdCBhY2NlcHRzIGEgZmlsZSBhcyBpbnB1dC4iIiIKIAotICAgIGRlZiBmaWxsTGluZVRleHQoc2VsZik6Ci0gICAgICAgIGxpbmUgPSBzZWxmLmZpbGUucmVhZGxpbmUoKQotICAgICAgICBpZiBsZW4obGluZSkgPiAwOgotICAgICAgICAgICAgaWYgbGluZVstMV0gPT0gJ1xuJzoKLSAgICAgICAgICAgICAgICBsaW5lID0gbGluZVs6LTFdCi0gICAgICAgICAgICBpZiBsZW4obGluZSkgPiAwIGFuZCBsaW5lWy0xXSA9PSAiXHIiOgotICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KLSAgICAgICAgICAgIHNlbGYuc2V0TGluZVRleHQobGluZSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuZW9mID0gVHJ1ZQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlXyk6CisgICAgICAgIENwcFRva2VuaXplci5fX2luaXRfXyhzZWxmKQorICAgICAgICBzZWxmLnBhcnNlRmlsZShmaWxlXykKKwogCiAjIFVuaXQgdGVzdGluZwogIwotY2xhc3MgQ3BwVG9rZW5pemVyVGVzdGVyOgotICAgICIiImEgY2xhc3MgdXNlZCB0byB0ZXN0IENwcFRva2VuaXplciBjbGFzc2VzIiIiCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsdG9rZW5pemVyPU5vbmUpOgotICAgICAgICBzZWxmLnRva2VuaXplciA9IHRva2VuaXplcgotICAgICAgICBzZWxmLnRva2VuICAgICA9IFRva2VuKCkKK2NsYXNzIENwcFRva2VuaXplclRlc3RlcihvYmplY3QpOgorICAgICIiIkEgY2xhc3MgdXNlZCB0byB0ZXN0IENwcFRva2VuaXplciBjbGFzc2VzLiIiIgogCi0gICAgZGVmIHNldFRva2VuaXplcihzZWxmLHRva2VuaXplcik6Ci0gICAgICAgIHNlbGYudG9rZW5pemVyID0gdG9rZW5pemVyCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHRva2VuaXplcj1Ob25lKToKKyAgICAgICAgc2VsZi5fdG9rZW5pemVyID0gdG9rZW5pemVyCisgICAgICAgIHNlbGYuX3Rva2VuID0gTm9uZQogCi0gICAgZGVmIGV4cGVjdChzZWxmLGlkKToKLSAgICAgICAgc2VsZi50b2tlbml6ZXIubmV4dFRva2VuKHNlbGYudG9rZW4pCi0gICAgICAgIHRva2lkID0gc2VsZi50b2tlbi5pZAorICAgIGRlZiBzZXRUb2tlbml6ZXIoc2VsZiwgdG9rZW5pemVyKToKKyAgICAgICAgc2VsZi5fdG9rZW5pemVyID0gdG9rZW5pemVyCisKKyAgICBkZWYgZXhwZWN0KHNlbGYsIGlkKToKKyAgICAgICAgc2VsZi5fdG9rZW4gPSBzZWxmLl90b2tlbml6ZXIubmV4dFRva2VuKCkKKyAgICAgICAgaWYgc2VsZi5fdG9rZW4gaXMgTm9uZToKKyAgICAgICAgICAgIHRva2lkID0gJycKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRva2lkID0gc2VsZi5fdG9rZW4uaWQKICAgICAgICAgaWYgdG9raWQgPT0gaWQ6CiAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgaWYgc2VsZi50b2tlbi52YWx1ZSA9PSBpZCBhbmQgKHRva2lkID09IHRva0lERU5UIG9yIHRva2lkID09IHRva05VTUJFUik6Ci0gICAgICAgICAgICByZXR1cm4KLSAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbiwgIiMjIyAgQkFEIFRPS0VOOiAnJXMnIGV4cGVjdGluZyAnJXMnIiAlIChzZWxmLnRva2VuLmlkLGlkKQorICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuKCIjIyMgIEJBRCBUT0tFTjogJyVzJyBleHBlY3RpbmcgJyVzJyIgJSAoCisgICAgICAgICAgICB0b2tpZCwgaWQpKQogCi0gICAgZGVmIGV4cGVjdFRva2VuKHNlbGYsaWQsbGluZSxjb2wpOgorICAgIGRlZiBleHBlY3RUb2tlbihzZWxmLCBpZCwgbGluZSwgY29sKToKICAgICAgICAgc2VsZi5leHBlY3QoaWQpCi0gICAgICAgIGlmIHNlbGYudG9rZW4ubGluZW5vICE9IGxpbmU6Ci0gICAgICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuLCAiIyMjICBCQUQgTElORU5POiB0b2tlbiAnJXMnIGdvdCAnJWQnIGV4cGVjdGluZyAnJWQnIiAlIChpZCxzZWxmLnRva2VuLmxpbmVubyxsaW5lKQotICAgICAgICBpZiBzZWxmLnRva2VuLmNvbG5vICE9IGNvbDoKLSAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4sICIjIyMgIEJBRCBDT0xOTzogJyVkJyBleHBlY3RpbmcgJyVkJyIgJSAoc2VsZi50b2tlbi5jb2xubyxjb2wpCisgICAgICAgIGlmIHNlbGYuX3Rva2VuLmxvY2F0aW9uLmxpbmUgIT0gbGluZToKKyAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4oCisgICAgICAgICAgICAgICAgIiMjIyAgQkFEIExJTkVOTzogdG9rZW4gJyVzJyBnb3QgJyVkJyBleHBlY3RpbmcgJyVkJyIgJSAoCisgICAgICAgICAgICAgICAgICAgIGlkLCBzZWxmLl90b2tlbi5saW5lbm8sIGxpbmUpKQorICAgICAgICBpZiBzZWxmLl90b2tlbi5sb2NhdGlvbi5jb2x1bW4gIT0gY29sOgorICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbigiIyMjICBCQUQgQ09MTk86ICclZCcgZXhwZWN0aW5nICclZCciICUgKAorICAgICAgICAgICAgICAgIHNlbGYuX3Rva2VuLmNvbG5vLCBjb2wpKQogCi0gICAgZGVmIGV4cGVjdFRva2VuVmFsKHNlbGYsaWQsdmFsdWUsbGluZSxjb2wpOgotICAgICAgICBzZWxmLmV4cGVjdFRva2VuKGlkLGxpbmUsY29sKQotICAgICAgICBpZiBzZWxmLnRva2VuLnZhbHVlICE9IHZhbHVlOgotICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbiwgIiMjIyAgQkFEIFZBTFVFOiAnJXMnIGV4cGVjdGluZyAnJXMnIiAlIChzZWxmLnRva2VuLnZhbHVlLHZhbHVlKQorICAgIGRlZiBleHBlY3RUb2tlbnMoc2VsZiwgdG9rZW5zKToKKyAgICAgICAgZm9yIGlkLCBsaW5lLCBjb2wgaW4gdG9rZW5zOgorICAgICAgICAgICAgc2VsZi5leHBlY3RUb2tlbihpZCwgbGluZSwgY29sKQogCi0gICAgZGVmIGV4cGVjdExpc3Qoc2VsZixsaXN0KToKLSAgICAgICAgZm9yIGl0ZW0gaW4gbGlzdDoKKyAgICBkZWYgZXhwZWN0TGlzdChzZWxmLCBsaXN0Xyk6CisgICAgICAgIGZvciBpdGVtIGluIGxpc3RfOgogICAgICAgICAgICAgc2VsZi5leHBlY3QoaXRlbSkKIAorCiBkZWYgdGVzdF9DcHBUb2tlbml6ZXIoKToKICAgICB0ZXN0ZXIgPSBDcHBUb2tlbml6ZXJUZXN0ZXIoKQogCi0gICAgdGVzdGVyLnNldFRva2VuaXplciggQ3BwTGluZVRva2VuaXplcigiI2FuL2V4YW1wbGUgICYmICgwMTkyM194eSkiKSApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsiIyIsICJhbiIsICIvIiwgImV4YW1wbGUiLCB0b2tTUEFDRSwgdG9rTE9HSUNBTkQsIHRva1NQQUNFLCB0b2tMUEFSRU4sICIwMTkyM194eSIsIFwKLSAgICAgICAgICAgICAgICAgICAgICAgdG9rUlBBUkVOLCB0b2tMTiwgdG9rRU9GXSApCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoIiNhbi9leGFtcGxlICAmJiAoMDE5MjNfeHkpIikpCisgICAgdGVzdGVyLmV4cGVjdExpc3QoWyIjIiwgImFuIiwgIi8iLCAiZXhhbXBsZSIsIHRva0xPR0lDQU5ELCB0b2tMUEFSRU4sCisgICAgICAgICAgICAgICAgICAgICAgICIwMTkyM194eSIsIHRva1JQQVJFTl0pCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lVG9rZW5pemVyKCJGT08oQkFSKSAmJiBkZWZpbmVkKEJBWikiKSApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsiRk9PIiwgdG9rTFBBUkVOLCAiQkFSIiwgdG9rUlBBUkVOLCB0b2tTUEFDRSwgdG9rTE9HSUNBTkQsIHRva1NQQUNFLAotICAgICAgICAgICAgICAgICAgICAgICAgdG9rREVGSU5FRCwgdG9rTFBBUkVOLCAiQkFaIiwgdG9rUlBBUkVOLCB0b2tMTiwgdG9rRU9GXSApCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoIkZPTyhCQVIpICYmIGRlZmluZWQoQkFaKSIpKQorICAgIHRlc3Rlci5leHBlY3RMaXN0KFsiRk9PIiwgdG9rTFBBUkVOLCAiQkFSIiwgdG9rUlBBUkVOLCB0b2tMT0dJQ0FORCwKKyAgICAgICAgICAgICAgICAgICAgICAgImRlZmluZWQiLCB0b2tMUEFSRU4sICJCQVoiLCB0b2tSUEFSRU5dKQogCi0gICAgdGVzdGVyLnNldFRva2VuaXplciggQ3BwTGluZXNUb2tlbml6ZXIoIFsiLyoiLCAiIyIsICIqLyJdICkgKQotICAgIHRlc3Rlci5leHBlY3RMaXN0KCBbIHRva1NQQUNFLCB0b2tMTiwgdG9rRU9GIF0gKQorICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoQ3BwU3RyaW5nVG9rZW5pemVyKCIvKlxuI1xuKi8iKSkKKyAgICB0ZXN0ZXIuZXhwZWN0TGlzdChbXSkKIAotICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoIENwcExpbmVzVG9rZW5pemVyKCBbImZpcnN0IiwgInNlY29uZCJdICkgKQotICAgIHRlc3Rlci5leHBlY3RMaXN0KCBbICJmaXJzdCIsIHRva0xOLCAic2Vjb25kIiwgdG9rTE4sIHRva0VPRiBdICkKKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiZmlyc3RcbnNlY29uZCIpKQorICAgIHRlc3Rlci5leHBlY3RMaXN0KFsiZmlyc3QiLCAic2Vjb25kIl0pCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lc1Rva2VuaXplciggWyJmaXJzdCBzZWNvbmQiLCAiICB0aGlyZCJdICkgKQotICAgIHRlc3Rlci5leHBlY3RUb2tlbiggImZpcnN0IiwgMSwgMCApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tTUEFDRSwgMSwgNSApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCAic2Vjb25kIiwgMSwgNiApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tMTiwgMSwgMTIgKQotICAgIHRlc3Rlci5leHBlY3RUb2tlbiggdG9rU1BBQ0UsIDIsIDAgKQotICAgIHRlc3Rlci5leHBlY3RUb2tlbiggInRoaXJkIiwgMiwgMiApCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoImZpcnN0IHNlY29uZFxuICB0aGlyZCIpKQorICAgIHRlc3Rlci5leHBlY3RUb2tlbnMoWygiZmlyc3QiLCAxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoInNlY29uZCIsIDEsIDcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICgidGhpcmQiLCAyLCAzKV0pCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lc1Rva2VuaXplciggWyAiYm9vIC8qIHdoYXQgdGhlIiwgImhlbGwgKi8iIF0gKSApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsgImJvbyIsIHRva1NQQUNFIF0gKQotICAgIHRlc3Rlci5leHBlY3RUb2tlblZhbCggdG9rU1BBQ0UsICIvKiB3aGF0IHRoZVxuaGVsbCAqLyIsIDEsIDQgKQotICAgIHRlc3Rlci5leHBlY3RMaXN0KCBbIHRva0xOLCB0b2tFT0YgXSApCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoImJvbyAvKiB3aGF0IHRoZVxuaGVsbCAqLyIpKQorICAgIHRlc3Rlci5leHBlY3RUb2tlbnMoWygiYm9vIiwgMSwgMSldKQogCi0gICAgdGVzdGVyLnNldFRva2VuaXplciggQ3BwTGluZXNUb2tlbml6ZXIoIFsgImFuIFxcIiwgIiBleGFtcGxlIiBdICkgKQotICAgIHRlc3Rlci5leHBlY3RUb2tlbiggImFuIiwgMSwgMCApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tTUEFDRSwgMSwgMiApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuVmFsKCB0b2tTUEFDRSwgIlxcIiwgMSwgMyApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tTUEFDRSwgMiwgMCApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCAiZXhhbXBsZSIsIDIsIDEgKQotICAgIHRlc3Rlci5leHBlY3RUb2tlbiggdG9rTE4sIDIsIDggKQotCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoImFuIFxcXG4gZXhhbXBsZSIpKQorICAgIHRlc3Rlci5leHBlY3RUb2tlbnMoWygiYW4iLCAxLCAxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoImV4YW1wbGUiLCAyLCAyKV0pCiAgICAgcmV0dXJuIFRydWUKIAogCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgQyBQIFAgICBFIFggUCBSIEUgUyBTIEkgTyBOIFMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgQyBQIFAgICBFIFggUCBSIEUgUyBTIEkgTyBOIFMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCi1jbGFzcyBDcHBFeHByOgotICAgICIiImEgY2xhc3MgdGhhdCBtb2RlbHMgdGhlIGNvbmRpdGlvbiBvZiAjaWYgZGlyZWN0aXZlcyBpbnRvCi0gICAgICAgIGFuIGV4cHJlc3Npb24gdHJlZS4gZWFjaCBub2RlIGluIHRoZSB0cmVlIGlzIG9mIHRoZSBmb3JtIChvcCxhcmcpIG9yIChvcCxhcmcxLGFyZzIpCi0gICAgICAgIHdoZXJlICJvcCIgaXMgYSBzdHJpbmcgZGVzY3JpYmluZyB0aGUgb3BlcmF0aW9uIiIiCiAKLSAgICB1bmFyaWVzICA9IFsgIiEiLCAifiIgXQotICAgIGJpbmFyaWVzID0gWyAiKyIsICItIiwgIjwiLCAiPD0iLCAiPj0iLCAiPiIsICImJiIsICJ8fCIsICIqIiwgIi8iLCAiJSIsICImIiwgInwiLCAiXiIsICI8PCIsICI+PiIsICI9PSIsICIhPSIsICI/IiwgIjoiIF0KK2NsYXNzIENwcEV4cHIob2JqZWN0KToKKyAgICAiIiJBIGNsYXNzIHRoYXQgbW9kZWxzIHRoZSBjb25kaXRpb24gb2YgI2lmIGRpcmVjdGl2ZXMgaW50byBhbiBleHByIHRyZWUuCisKKyAgICBFYWNoIG5vZGUgaW4gdGhlIHRyZWUgaXMgb2YgdGhlIGZvcm0gKG9wLCBhcmcpIG9yIChvcCwgYXJnMSwgYXJnMikgd2hlcmUKKyAgICAib3AiIGlzIGEgc3RyaW5nIGRlc2NyaWJpbmcgdGhlIG9wZXJhdGlvbgorICAgICIiIgorCisgICAgdW5hcmllcyA9IFsiISIsICJ+Il0KKyAgICBiaW5hcmllcyA9IFsiKyIsICItIiwgIjwiLCAiPD0iLCAiPj0iLCAiPiIsICImJiIsICJ8fCIsICIqIiwgIi8iLCAiJSIsCisgICAgICAgICAgICAgICAgIiYiLCAifCIsICJeIiwgIjw8IiwgIj4+IiwgIj09IiwgIiE9IiwgIj8iLCAiOiJdCiAgICAgcHJlY2VkZW5jZXMgPSB7CiAgICAgICAgICI/IjogMSwgIjoiOiAxLAogICAgICAgICAifHwiOiAyLApAQCAtNTcwLDE5NyArNDEzLDE5MSBAQAogICAgICAgICAiISI6IDEyLCAifiI6IDEyCiAgICAgfQogCi0gICAgcmVfY3BwX2NvbnN0YW50ID0gcmUuY29tcGlsZShyIigoXGR8XHd8XykrKSIpCi0KICAgICBkZWYgX19pbml0X18oc2VsZiwgdG9rZW5zKToKLSAgICAgICAgIiIiaW5pdGlhbGl6ZSBhIENwcEV4cHIuICd0b2tlbnMnIG11c3QgYmUgYSBDcHBUb2tlbiBsaXN0IiIiCi0gICAgICAgIHNlbGYudG9rICA9IHRva2VucwotICAgICAgICBzZWxmLm4gICAgPSBsZW4odG9rZW5zKQotICAgICAgICBzZWxmLmkgICAgPSAwCisgICAgICAgICIiIkluaXRpYWxpemUgYSBDcHBFeHByLiAndG9rZW5zJyBtdXN0IGJlIGEgQ3BwVG9rZW4gbGlzdC4iIiIKKyAgICAgICAgc2VsZi50b2tlbnMgPSB0b2tlbnMKKyAgICAgICAgc2VsZi5fbnVtX3Rva2VucyA9IGxlbih0b2tlbnMpCisgICAgICAgIHNlbGYuX2luZGV4ID0gMAorCiAgICAgICAgIGlmIGRlYnVnQ3BwRXhwcjoKICAgICAgICAgICAgIHByaW50ICJDcHBFeHByOiB0cnlpbmcgdG8gcGFyc2UgJXMiICUgcmVwcih0b2tlbnMpCiAgICAgICAgIHNlbGYuZXhwciA9IHNlbGYucGFyc2VFeHByZXNzaW9uKDApCiAgICAgICAgIGlmIGRlYnVnQ3BwRXhwcjoKICAgICAgICAgICAgIHByaW50ICJDcHBFeHByOiBnb3QgIiArIHJlcHIoc2VsZi5leHByKQotICAgICAgICBpZiBzZWxmLmkgIT0gc2VsZi5uOgotICAgICAgICAgICAgcHJpbnQgJ2NyYXAgYXQgZW5kIG9mIGlucHV0ICglZCAhPSAlZCk6ICVzJyAlIChzZWxmLmksIHNlbGYubiwgcmVwcih0b2tlbnMpKQotICAgICAgICAgICAgcmFpc2UKLQorICAgICAgICBpZiBzZWxmLl9pbmRleCAhPSBzZWxmLl9udW1fdG9rZW5zOgorICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLCAiY3JhcCBhdCBlbmQgb2YgaW5wdXQgKCVkICE9ICVkKTogJXMiCisgICAgICAgICAgICAgICAgICAgICAgICUgKHNlbGYuX2luZGV4LCBzZWxmLl9udW1fdG9rZW5zLCByZXByKHRva2VucykpKQogCiAgICAgZGVmIHRocm93KHNlbGYsIGV4Y2VwdGlvbiwgbXNnKToKLSAgICAgICAgaWYgc2VsZi5pIDwgc2VsZi5uOgotICAgICAgICAgICAgdG9rID0gc2VsZi50b2tbc2VsZi5pXQotICAgICAgICAgICAgcHJpbnQgIiVkOiVkOiAlcyIgJSAodG9rLmxpbmVubyx0b2suY29sbm8sbXNnKQorICAgICAgICBpZiBzZWxmLl9pbmRleCA8IHNlbGYuX251bV90b2tlbnM6CisgICAgICAgICAgICB0b2sgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgICAgIHByaW50ICIlZDolZDogJXMiICUgKHRvay5sb2NhdGlvbi5saW5lLCB0b2subG9jYXRpb24uY29sdW1uLCBtc2cpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBwcmludCAiRU9GOiAlcyIgJSBtc2cKICAgICAgICAgcmFpc2UgZXhjZXB0aW9uKG1zZykKIAotCi0gICAgZGVmIHNraXBfc3BhY2VzKHNlbGYpOgotICAgICAgICAiIiJza2lwIHNwYWNlcyBpbiBpbnB1dCB0b2tlbiBsaXN0IiIiCi0gICAgICAgIHdoaWxlIHNlbGYuaSA8IHNlbGYubjoKLSAgICAgICAgICAgIHQgPSBzZWxmLnRva1tzZWxmLmldCi0gICAgICAgICAgICBpZiB0LmlkICE9IHRva1NQQUNFIGFuZCB0LmlkICE9IHRva0xOOgotICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBzZWxmLmkgKz0gMQotCi0KICAgICBkZWYgZXhwZWN0SWQoc2VsZiwgaWQpOgotICAgICAgICAiIiJjaGVjayB0aGF0IGEgZ2l2ZW4gdG9rZW4gaWQgaXMgYXQgdGhlIGN1cnJlbnQgcG9zaXRpb24sIHRoZW4gc2tpcCBvdmVyIGl0IiIiCi0gICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uIG9yIHNlbGYudG9rW3NlbGYuaV0uaWQgIT0gaWQ6Ci0gICAgICAgICAgICBzZWxmLnRocm93KEJhZEV4cGVjdGVkVG9rZW4sc2VsZi5pLCIjIyMgZXhwZWN0aW5nICclcycgaW4gZXhwcmVzc2lvbiwgZ290ICclcyciICUgKGlkLCBzZWxmLnRva1tzZWxmLmldLmlkKSkKLSAgICAgICAgc2VsZi5pICs9IDEKLQotCi0gICAgZGVmIGV4cGVjdElkZW50KHNlbGYpOgotICAgICAgICBzZWxmLnNraXBfc3BhY2VzKCkKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubiBvciBzZWxmLnRva1tzZWxmLmldLmlkICE9IHRva0lERU5UOgotICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLCBzZWxmLmksIiMjIyBleHBlY3RpbmcgaWRlbnRpZmllciBpbiBleHByZXNzaW9uLCBnb3QgJyVzJyIgJSAoaWQsIHNlbGYudG9rW3NlbGYuaV0uaWQpKQotICAgICAgICBzZWxmLmkgKz0gMQotCisgICAgICAgICIiIkNoZWNrIHRoYXQgYSBnaXZlbiB0b2tlbiBpZCBpcyBhdCB0aGUgY3VycmVudCBwb3NpdGlvbi4iIiIKKyAgICAgICAgdG9rZW4gPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VucyBvciB0b2tlbi5pZCAhPSBpZDoKKyAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIiMjIyBleHBlY3RpbmcgJyVzJyBpbiBleHByZXNzaW9uLCBnb3QgJyVzJyIgJSAoCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpZCwgdG9rZW4uaWQpKQorICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAKICAgICBkZWYgaXNfZGVjaW1hbChzZWxmKToKLSAgICAgICAgdiA9IHNlbGYudG9rW3NlbGYuaV0udmFsdWVbOl0KLSAgICAgICAgd2hpbGUgbGVuKHYpID4gMCBhbmQgdlstMV0gaW4gIlVMdWwiOgotICAgICAgICAgICAgdiA9IHZbOi0xXQotICAgICAgICBmb3IgZGlnaXQgaW4gdjoKLSAgICAgICAgICAgIGlmIG5vdCBkaWdpdC5pc2RpZ2l0KCk6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKLQotICAgICAgICBzZWxmLmkgKz0gMQotICAgICAgICByZXR1cm4gKCJpbnQiLCBzdHJpbmcuYXRvaSh2KSkKLQotCi0gICAgZGVmIGlzX2hleGFkZWNpbWFsKHNlbGYpOgotICAgICAgICB2ID0gc2VsZi50b2tbc2VsZi5pXS52YWx1ZVs6XQotICAgICAgICB3aGlsZSBsZW4odikgPiAwIGFuZCB2Wy0xXSBpbiAiVUx1bCI6Ci0gICAgICAgICAgICB2ID0gdls6LTFdCi0gICAgICAgIGlmIGxlbih2KSA+IDIgYW5kICh2WzA6Ml0gPT0gIjB4IiBvciB2WzA6Ml0gPT0gIjBYIik6Ci0gICAgICAgICAgICBmb3IgZGlnaXQgaW4gdlsyOl06Ci0gICAgICAgICAgICAgICAgaWYgbm90IGRpZ2l0IGluICIwMTIzNDU2Nzg5YWJjZGVmQUJDREVGIjoKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKLQotICAgICAgICAgICAgIyBmb3IgYSBoZXggZXhwcmVzc2lvbiB0dXBsZSwgdGhlIGFyZ3VtZW50Ci0gICAgICAgICAgICAjIGlzIHRoZSB2YWx1ZSBhcyBhbiBpbnRlZ2VyCi0gICAgICAgICAgICBzZWxmLmkgKz0gMQotICAgICAgICAgICAgcmV0dXJuICgiaGV4IiwgaW50KHZbMjpdLCAxNikpCi0KLSAgICAgICAgcmV0dXJuIE5vbmUKLQotCi0gICAgZGVmIGlzX2ludGVnZXIoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYudG9rW3NlbGYuaV0uaWQgIT0gdG9rTlVNQkVSOgorICAgICAgICB0b2tlbiA9IHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XS5pZAorICAgICAgICBpZiB0b2tlblstMV0gaW4gIlVMdWwiOgorICAgICAgICAgICAgdG9rZW4gPSB0b2tlbls6LTFdCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHZhbCA9IGludCh0b2tlbiwgMTApCisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgICAgICByZXR1cm4gKCdpbnQnLCB2YWwpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAotICAgICAgICBjID0gc2VsZi5pc19kZWNpbWFsKCkKLSAgICAgICAgaWYgYzogcmV0dXJuIGMKKyAgICBkZWYgaXNfb2N0YWwoc2VsZik6CisgICAgICAgIHRva2VuID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmlkCisgICAgICAgIGlmIHRva2VuWy0xXSBpbiAiVUx1bCI6CisgICAgICAgICAgICB0b2tlbiA9IHRva2VuWzotMV0KKyAgICAgICAgaWYgbGVuKHRva2VuKSA8IDIgb3IgdG9rZW5bMF0gIT0gJzAnOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdmFsID0gaW50KHRva2VuLCA4KQorICAgICAgICAgICAgc2VsZi5faW5kZXggKz0gMQorICAgICAgICAgICAgcmV0dXJuICgnb2N0JywgdmFsKQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICBkZWYgaXNfaGV4YWRlY2ltYWwoc2VsZik6CisgICAgICAgIHRva2VuID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmlkCisgICAgICAgIGlmIHRva2VuWy0xXSBpbiAiVUx1bCI6CisgICAgICAgICAgICB0b2tlbiA9IHRva2VuWzotMV0KKyAgICAgICAgaWYgbGVuKHRva2VuKSA8IDMgb3IgKHRva2VuWzoyXSAhPSAnMHgnIGFuZCB0b2tlbls6Ml0gIT0gJzBYJyk6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICB0cnk6CisgICAgICAgICAgICB2YWwgPSBpbnQodG9rZW4sIDE2KQorICAgICAgICAgICAgc2VsZi5faW5kZXggKz0gMQorICAgICAgICAgICAgcmV0dXJuICgnaGV4JywgdmFsKQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICBkZWYgaXNfaW50ZWdlcihzZWxmKToKKyAgICAgICAgaWYgc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmtpbmQgIT0gVG9rZW5LaW5kLkxJVEVSQUw6CisgICAgICAgICAgICByZXR1cm4gTm9uZQogCiAgICAgICAgIGMgPSBzZWxmLmlzX2hleGFkZWNpbWFsKCkKLSAgICAgICAgaWYgYzogcmV0dXJuIGMKKyAgICAgICAgaWYgYzoKKyAgICAgICAgICAgIHJldHVybiBjCisKKyAgICAgICAgYyA9IHNlbGYuaXNfb2N0YWwoKQorICAgICAgICBpZiBjOgorICAgICAgICAgICAgcmV0dXJuIGMKKworICAgICAgICBjID0gc2VsZi5pc19kZWNpbWFsKCkKKyAgICAgICAgaWYgYzoKKyAgICAgICAgICAgIHJldHVybiBjCiAKICAgICAgICAgcmV0dXJuIE5vbmUKIAotCiAgICAgZGVmIGlzX251bWJlcihzZWxmKToKLSAgICAgICAgdCA9IHNlbGYudG9rW3NlbGYuaV0KLSAgICAgICAgaWYgdC5pZCA9PSB0b2tNSU5VUyBhbmQgc2VsZi5pKzEgPCBzZWxmLm46Ci0gICAgICAgICAgICBzZWxmLmkgKz0gMQorICAgICAgICB0ID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCisgICAgICAgIGlmIHQuaWQgPT0gdG9rTUlOVVMgYW5kIHNlbGYuX2luZGV4ICsgMSA8IHNlbGYuX251bV90b2tlbnM6CisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAgICAgICAgICAgICBjID0gc2VsZi5pc19pbnRlZ2VyKCkKICAgICAgICAgICAgIGlmIGM6Ci0gICAgICAgICAgICAgICAgb3AsIHZhbCAgPSBjCisgICAgICAgICAgICAgICAgb3AsIHZhbCA9IGMKICAgICAgICAgICAgICAgICByZXR1cm4gKG9wLCAtdmFsKQotICAgICAgICBpZiB0LmlkID09IHRva1BMVVMgYW5kIHNlbGYuaSsxIDwgc2VsZi5uOgorICAgICAgICBpZiB0LmlkID09IHRva1BMVVMgYW5kIHNlbGYuX2luZGV4ICsgMSA8IHNlbGYuX251bV90b2tlbnM6CisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAgICAgICAgICAgICBjID0gc2VsZi5pc19pbnRlZ2VyKCkKLSAgICAgICAgICAgIGlmIGM6IHJldHVybiBjCisgICAgICAgICAgICBpZiBjOgorICAgICAgICAgICAgICAgIHJldHVybiBjCiAKICAgICAgICAgcmV0dXJuIHNlbGYuaXNfaW50ZWdlcigpCiAKLQogICAgIGRlZiBpc19kZWZpbmVkKHNlbGYpOgotICAgICAgICB0ID0gc2VsZi50b2tbc2VsZi5pXQorICAgICAgICB0ID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCiAgICAgICAgIGlmIHQuaWQgIT0gdG9rREVGSU5FRDoKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICAgICAgIyB3ZSBoYXZlIHRoZSBkZWZpbmVkIGtleXdvcmQsIGNoZWNrIHRoZSByZXN0Ci0gICAgICAgIHNlbGYuaSArPSAxCi0gICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQotICAgICAgICB1c2VkX3BhcmVucyA9IDAKLSAgICAgICAgaWYgc2VsZi5pIDwgc2VsZi5uIGFuZCBzZWxmLnRva1tzZWxmLmldLmlkID09IHRva0xQQVJFTjoKLSAgICAgICAgICAgIHVzZWRfcGFyZW5zID0gMQotICAgICAgICAgICAgc2VsZi5pICs9IDEKLSAgICAgICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQorICAgICAgICAjIFdlIGhhdmUgdGhlIGRlZmluZWQga2V5d29yZCwgY2hlY2sgdGhlIHJlc3QuCisgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKKyAgICAgICAgdXNlZF9wYXJlbnMgPSBGYWxzZQorICAgICAgICBpZiAoc2VsZi5faW5kZXggPCBzZWxmLl9udW1fdG9rZW5zIGFuZAorICAgICAgICAgICAgc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmlkID09IHRva0xQQVJFTik6CisgICAgICAgICAgICB1c2VkX3BhcmVucyA9IFRydWUKKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKIAotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uOgotICAgICAgICAgICAgc2VsZi50aHJvdyhDcHBDb25zdGFudEV4cGVjdGVkLGksIiMjIyAnZGVmaW5lZCcgbXVzdCBiZSBmb2xsb3dlZCAgYnkgbWFjcm8gbmFtZSBvciBsZWZ0IHBhcmVuIikKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKKyAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIiMjIyAnZGVmaW5lZCcgbXVzdCBiZSBmb2xsb3dlZCBieSBtYWNybyBuYW1lIG9yIGxlZnQgIgorICAgICAgICAgICAgICAgICAgICAgICAicGFyZW4iKQogCi0gICAgICAgIHQgPSBzZWxmLnRva1tzZWxmLmldCi0gICAgICAgIGlmIHQuaWQgIT0gdG9rSURFTlQ6Ci0gICAgICAgICAgICBzZWxmLnRocm93KENwcENvbnN0YW50RXhwZWN0ZWQsaSwiIyMjICdkZWZpbmVkJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IG1hY3JvIG5hbWUiKQorICAgICAgICB0ID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCisgICAgICAgIGlmIHQua2luZCAhPSBUb2tlbktpbmQuSURFTlRJRklFUjoKKyAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIiMjIyAnZGVmaW5lZCcgbXVzdCBiZSBmb2xsb3dlZCBieSBtYWNybyBuYW1lIikKIAotICAgICAgICBzZWxmLmkgKz0gMQorICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAgICAgICAgIGlmIHVzZWRfcGFyZW5zOgogICAgICAgICAgICAgc2VsZi5leHBlY3RJZCh0b2tSUEFSRU4pCiAKLSAgICAgICAgcmV0dXJuICgiZGVmaW5lZCIsIHQudmFsdWUpCi0KKyAgICAgICAgcmV0dXJuICgiZGVmaW5lZCIsIHQuaWQpCiAKICAgICBkZWYgaXNfY2FsbF9vcl9pZGVudChzZWxmKToKLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0gICAgICAgIGlmIHNlbGYuaSA+PSBzZWxmLm46CisgICAgICAgIGlmIHNlbGYuX2luZGV4ID49IHNlbGYuX251bV90b2tlbnM6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgICAgIHQgPSBzZWxmLnRva1tzZWxmLmldCi0gICAgICAgIGlmIHQuaWQgIT0gdG9rSURFTlQ6CisgICAgICAgIHQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgaWYgdC5raW5kICE9IFRva2VuS2luZC5JREVOVElGSUVSOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAotICAgICAgICBuYW1lID0gdC52YWx1ZQorICAgICAgICBuYW1lID0gdC5pZAogCi0gICAgICAgIHNlbGYuaSArPSAxCi0gICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uIG9yIHNlbGYudG9rW3NlbGYuaV0uaWQgIT0gdG9rTFBBUkVOOgorICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgIGlmIChzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zIG9yCisgICAgICAgICAgICBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0uaWQgIT0gdG9rTFBBUkVOKToKICAgICAgICAgICAgIHJldHVybiAoImlkZW50IiwgbmFtZSkKIAotICAgICAgICBwYXJhbXMgICAgPSBbXQotICAgICAgICBkZXB0aCAgICAgPSAxCi0gICAgICAgIHNlbGYuaSArPSAxCi0gICAgICAgIGogID0gc2VsZi5pCi0gICAgICAgIHdoaWxlIHNlbGYuaSA8IHNlbGYubjoKLSAgICAgICAgICAgIGlkID0gc2VsZi50b2tbc2VsZi5pXS5pZAorICAgICAgICBwYXJhbXMgPSBbXQorICAgICAgICBkZXB0aCA9IDEKKyAgICAgICAgc2VsZi5faW5kZXggKz0gMQorICAgICAgICBqID0gc2VsZi5faW5kZXgKKyAgICAgICAgd2hpbGUgc2VsZi5faW5kZXggPCBzZWxmLl9udW1fdG9rZW5zOgorICAgICAgICAgICAgaWQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0uaWQKICAgICAgICAgICAgIGlmIGlkID09IHRva0xQQVJFTjoKICAgICAgICAgICAgICAgICBkZXB0aCArPSAxCiAgICAgICAgICAgICBlbGlmIGRlcHRoID09IDEgYW5kIChpZCA9PSB0b2tDT01NQSBvciBpZCA9PSB0b2tSUEFSRU4pOgotICAgICAgICAgICAgICAgIHdoaWxlIGogPCBzZWxmLmkgYW5kIHNlbGYudG9rW2pdLmlkID09IHRva1NQQUNFOgotICAgICAgICAgICAgICAgICAgICBqICs9IDEKLSAgICAgICAgICAgICAgICBrID0gc2VsZi5pCi0gICAgICAgICAgICAgICAgd2hpbGUgayA+IGogYW5kIHNlbGYudG9rW2stMV0uaWQgPT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICAgICAgICAgIGsgLT0gMQotICAgICAgICAgICAgICAgIHBhcmFtID0gc2VsZi50b2tbajprXQorICAgICAgICAgICAgICAgIGsgPSBzZWxmLl9pbmRleAorICAgICAgICAgICAgICAgIHBhcmFtID0gc2VsZi50b2tlbnNbajprXQogICAgICAgICAgICAgICAgIHBhcmFtcy5hcHBlbmQocGFyYW0pCiAgICAgICAgICAgICAgICAgaWYgaWQgPT0gdG9rUlBBUkVOOgogICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGogPSBzZWxmLmkrMQorICAgICAgICAgICAgICAgIGogPSBzZWxmLl9pbmRleCArIDEKICAgICAgICAgICAgIGVsaWYgaWQgPT0gdG9rUlBBUkVOOgogICAgICAgICAgICAgICAgIGRlcHRoIC09IDEKLSAgICAgICAgICAgIHNlbGYuaSArPSAxCisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubjoKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICAgICAgc2VsZi5pICs9IDEKKyAgICAgICAgc2VsZi5faW5kZXggKz0gMQogICAgICAgICByZXR1cm4gKCJjYWxsIiwgKG5hbWUsIHBhcmFtcykpCiAKKyAgICAjIEltcGxlbWVudHMgdGhlICJwcmVjZWRlbmNlIGNsaW1iaW5nIiBhbGdvcml0aG0gZnJvbQorICAgICMgaHR0cDovL3d3dy5lbmdyLm11bi5jYS9+dGhlby9NaXNjL2V4cF9wYXJzaW5nLmh0bS4KKyAgICAjIFRoZSAiY2xhc3NpYyIgYWxnb3JpdGhtIHdvdWxkIGJlIGZpbmUgaWYgd2Ugd2VyZSB1c2luZyBhIHRvb2wgdG8KKyAgICAjIGdlbmVyYXRlIHRoZSBwYXJzZXIsIGJ1dCB3ZSdyZSBub3QuIERpamtzdHJhJ3MgInNodW50aW5nIHlhcmQiCisgICAgIyBhbGdvcml0aG0gaGFzbid0IGJlZW4gbmVjZXNzYXJ5IHlldC4KIAotICAgICMgSW1wbGVtZW50cyB0aGUgInByZWNlZGVuY2UgY2xpbWJpbmciIGFsZ29yaXRobSBmcm9tIGh0dHA6Ly93d3cuZW5nci5tdW4uY2EvfnRoZW8vTWlzYy9leHBfcGFyc2luZy5odG0uCi0gICAgIyBUaGUgImNsYXNzaWMiIGFsZ29yaXRobSB3b3VsZCBiZSBmaW5lIGlmIHdlIHdlcmUgdXNpbmcgYSB0b29sIHRvIGdlbmVyYXRlIHRoZSBwYXJzZXIsIGJ1dCB3ZSdyZSBub3QuCi0gICAgIyBEaWprc3RyYSdzICJzaHVudGluZyB5YXJkIiBhbGdvcml0aG0gaGFzbid0IGJlZW4gbmVjZXNzYXJ5IHlldC4KICAgICBkZWYgcGFyc2VFeHByZXNzaW9uKHNlbGYsIG1pblByZWNlZGVuY2UpOgotICAgICAgICBzZWxmLnNraXBfc3BhY2VzKCkKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubjoKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKICAgICAgICAgbm9kZSA9IHNlbGYucGFyc2VQcmltYXJ5KCkKLSAgICAgICAgd2hpbGUgc2VsZi50b2tlbigpICE9IE5vbmUgYW5kIHNlbGYuaXNCaW5hcnkoc2VsZi50b2tlbigpKSBhbmQgc2VsZi5wcmVjZWRlbmNlKHNlbGYudG9rZW4oKSkgPj0gbWluUHJlY2VkZW5jZToKKyAgICAgICAgd2hpbGUgKHNlbGYudG9rZW4oKSBhbmQgc2VsZi5pc0JpbmFyeShzZWxmLnRva2VuKCkpIGFuZAorICAgICAgICAgICAgICAgc2VsZi5wcmVjZWRlbmNlKHNlbGYudG9rZW4oKSkgPj0gbWluUHJlY2VkZW5jZSk6CiAgICAgICAgICAgICBvcCA9IHNlbGYudG9rZW4oKQogICAgICAgICAgICAgc2VsZi5uZXh0VG9rZW4oKQogICAgICAgICAgICAgcmhzID0gc2VsZi5wYXJzZUV4cHJlc3Npb24oc2VsZi5wcmVjZWRlbmNlKG9wKSArIDEpCkBAIC03NjgsNyArNjA1LDYgQEAKIAogICAgICAgICByZXR1cm4gbm9kZQogCi0KICAgICBkZWYgcGFyc2VQcmltYXJ5KHNlbGYpOgogICAgICAgICBvcCA9IHNlbGYudG9rZW4oKQogICAgICAgICBpZiBzZWxmLmlzVW5hcnkob3ApOgpAQCAtNzg0LDUxICs2MjAsNDcgQEAKICAgICAgICAgICAgIHNlbGYubmV4dFRva2VuKCkKICAgICAgICAgICAgIHByaW1hcnkgPSBzZWxmLnBhcnNlRXhwcmVzc2lvbigwKQogICAgICAgICAgICAgc2VsZi5leHBlY3RJZCgiOiIpCi0gICAgICAgIGVsaWYgb3AuaWQgPT0gdG9rTlVNQkVSOgorICAgICAgICBlbGlmIG9wLmlkID09ICcrJyBvciBvcC5pZCA9PSAnLScgb3Igb3Aua2luZCA9PSBUb2tlbktpbmQuTElURVJBTDoKICAgICAgICAgICAgIHByaW1hcnkgPSBzZWxmLmlzX251bWJlcigpCi0gICAgICAgIGVsaWYgb3AuaWQgPT0gdG9rSURFTlQ6Ci0gICAgICAgICAgICBwcmltYXJ5ID0gc2VsZi5pc19jYWxsX29yX2lkZW50KCkKKyAgICAgICAgIyBDaGVja2luZyBmb3IgJ2RlZmluZWQnIG5lZWRzIHRvIGNvbWUgZmlyc3Qgbm93IGJlY2F1c2UgJ2RlZmluZWQnIGlzCisgICAgICAgICMgcmVjb2duaXplZCBhcyBJREVOVElGSUVSLgogICAgICAgICBlbGlmIG9wLmlkID09IHRva0RFRklORUQ6CiAgICAgICAgICAgICBwcmltYXJ5ID0gc2VsZi5pc19kZWZpbmVkKCkKKyAgICAgICAgZWxpZiBvcC5raW5kID09IFRva2VuS2luZC5JREVOVElGSUVSOgorICAgICAgICAgICAgcHJpbWFyeSA9IHNlbGYuaXNfY2FsbF9vcl9pZGVudCgpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLnRocm93KEJhZEV4cGVjdGVkVG9rZW4sICJkaWRuJ3QgZXhwZWN0IHRvIHNlZSBhICVzIGluIGZhY3RvciIgJSAoc2VsZi50b2tbc2VsZi5pXS5pZCkpCi0KLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0KLSAgICAgICAgcmV0dXJuIHByaW1hcnk7Ci0KKyAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgImRpZG4ndCBleHBlY3QgdG8gc2VlIGEgJXMgaW4gZmFjdG9yIiAlICgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XS5pZCkpCisgICAgICAgIHJldHVybiBwcmltYXJ5CiAKICAgICBkZWYgaXNCaW5hcnkoc2VsZiwgdG9rZW4pOgogICAgICAgICByZXR1cm4gdG9rZW4uaWQgaW4gc2VsZi5iaW5hcmllcwogCi0KICAgICBkZWYgaXNVbmFyeShzZWxmLCB0b2tlbik6CiAgICAgICAgIHJldHVybiB0b2tlbi5pZCBpbiBzZWxmLnVuYXJpZXMKIAotCiAgICAgZGVmIHByZWNlZGVuY2Uoc2VsZiwgdG9rZW4pOgogICAgICAgICByZXR1cm4gc2VsZi5wcmVjZWRlbmNlcy5nZXQodG9rZW4uaWQpCiAKLQogICAgIGRlZiB0b2tlbihzZWxmKToKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubjoKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKICAgICAgICAgICAgIHJldHVybiBOb25lCi0gICAgICAgIHJldHVybiBzZWxmLnRva1tzZWxmLmldCi0KKyAgICAgICAgcmV0dXJuIHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XQogCiAgICAgZGVmIG5leHRUb2tlbihzZWxmKToKLSAgICAgICAgc2VsZi5pICs9IDEKLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0gICAgICAgIGlmIHNlbGYuaSA+PSBzZWxmLm46CisgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKICAgICAgICAgICAgIHJldHVybiBOb25lCi0gICAgICAgIHJldHVybiBzZWxmLnRva1tzZWxmLmldCi0KKyAgICAgICAgcmV0dXJuIHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XQogCiAgICAgZGVmIGR1bXBfbm9kZShzZWxmLCBlKToKICAgICAgICAgb3AgPSBlWzBdCiAgICAgICAgIGxpbmUgPSAiKCIgKyBvcAogICAgICAgICBpZiBvcCA9PSAiaW50IjoKICAgICAgICAgICAgIGxpbmUgKz0gIiAlZCkiICUgZVsxXQorICAgICAgICBlbGlmIG9wID09ICJvY3QiOgorICAgICAgICAgICAgbGluZSArPSAiIDAlbykiICUgZVsxXQogICAgICAgICBlbGlmIG9wID09ICJoZXgiOgogICAgICAgICAgICAgbGluZSArPSAiIDB4JXgpIiAlIGVbMV0KICAgICAgICAgZWxpZiBvcCA9PSAiaWRlbnQiOgpAQCAtODY0LDMxICs2OTYsMzMgQEAKICAgICAgICAgICAgIHJldHVybiAiJWQiICUgZVsxXQogICAgICAgICBpZiBvcCA9PSAiaGV4IjoKICAgICAgICAgICAgIHJldHVybiAiMHgleCIgJSBlWzFdCisgICAgICAgIGlmIG9wID09ICJvY3QiOgorICAgICAgICAgICAgcmV0dXJuICIwJW8iICUgZVsxXQogICAgICAgICBpZiBvcCA9PSAiaWRlbnQiOgogICAgICAgICAgICAgIyBYWFg6IHNob3VsZCB0cnkgdG8gZXhwYW5kCiAgICAgICAgICAgICByZXR1cm4gZVsxXQogICAgICAgICBpZiBvcCA9PSAiZGVmaW5lZCI6CiAgICAgICAgICAgICByZXR1cm4gImRlZmluZWQoJXMpIiAlIGVbMV0KIAotICAgICAgICBwcmVjID0gQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQob3AsMTAwMCkKLSAgICAgICAgYXJnICA9IGVbMV0KKyAgICAgICAgcHJlYyA9IENwcEV4cHIucHJlY2VkZW5jZXMuZ2V0KG9wLCAxMDAwKQorICAgICAgICBhcmcgPSBlWzFdCiAgICAgICAgIGlmIG9wIGluIENwcEV4cHIudW5hcmllczoKICAgICAgICAgICAgIGFyZ19zcmMgPSBzZWxmLnNvdXJjZV9ub2RlKGFyZykKLSAgICAgICAgICAgIGFyZ19vcCAgPSBhcmdbMF0KLSAgICAgICAgICAgIGFyZ19wcmVjID0gQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnWzBdLDEwMDApCisgICAgICAgICAgICBhcmdfb3AgPSBhcmdbMF0KKyAgICAgICAgICAgIGFyZ19wcmVjID0gQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnX29wLCAxMDAwKQogICAgICAgICAgICAgaWYgYXJnX3ByZWMgPCBwcmVjOgogICAgICAgICAgICAgICAgIHJldHVybiAiISgiICsgYXJnX3NyYyArICIpIgogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByZXR1cm4gIiEiICsgYXJnX3NyYwogICAgICAgICBpZiBvcCBpbiBDcHBFeHByLmJpbmFyaWVzOgotICAgICAgICAgICAgYXJnMiAgICAgPSBlWzJdCi0gICAgICAgICAgICBhcmcxX29wICA9IGFyZ1swXQotICAgICAgICAgICAgYXJnMl9vcCAgPSBhcmcyWzBdCisgICAgICAgICAgICBhcmcyID0gZVsyXQorICAgICAgICAgICAgYXJnMV9vcCA9IGFyZ1swXQorICAgICAgICAgICAgYXJnMl9vcCA9IGFyZzJbMF0KICAgICAgICAgICAgIGFyZzFfc3JjID0gc2VsZi5zb3VyY2Vfbm9kZShhcmcpCiAgICAgICAgICAgICBhcmcyX3NyYyA9IHNlbGYuc291cmNlX25vZGUoYXJnMikKLSAgICAgICAgICAgIGlmIENwcEV4cHIucHJlY2VkZW5jZXMuZ2V0KGFyZzFfb3AsMTAwMCkgPCBwcmVjOgorICAgICAgICAgICAgaWYgQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnMV9vcCwgMTAwMCkgPCBwcmVjOgogICAgICAgICAgICAgICAgIGFyZzFfc3JjID0gIiglcykiICUgYXJnMV9zcmMKLSAgICAgICAgICAgIGlmIENwcEV4cHIucHJlY2VkZW5jZXMuZ2V0KGFyZzJfb3AsMTAwMCkgPCBwcmVjOgorICAgICAgICAgICAgaWYgQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnMl9vcCwgMTAwMCkgPCBwcmVjOgogICAgICAgICAgICAgICAgIGFyZzJfc3JjID0gIiglcykiICUgYXJnMl9zcmMKIAogICAgICAgICAgICAgcmV0dXJuICIlcyAlcyAlcyIgJSAoYXJnMV9zcmMsIG9wLCBhcmcyX3NyYykKQEAgLTg5NywxOSArNzMxLDIxIEBACiAgICAgZGVmIF9fc3RyX18oc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLnNvdXJjZV9ub2RlKHNlbGYuZXhwcikKIAotICAgIGRlZiBpbnRfbm9kZShzZWxmLGUpOgotICAgICAgICBpZiBlWzBdID09ICJpbnQiOgorICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgaW50X25vZGUoZSk6CisgICAgICAgIGlmIGVbMF0gaW4gWyJpbnQiLCAib2N0IiwgImhleCJdOgogICAgICAgICAgICAgcmV0dXJuIGVbMV0KLSAgICAgICAgZWxpZiBlWzFdID09ICJoZXgiOgotICAgICAgICAgICAgcmV0dXJuIGludChlWzFdLDE2KQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAogICAgIGRlZiB0b0ludChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuaW50X25vZGUoc2VsZi5leHByKQogCi0gICAgZGVmIG9wdGltaXplX25vZGUoc2VsZiwgZSwgbWFjcm9zPXt9KToKKyAgICBkZWYgb3B0aW1pemVfbm9kZShzZWxmLCBlLCBtYWNyb3M9Tm9uZSk6CisgICAgICAgIGlmIG1hY3JvcyBpcyBOb25lOgorICAgICAgICAgICAgbWFjcm9zID0ge30KICAgICAgICAgb3AgPSBlWzBdCisKICAgICAgICAgaWYgb3AgPT0gImRlZmluZWQiOgogICAgICAgICAgICAgb3AsIG5hbWUgPSBlCiAgICAgICAgICAgICBpZiBtYWNyb3MuaGFzX2tleShuYW1lKToKQEAgLTkxOSw3ICs3NTUsNyBAQAogICAgICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGludChtYWNyb3NbbmFtZV0pCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCJpbnQiLCB2YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoImRlZmluZWQiLCBtYWNyb3NbbmFtZV0pCiAKICAgICAgICAgICAgIGlmIGtlcm5lbF9yZW1vdmVfY29uZmlnX21hY3JvcyBhbmQgbmFtZS5zdGFydHN3aXRoKCJDT05GSUdfIik6CkBAIC05MzMsNyArNzY5LDcgQEAKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gaW50KG1hY3Jvc1tuYW1lXSkKICAgICAgICAgICAgICAgICAgICAgZXhwYW5kZWQgPSAoImludCIsIHZhbHVlKQotICAgICAgICAgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgZXhwYW5kZWQgPSAoImlkZW50IiwgbWFjcm9zW25hbWVdKQogICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLm9wdGltaXplX25vZGUoZXhwYW5kZWQsIG1hY3JvcykKICAgICAgICAgICAgIHJldHVybiBlCkBAIC05NTAsMTYgKzc4NiwxNiBAQAogCiAgICAgICAgIGVsaWYgb3AgPT0gIiYmIjoKICAgICAgICAgICAgIG9wLCBsLCByID0gZQotICAgICAgICAgICAgbCAgPSBzZWxmLm9wdGltaXplX25vZGUobCwgbWFjcm9zKQotICAgICAgICAgICAgciAgPSBzZWxmLm9wdGltaXplX25vZGUociwgbWFjcm9zKQorICAgICAgICAgICAgbCA9IHNlbGYub3B0aW1pemVfbm9kZShsLCBtYWNyb3MpCisgICAgICAgICAgICByID0gc2VsZi5vcHRpbWl6ZV9ub2RlKHIsIG1hY3JvcykKICAgICAgICAgICAgIGxpID0gc2VsZi5pbnRfbm9kZShsKQogICAgICAgICAgICAgcmkgPSBzZWxmLmludF9ub2RlKHIpCi0gICAgICAgICAgICBpZiBsaSAhPSBOb25lOgorICAgICAgICAgICAgaWYgbGkgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgaWYgbGkgPT0gMDoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgiaW50IiwgMCkKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gcgotICAgICAgICAgICAgZWxpZiByaSAhPSBOb25lOgorICAgICAgICAgICAgZWxpZiByaSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiByaSA9PSAwOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCJpbnQiLCAwKQogICAgICAgICAgICAgICAgIGVsc2U6CkBAIC05NjgsMTYgKzgwNCwxNiBAQAogCiAgICAgICAgIGVsaWYgb3AgPT0gInx8IjoKICAgICAgICAgICAgIG9wLCBsLCByID0gZQotICAgICAgICAgICAgbCAgPSBzZWxmLm9wdGltaXplX25vZGUobCwgbWFjcm9zKQotICAgICAgICAgICAgciAgPSBzZWxmLm9wdGltaXplX25vZGUociwgbWFjcm9zKQorICAgICAgICAgICAgbCA9IHNlbGYub3B0aW1pemVfbm9kZShsLCBtYWNyb3MpCisgICAgICAgICAgICByID0gc2VsZi5vcHRpbWl6ZV9ub2RlKHIsIG1hY3JvcykKICAgICAgICAgICAgIGxpID0gc2VsZi5pbnRfbm9kZShsKQogICAgICAgICAgICAgcmkgPSBzZWxmLmludF9ub2RlKHIpCi0gICAgICAgICAgICBpZiBsaSAhPSBOb25lOgorICAgICAgICAgICAgaWYgbGkgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgaWYgbGkgPT0gMDoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHIKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCJpbnQiLCAxKQotICAgICAgICAgICAgZWxpZiByaSAhPSBOb25lOgorICAgICAgICAgICAgZWxpZiByaSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiByaSA9PSAwOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gbAogICAgICAgICAgICAgICAgIGVsc2U6CkBAIC05ODcsNTAgKzgyMyw1NCBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuIGUKIAotICAgIGRlZiBvcHRpbWl6ZShzZWxmLG1hY3Jvcz17fSk6CisgICAgZGVmIG9wdGltaXplKHNlbGYsIG1hY3Jvcz1Ob25lKToKKyAgICAgICAgaWYgbWFjcm9zIGlzIE5vbmU6CisgICAgICAgICAgICBtYWNyb3MgPSB7fQogICAgICAgICBzZWxmLmV4cHIgPSBzZWxmLm9wdGltaXplX25vZGUoc2VsZi5leHByLCBtYWNyb3MpCiAKLSAgICBkZWYgaXNfZXF1YWxfbm9kZShzZWxmLGUxLGUyKToKLSAgICAgICAgaWYgZTFbMF0gIT0gZTJbMF0gb3IgbGVuKGUxKSAhPSBsZW4oZTIpOgotICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAgb3AgPSBlMVswXQotICAgICAgICBpZiBvcCA9PSAiaW50IiBvciBvcCA9PSAiaGV4IiBvciBvcCA9PSAiISIgb3Igb3AgPT0gImRlZmluZWQiOgotICAgICAgICAgICAgcmV0dXJuIGUxWzBdID09IGUyWzBdCi0KLSAgICAgICAgcmV0dXJuIHNlbGYuaXNfZXF1YWxfbm9kZShlMVsxXSxlMlsxXSkgYW5kIHNlbGYuaXNfZXF1YWxfbm9kZShlMVsyXSxlMlsyXSkKLQotICAgIGRlZiBpc19lcXVhbChzZWxmLG90aGVyKToKLSAgICAgICAgcmV0dXJuIHNlbGYuaXNfZXF1YWxfbm9kZShzZWxmLmV4cHIsb3RoZXIuZXhwcikKIAogZGVmIHRlc3RfY3BwX2V4cHIoZXhwciwgZXhwZWN0ZWQpOgotICAgIGUgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCBleHByICkudG9Ub2tlbkxpc3QoKSApCisgICAgZSA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKGV4cHIpLnRva2VucykKICAgICBzMSA9IHJlcHIoZSkKICAgICBpZiBzMSAhPSBleHBlY3RlZDoKLSAgICAgICAgcHJpbnQgIltGQUlMXTogZXhwcmVzc2lvbiAnJXMnIGdlbmVyYXRlcyAnJXMnLCBzaG91bGQgYmUgJyVzJyIgJSAoZXhwciwgczEsIGV4cGVjdGVkKQorICAgICAgICBwcmludCAoIltGQUlMXTogZXhwcmVzc2lvbiAnJXMnIGdlbmVyYXRlcyAnJXMnLCBzaG91bGQgYmUgIgorICAgICAgICAgICAgICAgIiclcyciICUgKGV4cHIsIHMxLCBleHBlY3RlZCkpCiAgICAgICAgIGdsb2JhbCBmYWlsdXJlX2NvdW50CiAgICAgICAgIGZhaWx1cmVfY291bnQgKz0gMQogCi1kZWYgdGVzdF9jcHBfZXhwcl9vcHRpbShleHByLCBleHBlY3RlZCwgbWFjcm9zPXt9KToKLSAgICBlID0gQ3BwRXhwciggQ3BwTGluZVRva2VuaXplciggZXhwciApLnRvVG9rZW5MaXN0KCkgKQorCitkZWYgdGVzdF9jcHBfZXhwcl9vcHRpbShleHByLCBleHBlY3RlZCwgbWFjcm9zPU5vbmUpOgorICAgIGlmIG1hY3JvcyBpcyBOb25lOgorICAgICAgICBtYWNyb3MgPSB7fQorICAgIGUgPSBDcHBFeHByKENwcFN0cmluZ1Rva2VuaXplcihleHByKS50b2tlbnMpCiAgICAgZS5vcHRpbWl6ZShtYWNyb3MpCiAgICAgczEgPSByZXByKGUpCiAgICAgaWYgczEgIT0gZXhwZWN0ZWQ6Ci0gICAgICAgIHByaW50ICJbRkFJTF06IG9wdGltaXplZCBleHByZXNzaW9uICclcycgZ2VuZXJhdGVzICclcycgd2l0aCBtYWNyb3MgJXMsIHNob3VsZCBiZSAnJXMnIiAlIChleHByLCBzMSwgbWFjcm9zLCBleHBlY3RlZCkKKyAgICAgICAgcHJpbnQgKCJbRkFJTF06IG9wdGltaXplZCBleHByZXNzaW9uICclcycgZ2VuZXJhdGVzICclcycgd2l0aCAiCisgICAgICAgICAgICAgICAibWFjcm9zICVzLCBzaG91bGQgYmUgJyVzJyIgJSAoZXhwciwgczEsIG1hY3JvcywgZXhwZWN0ZWQpKQogICAgICAgICBnbG9iYWwgZmFpbHVyZV9jb3VudAogICAgICAgICBmYWlsdXJlX2NvdW50ICs9IDEKIAorCiBkZWYgdGVzdF9jcHBfZXhwcl9zb3VyY2UoZXhwciwgZXhwZWN0ZWQpOgotICAgIGUgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCBleHByICkudG9Ub2tlbkxpc3QoKSApCisgICAgZSA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKGV4cHIpLnRva2VucykKICAgICBzMSA9IHN0cihlKQogICAgIGlmIHMxICE9IGV4cGVjdGVkOgotICAgICAgICBwcmludCAiW0ZBSUxdOiBzb3VyY2UgZXhwcmVzc2lvbiAnJXMnIGdlbmVyYXRlcyAnJXMnLCBzaG91bGQgYmUgJyVzJyIgJSAoZXhwciwgczEsIGV4cGVjdGVkKQorICAgICAgICBwcmludCAoIltGQUlMXTogc291cmNlIGV4cHJlc3Npb24gJyVzJyBnZW5lcmF0ZXMgJyVzJywgc2hvdWxkICIKKyAgICAgICAgICAgICAgICJiZSAnJXMnIiAlIChleHByLCBzMSwgZXhwZWN0ZWQpKQogICAgICAgICBnbG9iYWwgZmFpbHVyZV9jb3VudAogICAgICAgICBmYWlsdXJlX2NvdW50ICs9IDEKIAorCiBkZWYgdGVzdF9DcHBFeHByKCk6CiAgICAgdGVzdF9jcHBfZXhwcigiMCIsICIoaW50IDApIikKICAgICB0ZXN0X2NwcF9leHByKCIxIiwgIihpbnQgMSkiKQorICAgIHRlc3RfY3BwX2V4cHIoIi01IiwgIihpbnQgLTUpIikKKyAgICB0ZXN0X2NwcF9leHByKCIrMSIsICIoaW50IDEpIikKKyAgICB0ZXN0X2NwcF9leHByKCIwVSIsICIoaW50IDApIikKKyAgICB0ZXN0X2NwcF9leHByKCIwMTUiLCAiKG9jdCAwMTUpIikKKyAgICB0ZXN0X2NwcF9leHByKCIwMTVsIiwgIihvY3QgMDE1KSIpCisgICAgdGVzdF9jcHBfZXhwcigiMHgzZSIsICIoaGV4IDB4M2UpIikKICAgICB0ZXN0X2NwcF9leHByKCIoMCkiLCAiKGludCAwKSIpCiAgICAgdGVzdF9jcHBfZXhwcigiMSAmJiAxIiwgIigmJiAoaW50IDEpIChpbnQgMSkpIikKICAgICB0ZXN0X2NwcF9leHByKCIxICYmIDAiLCAiKCYmIChpbnQgMSkgKGludCAwKSkiKQpAQCAtMTAzOSwxMyArODc5LDE3IEBACiAgICAgdGVzdF9jcHBfZXhwcigiZGVmaW5lZChFWEFNUExFKSIsICIoZGVmaW5lZCBFWEFNUExFKSIpCiAgICAgdGVzdF9jcHBfZXhwcigiZGVmaW5lZCAoIEVYQU1QTEUgKSAiLCAiKGRlZmluZWQgRVhBTVBMRSkiKQogICAgIHRlc3RfY3BwX2V4cHIoIiFkZWZpbmVkKEVYQU1QTEUpIiwgIighIChkZWZpbmVkIEVYQU1QTEUpKSIpCi0gICAgdGVzdF9jcHBfZXhwcigiZGVmaW5lZChBQkMpIHx8IGRlZmluZWQoQklOR08pIiwgIih8fCAoZGVmaW5lZCBBQkMpIChkZWZpbmVkIEJJTkdPKSkiKQotICAgIHRlc3RfY3BwX2V4cHIoIkZPTyhCQVIpIiwgIihjYWxsIEZPTyBbQkFSXSkiKQotICAgIHRlc3RfY3BwX2V4cHIoIkEgPT0gMSB8fCBkZWZpbmVkKEIpIiwgIih8fCAoPT0gKGlkZW50IEEpIChpbnQgMSkpIChkZWZpbmVkIEIpKSIpCisgICAgdGVzdF9jcHBfZXhwcigiZGVmaW5lZChBQkMpIHx8IGRlZmluZWQoQklOR08pIiwKKyAgICAgICAgICAgICAgICAgICIofHwgKGRlZmluZWQgQUJDKSAoZGVmaW5lZCBCSU5HTykpIikKKyAgICB0ZXN0X2NwcF9leHByKCJGT08oQkFSLDUpIiwgIihjYWxsIEZPTyBbQkFSLDVdKSIpCisgICAgdGVzdF9jcHBfZXhwcigiQSA9PSAxIHx8IGRlZmluZWQoQikiLAorICAgICAgICAgICAgICAgICAgIih8fCAoPT0gKGlkZW50IEEpIChpbnQgMSkpIChkZWZpbmVkIEIpKSIpCiAKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIwIiwgIihpbnQgMCkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjEiLCAiKGludCAxKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMSAmJiAxIiwgIihpbnQgMSkiKQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjEgJiYgKzEiLCAiKGludCAxKSIpCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMHgxICYmIDAxIiwgIihvY3QgMDEpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIxICYmIDAiLCAiKGludCAwKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMCAmJiAxIiwgIihpbnQgMCkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjAgJiYgMCIsICIoaW50IDApIikKQEAgLTEwNTQsMzIgKzg5OCw0OCBAQAogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjAgfHwgMSIsICIoaW50IDEpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIwIHx8IDAiLCAiKGludCAwKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSIsICIoaWRlbnQgQSkiKQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEiLCAiKGludCAxKSIsIHsgIkEiOiAxIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSB8fCBCIiwgIihpbnQgMSkiLCB7ICJBIjogMSB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgfHwgQiIsICIoaW50IDEpIiwgeyAiQiI6IDEgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBICYmIEIiLCAiKGlkZW50IEIpIiwgeyAiQSI6IDEgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBICYmIEIiLCAiKGlkZW50IEEpIiwgeyAiQiI6IDEgfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBIiwgIihpbnQgMSkiLCB7IkEiOiAxfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBIHx8IEIiLCAiKGludCAxKSIsIHsiQSI6IDF9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgfHwgQiIsICIoaW50IDEpIiwgeyJCIjogMX0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSAmJiBCIiwgIihpZGVudCBCKSIsIHsiQSI6IDF9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgJiYgQiIsICIoaWRlbnQgQSkiLCB7IkIiOiAxfSkKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBICYmIEIiLCAiKCYmIChpZGVudCBBKSAoaWRlbnQgQikpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCJFWEFNUExFIiwgIihpZGVudCBFWEFNUExFKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiRVhBTVBMRSAtIDMiLCAiKC0gKGlkZW50IEVYQU1QTEUpIChpbnQgMykpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihkZWZpbmVkIEVYQU1QTEUpIikKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihkZWZpbmVkIFhPV09FKSIsIHsgIkVYQU1QTEUiOiAiWE9XT0UiIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChFWEFNUExFKSIsICIoaW50IDApIiwgeyAiRVhBTVBMRSI6IGtDcHBVbmRlZmluZWRNYWNyb30pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChFWEFNUExFKSIsICIoZGVmaW5lZCBYT1dPRSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgeyJFWEFNUExFIjogIlhPV09FIn0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChFWEFNUExFKSIsICIoaW50IDApIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHsiRVhBTVBMRSI6IGtDcHBVbmRlZmluZWRNYWNyb30pCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiIWRlZmluZWQoRVhBTVBMRSkiLCAiKCEgKGRlZmluZWQgRVhBTVBMRSkpIikKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCIhZGVmaW5lZChFWEFNUExFKSIsICIoISAoZGVmaW5lZCBYT1dPRSkpIiwgeyAiRVhBTVBMRSIgOiAiWE9XT0UiIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiIWRlZmluZWQoRVhBTVBMRSkiLCAiKGludCAxKSIsIHsgIkVYQU1QTEUiIDoga0NwcFVuZGVmaW5lZE1hY3JvIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwgIih8fCAoZGVmaW5lZCBBKSAoZGVmaW5lZCBCKSkiKQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoaW50IDEpIiwgeyAiQSIgOiAiMSIgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGludCAxKSIsIHsgIkIiIDogIjEiIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwgIihkZWZpbmVkIEEpIiwgeyAiQiIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8gfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGludCAwKSIsIHsgIkEiIDoga0NwcFVuZGVmaW5lZE1hY3JvLCAiQiIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8gfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLCAiKCYmIChkZWZpbmVkIEEpIChkZWZpbmVkIEIpKSIpCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwgIihkZWZpbmVkIEIpIiwgeyAiQSIgOiAiMSIgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLCAiKGRlZmluZWQgQSkiLCB7ICJCIiA6ICIxIiB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsICIoaW50IDApIiwgeyAiQiIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8gfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLCAiKGludCAwKSIsIHsgIkEiIDoga0NwcFVuZGVmaW5lZE1hY3JvIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSA9PSAxIHx8IGRlZmluZWQoQikiLCAiKHx8ICg9PSAoaWRlbnQgQSkgKGludCAxKSkgKGRlZmluZWQgQikpIiApCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChfX0tFUk5FTF9fKSB8fCAhZGVmaW5lZChfX0dMSUJDX18pIHx8IChfX0dMSUJDX18gPCAyKSIsICIofHwgKCEgKGRlZmluZWQgX19HTElCQ19fKSkgKDwgKGlkZW50IF9fR0xJQkNfXykgKGludCAyKSkpIiwgeyAiX19LRVJORUxfXyI6IGtDcHBVbmRlZmluZWRNYWNybyB9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIiFkZWZpbmVkKEVYQU1QTEUpIiwgIighIChkZWZpbmVkIFhPV09FKSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgeyJFWEFNUExFIjogIlhPV09FIn0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiIWRlZmluZWQoRVhBTVBMRSkiLCAiKGludCAxKSIsCisgICAgICAgICAgICAgICAgICAgICAgICB7IkVYQU1QTEUiOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiKHx8IChkZWZpbmVkIEEpIChkZWZpbmVkIEIpKSIpCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwgIihpbnQgMSkiLCB7IkEiOiAiMSJ9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoaW50IDEpIiwgeyJCIjogIjEifSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGRlZmluZWQgQSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgeyJCIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGludCAwKSIsCisgICAgICAgICAgICAgICAgICAgICAgICB7IkEiOiBrQ3BwVW5kZWZpbmVkTWFjcm8sICJCIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLAorICAgICAgICAgICAgICAgICAgICAgICAgIigmJiAoZGVmaW5lZCBBKSAoZGVmaW5lZCBCKSkiKQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiKGRlZmluZWQgQikiLCB7IkEiOiAiMSJ9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiKGRlZmluZWQgQSkiLCB7IkIiOiAiMSJ9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsICIoaW50IDApIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHsiQiI6IGtDcHBVbmRlZmluZWRNYWNyb30pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIoaW50IDApIiwgeyJBIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBID09IDEgfHwgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiKHx8ICg9PSAoaWRlbnQgQSkgKGludCAxKSkgKGRlZmluZWQgQikpIikKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKAorICAgICAgICAiZGVmaW5lZChfX0tFUk5FTF9fKSB8fCAhZGVmaW5lZChfX0dMSUJDX18pIHx8IChfX0dMSUJDX18gPCAyKSIsCisgICAgICAgICIofHwgKCEgKGRlZmluZWQgX19HTElCQ19fKSkgKDwgKGlkZW50IF9fR0xJQkNfXykgKGludCAyKSkpIiwKKyAgICAgICAgeyJfX0tFUk5FTF9fIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKIAogICAgIHRlc3RfY3BwX2V4cHJfc291cmNlKCIwIiwgIjAiKQogICAgIHRlc3RfY3BwX2V4cHJfc291cmNlKCIxIiwgIjEiKQpAQCAtMTA5OCwxNzkgKzk1OCwxNzYgQEAKICAgICB0ZXN0X2NwcF9leHByX3NvdXJjZSgiQSA9PSAxIHx8IGRlZmluZWQoQikiLCAiQSA9PSAxIHx8IGRlZmluZWQoQikiKQogCiAKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgIEMgUCBQICAgQiBMIE8gQyBLICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgIEMgUCBQICAgQiBMIE8gQyBLICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKLWNsYXNzIEJsb2NrOgotICAgICIiImEgY2xhc3MgdXNlZCB0byBtb2RlbCBhIGJsb2NrIG9mIGlucHV0IHNvdXJjZSB0ZXh0LiB0aGVyZSBhcmUgdHdvIGJsb2NrIHR5cGVzOgotICAgICAgICAtIGRpcmVjdGl2ZSBibG9ja3M6IGNvbnRhaW4gdGhlIHRva2VucyBvZiBhIHNpbmdsZSBwcmUtcHJvY2Vzc29yIGRpcmVjdGl2ZSAoZS5nLiAjaWYpCi0gICAgICAgIC0gdGV4dCBibG9ja3MsIGNvbnRhaW4gdGhlIHRva2VucyBvZiBub24tZGlyZWN0aXZlIGJsb2NrcwogCi0gICAgICAgdGhlIGNwcCBwYXJzZXIgY2xhc3MgYmVsb3cgd2lsbCB0cmFuc2Zvcm0gYW4gaW5wdXQgc291cmNlIGZpbGUgaW50byBhIGxpc3Qgb2YgQmxvY2sKLSAgICAgICBvYmplY3RzIChncm91cGVkIGluIGEgQmxvY2tMaXN0IG9iamVjdCBmb3IgY29udmVuaWVuY2UpIiIiCitjbGFzcyBCbG9jayhvYmplY3QpOgorICAgICIiIkEgY2xhc3MgdXNlZCB0byBtb2RlbCBhIGJsb2NrIG9mIGlucHV0IHNvdXJjZSB0ZXh0LgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsdG9rZW5zLGRpcmVjdGl2ZT1Ob25lLGxpbmVubz0wKToKLSAgICAgICAgIiIiaW5pdGlhbGl6ZSBhIG5ldyBibG9jaywgaWYgJ2RpcmVjdGl2ZScgaXMgTm9uZSwgdGhpcyBpcyBhIHRleHQgYmxvY2sKLSAgICAgICAgICAgTk9URTogdGhpcyBhdXRvbWF0aWNhbGx5IGNvbnZlcnRzICcjaWZkZWYgTUFDUk8nIGludG8gJyNpZiBkZWZpbmVkKE1BQ1JPKScKLSAgICAgICAgICAgICAgICAgYW5kICcjaWZuZGVmIE1BQ1JPJyBpbnRvICcjaWYgIWRlZmluZWQoTUFDUk8pJyIiIgorICAgIFRoZXJlIGFyZSB0d28gYmxvY2sgdHlwZXM6CisgICAgICAtIGRpcmVjdGl2ZSBibG9ja3M6IGNvbnRhaW4gdGhlIHRva2VucyBvZiBhIHNpbmdsZSBwcmUtcHJvY2Vzc29yCisgICAgICAgIGRpcmVjdGl2ZSAoZS5nLiAjaWYpCisgICAgICAtIHRleHQgYmxvY2tzLCBjb250YWluIHRoZSB0b2tlbnMgb2Ygbm9uLWRpcmVjdGl2ZSBibG9ja3MKKworICAgIFRoZSBjcHAgcGFyc2VyIGNsYXNzIGJlbG93IHdpbGwgdHJhbnNmb3JtIGFuIGlucHV0IHNvdXJjZSBmaWxlIGludG8gYSBsaXN0CisgICAgb2YgQmxvY2sgb2JqZWN0cyAoZ3JvdXBlZCBpbiBhIEJsb2NrTGlzdCBvYmplY3QgZm9yIGNvbnZlbmllbmNlKQorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHRva2VucywgZGlyZWN0aXZlPU5vbmUsIGxpbmVubz0wLCBpZGVudGlmaWVyPU5vbmUpOgorICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IGJsb2NrLCBpZiAnZGlyZWN0aXZlJyBpcyBOb25lLCBpdCBpcyBhIHRleHQgYmxvY2suCisKKyAgICAgICAgTk9URTogVGhpcyBhdXRvbWF0aWNhbGx5IGNvbnZlcnRzICcjaWZkZWYgTUFDUk8nIGludG8KKyAgICAgICAgJyNpZiBkZWZpbmVkKE1BQ1JPKScgYW5kICcjaWZuZGVmIE1BQ1JPJyBpbnRvICcjaWYgIWRlZmluZWQoTUFDUk8pJy4KKyAgICAgICAgIiIiCisKICAgICAgICAgaWYgZGlyZWN0aXZlID09ICJpZmRlZiI6CiAgICAgICAgICAgICB0b2sgPSBUb2tlbigpCi0gICAgICAgICAgICB0b2suc2V0KHRva0RFRklORUQpCi0gICAgICAgICAgICB0b2tlbnMgPSBbIHRvayBdICsgdG9rZW5zCisgICAgICAgICAgICB0b2suaWQgPSB0b2tERUZJTkVECisgICAgICAgICAgICB0b2tlbnMgPSBbdG9rXSArIHRva2VucwogICAgICAgICAgICAgZGlyZWN0aXZlID0gImlmIgogCiAgICAgICAgIGVsaWYgZGlyZWN0aXZlID09ICJpZm5kZWYiOgogICAgICAgICAgICAgdG9rMSA9IFRva2VuKCkKICAgICAgICAgICAgIHRvazIgPSBUb2tlbigpCi0gICAgICAgICAgICB0b2sxLnNldCh0b2tOT1QpCi0gICAgICAgICAgICB0b2syLnNldCh0b2tERUZJTkVEKQotICAgICAgICAgICAgdG9rZW5zID0gWyB0b2sxLCB0b2syIF0gKyB0b2tlbnMKKyAgICAgICAgICAgIHRvazEuaWQgPSB0b2tOT1QKKyAgICAgICAgICAgIHRvazIuaWQgPSB0b2tERUZJTkVECisgICAgICAgICAgICB0b2tlbnMgPSBbdG9rMSwgdG9rMl0gKyB0b2tlbnMKICAgICAgICAgICAgIGRpcmVjdGl2ZSA9ICJpZiIKIAotICAgICAgICBzZWxmLnRva2VucyAgICA9IHRva2VucworICAgICAgICBzZWxmLnRva2VucyA9IHRva2VucwogICAgICAgICBzZWxmLmRpcmVjdGl2ZSA9IGRpcmVjdGl2ZQorICAgICAgICBzZWxmLmRlZmluZV9pZCA9IGlkZW50aWZpZXIKICAgICAgICAgaWYgbGluZW5vID4gMDoKICAgICAgICAgICAgIHNlbGYubGluZW5vID0gbGluZW5vCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLmxpbmVubyA9IHNlbGYudG9rZW5zWzBdLmxpbmVubworICAgICAgICAgICAgc2VsZi5saW5lbm8gPSBzZWxmLnRva2Vuc1swXS5sb2NhdGlvbi5saW5lCiAKICAgICAgICAgaWYgc2VsZi5pc0lmKCk6Ci0gICAgICAgICAgICBzZWxmLmV4cHIgPSBDcHBFeHByKCBzZWxmLnRva2VucyApCisgICAgICAgICAgICBzZWxmLmV4cHIgPSBDcHBFeHByKHNlbGYudG9rZW5zKQogCiAgICAgZGVmIGlzRGlyZWN0aXZlKHNlbGYpOgotICAgICAgICAiIiJyZXR1cm5zIFRydWUgaWZmIHRoaXMgaXMgYSBkaXJlY3RpdmUgYmxvY2siIiIKLSAgICAgICAgcmV0dXJuIHNlbGYuZGlyZWN0aXZlICE9IE5vbmUKKyAgICAgICAgIiIiUmV0dXJuIFRydWUgaWZmIHRoaXMgaXMgYSBkaXJlY3RpdmUgYmxvY2suIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpcmVjdGl2ZSBpcyBub3QgTm9uZQogCiAgICAgZGVmIGlzQ29uZGl0aW9uYWwoc2VsZik6Ci0gICAgICAgICIiInJldHVybnMgVHJ1ZSBpZmYgdGhpcyBpcyBhIGNvbmRpdGlvbmFsIGRpcmVjdGl2ZSBibG9jayIiIgotICAgICAgICByZXR1cm4gc2VsZi5kaXJlY3RpdmUgaW4gWyJpZiIsImlmZGVmIiwiaWZuZGVmIiwiZWxzZSIsImVsaWYiLCJlbmRpZiJdCisgICAgICAgICIiIlJldHVybiBUcnVlIGlmZiB0aGlzIGlzIGEgY29uZGl0aW9uYWwgZGlyZWN0aXZlIGJsb2NrLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXJlY3RpdmUgaW4gWyJpZiIsICJpZmRlZiIsICJpZm5kZWYiLCAiZWxzZSIsICJlbGlmIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW5kaWYiXQogCiAgICAgZGVmIGlzRGVmaW5lKHNlbGYpOgotICAgICAgICAiIiJyZXR1cm5zIHRoZSBtYWNybyBuYW1lIGluIGEgI2RlZmluZSBkaXJlY3RpdmUsIG9yIE5vbmUgb3RoZXJ3aXNlIiIiCisgICAgICAgICIiIlJldHVybiB0aGUgbWFjcm8gbmFtZSBpbiBhICNkZWZpbmUgZGlyZWN0aXZlLCBvciBOb25lIG90aGVyd2lzZS4iIiIKICAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmUgIT0gImRlZmluZSI6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQotCi0gICAgICAgIHJldHVybiBzZWxmLnRva2Vuc1swXS52YWx1ZQorICAgICAgICByZXR1cm4gc2VsZi5kZWZpbmVfaWQKIAogICAgIGRlZiBpc0lmKHNlbGYpOgotICAgICAgICAiIiJyZXR1cm5zIFRydWUgaWZmIHRoaXMgaXMgYW4gI2lmLWxpa2UgZGlyZWN0aXZlIGJsb2NrIiIiCi0gICAgICAgIHJldHVybiBzZWxmLmRpcmVjdGl2ZSBpbiBbImlmIiwiaWZkZWYiLCJpZm5kZWYiLCJlbGlmIl0KKyAgICAgICAgIiIiUmV0dXJuIFRydWUgaWZmIHRoaXMgaXMgYW4gI2lmLWxpa2UgZGlyZWN0aXZlIGJsb2NrLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXJlY3RpdmUgaW4gWyJpZiIsICJpZmRlZiIsICJpZm5kZWYiLCAiZWxpZiJdCisKKyAgICBkZWYgaXNFbmRpZihzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIFRydWUgaWZmIHRoaXMgaXMgYW4gI2VuZGlmIGRpcmVjdGl2ZSBibG9jay4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlyZWN0aXZlID09ICJlbmRpZiIKIAogICAgIGRlZiBpc0luY2x1ZGUoc2VsZik6Ci0gICAgICAgICIiImNoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSAjaW5jbHVkZSBkaXJlY3RpdmUuIGlmIHRydWUsIHRoZW4gcmV0dXJucyB0aGUKLSAgICAgICAgICAgY29ycmVzcG9uZGluZyBmaWxlIG5hbWUgKHdpdGggYnJhY2tldHMgb3IgZG91YmxlLXFvdXRlcykuIE5vbmUgb3RoZXJ3aXNlIiIiCisgICAgICAgICIiIkNoZWNrIHdoZXRoZXIgdGhpcyBpcyBhICNpbmNsdWRlIGRpcmVjdGl2ZS4KKworICAgICAgICBJZiB0cnVlLCByZXR1cm5zIHRoZSBjb3JyZXNwb25kaW5nIGZpbGUgbmFtZSAod2l0aCBicmFja2V0cyBvcgorICAgICAgICBkb3VibGUtcW91dGVzKS4gTm9uZSBvdGhlcndpc2UuCisgICAgICAgICIiIgorCiAgICAgICAgIGlmIHNlbGYuZGlyZWN0aXZlICE9ICJpbmNsdWRlIjoKICAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiAnJy5qb2luKFtzdHIoeCkgZm9yIHggaW4gc2VsZi50b2tlbnNdKQogCi0gICAgICAgIGlmIHNlbGYudG9rZW5zWzBdLmlkID09IHRva1NUUklORzoKLSAgICAgICAgICAgICMgYSBkb3VibGUtcXVvdGUgaW5jbHVkZSwgdGhhdCdzIGVhc3kKLSAgICAgICAgICAgIHJldHVybiBzZWxmLnRva2Vuc1swXS52YWx1ZQorICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgZm9ybWF0X2Jsb2Nrcyh0b2tlbnMsIGluZGVudD0wKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBmb3JtYXR0ZWQgbGluZXMgb2Ygc3RyaW5ncyB3aXRoIHByb3BlciBpbmRlbnRhdGlvbi4iIiIKKyAgICAgICAgbmV3bGluZSA9IFRydWUKKyAgICAgICAgcmVzdWx0ID0gW10KKyAgICAgICAgYnVmID0gJycKKyAgICAgICAgaSA9IDAKKyAgICAgICAgd2hpbGUgaSA8IGxlbih0b2tlbnMpOgorICAgICAgICAgICAgdCA9IHRva2Vuc1tpXQorICAgICAgICAgICAgaWYgdC5pZCA9PSAneyc6CisgICAgICAgICAgICAgICAgYnVmICs9ICcgeycKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHN0cmlwX3NwYWNlKGJ1ZikpCisgICAgICAgICAgICAgICAgaW5kZW50ICs9IDIKKyAgICAgICAgICAgICAgICBidWYgPSAnJworICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBUcnVlCisgICAgICAgICAgICBlbGlmIHQuaWQgPT0gJ30nOgorICAgICAgICAgICAgICAgIGluZGVudCAtPSAyCisgICAgICAgICAgICAgICAgaWYgbm90IG5ld2xpbmU6CisgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc3RyaXBfc3BhY2UoYnVmKSkKKyAgICAgICAgICAgICAgICAjIExvb2sgYWhlYWQgdG8gZGV0ZXJtaW5lIGlmIGl0J3MgdGhlIGVuZCBvZiBsaW5lLgorICAgICAgICAgICAgICAgIGlmIChpICsgMSA8IGxlbih0b2tlbnMpIGFuZAorICAgICAgICAgICAgICAgICAgICAodG9rZW5zW2krMV0uaWQgPT0gJzsnIG9yCisgICAgICAgICAgICAgICAgICAgICB0b2tlbnNbaSsxXS5pZCBpbiBbJ2Vsc2UnLCAnX19hdHRyaWJ1dGVfXycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19fYXR0cmlidXRlJywgJ19fcGFja2VkJ10gb3IKKyAgICAgICAgICAgICAgICAgICAgIHRva2Vuc1tpKzFdLmtpbmQgPT0gVG9rZW5LaW5kLklERU5USUZJRVIpKToKKyAgICAgICAgICAgICAgICAgICAgYnVmID0gJyAnICogaW5kZW50ICsgJ30nCisgICAgICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBGYWxzZQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnICogaW5kZW50ICsgJ30nKQorICAgICAgICAgICAgICAgICAgICBidWYgPSAnJworICAgICAgICAgICAgICAgICAgICBuZXdsaW5lID0gVHJ1ZQorICAgICAgICAgICAgZWxpZiB0LmlkID09ICc7JzoKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHN0cmlwX3NwYWNlKGJ1ZikgKyAnOycpCisgICAgICAgICAgICAgICAgYnVmID0gJycKKyAgICAgICAgICAgICAgICBuZXdsaW5lID0gVHJ1ZQorICAgICAgICAgICAgIyBXZSBwcmVmZXIgYSBuZXcgbGluZSBmb3IgZWFjaCBjb25zdGFudCBpbiBlbnVtLgorICAgICAgICAgICAgZWxpZiB0LmlkID09ICcsJyBhbmQgdC5jdXJzb3Iua2luZCA9PSBDdXJzb3JLaW5kLkVOVU1fREVDTDoKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHN0cmlwX3NwYWNlKGJ1ZikgKyAnLCcpCisgICAgICAgICAgICAgICAgYnVmID0gJycKKyAgICAgICAgICAgICAgICBuZXdsaW5lID0gVHJ1ZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBuZXdsaW5lOgorICAgICAgICAgICAgICAgICAgICBidWYgKz0gJyAnICogaW5kZW50ICsgc3RyKHQpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgYnVmICs9ICcgJyArIHN0cih0KQorICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBGYWxzZQorICAgICAgICAgICAgaSArPSAxCiAKLSAgICAgICAgIyB3ZSBvbmx5IHdhbnQgdGhlIGJyYWNrZXQgcGFydCwgbm90IGFueSBjb21tZW50cyBvciBqdW5rIGFmdGVyIGl0Ci0gICAgICAgIGlmIHNlbGYudG9rZW5zWzBdLmlkID09ICI8IjoKLSAgICAgICAgICAgIGkgICA9IDAKLSAgICAgICAgICAgIHRvayA9IHNlbGYudG9rZW5zCi0gICAgICAgICAgICBuICAgPSBsZW4odG9rKQotICAgICAgICAgICAgd2hpbGUgaSA8IG4gYW5kIHRva1tpXS5pZCAhPSAiPiI6Ci0gICAgICAgICAgICAgICAgaSArPSAxCisgICAgICAgIGlmIGJ1ZjoKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc3RyaXBfc3BhY2UoYnVmKSkKIAotICAgICAgICAgICAgaWYgaSA+PSBuOgotICAgICAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiByZXN1bHQsIGluZGVudAogCi0gICAgICAgICAgICByZXR1cm4gc3RyaW5nLmpvaW4oWyBzdHIoeCkgZm9yIHggaW4gdG9rWzppKzFdIF0sIiIpCi0KLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiBOb25lCi0KLSAgICBkZWYgcmVtb3ZlV2hpdGVTcGFjZShzZWxmKToKLSAgICAgICAgIyBSZW1vdmUgdHJhaWxpbmcgd2hpdGVzcGFjZSBhbmQgZW1wdHkgbGluZXMKLSAgICAgICAgIyBBbGwgd2hpdGVzcGFjZSBpcyBhbHNvIGNvbnRyYWN0ZWQgdG8gYSBzaW5nbGUgc3BhY2UKLSAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmUgIT0gTm9uZToKLSAgICAgICAgICAgIHJldHVybgotCi0gICAgICAgIHRva2VucyA9IFtdCi0gICAgICAgIGxpbmUgICA9IDAgICAgICMgaW5kZXggb2YgbGluZSBzdGFydAotICAgICAgICBzcGFjZSAgPSAtMSAgICAjIGluZGV4IG9mIGZpcnN0IHNwYWNlLCBvciAtMQotICAgICAgICBpaSA9IDAKLSAgICAgICAgbm4gPSBsZW4oc2VsZi50b2tlbnMpCi0gICAgICAgIHdoaWxlIGlpIDwgbm46Ci0gICAgICAgICAgICB0b2sgPSBzZWxmLnRva2Vuc1tpaV0KLQotICAgICAgICAgICAgIyBJZiB3ZSBmaW5kIGEgc3BhY2UsIHJlY29yZCBpdHMgcG9zaXRpb24gaWYgdGhpcyBpcyB0aGUgZmlyc3QKLSAgICAgICAgICAgICMgb25lIHRoZSBsaW5lIHN0YXJ0IG9yIHRoZSBwcmV2aW91cyBjaGFyYWN0ZXIuIERvbid0IGFwcGVuZAotICAgICAgICAgICAgIyBhbnl0aGluZyB0byB0b2tlbnMgYXJyYXkgeWV0IHRob3VnaC4KLSAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tTUEFDRToKLSAgICAgICAgICAgICAgICBpZiBzcGFjZSA8IDA6Ci0gICAgICAgICAgICAgICAgICAgIHNwYWNlID0gaWkKLSAgICAgICAgICAgICAgICBpaSArPSAxCi0gICAgICAgICAgICAgICAgY29udGludWUKLQotICAgICAgICAgICAgIyBJZiB0aGlzIGlzIGEgbGluZSBzcGFjZSwgaWdub3JlIHRoZSBzcGFjZXMgd2UgZm91bmQgcHJldmlvdXNseQotICAgICAgICAgICAgIyBvbiB0aGUgbGluZSwgYW5kIHJlbW92ZSBlbXB0eSBsaW5lcy4KLSAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tMTjoKLSAgICAgICAgICAgICAgICBvbGRfbGluZSAgPSBsaW5lCi0gICAgICAgICAgICAgICAgb2xkX3NwYWNlID0gc3BhY2UKLSAgICAgICAgICAgICAgICBpaSAgICs9IDEKLSAgICAgICAgICAgICAgICBsaW5lICA9IGlpCi0gICAgICAgICAgICAgICAgc3BhY2UgPSAtMQotICAgICAgICAgICAgICAgIGlmIG9sZF9zcGFjZSA9PSBvbGRfbGluZTogICMgbGluZSBvbmx5IGNvbnRhaW5zIHNwYWNlcwotICAgICAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgICAgIGlmIGlpLTEgPT0gb2xkX2xpbmU6ICAjIGxpbmUgaXMgZW1wdHkKLSAgICAgICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgICAgICB0b2tlbnMuYXBwZW5kKHRvaykKLSAgICAgICAgICAgICAgICBjb250aW51ZQotCi0gICAgICAgICAgICAjIE90aGVyIHRva2VuLCBhcHBlbmQgYW55IHNwYWNlIHJhbmdlIGlmIGFueSwgY29udmVydGluZyBlYWNoCi0gICAgICAgICAgICAjIG9uZSB0byBhIHNpbmdsZSBzcGFjZSBjaGFyYWN0ZXIsIHRoZW4gYXBwZW5kIHRoZSB0b2tlbi4KLSAgICAgICAgICAgIGlmIHNwYWNlID49IDA6Ci0gICAgICAgICAgICAgICAgamogPSBzcGFjZQotICAgICAgICAgICAgICAgIHNwYWNlID0gLTEKLSAgICAgICAgICAgICAgICB3aGlsZSBqaiA8IGlpOgotICAgICAgICAgICAgICAgICAgICB0b2syID0gc2VsZi50b2tlbnNbampdCi0gICAgICAgICAgICAgICAgICAgIHRvazIudmFsdWUgPSAiICIKLSAgICAgICAgICAgICAgICAgICAgdG9rZW5zLmFwcGVuZCh0b2syKQotICAgICAgICAgICAgICAgICAgICBqaiArPSAxCi0KLSAgICAgICAgICAgIHRva2Vucy5hcHBlbmQodG9rKQotICAgICAgICAgICAgaWkgKz0gMQotCi0gICAgICAgIHNlbGYudG9rZW5zID0gdG9rZW5zCi0KLSAgICBkZWYgd3JpdGVXaXRoV2FybmluZyhzZWxmLG91dCx3YXJuaW5nLGxlZnRfY291bnQscmVwZWF0X2NvdW50KToKKyAgICBkZWYgd3JpdGVXaXRoV2FybmluZyhzZWxmLCBvdXQsIHdhcm5pbmcsIGxlZnRfY291bnQsIHJlcGVhdF9jb3VudCwgaW5kZW50KToKKyAgICAgICAgIiIiRHVtcCB0aGUgY3VycmVudCBibG9jayB3aXRoIHdhcm5pbmdzLiIiIgogICAgICAgICAjIHJlbW92ZVdoaXRlU3BhY2UoKSB3aWxsIHNvbWV0aW1lcyBjcmVhdGVzIG5vbi1kaXJlY3RpdmUgYmxvY2tzCiAgICAgICAgICMgd2l0aG91dCBhbnkgdG9rZW5zLiBUaGVzZSBjb21lIGZyb20gYmxvY2tzIHRoYXQgb25seSBjb250YWluZWQKICAgICAgICAgIyBlbXB0eSBsaW5lcyBhbmQgc3BhY2VzLiBUaGV5IHNob3VsZCBub3QgYmUgcHJpbnRlZCBpbiB0aGUgZmluYWwKICAgICAgICAgIyBvdXRwdXQsIGFuZCB0aGVuIHNob3VsZCBub3QgYmUgY291bnRlZCBmb3IgdGhpcyBvcGVyYXRpb24uCiAgICAgICAgICMKLSAgICAgICAgaWYgbm90IHNlbGYuZGlyZWN0aXZlIGFuZCBzZWxmLnRva2VucyA9PSBbXToKLSAgICAgICAgICAgIHJldHVybiBsZWZ0X2NvdW50CisgICAgICAgIGlmIHNlbGYuZGlyZWN0aXZlIGlzIE5vbmUgYW5kIG5vdCBzZWxmLnRva2VuczoKKyAgICAgICAgICAgIHJldHVybiBsZWZ0X2NvdW50LCBpbmRlbnQKIAogICAgICAgICBpZiBzZWxmLmRpcmVjdGl2ZToKLSAgICAgICAgICAgIG91dC53cml0ZShzdHIoc2VsZikucnN0cmlwKCkgKyAiXG4iKQorICAgICAgICAgICAgb3V0LndyaXRlKHN0cihzZWxmKSArICdcbicpCiAgICAgICAgICAgICBsZWZ0X2NvdW50IC09IDEKICAgICAgICAgICAgIGlmIGxlZnRfY291bnQgPT0gMDoKICAgICAgICAgICAgICAgICBvdXQud3JpdGUod2FybmluZykKICAgICAgICAgICAgICAgICBsZWZ0X2NvdW50ID0gcmVwZWF0X2NvdW50CiAKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGZvciB0b2sgaW4gc2VsZi50b2tlbnM6Ci0gICAgICAgICAgICAgICAgb3V0LndyaXRlKHN0cih0b2spKQotICAgICAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tMTjoKLSAgICAgICAgICAgICAgICAgICAgbGVmdF9jb3VudCAtPSAxCi0gICAgICAgICAgICAgICAgICAgIGlmIGxlZnRfY291bnQgPT0gMDoKLSAgICAgICAgICAgICAgICAgICAgICAgIG91dC53cml0ZSh3YXJuaW5nKQotICAgICAgICAgICAgICAgICAgICAgICAgbGVmdF9jb3VudCA9IHJlcGVhdF9jb3VudAorICAgICAgICAgICAgbGluZXMsIGluZGVudCA9IHNlbGYuZm9ybWF0X2Jsb2NrcyhzZWxmLnRva2VucywgaW5kZW50KQorICAgICAgICAgICAgZm9yIGxpbmUgaW4gbGluZXM6CisgICAgICAgICAgICAgICAgb3V0LndyaXRlKGxpbmUgKyAnXG4nKQorICAgICAgICAgICAgICAgIGxlZnRfY291bnQgLT0gMQorICAgICAgICAgICAgICAgIGlmIGxlZnRfY291bnQgPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgb3V0LndyaXRlKHdhcm5pbmcpCisgICAgICAgICAgICAgICAgICAgIGxlZnRfY291bnQgPSByZXBlYXRfY291bnQKIAotICAgICAgICByZXR1cm4gbGVmdF9jb3VudAotCisgICAgICAgIHJldHVybiBsZWZ0X2NvdW50LCBpbmRlbnQKIAogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKLSAgICAgICAgIiIiZ2VuZXJhdGUgdGhlIHJlcHJlc2VudGF0aW9uIG9mIGEgZ2l2ZW4gYmxvY2siIiIKKyAgICAgICAgIiIiR2VuZXJhdGUgdGhlIHJlcHJlc2VudGF0aW9uIG9mIGEgZ2l2ZW4gYmxvY2suIiIiCiAgICAgICAgIGlmIHNlbGYuZGlyZWN0aXZlOgogICAgICAgICAgICAgcmVzdWx0ID0gIiMlcyAiICUgc2VsZi5kaXJlY3RpdmUKICAgICAgICAgICAgIGlmIHNlbGYuaXNJZigpOgpAQCAtMTI4Niw4ICsxMTQzLDkgQEAKICAgICAgICAgcmV0dXJuIHJlc3VsdAogCiAgICAgZGVmIF9fc3RyX18oc2VsZik6Ci0gICAgICAgICIiImdlbmVyYXRlIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYSBnaXZlbiBibG9jayIiIgorICAgICAgICAiIiJHZW5lcmF0ZSB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGEgZ2l2ZW4gYmxvY2suIiIiCiAgICAgICAgIGlmIHNlbGYuZGlyZWN0aXZlOgorICAgICAgICAgICAgIyAiI2lmIgogICAgICAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmUgPT0gImlmIjoKICAgICAgICAgICAgICAgICAjIHNtYWxsIG9wdGltaXphdGlvbiB0byByZS1nZW5lcmF0ZSAjaWZkZWYgYW5kICNpZm5kZWYKICAgICAgICAgICAgICAgICBlID0gc2VsZi5leHByLmV4cHIKQEAgLTEyOTgsMTE0ICsxMTU2LDEzOCBAQAogICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAiI2lmbmRlZiAlcyIgJSBlWzFdWzFdCiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIiNpZiAiICsgc3RyKHNlbGYuZXhwcikKKworICAgICAgICAgICAgIyAiI2RlZmluZSIKKyAgICAgICAgICAgIGVsaWYgc2VsZi5pc0RlZmluZSgpOgorICAgICAgICAgICAgICAgIHJlc3VsdCA9ICIjJXMgJXMiICUgKHNlbGYuZGlyZWN0aXZlLCBzZWxmLmRlZmluZV9pZCkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnRva2VuczoKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICIgIgorICAgICAgICAgICAgICAgIGV4cHIgPSBzdHJpcF9zcGFjZSgnICcuam9pbihbdG9rLmlkIGZvciB0b2sgaW4gc2VsZi50b2tlbnNdKSkKKyAgICAgICAgICAgICAgICAjIHJlbW92ZSB0aGUgc3BhY2UgYmV0d2VlbiBuYW1lIGFuZCAnKCcgaW4gZnVuY3Rpb24gY2FsbAorICAgICAgICAgICAgICAgIHJlc3VsdCArPSByZS5zdWIocicoXHcrKSBcKCcsIHInXDEoJywgZXhwcikKKworICAgICAgICAgICAgIyAiI2Vycm9yIgorICAgICAgICAgICAgIyBDb25jYXRlbmF0aW5nIHRva2VucyB3aXRoIGEgc3BhY2Ugc2VwYXJhdG9yLCBiZWNhdXNlIHRoZXkgbWF5CisgICAgICAgICAgICAjIG5vdCBiZSBxdW90ZWQgYW5kIGJyb2tlbiBpbnRvIHNldmVyYWwgdG9rZW5zCisgICAgICAgICAgICBlbGlmIHNlbGYuZGlyZWN0aXZlID09ICJlcnJvciI6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gIiNlcnJvciAlcyIgJSAnICcuam9pbihbdG9rLmlkIGZvciB0b2sgaW4gc2VsZi50b2tlbnNdKQorCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJlc3VsdCA9ICIjJXMiICUgc2VsZi5kaXJlY3RpdmUKLSAgICAgICAgICAgICAgICBpZiBsZW4oc2VsZi50b2tlbnMpOgorICAgICAgICAgICAgICAgIGlmIHNlbGYudG9rZW5zOgogICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIiAiCi0gICAgICAgICAgICAgICAgZm9yIHRvayBpbiBzZWxmLnRva2VuczoKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9IHN0cih0b2spCisgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICcnLmpvaW4oW3Rvay5pZCBmb3IgdG9rIGluIHNlbGYudG9rZW5zXSkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJlc3VsdCA9ICIiCi0gICAgICAgICAgICBmb3IgdG9rIGluIHNlbGYudG9rZW5zOgotICAgICAgICAgICAgICAgIHJlc3VsdCArPSBzdHIodG9rKQorICAgICAgICAgICAgbGluZXMsIF8gPSBzZWxmLmZvcm1hdF9ibG9ja3Moc2VsZi50b2tlbnMpCisgICAgICAgICAgICByZXN1bHQgPSAnXG4nLmpvaW4obGluZXMpCiAKICAgICAgICAgcmV0dXJuIHJlc3VsdAogCi1jbGFzcyBCbG9ja0xpc3Q6Ci0gICAgIiIiYSBjb252ZW5pZW5jZSBjbGFzcyB1c2VkIHRvIGhvbGQgYW5kIHByb2Nlc3MgYSBsaXN0IG9mIGJsb2NrcyByZXR1cm5lZCBieQotICAgICAgIHRoZSBjcHAgcGFyc2VyIiIiCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsYmxvY2tzKToKKworY2xhc3MgQmxvY2tMaXN0KG9iamVjdCk6CisgICAgIiIiQSBjb252ZW5pZW5jZSBjbGFzcyB1c2VkIHRvIGhvbGQgYW5kIHByb2Nlc3MgYSBsaXN0IG9mIGJsb2Nrcy4KKworICAgIEl0IGNhbGxzIHRoZSBjcHAgcGFyc2VyIHRvIGdldCB0aGUgYmxvY2tzLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGJsb2Nrcyk6CiAgICAgICAgIHNlbGYuYmxvY2tzID0gYmxvY2tzCiAKICAgICBkZWYgX19sZW5fXyhzZWxmKToKICAgICAgICAgcmV0dXJuIGxlbihzZWxmLmJsb2NrcykKIAotICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLG4pOgorICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBuKToKICAgICAgICAgcmV0dXJuIHNlbGYuYmxvY2tzW25dCiAKICAgICBkZWYgX19yZXByX18oc2VsZik6CiAgICAgICAgIHJldHVybiByZXByKHNlbGYuYmxvY2tzKQogCiAgICAgZGVmIF9fc3RyX18oc2VsZik6Ci0gICAgICAgIHJlc3VsdCA9ICIiCi0gICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgotICAgICAgICAgICAgcmVzdWx0ICs9IHN0cihiKQotICAgICAgICAgICAgaWYgYi5pc0RpcmVjdGl2ZSgpOgotICAgICAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5yc3RyaXAoKSArICdcbicKKyAgICAgICAgcmVzdWx0ID0gJ1xuJy5qb2luKFtzdHIoYikgZm9yIGIgaW4gc2VsZi5ibG9ja3NdKQogICAgICAgICByZXR1cm4gcmVzdWx0CiAKLSAgICBkZWYgIG9wdGltaXplSWYwMShzZWxmKToKLSAgICAgICAgIiIicmVtb3ZlIHRoZSBjb2RlIGJldHdlZW4gI2lmIDAgLi4gI2VuZGlmIGluIGEgQmxvY2tMaXN0IiIiCisgICAgZGVmIGR1bXAoc2VsZik6CisgICAgICAgICIiIkR1bXAgYWxsIHRoZSBibG9ja3MgaW4gY3VycmVudCBCbG9ja0xpc3QuIiIiCisgICAgICAgIHByaW50ICcjIyMjIyBCRUdJTiAjIyMjIycKKyAgICAgICAgZm9yIGksIGIgaW4gZW51bWVyYXRlKHNlbGYuYmxvY2tzKToKKyAgICAgICAgICAgIHByaW50ICcjIyMgQkxPQ0sgJWQgIyMjJyAlIGkKKyAgICAgICAgICAgIHByaW50IGIKKyAgICAgICAgcHJpbnQgJyMjIyMjIEVORCAjIyMjIycKKworICAgIGRlZiBvcHRpbWl6ZUlmMDEoc2VsZik6CisgICAgICAgICIiIlJlbW92ZSB0aGUgY29kZSBiZXR3ZWVuICNpZiAwIC4uICNlbmRpZiBpbiBhIEJsb2NrTGlzdC4iIiIKICAgICAgICAgc2VsZi5ibG9ja3MgPSBvcHRpbWl6ZV9pZjAxKHNlbGYuYmxvY2tzKQogCiAgICAgZGVmIG9wdGltaXplTWFjcm9zKHNlbGYsIG1hY3Jvcyk6Ci0gICAgICAgICIiInJlbW92ZSBrbm93biBkZWZpbmVkIGFuZCB1bmRlZmluZWQgbWFjcm9zIGZyb20gYSBCbG9ja0xpc3QiIiIKKyAgICAgICAgIiIiUmVtb3ZlIGtub3duIGRlZmluZWQgYW5kIHVuZGVmaW5lZCBtYWNyb3MgZnJvbSBhIEJsb2NrTGlzdC4iIiIKICAgICAgICAgZm9yIGIgaW4gc2VsZi5ibG9ja3M6CiAgICAgICAgICAgICBpZiBiLmlzSWYoKToKICAgICAgICAgICAgICAgICBiLmV4cHIub3B0aW1pemUobWFjcm9zKQogCi0gICAgZGVmIHJlbW92ZU1hY3JvRGVmaW5lcyhzZWxmLG1hY3Jvcyk6Ci0gICAgICAgICIiInJlbW92ZSBrbm93biBtYWNybyBkZWZpbml0aW9ucyBmcm9tIGEgQmxvY2tMaXN0IiIiCi0gICAgICAgIHNlbGYuYmxvY2tzID0gcmVtb3ZlX21hY3JvX2RlZmluZXMoc2VsZi5ibG9ja3MsbWFjcm9zKQorICAgIGRlZiByZW1vdmVNYWNyb0RlZmluZXMoc2VsZiwgbWFjcm9zKToKKyAgICAgICAgIiIiUmVtb3ZlIGtub3duIG1hY3JvIGRlZmluaXRpb25zIGZyb20gYSBCbG9ja0xpc3QuIiIiCisgICAgICAgIHNlbGYuYmxvY2tzID0gcmVtb3ZlX21hY3JvX2RlZmluZXMoc2VsZi5ibG9ja3MsIG1hY3JvcykKIAotICAgIGRlZiByZW1vdmVXaGl0ZVNwYWNlKHNlbGYpOgotICAgICAgICBmb3IgYiBpbiBzZWxmLmJsb2NrczoKLSAgICAgICAgICAgIGIucmVtb3ZlV2hpdGVTcGFjZSgpCi0KLSAgICBkZWYgb3B0aW1pemVBbGwoc2VsZixtYWNyb3MpOgorICAgIGRlZiBvcHRpbWl6ZUFsbChzZWxmLCBtYWNyb3MpOgogICAgICAgICBzZWxmLm9wdGltaXplTWFjcm9zKG1hY3JvcykKICAgICAgICAgc2VsZi5vcHRpbWl6ZUlmMDEoKQogICAgICAgICByZXR1cm4KIAogICAgIGRlZiBmaW5kSW5jbHVkZXMoc2VsZik6Ci0gICAgICAgICIiInJldHVybiB0aGUgbGlzdCBvZiBpbmNsdWRlZCBmaWxlcyBpbiBhIEJsb2NrTGlzdCIiIgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgaW5jbHVkZWQgZmlsZXMgaW4gYSBCbG9ja0xpc3QuIiIiCiAgICAgICAgIHJlc3VsdCA9IFtdCiAgICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgogICAgICAgICAgICAgaSA9IGIuaXNJbmNsdWRlKCkKICAgICAgICAgICAgIGlmIGk6CiAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChpKQotCiAgICAgICAgIHJldHVybiByZXN1bHQKIAotCi0gICAgZGVmIHdyaXRlKHNlbGYsb3V0KToKKyAgICBkZWYgd3JpdGUoc2VsZiwgb3V0KToKICAgICAgICAgb3V0LndyaXRlKHN0cihzZWxmKSkKIAotICAgIGRlZiB3cml0ZVdpdGhXYXJuaW5nKHNlbGYsb3V0LHdhcm5pbmcscmVwZWF0X2NvdW50KToKKyAgICBkZWYgd3JpdGVXaXRoV2FybmluZyhzZWxmLCBvdXQsIHdhcm5pbmcsIHJlcGVhdF9jb3VudCk6CiAgICAgICAgIGxlZnRfY291bnQgPSByZXBlYXRfY291bnQKKyAgICAgICAgaW5kZW50ID0gMAogICAgICAgICBmb3IgYiBpbiBzZWxmLmJsb2NrczoKLSAgICAgICAgICAgIGxlZnRfY291bnQgPSBiLndyaXRlV2l0aFdhcm5pbmcob3V0LHdhcm5pbmcsbGVmdF9jb3VudCxyZXBlYXRfY291bnQpCisgICAgICAgICAgICBsZWZ0X2NvdW50LCBpbmRlbnQgPSBiLndyaXRlV2l0aFdhcm5pbmcob3V0LCB3YXJuaW5nLCBsZWZ0X2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGVhdF9jb3VudCwgaW5kZW50KQogCi0gICAgZGVmIHJlbW92ZUNvbW1lbnRzKHNlbGYpOgotICAgICAgICBmb3IgYiBpbiBzZWxmLmJsb2NrczoKLSAgICAgICAgICAgIGZvciB0b2sgaW4gYi50b2tlbnM6Ci0gICAgICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva1NQQUNFOgotICAgICAgICAgICAgICAgICAgICB0b2sudmFsdWUgPSAiICIKKyAgICBkZWYgcmVtb3ZlVmFyc0FuZEZ1bmNzKHNlbGYsIGtub3duU3RhdGljcz1Ob25lKToKKyAgICAgICAgIiIiUmVtb3ZlIHZhcmlhYmxlIGFuZCBmdW5jdGlvbiBkZWNsYXJhdGlvbnMuCiAKLSAgICBkZWYgcmVtb3ZlVmFyc0FuZEZ1bmNzKHNlbGYsa25vd25TdGF0aWNzPXNldCgpKToKLSAgICAgICAgIiIicmVtb3ZlIGFsbCBleHRlcm4gYW5kIHN0YXRpYyBkZWNsYXJhdGlvbnMgY29ycmVzcG9uZGluZwotICAgICAgICAgICB0byB2YXJpYWJsZSBhbmQgZnVuY3Rpb24gZGVjbGFyYXRpb25zLiB3ZSBvbmx5IGFjY2VwdCB0eXBlZGVmcwotICAgICAgICAgICBhbmQgZW51bS9zdHJ1Y3RzL3VuaW9uIGRlY2xhcmF0aW9ucy4KKyAgICAgICAgQWxsIGV4dGVybiBhbmQgc3RhdGljIGRlY2xhcmF0aW9ucyBjb3JyZXNwb25kaW5nIHRvIHZhcmlhYmxlIGFuZAorICAgICAgICBmdW5jdGlvbiBkZWNsYXJhdGlvbnMgYXJlIHJlbW92ZWQuIFdlIG9ubHkgYWNjZXB0IHR5cGVkZWZzIGFuZAorICAgICAgICBlbnVtL3N0cnVjdHMvdW5pb24gZGVjbGFyYXRpb25zLgogCi0gICAgICAgICAgIGhvd2V2ZXIsIHdlIGtlZXAgdGhlIGRlZmluaXRpb25zIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNldAotICAgICAgICAgICBvZiBrbm93biBzdGF0aWMgaW5saW5lIGZ1bmN0aW9ucyBpbiB0aGUgc2V0ICdrbm93blN0YXRpY3MnLAotICAgICAgICAgICB3aGljaCBpcyB1c2VmdWwgZm9yIG9wdGltaXplZCBieXRlb3JkZXIgc3dhcCBmdW5jdGlvbnMgYW5kCi0gICAgICAgICAgIHN0dWZmIGxpa2UgdGhhdC4KLSAgICAgICAgICAgIiIiCisgICAgICAgIEhvd2V2ZXIsIHdlIGtlZXAgdGhlIGRlZmluaXRpb25zIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNldCBvZiBrbm93bgorICAgICAgICBzdGF0aWMgaW5saW5lIGZ1bmN0aW9ucyBpbiB0aGUgc2V0ICdrbm93blN0YXRpY3MnLCB3aGljaCBpcyB1c2VmdWwKKyAgICAgICAgZm9yIG9wdGltaXplZCBieXRlb3JkZXIgc3dhcCBmdW5jdGlvbnMgYW5kIHN0dWZmIGxpa2UgdGhhdC4KKyAgICAgICAgIiIiCisKKyAgICAgICAgIyBOT1RFOiBJdCdzIGFsc28gcmVtb3ZpbmcgZnVuY3Rpb24tbGlrZSBtYWNyb3MsIHN1Y2ggYXMgX19TWVNDQUxMKC4uLikKKyAgICAgICAgIyBpbiB1YXBpL2FzbS1nZW5lcmljL3VuaXN0ZC5oLCBvciBLRVlfRklFTEQoLi4uKSBpbiBsaW51eC9iY2FjaGUuaC4KKyAgICAgICAgIyBJdCBjb3VsZCBiZSBwcm9ibGVtYXRpYyB3aGVuIHdlIGhhdmUgZnVuY3Rpb24tbGlrZSBtYWNyb3MgYnV0IHdpdGhvdXQKKyAgICAgICAgIyAnfScgZm9sbG93aW5nIHRoZW0uIEl0IHdpbGwgc2tpcCBhbGwgdGhlIHRva2Vucy9ibG9ja3MgdW50aWwgc2VlaW5nIGEKKyAgICAgICAgIyAnfScgYXMgdGhlIGZ1bmN0aW9uIGVuZC4gRm9ydHVuYXRlbHkgd2UgZG9uJ3QgaGF2ZSBzdWNoIGNhc2VzIGluIHRoZQorICAgICAgICAjIGN1cnJlbnQga2VybmVsIGhlYWRlcnMuCisKICAgICAgICAgIyBzdGF0ZSA9IDAgPT4gbm9ybWFsIChpLmUuIExOICsgc3BhY2VzKQogICAgICAgICAjIHN0YXRlID0gMSA9PiB0eXBlZGVmL3N0cnVjdCBlbmNvdW50ZXJlZCwgZW5kcyB3aXRoICI7IgogICAgICAgICAjIHN0YXRlID0gMiA9PiB2YXIgZGVjbGFyYXRpb24gZW5jb3VudGVyZWQsIGVuZHMgd2l0aCAiOyIKICAgICAgICAgIyBzdGF0ZSA9IDMgPT4gZnVuYyBkZWNsYXJhdGlvbiBlbmNvdW50ZXJlZCwgZW5kcyB3aXRoICJ9IgotICAgICAgICBzdGF0ZSAgICAgID0gMAotICAgICAgICBkZXB0aCAgICAgID0gMAotICAgICAgICBibG9ja3MyICAgID0gW10KKworICAgICAgICBpZiBrbm93blN0YXRpY3MgaXMgTm9uZToKKyAgICAgICAgICAgIGtub3duU3RhdGljcyA9IHNldCgpCisgICAgICAgIHN0YXRlID0gMAorICAgICAgICBkZXB0aCA9IDAKKyAgICAgICAgYmxvY2tzMiA9IFtdCiAgICAgICAgIHNraXBUb2tlbnMgPSBGYWxzZQogICAgICAgICBmb3IgYiBpbiBzZWxmLmJsb2NrczoKICAgICAgICAgICAgIGlmIGIuaXNEaXJlY3RpdmUoKToKICAgICAgICAgICAgICAgICBibG9ja3MyLmFwcGVuZChiKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBuICAgICA9IGxlbihiLnRva2VucykKLSAgICAgICAgICAgICAgICBpICAgICA9IDAKKyAgICAgICAgICAgICAgICBuID0gbGVuKGIudG9rZW5zKQorICAgICAgICAgICAgICAgIGkgPSAwCiAgICAgICAgICAgICAgICAgaWYgc2tpcFRva2VuczoKICAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBuCiAgICAgICAgICAgICAgICAgZWxzZToKQEAgLTE0MzQsMjEgKzEzMTYsMTYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBza2lwVG9rZW5zOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwVG9rZW5zID0gRmFsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBpKzEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBpICsgMQogCi0gICAgICAgICAgICAgICAgICAgICAgICBpID0gaSsxCi0gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQotCi0gICAgICAgICAgICAgICAgICAgICMgV2UgYXJlIGxvb2tpbmcgZm9yIHRoZSBzdGFydCBvZiBhIG5ldyB0eXBlL2Z1bmMvdmFyCi0gICAgICAgICAgICAgICAgICAgICMgaWdub3JlIHdoaXRlc3BhY2UKLSAgICAgICAgICAgICAgICAgICAgaWYgdG9raWQgaW4gW3Rva0xOLCB0b2tTUEFDRV06Ci0gICAgICAgICAgICAgICAgICAgICAgICBpID0gaSsxCisgICAgICAgICAgICAgICAgICAgICAgICBpICs9IDEKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAKICAgICAgICAgICAgICAgICAgICAgIyBJcyBpdCBhIG5ldyB0eXBlIGRlZmluaXRpb24sIHRoZW4gc3RhcnQgcmVjb3JkaW5nIGl0Ci0gICAgICAgICAgICAgICAgICAgIGlmIHRvay52YWx1ZSBpbiBbICdzdHJ1Y3QnLCAndHlwZWRlZicsICdlbnVtJywgJ3VuaW9uJywgJ19fZXh0ZW5zaW9uX18nIF06CisgICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCBpbiBbJ3N0cnVjdCcsICd0eXBlZGVmJywgJ2VudW0nLCAndW5pb24nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfX2V4dGVuc2lvbl9fJ106CiAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IDEKLSAgICAgICAgICAgICAgICAgICAgICAgIGkgICAgID0gaSsxCisgICAgICAgICAgICAgICAgICAgICAgICBpICs9IDEKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAKICAgICAgICAgICAgICAgICAgICAgIyBJcyBpdCBhIHZhcmlhYmxlIG9yIGZ1bmN0aW9uIGRlZmluaXRpb24uIElmIHNvLCBmaXJzdApAQCAtMTQ2NCwxOCArMTM0MSwxOCBAQAogICAgICAgICAgICAgICAgICAgICAjIFdlIGFsc28gYXNzdW1lIHRoYXQgdGhlIHZhci9mdW5jIG5hbWUgaXMgdGhlIGxhc3QKICAgICAgICAgICAgICAgICAgICAgIyBpZGVudGlmaWVyIGJlZm9yZSB0aGUgdGVybWluYXRvci4KICAgICAgICAgICAgICAgICAgICAgIwotICAgICAgICAgICAgICAgICAgICBqID0gaSsxCisgICAgICAgICAgICAgICAgICAgIGogPSBpICsgMQogICAgICAgICAgICAgICAgICAgICBpZGVudCA9ICIiCiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIGogPCBuOgogICAgICAgICAgICAgICAgICAgICAgICAgdG9raWQgPSBiLnRva2Vuc1tqXS5pZAogICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9raWQgPT0gJygnOiAgIyBhIGZ1bmN0aW9uIGRlY2xhcmF0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSAzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgdG9raWQgPT0gJzsnOiAjIGEgdmFyaWFibGUgZGVjbGFyYXRpb24KKyAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgdG9raWQgPT0gJzsnOiAgIyBhIHZhcmlhYmxlIGRlY2xhcmF0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSAyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRva2lkID09IHRva0lERU5UOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkZW50ID0gYi50b2tlbnNbal0udmFsdWUKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGIudG9rZW5zW2pdLmtpbmQgPT0gVG9rZW5LaW5kLklERU5USUZJRVI6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnQgPSBiLnRva2Vuc1tqXS5pZAogICAgICAgICAgICAgICAgICAgICAgICAgaiArPSAxCiAKICAgICAgICAgICAgICAgICAgICAgaWYgaiA+PSBuOgpAQCAtMTQ4OCwyMjEgKzEzNjUsMzA5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAjIHdpdGhvdXQgbWFraW5nIG91ciBwYXJzZXIgbXVjaCBtb3JlCiAgICAgICAgICAgICAgICAgICAgICAgICAjIGNvbXBsZXguCiAgICAgICAgICAgICAgICAgICAgICAgICAjCi0gICAgICAgICAgICAgICAgICAgICAgICAjcHJpbnQgIiMjIyBza2lwIHVudGVybWluYXRlZCBzdGF0aWMgJyVzJyIgJSBpZGVudAorICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiIyMjIHNraXAgdW50ZXJtaW5hdGVkIHN0YXRpYyAnJXMnIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnQpCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawogCiAgICAgICAgICAgICAgICAgICAgIGlmIGlkZW50IGluIGtub3duU3RhdGljczoKLSAgICAgICAgICAgICAgICAgICAgICAgICNwcmludCAiIyMjIGtlZXAgdmFyL2Z1bmMgJyVzJzogJXMiICUgKGlkZW50LHJlcHIoYi50b2tlbnNbaTpqXSkpCi0gICAgICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCIjIyMga2VlcCB2YXIvZnVuYyAnJXMnOiAlcyIsIGlkZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXByKGIudG9rZW5zW2k6al0pKQogICAgICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAgICAgIyBXZSdyZSBnb2luZyB0byBza2lwIHRoZSB0b2tlbnMgZm9yIHRoaXMgZGVjbGFyYXRpb24KLSAgICAgICAgICAgICAgICAgICAgICAgICNwcmludCAiIyMjIHNraXAgdmFyaWFibGUgL2Z1bmMnJXMnOiAlcyIgJSAoaWRlbnQscmVwcihiLnRva2Vuc1tpOmpdKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoIiMjIyBza2lwIHZhci9mdW5jICclcyc6ICVzIiwgaWRlbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHIoYi50b2tlbnNbaTpqXSkpCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBpID4gZmlyc3Q6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzMi5hcHBlbmQoIEJsb2NrKGIudG9rZW5zW2ZpcnN0OmldKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3MyLmFwcGVuZChCbG9jayhiLnRva2Vuc1tmaXJzdDppXSkpCiAgICAgICAgICAgICAgICAgICAgICAgICBza2lwVG9rZW5zID0gVHJ1ZQotICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3QgICAgICA9IG4KKyAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0ID0gbgogCi0gICAgICAgICAgICAgICAgICAgIGkgPSBpKzEKKyAgICAgICAgICAgICAgICAgICAgaSArPSAxCiAKICAgICAgICAgICAgICAgICBpZiBpID4gZmlyc3Q6Ci0gICAgICAgICAgICAgICAgICAgICNwcmludCAiIyMjIGZpbmFsICclcyciICUgcmVwcihiLnRva2Vuc1tmaXJzdDppXSkKLSAgICAgICAgICAgICAgICAgICAgYmxvY2tzMi5hcHBlbmQoIEJsb2NrKGIudG9rZW5zW2ZpcnN0OmldKSApCisgICAgICAgICAgICAgICAgICAgICMgcHJpbnQgIiMjIyBmaW5hbCAnJXMnIiAlIHJlcHIoYi50b2tlbnNbZmlyc3Q6aV0pCisgICAgICAgICAgICAgICAgICAgIGJsb2NrczIuYXBwZW5kKEJsb2NrKGIudG9rZW5zW2ZpcnN0OmldKSkKIAogICAgICAgICBzZWxmLmJsb2NrcyA9IGJsb2NrczIKIAotICAgIGRlZiBpbnNlcnREaXNjbGFpbWVyKHNlbGYsZGlzY2xhaW1lcj0iLyogYXV0by1nZW5lcmF0ZWQgZmlsZSwgRE8gTk9UIEVESVQgKi8iKToKLSAgICAgICAgIiIiaW5zZXJ0IHlvdXIgc3RhbmRhcmQgaXNzdWUgZGlzY2xhaW1lciB0aGF0IHRoaXMgaXMgYW4KLSAgICAgICAgICAgYXV0by1nZW5lcmF0ZWQgZmlsZSwgZXRjLi4iIiIKLSAgICAgICAgdG9rZW5zID0gQ3BwTGluZVRva2VuaXplciggZGlzY2xhaW1lciApLnRvVG9rZW5MaXN0KCkKLSAgICAgICAgdG9rZW5zID0gdG9rZW5zWzotMV0gICMgcmVtb3ZlIHRyYWlsaW5nIHRva0xOCi0gICAgICAgIHNlbGYuYmxvY2tzID0gWyBCbG9jayh0b2tlbnMpIF0gKyBzZWxmLmJsb2NrcwotCi0gICAgZGVmIHJlcGxhY2VUb2tlbnMoc2VsZixyZXBsYWNlbWVudHMpOgotICAgICAgICAiIiJyZXBsYWNlIHRva2VucyBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGRpY3QiIiIKKyAgICBkZWYgcmVwbGFjZVRva2VucyhzZWxmLCByZXBsYWNlbWVudHMpOgorICAgICAgICAiIiJSZXBsYWNlIHRva2VucyBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGRpY3QuIiIiCiAgICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgogICAgICAgICAgICAgbWFkZV9jaGFuZ2UgPSBGYWxzZQotICAgICAgICAgICAgaWYgYi5pc0luY2x1ZGUoKSA9PSBOb25lOgorICAgICAgICAgICAgaWYgYi5pc0luY2x1ZGUoKSBpcyBOb25lOgogICAgICAgICAgICAgICAgIGZvciB0b2sgaW4gYi50b2tlbnM6Ci0gICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tJREVOVDoKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRvay52YWx1ZSBpbiByZXBsYWNlbWVudHM6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rLnZhbHVlID0gcmVwbGFjZW1lbnRzW3Rvay52YWx1ZV0KKyAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmtpbmQgPT0gVG9rZW5LaW5kLklERU5USUZJRVI6CisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0b2suaWQgaW4gcmVwbGFjZW1lbnRzOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvay5pZCA9IHJlcGxhY2VtZW50c1t0b2suaWRdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFkZV9jaGFuZ2UgPSBUcnVlCiAKKyAgICAgICAgICAgICAgICBpZiBiLmlzRGVmaW5lKCkgYW5kIGIuZGVmaW5lX2lkIGluIHJlcGxhY2VtZW50czoKKyAgICAgICAgICAgICAgICAgICAgYi5kZWZpbmVfaWQgPSByZXBsYWNlbWVudHNbYi5kZWZpbmVfaWRdCisgICAgICAgICAgICAgICAgICAgIG1hZGVfY2hhbmdlID0gVHJ1ZQorCiAgICAgICAgICAgICBpZiBtYWRlX2NoYW5nZSBhbmQgYi5pc0lmKCk6CiAgICAgICAgICAgICAgICAgIyBLZWVwICdleHByJyBpbiBzeW5jIHdpdGggJ3Rva2VucycuCiAgICAgICAgICAgICAgICAgYi5leHByID0gQ3BwRXhwcihiLnRva2VucykKIAotY2xhc3MgQmxvY2tQYXJzZXI6Ci0gICAgIiIiYSBjbGFzcyB1c2VkIHRvIGNvbnZlcnQgYW4gaW5wdXQgc291cmNlIGZpbGUgaW50byBhIEJsb2NrTGlzdCBvYmplY3QiIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLHRva3plcj1Ob25lKToKLSAgICAgICAgIiIiaW5pdGlhbGl6ZSBhIGJsb2NrIHBhcnNlci4gdGhlIGlucHV0IHNvdXJjZSBpcyBwcm92aWRlZCB0aHJvdWdoIGEgVG9rZW5pemVyCi0gICAgICAgICAgIG9iamVjdCIiIgotICAgICAgICBzZWxmLnJlc2V0KHRva3plcikKK2RlZiBzdHJpcF9zcGFjZShzKToKKyAgICAiIiJTdHJpcCBvdXQgcmVkdW5kYW50IHNwYWNlIGluIGEgZ2l2ZW4gc3RyaW5nLiIiIgogCi0gICAgZGVmIHJlc2V0KHNlbGYsdG9remVyKToKLSAgICAgICAgc2VsZi5zdGF0ZSAgPSAxCi0gICAgICAgIHNlbGYudG9remVyID0gdG9remVyCisgICAgIyBOT1RFOiBJdCBvdWdodCB0byBiZSBtb3JlIGNsZXZlciB0byBub3QgZGVzdHJveSBzcGFjZXMgaW4gc3RyaW5nIHRva2Vucy4KKyAgICByZXBsYWNlbWVudHMgPSB7JyAuICc6ICcuJywKKyAgICAgICAgICAgICAgICAgICAgJyBbJzogJ1snLAorICAgICAgICAgICAgICAgICAgICAnWyAnOiAnWycsCisgICAgICAgICAgICAgICAgICAgICcgXSc6ICddJywKKyAgICAgICAgICAgICAgICAgICAgJyggJzogJygnLAorICAgICAgICAgICAgICAgICAgICAnICknOiAnKScsCisgICAgICAgICAgICAgICAgICAgICcgLCc6ICcsJywKKyAgICAgICAgICAgICAgICAgICAgJyMgJzogJyMnLAorICAgICAgICAgICAgICAgICAgICAnIDsnOiAnOycsCisgICAgICAgICAgICAgICAgICAgICd+ICc6ICd+JywKKyAgICAgICAgICAgICAgICAgICAgJyAtPiAnOiAnLT4nfQorICAgIHJlc3VsdCA9IHMKKyAgICBmb3IgciBpbiByZXBsYWNlbWVudHM6CisgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKHIsIHJlcGxhY2VtZW50c1tyXSkKIAotICAgIGRlZiBnZXRCbG9ja3Moc2VsZix0b2t6ZXI9Tm9uZSk6Ci0gICAgICAgICIiInRva2VuaXplIGFuZCBwYXJzZSB0aGUgaW5wdXQgc291cmNlLCByZXR1cm4gYSBCbG9ja0xpc3Qgb2JqZWN0Ci0gICAgICAgICAgIE5PVEU6IGVtcHR5IGFuZCBsaW5lLW51bWJlcmluZyBkaXJlY3RpdmVzIGFyZSBpZ25vcmVkIGFuZCByZW1vdmVkCi0gICAgICAgICAgICAgICAgIGZyb20gdGhlIHJlc3VsdC4gYXMgYSBjb25zZXF1ZW5jZSwgaXQgaXMgcG9zc2libGUgdG8gaGF2ZQotICAgICAgICAgICAgICAgICB0d28gc3VjY2Vzc2l2ZSB0ZXh0IGJsb2NrcyBpbiB0aGUgcmVzdWx0IiIiCi0gICAgICAgICMgc3RhdGUgMCA9PiBpbiBzb3VyY2UgY29kZQotICAgICAgICAjIHN0YXRlIDEgPT4gaW4gc291cmNlIGNvZGUsIGFmdGVyIGEgTE4KLSAgICAgICAgIyBzdGF0ZSAyID0+IGluIHNvdXJjZSBjb2RlLCBhZnRlciBMTiB0aGVuIHNvbWUgc3BhY2UKLSAgICAgICAgc3RhdGUgICA9IDEKLSAgICAgICAgbGFzdExOICA9IDAKLSAgICAgICAgY3VycmVudCA9IFtdCi0gICAgICAgIGJsb2NrcyAgPSBbXQorICAgICMgUmVtb3ZlIHRoZSBzcGFjZSBiZXR3ZWVuIGZ1bmN0aW9uIG5hbWUgYW5kIHRoZSBwYXJlbnRoZXNpcy4KKyAgICByZXN1bHQgPSByZS5zdWIocicoXHcrKSBcKCcsIHInXDEoJywgcmVzdWx0KQorICAgIHJldHVybiByZXN1bHQKIAotICAgICAgICBpZiB0b2t6ZXIgPT0gTm9uZToKLSAgICAgICAgICAgIHRva3plciA9IHNlbGYudG9remVyCiAKLSAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgIHRvayA9IHRva3plci5nZXRUb2tlbigpCi0gICAgICAgICAgICBpZiB0b2suaWQgPT0gdG9rRU9GOgotICAgICAgICAgICAgICAgIGJyZWFrCitjbGFzcyBCbG9ja1BhcnNlcihvYmplY3QpOgorICAgICIiIkEgY2xhc3MgdGhhdCBjb252ZXJ0cyBhbiBpbnB1dCBzb3VyY2UgZmlsZSBpbnRvIGEgQmxvY2tMaXN0IG9iamVjdC4iIiIKIAotICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0xOOgotICAgICAgICAgICAgICAgIHN0YXRlICAgID0gMQotICAgICAgICAgICAgICAgIGN1cnJlbnQuYXBwZW5kKHRvaykKLSAgICAgICAgICAgICAgICBsYXN0TE4gICA9IGxlbihjdXJyZW50KQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0b2t6ZXI9Tm9uZSk6CisgICAgICAgICIiIkluaXRpYWxpemUgYSBibG9jayBwYXJzZXIuCiAKLSAgICAgICAgICAgIGVsaWYgdG9rLmlkID09IHRva1NQQUNFOgotICAgICAgICAgICAgICAgIGlmIHN0YXRlID09IDE6Ci0gICAgICAgICAgICAgICAgICAgIHN0YXRlID0gMgotICAgICAgICAgICAgICAgIGN1cnJlbnQuYXBwZW5kKHRvaykKKyAgICAgICAgVGhlIGlucHV0IHNvdXJjZSBpcyBwcm92aWRlZCB0aHJvdWdoIGEgVG9rZW5pemVyIG9iamVjdC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX3Rva3plciA9IHRva3plcgorICAgICAgICBzZWxmLl9wYXJzZWQgPSBGYWxzZQogCi0gICAgICAgICAgICBlbGlmIHRvay5pZCA9PSAiIyI6Ci0gICAgICAgICAgICAgICAgaWYgc3RhdGUgPiAwOgotICAgICAgICAgICAgICAgICAgICAjIHRoaXMgaXMgdGhlIHN0YXJ0IG9mIGEgZGlyZWN0aXZlCisgICAgQHByb3BlcnR5CisgICAgZGVmIHBhcnNlZChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX3BhcnNlZAogCi0gICAgICAgICAgICAgICAgICAgIGlmIGxhc3RMTiA+IDA6Ci0gICAgICAgICAgICAgICAgICAgICAgICAjIHJlY29yZCBwcmV2aW91cyB0b2tlbnMgYXMgdGV4dCBibG9jawotICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2sgICA9IEJsb2NrKGN1cnJlbnRbOmxhc3RMTl0pCi0gICAgICAgICAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKGJsb2NrKQotICAgICAgICAgICAgICAgICAgICAgICAgbGFzdExOICA9IDAKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIF9zaG9ydF9leHRlbnQoZXh0ZW50KToKKyAgICAgICAgcmV0dXJuICclZDolZCAtICVkOiVkJyAlIChleHRlbnQuc3RhcnQubGluZSwgZXh0ZW50LnN0YXJ0LmNvbHVtbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnQuZW5kLmxpbmUsIGV4dGVudC5lbmQuY29sdW1uKQogCi0gICAgICAgICAgICAgICAgICAgIGN1cnJlbnQgPSBbXQorICAgIGRlZiBnZXRCbG9ja3Moc2VsZiwgdG9remVyPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gYWxsIHRoZSBibG9ja3MgcGFyc2VkLiIiIgogCi0gICAgICAgICAgICAgICAgICAgICMgc2tpcCBzcGFjZXMgYWZ0ZXIgdGhlICMKLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICAgICAgICAgIHRvayA9IHRva3plci5nZXRUb2tlbigpCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiB0b2suaWQgIT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgZGVmIGNvbnN1bWVfZXh0ZW50KGksIHRva2VucywgZXh0ZW50PU5vbmUsIGRldGVjdF9jaGFuZ2U9RmFsc2UpOgorICAgICAgICAgICAgIiIiUmV0dXJuIHRva2VucyB0aGF0IGJlbG9uZyB0byB0aGUgZ2l2ZW4gZXh0ZW50LgogCi0gICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCAhPSB0b2tJREVOVDoKLSAgICAgICAgICAgICAgICAgICAgICAgICMgZW1wdHkgb3IgbGluZS1udW1iZXJpbmcsIGlnbm9yZSBpdAotICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmlkICE9IHRva0xOIGFuZCB0b2suaWQgIT0gdG9rRU9GOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvayA9IHRva3plci5nZXRUb2tlbigpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tMTiBvciB0b2suaWQgPT0gdG9rRU9GOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBJdCBwYXJzZXMgYWxsIHRoZSB0b2tlbnMgdGhhdCBmb2xsb3cgdG9rZW5zW2ldLCB1bnRpbCBnZXR0aW5nIG91dAorICAgICAgICAgICAgb2YgdGhlIGV4dGVudC4gV2hlbiBkZXRlY3RfY2hhbmdlIGlzIFRydWUsIGl0IG1heSB0ZXJtaW5hdGUgZWFybHkKKyAgICAgICAgICAgIHdoZW4gZGV0ZWN0aW5nIHByZXByb2Nlc3NpbmcgZGlyZWN0aXZlcyBpbnNpZGUgdGhlIGV4dGVudC4KKyAgICAgICAgICAgICIiIgogCi0gICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZSA9IHRvay52YWx1ZQotICAgICAgICAgICAgICAgICAgICBsaW5lbm8gICAgPSB0b2subGluZW5vCisgICAgICAgICAgICByZXN1bHQgPSBbXQorICAgICAgICAgICAgaWYgZXh0ZW50IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgZXh0ZW50ID0gdG9rZW5zW2ldLmN1cnNvci5leHRlbnQKIAotICAgICAgICAgICAgICAgICAgICAjIHNraXAgc3BhY2VzCi0gICAgICAgICAgICAgICAgICAgIHRvayA9IHRva3plci5nZXRUb2tlbigpCi0gICAgICAgICAgICAgICAgICAgIHdoaWxlIHRvay5pZCA9PSB0b2tTUEFDRToKLSAgICAgICAgICAgICAgICAgICAgICAgIHRvayA9IHRva3plci5nZXRUb2tlbigpCisgICAgICAgICAgICB3aGlsZSBpIDwgbGVuKHRva2VucykgYW5kIHRva2Vuc1tpXS5sb2NhdGlvbiBpbiBleHRlbnQ6CisgICAgICAgICAgICAgICAgdCA9IHRva2Vuc1tpXQorICAgICAgICAgICAgICAgIGlmIGRlYnVnQmxvY2tQYXJzZXI6CisgICAgICAgICAgICAgICAgICAgIHByaW50ICcgJyAqIDIsIHQuaWQsIHQua2luZCwgdC5jdXJzb3Iua2luZAorICAgICAgICAgICAgICAgIGlmIChkZXRlY3RfY2hhbmdlIGFuZCB0LmN1cnNvci5leHRlbnQgIT0gZXh0ZW50IGFuZAorICAgICAgICAgICAgICAgICAgICB0LmN1cnNvci5raW5kID09IEN1cnNvcktpbmQuUFJFUFJPQ0VTU0lOR19ESVJFQ1RJVkUpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQodCkKKyAgICAgICAgICAgICAgICBpICs9IDEKKyAgICAgICAgICAgIHJldHVybiAoaSwgcmVzdWx0KQogCi0gICAgICAgICAgICAgICAgICAgICMgdGhlbiByZWNvcmQgdG9rZW5zIHVudGlsIExOCi0gICAgICAgICAgICAgICAgICAgIGRpcnRva2VucyA9IFtdCi0gICAgICAgICAgICAgICAgICAgIHdoaWxlIHRvay5pZCAhPSB0b2tMTiBhbmQgdG9rLmlkICE9IHRva0VPRjoKLSAgICAgICAgICAgICAgICAgICAgICAgIGRpcnRva2Vucy5hcHBlbmQodG9rKQotICAgICAgICAgICAgICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKKyAgICAgICAgZGVmIGNvbnN1bWVfbGluZShpLCB0b2tlbnMpOgorICAgICAgICAgICAgIiIiUmV0dXJuIHRva2VucyB0aGF0IGZvbGxvdyB0b2tlbnNbaV0gaW4gdGhlIHNhbWUgbGluZS4iIiIKKyAgICAgICAgICAgIHJlc3VsdCA9IFtdCisgICAgICAgICAgICBsaW5lID0gdG9rZW5zW2ldLmxvY2F0aW9uLmxpbmUKKyAgICAgICAgICAgIHdoaWxlIGkgPCBsZW4odG9rZW5zKSBhbmQgdG9rZW5zW2ldLmxvY2F0aW9uLmxpbmUgPT0gbGluZToKKyAgICAgICAgICAgICAgICBpZiB0b2tlbnNbaV0uY3Vyc29yLmtpbmQgPT0gQ3Vyc29yS2luZC5QUkVQUk9DRVNTSU5HX0RJUkVDVElWRToKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHRva2Vuc1tpXSkKKyAgICAgICAgICAgICAgICBpICs9IDEKKyAgICAgICAgICAgIHJldHVybiAoaSwgcmVzdWx0KQogCi0gICAgICAgICAgICAgICAgICAgIGJsb2NrID0gQmxvY2soZGlydG9rZW5zLGRpcmVjdGl2ZSxsaW5lbm8pCi0gICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoYmxvY2spCi0gICAgICAgICAgICAgICAgICAgIHN0YXRlICAgPSAxCisgICAgICAgIGlmIHRva3plciBpcyBOb25lOgorICAgICAgICAgICAgdG9remVyID0gc2VsZi5fdG9remVyCisgICAgICAgIHRva2VucyA9IHRva3plci50b2tlbnMKKworICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICBidWYgPSBbXQorICAgICAgICBpID0gMAorCisgICAgICAgIHdoaWxlIGkgPCBsZW4odG9rZW5zKToKKyAgICAgICAgICAgIHQgPSB0b2tlbnNbaV0KKyAgICAgICAgICAgIGN1cnNvciA9IHQuY3Vyc29yCisKKyAgICAgICAgICAgIGlmIGRlYnVnQmxvY2tQYXJzZXI6CisgICAgICAgICAgICAgICAgcHJpbnQgKCIlZDogUHJvY2Vzc2luZyBbJXNdLCBraW5kPVslc10sIGN1cnNvcj1bJXNdLCAiCisgICAgICAgICAgICAgICAgICAgICAgICJleHRlbnQ9WyVzXSIgJSAodC5sb2NhdGlvbi5saW5lLCB0LnNwZWxsaW5nLCB0LmtpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yLmtpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fc2hvcnRfZXh0ZW50KGN1cnNvci5leHRlbnQpKSkKKworICAgICAgICAgICAgaWYgY3Vyc29yLmtpbmQgPT0gQ3Vyc29yS2luZC5QUkVQUk9DRVNTSU5HX0RJUkVDVElWRToKKyAgICAgICAgICAgICAgICBpZiBidWY6CisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2soYnVmKSkKKyAgICAgICAgICAgICAgICAgICAgYnVmID0gW10KKworICAgICAgICAgICAgICAgIGogPSBpCisgICAgICAgICAgICAgICAgaWYgaiArIDEgPj0gbGVuKHRva2Vucyk6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4oIiMjIyBCQUQgVE9LRU4gYXQgJXMiICUgKHQubG9jYXRpb24pKQorICAgICAgICAgICAgICAgIGRpcmVjdGl2ZSA9IHRva2Vuc1tqKzFdLmlkCisKKyAgICAgICAgICAgICAgICBpZiBkaXJlY3RpdmUgPT0gJ2RlZmluZSc6CisgICAgICAgICAgICAgICAgICAgIGlmIGkrMiA+PSBsZW4odG9rZW5zKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4oIiMjIyBCQUQgVE9LRU4gYXQgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRva2Vuc1tpXS5sb2NhdGlvbikpCisKKyAgICAgICAgICAgICAgICAgICAgIyBTa2lwICcjJyBhbmQgJ2RlZmluZScuCisgICAgICAgICAgICAgICAgICAgIGV4dGVudCA9IHRva2Vuc1tpXS5jdXJzb3IuZXh0ZW50CisgICAgICAgICAgICAgICAgICAgIGkgKz0gMgorICAgICAgICAgICAgICAgICAgICBpZCA9ICcnCisgICAgICAgICAgICAgICAgICAgICMgV2UgbmVlZCB0byBzZXBhcmF0ZSB0aGUgaWQgZnJvbSB0aGUgcmVtYWluaW5nIG9mCisgICAgICAgICAgICAgICAgICAgICMgdGhlIGxpbmUsIGVzcGVjaWFsbHkgZm9yIHRoZSBmdW5jdGlvbi1saWtlIG1hY3JvLgorICAgICAgICAgICAgICAgICAgICBpZiAoaSArIDEgPCBsZW4odG9rZW5zKSBhbmQgdG9rZW5zW2krMV0uaWQgPT0gJygnIGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgKHRva2Vuc1tpXS5sb2NhdGlvbi5jb2x1bW4gKyBsZW4odG9rZW5zW2ldLnNwZWxsaW5nKSA9PQorICAgICAgICAgICAgICAgICAgICAgICAgIHRva2Vuc1tpKzFdLmxvY2F0aW9uLmNvbHVtbikpOgorICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgaSA8IGxlbih0b2tlbnMpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkICs9IHRva2Vuc1tpXS5pZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRva2Vuc1tpXS5zcGVsbGluZyA9PSAnKSc6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gMQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgaWQgKz0gdG9rZW5zW2ldLmlkCisgICAgICAgICAgICAgICAgICAgICAgICAjIEFkdmFuY2UgdG8gdGhlIG5leHQgdG9rZW4gdGhhdCBmb2xsb3dzIHRoZSBtYWNybyBpZAorICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxCisKKyAgICAgICAgICAgICAgICAgICAgKGksIHJldCkgPSBjb25zdW1lX2V4dGVudChpLCB0b2tlbnMsIGV4dGVudD1leHRlbnQpCisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2socmV0LCBkaXJlY3RpdmU9ZGlyZWN0aXZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVubz10LmxvY2F0aW9uLmxpbmUsIGlkZW50aWZpZXI9aWQpKQorCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgKGksIHJldCkgPSBjb25zdW1lX2V4dGVudChpLCB0b2tlbnMpCisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2socmV0WzI6XSwgZGlyZWN0aXZlPWRpcmVjdGl2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lbm89dC5sb2NhdGlvbi5saW5lKSkKKworICAgICAgICAgICAgZWxpZiBjdXJzb3Iua2luZCA9PSBDdXJzb3JLaW5kLklOQ0xVU0lPTl9ESVJFQ1RJVkU6CisgICAgICAgICAgICAgICAgaWYgYnVmOgorICAgICAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKEJsb2NrKGJ1ZikpCisgICAgICAgICAgICAgICAgICAgIGJ1ZiA9IFtdCisgICAgICAgICAgICAgICAgZGlyZWN0aXZlID0gdG9rZW5zW2krMV0uaWQKKyAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfZXh0ZW50KGksIHRva2VucykKKworICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2socmV0WzI6XSwgZGlyZWN0aXZlPWRpcmVjdGl2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVubz10LmxvY2F0aW9uLmxpbmUpKQorCisgICAgICAgICAgICBlbGlmIGN1cnNvci5raW5kID09IEN1cnNvcktpbmQuVkFSX0RFQ0w6CisgICAgICAgICAgICAgICAgaWYgYnVmOgorICAgICAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKEJsb2NrKGJ1ZikpCisgICAgICAgICAgICAgICAgICAgIGJ1ZiA9IFtdCisKKyAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfZXh0ZW50KGksIHRva2VucywgZGV0ZWN0X2NoYW5nZT1UcnVlKQorICAgICAgICAgICAgICAgIGJ1ZiArPSByZXQKKworICAgICAgICAgICAgZWxpZiBjdXJzb3Iua2luZCA9PSBDdXJzb3JLaW5kLkZVTkNUSU9OX0RFQ0w6CisgICAgICAgICAgICAgICAgaWYgYnVmOgorICAgICAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKEJsb2NrKGJ1ZikpCisgICAgICAgICAgICAgICAgICAgIGJ1ZiA9IFtdCisKKyAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfZXh0ZW50KGksIHRva2VucywgZGV0ZWN0X2NoYW5nZT1UcnVlKQorICAgICAgICAgICAgICAgIGJ1ZiArPSByZXQKIAogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzdGF0ZSA9IDAKLSAgICAgICAgICAgICAgICBjdXJyZW50LmFwcGVuZCh0b2spCisgICAgICAgICAgICAgICAgKGksIHJldCkgPSBjb25zdW1lX2xpbmUoaSwgdG9rZW5zKQorICAgICAgICAgICAgICAgIGJ1ZiArPSByZXQKIAotICAgICAgICBpZiBsZW4oY3VycmVudCkgPiAwOgotICAgICAgICAgICAgYmxvY2sgPSBCbG9jayhjdXJyZW50KQotICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChibG9jaykKKyAgICAgICAgaWYgYnVmOgorICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChCbG9jayhidWYpKQorCisgICAgICAgICMgX3BhcnNlZD1UcnVlIGluZGljYXRlcyBhIHN1Y2Nlc3NmdWwgcGFyc2luZywgYWx0aG91Z2ggbWF5IHJlc3VsdCBhbgorICAgICAgICAjIGVtcHR5IEJsb2NrTGlzdC4KKyAgICAgICAgc2VsZi5fcGFyc2VkID0gVHJ1ZQogCiAgICAgICAgIHJldHVybiBCbG9ja0xpc3QoYmxvY2tzKQogCi0gICAgZGVmIHBhcnNlKHNlbGYsdG9remVyKToKLSAgICAgICAgcmV0dXJuIHNlbGYuZ2V0QmxvY2tzKCB0b2t6ZXIgKQorICAgIGRlZiBwYXJzZShzZWxmLCB0b2t6ZXIpOgorICAgICAgICByZXR1cm4gc2VsZi5nZXRCbG9ja3ModG9remVyKQogCi0gICAgZGVmIHBhcnNlTGluZXMoc2VsZixsaW5lcyk6Ci0gICAgICAgICIiInBhcnNlIGEgbGlzdCBvZiB0ZXh0IGxpbmVzIGludG8gYSBCbG9ja0xpc3Qgb2JqZWN0IiIiCi0gICAgICAgIHJldHVybiBzZWxmLmdldEJsb2NrcyggQ3BwTGluZXNUb2tlbml6ZXIobGluZXMpICkKLQotICAgIGRlZiBwYXJzZUZpbGUoc2VsZixwYXRoKToKLSAgICAgICAgIiIicGFyc2UgYSBmaWxlIGludG8gYSBCbG9ja0xpc3Qgb2JqZWN0IiIiCi0gICAgICAgIGZpbGUgPSBvcGVuKHBhdGgsICJydCIpCi0gICAgICAgIHJlc3VsdCA9IHNlbGYuZ2V0QmxvY2tzKCBDcHBGaWxlVG9rZW5pemVyKGZpbGUpICkKLSAgICAgICAgZmlsZS5jbG9zZSgpCi0gICAgICAgIHJldHVybiByZXN1bHQKKyAgICBkZWYgcGFyc2VGaWxlKHNlbGYsIHBhdGgpOgorICAgICAgICByZXR1cm4gc2VsZi5nZXRCbG9ja3MoQ3BwRmlsZVRva2VuaXplcihwYXRoKSkKIAogCi1kZWYgdGVzdF9ibG9ja19wYXJzaW5nKGxpbmVzLGV4cGVjdGVkKToKLSAgICBibG9ja3MgPSBCbG9ja1BhcnNlcigpLnBhcnNlKCBDcHBMaW5lc1Rva2VuaXplcihsaW5lcykgKQorZGVmIHRlc3RfYmxvY2tfcGFyc2luZyhsaW5lcywgZXhwZWN0ZWQpOgorICAgICIiIkhlbHBlciBtZXRob2QgdG8gdGVzdCB0aGUgY29ycmVjdG5lc3Mgb2YgQmxvY2tQYXJzZXIucGFyc2UuIiIiCisgICAgYmxvY2tzID0gQmxvY2tQYXJzZXIoKS5wYXJzZShDcHBTdHJpbmdUb2tlbml6ZXIoJ1xuJy5qb2luKGxpbmVzKSkpCiAgICAgaWYgbGVuKGJsb2NrcykgIT0gbGVuKGV4cGVjdGVkKToKLSAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbiwgInBhcnNlci5idWlsZEJsb2NrcyByZXR1cm5lZCAnJXMnIGV4cGVjdGluZyAnJXMnIiBcCi0gICAgICAgICAgICAgICUgKHN0cihibG9ja3MpLCByZXByKGV4cGVjdGVkKSkKKyAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbigiQmxvY2tQYXJzZXIucGFyc2UoKSByZXR1cm5lZCAnJXMnIGV4cGVjdGluZyAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiclcyciICUgKHN0cihibG9ja3MpLCByZXByKGV4cGVjdGVkKSkpCiAgICAgZm9yIG4gaW4gcmFuZ2UobGVuKGJsb2NrcykpOgogICAgICAgICBpZiBzdHIoYmxvY2tzW25dKSAhPSBleHBlY3RlZFtuXToKLSAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4sICJwYXJzZXIuYnVpbGRCbG9ja3MoKVslZF0gaXMgJyVzJywgZXhwZWN0aW5nICclcyciIFwKLSAgICAgICAgICAgICAgICAgICUgKG4sIHN0cihibG9ja3Nbbl0pLCBleHBlY3RlZFtuXSkKLSAgICAjZm9yIGJsb2NrIGluIGJsb2NrczoKLSAgICAjICAgIHByaW50IGJsb2NrCisgICAgICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuKCJCbG9ja1BhcnNlci5wYXJzZSgpWyVkXSBpcyAnJXMnLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHBlY3RpbmcgJyVzJyIgJSAobiwgc3RyKGJsb2Nrc1tuXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRbbl0pKQorCiAKIGRlZiB0ZXN0X0Jsb2NrUGFyc2VyKCk6Ci0gICAgdGVzdF9ibG9ja19wYXJzaW5nKFsiI2Vycm9yIGhlbGxvIl0sWyIjZXJyb3IgaGVsbG8iXSkKLSAgICB0ZXN0X2Jsb2NrX3BhcnNpbmcoWyAiZm9vIiwgIiIsICJiYXIiIF0sIFsgImZvb1xuXG5iYXJcbiIgXSkKLSAgICB0ZXN0X2Jsb2NrX3BhcnNpbmcoWyAiZm9vIiwgIiAgIyAgIiwgImJhciIgXSwgWyAiZm9vXG4iLCJiYXJcbiIgXSkKLSAgICB0ZXN0X2Jsb2NrX3BhcnNpbmcoXAotICAgICAgICBbICJmb28iLCAiICAgIyAgIiwgIiAgIyAgLyogYWhhaCAqLyBpZiBkZWZpbmVkKF9fS0VSTkVMX18pICIsICJiYXIiLCAiI2VuZGlmIiBdLAotICAgICAgICBbICJmb29cbiIsICIjaWZkZWYgX19LRVJORUxfXyIsICJiYXJcbiIsICIjZW5kaWYiIF0gKQorICAgIHRlc3RfYmxvY2tfcGFyc2luZyhbIiNlcnJvciBoZWxsbyJdLCBbIiNlcnJvciBoZWxsbyJdKQorICAgIHRlc3RfYmxvY2tfcGFyc2luZyhbImZvbyIsICIiLCAiYmFyIl0sIFsiZm9vIGJhciJdKQorCisgICAgIyBXZSBjdXJyZW50bHkgY2Fubm90IGhhbmRsZSB0aGUgZm9sbG93aW5nIGNhc2Ugd2l0aCBsaWJjbGFuZyBwcm9wZXJseS4KKyAgICAjIEZvcnR1bmF0ZWx5IGl0IGRvZXNuJ3QgYXBwZWFyIGluIGN1cnJlbnQgaGVhZGVycy4KKyAgICAjIHRlc3RfYmxvY2tfcGFyc2luZyhbImZvbyIsICIgICMgICIsICJiYXIiXSwgWyJmb28iLCAiYmFyIl0pCisKKyAgICB0ZXN0X2Jsb2NrX3BhcnNpbmcoWyJmb28iLAorICAgICAgICAgICAgICAgICAgICAgICAgIiAgIyAgLyogYWhhaCAqLyBpZiBkZWZpbmVkKF9fS0VSTkVMX18pIC8qIG1vcmUgKi8iLAorICAgICAgICAgICAgICAgICAgICAgICAgImJhciIsICIjZW5kaWYiXSwKKyAgICAgICAgICAgICAgICAgICAgICAgWyJmb28iLCAiI2lmZGVmIF9fS0VSTkVMX18iLCAiYmFyIiwgIiNlbmRpZiJdKQogCiAKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICBCIEwgTyBDIEsgICBMIEkgUyBUICAgTyBQIFQgSSBNIEkgWiBBIFQgSSBPIE4gICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICBCIEwgTyBDIEsgICBMIEkgUyBUICAgTyBQIFQgSSBNIEkgWiBBIFQgSSBPIE4gICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKLWRlZiAgcmVtb3ZlX21hY3JvX2RlZmluZXMoIGJsb2NrcywgZXhjbHVkZWRNYWNyb3M9c2V0KCkgKToKLSAgICAiIiJyZW1vdmUgbWFjcm8gZGVmaW5pdGlvbnMgbGlrZSAjZGVmaW5lIDxtYWNyb05hbWU+ICAuLi4uIiIiCisKK2RlZiByZW1vdmVfbWFjcm9fZGVmaW5lcyhibG9ja3MsIGV4Y2x1ZGVkTWFjcm9zPU5vbmUpOgorICAgICIiIlJlbW92ZSBtYWNybyBkZWZpbml0aW9ucyBsaWtlICNkZWZpbmUgPG1hY3JvTmFtZT4gIC4uLi4iIiIKKyAgICBpZiBleGNsdWRlZE1hY3JvcyBpcyBOb25lOgorICAgICAgICBleGNsdWRlZE1hY3JvcyA9IHNldCgpCiAgICAgcmVzdWx0ID0gW10KICAgICBmb3IgYiBpbiBibG9ja3M6CiAgICAgICAgIG1hY3JvTmFtZSA9IGIuaXNEZWZpbmUoKQotICAgICAgICBpZiBtYWNyb05hbWUgPT0gTm9uZSBvciBub3QgbWFjcm9OYW1lIGluIGV4Y2x1ZGVkTWFjcm9zOgorICAgICAgICBpZiBtYWNyb05hbWUgaXMgTm9uZSBvciBtYWNyb05hbWUgbm90IGluIGV4Y2x1ZGVkTWFjcm9zOgogICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChiKQogCiAgICAgcmV0dXJuIHJlc3VsdAogCi1kZWYgIGZpbmRfbWF0Y2hpbmdfZW5kaWYoIGJsb2NrcywgaSApOgotICAgIG4gICAgID0gbGVuKGJsb2NrcykKKworZGVmIGZpbmRfbWF0Y2hpbmdfZW5kaWYoYmxvY2tzLCBpKToKKyAgICAiIiJUcmF2ZXJzZSB0aGUgYmxvY2tzIHRvIGZpbmQgb3V0IHRoZSBtYXRjaGluZyAjZW5kaWYuIiIiCisgICAgbiA9IGxlbihibG9ja3MpCiAgICAgZGVwdGggPSAxCiAgICAgd2hpbGUgaSA8IG46CiAgICAgICAgIGlmIGJsb2Nrc1tpXS5pc0RpcmVjdGl2ZSgpOgotICAgICAgICAgICAgZGlyID0gYmxvY2tzW2ldLmRpcmVjdGl2ZQotICAgICAgICAgICAgaWYgZGlyIGluIFsgImlmIiwgImlmbmRlZiIsICJpZmRlZiIgXToKKyAgICAgICAgICAgIGRpcl8gPSBibG9ja3NbaV0uZGlyZWN0aXZlCisgICAgICAgICAgICBpZiBkaXJfIGluIFsiaWYiLCAiaWZuZGVmIiwgImlmZGVmIl06CiAgICAgICAgICAgICAgICAgZGVwdGggKz0gMQotICAgICAgICAgICAgZWxpZiBkZXB0aCA9PSAxIGFuZCBkaXIgaW4gWyAiZWxzZSIsICJlbGlmIiBdOgorICAgICAgICAgICAgZWxpZiBkZXB0aCA9PSAxIGFuZCBkaXJfIGluIFsiZWxzZSIsICJlbGlmIl06CiAgICAgICAgICAgICAgICAgcmV0dXJuIGkKLSAgICAgICAgICAgIGVsaWYgZGlyID09ICJlbmRpZiI6CisgICAgICAgICAgICBlbGlmIGRpcl8gPT0gImVuZGlmIjoKICAgICAgICAgICAgICAgICBkZXB0aCAtPSAxCiAgICAgICAgICAgICAgICAgaWYgZGVwdGggPT0gMDoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgaSArPSAxCiAgICAgcmV0dXJuIGkKIAotZGVmICBvcHRpbWl6ZV9pZjAxKCBibG9ja3MgKToKLSAgICAiIiJyZW1vdmUgdGhlIGNvZGUgYmV0d2VlbiAjaWYgMCAuLiAjZW5kaWYgaW4gYSBsaXN0IG9mIENwcEJsb2NrcyIiIgorCitkZWYgb3B0aW1pemVfaWYwMShibG9ja3MpOgorICAgICIiIlJlbW92ZSB0aGUgY29kZSBiZXR3ZWVuICNpZiAwIC4uICNlbmRpZiBpbiBhIGxpc3Qgb2YgQ3BwQmxvY2tzLiIiIgogICAgIGkgPSAwCiAgICAgbiA9IGxlbihibG9ja3MpCiAgICAgcmVzdWx0ID0gW10KQEAgLTE3MTEsNjkgKzE2NzYsNzYgQEAKICAgICAgICAgd2hpbGUgaiA8IG4gYW5kIG5vdCBibG9ja3Nbal0uaXNJZigpOgogICAgICAgICAgICAgaiArPSAxCiAgICAgICAgIGlmIGogPiBpOgotICAgICAgICAgICAgRDIoImFwcGVuZGluZyBsaW5lcyAlZCB0byAlZCIgJSAoYmxvY2tzW2ldLmxpbmVubywgYmxvY2tzW2otMV0ubGluZW5vKSkKKyAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoImFwcGVuZGluZyBsaW5lcyAlZCB0byAlZCIsIGJsb2Nrc1tpXS5saW5lbm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2Nrc1tqLTFdLmxpbmVubykKICAgICAgICAgICAgIHJlc3VsdCArPSBibG9ja3NbaTpqXQogICAgICAgICBpZiBqID49IG46CiAgICAgICAgICAgICBicmVhawogICAgICAgICBleHByID0gYmxvY2tzW2pdLmV4cHIKLSAgICAgICAgciAgICA9IGV4cHIudG9JbnQoKQotICAgICAgICBpZiByID09IE5vbmU6CisgICAgICAgIHIgPSBleHByLnRvSW50KCkKKyAgICAgICAgaWYgciBpcyBOb25lOgogICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChibG9ja3Nbal0pCiAgICAgICAgICAgICBpID0gaiArIDEKICAgICAgICAgICAgIGNvbnRpbnVlCiAKICAgICAgICAgaWYgciA9PSAwOgogICAgICAgICAgICAgIyBpZiAwID0+IHNraXAgZXZlcnl0aGluZyB1bnRpbCB0aGUgY29ycmVzcG9uZGluZyAjZW5kaWYKLSAgICAgICAgICAgIGogPSBmaW5kX21hdGNoaW5nX2VuZGlmKCBibG9ja3MsIGorMSApCisgICAgICAgICAgICBqID0gZmluZF9tYXRjaGluZ19lbmRpZihibG9ja3MsIGogKyAxKQogICAgICAgICAgICAgaWYgaiA+PSBuOgogICAgICAgICAgICAgICAgICMgdW50ZXJtaW5hdGVkICNpZiAwLCBmaW5pc2ggaGVyZQogICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBkaXIgPSBibG9ja3Nbal0uZGlyZWN0aXZlCi0gICAgICAgICAgICBpZiBkaXIgPT0gImVuZGlmIjoKLSAgICAgICAgICAgICAgICBEMigicmVtb3ZlICdpZiAwJyAuLiAnZW5kaWYnIChsaW5lcyAlZCB0byAlZCkiICUgKGJsb2Nrc1tpXS5saW5lbm8sIGJsb2Nrc1tqXS5saW5lbm8pKQorICAgICAgICAgICAgZGlyXyA9IGJsb2Nrc1tqXS5kaXJlY3RpdmUKKyAgICAgICAgICAgIGlmIGRpcl8gPT0gImVuZGlmIjoKKyAgICAgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCJyZW1vdmUgJ2lmIDAnIC4uICdlbmRpZicgKGxpbmVzICVkIHRvICVkKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3NbaV0ubGluZW5vLCBibG9ja3Nbal0ubGluZW5vKQogICAgICAgICAgICAgICAgIGkgPSBqICsgMQotICAgICAgICAgICAgZWxpZiBkaXIgPT0gImVsc2UiOgorICAgICAgICAgICAgZWxpZiBkaXJfID09ICJlbHNlIjoKICAgICAgICAgICAgICAgICAjIGNvbnZlcnQgJ2Vsc2UnIGludG8gJ2lmIDEnCi0gICAgICAgICAgICAgICAgRDIoImNvbnZlcnQgJ2lmIDAnIC4uICdlbHNlJyBpbnRvICdpZiAxJyAobGluZXMgJWQgdG8gJWQpIiAlIChibG9ja3NbaV0ubGluZW5vLCBibG9ja3Nbai0xXS5saW5lbm8pKQorICAgICAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoImNvbnZlcnQgJ2lmIDAnIC4uICdlbHNlJyBpbnRvICdpZiAxJyAobGluZXMgJWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvICVkKSIsIGJsb2Nrc1tpXS5saW5lbm8sIGJsb2Nrc1tqLTFdLmxpbmVubykKICAgICAgICAgICAgICAgICBibG9ja3Nbal0uZGlyZWN0aXZlID0gImlmIgotICAgICAgICAgICAgICAgIGJsb2Nrc1tqXS5leHByICAgICAgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCIxIikudG9Ub2tlbkxpc3QoKSApCisgICAgICAgICAgICAgICAgYmxvY2tzW2pdLmV4cHIgPSBDcHBFeHByKENwcFN0cmluZ1Rva2VuaXplcigiMSIpLnRva2VucykKICAgICAgICAgICAgICAgICBpID0gagotICAgICAgICAgICAgZWxpZiBkaXIgPT0gImVsaWYiOgorICAgICAgICAgICAgZWxpZiBkaXJfID09ICJlbGlmIjoKICAgICAgICAgICAgICAgICAjIGNvbnZlcnQgJ2VsaWYnIGludG8gJ2lmJwotICAgICAgICAgICAgICAgIEQyKCJjb252ZXJ0ICdpZiAwJyAuLiAnZWxpZicgaW50byAnaWYnIikKKyAgICAgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCJjb252ZXJ0ICdpZiAwJyAuLiAnZWxpZicgaW50byAnaWYnIikKICAgICAgICAgICAgICAgICBibG9ja3Nbal0uZGlyZWN0aXZlID0gImlmIgogICAgICAgICAgICAgICAgIGkgPSBqCiAgICAgICAgICAgICBjb250aW51ZQogCiAgICAgICAgICMgaWYgMSA9PiBmaW5kIGNvcnJlc3BvbmRpbmcgZW5kaWYgYW5kIHJlbW92ZS90cmFuc2Zvcm0gdGhlbQotICAgICAgICBrID0gZmluZF9tYXRjaGluZ19lbmRpZiggYmxvY2tzLCBqKzEgKQorICAgICAgICBrID0gZmluZF9tYXRjaGluZ19lbmRpZihibG9ja3MsIGogKyAxKQogICAgICAgICBpZiBrID49IG46CiAgICAgICAgICAgICAjIHVudGVybWluYXRlZCAjaWYgMSwgZmluaXNoIGhlcmUKLSAgICAgICAgICAgIEQyKCJ1bnRlcm1pbmF0ZWQgJ2lmIDEnIikKKyAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoInVudGVybWluYXRlZCAnaWYgMSciKQogICAgICAgICAgICAgcmVzdWx0ICs9IGJsb2Nrc1tqKzE6a10KICAgICAgICAgICAgIGJyZWFrCiAKLSAgICAgICAgZGlyID0gYmxvY2tzW2tdLmRpcmVjdGl2ZQotICAgICAgICBpZiBkaXIgPT0gImVuZGlmIjoKLSAgICAgICAgICAgIEQyKCJjb252ZXJ0ICdpZiAxJyAuLiAnZW5kaWYnIChsaW5lcyAlZCB0byAlZCkiICAlIChibG9ja3Nbal0ubGluZW5vLCBibG9ja3Nba10ubGluZW5vKSkKKyAgICAgICAgZGlyXyA9IGJsb2Nrc1trXS5kaXJlY3RpdmUKKyAgICAgICAgaWYgZGlyXyA9PSAiZW5kaWYiOgorICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiY29udmVydCAnaWYgMScgLi4gJ2VuZGlmJyAobGluZXMgJWQgdG8gJWQpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzW2pdLmxpbmVubywgYmxvY2tzW2tdLmxpbmVubykKICAgICAgICAgICAgIHJlc3VsdCArPSBvcHRpbWl6ZV9pZjAxKGJsb2Nrc1tqKzE6a10pCi0gICAgICAgICAgICBpICAgICAgID0gaysxCi0gICAgICAgIGVsaWYgZGlyID09ICJlbHNlIjoKKyAgICAgICAgICAgIGkgPSBrICsgMQorICAgICAgICBlbGlmIGRpcl8gPT0gImVsc2UiOgogICAgICAgICAgICAgIyBjb252ZXJ0ICdlbHNlJyBpbnRvICdpZiAwJwotICAgICAgICAgICAgRDIoImNvbnZlcnQgJ2lmIDEnIC4uICdlbHNlJyAobGluZXMgJWQgdG8gJWQpIiAgJSAoYmxvY2tzW2pdLmxpbmVubywgYmxvY2tzW2tdLmxpbmVubykpCisgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCJjb252ZXJ0ICdpZiAxJyAuLiAnZWxzZScgKGxpbmVzICVkIHRvICVkKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2Nrc1tqXS5saW5lbm8sIGJsb2Nrc1trXS5saW5lbm8pCiAgICAgICAgICAgICByZXN1bHQgKz0gb3B0aW1pemVfaWYwMShibG9ja3NbaisxOmtdKQogICAgICAgICAgICAgYmxvY2tzW2tdLmRpcmVjdGl2ZSA9ICJpZiIKLSAgICAgICAgICAgIGJsb2Nrc1trXS5leHByICAgICAgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCIwIikudG9Ub2tlbkxpc3QoKSApCisgICAgICAgICAgICBibG9ja3Nba10uZXhwciA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKCIwIikudG9rZW5zKQogICAgICAgICAgICAgaSA9IGsKLSAgICAgICAgZWxpZiBkaXIgPT0gImVsaWYiOgorICAgICAgICBlbGlmIGRpcl8gPT0gImVsaWYiOgogICAgICAgICAgICAgIyBjb252ZXJ0ICdlbGlmJyBpbnRvICdpZiAwJwotICAgICAgICAgICAgRDIoImNvbnZlcnQgJ2lmIDEnIC4uICdlbGlmJyAobGluZXMgJWQgdG8gJWQpIiAlIChibG9ja3Nbal0ubGluZW5vLCBibG9ja3Nba10ubGluZW5vKSkKKyAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoImNvbnZlcnQgJ2lmIDEnIC4uICdlbGlmJyAobGluZXMgJWQgdG8gJWQpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzW2pdLmxpbmVubywgYmxvY2tzW2tdLmxpbmVubykKICAgICAgICAgICAgIHJlc3VsdCArPSBvcHRpbWl6ZV9pZjAxKGJsb2Nrc1tqKzE6a10pCi0gICAgICAgICAgICBibG9ja3Nba10uZXhwciAgICAgID0gQ3BwRXhwciggQ3BwTGluZVRva2VuaXplcigiMCIpLnRvVG9rZW5MaXN0KCkgKQorICAgICAgICAgICAgYmxvY2tzW2tdLmV4cHIgPSBDcHBFeHByKENwcFN0cmluZ1Rva2VuaXplcigiMCIpLnRva2VucykKICAgICAgICAgICAgIGkgPSBrCiAgICAgcmV0dXJuIHJlc3VsdAogCi1kZWYgIHRlc3Rfb3B0aW1pemVBbGwoKToKKworZGVmIHRlc3Rfb3B0aW1pemVBbGwoKToKICAgICB0ZXh0ID0gIiIiXAogI2lmIDEKICNkZWZpbmUgIEdPT0RfMQpAQCAtMTgxNiw1MCArMTc4OCw0MSBAQAogCiAgICAgZXhwZWN0ZWQgPSAiIiJcCiAjZGVmaW5lIEdPT0RfMQotCiAjZGVmaW5lIEdPT0RfMgotCiAjZGVmaW5lIEdPT0RfMwotCi0KICNpZiAhZGVmaW5lZChfX0dMSUJDX18pIHx8IF9fR0xJQkNfXyA8IDIKICNkZWZpbmUgWAogI2VuZGlmCi0KICNpZm5kZWYgX19TSUdSVE1BWAogI2RlZmluZSBfX1NJR1JUTUFYIDEyMwotI2VuZGlmCi0KKyNlbmRpZlwKICIiIgogCi0gICAgb3V0ID0gU3RyaW5nT3V0cHV0KCkKLSAgICBsaW5lcyA9IHN0cmluZy5zcGxpdCh0ZXh0LCAnXG4nKQotICAgIGxpc3QgPSBCbG9ja1BhcnNlcigpLnBhcnNlKCBDcHBMaW5lc1Rva2VuaXplcihsaW5lcykgKQotICAgICNEX3NldGxldmVsKDIpCi0gICAgbGlzdC5yZXBsYWNlVG9rZW5zKCBrZXJuZWxfdG9rZW5fcmVwbGFjZW1lbnRzICkKLSAgICBsaXN0Lm9wdGltaXplQWxsKCB7Il9fS0VSTkVMX18iOmtDcHBVbmRlZmluZWRNYWNyb30gKQotICAgIGxpc3Qud3JpdGUob3V0KQorICAgIG91dCA9IHV0aWxzLlN0cmluZ091dHB1dCgpCisgICAgYmxvY2tzID0gQmxvY2tQYXJzZXIoKS5wYXJzZShDcHBTdHJpbmdUb2tlbml6ZXIodGV4dCkpCisgICAgYmxvY2tzLnJlcGxhY2VUb2tlbnMoa2VybmVsX3Rva2VuX3JlcGxhY2VtZW50cykKKyAgICBibG9ja3Mub3B0aW1pemVBbGwoeyJfX0tFUk5FTF9fIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICBibG9ja3Mud3JpdGUob3V0KQogICAgIGlmIG91dC5nZXQoKSAhPSBleHBlY3RlZDoKICAgICAgICAgcHJpbnQgIltGQUlMXTogbWFjcm8gb3B0aW1pemF0aW9uIGZhaWxlZFxuIgogICAgICAgICBwcmludCAiPDw8PCBleHBlY3RpbmcgJyIsCiAgICAgICAgIHByaW50IGV4cGVjdGVkLAotICAgICAgICBwcmludCAiJ1xuPj4+PiByZXN1bHQgJyIKKyAgICAgICAgcHJpbnQgIidcbj4+Pj4gcmVzdWx0ICciLAogICAgICAgICBwcmludCBvdXQuZ2V0KCksCiAgICAgICAgIHByaW50ICInXG4tLS0tIgogICAgICAgICBnbG9iYWwgZmFpbHVyZV9jb3VudAogICAgICAgICBmYWlsdXJlX2NvdW50ICs9IDEKIAogCi0jIC0tIEFsd2F5cyBydW4gdGhlIHVuaXQgdGVzdHMuCi0KIGRlZiBydW5Vbml0VGVzdHMoKToKLSAgICAiIiJydW4gYWxsIHVuaXQgdGVzdHMgZm9yIHRoaXMgcHJvZ3JhbSIiIgorICAgICIiIkFsd2F5cyBydW4gYWxsIHVuaXQgdGVzdHMgZm9yIHRoaXMgcHJvZ3JhbS4iIiIKICAgICB0ZXN0X0NwcFRva2VuaXplcigpCiAgICAgdGVzdF9DcHBFeHByKCkKICAgICB0ZXN0X29wdGltaXplQWxsKCkKICAgICB0ZXN0X0Jsb2NrUGFyc2VyKCkKIAorCiBmYWlsdXJlX2NvdW50ID0gMAogcnVuVW5pdFRlc3RzKCkKIGlmIGZhaWx1cmVfY291bnQgIT0gMDoKLSAgICBzeXMuZXhpdCgxKQorICAgIHV0aWxzLnBhbmljKCJVbml0IHRlc3RzIGZhaWxlZCBpbiBjcHAucHkuXG4iKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdG9vbHMvZGVmYXVsdHMucHkgYi9saWJjL2tlcm5lbC90b29scy9kZWZhdWx0cy5weQppbmRleCAyZWZkNDU1Li44YWJhOTk4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC90b29scy9kZWZhdWx0cy5weQorKysgYi9saWJjL2tlcm5lbC90b29scy9kZWZhdWx0cy5weQpAQCAtMTE4LDEwICsxMTgsOCBAQAogIyB0aGUgZ2VuZXJhdGVkIGZpbGVzLgogIwoga2VybmVsX2lnbm9yZWRfbWFjcm9zID0gc2V0KAotICAgICAgICBbICJNQVhIT1NUTkFNRUxFTiIsICAjIGZvciBzb21lIHJlYXNvbiwgTGludXggZGVmaW5lcyBpdCB0byA2NAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHdoaWxlIG1vc3Qgb2YgdGhlIEJTRCBjb2RlIGV4cGVjdHMgdGhpcyB0byBiZSAyNTYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBzbyBpZ25vcmUgdGhlIGtlcm5lbC1wcm92aWRlZCBkZWZpbml0aW9uIGFuZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGRlZmluZSBpdCBpbiB0aGUgQmlvbmljIGhlYWRlcnMgaW5zdGVhZAorICAgICAgICBbCisKICAgICAgICAgXQogICAgICkKIApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdG9vbHMvZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoIGIvbGliYy9rZXJuZWwvdG9vbHMvZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoCmluZGV4IDM4NjE1OWEuLjkwYmEwZWQgMTAwNzU1Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL2dlbmVyYXRlX3VhcGlfaGVhZGVycy5zaAorKysgYi9saWJjL2tlcm5lbC90b29scy9nZW5lcmF0ZV91YXBpX2hlYWRlcnMuc2gKQEAgLTE1OSw3ICsxNTksNyBAQAogICBjZCAiJHtUTVBESVJ9IgogICBlY2hvICJGZXRjaGluZyBhbmRyb2lkIGtlcm5lbCBzb3VyY2UgJHtLRVJORUxfVkVSU0lPTn0iCiAgIGdpdCBjbG9uZSBodHRwczovL2FuZHJvaWQuZ29vZ2xlc291cmNlLmNvbS9rZXJuZWwvY29tbW9uLmdpdAotICBjZCAiJHtDT01NT059IgorICBjZCAiJHtzcmNfZGlyfSIKICAgZ2l0IGNoZWNrb3V0ICIke0tFUk5FTF9WRVJTSU9OfSIKICAgS0VSTkVMX0RJUj0iJHtUTVBESVJ9IgogZWxpZiBbWyAiJHtLRVJORUxfRElSfSIgPT0gIiIgXV07IHRoZW4KQEAgLTE4MCw2ICsxODAsOCBAQAogICBkb25lCiBmaQogCitjZCAke0FORFJPSURfQlVJTERfVE9QfQorCiAjIENvcHkgYWxsIG9mIHRoZSBpbmNsdWRlL3VhcGkgZmlsZXMgdG8gdGhlIGtlcm5lbCBoZWFkZXJzIHVhcGkgZGlyZWN0b3J5LgogY29weV9oZHJzICIke0tFUk5FTF9ESVJ9LyR7c3JjX2Rpcn0vaW5jbHVkZS91YXBpIiAiJHtBTkRST0lEX0tFUk5FTF9ESVJ9L3VhcGkiCiAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkgYi9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CmluZGV4IDczODYyZGEuLmY0NWQ0ZTAgMTAwNzU1Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKysrIGIvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQpAQCAtNDAsMTIgKzQwLDcgQEAKICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihvcmlnaW5hbF9kaXIpOgogICAgICAgICBwYW5pYyggIk1pc3NpbmcgZGlyZWN0b3J5LCBwbGVhc2Ugc3BlY2lmeSBvbmUgdGhyb3VnaCBjb21tYW5kLWxpbmU6ICVzXG4iICUgb3JpZ2luYWxfZGlyICkKIAotIyBGaXhtZTogVGhpcyBzaG91bGQgYmUgcmVtb3ZlZCBhZnRlciBuZXh0IHJlbGVhc2UuCi0jIERvIG5vdCB1cGRhdGUgaW9uLmggaW9uX3Rlc3QuaCB1bnRpbCBhZnRlciBuZXh0IHJlbGVhc2UgaW4gYW9zcC4KLXNvdXJjZSA9IHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0KCdnaXQgcmVtb3RlIHNob3cnLCBzaGVsbD1UcnVlKS5zdHJpcCgpCiBza2lwX2lvbiA9IEZhbHNlCi1pZiBzb3VyY2UgPT0gImFvc3AiOgotICAgIHNraXBfaW9uID0gVHJ1ZQogCiAjIGZpbmQgYWxsIHNvdXJjZSBmaWxlcyBpbiAnb3JpZ2luYWwnCiAjCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC90b29scy91dGlscy5weSBiL2xpYmMva2VybmVsL3Rvb2xzL3V0aWxzLnB5CmluZGV4IDA0NzhlOTMuLmU1YTMxMGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL3V0aWxzLnB5CisrKyBiL2xpYmMva2VybmVsL3Rvb2xzL3V0aWxzLnB5CkBAIC0xLDU5ICsxLDI5IEBACiAjIGNvbW1vbiBweXRob24gdXRpbGl0eSByb3V0aW5lcyBmb3IgdGhlIEJpb25pYyB0b29sIHNjcmlwdHMKIAotaW1wb3J0IHN5cywgb3MsIGNvbW1hbmRzLCBzdHJpbmcsIGNvbW1hbmRzCitpbXBvcnQgY29tbWFuZHMKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgb3MKK2ltcG9ydCBzdHJpbmcKK2ltcG9ydCBzeXMKIAotIyBiYXNpYyBkZWJ1Z2dpbmcgdHJhY2Ugc3VwcG9ydAotIyBjYWxsIERfc2V0bGV2ZWwgdG8gc2V0IHRoZSB2ZXJib3NpdHkgbGV2ZWwKLSMgYW5kIEQoKSwgRDIoKSwgRDMoKSwgRDQoKSB0byBhZGQgdHJhY2VzCi0jCi12ZXJib3NlID0gMAogCiBkZWYgcGFuaWMobXNnKToKLSAgICBzeXMuc3RkZXJyLndyaXRlKCBmaW5kX3Byb2dyYW1fbmFtZSgpICsgIjogZXJyb3I6ICIgKQotICAgIHN5cy5zdGRlcnIud3JpdGUoIG1zZyApCisgICAgc3lzLnN0ZGVyci53cml0ZShvcy5wYXRoLmJhc2VuYW1lKHN5cy5hcmd2WzBdKSArICI6IGVycm9yOiAiKQorICAgIHN5cy5zdGRlcnIud3JpdGUobXNnKQogICAgIHN5cy5leGl0KDEpCiAKLWRlZiBEKG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID4gMDoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBEMihtc2cpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgaWYgdmVyYm9zZSA+PSAyOgotICAgICAgICBwcmludCBtc2cKLQotZGVmIEQzKG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID49IDM6Ci0gICAgICAgIHByaW50IG1zZwotCi1kZWYgRDQobXNnKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIGlmIHZlcmJvc2UgPj0gNDoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBEX3NldGxldmVsKGxldmVsKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIHZlcmJvc2UgPSBsZXZlbAotCi0KLSMgIG90aGVyIHN0dWZmCi0jCi0jCi1kZWYgZmluZF9wcm9ncmFtX25hbWUoKToKLSAgICByZXR1cm4gb3MucGF0aC5iYXNlbmFtZShzeXMuYXJndlswXSkKIAogZGVmIGZpbmRfcHJvZ3JhbV9kaXIoKToKICAgICByZXR1cm4gb3MucGF0aC5kaXJuYW1lKHN5cy5hcmd2WzBdKQogCisKIGNsYXNzIFN0cmluZ091dHB1dDoKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYubGluZSA9ICIiCiAKICAgICBkZWYgd3JpdGUoc2VsZixtc2cpOgogICAgICAgICBzZWxmLmxpbmUgKz0gbXNnCi0gICAgICAgIEQyKCJ3cml0ZSAnJXMnIiAlIG1zZykKKyAgICAgICAgbG9nZ2luZy5kZWJ1Zygid3JpdGUgJyVzJyIgJSBtc2cpCiAKICAgICBkZWYgZ2V0KHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5saW5lCkBAIC03Niw0NyArNDYsNiBAQAogICAgICAgICAgICAgY29udGludWUKICAgICAgICAgb3MubWtkaXIoZGlyKQogCi1kZWYgd2Fsa19zb3VyY2VfZmlsZXMocGF0aHMsY2FsbGJhY2ssYXJncyxleGNsdWRlcz1bXSk6Ci0gICAgIiIicmVjdXJzaXZlbHkgd2FsayBhIGxpc3Qgb2YgcGF0aHMgYW5kIGZpbGVzLCBvbmx5IGtlZXBpbmcgdGhlIHNvdXJjZSBmaWxlcyBpbiBkaXJlY3RvcmllcyIiIgotICAgIGZvciBwYXRoIGluIHBhdGhzOgotICAgICAgICBpZiBsZW4ocGF0aCkgPiAwIGFuZCBwYXRoWzBdID09ICdAJzoKLSAgICAgICAgICAgICMgdGhpcyBpcyB0aGUgbmFtZSBvZiBhbm90aGVyIGZpbGUsIGluY2x1ZGUgaXQgYW5kIHBhcnNlIGl0Ci0gICAgICAgICAgICBwYXRoID0gcGF0aFsxOl0KLSAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKHBhdGgpOgotICAgICAgICAgICAgICAgIGZvciBsaW5lIGluIG9wZW4ocGF0aCk6Ci0gICAgICAgICAgICAgICAgICAgIGlmIGxlbihsaW5lKSA+IDAgYW5kIGxpbmVbLTFdID09ICdcbic6Ci0gICAgICAgICAgICAgICAgICAgICAgICBsaW5lID0gbGluZVs6LTFdCi0gICAgICAgICAgICAgICAgICAgIHdhbGtfc291cmNlX2ZpbGVzKFtsaW5lXSxjYWxsYmFjayxhcmdzLGV4Y2x1ZGVzKQotICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgaWYgbm90IG9zLnBhdGguaXNkaXIocGF0aCk6Ci0gICAgICAgICAgICBjYWxsYmFjayhwYXRoLGFyZ3MpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhwYXRoKToKLSAgICAgICAgICAgICAgICAjcHJpbnQgInctLSAlcyAoZXg6ICVzKSIgJSAocmVwcigocm9vdCxkaXJzKSksIHJlcHIoZXhjbHVkZXMpKQotICAgICAgICAgICAgICAgIGlmIGxlbihleGNsdWRlcyk6Ci0gICAgICAgICAgICAgICAgICAgIGZvciBkIGluIGRpcnNbOl06Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmpvaW4ocm9vdCxkKSBpbiBleGNsdWRlczoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJzLnJlbW92ZShkKQotICAgICAgICAgICAgICAgIGZvciBmIGluIGZpbGVzOgotICAgICAgICAgICAgICAgICAgICByLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KGYpCi0gICAgICAgICAgICAgICAgICAgIGlmIGV4dCBpbiBbICIuaCIsICIuYyIsICIuY3BwIiwgIi5TIiBdOgotICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soICIlcy8lcyIgJSAocm9vdCxmKSwgYXJncyApCi0KLWRlZiBjbGVhbnVwX2RpcihwYXRoKToKLSAgICAiIiJjcmVhdGUgYSBkaXJlY3RvcnkgaWYgbmVlZGVkLCBhbmQgZW5zdXJlIHRoYXQgaXQgaXMgdG90YWxseSBlbXB0eQotICAgICAgIGJ5IHJlbW92aW5nIGFueSBleGlzdGluZyBjb250ZW50IGluIGl0IiIiCi0gICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHBhdGgpOgotICAgICAgICBvcy5ta2RpcihwYXRoKQotICAgIGVsc2U6Ci0gICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKHBhdGgsIHRvcGRvd249RmFsc2UpOgotICAgICAgICAgICAgaWYgcm9vdC5lbmRzd2l0aCgia2VybmVsX2hlYWRlcnMvIik6Ci0gICAgICAgICAgICAgICAgIyBza2lwICdrZXJuZWxfaGVhZGVycycKLSAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgZm9yIG5hbWUgaW4gZmlsZXM6Ci0gICAgICAgICAgICAgICAgb3MucmVtb3ZlKG9zLnBhdGguam9pbihyb290LCBuYW1lKSkKLSAgICAgICAgICAgIGZvciBuYW1lIGluIGRpcnM6Ci0gICAgICAgICAgICAgICAgb3Mucm1kaXIob3MucGF0aC5qb2luKHJvb3QsIG5hbWUpKQotCiAKIGNsYXNzIEJhdGNoRmlsZVVwZGF0ZXI6CiAgICAgIiIiYSBjbGFzcyB1c2VkIHRvIGVkaXQgc2V2ZXJhbCBmaWxlcyBhdCBvbmNlIiIiCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2Eub3V0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2Eub3V0LmgKaW5kZXggNTRiMzBhYy4uM2Q1MTUwNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9hLm91dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vYS5vdXQuaApAQCAtMjEsMjggKzIxLDI2IEBACiAjaW5jbHVkZSA8bGludXgvcGVyc29uYWxpdHkuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBleGVjCi17Ci0gX191MzIgYV9pbmZvOwotIF9fdTMyIGFfdGV4dDsKK3N0cnVjdCBleGVjIHsKKyAgX191MzIgYV9pbmZvOworICBfX3UzMiBhX3RleHQ7CisgIF9fdTMyIGFfZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYV9kYXRhOwotIF9fdTMyIGFfYnNzOwotIF9fdTMyIGFfc3ltczsKLSBfX3UzMiBhX2VudHJ5OworICBfX3UzMiBhX2JzczsKKyAgX191MzIgYV9zeW1zOworICBfX3UzMiBhX2VudHJ5OworICBfX3UzMiBhX3Ryc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYV90cnNpemU7Ci0gX191MzIgYV9kcnNpemU7CisgIF9fdTMyIGFfZHJzaXplOwogfTsKICNkZWZpbmUgTl9UWFRBRERSKGEpICgweDAwMDA4MDAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTl9UUlNJWkUoYSkgKChhKS5hX3Ryc2l6ZSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5fRFJTSVpFKGEpICgoYSkuYV9kcnNpemUpCiAjZGVmaW5lIE5fU1lNU0laRShhKSAoKGEpLmFfc3ltcykKICNkZWZpbmUgTV9BUk0gMTAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBMSUJSQVJZX1NUQVJUX1RFWFQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExJQlJBUllfU1RBUlRfVEVYVCAoMHgwMGMwMDAwMCkKICNlbmRpZgogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9od2NhcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9od2NhcC5oCmluZGV4IGU3MGYzYjguLjI1ZGM5MzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vaHdjYXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2h3Y2FwLmgKQEAgLTQ3LDQgKzQ3LDEwIEBACiAjZGVmaW5lIEhXQ0FQX0xQQUUgKDEgPDwgMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIV0NBUF9FVlRTVFJNICgxIDw8IDIxKQorI2RlZmluZSBIV0NBUDJfQUVTICgxIDw8IDApCisjZGVmaW5lIEhXQ0FQMl9QTVVMTCAoMSA8PCAxKQorI2RlZmluZSBIV0NBUDJfU0hBMSAoMSA8PCAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFdDQVAyX1NIQTIgKDEgPDwgMykKKyNkZWZpbmUgSFdDQVAyX0NSQzMyICgxIDw8IDQpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20va3ZtLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2t2bS5oCmluZGV4IDJiNWExN2UuLmMzN2Q4MDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20va3ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9rdm0uaApAQCAtMTksMTM2ICsxOSwxNDEgQEAKICNpZm5kZWYgX19BUk1fS1ZNX0hfXwogI2RlZmluZSBfX0FSTV9LVk1fSF9fCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNpbmNsdWRlIDxhc20vcHRyYWNlLmg+CisjaW5jbHVkZSA8bGludXgvcHNjaS5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxhc20vcHRyYWNlLmg+CiAjZGVmaW5lIF9fS1ZNX0hBVkVfR1VFU1RfREVCVUcKICNkZWZpbmUgX19LVk1fSEFWRV9JUlFfTElORQotI2RlZmluZSBLVk1fUkVHX1NJWkUoaWQpICAgKDFVIDw8ICgoKGlkKSAmIEtWTV9SRUdfU0laRV9NQVNLKSA+PiBLVk1fUkVHX1NJWkVfU0hJRlQpKQotI2RlZmluZSBLVk1fQVJNX1NWQ19zcCBzdmNfcmVnc1swXQorI2RlZmluZSBfX0tWTV9IQVZFX1JFQURPTkxZX01FTQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1JFR19TSVpFKGlkKSAoMVUgPDwgKCgoaWQpICYgS1ZNX1JFR19TSVpFX01BU0spID4+IEtWTV9SRUdfU0laRV9TSElGVCkpCisjZGVmaW5lIEtWTV9BUk1fU1ZDX3NwIHN2Y19yZWdzWzBdCiAjZGVmaW5lIEtWTV9BUk1fU1ZDX2xyIHN2Y19yZWdzWzFdCiAjZGVmaW5lIEtWTV9BUk1fU1ZDX3Nwc3Igc3ZjX3JlZ3NbMl0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fQUJUX3NwIGFidF9yZWdzWzBdCiAjZGVmaW5lIEtWTV9BUk1fQUJUX2xyIGFidF9yZWdzWzFdCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0FCVF9zcHNyIGFidF9yZWdzWzJdCiAjZGVmaW5lIEtWTV9BUk1fVU5EX3NwIHVuZF9yZWdzWzBdCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX1VORF9sciB1bmRfcmVnc1sxXQogI2RlZmluZSBLVk1fQVJNX1VORF9zcHNyIHVuZF9yZWdzWzJdCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0lSUV9zcCBpcnFfcmVnc1swXQogI2RlZmluZSBLVk1fQVJNX0lSUV9sciBpcnFfcmVnc1sxXQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9JUlFfc3BzciBpcnFfcmVnc1syXQogI2RlZmluZSBLVk1fQVJNX0ZJUV9yOCBmaXFfcmVnc1swXQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9GSVFfcjkgZmlxX3JlZ3NbMV0KICNkZWZpbmUgS1ZNX0FSTV9GSVFfcjEwIGZpcV9yZWdzWzJdCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0ZJUV9mcCBmaXFfcmVnc1szXQogI2RlZmluZSBLVk1fQVJNX0ZJUV9pcCBmaXFfcmVnc1s0XQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9GSVFfc3AgZmlxX3JlZ3NbNV0KICNkZWZpbmUgS1ZNX0FSTV9GSVFfbHIgZmlxX3JlZ3NbNl0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fRklRX3Nwc3IgZmlxX3JlZ3NbN10KIHN0cnVjdCBrdm1fcmVncyB7CisgIHN0cnVjdCBwdF9yZWdzIHVzcl9yZWdzOworICB1bnNpZ25lZCBsb25nIHN2Y19yZWdzWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcHRfcmVncyB1c3JfcmVnczsKLSB1bnNpZ25lZCBsb25nIHN2Y19yZWdzWzNdOwotIHVuc2lnbmVkIGxvbmcgYWJ0X3JlZ3NbM107Ci0gdW5zaWduZWQgbG9uZyB1bmRfcmVnc1szXTsKKyAgdW5zaWduZWQgbG9uZyBhYnRfcmVnc1szXTsKKyAgdW5zaWduZWQgbG9uZyB1bmRfcmVnc1szXTsKKyAgdW5zaWduZWQgbG9uZyBpcnFfcmVnc1szXTsKKyAgdW5zaWduZWQgbG9uZyBmaXFfcmVnc1s4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBpcnFfcmVnc1szXTsKLSB1bnNpZ25lZCBsb25nIGZpcV9yZWdzWzhdOwogfTsKICNkZWZpbmUgS1ZNX0FSTV9UQVJHRVRfQ09SVEVYX0ExNSAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9DT1JURVhfQTcgMQogI2RlZmluZSBLVk1fQVJNX05VTV9UQVJHRVRTIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fREVWSUNFX1RZUEVfU0hJRlQgMAogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9UWVBFX01BU0sgKDB4ZmZmZiA8PCBLVk1fQVJNX0RFVklDRV9UWVBFX1NISUZUKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfSURfU0hJRlQgMTYKICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfSURfTUFTSyAoMHhmZmZmIDw8IEtWTV9BUk1fREVWSUNFX0lEX1NISUZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfVkdJQ19WMiAwCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0FERFJfVFlQRV9ESVNUIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0FERFJfVFlQRV9DUFUgMQogI2RlZmluZSBLVk1fVkdJQ19WMl9ESVNUX1NJWkUgMHgxMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVkdJQ19WMl9DUFVfU0laRSAweDIwMDAKICNkZWZpbmUgS1ZNX0FSTV9WQ1BVX1BPV0VSX09GRiAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQVJNX1ZDUFVfUFNDSV8wXzIgMQogc3RydWN0IGt2bV92Y3B1X2luaXQgewotIF9fdTMyIHRhcmdldDsKLSBfX3UzMiBmZWF0dXJlc1s3XTsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0YXJnZXQ7CisgIF9fdTMyIGZlYXR1cmVzWzddOworfTsKIHN0cnVjdCBrdm1fc3JlZ3MgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX2ZwdSB7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWdfYXJjaCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fZGVidWdfZXhpdF9hcmNoIHsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9zeW5jX3JlZ3MgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX2FyY2hfbWVtb3J5X3Nsb3QgewogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0NPUFJPQ19NQVNLIDB4MDAwMDAwMDAwRkZGMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fQ09QUk9DX1NISUZUIDE2CiAjZGVmaW5lIEtWTV9SRUdfQVJNXzMyX09QQzJfTUFTSyAweDAwMDAwMDAwMDAwMDAwMDcKICNkZWZpbmUgS1ZNX1JFR19BUk1fMzJfT1BDMl9TSElGVCAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9PUEMxX01BU0sgMHgwMDAwMDAwMDAwMDAwMDc4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9PUEMxX1NISUZUIDMKICNkZWZpbmUgS1ZNX1JFR19BUk1fQ1JNX01BU0sgMHgwMDAwMDAwMDAwMDAwNzgwCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0NSTV9TSElGVCA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV8zMl9DUk5fTUFTSyAweDAwMDAwMDAwMDAwMDc4MDAKLSNkZWZpbmUgS1ZNX1JFR19BUk1fMzJfQ1JOX1NISUZUIDExCi0jZGVmaW5lIEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKHgsbikgICAoKCh4KSA8PCBLVk1fUkVHX0FSTV8gIyMgbiAjIyBfU0hJRlQpICYgS1ZNX1JFR19BUk1fICMjIG4gIyMgX01BU0spCi0jZGVmaW5lIF9fQVJNX0NQMTVfUkVHKG9wMSxjcm4sY3JtLG9wMikgICAoS1ZNX1JFR19BUk0gfCAoMTUgPDwgS1ZNX1JFR19BUk1fQ09QUk9DX1NISUZUKSB8ICAgQVJNX0NQMTVfUkVHX1NISUZUX01BU0sob3AxLCBPUEMxKSB8ICAgQVJNX0NQMTVfUkVHX1NISUZUX01BU0soY3JuLCAzMl9DUk4pIHwgICBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhjcm0sIENSTSkgfCAgIEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKG9wMiwgMzJfT1BDMikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUkVHX0FSTV8zMl9DUk5fU0hJRlQgMTEKKyNkZWZpbmUgQVJNX0NQMTVfUkVHX1NISUZUX01BU0soeCxuKSAoKCh4KSA8PCBLVk1fUkVHX0FSTV8gIyNuICMjX1NISUZUKSAmIEtWTV9SRUdfQVJNXyAjI24gIyNfTUFTSykKKyNkZWZpbmUgX19BUk1fQ1AxNV9SRUcob3AxLGNybixjcm0sb3AyKSAoS1ZNX1JFR19BUk0gfCAoMTUgPDwgS1ZNX1JFR19BUk1fQ09QUk9DX1NISUZUKSB8IEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKG9wMSwgT1BDMSkgfCBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhjcm4sIDMyX0NSTikgfCBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhjcm0sIENSTSkgfCBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhvcDIsIDMyX09QQzIpKQogI2RlZmluZSBBUk1fQ1AxNV9SRUczMiguLi4pIChfX0FSTV9DUDE1X1JFRyhfX1ZBX0FSR1NfXykgfCBLVk1fUkVHX1NJWkVfVTMyKQotI2RlZmluZSBfX0FSTV9DUDE1X1JFRzY0KG9wMSxjcm0pICAgKF9fQVJNX0NQMTVfUkVHKG9wMSwgMCwgY3JtLCAwKSB8IEtWTV9SRUdfU0laRV9VNjQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX0FSTV9DUDE1X1JFRzY0KG9wMSxjcm0pIChfX0FSTV9DUDE1X1JFRyhvcDEsIDAsIGNybSwgMCkgfCBLVk1fUkVHX1NJWkVfVTY0KQogI2RlZmluZSBBUk1fQ1AxNV9SRUc2NCguLi4pIF9fQVJNX0NQMTVfUkVHNjQoX19WQV9BUkdTX18pCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1RJTUVSX0NUTCBBUk1fQ1AxNV9SRUczMigwLCAxNCwgMywgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1RJTUVSX0NOVCBBUk1fQ1AxNV9SRUc2NCgxLCAxNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1RJTUVSX0NWQUwgQVJNX0NQMTVfUkVHNjQoMywgMTQpCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0NPUkUgKDB4MDAxMCA8PCBLVk1fUkVHX0FSTV9DT1BST0NfU0hJRlQpCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0NPUkVfUkVHKG5hbWUpIChvZmZzZXRvZihzdHJ1Y3Qga3ZtX3JlZ3MsIG5hbWUpIC8gNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0RFTVVYICgweDAwMTEgPDwgS1ZNX1JFR19BUk1fQ09QUk9DX1NISUZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fREVNVVhfSURfTUFTSyAweDAwMDAwMDAwMDAwMEZGMDAKICNkZWZpbmUgS1ZNX1JFR19BUk1fREVNVVhfSURfU0hJRlQgOAogI2RlZmluZSBLVk1fUkVHX0FSTV9ERU1VWF9JRF9DQ1NJRFIgKDB4MDAgPDwgS1ZNX1JFR19BUk1fREVNVVhfSURfU0hJRlQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9ERU1VWF9WQUxfTUFTSyAweDAwMDAwMDAwMDAwMDAwRkYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0RFTVVYX1ZBTF9TSElGVCAwCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUCAoMHgwMDEyIDw8IEtWTV9SRUdfQVJNX0NPUFJPQ19TSElGVCkKICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQX01BU0sgMHgwMDAwMDAwMDAwMDBGRkZGCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfQkFTRV9SRUcgMHgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfRlBTSUQgMHgxMDAwCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUF9GUFNDUiAweDEwMDEKICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQX01WRlIxIDB4MTAwNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQX01WRlIwIDB4MTAwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQX0ZQRVhDIDB4MTAwOAogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfRlBJTlNUIDB4MTAwOQogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfRlBJTlNUMiAweDEwMEEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfR1JQX0FERFIgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19HUlBfRElTVF9SRUdTIDEKICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19HUlBfQ1BVX1JFR1MgMgogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX0NQVUlEX1NISUZUIDMyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX0NQVUlEX01BU0sgKDB4ZmZVTEwgPDwgS1ZNX0RFVl9BUk1fVkdJQ19DUFVJRF9TSElGVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfT0ZGU0VUX1NISUZUIDAKICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19PRkZTRVRfTUFTSyAoMHhmZmZmZmZmZlVMTCA8PCBLVk1fREVWX0FSTV9WR0lDX09GRlNFVF9TSElGVCkKKyNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19HUlBfTlJfSVJRUyAzCiAjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfU0hJRlQgMjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfTUFTSyAweGZmCkBAIC0xNzIsOSArMTc3LDkgQEAKICNkZWZpbmUgS1ZNX1BTQ0lfRk5fQ1BVX09OIEtWTV9QU0NJX0ZOKDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUFNDSV9GTl9NSUdSQVRFIEtWTV9QU0NJX0ZOKDMpCi0jZGVmaW5lIEtWTV9QU0NJX1JFVF9TVUNDRVNTIDAKLSNkZWZpbmUgS1ZNX1BTQ0lfUkVUX05JICgodW5zaWduZWQgbG9uZyktMSkKLSNkZWZpbmUgS1ZNX1BTQ0lfUkVUX0lOVkFMICgodW5zaWduZWQgbG9uZyktMikKKyNkZWZpbmUgS1ZNX1BTQ0lfUkVUX1NVQ0NFU1MgUFNDSV9SRVRfU1VDQ0VTUworI2RlZmluZSBLVk1fUFNDSV9SRVRfTkkgUFNDSV9SRVRfTk9UX1NVUFBPUlRFRAorI2RlZmluZSBLVk1fUFNDSV9SRVRfSU5WQUwgUFNDSV9SRVRfSU5WQUxJRF9QQVJBTVMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9QU0NJX1JFVF9ERU5JRUQgKCh1bnNpZ25lZCBsb25nKS0zKQorI2RlZmluZSBLVk1fUFNDSV9SRVRfREVOSUVEIFBTQ0lfUkVUX0RFTklFRAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL21tYW4uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vbW1hbi5oCmluZGV4IDQwZjBlOTcuLmVjOTQ1M2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vbW1hbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vbW1hbi5oCkBAIC0xNyw0ICsxNyw0IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvbW1hbi5oPgotI2RlZmluZSBhcmNoX21tYXBfY2hlY2soYWRkciwgbGVuLCBmbGFncykgICAoKChmbGFncykgJiBNQVBfRklYRUQgJiYgKGFkZHIpIDwgRklSU1RfVVNFUl9BRERSRVNTKSA/IC1FSU5WQUwgOiAwKQorI2RlZmluZSBhcmNoX21tYXBfY2hlY2soYWRkcixsZW4sZmxhZ3MpICgoKGZsYWdzKSAmIE1BUF9GSVhFRCAmJiAoYWRkcikgPCBGSVJTVF9VU0VSX0FERFJFU1MpID8gLSBFSU5WQUwgOiAwKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9wZXJmX3JlZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vcGVyZl9yZWdzLmgKaW5kZXggNzQ1YmNmMy4uNTM3ZWI0NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9wZXJmX3JlZ3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3BlcmZfcmVncy5oCkBAIC0xOSwyNyArMTksMjcgQEAKICNpZm5kZWYgX0FTTV9BUk1fUEVSRl9SRUdTX0gKICNkZWZpbmUgX0FTTV9BUk1fUEVSRl9SRUdTX0gKIGVudW0gcGVyZl9ldmVudF9hcm1fcmVncyB7Ci0gUEVSRl9SRUdfQVJNX1IwLAorICBQRVJGX1JFR19BUk1fUjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX0FSTV9SMSwKLSBQRVJGX1JFR19BUk1fUjIsCi0gUEVSRl9SRUdfQVJNX1IzLAotIFBFUkZfUkVHX0FSTV9SNCwKKyAgUEVSRl9SRUdfQVJNX1IxLAorICBQRVJGX1JFR19BUk1fUjIsCisgIFBFUkZfUkVHX0FSTV9SMywKKyAgUEVSRl9SRUdfQVJNX1I0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19BUk1fUjUsCi0gUEVSRl9SRUdfQVJNX1I2LAotIFBFUkZfUkVHX0FSTV9SNywKLSBQRVJGX1JFR19BUk1fUjgsCisgIFBFUkZfUkVHX0FSTV9SNSwKKyAgUEVSRl9SRUdfQVJNX1I2LAorICBQRVJGX1JFR19BUk1fUjcsCisgIFBFUkZfUkVHX0FSTV9SOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfQVJNX1I5LAotIFBFUkZfUkVHX0FSTV9SMTAsCi0gUEVSRl9SRUdfQVJNX0ZQLAotIFBFUkZfUkVHX0FSTV9JUCwKKyAgUEVSRl9SRUdfQVJNX1I5LAorICBQRVJGX1JFR19BUk1fUjEwLAorICBQRVJGX1JFR19BUk1fRlAsCisgIFBFUkZfUkVHX0FSTV9JUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfQVJNX1NQLAotIFBFUkZfUkVHX0FSTV9MUiwKLSBQRVJGX1JFR19BUk1fUEMsCi0gUEVSRl9SRUdfQVJNX01BWCwKKyAgUEVSRl9SRUdfQVJNX1NQLAorICBQRVJGX1JFR19BUk1fTFIsCisgIFBFUkZfUkVHX0FSTV9QQywKKyAgUEVSRl9SRUdfQVJNX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3B0cmFjZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9wdHJhY2UuaAppbmRleCA5ZDM5ZDQ5Li42YTAxNTk4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3B0cmFjZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vcHRyYWNlLmgKQEAgLTg5LDcgKzg5LDcgQEAKICNkZWZpbmUgUFRfVEVYVF9FTkRfQUREUiAweDEwMDA4CiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogc3RydWN0IHB0X3JlZ3MgewotIGxvbmcgdXJlZ3NbMThdOworICBsb25nIHVyZWdzWzE4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBUk1fY3BzciB1cmVnc1sxNl0KQEAgLTExNCw3ICsxMTQsNyBAQAogI2RlZmluZSBBUk1fcjEgdXJlZ3NbMV0KICNkZWZpbmUgQVJNX3IwIHVyZWdzWzBdCiAjZGVmaW5lIEFSTV9PUklHX3IwIHVyZWdzWzE3XQotI2RlZmluZSBBUk1fVkZQUkVHU19TSVpFICggMzIgKiA4ICAgKyA0ICAgKQorI2RlZmluZSBBUk1fVkZQUkVHU19TSVpFICgzMiAqIDggKyA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NldHVwLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NldHVwLmgKaW5kZXggMGYyYTE4Yi4uNWZkMmYyMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zZXR1cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2V0dXAuaApAQCAtMjMsMTMzICsyMywxMzMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUQUdfTk9ORSAweDAwMDAwMDAwCiBzdHJ1Y3QgdGFnX2hlYWRlciB7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiB0YWc7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIHRhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVEFHX0NPUkUgMHg1NDQxMDAwMQogc3RydWN0IHRhZ19jb3JlIHsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZ2VzaXplOwotIF9fdTMyIHJvb3RkZXY7CisgIF9fdTMyIHBhZ2VzaXplOworICBfX3UzMiByb290ZGV2OwogfTsKICNkZWZpbmUgQVRBR19NRU0gMHg1NDQxMDAwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0YWdfbWVtMzIgewotIF9fdTMyIHNpemU7Ci0gX191MzIgc3RhcnQ7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIHN0YXJ0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUQUdfVklERU9URVhUIDB4NTQ0MTAwMDMKIHN0cnVjdCB0YWdfdmlkZW90ZXh0IHsKLSBfX3U4IHg7Ci0gX191OCB5OworICBfX3U4IHg7CisgIF9fdTggeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdmlkZW9fcGFnZTsKLSBfX3U4IHZpZGVvX21vZGU7Ci0gX191OCB2aWRlb19jb2xzOwotIF9fdTE2IHZpZGVvX2VnYV9ieDsKKyAgX191MTYgdmlkZW9fcGFnZTsKKyAgX191OCB2aWRlb19tb2RlOworICBfX3U4IHZpZGVvX2NvbHM7CisgIF9fdTE2IHZpZGVvX2VnYV9ieDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB2aWRlb19saW5lczsKLSBfX3U4IHZpZGVvX2lzdmdhOwotIF9fdTE2IHZpZGVvX3BvaW50czsKKyAgX191OCB2aWRlb19saW5lczsKKyAgX191OCB2aWRlb19pc3ZnYTsKKyAgX191MTYgdmlkZW9fcG9pbnRzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUQUdfUkFNRElTSyAweDU0NDEwMDA0CiBzdHJ1Y3QgdGFnX3JhbWRpc2sgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHNpemU7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGFydDsKKyAgX191MzIgc3RhcnQ7CiB9OwogI2RlZmluZSBBVEFHX0lOSVRSRCAweDU0NDEwMDA1CiAjZGVmaW5lIEFUQUdfSU5JVFJEMiAweDU0NDIwMDA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRhZ19pbml0cmQgewotIF9fdTMyIHN0YXJ0OwotIF9fdTMyIHNpemU7CisgIF9fdTMyIHN0YXJ0OworICBfX3UzMiBzaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUQUdfU0VSSUFMIDB4NTQ0MTAwMDYKIHN0cnVjdCB0YWdfc2VyaWFsbnIgewotIF9fdTMyIGxvdzsKLSBfX3UzMiBoaWdoOworICBfX3UzMiBsb3c7CisgIF9fdTMyIGhpZ2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQVRBR19SRVZJU0lPTiAweDU0NDEwMDA3CiBzdHJ1Y3QgdGFnX3JldmlzaW9uIHsKLSBfX3UzMiByZXY7CisgIF9fdTMyIHJldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVEFHX1ZJREVPTEZCIDB4NTQ0MTAwMDgKIHN0cnVjdCB0YWdfdmlkZW9sZmIgewotIF9fdTE2IGxmYl93aWR0aDsKKyAgX191MTYgbGZiX3dpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBsZmJfaGVpZ2h0OwotIF9fdTE2IGxmYl9kZXB0aDsKLSBfX3UxNiBsZmJfbGluZWxlbmd0aDsKLSBfX3UzMiBsZmJfYmFzZTsKKyAgX191MTYgbGZiX2hlaWdodDsKKyAgX191MTYgbGZiX2RlcHRoOworICBfX3UxNiBsZmJfbGluZWxlbmd0aDsKKyAgX191MzIgbGZiX2Jhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxmYl9zaXplOwotIF9fdTggcmVkX3NpemU7Ci0gX191OCByZWRfcG9zOwotIF9fdTggZ3JlZW5fc2l6ZTsKKyAgX191MzIgbGZiX3NpemU7CisgIF9fdTggcmVkX3NpemU7CisgIF9fdTggcmVkX3BvczsKKyAgX191OCBncmVlbl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGdyZWVuX3BvczsKLSBfX3U4IGJsdWVfc2l6ZTsKLSBfX3U4IGJsdWVfcG9zOwotIF9fdTggcnN2ZF9zaXplOworICBfX3U4IGdyZWVuX3BvczsKKyAgX191OCBibHVlX3NpemU7CisgIF9fdTggYmx1ZV9wb3M7CisgIF9fdTggcnN2ZF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJzdmRfcG9zOworICBfX3U4IHJzdmRfcG9zOwogfTsKICNkZWZpbmUgQVRBR19DTURMSU5FIDB4NTQ0MTAwMDkKIHN0cnVjdCB0YWdfY21kbGluZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgY21kbGluZVsxXTsKKyAgY2hhciBjbWRsaW5lWzFdOwogfTsKICNkZWZpbmUgQVRBR19BQ09STiAweDQxMDAwMTAxCiBzdHJ1Y3QgdGFnX2Fjb3JuIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWVtY19jb250cm9sX3JlZzsKLSBfX3UzMiB2cmFtX3BhZ2VzOwotIF9fdTggc291bmRkZWZhdWx0OwotIF9fdTggYWRmc2RyaXZlczsKKyAgX191MzIgbWVtY19jb250cm9sX3JlZzsKKyAgX191MzIgdnJhbV9wYWdlczsKKyAgX191OCBzb3VuZGRlZmF1bHQ7CisgIF9fdTggYWRmc2RyaXZlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVEFHX01FTUNMSyAweDQxMDAwNDAyCiBzdHJ1Y3QgdGFnX21lbWNsayB7Ci0gX191MzIgZm1lbWNsazsKKyAgX191MzIgZm1lbWNsazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRhZyB7Ci0gc3RydWN0IHRhZ19oZWFkZXIgaGRyOwotIHVuaW9uIHsKKyAgc3RydWN0IHRhZ19oZWFkZXIgaGRyOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0YWdfY29yZSBjb3JlOwotIHN0cnVjdCB0YWdfbWVtMzIgbWVtOwotIHN0cnVjdCB0YWdfdmlkZW90ZXh0IHZpZGVvdGV4dDsKLSBzdHJ1Y3QgdGFnX3JhbWRpc2sgcmFtZGlzazsKKyAgICBzdHJ1Y3QgdGFnX2NvcmUgY29yZTsKKyAgICBzdHJ1Y3QgdGFnX21lbTMyIG1lbTsKKyAgICBzdHJ1Y3QgdGFnX3ZpZGVvdGV4dCB2aWRlb3RleHQ7CisgICAgc3RydWN0IHRhZ19yYW1kaXNrIHJhbWRpc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0YWdfaW5pdHJkIGluaXRyZDsKLSBzdHJ1Y3QgdGFnX3NlcmlhbG5yIHNlcmlhbG5yOwotIHN0cnVjdCB0YWdfcmV2aXNpb24gcmV2aXNpb247Ci0gc3RydWN0IHRhZ192aWRlb2xmYiB2aWRlb2xmYjsKKyAgICBzdHJ1Y3QgdGFnX2luaXRyZCBpbml0cmQ7CisgICAgc3RydWN0IHRhZ19zZXJpYWxuciBzZXJpYWxucjsKKyAgICBzdHJ1Y3QgdGFnX3JldmlzaW9uIHJldmlzaW9uOworICAgIHN0cnVjdCB0YWdfdmlkZW9sZmIgdmlkZW9sZmI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0YWdfY21kbGluZSBjbWRsaW5lOwotIHN0cnVjdCB0YWdfYWNvcm4gYWNvcm47Ci0gc3RydWN0IHRhZ19tZW1jbGsgbWVtY2xrOwotIH0gdTsKKyAgICBzdHJ1Y3QgdGFnX2NtZGxpbmUgY21kbGluZTsKKyAgICBzdHJ1Y3QgdGFnX2Fjb3JuIGFjb3JuOworICAgIHN0cnVjdCB0YWdfbWVtY2xrIG1lbWNsazsKKyAgfSB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGFndGFibGUgewotIF9fdTMyIHRhZzsKLSBpbnQgKCpwYXJzZSkoY29uc3Qgc3RydWN0IHRhZyAqKTsKKyAgX191MzIgdGFnOworICBpbnQoKiBwYXJzZSkgKGNvbnN0IHN0cnVjdCB0YWcgKik7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgdGFnX21lbWJlcl9wcmVzZW50KHRhZyxtZW1iZXIpICAgKCh1bnNpZ25lZCBsb25nKSgmKChzdHJ1Y3QgdGFnICopMEwpLT5tZW1iZXIgKyAxKSAgIDw9ICh0YWcpLT5oZHIuc2l6ZSAqIDQpCi0jZGVmaW5lIHRhZ19uZXh0KHQpICgoc3RydWN0IHRhZyAqKSgoX191MzIgKikodCkgKyAodCktPmhkci5zaXplKSkKKyNkZWZpbmUgdGFnX21lbWJlcl9wcmVzZW50KHRhZyxtZW1iZXIpICgodW5zaWduZWQgbG9uZykgKCYgKChzdHJ1Y3QgdGFnICopIDBMKS0+bWVtYmVyICsgMSkgPD0gKHRhZyktPmhkci5zaXplICogNCkKKyNkZWZpbmUgdGFnX25leHQodCkgKChzdHJ1Y3QgdGFnICopICgoX191MzIgKikgKHQpICsgKHQpLT5oZHIuc2l6ZSkpCiAjZGVmaW5lIHRhZ19zaXplKHR5cGUpICgoc2l6ZW9mKHN0cnVjdCB0YWdfaGVhZGVyKSArIHNpemVvZihzdHJ1Y3QgdHlwZSkpID4+IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBmb3JfZWFjaF90YWcodCxiYXNlKSAgIGZvciAodCA9IGJhc2U7IHQtPmhkci5zaXplOyB0ID0gdGFnX25leHQodCkpCisjZGVmaW5lIGZvcl9lYWNoX3RhZyh0LGJhc2UpIGZvcih0ID0gYmFzZTsgdC0+aGRyLnNpemU7IHQgPSB0YWdfbmV4dCh0KSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zaWdjb250ZXh0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ2NvbnRleHQuaAppbmRleCBiZGEyMzM5Li43MzlkZTRjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ2NvbnRleHQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ2NvbnRleHQuaApAQCAtMTksMzIgKzE5LDMyIEBACiAjaWZuZGVmIF9BU01BUk1fU0lHQ09OVEVYVF9ICiAjZGVmaW5lIF9BU01BUk1fU0lHQ09OVEVYVF9ICiBzdHJ1Y3Qgc2lnY29udGV4dCB7Ci0gdW5zaWduZWQgbG9uZyB0cmFwX25vOworICB1bnNpZ25lZCBsb25nIHRyYXBfbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZTsKLSB1bnNpZ25lZCBsb25nIG9sZG1hc2s7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjA7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjE7CisgIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZTsKKyAgdW5zaWduZWQgbG9uZyBvbGRtYXNrOworICB1bnNpZ25lZCBsb25nIGFybV9yMDsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgYXJtX3IyOwotIHVuc2lnbmVkIGxvbmcgYXJtX3IzOwotIHVuc2lnbmVkIGxvbmcgYXJtX3I0OwotIHVuc2lnbmVkIGxvbmcgYXJtX3I1OworICB1bnNpZ25lZCBsb25nIGFybV9yMjsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjM7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3I0OworICB1bnNpZ25lZCBsb25nIGFybV9yNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBhcm1fcjY7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjc7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjg7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjk7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3I2OworICB1bnNpZ25lZCBsb25nIGFybV9yNzsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjg7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3I5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGFybV9yMTA7Ci0gdW5zaWduZWQgbG9uZyBhcm1fZnA7Ci0gdW5zaWduZWQgbG9uZyBhcm1faXA7Ci0gdW5zaWduZWQgbG9uZyBhcm1fc3A7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3IxMDsKKyAgdW5zaWduZWQgbG9uZyBhcm1fZnA7CisgIHVuc2lnbmVkIGxvbmcgYXJtX2lwOworICB1bnNpZ25lZCBsb25nIGFybV9zcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBhcm1fbHI7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcGM7Ci0gdW5zaWduZWQgbG9uZyBhcm1fY3BzcjsKLSB1bnNpZ25lZCBsb25nIGZhdWx0X2FkZHJlc3M7CisgIHVuc2lnbmVkIGxvbmcgYXJtX2xyOworICB1bnNpZ25lZCBsb25nIGFybV9wYzsKKyAgdW5zaWduZWQgbG9uZyBhcm1fY3BzcjsKKyAgdW5zaWduZWQgbG9uZyBmYXVsdF9hZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnbmFsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ25hbC5oCmluZGV4IGZkMzlhYWEuLjVlZTI3MmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnbmFsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zaWduYWwuaApAQCAtODgsMjMgKzg4LDIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3NpZ25hbC1kZWZzLmg+CiBzdHJ1Y3Qgc2lnYWN0aW9uIHsKLSB1bmlvbiB7Ci0gX19zaWdoYW5kbGVyX3QgX3NhX2hhbmRsZXI7CisgIHVuaW9uIHsKKyAgICBfX3NpZ2hhbmRsZXJfdCBfc2FfaGFuZGxlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCAoKl9zYV9zaWdhY3Rpb24pKGludCwgc3RydWN0IHNpZ2luZm8gKiwgdm9pZCAqKTsKLSB9IF91OwotIHNpZ3NldF90IHNhX21hc2s7Ci0gdW5zaWduZWQgbG9uZyBzYV9mbGFnczsKKyAgICB2b2lkKCogX3NhX3NpZ2FjdGlvbikgKGludCwgc3RydWN0IHNpZ2luZm8gKiwgdm9pZCAqKTsKKyAgfSBfdTsKKyAgc2lnc2V0X3Qgc2FfbWFzazsKKyAgdW5zaWduZWQgbG9uZyBzYV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCAoKnNhX3Jlc3RvcmVyKSh2b2lkKTsKKyAgdm9pZCgqIHNhX3Jlc3RvcmVyKSAodm9pZCk7CiB9OwogI2RlZmluZSBzYV9oYW5kbGVyIF91Ll9zYV9oYW5kbGVyCiAjZGVmaW5lIHNhX3NpZ2FjdGlvbiBfdS5fc2Ffc2lnYWN0aW9uCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3Qgc2lnYWx0c3RhY2sgewotIHZvaWQgX191c2VyICpzc19zcDsKLSBpbnQgc3NfZmxhZ3M7Ci0gc2l6ZV90IHNzX3NpemU7CisgIHZvaWQgX191c2VyICogc3Nfc3A7CisgIGludCBzc19mbGFnczsKKyAgc2l6ZV90IHNzX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzdGFja190OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3N0YXQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdC5oCmluZGV4IGIzNDI1ZGQuLjVhNzhjMDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdC5oCkBAIC0xOSw3MyArMTksNzMgQEAKICNpZm5kZWYgX0FTTUFSTV9TVEFUX0gKICNkZWZpbmUgX0FTTUFSTV9TVEFUX0gKIHN0cnVjdCBfX29sZF9rZXJuZWxfc3RhdCB7Ci0gdW5zaWduZWQgc2hvcnQgc3RfZGV2OworICB1bnNpZ25lZCBzaG9ydCBzdF9kZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN0X2lubzsKLSB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOwotIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOwotIHVuc2lnbmVkIHNob3J0IHN0X3VpZDsKKyAgdW5zaWduZWQgc2hvcnQgc3RfaW5vOworICB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOworICB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKKyAgdW5zaWduZWQgc2hvcnQgc3RfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdF9naWQ7Ci0gdW5zaWduZWQgc2hvcnQgc3RfcmRldjsKLSB1bnNpZ25lZCBsb25nIHN0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgc2hvcnQgc3RfZ2lkOworICB1bnNpZ25lZCBzaG9ydCBzdF9yZGV2OworICB1bnNpZ25lZCBsb25nIHN0X3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKIH07CiAjZGVmaW5lIFNUQVRfSEFWRV9OU0VDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHN0YXQgewotIHVuc2lnbmVkIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGxvbmcgc3RfaW5vOwotIHVuc2lnbmVkIHNob3J0IHN0X21vZGU7CisgIHVuc2lnbmVkIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBsb25nIHN0X2lubzsKKyAgdW5zaWduZWQgc2hvcnQgc3RfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgc2hvcnQgc3RfdWlkOwotIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKLSB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CisgIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOworICB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKKyAgdW5zaWduZWQgbG9uZyBzdF9yZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOwotIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOworICB1bnNpZ25lZCBsb25nIHN0X2Jsb2NrczsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOwotIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDQ7Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDU7CisgIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDQ7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ1OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3RhdDY0IHsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGNoYXIgX19wYWQwWzRdOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBjaGFyIF9fcGFkMFs0XTsKICNkZWZpbmUgU1RBVDY0X0hBU19CUk9LRU5fU1RfSU5PIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3N0X2lubzsKLSB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKLSB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgbG9uZyBzdF91aWQ7CisgIHVuc2lnbmVkIGxvbmcgX19zdF9pbm87CisgIHVuc2lnbmVkIGludCBzdF9tb2RlOworICB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7CisgIHVuc2lnbmVkIGxvbmcgc3RfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2dpZDsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfcmRldjsKLSB1bnNpZ25lZCBjaGFyIF9fcGFkM1s0XTsKLSBsb25nIGxvbmcgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9naWQ7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OworICB1bnNpZ25lZCBjaGFyIF9fcGFkM1s0XTsKKyAgbG9uZyBsb25nIHN0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfYmxvY2tzOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9ibG9ja3M7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0ZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdGZzLmgKaW5kZXggZDFmM2I4MS4uNjBjY2Q2YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3N0YXRmcy5oCkBAIC0xOCw3ICsxOCw3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0FTTUFSTV9TVEFURlNfSAogI2RlZmluZSBfQVNNQVJNX1NUQVRGU19ICi0jZGVmaW5lIEFSQ0hfUEFDS19TVEFURlM2NCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsYWxpZ25lZCg0KSkpCisjZGVmaW5lIEFSQ0hfUEFDS19TVEFURlM2NCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKQogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3N0YXRmcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS91bmlzdGQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vdW5pc3RkLmgKaW5kZXggYmU5ZjM2Zi4uMzJmNjY4OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS91bmlzdGQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3VuaXN0ZC5oCkBAIC0yMSw0NjQgKzIxLDQ3MCBAQAogI2RlZmluZSBfX05SX09BQklfU1lTQ0FMTF9CQVNFIDB4OTAwMDAwCiAjZGVmaW5lIF9fTlJfU1lTQ0FMTF9CQVNFIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcmVzdGFydF9zeXNjYWxsIChfX05SX1NZU0NBTExfQkFTRSsgMCkKLSNkZWZpbmUgX19OUl9leGl0IChfX05SX1NZU0NBTExfQkFTRSsgMSkKLSNkZWZpbmUgX19OUl9mb3JrIChfX05SX1NZU0NBTExfQkFTRSsgMikKLSNkZWZpbmUgX19OUl9yZWFkIChfX05SX1NZU0NBTExfQkFTRSsgMykKKyNkZWZpbmUgX19OUl9yZXN0YXJ0X3N5c2NhbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMCkKKyNkZWZpbmUgX19OUl9leGl0IChfX05SX1NZU0NBTExfQkFTRSArIDEpCisjZGVmaW5lIF9fTlJfZm9yayAoX19OUl9TWVNDQUxMX0JBU0UgKyAyKQorI2RlZmluZSBfX05SX3JlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfd3JpdGUgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0KQotI2RlZmluZSBfX05SX29wZW4gKF9fTlJfU1lTQ0FMTF9CQVNFKyA1KQotI2RlZmluZSBfX05SX2Nsb3NlIChfX05SX1NZU0NBTExfQkFTRSsgNikKLSNkZWZpbmUgX19OUl9jcmVhdCAoX19OUl9TWVNDQUxMX0JBU0UrIDgpCisjZGVmaW5lIF9fTlJfd3JpdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNCkKKyNkZWZpbmUgX19OUl9vcGVuIChfX05SX1NZU0NBTExfQkFTRSArIDUpCisjZGVmaW5lIF9fTlJfY2xvc2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNikKKyNkZWZpbmUgX19OUl9jcmVhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9saW5rIChfX05SX1NZU0NBTExfQkFTRSsgOSkKLSNkZWZpbmUgX19OUl91bmxpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFKyAxMCkKLSNkZWZpbmUgX19OUl9leGVjdmUgKF9fTlJfU1lTQ0FMTF9CQVNFKyAxMSkKLSNkZWZpbmUgX19OUl9jaGRpciAoX19OUl9TWVNDQUxMX0JBU0UrIDEyKQorI2RlZmluZSBfX05SX2xpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOSkKKyNkZWZpbmUgX19OUl91bmxpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTApCisjZGVmaW5lIF9fTlJfZXhlY3ZlIChfX05SX1NZU0NBTExfQkFTRSArIDExKQorI2RlZmluZSBfX05SX2NoZGlyIChfX05SX1NZU0NBTExfQkFTRSArIDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl90aW1lIChfX05SX1NZU0NBTExfQkFTRSsgMTMpCi0jZGVmaW5lIF9fTlJfbWtub2QgKF9fTlJfU1lTQ0FMTF9CQVNFKyAxNCkKLSNkZWZpbmUgX19OUl9jaG1vZCAoX19OUl9TWVNDQUxMX0JBU0UrIDE1KQotI2RlZmluZSBfX05SX2xjaG93biAoX19OUl9TWVNDQUxMX0JBU0UrIDE2KQorI2RlZmluZSBfX05SX3RpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTMpCisjZGVmaW5lIF9fTlJfbWtub2QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQpCisjZGVmaW5lIF9fTlJfY2htb2QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUpCisjZGVmaW5lIF9fTlJfbGNob3duIChfX05SX1NZU0NBTExfQkFTRSArIDE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9sc2VlayAoX19OUl9TWVNDQUxMX0JBU0UrIDE5KQotI2RlZmluZSBfX05SX2dldHBpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDIwKQotI2RlZmluZSBfX05SX21vdW50IChfX05SX1NZU0NBTExfQkFTRSsgMjEpCi0jZGVmaW5lIF9fTlJfdW1vdW50IChfX05SX1NZU0NBTExfQkFTRSsgMjIpCisjZGVmaW5lIF9fTlJfbHNlZWsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkpCisjZGVmaW5lIF9fTlJfZ2V0cGlkIChfX05SX1NZU0NBTExfQkFTRSArIDIwKQorI2RlZmluZSBfX05SX21vdW50IChfX05SX1NZU0NBTExfQkFTRSArIDIxKQorI2RlZmluZSBfX05SX3Vtb3VudCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2V0dWlkIChfX05SX1NZU0NBTExfQkFTRSsgMjMpCi0jZGVmaW5lIF9fTlJfZ2V0dWlkIChfX05SX1NZU0NBTExfQkFTRSsgMjQpCi0jZGVmaW5lIF9fTlJfc3RpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyNSkKLSNkZWZpbmUgX19OUl9wdHJhY2UgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyNikKKyNkZWZpbmUgX19OUl9zZXR1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMpCisjZGVmaW5lIF9fTlJfZ2V0dWlkIChfX05SX1NZU0NBTExfQkFTRSArIDI0KQorI2RlZmluZSBfX05SX3N0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDI1KQorI2RlZmluZSBfX05SX3B0cmFjZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfYWxhcm0gKF9fTlJfU1lTQ0FMTF9CQVNFKyAyNykKLSNkZWZpbmUgX19OUl9wYXVzZSAoX19OUl9TWVNDQUxMX0JBU0UrIDI5KQotI2RlZmluZSBfX05SX3V0aW1lIChfX05SX1NZU0NBTExfQkFTRSsgMzApCi0jZGVmaW5lIF9fTlJfYWNjZXNzIChfX05SX1NZU0NBTExfQkFTRSsgMzMpCisjZGVmaW5lIF9fTlJfYWxhcm0gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcpCisjZGVmaW5lIF9fTlJfcGF1c2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkpCisjZGVmaW5lIF9fTlJfdXRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzApCisjZGVmaW5lIF9fTlJfYWNjZXNzIChfX05SX1NZU0NBTExfQkFTRSArIDMzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9uaWNlIChfX05SX1NZU0NBTExfQkFTRSsgMzQpCi0jZGVmaW5lIF9fTlJfc3luYyAoX19OUl9TWVNDQUxMX0JBU0UrIDM2KQotI2RlZmluZSBfX05SX2tpbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzNykKLSNkZWZpbmUgX19OUl9yZW5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzOCkKKyNkZWZpbmUgX19OUl9uaWNlIChfX05SX1NZU0NBTExfQkFTRSArIDM0KQorI2RlZmluZSBfX05SX3N5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzYpCisjZGVmaW5lIF9fTlJfa2lsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNykKKyNkZWZpbmUgX19OUl9yZW5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX21rZGlyIChfX05SX1NZU0NBTExfQkFTRSsgMzkpCi0jZGVmaW5lIF9fTlJfcm1kaXIgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0MCkKLSNkZWZpbmUgX19OUl9kdXAgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0MSkKLSNkZWZpbmUgX19OUl9waXBlIChfX05SX1NZU0NBTExfQkFTRSsgNDIpCisjZGVmaW5lIF9fTlJfbWtkaXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzkpCisjZGVmaW5lIF9fTlJfcm1kaXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDApCisjZGVmaW5lIF9fTlJfZHVwIChfX05SX1NZU0NBTExfQkFTRSArIDQxKQorI2RlZmluZSBfX05SX3BpcGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3RpbWVzIChfX05SX1NZU0NBTExfQkFTRSsgNDMpCi0jZGVmaW5lIF9fTlJfYnJrIChfX05SX1NZU0NBTExfQkFTRSsgNDUpCi0jZGVmaW5lIF9fTlJfc2V0Z2lkIChfX05SX1NZU0NBTExfQkFTRSsgNDYpCi0jZGVmaW5lIF9fTlJfZ2V0Z2lkIChfX05SX1NZU0NBTExfQkFTRSsgNDcpCisjZGVmaW5lIF9fTlJfdGltZXMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDMpCisjZGVmaW5lIF9fTlJfYnJrIChfX05SX1NZU0NBTExfQkFTRSArIDQ1KQorI2RlZmluZSBfX05SX3NldGdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA0NikKKyNkZWZpbmUgX19OUl9nZXRnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldGV1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0OSkKLSNkZWZpbmUgX19OUl9nZXRlZ2lkIChfX05SX1NZU0NBTExfQkFTRSsgNTApCi0jZGVmaW5lIF9fTlJfYWNjdCAoX19OUl9TWVNDQUxMX0JBU0UrIDUxKQotI2RlZmluZSBfX05SX3Vtb3VudDIgKF9fTlJfU1lTQ0FMTF9CQVNFKyA1MikKKyNkZWZpbmUgX19OUl9nZXRldWlkIChfX05SX1NZU0NBTExfQkFTRSArIDQ5KQorI2RlZmluZSBfX05SX2dldGVnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTApCisjZGVmaW5lIF9fTlJfYWNjdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA1MSkKKyNkZWZpbmUgX19OUl91bW91bnQyIChfX05SX1NZU0NBTExfQkFTRSArIDUyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9pb2N0bCAoX19OUl9TWVNDQUxMX0JBU0UrIDU0KQotI2RlZmluZSBfX05SX2ZjbnRsIChfX05SX1NZU0NBTExfQkFTRSsgNTUpCi0jZGVmaW5lIF9fTlJfc2V0cGdpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDU3KQotI2RlZmluZSBfX05SX3VtYXNrIChfX05SX1NZU0NBTExfQkFTRSsgNjApCisjZGVmaW5lIF9fTlJfaW9jdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTQpCisjZGVmaW5lIF9fTlJfZmNudGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTUpCisjZGVmaW5lIF9fTlJfc2V0cGdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA1NykKKyNkZWZpbmUgX19OUl91bWFzayAoX19OUl9TWVNDQUxMX0JBU0UgKyA2MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfY2hyb290IChfX05SX1NZU0NBTExfQkFTRSsgNjEpCi0jZGVmaW5lIF9fTlJfdXN0YXQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2MikKLSNkZWZpbmUgX19OUl9kdXAyIChfX05SX1NZU0NBTExfQkFTRSsgNjMpCi0jZGVmaW5lIF9fTlJfZ2V0cHBpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDY0KQorI2RlZmluZSBfX05SX2Nocm9vdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA2MSkKKyNkZWZpbmUgX19OUl91c3RhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA2MikKKyNkZWZpbmUgX19OUl9kdXAyIChfX05SX1NZU0NBTExfQkFTRSArIDYzKQorI2RlZmluZSBfX05SX2dldHBwaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldHBncnAgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2NSkKLSNkZWZpbmUgX19OUl9zZXRzaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2NikKLSNkZWZpbmUgX19OUl9zaWdhY3Rpb24gKF9fTlJfU1lTQ0FMTF9CQVNFKyA2NykKLSNkZWZpbmUgX19OUl9zZXRyZXVpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDcwKQorI2RlZmluZSBfX05SX2dldHBncnAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjUpCisjZGVmaW5lIF9fTlJfc2V0c2lkIChfX05SX1NZU0NBTExfQkFTRSArIDY2KQorI2RlZmluZSBfX05SX3NpZ2FjdGlvbiAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NykKKyNkZWZpbmUgX19OUl9zZXRyZXVpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA3MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2V0cmVnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3MSkKLSNkZWZpbmUgX19OUl9zaWdzdXNwZW5kIChfX05SX1NZU0NBTExfQkFTRSsgNzIpCi0jZGVmaW5lIF9fTlJfc2lncGVuZGluZyAoX19OUl9TWVNDQUxMX0JBU0UrIDczKQotI2RlZmluZSBfX05SX3NldGhvc3RuYW1lIChfX05SX1NZU0NBTExfQkFTRSsgNzQpCisjZGVmaW5lIF9fTlJfc2V0cmVnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzEpCisjZGVmaW5lIF9fTlJfc2lnc3VzcGVuZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA3MikKKyNkZWZpbmUgX19OUl9zaWdwZW5kaW5nIChfX05SX1NZU0NBTExfQkFTRSArIDczKQorI2RlZmluZSBfX05SX3NldGhvc3RuYW1lIChfX05SX1NZU0NBTExfQkFTRSArIDc0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3NSkKLSNkZWZpbmUgX19OUl9nZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3NikKLSNkZWZpbmUgX19OUl9nZXRydXNhZ2UgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3NykKLSNkZWZpbmUgX19OUl9nZXR0aW1lb2ZkYXkgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3OCkKKyNkZWZpbmUgX19OUl9zZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzUpCisjZGVmaW5lIF9fTlJfZ2V0cmxpbWl0IChfX05SX1NZU0NBTExfQkFTRSArIDc2KQorI2RlZmluZSBfX05SX2dldHJ1c2FnZSAoX19OUl9TWVNDQUxMX0JBU0UgKyA3NykKKyNkZWZpbmUgX19OUl9nZXR0aW1lb2ZkYXkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NldHRpbWVvZmRheSAoX19OUl9TWVNDQUxMX0JBU0UrIDc5KQotI2RlZmluZSBfX05SX2dldGdyb3VwcyAoX19OUl9TWVNDQUxMX0JBU0UrIDgwKQotI2RlZmluZSBfX05SX3NldGdyb3VwcyAoX19OUl9TWVNDQUxMX0JBU0UrIDgxKQotI2RlZmluZSBfX05SX3NlbGVjdCAoX19OUl9TWVNDQUxMX0JBU0UrIDgyKQorI2RlZmluZSBfX05SX3NldHRpbWVvZmRheSAoX19OUl9TWVNDQUxMX0JBU0UgKyA3OSkKKyNkZWZpbmUgX19OUl9nZXRncm91cHMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODApCisjZGVmaW5lIF9fTlJfc2V0Z3JvdXBzIChfX05SX1NZU0NBTExfQkFTRSArIDgxKQorI2RlZmluZSBfX05SX3NlbGVjdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA4MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc3ltbGluayAoX19OUl9TWVNDQUxMX0JBU0UrIDgzKQotI2RlZmluZSBfX05SX3JlYWRsaW5rIChfX05SX1NZU0NBTExfQkFTRSsgODUpCi0jZGVmaW5lIF9fTlJfdXNlbGliIChfX05SX1NZU0NBTExfQkFTRSsgODYpCi0jZGVmaW5lIF9fTlJfc3dhcG9uIChfX05SX1NZU0NBTExfQkFTRSsgODcpCisjZGVmaW5lIF9fTlJfc3ltbGluayAoX19OUl9TWVNDQUxMX0JBU0UgKyA4MykKKyNkZWZpbmUgX19OUl9yZWFkbGluayAoX19OUl9TWVNDQUxMX0JBU0UgKyA4NSkKKyNkZWZpbmUgX19OUl91c2VsaWIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODYpCisjZGVmaW5lIF9fTlJfc3dhcG9uIChfX05SX1NZU0NBTExfQkFTRSArIDg3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZWJvb3QgKF9fTlJfU1lTQ0FMTF9CQVNFKyA4OCkKLSNkZWZpbmUgX19OUl9yZWFkZGlyIChfX05SX1NZU0NBTExfQkFTRSsgODkpCi0jZGVmaW5lIF9fTlJfbW1hcCAoX19OUl9TWVNDQUxMX0JBU0UrIDkwKQotI2RlZmluZSBfX05SX211bm1hcCAoX19OUl9TWVNDQUxMX0JBU0UrIDkxKQorI2RlZmluZSBfX05SX3JlYm9vdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA4OCkKKyNkZWZpbmUgX19OUl9yZWFkZGlyIChfX05SX1NZU0NBTExfQkFTRSArIDg5KQorI2RlZmluZSBfX05SX21tYXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTApCisjZGVmaW5lIF9fTlJfbXVubWFwIChfX05SX1NZU0NBTExfQkFTRSArIDkxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl90cnVuY2F0ZSAoX19OUl9TWVNDQUxMX0JBU0UrIDkyKQotI2RlZmluZSBfX05SX2Z0cnVuY2F0ZSAoX19OUl9TWVNDQUxMX0JBU0UrIDkzKQotI2RlZmluZSBfX05SX2ZjaG1vZCAoX19OUl9TWVNDQUxMX0JBU0UrIDk0KQotI2RlZmluZSBfX05SX2ZjaG93biAoX19OUl9TWVNDQUxMX0JBU0UrIDk1KQorI2RlZmluZSBfX05SX3RydW5jYXRlIChfX05SX1NZU0NBTExfQkFTRSArIDkyKQorI2RlZmluZSBfX05SX2Z0cnVuY2F0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyA5MykKKyNkZWZpbmUgX19OUl9mY2htb2QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTQpCisjZGVmaW5lIF9fTlJfZmNob3duIChfX05SX1NZU0NBTExfQkFTRSArIDk1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRwcmlvcml0eSAoX19OUl9TWVNDQUxMX0JBU0UrIDk2KQotI2RlZmluZSBfX05SX3NldHByaW9yaXR5IChfX05SX1NZU0NBTExfQkFTRSsgOTcpCi0jZGVmaW5lIF9fTlJfc3RhdGZzIChfX05SX1NZU0NBTExfQkFTRSsgOTkpCi0jZGVmaW5lIF9fTlJfZnN0YXRmcyAoX19OUl9TWVNDQUxMX0JBU0UrMTAwKQorI2RlZmluZSBfX05SX2dldHByaW9yaXR5IChfX05SX1NZU0NBTExfQkFTRSArIDk2KQorI2RlZmluZSBfX05SX3NldHByaW9yaXR5IChfX05SX1NZU0NBTExfQkFTRSArIDk3KQorI2RlZmluZSBfX05SX3N0YXRmcyAoX19OUl9TWVNDQUxMX0JBU0UgKyA5OSkKKyNkZWZpbmUgX19OUl9mc3RhdGZzIChfX05SX1NZU0NBTExfQkFTRSArIDEwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc29ja2V0Y2FsbCAoX19OUl9TWVNDQUxMX0JBU0UrMTAyKQotI2RlZmluZSBfX05SX3N5c2xvZyAoX19OUl9TWVNDQUxMX0JBU0UrMTAzKQotI2RlZmluZSBfX05SX3NldGl0aW1lciAoX19OUl9TWVNDQUxMX0JBU0UrMTA0KQotI2RlZmluZSBfX05SX2dldGl0aW1lciAoX19OUl9TWVNDQUxMX0JBU0UrMTA1KQorI2RlZmluZSBfX05SX3NvY2tldGNhbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAyKQorI2RlZmluZSBfX05SX3N5c2xvZyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDMpCisjZGVmaW5lIF9fTlJfc2V0aXRpbWVyIChfX05SX1NZU0NBTExfQkFTRSArIDEwNCkKKyNkZWZpbmUgX19OUl9nZXRpdGltZXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zdGF0IChfX05SX1NZU0NBTExfQkFTRSsxMDYpCi0jZGVmaW5lIF9fTlJfbHN0YXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzEwNykKLSNkZWZpbmUgX19OUl9mc3RhdCAoX19OUl9TWVNDQUxMX0JBU0UrMTA4KQotI2RlZmluZSBfX05SX3ZoYW5ndXAgKF9fTlJfU1lTQ0FMTF9CQVNFKzExMSkKKyNkZWZpbmUgX19OUl9zdGF0IChfX05SX1NZU0NBTExfQkFTRSArIDEwNikKKyNkZWZpbmUgX19OUl9sc3RhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDcpCisjZGVmaW5lIF9fTlJfZnN0YXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTA4KQorI2RlZmluZSBfX05SX3ZoYW5ndXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zeXNjYWxsIChfX05SX1NZU0NBTExfQkFTRSsxMTMpCi0jZGVmaW5lIF9fTlJfd2FpdDQgKF9fTlJfU1lTQ0FMTF9CQVNFKzExNCkKLSNkZWZpbmUgX19OUl9zd2Fwb2ZmIChfX05SX1NZU0NBTExfQkFTRSsxMTUpCi0jZGVmaW5lIF9fTlJfc3lzaW5mbyAoX19OUl9TWVNDQUxMX0JBU0UrMTE2KQorI2RlZmluZSBfX05SX3N5c2NhbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTEzKQorI2RlZmluZSBfX05SX3dhaXQ0IChfX05SX1NZU0NBTExfQkFTRSArIDExNCkKKyNkZWZpbmUgX19OUl9zd2Fwb2ZmIChfX05SX1NZU0NBTExfQkFTRSArIDExNSkKKyNkZWZpbmUgX19OUl9zeXNpbmZvIChfX05SX1NZU0NBTExfQkFTRSArIDExNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfaXBjIChfX05SX1NZU0NBTExfQkFTRSsxMTcpCi0jZGVmaW5lIF9fTlJfZnN5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFKzExOCkKLSNkZWZpbmUgX19OUl9zaWdyZXR1cm4gKF9fTlJfU1lTQ0FMTF9CQVNFKzExOSkKLSNkZWZpbmUgX19OUl9jbG9uZSAoX19OUl9TWVNDQUxMX0JBU0UrMTIwKQorI2RlZmluZSBfX05SX2lwYyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTcpCisjZGVmaW5lIF9fTlJfZnN5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTE4KQorI2RlZmluZSBfX05SX3NpZ3JldHVybiAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTkpCisjZGVmaW5lIF9fTlJfY2xvbmUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIChfX05SX1NZU0NBTExfQkFTRSsxMjEpCi0jZGVmaW5lIF9fTlJfdW5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyMikKLSNkZWZpbmUgX19OUl9hZGp0aW1leCAoX19OUl9TWVNDQUxMX0JBU0UrMTI0KQotI2RlZmluZSBfX05SX21wcm90ZWN0IChfX05SX1NZU0NBTExfQkFTRSsxMjUpCisjZGVmaW5lIF9fTlJfc2V0ZG9tYWlubmFtZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjEpCisjZGVmaW5lIF9fTlJfdW5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTIyKQorI2RlZmluZSBfX05SX2FkanRpbWV4IChfX05SX1NZU0NBTExfQkFTRSArIDEyNCkKKyNkZWZpbmUgX19OUl9tcHJvdGVjdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NpZ3Byb2NtYXNrIChfX05SX1NZU0NBTExfQkFTRSsxMjYpCi0jZGVmaW5lIF9fTlJfaW5pdF9tb2R1bGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyOCkKLSNkZWZpbmUgX19OUl9kZWxldGVfbW9kdWxlIChfX05SX1NZU0NBTExfQkFTRSsxMjkpCi0jZGVmaW5lIF9fTlJfcXVvdGFjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzEzMSkKKyNkZWZpbmUgX19OUl9zaWdwcm9jbWFzayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjYpCisjZGVmaW5lIF9fTlJfaW5pdF9tb2R1bGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTI4KQorI2RlZmluZSBfX05SX2RlbGV0ZV9tb2R1bGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTI5KQorI2RlZmluZSBfX05SX3F1b3RhY3RsIChfX05SX1NZU0NBTExfQkFTRSArIDEzMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0cGdpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTMyKQotI2RlZmluZSBfX05SX2ZjaGRpciAoX19OUl9TWVNDQUxMX0JBU0UrMTMzKQotI2RlZmluZSBfX05SX2JkZmx1c2ggKF9fTlJfU1lTQ0FMTF9CQVNFKzEzNCkKLSNkZWZpbmUgX19OUl9zeXNmcyAoX19OUl9TWVNDQUxMX0JBU0UrMTM1KQorI2RlZmluZSBfX05SX2dldHBnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTMyKQorI2RlZmluZSBfX05SX2ZjaGRpciAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzMpCisjZGVmaW5lIF9fTlJfYmRmbHVzaCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzQpCisjZGVmaW5lIF9fTlJfc3lzZnMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTM1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9wZXJzb25hbGl0eSAoX19OUl9TWVNDQUxMX0JBU0UrMTM2KQotI2RlZmluZSBfX05SX3NldGZzdWlkIChfX05SX1NZU0NBTExfQkFTRSsxMzgpCi0jZGVmaW5lIF9fTlJfc2V0ZnNnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzEzOSkKLSNkZWZpbmUgX19OUl9fbGxzZWVrIChfX05SX1NZU0NBTExfQkFTRSsxNDApCisjZGVmaW5lIF9fTlJfcGVyc29uYWxpdHkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTM2KQorI2RlZmluZSBfX05SX3NldGZzdWlkIChfX05SX1NZU0NBTExfQkFTRSArIDEzOCkKKyNkZWZpbmUgX19OUl9zZXRmc2dpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzkpCisjZGVmaW5lIF9fTlJfX2xsc2VlayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldGRlbnRzIChfX05SX1NZU0NBTExfQkFTRSsxNDEpCi0jZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAoX19OUl9TWVNDQUxMX0JBU0UrMTQyKQotI2RlZmluZSBfX05SX2Zsb2NrIChfX05SX1NZU0NBTExfQkFTRSsxNDMpCi0jZGVmaW5lIF9fTlJfbXN5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0NCkKKyNkZWZpbmUgX19OUl9nZXRkZW50cyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDEpCisjZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDIpCisjZGVmaW5lIF9fTlJfZmxvY2sgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQzKQorI2RlZmluZSBfX05SX21zeW5jIChfX05SX1NZU0NBTExfQkFTRSArIDE0NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcmVhZHYgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0NSkKLSNkZWZpbmUgX19OUl93cml0ZXYgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0NikKLSNkZWZpbmUgX19OUl9nZXRzaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0NykKLSNkZWZpbmUgX19OUl9mZGF0YXN5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0OCkKKyNkZWZpbmUgX19OUl9yZWFkdiAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDUpCisjZGVmaW5lIF9fTlJfd3JpdGV2IChfX05SX1NZU0NBTExfQkFTRSArIDE0NikKKyNkZWZpbmUgX19OUl9nZXRzaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ3KQorI2RlZmluZSBfX05SX2ZkYXRhc3luYyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX19zeXNjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0OSkKLSNkZWZpbmUgX19OUl9tbG9jayAoX19OUl9TWVNDQUxMX0JBU0UrMTUwKQotI2RlZmluZSBfX05SX211bmxvY2sgKF9fTlJfU1lTQ0FMTF9CQVNFKzE1MSkKLSNkZWZpbmUgX19OUl9tbG9ja2FsbCAoX19OUl9TWVNDQUxMX0JBU0UrMTUyKQorI2RlZmluZSBfX05SX19zeXNjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ5KQorI2RlZmluZSBfX05SX21sb2NrIChfX05SX1NZU0NBTExfQkFTRSArIDE1MCkKKyNkZWZpbmUgX19OUl9tdW5sb2NrIChfX05SX1NZU0NBTExfQkFTRSArIDE1MSkKKyNkZWZpbmUgX19OUl9tbG9ja2FsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX211bmxvY2thbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzE1MykKLSNkZWZpbmUgX19OUl9zY2hlZF9zZXRwYXJhbSAoX19OUl9TWVNDQUxMX0JBU0UrMTU0KQotI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtIChfX05SX1NZU0NBTExfQkFTRSsxNTUpCi0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyIChfX05SX1NZU0NBTExfQkFTRSsxNTYpCisjZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTMpCisjZGVmaW5lIF9fTlJfc2NoZWRfc2V0cGFyYW0gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU0KQorI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtIChfX05SX1NZU0NBTExfQkFTRSArIDE1NSkKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zY2hlZF9nZXRzY2hlZHVsZXIgKF9fTlJfU1lTQ0FMTF9CQVNFKzE1NykKLSNkZWZpbmUgX19OUl9zY2hlZF95aWVsZCAoX19OUl9TWVNDQUxMX0JBU0UrMTU4KQotI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXggKF9fTlJfU1lTQ0FMTF9CQVNFKzE1OSkKLSNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluIChfX05SX1NZU0NBTExfQkFTRSsxNjApCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyIChfX05SX1NZU0NBTExfQkFTRSArIDE1NykKKyNkZWZpbmUgX19OUl9zY2hlZF95aWVsZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTgpCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTkpCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbiAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAoX19OUl9TWVNDQUxMX0JBU0UrMTYxKQotI2RlZmluZSBfX05SX25hbm9zbGVlcCAoX19OUl9TWVNDQUxMX0JBU0UrMTYyKQotI2RlZmluZSBfX05SX21yZW1hcCAoX19OUl9TWVNDQUxMX0JBU0UrMTYzKQotI2RlZmluZSBfX05SX3NldHJlc3VpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTY0KQorI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjEpCisjZGVmaW5lIF9fTlJfbmFub3NsZWVwIChfX05SX1NZU0NBTExfQkFTRSArIDE2MikKKyNkZWZpbmUgX19OUl9tcmVtYXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYzKQorI2RlZmluZSBfX05SX3NldHJlc3VpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldHJlc3VpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTY1KQotI2RlZmluZSBfX05SX3BvbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzE2OCkKLSNkZWZpbmUgX19OUl9uZnNzZXJ2Y3RsIChfX05SX1NZU0NBTExfQkFTRSsxNjkpCi0jZGVmaW5lIF9fTlJfc2V0cmVzZ2lkIChfX05SX1NZU0NBTExfQkFTRSsxNzApCisjZGVmaW5lIF9fTlJfZ2V0cmVzdWlkIChfX05SX1NZU0NBTExfQkFTRSArIDE2NSkKKyNkZWZpbmUgX19OUl9wb2xsIChfX05SX1NZU0NBTExfQkFTRSArIDE2OCkKKyNkZWZpbmUgX19OUl9uZnNzZXJ2Y3RsIChfX05SX1NZU0NBTExfQkFTRSArIDE2OSkKKyNkZWZpbmUgX19OUl9zZXRyZXNnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRyZXNnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE3MSkKLSNkZWZpbmUgX19OUl9wcmN0bCAoX19OUl9TWVNDQUxMX0JBU0UrMTcyKQotI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAoX19OUl9TWVNDQUxMX0JBU0UrMTczKQotI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAoX19OUl9TWVNDQUxMX0JBU0UrMTc0KQorI2RlZmluZSBfX05SX2dldHJlc2dpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzEpCisjZGVmaW5lIF9fTlJfcHJjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcyKQorI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzMpCisjZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uIChfX05SX1NZU0NBTExfQkFTRSArIDE3NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgKF9fTlJfU1lTQ0FMTF9CQVNFKzE3NSkKLSNkZWZpbmUgX19OUl9ydF9zaWdwZW5kaW5nIChfX05SX1NZU0NBTExfQkFTRSsxNzYpCi0jZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0IChfX05SX1NZU0NBTExfQkFTRSsxNzcpCi0jZGVmaW5lIF9fTlJfcnRfc2lncXVldWVpbmZvIChfX05SX1NZU0NBTExfQkFTRSsxNzgpCisjZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc1KQorI2RlZmluZSBfX05SX3J0X3NpZ3BlbmRpbmcgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc2KQorI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzcpCisjZGVmaW5lIF9fTlJfcnRfc2lncXVldWVpbmZvIChfX05SX1NZU0NBTExfQkFTRSArIDE3OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcnRfc2lnc3VzcGVuZCAoX19OUl9TWVNDQUxMX0JBU0UrMTc5KQotI2RlZmluZSBfX05SX3ByZWFkNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4MCkKLSNkZWZpbmUgX19OUl9wd3JpdGU2NCAoX19OUl9TWVNDQUxMX0JBU0UrMTgxKQotI2RlZmluZSBfX05SX2Nob3duIChfX05SX1NZU0NBTExfQkFTRSsxODIpCisjZGVmaW5lIF9fTlJfcnRfc2lnc3VzcGVuZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzkpCisjZGVmaW5lIF9fTlJfcHJlYWQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODApCisjZGVmaW5lIF9fTlJfcHdyaXRlNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgxKQorI2RlZmluZSBfX05SX2Nob3duIChfX05SX1NZU0NBTExfQkFTRSArIDE4MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0Y3dkIChfX05SX1NZU0NBTExfQkFTRSsxODMpCi0jZGVmaW5lIF9fTlJfY2FwZ2V0IChfX05SX1NZU0NBTExfQkFTRSsxODQpCi0jZGVmaW5lIF9fTlJfY2Fwc2V0IChfX05SX1NZU0NBTExfQkFTRSsxODUpCi0jZGVmaW5lIF9fTlJfc2lnYWx0c3RhY2sgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4NikKKyNkZWZpbmUgX19OUl9nZXRjd2QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgzKQorI2RlZmluZSBfX05SX2NhcGdldCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODQpCisjZGVmaW5lIF9fTlJfY2Fwc2V0IChfX05SX1NZU0NBTExfQkFTRSArIDE4NSkKKyNkZWZpbmUgX19OUl9zaWdhbHRzdGFjayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NlbmRmaWxlIChfX05SX1NZU0NBTExfQkFTRSsxODcpCi0jZGVmaW5lIF9fTlJfdmZvcmsgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5MCkKLSNkZWZpbmUgX19OUl91Z2V0cmxpbWl0IChfX05SX1NZU0NBTExfQkFTRSsxOTEpCi0jZGVmaW5lIF9fTlJfbW1hcDIgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5MikKKyNkZWZpbmUgX19OUl9zZW5kZmlsZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODcpCisjZGVmaW5lIF9fTlJfdmZvcmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkwKQorI2RlZmluZSBfX05SX3VnZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkxKQorI2RlZmluZSBfX05SX21tYXAyIChfX05SX1NZU0NBTExfQkFTRSArIDE5MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdHJ1bmNhdGU2NCAoX19OUl9TWVNDQUxMX0JBU0UrMTkzKQotI2RlZmluZSBfX05SX2Z0cnVuY2F0ZTY0IChfX05SX1NZU0NBTExfQkFTRSsxOTQpCi0jZGVmaW5lIF9fTlJfc3RhdDY0IChfX05SX1NZU0NBTExfQkFTRSsxOTUpCi0jZGVmaW5lIF9fTlJfbHN0YXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UrMTk2KQorI2RlZmluZSBfX05SX3RydW5jYXRlNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkzKQorI2RlZmluZSBfX05SX2Z0cnVuY2F0ZTY0IChfX05SX1NZU0NBTExfQkFTRSArIDE5NCkKKyNkZWZpbmUgX19OUl9zdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk1KQorI2RlZmluZSBfX05SX2xzdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9mc3RhdDY0IChfX05SX1NZU0NBTExfQkFTRSsxOTcpCi0jZGVmaW5lIF9fTlJfbGNob3duMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5OCkKLSNkZWZpbmUgX19OUl9nZXR1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMTk5KQotI2RlZmluZSBfX05SX2dldGdpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMDApCisjZGVmaW5lIF9fTlJfZnN0YXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTcpCisjZGVmaW5lIF9fTlJfbGNob3duMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk4KQorI2RlZmluZSBfX05SX2dldHVpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDE5OSkKKyNkZWZpbmUgX19OUl9nZXRnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldGV1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjAxKQotI2RlZmluZSBfX05SX2dldGVnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjAyKQotI2RlZmluZSBfX05SX3NldHJldWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwMykKLSNkZWZpbmUgX19OUl9zZXRyZWdpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMDQpCisjZGVmaW5lIF9fTlJfZ2V0ZXVpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwMSkKKyNkZWZpbmUgX19OUl9nZXRlZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAyKQorI2RlZmluZSBfX05SX3NldHJldWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAzKQorI2RlZmluZSBfX05SX3NldHJlZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRncm91cHMzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjA1KQotI2RlZmluZSBfX05SX3NldGdyb3VwczMyIChfX05SX1NZU0NBTExfQkFTRSsyMDYpCi0jZGVmaW5lIF9fTlJfZmNob3duMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwNykKLSNkZWZpbmUgX19OUl9zZXRyZXN1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjA4KQorI2RlZmluZSBfX05SX2dldGdyb3VwczMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwNSkKKyNkZWZpbmUgX19OUl9zZXRncm91cHMzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDYpCisjZGVmaW5lIF9fTlJfZmNob3duMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA3KQorI2RlZmluZSBfX05SX3NldHJlc3VpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0cmVzdWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwOSkKLSNkZWZpbmUgX19OUl9zZXRyZXNnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjEwKQotI2RlZmluZSBfX05SX2dldHJlc2dpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMTEpCi0jZGVmaW5lIF9fTlJfY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UrMjEyKQorI2RlZmluZSBfX05SX2dldHJlc3VpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwOSkKKyNkZWZpbmUgX19OUl9zZXRyZXNnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTApCisjZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjExKQorI2RlZmluZSBfX05SX2Nob3duMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZXR1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjEzKQotI2RlZmluZSBfX05SX3NldGdpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMTQpCi0jZGVmaW5lIF9fTlJfc2V0ZnN1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjE1KQotI2RlZmluZSBfX05SX3NldGZzZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIxNikKKyNkZWZpbmUgX19OUl9zZXR1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTMpCisjZGVmaW5lIF9fTlJfc2V0Z2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE0KQorI2RlZmluZSBfX05SX3NldGZzdWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE1KQorI2RlZmluZSBfX05SX3NldGZzZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRkZW50czY0IChfX05SX1NZU0NBTExfQkFTRSsyMTcpCi0jZGVmaW5lIF9fTlJfcGl2b3Rfcm9vdCAoX19OUl9TWVNDQUxMX0JBU0UrMjE4KQotI2RlZmluZSBfX05SX21pbmNvcmUgKF9fTlJfU1lTQ0FMTF9CQVNFKzIxOSkKLSNkZWZpbmUgX19OUl9tYWR2aXNlIChfX05SX1NZU0NBTExfQkFTRSsyMjApCisjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTcpCisjZGVmaW5lIF9fTlJfcGl2b3Rfcm9vdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTgpCisjZGVmaW5lIF9fTlJfbWluY29yZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTkpCisjZGVmaW5lIF9fTlJfbWFkdmlzZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2ZjbnRsNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzIyMSkKLSNkZWZpbmUgX19OUl9nZXR0aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzIyNCkKLSNkZWZpbmUgX19OUl9yZWFkYWhlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzIyNSkKLSNkZWZpbmUgX19OUl9zZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjI2KQorI2RlZmluZSBfX05SX2ZjbnRsNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIxKQorI2RlZmluZSBfX05SX2dldHRpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjQpCisjZGVmaW5lIF9fTlJfcmVhZGFoZWFkIChfX05SX1NZU0NBTExfQkFTRSArIDIyNSkKKyNkZWZpbmUgX19OUl9zZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2xzZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjI3KQotI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjI4KQotI2RlZmluZSBfX05SX2dldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMjkpCi0jZGVmaW5lIF9fTlJfbGdldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMzApCisjZGVmaW5lIF9fTlJfbHNldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIyNykKKyNkZWZpbmUgX19OUl9mc2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI4KQorI2RlZmluZSBfX05SX2dldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIyOSkKKyNkZWZpbmUgX19OUl9sZ2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9mZ2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzMSkKLSNkZWZpbmUgX19OUl9saXN0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzMikKLSNkZWZpbmUgX19OUl9sbGlzdHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMzMpCi0jZGVmaW5lIF9fTlJfZmxpc3R4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjM0KQorI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzEpCisjZGVmaW5lIF9fTlJfbGlzdHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzMikKKyNkZWZpbmUgX19OUl9sbGlzdHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzMykKKyNkZWZpbmUgX19OUl9mbGlzdHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcmVtb3ZleGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzNSkKLSNkZWZpbmUgX19OUl9scmVtb3ZleGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzNikKLSNkZWZpbmUgX19OUl9mcmVtb3ZleGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzNykKLSNkZWZpbmUgX19OUl90a2lsbCAoX19OUl9TWVNDQUxMX0JBU0UrMjM4KQorI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzNSkKKyNkZWZpbmUgX19OUl9scmVtb3ZleGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM2KQorI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzcpCisjZGVmaW5lIF9fTlJfdGtpbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZW5kZmlsZTY0IChfX05SX1NZU0NBTExfQkFTRSsyMzkpCi0jZGVmaW5lIF9fTlJfZnV0ZXggKF9fTlJfU1lTQ0FMTF9CQVNFKzI0MCkKLSNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAoX19OUl9TWVNDQUxMX0JBU0UrMjQxKQotI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5IChfX05SX1NZU0NBTExfQkFTRSsyNDIpCisjZGVmaW5lIF9fTlJfc2VuZGZpbGU2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzkpCisjZGVmaW5lIF9fTlJfZnV0ZXggKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQwKQorI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5IChfX05SX1NZU0NBTExfQkFTRSArIDI0MSkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2lvX3NldHVwIChfX05SX1NZU0NBTExfQkFTRSsyNDMpCi0jZGVmaW5lIF9fTlJfaW9fZGVzdHJveSAoX19OUl9TWVNDQUxMX0JBU0UrMjQ0KQotI2RlZmluZSBfX05SX2lvX2dldGV2ZW50cyAoX19OUl9TWVNDQUxMX0JBU0UrMjQ1KQotI2RlZmluZSBfX05SX2lvX3N1Ym1pdCAoX19OUl9TWVNDQUxMX0JBU0UrMjQ2KQorI2RlZmluZSBfX05SX2lvX3NldHVwIChfX05SX1NZU0NBTExfQkFTRSArIDI0MykKKyNkZWZpbmUgX19OUl9pb19kZXN0cm95IChfX05SX1NZU0NBTExfQkFTRSArIDI0NCkKKyNkZWZpbmUgX19OUl9pb19nZXRldmVudHMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ1KQorI2RlZmluZSBfX05SX2lvX3N1Ym1pdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2lvX2NhbmNlbCAoX19OUl9TWVNDQUxMX0JBU0UrMjQ3KQotI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgKF9fTlJfU1lTQ0FMTF9CQVNFKzI0OCkKLSNkZWZpbmUgX19OUl9sb29rdXBfZGNvb2tpZSAoX19OUl9TWVNDQUxMX0JBU0UrMjQ5KQotI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UrMjUwKQorI2RlZmluZSBfX05SX2lvX2NhbmNlbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDcpCisjZGVmaW5lIF9fTlJfZXhpdF9ncm91cCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDgpCisjZGVmaW5lIF9fTlJfbG9va3VwX2Rjb29raWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ5KQorI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2Vwb2xsX2N0bCAoX19OUl9TWVNDQUxMX0JBU0UrMjUxKQotI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI1MikKLSNkZWZpbmUgX19OUl9yZW1hcF9maWxlX3BhZ2VzIChfX05SX1NZU0NBTExfQkFTRSsyNTMpCi0jZGVmaW5lIF9fTlJfc2V0X3RpZF9hZGRyZXNzIChfX05SX1NZU0NBTExfQkFTRSsyNTYpCisjZGVmaW5lIF9fTlJfZXBvbGxfY3RsIChfX05SX1NZU0NBTExfQkFTRSArIDI1MSkKKyNkZWZpbmUgX19OUl9lcG9sbF93YWl0IChfX05SX1NZU0NBTExfQkFTRSArIDI1MikKKyNkZWZpbmUgX19OUl9yZW1hcF9maWxlX3BhZ2VzIChfX05SX1NZU0NBTExfQkFTRSArIDI1MykKKyNkZWZpbmUgX19OUl9zZXRfdGlkX2FkZHJlc3MgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl90aW1lcl9jcmVhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI1NykKLSNkZWZpbmUgX19OUl90aW1lcl9zZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSsyNTgpCi0jZGVmaW5lIF9fTlJfdGltZXJfZ2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UrMjU5KQotI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gKF9fTlJfU1lTQ0FMTF9CQVNFKzI2MCkKKyNkZWZpbmUgX19OUl90aW1lcl9jcmVhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU3KQorI2RlZmluZSBfX05SX3RpbWVyX3NldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU4KQorI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU5KQorI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl90aW1lcl9kZWxldGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2MSkKLSNkZWZpbmUgX19OUl9jbG9ja19zZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSsyNjIpCi0jZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UrMjYzKQotI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAoX19OUl9TWVNDQUxMX0JBU0UrMjY0KQorI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjEpCisjZGVmaW5lIF9fTlJfY2xvY2tfc2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjIpCisjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjMpCisjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0cmVzIChfX05SX1NZU0NBTExfQkFTRSArIDI2NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfY2xvY2tfbmFub3NsZWVwIChfX05SX1NZU0NBTExfQkFTRSsyNjUpCi0jZGVmaW5lIF9fTlJfc3RhdGZzNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2NikKLSNkZWZpbmUgX19OUl9mc3RhdGZzNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2NykKLSNkZWZpbmUgX19OUl90Z2tpbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2OCkKKyNkZWZpbmUgX19OUl9jbG9ja19uYW5vc2xlZXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY1KQorI2RlZmluZSBfX05SX3N0YXRmczY0IChfX05SX1NZU0NBTExfQkFTRSArIDI2NikKKyNkZWZpbmUgX19OUl9mc3RhdGZzNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQorI2RlZmluZSBfX05SX3Rna2lsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3V0aW1lcyAoX19OUl9TWVNDQUxMX0JBU0UrMjY5KQotI2RlZmluZSBfX05SX2FybV9mYWR2aXNlNjRfNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3MCkKLSNkZWZpbmUgX19OUl9wY2ljb25maWdfaW9iYXNlIChfX05SX1NZU0NBTExfQkFTRSsyNzEpCi0jZGVmaW5lIF9fTlJfcGNpY29uZmlnX3JlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3MikKKyNkZWZpbmUgX19OUl91dGltZXMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY5KQorI2RlZmluZSBfX05SX2FybV9mYWR2aXNlNjRfNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcwKQorI2RlZmluZSBfX05SX3BjaWNvbmZpZ19pb2Jhc2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcxKQorI2RlZmluZSBfX05SX3BjaWNvbmZpZ19yZWFkIChfX05SX1NZU0NBTExfQkFTRSArIDI3MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcGNpY29uZmlnX3dyaXRlIChfX05SX1NZU0NBTExfQkFTRSsyNzMpCi0jZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19OUl9TWVNDQUxMX0JBU0UrMjc0KQotI2RlZmluZSBfX05SX21xX3VubGluayAoX19OUl9TWVNDQUxMX0JBU0UrMjc1KQotI2RlZmluZSBfX05SX21xX3RpbWVkc2VuZCAoX19OUl9TWVNDQUxMX0JBU0UrMjc2KQorI2RlZmluZSBfX05SX3BjaWNvbmZpZ193cml0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzMpCisjZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzQpCisjZGVmaW5lIF9fTlJfbXFfdW5saW5rIChfX05SX1NZU0NBTExfQkFTRSArIDI3NSkKKyNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9tcV90aW1lZHJlY2VpdmUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3NykKLSNkZWZpbmUgX19OUl9tcV9ub3RpZnkgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3OCkKLSNkZWZpbmUgX19OUl9tcV9nZXRzZXRhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyNzkpCi0jZGVmaW5lIF9fTlJfd2FpdGlkIChfX05SX1NZU0NBTExfQkFTRSsyODApCisjZGVmaW5lIF9fTlJfbXFfdGltZWRyZWNlaXZlIChfX05SX1NZU0NBTExfQkFTRSArIDI3NykKKyNkZWZpbmUgX19OUl9tcV9ub3RpZnkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc4KQorI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc5KQorI2RlZmluZSBfX05SX3dhaXRpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NvY2tldCAoX19OUl9TWVNDQUxMX0JBU0UrMjgxKQotI2RlZmluZSBfX05SX2JpbmQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI4MikKLSNkZWZpbmUgX19OUl9jb25uZWN0IChfX05SX1NZU0NBTExfQkFTRSsyODMpCi0jZGVmaW5lIF9fTlJfbGlzdGVuIChfX05SX1NZU0NBTExfQkFTRSsyODQpCisjZGVmaW5lIF9fTlJfc29ja2V0IChfX05SX1NZU0NBTExfQkFTRSArIDI4MSkKKyNkZWZpbmUgX19OUl9iaW5kIChfX05SX1NZU0NBTExfQkFTRSArIDI4MikKKyNkZWZpbmUgX19OUl9jb25uZWN0IChfX05SX1NZU0NBTExfQkFTRSArIDI4MykKKyNkZWZpbmUgX19OUl9saXN0ZW4gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9hY2NlcHQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI4NSkKLSNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAoX19OUl9TWVNDQUxMX0JBU0UrMjg2KQotI2RlZmluZSBfX05SX2dldHBlZXJuYW1lIChfX05SX1NZU0NBTExfQkFTRSsyODcpCi0jZGVmaW5lIF9fTlJfc29ja2V0cGFpciAoX19OUl9TWVNDQUxMX0JBU0UrMjg4KQorI2RlZmluZSBfX05SX2FjY2VwdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODUpCisjZGVmaW5lIF9fTlJfZ2V0c29ja25hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg2KQorI2RlZmluZSBfX05SX2dldHBlZXJuYW1lIChfX05SX1NZU0NBTExfQkFTRSArIDI4NykKKyNkZWZpbmUgX19OUl9zb2NrZXRwYWlyIChfX05SX1NZU0NBTExfQkFTRSArIDI4OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2VuZCAoX19OUl9TWVNDQUxMX0JBU0UrMjg5KQotI2RlZmluZSBfX05SX3NlbmR0byAoX19OUl9TWVNDQUxMX0JBU0UrMjkwKQotI2RlZmluZSBfX05SX3JlY3YgKF9fTlJfU1lTQ0FMTF9CQVNFKzI5MSkKLSNkZWZpbmUgX19OUl9yZWN2ZnJvbSAoX19OUl9TWVNDQUxMX0JBU0UrMjkyKQorI2RlZmluZSBfX05SX3NlbmQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg5KQorI2RlZmluZSBfX05SX3NlbmR0byAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTApCisjZGVmaW5lIF9fTlJfcmVjdiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTEpCisjZGVmaW5lIF9fTlJfcmVjdmZyb20gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zaHV0ZG93biAoX19OUl9TWVNDQUxMX0JBU0UrMjkzKQotI2RlZmluZSBfX05SX3NldHNvY2tvcHQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI5NCkKLSNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0IChfX05SX1NZU0NBTExfQkFTRSsyOTUpCi0jZGVmaW5lIF9fTlJfc2VuZG1zZyAoX19OUl9TWVNDQUxMX0JBU0UrMjk2KQorI2RlZmluZSBfX05SX3NodXRkb3duIChfX05SX1NZU0NBTExfQkFTRSArIDI5MykKKyNkZWZpbmUgX19OUl9zZXRzb2Nrb3B0IChfX05SX1NZU0NBTExfQkFTRSArIDI5NCkKKyNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0IChfX05SX1NZU0NBTExfQkFTRSArIDI5NSkKKyNkZWZpbmUgX19OUl9zZW5kbXNnIChfX05SX1NZU0NBTExfQkFTRSArIDI5NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcmVjdm1zZyAoX19OUl9TWVNDQUxMX0JBU0UrMjk3KQotI2RlZmluZSBfX05SX3NlbW9wIChfX05SX1NZU0NBTExfQkFTRSsyOTgpCi0jZGVmaW5lIF9fTlJfc2VtZ2V0IChfX05SX1NZU0NBTExfQkFTRSsyOTkpCi0jZGVmaW5lIF9fTlJfc2VtY3RsIChfX05SX1NZU0NBTExfQkFTRSszMDApCisjZGVmaW5lIF9fTlJfcmVjdm1zZyAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTcpCisjZGVmaW5lIF9fTlJfc2Vtb3AgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk4KQorI2RlZmluZSBfX05SX3NlbWdldCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTkpCisjZGVmaW5lIF9fTlJfc2VtY3RsIChfX05SX1NZU0NBTExfQkFTRSArIDMwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfbXNnc25kIChfX05SX1NZU0NBTExfQkFTRSszMDEpCi0jZGVmaW5lIF9fTlJfbXNncmN2IChfX05SX1NZU0NBTExfQkFTRSszMDIpCi0jZGVmaW5lIF9fTlJfbXNnZ2V0IChfX05SX1NZU0NBTExfQkFTRSszMDMpCi0jZGVmaW5lIF9fTlJfbXNnY3RsIChfX05SX1NZU0NBTExfQkFTRSszMDQpCisjZGVmaW5lIF9fTlJfbXNnc25kIChfX05SX1NZU0NBTExfQkFTRSArIDMwMSkKKyNkZWZpbmUgX19OUl9tc2dyY3YgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAyKQorI2RlZmluZSBfX05SX21zZ2dldCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMDMpCisjZGVmaW5lIF9fTlJfbXNnY3RsIChfX05SX1NZU0NBTExfQkFTRSArIDMwNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2htYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwNSkKLSNkZWZpbmUgX19OUl9zaG1kdCAoX19OUl9TWVNDQUxMX0JBU0UrMzA2KQotI2RlZmluZSBfX05SX3NobWdldCAoX19OUl9TWVNDQUxMX0JBU0UrMzA3KQotI2RlZmluZSBfX05SX3NobWN0bCAoX19OUl9TWVNDQUxMX0JBU0UrMzA4KQorI2RlZmluZSBfX05SX3NobWF0IChfX05SX1NZU0NBTExfQkFTRSArIDMwNSkKKyNkZWZpbmUgX19OUl9zaG1kdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMDYpCisjZGVmaW5lIF9fTlJfc2htZ2V0IChfX05SX1NZU0NBTExfQkFTRSArIDMwNykKKyNkZWZpbmUgX19OUl9zaG1jdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9hZGRfa2V5IChfX05SX1NZU0NBTExfQkFTRSszMDkpCi0jZGVmaW5lIF9fTlJfcmVxdWVzdF9rZXkgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxMCkKLSNkZWZpbmUgX19OUl9rZXljdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxMSkKLSNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX05SX1NZU0NBTExfQkFTRSszMTIpCisjZGVmaW5lIF9fTlJfYWRkX2tleSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMDkpCisjZGVmaW5lIF9fTlJfcmVxdWVzdF9rZXkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzEwKQorI2RlZmluZSBfX05SX2tleWN0bCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTEpCisjZGVmaW5lIF9fTlJfc2VtdGltZWRvcCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3ZzZXJ2ZXIgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxMykKLSNkZWZpbmUgX19OUl9pb3ByaW9fc2V0IChfX05SX1NZU0NBTExfQkFTRSszMTQpCi0jZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAoX19OUl9TWVNDQUxMX0JBU0UrMzE1KQotI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19OUl9TWVNDQUxMX0JBU0UrMzE2KQorI2RlZmluZSBfX05SX3ZzZXJ2ZXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzEzKQorI2RlZmluZSBfX05SX2lvcHJpb19zZXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE0KQorI2RlZmluZSBfX05SX2lvcHJpb19nZXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE1KQorI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoIChfX05SX1NZU0NBTExfQkFTRSszMTcpCi0jZGVmaW5lIF9fTlJfaW5vdGlmeV9ybV93YXRjaCAoX19OUl9TWVNDQUxMX0JBU0UrMzE4KQotI2RlZmluZSBfX05SX21iaW5kIChfX05SX1NZU0NBTExfQkFTRSszMTkpCi0jZGVmaW5lIF9fTlJfZ2V0X21lbXBvbGljeSAoX19OUl9TWVNDQUxMX0JBU0UrMzIwKQorI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoIChfX05SX1NZU0NBTExfQkFTRSArIDMxNykKKyNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoIChfX05SX1NZU0NBTExfQkFTRSArIDMxOCkKKyNkZWZpbmUgX19OUl9tYmluZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTkpCisjZGVmaW5lIF9fTlJfZ2V0X21lbXBvbGljeSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyMSkKLSNkZWZpbmUgX19OUl9vcGVuYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyMikKLSNkZWZpbmUgX19OUl9ta2RpcmF0IChfX05SX1NZU0NBTExfQkFTRSszMjMpCi0jZGVmaW5lIF9fTlJfbWtub2RhdCAoX19OUl9TWVNDQUxMX0JBU0UrMzI0KQorI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIxKQorI2RlZmluZSBfX05SX29wZW5hdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjIpCisjZGVmaW5lIF9fTlJfbWtkaXJhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjMpCisjZGVmaW5lIF9fTlJfbWtub2RhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2ZjaG93bmF0IChfX05SX1NZU0NBTExfQkFTRSszMjUpCi0jZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX05SX1NZU0NBTExfQkFTRSszMjYpCi0jZGVmaW5lIF9fTlJfZnN0YXRhdDY0IChfX05SX1NZU0NBTExfQkFTRSszMjcpCi0jZGVmaW5lIF9fTlJfdW5saW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyOCkKKyNkZWZpbmUgX19OUl9mY2hvd25hdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjUpCisjZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMyNikKKyNkZWZpbmUgX19OUl9mc3RhdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI3KQorI2RlZmluZSBfX05SX3VubGlua2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMyOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcmVuYW1lYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyOSkKLSNkZWZpbmUgX19OUl9saW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzMCkKLSNkZWZpbmUgX19OUl9zeW1saW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzMSkKLSNkZWZpbmUgX19OUl9yZWFkbGlua2F0IChfX05SX1NZU0NBTExfQkFTRSszMzIpCisjZGVmaW5lIF9fTlJfcmVuYW1lYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI5KQorI2RlZmluZSBfX05SX2xpbmthdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzApCisjZGVmaW5lIF9fTlJfc3ltbGlua2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMzMSkKKyNkZWZpbmUgX19OUl9yZWFkbGlua2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZmNobW9kYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzMykKLSNkZWZpbmUgX19OUl9mYWNjZXNzYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzNCkKLSNkZWZpbmUgX19OUl9wc2VsZWN0NiAoX19OUl9TWVNDQUxMX0JBU0UrMzM1KQotI2RlZmluZSBfX05SX3Bwb2xsIChfX05SX1NZU0NBTExfQkFTRSszMzYpCisjZGVmaW5lIF9fTlJfZmNobW9kYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMzKQorI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzQpCisjZGVmaW5lIF9fTlJfcHNlbGVjdDYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM1KQorI2RlZmluZSBfX05SX3Bwb2xsIChfX05SX1NZU0NBTExfQkFTRSArIDMzNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdW5zaGFyZSAoX19OUl9TWVNDQUxMX0JBU0UrMzM3KQotI2RlZmluZSBfX05SX3NldF9yb2J1c3RfbGlzdCAoX19OUl9TWVNDQUxMX0JBU0UrMzM4KQotI2RlZmluZSBfX05SX2dldF9yb2J1c3RfbGlzdCAoX19OUl9TWVNDQUxMX0JBU0UrMzM5KQotI2RlZmluZSBfX05SX3NwbGljZSAoX19OUl9TWVNDQUxMX0JBU0UrMzQwKQorI2RlZmluZSBfX05SX3Vuc2hhcmUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM3KQorI2RlZmluZSBfX05SX3NldF9yb2J1c3RfbGlzdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzgpCisjZGVmaW5lIF9fTlJfZ2V0X3JvYnVzdF9saXN0IChfX05SX1NZU0NBTExfQkFTRSArIDMzOSkKKyNkZWZpbmUgX19OUl9zcGxpY2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzQwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9hcm1fc3luY19maWxlX3JhbmdlIChfX05SX1NZU0NBTExfQkFTRSszNDEpCisjZGVmaW5lIF9fTlJfYXJtX3N5bmNfZmlsZV9yYW5nZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDEpCiAjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlMiBfX05SX2FybV9zeW5jX2ZpbGVfcmFuZ2UKLSNkZWZpbmUgX19OUl90ZWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0MikKLSNkZWZpbmUgX19OUl92bXNwbGljZSAoX19OUl9TWVNDQUxMX0JBU0UrMzQzKQorI2RlZmluZSBfX05SX3RlZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDIpCisjZGVmaW5lIF9fTlJfdm1zcGxpY2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzQzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9tb3ZlX3BhZ2VzIChfX05SX1NZU0NBTExfQkFTRSszNDQpCi0jZGVmaW5lIF9fTlJfZ2V0Y3B1IChfX05SX1NZU0NBTExfQkFTRSszNDUpCi0jZGVmaW5lIF9fTlJfZXBvbGxfcHdhaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0NikKLSNkZWZpbmUgX19OUl9rZXhlY19sb2FkIChfX05SX1NZU0NBTExfQkFTRSszNDcpCisjZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDQpCisjZGVmaW5lIF9fTlJfZ2V0Y3B1IChfX05SX1NZU0NBTExfQkFTRSArIDM0NSkKKyNkZWZpbmUgX19OUl9lcG9sbF9wd2FpdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDYpCisjZGVmaW5lIF9fTlJfa2V4ZWNfbG9hZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3V0aW1lbnNhdCAoX19OUl9TWVNDQUxMX0JBU0UrMzQ4KQotI2RlZmluZSBfX05SX3NpZ25hbGZkIChfX05SX1NZU0NBTExfQkFTRSszNDkpCi0jZGVmaW5lIF9fTlJfdGltZXJmZF9jcmVhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1MCkKLSNkZWZpbmUgX19OUl9ldmVudGZkIChfX05SX1NZU0NBTExfQkFTRSszNTEpCisjZGVmaW5lIF9fTlJfdXRpbWVuc2F0IChfX05SX1NZU0NBTExfQkFTRSArIDM0OCkKKyNkZWZpbmUgX19OUl9zaWduYWxmZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDkpCisjZGVmaW5lIF9fTlJfdGltZXJmZF9jcmVhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzUwKQorI2RlZmluZSBfX05SX2V2ZW50ZmQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzUxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9mYWxsb2NhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1MikKLSNkZWZpbmUgX19OUl90aW1lcmZkX3NldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1MykKLSNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1NCkKLSNkZWZpbmUgX19OUl9zaWduYWxmZDQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1NSkKKyNkZWZpbmUgX19OUl9mYWxsb2NhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzUyKQorI2RlZmluZSBfX05SX3RpbWVyZmRfc2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTMpCisjZGVmaW5lIF9fTlJfdGltZXJmZF9nZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDM1NCkKKyNkZWZpbmUgX19OUl9zaWduYWxmZDQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzU1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9ldmVudGZkMiAoX19OUl9TWVNDQUxMX0JBU0UrMzU2KQotI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZTEgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1NykKLSNkZWZpbmUgX19OUl9kdXAzIChfX05SX1NZU0NBTExfQkFTRSszNTgpCi0jZGVmaW5lIF9fTlJfcGlwZTIgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1OSkKKyNkZWZpbmUgX19OUl9ldmVudGZkMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTYpCisjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlMSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTcpCisjZGVmaW5lIF9fTlJfZHVwMyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTgpCisjZGVmaW5lIF9fTlJfcGlwZTIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzU5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQxIChfX05SX1NZU0NBTExfQkFTRSszNjApCi0jZGVmaW5lIF9fTlJfcHJlYWR2IChfX05SX1NZU0NBTExfQkFTRSszNjEpCi0jZGVmaW5lIF9fTlJfcHdyaXRldiAoX19OUl9TWVNDQUxMX0JBU0UrMzYyKQotI2RlZmluZSBfX05SX3J0X3Rnc2lncXVldWVpbmZvIChfX05SX1NZU0NBTExfQkFTRSszNjMpCisjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0MSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNjApCisjZGVmaW5lIF9fTlJfcHJlYWR2IChfX05SX1NZU0NBTExfQkFTRSArIDM2MSkKKyNkZWZpbmUgX19OUl9wd3JpdGV2IChfX05SX1NZU0NBTExfQkFTRSArIDM2MikKKyNkZWZpbmUgX19OUl9ydF90Z3NpZ3F1ZXVlaW5mbyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAoX19OUl9TWVNDQUxMX0JBU0UrMzY0KQotI2RlZmluZSBfX05SX3JlY3ZtbXNnIChfX05SX1NZU0NBTExfQkFTRSszNjUpCi0jZGVmaW5lIF9fTlJfYWNjZXB0NCAoX19OUl9TWVNDQUxMX0JBU0UrMzY2KQotI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM2NykKKyNkZWZpbmUgX19OUl9wZXJmX2V2ZW50X29wZW4gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY0KQorI2RlZmluZSBfX05SX3JlY3ZtbXNnIChfX05SX1NZU0NBTExfQkFTRSArIDM2NSkKKyNkZWZpbmUgX19OUl9hY2NlcHQ0IChfX05SX1NZU0NBTExfQkFTRSArIDM2NikKKyNkZWZpbmUgX19OUl9mYW5vdGlmeV9pbml0IChfX05SX1NZU0NBTExfQkFTRSArIDM2NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZmFub3RpZnlfbWFyayAoX19OUl9TWVNDQUxMX0JBU0UrMzY4KQotI2RlZmluZSBfX05SX3BybGltaXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UrMzY5KQotI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IChfX05SX1NZU0NBTExfQkFTRSszNzApCi0jZGVmaW5lIF9fTlJfb3Blbl9ieV9oYW5kbGVfYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3MSkKKyNkZWZpbmUgX19OUl9mYW5vdGlmeV9tYXJrIChfX05SX1NZU0NBTExfQkFTRSArIDM2OCkKKyNkZWZpbmUgX19OUl9wcmxpbWl0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY5KQorI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IChfX05SX1NZU0NBTExfQkFTRSArIDM3MCkKKyNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3MikKLSNkZWZpbmUgX19OUl9zeW5jZnMgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3MykKLSNkZWZpbmUgX19OUl9zZW5kbW1zZyAoX19OUl9TWVNDQUxMX0JBU0UrMzc0KQotI2RlZmluZSBfX05SX3NldG5zIChfX05SX1NZU0NBTExfQkFTRSszNzUpCisjZGVmaW5lIF9fTlJfY2xvY2tfYWRqdGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzIpCisjZGVmaW5lIF9fTlJfc3luY2ZzIChfX05SX1NZU0NBTExfQkFTRSArIDM3MykKKyNkZWZpbmUgX19OUl9zZW5kbW1zZyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzQpCisjZGVmaW5lIF9fTlJfc2V0bnMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzc1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3JlYWR2IChfX05SX1NZU0NBTExfQkFTRSszNzYpCi0jZGVmaW5lIF9fTlJfcHJvY2Vzc192bV93cml0ZXYgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3NykKLSNkZWZpbmUgX19OUl9rY21wIChfX05SX1NZU0NBTExfQkFTRSszNzgpCi0jZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIChfX05SX1NZU0NBTExfQkFTRSszNzkpCisjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV9yZWFkdiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzYpCisjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV93cml0ZXYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzc3KQorI2RlZmluZSBfX05SX2tjbXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzc4KQorI2RlZmluZSBfX05SX2Zpbml0X21vZHVsZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzM4MCkKLSNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIChfX05SX1NZU0NBTExfQkFTRSszODEpCi0jZGVmaW5lIF9fQVJNX05SX0JBU0UgKF9fTlJfU1lTQ0FMTF9CQVNFKzB4MGYwMDAwKQotI2RlZmluZSBfX0FSTV9OUl9icmVha3BvaW50IChfX0FSTV9OUl9CQVNFKzEpCisjZGVmaW5lIF9fTlJfc2NoZWRfc2V0YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAzODApCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAzODEpCisjZGVmaW5lIF9fTlJfcmVuYW1lYXQyIChfX05SX1NZU0NBTExfQkFTRSArIDM4MikKKyNkZWZpbmUgX19OUl9zZWNjb21wIChfX05SX1NZU0NBTExfQkFTRSArIDM4MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fQVJNX05SX2NhY2hlZmx1c2ggKF9fQVJNX05SX0JBU0UrMikKLSNkZWZpbmUgX19BUk1fTlJfdXNyMjYgKF9fQVJNX05SX0JBU0UrMykKLSNkZWZpbmUgX19BUk1fTlJfdXNyMzIgKF9fQVJNX05SX0JBU0UrNCkKLSNkZWZpbmUgX19BUk1fTlJfc2V0X3RscyAoX19BUk1fTlJfQkFTRSs1KQorI2RlZmluZSBfX05SX2dldHJhbmRvbSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzODQpCisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIChfX05SX1NZU0NBTExfQkFTRSArIDM4NSkKKyNkZWZpbmUgX19OUl9icGYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzg2KQorI2RlZmluZSBfX0FSTV9OUl9CQVNFIChfX05SX1NZU0NBTExfQkFTRSArIDB4MGYwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19BUk1fTlJfYnJlYWtwb2ludCAoX19BUk1fTlJfQkFTRSArIDEpCisjZGVmaW5lIF9fQVJNX05SX2NhY2hlZmx1c2ggKF9fQVJNX05SX0JBU0UgKyAyKQorI2RlZmluZSBfX0FSTV9OUl91c3IyNiAoX19BUk1fTlJfQkFTRSArIDMpCisjZGVmaW5lIF9fQVJNX05SX3VzcjMyIChfX0FSTV9OUl9CQVNFICsgNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fQVJNX05SX3NldF90bHMgKF9fQVJNX05SX0JBU0UgKyA1KQogI3VuZGVmIF9fTlJfdGltZQogI3VuZGVmIF9fTlJfdW1vdW50CiAjdW5kZWYgX19OUl9zdGltZQotI3VuZGVmIF9fTlJfYWxhcm0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjdW5kZWYgX19OUl9hbGFybQogI3VuZGVmIF9fTlJfdXRpbWUKICN1bmRlZiBfX05SX2dldHJsaW1pdAogI3VuZGVmIF9fTlJfc2VsZWN0Ci0jdW5kZWYgX19OUl9yZWFkZGlyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI3VuZGVmIF9fTlJfcmVhZGRpcgogI3VuZGVmIF9fTlJfbW1hcAogI3VuZGVmIF9fTlJfc29ja2V0Y2FsbAogI3VuZGVmIF9fTlJfc3lzY2FsbAotI3VuZGVmIF9fTlJfaXBjCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI3VuZGVmIF9fTlJfaXBjCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9rdm0uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9rdm0uaAppbmRleCA5M2FiZDQzLi44NTVlMDg0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20va3ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL2t2bS5oCkBAIC0yOCw0NSArMjgsNTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9OUl9TUFNSIDUKICNpZm5kZWYgX19BU1NFTUJMWV9fCisjaW5jbHVkZSA8bGludXgvcHNjaS5oPgogI2luY2x1ZGUgPGFzbS90eXBlcy5oPgotI2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8YXNtL3B0cmFjZS5oPgogI2RlZmluZSBfX0tWTV9IQVZFX0dVRVNUX0RFQlVHCiAjZGVmaW5lIF9fS1ZNX0hBVkVfSVJRX0xJTkUKLSNkZWZpbmUgS1ZNX1JFR19TSVpFKGlkKSAgICgxVSA8PCAoKChpZCkgJiBLVk1fUkVHX1NJWkVfTUFTSykgPj4gS1ZNX1JFR19TSVpFX1NISUZUKSkKKyNkZWZpbmUgX19LVk1fSEFWRV9SRUFET05MWV9NRU0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfU0laRShpZCkgKDFVIDw8ICgoKGlkKSAmIEtWTV9SRUdfU0laRV9NQVNLKSA+PiBLVk1fUkVHX1NJWkVfU0hJRlQpKQogc3RydWN0IGt2bV9yZWdzIHsKKyAgc3RydWN0IHVzZXJfcHRfcmVncyByZWdzOworICBfX3U2NCBzcF9lbDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1c2VyX3B0X3JlZ3MgcmVnczsKLSBfX3U2NCBzcF9lbDE7Ci0gX191NjQgZWxyX2VsMTsKLSBfX3U2NCBzcHNyW0tWTV9OUl9TUFNSXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVzZXJfZnBzaW1kX3N0YXRlIGZwX3JlZ3M7CisgIF9fdTY0IGVscl9lbDE7CisgIF9fdTY0IHNwc3JbS1ZNX05SX1NQU1JdOworICBzdHJ1Y3QgdXNlcl9mcHNpbWRfc3RhdGUgZnBfcmVnczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9BRU1fVjggMAogI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9GT1VOREFUSU9OX1Y4IDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fVEFSR0VUX0NPUlRFWF9BNTcgMgogI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9YR0VORV9QT1RFTlpBIDMKLSNkZWZpbmUgS1ZNX0FSTV9OVU1fVEFSR0VUUyA0Ci0jZGVmaW5lIEtWTV9BUk1fREVWSUNFX1RZUEVfU0hJRlQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0FSTV9UQVJHRVRfQ09SVEVYX0E1MyA0CisjZGVmaW5lIEtWTV9BUk1fTlVNX1RBUkdFVFMgNQorI2RlZmluZSBLVk1fQVJNX0RFVklDRV9UWVBFX1NISUZUIDAKICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfVFlQRV9NQVNLICgweGZmZmYgPDwgS1ZNX0FSTV9ERVZJQ0VfVFlQRV9TSElGVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fREVWSUNFX0lEX1NISUZUIDE2CiAjZGVmaW5lIEtWTV9BUk1fREVWSUNFX0lEX01BU0sgKDB4ZmZmZiA8PCBLVk1fQVJNX0RFVklDRV9JRF9TSElGVCkKICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfVkdJQ19WMiAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVkdJQ19WMl9BRERSX1RZUEVfRElTVCAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVkdJQ19WMl9BRERSX1RZUEVfQ1BVIDEKICNkZWZpbmUgS1ZNX1ZHSUNfVjJfRElTVF9TSVpFIDB4MTAwMAogI2RlZmluZSBLVk1fVkdJQ19WMl9DUFVfU0laRSAweDIwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fVkNQVV9QT1dFUl9PRkYgMAotI2RlZmluZSBLVk1fQVJNX1ZDUFVfRUwxXzMyQklUIDEKLXN0cnVjdCBrdm1fdmNwdV9pbml0IHsKLSBfX3UzMiB0YXJnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZlYXR1cmVzWzddOworI2RlZmluZSBLVk1fQVJNX1ZDUFVfRUwxXzMyQklUIDEKKyNkZWZpbmUgS1ZNX0FSTV9WQ1BVX1BTQ0lfMF8yIDIKK3N0cnVjdCBrdm1fdmNwdV9pbml0IHsKKyAgX191MzIgdGFyZ2V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZmVhdHVyZXNbN107CiB9Owogc3RydWN0IGt2bV9zcmVncyB7CiB9OwpAQCAtMTA5LDkgKzExNCw5IEBACiAjZGVmaW5lIEtWTV9SRUdfQVJNNjRfU1lTUkVHX0NSTV9TSElGVCAzCiAjZGVmaW5lIEtWTV9SRUdfQVJNNjRfU1lTUkVHX09QMl9NQVNLIDB4MDAwMDAwMDAwMDAwMDAwNwogI2RlZmluZSBLVk1fUkVHX0FSTTY0X1NZU1JFR19PUDJfU0hJRlQgMAotI2RlZmluZSBBUk02NF9TWVNfUkVHX1NISUZUX01BU0soeCxuKSAgICgoKHgpIDw8IEtWTV9SRUdfQVJNNjRfU1lTUkVHXyAjIyBuICMjIF9TSElGVCkgJiAgIEtWTV9SRUdfQVJNNjRfU1lTUkVHXyAjIyBuICMjIF9NQVNLKQorI2RlZmluZSBBUk02NF9TWVNfUkVHX1NISUZUX01BU0soeCxuKSAoKCh4KSA8PCBLVk1fUkVHX0FSTTY0X1NZU1JFR18gIyNuICMjX1NISUZUKSAmIEtWTV9SRUdfQVJNNjRfU1lTUkVHXyAjI24gIyNfTUFTSykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fQVJNNjRfU1lTX1JFRyhvcDAsb3AxLGNybixjcm0sb3AyKSAgIChLVk1fUkVHX0FSTTY0IHwgS1ZNX1JFR19BUk02NF9TWVNSRUcgfCAgIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhvcDAsIE9QMCkgfCAgIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhvcDEsIE9QMSkgfCAgIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhjcm4sIENSTikgfCAgIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhjcm0sIENSTSkgfCAgIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhvcDIsIE9QMikpCisjZGVmaW5lIF9fQVJNNjRfU1lTX1JFRyhvcDAsb3AxLGNybixjcm0sb3AyKSAoS1ZNX1JFR19BUk02NCB8IEtWTV9SRUdfQVJNNjRfU1lTUkVHIHwgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMCwgT1AwKSB8IEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhvcDEsIE9QMSkgfCBBUk02NF9TWVNfUkVHX1NISUZUX01BU0soY3JuLCBDUk4pIHwgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKGNybSwgQ1JNKSB8IEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhvcDIsIE9QMikpCiAjZGVmaW5lIEFSTTY0X1NZU19SRUcoLi4uKSAoX19BUk02NF9TWVNfUkVHKF9fVkFfQVJHU19fKSB8IEtWTV9SRUdfU0laRV9VNjQpCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1RJTUVSX0NUTCBBUk02NF9TWVNfUkVHKDMsIDMsIDE0LCAzLCAxKQogI2RlZmluZSBLVk1fUkVHX0FSTV9USU1FUl9DTlQgQVJNNjRfU1lTX1JFRygzLCAzLCAxNCwgMywgMikKQEAgLTEyNiwzMyArMTMxLDM0IEBACiAjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfT0ZGU0VUX1NISUZUIDAKICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19PRkZTRVRfTUFTSyAoMHhmZmZmZmZmZlVMTCA8PCBLVk1fREVWX0FSTV9WR0lDX09GRlNFVF9TSElGVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfR1JQX05SX0lSUVMgMwogI2RlZmluZSBLVk1fQVJNX0lSUV9UWVBFX1NISUZUIDI0CiAjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfTUFTSyAweGZmCiAjZGVmaW5lIEtWTV9BUk1fSVJRX1ZDUFVfU0hJRlQgMTYKLSNkZWZpbmUgS1ZNX0FSTV9JUlFfVkNQVV9NQVNLIDB4ZmYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9BUk1fSVJRX1ZDUFVfTUFTSyAweGZmCiAjZGVmaW5lIEtWTV9BUk1fSVJRX05VTV9TSElGVCAwCiAjZGVmaW5lIEtWTV9BUk1fSVJRX05VTV9NQVNLIDB4ZmZmZgogI2RlZmluZSBLVk1fQVJNX0lSUV9UWVBFX0NQVSAwCi0jZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfU1BJIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfU1BJIDEKICNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9QUEkgMgogI2RlZmluZSBLVk1fQVJNX0lSUV9DUFVfSVJRIDAKICNkZWZpbmUgS1ZNX0FSTV9JUlFfQ1BVX0ZJUSAxCi0jZGVmaW5lIEtWTV9BUk1fSVJRX0dJQ19NQVggMTI3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQVJNX0lSUV9HSUNfTUFYIDEyNwogI2RlZmluZSBLVk1fUFNDSV9GTl9CQVNFIDB4OTVjMWJhNWUKICNkZWZpbmUgS1ZNX1BTQ0lfRk4obikgKEtWTV9QU0NJX0ZOX0JBU0UgKyAobikpCiAjZGVmaW5lIEtWTV9QU0NJX0ZOX0NQVV9TVVNQRU5EIEtWTV9QU0NJX0ZOKDApCi0jZGVmaW5lIEtWTV9QU0NJX0ZOX0NQVV9PRkYgS1ZNX1BTQ0lfRk4oMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9QU0NJX0ZOX0NQVV9PRkYgS1ZNX1BTQ0lfRk4oMSkKICNkZWZpbmUgS1ZNX1BTQ0lfRk5fQ1BVX09OIEtWTV9QU0NJX0ZOKDIpCiAjZGVmaW5lIEtWTV9QU0NJX0ZOX01JR1JBVEUgS1ZNX1BTQ0lfRk4oMykKLSNkZWZpbmUgS1ZNX1BTQ0lfUkVUX1NVQ0NFU1MgMAotI2RlZmluZSBLVk1fUFNDSV9SRVRfTkkgKCh1bnNpZ25lZCBsb25nKS0xKQorI2RlZmluZSBLVk1fUFNDSV9SRVRfU1VDQ0VTUyBQU0NJX1JFVF9TVUNDRVNTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLVk1fUFNDSV9SRVRfSU5WQUwgKCh1bnNpZ25lZCBsb25nKS0yKQotI2RlZmluZSBLVk1fUFNDSV9SRVRfREVOSUVEICgodW5zaWduZWQgbG9uZyktMykKLSNlbmRpZgorI2RlZmluZSBLVk1fUFNDSV9SRVRfTkkgUFNDSV9SRVRfTk9UX1NVUFBPUlRFRAorI2RlZmluZSBLVk1fUFNDSV9SRVRfSU5WQUwgUFNDSV9SRVRfSU5WQUxJRF9QQVJBTVMKKyNkZWZpbmUgS1ZNX1BTQ0lfUkVUX0RFTklFRCBQU0NJX1JFVF9ERU5JRUQKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3BlcmZfcmVncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3BlcmZfcmVncy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0MWJjNzUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcGVyZl9yZWdzLmgKQEAgLTAsMCArMSw2NiBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfQVNNX0FSTTY0X1BFUkZfUkVHU19ICisjZGVmaW5lIF9BU01fQVJNNjRfUEVSRl9SRUdTX0gKK2VudW0gcGVyZl9ldmVudF9hcm1fcmVncyB7CisgIFBFUkZfUkVHX0FSTTY0X1gwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDEsCisgIFBFUkZfUkVHX0FSTTY0X1gyLAorICBQRVJGX1JFR19BUk02NF9YMywKKyAgUEVSRl9SRUdfQVJNNjRfWDQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YNSwKKyAgUEVSRl9SRUdfQVJNNjRfWDYsCisgIFBFUkZfUkVHX0FSTTY0X1g3LAorICBQRVJGX1JFR19BUk02NF9YOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFBFUkZfUkVHX0FSTTY0X1g5LAorICBQRVJGX1JFR19BUk02NF9YMTAsCisgIFBFUkZfUkVHX0FSTTY0X1gxMSwKKyAgUEVSRl9SRUdfQVJNNjRfWDEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDEzLAorICBQRVJGX1JFR19BUk02NF9YMTQsCisgIFBFUkZfUkVHX0FSTTY0X1gxNSwKKyAgUEVSRl9SRUdfQVJNNjRfWDE2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDE3LAorICBQRVJGX1JFR19BUk02NF9YMTgsCisgIFBFUkZfUkVHX0FSTTY0X1gxOSwKKyAgUEVSRl9SRUdfQVJNNjRfWDIwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDIxLAorICBQRVJGX1JFR19BUk02NF9YMjIsCisgIFBFUkZfUkVHX0FSTTY0X1gyMywKKyAgUEVSRl9SRUdfQVJNNjRfWDI0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDI1LAorICBQRVJGX1JFR19BUk02NF9YMjYsCisgIFBFUkZfUkVHX0FSTTY0X1gyNywKKyAgUEVSRl9SRUdfQVJNNjRfWDI4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDI5LAorICBQRVJGX1JFR19BUk02NF9MUiwKKyAgUEVSRl9SRUdfQVJNNjRfU1AsCisgIFBFUkZfUkVHX0FSTTY0X1BDLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfTUFYLAorfTsKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3Bvc2l4X3R5cGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcG9zaXhfdHlwZXMuaAppbmRleCAxYjg5MjUzLi42Mjg5YmJlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcG9zaXhfdHlwZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcG9zaXhfdHlwZXMuaApAQCAtMTYsNCArMTYsMTEgQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX19BU01fUE9TSVhfVFlQRVNfSAorI2RlZmluZSBfX0FTTV9QT1NJWF9UWVBFU19ICit0eXBlZGVmIHVuc2lnbmVkIHNob3J0IF9fa2VybmVsX29sZF91aWRfdDsKK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgX19rZXJuZWxfb2xkX2dpZF90OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19rZXJuZWxfb2xkX3VpZF90IF9fa2VybmVsX29sZF91aWRfdAogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3Bvc2l4X3R5cGVzLmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wdHJhY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wdHJhY2UuaAppbmRleCA1NjUwZTJkLi5lYzUzMWY5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcHRyYWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3B0cmFjZS5oCkBAIC01MSwyOCArNTEsMjggQEAKICNpZm5kZWYgX19BU1NFTUJMWV9fCiBzdHJ1Y3QgdXNlcl9wdF9yZWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVnc1szMV07Ci0gX191NjQgc3A7Ci0gX191NjQgcGM7Ci0gX191NjQgcHN0YXRlOworICBfX3U2NCByZWdzWzMxXTsKKyAgX191NjQgc3A7CisgIF9fdTY0IHBjOworICBfX3U2NCBwc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB1c2VyX2Zwc2ltZF9zdGF0ZSB7Ci0gX191aW50MTI4X3QgdnJlZ3NbMzJdOwotIF9fdTMyIGZwc3I7CisgIF9fdWludDEyOF90IHZyZWdzWzMyXTsKKyAgX191MzIgZnBzcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnBjcjsKKyAgX191MzIgZnBjcjsKIH07CiBzdHJ1Y3QgdXNlcl9od2RlYnVnX3N0YXRlIHsKLSBfX3UzMiBkYmdfaW5mbzsKKyAgX191MzIgZGJnX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZDsKLSBzdHJ1Y3QgewotIF9fdTY0IGFkZHI7Ci0gX191MzIgY3RybDsKKyAgX191MzIgcGFkOworICBzdHJ1Y3QgeworICAgIF9fdTY0IGFkZHI7CisgICAgX191MzIgY3RybDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOwotIH0gZGJnX3JlZ3NbMTZdOworICAgIF9fdTMyIHBhZDsKKyAgfSBkYmdfcmVnc1sxNl07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3NpZ2NvbnRleHQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9zaWdjb250ZXh0LmgKaW5kZXggYzU5ZjljMC4uMzkzZGZkNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3NpZ2NvbnRleHQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc2lnY29udGV4dC5oCkBAIC0yMSwyNiArMjEsMzMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHNpZ2NvbnRleHQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmYXVsdF9hZGRyZXNzOwotIF9fdTY0IHJlZ3NbMzFdOwotIF9fdTY0IHNwOwotIF9fdTY0IHBjOworICBfX3U2NCBmYXVsdF9hZGRyZXNzOworICBfX3U2NCByZWdzWzMxXTsKKyAgX191NjQgc3A7CisgIF9fdTY0IHBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwc3RhdGU7Ci0gX191OCBfX3Jlc2VydmVkWzQwOTZdIF9fYXR0cmlidXRlX18oKF9fYWxpZ25lZF9fKDE2KSkpOworICBfX3U2NCBwc3RhdGU7CisgIF9fdTggX19yZXNlcnZlZFs0MDk2XSBfX2F0dHJpYnV0ZV9fKChfX2FsaWduZWRfXygxNikpKTsKIH07CiBzdHJ1Y3QgX2FhcmNoNjRfY3R4IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFnaWM7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgbWFnaWM7CisgIF9fdTMyIHNpemU7CiB9OwogI2RlZmluZSBGUFNJTURfTUFHSUMgMHg0NjUwODAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmcHNpbWRfY29udGV4dCB7Ci0gc3RydWN0IF9hYXJjaDY0X2N0eCBoZWFkOwotIF9fdTMyIGZwc3I7Ci0gX191MzIgZnBjcjsKKyAgc3RydWN0IF9hYXJjaDY0X2N0eCBoZWFkOworICBfX3UzMiBmcHNyOworICBfX3UzMiBmcGNyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3VpbnQxMjhfdCB2cmVnc1szMl07CisgIF9fdWludDEyOF90IHZyZWdzWzMyXTsKK307CisjZGVmaW5lIEVTUl9NQUdJQyAweDQ1NTM1MjAxCitzdHJ1Y3QgZXNyX2NvbnRleHQgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IF9hYXJjaDY0X2N0eCBoZWFkOworICBfX3U2NCBlc3I7CiB9OwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3N0YXRmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3N0YXRmcy5oCmluZGV4IDhmMzg0MTIuLjM0NjliOGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9zdGF0ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc3RhdGZzLmgKQEAgLTE4LDcgKzE4LDcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfX0FTTV9TVEFURlNfSAogI2RlZmluZSBfX0FTTV9TVEFURlNfSAotI2RlZmluZSBBUkNIX1BBQ0tfQ09NUEFUX1NUQVRGUzY0IF9fYXR0cmlidXRlX18oKHBhY2tlZCxhbGlnbmVkKDQpKSkKKyNkZWZpbmUgQVJDSF9QQUNLX0NPTVBBVF9TVEFURlM2NCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKQogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3N0YXRmcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9mY250bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9mY250bC5oCmluZGV4IGExNTg3OGYuLjk3NTNjZjMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvZmNudGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2ZjbnRsLmgKQEAgLTc5LDcgKzc5LDcgQEAKICNlbmRpZgogI2lmbmRlZiBPX1NZTkMKICNkZWZpbmUgX19PX1NZTkMgMDQwMDAwMDAKLSNkZWZpbmUgT19TWU5DIChfX09fU1lOQ3xPX0RTWU5DKQorI2RlZmluZSBPX1NZTkMgKF9fT19TWU5DIHwgT19EU1lOQykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZm5kZWYgT19QQVRICkBAIC0xMzYsNzEgKzEzNiw3MyBAQAogI2RlZmluZSBGX0dFVE9XTkVSX1VJRFMgMTcKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRl9PRkRfR0VUTEsgMzYKKyNkZWZpbmUgRl9PRkRfU0VUTEsgMzcKKyNkZWZpbmUgRl9PRkRfU0VUTEtXIDM4CiAjZGVmaW5lIEZfT1dORVJfVElEIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZfT1dORVJfUElEIDEKICNkZWZpbmUgRl9PV05FUl9QR1JQIDIKIHN0cnVjdCBmX293bmVyX2V4IHsKKyAgaW50IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eXBlOwotIF9fa2VybmVsX3BpZF90IHBpZDsKKyAgX19rZXJuZWxfcGlkX3QgcGlkOwogfTsKICNkZWZpbmUgRkRfQ0xPRVhFQyAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBGX1JETENLCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGX1JETENLIDAKICNkZWZpbmUgRl9XUkxDSyAxCiAjZGVmaW5lIEZfVU5MQ0sgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgRl9FWExDSwogI2RlZmluZSBGX0VYTENLIDQKICNkZWZpbmUgRl9TSExDSyA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMT0NLX1NIIDEKICNkZWZpbmUgTE9DS19FWCAyCiAjZGVmaW5lIExPQ0tfTkIgNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTE9DS19VTiA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMT0NLX01BTkQgMzIKICNkZWZpbmUgTE9DS19SRUFEIDY0CiAjZGVmaW5lIExPQ0tfV1JJVEUgMTI4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMT0NLX1JXIDE5MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRl9MSU5VWF9TUEVDSUZJQ19CQVNFIDEwMjQKICNpZm5kZWYgSEFWRV9BUkNIX1NUUlVDVF9GTE9DSwogI2lmbmRlZiBfX0FSQ0hfRkxPQ0tfUEFECi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfRkxPQ0tfUEFECisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiBzdHJ1Y3QgZmxvY2sgewotIHNob3J0IGxfdHlwZTsKKyAgc2hvcnQgbF90eXBlOworICBzaG9ydCBsX3doZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgbF93aGVuY2U7Ci0gX19rZXJuZWxfb2ZmX3QgbF9zdGFydDsKLSBfX2tlcm5lbF9vZmZfdCBsX2xlbjsKLSBfX2tlcm5lbF9waWRfdCBsX3BpZDsKKyAgX19rZXJuZWxfb2ZmX3QgbF9zdGFydDsKKyAgX19rZXJuZWxfb2ZmX3QgbF9sZW47CisgIF9fa2VybmVsX3BpZF90IGxfcGlkOworICBfX0FSQ0hfRkxPQ0tfUEFECiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQVJDSF9GTE9DS19QQUQKIH07CiAjZW5kaWYKLSNpZm5kZWYgX19MUDY0X18KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIEhBVkVfQVJDSF9TVFJVQ1RfRkxPQ0s2NAogI2lmbmRlZiBfX0FSQ0hfRkxPQ0s2NF9QQUQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9GTE9DSzY0X1BBRAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZsb2NrNjQgewotIHNob3J0IGxfdHlwZTsKLSBzaG9ydCBsX3doZW5jZTsKLSBfX2tlcm5lbF9sb2ZmX3QgbF9zdGFydDsKKyAgc2hvcnQgbF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb2ZmX3QgbF9sZW47Ci0gX19rZXJuZWxfcGlkX3QgbF9waWQ7Ci0gX19BUkNIX0ZMT0NLNjRfUEFECisgIHNob3J0IGxfd2hlbmNlOworICBfX2tlcm5lbF9sb2ZmX3QgbF9zdGFydDsKKyAgX19rZXJuZWxfbG9mZl90IGxfbGVuOworICBfX2tlcm5lbF9waWRfdCBsX3BpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fQVJDSF9GTE9DSzY0X1BBRAogfTsKKyNlbmRpZgorI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2VuZGlmCi0jZW5kaWYKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pb2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pb2N0bC5oCmluZGV4IDc5ZWM4M2MuLjQ2OGMzMDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2lvY3RsLmgKQEAgLTI4LDE2ICsyOCwxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX0lPQ19ESVJCSVRTIDIKICNlbmRpZgotI2RlZmluZSBfSU9DX05STUFTSyAoKDEgPDwgX0lPQ19OUkJJVFMpLTEpCi0jZGVmaW5lIF9JT0NfVFlQRU1BU0sgKCgxIDw8IF9JT0NfVFlQRUJJVFMpLTEpCisjZGVmaW5lIF9JT0NfTlJNQVNLICgoMSA8PCBfSU9DX05SQklUUykgLSAxKQorI2RlZmluZSBfSU9DX1RZUEVNQVNLICgoMSA8PCBfSU9DX1RZUEVCSVRTKSAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfSU9DX1NJWkVNQVNLICgoMSA8PCBfSU9DX1NJWkVCSVRTKS0xKQotI2RlZmluZSBfSU9DX0RJUk1BU0sgKCgxIDw8IF9JT0NfRElSQklUUyktMSkKKyNkZWZpbmUgX0lPQ19TSVpFTUFTSyAoKDEgPDwgX0lPQ19TSVpFQklUUykgLSAxKQorI2RlZmluZSBfSU9DX0RJUk1BU0sgKCgxIDw8IF9JT0NfRElSQklUUykgLSAxKQogI2RlZmluZSBfSU9DX05SU0hJRlQgMAotI2RlZmluZSBfSU9DX1RZUEVTSElGVCAoX0lPQ19OUlNISUZUK19JT0NfTlJCSVRTKQorI2RlZmluZSBfSU9DX1RZUEVTSElGVCAoX0lPQ19OUlNISUZUICsgX0lPQ19OUkJJVFMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfSU9DX1NJWkVTSElGVCAoX0lPQ19UWVBFU0hJRlQrX0lPQ19UWVBFQklUUykKLSNkZWZpbmUgX0lPQ19ESVJTSElGVCAoX0lPQ19TSVpFU0hJRlQrX0lPQ19TSVpFQklUUykKKyNkZWZpbmUgX0lPQ19TSVpFU0hJRlQgKF9JT0NfVFlQRVNISUZUICsgX0lPQ19UWVBFQklUUykKKyNkZWZpbmUgX0lPQ19ESVJTSElGVCAoX0lPQ19TSVpFU0hJRlQgKyBfSU9DX1NJWkVCSVRTKQogI2lmbmRlZiBfSU9DX05PTkUKICNkZWZpbmUgX0lPQ19OT05FIDBVCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDksMTcgKzQ5LDE3IEBACiAjaWZuZGVmIF9JT0NfUkVBRAogI2RlZmluZSBfSU9DX1JFQUQgMlUKICNlbmRpZgotI2RlZmluZSBfSU9DKGRpcix0eXBlLG5yLHNpemUpICAgKCgoZGlyKSA8PCBfSU9DX0RJUlNISUZUKSB8ICAgKCh0eXBlKSA8PCBfSU9DX1RZUEVTSElGVCkgfCAgICgobnIpIDw8IF9JT0NfTlJTSElGVCkgfCAgICgoc2l6ZSkgPDwgX0lPQ19TSVpFU0hJRlQpKQorI2RlZmluZSBfSU9DKGRpcix0eXBlLG5yLHNpemUpICgoKGRpcikgPDwgX0lPQ19ESVJTSElGVCkgfCAoKHR5cGUpIDw8IF9JT0NfVFlQRVNISUZUKSB8ICgobnIpIDw8IF9JT0NfTlJTSElGVCkgfCAoKHNpemUpIDw8IF9JT0NfU0laRVNISUZUKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9JT0NfVFlQRUNIRUNLKHQpIChzaXplb2YodCkpCi0jZGVmaW5lIF9JTyh0eXBlLG5yKSBfSU9DKF9JT0NfTk9ORSwodHlwZSksKG5yKSwwKQotI2RlZmluZSBfSU9SKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1JFQUQsKHR5cGUpLChuciksKF9JT0NfVFlQRUNIRUNLKHNpemUpKSkKLSNkZWZpbmUgX0lPVyh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19XUklURSwodHlwZSksKG5yKSwoX0lPQ19UWVBFQ0hFQ0soc2l6ZSkpKQorI2RlZmluZSBfSU8odHlwZSxucikgX0lPQyhfSU9DX05PTkUsICh0eXBlKSwgKG5yKSwgMCkKKyNkZWZpbmUgX0lPUih0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19SRUFELCAodHlwZSksIChuciksIChfSU9DX1RZUEVDSEVDSyhzaXplKSkpCisjZGVmaW5lIF9JT1codHlwZSxucixzaXplKSBfSU9DKF9JT0NfV1JJVEUsICh0eXBlKSwgKG5yKSwgKF9JT0NfVFlQRUNIRUNLKHNpemUpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9JT1dSKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1JFQUR8X0lPQ19XUklURSwodHlwZSksKG5yKSwoX0lPQ19UWVBFQ0hFQ0soc2l6ZSkpKQotI2RlZmluZSBfSU9SX0JBRCh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19SRUFELCh0eXBlKSwobnIpLHNpemVvZihzaXplKSkKLSNkZWZpbmUgX0lPV19CQUQodHlwZSxucixzaXplKSBfSU9DKF9JT0NfV1JJVEUsKHR5cGUpLChuciksc2l6ZW9mKHNpemUpKQotI2RlZmluZSBfSU9XUl9CQUQodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRHxfSU9DX1dSSVRFLCh0eXBlKSwobnIpLHNpemVvZihzaXplKSkKKyNkZWZpbmUgX0lPV1IodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRCB8IF9JT0NfV1JJVEUsICh0eXBlKSwgKG5yKSwgKF9JT0NfVFlQRUNIRUNLKHNpemUpKSkKKyNkZWZpbmUgX0lPUl9CQUQodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRCwgKHR5cGUpLCAobnIpLCBzaXplb2Yoc2l6ZSkpCisjZGVmaW5lIF9JT1dfQkFEKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1dSSVRFLCAodHlwZSksIChuciksIHNpemVvZihzaXplKSkKKyNkZWZpbmUgX0lPV1JfQkFEKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1JFQUQgfCBfSU9DX1dSSVRFLCAodHlwZSksIChuciksIHNpemVvZihzaXplKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9JT0NfRElSKG5yKSAoKChucikgPj4gX0lPQ19ESVJTSElGVCkgJiBfSU9DX0RJUk1BU0spCiAjZGVmaW5lIF9JT0NfVFlQRShucikgKCgobnIpID4+IF9JT0NfVFlQRVNISUZUKSAmIF9JT0NfVFlQRU1BU0spCkBAIC02OCw3ICs2OCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJT0NfSU4gKF9JT0NfV1JJVEUgPDwgX0lPQ19ESVJTSElGVCkKICNkZWZpbmUgSU9DX09VVCAoX0lPQ19SRUFEIDw8IF9JT0NfRElSU0hJRlQpCi0jZGVmaW5lIElPQ19JTk9VVCAoKF9JT0NfV1JJVEV8X0lPQ19SRUFEKSA8PCBfSU9DX0RJUlNISUZUKQorI2RlZmluZSBJT0NfSU5PVVQgKChfSU9DX1dSSVRFIHwgX0lPQ19SRUFEKSA8PCBfSU9DX0RJUlNISUZUKQogI2RlZmluZSBJT0NTSVpFX01BU0sgKF9JT0NfU0laRU1BU0sgPDwgX0lPQ19TSVpFU0hJRlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJT0NTSVpFX1NISUZUIChfSU9DX1NJWkVTSElGVCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvaXBjYnVmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2lwY2J1Zi5oCmluZGV4IGNjNzI3NGUuLmIxNmY3MjkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvaXBjYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pcGNidWYuaApAQCAtMTksMjAgKzE5LDIwIEBACiAjaWZuZGVmIF9fQVNNX0dFTkVSSUNfSVBDQlVGX0gKICNkZWZpbmUgX19BU01fR0VORVJJQ19JUENCVUZfSAogc3RydWN0IGlwYzY0X3Blcm0gewotIF9fa2VybmVsX2tleV90IGtleTsKKyAgX19rZXJuZWxfa2V5X3Qga2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91aWQzMl90IHVpZDsKLSBfX2tlcm5lbF9naWQzMl90IGdpZDsKLSBfX2tlcm5lbF91aWQzMl90IGN1aWQ7Ci0gX19rZXJuZWxfZ2lkMzJfdCBjZ2lkOworICBfX2tlcm5lbF91aWQzMl90IHVpZDsKKyAgX19rZXJuZWxfZ2lkMzJfdCBnaWQ7CisgIF9fa2VybmVsX3VpZDMyX3QgY3VpZDsKKyAgX19rZXJuZWxfZ2lkMzJfdCBjZ2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9tb2RlX3QgbW9kZTsKLSB1bnNpZ25lZCBjaGFyIF9fcGFkMVs0IC0gc2l6ZW9mKF9fa2VybmVsX21vZGVfdCldOwotIHVuc2lnbmVkIHNob3J0IHNlcTsKLSB1bnNpZ25lZCBzaG9ydCBfX3BhZDI7CisgIF9fa2VybmVsX21vZGVfdCBtb2RlOworICB1bnNpZ25lZCBjaGFyIF9fcGFkMVs0IC0gc2l6ZW9mKF9fa2VybmVsX21vZGVfdCldOworICB1bnNpZ25lZCBzaG9ydCBzZXE7CisgIHVuc2lnbmVkIHNob3J0IF9fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDE7Ci0gX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDI7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQxOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMjsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL21zZ2J1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9tc2didWYuaAppbmRleCBiMjUwMGVmLi44Njc2NzJlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL21zZ2J1Zi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvbXNnYnVmLmgKQEAgLTIxLDMwICsyMSwzMCBAQAogI2luY2x1ZGUgPGFzbS9iaXRzcGVybG9uZy5oPgogc3RydWN0IG1zcWlkNjRfZHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXBjNjRfcGVybSBtc2dfcGVybTsKLSBfX2tlcm5lbF90aW1lX3QgbXNnX3N0aW1lOworICBzdHJ1Y3QgaXBjNjRfcGVybSBtc2dfcGVybTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19zdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX19rZXJuZWxfdGltZV90IG1zZ19ydGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19ydGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX19rZXJuZWxfdGltZV90IG1zZ19jdGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19jdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX19rZXJuZWxfdWxvbmdfdCBtc2dfY2J5dGVzOwotIF9fa2VybmVsX3Vsb25nX3QgbXNnX3FudW07Ci0gX19rZXJuZWxfdWxvbmdfdCBtc2dfcWJ5dGVzOworICBfX2tlcm5lbF91bG9uZ190IG1zZ19jYnl0ZXM7CisgIF9fa2VybmVsX3Vsb25nX3QgbXNnX3FudW07CisgIF9fa2VybmVsX3Vsb25nX3QgbXNnX3FieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfcGlkX3QgbXNnX2xzcGlkOwotIF9fa2VybmVsX3BpZF90IG1zZ19scnBpZDsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNTsKKyAgX19rZXJuZWxfcGlkX3QgbXNnX2xzcGlkOworICBfX2tlcm5lbF9waWRfdCBtc2dfbHJwaWQ7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BhcmFtLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BhcmFtLmgKaW5kZXggNDE2YzRmYi4uNmJkZTE1NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wYXJhbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcGFyYW0uaApAQCAtMjcsNyArMjcsOCBAQAogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBOT0dST1VQCi0jZGVmaW5lIE5PR1JPVVAgKC0xKQorI2RlZmluZSBOT0dST1VQICgtIDEpCiAjZW5kaWYKLSNlbmRpZgorI2RlZmluZSBNQVhIT1NUTkFNRUxFTiA2NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wb2xsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BvbGwuaAppbmRleCA3ZmFhMGI4Li40MTM3YWJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BvbGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BvbGwuaApAQCAtNTEsOSArNTEsOSBAQAogI2RlZmluZSBQT0xMX0JVU1lfTE9PUCAweDgwMDAKIHN0cnVjdCBwb2xsZmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmQ7Ci0gc2hvcnQgZXZlbnRzOwotIHNob3J0IHJldmVudHM7CisgIGludCBmZDsKKyAgc2hvcnQgZXZlbnRzOworICBzaG9ydCByZXZlbnRzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9zaXhfdHlwZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9zaXhfdHlwZXMuaAppbmRleCAxNTE5YWZmLi5hYTY4NDEyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Bvc2l4X3R5cGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wb3NpeF90eXBlcy5oCkBAIC04Miw3ICs4Miw3IEBACiAjaWZuZGVmIF9fa2VybmVsX2ZzaWRfdAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBpbnQgdmFsWzJdOworICBpbnQgdmFsWzJdOwogfSBfX2tlcm5lbF9mc2lkX3Q7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Jlc291cmNlLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Jlc291cmNlLmgKaW5kZXggMjQzODE3YS4uYTJiYjE3ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9yZXNvdXJjZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcmVzb3VyY2UuaApAQCAtNTYsOCArNTYsNCBAQAogI2RlZmluZSBSTElNX0lORklOSVRZICh+MFVMKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2lmbmRlZiBfU1RLX0xJTV9NQVgKLSNkZWZpbmUgX1NUS19MSU1fTUFYIFJMSU1fSU5GSU5JVFkKICNlbmRpZgotI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zZW1idWYuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2VtYnVmLmgKaW5kZXggYmNmMTcwMi4uMWNjNGUzMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zZW1idWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NlbWJ1Zi5oCkBAIC0yMSwyMCArMjEsMjAgQEAKICNpbmNsdWRlIDxhc20vYml0c3BlcmxvbmcuaD4KIHN0cnVjdCBzZW1pZDY0X2RzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlwYzY0X3Blcm0gc2VtX3Blcm07Ci0gX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gc2VtX3Blcm07CisgIF9fa2VybmVsX3RpbWVfdCBzZW1fb3RpbWU7CiAjaWYgX19CSVRTX1BFUl9MT05HICE9IDY0Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fa2VybmVsX3RpbWVfdCBzZW1fY3RpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBzZW1fY3RpbWU7CiAjaWYgX19CSVRTX1BFUl9MT05HICE9IDY0Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIHVuc2lnbmVkIGxvbmcgc2VtX25zZW1zOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OworICB1bnNpZ25lZCBsb25nIHNlbV9uc2VtczsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2htYnVmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NobWJ1Zi5oCmluZGV4IDY4Yjg1OWQuLjZlYjhiNmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2htYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaG1idWYuaApAQCAtMjEsNDMgKzIxLDQzIEBACiAjaW5jbHVkZSA8YXNtL2JpdHNwZXJsb25nLmg+CiBzdHJ1Y3Qgc2htaWQ2NF9kcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpcGM2NF9wZXJtIHNobV9wZXJtOwotIHNpemVfdCBzaG1fc2Vnc3o7Ci0gX19rZXJuZWxfdGltZV90IHNobV9hdGltZTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gc2htX3Blcm07CisgIHNpemVfdCBzaG1fc2Vnc3o7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fYXRpbWU7CiAjaWYgX19CSVRTX1BFUl9MT05HICE9IDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKICNlbmRpZgotIF9fa2VybmVsX3RpbWVfdCBzaG1fZHRpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fZHRpbWU7CiAjaWYgX19CSVRTX1BFUl9MT05HICE9IDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKICNlbmRpZgotIF9fa2VybmVsX3RpbWVfdCBzaG1fY3RpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fY3RpbWU7CiAjaWYgX19CSVRTX1BFUl9MT05HICE9IDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKICNlbmRpZgotIF9fa2VybmVsX3BpZF90IHNobV9jcGlkOwotIF9fa2VybmVsX3BpZF90IHNobV9scGlkOworICBfX2tlcm5lbF9waWRfdCBzaG1fY3BpZDsKKyAgX19rZXJuZWxfcGlkX3Qgc2htX2xwaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3Qgc2htX25hdHRjaDsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNTsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1fbmF0dGNoOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaG1pbmZvNjQgewotIF9fa2VybmVsX3Vsb25nX3Qgc2htbWF4OwotIF9fa2VybmVsX3Vsb25nX3Qgc2htbWluOwotIF9fa2VybmVsX3Vsb25nX3Qgc2htbW5pOworICBfX2tlcm5lbF91bG9uZ190IHNobW1heDsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1taW47CisgIF9fa2VybmVsX3Vsb25nX3Qgc2htbW5pOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IHNobXNlZzsKLSBfX2tlcm5lbF91bG9uZ190IHNobWFsbDsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMTsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMjsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1zZWc7CisgIF9fa2VybmVsX3Vsb25nX3Qgc2htYWxsOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMTsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQzOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMzsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWdpbmZvLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ2luZm8uaAppbmRleCA0Mjc3MGVlLi4yMDgzZmExIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ2luZm8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ2luZm8uaApAQCAtMjIsOCArMjIsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bmlvbiBzaWd2YWwgewotIGludCBzaXZhbF9pbnQ7Ci0gdm9pZCBfX3VzZXIgKnNpdmFsX3B0cjsKKyAgaW50IHNpdmFsX2ludDsKKyAgdm9pZCBfX3VzZXIgKiBzaXZhbF9wdHI7CiB9IHNpZ3ZhbF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgX19BUkNIX1NJX1BSRUFNQkxFX1NJWkUKQEAgLTUyLDYyICs1Miw2MiBAQAogI2lmbmRlZiBIQVZFX0FSQ0hfU0lHSU5GT19UCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3Qgc2lnaW5mbyB7Ci0gaW50IHNpX3NpZ25vOwotIGludCBzaV9lcnJubzsKLSBpbnQgc2lfY29kZTsKKyAgaW50IHNpX3NpZ25vOworICBpbnQgc2lfZXJybm87CisgIGludCBzaV9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gaW50IF9wYWRbU0lfUEFEX1NJWkVdOwotIHN0cnVjdCB7Ci0gX19rZXJuZWxfcGlkX3QgX3BpZDsKKyAgdW5pb24geworICAgIGludCBfcGFkW1NJX1BBRF9TSVpFXTsKKyAgICBzdHJ1Y3QgeworICAgICAgX19rZXJuZWxfcGlkX3QgX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19BUkNIX1NJX1VJRF9UIF91aWQ7Ci0gfSBfa2lsbDsKLSBzdHJ1Y3QgewotIF9fa2VybmVsX3RpbWVyX3QgX3RpZDsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgIH0gX2tpbGw7CisgICAgc3RydWN0IHsKKyAgICAgIF9fa2VybmVsX3RpbWVyX3QgX3RpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IF9vdmVycnVuOwotIGNoYXIgX3BhZFtzaXplb2YoIF9fQVJDSF9TSV9VSURfVCkgLSBzaXplb2YoaW50KV07Ci0gc2lndmFsX3QgX3NpZ3ZhbDsKLSBpbnQgX3N5c19wcml2YXRlOworICAgICAgaW50IF9vdmVycnVuOworICAgICAgY2hhciBfcGFkW3NpemVvZihfX0FSQ0hfU0lfVUlEX1QpIC0gc2l6ZW9mKGludCldOworICAgICAgc2lndmFsX3QgX3NpZ3ZhbDsKKyAgICAgIGludCBfc3lzX3ByaXZhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gX3RpbWVyOwotIHN0cnVjdCB7Ci0gX19rZXJuZWxfcGlkX3QgX3BpZDsKLSBfX0FSQ0hfU0lfVUlEX1QgX3VpZDsKKyAgICB9IF90aW1lcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX19rZXJuZWxfcGlkX3QgX3BpZDsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaWd2YWxfdCBfc2lndmFsOwotIH0gX3J0OwotIHN0cnVjdCB7Ci0gX19rZXJuZWxfcGlkX3QgX3BpZDsKKyAgICAgIHNpZ3ZhbF90IF9zaWd2YWw7CisgICAgfSBfcnQ7CisgICAgc3RydWN0IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IF9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQVJDSF9TSV9VSURfVCBfdWlkOwotIGludCBfc3RhdHVzOwotIF9fQVJDSF9TSV9DTE9DS19UIF91dGltZTsKLSBfX0FSQ0hfU0lfQ0xPQ0tfVCBfc3RpbWU7CisgICAgICBfX0FSQ0hfU0lfVUlEX1QgX3VpZDsKKyAgICAgIGludCBfc3RhdHVzOworICAgICAgX19BUkNIX1NJX0NMT0NLX1QgX3V0aW1lOworICAgICAgX19BUkNIX1NJX0NMT0NLX1QgX3N0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IF9zaWdjaGxkOwotIHN0cnVjdCB7Ci0gdm9pZCBfX3VzZXIgKl9hZGRyOworICAgIH0gX3NpZ2NobGQ7CisgICAgc3RydWN0IHsKKyAgICAgIHZvaWQgX191c2VyICogX2FkZHI7CiAjaWZkZWYgX19BUkNIX1NJX1RSQVBOTwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX3RyYXBubzsKKyAgICAgIGludCBfdHJhcG5vOwogI2VuZGlmCi0gc2hvcnQgX2FkZHJfbHNiOwotIH0gX3NpZ2ZhdWx0OworICAgICAgc2hvcnQgX2FkZHJfbHNiOworICAgIH0gX3NpZ2ZhdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fQVJDSF9TSV9CQU5EX1QgX2JhbmQ7Ci0gaW50IF9mZDsKLSB9IF9zaWdwb2xsOworICAgIHN0cnVjdCB7CisgICAgICBfX0FSQ0hfU0lfQkFORF9UIF9iYW5kOworICAgICAgaW50IF9mZDsKKyAgICB9IF9zaWdwb2xsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHZvaWQgX191c2VyICpfY2FsbF9hZGRyOwotIGludCBfc3lzY2FsbDsKLSB1bnNpZ25lZCBpbnQgX2FyY2g7CisgICAgc3RydWN0IHsKKyAgICAgIHZvaWQgX191c2VyICogX2NhbGxfYWRkcjsKKyAgICAgIGludCBfc3lzY2FsbDsKKyAgICAgIHVuc2lnbmVkIGludCBfYXJjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfc2lnc3lzOwotIH0gX3NpZmllbGRzOworICAgIH0gX3NpZ3N5czsKKyAgfSBfc2lmaWVsZHM7CiB9IF9fQVJDSF9TSV9BVFRSSUJVVEVTIHNpZ2luZm9fdDsKICNkZWZpbmUgX19BUkNIX1NJR1NZUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE1NCw3NiArMTU0LDc2IEBACiAjZGVmaW5lIF9fU0lfQ09ERShULE4pIChOKQogI2RlZmluZSBTSV9VU0VSIDAKICNkZWZpbmUgU0lfS0VSTkVMIDB4ODAKLSNkZWZpbmUgU0lfUVVFVUUgLTEKKyNkZWZpbmUgU0lfUVVFVUUgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSV9USU1FUiBfX1NJX0NPREUoX19TSV9USU1FUiwtMikKLSNkZWZpbmUgU0lfTUVTR1EgX19TSV9DT0RFKF9fU0lfTUVTR1EsLTMpCi0jZGVmaW5lIFNJX0FTWU5DSU8gLTQKLSNkZWZpbmUgU0lfU0lHSU8gLTUKKyNkZWZpbmUgU0lfVElNRVIgX19TSV9DT0RFKF9fU0lfVElNRVIsIC0gMikKKyNkZWZpbmUgU0lfTUVTR1EgX19TSV9DT0RFKF9fU0lfTUVTR1EsIC0gMykKKyNkZWZpbmUgU0lfQVNZTkNJTyAtIDQKKyNkZWZpbmUgU0lfU0lHSU8gLSA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSV9US0lMTCAtNgotI2RlZmluZSBTSV9ERVRIUkVBRCAtNworI2RlZmluZSBTSV9US0lMTCAtIDYKKyNkZWZpbmUgU0lfREVUSFJFQUQgLSA3CiAjZGVmaW5lIFNJX0ZST01VU0VSKHNpcHRyKSAoKHNpcHRyKS0+c2lfY29kZSA8PSAwKQogI2RlZmluZSBTSV9GUk9NS0VSTkVMKHNpcHRyKSAoKHNpcHRyKS0+c2lfY29kZSA+IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJTExfSUxMT1BDIChfX1NJX0ZBVUxUfDEpCi0jZGVmaW5lIElMTF9JTExPUE4gKF9fU0lfRkFVTFR8MikKLSNkZWZpbmUgSUxMX0lMTEFEUiAoX19TSV9GQVVMVHwzKQotI2RlZmluZSBJTExfSUxMVFJQIChfX1NJX0ZBVUxUfDQpCisjZGVmaW5lIElMTF9JTExPUEMgKF9fU0lfRkFVTFQgfCAxKQorI2RlZmluZSBJTExfSUxMT1BOIChfX1NJX0ZBVUxUIHwgMikKKyNkZWZpbmUgSUxMX0lMTEFEUiAoX19TSV9GQVVMVCB8IDMpCisjZGVmaW5lIElMTF9JTExUUlAgKF9fU0lfRkFVTFQgfCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUxMX1BSVk9QQyAoX19TSV9GQVVMVHw1KQotI2RlZmluZSBJTExfUFJWUkVHIChfX1NJX0ZBVUxUfDYpCi0jZGVmaW5lIElMTF9DT1BST0MgKF9fU0lfRkFVTFR8NykKLSNkZWZpbmUgSUxMX0JBRFNUSyAoX19TSV9GQVVMVHw4KQorI2RlZmluZSBJTExfUFJWT1BDIChfX1NJX0ZBVUxUIHwgNSkKKyNkZWZpbmUgSUxMX1BSVlJFRyAoX19TSV9GQVVMVCB8IDYpCisjZGVmaW5lIElMTF9DT1BST0MgKF9fU0lfRkFVTFQgfCA3KQorI2RlZmluZSBJTExfQkFEU1RLIChfX1NJX0ZBVUxUIHwgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5TSUdJTEwgOAotI2RlZmluZSBGUEVfSU5URElWIChfX1NJX0ZBVUxUfDEpCi0jZGVmaW5lIEZQRV9JTlRPVkYgKF9fU0lfRkFVTFR8MikKLSNkZWZpbmUgRlBFX0ZMVERJViAoX19TSV9GQVVMVHwzKQorI2RlZmluZSBGUEVfSU5URElWIChfX1NJX0ZBVUxUIHwgMSkKKyNkZWZpbmUgRlBFX0lOVE9WRiAoX19TSV9GQVVMVCB8IDIpCisjZGVmaW5lIEZQRV9GTFRESVYgKF9fU0lfRkFVTFQgfCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlBFX0ZMVE9WRiAoX19TSV9GQVVMVHw0KQotI2RlZmluZSBGUEVfRkxUVU5EIChfX1NJX0ZBVUxUfDUpCi0jZGVmaW5lIEZQRV9GTFRSRVMgKF9fU0lfRkFVTFR8NikKLSNkZWZpbmUgRlBFX0ZMVElOViAoX19TSV9GQVVMVHw3KQorI2RlZmluZSBGUEVfRkxUT1ZGIChfX1NJX0ZBVUxUIHwgNCkKKyNkZWZpbmUgRlBFX0ZMVFVORCAoX19TSV9GQVVMVCB8IDUpCisjZGVmaW5lIEZQRV9GTFRSRVMgKF9fU0lfRkFVTFQgfCA2KQorI2RlZmluZSBGUEVfRkxUSU5WIChfX1NJX0ZBVUxUIHwgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZQRV9GTFRTVUIgKF9fU0lfRkFVTFR8OCkKKyNkZWZpbmUgRlBFX0ZMVFNVQiAoX19TSV9GQVVMVCB8IDgpCiAjZGVmaW5lIE5TSUdGUEUgOAotI2RlZmluZSBTRUdWX01BUEVSUiAoX19TSV9GQVVMVHwxKQotI2RlZmluZSBTRUdWX0FDQ0VSUiAoX19TSV9GQVVMVHwyKQorI2RlZmluZSBTRUdWX01BUEVSUiAoX19TSV9GQVVMVCB8IDEpCisjZGVmaW5lIFNFR1ZfQUNDRVJSIChfX1NJX0ZBVUxUIHwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5TSUdTRUdWIDIKLSNkZWZpbmUgQlVTX0FEUkFMTiAoX19TSV9GQVVMVHwxKQotI2RlZmluZSBCVVNfQURSRVJSIChfX1NJX0ZBVUxUfDIpCi0jZGVmaW5lIEJVU19PQkpFUlIgKF9fU0lfRkFVTFR8MykKKyNkZWZpbmUgQlVTX0FEUkFMTiAoX19TSV9GQVVMVCB8IDEpCisjZGVmaW5lIEJVU19BRFJFUlIgKF9fU0lfRkFVTFQgfCAyKQorI2RlZmluZSBCVVNfT0JKRVJSIChfX1NJX0ZBVUxUIHwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJVU19NQ0VFUlJfQVIgKF9fU0lfRkFVTFR8NCkKLSNkZWZpbmUgQlVTX01DRUVSUl9BTyAoX19TSV9GQVVMVHw1KQorI2RlZmluZSBCVVNfTUNFRVJSX0FSIChfX1NJX0ZBVUxUIHwgNCkKKyNkZWZpbmUgQlVTX01DRUVSUl9BTyAoX19TSV9GQVVMVCB8IDUpCiAjZGVmaW5lIE5TSUdCVVMgNQotI2RlZmluZSBUUkFQX0JSS1BUIChfX1NJX0ZBVUxUfDEpCisjZGVmaW5lIFRSQVBfQlJLUFQgKF9fU0lfRkFVTFQgfCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVFJBUF9UUkFDRSAoX19TSV9GQVVMVHwyKQotI2RlZmluZSBUUkFQX0JSQU5DSCAoX19TSV9GQVVMVHwzKQotI2RlZmluZSBUUkFQX0hXQktQVCAoX19TSV9GQVVMVHw0KQorI2RlZmluZSBUUkFQX1RSQUNFIChfX1NJX0ZBVUxUIHwgMikKKyNkZWZpbmUgVFJBUF9CUkFOQ0ggKF9fU0lfRkFVTFQgfCAzKQorI2RlZmluZSBUUkFQX0hXQktQVCAoX19TSV9GQVVMVCB8IDQpCiAjZGVmaW5lIE5TSUdUUkFQIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENMRF9FWElURUQgKF9fU0lfQ0hMRHwxKQotI2RlZmluZSBDTERfS0lMTEVEIChfX1NJX0NITER8MikKLSNkZWZpbmUgQ0xEX0RVTVBFRCAoX19TSV9DSExEfDMpCi0jZGVmaW5lIENMRF9UUkFQUEVEIChfX1NJX0NITER8NCkKKyNkZWZpbmUgQ0xEX0VYSVRFRCAoX19TSV9DSExEIHwgMSkKKyNkZWZpbmUgQ0xEX0tJTExFRCAoX19TSV9DSExEIHwgMikKKyNkZWZpbmUgQ0xEX0RVTVBFRCAoX19TSV9DSExEIHwgMykKKyNkZWZpbmUgQ0xEX1RSQVBQRUQgKF9fU0lfQ0hMRCB8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDTERfU1RPUFBFRCAoX19TSV9DSExEfDUpCi0jZGVmaW5lIENMRF9DT05USU5VRUQgKF9fU0lfQ0hMRHw2KQorI2RlZmluZSBDTERfU1RPUFBFRCAoX19TSV9DSExEIHwgNSkKKyNkZWZpbmUgQ0xEX0NPTlRJTlVFRCAoX19TSV9DSExEIHwgNikKICNkZWZpbmUgTlNJR0NITEQgNgotI2RlZmluZSBQT0xMX0lOIChfX1NJX1BPTEx8MSkKKyNkZWZpbmUgUE9MTF9JTiAoX19TSV9QT0xMIHwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBPTExfT1VUIChfX1NJX1BPTEx8MikKLSNkZWZpbmUgUE9MTF9NU0cgKF9fU0lfUE9MTHwzKQotI2RlZmluZSBQT0xMX0VSUiAoX19TSV9QT0xMfDQpCi0jZGVmaW5lIFBPTExfUFJJIChfX1NJX1BPTEx8NSkKKyNkZWZpbmUgUE9MTF9PVVQgKF9fU0lfUE9MTCB8IDIpCisjZGVmaW5lIFBPTExfTVNHIChfX1NJX1BPTEwgfCAzKQorI2RlZmluZSBQT0xMX0VSUiAoX19TSV9QT0xMIHwgNCkKKyNkZWZpbmUgUE9MTF9QUkkgKF9fU0lfUE9MTCB8IDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQT0xMX0hVUCAoX19TSV9QT0xMfDYpCisjZGVmaW5lIFBPTExfSFVQIChfX1NJX1BPTEwgfCA2KQogI2RlZmluZSBOU0lHUE9MTCA2Ci0jZGVmaW5lIFNZU19TRUNDT01QIChfX1NJX1NZU3wxKQorI2RlZmluZSBTWVNfU0VDQ09NUCAoX19TSV9TWVMgfCAxKQogI2RlZmluZSBOU0lHU1lTIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNJR0VWX1NJR05BTCAwCkBAIC0yMzYsMjIgKzIzNiwyMiBAQAogI2VuZGlmCiAjZGVmaW5lIFNJR0VWX01BWF9TSVpFIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSUdFVl9QQURfU0laRSAoKFNJR0VWX01BWF9TSVpFIC0gX19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkUpICAgLyBzaXplb2YoaW50KSkKKyNkZWZpbmUgU0lHRVZfUEFEX1NJWkUgKChTSUdFVl9NQVhfU0laRSAtIF9fQVJDSF9TSUdFVl9QUkVBTUJMRV9TSVpFKSAvIHNpemVvZihpbnQpKQogdHlwZWRlZiBzdHJ1Y3Qgc2lnZXZlbnQgewotIHNpZ3ZhbF90IHNpZ2V2X3ZhbHVlOwotIGludCBzaWdldl9zaWdubzsKKyAgc2lndmFsX3Qgc2lnZXZfdmFsdWU7CisgIGludCBzaWdldl9zaWdubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNpZ2V2X25vdGlmeTsKLSB1bmlvbiB7Ci0gaW50IF9wYWRbU0lHRVZfUEFEX1NJWkVdOwotIGludCBfdGlkOworICBpbnQgc2lnZXZfbm90aWZ5OworICB1bmlvbiB7CisgICAgaW50IF9wYWRbU0lHRVZfUEFEX1NJWkVdOworICAgIGludCBfdGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHZvaWQgKCpfZnVuY3Rpb24pKHNpZ3ZhbF90KTsKLSB2b2lkICpfYXR0cmlidXRlOwotIH0gX3NpZ2V2X3RocmVhZDsKKyAgICBzdHJ1Y3QgeworICAgICAgdm9pZCgqIF9mdW5jdGlvbikgKHNpZ3ZhbF90KTsKKyAgICAgIHZvaWQgKiBfYXR0cmlidXRlOworICAgIH0gX3NpZ2V2X3RocmVhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfc2lnZXZfdW47CisgIH0gX3NpZ2V2X3VuOwogfSBzaWdldmVudF90OwogI2RlZmluZSBzaWdldl9ub3RpZnlfZnVuY3Rpb24gX3NpZ2V2X3VuLl9zaWdldl90aHJlYWQuX2Z1bmN0aW9uCiAjZGVmaW5lIHNpZ2V2X25vdGlmeV9hdHRyaWJ1dGVzIF9zaWdldl91bi5fc2lnZXZfdGhyZWFkLl9hdHRyaWJ1dGUKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLWRlZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLWRlZnMuaAppbmRleCBmNDdjYmU3Li5hZDc3ZDc3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ25hbC1kZWZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwtZGVmcy5oCkBAIC0zMywxMyArMzMsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogdHlwZWRlZiB2b2lkIF9fc2lnbmFsZm5fdChpbnQpOwotdHlwZWRlZiBfX3NpZ25hbGZuX3QgX191c2VyICpfX3NpZ2hhbmRsZXJfdDsKK3R5cGVkZWYgX19zaWduYWxmbl90IF9fdXNlciAqIF9fc2lnaGFuZGxlcl90OwogdHlwZWRlZiB2b2lkIF9fcmVzdG9yZWZuX3Qodm9pZCk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZiBfX3Jlc3RvcmVmbl90IF9fdXNlciAqX19zaWdyZXN0b3JlX3Q7Ci0jZGVmaW5lIFNJR19ERkwgKChfX2ZvcmNlIF9fc2lnaGFuZGxlcl90KTApCi0jZGVmaW5lIFNJR19JR04gKChfX2ZvcmNlIF9fc2lnaGFuZGxlcl90KTEpCi0jZGVmaW5lIFNJR19FUlIgKChfX2ZvcmNlIF9fc2lnaGFuZGxlcl90KS0xKQordHlwZWRlZiBfX3Jlc3RvcmVmbl90IF9fdXNlciAqIF9fc2lncmVzdG9yZV90OworI2RlZmluZSBTSUdfREZMICgoX19mb3JjZSBfX3NpZ2hhbmRsZXJfdCkgMCkKKyNkZWZpbmUgU0lHX0lHTiAoKF9fZm9yY2UgX19zaWdoYW5kbGVyX3QpIDEpCisjZGVmaW5lIFNJR19FUlIgKChfX2ZvcmNlIF9fc2lnaGFuZGxlcl90KSAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ25hbC5oCmluZGV4IGUxMDMyNDAuLjMwMTg4Y2IgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwuaApAQCAtODcsNyArODcsNyBAQAogI2lmbmRlZiBfX0FTU0VNQkxZX18KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBzaWdbX05TSUdfV09SRFNdOworICB1bnNpZ25lZCBsb25nIHNpZ1tfTlNJR19XT1JEU107CiB9IHNpZ3NldF90OwogdHlwZWRlZiB1bnNpZ25lZCBsb25nIG9sZF9zaWdzZXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC05NywxOSArOTcsMTkgQEAKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaWdhY3Rpb24gewotIF9fc2lnaGFuZGxlcl90IHNhX2hhbmRsZXI7Ci0gdW5zaWduZWQgbG9uZyBzYV9mbGFnczsKKyAgX19zaWdoYW5kbGVyX3Qgc2FfaGFuZGxlcjsKKyAgdW5zaWduZWQgbG9uZyBzYV9mbGFnczsKICNpZmRlZiBTQV9SRVNUT1JFUgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3NpZ3Jlc3RvcmVfdCBzYV9yZXN0b3JlcjsKKyAgX19zaWdyZXN0b3JlX3Qgc2FfcmVzdG9yZXI7CiAjZW5kaWYKLSBzaWdzZXRfdCBzYV9tYXNrOworICBzaWdzZXRfdCBzYV9tYXNrOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBzaWdhbHRzdGFjayB7Ci0gdm9pZCBfX3VzZXIgKnNzX3NwOwotIGludCBzc19mbGFnczsKLSBzaXplX3Qgc3Nfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBzc19zcDsKKyAgaW50IHNzX2ZsYWdzOworICBzaXplX3Qgc3Nfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHN0YWNrX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc3RhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0LmgKaW5kZXggYTk0YzY5ZC4uNGRiYzIwOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0LmgKQEAgLTIyLDU5ICsyMiw1OSBAQAogI2RlZmluZSBTVEFUX0hBVkVfTlNFQyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHN0YXQgewotIHVuc2lnbmVkIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGxvbmcgc3RfaW5vOwotIHVuc2lnbmVkIGludCBzdF9tb2RlOworICB1bnNpZ25lZCBsb25nIHN0X2RldjsKKyAgdW5zaWduZWQgbG9uZyBzdF9pbm87CisgIHVuc2lnbmVkIGludCBzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgaW50IHN0X3VpZDsKLSB1bnNpZ25lZCBpbnQgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKKyAgdW5zaWduZWQgaW50IHN0X25saW5rOworICB1bnNpZ25lZCBpbnQgc3RfdWlkOworICB1bnNpZ25lZCBpbnQgc3RfZ2lkOworICB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX19wYWQxOwotIGxvbmcgc3Rfc2l6ZTsKLSBpbnQgc3RfYmxrc2l6ZTsKLSBpbnQgX19wYWQyOworICB1bnNpZ25lZCBsb25nIF9fcGFkMTsKKyAgbG9uZyBzdF9zaXplOworICBpbnQgc3RfYmxrc2l6ZTsKKyAgaW50IF9fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBzdF9ibG9ja3M7Ci0gbG9uZyBzdF9hdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7Ci0gbG9uZyBzdF9tdGltZTsKKyAgbG9uZyBzdF9ibG9ja3M7CisgIGxvbmcgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKKyAgbG9uZyBzdF9tdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOwotIGxvbmcgc3RfY3RpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOwotIHVuc2lnbmVkIGludCBfX3VudXNlZDQ7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKKyAgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBpbnQgX191bnVzZWQ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgX191bnVzZWQ1OworICB1bnNpZ25lZCBpbnQgX191bnVzZWQ1OwogfTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQgfHwgZGVmaW5lZChfX0FSQ0hfV0FOVF9TVEFUNjQpCiBzdHJ1Y3Qgc3RhdDY0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBsb25nIHN0X2RldjsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOwotIHVuc2lnbmVkIGludCBzdF9tb2RlOwotIHVuc2lnbmVkIGludCBzdF9ubGluazsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2RldjsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2lubzsKKyAgdW5zaWduZWQgaW50IHN0X21vZGU7CisgIHVuc2lnbmVkIGludCBzdF9ubGluazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X3VpZDsKLSB1bnNpZ25lZCBpbnQgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OwotIHVuc2lnbmVkIGxvbmcgbG9uZyBfX3BhZDE7CisgIHVuc2lnbmVkIGludCBzdF91aWQ7CisgIHVuc2lnbmVkIGludCBzdF9naWQ7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OworICB1bnNpZ25lZCBsb25nIGxvbmcgX19wYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGxvbmcgc3Rfc2l6ZTsKLSBpbnQgc3RfYmxrc2l6ZTsKLSBpbnQgX19wYWQyOwotIGxvbmcgbG9uZyBzdF9ibG9ja3M7CisgIGxvbmcgbG9uZyBzdF9zaXplOworICBpbnQgc3RfYmxrc2l6ZTsKKyAgaW50IF9fcGFkMjsKKyAgbG9uZyBsb25nIHN0X2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0X2F0aW1lOwotIHVuc2lnbmVkIGludCBzdF9hdGltZV9uc2VjOwotIGludCBzdF9tdGltZTsKLSB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKKyAgaW50IHN0X2F0aW1lOworICB1bnNpZ25lZCBpbnQgc3RfYXRpbWVfbnNlYzsKKyAgaW50IHN0X210aW1lOworICB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0X2N0aW1lOwotIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOwotIHVuc2lnbmVkIGludCBfX3VudXNlZDQ7Ci0gdW5zaWduZWQgaW50IF9fdW51c2VkNTsKKyAgaW50IHN0X2N0aW1lOworICB1bnNpZ25lZCBpbnQgc3RfY3RpbWVfbnNlYzsKKyAgdW5zaWduZWQgaW50IF9fdW51c2VkNDsKKyAgdW5zaWduZWQgaW50IF9fdW51c2VkNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXRmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0ZnMuaAppbmRleCAxYzhjNTg5Li4wZDAzY2ZmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXRmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc3RhdGZzLmgKQEAgLTI5LDIxICsyOSwyMSBAQAogI2VuZGlmCiAjZW5kaWYKIHN0cnVjdCBzdGF0ZnMgewotIF9fc3RhdGZzX3dvcmQgZl90eXBlOworICBfX3N0YXRmc193b3JkIGZfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zdGF0ZnNfd29yZCBmX2JzaXplOwotIF9fc3RhdGZzX3dvcmQgZl9ibG9ja3M7Ci0gX19zdGF0ZnNfd29yZCBmX2JmcmVlOwotIF9fc3RhdGZzX3dvcmQgZl9iYXZhaWw7CisgIF9fc3RhdGZzX3dvcmQgZl9ic2l6ZTsKKyAgX19zdGF0ZnNfd29yZCBmX2Jsb2NrczsKKyAgX19zdGF0ZnNfd29yZCBmX2JmcmVlOworICBfX3N0YXRmc193b3JkIGZfYmF2YWlsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N0YXRmc193b3JkIGZfZmlsZXM7Ci0gX19zdGF0ZnNfd29yZCBmX2ZmcmVlOwotIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7Ci0gX19zdGF0ZnNfd29yZCBmX25hbWVsZW47CisgIF9fc3RhdGZzX3dvcmQgZl9maWxlczsKKyAgX19zdGF0ZnNfd29yZCBmX2ZmcmVlOworICBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOworICBfX3N0YXRmc193b3JkIGZfbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zdGF0ZnNfd29yZCBmX2Zyc2l6ZTsKLSBfX3N0YXRmc193b3JkIGZfZmxhZ3M7Ci0gX19zdGF0ZnNfd29yZCBmX3NwYXJlWzRdOworICBfX3N0YXRmc193b3JkIGZfZnJzaXplOworICBfX3N0YXRmc193b3JkIGZfZmxhZ3M7CisgIF9fc3RhdGZzX3dvcmQgZl9zcGFyZVs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBBUkNIX1BBQ0tfU1RBVEZTNjQKQEAgLTUxLDIwICs1MSwyMCBAQAogI2VuZGlmCiBzdHJ1Y3Qgc3RhdGZzNjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N0YXRmc193b3JkIGZfdHlwZTsKLSBfX3N0YXRmc193b3JkIGZfYnNpemU7Ci0gX191NjQgZl9ibG9ja3M7Ci0gX191NjQgZl9iZnJlZTsKKyAgX19zdGF0ZnNfd29yZCBmX3R5cGU7CisgIF9fc3RhdGZzX3dvcmQgZl9ic2l6ZTsKKyAgX191NjQgZl9ibG9ja3M7CisgIF9fdTY0IGZfYmZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZfYmF2YWlsOwotIF9fdTY0IGZfZmlsZXM7Ci0gX191NjQgZl9mZnJlZTsKLSBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOworICBfX3U2NCBmX2JhdmFpbDsKKyAgX191NjQgZl9maWxlczsKKyAgX191NjQgZl9mZnJlZTsKKyAgX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zdGF0ZnNfd29yZCBmX25hbWVsZW47Ci0gX19zdGF0ZnNfd29yZCBmX2Zyc2l6ZTsKLSBfX3N0YXRmc193b3JkIGZfZmxhZ3M7Ci0gX19zdGF0ZnNfd29yZCBmX3NwYXJlWzRdOworICBfX3N0YXRmc193b3JkIGZfbmFtZWxlbjsKKyAgX19zdGF0ZnNfd29yZCBmX2Zyc2l6ZTsKKyAgX19zdGF0ZnNfd29yZCBmX2ZsYWdzOworICBfX3N0YXRmc193b3JkIGZfc3BhcmVbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBBUkNIX1BBQ0tfU1RBVEZTNjQ7CiAjaWZuZGVmIEFSQ0hfUEFDS19DT01QQVRfU1RBVEZTNjQKQEAgLTcyLDIwICs3MiwyMCBAQAogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvbXBhdF9zdGF0ZnM2NCB7Ci0gX191MzIgZl90eXBlOwotIF9fdTMyIGZfYnNpemU7Ci0gX191NjQgZl9ibG9ja3M7CisgIF9fdTMyIGZfdHlwZTsKKyAgX191MzIgZl9ic2l6ZTsKKyAgX191NjQgZl9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZfYmZyZWU7Ci0gX191NjQgZl9iYXZhaWw7Ci0gX191NjQgZl9maWxlczsKLSBfX3U2NCBmX2ZmcmVlOworICBfX3U2NCBmX2JmcmVlOworICBfX3U2NCBmX2JhdmFpbDsKKyAgX191NjQgZl9maWxlczsKKyAgX191NjQgZl9mZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKLSBfX3UzMiBmX25hbWVsZW47Ci0gX191MzIgZl9mcnNpemU7Ci0gX191MzIgZl9mbGFnczsKKyAgX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKKyAgX191MzIgZl9uYW1lbGVuOworICBfX3UzMiBmX2Zyc2l6ZTsKKyAgX191MzIgZl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZl9zcGFyZVs0XTsKKyAgX191MzIgZl9zcGFyZVs0XTsKIH0gQVJDSF9QQUNLX0NPTVBBVF9TVEFURlM2NDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtYml0cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtYml0cy5oCmluZGV4IDU4YWNkM2QuLmMwOGJiYjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdGVybWJpdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1iaXRzLmgKQEAgLTI2LDM4ICsyNiwzOCBAQAogI2RlZmluZSBOQ0NTIDE5CiBzdHJ1Y3QgdGVybWlvcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRjZmxhZ190IGNfaWZsYWc7Ci0gdGNmbGFnX3QgY19vZmxhZzsKLSB0Y2ZsYWdfdCBjX2NmbGFnOwotIHRjZmxhZ190IGNfbGZsYWc7CisgIHRjZmxhZ190IGNfaWZsYWc7CisgIHRjZmxhZ190IGNfb2ZsYWc7CisgIHRjZmxhZ190IGNfY2ZsYWc7CisgIHRjZmxhZ190IGNfbGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNjX3QgY19saW5lOwotIGNjX3QgY19jY1tOQ0NTXTsKKyAgY2NfdCBjX2xpbmU7CisgIGNjX3QgY19jY1tOQ0NTXTsKIH07CiBzdHJ1Y3QgdGVybWlvczIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Y2ZsYWdfdCBjX2lmbGFnOwotIHRjZmxhZ190IGNfb2ZsYWc7Ci0gdGNmbGFnX3QgY19jZmxhZzsKLSB0Y2ZsYWdfdCBjX2xmbGFnOworICB0Y2ZsYWdfdCBjX2lmbGFnOworICB0Y2ZsYWdfdCBjX29mbGFnOworICB0Y2ZsYWdfdCBjX2NmbGFnOworICB0Y2ZsYWdfdCBjX2xmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjY190IGNfbGluZTsKLSBjY190IGNfY2NbTkNDU107Ci0gc3BlZWRfdCBjX2lzcGVlZDsKLSBzcGVlZF90IGNfb3NwZWVkOworICBjY190IGNfbGluZTsKKyAgY2NfdCBjX2NjW05DQ1NdOworICBzcGVlZF90IGNfaXNwZWVkOworICBzcGVlZF90IGNfb3NwZWVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3Rlcm1pb3MgewotIHRjZmxhZ190IGNfaWZsYWc7Ci0gdGNmbGFnX3QgY19vZmxhZzsKKyAgdGNmbGFnX3QgY19pZmxhZzsKKyAgdGNmbGFnX3QgY19vZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNmbGFnX3QgY19jZmxhZzsKLSB0Y2ZsYWdfdCBjX2xmbGFnOwotIGNjX3QgY19saW5lOwotIGNjX3QgY19jY1tOQ0NTXTsKKyAgdGNmbGFnX3QgY19jZmxhZzsKKyAgdGNmbGFnX3QgY19sZmxhZzsKKyAgY2NfdCBjX2xpbmU7CisgIGNjX3QgY19jY1tOQ0NTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3BlZWRfdCBjX2lzcGVlZDsKLSBzcGVlZF90IGNfb3NwZWVkOworICBzcGVlZF90IGNfaXNwZWVkOworICBzcGVlZF90IGNfb3NwZWVkOwogfTsKICNkZWZpbmUgVklOVFIgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdGVybWlvcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtaW9zLmgKaW5kZXggMGE1ZGZkNi4uMWU1ZjljZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtaW9zLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtaW9zLmgKQEAgLTIyLDIyICsyMiwyMiBAQAogI2luY2x1ZGUgPGFzbS9pb2N0bHMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgd2luc2l6ZSB7Ci0gdW5zaWduZWQgc2hvcnQgd3Nfcm93OwotIHVuc2lnbmVkIHNob3J0IHdzX2NvbDsKLSB1bnNpZ25lZCBzaG9ydCB3c194cGl4ZWw7CisgIHVuc2lnbmVkIHNob3J0IHdzX3JvdzsKKyAgdW5zaWduZWQgc2hvcnQgd3NfY29sOworICB1bnNpZ25lZCBzaG9ydCB3c194cGl4ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHdzX3lwaXhlbDsKKyAgdW5zaWduZWQgc2hvcnQgd3NfeXBpeGVsOwogfTsKICNkZWZpbmUgTkNDIDgKIHN0cnVjdCB0ZXJtaW8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjX2lmbGFnOwotIHVuc2lnbmVkIHNob3J0IGNfb2ZsYWc7Ci0gdW5zaWduZWQgc2hvcnQgY19jZmxhZzsKLSB1bnNpZ25lZCBzaG9ydCBjX2xmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2lmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX29mbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2NmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2xmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNfbGluZTsKLSB1bnNpZ25lZCBjaGFyIGNfY2NbTkNDXTsKKyAgdW5zaWduZWQgY2hhciBjX2xpbmU7CisgIHVuc2lnbmVkIGNoYXIgY19jY1tOQ0NdOwogfTsKICNkZWZpbmUgVElPQ01fTEUgMHgwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Vjb250ZXh0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Vjb250ZXh0LmgKaW5kZXggZjI2ZDFjYy4uY2ZiMWQyYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91Y29udGV4dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdWNvbnRleHQuaApAQCAtMTksMTIgKzE5LDEyIEBACiAjaWZuZGVmIF9fQVNNX0dFTkVSSUNfVUNPTlRFWFRfSAogI2RlZmluZSBfX0FTTV9HRU5FUklDX1VDT05URVhUX0gKIHN0cnVjdCB1Y29udGV4dCB7Ci0gdW5zaWduZWQgbG9uZyB1Y19mbGFnczsKKyAgdW5zaWduZWQgbG9uZyB1Y19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVjb250ZXh0ICp1Y19saW5rOwotIHN0YWNrX3QgdWNfc3RhY2s7Ci0gc3RydWN0IHNpZ2NvbnRleHQgdWNfbWNvbnRleHQ7Ci0gc2lnc2V0X3QgdWNfc2lnbWFzazsKKyAgc3RydWN0IHVjb250ZXh0ICogdWNfbGluazsKKyAgc3RhY2tfdCB1Y19zdGFjazsKKyAgc3RydWN0IHNpZ2NvbnRleHQgdWNfbWNvbnRleHQ7CisgIHNpZ3NldF90IHVjX3NpZ21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91bmlzdGQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdW5pc3RkLmgKaW5kZXggYmVjYzgyZC4uZDdhYzZjMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91bmlzdGQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3VuaXN0ZC5oCkBAIC0xOCwyMiArMTgsMjIgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2luY2x1ZGUgPGFzbS9iaXRzcGVybG9uZy5oPgogI2lmbmRlZiBfX1NZU0NBTEwKLSNkZWZpbmUgX19TWVNDQUxMKHgsIHkpCisjZGVmaW5lIF9fU1lTQ0FMTCh4LHkpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWYgX19CSVRTX1BFUl9MT05HID09IDMyIHx8IGRlZmluZWQoX19TWVNDQUxMX0NPTVBBVCkKLSNkZWZpbmUgX19TQ18zMjY0KF9uciwgXzMyLCBfNjQpIF9fU1lTQ0FMTChfbnIsIF8zMikKKyNkZWZpbmUgX19TQ18zMjY0KF9ucixfMzIsXzY0KSBfX1NZU0NBTEwoX25yLCBfMzIpCiAjZWxzZQotI2RlZmluZSBfX1NDXzMyNjQoX25yLCBfMzIsIF82NCkgX19TWVNDQUxMKF9uciwgXzY0KQorI2RlZmluZSBfX1NDXzMyNjQoX25yLF8zMixfNjQpIF9fU1lTQ0FMTChfbnIsIF82NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZmRlZiBfX1NZU0NBTExfQ09NUEFUCi0jZGVmaW5lIF9fU0NfQ09NUChfbnIsIF9zeXMsIF9jb21wKSBfX1NZU0NBTEwoX25yLCBfY29tcCkKLSNkZWZpbmUgX19TQ19DT01QXzMyNjQoX25yLCBfMzIsIF82NCwgX2NvbXApIF9fU1lTQ0FMTChfbnIsIF9jb21wKQorI2RlZmluZSBfX1NDX0NPTVAoX25yLF9zeXMsX2NvbXApIF9fU1lTQ0FMTChfbnIsIF9jb21wKQorI2RlZmluZSBfX1NDX0NPTVBfMzI2NChfbnIsXzMyLF82NCxfY29tcCkgX19TWVNDQUxMKF9uciwgX2NvbXApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKLSNkZWZpbmUgX19TQ19DT01QKF9uciwgX3N5cywgX2NvbXApIF9fU1lTQ0FMTChfbnIsIF9zeXMpCi0jZGVmaW5lIF9fU0NfQ09NUF8zMjY0KF9uciwgXzMyLCBfNjQsIF9jb21wKSBfX1NDXzMyNjQoX25yLCBfMzIsIF82NCkKKyNkZWZpbmUgX19TQ19DT01QKF9ucixfc3lzLF9jb21wKSBfX1NZU0NBTEwoX25yLCBfc3lzKQorI2RlZmluZSBfX1NDX0NPTVBfMzI2NChfbnIsXzMyLF82NCxfY29tcCkgX19TQ18zMjY0KF9uciwgXzMyLCBfNjQpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW9fc2V0dXAgMApAQCAtMTEzLDQwNyArMTEzLDQxNCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9xdW90YWN0bCA2MAogI2RlZmluZSBfX05SX2dldGRlbnRzNjQgNjEKKyNkZWZpbmUgX19BUkNIX1dBTlRfQ09NUEFUX1NZU19HRVRERU5UUzY0CiAjZGVmaW5lIF9fTlIzMjY0X2xzZWVrIDYyCi0jZGVmaW5lIF9fTlJfcmVhZCA2MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9yZWFkIDYzCiAjZGVmaW5lIF9fTlJfd3JpdGUgNjQKICNkZWZpbmUgX19OUl9yZWFkdiA2NQogI2RlZmluZSBfX05SX3dyaXRldiA2NgotI2RlZmluZSBfX05SX3ByZWFkNjQgNjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcHJlYWQ2NCA2NwogI2RlZmluZSBfX05SX3B3cml0ZTY0IDY4CiAjZGVmaW5lIF9fTlJfcHJlYWR2IDY5CiAjZGVmaW5lIF9fTlJfcHdyaXRldiA3MAotI2RlZmluZSBfX05SMzI2NF9zZW5kZmlsZSA3MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUjMyNjRfc2VuZGZpbGUgNzEKICNkZWZpbmUgX19OUl9wc2VsZWN0NiA3MgogI2RlZmluZSBfX05SX3Bwb2xsIDczCiAjZGVmaW5lIF9fTlJfc2lnbmFsZmQ0IDc0Ci0jZGVmaW5lIF9fTlJfdm1zcGxpY2UgNzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdm1zcGxpY2UgNzUKICNkZWZpbmUgX19OUl9zcGxpY2UgNzYKICNkZWZpbmUgX19OUl90ZWUgNzcKICNkZWZpbmUgX19OUl9yZWFkbGlua2F0IDc4Ci0jZGVmaW5lIF9fTlIzMjY0X2ZzdGF0YXQgNzkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlIzMjY0X2ZzdGF0YXQgNzkKICNkZWZpbmUgX19OUjMyNjRfZnN0YXQgODAKICNkZWZpbmUgX19OUl9zeW5jIDgxCiAjZGVmaW5lIF9fTlJfZnN5bmMgODIKLSNkZWZpbmUgX19OUl9mZGF0YXN5bmMgODMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZmRhdGFzeW5jIDgzCiAjaWZkZWYgX19BUkNIX1dBTlRfU1lOQ19GSUxFX1JBTkdFMgogI2RlZmluZSBfX05SX3N5bmNfZmlsZV9yYW5nZTIgODQKICNlbHNlCi0jZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlIDg0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3N5bmNfZmlsZV9yYW5nZSA4NAogI2VuZGlmCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9jcmVhdGUgODUKICNkZWZpbmUgX19OUl90aW1lcmZkX3NldHRpbWUgODYKLSNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgODcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdGltZXJmZF9nZXR0aW1lIDg3CiAjZGVmaW5lIF9fTlJfdXRpbWVuc2F0IDg4CiAjZGVmaW5lIF9fTlJfYWNjdCA4OQogI2RlZmluZSBfX05SX2NhcGdldCA5MAotI2RlZmluZSBfX05SX2NhcHNldCA5MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jYXBzZXQgOTEKICNkZWZpbmUgX19OUl9wZXJzb25hbGl0eSA5MgogI2RlZmluZSBfX05SX2V4aXQgOTMKICNkZWZpbmUgX19OUl9leGl0X2dyb3VwIDk0Ci0jZGVmaW5lIF9fTlJfd2FpdGlkIDk1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3dhaXRpZCA5NQogI2RlZmluZSBfX05SX3NldF90aWRfYWRkcmVzcyA5NgogI2RlZmluZSBfX05SX3Vuc2hhcmUgOTcKICNkZWZpbmUgX19OUl9mdXRleCA5OAotI2RlZmluZSBfX05SX3NldF9yb2J1c3RfbGlzdCA5OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRfcm9idXN0X2xpc3QgOTkKICNkZWZpbmUgX19OUl9nZXRfcm9idXN0X2xpc3QgMTAwCiAjZGVmaW5lIF9fTlJfbmFub3NsZWVwIDEwMQogI2RlZmluZSBfX05SX2dldGl0aW1lciAxMDIKLSNkZWZpbmUgX19OUl9zZXRpdGltZXIgMTAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldGl0aW1lciAxMDMKICNkZWZpbmUgX19OUl9rZXhlY19sb2FkIDEwNAogI2RlZmluZSBfX05SX2luaXRfbW9kdWxlIDEwNQogI2RlZmluZSBfX05SX2RlbGV0ZV9tb2R1bGUgMTA2Ci0jZGVmaW5lIF9fTlJfdGltZXJfY3JlYXRlIDEwNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90aW1lcl9jcmVhdGUgMTA3CiAjZGVmaW5lIF9fTlJfdGltZXJfZ2V0dGltZSAxMDgKICNkZWZpbmUgX19OUl90aW1lcl9nZXRvdmVycnVuIDEwOQogI2RlZmluZSBfX05SX3RpbWVyX3NldHRpbWUgMTEwCi0jZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlIDExMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90aW1lcl9kZWxldGUgMTExCiAjZGVmaW5lIF9fTlJfY2xvY2tfc2V0dGltZSAxMTIKICNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIDExMwogI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAxMTQKLSNkZWZpbmUgX19OUl9jbG9ja19uYW5vc2xlZXAgMTE1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAxMTUKICNkZWZpbmUgX19OUl9zeXNsb2cgMTE2CiAjZGVmaW5lIF9fTlJfcHRyYWNlIDExNwogI2RlZmluZSBfX05SX3NjaGVkX3NldHBhcmFtIDExOAotI2RlZmluZSBfX05SX3NjaGVkX3NldHNjaGVkdWxlciAxMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyIDExOQogI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAxMjAKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRwYXJhbSAxMjEKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAxMjIKLSNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAxMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YWZmaW5pdHkgMTIzCiAjZGVmaW5lIF9fTlJfc2NoZWRfeWllbGQgMTI0CiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAxMjUKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluIDEyNgotI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAxMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2NoZWRfcnJfZ2V0X2ludGVydmFsIDEyNwogI2RlZmluZSBfX05SX3Jlc3RhcnRfc3lzY2FsbCAxMjgKICNkZWZpbmUgX19OUl9raWxsIDEyOQogI2RlZmluZSBfX05SX3RraWxsIDEzMAotI2RlZmluZSBfX05SX3Rna2lsbCAxMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdGdraWxsIDEzMQogI2RlZmluZSBfX05SX3NpZ2FsdHN0YWNrIDEzMgogI2RlZmluZSBfX05SX3J0X3NpZ3N1c3BlbmQgMTMzCiAjZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uIDEzNAotI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrIDEzNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9ydF9zaWdwcm9jbWFzayAxMzUKICNkZWZpbmUgX19OUl9ydF9zaWdwZW5kaW5nIDEzNgogI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAxMzcKICNkZWZpbmUgX19OUl9ydF9zaWdxdWV1ZWluZm8gMTM4Ci0jZGVmaW5lIF9fTlJfcnRfc2lncmV0dXJuIDEzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9ydF9zaWdyZXR1cm4gMTM5CiAjZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgMTQwCiAjZGVmaW5lIF9fTlJfZ2V0cHJpb3JpdHkgMTQxCiAjZGVmaW5lIF9fTlJfcmVib290IDE0MgotI2RlZmluZSBfX05SX3NldHJlZ2lkIDE0MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRyZWdpZCAxNDMKICNkZWZpbmUgX19OUl9zZXRnaWQgMTQ0CiAjZGVmaW5lIF9fTlJfc2V0cmV1aWQgMTQ1CiAjZGVmaW5lIF9fTlJfc2V0dWlkIDE0NgotI2RlZmluZSBfX05SX3NldHJlc3VpZCAxNDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0cmVzdWlkIDE0NwogI2RlZmluZSBfX05SX2dldHJlc3VpZCAxNDgKICNkZWZpbmUgX19OUl9zZXRyZXNnaWQgMTQ5CiAjZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkIDE1MAotI2RlZmluZSBfX05SX3NldGZzdWlkIDE1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRmc3VpZCAxNTEKICNkZWZpbmUgX19OUl9zZXRmc2dpZCAxNTIKICNkZWZpbmUgX19OUl90aW1lcyAxNTMKICNkZWZpbmUgX19OUl9zZXRwZ2lkIDE1NAotI2RlZmluZSBfX05SX2dldHBnaWQgMTU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHBnaWQgMTU1CiAjZGVmaW5lIF9fTlJfZ2V0c2lkIDE1NgogI2RlZmluZSBfX05SX3NldHNpZCAxNTcKICNkZWZpbmUgX19OUl9nZXRncm91cHMgMTU4Ci0jZGVmaW5lIF9fTlJfc2V0Z3JvdXBzIDE1OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRncm91cHMgMTU5CiAjZGVmaW5lIF9fTlJfdW5hbWUgMTYwCiAjZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgMTYxCiAjZGVmaW5lIF9fTlJfc2V0ZG9tYWlubmFtZSAxNjIKLSNkZWZpbmUgX19OUl9nZXRybGltaXQgMTYzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHJsaW1pdCAxNjMKICNkZWZpbmUgX19OUl9zZXRybGltaXQgMTY0CiAjZGVmaW5lIF9fTlJfZ2V0cnVzYWdlIDE2NQogI2RlZmluZSBfX05SX3VtYXNrIDE2NgotI2RlZmluZSBfX05SX3ByY3RsIDE2NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9wcmN0bCAxNjcKICNkZWZpbmUgX19OUl9nZXRjcHUgMTY4CiAjZGVmaW5lIF9fTlJfZ2V0dGltZW9mZGF5IDE2OQogI2RlZmluZSBfX05SX3NldHRpbWVvZmRheSAxNzAKLSNkZWZpbmUgX19OUl9hZGp0aW1leCAxNzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfYWRqdGltZXggMTcxCiAjZGVmaW5lIF9fTlJfZ2V0cGlkIDE3MgogI2RlZmluZSBfX05SX2dldHBwaWQgMTczCiAjZGVmaW5lIF9fTlJfZ2V0dWlkIDE3NAotI2RlZmluZSBfX05SX2dldGV1aWQgMTc1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldGV1aWQgMTc1CiAjZGVmaW5lIF9fTlJfZ2V0Z2lkIDE3NgogI2RlZmluZSBfX05SX2dldGVnaWQgMTc3CiAjZGVmaW5lIF9fTlJfZ2V0dGlkIDE3OAotI2RlZmluZSBfX05SX3N5c2luZm8gMTc5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3N5c2luZm8gMTc5CiAjZGVmaW5lIF9fTlJfbXFfb3BlbiAxODAKICNkZWZpbmUgX19OUl9tcV91bmxpbmsgMTgxCiAjZGVmaW5lIF9fTlJfbXFfdGltZWRzZW5kIDE4MgotI2RlZmluZSBfX05SX21xX3RpbWVkcmVjZWl2ZSAxODMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXFfdGltZWRyZWNlaXZlIDE4MwogI2RlZmluZSBfX05SX21xX25vdGlmeSAxODQKICNkZWZpbmUgX19OUl9tcV9nZXRzZXRhdHRyIDE4NQogI2RlZmluZSBfX05SX21zZ2dldCAxODYKLSNkZWZpbmUgX19OUl9tc2djdGwgMTg3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21zZ2N0bCAxODcKICNkZWZpbmUgX19OUl9tc2dyY3YgMTg4CiAjZGVmaW5lIF9fTlJfbXNnc25kIDE4OQogI2RlZmluZSBfX05SX3NlbWdldCAxOTAKLSNkZWZpbmUgX19OUl9zZW1jdGwgMTkxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NlbWN0bCAxOTEKICNkZWZpbmUgX19OUl9zZW10aW1lZG9wIDE5MgogI2RlZmluZSBfX05SX3NlbW9wIDE5MwogI2RlZmluZSBfX05SX3NobWdldCAxOTQKLSNkZWZpbmUgX19OUl9zaG1jdGwgMTk1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NobWN0bCAxOTUKICNkZWZpbmUgX19OUl9zaG1hdCAxOTYKICNkZWZpbmUgX19OUl9zaG1kdCAxOTcKICNkZWZpbmUgX19OUl9zb2NrZXQgMTk4Ci0jZGVmaW5lIF9fTlJfc29ja2V0cGFpciAxOTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc29ja2V0cGFpciAxOTkKICNkZWZpbmUgX19OUl9iaW5kIDIwMAogI2RlZmluZSBfX05SX2xpc3RlbiAyMDEKICNkZWZpbmUgX19OUl9hY2NlcHQgMjAyCi0jZGVmaW5lIF9fTlJfY29ubmVjdCAyMDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfY29ubmVjdCAyMDMKICNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAyMDQKICNkZWZpbmUgX19OUl9nZXRwZWVybmFtZSAyMDUKICNkZWZpbmUgX19OUl9zZW5kdG8gMjA2Ci0jZGVmaW5lIF9fTlJfcmVjdmZyb20gMjA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlY3Zmcm9tIDIwNwogI2RlZmluZSBfX05SX3NldHNvY2tvcHQgMjA4CiAjZGVmaW5lIF9fTlJfZ2V0c29ja29wdCAyMDkKICNkZWZpbmUgX19OUl9zaHV0ZG93biAyMTAKLSNkZWZpbmUgX19OUl9zZW5kbXNnIDIxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZW5kbXNnIDIxMQogI2RlZmluZSBfX05SX3JlY3Ztc2cgMjEyCiAjZGVmaW5lIF9fTlJfcmVhZGFoZWFkIDIxMwogI2RlZmluZSBfX05SX2JyayAyMTQKLSNkZWZpbmUgX19OUl9tdW5tYXAgMjE1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX211bm1hcCAyMTUKICNkZWZpbmUgX19OUl9tcmVtYXAgMjE2CiAjZGVmaW5lIF9fTlJfYWRkX2tleSAyMTcKICNkZWZpbmUgX19OUl9yZXF1ZXN0X2tleSAyMTgKLSNkZWZpbmUgX19OUl9rZXljdGwgMjE5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2tleWN0bCAyMTkKICNkZWZpbmUgX19OUl9jbG9uZSAyMjAKICNkZWZpbmUgX19OUl9leGVjdmUgMjIxCiAjZGVmaW5lIF9fTlIzMjY0X21tYXAgMjIyCi0jZGVmaW5lIF9fTlIzMjY0X2ZhZHZpc2U2NCAyMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlIzMjY0X2ZhZHZpc2U2NCAyMjMKICNpZm5kZWYgX19BUkNIX05PTU1VCiAjZGVmaW5lIF9fTlJfc3dhcG9uIDIyNAogI2RlZmluZSBfX05SX3N3YXBvZmYgMjI1Ci0jZGVmaW5lIF9fTlJfbXByb3RlY3QgMjI2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21wcm90ZWN0IDIyNgogI2RlZmluZSBfX05SX21zeW5jIDIyNwogI2RlZmluZSBfX05SX21sb2NrIDIyOAogI2RlZmluZSBfX05SX211bmxvY2sgMjI5Ci0jZGVmaW5lIF9fTlJfbWxvY2thbGwgMjMwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21sb2NrYWxsIDIzMAogI2RlZmluZSBfX05SX211bmxvY2thbGwgMjMxCiAjZGVmaW5lIF9fTlJfbWluY29yZSAyMzIKICNkZWZpbmUgX19OUl9tYWR2aXNlIDIzMwotI2RlZmluZSBfX05SX3JlbWFwX2ZpbGVfcGFnZXMgMjM0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlbWFwX2ZpbGVfcGFnZXMgMjM0CiAjZGVmaW5lIF9fTlJfbWJpbmQgMjM1CiAjZGVmaW5lIF9fTlJfZ2V0X21lbXBvbGljeSAyMzYKICNkZWZpbmUgX19OUl9zZXRfbWVtcG9saWN5IDIzNwotI2RlZmluZSBfX05SX21pZ3JhdGVfcGFnZXMgMjM4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21pZ3JhdGVfcGFnZXMgMjM4CiAjZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAyMzkKICNlbmRpZgogI2RlZmluZSBfX05SX3J0X3Rnc2lncXVldWVpbmZvIDI0MAotI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAyNDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIDI0MQogI2RlZmluZSBfX05SX2FjY2VwdDQgMjQyCiAjZGVmaW5lIF9fTlJfcmVjdm1tc2cgMjQzCiAjZGVmaW5lIF9fTlJfYXJjaF9zcGVjaWZpY19zeXNjYWxsIDI0NAotI2RlZmluZSBfX05SX3dhaXQ0IDI2MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl93YWl0NCAyNjAKICNkZWZpbmUgX19OUl9wcmxpbWl0NjQgMjYxCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAyNjIKICNkZWZpbmUgX19OUl9mYW5vdGlmeV9tYXJrIDI2MwotI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IDI2NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9uYW1lX3RvX2hhbmRsZV9hdCAyNjQKICNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAyNjUKICNkZWZpbmUgX19OUl9jbG9ja19hZGp0aW1lIDI2NgogI2RlZmluZSBfX05SX3N5bmNmcyAyNjcKLSNkZWZpbmUgX19OUl9zZXRucyAyNjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0bnMgMjY4CiAjZGVmaW5lIF9fTlJfc2VuZG1tc2cgMjY5CiAjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV9yZWFkdiAyNzAKICNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3dyaXRldiAyNzEKLSNkZWZpbmUgX19OUl9rY21wIDI3MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9rY21wIDI3MgogI2RlZmluZSBfX05SX2Zpbml0X21vZHVsZSAyNzMKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIDI3NAogI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgMjc1Ci0jdW5kZWYgX19OUl9zeXNjYWxscwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zeXNjYWxscyAyNzYKKyNkZWZpbmUgX19OUl9yZW5hbWVhdDIgMjc2CisjZGVmaW5lIF9fTlJfc2VjY29tcCAyNzcKKyNkZWZpbmUgX19OUl9nZXRyYW5kb20gMjc4CisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIDI3OQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9icGYgMjgwCisjdW5kZWYgX19OUl9zeXNjYWxscworI2RlZmluZSBfX05SX3N5c2NhbGxzIDI4MQogI2lmZGVmIF9fQVJDSF9XQU5UX1NZU0NBTExfTk9fQVQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfb3BlbiAxMDI0CiAjZGVmaW5lIF9fTlJfbGluayAxMDI1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VubGluayAxMDI2CiAjZGVmaW5lIF9fTlJfbWtub2QgMTAyNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jaG1vZCAxMDI4CiAjZGVmaW5lIF9fTlJfY2hvd24gMTAyOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ta2RpciAxMDMwCiAjZGVmaW5lIF9fTlJfcm1kaXIgMTAzMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sY2hvd24gMTAzMgogI2RlZmluZSBfX05SX2FjY2VzcyAxMDMzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlbmFtZSAxMDM0CiAjZGVmaW5lIF9fTlJfcmVhZGxpbmsgMTAzNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeW1saW5rIDEwMzYKICNkZWZpbmUgX19OUl91dGltZXMgMTAzNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUjMyNjRfc3RhdCAxMDM4CiAjZGVmaW5lIF9fTlIzMjY0X2xzdGF0IDEwMzkKLSN1bmRlZiBfX05SX3N5c2NhbGxzCi0jZGVmaW5lIF9fTlJfc3lzY2FsbHMgKF9fTlIzMjY0X2xzdGF0KzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI3VuZGVmIF9fTlJfc3lzY2FsbHMKKyNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUjMyNjRfbHN0YXQgKyAxKQogI2VuZGlmCiAjaWZkZWYgX19BUkNIX1dBTlRfU1lTQ0FMTF9OT19GTEFHUworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9waXBlIDEwNDAKICNkZWZpbmUgX19OUl9kdXAyIDEwNDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlIDEwNDIKICNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQgMTA0MworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ldmVudGZkIDEwNDQKICNkZWZpbmUgX19OUl9zaWduYWxmZCAxMDQ1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI3VuZGVmIF9fTlJfc3lzY2FsbHMKLSNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUl9zaWduYWxmZCsxKQorI2RlZmluZSBfX05SX3N5c2NhbGxzIChfX05SX3NpZ25hbGZkICsgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZiAoX19CSVRTX1BFUl9MT05HID09IDMyIHx8IGRlZmluZWQoX19TWVNDQUxMX0NPTVBBVCkpICYmIGRlZmluZWQoX19BUkNIX1dBTlRfU1lTQ0FMTF9PRkZfVCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2VuZGZpbGUgMTA0NgogI2RlZmluZSBfX05SX2Z0cnVuY2F0ZSAxMDQ3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RydW5jYXRlIDEwNDgKICNkZWZpbmUgX19OUl9zdGF0IDEwNDkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbHN0YXQgMTA1MAogI2RlZmluZSBfX05SX2ZzdGF0IDEwNTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmNudGwgMTA1MgogI2RlZmluZSBfX05SX2ZhZHZpc2U2NCAxMDUzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfRkFEVklTRTY0CiAjZGVmaW5lIF9fTlJfbmV3ZnN0YXRhdCAxMDU0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfTkVXRlNUQVRBVAogI2RlZmluZSBfX05SX2ZzdGF0ZnMgMTA1NQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zdGF0ZnMgMTA1NgogI2RlZmluZSBfX05SX2xzZWVrIDEwNTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbW1hcCAxMDU4CiAjdW5kZWYgX19OUl9zeXNjYWxscwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUl9tbWFwKzEpCisjZGVmaW5lIF9fTlJfc3lzY2FsbHMgKF9fTlJfbW1hcCArIDEpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19BUkNIX1dBTlRfU1lTQ0FMTF9ERVBSRUNBVEVECiAjZGVmaW5lIF9fTlJfYWxhcm0gMTA1OQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19BUkNIX1dBTlRfU1lTX0FMQVJNCiAjZGVmaW5lIF9fTlJfZ2V0cGdycCAxMDYwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfR0VUUEdSUAogI2RlZmluZSBfX05SX3BhdXNlIDEwNjEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19QQVVTRQogI2RlZmluZSBfX05SX3RpbWUgMTA2MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19BUkNIX1dBTlRfU1lTX1RJTUUKICNkZWZpbmUgX19BUkNIX1dBTlRfQ09NUEFUX1NZU19USU1FCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3V0aW1lIDEwNjMKICNkZWZpbmUgX19BUkNIX1dBTlRfU1lTX1VUSU1FCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2NyZWF0IDEwNjQKICNkZWZpbmUgX19OUl9nZXRkZW50cyAxMDY1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfR0VUREVOVFMKICNkZWZpbmUgX19OUl9mdXRpbWVzYXQgMTA2NgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZWxlY3QgMTA2NwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfU0VMRUNUCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BvbGwgMTA2OAogI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgMTA2OQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91c3RhdCAxMDcwCiAjZGVmaW5lIF9fTlJfdmZvcmsgMTA3MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9vbGR3YWl0NCAxMDcyCiAjZGVmaW5lIF9fTlJfcmVjdiAxMDczCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbmQgMTA3NAogI2RlZmluZSBfX05SX2JkZmx1c2ggMTA3NQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91bW91bnQgMTA3NgogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfT0xEVU1PVU5UCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VzZWxpYiAxMDc3CiAjZGVmaW5lIF9fTlJfX3N5c2N0bCAxMDc4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZvcmsgMTA3OQogI3VuZGVmIF9fTlJfc3lzY2FsbHMKLSNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUl9mb3JrKzEpCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc3lzY2FsbHMgKF9fTlJfZm9yayArIDEpCisjZW5kaWYKICNpZiBfX0JJVFNfUEVSX0xPTkcgPT0gNjQgJiYgIWRlZmluZWQoX19TWVNDQUxMX0NPTVBBVCkKICNkZWZpbmUgX19OUl9mY250bCBfX05SMzI2NF9mY250bAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zdGF0ZnMgX19OUjMyNjRfc3RhdGZzCiAjZGVmaW5lIF9fTlJfZnN0YXRmcyBfX05SMzI2NF9mc3RhdGZzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RydW5jYXRlIF9fTlIzMjY0X3RydW5jYXRlCiAjZGVmaW5lIF9fTlJfZnRydW5jYXRlIF9fTlIzMjY0X2Z0cnVuY2F0ZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sc2VlayBfX05SMzI2NF9sc2VlawogI2RlZmluZSBfX05SX3NlbmRmaWxlIF9fTlIzMjY0X3NlbmRmaWxlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX25ld2ZzdGF0YXQgX19OUjMyNjRfZnN0YXRhdAogI2RlZmluZSBfX05SX2ZzdGF0IF9fTlIzMjY0X2ZzdGF0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21tYXAgX19OUjMyNjRfbW1hcAogI2RlZmluZSBfX05SX2ZhZHZpc2U2NCBfX05SMzI2NF9mYWR2aXNlNjQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19OUjMyNjRfc3RhdAogI2RlZmluZSBfX05SX3N0YXQgX19OUjMyNjRfc3RhdAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sc3RhdCBfX05SMzI2NF9sc3RhdAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKICNkZWZpbmUgX19OUl9mY250bDY0IF9fTlIzMjY0X2ZjbnRsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N0YXRmczY0IF9fTlIzMjY0X3N0YXRmcwogI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCBfX05SMzI2NF9mc3RhdGZzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RydW5jYXRlNjQgX19OUjMyNjRfdHJ1bmNhdGUKICNkZWZpbmUgX19OUl9mdHJ1bmNhdGU2NCBfX05SMzI2NF9mdHJ1bmNhdGUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbGxzZWVrIF9fTlIzMjY0X2xzZWVrCiAjZGVmaW5lIF9fTlJfc2VuZGZpbGU2NCBfX05SMzI2NF9zZW5kZmlsZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mc3RhdGF0NjQgX19OUjMyNjRfZnN0YXRhdAogI2RlZmluZSBfX05SX2ZzdGF0NjQgX19OUjMyNjRfZnN0YXQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbW1hcDIgX19OUjMyNjRfbW1hcAogI2RlZmluZSBfX05SX2ZhZHZpc2U2NF82NCBfX05SMzI2NF9mYWR2aXNlNjQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19OUjMyNjRfc3RhdAogI2RlZmluZSBfX05SX3N0YXQ2NCBfX05SMzI2NF9zdGF0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xzdGF0NjQgX19OUjMyNjRfbHN0YXQKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vYml0ZmllbGQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2JpdGZpZWxkLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGJlNTZjYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2JpdGZpZWxkLmgKQEAgLTAsMCArMSwyMyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfX1VBUElfQVNNX0JJVEZJRUxEX0gKKyNkZWZpbmUgX19VQVBJX0FTTV9CSVRGSUVMRF9ICisjZGVmaW5lIF9fQklURklFTERfRklFTEQoZmllbGQsbW9yZSkgbW9yZSBmaWVsZDsKKyNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2NhY2hlY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9jYWNoZWN0bC5oCmluZGV4IDZjYzZmMjguLjg2Y2YzZTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2NhY2hlY3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vY2FjaGVjdGwuaApAQCAtMTgsMTAgKzE4LDEwIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0FTTV9DQUNIRUNUTAogI2RlZmluZSBfQVNNX0NBQ0hFQ1RMCi0jZGVmaW5lIElDQUNIRSAoMTw8MCkKLSNkZWZpbmUgRENBQ0hFICgxPDwxKQorI2RlZmluZSBJQ0FDSEUgKDEgPDwgMCkKKyNkZWZpbmUgRENBQ0hFICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCQ0FDSEUgKElDQUNIRXxEQ0FDSEUpCisjZGVmaW5lIEJDQUNIRSAoSUNBQ0hFIHwgRENBQ0hFKQogI2RlZmluZSBDQUNIRUFCTEUgMAogI2RlZmluZSBVTkNBQ0hFQUJMRSAxCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2ZjbnRsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9mY250bC5oCmluZGV4IDAyZWEzYWMuLjg2YWQ5NzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2ZjbnRsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vZmNudGwuaApAQCAtMzIsNyArMzIsNyBAQAogI2RlZmluZSBPX0xBUkdFRklMRSAweDIwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fT19TWU5DIDB4NDAwMAotI2RlZmluZSBPX1NZTkMgKF9fT19TWU5DfE9fRFNZTkMpCisjZGVmaW5lIE9fU1lOQyAoX19PX1NZTkMgfCBPX0RTWU5DKQogI2RlZmluZSBPX0RJUkVDVCAweDgwMDAKICNkZWZpbmUgRl9HRVRMSyAxNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTUxLDE0ICs1MSwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgZmxvY2sgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBsX3R5cGU7Ci0gc2hvcnQgbF93aGVuY2U7Ci0gX19rZXJuZWxfb2ZmX3QgbF9zdGFydDsKLSBfX2tlcm5lbF9vZmZfdCBsX2xlbjsKKyAgc2hvcnQgbF90eXBlOworICBzaG9ydCBsX3doZW5jZTsKKyAgX19rZXJuZWxfb2ZmX3QgbF9zdGFydDsKKyAgX19rZXJuZWxfb2ZmX3QgbF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbF9zeXNpZDsKLSBfX2tlcm5lbF9waWRfdCBsX3BpZDsKLSBsb25nIHBhZFs0XTsKKyAgbG9uZyBsX3N5c2lkOworICBfX2tlcm5lbF9waWRfdCBsX3BpZDsKKyAgbG9uZyBwYWRbNF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSEFWRV9BUkNIX1NUUlVDVF9GTE9DSwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vaW5zdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vaW5zdC5oCmluZGV4IGM0NmQwOWIuLmU5YjgzNzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2luc3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pbnN0LmgKQEAgLTE4LDg2NyArMTgsMTAzMyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX0FTTV9JTlNUX0gKICNkZWZpbmUgX1VBUElfQVNNX0lOU1RfSAorI2luY2x1ZGUgPGFzbS9iaXRmaWVsZC5oPgogZW51bSBtYWpvcl9vcCB7Ci0gc3BlY19vcCwgYmNvbmRfb3AsIGpfb3AsIGphbF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYmVxX29wLCBibmVfb3AsIGJsZXpfb3AsIGJndHpfb3AsCi0gYWRkaV9vcCwgYWRkaXVfb3AsIHNsdGlfb3AsIHNsdGl1X29wLAotIGFuZGlfb3AsIG9yaV9vcCwgeG9yaV9vcCwgbHVpX29wLAotIGNvcDBfb3AsIGNvcDFfb3AsIGNvcDJfb3AsIGNvcDF4X29wLAorICBzcGVjX29wLAorICBiY29uZF9vcCwKKyAgal9vcCwKKyAgamFsX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiZXFsX29wLCBibmVsX29wLCBibGV6bF9vcCwgYmd0emxfb3AsCi0gZGFkZGlfb3AsIGRhZGRpdV9vcCwgbGRsX29wLCBsZHJfb3AsCi0gc3BlYzJfb3AsIGphbHhfb3AsIG1kbXhfb3AsIHNwZWMzX29wLAotIGxiX29wLCBsaF9vcCwgbHdsX29wLCBsd19vcCwKKyAgYmVxX29wLAorICBibmVfb3AsCisgIGJsZXpfb3AsCisgIGJndHpfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxidV9vcCwgbGh1X29wLCBsd3Jfb3AsIGx3dV9vcCwKLSBzYl9vcCwgc2hfb3AsIHN3bF9vcCwgc3dfb3AsCi0gc2RsX29wLCBzZHJfb3AsIHN3cl9vcCwgY2FjaGVfb3AsCi0gbGxfb3AsIGx3YzFfb3AsIGx3YzJfb3AsIHByZWZfb3AsCisgIGFkZGlfb3AsCisgIGFkZGl1X29wLAorICBzbHRpX29wLAorICBzbHRpdV9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbGxkX29wLCBsZGMxX29wLCBsZGMyX29wLCBsZF9vcCwKLSBzY19vcCwgc3djMV9vcCwgc3djMl9vcCwgbWFqb3JfM2Jfb3AsCi0gc2NkX29wLCBzZGMxX29wLCBzZGMyX29wLCBzZF9vcAorICBhbmRpX29wLAorICBvcmlfb3AsCisgIHhvcmlfb3AsCisgIGx1aV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNvcDBfb3AsCisgIGNvcDFfb3AsCisgIGNvcDJfb3AsCisgIGNvcDF4X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgYmVxbF9vcCwKKyAgYm5lbF9vcCwKKyAgYmxlemxfb3AsCisgIGJndHpsX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZGFkZGlfb3AsCisgIGRhZGRpdV9vcCwKKyAgbGRsX29wLAorICBsZHJfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzcGVjMl9vcCwKKyAgamFseF9vcCwKKyAgbWRteF9vcCwKKyAgc3BlYzNfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsYl9vcCwKKyAgbGhfb3AsCisgIGx3bF9vcCwKKyAgbHdfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsYnVfb3AsCisgIGxodV9vcCwKKyAgbHdyX29wLAorICBsd3Vfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzYl9vcCwKKyAgc2hfb3AsCisgIHN3bF9vcCwKKyAgc3dfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzZGxfb3AsCisgIHNkcl9vcCwKKyAgc3dyX29wLAorICBjYWNoZV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGxsX29wLAorICBsd2MxX29wLAorICBsd2MyX29wLAorICBwcmVmX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbGxkX29wLAorICBsZGMxX29wLAorICBsZGMyX29wLAorICBsZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNjX29wLAorICBzd2MxX29wLAorICBzd2MyX29wLAorICBtYWpvcl8zYl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNjZF9vcCwKKyAgc2RjMV9vcCwKKyAgc2RjMl9vcCwKKyAgc2Rfb3AKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gc3BlY19vcCB7Ci0gc2xsX29wLCBtb3ZjX29wLCBzcmxfb3AsIHNyYV9vcCwKLSBzbGx2X29wLCBwbW9uX29wLCBzcmx2X29wLCBzcmF2X29wLAotIGpyX29wLCBqYWxyX29wLCBtb3Z6X29wLCBtb3ZuX29wLAorICBzbGxfb3AsCisgIG1vdmNfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN5c2NhbGxfb3AsIGJyZWFrX29wLCBzcGltX29wLCBzeW5jX29wLAotIG1maGlfb3AsIG10aGlfb3AsIG1mbG9fb3AsIG10bG9fb3AsCi0gZHNsbHZfb3AsIHNwZWMyX3VudXNlZF9vcCwgZHNybHZfb3AsIGRzcmF2X29wLAotIG11bHRfb3AsIG11bHR1X29wLCBkaXZfb3AsIGRpdnVfb3AsCisgIHNybF9vcCwKKyAgc3JhX29wLAorICBzbGx2X29wLAorICBwbW9uX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkbXVsdF9vcCwgZG11bHR1X29wLCBkZGl2X29wLCBkZGl2dV9vcCwKLSBhZGRfb3AsIGFkZHVfb3AsIHN1Yl9vcCwgc3VidV9vcCwKLSBhbmRfb3AsIG9yX29wLCB4b3Jfb3AsIG5vcl9vcCwKLSBzcGVjM191bnVzZWRfb3AsIHNwZWM0X3VudXNlZF9vcCwgc2x0X29wLCBzbHR1X29wLAorICBzcmx2X29wLAorICBzcmF2X29wLAorICBqcl9vcCwKKyAgamFscl9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZGFkZF9vcCwgZGFkZHVfb3AsIGRzdWJfb3AsIGRzdWJ1X29wLAotIHRnZV9vcCwgdGdldV9vcCwgdGx0X29wLCB0bHR1X29wLAotIHRlcV9vcCwgc3BlYzVfdW51c2VkX29wLCB0bmVfb3AsIHNwZWM2X3VudXNlZF9vcCwKLSBkc2xsX29wLCBzcGVjN191bnVzZWRfb3AsIGRzcmxfb3AsIGRzcmFfb3AsCisgIG1vdnpfb3AsCisgIG1vdm5fb3AsCisgIHN5c2NhbGxfb3AsCisgIGJyZWFrX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkc2xsMzJfb3AsIHNwZWM4X3VudXNlZF9vcCwgZHNybDMyX29wLCBkc3JhMzJfb3AKKyAgc3BpbV9vcCwKKyAgc3luY19vcCwKKyAgbWZoaV9vcCwKKyAgbXRoaV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1mbG9fb3AsCisgIG10bG9fb3AsCisgIGRzbGx2X29wLAorICBzcGVjMl91bnVzZWRfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkc3Jsdl9vcCwKKyAgZHNyYXZfb3AsCisgIG11bHRfb3AsCisgIG11bHR1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZGl2X29wLAorICBkaXZ1X29wLAorICBkbXVsdF9vcCwKKyAgZG11bHR1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZGRpdl9vcCwKKyAgZGRpdnVfb3AsCisgIGFkZF9vcCwKKyAgYWRkdV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN1Yl9vcCwKKyAgc3VidV9vcCwKKyAgYW5kX29wLAorICBvcl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHhvcl9vcCwKKyAgbm9yX29wLAorICBzcGVjM191bnVzZWRfb3AsCisgIHNwZWM0X3VudXNlZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNsdF9vcCwKKyAgc2x0dV9vcCwKKyAgZGFkZF9vcCwKKyAgZGFkZHVfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkc3ViX29wLAorICBkc3VidV9vcCwKKyAgdGdlX29wLAorICB0Z2V1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdGx0X29wLAorICB0bHR1X29wLAorICB0ZXFfb3AsCisgIHNwZWM1X3VudXNlZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHRuZV9vcCwKKyAgc3BlYzZfdW51c2VkX29wLAorICBkc2xsX29wLAorICBzcGVjN191bnVzZWRfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkc3JsX29wLAorICBkc3JhX29wLAorICBkc2xsMzJfb3AsCisgIHNwZWM4X3VudXNlZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGRzcmwzMl9vcCwKKyAgZHNyYTMyX29wCiB9OwogZW51bSBzcGVjMl9vcCB7Ci0gbWFkZF9vcCwgbWFkZHVfb3AsIG11bF9vcCwgc3BlYzJfM191bnVzZWRfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1zdWJfb3AsIG1zdWJ1X29wLAotIGNsel9vcCA9IDB4MjAsIGNsb19vcCwKLSBkY2x6X29wID0gMHgyNCwgZGNsb19vcCwKLSBzZGJwcF9vcCA9IDB4M2YKKyAgbWFkZF9vcCwKKyAgbWFkZHVfb3AsCisgIG11bF9vcCwKKyAgc3BlYzJfM191bnVzZWRfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtc3ViX29wLAorICBtc3VidV9vcCwKKyAgY2x6X29wID0gMHgyMCwKKyAgY2xvX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZGNsel9vcCA9IDB4MjQsCisgIGRjbG9fb3AsCisgIHNkYnBwX29wID0gMHgzZgogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHNwZWMzX29wIHsKLSBleHRfb3AsIGRleHRtX29wLCBkZXh0dV9vcCwgZGV4dF9vcCwKLSBpbnNfb3AsIGRpbnNtX29wLCBkaW5zdV9vcCwgZGluc19vcCwKKyAgZXh0X29wLAorICBkZXh0bV9vcCwKKyAgZGV4dHVfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGx4X29wID0gMHgwYSwKLSBic2hmbF9vcCA9IDB4MjAsCi0gZGJzaGZsX29wID0gMHgyNCwKLSByZGh3cl9vcCA9IDB4M2IKKyAgZGV4dF9vcCwKKyAgaW5zX29wLAorICBkaW5zbV9vcCwKKyAgZGluc3Vfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkaW5zX29wLAorICB5aWVsZF9vcCA9IDB4MDksCisgIGx4X29wID0gMHgwYSwKKyAgbHdsZV9vcCA9IDB4MTksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsd3JlX29wID0gMHgxYSwKKyAgY2FjaGVlX29wID0gMHgxYiwKKyAgc2JlX29wID0gMHgxYywKKyAgc2hlX29wID0gMHgxZCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNjZV9vcCA9IDB4MWUsCisgIHN3ZV9vcCA9IDB4MWYsCisgIGJzaGZsX29wID0gMHgyMCwKKyAgc3dsZV9vcCA9IDB4MjEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzd3JlX29wID0gMHgyMiwKKyAgcHJlZmVfb3AgPSAweDIzLAorICBkYnNoZmxfb3AgPSAweDI0LAorICBsYnVlX29wID0gMHgyOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGxodWVfb3AgPSAweDI5LAorICBsYmVfb3AgPSAweDJjLAorICBsaGVfb3AgPSAweDJkLAorICBsbGVfb3AgPSAweDJlLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbHdlX29wID0gMHgyZiwKKyAgcmRod3Jfb3AgPSAweDNiCiB9OwogZW51bSBydF9vcCB7Ci0gYmx0el9vcCwgYmdlel9vcCwgYmx0emxfb3AsIGJnZXpsX29wLAotIHNwaW1pX29wLCB1bnVzZWRfcnRfb3BfMHgwNSwgdW51c2VkX3J0X29wXzB4MDYsIHVudXNlZF9ydF9vcF8weDA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Z2VpX29wLCB0Z2VpdV9vcCwgdGx0aV9vcCwgdGx0aXVfb3AsCi0gdGVxaV9vcCwgdW51c2VkXzB4MGRfcnRfb3AsIHRuZWlfb3AsIHVudXNlZF8weDBmX3J0X29wLAotIGJsdHphbF9vcCwgYmdlemFsX29wLCBibHR6YWxsX29wLCBiZ2V6YWxsX29wLAotIHJ0X29wXzB4MTQsIHJ0X29wXzB4MTUsIHJ0X29wXzB4MTYsIHJ0X29wXzB4MTcsCisgIGJsdHpfb3AsCisgIGJnZXpfb3AsCisgIGJsdHpsX29wLAorICBiZ2V6bF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcnRfb3BfMHgxOCwgcnRfb3BfMHgxOSwgcnRfb3BfMHgxYSwgcnRfb3BfMHgxYiwKLSBicG9zZ2UzMl9vcCwgcnRfb3BfMHgxZCwgcnRfb3BfMHgxZSwgcnRfb3BfMHgxZgorICBzcGltaV9vcCwKKyAgdW51c2VkX3J0X29wXzB4MDUsCisgIHVudXNlZF9ydF9vcF8weDA2LAorICB1bnVzZWRfcnRfb3BfMHgwNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHRnZWlfb3AsCisgIHRnZWl1X29wLAorICB0bHRpX29wLAorICB0bHRpdV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHRlcWlfb3AsCisgIHVudXNlZF8weDBkX3J0X29wLAorICB0bmVpX29wLAorICB1bnVzZWRfMHgwZl9ydF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGJsdHphbF9vcCwKKyAgYmdlemFsX29wLAorICBibHR6YWxsX29wLAorICBiZ2V6YWxsX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgcnRfb3BfMHgxNCwKKyAgcnRfb3BfMHgxNSwKKyAgcnRfb3BfMHgxNiwKKyAgcnRfb3BfMHgxNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHJ0X29wXzB4MTgsCisgIHJ0X29wXzB4MTksCisgIHJ0X29wXzB4MWEsCisgIHJ0X29wXzB4MWIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBicG9zZ2UzMl9vcCwKKyAgcnRfb3BfMHgxZCwKKyAgcnRfb3BfMHgxZSwKKyAgcnRfb3BfMHgxZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGNvcF9vcCB7CisgIG1mY19vcCA9IDB4MDAsCisgIGRtZmNfb3AgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtZmNfb3AgPSAweDAwLCBkbWZjX29wID0gMHgwMSwKLSBjZmNfb3AgPSAweDAyLCBtZmhjX29wID0gMHgwMywKLSBtdGNfb3AgPSAweDA0LCBkbXRjX29wID0gMHgwNSwKLSBjdGNfb3AgPSAweDA2LCBtdGhjX29wID0gMHgwNywKKyAgY2ZjX29wID0gMHgwMiwKKyAgbWZoY19vcCA9IDB4MDMsCisgIG10Y19vcCA9IDB4MDQsCisgIGRtdGNfb3AgPSAweDA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiY19vcCA9IDB4MDgsIGNvcF9vcCA9IDB4MTAsCi0gY29wbV9vcCA9IDB4MTgKKyAgY3RjX29wID0gMHgwNiwKKyAgbXRoY19vcCA9IDB4MDcsCisgIGJjX29wID0gMHgwOCwKKyAgY29wX29wID0gMHgxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNvcG1fb3AgPSAweDE4CiB9OwogZW51bSBiY29wX29wIHsKKyAgYmNmX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiY2Zfb3AsIGJjdF9vcCwgYmNmbF9vcCwgYmN0bF9vcAorICBiY3Rfb3AsCisgIGJjZmxfb3AsCisgIGJjdGxfb3AKIH07Ci1lbnVtIGNvcDBfY29pX2Z1bmMgewotIHRsYnJfb3AgPSAweDAxLCB0bGJ3aV9vcCA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRsYndyX29wID0gMHgwNiwgdGxicF9vcCA9IDB4MDgsCi0gcmZlX29wID0gMHgxMCwgZXJldF9vcCA9IDB4MTgKK2VudW0gY29wMF9jb2lfZnVuYyB7CisgIHRsYnJfb3AgPSAweDAxLAorICB0bGJ3aV9vcCA9IDB4MDIsCisgIHRsYndyX29wID0gMHgwNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHRsYnBfb3AgPSAweDA4LAorICByZmVfb3AgPSAweDEwLAorICBlcmV0X29wID0gMHgxOCwKKyAgd2FpdF9vcCA9IDB4MjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gY29wMF9jb21fZnVuYyB7CisgIHRsYnIxX29wID0gMHgwMSwKKyAgdGxid19vcCA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRsYnIxX29wID0gMHgwMSwgdGxid19vcCA9IDB4MDIsCi0gdGxicDFfb3AgPSAweDA4LCBkY3RyX29wID0gMHgwOSwKLSBkY3R3X29wID0gMHgwYQorICB0bGJwMV9vcCA9IDB4MDgsCisgIGRjdHJfb3AgPSAweDA5LAorICBkY3R3X29wID0gMHgwYQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNvcDFfZm10IHsKLSBzX2ZtdCwgZF9mbXQsIGVfZm10LCBxX2ZtdCwKLSB3X2ZtdCwgbF9mbXQKKyAgc19mbXQsCisgIGRfZm10LAorICBlX2ZtdCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHFfZm10LAorICB3X2ZtdCwKKyAgbF9mbXQKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjb3AxX3Nkd19mdW5jIHsKLSBmYWRkX29wID0gMHgwMCwgZnN1Yl9vcCA9IDB4MDEsCi0gZm11bF9vcCA9IDB4MDIsIGZkaXZfb3AgPSAweDAzLAotIGZzcXJ0X29wID0gMHgwNCwgZmFic19vcCA9IDB4MDUsCisgIGZhZGRfb3AgPSAweDAwLAorICBmc3ViX29wID0gMHgwMSwKKyAgZm11bF9vcCA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZtb3Zfb3AgPSAweDA2LCBmbmVnX29wID0gMHgwNywKLSBmcm91bmRsX29wID0gMHgwOCwgZnRydW5jbF9vcCA9IDB4MDksCi0gZmNlaWxsX29wID0gMHgwYSwgZmZsb29ybF9vcCA9IDB4MGIsCi0gZnJvdW5kX29wID0gMHgwYywgZnRydW5jX29wID0gMHgwZCwKKyAgZmRpdl9vcCA9IDB4MDMsCisgIGZzcXJ0X29wID0gMHgwNCwKKyAgZmFic19vcCA9IDB4MDUsCisgIGZtb3Zfb3AgPSAweDA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmY2VpbF9vcCA9IDB4MGUsIGZmbG9vcl9vcCA9IDB4MGYsCi0gZm1vdmNfb3AgPSAweDExLCBmbW92el9vcCA9IDB4MTIsCi0gZm1vdm5fb3AgPSAweDEzLCBmcmVjaXBfb3AgPSAweDE1LAotIGZyc3FydF9vcCA9IDB4MTYsIGZjdnRzX29wID0gMHgyMCwKKyAgZm5lZ19vcCA9IDB4MDcsCisgIGZyb3VuZGxfb3AgPSAweDA4LAorICBmdHJ1bmNsX29wID0gMHgwOSwKKyAgZmNlaWxsX29wID0gMHgwYSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZmN2dGRfb3AgPSAweDIxLCBmY3Z0ZV9vcCA9IDB4MjIsCi0gZmN2dHdfb3AgPSAweDI0LCBmY3Z0bF9vcCA9IDB4MjUsCi0gZmNtcF9vcCA9IDB4MzAKKyAgZmZsb29ybF9vcCA9IDB4MGIsCisgIGZyb3VuZF9vcCA9IDB4MGMsCisgIGZ0cnVuY19vcCA9IDB4MGQsCisgIGZjZWlsX29wID0gMHgwZSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGZmbG9vcl9vcCA9IDB4MGYsCisgIGZtb3ZjX29wID0gMHgxMSwKKyAgZm1vdnpfb3AgPSAweDEyLAorICBmbW92bl9vcCA9IDB4MTMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmcmVjaXBfb3AgPSAweDE1LAorICBmcnNxcnRfb3AgPSAweDE2LAorICBmY3Z0c19vcCA9IDB4MjAsCisgIGZjdnRkX29wID0gMHgyMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGZjdnRlX29wID0gMHgyMiwKKyAgZmN2dHdfb3AgPSAweDI0LAorICBmY3Z0bF9vcCA9IDB4MjUsCisgIGZjbXBfb3AgPSAweDMwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNvcDF4X2Z1bmMgewotIGx3eGMxX29wID0gMHgwMCwgbGR4YzFfb3AgPSAweDAxLAotIHN3eGMxX29wID0gMHgwOCwgc2R4YzFfb3AgPSAweDA5LAotIHBmZXRjaF9vcCA9IDB4MGYsIG1hZGRfc19vcCA9IDB4MjAsCisgIGx3eGMxX29wID0gMHgwMCwKKyAgbGR4YzFfb3AgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtYWRkX2Rfb3AgPSAweDIxLCBtYWRkX2Vfb3AgPSAweDIyLAotIG1zdWJfc19vcCA9IDB4MjgsIG1zdWJfZF9vcCA9IDB4MjksCi0gbXN1Yl9lX29wID0gMHgyYSwgbm1hZGRfc19vcCA9IDB4MzAsCi0gbm1hZGRfZF9vcCA9IDB4MzEsIG5tYWRkX2Vfb3AgPSAweDMyLAorICBzd3hjMV9vcCA9IDB4MDgsCisgIHNkeGMxX29wID0gMHgwOSwKKyAgcGZldGNoX29wID0gMHgwZiwKKyAgbWFkZF9zX29wID0gMHgyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbm1zdWJfc19vcCA9IDB4MzgsIG5tc3ViX2Rfb3AgPSAweDM5LAotIG5tc3ViX2Vfb3AgPSAweDNhCisgIG1hZGRfZF9vcCA9IDB4MjEsCisgIG1hZGRfZV9vcCA9IDB4MjIsCisgIG1zdWJfc19vcCA9IDB4MjgsCisgIG1zdWJfZF9vcCA9IDB4MjksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtc3ViX2Vfb3AgPSAweDJhLAorICBubWFkZF9zX29wID0gMHgzMCwKKyAgbm1hZGRfZF9vcCA9IDB4MzEsCisgIG5tYWRkX2Vfb3AgPSAweDMyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbm1zdWJfc19vcCA9IDB4MzgsCisgIG5tc3ViX2Rfb3AgPSAweDM5LAorICBubXN1Yl9lX29wID0gMHgzYQogfTsKLWVudW0gbWFkX2Z1bmMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtYWRkX2ZwX29wID0gMHgwOCwgbXN1Yl9mcF9vcCA9IDB4MGEsCi0gbm1hZGRfZnBfb3AgPSAweDBjLCBubXN1Yl9mcF9vcCA9IDB4MGUKK2VudW0gbWFkX2Z1bmMgeworICBtYWRkX2ZwX29wID0gMHgwOCwKKyAgbXN1Yl9mcF9vcCA9IDB4MGEsCisgIG5tYWRkX2ZwX29wID0gMHgwYywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG5tc3ViX2ZwX29wID0gMHgwZQogfTsKIGVudW0gbHhfZnVuYyB7CisgIGx3eF9vcCA9IDB4MDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGx3eF9vcCA9IDB4MDAsCi0gbGh4X29wID0gMHgwNCwKLSBsYnV4X29wID0gMHgwNiwKLSBsZHhfb3AgPSAweDA4LAorICBsaHhfb3AgPSAweDA0LAorICBsYnV4X29wID0gMHgwNiwKKyAgbGR4X29wID0gMHgwOCwKKyAgbHd1eF9vcCA9IDB4MTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGx3dXhfb3AgPSAweDEwLAotIGxodXhfb3AgPSAweDE0LAotIGxieF9vcCA9IDB4MTYsCisgIGxodXhfb3AgPSAweDE0LAorICBsYnhfb3AgPSAweDE2LAogfTsKK2VudW0gYnNoZmxfZnVuYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB3c2JoX29wID0gMHgyLAorICBkc2hkX29wID0gMHg1LAorICBzZWJfb3AgPSAweDEwLAorICBzZWhfb3AgPSAweDE4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiBlbnVtIG1tX21ham9yX29wIHsKLSBtbV9wb29sMzJhX29wLCBtbV9wb29sMTZhX29wLCBtbV9sYnUxNl9vcCwgbW1fbW92ZTE2X29wLAotIG1tX2FkZGkzMl9vcCwgbW1fbGJ1MzJfb3AsIG1tX3NiMzJfb3AsIG1tX2xiMzJfb3AsCi0gbW1fcG9vbDMyYl9vcCwgbW1fcG9vbDE2Yl9vcCwgbW1fbGh1MTZfb3AsIG1tX2FuZGkxNl9vcCwKKyAgbW1fcG9vbDMyYV9vcCwKKyAgbW1fcG9vbDE2YV9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fYWRkaXUzMl9vcCwgbW1fbGh1MzJfb3AsIG1tX3NoMzJfb3AsIG1tX2xoMzJfb3AsCi0gbW1fcG9vbDMyaV9vcCwgbW1fcG9vbDE2Y19vcCwgbW1fbHdzcDE2X29wLCBtbV9wb29sMTZkX29wLAotIG1tX29yaTMyX29wLCBtbV9wb29sMzJmX29wLCBtbV9yZXNlcnZlZDFfb3AsIG1tX3Jlc2VydmVkMl9vcCwKLSBtbV9wb29sMzJjX29wLCBtbV9sd2dwMTZfb3AsIG1tX2x3MTZfb3AsIG1tX3Bvb2wxNmVfb3AsCisgIG1tX2xidTE2X29wLAorICBtbV9tb3ZlMTZfb3AsCisgIG1tX2FkZGkzMl9vcCwKKyAgbW1fbGJ1MzJfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3hvcmkzMl9vcCwgbW1famFsczMyX29wLCBtbV9hZGRpdXBjX29wLCBtbV9yZXNlcnZlZDNfb3AsCi0gbW1fcmVzZXJ2ZWQ0X29wLCBtbV9wb29sMTZmX29wLCBtbV9zYjE2X29wLCBtbV9iZXF6MTZfb3AsCi0gbW1fc2x0aTMyX29wLCBtbV9iZXEzMl9vcCwgbW1fc3djMTMyX29wLCBtbV9sd2MxMzJfb3AsCi0gbW1fcmVzZXJ2ZWQ1X29wLCBtbV9yZXNlcnZlZDZfb3AsIG1tX3NoMTZfb3AsIG1tX2JuZXoxNl9vcCwKKyAgbW1fc2IzMl9vcCwKKyAgbW1fbGIzMl9vcCwKKyAgbW1fcG9vbDMyYl9vcCwKKyAgbW1fcG9vbDE2Yl9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fc2x0aXUzMl9vcCwgbW1fYm5lMzJfb3AsIG1tX3NkYzEzMl9vcCwgbW1fbGRjMTMyX29wLAotIG1tX3Jlc2VydmVkN19vcCwgbW1fcmVzZXJ2ZWQ4X29wLCBtbV9zd3NwMTZfb3AsIG1tX2IxNl9vcCwKLSBtbV9hbmRpMzJfb3AsIG1tX2ozMl9vcCwgbW1fc2QzMl9vcCwgbW1fbGQzMl9vcCwKLSBtbV9yZXNlcnZlZDExX29wLCBtbV9yZXNlcnZlZDEyX29wLCBtbV9zdzE2X29wLCBtbV9saTE2X29wLAorICBtbV9saHUxNl9vcCwKKyAgbW1fYW5kaTE2X29wLAorICBtbV9hZGRpdTMyX29wLAorICBtbV9saHUzMl9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1famFseDMyX29wLCBtbV9qYWwzMl9vcCwgbW1fc3czMl9vcCwgbW1fbHczMl9vcCwKKyAgbW1fc2gzMl9vcCwKKyAgbW1fbGgzMl9vcCwKKyAgbW1fcG9vbDMyaV9vcCwKKyAgbW1fcG9vbDE2Y19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2x3c3AxNl9vcCwKKyAgbW1fcG9vbDE2ZF9vcCwKKyAgbW1fb3JpMzJfb3AsCisgIG1tX3Bvb2wzMmZfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9yZXNlcnZlZDFfb3AsCisgIG1tX3Jlc2VydmVkMl9vcCwKKyAgbW1fcG9vbDMyY19vcCwKKyAgbW1fbHdncDE2X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fbHcxNl9vcCwKKyAgbW1fcG9vbDE2ZV9vcCwKKyAgbW1feG9yaTMyX29wLAorICBtbV9qYWxzMzJfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9hZGRpdXBjX29wLAorICBtbV9yZXNlcnZlZDNfb3AsCisgIG1tX3Jlc2VydmVkNF9vcCwKKyAgbW1fcG9vbDE2Zl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3NiMTZfb3AsCisgIG1tX2JlcXoxNl9vcCwKKyAgbW1fc2x0aTMyX29wLAorICBtbV9iZXEzMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3N3YzEzMl9vcCwKKyAgbW1fbHdjMTMyX29wLAorICBtbV9yZXNlcnZlZDVfb3AsCisgIG1tX3Jlc2VydmVkNl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3NoMTZfb3AsCisgIG1tX2JuZXoxNl9vcCwKKyAgbW1fc2x0aXUzMl9vcCwKKyAgbW1fYm5lMzJfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9zZGMxMzJfb3AsCisgIG1tX2xkYzEzMl9vcCwKKyAgbW1fcmVzZXJ2ZWQ3X29wLAorICBtbV9yZXNlcnZlZDhfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9zd3NwMTZfb3AsCisgIG1tX2IxNl9vcCwKKyAgbW1fYW5kaTMyX29wLAorICBtbV9qMzJfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9zZDMyX29wLAorICBtbV9sZDMyX29wLAorICBtbV9yZXNlcnZlZDExX29wLAorICBtbV9yZXNlcnZlZDEyX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc3cxNl9vcCwKKyAgbW1fbGkxNl9vcCwKKyAgbW1famFseDMyX29wLAorICBtbV9qYWwzMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3N3MzJfb3AsCisgIG1tX2x3MzJfb3AsCiB9OwogZW51bSBtbV8zMmlfbWlub3Jfb3AgewotIG1tX2JsdHpfb3AsIG1tX2JsdHphbF9vcCwgbW1fYmdlel9vcCwgbW1fYmdlemFsX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9ibGV6X29wLCBtbV9ibmV6Y19vcCwgbW1fYmd0el9vcCwgbW1fYmVxemNfb3AsCi0gbW1fdGx0aV9vcCwgbW1fdGdlaV9vcCwgbW1fdGx0aXVfb3AsIG1tX3RnZWl1X29wLAotIG1tX3RuZWlfb3AsIG1tX2x1aV9vcCwgbW1fdGVxaV9vcCwgbW1fcmVzZXJ2ZWQxM19vcCwKLSBtbV9zeW5jaV9vcCwgbW1fYmx0emFsc19vcCwgbW1fcmVzZXJ2ZWQxNF9vcCwgbW1fYmdlemFsc19vcCwKKyAgbW1fYmx0el9vcCwKKyAgbW1fYmx0emFsX29wLAorICBtbV9iZ2V6X29wLAorICBtbV9iZ2V6YWxfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2JjMmZfb3AsIG1tX2JjMnRfb3AsIG1tX3Jlc2VydmVkMTVfb3AsIG1tX3Jlc2VydmVkMTZfb3AsCi0gbW1fcmVzZXJ2ZWQxN19vcCwgbW1fcmVzZXJ2ZWQxOF9vcCwgbW1fYnBvc2dlNjRfb3AsIG1tX2Jwb3NnZTMyX29wLAotIG1tX2JjMWZfb3AsIG1tX2JjMXRfb3AsIG1tX3Jlc2VydmVkMTlfb3AsIG1tX3Jlc2VydmVkMjBfb3AsCi0gbW1fYmMxYW55MmZfb3AsIG1tX2JjMWFueTJ0X29wLCBtbV9iYzFhbnk0Zl9vcCwgbW1fYmMxYW55NHRfb3AsCisgIG1tX2JsZXpfb3AsCisgIG1tX2JuZXpjX29wLAorICBtbV9iZ3R6X29wLAorICBtbV9iZXF6Y19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3RsdGlfb3AsCisgIG1tX3RnZWlfb3AsCisgIG1tX3RsdGl1X29wLAorICBtbV90Z2VpdV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3RuZWlfb3AsCisgIG1tX2x1aV9vcCwKKyAgbW1fdGVxaV9vcCwKKyAgbW1fcmVzZXJ2ZWQxM19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3N5bmNpX29wLAorICBtbV9ibHR6YWxzX29wLAorICBtbV9yZXNlcnZlZDE0X29wLAorICBtbV9iZ2V6YWxzX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fYmMyZl9vcCwKKyAgbW1fYmMydF9vcCwKKyAgbW1fcmVzZXJ2ZWQxNV9vcCwKKyAgbW1fcmVzZXJ2ZWQxNl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3Jlc2VydmVkMTdfb3AsCisgIG1tX3Jlc2VydmVkMThfb3AsCisgIG1tX2Jwb3NnZTY0X29wLAorICBtbV9icG9zZ2UzMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2JjMWZfb3AsCisgIG1tX2JjMXRfb3AsCisgIG1tX3Jlc2VydmVkMTlfb3AsCisgIG1tX3Jlc2VydmVkMjBfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9iYzFhbnkyZl9vcCwKKyAgbW1fYmMxYW55MnRfb3AsCisgIG1tX2JjMWFueTRmX29wLAorICBtbV9iYzFhbnk0dF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBtbV8zMmFfbWlub3Jfb3AgewotIG1tX3NsbDMyX29wID0gMHgwMDAsCi0gbW1faW5zX29wID0gMHgwMGMsCisgIG1tX3NsbDMyX29wID0gMHgwMDAsCisgIG1tX2luc19vcCA9IDB4MDBjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9leHRfb3AgPSAweDAyYywKLSBtbV9wb29sMzJheGZfb3AgPSAweDAzYywKLSBtbV9zcmwzMl9vcCA9IDB4MDQwLAotIG1tX3NyYV9vcCA9IDB4MDgwLAorICBtbV9zbGx2MzJfb3AgPSAweDAxMCwKKyAgbW1fZXh0X29wID0gMHgwMmMsCisgIG1tX3Bvb2wzMmF4Zl9vcCA9IDB4MDNjLAorICBtbV9zcmwzMl9vcCA9IDB4MDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9yb3RyX29wID0gMHgwYzAsCi0gbW1fbHd4c19vcCA9IDB4MTE4LAotIG1tX2FkZHUzMl9vcCA9IDB4MTUwLAotIG1tX3N1YnUzMl9vcCA9IDB4MWQwLAorICBtbV9zcmFfb3AgPSAweDA4MCwKKyAgbW1fc3JsdjMyX29wID0gMHgwOTAsCisgIG1tX3JvdHJfb3AgPSAweDBjMCwKKyAgbW1fbHd4c19vcCA9IDB4MTE4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9hbmRfb3AgPSAweDI1MCwKLSBtbV9vcjMyX29wID0gMHgyOTAsCi0gbW1feG9yMzJfb3AgPSAweDMxMCwKKyAgbW1fYWRkdTMyX29wID0gMHgxNTAsCisgIG1tX3N1YnUzMl9vcCA9IDB4MWQwLAorICBtbV93c2JoX29wID0gMHgxZWMsCisgIG1tX211bF9vcCA9IDB4MjEwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fYW5kX29wID0gMHgyNTAsCisgIG1tX29yMzJfb3AgPSAweDI5MCwKKyAgbW1feG9yMzJfb3AgPSAweDMxMCwKKyAgbW1fc2x0X29wID0gMHgzNTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9zbHR1X29wID0gMHgzOTAsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJiX2Z1bmMgewotIG1tX2x3YzJfZnVuYyA9IDB4MCwKLSBtbV9sd3BfZnVuYyA9IDB4MSwKLSBtbV9sZGMyX2Z1bmMgPSAweDIsCisgIG1tX2x3YzJfZnVuYyA9IDB4MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fbGRwX2Z1bmMgPSAweDQsCi0gbW1fbHdtMzJfZnVuYyA9IDB4NSwKLSBtbV9jYWNoZV9mdW5jID0gMHg2LAotIG1tX2xkbV9mdW5jID0gMHg3LAorICBtbV9sd3BfZnVuYyA9IDB4MSwKKyAgbW1fbGRjMl9mdW5jID0gMHgyLAorICBtbV9sZHBfZnVuYyA9IDB4NCwKKyAgbW1fbHdtMzJfZnVuYyA9IDB4NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fc3djMl9mdW5jID0gMHg4LAotIG1tX3N3cF9mdW5jID0gMHg5LAotIG1tX3NkYzJfZnVuYyA9IDB4YSwKLSBtbV9zZHBfZnVuYyA9IDB4YywKKyAgbW1fY2FjaGVfZnVuYyA9IDB4NiwKKyAgbW1fbGRtX2Z1bmMgPSAweDcsCisgIG1tX3N3YzJfZnVuYyA9IDB4OCwKKyAgbW1fc3dwX2Z1bmMgPSAweDksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3N3bTMyX2Z1bmMgPSAweGQsCi0gbW1fc2RtX2Z1bmMgPSAweGYsCisgIG1tX3NkYzJfZnVuYyA9IDB4YSwKKyAgbW1fc2RwX2Z1bmMgPSAweGMsCisgIG1tX3N3bTMyX2Z1bmMgPSAweGQsCisgIG1tX3NkbV9mdW5jID0gMHhmLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG1tXzMyY19mdW5jIHsKKyAgbW1fcHJlZl9mdW5jID0gMHgyLAorICBtbV9sbF9mdW5jID0gMHgzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9wcmVmX2Z1bmMgPSAweDIsCi0gbW1fbGxfZnVuYyA9IDB4MywKLSBtbV9zd3JfZnVuYyA9IDB4OSwKLSBtbV9zY19mdW5jID0gMHhiLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9sd3VfZnVuYyA9IDB4ZSwKKyAgbW1fc3dyX2Z1bmMgPSAweDksCisgIG1tX3NjX2Z1bmMgPSAweGIsCisgIG1tX2x3dV9mdW5jID0gMHhlLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1tXzMyYXhmX21pbm9yX29wIHsKLSBtbV9tZmMwX29wID0gMHgwMDMsCisgIG1tX21mYzBfb3AgPSAweDAwMywKKyAgbW1fbXRjMF9vcCA9IDB4MDBiLAorICBtbV90bGJwX29wID0gMHgwMGQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX210YzBfb3AgPSAweDAwYiwKLSBtbV90bGJwX29wID0gMHgwMGQsCi0gbW1famFscl9vcCA9IDB4MDNjLAotIG1tX3RsYnJfb3AgPSAweDA0ZCwKKyAgbW1fbWZoaTMyX29wID0gMHgwMzUsCisgIG1tX2phbHJfb3AgPSAweDAzYywKKyAgbW1fdGxicl9vcCA9IDB4MDRkLAorICBtbV9tZmxvMzJfb3AgPSAweDA3NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1famFscmhiX29wID0gMHgwN2MsCi0gbW1fdGxid2lfb3AgPSAweDA4ZCwKLSBtbV90bGJ3cl9vcCA9IDB4MGNkLAotIG1tX2phbHJzX29wID0gMHgxM2MsCisgIG1tX2phbHJoYl9vcCA9IDB4MDdjLAorICBtbV90bGJ3aV9vcCA9IDB4MDhkLAorICBtbV90bGJ3cl9vcCA9IDB4MGNkLAorICBtbV9qYWxyc19vcCA9IDB4MTNjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9qYWxyc2hiX29wID0gMHgxN2MsCi0gbW1fc3lzY2FsbF9vcCA9IDB4MjJkLAotIG1tX2VyZXRfb3AgPSAweDNjZCwKKyAgbW1famFscnNoYl9vcCA9IDB4MTdjLAorICBtbV9zeW5jX29wID0gMHgxYWQsCisgIG1tX3N5c2NhbGxfb3AgPSAweDIyZCwKKyAgbW1fd2FpdF9vcCA9IDB4MjRkLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fZXJldF9vcCA9IDB4M2NkLAorICBtbV9kaXZ1X29wID0gMHg1ZGMsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJmX21pbm9yX29wIHsKLSBtbV8zMmZfMDBfb3AgPSAweDAwLAotIG1tXzMyZl8wMV9vcCA9IDB4MDEsCi0gbW1fMzJmXzAyX29wID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fMzJmXzEwX29wID0gMHgwOCwKLSBtbV8zMmZfMTFfb3AgPSAweDA5LAotIG1tXzMyZl8xMl9vcCA9IDB4MGEsCi0gbW1fMzJmXzIwX29wID0gMHgxMCwKKyAgbW1fMzJmXzAwX29wID0gMHgwMCwKKyAgbW1fMzJmXzAxX29wID0gMHgwMSwKKyAgbW1fMzJmXzAyX29wID0gMHgwMiwKKyAgbW1fMzJmXzEwX29wID0gMHgwOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fMzJmXzMwX29wID0gMHgxOCwKLSBtbV8zMmZfNDBfb3AgPSAweDIwLAotIG1tXzMyZl80MV9vcCA9IDB4MjEsCi0gbW1fMzJmXzQyX29wID0gMHgyMiwKKyAgbW1fMzJmXzExX29wID0gMHgwOSwKKyAgbW1fMzJmXzEyX29wID0gMHgwYSwKKyAgbW1fMzJmXzIwX29wID0gMHgxMCwKKyAgbW1fMzJmXzMwX29wID0gMHgxOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fMzJmXzUwX29wID0gMHgyOCwKLSBtbV8zMmZfNTFfb3AgPSAweDI5LAotIG1tXzMyZl81Ml9vcCA9IDB4MmEsCi0gbW1fMzJmXzYwX29wID0gMHgzMCwKKyAgbW1fMzJmXzQwX29wID0gMHgyMCwKKyAgbW1fMzJmXzQxX29wID0gMHgyMSwKKyAgbW1fMzJmXzQyX29wID0gMHgyMiwKKyAgbW1fMzJmXzUwX29wID0gMHgyOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fMzJmXzcwX29wID0gMHgzOCwKLSBtbV8zMmZfNzNfb3AgPSAweDNiLAotIG1tXzMyZl83NF9vcCA9IDB4M2MsCisgIG1tXzMyZl81MV9vcCA9IDB4MjksCisgIG1tXzMyZl81Ml9vcCA9IDB4MmEsCisgIG1tXzMyZl82MF9vcCA9IDB4MzAsCisgIG1tXzMyZl83MF9vcCA9IDB4MzgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV8zMmZfNzNfb3AgPSAweDNiLAorICBtbV8zMmZfNzRfb3AgPSAweDNjLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1tXzMyZl8xMF9taW5vcl9vcCB7Ci0gbW1fbHd4YzFfb3AgPSAweDEsCi0gbW1fc3d4YzFfb3AsCi0gbW1fbGR4YzFfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3NkeGMxX29wLAotIG1tX2x1eGMxX29wLAotIG1tX3N1eGMxX29wLAorICBtbV9sd3hjMV9vcCA9IDB4MSwKKyAgbW1fc3d4YzFfb3AsCisgIG1tX2xkeGMxX29wLAorICBtbV9zZHhjMV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2x1eGMxX29wLAorICBtbV9zdXhjMV9vcCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtbV8zMmZfZnVuYyB7Ci0gbW1fbHd4YzFfZnVuYyA9IDB4MDQ4LAotIG1tX3N3eGMxX2Z1bmMgPSAweDA4OCwKLSBtbV9sZHhjMV9mdW5jID0gMHgwYzgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3NkeGMxX2Z1bmMgPSAweDEwOCwKKyAgbW1fbHd4YzFfZnVuYyA9IDB4MDQ4LAorICBtbV9zd3hjMV9mdW5jID0gMHgwODgsCisgIG1tX2xkeGMxX2Z1bmMgPSAweDBjOCwKKyAgbW1fc2R4YzFfZnVuYyA9IDB4MTA4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG1tXzMyZl80MF9taW5vcl9vcCB7Ci0gbW1fZm1vdmZfb3AsCisgIG1tX2Ztb3ZmX29wLAorICBtbV9mbW92dF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fZm1vdnRfb3AsCiB9OwogZW51bSBtbV8zMmZfNjBfbWlub3Jfb3AgewotIG1tX2ZhZGRfb3AsCisgIG1tX2ZhZGRfb3AsCisgIG1tX2ZzdWJfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2ZzdWJfb3AsCi0gbW1fZm11bF9vcCwKLSBtbV9mZGl2X29wLAorICBtbV9mbXVsX29wLAorICBtbV9mZGl2X29wLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1tXzMyZl83MF9taW5vcl9vcCB7Ci0gbW1fZm1vdm5fb3AsCi0gbW1fZm1vdnpfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9mbW92bl9vcCwKKyAgbW1fZm1vdnpfb3AsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJmXzczX21pbm9yX29wIHsKLSBtbV9mbW92MF9vcCA9IDB4MDEsCi0gbW1fZmN2dGxfb3AgPSAweDA0LAotIG1tX21vdmYwX29wID0gMHgwNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fZnJzcXJ0X29wID0gMHgwOCwKLSBtbV9mZmxvb3JsX29wID0gMHgwYywKLSBtbV9mYWJzMF9vcCA9IDB4MGQsCi0gbW1fZmN2dHdfb3AgPSAweDI0LAorICBtbV9mbW92MF9vcCA9IDB4MDEsCisgIG1tX2ZjdnRsX29wID0gMHgwNCwKKyAgbW1fbW92ZjBfb3AgPSAweDA1LAorICBtbV9mcnNxcnRfb3AgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9tb3Z0MF9vcCA9IDB4MjUsCi0gbW1fZnNxcnRfb3AgPSAweDI4LAotIG1tX2ZmbG9vcndfb3AgPSAweDJjLAotIG1tX2ZuZWcwX29wID0gMHgyZCwKKyAgbW1fZmZsb29ybF9vcCA9IDB4MGMsCisgIG1tX2ZhYnMwX29wID0gMHgwZCwKKyAgbW1fZmN2dHdfb3AgPSAweDI0LAorICBtbV9tb3Z0MF9vcCA9IDB4MjUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2NmYzFfb3AgPSAweDQwLAotIG1tX2ZyZWNpcF9vcCA9IDB4NDgsCi0gbW1fZmNlaWxsX29wID0gMHg0YywKLSBtbV9mY3Z0ZDBfb3AgPSAweDRkLAorICBtbV9mc3FydF9vcCA9IDB4MjgsCisgIG1tX2ZmbG9vcndfb3AgPSAweDJjLAorICBtbV9mbmVnMF9vcCA9IDB4MmQsCisgIG1tX2NmYzFfb3AgPSAweDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9jdGMxX29wID0gMHg2MCwKLSBtbV9mY2VpbHdfb3AgPSAweDZjLAotIG1tX2ZjdnRzMF9vcCA9IDB4NmQsCi0gbW1fbWZjMV9vcCA9IDB4ODAsCisgIG1tX2ZyZWNpcF9vcCA9IDB4NDgsCisgIG1tX2ZjZWlsbF9vcCA9IDB4NGMsCisgIG1tX2ZjdnRkMF9vcCA9IDB4NGQsCisgIG1tX2N0YzFfb3AgPSAweDYwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9mbW92MV9vcCA9IDB4ODEsCi0gbW1fbW92ZjFfb3AgPSAweDg1LAotIG1tX2Z0cnVuY2xfb3AgPSAweDhjLAotIG1tX2ZhYnMxX29wID0gMHg4ZCwKKyAgbW1fZmNlaWx3X29wID0gMHg2YywKKyAgbW1fZmN2dHMwX29wID0gMHg2ZCwKKyAgbW1fbWZjMV9vcCA9IDB4ODAsCisgIG1tX2Ztb3YxX29wID0gMHg4MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fbXRjMV9vcCA9IDB4YTAsCi0gbW1fbW92dDFfb3AgPSAweGE1LAotIG1tX2Z0cnVuY3dfb3AgPSAweGFjLAotIG1tX2ZuZWcxX29wID0gMHhhZCwKKyAgbW1fbW92ZjFfb3AgPSAweDg1LAorICBtbV9mdHJ1bmNsX29wID0gMHg4YywKKyAgbW1fZmFiczFfb3AgPSAweDhkLAorICBtbV9tdGMxX29wID0gMHhhMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fbWZoYzFfb3AgPSAweGMwLAotIG1tX2Zyb3VuZGxfb3AgPSAweGNjLAotIG1tX2ZjdnRkMV9vcCA9IDB4Y2QsCi0gbW1fbXRoYzFfb3AgPSAweGUwLAorICBtbV9tb3Z0MV9vcCA9IDB4YTUsCisgIG1tX2Z0cnVuY3dfb3AgPSAweGFjLAorICBtbV9mbmVnMV9vcCA9IDB4YWQsCisgIG1tX21maGMxX29wID0gMHhjMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fZnJvdW5kd19vcCA9IDB4ZWMsCi0gbW1fZmN2dHMxX29wID0gMHhlZCwKKyAgbW1fZnJvdW5kbF9vcCA9IDB4Y2MsCisgIG1tX2ZjdnRkMV9vcCA9IDB4Y2QsCisgIG1tX210aGMxX29wID0gMHhlMCwKKyAgbW1fZnJvdW5kd19vcCA9IDB4ZWMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9mY3Z0czFfb3AgPSAweGVkLAogfTsKIGVudW0gbW1fMTZjX21pbm9yX29wIHsKKyAgbW1fbHdtMTZfb3AgPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9sd20xNl9vcCA9IDB4MDQsCi0gbW1fc3dtMTZfb3AgPSAweDA1LAotIG1tX2pyMTZfb3AgPSAweDBjLAotIG1tX2pyY19vcCA9IDB4MGQsCisgIG1tX3N3bTE2X29wID0gMHgwNSwKKyAgbW1fanIxNl9vcCA9IDB4MGMsCisgIG1tX2pyY19vcCA9IDB4MGQsCisgIG1tX2phbHIxNl9vcCA9IDB4MGUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2phbHIxNl9vcCA9IDB4MGUsCi0gbW1famFscnMxNl9vcCA9IDB4MGYsCi0gbW1fanJhZGRpdXNwX29wID0gMHgxOCwKKyAgbW1famFscnMxNl9vcCA9IDB4MGYsCisgIG1tX2pyYWRkaXVzcF9vcCA9IDB4MTgsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMTZkX21pbm9yX29wIHsKLSBtbV9hZGRpdXM1X2Z1bmMsCi0gbW1fYWRkaXVzcF9mdW5jLAotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2FkZGl1czVfZnVuYywKKyAgbW1fYWRkaXVzcF9mdW5jLAorfTsKIGVudW0gTUlQUzE2ZV9vcHMgewotIE1JUFMxNmVfamFsX29wID0gMDAzLAotIE1JUFMxNmVfbGRfb3AgPSAwMDcsCi0gTUlQUzE2ZV9pOF9vcCA9IDAxNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUlQUzE2ZV9zZF9vcCA9IDAxNywKLSBNSVBTMTZlX2xiX29wID0gMDIwLAotIE1JUFMxNmVfbGhfb3AgPSAwMjEsCi0gTUlQUzE2ZV9sd3NwX29wID0gMDIyLAorICBNSVBTMTZlX2phbF9vcCA9IDAwMywKKyAgTUlQUzE2ZV9sZF9vcCA9IDAwNywKKyAgTUlQUzE2ZV9pOF9vcCA9IDAxNCwKKyAgTUlQUzE2ZV9zZF9vcCA9IDAxNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUlQUzE2ZV9sd19vcCA9IDAyMywKLSBNSVBTMTZlX2xidV9vcCA9IDAyNCwKLSBNSVBTMTZlX2xodV9vcCA9IDAyNSwKLSBNSVBTMTZlX2x3cGNfb3AgPSAwMjYsCisgIE1JUFMxNmVfbGJfb3AgPSAwMjAsCisgIE1JUFMxNmVfbGhfb3AgPSAwMjEsCisgIE1JUFMxNmVfbHdzcF9vcCA9IDAyMiwKKyAgTUlQUzE2ZV9sd19vcCA9IDAyMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUlQUzE2ZV9sd3Vfb3AgPSAwMjcsCi0gTUlQUzE2ZV9zYl9vcCA9IDAzMCwKLSBNSVBTMTZlX3NoX29wID0gMDMxLAotIE1JUFMxNmVfc3dzcF9vcCA9IDAzMiwKKyAgTUlQUzE2ZV9sYnVfb3AgPSAwMjQsCisgIE1JUFMxNmVfbGh1X29wID0gMDI1LAorICBNSVBTMTZlX2x3cGNfb3AgPSAwMjYsCisgIE1JUFMxNmVfbHd1X29wID0gMDI3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSVBTMTZlX3N3X29wID0gMDMzLAotIE1JUFMxNmVfcnJfb3AgPSAwMzUsCi0gTUlQUzE2ZV9leHRlbmRfb3AgPSAwMzYsCi0gTUlQUzE2ZV9pNjRfb3AgPSAwMzcsCisgIE1JUFMxNmVfc2Jfb3AgPSAwMzAsCisgIE1JUFMxNmVfc2hfb3AgPSAwMzEsCisgIE1JUFMxNmVfc3dzcF9vcCA9IDAzMiwKKyAgTUlQUzE2ZV9zd19vcCA9IDAzMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1JUFMxNmVfcnJfb3AgPSAwMzUsCisgIE1JUFMxNmVfZXh0ZW5kX29wID0gMDM2LAorICBNSVBTMTZlX2k2NF9vcCA9IDAzNywKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBNSVBTMTZlX2k2NF9mdW5jIHsKLSBNSVBTMTZlX2xkc3BfZnVuYywKLSBNSVBTMTZlX3Nkc3BfZnVuYywKKyAgTUlQUzE2ZV9sZHNwX2Z1bmMsCisgIE1JUFMxNmVfc2RzcF9mdW5jLAorICBNSVBTMTZlX3NkcmFzcF9mdW5jLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSVBTMTZlX3NkcmFzcF9mdW5jLAotIE1JUFMxNmVfZGFkanNwX2Z1bmMsCi0gTUlQUzE2ZV9sZHBjX2Z1bmMsCisgIE1JUFMxNmVfZGFkanNwX2Z1bmMsCisgIE1JUFMxNmVfbGRwY19mdW5jLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIE1JUFMxNmVfcnJfZnVuYyB7Ci0gTUlQUzE2ZV9qcl9mdW5jLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTUlQUzE2ZV9qcl9mdW5jLAogfTsKIGVudW0gTUlQUzZlX2k4X2Z1bmMgeworICBNSVBTMTZlX3N3cmFzcF9mdW5jID0gMDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1JUFMxNmVfc3dyYXNwX2Z1bmMgPSAwMiwKIH07CiAjZGVmaW5lIE1NX05PUDE2IDB4MGMwMAotI2RlZmluZSBCSVRGSUVMRF9GSUVMRChmaWVsZCwgbW9yZSkgICBtb3JlICAgZmllbGQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGpfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdGFyZ2V0IDogMjYsCi0gOykpCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHRhcmdldCA6IDI2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgKSkKIH07CiBzdHJ1Y3QgaV9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxNiwKLSA7KSkpKQorICkpKSkKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB1aW1tZWRpYXRlIDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdWltbWVkaWF0ZSA6IDE2LAotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBjX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY19vcCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNhY2hlIDogMiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY19vcCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNhY2hlIDogMiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxNiwKLSA7KSkpKSkKKyApKSkpKQogfTsKIHN0cnVjdCByX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJlIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQorICkpKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcF9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJlIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyApKSkpKSkKIH07CiBzdHJ1Y3QgZl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDEsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogNCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogNCwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJlIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkpCisgKSkpKSkpKQogfTsKIHN0cnVjdCBtYV9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmciA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAyLDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAyLAotIDspKSkpKSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICkpKSkpKSkKIH07CiBzdHJ1Y3QgYl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjb2RlIDogMjAsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNvZGUgOiAyMCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKQorICkpKQogfTsKIHN0cnVjdCBwc19mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkKKyApKSkpKSkKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgc2VsIDogNCwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgc2VsIDogNCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB2cyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB2cyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHZkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCisgKSkpKSkpKQorfTsKK3N0cnVjdCBzcGVjM19mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA5LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNyw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDspKSkpKSkpCisgKSkpKSkKIH07CiBzdHJ1Y3QgZmJfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZsYWcgOiAyLCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJjIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY2MgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbGFnIDogMiwKLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gOykpKSkpCisgKSkpKSkKIH07CiBzdHJ1Y3QgZnAwX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpCisgKSkpKSkpCiB9Owogc3RydWN0IG1tX2ZwMF9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDIsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDIsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICkpKSkpKSkKIH07CiBzdHJ1Y3QgZnAxX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gOykpKSkpKQorICkpKSkpKQogfTsKIHN0cnVjdCBtbV9mcDFfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDIsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogOCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDIsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogOCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnAyX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHplcm8gOiAyLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAyLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjYyA6IDMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB6ZXJvIDogMiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gOykpKSkpKSkpCisgKSkpKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnAzX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDcsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpCisgKSkpKSkpCiB9Owogc3RydWN0IG1tX2ZwNF9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY2MgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjb25kIDogNCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNjIDogMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNvbmQgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyApKSkpKSkpCiB9Owogc3RydWN0IG1tX2ZwNV9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbmRleCA6IDUsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGluZGV4IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBiYXNlIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpKSkpCisgKSkpKSkpCiB9Owogc3RydWN0IGZwNl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmciA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnA2X2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQorICkpKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbW1faV9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxNiwKLSA7KSkpKQorICkpKSkKIH07CiBzdHJ1Y3QgbW1fbV9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNCwgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxMiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTIsCi0gOykpKSkpCisgKSkpKSkKIH07CiBzdHJ1Y3QgbW1feF9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbmRleCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAxMSw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbmRleCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZCA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogMTEsCi0gOykpKSkpCisgKSkpKSkKIH07CiBzdHJ1Y3QgbW1fYjBfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxMCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDEwLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotIDspKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgKSkpCiB9Owogc3RydWN0IG1tX2IxX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogMywKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDcsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA3LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotIDspKSkpCisgKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbW0xNl9tX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBybGlzdCA6IDIsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBybGlzdCA6IDIsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDQsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogNCwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiwKLSA7KSkpKSkKKyApKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbW0xNl9yYl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiAzLAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDQsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotIDspKSkpKQorICkpKSkpCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtbTE2X3IzX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogMywKLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA3LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDMsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogNywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBtbTE2X3I1X2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpKQorICkpKSkKIH07CiBzdHJ1Y3QgbTE2ZV9yciB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgbmQgOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBsIDogMSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmEgOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNSw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG5kIDogMSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgbCA6IDEsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJhIDogMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA1LAotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgbTE2ZV9qYWwgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB4IDogMSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tMjBfMTYgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgaW1tMjVfMjEgOiA1LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHggOiAxLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0yMF8xNiA6IDUsCi0gQklURklFTERfRklFTEQoc2lnbmVkIGludCBpbW0yNV8yMSA6IDUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBtMTZlX2k2NCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA4LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA4LAotIDspKSkKKyApKSkKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG0xNmVfcmk2NCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeSA6IDMsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeSA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDUsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogNSwKLSA7KSkpKQorICkpKSkKIH07CiBzdHJ1Y3QgbTE2ZV9yaSB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogOCw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDgsCi0gOykpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyApKSkKIH07CiBzdHJ1Y3QgbTE2ZV9ycmkgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeCA6IDMsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnkgOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA1LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ5IDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogNSwKLSA7KSkpKQorICkpKSkKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG0xNmVfaTggewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogOCwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDgsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpCisgKSkpCiB9OwogdW5pb24gbWlwc19pbnN0cnVjdGlvbiB7Ci0gdW5zaWduZWQgaW50IHdvcmQ7CisgIHVuc2lnbmVkIGludCB3b3JkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBoYWxmd29yZFsyXTsKLSB1bnNpZ25lZCBjaGFyIGJ5dGVbNF07Ci0gc3RydWN0IGpfZm9ybWF0IGpfZm9ybWF0OwotIHN0cnVjdCBpX2Zvcm1hdCBpX2Zvcm1hdDsKKyAgdW5zaWduZWQgc2hvcnQgaGFsZndvcmRbMl07CisgIHVuc2lnbmVkIGNoYXIgYnl0ZVs0XTsKKyAgc3RydWN0IGpfZm9ybWF0IGpfZm9ybWF0OworICBzdHJ1Y3QgaV9mb3JtYXQgaV9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1X2Zvcm1hdCB1X2Zvcm1hdDsKLSBzdHJ1Y3QgY19mb3JtYXQgY19mb3JtYXQ7Ci0gc3RydWN0IHJfZm9ybWF0IHJfZm9ybWF0OwotIHN0cnVjdCBwX2Zvcm1hdCBwX2Zvcm1hdDsKKyAgc3RydWN0IHVfZm9ybWF0IHVfZm9ybWF0OworICBzdHJ1Y3QgY19mb3JtYXQgY19mb3JtYXQ7CisgIHN0cnVjdCByX2Zvcm1hdCByX2Zvcm1hdDsKKyAgc3RydWN0IHBfZm9ybWF0IHBfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZl9mb3JtYXQgZl9mb3JtYXQ7Ci0gc3RydWN0IG1hX2Zvcm1hdCBtYV9mb3JtYXQ7Ci0gc3RydWN0IGJfZm9ybWF0IGJfZm9ybWF0OwotIHN0cnVjdCBwc19mb3JtYXQgcHNfZm9ybWF0OworICBzdHJ1Y3QgZl9mb3JtYXQgZl9mb3JtYXQ7CisgIHN0cnVjdCBtYV9mb3JtYXQgbWFfZm9ybWF0OworICBzdHJ1Y3QgYl9mb3JtYXQgYl9mb3JtYXQ7CisgIHN0cnVjdCBwc19mb3JtYXQgcHNfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgdl9mb3JtYXQgdl9mb3JtYXQ7Ci0gc3RydWN0IGZiX2Zvcm1hdCBmYl9mb3JtYXQ7Ci0gc3RydWN0IGZwMF9mb3JtYXQgZnAwX2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fZnAwX2Zvcm1hdCBtbV9mcDBfZm9ybWF0OworICBzdHJ1Y3Qgdl9mb3JtYXQgdl9mb3JtYXQ7CisgIHN0cnVjdCBzcGVjM19mb3JtYXQgc3BlYzNfZm9ybWF0OworICBzdHJ1Y3QgZmJfZm9ybWF0IGZiX2Zvcm1hdDsKKyAgc3RydWN0IGZwMF9mb3JtYXQgZnAwX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZwMV9mb3JtYXQgZnAxX2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fZnAxX2Zvcm1hdCBtbV9mcDFfZm9ybWF0OwotIHN0cnVjdCBtbV9mcDJfZm9ybWF0IG1tX2ZwMl9mb3JtYXQ7Ci0gc3RydWN0IG1tX2ZwM19mb3JtYXQgbW1fZnAzX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwMF9mb3JtYXQgbW1fZnAwX2Zvcm1hdDsKKyAgc3RydWN0IGZwMV9mb3JtYXQgZnAxX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwMV9mb3JtYXQgbW1fZnAxX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwMl9mb3JtYXQgbW1fZnAyX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG1tX2ZwNF9mb3JtYXQgbW1fZnA0X2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fZnA1X2Zvcm1hdCBtbV9mcDVfZm9ybWF0OwotIHN0cnVjdCBmcDZfZm9ybWF0IGZwNl9mb3JtYXQ7Ci0gc3RydWN0IG1tX2ZwNl9mb3JtYXQgbW1fZnA2X2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwM19mb3JtYXQgbW1fZnAzX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwNF9mb3JtYXQgbW1fZnA0X2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwNV9mb3JtYXQgbW1fZnA1X2Zvcm1hdDsKKyAgc3RydWN0IGZwNl9mb3JtYXQgZnA2X2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG1tX2lfZm9ybWF0IG1tX2lfZm9ybWF0OwotIHN0cnVjdCBtbV9tX2Zvcm1hdCBtbV9tX2Zvcm1hdDsKLSBzdHJ1Y3QgbW1feF9mb3JtYXQgbW1feF9mb3JtYXQ7Ci0gc3RydWN0IG1tX2IwX2Zvcm1hdCBtbV9iMF9mb3JtYXQ7CisgIHN0cnVjdCBtbV9mcDZfZm9ybWF0IG1tX2ZwNl9mb3JtYXQ7CisgIHN0cnVjdCBtbV9pX2Zvcm1hdCBtbV9pX2Zvcm1hdDsKKyAgc3RydWN0IG1tX21fZm9ybWF0IG1tX21fZm9ybWF0OworICBzdHJ1Y3QgbW1feF9mb3JtYXQgbW1feF9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtbV9iMV9mb3JtYXQgbW1fYjFfZm9ybWF0OwotIHN0cnVjdCBtbTE2X21fZm9ybWF0IG1tMTZfbV9mb3JtYXQgOwotIHN0cnVjdCBtbTE2X3JiX2Zvcm1hdCBtbTE2X3JiX2Zvcm1hdDsKLSBzdHJ1Y3QgbW0xNl9yM19mb3JtYXQgbW0xNl9yM19mb3JtYXQ7CisgIHN0cnVjdCBtbV9iMF9mb3JtYXQgbW1fYjBfZm9ybWF0OworICBzdHJ1Y3QgbW1fYjFfZm9ybWF0IG1tX2IxX2Zvcm1hdDsKKyAgc3RydWN0IG1tMTZfbV9mb3JtYXQgbW0xNl9tX2Zvcm1hdDsKKyAgc3RydWN0IG1tMTZfcmJfZm9ybWF0IG1tMTZfcmJfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbW0xNl9yNV9mb3JtYXQgbW0xNl9yNV9mb3JtYXQ7CisgIHN0cnVjdCBtbTE2X3IzX2Zvcm1hdCBtbTE2X3IzX2Zvcm1hdDsKKyAgc3RydWN0IG1tMTZfcjVfZm9ybWF0IG1tMTZfcjVfZm9ybWF0OwogfTsKIHVuaW9uIG1pcHMxNmVfaW5zdHJ1Y3Rpb24gewotIHVuc2lnbmVkIGludCBmdWxsIDogMTY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtMTZlX3JyIHJyOwotIHN0cnVjdCBtMTZlX2phbCBqYWw7Ci0gc3RydWN0IG0xNmVfaTY0IGk2NDsKLSBzdHJ1Y3QgbTE2ZV9yaTY0IHJpNjQ7CisgIHVuc2lnbmVkIGludCBmdWxsIDogMTY7CisgIHN0cnVjdCBtMTZlX3JyIHJyOworICBzdHJ1Y3QgbTE2ZV9qYWwgamFsOworICBzdHJ1Y3QgbTE2ZV9pNjQgaTY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbTE2ZV9yaSByaTsKLSBzdHJ1Y3QgbTE2ZV9ycmkgcnJpOwotIHN0cnVjdCBtMTZlX2k4IGk4OworICBzdHJ1Y3QgbTE2ZV9yaTY0IHJpNjQ7CisgIHN0cnVjdCBtMTZlX3JpIHJpOworICBzdHJ1Y3QgbTE2ZV9ycmkgcnJpOworICBzdHJ1Y3QgbTE2ZV9pOCBpODsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vaW9jdGxzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pb2N0bHMuaAppbmRleCAzMmU2ZTM0Li45NzNiY2M3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pb2N0bHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pb2N0bHMuaApAQCAtODgsMzcgKzg4LDM5IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1NFVFNXMiBfSU9XKCdUJywgMHgyQywgc3RydWN0IHRlcm1pb3MyKQogI2RlZmluZSBUQ1NFVFNGMiBfSU9XKCdUJywgMHgyRCwgc3RydWN0IHRlcm1pb3MyKQorI2RlZmluZSBUSU9DR1JTNDg1IF9JT1IoJ1QnLCAweDJFLCBzdHJ1Y3Qgc2VyaWFsX3JzNDg1KQorI2RlZmluZSBUSU9DU1JTNDg1IF9JT1dSKCdUJywgMHgyRiwgc3RydWN0IHNlcmlhbF9yczQ4NSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NHUFROIF9JT1IoJ1QnLCAweDMwLCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIFRJT0NTUFRMQ0sgX0lPVygnVCcsIDB4MzEsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NHREVWIF9JT1IoJ1QnLCAweDMyLCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIFRJT0NTSUcgX0lPVygnVCcsIDB4MzYsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NWSEFOR1VQIDB4NTQzNwogI2RlZmluZSBUSU9DR1BLVCBfSU9SKCdUJywgMHgzOCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ0dQVExDSyBfSU9SKCdUJywgMHgzOSwgaW50KQogI2RlZmluZSBUSU9DR0VYQ0wgX0lPUignVCcsIDB4NDAsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NTQ1RUWSAweDU0ODAKICNkZWZpbmUgVElPQ0dTT0ZUQ0FSIDB4NTQ4MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ1NTT0ZUQ0FSIDB4NTQ4MgogI2RlZmluZSBUSU9DTElOVVggMHg1NDgzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DR1NFUklBTCAweDU0ODQKICNkZWZpbmUgVElPQ1NTRVJJQUwgMHg1NDg1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1NCUktQIDB4NTQ4NgogI2RlZmluZSBUSU9DU0VSQ09ORklHIDB4NTQ4OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ1NFUkdXSUxEIDB4NTQ4OQogI2RlZmluZSBUSU9DU0VSU1dJTEQgMHg1NDhhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DR0xDS1RSTUlPUyAweDU0OGIKICNkZWZpbmUgVElPQ1NMQ0tUUk1JT1MgMHg1NDhjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DU0VSR1NUUlVDVCAweDU0OGQKICNkZWZpbmUgVElPQ1NFUkdFVExTUiAweDU0OGUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NTRVJHRVRNVUxUSSAweDU0OGYKICNkZWZpbmUgVElPQ1NFUlNFVE1VTFRJIDB4NTQ5MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ01JV0FJVCAweDU0OTEKICNkZWZpbmUgVElPQ0dJQ09VTlQgMHg1NDkyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9rdm0uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bS5oCmluZGV4IDY5MDg0ZWUuLjAyMDZkMTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bS5oCkBAIC0yMSwyMiArMjEsMjIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGt2bV9yZWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZ3ByWzMyXTsKLSBfX3U2NCBoaTsKLSBfX3U2NCBsbzsKLSBfX3U2NCBwYzsKKyAgX191NjQgZ3ByWzMyXTsKKyAgX191NjQgaGk7CisgIF9fdTY0IGxvOworICBfX3U2NCBwYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV9mcHUgewotIF9fdTY0IGZwclszMl07Ci0gX191MzIgZmlyOworICBfX3U2NCBmcHJbMzJdOworICBfX3UzMiBmaXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZjY3I7Ci0gX191MzIgZmV4cjsKLSBfX3UzMiBmZW5yOwotIF9fdTMyIGZjc3I7CisgIF9fdTMyIGZjY3I7CisgIF9fdTMyIGZleHI7CisgIF9fdTMyIGZlbnI7CisgIF9fdTMyIGZjc3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZDsKKyAgX191MzIgcGFkOwogfTsKICNkZWZpbmUgS1ZNX1JFR19NSVBTX1IwIChLVk1fUkVHX01JUFMgfCBLVk1fUkVHX1NJWkVfVTY0IHwgMCkKICNkZWZpbmUgS1ZNX1JFR19NSVBTX1IxIChLVk1fUkVHX01JUFMgfCBLVk1fUkVHX1NJWkVfVTY0IHwgMSkKQEAgLTgyLDggKzgyLDEzIEBACiAjZGVmaW5lIEtWTV9SRUdfTUlQU19MTyAoS1ZNX1JFR19NSVBTIHwgS1ZNX1JFR19TSVpFX1U2NCB8IDMzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19NSVBTX1BDIChLVk1fUkVHX01JUFMgfCBLVk1fUkVHX1NJWkVfVTY0IHwgMzQpCisjZGVmaW5lIEtWTV9SRUdfTUlQU19DT1VOVF9DVEwgKEtWTV9SRUdfTUlQUyB8IEtWTV9SRUdfU0laRV9VNjQgfCAweDIwMDAwIHwgMCkKKyNkZWZpbmUgS1ZNX1JFR19NSVBTX0NPVU5UX0NUTF9EQyAweDAwMDAwMDAxCisjZGVmaW5lIEtWTV9SRUdfTUlQU19DT1VOVF9SRVNVTUUgKEtWTV9SRUdfTUlQUyB8IEtWTV9SRUdfU0laRV9VNjQgfCAweDIwMDAwIHwgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfTUlQU19DT1VOVF9IWiAoS1ZNX1JFR19NSVBTIHwgS1ZNX1JFR19TSVpFX1U2NCB8IDB4MjAwMDAgfCAyKQogc3RydWN0IGt2bV9kZWJ1Z19leGl0X2FyY2ggewotIF9fdTY0IGVwYzsKKyAgX191NjQgZXBjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnX2FyY2ggewpAQCAtOTQsOCArOTksOCBAQAogc3RydWN0IGt2bV9zcmVncyB7CiB9Owogc3RydWN0IGt2bV9taXBzX2ludGVycnVwdCB7Ci0gX191MzIgY3B1OworICBfX3UzMiBjcHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlycTsKKyAgX191MzIgaXJxOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtX3BhcmEuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bV9wYXJhLmgKaW5kZXggZTE5ZjdhMC4uODI1YzEyYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtX3BhcmEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9rdm1fcGFyYS5oCkBAIC0xNiw0ICsxNiw2IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaW5jbHVkZSA8YXNtLWdlbmVyaWMva3ZtX3BhcmEuaD4KKyNpZm5kZWYgX1VBUElfQVNNX01JUFNfS1ZNX1BBUkFfSAorI2RlZmluZSBfVUFQSV9BU01fTUlQU19LVk1fUEFSQV9ICisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL21zZ2J1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vbXNnYnVmLmgKaW5kZXggZWZhZTE0OC4uM2U3MDBiMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vbXNnYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vbXNnYnVmLmgKQEAgLTE5LDMxICsxOSwzMSBAQAogI2lmbmRlZiBfQVNNX01TR0JVRl9ICiAjZGVmaW5lIF9BU01fTVNHQlVGX0gKIHN0cnVjdCBtc3FpZDY0X2RzIHsKLSBzdHJ1Y3QgaXBjNjRfcGVybSBtc2dfcGVybTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gbXNnX3Blcm07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBtc2dfc3RpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfc3RpbWU7CiAjaWZuZGVmIF9fbWlwczY0Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBtc2dfcnRpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfcnRpbWU7CiAjaWZuZGVmIF9fbWlwczY0Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBtc2dfY3RpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfY3RpbWU7CiAjaWZuZGVmIF9fbWlwczY0Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbXNnX2NieXRlczsKLSB1bnNpZ25lZCBsb25nIG1zZ19xbnVtOwotIHVuc2lnbmVkIGxvbmcgbXNnX3FieXRlczsKLSBfX2tlcm5lbF9waWRfdCBtc2dfbHNwaWQ7CisgIHVuc2lnbmVkIGxvbmcgbXNnX2NieXRlczsKKyAgdW5zaWduZWQgbG9uZyBtc2dfcW51bTsKKyAgdW5zaWduZWQgbG9uZyBtc2dfcWJ5dGVzOworICBfX2tlcm5lbF9waWRfdCBtc2dfbHNwaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IG1zZ19scnBpZDsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNTsKKyAgX19rZXJuZWxfcGlkX3QgbXNnX2xycGlkOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcG9zaXhfdHlwZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Bvc2l4X3R5cGVzLmgKaW5kZXggZTg1ODIxYy4uMjVhOWUzYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcG9zaXhfdHlwZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wb3NpeF90eXBlcy5oCkBAIC0yNCw3ICsyNCw3IEBACiAjZGVmaW5lIF9fa2VybmVsX2RhZGRyX3QgX19rZXJuZWxfZGFkZHJfdAogI2lmIF9NSVBTX1NaTE9ORyA9PSAzMgogdHlwZWRlZiBzdHJ1Y3QgewotIGxvbmcgdmFsWzJdOworICBsb25nIHZhbFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fa2VybmVsX2ZzaWRfdDsKICNkZWZpbmUgX19rZXJuZWxfZnNpZF90IF9fa2VybmVsX2ZzaWRfdApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcHRyYWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wdHJhY2UuaAppbmRleCAwMjk2Y2YzLi40ODAxMGU1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wdHJhY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wdHJhY2UuaApAQCAtMTgsNzYgKzE4LDc3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfQVNNX1BUUkFDRV9ICiAjZGVmaW5lIF9VQVBJX0FTTV9QVFJBQ0VfSAorI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIEZQUl9CQVNFIDMyCi0jZGVmaW5lIFBDIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQyA2NAogI2RlZmluZSBDQVVTRSA2NQogI2RlZmluZSBCQURWQUREUiA2NgogI2RlZmluZSBNTUhJIDY3Ci0jZGVmaW5lIE1NTE8gNjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1NTE8gNjgKICNkZWZpbmUgRlBDX0NTUiA2OQogI2RlZmluZSBGUENfRUlSIDcwCiAjZGVmaW5lIERTUF9CQVNFIDcxCi0jZGVmaW5lIERTUF9DT05UUk9MIDc3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEU1BfQ09OVFJPTCA3NwogI2RlZmluZSBBQ1ggNzgKIHN0cnVjdCBwdF9yZWdzIHsKLSB1bnNpZ25lZCBsb25nIHJlZ3NbMzJdOwotIHVuc2lnbmVkIGxvbmcgY3AwX3N0YXR1czsKKyAgX191NjQgcmVnc1szMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgaGk7Ci0gdW5zaWduZWQgbG9uZyBsbzsKLSB1bnNpZ25lZCBsb25nIGNwMF9iYWR2YWRkcjsKLSB1bnNpZ25lZCBsb25nIGNwMF9jYXVzZTsKKyAgX191NjQgbG87CisgIF9fdTY0IGhpOworICBfX3U2NCBjcDBfZXBjOworICBfX3U2NCBjcDBfYmFkdmFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY3AwX2VwYzsKLX0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKDgpKSk7CisgIF9fdTY0IGNwMF9zdGF0dXM7CisgIF9fdTY0IGNwMF9jYXVzZTsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogI2RlZmluZSBQVFJBQ0VfR0VUUkVHUyAxMgotI2RlZmluZSBQVFJBQ0VfU0VUUkVHUyAxMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFRSQUNFX1NFVFJFR1MgMTMKICNkZWZpbmUgUFRSQUNFX0dFVEZQUkVHUyAxNAogI2RlZmluZSBQVFJBQ0VfU0VURlBSRUdTIDE1CiAjZGVmaW5lIFBUUkFDRV9PTERTRVRPUFRJT05TIDIxCi0jZGVmaW5lIFBUUkFDRV9HRVRfVEhSRUFEX0FSRUEgMjUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBUUkFDRV9HRVRfVEhSRUFEX0FSRUEgMjUKICNkZWZpbmUgUFRSQUNFX1NFVF9USFJFQURfQVJFQSAyNgogI2RlZmluZSBQVFJBQ0VfUEVFS1RFWFRfMzI2NCAweGMwCiAjZGVmaW5lIFBUUkFDRV9QRUVLREFUQV8zMjY0IDB4YzEKLSNkZWZpbmUgUFRSQUNFX1BPS0VURVhUXzMyNjQgMHhjMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFRSQUNFX1BPS0VURVhUXzMyNjQgMHhjMgogI2RlZmluZSBQVFJBQ0VfUE9LRURBVEFfMzI2NCAweGMzCiAjZGVmaW5lIFBUUkFDRV9HRVRfVEhSRUFEX0FSRUFfMzI2NCAweGM0CiBlbnVtIHB0X3dhdGNoX3N0eWxlIHsKLSBwdF93YXRjaF9zdHlsZV9taXBzMzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHB0X3dhdGNoX3N0eWxlX21pcHM2NAorICBwdF93YXRjaF9zdHlsZV9taXBzMzIsCisgIHB0X3dhdGNoX3N0eWxlX21pcHM2NAogfTsKIHN0cnVjdCBtaXBzMzJfd2F0Y2hfcmVncyB7Ci0gdW5zaWduZWQgaW50IHdhdGNobG9bOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHdhdGNoaGlbOF07Ci0gdW5zaWduZWQgc2hvcnQgd2F0Y2hfbWFza3NbOF07Ci0gdW5zaWduZWQgaW50IG51bV92YWxpZDsKKyAgdW5zaWduZWQgaW50IHdhdGNobG9bOF07CisgIHVuc2lnbmVkIHNob3J0IHdhdGNoaGlbOF07CisgIHVuc2lnbmVkIHNob3J0IHdhdGNoX21hc2tzWzhdOworICB1bnNpZ25lZCBpbnQgbnVtX3ZhbGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtaXBzNjRfd2F0Y2hfcmVncyB7Ci0gdW5zaWduZWQgbG9uZyBsb25nIHdhdGNobG9bOF07Ci0gdW5zaWduZWQgc2hvcnQgd2F0Y2hoaVs4XTsKLSB1bnNpZ25lZCBzaG9ydCB3YXRjaF9tYXNrc1s4XTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHdhdGNobG9bOF07CisgIHVuc2lnbmVkIHNob3J0IHdhdGNoaGlbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBudW1fdmFsaWQ7CisgIHVuc2lnbmVkIHNob3J0IHdhdGNoX21hc2tzWzhdOworICB1bnNpZ25lZCBpbnQgbnVtX3ZhbGlkOwogfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiBzdHJ1Y3QgcHRfd2F0Y2hfcmVncyB7Ci0gZW51bSBwdF93YXRjaF9zdHlsZSBzdHlsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBtaXBzMzJfd2F0Y2hfcmVncyBtaXBzMzI7Ci0gc3RydWN0IG1pcHM2NF93YXRjaF9yZWdzIG1pcHM2NDsKLSB9OworICBlbnVtIHB0X3dhdGNoX3N0eWxlIHN0eWxlOworICB1bmlvbiB7CisgICAgc3RydWN0IG1pcHMzMl93YXRjaF9yZWdzIG1pcHMzMjsKKyAgICBzdHJ1Y3QgbWlwczY0X3dhdGNoX3JlZ3MgbWlwczY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfTsKIH07CiAjZGVmaW5lIFBUUkFDRV9HRVRfV0FUQ0hfUkVHUyAweGQwCiAjZGVmaW5lIFBUUkFDRV9TRVRfV0FUQ0hfUkVHUyAweGQxCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3JlZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcmVnLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzBmMDAzZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3JlZy5oCkBAIC0wLDAgKzEsMjIzIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9fVUFQSV9BU01fTUlQU19SRUdfSAorI2RlZmluZSBfX1VBUElfQVNNX01JUFNfUkVHX0gKKyNkZWZpbmUgTUlQUzMyX0VGX1IwIDYKKyNkZWZpbmUgTUlQUzMyX0VGX1IxIDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFMzMl9FRl9SMiA4CisjZGVmaW5lIE1JUFMzMl9FRl9SMyA5CisjZGVmaW5lIE1JUFMzMl9FRl9SNCAxMAorI2RlZmluZSBNSVBTMzJfRUZfUjUgMTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFMzMl9FRl9SNiAxMgorI2RlZmluZSBNSVBTMzJfRUZfUjcgMTMKKyNkZWZpbmUgTUlQUzMyX0VGX1I4IDE0CisjZGVmaW5lIE1JUFMzMl9FRl9SOSAxNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IxMCAxNgorI2RlZmluZSBNSVBTMzJfRUZfUjExIDE3CisjZGVmaW5lIE1JUFMzMl9FRl9SMTIgMTgKKyNkZWZpbmUgTUlQUzMyX0VGX1IxMyAxOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IxNCAyMAorI2RlZmluZSBNSVBTMzJfRUZfUjE1IDIxCisjZGVmaW5lIE1JUFMzMl9FRl9SMTYgMjIKKyNkZWZpbmUgTUlQUzMyX0VGX1IxNyAyMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IxOCAyNAorI2RlZmluZSBNSVBTMzJfRUZfUjE5IDI1CisjZGVmaW5lIE1JUFMzMl9FRl9SMjAgMjYKKyNkZWZpbmUgTUlQUzMyX0VGX1IyMSAyNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IyMiAyOAorI2RlZmluZSBNSVBTMzJfRUZfUjIzIDI5CisjZGVmaW5lIE1JUFMzMl9FRl9SMjQgMzAKKyNkZWZpbmUgTUlQUzMyX0VGX1IyNSAzMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IyNiAzMgorI2RlZmluZSBNSVBTMzJfRUZfUjI3IDMzCisjZGVmaW5lIE1JUFMzMl9FRl9SMjggMzQKKyNkZWZpbmUgTUlQUzMyX0VGX1IyOSAzNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IzMCAzNgorI2RlZmluZSBNSVBTMzJfRUZfUjMxIDM3CisjZGVmaW5lIE1JUFMzMl9FRl9MTyAzOAorI2RlZmluZSBNSVBTMzJfRUZfSEkgMzkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFMzMl9FRl9DUDBfRVBDIDQwCisjZGVmaW5lIE1JUFMzMl9FRl9DUDBfQkFEVkFERFIgNDEKKyNkZWZpbmUgTUlQUzMyX0VGX0NQMF9TVEFUVVMgNDIKKyNkZWZpbmUgTUlQUzMyX0VGX0NQMF9DQVVTRSA0MworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1VOVVNFRDAgNDQKKyNkZWZpbmUgTUlQUzMyX0VGX1NJWkUgMTgwCisjZGVmaW5lIE1JUFM2NF9FRl9SMCAwCisjZGVmaW5lIE1JUFM2NF9FRl9SMSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTNjRfRUZfUjIgMgorI2RlZmluZSBNSVBTNjRfRUZfUjMgMworI2RlZmluZSBNSVBTNjRfRUZfUjQgNAorI2RlZmluZSBNSVBTNjRfRUZfUjUgNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1I2IDYKKyNkZWZpbmUgTUlQUzY0X0VGX1I3IDcKKyNkZWZpbmUgTUlQUzY0X0VGX1I4IDgKKyNkZWZpbmUgTUlQUzY0X0VGX1I5IDkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMTAgMTAKKyNkZWZpbmUgTUlQUzY0X0VGX1IxMSAxMQorI2RlZmluZSBNSVBTNjRfRUZfUjEyIDEyCisjZGVmaW5lIE1JUFM2NF9FRl9SMTMgMTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMTQgMTQKKyNkZWZpbmUgTUlQUzY0X0VGX1IxNSAxNQorI2RlZmluZSBNSVBTNjRfRUZfUjE2IDE2CisjZGVmaW5lIE1JUFM2NF9FRl9SMTcgMTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMTggMTgKKyNkZWZpbmUgTUlQUzY0X0VGX1IxOSAxOQorI2RlZmluZSBNSVBTNjRfRUZfUjIwIDIwCisjZGVmaW5lIE1JUFM2NF9FRl9SMjEgMjEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMjIgMjIKKyNkZWZpbmUgTUlQUzY0X0VGX1IyMyAyMworI2RlZmluZSBNSVBTNjRfRUZfUjI0IDI0CisjZGVmaW5lIE1JUFM2NF9FRl9SMjUgMjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMjYgMjYKKyNkZWZpbmUgTUlQUzY0X0VGX1IyNyAyNworI2RlZmluZSBNSVBTNjRfRUZfUjI4IDI4CisjZGVmaW5lIE1JUFM2NF9FRl9SMjkgMjkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMzAgMzAKKyNkZWZpbmUgTUlQUzY0X0VGX1IzMSAzMQorI2RlZmluZSBNSVBTNjRfRUZfTE8gMzIKKyNkZWZpbmUgTUlQUzY0X0VGX0hJIDMzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTNjRfRUZfQ1AwX0VQQyAzNAorI2RlZmluZSBNSVBTNjRfRUZfQ1AwX0JBRFZBRERSIDM1CisjZGVmaW5lIE1JUFM2NF9FRl9DUDBfU1RBVFVTIDM2CisjZGVmaW5lIE1JUFM2NF9FRl9DUDBfQ0FVU0UgMzcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9TSVpFIDMwNAorI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fQUJJMzIKKyNkZWZpbmUgRUZfUjAgTUlQUzMyX0VGX1IwCisjZGVmaW5lIEVGX1IxIE1JUFMzMl9FRl9SMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjIgTUlQUzMyX0VGX1IyCisjZGVmaW5lIEVGX1IzIE1JUFMzMl9FRl9SMworI2RlZmluZSBFRl9SNCBNSVBTMzJfRUZfUjQKKyNkZWZpbmUgRUZfUjUgTUlQUzMyX0VGX1I1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SNiBNSVBTMzJfRUZfUjYKKyNkZWZpbmUgRUZfUjcgTUlQUzMyX0VGX1I3CisjZGVmaW5lIEVGX1I4IE1JUFMzMl9FRl9SOAorI2RlZmluZSBFRl9SOSBNSVBTMzJfRUZfUjkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IxMCBNSVBTMzJfRUZfUjEwCisjZGVmaW5lIEVGX1IxMSBNSVBTMzJfRUZfUjExCisjZGVmaW5lIEVGX1IxMiBNSVBTMzJfRUZfUjEyCisjZGVmaW5lIEVGX1IxMyBNSVBTMzJfRUZfUjEzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMTQgTUlQUzMyX0VGX1IxNAorI2RlZmluZSBFRl9SMTUgTUlQUzMyX0VGX1IxNQorI2RlZmluZSBFRl9SMTYgTUlQUzMyX0VGX1IxNgorI2RlZmluZSBFRl9SMTcgTUlQUzMyX0VGX1IxNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjE4IE1JUFMzMl9FRl9SMTgKKyNkZWZpbmUgRUZfUjE5IE1JUFMzMl9FRl9SMTkKKyNkZWZpbmUgRUZfUjIwIE1JUFMzMl9FRl9SMjAKKyNkZWZpbmUgRUZfUjIxIE1JUFMzMl9FRl9SMjEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IyMiBNSVBTMzJfRUZfUjIyCisjZGVmaW5lIEVGX1IyMyBNSVBTMzJfRUZfUjIzCisjZGVmaW5lIEVGX1IyNCBNSVBTMzJfRUZfUjI0CisjZGVmaW5lIEVGX1IyNSBNSVBTMzJfRUZfUjI1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMjYgTUlQUzMyX0VGX1IyNgorI2RlZmluZSBFRl9SMjcgTUlQUzMyX0VGX1IyNworI2RlZmluZSBFRl9SMjggTUlQUzMyX0VGX1IyOAorI2RlZmluZSBFRl9SMjkgTUlQUzMyX0VGX1IyOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjMwIE1JUFMzMl9FRl9SMzAKKyNkZWZpbmUgRUZfUjMxIE1JUFMzMl9FRl9SMzEKKyNkZWZpbmUgRUZfTE8gTUlQUzMyX0VGX0xPCisjZGVmaW5lIEVGX0hJIE1JUFMzMl9FRl9ISQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfQ1AwX0VQQyBNSVBTMzJfRUZfQ1AwX0VQQworI2RlZmluZSBFRl9DUDBfQkFEVkFERFIgTUlQUzMyX0VGX0NQMF9CQURWQUREUgorI2RlZmluZSBFRl9DUDBfU1RBVFVTIE1JUFMzMl9FRl9DUDBfU1RBVFVTCisjZGVmaW5lIEVGX0NQMF9DQVVTRSBNSVBTMzJfRUZfQ1AwX0NBVVNFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9VTlVTRUQwIE1JUFMzMl9FRl9VTlVTRUQwCisjZGVmaW5lIEVGX1NJWkUgTUlQUzMyX0VGX1NJWkUKKyNlbGlmIF9NSVBTX1NJTT09X01JUFNfU0lNX0FCSTY0fHxfTUlQU19TSU09PV9NSVBTX1NJTV9OQUJJMzIKKyNkZWZpbmUgRUZfUjAgTUlQUzY0X0VGX1IwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMSBNSVBTNjRfRUZfUjEKKyNkZWZpbmUgRUZfUjIgTUlQUzY0X0VGX1IyCisjZGVmaW5lIEVGX1IzIE1JUFM2NF9FRl9SMworI2RlZmluZSBFRl9SNCBNSVBTNjRfRUZfUjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1I1IE1JUFM2NF9FRl9SNQorI2RlZmluZSBFRl9SNiBNSVBTNjRfRUZfUjYKKyNkZWZpbmUgRUZfUjcgTUlQUzY0X0VGX1I3CisjZGVmaW5lIEVGX1I4IE1JUFM2NF9FRl9SOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjkgTUlQUzY0X0VGX1I5CisjZGVmaW5lIEVGX1IxMCBNSVBTNjRfRUZfUjEwCisjZGVmaW5lIEVGX1IxMSBNSVBTNjRfRUZfUjExCisjZGVmaW5lIEVGX1IxMiBNSVBTNjRfRUZfUjEyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMTMgTUlQUzY0X0VGX1IxMworI2RlZmluZSBFRl9SMTQgTUlQUzY0X0VGX1IxNAorI2RlZmluZSBFRl9SMTUgTUlQUzY0X0VGX1IxNQorI2RlZmluZSBFRl9SMTYgTUlQUzY0X0VGX1IxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjE3IE1JUFM2NF9FRl9SMTcKKyNkZWZpbmUgRUZfUjE4IE1JUFM2NF9FRl9SMTgKKyNkZWZpbmUgRUZfUjE5IE1JUFM2NF9FRl9SMTkKKyNkZWZpbmUgRUZfUjIwIE1JUFM2NF9FRl9SMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IyMSBNSVBTNjRfRUZfUjIxCisjZGVmaW5lIEVGX1IyMiBNSVBTNjRfRUZfUjIyCisjZGVmaW5lIEVGX1IyMyBNSVBTNjRfRUZfUjIzCisjZGVmaW5lIEVGX1IyNCBNSVBTNjRfRUZfUjI0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMjUgTUlQUzY0X0VGX1IyNQorI2RlZmluZSBFRl9SMjYgTUlQUzY0X0VGX1IyNgorI2RlZmluZSBFRl9SMjcgTUlQUzY0X0VGX1IyNworI2RlZmluZSBFRl9SMjggTUlQUzY0X0VGX1IyOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjI5IE1JUFM2NF9FRl9SMjkKKyNkZWZpbmUgRUZfUjMwIE1JUFM2NF9FRl9SMzAKKyNkZWZpbmUgRUZfUjMxIE1JUFM2NF9FRl9SMzEKKyNkZWZpbmUgRUZfTE8gTUlQUzY0X0VGX0xPCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9ISSBNSVBTNjRfRUZfSEkKKyNkZWZpbmUgRUZfQ1AwX0VQQyBNSVBTNjRfRUZfQ1AwX0VQQworI2RlZmluZSBFRl9DUDBfQkFEVkFERFIgTUlQUzY0X0VGX0NQMF9CQURWQUREUgorI2RlZmluZSBFRl9DUDBfU1RBVFVTIE1JUFM2NF9FRl9DUDBfU1RBVFVTCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9DUDBfQ0FVU0UgTUlQUzY0X0VGX0NQMF9DQVVTRQorI2RlZmluZSBFRl9TSVpFIE1JUFM2NF9FRl9TSVpFCisjZW5kaWYKKyNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NlbWJ1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2VtYnVmLmgKaW5kZXggYjUyNGY2OC4uMGE4ZDRkOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2VtYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2VtYnVmLmgKQEAgLTE5LDEzICsxOSwxMyBAQAogI2lmbmRlZiBfQVNNX1NFTUJVRl9ICiAjZGVmaW5lIF9BU01fU0VNQlVGX0gKIHN0cnVjdCBzZW1pZDY0X2RzIHsKLSBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gc2VtX3Blcm07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBzZW1fb3RpbWU7Ci0gX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKLSB1bnNpZ25lZCBsb25nIHNlbV9uc2VtczsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzZW1fbnNlbXM7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZ2lkZWZzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZ2lkZWZzLmgKaW5kZXggZDYzZjE1ZS4uZThiNWY2ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2dpZGVmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NnaWRlZnMuaApAQCAtMTksNyArMTksNyBAQAogI2lmbmRlZiBfX0FTTV9TR0lERUZTX0gKICNkZWZpbmUgX19BU01fU0dJREVGU19ICiAjaWZuZGVmIF9fbGludXhfXwotI2Vycm9yIFVzZSBhIExpbnV4IGNvbXBpbGVyIG9yIGdpdmUgdXAuCisjZXJyb3IgVXNlIGEgTGludXggY29tcGlsZXIgb3IgZ2l2ZSB1cCAuCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjZGVmaW5lIF9NSVBTX0lTQV9NSVBTMSAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaG1idWYuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NobWJ1Zi5oCmluZGV4IDNmN2QwYjEuLjhkNDE2NTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NobWJ1Zi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NobWJ1Zi5oCkBAIC0xOSwzMiArMTksMzIgQEAKICNpZm5kZWYgX0FTTV9TSE1CVUZfSAogI2RlZmluZSBfQVNNX1NITUJVRl9ICiBzdHJ1Y3Qgc2htaWQ2NF9kcyB7Ci0gc3RydWN0IGlwYzY0X3Blcm0gc2htX3Blcm07CisgIHN0cnVjdCBpcGM2NF9wZXJtIHNobV9wZXJtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3Qgc2htX3NlZ3N6OwotIF9fa2VybmVsX3RpbWVfdCBzaG1fYXRpbWU7Ci0gX19rZXJuZWxfdGltZV90IHNobV9kdGltZTsKLSBfX2tlcm5lbF90aW1lX3Qgc2htX2N0aW1lOworICBzaXplX3Qgc2htX3NlZ3N6OworICBfX2tlcm5lbF90aW1lX3Qgc2htX2F0aW1lOworICBfX2tlcm5lbF90aW1lX3Qgc2htX2R0aW1lOworICBfX2tlcm5lbF90aW1lX3Qgc2htX2N0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCBzaG1fY3BpZDsKLSBfX2tlcm5lbF9waWRfdCBzaG1fbHBpZDsKLSB1bnNpZ25lZCBsb25nIHNobV9uYXR0Y2g7Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CisgIF9fa2VybmVsX3BpZF90IHNobV9jcGlkOworICBfX2tlcm5lbF9waWRfdCBzaG1fbHBpZDsKKyAgdW5zaWduZWQgbG9uZyBzaG1fbmF0dGNoOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOwogfTsKIHN0cnVjdCBzaG1pbmZvNjQgewotIHVuc2lnbmVkIGxvbmcgc2htbWF4OworICB1bnNpZ25lZCBsb25nIHNobW1heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzaG1taW47Ci0gdW5zaWduZWQgbG9uZyBzaG1tbmk7Ci0gdW5zaWduZWQgbG9uZyBzaG1zZWc7Ci0gdW5zaWduZWQgbG9uZyBzaG1hbGw7CisgIHVuc2lnbmVkIGxvbmcgc2htbWluOworICB1bnNpZ25lZCBsb25nIHNobW1uaTsKKyAgdW5zaWduZWQgbG9uZyBzaG1zZWc7CisgIHVuc2lnbmVkIGxvbmcgc2htYWxsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnY29udGV4dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnY29udGV4dC5oCmluZGV4IDhhODc3ZGIuLjU5ODcwYmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ2NvbnRleHQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdjb250ZXh0LmgKQEAgLTIzLDI4ICsyMywyOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTMyCiBzdHJ1Y3Qgc2lnY29udGV4dCB7Ci0gdW5zaWduZWQgaW50IHNjX3JlZ21hc2s7Ci0gdW5zaWduZWQgaW50IHNjX3N0YXR1czsKKyAgdW5zaWduZWQgaW50IHNjX3JlZ21hc2s7CisgIHVuc2lnbmVkIGludCBzY19zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19wYzsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc2NfcmVnc1szMl07Ci0gdW5zaWduZWQgbG9uZyBsb25nIHNjX2ZwcmVnc1szMl07Ci0gdW5zaWduZWQgaW50IHNjX2FjeDsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHNjX3BjOworICB1bnNpZ25lZCBsb25nIGxvbmcgc2NfcmVnc1szMl07CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19mcHJlZ3NbMzJdOworICB1bnNpZ25lZCBpbnQgc2NfYWN4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2NfZnBjX2NzcjsKLSB1bnNpZ25lZCBpbnQgc2NfZnBjX2VpcjsKLSB1bnNpZ25lZCBpbnQgc2NfdXNlZF9tYXRoOwotIHVuc2lnbmVkIGludCBzY19kc3A7CisgIHVuc2lnbmVkIGludCBzY19mcGNfY3NyOworICB1bnNpZ25lZCBpbnQgc2NfZnBjX2VpcjsKKyAgdW5zaWduZWQgaW50IHNjX3VzZWRfbWF0aDsKKyAgdW5zaWduZWQgaW50IHNjX2RzcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBsb25nIHNjX21kaGk7Ci0gdW5zaWduZWQgbG9uZyBsb25nIHNjX21kbG87Ci0gdW5zaWduZWQgbG9uZyBzY19oaTE7Ci0gdW5zaWduZWQgbG9uZyBzY19sbzE7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19tZGhpOworICB1bnNpZ25lZCBsb25nIGxvbmcgc2NfbWRsbzsKKyAgdW5zaWduZWQgbG9uZyBzY19oaTE7CisgIHVuc2lnbmVkIGxvbmcgc2NfbG8xOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHNjX2hpMjsKLSB1bnNpZ25lZCBsb25nIHNjX2xvMjsKLSB1bnNpZ25lZCBsb25nIHNjX2hpMzsKLSB1bnNpZ25lZCBsb25nIHNjX2xvMzsKKyAgdW5zaWduZWQgbG9uZyBzY19oaTI7CisgIHVuc2lnbmVkIGxvbmcgc2NfbG8yOworICB1bnNpZ25lZCBsb25nIHNjX2hpMzsKKyAgdW5zaWduZWQgbG9uZyBzY19sbzM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpAQCAtNTIsMjQgKzUyLDI0IEBACiAjaW5jbHVkZSA8bGludXgvcG9zaXhfdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2lnY29udGV4dCB7Ci0gX191NjQgc2NfcmVnc1szMl07Ci0gX191NjQgc2NfZnByZWdzWzMyXTsKLSBfX3U2NCBzY19tZGhpOworICBfX3U2NCBzY19yZWdzWzMyXTsKKyAgX191NjQgc2NfZnByZWdzWzMyXTsKKyAgX191NjQgc2NfbWRoaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2NfaGkxOwotIF9fdTY0IHNjX2hpMjsKLSBfX3U2NCBzY19oaTM7Ci0gX191NjQgc2NfbWRsbzsKKyAgX191NjQgc2NfaGkxOworICBfX3U2NCBzY19oaTI7CisgIF9fdTY0IHNjX2hpMzsKKyAgX191NjQgc2NfbWRsbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2NfbG8xOwotIF9fdTY0IHNjX2xvMjsKLSBfX3U2NCBzY19sbzM7Ci0gX191NjQgc2NfcGM7CisgIF9fdTY0IHNjX2xvMTsKKyAgX191NjQgc2NfbG8yOworICBfX3U2NCBzY19sbzM7CisgIF9fdTY0IHNjX3BjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzY19mcGNfY3NyOwotIF9fdTMyIHNjX3VzZWRfbWF0aDsKLSBfX3UzMiBzY19kc3A7Ci0gX191MzIgc2NfcmVzZXJ2ZWQ7CisgIF9fdTMyIHNjX2ZwY19jc3I7CisgIF9fdTMyIHNjX3VzZWRfbWF0aDsKKyAgX191MzIgc2NfZHNwOworICBfX3UzMiBzY19yZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdpbmZvLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdpbmZvLmgKaW5kZXggNTk5Yzg3NS4uMmY5NWQxNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnaW5mby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ2luZm8uaApAQCAtMTgsNyArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX0FTTV9TSUdJTkZPX0gKICNkZWZpbmUgX1VBUElfQVNNX1NJR0lORk9fSAotI2RlZmluZSBfX0FSQ0hfU0lHRVZfUFJFQU1CTEVfU0laRSAoc2l6ZW9mKGxvbmcpICsgMipzaXplb2YoaW50KSkKKyNkZWZpbmUgX19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkUgKHNpemVvZihsb25nKSArIDIgKiBzaXplb2YoaW50KSkKICN1bmRlZiBfX0FSQ0hfU0lfVFJBUE5PCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIQVZFX0FSQ0hfU0lHSU5GT19UCkBAIC0yNyw3ICsyNyw3IEBACiAjaWYgX01JUFNfU1pMT05HID09IDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfU0lfUFJFQU1CTEVfU0laRSAoMyAqIHNpemVvZihpbnQpKQotI2VsaWYgX01JUFNfU1pMT05HID09IDY0CisjZWxpZiBfTUlQU19TWkxPTkc9PTY0CiAjZGVmaW5lIF9fQVJDSF9TSV9QUkVBTUJMRV9TSVpFICg0ICogc2l6ZW9mKGludCkpCiAjZWxzZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM3LDc4ICszNyw3OCBAQAogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3NpZ2luZm8uaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBzaWdpbmZvIHsKLSBpbnQgc2lfc2lnbm87Ci0gaW50IHNpX2NvZGU7Ci0gaW50IHNpX2Vycm5vOworICBpbnQgc2lfc2lnbm87CisgIGludCBzaV9jb2RlOworICBpbnQgc2lfZXJybm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBfX3BhZDBbU0lfTUFYX1NJWkUgLyBzaXplb2YoaW50KSAtIFNJX1BBRF9TSVpFIC0gM107Ci0gdW5pb24gewotIGludCBfcGFkW1NJX1BBRF9TSVpFXTsKLSBzdHJ1Y3QgeworICBpbnQgX19wYWQwW1NJX01BWF9TSVpFIC8gc2l6ZW9mKGludCkgLSBTSV9QQURfU0laRSAtIDNdOworICB1bmlvbiB7CisgICAgaW50IF9wYWRbU0lfUEFEX1NJWkVdOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBpZF90IF9waWQ7Ci0gX19BUkNIX1NJX1VJRF9UIF91aWQ7Ci0gfSBfa2lsbDsKLSBzdHJ1Y3QgeworICAgICAgcGlkX3QgX3BpZDsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgIH0gX2tpbGw7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGltZXJfdCBfdGlkOwotIGludCBfb3ZlcnJ1bjsKLSBjaGFyIF9wYWRbc2l6ZW9mKCBfX0FSQ0hfU0lfVUlEX1QpIC0gc2l6ZW9mKGludCldOwotIHNpZ3ZhbF90IF9zaWd2YWw7CisgICAgICB0aW1lcl90IF90aWQ7CisgICAgICBpbnQgX292ZXJydW47CisgICAgICBjaGFyIF9wYWRbc2l6ZW9mKF9fQVJDSF9TSV9VSURfVCkgLSBzaXplb2YoaW50KV07CisgICAgICBzaWd2YWxfdCBfc2lndmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX3N5c19wcml2YXRlOwotIH0gX3RpbWVyOwotIHN0cnVjdCB7Ci0gcGlkX3QgX3BpZDsKKyAgICAgIGludCBfc3lzX3ByaXZhdGU7CisgICAgfSBfdGltZXI7CisgICAgc3RydWN0IHsKKyAgICAgIHBpZF90IF9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQVJDSF9TSV9VSURfVCBfdWlkOwotIHNpZ3ZhbF90IF9zaWd2YWw7Ci0gfSBfcnQ7Ci0gc3RydWN0IHsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgICAgc2lndmFsX3QgX3NpZ3ZhbDsKKyAgICB9IF9ydDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBwaWRfdCBfcGlkOwotIF9fQVJDSF9TSV9VSURfVCBfdWlkOwotIGludCBfc3RhdHVzOwotIGNsb2NrX3QgX3V0aW1lOworICAgICAgcGlkX3QgX3BpZDsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgICAgaW50IF9zdGF0dXM7CisgICAgICBjbG9ja190IF91dGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2xvY2tfdCBfc3RpbWU7Ci0gfSBfc2lnY2hsZDsKLSBzdHJ1Y3QgewotIHBpZF90IF9waWQ7CisgICAgICBjbG9ja190IF9zdGltZTsKKyAgICB9IF9zaWdjaGxkOworICAgIHN0cnVjdCB7CisgICAgICBwaWRfdCBfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjbG9ja190IF91dGltZTsKLSBpbnQgX3N0YXR1czsKLSBjbG9ja190IF9zdGltZTsKLSB9IF9pcml4X3NpZ2NobGQ7CisgICAgICBjbG9ja190IF91dGltZTsKKyAgICAgIGludCBfc3RhdHVzOworICAgICAgY2xvY2tfdCBfc3RpbWU7CisgICAgfSBfaXJpeF9zaWdjaGxkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHZvaWQgX191c2VyICpfYWRkcjsKKyAgICBzdHJ1Y3QgeworICAgICAgdm9pZCBfX3VzZXIgKiBfYWRkcjsKICNpZmRlZiBfX0FSQ0hfU0lfVFJBUE5PCi0gaW50IF90cmFwbm87CisgICAgICBpbnQgX3RyYXBubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBzaG9ydCBfYWRkcl9sc2I7Ci0gfSBfc2lnZmF1bHQ7Ci0gc3RydWN0IHsKKyAgICAgIHNob3J0IF9hZGRyX2xzYjsKKyAgICB9IF9zaWdmYXVsdDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0FSQ0hfU0lfQkFORF9UIF9iYW5kOwotIGludCBfZmQ7Ci0gfSBfc2lncG9sbDsKLSBzdHJ1Y3QgeworICAgICAgX19BUkNIX1NJX0JBTkRfVCBfYmFuZDsKKyAgICAgIGludCBfZmQ7CisgICAgfSBfc2lncG9sbDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqX2NhbGxfYWRkcjsKLSBpbnQgX3N5c2NhbGw7Ci0gdW5zaWduZWQgaW50IF9hcmNoOwotIH0gX3NpZ3N5czsKKyAgICAgIHZvaWQgX191c2VyICogX2NhbGxfYWRkcjsKKyAgICAgIGludCBfc3lzY2FsbDsKKyAgICAgIHVuc2lnbmVkIGludCBfYXJjaDsKKyAgICB9IF9zaWdzeXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gX3NpZmllbGRzOworICB9IF9zaWZpZWxkczsKIH0gc2lnaW5mb190OwogI3VuZGVmIFNJX0FTWU5DSU8KICN1bmRlZiBTSV9USU1FUgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICN1bmRlZiBTSV9NRVNHUQotI2RlZmluZSBTSV9BU1lOQ0lPIC0yCi0jZGVmaW5lIFNJX1RJTUVSIF9fU0lfQ09ERShfX1NJX1RJTUVSLCAtMykKLSNkZWZpbmUgU0lfTUVTR1EgX19TSV9DT0RFKF9fU0lfTUVTR1EsIC00KQorI2RlZmluZSBTSV9BU1lOQ0lPIC0gMgorI2RlZmluZSBTSV9USU1FUiBfX1NJX0NPREUoX19TSV9USU1FUiwgLSAzKQorI2RlZmluZSBTSV9NRVNHUSBfX1NJX0NPREUoX19TSV9NRVNHUSwgLSA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnbmFsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWduYWwuaAppbmRleCBiNzc0YTY2Li5iYTg4YjcwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWduYWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWduYWwuaApAQCAtMjQsNyArMjQsNyBAQAogI2RlZmluZSBfTlNJR19CUFcgKHNpemVvZih1bnNpZ25lZCBsb25nKSAqIDgpCiAjZGVmaW5lIF9OU0lHX1dPUkRTIChfS0VSTkVMX19OU0lHIC8gX05TSUdfQlBXKQogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgc2lnW19OU0lHX1dPUkRTXTsKKyAgdW5zaWduZWQgbG9uZyBzaWdbX05TSUdfV09SRFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc2lnc2V0X3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgb2xkX3NpZ3NldF90OwpAQCAtOTMsMTYgKzkzLDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3NpZ25hbC1kZWZzLmg+CiBzdHJ1Y3Qgc2lnYWN0aW9uIHsKLSB1bnNpZ25lZCBpbnQgc2FfZmxhZ3M7Ci0gX19zaWdoYW5kbGVyX3Qgc2FfaGFuZGxlcjsKKyAgdW5zaWduZWQgaW50IHNhX2ZsYWdzOworICBfX3NpZ2hhbmRsZXJfdCBzYV9oYW5kbGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaWdzZXRfdCBzYV9tYXNrOworICBzaWdzZXRfdCBzYV9tYXNrOwogfTsKIHR5cGVkZWYgc3RydWN0IHNpZ2FsdHN0YWNrIHsKLSB2b2lkIF9fdXNlciAqc3Nfc3A7CisgIHZvaWQgX191c2VyICogc3Nfc3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBzc19zaXplOwotIGludCBzc19mbGFnczsKKyAgc2l6ZV90IHNzX3NpemU7CisgIGludCBzc19mbGFnczsKIH0gc3RhY2tfdDsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXQuaAppbmRleCBhNzFlZWNiLi5jZjA1ZTVjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3RhdC5oCkBAIC0yMyw4NiArMjMsODYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWYgX01JUFNfU0lNID09IF9NSVBTX1NJTV9BQkkzMiB8fCBfTUlQU19TSU0gPT0gX01JUFNfU0lNX05BQkkzMgogc3RydWN0IHN0YXQgewotIHVuc2lnbmVkIHN0X2RldjsKLSBsb25nIHN0X3BhZDFbM107CisgIHVuc2lnbmVkIHN0X2RldjsKKyAgbG9uZyBzdF9wYWQxWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbm9fdCBzdF9pbm87Ci0gbW9kZV90IHN0X21vZGU7Ci0gX191MzIgc3Rfbmxpbms7Ci0gdWlkX3Qgc3RfdWlkOworICBpbm9fdCBzdF9pbm87CisgIG1vZGVfdCBzdF9tb2RlOworICBfX3UzMiBzdF9ubGluazsKKyAgdWlkX3Qgc3RfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBnaWRfdCBzdF9naWQ7Ci0gdW5zaWduZWQgc3RfcmRldjsKLSBsb25nIHN0X3BhZDJbMl07Ci0gX19rZXJuZWxfb2ZmX3Qgc3Rfc2l6ZTsKKyAgZ2lkX3Qgc3RfZ2lkOworICB1bnNpZ25lZCBzdF9yZGV2OworICBsb25nIHN0X3BhZDJbMl07CisgIF9fa2VybmVsX29mZl90IHN0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgc3RfcGFkMzsKLSB0aW1lX3Qgc3RfYXRpbWU7Ci0gbG9uZyBzdF9hdGltZV9uc2VjOwotIHRpbWVfdCBzdF9tdGltZTsKKyAgbG9uZyBzdF9wYWQzOworICB0aW1lX3Qgc3RfYXRpbWU7CisgIGxvbmcgc3RfYXRpbWVfbnNlYzsKKyAgdGltZV90IHN0X210aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHN0X210aW1lX25zZWM7Ci0gdGltZV90IHN0X2N0aW1lOwotIGxvbmcgc3RfY3RpbWVfbnNlYzsKLSBsb25nIHN0X2Jsa3NpemU7CisgIGxvbmcgc3RfbXRpbWVfbnNlYzsKKyAgdGltZV90IHN0X2N0aW1lOworICBsb25nIHN0X2N0aW1lX25zZWM7CisgIGxvbmcgc3RfYmxrc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBzdF9ibG9ja3M7Ci0gbG9uZyBzdF9wYWQ0WzE0XTsKKyAgbG9uZyBzdF9ibG9ja3M7CisgIGxvbmcgc3RfcGFkNFsxNF07CiB9Owogc3RydWN0IHN0YXQ2NCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGxvbmcgc3RfcGFkMFszXTsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOwotIG1vZGVfdCBzdF9tb2RlOworICB1bnNpZ25lZCBsb25nIHN0X2RldjsKKyAgdW5zaWduZWQgbG9uZyBzdF9wYWQwWzNdOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOworICBtb2RlX3Qgc3RfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3Rfbmxpbms7Ci0gdWlkX3Qgc3RfdWlkOwotIGdpZF90IHN0X2dpZDsKLSB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CisgIF9fdTMyIHN0X25saW5rOworICB1aWRfdCBzdF91aWQ7CisgIGdpZF90IHN0X2dpZDsKKyAgdW5zaWduZWQgbG9uZyBzdF9yZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X3BhZDFbM107Ci0gbG9uZyBsb25nIHN0X3NpemU7Ci0gdGltZV90IHN0X2F0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9wYWQxWzNdOworICBsb25nIGxvbmcgc3Rfc2l6ZTsKKyAgdGltZV90IHN0X2F0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRpbWVfdCBzdF9tdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7Ci0gdGltZV90IHN0X2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKKyAgdGltZV90IHN0X210aW1lOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7CisgIHRpbWVfdCBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9wYWQyOwotIGxvbmcgbG9uZyBzdF9ibG9ja3M7CisgIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9wYWQyOworICBsb25nIGxvbmcgc3RfYmxvY2tzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTY0CiBzdHJ1Y3Qgc3RhdCB7Ci0gdW5zaWduZWQgaW50IHN0X2RldjsKKyAgdW5zaWduZWQgaW50IHN0X2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X3BhZDBbM107Ci0gdW5zaWduZWQgbG9uZyBzdF9pbm87Ci0gbW9kZV90IHN0X21vZGU7Ci0gX191MzIgc3Rfbmxpbms7CisgIHVuc2lnbmVkIGludCBzdF9wYWQwWzNdOworICB1bnNpZ25lZCBsb25nIHN0X2lubzsKKyAgbW9kZV90IHN0X21vZGU7CisgIF9fdTMyIHN0X25saW5rOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aWRfdCBzdF91aWQ7Ci0gZ2lkX3Qgc3RfZ2lkOwotIHVuc2lnbmVkIGludCBzdF9yZGV2OwotIHVuc2lnbmVkIGludCBzdF9wYWQxWzNdOworICB1aWRfdCBzdF91aWQ7CisgIGdpZF90IHN0X2dpZDsKKyAgdW5zaWduZWQgaW50IHN0X3JkZXY7CisgIHVuc2lnbmVkIGludCBzdF9wYWQxWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9vZmZfdCBzdF9zaXplOwotIHVuc2lnbmVkIGludCBzdF9hdGltZTsKLSB1bnNpZ25lZCBpbnQgc3RfYXRpbWVfbnNlYzsKLSB1bnNpZ25lZCBpbnQgc3RfbXRpbWU7CisgIF9fa2VybmVsX29mZl90IHN0X3NpemU7CisgIHVuc2lnbmVkIGludCBzdF9hdGltZTsKKyAgdW5zaWduZWQgaW50IHN0X2F0aW1lX25zZWM7CisgIHVuc2lnbmVkIGludCBzdF9tdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X210aW1lX25zZWM7Ci0gdW5zaWduZWQgaW50IHN0X2N0aW1lOwotIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOwotIHVuc2lnbmVkIGludCBzdF9ibGtzaXplOworICB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgaW50IHN0X2N0aW1lOworICB1bnNpZ25lZCBpbnQgc3RfY3RpbWVfbnNlYzsKKyAgdW5zaWduZWQgaW50IHN0X2Jsa3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdF9wYWQyOwotIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOworICB1bnNpZ25lZCBpbnQgc3RfcGFkMjsKKyAgdW5zaWduZWQgbG9uZyBzdF9ibG9ja3M7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3RhdGZzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0ZnMuaAppbmRleCAzOTBiNzUxLi4zNmNjM2Q1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0ZnMuaApAQCAtMjIsODEgKzIyLDgxIEBACiAjaW5jbHVkZSA8YXNtL3NnaWRlZnMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3RhdGZzIHsKLSBsb25nIGZfdHlwZTsKKyAgbG9uZyBmX3R5cGU7CiAjZGVmaW5lIGZfZnN0eXAgZl90eXBlCi0gbG9uZyBmX2JzaXplOworICBsb25nIGZfYnNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZl9mcnNpemU7Ci0gbG9uZyBmX2Jsb2NrczsKLSBsb25nIGZfYmZyZWU7Ci0gbG9uZyBmX2ZpbGVzOworICBsb25nIGZfZnJzaXplOworICBsb25nIGZfYmxvY2tzOworICBsb25nIGZfYmZyZWU7CisgIGxvbmcgZl9maWxlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBmX2ZmcmVlOwotIGxvbmcgZl9iYXZhaWw7Ci0gX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKLSBsb25nIGZfbmFtZWxlbjsKKyAgbG9uZyBmX2ZmcmVlOworICBsb25nIGZfYmF2YWlsOworICBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOworICBsb25nIGZfbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBmX2ZsYWdzOwotIGxvbmcgZl9zcGFyZVs1XTsKKyAgbG9uZyBmX2ZsYWdzOworICBsb25nIGZfc3BhcmVbNV07CiB9OwogI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fQUJJMzIgfHwgX01JUFNfU0lNID09IF9NSVBTX1NJTV9OQUJJMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3RhdGZzNjQgewotIF9fdTMyIGZfdHlwZTsKLSBfX3UzMiBmX2JzaXplOwotIF9fdTMyIGZfZnJzaXplOworICBfX3UzMiBmX3R5cGU7CisgIF9fdTMyIGZfYnNpemU7CisgIF9fdTMyIGZfZnJzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX3BhZDsKLSBfX3U2NCBmX2Jsb2NrczsKLSBfX3U2NCBmX2JmcmVlOwotIF9fdTY0IGZfZmlsZXM7CisgIF9fdTMyIF9fcGFkOworICBfX3U2NCBmX2Jsb2NrczsKKyAgX191NjQgZl9iZnJlZTsKKyAgX191NjQgZl9maWxlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZl9mZnJlZTsKLSBfX3U2NCBmX2JhdmFpbDsKLSBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOwotIF9fdTMyIGZfbmFtZWxlbjsKKyAgX191NjQgZl9mZnJlZTsKKyAgX191NjQgZl9iYXZhaWw7CisgIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIF9fdTMyIGZfbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZl9mbGFnczsKLSBfX3UzMiBmX3NwYXJlWzVdOworICBfX3UzMiBmX2ZsYWdzOworICBfX3UzMiBmX3NwYXJlWzVdOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTY0CiBzdHJ1Y3Qgc3RhdGZzNjQgewotIGxvbmcgZl90eXBlOwotIGxvbmcgZl9ic2l6ZTsKKyAgbG9uZyBmX3R5cGU7CisgIGxvbmcgZl9ic2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBmX2Zyc2l6ZTsKLSBsb25nIGZfYmxvY2tzOwotIGxvbmcgZl9iZnJlZTsKLSBsb25nIGZfZmlsZXM7CisgIGxvbmcgZl9mcnNpemU7CisgIGxvbmcgZl9ibG9ja3M7CisgIGxvbmcgZl9iZnJlZTsKKyAgbG9uZyBmX2ZpbGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGZfZmZyZWU7Ci0gbG9uZyBmX2JhdmFpbDsKLSBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOwotIGxvbmcgZl9uYW1lbGVuOworICBsb25nIGZfZmZyZWU7CisgIGxvbmcgZl9iYXZhaWw7CisgIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIGxvbmcgZl9uYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGZfZmxhZ3M7Ci0gbG9uZyBmX3NwYXJlWzVdOworICBsb25nIGZfZmxhZ3M7CisgIGxvbmcgZl9zcGFyZVs1XTsKIH07CiBzdHJ1Y3QgY29tcGF0X3N0YXRmczY0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZl90eXBlOwotIF9fdTMyIGZfYnNpemU7Ci0gX191MzIgZl9mcnNpemU7Ci0gX191MzIgX19wYWQ7CisgIF9fdTMyIGZfdHlwZTsKKyAgX191MzIgZl9ic2l6ZTsKKyAgX191MzIgZl9mcnNpemU7CisgIF9fdTMyIF9fcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmX2Jsb2NrczsKLSBfX3U2NCBmX2JmcmVlOwotIF9fdTY0IGZfZmlsZXM7Ci0gX191NjQgZl9mZnJlZTsKKyAgX191NjQgZl9ibG9ja3M7CisgIF9fdTY0IGZfYmZyZWU7CisgIF9fdTY0IGZfZmlsZXM7CisgIF9fdTY0IGZfZmZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZfYmF2YWlsOwotIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7Ci0gX191MzIgZl9uYW1lbGVuOwotIF9fdTMyIGZfZmxhZ3M7CisgIF9fdTY0IGZfYmF2YWlsOworICBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOworICBfX3UzMiBmX25hbWVsZW47CisgIF9fdTMyIGZfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZfc3BhcmVbNV07CisgIF9fdTMyIGZfc3BhcmVbNV07CiB9OwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N3YWIuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N3YWIuaAppbmRleCA0MTY2MGQwLi4wNjI5ZDM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zd2FiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3dhYi5oCkBAIC0yMiw3ICsyMiw3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fU1dBQl82NF9USFJVXzMyX18KLSNpZiBkZWZpbmVkKF9fbWlwc19pc2FfcmV2KSAmJiBfX21pcHNfaXNhX3JldiA+PSAyCisjaWYgZGVmaW5lZChfX21pcHNfaXNhX3JldikgJiYgX19taXBzX2lzYV9yZXYgPj0gMiB8fCBkZWZpbmVkKF9NSVBTX0FSQ0hfTE9PTkdTT04zQSkKICNkZWZpbmUgX19hcmNoX3N3YWIxNiBfX2FyY2hfc3dhYjE2CiAjZGVmaW5lIF9fYXJjaF9zd2FiMzIgX19hcmNoX3N3YWIzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Rlcm1iaXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90ZXJtYml0cy5oCmluZGV4IDU2Y2FiMjEuLmY4Zjg2MTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Rlcm1iaXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWJpdHMuaApAQCAtMjYsMzggKzI2LDM4IEBACiAjZGVmaW5lIE5DQ1MgMjMKIHN0cnVjdCB0ZXJtaW9zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNmbGFnX3QgY19pZmxhZzsKLSB0Y2ZsYWdfdCBjX29mbGFnOwotIHRjZmxhZ190IGNfY2ZsYWc7Ci0gdGNmbGFnX3QgY19sZmxhZzsKKyAgdGNmbGFnX3QgY19pZmxhZzsKKyAgdGNmbGFnX3QgY19vZmxhZzsKKyAgdGNmbGFnX3QgY19jZmxhZzsKKyAgdGNmbGFnX3QgY19sZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2NfdCBjX2xpbmU7Ci0gY2NfdCBjX2NjW05DQ1NdOworICBjY190IGNfbGluZTsKKyAgY2NfdCBjX2NjW05DQ1NdOwogfTsKIHN0cnVjdCB0ZXJtaW9zMiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRjZmxhZ190IGNfaWZsYWc7Ci0gdGNmbGFnX3QgY19vZmxhZzsKLSB0Y2ZsYWdfdCBjX2NmbGFnOwotIHRjZmxhZ190IGNfbGZsYWc7CisgIHRjZmxhZ190IGNfaWZsYWc7CisgIHRjZmxhZ190IGNfb2ZsYWc7CisgIHRjZmxhZ190IGNfY2ZsYWc7CisgIHRjZmxhZ190IGNfbGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNjX3QgY19saW5lOwotIGNjX3QgY19jY1tOQ0NTXTsKLSBzcGVlZF90IGNfaXNwZWVkOwotIHNwZWVkX3QgY19vc3BlZWQ7CisgIGNjX3QgY19saW5lOworICBjY190IGNfY2NbTkNDU107CisgIHNwZWVkX3QgY19pc3BlZWQ7CisgIHNwZWVkX3QgY19vc3BlZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdGVybWlvcyB7Ci0gdGNmbGFnX3QgY19pZmxhZzsKLSB0Y2ZsYWdfdCBjX29mbGFnOworICB0Y2ZsYWdfdCBjX2lmbGFnOworICB0Y2ZsYWdfdCBjX29mbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Y2ZsYWdfdCBjX2NmbGFnOwotIHRjZmxhZ190IGNfbGZsYWc7Ci0gY2NfdCBjX2xpbmU7Ci0gY2NfdCBjX2NjW05DQ1NdOworICB0Y2ZsYWdfdCBjX2NmbGFnOworICB0Y2ZsYWdfdCBjX2xmbGFnOworICBjY190IGNfbGluZTsKKyAgY2NfdCBjX2NjW05DQ1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzcGVlZF90IGNfaXNwZWVkOwotIHNwZWVkX3QgY19vc3BlZWQ7CisgIHNwZWVkX3QgY19pc3BlZWQ7CisgIHNwZWVkX3QgY19vc3BlZWQ7CiB9OwogI2RlZmluZSBWSU5UUiAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWlvcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWlvcy5oCmluZGV4IDE2ZDgyMmEuLjUxNzQyNTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Rlcm1pb3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90ZXJtaW9zLmgKQEAgLTIzLDUxICsyMyw1MSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxhc20vaW9jdGxzLmg+CiBzdHJ1Y3Qgc2d0dHliIHsKLSBjaGFyIHNnX2lzcGVlZDsKLSBjaGFyIHNnX29zcGVlZDsKKyAgY2hhciBzZ19pc3BlZWQ7CisgIGNoYXIgc2dfb3NwZWVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNnX2VyYXNlOwotIGNoYXIgc2dfa2lsbDsKLSBpbnQgc2dfZmxhZ3M7CisgIGNoYXIgc2dfZXJhc2U7CisgIGNoYXIgc2dfa2lsbDsKKyAgaW50IHNnX2ZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNoYXJzIHsKLSBjaGFyIHRfaW50cmM7Ci0gY2hhciB0X3F1aXRjOwotIGNoYXIgdF9zdGFydGM7CisgIGNoYXIgdF9pbnRyYzsKKyAgY2hhciB0X3F1aXRjOworICBjaGFyIHRfc3RhcnRjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHRfc3RvcGM7Ci0gY2hhciB0X2VvZmM7Ci0gY2hhciB0X2Jya2M7CisgIGNoYXIgdF9zdG9wYzsKKyAgY2hhciB0X2VvZmM7CisgIGNoYXIgdF9icmtjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbHRjaGFycyB7Ci0gY2hhciB0X3N1c3BjOwotIGNoYXIgdF9kc3VzcGM7Ci0gY2hhciB0X3Jwcm50YzsKKyAgY2hhciB0X3N1c3BjOworICBjaGFyIHRfZHN1c3BjOworICBjaGFyIHRfcnBybnRjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHRfZmx1c2hjOwotIGNoYXIgdF93ZXJhc2M7Ci0gY2hhciB0X2xuZXh0YzsKKyAgY2hhciB0X2ZsdXNoYzsKKyAgY2hhciB0X3dlcmFzYzsKKyAgY2hhciB0X2xuZXh0YzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHdpbnNpemUgewotIHVuc2lnbmVkIHNob3J0IHdzX3JvdzsKLSB1bnNpZ25lZCBzaG9ydCB3c19jb2w7Ci0gdW5zaWduZWQgc2hvcnQgd3NfeHBpeGVsOworICB1bnNpZ25lZCBzaG9ydCB3c19yb3c7CisgIHVuc2lnbmVkIHNob3J0IHdzX2NvbDsKKyAgdW5zaWduZWQgc2hvcnQgd3NfeHBpeGVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB3c195cGl4ZWw7CisgIHVuc2lnbmVkIHNob3J0IHdzX3lwaXhlbDsKIH07CiAjZGVmaW5lIE5DQyA4CiBzdHJ1Y3QgdGVybWlvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgY19pZmxhZzsKLSB1bnNpZ25lZCBzaG9ydCBjX29mbGFnOwotIHVuc2lnbmVkIHNob3J0IGNfY2ZsYWc7Ci0gdW5zaWduZWQgc2hvcnQgY19sZmxhZzsKKyAgdW5zaWduZWQgc2hvcnQgY19pZmxhZzsKKyAgdW5zaWduZWQgc2hvcnQgY19vZmxhZzsKKyAgdW5zaWduZWQgc2hvcnQgY19jZmxhZzsKKyAgdW5zaWduZWQgc2hvcnQgY19sZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBjX2xpbmU7Ci0gdW5zaWduZWQgY2hhciBjX2NjW05DQ1NdOworICBjaGFyIGNfbGluZTsKKyAgdW5zaWduZWQgY2hhciBjX2NjW05DQ1NdOwogfTsKICNkZWZpbmUgVElPQ01fTEUgMHgwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90eXBlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdHlwZXMuaAppbmRleCA0NWZlYTZjLi45ZWY3YjdjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90eXBlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3R5cGVzLmgKQEAgLTE4LDExICsxOCw2IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfQVNNX1RZUEVTX0gKICNkZWZpbmUgX1VBUElfQVNNX1RZUEVTX0gKLSNpZiBfTUlQU19TWkxPTkcgPT0gNjQKLSNpbmNsdWRlIDxhc20tZ2VuZXJpYy9pbnQtbDY0Lmg+Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2Vsc2UKICNpbmNsdWRlIDxhc20tZ2VuZXJpYy9pbnQtbGw2NC5oPgogI2VuZGlmCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS91bmlzdGQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3VuaXN0ZC5oCmluZGV4IDM3YzNkYTEuLjA0YTQ1YmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3VuaXN0ZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3VuaXN0ZC5oCkBAIC00NTksODA1ICs0NTksODIzIEBACiAjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIChfX05SX0xpbnV4ICsgMzQ4KQogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgKF9fTlJfTGludXggKyAzNDkpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAoX19OUl9MaW51eCArIDM1MCkKLSNkZWZpbmUgX19OUl9MaW51eF9zeXNjYWxscyAzNTAKKyNkZWZpbmUgX19OUl9yZW5hbWVhdDIgKF9fTlJfTGludXggKyAzNTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NlY2NvbXAgKF9fTlJfTGludXggKyAzNTIpCisjZGVmaW5lIF9fTlJfZ2V0cmFuZG9tIChfX05SX0xpbnV4ICsgMzUzKQorI2RlZmluZSBfX05SX21lbWZkX2NyZWF0ZSAoX19OUl9MaW51eCArIDM1NCkKKyNkZWZpbmUgX19OUl9icGYgKF9fTlJfTGludXggKyAzNTUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX0xpbnV4X3N5c2NhbGxzIDM1NQogI2VuZGlmCiAjZGVmaW5lIF9fTlJfTzMyX0xpbnV4IDQwMDAKLSNkZWZpbmUgX19OUl9PMzJfTGludXhfc3lzY2FsbHMgMzUwCi0jaWYgX01JUFNfU0lNID09IF9NSVBTX1NJTV9BQkk2NAorI2RlZmluZSBfX05SX08zMl9MaW51eF9zeXNjYWxscyAzNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaWYgX01JUFNfU0lNID09IF9NSVBTX1NJTV9BQkk2NAogI2RlZmluZSBfX05SX0xpbnV4IDUwMDAKICNkZWZpbmUgX19OUl9yZWFkIChfX05SX0xpbnV4ICsgMCkKICNkZWZpbmUgX19OUl93cml0ZSAoX19OUl9MaW51eCArIDEpCi0jZGVmaW5lIF9fTlJfb3BlbiAoX19OUl9MaW51eCArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX29wZW4gKF9fTlJfTGludXggKyAyKQogI2RlZmluZSBfX05SX2Nsb3NlIChfX05SX0xpbnV4ICsgMykKICNkZWZpbmUgX19OUl9zdGF0IChfX05SX0xpbnV4ICsgNCkKICNkZWZpbmUgX19OUl9mc3RhdCAoX19OUl9MaW51eCArIDUpCi0jZGVmaW5lIF9fTlJfbHN0YXQgKF9fTlJfTGludXggKyA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9sc3RhdCAoX19OUl9MaW51eCArIDYpCiAjZGVmaW5lIF9fTlJfcG9sbCAoX19OUl9MaW51eCArIDcpCiAjZGVmaW5lIF9fTlJfbHNlZWsgKF9fTlJfTGludXggKyA4KQogI2RlZmluZSBfX05SX21tYXAgKF9fTlJfTGludXggKyA5KQotI2RlZmluZSBfX05SX21wcm90ZWN0IChfX05SX0xpbnV4ICsgMTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21wcm90ZWN0IChfX05SX0xpbnV4ICsgMTApCiAjZGVmaW5lIF9fTlJfbXVubWFwIChfX05SX0xpbnV4ICsgMTEpCiAjZGVmaW5lIF9fTlJfYnJrIChfX05SX0xpbnV4ICsgMTIpCiAjZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uIChfX05SX0xpbnV4ICsgMTMpCi0jZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgKF9fTlJfTGludXggKyAxNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgKF9fTlJfTGludXggKyAxNCkKICNkZWZpbmUgX19OUl9pb2N0bCAoX19OUl9MaW51eCArIDE1KQogI2RlZmluZSBfX05SX3ByZWFkNjQgKF9fTlJfTGludXggKyAxNikKICNkZWZpbmUgX19OUl9wd3JpdGU2NCAoX19OUl9MaW51eCArIDE3KQotI2RlZmluZSBfX05SX3JlYWR2IChfX05SX0xpbnV4ICsgMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlYWR2IChfX05SX0xpbnV4ICsgMTgpCiAjZGVmaW5lIF9fTlJfd3JpdGV2IChfX05SX0xpbnV4ICsgMTkpCiAjZGVmaW5lIF9fTlJfYWNjZXNzIChfX05SX0xpbnV4ICsgMjApCiAjZGVmaW5lIF9fTlJfcGlwZSAoX19OUl9MaW51eCArIDIxKQotI2RlZmluZSBfX05SX19uZXdzZWxlY3QgKF9fTlJfTGludXggKyAyMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAoX19OUl9MaW51eCArIDIyKQogI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkIChfX05SX0xpbnV4ICsgMjMpCiAjZGVmaW5lIF9fTlJfbXJlbWFwIChfX05SX0xpbnV4ICsgMjQpCiAjZGVmaW5lIF9fTlJfbXN5bmMgKF9fTlJfTGludXggKyAyNSkKLSNkZWZpbmUgX19OUl9taW5jb3JlIChfX05SX0xpbnV4ICsgMjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21pbmNvcmUgKF9fTlJfTGludXggKyAyNikKICNkZWZpbmUgX19OUl9tYWR2aXNlIChfX05SX0xpbnV4ICsgMjcpCiAjZGVmaW5lIF9fTlJfc2htZ2V0IChfX05SX0xpbnV4ICsgMjgpCiAjZGVmaW5lIF9fTlJfc2htYXQgKF9fTlJfTGludXggKyAyOSkKLSNkZWZpbmUgX19OUl9zaG1jdGwgKF9fTlJfTGludXggKyAzMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2htY3RsIChfX05SX0xpbnV4ICsgMzApCiAjZGVmaW5lIF9fTlJfZHVwIChfX05SX0xpbnV4ICsgMzEpCiAjZGVmaW5lIF9fTlJfZHVwMiAoX19OUl9MaW51eCArIDMyKQogI2RlZmluZSBfX05SX3BhdXNlIChfX05SX0xpbnV4ICsgMzMpCi0jZGVmaW5lIF9fTlJfbmFub3NsZWVwIChfX05SX0xpbnV4ICsgMzQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX25hbm9zbGVlcCAoX19OUl9MaW51eCArIDM0KQogI2RlZmluZSBfX05SX2dldGl0aW1lciAoX19OUl9MaW51eCArIDM1KQogI2RlZmluZSBfX05SX3NldGl0aW1lciAoX19OUl9MaW51eCArIDM2KQogI2RlZmluZSBfX05SX2FsYXJtIChfX05SX0xpbnV4ICsgMzcpCi0jZGVmaW5lIF9fTlJfZ2V0cGlkIChfX05SX0xpbnV4ICsgMzgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHBpZCAoX19OUl9MaW51eCArIDM4KQogI2RlZmluZSBfX05SX3NlbmRmaWxlIChfX05SX0xpbnV4ICsgMzkpCiAjZGVmaW5lIF9fTlJfc29ja2V0IChfX05SX0xpbnV4ICsgNDApCiAjZGVmaW5lIF9fTlJfY29ubmVjdCAoX19OUl9MaW51eCArIDQxKQotI2RlZmluZSBfX05SX2FjY2VwdCAoX19OUl9MaW51eCArIDQyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9hY2NlcHQgKF9fTlJfTGludXggKyA0MikKICNkZWZpbmUgX19OUl9zZW5kdG8gKF9fTlJfTGludXggKyA0MykKICNkZWZpbmUgX19OUl9yZWN2ZnJvbSAoX19OUl9MaW51eCArIDQ0KQogI2RlZmluZSBfX05SX3NlbmRtc2cgKF9fTlJfTGludXggKyA0NSkKLSNkZWZpbmUgX19OUl9yZWN2bXNnIChfX05SX0xpbnV4ICsgNDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlY3Ztc2cgKF9fTlJfTGludXggKyA0NikKICNkZWZpbmUgX19OUl9zaHV0ZG93biAoX19OUl9MaW51eCArIDQ3KQogI2RlZmluZSBfX05SX2JpbmQgKF9fTlJfTGludXggKyA0OCkKICNkZWZpbmUgX19OUl9saXN0ZW4gKF9fTlJfTGludXggKyA0OSkKLSNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAoX19OUl9MaW51eCArIDUwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAoX19OUl9MaW51eCArIDUwKQogI2RlZmluZSBfX05SX2dldHBlZXJuYW1lIChfX05SX0xpbnV4ICsgNTEpCiAjZGVmaW5lIF9fTlJfc29ja2V0cGFpciAoX19OUl9MaW51eCArIDUyKQogI2RlZmluZSBfX05SX3NldHNvY2tvcHQgKF9fTlJfTGludXggKyA1MykKLSNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0IChfX05SX0xpbnV4ICsgNTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHNvY2tvcHQgKF9fTlJfTGludXggKyA1NCkKICNkZWZpbmUgX19OUl9jbG9uZSAoX19OUl9MaW51eCArIDU1KQogI2RlZmluZSBfX05SX2ZvcmsgKF9fTlJfTGludXggKyA1NikKICNkZWZpbmUgX19OUl9leGVjdmUgKF9fTlJfTGludXggKyA1NykKLSNkZWZpbmUgX19OUl9leGl0IChfX05SX0xpbnV4ICsgNTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2V4aXQgKF9fTlJfTGludXggKyA1OCkKICNkZWZpbmUgX19OUl93YWl0NCAoX19OUl9MaW51eCArIDU5KQogI2RlZmluZSBfX05SX2tpbGwgKF9fTlJfTGludXggKyA2MCkKICNkZWZpbmUgX19OUl91bmFtZSAoX19OUl9MaW51eCArIDYxKQotI2RlZmluZSBfX05SX3NlbWdldCAoX19OUl9MaW51eCArIDYyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZW1nZXQgKF9fTlJfTGludXggKyA2MikKICNkZWZpbmUgX19OUl9zZW1vcCAoX19OUl9MaW51eCArIDYzKQogI2RlZmluZSBfX05SX3NlbWN0bCAoX19OUl9MaW51eCArIDY0KQogI2RlZmluZSBfX05SX3NobWR0IChfX05SX0xpbnV4ICsgNjUpCi0jZGVmaW5lIF9fTlJfbXNnZ2V0IChfX05SX0xpbnV4ICsgNjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21zZ2dldCAoX19OUl9MaW51eCArIDY2KQogI2RlZmluZSBfX05SX21zZ3NuZCAoX19OUl9MaW51eCArIDY3KQogI2RlZmluZSBfX05SX21zZ3JjdiAoX19OUl9MaW51eCArIDY4KQogI2RlZmluZSBfX05SX21zZ2N0bCAoX19OUl9MaW51eCArIDY5KQotI2RlZmluZSBfX05SX2ZjbnRsIChfX05SX0xpbnV4ICsgNzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2ZjbnRsIChfX05SX0xpbnV4ICsgNzApCiAjZGVmaW5lIF9fTlJfZmxvY2sgKF9fTlJfTGludXggKyA3MSkKICNkZWZpbmUgX19OUl9mc3luYyAoX19OUl9MaW51eCArIDcyKQogI2RlZmluZSBfX05SX2ZkYXRhc3luYyAoX19OUl9MaW51eCArIDczKQotI2RlZmluZSBfX05SX3RydW5jYXRlIChfX05SX0xpbnV4ICsgNzQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3RydW5jYXRlIChfX05SX0xpbnV4ICsgNzQpCiAjZGVmaW5lIF9fTlJfZnRydW5jYXRlIChfX05SX0xpbnV4ICsgNzUpCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHMgKF9fTlJfTGludXggKyA3NikKICNkZWZpbmUgX19OUl9nZXRjd2QgKF9fTlJfTGludXggKyA3NykKLSNkZWZpbmUgX19OUl9jaGRpciAoX19OUl9MaW51eCArIDc4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jaGRpciAoX19OUl9MaW51eCArIDc4KQogI2RlZmluZSBfX05SX2ZjaGRpciAoX19OUl9MaW51eCArIDc5KQogI2RlZmluZSBfX05SX3JlbmFtZSAoX19OUl9MaW51eCArIDgwKQogI2RlZmluZSBfX05SX21rZGlyIChfX05SX0xpbnV4ICsgODEpCi0jZGVmaW5lIF9fTlJfcm1kaXIgKF9fTlJfTGludXggKyA4MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcm1kaXIgKF9fTlJfTGludXggKyA4MikKICNkZWZpbmUgX19OUl9jcmVhdCAoX19OUl9MaW51eCArIDgzKQogI2RlZmluZSBfX05SX2xpbmsgKF9fTlJfTGludXggKyA4NCkKICNkZWZpbmUgX19OUl91bmxpbmsgKF9fTlJfTGludXggKyA4NSkKLSNkZWZpbmUgX19OUl9zeW1saW5rIChfX05SX0xpbnV4ICsgODYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3N5bWxpbmsgKF9fTlJfTGludXggKyA4NikKICNkZWZpbmUgX19OUl9yZWFkbGluayAoX19OUl9MaW51eCArIDg3KQogI2RlZmluZSBfX05SX2NobW9kIChfX05SX0xpbnV4ICsgODgpCiAjZGVmaW5lIF9fTlJfZmNobW9kIChfX05SX0xpbnV4ICsgODkpCi0jZGVmaW5lIF9fTlJfY2hvd24gKF9fTlJfTGludXggKyA5MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfY2hvd24gKF9fTlJfTGludXggKyA5MCkKICNkZWZpbmUgX19OUl9mY2hvd24gKF9fTlJfTGludXggKyA5MSkKICNkZWZpbmUgX19OUl9sY2hvd24gKF9fTlJfTGludXggKyA5MikKICNkZWZpbmUgX19OUl91bWFzayAoX19OUl9MaW51eCArIDkzKQotI2RlZmluZSBfX05SX2dldHRpbWVvZmRheSAoX19OUl9MaW51eCArIDk0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXR0aW1lb2ZkYXkgKF9fTlJfTGludXggKyA5NCkKICNkZWZpbmUgX19OUl9nZXRybGltaXQgKF9fTlJfTGludXggKyA5NSkKICNkZWZpbmUgX19OUl9nZXRydXNhZ2UgKF9fTlJfTGludXggKyA5NikKICNkZWZpbmUgX19OUl9zeXNpbmZvIChfX05SX0xpbnV4ICsgOTcpCi0jZGVmaW5lIF9fTlJfdGltZXMgKF9fTlJfTGludXggKyA5OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdGltZXMgKF9fTlJfTGludXggKyA5OCkKICNkZWZpbmUgX19OUl9wdHJhY2UgKF9fTlJfTGludXggKyA5OSkKICNkZWZpbmUgX19OUl9nZXR1aWQgKF9fTlJfTGludXggKyAxMDApCiAjZGVmaW5lIF9fTlJfc3lzbG9nIChfX05SX0xpbnV4ICsgMTAxKQotI2RlZmluZSBfX05SX2dldGdpZCAoX19OUl9MaW51eCArIDEwMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0Z2lkIChfX05SX0xpbnV4ICsgMTAyKQogI2RlZmluZSBfX05SX3NldHVpZCAoX19OUl9MaW51eCArIDEwMykKICNkZWZpbmUgX19OUl9zZXRnaWQgKF9fTlJfTGludXggKyAxMDQpCiAjZGVmaW5lIF9fTlJfZ2V0ZXVpZCAoX19OUl9MaW51eCArIDEwNSkKLSNkZWZpbmUgX19OUl9nZXRlZ2lkIChfX05SX0xpbnV4ICsgMTA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRlZ2lkIChfX05SX0xpbnV4ICsgMTA2KQogI2RlZmluZSBfX05SX3NldHBnaWQgKF9fTlJfTGludXggKyAxMDcpCiAjZGVmaW5lIF9fTlJfZ2V0cHBpZCAoX19OUl9MaW51eCArIDEwOCkKICNkZWZpbmUgX19OUl9nZXRwZ3JwIChfX05SX0xpbnV4ICsgMTA5KQotI2RlZmluZSBfX05SX3NldHNpZCAoX19OUl9MaW51eCArIDExMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0c2lkIChfX05SX0xpbnV4ICsgMTEwKQogI2RlZmluZSBfX05SX3NldHJldWlkIChfX05SX0xpbnV4ICsgMTExKQogI2RlZmluZSBfX05SX3NldHJlZ2lkIChfX05SX0xpbnV4ICsgMTEyKQogI2RlZmluZSBfX05SX2dldGdyb3VwcyAoX19OUl9MaW51eCArIDExMykKLSNkZWZpbmUgX19OUl9zZXRncm91cHMgKF9fTlJfTGludXggKyAxMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldGdyb3VwcyAoX19OUl9MaW51eCArIDExNCkKICNkZWZpbmUgX19OUl9zZXRyZXN1aWQgKF9fTlJfTGludXggKyAxMTUpCiAjZGVmaW5lIF9fTlJfZ2V0cmVzdWlkIChfX05SX0xpbnV4ICsgMTE2KQogI2RlZmluZSBfX05SX3NldHJlc2dpZCAoX19OUl9MaW51eCArIDExNykKLSNkZWZpbmUgX19OUl9nZXRyZXNnaWQgKF9fTlJfTGludXggKyAxMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHJlc2dpZCAoX19OUl9MaW51eCArIDExOCkKICNkZWZpbmUgX19OUl9nZXRwZ2lkIChfX05SX0xpbnV4ICsgMTE5KQogI2RlZmluZSBfX05SX3NldGZzdWlkIChfX05SX0xpbnV4ICsgMTIwKQogI2RlZmluZSBfX05SX3NldGZzZ2lkIChfX05SX0xpbnV4ICsgMTIxKQotI2RlZmluZSBfX05SX2dldHNpZCAoX19OUl9MaW51eCArIDEyMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0c2lkIChfX05SX0xpbnV4ICsgMTIyKQogI2RlZmluZSBfX05SX2NhcGdldCAoX19OUl9MaW51eCArIDEyMykKICNkZWZpbmUgX19OUl9jYXBzZXQgKF9fTlJfTGludXggKyAxMjQpCiAjZGVmaW5lIF9fTlJfcnRfc2lncGVuZGluZyAoX19OUl9MaW51eCArIDEyNSkKLSNkZWZpbmUgX19OUl9ydF9zaWd0aW1lZHdhaXQgKF9fTlJfTGludXggKyAxMjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAoX19OUl9MaW51eCArIDEyNikKICNkZWZpbmUgX19OUl9ydF9zaWdxdWV1ZWluZm8gKF9fTlJfTGludXggKyAxMjcpCiAjZGVmaW5lIF9fTlJfcnRfc2lnc3VzcGVuZCAoX19OUl9MaW51eCArIDEyOCkKICNkZWZpbmUgX19OUl9zaWdhbHRzdGFjayAoX19OUl9MaW51eCArIDEyOSkKLSNkZWZpbmUgX19OUl91dGltZSAoX19OUl9MaW51eCArIDEzMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdXRpbWUgKF9fTlJfTGludXggKyAxMzApCiAjZGVmaW5lIF9fTlJfbWtub2QgKF9fTlJfTGludXggKyAxMzEpCiAjZGVmaW5lIF9fTlJfcGVyc29uYWxpdHkgKF9fTlJfTGludXggKyAxMzIpCiAjZGVmaW5lIF9fTlJfdXN0YXQgKF9fTlJfTGludXggKyAxMzMpCi0jZGVmaW5lIF9fTlJfc3RhdGZzIChfX05SX0xpbnV4ICsgMTM0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zdGF0ZnMgKF9fTlJfTGludXggKyAxMzQpCiAjZGVmaW5lIF9fTlJfZnN0YXRmcyAoX19OUl9MaW51eCArIDEzNSkKICNkZWZpbmUgX19OUl9zeXNmcyAoX19OUl9MaW51eCArIDEzNikKICNkZWZpbmUgX19OUl9nZXRwcmlvcml0eSAoX19OUl9MaW51eCArIDEzNykKLSNkZWZpbmUgX19OUl9zZXRwcmlvcml0eSAoX19OUl9MaW51eCArIDEzOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgKF9fTlJfTGludXggKyAxMzgpCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0cGFyYW0gKF9fTlJfTGludXggKyAxMzkpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0cGFyYW0gKF9fTlJfTGludXggKyAxNDApCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyIChfX05SX0xpbnV4ICsgMTQxKQotI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAoX19OUl9MaW51eCArIDE0MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyIChfX05SX0xpbnV4ICsgMTQyKQogI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXggKF9fTlJfTGludXggKyAxNDMpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbiAoX19OUl9MaW51eCArIDE0NCkKICNkZWZpbmUgX19OUl9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwgKF9fTlJfTGludXggKyAxNDUpCi0jZGVmaW5lIF9fTlJfbWxvY2sgKF9fTlJfTGludXggKyAxNDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21sb2NrIChfX05SX0xpbnV4ICsgMTQ2KQogI2RlZmluZSBfX05SX211bmxvY2sgKF9fTlJfTGludXggKyAxNDcpCiAjZGVmaW5lIF9fTlJfbWxvY2thbGwgKF9fTlJfTGludXggKyAxNDgpCiAjZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAoX19OUl9MaW51eCArIDE0OSkKLSNkZWZpbmUgX19OUl92aGFuZ3VwIChfX05SX0xpbnV4ICsgMTUwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl92aGFuZ3VwIChfX05SX0xpbnV4ICsgMTUwKQogI2RlZmluZSBfX05SX3Bpdm90X3Jvb3QgKF9fTlJfTGludXggKyAxNTEpCiAjZGVmaW5lIF9fTlJfX3N5c2N0bCAoX19OUl9MaW51eCArIDE1MikKICNkZWZpbmUgX19OUl9wcmN0bCAoX19OUl9MaW51eCArIDE1MykKLSNkZWZpbmUgX19OUl9hZGp0aW1leCAoX19OUl9MaW51eCArIDE1NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfYWRqdGltZXggKF9fTlJfTGludXggKyAxNTQpCiAjZGVmaW5lIF9fTlJfc2V0cmxpbWl0IChfX05SX0xpbnV4ICsgMTU1KQogI2RlZmluZSBfX05SX2Nocm9vdCAoX19OUl9MaW51eCArIDE1NikKICNkZWZpbmUgX19OUl9zeW5jIChfX05SX0xpbnV4ICsgMTU3KQotI2RlZmluZSBfX05SX2FjY3QgKF9fTlJfTGludXggKyAxNTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2FjY3QgKF9fTlJfTGludXggKyAxNTgpCiAjZGVmaW5lIF9fTlJfc2V0dGltZW9mZGF5IChfX05SX0xpbnV4ICsgMTU5KQogI2RlZmluZSBfX05SX21vdW50IChfX05SX0xpbnV4ICsgMTYwKQogI2RlZmluZSBfX05SX3Vtb3VudDIgKF9fTlJfTGludXggKyAxNjEpCi0jZGVmaW5lIF9fTlJfc3dhcG9uIChfX05SX0xpbnV4ICsgMTYyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zd2Fwb24gKF9fTlJfTGludXggKyAxNjIpCiAjZGVmaW5lIF9fTlJfc3dhcG9mZiAoX19OUl9MaW51eCArIDE2MykKICNkZWZpbmUgX19OUl9yZWJvb3QgKF9fTlJfTGludXggKyAxNjQpCiAjZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgKF9fTlJfTGludXggKyAxNjUpCi0jZGVmaW5lIF9fTlJfc2V0ZG9tYWlubmFtZSAoX19OUl9MaW51eCArIDE2NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0ZG9tYWlubmFtZSAoX19OUl9MaW51eCArIDE2NikKICNkZWZpbmUgX19OUl9jcmVhdGVfbW9kdWxlIChfX05SX0xpbnV4ICsgMTY3KQogI2RlZmluZSBfX05SX2luaXRfbW9kdWxlIChfX05SX0xpbnV4ICsgMTY4KQogI2RlZmluZSBfX05SX2RlbGV0ZV9tb2R1bGUgKF9fTlJfTGludXggKyAxNjkpCi0jZGVmaW5lIF9fTlJfZ2V0X2tlcm5lbF9zeW1zIChfX05SX0xpbnV4ICsgMTcwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRfa2VybmVsX3N5bXMgKF9fTlJfTGludXggKyAxNzApCiAjZGVmaW5lIF9fTlJfcXVlcnlfbW9kdWxlIChfX05SX0xpbnV4ICsgMTcxKQogI2RlZmluZSBfX05SX3F1b3RhY3RsIChfX05SX0xpbnV4ICsgMTcyKQogI2RlZmluZSBfX05SX25mc3NlcnZjdGwgKF9fTlJfTGludXggKyAxNzMpCi0jZGVmaW5lIF9fTlJfZ2V0cG1zZyAoX19OUl9MaW51eCArIDE3NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cG1zZyAoX19OUl9MaW51eCArIDE3NCkKICNkZWZpbmUgX19OUl9wdXRwbXNnIChfX05SX0xpbnV4ICsgMTc1KQogI2RlZmluZSBfX05SX2Fmc19zeXNjYWxsIChfX05SX0xpbnV4ICsgMTc2KQogI2RlZmluZSBfX05SX3Jlc2VydmVkMTc3IChfX05SX0xpbnV4ICsgMTc3KQotI2RlZmluZSBfX05SX2dldHRpZCAoX19OUl9MaW51eCArIDE3OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0dGlkIChfX05SX0xpbnV4ICsgMTc4KQogI2RlZmluZSBfX05SX3JlYWRhaGVhZCAoX19OUl9MaW51eCArIDE3OSkKICNkZWZpbmUgX19OUl9zZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MCkKICNkZWZpbmUgX19OUl9sc2V0eGF0dHIgKF9fTlJfTGludXggKyAxODEpCi0jZGVmaW5lIF9fTlJfZnNldHhhdHRyIChfX05SX0xpbnV4ICsgMTgyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mc2V0eGF0dHIgKF9fTlJfTGludXggKyAxODIpCiAjZGVmaW5lIF9fTlJfZ2V0eGF0dHIgKF9fTlJfTGludXggKyAxODMpCiAjZGVmaW5lIF9fTlJfbGdldHhhdHRyIChfX05SX0xpbnV4ICsgMTg0KQogI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAoX19OUl9MaW51eCArIDE4NSkKLSNkZWZpbmUgX19OUl9saXN0eGF0dHIgKF9fTlJfTGludXggKyAxODYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2xpc3R4YXR0ciAoX19OUl9MaW51eCArIDE4NikKICNkZWZpbmUgX19OUl9sbGlzdHhhdHRyIChfX05SX0xpbnV4ICsgMTg3KQogI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgKF9fTlJfTGludXggKyAxODgpCiAjZGVmaW5lIF9fTlJfcmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxODkpCi0jZGVmaW5lIF9fTlJfbHJlbW92ZXhhdHRyIChfX05SX0xpbnV4ICsgMTkwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9scmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxOTApCiAjZGVmaW5lIF9fTlJfZnJlbW92ZXhhdHRyIChfX05SX0xpbnV4ICsgMTkxKQogI2RlZmluZSBfX05SX3RraWxsIChfX05SX0xpbnV4ICsgMTkyKQogI2RlZmluZSBfX05SX3Jlc2VydmVkMTkzIChfX05SX0xpbnV4ICsgMTkzKQotI2RlZmluZSBfX05SX2Z1dGV4IChfX05SX0xpbnV4ICsgMTk0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mdXRleCAoX19OUl9MaW51eCArIDE5NCkKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAoX19OUl9MaW51eCArIDE5NSkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAoX19OUl9MaW51eCArIDE5NikKICNkZWZpbmUgX19OUl9jYWNoZWZsdXNoIChfX05SX0xpbnV4ICsgMTk3KQotI2RlZmluZSBfX05SX2NhY2hlY3RsIChfX05SX0xpbnV4ICsgMTk4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jYWNoZWN0bCAoX19OUl9MaW51eCArIDE5OCkKICNkZWZpbmUgX19OUl9zeXNtaXBzIChfX05SX0xpbnV4ICsgMTk5KQogI2RlZmluZSBfX05SX2lvX3NldHVwIChfX05SX0xpbnV4ICsgMjAwKQogI2RlZmluZSBfX05SX2lvX2Rlc3Ryb3kgKF9fTlJfTGludXggKyAyMDEpCi0jZGVmaW5lIF9fTlJfaW9fZ2V0ZXZlbnRzIChfX05SX0xpbnV4ICsgMjAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9pb19nZXRldmVudHMgKF9fTlJfTGludXggKyAyMDIpCiAjZGVmaW5lIF9fTlJfaW9fc3VibWl0IChfX05SX0xpbnV4ICsgMjAzKQogI2RlZmluZSBfX05SX2lvX2NhbmNlbCAoX19OUl9MaW51eCArIDIwNCkKICNkZWZpbmUgX19OUl9leGl0X2dyb3VwIChfX05SX0xpbnV4ICsgMjA1KQotI2RlZmluZSBfX05SX2xvb2t1cF9kY29va2llIChfX05SX0xpbnV4ICsgMjA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9sb29rdXBfZGNvb2tpZSAoX19OUl9MaW51eCArIDIwNikKICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUgKF9fTlJfTGludXggKyAyMDcpCiAjZGVmaW5lIF9fTlJfZXBvbGxfY3RsIChfX05SX0xpbnV4ICsgMjA4KQogI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgKF9fTlJfTGludXggKyAyMDkpCi0jZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAoX19OUl9MaW51eCArIDIxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAoX19OUl9MaW51eCArIDIxMCkKICNkZWZpbmUgX19OUl9ydF9zaWdyZXR1cm4gKF9fTlJfTGludXggKyAyMTEpCiAjZGVmaW5lIF9fTlJfc2V0X3RpZF9hZGRyZXNzIChfX05SX0xpbnV4ICsgMjEyKQogI2RlZmluZSBfX05SX3Jlc3RhcnRfc3lzY2FsbCAoX19OUl9MaW51eCArIDIxMykKLSNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX05SX0xpbnV4ICsgMjE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX05SX0xpbnV4ICsgMjE0KQogI2RlZmluZSBfX05SX2ZhZHZpc2U2NCAoX19OUl9MaW51eCArIDIxNSkKICNkZWZpbmUgX19OUl90aW1lcl9jcmVhdGUgKF9fTlJfTGludXggKyAyMTYpCiAjZGVmaW5lIF9fTlJfdGltZXJfc2V0dGltZSAoX19OUl9MaW51eCArIDIxNykKLSNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIChfX05SX0xpbnV4ICsgMjE4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIChfX05SX0xpbnV4ICsgMjE4KQogI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gKF9fTlJfTGludXggKyAyMTkpCiAjZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlIChfX05SX0xpbnV4ICsgMjIwKQogI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgKF9fTlJfTGludXggKyAyMjEpCi0jZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGltZSAoX19OUl9MaW51eCArIDIyMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGltZSAoX19OUl9MaW51eCArIDIyMikKICNkZWZpbmUgX19OUl9jbG9ja19nZXRyZXMgKF9fTlJfTGludXggKyAyMjMpCiAjZGVmaW5lIF9fTlJfY2xvY2tfbmFub3NsZWVwIChfX05SX0xpbnV4ICsgMjI0KQogI2RlZmluZSBfX05SX3Rna2lsbCAoX19OUl9MaW51eCArIDIyNSkKLSNkZWZpbmUgX19OUl91dGltZXMgKF9fTlJfTGludXggKyAyMjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3V0aW1lcyAoX19OUl9MaW51eCArIDIyNikKICNkZWZpbmUgX19OUl9tYmluZCAoX19OUl9MaW51eCArIDIyNykKICNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IChfX05SX0xpbnV4ICsgMjI4KQogI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgKF9fTlJfTGludXggKyAyMjkpCi0jZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19OUl9MaW51eCArIDIzMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19OUl9MaW51eCArIDIzMCkKICNkZWZpbmUgX19OUl9tcV91bmxpbmsgKF9fTlJfTGludXggKyAyMzEpCiAjZGVmaW5lIF9fTlJfbXFfdGltZWRzZW5kIChfX05SX0xpbnV4ICsgMjMyKQogI2RlZmluZSBfX05SX21xX3RpbWVkcmVjZWl2ZSAoX19OUl9MaW51eCArIDIzMykKLSNkZWZpbmUgX19OUl9tcV9ub3RpZnkgKF9fTlJfTGludXggKyAyMzQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21xX25vdGlmeSAoX19OUl9MaW51eCArIDIzNCkKICNkZWZpbmUgX19OUl9tcV9nZXRzZXRhdHRyIChfX05SX0xpbnV4ICsgMjM1KQogI2RlZmluZSBfX05SX3ZzZXJ2ZXIgKF9fTlJfTGludXggKyAyMzYpCiAjZGVmaW5lIF9fTlJfd2FpdGlkIChfX05SX0xpbnV4ICsgMjM3KQotI2RlZmluZSBfX05SX2FkZF9rZXkgKF9fTlJfTGludXggKyAyMzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2FkZF9rZXkgKF9fTlJfTGludXggKyAyMzkpCiAjZGVmaW5lIF9fTlJfcmVxdWVzdF9rZXkgKF9fTlJfTGludXggKyAyNDApCiAjZGVmaW5lIF9fTlJfa2V5Y3RsIChfX05SX0xpbnV4ICsgMjQxKQogI2RlZmluZSBfX05SX3NldF90aHJlYWRfYXJlYSAoX19OUl9MaW51eCArIDI0MikKLSNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQgKF9fTlJfTGludXggKyAyNDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDI0MykKICNkZWZpbmUgX19OUl9pbm90aWZ5X2FkZF93YXRjaCAoX19OUl9MaW51eCArIDI0NCkKICNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoIChfX05SX0xpbnV4ICsgMjQ1KQogI2RlZmluZSBfX05SX21pZ3JhdGVfcGFnZXMgKF9fTlJfTGludXggKyAyNDYpCi0jZGVmaW5lIF9fTlJfb3BlbmF0IChfX05SX0xpbnV4ICsgMjQ3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9vcGVuYXQgKF9fTlJfTGludXggKyAyNDcpCiAjZGVmaW5lIF9fTlJfbWtkaXJhdCAoX19OUl9MaW51eCArIDI0OCkKICNkZWZpbmUgX19OUl9ta25vZGF0IChfX05SX0xpbnV4ICsgMjQ5KQogI2RlZmluZSBfX05SX2ZjaG93bmF0IChfX05SX0xpbnV4ICsgMjUwKQotI2RlZmluZSBfX05SX2Z1dGltZXNhdCAoX19OUl9MaW51eCArIDI1MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX05SX0xpbnV4ICsgMjUxKQogI2RlZmluZSBfX05SX25ld2ZzdGF0YXQgKF9fTlJfTGludXggKyAyNTIpCiAjZGVmaW5lIF9fTlJfdW5saW5rYXQgKF9fTlJfTGludXggKyAyNTMpCiAjZGVmaW5lIF9fTlJfcmVuYW1lYXQgKF9fTlJfTGludXggKyAyNTQpCi0jZGVmaW5lIF9fTlJfbGlua2F0IChfX05SX0xpbnV4ICsgMjU1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9saW5rYXQgKF9fTlJfTGludXggKyAyNTUpCiAjZGVmaW5lIF9fTlJfc3ltbGlua2F0IChfX05SX0xpbnV4ICsgMjU2KQogI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgKF9fTlJfTGludXggKyAyNTcpCiAjZGVmaW5lIF9fTlJfZmNobW9kYXQgKF9fTlJfTGludXggKyAyNTgpCi0jZGVmaW5lIF9fTlJfZmFjY2Vzc2F0IChfX05SX0xpbnV4ICsgMjU5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mYWNjZXNzYXQgKF9fTlJfTGludXggKyAyNTkpCiAjZGVmaW5lIF9fTlJfcHNlbGVjdDYgKF9fTlJfTGludXggKyAyNjApCiAjZGVmaW5lIF9fTlJfcHBvbGwgKF9fTlJfTGludXggKyAyNjEpCiAjZGVmaW5lIF9fTlJfdW5zaGFyZSAoX19OUl9MaW51eCArIDI2MikKLSNkZWZpbmUgX19OUl9zcGxpY2UgKF9fTlJfTGludXggKyAyNjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NwbGljZSAoX19OUl9MaW51eCArIDI2MykKICNkZWZpbmUgX19OUl9zeW5jX2ZpbGVfcmFuZ2UgKF9fTlJfTGludXggKyAyNjQpCiAjZGVmaW5lIF9fTlJfdGVlIChfX05SX0xpbnV4ICsgMjY1KQogI2RlZmluZSBfX05SX3Ztc3BsaWNlIChfX05SX0xpbnV4ICsgMjY2KQotI2RlZmluZSBfX05SX21vdmVfcGFnZXMgKF9fTlJfTGludXggKyAyNjcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX21vdmVfcGFnZXMgKF9fTlJfTGludXggKyAyNjcpCiAjZGVmaW5lIF9fTlJfc2V0X3JvYnVzdF9saXN0IChfX05SX0xpbnV4ICsgMjY4KQogI2RlZmluZSBfX05SX2dldF9yb2J1c3RfbGlzdCAoX19OUl9MaW51eCArIDI2OSkKICNkZWZpbmUgX19OUl9rZXhlY19sb2FkIChfX05SX0xpbnV4ICsgMjcwKQotI2RlZmluZSBfX05SX2dldGNwdSAoX19OUl9MaW51eCArIDI3MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0Y3B1IChfX05SX0xpbnV4ICsgMjcxKQogI2RlZmluZSBfX05SX2Vwb2xsX3B3YWl0IChfX05SX0xpbnV4ICsgMjcyKQogI2RlZmluZSBfX05SX2lvcHJpb19zZXQgKF9fTlJfTGludXggKyAyNzMpCiAjZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAoX19OUl9MaW51eCArIDI3NCkKLSNkZWZpbmUgX19OUl91dGltZW5zYXQgKF9fTlJfTGludXggKyAyNzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3V0aW1lbnNhdCAoX19OUl9MaW51eCArIDI3NSkKICNkZWZpbmUgX19OUl9zaWduYWxmZCAoX19OUl9MaW51eCArIDI3NikKICNkZWZpbmUgX19OUl90aW1lcmZkIChfX05SX0xpbnV4ICsgMjc3KQogI2RlZmluZSBfX05SX2V2ZW50ZmQgKF9fTlJfTGludXggKyAyNzgpCi0jZGVmaW5lIF9fTlJfZmFsbG9jYXRlIChfX05SX0xpbnV4ICsgMjc5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mYWxsb2NhdGUgKF9fTlJfTGludXggKyAyNzkpCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9jcmVhdGUgKF9fTlJfTGludXggKyAyODApCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9nZXR0aW1lIChfX05SX0xpbnV4ICsgMjgxKQogI2RlZmluZSBfX05SX3RpbWVyZmRfc2V0dGltZSAoX19OUl9MaW51eCArIDI4MikKLSNkZWZpbmUgX19OUl9zaWduYWxmZDQgKF9fTlJfTGludXggKyAyODMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NpZ25hbGZkNCAoX19OUl9MaW51eCArIDI4MykKICNkZWZpbmUgX19OUl9ldmVudGZkMiAoX19OUl9MaW51eCArIDI4NCkKICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUxIChfX05SX0xpbnV4ICsgMjg1KQogI2RlZmluZSBfX05SX2R1cDMgKF9fTlJfTGludXggKyAyODYpCi0jZGVmaW5lIF9fTlJfcGlwZTIgKF9fTlJfTGludXggKyAyODcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3BpcGUyIChfX05SX0xpbnV4ICsgMjg3KQogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdDEgKF9fTlJfTGludXggKyAyODgpCiAjZGVmaW5lIF9fTlJfcHJlYWR2IChfX05SX0xpbnV4ICsgMjg5KQogI2RlZmluZSBfX05SX3B3cml0ZXYgKF9fTlJfTGludXggKyAyOTApCi0jZGVmaW5lIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm8gKF9fTlJfTGludXggKyAyOTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3J0X3Rnc2lncXVldWVpbmZvIChfX05SX0xpbnV4ICsgMjkxKQogI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAoX19OUl9MaW51eCArIDI5MikKICNkZWZpbmUgX19OUl9hY2NlcHQ0IChfX05SX0xpbnV4ICsgMjkzKQogI2RlZmluZSBfX05SX3JlY3ZtbXNnIChfX05SX0xpbnV4ICsgMjk0KQotI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgKF9fTlJfTGludXggKyAyOTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgKF9fTlJfTGludXggKyAyOTUpCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfbWFyayAoX19OUl9MaW51eCArIDI5NikKICNkZWZpbmUgX19OUl9wcmxpbWl0NjQgKF9fTlJfTGludXggKyAyOTcpCiAjZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgKF9fTlJfTGludXggKyAyOTgpCi0jZGVmaW5lIF9fTlJfb3Blbl9ieV9oYW5kbGVfYXQgKF9fTlJfTGludXggKyAyOTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX29wZW5fYnlfaGFuZGxlX2F0IChfX05SX0xpbnV4ICsgMjk5KQogI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgKF9fTlJfTGludXggKyAzMDApCiAjZGVmaW5lIF9fTlJfc3luY2ZzIChfX05SX0xpbnV4ICsgMzAxKQogI2RlZmluZSBfX05SX3NlbmRtbXNnIChfX05SX0xpbnV4ICsgMzAyKQotI2RlZmluZSBfX05SX3NldG5zIChfX05SX0xpbnV4ICsgMzAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRucyAoX19OUl9MaW51eCArIDMwMykKICNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3JlYWR2IChfX05SX0xpbnV4ICsgMzA0KQogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fd3JpdGV2IChfX05SX0xpbnV4ICsgMzA1KQogI2RlZmluZSBfX05SX2tjbXAgKF9fTlJfTGludXggKyAzMDYpCi0jZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIChfX05SX0xpbnV4ICsgMzA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgKF9fTlJfTGludXggKyAzMDcpCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2NCAoX19OUl9MaW51eCArIDMwOCkKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIChfX05SX0xpbnV4ICsgMzA5KQogI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgKF9fTlJfTGludXggKyAzMTApCi0jZGVmaW5lIF9fTlJfTGludXhfc3lzY2FsbHMgMzEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlbmFtZWF0MiAoX19OUl9MaW51eCArIDMxMSkKKyNkZWZpbmUgX19OUl9zZWNjb21wIChfX05SX0xpbnV4ICsgMzEyKQorI2RlZmluZSBfX05SX2dldHJhbmRvbSAoX19OUl9MaW51eCArIDMxMykKKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgKF9fTlJfTGludXggKyAzMTQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2JwZiAoX19OUl9MaW51eCArIDMxNSkKKyNkZWZpbmUgX19OUl9MaW51eF9zeXNjYWxscyAzMTUKICNlbmRpZgogI2RlZmluZSBfX05SXzY0X0xpbnV4IDUwMDAKLSNkZWZpbmUgX19OUl82NF9MaW51eF9zeXNjYWxscyAzMTAKLSNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX05BQkkzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl82NF9MaW51eF9zeXNjYWxscyAzMTUKKyNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX05BQkkzMgogI2RlZmluZSBfX05SX0xpbnV4IDYwMDAKICNkZWZpbmUgX19OUl9yZWFkIChfX05SX0xpbnV4ICsgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfd3JpdGUgKF9fTlJfTGludXggKyAxKQogI2RlZmluZSBfX05SX29wZW4gKF9fTlJfTGludXggKyAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jbG9zZSAoX19OUl9MaW51eCArIDMpCiAjZGVmaW5lIF9fTlJfc3RhdCAoX19OUl9MaW51eCArIDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZzdGF0IChfX05SX0xpbnV4ICsgNSkKICNkZWZpbmUgX19OUl9sc3RhdCAoX19OUl9MaW51eCArIDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BvbGwgKF9fTlJfTGludXggKyA3KQogI2RlZmluZSBfX05SX2xzZWVrIChfX05SX0xpbnV4ICsgOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbW1hcCAoX19OUl9MaW51eCArIDkpCiAjZGVmaW5lIF9fTlJfbXByb3RlY3QgKF9fTlJfTGludXggKyAxMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXVubWFwIChfX05SX0xpbnV4ICsgMTEpCiAjZGVmaW5lIF9fTlJfYnJrIChfX05SX0xpbnV4ICsgMTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAoX19OUl9MaW51eCArIDEzKQogI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrIChfX05SX0xpbnV4ICsgMTQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lvY3RsIChfX05SX0xpbnV4ICsgMTUpCiAjZGVmaW5lIF9fTlJfcHJlYWQ2NCAoX19OUl9MaW51eCArIDE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wd3JpdGU2NCAoX19OUl9MaW51eCArIDE3KQogI2RlZmluZSBfX05SX3JlYWR2IChfX05SX0xpbnV4ICsgMTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3dyaXRldiAoX19OUl9MaW51eCArIDE5KQogI2RlZmluZSBfX05SX2FjY2VzcyAoX19OUl9MaW51eCArIDIwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9waXBlIChfX05SX0xpbnV4ICsgMjEpCiAjZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAoX19OUl9MaW51eCArIDIyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF95aWVsZCAoX19OUl9MaW51eCArIDIzKQogI2RlZmluZSBfX05SX21yZW1hcCAoX19OUl9MaW51eCArIDI0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tc3luYyAoX19OUl9MaW51eCArIDI1KQogI2RlZmluZSBfX05SX21pbmNvcmUgKF9fTlJfTGludXggKyAyNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbWFkdmlzZSAoX19OUl9MaW51eCArIDI3KQogI2RlZmluZSBfX05SX3NobWdldCAoX19OUl9MaW51eCArIDI4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zaG1hdCAoX19OUl9MaW51eCArIDI5KQogI2RlZmluZSBfX05SX3NobWN0bCAoX19OUl9MaW51eCArIDMwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9kdXAgKF9fTlJfTGludXggKyAzMSkKICNkZWZpbmUgX19OUl9kdXAyIChfX05SX0xpbnV4ICsgMzIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BhdXNlIChfX05SX0xpbnV4ICsgMzMpCiAjZGVmaW5lIF9fTlJfbmFub3NsZWVwIChfX05SX0xpbnV4ICsgMzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldGl0aW1lciAoX19OUl9MaW51eCArIDM1KQogI2RlZmluZSBfX05SX3NldGl0aW1lciAoX19OUl9MaW51eCArIDM2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9hbGFybSAoX19OUl9MaW51eCArIDM3KQogI2RlZmluZSBfX05SX2dldHBpZCAoX19OUl9MaW51eCArIDM4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZW5kZmlsZSAoX19OUl9MaW51eCArIDM5KQogI2RlZmluZSBfX05SX3NvY2tldCAoX19OUl9MaW51eCArIDQwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jb25uZWN0IChfX05SX0xpbnV4ICsgNDEpCiAjZGVmaW5lIF9fTlJfYWNjZXB0IChfX05SX0xpbnV4ICsgNDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbmR0byAoX19OUl9MaW51eCArIDQzKQogI2RlZmluZSBfX05SX3JlY3Zmcm9tIChfX05SX0xpbnV4ICsgNDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbmRtc2cgKF9fTlJfTGludXggKyA0NSkKICNkZWZpbmUgX19OUl9yZWN2bXNnIChfX05SX0xpbnV4ICsgNDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NodXRkb3duIChfX05SX0xpbnV4ICsgNDcpCiAjZGVmaW5lIF9fTlJfYmluZCAoX19OUl9MaW51eCArIDQ4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9saXN0ZW4gKF9fTlJfTGludXggKyA0OSkKICNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAoX19OUl9MaW51eCArIDUwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXRwZWVybmFtZSAoX19OUl9MaW51eCArIDUxKQogI2RlZmluZSBfX05SX3NvY2tldHBhaXIgKF9fTlJfTGludXggKyA1MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0c29ja29wdCAoX19OUl9MaW51eCArIDUzKQogI2RlZmluZSBfX05SX2dldHNvY2tvcHQgKF9fTlJfTGludXggKyA1NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2xvbmUgKF9fTlJfTGludXggKyA1NSkKICNkZWZpbmUgX19OUl9mb3JrIChfX05SX0xpbnV4ICsgNTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V4ZWN2ZSAoX19OUl9MaW51eCArIDU3KQogI2RlZmluZSBfX05SX2V4aXQgKF9fTlJfTGludXggKyA1OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfd2FpdDQgKF9fTlJfTGludXggKyA1OSkKICNkZWZpbmUgX19OUl9raWxsIChfX05SX0xpbnV4ICsgNjApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VuYW1lIChfX05SX0xpbnV4ICsgNjEpCiAjZGVmaW5lIF9fTlJfc2VtZ2V0IChfX05SX0xpbnV4ICsgNjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbW9wIChfX05SX0xpbnV4ICsgNjMpCiAjZGVmaW5lIF9fTlJfc2VtY3RsIChfX05SX0xpbnV4ICsgNjQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NobWR0IChfX05SX0xpbnV4ICsgNjUpCiAjZGVmaW5lIF9fTlJfbXNnZ2V0IChfX05SX0xpbnV4ICsgNjYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21zZ3NuZCAoX19OUl9MaW51eCArIDY3KQogI2RlZmluZSBfX05SX21zZ3JjdiAoX19OUl9MaW51eCArIDY4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tc2djdGwgKF9fTlJfTGludXggKyA2OSkKICNkZWZpbmUgX19OUl9mY250bCAoX19OUl9MaW51eCArIDcwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mbG9jayAoX19OUl9MaW51eCArIDcxKQogI2RlZmluZSBfX05SX2ZzeW5jIChfX05SX0xpbnV4ICsgNzIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZkYXRhc3luYyAoX19OUl9MaW51eCArIDczKQogI2RlZmluZSBfX05SX3RydW5jYXRlIChfX05SX0xpbnV4ICsgNzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Z0cnVuY2F0ZSAoX19OUl9MaW51eCArIDc1KQogI2RlZmluZSBfX05SX2dldGRlbnRzIChfX05SX0xpbnV4ICsgNzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldGN3ZCAoX19OUl9MaW51eCArIDc3KQogI2RlZmluZSBfX05SX2NoZGlyIChfX05SX0xpbnV4ICsgNzgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZjaGRpciAoX19OUl9MaW51eCArIDc5KQogI2RlZmluZSBfX05SX3JlbmFtZSAoX19OUl9MaW51eCArIDgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ta2RpciAoX19OUl9MaW51eCArIDgxKQogI2RlZmluZSBfX05SX3JtZGlyIChfX05SX0xpbnV4ICsgODIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2NyZWF0IChfX05SX0xpbnV4ICsgODMpCiAjZGVmaW5lIF9fTlJfbGluayAoX19OUl9MaW51eCArIDg0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91bmxpbmsgKF9fTlJfTGludXggKyA4NSkKICNkZWZpbmUgX19OUl9zeW1saW5rIChfX05SX0xpbnV4ICsgODYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlYWRsaW5rIChfX05SX0xpbnV4ICsgODcpCiAjZGVmaW5lIF9fTlJfY2htb2QgKF9fTlJfTGludXggKyA4OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmNobW9kIChfX05SX0xpbnV4ICsgODkpCiAjZGVmaW5lIF9fTlJfY2hvd24gKF9fTlJfTGludXggKyA5MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmNob3duIChfX05SX0xpbnV4ICsgOTEpCiAjZGVmaW5lIF9fTlJfbGNob3duIChfX05SX0xpbnV4ICsgOTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VtYXNrIChfX05SX0xpbnV4ICsgOTMpCiAjZGVmaW5lIF9fTlJfZ2V0dGltZW9mZGF5IChfX05SX0xpbnV4ICsgOTQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldHJsaW1pdCAoX19OUl9MaW51eCArIDk1KQogI2RlZmluZSBfX05SX2dldHJ1c2FnZSAoX19OUl9MaW51eCArIDk2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeXNpbmZvIChfX05SX0xpbnV4ICsgOTcpCiAjZGVmaW5lIF9fTlJfdGltZXMgKF9fTlJfTGludXggKyA5OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcHRyYWNlIChfX05SX0xpbnV4ICsgOTkpCiAjZGVmaW5lIF9fTlJfZ2V0dWlkIChfX05SX0xpbnV4ICsgMTAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeXNsb2cgKF9fTlJfTGludXggKyAxMDEpCiAjZGVmaW5lIF9fTlJfZ2V0Z2lkIChfX05SX0xpbnV4ICsgMTAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXR1aWQgKF9fTlJfTGludXggKyAxMDMpCiAjZGVmaW5lIF9fTlJfc2V0Z2lkIChfX05SX0xpbnV4ICsgMTA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXRldWlkIChfX05SX0xpbnV4ICsgMTA1KQogI2RlZmluZSBfX05SX2dldGVnaWQgKF9fTlJfTGludXggKyAxMDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHBnaWQgKF9fTlJfTGludXggKyAxMDcpCiAjZGVmaW5lIF9fTlJfZ2V0cHBpZCAoX19OUl9MaW51eCArIDEwOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0cGdycCAoX19OUl9MaW51eCArIDEwOSkKICNkZWZpbmUgX19OUl9zZXRzaWQgKF9fTlJfTGludXggKyAxMTApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHJldWlkIChfX05SX0xpbnV4ICsgMTExKQogI2RlZmluZSBfX05SX3NldHJlZ2lkIChfX05SX0xpbnV4ICsgMTEyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXRncm91cHMgKF9fTlJfTGludXggKyAxMTMpCiAjZGVmaW5lIF9fTlJfc2V0Z3JvdXBzIChfX05SX0xpbnV4ICsgMTE0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRyZXN1aWQgKF9fTlJfTGludXggKyAxMTUpCiAjZGVmaW5lIF9fTlJfZ2V0cmVzdWlkIChfX05SX0xpbnV4ICsgMTE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRyZXNnaWQgKF9fTlJfTGludXggKyAxMTcpCiAjZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkIChfX05SX0xpbnV4ICsgMTE4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXRwZ2lkIChfX05SX0xpbnV4ICsgMTE5KQogI2RlZmluZSBfX05SX3NldGZzdWlkIChfX05SX0xpbnV4ICsgMTIwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRmc2dpZCAoX19OUl9MaW51eCArIDEyMSkKICNkZWZpbmUgX19OUl9nZXRzaWQgKF9fTlJfTGludXggKyAxMjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2NhcGdldCAoX19OUl9MaW51eCArIDEyMykKICNkZWZpbmUgX19OUl9jYXBzZXQgKF9fTlJfTGludXggKyAxMjQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3J0X3NpZ3BlbmRpbmcgKF9fTlJfTGludXggKyAxMjUpCiAjZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0IChfX05SX0xpbnV4ICsgMTI2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ydF9zaWdxdWV1ZWluZm8gKF9fTlJfTGludXggKyAxMjcpCiAjZGVmaW5lIF9fTlJfcnRfc2lnc3VzcGVuZCAoX19OUl9MaW51eCArIDEyOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2lnYWx0c3RhY2sgKF9fTlJfTGludXggKyAxMjkpCiAjZGVmaW5lIF9fTlJfdXRpbWUgKF9fTlJfTGludXggKyAxMzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21rbm9kIChfX05SX0xpbnV4ICsgMTMxKQogI2RlZmluZSBfX05SX3BlcnNvbmFsaXR5IChfX05SX0xpbnV4ICsgMTMyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91c3RhdCAoX19OUl9MaW51eCArIDEzMykKICNkZWZpbmUgX19OUl9zdGF0ZnMgKF9fTlJfTGludXggKyAxMzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZzdGF0ZnMgKF9fTlJfTGludXggKyAxMzUpCiAjZGVmaW5lIF9fTlJfc3lzZnMgKF9fTlJfTGludXggKyAxMzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldHByaW9yaXR5IChfX05SX0xpbnV4ICsgMTM3KQogI2RlZmluZSBfX05SX3NldHByaW9yaXR5IChfX05SX0xpbnV4ICsgMTM4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9zZXRwYXJhbSAoX19OUl9MaW51eCArIDEzOSkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRwYXJhbSAoX19OUl9MaW51eCArIDE0MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyIChfX05SX0xpbnV4ICsgMTQxKQogI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAoX19OUl9MaW51eCArIDE0MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAoX19OUl9MaW51eCArIDE0MykKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluIChfX05SX0xpbnV4ICsgMTQ0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwgKF9fTlJfTGludXggKyAxNDUpCiAjZGVmaW5lIF9fTlJfbWxvY2sgKF9fTlJfTGludXggKyAxNDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX211bmxvY2sgKF9fTlJfTGludXggKyAxNDcpCiAjZGVmaW5lIF9fTlJfbWxvY2thbGwgKF9fTlJfTGludXggKyAxNDgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX211bmxvY2thbGwgKF9fTlJfTGludXggKyAxNDkpCiAjZGVmaW5lIF9fTlJfdmhhbmd1cCAoX19OUl9MaW51eCArIDE1MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcGl2b3Rfcm9vdCAoX19OUl9MaW51eCArIDE1MSkKICNkZWZpbmUgX19OUl9fc3lzY3RsIChfX05SX0xpbnV4ICsgMTUyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wcmN0bCAoX19OUl9MaW51eCArIDE1MykKICNkZWZpbmUgX19OUl9hZGp0aW1leCAoX19OUl9MaW51eCArIDE1NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0cmxpbWl0IChfX05SX0xpbnV4ICsgMTU1KQogI2RlZmluZSBfX05SX2Nocm9vdCAoX19OUl9MaW51eCArIDE1NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3luYyAoX19OUl9MaW51eCArIDE1NykKICNkZWZpbmUgX19OUl9hY2N0IChfX05SX0xpbnV4ICsgMTU4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXR0aW1lb2ZkYXkgKF9fTlJfTGludXggKyAxNTkpCiAjZGVmaW5lIF9fTlJfbW91bnQgKF9fTlJfTGludXggKyAxNjApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Vtb3VudDIgKF9fTlJfTGludXggKyAxNjEpCiAjZGVmaW5lIF9fTlJfc3dhcG9uIChfX05SX0xpbnV4ICsgMTYyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zd2Fwb2ZmIChfX05SX0xpbnV4ICsgMTYzKQogI2RlZmluZSBfX05SX3JlYm9vdCAoX19OUl9MaW51eCArIDE2NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgKF9fTlJfTGludXggKyAxNjUpCiAjZGVmaW5lIF9fTlJfc2V0ZG9tYWlubmFtZSAoX19OUl9MaW51eCArIDE2NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY3JlYXRlX21vZHVsZSAoX19OUl9MaW51eCArIDE2NykKICNkZWZpbmUgX19OUl9pbml0X21vZHVsZSAoX19OUl9MaW51eCArIDE2OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZGVsZXRlX21vZHVsZSAoX19OUl9MaW51eCArIDE2OSkKICNkZWZpbmUgX19OUl9nZXRfa2VybmVsX3N5bXMgKF9fTlJfTGludXggKyAxNzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3F1ZXJ5X21vZHVsZSAoX19OUl9MaW51eCArIDE3MSkKICNkZWZpbmUgX19OUl9xdW90YWN0bCAoX19OUl9MaW51eCArIDE3MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbmZzc2VydmN0bCAoX19OUl9MaW51eCArIDE3MykKICNkZWZpbmUgX19OUl9nZXRwbXNnIChfX05SX0xpbnV4ICsgMTc0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wdXRwbXNnIChfX05SX0xpbnV4ICsgMTc1KQogI2RlZmluZSBfX05SX2Fmc19zeXNjYWxsIChfX05SX0xpbnV4ICsgMTc2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZXNlcnZlZDE3NyAoX19OUl9MaW51eCArIDE3NykKICNkZWZpbmUgX19OUl9nZXR0aWQgKF9fTlJfTGludXggKyAxNzgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlYWRhaGVhZCAoX19OUl9MaW51eCArIDE3OSkKICNkZWZpbmUgX19OUl9zZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbHNldHhhdHRyIChfX05SX0xpbnV4ICsgMTgxKQogI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0eGF0dHIgKF9fTlJfTGludXggKyAxODMpCiAjZGVmaW5lIF9fTlJfbGdldHhhdHRyIChfX05SX0xpbnV4ICsgMTg0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mZ2V0eGF0dHIgKF9fTlJfTGludXggKyAxODUpCiAjZGVmaW5lIF9fTlJfbGlzdHhhdHRyIChfX05SX0xpbnV4ICsgMTg2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sbGlzdHhhdHRyIChfX05SX0xpbnV4ICsgMTg3KQogI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgKF9fTlJfTGludXggKyAxODgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyIChfX05SX0xpbnV4ICsgMTg5KQogI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAoX19OUl9MaW51eCArIDE5MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZnJlbW92ZXhhdHRyIChfX05SX0xpbnV4ICsgMTkxKQogI2RlZmluZSBfX05SX3RraWxsIChfX05SX0xpbnV4ICsgMTkyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZXNlcnZlZDE5MyAoX19OUl9MaW51eCArIDE5MykKICNkZWZpbmUgX19OUl9mdXRleCAoX19OUl9MaW51eCArIDE5NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0YWZmaW5pdHkgKF9fTlJfTGludXggKyAxOTUpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YWZmaW5pdHkgKF9fTlJfTGludXggKyAxOTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2NhY2hlZmx1c2ggKF9fTlJfTGludXggKyAxOTcpCiAjZGVmaW5lIF9fTlJfY2FjaGVjdGwgKF9fTlJfTGludXggKyAxOTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5c21pcHMgKF9fTlJfTGludXggKyAxOTkpCiAjZGVmaW5lIF9fTlJfaW9fc2V0dXAgKF9fTlJfTGludXggKyAyMDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lvX2Rlc3Ryb3kgKF9fTlJfTGludXggKyAyMDEpCiAjZGVmaW5lIF9fTlJfaW9fZ2V0ZXZlbnRzIChfX05SX0xpbnV4ICsgMjAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pb19zdWJtaXQgKF9fTlJfTGludXggKyAyMDMpCiAjZGVmaW5lIF9fTlJfaW9fY2FuY2VsIChfX05SX0xpbnV4ICsgMjA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9leGl0X2dyb3VwIChfX05SX0xpbnV4ICsgMjA1KQogI2RlZmluZSBfX05SX2xvb2t1cF9kY29va2llIChfX05SX0xpbnV4ICsgMjA2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUgKF9fTlJfTGludXggKyAyMDcpCiAjZGVmaW5lIF9fTlJfZXBvbGxfY3RsIChfX05SX0xpbnV4ICsgMjA4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9lcG9sbF93YWl0IChfX05SX0xpbnV4ICsgMjA5KQogI2RlZmluZSBfX05SX3JlbWFwX2ZpbGVfcGFnZXMgKF9fTlJfTGludXggKyAyMTApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAoX19OUl9MaW51eCArIDIxMSkKICNkZWZpbmUgX19OUl9mY250bDY0IChfX05SX0xpbnV4ICsgMjEyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRfdGlkX2FkZHJlc3MgKF9fTlJfTGludXggKyAyMTMpCiAjZGVmaW5lIF9fTlJfcmVzdGFydF9zeXNjYWxsIChfX05SX0xpbnV4ICsgMjE0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX05SX0xpbnV4ICsgMjE1KQogI2RlZmluZSBfX05SX2ZhZHZpc2U2NCAoX19OUl9MaW51eCArIDIxNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3RhdGZzNjQgKF9fTlJfTGludXggKyAyMTcpCiAjZGVmaW5lIF9fTlJfZnN0YXRmczY0IChfX05SX0xpbnV4ICsgMjE4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZW5kZmlsZTY0IChfX05SX0xpbnV4ICsgMjE5KQogI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAoX19OUl9MaW51eCArIDIyMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdGltZXJfc2V0dGltZSAoX19OUl9MaW51eCArIDIyMSkKICNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIChfX05SX0xpbnV4ICsgMjIyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcl9nZXRvdmVycnVuIChfX05SX0xpbnV4ICsgMjIzKQogI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAoX19OUl9MaW51eCArIDIyNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2xvY2tfc2V0dGltZSAoX19OUl9MaW51eCArIDIyNSkKICNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIChfX05SX0xpbnV4ICsgMjI2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jbG9ja19nZXRyZXMgKF9fTlJfTGludXggKyAyMjcpCiAjZGVmaW5lIF9fTlJfY2xvY2tfbmFub3NsZWVwIChfX05SX0xpbnV4ICsgMjI4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90Z2tpbGwgKF9fTlJfTGludXggKyAyMjkpCiAjZGVmaW5lIF9fTlJfdXRpbWVzIChfX05SX0xpbnV4ICsgMjMwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tYmluZCAoX19OUl9MaW51eCArIDIzMSkKICNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IChfX05SX0xpbnV4ICsgMjMyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRfbWVtcG9saWN5IChfX05SX0xpbnV4ICsgMjMzKQogI2RlZmluZSBfX05SX21xX29wZW4gKF9fTlJfTGludXggKyAyMzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21xX3VubGluayAoX19OUl9MaW51eCArIDIzNSkKICNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgKF9fTlJfTGludXggKyAyMzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21xX3RpbWVkcmVjZWl2ZSAoX19OUl9MaW51eCArIDIzNykKICNkZWZpbmUgX19OUl9tcV9ub3RpZnkgKF9fTlJfTGludXggKyAyMzgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgKF9fTlJfTGludXggKyAyMzkpCiAjZGVmaW5lIF9fTlJfdnNlcnZlciAoX19OUl9MaW51eCArIDI0MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfd2FpdGlkIChfX05SX0xpbnV4ICsgMjQxKQogI2RlZmluZSBfX05SX2FkZF9rZXkgKF9fTlJfTGludXggKyAyNDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlcXVlc3Rfa2V5IChfX05SX0xpbnV4ICsgMjQ0KQogI2RlZmluZSBfX05SX2tleWN0bCAoX19OUl9MaW51eCArIDI0NSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0X3RocmVhZF9hcmVhIChfX05SX0xpbnV4ICsgMjQ2KQogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDI0NykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9hZGRfd2F0Y2ggKF9fTlJfTGludXggKyAyNDgpCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9ybV93YXRjaCAoX19OUl9MaW51eCArIDI0OSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbWlncmF0ZV9wYWdlcyAoX19OUl9MaW51eCArIDI1MCkKICNkZWZpbmUgX19OUl9vcGVuYXQgKF9fTlJfTGludXggKyAyNTEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21rZGlyYXQgKF9fTlJfTGludXggKyAyNTIpCiAjZGVmaW5lIF9fTlJfbWtub2RhdCAoX19OUl9MaW51eCArIDI1MykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmNob3duYXQgKF9fTlJfTGludXggKyAyNTQpCiAjZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX05SX0xpbnV4ICsgMjU1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9uZXdmc3RhdGF0IChfX05SX0xpbnV4ICsgMjU2KQogI2RlZmluZSBfX05SX3VubGlua2F0IChfX05SX0xpbnV4ICsgMjU3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZW5hbWVhdCAoX19OUl9MaW51eCArIDI1OCkKICNkZWZpbmUgX19OUl9saW5rYXQgKF9fTlJfTGludXggKyAyNTkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5bWxpbmthdCAoX19OUl9MaW51eCArIDI2MCkKICNkZWZpbmUgX19OUl9yZWFkbGlua2F0IChfX05SX0xpbnV4ICsgMjYxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mY2htb2RhdCAoX19OUl9MaW51eCArIDI2MikKICNkZWZpbmUgX19OUl9mYWNjZXNzYXQgKF9fTlJfTGludXggKyAyNjMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BzZWxlY3Q2IChfX05SX0xpbnV4ICsgMjY0KQogI2RlZmluZSBfX05SX3Bwb2xsIChfX05SX0xpbnV4ICsgMjY1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91bnNoYXJlIChfX05SX0xpbnV4ICsgMjY2KQogI2RlZmluZSBfX05SX3NwbGljZSAoX19OUl9MaW51eCArIDI2NykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlIChfX05SX0xpbnV4ICsgMjY4KQogI2RlZmluZSBfX05SX3RlZSAoX19OUl9MaW51eCArIDI2OSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdm1zcGxpY2UgKF9fTlJfTGludXggKyAyNzApCiAjZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAoX19OUl9MaW51eCArIDI3MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0X3JvYnVzdF9saXN0IChfX05SX0xpbnV4ICsgMjcyKQogI2RlZmluZSBfX05SX2dldF9yb2J1c3RfbGlzdCAoX19OUl9MaW51eCArIDI3MykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfa2V4ZWNfbG9hZCAoX19OUl9MaW51eCArIDI3NCkKICNkZWZpbmUgX19OUl9nZXRjcHUgKF9fTlJfTGludXggKyAyNzUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX3B3YWl0IChfX05SX0xpbnV4ICsgMjc2KQogI2RlZmluZSBfX05SX2lvcHJpb19zZXQgKF9fTlJfTGludXggKyAyNzcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lvcHJpb19nZXQgKF9fTlJfTGludXggKyAyNzgpCiAjZGVmaW5lIF9fTlJfdXRpbWVuc2F0IChfX05SX0xpbnV4ICsgMjc5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zaWduYWxmZCAoX19OUl9MaW51eCArIDI4MCkKICNkZWZpbmUgX19OUl90aW1lcmZkIChfX05SX0xpbnV4ICsgMjgxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ldmVudGZkIChfX05SX0xpbnV4ICsgMjgyKQogI2RlZmluZSBfX05SX2ZhbGxvY2F0ZSAoX19OUl9MaW51eCArIDI4MykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9jcmVhdGUgKF9fTlJfTGludXggKyAyODQpCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9nZXR0aW1lIChfX05SX0xpbnV4ICsgMjg1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcmZkX3NldHRpbWUgKF9fTlJfTGludXggKyAyODYpCiAjZGVmaW5lIF9fTlJfc2lnbmFsZmQ0IChfX05SX0xpbnV4ICsgMjg3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ldmVudGZkMiAoX19OUl9MaW51eCArIDI4OCkKICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUxIChfX05SX0xpbnV4ICsgMjg5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9kdXAzIChfX05SX0xpbnV4ICsgMjkwKQogI2RlZmluZSBfX05SX3BpcGUyIChfX05SX0xpbnV4ICsgMjkxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQxIChfX05SX0xpbnV4ICsgMjkyKQogI2RlZmluZSBfX05SX3ByZWFkdiAoX19OUl9MaW51eCArIDI5MykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcHdyaXRldiAoX19OUl9MaW51eCArIDI5NCkKICNkZWZpbmUgX19OUl9ydF90Z3NpZ3F1ZXVlaW5mbyAoX19OUl9MaW51eCArIDI5NSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIChfX05SX0xpbnV4ICsgMjk2KQogI2RlZmluZSBfX05SX2FjY2VwdDQgKF9fTlJfTGludXggKyAyOTcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlY3ZtbXNnIChfX05SX0xpbnV4ICsgMjk4KQogI2RlZmluZSBfX05SX2dldGRlbnRzNjQgKF9fTlJfTGludXggKyAyOTkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgKF9fTlJfTGludXggKyAzMDApCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfbWFyayAoX19OUl9MaW51eCArIDMwMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcHJsaW1pdDY0IChfX05SX0xpbnV4ICsgMzAyKQogI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IChfX05SX0xpbnV4ICsgMzAzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAoX19OUl9MaW51eCArIDMwNCkKICNkZWZpbmUgX19OUl9jbG9ja19hZGp0aW1lIChfX05SX0xpbnV4ICsgMzA1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeW5jZnMgKF9fTlJfTGludXggKyAzMDYpCiAjZGVmaW5lIF9fTlJfc2VuZG1tc2cgKF9fTlJfTGludXggKyAzMDcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldG5zIChfX05SX0xpbnV4ICsgMzA4KQogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fcmVhZHYgKF9fTlJfTGludXggKyAzMDkpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fd3JpdGV2IChfX05SX0xpbnV4ICsgMzEwKQogI2RlZmluZSBfX05SX2tjbXAgKF9fTlJfTGludXggKyAzMTEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Zpbml0X21vZHVsZSAoX19OUl9MaW51eCArIDMxMikKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIChfX05SX0xpbnV4ICsgMzEzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIChfX05SX0xpbnV4ICsgMzE0KQotI2RlZmluZSBfX05SX0xpbnV4X3N5c2NhbGxzIDMxNAorI2RlZmluZSBfX05SX3JlbmFtZWF0MiAoX19OUl9MaW51eCArIDMxNSkKKyNkZWZpbmUgX19OUl9zZWNjb21wIChfX05SX0xpbnV4ICsgMzE2KQorI2RlZmluZSBfX05SX2dldHJhbmRvbSAoX19OUl9MaW51eCArIDMxNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIChfX05SX0xpbnV4ICsgMzE4KQorI2RlZmluZSBfX05SX2JwZiAoX19OUl9MaW51eCArIDMxOSkKKyNkZWZpbmUgX19OUl9MaW51eF9zeXNjYWxscyAzMTkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9OMzJfTGludXggNjAwMAotI2RlZmluZSBfX05SX04zMl9MaW51eF9zeXNjYWxscyAzMTQKKyNkZWZpbmUgX19OUl9OMzJfTGludXhfc3lzY2FsbHMgMzE5CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Eub3V0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Eub3V0LmgKaW5kZXggZmEyODdiNS4uZDFhNDc0MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9hLm91dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vYS5vdXQuaApAQCAtMTgsMjIgKzE4LDIxIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0FTTV9YODZfQV9PVVRfSAogI2RlZmluZSBfQVNNX1g4Nl9BX09VVF9ICi1zdHJ1Y3QgZXhlYwoteworc3RydWN0IGV4ZWMgeworICB1bnNpZ25lZCBpbnQgYV9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYV9pbmZvOwotIHVuc2lnbmVkIGFfdGV4dDsKLSB1bnNpZ25lZCBhX2RhdGE7Ci0gdW5zaWduZWQgYV9ic3M7CisgIHVuc2lnbmVkIGFfdGV4dDsKKyAgdW5zaWduZWQgYV9kYXRhOworICB1bnNpZ25lZCBhX2JzczsKKyAgdW5zaWduZWQgYV9zeW1zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBhX3N5bXM7Ci0gdW5zaWduZWQgYV9lbnRyeTsKLSB1bnNpZ25lZCBhX3Ryc2l6ZTsKLSB1bnNpZ25lZCBhX2Ryc2l6ZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGFfZW50cnk7CisgIHVuc2lnbmVkIGFfdHJzaXplOworICB1bnNpZ25lZCBhX2Ryc2l6ZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOX1RSU0laRShhKSAoKGEpLmFfdHJzaXplKQogI2RlZmluZSBOX0RSU0laRShhKSAoKGEpLmFfZHJzaXplKQogI2RlZmluZSBOX1NZTVNJWkUoYSkgKChhKS5hX3N5bXMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9ib290cGFyYW0uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vYm9vdHBhcmFtLmgKaW5kZXggYjU3NjgyNS4uMjcyMDFkNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9ib290cGFyYW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Jvb3RwYXJhbS5oCkBAIC0yOCwxNyArMjgsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBTURJU0tfUFJPTVBUX0ZMQUcgMHg4MDAwCiAjZGVmaW5lIFJBTURJU0tfTE9BRF9GTEFHIDB4NDAwMAotI2RlZmluZSBMT0FERURfSElHSCAoMTw8MCkKLSNkZWZpbmUgUVVJRVRfRkxBRyAoMTw8NSkKKyNkZWZpbmUgTE9BREVEX0hJR0ggKDEgPDwgMCkKKyNkZWZpbmUgUVVJRVRfRkxBRyAoMSA8PCA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS0VFUF9TRUdNRU5UUyAoMTw8NikKLSNkZWZpbmUgQ0FOX1VTRV9IRUFQICgxPDw3KQotI2RlZmluZSBYTEZfS0VSTkVMXzY0ICgxPDwwKQotI2RlZmluZSBYTEZfQ0FOX0JFX0xPQURFRF9BQk9WRV80RyAoMTw8MSkKKyNkZWZpbmUgS0VFUF9TRUdNRU5UUyAoMSA8PCA2KQorI2RlZmluZSBDQU5fVVNFX0hFQVAgKDEgPDwgNykKKyNkZWZpbmUgWExGX0tFUk5FTF82NCAoMSA8PCAwKQorI2RlZmluZSBYTEZfQ0FOX0JFX0xPQURFRF9BQk9WRV80RyAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgWExGX0VGSV9IQU5ET1ZFUl8zMiAoMTw8MikKLSNkZWZpbmUgWExGX0VGSV9IQU5ET1ZFUl82NCAoMTw8MykKLSNkZWZpbmUgWExGX0VGSV9LRVhFQyAoMTw8NCkKKyNkZWZpbmUgWExGX0VGSV9IQU5ET1ZFUl8zMiAoMSA8PCAyKQorI2RlZmluZSBYTEZfRUZJX0hBTkRPVkVSXzY0ICgxIDw8IDMpCisjZGVmaW5lIFhMRl9FRklfS0VYRUMgKDEgPDwgNCkKICNpZm5kZWYgX19BU1NFTUJMWV9fCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CkBAIC01MSwxMzggKzUxLDEzOCBAQAogI2luY2x1ZGUgPHZpZGVvL2VkaWQuaD4KIHN0cnVjdCBzZXR1cF9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbmV4dDsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIGxlbjsKLSBfX3U4IGRhdGFbMF07CisgIF9fdTY0IG5leHQ7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGxlbjsKKyAgX191OCBkYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc2V0dXBfaGVhZGVyIHsKLSBfX3U4IHNldHVwX3NlY3RzOwotIF9fdTE2IHJvb3RfZmxhZ3M7CisgIF9fdTggc2V0dXBfc2VjdHM7CisgIF9fdTE2IHJvb3RfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5c3NpemU7Ci0gX191MTYgcmFtX3NpemU7Ci0gX191MTYgdmlkX21vZGU7Ci0gX191MTYgcm9vdF9kZXY7CisgIF9fdTMyIHN5c3NpemU7CisgIF9fdTE2IHJhbV9zaXplOworICBfX3UxNiB2aWRfbW9kZTsKKyAgX191MTYgcm9vdF9kZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGJvb3RfZmxhZzsKLSBfX3UxNiBqdW1wOwotIF9fdTMyIGhlYWRlcjsKLSBfX3UxNiB2ZXJzaW9uOworICBfX3UxNiBib290X2ZsYWc7CisgIF9fdTE2IGp1bXA7CisgIF9fdTMyIGhlYWRlcjsKKyAgX191MTYgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVhbG1vZGVfc3d0Y2g7Ci0gX191MTYgc3RhcnRfc3lzOwotIF9fdTE2IGtlcm5lbF92ZXJzaW9uOwotIF9fdTggdHlwZV9vZl9sb2FkZXI7CisgIF9fdTMyIHJlYWxtb2RlX3N3dGNoOworICBfX3UxNiBzdGFydF9zeXM7CisgIF9fdTE2IGtlcm5lbF92ZXJzaW9uOworICBfX3U4IHR5cGVfb2ZfbG9hZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxvYWRmbGFnczsKLSBfX3UxNiBzZXR1cF9tb3ZlX3NpemU7Ci0gX191MzIgY29kZTMyX3N0YXJ0OwotIF9fdTMyIHJhbWRpc2tfaW1hZ2U7CisgIF9fdTggbG9hZGZsYWdzOworICBfX3UxNiBzZXR1cF9tb3ZlX3NpemU7CisgIF9fdTMyIGNvZGUzMl9zdGFydDsKKyAgX191MzIgcmFtZGlza19pbWFnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmFtZGlza19zaXplOwotIF9fdTMyIGJvb3RzZWN0X2tsdWRnZTsKLSBfX3UxNiBoZWFwX2VuZF9wdHI7Ci0gX191OCBleHRfbG9hZGVyX3ZlcjsKKyAgX191MzIgcmFtZGlza19zaXplOworICBfX3UzMiBib290c2VjdF9rbHVkZ2U7CisgIF9fdTE2IGhlYXBfZW5kX3B0cjsKKyAgX191OCBleHRfbG9hZGVyX3ZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBleHRfbG9hZGVyX3R5cGU7Ci0gX191MzIgY21kX2xpbmVfcHRyOwotIF9fdTMyIGluaXRyZF9hZGRyX21heDsKLSBfX3UzMiBrZXJuZWxfYWxpZ25tZW50OworICBfX3U4IGV4dF9sb2FkZXJfdHlwZTsKKyAgX191MzIgY21kX2xpbmVfcHRyOworICBfX3UzMiBpbml0cmRfYWRkcl9tYXg7CisgIF9fdTMyIGtlcm5lbF9hbGlnbm1lbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVsb2NhdGFibGVfa2VybmVsOwotIF9fdTggbWluX2FsaWdubWVudDsKLSBfX3UxNiB4bG9hZGZsYWdzOwotIF9fdTMyIGNtZGxpbmVfc2l6ZTsKKyAgX191OCByZWxvY2F0YWJsZV9rZXJuZWw7CisgIF9fdTggbWluX2FsaWdubWVudDsKKyAgX191MTYgeGxvYWRmbGFnczsKKyAgX191MzIgY21kbGluZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYXJkd2FyZV9zdWJhcmNoOwotIF9fdTY0IGhhcmR3YXJlX3N1YmFyY2hfZGF0YTsKLSBfX3UzMiBwYXlsb2FkX29mZnNldDsKLSBfX3UzMiBwYXlsb2FkX2xlbmd0aDsKKyAgX191MzIgaGFyZHdhcmVfc3ViYXJjaDsKKyAgX191NjQgaGFyZHdhcmVfc3ViYXJjaF9kYXRhOworICBfX3UzMiBwYXlsb2FkX29mZnNldDsKKyAgX191MzIgcGF5bG9hZF9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNldHVwX2RhdGE7Ci0gX191NjQgcHJlZl9hZGRyZXNzOwotIF9fdTMyIGluaXRfc2l6ZTsKLSBfX3UzMiBoYW5kb3Zlcl9vZmZzZXQ7CisgIF9fdTY0IHNldHVwX2RhdGE7CisgIF9fdTY0IHByZWZfYWRkcmVzczsKKyAgX191MzIgaW5pdF9zaXplOworICBfX3UzMiBoYW5kb3Zlcl9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzeXNfZGVzY190YWJsZSB7Ci0gX191MTYgbGVuZ3RoOwotIF9fdTggdGFibGVbMTRdOworICBfX3UxNiBsZW5ndGg7CisgIF9fdTggdGFibGVbMTRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb2xwY19vZndfaGVhZGVyIHsKLSBfX3UzMiBvZndfbWFnaWM7Ci0gX191MzIgb2Z3X3ZlcnNpb247CisgIF9fdTMyIG9md19tYWdpYzsKKyAgX191MzIgb2Z3X3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNpZl9oYW5kbGVyOwotIF9fdTMyIGlycV9kZXNjX3RhYmxlOworICBfX3UzMiBjaWZfaGFuZGxlcjsKKyAgX191MzIgaXJxX2Rlc2NfdGFibGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGVmaV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWZpX2xvYWRlcl9zaWduYXR1cmU7Ci0gX191MzIgZWZpX3N5c3RhYjsKLSBfX3UzMiBlZmlfbWVtZGVzY19zaXplOwotIF9fdTMyIGVmaV9tZW1kZXNjX3ZlcnNpb247CisgIF9fdTMyIGVmaV9sb2FkZXJfc2lnbmF0dXJlOworICBfX3UzMiBlZmlfc3lzdGFiOworICBfX3UzMiBlZmlfbWVtZGVzY19zaXplOworICBfX3UzMiBlZmlfbWVtZGVzY192ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlZmlfbWVtbWFwOwotIF9fdTMyIGVmaV9tZW1tYXBfc2l6ZTsKLSBfX3UzMiBlZmlfc3lzdGFiX2hpOwotIF9fdTMyIGVmaV9tZW1tYXBfaGk7CisgIF9fdTMyIGVmaV9tZW1tYXA7CisgIF9fdTMyIGVmaV9tZW1tYXBfc2l6ZTsKKyAgX191MzIgZWZpX3N5c3RhYl9oaTsKKyAgX191MzIgZWZpX21lbW1hcF9oaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJvb3RfcGFyYW1zIHsKLSBzdHJ1Y3Qgc2NyZWVuX2luZm8gc2NyZWVuX2luZm87Ci0gc3RydWN0IGFwbV9iaW9zX2luZm8gYXBtX2Jpb3NfaW5mbzsKKyAgc3RydWN0IHNjcmVlbl9pbmZvIHNjcmVlbl9pbmZvOworICBzdHJ1Y3QgYXBtX2Jpb3NfaW5mbyBhcG1fYmlvc19pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9wYWQyWzRdOwotIF9fdTY0IHRib290X2FkZHI7Ci0gc3RydWN0IGlzdF9pbmZvIGlzdF9pbmZvOwotIF9fdTggX3BhZDNbMTZdOworICBfX3U4IF9wYWQyWzRdOworICBfX3U2NCB0Ym9vdF9hZGRyOworICBzdHJ1Y3QgaXN0X2luZm8gaXN0X2luZm87CisgIF9fdTggX3BhZDNbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhkMF9pbmZvWzE2XTsKLSBfX3U4IGhkMV9pbmZvWzE2XTsKLSBzdHJ1Y3Qgc3lzX2Rlc2NfdGFibGUgc3lzX2Rlc2NfdGFibGU7Ci0gc3RydWN0IG9scGNfb2Z3X2hlYWRlciBvbHBjX29md19oZWFkZXI7CisgIF9fdTggaGQwX2luZm9bMTZdOworICBfX3U4IGhkMV9pbmZvWzE2XTsKKyAgc3RydWN0IHN5c19kZXNjX3RhYmxlIHN5c19kZXNjX3RhYmxlOworICBzdHJ1Y3Qgb2xwY19vZndfaGVhZGVyIG9scGNfb2Z3X2hlYWRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXh0X3JhbWRpc2tfaW1hZ2U7Ci0gX191MzIgZXh0X3JhbWRpc2tfc2l6ZTsKLSBfX3UzMiBleHRfY21kX2xpbmVfcHRyOwotIF9fdTggX3BhZDRbMTE2XTsKKyAgX191MzIgZXh0X3JhbWRpc2tfaW1hZ2U7CisgIF9fdTMyIGV4dF9yYW1kaXNrX3NpemU7CisgIF9fdTMyIGV4dF9jbWRfbGluZV9wdHI7CisgIF9fdTggX3BhZDRbMTE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGVkaWRfaW5mbyBlZGlkX2luZm87Ci0gc3RydWN0IGVmaV9pbmZvIGVmaV9pbmZvOwotIF9fdTMyIGFsdF9tZW1fazsKLSBfX3UzMiBzY3JhdGNoOworICBzdHJ1Y3QgZWRpZF9pbmZvIGVkaWRfaW5mbzsKKyAgc3RydWN0IGVmaV9pbmZvIGVmaV9pbmZvOworICBfX3UzMiBhbHRfbWVtX2s7CisgIF9fdTMyIHNjcmF0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZTgyMF9lbnRyaWVzOwotIF9fdTggZWRkYnVmX2VudHJpZXM7Ci0gX191OCBlZGRfbWJyX3NpZ19idWZfZW50cmllczsKLSBfX3U4IGtiZF9zdGF0dXM7CisgIF9fdTggZTgyMF9lbnRyaWVzOworICBfX3U4IGVkZGJ1Zl9lbnRyaWVzOworICBfX3U4IGVkZF9tYnJfc2lnX2J1Zl9lbnRyaWVzOworICBfX3U4IGtiZF9zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggX3BhZDVbM107Ci0gX191OCBzZW50aW5lbDsKLSBfX3U4IF9wYWQ2WzFdOwotIHN0cnVjdCBzZXR1cF9oZWFkZXIgaGRyOworICBfX3U4IF9wYWQ1WzNdOworICBfX3U4IHNlbnRpbmVsOworICBfX3U4IF9wYWQ2WzFdOworICBzdHJ1Y3Qgc2V0dXBfaGVhZGVyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfcGFkN1sweDI5MC0weDFmMS1zaXplb2Yoc3RydWN0IHNldHVwX2hlYWRlcildOwotIF9fdTMyIGVkZF9tYnJfc2lnX2J1ZmZlcltFRERfTUJSX1NJR19NQVhdOwotIHN0cnVjdCBlODIwZW50cnkgZTgyMF9tYXBbRTgyME1BWF07Ci0gX191OCBfcGFkOFs0OF07CisgIF9fdTggX3BhZDdbMHgyOTAgLSAweDFmMSAtIHNpemVvZihzdHJ1Y3Qgc2V0dXBfaGVhZGVyKV07CisgIF9fdTMyIGVkZF9tYnJfc2lnX2J1ZmZlcltFRERfTUJSX1NJR19NQVhdOworICBzdHJ1Y3QgZTgyMGVudHJ5IGU4MjBfbWFwW0U4MjBNQVhdOworICBfX3U4IF9wYWQ4WzQ4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGVkZF9pbmZvIGVkZGJ1ZltFRERNQVhOUl07Ci0gX191OCBfcGFkOVsyNzZdOworICBzdHJ1Y3QgZWRkX2luZm8gZWRkYnVmW0VERE1BWE5SXTsKKyAgX191OCBfcGFkOVsyNzZdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYODZfU1VCQVJDSF9QQyA9IDAsCi0gWDg2X1NVQkFSQ0hfTEdVRVNULAotIFg4Nl9TVUJBUkNIX1hFTiwKLSBYODZfU1VCQVJDSF9JTlRFTF9NSUQsCisgIFg4Nl9TVUJBUkNIX1BDID0gMCwKKyAgWDg2X1NVQkFSQ0hfTEdVRVNULAorICBYODZfU1VCQVJDSF9YRU4sCisgIFg4Nl9TVUJBUkNIX0lOVEVMX01JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWDg2X1NVQkFSQ0hfQ0U0MTAwLAotIFg4Nl9OUl9TVUJBUkNIUywKKyAgWDg2X1NVQkFSQ0hfQ0U0MTAwLAorICBYODZfTlJfU1VCQVJDSFMsCiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9kZWJ1Z3JlZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9kZWJ1Z3JlZy5oCmluZGV4IGM4YjMwYTUuLjJjNjM3MDYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZGVidWdyZWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2RlYnVncmVnLmgKQEAgLTI5LDcgKzI5LDcgQEAKICNkZWZpbmUgRFJfVFJBUDEgKDB4MikKICNkZWZpbmUgRFJfVFJBUDIgKDB4NCkKICNkZWZpbmUgRFJfVFJBUDMgKDB4OCkKLSNkZWZpbmUgRFJfVFJBUF9CSVRTIChEUl9UUkFQMHxEUl9UUkFQMXxEUl9UUkFQMnxEUl9UUkFQMykKKyNkZWZpbmUgRFJfVFJBUF9CSVRTIChEUl9UUkFQMCB8IERSX1RSQVAxIHwgRFJfVFJBUDIgfCBEUl9UUkFQMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSX1NURVAgKDB4NDAwMCkKICNkZWZpbmUgRFJfU1dJVENIICgweDgwMDApCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2U4MjAuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZTgyMC5oCmluZGV4IGI3MDg0Y2YuLmQ0Y2IzODkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZTgyMC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZTgyMC5oCkBAIC0zNCwxNSArMzQsMTUgQEAKICNpZm5kZWYgX19BU1NFTUJMWV9fCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBlODIwZW50cnkgewotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNpemU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgc2l6ZTsKKyAgX191MzIgdHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgZTgyMG1hcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5yX21hcDsKLSBzdHJ1Y3QgZTgyMGVudHJ5IG1hcFtFODIwX1hfTUFYXTsKKyAgX191MzIgbnJfbWFwOworICBzdHJ1Y3QgZTgyMGVudHJ5IG1hcFtFODIwX1hfTUFYXTsKIH07CiAjZGVmaW5lIElTQV9TVEFSVF9BRERSRVNTIDB4YTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2h5cGVydi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9oeXBlcnYuaAppbmRleCA5NjVlODBhLi5lODY5NTA0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2h5cGVydi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vaHlwZXJ2LmgKQEAgLTExNywxMiArMTE3LDEyIEBACiAjZGVmaW5lIEhWX1g2NF9NU1JfSFlQRVJDQUxMX0VOQUJMRSAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVl9YNjRfTVNSX0hZUEVSQ0FMTF9QQUdFX0FERFJFU1NfU0hJRlQgMTIKLSNkZWZpbmUgSFZfWDY0X01TUl9IWVBFUkNBTExfUEFHRV9BRERSRVNTX01BU0sgICAofigoMXVsbCA8PCBIVl9YNjRfTVNSX0hZUEVSQ0FMTF9QQUdFX0FERFJFU1NfU0hJRlQpIC0gMSkpCisjZGVmaW5lIEhWX1g2NF9NU1JfSFlQRVJDQUxMX1BBR0VfQUREUkVTU19NQVNLICh+KCgxdWxsIDw8IEhWX1g2NF9NU1JfSFlQRVJDQUxMX1BBR0VfQUREUkVTU19TSElGVCkgLSAxKSkKICNkZWZpbmUgSFZfWDY0X0hWX05PVElGWV9MT05HX1NQSU5fV0FJVCAweDAwMDgKICNkZWZpbmUgSFZfWDY0X01TUl9BUElDX0FTU0lTVF9QQUdFX0VOQUJMRSAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVl9YNjRfTVNSX0FQSUNfQVNTSVNUX1BBR0VfQUREUkVTU19TSElGVCAxMgotI2RlZmluZSBIVl9YNjRfTVNSX0FQSUNfQVNTSVNUX1BBR0VfQUREUkVTU19NQVNLICAgKH4oKDF1bGwgPDwgSFZfWDY0X01TUl9BUElDX0FTU0lTVF9QQUdFX0FERFJFU1NfU0hJRlQpIC0gMSkpCisjZGVmaW5lIEhWX1g2NF9NU1JfQVBJQ19BU1NJU1RfUEFHRV9BRERSRVNTX01BU0sgKH4oKDF1bGwgPDwgSFZfWDY0X01TUl9BUElDX0FTU0lTVF9QQUdFX0FERFJFU1NfU0hJRlQpIC0gMSkpCiAjZGVmaW5lIEhWX1g2NF9NU1JfVFNDX1JFRkVSRU5DRV9FTkFCTEUgMHgwMDAwMDAwMQogI2RlZmluZSBIVl9YNjRfTVNSX1RTQ19SRUZFUkVOQ0VfQUREUkVTU19TSElGVCAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEzOCwxMSArMTM4LDExIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVl9TVEFUVVNfSU5TVUZGSUNJRU5UX0JVRkZFUlMgMTkKIHR5cGVkZWYgc3RydWN0IF9IVl9SRUZFUkVOQ0VfVFNDX1BBR0UgewotIF9fdTMyIHRzY19zZXF1ZW5jZTsKLSBfX3UzMiByZXMxOworICBfX3UzMiB0c2Nfc2VxdWVuY2U7CisgIF9fdTMyIHJlczE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRzY19zY2FsZTsKLSBfX3M2NCB0c2Nfb2Zmc2V0OwotfSBIVl9SRUZFUkVOQ0VfVFNDX1BBR0UsICpQSFZfUkVGRVJFTkNFX1RTQ19QQUdFOworICBfX3U2NCB0c2Nfc2NhbGU7CisgIF9fczY0IHRzY19vZmZzZXQ7Cit9IEhWX1JFRkVSRU5DRV9UU0NfUEFHRSwgKiBQSFZfUkVGRVJFTkNFX1RTQ19QQUdFOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9pc3QuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vaXN0LmgKaW5kZXggMzZkM2MzZC4uMjdkYjg5ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9pc3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2lzdC5oCkBAIC0yMSwxMCArMjEsMTAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGlzdF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2lnbmF0dXJlOwotIF9fdTMyIGNvbW1hbmQ7Ci0gX191MzIgZXZlbnQ7Ci0gX191MzIgcGVyZl9sZXZlbDsKKyAgX191MzIgc2lnbmF0dXJlOworICBfX3UzMiBjb21tYW5kOworICBfX3UzMiBldmVudDsKKyAgX191MzIgcGVyZl9sZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm0uaAppbmRleCAyMDBkODE4Li42YjZiNmYyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtLmgKQEAgLTM4LDMyNiArMzgsMzI5IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQRl9WRUNUT1IgMTQKICNkZWZpbmUgTUZfVkVDVE9SIDE2CisjZGVmaW5lIEFDX1ZFQ1RPUiAxNwogI2RlZmluZSBNQ19WRUNUT1IgMTgKLSNkZWZpbmUgX19LVk1fSEFWRV9QSVQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFhNX1ZFQ1RPUiAxOQorI2RlZmluZSBWRV9WRUNUT1IgMjAKKyNkZWZpbmUgX19LVk1fSEFWRV9QSVQKICNkZWZpbmUgX19LVk1fSEFWRV9JT0FQSUMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fS1ZNX0hBVkVfSVJRX0xJTkUKICNkZWZpbmUgX19LVk1fSEFWRV9NU0kKICNkZWZpbmUgX19LVk1fSEFWRV9VU0VSX05NSQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9HVUVTVF9ERUJVRworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9NU0lYCiAjZGVmaW5lIF9fS1ZNX0hBVkVfTUNFCiAjZGVmaW5lIF9fS1ZNX0hBVkVfUElUX1NUQVRFMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9YRU5fSFZNCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0tWTV9IQVZFX1ZDUFVfRVZFTlRTCiAjZGVmaW5lIF9fS1ZNX0hBVkVfREVCVUdSRUdTCiAjZGVmaW5lIF9fS1ZNX0hBVkVfWFNBVkUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fS1ZNX0hBVkVfWENSUworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9SRUFET05MWV9NRU0KICNkZWZpbmUgS1ZNX05SX0lOVEVSUlVQVFMgMjU2CiBzdHJ1Y3Qga3ZtX21lbW9yeV9hbGlhcyB7CisgIF9fdTMyIHNsb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNsb3Q7Ci0gX191MzIgZmxhZ3M7Ci0gX191NjQgZ3Vlc3RfcGh5c19hZGRyOwotIF9fdTY0IG1lbW9yeV9zaXplOworICBfX3UzMiBmbGFnczsKKyAgX191NjQgZ3Vlc3RfcGh5c19hZGRyOworICBfX3U2NCBtZW1vcnlfc2l6ZTsKKyAgX191NjQgdGFyZ2V0X3BoeXNfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdGFyZ2V0X3BoeXNfYWRkcjsKIH07CiBzdHJ1Y3Qga3ZtX3BpY19zdGF0ZSB7Ci0gX191OCBsYXN0X2lycjsKKyAgX191OCBsYXN0X2lycjsKKyAgX191OCBpcnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaXJyOwotIF9fdTggaW1yOwotIF9fdTggaXNyOwotIF9fdTggcHJpb3JpdHlfYWRkOworICBfX3U4IGltcjsKKyAgX191OCBpc3I7CisgIF9fdTggcHJpb3JpdHlfYWRkOworICBfX3U4IGlycV9iYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlycV9iYXNlOwotIF9fdTggcmVhZF9yZWdfc2VsZWN0OwotIF9fdTggcG9sbDsKLSBfX3U4IHNwZWNpYWxfbWFzazsKKyAgX191OCByZWFkX3JlZ19zZWxlY3Q7CisgIF9fdTggcG9sbDsKKyAgX191OCBzcGVjaWFsX21hc2s7CisgIF9fdTggaW5pdF9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbml0X3N0YXRlOwotIF9fdTggYXV0b19lb2k7Ci0gX191OCByb3RhdGVfb25fYXV0b19lb2k7Ci0gX191OCBzcGVjaWFsX2Z1bGx5X25lc3RlZF9tb2RlOworICBfX3U4IGF1dG9fZW9pOworICBfX3U4IHJvdGF0ZV9vbl9hdXRvX2VvaTsKKyAgX191OCBzcGVjaWFsX2Z1bGx5X25lc3RlZF9tb2RlOworICBfX3U4IGluaXQ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGluaXQ0OwotIF9fdTggZWxjcjsKLSBfX3U4IGVsY3JfbWFzazsKKyAgX191OCBlbGNyOworICBfX3U4IGVsY3JfbWFzazsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSU9BUElDX05VTV9QSU5TIDI0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9pb2FwaWNfc3RhdGUgewotIF9fdTY0IGJhc2VfYWRkcmVzczsKLSBfX3UzMiBpb3JlZ3NlbDsKKyAgX191NjQgYmFzZV9hZGRyZXNzOworICBfX3UzMiBpb3JlZ3NlbDsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIGlycjsKLSBfX3UzMiBwYWQ7Ci0gdW5pb24geworICBfX3UzMiBpcnI7CisgIF9fdTMyIHBhZDsKKyAgdW5pb24geworICAgIF9fdTY0IGJpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJpdHM7Ci0gc3RydWN0IHsKLSBfX3U4IHZlY3RvcjsKLSBfX3U4IGRlbGl2ZXJ5X21vZGU6MzsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCB2ZWN0b3I7CisgICAgICBfX3U4IGRlbGl2ZXJ5X21vZGUgOiAzOworICAgICAgX191OCBkZXN0X21vZGUgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRlc3RfbW9kZToxOwotIF9fdTggZGVsaXZlcnlfc3RhdHVzOjE7Ci0gX191OCBwb2xhcml0eToxOwotIF9fdTggcmVtb3RlX2lycjoxOworICAgICAgX191OCBkZWxpdmVyeV9zdGF0dXMgOiAxOworICAgICAgX191OCBwb2xhcml0eSA6IDE7CisgICAgICBfX3U4IHJlbW90ZV9pcnIgOiAxOworICAgICAgX191OCB0cmlnX21vZGUgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRyaWdfbW9kZToxOwotIF9fdTggbWFzazoxOwotIF9fdTggcmVzZXJ2ZTo3OwotIF9fdTggcmVzZXJ2ZWRbNF07CisgICAgICBfX3U4IG1hc2sgOiAxOworICAgICAgX191OCByZXNlcnZlIDogNzsKKyAgICAgIF9fdTggcmVzZXJ2ZWRbNF07CisgICAgICBfX3U4IGRlc3RfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGVzdF9pZDsKLSB9IGZpZWxkczsKLSB9IHJlZGlydGJsW0tWTV9JT0FQSUNfTlVNX1BJTlNdOworICAgIH0gZmllbGRzOworICB9IHJlZGlydGJsW0tWTV9JT0FQSUNfTlVNX1BJTlNdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JUlFDSElQX1BJQ19NQVNURVIgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lSUUNISVBfUElDX1NMQVZFIDEKICNkZWZpbmUgS1ZNX0lSUUNISVBfSU9BUElDIDIKICNkZWZpbmUgS1ZNX05SX0lSUUNISVBTIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3JlZ3MgewotIF9fdTY0IHJheCwgcmJ4LCByY3gsIHJkeDsKLSBfX3U2NCByc2ksIHJkaSwgcnNwLCByYnA7Ci0gX191NjQgcjgsIHI5LCByMTAsIHIxMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcjEyLCByMTMsIHIxNCwgcjE1OwotIF9fdTY0IHJpcCwgcmZsYWdzOworICBfX3U2NCByYXgsIHJieCwgcmN4LCByZHg7CisgIF9fdTY0IHJzaSwgcmRpLCByc3AsIHJicDsKKyAgX191NjQgcjgsIHI5LCByMTAsIHIxMTsKKyAgX191NjQgcjEyLCByMTMsIHIxNCwgcjE1OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcmlwLCByZmxhZ3M7CiB9OwogI2RlZmluZSBLVk1fQVBJQ19SRUdfU0laRSAweDQwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fbGFwaWNfc3RhdGUgewotIGNoYXIgcmVnc1tLVk1fQVBJQ19SRUdfU0laRV07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIHJlZ3NbS1ZNX0FQSUNfUkVHX1NJWkVdOwogfTsKIHN0cnVjdCBrdm1fc2VnbWVudCB7CisgIF9fdTY0IGJhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJhc2U7Ci0gX191MzIgbGltaXQ7Ci0gX191MTYgc2VsZWN0b3I7Ci0gX191OCB0eXBlOworICBfX3UzMiBsaW1pdDsKKyAgX191MTYgc2VsZWN0b3I7CisgIF9fdTggdHlwZTsKKyAgX191OCBwcmVzZW50LCBkcGwsIGRiLCBzLCBsLCBnLCBhdmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJlc2VudCwgZHBsLCBkYiwgcywgbCwgZywgYXZsOwotIF9fdTggdW51c2FibGU7Ci0gX191OCBwYWRkaW5nOworICBfX3U4IHVudXNhYmxlOworICBfX3U4IHBhZGRpbmc7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fZHRhYmxlIHsKLSBfX3U2NCBiYXNlOwotIF9fdTE2IGxpbWl0OwotIF9fdTE2IHBhZGRpbmdbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBiYXNlOworICBfX3UxNiBsaW1pdDsKKyAgX191MTYgcGFkZGluZ1szXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9zcmVncyB7Ci0gc3RydWN0IGt2bV9zZWdtZW50IGNzLCBkcywgZXMsIGZzLCBncywgc3M7Ci0gc3RydWN0IGt2bV9zZWdtZW50IHRyLCBsZHQ7CisgIHN0cnVjdCBrdm1fc2VnbWVudCBjcywgZHMsIGVzLCBmcywgZ3MsIHNzOworICBzdHJ1Y3Qga3ZtX3NlZ21lbnQgdHIsIGxkdDsKKyAgc3RydWN0IGt2bV9kdGFibGUgZ2R0LCBpZHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBrdm1fZHRhYmxlIGdkdCwgaWR0OwotIF9fdTY0IGNyMCwgY3IyLCBjcjMsIGNyNCwgY3I4OwotIF9fdTY0IGVmZXI7Ci0gX191NjQgYXBpY19iYXNlOworICBfX3U2NCBjcjAsIGNyMiwgY3IzLCBjcjQsIGNyODsKKyAgX191NjQgZWZlcjsKKyAgX191NjQgYXBpY19iYXNlOworICBfX3U2NCBpbnRlcnJ1cHRfYml0bWFwWyhLVk1fTlJfSU5URVJSVVBUUyArIDYzKSAvIDY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgaW50ZXJydXB0X2JpdG1hcFsoS1ZNX05SX0lOVEVSUlVQVFMgKyA2MykgLyA2NF07CiB9Owogc3RydWN0IGt2bV9mcHUgewotIF9fdTggZnByWzhdWzE2XTsKKyAgX191OCBmcHJbOF1bMTZdOworICBfX3UxNiBmY3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZjdzsKLSBfX3UxNiBmc3c7Ci0gX191OCBmdHd4OwotIF9fdTggcGFkMTsKKyAgX191MTYgZnN3OworICBfX3U4IGZ0d3g7CisgIF9fdTggcGFkMTsKKyAgX191MTYgbGFzdF9vcGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGxhc3Rfb3Bjb2RlOwotIF9fdTY0IGxhc3RfaXA7Ci0gX191NjQgbGFzdF9kcDsKLSBfX3U4IHhtbVsxNl1bMTZdOworICBfX3U2NCBsYXN0X2lwOworICBfX3U2NCBsYXN0X2RwOworICBfX3U4IHhtbVsxNl1bMTZdOworICBfX3UzMiBteGNzcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbXhjc3I7Ci0gX191MzIgcGFkMjsKKyAgX191MzIgcGFkMjsKIH07CiBzdHJ1Y3Qga3ZtX21zcl9lbnRyeSB7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3UzMiByZXNlcnZlZDsKLSBfX3U2NCBkYXRhOworICBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgZGF0YTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9tc3JzIHsKLSBfX3UzMiBubXNyczsKLSBfX3UzMiBwYWQ7Ci0gc3RydWN0IGt2bV9tc3JfZW50cnkgZW50cmllc1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG5tc3JzOworICBfX3UzMiBwYWQ7CisgIHN0cnVjdCBrdm1fbXNyX2VudHJ5IGVudHJpZXNbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fbXNyX2xpc3QgewotIF9fdTMyIG5tc3JzOwotIF9fdTMyIGluZGljZXNbMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBubXNyczsKKyAgX191MzIgaW5kaWNlc1swXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9jcHVpZF9lbnRyeSB7Ci0gX191MzIgZnVuY3Rpb247Ci0gX191MzIgZWF4OworICBfX3UzMiBmdW5jdGlvbjsKKyAgX191MzIgZWF4OworICBfX3UzMiBlYng7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVieDsKLSBfX3UzMiBlY3g7Ci0gX191MzIgZWR4OwotIF9fdTMyIHBhZGRpbmc7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBlY3g7CisgIF9fdTMyIGVkeDsKKyAgX191MzIgcGFkZGluZzsKIH07Ci1zdHJ1Y3Qga3ZtX2NwdWlkIHsKLSBfX3UzMiBuZW50OwotIF9fdTMyIHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBrdm1fY3B1aWRfZW50cnkgZW50cmllc1swXTsKK3N0cnVjdCBrdm1fY3B1aWQgeworICBfX3UzMiBuZW50OworICBfX3UzMiBwYWRkaW5nOworICBzdHJ1Y3Qga3ZtX2NwdWlkX2VudHJ5IGVudHJpZXNbMF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fY3B1aWRfZW50cnkyIHsKLSBfX3UzMiBmdW5jdGlvbjsKKyAgX191MzIgZnVuY3Rpb247CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBlYXg7Ci0gX191MzIgZWJ4OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgZWF4OworICBfX3UzMiBlYng7CisgIF9fdTMyIGVjeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWN4OwotIF9fdTMyIGVkeDsKLSBfX3UzMiBwYWRkaW5nWzNdOworICBfX3UzMiBlZHg7CisgIF9fdTMyIHBhZGRpbmdbM107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NQVUlEX0ZMQUdfU0lHTklGQ0FOVF9JTkRFWCBCSVQoMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DUFVJRF9GTEFHX1NUQVRFRlVMX0ZVTkMgQklUKDEpCiAjZGVmaW5lIEtWTV9DUFVJRF9GTEFHX1NUQVRFX1JFQURfTkVYVCBCSVQoMikKIHN0cnVjdCBrdm1fY3B1aWQyIHsKKyAgX191MzIgbmVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmVudDsKLSBfX3UzMiBwYWRkaW5nOwotIHN0cnVjdCBrdm1fY3B1aWRfZW50cnkyIGVudHJpZXNbMF07CisgIF9fdTMyIHBhZGRpbmc7CisgIHN0cnVjdCBrdm1fY3B1aWRfZW50cnkyIGVudHJpZXNbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fcGl0X2NoYW5uZWxfc3RhdGUgewotIF9fdTMyIGNvdW50OwotIF9fdTE2IGxhdGNoZWRfY291bnQ7Ci0gX191OCBjb3VudF9sYXRjaGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHN0YXR1c19sYXRjaGVkOwotIF9fdTggc3RhdHVzOwotIF9fdTggcmVhZF9zdGF0ZTsKLSBfX3U4IHdyaXRlX3N0YXRlOworICBfX3UzMiBjb3VudDsKKyAgX191MTYgbGF0Y2hlZF9jb3VudDsKKyAgX191OCBjb3VudF9sYXRjaGVkOworICBfX3U4IHN0YXR1c19sYXRjaGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHdyaXRlX2xhdGNoOwotIF9fdTggcndfbW9kZTsKLSBfX3U4IG1vZGU7Ci0gX191OCBiY2Q7CisgIF9fdTggc3RhdHVzOworICBfX3U4IHJlYWRfc3RhdGU7CisgIF9fdTggd3JpdGVfc3RhdGU7CisgIF9fdTggd3JpdGVfbGF0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ2F0ZTsKLSBfX3M2NCBjb3VudF9sb2FkX3RpbWU7CisgIF9fdTggcndfbW9kZTsKKyAgX191OCBtb2RlOworICBfX3U4IGJjZDsKKyAgX191OCBnYXRlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zNjQgY291bnRfbG9hZF90aW1lOwogfTsKIHN0cnVjdCBrdm1fZGVidWdfZXhpdF9hcmNoIHsKKyAgX191MzIgZXhjZXB0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBleGNlcHRpb247Ci0gX191MzIgcGFkOwotIF9fdTY0IHBjOwotIF9fdTY0IGRyNjsKKyAgX191MzIgcGFkOworICBfX3U2NCBwYzsKKyAgX191NjQgZHI2OworICBfX3U2NCBkcjc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRyNzsKIH07CiAjZGVmaW5lIEtWTV9HVUVTVERCR19VU0VfU1dfQlAgMHgwMDAxMDAwMAogI2RlZmluZSBLVk1fR1VFU1REQkdfVVNFX0hXX0JQIDB4MDAwMjAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HVUVTVERCR19JTkpFQ1RfREIgMHgwMDA0MDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dVRVNUREJHX0lOSkVDVF9CUCAweDAwMDgwMDAwCiBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnX2FyY2ggewotIF9fdTY0IGRlYnVncmVnWzhdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZGVidWdyZWdbOF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fcGl0X3N0YXRlIHsKLSBzdHJ1Y3Qga3ZtX3BpdF9jaGFubmVsX3N0YXRlIGNoYW5uZWxzWzNdOworICBzdHJ1Y3Qga3ZtX3BpdF9jaGFubmVsX3N0YXRlIGNoYW5uZWxzWzNdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9QSVRfRkxBR1NfSFBFVF9MRUdBQ1kgMHgwMDAwMDAwMQotc3RydWN0IGt2bV9waXRfc3RhdGUyIHsKLSBzdHJ1Y3Qga3ZtX3BpdF9jaGFubmVsX3N0YXRlIGNoYW5uZWxzWzNdOwotIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs5XTsKK3N0cnVjdCBrdm1fcGl0X3N0YXRlMiB7CisgIHN0cnVjdCBrdm1fcGl0X2NoYW5uZWxfc3RhdGUgY2hhbm5lbHNbM107CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNlcnZlZFs5XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV9yZWluamVjdF9jb250cm9sIHsKLSBfX3U4IHBpdF9yZWluamVjdDsKKyAgX191OCBwaXRfcmVpbmplY3Q7CisgIF9fdTggcmVzZXJ2ZWRbMzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzMxXTsKIH07CiAjZGVmaW5lIEtWTV9WQ1BVRVZFTlRfVkFMSURfTk1JX1BFTkRJTkcgMHgwMDAwMDAwMQogI2RlZmluZSBLVk1fVkNQVUVWRU5UX1ZBTElEX1NJUElfVkVDVE9SIDB4MDAwMDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WQ1BVRVZFTlRfVkFMSURfU0hBRE9XIDB4MDAwMDAwMDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9YODZfU0hBRE9XX0lOVF9NT1ZfU1MgMHgwMQogI2RlZmluZSBLVk1fWDg2X1NIQURPV19JTlRfU1RJIDB4MDIKIHN0cnVjdCBrdm1fdmNwdV9ldmVudHMgeworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTggaW5qZWN0ZWQ7Ci0gX191OCBucjsKLSBfX3U4IGhhc19lcnJvcl9jb2RlOworICAgIF9fdTggaW5qZWN0ZWQ7CisgICAgX191OCBucjsKKyAgICBfX3U4IGhhc19lcnJvcl9jb2RlOworICAgIF9fdTggcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZDsKLSBfX3UzMiBlcnJvcl9jb2RlOwotIH0gZXhjZXB0aW9uOwotIHN0cnVjdCB7CisgICAgX191MzIgZXJyb3JfY29kZTsKKyAgfSBleGNlcHRpb247CisgIHN0cnVjdCB7CisgICAgX191OCBpbmplY3RlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbmplY3RlZDsKLSBfX3U4IG5yOwotIF9fdTggc29mdDsKLSBfX3U4IHNoYWRvdzsKKyAgICBfX3U4IG5yOworICAgIF9fdTggc29mdDsKKyAgICBfX3U4IHNoYWRvdzsKKyAgfSBpbnRlcnJ1cHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gaW50ZXJydXB0OwotIHN0cnVjdCB7Ci0gX191OCBpbmplY3RlZDsKLSBfX3U4IHBlbmRpbmc7CisgIHN0cnVjdCB7CisgICAgX191OCBpbmplY3RlZDsKKyAgICBfX3U4IHBlbmRpbmc7CisgICAgX191OCBtYXNrZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWFza2VkOwotIF9fdTggcGFkOwotIH0gbm1pOwotIF9fdTMyIHNpcGlfdmVjdG9yOworICAgIF9fdTggcGFkOworICB9IG5taTsKKyAgX191MzIgc2lwaV92ZWN0b3I7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXNlcnZlZFsxMF07CisgIF9fdTMyIHJlc2VydmVkWzEwXTsKIH07CiBzdHJ1Y3Qga3ZtX2RlYnVncmVncyB7CisgIF9fdTY0IGRiWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYls0XTsKLSBfX3U2NCBkcjY7Ci0gX191NjQgZHI3OwotIF9fdTY0IGZsYWdzOworICBfX3U2NCBkcjY7CisgIF9fdTY0IGRyNzsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHJlc2VydmVkWzldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNlcnZlZFs5XTsKIH07CiBzdHJ1Y3Qga3ZtX3hzYXZlIHsKLSBfX3UzMiByZWdpb25bMTAyNF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZWdpb25bMTAyNF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01BWF9YQ1JTIDE2CiBzdHJ1Y3Qga3ZtX3hjciB7Ci0gX191MzIgeGNyOworICBfX3UzMiB4Y3I7CisgIF9fdTMyIHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZDsKLSBfX3U2NCB2YWx1ZTsKKyAgX191NjQgdmFsdWU7CiB9Owogc3RydWN0IGt2bV94Y3JzIHsKKyAgX191MzIgbnJfeGNyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnJfeGNyczsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3Qga3ZtX3hjciB4Y3JzW0tWTV9NQVhfWENSU107Ci0gX191NjQgcGFkZGluZ1sxNl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmbGFnczsKKyAgc3RydWN0IGt2bV94Y3IgeGNyc1tLVk1fTUFYX1hDUlNdOworICBfX3U2NCBwYWRkaW5nWzE2XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9zeW5jX3JlZ3MgewogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtX3BhcmEuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtX3BhcmEuaAppbmRleCA3ZmI1ZWZlLi45NjhkNWJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bV9wYXJhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm1fcGFyYS5oCkBAIC00NiwxNSArNDYsMTUgQEAKICNkZWZpbmUgTVNSX0tWTV9QVl9FT0lfRU4gMHg0YjU2NGQwNAogc3RydWN0IGt2bV9zdGVhbF90aW1lIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RlYWw7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBwYWRbMTJdOworICBfX3U2NCBzdGVhbDsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBhZFsxMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgS1ZNX1NURUFMX0FMSUdOTUVOVF9CSVRTIDUKLSNkZWZpbmUgS1ZNX1NURUFMX1ZBTElEX0JJVFMgKCgtMVVMTCA8PCAoS1ZNX1NURUFMX0FMSUdOTUVOVF9CSVRTICsgMSkpKQotI2RlZmluZSBLVk1fU1RFQUxfUkVTRVJWRURfTUFTSyAoKCgxIDw8IEtWTV9TVEVBTF9BTElHTk1FTlRfQklUUykgLSAxICkgPDwgMSkKKyNkZWZpbmUgS1ZNX1NURUFMX1ZBTElEX0JJVFMgKCgtIDFVTEwgPDwgKEtWTV9TVEVBTF9BTElHTk1FTlRfQklUUyArIDEpKSkKKyNkZWZpbmUgS1ZNX1NURUFMX1JFU0VSVkVEX01BU0sgKCgoMSA8PCBLVk1fU1RFQUxfQUxJR05NRU5UX0JJVFMpIC0gMSkgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9NQVhfTU1VX09QX0JBVENIIDMyCiAjZGVmaW5lIEtWTV9BU1lOQ19QRl9FTkFCTEVEICgxIDw8IDApCkBAIC02NCwzMiArNjQsMzIgQEAKICNkZWZpbmUgS1ZNX01NVV9PUF9GTFVTSF9UTEIgMgogI2RlZmluZSBLVk1fTU1VX09QX1JFTEVBU0VfUFQgMwogc3RydWN0IGt2bV9tbXVfb3BfaGVhZGVyIHsKLSBfX3UzMiBvcDsKKyAgX191MzIgb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZDsKKyAgX191MzIgcGFkOwogfTsKIHN0cnVjdCBrdm1fbW11X29wX3dyaXRlX3B0ZSB7Ci0gc3RydWN0IGt2bV9tbXVfb3BfaGVhZGVyIGhlYWRlcjsKKyAgc3RydWN0IGt2bV9tbXVfb3BfaGVhZGVyIGhlYWRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcHRlX3BoeXM7Ci0gX191NjQgcHRlX3ZhbDsKKyAgX191NjQgcHRlX3BoeXM7CisgIF9fdTY0IHB0ZV92YWw7CiB9Owogc3RydWN0IGt2bV9tbXVfb3BfZmx1c2hfdGxiIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGt2bV9tbXVfb3BfaGVhZGVyIGhlYWRlcjsKKyAgc3RydWN0IGt2bV9tbXVfb3BfaGVhZGVyIGhlYWRlcjsKIH07CiBzdHJ1Y3Qga3ZtX21tdV9vcF9yZWxlYXNlX3B0IHsKLSBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOworICBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwdF9waHlzOworICBfX3U2NCBwdF9waHlzOwogfTsKICNkZWZpbmUgS1ZNX1BWX1JFQVNPTl9QQUdFX05PVF9QUkVTRU5UIDEKICNkZWZpbmUgS1ZNX1BWX1JFQVNPTl9QQUdFX1JFQURZIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3ZjcHVfcHZfYXBmX2RhdGEgewotIF9fdTMyIHJlYXNvbjsKLSBfX3U4IHBhZFs2MF07Ci0gX191MzIgZW5hYmxlZDsKKyAgX191MzIgcmVhc29uOworICBfX3U4IHBhZFs2MF07CisgIF9fdTMyIGVuYWJsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgS1ZNX1BWX0VPSV9CSVQgMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm1fcGVyZi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm1fcGVyZi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzMDFkZTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bV9wZXJmLmgKQEAgLTAsMCArMSwzMSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfQVNNX1g4Nl9LVk1fUEVSRl9ICisjZGVmaW5lIF9BU01fWDg2X0tWTV9QRVJGX0gKKyNpbmNsdWRlIDxhc20vc3ZtLmg+CisjaW5jbHVkZSA8YXNtL3ZteC5oPgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxhc20va3ZtLmg+CisjZGVmaW5lIERFQ09ERV9TVFJfTEVOIDIwCisjZGVmaW5lIFZDUFVfSUQgInZjcHVfaWQiCisjZGVmaW5lIEtWTV9FTlRSWV9UUkFDRSAia3ZtOmt2bV9lbnRyeSIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9FWElUX1RSQUNFICJrdm06a3ZtX2V4aXQiCisjZGVmaW5lIEtWTV9FWElUX1JFQVNPTiAiZXhpdF9yZWFzb24iCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbGR0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2xkdC5oCmluZGV4IGZmODg3NjAuLmM5MDFmZWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbGR0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9sZHQuaApAQCAtMjMsMjAgKzIzLDIwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBfX0FTU0VNQkxZX18KIHN0cnVjdCB1c2VyX2Rlc2MgewotIHVuc2lnbmVkIGludCBlbnRyeV9udW1iZXI7Ci0gdW5zaWduZWQgaW50IGJhc2VfYWRkcjsKKyAgdW5zaWduZWQgaW50IGVudHJ5X251bWJlcjsKKyAgdW5zaWduZWQgaW50IGJhc2VfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxpbWl0OwotIHVuc2lnbmVkIGludCBzZWdfMzJiaXQ6MTsKLSB1bnNpZ25lZCBpbnQgY29udGVudHM6MjsKLSB1bnNpZ25lZCBpbnQgcmVhZF9leGVjX29ubHk6MTsKKyAgdW5zaWduZWQgaW50IGxpbWl0OworICB1bnNpZ25lZCBpbnQgc2VnXzMyYml0IDogMTsKKyAgdW5zaWduZWQgaW50IGNvbnRlbnRzIDogMjsKKyAgdW5zaWduZWQgaW50IHJlYWRfZXhlY19vbmx5IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxpbWl0X2luX3BhZ2VzOjE7Ci0gdW5zaWduZWQgaW50IHNlZ19ub3RfcHJlc2VudDoxOwotIHVuc2lnbmVkIGludCB1c2VhYmxlOjE7CisgIHVuc2lnbmVkIGludCBsaW1pdF9pbl9wYWdlcyA6IDE7CisgIHVuc2lnbmVkIGludCBzZWdfbm90X3ByZXNlbnQgOiAxOworICB1bnNpZ25lZCBpbnQgdXNlYWJsZSA6IDE7CiAjaWZkZWYgX194ODZfNjRfXwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbG06MTsKKyAgdW5zaWduZWQgaW50IGxtIDogMTsKICNlbmRpZgogfTsKICNkZWZpbmUgTU9ESUZZX0xEVF9DT05URU5UU19EQVRBIDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL21jZS5oCmluZGV4IDQ4YzFiMzUuLmRjZTQxOTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tY2UuaApAQCAtMjIsMjkgKzIyLDI5IEBACiAjaW5jbHVkZSA8YXNtL2lvY3Rscy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtY2UgewotIF9fdTY0IHN0YXR1czsKLSBfX3U2NCBtaXNjOwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IHN0YXR1czsKKyAgX191NjQgbWlzYzsKKyAgX191NjQgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWNnc3RhdHVzOwotIF9fdTY0IGlwOwotIF9fdTY0IHRzYzsKLSBfX3U2NCB0aW1lOworICBfX3U2NCBtY2dzdGF0dXM7CisgIF9fdTY0IGlwOworICBfX3U2NCB0c2M7CisgIF9fdTY0IHRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY3B1dmVuZG9yOwotIF9fdTggaW5qZWN0X2ZsYWdzOwotIF9fdTE2IHBhZDsKLSBfX3UzMiBjcHVpZDsKKyAgX191OCBjcHV2ZW5kb3I7CisgIF9fdTggaW5qZWN0X2ZsYWdzOworICBfX3UxNiBwYWQ7CisgIF9fdTMyIGNwdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNzOwotIF9fdTggYmFuazsKLSBfX3U4IGNwdTsKLSBfX3U4IGZpbmlzaGVkOworICBfX3U4IGNzOworICBfX3U4IGJhbms7CisgIF9fdTggY3B1OworICBfX3U4IGZpbmlzaGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBleHRjcHU7Ci0gX191MzIgc29ja2V0aWQ7Ci0gX191MzIgYXBpY2lkOwotIF9fdTY0IG1jZ2NhcDsKKyAgX191MzIgZXh0Y3B1OworICBfX3UzMiBzb2NrZXRpZDsKKyAgX191MzIgYXBpY2lkOworICBfX3U2NCBtY2djYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTUNFX0dFVF9SRUNPUkRfTEVOIF9JT1IoJ00nLCAxLCBpbnQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL21zci1pbmRleC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tc3ItaW5kZXguaAppbmRleCA2ZTRjYWM3Li4yMjFjZWMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL21zci1pbmRleC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbXNyLWluZGV4LmgKQEAgLTM4LDE1ICszOCwxNSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX0VGRVJfTE1TTEUgMTMKICNkZWZpbmUgX0VGRVJfRkZYU1IgMTQKLSNkZWZpbmUgRUZFUl9TQ0UgKDE8PF9FRkVSX1NDRSkKLSNkZWZpbmUgRUZFUl9MTUUgKDE8PF9FRkVSX0xNRSkKKyNkZWZpbmUgRUZFUl9TQ0UgKDEgPDwgX0VGRVJfU0NFKQorI2RlZmluZSBFRkVSX0xNRSAoMSA8PCBfRUZFUl9MTUUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBFRkVSX0xNQSAoMTw8X0VGRVJfTE1BKQotI2RlZmluZSBFRkVSX05YICgxPDxfRUZFUl9OWCkKLSNkZWZpbmUgRUZFUl9TVk1FICgxPDxfRUZFUl9TVk1FKQotI2RlZmluZSBFRkVSX0xNU0xFICgxPDxfRUZFUl9MTVNMRSkKKyNkZWZpbmUgRUZFUl9MTUEgKDEgPDwgX0VGRVJfTE1BKQorI2RlZmluZSBFRkVSX05YICgxIDw8IF9FRkVSX05YKQorI2RlZmluZSBFRkVSX1NWTUUgKDEgPDwgX0VGRVJfU1ZNRSkKKyNkZWZpbmUgRUZFUl9MTVNMRSAoMSA8PCBfRUZFUl9MTVNMRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVGRVJfRkZYU1IgKDE8PF9FRkVSX0ZGWFNSKQorI2RlZmluZSBFRkVSX0ZGWFNSICgxIDw8IF9FRkVSX0ZGWFNSKQogI2RlZmluZSBNU1JfSUEzMl9QRVJGQ1RSMCAweDAwMDAwMGMxCiAjZGVmaW5lIE1TUl9JQTMyX1BFUkZDVFIxIDB4MDAwMDAwYzIKICNkZWZpbmUgTVNSX0ZTQl9GUkVRIDB4MDAwMDAwY2QKQEAgLTE2MiwxNTQgKzE2MiwxNTkgQEAKICNkZWZpbmUgTVNSX1BQMV9QT0xJQ1kgMHgwMDAwMDY0MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0NPUkVfQzFfUkVTIDB4MDAwMDA2NjAKKyNkZWZpbmUgTVNSX0NDNl9ERU1PVElPTl9QT0xJQ1lfQ09ORklHIDB4MDAwMDA2NjgKKyNkZWZpbmUgTVNSX01DNl9ERU1PVElPTl9QT0xJQ1lfQ09ORklHIDB4MDAwMDA2NjkKICNkZWZpbmUgTVNSX0FNRDY0X01DMF9NQVNLIDB4YzAwMTAwNDQKLSNkZWZpbmUgTVNSX0lBMzJfTUN4X0NUTCh4KSAoTVNSX0lBMzJfTUMwX0NUTCArIDQqKHgpKQotI2RlZmluZSBNU1JfSUEzMl9NQ3hfU1RBVFVTKHgpIChNU1JfSUEzMl9NQzBfU1RBVFVTICsgNCooeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfSUEzMl9NQ3hfQUREUih4KSAoTVNSX0lBMzJfTUMwX0FERFIgKyA0Kih4KSkKLSNkZWZpbmUgTVNSX0lBMzJfTUN4X01JU0MoeCkgKE1TUl9JQTMyX01DMF9NSVNDICsgNCooeCkpCisjZGVmaW5lIE1TUl9JQTMyX01DeF9DVEwoeCkgKE1TUl9JQTMyX01DMF9DVEwgKyA0ICogKHgpKQorI2RlZmluZSBNU1JfSUEzMl9NQ3hfU1RBVFVTKHgpIChNU1JfSUEzMl9NQzBfU1RBVFVTICsgNCAqICh4KSkKKyNkZWZpbmUgTVNSX0lBMzJfTUN4X0FERFIoeCkgKE1TUl9JQTMyX01DMF9BRERSICsgNCAqICh4KSkKKyNkZWZpbmUgTVNSX0lBMzJfTUN4X01JU0MoeCkgKE1TUl9JQTMyX01DMF9NSVNDICsgNCAqICh4KSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9NQ3hfTUFTSyh4KSAoTVNSX0FNRDY0X01DMF9NQVNLICsgKHgpKQogI2RlZmluZSBNU1JfSUEzMl9NQzBfQ1RMMiAweDAwMDAwMjgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSUEzMl9NQ3hfQ1RMMih4KSAoTVNSX0lBMzJfTUMwX0NUTDIgKyAoeCkpCiAjZGVmaW5lIE1TUl9QNl9QRVJGQ1RSMCAweDAwMDAwMGMxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfUDZfUEVSRkNUUjEgMHgwMDAwMDBjMgogI2RlZmluZSBNU1JfUDZfRVZOVFNFTDAgMHgwMDAwMDE4NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX1A2X0VWTlRTRUwxIDB4MDAwMDAxODcKICNkZWZpbmUgTVNSX0tOQ19QRVJGQ1RSMCAweDAwMDAwMDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfS05DX1BFUkZDVFIxIDB4MDAwMDAwMjEKICNkZWZpbmUgTVNSX0tOQ19FVk5UU0VMMCAweDAwMDAwMDI4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfS05DX0VWTlRTRUwxIDB4MDAwMDAwMjkKICNkZWZpbmUgTVNSX0lBMzJfUE1DMCAweDAwMDAwNGMxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQU1ENjRfUEFUQ0hfTEVWRUwgMHgwMDAwMDA4YgogI2RlZmluZSBNU1JfQU1ENjRfVFNDX1JBVElPIDB4YzAwMDAxMDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9OQl9DRkcgMHhjMDAxMDAxZgogI2RlZmluZSBNU1JfQU1ENjRfUEFUQ0hfTE9BREVSIDB4YzAwMTAwMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9PU1ZXX0lEX0xFTkdUSCAweGMwMDEwMTQwCiAjZGVmaW5lIE1TUl9BTUQ2NF9PU1ZXX1NUQVRVUyAweGMwMDEwMTQxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQU1ENjRfTFNfQ0ZHIDB4YzAwMTEwMjAKICNkZWZpbmUgTVNSX0FNRDY0X0RDX0NGRyAweGMwMDExMDIyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQU1ENjRfQlVfQ0ZHMiAweGMwMDExMDJhCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSENUTCAweGMwMDExMDMwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQU1ENjRfSUJTRkVUQ0hMSU5BRCAweGMwMDExMDMxCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSFBIWVNBRCAweGMwMDExMDMyCi0jZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSF9SRUdfQ09VTlQgMwotI2RlZmluZSBNU1JfQU1ENjRfSUJTRkVUQ0hfUkVHX01BU0sgKCgxVUw8PE1TUl9BTUQ2NF9JQlNGRVRDSF9SRUdfQ09VTlQpLTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfQU1ENjRfSUJTRkVUQ0hfUkVHX0NPVU5UIDMKKyNkZWZpbmUgTVNSX0FNRDY0X0lCU0ZFVENIX1JFR19NQVNLICgoMVVMIDw8IE1TUl9BTUQ2NF9JQlNGRVRDSF9SRUdfQ09VTlQpIC0gMSkKICNkZWZpbmUgTVNSX0FNRDY0X0lCU09QQ1RMIDB4YzAwMTEwMzMKICNkZWZpbmUgTVNSX0FNRDY0X0lCU09QUklQIDB4YzAwMTEwMzQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNPUERBVEEgMHhjMDAxMTAzNQogI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BEQVRBMiAweGMwMDExMDM2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BEQVRBMyAweGMwMDExMDM3CiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNEQ0xJTkFEIDB4YzAwMTEwMzgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNEQ1BIWVNBRCAweGMwMDExMDM5CiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNPUF9SRUdfQ09VTlQgNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNSX0FNRDY0X0lCU09QX1JFR19NQVNLICgoMVVMPDxNU1JfQU1ENjRfSUJTT1BfUkVHX0NPVU5UKS0xKQorI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BfUkVHX01BU0sgKCgxVUwgPDwgTVNSX0FNRDY0X0lCU09QX1JFR19DT1VOVCkgLSAxKQogI2RlZmluZSBNU1JfQU1ENjRfSUJTQ1RMIDB4YzAwMTEwM2EKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNCUlRBUkdFVCAweGMwMDExMDNiCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNfUkVHX0NPVU5UX01BWCA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfRjE2SF9MMklfUEVSRl9DVEwgMHhjMDAxMDIzMAogI2RlZmluZSBNU1JfRjE2SF9MMklfUEVSRl9DVFIgMHhjMDAxMDIzMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0YxNUhfUEVSRl9DVEwgMHhjMDAxMDIwMAogI2RlZmluZSBNU1JfRjE1SF9QRVJGX0NUUiAweGMwMDEwMjAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfRjE1SF9OQl9QRVJGX0NUTCAweGMwMDEwMjQwCiAjZGVmaW5lIE1TUl9GMTVIX05CX1BFUkZfQ1RSIDB4YzAwMTAyNDEKLSNkZWZpbmUgTVNSX0ZBTTEwSF9NTUlPX0NPTkZfQkFTRSAweGMwMDEwMDU4Ci0jZGVmaW5lIEZBTTEwSF9NTUlPX0NPTkZfRU5BQkxFICgxPDwwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0ZBTTEwSF9NTUlPX0NPTkZfQkFTRSAweGMwMDEwMDU4CisjZGVmaW5lIEZBTTEwSF9NTUlPX0NPTkZfRU5BQkxFICgxIDw8IDApCiAjZGVmaW5lIEZBTTEwSF9NTUlPX0NPTkZfQlVTUkFOR0VfTUFTSyAweGYKICNkZWZpbmUgRkFNMTBIX01NSU9fQ09ORl9CVVNSQU5HRV9TSElGVCAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQU0xMEhfTU1JT19DT05GX0JBU0VfTUFTSyAweGZmZmZmZmZVTEwKICNkZWZpbmUgRkFNMTBIX01NSU9fQ09ORl9CQVNFX1NISUZUIDIwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfRkFNMTBIX05PREVfSUQgMHhjMDAxMTAwYwogI2RlZmluZSBNU1JfSzhfVE9QX01FTTEgMHhjMDAxMDAxYQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s4X1RPUF9NRU0yIDB4YzAwMTAwMWQKICNkZWZpbmUgTVNSX0s4X1NZU0NGRyAweGMwMDEwMDEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzhfSU5UX1BFTkRJTkdfTVNHIDB4YzAwMTAwNTUKICNkZWZpbmUgSzhfSU5UUF9DMUVfQUNUSVZFX01BU0sgMHgxODAwMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s4X1RTRUdfQUREUiAweGMwMDEwMTEyCiAjZGVmaW5lIEs4X01UUlJGSVhSQU5HRV9EUkFNX0VOQUJMRSAweDAwMDQwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLOF9NVFJSRklYUkFOR0VfRFJBTV9NT0RJRlkgMHgwMDA4MDAwMAogI2RlZmluZSBLOF9NVFJSX1JETUVNX1dSTUVNX01BU0sgMHgxODE4MTgxOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s3X0VWTlRTRUwwIDB4YzAwMTAwMDAKICNkZWZpbmUgTVNSX0s3X1BFUkZDVFIwIDB4YzAwMTAwMDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LN19FVk5UU0VMMSAweGMwMDEwMDAxCiAjZGVmaW5lIE1TUl9LN19QRVJGQ1RSMSAweGMwMDEwMDA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzdfRVZOVFNFTDIgMHhjMDAxMDAwMgogI2RlZmluZSBNU1JfSzdfUEVSRkNUUjIgMHhjMDAxMDAwNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s3X0VWTlRTRUwzIDB4YzAwMTAwMDMKICNkZWZpbmUgTVNSX0s3X1BFUkZDVFIzIDB4YzAwMTAwMDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LN19DTEtfQ1RMIDB4YzAwMTAwMWIKICNkZWZpbmUgTVNSX0s3X0hXQ1IgMHhjMDAxMDAxNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s3X0ZJRF9WSURfQ1RMIDB4YzAwMTAwNDEKICNkZWZpbmUgTVNSX0s3X0ZJRF9WSURfU1RBVFVTIDB4YzAwMTAwNDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LNl9XSENSIDB4YzAwMDAwODIKICNkZWZpbmUgTVNSX0s2X1VXQ0NSIDB4YzAwMDAwODUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LNl9FUE1SIDB4YzAwMDAwODYKICNkZWZpbmUgTVNSX0s2X1BTT1IgMHhjMDAwMDA4NworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s2X1BGSVIgMHhjMDAwMDA4OAogI2RlZmluZSBNU1JfSURUX0ZDUjEgMHgwMDAwMDEwNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lEVF9GQ1IyIDB4MDAwMDAxMDgKICNkZWZpbmUgTVNSX0lEVF9GQ1IzIDB4MDAwMDAxMDkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JRFRfRkNSNCAweDAwMDAwMTBhCiAjZGVmaW5lIE1TUl9JRFRfTUNSMCAweDAwMDAwMTEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSURUX01DUjEgMHgwMDAwMDExMQogI2RlZmluZSBNU1JfSURUX01DUjIgMHgwMDAwMDExMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lEVF9NQ1IzIDB4MDAwMDAxMTMKICNkZWZpbmUgTVNSX0lEVF9NQ1I0IDB4MDAwMDAxMTQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JRFRfTUNSNSAweDAwMDAwMTE1CiAjZGVmaW5lIE1TUl9JRFRfTUNSNiAweDAwMDAwMTE2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSURUX01DUjcgMHgwMDAwMDExNwogI2RlZmluZSBNU1JfSURUX01DUl9DVFJMIDB4MDAwMDAxMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9WSUFfRkNSIDB4MDAwMDExMDcKICNkZWZpbmUgTVNSX1ZJQV9MT05HSEFVTCAweDAwMDAxMTBhCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfVklBX1JORyAweDAwMDAxMTBiCiAjZGVmaW5lIE1TUl9WSUFfQkNSMiAweDAwMDAxMTQ3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfVE1UQV9MT05HUlVOX0NUUkwgMHg4MDg2ODAxMAogI2RlZmluZSBNU1JfVE1UQV9MT05HUlVOX0ZMQUdTIDB4ODA4NjgwMTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9UTVRBX0xSVElfUkVBRE9VVCAweDgwODY4MDE4CiAjZGVmaW5lIE1TUl9UTVRBX0xSVElfVk9MVF9NSFogMHg4MDg2ODAxYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfUDVfTUNfQUREUiAweDAwMDAwMDAwCiAjZGVmaW5lIE1TUl9JQTMyX1A1X01DX1RZUEUgMHgwMDAwMDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfVFNDIDB4MDAwMDAwMTAKICNkZWZpbmUgTVNSX0lBMzJfUExBVEZPUk1fSUQgMHgwMDAwMDAxNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfRUJMX0NSX1BPV0VST04gMHgwMDAwMDAyYQogI2RlZmluZSBNU1JfRUJDX0ZSRVFVRU5DWV9JRCAweDAwMDAwMDJjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfU01JX0NPVU5UIDB4MDAwMDAwMzQKICNkZWZpbmUgTVNSX0lBMzJfRkVBVFVSRV9DT05UUk9MIDB4MDAwMDAwM2EKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JQTMyX1RTQ19BREpVU1QgMHgwMDAwMDAzYgotI2RlZmluZSBGRUFUVVJFX0NPTlRST0xfTE9DS0VEICgxPDwwKQotI2RlZmluZSBGRUFUVVJFX0NPTlRST0xfVk1YT05fRU5BQkxFRF9JTlNJREVfU01YICgxPDwxKQotI2RlZmluZSBGRUFUVVJFX0NPTlRST0xfVk1YT05fRU5BQkxFRF9PVVRTSURFX1NNWCAoMTw8MikKKyNkZWZpbmUgTVNSX0lBMzJfQk5EQ0ZHUyAweDAwMDAwZDkwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9YU1MgMHgwMDAwMGRhMAorI2RlZmluZSBGRUFUVVJFX0NPTlRST0xfTE9DS0VEICgxIDw8IDApCisjZGVmaW5lIEZFQVRVUkVfQ09OVFJPTF9WTVhPTl9FTkFCTEVEX0lOU0lERV9TTVggKDEgPDwgMSkKKyNkZWZpbmUgRkVBVFVSRV9DT05UUk9MX1ZNWE9OX0VOQUJMRURfT1VUU0lERV9TTVggKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JQTMyX0FQSUNCQVNFIDB4MDAwMDAwMWIKLSNkZWZpbmUgTVNSX0lBMzJfQVBJQ0JBU0VfQlNQICgxPDw4KQotI2RlZmluZSBNU1JfSUEzMl9BUElDQkFTRV9FTkFCTEUgKDE8PDExKQotI2RlZmluZSBNU1JfSUEzMl9BUElDQkFTRV9CQVNFICgweGZmZmZmPDwxMikKKyNkZWZpbmUgTVNSX0lBMzJfQVBJQ0JBU0VfQlNQICgxIDw8IDgpCisjZGVmaW5lIE1TUl9JQTMyX0FQSUNCQVNFX0VOQUJMRSAoMSA8PCAxMSkKKyNkZWZpbmUgTVNSX0lBMzJfQVBJQ0JBU0VfQkFTRSAoMHhmZmZmZiA8PCAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JQTMyX1RTQ0RFQURMSU5FIDB4MDAwMDA2ZTAKICNkZWZpbmUgTVNSX0lBMzJfVUNPREVfV1JJVEUgMHgwMDAwMDA3OQpAQCAtMzY0LDIwMSArMzY5LDIzMyBAQAogI2RlZmluZSBUSEVSTV9MT0dfVEhSRVNIT0xEMCAoMSA8PCA3KQogI2RlZmluZSBUSEVSTV9TVEFUVVNfVEhSRVNIT0xEMSAoMSA8PCA4KQogI2RlZmluZSBUSEVSTV9MT0dfVEhSRVNIT0xEMSAoMSA8PCA5KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GQVNUX1NUUklORyAoMVVMTCA8PCAwKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GQVNUX1NUUklOR19CSVQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVENDICgxVUxMIDw8IDEpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0VNT04gKDFVTEwgPDwgNykKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQlRTX1VOQVZBSUwgKDFVTEwgPDwgMTEpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1BFQlNfVU5BVkFJTCAoMVVMTCA8PCAxMikKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkFTVF9TVFJJTkcgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkFTVF9TVFJJTkdfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UQ0NfQklUIDEKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVENDICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1RDQ19CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0VNT05fQklUIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0VOSEFOQ0VEX1NQRUVEU1RFUCAoMVVMTCA8PCAxNikKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTVdBSVQgKDFVTEwgPDwgMTgpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0xJTUlUX0NQVUlEICgxVUxMIDw8IDIyKQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YVFBSX0RJU0FCTEUgKDFVTEwgPDwgMjMpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0VNT04gKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU1PTl9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0JUU19VTkFWQUlMX0JJVCAxMQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9CVFNfVU5BVkFJTCAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9CVFNfVU5BVkFJTF9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1BFQlNfVU5BVkFJTF9CSVQgMTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1hEX0RJU0FCTEUgKDFVTEwgPDwgMzQpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1g4N19DT01QQVQgKDFVTEwgPDwgMikKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0xICgxVUxMIDw8IDMpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1NQTElUX0xPQ0tfRElTQUJMRSAoMVVMTCA8PCA0KQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9QRUJTX1VOQVZBSUwgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfUEVCU19VTkFWQUlMX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU5IQU5DRURfU1BFRURTVEVQX0JJVCAxNgorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9FTkhBTkNFRF9TUEVFRFNURVAgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU5IQU5DRURfU1BFRURTVEVQX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTVdBSVRfQklUIDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MM0NBQ0hFX0RJU0FCTEUgKDFVTEwgPDwgNikKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1VQUFJFU1NfTE9DSyAoMVVMTCA8PCA4KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9QUkVGRVRDSF9ESVNBQkxFICgxVUxMIDw8IDkpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZFUlIgKDFVTEwgPDwgMTApCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX01XQUlUICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX01XQUlUX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTElNSVRfQ1BVSURfQklUIDIyCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0xJTUlUX0NQVUlEICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0xJTUlUX0NQVUlEX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWFRQUl9ESVNBQkxFX0JJVCAyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUl9NVUxUSVBMRVggKDFVTEwgPDwgMTApCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1RNMiAoMVVMTCA8PCAxMykKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQURKX1BSRUZfRElTQUJMRSAoMVVMTCA8PCAxOSkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BFRURTVEVQX0xPQ0sgKDFVTEwgPDwgMjApCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1hUUFJfRElTQUJMRSAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YVFBSX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YRF9ESVNBQkxFX0JJVCAzNAorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YRF9ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1hEX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YODdfQ09NUEFUX0JJVCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MMURfQ09OVEVYVCAoMVVMTCA8PCAyNCkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRENVX1BSRUZfRElTQUJMRSAoMVVMTCA8PCAzNykKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVFVSQk9fRElTQUJMRSAoMVVMTCA8PCAzOCkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfSVBfUFJFRl9ESVNBQkxFICgxVUxMIDw8IDM5KQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YODdfQ09NUEFUICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1g4N19DT01QQVRfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UTTFfQklUIDMKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0xICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1RNMV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1NQTElUX0xPQ0tfRElTQUJMRV9CSVQgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BMSVRfTE9DS19ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1NQTElUX0xPQ0tfRElTQUJMRV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0wzQ0FDSEVfRElTQUJMRV9CSVQgNgorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MM0NBQ0hFX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTDNDQUNIRV9ESVNBQkxFX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1VQUFJFU1NfTE9DS19CSVQgOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1VQUFJFU1NfTE9DSyAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TVVBQUkVTU19MT0NLX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfUFJFRkVUQ0hfRElTQUJMRV9CSVQgOQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9QUkVGRVRDSF9ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1BSRUZFVENIX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GRVJSX0JJVCAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUiAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GRVJSX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUl9NVUxUSVBMRVhfQklUIDEwCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZFUlJfTVVMVElQTEVYICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZFUlJfTVVMVElQTEVYX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0yX0JJVCAxMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0yICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1RNMl9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0FESl9QUkVGX0RJU0FCTEVfQklUIDE5CisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0FESl9QUkVGX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQURKX1BSRUZfRElTQUJMRV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1NQRUVEU1RFUF9MT0NLX0JJVCAyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BFRURTVEVQX0xPQ0sgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BFRURTVEVQX0xPQ0tfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MMURfQ09OVEVYVF9CSVQgMjQKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTDFEX0NPTlRFWFQgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTDFEX0NPTlRFWFRfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9EQ1VfUFJFRl9ESVNBQkxFX0JJVCAzNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRENVX1BSRUZfRElTQUJMRSAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9EQ1VfUFJFRl9ESVNBQkxFX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVFVSQk9fRElTQUJMRV9CSVQgMzgKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVFVSQk9fRElTQUJMRSAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UVVJCT19ESVNBQkxFX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfSVBfUFJFRl9ESVNBQkxFX0JJVCAzOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfSVBfUFJFRl9ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0lQX1BSRUZfRElTQUJMRV9CSVQpCiAjZGVmaW5lIE1TUl9JQTMyX1RTQ19ERUFETElORSAweDAwMDAwNkUwCiAjZGVmaW5lIE1TUl9JQTMyX01DR19FQVggMHgwMDAwMDE4MAogI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUJYIDB4MDAwMDAxODEKLSNkZWZpbmUgTVNSX0lBMzJfTUNHX0VDWCAweDAwMDAwMTgyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUNYIDB4MDAwMDAxODIKICNkZWZpbmUgTVNSX0lBMzJfTUNHX0VEWCAweDAwMDAwMTgzCiAjZGVmaW5lIE1TUl9JQTMyX01DR19FU0kgMHgwMDAwMDE4NAogI2RlZmluZSBNU1JfSUEzMl9NQ0dfRURJIDB4MDAwMDAxODUKLSNkZWZpbmUgTVNSX0lBMzJfTUNHX0VCUCAweDAwMDAwMTg2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUJQIDB4MDAwMDAxODYKICNkZWZpbmUgTVNSX0lBMzJfTUNHX0VTUCAweDAwMDAwMTg3CiAjZGVmaW5lIE1TUl9JQTMyX01DR19FRkxBR1MgMHgwMDAwMDE4OAogI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUlQIDB4MDAwMDAxODkKLSNkZWZpbmUgTVNSX0lBMzJfTUNHX1JFU0VSVkVEIDB4MDAwMDAxOGEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX01DR19SRVNFUlZFRCAweDAwMDAwMThhCiAjZGVmaW5lIE1TUl9QNF9CUFVfUEVSRkNUUjAgMHgwMDAwMDMwMAogI2RlZmluZSBNU1JfUDRfQlBVX1BFUkZDVFIxIDB4MDAwMDAzMDEKICNkZWZpbmUgTVNSX1A0X0JQVV9QRVJGQ1RSMiAweDAwMDAwMzAyCi0jZGVmaW5lIE1TUl9QNF9CUFVfUEVSRkNUUjMgMHgwMDAwMDMwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0JQVV9QRVJGQ1RSMyAweDAwMDAwMzAzCiAjZGVmaW5lIE1TUl9QNF9NU19QRVJGQ1RSMCAweDAwMDAwMzA0CiAjZGVmaW5lIE1TUl9QNF9NU19QRVJGQ1RSMSAweDAwMDAwMzA1CiAjZGVmaW5lIE1TUl9QNF9NU19QRVJGQ1RSMiAweDAwMDAwMzA2Ci0jZGVmaW5lIE1TUl9QNF9NU19QRVJGQ1RSMyAweDAwMDAwMzA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfTVNfUEVSRkNUUjMgMHgwMDAwMDMwNwogI2RlZmluZSBNU1JfUDRfRkxBTUVfUEVSRkNUUjAgMHgwMDAwMDMwOAogI2RlZmluZSBNU1JfUDRfRkxBTUVfUEVSRkNUUjEgMHgwMDAwMDMwOQogI2RlZmluZSBNU1JfUDRfRkxBTUVfUEVSRkNUUjIgMHgwMDAwMDMwYQotI2RlZmluZSBNU1JfUDRfRkxBTUVfUEVSRkNUUjMgMHgwMDAwMDMwYgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0ZMQU1FX1BFUkZDVFIzIDB4MDAwMDAzMGIKICNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFIwIDB4MDAwMDAzMGMKICNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFIxIDB4MDAwMDAzMGQKICNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFIyIDB4MDAwMDAzMGUKLSNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFIzIDB4MDAwMDAzMGYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9JUV9QRVJGQ1RSMyAweDAwMDAwMzBmCiAjZGVmaW5lIE1TUl9QNF9JUV9QRVJGQ1RSNCAweDAwMDAwMzEwCiAjZGVmaW5lIE1TUl9QNF9JUV9QRVJGQ1RSNSAweDAwMDAwMzExCiAjZGVmaW5lIE1TUl9QNF9CUFVfQ0NDUjAgMHgwMDAwMDM2MAotI2RlZmluZSBNU1JfUDRfQlBVX0NDQ1IxIDB4MDAwMDAzNjEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9CUFVfQ0NDUjEgMHgwMDAwMDM2MQogI2RlZmluZSBNU1JfUDRfQlBVX0NDQ1IyIDB4MDAwMDAzNjIKICNkZWZpbmUgTVNSX1A0X0JQVV9DQ0NSMyAweDAwMDAwMzYzCiAjZGVmaW5lIE1TUl9QNF9NU19DQ0NSMCAweDAwMDAwMzY0Ci0jZGVmaW5lIE1TUl9QNF9NU19DQ0NSMSAweDAwMDAwMzY1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfTVNfQ0NDUjEgMHgwMDAwMDM2NQogI2RlZmluZSBNU1JfUDRfTVNfQ0NDUjIgMHgwMDAwMDM2NgogI2RlZmluZSBNU1JfUDRfTVNfQ0NDUjMgMHgwMDAwMDM2NwogI2RlZmluZSBNU1JfUDRfRkxBTUVfQ0NDUjAgMHgwMDAwMDM2OAotI2RlZmluZSBNU1JfUDRfRkxBTUVfQ0NDUjEgMHgwMDAwMDM2OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0ZMQU1FX0NDQ1IxIDB4MDAwMDAzNjkKICNkZWZpbmUgTVNSX1A0X0ZMQU1FX0NDQ1IyIDB4MDAwMDAzNmEKICNkZWZpbmUgTVNSX1A0X0ZMQU1FX0NDQ1IzIDB4MDAwMDAzNmIKICNkZWZpbmUgTVNSX1A0X0lRX0NDQ1IwIDB4MDAwMDAzNmMKLSNkZWZpbmUgTVNSX1A0X0lRX0NDQ1IxIDB4MDAwMDAzNmQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9JUV9DQ0NSMSAweDAwMDAwMzZkCiAjZGVmaW5lIE1TUl9QNF9JUV9DQ0NSMiAweDAwMDAwMzZlCiAjZGVmaW5lIE1TUl9QNF9JUV9DQ0NSMyAweDAwMDAwMzZmCiAjZGVmaW5lIE1TUl9QNF9JUV9DQ0NSNCAweDAwMDAwMzcwCi0jZGVmaW5lIE1TUl9QNF9JUV9DQ0NSNSAweDAwMDAwMzcxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfSVFfQ0NDUjUgMHgwMDAwMDM3MQogI2RlZmluZSBNU1JfUDRfQUxGX0VTQ1IwIDB4MDAwMDAzY2EKICNkZWZpbmUgTVNSX1A0X0FMRl9FU0NSMSAweDAwMDAwM2NiCiAjZGVmaW5lIE1TUl9QNF9CUFVfRVNDUjAgMHgwMDAwMDNiMgotI2RlZmluZSBNU1JfUDRfQlBVX0VTQ1IxIDB4MDAwMDAzYjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9CUFVfRVNDUjEgMHgwMDAwMDNiMwogI2RlZmluZSBNU1JfUDRfQlNVX0VTQ1IwIDB4MDAwMDAzYTAKICNkZWZpbmUgTVNSX1A0X0JTVV9FU0NSMSAweDAwMDAwM2ExCiAjZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjAgMHgwMDAwMDNiOAotI2RlZmluZSBNU1JfUDRfQ1JVX0VTQ1IxIDB4MDAwMDAzYjkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjEgMHgwMDAwMDNiOQogI2RlZmluZSBNU1JfUDRfQ1JVX0VTQ1IyIDB4MDAwMDAzY2MKICNkZWZpbmUgTVNSX1A0X0NSVV9FU0NSMyAweDAwMDAwM2NkCiAjZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjQgMHgwMDAwMDNlMAotI2RlZmluZSBNU1JfUDRfQ1JVX0VTQ1I1IDB4MDAwMDAzZTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjUgMHgwMDAwMDNlMQogI2RlZmluZSBNU1JfUDRfREFDX0VTQ1IwIDB4MDAwMDAzYTgKICNkZWZpbmUgTVNSX1A0X0RBQ19FU0NSMSAweDAwMDAwM2E5CiAjZGVmaW5lIE1TUl9QNF9GSVJNX0VTQ1IwIDB4MDAwMDAzYTQKLSNkZWZpbmUgTVNSX1A0X0ZJUk1fRVNDUjEgMHgwMDAwMDNhNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0ZJUk1fRVNDUjEgMHgwMDAwMDNhNQogI2RlZmluZSBNU1JfUDRfRkxBTUVfRVNDUjAgMHgwMDAwMDNhNgogI2RlZmluZSBNU1JfUDRfRkxBTUVfRVNDUjEgMHgwMDAwMDNhNwogI2RlZmluZSBNU1JfUDRfRlNCX0VTQ1IwIDB4MDAwMDAzYTIKLSNkZWZpbmUgTVNSX1A0X0ZTQl9FU0NSMSAweDAwMDAwM2EzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfRlNCX0VTQ1IxIDB4MDAwMDAzYTMKICNkZWZpbmUgTVNSX1A0X0lRX0VTQ1IwIDB4MDAwMDAzYmEKICNkZWZpbmUgTVNSX1A0X0lRX0VTQ1IxIDB4MDAwMDAzYmIKICNkZWZpbmUgTVNSX1A0X0lTX0VTQ1IwIDB4MDAwMDAzYjQKLSNkZWZpbmUgTVNSX1A0X0lTX0VTQ1IxIDB4MDAwMDAzYjUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9JU19FU0NSMSAweDAwMDAwM2I1CiAjZGVmaW5lIE1TUl9QNF9JVExCX0VTQ1IwIDB4MDAwMDAzYjYKICNkZWZpbmUgTVNSX1A0X0lUTEJfRVNDUjEgMHgwMDAwMDNiNwogI2RlZmluZSBNU1JfUDRfSVhfRVNDUjAgMHgwMDAwMDNjOAotI2RlZmluZSBNU1JfUDRfSVhfRVNDUjEgMHgwMDAwMDNjOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0lYX0VTQ1IxIDB4MDAwMDAzYzkKICNkZWZpbmUgTVNSX1A0X01PQl9FU0NSMCAweDAwMDAwM2FhCiAjZGVmaW5lIE1TUl9QNF9NT0JfRVNDUjEgMHgwMDAwMDNhYgogI2RlZmluZSBNU1JfUDRfTVNfRVNDUjAgMHgwMDAwMDNjMAotI2RlZmluZSBNU1JfUDRfTVNfRVNDUjEgMHgwMDAwMDNjMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X01TX0VTQ1IxIDB4MDAwMDAzYzEKICNkZWZpbmUgTVNSX1A0X1BNSF9FU0NSMCAweDAwMDAwM2FjCiAjZGVmaW5lIE1TUl9QNF9QTUhfRVNDUjEgMHgwMDAwMDNhZAogI2RlZmluZSBNU1JfUDRfUkFUX0VTQ1IwIDB4MDAwMDAzYmMKLSNkZWZpbmUgTVNSX1A0X1JBVF9FU0NSMSAweDAwMDAwM2JkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfUkFUX0VTQ1IxIDB4MDAwMDAzYmQKICNkZWZpbmUgTVNSX1A0X1NBQVRfRVNDUjAgMHgwMDAwMDNhZQogI2RlZmluZSBNU1JfUDRfU0FBVF9FU0NSMSAweDAwMDAwM2FmCiAjZGVmaW5lIE1TUl9QNF9TU1VfRVNDUjAgMHgwMDAwMDNiZQotI2RlZmluZSBNU1JfUDRfU1NVX0VTQ1IxIDB4MDAwMDAzYmYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9TU1VfRVNDUjEgMHgwMDAwMDNiZgogI2RlZmluZSBNU1JfUDRfVEJQVV9FU0NSMCAweDAwMDAwM2MyCiAjZGVmaW5lIE1TUl9QNF9UQlBVX0VTQ1IxIDB4MDAwMDAzYzMKICNkZWZpbmUgTVNSX1A0X1RDX0VTQ1IwIDB4MDAwMDAzYzQKLSNkZWZpbmUgTVNSX1A0X1RDX0VTQ1IxIDB4MDAwMDAzYzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9UQ19FU0NSMSAweDAwMDAwM2M1CiAjZGVmaW5lIE1TUl9QNF9VMkxfRVNDUjAgMHgwMDAwMDNiMAogI2RlZmluZSBNU1JfUDRfVTJMX0VTQ1IxIDB4MDAwMDAzYjEKICNkZWZpbmUgTVNSX1A0X1BFQlNfTUFUUklYX1ZFUlQgMHgwMDAwMDNmMgotI2RlZmluZSBNU1JfQ09SRV9QRVJGX0ZJWEVEX0NUUjAgMHgwMDAwMDMwOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0NPUkVfUEVSRl9GSVhFRF9DVFIwIDB4MDAwMDAzMDkKICNkZWZpbmUgTVNSX0NPUkVfUEVSRl9GSVhFRF9DVFIxIDB4MDAwMDAzMGEKICNkZWZpbmUgTVNSX0NPUkVfUEVSRl9GSVhFRF9DVFIyIDB4MDAwMDAzMGIKICNkZWZpbmUgTVNSX0NPUkVfUEVSRl9GSVhFRF9DVFJfQ1RSTCAweDAwMDAwMzhkCi0jZGVmaW5lIE1TUl9DT1JFX1BFUkZfR0xPQkFMX1NUQVRVUyAweDAwMDAwMzhlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfQ09SRV9QRVJGX0dMT0JBTF9TVEFUVVMgMHgwMDAwMDM4ZQogI2RlZmluZSBNU1JfQ09SRV9QRVJGX0dMT0JBTF9DVFJMIDB4MDAwMDAzOGYKICNkZWZpbmUgTVNSX0NPUkVfUEVSRl9HTE9CQUxfT1ZGX0NUUkwgMHgwMDAwMDM5MAogI2RlZmluZSBNU1JfR0VPREVfQlVTQ09OVF9DT05GMCAweDAwMDAxOTAwCi0jZGVmaW5lIE1TUl9JQTMyX1ZNWF9CQVNJQyAweDAwMDAwNDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9WTVhfQkFTSUMgMHgwMDAwMDQ4MAogI2RlZmluZSBNU1JfSUEzMl9WTVhfUElOQkFTRURfQ1RMUyAweDAwMDAwNDgxCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9QUk9DQkFTRURfQ1RMUyAweDAwMDAwNDgyCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9FWElUX0NUTFMgMHgwMDAwMDQ4MwotI2RlZmluZSBNU1JfSUEzMl9WTVhfRU5UUllfQ1RMUyAweDAwMDAwNDg0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9WTVhfRU5UUllfQ1RMUyAweDAwMDAwNDg0CiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9NSVNDIDB4MDAwMDA0ODUKICNkZWZpbmUgTVNSX0lBMzJfVk1YX0NSMF9GSVhFRDAgMHgwMDAwMDQ4NgogI2RlZmluZSBNU1JfSUEzMl9WTVhfQ1IwX0ZJWEVEMSAweDAwMDAwNDg3Ci0jZGVmaW5lIE1TUl9JQTMyX1ZNWF9DUjRfRklYRUQwIDB4MDAwMDA0ODgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX1ZNWF9DUjRfRklYRUQwIDB4MDAwMDA0ODgKICNkZWZpbmUgTVNSX0lBMzJfVk1YX0NSNF9GSVhFRDEgMHgwMDAwMDQ4OQogI2RlZmluZSBNU1JfSUEzMl9WTVhfVk1DU19FTlVNIDB4MDAwMDA0OGEKICNkZWZpbmUgTVNSX0lBMzJfVk1YX1BST0NCQVNFRF9DVExTMiAweDAwMDAwNDhiCi0jZGVmaW5lIE1TUl9JQTMyX1ZNWF9FUFRfVlBJRF9DQVAgMHgwMDAwMDQ4YwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfVk1YX0VQVF9WUElEX0NBUCAweDAwMDAwNDhjCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9UUlVFX1BJTkJBU0VEX0NUTFMgMHgwMDAwMDQ4ZAogI2RlZmluZSBNU1JfSUEzMl9WTVhfVFJVRV9QUk9DQkFTRURfQ1RMUyAweDAwMDAwNDhlCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9UUlVFX0VYSVRfQ1RMUyAweDAwMDAwNDhmCi0jZGVmaW5lIE1TUl9JQTMyX1ZNWF9UUlVFX0VOVFJZX0NUTFMgMHgwMDAwMDQ5MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfVk1YX1RSVUVfRU5UUllfQ1RMUyAweDAwMDAwNDkwCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9WTUZVTkMgMHgwMDAwMDQ5MQogI2RlZmluZSBWTVhfQkFTSUNfVk1DU19TSVpFX1NISUZUIDMyCisjZGVmaW5lIFZNWF9CQVNJQ19UUlVFX0NUTFMgKDFVTEwgPDwgNTUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWTVhfQkFTSUNfNjQgMHgwMDAxMDAwMDAwMDAwMDAwTExVCiAjZGVmaW5lIFZNWF9CQVNJQ19NRU1fVFlQRV9TSElGVCA1MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVk1YX0JBU0lDX01FTV9UWVBFX01BU0sgMHgwMDNjMDAwMDAwMDAwMDAwTExVCiAjZGVmaW5lIFZNWF9CQVNJQ19NRU1fVFlQRV9XQiA2TExVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWTVhfQkFTSUNfSU5PVVQgMHgwMDQwMDAwMDAwMDAwMDAwTExVCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9NSVNDX1ZNV1JJVEVfU0hBRE9XX1JPX0ZJRUxEUyAoMVVMTCA8PCAyOSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9NSVNDX1BSRUVNUFRJT05fVElNRVJfU0NBTEUgMHgxRgogI2RlZmluZSBNU1JfVk1fQ1IgMHhjMDAxMDExNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX1ZNX0lHTk5FIDB4YzAwMTAxMTUKICNkZWZpbmUgTVNSX1ZNX0hTQVZFX1BBIDB4YzAwMTAxMTcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbXRyci5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tdHJyLmgKaW5kZXggMWZkMTAxYy4uMTM1ZmEzMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tdHJyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tdHJyLmgKQEAgLTI2LDU0ICsyNiw1NCBAQAogI2lmZGVmIF9faTM4Nl9fCiBzdHJ1Y3QgbXRycl9zZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGJhc2U7Ci0gdW5zaWduZWQgaW50IHNpemU7Ci0gdW5zaWduZWQgaW50IHR5cGU7CisgIHVuc2lnbmVkIGxvbmcgYmFzZTsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCB0eXBlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXRycl9nZW50cnkgewotIHVuc2lnbmVkIGludCByZWdudW07Ci0gdW5zaWduZWQgbG9uZyBiYXNlOwotIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgcmVnbnVtOworICB1bnNpZ25lZCBsb25nIGJhc2U7CisgIHVuc2lnbmVkIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgaW50IHR5cGU7CiB9OwogI2Vsc2UKIHN0cnVjdCBtdHJyX3NlbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJhc2U7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiB0eXBlOworICBfX3U2NCBiYXNlOworICBfX3UzMiBzaXplOworICBfX3UzMiB0eXBlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXRycl9nZW50cnkgewotIF9fdTY0IGJhc2U7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiByZWdudW07CisgIF9fdTY0IGJhc2U7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIHJlZ251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBfcGFkOworICBfX3UzMiB0eXBlOworICBfX3UzMiBfcGFkOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtdHJyX3Zhcl9yYW5nZSB7Ci0gX191MzIgYmFzZV9sbzsKLSBfX3UzMiBiYXNlX2hpOwotIF9fdTMyIG1hc2tfbG87CisgIF9fdTMyIGJhc2VfbG87CisgIF9fdTMyIGJhc2VfaGk7CisgIF9fdTMyIG1hc2tfbG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hc2tfaGk7CisgIF9fdTMyIG1hc2tfaGk7CiB9OwogdHlwZWRlZiBfX3U4IG10cnJfdHlwZTsKICNkZWZpbmUgTVRSUl9OVU1fRklYRURfUkFOR0VTIDg4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVFJSX01BWF9WQVJfUkFOR0VTIDI1Ngogc3RydWN0IG10cnJfc3RhdGVfdHlwZSB7Ci0gc3RydWN0IG10cnJfdmFyX3JhbmdlIHZhcl9yYW5nZXNbTVRSUl9NQVhfVkFSX1JBTkdFU107Ci0gbXRycl90eXBlIGZpeGVkX3Jhbmdlc1tNVFJSX05VTV9GSVhFRF9SQU5HRVNdOworICBzdHJ1Y3QgbXRycl92YXJfcmFuZ2UgdmFyX3Jhbmdlc1tNVFJSX01BWF9WQVJfUkFOR0VTXTsKKyAgbXRycl90eXBlIGZpeGVkX3Jhbmdlc1tNVFJSX05VTV9GSVhFRF9SQU5HRVNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGVuYWJsZWQ7Ci0gdW5zaWduZWQgY2hhciBoYXZlX2ZpeGVkOwotIG10cnJfdHlwZSBkZWZfdHlwZTsKKyAgdW5zaWduZWQgY2hhciBlbmFibGVkOworICB1bnNpZ25lZCBjaGFyIGhhdmVfZml4ZWQ7CisgIG10cnJfdHlwZSBkZWZfdHlwZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVFJScGh5c0Jhc2VfTVNSKHJlZykgKDB4MjAwICsgMiAqIChyZWcpKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wZXJmX3JlZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcGVyZl9yZWdzLmgKaW5kZXggNjFkYjRlMC4uYTY1MTkxOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wZXJmX3JlZ3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3BlcmZfcmVncy5oCkBAIC0xOSwzOCArMTksMzggQEAKICNpZm5kZWYgX0FTTV9YODZfUEVSRl9SRUdTX0gKICNkZWZpbmUgX0FTTV9YODZfUEVSRl9SRUdTX0gKIGVudW0gcGVyZl9ldmVudF94ODZfcmVncyB7Ci0gUEVSRl9SRUdfWDg2X0FYLAorICBQRVJGX1JFR19YODZfQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX1g4Nl9CWCwKLSBQRVJGX1JFR19YODZfQ1gsCi0gUEVSRl9SRUdfWDg2X0RYLAotIFBFUkZfUkVHX1g4Nl9TSSwKKyAgUEVSRl9SRUdfWDg2X0JYLAorICBQRVJGX1JFR19YODZfQ1gsCisgIFBFUkZfUkVHX1g4Nl9EWCwKKyAgUEVSRl9SRUdfWDg2X1NJLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19YODZfREksCi0gUEVSRl9SRUdfWDg2X0JQLAotIFBFUkZfUkVHX1g4Nl9TUCwKLSBQRVJGX1JFR19YODZfSVAsCisgIFBFUkZfUkVHX1g4Nl9ESSwKKyAgUEVSRl9SRUdfWDg2X0JQLAorICBQRVJGX1JFR19YODZfU1AsCisgIFBFUkZfUkVHX1g4Nl9JUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfWDg2X0ZMQUdTLAotIFBFUkZfUkVHX1g4Nl9DUywKLSBQRVJGX1JFR19YODZfU1MsCi0gUEVSRl9SRUdfWDg2X0RTLAorICBQRVJGX1JFR19YODZfRkxBR1MsCisgIFBFUkZfUkVHX1g4Nl9DUywKKyAgUEVSRl9SRUdfWDg2X1NTLAorICBQRVJGX1JFR19YODZfRFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX1g4Nl9FUywKLSBQRVJGX1JFR19YODZfRlMsCi0gUEVSRl9SRUdfWDg2X0dTLAotIFBFUkZfUkVHX1g4Nl9SOCwKKyAgUEVSRl9SRUdfWDg2X0VTLAorICBQRVJGX1JFR19YODZfRlMsCisgIFBFUkZfUkVHX1g4Nl9HUywKKyAgUEVSRl9SRUdfWDg2X1I4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19YODZfUjksCi0gUEVSRl9SRUdfWDg2X1IxMCwKLSBQRVJGX1JFR19YODZfUjExLAotIFBFUkZfUkVHX1g4Nl9SMTIsCisgIFBFUkZfUkVHX1g4Nl9SOSwKKyAgUEVSRl9SRUdfWDg2X1IxMCwKKyAgUEVSRl9SRUdfWDg2X1IxMSwKKyAgUEVSRl9SRUdfWDg2X1IxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfWDg2X1IxMywKLSBQRVJGX1JFR19YODZfUjE0LAotIFBFUkZfUkVHX1g4Nl9SMTUsCi0gUEVSRl9SRUdfWDg2XzMyX01BWCA9IFBFUkZfUkVHX1g4Nl9HUyArIDEsCisgIFBFUkZfUkVHX1g4Nl9SMTMsCisgIFBFUkZfUkVHX1g4Nl9SMTQsCisgIFBFUkZfUkVHX1g4Nl9SMTUsCisgIFBFUkZfUkVHX1g4Nl8zMl9NQVggPSBQRVJGX1JFR19YODZfR1MgKyAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19YODZfNjRfTUFYID0gUEVSRl9SRUdfWDg2X1IxNSArIDEsCisgIFBFUkZfUkVHX1g4Nl82NF9NQVggPSBQRVJGX1JFR19YODZfUjE1ICsgMSwKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHJvY2Vzc29yLWZsYWdzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3Byb2Nlc3Nvci1mbGFncy5oCmluZGV4IGFlYWQ3NzkuLjNjMzZkZGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHJvY2Vzc29yLWZsYWdzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wcm9jZXNzb3ItZmxhZ3MuaApAQCAtNDYsNyArNDYsNyBAQAogI2RlZmluZSBYODZfRUZMQUdTX09GIF9CSVRVTChYODZfRUZMQUdTX09GX0JJVCkKICNkZWZpbmUgWDg2X0VGTEFHU19JT1BMX0JJVCAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgWDg2X0VGTEFHU19JT1BMIChfQUMoMyxVTCkgPDwgWDg2X0VGTEFHU19JT1BMX0JJVCkKKyNkZWZpbmUgWDg2X0VGTEFHU19JT1BMIChfQUMoMywgVUwpIDw8IFg4Nl9FRkxBR1NfSU9QTF9CSVQpCiAjZGVmaW5lIFg4Nl9FRkxBR1NfTlRfQklUIDE0CiAjZGVmaW5lIFg4Nl9FRkxBR1NfTlQgX0JJVFVMKFg4Nl9FRkxBR1NfTlRfQklUKQogI2RlZmluZSBYODZfRUZMQUdTX1JGX0JJVCAxNgpAQCAtOTksNyArOTksNyBAQAogI2RlZmluZSBYODZfQ1IzX1BXVCBfQklUVUwoWDg2X0NSM19QV1RfQklUKQogI2RlZmluZSBYODZfQ1IzX1BDRF9CSVQgNAogI2RlZmluZSBYODZfQ1IzX1BDRCBfQklUVUwoWDg2X0NSM19QQ0RfQklUKQotI2RlZmluZSBYODZfQ1IzX1BDSURfTUFTSyBfQUMoMHgwMDAwMGZmZixVTCkKKyNkZWZpbmUgWDg2X0NSM19QQ0lEX01BU0sgX0FDKDB4MDAwMDBmZmYsIFVMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWDg2X0NSNF9WTUVfQklUIDAKICNkZWZpbmUgWDg2X0NSNF9WTUUgX0JJVFVMKFg4Nl9DUjRfVk1FX0JJVCkKQEAgLTE0Niw3ICsxNDYsNyBAQAogI2RlZmluZSBYODZfQ1I0X1NNQVBfQklUIDIxCiAjZGVmaW5lIFg4Nl9DUjRfU01BUCBfQklUVUwoWDg2X0NSNF9TTUFQX0JJVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFg4Nl9DUjhfVFBSIF9BQygweDAwMDAwMDBmLFVMKQorI2RlZmluZSBYODZfQ1I4X1RQUiBfQUMoMHgwMDAwMDAwZiwgVUwpCiAjZGVmaW5lIENYODZfUENSMCAweDIwCiAjZGVmaW5lIENYODZfR0NSIDB4YjgKICNkZWZpbmUgQ1g4Nl9DQ1IwIDB4YzAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHRyYWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3B0cmFjZS5oCmluZGV4IDJlZmI5YzQuLjgwMmQ4MDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHRyYWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wdHJhY2UuaApAQCAtMjYsNTcgKzI2LDU3IEBACiAjaWZkZWYgX19pMzg2X18KIHN0cnVjdCBwdF9yZWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBlYng7Ci0gbG9uZyBlY3g7Ci0gbG9uZyBlZHg7Ci0gbG9uZyBlc2k7CisgIGxvbmcgZWJ4OworICBsb25nIGVjeDsKKyAgbG9uZyBlZHg7CisgIGxvbmcgZXNpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGVkaTsKLSBsb25nIGVicDsKLSBsb25nIGVheDsKLSBpbnQgeGRzOworICBsb25nIGVkaTsKKyAgbG9uZyBlYnA7CisgIGxvbmcgZWF4OworICBpbnQgeGRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgeGVzOwotIGludCB4ZnM7Ci0gaW50IHhnczsKLSBsb25nIG9yaWdfZWF4OworICBpbnQgeGVzOworICBpbnQgeGZzOworICBpbnQgeGdzOworICBsb25nIG9yaWdfZWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGVpcDsKLSBpbnQgeGNzOwotIGxvbmcgZWZsYWdzOwotIGxvbmcgZXNwOworICBsb25nIGVpcDsKKyAgaW50IHhjczsKKyAgbG9uZyBlZmxhZ3M7CisgIGxvbmcgZXNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgeHNzOworICBpbnQgeHNzOwogfTsKICNlbHNlCiBzdHJ1Y3QgcHRfcmVncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcjE1OwotIHVuc2lnbmVkIGxvbmcgcjE0OwotIHVuc2lnbmVkIGxvbmcgcjEzOwotIHVuc2lnbmVkIGxvbmcgcjEyOworICB1bnNpZ25lZCBsb25nIHIxNTsKKyAgdW5zaWduZWQgbG9uZyByMTQ7CisgIHVuc2lnbmVkIGxvbmcgcjEzOworICB1bnNpZ25lZCBsb25nIHIxMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByYnA7Ci0gdW5zaWduZWQgbG9uZyByYng7Ci0gdW5zaWduZWQgbG9uZyByMTE7Ci0gdW5zaWduZWQgbG9uZyByMTA7CisgIHVuc2lnbmVkIGxvbmcgcmJwOworICB1bnNpZ25lZCBsb25nIHJieDsKKyAgdW5zaWduZWQgbG9uZyByMTE7CisgIHVuc2lnbmVkIGxvbmcgcjEwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHI5OwotIHVuc2lnbmVkIGxvbmcgcjg7Ci0gdW5zaWduZWQgbG9uZyByYXg7Ci0gdW5zaWduZWQgbG9uZyByY3g7CisgIHVuc2lnbmVkIGxvbmcgcjk7CisgIHVuc2lnbmVkIGxvbmcgcjg7CisgIHVuc2lnbmVkIGxvbmcgcmF4OworICB1bnNpZ25lZCBsb25nIHJjeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByZHg7Ci0gdW5zaWduZWQgbG9uZyByc2k7Ci0gdW5zaWduZWQgbG9uZyByZGk7Ci0gdW5zaWduZWQgbG9uZyBvcmlnX3JheDsKKyAgdW5zaWduZWQgbG9uZyByZHg7CisgIHVuc2lnbmVkIGxvbmcgcnNpOworICB1bnNpZ25lZCBsb25nIHJkaTsKKyAgdW5zaWduZWQgbG9uZyBvcmlnX3JheDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByaXA7Ci0gdW5zaWduZWQgbG9uZyBjczsKLSB1bnNpZ25lZCBsb25nIGVmbGFnczsKLSB1bnNpZ25lZCBsb25nIHJzcDsKKyAgdW5zaWduZWQgbG9uZyByaXA7CisgIHVuc2lnbmVkIGxvbmcgY3M7CisgIHVuc2lnbmVkIGxvbmcgZWZsYWdzOworICB1bnNpZ25lZCBsb25nIHJzcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzczsKKyAgdW5zaWduZWQgbG9uZyBzczsKIH07CiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zZW1idWYuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2VtYnVmLmgKaW5kZXggNDFkM2IyYS4uYjdjMGRiZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zZW1idWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NlbWJ1Zi5oCkBAIC0xOSwxNiArMTksMTYgQEAKICNpZm5kZWYgX0FTTV9YODZfU0VNQlVGX0gKICNkZWZpbmUgX0FTTV9YODZfU0VNQlVGX0gKIHN0cnVjdCBzZW1pZDY0X2RzIHsKLSBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gc2VtX3Blcm07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBzZW1fb3RpbWU7Ci0gX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDE7Ci0gX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMjsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDE7CisgIF9fa2VybmVsX3RpbWVfdCBzZW1fY3RpbWU7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IHNlbV9uc2VtczsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMzsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKKyAgX19rZXJuZWxfdWxvbmdfdCBzZW1fbnNlbXM7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQzOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ2NvbnRleHQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dC5oCmluZGV4IDdmZTMxMjguLmI5MjVkNDQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dC5oCkBAIC0yNiwxNjggKzI2LDE2OCBAQAogI2RlZmluZSBGUF9YU1RBVEVfTUFHSUMyX1NJWkUgc2l6ZW9mKEZQX1hTVEFURV9NQUdJQzIpCiBzdHJ1Y3QgX2ZweF9zd19ieXRlcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hZ2ljMTsKLSBfX3UzMiBleHRlbmRlZF9zaXplOwotIF9fdTY0IHhzdGF0ZV9idjsKLSBfX3UzMiB4c3RhdGVfc2l6ZTsKKyAgX191MzIgbWFnaWMxOworICBfX3UzMiBleHRlbmRlZF9zaXplOworICBfX3U2NCB4c3RhdGVfYnY7CisgIF9fdTMyIHhzdGF0ZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWRkaW5nWzddOworICBfX3UzMiBwYWRkaW5nWzddOwogfTsKICNpZmRlZiBfX2kzODZfXwogc3RydWN0IF9mcHJlZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOwotIHVuc2lnbmVkIHNob3J0IGV4cG9uZW50OworICB1bnNpZ25lZCBzaG9ydCBzaWduaWZpY2FuZFs0XTsKKyAgdW5zaWduZWQgc2hvcnQgZXhwb25lbnQ7CiB9Owogc3RydWN0IF9mcHhyZWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzaWduaWZpY2FuZFs0XTsKLSB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKLSB1bnNpZ25lZCBzaG9ydCBwYWRkaW5nWzNdOworICB1bnNpZ25lZCBzaG9ydCBzaWduaWZpY2FuZFs0XTsKKyAgdW5zaWduZWQgc2hvcnQgZXhwb25lbnQ7CisgIHVuc2lnbmVkIHNob3J0IHBhZGRpbmdbM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBfeG1tcmVnIHsKLSB1bnNpZ25lZCBsb25nIGVsZW1lbnRbNF07CisgIHVuc2lnbmVkIGxvbmcgZWxlbWVudFs0XTsKIH07CiBzdHJ1Y3QgX2Zwc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGN3OwotIHVuc2lnbmVkIGxvbmcgc3c7Ci0gdW5zaWduZWQgbG9uZyB0YWc7Ci0gdW5zaWduZWQgbG9uZyBpcG9mZjsKKyAgdW5zaWduZWQgbG9uZyBjdzsKKyAgdW5zaWduZWQgbG9uZyBzdzsKKyAgdW5zaWduZWQgbG9uZyB0YWc7CisgIHVuc2lnbmVkIGxvbmcgaXBvZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY3NzZWw7Ci0gdW5zaWduZWQgbG9uZyBkYXRhb2ZmOwotIHVuc2lnbmVkIGxvbmcgZGF0YXNlbDsKLSBzdHJ1Y3QgX2ZwcmVnIF9zdFs4XTsKKyAgdW5zaWduZWQgbG9uZyBjc3NlbDsKKyAgdW5zaWduZWQgbG9uZyBkYXRhb2ZmOworICB1bnNpZ25lZCBsb25nIGRhdGFzZWw7CisgIHN0cnVjdCBfZnByZWcgX3N0WzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdGF0dXM7Ci0gdW5zaWduZWQgc2hvcnQgbWFnaWM7Ci0gdW5zaWduZWQgbG9uZyBfZnhzcl9lbnZbNl07Ci0gdW5zaWduZWQgbG9uZyBteGNzcjsKKyAgdW5zaWduZWQgc2hvcnQgc3RhdHVzOworICB1bnNpZ25lZCBzaG9ydCBtYWdpYzsKKyAgdW5zaWduZWQgbG9uZyBfZnhzcl9lbnZbNl07CisgIHVuc2lnbmVkIGxvbmcgbXhjc3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmVzZXJ2ZWQ7Ci0gc3RydWN0IF9mcHhyZWcgX2Z4c3Jfc3RbOF07Ci0gc3RydWN0IF94bW1yZWcgX3htbVs4XTsKLSB1bnNpZ25lZCBsb25nIHBhZGRpbmcxWzQ0XTsKKyAgdW5zaWduZWQgbG9uZyByZXNlcnZlZDsKKyAgc3RydWN0IF9mcHhyZWcgX2Z4c3Jfc3RbOF07CisgIHN0cnVjdCBfeG1tcmVnIF94bW1bOF07CisgIHVuc2lnbmVkIGxvbmcgcGFkZGluZzFbNDRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gdW5zaWduZWQgbG9uZyBwYWRkaW5nMlsxMl07Ci0gc3RydWN0IF9mcHhfc3dfYnl0ZXMgc3dfcmVzZXJ2ZWQ7Ci0gfTsKKyAgdW5pb24geworICAgIHVuc2lnbmVkIGxvbmcgcGFkZGluZzJbMTJdOworICAgIHN0cnVjdCBfZnB4X3N3X2J5dGVzIHN3X3Jlc2VydmVkOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFg4Nl9GWFNSX01BR0lDIDB4MDAwMAogc3RydWN0IHNpZ2NvbnRleHQgewotIHVuc2lnbmVkIHNob3J0IGdzLCBfX2dzaDsKKyAgdW5zaWduZWQgc2hvcnQgZ3MsIF9fZ3NoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBmcywgX19mc2g7Ci0gdW5zaWduZWQgc2hvcnQgZXMsIF9fZXNoOwotIHVuc2lnbmVkIHNob3J0IGRzLCBfX2RzaDsKLSB1bnNpZ25lZCBsb25nIGVkaTsKKyAgdW5zaWduZWQgc2hvcnQgZnMsIF9fZnNoOworICB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7CisgIHVuc2lnbmVkIHNob3J0IGRzLCBfX2RzaDsKKyAgdW5zaWduZWQgbG9uZyBlZGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZXNpOwotIHVuc2lnbmVkIGxvbmcgZWJwOwotIHVuc2lnbmVkIGxvbmcgZXNwOwotIHVuc2lnbmVkIGxvbmcgZWJ4OworICB1bnNpZ25lZCBsb25nIGVzaTsKKyAgdW5zaWduZWQgbG9uZyBlYnA7CisgIHVuc2lnbmVkIGxvbmcgZXNwOworICB1bnNpZ25lZCBsb25nIGVieDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBlZHg7Ci0gdW5zaWduZWQgbG9uZyBlY3g7Ci0gdW5zaWduZWQgbG9uZyBlYXg7Ci0gdW5zaWduZWQgbG9uZyB0cmFwbm87CisgIHVuc2lnbmVkIGxvbmcgZWR4OworICB1bnNpZ25lZCBsb25nIGVjeDsKKyAgdW5zaWduZWQgbG9uZyBlYXg7CisgIHVuc2lnbmVkIGxvbmcgdHJhcG5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGVycjsKLSB1bnNpZ25lZCBsb25nIGVpcDsKLSB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7Ci0gdW5zaWduZWQgbG9uZyBlZmxhZ3M7CisgIHVuc2lnbmVkIGxvbmcgZXJyOworICB1bnNpZ25lZCBsb25nIGVpcDsKKyAgdW5zaWduZWQgc2hvcnQgY3MsIF9fY3NoOworICB1bnNpZ25lZCBsb25nIGVmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBlc3BfYXRfc2lnbmFsOwotIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKLSBzdHJ1Y3QgX2Zwc3RhdGUgX191c2VyICpmcHN0YXRlOwotIHVuc2lnbmVkIGxvbmcgb2xkbWFzazsKKyAgdW5zaWduZWQgbG9uZyBlc3BfYXRfc2lnbmFsOworICB1bnNpZ25lZCBzaG9ydCBzcywgX19zc2g7CisgIHN0cnVjdCBfZnBzdGF0ZSBfX3VzZXIgKiBmcHN0YXRlOworICB1bnNpZ25lZCBsb25nIG9sZG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY3IyOworICB1bnNpZ25lZCBsb25nIGNyMjsKIH07CiAjZWxzZQogc3RydWN0IF9mcHN0YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY3dkOwotIF9fdTE2IHN3ZDsKLSBfX3UxNiB0d2Q7Ci0gX191MTYgZm9wOworICBfX3UxNiBjd2Q7CisgIF9fdTE2IHN3ZDsKKyAgX191MTYgdHdkOworICBfX3UxNiBmb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJpcDsKLSBfX3U2NCByZHA7Ci0gX191MzIgbXhjc3I7Ci0gX191MzIgbXhjc3JfbWFzazsKKyAgX191NjQgcmlwOworICBfX3U2NCByZHA7CisgIF9fdTMyIG14Y3NyOworICBfX3UzMiBteGNzcl9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdF9zcGFjZVszMl07Ci0gX191MzIgeG1tX3NwYWNlWzY0XTsKLSBfX3UzMiByZXNlcnZlZDJbMTJdOwotIHVuaW9uIHsKKyAgX191MzIgc3Rfc3BhY2VbMzJdOworICBfX3UzMiB4bW1fc3BhY2VbNjRdOworICBfX3UzMiByZXNlcnZlZDJbMTJdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkM1sxMl07Ci0gc3RydWN0IF9mcHhfc3dfYnl0ZXMgc3dfcmVzZXJ2ZWQ7Ci0gfTsKKyAgICBfX3UzMiByZXNlcnZlZDNbMTJdOworICAgIHN0cnVjdCBfZnB4X3N3X2J5dGVzIHN3X3Jlc2VydmVkOworICB9OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2lnY29udGV4dCB7Ci0gX191NjQgcjg7Ci0gX191NjQgcjk7Ci0gX191NjQgcjEwOworICBfX3U2NCByODsKKyAgX191NjQgcjk7CisgIF9fdTY0IHIxMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcjExOwotIF9fdTY0IHIxMjsKLSBfX3U2NCByMTM7Ci0gX191NjQgcjE0OworICBfX3U2NCByMTE7CisgIF9fdTY0IHIxMjsKKyAgX191NjQgcjEzOworICBfX3U2NCByMTQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHIxNTsKLSBfX3U2NCByZGk7Ci0gX191NjQgcnNpOwotIF9fdTY0IHJicDsKKyAgX191NjQgcjE1OworICBfX3U2NCByZGk7CisgIF9fdTY0IHJzaTsKKyAgX191NjQgcmJwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByYng7Ci0gX191NjQgcmR4OwotIF9fdTY0IHJheDsKLSBfX3U2NCByY3g7CisgIF9fdTY0IHJieDsKKyAgX191NjQgcmR4OworICBfX3U2NCByYXg7CisgIF9fdTY0IHJjeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnNwOwotIF9fdTY0IHJpcDsKLSBfX3U2NCBlZmxhZ3M7Ci0gX191MTYgY3M7CisgIF9fdTY0IHJzcDsKKyAgX191NjQgcmlwOworICBfX3U2NCBlZmxhZ3M7CisgIF9fdTE2IGNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBnczsKLSBfX3UxNiBmczsKLSBfX3UxNiBfX3BhZDA7Ci0gX191NjQgZXJyOworICBfX3UxNiBnczsKKyAgX191MTYgZnM7CisgIF9fdTE2IF9fcGFkMDsKKyAgX191NjQgZXJyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0cmFwbm87Ci0gX191NjQgb2xkbWFzazsKLSBfX3U2NCBjcjI7Ci0gc3RydWN0IF9mcHN0YXRlIF9fdXNlciAqZnBzdGF0ZTsKKyAgX191NjQgdHJhcG5vOworICBfX3U2NCBvbGRtYXNrOworICBfX3U2NCBjcjI7CisgIHN0cnVjdCBfZnBzdGF0ZSBfX3VzZXIgKiBmcHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0lMUDMyX18KLSBfX3UzMiBfX2Zwc3RhdGVfcGFkOworICBfX3UzMiBfX2Zwc3RhdGVfcGFkOwogI2VuZGlmCi0gX191NjQgcmVzZXJ2ZWQxWzhdOworICBfX3U2NCByZXNlcnZlZDFbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgogc3RydWN0IF94c2F2ZV9oZHIgewotIF9fdTY0IHhzdGF0ZV9idjsKKyAgX191NjQgeHN0YXRlX2J2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNlcnZlZDFbMl07Ci0gX191NjQgcmVzZXJ2ZWQyWzVdOworICBfX3U2NCByZXNlcnZlZDFbMl07CisgIF9fdTY0IHJlc2VydmVkMls1XTsKIH07CiBzdHJ1Y3QgX3ltbWhfc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB5bW1oX3NwYWNlWzY0XTsKKyAgX191MzIgeW1taF9zcGFjZVs2NF07CiB9Owogc3RydWN0IF94c3RhdGUgewotIHN0cnVjdCBfZnBzdGF0ZSBmcHN0YXRlOworICBzdHJ1Y3QgX2Zwc3RhdGUgZnBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IF94c2F2ZV9oZHIgeHN0YXRlX2hkcjsKLSBzdHJ1Y3QgX3ltbWhfc3RhdGUgeW1taDsKKyAgc3RydWN0IF94c2F2ZV9oZHIgeHN0YXRlX2hkcjsKKyAgc3RydWN0IF95bW1oX3N0YXRlIHltbWg7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0MzIuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dDMyLmgKaW5kZXggMzU1ODVkZi4uOGYzOGRmZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0MzIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ2NvbnRleHQzMi5oCkBAIC0yMiw3NSArMjIsNzUgQEAKICNkZWZpbmUgWDg2X0ZYU1JfTUFHSUMgMHgwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF9mcHJlZyB7Ci0gdW5zaWduZWQgc2hvcnQgc2lnbmlmaWNhbmRbNF07Ci0gdW5zaWduZWQgc2hvcnQgZXhwb25lbnQ7CisgIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOworICB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF9mcHhyZWcgewotIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOwotIHVuc2lnbmVkIHNob3J0IGV4cG9uZW50OwotIHVuc2lnbmVkIHNob3J0IHBhZGRpbmdbM107CisgIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOworICB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKKyAgdW5zaWduZWQgc2hvcnQgcGFkZGluZ1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IF94bW1yZWcgewotIF9fdTMyIGVsZW1lbnRbNF07CisgIF9fdTMyIGVsZW1lbnRbNF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBfZnBzdGF0ZV9pYTMyIHsKLSBfX3UzMiBjdzsKLSBfX3UzMiBzdzsKLSBfX3UzMiB0YWc7CisgIF9fdTMyIGN3OworICBfX3UzMiBzdzsKKyAgX191MzIgdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpcG9mZjsKLSBfX3UzMiBjc3NlbDsKLSBfX3UzMiBkYXRhb2ZmOwotIF9fdTMyIGRhdGFzZWw7CisgIF9fdTMyIGlwb2ZmOworICBfX3UzMiBjc3NlbDsKKyAgX191MzIgZGF0YW9mZjsKKyAgX191MzIgZGF0YXNlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IF9mcHJlZyBfc3RbOF07Ci0gdW5zaWduZWQgc2hvcnQgc3RhdHVzOwotIHVuc2lnbmVkIHNob3J0IG1hZ2ljOwotIF9fdTMyIF9meHNyX2Vudls2XTsKKyAgc3RydWN0IF9mcHJlZyBfc3RbOF07CisgIHVuc2lnbmVkIHNob3J0IHN0YXR1czsKKyAgdW5zaWduZWQgc2hvcnQgbWFnaWM7CisgIF9fdTMyIF9meHNyX2Vudls2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbXhjc3I7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gc3RydWN0IF9mcHhyZWcgX2Z4c3Jfc3RbOF07Ci0gc3RydWN0IF94bW1yZWcgX3htbVs4XTsKKyAgX191MzIgbXhjc3I7CisgIF9fdTMyIHJlc2VydmVkOworICBzdHJ1Y3QgX2ZweHJlZyBfZnhzcl9zdFs4XTsKKyAgc3RydWN0IF94bW1yZWcgX3htbVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkZGluZ1s0NF07Ci0gdW5pb24gewotIF9fdTMyIHBhZGRpbmcyWzEyXTsKLSBzdHJ1Y3QgX2ZweF9zd19ieXRlcyBzd19yZXNlcnZlZDsKKyAgX191MzIgcGFkZGluZ1s0NF07CisgIHVuaW9uIHsKKyAgICBfX3UzMiBwYWRkaW5nMlsxMl07CisgICAgc3RydWN0IF9mcHhfc3dfYnl0ZXMgc3dfcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgIH07CiB9Owogc3RydWN0IHNpZ2NvbnRleHRfaWEzMiB7Ci0gdW5zaWduZWQgc2hvcnQgZ3MsIF9fZ3NoOworICB1bnNpZ25lZCBzaG9ydCBncywgX19nc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGZzLCBfX2ZzaDsKLSB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7Ci0gdW5zaWduZWQgc2hvcnQgZHMsIF9fZHNoOwotIHVuc2lnbmVkIGludCBkaTsKKyAgdW5zaWduZWQgc2hvcnQgZnMsIF9fZnNoOworICB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7CisgIHVuc2lnbmVkIHNob3J0IGRzLCBfX2RzaDsKKyAgdW5zaWduZWQgaW50IGRpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2k7Ci0gdW5zaWduZWQgaW50IGJwOwotIHVuc2lnbmVkIGludCBzcDsKLSB1bnNpZ25lZCBpbnQgYng7CisgIHVuc2lnbmVkIGludCBzaTsKKyAgdW5zaWduZWQgaW50IGJwOworICB1bnNpZ25lZCBpbnQgc3A7CisgIHVuc2lnbmVkIGludCBieDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGR4OwotIHVuc2lnbmVkIGludCBjeDsKLSB1bnNpZ25lZCBpbnQgYXg7Ci0gdW5zaWduZWQgaW50IHRyYXBubzsKKyAgdW5zaWduZWQgaW50IGR4OworICB1bnNpZ25lZCBpbnQgY3g7CisgIHVuc2lnbmVkIGludCBheDsKKyAgdW5zaWduZWQgaW50IHRyYXBubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGVycjsKLSB1bnNpZ25lZCBpbnQgaXA7Ci0gdW5zaWduZWQgc2hvcnQgY3MsIF9fY3NoOwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGVycjsKKyAgdW5zaWduZWQgaW50IGlwOworICB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNwX2F0X3NpZ25hbDsKLSB1bnNpZ25lZCBzaG9ydCBzcywgX19zc2g7Ci0gdW5zaWduZWQgaW50IGZwc3RhdGU7Ci0gdW5zaWduZWQgaW50IG9sZG1hc2s7CisgIHVuc2lnbmVkIGludCBzcF9hdF9zaWduYWw7CisgIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKKyAgdW5zaWduZWQgaW50IGZwc3RhdGU7CisgIHVuc2lnbmVkIGludCBvbGRtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY3IyOworICB1bnNpZ25lZCBpbnQgY3IyOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWduYWwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnbmFsLmgKaW5kZXggMzA4YzdhOS4uZGJhMjY4ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWduYWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ25hbC5oCkBAIC05MywzMyArOTMsMzMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19pMzg2X18KIHN0cnVjdCBzaWdhY3Rpb24gewotIHVuaW9uIHsKLSBfX3NpZ2hhbmRsZXJfdCBfc2FfaGFuZGxlcjsKKyAgdW5pb24geworICAgIF9fc2lnaGFuZGxlcl90IF9zYV9oYW5kbGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICgqX3NhX3NpZ2FjdGlvbikoaW50LCBzdHJ1Y3Qgc2lnaW5mbyAqLCB2b2lkICopOwotIH0gX3U7Ci0gc2lnc2V0X3Qgc2FfbWFzazsKLSB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOworICAgIHZvaWQoKiBfc2Ffc2lnYWN0aW9uKSAoaW50LCBzdHJ1Y3Qgc2lnaW5mbyAqLCB2b2lkICopOworICB9IF91OworICBzaWdzZXRfdCBzYV9tYXNrOworICB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICgqc2FfcmVzdG9yZXIpKHZvaWQpOworICB2b2lkKCogc2FfcmVzdG9yZXIpICh2b2lkKTsKIH07CiAjZGVmaW5lIHNhX2hhbmRsZXIgX3UuX3NhX2hhbmRsZXIKICNkZWZpbmUgc2Ffc2lnYWN0aW9uIF91Ll9zYV9zaWdhY3Rpb24KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQogc3RydWN0IHNpZ2FjdGlvbiB7Ci0gX19zaWdoYW5kbGVyX3Qgc2FfaGFuZGxlcjsKLSB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOworICBfX3NpZ2hhbmRsZXJfdCBzYV9oYW5kbGVyOworICB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3NpZ3Jlc3RvcmVfdCBzYV9yZXN0b3JlcjsKLSBzaWdzZXRfdCBzYV9tYXNrOworICBfX3NpZ3Jlc3RvcmVfdCBzYV9yZXN0b3JlcjsKKyAgc2lnc2V0X3Qgc2FfbWFzazsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBzaWdhbHRzdGFjayB7Ci0gdm9pZCBfX3VzZXIgKnNzX3NwOwotIGludCBzc19mbGFnczsKLSBzaXplX3Qgc3Nfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBzc19zcDsKKyAgaW50IHNzX2ZsYWdzOworICBzaXplX3Qgc3Nfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHN0YWNrX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3RhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0LmgKaW5kZXggYWViYWNiZC4uYzExZmRmZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0LmgKQEAgLTIzLDExMSArMjMsMTE0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9faTM4Nl9fCiBzdHJ1Y3Qgc3RhdCB7Ci0gdW5zaWduZWQgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgbG9uZyBzdF9pbm87CisgIHVuc2lnbmVkIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBsb25nIHN0X2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3RfbW9kZTsKLSB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKLSB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7Ci0gdW5zaWduZWQgc2hvcnQgc3RfZ2lkOworICB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOworICB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKKyAgdW5zaWduZWQgc2hvcnQgc3RfdWlkOworICB1bnNpZ25lZCBzaG9ydCBzdF9naWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKLSB1bnNpZ25lZCBsb25nIHN0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOwotIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOworICB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CisgIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOworICB1bnNpZ25lZCBsb25nIHN0X2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSU5JVF9TVFJVQ1RfU1RBVF9QQURESU5HKHN0KSBkbyB7ICAgc3QuX191bnVzZWQ0ID0gMDsgICBzdC5fX3VudXNlZDUgPSAwOyAgfSB3aGlsZSAoMCkKKyNkZWZpbmUgSU5JVF9TVFJVQ1RfU1RBVF9QQURESU5HKHN0KSBkbyB7IHN0Ll9fdW51c2VkNCA9IDA7IHN0Ll9fdW51c2VkNSA9IDA7IFwKK30gd2hpbGUoMCkKICNkZWZpbmUgU1RBVDY0X0hBU19CUk9LRU5fU1RfSU5PIDEKIHN0cnVjdCBzdGF0NjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGNoYXIgX19wYWQwWzRdOwotIHVuc2lnbmVkIGxvbmcgX19zdF9pbm87Ci0gdW5zaWduZWQgaW50IHN0X21vZGU7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9kZXY7CisgIHVuc2lnbmVkIGNoYXIgX19wYWQwWzRdOworICB1bnNpZ25lZCBsb25nIF9fc3RfaW5vOworICB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X25saW5rOwotIHVuc2lnbmVkIGxvbmcgc3RfdWlkOwotIHVuc2lnbmVkIGxvbmcgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OworICB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7CisgIHVuc2lnbmVkIGxvbmcgc3RfdWlkOworICB1bnNpZ25lZCBsb25nIHN0X2dpZDsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgX19wYWQzWzRdOwotIGxvbmcgbG9uZyBzdF9zaXplOwotIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfYmxvY2tzOworICB1bnNpZ25lZCBjaGFyIF9fcGFkM1s0XTsKKyAgbG9uZyBsb25nIHN0X3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKLSB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lOworICB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBsb25nIHN0X2lubzsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElOSVRfU1RSVUNUX1NUQVQ2NF9QQURESU5HKHN0KSBkbyB7ICAgbWVtc2V0KCZzdC5fX3BhZDAsIDAsIHNpemVvZihzdC5fX3BhZDApKTsgICBtZW1zZXQoJnN0Ll9fcGFkMywgMCwgc2l6ZW9mKHN0Ll9fcGFkMykpOyAgfSB3aGlsZSAoMCkKKyNkZWZpbmUgSU5JVF9TVFJVQ1RfU1RBVDY0X1BBRERJTkcoc3QpIGRvIHsgbWVtc2V0KCYgc3QuX19wYWQwLCAwLCBzaXplb2Yoc3QuX19wYWQwKSk7IG1lbXNldCgmIHN0Ll9fcGFkMywgMCwgc2l6ZW9mKHN0Ll9fcGFkMykpOyBcCit9IHdoaWxlKDApCiAjZWxzZQogc3RydWN0IHN0YXQgewotIF9fa2VybmVsX3Vsb25nX3Qgc3RfZGV2OworICBfX2tlcm5lbF91bG9uZ190IHN0X2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBzdF9pbm87Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9ubGluazsKLSB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKLSB1bnNpZ25lZCBpbnQgc3RfdWlkOworICBfX2tlcm5lbF91bG9uZ190IHN0X2lubzsKKyAgX19rZXJuZWxfdWxvbmdfdCBzdF9ubGluazsKKyAgdW5zaWduZWQgaW50IHN0X21vZGU7CisgIHVuc2lnbmVkIGludCBzdF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdF9naWQ7Ci0gdW5zaWduZWQgaW50IF9fcGFkMDsKLSBfX2tlcm5lbF91bG9uZ190IHN0X3JkZXY7Ci0gX19rZXJuZWxfbG9uZ190IHN0X3NpemU7CisgIHVuc2lnbmVkIGludCBzdF9naWQ7CisgIHVuc2lnbmVkIGludCBfX3BhZDA7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfcmRldjsKKyAgX19rZXJuZWxfbG9uZ190IHN0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBzdF9ibGtzaXplOwotIF9fa2VybmVsX2xvbmdfdCBzdF9ibG9ja3M7Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9hdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IHN0X2F0aW1lX25zZWM7CisgIF9fa2VybmVsX2xvbmdfdCBzdF9ibGtzaXplOworICBfX2tlcm5lbF9sb25nX3Qgc3RfYmxvY2tzOworICBfX2tlcm5lbF91bG9uZ190IHN0X2F0aW1lOworICBfX2tlcm5lbF91bG9uZ190IHN0X2F0aW1lX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3Qgc3RfbXRpbWU7Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9tdGltZV9uc2VjOwotIF9fa2VybmVsX3Vsb25nX3Qgc3RfY3RpbWU7Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9jdGltZV9uc2VjOworICBfX2tlcm5lbF91bG9uZ190IHN0X210aW1lOworICBfX2tlcm5lbF91bG9uZ190IHN0X210aW1lX25zZWM7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfY3RpbWU7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfY3RpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IF9fbGludXhfdW51c2VkWzNdOworICBfX2tlcm5lbF9sb25nX3QgX19saW51eF91bnVzZWRbM107CiB9OwotI2RlZmluZSBJTklUX1NUUlVDVF9TVEFUX1BBRERJTkcoc3QpIGRvIHsgICBzdC5fX3BhZDAgPSAwOyAgIHN0Ll9fbGludXhfdW51c2VkWzBdID0gMDsgICBzdC5fX2xpbnV4X3VudXNlZFsxXSA9IDA7ICAgc3QuX19saW51eF91bnVzZWRbMl0gPSAwOyAgfSB3aGlsZSAoMCkKKyNkZWZpbmUgSU5JVF9TVFJVQ1RfU1RBVF9QQURESU5HKHN0KSBkbyB7IHN0Ll9fcGFkMCA9IDA7IHN0Ll9fbGludXhfdW51c2VkWzBdID0gMDsgc3QuX19saW51eF91bnVzZWRbMV0gPSAwOyBzdC5fX2xpbnV4X3VudXNlZFsyXSA9IDA7IFwKK30gd2hpbGUoMCkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBfX29sZF9rZXJuZWxfc3RhdCB7Ci0gdW5zaWduZWQgc2hvcnQgc3RfZGV2OwotIHVuc2lnbmVkIHNob3J0IHN0X2lubzsKLSB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOworICB1bnNpZ25lZCBzaG9ydCBzdF9kZXY7CisgIHVuc2lnbmVkIHNob3J0IHN0X2lubzsKKyAgdW5zaWduZWQgc2hvcnQgc3RfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgc2hvcnQgc3RfdWlkOwotIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKLSB1bnNpZ25lZCBzaG9ydCBzdF9yZGV2OworICB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKKyAgdW5zaWduZWQgc2hvcnQgc3RfdWlkOworICB1bnNpZ25lZCBzaG9ydCBzdF9naWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X3JkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9faTM4Nl9fCi0gdW5zaWduZWQgbG9uZyBzdF9zaXplOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9zaXplOworICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwogI2Vsc2UKLSB1bnNpZ25lZCBpbnQgc3Rfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGludCBzdF9zaXplOworICB1bnNpZ25lZCBpbnQgc3RfYXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdF9tdGltZTsKLSB1bnNpZ25lZCBpbnQgc3RfY3RpbWU7CisgIHVuc2lnbmVkIGludCBzdF9tdGltZTsKKyAgdW5zaWduZWQgaW50IHN0X2N0aW1lOwogI2VuZGlmCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3RhdGZzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N0YXRmcy5oCmluZGV4IGVmYzhkMDYuLjMxNzQwMzUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3RhdGZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0ZnMuaApAQCAtMTgsNyArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9BU01fWDg2X1NUQVRGU19ICiAjZGVmaW5lIF9BU01fWDg2X1NUQVRGU19ICi0jZGVmaW5lIEFSQ0hfUEFDS19DT01QQVRfU1RBVEZTNjQgX19hdHRyaWJ1dGVfXygocGFja2VkLGFsaWduZWQoNCkpKQorI2RlZmluZSBBUkNIX1BBQ0tfQ09NUEFUX1NUQVRGUzY0IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc3RhdGZzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N2bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdm0uaAppbmRleCA4NTIzMWU4Li4xZWU0ZmQ4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N2bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3ZtLmgKQEAgLTEwOCw3ICsxMDgsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1ZNX0VYSVRfWFNFVEJWIDB4MDhkCiAjZGVmaW5lIFNWTV9FWElUX05QRiAweDQwMAotI2RlZmluZSBTVk1fRVhJVF9FUlIgLTEKLSNkZWZpbmUgU1ZNX0VYSVRfUkVBU09OUyAgIHsgU1ZNX0VYSVRfUkVBRF9DUjAsICJyZWFkX2NyMCIgfSwgICB7IFNWTV9FWElUX1JFQURfQ1IzLCAicmVhZF9jcjMiIH0sICAgeyBTVk1fRVhJVF9SRUFEX0NSNCwgInJlYWRfY3I0IiB9LCAgIHsgU1ZNX0VYSVRfUkVBRF9DUjgsICJyZWFkX2NyOCIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0NSMCwgIndyaXRlX2NyMCIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0NSMywgIndyaXRlX2NyMyIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0NSNCwgIndyaXRlX2NyNCIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0NSOCwgIndyaXRlX2NyOCIgfSwgICB7IFNWTV9FWElUX1JFQURfRFIwLCAicmVhZF9kcjAiIH0sICAgeyBTVk1fRVhJVF9SRUFEX0RSMSwgInJlYWRfZHIxIiB9LCAgIHsgU1ZNX0VYSVRfUkVBRF9EUjIsICJyZWFkX2RyMiIgfSwgICB7IFNWTV9FWElUX1JFQURfRFIzLCAicmVhZF9kcjMiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjAsICJ3cml0ZV9kcjAiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjEsICJ3cml0ZV9kcjEiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjIsICJ3cml0ZV9kcjIiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjMsICJ3cml0ZV9kcjMiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjUsICJ3cml0ZV9kcjUiIH0sICAgeyBTVk1fRVhJVF9XUklURV9EUjcsICJ3cml0ZV9kcjciIH0sICAgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBEQl9WRUNUT1IsICJEQiBleGNwIiB9LCAgIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgQlBfVkVDVE9SLCAiQlAgZXhjcCIgfSwgICB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIFVEX1ZFQ1RPUiwgIlVEIGV4Y3AiIH0sICAgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBQRl9WRUNUT1IsICJQRiBleGNwIiB9LCAgIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgTk1fVkVDVE9SLCAiTk0gZXhjcCIgfSwgICB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIE1DX1ZFQ1RPUiwgIk1DIGV4Y3AiIH0sICAgeyBTVk1fRVhJVF9JTlRSLCAiaW50ZXJydXB0IiB9LCAgIHsgU1ZNX0VYSVRfTk1JLCAibm1pIiB9LCAgIHsgU1ZNX0VYSVRfU01JLCAic21pIiB9LCAgIHsgU1ZNX0VYSVRfSU5JVCwgImluaXQiIH0sICAgeyBTVk1fRVhJVF9WSU5UUiwgInZpbnRyIiB9LCAgIHsgU1ZNX0VYSVRfQ1BVSUQsICJjcHVpZCIgfSwgICB7IFNWTV9FWElUX0lOVkQsICJpbnZkIiB9LCAgIHsgU1ZNX0VYSVRfSExULCAiaGx0IiB9LCAgIHsgU1ZNX0VYSVRfSU5WTFBHLCAiaW52bHBnIiB9LCAgIHsgU1ZNX0VYSVRfSU5WTFBHQSwgImludmxwZ2EiIH0sICAgeyBTVk1fRVhJVF9JT0lPLCAiaW8iIH0sICAgeyBTVk1fRVhJVF9NU1IsICJtc3IiIH0sICAgeyBTVk1fRVhJVF9UQVNLX1NXSVRDSCwgInRhc2tfc3dpdGNoIiB9LCAgIHsgU1ZNX0VYSVRfU0hVVERPV04sICJzaHV0ZG93biIgfSwgICB7IFNWTV9FWElUX1ZNUlVOLCAidm1ydW4iIH0sICAgeyBTVk1fRVhJVF9WTU1DQUxMLCAiaHlwZXJjYWxsIiB9LCAgIHsgU1ZNX0VYSVRfVk1MT0FELCAidm1sb2FkIiB9LCAgIHsgU1ZNX0VYSVRfVk1TQVZFLCAidm1zYXZlIiB9LCAgIHsgU1ZNX0VYSVRfU1RHSSwgInN0Z2kiIH0sICAgeyBTVk1fRVhJVF9DTEdJLCAiY2xnaSIgfSwgICB7IFNWTV9FWElUX1NLSU5JVCwgInNraW5pdCIgfSwgICB7IFNWTV9FWElUX1dCSU5WRCwgIndiaW52ZCIgfSwgICB7IFNWTV9FWElUX01PTklUT1IsICJtb25pdG9yIiB9LCAgIHsgU1ZNX0VYSVRfTVdBSVQsICJtd2FpdCIgfSwgICB7IFNWTV9FWElUX1hTRVRCViwgInhzZXRidiIgfSwgICB7IFNWTV9FWElUX05QRiwgIm5wZiIgfQorI2RlZmluZSBTVk1fRVhJVF9FUlIgLSAxCisjZGVmaW5lIFNWTV9FWElUX1JFQVNPTlMgeyBTVk1fRVhJVF9SRUFEX0NSMCwgInJlYWRfY3IwIiB9LCB7IFNWTV9FWElUX1JFQURfQ1IzLCAicmVhZF9jcjMiIH0sIHsgU1ZNX0VYSVRfUkVBRF9DUjQsICJyZWFkX2NyNCIgfSwgeyBTVk1fRVhJVF9SRUFEX0NSOCwgInJlYWRfY3I4IiB9LCB7IFNWTV9FWElUX1dSSVRFX0NSMCwgIndyaXRlX2NyMCIgfSwgeyBTVk1fRVhJVF9XUklURV9DUjMsICJ3cml0ZV9jcjMiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfQ1I0LCAid3JpdGVfY3I0IiB9LCB7IFNWTV9FWElUX1dSSVRFX0NSOCwgIndyaXRlX2NyOCIgfSwgeyBTVk1fRVhJVF9SRUFEX0RSMCwgInJlYWRfZHIwIiB9LCB7IFNWTV9FWElUX1JFQURfRFIxLCAicmVhZF9kcjEiIH0sIHsgU1ZNX0VYSVRfUkVBRF9EUjIsICJyZWFkX2RyMiIgfSwgeyBTVk1fRVhJVF9SRUFEX0RSMywgInJlYWRfZHIzIiB9LCB7IFNWTV9FWElUX1dSSVRFX0RSMCwgIndyaXRlX2RyMCIgfSwgeyBTVk1fRVhJVF9XUklURV9EUjEsICJ3cml0ZV9kcjEiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfRFIyLCAid3JpdGVfZHIyIiB9LCB7IFNWTV9FWElUX1dSSVRFX0RSMywgIndyaXRlX2RyMyIgfSwgeyBTVk1fRVhJVF9XUklURV9EUjUsICJ3cml0ZV9kcjUiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfRFI3LCAid3JpdGVfZHI3IiB9LCB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIERCX1ZFQ1RPUiwgIkRCIGV4Y3AiIH0sIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgQlBfVkVDVE9SLCAiQlAgZXhjcCIgfSwgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBVRF9WRUNUT1IsICJVRCBleGNwIiB9LCB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIFBGX1ZFQ1RPUiwgIlBGIGV4Y3AiIH0sIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgTk1fVkVDVE9SLCAiTk0gZXhjcCIgfSwgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBNQ19WRUNUT1IsICJNQyBleGNwIiB9LCB7IFNWTV9FWElUX0lOVFIsICJpbnRlcnJ1cHQiIH0sIHsgU1ZNX0VYSVRfTk1JLCAibm1pIiB9LCB7IFNWTV9FWElUX1NNSSwgInNtaSIgfSwgeyBTVk1fRVhJVF9JTklULCAiaW5pdCIgfSwgeyBTVk1fRVhJVF9WSU5UUiwgInZpbnRyIiB9LCB7IFNWTV9FWElUX0NQVUlELCAiY3B1aWQiIH0sIHsgU1ZNX0VYSVRfSU5WRCwgImludmQiIH0sIHsgU1ZNX0VYSVRfSExULCAiaGx0IiB9LCB7IFNWTV9FWElUX0lOVkxQRywgImludmxwZyIgfSwgeyBTVk1fRVhJVF9JTlZMUEdBLCAiaW52bHBnYSIgfSwgeyBTVk1fRVhJVF9JT0lPLCAiaW8iIH0sIHsgU1ZNX0VYSVRfTVNSLCAibXNyIiB9LCB7IFNWTV9FWElUX1RBU0tfU1dJVENILCAidGFza19zd2l0Y2giIH0sIHsgU1ZNX0VYSVRfU0hVVERPV04sICJzaHV0ZG93biIgfSwgeyBTVk1fRVhJVF9WTVJVTiwgInZtcnVuIiB9LCB7IFNWTV9FWElUX1ZNTUNBTEwsICJoeXBlcmNhbGwiIH0sIHsgU1ZNX0VYSVRfVk1MT0FELCAidm1sb2FkIiB9LCB7IFNWTV9FWElUX1ZNU0FWRSwgInZtc2F2ZSIgfSwgeyBTVk1fRVhJVF9TVEdJLCAic3RnaSIgfSwgeyBTVk1fRVhJVF9DTEdJLCAiY2xnaSIgfSwgeyBTVk1fRVhJVF9TS0lOSVQsICJza2luaXQiIH0sIHsgU1ZNX0VYSVRfV0JJTlZELCAid2JpbnZkIiB9LCB7IFNWTV9FWElUX01PTklUT1IsICJtb25pdG9yIiB9LCB7IFNWTV9FWElUX01XQUlULCAibXdhaXQiIH0sIHsgU1ZNX0VYSVRfWFNFVEJWLCAieHNldGJ2IiB9LCB7IFNWTV9FWElUX05QRiwgIm5wZiIgfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfMzIuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzMyLmgKaW5kZXggNDgzOGFlMS4uYzFhN2VmNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfMzIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF8zMi5oCkBAIC00NTQsNSArNDU0LDExIEBACiAjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIDM1MAogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgMzUxCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAzNTIKLSNlbmRpZgorI2RlZmluZSBfX05SX3JlbmFtZWF0MiAzNTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2VjY29tcCAzNTQKKyNkZWZpbmUgX19OUl9nZXRyYW5kb20gMzU1CisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIDM1NgorI2RlZmluZSBfX05SX2JwZiAzNTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzY0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF82NC5oCmluZGV4IDdiZGIzMDEuLmM1MzhiMjEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzY0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfNjQuaApAQCAtNDEzLDQgKzQxMywxMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIDMxNAogI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgMzE1CisjZGVmaW5lIF9fTlJfcmVuYW1lYXQyIDMxNgorI2RlZmluZSBfX05SX3NlY2NvbXAgMzE3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHJhbmRvbSAzMTgKKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgMzE5CisjZGVmaW5lIF9fTlJfa2V4ZWNfZmlsZV9sb2FkIDMyMAorI2RlZmluZSBfX05SX2JwZiAzMjEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkX3gzMi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfeDMyLmgKaW5kZXggZWU1MWZiNS4uZDg3ZDA3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfeDMyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfeDMyLmgKQEAgLTI0NywxMTkgKzI0NywxMjQgQEAKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5IChfX1gzMl9TWVNDQUxMX0JJVCArIDIwNCkKLSNkZWZpbmUgX19OUl9pb19zZXR1cCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMDYpCiAjZGVmaW5lIF9fTlJfaW9fZGVzdHJveSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMDcpCiAjZGVmaW5lIF9fTlJfaW9fZ2V0ZXZlbnRzIChfX1gzMl9TWVNDQUxMX0JJVCArIDIwOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfaW9fc3VibWl0IChfX1gzMl9TWVNDQUxMX0JJVCArIDIwOSkKICNkZWZpbmUgX19OUl9pb19jYW5jZWwgKF9fWDMyX1NZU0NBTExfQklUICsgMjEwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sb29rdXBfZGNvb2tpZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMTIpCiAjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlIChfX1gzMl9TWVNDQUxMX0JJVCArIDIxMykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMTYpCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2NCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMTcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldF90aWRfYWRkcmVzcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMTgpCiAjZGVmaW5lIF9fTlJfcmVzdGFydF9zeXNjYWxsIChfX1gzMl9TWVNDQUxMX0JJVCArIDIxOSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2VtdGltZWRvcCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjApCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IChfX1gzMl9TWVNDQUxMX0JJVCArIDIyMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdGltZXJfc2V0dGltZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjMpCiAjZGVmaW5lIF9fTlJfdGltZXJfZ2V0dGltZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gKF9fWDMyX1NZU0NBTExfQklUICsgMjI1KQogI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgKF9fWDMyX1NZU0NBTExfQklUICsgMjI3KQogI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgKF9fWDMyX1NZU0NBTExfQklUICsgMjI4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jbG9ja19nZXRyZXMgKF9fWDMyX1NZU0NBTExfQklUICsgMjI5KQogI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgKF9fWDMyX1NZU0NBTExfQklUICsgMjMxKQogI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjMyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9lcG9sbF9jdGwgKF9fWDMyX1NZU0NBTExfQklUICsgMjMzKQogI2RlZmluZSBfX05SX3Rna2lsbCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3V0aW1lcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzUpCiAjZGVmaW5lIF9fTlJfbWJpbmQgKF9fWDMyX1NZU0NBTExfQklUICsgMjM3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRfbWVtcG9saWN5IChfX1gzMl9TWVNDQUxMX0JJVCArIDIzOCkKICNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IChfX1gzMl9TWVNDQUxMX0JJVCArIDIzOSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNDApCiAjZGVmaW5lIF9fTlJfbXFfdW5saW5rIChfX1gzMl9TWVNDQUxMX0JJVCArIDI0MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXFfdGltZWRzZW5kIChfX1gzMl9TWVNDQUxMX0JJVCArIDI0MikKICNkZWZpbmUgX19OUl9tcV90aW1lZHJlY2VpdmUgKF9fWDMyX1NZU0NBTExfQklUICsgMjQzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tcV9nZXRzZXRhdHRyIChfX1gzMl9TWVNDQUxMX0JJVCArIDI0NSkKICNkZWZpbmUgX19OUl9hZGRfa2V5IChfX1gzMl9TWVNDQUxMX0JJVCArIDI0OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVxdWVzdF9rZXkgKF9fWDMyX1NZU0NBTExfQklUICsgMjQ5KQogI2RlZmluZSBfX05SX2tleWN0bCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lvcHJpb19zZXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjUxKQogI2RlZmluZSBfX05SX2lvcHJpb19nZXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjUyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjUzKQogI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoIChfX1gzMl9TWVNDQUxMX0JJVCArIDI1NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9ybV93YXRjaCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTUpCiAjZGVmaW5lIF9fTlJfbWlncmF0ZV9wYWdlcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX29wZW5hdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTcpCiAjZGVmaW5lIF9fTlJfbWtkaXJhdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21rbm9kYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjU5KQogI2RlZmluZSBfX05SX2ZjaG93bmF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2MSkKICNkZWZpbmUgX19OUl9uZXdmc3RhdGF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdW5saW5rYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjYzKQogI2RlZmluZSBfX05SX3JlbmFtZWF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbGlua2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2NSkKICNkZWZpbmUgX19OUl9zeW1saW5rYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjY2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZWFkbGlua2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2NykKICNkZWZpbmUgX19OUl9mY2htb2RhdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNjgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNjkpCiAjZGVmaW5lIF9fTlJfcHNlbGVjdDYgKF9fWDMyX1NZU0NBTExfQklUICsgMjcwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wcG9sbCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNzEpCiAjZGVmaW5lIF9fTlJfdW5zaGFyZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNzIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NwbGljZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNzUpCiAjZGVmaW5lIF9fTlJfdGVlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI3NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI3NykKICNkZWZpbmUgX19OUl91dGltZW5zYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjgwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9lcG9sbF9wd2FpdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODEpCiAjZGVmaW5lIF9fTlJfc2lnbmFsZmQgKF9fWDMyX1NZU0NBTExfQklUICsgMjgyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODMpCiAjZGVmaW5lIF9fTlJfZXZlbnRmZCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZhbGxvY2F0ZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODUpCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9zZXR0aW1lIChfX1gzMl9TWVNDQUxMX0JJVCArIDI4NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9nZXR0aW1lIChfX1gzMl9TWVNDQUxMX0JJVCArIDI4NykKICNkZWZpbmUgX19OUl9hY2NlcHQ0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI4OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2lnbmFsZmQ0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI4OSkKICNkZWZpbmUgX19OUl9ldmVudGZkMiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZTEgKF9fWDMyX1NZU0NBTExfQklUICsgMjkxKQogI2RlZmluZSBfX05SX2R1cDMgKF9fWDMyX1NZU0NBTExfQklUICsgMjkyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9waXBlMiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTMpCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0MSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTgpCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Zhbm90aWZ5X21hcmsgKF9fWDMyX1NZU0NBTExfQklUICsgMzAxKQogI2RlZmluZSBfX05SX3BybGltaXQ2NCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDMwMykKICNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgKF9fWDMyX1NZU0NBTExfQklUICsgMzA1KQogI2RlZmluZSBfX05SX3N5bmNmcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldG5zIChfX1gzMl9TWVNDQUxMX0JJVCArIDMwOCkKICNkZWZpbmUgX19OUl9nZXRjcHUgKF9fWDMyX1NZU0NBTExfQklUICsgMzA5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9rY21wIChfX1gzMl9TWVNDQUxMX0JJVCArIDMxMikKICNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgKF9fWDMyX1NZU0NBTExfQklUICsgMzEzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIChfX1gzMl9TWVNDQUxMX0JJVCArIDMxNCkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIChfX1gzMl9TWVNDQUxMX0JJVCArIDMxNSkKKyNkZWZpbmUgX19OUl9yZW5hbWVhdDIgKF9fWDMyX1NZU0NBTExfQklUICsgMzE2KQorI2RlZmluZSBfX05SX3NlY2NvbXAgKF9fWDMyX1NZU0NBTExfQklUICsgMzE3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRyYW5kb20gKF9fWDMyX1NZU0NBTExfQklUICsgMzE4KQorI2RlZmluZSBfX05SX21lbWZkX2NyZWF0ZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMTkpCisjZGVmaW5lIF9fTlJfa2V4ZWNfZmlsZV9sb2FkIChfX1gzMl9TWVNDQUxMX0JJVCArIDMyMCkKKyNkZWZpbmUgX19OUl9icGYgKF9fWDMyX1NZU0NBTExfQklUICsgMzIxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9ydF9zaWdhY3Rpb24gKF9fWDMyX1NZU0NBTExfQklUICsgNTEyKQogI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1MTMpCkBAIC0zOTksNSArNDA0LDcgQEAKICNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3dyaXRldiAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1NDApCiAjZGVmaW5lIF9fTlJfc2V0c29ja29wdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1NDEpCiAjZGVmaW5lIF9fTlJfZ2V0c29ja29wdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1NDIpCi0jZW5kaWYKKyNkZWZpbmUgX19OUl9pb19zZXR1cCAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1NDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2lvX3N1Ym1pdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1NDQpCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdm04Ni5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bTg2LmgKaW5kZXggNDI1MTNjYy4uZWI1MzUwNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bTg2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bTg2LmgKQEAgLTQ4LDY4ICs0OCw2OCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVk04Nl9HRVRfQU5EX1JFU0VUX0lSUSA2CiBzdHJ1Y3Qgdm04Nl9yZWdzIHsKLSBsb25nIGVieDsKLSBsb25nIGVjeDsKKyAgbG9uZyBlYng7CisgIGxvbmcgZWN4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGVkeDsKLSBsb25nIGVzaTsKLSBsb25nIGVkaTsKLSBsb25nIGVicDsKKyAgbG9uZyBlZHg7CisgIGxvbmcgZXNpOworICBsb25nIGVkaTsKKyAgbG9uZyBlYnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZWF4OwotIGxvbmcgX19udWxsX2RzOwotIGxvbmcgX19udWxsX2VzOwotIGxvbmcgX19udWxsX2ZzOworICBsb25nIGVheDsKKyAgbG9uZyBfX251bGxfZHM7CisgIGxvbmcgX19udWxsX2VzOworICBsb25nIF9fbnVsbF9mczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBfX251bGxfZ3M7Ci0gbG9uZyBvcmlnX2VheDsKLSBsb25nIGVpcDsKLSB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7CisgIGxvbmcgX19udWxsX2dzOworICBsb25nIG9yaWdfZWF4OworICBsb25nIGVpcDsKKyAgdW5zaWduZWQgc2hvcnQgY3MsIF9fY3NoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGVmbGFnczsKLSBsb25nIGVzcDsKLSB1bnNpZ25lZCBzaG9ydCBzcywgX19zc2g7Ci0gdW5zaWduZWQgc2hvcnQgZXMsIF9fZXNoOworICBsb25nIGVmbGFnczsKKyAgbG9uZyBlc3A7CisgIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKKyAgdW5zaWduZWQgc2hvcnQgZXMsIF9fZXNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBkcywgX19kc2g7Ci0gdW5zaWduZWQgc2hvcnQgZnMsIF9fZnNoOwotIHVuc2lnbmVkIHNob3J0IGdzLCBfX2dzaDsKKyAgdW5zaWduZWQgc2hvcnQgZHMsIF9fZHNoOworICB1bnNpZ25lZCBzaG9ydCBmcywgX19mc2g7CisgIHVuc2lnbmVkIHNob3J0IGdzLCBfX2dzaDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIF9fbWFwWzhdOworICB1bnNpZ25lZCBsb25nIF9fbWFwWzhdOwogfTsKIHN0cnVjdCB2bTg2X3N0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2bTg2X3JlZ3MgcmVnczsKLSB1bnNpZ25lZCBsb25nIGZsYWdzOwotIHVuc2lnbmVkIGxvbmcgc2NyZWVuX2JpdG1hcDsKLSB1bnNpZ25lZCBsb25nIGNwdV90eXBlOworICBzdHJ1Y3Qgdm04Nl9yZWdzIHJlZ3M7CisgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CisgIHVuc2lnbmVkIGxvbmcgc2NyZWVuX2JpdG1hcDsKKyAgdW5zaWduZWQgbG9uZyBjcHVfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludF9yZXZlY3RvcmVkOwotIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnQyMV9yZXZlY3RvcmVkOworICBzdHJ1Y3QgcmV2ZWN0b3JlZF9zdHJ1Y3QgaW50X3JldmVjdG9yZWQ7CisgIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnQyMV9yZXZlY3RvcmVkOwogfTsKICNkZWZpbmUgVk04Nl9TQ1JFRU5fQklUTUFQIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2bTg2cGx1c19pbmZvX3N0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBmb3JjZV9yZXR1cm5fZm9yX3BpYzoxOwotIHVuc2lnbmVkIGxvbmcgdm04NmRiZ19hY3RpdmU6MTsKLSB1bnNpZ25lZCBsb25nIHZtODZkYmdfVEZwZW5kaWc6MTsKKyAgdW5zaWduZWQgbG9uZyBmb3JjZV9yZXR1cm5fZm9yX3BpYyA6IDE7CisgIHVuc2lnbmVkIGxvbmcgdm04NmRiZ19hY3RpdmUgOiAxOworICB1bnNpZ25lZCBsb25nIHZtODZkYmdfVEZwZW5kaWcgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHVudXNlZDoyODsKLSB1bnNpZ25lZCBsb25nIGlzX3ZtODZwdXM6MTsKLSB1bnNpZ25lZCBjaGFyIHZtODZkYmdfaW50eHh0YWJbMzJdOworICB1bnNpZ25lZCBsb25nIHVudXNlZCA6IDI4OworICB1bnNpZ25lZCBsb25nIGlzX3ZtODZwdXMgOiAxOworICB1bnNpZ25lZCBjaGFyIHZtODZkYmdfaW50eHh0YWJbMzJdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgdm04NnBsdXNfc3RydWN0IHsKLSBzdHJ1Y3Qgdm04Nl9yZWdzIHJlZ3M7Ci0gdW5zaWduZWQgbG9uZyBmbGFnczsKLSB1bnNpZ25lZCBsb25nIHNjcmVlbl9iaXRtYXA7CisgIHN0cnVjdCB2bTg2X3JlZ3MgcmVnczsKKyAgdW5zaWduZWQgbG9uZyBmbGFnczsKKyAgdW5zaWduZWQgbG9uZyBzY3JlZW5fYml0bWFwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGNwdV90eXBlOwotIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnRfcmV2ZWN0b3JlZDsKLSBzdHJ1Y3QgcmV2ZWN0b3JlZF9zdHJ1Y3QgaW50MjFfcmV2ZWN0b3JlZDsKLSBzdHJ1Y3Qgdm04NnBsdXNfaW5mb19zdHJ1Y3Qgdm04NnBsdXM7CisgIHVuc2lnbmVkIGxvbmcgY3B1X3R5cGU7CisgIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnRfcmV2ZWN0b3JlZDsKKyAgc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludDIxX3JldmVjdG9yZWQ7CisgIHN0cnVjdCB2bTg2cGx1c19pbmZvX3N0cnVjdCB2bTg2cGx1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZteC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bXguaAppbmRleCBlMTBlMmI2Li42NzMxZDNjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZteC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdm14LmgKQEAgLTY4LDExICs2OCwxMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVhJVF9SRUFTT05fSU5WRVBUIDUwCiAjZGVmaW5lIEVYSVRfUkVBU09OX1BSRUVNUFRJT05fVElNRVIgNTIKKyNkZWZpbmUgRVhJVF9SRUFTT05fSU5WVlBJRCA1MwogI2RlZmluZSBFWElUX1JFQVNPTl9XQklOVkQgNTQKLSNkZWZpbmUgRVhJVF9SRUFTT05fWFNFVEJWIDU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFWElUX1JFQVNPTl9YU0VUQlYgNTUKICNkZWZpbmUgRVhJVF9SRUFTT05fQVBJQ19XUklURSA1NgogI2RlZmluZSBFWElUX1JFQVNPTl9JTlZQQ0lEIDU4Ci0jZGVmaW5lIFZNWF9FWElUX1JFQVNPTlMgICB7IEVYSVRfUkVBU09OX0VYQ0VQVElPTl9OTUksICJFWENFUFRJT05fTk1JIiB9LCAgIHsgRVhJVF9SRUFTT05fRVhURVJOQUxfSU5URVJSVVBULCAiRVhURVJOQUxfSU5URVJSVVBUIiB9LCAgIHsgRVhJVF9SRUFTT05fVFJJUExFX0ZBVUxULCAiVFJJUExFX0ZBVUxUIiB9LCAgIHsgRVhJVF9SRUFTT05fUEVORElOR19JTlRFUlJVUFQsICJQRU5ESU5HX0lOVEVSUlVQVCIgfSwgICB7IEVYSVRfUkVBU09OX05NSV9XSU5ET1csICJOTUlfV0lORE9XIiB9LCAgIHsgRVhJVF9SRUFTT05fVEFTS19TV0lUQ0gsICJUQVNLX1NXSVRDSCIgfSwgICB7IEVYSVRfUkVBU09OX0NQVUlELCAiQ1BVSUQiIH0sICAgeyBFWElUX1JFQVNPTl9ITFQsICJITFQiIH0sICAgeyBFWElUX1JFQVNPTl9JTlZMUEcsICJJTlZMUEciIH0sICAgeyBFWElUX1JFQVNPTl9SRFBNQywgIlJEUE1DIiB9LCAgIHsgRVhJVF9SRUFTT05fUkRUU0MsICJSRFRTQyIgfSwgICB7IEVYSVRfUkVBU09OX1ZNQ0FMTCwgIlZNQ0FMTCIgfSwgICB7IEVYSVRfUkVBU09OX1ZNQ0xFQVIsICJWTUNMRUFSIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1MQVVOQ0gsICJWTUxBVU5DSCIgfSwgICB7IEVYSVRfUkVBU09OX1ZNUFRSTEQsICJWTVBUUkxEIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1QVFJTVCwgIlZNUFRSU1QiIH0sICAgeyBFWElUX1JFQVNPTl9WTVJFQUQsICJWTVJFQUQiIH0sICAgeyBFWElUX1JFQVNPTl9WTVJFU1VNRSwgIlZNUkVTVU1FIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1XUklURSwgIlZNV1JJVEUiIH0sICAgeyBFWElUX1JFQVNPTl9WTU9GRiwgIlZNT0ZGIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1PTiwgIlZNT04iIH0sICAgeyBFWElUX1JFQVNPTl9DUl9BQ0NFU1MsICJDUl9BQ0NFU1MiIH0sICAgeyBFWElUX1JFQVNPTl9EUl9BQ0NFU1MsICJEUl9BQ0NFU1MiIH0sICAgeyBFWElUX1JFQVNPTl9JT19JTlNUUlVDVElPTiwgIklPX0lOU1RSVUNUSU9OIiB9LCAgIHsgRVhJVF9SRUFTT05fTVNSX1JFQUQsICJNU1JfUkVBRCIgfSwgICB7IEVYSVRfUkVBU09OX01TUl9XUklURSwgIk1TUl9XUklURSIgfSwgICB7IEVYSVRfUkVBU09OX01XQUlUX0lOU1RSVUNUSU9OLCAiTVdBSVRfSU5TVFJVQ1RJT04iIH0sICAgeyBFWElUX1JFQVNPTl9NT05JVE9SX0lOU1RSVUNUSU9OLCAiTU9OSVRPUl9JTlNUUlVDVElPTiIgfSwgICB7IEVYSVRfUkVBU09OX1BBVVNFX0lOU1RSVUNUSU9OLCAiUEFVU0VfSU5TVFJVQ1RJT04iIH0sICAgeyBFWElUX1JFQVNPTl9NQ0VfRFVSSU5HX1ZNRU5UUlksICJNQ0VfRFVSSU5HX1ZNRU5UUlkiIH0sICAgeyBFWElUX1JFQVNPTl9UUFJfQkVMT1dfVEhSRVNIT0xELCAiVFBSX0JFTE9XX1RIUkVTSE9MRCIgfSwgICB7IEVYSVRfUkVBU09OX0FQSUNfQUNDRVNTLCAiQVBJQ19BQ0NFU1MiIH0sICAgeyBFWElUX1JFQVNPTl9FUFRfVklPTEFUSU9OLCAiRVBUX1ZJT0xBVElPTiIgfSwgICB7IEVYSVRfUkVBU09OX0VQVF9NSVNDT05GSUcsICJFUFRfTUlTQ09ORklHIiB9LCAgIHsgRVhJVF9SRUFTT05fSU5WRVBULCAiSU5WRVBUIiB9LCAgIHsgRVhJVF9SRUFTT05fUFJFRU1QVElPTl9USU1FUiwgIlBSRUVNUFRJT05fVElNRVIiIH0sICAgeyBFWElUX1JFQVNPTl9XQklOVkQsICJXQklOVkQiIH0sICAgeyBFWElUX1JFQVNPTl9BUElDX1dSSVRFLCAiQVBJQ19XUklURSIgfSwgICB7IEVYSVRfUkVBU09OX0VPSV9JTkRVQ0VELCAiRU9JX0lORFVDRUQiIH0sICAgeyBFWElUX1JFQVNPTl9JTlZBTElEX1NUQVRFLCAiSU5WQUxJRF9TVEFURSIgfSwgICB7IEVYSVRfUkVBU09OX0lOVkQsICJJTlZEIiB9LCAgIHsgRVhJVF9SRUFTT05fSU5WUENJRCwgIklOVlBDSUQiIH0KLSNlbmRpZgorI2RlZmluZSBWTVhfRVhJVF9SRUFTT05TIHsgRVhJVF9SRUFTT05fRVhDRVBUSU9OX05NSSwgIkVYQ0VQVElPTl9OTUkiIH0sIHsgRVhJVF9SRUFTT05fRVhURVJOQUxfSU5URVJSVVBULCAiRVhURVJOQUxfSU5URVJSVVBUIiB9LCB7IEVYSVRfUkVBU09OX1RSSVBMRV9GQVVMVCwgIlRSSVBMRV9GQVVMVCIgfSwgeyBFWElUX1JFQVNPTl9QRU5ESU5HX0lOVEVSUlVQVCwgIlBFTkRJTkdfSU5URVJSVVBUIiB9LCB7IEVYSVRfUkVBU09OX05NSV9XSU5ET1csICJOTUlfV0lORE9XIiB9LCB7IEVYSVRfUkVBU09OX1RBU0tfU1dJVENILCAiVEFTS19TV0lUQ0giIH0sIHsgRVhJVF9SRUFTT05fQ1BVSUQsICJDUFVJRCIgfSwgeyBFWElUX1JFQVNPTl9ITFQsICJITFQiIH0sIHsgRVhJVF9SRUFTT05fSU5WTFBHLCAiSU5WTFBHIiB9LCB7IEVYSVRfUkVBU09OX1JEUE1DLCAiUkRQTUMiIH0sIHsgRVhJVF9SRUFTT05fUkRUU0MsICJSRFRTQyIgfSwgeyBFWElUX1JFQVNPTl9WTUNBTEwsICJWTUNBTEwiIH0sIHsgRVhJVF9SRUFTT05fVk1DTEVBUiwgIlZNQ0xFQVIiIH0sIHsgRVhJVF9SRUFTT05fVk1MQVVOQ0gsICJWTUxBVU5DSCIgfSwgeyBFWElUX1JFQVNPTl9WTVBUUkxELCAiVk1QVFJMRCIgfSwgeyBFWElUX1JFQVNPTl9WTVBUUlNULCAiVk1QVFJTVCIgfSwgeyBFWElUX1JFQVNPTl9WTVJFQUQsICJWTVJFQUQiIH0sIHsgRVhJVF9SRUFTT05fVk1SRVNVTUUsICJWTVJFU1VNRSIgfSwgeyBFWElUX1JFQVNPTl9WTVdSSVRFLCAiVk1XUklURSIgfSwgeyBFWElUX1JFQVNPTl9WTU9GRiwgIlZNT0ZGIiB9LCB7IEVYSVRfUkVBU09OX1ZNT04sICJWTU9OIiB9LCB7IEVYSVRfUkVBU09OX0NSX0FDQ0VTUywgIkNSX0FDQ0VTUyIgfSwgeyBFWElUX1JFQVNPTl9EUl9BQ0NFU1MsICJEUl9BQ0NFU1MiIH0sIHsgRVhJVF9SRUFTT05fSU9fSU5TVFJVQ1RJT04sICJJT19JTlNUUlVDVElPTiIgfSwgeyBFWElUX1JFQVNPTl9NU1JfUkVBRCwgIk1TUl9SRUFEIiB9LCB7IEVYSVRfUkVBU09OX01TUl9XUklURSwgIk1TUl9XUklURSIgfSwgeyBFWElUX1JFQVNPTl9NV0FJVF9JTlNUUlVDVElPTiwgIk1XQUlUX0lOU1RSVUNUSU9OIiB9LCB7IEVYSVRfUkVBU09OX01PTklUT1JfSU5TVFJVQ1RJT04sICJNT05JVE9SX0lOU1RSVUNUSU9OIiB9LCB7IEVYSVRfUkVBU09OX1BBVVNFX0lOU1RSVUNUSU9OLCAiUEFVU0VfSU5TVFJVQ1RJT04iIH0sIHsgRVhJVF9SRUFTT05fTUNFX0RVUklOR19WTUVOVFJZLCAiTUNFX0RVUklOR19WTUVOVFJZIiB9LCB7IEVYSVRfUkVBU09OX1RQUl9CRUxPV19USFJFU0hPTEQsICJUUFJfQkVMT1dfVEhSRVNIT0xEIiB9LCB7IEVYSVRfUkVBU09OX0FQSUNfQUNDRVNTLCAiQVBJQ19BQ0NFU1MiIH0sIHsgRVhJVF9SRUFTT05fRVBUX1ZJT0xBVElPTiwgIkVQVF9WSU9MQVRJT04iIH0sIHsgRVhJVF9SRUFTT05fRVBUX01JU0NPTkZJRywgIkVQVF9NSVNDT05GSUciIH0sIHsgRVhJVF9SRUFTT05fSU5WRVBULCAiSU5WRVBUIiB9LCB7IEVYSVRfUkVBU09OX1BSRUVNUFRJT05fVElNRVIsICJQUkVFTVBUSU9OX1RJTUVSIiB9LCB7IEVYSVRfUkVBU09OX1dCSU5WRCwgIldCSU5WRCIgfSwgeyBFWElUX1JFQVNPTl9BUElDX1dSSVRFLCAiQVBJQ19XUklURSIgfSwgeyBFWElUX1JFQVNPTl9FT0lfSU5EVUNFRCwgIkVPSV9JTkRVQ0VEIiB9LCB7IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEUsICJJTlZBTElEX1NUQVRFIiB9LCB7IEVYSVRfUkVBU09OX0lOVkQsICJJTlZEIiB9LCB7IEVYSVRfUkVBU09OX0lOVlZQSUQsICJJTlZWUElEIiB9LCB7IEVYSVRfUkVBU09OX0lOVlBDSUQsICJJTlZQQ0lEIiB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZzeXNjYWxsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZzeXNjYWxsLmgKaW5kZXggNGE1YjNhYi4uOTViZjJjYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92c3lzY2FsbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdnN5c2NhbGwuaApAQCAtMTksMTYgKzE5LDExIEBACiAjaWZuZGVmIF9VQVBJX0FTTV9YODZfVlNZU0NBTExfSAogI2RlZmluZSBfVUFQSV9BU01fWDg2X1ZTWVNDQUxMX0gKIGVudW0gdnN5c2NhbGxfbnVtIHsKLSBfX05SX3ZnZXR0aW1lb2ZkYXksCisgIF9fTlJfdmdldHRpbWVvZmRheSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OUl92dGltZSwKLSBfX05SX3ZnZXRjcHUsCisgIF9fTlJfdnRpbWUsCisgIF9fTlJfdmdldGNwdSwKIH07Ci0jZGVmaW5lIFZTWVNDQUxMX1NUQVJUICgtMTBVTCA8PCAyMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZTWVNDQUxMX1NJWkUgMTAyNAotI2RlZmluZSBWU1lTQ0FMTF9FTkQgKC0yVUwgPDwgMjApCi0jZGVmaW5lIFZTWVNDQUxMX01BUFBFRF9QQUdFUyAxCi0jZGVmaW5lIFZTWVNDQUxMX0FERFIodnN5c2NhbGxfbnIpIChWU1lTQ0FMTF9TVEFSVCtWU1lTQ0FMTF9TSVpFKih2c3lzY2FsbF9ucikpCisjZGVmaW5lIFZTWVNDQUxMX0FERFIgKC0gMTBVTCA8PCAyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2FybWFkYV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2FybWFkYV9kcm0uaAppbmRleCBlZmQ3ZGQ0Li4xNjBjNGY4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9hcm1hZGFfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vYXJtYWRhX2RybS5oCkBAIC0yMiwzMCArMjIsMzAgQEAKICNkZWZpbmUgRFJNX0FSTUFEQV9HRU1fTU1BUCAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fQVJNQURBX0dFTV9QV1JJVEUgMHgwMwotI2RlZmluZSBBUk1BREFfSU9DVEwoZGlyLCBuYW1lLCBzdHIpICAgRFJNXyMjZGlyKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fQVJNQURBXyMjbmFtZSwgc3RydWN0IGRybV9hcm1hZGFfIyNzdHIpCisjZGVmaW5lIEFSTUFEQV9JT0NUTChkaXIsbmFtZSxzdHIpIERSTV8gIyNkaXIoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9BUk1BREFfICMjbmFtZSwgc3RydWN0IGRybV9hcm1hZGFfICMjc3RyKQogc3RydWN0IGRybV9hcm1hZGFfZ2VtX2NyZWF0ZSB7Ci0gdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHNpemU7CiB9OwotI2RlZmluZSBEUk1fSU9DVExfQVJNQURBX0dFTV9DUkVBVEUgICBBUk1BREFfSU9DVEwoSU9XUiwgR0VNX0NSRUFURSwgZ2VtX2NyZWF0ZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0FSTUFEQV9HRU1fQ1JFQVRFIEFSTUFEQV9JT0NUTChJT1dSLCBHRU1fQ1JFQVRFLCBnZW1fY3JlYXRlKQogc3RydWN0IGRybV9hcm1hZGFfZ2VtX21tYXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50NjRfdCBzaXplOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBhZGRyOworICB1aW50NjRfdCBhZGRyOwogfTsKLSNkZWZpbmUgRFJNX0lPQ1RMX0FSTUFEQV9HRU1fTU1BUCAgIEFSTUFEQV9JT0NUTChJT1dSLCBHRU1fTU1BUCwgZ2VtX21tYXApCisjZGVmaW5lIERSTV9JT0NUTF9BUk1BREFfR0VNX01NQVAgQVJNQURBX0lPQ1RMKElPV1IsIEdFTV9NTUFQLCBnZW1fbW1hcCkKIHN0cnVjdCBkcm1fYXJtYWRhX2dlbV9wd3JpdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBwdHI7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IG9mZnNldDsKLSB1aW50MzJfdCBzaXplOworICB1aW50NjRfdCBwdHI7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3Qgb2Zmc2V0OworICB1aW50MzJfdCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIERSTV9JT0NUTF9BUk1BREFfR0VNX1BXUklURSAgIEFSTUFEQV9JT0NUTChJT1csIEdFTV9QV1JJVEUsIGdlbV9wd3JpdGUpCisjZGVmaW5lIERSTV9JT0NUTF9BUk1BREFfR0VNX1BXUklURSBBUk1BREFfSU9DVEwoSU9XLCBHRU1fUFdSSVRFLCBnZW1fcHdyaXRlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybS5oCmluZGV4IGVkODQ4YTguLjhlZmM3ZDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybS5oCkBAIC00OSwzNzYgKzQ5LDM3NiBAQAogI2RlZmluZSBfRFJNX0xPQ0tfQ09OVCAweDQwMDAwMDAwVQogI2RlZmluZSBfRFJNX0xPQ0tfSVNfSEVMRChsb2NrKSAoKGxvY2spICYgX0RSTV9MT0NLX0hFTEQpCiAjZGVmaW5lIF9EUk1fTE9DS19JU19DT05UKGxvY2spICgobG9jaykgJiBfRFJNX0xPQ0tfQ09OVCkKLSNkZWZpbmUgX0RSTV9MT0NLSU5HX0NPTlRFWFQobG9jaykgKChsb2NrKSAmIH4oX0RSTV9MT0NLX0hFTER8X0RSTV9MT0NLX0NPTlQpKQorI2RlZmluZSBfRFJNX0xPQ0tJTkdfQ09OVEVYVChsb2NrKSAoKGxvY2spICYgfihfRFJNX0xPQ0tfSEVMRCB8IF9EUk1fTE9DS19DT05UKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuc2lnbmVkIGludCBkcm1fY29udGV4dF90OwogdHlwZWRlZiB1bnNpZ25lZCBpbnQgZHJtX2RyYXdhYmxlX3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGludCBkcm1fbWFnaWNfdDsKIHN0cnVjdCBkcm1fY2xpcF9yZWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgeDE7Ci0gdW5zaWduZWQgc2hvcnQgeTE7Ci0gdW5zaWduZWQgc2hvcnQgeDI7Ci0gdW5zaWduZWQgc2hvcnQgeTI7CisgIHVuc2lnbmVkIHNob3J0IHgxOworICB1bnNpZ25lZCBzaG9ydCB5MTsKKyAgdW5zaWduZWQgc2hvcnQgeDI7CisgIHVuc2lnbmVkIHNob3J0IHkyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2RyYXdhYmxlX2luZm8gewotIHVuc2lnbmVkIGludCBudW1fcmVjdHM7Ci0gc3RydWN0IGRybV9jbGlwX3JlY3QgKnJlY3RzOworICB1bnNpZ25lZCBpbnQgbnVtX3JlY3RzOworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCAqIHJlY3RzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gewotIHVuc2lnbmVkIGNoYXIgbmV4dDsKLSB1bnNpZ25lZCBjaGFyIHByZXY7CisgIHVuc2lnbmVkIGNoYXIgbmV4dDsKKyAgdW5zaWduZWQgY2hhciBwcmV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGluX3VzZTsKLSB1bnNpZ25lZCBjaGFyIHBhZGRpbmc7Ci0gdW5zaWduZWQgaW50IGFnZTsKKyAgdW5zaWduZWQgY2hhciBpbl91c2U7CisgIHVuc2lnbmVkIGNoYXIgcGFkZGluZzsKKyAgdW5zaWduZWQgaW50IGFnZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9od19sb2NrIHsKLSBfX3ZvbGF0aWxlX18gdW5zaWduZWQgaW50IGxvY2s7Ci0gY2hhciBwYWRkaW5nWzYwXTsKKyAgX192b2xhdGlsZV9fIHVuc2lnbmVkIGludCBsb2NrOworICBjaGFyIHBhZGRpbmdbNjBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3ZlcnNpb24gewotIGludCB2ZXJzaW9uX21ham9yOwotIGludCB2ZXJzaW9uX21pbm9yOwotIGludCB2ZXJzaW9uX3BhdGNobGV2ZWw7CisgIGludCB2ZXJzaW9uX21ham9yOworICBpbnQgdmVyc2lvbl9taW5vcjsKKyAgaW50IHZlcnNpb25fcGF0Y2hsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IG5hbWVfbGVuOwotIGNoYXIgX191c2VyICpuYW1lOwotIHNpemVfdCBkYXRlX2xlbjsKLSBjaGFyIF9fdXNlciAqZGF0ZTsKKyAgc2l6ZV90IG5hbWVfbGVuOworICBjaGFyIF9fdXNlciAqIG5hbWU7CisgIHNpemVfdCBkYXRlX2xlbjsKKyAgY2hhciBfX3VzZXIgKiBkYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgZGVzY19sZW47Ci0gY2hhciBfX3VzZXIgKmRlc2M7CisgIHNpemVfdCBkZXNjX2xlbjsKKyAgY2hhciBfX3VzZXIgKiBkZXNjOwogfTsKIHN0cnVjdCBkcm1fdW5pcXVlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IHVuaXF1ZV9sZW47Ci0gY2hhciBfX3VzZXIgKnVuaXF1ZTsKKyAgc2l6ZV90IHVuaXF1ZV9sZW47CisgIGNoYXIgX191c2VyICogdW5pcXVlOwogfTsKIHN0cnVjdCBkcm1fbGlzdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb3VudDsKLSBzdHJ1Y3QgZHJtX3ZlcnNpb24gX191c2VyICp2ZXJzaW9uOworICBpbnQgY291bnQ7CisgIHN0cnVjdCBkcm1fdmVyc2lvbiBfX3VzZXIgKiB2ZXJzaW9uOwogfTsKIHN0cnVjdCBkcm1fYmxvY2sgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdW51c2VkOworICBpbnQgdW51c2VkOwogfTsKIHN0cnVjdCBkcm1fY29udHJvbCB7Ci0gZW51bSB7CisgIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEUk1fQUREX0NPTU1BTkQsCi0gRFJNX1JNX0NPTU1BTkQsCi0gRFJNX0lOU1RfSEFORExFUiwKLSBEUk1fVU5JTlNUX0hBTkRMRVIKKyAgICBEUk1fQUREX0NPTU1BTkQsCisgICAgRFJNX1JNX0NPTU1BTkQsCisgICAgRFJNX0lOU1RfSEFORExFUiwKKyAgICBEUk1fVU5JTlNUX0hBTkRMRVIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmdW5jOwotIGludCBpcnE7CisgIH0gZnVuYzsKKyAgaW50IGlycTsKIH07CiBlbnVtIGRybV9tYXBfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fRlJBTUVfQlVGRkVSID0gMCwKLSBfRFJNX1JFR0lTVEVSUyA9IDEsCi0gX0RSTV9TSE0gPSAyLAotIF9EUk1fQUdQID0gMywKKyAgX0RSTV9GUkFNRV9CVUZGRVIgPSAwLAorICBfRFJNX1JFR0lTVEVSUyA9IDEsCisgIF9EUk1fU0hNID0gMiwKKyAgX0RSTV9BR1AgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1NDQVRURVJfR0FUSEVSID0gNCwKLSBfRFJNX0NPTlNJU1RFTlQgPSA1LAorICBfRFJNX1NDQVRURVJfR0FUSEVSID0gNCwKKyAgX0RSTV9DT05TSVNURU5UID0gNSwKIH07CiBlbnVtIGRybV9tYXBfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1JFU1RSSUNURUQgPSAweDAxLAotIF9EUk1fUkVBRF9PTkxZID0gMHgwMiwKLSBfRFJNX0xPQ0tFRCA9IDB4MDQsCi0gX0RSTV9LRVJORUwgPSAweDA4LAorICBfRFJNX1JFU1RSSUNURUQgPSAweDAxLAorICBfRFJNX1JFQURfT05MWSA9IDB4MDIsCisgIF9EUk1fTE9DS0VEID0gMHgwNCwKKyAgX0RSTV9LRVJORUwgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1dSSVRFX0NPTUJJTklORyA9IDB4MTAsCi0gX0RSTV9DT05UQUlOU19MT0NLID0gMHgyMCwKLSBfRFJNX1JFTU9WQUJMRSA9IDB4NDAsCi0gX0RSTV9EUklWRVIgPSAweDgwCisgIF9EUk1fV1JJVEVfQ09NQklOSU5HID0gMHgxMCwKKyAgX0RSTV9DT05UQUlOU19MT0NLID0gMHgyMCwKKyAgX0RSTV9SRU1PVkFCTEUgPSAweDQwLAorICBfRFJNX0RSSVZFUiA9IDB4ODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9jdHhfcHJpdl9tYXAgewotIHVuc2lnbmVkIGludCBjdHhfaWQ7Ci0gdm9pZCAqaGFuZGxlOworICB1bnNpZ25lZCBpbnQgY3R4X2lkOworICB2b2lkICogaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX21hcCB7Ci0gdW5zaWduZWQgbG9uZyBvZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBzaXplOworICB1bnNpZ25lZCBsb25nIG9mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIGRybV9tYXBfdHlwZSB0eXBlOwotIGVudW0gZHJtX21hcF9mbGFncyBmbGFnczsKLSB2b2lkICpoYW5kbGU7Ci0gaW50IG10cnI7CisgIGVudW0gZHJtX21hcF90eXBlIHR5cGU7CisgIGVudW0gZHJtX21hcF9mbGFncyBmbGFnczsKKyAgdm9pZCAqIGhhbmRsZTsKKyAgaW50IG10cnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fY2xpZW50IHsKLSBpbnQgaWR4OwotIGludCBhdXRoOworICBpbnQgaWR4OworICBpbnQgYXV0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBwaWQ7Ci0gdW5zaWduZWQgbG9uZyB1aWQ7Ci0gdW5zaWduZWQgbG9uZyBtYWdpYzsKLSB1bnNpZ25lZCBsb25nIGlvY3M7CisgIHVuc2lnbmVkIGxvbmcgcGlkOworICB1bnNpZ25lZCBsb25nIHVpZDsKKyAgdW5zaWduZWQgbG9uZyBtYWdpYzsKKyAgdW5zaWduZWQgbG9uZyBpb2NzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV9zdGF0X3R5cGUgewotIF9EUk1fU1RBVF9MT0NLLAotIF9EUk1fU1RBVF9PUEVOUywKKyAgX0RSTV9TVEFUX0xPQ0ssCisgIF9EUk1fU1RBVF9PUEVOUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9TVEFUX0NMT1NFUywKLSBfRFJNX1NUQVRfSU9DVExTLAotIF9EUk1fU1RBVF9MT0NLUywKLSBfRFJNX1NUQVRfVU5MT0NLUywKKyAgX0RSTV9TVEFUX0NMT1NFUywKKyAgX0RSTV9TVEFUX0lPQ1RMUywKKyAgX0RSTV9TVEFUX0xPQ0tTLAorICBfRFJNX1NUQVRfVU5MT0NLUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9TVEFUX1ZBTFVFLAotIF9EUk1fU1RBVF9CWVRFLAotIF9EUk1fU1RBVF9DT1VOVCwKLSBfRFJNX1NUQVRfSVJRLAorICBfRFJNX1NUQVRfVkFMVUUsCisgIF9EUk1fU1RBVF9CWVRFLAorICBfRFJNX1NUQVRfQ09VTlQsCisgIF9EUk1fU1RBVF9JUlEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fU1RBVF9QUklNQVJZLAotIF9EUk1fU1RBVF9TRUNPTkRBUlksCi0gX0RSTV9TVEFUX0RNQSwKLSBfRFJNX1NUQVRfU1BFQ0lBTCwKKyAgX0RSTV9TVEFUX1BSSU1BUlksCisgIF9EUk1fU1RBVF9TRUNPTkRBUlksCisgIF9EUk1fU1RBVF9ETUEsCisgIF9EUk1fU1RBVF9TUEVDSUFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1NUQVRfTUlTU0VECisgIF9EUk1fU1RBVF9NSVNTRUQKIH07CiBzdHJ1Y3QgZHJtX3N0YXRzIHsKLSB1bnNpZ25lZCBsb25nIGNvdW50OworICB1bnNpZ25lZCBsb25nIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgdmFsdWU7Ci0gZW51bSBkcm1fc3RhdF90eXBlIHR5cGU7Ci0gfSBkYXRhWzE1XTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBsb25nIHZhbHVlOworICAgIGVudW0gZHJtX3N0YXRfdHlwZSB0eXBlOworICB9IGRhdGFbMTVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV9sb2NrX2ZsYWdzIHsKLSBfRFJNX0xPQ0tfUkVBRFkgPSAweDAxLAotIF9EUk1fTE9DS19RVUlFU0NFTlQgPSAweDAyLAorICBfRFJNX0xPQ0tfUkVBRFkgPSAweDAxLAorICBfRFJNX0xPQ0tfUVVJRVNDRU5UID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9MT0NLX0ZMVVNIID0gMHgwNCwKLSBfRFJNX0xPQ0tfRkxVU0hfQUxMID0gMHgwOCwKLSBfRFJNX0hBTFRfQUxMX1FVRVVFUyA9IDB4MTAsCi0gX0RSTV9IQUxUX0NVUl9RVUVVRVMgPSAweDIwCisgIF9EUk1fTE9DS19GTFVTSCA9IDB4MDQsCisgIF9EUk1fTE9DS19GTFVTSF9BTEwgPSAweDA4LAorICBfRFJNX0hBTFRfQUxMX1FVRVVFUyA9IDB4MTAsCisgIF9EUk1fSEFMVF9DVVJfUVVFVUVTID0gMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2xvY2sgewotIGludCBjb250ZXh0OwotIGVudW0gZHJtX2xvY2tfZmxhZ3MgZmxhZ3M7CisgIGludCBjb250ZXh0OworICBlbnVtIGRybV9sb2NrX2ZsYWdzIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV9kbWFfZmxhZ3MgewotIF9EUk1fRE1BX0JMT0NLID0gMHgwMSwKLSBfRFJNX0RNQV9XSElMRV9MT0NLRUQgPSAweDAyLAorICBfRFJNX0RNQV9CTE9DSyA9IDB4MDEsCisgIF9EUk1fRE1BX1dISUxFX0xPQ0tFRCA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fRE1BX1BSSU9SSVRZID0gMHgwNCwKLSBfRFJNX0RNQV9XQUlUID0gMHgxMCwKLSBfRFJNX0RNQV9TTUFMTEVSX09LID0gMHgyMCwKLSBfRFJNX0RNQV9MQVJHRVJfT0sgPSAweDQwCisgIF9EUk1fRE1BX1BSSU9SSVRZID0gMHgwNCwKKyAgX0RSTV9ETUFfV0FJVCA9IDB4MTAsCisgIF9EUk1fRE1BX1NNQUxMRVJfT0sgPSAweDIwLAorICBfRFJNX0RNQV9MQVJHRVJfT0sgPSAweDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fYnVmX2Rlc2MgewotIGludCBjb3VudDsKLSBpbnQgc2l6ZTsKKyAgaW50IGNvdW50OworICBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGxvd19tYXJrOwotIGludCBoaWdoX21hcms7Ci0gZW51bSB7Ci0gX0RSTV9QQUdFX0FMSUdOID0gMHgwMSwKKyAgaW50IGxvd19tYXJrOworICBpbnQgaGlnaF9tYXJrOworICBlbnVtIHsKKyAgICBfRFJNX1BBR0VfQUxJR04gPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX0FHUF9CVUZGRVIgPSAweDAyLAotIF9EUk1fU0dfQlVGRkVSID0gMHgwNCwKLSBfRFJNX0ZCX0JVRkZFUiA9IDB4MDgsCi0gX0RSTV9QQ0lfQlVGRkVSX1JPID0gMHgxMAorICAgIF9EUk1fQUdQX0JVRkZFUiA9IDB4MDIsCisgICAgX0RSTV9TR19CVUZGRVIgPSAweDA0LAorICAgIF9EUk1fRkJfQlVGRkVSID0gMHgwOCwKKyAgICBfRFJNX1BDSV9CVUZGRVJfUk8gPSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZmxhZ3M7Ci0gdW5zaWduZWQgbG9uZyBhZ3Bfc3RhcnQ7CisgIH0gZmxhZ3M7CisgIHVuc2lnbmVkIGxvbmcgYWdwX3N0YXJ0OwogfTsKIHN0cnVjdCBkcm1fYnVmX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY291bnQ7Ci0gc3RydWN0IGRybV9idWZfZGVzYyBfX3VzZXIgKmxpc3Q7CisgIGludCBjb3VudDsKKyAgc3RydWN0IGRybV9idWZfZGVzYyBfX3VzZXIgKiBsaXN0OwogfTsKIHN0cnVjdCBkcm1fYnVmX2ZyZWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY291bnQ7Ci0gaW50IF9fdXNlciAqbGlzdDsKKyAgaW50IGNvdW50OworICBpbnQgX191c2VyICogbGlzdDsKIH07CiBzdHJ1Y3QgZHJtX2J1Zl9wdWIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaWR4OwotIGludCB0b3RhbDsKLSBpbnQgdXNlZDsKLSB2b2lkIF9fdXNlciAqYWRkcmVzczsKKyAgaW50IGlkeDsKKyAgaW50IHRvdGFsOworICBpbnQgdXNlZDsKKyAgdm9pZCBfX3VzZXIgKiBhZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2J1Zl9tYXAgewotIGludCBjb3VudDsKLSB2b2lkIF9fdXNlciAqdmlydHVhbDsKKyAgaW50IGNvdW50OworICB2b2lkIF9fdXNlciAqIHZpcnR1YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fYnVmX3B1YiBfX3VzZXIgKmxpc3Q7CisgIHN0cnVjdCBkcm1fYnVmX3B1YiBfX3VzZXIgKiBsaXN0OwogfTsKIHN0cnVjdCBkcm1fZG1hIHsKLSBpbnQgY29udGV4dDsKKyAgaW50IGNvbnRleHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzZW5kX2NvdW50OwotIGludCBfX3VzZXIgKnNlbmRfaW5kaWNlczsKLSBpbnQgX191c2VyICpzZW5kX3NpemVzOwotIGVudW0gZHJtX2RtYV9mbGFncyBmbGFnczsKKyAgaW50IHNlbmRfY291bnQ7CisgIGludCBfX3VzZXIgKiBzZW5kX2luZGljZXM7CisgIGludCBfX3VzZXIgKiBzZW5kX3NpemVzOworICBlbnVtIGRybV9kbWFfZmxhZ3MgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZXF1ZXN0X2NvdW50OwotIGludCByZXF1ZXN0X3NpemU7Ci0gaW50IF9fdXNlciAqcmVxdWVzdF9pbmRpY2VzOwotIGludCBfX3VzZXIgKnJlcXVlc3Rfc2l6ZXM7CisgIGludCByZXF1ZXN0X2NvdW50OworICBpbnQgcmVxdWVzdF9zaXplOworICBpbnQgX191c2VyICogcmVxdWVzdF9pbmRpY2VzOworICBpbnQgX191c2VyICogcmVxdWVzdF9zaXplczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGdyYW50ZWRfY291bnQ7CisgIGludCBncmFudGVkX2NvdW50OwogfTsKIGVudW0gZHJtX2N0eF9mbGFncyB7Ci0gX0RSTV9DT05URVhUX1BSRVNFUlZFRCA9IDB4MDEsCisgIF9EUk1fQ09OVEVYVF9QUkVTRVJWRUQgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX0NPTlRFWFRfMkRPTkxZID0gMHgwMgorICBfRFJNX0NPTlRFWFRfMkRPTkxZID0gMHgwMgogfTsKIHN0cnVjdCBkcm1fY3R4IHsKLSBkcm1fY29udGV4dF90IGhhbmRsZTsKKyAgZHJtX2NvbnRleHRfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gZHJtX2N0eF9mbGFncyBmbGFnczsKKyAgZW51bSBkcm1fY3R4X2ZsYWdzIGZsYWdzOwogfTsKIHN0cnVjdCBkcm1fY3R4X3JlcyB7Ci0gaW50IGNvdW50OworICBpbnQgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fY3R4IF9fdXNlciAqY29udGV4dHM7CisgIHN0cnVjdCBkcm1fY3R4IF9fdXNlciAqIGNvbnRleHRzOwogfTsKIHN0cnVjdCBkcm1fZHJhdyB7Ci0gZHJtX2RyYXdhYmxlX3QgaGFuZGxlOworICBkcm1fZHJhd2FibGVfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHR5cGVkZWYgZW51bSB7Ci0gRFJNX0RSQVdBQkxFX0NMSVBSRUNUUywKKyAgRFJNX0RSQVdBQkxFX0NMSVBSRUNUUywKIH0gZHJtX2RyYXdhYmxlX2luZm9fdHlwZV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fdXBkYXRlX2RyYXcgewotIGRybV9kcmF3YWJsZV90IGhhbmRsZTsKLSB1bnNpZ25lZCBpbnQgdHlwZTsKLSB1bnNpZ25lZCBpbnQgbnVtOworICBkcm1fZHJhd2FibGVfdCBoYW5kbGU7CisgIHVuc2lnbmVkIGludCB0eXBlOworICB1bnNpZ25lZCBpbnQgbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxvbmcgZGF0YTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIGRhdGE7CiB9Owogc3RydWN0IGRybV9hdXRoIHsKLSBkcm1fbWFnaWNfdCBtYWdpYzsKKyAgZHJtX21hZ2ljX3QgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1faXJxX2J1c2lkIHsKLSBpbnQgaXJxOwotIGludCBidXNudW07CisgIGludCBpcnE7CisgIGludCBidXNudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkZXZudW07Ci0gaW50IGZ1bmNudW07CisgIGludCBkZXZudW07CisgIGludCBmdW5jbnVtOwogfTsKIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fVkJMQU5LX0FCU09MVVRFID0gMHgwLAotIF9EUk1fVkJMQU5LX1JFTEFUSVZFID0gMHgxLAotIF9EUk1fVkJMQU5LX0hJR0hfQ1JUQ19NQVNLID0gMHgwMDAwMDAzZSwKLSBfRFJNX1ZCTEFOS19FVkVOVCA9IDB4NDAwMDAwMCwKKyAgX0RSTV9WQkxBTktfQUJTT0xVVEUgPSAweDAsCisgIF9EUk1fVkJMQU5LX1JFTEFUSVZFID0gMHgxLAorICBfRFJNX1ZCTEFOS19ISUdIX0NSVENfTUFTSyA9IDB4MDAwMDAwM2UsCisgIF9EUk1fVkJMQU5LX0VWRU5UID0gMHg0MDAwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1ZCTEFOS19GTElQID0gMHg4MDAwMDAwLAotIF9EUk1fVkJMQU5LX05FWFRPTk1JU1MgPSAweDEwMDAwMDAwLAotIF9EUk1fVkJMQU5LX1NFQ09OREFSWSA9IDB4MjAwMDAwMDAsCi0gX0RSTV9WQkxBTktfU0lHTkFMID0gMHg0MDAwMDAwMAorICBfRFJNX1ZCTEFOS19GTElQID0gMHg4MDAwMDAwLAorICBfRFJNX1ZCTEFOS19ORVhUT05NSVNTID0gMHgxMDAwMDAwMCwKKyAgX0RSTV9WQkxBTktfU0VDT05EQVJZID0gMHgyMDAwMDAwMCwKKyAgX0RSTV9WQkxBTktfU0lHTkFMID0gMHg0MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIF9EUk1fVkJMQU5LX0hJR0hfQ1JUQ19TSElGVCAxCiAjZGVmaW5lIF9EUk1fVkJMQU5LX1RZUEVTX01BU0sgKF9EUk1fVkJMQU5LX0FCU09MVVRFIHwgX0RSTV9WQkxBTktfUkVMQVRJVkUpCi0jZGVmaW5lIF9EUk1fVkJMQU5LX0ZMQUdTX01BU0sgKF9EUk1fVkJMQU5LX0VWRU5UIHwgX0RSTV9WQkxBTktfU0lHTkFMIHwgICBfRFJNX1ZCTEFOS19TRUNPTkRBUlkgfCBfRFJNX1ZCTEFOS19ORVhUT05NSVNTKQorI2RlZmluZSBfRFJNX1ZCTEFOS19GTEFHU19NQVNLIChfRFJNX1ZCTEFOS19FVkVOVCB8IF9EUk1fVkJMQU5LX1NJR05BTCB8IF9EUk1fVkJMQU5LX1NFQ09OREFSWSB8IF9EUk1fVkJMQU5LX05FWFRPTk1JU1MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV93YWl0X3ZibGFua19yZXF1ZXN0IHsKLSBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgdHlwZTsKLSB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7Ci0gdW5zaWduZWQgbG9uZyBzaWduYWw7CisgIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSB0eXBlOworICB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7CisgIHVuc2lnbmVkIGxvbmcgc2lnbmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3dhaXRfdmJsYW5rX3JlcGx5IHsKLSBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgdHlwZTsKLSB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7CisgIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSB0eXBlOworICB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgdHZhbF9zZWM7Ci0gbG9uZyB0dmFsX3VzZWM7CisgIGxvbmcgdHZhbF9zZWM7CisgIGxvbmcgdHZhbF91c2VjOwogfTsKIHVuaW9uIGRybV93YWl0X3ZibGFuayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVxdWVzdCByZXF1ZXN0OwotIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVwbHkgcmVwbHk7CisgIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVxdWVzdCByZXF1ZXN0OworICBzdHJ1Y3QgZHJtX3dhaXRfdmJsYW5rX3JlcGx5IHJlcGx5OwogfTsKICNkZWZpbmUgX0RSTV9QUkVfTU9ERVNFVCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfRFJNX1BPU1RfTU9ERVNFVCAyCiBzdHJ1Y3QgZHJtX21vZGVzZXRfY3RsIHsKLSBfX3UzMiBjcnRjOwotIF9fdTMyIGNtZDsKKyAgX191MzIgY3J0YzsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2FncF9tb2RlIHsKLSB1bnNpZ25lZCBsb25nIG1vZGU7CisgIHVuc2lnbmVkIGxvbmcgbW9kZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9hZ3BfYnVmZmVyIHsKLSB1bnNpZ25lZCBsb25nIHNpemU7Ci0gdW5zaWduZWQgbG9uZyBoYW5kbGU7Ci0gdW5zaWduZWQgbG9uZyB0eXBlOworICB1bnNpZ25lZCBsb25nIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgaGFuZGxlOworICB1bnNpZ25lZCBsb25nIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcGh5c2ljYWw7CisgIHVuc2lnbmVkIGxvbmcgcGh5c2ljYWw7CiB9Owogc3RydWN0IGRybV9hZ3BfYmluZGluZyB7Ci0gdW5zaWduZWQgbG9uZyBoYW5kbGU7CisgIHVuc2lnbmVkIGxvbmcgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG9mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBvZmZzZXQ7CiB9Owogc3RydWN0IGRybV9hZ3BfaW5mbyB7Ci0gaW50IGFncF92ZXJzaW9uX21ham9yOworICBpbnQgYWdwX3ZlcnNpb25fbWFqb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhZ3BfdmVyc2lvbl9taW5vcjsKLSB1bnNpZ25lZCBsb25nIG1vZGU7Ci0gdW5zaWduZWQgbG9uZyBhcGVydHVyZV9iYXNlOwotIHVuc2lnbmVkIGxvbmcgYXBlcnR1cmVfc2l6ZTsKKyAgaW50IGFncF92ZXJzaW9uX21pbm9yOworICB1bnNpZ25lZCBsb25nIG1vZGU7CisgIHVuc2lnbmVkIGxvbmcgYXBlcnR1cmVfYmFzZTsKKyAgdW5zaWduZWQgbG9uZyBhcGVydHVyZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG1lbW9yeV9hbGxvd2VkOwotIHVuc2lnbmVkIGxvbmcgbWVtb3J5X3VzZWQ7Ci0gdW5zaWduZWQgc2hvcnQgaWRfdmVuZG9yOwotIHVuc2lnbmVkIHNob3J0IGlkX2RldmljZTsKKyAgdW5zaWduZWQgbG9uZyBtZW1vcnlfYWxsb3dlZDsKKyAgdW5zaWduZWQgbG9uZyBtZW1vcnlfdXNlZDsKKyAgdW5zaWduZWQgc2hvcnQgaWRfdmVuZG9yOworICB1bnNpZ25lZCBzaG9ydCBpZF9kZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fc2NhdHRlcl9nYXRoZXIgewotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGhhbmRsZTsKKyAgdW5zaWduZWQgbG9uZyBzaXplOworICB1bnNpZ25lZCBsb25nIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9zZXRfdmVyc2lvbiB7Ci0gaW50IGRybV9kaV9tYWpvcjsKLSBpbnQgZHJtX2RpX21pbm9yOworICBpbnQgZHJtX2RpX21ham9yOworICBpbnQgZHJtX2RpX21pbm9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZHJtX2RkX21ham9yOwotIGludCBkcm1fZGRfbWlub3I7CisgIGludCBkcm1fZGRfbWFqb3I7CisgIGludCBkcm1fZGRfbWlub3I7CiB9Owogc3RydWN0IGRybV9nZW1fY2xvc2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcGFkOworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHBhZDsKIH07CiBzdHJ1Y3QgZHJtX2dlbV9mbGluayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBuYW1lOworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIG5hbWU7CiB9Owogc3RydWN0IGRybV9nZW1fb3BlbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5hbWU7Ci0gX191MzIgaGFuZGxlOwotIF9fdTY0IHNpemU7CisgIF9fdTMyIG5hbWU7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191NjQgc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fQ0FQX0RVTUJfQlVGRkVSIDB4MQpAQCAtNDM2LDIwNSArNDM2LDIwNiBAQAogI2RlZmluZSBEUk1fQ0FQX0NVUlNPUl9IRUlHSFQgMHg5CiBzdHJ1Y3QgZHJtX2dldF9jYXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjYXBhYmlsaXR5OwotIF9fdTY0IHZhbHVlOworICBfX3U2NCBjYXBhYmlsaXR5OworICBfX3U2NCB2YWx1ZTsKIH07CiAjZGVmaW5lIERSTV9DTElFTlRfQ0FQX1NURVJFT18zRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fQ0xJRU5UX0NBUF9VTklWRVJTQUxfUExBTkVTIDIKIHN0cnVjdCBkcm1fc2V0X2NsaWVudF9jYXAgewotIF9fdTY0IGNhcGFiaWxpdHk7Ci0gX191NjQgdmFsdWU7Ci19OworICBfX3U2NCBjYXBhYmlsaXR5OworICBfX3U2NCB2YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2RlZmluZSBEUk1fQ0xPRVhFQyBPX0NMT0VYRUMKIHN0cnVjdCBkcm1fcHJpbWVfaGFuZGxlIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgZmQ7CisgIF9fdTMyIGZsYWdzOworICBfX3MzMiBmZDsKIH07CiAjaW5jbHVkZSA8ZHJtL2RybV9tb2RlLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfQkFTRSAnZCcKKyNkZWZpbmUgRFJNX0lPKG5yKSBfSU8oRFJNX0lPQ1RMX0JBU0UsIG5yKQorI2RlZmluZSBEUk1fSU9SKG5yLHR5cGUpIF9JT1IoRFJNX0lPQ1RMX0JBU0UsIG5yLCB0eXBlKQorI2RlZmluZSBEUk1fSU9XKG5yLHR5cGUpIF9JT1coRFJNX0lPQ1RMX0JBU0UsIG5yLCB0eXBlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPKG5yKSBfSU8oRFJNX0lPQ1RMX0JBU0UsbnIpCi0jZGVmaW5lIERSTV9JT1IobnIsdHlwZSkgX0lPUihEUk1fSU9DVExfQkFTRSxucix0eXBlKQotI2RlZmluZSBEUk1fSU9XKG5yLHR5cGUpIF9JT1coRFJNX0lPQ1RMX0JBU0UsbnIsdHlwZSkKLSNkZWZpbmUgRFJNX0lPV1IobnIsdHlwZSkgX0lPV1IoRFJNX0lPQ1RMX0JBU0UsbnIsdHlwZSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT1dSKG5yLHR5cGUpIF9JT1dSKERSTV9JT0NUTF9CQVNFLCBuciwgdHlwZSkKICNkZWZpbmUgRFJNX0lPQ1RMX1ZFUlNJT04gRFJNX0lPV1IoMHgwMCwgc3RydWN0IGRybV92ZXJzaW9uKQogI2RlZmluZSBEUk1fSU9DVExfR0VUX1VOSVFVRSBEUk1fSU9XUigweDAxLCBzdHJ1Y3QgZHJtX3VuaXF1ZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9NQUdJQyBEUk1fSU9SKCAweDAyLCBzdHJ1Y3QgZHJtX2F1dGgpCi0jZGVmaW5lIERSTV9JT0NUTF9JUlFfQlVTSUQgRFJNX0lPV1IoMHgwMywgc3RydWN0IGRybV9pcnFfYnVzaWQpCisjZGVmaW5lIERSTV9JT0NUTF9HRVRfTUFHSUMgRFJNX0lPUigweDAyLCBzdHJ1Y3QgZHJtX2F1dGgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfSVJRX0JVU0lEIERSTV9JT1dSKDB4MDMsIHN0cnVjdCBkcm1faXJxX2J1c2lkKQogI2RlZmluZSBEUk1fSU9DVExfR0VUX01BUCBEUk1fSU9XUigweDA0LCBzdHJ1Y3QgZHJtX21hcCkKICNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9DTElFTlQgRFJNX0lPV1IoMHgwNSwgc3RydWN0IGRybV9jbGllbnQpCi0jZGVmaW5lIERSTV9JT0NUTF9HRVRfU1RBVFMgRFJNX0lPUiggMHgwNiwgc3RydWN0IGRybV9zdGF0cykKKyNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9TVEFUUyBEUk1fSU9SKDB4MDYsIHN0cnVjdCBkcm1fc3RhdHMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfU0VUX1ZFUlNJT04gRFJNX0lPV1IoMHgwNywgc3RydWN0IGRybV9zZXRfdmVyc2lvbikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFU0VUX0NUTCBEUk1fSU9XKDB4MDgsIHN0cnVjdCBkcm1fbW9kZXNldF9jdGwpCi0jZGVmaW5lIERSTV9JT0NUTF9HRU1fQ0xPU0UgRFJNX0lPVyAoMHgwOSwgc3RydWN0IGRybV9nZW1fY2xvc2UpCisjZGVmaW5lIERSTV9JT0NUTF9HRU1fQ0xPU0UgRFJNX0lPVygweDA5LCBzdHJ1Y3QgZHJtX2dlbV9jbG9zZSkKICNkZWZpbmUgRFJNX0lPQ1RMX0dFTV9GTElOSyBEUk1fSU9XUigweDBhLCBzdHJ1Y3QgZHJtX2dlbV9mbGluaykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9HRU1fT1BFTiBEUk1fSU9XUigweDBiLCBzdHJ1Y3QgZHJtX2dlbV9vcGVuKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9DQVAgRFJNX0lPV1IoMHgwYywgc3RydWN0IGRybV9nZXRfY2FwKQotI2RlZmluZSBEUk1fSU9DVExfU0VUX0NMSUVOVF9DQVAgRFJNX0lPVyggMHgwZCwgc3RydWN0IGRybV9zZXRfY2xpZW50X2NhcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9VTklRVUUgRFJNX0lPVyggMHgxMCwgc3RydWN0IGRybV91bmlxdWUpCi0jZGVmaW5lIERSTV9JT0NUTF9BVVRIX01BR0lDIERSTV9JT1coIDB4MTEsIHN0cnVjdCBkcm1fYXV0aCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9DTElFTlRfQ0FQIERSTV9JT1coMHgwZCwgc3RydWN0IGRybV9zZXRfY2xpZW50X2NhcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9VTklRVUUgRFJNX0lPVygweDEwLCBzdHJ1Y3QgZHJtX3VuaXF1ZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9BVVRIX01BR0lDIERSTV9JT1coMHgxMSwgc3RydWN0IGRybV9hdXRoKQogI2RlZmluZSBEUk1fSU9DVExfQkxPQ0sgRFJNX0lPV1IoMHgxMiwgc3RydWN0IGRybV9ibG9jaykKICNkZWZpbmUgRFJNX0lPQ1RMX1VOQkxPQ0sgRFJNX0lPV1IoMHgxMywgc3RydWN0IGRybV9ibG9jaykKLSNkZWZpbmUgRFJNX0lPQ1RMX0NPTlRST0wgRFJNX0lPVyggMHgxNCwgc3RydWN0IGRybV9jb250cm9sKQorI2RlZmluZSBEUk1fSU9DVExfQ09OVFJPTCBEUk1fSU9XKDB4MTQsIHN0cnVjdCBkcm1fY29udHJvbCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9BRERfTUFQIERSTV9JT1dSKDB4MTUsIHN0cnVjdCBkcm1fbWFwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0FERF9CVUZTIERSTV9JT1dSKDB4MTYsIHN0cnVjdCBkcm1fYnVmX2Rlc2MpCi0jZGVmaW5lIERSTV9JT0NUTF9NQVJLX0JVRlMgRFJNX0lPVyggMHgxNywgc3RydWN0IGRybV9idWZfZGVzYykKKyNkZWZpbmUgRFJNX0lPQ1RMX01BUktfQlVGUyBEUk1fSU9XKDB4MTcsIHN0cnVjdCBkcm1fYnVmX2Rlc2MpCiAjZGVmaW5lIERSTV9JT0NUTF9JTkZPX0JVRlMgRFJNX0lPV1IoMHgxOCwgc3RydWN0IGRybV9idWZfaW5mbykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9NQVBfQlVGUyBEUk1fSU9XUigweDE5LCBzdHJ1Y3QgZHJtX2J1Zl9tYXApCisjZGVmaW5lIERSTV9JT0NUTF9GUkVFX0JVRlMgRFJNX0lPVygweDFhLCBzdHJ1Y3QgZHJtX2J1Zl9mcmVlKQorI2RlZmluZSBEUk1fSU9DVExfUk1fTUFQIERSTV9JT1coMHgxYiwgc3RydWN0IGRybV9tYXApCisjZGVmaW5lIERSTV9JT0NUTF9TRVRfU0FSRUFfQ1RYIERSTV9JT1coMHgxYywgc3RydWN0IGRybV9jdHhfcHJpdl9tYXApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfRlJFRV9CVUZTIERSTV9JT1coIDB4MWEsIHN0cnVjdCBkcm1fYnVmX2ZyZWUpCi0jZGVmaW5lIERSTV9JT0NUTF9STV9NQVAgRFJNX0lPVyggMHgxYiwgc3RydWN0IGRybV9tYXApCi0jZGVmaW5lIERSTV9JT0NUTF9TRVRfU0FSRUFfQ1RYIERSTV9JT1coIDB4MWMsIHN0cnVjdCBkcm1fY3R4X3ByaXZfbWFwKQogI2RlZmluZSBEUk1fSU9DVExfR0VUX1NBUkVBX0NUWCBEUk1fSU9XUigweDFkLCBzdHJ1Y3QgZHJtX2N0eF9wcml2X21hcCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9TRVRfTUFTVEVSIERSTV9JTygweDFlKQogI2RlZmluZSBEUk1fSU9DVExfRFJPUF9NQVNURVIgRFJNX0lPKDB4MWYpCiAjZGVmaW5lIERSTV9JT0NUTF9BRERfQ1RYIERSTV9JT1dSKDB4MjAsIHN0cnVjdCBkcm1fY3R4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX1JNX0NUWCBEUk1fSU9XUigweDIxLCBzdHJ1Y3QgZHJtX2N0eCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RfQ1RYIERSTV9JT1coIDB4MjIsIHN0cnVjdCBkcm1fY3R4KQorI2RlZmluZSBEUk1fSU9DVExfTU9EX0NUWCBEUk1fSU9XKDB4MjIsIHN0cnVjdCBkcm1fY3R4KQogI2RlZmluZSBEUk1fSU9DVExfR0VUX0NUWCBEUk1fSU9XUigweDIzLCBzdHJ1Y3QgZHJtX2N0eCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NXSVRDSF9DVFggRFJNX0lPVyggMHgyNCwgc3RydWN0IGRybV9jdHgpCi0jZGVmaW5lIERSTV9JT0NUTF9ORVdfQ1RYIERSTV9JT1coIDB4MjUsIHN0cnVjdCBkcm1fY3R4KQorI2RlZmluZSBEUk1fSU9DVExfU1dJVENIX0NUWCBEUk1fSU9XKDB4MjQsIHN0cnVjdCBkcm1fY3R4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX05FV19DVFggRFJNX0lPVygweDI1LCBzdHJ1Y3QgZHJtX2N0eCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JFU19DVFggRFJNX0lPV1IoMHgyNiwgc3RydWN0IGRybV9jdHhfcmVzKQogI2RlZmluZSBEUk1fSU9DVExfQUREX0RSQVcgRFJNX0lPV1IoMHgyNywgc3RydWN0IGRybV9kcmF3KQogI2RlZmluZSBEUk1fSU9DVExfUk1fRFJBVyBEUk1fSU9XUigweDI4LCBzdHJ1Y3QgZHJtX2RyYXcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfRE1BIERSTV9JT1dSKDB4MjksIHN0cnVjdCBkcm1fZG1hKQorI2RlZmluZSBEUk1fSU9DVExfTE9DSyBEUk1fSU9XKDB4MmEsIHN0cnVjdCBkcm1fbG9jaykKKyNkZWZpbmUgRFJNX0lPQ1RMX1VOTE9DSyBEUk1fSU9XKDB4MmIsIHN0cnVjdCBkcm1fbG9jaykKKyNkZWZpbmUgRFJNX0lPQ1RMX0ZJTklTSCBEUk1fSU9XKDB4MmMsIHN0cnVjdCBkcm1fbG9jaykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9MT0NLIERSTV9JT1coIDB4MmEsIHN0cnVjdCBkcm1fbG9jaykKLSNkZWZpbmUgRFJNX0lPQ1RMX1VOTE9DSyBEUk1fSU9XKCAweDJiLCBzdHJ1Y3QgZHJtX2xvY2spCi0jZGVmaW5lIERSTV9JT0NUTF9GSU5JU0ggRFJNX0lPVyggMHgyYywgc3RydWN0IGRybV9sb2NrKQogI2RlZmluZSBEUk1fSU9DVExfUFJJTUVfSEFORExFX1RPX0ZEIERSTV9JT1dSKDB4MmQsIHN0cnVjdCBkcm1fcHJpbWVfaGFuZGxlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX1BSSU1FX0ZEX1RPX0hBTkRMRSBEUk1fSU9XUigweDJlLCBzdHJ1Y3QgZHJtX3ByaW1lX2hhbmRsZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9BQ1FVSVJFIERSTV9JTyggMHgzMCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9SRUxFQVNFIERSTV9JTyggMHgzMSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9FTkFCTEUgRFJNX0lPVyggMHgzMiwgc3RydWN0IGRybV9hZ3BfbW9kZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9BQ1FVSVJFIERSTV9JTygweDMwKQorI2RlZmluZSBEUk1fSU9DVExfQUdQX1JFTEVBU0UgRFJNX0lPKDB4MzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfQUdQX0lORk8gRFJNX0lPUiggMHgzMywgc3RydWN0IGRybV9hZ3BfaW5mbykKKyNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9FTkFCTEUgRFJNX0lPVygweDMyLCBzdHJ1Y3QgZHJtX2FncF9tb2RlKQorI2RlZmluZSBEUk1fSU9DVExfQUdQX0lORk8gRFJNX0lPUigweDMzLCBzdHJ1Y3QgZHJtX2FncF9pbmZvKQogI2RlZmluZSBEUk1fSU9DVExfQUdQX0FMTE9DIERSTV9JT1dSKDB4MzQsIHN0cnVjdCBkcm1fYWdwX2J1ZmZlcikKLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9GUkVFIERSTV9JT1coIDB4MzUsIHN0cnVjdCBkcm1fYWdwX2J1ZmZlcikKLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9CSU5EIERSTV9JT1coIDB4MzYsIHN0cnVjdCBkcm1fYWdwX2JpbmRpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9BR1BfRlJFRSBEUk1fSU9XKDB4MzUsIHN0cnVjdCBkcm1fYWdwX2J1ZmZlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9BR1BfVU5CSU5EIERSTV9JT1coIDB4MzcsIHN0cnVjdCBkcm1fYWdwX2JpbmRpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9BR1BfQklORCBEUk1fSU9XKDB4MzYsIHN0cnVjdCBkcm1fYWdwX2JpbmRpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9BR1BfVU5CSU5EIERSTV9JT1coMHgzNywgc3RydWN0IGRybV9hZ3BfYmluZGluZykKICNkZWZpbmUgRFJNX0lPQ1RMX1NHX0FMTE9DIERSTV9JT1dSKDB4MzgsIHN0cnVjdCBkcm1fc2NhdHRlcl9nYXRoZXIpCi0jZGVmaW5lIERSTV9JT0NUTF9TR19GUkVFIERSTV9JT1coIDB4MzksIHN0cnVjdCBkcm1fc2NhdHRlcl9nYXRoZXIpCi0jZGVmaW5lIERSTV9JT0NUTF9XQUlUX1ZCTEFOSyBEUk1fSU9XUigweDNhLCB1bmlvbiBkcm1fd2FpdF92YmxhbmspCisjZGVmaW5lIERSTV9JT0NUTF9TR19GUkVFIERSTV9JT1coMHgzOSwgc3RydWN0IGRybV9zY2F0dGVyX2dhdGhlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9XQUlUX1ZCTEFOSyBEUk1fSU9XUigweDNhLCB1bmlvbiBkcm1fd2FpdF92YmxhbmspCiAjZGVmaW5lIERSTV9JT0NUTF9VUERBVEVfRFJBVyBEUk1fSU9XKDB4M2YsIHN0cnVjdCBkcm1fdXBkYXRlX2RyYXcpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVFJFU09VUkNFUyBEUk1fSU9XUigweEEwLCBzdHJ1Y3QgZHJtX21vZGVfY2FyZF9yZXMpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVENSVEMgRFJNX0lPV1IoMHhBMSwgc3RydWN0IGRybV9tb2RlX2NydGMpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX1NFVENSVEMgRFJNX0lPV1IoMHhBMiwgc3RydWN0IGRybV9tb2RlX2NydGMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfTU9ERV9TRVRDUlRDIERSTV9JT1dSKDB4QTIsIHN0cnVjdCBkcm1fbW9kZV9jcnRjKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9DVVJTT1IgRFJNX0lPV1IoMHhBMywgc3RydWN0IGRybV9tb2RlX2N1cnNvcikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUR0FNTUEgRFJNX0lPV1IoMHhBNCwgc3RydWN0IGRybV9tb2RlX2NydGNfbHV0KQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9TRVRHQU1NQSBEUk1fSU9XUigweEE1LCBzdHJ1Y3QgZHJtX21vZGVfY3J0Y19sdXQpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVEVOQ09ERVIgRFJNX0lPV1IoMHhBNiwgc3RydWN0IGRybV9tb2RlX2dldF9lbmNvZGVyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VURU5DT0RFUiBEUk1fSU9XUigweEE2LCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2VuY29kZXIpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVENPTk5FQ1RPUiBEUk1fSU9XUigweEE3LCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2Nvbm5lY3RvcikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQVRUQUNITU9ERSBEUk1fSU9XUigweEE4LCBzdHJ1Y3QgZHJtX21vZGVfbW9kZV9jbWQpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0RFVEFDSE1PREUgRFJNX0lPV1IoMHhBOSwgc3RydWN0IGRybV9tb2RlX21vZGVfY21kKQotI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRQUk9QRVJUWSBEUk1fSU9XUigweEFBLCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3Byb3BlcnR5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUUFJPUEVSVFkgRFJNX0lPV1IoMHhBQSwgc3RydWN0IGRybV9tb2RlX2dldF9wcm9wZXJ0eSkKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfU0VUUFJPUEVSVFkgRFJNX0lPV1IoMHhBQiwgc3RydWN0IGRybV9tb2RlX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVFBST1BCTE9CIERSTV9JT1dSKDB4QUMsIHN0cnVjdCBkcm1fbW9kZV9nZXRfYmxvYikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VURkIgRFJNX0lPV1IoMHhBRCwgc3RydWN0IGRybV9tb2RlX2ZiX2NtZCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQURERkIgRFJNX0lPV1IoMHhBRSwgc3RydWN0IGRybV9tb2RlX2ZiX2NtZCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0FEREZCIERSTV9JT1dSKDB4QUUsIHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX1JNRkIgRFJNX0lPV1IoMHhBRiwgdW5zaWduZWQgaW50KQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9QQUdFX0ZMSVAgRFJNX0lPV1IoMHhCMCwgc3RydWN0IGRybV9tb2RlX2NydGNfcGFnZV9mbGlwKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9ESVJUWUZCIERSTV9JT1dSKDB4QjEsIHN0cnVjdCBkcm1fbW9kZV9mYl9kaXJ0eV9jbWQpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX0NSRUFURV9EVU1CIERSTV9JT1dSKDB4QjIsIHN0cnVjdCBkcm1fbW9kZV9jcmVhdGVfZHVtYikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0NSRUFURV9EVU1CIERSTV9JT1dSKDB4QjIsIHN0cnVjdCBkcm1fbW9kZV9jcmVhdGVfZHVtYikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfTUFQX0RVTUIgRFJNX0lPV1IoMHhCMywgc3RydWN0IGRybV9tb2RlX21hcF9kdW1iKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9ERVNUUk9ZX0RVTUIgRFJNX0lPV1IoMHhCNCwgc3RydWN0IGRybV9tb2RlX2Rlc3Ryb3lfZHVtYikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUUExBTkVSRVNPVVJDRVMgRFJNX0lPV1IoMHhCNSwgc3RydWN0IGRybV9tb2RlX2dldF9wbGFuZV9yZXMpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVFBMQU5FIERSTV9JT1dSKDB4QjYsIHN0cnVjdCBkcm1fbW9kZV9nZXRfcGxhbmUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRQTEFORSBEUk1fSU9XUigweEI2LCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3BsYW5lKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9TRVRQTEFORSBEUk1fSU9XUigweEI3LCBzdHJ1Y3QgZHJtX21vZGVfc2V0X3BsYW5lKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9BRERGQjIgRFJNX0lPV1IoMHhCOCwgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX09CSl9HRVRQUk9QRVJUSUVTIERSTV9JT1dSKDB4QjksIHN0cnVjdCBkcm1fbW9kZV9vYmpfZ2V0X3Byb3BlcnRpZXMpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX09CSl9TRVRQUk9QRVJUWSBEUk1fSU9XUigweEJBLCBzdHJ1Y3QgZHJtX21vZGVfb2JqX3NldF9wcm9wZXJ0eSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9NT0RFX09CSl9TRVRQUk9QRVJUWSBEUk1fSU9XUigweEJBLCBzdHJ1Y3QgZHJtX21vZGVfb2JqX3NldF9wcm9wZXJ0eSkKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQ1VSU09SMiBEUk1fSU9XUigweEJCLCBzdHJ1Y3QgZHJtX21vZGVfY3Vyc29yMikKICNkZWZpbmUgRFJNX0NPTU1BTkRfQkFTRSAweDQwCiAjZGVmaW5lIERSTV9DT01NQU5EX0VORCAweEEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9ldmVudCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgbGVuZ3RoOworICBfX3UzMiB0eXBlOworICBfX3UzMiBsZW5ndGg7CiB9OwotI2RlZmluZSBEUk1fRVZFTlRfVkJMQU5LIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9FVkVOVF9WQkxBTksgMHgwMQogI2RlZmluZSBEUk1fRVZFTlRfRkxJUF9DT01QTEVURSAweDAyCiBzdHJ1Y3QgZHJtX2V2ZW50X3ZibGFuayB7Ci0gc3RydWN0IGRybV9ldmVudCBiYXNlOwotIF9fdTY0IHVzZXJfZGF0YTsKKyAgc3RydWN0IGRybV9ldmVudCBiYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0dl9zZWM7Ci0gX191MzIgdHZfdXNlYzsKLSBfX3UzMiBzZXF1ZW5jZTsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgdXNlcl9kYXRhOworICBfX3UzMiB0dl9zZWM7CisgIF9fdTMyIHR2X3VzZWM7CisgIF9fdTMyIHNlcXVlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBkcm1fY2xpcF9yZWN0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fZHJhd2FibGVfaW5mbyBkcm1fZHJhd2FibGVfaW5mb190OwotdHlwZWRlZiBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gZHJtX3RleF9yZWdpb25fdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiBkcm1fdGV4X3JlZ2lvbl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2h3X2xvY2sgZHJtX2h3X2xvY2tfdDsKIHR5cGVkZWYgc3RydWN0IGRybV92ZXJzaW9uIGRybV92ZXJzaW9uX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fdW5pcXVlIGRybV91bmlxdWVfdDsKLXR5cGVkZWYgc3RydWN0IGRybV9saXN0IGRybV9saXN0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3QgZHJtX2xpc3QgZHJtX2xpc3RfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9ibG9jayBkcm1fYmxvY2tfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9jb250cm9sIGRybV9jb250cm9sX3Q7CiB0eXBlZGVmIGVudW0gZHJtX21hcF90eXBlIGRybV9tYXBfdHlwZV90OwotdHlwZWRlZiBlbnVtIGRybV9tYXBfZmxhZ3MgZHJtX21hcF9mbGFnc190OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgZW51bSBkcm1fbWFwX2ZsYWdzIGRybV9tYXBfZmxhZ3NfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9jdHhfcHJpdl9tYXAgZHJtX2N0eF9wcml2X21hcF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX21hcCBkcm1fbWFwX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fY2xpZW50IGRybV9jbGllbnRfdDsKLXR5cGVkZWYgZW51bSBkcm1fc3RhdF90eXBlIGRybV9zdGF0X3R5cGVfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIGVudW0gZHJtX3N0YXRfdHlwZSBkcm1fc3RhdF90eXBlX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fc3RhdHMgZHJtX3N0YXRzX3Q7CiB0eXBlZGVmIGVudW0gZHJtX2xvY2tfZmxhZ3MgZHJtX2xvY2tfZmxhZ3NfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9sb2NrIGRybV9sb2NrX3Q7Ci10eXBlZGVmIGVudW0gZHJtX2RtYV9mbGFncyBkcm1fZG1hX2ZsYWdzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBlbnVtIGRybV9kbWFfZmxhZ3MgZHJtX2RtYV9mbGFnc190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2J1Zl9kZXNjIGRybV9idWZfZGVzY190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2J1Zl9pbmZvIGRybV9idWZfaW5mb190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2J1Zl9mcmVlIGRybV9idWZfZnJlZV90OwotdHlwZWRlZiBzdHJ1Y3QgZHJtX2J1Zl9wdWIgZHJtX2J1Zl9wdWJfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fYnVmX3B1YiBkcm1fYnVmX3B1Yl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2J1Zl9tYXAgZHJtX2J1Zl9tYXBfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9kbWEgZHJtX2RtYV90OwogdHlwZWRlZiB1bmlvbiBkcm1fd2FpdF92YmxhbmsgZHJtX3dhaXRfdmJsYW5rX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fYWdwX21vZGUgZHJtX2FncF9tb2RlX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3QgZHJtX2FncF9tb2RlIGRybV9hZ3BfbW9kZV90OwogdHlwZWRlZiBlbnVtIGRybV9jdHhfZmxhZ3MgZHJtX2N0eF9mbGFnc190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2N0eCBkcm1fY3R4X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fY3R4X3JlcyBkcm1fY3R4X3Jlc190OwotdHlwZWRlZiBzdHJ1Y3QgZHJtX2RyYXcgZHJtX2RyYXdfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fZHJhdyBkcm1fZHJhd190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3VwZGF0ZV9kcmF3IGRybV91cGRhdGVfZHJhd190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2F1dGggZHJtX2F1dGhfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pcnFfYnVzaWQgZHJtX2lycV9idXNpZF90OwotdHlwZWRlZiBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgZHJtX3ZibGFua19zZXFfdHlwZV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgZW51bSBkcm1fdmJsYW5rX3NlcV90eXBlIGRybV92Ymxhbmtfc2VxX3R5cGVfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9hZ3BfYnVmZmVyIGRybV9hZ3BfYnVmZmVyX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYWdwX2JpbmRpbmcgZHJtX2FncF9iaW5kaW5nX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYWdwX2luZm8gZHJtX2FncF9pbmZvX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fc2NhdHRlcl9nYXRoZXIgZHJtX3NjYXR0ZXJfZ2F0aGVyX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3QgZHJtX3NjYXR0ZXJfZ2F0aGVyIGRybV9zY2F0dGVyX2dhdGhlcl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3NldF92ZXJzaW9uIGRybV9zZXRfdmVyc2lvbl90OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fZm91cmNjLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fZm91cmNjLmgKaW5kZXggZTRhY2YxNy4uNDdlOTNkZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX2ZvdXJjYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9mb3VyY2MuaApAQCAtMTksOSArMTksOSBAQAogI2lmbmRlZiBEUk1fRk9VUkNDX0gKICNkZWZpbmUgRFJNX0ZPVVJDQ19ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNkZWZpbmUgZm91cmNjX2NvZGUoYSwgYiwgYywgZCkgKChfX3UzMikoYSkgfCAoKF9fdTMyKShiKSA8PCA4KSB8ICAgKChfX3UzMikoYykgPDwgMTYpIHwgKChfX3UzMikoZCkgPDwgMjQpKQorI2RlZmluZSBmb3VyY2NfY29kZShhLGIsYyxkKSAoKF9fdTMyKSAoYSkgfCAoKF9fdTMyKSAoYikgPDwgOCkgfCAoKF9fdTMyKSAoYykgPDwgMTYpIHwgKChfX3UzMikgKGQpIDw8IDI0KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9GT1JNQVRfQklHX0VORElBTiAoMTw8MzEpCisjZGVmaW5lIERSTV9GT1JNQVRfQklHX0VORElBTiAoMSA8PCAzMSkKICNkZWZpbmUgRFJNX0ZPUk1BVF9DOCBmb3VyY2NfY29kZSgnQycsICc4JywgJyAnLCAnICcpCiAjZGVmaW5lIERSTV9GT1JNQVRfUkdCMzMyIGZvdXJjY19jb2RlKCdSJywgJ0cnLCAnQicsICc4JykKICNkZWZpbmUgRFJNX0ZPUk1BVF9CR1IyMzMgZm91cmNjX2NvZGUoJ0InLCAnRycsICdSJywgJzgnKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX21vZGUuaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9tb2RlLmgKaW5kZXggYmJlMWM4ZS4uYWJkOTJhMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX21vZGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fbW9kZS5oCkBAIC0yNCw0NSArMjQsNDUgQEAKICNkZWZpbmUgRFJNX0NPTk5FQ1RPUl9OQU1FX0xFTiAzMgogI2RlZmluZSBEUk1fRElTUExBWV9NT0RFX0xFTiAzMgogI2RlZmluZSBEUk1fUFJPUF9OQU1FX0xFTiAzMgotI2RlZmluZSBEUk1fTU9ERV9UWVBFX0JVSUxUSU4gKDE8PDApCisjZGVmaW5lIERSTV9NT0RFX1RZUEVfQlVJTFRJTiAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfVFlQRV9DTE9DS19DICgoMTw8MSkgfCBEUk1fTU9ERV9UWVBFX0JVSUxUSU4pCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfQ1JUQ19DICgoMTw8MikgfCBEUk1fTU9ERV9UWVBFX0JVSUxUSU4pCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfUFJFRkVSUkVEICgxPDwzKQotI2RlZmluZSBEUk1fTU9ERV9UWVBFX0RFRkFVTFQgKDE8PDQpCisjZGVmaW5lIERSTV9NT0RFX1RZUEVfQ0xPQ0tfQyAoKDEgPDwgMSkgfCBEUk1fTU9ERV9UWVBFX0JVSUxUSU4pCisjZGVmaW5lIERSTV9NT0RFX1RZUEVfQ1JUQ19DICgoMSA8PCAyKSB8IERSTV9NT0RFX1RZUEVfQlVJTFRJTikKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9QUkVGRVJSRUQgKDEgPDwgMykKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9ERUZBVUxUICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9UWVBFX1VTRVJERUYgKDE8PDUpCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfRFJJVkVSICgxPDw2KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BIU1lOQyAoMTw8MCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR19OSFNZTkMgKDE8PDEpCisjZGVmaW5lIERSTV9NT0RFX1RZUEVfVVNFUkRFRiAoMSA8PCA1KQorI2RlZmluZSBEUk1fTU9ERV9UWVBFX0RSSVZFUiAoMSA8PCA2KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BIU1lOQyAoMSA8PCAwKQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX05IU1lOQyAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfRkxBR19QVlNZTkMgKDE8PDIpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfTlZTWU5DICgxPDwzKQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSAoMTw8NCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR19EQkxTQ0FOICgxPDw1KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BWU1lOQyAoMSA8PCAyKQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX05WU1lOQyAoMSA8PCAzKQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSAoMSA8PCA0KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0RCTFNDQU4gKDEgPDwgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfQ1NZTkMgKDE8PDYpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfUENTWU5DICgxPDw3KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX05DU1lOQyAoMTw8OCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR19IU0tFVyAoMTw8OSkKKyNkZWZpbmUgRFJNX01PREVfRkxBR19DU1lOQyAoMSA8PCA2KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BDU1lOQyAoMSA8PCA3KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX05DU1lOQyAoMSA8PCA4KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0hTS0VXICgxIDw8IDkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9GTEFHX0JDQVNUICgxPDwxMCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR19QSVhNVVggKDE8PDExKQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX0RCTENMSyAoMTw8MTIpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfQ0xLRElWMiAoMTw8MTMpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfQkNBU1QgKDEgPDwgMTApCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfUElYTVVYICgxIDw8IDExKQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0RCTENMSyAoMSA8PCAxMikKKyNkZWZpbmUgRFJNX01PREVfRkxBR19DTEtESVYyICgxIDw8IDEzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9NQVNLICgweDFmPDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9OT05FICgwPDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9GUkFNRV9QQUNLSU5HICgxPDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9GSUVMRF9BTFRFUk5BVElWRSAoMjw8MTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfTUFTSyAoMHgxZiA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9OT05FICgwIDw8IDE0KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0ZSQU1FX1BBQ0tJTkcgKDEgPDwgMTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfRklFTERfQUxURVJOQVRJVkUgKDIgPDwgMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0xJTkVfQUxURVJOQVRJVkUgKDM8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX1NJREVfQllfU0lERV9GVUxMICg0PDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9MX0RFUFRIICg1PDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9MX0RFUFRIX0dGWF9HRlhfREVQVEggKDY8PDE0KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0xJTkVfQUxURVJOQVRJVkUgKDMgPDwgMTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfU0lERV9CWV9TSURFX0ZVTEwgKDQgPDwgMTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfTF9ERVBUSCAoNSA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9MX0RFUFRIX0dGWF9HRlhfREVQVEggKDYgPDwgMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX1RPUF9BTkRfQk9UVE9NICg3PDwxNCkKLSNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9TSURFX0JZX1NJREVfSEFMRiAoODw8MTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfVE9QX0FORF9CT1RUT00gKDcgPDwgMTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfU0lERV9CWV9TSURFX0hBTEYgKDggPDwgMTQpCiAjZGVmaW5lIERSTV9NT0RFX0RQTVNfT04gMAogI2RlZmluZSBEUk1fTU9ERV9EUE1TX1NUQU5EQlkgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTczLDEwMCArNzMsMTA1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9TQ0FMRV9DRU5URVIgMgogI2RlZmluZSBEUk1fTU9ERV9TQ0FMRV9BU1BFQ1QgMworI2RlZmluZSBEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF9OT05FIDAKKyNkZWZpbmUgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfNF8zIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzE2XzkgMgogI2RlZmluZSBEUk1fTU9ERV9ESVRIRVJJTkdfT0ZGIDAKICNkZWZpbmUgRFJNX01PREVfRElUSEVSSU5HX09OIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9NT0RFX0RJVEhFUklOR19BVVRPIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9NT0RFX0RJUlRZX09GRiAwCiAjZGVmaW5lIERSTV9NT0RFX0RJUlRZX09OIDEKICNkZWZpbmUgRFJNX01PREVfRElSVFlfQU5OT1RBVEUgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbyB7Ci0gX191MzIgY2xvY2s7Ci0gX191MTYgaGRpc3BsYXksIGhzeW5jX3N0YXJ0LCBoc3luY19lbmQsIGh0b3RhbCwgaHNrZXc7Ci0gX191MTYgdmRpc3BsYXksIHZzeW5jX3N0YXJ0LCB2c3luY19lbmQsIHZ0b3RhbCwgdnNjYW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZyZWZyZXNoOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHR5cGU7Ci0gY2hhciBuYW1lW0RSTV9ESVNQTEFZX01PREVfTEVOXTsKKyAgX191MzIgY2xvY2s7CisgIF9fdTE2IGhkaXNwbGF5LCBoc3luY19zdGFydCwgaHN5bmNfZW5kLCBodG90YWwsIGhza2V3OworICBfX3UxNiB2ZGlzcGxheSwgdnN5bmNfc3RhcnQsIHZzeW5jX2VuZCwgdnRvdGFsLCB2c2NhbjsKKyAgX191MzIgdnJlZnJlc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmbGFnczsKKyAgX191MzIgdHlwZTsKKyAgY2hhciBuYW1lW0RSTV9ESVNQTEFZX01PREVfTEVOXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX2NhcmRfcmVzIHsKLSBfX3U2NCBmYl9pZF9wdHI7Ci0gX191NjQgY3J0Y19pZF9wdHI7CisgIF9fdTY0IGZiX2lkX3B0cjsKKyAgX191NjQgY3J0Y19pZF9wdHI7CisgIF9fdTY0IGNvbm5lY3Rvcl9pZF9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNvbm5lY3Rvcl9pZF9wdHI7Ci0gX191NjQgZW5jb2Rlcl9pZF9wdHI7Ci0gX191MzIgY291bnRfZmJzOwotIF9fdTMyIGNvdW50X2NydGNzOworICBfX3U2NCBlbmNvZGVyX2lkX3B0cjsKKyAgX191MzIgY291bnRfZmJzOworICBfX3UzMiBjb3VudF9jcnRjczsKKyAgX191MzIgY291bnRfY29ubmVjdG9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY291bnRfY29ubmVjdG9yczsKLSBfX3UzMiBjb3VudF9lbmNvZGVyczsKLSBfX3UzMiBtaW5fd2lkdGgsIG1heF93aWR0aDsKLSBfX3UzMiBtaW5faGVpZ2h0LCBtYXhfaGVpZ2h0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY291bnRfZW5jb2RlcnM7CisgIF9fdTMyIG1pbl93aWR0aCwgbWF4X3dpZHRoOworICBfX3UzMiBtaW5faGVpZ2h0LCBtYXhfaGVpZ2h0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfY3J0YyB7Ci0gX191NjQgc2V0X2Nvbm5lY3RvcnNfcHRyOwotIF9fdTMyIGNvdW50X2Nvbm5lY3RvcnM7CisgIF9fdTY0IHNldF9jb25uZWN0b3JzX3B0cjsKKyAgX191MzIgY291bnRfY29ubmVjdG9yczsKKyAgX191MzIgY3J0Y19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3J0Y19pZDsKLSBfX3UzMiBmYl9pZDsKLSBfX3UzMiB4LCB5OwotIF9fdTMyIGdhbW1hX3NpemU7CisgIF9fdTMyIGZiX2lkOworICBfX3UzMiB4LCB5OworICBfX3UzMiBnYW1tYV9zaXplOworICBfX3UzMiBtb2RlX3ZhbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtb2RlX3ZhbGlkOwotIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbyBtb2RlOworICBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gbW9kZTsKIH07Ci0jZGVmaW5lIERSTV9NT0RFX1BSRVNFTlRfVE9QX0ZJRUxEICgxPDwwKQorI2RlZmluZSBEUk1fTU9ERV9QUkVTRU5UX1RPUF9GSUVMRCAoMSA8PCAwKQorI2RlZmluZSBEUk1fTU9ERV9QUkVTRU5UX0JPVFRPTV9GSUVMRCAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfUFJFU0VOVF9CT1RUT01fRklFTEQgKDE8PDEpCiBzdHJ1Y3QgZHJtX21vZGVfc2V0X3BsYW5lIHsKLSBfX3UzMiBwbGFuZV9pZDsKLSBfX3UzMiBjcnRjX2lkOworICBfX3UzMiBwbGFuZV9pZDsKKyAgX191MzIgY3J0Y19pZDsKKyAgX191MzIgZmJfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZiX2lkOwotIF9fdTMyIGZsYWdzOwotIF9fczMyIGNydGNfeCwgY3J0Y195OwotIF9fdTMyIGNydGNfdywgY3J0Y19oOworICBfX3UzMiBmbGFnczsKKyAgX19zMzIgY3J0Y194LCBjcnRjX3k7CisgIF9fdTMyIGNydGNfdywgY3J0Y19oOworICBfX3UzMiBzcmNfeCwgc3JjX3k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNyY194LCBzcmNfeTsKLSBfX3UzMiBzcmNfaCwgc3JjX3c7CisgIF9fdTMyIHNyY19oLCBzcmNfdzsKIH07CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3BsYW5lIHsKKyAgX191MzIgcGxhbmVfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBsYW5lX2lkOwotIF9fdTMyIGNydGNfaWQ7Ci0gX191MzIgZmJfaWQ7Ci0gX191MzIgcG9zc2libGVfY3J0Y3M7CisgIF9fdTMyIGNydGNfaWQ7CisgIF9fdTMyIGZiX2lkOworICBfX3UzMiBwb3NzaWJsZV9jcnRjczsKKyAgX191MzIgZ2FtbWFfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2FtbWFfc2l6ZTsKLSBfX3UzMiBjb3VudF9mb3JtYXRfdHlwZXM7Ci0gX191NjQgZm9ybWF0X3R5cGVfcHRyOworICBfX3UzMiBjb3VudF9mb3JtYXRfdHlwZXM7CisgIF9fdTY0IGZvcm1hdF90eXBlX3B0cjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX2dldF9wbGFuZV9yZXMgewotIF9fdTY0IHBsYW5lX2lkX3B0cjsKLSBfX3UzMiBjb3VudF9wbGFuZXM7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcGxhbmVfaWRfcHRyOworICBfX3UzMiBjb3VudF9wbGFuZXM7Cit9OwogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX05PTkUgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX01PREVfRU5DT0RFUl9EQUMgMQogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX1RNRFMgMgogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX0xWRFMgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX01PREVfRU5DT0RFUl9UVkRBQyA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX1ZJUlRVQUwgNQogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX0RTSSA2CisjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfRFBNU1QgNwogc3RydWN0IGRybV9tb2RlX2dldF9lbmNvZGVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZW5jb2Rlcl9pZDsKLSBfX3UzMiBlbmNvZGVyX3R5cGU7Ci0gX191MzIgY3J0Y19pZDsKLSBfX3UzMiBwb3NzaWJsZV9jcnRjczsKKyAgX191MzIgZW5jb2Rlcl9pZDsKKyAgX191MzIgZW5jb2Rlcl90eXBlOworICBfX3UzMiBjcnRjX2lkOworICBfX3UzMiBwb3NzaWJsZV9jcnRjczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcG9zc2libGVfY2xvbmVzOworICBfX3UzMiBwb3NzaWJsZV9jbG9uZXM7CiB9OwogI2RlZmluZSBEUk1fTU9ERV9TVUJDT05ORUNUT1JfQXV0b21hdGljIDAKICNkZWZpbmUgRFJNX01PREVfU1VCQ09OTkVDVE9SX1Vua25vd24gMApAQCAtMjAxLDE4OSArMjA2LDE5NSBAQAogI2RlZmluZSBEUk1fTU9ERV9DT05ORUNUT1JfRFNJIDE2CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2Nvbm5lY3RvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGVuY29kZXJzX3B0cjsKLSBfX3U2NCBtb2Rlc19wdHI7Ci0gX191NjQgcHJvcHNfcHRyOwotIF9fdTY0IHByb3BfdmFsdWVzX3B0cjsKKyAgX191NjQgZW5jb2RlcnNfcHRyOworICBfX3U2NCBtb2Rlc19wdHI7CisgIF9fdTY0IHByb3BzX3B0cjsKKyAgX191NjQgcHJvcF92YWx1ZXNfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudF9tb2RlczsKLSBfX3UzMiBjb3VudF9wcm9wczsKLSBfX3UzMiBjb3VudF9lbmNvZGVyczsKLSBfX3UzMiBlbmNvZGVyX2lkOworICBfX3UzMiBjb3VudF9tb2RlczsKKyAgX191MzIgY291bnRfcHJvcHM7CisgIF9fdTMyIGNvdW50X2VuY29kZXJzOworICBfX3UzMiBlbmNvZGVyX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb25uZWN0b3JfaWQ7Ci0gX191MzIgY29ubmVjdG9yX3R5cGU7Ci0gX191MzIgY29ubmVjdG9yX3R5cGVfaWQ7Ci0gX191MzIgY29ubmVjdGlvbjsKKyAgX191MzIgY29ubmVjdG9yX2lkOworICBfX3UzMiBjb25uZWN0b3JfdHlwZTsKKyAgX191MzIgY29ubmVjdG9yX3R5cGVfaWQ7CisgIF9fdTMyIGNvbm5lY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1tX3dpZHRoLCBtbV9oZWlnaHQ7Ci0gX191MzIgc3VicGl4ZWw7Ci0gX191MzIgcGFkOworICBfX3UzMiBtbV93aWR0aCwgbW1faGVpZ2h0OworICBfX3UzMiBzdWJwaXhlbDsKKyAgX191MzIgcGFkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX1BST1BfUEVORElORyAoMTw8MCkKLSNkZWZpbmUgRFJNX01PREVfUFJPUF9SQU5HRSAoMTw8MSkKLSNkZWZpbmUgRFJNX01PREVfUFJPUF9JTU1VVEFCTEUgKDE8PDIpCi0jZGVmaW5lIERSTV9NT0RFX1BST1BfRU5VTSAoMTw8MykKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9QRU5ESU5HICgxIDw8IDApCisjZGVmaW5lIERSTV9NT0RFX1BST1BfUkFOR0UgKDEgPDwgMSkKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9JTU1VVEFCTEUgKDEgPDwgMikKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9FTlVNICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9QUk9QX0JMT0IgKDE8PDQpCi0jZGVmaW5lIERSTV9NT0RFX1BST1BfQklUTUFTSyAoMTw8NSkKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9CTE9CICgxIDw8IDQpCisjZGVmaW5lIERSTV9NT0RFX1BST1BfQklUTUFTSyAoMSA8PCA1KQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX0xFR0FDWV9UWVBFIChEUk1fTU9ERV9QUk9QX1JBTkdFIHwgRFJNX01PREVfUFJPUF9FTlVNIHwgRFJNX01PREVfUFJPUF9CTE9CIHwgRFJNX01PREVfUFJPUF9CSVRNQVNLKQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX0VYVEVOREVEX1RZUEUgMHgwMDAwZmZjMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX01PREVfUFJPUF9UWVBFKG4pICgobikgPDwgNikKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9PQkpFQ1QgRFJNX01PREVfUFJPUF9UWVBFKDEpCisjZGVmaW5lIERSTV9NT0RFX1BST1BfU0lHTkVEX1JBTkdFIERSTV9NT0RFX1BST1BfVFlQRSgyKQogc3RydWN0IGRybV9tb2RlX3Byb3BlcnR5X2VudW0gewotIF9fdTY0IHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbRFJNX1BST1BfTkFNRV9MRU5dOworICBfX3U2NCB2YWx1ZTsKKyAgY2hhciBuYW1lW0RSTV9QUk9QX05BTUVfTEVOXTsKIH07CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3Byb3BlcnR5IHsKLSBfX3U2NCB2YWx1ZXNfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBlbnVtX2Jsb2JfcHRyOwotIF9fdTMyIHByb3BfaWQ7Ci0gX191MzIgZmxhZ3M7Ci0gY2hhciBuYW1lW0RSTV9QUk9QX05BTUVfTEVOXTsKKyAgX191NjQgdmFsdWVzX3B0cjsKKyAgX191NjQgZW51bV9ibG9iX3B0cjsKKyAgX191MzIgcHJvcF9pZDsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvdW50X3ZhbHVlczsKLSBfX3UzMiBjb3VudF9lbnVtX2Jsb2JzOworICBjaGFyIG5hbWVbRFJNX1BST1BfTkFNRV9MRU5dOworICBfX3UzMiBjb3VudF92YWx1ZXM7CisgIF9fdTMyIGNvdW50X2VudW1fYmxvYnM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9jb25uZWN0b3Jfc2V0X3Byb3BlcnR5IHsKKyAgX191NjQgdmFsdWU7CisgIF9fdTMyIHByb3BfaWQ7CisgIF9fdTMyIGNvbm5lY3Rvcl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdmFsdWU7Ci0gX191MzIgcHJvcF9pZDsKLSBfX3UzMiBjb25uZWN0b3JfaWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9vYmpfZ2V0X3Byb3BlcnRpZXMgewotIF9fdTY0IHByb3BzX3B0cjsKLSBfX3U2NCBwcm9wX3ZhbHVlc19wdHI7Ci0gX191MzIgY291bnRfcHJvcHM7CisgIF9fdTY0IHByb3BzX3B0cjsKKyAgX191NjQgcHJvcF92YWx1ZXNfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvYmpfaWQ7Ci0gX191MzIgb2JqX3R5cGU7CisgIF9fdTMyIGNvdW50X3Byb3BzOworICBfX3UzMiBvYmpfaWQ7CisgIF9fdTMyIG9ial90eXBlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfb2JqX3NldF9wcm9wZXJ0eSB7CisgIF9fdTY0IHZhbHVlOworICBfX3UzMiBwcm9wX2lkOworICBfX3UzMiBvYmpfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHZhbHVlOwotIF9fdTMyIHByb3BfaWQ7Ci0gX191MzIgb2JqX2lkOwotIF9fdTMyIG9ial90eXBlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgb2JqX3R5cGU7CiB9Owogc3RydWN0IGRybV9tb2RlX2dldF9ibG9iIHsKLSBfX3UzMiBibG9iX2lkOwotIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgYmxvYl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YTsKKyAgX191MzIgbGVuZ3RoOworICBfX3U2NCBkYXRhOwogfTsKIHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQgewotIF9fdTMyIGZiX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aCwgaGVpZ2h0OwotIF9fdTMyIHBpdGNoOwotIF9fdTMyIGJwcDsKLSBfX3UzMiBkZXB0aDsKKyAgX191MzIgZmJfaWQ7CisgIF9fdTMyIHdpZHRoLCBoZWlnaHQ7CisgIF9fdTMyIHBpdGNoOworICBfX3UzMiBicHA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgZGVwdGg7CisgIF9fdTMyIGhhbmRsZTsKIH07Ci0jZGVmaW5lIERSTV9NT0RFX0ZCX0lOVEVSTEFDRUQgKDE8PDApCisjZGVmaW5lIERSTV9NT0RFX0ZCX0lOVEVSTEFDRUQgKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMiB7CisgIF9fdTMyIGZiX2lkOworICBfX3UzMiB3aWR0aCwgaGVpZ2h0OworICBfX3UzMiBwaXhlbF9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZiX2lkOwotIF9fdTMyIHdpZHRoLCBoZWlnaHQ7Ci0gX191MzIgcGl4ZWxfZm9ybWF0OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgaGFuZGxlc1s0XTsKKyAgX191MzIgcGl0Y2hlc1s0XTsKKyAgX191MzIgb2Zmc2V0c1s0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlc1s0XTsKLSBfX3UzMiBwaXRjaGVzWzRdOwotIF9fdTMyIG9mZnNldHNbNF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX01PREVfRkJfRElSVFlfQU5OT1RBVEVfQ09QWSAweDAxCiAjZGVmaW5lIERSTV9NT0RFX0ZCX0RJUlRZX0FOTk9UQVRFX0ZJTEwgMHgwMgogI2RlZmluZSBEUk1fTU9ERV9GQl9ESVJUWV9GTEFHUyAweDAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9GQl9ESVJUWV9NQVhfQ0xJUFMgMjU2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX2ZiX2RpcnR5X2NtZCB7Ci0gX191MzIgZmJfaWQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgY29sb3I7CisgIF9fdTMyIGZiX2lkOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX2NsaXBzOwotIF9fdTY0IGNsaXBzX3B0cjsKKyAgX191MzIgY29sb3I7CisgIF9fdTMyIG51bV9jbGlwczsKKyAgX191NjQgY2xpcHNfcHRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfbW9kZV9jbWQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb25uZWN0b3JfaWQ7Ci0gc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIG1vZGU7CisgIF9fdTMyIGNvbm5lY3Rvcl9pZDsKKyAgc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIG1vZGU7CiB9OwotI2RlZmluZSBEUk1fTU9ERV9DVVJTT1JfQk8gMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX01PREVfQ1VSU09SX0JPIDB4MDEKICNkZWZpbmUgRFJNX01PREVfQ1VSU09SX01PVkUgMHgwMgogI2RlZmluZSBEUk1fTU9ERV9DVVJTT1JfRkxBR1MgMHgwMwogc3RydWN0IGRybV9tb2RlX2N1cnNvciB7Ci0gX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNydGNfaWQ7Ci0gX19zMzIgeDsKLSBfX3MzMiB5OwotIF9fdTMyIHdpZHRoOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgY3J0Y19pZDsKKyAgX19zMzIgeDsKKyAgX19zMzIgeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGVpZ2h0OwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgaGFuZGxlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfY3Vyc29yMiB7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBjcnRjX2lkOworICBfX3MzMiB4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBjcnRjX2lkOwotIF9fczMyIHg7Ci0gX19zMzIgeTsKKyAgX19zMzIgeTsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgaGFuZGxlOwotIF9fczMyIGhvdF94OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBob3RfeTsKKyAgX19zMzIgaG90X3g7CisgIF9fczMyIGhvdF95OwogfTsKIHN0cnVjdCBkcm1fbW9kZV9jcnRjX2x1dCB7Ci0gX191MzIgY3J0Y19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2FtbWFfc2l6ZTsKLSBfX3U2NCByZWQ7Ci0gX191NjQgZ3JlZW47Ci0gX191NjQgYmx1ZTsKKyAgX191MzIgY3J0Y19pZDsKKyAgX191MzIgZ2FtbWFfc2l6ZTsKKyAgX191NjQgcmVkOworICBfX3U2NCBncmVlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGJsdWU7CiB9OwogI2RlZmluZSBEUk1fTU9ERV9QQUdFX0ZMSVBfRVZFTlQgMHgwMQogI2RlZmluZSBEUk1fTU9ERV9QQUdFX0ZMSVBfQVNZTkMgMHgwMgotI2RlZmluZSBEUk1fTU9ERV9QQUdFX0ZMSVBfRkxBR1MgKERSTV9NT0RFX1BBR0VfRkxJUF9FVkVOVHxEUk1fTU9ERV9QQUdFX0ZMSVBfQVNZTkMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fTU9ERV9QQUdFX0ZMSVBfRkxBR1MgKERSTV9NT0RFX1BBR0VfRkxJUF9FVkVOVCB8IERSTV9NT0RFX1BBR0VfRkxJUF9BU1lOQykKIHN0cnVjdCBkcm1fbW9kZV9jcnRjX3BhZ2VfZmxpcCB7Ci0gX191MzIgY3J0Y19pZDsKLSBfX3UzMiBmYl9pZDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgY3J0Y19pZDsKKyAgX191MzIgZmJfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IHVzZXJfZGF0YTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCB1c2VyX2RhdGE7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9jcmVhdGVfZHVtYiB7CisgIHVpbnQzMl90IGhlaWdodDsKKyAgdWludDMyX3Qgd2lkdGg7CisgIHVpbnQzMl90IGJwcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGVpZ2h0OwotIHVpbnQzMl90IHdpZHRoOwotIHVpbnQzMl90IGJwcDsKLSB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGl0Y2g7CisgIHVpbnQ2NF90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwaXRjaDsKLSB1aW50NjRfdCBzaXplOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfbWFwX2R1bWIgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7Ci0gX191NjQgb2Zmc2V0OworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG9mZnNldDsKIH07CiBzdHJ1Y3QgZHJtX21vZGVfZGVzdHJveV9kdW1iIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci19OworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX3NhcmVhLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fc2FyZWEuaAppbmRleCBlY2Y0NDQwLi5jYTE5YzJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fc2FyZWEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fc2FyZWEuaApAQCAtMzQsMjYgKzM0LDI2IEBACiAjZGVmaW5lIFNBUkVBX01BWF9EUkFXQUJMRVMgMjU2CiAjZGVmaW5lIFNBUkVBX0RSQVdBQkxFX0NMQUlNRURfRU5UUlkgMHg4MDAwMDAwMAogc3RydWN0IGRybV9zYXJlYV9kcmF3YWJsZSB7Ci0gdW5zaWduZWQgaW50IHN0YW1wOworICB1bnNpZ25lZCBpbnQgc3RhbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogfTsKIHN0cnVjdCBkcm1fc2FyZWFfZnJhbWUgewotIHVuc2lnbmVkIGludCB4OworICB1bnNpZ25lZCBpbnQgeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHk7Ci0gdW5zaWduZWQgaW50IHdpZHRoOwotIHVuc2lnbmVkIGludCBoZWlnaHQ7Ci0gdW5zaWduZWQgaW50IGZ1bGxzY3JlZW47CisgIHVuc2lnbmVkIGludCB5OworICB1bnNpZ25lZCBpbnQgd2lkdGg7CisgIHVuc2lnbmVkIGludCBoZWlnaHQ7CisgIHVuc2lnbmVkIGludCBmdWxsc2NyZWVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3NhcmVhIHsKLSBzdHJ1Y3QgZHJtX2h3X2xvY2sgbG9jazsKLSBzdHJ1Y3QgZHJtX2h3X2xvY2sgZHJhd2FibGVfbG9jazsKKyAgc3RydWN0IGRybV9od19sb2NrIGxvY2s7CisgIHN0cnVjdCBkcm1faHdfbG9jayBkcmF3YWJsZV9sb2NrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX3NhcmVhX2RyYXdhYmxlIGRyYXdhYmxlVGFibGVbU0FSRUFfTUFYX0RSQVdBQkxFU107Ci0gc3RydWN0IGRybV9zYXJlYV9mcmFtZSBmcmFtZTsKLSBkcm1fY29udGV4dF90IGR1bW15X2NvbnRleHQ7CisgIHN0cnVjdCBkcm1fc2FyZWFfZHJhd2FibGUgZHJhd2FibGVUYWJsZVtTQVJFQV9NQVhfRFJBV0FCTEVTXTsKKyAgc3RydWN0IGRybV9zYXJlYV9mcmFtZSBmcmFtZTsKKyAgZHJtX2NvbnRleHRfdCBkdW1teV9jb250ZXh0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fc2FyZWFfZHJhd2FibGUgZHJtX3NhcmVhX2RyYXdhYmxlX3Q7CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9leHlub3NfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9leHlub3NfZHJtLmgKaW5kZXggMzliMjI4ZS4uNDcyOTRiNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZXh5bm9zX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2V4eW5vc19kcm0uaApAQCAtMjEsMjYxICsyMSwyNDAgQEAKICNpbmNsdWRlIDxkcm0vZHJtLmg+CiBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1fY3JlYXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IGhhbmRsZTsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgZHJtX2V4eW5vc19nZW1fbWFwX29mZiB7Ci0gdW5zaWduZWQgaW50IGhhbmRsZTsKLSB1bnNpZ25lZCBpbnQgcGFkOwotIHVpbnQ2NF90IG9mZnNldDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19Owotc3RydWN0IGRybV9leHlub3NfZ2VtX21tYXAgewotIHVuc2lnbmVkIGludCBoYW5kbGU7Ci0gdW5zaWduZWQgaW50IHBhZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgc2l6ZTsKLSB1aW50NjRfdCBtYXBwZWQ7Ci19Owogc3RydWN0IGRybV9leHlub3NfZ2VtX2luZm8geworICB1bnNpZ25lZCBpbnQgaGFuZGxlOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVpbnQ2NF90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBoYW5kbGU7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVpbnQ2NF90IHNpemU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fZXh5bm9zX3ZpZGlfY29ubmVjdGlvbiB7Ci0gdW5zaWduZWQgaW50IGNvbm5lY3Rpb247Ci0gdW5zaWduZWQgaW50IGV4dGVuc2lvbnM7Ci0gdWludDY0X3QgZWRpZDsKKyAgdW5zaWduZWQgaW50IGNvbm5lY3Rpb247CisgIHVuc2lnbmVkIGludCBleHRlbnNpb25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDY0X3QgZWRpZDsKIH07CiBlbnVtIGVfZHJtX2V4eW5vc19nZW1fbWVtX3R5cGUgewotIEVYWU5PU19CT19DT05USUcgPSAwIDw8IDAsCi0gRVhZTk9TX0JPX05PTkNPTlRJRyA9IDEgPDwgMCwKKyAgRVhZTk9TX0JPX0NPTlRJRyA9IDAgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVhZTk9TX0JPX05PTkNBQ0hBQkxFID0gMCA8PCAxLAotIEVYWU5PU19CT19DQUNIQUJMRSA9IDEgPDwgMSwKLSBFWFlOT1NfQk9fV0MgPSAxIDw8IDIsCi0gRVhZTk9TX0JPX01BU0sgPSBFWFlOT1NfQk9fTk9OQ09OVElHIHwgRVhZTk9TX0JPX0NBQ0hBQkxFIHwKKyAgRVhZTk9TX0JPX05PTkNPTlRJRyA9IDEgPDwgMCwKKyAgRVhZTk9TX0JPX05PTkNBQ0hBQkxFID0gMCA8PCAxLAorICBFWFlOT1NfQk9fQ0FDSEFCTEUgPSAxIDw8IDEsCisgIEVYWU5PU19CT19XQyA9IDEgPDwgMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVhZTk9TX0JPX1dDCisgIEVYWU5PU19CT19NQVNLID0gRVhZTk9TX0JPX05PTkNPTlRJRyB8IEVYWU5PU19CT19DQUNIQUJMRSB8IEVYWU5PU19CT19XQwogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9nZXRfdmVyIHsKLSBfX3UzMiBtYWpvcjsKKyAgX191MzIgbWFqb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1pbm9yOworICBfX3UzMiBtaW5vcjsKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfY21kIHsKLSBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0YTsKKyAgX191MzIgZGF0YTsKIH07CiBlbnVtIGRybV9leHlub3NfZzJkX2J1Zl90eXBlIHsKLSBHMkRfQlVGX1VTRVJQVFIgPSAxIDw8IDMxLAorICBHMkRfQlVGX1VTRVJQVFIgPSAxIDw8IDMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV9leHlub3NfZzJkX2V2ZW50X3R5cGUgewotIEcyRF9FVkVOVF9OT1QsCi0gRzJEX0VWRU5UX05PTlNUT1AsCisgIEcyRF9FVkVOVF9OT1QsCisgIEcyRF9FVkVOVF9OT05TVE9QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHMkRfRVZFTlRfU1RPUCwKKyAgRzJEX0VWRU5UX1NUT1AsCiB9Owogc3RydWN0IGRybV9leHlub3NfZzJkX3VzZXJwdHIgewotIHVuc2lnbmVkIGxvbmcgdXNlcnB0cjsKKyAgdW5zaWduZWQgbG9uZyB1c2VycHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgc2l6ZTsKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfc2V0X2NtZGxpc3QgewotIF9fdTY0IGNtZDsKKyAgX191NjQgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbWRfYnVmOwotIF9fdTMyIGNtZF9ucjsKLSBfX3UzMiBjbWRfYnVmX25yOwotIF9fdTY0IGV2ZW50X3R5cGU7CisgIF9fdTY0IGNtZF9idWY7CisgIF9fdTMyIGNtZF9ucjsKKyAgX191MzIgY21kX2J1Zl9ucjsKKyAgX191NjQgZXZlbnRfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNlcl9kYXRhOworICBfX3U2NCB1c2VyX2RhdGE7CiB9Owogc3RydWN0IGRybV9leHlub3NfZzJkX2V4ZWMgewotIF9fdTY0IGFzeW5jOworICBfX3U2NCBhc3luYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBkcm1fZXh5bm9zX29wc19pZCB7Ci0gRVhZTk9TX0RSTV9PUFNfU1JDLAotIEVYWU5PU19EUk1fT1BTX0RTVCwKKyAgRVhZTk9TX0RSTV9PUFNfU1JDLAorICBFWFlOT1NfRFJNX09QU19EU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVYWU5PU19EUk1fT1BTX01BWCwKKyAgRVhZTk9TX0RSTV9PUFNfTUFYLAogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX3N6IHsKLSBfX3UzMiBoc2l6ZTsKKyAgX191MzIgaHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZzaXplOworICBfX3UzMiB2c2l6ZTsKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19wb3MgewotIF9fdTMyIHg7CisgIF9fdTMyIHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHk7Ci0gX191MzIgdzsKLSBfX3UzMiBoOworICBfX3UzMiB5OworICBfX3UzMiB3OworICBfX3UzMiBoOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGRybV9leHlub3NfZmxpcCB7Ci0gRVhZTk9TX0RSTV9GTElQX05PTkUgPSAoMCA8PCAwKSwKLSBFWFlOT1NfRFJNX0ZMSVBfVkVSVElDQUwgPSAoMSA8PCAwKSwKLSBFWFlOT1NfRFJNX0ZMSVBfSE9SSVpPTlRBTCA9ICgxIDw8IDEpLAorICBFWFlOT1NfRFJNX0ZMSVBfTk9ORSA9ICgwIDw8IDApLAorICBFWFlOT1NfRFJNX0ZMSVBfVkVSVElDQUwgPSAoMSA8PCAwKSwKKyAgRVhZTk9TX0RSTV9GTElQX0hPUklaT05UQUwgPSAoMSA8PCAxKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVhZTk9TX0RSTV9GTElQX0JPVEggPSBFWFlOT1NfRFJNX0ZMSVBfVkVSVElDQUwgfAotIEVYWU5PU19EUk1fRkxJUF9IT1JJWk9OVEFMLAorICBFWFlOT1NfRFJNX0ZMSVBfQk9USCA9IEVYWU5PU19EUk1fRkxJUF9WRVJUSUNBTCB8IEVYWU5PU19EUk1fRkxJUF9IT1JJWk9OVEFMLAogfTsKIGVudW0gZHJtX2V4eW5vc19kZWdyZWUgeworICBFWFlOT1NfRFJNX0RFR1JFRV8wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFWFlOT1NfRFJNX0RFR1JFRV8wLAotIEVYWU5PU19EUk1fREVHUkVFXzkwLAotIEVYWU5PU19EUk1fREVHUkVFXzE4MCwKLSBFWFlOT1NfRFJNX0RFR1JFRV8yNzAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBFWFlOT1NfRFJNX0RFR1JFRV85MCwKKyAgRVhZTk9TX0RSTV9ERUdSRUVfMTgwLAorICBFWFlOT1NfRFJNX0RFR1JFRV8yNzAsCiB9OwotZW51bSBkcm1fZXh5bm9zX3BsYW5lciB7Ci0gRVhZTk9TX0RSTV9QTEFOQVJfWSwKLSBFWFlOT1NfRFJNX1BMQU5BUl9DQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVhZTk9TX0RSTV9QTEFOQVJfQ1IsCi0gRVhZTk9TX0RSTV9QTEFOQVJfTUFYLAorZW51bSBkcm1fZXh5bm9zX3BsYW5lciB7CisgIEVYWU5PU19EUk1fUExBTkFSX1ksCisgIEVYWU5PU19EUk1fUExBTkFSX0NCLAorICBFWFlOT1NfRFJNX1BMQU5BUl9DUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEVYWU5PU19EUk1fUExBTkFSX01BWCwKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcF9saXN0IHsKKyAgX191MzIgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBpcHBfaWQ7Ci0gX191MzIgY291bnQ7Ci0gX191MzIgd3JpdGViYWNrOworICBfX3UzMiBpcHBfaWQ7CisgIF9fdTMyIGNvdW50OworICBfX3UzMiB3cml0ZWJhY2s7CisgIF9fdTMyIGZsaXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsaXA7Ci0gX191MzIgZGVncmVlOwotIF9fdTMyIGNzYzsKLSBfX3UzMiBjcm9wOworICBfX3UzMiBkZWdyZWU7CisgIF9fdTMyIGNzYzsKKyAgX191MzIgY3JvcDsKKyAgX191MzIgc2NhbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNjYWxlOwotIF9fdTMyIHJlZnJlc2hfbWluOwotIF9fdTMyIHJlZnJlc2hfbWF4OwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiByZWZyZXNoX21pbjsKKyAgX191MzIgcmVmcmVzaF9tYXg7CisgIF9fdTMyIHJlc2VydmVkOworICBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBjcm9wX21pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9leHlub3Nfc3ogY3JvcF9taW47Ci0gc3RydWN0IGRybV9leHlub3Nfc3ogY3JvcF9tYXg7Ci0gc3RydWN0IGRybV9leHlub3Nfc3ogc2NhbGVfbWluOwotIHN0cnVjdCBkcm1fZXh5bm9zX3N6IHNjYWxlX21heDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBkcm1fZXh5bm9zX3N6IGNyb3BfbWF4OworICBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBzY2FsZV9taW47CisgIHN0cnVjdCBkcm1fZXh5bm9zX3N6IHNjYWxlX21heDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9leHlub3NfaXBwX2NvbmZpZyB7Ci0gZW51bSBkcm1fZXh5bm9zX29wc19pZCBvcHNfaWQ7Ci0gZW51bSBkcm1fZXh5bm9zX2ZsaXAgZmxpcDsKKyAgZW51bSBkcm1fZXh5bm9zX29wc19pZCBvcHNfaWQ7CisgIGVudW0gZHJtX2V4eW5vc19mbGlwIGZsaXA7CisgIGVudW0gZHJtX2V4eW5vc19kZWdyZWUgZGVncmVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIGRybV9leHlub3NfZGVncmVlIGRlZ3JlZTsKLSBfX3UzMiBmbXQ7Ci0gc3RydWN0IGRybV9leHlub3Nfc3ogc3o7Ci0gc3RydWN0IGRybV9leHlub3NfcG9zIHBvczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZtdDsKKyAgc3RydWN0IGRybV9leHlub3Nfc3ogc3o7CisgIHN0cnVjdCBkcm1fZXh5bm9zX3BvcyBwb3M7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZHJtX2V4eW5vc19pcHBfY21kIHsKLSBJUFBfQ01EX05PTkUsCi0gSVBQX0NNRF9NMk0sCisgIElQUF9DTURfTk9ORSwKKyAgSVBQX0NNRF9NMk0sCisgIElQUF9DTURfV0IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQUF9DTURfV0IsCi0gSVBQX0NNRF9PVVRQVVQsCi0gSVBQX0NNRF9NQVgsCisgIElQUF9DTURfT1VUUFVULAorICBJUFBfQ01EX01BWCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9leHlub3NfaXBwX3Byb3BlcnR5IHsKLSBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfY29uZmlnIGNvbmZpZ1tFWFlOT1NfRFJNX09QU19NQVhdOwotIGVudW0gZHJtX2V4eW5vc19pcHBfY21kIGNtZDsKLSBfX3UzMiBpcHBfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByb3BfaWQ7Ci0gX191MzIgcmVmcmVzaF9yYXRlOworICBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfY29uZmlnIGNvbmZpZ1tFWFlOT1NfRFJNX09QU19NQVhdOworICBlbnVtIGRybV9leHlub3NfaXBwX2NtZCBjbWQ7CisgIF9fdTMyIGlwcF9pZDsKKyAgX191MzIgcHJvcF9pZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlZnJlc2hfcmF0ZTsKIH07CiBlbnVtIGRybV9leHlub3NfaXBwX2J1Zl90eXBlIHsKKyAgSVBQX0JVRl9FTlFVRVVFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFBfQlVGX0VOUVVFVUUsCi0gSVBQX0JVRl9ERVFVRVVFLAorICBJUFBfQlVGX0RFUVVFVUUsCiB9Owogc3RydWN0IGRybV9leHlub3NfaXBwX3F1ZXVlX2J1ZiB7CisgIGVudW0gZHJtX2V4eW5vc19vcHNfaWQgb3BzX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIGRybV9leHlub3Nfb3BzX2lkIG9wc19pZDsKLSBlbnVtIGRybV9leHlub3NfaXBwX2J1Zl90eXBlIGJ1Zl90eXBlOwotIF9fdTMyIHByb3BfaWQ7Ci0gX191MzIgYnVmX2lkOworICBlbnVtIGRybV9leHlub3NfaXBwX2J1Zl90eXBlIGJ1Zl90eXBlOworICBfX3UzMiBwcm9wX2lkOworICBfX3UzMiBidWZfaWQ7CisgIF9fdTMyIGhhbmRsZVtFWFlOT1NfRFJNX1BMQU5BUl9NQVhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGVbRVhZTk9TX0RSTV9QTEFOQVJfTUFYXTsKLSBfX3UzMiByZXNlcnZlZDsKLSBfX3U2NCB1c2VyX2RhdGE7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCB1c2VyX2RhdGE7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZHJtX2V4eW5vc19pcHBfY3RybCB7Ci0gSVBQX0NUUkxfUExBWSwKLSBJUFBfQ1RSTF9TVE9QLAotIElQUF9DVFJMX1BBVVNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFBfQ1RSTF9SRVNVTUUsCi0gSVBQX0NUUkxfTUFYLAorICBJUFBfQ1RSTF9QTEFZLAorICBJUFBfQ1RSTF9TVE9QLAorICBJUFBfQ1RSTF9QQVVTRSwKKyAgSVBQX0NUUkxfUkVTVU1FLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVBQX0NUUkxfTUFYLAogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9jbWRfY3RybCB7CisgIF9fdTMyIHByb3BfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByb3BfaWQ7Ci0gZW51bSBkcm1fZXh5bm9zX2lwcF9jdHJsIGN0cmw7CisgIGVudW0gZHJtX2V4eW5vc19pcHBfY3RybCBjdHJsOwogfTsKICNkZWZpbmUgRFJNX0VYWU5PU19HRU1fQ1JFQVRFIDB4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9FWFlOT1NfR0VNX01BUF9PRkZTRVQgMHgwMQotI2RlZmluZSBEUk1fRVhZTk9TX0dFTV9NTUFQIDB4MDIKICNkZWZpbmUgRFJNX0VYWU5PU19HRU1fR0VUIDB4MDQKLSNkZWZpbmUgRFJNX0VYWU5PU19WSURJX0NPTk5FQ1RJT04gMHgwNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0VYWU5PU19WSURJX0NPTk5FQ1RJT04gMHgwNwogI2RlZmluZSBEUk1fRVhZTk9TX0cyRF9HRVRfVkVSIDB4MjAKICNkZWZpbmUgRFJNX0VYWU5PU19HMkRfU0VUX0NNRExJU1QgMHgyMQogI2RlZmluZSBEUk1fRVhZTk9TX0cyRF9FWEVDIDB4MjIKLSNkZWZpbmUgRFJNX0VYWU5PU19JUFBfR0VUX1BST1BFUlRZIDB4MzAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9FWFlOT1NfSVBQX0dFVF9QUk9QRVJUWSAweDMwCiAjZGVmaW5lIERSTV9FWFlOT1NfSVBQX1NFVF9QUk9QRVJUWSAweDMxCiAjZGVmaW5lIERSTV9FWFlOT1NfSVBQX1FVRVVFX0JVRiAweDMyCiAjZGVmaW5lIERSTV9FWFlOT1NfSVBQX0NNRF9DVFJMIDB4MzMKLSNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HRU1fQ1JFQVRFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfR0VNX0NSRUFURSwgc3RydWN0IGRybV9leHlub3NfZ2VtX2NyZWF0ZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfR0VNX01BUF9PRkZTRVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19HRU1fTUFQX09GRlNFVCwgc3RydWN0IGRybV9leHlub3NfZ2VtX21hcF9vZmYpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfR0VNX01NQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19HRU1fTU1BUCwgc3RydWN0IGRybV9leHlub3NfZ2VtX21tYXApCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfR0VNX0dFVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0dFTV9HRVQsIHN0cnVjdCBkcm1fZXh5bm9zX2dlbV9pbmZvKQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX1ZJRElfQ09OTkVDVElPTiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX1ZJRElfQ09OTkVDVElPTiwgc3RydWN0IGRybV9leHlub3NfdmlkaV9jb25uZWN0aW9uKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0dFTV9DUkVBVEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FWFlOT1NfR0VNX0NSRUFURSwgc3RydWN0IGRybV9leHlub3NfZ2VtX2NyZWF0ZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HRU1fR0VUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX0dFTV9HRVQsIHN0cnVjdCBkcm1fZXh5bm9zX2dlbV9pbmZvKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX1ZJRElfQ09OTkVDVElPTiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19WSURJX0NPTk5FQ1RJT04sIHN0cnVjdCBkcm1fZXh5bm9zX3ZpZGlfY29ubmVjdGlvbikKKyNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HMkRfR0VUX1ZFUiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19HMkRfR0VUX1ZFUiwgc3RydWN0IGRybV9leHlub3NfZzJkX2dldF92ZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9HRVRfVkVSIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfRzJEX0dFVF9WRVIsIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9nZXRfdmVyKQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9TRVRfQ01ETElTVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0cyRF9TRVRfQ01ETElTVCwgc3RydWN0IGRybV9leHlub3NfZzJkX3NldF9jbWRsaXN0KQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9FWEVDIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfRzJEX0VYRUMsIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9leGVjKQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9HRVRfUFJPUEVSVFkgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19JUFBfR0VUX1BST1BFUlRZLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcF9saXN0KQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9TRVRfQ01ETElTVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19HMkRfU0VUX0NNRExJU1QsIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9zZXRfY21kbGlzdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HMkRfRVhFQyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19HMkRfRVhFQywgc3RydWN0IGRybV9leHlub3NfZzJkX2V4ZWMpCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX0dFVF9QUk9QRVJUWSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19JUFBfR0VUX1BST1BFUlRZLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcF9saXN0KQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9TRVRfUFJPUEVSVFkgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FWFlOT1NfSVBQX1NFVF9QUk9QRVJUWSwgc3RydWN0IGRybV9leHlub3NfaXBwX3Byb3BlcnR5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19JUFBfU0VUX1BST1BFUlRZIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfSVBQX1NFVF9QUk9QRVJUWSwgc3RydWN0IGRybV9leHlub3NfaXBwX3Byb3BlcnR5KQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9RVUVVRV9CVUYgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19JUFBfUVVFVUVfQlVGLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcXVldWVfYnVmKQotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9DTURfQ1RSTCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0lQUF9DTURfQ1RSTCwgc3RydWN0IGRybV9leHlub3NfaXBwX2NtZF9jdHJsKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9RVUVVRV9CVUYgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FWFlOT1NfSVBQX1FVRVVFX0JVRiwgc3RydWN0IGRybV9leHlub3NfaXBwX3F1ZXVlX2J1ZikKKyNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19JUFBfQ01EX0NUUkwgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FWFlOT1NfSVBQX0NNRF9DVFJMLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfY21kX2N0cmwpCiAjZGVmaW5lIERSTV9FWFlOT1NfRzJEX0VWRU5UIDB4ODAwMDAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9FWFlOT1NfSVBQX0VWRU5UIDB4ODAwMDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfZXZlbnQgewotIHN0cnVjdCBkcm1fZXZlbnQgYmFzZTsKLSBfX3U2NCB1c2VyX2RhdGE7CisgIHN0cnVjdCBkcm1fZXZlbnQgYmFzZTsKKyAgX191NjQgdXNlcl9kYXRhOworICBfX3UzMiB0dl9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR2X3NlYzsKLSBfX3UzMiB0dl91c2VjOwotIF9fdTMyIGNtZGxpc3Rfbm87Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0dl91c2VjOworICBfX3UzMiBjbWRsaXN0X25vOworICBfX3UzMiByZXNlcnZlZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9leHlub3NfaXBwX2V2ZW50IHsKLSBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7Ci0gX191NjQgdXNlcl9kYXRhOworICBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7CisgIF9fdTY0IHVzZXJfZGF0YTsKKyAgX191MzIgdHZfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0dl9zZWM7Ci0gX191MzIgdHZfdXNlYzsKLSBfX3UzMiBwcm9wX2lkOwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiB0dl91c2VjOworICBfX3UzMiBwcm9wX2lkOworICBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgYnVmX2lkW0VYWU5PU19EUk1fT1BTX01BWF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ1Zl9pZFtFWFlOT1NfRFJNX09QU19NQVhdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vaTgxMF9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2k4MTBfZHJtLmgKaW5kZXggOTQ2ODMzZC4uZWJlMzMzMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vaTgxMF9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9pODEwX2RybS5oCkBAIC0yMiw3ICsyMiw3IEBACiAjZGVmaW5lIF9JODEwX0RFRklORVNfCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJODEwX0RNQV9CVUZfT1JERVIgMTIKLSNkZWZpbmUgSTgxMF9ETUFfQlVGX1NaICgxPDxJODEwX0RNQV9CVUZfT1JERVIpCisjZGVmaW5lIEk4MTBfRE1BX0JVRl9TWiAoMSA8PCBJODEwX0RNQV9CVUZfT1JERVIpCiAjZGVmaW5lIEk4MTBfRE1BX0JVRl9OUiAyNTYKICNkZWZpbmUgSTgxMF9OUl9TQVJFQV9DTElQUkVDVFMgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTkzLDgxICs5Myw4MSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTgxMF9ERVBUSCAweDQKIHR5cGVkZWYgZW51bSBfZHJtX2k4MTBfaW5pdF9mdW5jIHsKLSBJODEwX0lOSVRfRE1BID0gMHgwMSwKLSBJODEwX0NMRUFOVVBfRE1BID0gMHgwMiwKKyAgSTgxMF9JTklUX0RNQSA9IDB4MDEsCisgIEk4MTBfQ0xFQU5VUF9ETUEgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJODEwX0lOSVRfRE1BXzFfNCA9IDB4MDMKKyAgSTgxMF9JTklUX0RNQV8xXzQgPSAweDAzCiB9IGRybV9pODEwX2luaXRfZnVuY190OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pODEwX2luaXQgewotIGRybV9pODEwX2luaXRfZnVuY190IGZ1bmM7CisgIGRybV9pODEwX2luaXRfZnVuY190IGZ1bmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKLSB1bnNpZ25lZCBpbnQgYnVmZmVyc19vZmZzZXQ7Ci0gaW50IHNhcmVhX3ByaXZfb2Zmc2V0OwotIHVuc2lnbmVkIGludCByaW5nX3N0YXJ0OworICB1bnNpZ25lZCBpbnQgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBidWZmZXJzX29mZnNldDsKKyAgaW50IHNhcmVhX3ByaXZfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgcmluZ19zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJpbmdfZW5kOwotIHVuc2lnbmVkIGludCByaW5nX3NpemU7Ci0gdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCByaW5nX2VuZDsKKyAgdW5zaWduZWQgaW50IHJpbmdfc2l6ZTsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBvdmVybGF5X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgb3ZlcmxheV9waHlzaWNhbDsKLSB1bnNpZ25lZCBpbnQgdzsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldDsKKyAgdW5zaWduZWQgaW50IG92ZXJsYXlfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgb3ZlcmxheV9waHlzaWNhbDsKKyAgdW5zaWduZWQgaW50IHc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBoOwotIHVuc2lnbmVkIGludCBwaXRjaDsKLSB1bnNpZ25lZCBpbnQgcGl0Y2hfYml0czsKKyAgdW5zaWduZWQgaW50IGg7CisgIHVuc2lnbmVkIGludCBwaXRjaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoX2JpdHM7CiB9IGRybV9pODEwX2luaXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfcHJlMTJfaW5pdCB7Ci0gZHJtX2k4MTBfaW5pdF9mdW5jX3QgZnVuYzsKLSB1bnNpZ25lZCBpbnQgbW1pb19vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGJ1ZmZlcnNfb2Zmc2V0OworICBkcm1faTgxMF9pbml0X2Z1bmNfdCBmdW5jOworICB1bnNpZ25lZCBpbnQgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBidWZmZXJzX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNhcmVhX3ByaXZfb2Zmc2V0OwotIHVuc2lnbmVkIGludCByaW5nX3N0YXJ0OwotIHVuc2lnbmVkIGludCByaW5nX2VuZDsKLSB1bnNpZ25lZCBpbnQgcmluZ19zaXplOworICBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCByaW5nX3N0YXJ0OworICB1bnNpZ25lZCBpbnQgcmluZ19lbmQ7CisgIHVuc2lnbmVkIGludCByaW5nX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHc7CisgIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBoOwotIHVuc2lnbmVkIGludCBwaXRjaDsKLSB1bnNpZ25lZCBpbnQgcGl0Y2hfYml0czsKKyAgdW5zaWduZWQgaW50IGg7CisgIHVuc2lnbmVkIGludCBwaXRjaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoX2JpdHM7CiB9IGRybV9pODEwX3ByZTEyX2luaXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfdGV4X3JlZ2lvbiB7Ci0gdW5zaWduZWQgY2hhciBuZXh0LCBwcmV2OwotIHVuc2lnbmVkIGNoYXIgaW5fdXNlOwotIGludCBhZ2U7CisgIHVuc2lnbmVkIGNoYXIgbmV4dCwgcHJldjsKKyAgdW5zaWduZWQgY2hhciBpbl91c2U7CisgIGludCBhZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1faTgxMF90ZXhfcmVnaW9uX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfc2FyZWEgewotIHVuc2lnbmVkIGludCBDb250ZXh0U3RhdGVbSTgxMF9DVFhfU0VUVVBfU0laRV07Ci0gdW5zaWduZWQgaW50IEJ1ZmZlclN0YXRlW0k4MTBfREVTVF9TRVRVUF9TSVpFXTsKKyAgdW5zaWduZWQgaW50IENvbnRleHRTdGF0ZVtJODEwX0NUWF9TRVRVUF9TSVpFXTsKKyAgdW5zaWduZWQgaW50IEJ1ZmZlclN0YXRlW0k4MTBfREVTVF9TRVRVUF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IFRleFN0YXRlWzJdW0k4MTBfVEVYX1NFVFVQX1NJWkVdOwotIHVuc2lnbmVkIGludCBkaXJ0eTsKLSB1bnNpZ25lZCBpbnQgbmJveDsKLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tJODEwX05SX1NBUkVBX0NMSVBSRUNUU107CisgIHVuc2lnbmVkIGludCBUZXhTdGF0ZVsyXVtJODEwX1RFWF9TRVRVUF9TSVpFXTsKKyAgdW5zaWduZWQgaW50IGRpcnR5OworICB1bnNpZ25lZCBpbnQgbmJveDsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgYm94ZXNbSTgxMF9OUl9TQVJFQV9DTElQUkVDVFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1faTgxMF90ZXhfcmVnaW9uX3QgdGV4TGlzdFtJODEwX05SX1RFWF9SRUdJT05TICsgMV07Ci0gaW50IHRleEFnZTsKLSBpbnQgbGFzdF9lbnF1ZXVlOwotIGludCBsYXN0X2Rpc3BhdGNoOworICBkcm1faTgxMF90ZXhfcmVnaW9uX3QgdGV4TGlzdFtJODEwX05SX1RFWF9SRUdJT05TICsgMV07CisgIGludCB0ZXhBZ2U7CisgIGludCBsYXN0X2VucXVldWU7CisgIGludCBsYXN0X2Rpc3BhdGNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbGFzdF9xdWllc2NlbnQ7Ci0gaW50IGN0eE93bmVyOwotIGludCB2ZXJ0ZXhfcHJpbTsKLSBpbnQgcGZfZW5hYmxlZDsKKyAgaW50IGxhc3RfcXVpZXNjZW50OworICBpbnQgY3R4T3duZXI7CisgIGludCB2ZXJ0ZXhfcHJpbTsKKyAgaW50IHBmX2VuYWJsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwZl9hY3RpdmU7Ci0gaW50IHBmX2N1cnJlbnRfcGFnZTsKKyAgaW50IHBmX2FjdGl2ZTsKKyAgaW50IHBmX2N1cnJlbnRfcGFnZTsKIH0gZHJtX2k4MTBfc2FyZWFfdDsKICNkZWZpbmUgRFJNX0k4MTBfSU5JVCAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTg4LDc0ICsxODgsNzQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JODEwX1JTVEFUVVMgMHgwZAogI2RlZmluZSBEUk1fSTgxMF9GTElQIDB4MGUKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfSU5JVCwgZHJtX2k4MTBfaW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9WRVJURVggRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX1ZFUlRFWCwgZHJtX2k4MTBfdmVydGV4X3QpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfSU5JVCwgZHJtX2k4MTBfaW5pdF90KQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9WRVJURVggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfVkVSVEVYLCBkcm1faTgxMF92ZXJ0ZXhfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX0NMRUFSIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9DTEVBUiwgZHJtX2k4MTBfY2xlYXJfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfRkxVU0ggRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRkxVU0gpCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX0dFVEFHRSBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9HRVRBR0UpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0NMRUFSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0NMRUFSLCBkcm1faTgxMF9jbGVhcl90KQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9GTFVTSCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0ZMVVNIKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9HRVRBR0UgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9HRVRBR0UpCiAjZGVmaW5lIERSTV9JT0NUTF9JODEwX0dFVEJVRiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfR0VUQlVGLCBkcm1faTgxMF9kbWFfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX1NXQVAgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfU1dBUCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfQ09QWSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfQ09QWSwgZHJtX2k4MTBfY29weV90KQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9ET0NPUFkgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRE9DT1BZKQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9PVjBJTkZPIERSTV9JT1IoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9PVjBJTkZPLCBkcm1faTgxMF9vdmVybGF5X3QpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX1NXQVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9TV0FQKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9DT1BZIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0NPUFksIGRybV9pODEwX2NvcHlfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfRE9DT1BZIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRE9DT1BZKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9PVjBJTkZPIERSTV9JT1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX09WMElORk8sIGRybV9pODEwX292ZXJsYXlfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX0ZTVEFUVVMgRFJNX0lPICggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0ZTVEFUVVMpCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX09WMEZMSVAgRFJNX0lPICggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX09WMEZMSVApCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX01DIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9NQywgZHJtX2k4MTBfbWNfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfUlNUQVRVUyBEUk1fSU8gKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfUlNUQVRVUykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfRlNUQVRVUyBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0ZTVEFUVVMpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX09WMEZMSVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9PVjBGTElQKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9NQyBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9NQywgZHJtX2k4MTBfbWNfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfUlNUQVRVUyBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX1JTVEFUVVMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9GTElQIERSTV9JTyAoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9GTElQKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9GTElQIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRkxJUCkKIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF9jbGVhciB7Ci0gaW50IGNsZWFyX2NvbG9yOwotIGludCBjbGVhcl9kZXB0aDsKKyAgaW50IGNsZWFyX2NvbG9yOworICBpbnQgY2xlYXJfZGVwdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmbGFnczsKKyAgaW50IGZsYWdzOwogfSBkcm1faTgxMF9jbGVhcl90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pODEwX3ZlcnRleCB7Ci0gaW50IGlkeDsKKyAgaW50IGlkeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHVzZWQ7Ci0gaW50IGRpc2NhcmQ7CisgIGludCB1c2VkOworICBpbnQgZGlzY2FyZDsKIH0gZHJtX2k4MTBfdmVydGV4X3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfY29weV90IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlkeDsKLSBpbnQgdXNlZDsKLSB2b2lkICphZGRyZXNzOworICBpbnQgaWR4OworICBpbnQgdXNlZDsKKyAgdm9pZCAqIGFkZHJlc3M7CiB9IGRybV9pODEwX2NvcHlfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBSX1RSSUFOR0xFUyAoMHgwPDwxOCkKLSNkZWZpbmUgUFJfVFJJU1RSSVBfMCAoMHgxPDwxOCkKLSNkZWZpbmUgUFJfVFJJU1RSSVBfMSAoMHgyPDwxOCkKLSNkZWZpbmUgUFJfVFJJRkFOICgweDM8PDE4KQorI2RlZmluZSBQUl9UUklBTkdMRVMgKDB4MCA8PCAxOCkKKyNkZWZpbmUgUFJfVFJJU1RSSVBfMCAoMHgxIDw8IDE4KQorI2RlZmluZSBQUl9UUklTVFJJUF8xICgweDIgPDwgMTgpCisjZGVmaW5lIFBSX1RSSUZBTiAoMHgzIDw8IDE4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFJfUE9MWUdPTiAoMHg0PDwxOCkKLSNkZWZpbmUgUFJfTElORVMgKDB4NTw8MTgpCi0jZGVmaW5lIFBSX0xJTkVTVFJJUCAoMHg2PDwxOCkKLSNkZWZpbmUgUFJfUkVDVFMgKDB4Nzw8MTgpCisjZGVmaW5lIFBSX1BPTFlHT04gKDB4NCA8PCAxOCkKKyNkZWZpbmUgUFJfTElORVMgKDB4NSA8PCAxOCkKKyNkZWZpbmUgUFJfTElORVNUUklQICgweDYgPDwgMTgpCisjZGVmaW5lIFBSX1JFQ1RTICgweDcgPDwgMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQUl9NQVNLICgweDc8PDE4KQorI2RlZmluZSBQUl9NQVNLICgweDcgPDwgMTgpCiB0eXBlZGVmIHN0cnVjdCBkcm1faTgxMF9kbWEgewotIHZvaWQgKnZpcnR1YWw7Ci0gaW50IHJlcXVlc3RfaWR4OworICB2b2lkICogdmlydHVhbDsKKyAgaW50IHJlcXVlc3RfaWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcmVxdWVzdF9zaXplOwotIGludCBncmFudGVkOworICBpbnQgcmVxdWVzdF9zaXplOworICBpbnQgZ3JhbnRlZDsKIH0gZHJtX2k4MTBfZG1hX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfb3ZlcmxheV90IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG9mZnNldDsKLSB1bnNpZ25lZCBpbnQgcGh5c2ljYWw7CisgIHVuc2lnbmVkIGludCBvZmZzZXQ7CisgIHVuc2lnbmVkIGludCBwaHlzaWNhbDsKIH0gZHJtX2k4MTBfb3ZlcmxheV90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pODEwX21jIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlkeDsKLSBpbnQgdXNlZDsKLSBpbnQgbnVtX2Jsb2NrczsKLSBpbnQgKmxlbmd0aDsKKyAgaW50IGlkeDsKKyAgaW50IHVzZWQ7CisgIGludCBudW1fYmxvY2tzOworICBpbnQgKiBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsYXN0X3JlbmRlcjsKKyAgdW5zaWduZWQgaW50IGxhc3RfcmVuZGVyOwogfSBkcm1faTgxMF9tY190OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9pOTE1X2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vaTkxNV9kcm0uaAppbmRleCA3Yjk4MTBjLi4zZDE1ZmVjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2k5MTVfZHJtLmgKQEAgLTI3LDk2ICsyNyw5NiBAQAogI2RlZmluZSBJOTE1X0xPR19NSU5fVEVYX1JFR0lPTl9TSVpFIDE0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pOTE1X2luaXQgewotIGVudW0gewotIEk5MTVfSU5JVF9ETUEgPSAweDAxLAotIEk5MTVfQ0xFQU5VUF9ETUEgPSAweDAyLAorICBlbnVtIHsKKyAgICBJOTE1X0lOSVRfRE1BID0gMHgwMSwKKyAgICBJOTE1X0NMRUFOVVBfRE1BID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTkxNV9SRVNVTUVfRE1BID0gMHgwMwotIH0gZnVuYzsKLSB1bnNpZ25lZCBpbnQgbW1pb19vZmZzZXQ7Ci0gaW50IHNhcmVhX3ByaXZfb2Zmc2V0OworICAgIEk5MTVfUkVTVU1FX0RNQSA9IDB4MDMKKyAgfSBmdW5jOworICB1bnNpZ25lZCBpbnQgbW1pb19vZmZzZXQ7CisgIGludCBzYXJlYV9wcml2X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJpbmdfc3RhcnQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfZW5kOwotIHVuc2lnbmVkIGludCByaW5nX3NpemU7Ci0gdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKKyAgdW5zaWduZWQgaW50IHJpbmdfc3RhcnQ7CisgIHVuc2lnbmVkIGludCByaW5nX2VuZDsKKyAgdW5zaWduZWQgaW50IHJpbmdfc2l6ZTsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHc7Ci0gdW5zaWduZWQgaW50IGg7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHc7CisgIHVuc2lnbmVkIGludCBoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGl0Y2g7Ci0gdW5zaWduZWQgaW50IHBpdGNoX2JpdHM7Ci0gdW5zaWduZWQgaW50IGJhY2tfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGRlcHRoX3BpdGNoOworICB1bnNpZ25lZCBpbnQgcGl0Y2g7CisgIHVuc2lnbmVkIGludCBwaXRjaF9iaXRzOworICB1bnNpZ25lZCBpbnQgYmFja19waXRjaDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX3BpdGNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY3BwOwotIHVuc2lnbmVkIGludCBjaGlwc2V0OworICB1bnNpZ25lZCBpbnQgY3BwOworICB1bnNpZ25lZCBpbnQgY2hpcHNldDsKIH0gZHJtX2k5MTVfaW5pdF90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pOTE1X3NhcmVhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV90ZXhfcmVnaW9uIHRleExpc3RbSTkxNV9OUl9URVhfUkVHSU9OUyArIDFdOwotIGludCBsYXN0X3VwbG9hZDsKLSBpbnQgbGFzdF9lbnF1ZXVlOwotIGludCBsYXN0X2Rpc3BhdGNoOworICBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4TGlzdFtJOTE1X05SX1RFWF9SRUdJT05TICsgMV07CisgIGludCBsYXN0X3VwbG9hZDsKKyAgaW50IGxhc3RfZW5xdWV1ZTsKKyAgaW50IGxhc3RfZGlzcGF0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjdHhPd25lcjsKLSBpbnQgdGV4QWdlOwotIGludCBwZl9lbmFibGVkOwotIGludCBwZl9hY3RpdmU7CisgIGludCBjdHhPd25lcjsKKyAgaW50IHRleEFnZTsKKyAgaW50IHBmX2VuYWJsZWQ7CisgIGludCBwZl9hY3RpdmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwZl9jdXJyZW50X3BhZ2U7Ci0gaW50IHBlcmZfYm94ZXM7Ci0gaW50IHdpZHRoLCBoZWlnaHQ7Ci0gZHJtX2hhbmRsZV90IGZyb250X2hhbmRsZTsKKyAgaW50IHBmX2N1cnJlbnRfcGFnZTsKKyAgaW50IHBlcmZfYm94ZXM7CisgIGludCB3aWR0aCwgaGVpZ2h0OworICBkcm1faGFuZGxlX3QgZnJvbnRfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZnJvbnRfb2Zmc2V0OwotIGludCBmcm9udF9zaXplOwotIGRybV9oYW5kbGVfdCBiYWNrX2hhbmRsZTsKLSBpbnQgYmFja19vZmZzZXQ7CisgIGludCBmcm9udF9vZmZzZXQ7CisgIGludCBmcm9udF9zaXplOworICBkcm1faGFuZGxlX3QgYmFja19oYW5kbGU7CisgIGludCBiYWNrX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGJhY2tfc2l6ZTsKLSBkcm1faGFuZGxlX3QgZGVwdGhfaGFuZGxlOwotIGludCBkZXB0aF9vZmZzZXQ7Ci0gaW50IGRlcHRoX3NpemU7CisgIGludCBiYWNrX3NpemU7CisgIGRybV9oYW5kbGVfdCBkZXB0aF9oYW5kbGU7CisgIGludCBkZXB0aF9vZmZzZXQ7CisgIGludCBkZXB0aF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1faGFuZGxlX3QgdGV4X2hhbmRsZTsKLSBpbnQgdGV4X29mZnNldDsKLSBpbnQgdGV4X3NpemU7Ci0gaW50IGxvZ190ZXhfZ3JhbnVsYXJpdHk7CisgIGRybV9oYW5kbGVfdCB0ZXhfaGFuZGxlOworICBpbnQgdGV4X29mZnNldDsKKyAgaW50IHRleF9zaXplOworICBpbnQgbG9nX3RleF9ncmFudWxhcml0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBpdGNoOwotIGludCByb3RhdGlvbjsKLSBpbnQgcm90YXRlZF9vZmZzZXQ7Ci0gaW50IHJvdGF0ZWRfc2l6ZTsKKyAgaW50IHBpdGNoOworICBpbnQgcm90YXRpb247CisgIGludCByb3RhdGVkX29mZnNldDsKKyAgaW50IHJvdGF0ZWRfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJvdGF0ZWRfcGl0Y2g7Ci0gaW50IHZpcnR1YWxYLCB2aXJ0dWFsWTsKLSB1bnNpZ25lZCBpbnQgZnJvbnRfdGlsZWQ7Ci0gdW5zaWduZWQgaW50IGJhY2tfdGlsZWQ7CisgIGludCByb3RhdGVkX3BpdGNoOworICBpbnQgdmlydHVhbFgsIHZpcnR1YWxZOworICB1bnNpZ25lZCBpbnQgZnJvbnRfdGlsZWQ7CisgIHVuc2lnbmVkIGludCBiYWNrX3RpbGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGVwdGhfdGlsZWQ7Ci0gdW5zaWduZWQgaW50IHJvdGF0ZWRfdGlsZWQ7Ci0gdW5zaWduZWQgaW50IHJvdGF0ZWQyX3RpbGVkOwotIGludCBwaXBlQV94OworICB1bnNpZ25lZCBpbnQgZGVwdGhfdGlsZWQ7CisgIHVuc2lnbmVkIGludCByb3RhdGVkX3RpbGVkOworICB1bnNpZ25lZCBpbnQgcm90YXRlZDJfdGlsZWQ7CisgIGludCBwaXBlQV94OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGlwZUFfeTsKLSBpbnQgcGlwZUFfdzsKLSBpbnQgcGlwZUFfaDsKLSBpbnQgcGlwZUJfeDsKKyAgaW50IHBpcGVBX3k7CisgIGludCBwaXBlQV93OworICBpbnQgcGlwZUFfaDsKKyAgaW50IHBpcGVCX3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwaXBlQl95OwotIGludCBwaXBlQl93OwotIGludCBwaXBlQl9oOwotIGRybV9oYW5kbGVfdCB1bnVzZWRfaGFuZGxlOworICBpbnQgcGlwZUJfeTsKKyAgaW50IHBpcGVCX3c7CisgIGludCBwaXBlQl9oOworICBkcm1faGFuZGxlX3QgdW51c2VkX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdW51c2VkMSwgdW51c2VkMiwgdW51c2VkMzsKLSBfX3UzMiBmcm9udF9ib19oYW5kbGU7Ci0gX191MzIgYmFja19ib19oYW5kbGU7Ci0gX191MzIgdW51c2VkX2JvX2hhbmRsZTsKKyAgX191MzIgdW51c2VkMSwgdW51c2VkMiwgdW51c2VkMzsKKyAgX191MzIgZnJvbnRfYm9faGFuZGxlOworICBfX3UzMiBiYWNrX2JvX2hhbmRsZTsKKyAgX191MzIgdW51c2VkX2JvX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGVwdGhfYm9faGFuZGxlOworICBfX3UzMiBkZXB0aF9ib19oYW5kbGU7CiB9IGRybV9pOTE1X3NhcmVhX3Q7CiAjZGVmaW5lIHBsYW5lQV94IHBpcGVBX3gKICNkZWZpbmUgcGxhbmVBX3kgcGlwZUFfeQpAQCAtMTk2LDUxNSArMTk2LDUyOSBAQAogI2RlZmluZSBEUk1fSTkxNV9SRUdfUkVBRCAweDMxCiAjZGVmaW5lIERSTV9JOTE1X0dFVF9SRVNFVF9TVEFUUyAweDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JTklULCBkcm1faTkxNV9pbml0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0ZMVVNIIERSTV9JTyAoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9GTFVTSCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfRkxJUCBEUk1fSU8gKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfRkxJUCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfQkFUQ0hCVUZGRVIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0JBVENIQlVGRkVSLCBkcm1faTkxNV9iYXRjaGJ1ZmZlcl90KQorI2RlZmluZSBEUk1fSTkxNV9HRU1fVVNFUlBUUiAweDMzCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfSU5JVCwgZHJtX2k5MTVfaW5pdF90KQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9GTFVTSCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0ZMVVNIKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9GTElQIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfRkxJUCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0JBVENIQlVGRkVSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0JBVENIQlVGRkVSLCBkcm1faTkxNV9iYXRjaGJ1ZmZlcl90KQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9JUlFfRU1JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfSVJRX0VNSVQsIGRybV9pOTE1X2lycV9lbWl0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lSUV9XQUlUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JUlFfV0FJVCwgZHJtX2k5MTVfaXJxX3dhaXRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfSVJRX1dBSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfSVJRX1dBSVQsIGRybV9pOTE1X2lycV93YWl0X3QpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVFBBUkFNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRQQVJBTSwgZHJtX2k5MTVfZ2V0cGFyYW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfU0VUUEFSQU0gRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1NFVFBBUkFNLCBkcm1faTkxNV9zZXRwYXJhbV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfU0VUUEFSQU0gRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfU0VUUEFSQU0sIGRybV9pOTE1X3NldHBhcmFtX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0FMTE9DIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9BTExPQywgZHJtX2k5MTVfbWVtX2FsbG9jX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0ZSRUUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0ZSRUUsIGRybV9pOTE1X21lbV9mcmVlX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVRfSEVBUCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfSU5JVF9IRUFQLCBkcm1faTkxNV9tZW1faW5pdF9oZWFwX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0NNREJVRkZFUiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfQ01EQlVGRkVSLCBkcm1faTkxNV9jbWRidWZmZXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfRlJFRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9GUkVFLCBkcm1faTkxNV9tZW1fZnJlZV90KQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9JTklUX0hFQVAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfSU5JVF9IRUFQLCBkcm1faTkxNV9tZW1faW5pdF9oZWFwX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9ERVNUUk9ZX0hFQVAgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0RFU1RST1lfSEVBUCwgZHJtX2k5MTVfbWVtX2Rlc3Ryb3lfaGVhcF90KQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9TRVRfVkJMQU5LX1BJUEUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1NFVF9WQkxBTktfUElQRSwgZHJtX2k5MTVfdmJsYW5rX3BpcGVfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUX1ZCTEFOS19QSVBFIERSTV9JT1IoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRfVkJMQU5LX1BJUEUsIGRybV9pOTE1X3ZibGFua19waXBlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0NNREJVRkZFUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9DTURCVUZGRVIsIGRybV9pOTE1X2NtZGJ1ZmZlcl90KQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9ERVNUUk9ZX0hFQVAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfREVTVFJPWV9IRUFQLCBkcm1faTkxNV9tZW1fZGVzdHJveV9oZWFwX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X1NFVF9WQkxBTktfUElQRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9TRVRfVkJMQU5LX1BJUEUsIGRybV9pOTE1X3ZibGFua19waXBlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVF9WQkxBTktfUElQRSBEUk1fSU9SKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRfVkJMQU5LX1BJUEUsIGRybV9pOTE1X3ZibGFua19waXBlX3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9WQkxBTktfU1dBUCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfVkJMQU5LX1NXQVAsIGRybV9pOTE1X3ZibGFua19zd2FwX3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9IV1NfQUREUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9IV1NfQUREUiwgc3RydWN0IGRybV9pOTE1X2dlbV9pbml0KQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fSU5JVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fSU5JVCwgc3RydWN0IGRybV9pOTE1X2dlbV9pbml0KQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fRVhFQ0JVRkZFUiwgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMikKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1BJTiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1BJTiwgc3RydWN0IGRybV9pOTE1X2dlbV9waW4pCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9VTlBJTiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fVU5QSU4sIHN0cnVjdCBkcm1faTkxNV9nZW1fdW5waW4pCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9CVVNZIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fQlVTWSwgc3RydWN0IGRybV9pOTE1X2dlbV9idXN5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1NFVF9DQUNISU5HIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9TRVRfQ0FDSElORywgc3RydWN0IGRybV9pOTE1X2dlbV9jYWNoaW5nKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0dFVF9DQUNISU5HIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fR0VUX0NBQ0hJTkcsIHN0cnVjdCBkcm1faTkxNV9nZW1fY2FjaGluZykKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1RIUk9UVExFIERSTV9JTyAoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fVEhST1RUTEUpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9USFJPVFRMRSBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9USFJPVFRMRSkKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0VOVEVSVlQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fRU5URVJWVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9MRUFWRVZUIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0xFQVZFVlQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fQ1JFQVRFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fQ1JFQVRFLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1BSRUFEIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fUFJFQUQsIHN0cnVjdCBkcm1faTkxNV9nZW1fcHJlYWQpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9QV1JJVEUgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9QV1JJVEUsIHN0cnVjdCBkcm1faTkxNV9nZW1fcHdyaXRlKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fUFJFQUQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1BSRUFELCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3ByZWFkKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fUFdSSVRFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9QV1JJVEUsIHN0cnVjdCBkcm1faTkxNV9nZW1fcHdyaXRlKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX01NQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9NTUFQLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21tYXApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fTU1BUF9HVFQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9NTUFQX0dUVCwgc3RydWN0IGRybV9pOTE1X2dlbV9tbWFwX2d0dCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1NFVF9ET01BSU4gRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9TRVRfRE9NQUlOLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3NldF9kb21haW4pCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9TV19GSU5JU0ggRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9TV19GSU5JU0gsIHN0cnVjdCBkcm1faTkxNV9nZW1fc3dfZmluaXNoKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fU0VUX1RJTElORyBEUk1fSU9XUiAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9TRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3NldF90aWxpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9TRVRfRE9NQUlOIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9TRVRfRE9NQUlOLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3NldF9kb21haW4pCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9TV19GSU5JU0ggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NXX0ZJTklTSCwgc3RydWN0IGRybV9pOTE1X2dlbV9zd19maW5pc2gpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fR0VUX1RJTElORyBEUk1fSU9XUiAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9HRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2dldF90aWxpbmcpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfQVBFUlRVUkUgRFJNX0lPUiAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9HRVRfQVBFUlRVUkUsIHN0cnVjdCBkcm1faTkxNV9nZW1fZ2V0X2FwZXJ0dXJlKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fU0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NFVF9USUxJTkcsIHN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X3RpbGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0dFVF9USUxJTkcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9HRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2dldF90aWxpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfQVBFUlRVUkUgRFJNX0lPUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0dFVF9BUEVSVFVSRSwgc3RydWN0IGRybV9pOTE1X2dlbV9nZXRfYXBlcnR1cmUpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVF9QSVBFX0ZST01fQ1JUQ19JRCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VUX1BJUEVfRlJPTV9DUlRDX0lELCBzdHJ1Y3QgZHJtX2k5MTVfZ2V0X3BpcGVfZnJvbV9jcnRjX2lkKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fTUFEVklTRSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX01BRFZJU0UsIHN0cnVjdCBkcm1faTkxNV9nZW1fbWFkdmlzZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9NQURWSVNFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fTUFEVklTRSwgc3RydWN0IGRybV9pOTE1X2dlbV9tYWR2aXNlKQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9PVkVSTEFZX1BVVF9JTUFHRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9PVkVSTEFZX1BVVF9JTUFHRSwgc3RydWN0IGRybV9pbnRlbF9vdmVybGF5X3B1dF9pbWFnZSkKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfT1ZFUkxBWV9BVFRSUyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfT1ZFUkxBWV9BVFRSUywgc3RydWN0IGRybV9pbnRlbF9vdmVybGF5X2F0dHJzKQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9TRVRfU1BSSVRFX0NPTE9SS0VZIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9TRVRfU1BSSVRFX0NPTE9SS0VZLCBzdHJ1Y3QgZHJtX2ludGVsX3Nwcml0ZV9jb2xvcmtleSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVF9TUFJJVEVfQ09MT1JLRVkgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1NFVF9TUFJJVEVfQ09MT1JLRVksIHN0cnVjdCBkcm1faW50ZWxfc3ByaXRlX2NvbG9ya2V5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1dBSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9XQUlULCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3dhaXQpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9DT05URVhUX0NSRUFURSBEUk1fSU9XUiAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9DT05URVhUX0NSRUFURSwgc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2NyZWF0ZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0NPTlRFWFRfREVTVFJPWSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0NPTlRFWFRfREVTVFJPWSwgc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2Rlc3Ryb3kpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X1JFR19SRUFEIERSTV9JT1dSIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfUkVHX1JFQUQsIHN0cnVjdCBkcm1faTkxNV9yZWdfcmVhZCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0NPTlRFWFRfQ1JFQVRFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fQ09OVEVYVF9DUkVBVEUsIHN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9jcmVhdGUpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9DT05URVhUX0RFU1RST1kgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0NPTlRFWFRfREVTVFJPWSwgc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2Rlc3Ryb3kpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRVRfUkVTRVRfU1RBVFMgRFJNX0lPV1IgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRfUkVTRVRfU1RBVFMsIHN0cnVjdCBkcm1faTkxNV9yZXNldF9zdGF0cykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfUkVHX1JFQUQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1JFR19SRUFELCBzdHJ1Y3QgZHJtX2k5MTVfcmVnX3JlYWQpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVF9SRVNFVF9TVEFUUyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VUX1JFU0VUX1NUQVRTLCBzdHJ1Y3QgZHJtX2k5MTVfcmVzZXRfc3RhdHMpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9VU0VSUFRSIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fVVNFUlBUUiwgc3RydWN0IGRybV9pOTE1X2dlbV91c2VycHRyKQogdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfYmF0Y2hidWZmZXIgewotIGludCBzdGFydDsKLSBpbnQgdXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IERSMTsKLSBpbnQgRFI0OwotIGludCBudW1fY2xpcHJlY3RzOwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IF9fdXNlciAqY2xpcHJlY3RzOworICBpbnQgc3RhcnQ7CisgIGludCB1c2VkOworICBpbnQgRFIxOworICBpbnQgRFI0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IG51bV9jbGlwcmVjdHM7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IF9fdXNlciAqIGNsaXByZWN0czsKIH0gZHJtX2k5MTVfYmF0Y2hidWZmZXJfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1faTkxNV9jbWRidWZmZXIgewotIGNoYXIgX191c2VyICpidWY7Ci0gaW50IHN6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgRFIxOwotIGludCBEUjQ7Ci0gaW50IG51bV9jbGlwcmVjdHM7Ci0gc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICpjbGlwcmVjdHM7CisgIGNoYXIgX191c2VyICogYnVmOworICBpbnQgc3o7CisgIGludCBEUjE7CisgIGludCBEUjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgbnVtX2NsaXByZWN0czsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICogY2xpcHJlY3RzOwogfSBkcm1faTkxNV9jbWRidWZmZXJfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X2lycV9lbWl0IHsKLSBpbnQgX191c2VyICppcnFfc2VxOwotfSBkcm1faTkxNV9pcnFfZW1pdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IF9fdXNlciAqIGlycV9zZXE7Cit9IGRybV9pOTE1X2lycV9lbWl0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9pcnFfd2FpdCB7Ci0gaW50IGlycV9zZXE7CisgIGludCBpcnFfc2VxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX2k5MTVfaXJxX3dhaXRfdDsKICNkZWZpbmUgSTkxNV9QQVJBTV9JUlFfQUNUSVZFIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fQUxMT1dfQkFUQ0hCVUZGRVIgMgogI2RlZmluZSBJOTE1X1BBUkFNX0xBU1RfRElTUEFUQ0ggMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9DSElQU0VUX0lEIDQKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfR0VNIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fTlVNX0ZFTkNFU19BVkFJTCA2CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX09WRVJMQVkgNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfUEFHRUZMSVBQSU5HIDgKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfRVhFQ0JVRjIgOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfQlNEIDEwCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0JMVCAxMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfUkVMQVhFRF9GRU5DSU5HIDEyCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0NPSEVSRU5UX1JJTkdTIDEzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19FWEVDX0NPTlNUQU5UUyAxNAogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19SRUxBWEVEX0RFTFRBIDE1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19HRU43X1NPTF9SRVNFVCAxNgogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19MTEMgMTcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0FMSUFTSU5HX1BQR1RUIDE4CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1dBSVRfVElNRU9VVCAxOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfU0VNQVBIT1JFUyAyMAogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19QUklNRV9WTUFQX0ZMVVNIIDIxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19WRUJPWCAyMgogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19TRUNVUkVfQkFUQ0hFUyAyMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfUElOTkVEX0JBVENIRVMgMjQKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfRVhFQ19OT19SRUxPQyAyNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfRVhFQ19IQU5ETEVfTFVUIDI2CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1dUIDI3Ci10eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9nZXRwYXJhbSB7Ci0gaW50IHBhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX191c2VyICp2YWx1ZTsKKyNkZWZpbmUgSTkxNV9QQVJBTV9DTURfUEFSU0VSX1ZFUlNJT04gMjgKK3R5cGVkZWYgc3RydWN0IGRybV9pOTE1X2dldHBhcmFtIHsKKyAgaW50IHBhcmFtOworICBpbnQgX191c2VyICogdmFsdWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1faTkxNV9nZXRwYXJhbV90OwogI2RlZmluZSBJOTE1X1NFVFBBUkFNX1VTRV9NSV9CQVRDSEJVRkZFUl9TVEFSVCAxCiAjZGVmaW5lIEk5MTVfU0VUUEFSQU1fVEVYX0xSVV9MT0dfR1JBTlVMQVJJVFkgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9TRVRQQVJBTV9BTExPV19CQVRDSEJVRkZFUiAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1NFVFBBUkFNX05VTV9VU0VEX0ZFTkNFUyA0CiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9zZXRwYXJhbSB7Ci0gaW50IHBhcmFtOworICBpbnQgcGFyYW07CisgIGludCB2YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHZhbHVlOwogfSBkcm1faTkxNV9zZXRwYXJhbV90OwogI2RlZmluZSBJOTE1X01FTV9SRUdJT05fQUdQIDEKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X21lbV9hbGxvYyB7CisgIGludCByZWdpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZWdpb247Ci0gaW50IGFsaWdubWVudDsKLSBpbnQgc2l6ZTsKLSBpbnQgX191c2VyICpyZWdpb25fb2Zmc2V0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGFsaWdubWVudDsKKyAgaW50IHNpemU7CisgIGludCBfX3VzZXIgKiByZWdpb25fb2Zmc2V0OwogfSBkcm1faTkxNV9tZW1fYWxsb2NfdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9tZW1fZnJlZSB7Ci0gaW50IHJlZ2lvbjsKLSBpbnQgcmVnaW9uX29mZnNldDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCByZWdpb247CisgIGludCByZWdpb25fb2Zmc2V0OwogfSBkcm1faTkxNV9tZW1fZnJlZV90OwotdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfbWVtX2luaXRfaGVhcCB7Ci0gaW50IHJlZ2lvbjsKLSBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0YXJ0OwordHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfbWVtX2luaXRfaGVhcCB7CisgIGludCByZWdpb247CisgIGludCBzaXplOworICBpbnQgc3RhcnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1faTkxNV9tZW1faW5pdF9oZWFwX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9tZW1fZGVzdHJveV9oZWFwIHsKLSBpbnQgcmVnaW9uOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHJlZ2lvbjsKIH0gZHJtX2k5MTVfbWVtX2Rlc3Ryb3lfaGVhcF90OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0k5MTVfVkJMQU5LX1BJUEVfQSAxCiAjZGVmaW5lIERSTV9JOTE1X1ZCTEFOS19QSVBFX0IgMgogdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfdmJsYW5rX3BpcGUgeworICBpbnQgcGlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBpcGU7CiB9IGRybV9pOTE1X3ZibGFua19waXBlX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV92Ymxhbmtfc3dhcCB7Ci0gZHJtX2RyYXdhYmxlX3QgZHJhd2FibGU7CisgIGRybV9kcmF3YWJsZV90IGRyYXdhYmxlOworICBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgc2VxdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZW51bSBkcm1fdmJsYW5rX3NlcV90eXBlIHNlcXR5cGU7Ci0gdW5zaWduZWQgaW50IHNlcXVlbmNlOworICB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7CiB9IGRybV9pOTE1X3ZibGFua19zd2FwX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9od3NfYWRkciB7CisgIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFkZHI7CiB9IGRybV9pOTE1X2h3c19hZGRyX3Q7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2luaXQgewotIF9fdTY0IGd0dF9zdGFydDsKKyAgX191NjQgZ3R0X3N0YXJ0OworICBfX3U2NCBndHRfZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBndHRfZW5kOwogfTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlIHsKLSBfX3U2NCBzaXplOworICBfX3U2NCBzaXplOworICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIHBhZDsKIH07CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3ByZWFkIHsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcGFkOwotIF9fdTY0IG9mZnNldDsKLSBfX3U2NCBzaXplOworICBfX3UzMiBwYWQ7CisgIF9fdTY0IG9mZnNldDsKKyAgX191NjQgc2l6ZTsKKyAgX191NjQgZGF0YV9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGFfcHRyOwogfTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fcHdyaXRlIHsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWQ7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTY0IHNpemU7Ci0gX191NjQgZGF0YV9wdHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBvZmZzZXQ7CisgIF9fdTY0IHNpemU7CisgIF9fdTY0IGRhdGFfcHRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21tYXAgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcGFkOworICBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9mZnNldDsKLSBfX3U2NCBzaXplOwotIF9fdTY0IGFkZHJfcHRyOworICBfX3U2NCBzaXplOworICBfX3U2NCBhZGRyX3B0cjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9tbWFwX2d0dCB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHBhZDsKLSBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHBhZDsKKyAgX191NjQgb2Zmc2V0OwogfTsKLXN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X2RvbWFpbiB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHJlYWRfZG9tYWluczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd3JpdGVfZG9tYWluOworc3RydWN0IGRybV9pOTE1X2dlbV9zZXRfZG9tYWluIHsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiByZWFkX2RvbWFpbnM7CisgIF9fdTMyIHdyaXRlX2RvbWFpbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9zd19maW5pc2ggewotIF9fdTMyIGhhbmRsZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9yZWxvY2F0aW9uX2VudHJ5IHsKLSBfX3UzMiB0YXJnZXRfaGFuZGxlOwotIF9fdTMyIGRlbHRhOworICBfX3UzMiB0YXJnZXRfaGFuZGxlOworICBfX3UzMiBkZWx0YTsKKyAgX191NjQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBvZmZzZXQ7Ci0gX191NjQgcHJlc3VtZWRfb2Zmc2V0OwotIF9fdTMyIHJlYWRfZG9tYWluczsKLSBfX3UzMiB3cml0ZV9kb21haW47Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBwcmVzdW1lZF9vZmZzZXQ7CisgIF9fdTMyIHJlYWRfZG9tYWluczsKKyAgX191MzIgd3JpdGVfZG9tYWluOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfR0VNX0RPTUFJTl9DUFUgMHgwMDAwMDAwMQogI2RlZmluZSBJOTE1X0dFTV9ET01BSU5fUkVOREVSIDB4MDAwMDAwMDIKICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX1NBTVBMRVIgMHgwMDAwMDAwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQgMHgwMDAwMDAwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX0lOU1RSVUNUSU9OIDB4MDAwMDAwMTAKICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX1ZFUlRFWCAweDAwMDAwMDIwCiAjZGVmaW5lIEk5MTVfR0VNX0RPTUFJTl9HVFQgMHgwMDAwMDA0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY19vYmplY3QgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiByZWxvY2F0aW9uX2NvdW50OwotIF9fdTY0IHJlbG9jc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFsaWdubWVudDsKLSBfX3U2NCBvZmZzZXQ7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcmVsb2NhdGlvbl9jb3VudDsKKyAgX191NjQgcmVsb2NzX3B0cjsKKyAgX191NjQgYWxpZ25tZW50OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgb2Zmc2V0OwogfTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlciB7CisgIF9fdTY0IGJ1ZmZlcnNfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBidWZmZXJzX3B0cjsKLSBfX3UzMiBidWZmZXJfY291bnQ7Ci0gX191MzIgYmF0Y2hfc3RhcnRfb2Zmc2V0OwotIF9fdTMyIGJhdGNoX2xlbjsKKyAgX191MzIgYnVmZmVyX2NvdW50OworICBfX3UzMiBiYXRjaF9zdGFydF9vZmZzZXQ7CisgIF9fdTMyIGJhdGNoX2xlbjsKKyAgX191MzIgRFIxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBEUjE7Ci0gX191MzIgRFI0OwotIF9fdTMyIG51bV9jbGlwcmVjdHM7Ci0gX191NjQgY2xpcHJlY3RzX3B0cjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIERSNDsKKyAgX191MzIgbnVtX2NsaXByZWN0czsKKyAgX191NjQgY2xpcHJlY3RzX3B0cjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiByZWxvY2F0aW9uX2NvdW50OworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHJlbG9jYXRpb25fY291bnQ7CisgIF9fdTY0IHJlbG9jc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlbG9jc19wdHI7Ci0gX191NjQgYWxpZ25tZW50OwotIF9fdTY0IG9mZnNldDsKLSNkZWZpbmUgRVhFQ19PQkpFQ1RfTkVFRFNfRkVOQ0UgKDE8PDApCisgIF9fdTY0IGFsaWdubWVudDsKKyAgX191NjQgb2Zmc2V0OworI2RlZmluZSBFWEVDX09CSkVDVF9ORUVEU19GRU5DRSAoMSA8PCAwKQorI2RlZmluZSBFWEVDX09CSkVDVF9ORUVEU19HVFQgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVYRUNfT0JKRUNUX05FRURTX0dUVCAoMTw8MSkKLSNkZWZpbmUgRVhFQ19PQkpFQ1RfV1JJVEUgKDE8PDIpCi0jZGVmaW5lIF9fRVhFQ19PQkpFQ1RfVU5LTk9XTl9GTEFHUyAtKEVYRUNfT0JKRUNUX1dSSVRFPDwxKQotIF9fdTY0IGZsYWdzOworI2RlZmluZSBFWEVDX09CSkVDVF9XUklURSAoMSA8PCAyKQorI2RlZmluZSBfX0VYRUNfT0JKRUNUX1VOS05PV05fRkxBR1MgLSAoRVhFQ19PQkpFQ1RfV1JJVEUgPDwgMSkKKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHJzdmQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByc3ZkMTsKLSBfX3U2NCByc3ZkMjsKKyAgX191NjQgcnN2ZDI7CiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiB7CisgIF9fdTY0IGJ1ZmZlcnNfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBidWZmZXJzX3B0cjsKLSBfX3UzMiBidWZmZXJfY291bnQ7Ci0gX191MzIgYmF0Y2hfc3RhcnRfb2Zmc2V0OwotIF9fdTMyIGJhdGNoX2xlbjsKKyAgX191MzIgYnVmZmVyX2NvdW50OworICBfX3UzMiBiYXRjaF9zdGFydF9vZmZzZXQ7CisgIF9fdTMyIGJhdGNoX2xlbjsKKyAgX191MzIgRFIxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBEUjE7Ci0gX191MzIgRFI0OwotIF9fdTMyIG51bV9jbGlwcmVjdHM7Ci0gX191NjQgY2xpcHJlY3RzX3B0cjsKKyAgX191MzIgRFI0OworICBfX3UzMiBudW1fY2xpcHJlY3RzOworICBfX3U2NCBjbGlwcmVjdHNfcHRyOworI2RlZmluZSBJOTE1X0VYRUNfUklOR19NQVNLICg3IDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJOTE1X0VYRUNfUklOR19NQVNLICg3PDwwKQotI2RlZmluZSBJOTE1X0VYRUNfREVGQVVMVCAoMDw8MCkKLSNkZWZpbmUgSTkxNV9FWEVDX1JFTkRFUiAoMTw8MCkKLSNkZWZpbmUgSTkxNV9FWEVDX0JTRCAoMjw8MCkKKyNkZWZpbmUgSTkxNV9FWEVDX0RFRkFVTFQgKDAgPDwgMCkKKyNkZWZpbmUgSTkxNV9FWEVDX1JFTkRFUiAoMSA8PCAwKQorI2RlZmluZSBJOTE1X0VYRUNfQlNEICgyIDw8IDApCisjZGVmaW5lIEk5MTVfRVhFQ19CTFQgKDMgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk5MTVfRVhFQ19CTFQgKDM8PDApCi0jZGVmaW5lIEk5MTVfRVhFQ19WRUJPWCAoNDw8MCkKLSNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19NQVNLICgzPDw2KQotI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9HRU5FUkFMICgwPDw2KQorI2RlZmluZSBJOTE1X0VYRUNfVkVCT1ggKDQgPDwgMCkKKyNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19NQVNLICgzIDw8IDYpCisjZGVmaW5lIEk5MTVfRVhFQ19DT05TVEFOVFNfUkVMX0dFTkVSQUwgKDAgPDwgNikKKyNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19BQlNPTFVURSAoMSA8PCA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19BQlNPTFVURSAoMTw8NikKLSNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19SRUxfU1VSRkFDRSAoMjw8NikKLSBfX3U2NCBmbGFnczsKLSBfX3U2NCByc3ZkMTsKKyNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19SRUxfU1VSRkFDRSAoMiA8PCA2KQorICBfX3U2NCBmbGFnczsKKyAgX191NjQgcnN2ZDE7CisgIF9fdTY0IHJzdmQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByc3ZkMjsKIH07Ci0jZGVmaW5lIEk5MTVfRVhFQ19HRU43X1NPTF9SRVNFVCAoMTw8OCkKLSNkZWZpbmUgSTkxNV9FWEVDX1NFQ1VSRSAoMTw8OSkKKyNkZWZpbmUgSTkxNV9FWEVDX0dFTjdfU09MX1JFU0VUICgxIDw8IDgpCisjZGVmaW5lIEk5MTVfRVhFQ19TRUNVUkUgKDEgPDwgOSkKKyNkZWZpbmUgSTkxNV9FWEVDX0lTX1BJTk5FRCAoMSA8PCAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk5MTVfRVhFQ19JU19QSU5ORUQgKDE8PDEwKQotI2RlZmluZSBJOTE1X0VYRUNfTk9fUkVMT0MgKDE8PDExKQotI2RlZmluZSBJOTE1X0VYRUNfSEFORExFX0xVVCAoMTw8MTIpCi0jZGVmaW5lIF9fSTkxNV9FWEVDX1VOS05PV05fRkxBR1MgLShJOTE1X0VYRUNfSEFORExFX0xVVDw8MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEk5MTVfRVhFQ19OT19SRUxPQyAoMSA8PCAxMSkKKyNkZWZpbmUgSTkxNV9FWEVDX0hBTkRMRV9MVVQgKDEgPDwgMTIpCisjZGVmaW5lIF9fSTkxNV9FWEVDX1VOS05PV05fRkxBR1MgLSAoSTkxNV9FWEVDX0hBTkRMRV9MVVQgPDwgMSkKICNkZWZpbmUgSTkxNV9FWEVDX0NPTlRFWFRfSURfTUFTSyAoMHhmZmZmZmZmZikKLSNkZWZpbmUgaTkxNV9leGVjYnVmZmVyMl9zZXRfY29udGV4dF9pZChlYjIsIGNvbnRleHQpICAgKGViMikucnN2ZDEgPSBjb250ZXh0ICYgSTkxNV9FWEVDX0NPTlRFWFRfSURfTUFTSwotI2RlZmluZSBpOTE1X2V4ZWNidWZmZXIyX2dldF9jb250ZXh0X2lkKGViMikgICAoKGViMikucnN2ZDEgJiBJOTE1X0VYRUNfQ09OVEVYVF9JRF9NQVNLKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgaTkxNV9leGVjYnVmZmVyMl9zZXRfY29udGV4dF9pZChlYjIsY29udGV4dCkgKGViMikucnN2ZDEgPSBjb250ZXh0ICYgSTkxNV9FWEVDX0NPTlRFWFRfSURfTUFTSworI2RlZmluZSBpOTE1X2V4ZWNidWZmZXIyX2dldF9jb250ZXh0X2lkKGViMikgKChlYjIpLnJzdmQxICYgSTkxNV9FWEVDX0NPTlRFWFRfSURfTUFTSykKIHN0cnVjdCBkcm1faTkxNV9nZW1fcGluIHsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcGFkOwotIF9fdTY0IGFsaWdubWVudDsKLSBfX3U2NCBvZmZzZXQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBwYWQ7CisgIF9fdTY0IGFsaWdubWVudDsKKyAgX191NjQgb2Zmc2V0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3VucGluIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcGFkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBwYWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fYnVzeSB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIGJ1c3k7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGJ1c3k7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9DQUNISU5HX05PTkUgMAogI2RlZmluZSBJOTE1X0NBQ0hJTkdfQ0FDSEVEIDEKICNkZWZpbmUgSTkxNV9DQUNISU5HX0RJU1BMQVkgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fY2FjaGluZyB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIGNhY2hpbmc7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBjYWNoaW5nOworfTsKICNkZWZpbmUgSTkxNV9USUxJTkdfTk9ORSAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1RJTElOR19YIDEKICNkZWZpbmUgSTkxNV9USUxJTkdfWSAyCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV9OT05FIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV85IDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV85XzEwIDIKICNkZWZpbmUgSTkxNV9CSVRfNl9TV0laWkxFXzlfMTEgMwogI2RlZmluZSBJOTE1X0JJVF82X1NXSVpaTEVfOV8xMF8xMSA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X0JJVF82X1NXSVpaTEVfVU5LTk9XTiA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X0JJVF82X1NXSVpaTEVfOV8xNyA2CiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV85XzEwXzE3IDcKIHN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X3RpbGluZyB7CisgIF9fdTMyIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOwotIF9fdTMyIHRpbGluZ19tb2RlOwotIF9fdTMyIHN0cmlkZTsKLSBfX3UzMiBzd2l6emxlX21vZGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0aWxpbmdfbW9kZTsKKyAgX191MzIgc3RyaWRlOworICBfX3UzMiBzd2l6emxlX21vZGU7CiB9Owotc3RydWN0IGRybV9pOTE1X2dlbV9nZXRfdGlsaW5nIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgdGlsaW5nX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN3aXp6bGVfbW9kZTsKK3N0cnVjdCBkcm1faTkxNV9nZW1fZ2V0X3RpbGluZyB7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgdGlsaW5nX21vZGU7CisgIF9fdTMyIHN3aXp6bGVfbW9kZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9nZXRfYXBlcnR1cmUgewotIF9fdTY0IGFwZXJfc2l6ZTsKKyAgX191NjQgYXBlcl9zaXplOworICBfX3U2NCBhcGVyX2F2YWlsYWJsZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhcGVyX2F2YWlsYWJsZV9zaXplOwogfTsKIHN0cnVjdCBkcm1faTkxNV9nZXRfcGlwZV9mcm9tX2NydGNfaWQgewotIF9fdTMyIGNydGNfaWQ7CisgIF9fdTMyIGNydGNfaWQ7CisgIF9fdTMyIHBpcGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBpcGU7CiB9OwogI2RlZmluZSBJOTE1X01BRFZfV0lMTE5FRUQgMAogI2RlZmluZSBJOTE1X01BRFZfRE9OVE5FRUQgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19JOTE1X01BRFZfUFVSR0VEIDIKLXN0cnVjdCBkcm1faTkxNV9nZW1fbWFkdmlzZSB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIG1hZHY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldGFpbmVkOworc3RydWN0IGRybV9pOTE1X2dlbV9tYWR2aXNlIHsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBtYWR2OworICBfX3UzMiByZXRhaW5lZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJOTE1X09WRVJMQVlfVFlQRV9NQVNLIDB4ZmYKICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lVVl9QTEFOQVIgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lVVl9QQUNLRUQgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX1JHQiAweDAzCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9ERVBUSF9NQVNLIDB4ZmYwMAogI2RlZmluZSBJOTE1X09WRVJMQVlfUkdCMjQgMHgxMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfUkdCMTYgMHgyMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfUkdCMTUgMHgzMDAwCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9ZVVY0MjIgMHgwMTAwCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9ZVVY0MTEgMHgwMjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfWVVWNDIwIDB4MDMwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lVVjQxMCAweDA0MDAKICNkZWZpbmUgSTkxNV9PVkVSTEFZX1NXQVBfTUFTSyAweGZmMDAwMAogI2RlZmluZSBJOTE1X09WRVJMQVlfTk9fU1dBUCAweDAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX1VWX1NXQVAgMHgwMTAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9ZX1NXQVAgMHgwMjAwMDAKICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lfQU5EX1VWX1NXQVAgMHgwMzAwMDAKICNkZWZpbmUgSTkxNV9PVkVSTEFZX0ZMQUdTX01BU0sgMHhmZjAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX0VOQUJMRSAweDAxMDAwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pbnRlbF9vdmVybGF5X3B1dF9pbWFnZSB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgYm9faGFuZGxlOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgYm9faGFuZGxlOworICBfX3UxNiBzdHJpZGVfWTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3RyaWRlX1k7Ci0gX191MTYgc3RyaWRlX1VWOwotIF9fdTMyIG9mZnNldF9ZOwotIF9fdTMyIG9mZnNldF9VOworICBfX3UxNiBzdHJpZGVfVVY7CisgIF9fdTMyIG9mZnNldF9ZOworICBfX3UzMiBvZmZzZXRfVTsKKyAgX191MzIgb2Zmc2V0X1Y7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mZnNldF9WOwotIF9fdTE2IHNyY193aWR0aDsKLSBfX3UxNiBzcmNfaGVpZ2h0OwotIF9fdTE2IHNyY19zY2FuX3dpZHRoOworICBfX3UxNiBzcmNfd2lkdGg7CisgIF9fdTE2IHNyY19oZWlnaHQ7CisgIF9fdTE2IHNyY19zY2FuX3dpZHRoOworICBfX3UxNiBzcmNfc2Nhbl9oZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNyY19zY2FuX2hlaWdodDsKLSBfX3UzMiBjcnRjX2lkOwotIF9fdTE2IGRzdF94OwotIF9fdTE2IGRzdF95OworICBfX3UzMiBjcnRjX2lkOworICBfX3UxNiBkc3RfeDsKKyAgX191MTYgZHN0X3k7CisgIF9fdTE2IGRzdF93aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZHN0X3dpZHRoOwotIF9fdTE2IGRzdF9oZWlnaHQ7CisgIF9fdTE2IGRzdF9oZWlnaHQ7CiB9OwotI2RlZmluZSBJOTE1X09WRVJMQVlfVVBEQVRFX0FUVFJTICgxPDwwKQorI2RlZmluZSBJOTE1X09WRVJMQVlfVVBEQVRFX0FUVFJTICgxIDw8IDApCisjZGVmaW5lIEk5MTVfT1ZFUkxBWV9VUERBVEVfR0FNTUEgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk5MTVfT1ZFUkxBWV9VUERBVEVfR0FNTUEgKDE8PDEpCiBzdHJ1Y3QgZHJtX2ludGVsX292ZXJsYXlfYXR0cnMgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGNvbG9yX2tleTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGNvbG9yX2tleTsKKyAgX19zMzIgYnJpZ2h0bmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgYnJpZ2h0bmVzczsKLSBfX3UzMiBjb250cmFzdDsKLSBfX3UzMiBzYXR1cmF0aW9uOwotIF9fdTMyIGdhbW1hMDsKKyAgX191MzIgY29udHJhc3Q7CisgIF9fdTMyIHNhdHVyYXRpb247CisgIF9fdTMyIGdhbW1hMDsKKyAgX191MzIgZ2FtbWExOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnYW1tYTE7Ci0gX191MzIgZ2FtbWEyOwotIF9fdTMyIGdhbW1hMzsKLSBfX3UzMiBnYW1tYTQ7CisgIF9fdTMyIGdhbW1hMjsKKyAgX191MzIgZ2FtbWEzOworICBfX3UzMiBnYW1tYTQ7CisgIF9fdTMyIGdhbW1hNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2FtbWE1OwogfTsKLSNkZWZpbmUgSTkxNV9TRVRfQ09MT1JLRVlfTk9ORSAoMTw8MCkKLSNkZWZpbmUgSTkxNV9TRVRfQ09MT1JLRVlfREVTVElOQVRJT04gKDE8PDEpCisjZGVmaW5lIEk5MTVfU0VUX0NPTE9SS0VZX05PTkUgKDEgPDwgMCkKKyNkZWZpbmUgSTkxNV9TRVRfQ09MT1JLRVlfREVTVElOQVRJT04gKDEgPDwgMSkKKyNkZWZpbmUgSTkxNV9TRVRfQ09MT1JLRVlfU09VUkNFICgxIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJOTE1X1NFVF9DT0xPUktFWV9TT1VSQ0UgKDE8PDIpCiBzdHJ1Y3QgZHJtX2ludGVsX3Nwcml0ZV9jb2xvcmtleSB7Ci0gX191MzIgcGxhbmVfaWQ7Ci0gX191MzIgbWluX3ZhbHVlOworICBfX3UzMiBwbGFuZV9pZDsKKyAgX191MzIgbWluX3ZhbHVlOworICBfX3UzMiBjaGFubmVsX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNoYW5uZWxfbWFzazsKLSBfX3UzMiBtYXhfdmFsdWU7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIG1heF92YWx1ZTsKKyAgX191MzIgZmxhZ3M7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fd2FpdCB7Ci0gX191MzIgYm9faGFuZGxlOwotIF9fdTMyIGZsYWdzOwotIF9fczY0IHRpbWVvdXRfbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBib19oYW5kbGU7CisgIF9fdTMyIGZsYWdzOworICBfX3M2NCB0aW1lb3V0X25zOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfY3JlYXRlIHsKLSBfX3UzMiBjdHhfaWQ7Ci0gX191MzIgcGFkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY3R4X2lkOworICBfX3UzMiBwYWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9kZXN0cm95IHsKLSBfX3UzMiBjdHhfaWQ7Ci0gX191MzIgcGFkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY3R4X2lkOworICBfX3UzMiBwYWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9yZWdfcmVhZCB7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTY0IHZhbDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG9mZnNldDsKKyAgX191NjQgdmFsOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfcmVzZXRfc3RhdHMgewotIF9fdTMyIGN0eF9pZDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgY3R4X2lkOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXRfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2V0X2NvdW50OwotIF9fdTMyIGJhdGNoX2FjdGl2ZTsKLSBfX3UzMiBiYXRjaF9wZW5kaW5nOwotIF9fdTMyIHBhZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJhdGNoX2FjdGl2ZTsKKyAgX191MzIgYmF0Y2hfcGVuZGluZzsKKyAgX191MzIgcGFkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3VzZXJwdHIgeworICBfX3U2NCB1c2VyX3B0cjsKKyAgX191NjQgdXNlcl9zaXplOworICBfX3UzMiBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEk5MTVfVVNFUlBUUl9SRUFEX09OTFkgMHgxCisjZGVmaW5lIEk5MTVfVVNFUlBUUl9VTlNZTkNIUk9OSVpFRCAweDgwMDAwMDAwCisgIF9fdTMyIGhhbmRsZTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9tZ2FfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9tZ2FfZHJtLmgKaW5kZXggOGU0M2U0ZC4uZGVkNGQ4OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vbWdhX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL21nYV9kcm0uaApAQCAtMzEsMjIgKzMxLDIyIEBACiAjZGVmaW5lIE1HQV9XQVJQX1RHWkYgKE1HQV9GKQogI2RlZmluZSBNR0FfV0FSUF9UR1pBIChNR0FfQSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1HQV9XQVJQX1RHWkFGIChNR0FfRnxNR0FfQSkKKyNkZWZpbmUgTUdBX1dBUlBfVEdaQUYgKE1HQV9GIHwgTUdBX0EpCiAjZGVmaW5lIE1HQV9XQVJQX1RHWlMgKE1HQV9TKQotI2RlZmluZSBNR0FfV0FSUF9UR1pTRiAoTUdBX1N8TUdBX0YpCi0jZGVmaW5lIE1HQV9XQVJQX1RHWlNBIChNR0FfU3xNR0FfQSkKKyNkZWZpbmUgTUdBX1dBUlBfVEdaU0YgKE1HQV9TIHwgTUdBX0YpCisjZGVmaW5lIE1HQV9XQVJQX1RHWlNBIChNR0FfUyB8IE1HQV9BKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUdBX1dBUlBfVEdaU0FGIChNR0FfU3xNR0FfRnxNR0FfQSkKKyNkZWZpbmUgTUdBX1dBUlBfVEdaU0FGIChNR0FfUyB8IE1HQV9GIHwgTUdBX0EpCiAjZGVmaW5lIE1HQV9XQVJQX1QyR1ogKE1HQV9UMikKLSNkZWZpbmUgTUdBX1dBUlBfVDJHWkYgKE1HQV9UMnxNR0FfRikKLSNkZWZpbmUgTUdBX1dBUlBfVDJHWkEgKE1HQV9UMnxNR0FfQSkKKyNkZWZpbmUgTUdBX1dBUlBfVDJHWkYgKE1HQV9UMiB8IE1HQV9GKQorI2RlZmluZSBNR0FfV0FSUF9UMkdaQSAoTUdBX1QyIHwgTUdBX0EpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR0FfV0FSUF9UMkdaQUYgKE1HQV9UMnxNR0FfQXxNR0FfRikKLSNkZWZpbmUgTUdBX1dBUlBfVDJHWlMgKE1HQV9UMnxNR0FfUykKLSNkZWZpbmUgTUdBX1dBUlBfVDJHWlNGIChNR0FfVDJ8TUdBX1N8TUdBX0YpCi0jZGVmaW5lIE1HQV9XQVJQX1QyR1pTQSAoTUdBX1QyfE1HQV9TfE1HQV9BKQorI2RlZmluZSBNR0FfV0FSUF9UMkdaQUYgKE1HQV9UMiB8IE1HQV9BIHwgTUdBX0YpCisjZGVmaW5lIE1HQV9XQVJQX1QyR1pTIChNR0FfVDIgfCBNR0FfUykKKyNkZWZpbmUgTUdBX1dBUlBfVDJHWlNGIChNR0FfVDIgfCBNR0FfUyB8IE1HQV9GKQorI2RlZmluZSBNR0FfV0FSUF9UMkdaU0EgKE1HQV9UMiB8IE1HQV9TIHwgTUdBX0EpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR0FfV0FSUF9UMkdaU0FGIChNR0FfVDJ8TUdBX1N8TUdBX0Z8TUdBX0EpCisjZGVmaW5lIE1HQV9XQVJQX1QyR1pTQUYgKE1HQV9UMiB8IE1HQV9TIHwgTUdBX0YgfCBNR0FfQSkKICNkZWZpbmUgTUdBX01BWF9HMjAwX1BJUEVTIDgKICNkZWZpbmUgTUdBX01BWF9HNDAwX1BJUEVTIDE2CiAjZGVmaW5lIE1HQV9NQVhfV0FSUF9QSVBFUyBNR0FfTUFYX0c0MDBfUElQRVMKQEAgLTg2LDgzICs4Niw4MyBAQAogI2VuZGlmCiB0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkc3Rvcmc7Ci0gdW5zaWduZWQgaW50IG1hY2Nlc3M7Ci0gdW5zaWduZWQgaW50IHBsbnd0OwotIHVuc2lnbmVkIGludCBkd2djdGw7CisgIHVuc2lnbmVkIGludCBkc3Rvcmc7CisgIHVuc2lnbmVkIGludCBtYWNjZXNzOworICB1bnNpZ25lZCBpbnQgcGxud3Q7CisgIHVuc2lnbmVkIGludCBkd2djdGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhbHBoYWN0cmw7Ci0gdW5zaWduZWQgaW50IGZvZ2NvbG9yOwotIHVuc2lnbmVkIGludCB3ZmxhZzsKLSB1bnNpZ25lZCBpbnQgdGR1YWxzdGFnZTA7CisgIHVuc2lnbmVkIGludCBhbHBoYWN0cmw7CisgIHVuc2lnbmVkIGludCBmb2djb2xvcjsKKyAgdW5zaWduZWQgaW50IHdmbGFnOworICB1bnNpZ25lZCBpbnQgdGR1YWxzdGFnZTA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0ZHVhbHN0YWdlMTsKLSB1bnNpZ25lZCBpbnQgZmNvbDsKLSB1bnNpZ25lZCBpbnQgc3RlbmNpbDsKLSB1bnNpZ25lZCBpbnQgc3RlbmNpbGN0bDsKKyAgdW5zaWduZWQgaW50IHRkdWFsc3RhZ2UxOworICB1bnNpZ25lZCBpbnQgZmNvbDsKKyAgdW5zaWduZWQgaW50IHN0ZW5jaWw7CisgIHVuc2lnbmVkIGludCBzdGVuY2lsY3RsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV9jb250ZXh0X3JlZ3NfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgcGl0Y2g7CisgIHVuc2lnbmVkIGludCBwaXRjaDsKIH0gZHJtX21nYV9zZXJ2ZXJfcmVnc190OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgdGV4Y3RsOwotIHVuc2lnbmVkIGludCB0ZXhjdGwyOwotIHVuc2lnbmVkIGludCB0ZXhmaWx0ZXI7CisgIHVuc2lnbmVkIGludCB0ZXhjdGw7CisgIHVuc2lnbmVkIGludCB0ZXhjdGwyOworICB1bnNpZ25lZCBpbnQgdGV4ZmlsdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGV4Ym9yZGVyY29sOwotIHVuc2lnbmVkIGludCB0ZXhvcmc7Ci0gdW5zaWduZWQgaW50IHRleHdpZHRoOwotIHVuc2lnbmVkIGludCB0ZXhoZWlnaHQ7CisgIHVuc2lnbmVkIGludCB0ZXhib3JkZXJjb2w7CisgIHVuc2lnbmVkIGludCB0ZXhvcmc7CisgIHVuc2lnbmVkIGludCB0ZXh3aWR0aDsKKyAgdW5zaWduZWQgaW50IHRleGhlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleG9yZzE7Ci0gdW5zaWduZWQgaW50IHRleG9yZzI7Ci0gdW5zaWduZWQgaW50IHRleG9yZzM7Ci0gdW5zaWduZWQgaW50IHRleG9yZzQ7CisgIHVuc2lnbmVkIGludCB0ZXhvcmcxOworICB1bnNpZ25lZCBpbnQgdGV4b3JnMjsKKyAgdW5zaWduZWQgaW50IHRleG9yZzM7CisgIHVuc2lnbmVkIGludCB0ZXhvcmc0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV90ZXh0dXJlX3JlZ3NfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgaGVhZDsKLSB1bnNpZ25lZCBpbnQgd3JhcDsKKyAgdW5zaWduZWQgaW50IGhlYWQ7CisgIHVuc2lnbmVkIGludCB3cmFwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV9hZ2VfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fbWdhX3NhcmVhIHsKLSBkcm1fbWdhX2NvbnRleHRfcmVnc190IGNvbnRleHRfc3RhdGU7Ci0gZHJtX21nYV9zZXJ2ZXJfcmVnc190IHNlcnZlcl9zdGF0ZTsKKyAgZHJtX21nYV9jb250ZXh0X3JlZ3NfdCBjb250ZXh0X3N0YXRlOworICBkcm1fbWdhX3NlcnZlcl9yZWdzX3Qgc2VydmVyX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fbWdhX3RleHR1cmVfcmVnc190IHRleF9zdGF0ZVsyXTsKLSB1bnNpZ25lZCBpbnQgd2FycF9waXBlOwotIHVuc2lnbmVkIGludCBkaXJ0eTsKLSB1bnNpZ25lZCBpbnQgdmVydHNpemU7CisgIGRybV9tZ2FfdGV4dHVyZV9yZWdzX3QgdGV4X3N0YXRlWzJdOworICB1bnNpZ25lZCBpbnQgd2FycF9waXBlOworICB1bnNpZ25lZCBpbnQgZGlydHk7CisgIHVuc2lnbmVkIGludCB2ZXJ0c2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9jbGlwX3JlY3QgYm94ZXNbTUdBX05SX1NBUkVBX0NMSVBSRUNUU107Ci0gdW5zaWduZWQgaW50IG5ib3g7Ci0gdW5zaWduZWQgaW50IHJlcV9kcmF3YWJsZTsKLSB1bnNpZ25lZCBpbnQgcmVxX2RyYXdfYnVmZmVyOworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tNR0FfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKKyAgdW5zaWduZWQgaW50IG5ib3g7CisgIHVuc2lnbmVkIGludCByZXFfZHJhd2FibGU7CisgIHVuc2lnbmVkIGludCByZXFfZHJhd19idWZmZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBleHBvcnRlZF9kcmF3YWJsZTsKLSB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfaW5kZXg7Ci0gdW5zaWduZWQgaW50IGV4cG9ydGVkX3N0YW1wOwotIHVuc2lnbmVkIGludCBleHBvcnRlZF9idWZmZXJzOworICB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfZHJhd2FibGU7CisgIHVuc2lnbmVkIGludCBleHBvcnRlZF9pbmRleDsKKyAgdW5zaWduZWQgaW50IGV4cG9ydGVkX3N0YW1wOworICB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfYnVmZmVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGV4cG9ydGVkX25mcm9udDsKLSB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfbmJhY2s7Ci0gaW50IGV4cG9ydGVkX2JhY2tfeCwgZXhwb3J0ZWRfZnJvbnRfeCwgZXhwb3J0ZWRfdzsKLSBpbnQgZXhwb3J0ZWRfYmFja195LCBleHBvcnRlZF9mcm9udF95LCBleHBvcnRlZF9oOworICB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfbmZyb250OworICB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfbmJhY2s7CisgIGludCBleHBvcnRlZF9iYWNrX3gsIGV4cG9ydGVkX2Zyb250X3gsIGV4cG9ydGVkX3c7CisgIGludCBleHBvcnRlZF9iYWNrX3ksIGV4cG9ydGVkX2Zyb250X3ksIGV4cG9ydGVkX2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGV4cG9ydGVkX2JveGVzW01HQV9OUl9TQVJFQV9DTElQUkVDVFNdOwotIHVuc2lnbmVkIGludCBzdGF0dXNbNF07Ci0gdW5zaWduZWQgaW50IGxhc3Rfd3JhcDsKLSBkcm1fbWdhX2FnZV90IGxhc3RfZnJhbWU7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGV4cG9ydGVkX2JveGVzW01HQV9OUl9TQVJFQV9DTElQUkVDVFNdOworICB1bnNpZ25lZCBpbnQgc3RhdHVzWzRdOworICB1bnNpZ25lZCBpbnQgbGFzdF93cmFwOworICBkcm1fbWdhX2FnZV90IGxhc3RfZnJhbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsYXN0X2VucXVldWU7Ci0gdW5zaWduZWQgaW50IGxhc3RfZGlzcGF0Y2g7Ci0gdW5zaWduZWQgaW50IGxhc3RfcXVpZXNjZW50OwotIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhMaXN0W01HQV9OUl9URVhfSEVBUFNdW01HQV9OUl9URVhfUkVHSU9OUyArIDFdOworICB1bnNpZ25lZCBpbnQgbGFzdF9lbnF1ZXVlOworICB1bnNpZ25lZCBpbnQgbGFzdF9kaXNwYXRjaDsKKyAgdW5zaWduZWQgaW50IGxhc3RfcXVpZXNjZW50OworICBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4TGlzdFtNR0FfTlJfVEVYX0hFQVBTXVtNR0FfTlJfVEVYX1JFR0lPTlMgKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleEFnZVtNR0FfTlJfVEVYX0hFQVBTXTsKLSBpbnQgY3R4T3duZXI7CisgIHVuc2lnbmVkIGludCB0ZXhBZ2VbTUdBX05SX1RFWF9IRUFQU107CisgIGludCBjdHhPd25lcjsKIH0gZHJtX21nYV9zYXJlYV90OwogI2RlZmluZSBEUk1fTUdBX0lOSVQgMHgwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE4MSwxMTUgKzE4MSwxMTUgQEAKICNkZWZpbmUgRFJNX01HQV9XQUlUX0ZFTkNFIDB4MGIKICNkZWZpbmUgRFJNX01HQV9ETUFfQk9PVFNUUkFQIDB4MGMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9JTklULCBkcm1fbWdhX2luaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9GTFVTSCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9GTFVTSCwgc3RydWN0IGRybV9sb2NrKQotI2RlZmluZSBEUk1fSU9DVExfTUdBX1JFU0VUIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfUkVTRVQpCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfU1dBUCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX1NXQVApCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfSU5JVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0lOSVQsIGRybV9tZ2FfaW5pdF90KQorI2RlZmluZSBEUk1fSU9DVExfTUdBX0ZMVVNIIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfRkxVU0gsIHN0cnVjdCBkcm1fbG9jaykKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9SRVNFVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfU1dBUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfU1dBUCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfQ0xFQVIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfQ0xFQVIsIGRybV9tZ2FfY2xlYXJfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9WRVJURVggRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfVkVSVEVYLCBkcm1fbWdhX3ZlcnRleF90KQotI2RlZmluZSBEUk1fSU9DVExfTUdBX0lORElDRVMgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfSU5ESUNFUywgZHJtX21nYV9pbmRpY2VzX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfSUxPQUQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfSUxPQUQsIGRybV9tZ2FfaWxvYWRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9DTEVBUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0NMRUFSLCBkcm1fbWdhX2NsZWFyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfVkVSVEVYIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfVkVSVEVYLCBkcm1fbWdhX3ZlcnRleF90KQorI2RlZmluZSBEUk1fSU9DVExfTUdBX0lORElDRVMgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9JTkRJQ0VTLCBkcm1fbWdhX2luZGljZXNfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9JTE9BRCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0lMT0FELCBkcm1fbWdhX2lsb2FkX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfTUdBX0JMSVQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfQkxJVCwgZHJtX21nYV9ibGl0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfQkxJVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0JMSVQsIGRybV9tZ2FfYmxpdF90KQogI2RlZmluZSBEUk1fSU9DVExfTUdBX0dFVFBBUkFNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0dFVFBBUkFNLCBkcm1fbWdhX2dldHBhcmFtX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfU0VUX0ZFTkNFIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX1NFVF9GRU5DRSwgX191MzIpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfU0VUX0ZFTkNFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfU0VUX0ZFTkNFLCBfX3UzMikKICNkZWZpbmUgRFJNX0lPQ1RMX01HQV9XQUlUX0ZFTkNFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX1dBSVRfRkVOQ0UsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX01HQV9ETUFfQk9PVFNUUkFQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0RNQV9CT09UU1RSQVAsIGRybV9tZ2FfZG1hX2Jvb3RzdHJhcF90KQogdHlwZWRlZiBzdHJ1Y3QgX2RybV9tZ2Ffd2FycF9pbmRleCB7Ci0gaW50IGluc3RhbGxlZDsKLSB1bnNpZ25lZCBsb25nIHBoeXNfYWRkcjsKKyAgaW50IGluc3RhbGxlZDsKKyAgdW5zaWduZWQgbG9uZyBwaHlzX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzaXplOworICBpbnQgc2l6ZTsKIH0gZHJtX21nYV93YXJwX2luZGV4X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX2luaXQgewotIGVudW0geworICBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUdBX0lOSVRfRE1BID0gMHgwMSwKLSBNR0FfQ0xFQU5VUF9ETUEgPSAweDAyCi0gfSBmdW5jOwotIHVuc2lnbmVkIGxvbmcgc2FyZWFfcHJpdl9vZmZzZXQ7CisgICAgTUdBX0lOSVRfRE1BID0gMHgwMSwKKyAgICBNR0FfQ0xFQU5VUF9ETUEgPSAweDAyCisgIH0gZnVuYzsKKyAgdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNoaXBzZXQ7Ci0gaW50IHNncmFtOwotIHVuc2lnbmVkIGludCBtYWNjZXNzOwotIHVuc2lnbmVkIGludCBmYl9jcHA7CisgIGludCBjaGlwc2V0OworICBpbnQgc2dyYW07CisgIHVuc2lnbmVkIGludCBtYWNjZXNzOworICB1bnNpZ25lZCBpbnQgZmJfY3BwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQsIGJhY2tfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGRlcHRoX2NwcDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldCwgZnJvbnRfcGl0Y2g7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX2NwcDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0ZXh0dXJlX29mZnNldFtNR0FfTlJfVEVYX0hFQVBTXTsKLSB1bnNpZ25lZCBpbnQgdGV4dHVyZV9zaXplW01HQV9OUl9URVhfSEVBUFNdOwotIHVuc2lnbmVkIGxvbmcgZmJfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCB0ZXh0dXJlX29mZnNldFtNR0FfTlJfVEVYX0hFQVBTXTsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfc2l6ZVtNR0FfTlJfVEVYX0hFQVBTXTsKKyAgdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RhdHVzX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIHdhcnBfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgcHJpbWFyeV9vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBidWZmZXJzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBzdGF0dXNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHdhcnBfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHByaW1hcnlfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV9pbml0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX2RtYV9ib290c3RyYXAgewotIHVuc2lnbmVkIGxvbmcgdGV4dHVyZV9oYW5kbGU7Ci0gX191MzIgdGV4dHVyZV9zaXplOworICB1bnNpZ25lZCBsb25nIHRleHR1cmVfaGFuZGxlOworICBfX3UzMiB0ZXh0dXJlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByaW1hcnlfc2l6ZTsKLSBfX3UzMiBzZWNvbmRhcnlfYmluX2NvdW50OwotIF9fdTMyIHNlY29uZGFyeV9iaW5fc2l6ZTsKLSBfX3UzMiBhZ3BfbW9kZTsKKyAgX191MzIgcHJpbWFyeV9zaXplOworICBfX3UzMiBzZWNvbmRhcnlfYmluX2NvdW50OworICBfX3UzMiBzZWNvbmRhcnlfYmluX3NpemU7CisgIF9fdTMyIGFncF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFncF9zaXplOworICBfX3U4IGFncF9zaXplOwogfSBkcm1fbWdhX2RtYV9ib290c3RyYXBfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfY2xlYXIgewotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2xlYXJfY29sb3I7Ci0gdW5zaWduZWQgaW50IGNsZWFyX2RlcHRoOwotIHVuc2lnbmVkIGludCBjb2xvcl9tYXNrOwotIHVuc2lnbmVkIGludCBkZXB0aF9tYXNrOworICB1bnNpZ25lZCBpbnQgY2xlYXJfY29sb3I7CisgIHVuc2lnbmVkIGludCBjbGVhcl9kZXB0aDsKKyAgdW5zaWduZWQgaW50IGNvbG9yX21hc2s7CisgIHVuc2lnbmVkIGludCBkZXB0aF9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV9jbGVhcl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX21nYV92ZXJ0ZXggewotIGludCBpZHg7Ci0gaW50IHVzZWQ7CisgIGludCBpZHg7CisgIGludCB1c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGlzY2FyZDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9tZ2FfdmVydGV4X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX2luZGljZXMgewotIGludCBpZHg7CisgIGludCBpZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdGFydDsKLSB1bnNpZ25lZCBpbnQgZW5kOwotIGludCBkaXNjYXJkOworICB1bnNpZ25lZCBpbnQgc3RhcnQ7CisgIHVuc2lnbmVkIGludCBlbmQ7CisgIGludCBkaXNjYXJkOwogfSBkcm1fbWdhX2luZGljZXNfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX2lsb2FkIHsKLSBpbnQgaWR4OwotIHVuc2lnbmVkIGludCBkc3Rvcmc7Ci0gdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgaW50IGlkeDsKKyAgdW5zaWduZWQgaW50IGRzdG9yZzsKKyAgdW5zaWduZWQgaW50IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9tZ2FfaWxvYWRfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fbWdhX2JsaXQgewotIHVuc2lnbmVkIGludCBwbGFuZW1hc2s7Ci0gdW5zaWduZWQgaW50IHNyY29yZzsKKyAgdW5zaWduZWQgaW50IHBsYW5lbWFzazsKKyAgdW5zaWduZWQgaW50IHNyY29yZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRzdG9yZzsKLSBpbnQgc3JjX3BpdGNoLCBkc3RfcGl0Y2g7Ci0gaW50IGRlbHRhX3N4LCBkZWx0YV9zeTsKLSBpbnQgZGVsdGFfZHgsIGRlbHRhX2R5OworICB1bnNpZ25lZCBpbnQgZHN0b3JnOworICBpbnQgc3JjX3BpdGNoLCBkc3RfcGl0Y2g7CisgIGludCBkZWx0YV9zeCwgZGVsdGFfc3k7CisgIGludCBkZWx0YV9keCwgZGVsdGFfZHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBoZWlnaHQsIHlkaXI7Ci0gaW50IHNvdXJjZV9waXRjaCwgZGVzdF9waXRjaDsKKyAgaW50IGhlaWdodCwgeWRpcjsKKyAgaW50IHNvdXJjZV9waXRjaCwgZGVzdF9waXRjaDsKIH0gZHJtX21nYV9ibGl0X3Q7CiAjZGVmaW5lIE1HQV9QQVJBTV9JUlFfTlIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUdBX1BBUkFNX0NBUkRfVFlQRSAyCiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX2dldHBhcmFtIHsKLSBpbnQgcGFyYW07Ci0gdm9pZCBfX3VzZXIgKnZhbHVlOworICBpbnQgcGFyYW07CisgIHZvaWQgX191c2VyICogdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX2dldHBhcmFtX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL21zbV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL21zbV9kcm0uaAppbmRleCAwMzNiYjM5Li44ZGI0YjBkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9tc21fZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vbXNtX2RybS5oCkBAIC0yNyw5OSArMjcsMTA0IEBACiAjZGVmaW5lIE1TTV9QSVBFXzNEMCAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tc21fdGltZXNwZWMgewotIGludDY0X3QgdHZfc2VjOwotIGludDY0X3QgdHZfbnNlYzsKKyAgaW50NjRfdCB0dl9zZWM7CisgIGludDY0X3QgdHZfbnNlYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU01fUEFSQU1fR1BVX0lEIDB4MDEKICNkZWZpbmUgTVNNX1BBUkFNX0dNRU1fU0laRSAweDAyCisjZGVmaW5lIE1TTV9QQVJBTV9DSElQX0lEIDB4MDMKIHN0cnVjdCBkcm1fbXNtX3BhcmFtIHsKLSB1aW50MzJfdCBwaXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYXJhbTsKLSB1aW50NjRfdCB2YWx1ZTsKKyAgdWludDMyX3QgcGlwZTsKKyAgdWludDMyX3QgcGFyYW07CisgIHVpbnQ2NF90IHZhbHVlOwogfTsKLSNkZWZpbmUgTVNNX0JPX1NDQU5PVVQgMHgwMDAwMDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNNX0JPX1NDQU5PVVQgMHgwMDAwMDAwMQogI2RlZmluZSBNU01fQk9fR1BVX1JFQURPTkxZIDB4MDAwMDAwMDIKICNkZWZpbmUgTVNNX0JPX0NBQ0hFX01BU0sgMHgwMDBmMDAwMAogI2RlZmluZSBNU01fQk9fQ0FDSEVEIDB4MDAwMTAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9CT19XQyAweDAwMDIwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU01fQk9fVU5DQUNIRUQgMHgwMDA0MDAwMAorI2RlZmluZSBNU01fQk9fRkxBR1MgKE1TTV9CT19TQ0FOT1VUIHwgTVNNX0JPX0dQVV9SRUFET05MWSB8IE1TTV9CT19DQUNIRUQgfCBNU01fQk9fV0MgfCBNU01fQk9fVU5DQUNIRUQpCiBzdHJ1Y3QgZHJtX21zbV9nZW1fbmV3IHsKLSB1aW50NjRfdCBzaXplOwotIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBoYW5kbGU7CiB9Owotc3RydWN0IGRybV9tc21fZ2VtX2luZm8gewotIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IG9mZnNldDsKK3N0cnVjdCBkcm1fbXNtX2dlbV9pbmZvIHsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBNU01fUFJFUF9SRUFEIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9QUkVQX1dSSVRFIDB4MDIKICNkZWZpbmUgTVNNX1BSRVBfTk9TWU5DIDB4MDQKLXN0cnVjdCBkcm1fbXNtX2dlbV9jcHVfcHJlcCB7Ci0gdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBvcDsKLSBzdHJ1Y3QgZHJtX21zbV90aW1lc3BlYyB0aW1lb3V0OworI2RlZmluZSBNU01fUFJFUF9GTEFHUyAoTVNNX1BSRVBfUkVBRCB8IE1TTV9QUkVQX1dSSVRFIHwgTVNNX1BSRVBfTk9TWU5DKQorc3RydWN0IGRybV9tc21fZ2VtX2NwdV9wcmVwIHsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBvcDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBkcm1fbXNtX3RpbWVzcGVjIHRpbWVvdXQ7CiB9Owogc3RydWN0IGRybV9tc21fZ2VtX2NwdV9maW5pIHsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7CiB9Owogc3RydWN0IGRybV9tc21fZ2VtX3N1Ym1pdF9yZWxvYyB7Ci0gdWludDMyX3Qgc3VibWl0X29mZnNldDsKKyAgdWludDMyX3Qgc3VibWl0X29mZnNldDsKKyAgdWludDMyX3Qgb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG9yOwotIGludDMyX3Qgc2hpZnQ7Ci0gdWludDMyX3QgcmVsb2NfaWR4OwotIHVpbnQ2NF90IHJlbG9jX29mZnNldDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludDMyX3Qgc2hpZnQ7CisgIHVpbnQzMl90IHJlbG9jX2lkeDsKKyAgdWludDY0X3QgcmVsb2Nfb2Zmc2V0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9TVUJNSVRfQ01EX0JVRiAweDAwMDEKICNkZWZpbmUgTVNNX1NVQk1JVF9DTURfSUJfVEFSR0VUX0JVRiAweDAwMDIKICNkZWZpbmUgTVNNX1NVQk1JVF9DTURfQ1RYX1JFU1RPUkVfQlVGIDB4MDAwMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbXNtX2dlbV9zdWJtaXRfY21kIHsKLSB1aW50MzJfdCB0eXBlOwotIHVpbnQzMl90IHN1Ym1pdF9pZHg7Ci0gdWludDMyX3Qgc3VibWl0X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBwYWQ7Ci0gdWludDMyX3QgbnJfcmVsb2NzOwotIHVpbnQ2NF90IF9fdXNlciByZWxvY3M7CisgIHVpbnQzMl90IHR5cGU7CisgIHVpbnQzMl90IHN1Ym1pdF9pZHg7CisgIHVpbnQzMl90IHN1Ym1pdF9vZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IG5yX3JlbG9jczsKKyAgdWludDY0X3QgX191c2VyIHJlbG9jczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU01fU1VCTUlUX0JPX1JFQUQgMHgwMDAxCiAjZGVmaW5lIE1TTV9TVUJNSVRfQk9fV1JJVEUgMHgwMDAyCisjZGVmaW5lIE1TTV9TVUJNSVRfQk9fRkxBR1MgKE1TTV9TVUJNSVRfQk9fUkVBRCB8IE1TTV9TVUJNSVRfQk9fV1JJVEUpCiBzdHJ1Y3QgZHJtX21zbV9nZW1fc3VibWl0X2JvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQ2NF90IHByZXN1bWVkOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50NjRfdCBwcmVzdW1lZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tc21fZ2VtX3N1Ym1pdCB7Ci0gdWludDMyX3QgcGlwZTsKLSB1aW50MzJfdCBmZW5jZTsKLSB1aW50MzJfdCBucl9ib3M7CisgIHVpbnQzMl90IHBpcGU7CisgIHVpbnQzMl90IGZlbmNlOworICB1aW50MzJfdCBucl9ib3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG5yX2NtZHM7Ci0gdWludDY0X3QgX191c2VyIGJvczsKLSB1aW50NjRfdCBfX3VzZXIgY21kczsKKyAgdWludDMyX3QgbnJfY21kczsKKyAgdWludDY0X3QgX191c2VyIGJvczsKKyAgdWludDY0X3QgX191c2VyIGNtZHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbXNtX3dhaXRfZmVuY2UgewotIHVpbnQzMl90IGZlbmNlOwotIHVpbnQzMl90IHBhZDsKLSBzdHJ1Y3QgZHJtX21zbV90aW1lc3BlYyB0aW1lb3V0OworICB1aW50MzJfdCBmZW5jZTsKKyAgdWludDMyX3QgcGFkOworICBzdHJ1Y3QgZHJtX21zbV90aW1lc3BlYyB0aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIERSTV9NU01fR0VUX1BBUkFNIDB4MDAKQEAgLTEzNiw5ICsxNDEsOSBAQAogI2RlZmluZSBEUk1fSU9DVExfTVNNX0dFTV9ORVcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fR0VNX05FVywgc3RydWN0IGRybV9tc21fZ2VtX25ldykKICNkZWZpbmUgRFJNX0lPQ1RMX01TTV9HRU1fSU5GTyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fSU5GTywgc3RydWN0IGRybV9tc21fZ2VtX2luZm8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfTVNNX0dFTV9DUFVfUFJFUCBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fQ1BVX1BSRVAsIHN0cnVjdCBkcm1fbXNtX2dlbV9jcHVfcHJlcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01TTV9HRU1fQ1BVX0ZJTkkgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fR0VNX0NQVV9GSU5JLCBzdHJ1Y3QgZHJtX21zbV9nZW1fY3B1X2ZpbmkpCisjZGVmaW5lIERSTV9JT0NUTF9NU01fR0VNX0NQVV9QUkVQIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fR0VNX0NQVV9QUkVQLCBzdHJ1Y3QgZHJtX21zbV9nZW1fY3B1X3ByZXApCisjZGVmaW5lIERSTV9JT0NUTF9NU01fR0VNX0NQVV9GSU5JIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fR0VNX0NQVV9GSU5JLCBzdHJ1Y3QgZHJtX21zbV9nZW1fY3B1X2ZpbmkpCiAjZGVmaW5lIERSTV9JT0NUTF9NU01fR0VNX1NVQk1JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fU1VCTUlULCBzdHJ1Y3QgZHJtX21zbV9nZW1fc3VibWl0KQotI2RlZmluZSBEUk1fSU9DVExfTVNNX1dBSVRfRkVOQ0UgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fV0FJVF9GRU5DRSwgc3RydWN0IGRybV9tc21fd2FpdF9mZW5jZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX01TTV9XQUlUX0ZFTkNFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NU01fV0FJVF9GRU5DRSwgc3RydWN0IGRybV9tc21fd2FpdF9mZW5jZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL25vdXZlYXVfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9ub3V2ZWF1X2RybS5oCmluZGV4IDBhMjkwMGYuLjI5MjQ4YTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL25vdXZlYXVfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vbm91dmVhdV9kcm0uaApAQCAtMTgsNiArMTgsMTEgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfX05PVVZFQVVfRFJNX0hfXwogI2RlZmluZSBfX05PVVZFQVVfRFJNX0hfXworI2RlZmluZSBEUk1fTk9VVkVBVV9FVkVOVF9OVklGIDB4ODAwMDAwMDAKKyNkZWZpbmUgTk9VVkVBVV9BQkkxNl9DTElFTlQgMHhmZmZmZmZmZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTk9VVkVBVV9BQkkxNl9ERVZJQ0UgMHhkZGRkZGRkZAorI2RlZmluZSBOT1VWRUFVX0FCSTE2X0NIQU4obikgKDB4Y2NjYzAwMDAgfCAobikpCiAjZGVmaW5lIE5PVVZFQVVfR0VNX0RPTUFJTl9DUFUgKDEgPDwgMCkKICNkZWZpbmUgTk9VVkVBVV9HRU1fRE9NQUlOX1ZSQU0gKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zMiwzOCArMzcsMzggQEAKICNkZWZpbmUgTk9VVkVBVV9HRU1fVElMRV9OT05DT05USUcgMHgwMDAwMDAwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1faW5mbyB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IGRvbWFpbjsKLSB1aW50NjRfdCBzaXplOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGRvbWFpbjsKKyAgdWludDY0X3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQ2NF90IG1hcF9oYW5kbGU7Ci0gdWludDMyX3QgdGlsZV9tb2RlOwotIHVpbnQzMl90IHRpbGVfZmxhZ3M7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDY0X3QgbWFwX2hhbmRsZTsKKyAgdWludDMyX3QgdGlsZV9tb2RlOworICB1aW50MzJfdCB0aWxlX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX25ldyB7Ci0gc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9pbmZvIGluZm87Ci0gdWludDMyX3QgY2hhbm5lbF9oaW50OworICBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2luZm8gaW5mbzsKKyAgdWludDMyX3QgY2hhbm5lbF9oaW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBhbGlnbjsKKyAgdWludDMyX3QgYWxpZ247CiB9OwogI2RlZmluZSBOT1VWRUFVX0dFTV9NQVhfQlVGRkVSUyAxMDI0CiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX3B1c2hidWZfYm9fcHJlc3VtZWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB2YWxpZDsKLSB1aW50MzJfdCBkb21haW47Ci0gdWludDY0X3Qgb2Zmc2V0OworICB1aW50MzJfdCB2YWxpZDsKKyAgdWludDMyX3QgZG9tYWluOworICB1aW50NjRfdCBvZmZzZXQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1Zl9ibyB7Ci0gdWludDY0X3QgdXNlcl9wcml2OwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCByZWFkX2RvbWFpbnM7CisgIHVpbnQ2NF90IHVzZXJfcHJpdjsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCByZWFkX2RvbWFpbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHdyaXRlX2RvbWFpbnM7Ci0gdWludDMyX3QgdmFsaWRfZG9tYWluczsKLSBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX3B1c2hidWZfYm9fcHJlc3VtZWQgcHJlc3VtZWQ7CisgIHVpbnQzMl90IHdyaXRlX2RvbWFpbnM7CisgIHVpbnQzMl90IHZhbGlkX2RvbWFpbnM7CisgIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1Zl9ib19wcmVzdW1lZCBwcmVzdW1lZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOT1VWRUFVX0dFTV9SRUxPQ19MT1cgKDEgPDwgMCkKQEAgLTcyLDUxICs3Nyw1MSBAQAogI2RlZmluZSBOT1VWRUFVX0dFTV9NQVhfUkVMT0NTIDEwMjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX3B1c2hidWZfcmVsb2MgewotIHVpbnQzMl90IHJlbG9jX2JvX2luZGV4OwotIHVpbnQzMl90IHJlbG9jX2JvX29mZnNldDsKLSB1aW50MzJfdCBib19pbmRleDsKKyAgdWludDMyX3QgcmVsb2NfYm9faW5kZXg7CisgIHVpbnQzMl90IHJlbG9jX2JvX29mZnNldDsKKyAgdWludDMyX3QgYm9faW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IGRhdGE7Ci0gdWludDMyX3Qgdm9yOwotIHVpbnQzMl90IHRvcjsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGRhdGE7CisgIHVpbnQzMl90IHZvcjsKKyAgdWludDMyX3QgdG9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5PVVZFQVVfR0VNX01BWF9QVVNIIDUxMgogc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9wdXNoYnVmX3B1c2ggewotIHVpbnQzMl90IGJvX2luZGV4OworICB1aW50MzJfdCBib19pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50NjRfdCBsZW5ndGg7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBsZW5ndGg7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1ZiB7Ci0gdWludDMyX3QgY2hhbm5lbDsKLSB1aW50MzJfdCBucl9idWZmZXJzOwotIHVpbnQ2NF90IGJ1ZmZlcnM7CisgIHVpbnQzMl90IGNoYW5uZWw7CisgIHVpbnQzMl90IG5yX2J1ZmZlcnM7CisgIHVpbnQ2NF90IGJ1ZmZlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG5yX3JlbG9jczsKLSB1aW50MzJfdCBucl9wdXNoOwotIHVpbnQ2NF90IHJlbG9jczsKLSB1aW50NjRfdCBwdXNoOworICB1aW50MzJfdCBucl9yZWxvY3M7CisgIHVpbnQzMl90IG5yX3B1c2g7CisgIHVpbnQ2NF90IHJlbG9jczsKKyAgdWludDY0X3QgcHVzaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc3VmZml4MDsKLSB1aW50MzJfdCBzdWZmaXgxOwotIHVpbnQ2NF90IHZyYW1fYXZhaWxhYmxlOwotIHVpbnQ2NF90IGdhcnRfYXZhaWxhYmxlOworICB1aW50MzJfdCBzdWZmaXgwOworICB1aW50MzJfdCBzdWZmaXgxOworICB1aW50NjRfdCB2cmFtX2F2YWlsYWJsZTsKKyAgdWludDY0X3QgZ2FydF9hdmFpbGFibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTk9VVkVBVV9HRU1fQ1BVX1BSRVBfTk9XQUlUIDB4MDAwMDAwMDEKICNkZWZpbmUgTk9VVkVBVV9HRU1fQ1BVX1BSRVBfV1JJVEUgMHgwMDAwMDAwNAogc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9jcHVfcHJlcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBmbGFnczsKIH07CiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2NwdV9maW5pIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBoYW5kbGU7CiB9OwogI2RlZmluZSBEUk1fTk9VVkVBVV9HRVRQQVJBTSAweDAwCiAjZGVmaW5lIERSTV9OT1VWRUFVX1NFVFBBUkFNIDB4MDEKQEAgLTEyNywxNyArMTMyLDE4IEBACiAjZGVmaW5lIERSTV9OT1VWRUFVX05PVElGSUVST0JKX0FMTE9DIDB4MDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9OT1VWRUFVX0dQVU9CSl9GUkVFIDB4MDYKKyNkZWZpbmUgRFJNX05PVVZFQVVfTlZJRiAweDA3CiAjZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9ORVcgMHg0MAogI2RlZmluZSBEUk1fTk9VVkVBVV9HRU1fUFVTSEJVRiAweDQxCi0jZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9DUFVfUFJFUCAweDQyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fTk9VVkVBVV9HRU1fQ1BVX1BSRVAgMHg0MgogI2RlZmluZSBEUk1fTk9VVkVBVV9HRU1fQ1BVX0ZJTkkgMHg0MwogI2RlZmluZSBEUk1fTk9VVkVBVV9HRU1fSU5GTyAweDQ0CiAjZGVmaW5lIERSTV9JT0NUTF9OT1VWRUFVX0dFTV9ORVcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9ORVcsIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fbmV3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX1BVU0hCVUYgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9QVVNIQlVGLCBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX3B1c2hidWYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfTk9VVkVBVV9HRU1fQ1BVX1BSRVAgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9DUFVfUFJFUCwgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9jcHVfcHJlcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX0NQVV9GSU5JIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTk9VVkVBVV9HRU1fQ1BVX0ZJTkksIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fY3B1X2ZpbmkpCisjZGVmaW5lIERSTV9JT0NUTF9OT1VWRUFVX0dFTV9DUFVfUFJFUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTk9VVkVBVV9HRU1fQ1BVX1BSRVAsIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fY3B1X3ByZXApCisjZGVmaW5lIERSTV9JT0NUTF9OT1VWRUFVX0dFTV9DUFVfRklOSSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTk9VVkVBVV9HRU1fQ1BVX0ZJTkksIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fY3B1X2ZpbmkpCiAjZGVmaW5lIERSTV9JT0NUTF9OT1VWRUFVX0dFTV9JTkZPIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTk9VVkVBVV9HRU1fSU5GTywgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9pbmZvKQotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9vbWFwX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vb21hcF9kcm0uaAppbmRleCAyZDRjYjUzLi5lZmNhMDAyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9vbWFwX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL29tYXBfZHJtLmgKQEAgLTIyLDggKzIyLDggQEAKICNkZWZpbmUgT01BUF9QQVJBTV9DSElQU0VUX0lEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX29tYXBfcGFyYW0gewotIHVpbnQ2NF90IHBhcmFtOwotIHVpbnQ2NF90IHZhbHVlOworICB1aW50NjRfdCBwYXJhbTsKKyAgdWludDY0X3QgdmFsdWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUF9CT19TQ0FOT1VUIDB4MDAwMDAwMDEKQEAgLTM5LDQ2ICszOSw0NiBAQAogI2RlZmluZSBPTUFQX0JPX1RJTEVEXzMyIDB4MDAwMDAzMDAKICNkZWZpbmUgT01BUF9CT19USUxFRCAoT01BUF9CT19USUxFRF84IHwgT01BUF9CT19USUxFRF8xNiB8IE9NQVBfQk9fVElMRURfMzIpCiB1bmlvbiBvbWFwX2dlbV9zaXplIHsKLSB1aW50MzJfdCBieXRlczsKKyAgdWludDMyX3QgYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdWludDE2X3Qgd2lkdGg7Ci0gdWludDE2X3QgaGVpZ2h0OwotIH0gdGlsZWQ7CisgIHN0cnVjdCB7CisgICAgdWludDE2X3Qgd2lkdGg7CisgICAgdWludDE2X3QgaGVpZ2h0OworICB9IHRpbGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX29tYXBfZ2VtX25ldyB7Ci0gdW5pb24gb21hcF9nZW1fc2l6ZSBzaXplOwotIHVpbnQzMl90IGZsYWdzOworICB1bmlvbiBvbWFwX2dlbV9zaXplIHNpemU7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgX19wYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgX19wYWQ7CiB9OwogZW51bSBvbWFwX2dlbV9vcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBfR0VNX1JFQUQgPSAweDAxLAotIE9NQVBfR0VNX1dSSVRFID0gMHgwMiwKKyAgT01BUF9HRU1fUkVBRCA9IDB4MDEsCisgIE9NQVBfR0VNX1dSSVRFID0gMHgwMiwKIH07CiBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2NwdV9wcmVwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IG9wOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IG9wOwogfTsKIHN0cnVjdCBkcm1fb21hcF9nZW1fY3B1X2ZpbmkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3Qgb3A7Ci0gdWludDMyX3QgbnJlZ2lvbnM7Ci0gdWludDMyX3QgX19wYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3Qgb3A7CisgIHVpbnQzMl90IG5yZWdpb25zOworICB1aW50MzJfdCBfX3BhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9vbWFwX2dlbV9pbmZvIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgX19wYWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgX19wYWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX09NQVBfR0VUX1BBUkFNIDB4MDAKQEAgLTkxLDEwICs5MSwxMCBAQAogI2RlZmluZSBEUk1fT01BUF9OVU1fSU9DVExTIDB4MDcKICNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VUX1BBUkFNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9HRVRfUEFSQU0sIHN0cnVjdCBkcm1fb21hcF9wYXJhbSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9PTUFQX1NFVF9QQVJBTSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfU0VUX1BBUkFNLCBzdHJ1Y3QgZHJtX29tYXBfcGFyYW0pCisjZGVmaW5lIERSTV9JT0NUTF9PTUFQX1NFVF9QQVJBTSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9TRVRfUEFSQU0sIHN0cnVjdCBkcm1fb21hcF9wYXJhbSkKICNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VNX05FVyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfR0VNX05FVywgc3RydWN0IGRybV9vbWFwX2dlbV9uZXcpCi0jZGVmaW5lIERSTV9JT0NUTF9PTUFQX0dFTV9DUFVfUFJFUCBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfR0VNX0NQVV9QUkVQLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2NwdV9wcmVwKQotI2RlZmluZSBEUk1fSU9DVExfT01BUF9HRU1fQ1BVX0ZJTkkgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX0dFTV9DUFVfRklOSSwgc3RydWN0IGRybV9vbWFwX2dlbV9jcHVfZmluaSkKKyNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VNX0NQVV9QUkVQIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX0dFTV9DUFVfUFJFUCwgc3RydWN0IGRybV9vbWFwX2dlbV9jcHVfcHJlcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VNX0NQVV9GSU5JIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX0dFTV9DUFVfRklOSSwgc3RydWN0IGRybV9vbWFwX2dlbV9jcHVfZmluaSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9PTUFQX0dFTV9JTkZPIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9HRU1fSU5GTywgc3RydWN0IGRybV9vbWFwX2dlbV9pbmZvKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9xeGxfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9xeGxfZHJtLmgKaW5kZXggNGY0ODY2OC4uMzg3OGI3NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vcXhsX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3F4bF9kcm0uaApAQCAtMzQsODUgKzM0LDg1IEBACiAjZGVmaW5lIERSTV9RWExfQ0xJRU5UQ0FQIDB4MDUKICNkZWZpbmUgRFJNX1FYTF9BTExPQ19TVVJGIDB4MDYKIHN0cnVjdCBkcm1fcXhsX2FsbG9jIHsKLSB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGhhbmRsZTsKIH07CiBzdHJ1Y3QgZHJtX3F4bF9tYXAgewotIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDY0X3Qgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDsKIH07CiAjZGVmaW5lIFFYTF9SRUxPQ19UWVBFX0JPIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFFYTF9SRUxPQ19UWVBFX1NVUkYgMgogc3RydWN0IGRybV9xeGxfcmVsb2MgewotIHVpbnQ2NF90IHNyY19vZmZzZXQ7Ci0gdWludDY0X3QgZHN0X29mZnNldDsKKyAgdWludDY0X3Qgc3JjX29mZnNldDsKKyAgdWludDY0X3QgZHN0X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc3JjX2hhbmRsZTsKLSB1aW50MzJfdCBkc3RfaGFuZGxlOwotIHVpbnQzMl90IHJlbG9jX3R5cGU7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBzcmNfaGFuZGxlOworICB1aW50MzJfdCBkc3RfaGFuZGxlOworICB1aW50MzJfdCByZWxvY190eXBlOworICB1aW50MzJfdCBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fcXhsX2NvbW1hbmQgewotIHVpbnQ2NF90IF9fdXNlciBjb21tYW5kOwotIHVpbnQ2NF90IF9fdXNlciByZWxvY3M7CisgIHVpbnQ2NF90IF9fdXNlciBjb21tYW5kOworICB1aW50NjRfdCBfX3VzZXIgcmVsb2NzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB0eXBlOwotIHVpbnQzMl90IGNvbW1hbmRfc2l6ZTsKLSB1aW50MzJfdCByZWxvY3NfbnVtOwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgdHlwZTsKKyAgdWludDMyX3QgY29tbWFuZF9zaXplOworICB1aW50MzJfdCByZWxvY3NfbnVtOworICB1aW50MzJfdCBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fcXhsX2V4ZWNidWZmZXIgewotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IGNvbW1hbmRzX251bTsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGNvbW1hbmRzX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgX191c2VyIGNvbW1hbmRzOworICB1aW50NjRfdCBfX3VzZXIgY29tbWFuZHM7CiB9Owogc3RydWN0IGRybV9xeGxfdXBkYXRlX2FyZWEgewotIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB0b3A7Ci0gdWludDMyX3QgbGVmdDsKLSB1aW50MzJfdCBib3R0b207Ci0gdWludDMyX3QgcmlnaHQ7CisgIHVpbnQzMl90IHRvcDsKKyAgdWludDMyX3QgbGVmdDsKKyAgdWludDMyX3QgYm90dG9tOworICB1aW50MzJfdCByaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBwYWQ7CiB9OwogI2RlZmluZSBRWExfUEFSQU1fTlVNX1NVUkZBQ0VTIDEKICNkZWZpbmUgUVhMX1BBUkFNX01BWF9SRUxPQ1MgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcXhsX2dldHBhcmFtIHsKLSB1aW50NjRfdCBwYXJhbTsKLSB1aW50NjRfdCB2YWx1ZTsKKyAgdWludDY0X3QgcGFyYW07CisgIHVpbnQ2NF90IHZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3F4bF9jbGllbnRjYXAgewotIHVpbnQzMl90IGluZGV4OwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgaW5kZXg7CisgIHVpbnQzMl90IHBhZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9xeGxfYWxsb2Nfc3VyZiB7Ci0gdWludDMyX3QgZm9ybWF0OwotIHVpbnQzMl90IHdpZHRoOwotIHVpbnQzMl90IGhlaWdodDsKKyAgdWludDMyX3QgZm9ybWF0OworICB1aW50MzJfdCB3aWR0aDsKKyAgdWludDMyX3QgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQzMl90IHN0cmlkZTsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOworICBpbnQzMl90IHN0cmlkZTsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBwYWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9BTExPQyAgIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0FMTE9DLCBzdHJ1Y3QgZHJtX3F4bF9hbGxvYykKLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9NQVAgICBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9NQVAsIHN0cnVjdCBkcm1fcXhsX21hcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9FWEVDQlVGRkVSICAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9FWEVDQlVGRkVSLCAgc3RydWN0IGRybV9xeGxfZXhlY2J1ZmZlcikKLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9VUERBVEVfQVJFQSAgIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfVVBEQVRFX0FSRUEsICBzdHJ1Y3QgZHJtX3F4bF91cGRhdGVfYXJlYSkKKyNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9BTExPQyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9BTExPQywgc3RydWN0IGRybV9xeGxfYWxsb2MpCisjZGVmaW5lIERSTV9JT0NUTF9RWExfTUFQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX01BUCwgc3RydWN0IGRybV9xeGxfbWFwKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX0VYRUNCVUZGRVIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9FWEVDQlVGRkVSLCBzdHJ1Y3QgZHJtX3F4bF9leGVjYnVmZmVyKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX1VQREFURV9BUkVBIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfVVBEQVRFX0FSRUEsIHN0cnVjdCBkcm1fcXhsX3VwZGF0ZV9hcmVhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9HRVRQQVJBTSAgIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0dFVFBBUkFNLCAgc3RydWN0IGRybV9xeGxfZ2V0cGFyYW0pCi0jZGVmaW5lIERSTV9JT0NUTF9RWExfQ0xJRU5UQ0FQICAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9DTElFTlRDQVAsICBzdHJ1Y3QgZHJtX3F4bF9jbGllbnRjYXApCi0jZGVmaW5lIERSTV9JT0NUTF9RWExfQUxMT0NfU1VSRiAgIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0FMTE9DX1NVUkYsICBzdHJ1Y3QgZHJtX3F4bF9hbGxvY19zdXJmKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX0dFVFBBUkFNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0dFVFBBUkFNLCBzdHJ1Y3QgZHJtX3F4bF9nZXRwYXJhbSkKKyNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9DTElFTlRDQVAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9DTElFTlRDQVAsIHN0cnVjdCBkcm1fcXhsX2NsaWVudGNhcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9BTExPQ19TVVJGIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0FMTE9DX1NVUkYsIHN0cnVjdCBkcm1fcXhsX2FsbG9jX3N1cmYpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9yMTI4X2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vcjEyOF9kcm0uaAppbmRleCAwYjJjMWM5Li40ZTY4MzgxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9yMTI4X2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3IxMjhfZHJtLmgKQEAgLTY0LDYxICs2NCw2MSBAQAogI2RlZmluZSBSMTI4X01BWF9URVhUVVJFX1VOSVRTIDIKICNlbmRpZgogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBkc3RfcGl0Y2hfb2Zmc2V0X2M7CisgIHVuc2lnbmVkIGludCBkc3RfcGl0Y2hfb2Zmc2V0X2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkcF9ndWlfbWFzdGVyX2NudGxfYzsKLSB1bnNpZ25lZCBpbnQgc2NfdG9wX2xlZnRfYzsKLSB1bnNpZ25lZCBpbnQgc2NfYm90dG9tX3JpZ2h0X2M7Ci0gdW5zaWduZWQgaW50IHpfb2Zmc2V0X2M7CisgIHVuc2lnbmVkIGludCBkcF9ndWlfbWFzdGVyX2NudGxfYzsKKyAgdW5zaWduZWQgaW50IHNjX3RvcF9sZWZ0X2M7CisgIHVuc2lnbmVkIGludCBzY19ib3R0b21fcmlnaHRfYzsKKyAgdW5zaWduZWQgaW50IHpfb2Zmc2V0X2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB6X3BpdGNoX2M7Ci0gdW5zaWduZWQgaW50IHpfc3Rlbl9jbnRsX2M7Ci0gdW5zaWduZWQgaW50IHRleF9jbnRsX2M7Ci0gdW5zaWduZWQgaW50IG1pc2NfM2Rfc3RhdGVfY250bF9yZWc7CisgIHVuc2lnbmVkIGludCB6X3BpdGNoX2M7CisgIHVuc2lnbmVkIGludCB6X3N0ZW5fY250bF9jOworICB1bnNpZ25lZCBpbnQgdGV4X2NudGxfYzsKKyAgdW5zaWduZWQgaW50IG1pc2NfM2Rfc3RhdGVfY250bF9yZWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0ZXh0dXJlX2Nscl9jbXBfY2xyX2M7Ci0gdW5zaWduZWQgaW50IHRleHR1cmVfY2xyX2NtcF9tc2tfYzsKLSB1bnNpZ25lZCBpbnQgZm9nX2NvbG9yX2M7Ci0gdW5zaWduZWQgaW50IHRleF9zaXplX3BpdGNoX2M7CisgIHVuc2lnbmVkIGludCB0ZXh0dXJlX2Nscl9jbXBfY2xyX2M7CisgIHVuc2lnbmVkIGludCB0ZXh0dXJlX2Nscl9jbXBfbXNrX2M7CisgIHVuc2lnbmVkIGludCBmb2dfY29sb3JfYzsKKyAgdW5zaWduZWQgaW50IHRleF9zaXplX3BpdGNoX2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjb25zdGFudF9jb2xvcl9jOwotIHVuc2lnbmVkIGludCBwbTRfdmNfZnB1X3NldHVwOwotIHVuc2lnbmVkIGludCBzZXR1cF9jbnRsOwotIHVuc2lnbmVkIGludCBkcF93cml0ZV9tYXNrOworICB1bnNpZ25lZCBpbnQgY29uc3RhbnRfY29sb3JfYzsKKyAgdW5zaWduZWQgaW50IHBtNF92Y19mcHVfc2V0dXA7CisgIHVuc2lnbmVkIGludCBzZXR1cF9jbnRsOworICB1bnNpZ25lZCBpbnQgZHBfd3JpdGVfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0ZW5fcmVmX21hc2tfYzsKLSB1bnNpZ25lZCBpbnQgcGxhbmVfM2RfbWFza19jOwotIHVuc2lnbmVkIGludCB3aW5kb3dfeHlfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBzY2FsZV8zZF9jbnRsOworICB1bnNpZ25lZCBpbnQgc3Rlbl9yZWZfbWFza19jOworICB1bnNpZ25lZCBpbnQgcGxhbmVfM2RfbWFza19jOworICB1bnNpZ25lZCBpbnQgd2luZG93X3h5X29mZnNldDsKKyAgdW5zaWduZWQgaW50IHNjYWxlXzNkX2NudGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcjEyOF9jb250ZXh0X3JlZ3NfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgdGV4X2NudGw7Ci0gdW5zaWduZWQgaW50IHRleF9jb21iaW5lX2NudGw7CisgIHVuc2lnbmVkIGludCB0ZXhfY250bDsKKyAgdW5zaWduZWQgaW50IHRleF9jb21iaW5lX2NudGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0ZXhfc2l6ZV9waXRjaDsKLSB1bnNpZ25lZCBpbnQgdGV4X29mZnNldFtSMTI4X01BWF9URVhUVVJFX0xFVkVMU107Ci0gdW5zaWduZWQgaW50IHRleF9ib3JkZXJfY29sb3I7CisgIHVuc2lnbmVkIGludCB0ZXhfc2l6ZV9waXRjaDsKKyAgdW5zaWduZWQgaW50IHRleF9vZmZzZXRbUjEyOF9NQVhfVEVYVFVSRV9MRVZFTFNdOworICB1bnNpZ25lZCBpbnQgdGV4X2JvcmRlcl9jb2xvcjsKIH0gZHJtX3IxMjhfdGV4dHVyZV9yZWdzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfc2FyZWEgewotIGRybV9yMTI4X2NvbnRleHRfcmVnc190IGNvbnRleHRfc3RhdGU7Ci0gZHJtX3IxMjhfdGV4dHVyZV9yZWdzX3QgdGV4X3N0YXRlW1IxMjhfTUFYX1RFWFRVUkVfVU5JVFNdOwotIHVuc2lnbmVkIGludCBkaXJ0eTsKKyAgZHJtX3IxMjhfY29udGV4dF9yZWdzX3QgY29udGV4dF9zdGF0ZTsKKyAgZHJtX3IxMjhfdGV4dHVyZV9yZWdzX3QgdGV4X3N0YXRlW1IxMjhfTUFYX1RFWFRVUkVfVU5JVFNdOworICB1bnNpZ25lZCBpbnQgZGlydHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2ZXJ0c2l6ZTsKLSB1bnNpZ25lZCBpbnQgdmNfZm9ybWF0OwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW1IxMjhfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKLSB1bnNpZ25lZCBpbnQgbmJveDsKKyAgdW5zaWduZWQgaW50IHZlcnRzaXplOworICB1bnNpZ25lZCBpbnQgdmNfZm9ybWF0OworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tSMTI4X05SX1NBUkVBX0NMSVBSRUNUU107CisgIHVuc2lnbmVkIGludCBuYm94OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGFzdF9mcmFtZTsKLSB1bnNpZ25lZCBpbnQgbGFzdF9kaXNwYXRjaDsKLSBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4X2xpc3RbUjEyOF9OUl9URVhfSEVBUFNdW1IxMjhfTlJfVEVYX1JFR0lPTlMgKyAxXTsKLSB1bnNpZ25lZCBpbnQgdGV4X2FnZVtSMTI4X05SX1RFWF9IRUFQU107CisgIHVuc2lnbmVkIGludCBsYXN0X2ZyYW1lOworICB1bnNpZ25lZCBpbnQgbGFzdF9kaXNwYXRjaDsKKyAgc3RydWN0IGRybV90ZXhfcmVnaW9uIHRleF9saXN0W1IxMjhfTlJfVEVYX0hFQVBTXVtSMTI4X05SX1RFWF9SRUdJT05TICsgMV07CisgIHVuc2lnbmVkIGludCB0ZXhfYWdlW1IxMjhfTlJfVEVYX0hFQVBTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGN0eF9vd25lcjsKLSBpbnQgcGZBbGxvd1BhZ2VGbGlwOwotIGludCBwZkN1cnJlbnRQYWdlOworICBpbnQgY3R4X293bmVyOworICBpbnQgcGZBbGxvd1BhZ2VGbGlwOworICBpbnQgcGZDdXJyZW50UGFnZTsKIH0gZHJtX3IxMjhfc2FyZWFfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SMTI4X0lOSVQgMHgwMApAQCAtMTQzLDEzOCArMTQzLDEzOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1IxMjhfR0VUUEFSQU0gMHgxMgogI2RlZmluZSBEUk1fUjEyOF9GTElQIDB4MTMKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfSU5JVCwgZHJtX3IxMjhfaW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfU1RBUlQgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX1NUQVJUKQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9JTklUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0lOSVQsIGRybV9yMTI4X2luaXRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0NFX1NUQVJUIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX1NUQVJUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0NFX1NUT1AgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NDRV9TVE9QLCBkcm1fcjEyOF9jY2Vfc3RvcF90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfUkVTRVQgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX1JFU0VUKQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfSURMRSBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfSURMRSkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfUkVTRVQgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9TVE9QIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NDRV9TVE9QLCBkcm1fcjEyOF9jY2Vfc3RvcF90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfUkVTRVQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9JRExFIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX0lETEUpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X1JFU0VUIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfUkVTRVQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9TV0FQIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1NXQVApCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NMRUFSIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DTEVBUiwgZHJtX3IxMjhfY2xlYXJfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfVkVSVEVYIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9WRVJURVgsIGRybV9yMTI4X3ZlcnRleF90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9JTkRJQ0VTIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9JTkRJQ0VTLCBkcm1fcjEyOF9pbmRpY2VzX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X1NXQVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9TV0FQKQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DTEVBUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DTEVBUiwgZHJtX3IxMjhfY2xlYXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfVkVSVEVYIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1ZFUlRFWCwgZHJtX3IxMjhfdmVydGV4X3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0lORElDRVMgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfSU5ESUNFUywgZHJtX3IxMjhfaW5kaWNlc190KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQkxJVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQkxJVCwgZHJtX3IxMjhfYmxpdF90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9ERVBUSCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfREVQVEgsIGRybV9yMTI4X2RlcHRoX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X1NUSVBQTEUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1NUSVBQTEUsIGRybV9yMTI4X3N0aXBwbGVfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQkxJVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9CTElULCBkcm1fcjEyOF9ibGl0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0RFUFRIIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0RFUFRILCBkcm1fcjEyOF9kZXB0aF90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9TVElQUExFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1NUSVBQTEUsIGRybV9yMTI4X3N0aXBwbGVfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfSU5ESVJFQ1QgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0lORElSRUNULCBkcm1fcjEyOF9pbmRpcmVjdF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfRlVMTFNDUkVFTiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfRlVMTFNDUkVFTiwgZHJtX3IxMjhfZnVsbHNjcmVlbl90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DTEVBUjIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NMRUFSMiwgZHJtX3IxMjhfY2xlYXIyX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0dFVFBBUkFNIERSTV9JT1dSKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfR0VUUEFSQU0sIGRybV9yMTI4X2dldHBhcmFtX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0ZMSVAgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfRkxJUCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfRlVMTFNDUkVFTiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9GVUxMU0NSRUVOLCBkcm1fcjEyOF9mdWxsc2NyZWVuX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NMRUFSMiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DTEVBUjIsIGRybV9yMTI4X2NsZWFyMl90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9HRVRQQVJBTSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfR0VUUEFSQU0sIGRybV9yMTI4X2dldHBhcmFtX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0ZMSVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9GTElQKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2luaXQgewotIGVudW0gewotIFIxMjhfSU5JVF9DQ0UgPSAweDAxLAotIFIxMjhfQ0xFQU5VUF9DQ0UgPSAweDAyCisgIGVudW0geworICAgIFIxMjhfSU5JVF9DQ0UgPSAweDAxLAorICAgIFIxMjhfQ0xFQU5VUF9DQ0UgPSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZnVuYzsKLSB1bnNpZ25lZCBsb25nIHNhcmVhX3ByaXZfb2Zmc2V0OwotIGludCBpc19wY2k7Ci0gaW50IGNjZV9tb2RlOworICB9IGZ1bmM7CisgIHVuc2lnbmVkIGxvbmcgc2FyZWFfcHJpdl9vZmZzZXQ7CisgIGludCBpc19wY2k7CisgIGludCBjY2VfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNjZV9zZWN1cmU7Ci0gaW50IHJpbmdfc2l6ZTsKLSBpbnQgdXNlY190aW1lb3V0OwotIHVuc2lnbmVkIGludCBmYl9icHA7CisgIGludCBjY2Vfc2VjdXJlOworICBpbnQgcmluZ19zaXplOworICBpbnQgdXNlY190aW1lb3V0OworICB1bnNpZ25lZCBpbnQgZmJfYnBwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQsIGJhY2tfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldCwgZnJvbnRfcGl0Y2g7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzcGFuX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIG1taW9fb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgcmluZ19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBzcGFuX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgcmluZ19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmluZ19ycHRyX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgYWdwX3RleHR1cmVzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyByaW5nX3JwdHJfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGFncF90ZXh0dXJlc19vZmZzZXQ7CiB9IGRybV9yMTI4X2luaXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9jY2Vfc3RvcCB7Ci0gaW50IGZsdXNoOwotIGludCBpZGxlOworICBpbnQgZmx1c2g7CisgIGludCBpZGxlOwogfSBkcm1fcjEyOF9jY2Vfc3RvcF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2NsZWFyIHsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IGNsZWFyX2NvbG9yOwotIHVuc2lnbmVkIGludCBjbGVhcl9kZXB0aDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgY2xlYXJfY29sb3I7CisgIHVuc2lnbmVkIGludCBjbGVhcl9kZXB0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvbG9yX21hc2s7Ci0gdW5zaWduZWQgaW50IGRlcHRoX21hc2s7CisgIHVuc2lnbmVkIGludCBjb2xvcl9tYXNrOworICB1bnNpZ25lZCBpbnQgZGVwdGhfbWFzazsKIH0gZHJtX3IxMjhfY2xlYXJfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X3ZlcnRleCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwcmltOwotIGludCBpZHg7Ci0gaW50IGNvdW50OwotIGludCBkaXNjYXJkOworICBpbnQgcHJpbTsKKyAgaW50IGlkeDsKKyAgaW50IGNvdW50OworICBpbnQgZGlzY2FyZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yMTI4X3ZlcnRleF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfaW5kaWNlcyB7Ci0gaW50IHByaW07Ci0gaW50IGlkeDsKKyAgaW50IHByaW07CisgIGludCBpZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdGFydDsKLSBpbnQgZW5kOwotIGludCBkaXNjYXJkOworICBpbnQgc3RhcnQ7CisgIGludCBlbmQ7CisgIGludCBkaXNjYXJkOwogfSBkcm1fcjEyOF9pbmRpY2VzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfYmxpdCB7Ci0gaW50IGlkeDsKLSBpbnQgcGl0Y2g7Ci0gaW50IG9mZnNldDsKKyAgaW50IGlkeDsKKyAgaW50IHBpdGNoOworICBpbnQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZm9ybWF0OwotIHVuc2lnbmVkIHNob3J0IHgsIHk7Ci0gdW5zaWduZWQgc2hvcnQgd2lkdGgsIGhlaWdodDsKKyAgaW50IGZvcm1hdDsKKyAgdW5zaWduZWQgc2hvcnQgeCwgeTsKKyAgdW5zaWduZWQgc2hvcnQgd2lkdGgsIGhlaWdodDsKIH0gZHJtX3IxMjhfYmxpdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2RlcHRoIHsKLSBlbnVtIHsKLSBSMTI4X1dSSVRFX1NQQU4gPSAweDAxLAotIFIxMjhfV1JJVEVfUElYRUxTID0gMHgwMiwKKyAgZW51bSB7CisgICAgUjEyOF9XUklURV9TUEFOID0gMHgwMSwKKyAgICBSMTI4X1dSSVRFX1BJWEVMUyA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFIxMjhfUkVBRF9TUEFOID0gMHgwMywKLSBSMTI4X1JFQURfUElYRUxTID0gMHgwNAotIH0gZnVuYzsKLSBpbnQgbjsKKyAgICBSMTI4X1JFQURfU1BBTiA9IDB4MDMsCisgICAgUjEyOF9SRUFEX1BJWEVMUyA9IDB4MDQKKyAgfSBmdW5jOworICBpbnQgbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IF9fdXNlciAqeDsKLSBpbnQgX191c2VyICp5OwotIHVuc2lnbmVkIGludCBfX3VzZXIgKmJ1ZmZlcjsKLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqbWFzazsKKyAgaW50IF9fdXNlciAqIHg7CisgIGludCBfX3VzZXIgKiB5OworICB1bnNpZ25lZCBpbnQgX191c2VyICogYnVmZmVyOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcjEyOF9kZXB0aF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfc3RpcHBsZSB7Ci0gdW5zaWduZWQgaW50IF9fdXNlciAqbWFzazsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIG1hc2s7CiB9IGRybV9yMTI4X3N0aXBwbGVfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9pbmRpcmVjdCB7Ci0gaW50IGlkeDsKLSBpbnQgc3RhcnQ7Ci0gaW50IGVuZDsKKyAgaW50IGlkeDsKKyAgaW50IHN0YXJ0OworICBpbnQgZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGlzY2FyZDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9yMTI4X2luZGlyZWN0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9mdWxsc2NyZWVuIHsKLSBlbnVtIHsKKyAgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFIxMjhfSU5JVF9GVUxMU0NSRUVOID0gMHgwMSwKLSBSMTI4X0NMRUFOVVBfRlVMTFNDUkVFTiA9IDB4MDIKLSB9IGZ1bmM7CisgICAgUjEyOF9JTklUX0ZVTExTQ1JFRU4gPSAweDAxLAorICAgIFIxMjhfQ0xFQU5VUF9GVUxMU0NSRUVOID0gMHgwMgorICB9IGZ1bmM7CiB9IGRybV9yMTI4X2Z1bGxzY3JlZW5fdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFIxMjhfUEFSQU1fSVJRX05SIDEKIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2dldHBhcmFtIHsKLSBpbnQgcGFyYW07Ci0gdm9pZCBfX3VzZXIgKnZhbHVlOworICBpbnQgcGFyYW07CisgIHZvaWQgX191c2VyICogdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcjEyOF9nZXRwYXJhbV90OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9yYWRlb25fZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9yYWRlb25fZHJtLmgKaW5kZXggZmQwYTNhOS4uNmZiODZmMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vcmFkZW9uX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3JhZGVvbl9kcm0uaApAQCAtMTc5LDM0ICsxNzksMzQgQEAKICNkZWZpbmUgUkFERU9OX0NNRF9XQUlUIDgKICNkZWZpbmUgUkFERU9OX0NNRF9WRUNMSU5FQVIgOQogdHlwZWRlZiB1bmlvbiB7Ci0gaW50IGk7CisgIGludCBpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhZDAsIHBhZDEsIHBhZDI7Ci0gfSBoZWFkZXI7Ci0gc3RydWN0IHsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWQwLCBwYWQxLCBwYWQyOworICB9IGhlYWRlcjsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFja2V0X2lkLCBwYWQwLCBwYWQxOwotIH0gcGFja2V0OwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgb2Zmc2V0LCBzdHJpZGUsIGNvdW50OworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhY2tldF9pZCwgcGFkMCwgcGFkMTsKKyAgfSBwYWNrZXQ7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgb2Zmc2V0LCBzdHJpZGUsIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHNjYWxhcnM7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBvZmZzZXQsIHN0cmlkZSwgY291bnQ7Ci0gfSB2ZWN0b3JzOworICB9IHNjYWxhcnM7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgb2Zmc2V0LCBzdHJpZGUsIGNvdW50OworICB9IHZlY3RvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgYWRkcl9sbywgYWRkcl9oaSwgY291bnQ7Ci0gfSB2ZWNsaW5lYXI7Ci0gc3RydWN0IHsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBhZGRyX2xvLCBhZGRyX2hpLCBjb3VudDsKKyAgfSB2ZWNsaW5lYXI7CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGJ1Zl9pZHgsIHBhZDAsIHBhZDE7Ci0gfSBkbWE7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBmbGFncywgcGFkMCwgcGFkMTsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBidWZfaWR4LCBwYWQwLCBwYWQxOworICB9IGRtYTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBmbGFncywgcGFkMCwgcGFkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB3YWl0OworICB9IHdhaXQ7CiB9IGRybV9yYWRlb25fY21kX2hlYWRlcl90OwogI2RlZmluZSBSQURFT05fV0FJVF8yRCAweDEKICNkZWZpbmUgUkFERU9OX1dBSVRfM0QgMHgyCkBAIC0yMzYsNDIgKzIzNiw0MiBAQAogI2RlZmluZSBSMzAwX0NNRF9SNTAwRlAgOQogdHlwZWRlZiB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB1OwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFkMCwgcGFkMSwgcGFkMjsKLSB9IGhlYWRlcjsKKyAgdW5zaWduZWQgaW50IHU7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFkMCwgcGFkMSwgcGFkMjsKKyAgfSBoZWFkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgY291bnQsIHJlZ2xvLCByZWdoaTsKLSB9IHBhY2tldDA7Ci0gc3RydWN0IHsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBjb3VudCwgcmVnbG8sIHJlZ2hpOworICB9IHBhY2tldDA7CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGNvdW50LCBhZHJsbywgYWRyaGk7Ci0gfSB2cHU7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWNrZXQsIHBhZDAsIHBhZDE7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgY291bnQsIGFkcmxvLCBhZHJoaTsKKyAgfSB2cHU7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFja2V0LCBwYWQwLCBwYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHBhY2tldDM7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWNrZXQ7Ci0gdW5zaWduZWQgc2hvcnQgY291bnQ7CisgIH0gcGFja2V0MzsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWNrZXQ7CisgICAgdW5zaWduZWQgc2hvcnQgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZGVsYXk7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBidWZfaWR4LCBwYWQwLCBwYWQxOwotIH0gZG1hOworICB9IGRlbGF5OworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGJ1Zl9pZHgsIHBhZDAsIHBhZDE7CisgIH0gZG1hOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGZsYWdzLCBwYWQwLCBwYWQxOwotIH0gd2FpdDsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGZsYWdzLCBwYWQwLCBwYWQxOworICB9IHdhaXQ7CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHJlZywgbl9idWZzLCBmbGFnczsKLSB9IHNjcmF0Y2g7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBjb3VudCwgYWRybG8sIGFkcmhpX2ZsYWdzOworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHJlZywgbl9idWZzLCBmbGFnczsKKyAgfSBzY3JhdGNoOworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGNvdW50LCBhZHJsbywgYWRyaGlfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gcjUwMGZwOworICB9IHI1MDBmcDsKIH0gZHJtX3IzMDBfY21kX2hlYWRlcl90OwogI2RlZmluZSBSQURFT05fRlJPTlQgMHgxCiAjZGVmaW5lIFJBREVPTl9CQUNLIDB4MgpAQCAtMzE0LDUyMSArMzE0LDU1MSBAQAogI2RlZmluZSBSQURFT05fT0ZGU0VUX01BU0sgKFJBREVPTl9PRkZTRVRfQUxJR04gLSAxKQogI2VuZGlmCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgaW50IHJlZDsKKyAgdW5zaWduZWQgaW50IHJlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGdyZWVuOwotIHVuc2lnbmVkIGludCBibHVlOwotIHVuc2lnbmVkIGludCBhbHBoYTsKKyAgdW5zaWduZWQgaW50IGdyZWVuOworICB1bnNpZ25lZCBpbnQgYmx1ZTsKKyAgdW5zaWduZWQgaW50IGFscGhhOwogfSByYWRlb25fY29sb3JfcmVnc190OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgcHBfbWlzYzsKLSB1bnNpZ25lZCBpbnQgcHBfZm9nX2NvbG9yOwotIHVuc2lnbmVkIGludCByZV9zb2xpZF9jb2xvcjsKKyAgdW5zaWduZWQgaW50IHBwX21pc2M7CisgIHVuc2lnbmVkIGludCBwcF9mb2dfY29sb3I7CisgIHVuc2lnbmVkIGludCByZV9zb2xpZF9jb2xvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJiM2RfYmxlbmRjbnRsOwotIHVuc2lnbmVkIGludCByYjNkX2RlcHRob2Zmc2V0OwotIHVuc2lnbmVkIGludCByYjNkX2RlcHRocGl0Y2g7Ci0gdW5zaWduZWQgaW50IHJiM2RfenN0ZW5jaWxjbnRsOworICB1bnNpZ25lZCBpbnQgcmIzZF9ibGVuZGNudGw7CisgIHVuc2lnbmVkIGludCByYjNkX2RlcHRob2Zmc2V0OworICB1bnNpZ25lZCBpbnQgcmIzZF9kZXB0aHBpdGNoOworICB1bnNpZ25lZCBpbnQgcmIzZF96c3RlbmNpbGNudGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwcF9jbnRsOwotIHVuc2lnbmVkIGludCByYjNkX2NudGw7Ci0gdW5zaWduZWQgaW50IHJiM2RfY29sb3JvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHJlX3dpZHRoX2hlaWdodDsKKyAgdW5zaWduZWQgaW50IHBwX2NudGw7CisgIHVuc2lnbmVkIGludCByYjNkX2NudGw7CisgIHVuc2lnbmVkIGludCByYjNkX2NvbG9yb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgcmVfd2lkdGhfaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmIzZF9jb2xvcnBpdGNoOwotIHVuc2lnbmVkIGludCBzZV9jbnRsOwotIHVuc2lnbmVkIGludCBzZV9jb29yZF9mbXQ7Ci0gdW5zaWduZWQgaW50IHJlX2xpbmVfcGF0dGVybjsKKyAgdW5zaWduZWQgaW50IHJiM2RfY29sb3JwaXRjaDsKKyAgdW5zaWduZWQgaW50IHNlX2NudGw7CisgIHVuc2lnbmVkIGludCBzZV9jb29yZF9mbXQ7CisgIHVuc2lnbmVkIGludCByZV9saW5lX3BhdHRlcm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByZV9saW5lX3N0YXRlOwotIHVuc2lnbmVkIGludCBzZV9saW5lX3dpZHRoOwotIHVuc2lnbmVkIGludCBwcF9sdW1fbWF0cml4OwotIHVuc2lnbmVkIGludCBwcF9yb3RfbWF0cml4XzA7CisgIHVuc2lnbmVkIGludCByZV9saW5lX3N0YXRlOworICB1bnNpZ25lZCBpbnQgc2VfbGluZV93aWR0aDsKKyAgdW5zaWduZWQgaW50IHBwX2x1bV9tYXRyaXg7CisgIHVuc2lnbmVkIGludCBwcF9yb3RfbWF0cml4XzA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwcF9yb3RfbWF0cml4XzE7Ci0gdW5zaWduZWQgaW50IHJiM2Rfc3RlbmNpbHJlZm1hc2s7Ci0gdW5zaWduZWQgaW50IHJiM2Rfcm9wY250bDsKLSB1bnNpZ25lZCBpbnQgcmIzZF9wbGFuZW1hc2s7CisgIHVuc2lnbmVkIGludCBwcF9yb3RfbWF0cml4XzE7CisgIHVuc2lnbmVkIGludCByYjNkX3N0ZW5jaWxyZWZtYXNrOworICB1bnNpZ25lZCBpbnQgcmIzZF9yb3BjbnRsOworICB1bnNpZ25lZCBpbnQgcmIzZF9wbGFuZW1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzZV92cG9ydF94c2NhbGU7Ci0gdW5zaWduZWQgaW50IHNlX3Zwb3J0X3hvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHNlX3Zwb3J0X3lzY2FsZTsKLSB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfeW9mZnNldDsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3hzY2FsZTsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3hvZmZzZXQ7CisgIHVuc2lnbmVkIGludCBzZV92cG9ydF95c2NhbGU7CisgIHVuc2lnbmVkIGludCBzZV92cG9ydF95b2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfenNjYWxlOwotIHVuc2lnbmVkIGludCBzZV92cG9ydF96b2Zmc2V0OwotIHVuc2lnbmVkIGludCBzZV9jbnRsX3N0YXR1czsKLSB1bnNpZ25lZCBpbnQgcmVfdG9wX2xlZnQ7CisgIHVuc2lnbmVkIGludCBzZV92cG9ydF96c2NhbGU7CisgIHVuc2lnbmVkIGludCBzZV92cG9ydF96b2Zmc2V0OworICB1bnNpZ25lZCBpbnQgc2VfY250bF9zdGF0dXM7CisgIHVuc2lnbmVkIGludCByZV90b3BfbGVmdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlX21pc2M7CisgIHVuc2lnbmVkIGludCByZV9taXNjOwogfSBkcm1fcmFkZW9uX2NvbnRleHRfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBzZV96Ymlhc19mYWN0b3I7CisgIHVuc2lnbmVkIGludCBzZV96Ymlhc19mYWN0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzZV96Ymlhc19jb25zdGFudDsKKyAgdW5zaWduZWQgaW50IHNlX3piaWFzX2NvbnN0YW50OwogfSBkcm1fcmFkZW9uX2NvbnRleHQyX3JlZ3NfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgcHBfdHhmaWx0ZXI7CisgIHVuc2lnbmVkIGludCBwcF90eGZpbHRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBwX3R4Zm9ybWF0OwotIHVuc2lnbmVkIGludCBwcF90eG9mZnNldDsKLSB1bnNpZ25lZCBpbnQgcHBfdHhjYmxlbmQ7Ci0gdW5zaWduZWQgaW50IHBwX3R4YWJsZW5kOworICB1bnNpZ25lZCBpbnQgcHBfdHhmb3JtYXQ7CisgIHVuc2lnbmVkIGludCBwcF90eG9mZnNldDsKKyAgdW5zaWduZWQgaW50IHBwX3R4Y2JsZW5kOworICB1bnNpZ25lZCBpbnQgcHBfdHhhYmxlbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwcF90ZmFjdG9yOwotIHVuc2lnbmVkIGludCBwcF9ib3JkZXJfY29sb3I7CisgIHVuc2lnbmVkIGludCBwcF90ZmFjdG9yOworICB1bnNpZ25lZCBpbnQgcHBfYm9yZGVyX2NvbG9yOwogfSBkcm1fcmFkZW9uX3RleHR1cmVfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3RhcnQ7Ci0gdW5zaWduZWQgaW50IGZpbmlzaDsKLSB1bnNpZ25lZCBpbnQgcHJpbTo4OwotIHVuc2lnbmVkIGludCBzdGF0ZWlkeDo4OworICB1bnNpZ25lZCBpbnQgc3RhcnQ7CisgIHVuc2lnbmVkIGludCBmaW5pc2g7CisgIHVuc2lnbmVkIGludCBwcmltIDogODsKKyAgdW5zaWduZWQgaW50IHN0YXRlaWR4IDogODsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bXZlcnRzOjE2OwotIHVuc2lnbmVkIGludCB2Y19mb3JtYXQ7CisgIHVuc2lnbmVkIGludCBudW12ZXJ0cyA6IDE2OworICB1bnNpZ25lZCBpbnQgdmNfZm9ybWF0OwogfSBkcm1fcmFkZW9uX3ByaW1fdDsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHJtX3JhZGVvbl9jb250ZXh0X3JlZ3NfdCBjb250ZXh0OwotIGRybV9yYWRlb25fdGV4dHVyZV9yZWdzX3QgdGV4W1JBREVPTl9NQVhfVEVYVFVSRV9VTklUU107Ci0gZHJtX3JhZGVvbl9jb250ZXh0Ml9yZWdzX3QgY29udGV4dDI7Ci0gdW5zaWduZWQgaW50IGRpcnR5OworICBkcm1fcmFkZW9uX2NvbnRleHRfcmVnc190IGNvbnRleHQ7CisgIGRybV9yYWRlb25fdGV4dHVyZV9yZWdzX3QgdGV4W1JBREVPTl9NQVhfVEVYVFVSRV9VTklUU107CisgIGRybV9yYWRlb25fY29udGV4dDJfcmVnc190IGNvbnRleHQyOworICB1bnNpZ25lZCBpbnQgZGlydHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcmFkZW9uX3N0YXRlX3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gZHJtX3JhZGVvbl9jb250ZXh0X3JlZ3NfdCBjb250ZXh0X3N0YXRlOwotIGRybV9yYWRlb25fdGV4dHVyZV9yZWdzX3QgdGV4X3N0YXRlW1JBREVPTl9NQVhfVEVYVFVSRV9VTklUU107CisgIGRybV9yYWRlb25fY29udGV4dF9yZWdzX3QgY29udGV4dF9zdGF0ZTsKKyAgZHJtX3JhZGVvbl90ZXh0dXJlX3JlZ3NfdCB0ZXhfc3RhdGVbUkFERU9OX01BWF9URVhUVVJFX1VOSVRTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRpcnR5OwotIHVuc2lnbmVkIGludCB2ZXJ0c2l6ZTsKLSB1bnNpZ25lZCBpbnQgdmNfZm9ybWF0OwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW1JBREVPTl9OUl9TQVJFQV9DTElQUkVDVFNdOworICB1bnNpZ25lZCBpbnQgZGlydHk7CisgIHVuc2lnbmVkIGludCB2ZXJ0c2l6ZTsKKyAgdW5zaWduZWQgaW50IHZjX2Zvcm1hdDsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgYm94ZXNbUkFERU9OX05SX1NBUkVBX0NMSVBSRUNUU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBuYm94OwotIHVuc2lnbmVkIGludCBsYXN0X2ZyYW1lOwotIHVuc2lnbmVkIGludCBsYXN0X2Rpc3BhdGNoOwotIHVuc2lnbmVkIGludCBsYXN0X2NsZWFyOworICB1bnNpZ25lZCBpbnQgbmJveDsKKyAgdW5zaWduZWQgaW50IGxhc3RfZnJhbWU7CisgIHVuc2lnbmVkIGludCBsYXN0X2Rpc3BhdGNoOworICB1bnNpZ25lZCBpbnQgbGFzdF9jbGVhcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV90ZXhfcmVnaW9uIHRleF9saXN0W1JBREVPTl9OUl9URVhfSEVBUFNdW1JBREVPTl9OUl9URVhfUkVHSU9OUyArCi0gMV07Ci0gdW5zaWduZWQgaW50IHRleF9hZ2VbUkFERU9OX05SX1RFWF9IRUFQU107Ci0gaW50IGN0eF9vd25lcjsKKyAgc3RydWN0IGRybV90ZXhfcmVnaW9uIHRleF9saXN0W1JBREVPTl9OUl9URVhfSEVBUFNdW1JBREVPTl9OUl9URVhfUkVHSU9OUyArIDFdOworICB1bnNpZ25lZCBpbnQgdGV4X2FnZVtSQURFT05fTlJfVEVYX0hFQVBTXTsKKyAgaW50IGN0eF9vd25lcjsKKyAgaW50IHBmU3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwZlN0YXRlOwotIGludCBwZkN1cnJlbnRQYWdlOwotIGludCBjcnRjMl9iYXNlOwotIGludCB0aWxpbmdfZW5hYmxlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBwZkN1cnJlbnRQYWdlOworICBpbnQgY3J0YzJfYmFzZTsKKyAgaW50IHRpbGluZ19lbmFibGVkOwogfSBkcm1fcmFkZW9uX3NhcmVhX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0NQX0lOSVQgMHgwMAogI2RlZmluZSBEUk1fUkFERU9OX0NQX1NUQVJUIDB4MDEKICNkZWZpbmUgRFJNX1JBREVPTl9DUF9TVE9QIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQ1BfUkVTRVQgMHgwMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DUF9JRExFIDB4MDQKICNkZWZpbmUgRFJNX1JBREVPTl9SRVNFVCAweDA1CiAjZGVmaW5lIERSTV9SQURFT05fRlVMTFNDUkVFTiAweDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX1NXQVAgMHgwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DTEVBUiAweDA4CiAjZGVmaW5lIERSTV9SQURFT05fVkVSVEVYIDB4MDkKICNkZWZpbmUgRFJNX1JBREVPTl9JTkRJQ0VTIDB4MEEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fTk9UX1VTRUQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fU1RJUFBMRSAweDBDCiAjZGVmaW5lIERSTV9SQURFT05fSU5ESVJFQ1QgMHgwRAogI2RlZmluZSBEUk1fUkFERU9OX1RFWFRVUkUgMHgwRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9WRVJURVgyIDB4MEYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQ01EQlVGIDB4MTAKICNkZWZpbmUgRFJNX1JBREVPTl9HRVRQQVJBTSAweDExCiAjZGVmaW5lIERSTV9SQURFT05fRkxJUCAweDEyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0FMTE9DIDB4MTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fRlJFRSAweDE0CiAjZGVmaW5lIERSTV9SQURFT05fSU5JVF9IRUFQIDB4MTUKICNkZWZpbmUgRFJNX1JBREVPTl9JUlFfRU1JVCAweDE2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0lSUV9XQUlUIDB4MTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQ1BfUkVTVU1FIDB4MTgKICNkZWZpbmUgRFJNX1JBREVPTl9TRVRQQVJBTSAweDE5CiAjZGVmaW5lIERSTV9SQURFT05fU1VSRl9BTExPQyAweDFhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX1NVUkZfRlJFRSAweDFiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9JTkZPIDB4MWMKICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fQ1JFQVRFIDB4MWQKICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fTU1BUCAweDFlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9QUkVBRCAweDIxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9QV1JJVEUgMHgyMgogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9TRVRfRE9NQUlOIDB4MjMKICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fV0FJVF9JRExFIDB4MjQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQ1MgMHgyNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9JTkZPIDB4MjcKICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fU0VUX1RJTElORyAweDI4CiAjZGVmaW5lIERSTV9SQURFT05fR0VNX0dFVF9USUxJTkcgMHgyOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fQlVTWSAweDJhCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9WQSAweDJiCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9JTklULCBkcm1fcmFkZW9uX2luaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9TVEFSVCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1NUQVJUKQorI2RlZmluZSBEUk1fUkFERU9OX0dFTV9PUCAweDJjCisjZGVmaW5lIERSTV9SQURFT05fR0VNX1VTRVJQVFIgMHgyZAorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9JTklULCBkcm1fcmFkZW9uX2luaXRfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfU1RPUCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9TVE9QLCBkcm1fcmFkZW9uX2NwX3N0b3BfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9SRVNFVCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1JFU0VUKQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX0lETEUgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9JRExFKQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1JFU0VUIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfU1RBUlQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1NUQVJUKQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1NUT1AgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9TVE9QLCBkcm1fcmFkZW9uX2NwX3N0b3BfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9SRVNFVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfSURMRSBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfSURMRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fRlVMTFNDUkVFTiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9GVUxMU0NSRUVOLCBkcm1fcmFkZW9uX2Z1bGxzY3JlZW5fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TV0FQIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU1dBUCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DTEVBUiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DTEVBUiwgZHJtX3JhZGVvbl9jbGVhcl90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1ZFUlRFWCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9WRVJURVgsIGRybV9yYWRlb25fdmVydGV4X3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fUkVTRVQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1JFU0VUKQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0ZVTExTQ1JFRU4gRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9GVUxMU0NSRUVOLCBkcm1fcmFkZW9uX2Z1bGxzY3JlZW5fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TV0FQIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TV0FQKQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NMRUFSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ0xFQVIsIGRybV9yYWRlb25fY2xlYXJfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSU5ESUNFUyBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JTkRJQ0VTLCBkcm1fcmFkZW9uX2luZGljZXNfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TVElQUExFIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NUSVBQTEUsIGRybV9yYWRlb25fc3RpcHBsZV90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1ZFUlRFWCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1ZFUlRFWCwgZHJtX3JhZGVvbl92ZXJ0ZXhfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9JTkRJQ0VTIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSU5ESUNFUywgZHJtX3JhZGVvbl9pbmRpY2VzX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fU1RJUFBMRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NUSVBQTEUsIGRybV9yYWRlb25fc3RpcHBsZV90KQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lORElSRUNUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0lORElSRUNULCBkcm1fcmFkZW9uX2luZGlyZWN0X3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1RFWFRVUkUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fVEVYVFVSRSwgZHJtX3JhZGVvbl90ZXh0dXJlX3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1ZFUlRFWDIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fVkVSVEVYMiwgZHJtX3JhZGVvbl92ZXJ0ZXgyX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ01EQlVGIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NNREJVRiwgZHJtX3JhZGVvbl9jbWRfYnVmZmVyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fVkVSVEVYMiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1ZFUlRFWDIsIGRybV9yYWRlb25fdmVydGV4Ml90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NNREJVRiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NNREJVRiwgZHJtX3JhZGVvbl9jbWRfYnVmZmVyX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VUUEFSQU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VUUEFSQU0sIGRybV9yYWRlb25fZ2V0cGFyYW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9GTElQIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fRkxJUCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fRkxJUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fRkxJUCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9BTExPQyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9BTExPQywgZHJtX3JhZGVvbl9tZW1fYWxsb2NfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9GUkVFIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0ZSRUUsIGRybV9yYWRlb25fbWVtX2ZyZWVfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9JTklUX0hFQVAgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSU5JVF9IRUFQLCBkcm1fcmFkZW9uX21lbV9pbml0X2hlYXBfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9GUkVFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fRlJFRSwgZHJtX3JhZGVvbl9tZW1fZnJlZV90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lOSVRfSEVBUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0lOSVRfSEVBUCwgZHJtX3JhZGVvbl9tZW1faW5pdF9oZWFwX3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lSUV9FTUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0lSUV9FTUlULCBkcm1fcmFkZW9uX2lycV9lbWl0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSVJRX1dBSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JUlFfV0FJVCwgZHJtX3JhZGVvbl9pcnFfd2FpdF90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1JFU1VNRSBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfUkVTVU1FKQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NFVFBBUkFNIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU0VUUEFSQU0sIGRybV9yYWRlb25fc2V0cGFyYW1fdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSVJRX1dBSVQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSVJRX1dBSVQsIGRybV9yYWRlb25faXJxX3dhaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9SRVNVTUUgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9SRVNVTUUpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fU0VUUEFSQU0gRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU0VUUEFSQU0sIGRybV9yYWRlb25fc2V0cGFyYW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TVVJGX0FMTE9DIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NVUkZfQUxMT0MsIGRybV9yYWRlb25fc3VyZmFjZV9hbGxvY190KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TVVJGX0ZSRUUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU1VSRl9GUkVFLCBkcm1fcmFkZW9uX3N1cmZhY2VfZnJlZV90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NVUkZfQUxMT0MgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TVVJGX0FMTE9DLCBkcm1fcmFkZW9uX3N1cmZhY2VfYWxsb2NfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TVVJGX0ZSRUUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TVVJGX0ZSRUUsIGRybV9yYWRlb25fc3VyZmFjZV9mcmVlX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX0lORk8gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX0lORk8sIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9pbmZvKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9DUkVBVEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX0NSRUFURSwgc3RydWN0IGRybV9yYWRlb25fZ2VtX2NyZWF0ZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fTU1BUCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fTU1BUCwgc3RydWN0IGRybV9yYWRlb25fZ2VtX21tYXApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9NTUFQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9NTUFQLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fbW1hcCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fUFJFQUQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX1BSRUFELCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fcHJlYWQpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX1BXUklURSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fUFdSSVRFLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fcHdyaXRlKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9TRVRfRE9NQUlOIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9TRVRfRE9NQUlOLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fc2V0X2RvbWFpbikKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fV0FJVF9JRExFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX1dBSVRfSURMRSwgc3RydWN0IGRybV9yYWRlb25fZ2VtX3dhaXRfaWRsZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX1dBSVRfSURMRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9XQUlUX0lETEUsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV93YWl0X2lkbGUpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1MgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1MsIHN0cnVjdCBkcm1fcmFkZW9uX2NzKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lORk8gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSU5GTywgc3RydWN0IGRybV9yYWRlb25faW5mbykKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fU0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fU0VUX1RJTElORywgc3RydWN0IGRybV9yYWRlb25fZ2VtX3NldF90aWxpbmcpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX0dFVF9USUxJTkcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX0dFVF9USUxJTkcsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9nZXRfdGlsaW5nKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fR0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fR0VUX1RJTElORywgc3RydWN0IGRybV9yYWRlb25fZ2VtX2dldF90aWxpbmcpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX0JVU1kgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX0JVU1ksIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9idXN5KQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9WQSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fVkEsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV92YSkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fT1AgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX09QLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fb3ApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9VU0VSUFRSIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9VU0VSUFRSLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fdXNlcnB0cikKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25faW5pdCB7Ci0gZW51bSB7CisgIGVudW0geworICAgIFJBREVPTl9JTklUX0NQID0gMHgwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkFERU9OX0lOSVRfQ1AgPSAweDAxLAotIFJBREVPTl9DTEVBTlVQX0NQID0gMHgwMiwKLSBSQURFT05fSU5JVF9SMjAwX0NQID0gMHgwMywKLSBSQURFT05fSU5JVF9SMzAwX0NQID0gMHgwNCwKKyAgICBSQURFT05fQ0xFQU5VUF9DUCA9IDB4MDIsCisgICAgUkFERU9OX0lOSVRfUjIwMF9DUCA9IDB4MDMsCisgICAgUkFERU9OX0lOSVRfUjMwMF9DUCA9IDB4MDQsCisgICAgUkFERU9OX0lOSVRfUjYwMF9DUCA9IDB4MDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkFERU9OX0lOSVRfUjYwMF9DUCA9IDB4MDUKLSB9IGZ1bmM7Ci0gdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKLSBpbnQgaXNfcGNpOworICB9IGZ1bmM7CisgIHVuc2lnbmVkIGxvbmcgc2FyZWFfcHJpdl9vZmZzZXQ7CisgIGludCBpc19wY2k7CisgIGludCBjcF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY3BfbW9kZTsKLSBpbnQgZ2FydF9zaXplOwotIGludCByaW5nX3NpemU7Ci0gaW50IHVzZWNfdGltZW91dDsKKyAgaW50IGdhcnRfc2l6ZTsKKyAgaW50IHJpbmdfc2l6ZTsKKyAgaW50IHVzZWNfdGltZW91dDsKKyAgdW5zaWduZWQgaW50IGZiX2JwcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZiX2JwcDsKLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQsIGJhY2tfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldCwgZnJvbnRfcGl0Y2g7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQsIGRlcHRoX3BpdGNoOwotIHVuc2lnbmVkIGxvbmcgZmJfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyByaW5nX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgcmluZ19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgcmluZ19ycHRyX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByaW5nX3JwdHJfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgYnVmZmVyc19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBnYXJ0X3RleHR1cmVzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBidWZmZXJzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBnYXJ0X3RleHR1cmVzX29mZnNldDsKIH0gZHJtX3JhZGVvbl9pbml0X3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9jcF9zdG9wIHsKLSBpbnQgZmx1c2g7Ci0gaW50IGlkbGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgZmx1c2g7CisgIGludCBpZGxlOwogfSBkcm1fcmFkZW9uX2NwX3N0b3BfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2Z1bGxzY3JlZW4gewotIGVudW0gewotIFJBREVPTl9JTklUX0ZVTExTQ1JFRU4gPSAweDAxLAotIFJBREVPTl9DTEVBTlVQX0ZVTExTQ1JFRU4gPSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZnVuYzsKKyAgZW51bSB7CisgICAgUkFERU9OX0lOSVRfRlVMTFNDUkVFTiA9IDB4MDEsCisgICAgUkFERU9OX0NMRUFOVVBfRlVMTFNDUkVFTiA9IDB4MDIKKyAgfSBmdW5jOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX3JhZGVvbl9mdWxsc2NyZWVuX3Q7CiAjZGVmaW5lIENMRUFSX1gxIDAKICNkZWZpbmUgQ0xFQVJfWTEgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0xFQVJfWDIgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0xFQVJfWTIgMwogI2RlZmluZSBDTEVBUl9ERVBUSCA0CiB0eXBlZGVmIHVuaW9uIGRybV9yYWRlb25fY2xlYXJfcmVjdCB7CisgIGZsb2F0IGZbNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZsb2F0IGZbNV07Ci0gdW5zaWduZWQgaW50IHVpWzVdOworICB1bnNpZ25lZCBpbnQgdWlbNV07CiB9IGRybV9yYWRlb25fY2xlYXJfcmVjdF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9jbGVhciB7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVuc2lnbmVkIGludCBjbGVhcl9jb2xvcjsKLSB1bnNpZ25lZCBpbnQgY2xlYXJfZGVwdGg7Ci0gdW5zaWduZWQgaW50IGNvbG9yX21hc2s7CisgIHVuc2lnbmVkIGludCBjbGVhcl9jb2xvcjsKKyAgdW5zaWduZWQgaW50IGNsZWFyX2RlcHRoOworICB1bnNpZ25lZCBpbnQgY29sb3JfbWFzazsKKyAgdW5zaWduZWQgaW50IGRlcHRoX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXB0aF9tYXNrOwotIGRybV9yYWRlb25fY2xlYXJfcmVjdF90IF9fdXNlciAqZGVwdGhfYm94ZXM7CisgIGRybV9yYWRlb25fY2xlYXJfcmVjdF90IF9fdXNlciAqIGRlcHRoX2JveGVzOwogfSBkcm1fcmFkZW9uX2NsZWFyX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3ZlcnRleCB7CisgIGludCBwcmltOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcHJpbTsKLSBpbnQgaWR4OwotIGludCBjb3VudDsKLSBpbnQgZGlzY2FyZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBpZHg7CisgIGludCBjb3VudDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9yYWRlb25fdmVydGV4X3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9pbmRpY2VzIHsKLSBpbnQgcHJpbTsKLSBpbnQgaWR4OworICBpbnQgcHJpbTsKKyAgaW50IGlkeDsKKyAgaW50IHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RhcnQ7Ci0gaW50IGVuZDsKLSBpbnQgZGlzY2FyZDsKKyAgaW50IGVuZDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9yYWRlb25faW5kaWNlc190OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fdmVydGV4MiB7Ci0gaW50IGlkeDsKLSBpbnQgZGlzY2FyZDsKLSBpbnQgbnJfc3RhdGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fcmFkZW9uX3N0YXRlX3QgX191c2VyICpzdGF0ZTsKLSBpbnQgbnJfcHJpbXM7Ci0gZHJtX3JhZGVvbl9wcmltX3QgX191c2VyICpwcmltOworICBpbnQgaWR4OworICBpbnQgZGlzY2FyZDsKKyAgaW50IG5yX3N0YXRlczsKKyAgZHJtX3JhZGVvbl9zdGF0ZV90IF9fdXNlciAqIHN0YXRlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IG5yX3ByaW1zOworICBkcm1fcmFkZW9uX3ByaW1fdCBfX3VzZXIgKiBwcmltOwogfSBkcm1fcmFkZW9uX3ZlcnRleDJfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2NtZF9idWZmZXIgewotIGludCBidWZzejsKLSBjaGFyIF9fdXNlciAqYnVmOwotIGludCBuYm94OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKmJveGVzOworICBpbnQgYnVmc3o7CisgIGNoYXIgX191c2VyICogYnVmOworICBpbnQgbmJveDsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICogYm94ZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcmFkZW9uX2NtZF9idWZmZXJfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fdGV4X2ltYWdlIHsKLSB1bnNpZ25lZCBpbnQgeCwgeTsKKyAgdW5zaWduZWQgaW50IHgsIHk7CisgIHVuc2lnbmVkIGludCB3aWR0aCwgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgd2lkdGgsIGhlaWdodDsKLSBjb25zdCB2b2lkIF9fdXNlciAqZGF0YTsKKyAgY29uc3Qgdm9pZCBfX3VzZXIgKiBkYXRhOwogfSBkcm1fcmFkZW9uX3RleF9pbWFnZV90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl90ZXh0dXJlIHsKKyAgdW5zaWduZWQgaW50IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG9mZnNldDsKLSBpbnQgcGl0Y2g7Ci0gaW50IGZvcm1hdDsKLSBpbnQgd2lkdGg7CisgIGludCBwaXRjaDsKKyAgaW50IGZvcm1hdDsKKyAgaW50IHdpZHRoOworICBpbnQgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaGVpZ2h0OwotIGRybV9yYWRlb25fdGV4X2ltYWdlX3QgX191c2VyICppbWFnZTsKKyAgZHJtX3JhZGVvbl90ZXhfaW1hZ2VfdCBfX3VzZXIgKiBpbWFnZTsKIH0gZHJtX3JhZGVvbl90ZXh0dXJlX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3N0aXBwbGUgeworICB1bnNpZ25lZCBpbnQgX191c2VyICogbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IF9fdXNlciAqbWFzazsKIH0gZHJtX3JhZGVvbl9zdGlwcGxlX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2luZGlyZWN0IHsKLSBpbnQgaWR4OworICBpbnQgaWR4OworICBpbnQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdGFydDsKLSBpbnQgZW5kOwotIGludCBkaXNjYXJkOworICBpbnQgZW5kOworICBpbnQgZGlzY2FyZDsKIH0gZHJtX3JhZGVvbl9pbmRpcmVjdF90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0NBUkRfUENJIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9DQVJEX0FHUCAxCiAjZGVmaW5lIFJBREVPTl9DQVJEX1BDSUUgMgogI2RlZmluZSBSQURFT05fUEFSQU1fR0FSVF9CVUZGRVJfT0ZGU0VUIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9MQVNUX0ZSQU1FIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9MQVNUX0RJU1BBVENIIDMKICNkZWZpbmUgUkFERU9OX1BBUkFNX0xBU1RfQ0xFQVIgNAogI2RlZmluZSBSQURFT05fUEFSQU1fSVJRX05SIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9HQVJUX0JBU0UgNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX1JFR0lTVEVSX0hBTkRMRSA3CiAjZGVmaW5lIFJBREVPTl9QQVJBTV9TVEFUVVNfSEFORExFIDgKICNkZWZpbmUgUkFERU9OX1BBUkFNX1NBUkVBX0hBTkRMRSA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fUEFSQU1fR0FSVF9URVhfSEFORExFIDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fUEFSQU1fU0NSQVRDSF9PRkZTRVQgMTEKICNkZWZpbmUgUkFERU9OX1BBUkFNX0NBUkRfVFlQRSAxMgogI2RlZmluZSBSQURFT05fUEFSQU1fVkJMQU5LX0NSVEMgMTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9GQl9MT0NBVElPTiAxNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX05VTV9HQl9QSVBFUyAxNQogI2RlZmluZSBSQURFT05fUEFSQU1fREVWSUNFX0lEIDE2CiAjZGVmaW5lIFJBREVPTl9QQVJBTV9OVU1fWl9QSVBFUyAxNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fZ2V0cGFyYW0gewotIGludCBwYXJhbTsKLSB2b2lkIF9fdXNlciAqdmFsdWU7Ci19IGRybV9yYWRlb25fZ2V0cGFyYW1fdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBwYXJhbTsKKyAgdm9pZCBfX3VzZXIgKiB2YWx1ZTsKK30gZHJtX3JhZGVvbl9nZXRwYXJhbV90OwogI2RlZmluZSBSQURFT05fTUVNX1JFR0lPTl9HQVJUIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9NRU1fUkVHSU9OX0ZCIDIKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fbWVtX2FsbG9jIHsKLSBpbnQgcmVnaW9uOworICBpbnQgcmVnaW9uOworICBpbnQgYWxpZ25tZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYWxpZ25tZW50OwotIGludCBzaXplOwotIGludCBfX3VzZXIgKnJlZ2lvbl9vZmZzZXQ7CisgIGludCBzaXplOworICBpbnQgX191c2VyICogcmVnaW9uX29mZnNldDsKIH0gZHJtX3JhZGVvbl9tZW1fYWxsb2NfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX21lbV9mcmVlIHsKLSBpbnQgcmVnaW9uOwotIGludCByZWdpb25fb2Zmc2V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHJlZ2lvbjsKKyAgaW50IHJlZ2lvbl9vZmZzZXQ7CiB9IGRybV9yYWRlb25fbWVtX2ZyZWVfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX21lbV9pbml0X2hlYXAgewotIGludCByZWdpb247Ci0gaW50IHNpemU7Ci0gaW50IHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHJlZ2lvbjsKKyAgaW50IHNpemU7CisgIGludCBzdGFydDsKIH0gZHJtX3JhZGVvbl9tZW1faW5pdF9oZWFwX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2lycV9lbWl0IHsKLSBpbnQgX191c2VyICppcnFfc2VxOwotfSBkcm1fcmFkZW9uX2lycV9lbWl0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9pcnFfZW1pdCB7CisgIGludCBfX3VzZXIgKiBpcnFfc2VxOworfSBkcm1fcmFkZW9uX2lycV9lbWl0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2lycV93YWl0IHsKLSBpbnQgaXJxX3NlcTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBpcnFfc2VxOwogfSBkcm1fcmFkZW9uX2lycV93YWl0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3NldHBhcmFtIHsKKyAgdW5zaWduZWQgaW50IHBhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGFyYW07Ci0gX19zNjQgdmFsdWU7CisgIF9fczY0IHZhbHVlOwogfSBkcm1fcmFkZW9uX3NldHBhcmFtX3Q7CiAjZGVmaW5lIFJBREVPTl9TRVRQQVJBTV9GQl9MT0NBVElPTiAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fU0VUUEFSQU1fU1dJVENIX1RJTElORyAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fU0VUUEFSQU1fUENJR0FSVF9MT0NBVElPTiAzCiAjZGVmaW5lIFJBREVPTl9TRVRQQVJBTV9ORVdfTUVNTUFQIDQKICNkZWZpbmUgUkFERU9OX1NFVFBBUkFNX1BDSUdBUlRfVEFCTEVfU0laRSA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fU0VUUEFSQU1fVkJMQU5LX0NSVEMgNgotdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9zdXJmYWNlX2FsbG9jIHsKLSB1bnNpZ25lZCBpbnQgYWRkcmVzczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOwordHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9zdXJmYWNlX2FsbG9jIHsKKyAgdW5zaWduZWQgaW50IGFkZHJlc3M7CisgIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcmFkZW9uX3N1cmZhY2VfYWxsb2NfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fc3VyZmFjZV9mcmVlIHsKLSB1bnNpZ25lZCBpbnQgYWRkcmVzczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBhZGRyZXNzOwogfSBkcm1fcmFkZW9uX3N1cmZhY2VfZnJlZV90OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9WQkxBTktfQ1JUQzEgMQogI2RlZmluZSBEUk1fUkFERU9OX1ZCTEFOS19DUlRDMiAyCiAjZGVmaW5lIFJBREVPTl9HRU1fRE9NQUlOX0NQVSAweDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9HRU1fRE9NQUlOX0dUVCAweDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9HRU1fRE9NQUlOX1ZSQU0gMHg0CiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1faW5mbyB7Ci0gdWludDY0X3QgZ2FydF9zaXplOworICB1aW50NjRfdCBnYXJ0X3NpemU7CisgIHVpbnQ2NF90IHZyYW1fc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgdnJhbV9zaXplOwotIHVpbnQ2NF90IHZyYW1fdmlzaWJsZTsKKyAgdWludDY0X3QgdnJhbV92aXNpYmxlOwogfTsKLSNkZWZpbmUgUkFERU9OX0dFTV9OT19CQUNLSU5HX1NUT1JFIDEKKyNkZWZpbmUgUkFERU9OX0dFTV9OT19CQUNLSU5HX1NUT1JFICgxIDw8IDApCisjZGVmaW5lIFJBREVPTl9HRU1fR1RUX1VDICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQURFT05fR0VNX0dUVF9XQyAoMSA8PCAyKQorI2RlZmluZSBSQURFT05fR0VNX0NQVV9BQ0NFU1MgKDEgPDwgMykKKyNkZWZpbmUgUkFERU9OX0dFTV9OT19DUFVfQUNDRVNTICgxIDw8IDQpCiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fY3JlYXRlIHsKLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IGFsaWdubWVudDsKLSB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGluaXRpYWxfZG9tYWluOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50NjRfdCBzaXplOworICB1aW50NjRfdCBhbGlnbm1lbnQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgaW5pdGlhbF9kb21haW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCBmbGFnczsKIH07Ci0jZGVmaW5lIFJBREVPTl9USUxJTkdfTUFDUk8gMHgxCisjZGVmaW5lIFJBREVPTl9HRU1fVVNFUlBUUl9SRUFET05MWSAoMSA8PCAwKQorI2RlZmluZSBSQURFT05fR0VNX1VTRVJQVFJfQU5PTk9OTFkgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9HRU1fVVNFUlBUUl9WQUxJREFURSAoMSA8PCAyKQorI2RlZmluZSBSQURFT05fR0VNX1VTRVJQVFJfUkVHSVNURVIgKDEgPDwgMykKK3N0cnVjdCBkcm1fcmFkZW9uX2dlbV91c2VycHRyIHsKKyAgdWludDY0X3QgYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBoYW5kbGU7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkFERU9OX1RJTElOR19NQUNSTyAweDEKICNkZWZpbmUgUkFERU9OX1RJTElOR19NSUNSTyAweDIKICNkZWZpbmUgUkFERU9OX1RJTElOR19TV0FQXzE2QklUIDB4NAogI2RlZmluZSBSQURFT05fVElMSU5HX1NXQVBfMzJCSVQgMHg4Ci0jZGVmaW5lIFJBREVPTl9USUxJTkdfU1VSRkFDRSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQURFT05fVElMSU5HX1NVUkZBQ0UgMHgxMAogI2RlZmluZSBSQURFT05fVElMSU5HX01JQ1JPX1NRVUFSRSAweDIwCiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfQkFOS1dfU0hJRlQgOAogI2RlZmluZSBSQURFT05fVElMSU5HX0VHX0JBTktXX01BU0sgMHhmCi0jZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfQkFOS0hfU0hJRlQgMTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfQkFOS0hfU0hJRlQgMTIKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19CQU5LSF9NQVNLIDB4ZgogI2RlZmluZSBSQURFT05fVElMSU5HX0VHX01BQ1JPX1RJTEVfQVNQRUNUX1NISUZUIDE2CiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfTUFDUk9fVElMRV9BU1BFQ1RfTUFTSyAweGYKLSNkZWZpbmUgUkFERU9OX1RJTElOR19FR19USUxFX1NQTElUX1NISUZUIDI0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQURFT05fVElMSU5HX0VHX1RJTEVfU1BMSVRfU0hJRlQgMjQKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19USUxFX1NQTElUX01BU0sgMHhmCiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfU1RFTkNJTF9USUxFX1NQTElUX1NISUZUIDI4CiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfU1RFTkNJTF9USUxFX1NQTElUX01BU0sgMHhmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9yYWRlb25fZ2VtX3NldF90aWxpbmcgeworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHRpbGluZ19mbGFnczsKKyAgdWludDMyX3QgcGl0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCB0aWxpbmdfZmxhZ3M7Ci0gdWludDMyX3QgcGl0Y2g7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9nZXRfdGlsaW5nIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgdGlsaW5nX2ZsYWdzOwotIHVpbnQzMl90IHBpdGNoOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHRpbGluZ19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBpdGNoOwogfTsKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9tbWFwIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IGFkZHJfcHRyOworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3QgYWRkcl9wdHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fc2V0X2RvbWFpbiB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHJlYWRfZG9tYWluczsKLSB1aW50MzJfdCB3cml0ZV9kb21haW47CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcmVhZF9kb21haW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3Qgd3JpdGVfZG9tYWluOwogfTsKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV93YWl0X2lkbGUgewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBhZDsKIH07CiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fYnVzeSB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IGRvbWFpbjsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgZG9tYWluOwogfTsKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9wcmVhZCB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDY0X3Qgc2l6ZTsKLSB1aW50NjRfdCBkYXRhX3B0cjsKKyAgdWludDMyX3QgcGFkOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQ2NF90IGRhdGFfcHRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9yYWRlb25fZ2VtX3B3cml0ZSB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDsKLSB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IGRhdGFfcHRyOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQ2NF90IGRhdGFfcHRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fb3AgeworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IG9wOworICB1aW50NjRfdCB2YWx1ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBSQURFT05fR0VNX09QX0dFVF9JTklUSUFMX0RPTUFJTiAwCisjZGVmaW5lIFJBREVPTl9HRU1fT1BfU0VUX0lOSVRJQUxfRE9NQUlOIDEKICNkZWZpbmUgUkFERU9OX1ZBX01BUCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fVkFfVU5NQVAgMgpAQCAtODQzLDEyICs4NzMsMTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9WTV9QQUdFX1NOT09QRUQgKDEgPDwgNCkKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV92YSB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IG9wZXJhdGlvbjsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBvcGVyYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHZtX2lkOwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgdm1faWQ7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50NjRfdCBvZmZzZXQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0NIVU5LX0lEX1JFTE9DUyAweDAxCkBAIC04NjQsNjcgKzg5NCw3NyBAQAogI2RlZmluZSBSQURFT05fQ1NfUklOR19DT01QVVRFIDEKICNkZWZpbmUgUkFERU9OX0NTX1JJTkdfRE1BIDIKICNkZWZpbmUgUkFERU9OX0NTX1JJTkdfVVZEIDMKKyNkZWZpbmUgUkFERU9OX0NTX1JJTkdfVkNFIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3JhZGVvbl9jc19jaHVuayB7CisgIHVpbnQzMl90IGNodW5rX2lkOworICB1aW50MzJfdCBsZW5ndGhfZHc7CisgIHVpbnQ2NF90IGNodW5rX2RhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGNodW5rX2lkOwotIHVpbnQzMl90IGxlbmd0aF9kdzsKLSB1aW50NjRfdCBjaHVua19kYXRhOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9SRUxPQ19QUklPX01BU0sgKDB4ZiA8PCAwKQogc3RydWN0IGRybV9yYWRlb25fY3NfcmVsb2MgewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCByZWFkX2RvbWFpbnM7Ci0gdWludDMyX3Qgd3JpdGVfZG9tYWluOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCByZWFkX2RvbWFpbnM7CisgIHVpbnQzMl90IHdyaXRlX2RvbWFpbjsKKyAgdWludDMyX3QgZmxhZ3M7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcmFkZW9uX2NzIHsKLSB1aW50MzJfdCBudW1fY2h1bmtzOworICB1aW50MzJfdCBudW1fY2h1bmtzOworICB1aW50MzJfdCBjc19pZDsKKyAgdWludDY0X3QgY2h1bmtzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBjc19pZDsKLSB1aW50NjRfdCBjaHVua3M7Ci0gdWludDY0X3QgZ2FydF9saW1pdDsKLSB1aW50NjRfdCB2cmFtX2xpbWl0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDY0X3QgZ2FydF9saW1pdDsKKyAgdWludDY0X3QgdnJhbV9saW1pdDsKIH07CiAjZGVmaW5lIFJBREVPTl9JTkZPX0RFVklDRV9JRCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19OVU1fR0JfUElQRVMgMHgwMQogI2RlZmluZSBSQURFT05fSU5GT19OVU1fWl9QSVBFUyAweDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19BQ0NFTF9XT1JLSU5HIDB4MDMKICNkZWZpbmUgUkFERU9OX0lORk9fQ1JUQ19GUk9NX0lEIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX0FDQ0VMX1dPUktJTkcyIDB4MDUKICNkZWZpbmUgUkFERU9OX0lORk9fVElMSU5HX0NPTkZJRyAweDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19XQU5UX0hZUEVSWiAweDA3CiAjZGVmaW5lIFJBREVPTl9JTkZPX1dBTlRfQ01BU0sgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fQ0xPQ0tfQ1JZU1RBTF9GUkVRIDB4MDkKICNkZWZpbmUgUkFERU9OX0lORk9fTlVNX0JBQ0tFTkRTIDB4MGEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX05VTV9USUxFX1BJUEVTIDB4MGIKICNkZWZpbmUgUkFERU9OX0lORk9fRlVTSU9OX0dBUlRfV09SS0lORyAweDBjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19CQUNLRU5EX01BUCAweDBkCiAjZGVmaW5lIFJBREVPTl9JTkZPX1ZBX1NUQVJUIDB4MGUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX0lCX1ZNX01BWF9TSVpFIDB4MGYKICNkZWZpbmUgUkFERU9OX0lORk9fTUFYX1BJUEVTIDB4MTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX1RJTUVTVEFNUCAweDExCiAjZGVmaW5lIFJBREVPTl9JTkZPX01BWF9TRSAweDEyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19NQVhfU0hfUEVSX1NFIDB4MTMKICNkZWZpbmUgUkFERU9OX0lORk9fRkFTVEZCX1dPUktJTkcgMHgxNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fUklOR19XT1JLSU5HIDB4MTUKICNkZWZpbmUgUkFERU9OX0lORk9fU0lfVElMRV9NT0RFX0FSUkFZIDB4MTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX1NJX0NQX0RNQV9DT01QVVRFIDB4MTcKICNkZWZpbmUgUkFERU9OX0lORk9fQ0lLX01BQ1JPVElMRV9NT0RFX0FSUkFZIDB4MTgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX1NJX0JBQ0tFTkRfRU5BQkxFRF9NQVNLIDB4MTkKICNkZWZpbmUgUkFERU9OX0lORk9fTUFYX1NDTEsgMHgxYQorI2RlZmluZSBSQURFT05fSU5GT19WQ0VfRldfVkVSU0lPTiAweDFiCisjZGVmaW5lIFJBREVPTl9JTkZPX1ZDRV9GQl9WRVJTSU9OIDB4MWMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9JTkZPX05VTV9CWVRFU19NT1ZFRCAweDFkCisjZGVmaW5lIFJBREVPTl9JTkZPX1ZSQU1fVVNBR0UgMHgxZQorI2RlZmluZSBSQURFT05fSU5GT19HVFRfVVNBR0UgMHgxZgorI2RlZmluZSBSQURFT05fSU5GT19BQ1RJVkVfQ1VfQ09VTlQgMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcmFkZW9uX2luZm8gewotIHVpbnQzMl90IHJlcXVlc3Q7Ci0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IHZhbHVlOworICB1aW50MzJfdCByZXF1ZXN0OworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQ2NF90IHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFNJX1RJTEVfTU9ERV9DT0xPUl9MSU5FQVJfQUxJR05FRCA4CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9zYXZhZ2VfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9zYXZhZ2VfZHJtLmgKaW5kZXggNGMxZDBmOC4uZGI4NzNiNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vc2F2YWdlX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3NhdmFnZV9kcm0uaApAQCAtMjksMTU2ICsyOSwxNTUgQEAKICNkZWZpbmUgU0FWQUdFX0xPR19NSU5fVEVYX1JFR0lPTl9TSVpFIDE2CiAjZW5kaWYKIHR5cGVkZWYgc3RydWN0IF9kcm1fc2F2YWdlX3NhcmVhIHsKLSBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4TGlzdFtTQVZBR0VfTlJfVEVYX0hFQVBTXVtTQVZBR0VfTlJfVEVYX1JFR0lPTlMgKworICBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4TGlzdFtTQVZBR0VfTlJfVEVYX0hFQVBTXVtTQVZBR0VfTlJfVEVYX1JFR0lPTlMgKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gMV07Ci0gdW5zaWduZWQgaW50IHRleEFnZVtTQVZBR0VfTlJfVEVYX0hFQVBTXTsKLSBpbnQgY3R4T3duZXI7Ci19IGRybV9zYXZhZ2Vfc2FyZWFfdCwgKmRybV9zYXZhZ2Vfc2FyZWFfcHRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IHRleEFnZVtTQVZBR0VfTlJfVEVYX0hFQVBTXTsKKyAgaW50IGN0eE93bmVyOworfSBkcm1fc2F2YWdlX3NhcmVhX3QsICogZHJtX3NhdmFnZV9zYXJlYV9wdHI7CiAjZGVmaW5lIERSTV9TQVZBR0VfQkNJX0lOSVQgMHgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1NBVkFHRV9CQ0lfQ01EQlVGIDB4MDEKICNkZWZpbmUgRFJNX1NBVkFHRV9CQ0lfRVZFTlRfRU1JVCAweDAyCiAjZGVmaW5lIERSTV9TQVZBR0VfQkNJX0VWRU5UX1dBSVQgMHgwMworI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9JTklUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TQVZBR0VfQkNJX0lOSVQsIGRybV9zYXZhZ2VfaW5pdF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1NBVkFHRV9CQ0lfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfSU5JVCwgZHJtX3NhdmFnZV9pbml0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9TQVZBR0VfQkNJX0NNREJVRiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfQ01EQlVGLCBkcm1fc2F2YWdlX2NtZGJ1Zl90KQorI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9DTURCVUYgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfQ01EQlVGLCBkcm1fc2F2YWdlX2NtZGJ1Zl90KQogI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9FVkVOVF9FTUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0FWQUdFX0JDSV9FVkVOVF9FTUlULCBkcm1fc2F2YWdlX2V2ZW50X2VtaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NBVkFHRV9CQ0lfRVZFTlRfV0FJVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfRVZFTlRfV0FJVCwgZHJtX3NhdmFnZV9ldmVudF93YWl0X3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9FVkVOVF9XQUlUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TQVZBR0VfQkNJX0VWRU5UX1dBSVQsIGRybV9zYXZhZ2VfZXZlbnRfd2FpdF90KQogI2RlZmluZSBTQVZBR0VfRE1BX1BDSSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfRE1BX0FHUCAzCiB0eXBlZGVmIHN0cnVjdCBkcm1fc2F2YWdlX2luaXQgewotIGVudW0geworICBlbnVtIHsKKyAgICBTQVZBR0VfSU5JVF9CQ0kgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQVZBR0VfSU5JVF9CQ0kgPSAxLAotIFNBVkFHRV9DTEVBTlVQX0JDSSA9IDIKLSB9IGZ1bmM7Ci0gdW5zaWduZWQgaW50IHNhcmVhX3ByaXZfb2Zmc2V0OworICAgIFNBVkFHRV9DTEVBTlVQX0JDSSA9IDIKKyAgfSBmdW5jOworICB1bnNpZ25lZCBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBjb2Jfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvYl9zaXplOwotIHVuc2lnbmVkIGludCBiY2lfdGhyZXNob2xkX2xvLCBiY2lfdGhyZXNob2xkX2hpOwotIHVuc2lnbmVkIGludCBkbWFfdHlwZTsKLSB1bnNpZ25lZCBpbnQgZmJfYnBwOworICB1bnNpZ25lZCBpbnQgYmNpX3RocmVzaG9sZF9sbywgYmNpX3RocmVzaG9sZF9oaTsKKyAgdW5zaWduZWQgaW50IGRtYV90eXBlOworICB1bnNpZ25lZCBpbnQgZmJfYnBwOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZyb250X29mZnNldCwgZnJvbnRfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0LCBiYWNrX3BpdGNoOwotIHVuc2lnbmVkIGludCBkZXB0aF9icHA7Ci0gdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7CisgIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKKyAgdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7CisgIHVuc2lnbmVkIGludCB0ZXh0dXJlX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleHR1cmVfb2Zmc2V0OwotIHVuc2lnbmVkIGludCB0ZXh0dXJlX3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdGF0dXNfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgYnVmZmVyc19vZmZzZXQ7CisgIHVuc2lnbmVkIGludCB0ZXh0dXJlX3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RhdHVzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBidWZmZXJzX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBhZ3BfdGV4dHVyZXNfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGFncF90ZXh0dXJlc19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBjbWRfZG1hX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBjbWRfZG1hX29mZnNldDsKIH0gZHJtX3NhdmFnZV9pbml0X3Q7CiB0eXBlZGVmIHVuaW9uIGRybV9zYXZhZ2VfY21kX2hlYWRlciBkcm1fc2F2YWdlX2NtZF9oZWFkZXJfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fc2F2YWdlX2NtZGJ1ZiB7Ci0gZHJtX3NhdmFnZV9jbWRfaGVhZGVyX3QgX191c2VyICpjbWRfYWRkcjsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgZG1hX2lkeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRpc2NhcmQ7Ci0gdW5zaWduZWQgaW50IF9fdXNlciAqdmJfYWRkcjsKLSB1bnNpZ25lZCBpbnQgdmJfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdmJfc3RyaWRlOworICBkcm1fc2F2YWdlX2NtZF9oZWFkZXJfdCBfX3VzZXIgKiBjbWRfYWRkcjsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBkbWFfaWR4OworICBpbnQgZGlzY2FyZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICpib3hfYWRkcjsKLSB1bnNpZ25lZCBpbnQgbmJveDsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIHZiX2FkZHI7CisgIHVuc2lnbmVkIGludCB2Yl9zaXplOworICB1bnNpZ25lZCBpbnQgdmJfc3RyaWRlOworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKiBib3hfYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBuYm94OwogfSBkcm1fc2F2YWdlX2NtZGJ1Zl90OwogI2RlZmluZSBTQVZBR0VfV0FJVF8yRCAweDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9XQUlUXzNEIDB4MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1dBSVRfSVJRIDB4NAogdHlwZWRlZiBzdHJ1Y3QgZHJtX3NhdmFnZV9ldmVudCB7Ci0gdW5zaWduZWQgaW50IGNvdW50OworICB1bnNpZ25lZCBpbnQgY291bnQ7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOwogfSBkcm1fc2F2YWdlX2V2ZW50X2VtaXRfdCwgZHJtX3NhdmFnZV9ldmVudF93YWl0X3Q7CiAjZGVmaW5lIFNBVkFHRV9DTURfU1RBVEUgMAogI2RlZmluZSBTQVZBR0VfQ01EX0RNQV9QUklNIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9DTURfVkJfUFJJTSAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfQ01EX0RNQV9JRFggMwogI2RlZmluZSBTQVZBR0VfQ01EX1ZCX0lEWCA0CiAjZGVmaW5lIFNBVkFHRV9DTURfQ0xFQVIgNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX0NNRF9TV0FQIDYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9QUklNX1RSSUxJU1QgMAogI2RlZmluZSBTQVZBR0VfUFJJTV9UUklTVFJJUCAxCiAjZGVmaW5lIFNBVkFHRV9QUklNX1RSSUZBTiAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfUFJJTV9UUklMSVNUXzIwMSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfU0tJUF9aIDB4MDEKICNkZWZpbmUgU0FWQUdFX1NLSVBfVyAweDAyCiAjZGVmaW5lIFNBVkFHRV9TS0lQX0MwIDB4MDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9TS0lQX0MxIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9TS0lQX1MwIDB4MTAKICNkZWZpbmUgU0FWQUdFX1NLSVBfVDAgMHgyMAogI2RlZmluZSBTQVZBR0VfU0tJUF9TVDAgMHgzMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1NLSVBfUzEgMHg0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1NLSVBfVDEgMHg4MAogI2RlZmluZSBTQVZBR0VfU0tJUF9TVDEgMHhjMAogI2RlZmluZSBTQVZBR0VfU0tJUF9BTExfUzNEIDB4M2YKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9TS0lQX0FMTF9TNCAweGZmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfRlJPTlQgMHgxCiAjZGVmaW5lIFNBVkFHRV9CQUNLIDB4MgogI2RlZmluZSBTQVZBR0VfREVQVEggMHg0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gZHJtX3NhdmFnZV9jbWRfaGVhZGVyIHsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kOwotIHVuc2lnbmVkIGNoYXIgcGFkMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgcGFkMTsKLSB1bnNpZ25lZCBzaG9ydCBwYWQyOwotIHVuc2lnbmVkIHNob3J0IHBhZDM7Ci0gfSBjbWQ7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWQ7CisgICAgdW5zaWduZWQgY2hhciBwYWQwOworICAgIHVuc2lnbmVkIHNob3J0IHBhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gdW5zaWduZWQgY2hhciBnbG9iYWw7Ci0gdW5zaWduZWQgc2hvcnQgY291bnQ7CisgICAgdW5zaWduZWQgc2hvcnQgcGFkMjsKKyAgICB1bnNpZ25lZCBzaG9ydCBwYWQzOworICB9IGNtZDsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3RhcnQ7Ci0gdW5zaWduZWQgc2hvcnQgcGFkMzsKLSB9IHN0YXRlOwotIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWQ7CisgICAgdW5zaWduZWQgY2hhciBnbG9iYWw7CisgICAgdW5zaWduZWQgc2hvcnQgY291bnQ7CisgICAgdW5zaWduZWQgc2hvcnQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY21kOwotIHVuc2lnbmVkIGNoYXIgcHJpbTsKLSB1bnNpZ25lZCBzaG9ydCBza2lwOwotIHVuc2lnbmVkIHNob3J0IGNvdW50OworICAgIHVuc2lnbmVkIHNob3J0IHBhZDM7CisgIH0gc3RhdGU7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN0YXJ0OwotIH0gcHJpbTsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kOworICAgIHVuc2lnbmVkIGNoYXIgcHJpbTsKKyAgICB1bnNpZ25lZCBzaG9ydCBza2lwOworICAgIHVuc2lnbmVkIHNob3J0IGNvdW50OworICAgIHVuc2lnbmVkIHNob3J0IHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHByaW07Ci0gdW5zaWduZWQgc2hvcnQgc2tpcDsKLSB1bnNpZ25lZCBzaG9ydCBjb3VudDsKLSB1bnNpZ25lZCBzaG9ydCBwYWQzOworICB9IHByaW07CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWQ7CisgICAgdW5zaWduZWQgY2hhciBwcmltOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGlkeDsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kOwotIHVuc2lnbmVkIGNoYXIgcGFkMDsKKyAgICB1bnNpZ25lZCBzaG9ydCBza2lwOworICAgIHVuc2lnbmVkIHNob3J0IGNvdW50OworICAgIHVuc2lnbmVkIHNob3J0IHBhZDM7CisgIH0gaWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBwYWQxOwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB9IGNsZWFyMDsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kOworICAgIHVuc2lnbmVkIGNoYXIgcGFkMDsKKyAgICB1bnNpZ25lZCBzaG9ydCBwYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbWFzazsKLSB1bnNpZ25lZCBpbnQgdmFsdWU7Ci0gfSBjbGVhcjE7CisgICAgdW5zaWduZWQgaW50IGZsYWdzOworICB9IGNsZWFyMDsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBpbnQgbWFzazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgdW5zaWduZWQgaW50IHZhbHVlOworICB9IGNsZWFyMTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vc2lzX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vc2lzX2RybS5oCmluZGV4IDQzNzg5YWMuLjVhOWU4NjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3Npc19kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9zaXNfZHJtLmgKQEAgLTI5LDMwICsyOSwzMCBAQAogI2RlZmluZSBEUk1fU0lTX0FHUF9GUkVFIDB4MTUKICNkZWZpbmUgRFJNX1NJU19GQl9JTklUIDB4MTYKICNkZWZpbmUgRFJNX0lPQ1RMX1NJU19GQl9BTExPQyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19GQl9BTExPQywgZHJtX3Npc19tZW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NJU19GQl9GUkVFIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0ZCX0ZSRUUsIGRybV9zaXNfbWVtX3QpCisjZGVmaW5lIERSTV9JT0NUTF9TSVNfRkJfRlJFRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0ZCX0ZSRUUsIGRybV9zaXNfbWVtX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfU0lTX0FHUF9JTklUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0FHUF9JTklULCBkcm1fc2lzX2FncF90KQogI2RlZmluZSBEUk1fSU9DVExfU0lTX0FHUF9BTExPQyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19BR1BfQUxMT0MsIGRybV9zaXNfbWVtX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9TSVNfQUdQX0ZSRUUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TSVNfQUdQX0ZSRUUsIGRybV9zaXNfbWVtX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9TSVNfRkJfSU5JVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19GQl9JTklULCBkcm1fc2lzX2ZiX3QpCisjZGVmaW5lIERSTV9JT0NUTF9TSVNfQUdQX0ZSRUUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19BR1BfRlJFRSwgZHJtX3Npc19tZW1fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NJU19GQl9JTklUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TSVNfRkJfSU5JVCwgZHJtX3Npc19mYl90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBpbnQgY29udGV4dDsKLSB1bnNpZ25lZCBsb25nIG9mZnNldDsKLSB1bnNpZ25lZCBsb25nIHNpemU7CisgIGludCBjb250ZXh0OworICB1bnNpZ25lZCBsb25nIG9mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGZyZWU7CisgIHVuc2lnbmVkIGxvbmcgZnJlZTsKIH0gZHJtX3Npc19tZW1fdDsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBvZmZzZXQsIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fc2lzX2FncF90OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBzaXplOworICB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZTsKIH0gZHJtX3Npc19mYl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaXNfZmlsZV9wcml2YXRlIHsKLSBzdHJ1Y3QgbGlzdF9oZWFkIG9ial9saXN0OworICBzdHJ1Y3QgbGlzdF9oZWFkIG9ial9saXN0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3RlZ3JhX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vdGVncmFfZHJtLmgKaW5kZXggOTFkNzFiZS4uZTIwN2MwYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vdGVncmFfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vdGVncmFfZHJtLmgKQEAgLTIzLDExMSArMjMsMTQxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVEVHUkFfR0VNX0NSRUFURV9CT1RUT01fVVAgKDEgPDwgMSkKIHN0cnVjdCBkcm1fdGVncmFfZ2VtX2NyZWF0ZSB7Ci0gX191NjQgc2l6ZTsKLSBfX3UzMiBmbGFnczsKKyAgX191NjQgc2l6ZTsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKIHN0cnVjdCBkcm1fdGVncmFfZ2VtX21tYXAgewotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIG9mZnNldDsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF9yZWFkIHsKLSBfX3UzMiBpZDsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZhbHVlOworICBfX3UzMiB2YWx1ZTsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF9pbmNyIHsKLSBfX3UzMiBpZDsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZDsKKyAgX191MzIgcGFkOwogfTsKIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3dhaXQgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGhyZXNoOwotIF9fdTMyIHRpbWVvdXQ7Ci0gX191MzIgdmFsdWU7CisgIF9fdTMyIHRocmVzaDsKKyAgX191MzIgdGltZW91dDsKKyAgX191MzIgdmFsdWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1RFR1JBX05PX1RJTUVPVVQgKDB4ZmZmZmZmZmYpCiBzdHJ1Y3QgZHJtX3RlZ3JhX29wZW5fY2hhbm5lbCB7Ci0gX191MzIgY2xpZW50OwotIF9fdTMyIHBhZDsKKyAgX191MzIgY2xpZW50OworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNvbnRleHQ7CisgIF9fdTY0IGNvbnRleHQ7CiB9Owogc3RydWN0IGRybV90ZWdyYV9jbG9zZV9jaGFubmVsIHsKLSBfX3U2NCBjb250ZXh0OworICBfX3U2NCBjb250ZXh0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX2dldF9zeW5jcHQgewotIF9fdTY0IGNvbnRleHQ7Ci0gX191MzIgaW5kZXg7CisgIF9fdTY0IGNvbnRleHQ7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKKyAgX191MzIgaWQ7CiB9Owogc3RydWN0IGRybV90ZWdyYV9nZXRfc3luY3B0X2Jhc2UgewotIF9fdTY0IGNvbnRleHQ7CisgIF9fdTY0IGNvbnRleHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5bmNwdDsKLSBfX3UzMiBpZDsKKyAgX191MzIgc3luY3B0OworICBfX3UzMiBpZDsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIGluY3JzOworICBfX3UzMiBpZDsKKyAgX191MzIgaW5jcnM7CiB9Owogc3RydWN0IGRybV90ZWdyYV9jbWRidWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgb2Zmc2V0OwotIF9fdTMyIHdvcmRzOwotIF9fdTMyIHBhZDsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIHdvcmRzOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdGVncmFfcmVsb2MgewotIHN0cnVjdCB7Ci0gX191MzIgaGFuZGxlOworICBzdHJ1Y3QgeworICAgIF9fdTMyIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb2Zmc2V0OwotIH0gY21kYnVmOwotIHN0cnVjdCB7Ci0gX191MzIgaGFuZGxlOworICAgIF9fdTMyIG9mZnNldDsKKyAgfSBjbWRidWY7CisgIHN0cnVjdCB7CisgICAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvZmZzZXQ7Ci0gfSB0YXJnZXQ7Ci0gX191MzIgc2hpZnQ7Ci0gX191MzIgcGFkOworICAgIF9fdTMyIG9mZnNldDsKKyAgfSB0YXJnZXQ7CisgIF9fdTMyIHNoaWZ0OworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdGVncmFfd2FpdGNoayB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIG9mZnNldDsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5bmNwdDsKLSBfX3UzMiB0aHJlc2g7CisgIF9fdTMyIHN5bmNwdDsKKyAgX191MzIgdGhyZXNoOwogfTsKIHN0cnVjdCBkcm1fdGVncmFfc3VibWl0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29udGV4dDsKLSBfX3UzMiBudW1fc3luY3B0czsKLSBfX3UzMiBudW1fY21kYnVmczsKLSBfX3UzMiBudW1fcmVsb2NzOworICBfX3U2NCBjb250ZXh0OworICBfX3UzMiBudW1fc3luY3B0czsKKyAgX191MzIgbnVtX2NtZGJ1ZnM7CisgIF9fdTMyIG51bV9yZWxvY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bV93YWl0Y2hrczsKLSBfX3UzMiB3YWl0Y2hrX21hc2s7Ci0gX191MzIgdGltZW91dDsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIG51bV93YWl0Y2hrczsKKyAgX191MzIgd2FpdGNoa19tYXNrOworICBfX3UzMiB0aW1lb3V0OworICBfX3U2NCBzeW5jcHRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzeW5jcHRzOwotIF9fdTY0IGNtZGJ1ZnM7Ci0gX191NjQgcmVsb2NzOwotIF9fdTY0IHdhaXRjaGtzOworICBfX3U2NCBjbWRidWZzOworICBfX3U2NCByZWxvY3M7CisgIF9fdTY0IHdhaXRjaGtzOworICBfX3UzMiBmZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmVuY2U7Ci0gX191MzIgcmVzZXJ2ZWRbNV07CisgIF9fdTMyIHJlc2VydmVkWzVdOworfTsKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9QSVRDSCAwCisjZGVmaW5lIERSTV9URUdSQV9HRU1fVElMSU5HX01PREVfVElMRUQgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9CTE9DSyAyCitzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9zZXRfdGlsaW5nIHsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBtb2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdmFsdWU7CisgIF9fdTMyIHBhZDsKK307CitzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfdGlsaW5nIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgbW9kZTsKKyAgX191MzIgdmFsdWU7CisgIF9fdTMyIHBhZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBEUk1fVEVHUkFfR0VNX0JPVFRPTV9VUCAoMSA8PCAwKQorI2RlZmluZSBEUk1fVEVHUkFfR0VNX0ZMQUdTIChEUk1fVEVHUkFfR0VNX0JPVFRPTV9VUCkKK3N0cnVjdCBkcm1fdGVncmFfZ2VtX3NldF9mbGFncyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGZsYWdzOworfTsKK3N0cnVjdCBkcm1fdGVncmFfZ2VtX2dldF9mbGFncyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGZsYWdzOwogfTsKICNkZWZpbmUgRFJNX1RFR1JBX0dFTV9DUkVBVEUgMHgwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE0Miw2ICsxNzIsMTEgQEAKICNkZWZpbmUgRFJNX1RFR1JBX1NVQk1JVCAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVEVHUkFfR0VUX1NZTkNQVF9CQVNFIDB4MDkKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9TRVRfVElMSU5HIDB4MGEKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9HRVRfVElMSU5HIDB4MGIKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9TRVRfRkxBR1MgMHgwYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9HRVRfRkxBR1MgMHgwZAogI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VNX0NSRUFURSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFTV9DUkVBVEUsIHN0cnVjdCBkcm1fdGVncmFfZ2VtX2NyZWF0ZSkKICNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX0dFTV9NTUFQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VNX01NQVAsIHN0cnVjdCBkcm1fdGVncmFfZ2VtX21tYXApCiAjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9TWU5DUFRfUkVBRCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX1NZTkNQVF9SRUFELCBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF9yZWFkKQpAQCAtMTU0LDUgKzE4OSwxMCBAQAogI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VUX1NZTkNQVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFVF9TWU5DUFQsIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX1NVQk1JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX1NVQk1JVCwgc3RydWN0IGRybV90ZWdyYV9zdWJtaXQpCiAjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRVRfU1lOQ1BUX0JBU0UgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9HRVRfU1lOQ1BUX0JBU0UsIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdF9iYXNlKQorI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VNX1NFVF9USUxJTkcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9HRU1fU0VUX1RJTElORywgc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X3RpbGluZykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRU1fR0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFTV9HRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfdGlsaW5nKQorI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VNX1NFVF9GTEFHUyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFTV9TRVRfRkxBR1MsIHN0cnVjdCBkcm1fdGVncmFfZ2VtX3NldF9mbGFncykKKyNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX0dFTV9HRVRfRkxBR1MgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9HRU1fR0VUX0ZMQUdTLCBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfZmxhZ3MpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS92aWFfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS92aWFfZHJtLmgKaW5kZXggNTMyMWE1ZC4uOGJlMDg2YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vdmlhX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3ZpYV9kcm0uaApAQCAtMjgsNyArMjgsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklBX05SX1hWTUNfTE9DS1MgNQogI2RlZmluZSBWSUFfTUFYX0NBQ0hFTElORV9TSVpFIDY0Ci0jZGVmaW5lIFhWTUNMT0NLUFRSKHNhUHJpdixsb2NrTm8pICAgKCh2b2xhdGlsZSBzdHJ1Y3QgZHJtX2h3X2xvY2sgKikoKCgoKHVuc2lnbmVkIGxvbmcpIChzYVByaXYpLT5Ydk1DTG9ja0FyZWEpICsgICAoVklBX01BWF9DQUNIRUxJTkVfU0laRSAtIDEpKSAmICAgfihWSUFfTUFYX0NBQ0hFTElORV9TSVpFIC0gMSkpICsgICBWSUFfTUFYX0NBQ0hFTElORV9TSVpFKihsb2NrTm8pKSkKKyNkZWZpbmUgWFZNQ0xPQ0tQVFIoc2FQcml2LGxvY2tObykgKCh2b2xhdGlsZSBzdHJ1Y3QgZHJtX2h3X2xvY2sgKikgKCgoKCh1bnNpZ25lZCBsb25nKSAoc2FQcml2KS0+WHZNQ0xvY2tBcmVhKSArIChWSUFfTUFYX0NBQ0hFTElORV9TSVpFIC0gMSkpICYgfihWSUFfTUFYX0NBQ0hFTElORV9TSVpFIC0gMSkpICsgVklBX01BWF9DQUNIRUxJTkVfU0laRSAqIChsb2NrTm8pKSkKICNkZWZpbmUgVklBX05SX1RFWF9SRUdJT05TIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSUFfTE9HX01JTl9URVhfUkVHSU9OX1NJWkUgMTYKQEAgLTY0LDIwICs2NCwyMCBAQAogI2RlZmluZSBEUk1fVklBX0RNQV9CTElUIDB4MGUKICNkZWZpbmUgRFJNX1ZJQV9CTElUX1NZTkMgMHgwZgogI2RlZmluZSBEUk1fSU9DVExfVklBX0FMTE9DTUVNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0FMTE9DTUVNLCBkcm1fdmlhX21lbV90KQotI2RlZmluZSBEUk1fSU9DVExfVklBX0ZSRUVNRU0gRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRlJFRU1FTSwgZHJtX3ZpYV9tZW1fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9GUkVFTUVNIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRlJFRU1FTSwgZHJtX3ZpYV9tZW1fdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfQUdQX0lOSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQUdQX0lOSVQsIGRybV92aWFfYWdwX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfRkJfSU5JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9GQl9JTklULCBkcm1fdmlhX2ZiX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfTUFQX0lOSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfTUFQX0lOSVQsIGRybV92aWFfaW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfVklBX0RFQ19GVVRFWCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9ERUNfRlVURVgsIGRybV92aWFfZnV0ZXhfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9ERUNfRlVURVggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9ERUNfRlVURVgsIGRybV92aWFfZnV0ZXhfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfRE1BX0lOSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRE1BX0lOSVQsIGRybV92aWFfZG1hX2luaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9DTURCVUZGRVIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQ01EQlVGRkVSLCBkcm1fdmlhX2NtZGJ1ZmZlcl90KQotI2RlZmluZSBEUk1fSU9DVExfVklBX0ZMVVNIIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRkxVU0gpCi0jZGVmaW5lIERSTV9JT0NUTF9WSUFfUENJQ01EIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX1BDSUNNRCwgZHJtX3ZpYV9jbWRidWZmZXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9DTURCVUZGRVIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9DTURCVUZGRVIsIGRybV92aWFfY21kYnVmZmVyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9WSUFfRkxVU0ggRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0ZMVVNIKQorI2RlZmluZSBEUk1fSU9DVExfVklBX1BDSUNNRCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX1BDSUNNRCwgZHJtX3ZpYV9jbWRidWZmZXJfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9WSUFfQ01EQlVGX1NJWkUgRFJNX0lPV1IoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0NNREJVRl9TSVpFLCAgIGRybV92aWFfY21kYnVmX3NpemVfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9XQUlUX0lSUSBEUk1fSU9XUiggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfV0FJVF9JUlEsIGRybV92aWFfaXJxd2FpdF90KQorI2RlZmluZSBEUk1fSU9DVExfVklBX0NNREJVRl9TSVpFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0NNREJVRl9TSVpFLCBkcm1fdmlhX2NtZGJ1Zl9zaXplX3QpCisjZGVmaW5lIERSTV9JT0NUTF9WSUFfV0FJVF9JUlEgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfV0FJVF9JUlEsIGRybV92aWFfaXJxd2FpdF90KQogI2RlZmluZSBEUk1fSU9DVExfVklBX0RNQV9CTElUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRE1BX0JMSVQsIGRybV92aWFfZG1hYmxpdF90KQogI2RlZmluZSBEUk1fSU9DVExfVklBX0JMSVRfU1lOQyBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0JMSVRfU1lOQywgZHJtX3ZpYV9ibGl0c3luY190KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTk0LDE1MiArOTQsMTUyIEBACiAjZGVmaW5lIFZJQV9NRU1fTUlYRUQgMwogI2RlZmluZSBWSUFfTUVNX1VOS05PV04gNAogdHlwZWRlZiBzdHJ1Y3QgewotIF9fdTMyIG9mZnNldDsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXplOworICBfX3UzMiBzaXplOwogfSBkcm1fdmlhX2FncF90OwogdHlwZWRlZiBzdHJ1Y3QgewotIF9fdTMyIG9mZnNldDsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXplOworICBfX3UzMiBzaXplOwogfSBkcm1fdmlhX2ZiX3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191MzIgY29udGV4dDsKKyAgX191MzIgY29udGV4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBzaXplOwotIHVuc2lnbmVkIGxvbmcgaW5kZXg7Ci0gdW5zaWduZWQgbG9uZyBvZmZzZXQ7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgaW5kZXg7CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX3ZpYV9tZW1fdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fdmlhX2luaXQgewotIGVudW0gewotIFZJQV9JTklUX01BUCA9IDB4MDEsCisgIGVudW0geworICAgIFZJQV9JTklUX01BUCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJQV9DTEVBTlVQX01BUCA9IDB4MDIKLSB9IGZ1bmM7Ci0gdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKKyAgICBWSUFfQ0xFQU5VUF9NQVAgPSAweDAyCisgIH0gZnVuYzsKKyAgdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBhZ3BBZGRyOworICB1bnNpZ25lZCBsb25nIG1taW9fb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGFncEFkZHI7CiB9IGRybV92aWFfaW5pdF90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV92aWFfZnV0ZXggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIHsKLSBWSUFfRlVURVhfV0FJVCA9IDB4MDAsCi0gVklBX0ZVVEVYX1dBS0UgPSAwWDAxCi0gfSBmdW5jOworICBlbnVtIHsKKyAgICBWSUFfRlVURVhfV0FJVCA9IDB4MDAsCisgICAgVklBX0ZVVEVYX1dBS0UgPSAwWDAxCisgIH0gZnVuYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbXM7Ci0gX191MzIgbG9jazsKLSBfX3UzMiB2YWw7CisgIF9fdTMyIG1zOworICBfX3UzMiBsb2NrOworICBfX3UzMiB2YWw7CiB9IGRybV92aWFfZnV0ZXhfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfZHJtX3ZpYV9kbWFfaW5pdCB7Ci0gZW51bSB7Ci0gVklBX0lOSVRfRE1BID0gMHgwMSwKLSBWSUFfQ0xFQU5VUF9ETUEgPSAweDAyLAorICBlbnVtIHsKKyAgICBWSUFfSU5JVF9ETUEgPSAweDAxLAorICAgIFZJQV9DTEVBTlVQX0RNQSA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJQV9ETUFfSU5JVElBTElaRUQgPSAweDAzCi0gfSBmdW5jOwotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKKyAgICBWSUFfRE1BX0lOSVRJQUxJWkVEID0gMHgwMworICB9IGZ1bmM7CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmVnX3BhdXNlX2FkZHI7CisgIHVuc2lnbmVkIGxvbmcgcmVnX3BhdXNlX2FkZHI7CiB9IGRybV92aWFfZG1hX2luaXRfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fdmlhX2NtZGJ1ZmZlciB7Ci0gY2hhciBfX3VzZXIgKmJ1ZjsKKyAgY2hhciBfX3VzZXIgKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzaXplOwogfSBkcm1fdmlhX2NtZGJ1ZmZlcl90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV92aWFfdGV4X3JlZ2lvbiB7Ci0gdW5zaWduZWQgY2hhciBuZXh0LCBwcmV2OworICB1bnNpZ25lZCBjaGFyIG5leHQsIHByZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaW5Vc2U7Ci0gaW50IGFnZTsKKyAgdW5zaWduZWQgY2hhciBpblVzZTsKKyAgaW50IGFnZTsKIH0gZHJtX3ZpYV90ZXhfcmVnaW9uX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX3ZpYV9zYXJlYSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkaXJ0eTsKLSB1bnNpZ25lZCBpbnQgbmJveDsKLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tWSUFfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKLSBkcm1fdmlhX3RleF9yZWdpb25fdCB0ZXhMaXN0W1ZJQV9OUl9URVhfUkVHSU9OUyArIDFdOworICB1bnNpZ25lZCBpbnQgZGlydHk7CisgIHVuc2lnbmVkIGludCBuYm94OworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tWSUFfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKKyAgZHJtX3ZpYV90ZXhfcmVnaW9uX3QgdGV4TGlzdFtWSUFfTlJfVEVYX1JFR0lPTlMgKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRleEFnZTsKLSBpbnQgY3R4T3duZXI7Ci0gaW50IHZlcnRleFByaW07Ci0gY2hhciBYdk1DTG9ja0FyZWFbVklBX01BWF9DQUNIRUxJTkVfU0laRSAqIChWSUFfTlJfWFZNQ19MT0NLUyArIDEpXTsKKyAgaW50IHRleEFnZTsKKyAgaW50IGN0eE93bmVyOworICBpbnQgdmVydGV4UHJpbTsKKyAgY2hhciBYdk1DTG9ja0FyZWFbVklBX01BWF9DQUNIRUxJTkVfU0laRSAqIChWSUFfTlJfWFZNQ19MT0NLUyArIDEpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IFh2TUNEaXNwbGF5aW5nW1ZJQV9OUl9YVk1DX1BPUlRTXTsKLSB1bnNpZ25lZCBpbnQgWHZNQ1N1YlBpY09uW1ZJQV9OUl9YVk1DX1BPUlRTXTsKLSB1bnNpZ25lZCBpbnQgWHZNQ0N0eE5vR3JhYmJlZDsKLSB1bnNpZ25lZCBpbnQgcGZDdXJyZW50T2Zmc2V0OworICB1bnNpZ25lZCBpbnQgWHZNQ0Rpc3BsYXlpbmdbVklBX05SX1hWTUNfUE9SVFNdOworICB1bnNpZ25lZCBpbnQgWHZNQ1N1YlBpY09uW1ZJQV9OUl9YVk1DX1BPUlRTXTsKKyAgdW5zaWduZWQgaW50IFh2TUNDdHhOb0dyYWJiZWQ7CisgIHVuc2lnbmVkIGludCBwZkN1cnJlbnRPZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fdmlhX3NhcmVhX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX3ZpYV9jbWRidWZfc2l6ZSB7Ci0gZW51bSB7Ci0gVklBX0NNREJVRl9TUEFDRSA9IDB4MDEsCisgIGVudW0geworICAgIFZJQV9DTURCVUZfU1BBQ0UgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSUFfQ01EQlVGX0xBRyA9IDB4MDIKLSB9IGZ1bmM7Ci0gaW50IHdhaXQ7Ci0gX191MzIgc2l6ZTsKKyAgICBWSUFfQ01EQlVGX0xBRyA9IDB4MDIKKyAgfSBmdW5jOworICBpbnQgd2FpdDsKKyAgX191MzIgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV92aWFfY21kYnVmX3NpemVfdDsKIHR5cGVkZWYgZW51bSB7Ci0gVklBX0lSUV9BQlNPTFVURSA9IDB4MCwKLSBWSUFfSVJRX1JFTEFUSVZFID0gMHgxLAorICBWSUFfSVJRX0FCU09MVVRFID0gMHgwLAorICBWSUFfSVJRX1JFTEFUSVZFID0gMHgxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSUFfSVJRX1NJR05BTCA9IDB4MTAwMDAwMDAsCi0gVklBX0lSUV9GT1JDRV9TRVFVRU5DRSA9IDB4MjAwMDAwMDAKKyAgVklBX0lSUV9TSUdOQUwgPSAweDEwMDAwMDAwLAorICBWSUFfSVJRX0ZPUkNFX1NFUVVFTkNFID0gMHgyMDAwMDAwMAogfSB2aWFfaXJxX3NlcV90eXBlX3Q7CiAjZGVmaW5lIFZJQV9JUlFfRkxBR1NfTUFTSyAweEYwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBkcm1fdmlhX2lycXMgewotIGRybV92aWFfaXJxX2hxdjAgPSAwLAotIGRybV92aWFfaXJxX2hxdjEsCi0gZHJtX3ZpYV9pcnFfZG1hMF9kZCwKKyAgZHJtX3ZpYV9pcnFfaHF2MCA9IDAsCisgIGRybV92aWFfaXJxX2hxdjEsCisgIGRybV92aWFfaXJxX2RtYTBfZGQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV92aWFfaXJxX2RtYTBfdGQsCi0gZHJtX3ZpYV9pcnFfZG1hMV9kZCwKLSBkcm1fdmlhX2lycV9kbWExX3RkLAotIGRybV92aWFfaXJxX251bQorICBkcm1fdmlhX2lycV9kbWEwX3RkLAorICBkcm1fdmlhX2lycV9kbWExX2RkLAorICBkcm1fdmlhX2lycV9kbWExX3RkLAorICBkcm1fdmlhX2lycV9udW0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV92aWFfd2FpdF9pcnFfcmVxdWVzdCB7Ci0gdW5zaWduZWQgaXJxOwotIHZpYV9pcnFfc2VxX3R5cGVfdCB0eXBlOworICB1bnNpZ25lZCBpcnE7CisgIHZpYV9pcnFfc2VxX3R5cGVfdCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZXF1ZW5jZTsKLSBfX3UzMiBzaWduYWw7CisgIF9fdTMyIHNlcXVlbmNlOworICBfX3UzMiBzaWduYWw7CiB9OwogdHlwZWRlZiB1bmlvbiBkcm1fdmlhX2lycXdhaXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX3ZpYV93YWl0X2lycV9yZXF1ZXN0IHJlcXVlc3Q7Ci0gc3RydWN0IGRybV93YWl0X3ZibGFua19yZXBseSByZXBseTsKKyAgc3RydWN0IGRybV92aWFfd2FpdF9pcnFfcmVxdWVzdCByZXF1ZXN0OworICBzdHJ1Y3QgZHJtX3dhaXRfdmJsYW5rX3JlcGx5IHJlcGx5OwogfSBkcm1fdmlhX2lycXdhaXRfdDsKIHR5cGVkZWYgc3RydWN0IGRybV92aWFfYmxpdHN5bmMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzeW5jX2hhbmRsZTsKLSB1bnNpZ25lZCBlbmdpbmU7CisgIF9fdTMyIHN5bmNfaGFuZGxlOworICB1bnNpZ25lZCBlbmdpbmU7CiB9IGRybV92aWFfYmxpdHN5bmNfdDsKIHR5cGVkZWYgc3RydWN0IGRybV92aWFfZG1hYmxpdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bV9saW5lczsKLSBfX3UzMiBsaW5lX2xlbmd0aDsKLSBfX3UzMiBmYl9hZGRyOwotIF9fdTMyIGZiX3N0cmlkZTsKKyAgX191MzIgbnVtX2xpbmVzOworICBfX3UzMiBsaW5lX2xlbmd0aDsKKyAgX191MzIgZmJfYWRkcjsKKyAgX191MzIgZmJfc3RyaWRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyICptZW1fYWRkcjsKLSBfX3UzMiBtZW1fc3RyaWRlOwotIF9fdTMyIGZsYWdzOwotIGludCB0b19mYjsKKyAgdW5zaWduZWQgY2hhciAqIG1lbV9hZGRyOworICBfX3UzMiBtZW1fc3RyaWRlOworICBfX3UzMiBmbGFnczsKKyAgaW50IHRvX2ZiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fdmlhX2JsaXRzeW5jX3Qgc3luYzsKKyAgZHJtX3ZpYV9ibGl0c3luY190IHN5bmM7CiB9IGRybV92aWFfZG1hYmxpdF90Owogc3RydWN0IHZpYV9maWxlX3ByaXZhdGUgewotIHN0cnVjdCBsaXN0X2hlYWQgb2JqX2xpc3Q7CisgIHN0cnVjdCBsaXN0X2hlYWQgb2JqX2xpc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vdm13Z2Z4X2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vdm13Z2Z4X2RybS5oCmluZGV4IDg0OWVmN2QuLmMxMmNkZDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3Ztd2dmeF9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS92bXdnZnhfZHJtLmgKQEAgLTE4LDcgKzE4LDcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfX1ZNV0dGWF9EUk1fSF9fCiAjZGVmaW5lIF9fVk1XR0ZYX0RSTV9IX18KLSNpbmNsdWRlIDxkcm0uaD4KKyNpbmNsdWRlIDxkcm0vZHJtLmg+CiAjZGVmaW5lIERSTV9WTVdfTUFYX1NVUkZBQ0VfRkFDRVMgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1ZNV19NQVhfTUlQX0xFVkVMUyAyNApAQCAtNjgsMzAyICs2OCwzMDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9WTVdfUEFSQU1fTUFYX01PQl9NRU1PUlkgOQogI2RlZmluZSBEUk1fVk1XX1BBUkFNX01BWF9NT0JfU0laRSAxMAotc3RydWN0IGRybV92bXdfZ2V0cGFyYW1fYXJnIHsKLSB1aW50NjRfdCB2YWx1ZTsKK2VudW0gZHJtX3Ztd19oYW5kbGVfdHlwZSB7CisgIERSTV9WTVdfSEFORExFX0xFR0FDWSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhcmFtOwotIHVpbnQzMl90IHBhZDY0OworICBEUk1fVk1XX0hBTkRMRV9QUklNRSA9IDEKK307CitzdHJ1Y3QgZHJtX3Ztd19nZXRwYXJhbV9hcmcgeworICB1aW50NjRfdCB2YWx1ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBhcmFtOworICB1aW50MzJfdCBwYWQ2NDsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19jb250ZXh0X2FyZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgY2lkOwotIHVpbnQzMl90IHBhZDY0OworICBpbnQzMl90IGNpZDsKKyAgdWludDMyX3QgcGFkNjQ7CiB9Owogc3RydWN0IGRybV92bXdfc3VyZmFjZV9jcmVhdGVfcmVxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgZm9ybWF0OwotIHVpbnQzMl90IG1pcF9sZXZlbHNbRFJNX1ZNV19NQVhfU1VSRkFDRV9GQUNFU107Ci0gdWludDY0X3Qgc2l6ZV9hZGRyOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgZm9ybWF0OworICB1aW50MzJfdCBtaXBfbGV2ZWxzW0RSTV9WTVdfTUFYX1NVUkZBQ0VfRkFDRVNdOworICB1aW50NjRfdCBzaXplX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3Qgc2hhcmVhYmxlOwotIGludDMyX3Qgc2Nhbm91dDsKKyAgaW50MzJfdCBzaGFyZWFibGU7CisgIGludDMyX3Qgc2Nhbm91dDsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2FyZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3Qgc2lkOwotIHVpbnQzMl90IHBhZDY0OworICBpbnQzMl90IHNpZDsKKyAgZW51bSBkcm1fdm13X2hhbmRsZV90eXBlIGhhbmRsZV90eXBlOwogfTsKIHN0cnVjdCBkcm1fdm13X3NpemUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB3aWR0aDsKLSB1aW50MzJfdCBoZWlnaHQ7Ci0gdWludDMyX3QgZGVwdGg7Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IHdpZHRoOworICB1aW50MzJfdCBoZWlnaHQ7CisgIHVpbnQzMl90IGRlcHRoOworICB1aW50MzJfdCBwYWQ2NDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gZHJtX3Ztd19zdXJmYWNlX2NyZWF0ZV9hcmcgewotIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfYXJnIHJlcDsKLSBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2NyZWF0ZV9yZXEgcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2FyZyByZXA7CisgIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfY3JlYXRlX3JlcSByZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHVuaW9uIGRybV92bXdfc3VyZmFjZV9yZWZlcmVuY2VfYXJnIHsKLSBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2NyZWF0ZV9yZXEgcmVwOwotIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfYXJnIHJlcTsKKyAgc3RydWN0IGRybV92bXdfc3VyZmFjZV9jcmVhdGVfcmVxIHJlcDsKKyAgc3RydWN0IGRybV92bXdfc3VyZmFjZV9hcmcgcmVxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIERSTV9WTVdfRVhFQ0JVRl9WRVJTSU9OIDEKIHN0cnVjdCBkcm1fdm13X2V4ZWNidWZfYXJnIHsKLSB1aW50NjRfdCBjb21tYW5kczsKKyAgdWludDY0X3QgY29tbWFuZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGNvbW1hbmRfc2l6ZTsKLSB1aW50MzJfdCB0aHJvdHRsZV91czsKLSB1aW50NjRfdCBmZW5jZV9yZXA7Ci0gdWludDMyX3QgdmVyc2lvbjsKKyAgdWludDMyX3QgY29tbWFuZF9zaXplOworICB1aW50MzJfdCB0aHJvdHRsZV91czsKKyAgdWludDY0X3QgZmVuY2VfcmVwOworICB1aW50MzJfdCB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgZmxhZ3M7CiB9Owogc3RydWN0IGRybV92bXdfZmVuY2VfcmVwIHsKLSB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbWFzazsKLSB1aW50MzJfdCBzZXFubzsKLSB1aW50MzJfdCBwYXNzZWRfc2Vxbm87Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IG1hc2s7CisgIHVpbnQzMl90IHNlcW5vOworICB1aW50MzJfdCBwYXNzZWRfc2Vxbm87CisgIHVpbnQzMl90IHBhZDY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQzMl90IGVycm9yOworICBpbnQzMl90IGVycm9yOwogfTsKIHN0cnVjdCBkcm1fdm13X2FsbG9jX2RtYWJ1Zl9yZXEgewotIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBwYWQ2NDsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19kbWFidWZfcmVwIHsKLSB1aW50NjRfdCBtYXBfaGFuZGxlOworICB1aW50NjRfdCBtYXBfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgY3VyX2dtcl9pZDsKLSB1aW50MzJfdCBjdXJfZ21yX29mZnNldDsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBjdXJfZ21yX2lkOworICB1aW50MzJfdCBjdXJfZ21yX29mZnNldDsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHVuaW9uIGRybV92bXdfYWxsb2NfZG1hYnVmX2FyZyB7Ci0gc3RydWN0IGRybV92bXdfYWxsb2NfZG1hYnVmX3JlcSByZXE7Ci0gc3RydWN0IGRybV92bXdfZG1hYnVmX3JlcCByZXA7CisgIHN0cnVjdCBkcm1fdm13X2FsbG9jX2RtYWJ1Zl9yZXEgcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19kbWFidWZfcmVwIHJlcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV92bXdfdW5yZWZfZG1hYnVmX2FyZyB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd19yZWN0IHsKLSBpbnQzMl90IHg7Ci0gaW50MzJfdCB5OworICBpbnQzMl90IHg7CisgIGludDMyX3QgeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgdzsKLSB1aW50MzJfdCBoOworICB1aW50MzJfdCB3OworICB1aW50MzJfdCBoOwogfTsKIHN0cnVjdCBkcm1fdm13X2NvbnRyb2xfc3RyZWFtX2FyZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHN0cmVhbV9pZDsKLSB1aW50MzJfdCBlbmFibGVkOwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IGNvbG9yX2tleTsKKyAgdWludDMyX3Qgc3RyZWFtX2lkOworICB1aW50MzJfdCBlbmFibGVkOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgY29sb3Jfa2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3Qgb2Zmc2V0OwotIGludDMyX3QgZm9ybWF0OwotIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3Qgb2Zmc2V0OworICBpbnQzMl90IGZvcm1hdDsKKyAgdWludDMyX3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgd2lkdGg7Ci0gdWludDMyX3QgaGVpZ2h0OwotIHVpbnQzMl90IHBpdGNoWzNdOwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCB3aWR0aDsKKyAgdWludDMyX3QgaGVpZ2h0OworICB1aW50MzJfdCBwaXRjaFszXTsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fdm13X3JlY3Qgc3JjOwotIHN0cnVjdCBkcm1fdm13X3JlY3QgZHN0OworICBzdHJ1Y3QgZHJtX3Ztd19yZWN0IHNyYzsKKyAgc3RydWN0IGRybV92bXdfcmVjdCBkc3Q7CiB9OwogI2RlZmluZSBEUk1fVk1XX0NVUlNPUl9CWVBBU1NfQUxMICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVk1XX0NVUlNPUl9CWVBBU1NfRkxBR1MgKDEpCiBzdHJ1Y3QgZHJtX3Ztd19jdXJzb3JfYnlwYXNzX2FyZyB7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgY3J0Y19pZDsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGNydGNfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgeHBvczsKLSBpbnQzMl90IHlwb3M7Ci0gaW50MzJfdCB4aG90OwotIGludDMyX3QgeWhvdDsKKyAgaW50MzJfdCB4cG9zOworICBpbnQzMl90IHlwb3M7CisgIGludDMyX3QgeGhvdDsKKyAgaW50MzJfdCB5aG90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd19zdHJlYW1fYXJnIHsKLSB1aW50MzJfdCBzdHJlYW1faWQ7Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IHN0cmVhbV9pZDsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdm13X2dldF8zZF9jYXBfYXJnIHsKLSB1aW50NjRfdCBidWZmZXI7Ci0gdWludDMyX3QgbWF4X3NpemU7CisgIHVpbnQ2NF90IGJ1ZmZlcjsKKyAgdWludDMyX3QgbWF4X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBwYWQ2NDsKIH07CiAjZGVmaW5lIERSTV9WTVdfRkVOQ0VfRkxBR19FWEVDICgxIDw8IDApCiAjZGVmaW5lIERSTV9WTVdfRkVOQ0VfRkxBR19RVUVSWSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1ZNV19XQUlUX09QVElPTl9VTlJFRiAoMSA8PCAwKQogc3RydWN0IGRybV92bXdfZmVuY2Vfd2FpdF9hcmcgewotIHVpbnQzMl90IGhhbmRsZTsKLSBpbnQzMl90IGNvb2tpZV92YWxpZDsKKyAgdWludDMyX3QgaGFuZGxlOworICBpbnQzMl90IGNvb2tpZV92YWxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qga2VybmVsX2Nvb2tpZTsKLSB1aW50NjRfdCB0aW1lb3V0X3VzOwotIGludDMyX3QgbGF6eTsKLSBpbnQzMl90IGZsYWdzOworICB1aW50NjRfdCBrZXJuZWxfY29va2llOworICB1aW50NjRfdCB0aW1lb3V0X3VzOworICBpbnQzMl90IGxhenk7CisgIGludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3Qgd2FpdF9vcHRpb25zOwotIGludDMyX3QgcGFkNjQ7CisgIGludDMyX3Qgd2FpdF9vcHRpb25zOworICBpbnQzMl90IHBhZDY0OwogfTsKIHN0cnVjdCBkcm1fdm13X2ZlbmNlX3NpZ25hbGVkX2FyZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBmbGFnczsKLSBpbnQzMl90IHNpZ25hbGVkOwotIHVpbnQzMl90IHBhc3NlZF9zZXFubzsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBmbGFnczsKKyAgaW50MzJfdCBzaWduYWxlZDsKKyAgdWludDMyX3QgcGFzc2VkX3NlcW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzaWduYWxlZF9mbGFnczsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3Qgc2lnbmFsZWRfZmxhZ3M7CisgIHVpbnQzMl90IHBhZDY0OwogfTsKIHN0cnVjdCBkcm1fdm13X2ZlbmNlX2FyZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBwYWQ2NDsKIH07CiAjZGVmaW5lIERSTV9WTVdfRVZFTlRfRkVOQ0VfU0lHTkFMRUQgMHg4MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fdm13X2V2ZW50X2ZlbmNlIHsKLSBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7Ci0gdWludDY0X3QgdXNlcl9kYXRhOwotIHVpbnQzMl90IHR2X3NlYzsKKyAgc3RydWN0IGRybV9ldmVudCBiYXNlOworICB1aW50NjRfdCB1c2VyX2RhdGE7CisgIHVpbnQzMl90IHR2X3NlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgdHZfdXNlYzsKKyAgdWludDMyX3QgdHZfdXNlYzsKIH07CiAjZGVmaW5lIERSTV9WTVdfRkVfRkxBR19SRVFfVElNRSAoMSA8PCAwKQogc3RydWN0IGRybV92bXdfZmVuY2VfZXZlbnRfYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgZmVuY2VfcmVwOwotIHVpbnQ2NF90IHVzZXJfZGF0YTsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgZmxhZ3M7CisgIHVpbnQ2NF90IGZlbmNlX3JlcDsKKyAgdWludDY0X3QgdXNlcl9kYXRhOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd19wcmVzZW50X2FyZyB7Ci0gdWludDMyX3QgZmJfaWQ7Ci0gdWludDMyX3Qgc2lkOworICB1aW50MzJfdCBmYl9pZDsKKyAgdWludDMyX3Qgc2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQzMl90IGRlc3RfeDsKLSBpbnQzMl90IGRlc3RfeTsKLSB1aW50NjRfdCBjbGlwc19wdHI7Ci0gdWludDMyX3QgbnVtX2NsaXBzOworICBpbnQzMl90IGRlc3RfeDsKKyAgaW50MzJfdCBkZXN0X3k7CisgIHVpbnQ2NF90IGNsaXBzX3B0cjsKKyAgdWludDMyX3QgbnVtX2NsaXBzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3QgcGFkNjQ7CiB9Owogc3RydWN0IGRybV92bXdfcHJlc2VudF9yZWFkYmFja19hcmcgewotIHVpbnQzMl90IGZiX2lkOworICB1aW50MzJfdCBmYl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbnVtX2NsaXBzOwotIHVpbnQ2NF90IGNsaXBzX3B0cjsKLSB1aW50NjRfdCBmZW5jZV9yZXA7CisgIHVpbnQzMl90IG51bV9jbGlwczsKKyAgdWludDY0X3QgY2xpcHNfcHRyOworICB1aW50NjRfdCBmZW5jZV9yZXA7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fdm13X3VwZGF0ZV9sYXlvdXRfYXJnIHsKLSB1aW50MzJfdCBudW1fb3V0cHV0czsKLSB1aW50MzJfdCBwYWQ2NDsKLSB1aW50NjRfdCByZWN0czsKKyAgdWludDMyX3QgbnVtX291dHB1dHM7CisgIHVpbnQzMl90IHBhZDY0OworICB1aW50NjRfdCByZWN0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBkcm1fdm13X3NoYWRlcl90eXBlIHsKLSBkcm1fdm13X3NoYWRlcl90eXBlX3ZzID0gMCwKLSBkcm1fdm13X3NoYWRlcl90eXBlX3BzLAorICBkcm1fdm13X3NoYWRlcl90eXBlX3ZzID0gMCwKKyAgZHJtX3Ztd19zaGFkZXJfdHlwZV9wcywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHJtX3Ztd19zaGFkZXJfdHlwZV9ncworICBkcm1fdm13X3NoYWRlcl90eXBlX2dzCiB9Owogc3RydWN0IGRybV92bXdfc2hhZGVyX2NyZWF0ZV9hcmcgewotIGVudW0gZHJtX3Ztd19zaGFkZXJfdHlwZSBzaGFkZXJfdHlwZTsKKyAgZW51bSBkcm1fdm13X3NoYWRlcl90eXBlIHNoYWRlcl90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IGJ1ZmZlcl9oYW5kbGU7Ci0gdWludDMyX3Qgc2hhZGVyX2hhbmRsZTsKLSB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IGJ1ZmZlcl9oYW5kbGU7CisgIHVpbnQzMl90IHNoYWRlcl9oYW5kbGU7CisgIHVpbnQ2NF90IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV92bXdfc2hhZGVyX2FyZyB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV92bXdfc3VyZmFjZV9mbGFncyB7Ci0gZHJtX3Ztd19zdXJmYWNlX2ZsYWdfc2hhcmVhYmxlID0gKDEgPDwgMCksCi0gZHJtX3Ztd19zdXJmYWNlX2ZsYWdfc2Nhbm91dCA9ICgxIDw8IDEpLAorICBkcm1fdm13X3N1cmZhY2VfZmxhZ19zaGFyZWFibGUgPSAoMSA8PCAwKSwKKyAgZHJtX3Ztd19zdXJmYWNlX2ZsYWdfc2Nhbm91dCA9ICgxIDw8IDEpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fdm13X3N1cmZhY2VfZmxhZ19jcmVhdGVfYnVmZmVyID0gKDEgPDwgMikKKyAgZHJtX3Ztd19zdXJmYWNlX2ZsYWdfY3JlYXRlX2J1ZmZlciA9ICgxIDw8IDIpCiB9Owogc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfcmVxIHsKLSB1aW50MzJfdCBzdmdhM2RfZmxhZ3M7CisgIHVpbnQzMl90IHN2Z2EzZF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZm9ybWF0OwotIHVpbnQzMl90IG1pcF9sZXZlbHM7Ci0gZW51bSBkcm1fdm13X3N1cmZhY2VfZmxhZ3MgZHJtX3N1cmZhY2VfZmxhZ3M7Ci0gdWludDMyX3QgbXVsdGlzYW1wbGVfY291bnQ7CisgIHVpbnQzMl90IGZvcm1hdDsKKyAgdWludDMyX3QgbWlwX2xldmVsczsKKyAgZW51bSBkcm1fdm13X3N1cmZhY2VfZmxhZ3MgZHJtX3N1cmZhY2VfZmxhZ3M7CisgIHVpbnQzMl90IG11bHRpc2FtcGxlX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBhdXRvZ2VuX2ZpbHRlcjsKLSB1aW50MzJfdCBidWZmZXJfaGFuZGxlOwotIHVpbnQzMl90IHBhZDY0OwotIHN0cnVjdCBkcm1fdm13X3NpemUgYmFzZV9zaXplOworICB1aW50MzJfdCBhdXRvZ2VuX2ZpbHRlcjsKKyAgdWludDMyX3QgYnVmZmVyX2hhbmRsZTsKKyAgdWludDMyX3QgcGFkNjQ7CisgIHN0cnVjdCBkcm1fdm13X3NpemUgYmFzZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXAgewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBiYWNrdXBfc2l6ZTsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBiYWNrdXBfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgYnVmZmVyX2hhbmRsZTsKLSB1aW50MzJfdCBidWZmZXJfc2l6ZTsKLSB1aW50NjRfdCBidWZmZXJfbWFwX2hhbmRsZTsKKyAgdWludDMyX3QgYnVmZmVyX2hhbmRsZTsKKyAgdWludDMyX3QgYnVmZmVyX3NpemU7CisgIHVpbnQ2NF90IGJ1ZmZlcl9tYXBfaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX2FyZyB7Ci0gc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfcmVwIHJlcDsKLSBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXEgcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXAgcmVwOworICBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXEgcmVxOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX3JlZl9yZXAgewotIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcSBjcmVxOwotIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcCBjcmVwOworICBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXEgY3JlcTsKKyAgc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfcmVwIGNyZXA7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGRybV92bXdfZ2Jfc3VyZmFjZV9yZWZlcmVuY2VfYXJnIHsKLSBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX3JlZl9yZXAgcmVwOwotIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfYXJnIHJlcTsKKyAgc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9yZWZfcmVwIHJlcDsKKyAgc3RydWN0IGRybV92bXdfc3VyZmFjZV9hcmcgcmVxOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGRybV92bXdfc3luY2NwdV9mbGFncyB7Ci0gZHJtX3Ztd19zeW5jY3B1X3JlYWQgPSAoMSA8PCAwKSwKLSBkcm1fdm13X3N5bmNjcHVfd3JpdGUgPSAoMSA8PCAxKSwKLSBkcm1fdm13X3N5bmNjcHVfZG9udGJsb2NrID0gKDEgPDwgMiksCisgIGRybV92bXdfc3luY2NwdV9yZWFkID0gKDEgPDwgMCksCisgIGRybV92bXdfc3luY2NwdV93cml0ZSA9ICgxIDw8IDEpLAorICBkcm1fdm13X3N5bmNjcHVfZG9udGJsb2NrID0gKDEgPDwgMiksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV92bXdfc3luY2NwdV9hbGxvd19jcyA9ICgxIDw8IDMpCisgIGRybV92bXdfc3luY2NwdV9hbGxvd19jcyA9ICgxIDw8IDMpCiB9OwogZW51bSBkcm1fdm13X3N5bmNjcHVfb3AgewotIGRybV92bXdfc3luY2NwdV9ncmFiLAorICBkcm1fdm13X3N5bmNjcHVfZ3JhYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHJtX3Ztd19zeW5jY3B1X3JlbGVhc2UKKyAgZHJtX3Ztd19zeW5jY3B1X3JlbGVhc2UKIH07CiBzdHJ1Y3QgZHJtX3Ztd19zeW5jY3B1X2FyZyB7Ci0gZW51bSBkcm1fdm13X3N5bmNjcHVfb3Agb3A7CisgIGVudW0gZHJtX3Ztd19zeW5jY3B1X29wIG9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIGRybV92bXdfc3luY2NwdV9mbGFncyBmbGFnczsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkNjQ7CisgIGVudW0gZHJtX3Ztd19zeW5jY3B1X2ZsYWdzIGZsYWdzOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDY0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYS5vdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYS5vdXQuaAppbmRleCA1NjJjOTBiLi5mNjllYjczIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Eub3V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hLm91dC5oCkBAIC0yNyw0NiArMjcsNDYgQEAKIGVudW0gbWFjaGluZV90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgTV9PTERTVU4yCi0gTV9fT0xEU1VOMiA9IE1fT0xEU1VOMiwKKyAgTV9fT0xEU1VOMiA9IE1fT0xEU1VOMiwKICNlbHNlCi0gTV9PTERTVU4yID0gMCwKKyAgTV9PTERTVU4yID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZmRlZiBNXzY4MDEwCi0gTV9fNjgwMTAgPSBNXzY4MDEwLAorICBNX182ODAxMCA9IE1fNjgwMTAsCiAjZWxzZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNXzY4MDEwID0gMSwKKyAgTV82ODAxMCA9IDEsCiAjZW5kaWYKICNpZmRlZiBNXzY4MDIwCi0gTV9fNjgwMjAgPSBNXzY4MDIwLAorICBNX182ODAyMCA9IE1fNjgwMjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKLSBNXzY4MDIwID0gMiwKKyAgTV82ODAyMCA9IDIsCiAjZW5kaWYKICNpZmRlZiBNX1NQQVJDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1fX1NQQVJDID0gTV9TUEFSQywKKyAgTV9fU1BBUkMgPSBNX1NQQVJDLAogI2Vsc2UKLSBNX1NQQVJDID0gMywKKyAgTV9TUEFSQyA9IDMsCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTV8zODYgPSAxMDAsCi0gTV9NSVBTMSA9IDE1MSwKLSBNX01JUFMyID0gMTUyCisgIE1fMzg2ID0gMTAwLAorICBNX01JUFMxID0gMTUxLAorICBNX01JUFMyID0gMTUyCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgTl9NQUdJQwogI2RlZmluZSBOX01BR0lDKGV4ZWMpICgoZXhlYykuYV9pbmZvICYgMHhmZmZmKQogI2VuZGlmCi0jZGVmaW5lIE5fTUFDSFRZUEUoZXhlYykgKChlbnVtIG1hY2hpbmVfdHlwZSkoKChleGVjKS5hX2luZm8gPj4gMTYpICYgMHhmZikpCisjZGVmaW5lIE5fTUFDSFRZUEUoZXhlYykgKChlbnVtIG1hY2hpbmVfdHlwZSkgKCgoZXhlYykuYV9pbmZvID4+IDE2KSAmIDB4ZmYpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTl9GTEFHUyhleGVjKSAoKChleGVjKS5hX2luZm8gPj4gMjQpICYgMHhmZikKLSNkZWZpbmUgTl9TRVRfSU5GTyhleGVjLCBtYWdpYywgdHlwZSwgZmxhZ3MpICAgKChleGVjKS5hX2luZm8gPSAoKG1hZ2ljKSAmIDB4ZmZmZikgICB8ICgoKGludCkodHlwZSkgJiAweGZmKSA8PCAxNikgICB8ICgoKGZsYWdzKSAmIDB4ZmYpIDw8IDI0KSkKLSNkZWZpbmUgTl9TRVRfTUFHSUMoZXhlYywgbWFnaWMpICAgKChleGVjKS5hX2luZm8gPSAoKChleGVjKS5hX2luZm8gJiAweGZmZmYwMDAwKSB8ICgobWFnaWMpICYgMHhmZmZmKSkpCi0jZGVmaW5lIE5fU0VUX01BQ0hUWVBFKGV4ZWMsIG1hY2h0eXBlKSAgICgoZXhlYykuYV9pbmZvID0gICAoKGV4ZWMpLmFfaW5mbyYweGZmMDBmZmZmKSB8ICgoKChpbnQpKG1hY2h0eXBlKSkmMHhmZikgPDwgMTYpKQorI2RlZmluZSBOX1NFVF9JTkZPKGV4ZWMsbWFnaWMsdHlwZSxmbGFncykgKChleGVjKS5hX2luZm8gPSAoKG1hZ2ljKSAmIDB4ZmZmZikgfCAoKChpbnQpICh0eXBlKSAmIDB4ZmYpIDw8IDE2KSB8ICgoKGZsYWdzKSAmIDB4ZmYpIDw8IDI0KSkKKyNkZWZpbmUgTl9TRVRfTUFHSUMoZXhlYyxtYWdpYykgKChleGVjKS5hX2luZm8gPSAoKChleGVjKS5hX2luZm8gJiAweGZmZmYwMDAwKSB8ICgobWFnaWMpICYgMHhmZmZmKSkpCisjZGVmaW5lIE5fU0VUX01BQ0hUWVBFKGV4ZWMsbWFjaHR5cGUpICgoZXhlYykuYV9pbmZvID0gKChleGVjKS5hX2luZm8gJiAweGZmMDBmZmZmKSB8ICgoKChpbnQpIChtYWNodHlwZSkpICYgMHhmZikgPDwgMTYpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTl9TRVRfRkxBR1MoZXhlYywgZmxhZ3MpICAgKChleGVjKS5hX2luZm8gPSAgICgoZXhlYykuYV9pbmZvJjB4MDBmZmZmZmYpIHwgKCgoZmxhZ3MpICYgMHhmZikgPDwgMjQpKQorI2RlZmluZSBOX1NFVF9GTEFHUyhleGVjLGZsYWdzKSAoKGV4ZWMpLmFfaW5mbyA9ICgoZXhlYykuYV9pbmZvICYgMHgwMGZmZmZmZikgfCAoKChmbGFncykgJiAweGZmKSA8PCAyNCkpCiAjZGVmaW5lIE9NQUdJQyAwNDA3CiAjZGVmaW5lIE5NQUdJQyAwNDEwCiAjZGVmaW5lIFpNQUdJQyAwNDEzCkBAIC03NCwxMiArNzQsMTIgQEAKICNkZWZpbmUgUU1BR0lDIDAzMTQKICNkZWZpbmUgQ01BR0lDIDA0MjEKICNpZm5kZWYgTl9CQURNQUcKLSNkZWZpbmUgTl9CQURNQUcoeCkgKE5fTUFHSUMoeCkgIT0gT01BR0lDICAgJiYgTl9NQUdJQyh4KSAhPSBOTUFHSUMgICAmJiBOX01BR0lDKHgpICE9IFpNQUdJQyAgICYmIE5fTUFHSUMoeCkgIT0gUU1BR0lDKQorI2RlZmluZSBOX0JBRE1BRyh4KSAoTl9NQUdJQyh4KSAhPSBPTUFHSUMgJiYgTl9NQUdJQyh4KSAhPSBOTUFHSUMgJiYgTl9NQUdJQyh4KSAhPSBaTUFHSUMgJiYgTl9NQUdJQyh4KSAhPSBRTUFHSUMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0jZGVmaW5lIF9OX0hEUk9GRih4KSAoMTAyNCAtIHNpemVvZiAoc3RydWN0IGV4ZWMpKQorI2RlZmluZSBfTl9IRFJPRkYoeCkgKDEwMjQgLSBzaXplb2Yoc3RydWN0IGV4ZWMpKQogI2lmbmRlZiBOX1RYVE9GRgotI2RlZmluZSBOX1RYVE9GRih4KSAgIChOX01BR0lDKHgpID09IFpNQUdJQyA/IF9OX0hEUk9GRigoeCkpICsgc2l6ZW9mIChzdHJ1Y3QgZXhlYykgOiAgIChOX01BR0lDKHgpID09IFFNQUdJQyA/IDAgOiBzaXplb2YgKHN0cnVjdCBleGVjKSkpCisjZGVmaW5lIE5fVFhUT0ZGKHgpIChOX01BR0lDKHgpID09IFpNQUdJQyA/IF9OX0hEUk9GRigoeCkpICsgc2l6ZW9mKHN0cnVjdCBleGVjKSA6IChOX01BR0lDKHgpID09IFFNQUdJQyA/IDAgOiBzaXplb2Yoc3RydWN0IGV4ZWMpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZm5kZWYgTl9EQVRPRkYKQEAgLTEzNCwxMCArMTM0LDEwIEBACiAjZW5kaWYKICNlbmRpZgogI2RlZmluZSBfTl9TRUdNRU5UX1JPVU5EKHgpIEFMSUdOKHgsIFNFR01FTlRfU0laRSkKLSNkZWZpbmUgX05fVFhURU5EQUREUih4KSAoTl9UWFRBRERSKHgpKyh4KS5hX3RleHQpCisjZGVmaW5lIF9OX1RYVEVOREFERFIoeCkgKE5fVFhUQUREUih4KSArICh4KS5hX3RleHQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBOX0RBVEFERFIKLSNkZWZpbmUgTl9EQVRBRERSKHgpICAgKE5fTUFHSUMoeCk9PU9NQUdJQz8gKF9OX1RYVEVOREFERFIoeCkpICAgOiAoX05fU0VHTUVOVF9ST1VORCAoX05fVFhURU5EQUREUih4KSkpKQorI2RlZmluZSBOX0RBVEFERFIoeCkgKE5fTUFHSUMoeCkgPT0gT01BR0lDID8gKF9OX1RYVEVOREFERFIoeCkpIDogKF9OX1NFR01FTlRfUk9VTkQoX05fVFhURU5EQUREUih4KSkpKQogI2VuZGlmCiAjaWZuZGVmIE5fQlNTQUREUgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE0NiwxNyArMTQ2LDE3IEBACiAjaWZuZGVmIE5fTkxJU1RfREVDTEFSRUQKIHN0cnVjdCBubGlzdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBjaGFyICpuX25hbWU7Ci0gc3RydWN0IG5saXN0ICpuX25leHQ7Ci0gbG9uZyBuX3N0cng7CisgIHVuaW9uIHsKKyAgICBjaGFyICogbl9uYW1lOworICAgIHN0cnVjdCBubGlzdCAqIG5fbmV4dDsKKyAgICBsb25nIG5fc3RyeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBuX3VuOwotIHVuc2lnbmVkIGNoYXIgbl90eXBlOwotIGNoYXIgbl9vdGhlcjsKLSBzaG9ydCBuX2Rlc2M7CisgIH0gbl91bjsKKyAgdW5zaWduZWQgY2hhciBuX3R5cGU7CisgIGNoYXIgbl9vdGhlcjsKKyAgc2hvcnQgbl9kZXNjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG5fdmFsdWU7CisgIHVuc2lnbmVkIGxvbmcgbl92YWx1ZTsKIH07CiAjZW5kaWYKICNpZm5kZWYgTl9VTkRGCkBAIC0yMDIsMjUgKzIwMiwyNCBAQAogI2RlZmluZSBOX1NFVFYgMHgxQwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgTl9SRUxPQ0FUSU9OX0lORk9fREVDTEFSRUQKLXN0cnVjdCByZWxvY2F0aW9uX2luZm8KLXsKLSBpbnQgcl9hZGRyZXNzOworc3RydWN0IHJlbG9jYXRpb25faW5mbyB7CisgIGludCByX2FkZHJlc3M7CisgIHVuc2lnbmVkIGludCByX3N5bWJvbG51bSA6IDI0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcl9zeW1ib2xudW06MjQ7Ci0gdW5zaWduZWQgaW50IHJfcGNyZWw6MTsKLSB1bnNpZ25lZCBpbnQgcl9sZW5ndGg6MjsKLSB1bnNpZ25lZCBpbnQgcl9leHRlcm46MTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCByX3BjcmVsIDogMTsKKyAgdW5zaWduZWQgaW50IHJfbGVuZ3RoIDogMjsKKyAgdW5zaWduZWQgaW50IHJfZXh0ZXJuIDogMTsKICNpZmRlZiBOUzMySwotIHVuc2lnbmVkIHJfYnNyOjE7Ci0gdW5zaWduZWQgcl9kaXNwOjE7Ci0gdW5zaWduZWQgcl9wYWQ6MjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIHJfYnNyIDogMTsKKyAgdW5zaWduZWQgcl9kaXNwIDogMTsKKyAgdW5zaWduZWQgcl9wYWQgOiAyOwogI2Vsc2UKLSB1bnNpZ25lZCBpbnQgcl9wYWQ6NDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCByX3BhZCA6IDQ7CiAjZW5kaWYKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWNjdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hY2N0LmgKaW5kZXggYzE0ODg2YS4uNGViM2M5MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hY2N0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hY2N0LmgKQEAgLTI2LDgwICsyNiw3OCBAQAogdHlwZWRlZiBfX3UzMiBjb21wMl90OwogI2RlZmluZSBBQ0NUX0NPTU0gMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgYWNjdAotewotIGNoYXIgYWNfZmxhZzsKLSBjaGFyIGFjX3ZlcnNpb247CitzdHJ1Y3QgYWNjdCB7CisgIGNoYXIgYWNfZmxhZzsKKyAgY2hhciBhY192ZXJzaW9uOworICBfX3UxNiBhY191aWQxNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYWNfdWlkMTY7Ci0gX191MTYgYWNfZ2lkMTY7Ci0gX191MTYgYWNfdHR5OwotIF9fdTMyIGFjX2J0aW1lOworICBfX3UxNiBhY19naWQxNjsKKyAgX191MTYgYWNfdHR5OworICBfX3UzMiBhY19idGltZTsKKyAgY29tcF90IGFjX3V0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb21wX3QgYWNfdXRpbWU7Ci0gY29tcF90IGFjX3N0aW1lOwotIGNvbXBfdCBhY19ldGltZTsKLSBjb21wX3QgYWNfbWVtOworICBjb21wX3QgYWNfc3RpbWU7CisgIGNvbXBfdCBhY19ldGltZTsKKyAgY29tcF90IGFjX21lbTsKKyAgY29tcF90IGFjX2lvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb21wX3QgYWNfaW87Ci0gY29tcF90IGFjX3J3OwotIGNvbXBfdCBhY19taW5mbHQ7Ci0gY29tcF90IGFjX21hamZsdDsKKyAgY29tcF90IGFjX3J3OworICBjb21wX3QgYWNfbWluZmx0OworICBjb21wX3QgYWNfbWFqZmx0OworICBjb21wX3QgYWNfc3dhcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbXBfdCBhY19zd2FwczsKLSBfX3UxNiBhY19haHo7Ci0gX191MzIgYWNfZXhpdGNvZGU7Ci0gY2hhciBhY19jb21tW0FDQ1RfQ09NTSArIDFdOworICBfX3UxNiBhY19haHo7CisgIF9fdTMyIGFjX2V4aXRjb2RlOworICBjaGFyIGFjX2NvbW1bQUNDVF9DT01NICsgMV07CisgIF9fdTggYWNfZXRpbWVfaGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWNfZXRpbWVfaGk7Ci0gX191MTYgYWNfZXRpbWVfbG87Ci0gX191MzIgYWNfdWlkOwotIF9fdTMyIGFjX2dpZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGFjX2V0aW1lX2xvOworICBfX3UzMiBhY191aWQ7CisgIF9fdTMyIGFjX2dpZDsKIH07Ci1zdHJ1Y3QgYWNjdF92MwotewotIGNoYXIgYWNfZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhY192ZXJzaW9uOwotIF9fdTE2IGFjX3R0eTsKLSBfX3UzMiBhY19leGl0Y29kZTsKLSBfX3UzMiBhY191aWQ7CitzdHJ1Y3QgYWNjdF92MyB7CisgIGNoYXIgYWNfZmxhZzsKKyAgY2hhciBhY192ZXJzaW9uOworICBfX3UxNiBhY190dHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFjX2dpZDsKLSBfX3UzMiBhY19waWQ7Ci0gX191MzIgYWNfcHBpZDsKLSBfX3UzMiBhY19idGltZTsKKyAgX191MzIgYWNfZXhpdGNvZGU7CisgIF9fdTMyIGFjX3VpZDsKKyAgX191MzIgYWNfZ2lkOworICBfX3UzMiBhY19waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZsb2F0IGFjX2V0aW1lOwotIGNvbXBfdCBhY191dGltZTsKLSBjb21wX3QgYWNfc3RpbWU7Ci0gY29tcF90IGFjX21lbTsKKyAgX191MzIgYWNfcHBpZDsKKyAgX191MzIgYWNfYnRpbWU7CisgIGZsb2F0IGFjX2V0aW1lOworICBjb21wX3QgYWNfdXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbXBfdCBhY19pbzsKLSBjb21wX3QgYWNfcnc7Ci0gY29tcF90IGFjX21pbmZsdDsKLSBjb21wX3QgYWNfbWFqZmx0OworICBjb21wX3QgYWNfc3RpbWU7CisgIGNvbXBfdCBhY19tZW07CisgIGNvbXBfdCBhY19pbzsKKyAgY29tcF90IGFjX3J3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb21wX3QgYWNfc3dhcHM7Ci0gY2hhciBhY19jb21tW0FDQ1RfQ09NTV07CisgIGNvbXBfdCBhY19taW5mbHQ7CisgIGNvbXBfdCBhY19tYWpmbHQ7CisgIGNvbXBfdCBhY19zd2FwczsKKyAgY2hhciBhY19jb21tW0FDQ1RfQ09NTV07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQUZPUksgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVNVIDB4MDIKICNkZWZpbmUgQUNPTVBBVCAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQ09SRSAweDA4CiAjZGVmaW5lIEFYU0lHIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWYgZGVmaW5lZChfX0JZVEVfT1JERVIpID8gX19CWVRFX09SREVSID09IF9fQklHX0VORElBTiA6IGRlZmluZWQoX19CSUdfRU5ESUFOKQogI2RlZmluZSBBQ0NUX0JZVEVPUkRFUiAweDgwCi0jZWxpZiBkZWZpbmVkKF9fQllURV9PUkRFUikgPyBfX0JZVEVfT1JERVIgPT0gX19MSVRUTEVfRU5ESUFOIDogZGVmaW5lZChfX0xJVFRMRV9FTkRJQU4pCi0jZGVmaW5lIEFDQ1RfQllURU9SREVSIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZWxpZiBkZWZpbmVkKF9fQllURV9PUkRFUik/X19CWVRFX09SREVSPT1fX0xJVFRMRV9FTkRJQU46ZGVmaW5lZChfX0xJVFRMRV9FTkRJQU4pCisjZGVmaW5lIEFDQ1RfQllURU9SREVSIDB4MDAKICNlbHNlCiAjZXJyb3IgdW5zcGVjaWZpZWQgZW5kaWFubmVzcworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2RlZmluZSBBQ0NUX1ZFUlNJT04gMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUhaIChIWikKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWRiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FkYi5oCmluZGV4IDE2MTQwODYuLmIxZGZkMzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWRiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGIuaApAQCAtMjEsOCArMjEsOCBAQAogI2RlZmluZSBBREJfQlVTUkVTRVQgMAogI2RlZmluZSBBREJfRkxVU0goaWQpICgweDAxIHwgKChpZCkgPDwgNCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBREJfV1JJVEVSRUcoaWQsIHJlZykgKDB4MDggfCAocmVnKSB8ICgoaWQpIDw8IDQpKQotI2RlZmluZSBBREJfUkVBRFJFRyhpZCwgcmVnKSAoMHgwQyB8IChyZWcpIHwgKChpZCkgPDwgNCkpCisjZGVmaW5lIEFEQl9XUklURVJFRyhpZCxyZWcpICgweDA4IHwgKHJlZykgfCAoKGlkKSA8PCA0KSkKKyNkZWZpbmUgQURCX1JFQURSRUcoaWQscmVnKSAoMHgwQyB8IChyZWcpIHwgKChpZCkgPDwgNCkpCiAjZGVmaW5lIEFEQl9ET05HTEUgMQogI2RlZmluZSBBREJfS0VZQk9BUkQgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWRmc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGZzX2ZzLmgKaW5kZXggOGFjYzhjNi4uZTVhZDA0ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGZzX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGZzX2ZzLmgKQEAgLTIyLDM3ICsyMiwzNyBAQAogI2luY2x1ZGUgPGxpbnV4L21hZ2ljLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFkZnNfZGlzY3JlY29yZCB7Ci0gX191OCBsb2cyc2Vjc2l6ZTsKLSBfX3U4IHNlY3NwZXJ0cmFjazsKLSBfX3U4IGhlYWRzOworICBfX3U4IGxvZzJzZWNzaXplOworICBfX3U4IHNlY3NwZXJ0cmFjazsKKyAgX191OCBoZWFkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkZW5zaXR5OwotIF9fdTggaWRsZW47Ci0gX191OCBsb2cyYnBtYjsKLSBfX3U4IHNrZXc7CisgIF9fdTggZGVuc2l0eTsKKyAgX191OCBpZGxlbjsKKyAgX191OCBsb2cyYnBtYjsKKyAgX191OCBza2V3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJvb3RvcHRpb247Ci0gX191OCBsb3dzZWN0b3I7Ci0gX191OCBuem9uZXM7Ci0gX19sZTE2IHpvbmVfc3BhcmU7CisgIF9fdTggYm9vdG9wdGlvbjsKKyAgX191OCBsb3dzZWN0b3I7CisgIF9fdTggbnpvbmVzOworICBfX2xlMTYgem9uZV9zcGFyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJvb3Q7Ci0gX19sZTMyIGRpc2Nfc2l6ZTsKLSBfX2xlMTYgZGlzY19pZDsKLSBfX3U4IGRpc2NfbmFtZVsxMF07CisgIF9fbGUzMiByb290OworICBfX2xlMzIgZGlzY19zaXplOworICBfX2xlMTYgZGlzY19pZDsKKyAgX191OCBkaXNjX25hbWVbMTBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZGlzY190eXBlOwotIF9fbGUzMiBkaXNjX3NpemVfaGlnaDsKLSBfX3U4IGxvZzJzaGFyZXNpemU6NDsKLSBfX3U4IHVudXNlZDQwOjQ7CisgIF9fbGUzMiBkaXNjX3R5cGU7CisgIF9fbGUzMiBkaXNjX3NpemVfaGlnaDsKKyAgX191OCBsb2cyc2hhcmVzaXplIDogNDsKKyAgX191OCB1bnVzZWQ0MCA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYmlnX2ZsYWc6MTsKLSBfX3U4IHVudXNlZDQxOjE7Ci0gX191OCBuem9uZXNfaGlnaDsKLSBfX2xlMzIgZm9ybWF0X3ZlcnNpb247CisgIF9fdTggYmlnX2ZsYWcgOiAxOworICBfX3U4IHVudXNlZDQxIDogMTsKKyAgX191OCBuem9uZXNfaGlnaDsKKyAgX19sZTMyIGZvcm1hdF92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgcm9vdF9zaXplOwotIF9fdTggdW51c2VkNTJbNjAgLSA1Ml07CisgIF9fbGUzMiByb290X3NpemU7CisgIF9fdTggdW51c2VkNTJbNjAgLSA1Ml07CiB9OwogI2RlZmluZSBBREZTX0RJU0NSRUNPUkQgKDB4YzAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWZmc19oYXJkYmxvY2tzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FmZnNfaGFyZGJsb2Nrcy5oCmluZGV4IDBmNTZiODEuLjBhNjE4ODcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWZmc19oYXJkYmxvY2tzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZmZzX2hhcmRibG9ja3MuaApAQCAtMjEsNjkgKzIxLDY5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBSaWdpZERpc2tCbG9jayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJkYl9JRDsKLSBfX2JlMzIgcmRiX1N1bW1lZExvbmdzOwotIF9fczMyIHJkYl9DaGtTdW07Ci0gX191MzIgcmRiX0hvc3RJRDsKKyAgX191MzIgcmRiX0lEOworICBfX2JlMzIgcmRiX1N1bW1lZExvbmdzOworICBfX3MzMiByZGJfQ2hrU3VtOworICBfX3UzMiByZGJfSG9zdElEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgcmRiX0Jsb2NrQnl0ZXM7Ci0gX191MzIgcmRiX0ZsYWdzOwotIF9fdTMyIHJkYl9CYWRCbG9ja0xpc3Q7Ci0gX19iZTMyIHJkYl9QYXJ0aXRpb25MaXN0OworICBfX2JlMzIgcmRiX0Jsb2NrQnl0ZXM7CisgIF9fdTMyIHJkYl9GbGFnczsKKyAgX191MzIgcmRiX0JhZEJsb2NrTGlzdDsKKyAgX19iZTMyIHJkYl9QYXJ0aXRpb25MaXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZGJfRmlsZVN5c0hlYWRlckxpc3Q7Ci0gX191MzIgcmRiX0RyaXZlSW5pdDsKLSBfX3UzMiByZGJfUmVzZXJ2ZWQxWzZdOwotIF9fdTMyIHJkYl9DeWxpbmRlcnM7CisgIF9fdTMyIHJkYl9GaWxlU3lzSGVhZGVyTGlzdDsKKyAgX191MzIgcmRiX0RyaXZlSW5pdDsKKyAgX191MzIgcmRiX1Jlc2VydmVkMVs2XTsKKyAgX191MzIgcmRiX0N5bGluZGVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmRiX1NlY3RvcnM7Ci0gX191MzIgcmRiX0hlYWRzOwotIF9fdTMyIHJkYl9JbnRlcmxlYXZlOwotIF9fdTMyIHJkYl9QYXJrOworICBfX3UzMiByZGJfU2VjdG9yczsKKyAgX191MzIgcmRiX0hlYWRzOworICBfX3UzMiByZGJfSW50ZXJsZWF2ZTsKKyAgX191MzIgcmRiX1Bhcms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJkYl9SZXNlcnZlZDJbM107Ci0gX191MzIgcmRiX1dyaXRlUHJlQ29tcDsKLSBfX3UzMiByZGJfUmVkdWNlZFdyaXRlOwotIF9fdTMyIHJkYl9TdGVwUmF0ZTsKKyAgX191MzIgcmRiX1Jlc2VydmVkMlszXTsKKyAgX191MzIgcmRiX1dyaXRlUHJlQ29tcDsKKyAgX191MzIgcmRiX1JlZHVjZWRXcml0ZTsKKyAgX191MzIgcmRiX1N0ZXBSYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZGJfUmVzZXJ2ZWQzWzVdOwotIF9fdTMyIHJkYl9SREJCbG9ja3NMbzsKLSBfX3UzMiByZGJfUkRCQmxvY2tzSGk7Ci0gX191MzIgcmRiX0xvQ3lsaW5kZXI7CisgIF9fdTMyIHJkYl9SZXNlcnZlZDNbNV07CisgIF9fdTMyIHJkYl9SREJCbG9ja3NMbzsKKyAgX191MzIgcmRiX1JEQkJsb2Nrc0hpOworICBfX3UzMiByZGJfTG9DeWxpbmRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmRiX0hpQ3lsaW5kZXI7Ci0gX191MzIgcmRiX0N5bEJsb2NrczsKLSBfX3UzMiByZGJfQXV0b1BhcmtTZWNvbmRzOwotIF9fdTMyIHJkYl9IaWdoUkRTS0Jsb2NrOworICBfX3UzMiByZGJfSGlDeWxpbmRlcjsKKyAgX191MzIgcmRiX0N5bEJsb2NrczsKKyAgX191MzIgcmRiX0F1dG9QYXJrU2Vjb25kczsKKyAgX191MzIgcmRiX0hpZ2hSRFNLQmxvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJkYl9SZXNlcnZlZDQ7Ci0gY2hhciByZGJfRGlza1ZlbmRvcls4XTsKLSBjaGFyIHJkYl9EaXNrUHJvZHVjdFsxNl07Ci0gY2hhciByZGJfRGlza1JldmlzaW9uWzRdOworICBfX3UzMiByZGJfUmVzZXJ2ZWQ0OworICBjaGFyIHJkYl9EaXNrVmVuZG9yWzhdOworICBjaGFyIHJkYl9EaXNrUHJvZHVjdFsxNl07CisgIGNoYXIgcmRiX0Rpc2tSZXZpc2lvbls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciByZGJfQ29udHJvbGxlclZlbmRvcls4XTsKLSBjaGFyIHJkYl9Db250cm9sbGVyUHJvZHVjdFsxNl07Ci0gY2hhciByZGJfQ29udHJvbGxlclJldmlzaW9uWzRdOwotIF9fdTMyIHJkYl9SZXNlcnZlZDVbMTBdOworICBjaGFyIHJkYl9Db250cm9sbGVyVmVuZG9yWzhdOworICBjaGFyIHJkYl9Db250cm9sbGVyUHJvZHVjdFsxNl07CisgIGNoYXIgcmRiX0NvbnRyb2xsZXJSZXZpc2lvbls0XTsKKyAgX191MzIgcmRiX1Jlc2VydmVkNVsxMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSUROQU1FX1JJR0lERElTSyAweDUyNDQ1MzRCCiBzdHJ1Y3QgUGFydGl0aW9uQmxvY2sgewotIF9fYmUzMiBwYl9JRDsKKyAgX19iZTMyIHBiX0lEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgcGJfU3VtbWVkTG9uZ3M7Ci0gX19zMzIgcGJfQ2hrU3VtOwotIF9fdTMyIHBiX0hvc3RJRDsKLSBfX2JlMzIgcGJfTmV4dDsKKyAgX19iZTMyIHBiX1N1bW1lZExvbmdzOworICBfX3MzMiBwYl9DaGtTdW07CisgIF9fdTMyIHBiX0hvc3RJRDsKKyAgX19iZTMyIHBiX05leHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBiX0ZsYWdzOwotIF9fdTMyIHBiX1Jlc2VydmVkMVsyXTsKLSBfX3UzMiBwYl9EZXZGbGFnczsKLSBfX3U4IHBiX0RyaXZlTmFtZVszMl07CisgIF9fdTMyIHBiX0ZsYWdzOworICBfX3UzMiBwYl9SZXNlcnZlZDFbMl07CisgIF9fdTMyIHBiX0RldkZsYWdzOworICBfX3U4IHBiX0RyaXZlTmFtZVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBiX1Jlc2VydmVkMlsxNV07Ci0gX19iZTMyIHBiX0Vudmlyb25tZW50WzE3XTsKLSBfX3UzMiBwYl9FUmVzZXJ2ZWRbMTVdOworICBfX3UzMiBwYl9SZXNlcnZlZDJbMTVdOworICBfX2JlMzIgcGJfRW52aXJvbm1lbnRbMTddOworICBfX3UzMiBwYl9FUmVzZXJ2ZWRbMTVdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElETkFNRV9QQVJUSVRJT04gMHg1MDQxNTI1NApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZ3BnYXJ0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FncGdhcnQuaAppbmRleCBmNzM1Yjk1Li4wYjEwM2NjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FncGdhcnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FncGdhcnQuaApAQCAtMTksMjAgKzE5LDIwIEBACiAjaWZuZGVmIF9VQVBJX0FHUF9ICiAjZGVmaW5lIF9VQVBJX0FHUF9ICiAjZGVmaW5lIEFHUElPQ19CQVNFICdBJwotI2RlZmluZSBBR1BJT0NfSU5GTyBfSU9SIChBR1BJT0NfQkFTRSwgMCwgc3RydWN0IGFncF9pbmZvKikKKyNkZWZpbmUgQUdQSU9DX0lORk8gX0lPUihBR1BJT0NfQkFTRSwgMCwgc3RydWN0IGFncF9pbmZvICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBR1BJT0NfQUNRVUlSRSBfSU8gKEFHUElPQ19CQVNFLCAxKQotI2RlZmluZSBBR1BJT0NfUkVMRUFTRSBfSU8gKEFHUElPQ19CQVNFLCAyKQotI2RlZmluZSBBR1BJT0NfU0VUVVAgX0lPVyAoQUdQSU9DX0JBU0UsIDMsIHN0cnVjdCBhZ3Bfc2V0dXAqKQotI2RlZmluZSBBR1BJT0NfUkVTRVJWRSBfSU9XIChBR1BJT0NfQkFTRSwgNCwgc3RydWN0IGFncF9yZWdpb24qKQorI2RlZmluZSBBR1BJT0NfQUNRVUlSRSBfSU8oQUdQSU9DX0JBU0UsIDEpCisjZGVmaW5lIEFHUElPQ19SRUxFQVNFIF9JTyhBR1BJT0NfQkFTRSwgMikKKyNkZWZpbmUgQUdQSU9DX1NFVFVQIF9JT1coQUdQSU9DX0JBU0UsIDMsIHN0cnVjdCBhZ3Bfc2V0dXAgKikKKyNkZWZpbmUgQUdQSU9DX1JFU0VSVkUgX0lPVyhBR1BJT0NfQkFTRSwgNCwgc3RydWN0IGFncF9yZWdpb24gKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFHUElPQ19QUk9URUNUIF9JT1cgKEFHUElPQ19CQVNFLCA1LCBzdHJ1Y3QgYWdwX3JlZ2lvbiopCi0jZGVmaW5lIEFHUElPQ19BTExPQ0FURSBfSU9XUihBR1BJT0NfQkFTRSwgNiwgc3RydWN0IGFncF9hbGxvY2F0ZSopCi0jZGVmaW5lIEFHUElPQ19ERUFMTE9DQVRFIF9JT1cgKEFHUElPQ19CQVNFLCA3LCBpbnQpCi0jZGVmaW5lIEFHUElPQ19CSU5EIF9JT1cgKEFHUElPQ19CQVNFLCA4LCBzdHJ1Y3QgYWdwX2JpbmQqKQorI2RlZmluZSBBR1BJT0NfUFJPVEVDVCBfSU9XKEFHUElPQ19CQVNFLCA1LCBzdHJ1Y3QgYWdwX3JlZ2lvbiAqKQorI2RlZmluZSBBR1BJT0NfQUxMT0NBVEUgX0lPV1IoQUdQSU9DX0JBU0UsIDYsIHN0cnVjdCBhZ3BfYWxsb2NhdGUgKikKKyNkZWZpbmUgQUdQSU9DX0RFQUxMT0NBVEUgX0lPVyhBR1BJT0NfQkFTRSwgNywgaW50KQorI2RlZmluZSBBR1BJT0NfQklORCBfSU9XKEFHUElPQ19CQVNFLCA4LCBzdHJ1Y3QgYWdwX2JpbmQgKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFHUElPQ19VTkJJTkQgX0lPVyAoQUdQSU9DX0JBU0UsIDksIHN0cnVjdCBhZ3BfdW5iaW5kKikKLSNkZWZpbmUgQUdQSU9DX0NISVBTRVRfRkxVU0ggX0lPIChBR1BJT0NfQkFTRSwgMTApCisjZGVmaW5lIEFHUElPQ19VTkJJTkQgX0lPVyhBR1BJT0NfQkFTRSwgOSwgc3RydWN0IGFncF91bmJpbmQgKikKKyNkZWZpbmUgQUdQSU9DX0NISVBTRVRfRkxVU0ggX0lPKEFHUElPQ19CQVNFLCAxMCkKICNkZWZpbmUgQUdQX0RFVklDRSAiL2Rldi9hZ3BnYXJ0IgogI2lmbmRlZiBUUlVFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDQsNTUgKzQ0LDU1IEBACiAjZW5kaWYKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGFncF92ZXJzaW9uIHsKLSBfX3UxNiBtYWpvcjsKKyAgX191MTYgbWFqb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1pbm9yOworICBfX3UxNiBtaW5vcjsKIH07CiB0eXBlZGVmIHN0cnVjdCBfYWdwX2luZm8gewotIHN0cnVjdCBhZ3BfdmVyc2lvbiB2ZXJzaW9uOworICBzdHJ1Y3QgYWdwX3ZlcnNpb24gdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnJpZGdlX2lkOwotIF9fdTMyIGFncF9tb2RlOwotIHVuc2lnbmVkIGxvbmcgYXBlcl9iYXNlOwotIHNpemVfdCBhcGVyX3NpemU7CisgIF9fdTMyIGJyaWRnZV9pZDsKKyAgX191MzIgYWdwX21vZGU7CisgIHVuc2lnbmVkIGxvbmcgYXBlcl9iYXNlOworICBzaXplX3QgYXBlcl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgcGdfdG90YWw7Ci0gc2l6ZV90IHBnX3N5c3RlbTsKLSBzaXplX3QgcGdfdXNlZDsKKyAgc2l6ZV90IHBnX3RvdGFsOworICBzaXplX3QgcGdfc3lzdGVtOworICBzaXplX3QgcGdfdXNlZDsKIH0gYWdwX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX2FncF9zZXR1cCB7Ci0gX191MzIgYWdwX21vZGU7CisgIF9fdTMyIGFncF9tb2RlOwogfSBhZ3Bfc2V0dXA7CiB0eXBlZGVmIHN0cnVjdCBfYWdwX3NlZ21lbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9vZmZfdCBwZ19zdGFydDsKLSBfX2tlcm5lbF9zaXplX3QgcGdfY291bnQ7Ci0gaW50IHByb3Q7CisgIF9fa2VybmVsX29mZl90IHBnX3N0YXJ0OworICBfX2tlcm5lbF9zaXplX3QgcGdfY291bnQ7CisgIGludCBwcm90OwogfSBhZ3Bfc2VnbWVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfYWdwX3JlZ2lvbiB7Ci0gX19rZXJuZWxfcGlkX3QgcGlkOwotIF9fa2VybmVsX3NpemVfdCBzZWdfY291bnQ7Ci0gc3RydWN0IF9hZ3Bfc2VnbWVudCAqc2VnX2xpc3Q7CisgIF9fa2VybmVsX3BpZF90IHBpZDsKKyAgX19rZXJuZWxfc2l6ZV90IHNlZ19jb3VudDsKKyAgc3RydWN0IF9hZ3Bfc2VnbWVudCAqIHNlZ19saXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gYWdwX3JlZ2lvbjsKIHR5cGVkZWYgc3RydWN0IF9hZ3BfYWxsb2NhdGUgewotIGludCBrZXk7Ci0gX19rZXJuZWxfc2l6ZV90IHBnX2NvdW50OworICBpbnQga2V5OworICBfX2tlcm5lbF9zaXplX3QgcGdfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgcGh5c2ljYWw7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHBoeXNpY2FsOwogfSBhZ3BfYWxsb2NhdGU7CiB0eXBlZGVmIHN0cnVjdCBfYWdwX2JpbmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQga2V5OwotIF9fa2VybmVsX29mZl90IHBnX3N0YXJ0OworICBpbnQga2V5OworICBfX2tlcm5lbF9vZmZfdCBwZ19zdGFydDsKIH0gYWdwX2JpbmQ7CiB0eXBlZGVmIHN0cnVjdCBfYWdwX3VuYmluZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBrZXk7Ci0gX191MzIgcHJpb3JpdHk7CisgIGludCBrZXk7CisgIF9fdTMyIHByaW9yaXR5OwogfSBhZ3BfdW5iaW5kOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9haW9fYWJpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Fpb19hYmkuaAppbmRleCBhZTAyYmY3Li42ODdjNDM1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Fpb19hYmkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Fpb19hYmkuaApAQCAtMjMsNDggKzIzLDQ4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX2tlcm5lbF91bG9uZ190IGFpb19jb250ZXh0X3Q7CiBlbnVtIHsKLSBJT0NCX0NNRF9QUkVBRCA9IDAsCi0gSU9DQl9DTURfUFdSSVRFID0gMSwKKyAgSU9DQl9DTURfUFJFQUQgPSAwLAorICBJT0NCX0NNRF9QV1JJVEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJT0NCX0NNRF9GU1lOQyA9IDIsCi0gSU9DQl9DTURfRkRTWU5DID0gMywKLSBJT0NCX0NNRF9OT09QID0gNiwKLSBJT0NCX0NNRF9QUkVBRFYgPSA3LAorICBJT0NCX0NNRF9GU1lOQyA9IDIsCisgIElPQ0JfQ01EX0ZEU1lOQyA9IDMsCisgIElPQ0JfQ01EX05PT1AgPSA2LAorICBJT0NCX0NNRF9QUkVBRFYgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJT0NCX0NNRF9QV1JJVEVWID0gOCwKKyAgSU9DQl9DTURfUFdSSVRFViA9IDgsCiB9OwogI2RlZmluZSBJT0NCX0ZMQUdfUkVTRkQgKDEgPDwgMCkKIHN0cnVjdCBpb19ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGE7Ci0gX191NjQgb2JqOwotIF9fczY0IHJlczsKLSBfX3M2NCByZXMyOworICBfX3U2NCBkYXRhOworICBfX3U2NCBvYmo7CisgIF9fczY0IHJlczsKKyAgX19zNjQgcmVzMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2lmIGRlZmluZWQoX19CWVRFX09SREVSKSA/IF9fQllURV9PUkRFUiA9PSBfX0xJVFRMRV9FTkRJQU4gOiBkZWZpbmVkKF9fTElUVExFX0VORElBTikKICNkZWZpbmUgUEFEREVEKHgseSkgeCwgeQotI2VsaWYgZGVmaW5lZChfX0JZVEVfT1JERVIpID8gX19CWVRFX09SREVSID09IF9fQklHX0VORElBTiA6IGRlZmluZWQoX19CSUdfRU5ESUFOKQorI2VsaWYgZGVmaW5lZChfX0JZVEVfT1JERVIpP19fQllURV9PUkRFUj09X19CSUdfRU5ESUFOOmRlZmluZWQoX19CSUdfRU5ESUFOKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEFEREVEKHgseSkgeSwgeAogI2Vsc2UKLSNlcnJvciBlZGl0IGZvciB5b3VyIG9kZCBieXRlb3JkZXIuCisjZXJyb3IgZWRpdCBmb3IgeW91ciBvZGQgYnl0ZW9yZGVyIC4KICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpb2NiIHsKLSBfX3U2NCBhaW9fZGF0YTsKLSBfX3UzMiBQQURERUQoYWlvX2tleSwgYWlvX3Jlc2VydmVkMSk7Ci0gX191MTYgYWlvX2xpb19vcGNvZGU7CisgIF9fdTY0IGFpb19kYXRhOworICBfX3UzMiBQQURERUQoYWlvX2tleSwgYWlvX3Jlc2VydmVkMSk7CisgIF9fdTE2IGFpb19saW9fb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MxNiBhaW9fcmVxcHJpbzsKLSBfX3UzMiBhaW9fZmlsZGVzOwotIF9fdTY0IGFpb19idWY7Ci0gX191NjQgYWlvX25ieXRlczsKKyAgX19zMTYgYWlvX3JlcXByaW87CisgIF9fdTMyIGFpb19maWxkZXM7CisgIF9fdTY0IGFpb19idWY7CisgIF9fdTY0IGFpb19uYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczY0IGFpb19vZmZzZXQ7Ci0gX191NjQgYWlvX3Jlc2VydmVkMjsKLSBfX3UzMiBhaW9fZmxhZ3M7Ci0gX191MzIgYWlvX3Jlc2ZkOworICBfX3M2NCBhaW9fb2Zmc2V0OworICBfX3U2NCBhaW9fcmVzZXJ2ZWQyOworICBfX3UzMiBhaW9fZmxhZ3M7CisgIF9fdTMyIGFpb19yZXNmZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI3VuZGVmIElGQklHCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FuZHJvaWRfYWxhcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYW5kcm9pZF9hbGFybS5oCmluZGV4IGQwMTExYjIuLjgwMWEwMWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYW5kcm9pZF9hbGFybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYW5kcm9pZF9hbGFybS5oCkBAIC0yMiwzNyArMjIsMzQgQEAKICNpbmNsdWRlIDxsaW51eC90aW1lLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBhbmRyb2lkX2FsYXJtX3R5cGUgewotIEFORFJPSURfQUxBUk1fUlRDX1dBS0VVUCwKLSBBTkRST0lEX0FMQVJNX1JUQywKLSBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUVfV0FLRVVQLAorICBBTkRST0lEX0FMQVJNX1JUQ19XQUtFVVAsCisgIEFORFJPSURfQUxBUk1fUlRDLAorICBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUVfV0FLRVVQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUUsCi0gQU5EUk9JRF9BTEFSTV9TWVNURU1USU1FLAotIEFORFJPSURfQUxBUk1fVFlQRV9DT1VOVCwKKyAgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FLAorICBBTkRST0lEX0FMQVJNX1NZU1RFTVRJTUUsCisgIEFORFJPSURfQUxBUk1fVFlQRV9DT1VOVCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBhbmRyb2lkX2FsYXJtX3JldHVybl9mbGFncyB7Ci0gQU5EUk9JRF9BTEFSTV9SVENfV0FLRVVQX01BU0sgPSAxVSA8PCBBTkRST0lEX0FMQVJNX1JUQ19XQUtFVVAsCi0gQU5EUk9JRF9BTEFSTV9SVENfTUFTSyA9IDFVIDw8IEFORFJPSURfQUxBUk1fUlRDLAotIEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVBfTUFTSyA9CisgIEFORFJPSURfQUxBUk1fUlRDX1dBS0VVUF9NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9SVENfV0FLRVVQLAorICBBTkRST0lEX0FMQVJNX1JUQ19NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9SVEMsCisgIEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVBfTUFTSyA9IDFVIDw8IEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDFVIDw8IEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVAsCi0gQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX01BU0sgPQotIDFVIDw8IEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRSwKLSBBTkRST0lEX0FMQVJNX1NZU1RFTVRJTUVfTUFTSyA9IDFVIDw8IEFORFJPSURfQUxBUk1fU1lTVEVNVElNRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQU5EUk9JRF9BTEFSTV9USU1FX0NIQU5HRV9NQVNLID0gMVUgPDwgMTYKKyAgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX01BU0sgPSAxVSA8PCBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUUsCisgIEFORFJPSURfQUxBUk1fU1lTVEVNVElNRV9NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9TWVNURU1USU1FLAorICBBTkRST0lEX0FMQVJNX1RJTUVfQ0hBTkdFX01BU0sgPSAxVSA8PCAxNgogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFORFJPSURfQUxBUk1fQ0xFQVIodHlwZSkgX0lPKCdhJywgMCB8ICgodHlwZSkgPDwgNCkpCiAjZGVmaW5lIEFORFJPSURfQUxBUk1fV0FJVCBfSU8oJ2EnLCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQUxBUk1fSU9XKGMsIHR5cGUsIHNpemUpIF9JT1coJ2EnLCAoYykgfCAoKHR5cGUpIDw8IDQpLCBzaXplKQorI2RlZmluZSBBTEFSTV9JT1coYyx0eXBlLHNpemUpIF9JT1coJ2EnLCAoYykgfCAoKHR5cGUpIDw8IDQpLCBzaXplKQogI2RlZmluZSBBTkRST0lEX0FMQVJNX1NFVCh0eXBlKSBBTEFSTV9JT1coMiwgdHlwZSwgc3RydWN0IHRpbWVzcGVjKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9TRVRfQU5EX1dBSVQodHlwZSkgQUxBUk1fSU9XKDMsIHR5cGUsIHN0cnVjdCB0aW1lc3BlYykKICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9HRVRfVElNRSh0eXBlKSBBTEFSTV9JT1coNCwgdHlwZSwgc3RydWN0IHRpbWVzcGVjKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9TRVRfUlRDIF9JT1coJ2EnLCA1LCBzdHJ1Y3QgdGltZXNwZWMpCiAjZGVmaW5lIEFORFJPSURfQUxBUk1fQkFTRV9DTUQoY21kKSAoY21kICYgfihfSU9DKDAsIDAsIDB4ZjAsIDApKSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFORFJPSURfQUxBUk1fSU9DVExfVE9fVFlQRShjbWQpIChfSU9DX05SKGNtZCkgPj4gNCkKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXBtX2Jpb3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXBtX2Jpb3MuaAppbmRleCBmM2I2MTMwLi5lNmIxN2FkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FwbV9iaW9zLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hcG1fYmlvcy5oCkBAIC0yMywxNyArMjMsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuc2lnbmVkIHNob3J0IGFwbV9ldmVudGluZm9fdDsKIHN0cnVjdCBhcG1fYmlvc19pbmZvIHsKLSBfX3UxNiB2ZXJzaW9uOwotIF9fdTE2IGNzZWc7CisgIF9fdTE2IHZlcnNpb247CisgIF9fdTE2IGNzZWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mZnNldDsKLSBfX3UxNiBjc2VnXzE2OwotIF9fdTE2IGRzZWc7Ci0gX191MTYgZmxhZ3M7CisgIF9fdTMyIG9mZnNldDsKKyAgX191MTYgY3NlZ18xNjsKKyAgX191MTYgZHNlZzsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGNzZWdfbGVuOwotIF9fdTE2IGNzZWdfMTZfbGVuOwotIF9fdTE2IGRzZWdfbGVuOworICBfX3UxNiBjc2VnX2xlbjsKKyAgX191MTYgY3NlZ18xNl9sZW47CisgIF9fdTE2IGRzZWdfbGVuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFQTV9TVEFURV9SRUFEWSAweDAwMDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXNobWVtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FzaG1lbS5oCmluZGV4IGExZjg3NjAuLjQ3MTFlZjMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXNobWVtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hc2htZW0uaApAQCAtMjgsOCArMjgsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVNITUVNX0lTX1BJTk5FRCAxCiBzdHJ1Y3QgYXNobWVtX3BpbiB7Ci0gX191MzIgb2Zmc2V0OwotIF9fdTMyIGxlbjsKKyAgX191MzIgb2Zmc2V0OworICBfX3UzMiBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgX19BU0hNRU1JT0MgMHg3NwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdGFsay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdGFsay5oCmluZGV4IGIzNTdiOTEuLjcxNTQ0MjIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRhbGsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0YWxrLmgKQEAgLTI2LDMxICsyNiwzMSBAQAogI2RlZmluZSBBVFBPUlRfUkVTRVJWRUQgMTI4CiAjZGVmaW5lIEFUUE9SVF9MQVNUIDI1NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRBRERSX0FOWU5FVCAoX191MTYpMAotI2RlZmluZSBBVEFERFJfQU5ZTk9ERSAoX191OCkwCi0jZGVmaW5lIEFUQUREUl9BTllQT1JUIChfX3U4KTAKLSNkZWZpbmUgQVRBRERSX0JDQVNUIChfX3U4KTI1NQorI2RlZmluZSBBVEFERFJfQU5ZTkVUIChfX3UxNikgMAorI2RlZmluZSBBVEFERFJfQU5ZTk9ERSAoX191OCkgMAorI2RlZmluZSBBVEFERFJfQU5ZUE9SVCAoX191OCkgMAorI2RlZmluZSBBVEFERFJfQkNBU1QgKF9fdTgpIDI1NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRERQX01BWFNaIDU4NwogI2RlZmluZSBERFBfTUFYSE9QUyAxNQogI2RlZmluZSBTSU9DQVRBTEtESUZBRERSIChTSU9DUFJPVE9QUklWQVRFICsgMCkKIHN0cnVjdCBhdGFsa19hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHNfbmV0OwotIF9fdTggc19ub2RlOworICBfX2JlMTYgc19uZXQ7CisgIF9fdTggc19ub2RlOwogfTsKIHN0cnVjdCBzb2NrYWRkcl9hdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhdF9mYW1pbHk7Ci0gX191OCBzYXRfcG9ydDsKLSBzdHJ1Y3QgYXRhbGtfYWRkciBzYXRfYWRkcjsKLSBjaGFyIHNhdF96ZXJvWzhdOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYXRfZmFtaWx5OworICBfX3U4IHNhdF9wb3J0OworICBzdHJ1Y3QgYXRhbGtfYWRkciBzYXRfYWRkcjsKKyAgY2hhciBzYXRfemVyb1s4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGF0YWxrX25ldHJhbmdlIHsKLSBfX3U4IG5yX3BoYXNlOwotIF9fYmUxNiBucl9maXJzdG5ldDsKKyAgX191OCBucl9waGFzZTsKKyAgX19iZTE2IG5yX2ZpcnN0bmV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgbnJfbGFzdG5ldDsKKyAgX19iZTE2IG5yX2xhc3RuZXQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG0uaAppbmRleCBkODliMGFmLi4wMmJmOTg5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtLmgKQEAgLTQ2LDE3ICs0NiwxNyBAQAogI2RlZmluZSBBVE1fQUFMMzQgMwogI2RlZmluZSBBVE1fQUFMNSA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX1NPX0VOQ09ERShsLG4sdCkgKCgoKGwpICYgMHgxRkYpIDw8IDIyKSB8ICgobikgPDwgMTYpIHwgICBzaXplb2YodCkpCisjZGVmaW5lIF9fU09fRU5DT0RFKGwsbix0KSAoKCgobCkgJiAweDFGRikgPDwgMjIpIHwgKChuKSA8PCAxNikgfCBzaXplb2YodCkpCiAjZGVmaW5lIF9fU09fTEVWRUxfTUFUQ0goYyxtKSAoKChjKSA+PiAyMikgPT0gKChtKSAmIDB4MUZGKSkKICNkZWZpbmUgX19TT19OVU1CRVIoYykgKCgoYykgPj4gMTYpICYgMHgzZikKICNkZWZpbmUgX19TT19TSVpFKGMpICgoYykgJiAweDNmZmYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTT19TRVRDTFAgX19TT19FTkNPREUoU09MX0FUTSwwLGludCkKLSNkZWZpbmUgU09fQ0lSQU5HRSBfX1NPX0VOQ09ERShTT0xfQVRNLDEsc3RydWN0IGF0bV9jaXJhbmdlKQotI2RlZmluZSBTT19BVE1RT1MgX19TT19FTkNPREUoU09MX0FUTSwyLHN0cnVjdCBhdG1fcW9zKQotI2RlZmluZSBTT19BVE1TQVAgX19TT19FTkNPREUoU09MX0FUTSwzLHN0cnVjdCBhdG1fc2FwKQorI2RlZmluZSBTT19TRVRDTFAgX19TT19FTkNPREUoU09MX0FUTSwgMCwgaW50KQorI2RlZmluZSBTT19DSVJBTkdFIF9fU09fRU5DT0RFKFNPTF9BVE0sIDEsIHN0cnVjdCBhdG1fY2lyYW5nZSkKKyNkZWZpbmUgU09fQVRNUU9TIF9fU09fRU5DT0RFKFNPTF9BVE0sIDIsIHN0cnVjdCBhdG1fcW9zKQorI2RlZmluZSBTT19BVE1TQVAgX19TT19FTkNPREUoU09MX0FUTSwgMywgc3RydWN0IGF0bV9zYXApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTT19BVE1QVkMgX19TT19FTkNPREUoU09MX0FUTSw0LHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMpCisjZGVmaW5lIFNPX0FUTVBWQyBfX1NPX0VOQ09ERShTT0xfQVRNLCA0LCBzdHJ1Y3Qgc29ja2FkZHJfYXRtcHZjKQogI2RlZmluZSBTT19NVUxUSVBPSU5UIF9fU09fRU5DT0RFKFNPTF9BVE0sIDUsIGludCkKICNkZWZpbmUgQVRNX0hEUl9HRkNfTUFTSyAweGYwMDAwMDAwCiAjZGVmaW5lIEFUTV9IRFJfR0ZDX1NISUZUIDI4CkBAIC04Nyw1NiArODcsNTYgQEAKICNkZWZpbmUgQVRNX0FCUiA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1fQU5ZQ0xBU1MgNQotI2RlZmluZSBBVE1fTUFYX1BDUiAtMQorI2RlZmluZSBBVE1fTUFYX1BDUiAtIDEKIHN0cnVjdCBhdG1fdHJhZnBybSB7Ci0gdW5zaWduZWQgY2hhciB0cmFmZmljX2NsYXNzOworICB1bnNpZ25lZCBjaGFyIHRyYWZmaWNfY2xhc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtYXhfcGNyOwotIGludCBwY3I7Ci0gaW50IG1pbl9wY3I7Ci0gaW50IG1heF9jZHY7CisgIGludCBtYXhfcGNyOworICBpbnQgcGNyOworICBpbnQgbWluX3BjcjsKKyAgaW50IG1heF9jZHY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtYXhfc2R1OwotIHVuc2lnbmVkIGludCBpY3I7Ci0gdW5zaWduZWQgaW50IHRiZTsKLSB1bnNpZ25lZCBpbnQgZnJ0dCA6IDI0OworICBpbnQgbWF4X3NkdTsKKyAgdW5zaWduZWQgaW50IGljcjsKKyAgdW5zaWduZWQgaW50IHRiZTsKKyAgdW5zaWduZWQgaW50IGZydHQgOiAyNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJpZiA6IDQ7Ci0gdW5zaWduZWQgaW50IHJkZiA6IDQ7Ci0gdW5zaWduZWQgaW50IG5ybV9wcmVzIDoxOwotIHVuc2lnbmVkIGludCB0cm1fcHJlcyA6MTsKKyAgdW5zaWduZWQgaW50IHJpZiA6IDQ7CisgIHVuc2lnbmVkIGludCByZGYgOiA0OworICB1bnNpZ25lZCBpbnQgbnJtX3ByZXMgOiAxOworICB1bnNpZ25lZCBpbnQgdHJtX3ByZXMgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYWR0Zl9wcmVzIDoxOwotIHVuc2lnbmVkIGludCBjZGZfcHJlcyA6MTsKLSB1bnNpZ25lZCBpbnQgbnJtIDozOwotIHVuc2lnbmVkIGludCB0cm0gOjM7CisgIHVuc2lnbmVkIGludCBhZHRmX3ByZXMgOiAxOworICB1bnNpZ25lZCBpbnQgY2RmX3ByZXMgOiAxOworICB1bnNpZ25lZCBpbnQgbnJtIDogMzsKKyAgdW5zaWduZWQgaW50IHRybSA6IDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhZHRmIDoxMDsKLSB1bnNpZ25lZCBpbnQgY2RmIDozOwotIHVuc2lnbmVkIGludCBzcGFyZSA6OTsKKyAgdW5zaWduZWQgaW50IGFkdGYgOiAxMDsKKyAgdW5zaWduZWQgaW50IGNkZiA6IDM7CisgIHVuc2lnbmVkIGludCBzcGFyZSA6IDk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhdG1fcW9zIHsKLSBzdHJ1Y3QgYXRtX3RyYWZwcm0gdHh0cDsKLSBzdHJ1Y3QgYXRtX3RyYWZwcm0gcnh0cCBfX0FUTV9BUElfQUxJR047Ci0gdW5zaWduZWQgY2hhciBhYWwgX19BVE1fQVBJX0FMSUdOOworICBzdHJ1Y3QgYXRtX3RyYWZwcm0gdHh0cDsKKyAgc3RydWN0IGF0bV90cmFmcHJtIHJ4dHAgX19BVE1fQVBJX0FMSUdOOworICB1bnNpZ25lZCBjaGFyIGFhbCBfX0FUTV9BUElfQUxJR047CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgQVRNX0lURl9BTlkgLTEKLSNkZWZpbmUgQVRNX1ZQSV9BTlkgLTEKLSNkZWZpbmUgQVRNX1ZDSV9BTlkgLTEKKyNkZWZpbmUgQVRNX0lURl9BTlkgLSAxCisjZGVmaW5lIEFUTV9WUElfQU5ZIC0gMQorI2RlZmluZSBBVE1fVkNJX0FOWSAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9WUElfVU5TUEVDIC0yCi0jZGVmaW5lIEFUTV9WQ0lfVU5TUEVDIC0yCisjZGVmaW5lIEFUTV9WUElfVU5TUEVDIC0gMgorI2RlZmluZSBBVE1fVkNJX1VOU1BFQyAtIDIKIHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMgewotIHVuc2lnbmVkIHNob3J0IHNhcF9mYW1pbHk7CisgIHVuc2lnbmVkIHNob3J0IHNhcF9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gc2hvcnQgaXRmOwotIHNob3J0IHZwaTsKLSBpbnQgdmNpOworICBzdHJ1Y3QgeworICAgIHNob3J0IGl0ZjsKKyAgICBzaG9ydCB2cGk7CisgICAgaW50IHZjaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBzYXBfYWRkciBfX0FUTV9BUElfQUxJR047CisgIH0gc2FwX2FkZHIgX19BVE1fQVBJX0FMSUdOOwogfTsKICNkZWZpbmUgQVRNX0VTQV9MRU4gMjAKICNkZWZpbmUgQVRNX0UxNjRfTEVOIDEyCkBAIC0xNTcsMjEgKzE1NywyMSBAQAogI2RlZmluZSBBVE1fTElKX05KIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfYXRtc3ZjIHsKLSB1bnNpZ25lZCBzaG9ydCBzYXNfZmFtaWx5OwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBwcnZbQVRNX0VTQV9MRU5dOworICB1bnNpZ25lZCBzaG9ydCBzYXNfZmFtaWx5OworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgcHJ2W0FUTV9FU0FfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwdWJbQVRNX0UxNjRfTEVOKzFdOwotIGNoYXIgbGlqX3R5cGU7Ci0gX191MzIgbGlqX2lkOwotIH0gc2FzX2FkZHIgX19BVE1fQVBJX0FMSUdOOworICAgIGNoYXIgcHViW0FUTV9FMTY0X0xFTiArIDFdOworICAgIGNoYXIgbGlqX3R5cGU7CisgICAgX191MzIgbGlqX2lkOworICB9IHNhc19hZGRyIF9fQVRNX0FQSV9BTElHTjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGF0bWlmX3Npb2MgewotIGludCBudW1iZXI7Ci0gaW50IGxlbmd0aDsKKyAgaW50IG51bWJlcjsKKyAgaW50IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKmFyZzsKKyAgdm9pZCBfX3VzZXIgKiBhcmc7CiB9OwogdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBhdG1fYmFja2VuZF90OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9lbmkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2VuaS5oCmluZGV4IDk1MGE4YTAuLmE2NThkNjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2VuaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2VuaS5oCkBAIC0yMSw5ICsyMSw5IEBACiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+CiBzdHJ1Y3QgZW5pX211bHRpcGxpZXJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHR4LHJ4OworICBpbnQgdHgsIHJ4OwogfTsKLSNkZWZpbmUgRU5JX01FTURVTVAgX0lPVygnYScsQVRNSU9DX1NBUlBSVixzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgRU5JX1NFVE1VTFQgX0lPVygnYScsQVRNSU9DX1NBUlBSVis3LHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBFTklfTUVNRFVNUCBfSU9XKCdhJywgQVRNSU9DX1NBUlBSViwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEVOSV9TRVRNVUxUIF9JT1coJ2EnLCBBVE1JT0NfU0FSUFJWICsgNywgc3RydWN0IGF0bWlmX3Npb2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9oZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1faGUuaAppbmRleCBjNjJmNDU2Li44MDlhYzYxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9oZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2hlLmgKQEAgLTI3LDggKzI3LDggQEAKICNkZWZpbmUgSEVfUkVHVFlQRV9NQk9YIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGVfaW9jdGxfcmVnIHsKLSB1bnNpZ25lZCBhZGRyLCB2YWw7Ci0gY2hhciB0eXBlOworICB1bnNpZ25lZCBhZGRyLCB2YWw7CisgIGNoYXIgdHlwZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9pZHQ3NzEwNS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1faWR0NzcxMDUuaAppbmRleCBjNTYxNjRlLi5kYzJjOWMxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9pZHQ3NzEwNS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2lkdDc3MTA1LmgKQEAgLTIzLDEzICsyMywxMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9hdG1kZXYuaD4KIHN0cnVjdCBpZHQ3NzEwNV9zdGF0cyB7Ci0gX191MzIgc3ltYm9sX2Vycm9yczsKLSBfX3UzMiB0eF9jZWxsczsKKyAgX191MzIgc3ltYm9sX2Vycm9yczsKKyAgX191MzIgdHhfY2VsbHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4X2NlbGxzOwotIF9fdTMyIHJ4X2hlY19lcnJvcnM7CisgIF9fdTMyIHJ4X2NlbGxzOworICBfX3UzMiByeF9oZWNfZXJyb3JzOwogfTsKLSNkZWZpbmUgSURUNzcxMDVfR0VUU1RBVCBfSU9XKCdhJyxBVE1JT0NfUEhZUFJWKzIsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIElEVDc3MTA1X0dFVFNUQVQgX0lPVygnYScsIEFUTUlPQ19QSFlQUlYgKyAyLCBzdHJ1Y3QgYXRtaWZfc2lvYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElEVDc3MTA1X0dFVFNUQVRaIF9JT1coJ2EnLEFUTUlPQ19QSFlQUlYrMyxzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgSURUNzcxMDVfR0VUU1RBVFogX0lPVygnYScsIEFUTUlPQ19QSFlQUlYgKyAzLCBzdHJ1Y3QgYXRtaWZfc2lvYykKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fbmljc3Rhci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fbmljc3Rhci5oCmluZGV4IGMwNTk3NTEuLmFmZmVkZGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX25pY3N0YXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9uaWNzdGFyLmgKQEAgLTIxLDI4ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L2F0bWFwaS5oPgogI2luY2x1ZGUgPGxpbnV4L2F0bWlvYy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTlNfR0VUUFNUQVQgX0lPV1IoJ2EnLEFUTUlPQ19TQVJQUlYrMSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgTlNfU0VUQlVGTEVWIF9JT1coJ2EnLEFUTUlPQ19TQVJQUlYrMixzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgTlNfQURKQlVGTEVWIF9JTygnYScsQVRNSU9DX1NBUlBSViszKQotdHlwZWRlZiBzdHJ1Y3QgYnVmX25yCisjZGVmaW5lIE5TX0dFVFBTVEFUIF9JT1dSKCdhJywgQVRNSU9DX1NBUlBSViArIDEsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBOU19TRVRCVUZMRVYgX0lPVygnYScsIEFUTUlPQ19TQVJQUlYgKyAyLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgTlNfQURKQlVGTEVWIF9JTygnYScsIEFUTUlPQ19TQVJQUlYgKyAzKQordHlwZWRlZiBzdHJ1Y3QgYnVmX25yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gdW5zaWduZWQgbWluOwotIHVuc2lnbmVkIGluaXQ7Ci0gdW5zaWduZWQgbWF4OworICB1bnNpZ25lZCBtaW47CisgIHVuc2lnbmVkIGluaXQ7CisgIHVuc2lnbmVkIG1heDsKK30gYnVmX25yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX1idWZfbnI7Ci10eXBlZGVmIHN0cnVjdCBwb29sX2xldmVscwotewotIGludCBidWZ0eXBlOwordHlwZWRlZiBzdHJ1Y3QgcG9vbF9sZXZlbHMgeworICBpbnQgYnVmdHlwZTsKKyAgaW50IGNvdW50OworICBidWZfbnIgbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb3VudDsKLSBidWZfbnIgbGV2ZWw7CiB9IHBvb2xfbGV2ZWxzOwogI2RlZmluZSBOU19CVUZUWVBFX1NNQUxMIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5TX0JVRlRZUEVfTEFSR0UgMgogI2RlZmluZSBOU19CVUZUWVBFX0hVR0UgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlNfQlVGVFlQRV9JT1ZFQyA0CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV90Y3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3RjcC5oCmluZGV4IGM2NTAwYzkuLjY2NjU2NzUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3RjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3RjcC5oCkBAIC0yNCwyNyArMjQsMjcgQEAKICNpbmNsdWRlIDxsaW51eC9hdG1pb2MuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGF0bXRjcF9oZHIgewotIF9fdTE2IHZwaTsKKyAgX191MTYgdnBpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB2Y2k7Ci0gX191MzIgbGVuZ3RoOworICBfX3UxNiB2Y2k7CisgIF9fdTMyIGxlbmd0aDsKIH07CiAjZGVmaW5lIEFUTVRDUF9IRFJfTUFHSUMgKH4wKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRNVENQX0NUUkxfT1BFTiAxCiAjZGVmaW5lIEFUTVRDUF9DVFJMX0NMT1NFIDIKIHN0cnVjdCBhdG10Y3BfY29udHJvbCB7Ci0gc3RydWN0IGF0bXRjcF9oZHIgaGRyOworICBzdHJ1Y3QgYXRtdGNwX2hkciBoZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eXBlOwotIGF0bV9rcHRyX3QgdmNjOwotIHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMgYWRkcjsKLSBzdHJ1Y3QgYXRtX3FvcyBxb3M7CisgIGludCB0eXBlOworICBhdG1fa3B0cl90IHZjYzsKKyAgc3RydWN0IHNvY2thZGRyX2F0bXB2YyBhZGRyOworICBzdHJ1Y3QgYXRtX3FvcyBxb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZXN1bHQ7CisgIGludCByZXN1bHQ7CiB9IF9fQVRNX0FQSV9BTElHTjsKLSNkZWZpbmUgU0lPQ1NJRkFUTVRDUCBfSU8oJ2EnLEFUTUlPQ19JVEYpCi0jZGVmaW5lIEFUTVRDUF9DUkVBVEUgX0lPKCdhJyxBVE1JT0NfSVRGKzE0KQorI2RlZmluZSBTSU9DU0lGQVRNVENQIF9JTygnYScsIEFUTUlPQ19JVEYpCisjZGVmaW5lIEFUTVRDUF9DUkVBVEUgX0lPKCdhJywgQVRNSU9DX0lURiArIDE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNVENQX1JFTU9WRSBfSU8oJ2EnLEFUTUlPQ19JVEYrMTUpCisjZGVmaW5lIEFUTVRDUF9SRU1PVkUgX0lPKCdhJywgQVRNSU9DX0lURiArIDE1KQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV96YXRtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV96YXRtLmgKaW5kZXggMGM4MGFkOS4uMzQ3NTViYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1femF0bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3phdG0uaApAQCAtMjEsMzMgKzIxLDMzIEBACiAjaW5jbHVkZSA8bGludXgvYXRtYXBpLmg+CiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBaQVRNX0dFVFBPT0wgX0lPVygnYScsQVRNSU9DX1NBUlBSVisxLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBaQVRNX0dFVFBPT0xaIF9JT1coJ2EnLEFUTUlPQ19TQVJQUlYrMixzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgWkFUTV9TRVRQT09MIF9JT1coJ2EnLEFUTUlPQ19TQVJQUlYrMyxzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgWkFUTV9HRVRQT09MIF9JT1coJ2EnLCBBVE1JT0NfU0FSUFJWICsgMSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIFpBVE1fR0VUUE9PTFogX0lPVygnYScsIEFUTUlPQ19TQVJQUlYgKyAyLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgWkFUTV9TRVRQT09MIF9JT1coJ2EnLCBBVE1JT0NfU0FSUFJWICsgMywgc3RydWN0IGF0bWlmX3Npb2MpCiBzdHJ1Y3QgemF0bV9wb29sX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcmVmX2NvdW50OwotIGludCBsb3dfd2F0ZXIsaGlnaF93YXRlcjsKLSBpbnQgcnFhX2NvdW50LHJxdV9jb3VudDsKLSBpbnQgb2Zmc2V0LG5leHRfb2ZmOworICBpbnQgcmVmX2NvdW50OworICBpbnQgbG93X3dhdGVyLCBoaWdoX3dhdGVyOworICBpbnQgcnFhX2NvdW50LCBycXVfY291bnQ7CisgIGludCBvZmZzZXQsIG5leHRfb2ZmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbmV4dF9jbnQsbmV4dF90aHJlczsKKyAgaW50IG5leHRfY250LCBuZXh0X3RocmVzOwogfTsKIHN0cnVjdCB6YXRtX3Bvb2xfcmVxIHsKLSBpbnQgcG9vbF9udW07CisgIGludCBwb29sX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHphdG1fcG9vbF9pbmZvIGluZm87CisgIHN0cnVjdCB6YXRtX3Bvb2xfaW5mbyBpbmZvOwogfTsKIHN0cnVjdCB6YXRtX3RfaGlzdCB7Ci0gc3RydWN0IHRpbWV2YWwgcmVhbDsKKyAgc3RydWN0IHRpbWV2YWwgcmVhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWV2YWwgZXhwZWN0ZWQ7CisgIHN0cnVjdCB0aW1ldmFsIGV4cGVjdGVkOwogfTsKICNkZWZpbmUgWkFUTV9PQU1fUE9PTCAwCiAjZGVmaW5lIFpBVE1fQUFMMF9QT09MIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFpBVE1fQUFMNV9QT09MX0JBU0UgMgotI2RlZmluZSBaQVRNX0xBU1RfUE9PTCBaQVRNX0FBTDVfUE9PTF9CQVNFKzEwCisjZGVmaW5lIFpBVE1fTEFTVF9QT09MIFpBVE1fQUFMNV9QT09MX0JBU0UgKyAxMAogI2RlZmluZSBaQVRNX1RJTUVSX0hJU1RPUllfU0laRSAxNgogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1hcGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYXBpLmgKaW5kZXggMTZlOGZkZi4uOTRmZjBhMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1hcGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFwaS5oCkBAIC0yNCw2ICsyNCw4IEBACiAjZWxzZQogI2RlZmluZSBfX0FUTV9BUElfQUxJR04KICNlbmRpZgotdHlwZWRlZiBzdHJ1Y3QgeyB1bnNpZ25lZCBjaGFyIF9bOF07IH0gX19BVE1fQVBJX0FMSUdOIGF0bV9rcHRyX3Q7Cit0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIF9bOF07Cit9IF9fQVRNX0FQSV9BTElHTiBhdG1fa3B0cl90OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFycC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1hcnAuaAppbmRleCBlZWQ5ODJjLi41NTc0YzQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFycC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYXJwLmgKQEAgLTI0LDI1ICsyNCwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L2F0bWlvYy5oPgogI2RlZmluZSBBVE1BUlBfUkVUUllfREVMQVkgMzAKICNkZWZpbmUgQVRNQVJQX01BWF9VTlJFU19QQUNLRVRTIDUKLSNkZWZpbmUgQVRNQVJQRF9DVFJMIF9JTygnYScsQVRNSU9DX0NMSVArMSkKKyNkZWZpbmUgQVRNQVJQRF9DVFJMIF9JTygnYScsIEFUTUlPQ19DTElQICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTUFSUF9NS0lQIF9JTygnYScsQVRNSU9DX0NMSVArMikKLSNkZWZpbmUgQVRNQVJQX1NFVEVOVFJZIF9JTygnYScsQVRNSU9DX0NMSVArMykKLSNkZWZpbmUgQVRNQVJQX0VOQ0FQIF9JTygnYScsQVRNSU9DX0NMSVArNSkKKyNkZWZpbmUgQVRNQVJQX01LSVAgX0lPKCdhJywgQVRNSU9DX0NMSVAgKyAyKQorI2RlZmluZSBBVE1BUlBfU0VURU5UUlkgX0lPKCdhJywgQVRNSU9DX0NMSVAgKyAzKQorI2RlZmluZSBBVE1BUlBfRU5DQVAgX0lPKCdhJywgQVRNSU9DX0NMSVAgKyA1KQogZW51bSBhdG1hcnBfY3RybF90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYWN0X2ludmFsaWQsCi0gYWN0X25lZWQsCi0gYWN0X3VwLAotIGFjdF9kb3duLAorICBhY3RfaW52YWxpZCwKKyAgYWN0X25lZWQsCisgIGFjdF91cCwKKyAgYWN0X2Rvd24sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGFjdF9jaGFuZ2UKKyAgYWN0X2NoYW5nZQogfTsKIHN0cnVjdCBhdG1hcnBfY3RybCB7Ci0gZW51bSBhdG1hcnBfY3RybF90eXBlIHR5cGU7CisgIGVudW0gYXRtYXJwX2N0cmxfdHlwZSB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaXRmX251bTsKLSBfX2JlMzIgaXA7CisgIGludCBpdGZfbnVtOworICBfX2JlMzIgaXA7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1icjI2ODQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYnIyNjg0LmgKaW5kZXggMWIxYjljNS4uOTI0MjdmNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1icjI2ODQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWJyMjY4NC5oCkBAIC0yOCw3ICsyOCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCUjI2ODRfTUVESUFfRkRESSAoMykKICNkZWZpbmUgQlIyNjg0X01FRElBXzgwMl82ICg0KQotI2RlZmluZSBCUjI2ODRfRkxBR19ST1VURUQgKDE8PDE2KQorI2RlZmluZSBCUjI2ODRfRkxBR19ST1VURUQgKDEgPDwgMTYpCiAjZGVmaW5lIEJSMjY4NF9GQ1NJTl9OTyAoMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJSMjY4NF9GQ1NJTl9JR05PUkUgKDEpCkBAIC00NCwxMSArNDQsMTEgQEAKICNkZWZpbmUgQlIyNjg0X1BBWUxPQURfUk9VVEVEICgwKQogI2RlZmluZSBCUjI2ODRfUEFZTE9BRF9CUklER0VEICgxKQogc3RydWN0IGF0bV9uZXdpZl9icjI2ODQgewotIGF0bV9iYWNrZW5kX3QgYmFja2VuZF9udW07CisgIGF0bV9iYWNrZW5kX3QgYmFja2VuZF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtZWRpYTsKLSBjaGFyIGlmbmFtZVtJRk5BTVNJWl07Ci0gaW50IG10dTsKKyAgaW50IG1lZGlhOworICBjaGFyIGlmbmFtZVtJRk5BTVNJWl07CisgIGludCBtdHU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlIyNjg0X0ZJTkRfQllOT1RISU5HICgwKQpAQCAtNTYsNDMgKzU2LDQzIEBACiAjZGVmaW5lIEJSMjY4NF9GSU5EX0JZSUZOQU1FICgyKQogc3RydWN0IGJyMjY4NF9pZl9zcGVjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1ldGhvZDsKLSB1bmlvbiB7Ci0gY2hhciBpZm5hbWVbSUZOQU1TSVpdOwotIGludCBkZXZudW07CisgIGludCBtZXRob2Q7CisgIHVuaW9uIHsKKyAgICBjaGFyIGlmbmFtZVtJRk5BTVNJWl07CisgICAgaW50IGRldm51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBzcGVjOworICB9IHNwZWM7CiB9Owogc3RydWN0IGF0bV9iYWNrZW5kX2JyMjY4NCB7Ci0gYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKKyAgYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGJyMjY4NF9pZl9zcGVjIGlmc3BlYzsKLSBpbnQgZmNzX2luOwotIGludCBmY3Nfb3V0OwotIGludCBmY3NfYXV0bzsKKyAgc3RydWN0IGJyMjY4NF9pZl9zcGVjIGlmc3BlYzsKKyAgaW50IGZjc19pbjsKKyAgaW50IGZjc19vdXQ7CisgIGludCBmY3NfYXV0bzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGVuY2FwczsKLSBpbnQgaGFzX3ZwaWlkOwotIF9fdTggdnBuX2lkWzddOwotIGludCBzZW5kX3BhZGRpbmc7CisgIGludCBlbmNhcHM7CisgIGludCBoYXNfdnBpaWQ7CisgIF9fdTggdnBuX2lkWzddOworICBpbnQgc2VuZF9wYWRkaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbWluX3NpemU7CisgIGludCBtaW5fc2l6ZTsKIH07CiBzdHJ1Y3QgYnIyNjg0X2ZpbHRlciB7Ci0gX19iZTMyIHByZWZpeDsKKyAgX19iZTMyIHByZWZpeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIG5ldG1hc2s7CisgIF9fYmUzMiBuZXRtYXNrOwogfTsKIHN0cnVjdCBicjI2ODRfZmlsdGVyX3NldCB7Ci0gc3RydWN0IGJyMjY4NF9pZl9zcGVjIGlmc3BlYzsKKyAgc3RydWN0IGJyMjY4NF9pZl9zcGVjIGlmc3BlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGJyMjY4NF9maWx0ZXIgZmlsdGVyOworICBzdHJ1Y3QgYnIyNjg0X2ZpbHRlciBmaWx0ZXI7CiB9OwogZW51bSBicjI2ODRfcGF5bG9hZCB7Ci0gcF9yb3V0ZWQgPSBCUjI2ODRfUEFZTE9BRF9ST1VURUQsCisgIHBfcm91dGVkID0gQlIyNjg0X1BBWUxPQURfUk9VVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBwX2JyaWRnZWQgPSBCUjI2ODRfUEFZTE9BRF9CUklER0VELAorICBwX2JyaWRnZWQgPSBCUjI2ODRfUEFZTE9BRF9CUklER0VELAogfTsKLSNkZWZpbmUgQlIyNjg0X1NFVEZJTFQgX0lPVyggJ2EnLCBBVE1JT0NfQkFDS0VORCArIDAsICAgc3RydWN0IGJyMjY4NF9maWx0ZXJfc2V0KQorI2RlZmluZSBCUjI2ODRfU0VURklMVCBfSU9XKCdhJywgQVRNSU9DX0JBQ0tFTkQgKyAwLCBzdHJ1Y3QgYnIyNjg0X2ZpbHRlcl9zZXQpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWNsaXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtY2xpcC5oCmluZGV4IDM0NmU0MDIuLmEyNjZiODMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtY2xpcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtY2xpcC5oCkBAIC0yNiw1ICsyNiw1IEBACiAjZGVmaW5lIENMSVBfREVGQVVMVF9JRExFVElNRVIgMTIwMAogI2RlZmluZSBDTElQX0NIRUNLX0lOVEVSVkFMIDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DTUtDTElQIF9JTygnYScsQVRNSU9DX0NMSVApCisjZGVmaW5lIFNJT0NNS0NMSVAgX0lPKCdhJywgQVRNSU9DX0NMSVApCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWRldi5oCmluZGV4IDg5ZThiY2UuLmZlZDc1ZDMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1kZXYuaApAQCAtMjMsNTYgKzIzLDU2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L2F0bWlvYy5oPgogI2RlZmluZSBFU0lfTEVOIDYKLSNkZWZpbmUgQVRNX09DM19QQ1IgKDE1NTUyMDAwMC8yNzAqMjYwLzgvNTMpCi0jZGVmaW5lIEFUTV8yNV9QQ1IgKCgyNTYwMDAwMC84LTgwMDApLzU0KQorI2RlZmluZSBBVE1fT0MzX1BDUiAoMTU1NTIwMDAwIC8gMjcwICogMjYwIC8gOCAvIDUzKQorI2RlZmluZSBBVE1fMjVfUENSICgoMjU2MDAwMDAgLyA4IC0gODAwMCkgLyA1NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9PQzEyX1BDUiAoNjIyMDgwMDAwLzEwODAqMTA0MC84LzUzKQotI2RlZmluZSBBVE1fRFMzX1BDUiAoODAwMCoxMikKLSNkZWZpbmUgX19BQUxfU1RBVF9JVEVNUyAgIF9fSEFORExFX0lURU0odHgpOyAgICAgX19IQU5ETEVfSVRFTSh0eF9lcnIpOyAgICAgX19IQU5ETEVfSVRFTShyeCk7ICAgICBfX0hBTkRMRV9JVEVNKHJ4X2Vycik7ICAgICBfX0hBTkRMRV9JVEVNKHJ4X2Ryb3ApOworI2RlZmluZSBBVE1fT0MxMl9QQ1IgKDYyMjA4MDAwMCAvIDEwODAgKiAxMDQwIC8gOCAvIDUzKQorI2RlZmluZSBBVE1fRFMzX1BDUiAoODAwMCAqIDEyKQorI2RlZmluZSBfX0FBTF9TVEFUX0lURU1TIF9fSEFORExFX0lURU0odHgpOyBfX0hBTkRMRV9JVEVNKHR4X2Vycik7IF9fSEFORExFX0lURU0ocngpOyBfX0hBTkRMRV9JVEVNKHJ4X2Vycik7IF9fSEFORExFX0lURU0ocnhfZHJvcCk7CiBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0hBTkRMRV9JVEVNKGkpIGludCBpCi0gX19BQUxfU1RBVF9JVEVNUworICBfX0FBTF9TVEFUX0lURU1TCiAjdW5kZWYgX19IQU5ETEVfSVRFTQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXRtX2Rldl9zdGF0cyB7Ci0gc3RydWN0IGF0bV9hYWxfc3RhdHMgYWFsMDsKLSBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWwzNDsKLSBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWw1OworICBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWwwOworICBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWwzNDsKKyAgc3RydWN0IGF0bV9hYWxfc3RhdHMgYWFsNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fQVRNX0FQSV9BTElHTjsKLSNkZWZpbmUgQVRNX0dFVExJTktSQVRFIF9JT1coJ2EnLEFUTUlPQ19JVEYrMSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX0dFVE5BTUVTIF9JT1coJ2EnLEFUTUlPQ19JVEYrMyxzdHJ1Y3QgYXRtX2lvYnVmKQotI2RlZmluZSBBVE1fR0VUVFlQRSBfSU9XKCdhJyxBVE1JT0NfSVRGKzQsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRMSU5LUkFURSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDEsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fR0VUTkFNRVMgX0lPVygnYScsIEFUTUlPQ19JVEYgKyAzLCBzdHJ1Y3QgYXRtX2lvYnVmKQorI2RlZmluZSBBVE1fR0VUVFlQRSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDQsIHN0cnVjdCBhdG1pZl9zaW9jKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX0dFVEVTSSBfSU9XKCdhJyxBVE1JT0NfSVRGKzUsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9HRVRBRERSIF9JT1coJ2EnLEFUTUlPQ19JVEYrNixzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX1JTVEFERFIgX0lPVygnYScsQVRNSU9DX0lURis3LHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fQUREQUREUiBfSU9XKCdhJyxBVE1JT0NfSVRGKzgsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRFU0kgX0lPVygnYScsIEFUTUlPQ19JVEYgKyA1LCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVEFERFIgX0lPVygnYScsIEFUTUlPQ19JVEYgKyA2LCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX1JTVEFERFIgX0lPVygnYScsIEFUTUlPQ19JVEYgKyA3LCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0FEREFERFIgX0lPVygnYScsIEFUTUlPQ19JVEYgKyA4LCBzdHJ1Y3QgYXRtaWZfc2lvYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9ERUxBRERSIF9JT1coJ2EnLEFUTUlPQ19JVEYrOSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX0dFVENJUkFOR0UgX0lPVygnYScsQVRNSU9DX0lURisxMCxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX1NFVENJUkFOR0UgX0lPVygnYScsQVRNSU9DX0lURisxMSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX1NFVEVTSSBfSU9XKCdhJyxBVE1JT0NfSVRGKzEyLHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fREVMQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDksIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fR0VUQ0lSQU5HRSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDEwLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX1NFVENJUkFOR0UgX0lPVygnYScsIEFUTUlPQ19JVEYgKyAxMSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9TRVRFU0kgX0lPVygnYScsIEFUTUlPQ19JVEYgKyAxMiwgc3RydWN0IGF0bWlmX3Npb2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1fU0VURVNJRiBfSU9XKCdhJyxBVE1JT0NfSVRGKzEzLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fQURETEVDU0FERFIgX0lPVygnYScsIEFUTUlPQ19JVEYrMTQsIHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fREVMTEVDU0FERFIgX0lPVygnYScsIEFUTUlPQ19JVEYrMTUsIHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fR0VUTEVDU0FERFIgX0lPVygnYScsIEFUTUlPQ19JVEYrMTYsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fU0VURVNJRiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDEzLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0FERExFQ1NBRERSIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgMTQsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fREVMTEVDU0FERFIgX0lPVygnYScsIEFUTUlPQ19JVEYgKyAxNSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRMRUNTQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDE2LCBzdHJ1Y3QgYXRtaWZfc2lvYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9HRVRTVEFUIF9JT1coJ2EnLEFUTUlPQ19TQVJDT00rMCxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX0dFVFNUQVRaIF9JT1coJ2EnLEFUTUlPQ19TQVJDT00rMSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX0dFVExPT1AgX0lPVygnYScsQVRNSU9DX1NBUkNPTSsyLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fU0VUTE9PUCBfSU9XKCdhJyxBVE1JT0NfU0FSQ09NKzMsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRTVEFUIF9JT1coJ2EnLCBBVE1JT0NfU0FSQ09NICsgMCwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRTVEFUWiBfSU9XKCdhJywgQVRNSU9DX1NBUkNPTSArIDEsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fR0VUTE9PUCBfSU9XKCdhJywgQVRNSU9DX1NBUkNPTSArIDIsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fU0VUTE9PUCBfSU9XKCdhJywgQVRNSU9DX1NBUkNPTSArIDMsIHN0cnVjdCBhdG1pZl9zaW9jKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX1FVRVJZTE9PUCBfSU9XKCdhJyxBVE1JT0NfU0FSQ09NKzQsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9TRVRTQyBfSU9XKCdhJyxBVE1JT0NfU1BFQ0lBTCsxLGludCkKLSNkZWZpbmUgQVRNX1NFVEJBQ0tFTkQgX0lPVygnYScsQVRNSU9DX1NQRUNJQUwrMixhdG1fYmFja2VuZF90KQotI2RlZmluZSBBVE1fTkVXQkFDS0VORElGIF9JT1coJ2EnLEFUTUlPQ19TUEVDSUFMKzMsYXRtX2JhY2tlbmRfdCkKKyNkZWZpbmUgQVRNX1FVRVJZTE9PUCBfSU9XKCdhJywgQVRNSU9DX1NBUkNPTSArIDQsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fU0VUU0MgX0lPVygnYScsIEFUTUlPQ19TUEVDSUFMICsgMSwgaW50KQorI2RlZmluZSBBVE1fU0VUQkFDS0VORCBfSU9XKCdhJywgQVRNSU9DX1NQRUNJQUwgKyAyLCBhdG1fYmFja2VuZF90KQorI2RlZmluZSBBVE1fTkVXQkFDS0VORElGIF9JT1coJ2EnLCBBVE1JT0NfU1BFQ0lBTCArIDMsIGF0bV9iYWNrZW5kX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1fQUREUEFSVFkgX0lPVygnYScsIEFUTUlPQ19TUEVDSUFMKzQsc3RydWN0IGF0bV9pb2J1ZikKLSNkZWZpbmUgQVRNX0RST1BQQVJUWSBfSU9XKCdhJywgQVRNSU9DX1NQRUNJQUwrNSxpbnQpCisjZGVmaW5lIEFUTV9BRERQQVJUWSBfSU9XKCdhJywgQVRNSU9DX1NQRUNJQUwgKyA0LCBzdHJ1Y3QgYXRtX2lvYnVmKQorI2RlZmluZSBBVE1fRFJPUFBBUlRZIF9JT1coJ2EnLCBBVE1JT0NfU1BFQ0lBTCArIDUsIGludCkKICNkZWZpbmUgQVRNX0JBQ0tFTkRfUkFXIDAKICNkZWZpbmUgQVRNX0JBQ0tFTkRfUFBQIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMDIsMTQgKzEwMiwxNCBAQAogI2RlZmluZSBBVE1fTE1fUk1UX0FOQUxPRyBfX0FUTV9MTV9NS1JNVChfX0FUTV9MTV9BTkFMT0cpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF0bV9pb2J1ZiB7Ci0gaW50IGxlbmd0aDsKLSB2b2lkIF9fdXNlciAqYnVmZmVyOworICBpbnQgbGVuZ3RoOworICB2b2lkIF9fdXNlciAqIGJ1ZmZlcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1fQ0lfTUFYIC0xCisjZGVmaW5lIEFUTV9DSV9NQVggLSAxCiBzdHJ1Y3QgYXRtX2NpcmFuZ2UgewotIHNpZ25lZCBjaGFyIHZwaV9iaXRzOwotIHNpZ25lZCBjaGFyIHZjaV9iaXRzOworICBzaWduZWQgY2hhciB2cGlfYml0czsKKyAgc2lnbmVkIGNoYXIgdmNpX2JpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQVRNX1NDX1JYIDEwMjQKQEAgLTEyMyw3ICsxMjMsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRNX01GX0RFQ19TSFAgMTYKICNkZWZpbmUgQVRNX01GX0JXRCAzMgotI2RlZmluZSBBVE1fTUZfU0VUIChBVE1fTUZfSU5DX1JTViB8IEFUTV9NRl9JTkNfU0hQIHwgQVRNX01GX0RFQ19SU1YgfCAgIEFUTV9NRl9ERUNfU0hQIHwgQVRNX01GX0JXRCkKKyNkZWZpbmUgQVRNX01GX1NFVCAoQVRNX01GX0lOQ19SU1YgfCBBVE1fTUZfSU5DX1NIUCB8IEFUTV9NRl9ERUNfUlNWIHwgQVRNX01GX0RFQ19TSFAgfCBBVE1fTUZfQldEKQogI2RlZmluZSBBVE1fVlNfSURMRSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1fVlNfQ09OTkVDVEVEIDEKQEAgLTEzMiw3ICsxMzIsNyBAQAogI2RlZmluZSBBVE1fVlNfSU5VU0UgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRNX1ZTX0JPVU5EIDUKLSNkZWZpbmUgQVRNX1ZTMlRYVF9NQVAgICAiSURMRSIsICJDT05ORUNURUQiLCAiQ0xPU0lORyIsICJMSVNURU4iLCAiSU5VU0UiLCAiQk9VTkQiCi0jZGVmaW5lIEFUTV9WRjJUWFRfTUFQICAgIkFERFIiLCAiUkVBRFkiLCAiUEFSVElBTCIsICJSRUdJUyIsICAgIlJFTEVBU0VEIiwgIkhBU1FPUyIsICJMSVNURU4iLCAiTUVUQSIsICAgIjI1NiIsICI1MTIiLCAiMTAyNCIsICIyMDQ4IiwgICAiU0VTU0lPTiIsICJIQVNTQVAiLCAiQk9VTkQiLCAiQ0xPU0UiCisjZGVmaW5lIEFUTV9WUzJUWFRfTUFQICJJRExFIiwgIkNPTk5FQ1RFRCIsICJDTE9TSU5HIiwgIkxJU1RFTiIsICJJTlVTRSIsICJCT1VORCIKKyNkZWZpbmUgQVRNX1ZGMlRYVF9NQVAgIkFERFIiLCAiUkVBRFkiLCAiUEFSVElBTCIsICJSRUdJUyIsICJSRUxFQVNFRCIsICJIQVNRT1MiLCAiTElTVEVOIiwgIk1FVEEiLCAiMjU2IiwgIjUxMiIsICIxMDI0IiwgIjIwNDgiLCAiU0VTU0lPTiIsICJIQVNTQVAiLCAiQk9VTkQiLCAiQ0xPU0UiCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWxlYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1sZWMuaAppbmRleCA3NmUxMGJhLi5hNDRkNDdhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWxlYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbGVjLmgKQEAgLTI2LDc4ICsyNiw3OCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIEFUTUxFQ19DVFJMIF9JTygnYScsIEFUTUlPQ19MQU5FKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNTEVDX0RBVEEgX0lPKCdhJywgQVRNSU9DX0xBTkUrMSkKLSNkZWZpbmUgQVRNTEVDX01DQVNUIF9JTygnYScsIEFUTUlPQ19MQU5FKzIpCisjZGVmaW5lIEFUTUxFQ19EQVRBIF9JTygnYScsIEFUTUlPQ19MQU5FICsgMSkKKyNkZWZpbmUgQVRNTEVDX01DQVNUIF9JTygnYScsIEFUTUlPQ19MQU5FICsgMikKICNkZWZpbmUgTUFYX0xFQ19JVEYgNDgKIHR5cGVkZWYgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxfc2V0X21hY19hZGRyLAotIGxfZGVsX21hY19hZGRyLAotIGxfc3ZjX3NldHVwLAotIGxfYWRkcl9kZWxldGUsCisgIGxfc2V0X21hY19hZGRyLAorICBsX2RlbF9tYWNfYWRkciwKKyAgbF9zdmNfc2V0dXAsCisgIGxfYWRkcl9kZWxldGUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxfdG9wb2xvZ3lfY2hhbmdlLAotIGxfZmx1c2hfY29tcGxldGUsCi0gbF9hcnBfdXBkYXRlLAotIGxfbmFycF9yZXEsCisgIGxfdG9wb2xvZ3lfY2hhbmdlLAorICBsX2ZsdXNoX2NvbXBsZXRlLAorICBsX2FycF91cGRhdGUsCisgIGxfbmFycF9yZXEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxfY29uZmlnLAotIGxfZmx1c2hfdHJhbl9pZCwKLSBsX3NldF9sZWNpZCwKLSBsX2FycF94bXQsCisgIGxfY29uZmlnLAorICBsX2ZsdXNoX3RyYW5faWQsCisgIGxfc2V0X2xlY2lkLAorICBsX2FycF94bXQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxfcmRlc2NfYXJwX3htdCwKLSBsX2Fzc29jaWF0ZV9yZXEsCi0gbF9zaG91bGRfYnJpZGdlCisgIGxfcmRlc2NfYXJwX3htdCwKKyAgbF9hc3NvY2lhdGVfcmVxLAorICBsX3Nob3VsZF9icmlkZ2UKIH0gYXRtbGVjX21zZ190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRNTEVDX01TR19UWVBFX01BWCBsX3Nob3VsZF9icmlkZ2UKIHN0cnVjdCBhdG1sZWNfY29uZmlnX21zZyB7Ci0gdW5zaWduZWQgaW50IG1heGltdW1fdW5rbm93bl9mcmFtZV9jb3VudDsKLSB1bnNpZ25lZCBpbnQgbWF4X3Vua25vd25fZnJhbWVfdGltZTsKKyAgdW5zaWduZWQgaW50IG1heGltdW1fdW5rbm93bl9mcmFtZV9jb3VudDsKKyAgdW5zaWduZWQgaW50IG1heF91bmtub3duX2ZyYW1lX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IG1heF9yZXRyeV9jb3VudDsKLSB1bnNpZ25lZCBpbnQgYWdpbmdfdGltZTsKLSB1bnNpZ25lZCBpbnQgZm9yd2FyZF9kZWxheV90aW1lOwotIHVuc2lnbmVkIGludCBhcnBfcmVzcG9uc2VfdGltZTsKKyAgdW5zaWduZWQgc2hvcnQgbWF4X3JldHJ5X2NvdW50OworICB1bnNpZ25lZCBpbnQgYWdpbmdfdGltZTsKKyAgdW5zaWduZWQgaW50IGZvcndhcmRfZGVsYXlfdGltZTsKKyAgdW5zaWduZWQgaW50IGFycF9yZXNwb25zZV90aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmx1c2hfdGltZW91dDsKLSB1bnNpZ25lZCBpbnQgcGF0aF9zd2l0Y2hpbmdfZGVsYXk7Ci0gdW5zaWduZWQgaW50IGxhbmVfdmVyc2lvbjsKLSBpbnQgbXR1OworICB1bnNpZ25lZCBpbnQgZmx1c2hfdGltZW91dDsKKyAgdW5zaWduZWQgaW50IHBhdGhfc3dpdGNoaW5nX2RlbGF5OworICB1bnNpZ25lZCBpbnQgbGFuZV92ZXJzaW9uOworICBpbnQgbXR1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaXNfcHJveHk7CisgIGludCBpc19wcm94eTsKIH07CiBzdHJ1Y3QgYXRtbGVjX21zZyB7Ci0gYXRtbGVjX21zZ190eXBlIHR5cGU7CisgIGF0bWxlY19tc2dfdHlwZSB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc2l6ZW9mdGx2czsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIG1hY19hZGRyW0VUSF9BTEVOXTsKKyAgaW50IHNpemVvZnRsdnM7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgY2hhciBtYWNfYWRkcltFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYXRtX2FkZHJbQVRNX0VTQV9MRU5dOwotIHVuc2lnbmVkIGludCBmbGFnOwotIHVuc2lnbmVkIGludCB0YXJnZXRsZXNzX2xlX2FycDsKLSB1bnNpZ25lZCBpbnQgbm9fc291cmNlX2xlX25hcnA7CisgICAgICB1bnNpZ25lZCBjaGFyIGF0bV9hZGRyW0FUTV9FU0FfTEVOXTsKKyAgICAgIHVuc2lnbmVkIGludCBmbGFnOworICAgICAgdW5zaWduZWQgaW50IHRhcmdldGxlc3NfbGVfYXJwOworICAgICAgdW5zaWduZWQgaW50IG5vX3NvdXJjZV9sZV9uYXJwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG5vcm1hbDsKLSBzdHJ1Y3QgYXRtbGVjX2NvbmZpZ19tc2cgY29uZmlnOwotIHN0cnVjdCB7Ci0gX191MTYgbGVjX2lkOworICAgIH0gbm9ybWFsOworICAgIHN0cnVjdCBhdG1sZWNfY29uZmlnX21zZyBjb25maWc7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IGxlY19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHJhbl9pZDsKLSB1bnNpZ25lZCBjaGFyIG1hY19hZGRyW0VUSF9BTEVOXTsKLSB1bnNpZ25lZCBjaGFyIGF0bV9hZGRyW0FUTV9FU0FfTEVOXTsKLSB9IHByb3h5OworICAgICAgX191MzIgdHJhbl9pZDsKKyAgICAgIHVuc2lnbmVkIGNoYXIgbWFjX2FkZHJbRVRIX0FMRU5dOworICAgICAgdW5zaWduZWQgY2hhciBhdG1fYWRkcltBVE1fRVNBX0xFTl07CisgICAgfSBwcm94eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBjb250ZW50OworICB9IGNvbnRlbnQ7CiB9IF9fQVRNX0FQSV9BTElHTjsKIHN0cnVjdCBhdG1sZWNfaW9jIHsKLSBpbnQgZGV2X251bTsKKyAgaW50IGRldl9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYXRtX2FkZHJbQVRNX0VTQV9MRU5dOwotIHVuc2lnbmVkIGNoYXIgcmVjZWl2ZTsKKyAgdW5zaWduZWQgY2hhciBhdG1fYWRkcltBVE1fRVNBX0xFTl07CisgIHVuc2lnbmVkIGNoYXIgcmVjZWl2ZTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bW1wYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1tcGMuaAppbmRleCBhOTQ2MDMwLi43ZmU2MGJkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bW1wYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbXBjLmgKQEAgLTI0LDcxICsyNCw3MSBAQAogI2luY2x1ZGUgPGxpbnV4L2F0bS5oPgogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIEFUTU1QQ19DVFJMIF9JTygnYScsIEFUTUlPQ19NUE9BKQotI2RlZmluZSBBVE1NUENfREFUQSBfSU8oJ2EnLCBBVE1JT0NfTVBPQSsxKQorI2RlZmluZSBBVE1NUENfREFUQSBfSU8oJ2EnLCBBVE1JT0NfTVBPQSArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNUENfU09DS0VUX0lOR1JFU1MgMQogI2RlZmluZSBNUENfU09DS0VUX0VHUkVTUyAyCiBzdHJ1Y3QgYXRtbXBjX2lvYyB7Ci0gaW50IGRldl9udW07CisgIGludCBkZXZfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaXBhZGRyOwotIGludCB0eXBlOworICBfX2JlMzIgaXBhZGRyOworICBpbnQgdHlwZTsKIH07CiB0eXBlZGVmIHN0cnVjdCBpbl9jdHJsX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IExhc3RfTkhSUF9DSUVfY29kZTsKLSBfX3U4IExhc3RfUTI5MzFfY2F1c2VfdmFsdWU7Ci0gX191OCBlZ19NUENfQVRNX2FkZHJbQVRNX0VTQV9MRU5dOwotIF9fYmUzMiB0YWc7CisgIF9fdTggTGFzdF9OSFJQX0NJRV9jb2RlOworICBfX3U4IExhc3RfUTI5MzFfY2F1c2VfdmFsdWU7CisgIF9fdTggZWdfTVBDX0FUTV9hZGRyW0FUTV9FU0FfTEVOXTsKKyAgX19iZTMyIHRhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGluX2RzdF9pcDsKLSBfX3UxNiBob2xkaW5nX3RpbWU7Ci0gX191MzIgcmVxdWVzdF9pZDsKKyAgX19iZTMyIGluX2RzdF9pcDsKKyAgX191MTYgaG9sZGluZ190aW1lOworICBfX3UzMiByZXF1ZXN0X2lkOwogfSBpbl9jdHJsX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZWdfY3RybF9pbmZvIHsKLSBfX3U4IERMTF9oZWFkZXJbMjU2XTsKLSBfX3U4IERIX2xlbmd0aDsKLSBfX2JlMzIgY2FjaGVfaWQ7CisgIF9fdTggRExMX2hlYWRlclsyNTZdOworICBfX3U4IERIX2xlbmd0aDsKKyAgX19iZTMyIGNhY2hlX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgdGFnOwotIF9fYmUzMiBtcHNfaXA7Ci0gX19iZTMyIGVnX2RzdF9pcDsKLSBfX3U4IGluX01QQ19kYXRhX0FUTV9hZGRyW0FUTV9FU0FfTEVOXTsKKyAgX19iZTMyIHRhZzsKKyAgX19iZTMyIG1wc19pcDsKKyAgX19iZTMyIGVnX2RzdF9pcDsKKyAgX191OCBpbl9NUENfZGF0YV9BVE1fYWRkcltBVE1fRVNBX0xFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhvbGRpbmdfdGltZTsKKyAgX191MTYgaG9sZGluZ190aW1lOwogfSBlZ19jdHJsX2luZm87CiBzdHJ1Y3QgbXBjX3BhcmFtZXRlcnMgewotIF9fdTE2IG1wY19wMTsKKyAgX191MTYgbXBjX3AxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtcGNfcDI7Ci0gX191OCBtcGNfcDNbOF07Ci0gX191MTYgbXBjX3A0OwotIF9fdTE2IG1wY19wNTsKKyAgX191MTYgbXBjX3AyOworICBfX3U4IG1wY19wM1s4XTsKKyAgX191MTYgbXBjX3A0OworICBfX3UxNiBtcGNfcDU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1wY19wNjsKLX0gOworICBfX3UxNiBtcGNfcDY7Cit9Owogc3RydWN0IGtfbWVzc2FnZSB7Ci0gX191MTYgdHlwZTsKKyAgX191MTYgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGlwX21hc2s7Ci0gX191OCBNUFNfY3RybFtBVE1fRVNBX0xFTl07Ci0gdW5pb24gewotIGluX2N0cmxfaW5mbyBpbl9pbmZvOworICBfX2JlMzIgaXBfbWFzazsKKyAgX191OCBNUFNfY3RybFtBVE1fRVNBX0xFTl07CisgIHVuaW9uIHsKKyAgICBpbl9jdHJsX2luZm8gaW5faW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZWdfY3RybF9pbmZvIGVnX2luZm87Ci0gc3RydWN0IG1wY19wYXJhbWV0ZXJzIHBhcmFtczsKLSB9IGNvbnRlbnQ7Ci0gc3RydWN0IGF0bV9xb3MgcW9zOworICAgIGVnX2N0cmxfaW5mbyBlZ19pbmZvOworICAgIHN0cnVjdCBtcGNfcGFyYW1ldGVycyBwYXJhbXM7CisgIH0gY29udGVudDsKKyAgc3RydWN0IGF0bV9xb3MgcW9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19BVE1fQVBJX0FMSUdOOwogc3RydWN0IGxsY19zbmFwX2hkciB7Ci0gX191OCBkc2FwOwotIF9fdTggc3NhcDsKKyAgX191OCBkc2FwOworICBfX3U4IHNzYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdWk7Ci0gX191OCBvcmdbM107Ci0gX191OCB0eXBlWzJdOworICBfX3U4IHVpOworICBfX3U4IG9yZ1szXTsKKyAgX191OCB0eXBlWzJdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRMVl9NUE9BX0RFVklDRV9UWVBFIDB4MDBhMDNlMmEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtcHBwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXBwcC5oCmluZGV4IDk4ZTJlMzEuLjYzMzlkNWIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtcHBwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1wcHAuaApAQCAtMjQsOCArMjQsOCBAQAogI2RlZmluZSBQUFBPQVRNX0VOQ0FQU19WQyAoMSkKICNkZWZpbmUgUFBQT0FUTV9FTkNBUFNfTExDICgyKQogc3RydWN0IGF0bV9iYWNrZW5kX3BwcCB7Ci0gYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKKyAgYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGVuY2FwczsKKyAgaW50IGVuY2FwczsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtc2FwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXNhcC5oCmluZGV4IDg1ZTgwMjAuLjdkY2MyNzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtc2FwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zYXAuaApAQCAtNzQsNTEgKzc0LDUxIEBACiAjZGVmaW5lIEFUTV9NQ19IMjIxIDUKICNkZWZpbmUgQVRNX01BWF9ITEkgOAogc3RydWN0IGF0bV9ibGxpIHsKLSB1bnNpZ25lZCBjaGFyIGwyX3Byb3RvOworICB1bnNpZ25lZCBjaGFyIGwyX3Byb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIG1vZGU7Ci0gdW5zaWduZWQgY2hhciB3aW5kb3c7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgY2hhciBtb2RlOworICAgICAgdW5zaWduZWQgY2hhciB3aW5kb3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gaXR1OwotIHVuc2lnbmVkIGNoYXIgdXNlcjsKLSB9IGwyOwotIHVuc2lnbmVkIGNoYXIgbDNfcHJvdG87CisgICAgfSBpdHU7CisgICAgdW5zaWduZWQgY2hhciB1c2VyOworICB9IGwyOworICB1bnNpZ25lZCBjaGFyIGwzX3Byb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIG1vZGU7Ci0gdW5zaWduZWQgY2hhciBkZWZfc2l6ZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBjaGFyIG1vZGU7CisgICAgICB1bnNpZ25lZCBjaGFyIGRlZl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHdpbmRvdzsKLSB9IGl0dTsKLSB1bnNpZ25lZCBjaGFyIHVzZXI7Ci0gc3RydWN0IHsKKyAgICAgIHVuc2lnbmVkIGNoYXIgd2luZG93OworICAgIH0gaXR1OworICAgIHVuc2lnbmVkIGNoYXIgdXNlcjsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHRlcm1fdHlwZTsKLSB1bnNpZ25lZCBjaGFyIGZ3X21weF9jYXA7Ci0gdW5zaWduZWQgY2hhciBid19tcHhfY2FwOwotIH0gaDMxMDsKKyAgICAgIHVuc2lnbmVkIGNoYXIgdGVybV90eXBlOworICAgICAgdW5zaWduZWQgY2hhciBmd19tcHhfY2FwOworICAgICAgdW5zaWduZWQgY2hhciBid19tcHhfY2FwOworICAgIH0gaDMxMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGlwaTsKLSB1bnNpZ25lZCBjaGFyIHNuYXBbNV07Ci0gfSB0cjk1Nzc7CisgICAgc3RydWN0IHsKKyAgICAgIHVuc2lnbmVkIGNoYXIgaXBpOworICAgICAgdW5zaWduZWQgY2hhciBzbmFwWzVdOworICAgIH0gdHI5NTc3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGwzOworICB9IGwzOwogfSBfX0FUTV9BUElfQUxJR047CiBzdHJ1Y3QgYXRtX2JobGkgewotIHVuc2lnbmVkIGNoYXIgaGxfdHlwZTsKKyAgdW5zaWduZWQgY2hhciBobF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGhsX2xlbmd0aDsKLSB1bnNpZ25lZCBjaGFyIGhsX2luZm9bQVRNX01BWF9ITEldOworICB1bnNpZ25lZCBjaGFyIGhsX2xlbmd0aDsKKyAgdW5zaWduZWQgY2hhciBobF9pbmZvW0FUTV9NQVhfSExJXTsKIH07CiAjZGVmaW5lIEFUTV9NQVhfQkxMSSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF0bV9zYXAgewotIHN0cnVjdCBhdG1fYmhsaSBiaGxpOwotIHN0cnVjdCBhdG1fYmxsaSBibGxpW0FUTV9NQVhfQkxMSV0gX19BVE1fQVBJX0FMSUdOOworICBzdHJ1Y3QgYXRtX2JobGkgYmhsaTsKKyAgc3RydWN0IGF0bV9ibGxpIGJsbGlbQVRNX01BWF9CTExJXSBfX0FUTV9BUElfQUxJR047CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zdmMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtc3ZjLmgKaW5kZXggMjg1OTc3Yy4uMmRmMDg3MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zdmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXN2Yy5oCkBAIC0yMiwyNyArMjIsNDQgQEAKICNpbmNsdWRlIDxsaW51eC9hdG0uaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+Ci0jZGVmaW5lIEFUTVNJR0RfQ1RSTCBfSU8oJ2EnLEFUTUlPQ19TUEVDSUFMKQotZW51bSBhdG1zdmNfbXNnX3R5cGUgeyBhc19jYXRjaF9udWxsLCBhc19iaW5kLCBhc19jb25uZWN0LCBhc19hY2NlcHQsIGFzX3JlamVjdCwKLSBhc19saXN0ZW4sIGFzX29rYXksIGFzX2Vycm9yLCBhc19pbmRpY2F0ZSwgYXNfY2xvc2UsCisjZGVmaW5lIEFUTVNJR0RfQ1RSTCBfSU8oJ2EnLCBBVE1JT0NfU1BFQ0lBTCkKK2VudW0gYXRtc3ZjX21zZ190eXBlIHsKKyAgYXNfY2F0Y2hfbnVsbCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXNfaXRmX25vdGlmeSwgYXNfbW9kaWZ5LCBhc19pZGVudGlmeSwgYXNfdGVybWluYXRlLAotIGFzX2FkZHBhcnR5LCBhc19kcm9wcGFydHkgfTsKKyAgYXNfYmluZCwKKyAgYXNfY29ubmVjdCwKKyAgYXNfYWNjZXB0LAorICBhc19yZWplY3QsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBhc19saXN0ZW4sCisgIGFzX29rYXksCisgIGFzX2Vycm9yLAorICBhc19pbmRpY2F0ZSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGFzX2Nsb3NlLAorICBhc19pdGZfbm90aWZ5LAorICBhc19tb2RpZnksCisgIGFzX2lkZW50aWZ5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgYXNfdGVybWluYXRlLAorICBhc19hZGRwYXJ0eSwKKyAgYXNfZHJvcHBhcnR5Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhdG1zdmNfbXNnIHsKLSBlbnVtIGF0bXN2Y19tc2dfdHlwZSB0eXBlOworICBlbnVtIGF0bXN2Y19tc2dfdHlwZSB0eXBlOworICBhdG1fa3B0cl90IHZjYzsKKyAgYXRtX2twdHJfdCBsaXN0ZW5fdmNjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhdG1fa3B0cl90IHZjYzsKLSBhdG1fa3B0cl90IGxpc3Rlbl92Y2M7Ci0gaW50IHJlcGx5OwotIHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMgcHZjOworICBpbnQgcmVwbHk7CisgIHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMgcHZjOworICBzdHJ1Y3Qgc29ja2FkZHJfYXRtc3ZjIGxvY2FsOworICBzdHJ1Y3QgYXRtX3FvcyBxb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkcl9hdG1zdmMgbG9jYWw7Ci0gc3RydWN0IGF0bV9xb3MgcW9zOwotIHN0cnVjdCBhdG1fc2FwIHNhcDsKLSB1bnNpZ25lZCBpbnQgc2Vzc2lvbjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2F0bXN2YyBzdmM7CisgIHN0cnVjdCBhdG1fc2FwIHNhcDsKKyAgdW5zaWduZWQgaW50IHNlc3Npb247CisgIHN0cnVjdCBzb2NrYWRkcl9hdG1zdmMgc3ZjOwogfSBfX0FUTV9BUElfQUxJR047Ci0jZGVmaW5lIFNFTEVDVF9UT1BfUENSKHRwKSAoKHRwKS5wY3IgPyAodHApLnBjciA6ICAgKHRwKS5tYXhfcGNyICYmICh0cCkubWF4X3BjciAhPSBBVE1fTUFYX1BDUiA/ICh0cCkubWF4X3BjciA6ICAgKHRwKS5taW5fcGNyID8gKHRwKS5taW5fcGNyIDogQVRNX01BWF9QQ1IpCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNFTEVDVF9UT1BfUENSKHRwKSAoKHRwKS5wY3IgPyAodHApLnBjciA6ICh0cCkubWF4X3BjciAmJiAodHApLm1heF9wY3IgIT0gQVRNX01BWF9QQ1IgPyAodHApLm1heF9wY3IgOiAodHApLm1pbl9wY3IgPyAodHApLm1pbl9wY3IgOiBBVE1fTUFYX1BDUikKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdWRpdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdWRpdC5oCmluZGV4IGI1MDY1MTIuLmRhNmM3NDYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXVkaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1ZGl0LmgKQEAgLTQ2LDI4NCArNDYsMjk0IEBACiAjZGVmaW5lIEFVRElUX1NFVF9GRUFUVVJFIDEwMTgKICNkZWZpbmUgQVVESVRfR0VUX0ZFQVRVUkUgMTAxOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVESVRfRkVBVFVSRV9DSEFOR0UgMTAyMAogI2RlZmluZSBBVURJVF9GSVJTVF9VU0VSX01TRyAxMTAwCiAjZGVmaW5lIEFVRElUX1VTRVJfQVZDIDExMDcKICNkZWZpbmUgQVVESVRfVVNFUl9UVFkgMTEyNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfTEFTVF9VU0VSX01TRyAxMTk5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9GSVJTVF9VU0VSX01TRzIgMjEwMAogI2RlZmluZSBBVURJVF9MQVNUX1VTRVJfTVNHMiAyOTk5CiAjZGVmaW5lIEFVRElUX0RBRU1PTl9TVEFSVCAxMjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9EQUVNT05fRU5EIDEyMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0RBRU1PTl9BQk9SVCAxMjAyCiAjZGVmaW5lIEFVRElUX0RBRU1PTl9DT05GSUcgMTIwMwogI2RlZmluZSBBVURJVF9TWVNDQUxMIDEzMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX1BBVEggMTMwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfSVBDIDEzMDMKICNkZWZpbmUgQVVESVRfU09DS0VUQ0FMTCAxMzA0CiAjZGVmaW5lIEFVRElUX0NPTkZJR19DSEFOR0UgMTMwNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfU09DS0FERFIgMTMwNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQ1dEIDEzMDcKICNkZWZpbmUgQVVESVRfRVhFQ1ZFIDEzMDkKICNkZWZpbmUgQVVESVRfSVBDX1NFVF9QRVJNIDEzMTEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX01RX09QRU4gMTMxMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfTVFfU0VORFJFQ1YgMTMxMwogI2RlZmluZSBBVURJVF9NUV9OT1RJRlkgMTMxNAogI2RlZmluZSBBVURJVF9NUV9HRVRTRVRBVFRSIDEzMTUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0tFUk5FTF9PVEhFUiAxMzE2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9GRF9QQUlSIDEzMTcKICNkZWZpbmUgQVVESVRfT0JKX1BJRCAxMzE4CiAjZGVmaW5lIEFVRElUX1RUWSAxMzE5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9FT0UgMTMyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQlBSTV9GQ0FQUyAxMzIxCiAjZGVmaW5lIEFVRElUX0NBUFNFVCAxMzIyCiAjZGVmaW5lIEFVRElUX01NQVAgMTMyMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfTkVURklMVEVSX1BLVCAxMzI0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9ORVRGSUxURVJfQ0ZHIDEzMjUKICNkZWZpbmUgQVVESVRfU0VDQ09NUCAxMzI2Ci0jZGVmaW5lIEFVRElUX0FWQyAxNDAwCisjZGVmaW5lIEFVRElUX1BST0NUSVRMRSAxMzI3CisjZGVmaW5lIEFVRElUX0ZFQVRVUkVfQ0hBTkdFIDEzMjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FWQyAxNDAwCiAjZGVmaW5lIEFVRElUX1NFTElOVVhfRVJSIDE0MDEKICNkZWZpbmUgQVVESVRfQVZDX1BBVEggMTQwMgogI2RlZmluZSBBVURJVF9NQUNfUE9MSUNZX0xPQUQgMTQwMwotI2RlZmluZSBBVURJVF9NQUNfU1RBVFVTIDE0MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX01BQ19TVEFUVVMgMTQwNAogI2RlZmluZSBBVURJVF9NQUNfQ09ORklHX0NIQU5HRSAxNDA1CiAjZGVmaW5lIEFVRElUX01BQ19VTkxCTF9BTExPVyAxNDA2CiAjZGVmaW5lIEFVRElUX01BQ19DSVBTT1Y0X0FERCAxNDA3Ci0jZGVmaW5lIEFVRElUX01BQ19DSVBTT1Y0X0RFTCAxNDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9NQUNfQ0lQU09WNF9ERUwgMTQwOAogI2RlZmluZSBBVURJVF9NQUNfTUFQX0FERCAxNDA5CiAjZGVmaW5lIEFVRElUX01BQ19NQVBfREVMIDE0MTAKICNkZWZpbmUgQVVESVRfTUFDX0lQU0VDX0FERFNBIDE0MTEKLSNkZWZpbmUgQVVESVRfTUFDX0lQU0VDX0RFTFNBIDE0MTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX01BQ19JUFNFQ19ERUxTQSAxNDEyCiAjZGVmaW5lIEFVRElUX01BQ19JUFNFQ19BRERTUEQgMTQxMwogI2RlZmluZSBBVURJVF9NQUNfSVBTRUNfREVMU1BEIDE0MTQKICNkZWZpbmUgQVVESVRfTUFDX0lQU0VDX0VWRU5UIDE0MTUKLSNkZWZpbmUgQVVESVRfTUFDX1VOTEJMX1NUQ0FERCAxNDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9NQUNfVU5MQkxfU1RDQUREIDE0MTYKICNkZWZpbmUgQVVESVRfTUFDX1VOTEJMX1NUQ0RFTCAxNDE3CiAjZGVmaW5lIEFVRElUX0ZJUlNUX0tFUk5fQU5PTV9NU0cgMTcwMAogI2RlZmluZSBBVURJVF9MQVNUX0tFUk5fQU5PTV9NU0cgMTc5OQotI2RlZmluZSBBVURJVF9BTk9NX1BST01JU0NVT1VTIDE3MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FOT01fUFJPTUlTQ1VPVVMgMTcwMAogI2RlZmluZSBBVURJVF9BTk9NX0FCRU5EIDE3MDEKICNkZWZpbmUgQVVESVRfQU5PTV9MSU5LIDE3MDIKICNkZWZpbmUgQVVESVRfSU5URUdSSVRZX0RBVEEgMTgwMAotI2RlZmluZSBBVURJVF9JTlRFR1JJVFlfTUVUQURBVEEgMTgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfSU5URUdSSVRZX01FVEFEQVRBIDE4MDEKICNkZWZpbmUgQVVESVRfSU5URUdSSVRZX1NUQVRVUyAxODAyCiAjZGVmaW5lIEFVRElUX0lOVEVHUklUWV9IQVNIIDE4MDMKICNkZWZpbmUgQVVESVRfSU5URUdSSVRZX1BDUiAxODA0Ci0jZGVmaW5lIEFVRElUX0lOVEVHUklUWV9SVUxFIDE4MDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0lOVEVHUklUWV9SVUxFIDE4MDUKICNkZWZpbmUgQVVESVRfS0VSTkVMIDIwMDAKICNkZWZpbmUgQVVESVRfRklMVEVSX1VTRVIgMHgwMAogI2RlZmluZSBBVURJVF9GSUxURVJfVEFTSyAweDAxCi0jZGVmaW5lIEFVRElUX0ZJTFRFUl9FTlRSWSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9GSUxURVJfRU5UUlkgMHgwMgogI2RlZmluZSBBVURJVF9GSUxURVJfV0FUQ0ggMHgwMwogI2RlZmluZSBBVURJVF9GSUxURVJfRVhJVCAweDA0CiAjZGVmaW5lIEFVRElUX0ZJTFRFUl9UWVBFIDB4MDUKLSNkZWZpbmUgQVVESVRfTlJfRklMVEVSUyA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9OUl9GSUxURVJTIDYKICNkZWZpbmUgQVVESVRfRklMVEVSX1BSRVBFTkQgMHgxMAogI2RlZmluZSBBVURJVF9ORVZFUiAwCiAjZGVmaW5lIEFVRElUX1BPU1NJQkxFIDEKLSNkZWZpbmUgQVVESVRfQUxXQVlTIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FMV0FZUyAyCiAjZGVmaW5lIEFVRElUX01BWF9GSUVMRFMgNjQKICNkZWZpbmUgQVVESVRfTUFYX0tFWV9MRU4gMjU2CiAjZGVmaW5lIEFVRElUX0JJVE1BU0tfU0laRSA2NAotI2RlZmluZSBBVURJVF9XT1JEKG5yKSAoKF9fdTMyKSgobnIpLzMyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFVRElUX0JJVChucikgKDEgPDwgKChucikgLSBBVURJVF9XT1JEKG5yKSozMikpCisjZGVmaW5lIEFVRElUX1dPUkQobnIpICgoX191MzIpICgobnIpIC8gMzIpKQorI2RlZmluZSBBVURJVF9CSVQobnIpICgxIDw8ICgobnIpIC0gQVVESVRfV09SRChucikgKiAzMikpCiAjZGVmaW5lIEFVRElUX1NZU0NBTExfQ0xBU1NFUyAxNgogI2RlZmluZSBBVURJVF9DTEFTU19ESVJfV1JJVEUgMAotI2RlZmluZSBBVURJVF9DTEFTU19ESVJfV1JJVEVfMzIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ0xBU1NfRElSX1dSSVRFXzMyIDEKICNkZWZpbmUgQVVESVRfQ0xBU1NfQ0hBVFRSIDIKICNkZWZpbmUgQVVESVRfQ0xBU1NfQ0hBVFRSXzMyIDMKICNkZWZpbmUgQVVESVRfQ0xBU1NfUkVBRCA0Ci0jZGVmaW5lIEFVRElUX0NMQVNTX1JFQURfMzIgNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ0xBU1NfUkVBRF8zMiA1CiAjZGVmaW5lIEFVRElUX0NMQVNTX1dSSVRFIDYKICNkZWZpbmUgQVVESVRfQ0xBU1NfV1JJVEVfMzIgNwogI2RlZmluZSBBVURJVF9DTEFTU19TSUdOQUwgOAotI2RlZmluZSBBVURJVF9DTEFTU19TSUdOQUxfMzIgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ0xBU1NfU0lHTkFMXzMyIDkKICNkZWZpbmUgQVVESVRfVU5VU0VEX0JJVFMgMHgwN0ZGRkMwMAogI2RlZmluZSBBVURJVF9DT01QQVJFX1VJRF9UT19PQkpfVUlEIDEKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9HSURfVE9fT0JKX0dJRCAyCi0jZGVmaW5lIEFVRElUX0NPTVBBUkVfRVVJRF9UT19PQkpfVUlEIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0NPTVBBUkVfRVVJRF9UT19PQkpfVUlEIDMKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9FR0lEX1RPX09CSl9HSUQgNAogI2RlZmluZSBBVURJVF9DT01QQVJFX0FVSURfVE9fT0JKX1VJRCA1CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfU1VJRF9UT19PQkpfVUlEIDYKLSNkZWZpbmUgQVVESVRfQ09NUEFSRV9TR0lEX1RPX09CSl9HSUQgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ09NUEFSRV9TR0lEX1RPX09CSl9HSUQgNwogI2RlZmluZSBBVURJVF9DT01QQVJFX0ZTVUlEX1RPX09CSl9VSUQgOAogI2RlZmluZSBBVURJVF9DT01QQVJFX0ZTR0lEX1RPX09CSl9HSUQgOQogI2RlZmluZSBBVURJVF9DT01QQVJFX1VJRF9UT19BVUlEIDEwCi0jZGVmaW5lIEFVRElUX0NPTVBBUkVfVUlEX1RPX0VVSUQgMTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0NPTVBBUkVfVUlEX1RPX0VVSUQgMTEKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9VSURfVE9fRlNVSUQgMTIKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9VSURfVE9fU1VJRCAxMwogI2RlZmluZSBBVURJVF9DT01QQVJFX0FVSURfVE9fRlNVSUQgMTQKLSNkZWZpbmUgQVVESVRfQ09NUEFSRV9BVUlEX1RPX1NVSUQgMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0NPTVBBUkVfQVVJRF9UT19TVUlEIDE1CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfQVVJRF9UT19FVUlEIDE2CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfRVVJRF9UT19TVUlEIDE3CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfRVVJRF9UT19GU1VJRCAxOAotI2RlZmluZSBBVURJVF9DT01QQVJFX1NVSURfVE9fRlNVSUQgMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0NPTVBBUkVfU1VJRF9UT19GU1VJRCAxOQogI2RlZmluZSBBVURJVF9DT01QQVJFX0dJRF9UT19FR0lEIDIwCiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfR0lEX1RPX0ZTR0lEIDIxCiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfR0lEX1RPX1NHSUQgMjIKLSNkZWZpbmUgQVVESVRfQ09NUEFSRV9FR0lEX1RPX0ZTR0lEIDIzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9DT01QQVJFX0VHSURfVE9fRlNHSUQgMjMKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9FR0lEX1RPX1NHSUQgMjQKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9TR0lEX1RPX0ZTR0lEIDI1CiAjZGVmaW5lIEFVRElUX01BWF9GSUVMRF9DT01QQVJFIEFVRElUX0NPTVBBUkVfU0dJRF9UT19GU0dJRAotI2RlZmluZSBBVURJVF9QSUQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfUElEIDAKICNkZWZpbmUgQVVESVRfVUlEIDEKICNkZWZpbmUgQVVESVRfRVVJRCAyCiAjZGVmaW5lIEFVRElUX1NVSUQgMwotI2RlZmluZSBBVURJVF9GU1VJRCA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9GU1VJRCA0CiAjZGVmaW5lIEFVRElUX0dJRCA1CiAjZGVmaW5lIEFVRElUX0VHSUQgNgogI2RlZmluZSBBVURJVF9TR0lEIDcKLSNkZWZpbmUgQVVESVRfRlNHSUQgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfRlNHSUQgOAogI2RlZmluZSBBVURJVF9MT0dJTlVJRCA5CiAjZGVmaW5lIEFVRElUX1BFUlMgMTAKICNkZWZpbmUgQVVESVRfQVJDSCAxMQotI2RlZmluZSBBVURJVF9NU0dUWVBFIDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9NU0dUWVBFIDEyCiAjZGVmaW5lIEFVRElUX1NVQkpfVVNFUiAxMwogI2RlZmluZSBBVURJVF9TVUJKX1JPTEUgMTQKICNkZWZpbmUgQVVESVRfU1VCSl9UWVBFIDE1Ci0jZGVmaW5lIEFVRElUX1NVQkpfU0VOIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9TVUJKX1NFTiAxNgogI2RlZmluZSBBVURJVF9TVUJKX0NMUiAxNwogI2RlZmluZSBBVURJVF9QUElEIDE4CiAjZGVmaW5lIEFVRElUX09CSl9VU0VSIDE5Ci0jZGVmaW5lIEFVRElUX09CSl9ST0xFIDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9PQkpfUk9MRSAyMAogI2RlZmluZSBBVURJVF9PQkpfVFlQRSAyMQogI2RlZmluZSBBVURJVF9PQkpfTEVWX0xPVyAyMgogI2RlZmluZSBBVURJVF9PQkpfTEVWX0hJR0ggMjMKLSNkZWZpbmUgQVVESVRfTE9HSU5VSURfU0VUIDI0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9MT0dJTlVJRF9TRVQgMjQKICNkZWZpbmUgQVVESVRfREVWTUFKT1IgMTAwCiAjZGVmaW5lIEFVRElUX0RFVk1JTk9SIDEwMQogI2RlZmluZSBBVURJVF9JTk9ERSAxMDIKLSNkZWZpbmUgQVVESVRfRVhJVCAxMDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0VYSVQgMTAzCiAjZGVmaW5lIEFVRElUX1NVQ0NFU1MgMTA0CiAjZGVmaW5lIEFVRElUX1dBVENIIDEwNQogI2RlZmluZSBBVURJVF9QRVJNIDEwNgotI2RlZmluZSBBVURJVF9ESVIgMTA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9ESVIgMTA3CiAjZGVmaW5lIEFVRElUX0ZJTEVUWVBFIDEwOAogI2RlZmluZSBBVURJVF9PQkpfVUlEIDEwOQogI2RlZmluZSBBVURJVF9PQkpfR0lEIDExMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfRklFTERfQ09NUEFSRSAxMTEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0FSRzAgMjAwCi0jZGVmaW5lIEFVRElUX0FSRzEgKEFVRElUX0FSRzArMSkKLSNkZWZpbmUgQVVESVRfQVJHMiAoQVVESVRfQVJHMCsyKQotI2RlZmluZSBBVURJVF9BUkczIChBVURJVF9BUkcwKzMpCisjZGVmaW5lIEFVRElUX0FSRzEgKEFVRElUX0FSRzAgKyAxKQorI2RlZmluZSBBVURJVF9BUkcyIChBVURJVF9BUkcwICsgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FSRzMgKEFVRElUX0FSRzAgKyAzKQogI2RlZmluZSBBVURJVF9GSUxURVJLRVkgMjEwCiAjZGVmaW5lIEFVRElUX05FR0FURSAweDgwMDAwMDAwCiAjZGVmaW5lIEFVRElUX0JJVF9NQVNLIDB4MDgwMDAwMDAKLSNkZWZpbmUgQVVESVRfTEVTU19USEFOIDB4MTAwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0xFU1NfVEhBTiAweDEwMDAwMDAwCiAjZGVmaW5lIEFVRElUX0dSRUFURVJfVEhBTiAweDIwMDAwMDAwCiAjZGVmaW5lIEFVRElUX05PVF9FUVVBTCAweDMwMDAwMDAwCiAjZGVmaW5lIEFVRElUX0VRVUFMIDB4NDAwMDAwMDAKLSNkZWZpbmUgQVVESVRfQklUX1RFU1QgKEFVRElUX0JJVF9NQVNLfEFVRElUX0VRVUFMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVESVRfTEVTU19USEFOX09SX0VRVUFMIChBVURJVF9MRVNTX1RIQU58QVVESVRfRVFVQUwpCi0jZGVmaW5lIEFVRElUX0dSRUFURVJfVEhBTl9PUl9FUVVBTCAoQVVESVRfR1JFQVRFUl9USEFOfEFVRElUX0VRVUFMKQotI2RlZmluZSBBVURJVF9PUEVSQVRPUlMgKEFVRElUX0VRVUFMfEFVRElUX05PVF9FUVVBTHxBVURJVF9CSVRfTUFTSykKKyNkZWZpbmUgQVVESVRfQklUX1RFU1QgKEFVRElUX0JJVF9NQVNLIHwgQVVESVRfRVFVQUwpCisjZGVmaW5lIEFVRElUX0xFU1NfVEhBTl9PUl9FUVVBTCAoQVVESVRfTEVTU19USEFOIHwgQVVESVRfRVFVQUwpCisjZGVmaW5lIEFVRElUX0dSRUFURVJfVEhBTl9PUl9FUVVBTCAoQVVESVRfR1JFQVRFUl9USEFOIHwgQVVESVRfRVFVQUwpCisjZGVmaW5lIEFVRElUX09QRVJBVE9SUyAoQVVESVRfRVFVQUwgfCBBVURJVF9OT1RfRVFVQUwgfCBBVURJVF9CSVRfTUFTSykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKKyAgQXVkaXRfZXF1YWwsCisgIEF1ZGl0X25vdF9lcXVhbCwKKyAgQXVkaXRfYml0bWFzaywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQXVkaXRfZXF1YWwsCi0gQXVkaXRfbm90X2VxdWFsLAotIEF1ZGl0X2JpdG1hc2ssCi0gQXVkaXRfYml0dGVzdCwKKyAgQXVkaXRfYml0dGVzdCwKKyAgQXVkaXRfbHQsCisgIEF1ZGl0X2d0LAorICBBdWRpdF9sZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQXVkaXRfbHQsCi0gQXVkaXRfZ3QsCi0gQXVkaXRfbGUsCi0gQXVkaXRfZ2UsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEF1ZGl0X2JhZAorICBBdWRpdF9nZSwKKyAgQXVkaXRfYmFkCiB9OwogI2RlZmluZSBBVURJVF9TVEFUVVNfRU5BQkxFRCAweDAwMDEKLSNkZWZpbmUgQVVESVRfU1RBVFVTX0ZBSUxVUkUgMHgwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9TVEFUVVNfRkFJTFVSRSAweDAwMDIKICNkZWZpbmUgQVVESVRfU1RBVFVTX1BJRCAweDAwMDQKICNkZWZpbmUgQVVESVRfU1RBVFVTX1JBVEVfTElNSVQgMHgwMDA4CiAjZGVmaW5lIEFVRElUX1NUQVRVU19CQUNLTE9HX0xJTUlUIDB4MDAxMAotI2RlZmluZSBBVURJVF9TVEFUVVNfQkFDS0xPR19XQUlUX1RJTUUgMHgwMDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9TVEFUVVNfQkFDS0xPR19XQUlUX1RJTUUgMHgwMDIwCiAjZGVmaW5lIEFVRElUX1ZFUlNJT05fQkFDS0xPR19MSU1JVCAxCiAjZGVmaW5lIEFVRElUX1ZFUlNJT05fQkFDS0xPR19XQUlUX1RJTUUgMgogI2RlZmluZSBBVURJVF9WRVJTSU9OX0xBVEVTVCBBVURJVF9WRVJTSU9OX0JBQ0tMT0dfV0FJVF9USU1FCi0jZGVmaW5lIEFVRElUX0ZBSUxfU0lMRU5UIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0ZBSUxfU0lMRU5UIDAKICNkZWZpbmUgQVVESVRfRkFJTF9QUklOVEsgMQogI2RlZmluZSBBVURJVF9GQUlMX1BBTklDIDIKKyNkZWZpbmUgX19BVURJVF9BUkNIX0NPTlZFTlRJT05fTUFTSyAweDMwMDAwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX0FVRElUX0FSQ0hfQ09OVkVOVElPTl9NSVBTNjRfTjMyIDB4MjAwMDAwMDAKICNkZWZpbmUgX19BVURJVF9BUkNIXzY0QklUIDB4ODAwMDAwMDAKICNkZWZpbmUgX19BVURJVF9BUkNIX0xFIDB4NDAwMDAwMDAKKyNkZWZpbmUgQVVESVRfQVJDSF9BQVJDSDY0IChFTV9BQVJDSDY0IHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVESVRfQVJDSF9BTFBIQSAoRU1fQUxQSEF8X19BVURJVF9BUkNIXzY0QklUfF9fQVVESVRfQVJDSF9MRSkKLSNkZWZpbmUgQVVESVRfQVJDSF9BUk0gKEVNX0FSTXxfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfQUxQSEEgKEVNX0FMUEhBIHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQorI2RlZmluZSBBVURJVF9BUkNIX0FSTSAoRU1fQVJNIHwgX19BVURJVF9BUkNIX0xFKQogI2RlZmluZSBBVURJVF9BUkNIX0FSTUVCIChFTV9BUk0pCi0jZGVmaW5lIEFVRElUX0FSQ0hfQ1JJUyAoRU1fQ1JJU3xfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfQ1JJUyAoRU1fQ1JJUyB8IF9fQVVESVRfQVJDSF9MRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0FSQ0hfRlJWIChFTV9GUlYpCi0jZGVmaW5lIEFVRElUX0FSQ0hfSTM4NiAoRU1fMzg2fF9fQVVESVRfQVJDSF9MRSkKLSNkZWZpbmUgQVVESVRfQVJDSF9JQTY0IChFTV9JQV82NHxfX0FVRElUX0FSQ0hfNjRCSVR8X19BVURJVF9BUkNIX0xFKQorI2RlZmluZSBBVURJVF9BUkNIX0kzODYgKEVNXzM4NiB8IF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9JQTY0IChFTV9JQV82NCB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9MRSkKICNkZWZpbmUgQVVESVRfQVJDSF9NMzJSIChFTV9NMzJSKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJDSF9NNjhLIChFTV82OEspCisjZGVmaW5lIEFVRElUX0FSQ0hfTUlDUk9CTEFaRSAoRU1fTUlDUk9CTEFaRSkKICNkZWZpbmUgQVVESVRfQVJDSF9NSVBTIChFTV9NSVBTKQotI2RlZmluZSBBVURJVF9BUkNIX01JUFNFTCAoRU1fTUlQU3xfX0FVRElUX0FSQ0hfTEUpCi0jZGVmaW5lIEFVRElUX0FSQ0hfTUlQUzY0IChFTV9NSVBTfF9fQVVESVRfQVJDSF82NEJJVCkKKyNkZWZpbmUgQVVESVRfQVJDSF9NSVBTRUwgKEVNX01JUFMgfCBfX0FVRElUX0FSQ0hfTEUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVURJVF9BUkNIX01JUFNFTDY0IChFTV9NSVBTfF9fQVVESVRfQVJDSF82NEJJVHxfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfTUlQUzY0IChFTV9NSVBTIHwgX19BVURJVF9BUkNIXzY0QklUKQorI2RlZmluZSBBVURJVF9BUkNIX01JUFM2NE4zMiAoRU1fTUlQUyB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9DT05WRU5USU9OX01JUFM2NF9OMzIpCisjZGVmaW5lIEFVRElUX0FSQ0hfTUlQU0VMNjQgKEVNX01JUFMgfCBfX0FVRElUX0FSQ0hfNjRCSVQgfCBfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfTUlQU0VMNjROMzIgKEVNX01JUFMgfCBfX0FVRElUX0FSQ0hfNjRCSVQgfCBfX0FVRElUX0FSQ0hfTEUgfCBfX0FVRElUX0FSQ0hfQ09OVkVOVElPTl9NSVBTNjRfTjMyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJDSF9PUEVOUklTQyAoRU1fT1BFTlJJU0MpCiAjZGVmaW5lIEFVRElUX0FSQ0hfUEFSSVNDIChFTV9QQVJJU0MpCi0jZGVmaW5lIEFVRElUX0FSQ0hfUEFSSVNDNjQgKEVNX1BBUklTQ3xfX0FVRElUX0FSQ0hfNjRCSVQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9BUkNIX1BBUklTQzY0IChFTV9QQVJJU0MgfCBfX0FVRElUX0FSQ0hfNjRCSVQpCiAjZGVmaW5lIEFVRElUX0FSQ0hfUFBDIChFTV9QUEMpCi0jZGVmaW5lIEFVRElUX0FSQ0hfUFBDNjQgKEVNX1BQQzY0fF9fQVVESVRfQVJDSF82NEJJVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FSQ0hfUFBDNjQgKEVNX1BQQzY0IHwgX19BVURJVF9BUkNIXzY0QklUKQorI2RlZmluZSBBVURJVF9BUkNIX1BQQzY0TEUgKEVNX1BQQzY0IHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQogI2RlZmluZSBBVURJVF9BUkNIX1MzOTAgKEVNX1MzOTApCi0jZGVmaW5lIEFVRElUX0FSQ0hfUzM5MFggKEVNX1MzOTB8X19BVURJVF9BUkNIXzY0QklUKQorI2RlZmluZSBBVURJVF9BUkNIX1MzOTBYIChFTV9TMzkwIHwgX19BVURJVF9BUkNIXzY0QklUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJDSF9TSCAoRU1fU0gpCi0jZGVmaW5lIEFVRElUX0FSQ0hfU0hFTCAoRU1fU0h8X19BVURJVF9BUkNIX0xFKQotI2RlZmluZSBBVURJVF9BUkNIX1NINjQgKEVNX1NIfF9fQVVESVRfQVJDSF82NEJJVCkKLSNkZWZpbmUgQVVESVRfQVJDSF9TSEVMNjQgKEVNX1NIfF9fQVVESVRfQVJDSF82NEJJVHxfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfU0hFTCAoRU1fU0ggfCBfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfU0g2NCAoRU1fU0ggfCBfX0FVRElUX0FSQ0hfNjRCSVQpCisjZGVmaW5lIEFVRElUX0FSQ0hfU0hFTDY0IChFTV9TSCB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9MRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0FSQ0hfU1BBUkMgKEVNX1NQQVJDKQotI2RlZmluZSBBVURJVF9BUkNIX1NQQVJDNjQgKEVNX1NQQVJDVjl8X19BVURJVF9BUkNIXzY0QklUKQotI2RlZmluZSBBVURJVF9BUkNIX1g4Nl82NCAoRU1fWDg2XzY0fF9fQVVESVRfQVJDSF82NEJJVHxfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfU1BBUkM2NCAoRU1fU1BBUkNWOSB8IF9fQVVESVRfQVJDSF82NEJJVCkKKyNkZWZpbmUgQVVESVRfQVJDSF9YODZfNjQgKEVNX1g4Nl82NCB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9MRSkKICNkZWZpbmUgQVVESVRfUEVSTV9FWEVDIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX1BFUk1fV1JJVEUgMgpAQCAtMzMxLDY0ICszNDEsNjEgQEAKICNkZWZpbmUgQVVESVRfUEVSTV9BVFRSIDgKICNkZWZpbmUgQVVESVRfTUVTU0FHRV9URVhUX01BWCA4NTYwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGF1ZGl0X3N0YXR1cyB7Ci0gX191MzIgbWFzazsKLSBfX3UzMiBlbmFibGVkOwotIF9fdTMyIGZhaWx1cmU7CitlbnVtIGF1ZGl0X25sZ3JwcyB7CisgIEFVRElUX05MR1JQX05PTkUsCisgIEFVRElUX05MR1JQX1JFQURMT0csCisgIF9fQVVESVRfTkxHUlBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBpZDsKLSBfX3UzMiByYXRlX2xpbWl0OwotIF9fdTMyIGJhY2tsb2dfbGltaXQ7Ci0gX191MzIgbG9zdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmFja2xvZzsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGJhY2tsb2dfd2FpdF90aW1lOwogfTsKKyNkZWZpbmUgQVVESVRfTkxHUlBfTUFYIChfX0FVRElUX05MR1JQX01BWCAtIDEpCitzdHJ1Y3QgYXVkaXRfc3RhdHVzIHsKKyAgX191MzIgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGVuYWJsZWQ7CisgIF9fdTMyIGZhaWx1cmU7CisgIF9fdTMyIHBpZDsKKyAgX191MzIgcmF0ZV9saW1pdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJhY2tsb2dfbGltaXQ7CisgIF9fdTMyIGxvc3Q7CisgIF9fdTMyIGJhY2tsb2c7CisgIF9fdTMyIHZlcnNpb247CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBiYWNrbG9nX3dhaXRfdGltZTsKK307CiBzdHJ1Y3QgYXVkaXRfZmVhdHVyZXMgewogI2RlZmluZSBBVURJVF9GRUFUVVJFX1ZFUlNJT04gMQotIF9fdTMyIHZlcnM7Ci0gX191MzIgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmVhdHVyZXM7Ci0gX191MzIgbG9jazsKKyAgX191MzIgdmVyczsKKyAgX191MzIgbWFzazsKKyAgX191MzIgZmVhdHVyZXM7CisgIF9fdTMyIGxvY2s7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQVVESVRfRkVBVFVSRV9PTkxZX1VOU0VUX0xPR0lOVUlEIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0ZFQVRVUkVfTE9HSU5VSURfSU1NVVRBQkxFIDEKICNkZWZpbmUgQVVESVRfTEFTVF9GRUFUVVJFIEFVRElUX0ZFQVRVUkVfTE9HSU5VSURfSU1NVVRBQkxFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBhdWRpdF9mZWF0dXJlX3ZhbGlkKHgpICgoeCkgPj0gMCAmJiAoeCkgPD0gQVVESVRfTEFTVF9GRUFUVVJFKQogI2RlZmluZSBBVURJVF9GRUFUVVJFX1RPX01BU0soeCkgKDEgPDwgKCh4KSAmIDMxKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXVkaXRfdHR5X3N0YXR1cyB7Ci0gX191MzIgZW5hYmxlZDsKLSBfX3UzMiBsb2dfcGFzc3dkOwotfTsKKyAgX191MzIgZW5hYmxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFVRElUX1VJRF9VTlNFVCAodW5zaWduZWQgaW50KS0xCisgIF9fdTMyIGxvZ19wYXNzd2Q7Cit9OworI2RlZmluZSBBVURJVF9VSURfVU5TRVQgKHVuc2lnbmVkIGludCkgLSAxCiBzdHJ1Y3QgYXVkaXRfcnVsZV9kYXRhIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBhY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZpZWxkX2NvdW50OwotIF9fdTMyIG1hc2tbQVVESVRfQklUTUFTS19TSVpFXTsKLSBfX3UzMiBmaWVsZHNbQVVESVRfTUFYX0ZJRUxEU107Ci0gX191MzIgdmFsdWVzW0FVRElUX01BWF9GSUVMRFNdOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgYWN0aW9uOworICBfX3UzMiBmaWVsZF9jb3VudDsKKyAgX191MzIgbWFza1tBVURJVF9CSVRNQVNLX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmaWVsZGZsYWdzW0FVRElUX01BWF9GSUVMRFNdOwotIF9fdTMyIGJ1ZmxlbjsKLSBjaGFyIGJ1ZlswXTsKKyAgX191MzIgZmllbGRzW0FVRElUX01BWF9GSUVMRFNdOworICBfX3UzMiB2YWx1ZXNbQVVESVRfTUFYX0ZJRUxEU107CisgIF9fdTMyIGZpZWxkZmxhZ3NbQVVESVRfTUFYX0ZJRUxEU107CisgIF9fdTMyIGJ1ZmxlbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgYnVmWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgYXVkaXRfcnVsZSB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgYWN0aW9uOwotIF9fdTMyIGZpZWxkX2NvdW50OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXNrW0FVRElUX0JJVE1BU0tfU0laRV07Ci0gX191MzIgZmllbGRzW0FVRElUX01BWF9GSUVMRFNdOwotIF9fdTMyIHZhbHVlc1tBVURJVF9NQVhfRklFTERTXTsKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1dG9fZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mcy5oCmluZGV4IGExOTUzNzUuLmIzYjA0NWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mcy5oCkBAIC0zNCwzMSArMzQsMzEgQEAKICNkZWZpbmUgYXV0b2ZzX3B0eXBlX21pc3NpbmcgMAogI2RlZmluZSBhdXRvZnNfcHR5cGVfZXhwaXJlIDEKIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciB7Ci0gaW50IHByb3RvX3ZlcnNpb247CisgIGludCBwcm90b192ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHlwZTsKKyAgaW50IHR5cGU7CiB9Owogc3RydWN0IGF1dG9mc19wYWNrZXRfbWlzc2luZyB7Ci0gc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXV0b2ZzX3dxdF90IHdhaXRfcXVldWVfdG9rZW47Ci0gaW50IGxlbjsKLSBjaGFyIG5hbWVbTkFNRV9NQVgrMV07CisgIGF1dG9mc193cXRfdCB3YWl0X3F1ZXVlX3Rva2VuOworICBpbnQgbGVuOworICBjaGFyIG5hbWVbTkFNRV9NQVggKyAxXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF1dG9mc19wYWNrZXRfZXhwaXJlIHsKLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwotIGludCBsZW47Ci0gY2hhciBuYW1lW05BTUVfTUFYKzFdOworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOworICBpbnQgbGVuOworICBjaGFyIG5hbWVbTkFNRV9NQVggKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBBVVRPRlNfSU9DX1JFQURZIF9JTygweDkzLDB4NjApCi0jZGVmaW5lIEFVVE9GU19JT0NfRkFJTCBfSU8oMHg5MywweDYxKQotI2RlZmluZSBBVVRPRlNfSU9DX0NBVEFUT05JQyBfSU8oMHg5MywweDYyKQorI2RlZmluZSBBVVRPRlNfSU9DX1JFQURZIF9JTygweDkzLCAweDYwKQorI2RlZmluZSBBVVRPRlNfSU9DX0ZBSUwgX0lPKDB4OTMsIDB4NjEpCisjZGVmaW5lIEFVVE9GU19JT0NfQ0FUQVRPTklDIF9JTygweDkzLCAweDYyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVUT0ZTX0lPQ19QUk9UT1ZFUiBfSU9SKDB4OTMsMHg2MyxpbnQpCi0jZGVmaW5lIEFVVE9GU19JT0NfU0VUVElNRU9VVDMyIF9JT1dSKDB4OTMsMHg2NCxjb21wYXRfdWxvbmdfdCkKLSNkZWZpbmUgQVVUT0ZTX0lPQ19TRVRUSU1FT1VUIF9JT1dSKDB4OTMsMHg2NCx1bnNpZ25lZCBsb25nKQotI2RlZmluZSBBVVRPRlNfSU9DX0VYUElSRSBfSU9SKDB4OTMsMHg2NSxzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9leHBpcmUpCisjZGVmaW5lIEFVVE9GU19JT0NfUFJPVE9WRVIgX0lPUigweDkzLCAweDYzLCBpbnQpCisjZGVmaW5lIEFVVE9GU19JT0NfU0VUVElNRU9VVDMyIF9JT1dSKDB4OTMsIDB4NjQsIGNvbXBhdF91bG9uZ190KQorI2RlZmluZSBBVVRPRlNfSU9DX1NFVFRJTUVPVVQgX0lPV1IoMHg5MywgMHg2NCwgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgQVVUT0ZTX0lPQ19FWFBJUkUgX0lPUigweDkzLCAweDY1LCBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9leHBpcmUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1dG9fZnM0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1dG9fZnM0LmgKaW5kZXggYzdhNzg3Yi4uZTJjZDMzNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdXRvX2ZzNC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mczQuaApAQCAtMzgsMTAgKzM4LDEwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVVRPRlNfVFlQRV9PRkZTRVQgNFUKIGVudW0gYXV0b2ZzX25vdGlmeSB7Ci0gTkZZX05PTkUsCi0gTkZZX01PVU5ULAorICBORllfTk9ORSwKKyAgTkZZX01PVU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORllfRVhQSVJFCisgIE5GWV9FWFBJUkUKIH07CiAjZGVmaW5lIGF1dG9mc19wdHlwZV9leHBpcmVfbXVsdGkgMgogI2RlZmluZSBhdXRvZnNfcHR5cGVfbWlzc2luZ19pbmRpcmVjdCAzCkBAIC01MSwzMyArNTEsMzMgQEAKICNkZWZpbmUgYXV0b2ZzX3B0eXBlX2V4cGlyZV9kaXJlY3QgNgogc3RydWN0IGF1dG9mc19wYWNrZXRfZXhwaXJlX211bHRpIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKLSBhdXRvZnNfd3F0X3Qgd2FpdF9xdWV1ZV90b2tlbjsKLSBpbnQgbGVuOwotIGNoYXIgbmFtZVtOQU1FX01BWCsxXTsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKKyAgYXV0b2ZzX3dxdF90IHdhaXRfcXVldWVfdG9rZW47CisgIGludCBsZW47CisgIGNoYXIgbmFtZVtOQU1FX01BWCArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB1bmlvbiBhdXRvZnNfcGFja2V0X3VuaW9uIHsKLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwotIHN0cnVjdCBhdXRvZnNfcGFja2V0X21pc3NpbmcgbWlzc2luZzsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfbWlzc2luZyBtaXNzaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9leHBpcmUgZXhwaXJlOwotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZV9tdWx0aSBleHBpcmVfbXVsdGk7CisgIHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZSBleHBpcmU7CisgIHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZV9tdWx0aSBleHBpcmVfbXVsdGk7CiB9Owogc3RydWN0IGF1dG9mc192NV9wYWNrZXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwotIGF1dG9mc193cXRfdCB3YWl0X3F1ZXVlX3Rva2VuOwotIF9fdTMyIGRldjsKLSBfX3U2NCBpbm87CisgIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7CisgIGF1dG9mc193cXRfdCB3YWl0X3F1ZXVlX3Rva2VuOworICBfX3UzMiBkZXY7CisgIF9fdTY0IGlubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdWlkOwotIF9fdTMyIGdpZDsKLSBfX3UzMiBwaWQ7Ci0gX191MzIgdGdpZDsKKyAgX191MzIgdWlkOworICBfX3UzMiBnaWQ7CisgIF9fdTMyIHBpZDsKKyAgX191MzIgdGdpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuOwotIGNoYXIgbmFtZVtOQU1FX01BWCsxXTsKKyAgX191MzIgbGVuOworICBjaGFyIG5hbWVbTkFNRV9NQVggKyAxXTsKIH07CiB0eXBlZGVmIHN0cnVjdCBhdXRvZnNfdjVfcGFja2V0IGF1dG9mc19wYWNrZXRfbWlzc2luZ19pbmRpcmVjdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTg2LDE5ICs4NiwxOSBAQAogdHlwZWRlZiBzdHJ1Y3QgYXV0b2ZzX3Y1X3BhY2tldCBhdXRvZnNfcGFja2V0X2V4cGlyZV9kaXJlY3RfdDsKIHVuaW9uIGF1dG9mc192NV9wYWNrZXRfdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwotIHN0cnVjdCBhdXRvZnNfdjVfcGFja2V0IHY1X3BhY2tldDsKLSBhdXRvZnNfcGFja2V0X21pc3NpbmdfaW5kaXJlY3RfdCBtaXNzaW5nX2luZGlyZWN0OwotIGF1dG9mc19wYWNrZXRfZXhwaXJlX2luZGlyZWN0X3QgZXhwaXJlX2luZGlyZWN0OworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOworICBzdHJ1Y3QgYXV0b2ZzX3Y1X3BhY2tldCB2NV9wYWNrZXQ7CisgIGF1dG9mc19wYWNrZXRfbWlzc2luZ19pbmRpcmVjdF90IG1pc3NpbmdfaW5kaXJlY3Q7CisgIGF1dG9mc19wYWNrZXRfZXhwaXJlX2luZGlyZWN0X3QgZXhwaXJlX2luZGlyZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhdXRvZnNfcGFja2V0X21pc3NpbmdfZGlyZWN0X3QgbWlzc2luZ19kaXJlY3Q7Ci0gYXV0b2ZzX3BhY2tldF9leHBpcmVfZGlyZWN0X3QgZXhwaXJlX2RpcmVjdDsKKyAgYXV0b2ZzX3BhY2tldF9taXNzaW5nX2RpcmVjdF90IG1pc3NpbmdfZGlyZWN0OworICBhdXRvZnNfcGFja2V0X2V4cGlyZV9kaXJlY3RfdCBleHBpcmVfZGlyZWN0OwogfTsKLSNkZWZpbmUgQVVUT0ZTX0lPQ19FWFBJUkVfTVVMVEkgX0lPVygweDkzLDB4NjYsaW50KQorI2RlZmluZSBBVVRPRlNfSU9DX0VYUElSRV9NVUxUSSBfSU9XKDB4OTMsIDB4NjYsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVVE9GU19JT0NfRVhQSVJFX0lORElSRUNUIEFVVE9GU19JT0NfRVhQSVJFX01VTFRJCiAjZGVmaW5lIEFVVE9GU19JT0NfRVhQSVJFX0RJUkVDVCBBVVRPRlNfSU9DX0VYUElSRV9NVUxUSQotI2RlZmluZSBBVVRPRlNfSU9DX1BST1RPU1VCVkVSIF9JT1IoMHg5MywweDY3LGludCkKLSNkZWZpbmUgQVVUT0ZTX0lPQ19BU0tVTU9VTlQgX0lPUigweDkzLDB4NzAsaW50KQorI2RlZmluZSBBVVRPRlNfSU9DX1BST1RPU1VCVkVSIF9JT1IoMHg5MywgMHg2NywgaW50KQorI2RlZmluZSBBVVRPRlNfSU9DX0FTS1VNT1VOVCBfSU9SKDB4OTMsIDB4NzAsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXgyNS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9heDI1LmgKaW5kZXggMzNhNzYzOC4uODM5MDdjMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9heDI1LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9heDI1LmgKQEAgLTM3LDk1ICszNyw5NSBAQAogI2RlZmluZSBBWDI1X0lBTURJR0kgMTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFYMjVfS0lMTCA5OQotI2RlZmluZSBTSU9DQVgyNUdFVFVJRCAoU0lPQ1BST1RPUFJJVkFURSswKQotI2RlZmluZSBTSU9DQVgyNUFERFVJRCAoU0lPQ1BST1RPUFJJVkFURSsxKQotI2RlZmluZSBTSU9DQVgyNURFTFVJRCAoU0lPQ1BST1RPUFJJVkFURSsyKQorI2RlZmluZSBTSU9DQVgyNUdFVFVJRCAoU0lPQ1BST1RPUFJJVkFURSArIDApCisjZGVmaW5lIFNJT0NBWDI1QUREVUlEIChTSU9DUFJPVE9QUklWQVRFICsgMSkKKyNkZWZpbmUgU0lPQ0FYMjVERUxVSUQgKFNJT0NQUk9UT1BSSVZBVEUgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0FYMjVOT1VJRCAoU0lPQ1BST1RPUFJJVkFURSszKQotI2RlZmluZSBTSU9DQVgyNU9QVFJUIChTSU9DUFJPVE9QUklWQVRFKzcpCi0jZGVmaW5lIFNJT0NBWDI1Q1RMQ09OIChTSU9DUFJPVE9QUklWQVRFKzgpCi0jZGVmaW5lIFNJT0NBWDI1R0VUSU5GT09MRCAoU0lPQ1BST1RPUFJJVkFURSs5KQorI2RlZmluZSBTSU9DQVgyNU5PVUlEIChTSU9DUFJPVE9QUklWQVRFICsgMykKKyNkZWZpbmUgU0lPQ0FYMjVPUFRSVCAoU0lPQ1BST1RPUFJJVkFURSArIDcpCisjZGVmaW5lIFNJT0NBWDI1Q1RMQ09OIChTSU9DUFJPVE9QUklWQVRFICsgOCkKKyNkZWZpbmUgU0lPQ0FYMjVHRVRJTkZPT0xEIChTSU9DUFJPVE9QUklWQVRFICsgOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NBWDI1QURERldEIChTSU9DUFJPVE9QUklWQVRFKzEwKQotI2RlZmluZSBTSU9DQVgyNURFTEZXRCAoU0lPQ1BST1RPUFJJVkFURSsxMSkKLSNkZWZpbmUgU0lPQ0FYMjVERVZDVEwgKFNJT0NQUk9UT1BSSVZBVEUrMTIpCi0jZGVmaW5lIFNJT0NBWDI1R0VUSU5GTyAoU0lPQ1BST1RPUFJJVkFURSsxMykKKyNkZWZpbmUgU0lPQ0FYMjVBRERGV0QgKFNJT0NQUk9UT1BSSVZBVEUgKyAxMCkKKyNkZWZpbmUgU0lPQ0FYMjVERUxGV0QgKFNJT0NQUk9UT1BSSVZBVEUgKyAxMSkKKyNkZWZpbmUgU0lPQ0FYMjVERVZDVEwgKFNJT0NQUk9UT1BSSVZBVEUgKyAxMikKKyNkZWZpbmUgU0lPQ0FYMjVHRVRJTkZPIChTSU9DUFJPVE9QUklWQVRFICsgMTMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBWDI1X1NFVF9SVF9JUE1PREUgMgogI2RlZmluZSBBWDI1X05PVUlEX0RFRkFVTFQgMAogI2RlZmluZSBBWDI1X05PVUlEX0JMT0NLIDEKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBheDI1X2NhbGxbN107CisgIGNoYXIgYXgyNV9jYWxsWzddOwogfSBheDI1X2FkZHJlc3M7CiBzdHJ1Y3Qgc29ja2FkZHJfYXgyNSB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2F4MjVfZmFtaWx5OworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYXgyNV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF4MjVfYWRkcmVzcyBzYXgyNV9jYWxsOwotIGludCBzYXgyNV9uZGlnaXM7CisgIGF4MjVfYWRkcmVzcyBzYXgyNV9jYWxsOworICBpbnQgc2F4MjVfbmRpZ2lzOwogfTsKICNkZWZpbmUgc2F4MjVfdWlkIHNheDI1X25kaWdpcwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdWxsX3NvY2thZGRyX2F4MjUgewotIHN0cnVjdCBzb2NrYWRkcl9heDI1IGZzYV9heDI1OwotIGF4MjVfYWRkcmVzcyBmc2FfZGlnaXBlYXRlcltBWDI1X01BWF9ESUdJU107CisgIHN0cnVjdCBzb2NrYWRkcl9heDI1IGZzYV9heDI1OworICBheDI1X2FkZHJlc3MgZnNhX2RpZ2lwZWF0ZXJbQVgyNV9NQVhfRElHSVNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXgyNV9yb3V0ZXNfc3RydWN0IHsKLSBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOwotIGF4MjVfYWRkcmVzcyBkZXN0X2FkZHI7Ci0gdW5zaWduZWQgY2hhciBkaWdpX2NvdW50OworICBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOworICBheDI1X2FkZHJlc3MgZGVzdF9hZGRyOworICB1bnNpZ25lZCBjaGFyIGRpZ2lfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF4MjVfYWRkcmVzcyBkaWdpX2FkZHJbQVgyNV9NQVhfRElHSVNdOworICBheDI1X2FkZHJlc3MgZGlnaV9hZGRyW0FYMjVfTUFYX0RJR0lTXTsKIH07CiBzdHJ1Y3QgYXgyNV9yb3V0ZV9vcHRfc3RydWN0IHsKLSBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOworICBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBheDI1X2FkZHJlc3MgZGVzdF9hZGRyOwotIGludCBjbWQ7Ci0gaW50IGFyZzsKKyAgYXgyNV9hZGRyZXNzIGRlc3RfYWRkcjsKKyAgaW50IGNtZDsKKyAgaW50IGFyZzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF4MjVfY3RsX3N0cnVjdCB7Ci0gYXgyNV9hZGRyZXNzIHBvcnRfYWRkcjsKLSBheDI1X2FkZHJlc3Mgc291cmNlX2FkZHI7Ci0gYXgyNV9hZGRyZXNzIGRlc3RfYWRkcjsKKyAgYXgyNV9hZGRyZXNzIHBvcnRfYWRkcjsKKyAgYXgyNV9hZGRyZXNzIHNvdXJjZV9hZGRyOworICBheDI1X2FkZHJlc3MgZGVzdF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY21kOwotIHVuc2lnbmVkIGxvbmcgYXJnOwotIHVuc2lnbmVkIGNoYXIgZGlnaV9jb3VudDsKLSBheDI1X2FkZHJlc3MgZGlnaV9hZGRyW0FYMjVfTUFYX0RJR0lTXTsKKyAgdW5zaWduZWQgaW50IGNtZDsKKyAgdW5zaWduZWQgbG9uZyBhcmc7CisgIHVuc2lnbmVkIGNoYXIgZGlnaV9jb3VudDsKKyAgYXgyNV9hZGRyZXNzIGRpZ2lfYWRkcltBWDI1X01BWF9ESUdJU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBheDI1X2luZm9fc3RydWN0X2RlcHJlY2F0ZWQgewotIHVuc2lnbmVkIGludCBuMiwgbjJjb3VudDsKLSB1bnNpZ25lZCBpbnQgdDEsIHQxdGltZXI7CisgIHVuc2lnbmVkIGludCBuMiwgbjJjb3VudDsKKyAgdW5zaWduZWQgaW50IHQxLCB0MXRpbWVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdDIsIHQydGltZXI7Ci0gdW5zaWduZWQgaW50IHQzLCB0M3RpbWVyOwotIHVuc2lnbmVkIGludCBpZGxlLCBpZGxldGltZXI7Ci0gdW5zaWduZWQgaW50IHN0YXRlOworICB1bnNpZ25lZCBpbnQgdDIsIHQydGltZXI7CisgIHVuc2lnbmVkIGludCB0MywgdDN0aW1lcjsKKyAgdW5zaWduZWQgaW50IGlkbGUsIGlkbGV0aW1lcjsKKyAgdW5zaWduZWQgaW50IHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmN2X3EsIHNuZF9xOworICB1bnNpZ25lZCBpbnQgcmN2X3EsIHNuZF9xOwogfTsKIHN0cnVjdCBheDI1X2luZm9fc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgbjIsIG4yY291bnQ7CisgIHVuc2lnbmVkIGludCBuMiwgbjJjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHQxLCB0MXRpbWVyOwotIHVuc2lnbmVkIGludCB0MiwgdDJ0aW1lcjsKLSB1bnNpZ25lZCBpbnQgdDMsIHQzdGltZXI7Ci0gdW5zaWduZWQgaW50IGlkbGUsIGlkbGV0aW1lcjsKKyAgdW5zaWduZWQgaW50IHQxLCB0MXRpbWVyOworICB1bnNpZ25lZCBpbnQgdDIsIHQydGltZXI7CisgIHVuc2lnbmVkIGludCB0MywgdDN0aW1lcjsKKyAgdW5zaWduZWQgaW50IGlkbGUsIGlkbGV0aW1lcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0YXRlOwotIHVuc2lnbmVkIGludCByY3ZfcSwgc25kX3E7Ci0gdW5zaWduZWQgaW50IHZzLCB2ciwgdmEsIHZzX21heDsKLSB1bnNpZ25lZCBpbnQgcGFjbGVuOworICB1bnNpZ25lZCBpbnQgc3RhdGU7CisgIHVuc2lnbmVkIGludCByY3ZfcSwgc25kX3E7CisgIHVuc2lnbmVkIGludCB2cywgdnIsIHZhLCB2c19tYXg7CisgIHVuc2lnbmVkIGludCBwYWNsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB3aW5kb3c7CisgIHVuc2lnbmVkIGludCB3aW5kb3c7CiB9Owogc3RydWN0IGF4MjVfZndkX3N0cnVjdCB7Ci0gYXgyNV9hZGRyZXNzIHBvcnRfZnJvbTsKKyAgYXgyNV9hZGRyZXNzIHBvcnRfZnJvbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXgyNV9hZGRyZXNzIHBvcnRfdG87CisgIGF4MjVfYWRkcmVzcyBwb3J0X3RvOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iMWxsaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iMWxsaS5oCmluZGV4IGU0MDMyM2IuLmYzZmQxNDAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYjFsbGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2IxbGxpLmgKQEAgLTE5LDM1ICsxOSwzNSBAQAogI2lmbmRlZiBfQjFMTElfSF8KICNkZWZpbmUgX0IxTExJX0hfCiB0eXBlZGVmIHN0cnVjdCBhdm1iMV90NGZpbGUgewotIGludCBsZW47CisgIGludCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgKmRhdGE7CisgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwogfSBhdm1iMV90NGZpbGU7CiB0eXBlZGVmIHN0cnVjdCBhdm1iMV9sb2FkZGVmIHsKLSBpbnQgY29udHI7CisgIGludCBjb250cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXZtYjFfdDRmaWxlIHQ0ZmlsZTsKKyAgYXZtYjFfdDRmaWxlIHQ0ZmlsZTsKIH0gYXZtYjFfbG9hZGRlZjsKIHR5cGVkZWYgc3RydWN0IGF2bWIxX2xvYWRhbmRjb25maWdkZWYgewotIGludCBjb250cjsKKyAgaW50IGNvbnRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhdm1iMV90NGZpbGUgdDRmaWxlOwotIGF2bWIxX3Q0ZmlsZSB0NGNvbmZpZzsKKyAgYXZtYjFfdDRmaWxlIHQ0ZmlsZTsKKyAgYXZtYjFfdDRmaWxlIHQ0Y29uZmlnOwogfSBhdm1iMV9sb2FkYW5kY29uZmlnZGVmOwogdHlwZWRlZiBzdHJ1Y3QgYXZtYjFfcmVzZXRkZWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY29udHI7CisgIGludCBjb250cjsKIH0gYXZtYjFfcmVzZXRkZWY7CiB0eXBlZGVmIHN0cnVjdCBhdm1iMV9nZXRkZWYgewotIGludCBjb250cjsKKyAgaW50IGNvbnRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2FyZHR5cGU7Ci0gaW50IGNhcmRzdGF0ZTsKKyAgaW50IGNhcmR0eXBlOworICBpbnQgY2FyZHN0YXRlOwogfSBhdm1iMV9nZXRkZWY7CiB0eXBlZGVmIHN0cnVjdCBhdm1iMV9jYXJkZGVmIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBvcnQ7Ci0gaW50IGlycTsKKyAgaW50IHBvcnQ7CisgIGludCBpcnE7CiB9IGF2bWIxX2NhcmRkZWY7CiAjZGVmaW5lIEFWTV9DQVJEVFlQRV9CMSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNTYsMTAgKzU2LDEwIEBACiAjZGVmaW5lIEFWTV9DQVJEVFlQRV9NMiAzCiB0eXBlZGVmIHN0cnVjdCBhdm1iMV9leHRjYXJkZGVmIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBvcnQ7Ci0gaW50IGlycTsKLSBpbnQgY2FyZHR5cGU7Ci0gaW50IGNhcmRucjsKKyAgaW50IHBvcnQ7CisgIGludCBpcnE7CisgIGludCBjYXJkdHlwZTsKKyAgaW50IGNhcmRucjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGF2bWIxX2V4dGNhcmRkZWY7CiAjZGVmaW5lIEFWTUIxX0xPQUQgMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iYXljb20uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmF5Y29tLmgKaW5kZXggNDM2ODQ2YS4uN2YzNDQxYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iYXljb20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JheWNvbS5oCkBAIC0xOSwxNyArMTksMTcgQEAKICNpZm5kZWYgX0JBWUNPTV9ICiAjZGVmaW5lIF9CQVlDT01fSAogc3RydWN0IGJheWNvbV9kZWJ1Z19kYXRhIHsKLSB1bnNpZ25lZCBsb25nIGRlYnVnMTsKKyAgdW5zaWduZWQgbG9uZyBkZWJ1ZzE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZGVidWcyOwotIGxvbmcgZGVidWczOworICB1bnNpZ25lZCBsb25nIGRlYnVnMjsKKyAgbG9uZyBkZWJ1ZzM7CiB9Owogc3RydWN0IGJheWNvbV9pb2N0bCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjbWQ7Ci0gdW5pb24gewotIHN0cnVjdCBiYXljb21fZGVidWdfZGF0YSBkYmc7Ci0gfSBkYXRhOworICBpbnQgY21kOworICB1bmlvbiB7CisgICAgc3RydWN0IGJheWNvbV9kZWJ1Z19kYXRhIGRiZzsKKyAgfSBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEJBWUNPTUNUTF9HRVRERUJVRyAweDkyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjYWNoZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iY2FjaGUuaAppbmRleCA0ZDFkNDU0Li5lZmU2OTJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjYWNoZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmNhY2hlLmgKQEAgLTE5LDIwICsxOSwyOCBAQAogI2lmbmRlZiBfTElOVVhfQkNBQ0hFX0gKICNkZWZpbmUgX0xJTlVYX0JDQUNIRV9ICiAjaW5jbHVkZSA8YXNtL3R5cGVzLmg+Ci0jZGVmaW5lIEJJVE1BU0sobmFtZSwgdHlwZSwgZmllbGQsIG9mZnNldCwgc2l6ZSkgIHN0YXRpYyBpbmxpbmUgX191NjQgbmFtZShjb25zdCB0eXBlICprKSAgeyByZXR1cm4gKGstPmZpZWxkID4+IG9mZnNldCkgJiB+KH4wVUxMIDw8IHNpemUpOyB9ICAgIHN0YXRpYyBpbmxpbmUgdm9pZCBTRVRfIyNuYW1lKHR5cGUgKmssIF9fdTY0IHYpICB7ICAgay0+ZmllbGQgJj0gfih+KH4wVUxMIDw8IHNpemUpIDw8IG9mZnNldCk7ICAgay0+ZmllbGQgfD0gKHYgJiB+KH4wVUxMIDw8IHNpemUpKSA8PCBvZmZzZXQ7ICB9CisjZGVmaW5lIEJJVE1BU0sobmFtZSx0eXBlLGZpZWxkLG9mZnNldCxzaXplKSBzdGF0aWMgaW5saW5lIF9fdTY0IG5hbWUoY29uc3QgdHlwZSAqIGspIFwKK3sgcmV0dXJuKGstPmZpZWxkID4+IG9mZnNldCkgJiB+KH4wVUxMIDw8IHNpemUpOyB9IHN0YXRpYyBpbmxpbmUgdm9pZCBTRVRfICMjbmFtZSh0eXBlICogaywgX191NjQgdikgXAoreyBrLT5maWVsZCAmPSB+KH4ofjBVTEwgPDwgc2l6ZSkgPDwgb2Zmc2V0KTsgay0+ZmllbGQgfD0gKHYgJiB+KH4wVUxMIDw8IHNpemUpKSA8PCBvZmZzZXQ7IFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYmtleSB7Ci0gX191NjQgaGlnaDsKLSBfX3U2NCBsb3c7Ci0gX191NjQgcHRyW107CisgIF9fdTY0IGhpZ2g7CisgIF9fdTY0IGxvdzsKKyAgX191NjQgcHRyW107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgS0VZX0ZJRUxEKG5hbWUsIGZpZWxkLCBvZmZzZXQsIHNpemUpICAgQklUTUFTSyhuYW1lLCBzdHJ1Y3QgYmtleSwgZmllbGQsIG9mZnNldCwgc2l6ZSkKLSNkZWZpbmUgUFRSX0ZJRUxEKG5hbWUsIG9mZnNldCwgc2l6ZSkgIHN0YXRpYyBpbmxpbmUgX191NjQgbmFtZShjb25zdCBzdHJ1Y3QgYmtleSAqaywgdW5zaWduZWQgaSkgIHsgcmV0dXJuIChrLT5wdHJbaV0gPj4gb2Zmc2V0KSAmIH4ofjBVTEwgPDwgc2l6ZSk7IH0gICAgc3RhdGljIGlubGluZSB2b2lkIFNFVF8jI25hbWUoc3RydWN0IGJrZXkgKmssIHVuc2lnbmVkIGksIF9fdTY0IHYpICB7ICAgay0+cHRyW2ldICY9IH4ofih+MFVMTCA8PCBzaXplKSA8PCBvZmZzZXQpOyAgIGstPnB0cltpXSB8PSAodiAmIH4ofjBVTEwgPDwgc2l6ZSkpIDw8IG9mZnNldDsgIH0KKyNkZWZpbmUgS0VZX0ZJRUxEKG5hbWUsZmllbGQsb2Zmc2V0LHNpemUpIEJJVE1BU0sobmFtZSwgc3RydWN0IGJrZXksIGZpZWxkLCBvZmZzZXQsIHNpemUpCisjZGVmaW5lIFBUUl9GSUVMRChuYW1lLG9mZnNldCxzaXplKSBzdGF0aWMgaW5saW5lIF9fdTY0IG5hbWUoY29uc3Qgc3RydWN0IGJrZXkgKiBrLCB1bnNpZ25lZCBpKSBcCit7IHJldHVybihrLT5wdHJbaV0gPj4gb2Zmc2V0KSAmIH4ofjBVTEwgPDwgc2l6ZSk7IH0gc3RhdGljIGlubGluZSB2b2lkIFNFVF8gIyNuYW1lKHN0cnVjdCBia2V5ICogaywgdW5zaWduZWQgaSwgX191NjQgdikgXAoreyBrLT5wdHJbaV0gJj0gfih+KH4wVUxMIDw8IHNpemUpIDw8IG9mZnNldCk7IGstPnB0cltpXSB8PSAodiAmIH4ofjBVTEwgPDwgc2l6ZSkpIDw8IG9mZnNldDsgXAorfQogI2RlZmluZSBLRVlfU0laRV9CSVRTIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVlfTUFYX1U2NFMgOAotI2RlZmluZSBLRVkoaW5vZGUsIG9mZnNldCwgc2l6ZSkgICgoc3RydWN0IGJrZXkpIHsgICAuaGlnaCA9ICgxVUxMIDw8IDYzKSB8ICgoX191NjQpIChzaXplKSA8PCAyMCkgfCAoaW5vZGUpLCAgIC5sb3cgPSAob2Zmc2V0KSAgfSkKKyNkZWZpbmUgS0VZKGlub2RlLG9mZnNldCxzaXplKSBcCisoKHN0cnVjdCBia2V5KSB7LmhpZ2ggPSAoMVVMTCA8PCA2MykgfCAoKF9fdTY0KSAoc2l6ZSkgPDwgMjApIHwgKGlub2RlKSwubG93ID0gKG9mZnNldCkgXAorfSkKICNkZWZpbmUgWkVST19LRVkgS0VZKDAsIDAsIDApCiAjZGVmaW5lIE1BWF9LRVlfSU5PREUgKH4ofjAgPDwgMjApKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTQzLDExICs1MSwxMSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFRSX0RFVl9CSVRTIDEyCiAjZGVmaW5lIFBUUl9DSEVDS19ERVYgKCgxIDw8IFBUUl9ERVZfQklUUykgLSAxKQotI2RlZmluZSBQVFIoZ2VuLCBvZmZzZXQsIGRldikgICAoKCgoX191NjQpIGRldikgPDwgNTEpIHwgKChfX3U2NCkgb2Zmc2V0KSA8PCA4IHwgZ2VuKQotI2RlZmluZSBia2V5X2NvcHkoX2Rlc3QsIF9zcmMpIG1lbWNweShfZGVzdCwgX3NyYywgYmtleV9ieXRlcyhfc3JjKSkKKyNkZWZpbmUgUFRSKGdlbixvZmZzZXQsZGV2KSAoKCgoX191NjQpIGRldikgPDwgNTEpIHwgKChfX3U2NCkgb2Zmc2V0KSA8PCA4IHwgZ2VuKQorI2RlZmluZSBia2V5X2NvcHkoX2Rlc3QsX3NyYykgbWVtY3B5KF9kZXN0LCBfc3JjLCBia2V5X2J5dGVzKF9zcmMpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQktFWV9QQUQgOAotI2RlZmluZSBCS0VZX1BBRERFRChrZXkpICAgdW5pb24geyBzdHJ1Y3QgYmtleSBrZXk7IF9fdTY0IGtleSAjIyBfcGFkW0JLRVlfUEFEXTsgfQorI2RlZmluZSBCS0VZX1BBRERFRChrZXkpIHVuaW9uIHsgc3RydWN0IGJrZXkga2V5OyBfX3U2NCBrZXkgIyNfcGFkW0JLRVlfUEFEXTsgfQogI2RlZmluZSBCQ0FDSEVfU0JfVkVSU0lPTl9DREVWIDAKICNkZWZpbmUgQkNBQ0hFX1NCX1ZFUlNJT05fQkRFViAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNjMsNDYgKzcxLDQ2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCREVWX0RBVEFfU1RBUlRfREVGQVVMVCAxNgogc3RydWN0IGNhY2hlX3NiIHsKLSBfX3U2NCBjc3VtOwotIF9fdTY0IG9mZnNldDsKKyAgX191NjQgY3N1bTsKKyAgX191NjQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB2ZXJzaW9uOwotIF9fdTggbWFnaWNbMTZdOwotIF9fdTggdXVpZFsxNl07Ci0gdW5pb24geworICBfX3U2NCB2ZXJzaW9uOworICBfX3U4IG1hZ2ljWzE2XTsKKyAgX191OCB1dWlkWzE2XTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNldF91dWlkWzE2XTsKLSBfX3U2NCBzZXRfbWFnaWM7Ci0gfTsKLSBfX3U4IGxhYmVsW1NCX0xBQkVMX1NJWkVdOworICAgIF9fdTggc2V0X3V1aWRbMTZdOworICAgIF9fdTY0IHNldF9tYWdpYzsKKyAgfTsKKyAgX191OCBsYWJlbFtTQl9MQUJFTF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZmxhZ3M7Ci0gX191NjQgc2VxOwotIF9fdTY0IHBhZFs4XTsKLSB1bmlvbiB7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCBzZXE7CisgIF9fdTY0IHBhZFs4XTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTY0IG5idWNrZXRzOwotIF9fdTE2IGJsb2NrX3NpemU7Ci0gX191MTYgYnVja2V0X3NpemU7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IG5idWNrZXRzOworICAgICAgX191MTYgYmxvY2tfc2l6ZTsKKyAgICAgIF9fdTE2IGJ1Y2tldF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBucl9pbl9zZXQ7Ci0gX191MTYgbnJfdGhpc19kZXY7Ci0gfTsKLSBzdHJ1Y3QgeworICAgICAgX191MTYgbnJfaW5fc2V0OworICAgICAgX191MTYgbnJfdGhpc19kZXY7CisgICAgfTsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYXRhX29mZnNldDsKLSB9OwotIH07Ci0gX191MzIgbGFzdF9tb3VudDsKKyAgICAgIF9fdTY0IGRhdGFfb2Zmc2V0OworICAgIH07CisgIH07CisgIF9fdTMyIGxhc3RfbW91bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZpcnN0X2J1Y2tldDsKLSB1bmlvbiB7Ci0gX191MTYgbmpvdXJuYWxfYnVja2V0czsKLSBfX3UxNiBrZXlzOworICBfX3UxNiBmaXJzdF9idWNrZXQ7CisgIHVuaW9uIHsKKyAgICBfX3UxNiBuam91cm5hbF9idWNrZXRzOworICAgIF9fdTE2IGtleXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gX191NjQgZFtTQl9KT1VSTkFMX0JVQ0tFVFNdOworICB9OworICBfX3U2NCBkW1NCX0pPVVJOQUxfQlVDS0VUU107CiB9OwogI2RlZmluZSBDQUNIRV9SRVBMQUNFTUVOVF9MUlUgMFUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMjcsODMgKzEzNSw4MyBAQAogI2RlZmluZSBCQ0FDSEVfSlNFVF9WRVJTSU9OIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QganNldCB7Ci0gX191NjQgY3N1bTsKLSBfX3U2NCBtYWdpYzsKLSBfX3U2NCBzZXE7CisgIF9fdTY0IGNzdW07CisgIF9fdTY0IG1hZ2ljOworICBfX3U2NCBzZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZlcnNpb247Ci0gX191MzIga2V5czsKLSBfX3U2NCBsYXN0X3NlcTsKLSBCS0VZX1BBRERFRCh1dWlkX2J1Y2tldCk7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIGtleXM7CisgIF9fdTY0IGxhc3Rfc2VxOworICBCS0VZX1BBRERFRCh1dWlkX2J1Y2tldCk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJLRVlfUEFEREVEKGJ0cmVlX3Jvb3QpOwotIF9fdTE2IGJ0cmVlX2xldmVsOwotIF9fdTE2IHBhZFszXTsKLSBfX3U2NCBwcmlvX2J1Y2tldFtNQVhfQ0FDSEVTX1BFUl9TRVRdOworICBCS0VZX1BBRERFRChidHJlZV9yb290KTsKKyAgX191MTYgYnRyZWVfbGV2ZWw7CisgIF9fdTE2IHBhZFszXTsKKyAgX191NjQgcHJpb19idWNrZXRbTUFYX0NBQ0hFU19QRVJfU0VUXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBia2V5IHN0YXJ0WzBdOwotIF9fdTY0IGRbMF07Ci0gfTsKKyAgdW5pb24geworICAgIHN0cnVjdCBia2V5IHN0YXJ0WzBdOworICAgIF9fdTY0IGRbMF07CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcmlvX3NldCB7Ci0gX191NjQgY3N1bTsKLSBfX3U2NCBtYWdpYzsKKyAgX191NjQgY3N1bTsKKyAgX191NjQgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNlcTsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIHBhZDsKLSBfX3U2NCBuZXh0X2J1Y2tldDsKKyAgX191NjQgc2VxOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBwYWQ7CisgIF9fdTY0IG5leHRfYnVja2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnVja2V0X2Rpc2sgewotIF9fdTE2IHByaW87Ci0gX191OCBnZW47Ci0gfSBfX2F0dHJpYnV0ZSgocGFja2VkKSkgZGF0YVtdOworICBzdHJ1Y3QgYnVja2V0X2Rpc2sgeworICAgIF9fdTE2IHByaW87CisgICAgX191OCBnZW47CisgIH0gX19hdHRyaWJ1dGUoKHBhY2tlZCkpIGRhdGFbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHV1aWRfZW50cnkgewotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1dWlkWzE2XTsKLSBfX3U4IGxhYmVsWzMyXTsKLSBfX3UzMiBmaXJzdF9yZWc7Ci0gX191MzIgbGFzdF9yZWc7CisgICAgICBfX3U4IHV1aWRbMTZdOworICAgICAgX191OCBsYWJlbFszMl07CisgICAgICBfX3UzMiBmaXJzdF9yZWc7CisgICAgICBfX3UzMiBsYXN0X3JlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW52YWxpZGF0ZWQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191NjQgc2VjdG9yczsKLSB9OworICAgICAgX191MzIgaW52YWxpZGF0ZWQ7CisgICAgICBfX3UzMiBmbGFnczsKKyAgICAgIF9fdTY0IHNlY3RvcnM7CisgICAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYWRbMTI4XTsKLSB9OworICAgIF9fdTggcGFkWzEyOF07CisgIH07CiB9OwogI2RlZmluZSBCQ0FDSEVfQlNFVF9DU1VNIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJDQUNIRV9CU0VUX1ZFUlNJT04gMQogc3RydWN0IGJzZXQgewotIF9fdTY0IGNzdW07Ci0gX191NjQgbWFnaWM7CisgIF9fdTY0IGNzdW07CisgIF9fdTY0IG1hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzZXE7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBrZXlzOwotIHVuaW9uIHsKKyAgX191NjQgc2VxOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBrZXlzOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBia2V5IHN0YXJ0WzBdOwotIF9fdTY0IGRbMF07Ci0gfTsKKyAgICBzdHJ1Y3QgYmtleSBzdGFydFswXTsKKyAgICBfX3U2NCBkWzBdOworICB9OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXVpZF9lbnRyeV92MCB7Ci0gX191OCB1dWlkWzE2XTsKLSBfX3U4IGxhYmVsWzMyXTsKLSBfX3UzMiBmaXJzdF9yZWc7CisgIF9fdTggdXVpZFsxNl07CisgIF9fdTggbGFiZWxbMzJdOworICBfX3UzMiBmaXJzdF9yZWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxhc3RfcmVnOwotIF9fdTMyIGludmFsaWRhdGVkOwotIF9fdTMyIHBhZDsKKyAgX191MzIgbGFzdF9yZWc7CisgIF9fdTMyIGludmFsaWRhdGVkOworICBfX3UzMiBwYWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iY205MzN4eF9oY3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmNtOTMzeHhfaGNzLmgKaW5kZXggMDc0Mjk5NS4uYmVhZjgyNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iY205MzN4eF9oY3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjbTkzM3h4X2hjcy5oCkBAIC0yMSwxOSArMjEsMTkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGJjbV9oY3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtYWdpYzsKLSBfX3UxNiBjb250cm9sOwotIF9fdTE2IHJldl9tYWo7Ci0gX191MTYgcmV2X21pbjsKKyAgX191MTYgbWFnaWM7CisgIF9fdTE2IGNvbnRyb2w7CisgIF9fdTE2IHJldl9tYWo7CisgIF9fdTE2IHJldl9taW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ1aWxkX2RhdGU7Ci0gX191MzIgZmlsZWxlbjsKLSBfX3UzMiBsZGFkZHJlc3M7Ci0gY2hhciBmaWxlbmFtZVs2NF07CisgIF9fdTMyIGJ1aWxkX2RhdGU7CisgIF9fdTMyIGZpbGVsZW47CisgIF9fdTMyIGxkYWRkcmVzczsKKyAgY2hhciBmaWxlbmFtZVs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhjczsKLSBfX3UxNiBoZXJfem5hZXRfY2h0bzsKLSBfX3UzMiBjcmM7CisgIF9fdTE2IGhjczsKKyAgX191MTYgaGVyX3puYWV0X2NodG87CisgIF9fdTMyIGNyYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jmc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iZnNfZnMuaAppbmRleCA3NWZkZTc3Li5lMmUwNjE1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jmc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmZzX2ZzLmgKQEAgLTIxLDcgKzIxLDcgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2RlZmluZSBCRlNfQlNJWkVfQklUUyA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCRlNfQlNJWkUgKDE8PEJGU19CU0laRV9CSVRTKQorI2RlZmluZSBCRlNfQlNJWkUgKDEgPDwgQkZTX0JTSVpFX0JJVFMpCiAjZGVmaW5lIEJGU19NQUdJQyAweDFCQURGQUNFCiAjZGVmaW5lIEJGU19ST09UX0lOTyAyCiAjZGVmaW5lIEJGU19JTk9ERVNfUEVSX0JMT0NLIDgKQEAgLTI5LDU1ICsyOSw1NSBAQAogI2RlZmluZSBCRlNfVkRJUiAyTAogI2RlZmluZSBCRlNfVlJFRyAxTAogc3RydWN0IGJmc19pbm9kZSB7Ci0gX19sZTE2IGlfaW5vOworICBfX2xlMTYgaV9pbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGlfdW51c2VkOwotIF9fbGUzMiBpX3NibG9jazsKLSBfX2xlMzIgaV9lYmxvY2s7Ci0gX19sZTMyIGlfZW9mZnNldDsKKyAgX191MTYgaV91bnVzZWQ7CisgIF9fbGUzMiBpX3NibG9jazsKKyAgX19sZTMyIGlfZWJsb2NrOworICBfX2xlMzIgaV9lb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgaV92dHlwZTsKLSBfX2xlMzIgaV9tb2RlOwotIF9fbGUzMiBpX3VpZDsKLSBfX2xlMzIgaV9naWQ7CisgIF9fbGUzMiBpX3Z0eXBlOworICBfX2xlMzIgaV9tb2RlOworICBfX2xlMzIgaV91aWQ7CisgIF9fbGUzMiBpX2dpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGlfbmxpbms7Ci0gX19sZTMyIGlfYXRpbWU7Ci0gX19sZTMyIGlfbXRpbWU7Ci0gX19sZTMyIGlfY3RpbWU7CisgIF9fbGUzMiBpX25saW5rOworICBfX2xlMzIgaV9hdGltZTsKKyAgX19sZTMyIGlfbXRpbWU7CisgIF9fbGUzMiBpX2N0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpX3BhZGRpbmdbNF07CisgIF9fdTMyIGlfcGFkZGluZ1s0XTsKIH07CiAjZGVmaW5lIEJGU19OQU1FTEVOIDE0CiAjZGVmaW5lIEJGU19ESVJFTlRfU0laRSAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQkZTX0RJUlNfUEVSX0JMT0NLIDMyCiBzdHJ1Y3QgYmZzX2RpcmVudCB7Ci0gX19sZTE2IGlubzsKLSBjaGFyIG5hbWVbQkZTX05BTUVMRU5dOworICBfX2xlMTYgaW5vOworICBjaGFyIG5hbWVbQkZTX05BTUVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYmZzX3N1cGVyX2Jsb2NrIHsKLSBfX2xlMzIgc19tYWdpYzsKLSBfX2xlMzIgc19zdGFydDsKKyAgX19sZTMyIHNfbWFnaWM7CisgIF9fbGUzMiBzX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgc19lbmQ7Ci0gX19sZTMyIHNfZnJvbTsKLSBfX2xlMzIgc190bzsKLSBfX3MzMiBzX2Jmcm9tOworICBfX2xlMzIgc19lbmQ7CisgIF9fbGUzMiBzX2Zyb207CisgIF9fbGUzMiBzX3RvOworICBfX3MzMiBzX2Jmcm9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBzX2J0bzsKLSBjaGFyIHNfZnNuYW1lWzZdOwotIGNoYXIgc192b2x1bWVbNl07Ci0gX191MzIgc19wYWRkaW5nWzExOF07CisgIF9fczMyIHNfYnRvOworICBjaGFyIHNfZnNuYW1lWzZdOworICBjaGFyIHNfdm9sdW1lWzZdOworICBfX3UzMiBzX3BhZGRpbmdbMTE4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBCRlNfT0ZGMklOTyhvZmZzZXQpICAgKCgoKG9mZnNldCkgLSBCRlNfQlNJWkUpIC8gc2l6ZW9mKHN0cnVjdCBiZnNfaW5vZGUpKSArIEJGU19ST09UX0lOTykKLSNkZWZpbmUgQkZTX0lOTzJPRkYoaW5vKSAgICgoX191MzIpKCgoaW5vKSAtIEJGU19ST09UX0lOTykgKiBzaXplb2Yoc3RydWN0IGJmc19pbm9kZSkpICsgQkZTX0JTSVpFKQotI2RlZmluZSBCRlNfTlpGSUxFU0laRShpcCkgICAoKGxlMzJfdG9fY3B1KChpcCktPmlfZW9mZnNldCkgKyAxKSAtIGxlMzJfdG9fY3B1KChpcCktPmlfc2Jsb2NrKSAqIEJGU19CU0laRSkKKyNkZWZpbmUgQkZTX09GRjJJTk8ob2Zmc2V0KSAoKCgob2Zmc2V0KSAtIEJGU19CU0laRSkgLyBzaXplb2Yoc3RydWN0IGJmc19pbm9kZSkpICsgQkZTX1JPT1RfSU5PKQorI2RlZmluZSBCRlNfSU5PMk9GRihpbm8pICgoX191MzIpICgoKGlubykgLSBCRlNfUk9PVF9JTk8pICogc2l6ZW9mKHN0cnVjdCBiZnNfaW5vZGUpKSArIEJGU19CU0laRSkKKyNkZWZpbmUgQkZTX05aRklMRVNJWkUoaXApICgobGUzMl90b19jcHUoKGlwKS0+aV9lb2Zmc2V0KSArIDEpIC0gbGUzMl90b19jcHUoKGlwKS0+aV9zYmxvY2spICogQkZTX0JTSVpFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQkZTX0ZJTEVTSVpFKGlwKSAgICgoaXApLT5pX3NibG9jayA9PSAwID8gMCA6IEJGU19OWkZJTEVTSVpFKGlwKSkKLSNkZWZpbmUgQkZTX0ZJTEVCTE9DS1MoaXApICAgKChpcCktPmlfc2Jsb2NrID09IDAgPyAwIDogKGxlMzJfdG9fY3B1KChpcCktPmlfZWJsb2NrKSArIDEpIC0gbGUzMl90b19jcHUoKGlwKS0+aV9zYmxvY2spKQotI2RlZmluZSBCRlNfVU5DTEVBTihiZnNfc2IsIHNiKSAgICgobGUzMl90b19jcHUoYmZzX3NiLT5zX2Zyb20pICE9IC0xKSAmJiAobGUzMl90b19jcHUoYmZzX3NiLT5zX3RvKSAhPSAtMSkgJiYgIShzYi0+c19mbGFncyAmIE1TX1JET05MWSkpCisjZGVmaW5lIEJGU19GSUxFU0laRShpcCkgKChpcCktPmlfc2Jsb2NrID09IDAgPyAwIDogQkZTX05aRklMRVNJWkUoaXApKQorI2RlZmluZSBCRlNfRklMRUJMT0NLUyhpcCkgKChpcCktPmlfc2Jsb2NrID09IDAgPyAwIDogKGxlMzJfdG9fY3B1KChpcCktPmlfZWJsb2NrKSArIDEpIC0gbGUzMl90b19jcHUoKGlwKS0+aV9zYmxvY2spKQorI2RlZmluZSBCRlNfVU5DTEVBTihiZnNfc2Isc2IpICgobGUzMl90b19jcHUoYmZzX3NiLT5zX2Zyb20pICE9IC0gMSkgJiYgKGxlMzJfdG9fY3B1KGJmc19zYi0+c190bykgIT0gLSAxKSAmJiAhIChzYi0+c19mbGFncyAmIE1TX1JET05MWSkpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JpbmRlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iaW5kZXIuaAppbmRleCAwMjEwMWFiLi5hZjNjZWE5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JpbmRlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmluZGVyLmgKQEAgLTE5LDIxICsxOSwyMSBAQAogI2lmbmRlZiBfVUFQSV9MSU5VWF9CSU5ERVJfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9CSU5ERVJfSAogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+Ci0jZGVmaW5lIEJfUEFDS19DSEFSUyhjMSwgYzIsIGMzLCBjNCkgICAoKCgoYzEpPDwyNCkpIHwgKCgoYzIpPDwxNikpIHwgKCgoYzMpPDw4KSkgfCAoYzQpKQorI2RlZmluZSBCX1BBQ0tfQ0hBUlMoYzEsYzIsYzMsYzQpICgoKChjMSkgPDwgMjQpKSB8ICgoKGMyKSA8PCAxNikpIHwgKCgoYzMpIDw8IDgpKSB8IChjNCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCX1RZUEVfTEFSR0UgMHg4NQogZW51bSB7Ci0gQklOREVSX1RZUEVfQklOREVSID0gQl9QQUNLX0NIQVJTKCdzJywgJ2InLCAnKicsIEJfVFlQRV9MQVJHRSksCi0gQklOREVSX1RZUEVfV0VBS19CSU5ERVIgPSBCX1BBQ0tfQ0hBUlMoJ3cnLCAnYicsICcqJywgQl9UWVBFX0xBUkdFKSwKKyAgQklOREVSX1RZUEVfQklOREVSID0gQl9QQUNLX0NIQVJTKCdzJywgJ2InLCAnKicsIEJfVFlQRV9MQVJHRSksCisgIEJJTkRFUl9UWVBFX1dFQUtfQklOREVSID0gQl9QQUNLX0NIQVJTKCd3JywgJ2InLCAnKicsIEJfVFlQRV9MQVJHRSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJTkRFUl9UWVBFX0hBTkRMRSA9IEJfUEFDS19DSEFSUygncycsICdoJywgJyonLCBCX1RZUEVfTEFSR0UpLAotIEJJTkRFUl9UWVBFX1dFQUtfSEFORExFID0gQl9QQUNLX0NIQVJTKCd3JywgJ2gnLCAnKicsIEJfVFlQRV9MQVJHRSksCi0gQklOREVSX1RZUEVfRkQgPSBCX1BBQ0tfQ0hBUlMoJ2YnLCAnZCcsICcqJywgQl9UWVBFX0xBUkdFKSwKKyAgQklOREVSX1RZUEVfSEFORExFID0gQl9QQUNLX0NIQVJTKCdzJywgJ2gnLCAnKicsIEJfVFlQRV9MQVJHRSksCisgIEJJTkRFUl9UWVBFX1dFQUtfSEFORExFID0gQl9QQUNLX0NIQVJTKCd3JywgJ2gnLCAnKicsIEJfVFlQRV9MQVJHRSksCisgIEJJTkRFUl9UWVBFX0ZEID0gQl9QQUNLX0NIQVJTKCdmJywgJ2QnLCAnKicsIEJfVFlQRV9MQVJHRSksCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIEZMQVRfQklOREVSX0ZMQUdfUFJJT1JJVFlfTUFTSyA9IDB4ZmYsCi0gRkxBVF9CSU5ERVJfRkxBR19BQ0NFUFRTX0ZEUyA9IDB4MTAwLAorICBGTEFUX0JJTkRFUl9GTEFHX1BSSU9SSVRZX01BU0sgPSAweGZmLAorICBGTEFUX0JJTkRFUl9GTEFHX0FDQ0VQVFNfRkRTID0gMHgxMDAsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBCSU5ERVJfSVBDXzMyQklUCkBAIC00NiwyOCArNDYsMjggQEAKICNlbmRpZgogc3RydWN0IGZsYXRfYmluZGVyX29iamVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgZmxhZ3M7Ci0gdW5pb24gewotIGJpbmRlcl91aW50cHRyX3QgYmluZGVyOworICBfX3UzMiB0eXBlOworICBfX3UzMiBmbGFnczsKKyAgdW5pb24geworICAgIGJpbmRlcl91aW50cHRyX3QgYmluZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gfTsKLSBiaW5kZXJfdWludHB0cl90IGNvb2tpZTsKKyAgICBfX3UzMiBoYW5kbGU7CisgIH07CisgIGJpbmRlcl91aW50cHRyX3QgY29va2llOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYmluZGVyX3dyaXRlX3JlYWQgewotIGJpbmRlcl9zaXplX3Qgd3JpdGVfc2l6ZTsKLSBiaW5kZXJfc2l6ZV90IHdyaXRlX2NvbnN1bWVkOwotIGJpbmRlcl91aW50cHRyX3Qgd3JpdGVfYnVmZmVyOworICBiaW5kZXJfc2l6ZV90IHdyaXRlX3NpemU7CisgIGJpbmRlcl9zaXplX3Qgd3JpdGVfY29uc3VtZWQ7CisgIGJpbmRlcl91aW50cHRyX3Qgd3JpdGVfYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiaW5kZXJfc2l6ZV90IHJlYWRfc2l6ZTsKLSBiaW5kZXJfc2l6ZV90IHJlYWRfY29uc3VtZWQ7Ci0gYmluZGVyX3VpbnRwdHJfdCByZWFkX2J1ZmZlcjsKKyAgYmluZGVyX3NpemVfdCByZWFkX3NpemU7CisgIGJpbmRlcl9zaXplX3QgcmVhZF9jb25zdW1lZDsKKyAgYmluZGVyX3VpbnRwdHJfdCByZWFkX2J1ZmZlcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJpbmRlcl92ZXJzaW9uIHsKLSBfX3MzMiBwcm90b2NvbF92ZXJzaW9uOworICBfX3MzMiBwcm90b2NvbF92ZXJzaW9uOwogfTsKICNpZmRlZiBCSU5ERVJfSVBDXzMyQklUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtODYsMTA1ICs4NiwxMDUgQEAKICNkZWZpbmUgQklOREVSX1ZFUlNJT04gX0lPV1IoJ2InLCA5LCBzdHJ1Y3QgYmluZGVyX3ZlcnNpb24pCiBlbnVtIHRyYW5zYWN0aW9uX2ZsYWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEZfT05FX1dBWSA9IDB4MDEsCi0gVEZfUk9PVF9PQkpFQ1QgPSAweDA0LAotIFRGX1NUQVRVU19DT0RFID0gMHgwOCwKLSBURl9BQ0NFUFRfRkRTID0gMHgxMCwKKyAgVEZfT05FX1dBWSA9IDB4MDEsCisgIFRGX1JPT1RfT0JKRUNUID0gMHgwNCwKKyAgVEZfU1RBVFVTX0NPREUgPSAweDA4LAorICBURl9BQ0NFUFRfRkRTID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJpbmRlcl90cmFuc2FjdGlvbl9kYXRhIHsKLSB1bmlvbiB7Ci0gX191MzIgaGFuZGxlOworICB1bmlvbiB7CisgICAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiaW5kZXJfdWludHB0cl90IHB0cjsKLSB9IHRhcmdldDsKLSBiaW5kZXJfdWludHB0cl90IGNvb2tpZTsKLSBfX3UzMiBjb2RlOworICAgIGJpbmRlcl91aW50cHRyX3QgcHRyOworICB9IHRhcmdldDsKKyAgYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CisgIF9fdTMyIGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIHBpZF90IHNlbmRlcl9waWQ7Ci0gdWlkX3Qgc2VuZGVyX2V1aWQ7Ci0gYmluZGVyX3NpemVfdCBkYXRhX3NpemU7CisgIF9fdTMyIGZsYWdzOworICBwaWRfdCBzZW5kZXJfcGlkOworICB1aWRfdCBzZW5kZXJfZXVpZDsKKyAgYmluZGVyX3NpemVfdCBkYXRhX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJpbmRlcl9zaXplX3Qgb2Zmc2V0c19zaXplOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIGJpbmRlcl91aW50cHRyX3QgYnVmZmVyOworICBiaW5kZXJfc2l6ZV90IG9mZnNldHNfc2l6ZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBiaW5kZXJfdWludHB0cl90IGJ1ZmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYmluZGVyX3VpbnRwdHJfdCBvZmZzZXRzOwotIH0gcHRyOwotIF9fdTggYnVmWzhdOwotIH0gZGF0YTsKKyAgICAgIGJpbmRlcl91aW50cHRyX3Qgb2Zmc2V0czsKKyAgICB9IHB0cjsKKyAgICBfX3U4IGJ1Zls4XTsKKyAgfSBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUgewotIGJpbmRlcl91aW50cHRyX3QgcHRyOwotIGJpbmRlcl91aW50cHRyX3QgY29va2llOworICBiaW5kZXJfdWludHB0cl90IHB0cjsKKyAgYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBiaW5kZXJfaGFuZGxlX2Nvb2tpZSB7Ci0gX191MzIgaGFuZGxlOwotIGJpbmRlcl91aW50cHRyX3QgY29va2llOworICBfX3UzMiBoYW5kbGU7CisgIGJpbmRlcl91aW50cHRyX3QgY29va2llOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7Cit9IF9fcGFja2VkOwogc3RydWN0IGJpbmRlcl9wcmlfZGVzYyB7Ci0gX19zMzIgcHJpb3JpdHk7Ci0gX191MzIgZGVzYzsKKyAgX19zMzIgcHJpb3JpdHk7CisgIF9fdTMyIGRlc2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBiaW5kZXJfcHJpX3B0cl9jb29raWUgewotIF9fczMyIHByaW9yaXR5OwotIGJpbmRlcl91aW50cHRyX3QgcHRyOworICBfX3MzMiBwcmlvcml0eTsKKyAgYmluZGVyX3VpbnRwdHJfdCBwdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJpbmRlcl91aW50cHRyX3QgY29va2llOworICBiaW5kZXJfdWludHB0cl90IGNvb2tpZTsKIH07CiBlbnVtIGJpbmRlcl9kcml2ZXJfcmV0dXJuX3Byb3RvY29sIHsKLSBCUl9FUlJPUiA9IF9JT1IoJ3InLCAwLCBfX3MzMiksCisgIEJSX0VSUk9SID0gX0lPUigncicsIDAsIF9fczMyKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlJfT0sgPSBfSU8oJ3InLCAxKSwKLSBCUl9UUkFOU0FDVElPTiA9IF9JT1IoJ3InLCAyLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAotIEJSX1JFUExZID0gX0lPUigncicsIDMsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCi0gQlJfQUNRVUlSRV9SRVNVTFQgPSBfSU9SKCdyJywgNCwgX19zMzIpLAorICBCUl9PSyA9IF9JTygncicsIDEpLAorICBCUl9UUkFOU0FDVElPTiA9IF9JT1IoJ3InLCAyLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAorICBCUl9SRVBMWSA9IF9JT1IoJ3InLCAzLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAorICBCUl9BQ1FVSVJFX1JFU1VMVCA9IF9JT1IoJ3InLCA0LCBfX3MzMiksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJSX0RFQURfUkVQTFkgPSBfSU8oJ3InLCA1KSwKLSBCUl9UUkFOU0FDVElPTl9DT01QTEVURSA9IF9JTygncicsIDYpLAotIEJSX0lOQ1JFRlMgPSBfSU9SKCdyJywgNywgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKLSBCUl9BQ1FVSVJFID0gX0lPUigncicsIDgsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCisgIEJSX0RFQURfUkVQTFkgPSBfSU8oJ3InLCA1KSwKKyAgQlJfVFJBTlNBQ1RJT05fQ09NUExFVEUgPSBfSU8oJ3InLCA2KSwKKyAgQlJfSU5DUkVGUyA9IF9JT1IoJ3InLCA3LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAorICBCUl9BQ1FVSVJFID0gX0lPUigncicsIDgsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJSX1JFTEVBU0UgPSBfSU9SKCdyJywgOSwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKLSBCUl9ERUNSRUZTID0gX0lPUigncicsIDEwLCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAotIEJSX0FUVEVNUFRfQUNRVUlSRSA9IF9JT1IoJ3InLCAxMSwgc3RydWN0IGJpbmRlcl9wcmlfcHRyX2Nvb2tpZSksCi0gQlJfTk9PUCA9IF9JTygncicsIDEyKSwKKyAgQlJfUkVMRUFTRSA9IF9JT1IoJ3InLCA5LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAorICBCUl9ERUNSRUZTID0gX0lPUigncicsIDEwLCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAorICBCUl9BVFRFTVBUX0FDUVVJUkUgPSBfSU9SKCdyJywgMTEsIHN0cnVjdCBiaW5kZXJfcHJpX3B0cl9jb29raWUpLAorICBCUl9OT09QID0gX0lPKCdyJywgMTIpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCUl9TUEFXTl9MT09QRVIgPSBfSU8oJ3InLCAxMyksCi0gQlJfRklOSVNIRUQgPSBfSU8oJ3InLCAxNCksCi0gQlJfREVBRF9CSU5ERVIgPSBfSU9SKCdyJywgMTUsIGJpbmRlcl91aW50cHRyX3QpLAotIEJSX0NMRUFSX0RFQVRIX05PVElGSUNBVElPTl9ET05FID0gX0lPUigncicsIDE2LCBiaW5kZXJfdWludHB0cl90KSwKKyAgQlJfU1BBV05fTE9PUEVSID0gX0lPKCdyJywgMTMpLAorICBCUl9GSU5JU0hFRCA9IF9JTygncicsIDE0KSwKKyAgQlJfREVBRF9CSU5ERVIgPSBfSU9SKCdyJywgMTUsIGJpbmRlcl91aW50cHRyX3QpLAorICBCUl9DTEVBUl9ERUFUSF9OT1RJRklDQVRJT05fRE9ORSA9IF9JT1IoJ3InLCAxNiwgYmluZGVyX3VpbnRwdHJfdCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJSX0ZBSUxFRF9SRVBMWSA9IF9JTygncicsIDE3KSwKKyAgQlJfRkFJTEVEX1JFUExZID0gX0lPKCdyJywgMTcpLAogfTsKIGVudW0gYmluZGVyX2RyaXZlcl9jb21tYW5kX3Byb3RvY29sIHsKLSBCQ19UUkFOU0FDVElPTiA9IF9JT1coJ2MnLCAwLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAorICBCQ19UUkFOU0FDVElPTiA9IF9JT1coJ2MnLCAwLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCQ19SRVBMWSA9IF9JT1coJ2MnLCAxLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAotIEJDX0FDUVVJUkVfUkVTVUxUID0gX0lPVygnYycsIDIsIF9fczMyKSwKLSBCQ19GUkVFX0JVRkZFUiA9IF9JT1coJ2MnLCAzLCBiaW5kZXJfdWludHB0cl90KSwKLSBCQ19JTkNSRUZTID0gX0lPVygnYycsIDQsIF9fdTMyKSwKKyAgQkNfUkVQTFkgPSBfSU9XKCdjJywgMSwgc3RydWN0IGJpbmRlcl90cmFuc2FjdGlvbl9kYXRhKSwKKyAgQkNfQUNRVUlSRV9SRVNVTFQgPSBfSU9XKCdjJywgMiwgX19zMzIpLAorICBCQ19GUkVFX0JVRkZFUiA9IF9JT1coJ2MnLCAzLCBiaW5kZXJfdWludHB0cl90KSwKKyAgQkNfSU5DUkVGUyA9IF9JT1coJ2MnLCA0LCBfX3UzMiksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJDX0FDUVVJUkUgPSBfSU9XKCdjJywgNSwgX191MzIpLAotIEJDX1JFTEVBU0UgPSBfSU9XKCdjJywgNiwgX191MzIpLAotIEJDX0RFQ1JFRlMgPSBfSU9XKCdjJywgNywgX191MzIpLAotIEJDX0lOQ1JFRlNfRE9ORSA9IF9JT1coJ2MnLCA4LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAorICBCQ19BQ1FVSVJFID0gX0lPVygnYycsIDUsIF9fdTMyKSwKKyAgQkNfUkVMRUFTRSA9IF9JT1coJ2MnLCA2LCBfX3UzMiksCisgIEJDX0RFQ1JFRlMgPSBfSU9XKCdjJywgNywgX191MzIpLAorICBCQ19JTkNSRUZTX0RPTkUgPSBfSU9XKCdjJywgOCwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkNfQUNRVUlSRV9ET05FID0gX0lPVygnYycsIDksIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCi0gQkNfQVRURU1QVF9BQ1FVSVJFID0gX0lPVygnYycsIDEwLCBzdHJ1Y3QgYmluZGVyX3ByaV9kZXNjKSwKLSBCQ19SRUdJU1RFUl9MT09QRVIgPSBfSU8oJ2MnLCAxMSksCi0gQkNfRU5URVJfTE9PUEVSID0gX0lPKCdjJywgMTIpLAorICBCQ19BQ1FVSVJFX0RPTkUgPSBfSU9XKCdjJywgOSwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKKyAgQkNfQVRURU1QVF9BQ1FVSVJFID0gX0lPVygnYycsIDEwLCBzdHJ1Y3QgYmluZGVyX3ByaV9kZXNjKSwKKyAgQkNfUkVHSVNURVJfTE9PUEVSID0gX0lPKCdjJywgMTEpLAorICBCQ19FTlRFUl9MT09QRVIgPSBfSU8oJ2MnLCAxMiksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJDX0VYSVRfTE9PUEVSID0gX0lPKCdjJywgMTMpLAotIEJDX1JFUVVFU1RfREVBVEhfTk9USUZJQ0FUSU9OID0gX0lPVygnYycsIDE0LCBzdHJ1Y3QgYmluZGVyX2hhbmRsZV9jb29raWUpLAotIEJDX0NMRUFSX0RFQVRIX05PVElGSUNBVElPTiA9IF9JT1coJ2MnLCAxNSwgc3RydWN0IGJpbmRlcl9oYW5kbGVfY29va2llKSwKLSBCQ19ERUFEX0JJTkRFUl9ET05FID0gX0lPVygnYycsIDE2LCBiaW5kZXJfdWludHB0cl90KSwKKyAgQkNfRVhJVF9MT09QRVIgPSBfSU8oJ2MnLCAxMyksCisgIEJDX1JFUVVFU1RfREVBVEhfTk9USUZJQ0FUSU9OID0gX0lPVygnYycsIDE0LCBzdHJ1Y3QgYmluZGVyX2hhbmRsZV9jb29raWUpLAorICBCQ19DTEVBUl9ERUFUSF9OT1RJRklDQVRJT04gPSBfSU9XKCdjJywgMTUsIHN0cnVjdCBiaW5kZXJfaGFuZGxlX2Nvb2tpZSksCisgIEJDX0RFQURfQklOREVSX0RPTkUgPSBfSU9XKCdjJywgMTYsIGJpbmRlcl91aW50cHRyX3QpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmxrcGcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmxrcGcuaAppbmRleCA4YjgwODA5Li4zNWI5NzMwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jsa3BnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGtwZy5oCkBAIC0yMSwxMyArMjEsMTMgQEAKICNpbmNsdWRlIDxsaW51eC9jb21waWxlci5oPgogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtQRyBfSU8oMHgxMiwxMDUpCisjZGVmaW5lIEJMS1BHIF9JTygweDEyLCAxMDUpCiBzdHJ1Y3QgYmxrcGdfaW9jdGxfYXJnIHsKLSBpbnQgb3A7Ci0gaW50IGZsYWdzOworICBpbnQgb3A7CisgIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRhdGFsZW47Ci0gdm9pZCBfX3VzZXIgKmRhdGE7CisgIGludCBkYXRhbGVuOworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9OwogI2RlZmluZSBCTEtQR19BRERfUEFSVElUSU9OIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zNywxMiArMzcsMTIgQEAKICNkZWZpbmUgQkxLUEdfVk9MTkFNRUxUSCA2NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBibGtwZ19wYXJ0aXRpb24gewotIGxvbmcgbG9uZyBzdGFydDsKLSBsb25nIGxvbmcgbGVuZ3RoOwotIGludCBwbm87CisgIGxvbmcgbG9uZyBzdGFydDsKKyAgbG9uZyBsb25nIGxlbmd0aDsKKyAgaW50IHBubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkZXZuYW1lW0JMS1BHX0RFVk5BTUVMVEhdOwotIGNoYXIgdm9sbmFtZVtCTEtQR19WT0xOQU1FTFRIXTsKKyAgY2hhciBkZXZuYW1lW0JMS1BHX0RFVk5BTUVMVEhdOworICBjaGFyIHZvbG5hbWVbQkxLUEdfVk9MTkFNRUxUSF07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGt0cmFjZV9hcGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmxrdHJhY2VfYXBpLmgKaW5kZXggZDg0MTdiYy4uYWFjZWUxNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGt0cmFjZV9hcGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jsa3RyYWNlX2FwaS5oCkBAIC0yMSw2MCArMjEsNjAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSBibGt0cmFjZV9jYXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCTEtfVENfUkVBRCA9IDEgPDwgMCwKLSBCTEtfVENfV1JJVEUgPSAxIDw8IDEsCi0gQkxLX1RDX0ZMVVNIID0gMSA8PCAyLAotIEJMS19UQ19TWU5DID0gMSA8PCAzLAorICBCTEtfVENfUkVBRCA9IDEgPDwgMCwKKyAgQkxLX1RDX1dSSVRFID0gMSA8PCAxLAorICBCTEtfVENfRkxVU0ggPSAxIDw8IDIsCisgIEJMS19UQ19TWU5DID0gMSA8PCAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCTEtfVENfU1lOQ0lPID0gQkxLX1RDX1NZTkMsCi0gQkxLX1RDX1FVRVVFID0gMSA8PCA0LAotIEJMS19UQ19SRVFVRVVFID0gMSA8PCA1LAotIEJMS19UQ19JU1NVRSA9IDEgPDwgNiwKKyAgQkxLX1RDX1NZTkNJTyA9IEJMS19UQ19TWU5DLAorICBCTEtfVENfUVVFVUUgPSAxIDw8IDQsCisgIEJMS19UQ19SRVFVRVVFID0gMSA8PCA1LAorICBCTEtfVENfSVNTVUUgPSAxIDw8IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJMS19UQ19DT01QTEVURSA9IDEgPDwgNywKLSBCTEtfVENfRlMgPSAxIDw8IDgsCi0gQkxLX1RDX1BDID0gMSA8PCA5LAotIEJMS19UQ19OT1RJRlkgPSAxIDw8IDEwLAorICBCTEtfVENfQ09NUExFVEUgPSAxIDw8IDcsCisgIEJMS19UQ19GUyA9IDEgPDwgOCwKKyAgQkxLX1RDX1BDID0gMSA8PCA5LAorICBCTEtfVENfTk9USUZZID0gMSA8PCAxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkxLX1RDX0FIRUFEID0gMSA8PCAxMSwKLSBCTEtfVENfTUVUQSA9IDEgPDwgMTIsCi0gQkxLX1RDX0RJU0NBUkQgPSAxIDw8IDEzLAotIEJMS19UQ19EUlZfREFUQSA9IDEgPDwgMTQsCisgIEJMS19UQ19BSEVBRCA9IDEgPDwgMTEsCisgIEJMS19UQ19NRVRBID0gMSA8PCAxMiwKKyAgQkxLX1RDX0RJU0NBUkQgPSAxIDw8IDEzLAorICBCTEtfVENfRFJWX0RBVEEgPSAxIDw8IDE0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCTEtfVENfRlVBID0gMSA8PCAxNSwKLSBCTEtfVENfRU5EID0gMSA8PCAxNSwKKyAgQkxLX1RDX0ZVQSA9IDEgPDwgMTUsCisgIEJMS19UQ19FTkQgPSAxIDw8IDE1LAogfTsKICNkZWZpbmUgQkxLX1RDX1NISUZUICgxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJMS19UQ19BQ1QoYWN0KSAoKGFjdCkgPDwgQkxLX1RDX1NISUZUKQogZW51bSBibGt0cmFjZV9hY3QgewotIF9fQkxLX1RBX1FVRVVFID0gMSwKLSBfX0JMS19UQV9CQUNLTUVSR0UsCisgIF9fQkxLX1RBX1FVRVVFID0gMSwKKyAgX19CTEtfVEFfQkFDS01FUkdFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0JMS19UQV9GUk9OVE1FUkdFLAotIF9fQkxLX1RBX0dFVFJRLAotIF9fQkxLX1RBX1NMRUVQUlEsCi0gX19CTEtfVEFfUkVRVUVVRSwKKyAgX19CTEtfVEFfRlJPTlRNRVJHRSwKKyAgX19CTEtfVEFfR0VUUlEsCisgIF9fQkxLX1RBX1NMRUVQUlEsCisgIF9fQkxLX1RBX1JFUVVFVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQkxLX1RBX0lTU1VFLAotIF9fQkxLX1RBX0NPTVBMRVRFLAotIF9fQkxLX1RBX1BMVUcsCi0gX19CTEtfVEFfVU5QTFVHX0lPLAorICBfX0JMS19UQV9JU1NVRSwKKyAgX19CTEtfVEFfQ09NUExFVEUsCisgIF9fQkxLX1RBX1BMVUcsCisgIF9fQkxLX1RBX1VOUExVR19JTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19CTEtfVEFfVU5QTFVHX1RJTUVSLAotIF9fQkxLX1RBX0lOU0VSVCwKLSBfX0JMS19UQV9TUExJVCwKLSBfX0JMS19UQV9CT1VOQ0UsCisgIF9fQkxLX1RBX1VOUExVR19USU1FUiwKKyAgX19CTEtfVEFfSU5TRVJULAorICBfX0JMS19UQV9TUExJVCwKKyAgX19CTEtfVEFfQk9VTkNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0JMS19UQV9SRU1BUCwKLSBfX0JMS19UQV9BQk9SVCwKLSBfX0JMS19UQV9EUlZfREFUQSwKKyAgX19CTEtfVEFfUkVNQVAsCisgIF9fQkxLX1RBX0FCT1JULAorICBfX0JMS19UQV9EUlZfREFUQSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBibGt0cmFjZV9ub3RpZnkgewotIF9fQkxLX1ROX1BST0NFU1MgPSAwLAotIF9fQkxLX1ROX1RJTUVTVEFNUCwKLSBfX0JMS19UTl9NRVNTQUdFLAorICBfX0JMS19UTl9QUk9DRVNTID0gMCwKKyAgX19CTEtfVE5fVElNRVNUQU1QLAorICBfX0JMS19UTl9NRVNTQUdFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEJMS19UQV9RVUVVRSAoX19CTEtfVEFfUVVFVUUgfCBCTEtfVENfQUNUKEJMS19UQ19RVUVVRSkpCkBAIC04Niw3ICs4Niw3IEBACiAjZGVmaW5lIEJMS19UQV9SRVFVRVVFIChfX0JMS19UQV9SRVFVRVVFIHwgQkxLX1RDX0FDVChCTEtfVENfUkVRVUVVRSkpCiAjZGVmaW5lIEJMS19UQV9JU1NVRSAoX19CTEtfVEFfSVNTVUUgfCBCTEtfVENfQUNUKEJMS19UQ19JU1NVRSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtfVEFfQ09NUExFVEUgKF9fQkxLX1RBX0NPTVBMRVRFfCBCTEtfVENfQUNUKEJMS19UQ19DT01QTEVURSkpCisjZGVmaW5lIEJMS19UQV9DT01QTEVURSAoX19CTEtfVEFfQ09NUExFVEUgfCBCTEtfVENfQUNUKEJMS19UQ19DT01QTEVURSkpCiAjZGVmaW5lIEJMS19UQV9QTFVHIChfX0JMS19UQV9QTFVHIHwgQkxLX1RDX0FDVChCTEtfVENfUVVFVUUpKQogI2RlZmluZSBCTEtfVEFfVU5QTFVHX0lPIChfX0JMS19UQV9VTlBMVUdfSU8gfCBCTEtfVENfQUNUKEJMS19UQ19RVUVVRSkpCiAjZGVmaW5lIEJMS19UQV9VTlBMVUdfVElNRVIgKF9fQkxLX1RBX1VOUExVR19USU1FUiB8IEJMS19UQ19BQ1QoQkxLX1RDX1FVRVVFKSkKQEAgLTEwNiw0NCArMTA2LDQ0IEBACiAjZGVmaW5lIEJMS19JT19UUkFDRV9WRVJTSU9OIDB4MDcKIHN0cnVjdCBibGtfaW9fdHJhY2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWdpYzsKLSBfX3UzMiBzZXF1ZW5jZTsKLSBfX3U2NCB0aW1lOwotIF9fdTY0IHNlY3RvcjsKKyAgX191MzIgbWFnaWM7CisgIF9fdTMyIHNlcXVlbmNlOworICBfX3U2NCB0aW1lOworICBfX3U2NCBzZWN0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ5dGVzOwotIF9fdTMyIGFjdGlvbjsKLSBfX3UzMiBwaWQ7Ci0gX191MzIgZGV2aWNlOworICBfX3UzMiBieXRlczsKKyAgX191MzIgYWN0aW9uOworICBfX3UzMiBwaWQ7CisgIF9fdTMyIGRldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3B1OwotIF9fdTE2IGVycm9yOwotIF9fdTE2IHBkdV9sZW47CisgIF9fdTMyIGNwdTsKKyAgX191MTYgZXJyb3I7CisgIF9fdTE2IHBkdV9sZW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBibGtfaW9fdHJhY2VfcmVtYXAgewotIF9fYmUzMiBkZXZpY2VfZnJvbTsKLSBfX2JlMzIgZGV2aWNlX3RvOwotIF9fYmU2NCBzZWN0b3JfZnJvbTsKKyAgX19iZTMyIGRldmljZV9mcm9tOworICBfX2JlMzIgZGV2aWNlX3RvOworICBfX2JlNjQgc2VjdG9yX2Zyb207CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIEJsa3RyYWNlX3NldHVwID0gMSwKLSBCbGt0cmFjZV9ydW5uaW5nLAorICBCbGt0cmFjZV9zZXR1cCA9IDEsCisgIEJsa3RyYWNlX3J1bm5pbmcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJsa3RyYWNlX3N0b3BwZWQsCisgIEJsa3RyYWNlX3N0b3BwZWQsCiB9OwogI2RlZmluZSBCTEtUUkFDRV9CREVWX1NJWkUgMzIKIHN0cnVjdCBibGtfdXNlcl90cmFjZV9zZXR1cCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtCTEtUUkFDRV9CREVWX1NJWkVdOwotIF9fdTE2IGFjdF9tYXNrOwotIF9fdTMyIGJ1Zl9zaXplOwotIF9fdTMyIGJ1Zl9ucjsKKyAgY2hhciBuYW1lW0JMS1RSQUNFX0JERVZfU0laRV07CisgIF9fdTE2IGFjdF9tYXNrOworICBfX3UzMiBidWZfc2l6ZTsKKyAgX191MzIgYnVmX25yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGFydF9sYmE7Ci0gX191NjQgZW5kX2xiYTsKLSBfX3UzMiBwaWQ7CisgIF9fdTY0IHN0YXJ0X2xiYTsKKyAgX191NjQgZW5kX2xiYTsKKyAgX191MzIgcGlkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwZi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjOWY2ZDYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwZi5oCkBAIC0wLDAgKzEsMTI0IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX19MSU5VWF9CUEZfSF9fCisjZGVmaW5lIF9VQVBJX19MSU5VWF9CUEZfSF9fCisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKyNpbmNsdWRlIDxsaW51eC9icGZfY29tbW9uLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfQUxVNjQgMHgwNworI2RlZmluZSBCUEZfRFcgMHgxOAorI2RlZmluZSBCUEZfWEFERCAweGMwCisjZGVmaW5lIEJQRl9NT1YgMHhiMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0FSU0ggMHhjMAorI2RlZmluZSBCUEZfRU5EIDB4ZDAKKyNkZWZpbmUgQlBGX1RPX0xFIDB4MDAKKyNkZWZpbmUgQlBGX1RPX0JFIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9GUk9NX0xFIEJQRl9UT19MRQorI2RlZmluZSBCUEZfRlJPTV9CRSBCUEZfVE9fQkUKKyNkZWZpbmUgQlBGX0pORSAweDUwCisjZGVmaW5lIEJQRl9KU0dUIDB4NjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9KU0dFIDB4NzAKKyNkZWZpbmUgQlBGX0NBTEwgMHg4MAorI2RlZmluZSBCUEZfRVhJVCAweDkwCitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEJQRl9SRUdfMCA9IDAsCisgIEJQRl9SRUdfMSwKKyAgQlBGX1JFR18yLAorICBCUEZfUkVHXzMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBCUEZfUkVHXzQsCisgIEJQRl9SRUdfNSwKKyAgQlBGX1JFR182LAorICBCUEZfUkVHXzcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBCUEZfUkVHXzgsCisgIEJQRl9SRUdfOSwKKyAgQlBGX1JFR18xMCwKKyAgX19NQVhfQlBGX1JFRywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBNQVhfQlBGX1JFRyBfX01BWF9CUEZfUkVHCitzdHJ1Y3QgYnBmX2luc24geworICBfX3U4IGNvZGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRzdF9yZWcgOiA0OworICBfX3U4IHNyY19yZWcgOiA0OworICBfX3MxNiBvZmY7CisgIF9fczMyIGltbTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSBicGZfY21kIHsKKyAgQlBGX01BUF9DUkVBVEUsCisgIEJQRl9NQVBfTE9PS1VQX0VMRU0sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBCUEZfTUFQX1VQREFURV9FTEVNLAorICBCUEZfTUFQX0RFTEVURV9FTEVNLAorICBCUEZfTUFQX0dFVF9ORVhUX0tFWSwKKyAgQlBGX1BST0dfTE9BRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSBicGZfbWFwX3R5cGUgeworICBCUEZfTUFQX1RZUEVfVU5TUEVDLAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIGJwZl9wcm9nX3R5cGUgeworICBCUEZfUFJPR19UWVBFX1VOU1BFQywKK307Cit1bmlvbiBicGZfYXR0ciB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgeworICAgIF9fdTMyIG1hcF90eXBlOworICAgIF9fdTMyIGtleV9zaXplOworICAgIF9fdTMyIHZhbHVlX3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTMyIG1heF9lbnRyaWVzOworICB9OworICBzdHJ1Y3QgeworICAgIF9fdTMyIG1hcF9mZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX19hbGlnbmVkX3U2NCBrZXk7CisgICAgdW5pb24geworICAgICAgX19hbGlnbmVkX3U2NCB2YWx1ZTsKKyAgICAgIF9fYWxpZ25lZF91NjQgbmV4dF9rZXk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIH07CisgIH07CisgIHN0cnVjdCB7CisgICAgX191MzIgcHJvZ190eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBfX3UzMiBpbnNuX2NudDsKKyAgICBfX2FsaWduZWRfdTY0IGluc25zOworICAgIF9fYWxpZ25lZF91NjQgbGljZW5zZTsKKyAgICBfX3UzMiBsb2dfbGV2ZWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTMyIGxvZ19zaXplOworICAgIF9fYWxpZ25lZF91NjQgbG9nX2J1ZjsKKyAgfTsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gYnBmX2Z1bmNfaWQgeworICBCUEZfRlVOQ191bnNwZWMsCisgIF9fQlBGX0ZVTkNfTUFYX0lELAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBmX2NvbW1vbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icGZfY29tbW9uLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjMxNWFhZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBmX2NvbW1vbi5oCkBAIC0wLDAgKzEsNzUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX1VBUElfX0xJTlVYX0JQRl9DT01NT05fSF9fCisjZGVmaW5lIF9VQVBJX19MSU5VWF9CUEZfQ09NTU9OX0hfXworI2RlZmluZSBCUEZfQ0xBU1MoY29kZSkgKChjb2RlKSAmIDB4MDcpCisjZGVmaW5lIEJQRl9MRCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfTERYIDB4MDEKKyNkZWZpbmUgQlBGX1NUIDB4MDIKKyNkZWZpbmUgQlBGX1NUWCAweDAzCisjZGVmaW5lIEJQRl9BTFUgMHgwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0pNUCAweDA1CisjZGVmaW5lIEJQRl9SRVQgMHgwNgorI2RlZmluZSBCUEZfTUlTQyAweDA3CisjZGVmaW5lIEJQRl9TSVpFKGNvZGUpICgoY29kZSkgJiAweDE4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX1cgMHgwMAorI2RlZmluZSBCUEZfSCAweDA4CisjZGVmaW5lIEJQRl9CIDB4MTAKKyNkZWZpbmUgQlBGX01PREUoY29kZSkgKChjb2RlKSAmIDB4ZTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfSU1NIDB4MDAKKyNkZWZpbmUgQlBGX0FCUyAweDIwCisjZGVmaW5lIEJQRl9JTkQgMHg0MAorI2RlZmluZSBCUEZfTUVNIDB4NjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9MRU4gMHg4MAorI2RlZmluZSBCUEZfTVNIIDB4YTAKKyNkZWZpbmUgQlBGX09QKGNvZGUpICgoY29kZSkgJiAweGYwKQorI2RlZmluZSBCUEZfQUREIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9TVUIgMHgxMAorI2RlZmluZSBCUEZfTVVMIDB4MjAKKyNkZWZpbmUgQlBGX0RJViAweDMwCisjZGVmaW5lIEJQRl9PUiAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfQU5EIDB4NTAKKyNkZWZpbmUgQlBGX0xTSCAweDYwCisjZGVmaW5lIEJQRl9SU0ggMHg3MAorI2RlZmluZSBCUEZfTkVHIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9NT0QgMHg5MAorI2RlZmluZSBCUEZfWE9SIDB4YTAKKyNkZWZpbmUgQlBGX0pBIDB4MDAKKyNkZWZpbmUgQlBGX0pFUSAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfSkdUIDB4MjAKKyNkZWZpbmUgQlBGX0pHRSAweDMwCisjZGVmaW5lIEJQRl9KU0VUIDB4NDAKKyNkZWZpbmUgQlBGX1NSQyhjb2RlKSAoKGNvZGUpICYgMHgwOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9LIDB4MDAKKyNkZWZpbmUgQlBGX1ggMHgwOAorI2lmbmRlZiBCUEZfTUFYSU5TTlMKKyNkZWZpbmUgQlBGX01BWElOU05TIDQwOTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icHFldGhlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icHFldGhlci5oCmluZGV4IGQxYzY1YTguLjA5YzAwZDAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBxZXRoZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwcWV0aGVyLmgKQEAgLTIyLDI4ICsyMiwyOCBAQAogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0jZGVmaW5lIFNJT0NTQlBRRVRIT1BUIChTSU9DREVWUFJJVkFURSswKQotI2RlZmluZSBTSU9DU0JQUUVUSEFERFIgKFNJT0NERVZQUklWQVRFKzEpCisjZGVmaW5lIFNJT0NTQlBRRVRIT1BUIChTSU9DREVWUFJJVkFURSArIDApCisjZGVmaW5lIFNJT0NTQlBRRVRIQUREUiAoU0lPQ0RFVlBSSVZBVEUgKyAxKQogc3RydWN0IGJwcV9ldGhhZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkZXN0aW5hdGlvbltFVEhfQUxFTl07Ci0gdW5zaWduZWQgY2hhciBhY2NlcHRbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIGRlc3RpbmF0aW9uW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBhY2NlcHRbRVRIX0FMRU5dOwogfTsKICNkZWZpbmUgU0lPQ0dCUFFFVEhQQVJBTSAweDUwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNJT0NTQlBRRVRIUEFSQU0gMHg1MDAxCiBzdHJ1Y3QgYnBxX3JlcSB7Ci0gaW50IGNtZDsKLSBpbnQgc3BlZWQ7CisgIGludCBjbWQ7CisgIGludCBzcGVlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNsb2NrbW9kZTsKLSBpbnQgdHhkZWxheTsKLSB1bnNpZ25lZCBjaGFyIHBlcnNpc3Q7Ci0gaW50IHNsb3RpbWU7CisgIGludCBjbG9ja21vZGU7CisgIGludCB0eGRlbGF5OworICB1bnNpZ25lZCBjaGFyIHBlcnNpc3Q7CisgIGludCBzbG90aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3F1ZWxkZWxheTsKLSBpbnQgZG1hY2hhbjsKLSBpbnQgaXJxOworICBpbnQgc3F1ZWxkZWxheTsKKyAgaW50IGRtYWNoYW47CisgIGludCBpcnE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ic2cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnNnLmgKaW5kZXggYTRkZjUyYS4uODBjYzg3YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ic2cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JzZy5oCkBAIC0yNiw0OCArMjYsNDkgQEAKICNkZWZpbmUgQlNHX1NVQl9QUk9UT0NPTF9TQ1NJX1RSQU5TUE9SVCAyCiAjZGVmaW5lIEJTR19GTEFHX1FfQVRfVEFJTCAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCU0dfRkxBR19RX0FUX0hFQUQgMHgyMAogc3RydWN0IHNnX2lvX3Y0IHsKLSBfX3MzMiBndWFyZDsKLSBfX3UzMiBwcm90b2NvbDsKLSBfX3UzMiBzdWJwcm90b2NvbDsKKyAgX19zMzIgZ3VhcmQ7CisgIF9fdTMyIHByb3RvY29sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXF1ZXN0X2xlbjsKLSBfX3U2NCByZXF1ZXN0OwotIF9fdTY0IHJlcXVlc3RfdGFnOwotIF9fdTMyIHJlcXVlc3RfYXR0cjsKKyAgX191MzIgc3VicHJvdG9jb2w7CisgIF9fdTMyIHJlcXVlc3RfbGVuOworICBfX3U2NCByZXF1ZXN0OworICBfX3U2NCByZXF1ZXN0X3RhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVxdWVzdF9wcmlvcml0eTsKLSBfX3UzMiByZXF1ZXN0X2V4dHJhOwotIF9fdTMyIG1heF9yZXNwb25zZV9sZW47Ci0gX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIHJlcXVlc3RfYXR0cjsKKyAgX191MzIgcmVxdWVzdF9wcmlvcml0eTsKKyAgX191MzIgcmVxdWVzdF9leHRyYTsKKyAgX191MzIgbWF4X3Jlc3BvbnNlX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZG91dF9pb3ZlY19jb3VudDsKLSBfX3UzMiBkb3V0X3hmZXJfbGVuOwotIF9fdTMyIGRpbl9pb3ZlY19jb3VudDsKLSBfX3UzMiBkaW5feGZlcl9sZW47CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBkb3V0X2lvdmVjX2NvdW50OworICBfX3UzMiBkb3V0X3hmZXJfbGVuOworICBfX3UzMiBkaW5faW92ZWNfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRvdXRfeGZlcnA7Ci0gX191NjQgZGluX3hmZXJwOwotIF9fdTMyIHRpbWVvdXQ7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGRpbl94ZmVyX2xlbjsKKyAgX191NjQgZG91dF94ZmVycDsKKyAgX191NjQgZGluX3hmZXJwOworICBfX3UzMiB0aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c3JfcHRyOwotIF9fdTMyIHNwYXJlX2luOwotIF9fdTMyIGRyaXZlcl9zdGF0dXM7Ci0gX191MzIgdHJhbnNwb3J0X3N0YXR1czsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IHVzcl9wdHI7CisgIF9fdTMyIHNwYXJlX2luOworICBfX3UzMiBkcml2ZXJfc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZXZpY2Vfc3RhdHVzOwotIF9fdTMyIHJldHJ5X2RlbGF5OwotIF9fdTMyIGluZm87Ci0gX191MzIgZHVyYXRpb247CisgIF9fdTMyIHRyYW5zcG9ydF9zdGF0dXM7CisgIF9fdTMyIGRldmljZV9zdGF0dXM7CisgIF9fdTMyIHJldHJ5X2RlbGF5OworICBfX3UzMiBpbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNwb25zZV9sZW47Ci0gX19zMzIgZGluX3Jlc2lkOwotIF9fczMyIGRvdXRfcmVzaWQ7Ci0gX191NjQgZ2VuZXJhdGVkX3RhZzsKKyAgX191MzIgZHVyYXRpb247CisgIF9fdTMyIHJlc3BvbnNlX2xlbjsKKyAgX19zMzIgZGluX3Jlc2lkOworICBfX3MzMiBkb3V0X3Jlc2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGFyZV9vdXQ7Ci0gX191MzIgcGFkZGluZzsKKyAgX191NjQgZ2VuZXJhdGVkX3RhZzsKKyAgX191MzIgc3BhcmVfb3V0OworICBfX3UzMiBwYWRkaW5nOwogfTsKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9idHJmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9idHJmcy5oCmluZGV4IDExZjk1MGYuLjgwNDdmNmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnRyZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J0cmZzLmgKQEAgLTI2LDggKzI2LDggQEAKICNkZWZpbmUgQlRSRlNfUEFUSF9OQU1FX01BWCA0MDg3CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M2NCBmZDsKLSBjaGFyIG5hbWVbQlRSRlNfUEFUSF9OQU1FX01BWCArIDFdOworICBfX3M2NCBmZDsKKyAgY2hhciBuYW1lW0JUUkZTX1BBVEhfTkFNRV9NQVggKyAxXTsKIH07CiAjZGVmaW5lIEJUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYIDEwMjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zNyw0NTMgKzM3LDQ2OCBAQAogI2RlZmluZSBCVFJGU19GU0lEX1NJWkUgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1VVSURfU0laRSAxNgorI2RlZmluZSBCVFJGU19VVUlEX1VOUEFSU0VEX1NJWkUgMzcKICNkZWZpbmUgQlRSRlNfUUdST1VQX0lOSEVSSVRfU0VUX0xJTUlUUyAoMVVMTCA8PCAwKQogc3RydWN0IGJ0cmZzX3Fncm91cF9saW1pdCB7Ci0gX191NjQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1heF9yZmVyOwotIF9fdTY0IG1heF9leGNsOwotIF9fdTY0IHJzdl9yZmVyOwotIF9fdTY0IHJzdl9leGNsOworICBfX3U2NCBmbGFnczsKKyAgX191NjQgbWF4X3JmZXI7CisgIF9fdTY0IG1heF9leGNsOworICBfX3U2NCByc3ZfcmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHJzdl9leGNsOwogfTsKIHN0cnVjdCBidHJmc19xZ3JvdXBfaW5oZXJpdCB7Ci0gX191NjQgZmxhZ3M7Ci0gX191NjQgbnVtX3Fncm91cHM7CisgIF9fdTY0IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBudW1fcmVmX2NvcGllczsKLSBfX3U2NCBudW1fZXhjbF9jb3BpZXM7Ci0gc3RydWN0IGJ0cmZzX3Fncm91cF9saW1pdCBsaW07Ci0gX191NjQgcWdyb3Vwc1swXTsKKyAgX191NjQgbnVtX3Fncm91cHM7CisgIF9fdTY0IG51bV9yZWZfY29waWVzOworICBfX3U2NCBudW1fZXhjbF9jb3BpZXM7CisgIHN0cnVjdCBidHJmc19xZ3JvdXBfbGltaXQgbGltOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcWdyb3Vwc1swXTsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2xpbWl0X2FyZ3MgewotIF9fdTY0IHFncm91cGlkOwotIHN0cnVjdCBidHJmc19xZ3JvdXBfbGltaXQgbGltOworICBfX3U2NCBxZ3JvdXBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBidHJmc19xZ3JvdXBfbGltaXQgbGltOwogfTsKICNkZWZpbmUgQlRSRlNfU1VCVk9MX05BTUVfTUFYIDQwMzkKIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJnc192MiB7Ci0gX19zNjQgZmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRyYW5zaWQ7Ci0gX191NjQgZmxhZ3M7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIF9fczY0IGZkOworICBfX3U2NCB0cmFuc2lkOworICBfX3U2NCBmbGFnczsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzaXplOwotIHN0cnVjdCBidHJmc19xZ3JvdXBfaW5oZXJpdCBfX3VzZXIgKnFncm91cF9pbmhlcml0OwotIH07Ci0gX191NjQgdW51c2VkWzRdOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBzaXplOworICAgICAgc3RydWN0IGJ0cmZzX3Fncm91cF9pbmhlcml0IF9fdXNlciAqIHFncm91cF9pbmhlcml0OworICAgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gY2hhciBuYW1lW0JUUkZTX1NVQlZPTF9OQU1FX01BWCArIDFdOworICAgIF9fdTY0IHVudXNlZFs0XTsKKyAgfTsKKyAgY2hhciBuYW1lW0JUUkZTX1NVQlZPTF9OQU1FX01BWCArIDFdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfc2NydWJfcHJvZ3Jlc3MgeworICBfX3U2NCBkYXRhX2V4dGVudHNfc2NydWJiZWQ7CisgIF9fdTY0IHRyZWVfZXh0ZW50c19zY3J1YmJlZDsKKyAgX191NjQgZGF0YV9ieXRlc19zY3J1YmJlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YV9leHRlbnRzX3NjcnViYmVkOwotIF9fdTY0IHRyZWVfZXh0ZW50c19zY3J1YmJlZDsKLSBfX3U2NCBkYXRhX2J5dGVzX3NjcnViYmVkOwotIF9fdTY0IHRyZWVfYnl0ZXNfc2NydWJiZWQ7CisgIF9fdTY0IHRyZWVfYnl0ZXNfc2NydWJiZWQ7CisgIF9fdTY0IHJlYWRfZXJyb3JzOworICBfX3U2NCBjc3VtX2Vycm9yczsKKyAgX191NjQgdmVyaWZ5X2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVhZF9lcnJvcnM7Ci0gX191NjQgY3N1bV9lcnJvcnM7Ci0gX191NjQgdmVyaWZ5X2Vycm9yczsKLSBfX3U2NCBub19jc3VtOworICBfX3U2NCBub19jc3VtOworICBfX3U2NCBjc3VtX2Rpc2NhcmRzOworICBfX3U2NCBzdXBlcl9lcnJvcnM7CisgIF9fdTY0IG1hbGxvY19lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNzdW1fZGlzY2FyZHM7Ci0gX191NjQgc3VwZXJfZXJyb3JzOwotIF9fdTY0IG1hbGxvY19lcnJvcnM7Ci0gX191NjQgdW5jb3JyZWN0YWJsZV9lcnJvcnM7CisgIF9fdTY0IHVuY29ycmVjdGFibGVfZXJyb3JzOworICBfX3U2NCBjb3JyZWN0ZWRfZXJyb3JzOworICBfX3U2NCBsYXN0X3BoeXNpY2FsOworICBfX3U2NCB1bnZlcmlmaWVkX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29ycmVjdGVkX2Vycm9yczsKLSBfX3U2NCBsYXN0X3BoeXNpY2FsOwotIF9fdTY0IHVudmVyaWZpZWRfZXJyb3JzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1NDUlVCX1JFQURPTkxZIDEKIHN0cnVjdCBidHJmc19pb2N0bF9zY3J1Yl9hcmdzIHsKLSBfX3U2NCBkZXZpZDsKLSBfX3U2NCBzdGFydDsKKyAgX191NjQgZGV2aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGVuZDsKLSBfX3U2NCBmbGFnczsKLSBzdHJ1Y3QgYnRyZnNfc2NydWJfcHJvZ3Jlc3MgcHJvZ3Jlc3M7Ci0gX191NjQgdW51c2VkWygxMDI0LTMyLXNpemVvZihzdHJ1Y3QgYnRyZnNfc2NydWJfcHJvZ3Jlc3MpKS84XTsKKyAgX191NjQgc3RhcnQ7CisgIF9fdTY0IGVuZDsKKyAgX191NjQgZmxhZ3M7CisgIHN0cnVjdCBidHJmc19zY3J1Yl9wcm9ncmVzcyBwcm9ncmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHVudXNlZFsoMTAyNCAtIDMyIC0gc2l6ZW9mKHN0cnVjdCBidHJmc19zY3J1Yl9wcm9ncmVzcykpIC8gOF07CiB9OwogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9DT05UX1JFQURJTkdfRlJPTV9TUkNERVZfTU9ERV9BTFdBWVMgMAogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9DT05UX1JFQURJTkdfRlJPTV9TUkNERVZfTU9ERV9BVk9JRCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX3N0YXJ0X3BhcmFtcyB7CisgIF9fdTY0IHNyY2RldmlkOworICBfX3U2NCBjb250X3JlYWRpbmdfZnJvbV9zcmNkZXZfbW9kZTsKKyAgX191OCBzcmNkZXZfbmFtZVtCVFJGU19ERVZJQ0VfUEFUSF9OQU1FX01BWCArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzcmNkZXZpZDsKLSBfX3U2NCBjb250X3JlYWRpbmdfZnJvbV9zcmNkZXZfbW9kZTsKLSBfX3U4IHNyY2Rldl9uYW1lW0JUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYICsgMV07Ci0gX191OCB0Z3RkZXZfbmFtZVtCVFJGU19ERVZJQ0VfUEFUSF9OQU1FX01BWCArIDFdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB0Z3RkZXZfbmFtZVtCVFJGU19ERVZJQ0VfUEFUSF9OQU1FX01BWCArIDFdOwogfTsKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfU1RBVEVfTkVWRVJfU1RBUlRFRCAwCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1NUQVRFX1NUQVJURUQgMQotI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9TVEFURV9GSU5JU0hFRCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9TVEFURV9GSU5JU0hFRCAyCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1NUQVRFX0NBTkNFTEVEIDMKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfU1RBVEVfU1VTUEVOREVEIDQKIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfcmVwbGFjZV9zdGF0dXNfcGFyYW1zIHsKLSBfX3U2NCByZXBsYWNlX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwcm9ncmVzc18xMDAwOwotIF9fdTY0IHRpbWVfc3RhcnRlZDsKLSBfX3U2NCB0aW1lX3N0b3BwZWQ7Ci0gX191NjQgbnVtX3dyaXRlX2Vycm9yczsKKyAgX191NjQgcmVwbGFjZV9zdGF0ZTsKKyAgX191NjQgcHJvZ3Jlc3NfMTAwMDsKKyAgX191NjQgdGltZV9zdGFydGVkOworICBfX3U2NCB0aW1lX3N0b3BwZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG51bV91bmNvcnJlY3RhYmxlX3JlYWRfZXJyb3JzOworICBfX3U2NCBudW1fd3JpdGVfZXJyb3JzOworICBfX3U2NCBudW1fdW5jb3JyZWN0YWJsZV9yZWFkX2Vycm9yczsKIH07CiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX0NNRF9TVEFSVCAwCi0jZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX0NNRF9TVEFUVVMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfQ01EX1NUQVRVUyAxCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX0NNRF9DQU5DRUwgMgogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9SRVNVTFRfTk9fRVJST1IgMAogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9SRVNVTFRfTk9UX1NUQVJURUQgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfUkVTVUxUX0FMUkVBRFlfU1RBUlRFRCAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX2FyZ3MgewotIF9fdTY0IGNtZDsKLSBfX3U2NCByZXN1bHQ7Ci0gdW5pb24geworICBfX3U2NCBjbWQ7CisgIF9fdTY0IHJlc3VsdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX3N0YXJ0X3BhcmFtcyBzdGFydDsKLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2Vfc3RhdHVzX3BhcmFtcyBzdGF0dXM7Ci0gfTsKLSBfX3U2NCBzcGFyZVs2NF07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2Vfc3RhcnRfcGFyYW1zIHN0YXJ0OworICAgIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfcmVwbGFjZV9zdGF0dXNfcGFyYW1zIHN0YXR1czsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHNwYXJlWzY0XTsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X2luZm9fYXJncyB7Ci0gX191NjQgZGV2aWQ7Ci0gX191OCB1dWlkW0JUUkZTX1VVSURfU0laRV07CisgIF9fdTY0IGRldmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBieXRlc191c2VkOwotIF9fdTY0IHRvdGFsX2J5dGVzOwotIF9fdTY0IHVudXNlZFszNzldOwotIF9fdTggcGF0aFtCVFJGU19ERVZJQ0VfUEFUSF9OQU1FX01BWF07CisgIF9fdTggdXVpZFtCVFJGU19VVUlEX1NJWkVdOworICBfX3U2NCBieXRlc191c2VkOworICBfX3U2NCB0b3RhbF9ieXRlczsKKyAgX191NjQgdW51c2VkWzM3OV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBhdGhbQlRSRlNfREVWSUNFX1BBVEhfTkFNRV9NQVhdOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9mc19pbmZvX2FyZ3MgewotIF9fdTY0IG1heF9pZDsKLSBfX3U2NCBudW1fZGV2aWNlczsKKyAgX191NjQgbWF4X2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZzaWRbQlRSRlNfRlNJRF9TSVpFXTsKLSBfX3U2NCByZXNlcnZlZFsxMjRdOworICBfX3U2NCBudW1fZGV2aWNlczsKKyAgX191OCBmc2lkW0JUUkZTX0ZTSURfU0laRV07CisgIF9fdTMyIG5vZGVzaXplOworICBfX3UzMiBzZWN0b3JzaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY2xvbmVfYWxpZ25tZW50OworICBfX3UzMiByZXNlcnZlZDMyOworICBfX3U2NCByZXNlcnZlZFsxMjJdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFncyB7CisgIF9fdTY0IGNvbXBhdF9mbGFnczsKKyAgX191NjQgY29tcGF0X3JvX2ZsYWdzOworICBfX3U2NCBpbmNvbXBhdF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29tcGF0X2ZsYWdzOwotIF9fdTY0IGNvbXBhdF9yb19mbGFnczsKLSBfX3U2NCBpbmNvbXBhdF9mbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19CQUxBTkNFX0NUTF9QQVVTRSAxCiAjZGVmaW5lIEJUUkZTX0JBTEFOQ0VfQ1RMX0NBTkNFTCAyCiBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9hcmdzIHsKLSBfX3U2NCBwcm9maWxlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNhZ2U7Ci0gX191NjQgZGV2aWQ7Ci0gX191NjQgcHN0YXJ0OwotIF9fdTY0IHBlbmQ7CisgIF9fdTY0IHByb2ZpbGVzOworICBfX3U2NCB1c2FnZTsKKyAgX191NjQgZGV2aWQ7CisgIF9fdTY0IHBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdnN0YXJ0OwotIF9fdTY0IHZlbmQ7Ci0gX191NjQgdGFyZ2V0OwotIF9fdTY0IGZsYWdzOworICBfX3U2NCBwZW5kOworICBfX3U2NCB2c3RhcnQ7CisgIF9fdTY0IHZlbmQ7CisgIF9fdTY0IHRhcmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdW51c2VkWzhdOwotfSBfX2F0dHJpYnV0ZV9fICgoX19wYWNrZWRfXykpOworICBfX3U2NCBmbGFnczsKKyAgX191NjQgbGltaXQ7CisgIF9fdTY0IHVudXNlZFs3XTsKK30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19iYWxhbmNlX3Byb2dyZXNzIHsKLSBfX3U2NCBleHBlY3RlZDsKKyAgX191NjQgZXhwZWN0ZWQ7CisgIF9fdTY0IGNvbnNpZGVyZWQ7CisgIF9fdTY0IGNvbXBsZXRlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29uc2lkZXJlZDsKLSBfX3U2NCBjb21wbGV0ZWQ7CiB9OwogI2RlZmluZSBCVFJGU19CQUxBTkNFX1NUQVRFX1JVTk5JTkcgKDFVTEwgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX0JBTEFOQ0VfU1RBVEVfUEFVU0VfUkVRICgxVUxMIDw8IDEpCiAjZGVmaW5lIEJUUkZTX0JBTEFOQ0VfU1RBVEVfQ0FOQ0VMX1JFUSAoMVVMTCA8PCAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19pb2N0bF9iYWxhbmNlX2FyZ3MgewotIF9fdTY0IGZsYWdzOworICBfX3U2NCBmbGFnczsKKyAgX191NjQgc3RhdGU7CisgIHN0cnVjdCBidHJmc19iYWxhbmNlX2FyZ3MgZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RhdGU7Ci0gc3RydWN0IGJ0cmZzX2JhbGFuY2VfYXJncyBkYXRhOwotIHN0cnVjdCBidHJmc19iYWxhbmNlX2FyZ3MgbWV0YTsKLSBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9hcmdzIHN5czsKKyAgc3RydWN0IGJ0cmZzX2JhbGFuY2VfYXJncyBtZXRhOworICBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9hcmdzIHN5czsKKyAgc3RydWN0IGJ0cmZzX2JhbGFuY2VfcHJvZ3Jlc3Mgc3RhdDsKKyAgX191NjQgdW51c2VkWzcyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGJ0cmZzX2JhbGFuY2VfcHJvZ3Jlc3Mgc3RhdDsKLSBfX3U2NCB1bnVzZWRbNzJdOwogfTsKICNkZWZpbmUgQlRSRlNfSU5PX0xPT0tVUF9QQVRIX01BWCA0MDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX2lub19sb29rdXBfYXJncyB7Ci0gX191NjQgdHJlZWlkOwotIF9fdTY0IG9iamVjdGlkOwotIGNoYXIgbmFtZVtCVFJGU19JTk9fTE9PS1VQX1BBVEhfTUFYXTsKKyAgX191NjQgdHJlZWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgb2JqZWN0aWQ7CisgIGNoYXIgbmFtZVtCVFJGU19JTk9fTE9PS1VQX1BBVEhfTUFYXTsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2tleSB7Ci0gX191NjQgdHJlZV9pZDsKLSBfX3U2NCBtaW5fb2JqZWN0aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1heF9vYmplY3RpZDsKLSBfX3U2NCBtaW5fb2Zmc2V0OwotIF9fdTY0IG1heF9vZmZzZXQ7Ci0gX191NjQgbWluX3RyYW5zaWQ7CisgIF9fdTY0IHRyZWVfaWQ7CisgIF9fdTY0IG1pbl9vYmplY3RpZDsKKyAgX191NjQgbWF4X29iamVjdGlkOworICBfX3U2NCBtaW5fb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBtYXhfdHJhbnNpZDsKLSBfX3UzMiBtaW5fdHlwZTsKLSBfX3UzMiBtYXhfdHlwZTsKLSBfX3UzMiBucl9pdGVtczsKKyAgX191NjQgbWF4X29mZnNldDsKKyAgX191NjQgbWluX3RyYW5zaWQ7CisgIF9fdTY0IG1heF90cmFuc2lkOworICBfX3UzMiBtaW5fdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdW51c2VkOwotIF9fdTY0IHVudXNlZDE7Ci0gX191NjQgdW51c2VkMjsKLSBfX3U2NCB1bnVzZWQzOworICBfX3UzMiBtYXhfdHlwZTsKKyAgX191MzIgbnJfaXRlbXM7CisgIF9fdTMyIHVudXNlZDsKKyAgX191NjQgdW51c2VkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdW51c2VkNDsKKyAgX191NjQgdW51c2VkMjsKKyAgX191NjQgdW51c2VkMzsKKyAgX191NjQgdW51c2VkNDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9oZWFkZXIgewotIF9fdTY0IHRyYW5zaWQ7CisgIF9fdTY0IHRyYW5zaWQ7CisgIF9fdTY0IG9iamVjdGlkOworICBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9iamVjdGlkOwotIF9fdTY0IG9mZnNldDsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIGxlbjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGxlbjsKIH07CiAjZGVmaW5lIEJUUkZTX1NFQVJDSF9BUkdTX0JVRlNJWkUgKDQwOTYgLSBzaXplb2Yoc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9rZXkpKQotc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9hcmdzIHsKLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2tleSBrZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYnVmW0JUUkZTX1NFQVJDSF9BUkdTX0JVRlNJWkVdOworc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9hcmdzIHsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9rZXkga2V5OworICBjaGFyIGJ1ZltCVFJGU19TRUFSQ0hfQVJHU19CVUZTSVpFXTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9hcmdzX3YyIHsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9rZXkga2V5OworICBfX3U2NCBidWZfc2l6ZTsKKyAgX191NjQgYnVmWzBdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfY2xvbmVfcmFuZ2VfYXJncyB7Ci0gX19zNjQgc3JjX2ZkOworICBfX3M2NCBzcmNfZmQ7CisgIF9fdTY0IHNyY19vZmZzZXQsIHNyY19sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNyY19vZmZzZXQsIHNyY19sZW5ndGg7Ci0gX191NjQgZGVzdF9vZmZzZXQ7CisgIF9fdTY0IGRlc3Rfb2Zmc2V0OwogfTsKICNkZWZpbmUgQlRSRlNfREVGUkFHX1JBTkdFX0NPTVBSRVNTIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX0RFRlJBR19SQU5HRV9TVEFSVF9JTyAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19TQU1FX0RBVEFfRElGRkVSUyAxCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2FtZV9leHRlbnRfaW5mbyB7Ci0gX19zNjQgZmQ7CisgIF9fczY0IGZkOworICBfX3U2NCBsb2dpY2FsX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbG9naWNhbF9vZmZzZXQ7Ci0gX191NjQgYnl0ZXNfZGVkdXBlZDsKLSBfX3MzMiBzdGF0dXM7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBieXRlc19kZWR1cGVkOworICBfX3MzMiBzdGF0dXM7CisgIF9fdTMyIHJlc2VydmVkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2FtZV9hcmdzIHsKLSBfX3U2NCBsb2dpY2FsX29mZnNldDsKLSBfX3U2NCBsZW5ndGg7CisgIF9fdTY0IGxvZ2ljYWxfb2Zmc2V0OworICBfX3U2NCBsZW5ndGg7CisgIF9fdTE2IGRlc3RfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRlc3RfY291bnQ7Ci0gX191MTYgcmVzZXJ2ZWQxOwotIF9fdTMyIHJlc2VydmVkMjsKLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2FtZV9leHRlbnRfaW5mbyBpbmZvWzBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgcmVzZXJ2ZWQxOworICBfX3UzMiByZXNlcnZlZDI7CisgIHN0cnVjdCBidHJmc19pb2N0bF9zYW1lX2V4dGVudF9pbmZvIGluZm9bMF07CiB9Owotc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2luZm8gewotIF9fdTY0IGZsYWdzOwotIF9fdTY0IHRvdGFsX2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c2VkX2J5dGVzOworc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2luZm8geworICBfX3U2NCBmbGFnczsKKyAgX191NjQgdG90YWxfYnl0ZXM7CisgIF9fdTY0IHVzZWRfYnl0ZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9zcGFjZV9hcmdzIHsKLSBfX3U2NCBzcGFjZV9zbG90czsKKyAgX191NjQgc3BhY2Vfc2xvdHM7CisgIF9fdTY0IHRvdGFsX3NwYWNlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdG90YWxfc3BhY2VzOwotIHN0cnVjdCBidHJmc19pb2N0bF9zcGFjZV9pbmZvIHNwYWNlc1swXTsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2luZm8gc3BhY2VzWzBdOwogfTsKIHN0cnVjdCBidHJmc19kYXRhX2NvbnRhaW5lciB7CisgIF9fdTMyIGJ5dGVzX2xlZnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ5dGVzX2xlZnQ7Ci0gX191MzIgYnl0ZXNfbWlzc2luZzsKLSBfX3UzMiBlbGVtX2NudDsKLSBfX3UzMiBlbGVtX21pc3NlZDsKKyAgX191MzIgYnl0ZXNfbWlzc2luZzsKKyAgX191MzIgZWxlbV9jbnQ7CisgIF9fdTMyIGVsZW1fbWlzc2VkOworICBfX3U2NCB2YWxbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHZhbFswXTsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfaW5vX3BhdGhfYXJncyB7Ci0gX191NjQgaW51bTsKKyAgX191NjQgaW51bTsKKyAgX191NjQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2l6ZTsKLSBfX3U2NCByZXNlcnZlZFs0XTsKLSBfX3U2NCBmc3BhdGg7CisgIF9fdTY0IHJlc2VydmVkWzRdOworICBfX3U2NCBmc3BhdGg7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19pb2N0bF9sb2dpY2FsX2lub19hcmdzIHsKLSBfX3U2NCBsb2dpY2FsOwotIF9fdTY0IHNpemU7Ci0gX191NjQgcmVzZXJ2ZWRbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGlub2RlczsKKyAgX191NjQgbG9naWNhbDsKKyAgX191NjQgc2l6ZTsKKyAgX191NjQgcmVzZXJ2ZWRbNF07CisgIF9fdTY0IGlub2RlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBidHJmc19kZXZfc3RhdF92YWx1ZXMgewotIEJUUkZTX0RFVl9TVEFUX1dSSVRFX0VSUlMsCisgIEJUUkZTX0RFVl9TVEFUX1dSSVRFX0VSUlMsCisgIEJUUkZTX0RFVl9TVEFUX1JFQURfRVJSUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlRSRlNfREVWX1NUQVRfUkVBRF9FUlJTLAotIEJUUkZTX0RFVl9TVEFUX0ZMVVNIX0VSUlMsCi0gQlRSRlNfREVWX1NUQVRfQ09SUlVQVElPTl9FUlJTLAotIEJUUkZTX0RFVl9TVEFUX0dFTkVSQVRJT05fRVJSUywKKyAgQlRSRlNfREVWX1NUQVRfRkxVU0hfRVJSUywKKyAgQlRSRlNfREVWX1NUQVRfQ09SUlVQVElPTl9FUlJTLAorICBCVFJGU19ERVZfU1RBVF9HRU5FUkFUSU9OX0VSUlMsCisgIEJUUkZTX0RFVl9TVEFUX1ZBTFVFU19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWAogfTsKICNkZWZpbmUgQlRSRlNfREVWX1NUQVRTX1JFU0VUICgxVUxMIDw8IDApCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfZ2V0X2Rldl9zdGF0cyB7CisgIF9fdTY0IGRldmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkZXZpZDsKLSBfX3U2NCBucl9pdGVtczsKLSBfX3U2NCBmbGFnczsKLSBfX3U2NCB2YWx1ZXNbQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWF07CisgIF9fdTY0IG5yX2l0ZW1zOworICBfX3U2NCBmbGFnczsKKyAgX191NjQgdmFsdWVzW0JUUkZTX0RFVl9TVEFUX1ZBTFVFU19NQVhdOworICBfX3U2NCB1bnVzZWRbMTI4IC0gMiAtIEJUUkZTX0RFVl9TVEFUX1ZBTFVFU19NQVhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1bnVzZWRbMTI4IC0gMiAtIEJUUkZTX0RFVl9TVEFUX1ZBTFVFU19NQVhdOwogfTsKICNkZWZpbmUgQlRSRlNfUVVPVEFfQ1RMX0VOQUJMRSAxCiAjZGVmaW5lIEJUUkZTX1FVT1RBX0NUTF9ESVNBQkxFIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1FVT1RBX0NUTF9SRVNDQU5fX05PVFVTRUQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19pb2N0bF9xdW90YV9jdGxfYXJncyB7Ci0gX191NjQgY21kOwotIF9fdTY0IHN0YXR1czsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGNtZDsKKyAgX191NjQgc3RhdHVzOwogfTsKLXN0cnVjdCBidHJmc19pb2N0bF9xdW90YV9yZXNjYW5fYXJncyB7Ci0gX191NjQgZmxhZ3M7Ci0gX191NjQgcHJvZ3Jlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkWzZdOworc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX3Jlc2Nhbl9hcmdzIHsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHByb2dyZXNzOworICBfX3U2NCByZXNlcnZlZFs2XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9hc3NpZ25fYXJncyB7Ci0gX191NjQgYXNzaWduOworICBfX3U2NCBhc3NpZ247CisgIF9fdTY0IHNyYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3JjOwotIF9fdTY0IGRzdDsKKyAgX191NjQgZHN0OwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfY3JlYXRlX2FyZ3MgeworICBfX3U2NCBjcmVhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNyZWF0ZTsKLSBfX3U2NCBxZ3JvdXBpZDsKKyAgX191NjQgcWdyb3VwaWQ7CiB9Owogc3RydWN0IGJ0cmZzX2lvY3RsX3RpbWVzcGVjIHsKKyAgX191NjQgc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzZWM7Ci0gX191MzIgbnNlYzsKKyAgX191MzIgbnNlYzsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfcmVjZWl2ZWRfc3Vidm9sX2FyZ3MgeworICBjaGFyIHV1aWRbQlRSRlNfVVVJRF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB1dWlkW0JUUkZTX1VVSURfU0laRV07Ci0gX191NjQgc3RyYW5zaWQ7Ci0gX191NjQgcnRyYW5zaWQ7Ci0gc3RydWN0IGJ0cmZzX2lvY3RsX3RpbWVzcGVjIHN0aW1lOworICBfX3U2NCBzdHJhbnNpZDsKKyAgX191NjQgcnRyYW5zaWQ7CisgIHN0cnVjdCBidHJmc19pb2N0bF90aW1lc3BlYyBzdGltZTsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3RpbWVzcGVjIHJ0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfdGltZXNwZWMgcnRpbWU7Ci0gX191NjQgZmxhZ3M7Ci0gX191NjQgcmVzZXJ2ZWRbMTZdOworICBfX3U2NCBmbGFnczsKKyAgX191NjQgcmVzZXJ2ZWRbMTZdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1NFTkRfRkxBR19OT19GSUxFX0RBVEEgMHgxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19TRU5EX0ZMQUdfT01JVF9TVFJFQU1fSEVBREVSIDB4MgogI2RlZmluZSBCVFJGU19TRU5EX0ZMQUdfT01JVF9FTkRfQ01EIDB4NAotI2RlZmluZSBCVFJGU19TRU5EX0ZMQUdfTUFTSyAgIChCVFJGU19TRU5EX0ZMQUdfTk9fRklMRV9EQVRBIHwgICBCVFJGU19TRU5EX0ZMQUdfT01JVF9TVFJFQU1fSEVBREVSIHwgICBCVFJGU19TRU5EX0ZMQUdfT01JVF9FTkRfQ01EKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlRSRlNfU0VORF9GTEFHX01BU0sgKEJUUkZTX1NFTkRfRkxBR19OT19GSUxFX0RBVEEgfCBCVFJGU19TRU5EX0ZMQUdfT01JVF9TVFJFQU1fSEVBREVSIHwgQlRSRlNfU0VORF9GTEFHX09NSVRfRU5EX0NNRCkKIHN0cnVjdCBidHJmc19pb2N0bF9zZW5kX2FyZ3MgewotIF9fczY0IHNlbmRfZmQ7Ci0gX191NjQgY2xvbmVfc291cmNlc19jb3VudDsKLSBfX3U2NCBfX3VzZXIgKmNsb25lX3NvdXJjZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBhcmVudF9yb290OwotIF9fdTY0IGZsYWdzOwotIF9fdTY0IHJlc2VydmVkWzRdOworICBfX3M2NCBzZW5kX2ZkOworICBfX3U2NCBjbG9uZV9zb3VyY2VzX2NvdW50OworICBfX3U2NCBfX3VzZXIgKiBjbG9uZV9zb3VyY2VzOworICBfX3U2NCBwYXJlbnRfcm9vdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGZsYWdzOworICBfX3U2NCByZXNlcnZlZFs0XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBidHJmc19lcnJfY29kZSB7Ci0gbm90dXNlZCwKLSBCVFJGU19FUlJPUl9ERVZfUkFJRDFfTUlOX05PVF9NRVQsCi0gQlRSRlNfRVJST1JfREVWX1JBSUQxMF9NSU5fTk9UX01FVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlRSRlNfRVJST1JfREVWX1JBSUQ1X01JTl9OT1RfTUVULAotIEJUUkZTX0VSUk9SX0RFVl9SQUlENl9NSU5fTk9UX01FVCwKLSBCVFJGU19FUlJPUl9ERVZfVEdUX1JFUExBQ0UsCi0gQlRSRlNfRVJST1JfREVWX01JU1NJTkdfTk9UX0ZPVU5ELAorICBub3R1c2VkLAorICBCVFJGU19FUlJPUl9ERVZfUkFJRDFfTUlOX05PVF9NRVQsCisgIEJUUkZTX0VSUk9SX0RFVl9SQUlEMTBfTUlOX05PVF9NRVQsCisgIEJUUkZTX0VSUk9SX0RFVl9SQUlENV9NSU5fTk9UX01FVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlRSRlNfRVJST1JfREVWX09OTFlfV1JJVEFCTEUsCi0gQlRSRlNfRVJST1JfREVWX0VYQ0xfUlVOX0lOX1BST0dSRVNTCisgIEJUUkZTX0VSUk9SX0RFVl9SQUlENl9NSU5fTk9UX01FVCwKKyAgQlRSRlNfRVJST1JfREVWX1RHVF9SRVBMQUNFLAorICBCVFJGU19FUlJPUl9ERVZfTUlTU0lOR19OT1RfRk9VTkQsCisgIEJUUkZTX0VSUk9SX0RFVl9PTkxZX1dSSVRBQkxFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgQlRSRlNfRVJST1JfREVWX0VYQ0xfUlVOX0lOX1BST0dSRVNTCiB9OwotI2RlZmluZSBCVFJGU19JT0NfU05BUF9DUkVBVEUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TTkFQX0NSRUFURSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19ERUZSQUcgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMiwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX0RFRlJBRyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1JFU0laRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAzLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1NDQU5fREVWIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDQsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfUkVTSVpFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDMsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1NDQU5fREVWIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDQsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKICNkZWZpbmUgQlRSRlNfSU9DX1RSQU5TX1NUQVJUIF9JTyhCVFJGU19JT0NUTF9NQUdJQywgNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX0lPQ19UUkFOU19FTkQgX0lPKEJUUkZTX0lPQ1RMX01BR0lDLCA3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfSU9DX1NZTkMgX0lPKEJUUkZTX0lPQ1RMX01BR0lDLCA4KQogI2RlZmluZSBCVFJGU19JT0NfQ0xPTkUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgOSwgaW50KQotI2RlZmluZSBCVFJGU19JT0NfQUREX0RFViBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19BRERfREVWIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEwLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19STV9ERVYgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTEsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19STV9ERVYgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTEsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMiwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19DTE9ORV9SQU5HRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfY2xvbmVfcmFuZ2VfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1NVQlZPTF9DUkVBVEUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTQsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMiwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfQ0xPTkVfUkFOR0UgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTMsIHN0cnVjdCBidHJmc19pb2N0bF9jbG9uZV9yYW5nZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU1VCVk9MX0NSRUFURSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxNCwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU05BUF9ERVNUUk9ZIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE1LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfU05BUF9ERVNUUk9ZIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE1LCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX0RFRlJBR19SQU5HRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxNiwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGVmcmFnX3JhbmdlX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19UUkVFX1NFQVJDSCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMTcsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfSU5PX0xPT0tVUCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMTgsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2lub19sb29rdXBfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0RFRlJBR19SQU5HRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxNiwgc3RydWN0IGJ0cmZzX2lvY3RsX2RlZnJhZ19yYW5nZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfVFJFRV9TRUFSQ0ggX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDE3LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19UUkVFX1NFQVJDSF9WMiBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMTcsIHN0cnVjdCBidHJmc19pb2N0bF9zZWFyY2hfYXJnc192MikKKyNkZWZpbmUgQlRSRlNfSU9DX0lOT19MT09LVVAgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDE4LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfaW5vX2xvb2t1cF9hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfSU9DX0RFRkFVTFRfU1VCVk9MIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE5LCBfX3U2NCkKLSNkZWZpbmUgQlRSRlNfSU9DX1NQQUNFX0lORk8gX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDIwLCAgIHN0cnVjdCBidHJmc19pb2N0bF9zcGFjZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU1BBQ0VfSU5GTyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMjAsIHN0cnVjdCBidHJmc19pb2N0bF9zcGFjZV9hcmdzKQogI2RlZmluZSBCVFJGU19JT0NfU1RBUlRfU1lOQyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAyNCwgX191NjQpCiAjZGVmaW5lIEJUUkZTX0lPQ19XQUlUX1NZTkMgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjIsIF9fdTY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX1NOQVBfQ1JFQVRFX1YyIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDIzLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJnc192MikKLSNkZWZpbmUgQlRSRlNfSU9DX1NVQlZPTF9DUkVBVEVfVjIgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjQsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzX3YyKQorI2RlZmluZSBCVFJGU19JT0NfU05BUF9DUkVBVEVfVjIgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjMsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJnc192MikKKyNkZWZpbmUgQlRSRlNfSU9DX1NVQlZPTF9DUkVBVEVfVjIgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjQsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJnc192MikKICNkZWZpbmUgQlRSRlNfSU9DX1NVQlZPTF9HRVRGTEFHUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAyNSwgX191NjQpCiAjZGVmaW5lIEJUUkZTX0lPQ19TVUJWT0xfU0VURkxBR1MgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjYsIF9fdTY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX1NDUlVCIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAyNywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2NydWJfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1NDUlVCIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAyNywgc3RydWN0IGJ0cmZzX2lvY3RsX3NjcnViX2FyZ3MpCiAjZGVmaW5lIEJUUkZTX0lPQ19TQ1JVQl9DQU5DRUwgX0lPKEJUUkZTX0lPQ1RMX01BR0lDLCAyOCkKLSNkZWZpbmUgQlRSRlNfSU9DX1NDUlVCX1BST0dSRVNTIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAyOSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2NydWJfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX0RFVl9JTkZPIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzMCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X2luZm9fYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1NDUlVCX1BST0dSRVNTIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAyOSwgc3RydWN0IGJ0cmZzX2lvY3RsX3NjcnViX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19ERVZfSU5GTyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzAsIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfaW5mb19hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX0ZTX0lORk8gX0lPUihCVFJGU19JT0NUTF9NQUdJQywgMzEsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2ZzX2luZm9fYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX0JBTEFOQ0VfVjIgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDMyLCAgIHN0cnVjdCBidHJmc19pb2N0bF9iYWxhbmNlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19GU19JTkZPIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDMxLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZnNfaW5mb19hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRV9WMiBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzIsIHN0cnVjdCBidHJmc19pb2N0bF9iYWxhbmNlX2FyZ3MpCiAjZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFX0NUTCBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAzMywgaW50KQotI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRV9QUk9HUkVTUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAzNCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfYmFsYW5jZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRV9QUk9HUkVTUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAzNCwgc3RydWN0IGJ0cmZzX2lvY3RsX2JhbGFuY2VfYXJncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19JTk9fUEFUSFMgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDM1LCAgIHN0cnVjdCBidHJmc19pb2N0bF9pbm9fcGF0aF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfTE9HSUNBTF9JTk8gX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDM2LCAgIHN0cnVjdCBidHJmc19pb2N0bF9pbm9fcGF0aF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfU0VUX1JFQ0VJVkVEX1NVQlZPTCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzcsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3JlY2VpdmVkX3N1YnZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfSU5PX1BBVEhTIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzNSwgc3RydWN0IGJ0cmZzX2lvY3RsX2lub19wYXRoX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19MT0dJQ0FMX0lOTyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzYsIHN0cnVjdCBidHJmc19pb2N0bF9pbm9fcGF0aF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU0VUX1JFQ0VJVkVEX1NVQlZPTCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzcsIHN0cnVjdCBidHJmc19pb2N0bF9yZWNlaXZlZF9zdWJ2b2xfYXJncykKICNkZWZpbmUgQlRSRlNfSU9DX1NFTkQgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMzgsIHN0cnVjdCBidHJmc19pb2N0bF9zZW5kX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfREVWSUNFU19SRUFEWSBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAzOSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19RVU9UQV9DVEwgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDQwLCAgIHN0cnVjdCBidHJmc19pb2N0bF9xdW90YV9jdGxfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9BU1NJR04gX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNDEsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9hc3NpZ25fYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9DUkVBVEUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNDIsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9jcmVhdGVfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0RFVklDRVNfUkVBRFkgX0lPUihCVFJGU19JT0NUTF9NQUdJQywgMzksIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1FVT1RBX0NUTCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNDAsIHN0cnVjdCBidHJmc19pb2N0bF9xdW90YV9jdGxfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9BU1NJR04gX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNDEsIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfYXNzaWduX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19RR1JPVVBfQ1JFQVRFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDQyLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2NyZWF0ZV9hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9MSU1JVCBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0MywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2xpbWl0X2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19RVU9UQV9SRVNDQU4gX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNDQsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX3Jlc2Nhbl9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfUVVPVEFfUkVTQ0FOX1NUQVRVUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0NSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcXVvdGFfcmVzY2FuX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19RR1JPVVBfTElNSVQgX0lPUihCVFJGU19JT0NUTF9NQUdJQywgNDMsIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfbGltaXRfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1FVT1RBX1JFU0NBTiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA0NCwgc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX3Jlc2Nhbl9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfUVVPVEFfUkVTQ0FOX1NUQVRVUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0NSwgc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX3Jlc2Nhbl9hcmdzKQogI2RlZmluZSBCVFJGU19JT0NfUVVPVEFfUkVTQ0FOX1dBSVQgX0lPKEJUUkZTX0lPQ1RMX01BR0lDLCA0NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19HRVRfRlNMQUJFTCBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0OSwgICBjaGFyW0JUUkZTX0xBQkVMX1NJWkVdKQotI2RlZmluZSBCVFJGU19JT0NfU0VUX0ZTTEFCRUwgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNTAsICAgY2hhcltCVFJGU19MQUJFTF9TSVpFXSkKLSNkZWZpbmUgQlRSRlNfSU9DX0dFVF9ERVZfU1RBVFMgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDUyLCAgIHN0cnVjdCBidHJmc19pb2N0bF9nZXRfZGV2X3N0YXRzKQotI2RlZmluZSBCVFJGU19JT0NfREVWX1JFUExBQ0UgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDUzLCAgIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfcmVwbGFjZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfR0VUX0ZTTEFCRUwgX0lPUihCVFJGU19JT0NUTF9NQUdJQywgNDksIGNoYXJbQlRSRlNfTEFCRUxfU0laRV0pCisjZGVmaW5lIEJUUkZTX0lPQ19TRVRfRlNMQUJFTCBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA1MCwgY2hhcltCVFJGU19MQUJFTF9TSVpFXSkKKyNkZWZpbmUgQlRSRlNfSU9DX0dFVF9ERVZfU1RBVFMgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDUyLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZ2V0X2Rldl9zdGF0cykKKyNkZWZpbmUgQlRSRlNfSU9DX0RFVl9SRVBMQUNFIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCA1Mywgc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfRklMRV9FWFRFTlRfU0FNRSBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNTQsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3NhbWVfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX0dFVF9GRUFUVVJFUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA1NywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFncykKLSNkZWZpbmUgQlRSRlNfSU9DX1NFVF9GRUFUVVJFUyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA1NywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFnc1syXSkKLSNkZWZpbmUgQlRSRlNfSU9DX0dFVF9TVVBQT1JURURfRkVBVFVSRVMgX0lPUihCVFJGU19JT0NUTF9NQUdJQywgNTcsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2ZlYXR1cmVfZmxhZ3NbM10pCisjZGVmaW5lIEJUUkZTX0lPQ19GSUxFX0VYVEVOVF9TQU1FIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCA1NCwgc3RydWN0IGJ0cmZzX2lvY3RsX3NhbWVfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0dFVF9GRUFUVVJFUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA1Nywgc3RydWN0IGJ0cmZzX2lvY3RsX2ZlYXR1cmVfZmxhZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TRVRfRkVBVFVSRVMgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNTcsIHN0cnVjdCBidHJmc19pb2N0bF9mZWF0dXJlX2ZsYWdzWzJdKQorI2RlZmluZSBCVFJGU19JT0NfR0VUX1NVUFBPUlRFRF9GRUFUVVJFUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA1Nywgc3RydWN0IGJ0cmZzX2lvY3RsX2ZlYXR1cmVfZmxhZ3NbM10pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9iaWdfZW5kaWFuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9iaWdfZW5kaWFuLmgKaW5kZXggMzE0Yjg3NS4uOTVkYTUwZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ieXRlb3JkZXIvYmlnX2VuZGlhbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnl0ZW9yZGVyL2JpZ19lbmRpYW4uaApAQCAtMjgsNDEgKzI4LDQxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvc3dhYi5oPgotI2RlZmluZSBfX2NvbnN0YW50X2h0b25sKHgpICgoX19mb3JjZSBfX2JlMzIpKF9fdTMyKSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9udG9obCh4KSAoKF9fZm9yY2UgX191MzIpKF9fYmUzMikoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfaHRvbmwoeCkgKChfX2ZvcmNlIF9fYmUzMikgKF9fdTMyKSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfbnRvaGwoeCkgKChfX2ZvcmNlIF9fdTMyKSAoX19iZTMyKSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NvbnN0YW50X2h0b25zKHgpICgoX19mb3JjZSBfX2JlMTYpKF9fdTE2KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9udG9ocyh4KSAoKF9fZm9yY2UgX191MTYpKF9fYmUxNikoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlNjQoeCkgKChfX2ZvcmNlIF9fbGU2NClfX19jb25zdGFudF9zd2FiNjQoKHgpKSkKLSNkZWZpbmUgX19jb25zdGFudF9sZTY0X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiNjQoKF9fZm9yY2UgX191NjQpKF9fbGU2NCkoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfaHRvbnMoeCkgKChfX2ZvcmNlIF9fYmUxNikgKF9fdTE2KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfbnRvaHMoeCkgKChfX2ZvcmNlIF9fdTE2KSAoX19iZTE2KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlNjQoeCkgKChfX2ZvcmNlIF9fbGU2NCkgX19fY29uc3RhbnRfc3dhYjY0KCh4KSkpCisjZGVmaW5lIF9fY29uc3RhbnRfbGU2NF90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjY0KChfX2ZvcmNlIF9fdTY0KSAoX19sZTY0KSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTMyKHgpICgoX19mb3JjZSBfX2xlMzIpX19fY29uc3RhbnRfc3dhYjMyKCh4KSkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbGUzMl90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjMyKChfX2ZvcmNlIF9fdTMyKShfX2xlMzIpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpX19fY29uc3RhbnRfc3dhYjE2KCh4KSkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbGUxNl90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjE2KChfX2ZvcmNlIF9fdTE2KShfX2xlMTYpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTMyKHgpICgoX19mb3JjZSBfX2xlMzIpIF9fX2NvbnN0YW50X3N3YWIzMigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X2xlMzJfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIzMigoX19mb3JjZSBfX3UzMikgKF9fbGUzMikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpIF9fX2NvbnN0YW50X3N3YWIxNigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X2xlMTZfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIxNigoX19mb3JjZSBfX3UxNikgKF9fbGUxNikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KShfX3U2NCkoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfYmU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KShfX2JlNjQpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTMyKHgpICgoX19mb3JjZSBfX2JlMzIpKF9fdTMyKSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9iZTMyX3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MzIpKF9fYmUzMikoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlNjQoeCkgKChfX2ZvcmNlIF9fYmU2NCkgKF9fdTY0KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfYmU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KSAoX19iZTY0KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoeCkgKChfX2ZvcmNlIF9fYmUzMikgKF9fdTMyKSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfYmUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKSAoX19iZTMyKSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpKF9fdTE2KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9iZTE2X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MTYpKF9fYmUxNikoeCkpCi0jZGVmaW5lIF9fY3B1X3RvX2xlNjQoeCkgKChfX2ZvcmNlIF9fbGU2NClfX3N3YWI2NCgoeCkpKQotI2RlZmluZSBfX2xlNjRfdG9fY3B1KHgpIF9fc3dhYjY0KChfX2ZvcmNlIF9fdTY0KShfX2xlNjQpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpIChfX3UxNikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2JlMTZfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UxNikgKF9fYmUxNikgKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTY0KHgpICgoX19mb3JjZSBfX2xlNjQpIF9fc3dhYjY0KCh4KSkpCisjZGVmaW5lIF9fbGU2NF90b19jcHUoeCkgX19zd2FiNjQoKF9fZm9yY2UgX191NjQpIChfX2xlNjQpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMilfX3N3YWIzMigoeCkpKQotI2RlZmluZSBfX2xlMzJfdG9fY3B1KHgpIF9fc3dhYjMyKChfX2ZvcmNlIF9fdTMyKShfX2xlMzIpKHgpKQotI2RlZmluZSBfX2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpX19zd2FiMTYoKHgpKSkKLSNkZWZpbmUgX19sZTE2X3RvX2NwdSh4KSBfX3N3YWIxNigoX19mb3JjZSBfX3UxNikoX19sZTE2KSh4KSkKKyNkZWZpbmUgX19jcHVfdG9fbGUzMih4KSAoKF9fZm9yY2UgX19sZTMyKSBfX3N3YWIzMigoeCkpKQorI2RlZmluZSBfX2xlMzJfdG9fY3B1KHgpIF9fc3dhYjMyKChfX2ZvcmNlIF9fdTMyKSAoX19sZTMyKSAoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNikgX19zd2FiMTYoKHgpKSkKKyNkZWZpbmUgX19sZTE2X3RvX2NwdSh4KSBfX3N3YWIxNigoX19mb3JjZSBfX3UxNikgKF9fbGUxNikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KShfX3U2NCkoeCkpCi0jZGVmaW5lIF9fYmU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KShfX2JlNjQpKHgpKQotI2RlZmluZSBfX2NwdV90b19iZTMyKHgpICgoX19mb3JjZSBfX2JlMzIpKF9fdTMyKSh4KSkKLSNkZWZpbmUgX19iZTMyX3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MzIpKF9fYmUzMikoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2JlNjQoeCkgKChfX2ZvcmNlIF9fYmU2NCkgKF9fdTY0KSAoeCkpCisjZGVmaW5lIF9fYmU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KSAoX19iZTY0KSAoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2JlMzIoeCkgKChfX2ZvcmNlIF9fYmUzMikgKF9fdTMyKSAoeCkpCisjZGVmaW5lIF9fYmUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKSAoX19iZTMyKSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpKF9fdTE2KSh4KSkKLSNkZWZpbmUgX19iZTE2X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MTYpKF9fYmUxNikoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNikgKF9fdTE2KSAoeCkpCisjZGVmaW5lIF9fYmUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KSAoX19iZTE2KSAoeCkpCiAjZGVmaW5lIF9fY3B1X3RvX2xlNjRzKHgpIF9fc3dhYjY0cygoeCkpCiAjZGVmaW5lIF9fbGU2NF90b19jcHVzKHgpIF9fc3dhYjY0cygoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzEsMTEgKzcxLDExIEBACiAjZGVmaW5lIF9fY3B1X3RvX2xlMTZzKHgpIF9fc3dhYjE2cygoeCkpCiAjZGVmaW5lIF9fbGUxNl90b19jcHVzKHgpIF9fc3dhYjE2cygoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTY0cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19iZTY0X3RvX2NwdXMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCi0jZGVmaW5lIF9fY3B1X3RvX2JlMzJzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQotI2RlZmluZSBfX2JlMzJfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgX19jcHVfdG9fYmU2NHMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fYmU2NF90b19jcHVzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQorI2RlZmluZSBfX2NwdV90b19iZTMycyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKKyNkZWZpbmUgX19iZTMyX3RvX2NwdXMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTE2cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19iZTE2X3RvX2NwdXMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCisjZGVmaW5lIF9fY3B1X3RvX2JlMTZzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQorI2RlZmluZSBfX2JlMTZfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ieXRlb3JkZXIvbGl0dGxlX2VuZGlhbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ieXRlb3JkZXIvbGl0dGxlX2VuZGlhbi5oCmluZGV4IGY5NTQzZDQuLjY4NGVlNWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnl0ZW9yZGVyL2xpdHRsZV9lbmRpYW4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9saXR0bGVfZW5kaWFuLmgKQEAgLTI4LDQ4ICsyOCw0OCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L3N3YWIuaD4KLSNkZWZpbmUgX19jb25zdGFudF9odG9ubCh4KSAoKF9fZm9yY2UgX19iZTMyKV9fX2NvbnN0YW50X3N3YWIzMigoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X250b2hsKHgpIF9fX2NvbnN0YW50X3N3YWIzMigoX19mb3JjZSBfX2JlMzIpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2h0b25sKHgpICgoX19mb3JjZSBfX2JlMzIpIF9fX2NvbnN0YW50X3N3YWIzMigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X250b2hsKHgpIF9fX2NvbnN0YW50X3N3YWIzMigoX19mb3JjZSBfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfaHRvbnMoeCkgKChfX2ZvcmNlIF9fYmUxNilfX19jb25zdGFudF9zd2FiMTYoKHgpKSkKLSNkZWZpbmUgX19jb25zdGFudF9udG9ocyh4KSBfX19jb25zdGFudF9zd2FiMTYoKF9fZm9yY2UgX19iZTE2KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KShfX3U2NCkoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbGU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KShfX2xlNjQpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2h0b25zKHgpICgoX19mb3JjZSBfX2JlMTYpIF9fX2NvbnN0YW50X3N3YWIxNigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X250b2hzKHgpIF9fX2NvbnN0YW50X3N3YWIxNigoX19mb3JjZSBfX2JlMTYpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KSAoX191NjQpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9sZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpIChfX2xlNjQpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMikoX191MzIpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2xlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikoX19sZTMyKSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGUxNih4KSAoKF9fZm9yY2UgX19sZTE2KShfX3UxNikoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbGUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KShfX2xlMTYpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTMyKHgpICgoX19mb3JjZSBfX2xlMzIpIChfX3UzMikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2xlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikgKF9fbGUzMikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpIChfX3UxNikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2xlMTZfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UxNikgKF9fbGUxNikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KV9fX2NvbnN0YW50X3N3YWI2NCgoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X2JlNjRfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWI2NCgoX19mb3JjZSBfX3U2NCkoX19iZTY0KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKV9fX2NvbnN0YW50X3N3YWIzMigoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X2JlMzJfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIzMigoX19mb3JjZSBfX3UzMikoX19iZTMyKSh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KSBfX19jb25zdGFudF9zd2FiNjQoKHgpKSkKKyNkZWZpbmUgX19jb25zdGFudF9iZTY0X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiNjQoKF9fZm9yY2UgX191NjQpIChfX2JlNjQpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKSBfX19jb25zdGFudF9zd2FiMzIoKHgpKSkKKyNkZWZpbmUgX19jb25zdGFudF9iZTMyX3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiMzIoKF9fZm9yY2UgX191MzIpIChfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNilfX19jb25zdGFudF9zd2FiMTYoKHgpKSkKLSNkZWZpbmUgX19jb25zdGFudF9iZTE2X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiMTYoKF9fZm9yY2UgX191MTYpKF9fYmUxNikoeCkpCi0jZGVmaW5lIF9fY3B1X3RvX2xlNjQoeCkgKChfX2ZvcmNlIF9fbGU2NCkoX191NjQpKHgpKQotI2RlZmluZSBfX2xlNjRfdG9fY3B1KHgpICgoX19mb3JjZSBfX3U2NCkoX19sZTY0KSh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmUxNih4KSAoKF9fZm9yY2UgX19iZTE2KSBfX19jb25zdGFudF9zd2FiMTYoKHgpKSkKKyNkZWZpbmUgX19jb25zdGFudF9iZTE2X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiMTYoKF9fZm9yY2UgX191MTYpIChfX2JlMTYpICh4KSkKKyNkZWZpbmUgX19jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KSAoX191NjQpICh4KSkKKyNkZWZpbmUgX19sZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpIChfX2xlNjQpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMikoX191MzIpKHgpKQotI2RlZmluZSBfX2xlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikoX19sZTMyKSh4KSkKLSNkZWZpbmUgX19jcHVfdG9fbGUxNih4KSAoKF9fZm9yY2UgX19sZTE2KShfX3UxNikoeCkpCi0jZGVmaW5lIF9fbGUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KShfX2xlMTYpKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTMyKHgpICgoX19mb3JjZSBfX2xlMzIpIChfX3UzMikgKHgpKQorI2RlZmluZSBfX2xlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikgKF9fbGUzMikgKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpIChfX3UxNikgKHgpKQorI2RlZmluZSBfX2xlMTZfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UxNikgKF9fbGUxNikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KV9fc3dhYjY0KCh4KSkpCi0jZGVmaW5lIF9fYmU2NF90b19jcHUoeCkgX19zd2FiNjQoKF9fZm9yY2UgX191NjQpKF9fYmU2NCkoeCkpCi0jZGVmaW5lIF9fY3B1X3RvX2JlMzIoeCkgKChfX2ZvcmNlIF9fYmUzMilfX3N3YWIzMigoeCkpKQotI2RlZmluZSBfX2JlMzJfdG9fY3B1KHgpIF9fc3dhYjMyKChfX2ZvcmNlIF9fdTMyKShfX2JlMzIpKHgpKQorI2RlZmluZSBfX2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpIF9fc3dhYjY0KCh4KSkpCisjZGVmaW5lIF9fYmU2NF90b19jcHUoeCkgX19zd2FiNjQoKF9fZm9yY2UgX191NjQpIChfX2JlNjQpICh4KSkKKyNkZWZpbmUgX19jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKSBfX3N3YWIzMigoeCkpKQorI2RlZmluZSBfX2JlMzJfdG9fY3B1KHgpIF9fc3dhYjMyKChfX2ZvcmNlIF9fdTMyKSAoX19iZTMyKSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpX19zd2FiMTYoKHgpKSkKLSNkZWZpbmUgX19iZTE2X3RvX2NwdSh4KSBfX3N3YWIxNigoX19mb3JjZSBfX3UxNikoX19iZTE2KSh4KSkKLSNkZWZpbmUgX19jcHVfdG9fbGU2NHMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCi0jZGVmaW5lIF9fbGU2NF90b19jcHVzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQorI2RlZmluZSBfX2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpIF9fc3dhYjE2KCh4KSkpCisjZGVmaW5lIF9fYmUxNl90b19jcHUoeCkgX19zd2FiMTYoKF9fZm9yY2UgX191MTYpIChfX2JlMTYpICh4KSkKKyNkZWZpbmUgX19jcHVfdG9fbGU2NHMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fbGU2NF90b19jcHVzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jcHVfdG9fbGUzMnMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCi0jZGVmaW5lIF9fbGUzMl90b19jcHVzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQotI2RlZmluZSBfX2NwdV90b19sZTE2cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19sZTE2X3RvX2NwdXMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCisjZGVmaW5lIF9fY3B1X3RvX2xlMzJzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQorI2RlZmluZSBfX2xlMzJfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKKyNkZWZpbmUgX19jcHVfdG9fbGUxNnMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fbGUxNl90b19jcHVzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19jcHVfdG9fYmU2NHMoeCkgX19zd2FiNjRzKCh4KSkKICNkZWZpbmUgX19iZTY0X3RvX2NwdXMoeCkgX19zd2FiNjRzKCh4KSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FpZi9jYWlmX3NvY2tldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2NhaWZfc29ja2V0LmgKaW5kZXggNzIxODg2Ni4uODc5NjIzYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2NhaWZfc29ja2V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2NhaWZfc29ja2V0LmgKQEAgLTIyLDc5ICsyMiw3OSBAQAogI2luY2x1ZGUgPGxpbnV4L3NvY2tldC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY2FpZl9saW5rX3NlbGVjdG9yIHsKLSBDQUlGX0xJTktfSElHSF9CQU5EVywKLSBDQUlGX0xJTktfTE9XX0xBVEVOQ1kKKyAgQ0FJRl9MSU5LX0hJR0hfQkFORFcsCisgIENBSUZfTElOS19MT1dfTEFURU5DWQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNhaWZfY2hhbm5lbF9wcmlvcml0eSB7Ci0gQ0FJRl9QUklPX01JTiA9IDB4MDEsCi0gQ0FJRl9QUklPX0xPVyA9IDB4MDQsCi0gQ0FJRl9QUklPX05PUk1BTCA9IDB4MGYsCisgIENBSUZfUFJJT19NSU4gPSAweDAxLAorICBDQUlGX1BSSU9fTE9XID0gMHgwNCwKKyAgQ0FJRl9QUklPX05PUk1BTCA9IDB4MGYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENBSUZfUFJJT19ISUdIID0gMHgxNCwKLSBDQUlGX1BSSU9fTUFYID0gMHgxRgorICBDQUlGX1BSSU9fSElHSCA9IDB4MTQsCisgIENBSUZfUFJJT19NQVggPSAweDFGCiB9OwogZW51bSBjYWlmX3Byb3RvY29sX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDQUlGUFJPVE9fQVQsCi0gQ0FJRlBST1RPX0RBVEFHUkFNLAotIENBSUZQUk9UT19EQVRBR1JBTV9MT09QLAotIENBSUZQUk9UT19VVElMLAorICBDQUlGUFJPVE9fQVQsCisgIENBSUZQUk9UT19EQVRBR1JBTSwKKyAgQ0FJRlBST1RPX0RBVEFHUkFNX0xPT1AsCisgIENBSUZQUk9UT19VVElMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDQUlGUFJPVE9fUkZNLAotIENBSUZQUk9UT19ERUJVRywKLSBfQ0FJRlBST1RPX01BWAorICBDQUlGUFJPVE9fUkZNLAorICBDQUlGUFJPVE9fREVCVUcsCisgIF9DQUlGUFJPVE9fTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FJRlBST1RPX01BWCBfQ0FJRlBST1RPX01BWAogZW51bSBjYWlmX2F0X3R5cGUgewotIENBSUZfQVRUWVBFX1BMQUlOID0gMgorICBDQUlGX0FUVFlQRV9QTEFJTiA9IDIKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjYWlmX2RlYnVnX3R5cGUgewotIENBSUZfREVCVUdfVFJBQ0VfSU5URVJBQ1RJVkUgPSAwLAotIENBSUZfREVCVUdfVFJBQ0UsCi0gQ0FJRl9ERUJVR19JTlRFUkFDVElWRSwKKyAgQ0FJRl9ERUJVR19UUkFDRV9JTlRFUkFDVElWRSA9IDAsCisgIENBSUZfREVCVUdfVFJBQ0UsCisgIENBSUZfREVCVUdfSU5URVJBQ1RJVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gY2FpZl9kZWJ1Z19zZXJ2aWNlIHsKLSBDQUlGX1JBRElPX0RFQlVHX1NFUlZJQ0UgPSAxLAotIENBSUZfQVBQX0RFQlVHX1NFUlZJQ0UKKyAgQ0FJRl9SQURJT19ERUJVR19TRVJWSUNFID0gMSwKKyAgQ0FJRl9BUFBfREVCVUdfU0VSVklDRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc29ja2FkZHJfY2FpZiB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3QgZmFtaWx5OwotIHVuaW9uIHsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3QgZmFtaWx5OworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCB0eXBlOwotIH0gYXQ7Ci0gc3RydWN0IHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCB0eXBlOworICAgIH0gYXQ7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzZXJ2aWNlWzE2XTsKLSB9IHV0aWw7Ci0gdW5pb24gewotIF9fdTMyIGNvbm5lY3Rpb25faWQ7CisgICAgICBjaGFyIHNlcnZpY2VbMTZdOworICAgIH0gdXRpbDsKKyAgICB1bmlvbiB7CisgICAgICBfX3UzMiBjb25uZWN0aW9uX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5zYXBpOwotIH0gZGdtOwotIHN0cnVjdCB7Ci0gX191MzIgY29ubmVjdGlvbl9pZDsKKyAgICAgIF9fdTggbnNhcGk7CisgICAgfSBkZ207CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGNvbm5lY3Rpb25faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdm9sdW1lWzE2XTsKLSB9IHJmbTsKLSBzdHJ1Y3QgewotIF9fdTggdHlwZTsKKyAgICAgIGNoYXIgdm9sdW1lWzE2XTsKKyAgICB9IHJmbTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlcnZpY2U7Ci0gfSBkYmc7Ci0gfSB1OworICAgICAgX191OCBzZXJ2aWNlOworICAgIH0gZGJnOworICB9IHU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY2FpZl9zb2NrZXRfb3B0cyB7Ci0gQ0FJRlNPX0xJTktfU0VMRUNUID0gMTI3LAotIENBSUZTT19SRVFfUEFSQU0gPSAxMjgsCi0gQ0FJRlNPX1JTUF9QQVJBTSA9IDEyOSwKKyAgQ0FJRlNPX0xJTktfU0VMRUNUID0gMTI3LAorICBDQUlGU09fUkVRX1BBUkFNID0gMTI4LAorICBDQUlGU09fUlNQX1BBUkFNID0gMTI5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FpZi9pZl9jYWlmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhaWYvaWZfY2FpZi5oCmluZGV4IGEyMzdkMGIuLjI5MDRlYWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FpZi9pZl9jYWlmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2lmX2NhaWYuaApAQCAtMjMsMTMgKzIzLDEzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3NvY2tldC5oPgogZW51bSBpZmxhX2NhaWYgewotIF9fSUZMQV9DQUlGX1VOU1BFQywKLSBJRkxBX0NBSUZfSVBWNF9DT05OSUQsCisgIF9fSUZMQV9DQUlGX1VOU1BFQywKKyAgSUZMQV9DQUlGX0lQVjRfQ09OTklELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0NBSUZfSVBWNl9DT05OSUQsCi0gSUZMQV9DQUlGX0xPT1BCQUNLLAotIF9fSUZMQV9DQUlGX01BWAorICBJRkxBX0NBSUZfSVBWNl9DT05OSUQsCisgIElGTEFfQ0FJRl9MT09QQkFDSywKKyAgX19JRkxBX0NBSUZfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZMQV9DQUlGX01BWCAoX19JRkxBX0NBSUZfTUFYLTEpCisjZGVmaW5lIElGTEFfQ0FJRl9NQVggKF9fSUZMQV9DQUlGX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi5oCmluZGV4IDk1NDliYmYuLjRjNGYyYzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4uaApAQCAtMTYsOCArMTYsOCBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotI2lmbmRlZiBDQU5fSAotI2RlZmluZSBDQU5fSAorI2lmbmRlZiBfVUFQSV9DQU5fSAorI2RlZmluZSBfVUFQSV9DQU5fSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvc29ja2V0Lmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzksMjIgKzM5LDIyIEBACiAjZGVmaW5lIENBTkZEX01BWF9ETEMgMTUKICNkZWZpbmUgQ0FORkRfTUFYX0RMRU4gNjQKIHN0cnVjdCBjYW5fZnJhbWUgewotIGNhbmlkX3QgY2FuX2lkOworICBjYW5pZF90IGNhbl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjYW5fZGxjOwotIF9fdTggZGF0YVtDQU5fTUFYX0RMRU5dIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191OCBjYW5fZGxjOworICBfX3U4IGRhdGFbQ0FOX01BWF9ETEVOXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiB9OwogI2RlZmluZSBDQU5GRF9CUlMgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FORkRfRVNJIDB4MDIKIHN0cnVjdCBjYW5mZF9mcmFtZSB7Ci0gY2FuaWRfdCBjYW5faWQ7Ci0gX191OCBsZW47CisgIGNhbmlkX3QgY2FuX2lkOworICBfX3U4IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKLSBfX3U4IF9fcmVzMDsKLSBfX3U4IF9fcmVzMTsKLSBfX3U4IGRhdGFbQ0FORkRfTUFYX0RMRU5dIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191OCBmbGFnczsKKyAgX191OCBfX3JlczA7CisgIF9fdTggX19yZXMxOworICBfX3U4IGRhdGFbQ0FORkRfTUFYX0RMRU5dIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDQU5fTVRVIChzaXplb2Yoc3RydWN0IGNhbl9mcmFtZSkpCkBAIC03MSwxOCArNzEsMjAgQEAKICNkZWZpbmUgU09MX0NBTl9CQVNFIDEwMAogc3RydWN0IHNvY2thZGRyX2NhbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IGNhbl9mYW1pbHk7Ci0gaW50IGNhbl9pZmluZGV4OwotIHVuaW9uIHsKLSBzdHJ1Y3QgeyBjYW5pZF90IHJ4X2lkLCB0eF9pZDsgfSB0cDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3QgY2FuX2ZhbWlseTsKKyAgaW50IGNhbl9pZmluZGV4OworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBjYW5fYWRkcjsKKyAgICAgIGNhbmlkX3QgcnhfaWQsIHR4X2lkOworICAgIH0gdHA7CisgIH0gY2FuX2FkZHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjYW5fZmlsdGVyIHsKLSBjYW5pZF90IGNhbl9pZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2FuaWRfdCBjYW5fbWFzazsKKyAgY2FuaWRfdCBjYW5faWQ7CisgIGNhbmlkX3QgY2FuX21hc2s7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FOX0lOVl9GSUxURVIgMHgyMDAwMDAwMFUKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2JjbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vYmNtLmgKaW5kZXggZmNhMTIzMi4uMjVkNzFlOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vYmNtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vYmNtLmgKQEAgLTE2LDM4ICsxNiwzOCBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotI2lmbmRlZiBDQU5fQkNNX0gKLSNkZWZpbmUgQ0FOX0JDTV9ICisjaWZuZGVmIF9VQVBJX0NBTl9CQ01fSAorI2RlZmluZSBfVUFQSV9DQU5fQkNNX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L2Nhbi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBiY21fbXNnX2hlYWQgewotIF9fdTMyIG9wY29kZTsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBjb3VudDsKKyAgX191MzIgb3Bjb2RlOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1ldmFsIGl2YWwxLCBpdmFsMjsKLSBjYW5pZF90IGNhbl9pZDsKLSBfX3UzMiBuZnJhbWVzOwotIHN0cnVjdCBjYW5fZnJhbWUgZnJhbWVzWzBdOworICBzdHJ1Y3QgdGltZXZhbCBpdmFsMSwgaXZhbDI7CisgIGNhbmlkX3QgY2FuX2lkOworICBfX3UzMiBuZnJhbWVzOworICBzdHJ1Y3QgY2FuX2ZyYW1lIGZyYW1lc1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVFhfU0VUVVAgPSAxLAotIFRYX0RFTEVURSwKKyAgVFhfU0VUVVAgPSAxLAorICBUWF9ERUxFVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRYX1JFQUQsCi0gVFhfU0VORCwKLSBSWF9TRVRVUCwKLSBSWF9ERUxFVEUsCisgIFRYX1JFQUQsCisgIFRYX1NFTkQsCisgIFJYX1NFVFVQLAorICBSWF9ERUxFVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJYX1JFQUQsCi0gVFhfU1RBVFVTLAotIFRYX0VYUElSRUQsCi0gUlhfU1RBVFVTLAorICBSWF9SRUFELAorICBUWF9TVEFUVVMsCisgIFRYX0VYUElSRUQsCisgIFJYX1NUQVRVUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlhfVElNRU9VVCwKLSBSWF9DSEFOR0VECisgIFJYX1RJTUVPVVQsCisgIFJYX0NIQU5HRUQKIH07CiAjZGVmaW5lIFNFVFRJTUVSIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2Vycm9yLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9lcnJvci5oCmluZGV4IDI0MzZhY2UuLjQ2YWY3NTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2Vycm9yLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZXJyb3IuaApAQCAtMTYsOCArMTYsOCBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotI2lmbmRlZiBDQU5fRVJST1JfSAotI2RlZmluZSBDQU5fRVJST1JfSAorI2lmbmRlZiBfVUFQSV9DQU5fRVJST1JfSAorI2RlZmluZSBfVUFQSV9DQU5fRVJST1JfSAogI2RlZmluZSBDQU5fRVJSX0RMQyA4CiAjZGVmaW5lIENBTl9FUlJfVFhfVElNRU9VVCAweDAwMDAwMDAxVQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2d3LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9ndy5oCmluZGV4IGRkODBkNDguLjM3NzAzZmUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2d3LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZ3cuaApAQCAtMTYsNDQgKzE2LDQ0IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaWZuZGVmIENBTl9HV19ICi0jZGVmaW5lIENBTl9HV19ICisjaWZuZGVmIF9VQVBJX0NBTl9HV19ICisjZGVmaW5lIF9VQVBJX0NBTl9HV19ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9jYW4uaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcnRjYW5tc2cgewotIF9fdTggY2FuX2ZhbWlseTsKLSBfX3U4IGd3dHlwZTsKLSBfX3UxNiBmbGFnczsKKyAgX191OCBjYW5fZmFtaWx5OworICBfX3U4IGd3dHlwZTsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIENHV19UWVBFX1VOU1BFQywKLSBDR1dfVFlQRV9DQU5fQ0FOLAorICBDR1dfVFlQRV9VTlNQRUMsCisgIENHV19UWVBFX0NBTl9DQU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ0dXX1RZUEVfTUFYCisgIF9fQ0dXX1RZUEVfTUFYCiB9OwogI2RlZmluZSBDR1dfVFlQRV9NQVggKF9fQ0dXX1RZUEVfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1dfVU5TUEVDLAotIENHV19NT0RfQU5ELAotIENHV19NT0RfT1IsCi0gQ0dXX01PRF9YT1IsCisgIENHV19VTlNQRUMsCisgIENHV19NT0RfQU5ELAorICBDR1dfTU9EX09SLAorICBDR1dfTU9EX1hPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0dXX01PRF9TRVQsCi0gQ0dXX0NTX1hPUiwKLSBDR1dfQ1NfQ1JDOCwKLSBDR1dfSEFORExFRCwKKyAgQ0dXX01PRF9TRVQsCisgIENHV19DU19YT1IsCisgIENHV19DU19DUkM4LAorICBDR1dfSEFORExFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0dXX0RST1BQRUQsCi0gQ0dXX1NSQ19JRiwKLSBDR1dfRFNUX0lGLAotIENHV19GSUxURVIsCisgIENHV19EUk9QUEVELAorICBDR1dfU1JDX0lGLAorICBDR1dfRFNUX0lGLAorICBDR1dfRklMVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1dfREVMRVRFRCwKLSBDR1dfTElNX0hPUFMsCi0gX19DR1dfTUFYCisgIENHV19ERUxFVEVELAorICBDR1dfTElNX0hPUFMsCisgIF9fQ0dXX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENHV19NQVggKF9fQ0dXX01BWCAtIDEpCkBAIC02OSw0MSArNjksNDEgQEAKICNkZWZpbmUgQ0dXX0ZSQU1FX01PRFMgMwogI2RlZmluZSBNQVhfTU9ERlVOQ1RJT05TIChDR1dfTU9EX0ZVTkNTICogQ0dXX0ZSQU1FX01PRFMpCiBzdHJ1Y3QgY2d3X2ZyYW1lX21vZCB7Ci0gc3RydWN0IGNhbl9mcmFtZSBjZjsKKyAgc3RydWN0IGNhbl9mcmFtZSBjZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtb2R0eXBlOworICBfX3U4IG1vZHR5cGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBDR1dfTU9EQVRUUl9MRU4gc2l6ZW9mKHN0cnVjdCBjZ3dfZnJhbWVfbW9kKQogc3RydWN0IGNnd19jc3VtX3hvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczggZnJvbV9pZHg7Ci0gX19zOCB0b19pZHg7Ci0gX19zOCByZXN1bHRfaWR4OwotIF9fdTggaW5pdF94b3JfdmFsOworICBfX3M4IGZyb21faWR4OworICBfX3M4IHRvX2lkeDsKKyAgX19zOCByZXN1bHRfaWR4OworICBfX3U4IGluaXRfeG9yX3ZhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGNnd19jc3VtX2NyYzggewotIF9fczggZnJvbV9pZHg7Ci0gX19zOCB0b19pZHg7CisgIF9fczggZnJvbV9pZHg7CisgIF9fczggdG9faWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M4IHJlc3VsdF9pZHg7Ci0gX191OCBpbml0X2NyY192YWw7Ci0gX191OCBmaW5hbF94b3JfdmFsOwotIF9fdTggY3JjdGFiWzI1Nl07CisgIF9fczggcmVzdWx0X2lkeDsKKyAgX191OCBpbml0X2NyY192YWw7CisgIF9fdTggZmluYWxfeG9yX3ZhbDsKKyAgX191OCBjcmN0YWJbMjU2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcm9maWxlOwotIF9fdTggcHJvZmlsZV9kYXRhWzIwXTsKKyAgX191OCBwcm9maWxlOworICBfX3U4IHByb2ZpbGVfZGF0YVsyMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBDR1dfQ1NfWE9SX0xFTiBzaXplb2Yoc3RydWN0IGNnd19jc3VtX3hvcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENHV19DU19DUkM4X0xFTiBzaXplb2Yoc3RydWN0IGNnd19jc3VtX2NyYzgpCiBlbnVtIHsKLSBDR1dfQ1JDOFBSRl9VTlNQRUMsCi0gQ0dXX0NSQzhQUkZfMVU4LAorICBDR1dfQ1JDOFBSRl9VTlNQRUMsCisgIENHV19DUkM4UFJGXzFVOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0dXX0NSQzhQUkZfMTZVOCwKLSBDR1dfQ1JDOFBSRl9TRkZJRF9YT1IsCi0gX19DR1dfQ1JDOFBSRl9NQVgKKyAgQ0dXX0NSQzhQUkZfMTZVOCwKKyAgQ0dXX0NSQzhQUkZfU0ZGSURfWE9SLAorICBfX0NHV19DUkM4UFJGX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENHV19DUkM4UFJGX01BWCAoX19DR1dfQ1JDOFBSRl9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vbmV0bGluay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vbmV0bGluay5oCmluZGV4IGRmOGExOWMuLmExYzMxNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL25ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9uZXRsaW5rLmgKQEAgLTE2LDU5ICsxNiw1OSBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotI2lmbmRlZiBDQU5fTkVUTElOS19ICi0jZGVmaW5lIENBTl9ORVRMSU5LX0gKKyNpZm5kZWYgX1VBUElfQ0FOX05FVExJTktfSAorI2RlZmluZSBfVUFQSV9DQU5fTkVUTElOS19ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBjYW5fYml0dGltaW5nIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYml0cmF0ZTsKLSBfX3UzMiBzYW1wbGVfcG9pbnQ7Ci0gX191MzIgdHE7Ci0gX191MzIgcHJvcF9zZWc7CisgIF9fdTMyIGJpdHJhdGU7CisgIF9fdTMyIHNhbXBsZV9wb2ludDsKKyAgX191MzIgdHE7CisgIF9fdTMyIHByb3Bfc2VnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwaGFzZV9zZWcxOwotIF9fdTMyIHBoYXNlX3NlZzI7Ci0gX191MzIgc2p3OwotIF9fdTMyIGJycDsKKyAgX191MzIgcGhhc2Vfc2VnMTsKKyAgX191MzIgcGhhc2Vfc2VnMjsKKyAgX191MzIgc2p3OworICBfX3UzMiBicnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjYW5fYml0dGltaW5nX2NvbnN0IHsKLSBjaGFyIG5hbWVbMTZdOwotIF9fdTMyIHRzZWcxX21pbjsKKyAgY2hhciBuYW1lWzE2XTsKKyAgX191MzIgdHNlZzFfbWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0c2VnMV9tYXg7Ci0gX191MzIgdHNlZzJfbWluOwotIF9fdTMyIHRzZWcyX21heDsKLSBfX3UzMiBzandfbWF4OworICBfX3UzMiB0c2VnMV9tYXg7CisgIF9fdTMyIHRzZWcyX21pbjsKKyAgX191MzIgdHNlZzJfbWF4OworICBfX3UzMiBzandfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBicnBfbWluOwotIF9fdTMyIGJycF9tYXg7Ci0gX191MzIgYnJwX2luYzsKKyAgX191MzIgYnJwX21pbjsKKyAgX191MzIgYnJwX21heDsKKyAgX191MzIgYnJwX2luYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNhbl9jbG9jayB7Ci0gX191MzIgZnJlcTsKKyAgX191MzIgZnJlcTsKIH07CiBlbnVtIGNhbl9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENBTl9TVEFURV9FUlJPUl9BQ1RJVkUgPSAwLAotIENBTl9TVEFURV9FUlJPUl9XQVJOSU5HLAotIENBTl9TVEFURV9FUlJPUl9QQVNTSVZFLAotIENBTl9TVEFURV9CVVNfT0ZGLAorICBDQU5fU1RBVEVfRVJST1JfQUNUSVZFID0gMCwKKyAgQ0FOX1NUQVRFX0VSUk9SX1dBUk5JTkcsCisgIENBTl9TVEFURV9FUlJPUl9QQVNTSVZFLAorICBDQU5fU1RBVEVfQlVTX09GRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0FOX1NUQVRFX1NUT1BQRUQsCi0gQ0FOX1NUQVRFX1NMRUVQSU5HLAotIENBTl9TVEFURV9NQVgKKyAgQ0FOX1NUQVRFX1NUT1BQRUQsCisgIENBTl9TVEFURV9TTEVFUElORywKKyAgQ0FOX1NUQVRFX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2FuX2JlcnJfY291bnRlciB7Ci0gX191MTYgdHhlcnI7Ci0gX191MTYgcnhlcnI7CisgIF9fdTE2IHR4ZXJyOworICBfX3UxNiByeGVycjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNhbl9jdHJsbW9kZSB7Ci0gX191MzIgbWFzazsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgbWFzazsKKyAgX191MzIgZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FOX0NUUkxNT0RFX0xPT1BCQUNLIDB4MDEKQEAgLTc3LDMwICs3NywzNyBAQAogI2RlZmluZSBDQU5fQ1RSTE1PREVfT05FX1NIT1QgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FOX0NUUkxNT0RFX0JFUlJfUkVQT1JUSU5HIDB4MTAKKyNkZWZpbmUgQ0FOX0NUUkxNT0RFX0ZEIDB4MjAKKyNkZWZpbmUgQ0FOX0NUUkxNT0RFX1BSRVNVTUVfQUNLIDB4NDAKKyNkZWZpbmUgQ0FOX0NUUkxNT0RFX0ZEX05PTl9JU08gMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjYW5fZGV2aWNlX3N0YXRzIHsKLSBfX3UzMiBidXNfZXJyb3I7Ci0gX191MzIgZXJyb3Jfd2FybmluZzsKKyAgX191MzIgYnVzX2Vycm9yOworICBfX3UzMiBlcnJvcl93YXJuaW5nOworICBfX3UzMiBlcnJvcl9wYXNzaXZlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlcnJvcl9wYXNzaXZlOwotIF9fdTMyIGJ1c19vZmY7Ci0gX191MzIgYXJiaXRyYXRpb25fbG9zdDsKLSBfX3UzMiByZXN0YXJ0czsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJ1c19vZmY7CisgIF9fdTMyIGFyYml0cmF0aW9uX2xvc3Q7CisgIF9fdTMyIHJlc3RhcnRzOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJRkxBX0NBTl9VTlNQRUMsCi0gSUZMQV9DQU5fQklUVElNSU5HLAorICBJRkxBX0NBTl9VTlNQRUMsCisgIElGTEFfQ0FOX0JJVFRJTUlORywKKyAgSUZMQV9DQU5fQklUVElNSU5HX0NPTlNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0NBTl9CSVRUSU1JTkdfQ09OU1QsCi0gSUZMQV9DQU5fQ0xPQ0ssCi0gSUZMQV9DQU5fU1RBVEUsCi0gSUZMQV9DQU5fQ1RSTE1PREUsCisgIElGTEFfQ0FOX0NMT0NLLAorICBJRkxBX0NBTl9TVEFURSwKKyAgSUZMQV9DQU5fQ1RSTE1PREUsCisgIElGTEFfQ0FOX1JFU1RBUlRfTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQ0FOX1JFU1RBUlRfTVMsCi0gSUZMQV9DQU5fUkVTVEFSVCwKLSBJRkxBX0NBTl9CRVJSX0NPVU5URVIsCi0gX19JRkxBX0NBTl9NQVgKKyAgSUZMQV9DQU5fUkVTVEFSVCwKKyAgSUZMQV9DQU5fQkVSUl9DT1VOVEVSLAorICBJRkxBX0NBTl9EQVRBX0JJVFRJTUlORywKKyAgSUZMQV9DQU5fREFUQV9CSVRUSU1JTkdfQ09OU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lGTEFfQ0FOX01BWAogfTsKICNkZWZpbmUgSUZMQV9DQU5fTUFYIChfX0lGTEFfQ0FOX01BWCAtIDEpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9yYXcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL3Jhdy5oCmluZGV4IDlkNDBjOTAuLmE3MGQ4ODEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL3Jhdy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL3Jhdy5oCkBAIC0xNiwxOCArMTYsMTggQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNpZm5kZWYgQ0FOX1JBV19ICi0jZGVmaW5lIENBTl9SQVdfSAorI2lmbmRlZiBfVUFQSV9DQU5fUkFXX0gKKyNkZWZpbmUgX1VBUElfQ0FOX1JBV19ICiAjaW5jbHVkZSA8bGludXgvY2FuLmg+CiAjZGVmaW5lIFNPTF9DQU5fUkFXIChTT0xfQ0FOX0JBU0UgKyBDQU5fUkFXKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIENBTl9SQVdfRklMVEVSID0gMSwKLSBDQU5fUkFXX0VSUl9GSUxURVIsCi0gQ0FOX1JBV19MT09QQkFDSywKKyAgQ0FOX1JBV19GSUxURVIgPSAxLAorICBDQU5fUkFXX0VSUl9GSUxURVIsCisgIENBTl9SQVdfTE9PUEJBQ0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENBTl9SQVdfUkVDVl9PV05fTVNHUywKLSBDQU5fUkFXX0ZEX0ZSQU1FUywKKyAgQ0FOX1JBV19SRUNWX09XTl9NU0dTLAorICBDQU5fUkFXX0ZEX0ZSQU1FUywKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhcGFiaWxpdHkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oCmluZGV4IGMwYWI0ZDkuLjZjZWQ2ZTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oCkBAIC0yOSwxNiArMjksMTYgQEAKICNkZWZpbmUgX0xJTlVYX0NBUEFCSUxJVFlfVkVSU0lPTl8zIDB4MjAwODA1MjIKICNkZWZpbmUgX0xJTlVYX0NBUEFCSUxJVFlfVTMyU18zIDIKIHR5cGVkZWYgc3RydWN0IF9fdXNlcl9jYXBfaGVhZGVyX3N0cnVjdCB7Ci0gX191MzIgdmVyc2lvbjsKKyAgX191MzIgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBpZDsKLX0gX191c2VyICpjYXBfdXNlcl9oZWFkZXJfdDsKKyAgaW50IHBpZDsKK30gX191c2VyICogY2FwX3VzZXJfaGVhZGVyX3Q7CiB0eXBlZGVmIHN0cnVjdCBfX3VzZXJfY2FwX2RhdGFfc3RydWN0IHsKLSBfX3UzMiBlZmZlY3RpdmU7CisgIF9fdTMyIGVmZmVjdGl2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGVybWl0dGVkOwotIF9fdTMyIGluaGVyaXRhYmxlOwotfSBfX3VzZXIgKmNhcF91c2VyX2RhdGFfdDsKKyAgX191MzIgcGVybWl0dGVkOworICBfX3UzMiBpbmhlcml0YWJsZTsKK30gX191c2VyICogY2FwX3VzZXJfZGF0YV90OwogI2RlZmluZSBWRlNfQ0FQX1JFVklTSU9OX01BU0sgMHhGRjAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZTX0NBUF9SRVZJU0lPTl9TSElGVCAyNApAQCAtNDcsMjIgKzQ3LDIyIEBACiAjZGVmaW5lIFZGU19DQVBfUkVWSVNJT05fMSAweDAxMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRlNfQ0FQX1UzMl8xIDEKLSNkZWZpbmUgWEFUVFJfQ0FQU19TWl8xIChzaXplb2YoX19sZTMyKSooMSArIDIqVkZTX0NBUF9VMzJfMSkpCisjZGVmaW5lIFhBVFRSX0NBUFNfU1pfMSAoc2l6ZW9mKF9fbGUzMikgKiAoMSArIDIgKiBWRlNfQ0FQX1UzMl8xKSkKICNkZWZpbmUgVkZTX0NBUF9SRVZJU0lPTl8yIDB4MDIwMDAwMDAKICNkZWZpbmUgVkZTX0NBUF9VMzJfMiAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYQVRUUl9DQVBTX1NaXzIgKHNpemVvZihfX2xlMzIpKigxICsgMipWRlNfQ0FQX1UzMl8yKSkKKyNkZWZpbmUgWEFUVFJfQ0FQU19TWl8yIChzaXplb2YoX19sZTMyKSAqICgxICsgMiAqIFZGU19DQVBfVTMyXzIpKQogI2RlZmluZSBYQVRUUl9DQVBTX1NaIFhBVFRSX0NBUFNfU1pfMgogI2RlZmluZSBWRlNfQ0FQX1UzMiBWRlNfQ0FQX1UzMl8yCiAjZGVmaW5lIFZGU19DQVBfUkVWSVNJT04gVkZTX0NBUF9SRVZJU0lPTl8yCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZmc19jYXBfZGF0YSB7Ci0gX19sZTMyIG1hZ2ljX2V0YzsKLSBzdHJ1Y3QgewotIF9fbGUzMiBwZXJtaXR0ZWQ7CisgIF9fbGUzMiBtYWdpY19ldGM7CisgIHN0cnVjdCB7CisgICAgX19sZTMyIHBlcm1pdHRlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGluaGVyaXRhYmxlOwotIH0gZGF0YVtWRlNfQ0FQX1UzMl07CisgICAgX19sZTMyIGluaGVyaXRhYmxlOworICB9IGRhdGFbVkZTX0NBUF9VMzJdOwogfTsKICNkZWZpbmUgX0xJTlVYX0NBUEFCSUxJVFlfVkVSU0lPTiBfTElOVVhfQ0FQQUJJTElUWV9WRVJTSU9OXzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMTMsOSArMTEzLDExIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQVBfV0FLRV9BTEFSTSAzNQogI2RlZmluZSBDQVBfQkxPQ0tfU1VTUEVORCAzNgotI2RlZmluZSBDQVBfTEFTVF9DQVAgQ0FQX0JMT0NLX1NVU1BFTkQKLSNkZWZpbmUgY2FwX3ZhbGlkKHgpICgoeCkgPj0gMCAmJiAoeCkgPD0gQ0FQX0xBU1RfQ0FQKQorI2RlZmluZSBDQVBfQVVESVRfUkVBRCAzNworI2RlZmluZSBDQVBfTEFTVF9DQVAgQ0FQX0FVRElUX1JFQUQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIGNhcF92YWxpZCh4KSAoKHgpID49IDAgJiYgKHgpIDw9IENBUF9MQVNUX0NBUCkKICNkZWZpbmUgQ0FQX1RPX0lOREVYKHgpICgoeCkgPj4gNSkKICNkZWZpbmUgQ0FQX1RPX01BU0soeCkgKDEgPDwgKCh4KSAmIDMxKSkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FwaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBpLmgKaW5kZXggYTU2MjJlYS4uNDY0YzI2ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBpLmgKQEAgLTIzLDY3ICsyMyw2NyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9rZXJuZWxjYXBpLmg+CiB0eXBlZGVmIHN0cnVjdCBjYXBpX3JlZ2lzdGVyX3BhcmFtcyB7Ci0gX191MzIgbGV2ZWwzY250OwotIF9fdTMyIGRhdGFibGtjbnQ7CisgIF9fdTMyIGxldmVsM2NudDsKKyAgX191MzIgZGF0YWJsa2NudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0YWJsa2xlbjsKKyAgX191MzIgZGF0YWJsa2xlbjsKIH0gY2FwaV9yZWdpc3Rlcl9wYXJhbXM7Ci0jZGVmaW5lIENBUElfUkVHSVNURVIgX0lPVygnQycsMHgwMSxzdHJ1Y3QgY2FwaV9yZWdpc3Rlcl9wYXJhbXMpCisjZGVmaW5lIENBUElfUkVHSVNURVIgX0lPVygnQycsIDB4MDEsIHN0cnVjdCBjYXBpX3JlZ2lzdGVyX3BhcmFtcykKICNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfTEVOIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0dFVF9NQU5VRkFDVFVSRVIgX0lPV1IoJ0MnLDB4MDYsaW50KQorI2RlZmluZSBDQVBJX0dFVF9NQU5VRkFDVFVSRVIgX0lPV1IoJ0MnLCAweDA2LCBpbnQpCiB0eXBlZGVmIHN0cnVjdCBjYXBpX3ZlcnNpb24gewotIF9fdTMyIG1ham9ydmVyc2lvbjsKLSBfX3UzMiBtaW5vcnZlcnNpb247CisgIF9fdTMyIG1ham9ydmVyc2lvbjsKKyAgX191MzIgbWlub3J2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWpvcm1hbnV2ZXJzaW9uOwotIF9fdTMyIG1pbm9ybWFudXZlcnNpb247CisgIF9fdTMyIG1ham9ybWFudXZlcnNpb247CisgIF9fdTMyIG1pbm9ybWFudXZlcnNpb247CiB9IGNhcGlfdmVyc2lvbjsKLSNkZWZpbmUgQ0FQSV9HRVRfVkVSU0lPTiBfSU9XUignQycsMHgwNyxzdHJ1Y3QgY2FwaV92ZXJzaW9uKQorI2RlZmluZSBDQVBJX0dFVF9WRVJTSU9OIF9JT1dSKCdDJywgMHgwNywgc3RydWN0IGNhcGlfdmVyc2lvbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENBUElfU0VSSUFMX0xFTiA4Ci0jZGVmaW5lIENBUElfR0VUX1NFUklBTCBfSU9XUignQycsMHgwOCxpbnQpCisjZGVmaW5lIENBUElfR0VUX1NFUklBTCBfSU9XUignQycsIDB4MDgsIGludCkKIHR5cGVkZWYgc3RydWN0IGNhcGlfcHJvZmlsZSB7Ci0gX191MTYgbmNvbnRyb2xsZXI7CisgIF9fdTE2IG5jb250cm9sbGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBuYmNoYW5uZWw7Ci0gX191MzIgZ29wdGlvbnM7Ci0gX191MzIgc3VwcG9ydDE7Ci0gX191MzIgc3VwcG9ydDI7CisgIF9fdTE2IG5iY2hhbm5lbDsKKyAgX191MzIgZ29wdGlvbnM7CisgIF9fdTMyIHN1cHBvcnQxOworICBfX3UzMiBzdXBwb3J0MjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3VwcG9ydDM7Ci0gX191MzIgcmVzZXJ2ZWRbNl07Ci0gX191MzIgbWFudVs1XTsKKyAgX191MzIgc3VwcG9ydDM7CisgIF9fdTMyIHJlc2VydmVkWzZdOworICBfX3UzMiBtYW51WzVdOwogfSBjYXBpX3Byb2ZpbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0dFVF9QUk9GSUxFIF9JT1dSKCdDJywweDA5LHN0cnVjdCBjYXBpX3Byb2ZpbGUpCisjZGVmaW5lIENBUElfR0VUX1BST0ZJTEUgX0lPV1IoJ0MnLCAweDA5LCBzdHJ1Y3QgY2FwaV9wcm9maWxlKQogdHlwZWRlZiBzdHJ1Y3QgY2FwaV9tYW51ZmFjdHVyZXJfY21kIHsKLSB1bnNpZ25lZCBsb25nIGNtZDsKLSB2b2lkIF9fdXNlciAqZGF0YTsKKyAgdW5zaWduZWQgbG9uZyBjbWQ7CisgIHZvaWQgX191c2VyICogZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGNhcGlfbWFudWZhY3R1cmVyX2NtZDsKLSNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfQ01EIF9JT1dSKCdDJywweDIwLCBzdHJ1Y3QgY2FwaV9tYW51ZmFjdHVyZXJfY21kKQotI2RlZmluZSBDQVBJX0dFVF9FUlJDT0RFIF9JT1IoJ0MnLDB4MjEsIF9fdTE2KQotI2RlZmluZSBDQVBJX0lOU1RBTExFRCBfSU9SKCdDJywweDIyLCBfX3UxNikKKyNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfQ01EIF9JT1dSKCdDJywgMHgyMCwgc3RydWN0IGNhcGlfbWFudWZhY3R1cmVyX2NtZCkKKyNkZWZpbmUgQ0FQSV9HRVRfRVJSQ09ERSBfSU9SKCdDJywgMHgyMSwgX191MTYpCisjZGVmaW5lIENBUElfSU5TVEFMTEVEIF9JT1IoJ0MnLCAweDIyLCBfX3UxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuaW9uIGNhcGlfaW9jdGxfc3RydWN0IHsKLSBfX3UzMiBjb250cjsKLSBjYXBpX3JlZ2lzdGVyX3BhcmFtcyBycGFyYW1zOwotIF9fdTggbWFudWZhY3R1cmVyW0NBUElfTUFOVUZBQ1RVUkVSX0xFTl07CisgIF9fdTMyIGNvbnRyOworICBjYXBpX3JlZ2lzdGVyX3BhcmFtcyBycGFyYW1zOworICBfX3U4IG1hbnVmYWN0dXJlcltDQVBJX01BTlVGQUNUVVJFUl9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjYXBpX3ZlcnNpb24gdmVyc2lvbjsKLSBfX3U4IHNlcmlhbFtDQVBJX1NFUklBTF9MRU5dOwotIGNhcGlfcHJvZmlsZSBwcm9maWxlOwotIGNhcGlfbWFudWZhY3R1cmVyX2NtZCBjbWQ7CisgIGNhcGlfdmVyc2lvbiB2ZXJzaW9uOworICBfX3U4IHNlcmlhbFtDQVBJX1NFUklBTF9MRU5dOworICBjYXBpX3Byb2ZpbGUgcHJvZmlsZTsKKyAgY2FwaV9tYW51ZmFjdHVyZXJfY21kIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZXJyY29kZTsKKyAgX191MTYgZXJyY29kZTsKIH0gY2FwaV9pb2N0bF9zdHJ1Y3Q7CiAjZGVmaW5lIENBUElGTEFHX0hJR0hKQUNLSU5HIDB4MDAwMQotI2RlZmluZSBDQVBJX0dFVF9GTEFHUyBfSU9SKCdDJywweDIzLCB1bnNpZ25lZCkKKyNkZWZpbmUgQ0FQSV9HRVRfRkxBR1MgX0lPUignQycsIDB4MjMsIHVuc2lnbmVkKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9TRVRfRkxBR1MgX0lPUignQycsMHgyNCwgdW5zaWduZWQpCi0jZGVmaW5lIENBUElfQ0xSX0ZMQUdTIF9JT1IoJ0MnLDB4MjUsIHVuc2lnbmVkKQotI2RlZmluZSBDQVBJX05DQ0lfT1BFTkNPVU5UIF9JT1IoJ0MnLDB4MjYsIHVuc2lnbmVkKQotI2RlZmluZSBDQVBJX05DQ0lfR0VUVU5JVCBfSU9SKCdDJywweDI3LCB1bnNpZ25lZCkKKyNkZWZpbmUgQ0FQSV9TRVRfRkxBR1MgX0lPUignQycsIDB4MjQsIHVuc2lnbmVkKQorI2RlZmluZSBDQVBJX0NMUl9GTEFHUyBfSU9SKCdDJywgMHgyNSwgdW5zaWduZWQpCisjZGVmaW5lIENBUElfTkNDSV9PUEVOQ09VTlQgX0lPUignQycsIDB4MjYsIHVuc2lnbmVkKQorI2RlZmluZSBDQVBJX05DQ0lfR0VUVU5JVCBfSU9SKCdDJywgMHgyNywgdW5zaWduZWQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NjaXNzX2RlZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfZGVmcy5oCmluZGV4IDBmYmE3NzIuLmFmMDc1ZjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfZGVmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfZGVmcy5oCkBAIC02Miw4NiArNjIsODYgQEAKICNwcmFnbWEgcGFjaygxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5pb24gX1NDU0kzQWRkcl9zdHJ1Y3QgewotIHN0cnVjdCB7Ci0gQllURSBEZXY7Ci0gQllURSBCdXM6NjsKKyAgc3RydWN0IHsKKyAgICBCWVRFIERldjsKKyAgICBCWVRFIEJ1cyA6IDY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgTW9kZToyOwotIH0gUGVyaXBEZXY7Ci0gc3RydWN0IHsKLSBCWVRFIERldkxTQjsKKyAgICBCWVRFIE1vZGUgOiAyOworICB9IFBlcmlwRGV2OworICBzdHJ1Y3QgeworICAgIEJZVEUgRGV2TFNCOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCWVRFIERldk1TQjo2OwotIEJZVEUgTW9kZToyOwotIH0gTG9nRGV2OwotIHN0cnVjdCB7CisgICAgQllURSBEZXZNU0IgOiA2OworICAgIEJZVEUgTW9kZSA6IDI7CisgIH0gTG9nRGV2OworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCWVRFIERldjo1OwotIEJZVEUgQnVzOjM7Ci0gQllURSBUYXJnOjY7Ci0gQllURSBNb2RlOjI7CisgICAgQllURSBEZXYgOiA1OworICAgIEJZVEUgQnVzIDogMzsKKyAgICBCWVRFIFRhcmcgOiA2OworICAgIEJZVEUgTW9kZSA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gTG9nVW5pdDsKKyAgfSBMb2dVbml0OwogfSBTQ1NJM0FkZHJfc3RydWN0OwogdHlwZWRlZiBzdHJ1Y3QgX1BoeXNEZXZBZGRyX3N0cnVjdCB7Ci0gRFdPUkQgVGFyZ2V0SWQ6MjQ7CisgIERXT1JEIFRhcmdldElkIDogMjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERXT1JEIEJ1czo2OwotIERXT1JEIE1vZGU6MjsKLSBTQ1NJM0FkZHJfc3RydWN0IFRhcmdldFsyXTsKKyAgRFdPUkQgQnVzIDogNjsKKyAgRFdPUkQgTW9kZSA6IDI7CisgIFNDU0kzQWRkcl9zdHJ1Y3QgVGFyZ2V0WzJdOwogfSBQaHlzRGV2QWRkcl9zdHJ1Y3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX0xvZ0RldkFkZHJfc3RydWN0IHsKLSBEV09SRCBWb2xJZDozMDsKLSBEV09SRCBNb2RlOjI7Ci0gQllURSByZXNlcnZlZFs0XTsKKyAgRFdPUkQgVm9sSWQgOiAzMDsKKyAgRFdPUkQgTW9kZSA6IDI7CisgIEJZVEUgcmVzZXJ2ZWRbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBMb2dEZXZBZGRyX3N0cnVjdDsKIHR5cGVkZWYgdW5pb24gX0xVTkFkZHJfc3RydWN0IHsKLSBCWVRFIEx1bkFkZHJCeXRlc1s4XTsKLSBTQ1NJM0FkZHJfc3RydWN0IFNDU0kzTHVuWzRdOworICBCWVRFIEx1bkFkZHJCeXRlc1s4XTsKKyAgU0NTSTNBZGRyX3N0cnVjdCBTQ1NJM0x1bls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUGh5c0RldkFkZHJfc3RydWN0IFBoeXNEZXY7Ci0gTG9nRGV2QWRkcl9zdHJ1Y3QgTG9nRGV2OworICBQaHlzRGV2QWRkcl9zdHJ1Y3QgUGh5c0RldjsKKyAgTG9nRGV2QWRkcl9zdHJ1Y3QgTG9nRGV2OwogfSBMVU5BZGRyX3N0cnVjdDsKIHR5cGVkZWYgc3RydWN0IF9SZXF1ZXN0QmxvY2tfc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBDREJMZW47Ci0gc3RydWN0IHsKLSBCWVRFIFR5cGU6MzsKLSBCWVRFIEF0dHJpYnV0ZTozOworICBCWVRFIENEQkxlbjsKKyAgc3RydWN0IHsKKyAgICBCWVRFIFR5cGUgOiAzOworICAgIEJZVEUgQXR0cmlidXRlIDogMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBEaXJlY3Rpb246MjsKLSB9IFR5cGU7Ci0gSFdPUkQgVGltZW91dDsKLSBCWVRFIENEQlsxNl07CisgICAgQllURSBEaXJlY3Rpb24gOiAyOworICB9IFR5cGU7CisgIEhXT1JEIFRpbWVvdXQ7CisgIEJZVEUgQ0RCWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IFJlcXVlc3RCbG9ja19zdHJ1Y3Q7Ci10eXBlZGVmIHVuaW9uIF9Nb3JlRXJySW5mb19zdHJ1Y3R7Ci0gc3RydWN0IHsKLSBCWVRFIFJlc2VydmVkWzNdOwordHlwZWRlZiB1bmlvbiBfTW9yZUVyckluZm9fc3RydWN0IHsKKyAgc3RydWN0IHsKKyAgICBCWVRFIFJlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCWVRFIFR5cGU7Ci0gRFdPUkQgRXJyb3JJbmZvOwotIH0gQ29tbW9uX0luZm87Ci0gc3RydWN0eworICAgIEJZVEUgVHlwZTsKKyAgICBEV09SRCBFcnJvckluZm87CisgIH0gQ29tbW9uX0luZm87CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgUmVzZXJ2ZWRbMl07Ci0gQllURSBvZmZlbnNlX3NpemU7Ci0gQllURSBvZmZlbnNlX251bTsKLSBEV09SRCBvZmZlbnNlX3ZhbHVlOworICAgIEJZVEUgUmVzZXJ2ZWRbMl07CisgICAgQllURSBvZmZlbnNlX3NpemU7CisgICAgQllURSBvZmZlbnNlX251bTsKKyAgICBEV09SRCBvZmZlbnNlX3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IEludmFsaWRfQ21kOworICB9IEludmFsaWRfQ21kOwogfSBNb3JlRXJySW5mb19zdHJ1Y3Q7CiB0eXBlZGVmIHN0cnVjdCBfRXJyb3JJbmZvX3N0cnVjdCB7Ci0gQllURSBTY3NpU3RhdHVzOworICBCWVRFIFNjc2lTdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgU2Vuc2VMZW47Ci0gSFdPUkQgQ29tbWFuZFN0YXR1czsKLSBEV09SRCBSZXNpZHVhbENudDsKLSBNb3JlRXJySW5mb19zdHJ1Y3QgTW9yZUVyckluZm87CisgIEJZVEUgU2Vuc2VMZW47CisgIEhXT1JEIENvbW1hbmRTdGF0dXM7CisgIERXT1JEIFJlc2lkdWFsQ250OworICBNb3JlRXJySW5mb19zdHJ1Y3QgTW9yZUVyckluZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgU2Vuc2VJbmZvW1NFTlNFSU5GT0JZVEVTXTsKKyAgQllURSBTZW5zZUluZm9bU0VOU0VJTkZPQllURVNdOwogfSBFcnJvckluZm9fc3RydWN0OwogI3ByYWdtYSBwYWNrKCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19pb2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19pb2N0bC5oCmluZGV4IDExMTkwYjkuLmFiNmUzMjUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NjaXNzX2lvY3RsLmgKQEAgLTIzLDc4ICsyMyw3NiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9jY2lzc19kZWZzLmg+CiAjZGVmaW5lIENDSVNTX0lPQ19NQUdJQyAnQicKLXR5cGVkZWYgc3RydWN0IF9jY2lzc19wY2lfaW5mb19zdHJ1Y3QKLXsKK3R5cGVkZWYgc3RydWN0IF9jY2lzc19wY2lfaW5mb19zdHJ1Y3QgeworICB1bnNpZ25lZCBjaGFyIGJ1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBidXM7Ci0gdW5zaWduZWQgY2hhciBkZXZfZm47Ci0gdW5zaWduZWQgc2hvcnQgZG9tYWluOwotIF9fdTMyIGJvYXJkX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciBkZXZfZm47CisgIHVuc2lnbmVkIHNob3J0IGRvbWFpbjsKKyAgX191MzIgYm9hcmRfaWQ7CiB9IGNjaXNzX3BjaV9pbmZvX3N0cnVjdDsKLXR5cGVkZWYgc3RydWN0IF9jY2lzc19jb2FsaW50X3N0cnVjdAotewotIF9fdTMyIGRlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKK3R5cGVkZWYgc3RydWN0IF9jY2lzc19jb2FsaW50X3N0cnVjdCB7CisgIF9fdTMyIGRlbGF5OworICBfX3UzMiBjb3VudDsKIH0gY2Npc3NfY29hbGludF9zdHJ1Y3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBjaGFyIE5vZGVOYW1lX3R5cGVbMTZdOwogdHlwZWRlZiBfX3UzMiBIZWFydGJlYXRfdHlwZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENJU1NfUEFSU0NTSVUyIDB4MDAwMQogI2RlZmluZSBDSVNTX1BBUkNTQ0lVMyAweDAwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENJU1NfRklCUkUxRyAweDAxMDAKICNkZWZpbmUgQ0lTU19GSUJSRTJHIDB4MDIwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgX191MzIgQnVzVHlwZXNfdHlwZTsKIHR5cGVkZWYgY2hhciBGaXJtd2FyZVZlcl90eXBlWzRdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgX191MzIgRHJpdmVyVmVyX3R5cGU7CiAjZGVmaW5lIE1BWF9LTUFMTE9DX1NJWkUgMTI4MDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX0lPQ1RMX0NvbW1hbmRfc3RydWN0IHsKLSBMVU5BZGRyX3N0cnVjdCBMVU5faW5mbzsKLSBSZXF1ZXN0QmxvY2tfc3RydWN0IFJlcXVlc3Q7Ci0gRXJyb3JJbmZvX3N0cnVjdCBlcnJvcl9pbmZvOworICBMVU5BZGRyX3N0cnVjdCBMVU5faW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gV09SRCBidWZfc2l6ZTsKLSBCWVRFIF9fdXNlciAqYnVmOworICBSZXF1ZXN0QmxvY2tfc3RydWN0IFJlcXVlc3Q7CisgIEVycm9ySW5mb19zdHJ1Y3QgZXJyb3JfaW5mbzsKKyAgV09SRCBidWZfc2l6ZTsKKyAgQllURSBfX3VzZXIgKiBidWY7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBJT0NUTF9Db21tYW5kX3N0cnVjdDsKIHR5cGVkZWYgc3RydWN0IF9CSUdfSU9DVExfQ29tbWFuZF9zdHJ1Y3QgeworICBMVU5BZGRyX3N0cnVjdCBMVU5faW5mbzsKKyAgUmVxdWVzdEJsb2NrX3N0cnVjdCBSZXF1ZXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMVU5BZGRyX3N0cnVjdCBMVU5faW5mbzsKLSBSZXF1ZXN0QmxvY2tfc3RydWN0IFJlcXVlc3Q7Ci0gRXJyb3JJbmZvX3N0cnVjdCBlcnJvcl9pbmZvOwotIERXT1JEIG1hbGxvY19zaXplOworICBFcnJvckluZm9fc3RydWN0IGVycm9yX2luZm87CisgIERXT1JEIG1hbGxvY19zaXplOworICBEV09SRCBidWZfc2l6ZTsKKyAgQllURSBfX3VzZXIgKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERXT1JEIGJ1Zl9zaXplOwotIEJZVEUgX191c2VyICpidWY7CiB9IEJJR19JT0NUTF9Db21tYW5kX3N0cnVjdDsKLXR5cGVkZWYgc3RydWN0IF9Mb2d2b2xJbmZvX3N0cnVjdHsKK3R5cGVkZWYgc3RydWN0IF9Mb2d2b2xJbmZvX3N0cnVjdCB7CisgIF9fdTMyIEx1bklEOworICBpbnQgbnVtX29wZW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBMdW5JRDsKLSBpbnQgbnVtX29wZW5zOwotIGludCBudW1fcGFydHM7CisgIGludCBudW1fcGFydHM7CiB9IExvZ3ZvbEluZm9fc3RydWN0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfR0VUUENJSU5GTyBfSU9SKENDSVNTX0lPQ19NQUdJQywgMSwgY2Npc3NfcGNpX2luZm9fc3RydWN0KQogI2RlZmluZSBDQ0lTU19HRVRJTlRJTkZPIF9JT1IoQ0NJU1NfSU9DX01BR0lDLCAyLCBjY2lzc19jb2FsaW50X3N0cnVjdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX1NFVElOVElORk8gX0lPVyhDQ0lTU19JT0NfTUFHSUMsIDMsIGNjaXNzX2NvYWxpbnRfc3RydWN0KQogI2RlZmluZSBDQ0lTU19HRVROT0RFTkFNRSBfSU9SKENDSVNTX0lPQ19NQUdJQywgNCwgTm9kZU5hbWVfdHlwZSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX1NFVE5PREVOQU1FIF9JT1coQ0NJU1NfSU9DX01BR0lDLCA1LCBOb2RlTmFtZV90eXBlKQogI2RlZmluZSBDQ0lTU19HRVRIRUFSVEJFQVQgX0lPUihDQ0lTU19JT0NfTUFHSUMsIDYsIEhlYXJ0YmVhdF90eXBlKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfR0VUQlVTVFlQRVMgX0lPUihDQ0lTU19JT0NfTUFHSUMsIDcsIEJ1c1R5cGVzX3R5cGUpCiAjZGVmaW5lIENDSVNTX0dFVEZJUk1WRVIgX0lPUihDQ0lTU19JT0NfTUFHSUMsIDgsIEZpcm13YXJlVmVyX3R5cGUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQ0lTU19HRVREUklWVkVSIF9JT1IoQ0NJU1NfSU9DX01BR0lDLCA5LCBEcml2ZXJWZXJfdHlwZSkKICNkZWZpbmUgQ0NJU1NfUkVWQUxJRFZPTFMgX0lPKENDSVNTX0lPQ19NQUdJQywgMTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQ0lTU19QQVNTVEhSVSBfSU9XUihDQ0lTU19JT0NfTUFHSUMsIDExLCBJT0NUTF9Db21tYW5kX3N0cnVjdCkKICNkZWZpbmUgQ0NJU1NfREVSRUdESVNLIF9JTyhDQ0lTU19JT0NfTUFHSUMsIDEyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfUkVHTkVXRElTSyBfSU9XKENDSVNTX0lPQ19NQUdJQywgMTMsIGludCkKICNkZWZpbmUgQ0NJU1NfUkVHTkVXRCBfSU8oQ0NJU1NfSU9DX01BR0lDLCAxNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX1JFU0NBTkRJU0sgX0lPKENDSVNTX0lPQ19NQUdJQywgMTYpCiAjZGVmaW5lIENDSVNTX0dFVExVTklORk8gX0lPUihDQ0lTU19JT0NfTUFHSUMsIDE3LCBMb2d2b2xJbmZvX3N0cnVjdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX0JJR19QQVNTVEhSVSBfSU9XUihDQ0lTU19JT0NfTUFHSUMsIDE4LCBCSUdfSU9DVExfQ29tbWFuZF9zdHJ1Y3QpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nkcm9tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nkcm9tLmgKaW5kZXggZDlkMDA2ZC4uZDRkMDgyYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jZHJvbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Ryb20uaApAQCAtNzksNzUyICs3OSw3MzUgQEAKICNkZWZpbmUgQ0RST01fU0VORF9QQUNLRVQgMHg1MzkzCiAjZGVmaW5lIENEUk9NX05FWFRfV1JJVEFCTEUgMHg1Mzk0CiAjZGVmaW5lIENEUk9NX0xBU1RfV1JJVFRFTiAweDUzOTUKLXN0cnVjdCBjZHJvbV9tc2YwCitzdHJ1Y3QgY2Ryb21fbXNmMCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIF9fdTggbWludXRlOwotIF9fdTggc2Vjb25kOwotIF9fdTggZnJhbWU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLXVuaW9uIGNkcm9tX2FkZHIKLXsKLSBzdHJ1Y3QgY2Ryb21fbXNmMCBtc2Y7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBsYmE7Ci19Owotc3RydWN0IGNkcm9tX21zZgotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkbXNmX21pbjA7Ci0gX191OCBjZG1zZl9zZWMwOwotIF9fdTggY2Rtc2ZfZnJhbWUwOwotIF9fdTggY2Rtc2ZfbWluMTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjZG1zZl9zZWMxOwotIF9fdTggY2Rtc2ZfZnJhbWUxOwotfTsKLXN0cnVjdCBjZHJvbV90aQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3U4IGNkdGlfdHJrMDsKLSBfX3U4IGNkdGlfaW5kMDsKLSBfX3U4IGNkdGlfdHJrMTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjZHRpX2luZDE7Ci19Owotc3RydWN0IGNkcm9tX3RvY2hkcgotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkdGhfdHJrMDsKLSBfX3U4IGNkdGhfdHJrMTsKLX07Ci1zdHJ1Y3QgY2Ryb21fdm9sY3RybAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3U4IGNoYW5uZWwwOwotIF9fdTggY2hhbm5lbDE7Ci0gX191OCBjaGFubmVsMjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjaGFubmVsMzsKLX07Ci1zdHJ1Y3QgY2Ryb21fc3ViY2hubAotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkc2NfZm9ybWF0OwotIF9fdTggY2RzY19hdWRpb3N0YXR1czsKLSBfX3U4IGNkc2NfYWRyOiA0OwotIF9fdTggY2RzY19jdHJsOiA0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkc2NfdHJrOwotIF9fdTggY2RzY19pbmQ7Ci0gdW5pb24gY2Ryb21fYWRkciBjZHNjX2Fic2FkZHI7Ci0gdW5pb24gY2Ryb21fYWRkciBjZHNjX3JlbGFkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLXN0cnVjdCBjZHJvbV90b2NlbnRyeQotewotIF9fdTggY2R0ZV90cmFjazsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjZHRlX2FkciA6NDsKLSBfX3U4IGNkdGVfY3RybCA6NDsKLSBfX3U4IGNkdGVfZm9ybWF0OwotIHVuaW9uIGNkcm9tX2FkZHIgY2R0ZV9hZGRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkdGVfZGF0YW1vZGU7Ci19Owotc3RydWN0IGNkcm9tX3JlYWQKLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNkcmVhZF9sYmE7Ci0gY2hhciAqY2RyZWFkX2J1ZmFkZHI7Ci0gaW50IGNkcmVhZF9idWZsZW47CisgIF9fdTggbWludXRlOworICBfX3U4IHNlY29uZDsKKyAgX191OCBmcmFtZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGNkcm9tX3JlYWRfYXVkaW8KLXsKLSB1bmlvbiBjZHJvbV9hZGRyIGFkZHI7Ci0gX191OCBhZGRyX2Zvcm1hdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG5mcmFtZXM7Ci0gX191OCBfX3VzZXIgKmJ1ZjsKK3VuaW9uIGNkcm9tX2FkZHIgeworICBzdHJ1Y3QgY2Ryb21fbXNmMCBtc2Y7CisgIGludCBsYmE7CiB9Owotc3RydWN0IGNkcm9tX211bHRpc2Vzc2lvbgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSB1bmlvbiBjZHJvbV9hZGRyIGFkZHI7Ci0gX191OCB4YV9mbGFnOwotIF9fdTggYWRkcl9mb3JtYXQ7CitzdHJ1Y3QgY2Ryb21fbXNmIHsKKyAgX191OCBjZG1zZl9taW4wOworICBfX3U4IGNkbXNmX3NlYzA7CisgIF9fdTggY2Rtc2ZfZnJhbWUwOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZG1zZl9taW4xOworICBfX3U4IGNkbXNmX3NlYzE7CisgIF9fdTggY2Rtc2ZfZnJhbWUxOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY2Ryb21fdGkgeworICBfX3U4IGNkdGlfdHJrMDsKKyAgX191OCBjZHRpX2luZDA7CisgIF9fdTggY2R0aV90cmsxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZHRpX2luZDE7Cit9Oworc3RydWN0IGNkcm9tX3RvY2hkciB7CisgIF9fdTggY2R0aF90cmswOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZHRoX3RyazE7Cit9Oworc3RydWN0IGNkcm9tX3ZvbGN0cmwgeworICBfX3U4IGNoYW5uZWwwOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjaGFubmVsMTsKKyAgX191OCBjaGFubmVsMjsKKyAgX191OCBjaGFubmVsMzsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGNkcm9tX3N1YmNobmwgeworICBfX3U4IGNkc2NfZm9ybWF0OworICBfX3U4IGNkc2NfYXVkaW9zdGF0dXM7CisgIF9fdTggY2RzY19hZHIgOiA0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZHNjX2N0cmwgOiA0OworICBfX3U4IGNkc2NfdHJrOworICBfX3U4IGNkc2NfaW5kOworICB1bmlvbiBjZHJvbV9hZGRyIGNkc2NfYWJzYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuaW9uIGNkcm9tX2FkZHIgY2RzY19yZWxhZGRyOworfTsKK3N0cnVjdCBjZHJvbV90b2NlbnRyeSB7CisgIF9fdTggY2R0ZV90cmFjazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggY2R0ZV9hZHIgOiA0OworICBfX3U4IGNkdGVfY3RybCA6IDQ7CisgIF9fdTggY2R0ZV9mb3JtYXQ7CisgIHVuaW9uIGNkcm9tX2FkZHIgY2R0ZV9hZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZHRlX2RhdGFtb2RlOworfTsKK3N0cnVjdCBjZHJvbV9yZWFkIHsKKyAgaW50IGNkcmVhZF9sYmE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyICogY2RyZWFkX2J1ZmFkZHI7CisgIGludCBjZHJlYWRfYnVmbGVuOworfTsKK3N0cnVjdCBjZHJvbV9yZWFkX2F1ZGlvIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuaW9uIGNkcm9tX2FkZHIgYWRkcjsKKyAgX191OCBhZGRyX2Zvcm1hdDsKKyAgaW50IG5mcmFtZXM7CisgIF9fdTggX191c2VyICogYnVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgY2Ryb21fbWNuCi17Ci0gX191OCBtZWRpdW1fY2F0YWxvZ19udW1iZXJbMTRdOworc3RydWN0IGNkcm9tX211bHRpc2Vzc2lvbiB7CisgIHVuaW9uIGNkcm9tX2FkZHIgYWRkcjsKKyAgX191OCB4YV9mbGFnOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBhZGRyX2Zvcm1hdDsKK307CitzdHJ1Y3QgY2Ryb21fbWNuIHsKKyAgX191OCBtZWRpdW1fY2F0YWxvZ19udW1iZXJbMTRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgY2Ryb21fYmxrCi17Ci0gdW5zaWduZWQgZnJvbTsKK3N0cnVjdCBjZHJvbV9ibGsgeworICB1bnNpZ25lZCBmcm9tOworICB1bnNpZ25lZCBzaG9ydCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGxlbjsKIH07CiAjZGVmaW5lIENEUk9NX1BBQ0tFVF9TSVpFIDEyCiAjZGVmaW5lIENHQ19EQVRBX1VOS05PV04gMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0dDX0RBVEFfV1JJVEUgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0dDX0RBVEFfUkVBRCAyCiAjZGVmaW5lIENHQ19EQVRBX05PTkUgMwotc3RydWN0IGNkcm9tX2dlbmVyaWNfY29tbWFuZAorc3RydWN0IGNkcm9tX2dlbmVyaWNfY29tbWFuZCB7CisgIHVuc2lnbmVkIGNoYXIgY21kW0NEUk9NX1BBQ0tFVF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gdW5zaWduZWQgY2hhciBjbWRbQ0RST01fUEFDS0VUX1NJWkVdOwotIHVuc2lnbmVkIGNoYXIgX191c2VyICpidWZmZXI7Ci0gdW5zaWduZWQgaW50IGJ1ZmxlbjsKKyAgdW5zaWduZWQgY2hhciBfX3VzZXIgKiBidWZmZXI7CisgIHVuc2lnbmVkIGludCBidWZsZW47CisgIGludCBzdGF0OworICBzdHJ1Y3QgcmVxdWVzdF9zZW5zZSBfX3VzZXIgKiBzZW5zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0YXQ7Ci0gc3RydWN0IHJlcXVlc3Rfc2Vuc2UgX191c2VyICpzZW5zZTsKLSB1bnNpZ25lZCBjaGFyIGRhdGFfZGlyZWN0aW9uOwotIGludCBxdWlldDsKKyAgdW5zaWduZWQgY2hhciBkYXRhX2RpcmVjdGlvbjsKKyAgaW50IHF1aWV0OworICBpbnQgdGltZW91dDsKKyAgdm9pZCBfX3VzZXIgKiByZXNlcnZlZFsxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRpbWVvdXQ7Ci0gdm9pZCBfX3VzZXIgKnJlc2VydmVkWzFdOwogfTsKICNkZWZpbmUgQ0RfTUlOUyA3NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RfU0VDUyA2MAogI2RlZmluZSBDRF9GUkFNRVMgNzUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX1NZTkNfU0laRSAxMgogI2RlZmluZSBDRF9NU0ZfT0ZGU0VUIDE1MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RfQ0hVTktfU0laRSAyNAogI2RlZmluZSBDRF9OVU1fT0ZfQ0hVTktTIDk4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9GUkFNRVNJWkVfU1VCIDk2CiAjZGVmaW5lIENEX0hFQURfU0laRSA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9TVUJIRUFEX1NJWkUgOAogI2RlZmluZSBDRF9FRENfU0laRSA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9aRVJPX1NJWkUgOAogI2RlZmluZSBDRF9FQ0NfU0laRSAyNzYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX0ZSQU1FU0laRSAyMDQ4CiAjZGVmaW5lIENEX0ZSQU1FU0laRV9SQVcgMjM1MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RfRlJBTUVTSVpFX1JBV0VSIDI2NDYKLSNkZWZpbmUgQ0RfRlJBTUVTSVpFX1JBVzEgKENEX0ZSQU1FU0laRV9SQVctQ0RfU1lOQ19TSVpFKQorI2RlZmluZSBDRF9GUkFNRVNJWkVfUkFXMSAoQ0RfRlJBTUVTSVpFX1JBVyAtIENEX1NZTkNfU0laRSkKKyNkZWZpbmUgQ0RfRlJBTUVTSVpFX1JBVzAgKENEX0ZSQU1FU0laRV9SQVcgLSBDRF9TWU5DX1NJWkUgLSBDRF9IRUFEX1NJWkUpCisjZGVmaW5lIENEX1hBX0hFQUQgKENEX0hFQURfU0laRSArIENEX1NVQkhFQURfU0laRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENEX0ZSQU1FU0laRV9SQVcwIChDRF9GUkFNRVNJWkVfUkFXLUNEX1NZTkNfU0laRS1DRF9IRUFEX1NJWkUpCi0jZGVmaW5lIENEX1hBX0hFQUQgKENEX0hFQURfU0laRStDRF9TVUJIRUFEX1NJWkUpCi0jZGVmaW5lIENEX1hBX1RBSUwgKENEX0VEQ19TSVpFK0NEX0VDQ19TSVpFKQotI2RlZmluZSBDRF9YQV9TWU5DX0hFQUQgKENEX1NZTkNfU0laRStDRF9YQV9IRUFEKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQ0RfWEFfVEFJTCAoQ0RfRURDX1NJWkUgKyBDRF9FQ0NfU0laRSkKKyNkZWZpbmUgQ0RfWEFfU1lOQ19IRUFEIChDRF9TWU5DX1NJWkUgKyBDRF9YQV9IRUFEKQogI2RlZmluZSBDRFJPTV9MQkEgMHgwMQogI2RlZmluZSBDRFJPTV9NU0YgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RST01fREFUQV9UUkFDSyAweDA0CiAjZGVmaW5lIENEUk9NX0xFQURPVVQgMHhBQQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RST01fQVVESU9fSU5WQUxJRCAweDAwCiAjZGVmaW5lIENEUk9NX0FVRElPX1BMQVkgMHgxMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RST01fQVVESU9fUEFVU0VEIDB4MTIKICNkZWZpbmUgQ0RST01fQVVESU9fQ09NUExFVEVEIDB4MTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEUk9NX0FVRElPX0VSUk9SIDB4MTQKICNkZWZpbmUgQ0RST01fQVVESU9fTk9fU1RBVFVTIDB4MTUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19DTE9TRV9UUkFZIDB4MQogI2RlZmluZSBDRENfT1BFTl9UUkFZIDB4MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX0xPQ0sgMHg0CiAjZGVmaW5lIENEQ19TRUxFQ1RfU1BFRUQgMHg4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfU0VMRUNUX0RJU0MgMHgxMAogI2RlZmluZSBDRENfTVVMVElfU0VTU0lPTiAweDIwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfTUNOIDB4NDAKICNkZWZpbmUgQ0RDX01FRElBX0NIQU5HRUQgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX1BMQVlfQVVESU8gMHgxMDAKICNkZWZpbmUgQ0RDX1JFU0VUIDB4MjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfRFJJVkVfU1RBVFVTIDB4ODAwCiAjZGVmaW5lIENEQ19HRU5FUklDX1BBQ0tFVCAweDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19DRF9SIDB4MjAwMAogI2RlZmluZSBDRENfQ0RfUlcgMHg0MDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfRFZEIDB4ODAwMAogI2RlZmluZSBDRENfRFZEX1IgMHgxMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX0RWRF9SQU0gMHgyMDAwMAogI2RlZmluZSBDRENfTU9fRFJJVkUgMHg0MDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX01SVyAweDgwMDAwCiAjZGVmaW5lIENEQ19NUldfVyAweDEwMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX1JBTSAweDIwMDAwMAogI2RlZmluZSBDRFNfTk9fSU5GTyAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFNfTk9fRElTQyAxCiAjZGVmaW5lIENEU19UUkFZX09QRU4gMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RTX0RSSVZFX05PVF9SRUFEWSAzCiAjZGVmaW5lIENEU19ESVNDX09LIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEU19BVURJTyAxMDAKICNkZWZpbmUgQ0RTX0RBVEFfMSAxMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEU19EQVRBXzIgMTAyCiAjZGVmaW5lIENEU19YQV8yXzEgMTAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFNfWEFfMl8yIDEwNAogI2RlZmluZSBDRFNfTUlYRUQgMTA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRE9fQVVUT19DTE9TRSAweDEKICNkZWZpbmUgQ0RPX0FVVE9fRUpFQ1QgMHgyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRE9fVVNFX0ZGTEFHUyAweDQKICNkZWZpbmUgQ0RPX0xPQ0sgMHg4Ci0jZGVmaW5lIENET19DSEVDS19UWVBFIDB4MTAKLSNkZWZpbmUgQ0RTTF9OT05FIChJTlRfTUFYLTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDRE9fQ0hFQ0tfVFlQRSAweDEwCisjZGVmaW5lIENEU0xfTk9ORSAoSU5UX01BWCAtIDEpCiAjZGVmaW5lIENEU0xfQ1VSUkVOVCBJTlRfTUFYCiAjZGVmaW5lIENEX1BBUlRfTUFYIDY0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9QQVJUX01BU0sgKENEX1BBUlRfTUFYIC0gMSkKICNkZWZpbmUgR1BDTURfQkxBTksgMHhhMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfQ0xPU0VfVFJBQ0sgMHg1YgogI2RlZmluZSBHUENNRF9GTFVTSF9DQUNIRSAweDM1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9GT1JNQVRfVU5JVCAweDA0CiAjZGVmaW5lIEdQQ01EX0dFVF9DT05GSUdVUkFUSU9OIDB4NDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX0dFVF9FVkVOVF9TVEFUVVNfTk9USUZJQ0FUSU9OIDB4NGEKICNkZWZpbmUgR1BDTURfR0VUX1BFUkZPUk1BTkNFIDB4YWMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX0lOUVVJUlkgMHgxMgogI2RlZmluZSBHUENNRF9MT0FEX1VOTE9BRCAweGE2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9NRUNIQU5JU01fU1RBVFVTIDB4YmQKICNkZWZpbmUgR1BDTURfTU9ERV9TRUxFQ1RfMTAgMHg1NQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfTU9ERV9TRU5TRV8xMCAweDVhCiAjZGVmaW5lIEdQQ01EX1BBVVNFX1JFU1VNRSAweDRiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9QTEFZX0FVRElPXzEwIDB4NDUKICNkZWZpbmUgR1BDTURfUExBWV9BVURJT19NU0YgMHg0NworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUExBWV9BVURJT19USSAweDQ4CiAjZGVmaW5lIEdQQ01EX1BMQVlfQ0QgMHhiYwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUFJFVkVOVF9BTExPV19NRURJVU1fUkVNT1ZBTCAweDFlCiAjZGVmaW5lIEdQQ01EX1JFQURfMTAgMHgyOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVBRF8xMiAweGE4CiAjZGVmaW5lIEdQQ01EX1JFQURfQlVGRkVSIDB4M2MKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFQURfQlVGRkVSX0NBUEFDSVRZIDB4NWMKICNkZWZpbmUgR1BDTURfUkVBRF9DRFZEX0NBUEFDSVRZIDB4MjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFQURfQ0QgMHhiZQogI2RlZmluZSBHUENNRF9SRUFEX0NEX01TRiAweGI5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9SRUFEX0RJU0NfSU5GTyAweDUxCiAjZGVmaW5lIEdQQ01EX1JFQURfRFZEX1NUUlVDVFVSRSAweGFkCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9SRUFEX0ZPUk1BVF9DQVBBQ0lUSUVTIDB4MjMKICNkZWZpbmUgR1BDTURfUkVBRF9IRUFERVIgMHg0NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVBRF9UUkFDS19SWk9ORV9JTkZPIDB4NTIKICNkZWZpbmUgR1BDTURfUkVBRF9TVUJDSEFOTkVMIDB4NDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFQURfVE9DX1BNQV9BVElQIDB4NDMKICNkZWZpbmUgR1BDTURfUkVQQUlSX1JaT05FX1RSQUNLIDB4NTgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFUE9SVF9LRVkgMHhhNAogI2RlZmluZSBHUENNRF9SRVFVRVNUX1NFTlNFIDB4MDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFU0VSVkVfUlpPTkVfVFJBQ0sgMHg1MwogI2RlZmluZSBHUENNRF9TRU5EX0NVRV9TSEVFVCAweDVkCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9TQ0FOIDB4YmEKICNkZWZpbmUgR1BDTURfU0VFSyAweDJiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9TRU5EX0RWRF9TVFJVQ1RVUkUgMHhiZgogI2RlZmluZSBHUENNRF9TRU5EX0VWRU5UIDB4YTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1NFTkRfS0VZIDB4YTMKICNkZWZpbmUgR1BDTURfU0VORF9PUEMgMHg1NAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfU0VUX1JFQURfQUhFQUQgMHhhNwogI2RlZmluZSBHUENNRF9TRVRfU1RSRUFNSU5HIDB4YjYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1NUQVJUX1NUT1BfVU5JVCAweDFiCiAjZGVmaW5lIEdQQ01EX1NUT1BfUExBWV9TQ0FOIDB4NGUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1RFU1RfVU5JVF9SRUFEWSAweDAwCiAjZGVmaW5lIEdQQ01EX1ZFUklGWV8xMCAweDJmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9XUklURV8xMCAweDJhCiAjZGVmaW5lIEdQQ01EX1dSSVRFXzEyIDB4YWEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1dSSVRFX0FORF9WRVJJRllfMTAgMHgyZQogI2RlZmluZSBHUENNRF9XUklURV9CVUZGRVIgMHgzYgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfU0VUX1NQRUVEIDB4YmIKICNkZWZpbmUgR1BDTURfUExBWUFVRElPX1RJIDB4NDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX0dFVF9NRURJQV9TVEFUVVMgMHhkYQogI2RlZmluZSBHUE1PREVfVkVORE9SX1BBR0UgMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BNT0RFX1JfV19FUlJPUl9QQUdFIDB4MDEKICNkZWZpbmUgR1BNT0RFX1dSSVRFX1BBUk1TX1BBR0UgMHgwNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BNT0RFX1dDQUNISU5HX1BBR0UgMHgwOAogI2RlZmluZSBHUE1PREVfQVVESU9fQ1RMX1BBR0UgMHgwZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BNT0RFX1BPV0VSX1BBR0UgMHgxYQogI2RlZmluZSBHUE1PREVfRkFVTFRfRkFJTF9QQUdFIDB4MWMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQTU9ERV9UT19QUk9URUNUX1BBR0UgMHgxZAogI2RlZmluZSBHUE1PREVfQ0FQQUJJTElUSUVTX1BBR0UgMHgyYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BNT0RFX0FMTF9QQUdFUyAweDNmCiAjZGVmaW5lIEdQTU9ERV9DRFJPTV9QQUdFIDB4MGQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9TVFJVQ1RfUEhZU0lDQUwgMHgwMAogI2RlZmluZSBEVkRfU1RSVUNUX0NPUFlSSUdIVCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfU1RSVUNUX0RJU0NLRVkgMHgwMgogI2RlZmluZSBEVkRfU1RSVUNUX0JDQSAweDAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfU1RSVUNUX01BTlVGQUNUIDB4MDQKIHN0cnVjdCBkdmRfbGF5ZXIgeworICBfX3U4IGJvb2tfdmVyc2lvbiA6IDQ7CisgIF9fdTggYm9va190eXBlIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBib29rX3ZlcnNpb24gOiA0OwotIF9fdTggYm9va190eXBlIDogNDsKLSBfX3U4IG1pbl9yYXRlIDogNDsKLSBfX3U4IGRpc2Nfc2l6ZSA6IDQ7CisgIF9fdTggbWluX3JhdGUgOiA0OworICBfX3U4IGRpc2Nfc2l6ZSA6IDQ7CisgIF9fdTggbGF5ZXJfdHlwZSA6IDQ7CisgIF9fdTggdHJhY2tfcGF0aCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGF5ZXJfdHlwZSA6IDQ7Ci0gX191OCB0cmFja19wYXRoIDogMTsKLSBfX3U4IG5sYXllcnMgOiAyOwotIF9fdTggdHJhY2tfZGVuc2l0eSA6IDQ7CisgIF9fdTggbmxheWVycyA6IDI7CisgIF9fdTggdHJhY2tfZGVuc2l0eSA6IDQ7CisgIF9fdTggbGluZWFyX2RlbnNpdHkgOiA0OworICBfX3U4IGJjYSA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGluZWFyX2RlbnNpdHkgOiA0OwotIF9fdTggYmNhIDogMTsKLSBfX3UzMiBzdGFydF9zZWN0b3I7Ci0gX191MzIgZW5kX3NlY3RvcjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZW5kX3NlY3Rvcl9sMDsKKyAgX191MzIgc3RhcnRfc2VjdG9yOworICBfX3UzMiBlbmRfc2VjdG9yOworICBfX3UzMiBlbmRfc2VjdG9yX2wwOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9MQVlFUlMgNAogc3RydWN0IGR2ZF9waHlzaWNhbCB7CisgIF9fdTggdHlwZTsKKyAgX191OCBsYXllcl9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IGxheWVyX251bTsKLSBzdHJ1Y3QgZHZkX2xheWVyIGxheWVyW0RWRF9MQVlFUlNdOworICBzdHJ1Y3QgZHZkX2xheWVyIGxheWVyW0RWRF9MQVlFUlNdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHZkX2NvcHlyaWdodCB7Ci0gX191OCB0eXBlOwotIF9fdTggbGF5ZXJfbnVtOwotIF9fdTggY3BzdDsKKyAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJtaTsKKyAgX191OCBsYXllcl9udW07CisgIF9fdTggY3BzdDsKKyAgX191OCBybWk7CiB9Owotc3RydWN0IGR2ZF9kaXNja2V5IHsKLSBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGFnaWQgOiAyOwotIF9fdTggdmFsdWVbMjA0OF07CitzdHJ1Y3QgZHZkX2Rpc2NrZXkgeworICBfX3U4IHR5cGU7CisgIHVuc2lnbmVkIGFnaWQgOiAyOworICBfX3U4IHZhbHVlWzIwNDhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHZkX2JjYSB7CisgIF9fdTggdHlwZTsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIGludCBsZW47Ci0gX191OCB2YWx1ZVsxODhdOworICBfX3U4IHZhbHVlWzE4OF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfbWFudWZhY3QgewotIF9fdTggdHlwZTsKLSBfX3U4IGxheWVyX251bTsKLSBpbnQgbGVuOworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdmFsdWVbMjA0OF07CisgIF9fdTggbGF5ZXJfbnVtOworICBpbnQgbGVuOworICBfX3U4IHZhbHVlWzIwNDhdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuaW9uIHsKLSBfX3U4IHR5cGU7CisgIF9fdTggdHlwZTsKKyAgc3RydWN0IGR2ZF9waHlzaWNhbCBwaHlzaWNhbDsKKyAgc3RydWN0IGR2ZF9jb3B5cmlnaHQgY29weXJpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHZkX3BoeXNpY2FsIHBoeXNpY2FsOwotIHN0cnVjdCBkdmRfY29weXJpZ2h0IGNvcHlyaWdodDsKLSBzdHJ1Y3QgZHZkX2Rpc2NrZXkgZGlzY2tleTsKLSBzdHJ1Y3QgZHZkX2JjYSBiY2E7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkdmRfbWFudWZhY3QgbWFudWZhY3Q7CisgIHN0cnVjdCBkdmRfZGlzY2tleSBkaXNja2V5OworICBzdHJ1Y3QgZHZkX2JjYSBiY2E7CisgIHN0cnVjdCBkdmRfbWFudWZhY3QgbWFudWZhY3Q7CiB9IGR2ZF9zdHJ1Y3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfTFVfU0VORF9BR0lEIDAKICNkZWZpbmUgRFZEX0hPU1RfU0VORF9DSEFMTEVOR0UgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0xVX1NFTkRfS0VZMSAyCiAjZGVmaW5lIERWRF9MVV9TRU5EX0NIQUxMRU5HRSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfSE9TVF9TRU5EX0tFWTIgNAogI2RlZmluZSBEVkRfQVVUSF9FU1RBQkxJU0hFRCA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfQVVUSF9GQUlMVVJFIDYKICNkZWZpbmUgRFZEX0xVX1NFTkRfVElUTEVfS0VZIDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9MVV9TRU5EX0FTRiA4CiAjZGVmaW5lIERWRF9JTlZBTElEQVRFX0FHSUQgOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0xVX1NFTkRfUlBDX1NUQVRFIDEwCiAjZGVmaW5lIERWRF9IT1NUX1NFTkRfUlBDX1NUQVRFIDExCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX3U4IGR2ZF9rZXlbNV07CiB0eXBlZGVmIF9fdTggZHZkX2NoYWxsZW5nZVsxMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2ZF9sdV9zZW5kX2FnaWQgewotIF9fdTggdHlwZTsKLSB1bnNpZ25lZCBhZ2lkIDogMjsKKyAgX191OCB0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgYWdpZCA6IDI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfaG9zdF9zZW5kX2NoYWxsZW5nZSB7Ci0gX191OCB0eXBlOwotIHVuc2lnbmVkIGFnaWQgOiAyOwotIGR2ZF9jaGFsbGVuZ2UgY2hhbDsKKyAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgYWdpZCA6IDI7CisgIGR2ZF9jaGFsbGVuZ2UgY2hhbDsKIH07CiBzdHJ1Y3QgZHZkX3NlbmRfa2V5IHsKLSBfX3U4IHR5cGU7Ci0gdW5zaWduZWQgYWdpZCA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGR2ZF9rZXkga2V5OworICBfX3U4IHR5cGU7CisgIHVuc2lnbmVkIGFnaWQgOiAyOworICBkdmRfa2V5IGtleTsKIH07Ci1zdHJ1Y3QgZHZkX2x1X3NlbmRfY2hhbGxlbmdlIHsKLSBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGFnaWQgOiAyOwotIGR2ZF9jaGFsbGVuZ2UgY2hhbDsKK3N0cnVjdCBkdmRfbHVfc2VuZF9jaGFsbGVuZ2UgeworICBfX3U4IHR5cGU7CisgIHVuc2lnbmVkIGFnaWQgOiAyOworICBkdmRfY2hhbGxlbmdlIGNoYWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRFZEX0NQTV9OT19DT1BZUklHSFQgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0NQTV9DT1BZUklHSFRFRCAxCiAjZGVmaW5lIERWRF9DUF9TRUNfTk9ORSAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfQ1BfU0VDX0VYSVNUIDEKICNkZWZpbmUgRFZEX0NHTVNfVU5SRVNUUklDVEVEIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9DR01TX1NJTkdMRSAyCiAjZGVmaW5lIERWRF9DR01TX1JFU1RSSUNURUQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfbHVfc2VuZF90aXRsZV9rZXkgewotIF9fdTggdHlwZTsKKyAgX191OCB0eXBlOworICB1bnNpZ25lZCBhZ2lkIDogMjsKKyAgZHZkX2tleSB0aXRsZV9rZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGFnaWQgOiAyOwotIGR2ZF9rZXkgdGl0bGVfa2V5OwotIGludCBsYmE7Ci0gdW5zaWduZWQgY3BtIDogMTsKKyAgaW50IGxiYTsKKyAgdW5zaWduZWQgY3BtIDogMTsKKyAgdW5zaWduZWQgY3Bfc2VjIDogMTsKKyAgdW5zaWduZWQgY2dtcyA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNwX3NlYyA6IDE7Ci0gdW5zaWduZWQgY2dtcyA6IDI7CiB9Owogc3RydWN0IGR2ZF9sdV9zZW5kX2FzZiB7CisgIF9fdTggdHlwZTsKKyAgdW5zaWduZWQgYWdpZCA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSB1bnNpZ25lZCBhZ2lkIDogMjsKLSB1bnNpZ25lZCBhc2YgOiAxOworICB1bnNpZ25lZCBhc2YgOiAxOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHZkX2hvc3Rfc2VuZF9ycGNzdGF0ZSB7Ci0gX191OCB0eXBlOwotIF9fdTggcGRyYzsKKyAgX191OCB0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBwZHJjOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHZkX2x1X3NlbmRfcnBjc3RhdGUgewotIF9fdTggdHlwZSA6IDI7Ci0gX191OCB2cmEgOiAzOwotIF9fdTggdWNjYSA6IDM7CisgIF9fdTggdHlwZSA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVnaW9uX21hc2s7Ci0gX191OCBycGNfc2NoZW1lOworICBfX3U4IHZyYSA6IDM7CisgIF9fdTggdWNjYSA6IDM7CisgIF9fdTggcmVnaW9uX21hc2s7CisgIF9fdTggcnBjX3NjaGVtZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdHlwZWRlZiB1bmlvbiB7CisgIF9fdTggdHlwZTsKKyAgc3RydWN0IGR2ZF9sdV9zZW5kX2FnaWQgbHNhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gc3RydWN0IGR2ZF9sdV9zZW5kX2FnaWQgbHNhOwotIHN0cnVjdCBkdmRfaG9zdF9zZW5kX2NoYWxsZW5nZSBoc2M7Ci0gc3RydWN0IGR2ZF9zZW5kX2tleSBsc2s7CisgIHN0cnVjdCBkdmRfaG9zdF9zZW5kX2NoYWxsZW5nZSBoc2M7CisgIHN0cnVjdCBkdmRfc2VuZF9rZXkgbHNrOworICBzdHJ1Y3QgZHZkX2x1X3NlbmRfY2hhbGxlbmdlIGxzYzsKKyAgc3RydWN0IGR2ZF9zZW5kX2tleSBoc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkdmRfbHVfc2VuZF9jaGFsbGVuZ2UgbHNjOwotIHN0cnVjdCBkdmRfc2VuZF9rZXkgaHNrOwotIHN0cnVjdCBkdmRfbHVfc2VuZF90aXRsZV9rZXkgbHN0azsKLSBzdHJ1Y3QgZHZkX2x1X3NlbmRfYXNmIGxzYXNmOworICBzdHJ1Y3QgZHZkX2x1X3NlbmRfdGl0bGVfa2V5IGxzdGs7CisgIHN0cnVjdCBkdmRfbHVfc2VuZF9hc2YgbHNhc2Y7CisgIHN0cnVjdCBkdmRfaG9zdF9zZW5kX3JwY3N0YXRlIGhycGNzOworICBzdHJ1Y3QgZHZkX2x1X3NlbmRfcnBjc3RhdGUgbHJwY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkdmRfaG9zdF9zZW5kX3JwY3N0YXRlIGhycGNzOwotIHN0cnVjdCBkdmRfbHVfc2VuZF9ycGNzdGF0ZSBscnBjczsKIH0gZHZkX2F1dGhpbmZvOwogc3RydWN0IHJlcXVlc3Rfc2Vuc2UgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHZhbGlkIDogMTsKLSBfX3U4IGVycm9yX2NvZGUgOiA3OworICBfX3U4IHZhbGlkIDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZXJyb3JfY29kZSA6IDc7CisjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKKyAgX191OCBlcnJvcl9jb2RlIDogNzsKKyAgX191OCB2YWxpZCA6IDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCisgIF9fdTggc2VnbWVudF9udW1iZXI7CisjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECisgIF9fdTggcmVzZXJ2ZWQxIDogMjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggaWxpIDogMTsKKyAgX191OCByZXNlcnZlZDIgOiAxOworICBfX3U4IHNlbnNlX2tleSA6IDQ7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlcnJvcl9jb2RlIDogNzsKLSBfX3U4IHZhbGlkIDogMTsKKyAgX191OCBzZW5zZV9rZXkgOiA0OworICBfX3U4IHJlc2VydmVkMiA6IDE7CisgIF9fdTggaWxpIDogMTsKKyAgX191OCByZXNlcnZlZDEgOiAyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fdTggc2VnbWVudF9udW1iZXI7CisgIF9fdTggaW5mb3JtYXRpb25bNF07CisgIF9fdTggYWRkX3NlbnNlX2xlbjsKKyAgX191OCBjb21tYW5kX2luZm9bNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQxIDogMjsKLSBfX3U4IGlsaSA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiAxOworICBfX3U4IGFzYzsKKyAgX191OCBhc2NxOworICBfX3U4IGZydWM7CisgIF9fdTggc2tzWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlbnNlX2tleSA6IDQ7Ci0jZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IHNlbnNlX2tleSA6IDQ7Ci0gX191OCByZXNlcnZlZDIgOiAxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlsaSA6IDE7Ci0gX191OCByZXNlcnZlZDEgOiAyOwotI2VuZGlmCi0gX191OCBpbmZvcm1hdGlvbls0XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhZGRfc2Vuc2VfbGVuOwotIF9fdTggY29tbWFuZF9pbmZvWzRdOwotIF9fdTggYXNjOwotIF9fdTggYXNjcTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmcnVjOwotIF9fdTggc2tzWzNdOwotIF9fdTggYXNiWzQ2XTsKKyAgX191OCBhc2JbNDZdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENERl9SV1JUIDB4MDAyMAogI2RlZmluZSBDREZfSFdETSAweDAwMjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENERl9NUlcgMHgwMDI4CiAjZGVmaW5lIENETV9NUldfTk9UTVJXIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENETV9NUldfQkdGT1JNQVRfSU5BQ1RJVkUgMQogI2RlZmluZSBDRE1fTVJXX0JHRk9STUFUX0FDVElWRSAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRE1fTVJXX0JHRk9STUFUX0NPTVBMRVRFIDMKICNkZWZpbmUgTVJXX0xCQV9ETUEgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVJXX0xCQV9HQUEgMQogI2RlZmluZSBNUldfTU9ERV9QQ19QUkUxIDB4MmMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1SV19NT0RFX1BDIDB4MDMKIHN0cnVjdCBtcndfZmVhdHVyZV9kZXNjIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGZlYXR1cmVfY29kZTsKKyAgX19iZTE2IGZlYXR1cmVfY29kZTsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHJlc2VydmVkMSA6IDI7Ci0gX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBlcnNpc3RlbnQgOiAxOwotIF9fdTggY3VyciA6IDE7Ci0jZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IGN1cnIgOiAxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBlcnNpc3RlbnQgOiAxOwotIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKLSBfX3U4IHJlc2VydmVkMSA6IDI7Ci0jZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhZGRfbGVuOwotI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQyIDogNzsKLSBfX3U4IHdyaXRlIDogMTsKKyAgX191OCByZXNlcnZlZDEgOiAyOworICBfX3U4IGZlYXR1cmVfdmVyc2lvbiA6IDQ7CisgIF9fdTggcGVyc2lzdGVudCA6IDE7CisgIF9fdTggY3VyciA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCB3cml0ZSA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiA3OwotI2VuZGlmCisgIF9fdTggY3VyciA6IDE7CisgIF9fdTggcGVyc2lzdGVudCA6IDE7CisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDM7Ci0gX191OCByZXNlcnZlZDQ7Ci0gX191OCByZXNlcnZlZDU7CisgIF9fdTggcmVzZXJ2ZWQxIDogMjsKKyNlbmRpZgorICBfX3U4IGFkZF9sZW47CisjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkMiA6IDc7CisgIF9fdTggd3JpdGUgOiAxOworI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCisgIF9fdTggd3JpdGUgOiAxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDIgOiA3OworI2VuZGlmCisgIF9fdTggcmVzZXJ2ZWQzOworICBfX3U4IHJlc2VydmVkNDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWQ1OwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcndydF9mZWF0dXJlX2Rlc2MgewotIF9fYmUxNiBmZWF0dXJlX2NvZGU7CisgIF9fYmUxNiBmZWF0dXJlX2NvZGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQxIDogMjsKKyAgX191OCByZXNlcnZlZDEgOiAyOworICBfX3U4IGZlYXR1cmVfdmVyc2lvbiA6IDQ7CisgIF9fdTggcGVyc2lzdGVudCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKLSBfX3U4IHBlcnNpc3RlbnQgOiAxOwotIF9fdTggY3VyciA6IDE7CisgIF9fdTggY3VyciA6IDE7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKKyAgX191OCBjdXJyIDogMTsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjdXJyIDogMTsKLSBfX3U4IHBlcnNpc3RlbnQgOiAxOwotIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKLSBfX3U4IHJlc2VydmVkMSA6IDI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGZlYXR1cmVfdmVyc2lvbiA6IDQ7CisgIF9fdTggcmVzZXJ2ZWQxIDogMjsKICNlbmRpZgotIF9fdTggYWRkX2xlbjsKLSBfX3UzMiBsYXN0X2xiYTsKLSBfX3UzMiBibG9ja19zaXplOworICBfX3U4IGFkZF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGJsb2NraW5nOworICBfX3UzMiBsYXN0X2xiYTsKKyAgX191MzIgYmxvY2tfc2l6ZTsKKyAgX191MTYgYmxvY2tpbmc7CiAjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDIgOiA3OwotIF9fdTggcGFnZV9wcmVzZW50IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWQyIDogNzsKKyAgX191OCBwYWdlX3ByZXNlbnQgOiAxOwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCBwYWdlX3ByZXNlbnQgOiAxOwotIF9fdTggcmVzZXJ2ZWQyIDogNzsKLSNlbmRpZgorICBfX3U4IHBhZ2VfcHJlc2VudCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQzOworICBfX3U4IHJlc2VydmVkMiA6IDc7CisjZW5kaWYKKyAgX191OCByZXNlcnZlZDM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBfX2JlMTYgZGlzY19pbmZvcm1hdGlvbl9sZW5ndGg7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMTYgZGlzY19pbmZvcm1hdGlvbl9sZW5ndGg7CiAjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDEgOiAzOwotIF9fdTggZXJhc2FibGUgOiAxOwotIF9fdTggYm9yZGVyX3N0YXR1cyA6IDI7CisgIF9fdTggcmVzZXJ2ZWQxIDogMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkaXNjX3N0YXR1cyA6IDI7CisgIF9fdTggZXJhc2FibGUgOiAxOworICBfX3U4IGJvcmRlcl9zdGF0dXMgOiAyOworICBfX3U4IGRpc2Nfc3RhdHVzIDogMjsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggZGlzY19zdGF0dXMgOiAyOwotIF9fdTggYm9yZGVyX3N0YXR1cyA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZXJhc2FibGUgOiAxOwotIF9fdTggcmVzZXJ2ZWQxIDogMzsKKyAgX191OCBkaXNjX3N0YXR1cyA6IDI7CisgIF9fdTggYm9yZGVyX3N0YXR1cyA6IDI7CisgIF9fdTggZXJhc2FibGUgOiAxOworICBfX3U4IHJlc2VydmVkMSA6IDM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX3U4IG5fZmlyc3RfdHJhY2s7Ci0gX191OCBuX3Nlc3Npb25zX2xzYjsKLSBfX3U4IGZpcnN0X3RyYWNrX2xzYjsKKyAgX191OCBuX2ZpcnN0X3RyYWNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxhc3RfdHJhY2tfbHNiOworICBfX3U4IG5fc2Vzc2lvbnNfbHNiOworICBfX3U4IGZpcnN0X3RyYWNrX2xzYjsKKyAgX191OCBsYXN0X3RyYWNrX2xzYjsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IGRpZF92IDogMTsKLSBfX3U4IGRiY192IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1cnUgOiAxOwotIF9fdTggcmVzZXJ2ZWQyIDogMjsKLSBfX3U4IGRiaXQgOiAxOwotIF9fdTggbXJ3X3N0YXR1cyA6IDI7CisgIF9fdTggZGlkX3YgOiAxOworICBfX3U4IGRiY192IDogMTsKKyAgX191OCB1cnUgOiAxOworICBfX3U4IHJlc2VydmVkMiA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRiaXQgOiAxOworICBfX3U4IG1yd19zdGF0dXMgOiAyOwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCBtcndfc3RhdHVzIDogMjsKLSBfX3U4IGRiaXQgOiAxOwotIF9fdTggcmVzZXJ2ZWQyIDogMjsKKyAgX191OCBtcndfc3RhdHVzIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1cnUgOiAxOwotIF9fdTggZGJjX3YgOiAxOwotIF9fdTggZGlkX3YgOiAxOworICBfX3U4IGRiaXQgOiAxOworICBfX3U4IHJlc2VydmVkMiA6IDI7CisgIF9fdTggdXJ1IDogMTsKKyAgX191OCBkYmNfdiA6IDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRpZF92IDogMTsKICNlbmRpZgorICBfX3U4IGRpc2NfdHlwZTsKKyAgX191OCBuX3Nlc3Npb25zX21zYjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkaXNjX3R5cGU7Ci0gX191OCBuX3Nlc3Npb25zX21zYjsKLSBfX3U4IGZpcnN0X3RyYWNrX21zYjsKLSBfX3U4IGxhc3RfdHJhY2tfbXNiOworICBfX3U4IGZpcnN0X3RyYWNrX21zYjsKKyAgX191OCBsYXN0X3RyYWNrX21zYjsKKyAgX191MzIgZGlzY19pZDsKKyAgX191MzIgbGVhZF9pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGlzY19pZDsKLSBfX3UzMiBsZWFkX2luOwotIF9fdTMyIGxlYWRfb3V0OwotIF9fdTggZGlzY19iYXJfY29kZVs4XTsKKyAgX191MzIgbGVhZF9vdXQ7CisgIF9fdTggZGlzY19iYXJfY29kZVs4XTsKKyAgX191OCByZXNlcnZlZDM7CisgIF9fdTggbl9vcGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQzOwotIF9fdTggbl9vcGM7CiB9IGRpc2NfaW5mb3JtYXRpb247CiB0eXBlZGVmIHN0cnVjdCB7CisgIF9fYmUxNiB0cmFja19pbmZvcm1hdGlvbl9sZW5ndGg7CisgIF9fdTggdHJhY2tfbHNiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgdHJhY2tfaW5mb3JtYXRpb25fbGVuZ3RoOwotIF9fdTggdHJhY2tfbHNiOwotIF9fdTggc2Vzc2lvbl9sc2I7Ci0gX191OCByZXNlcnZlZDE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHNlc3Npb25fbHNiOworICBfX3U4IHJlc2VydmVkMTsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHJlc2VydmVkMiA6IDI7Ci0gX191OCBkYW1hZ2UgOiAxOwotIF9fdTggY29weSA6IDE7CisgIF9fdTggcmVzZXJ2ZWQyIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0cmFja19tb2RlIDogNDsKLSBfX3U4IHJ0IDogMTsKLSBfX3U4IGJsYW5rIDogMTsKLSBfX3U4IHBhY2tldCA6IDE7CisgIF9fdTggZGFtYWdlIDogMTsKKyAgX191OCBjb3B5IDogMTsKKyAgX191OCB0cmFja19tb2RlIDogNDsKKyAgX191OCBydCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZnAgOiAxOwotIF9fdTggZGF0YV9tb2RlIDogNDsKLSBfX3U4IHJlc2VydmVkMyA6IDY7Ci0gX191OCBscmFfdiA6IDE7CisgIF9fdTggYmxhbmsgOiAxOworICBfX3U4IHBhY2tldCA6IDE7CisgIF9fdTggZnAgOiAxOworICBfX3U4IGRhdGFfbW9kZSA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbndhX3YgOiAxOworICBfX3U4IHJlc2VydmVkMyA6IDY7CisgIF9fdTggbHJhX3YgOiAxOworICBfX3U4IG53YV92IDogMTsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggdHJhY2tfbW9kZSA6IDQ7Ci0gX191OCBjb3B5IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYW1hZ2UgOiAxOwotIF9fdTggcmVzZXJ2ZWQyIDogMjsKLSBfX3U4IGRhdGFfbW9kZSA6IDQ7Ci0gX191OCBmcCA6IDE7CisgIF9fdTggdHJhY2tfbW9kZSA6IDQ7CisgIF9fdTggY29weSA6IDE7CisgIF9fdTggZGFtYWdlIDogMTsKKyAgX191OCByZXNlcnZlZDIgOiAyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhY2tldCA6IDE7Ci0gX191OCBibGFuayA6IDE7Ci0gX191OCBydCA6IDE7Ci0gX191OCBud2FfdiA6IDE7CisgIF9fdTggZGF0YV9tb2RlIDogNDsKKyAgX191OCBmcCA6IDE7CisgIF9fdTggcGFja2V0IDogMTsKKyAgX191OCBibGFuayA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbHJhX3YgOiAxOwotIF9fdTggcmVzZXJ2ZWQzIDogNjsKKyAgX191OCBydCA6IDE7CisgIF9fdTggbndhX3YgOiAxOworICBfX3U4IGxyYV92IDogMTsKKyAgX191OCByZXNlcnZlZDMgOiA2OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fYmUzMiB0cmFja19zdGFydDsKKyAgX19iZTMyIHRyYWNrX3N0YXJ0OworICBfX2JlMzIgbmV4dF93cml0YWJsZTsKKyAgX19iZTMyIGZyZWVfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbmV4dF93cml0YWJsZTsKLSBfX2JlMzIgZnJlZV9ibG9ja3M7Ci0gX19iZTMyIGZpeGVkX3BhY2tldF9zaXplOwotIF9fYmUzMiB0cmFja19zaXplOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbGFzdF9yZWNfYWRkcmVzczsKKyAgX19iZTMyIGZpeGVkX3BhY2tldF9zaXplOworICBfX2JlMzIgdHJhY2tfc2l6ZTsKKyAgX19iZTMyIGxhc3RfcmVjX2FkZHJlc3M7CiB9IHRyYWNrX2luZm9ybWF0aW9uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmZWF0dXJlX2hlYWRlciB7Ci0gX191MzIgZGF0YV9sZW47CisgIF9fdTMyIGRhdGFfbGVuOworICBfX3U4IHJlc2VydmVkMTsKKyAgX191OCByZXNlcnZlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQxOwotIF9fdTggcmVzZXJ2ZWQyOwotIF9fdTE2IGN1cnJfcHJvZmlsZTsKKyAgX191MTYgY3Vycl9wcm9maWxlOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbW9kZV9wYWdlX2hlYWRlciB7Ci0gX19iZTE2IG1vZGVfZGF0YV9sZW5ndGg7Ci0gX191OCBtZWRpdW1fdHlwZTsKLSBfX3U4IHJlc2VydmVkMTsKKyAgX19iZTE2IG1vZGVfZGF0YV9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQyOwotIF9fdTggcmVzZXJ2ZWQzOwotIF9fYmUxNiBkZXNjX2xlbmd0aDsKKyAgX191OCBtZWRpdW1fdHlwZTsKKyAgX191OCByZXNlcnZlZDE7CisgIF9fdTggcmVzZXJ2ZWQyOworICBfX3U4IHJlc2VydmVkMzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUxNiBkZXNjX2xlbmd0aDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJtX2ZlYXR1cmVfZGVzYyB7Ci0gX19iZTE2IGZlYXR1cmVfY29kZTsKLSNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHJlc2VydmVkMToyOworICBfX2JlMTYgZmVhdHVyZV9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZlYXR1cmVfdmVyc2lvbjo0OwotIF9fdTggcGVyc2lzdGVudDoxOwotIF9fdTggY3VycjoxOworI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAorICBfX3U4IHJlc2VydmVkMSA6IDI7CisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggY3VyciA6IDE7CisjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKKyAgX191OCBjdXJyIDogMTsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKKyAgX191OCByZXNlcnZlZDEgOiAyOworI2VuZGlmCisgIF9fdTggYWRkX2xlbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECisgIF9fdTggbWVjaF90eXBlIDogMzsKKyAgX191OCBsb2FkIDogMTsKKyAgX191OCBlamVjdCA6IDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHB2bnRfam1wciA6IDE7CisgIF9fdTggZGJtbCA6IDE7CisgIF9fdTggbG9jayA6IDE7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjdXJyOjE7Ci0gX191OCBwZXJzaXN0ZW50OjE7Ci0gX191OCBmZWF0dXJlX3ZlcnNpb246NDsKLSBfX3U4IHJlc2VydmVkMToyOworICBfX3U4IGxvY2sgOiAxOworICBfX3U4IGRibWwgOiAxOworICBfX3U4IHB2bnRfam1wciA6IDE7CisgIF9fdTggZWplY3QgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBsb2FkIDogMTsKKyAgX191OCBtZWNoX3R5cGUgOiAzOwogI2VuZGlmCi0gX191OCBhZGRfbGVuOwotI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggbWVjaF90eXBlOjM7CisgIF9fdTggcmVzZXJ2ZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxvYWQ6MTsKLSBfX3U4IGVqZWN0OjE7Ci0gX191OCBwdm50X2ptcHI6MTsKLSBfX3U4IGRibWw6MTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsb2NrOjE7Ci0jZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IGxvY2s6MTsKLSBfX3U4IGRibWw6MTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwdm50X2ptcHI6MTsKLSBfX3U4IGVqZWN0OjE7Ci0gX191OCBsb2FkOjE7Ci0gX191OCBtZWNoX3R5cGU6MzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZW5kaWYKLSBfX3U4IHJlc2VydmVkMjsKLSBfX3U4IHJlc2VydmVkMzsKLSBfX3U4IHJlc2VydmVkNDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWQzOworICBfX3U4IHJlc2VydmVkNDsKIH07CiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nncm91cHN0YXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nncm91cHN0YXRzLmgKaW5kZXggMDRkZmJjYi4uMDM3OTRlNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jZ3JvdXBzdGF0cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2dyb3Vwc3RhdHMuaApAQCAtMjIsMzQgKzIyLDM0IEBACiAjaW5jbHVkZSA8bGludXgvdGFza3N0YXRzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNncm91cHN0YXRzIHsKLSBfX3U2NCBucl9zbGVlcGluZzsKLSBfX3U2NCBucl9ydW5uaW5nOwotIF9fdTY0IG5yX3N0b3BwZWQ7CisgIF9fdTY0IG5yX3NsZWVwaW5nOworICBfX3U2NCBucl9ydW5uaW5nOworICBfX3U2NCBucl9zdG9wcGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBucl91bmludGVycnVwdGlibGU7Ci0gX191NjQgbnJfaW9fd2FpdDsKKyAgX191NjQgbnJfdW5pbnRlcnJ1cHRpYmxlOworICBfX3U2NCBucl9pb193YWl0OwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1JPVVBTVEFUU19DTURfVU5TUEVDID0gX19UQVNLU1RBVFNfQ01EX01BWCwKLSBDR1JPVVBTVEFUU19DTURfR0VULAotIENHUk9VUFNUQVRTX0NNRF9ORVcsCi0gX19DR1JPVVBTVEFUU19DTURfTUFYLAorICBDR1JPVVBTVEFUU19DTURfVU5TUEVDID0gX19UQVNLU1RBVFNfQ01EX01BWCwKKyAgQ0dST1VQU1RBVFNfQ01EX0dFVCwKKyAgQ0dST1VQU1RBVFNfQ01EX05FVywKKyAgX19DR1JPVVBTVEFUU19DTURfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENHUk9VUFNUQVRTX0NNRF9NQVggKF9fQ0dST1VQU1RBVFNfQ01EX01BWCAtIDEpCiBlbnVtIHsKLSBDR1JPVVBTVEFUU19UWVBFX1VOU1BFQyA9IDAsCisgIENHUk9VUFNUQVRTX1RZUEVfVU5TUEVDID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0dST1VQU1RBVFNfVFlQRV9DR1JPVVBfU1RBVFMsCi0gX19DR1JPVVBTVEFUU19UWVBFX01BWCwKKyAgQ0dST1VQU1RBVFNfVFlQRV9DR1JPVVBfU1RBVFMsCisgIF9fQ0dST1VQU1RBVFNfVFlQRV9NQVgsCiB9OwogI2RlZmluZSBDR1JPVVBTVEFUU19UWVBFX01BWCAoX19DR1JPVVBTVEFUU19UWVBFX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gQ0dST1VQU1RBVFNfQ01EX0FUVFJfVU5TUEVDID0gMCwKLSBDR1JPVVBTVEFUU19DTURfQVRUUl9GRCwKLSBfX0NHUk9VUFNUQVRTX0NNRF9BVFRSX01BWCwKKyAgQ0dST1VQU1RBVFNfQ01EX0FUVFJfVU5TUEVDID0gMCwKKyAgQ0dST1VQU1RBVFNfQ01EX0FUVFJfRkQsCisgIF9fQ0dST1VQU1RBVFNfQ01EX0FUVFJfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENHUk9VUFNUQVRTX0NNRF9BVFRSX01BWCAoX19DR1JPVVBTVEFUU19DTURfQVRUUl9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jaGlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NoaW8uaAppbmRleCA1MjZlZTAyLi45ZTM0ZGRmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NoaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NoaW8uaApAQCAtMjcsNjIgKzI3LDYyIEBACiAjZGVmaW5lIENIRVRfVjQgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjaGFuZ2VyX3BhcmFtcyB7Ci0gaW50IGNwX2N1cnBpY2tlcjsKLSBpbnQgY3BfbnBpY2tlcnM7Ci0gaW50IGNwX25zbG90czsKKyAgaW50IGNwX2N1cnBpY2tlcjsKKyAgaW50IGNwX25waWNrZXJzOworICBpbnQgY3BfbnNsb3RzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY3BfbnBvcnRhbHM7Ci0gaW50IGNwX25kcml2ZXM7CisgIGludCBjcF9ucG9ydGFsczsKKyAgaW50IGNwX25kcml2ZXM7CiB9Owogc3RydWN0IGNoYW5nZXJfdmVuZG9yX3BhcmFtcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjdnBfbjE7Ci0gY2hhciBjdnBfbGFiZWwxWzE2XTsKLSBpbnQgY3ZwX24yOwotIGNoYXIgY3ZwX2xhYmVsMlsxNl07CisgIGludCBjdnBfbjE7CisgIGNoYXIgY3ZwX2xhYmVsMVsxNl07CisgIGludCBjdnBfbjI7CisgIGNoYXIgY3ZwX2xhYmVsMlsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjdnBfbjM7Ci0gY2hhciBjdnBfbGFiZWwzWzE2XTsKLSBpbnQgY3ZwX240OwotIGNoYXIgY3ZwX2xhYmVsNFsxNl07CisgIGludCBjdnBfbjM7CisgIGNoYXIgY3ZwX2xhYmVsM1sxNl07CisgIGludCBjdnBfbjQ7CisgIGNoYXIgY3ZwX2xhYmVsNFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZXNlcnZlZFs4XTsKKyAgaW50IHJlc2VydmVkWzhdOwogfTsKIHN0cnVjdCBjaGFuZ2VyX21vdmUgewotIGludCBjbV9mcm9tdHlwZTsKKyAgaW50IGNtX2Zyb210eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY21fZnJvbXVuaXQ7Ci0gaW50IGNtX3RvdHlwZTsKLSBpbnQgY21fdG91bml0OwotIGludCBjbV9mbGFnczsKKyAgaW50IGNtX2Zyb211bml0OworICBpbnQgY21fdG90eXBlOworICBpbnQgY21fdG91bml0OworICBpbnQgY21fZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ01fSU5WRVJUIDEKIHN0cnVjdCBjaGFuZ2VyX2V4Y2hhbmdlIHsKLSBpbnQgY2Vfc3JjdHlwZTsKKyAgaW50IGNlX3NyY3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjZV9zcmN1bml0OwotIGludCBjZV9mZHN0dHlwZTsKLSBpbnQgY2VfZmRzdHVuaXQ7Ci0gaW50IGNlX3Nkc3R0eXBlOworICBpbnQgY2Vfc3JjdW5pdDsKKyAgaW50IGNlX2Zkc3R0eXBlOworICBpbnQgY2VfZmRzdHVuaXQ7CisgIGludCBjZV9zZHN0dHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNlX3Nkc3R1bml0OwotIGludCBjZV9mbGFnczsKKyAgaW50IGNlX3Nkc3R1bml0OworICBpbnQgY2VfZmxhZ3M7CiB9OwogI2RlZmluZSBDRV9JTlZFUlQxIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENFX0lOVkVSVDIgMgogc3RydWN0IGNoYW5nZXJfcG9zaXRpb24gewotIGludCBjcF90eXBlOwotIGludCBjcF91bml0OworICBpbnQgY3BfdHlwZTsKKyAgaW50IGNwX3VuaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjcF9mbGFnczsKKyAgaW50IGNwX2ZsYWdzOwogfTsKICNkZWZpbmUgQ1BfSU5WRVJUIDEKIHN0cnVjdCBjaGFuZ2VyX2VsZW1lbnRfc3RhdHVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNlc190eXBlOwotIHVuc2lnbmVkIGNoYXIgX191c2VyICpjZXNfZGF0YTsKKyAgaW50IGNlc190eXBlOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGNlc19kYXRhOwogfTsKICNkZWZpbmUgQ0VTVEFUVVNfRlVMTCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtOTMsMjAgKzkzLDIwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRVNUQVRVU19JTkVOQUIgMHgyMAogc3RydWN0IGNoYW5nZXJfZ2V0X2VsZW1lbnQgewotIGludCBjZ2VfdHlwZTsKLSBpbnQgY2dlX3VuaXQ7CisgIGludCBjZ2VfdHlwZTsKKyAgaW50IGNnZV91bml0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2dlX3N0YXR1czsKLSBpbnQgY2dlX2Vycm5vOwotIGludCBjZ2Vfc3JjdHlwZTsKLSBpbnQgY2dlX3NyY3VuaXQ7CisgIGludCBjZ2Vfc3RhdHVzOworICBpbnQgY2dlX2Vycm5vOworICBpbnQgY2dlX3NyY3R5cGU7CisgIGludCBjZ2Vfc3JjdW5pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNnZV9pZDsKLSBpbnQgY2dlX2x1bjsKLSBjaGFyIGNnZV9wdm9sdGFnWzM2XTsKLSBjaGFyIGNnZV9hdm9sdGFnWzM2XTsKKyAgaW50IGNnZV9pZDsKKyAgaW50IGNnZV9sdW47CisgIGNoYXIgY2dlX3B2b2x0YWdbMzZdOworICBjaGFyIGNnZV9hdm9sdGFnWzM2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNnZV9mbGFnczsKKyAgaW50IGNnZV9mbGFnczsKIH07CiAjZGVmaW5lIENHRV9FUlJOTyAweDAxCiAjZGVmaW5lIENHRV9JTlZFUlQgMHgwMgpAQCAtMTE3LDI3ICsxMTcsMjcgQEAKICNkZWZpbmUgQ0dFX0FWT0xUQUcgMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjaGFuZ2VyX3NldF92b2x0YWcgewotIGludCBjc3ZfdHlwZTsKLSBpbnQgY3N2X3VuaXQ7Ci0gY2hhciBjc3Zfdm9sdGFnWzM2XTsKKyAgaW50IGNzdl90eXBlOworICBpbnQgY3N2X3VuaXQ7CisgIGNoYXIgY3N2X3ZvbHRhZ1szNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjc3ZfZmxhZ3M7CisgIGludCBjc3ZfZmxhZ3M7CiB9OwogI2RlZmluZSBDU1ZfUFZPTFRBRyAweDAxCiAjZGVmaW5lIENTVl9BVk9MVEFHIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENTVl9DTEVBUlRBRyAweDA0Ci0jZGVmaW5lIENISU9NT1ZFIF9JT1coJ2MnLCAxLHN0cnVjdCBjaGFuZ2VyX21vdmUpCi0jZGVmaW5lIENISU9FWENIQU5HRSBfSU9XKCdjJywgMixzdHJ1Y3QgY2hhbmdlcl9leGNoYW5nZSkKLSNkZWZpbmUgQ0hJT1BPU0lUSU9OIF9JT1coJ2MnLCAzLHN0cnVjdCBjaGFuZ2VyX3Bvc2l0aW9uKQorI2RlZmluZSBDSElPTU9WRSBfSU9XKCdjJywgMSwgc3RydWN0IGNoYW5nZXJfbW92ZSkKKyNkZWZpbmUgQ0hJT0VYQ0hBTkdFIF9JT1coJ2MnLCAyLCBzdHJ1Y3QgY2hhbmdlcl9leGNoYW5nZSkKKyNkZWZpbmUgQ0hJT1BPU0lUSU9OIF9JT1coJ2MnLCAzLCBzdHJ1Y3QgY2hhbmdlcl9wb3NpdGlvbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENISU9HUElDS0VSIF9JT1IoJ2MnLCA0LGludCkKLSNkZWZpbmUgQ0hJT1NQSUNLRVIgX0lPVygnYycsIDUsaW50KQotI2RlZmluZSBDSElPR1BBUkFNUyBfSU9SKCdjJywgNixzdHJ1Y3QgY2hhbmdlcl9wYXJhbXMpCi0jZGVmaW5lIENISU9HU1RBVFVTIF9JT1coJ2MnLCA4LHN0cnVjdCBjaGFuZ2VyX2VsZW1lbnRfc3RhdHVzKQorI2RlZmluZSBDSElPR1BJQ0tFUiBfSU9SKCdjJywgNCwgaW50KQorI2RlZmluZSBDSElPU1BJQ0tFUiBfSU9XKCdjJywgNSwgaW50KQorI2RlZmluZSBDSElPR1BBUkFNUyBfSU9SKCdjJywgNiwgc3RydWN0IGNoYW5nZXJfcGFyYW1zKQorI2RlZmluZSBDSElPR1NUQVRVUyBfSU9XKCdjJywgOCwgc3RydWN0IGNoYW5nZXJfZWxlbWVudF9zdGF0dXMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDSElPR0VMRU0gX0lPVygnYycsMTYsc3RydWN0IGNoYW5nZXJfZ2V0X2VsZW1lbnQpCi0jZGVmaW5lIENISU9JTklURUxFTSBfSU8oJ2MnLDE3KQotI2RlZmluZSBDSElPU1ZPTFRBRyBfSU9XKCdjJywxOCxzdHJ1Y3QgY2hhbmdlcl9zZXRfdm9sdGFnKQotI2RlZmluZSBDSElPR1ZQQVJBTVMgX0lPUignYycsMTksc3RydWN0IGNoYW5nZXJfdmVuZG9yX3BhcmFtcykKKyNkZWZpbmUgQ0hJT0dFTEVNIF9JT1coJ2MnLCAxNiwgc3RydWN0IGNoYW5nZXJfZ2V0X2VsZW1lbnQpCisjZGVmaW5lIENISU9JTklURUxFTSBfSU8oJ2MnLCAxNykKKyNkZWZpbmUgQ0hJT1NWT0xUQUcgX0lPVygnYycsIDE4LCBzdHJ1Y3QgY2hhbmdlcl9zZXRfdm9sdGFnKQorI2RlZmluZSBDSElPR1ZQQVJBTVMgX0lPUignYycsIDE5LCBzdHJ1Y3QgY2hhbmdlcl92ZW5kb3JfcGFyYW1zKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY200MDAwX2NzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NtNDAwMF9jcy5oCmluZGV4IDk5ZmU3MDEuLmIxODVjNzUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY200MDAwX2NzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jbTQwMDBfY3MuaApAQCAtMjQsMzIgKzI0LDMyIEBACiAjZGVmaW5lIE1BWF9BVFIgMzMKICNkZWZpbmUgQ000MDAwX01BWF9ERVYgNAogdHlwZWRlZiBzdHJ1Y3QgYXRyZXEgewotIF9fczMyIGF0cl9sZW47CisgIF9fczMyIGF0cl9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYXRyWzY0XTsKLSBfX3MzMiBwb3dlcl9hY3Q7Ci0gdW5zaWduZWQgY2hhciBiSUZTRDsKLSB1bnNpZ25lZCBjaGFyIGJJRlNDOworICB1bnNpZ25lZCBjaGFyIGF0cls2NF07CisgIF9fczMyIHBvd2VyX2FjdDsKKyAgdW5zaWduZWQgY2hhciBiSUZTRDsKKyAgdW5zaWduZWQgY2hhciBiSUZTQzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGF0cmVxX3Q7CiB0eXBlZGVmIHN0cnVjdCBwdHNyZXEgewotIF9fdTMyIHByb3RvY29sOwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIF9fdTMyIHByb3RvY29sOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHB0czE7Ci0gdW5zaWduZWQgY2hhciBwdHMyOwotIHVuc2lnbmVkIGNoYXIgcHRzMzsKKyAgdW5zaWduZWQgY2hhciBwdHMxOworICB1bnNpZ25lZCBjaGFyIHB0czI7CisgIHVuc2lnbmVkIGNoYXIgcHRzMzsKIH0gcHRzcmVxX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDTV9JT0NfTUFHSUMgJ2MnCiAjZGVmaW5lIENNX0lPQ19NQVhOUiAyNTUKLSNkZWZpbmUgQ01fSU9DR1NUQVRVUyBfSU9SIChDTV9JT0NfTUFHSUMsIDAsIHVuc2lnbmVkIGNoYXIgKikKKyNkZWZpbmUgQ01fSU9DR1NUQVRVUyBfSU9SKENNX0lPQ19NQUdJQywgMCwgdW5zaWduZWQgY2hhciAqKQogI2RlZmluZSBDTV9JT0NHQVRSIF9JT1dSKENNX0lPQ19NQUdJQywgMSwgYXRyZXFfdCAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ01fSU9DU1BUUyBfSU9XIChDTV9JT0NfTUFHSUMsIDIsIHB0c3JlcV90ICopCi0jZGVmaW5lIENNX0lPQ1NSRFIgX0lPIChDTV9JT0NfTUFHSUMsIDMpCi0jZGVmaW5lIENNX0lPQ0FSRE9GRiBfSU8gKENNX0lPQ19NQUdJQywgNCkKLSNkZWZpbmUgQ01fSU9TREJHTFZMIF9JT1coQ01fSU9DX01BR0lDLCAyNTAsIGludCopCisjZGVmaW5lIENNX0lPQ1NQVFMgX0lPVyhDTV9JT0NfTUFHSUMsIDIsIHB0c3JlcV90ICopCisjZGVmaW5lIENNX0lPQ1NSRFIgX0lPKENNX0lPQ19NQUdJQywgMykKKyNkZWZpbmUgQ01fSU9DQVJET0ZGIF9JTyhDTV9JT0NfTUFHSUMsIDQpCisjZGVmaW5lIENNX0lPU0RCR0xWTCBfSU9XKENNX0lPQ19NQUdJQywgMjUwLCBpbnQgKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENNX0NBUkRfSU5TRVJURUQgMHgwMQogI2RlZmluZSBDTV9DQVJEX1BPV0VSRUQgMHgwMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jbl9wcm9jLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NuX3Byb2MuaAppbmRleCBhZTRkNzQxLi5lZGViNDI0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NuX3Byb2MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NuX3Byb2MuaApAQCAtMjEsOTEgKzIxLDkxIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gcHJvY19jbl9tY2FzdF9vcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBST0NfQ05fTUNBU1RfTElTVEVOID0gMSwKLSBQUk9DX0NOX01DQVNUX0lHTk9SRSA9IDIKKyAgUFJPQ19DTl9NQ0FTVF9MSVNURU4gPSAxLAorICBQUk9DX0NOX01DQVNUX0lHTk9SRSA9IDIKIH07CiBzdHJ1Y3QgcHJvY19ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gd2hhdCB7Ci0gUFJPQ19FVkVOVF9OT05FID0gMHgwMDAwMDAwMCwKLSBQUk9DX0VWRU5UX0ZPUksgPSAweDAwMDAwMDAxLAotIFBST0NfRVZFTlRfRVhFQyA9IDB4MDAwMDAwMDIsCisgIGVudW0gd2hhdCB7CisgICAgUFJPQ19FVkVOVF9OT05FID0gMHgwMDAwMDAwMCwKKyAgICBQUk9DX0VWRU5UX0ZPUksgPSAweDAwMDAwMDAxLAorICAgIFBST0NfRVZFTlRfRVhFQyA9IDB4MDAwMDAwMDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBST0NfRVZFTlRfVUlEID0gMHgwMDAwMDAwNCwKLSBQUk9DX0VWRU5UX0dJRCA9IDB4MDAwMDAwNDAsCi0gUFJPQ19FVkVOVF9TSUQgPSAweDAwMDAwMDgwLAotIFBST0NfRVZFTlRfUFRSQUNFID0gMHgwMDAwMDEwMCwKKyAgICBQUk9DX0VWRU5UX1VJRCA9IDB4MDAwMDAwMDQsCisgICAgUFJPQ19FVkVOVF9HSUQgPSAweDAwMDAwMDQwLAorICAgIFBST0NfRVZFTlRfU0lEID0gMHgwMDAwMDA4MCwKKyAgICBQUk9DX0VWRU5UX1BUUkFDRSA9IDB4MDAwMDAxMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBST0NfRVZFTlRfQ09NTSA9IDB4MDAwMDAyMDAsCi0gUFJPQ19FVkVOVF9DT1JFRFVNUCA9IDB4NDAwMDAwMDAsCi0gUFJPQ19FVkVOVF9FWElUID0gMHg4MDAwMDAwMAotIH0gd2hhdDsKKyAgICBQUk9DX0VWRU5UX0NPTU0gPSAweDAwMDAwMjAwLAorICAgIFBST0NfRVZFTlRfQ09SRURVTVAgPSAweDQwMDAwMDAwLAorICAgIFBST0NfRVZFTlRfRVhJVCA9IDB4ODAwMDAwMDAKKyAgfSB3aGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcHU7Ci0gX191NjQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpIHRpbWVzdGFtcF9uczsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKKyAgX191MzIgY3B1OworICBfX3U2NCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSkgdGltZXN0YW1wX25zOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXJyOwotIH0gYWNrOwotIHN0cnVjdCBmb3JrX3Byb2NfZXZlbnQgewotIF9fa2VybmVsX3BpZF90IHBhcmVudF9waWQ7CisgICAgICBfX3UzMiBlcnI7CisgICAgfSBhY2s7CisgICAgc3RydWN0IGZvcmtfcHJvY19ldmVudCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBwYXJlbnRfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCBwYXJlbnRfdGdpZDsKLSBfX2tlcm5lbF9waWRfdCBjaGlsZF9waWQ7Ci0gX19rZXJuZWxfcGlkX3QgY2hpbGRfdGdpZDsKLSB9IGZvcms7CisgICAgICBfX2tlcm5lbF9waWRfdCBwYXJlbnRfdGdpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IGNoaWxkX3BpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IGNoaWxkX3RnaWQ7CisgICAgfSBmb3JrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZXhlY19wcm9jX2V2ZW50IHsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7Ci0gfSBleGVjOworICAgIHN0cnVjdCBleGVjX3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgfSBleGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWRfcHJvY19ldmVudCB7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOwotIHVuaW9uIHsKKyAgICBzdHJ1Y3QgaWRfcHJvY19ldmVudCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKKyAgICAgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnVpZDsKLSBfX3UzMiByZ2lkOwotIH0gcjsKLSB1bmlvbiB7CisgICAgICAgIF9fdTMyIHJ1aWQ7CisgICAgICAgIF9fdTMyIHJnaWQ7CisgICAgICB9IHI7CisgICAgICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV1aWQ7Ci0gX191MzIgZWdpZDsKLSB9IGU7Ci0gfSBpZDsKKyAgICAgICAgX191MzIgZXVpZDsKKyAgICAgICAgX191MzIgZWdpZDsKKyAgICAgIH0gZTsKKyAgICB9IGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc2lkX3Byb2NfZXZlbnQgewotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKLSB9IHNpZDsKKyAgICBzdHJ1Y3Qgc2lkX3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgfSBzaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwdHJhY2VfcHJvY19ldmVudCB7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOwotIF9fa2VybmVsX3BpZF90IHRyYWNlcl9waWQ7CisgICAgc3RydWN0IHB0cmFjZV9wcm9jX2V2ZW50IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOworICAgICAgX19rZXJuZWxfcGlkX3QgdHJhY2VyX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfcGlkX3QgdHJhY2VyX3RnaWQ7Ci0gfSBwdHJhY2U7Ci0gc3RydWN0IGNvbW1fcHJvY19ldmVudCB7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCB0cmFjZXJfdGdpZDsKKyAgICB9IHB0cmFjZTsKKyAgICBzdHJ1Y3QgY29tbV9wcm9jX2V2ZW50IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7Ci0gY2hhciBjb21tWzE2XTsKLSB9IGNvbW07Ci0gc3RydWN0IGNvcmVkdW1wX3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOworICAgICAgY2hhciBjb21tWzE2XTsKKyAgICB9IGNvbW07CisgICAgc3RydWN0IGNvcmVkdW1wX3Byb2NfZXZlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7Ci0gfSBjb3JlZHVtcDsKLSBzdHJ1Y3QgZXhpdF9wcm9jX2V2ZW50IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOworICAgIH0gY29yZWR1bXA7CisgICAgc3RydWN0IGV4aXRfcHJvY19ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKLSBfX3UzMiBleGl0X2NvZGUsIGV4aXRfc2lnbmFsOwotIH0gZXhpdDsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOworICAgICAgX191MzIgZXhpdF9jb2RlLCBleGl0X3NpZ25hbDsKKyAgICB9IGV4aXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZXZlbnRfZGF0YTsKKyAgfSBldmVudF9kYXRhOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb2RhLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGEuaAppbmRleCA0ZDU4MTc5Li5kZmU3YjkxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGEuaApAQCAtNDQsOSArNDQsOSBAQAogI2VuZGlmCiAjZGVmaW5lIGlubGluZQogc3RydWN0IHRpbWVzcGVjIHsKLSBsb25nIHRzX3NlYzsKKyAgbG9uZyB0c19zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgdHNfbnNlYzsKKyAgbG9uZyB0c19uc2VjOwogfTsKICNlbHNlCiAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KQEAgLTY5LDkgKzY5LDkgQEAKICNlbmRpZgogI2lmZGVmIF9fQ1lHV0lOMzJfXwogc3RydWN0IHRpbWVzcGVjIHsKLSB0aW1lX3QgdHZfc2VjOworICB0aW1lX3QgdHZfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHR2X25zZWM7CisgIGxvbmcgdHZfbnNlYzsKIH07CiAjZW5kaWYKICNpZm5kZWYgX19CSVRfVFlQRVNfREVGSU5FRF9fCkBAIC0xMDgsMTYgKzEwOCwxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1ZFTlVTX0RJUkVOVF9UXyAxCiBzdHJ1Y3QgdmVudXNfZGlyZW50IHsKLSB1X2ludDMyX3QgZF9maWxlbm87Ci0gdV9pbnQxNl90IGRfcmVjbGVuOworICB1X2ludDMyX3QgZF9maWxlbm87CisgIHVfaW50MTZfdCBkX3JlY2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdV9pbnQ4X3QgZF90eXBlOwotIHVfaW50OF90IGRfbmFtbGVuOwotIGNoYXIgZF9uYW1lW0NPREFfTUFYTkFNTEVOICsgMV07CisgIHVfaW50OF90IGRfdHlwZTsKKyAgdV9pbnQ4X3QgZF9uYW1sZW47CisgIGNoYXIgZF9uYW1lW0NPREFfTUFYTkFNTEVOICsgMV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICN1bmRlZiBESVJTSVoKLSNkZWZpbmUgRElSU0laKGRwKSAoKHNpemVvZiAoc3RydWN0IHZlbnVzX2RpcmVudCkgLSAoQ09EQV9NQVhOQU1MRU4rMSkpICsgICAoKChkcCktPmRfbmFtbGVuKzEgKyAzKSAmfiAzKSkKKyNkZWZpbmUgRElSU0laKGRwKSAoKHNpemVvZihzdHJ1Y3QgdmVudXNfZGlyZW50KSAtIChDT0RBX01BWE5BTUxFTiArIDEpKSArICgoKGRwKS0+ZF9uYW1sZW4gKyAxICsgMykgJiB+MykpCiAjZGVmaW5lIENEVF9VTktOT1dOIDAKICNkZWZpbmUgQ0RUX0ZJRk8gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE0MSw0ODYgKzE0MSw0OTkgQEAKICNlbmRpZgogc3RydWN0IENvZGFGaWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1X2ludDMyX3Qgb3BhcXVlWzRdOworICB1X2ludDMyX3Qgb3BhcXVlWzRdOwogfTsKLSNkZWZpbmUgY29kYV9mMmkoZmlkKSAgKGZpZCA/IChmaWQtPm9wYXF1ZVszXSBeIChmaWQtPm9wYXF1ZVsyXTw8MTApIF4gKGZpZC0+b3BhcXVlWzFdPDwyMCkgXiBmaWQtPm9wYXF1ZVswXSkgOiAwKQorI2RlZmluZSBjb2RhX2YyaShmaWQpIChmaWQgPyAoZmlkLT5vcGFxdWVbM10gXiAoZmlkLT5vcGFxdWVbMl0gPDwgMTApIF4gKGZpZC0+b3BhcXVlWzFdIDw8IDIwKSBeIGZpZC0+b3BhcXVlWzBdKSA6IDApCiAjaWZuZGVmIF9WRU5VU19WQVRUUl9UXwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1ZFTlVTX1ZBVFRSX1RfCi1lbnVtIGNvZGFfdnR5cGUgeyBDX1ZOT04sIENfVlJFRywgQ19WRElSLCBDX1ZCTEssIENfVkNIUiwgQ19WTE5LLCBDX1ZTT0NLLCBDX1ZGSUZPLCBDX1ZCQUQgfTsKLXN0cnVjdCBjb2RhX3ZhdHRyIHsKLSBsb25nIHZhX3R5cGU7CitlbnVtIGNvZGFfdnR5cGUgeworICBDX1ZOT04sCisgIENfVlJFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdV9zaG9ydCB2YV9tb2RlOwotIHNob3J0IHZhX25saW5rOwotIHZ1aWRfdCB2YV91aWQ7Ci0gdmdpZF90IHZhX2dpZDsKKyAgQ19WRElSLAorICBDX1ZCTEssCisgIENfVkNIUiwKKyAgQ19WTE5LLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHZhX2ZpbGVpZDsKLSB1X3F1YWRfdCB2YV9zaXplOwotIGxvbmcgdmFfYmxvY2tzaXplOwotIHN0cnVjdCB0aW1lc3BlYyB2YV9hdGltZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWVzcGVjIHZhX210aW1lOwotIHN0cnVjdCB0aW1lc3BlYyB2YV9jdGltZTsKLSB1X2xvbmcgdmFfZ2VuOwotIHVfbG9uZyB2YV9mbGFnczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2Rldl90IHZhX3JkZXY7Ci0gdV9xdWFkX3QgdmFfYnl0ZXM7Ci0gdV9xdWFkX3QgdmFfZmlsZXJldjsKKyAgQ19WU09DSywKKyAgQ19WRklGTywKKyAgQ19WQkFECiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjb2RhX3ZhdHRyIHsKKyAgbG9uZyB2YV90eXBlOworICB1X3Nob3J0IHZhX21vZGU7CisgIHNob3J0IHZhX25saW5rOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdnVpZF90IHZhX3VpZDsKKyAgdmdpZF90IHZhX2dpZDsKKyAgbG9uZyB2YV9maWxlaWQ7CisgIHVfcXVhZF90IHZhX3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsb25nIHZhX2Jsb2Nrc2l6ZTsKKyAgc3RydWN0IHRpbWVzcGVjIHZhX2F0aW1lOworICBzdHJ1Y3QgdGltZXNwZWMgdmFfbXRpbWU7CisgIHN0cnVjdCB0aW1lc3BlYyB2YV9jdGltZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVfbG9uZyB2YV9nZW47CisgIHVfbG9uZyB2YV9mbGFnczsKKyAgY2Rldl90IHZhX3JkZXY7CisgIHVfcXVhZF90IHZhX2J5dGVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdV9xdWFkX3QgdmFfZmlsZXJldjsKK307CiAjZW5kaWYKIHN0cnVjdCBjb2RhX3N0YXRmcyB7Ci0gaW50MzJfdCBmX2Jsb2NrczsKLSBpbnQzMl90IGZfYmZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgZl9iYXZhaWw7Ci0gaW50MzJfdCBmX2ZpbGVzOwotIGludDMyX3QgZl9mZnJlZTsKKyAgaW50MzJfdCBmX2Jsb2NrczsKKyAgaW50MzJfdCBmX2JmcmVlOworICBpbnQzMl90IGZfYmF2YWlsOworICBpbnQzMl90IGZfZmlsZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQzMl90IGZfZmZyZWU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9ST09UIDIKICNkZWZpbmUgQ09EQV9PUEVOX0JZX0ZEIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfT1BFTiA0CiAjZGVmaW5lIENPREFfQ0xPU0UgNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9JT0NUTCA2CiAjZGVmaW5lIENPREFfR0VUQVRUUiA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1NFVEFUVFIgOAogI2RlZmluZSBDT0RBX0FDQ0VTUyA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX0xPT0tVUCAxMAogI2RlZmluZSBDT0RBX0NSRUFURSAxMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9SRU1PVkUgMTIKICNkZWZpbmUgQ09EQV9MSU5LIDEzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JFTkFNRSAxNAogI2RlZmluZSBDT0RBX01LRElSIDE1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JNRElSIDE2CiAjZGVmaW5lIENPREFfU1lNTElOSyAxOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9SRUFETElOSyAxOQogI2RlZmluZSBDT0RBX0ZTWU5DIDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1ZHRVQgMjIKICNkZWZpbmUgQ09EQV9TSUdOQUwgMjMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfUkVQTEFDRSAyNAogI2RlZmluZSBDT0RBX0ZMVVNIIDI1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1BVUkdFVVNFUiAyNgogI2RlZmluZSBDT0RBX1pBUEZJTEUgMjcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfWkFQRElSIDI4CiAjZGVmaW5lIENPREFfUFVSR0VGSUQgMzAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfT1BFTl9CWV9QQVRIIDMxCiAjZGVmaW5lIENPREFfUkVTT0xWRSAzMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9SRUlOVEVHUkFURSAzMwogI2RlZmluZSBDT0RBX1NUQVRGUyAzNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9TVE9SRSAzNQogI2RlZmluZSBDT0RBX1JFTEVBU0UgMzYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfTkNBTExTIDM3CiAjZGVmaW5lIERPV05DQUxMKG9wY29kZSkgKG9wY29kZSA+PSBDT0RBX1JFUExBQ0UgJiYgb3Bjb2RlIDw9IENPREFfUFVSR0VGSUQpCi0jZGVmaW5lIFZDX01BWERBVEFTSVpFIDgxOTIKLSNkZWZpbmUgVkNfTUFYTVNHU0laRSBzaXplb2YodW5pb24gaW5wdXRBcmdzKStzaXplb2YodW5pb24gb3V0cHV0QXJncykgKyAgVkNfTUFYREFUQVNJWkUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZDX01BWERBVEFTSVpFIDgxOTIKKyNkZWZpbmUgVkNfTUFYTVNHU0laRSBzaXplb2YodW5pb24gaW5wdXRBcmdzKSArIHNpemVvZih1bmlvbiBvdXRwdXRBcmdzKSArIFZDX01BWERBVEFTSVpFCiAjZGVmaW5lIENJT0NfS0VSTkVMX1ZFUlNJT04gX0lPV1IoJ2MnLCAxMCwgc2l6ZV90KQogI2RlZmluZSBDT0RBX0tFUk5FTF9WRVJTSU9OIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9pbl9oZHIgewotIHVfaW50MzJfdCBvcGNvZGU7CisgIHVfaW50MzJfdCBvcGNvZGU7CisgIHVfaW50MzJfdCB1bmlxdWU7CisgIHBpZF90IHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdV9pbnQzMl90IHVuaXF1ZTsKLSBwaWRfdCBwaWQ7Ci0gcGlkX3QgcGdpZDsKLSB2dWlkX3QgdWlkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgcGlkX3QgcGdpZDsKKyAgdnVpZF90IHVpZDsKIH07CiBzdHJ1Y3QgY29kYV9vdXRfaGRyIHsKLSB1X2ludDMyX3Qgb3Bjb2RlOwotIHVfaW50MzJfdCB1bmlxdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVfaW50MzJfdCByZXN1bHQ7CisgIHVfaW50MzJfdCBvcGNvZGU7CisgIHVfaW50MzJfdCB1bmlxdWU7CisgIHVfaW50MzJfdCByZXN1bHQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3Jvb3Rfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogfTsKLXN0cnVjdCBjb2RhX3Jvb3RfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY29kYV9yb290X2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGluOwogfTsKIHN0cnVjdCBjb2RhX29wZW5faW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmxhZ3M7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IGZsYWdzOwogfTsKLXN0cnVjdCBjb2RhX29wZW5fb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjZGV2X3QgZGV2OwotIGlub190IGlub2RlOworc3RydWN0IGNvZGFfb3Blbl9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBjZGV2X3QgZGV2OworICBpbm9fdCBpbm9kZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfc3RvcmVfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIGludCBmbGFnczsKKyAgaW50IGZsYWdzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9zdG9yZV9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfcmVsZWFzZV9pbiB7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IGZsYWdzOworICBpbnQgZmxhZ3M7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3JlbGVhc2Vfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX2Nsb3NlX2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgZmxhZ3M7CisgIGludCBmbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfY2xvc2Vfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX2lvY3RsX2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgY21kOwotIGludCBsZW47CisgIGludCBjbWQ7CisgIGludCBsZW47CisgIGludCByd2ZsYWc7CisgIGNoYXIgKiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcndmbGFnOwotIGNoYXIgKmRhdGE7CiB9Owogc3RydWN0IGNvZGFfaW9jdGxfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBpbnQgbGVuOwotIGNhZGRyX3QgZGF0YTsKKyAgY2FkZHJfdCBkYXRhOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9nZXRhdHRyX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLX07CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Cit9Owogc3RydWN0IGNvZGFfZ2V0YXR0cl9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3NldGF0dHJfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CiB9Owogc3RydWN0IGNvZGFfc2V0YXR0cl9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX2FjY2Vzc19pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IGZsYWdzOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgZmxhZ3M7CiB9Owogc3RydWN0IGNvZGFfYWNjZXNzX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7Cit9OwogI2RlZmluZSBDTFVfQ0FTRV9TRU5TSVRJVkUgMHgwMQogI2RlZmluZSBDTFVfQ0FTRV9JTlNFTlNJVElWRSAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfbG9va3VwX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IG5hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IG5hbWU7Ci0gaW50IGZsYWdzOworICBpbnQgZmxhZ3M7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX2xvb2t1cF9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgdnR5cGU7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgdnR5cGU7CiB9Owogc3RydWN0IGNvZGFfY3JlYXRlX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKLSBpbnQgZXhjbDsKLSBpbnQgbW9kZTsKLSBpbnQgbmFtZTsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOworICBpbnQgZXhjbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBtb2RlOworICBpbnQgbmFtZTsKIH07CiBzdHJ1Y3QgY29kYV9jcmVhdGVfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CiB9Owotc3RydWN0IGNvZGFfcmVtb3ZlX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IG5hbWU7CitzdHJ1Y3QgY29kYV9yZW1vdmVfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBuYW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29kYV9yZW1vdmVfb3V0IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9saW5rX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgc291cmNlRmlkOworICBzdHJ1Y3QgQ29kYUZpZCBkZXN0RmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgQ29kYUZpZCBzb3VyY2VGaWQ7Ci0gc3RydWN0IENvZGFGaWQgZGVzdEZpZDsKLSBpbnQgdG5hbWU7CisgIGludCB0bmFtZTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfbGlua19vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfcmVuYW1lX2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBzb3VyY2VGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBzb3VyY2VGaWQ7Ci0gaW50IHNyY25hbWU7Ci0gc3RydWN0IENvZGFGaWQgZGVzdEZpZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRlc3RuYW1lOworICBpbnQgc3JjbmFtZTsKKyAgc3RydWN0IENvZGFGaWQgZGVzdEZpZDsKKyAgaW50IGRlc3RuYW1lOwogfTsKLXN0cnVjdCBjb2RhX3JlbmFtZV9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjb2RhX3JlbmFtZV9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKIH07CiBzdHJ1Y3QgY29kYV9ta2Rpcl9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7Ci0gaW50IG5hbWU7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKKyAgaW50IG5hbWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX21rZGlyX291dCB7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOworICBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9ybWRpcl9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IG5hbWU7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBuYW1lOwogfTsKIHN0cnVjdCBjb2RhX3JtZGlyX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfc3ltbGlua19pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IHNyY25hbWU7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKLSBpbnQgdG5hbWU7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBzcmNuYW1lOworICBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOworICBpbnQgdG5hbWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX3N5bWxpbmtfb3V0IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9yZWFkbGlua19pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiB9Owotc3RydWN0IGNvZGFfcmVhZGxpbmtfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY291bnQ7Ci0gY2FkZHJfdCBkYXRhOworc3RydWN0IGNvZGFfcmVhZGxpbmtfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgaW50IGNvdW50OworICBjYWRkcl90IGRhdGE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX2ZzeW5jX2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKIH07CiBzdHJ1Y3QgY29kYV9mc3luY19vdXQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3ZnZXRfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogfTsKLXN0cnVjdCBjb2RhX3ZnZXRfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIGludCB2dHlwZTsKK3N0cnVjdCBjb2RhX3ZnZXRfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IHZ0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29kYV9wdXJnZXVzZXJfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgdnVpZF90IHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSB2dWlkX3QgdWlkOwogfTsKIHN0cnVjdCBjb2RhX3phcGZpbGVfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgQ29kYUZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgQ29kYUZpZCBDb2RhRmlkOwogfTsKIHN0cnVjdCBjb2RhX3phcGRpcl9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBDb2RhRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBDb2RhRmlkIENvZGFGaWQ7CiB9Owogc3RydWN0IGNvZGFfcHVyZ2VmaWRfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgQ29kYUZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgQ29kYUZpZCBDb2RhRmlkOwogfTsKIHN0cnVjdCBjb2RhX3JlcGxhY2Vfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgTmV3RmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBDb2RhRmlkIE5ld0ZpZDsKLSBzdHJ1Y3QgQ29kYUZpZCBPbGRGaWQ7CisgIHN0cnVjdCBDb2RhRmlkIE9sZEZpZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfb3Blbl9ieV9mZF9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IGZsYWdzOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgZmxhZ3M7CiB9Owogc3RydWN0IGNvZGFfb3Blbl9ieV9mZF9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gaW50IGZkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgaW50IGZkOwogfTsKIHN0cnVjdCBjb2RhX29wZW5fYnlfcGF0aF9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmbGFnczsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgZmxhZ3M7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX29wZW5fYnlfcGF0aF9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwYXRoOworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBpbnQgcGF0aDsKIH07Ci1zdHJ1Y3QgY29kYV9zdGF0ZnNfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY29kYV9zdGF0ZnNfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaW47CiB9Owogc3RydWN0IGNvZGFfc3RhdGZzX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgY29kYV9zdGF0ZnMgc3RhdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIHN0cnVjdCBjb2RhX3N0YXRmcyBzdGF0OwogfTsKICNkZWZpbmUgQ09EQV9OT0NBQ0hFIDB4ODAwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiBpbnB1dEFyZ3MgewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgY29kYV9vcGVuX2luIGNvZGFfb3BlbjsKKyAgc3RydWN0IGNvZGFfc3RvcmVfaW4gY29kYV9zdG9yZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3Blbl9pbiBjb2RhX29wZW47Ci0gc3RydWN0IGNvZGFfc3RvcmVfaW4gY29kYV9zdG9yZTsKLSBzdHJ1Y3QgY29kYV9yZWxlYXNlX2luIGNvZGFfcmVsZWFzZTsKLSBzdHJ1Y3QgY29kYV9jbG9zZV9pbiBjb2RhX2Nsb3NlOworICBzdHJ1Y3QgY29kYV9yZWxlYXNlX2luIGNvZGFfcmVsZWFzZTsKKyAgc3RydWN0IGNvZGFfY2xvc2VfaW4gY29kYV9jbG9zZTsKKyAgc3RydWN0IGNvZGFfaW9jdGxfaW4gY29kYV9pb2N0bDsKKyAgc3RydWN0IGNvZGFfZ2V0YXR0cl9pbiBjb2RhX2dldGF0dHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2lvY3RsX2luIGNvZGFfaW9jdGw7Ci0gc3RydWN0IGNvZGFfZ2V0YXR0cl9pbiBjb2RhX2dldGF0dHI7Ci0gc3RydWN0IGNvZGFfc2V0YXR0cl9pbiBjb2RhX3NldGF0dHI7Ci0gc3RydWN0IGNvZGFfYWNjZXNzX2luIGNvZGFfYWNjZXNzOworICBzdHJ1Y3QgY29kYV9zZXRhdHRyX2luIGNvZGFfc2V0YXR0cjsKKyAgc3RydWN0IGNvZGFfYWNjZXNzX2luIGNvZGFfYWNjZXNzOworICBzdHJ1Y3QgY29kYV9sb29rdXBfaW4gY29kYV9sb29rdXA7CisgIHN0cnVjdCBjb2RhX2NyZWF0ZV9pbiBjb2RhX2NyZWF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfbG9va3VwX2luIGNvZGFfbG9va3VwOwotIHN0cnVjdCBjb2RhX2NyZWF0ZV9pbiBjb2RhX2NyZWF0ZTsKLSBzdHJ1Y3QgY29kYV9yZW1vdmVfaW4gY29kYV9yZW1vdmU7Ci0gc3RydWN0IGNvZGFfbGlua19pbiBjb2RhX2xpbms7CisgIHN0cnVjdCBjb2RhX3JlbW92ZV9pbiBjb2RhX3JlbW92ZTsKKyAgc3RydWN0IGNvZGFfbGlua19pbiBjb2RhX2xpbms7CisgIHN0cnVjdCBjb2RhX3JlbmFtZV9pbiBjb2RhX3JlbmFtZTsKKyAgc3RydWN0IGNvZGFfbWtkaXJfaW4gY29kYV9ta2RpcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfcmVuYW1lX2luIGNvZGFfcmVuYW1lOwotIHN0cnVjdCBjb2RhX21rZGlyX2luIGNvZGFfbWtkaXI7Ci0gc3RydWN0IGNvZGFfcm1kaXJfaW4gY29kYV9ybWRpcjsKLSBzdHJ1Y3QgY29kYV9zeW1saW5rX2luIGNvZGFfc3ltbGluazsKKyAgc3RydWN0IGNvZGFfcm1kaXJfaW4gY29kYV9ybWRpcjsKKyAgc3RydWN0IGNvZGFfc3ltbGlua19pbiBjb2RhX3N5bWxpbms7CisgIHN0cnVjdCBjb2RhX3JlYWRsaW5rX2luIGNvZGFfcmVhZGxpbms7CisgIHN0cnVjdCBjb2RhX2ZzeW5jX2luIGNvZGFfZnN5bmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3JlYWRsaW5rX2luIGNvZGFfcmVhZGxpbms7Ci0gc3RydWN0IGNvZGFfZnN5bmNfaW4gY29kYV9mc3luYzsKLSBzdHJ1Y3QgY29kYV92Z2V0X2luIGNvZGFfdmdldDsKLSBzdHJ1Y3QgY29kYV9vcGVuX2J5X2ZkX2luIGNvZGFfb3Blbl9ieV9mZDsKKyAgc3RydWN0IGNvZGFfdmdldF9pbiBjb2RhX3ZnZXQ7CisgIHN0cnVjdCBjb2RhX29wZW5fYnlfZmRfaW4gY29kYV9vcGVuX2J5X2ZkOworICBzdHJ1Y3QgY29kYV9vcGVuX2J5X3BhdGhfaW4gY29kYV9vcGVuX2J5X3BhdGg7CisgIHN0cnVjdCBjb2RhX3N0YXRmc19pbiBjb2RhX3N0YXRmczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3Blbl9ieV9wYXRoX2luIGNvZGFfb3Blbl9ieV9wYXRoOwotIHN0cnVjdCBjb2RhX3N0YXRmc19pbiBjb2RhX3N0YXRmczsKIH07CiB1bmlvbiBvdXRwdXRBcmdzIHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IGNvZGFfcm9vdF9vdXQgY29kYV9yb290OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBjb2RhX3Jvb3Rfb3V0IGNvZGFfcm9vdDsKLSBzdHJ1Y3QgY29kYV9vcGVuX291dCBjb2RhX29wZW47Ci0gc3RydWN0IGNvZGFfaW9jdGxfb3V0IGNvZGFfaW9jdGw7CisgIHN0cnVjdCBjb2RhX29wZW5fb3V0IGNvZGFfb3BlbjsKKyAgc3RydWN0IGNvZGFfaW9jdGxfb3V0IGNvZGFfaW9jdGw7CisgIHN0cnVjdCBjb2RhX2dldGF0dHJfb3V0IGNvZGFfZ2V0YXR0cjsKKyAgc3RydWN0IGNvZGFfbG9va3VwX291dCBjb2RhX2xvb2t1cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfZ2V0YXR0cl9vdXQgY29kYV9nZXRhdHRyOwotIHN0cnVjdCBjb2RhX2xvb2t1cF9vdXQgY29kYV9sb29rdXA7Ci0gc3RydWN0IGNvZGFfY3JlYXRlX291dCBjb2RhX2NyZWF0ZTsKLSBzdHJ1Y3QgY29kYV9ta2Rpcl9vdXQgY29kYV9ta2RpcjsKKyAgc3RydWN0IGNvZGFfY3JlYXRlX291dCBjb2RhX2NyZWF0ZTsKKyAgc3RydWN0IGNvZGFfbWtkaXJfb3V0IGNvZGFfbWtkaXI7CisgIHN0cnVjdCBjb2RhX3JlYWRsaW5rX291dCBjb2RhX3JlYWRsaW5rOworICBzdHJ1Y3QgY29kYV92Z2V0X291dCBjb2RhX3ZnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3JlYWRsaW5rX291dCBjb2RhX3JlYWRsaW5rOwotIHN0cnVjdCBjb2RhX3ZnZXRfb3V0IGNvZGFfdmdldDsKLSBzdHJ1Y3QgY29kYV9wdXJnZXVzZXJfb3V0IGNvZGFfcHVyZ2V1c2VyOwotIHN0cnVjdCBjb2RhX3phcGZpbGVfb3V0IGNvZGFfemFwZmlsZTsKKyAgc3RydWN0IGNvZGFfcHVyZ2V1c2VyX291dCBjb2RhX3B1cmdldXNlcjsKKyAgc3RydWN0IGNvZGFfemFwZmlsZV9vdXQgY29kYV96YXBmaWxlOworICBzdHJ1Y3QgY29kYV96YXBkaXJfb3V0IGNvZGFfemFwZGlyOworICBzdHJ1Y3QgY29kYV9wdXJnZWZpZF9vdXQgY29kYV9wdXJnZWZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfemFwZGlyX291dCBjb2RhX3phcGRpcjsKLSBzdHJ1Y3QgY29kYV9wdXJnZWZpZF9vdXQgY29kYV9wdXJnZWZpZDsKLSBzdHJ1Y3QgY29kYV9yZXBsYWNlX291dCBjb2RhX3JlcGxhY2U7Ci0gc3RydWN0IGNvZGFfb3Blbl9ieV9mZF9vdXQgY29kYV9vcGVuX2J5X2ZkOworICBzdHJ1Y3QgY29kYV9yZXBsYWNlX291dCBjb2RhX3JlcGxhY2U7CisgIHN0cnVjdCBjb2RhX29wZW5fYnlfZmRfb3V0IGNvZGFfb3Blbl9ieV9mZDsKKyAgc3RydWN0IGNvZGFfb3Blbl9ieV9wYXRoX291dCBjb2RhX29wZW5fYnlfcGF0aDsKKyAgc3RydWN0IGNvZGFfc3RhdGZzX291dCBjb2RhX3N0YXRmczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3Blbl9ieV9wYXRoX291dCBjb2RhX29wZW5fYnlfcGF0aDsKLSBzdHJ1Y3QgY29kYV9zdGF0ZnNfb3V0IGNvZGFfc3RhdGZzOwogfTsKIHVuaW9uIGNvZGFfZG93bmNhbGxzIHsKKyAgc3RydWN0IGNvZGFfcHVyZ2V1c2VyX291dCBwdXJnZXVzZXI7CisgIHN0cnVjdCBjb2RhX3phcGZpbGVfb3V0IHphcGZpbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3B1cmdldXNlcl9vdXQgcHVyZ2V1c2VyOwotIHN0cnVjdCBjb2RhX3phcGZpbGVfb3V0IHphcGZpbGU7Ci0gc3RydWN0IGNvZGFfemFwZGlyX291dCB6YXBkaXI7Ci0gc3RydWN0IGNvZGFfcHVyZ2VmaWRfb3V0IHB1cmdlZmlkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9yZXBsYWNlX291dCByZXBsYWNlOworICBzdHJ1Y3QgY29kYV96YXBkaXJfb3V0IHphcGRpcjsKKyAgc3RydWN0IGNvZGFfcHVyZ2VmaWRfb3V0IHB1cmdlZmlkOworICBzdHJ1Y3QgY29kYV9yZXBsYWNlX291dCByZXBsYWNlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBJT0NQQVJNX01BU0sgMHgwMDAwZmZmZgogc3RydWN0IFZpY2VJb2N0bCB7CisgIHZvaWQgX191c2VyICogaW47CisgIHZvaWQgX191c2VyICogb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqaW47Ci0gdm9pZCBfX3VzZXIgKm91dDsKLSB1X3Nob3J0IGluX3NpemU7Ci0gdV9zaG9ydCBvdXRfc2l6ZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVfc2hvcnQgaW5fc2l6ZTsKKyAgdV9zaG9ydCBvdXRfc2l6ZTsKIH07CiBzdHJ1Y3QgUGlvY3RsRGF0YSB7Ci0gY29uc3QgY2hhciBfX3VzZXIgKnBhdGg7Ci0gaW50IGZvbGxvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IFZpY2VJb2N0bCB2aTsKKyAgY29uc3QgY2hhciBfX3VzZXIgKiBwYXRoOworICBpbnQgZm9sbG93OworICBzdHJ1Y3QgVmljZUlvY3RsIHZpOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfQ09OVFJPTCAiLkNPTlRST0wiCiAjZGVmaW5lIENPREFfQ09OVFJPTExFTiA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDVExfSU5PIC0xCisjZGVmaW5lIENUTF9JTk8gLSAxCiAjZGVmaW5lIENPREFfTU9VTlRfVkVSU0lPTiAxCi1zdHJ1Y3QgY29kYV9tb3VudF9kYXRhIHsKLSBpbnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZkOworc3RydWN0IGNvZGFfbW91bnRfZGF0YSB7CisgIGludCB2ZXJzaW9uOworICBpbnQgZmQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb2RhX3BzZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGFfcHNkZXYuaAppbmRleCA3OWRhMDQyLi42ZTQ2MzJmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGFfcHNkZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGFfcHNkZXYuaApAQCAtMjMsMTYgKzIzLDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNQVhfQ09EQURFVlMgNQogc3RydWN0IHVwY19yZXEgewotIHN0cnVjdCBsaXN0X2hlYWQgdWNfY2hhaW47Ci0gY2FkZHJfdCB1Y19kYXRhOworICBzdHJ1Y3QgbGlzdF9oZWFkIHVjX2NoYWluOworICBjYWRkcl90IHVjX2RhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVfc2hvcnQgdWNfZmxhZ3M7Ci0gdV9zaG9ydCB1Y19pblNpemU7Ci0gdV9zaG9ydCB1Y19vdXRTaXplOwotIHVfc2hvcnQgdWNfb3Bjb2RlOworICB1X3Nob3J0IHVjX2ZsYWdzOworICB1X3Nob3J0IHVjX2luU2l6ZTsKKyAgdV9zaG9ydCB1Y19vdXRTaXplOworICB1X3Nob3J0IHVjX29wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHVjX3VuaXF1ZTsKLSB3YWl0X3F1ZXVlX2hlYWRfdCB1Y19zbGVlcDsKKyAgaW50IHVjX3VuaXF1ZTsKKyAgd2FpdF9xdWV1ZV9oZWFkX3QgdWNfc2xlZXA7CiB9OwogI2RlZmluZSBDT0RBX1JFUV9BU1lOQyAweDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZmYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29mZi5oCmluZGV4IGNkYmI4ZDguLjg3NjkxZGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29mZi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29mZi5oCkBAIC0xOSwyNCArMTksMjQgQEAKICNkZWZpbmUgRV9TWU1OTUxFTiA4CiAjZGVmaW5lIEVfRklMTk1MRU4gMTQKICNkZWZpbmUgRV9ESU1OVU0gNAotI2RlZmluZSBDT0ZGX1NIT1JUX0wocHMpICgoc2hvcnQpKCgodW5zaWduZWQgc2hvcnQpKCh1bnNpZ25lZCBjaGFyKXBzWzFdKTw8OCl8ICAoKHVuc2lnbmVkIHNob3J0KSgodW5zaWduZWQgY2hhcilwc1swXSkpKSkKKyNkZWZpbmUgQ09GRl9TSE9SVF9MKHBzKSAoKHNob3J0KSAoKCh1bnNpZ25lZCBzaG9ydCkgKCh1bnNpZ25lZCBjaGFyKSBwc1sxXSkgPDwgOCkgfCAoKHVuc2lnbmVkIHNob3J0KSAoKHVuc2lnbmVkIGNoYXIpIHBzWzBdKSkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ09GRl9MT05HX0wocHMpICgoKGxvbmcpKCgodW5zaWduZWQgbG9uZykoKHVuc2lnbmVkIGNoYXIpcHNbM10pPDwyNCkgfCAgKCh1bnNpZ25lZCBsb25nKSgodW5zaWduZWQgY2hhcilwc1syXSk8PDE2KSB8ICAoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzFdKTw8OCkgfCAgKCh1bnNpZ25lZCBsb25nKSgodW5zaWduZWQgY2hhcilwc1swXSkpKSkpCi0jZGVmaW5lIENPRkZfU0hPUlRfSChwcykgKChzaG9ydCkoKCh1bnNpZ25lZCBzaG9ydCkoKHVuc2lnbmVkIGNoYXIpcHNbMF0pPDw4KXwgICgodW5zaWduZWQgc2hvcnQpKCh1bnNpZ25lZCBjaGFyKXBzWzFdKSkpKQotI2RlZmluZSBDT0ZGX0xPTkdfSChwcykgKCgobG9uZykoKCh1bnNpZ25lZCBsb25nKSgodW5zaWduZWQgY2hhcilwc1swXSk8PDI0KSB8ICAoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzFdKTw8MTYpIHwgICgodW5zaWduZWQgbG9uZykoKHVuc2lnbmVkIGNoYXIpcHNbMl0pPDw4KSB8ICAoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzNdKSkpKSkKKyNkZWZpbmUgQ09GRl9MT05HX0wocHMpICgoKGxvbmcpICgoKHVuc2lnbmVkIGxvbmcpICgodW5zaWduZWQgY2hhcikgcHNbM10pIDw8IDI0KSB8ICgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1syXSkgPDwgMTYpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzFdKSA8PCA4KSB8ICgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1swXSkpKSkpCisjZGVmaW5lIENPRkZfU0hPUlRfSChwcykgKChzaG9ydCkgKCgodW5zaWduZWQgc2hvcnQpICgodW5zaWduZWQgY2hhcikgcHNbMF0pIDw8IDgpIHwgKCh1bnNpZ25lZCBzaG9ydCkgKCh1bnNpZ25lZCBjaGFyKSBwc1sxXSkpKSkKKyNkZWZpbmUgQ09GRl9MT05HX0gocHMpICgoKGxvbmcpICgoKHVuc2lnbmVkIGxvbmcpICgodW5zaWduZWQgY2hhcikgcHNbMF0pIDw8IDI0KSB8ICgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1sxXSkgPDwgMTYpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzJdKSA8PCA4KSB8ICgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1szXSkpKSkpCiAjZGVmaW5lIENPRkZfTE9ORyh2KSBDT0ZGX0xPTkdfTCh2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TSE9SVCh2KSBDT0ZGX1NIT1JUX0wodikKIHN0cnVjdCBDT0ZGX2ZpbGVoZHIgewotIGNoYXIgZl9tYWdpY1syXTsKLSBjaGFyIGZfbnNjbnNbMl07CisgIGNoYXIgZl9tYWdpY1syXTsKKyAgY2hhciBmX25zY25zWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZfdGltZGF0WzRdOwotIGNoYXIgZl9zeW1wdHJbNF07Ci0gY2hhciBmX25zeW1zWzRdOwotIGNoYXIgZl9vcHRoZHJbMl07CisgIGNoYXIgZl90aW1kYXRbNF07CisgIGNoYXIgZl9zeW1wdHJbNF07CisgIGNoYXIgZl9uc3ltc1s0XTsKKyAgY2hhciBmX29wdGhkclsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmX2ZsYWdzWzJdOworICBjaGFyIGZfZmxhZ3NbMl07CiB9OwogI2RlZmluZSBDT0ZGX0ZfUkVMRkxHIDAwMDAwMDEKICNkZWZpbmUgQ09GRl9GX0VYRUMgMDAwMDAwMgpAQCAtNTgsMTg2ICs1OCwxODIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfRklMSERSIHN0cnVjdCBDT0ZGX2ZpbGVoZHIKICNkZWZpbmUgQ09GRl9GSUxIU1ogc2l6ZW9mKENPRkZfRklMSERSKQotdHlwZWRlZiBzdHJ1Y3QKLXsKK3R5cGVkZWYgc3RydWN0IHsKKyAgY2hhciBtYWdpY1syXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtYWdpY1syXTsKLSBjaGFyIHZzdGFtcFsyXTsKLSBjaGFyIHRzaXplWzRdOwotIGNoYXIgZHNpemVbNF07CisgIGNoYXIgdnN0YW1wWzJdOworICBjaGFyIHRzaXplWzRdOworICBjaGFyIGRzaXplWzRdOworICBjaGFyIGJzaXplWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGJzaXplWzRdOwotIGNoYXIgZW50cnlbNF07Ci0gY2hhciB0ZXh0X3N0YXJ0WzRdOwotIGNoYXIgZGF0YV9zdGFydFs0XTsKKyAgY2hhciBlbnRyeVs0XTsKKyAgY2hhciB0ZXh0X3N0YXJ0WzRdOworICBjaGFyIGRhdGFfc3RhcnRbNF07Cit9IENPRkZfQU9VVEhEUjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19Ci1DT0ZGX0FPVVRIRFI7CiAjZGVmaW5lIENPRkZfQU9VVFNaIChzaXplb2YoQ09GRl9BT1VUSERSKSkKICNkZWZpbmUgQ09GRl9TVE1BR0lDIDA0MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfT01BR0lDIDA0MDQKICNkZWZpbmUgQ09GRl9KTUFHSUMgMDQwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9ETUFHSUMgMDQxMAogI2RlZmluZSBDT0ZGX1pNQUdJQyAwNDEzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NITUFHSUMgMDQ0Mwogc3RydWN0IENPRkZfc2NuaGRyIHsKLSBjaGFyIHNfbmFtZVs4XTsKLSBjaGFyIHNfcGFkZHJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc192YWRkcls0XTsKLSBjaGFyIHNfc2l6ZVs0XTsKLSBjaGFyIHNfc2NucHRyWzRdOwotIGNoYXIgc19yZWxwdHJbNF07CisgIGNoYXIgc19uYW1lWzhdOworICBjaGFyIHNfcGFkZHJbNF07CisgIGNoYXIgc192YWRkcls0XTsKKyAgY2hhciBzX3NpemVbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc19sbm5vcHRyWzRdOwotIGNoYXIgc19ucmVsb2NbMl07Ci0gY2hhciBzX25sbm5vWzJdOwotIGNoYXIgc19mbGFnc1s0XTsKKyAgY2hhciBzX3NjbnB0cls0XTsKKyAgY2hhciBzX3JlbHB0cls0XTsKKyAgY2hhciBzX2xubm9wdHJbNF07CisgIGNoYXIgc19ucmVsb2NbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIHNfbmxubm9bMl07CisgIGNoYXIgc19mbGFnc1s0XTsKIH07CiAjZGVmaW5lIENPRkZfU0NOSERSIHN0cnVjdCBDT0ZGX3NjbmhkcgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TQ05IU1ogc2l6ZW9mKENPRkZfU0NOSERSKQogI2RlZmluZSBDT0ZGX1RFWFQgIi50ZXh0IgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9EQVRBICIuZGF0YSIKICNkZWZpbmUgQ09GRl9CU1MgIi5ic3MiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX0NPTU1FTlQgIi5jb21tZW50IgogI2RlZmluZSBDT0ZGX0xJQiAiLmxpYiIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU0VDVF9URVhUIDAKICNkZWZpbmUgQ09GRl9TRUNUX0RBVEEgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TRUNUX0JTUyAyCiAjZGVmaW5lIENPRkZfU0VDVF9SRVFEIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU1RZUF9SRUcgMHgwMAogI2RlZmluZSBDT0ZGX1NUWVBfRFNFQ1QgMHgwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TVFlQX05PTE9BRCAweDAyCiAjZGVmaW5lIENPRkZfU1RZUF9HUk9VUCAweDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NUWVBfUEFEIDB4MDgKICNkZWZpbmUgQ09GRl9TVFlQX0NPUFkgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TVFlQX1RFWFQgMHgyMAogI2RlZmluZSBDT0ZGX1NUWVBfREFUQSAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NUWVBfQlNTIDB4ODAKICNkZWZpbmUgQ09GRl9TVFlQX0lORk8gMHgyMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU1RZUF9PVkVSIDB4NDAwCiAjZGVmaW5lIENPRkZfU1RZUF9MSUIgMHg4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgQ09GRl9zbGliIHsKLSBjaGFyIHNsX2VudHN6WzRdOwotIGNoYXIgc2xfcGF0aG5keFs0XTsKLX07CisgIGNoYXIgc2xfZW50c3pbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIHNsX3BhdGhuZHhbNF07Cit9OwogI2RlZmluZSBDT0ZGX1NMSUJIRCBzdHJ1Y3QgQ09GRl9zbGliCiAjZGVmaW5lIENPRkZfU0xJQlNaIHNpemVvZihDT0ZGX1NMSUJIRCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgQ09GRl9saW5lbm8gewotIHVuaW9uIHsKKyAgdW5pb24geworICAgIGNoYXIgbF9zeW1uZHhbNF07CisgICAgY2hhciBsX3BhZGRyWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGxfc3ltbmR4WzRdOwotIGNoYXIgbF9wYWRkcls0XTsKLSB9IGxfYWRkcjsKLSBjaGFyIGxfbG5ub1syXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH0gbF9hZGRyOworICBjaGFyIGxfbG5ub1syXTsKIH07CiAjZGVmaW5lIENPRkZfTElORU5PIHN0cnVjdCBDT0ZGX2xpbmVubworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9MSU5FU1ogNgogI2RlZmluZSBDT0ZGX0VfU1lNTk1MRU4gOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9FX0ZJTE5NTEVOIDE0CiAjZGVmaW5lIENPRkZfRV9ESU1OVU0gNAotc3RydWN0IENPRkZfc3ltZW50Ci17CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBjaGFyIGVfbmFtZVtFX1NZTU5NTEVOXTsKLSBzdHJ1Y3QgewotIGNoYXIgZV96ZXJvZXNbNF07CitzdHJ1Y3QgQ09GRl9zeW1lbnQgeworICB1bmlvbiB7CisgICAgY2hhciBlX25hbWVbRV9TWU1OTUxFTl07CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBlX29mZnNldFs0XTsKLSB9IGU7Ci0gfSBlOwotIGNoYXIgZV92YWx1ZVs0XTsKKyAgICAgIGNoYXIgZV96ZXJvZXNbNF07CisgICAgICBjaGFyIGVfb2Zmc2V0WzRdOworICAgIH0gZTsKKyAgfSBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGVfc2NudW1bMl07Ci0gY2hhciBlX3R5cGVbMl07Ci0gY2hhciBlX3NjbGFzc1sxXTsKLSBjaGFyIGVfbnVtYXV4WzFdOworICBjaGFyIGVfdmFsdWVbNF07CisgIGNoYXIgZV9zY251bVsyXTsKKyAgY2hhciBlX3R5cGVbMl07CisgIGNoYXIgZV9zY2xhc3NbMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIGVfbnVtYXV4WzFdOwogfTsKICNkZWZpbmUgQ09GRl9OX0JUTUFTSyAoMHhmKQogI2RlZmluZSBDT0ZGX05fVE1BU0sgKDB4MzApCi0jZGVmaW5lIENPRkZfTl9CVFNIRlQgKDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDT0ZGX05fQlRTSEZUICg0KQogI2RlZmluZSBDT0ZGX05fVFNISUZUICgyKQogdW5pb24gQ09GRl9hdXhlbnQgewotIHN0cnVjdCB7Ci0gY2hhciB4X3RhZ25keFs0XTsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB7Ci0gY2hhciB4X2xubm9bMl07Ci0gY2hhciB4X3NpemVbMl07CisgICAgY2hhciB4X3RhZ25keFs0XTsKKyAgICB1bmlvbiB7CisgICAgICBzdHJ1Y3QgeworICAgICAgICBjaGFyIHhfbG5ub1syXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB4X2xuc3o7Ci0gY2hhciB4X2ZzaXplWzRdOwotIH0geF9taXNjOwotIHVuaW9uIHsKKyAgICAgICAgY2hhciB4X3NpemVbMl07CisgICAgICB9IHhfbG5zejsKKyAgICAgIGNoYXIgeF9mc2l6ZVs0XTsKKyAgICB9IHhfbWlzYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBjaGFyIHhfbG5ub3B0cls0XTsKLSBjaGFyIHhfZW5kbmR4WzRdOwotIH0geF9mY247CisgICAgdW5pb24geworICAgICAgc3RydWN0IHsKKyAgICAgICAgY2hhciB4X2xubm9wdHJbNF07CisgICAgICAgIGNoYXIgeF9lbmRuZHhbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gY2hhciB4X2RpbWVuW0VfRElNTlVNXVsyXTsKLSB9IHhfYXJ5OwotIH0geF9mY25hcnk7CisgICAgICB9IHhfZmNuOworICAgICAgc3RydWN0IHsKKyAgICAgICAgY2hhciB4X2RpbWVuW0VfRElNTlVNXVsyXTsKKyAgICAgIH0geF9hcnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgeF90dm5keFsyXTsKLSB9IHhfc3ltOwotIHVuaW9uIHsKLSBjaGFyIHhfZm5hbWVbRV9GSUxOTUxFTl07CisgICAgfSB4X2ZjbmFyeTsKKyAgICBjaGFyIHhfdHZuZHhbMl07CisgIH0geF9zeW07CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBjaGFyIHhfemVyb2VzWzRdOwotIGNoYXIgeF9vZmZzZXRbNF07Ci0gfSB4X247CisgICAgY2hhciB4X2ZuYW1lW0VfRklMTk1MRU5dOworICAgIHN0cnVjdCB7CisgICAgICBjaGFyIHhfemVyb2VzWzRdOworICAgICAgY2hhciB4X29mZnNldFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB4X2ZpbGU7Ci0gc3RydWN0IHsKLSBjaGFyIHhfc2NubGVuWzRdOwotIGNoYXIgeF9ucmVsb2NbMl07CisgICAgfSB4X247CisgIH0geF9maWxlOworICBzdHJ1Y3QgeworICAgIGNoYXIgeF9zY25sZW5bNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgeF9ubGlubm9bMl07Ci0gfSB4X3NjbjsKLSBzdHJ1Y3QgewotIGNoYXIgeF90dmZpbGxbNF07CisgICAgY2hhciB4X25yZWxvY1syXTsKKyAgICBjaGFyIHhfbmxpbm5vWzJdOworICB9IHhfc2NuOworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHhfdHZsZW5bMl07Ci0gY2hhciB4X3R2cmFuWzJdWzJdOwotIH0geF90djsKKyAgICBjaGFyIHhfdHZmaWxsWzRdOworICAgIGNoYXIgeF90dmxlblsyXTsKKyAgICBjaGFyIHhfdHZyYW5bMl1bMl07CisgIH0geF90djsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TWU1FTlQgc3RydWN0IENPRkZfc3ltZW50CiAjZGVmaW5lIENPRkZfU1lNRVNaIDE4CiAjZGVmaW5lIENPRkZfQVVYRU5UIHVuaW9uIENPRkZfYXV4ZW50Ci0jZGVmaW5lIENPRkZfQVVYRVNaIDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDT0ZGX0FVWEVTWiAxOAogI2RlZmluZSBDT0ZGX0VURVhUICJldGV4dCIKIHN0cnVjdCBDT0ZGX3JlbG9jIHsKLSBjaGFyIHJfdmFkZHJbNF07Ci0gY2hhciByX3N5bW5keFs0XTsKKyAgY2hhciByX3ZhZGRyWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHJfdHlwZVsyXTsKKyAgY2hhciByX3N5bW5keFs0XTsKKyAgY2hhciByX3R5cGVbMl07CiB9OwogI2RlZmluZSBDT0ZGX1JFTE9DIHN0cnVjdCBDT0ZGX3JlbG9jCi0jZGVmaW5lIENPRkZfUkVMU1ogMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENPRkZfUkVMU1ogMTAKICNkZWZpbmUgQ09GRl9ERUZfREFUQV9TRUNUSU9OX0FMSUdOTUVOVCA0CiAjZGVmaW5lIENPRkZfREVGX0JTU19TRUNUSU9OX0FMSUdOTUVOVCA0CiAjZGVmaW5lIENPRkZfREVGX1RFWFRfU0VDVElPTl9BTElHTk1FTlQgNAotI2RlZmluZSBDT0ZGX0RFRl9TRUNUSU9OX0FMSUdOTUVOVCA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDT0ZGX0RFRl9TRUNUSU9OX0FMSUdOTUVOVCA0CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nvbm5lY3Rvci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb25uZWN0b3IuaAppbmRleCBjYjVlOWU2Li5iOWM0NzhiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nvbm5lY3Rvci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29ubmVjdG9yLmgKQEAgLTQ3LDE4ICs0NywxOCBAQAogI2RlZmluZSBDT05ORUNUT1JfTUFYX01TR19TSVpFIDE2Mzg0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNiX2lkIHsKLSBfX3UzMiBpZHg7Ci0gX191MzIgdmFsOworICBfX3UzMiBpZHg7CisgIF9fdTMyIHZhbDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNuX21zZyB7Ci0gc3RydWN0IGNiX2lkIGlkOwotIF9fdTMyIHNlcTsKLSBfX3UzMiBhY2s7CisgIHN0cnVjdCBjYl9pZCBpZDsKKyAgX191MzIgc2VxOworICBfX3UzMiBhY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGxlbjsKLSBfX3UxNiBmbGFnczsKLSBfX3U4IGRhdGFbMF07CisgIF9fdTE2IGxlbjsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTggZGF0YVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvbnN0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvbnN0LmgKaW5kZXggOWE4NWJlNy4uMjU0MzVlZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb25zdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29uc3QuaApAQCAtMjMsMTIgKzIzLDEyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfQVQoVCxYKSBYCiAjZWxzZQotI2RlZmluZSBfX0FDKFgsWSkgKFgjI1kpCi0jZGVmaW5lIF9BQyhYLFkpIF9fQUMoWCxZKQorI2RlZmluZSBfX0FDKFgsWSkgKFggIyNZKQorI2RlZmluZSBfQUMoWCxZKSBfX0FDKFgsIFkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfQVQoVCxYKSAoKFQpKFgpKQorI2RlZmluZSBfQVQoVCxYKSAoKFQpIChYKSkKICNlbmRpZgotI2RlZmluZSBfQklUVUwoeCkgKF9BQygxLFVMKSA8PCAoeCkpCi0jZGVmaW5lIF9CSVRVTEwoeCkgKF9BQygxLFVMTCkgPDwgKHgpKQorI2RlZmluZSBfQklUVUwoeCkgKF9BQygxLCBVTCkgPDwgKHgpKQorI2RlZmluZSBfQklUVUxMKHgpIChfQUMoMSwgVUxMKSA8PCAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NyYW1mc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jcmFtZnNfZnMuaAppbmRleCA4MDcwM2NjLi45NzBjNDRiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NyYW1mc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3JhbWZzX2ZzLmgKQEAgLTMyLDI5ICszMiwyOSBAQAogI2RlZmluZSBDUkFNRlNfTUFYUEFUSExFTiAoKCgxIDw8IENSQU1GU19OQU1FTEVOX1dJRFRIKSAtIDEpIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNyYW1mc19pbm9kZSB7Ci0gX191MzIgbW9kZTpDUkFNRlNfTU9ERV9XSURUSCwgdWlkOkNSQU1GU19VSURfV0lEVEg7Ci0gX191MzIgc2l6ZTpDUkFNRlNfU0laRV9XSURUSCwgZ2lkOkNSQU1GU19HSURfV0lEVEg7Ci0gX191MzIgbmFtZWxlbjpDUkFNRlNfTkFNRUxFTl9XSURUSCwgb2Zmc2V0OkNSQU1GU19PRkZTRVRfV0lEVEg7CisgIF9fdTMyIG1vZGUgOiBDUkFNRlNfTU9ERV9XSURUSCwgdWlkIDogQ1JBTUZTX1VJRF9XSURUSDsKKyAgX191MzIgc2l6ZSA6IENSQU1GU19TSVpFX1dJRFRILCBnaWQgOiBDUkFNRlNfR0lEX1dJRFRIOworICBfX3UzMiBuYW1lbGVuIDogQ1JBTUZTX05BTUVMRU5fV0lEVEgsIG9mZnNldCA6IENSQU1GU19PRkZTRVRfV0lEVEg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjcmFtZnNfaW5mbyB7Ci0gX191MzIgY3JjOwotIF9fdTMyIGVkaXRpb247CisgIF9fdTMyIGNyYzsKKyAgX191MzIgZWRpdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmxvY2tzOwotIF9fdTMyIGZpbGVzOworICBfX3UzMiBibG9ja3M7CisgIF9fdTMyIGZpbGVzOwogfTsKIHN0cnVjdCBjcmFtZnNfc3VwZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWdpYzsKLSBfX3UzMiBzaXplOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGZ1dHVyZTsKKyAgX191MzIgbWFnaWM7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBmdXR1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lnbmF0dXJlWzE2XTsKLSBzdHJ1Y3QgY3JhbWZzX2luZm8gZnNpZDsKLSBfX3U4IG5hbWVbMTZdOwotIHN0cnVjdCBjcmFtZnNfaW5vZGUgcm9vdDsKKyAgX191OCBzaWduYXR1cmVbMTZdOworICBzdHJ1Y3QgY3JhbWZzX2luZm8gZnNpZDsKKyAgX191OCBuYW1lWzE2XTsKKyAgc3RydWN0IGNyYW1mc19pbm9kZSByb290OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENSQU1GU19GTEFHX0ZTSURfVkVSU0lPTl8yIDB4MDAwMDAwMDEKQEAgLTYzLDYgKzYzLDYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENSQU1GU19GTEFHX1dST05HX1NJR05BVFVSRSAweDAwMDAwMjAwCiAjZGVmaW5lIENSQU1GU19GTEFHX1NISUZURURfUk9PVF9PRkZTRVQgMHgwMDAwMDQwMAotI2RlZmluZSBDUkFNRlNfU1VQUE9SVEVEX0ZMQUdTICggMHgwMDAwMDBmZiAgIHwgQ1JBTUZTX0ZMQUdfSE9MRVMgICB8IENSQU1GU19GTEFHX1dST05HX1NJR05BVFVSRSAgIHwgQ1JBTUZTX0ZMQUdfU0hJRlRFRF9ST09UX09GRlNFVCApCisjZGVmaW5lIENSQU1GU19TVVBQT1JURURfRkxBR1MgKDB4MDAwMDAwZmYgfCBDUkFNRlNfRkxBR19IT0xFUyB8IENSQU1GU19GTEFHX1dST05HX1NJR05BVFVSRSB8IENSQU1GU19GTEFHX1NISUZURURfUk9PVF9PRkZTRVQpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2N5Y2xhZGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2N5Y2xhZGVzLmgKaW5kZXggNTVjNzQ1ZS4uNzAxMmZkMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jeWNsYWRlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljbGFkZXMuaApAQCAtMjEsMjMgKzIxLDIzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBjeWNsYWRlc19tb25pdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBpbnRfY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBjaGFyX2NvdW50OwotIHVuc2lnbmVkIGxvbmcgY2hhcl9tYXg7Ci0gdW5zaWduZWQgbG9uZyBjaGFyX2xhc3Q7CisgIHVuc2lnbmVkIGxvbmcgaW50X2NvdW50OworICB1bnNpZ25lZCBsb25nIGNoYXJfY291bnQ7CisgIHVuc2lnbmVkIGxvbmcgY2hhcl9tYXg7CisgIHVuc2lnbmVkIGxvbmcgY2hhcl9sYXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY3ljbGFkZXNfaWRsZV9zdGF0cyB7Ci0gX19rZXJuZWxfdGltZV90IGluX3VzZTsKLSBfX2tlcm5lbF90aW1lX3QgcmVjdl9pZGxlOworICBfX2tlcm5lbF90aW1lX3QgaW5fdXNlOworICBfX2tlcm5lbF90aW1lX3QgcmVjdl9pZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF90aW1lX3QgeG1pdF9pZGxlOwotIHVuc2lnbmVkIGxvbmcgcmVjdl9ieXRlczsKLSB1bnNpZ25lZCBsb25nIHhtaXRfYnl0ZXM7Ci0gdW5zaWduZWQgbG9uZyBvdmVycnVuczsKKyAgX19rZXJuZWxfdGltZV90IHhtaXRfaWRsZTsKKyAgdW5zaWduZWQgbG9uZyByZWN2X2J5dGVzOworICB1bnNpZ25lZCBsb25nIHhtaXRfYnl0ZXM7CisgIHVuc2lnbmVkIGxvbmcgb3ZlcnJ1bnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZnJhbWVfZXJyczsKLSB1bnNpZ25lZCBsb25nIHBhcml0eV9lcnJzOworICB1bnNpZ25lZCBsb25nIGZyYW1lX2VycnM7CisgIHVuc2lnbmVkIGxvbmcgcGFyaXR5X2VycnM7CiB9OwogI2RlZmluZSBDWUNMQURFU19NQUdJQyAweDQzNTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC02NCwxNCArNjQsMTQgQEAKICNkZWZpbmUgQ1lTRVRXQUlUIDB4NDM1OTEyCiAjZGVmaW5lIENZR0VUV0FJVCAweDQzNTkxMwogI2RlZmluZSBDWklPQyAoJ00nIDw8IDgpCi0jZGVmaW5lIENaX05CT0FSRFMgKENaSU9DfDB4ZmEpCisjZGVmaW5lIENaX05CT0FSRFMgKENaSU9DIHwgMHhmYSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENaX0JPT1RfU1RBUlQgKENaSU9DfDB4ZmIpCi0jZGVmaW5lIENaX0JPT1RfREFUQSAoQ1pJT0N8MHhmYykKLSNkZWZpbmUgQ1pfQk9PVF9FTkQgKENaSU9DfDB4ZmQpCi0jZGVmaW5lIENaX1RFU1QgKENaSU9DfDB4ZmUpCisjZGVmaW5lIENaX0JPT1RfU1RBUlQgKENaSU9DIHwgMHhmYikKKyNkZWZpbmUgQ1pfQk9PVF9EQVRBIChDWklPQyB8IDB4ZmMpCisjZGVmaW5lIENaX0JPT1RfRU5EIChDWklPQyB8IDB4ZmQpCisjZGVmaW5lIENaX1RFU1QgKENaSU9DIHwgMHhmZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENaX0RFRl9QT0xMIChIWi8yNSkKKyNkZWZpbmUgQ1pfREVGX1BPTEwgKEhaIC8gMjUpCiAjZGVmaW5lIE1BWF9CT0FSRCA0CiAjZGVmaW5lIE1BWF9ERVYgMjU2CiAjZGVmaW5lIENZWl9NQVhfU1BFRUQgOTIxNjAwCkBAIC03OSwxNCArNzksMTQgQEAKICNkZWZpbmUgQ1laX0ZJRk9fU0laRSAxNgogI2RlZmluZSBDWVpfQk9PVF9OV09SRFMgMHgxMDAKIHN0cnVjdCBDWVpfQk9PVF9DVFJMIHsKLSB1bnNpZ25lZCBzaG9ydCBuYm9hcmQ7CisgIHVuc2lnbmVkIHNob3J0IG5ib2FyZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0YXR1c1tNQVhfQk9BUkRdOwotIGludCBuY2hhbm5lbFtNQVhfQk9BUkRdOwotIGludCBmd19yZXZbTUFYX0JPQVJEXTsKLSB1bnNpZ25lZCBsb25nIG9mZnNldDsKKyAgaW50IHN0YXR1c1tNQVhfQk9BUkRdOworICBpbnQgbmNoYW5uZWxbTUFYX0JPQVJEXTsKKyAgaW50IGZ3X3JldltNQVhfQk9BUkRdOworICB1bnNpZ25lZCBsb25nIG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBkYXRhW0NZWl9CT09UX05XT1JEU107CisgIHVuc2lnbmVkIGxvbmcgZGF0YVtDWVpfQk9PVF9OV09SRFNdOwogfTsKICNpZm5kZWYgRFBfV0lORE9XX1NJWkUKICNkZWZpbmUgRFBfV0lORE9XX1NJWkUgKDB4MDAwODAwMDApCkBAIC05NCw2NiArOTQsNjYgQEAKICNkZWZpbmUgWkVfRFBfV0lORE9XX1NJWkUgKDB4MDAxMDAwMDApCiAjZGVmaW5lIENUUkxfV0lORE9XX1NJWkUgKDB4MDAwMDAwODApCiBzdHJ1Y3QgQ1VTVE9NX1JFRyB7Ci0gX191MzIgZnBnYV9pZDsKKyAgX191MzIgZnBnYV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnBnYV92ZXJzaW9uOwotIF9fdTMyIGNwdV9zdGFydDsKLSBfX3UzMiBjcHVfc3RvcDsKLSBfX3UzMiBtaXNjX3JlZzsKKyAgX191MzIgZnBnYV92ZXJzaW9uOworICBfX3UzMiBjcHVfc3RhcnQ7CisgIF9fdTMyIGNwdV9zdG9wOworICBfX3UzMiBtaXNjX3JlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWR0X21vZGU7Ci0gX191MzIgdWFydF9pcnFfc3RhdHVzOwotIF9fdTMyIGNsZWFyX3RpbWVyMF9pcnE7Ci0gX191MzIgY2xlYXJfdGltZXIxX2lycTsKKyAgX191MzIgaWR0X21vZGU7CisgIF9fdTMyIHVhcnRfaXJxX3N0YXR1czsKKyAgX191MzIgY2xlYXJfdGltZXIwX2lycTsKKyAgX191MzIgY2xlYXJfdGltZXIxX2lycTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2xlYXJfdGltZXIyX2lycTsKLSBfX3UzMiB0ZXN0X3JlZ2lzdGVyOwotIF9fdTMyIHRlc3RfY291bnQ7Ci0gX191MzIgdGltZXJfc2VsZWN0OworICBfX3UzMiBjbGVhcl90aW1lcjJfaXJxOworICBfX3UzMiB0ZXN0X3JlZ2lzdGVyOworICBfX3UzMiB0ZXN0X2NvdW50OworICBfX3UzMiB0aW1lcl9zZWxlY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByX3VhcnRfaXJxX3N0YXR1czsKLSBfX3UzMiByYW1fd2FpdF9zdGF0ZTsKLSBfX3UzMiB1YXJ0X3dhaXRfc3RhdGU7Ci0gX191MzIgdGltZXJfd2FpdF9zdGF0ZTsKKyAgX191MzIgcHJfdWFydF9pcnFfc3RhdHVzOworICBfX3UzMiByYW1fd2FpdF9zdGF0ZTsKKyAgX191MzIgdWFydF93YWl0X3N0YXRlOworICBfX3UzMiB0aW1lcl93YWl0X3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhY2tfd2FpdF9zdGF0ZTsKKyAgX191MzIgYWNrX3dhaXRfc3RhdGU7CiB9Owogc3RydWN0IFJVTlRJTUVfOTA2MCB7Ci0gX191MzIgbG9jX2FkZHJfcmFuZ2U7CisgIF9fdTMyIGxvY19hZGRyX3JhbmdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsb2NfYWRkcl9iYXNlOwotIF9fdTMyIGxvY19hcmJpdHI7Ci0gX191MzIgZW5kaWFuX2Rlc2NyOwotIF9fdTMyIGxvY19yb21fcmFuZ2U7CisgIF9fdTMyIGxvY19hZGRyX2Jhc2U7CisgIF9fdTMyIGxvY19hcmJpdHI7CisgIF9fdTMyIGVuZGlhbl9kZXNjcjsKKyAgX191MzIgbG9jX3JvbV9yYW5nZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbG9jX3JvbV9iYXNlOwotIF9fdTMyIGxvY19idXNfZGVzY3I7Ci0gX191MzIgbG9jX3JhbmdlX21zdDsKLSBfX3UzMiBsb2NfYmFzZV9tc3Q7CisgIF9fdTMyIGxvY19yb21fYmFzZTsKKyAgX191MzIgbG9jX2J1c19kZXNjcjsKKyAgX191MzIgbG9jX3JhbmdlX21zdDsKKyAgX191MzIgbG9jX2Jhc2VfbXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsb2NfcmFuZ2VfaW87Ci0gX191MzIgcGNpX2Jhc2VfbXN0OwotIF9fdTMyIHBjaV9jb25mX2lvOwotIF9fdTMyIGZpbGxlcjE7CisgIF9fdTMyIGxvY19yYW5nZV9pbzsKKyAgX191MzIgcGNpX2Jhc2VfbXN0OworICBfX3UzMiBwY2lfY29uZl9pbzsKKyAgX191MzIgZmlsbGVyMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmlsbGVyMjsKLSBfX3UzMiBmaWxsZXIzOwotIF9fdTMyIGZpbGxlcjQ7Ci0gX191MzIgbWFpbF9ib3hfMDsKKyAgX191MzIgZmlsbGVyMjsKKyAgX191MzIgZmlsbGVyMzsKKyAgX191MzIgZmlsbGVyNDsKKyAgX191MzIgbWFpbF9ib3hfMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFpbF9ib3hfMTsKLSBfX3UzMiBtYWlsX2JveF8yOwotIF9fdTMyIG1haWxfYm94XzM7Ci0gX191MzIgZmlsbGVyNTsKKyAgX191MzIgbWFpbF9ib3hfMTsKKyAgX191MzIgbWFpbF9ib3hfMjsKKyAgX191MzIgbWFpbF9ib3hfMzsKKyAgX191MzIgZmlsbGVyNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmlsbGVyNjsKLSBfX3UzMiBmaWxsZXI3OwotIF9fdTMyIGZpbGxlcjg7Ci0gX191MzIgcGNpX2Rvb3JiZWxsOworICBfX3UzMiBmaWxsZXI2OworICBfX3UzMiBmaWxsZXI3OworICBfX3UzMiBmaWxsZXI4OworICBfX3UzMiBwY2lfZG9vcmJlbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvY19kb29yYmVsbDsKLSBfX3UzMiBpbnRyX2N0cmxfc3RhdDsKLSBfX3UzMiBpbml0X2N0cmw7CisgIF9fdTMyIGxvY19kb29yYmVsbDsKKyAgX191MzIgaW50cl9jdHJsX3N0YXQ7CisgIF9fdTMyIGluaXRfY3RybDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXSU5fUkFNIDB4MDAwMDAwMDFMCkBAIC0xNzYsOCArMTc2LDggQEAKICNkZWZpbmUgWkZfVElOQUNUIFpGX1RJTkFDVF9ERUYKIHN0cnVjdCBGSVJNX0lEIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2lnbmF0dXJlOwotIF9fdTMyIHpmd2N0cmxfYWRkcjsKKyAgX191MzIgc2lnbmF0dXJlOworICBfX3UzMiB6ZndjdHJsX2FkZHI7CiB9OwogI2RlZmluZSBDX09TX0xJTlVYIDB4MDAwMDAwMzAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0yOTksNzkgKzI5OSw3OSBAQAogI2RlZmluZSBDX0NNX0ZBVEFMIDB4OTEKICNkZWZpbmUgQ19DTV9IV19SRVNFVCAweDkyCiBzdHJ1Y3QgQ0hfQ1RSTCB7Ci0gX191MzIgb3BfbW9kZTsKKyAgX191MzIgb3BfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW50cl9lbmFibGU7Ci0gX191MzIgc3dfZmxvdzsKLSBfX3UzMiBmbG93X3N0YXR1czsKLSBfX3UzMiBjb21tX2JhdWQ7CisgIF9fdTMyIGludHJfZW5hYmxlOworICBfX3UzMiBzd19mbG93OworICBfX3UzMiBmbG93X3N0YXR1czsKKyAgX191MzIgY29tbV9iYXVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb21tX3Bhcml0eTsKLSBfX3UzMiBjb21tX2RhdGFfbDsKLSBfX3UzMiBjb21tX2ZsYWdzOwotIF9fdTMyIGh3X2Zsb3c7CisgIF9fdTMyIGNvbW1fcGFyaXR5OworICBfX3UzMiBjb21tX2RhdGFfbDsKKyAgX191MzIgY29tbV9mbGFnczsKKyAgX191MzIgaHdfZmxvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnNfY29udHJvbDsKLSBfX3UzMiByc19zdGF0dXM7Ci0gX191MzIgZmxvd194b247Ci0gX191MzIgZmxvd194b2ZmOworICBfX3UzMiByc19jb250cm9sOworICBfX3UzMiByc19zdGF0dXM7CisgIF9fdTMyIGZsb3dfeG9uOworICBfX3UzMiBmbG93X3hvZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGh3X292ZXJmbG93OwotIF9fdTMyIHN3X292ZXJmbG93OwotIF9fdTMyIGNvbW1fZXJyb3I7Ci0gX191MzIgaWNoYXI7CisgIF9fdTMyIGh3X292ZXJmbG93OworICBfX3UzMiBzd19vdmVyZmxvdzsKKyAgX191MzIgY29tbV9lcnJvcjsKKyAgX191MzIgaWNoYXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZpbGxlcls3XTsKKyAgX191MzIgZmlsbGVyWzddOwogfTsKIHN0cnVjdCBCVUZfQ1RSTCB7Ci0gX191MzIgZmxhZ19kbWE7CisgIF9fdTMyIGZsYWdfZG1hOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9idWZhZGRyOwotIF9fdTMyIHR4X2J1ZnNpemU7Ci0gX191MzIgdHhfdGhyZXNob2xkOwotIF9fdTMyIHR4X2dldDsKKyAgX191MzIgdHhfYnVmYWRkcjsKKyAgX191MzIgdHhfYnVmc2l6ZTsKKyAgX191MzIgdHhfdGhyZXNob2xkOworICBfX3UzMiB0eF9nZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X3B1dDsKLSBfX3UzMiByeF9idWZhZGRyOwotIF9fdTMyIHJ4X2J1ZnNpemU7Ci0gX191MzIgcnhfdGhyZXNob2xkOworICBfX3UzMiB0eF9wdXQ7CisgIF9fdTMyIHJ4X2J1ZmFkZHI7CisgIF9fdTMyIHJ4X2J1ZnNpemU7CisgIF9fdTMyIHJ4X3RocmVzaG9sZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfZ2V0OwotIF9fdTMyIHJ4X3B1dDsKLSBfX3UzMiBmaWxsZXJbNV07CisgIF9fdTMyIHJ4X2dldDsKKyAgX191MzIgcnhfcHV0OworICBfX3UzMiBmaWxsZXJbNV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBCT0FSRF9DVFJMIHsKLSBfX3UzMiBuX2NoYW5uZWw7Ci0gX191MzIgZndfdmVyc2lvbjsKLSBfX3UzMiBvcF9zeXN0ZW07CisgIF9fdTMyIG5fY2hhbm5lbDsKKyAgX191MzIgZndfdmVyc2lvbjsKKyAgX191MzIgb3Bfc3lzdGVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkcl92ZXJzaW9uOwotIF9fdTMyIGluYWN0aXZpdHk7Ci0gX191MzIgaGNtZF9jaGFubmVsOwotIF9fdTMyIGhjbWRfcGFyYW07CisgIF9fdTMyIGRyX3ZlcnNpb247CisgIF9fdTMyIGluYWN0aXZpdHk7CisgIF9fdTMyIGhjbWRfY2hhbm5lbDsKKyAgX191MzIgaGNtZF9wYXJhbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZndjbWRfY2hhbm5lbDsKLSBfX3UzMiBmd2NtZF9wYXJhbTsKLSBfX3UzMiB6Zl9pbnRfcXVldWVfYWRkcjsKLSBfX3UzMiBmaWxsZXJbNl07CisgIF9fdTMyIGZ3Y21kX2NoYW5uZWw7CisgIF9fdTMyIGZ3Y21kX3BhcmFtOworICBfX3UzMiB6Zl9pbnRfcXVldWVfYWRkcjsKKyAgX191MzIgZmlsbGVyWzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFFVRVVFX1NJWkUgKDEwKk1BWF9DSEFOKQorI2RlZmluZSBRVUVVRV9TSVpFICgxMCAqIE1BWF9DSEFOKQogc3RydWN0IElOVF9RVUVVRSB7Ci0gdW5zaWduZWQgY2hhciBpbnRyX2NvZGVbUVVFVUVfU0laRV07CisgIHVuc2lnbmVkIGNoYXIgaW50cl9jb2RlW1FVRVVFX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGNoYW5uZWxbUVVFVUVfU0laRV07Ci0gdW5zaWduZWQgbG9uZyBwYXJhbVtRVUVVRV9TSVpFXTsKLSB1bnNpZ25lZCBsb25nIHB1dDsKLSB1bnNpZ25lZCBsb25nIGdldDsKKyAgdW5zaWduZWQgbG9uZyBjaGFubmVsW1FVRVVFX1NJWkVdOworICB1bnNpZ25lZCBsb25nIHBhcmFtW1FVRVVFX1NJWkVdOworICB1bnNpZ25lZCBsb25nIHB1dDsKKyAgdW5zaWduZWQgbG9uZyBnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBaRldfQ1RSTCB7Ci0gc3RydWN0IEJPQVJEX0NUUkwgYm9hcmRfY3RybDsKLSBzdHJ1Y3QgQ0hfQ1RSTCBjaF9jdHJsW01BWF9DSEFOXTsKKyAgc3RydWN0IEJPQVJEX0NUUkwgYm9hcmRfY3RybDsKKyAgc3RydWN0IENIX0NUUkwgY2hfY3RybFtNQVhfQ0hBTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBCVUZfQ1RSTCBidWZfY3RybFtNQVhfQ0hBTl07CisgIHN0cnVjdCBCVUZfQ1RSTCBidWZfY3RybFtNQVhfQ0hBTl07CiB9OwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljeF9jZm0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljeF9jZm0uaAppbmRleCAyZDk5MzFlLi44YWEwZGIwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2N5Y3hfY2ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jeWN4X2NmbS5oCkBAIC0zOCwzNyArMzgsMzcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENGSURfWDI1XzJYIDUyMDAKIHN0cnVjdCBjeWN4X2Z3X2luZm8gewotIHVuc2lnbmVkIHNob3J0IGNvZGVpZDsKLSB1bnNpZ25lZCBzaG9ydCB2ZXJzaW9uOworICB1bnNpZ25lZCBzaG9ydCBjb2RlaWQ7CisgIHVuc2lnbmVkIHNob3J0IHZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGFkYXB0ZXJbQ0ZNX01BWF9DWUNYXTsKLSB1bnNpZ25lZCBsb25nIG1lbXNpemU7Ci0gdW5zaWduZWQgc2hvcnQgcmVzZXJ2ZWRbMl07Ci0gdW5zaWduZWQgc2hvcnQgc3RhcnRvZmZzOworICB1bnNpZ25lZCBzaG9ydCBhZGFwdGVyW0NGTV9NQVhfQ1lDWF07CisgIHVuc2lnbmVkIGxvbmcgbWVtc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgcmVzZXJ2ZWRbMl07CisgIHVuc2lnbmVkIHNob3J0IHN0YXJ0b2ZmczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgd2lub2ZmczsKLSB1bnNpZ25lZCBzaG9ydCBjb2Rlb2ZmczsKLSB1bnNpZ25lZCBsb25nIGNvZGVzaXplOwotIHVuc2lnbmVkIHNob3J0IGRhdGFvZmZzOworICB1bnNpZ25lZCBzaG9ydCB3aW5vZmZzOworICB1bnNpZ25lZCBzaG9ydCBjb2Rlb2ZmczsKKyAgdW5zaWduZWQgbG9uZyBjb2Rlc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgZGF0YW9mZnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZGF0YXNpemU7CisgIHVuc2lnbmVkIGxvbmcgZGF0YXNpemU7CiB9Owogc3RydWN0IGN5Y3hfZmlybXdhcmUgewotIGNoYXIgc2lnbmF0dXJlWzgwXTsKKyAgY2hhciBzaWduYXR1cmVbODBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB2ZXJzaW9uOwotIHVuc2lnbmVkIHNob3J0IGNoZWNrc3VtOwotIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkWzZdOwotIGNoYXIgZGVzY3JbQ0ZNX0RFU0NSX0xFTl07CisgIHVuc2lnbmVkIHNob3J0IHZlcnNpb247CisgIHVuc2lnbmVkIHNob3J0IGNoZWNrc3VtOworICB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZFs2XTsKKyAgY2hhciBkZXNjcltDRk1fREVTQ1JfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGN5Y3hfZndfaW5mbyBpbmZvOwotIHVuc2lnbmVkIGNoYXIgaW1hZ2VbMF07CisgIHN0cnVjdCBjeWN4X2Z3X2luZm8gaW5mbzsKKyAgdW5zaWduZWQgY2hhciBpbWFnZVswXTsKIH07CiBzdHJ1Y3QgY3ljeF9md19oZWFkZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJlc2V0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBkYXRhX3NpemU7Ci0gdW5zaWduZWQgbG9uZyBjb2RlX3NpemU7CisgIHVuc2lnbmVkIGxvbmcgcmVzZXRfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBkYXRhX3NpemU7CisgIHVuc2lnbmVkIGxvbmcgY29kZV9zaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNibmwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNibmwuaAppbmRleCA2OWIyMGFmLi4yNjIzYjhlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjYm5sLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kY2JubC5oCkBAIC0yNyw1MiArMjcsNTIgQEAKICNkZWZpbmUgSUVFRV84MDIxUUFaX1RTQV9WRU5ET1IgMjU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGllZWVfZXRzIHsKLSBfX3U4IHdpbGxpbmc7Ci0gX191OCBldHNfY2FwOwotIF9fdTggY2JzOworICBfX3U4IHdpbGxpbmc7CisgIF9fdTggZXRzX2NhcDsKKyAgX191OCBjYnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGNfdHhfYndbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTggdGNfcnhfYndbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTggdGNfdHNhW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKLSBfX3U4IHByaW9fdGNbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U4IHRjX3R4X2J3W0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191OCB0Y19yeF9id1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTggdGNfdHNhW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191OCBwcmlvX3RjW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0Y19yZWNvX2J3W0lFRUVfODAyMVFBWl9NQVhfVENTXTsKLSBfX3U4IHRjX3JlY29fdHNhW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKLSBfX3U4IHJlY29fcHJpb190Y1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTggdGNfcmVjb19id1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTggdGNfcmVjb190c2FbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U4IHJlY29fcHJpb190Y1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpZWVlX21heHJhdGUgewotIF9fdTY0IHRjX21heHJhdGVbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U2NCB0Y19tYXhyYXRlW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKIH07CiBzdHJ1Y3QgaWVlZV9wZmMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBmY19jYXA7Ci0gX191OCBwZmNfZW47Ci0gX191OCBtYmM7Ci0gX191MTYgZGVsYXk7CisgIF9fdTggcGZjX2NhcDsKKyAgX191OCBwZmNfZW47CisgIF9fdTggbWJjOworICBfX3UxNiBkZWxheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVxdWVzdHNbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTY0IGluZGljYXRpb25zW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191NjQgcmVxdWVzdHNbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U2NCBpbmRpY2F0aW9uc1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CiB9OwogI2RlZmluZSBDRUVfRENCWF9NQVhfUEdTIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENFRV9EQ0JYX01BWF9QUklPIDgKIHN0cnVjdCBjZWVfcGcgewotIF9fdTggd2lsbGluZzsKLSBfX3U4IGVycm9yOworICBfX3U4IHdpbGxpbmc7CisgIF9fdTggZXJyb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGdfZW47Ci0gX191OCB0Y3Nfc3VwcG9ydGVkOwotIF9fdTggcGdfYndbQ0VFX0RDQlhfTUFYX1BHU107Ci0gX191OCBwcmlvX3BnW0NFRV9EQ0JYX01BWF9QR1NdOworICBfX3U4IHBnX2VuOworICBfX3U4IHRjc19zdXBwb3J0ZWQ7CisgIF9fdTggcGdfYndbQ0VFX0RDQlhfTUFYX1BHU107CisgIF9fdTggcHJpb19wZ1tDRUVfRENCWF9NQVhfUEdTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNlZV9wZmMgewotIF9fdTggd2lsbGluZzsKLSBfX3U4IGVycm9yOworICBfX3U4IHdpbGxpbmc7CisgIF9fdTggZXJyb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGZjX2VuOwotIF9fdTggdGNzX3N1cHBvcnRlZDsKKyAgX191OCBwZmNfZW47CisgIF9fdTggdGNzX3N1cHBvcnRlZDsKIH07CiAjZGVmaW5lIElFRUVfODAyMVFBWl9BUFBfU0VMX0VUSEVSVFlQRSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtODEsMjIwICs4MSwyMjAgQEAKICNkZWZpbmUgSUVFRV84MDIxUUFaX0FQUF9TRUxfQU5ZIDQKIHN0cnVjdCBkY2JfYXBwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZWxlY3RvcjsKLSBfX3U4IHByaW9yaXR5OwotIF9fdTE2IHByb3RvY29sOworICBfX3U4IHNlbGVjdG9yOworICBfX3U4IHByaW9yaXR5OworICBfX3UxNiBwcm90b2NvbDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRjYl9wZWVyX2FwcF9pbmZvIHsKLSBfX3U4IHdpbGxpbmc7Ci0gX191OCBlcnJvcjsKKyAgX191OCB3aWxsaW5nOworICBfX3U4IGVycm9yOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGNibXNnIHsKLSBfX3U4IGRjYl9mYW1pbHk7Ci0gX191OCBjbWQ7Ci0gX191MTYgZGNiX3BhZDsKKyAgX191OCBkY2JfZmFtaWx5OworICBfX3U4IGNtZDsKKyAgX191MTYgZGNiX3BhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBkY2JubF9jb21tYW5kcyB7Ci0gRENCX0NNRF9VTkRFRklORUQsCi0gRENCX0NNRF9HU1RBVEUsCisgIERDQl9DTURfVU5ERUZJTkVELAorICBEQ0JfQ01EX0dTVEFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NNRF9TU1RBVEUsCi0gRENCX0NNRF9QR1RYX0dDRkcsCi0gRENCX0NNRF9QR1RYX1NDRkcsCi0gRENCX0NNRF9QR1JYX0dDRkcsCisgIERDQl9DTURfU1NUQVRFLAorICBEQ0JfQ01EX1BHVFhfR0NGRywKKyAgRENCX0NNRF9QR1RYX1NDRkcsCisgIERDQl9DTURfUEdSWF9HQ0ZHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX1BHUlhfU0NGRywKLSBEQ0JfQ01EX1BGQ19HQ0ZHLAotIERDQl9DTURfUEZDX1NDRkcsCi0gRENCX0NNRF9TRVRfQUxMLAorICBEQ0JfQ01EX1BHUlhfU0NGRywKKyAgRENCX0NNRF9QRkNfR0NGRywKKyAgRENCX0NNRF9QRkNfU0NGRywKKyAgRENCX0NNRF9TRVRfQUxMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX0dQRVJNX0hXQUREUiwKLSBEQ0JfQ01EX0dDQVAsCi0gRENCX0NNRF9HTlVNVENTLAotIERDQl9DTURfU05VTVRDUywKKyAgRENCX0NNRF9HUEVSTV9IV0FERFIsCisgIERDQl9DTURfR0NBUCwKKyAgRENCX0NNRF9HTlVNVENTLAorICBEQ0JfQ01EX1NOVU1UQ1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DTURfUEZDX0dTVEFURSwKLSBEQ0JfQ01EX1BGQ19TU1RBVEUsCi0gRENCX0NNRF9CQ05fR0NGRywKLSBEQ0JfQ01EX0JDTl9TQ0ZHLAorICBEQ0JfQ01EX1BGQ19HU1RBVEUsCisgIERDQl9DTURfUEZDX1NTVEFURSwKKyAgRENCX0NNRF9CQ05fR0NGRywKKyAgRENCX0NNRF9CQ05fU0NGRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NNRF9HQVBQLAotIERDQl9DTURfU0FQUCwKLSBEQ0JfQ01EX0lFRUVfU0VULAotIERDQl9DTURfSUVFRV9HRVQsCisgIERDQl9DTURfR0FQUCwKKyAgRENCX0NNRF9TQVBQLAorICBEQ0JfQ01EX0lFRUVfU0VULAorICBEQ0JfQ01EX0lFRUVfR0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX0dEQ0JYLAotIERDQl9DTURfU0RDQlgsCi0gRENCX0NNRF9HRkVBVENGRywKLSBEQ0JfQ01EX1NGRUFUQ0ZHLAorICBEQ0JfQ01EX0dEQ0JYLAorICBEQ0JfQ01EX1NEQ0JYLAorICBEQ0JfQ01EX0dGRUFUQ0ZHLAorICBEQ0JfQ01EX1NGRUFUQ0ZHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX0NFRV9HRVQsCi0gRENCX0NNRF9JRUVFX0RFTCwKLSBfX0RDQl9DTURfRU5VTV9NQVgsCi0gRENCX0NNRF9NQVggPSBfX0RDQl9DTURfRU5VTV9NQVggLSAxLAorICBEQ0JfQ01EX0NFRV9HRVQsCisgIERDQl9DTURfSUVFRV9ERUwsCisgIF9fRENCX0NNRF9FTlVNX01BWCwKKyAgRENCX0NNRF9NQVggPSBfX0RDQl9DTURfRU5VTV9NQVggLSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRjYm5sX2F0dHJzIHsKLSBEQ0JfQVRUUl9VTkRFRklORUQsCi0gRENCX0FUVFJfSUZOQU1FLAorICBEQ0JfQVRUUl9VTkRFRklORUQsCisgIERDQl9BVFRSX0lGTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FUVFJfU1RBVEUsCi0gRENCX0FUVFJfUEZDX1NUQVRFLAotIERDQl9BVFRSX1BGQ19DRkcsCi0gRENCX0FUVFJfTlVNX1RDLAorICBEQ0JfQVRUUl9TVEFURSwKKyAgRENCX0FUVFJfUEZDX1NUQVRFLAorICBEQ0JfQVRUUl9QRkNfQ0ZHLAorICBEQ0JfQVRUUl9OVU1fVEMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX1BHX0NGRywKLSBEQ0JfQVRUUl9TRVRfQUxMLAotIERDQl9BVFRSX1BFUk1fSFdBRERSLAotIERDQl9BVFRSX0NBUCwKKyAgRENCX0FUVFJfUEdfQ0ZHLAorICBEQ0JfQVRUUl9TRVRfQUxMLAorICBEQ0JfQVRUUl9QRVJNX0hXQUREUiwKKyAgRENCX0FUVFJfQ0FQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9OVU1UQ1MsCi0gRENCX0FUVFJfQkNOLAotIERDQl9BVFRSX0FQUCwKLSBEQ0JfQVRUUl9JRUVFLAorICBEQ0JfQVRUUl9OVU1UQ1MsCisgIERDQl9BVFRSX0JDTiwKKyAgRENCX0FUVFJfQVBQLAorICBEQ0JfQVRUUl9JRUVFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9EQ0JYLAotIERDQl9BVFRSX0ZFQVRDRkcsCi0gRENCX0FUVFJfQ0VFLAotIF9fRENCX0FUVFJfRU5VTV9NQVgsCisgIERDQl9BVFRSX0RDQlgsCisgIERDQl9BVFRSX0ZFQVRDRkcsCisgIERDQl9BVFRSX0NFRSwKKyAgX19EQ0JfQVRUUl9FTlVNX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FUVFJfTUFYID0gX19EQ0JfQVRUUl9FTlVNX01BWCAtIDEsCisgIERDQl9BVFRSX01BWCA9IF9fRENCX0FUVFJfRU5VTV9NQVggLSAxLAogfTsKIGVudW0gaWVlZV9hdHRycyB7Ci0gRENCX0FUVFJfSUVFRV9VTlNQRUMsCisgIERDQl9BVFRSX0lFRUVfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9JRUVFX0VUUywKLSBEQ0JfQVRUUl9JRUVFX1BGQywKLSBEQ0JfQVRUUl9JRUVFX0FQUF9UQUJMRSwKLSBEQ0JfQVRUUl9JRUVFX1BFRVJfRVRTLAorICBEQ0JfQVRUUl9JRUVFX0VUUywKKyAgRENCX0FUVFJfSUVFRV9QRkMsCisgIERDQl9BVFRSX0lFRUVfQVBQX1RBQkxFLAorICBEQ0JfQVRUUl9JRUVFX1BFRVJfRVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9JRUVFX1BFRVJfUEZDLAotIERDQl9BVFRSX0lFRUVfUEVFUl9BUFAsCi0gRENCX0FUVFJfSUVFRV9NQVhSQVRFLAotIF9fRENCX0FUVFJfSUVFRV9NQVgKKyAgRENCX0FUVFJfSUVFRV9QRUVSX1BGQywKKyAgRENCX0FUVFJfSUVFRV9QRUVSX0FQUCwKKyAgRENCX0FUVFJfSUVFRV9NQVhSQVRFLAorICBfX0RDQl9BVFRSX0lFRUVfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRENCX0FUVFJfSUVFRV9NQVggKF9fRENCX0FUVFJfSUVFRV9NQVggLSAxKQogZW51bSBpZWVlX2F0dHJzX2FwcCB7Ci0gRENCX0FUVFJfSUVFRV9BUFBfVU5TUEVDLAorICBEQ0JfQVRUUl9JRUVFX0FQUF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0lFRUVfQVBQLAotIF9fRENCX0FUVFJfSUVFRV9BUFBfTUFYCisgIERDQl9BVFRSX0lFRUVfQVBQLAorICBfX0RDQl9BVFRSX0lFRUVfQVBQX01BWAogfTsKICNkZWZpbmUgRENCX0FUVFJfSUVFRV9BUFBfTUFYIChfX0RDQl9BVFRSX0lFRUVfQVBQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjZWVfYXR0cnMgewotIERDQl9BVFRSX0NFRV9VTlNQRUMsCi0gRENCX0FUVFJfQ0VFX1BFRVJfUEcsCi0gRENCX0FUVFJfQ0VFX1BFRVJfUEZDLAorICBEQ0JfQVRUUl9DRUVfVU5TUEVDLAorICBEQ0JfQVRUUl9DRUVfUEVFUl9QRywKKyAgRENCX0FUVFJfQ0VFX1BFRVJfUEZDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfVEFCTEUsCi0gRENCX0FUVFJfQ0VFX1RYX1BHLAotIERDQl9BVFRSX0NFRV9SWF9QRywKLSBEQ0JfQVRUUl9DRUVfUEZDLAorICBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfVEFCTEUsCisgIERDQl9BVFRSX0NFRV9UWF9QRywKKyAgRENCX0FUVFJfQ0VFX1JYX1BHLAorICBEQ0JfQVRUUl9DRUVfUEZDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9DRUVfQVBQX1RBQkxFLAotIERDQl9BVFRSX0NFRV9GRUFULAotIF9fRENCX0FUVFJfQ0VFX01BWAorICBEQ0JfQVRUUl9DRUVfQVBQX1RBQkxFLAorICBEQ0JfQVRUUl9DRUVfRkVBVCwKKyAgX19EQ0JfQVRUUl9DRUVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRENCX0FUVFJfQ0VFX01BWCAoX19EQ0JfQVRUUl9DRUVfTUFYIC0gMSkKIGVudW0gcGVlcl9hcHBfYXR0ciB7Ci0gRENCX0FUVFJfQ0VFX1BFRVJfQVBQX1VOU1BFQywKLSBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfSU5GTywKKyAgRENCX0FUVFJfQ0VFX1BFRVJfQVBQX1VOU1BFQywKKyAgRENCX0FUVFJfQ0VFX1BFRVJfQVBQX0lORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0NFRV9QRUVSX0FQUCwKLSBfX0RDQl9BVFRSX0NFRV9QRUVSX0FQUF9NQVgKKyAgRENCX0FUVFJfQ0VFX1BFRVJfQVBQLAorICBfX0RDQl9BVFRSX0NFRV9QRUVSX0FQUF9NQVgKIH07CiAjZGVmaW5lIERDQl9BVFRSX0NFRV9QRUVSX0FQUF9NQVggKF9fRENCX0FUVFJfQ0VFX1BFRVJfQVBQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjZWVfYXR0cnNfYXBwIHsKLSBEQ0JfQVRUUl9DRUVfQVBQX1VOU1BFQywKLSBEQ0JfQVRUUl9DRUVfQVBQLAotIF9fRENCX0FUVFJfQ0VFX0FQUF9NQVgKKyAgRENCX0FUVFJfQ0VFX0FQUF9VTlNQRUMsCisgIERDQl9BVFRSX0NFRV9BUFAsCisgIF9fRENCX0FUVFJfQ0VFX0FQUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBEQ0JfQVRUUl9DRUVfQVBQX01BWCAoX19EQ0JfQVRUUl9DRUVfQVBQX01BWCAtIDEpCiBlbnVtIGRjYm5sX3BmY191cF9hdHRycyB7Ci0gRENCX1BGQ19VUF9BVFRSX1VOREVGSU5FRCwKKyAgRENCX1BGQ19VUF9BVFRSX1VOREVGSU5FRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX1BGQ19VUF9BVFRSXzAsCi0gRENCX1BGQ19VUF9BVFRSXzEsCi0gRENCX1BGQ19VUF9BVFRSXzIsCi0gRENCX1BGQ19VUF9BVFRSXzMsCisgIERDQl9QRkNfVVBfQVRUUl8wLAorICBEQ0JfUEZDX1VQX0FUVFJfMSwKKyAgRENCX1BGQ19VUF9BVFRSXzIsCisgIERDQl9QRkNfVVBfQVRUUl8zLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEZDX1VQX0FUVFJfNCwKLSBEQ0JfUEZDX1VQX0FUVFJfNSwKLSBEQ0JfUEZDX1VQX0FUVFJfNiwKLSBEQ0JfUEZDX1VQX0FUVFJfNywKKyAgRENCX1BGQ19VUF9BVFRSXzQsCisgIERDQl9QRkNfVVBfQVRUUl81LAorICBEQ0JfUEZDX1VQX0FUVFJfNiwKKyAgRENCX1BGQ19VUF9BVFRSXzcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9QRkNfVVBfQVRUUl9BTEwsCi0gX19EQ0JfUEZDX1VQX0FUVFJfRU5VTV9NQVgsCi0gRENCX1BGQ19VUF9BVFRSX01BWCA9IF9fRENCX1BGQ19VUF9BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX1BGQ19VUF9BVFRSX0FMTCwKKyAgX19EQ0JfUEZDX1VQX0FUVFJfRU5VTV9NQVgsCisgIERDQl9QRkNfVVBfQVRUUl9NQVggPSBfX0RDQl9QRkNfVVBfQVRUUl9FTlVNX01BWCAtIDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZGNibmxfcGdfYXR0cnMgewotIERDQl9QR19BVFRSX1VOREVGSU5FRCwKLSBEQ0JfUEdfQVRUUl9UQ18wLAotIERDQl9QR19BVFRSX1RDXzEsCisgIERDQl9QR19BVFRSX1VOREVGSU5FRCwKKyAgRENCX1BHX0FUVFJfVENfMCwKKyAgRENCX1BHX0FUVFJfVENfMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX1BHX0FUVFJfVENfMiwKLSBEQ0JfUEdfQVRUUl9UQ18zLAotIERDQl9QR19BVFRSX1RDXzQsCi0gRENCX1BHX0FUVFJfVENfNSwKKyAgRENCX1BHX0FUVFJfVENfMiwKKyAgRENCX1BHX0FUVFJfVENfMywKKyAgRENCX1BHX0FUVFJfVENfNCwKKyAgRENCX1BHX0FUVFJfVENfNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX1BHX0FUVFJfVENfNiwKLSBEQ0JfUEdfQVRUUl9UQ183LAotIERDQl9QR19BVFRSX1RDX01BWCwKLSBEQ0JfUEdfQVRUUl9UQ19BTEwsCisgIERDQl9QR19BVFRSX1RDXzYsCisgIERDQl9QR19BVFRSX1RDXzcsCisgIERDQl9QR19BVFRSX1RDX01BWCwKKyAgRENCX1BHX0FUVFJfVENfQUxMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEdfQVRUUl9CV19JRF8wLAotIERDQl9QR19BVFRSX0JXX0lEXzEsCi0gRENCX1BHX0FUVFJfQldfSURfMiwKLSBEQ0JfUEdfQVRUUl9CV19JRF8zLAorICBEQ0JfUEdfQVRUUl9CV19JRF8wLAorICBEQ0JfUEdfQVRUUl9CV19JRF8xLAorICBEQ0JfUEdfQVRUUl9CV19JRF8yLAorICBEQ0JfUEdfQVRUUl9CV19JRF8zLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEdfQVRUUl9CV19JRF80LAotIERDQl9QR19BVFRSX0JXX0lEXzUsCi0gRENCX1BHX0FUVFJfQldfSURfNiwKLSBEQ0JfUEdfQVRUUl9CV19JRF83LAorICBEQ0JfUEdfQVRUUl9CV19JRF80LAorICBEQ0JfUEdfQVRUUl9CV19JRF81LAorICBEQ0JfUEdfQVRUUl9CV19JRF82LAorICBEQ0JfUEdfQVRUUl9CV19JRF83LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEdfQVRUUl9CV19JRF9NQVgsCi0gRENCX1BHX0FUVFJfQldfSURfQUxMLAotIF9fRENCX1BHX0FUVFJfRU5VTV9NQVgsCi0gRENCX1BHX0FUVFJfTUFYID0gX19EQ0JfUEdfQVRUUl9FTlVNX01BWCAtIDEsCisgIERDQl9QR19BVFRSX0JXX0lEX01BWCwKKyAgRENCX1BHX0FUVFJfQldfSURfQUxMLAorICBfX0RDQl9QR19BVFRSX0VOVU1fTUFYLAorICBEQ0JfUEdfQVRUUl9NQVggPSBfX0RDQl9QR19BVFRSX0VOVU1fTUFYIC0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBkY2JubF90Y19hdHRycyB7Ci0gRENCX1RDX0FUVFJfUEFSQU1fVU5ERUZJTkVELAotIERDQl9UQ19BVFRSX1BBUkFNX1BHSUQsCisgIERDQl9UQ19BVFRSX1BBUkFNX1VOREVGSU5FRCwKKyAgRENCX1RDX0FUVFJfUEFSQU1fUEdJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX1RDX0FUVFJfUEFSQU1fVVBfTUFQUElORywKLSBEQ0JfVENfQVRUUl9QQVJBTV9TVFJJQ1RfUFJJTywKLSBEQ0JfVENfQVRUUl9QQVJBTV9CV19QQ1QsCi0gRENCX1RDX0FUVFJfUEFSQU1fQUxMLAorICBEQ0JfVENfQVRUUl9QQVJBTV9VUF9NQVBQSU5HLAorICBEQ0JfVENfQVRUUl9QQVJBTV9TVFJJQ1RfUFJJTywKKyAgRENCX1RDX0FUVFJfUEFSQU1fQldfUENULAorICBEQ0JfVENfQVRUUl9QQVJBTV9BTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fRENCX1RDX0FUVFJfUEFSQU1fRU5VTV9NQVgsCi0gRENCX1RDX0FUVFJfUEFSQU1fTUFYID0gX19EQ0JfVENfQVRUUl9QQVJBTV9FTlVNX01BWCAtIDEsCisgIF9fRENCX1RDX0FUVFJfUEFSQU1fRU5VTV9NQVgsCisgIERDQl9UQ19BVFRSX1BBUkFNX01BWCA9IF9fRENCX1RDX0FUVFJfUEFSQU1fRU5VTV9NQVggLSAxLAogfTsKIGVudW0gZGNibmxfY2FwX2F0dHJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NBUF9BVFRSX1VOREVGSU5FRCwKLSBEQ0JfQ0FQX0FUVFJfQUxMLAotIERDQl9DQVBfQVRUUl9QRywKLSBEQ0JfQ0FQX0FUVFJfUEZDLAorICBEQ0JfQ0FQX0FUVFJfVU5ERUZJTkVELAorICBEQ0JfQ0FQX0FUVFJfQUxMLAorICBEQ0JfQ0FQX0FUVFJfUEcsCisgIERDQl9DQVBfQVRUUl9QRkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DQVBfQVRUUl9VUDJUQywKLSBEQ0JfQ0FQX0FUVFJfUEdfVENTLAotIERDQl9DQVBfQVRUUl9QRkNfVENTLAotIERDQl9DQVBfQVRUUl9HU1AsCisgIERDQl9DQVBfQVRUUl9VUDJUQywKKyAgRENCX0NBUF9BVFRSX1BHX1RDUywKKyAgRENCX0NBUF9BVFRSX1BGQ19UQ1MsCisgIERDQl9DQVBfQVRUUl9HU1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DQVBfQVRUUl9CQ04sCi0gRENCX0NBUF9BVFRSX0RDQlgsCi0gX19EQ0JfQ0FQX0FUVFJfRU5VTV9NQVgsCi0gRENCX0NBUF9BVFRSX01BWCA9IF9fRENCX0NBUF9BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX0NBUF9BVFRSX0JDTiwKKyAgRENCX0NBUF9BVFRSX0RDQlgsCisgIF9fRENCX0NBUF9BVFRSX0VOVU1fTUFYLAorICBEQ0JfQ0FQX0FUVFJfTUFYID0gX19EQ0JfQ0FQX0FUVFJfRU5VTV9NQVggLSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIERDQl9DQVBfRENCWF9IT1NUIDB4MDEKQEAgLTMwNCw2NyArMzA0LDY3IEBACiAjZGVmaW5lIERDQl9DQVBfRENCWF9WRVJfSUVFRSAweDA4CiAjZGVmaW5lIERDQl9DQVBfRENCWF9TVEFUSUMgMHgxMAogZW51bSBkY2JubF9udW10Y3NfYXR0cnMgewotIERDQl9OVU1UQ1NfQVRUUl9VTkRFRklORUQsCisgIERDQl9OVU1UQ1NfQVRUUl9VTkRFRklORUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9OVU1UQ1NfQVRUUl9BTEwsCi0gRENCX05VTVRDU19BVFRSX1BHLAotIERDQl9OVU1UQ1NfQVRUUl9QRkMsCi0gX19EQ0JfTlVNVENTX0FUVFJfRU5VTV9NQVgsCisgIERDQl9OVU1UQ1NfQVRUUl9BTEwsCisgIERDQl9OVU1UQ1NfQVRUUl9QRywKKyAgRENCX05VTVRDU19BVFRSX1BGQywKKyAgX19EQ0JfTlVNVENTX0FUVFJfRU5VTV9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9OVU1UQ1NfQVRUUl9NQVggPSBfX0RDQl9OVU1UQ1NfQVRUUl9FTlVNX01BWCAtIDEsCisgIERDQl9OVU1UQ1NfQVRUUl9NQVggPSBfX0RDQl9OVU1UQ1NfQVRUUl9FTlVNX01BWCAtIDEsCiB9OwotZW51bSBkY2JubF9iY25fYXR0cnN7Ci0gRENCX0JDTl9BVFRSX1VOREVGSU5FRCA9IDAsCitlbnVtIGRjYm5sX2Jjbl9hdHRycyB7CisgIERDQl9CQ05fQVRUUl9VTkRFRklORUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQkNOX0FUVFJfUlBfMCwKLSBEQ0JfQkNOX0FUVFJfUlBfMSwKLSBEQ0JfQkNOX0FUVFJfUlBfMiwKLSBEQ0JfQkNOX0FUVFJfUlBfMywKKyAgRENCX0JDTl9BVFRSX1JQXzAsCisgIERDQl9CQ05fQVRUUl9SUF8xLAorICBEQ0JfQkNOX0FUVFJfUlBfMiwKKyAgRENCX0JDTl9BVFRSX1JQXzMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9SUF80LAotIERDQl9CQ05fQVRUUl9SUF81LAotIERDQl9CQ05fQVRUUl9SUF82LAotIERDQl9CQ05fQVRUUl9SUF83LAorICBEQ0JfQkNOX0FUVFJfUlBfNCwKKyAgRENCX0JDTl9BVFRSX1JQXzUsCisgIERDQl9CQ05fQVRUUl9SUF82LAorICBEQ0JfQkNOX0FUVFJfUlBfNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX1JQX0FMTCwKLSBEQ0JfQkNOX0FUVFJfQkNOQV8wLAotIERDQl9CQ05fQVRUUl9CQ05BXzEsCi0gRENCX0JDTl9BVFRSX0FMUEhBLAorICBEQ0JfQkNOX0FUVFJfUlBfQUxMLAorICBEQ0JfQkNOX0FUVFJfQkNOQV8wLAorICBEQ0JfQkNOX0FUVFJfQkNOQV8xLAorICBEQ0JfQkNOX0FUVFJfQUxQSEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9CRVRBLAotIERDQl9CQ05fQVRUUl9HRCwKLSBEQ0JfQkNOX0FUVFJfR0ksCi0gRENCX0JDTl9BVFRSX1RNQVgsCisgIERDQl9CQ05fQVRUUl9CRVRBLAorICBEQ0JfQkNOX0FUVFJfR0QsCisgIERDQl9CQ05fQVRUUl9HSSwKKyAgRENCX0JDTl9BVFRSX1RNQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9URCwKLSBEQ0JfQkNOX0FUVFJfUk1JTiwKLSBEQ0JfQkNOX0FUVFJfVywKLSBEQ0JfQkNOX0FUVFJfUkQsCisgIERDQl9CQ05fQVRUUl9URCwKKyAgRENCX0JDTl9BVFRSX1JNSU4sCisgIERDQl9CQ05fQVRUUl9XLAorICBEQ0JfQkNOX0FUVFJfUkQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9SVSwKLSBEQ0JfQkNOX0FUVFJfV1JUVCwKLSBEQ0JfQkNOX0FUVFJfUkksCi0gRENCX0JDTl9BVFRSX0MsCisgIERDQl9CQ05fQVRUUl9SVSwKKyAgRENCX0JDTl9BVFRSX1dSVFQsCisgIERDQl9CQ05fQVRUUl9SSSwKKyAgRENCX0JDTl9BVFRSX0MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9BTEwsCi0gX19EQ0JfQkNOX0FUVFJfRU5VTV9NQVgsCi0gRENCX0JDTl9BVFRSX01BWCA9IF9fRENCX0JDTl9BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX0JDTl9BVFRSX0FMTCwKKyAgX19EQ0JfQkNOX0FUVFJfRU5VTV9NQVgsCisgIERDQl9CQ05fQVRUUl9NQVggPSBfX0RDQl9CQ05fQVRUUl9FTlVNX01BWCAtIDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZGNiX2dlbmVyYWxfYXR0cl92YWx1ZXMgewotIERDQl9BVFRSX1ZBTFVFX1VOREVGSU5FRCA9IDB4ZmYKKyAgRENCX0FUVFJfVkFMVUVfVU5ERUZJTkVEID0gMHhmZgogfTsKICNkZWZpbmUgRENCX0FQUF9JRFRZUEVfRVRIVFlQRSAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEQ0JfQVBQX0lEVFlQRV9QT1JUTlVNIDB4MDEKIGVudW0gZGNibmxfYXBwX2F0dHJzIHsKLSBEQ0JfQVBQX0FUVFJfVU5ERUZJTkVELAotIERDQl9BUFBfQVRUUl9JRFRZUEUsCisgIERDQl9BUFBfQVRUUl9VTkRFRklORUQsCisgIERDQl9BUFBfQVRUUl9JRFRZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BUFBfQVRUUl9JRCwKLSBEQ0JfQVBQX0FUVFJfUFJJT1JJVFksCi0gX19EQ0JfQVBQX0FUVFJfRU5VTV9NQVgsCi0gRENCX0FQUF9BVFRSX01BWCA9IF9fRENCX0FQUF9BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX0FQUF9BVFRSX0lELAorICBEQ0JfQVBQX0FUVFJfUFJJT1JJVFksCisgIF9fRENCX0FQUF9BVFRSX0VOVU1fTUFYLAorICBEQ0JfQVBQX0FUVFJfTUFYID0gX19EQ0JfQVBQX0FUVFJfRU5VTV9NQVggLSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIERDQl9GRUFUQ0ZHX0VSUk9SIDB4MDEKQEAgLTM3MywxNCArMzczLDE0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEQ0JfRkVBVENGR19BRFZFUlRJU0UgMHgwOAogZW51bSBkY2JubF9mZWF0Y2ZnX2F0dHJzIHsKLSBEQ0JfRkVBVENGR19BVFRSX1VOREVGSU5FRCwKLSBEQ0JfRkVBVENGR19BVFRSX0FMTCwKKyAgRENCX0ZFQVRDRkdfQVRUUl9VTkRFRklORUQsCisgIERDQl9GRUFUQ0ZHX0FUVFJfQUxMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfRkVBVENGR19BVFRSX1BHLAotIERDQl9GRUFUQ0ZHX0FUVFJfUEZDLAotIERDQl9GRUFUQ0ZHX0FUVFJfQVBQLAotIF9fRENCX0ZFQVRDRkdfQVRUUl9FTlVNX01BWCwKKyAgRENCX0ZFQVRDRkdfQVRUUl9QRywKKyAgRENCX0ZFQVRDRkdfQVRUUl9QRkMsCisgIERDQl9GRUFUQ0ZHX0FUVFJfQVBQLAorICBfX0RDQl9GRUFUQ0ZHX0FUVFJfRU5VTV9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9GRUFUQ0ZHX0FUVFJfTUFYID0gX19EQ0JfRkVBVENGR19BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX0ZFQVRDRkdfQVRUUl9NQVggPSBfX0RDQl9GRUFUQ0ZHX0FUVFJfRU5VTV9NQVggLSAxLAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kY2NwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjY3AuaAppbmRleCA2Njk1ZmI2Li5kYzRlNzBlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjY3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjY3AuaApAQCAtMjIsMTYzICsyMiwxNTMgQEAKICNpbmNsdWRlIDxhc20vYnl0ZW9yZGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRjY3BfaGRyIHsKLSBfX2JlMTYgZGNjcGhfc3BvcnQsCi0gZGNjcGhfZHBvcnQ7Ci0gX191OCBkY2NwaF9kb2ZmOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTE2IGRjY3BoX3Nwb3J0LCBkY2NwaF9kcG9ydDsKKyAgX191OCBkY2NwaF9kb2ZmOwogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTggZGNjcGhfY3Njb3Y6NCwKLSBkY2NwaF9jY3ZhbDo0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBkY2NwaF9jc2NvdiA6IDQsIGRjY3BoX2NjdmFsIDogNDsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRjY3BoX2NjdmFsOjQsCi0gZGNjcGhfY3Njb3Y6NDsKKyAgX191OCBkY2NwaF9jY3ZhbCA6IDQsIGRjY3BoX2NzY292IDogNDsKICNlbHNlCi0jZXJyb3IgIkFkanVzdCB5b3VyIDxhc20vYnl0ZW9yZGVyLmg+IGRlZmluZXMiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2Vycm9yICJBZGp1c3QgeW91ciA8YXNtL2J5dGVvcmRlci5oPiBkZWZpbmVzIgogI2VuZGlmCi0gX19zdW0xNiBkY2NwaF9jaGVja3N1bTsKKyAgX19zdW0xNiBkY2NwaF9jaGVja3N1bTsKICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3U4IGRjY3BoX3g6MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZGNjcGhfdHlwZTo0LAotIGRjY3BoX3Jlc2VydmVkOjM7CisgIF9fdTggZGNjcGhfeCA6IDEsIGRjY3BoX3R5cGUgOiA0LCBkY2NwaF9yZXNlcnZlZCA6IDM7CiAjZWxpZiBkZWZpbmVkKF9fQklHX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IGRjY3BoX3Jlc2VydmVkOjMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRjY3BoX3R5cGU6NCwKLSBkY2NwaF94OjE7CisgIF9fdTggZGNjcGhfcmVzZXJ2ZWQgOiAzLCBkY2NwaF90eXBlIDogNCwgZGNjcGhfeCA6IDE7CiAjZWxzZQotI2Vycm9yICJBZGp1c3QgeW91ciA8YXNtL2J5dGVvcmRlci5oPiBkZWZpbmVzIgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlcnJvciAiQWRqdXN0IHlvdXIgPGFzbS9ieXRlb3JkZXIuaD4gZGVmaW5lcyIKICNlbmRpZgotIF9fdTggZGNjcGhfc2VxMjsKLSBfX2JlMTYgZGNjcGhfc2VxOworICBfX3U4IGRjY3BoX3NlcTI7CisgIF9fYmUxNiBkY2NwaF9zZXE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGNjcF9oZHJfZXh0IHsKLSBfX2JlMzIgZGNjcGhfc2VxX2xvdzsKKyAgX19iZTMyIGRjY3BoX3NlcV9sb3c7CiB9Owotc3RydWN0IGRjY3BfaGRyX3JlcXVlc3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGNjcGhfcmVxX3NlcnZpY2U7CitzdHJ1Y3QgZGNjcF9oZHJfcmVxdWVzdCB7CisgIF9fYmUzMiBkY2NwaF9yZXFfc2VydmljZTsKIH07CiBzdHJ1Y3QgZGNjcF9oZHJfYWNrX2JpdHMgewotIF9fYmUxNiBkY2NwaF9yZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBkY2NwaF9hY2tfbnJfaGlnaDsKLSBfX2JlMzIgZGNjcGhfYWNrX25yX2xvdzsKKyAgX19iZTE2IGRjY3BoX3Jlc2VydmVkMTsKKyAgX19iZTE2IGRjY3BoX2Fja19ucl9oaWdoOworICBfX2JlMzIgZGNjcGhfYWNrX25yX2xvdzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRjY3BfaGRyX3Jlc3BvbnNlIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRjY3BfaGRyX2Fja19iaXRzIGRjY3BoX3Jlc3BfYWNrOwotIF9fYmUzMiBkY2NwaF9yZXNwX3NlcnZpY2U7CisgIHN0cnVjdCBkY2NwX2hkcl9hY2tfYml0cyBkY2NwaF9yZXNwX2FjazsKKyAgX19iZTMyIGRjY3BoX3Jlc3Bfc2VydmljZTsKIH07Ci1zdHJ1Y3QgZGNjcF9oZHJfcmVzZXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZGNjcF9oZHJfYWNrX2JpdHMgZGNjcGhfcmVzZXRfYWNrOwotIF9fdTggZGNjcGhfcmVzZXRfY29kZSwKLSBkY2NwaF9yZXNldF9kYXRhWzNdOworc3RydWN0IGRjY3BfaGRyX3Jlc2V0IHsKKyAgc3RydWN0IGRjY3BfaGRyX2Fja19iaXRzIGRjY3BoX3Jlc2V0X2FjazsKKyAgX191OCBkY2NwaF9yZXNldF9jb2RlLCBkY2NwaF9yZXNldF9kYXRhWzNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGRjY3BfcGt0X3R5cGUgewotIERDQ1BfUEtUX1JFUVVFU1QgPSAwLAotIERDQ1BfUEtUX1JFU1BPTlNFLAotIERDQ1BfUEtUX0RBVEEsCisgIERDQ1BfUEtUX1JFUVVFU1QgPSAwLAorICBEQ0NQX1BLVF9SRVNQT05TRSwKKyAgRENDUF9QS1RfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUF9QS1RfQUNLLAotIERDQ1BfUEtUX0RBVEFBQ0ssCi0gRENDUF9QS1RfQ0xPU0VSRVEsCi0gRENDUF9QS1RfQ0xPU0UsCisgIERDQ1BfUEtUX0FDSywKKyAgRENDUF9QS1RfREFUQUFDSywKKyAgRENDUF9QS1RfQ0xPU0VSRVEsCisgIERDQ1BfUEtUX0NMT1NFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1BLVF9SRVNFVCwKLSBEQ0NQX1BLVF9TWU5DLAotIERDQ1BfUEtUX1NZTkNBQ0ssCi0gRENDUF9QS1RfSU5WQUxJRCwKKyAgRENDUF9QS1RfUkVTRVQsCisgIERDQ1BfUEtUX1NZTkMsCisgIERDQ1BfUEtUX1NZTkNBQ0ssCisgIERDQ1BfUEtUX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRENDUF9OUl9QS1RfVFlQRVMgRENDUF9QS1RfSU5WQUxJRAogZW51bSBkY2NwX3Jlc2V0X2NvZGVzIHsKLSBEQ0NQX1JFU0VUX0NPREVfVU5TUEVDSUZJRUQgPSAwLAorICBEQ0NQX1JFU0VUX0NPREVfVU5TUEVDSUZJRUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1JFU0VUX0NPREVfQ0xPU0VELAotIERDQ1BfUkVTRVRfQ09ERV9BQk9SVEVELAotIERDQ1BfUkVTRVRfQ09ERV9OT19DT05ORUNUSU9OLAotIERDQ1BfUkVTRVRfQ09ERV9QQUNLRVRfRVJST1IsCisgIERDQ1BfUkVTRVRfQ09ERV9DTE9TRUQsCisgIERDQ1BfUkVTRVRfQ09ERV9BQk9SVEVELAorICBEQ0NQX1JFU0VUX0NPREVfTk9fQ09OTkVDVElPTiwKKyAgRENDUF9SRVNFVF9DT0RFX1BBQ0tFVF9FUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUF9SRVNFVF9DT0RFX09QVElPTl9FUlJPUiwKLSBEQ0NQX1JFU0VUX0NPREVfTUFOREFUT1JZX0VSUk9SLAotIERDQ1BfUkVTRVRfQ09ERV9DT05ORUNUSU9OX1JFRlVTRUQsCi0gRENDUF9SRVNFVF9DT0RFX0JBRF9TRVJWSUNFX0NPREUsCisgIERDQ1BfUkVTRVRfQ09ERV9PUFRJT05fRVJST1IsCisgIERDQ1BfUkVTRVRfQ09ERV9NQU5EQVRPUllfRVJST1IsCisgIERDQ1BfUkVTRVRfQ09ERV9DT05ORUNUSU9OX1JFRlVTRUQsCisgIERDQ1BfUkVTRVRfQ09ERV9CQURfU0VSVklDRV9DT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1JFU0VUX0NPREVfVE9PX0JVU1ksCi0gRENDUF9SRVNFVF9DT0RFX0JBRF9JTklUX0NPT0tJRSwKLSBEQ0NQX1JFU0VUX0NPREVfQUdHUkVTU0lPTl9QRU5BTFRZLAotIERDQ1BfTUFYX1JFU0VUX0NPREVTCisgIERDQ1BfUkVTRVRfQ09ERV9UT09fQlVTWSwKKyAgRENDUF9SRVNFVF9DT0RFX0JBRF9JTklUX0NPT0tJRSwKKyAgRENDUF9SRVNFVF9DT0RFX0FHR1JFU1NJT05fUEVOQUxUWSwKKyAgRENDUF9NQVhfUkVTRVRfQ09ERVMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gRENDUE9fUEFERElORyA9IDAsCi0gRENDUE9fTUFOREFUT1JZID0gMSwKKyAgRENDUE9fUEFERElORyA9IDAsCisgIERDQ1BPX01BTkRBVE9SWSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BPX01JTl9SRVNFUlZFRCA9IDMsCi0gRENDUE9fTUFYX1JFU0VSVkVEID0gMzEsCi0gRENDUE9fQ0hBTkdFX0wgPSAzMiwKLSBEQ0NQT19DT05GSVJNX0wgPSAzMywKKyAgRENDUE9fTUlOX1JFU0VSVkVEID0gMywKKyAgRENDUE9fTUFYX1JFU0VSVkVEID0gMzEsCisgIERDQ1BPX0NIQU5HRV9MID0gMzIsCisgIERDQ1BPX0NPTkZJUk1fTCA9IDMzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQT19DSEFOR0VfUiA9IDM0LAotIERDQ1BPX0NPTkZJUk1fUiA9IDM1LAotIERDQ1BPX05EUF9DT1VOVCA9IDM3LAotIERDQ1BPX0FDS19WRUNUT1JfMCA9IDM4LAorICBEQ0NQT19DSEFOR0VfUiA9IDM0LAorICBEQ0NQT19DT05GSVJNX1IgPSAzNSwKKyAgRENDUE9fTkRQX0NPVU5UID0gMzcsCisgIERDQ1BPX0FDS19WRUNUT1JfMCA9IDM4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQT19BQ0tfVkVDVE9SXzEgPSAzOSwKLSBEQ0NQT19USU1FU1RBTVAgPSA0MSwKLSBEQ0NQT19USU1FU1RBTVBfRUNITyA9IDQyLAotIERDQ1BPX0VMQVBTRURfVElNRSA9IDQzLAorICBEQ0NQT19BQ0tfVkVDVE9SXzEgPSAzOSwKKyAgRENDUE9fVElNRVNUQU1QID0gNDEsCisgIERDQ1BPX1RJTUVTVEFNUF9FQ0hPID0gNDIsCisgIERDQ1BPX0VMQVBTRURfVElNRSA9IDQzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQT19NQVggPSA0NSwKLSBEQ0NQT19NSU5fUlhfQ0NJRF9TUEVDSUZJQyA9IDEyOCwKLSBEQ0NQT19NQVhfUlhfQ0NJRF9TUEVDSUZJQyA9IDE5MSwKLSBEQ0NQT19NSU5fVFhfQ0NJRF9TUEVDSUZJQyA9IDE5MiwKKyAgRENDUE9fTUFYID0gNDUsCisgIERDQ1BPX01JTl9SWF9DQ0lEX1NQRUNJRklDID0gMTI4LAorICBEQ0NQT19NQVhfUlhfQ0NJRF9TUEVDSUZJQyA9IDE5MSwKKyAgRENDUE9fTUlOX1RYX0NDSURfU1BFQ0lGSUMgPSAxOTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BPX01BWF9UWF9DQ0lEX1NQRUNJRklDID0gMjU1LAorICBEQ0NQT19NQVhfVFhfQ0NJRF9TUEVDSUZJQyA9IDI1NSwKIH07CiAjZGVmaW5lIERDQ1BfU0lOR0xFX09QVF9NQVhMRU4gMjUzCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUENfQ0NJRDIgPSAyLAotIERDQ1BDX0NDSUQzID0gMywKKyAgRENDUENfQ0NJRDIgPSAyLAorICBEQ0NQQ19DQ0lEMyA9IDMsCiB9OwogZW51bSBkY2NwX2ZlYXR1cmVfbnVtYmVycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BGX1JFU0VSVkVEID0gMCwKLSBEQ0NQRl9DQ0lEID0gMSwKLSBEQ0NQRl9TSE9SVF9TRVFOT1MgPSAyLAotIERDQ1BGX1NFUVVFTkNFX1dJTkRPVyA9IDMsCisgIERDQ1BGX1JFU0VSVkVEID0gMCwKKyAgRENDUEZfQ0NJRCA9IDEsCisgIERDQ1BGX1NIT1JUX1NFUU5PUyA9IDIsCisgIERDQ1BGX1NFUVVFTkNFX1dJTkRPVyA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BGX0VDTl9JTkNBUEFCTEUgPSA0LAotIERDQ1BGX0FDS19SQVRJTyA9IDUsCi0gRENDUEZfU0VORF9BQ0tfVkVDVE9SID0gNiwKLSBEQ0NQRl9TRU5EX05EUF9DT1VOVCA9IDcsCisgIERDQ1BGX0VDTl9JTkNBUEFCTEUgPSA0LAorICBEQ0NQRl9BQ0tfUkFUSU8gPSA1LAorICBEQ0NQRl9TRU5EX0FDS19WRUNUT1IgPSA2LAorICBEQ0NQRl9TRU5EX05EUF9DT1VOVCA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BGX01JTl9DU1VNX0NPVkVSID0gOCwKLSBEQ0NQRl9EQVRBX0NIRUNLU1VNID0gOSwKLSBEQ0NQRl9NSU5fQ0NJRF9TUEVDSUZJQyA9IDEyOCwKLSBEQ0NQRl9TRU5EX0xFVl9SQVRFID0gMTkyLAorICBEQ0NQRl9NSU5fQ1NVTV9DT1ZFUiA9IDgsCisgIERDQ1BGX0RBVEFfQ0hFQ0tTVU0gPSA5LAorICBEQ0NQRl9NSU5fQ0NJRF9TUEVDSUZJQyA9IDEyOCwKKyAgRENDUEZfU0VORF9MRVZfUkFURSA9IDE5MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUEZfTUFYX0NDSURfU1BFQ0lGSUMgPSAyNTUsCisgIERDQ1BGX01BWF9DQ0lEX1NQRUNJRklDID0gMjU1LAogfTsKIGVudW0gZGNjcF9jbXNnX3R5cGUgewotIERDQ1BfU0NNX1BSSU9SSVRZID0gMSwKKyAgRENDUF9TQ01fUFJJT1JJVFkgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1NDTV9RUE9MSUNZX01BWCA9IDB4RkZGRiwKLSBEQ0NQX1NDTV9NQVgKKyAgRENDUF9TQ01fUVBPTElDWV9NQVggPSAweEZGRkYsCisgIERDQ1BfU0NNX01BWAogfTsKIGVudW0gZGNjcF9wYWNrZXRfZGVxdWV1ZWluZ19wb2xpY3kgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQUV9QT0xJQ1lfU0lNUExFLAotIERDQ1BRX1BPTElDWV9QUklPLAotIERDQ1BRX1BPTElDWV9NQVgKKyAgRENDUFFfUE9MSUNZX1NJTVBMRSwKKyAgRENDUFFfUE9MSUNZX1BSSU8sCisgIERDQ1BRX1BPTElDWV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEQ0NQX1NPQ0tPUFRfUEFDS0VUX1NJWkUgMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtLmgKaW5kZXggZDE5MjgyYy4uZTFhYzQzMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbS5oCkBAIC0yNywxMSArMjcsMTEgQEAKICNkZWZpbmUgRExNX1NCRl9BTFRNT0RFIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGxtX2xrc2IgewotIGludCBzYl9zdGF0dXM7Ci0gX191MzIgc2JfbGtpZDsKLSBjaGFyIHNiX2ZsYWdzOworICBpbnQgc2Jfc3RhdHVzOworICBfX3UzMiBzYl9sa2lkOworICBjaGFyIHNiX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyICogc2JfbHZicHRyOworICBjaGFyICogc2JfbHZicHRyOwogfTsKICNkZWZpbmUgRExNX0xTRkxfVElNRVdBUk4gMHgwMDAwMDAwMgogI2RlZmluZSBETE1fTFNGTF9GUyAweDAwMDAwMDA0CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9kZXZpY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX2RldmljZS5oCmluZGV4IDc1NjdlMGMuLmM0OTZkOGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX2RldmljZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX2RldmljZS5oCkBAIC0yNyw2NyArMjcsNjcgQEAKICNkZWZpbmUgRExNX0RFVklDRV9WRVJTSU9OX1BBVENIIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGxtX2xvY2tfcGFyYW1zIHsKLSBfX3U4IG1vZGU7Ci0gX191OCBuYW1lbGVuOwotIF9fdTE2IHVudXNlZDsKKyAgX191OCBtb2RlOworICBfX3U4IG5hbWVsZW47CisgIF9fdTE2IHVudXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgbGtpZDsKLSBfX3UzMiBwYXJlbnQ7Ci0gX191NjQgeGlkOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgbGtpZDsKKyAgX191MzIgcGFyZW50OworICBfX3U2NCB4aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRpbWVvdXQ7Ci0gdm9pZCBfX3VzZXIgKmNhc3RwYXJhbTsKLSB2b2lkIF9fdXNlciAqY2FzdGFkZHI7Ci0gdm9pZCBfX3VzZXIgKmJhc3RwYXJhbTsKKyAgX191NjQgdGltZW91dDsKKyAgdm9pZCBfX3VzZXIgKiBjYXN0cGFyYW07CisgIHZvaWQgX191c2VyICogY2FzdGFkZHI7CisgIHZvaWQgX191c2VyICogYmFzdHBhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqYmFzdGFkZHI7Ci0gc3RydWN0IGRsbV9sa3NiIF9fdXNlciAqbGtzYjsKLSBjaGFyIGx2YltETE1fVVNFUl9MVkJfTEVOXTsKLSBjaGFyIG5hbWVbMF07CisgIHZvaWQgX191c2VyICogYmFzdGFkZHI7CisgIHN0cnVjdCBkbG1fbGtzYiBfX3VzZXIgKiBsa3NiOworICBjaGFyIGx2YltETE1fVVNFUl9MVkJfTEVOXTsKKyAgY2hhciBuYW1lWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZGxtX2xzcGFjZV9wYXJhbXMgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIG1pbm9yOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgbWlub3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVswXTsKKyAgY2hhciBuYW1lWzBdOwogfTsKIHN0cnVjdCBkbG1fcHVyZ2VfcGFyYW1zIHsKLSBfX3UzMiBub2RlaWQ7CisgIF9fdTMyIG5vZGVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGlkOworICBfX3UzMiBwaWQ7CiB9Owogc3RydWN0IGRsbV93cml0ZV9yZXF1ZXN0IHsKLSBfX3UzMiB2ZXJzaW9uWzNdOworICBfX3UzMiB2ZXJzaW9uWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNtZDsKLSBfX3U4IGlzNjRiaXQ7Ci0gX191OCB1bnVzZWRbMl07Ci0gdW5pb24geworICBfX3U4IGNtZDsKKyAgX191OCBpczY0Yml0OworICBfX3U4IHVudXNlZFsyXTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZGxtX2xvY2tfcGFyYW1zIGxvY2s7Ci0gc3RydWN0IGRsbV9sc3BhY2VfcGFyYW1zIGxzcGFjZTsKLSBzdHJ1Y3QgZGxtX3B1cmdlX3BhcmFtcyBwdXJnZTsKLSB9IGk7CisgICAgc3RydWN0IGRsbV9sb2NrX3BhcmFtcyBsb2NrOworICAgIHN0cnVjdCBkbG1fbHNwYWNlX3BhcmFtcyBsc3BhY2U7CisgICAgc3RydWN0IGRsbV9wdXJnZV9wYXJhbXMgcHVyZ2U7CisgIH0gaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRsbV9kZXZpY2VfdmVyc2lvbiB7Ci0gX191MzIgdmVyc2lvblszXTsKKyAgX191MzIgdmVyc2lvblszXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRsbV9sb2NrX3Jlc3VsdCB7Ci0gX191MzIgdmVyc2lvblszXTsKLSBfX3UzMiBsZW5ndGg7Ci0gdm9pZCBfX3VzZXIgKiB1c2VyX2FzdGFkZHI7CisgIF9fdTMyIHZlcnNpb25bM107CisgIF9fdTMyIGxlbmd0aDsKKyAgdm9pZCBfX3VzZXIgKiB1c2VyX2FzdGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICogdXNlcl9hc3RwYXJhbTsKLSBzdHJ1Y3QgZGxtX2xrc2IgX191c2VyICogdXNlcl9sa3NiOwotIHN0cnVjdCBkbG1fbGtzYiBsa3NiOwotIF9fdTggYmFzdF9tb2RlOworICB2b2lkIF9fdXNlciAqIHVzZXJfYXN0cGFyYW07CisgIHN0cnVjdCBkbG1fbGtzYiBfX3VzZXIgKiB1c2VyX2xrc2I7CisgIHN0cnVjdCBkbG1fbGtzYiBsa3NiOworICBfX3U4IGJhc3RfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1bnVzZWRbM107Ci0gX191MzIgbHZiX29mZnNldDsKKyAgX191OCB1bnVzZWRbM107CisgIF9fdTMyIGx2Yl9vZmZzZXQ7CiB9OwogI2RlZmluZSBETE1fVVNFUl9MT0NLIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9uZXRsaW5rLmgKaW5kZXggMmVhMTI2MS4uZTJiZjZiMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX25ldGxpbmsuaApAQCAtMjEsNDQgKzIxLDQ0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETE1fU1RBVFVTX1dBSVRJTkcgPSAxLAotIERMTV9TVEFUVVNfR1JBTlRFRCA9IDIsCi0gRExNX1NUQVRVU19DT05WRVJUID0gMywKKyAgRExNX1NUQVRVU19XQUlUSU5HID0gMSwKKyAgRExNX1NUQVRVU19HUkFOVEVEID0gMiwKKyAgRExNX1NUQVRVU19DT05WRVJUID0gMywKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETE1fTE9DS19EQVRBX1ZFUlNJT04gMQogc3RydWN0IGRsbV9sb2NrX2RhdGEgewotIF9fdTE2IHZlcnNpb247Ci0gX191MzIgbG9ja3NwYWNlX2lkOworICBfX3UxNiB2ZXJzaW9uOworICBfX3UzMiBsb2Nrc3BhY2VfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBub2RlaWQ7Ci0gaW50IG93bnBpZDsKLSBfX3UzMiBpZDsKLSBfX3UzMiByZW1pZDsKKyAgaW50IG5vZGVpZDsKKyAgaW50IG93bnBpZDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHJlbWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB4aWQ7Ci0gX19zOCBzdGF0dXM7Ci0gX19zOCBncm1vZGU7Ci0gX19zOCBycW1vZGU7CisgIF9fdTY0IHhpZDsKKyAgX19zOCBzdGF0dXM7CisgIF9fczggZ3Jtb2RlOworICBfX3M4IHJxbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyB0aW1lc3RhbXA7Ci0gaW50IHJlc291cmNlX25hbWVsZW47Ci0gY2hhciByZXNvdXJjZV9uYW1lW0RMTV9SRVNOQU1FX01BWExFTl07CisgIHVuc2lnbmVkIGxvbmcgdGltZXN0YW1wOworICBpbnQgcmVzb3VyY2VfbmFtZWxlbjsKKyAgY2hhciByZXNvdXJjZV9uYW1lW0RMTV9SRVNOQU1FX01BWExFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIERMTV9DTURfVU5TUEVDID0gMCwKLSBETE1fQ01EX0hFTExPLAotIERMTV9DTURfVElNRU9VVCwKKyAgRExNX0NNRF9VTlNQRUMgPSAwLAorICBETE1fQ01EX0hFTExPLAorICBETE1fQ01EX1RJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fRExNX0NNRF9NQVgsCisgIF9fRExNX0NNRF9NQVgsCiB9OwogI2RlZmluZSBETE1fQ01EX01BWCAoX19ETE1fQ01EX01BWCAtIDEpCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRExNX1RZUEVfVU5TUEVDID0gMCwKLSBETE1fVFlQRV9MT0NLLAotIF9fRExNX1RZUEVfTUFYLAorICBETE1fVFlQRV9VTlNQRUMgPSAwLAorICBETE1fVFlQRV9MT0NLLAorICBfX0RMTV9UWVBFX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETE1fVFlQRV9NQVggKF9fRExNX1RZUEVfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX3Bsb2NrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9wbG9jay5oCmluZGV4IDE5NDZlZjkuLjQyNWJlMzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX3Bsb2NrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fcGxvY2suaApAQCAtMjYsMjkgKzI2LDI5IEBACiAjZGVmaW5lIERMTV9QTE9DS19WRVJTSU9OX1BBVENIIDAKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETE1fUExPQ0tfT1BfTE9DSyA9IDEsCi0gRExNX1BMT0NLX09QX1VOTE9DSywKLSBETE1fUExPQ0tfT1BfR0VULAorICBETE1fUExPQ0tfT1BfTE9DSyA9IDEsCisgIERMTV9QTE9DS19PUF9VTkxPQ0ssCisgIERMTV9QTE9DS19PUF9HRVQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRExNX1BMT0NLX0ZMX0NMT1NFIDEKIHN0cnVjdCBkbG1fcGxvY2tfaW5mbyB7Ci0gX191MzIgdmVyc2lvblszXTsKLSBfX3U4IG9wdHlwZTsKKyAgX191MzIgdmVyc2lvblszXTsKKyAgX191OCBvcHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZXg7Ci0gX191OCB3YWl0OwotIF9fdTggZmxhZ3M7Ci0gX191MzIgcGlkOworICBfX3U4IGV4OworICBfX3U4IHdhaXQ7CisgIF9fdTggZmxhZ3M7CisgIF9fdTMyIHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgbm9kZWlkOwotIF9fczMyIHJ2OwotIF9fdTMyIGZzaWQ7Ci0gX191NjQgbnVtYmVyOworICBfX3MzMiBub2RlaWQ7CisgIF9fczMyIHJ2OworICBfX3UzMiBmc2lkOworICBfX3U2NCBudW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHN0YXJ0OwotIF9fdTY0IGVuZDsKLSBfX3U2NCBvd25lcjsKKyAgX191NjQgc3RhcnQ7CisgIF9fdTY0IGVuZDsKKyAgX191NjQgb3duZXI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1jb25zdGFudHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtY29uc3RhbnRzLmgKaW5kZXggZTI0ZDQyYy4uNDc3MWQ5MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1jb25zdGFudHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbWNvbnN0YW50cy5oCkBAIC0yMSw3ICsyMSw3IEBACiAjZGVmaW5lIERMTV9MT0NLU1BBQ0VfTEVOIDY0CiAjZGVmaW5lIERMTV9SRVNOQU1FX01BWExFTiA2NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRExNX0xPQ0tfSVYgKC0xKQorI2RlZmluZSBETE1fTE9DS19JViAoLSAxKQogI2RlZmluZSBETE1fTE9DS19OTCAwCiAjZGVmaW5lIERMTV9MT0NLX0NSIDEKICNkZWZpbmUgRExNX0xPQ0tfQ1cgMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbS1pb2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbS1pb2N0bC5oCmluZGV4IGZiYjRjZDkuLjkxZGNjYzEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG0taW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWlvY3RsLmgKQEAgLTI3LDc2ICsyNyw3NiBAQAogI2RlZmluZSBETV9VVUlEX0xFTiAxMjkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZG1faW9jdGwgewotIF9fdTMyIHZlcnNpb25bM107Ci0gX191MzIgZGF0YV9zaXplOwotIF9fdTMyIGRhdGFfc3RhcnQ7CisgIF9fdTMyIHZlcnNpb25bM107CisgIF9fdTMyIGRhdGFfc2l6ZTsKKyAgX191MzIgZGF0YV9zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGFyZ2V0X2NvdW50OwotIF9fczMyIG9wZW5fY291bnQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgZXZlbnRfbnI7CisgIF9fdTMyIHRhcmdldF9jb3VudDsKKyAgX19zMzIgb3Blbl9jb3VudDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGV2ZW50X25yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWRkaW5nOwotIF9fdTY0IGRldjsKLSBjaGFyIG5hbWVbRE1fTkFNRV9MRU5dOwotIGNoYXIgdXVpZFtETV9VVUlEX0xFTl07CisgIF9fdTMyIHBhZGRpbmc7CisgIF9fdTY0IGRldjsKKyAgY2hhciBuYW1lW0RNX05BTUVfTEVOXTsKKyAgY2hhciB1dWlkW0RNX1VVSURfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkYXRhWzddOworICBjaGFyIGRhdGFbN107CiB9Owogc3RydWN0IGRtX3RhcmdldF9zcGVjIHsKLSBfX3U2NCBzZWN0b3Jfc3RhcnQ7CisgIF9fdTY0IHNlY3Rvcl9zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbGVuZ3RoOwotIF9fczMyIHN0YXR1czsKLSBfX3UzMiBuZXh0OwotIGNoYXIgdGFyZ2V0X3R5cGVbRE1fTUFYX1RZUEVfTkFNRV07CisgIF9fdTY0IGxlbmd0aDsKKyAgX19zMzIgc3RhdHVzOworICBfX3UzMiBuZXh0OworICBjaGFyIHRhcmdldF90eXBlW0RNX01BWF9UWVBFX05BTUVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZG1fdGFyZ2V0X2RlcHMgewotIF9fdTMyIGNvdW50OwotIF9fdTMyIHBhZGRpbmc7CisgIF9fdTMyIGNvdW50OworICBfX3UzMiBwYWRkaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkZXZbMF07CisgIF9fdTY0IGRldlswXTsKIH07CiBzdHJ1Y3QgZG1fbmFtZV9saXN0IHsKLSBfX3U2NCBkZXY7CisgIF9fdTY0IGRldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmV4dDsKLSBjaGFyIG5hbWVbMF07CisgIF9fdTMyIG5leHQ7CisgIGNoYXIgbmFtZVswXTsKIH07CiBzdHJ1Y3QgZG1fdGFyZ2V0X3ZlcnNpb25zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmV4dDsKLSBfX3UzMiB2ZXJzaW9uWzNdOwotIGNoYXIgbmFtZVswXTsKKyAgX191MzIgbmV4dDsKKyAgX191MzIgdmVyc2lvblszXTsKKyAgY2hhciBuYW1lWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZG1fdGFyZ2V0X21zZyB7Ci0gX191NjQgc2VjdG9yOwotIGNoYXIgbWVzc2FnZVswXTsKKyAgX191NjQgc2VjdG9yOworICBjaGFyIG1lc3NhZ2VbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIERNX1ZFUlNJT05fQ01EID0gMCwKLSBETV9SRU1PVkVfQUxMX0NNRCwKLSBETV9MSVNUX0RFVklDRVNfQ01ELAorICBETV9WRVJTSU9OX0NNRCA9IDAsCisgIERNX1JFTU9WRV9BTExfQ01ELAorICBETV9MSVNUX0RFVklDRVNfQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETV9ERVZfQ1JFQVRFX0NNRCwKLSBETV9ERVZfUkVNT1ZFX0NNRCwKLSBETV9ERVZfUkVOQU1FX0NNRCwKLSBETV9ERVZfU1VTUEVORF9DTUQsCisgIERNX0RFVl9DUkVBVEVfQ01ELAorICBETV9ERVZfUkVNT1ZFX0NNRCwKKyAgRE1fREVWX1JFTkFNRV9DTUQsCisgIERNX0RFVl9TVVNQRU5EX0NNRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1fREVWX1NUQVRVU19DTUQsCi0gRE1fREVWX1dBSVRfQ01ELAotIERNX1RBQkxFX0xPQURfQ01ELAotIERNX1RBQkxFX0NMRUFSX0NNRCwKKyAgRE1fREVWX1NUQVRVU19DTUQsCisgIERNX0RFVl9XQUlUX0NNRCwKKyAgRE1fVEFCTEVfTE9BRF9DTUQsCisgIERNX1RBQkxFX0NMRUFSX0NNRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1fVEFCTEVfREVQU19DTUQsCi0gRE1fVEFCTEVfU1RBVFVTX0NNRCwKLSBETV9MSVNUX1ZFUlNJT05TX0NNRCwKLSBETV9UQVJHRVRfTVNHX0NNRCwKKyAgRE1fVEFCTEVfREVQU19DTUQsCisgIERNX1RBQkxFX1NUQVRVU19DTUQsCisgIERNX0xJU1RfVkVSU0lPTlNfQ01ELAorICBETV9UQVJHRVRfTVNHX0NNRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1fREVWX1NFVF9HRU9NRVRSWV9DTUQKKyAgRE1fREVWX1NFVF9HRU9NRVRSWV9DTUQKIH07CiAjZGVmaW5lIERNX0lPQ1RMIDB4ZmQKICNkZWZpbmUgRE1fVkVSU0lPTiBfSU9XUihETV9JT0NUTCwgRE1fVkVSU0lPTl9DTUQsIHN0cnVjdCBkbV9pb2N0bCkKQEAgLTEyMSw5ICsxMjEsOSBAQAogI2RlZmluZSBETV9ERVZfU0VUX0dFT01FVFJZIF9JT1dSKERNX0lPQ1RMLCBETV9ERVZfU0VUX0dFT01FVFJZX0NNRCwgc3RydWN0IGRtX2lvY3RsKQogI2RlZmluZSBETV9WRVJTSU9OX01BSk9SIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERNX1ZFUlNJT05fTUlOT1IgMjcKKyNkZWZpbmUgRE1fVkVSU0lPTl9NSU5PUiAyOAogI2RlZmluZSBETV9WRVJTSU9OX1BBVENITEVWRUwgMAotI2RlZmluZSBETV9WRVJTSU9OX0VYVFJBICItaW9jdGwgKDIwMTMtMTAtMzApIgorI2RlZmluZSBETV9WRVJTSU9OX0VYVFJBICItaW9jdGwoMjAxNC0wOS0xNykiCiAjZGVmaW5lIERNX1JFQURPTkxZX0ZMQUcgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNX1NVU1BFTkRfRkxBRyAoMSA8PCAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbS1sb2ctdXNlcnNwYWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWxvZy11c2Vyc3BhY2UuaAppbmRleCA0N2Q0NWY3Li4xY2UwMGYyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWxvZy11c2Vyc3BhY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWxvZy11c2Vyc3BhY2UuaApAQCAtNDIsMjAgKzQyLDIwIEBACiAjZGVmaW5lIERNX1VMT0dfSVNfUkVNT1RFX1JFQ09WRVJJTkcgMTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNX1VMT0dfUkVRVUVTVF9NQVNLIDB4RkYKLSNkZWZpbmUgRE1fVUxPR19SRVFVRVNUX1RZUEUocmVxdWVzdF90eXBlKSAgIChETV9VTE9HX1JFUVVFU1RfTUFTSyAmIChyZXF1ZXN0X3R5cGUpKQorI2RlZmluZSBETV9VTE9HX1JFUVVFU1RfVFlQRShyZXF1ZXN0X3R5cGUpIChETV9VTE9HX1JFUVVFU1RfTUFTSyAmIChyZXF1ZXN0X3R5cGUpKQogI2RlZmluZSBETV9VTE9HX1JFUVVFU1RfVkVSU0lPTiAzCiBzdHJ1Y3QgZG1fdWxvZ19yZXF1ZXN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgbHVpZDsKLSBjaGFyIHV1aWRbRE1fVVVJRF9MRU5dOwotIGNoYXIgcGFkZGluZ1szXTsKLSB1aW50MzJfdCB2ZXJzaW9uOworICB1aW50NjRfdCBsdWlkOworICBjaGFyIHV1aWRbRE1fVVVJRF9MRU5dOworICBjaGFyIHBhZGRpbmdbM107CisgIHVpbnQzMl90IHZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgZXJyb3I7Ci0gdWludDMyX3Qgc2VxOwotIHVpbnQzMl90IHJlcXVlc3RfdHlwZTsKLSB1aW50MzJfdCBkYXRhX3NpemU7CisgIGludDMyX3QgZXJyb3I7CisgIHVpbnQzMl90IHNlcTsKKyAgdWludDMyX3QgcmVxdWVzdF90eXBlOworICB1aW50MzJfdCBkYXRhX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZGF0YVswXTsKKyAgY2hhciBkYXRhWzBdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbi5oCmluZGV4IDAxM2EwM2YuLjVlMjFiZDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RuLmgKQEAgLTc2LDU3ICs3Niw1NyBAQAogI2RlZmluZSBTREZfVUlDUFJPWFkgNAogc3RydWN0IGRuX25hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGFfbGVuOwotIF9fdTggYV9hZGRyW0ROX01BWEFERExdOworICBfX2xlMTYgYV9sZW47CisgIF9fdTggYV9hZGRyW0ROX01BWEFERExdOwogfTsKIHN0cnVjdCBzb2NrYWRkcl9kbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNkbl9mYW1pbHk7Ci0gX191OCBzZG5fZmxhZ3M7Ci0gX191OCBzZG5fb2JqbnVtOwotIF9fbGUxNiBzZG5fb2JqbmFtZWw7CisgIF9fdTE2IHNkbl9mYW1pbHk7CisgIF9fdTggc2RuX2ZsYWdzOworICBfX3U4IHNkbl9vYmpudW07CisgIF9fbGUxNiBzZG5fb2JqbmFtZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2RuX29iam5hbWVbRE5fTUFYT0JKTF07Ci0gc3RydWN0IGRuX25hZGRyIHNkbl9hZGQ7CisgIF9fdTggc2RuX29iam5hbWVbRE5fTUFYT0JKTF07CisgIHN0cnVjdCBkbl9uYWRkciBzZG5fYWRkOwogfTsKICNkZWZpbmUgc2RuX25vZGVhZGRybCBzZG5fYWRkLmFfbGVuCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBzZG5fbm9kZWFkZHIgc2RuX2FkZC5hX2FkZHIKIHN0cnVjdCBvcHRkYXRhX2RuIHsKLSBfX2xlMTYgb3B0X3N0YXR1czsKKyAgX19sZTE2IG9wdF9zdGF0dXM7CiAjZGVmaW5lIG9wdF9zdHMgb3B0X3N0YXR1cwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgb3B0X29wdGw7Ci0gX191OCBvcHRfZGF0YVsxNl07CisgIF9fbGUxNiBvcHRfb3B0bDsKKyAgX191OCBvcHRfZGF0YVsxNl07CiB9Owogc3RydWN0IGFjY2Vzc2RhdGFfZG4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFjY19hY2NsOwotIF9fdTggYWNjX2FjY1tETl9NQVhBQ0NMXTsKLSBfX3U4IGFjY19wYXNzbDsKLSBfX3U4IGFjY19wYXNzW0ROX01BWEFDQ0xdOworICBfX3U4IGFjY19hY2NsOworICBfX3U4IGFjY19hY2NbRE5fTUFYQUNDTF07CisgIF9fdTggYWNjX3Bhc3NsOworICBfX3U4IGFjY19wYXNzW0ROX01BWEFDQ0xdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFjY191c2VybDsKLSBfX3U4IGFjY191c2VyW0ROX01BWEFDQ0xdOworICBfX3U4IGFjY191c2VybDsKKyAgX191OCBhY2NfdXNlcltETl9NQVhBQ0NMXTsKIH07CiBzdHJ1Y3QgbGlua2luZm9fZG4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBpZG5fc2Vnc2l6ZTsKLSBfX3U4IGlkbl9saW5rc3RhdGU7CisgIF9fdTE2IGlkbl9zZWdzaXplOworICBfX3U4IGlkbl9saW5rc3RhdGU7CiB9OwogdW5pb24gZXRoZXJhZGRyZXNzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkbmVfYWRkcltFVEhfQUxFTl07Ci0gc3RydWN0IHsKLSBfX3U4IGRuZV9oaW9yZFs0XTsKLSBfX3U4IGRuZV9ub2RlYWRkclsyXTsKKyAgX191OCBkbmVfYWRkcltFVEhfQUxFTl07CisgIHN0cnVjdCB7CisgICAgX191OCBkbmVfaGlvcmRbNF07CisgICAgX191OCBkbmVfbm9kZWFkZHJbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZG5lX3JlbW90ZTsKKyAgfSBkbmVfcmVtb3RlOwogfTsKIHN0cnVjdCBkbl9hZGRyIHsKLSBfX2xlMTYgZG5hX2ZhbWlseTsKKyAgX19sZTE2IGRuYV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIGV0aGVyYWRkcmVzcyBkbmFfbmV0YWRkcjsKKyAgdW5pb24gZXRoZXJhZGRyZXNzIGRuYV9uZXRhZGRyOwogfTsKICNkZWZpbmUgREVDTkVUX0lPQ1RMX0JBU0UgMHg4OQogI2RlZmluZSBTSU9DU05FVEFERFIgX0lPVyhERUNORVRfSU9DVExfQkFTRSwgMHhlMCwgc3RydWN0IGRuX25hZGRyKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kcWJsa194ZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHFibGtfeGZzLmgKaW5kZXggMzFiMzlkNi4uMzk2ZTY5NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kcWJsa194ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RxYmxrX3hmcy5oCkBAIC0xOSw5ICsxOSw5IEBACiAjaWZuZGVmIF9MSU5VWF9EUUJMS19YRlNfSAogI2RlZmluZSBfTElOVVhfRFFCTEtfWEZTX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2RlZmluZSBYUU1fQ01EKHgpICgoJ1gnPDw4KSsoeCkpCisjZGVmaW5lIFhRTV9DTUQoeCkgKCgnWCcgPDwgOCkgKyAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYUU1fQ09NTUFORCh4KSAoKCh4KSAmICgweGZmPDw4KSkgPT0gKCdYJzw8OCkpCisjZGVmaW5lIFhRTV9DT01NQU5EKHgpICgoKHgpICYgKDB4ZmYgPDwgOCkpID09ICgnWCcgPDwgOCkpCiAjZGVmaW5lIFhRTV9VU1JRVU9UQSAwCiAjZGVmaW5lIFhRTV9HUlBRVU9UQSAxCiAjZGVmaW5lIFhRTV9QUkpRVU9UQSAyCkBAIC0zOSwxMjAgKzM5LDEyMCBAQAogI2RlZmluZSBRX1hHRVRRU1RBVFYgWFFNX0NNRCg4KQogI2RlZmluZSBGU19EUVVPVF9WRVJTSU9OIDEKIHR5cGVkZWYgc3RydWN0IGZzX2Rpc2tfcXVvdGEgewotIF9fczggZF92ZXJzaW9uOworICBfX3M4IGRfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zOCBkX2ZsYWdzOwotIF9fdTE2IGRfZmllbGRtYXNrOwotIF9fdTMyIGRfaWQ7Ci0gX191NjQgZF9ibGtfaGFyZGxpbWl0OworICBfX3M4IGRfZmxhZ3M7CisgIF9fdTE2IGRfZmllbGRtYXNrOworICBfX3UzMiBkX2lkOworICBfX3U2NCBkX2Jsa19oYXJkbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRfYmxrX3NvZnRsaW1pdDsKLSBfX3U2NCBkX2lub19oYXJkbGltaXQ7Ci0gX191NjQgZF9pbm9fc29mdGxpbWl0OwotIF9fdTY0IGRfYmNvdW50OworICBfX3U2NCBkX2Jsa19zb2Z0bGltaXQ7CisgIF9fdTY0IGRfaW5vX2hhcmRsaW1pdDsKKyAgX191NjQgZF9pbm9fc29mdGxpbWl0OworICBfX3U2NCBkX2Jjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZF9pY291bnQ7Ci0gX19zMzIgZF9pdGltZXI7Ci0gX19zMzIgZF9idGltZXI7Ci0gX191MTYgZF9pd2FybnM7CisgIF9fdTY0IGRfaWNvdW50OworICBfX3MzMiBkX2l0aW1lcjsKKyAgX19zMzIgZF9idGltZXI7CisgIF9fdTE2IGRfaXdhcm5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkX2J3YXJuczsKLSBfX3MzMiBkX3BhZGRpbmcyOwotIF9fdTY0IGRfcnRiX2hhcmRsaW1pdDsKLSBfX3U2NCBkX3J0Yl9zb2Z0bGltaXQ7CisgIF9fdTE2IGRfYndhcm5zOworICBfX3MzMiBkX3BhZGRpbmcyOworICBfX3U2NCBkX3J0Yl9oYXJkbGltaXQ7CisgIF9fdTY0IGRfcnRiX3NvZnRsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZF9ydGJjb3VudDsKLSBfX3MzMiBkX3J0YnRpbWVyOwotIF9fdTE2IGRfcnRid2FybnM7Ci0gX19zMTYgZF9wYWRkaW5nMzsKKyAgX191NjQgZF9ydGJjb3VudDsKKyAgX19zMzIgZF9ydGJ0aW1lcjsKKyAgX191MTYgZF9ydGJ3YXJuczsKKyAgX19zMTYgZF9wYWRkaW5nMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkX3BhZGRpbmc0WzhdOworICBjaGFyIGRfcGFkZGluZzRbOF07CiB9IGZzX2Rpc2tfcXVvdGFfdDsKLSNkZWZpbmUgRlNfRFFfSVNPRlQgKDE8PDApCi0jZGVmaW5lIEZTX0RRX0lIQVJEICgxPDwxKQorI2RlZmluZSBGU19EUV9JU09GVCAoMSA8PCAwKQorI2RlZmluZSBGU19EUV9JSEFSRCAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNfRFFfQlNPRlQgKDE8PDIpCi0jZGVmaW5lIEZTX0RRX0JIQVJEICgxPDwzKQotI2RlZmluZSBGU19EUV9SVEJTT0ZUICgxPDw0KQotI2RlZmluZSBGU19EUV9SVEJIQVJEICgxPDw1KQorI2RlZmluZSBGU19EUV9CU09GVCAoMSA8PCAyKQorI2RlZmluZSBGU19EUV9CSEFSRCAoMSA8PCAzKQorI2RlZmluZSBGU19EUV9SVEJTT0ZUICgxIDw8IDQpCisjZGVmaW5lIEZTX0RRX1JUQkhBUkQgKDEgPDwgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZTX0RRX0xJTUlUX01BU0sgKEZTX0RRX0lTT0ZUIHwgRlNfRFFfSUhBUkQgfCBGU19EUV9CU09GVCB8ICAgRlNfRFFfQkhBUkQgfCBGU19EUV9SVEJTT0ZUIHwgRlNfRFFfUlRCSEFSRCkKLSNkZWZpbmUgRlNfRFFfQlRJTUVSICgxPDw2KQotI2RlZmluZSBGU19EUV9JVElNRVIgKDE8PDcpCi0jZGVmaW5lIEZTX0RRX1JUQlRJTUVSICgxPDw4KQorI2RlZmluZSBGU19EUV9MSU1JVF9NQVNLIChGU19EUV9JU09GVCB8IEZTX0RRX0lIQVJEIHwgRlNfRFFfQlNPRlQgfCBGU19EUV9CSEFSRCB8IEZTX0RRX1JUQlNPRlQgfCBGU19EUV9SVEJIQVJEKQorI2RlZmluZSBGU19EUV9CVElNRVIgKDEgPDwgNikKKyNkZWZpbmUgRlNfRFFfSVRJTUVSICgxIDw8IDcpCisjZGVmaW5lIEZTX0RRX1JUQlRJTUVSICgxIDw8IDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19EUV9USU1FUl9NQVNLIChGU19EUV9CVElNRVIgfCBGU19EUV9JVElNRVIgfCBGU19EUV9SVEJUSU1FUikKLSNkZWZpbmUgRlNfRFFfQldBUk5TICgxPDw5KQotI2RlZmluZSBGU19EUV9JV0FSTlMgKDE8PDEwKQotI2RlZmluZSBGU19EUV9SVEJXQVJOUyAoMTw8MTEpCisjZGVmaW5lIEZTX0RRX0JXQVJOUyAoMSA8PCA5KQorI2RlZmluZSBGU19EUV9JV0FSTlMgKDEgPDwgMTApCisjZGVmaW5lIEZTX0RRX1JUQldBUk5TICgxIDw8IDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfRFFfV0FSTlNfTUFTSyAoRlNfRFFfQldBUk5TIHwgRlNfRFFfSVdBUk5TIHwgRlNfRFFfUlRCV0FSTlMpCi0jZGVmaW5lIEZTX0RRX0JDT1VOVCAoMTw8MTIpCi0jZGVmaW5lIEZTX0RRX0lDT1VOVCAoMTw8MTMpCi0jZGVmaW5lIEZTX0RRX1JUQkNPVU5UICgxPDwxNCkKKyNkZWZpbmUgRlNfRFFfQkNPVU5UICgxIDw8IDEyKQorI2RlZmluZSBGU19EUV9JQ09VTlQgKDEgPDwgMTMpCisjZGVmaW5lIEZTX0RRX1JUQkNPVU5UICgxIDw8IDE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfRFFfQUNDVF9NQVNLIChGU19EUV9CQ09VTlQgfCBGU19EUV9JQ09VTlQgfCBGU19EUV9SVEJDT1VOVCkKLSNkZWZpbmUgRlNfUVVPVEFfVURRX0FDQ1QgKDE8PDApCi0jZGVmaW5lIEZTX1FVT1RBX1VEUV9FTkZEICgxPDwxKQotI2RlZmluZSBGU19RVU9UQV9HRFFfQUNDVCAoMTw8MikKKyNkZWZpbmUgRlNfUVVPVEFfVURRX0FDQ1QgKDEgPDwgMCkKKyNkZWZpbmUgRlNfUVVPVEFfVURRX0VORkQgKDEgPDwgMSkKKyNkZWZpbmUgRlNfUVVPVEFfR0RRX0FDQ1QgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZTX1FVT1RBX0dEUV9FTkZEICgxPDwzKQotI2RlZmluZSBGU19RVU9UQV9QRFFfQUNDVCAoMTw8NCkKLSNkZWZpbmUgRlNfUVVPVEFfUERRX0VORkQgKDE8PDUpCi0jZGVmaW5lIEZTX1VTRVJfUVVPVEEgKDE8PDApCisjZGVmaW5lIEZTX1FVT1RBX0dEUV9FTkZEICgxIDw8IDMpCisjZGVmaW5lIEZTX1FVT1RBX1BEUV9BQ0NUICgxIDw8IDQpCisjZGVmaW5lIEZTX1FVT1RBX1BEUV9FTkZEICgxIDw8IDUpCisjZGVmaW5lIEZTX1VTRVJfUVVPVEEgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZTX1BST0pfUVVPVEEgKDE8PDEpCi0jZGVmaW5lIEZTX0dST1VQX1FVT1RBICgxPDwyKQorI2RlZmluZSBGU19QUk9KX1FVT1RBICgxIDw8IDEpCisjZGVmaW5lIEZTX0dST1VQX1FVT1RBICgxIDw8IDIpCiAjZGVmaW5lIEZTX1FTVEFUX1ZFUlNJT04gMQogdHlwZWRlZiBzdHJ1Y3QgZnNfcWZpbGVzdGF0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcWZzX2lubzsKLSBfX3U2NCBxZnNfbmJsa3M7Ci0gX191MzIgcWZzX25leHRlbnRzOworICBfX3U2NCBxZnNfaW5vOworICBfX3U2NCBxZnNfbmJsa3M7CisgIF9fdTMyIHFmc19uZXh0ZW50czsKIH0gZnNfcWZpbGVzdGF0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZnNfcXVvdGFfc3RhdCB7Ci0gX19zOCBxc192ZXJzaW9uOwotIF9fdTE2IHFzX2ZsYWdzOwotIF9fczggcXNfcGFkOworICBfX3M4IHFzX3ZlcnNpb247CisgIF9fdTE2IHFzX2ZsYWdzOworICBfX3M4IHFzX3BhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZnNfcWZpbGVzdGF0X3QgcXNfdXF1b3RhOwotIGZzX3FmaWxlc3RhdF90IHFzX2dxdW90YTsKLSBfX3UzMiBxc19pbmNvcmVkcXM7Ci0gX19zMzIgcXNfYnRpbWVsaW1pdDsKKyAgZnNfcWZpbGVzdGF0X3QgcXNfdXF1b3RhOworICBmc19xZmlsZXN0YXRfdCBxc19ncXVvdGE7CisgIF9fdTMyIHFzX2luY29yZWRxczsKKyAgX19zMzIgcXNfYnRpbWVsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgcXNfaXRpbWVsaW1pdDsKLSBfX3MzMiBxc19ydGJ0aW1lbGltaXQ7Ci0gX191MTYgcXNfYndhcm5saW1pdDsKLSBfX3UxNiBxc19pd2FybmxpbWl0OworICBfX3MzMiBxc19pdGltZWxpbWl0OworICBfX3MzMiBxc19ydGJ0aW1lbGltaXQ7CisgIF9fdTE2IHFzX2J3YXJubGltaXQ7CisgIF9fdTE2IHFzX2l3YXJubGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBmc19xdW90YV9zdGF0X3Q7CiAjZGVmaW5lIEZTX1FTVEFUVl9WRVJTSU9OMSAxCiBzdHJ1Y3QgZnNfcWZpbGVzdGF0diB7Ci0gX191NjQgcWZzX2lubzsKKyAgX191NjQgcWZzX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcWZzX25ibGtzOwotIF9fdTMyIHFmc19uZXh0ZW50czsKLSBfX3UzMiBxZnNfcGFkOworICBfX3U2NCBxZnNfbmJsa3M7CisgIF9fdTMyIHFmc19uZXh0ZW50czsKKyAgX191MzIgcWZzX3BhZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZzX3F1b3RhX3N0YXR2IHsKLSBfX3M4IHFzX3ZlcnNpb247Ci0gX191OCBxc19wYWQxOwotIF9fdTE2IHFzX2ZsYWdzOworICBfX3M4IHFzX3ZlcnNpb247CisgIF9fdTggcXNfcGFkMTsKKyAgX191MTYgcXNfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFzX2luY29yZWRxczsKLSBzdHJ1Y3QgZnNfcWZpbGVzdGF0diBxc191cXVvdGE7Ci0gc3RydWN0IGZzX3FmaWxlc3RhdHYgcXNfZ3F1b3RhOwotIHN0cnVjdCBmc19xZmlsZXN0YXR2IHFzX3BxdW90YTsKKyAgX191MzIgcXNfaW5jb3JlZHFzOworICBzdHJ1Y3QgZnNfcWZpbGVzdGF0diBxc191cXVvdGE7CisgIHN0cnVjdCBmc19xZmlsZXN0YXR2IHFzX2dxdW90YTsKKyAgc3RydWN0IGZzX3FmaWxlc3RhdHYgcXNfcHF1b3RhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBxc19idGltZWxpbWl0OwotIF9fczMyIHFzX2l0aW1lbGltaXQ7Ci0gX19zMzIgcXNfcnRidGltZWxpbWl0OwotIF9fdTE2IHFzX2J3YXJubGltaXQ7CisgIF9fczMyIHFzX2J0aW1lbGltaXQ7CisgIF9fczMyIHFzX2l0aW1lbGltaXQ7CisgIF9fczMyIHFzX3J0YnRpbWVsaW1pdDsKKyAgX191MTYgcXNfYndhcm5saW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcXNfaXdhcm5saW1pdDsKLSBfX3U2NCBxc19wYWQyWzhdOworICBfX3UxNiBxc19pd2FybmxpbWl0OworICBfX3U2NCBxc19wYWQyWzhdOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2F1ZGlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9hdWRpby5oCmluZGV4IDVlMWIxYTQuLjY2YzJlZWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2F1ZGlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvYXVkaW8uaApAQCAtMjEsODQgKzIxLDgzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHR5cGVkZWYgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFVRElPX1NPVVJDRV9ERU1VWCwKLSBBVURJT19TT1VSQ0VfTUVNT1JZCisgIEFVRElPX1NPVVJDRV9ERU1VWCwKKyAgQVVESU9fU09VUkNFX01FTU9SWQogfSBhdWRpb19zdHJlYW1fc291cmNlX3Q7CiB0eXBlZGVmIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBVURJT19TVE9QUEVELAotIEFVRElPX1BMQVlJTkcsCi0gQVVESU9fUEFVU0VECisgIEFVRElPX1NUT1BQRUQsCisgIEFVRElPX1BMQVlJTkcsCisgIEFVRElPX1BBVVNFRAogfSBhdWRpb19wbGF5X3N0YXRlX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBBVURJT19TVEVSRU8sCi0gQVVESU9fTU9OT19MRUZULAotIEFVRElPX01PTk9fUklHSFQsCisgIEFVRElPX1NURVJFTywKKyAgQVVESU9fTU9OT19MRUZULAorICBBVURJT19NT05PX1JJR0hULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBVURJT19NT05PLAotIEFVRElPX1NURVJFT19TV0FQUEVECisgIEFVRElPX01PTk8sCisgIEFVRElPX1NURVJFT19TV0FQUEVECiB9IGF1ZGlvX2NoYW5uZWxfc2VsZWN0X3Q7CiB0eXBlZGVmIHN0cnVjdCBhdWRpb19taXhlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2b2x1bWVfbGVmdDsKLSB1bnNpZ25lZCBpbnQgdm9sdW1lX3JpZ2h0OworICB1bnNpZ25lZCBpbnQgdm9sdW1lX2xlZnQ7CisgIHVuc2lnbmVkIGludCB2b2x1bWVfcmlnaHQ7CiB9IGF1ZGlvX21peGVyX3Q7CiB0eXBlZGVmIHN0cnVjdCBhdWRpb19zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgQVZfc3luY19zdGF0ZTsKLSBpbnQgbXV0ZV9zdGF0ZTsKLSBhdWRpb19wbGF5X3N0YXRlX3QgcGxheV9zdGF0ZTsKLSBhdWRpb19zdHJlYW1fc291cmNlX3Qgc3RyZWFtX3NvdXJjZTsKKyAgaW50IEFWX3N5bmNfc3RhdGU7CisgIGludCBtdXRlX3N0YXRlOworICBhdWRpb19wbGF5X3N0YXRlX3QgcGxheV9zdGF0ZTsKKyAgYXVkaW9fc3RyZWFtX3NvdXJjZV90IHN0cmVhbV9zb3VyY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF1ZGlvX2NoYW5uZWxfc2VsZWN0X3QgY2hhbm5lbF9zZWxlY3Q7Ci0gaW50IGJ5cGFzc19tb2RlOwotIGF1ZGlvX21peGVyX3QgbWl4ZXJfc3RhdGU7CisgIGF1ZGlvX2NoYW5uZWxfc2VsZWN0X3QgY2hhbm5lbF9zZWxlY3Q7CisgIGludCBieXBhc3NfbW9kZTsKKyAgYXVkaW9fbWl4ZXJfdCBtaXhlcl9zdGF0ZTsKIH0gYXVkaW9fc3RhdHVzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZgotc3RydWN0IGF1ZGlvX2thcmFva2UgewotIGludCB2b2NhbDE7Ci0gaW50IHZvY2FsMjsKK3R5cGVkZWYgc3RydWN0IGF1ZGlvX2thcmFva2UgeworICBpbnQgdm9jYWwxOworICBpbnQgdm9jYWwyOworICBpbnQgbWVsb2R5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbWVsb2R5OwogfSBhdWRpb19rYXJhb2tlX3Q7CiB0eXBlZGVmIF9fdTE2IGF1ZGlvX2F0dHJpYnV0ZXNfdDsKICNkZWZpbmUgQVVESU9fQ0FQX0RUUyAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19DQVBfTFBDTSAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19DQVBfTVAxIDQKICNkZWZpbmUgQVVESU9fQ0FQX01QMiA4CiAjZGVmaW5lIEFVRElPX0NBUF9NUDMgMTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0NBUF9BQUMgMzIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0NBUF9PR0cgNjQKICNkZWZpbmUgQVVESU9fQ0FQX1NERFMgMTI4CiAjZGVmaW5lIEFVRElPX0NBUF9BQzMgMjU2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19TVE9QIF9JTygnbycsIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19QTEFZIF9JTygnbycsIDIpCiAjZGVmaW5lIEFVRElPX1BBVVNFIF9JTygnbycsIDMpCiAjZGVmaW5lIEFVRElPX0NPTlRJTlVFIF9JTygnbycsIDQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19TRUxFQ1RfU09VUkNFIF9JTygnbycsIDUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19TRVRfTVVURSBfSU8oJ28nLCA2KQogI2RlZmluZSBBVURJT19TRVRfQVZfU1lOQyBfSU8oJ28nLCA3KQogI2RlZmluZSBBVURJT19TRVRfQllQQVNTX01PREUgX0lPKCdvJywgOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0NIQU5ORUxfU0VMRUNUIF9JTygnbycsIDkpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19HRVRfU1RBVFVTIF9JT1IoJ28nLCAxMCwgYXVkaW9fc3RhdHVzX3QpCiAjZGVmaW5lIEFVRElPX0dFVF9DQVBBQklMSVRJRVMgX0lPUignbycsIDExLCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIEFVRElPX0NMRUFSX0JVRkZFUiBfSU8oJ28nLCAxMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NFVF9JRCBfSU8oJ28nLCAxMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NFVF9NSVhFUiBfSU9XKCdvJywgMTQsIGF1ZGlvX21peGVyX3QpCiAjZGVmaW5lIEFVRElPX1NFVF9TVFJFQU1UWVBFIF9JTygnbycsIDE1KQogI2RlZmluZSBBVURJT19TRVRfRVhUX0lEIF9JTygnbycsIDE2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fU0VUX0FUVFJJQlVURVMgX0lPVygnbycsIDE3LCBhdWRpb19hdHRyaWJ1dGVzX3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19TRVRfS0FSQU9LRSBfSU9XKCdvJywgMTgsIGF1ZGlvX2thcmFva2VfdCkKICNkZWZpbmUgQVVESU9fR0VUX1BUUyBfSU9SKCdvJywgMTksIF9fdTY0KQogI2RlZmluZSBBVURJT19CSUxJTkdVQUxfQ0hBTk5FTF9TRUxFQ1QgX0lPKCdvJywgMjApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvY2EuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2NhLmgKaW5kZXggMTM5YmQyZC4uMmVlZDY1NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvY2EuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9jYS5oCkBAIC0xOSw1NCArMTksNTQgQEAKICNpZm5kZWYgX0RWQkNBX0hfCiAjZGVmaW5lIF9EVkJDQV9IXwogdHlwZWRlZiBzdHJ1Y3QgY2Ffc2xvdF9pbmZvIHsKLSBpbnQgbnVtOworICBpbnQgbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHlwZTsKKyAgaW50IHR5cGU7CiAjZGVmaW5lIENBX0NJIDEKICNkZWZpbmUgQ0FfQ0lfTElOSyAyCiAjZGVmaW5lIENBX0NJX1BIWVMgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FfREVTQ1IgOAogI2RlZmluZSBDQV9TQyAxMjgKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBmbGFnczsKICNkZWZpbmUgQ0FfQ0lfTU9EVUxFX1BSRVNFTlQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FfQ0lfTU9EVUxFX1JFQURZIDIKIH0gY2Ffc2xvdF9pbmZvX3Q7CiB0eXBlZGVmIHN0cnVjdCBjYV9kZXNjcl9pbmZvIHsKLSB1bnNpZ25lZCBpbnQgbnVtOworICB1bnNpZ25lZCBpbnQgbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgaW50IHR5cGU7CiAjZGVmaW5lIENBX0VDRCAxCiAjZGVmaW5lIENBX05EUyAyCiAjZGVmaW5lIENBX0RTUyA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBjYV9kZXNjcl9pbmZvX3Q7CiB0eXBlZGVmIHN0cnVjdCBjYV9jYXBzIHsKLSB1bnNpZ25lZCBpbnQgc2xvdF9udW07Ci0gdW5zaWduZWQgaW50IHNsb3RfdHlwZTsKKyAgdW5zaWduZWQgaW50IHNsb3RfbnVtOworICB1bnNpZ25lZCBpbnQgc2xvdF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGVzY3JfbnVtOwotIHVuc2lnbmVkIGludCBkZXNjcl90eXBlOworICB1bnNpZ25lZCBpbnQgZGVzY3JfbnVtOworICB1bnNpZ25lZCBpbnQgZGVzY3JfdHlwZTsKIH0gY2FfY2Fwc190OwogdHlwZWRlZiBzdHJ1Y3QgY2FfbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBsZW5ndGg7Ci0gdW5zaWduZWQgY2hhciBtc2dbMjU2XTsKKyAgdW5zaWduZWQgaW50IGluZGV4OworICB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgdW5zaWduZWQgY2hhciBtc2dbMjU2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGNhX21zZ190OwogdHlwZWRlZiBzdHJ1Y3QgY2FfZGVzY3IgewotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgcGFyaXR5OworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBwYXJpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY3dbOF07CisgIHVuc2lnbmVkIGNoYXIgY3dbOF07CiB9IGNhX2Rlc2NyX3Q7CiB0eXBlZGVmIHN0cnVjdCBjYV9waWQgewotIHVuc2lnbmVkIGludCBwaWQ7CisgIHVuc2lnbmVkIGludCBwaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpbmRleDsKKyAgaW50IGluZGV4OwogfSBjYV9waWRfdDsKICNkZWZpbmUgQ0FfUkVTRVQgX0lPKCdvJywgMTI4KQogI2RlZmluZSBDQV9HRVRfQ0FQIF9JT1IoJ28nLCAxMjksIGNhX2NhcHNfdCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2RteC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZG14LmgKaW5kZXggYjkzNzgyYS4uOGUxZDcxOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZG14LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZG14LmgKQEAgLTIyLDEyNCArMjIsMTE3IEBACiAjaW5jbHVkZSA8dGltZS5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX0ZJTFRFUl9TSVpFIDE2Ci10eXBlZGVmIGVudW0KLXsKLSBETVhfT1VUX0RFQ09ERVIsCit0eXBlZGVmIGVudW0geworICBETVhfT1VUX0RFQ09ERVIsCisgIERNWF9PVVRfVEFQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETVhfT1VUX1RBUCwKLSBETVhfT1VUX1RTX1RBUCwKLSBETVhfT1VUX1RTREVNVVhfVEFQCisgIERNWF9PVVRfVFNfVEFQLAorICBETVhfT1VUX1RTREVNVVhfVEFQCiB9IGRteF9vdXRwdXRfdDsKK3R5cGVkZWYgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZiBlbnVtCi17Ci0gRE1YX0lOX0ZST05URU5ELAotIERNWF9JTl9EVlIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERNWF9JTl9GUk9OVEVORCwKKyAgRE1YX0lOX0RWUgogfSBkbXhfaW5wdXRfdDsKLXR5cGVkZWYgZW51bSBkbXhfdHNfcGVzCi17Ci0gRE1YX1BFU19BVURJTzAsCit0eXBlZGVmIGVudW0gZG14X3RzX3BlcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9QRVNfVklERU8wLAotIERNWF9QRVNfVEVMRVRFWFQwLAotIERNWF9QRVNfU1VCVElUTEUwLAotIERNWF9QRVNfUENSMCwKKyAgRE1YX1BFU19BVURJTzAsCisgIERNWF9QRVNfVklERU8wLAorICBETVhfUEVTX1RFTEVURVhUMCwKKyAgRE1YX1BFU19TVUJUSVRMRTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9QRVNfQVVESU8xLAotIERNWF9QRVNfVklERU8xLAotIERNWF9QRVNfVEVMRVRFWFQxLAotIERNWF9QRVNfU1VCVElUTEUxLAorICBETVhfUEVTX1BDUjAsCisgIERNWF9QRVNfQVVESU8xLAorICBETVhfUEVTX1ZJREVPMSwKKyAgRE1YX1BFU19URUxFVEVYVDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9QRVNfUENSMSwKLSBETVhfUEVTX0FVRElPMiwKLSBETVhfUEVTX1ZJREVPMiwKLSBETVhfUEVTX1RFTEVURVhUMiwKKyAgRE1YX1BFU19TVUJUSVRMRTEsCisgIERNWF9QRVNfUENSMSwKKyAgRE1YX1BFU19BVURJTzIsCisgIERNWF9QRVNfVklERU8yLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETVhfUEVTX1NVQlRJVExFMiwKLSBETVhfUEVTX1BDUjIsCi0gRE1YX1BFU19BVURJTzMsCi0gRE1YX1BFU19WSURFTzMsCisgIERNWF9QRVNfVEVMRVRFWFQyLAorICBETVhfUEVTX1NVQlRJVExFMiwKKyAgRE1YX1BFU19QQ1IyLAorICBETVhfUEVTX0FVRElPMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1BFU19URUxFVEVYVDMsCi0gRE1YX1BFU19TVUJUSVRMRTMsCi0gRE1YX1BFU19QQ1IzLAotIERNWF9QRVNfT1RIRVIKKyAgRE1YX1BFU19WSURFTzMsCisgIERNWF9QRVNfVEVMRVRFWFQzLAorICBETVhfUEVTX1NVQlRJVExFMywKKyAgRE1YX1BFU19QQ1IzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRE1YX1BFU19PVEhFUgogfSBkbXhfcGVzX3R5cGVfdDsKICNkZWZpbmUgRE1YX1BFU19BVURJTyBETVhfUEVTX0FVRElPMAogI2RlZmluZSBETVhfUEVTX1ZJREVPIERNWF9QRVNfVklERU8wCi0jZGVmaW5lIERNWF9QRVNfVEVMRVRFWFQgRE1YX1BFU19URUxFVEVYVDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERNWF9QRVNfVEVMRVRFWFQgRE1YX1BFU19URUxFVEVYVDAKICNkZWZpbmUgRE1YX1BFU19TVUJUSVRMRSBETVhfUEVTX1NVQlRJVExFMAogI2RlZmluZSBETVhfUEVTX1BDUiBETVhfUEVTX1BDUjAKLXR5cGVkZWYgc3RydWN0IGRteF9maWx0ZXIKLXsKK3R5cGVkZWYgc3RydWN0IGRteF9maWx0ZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZpbHRlcltETVhfRklMVEVSX1NJWkVdOwotIF9fdTggbWFza1tETVhfRklMVEVSX1NJWkVdOwotIF9fdTggbW9kZVtETVhfRklMVEVSX1NJWkVdOworICBfX3U4IGZpbHRlcltETVhfRklMVEVSX1NJWkVdOworICBfX3U4IG1hc2tbRE1YX0ZJTFRFUl9TSVpFXTsKKyAgX191OCBtb2RlW0RNWF9GSUxURVJfU0laRV07CiB9IGRteF9maWx0ZXJfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgZG14X3NjdF9maWx0ZXJfcGFyYW1zCi17Ci0gX191MTYgcGlkOwotIGRteF9maWx0ZXJfdCBmaWx0ZXI7CitzdHJ1Y3QgZG14X3NjdF9maWx0ZXJfcGFyYW1zIHsKKyAgX191MTYgcGlkOworICBkbXhfZmlsdGVyX3QgZmlsdGVyOworICBfX3UzMiB0aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aW1lb3V0OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKICNkZWZpbmUgRE1YX0NIRUNLX0NSQyAxCiAjZGVmaW5lIERNWF9PTkVTSE9UIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9JTU1FRElBVEVfU1RBUlQgNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX0tFUk5FTF9DTElFTlQgMHg4MDAwCiB9Owotc3RydWN0IGRteF9wZXNfZmlsdGVyX3BhcmFtcworc3RydWN0IGRteF9wZXNfZmlsdGVyX3BhcmFtcyB7CisgIF9fdTE2IHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX191MTYgcGlkOwotIGRteF9pbnB1dF90IGlucHV0OwotIGRteF9vdXRwdXRfdCBvdXRwdXQ7CisgIGRteF9pbnB1dF90IGlucHV0OworICBkbXhfb3V0cHV0X3Qgb3V0cHV0OworICBkbXhfcGVzX3R5cGVfdCBwZXNfdHlwZTsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRteF9wZXNfdHlwZV90IHBlc190eXBlOwotIF9fdTMyIGZsYWdzOwogfTsKIHR5cGVkZWYgc3RydWN0IGRteF9jYXBzIHsKKyAgX191MzIgY2FwczsKKyAgaW50IG51bV9kZWNvZGVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FwczsKLSBpbnQgbnVtX2RlY29kZXJzOwogfSBkbXhfY2Fwc190OwogdHlwZWRlZiBlbnVtIHsKKyAgRE1YX1NPVVJDRV9GUk9OVDAgPSAwLAorICBETVhfU09VUkNFX0ZST05UMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1NPVVJDRV9GUk9OVDAgPSAwLAotIERNWF9TT1VSQ0VfRlJPTlQxLAotIERNWF9TT1VSQ0VfRlJPTlQyLAotIERNWF9TT1VSQ0VfRlJPTlQzLAorICBETVhfU09VUkNFX0ZST05UMiwKKyAgRE1YX1NPVVJDRV9GUk9OVDMsCisgIERNWF9TT1VSQ0VfRFZSMCA9IDE2LAorICBETVhfU09VUkNFX0RWUjEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9TT1VSQ0VfRFZSMCA9IDE2LAotIERNWF9TT1VSQ0VfRFZSMSwKLSBETVhfU09VUkNFX0RWUjIsCi0gRE1YX1NPVVJDRV9EVlIzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBETVhfU09VUkNFX0RWUjIsCisgIERNWF9TT1VSQ0VfRFZSMwogfSBkbXhfc291cmNlX3Q7CiBzdHJ1Y3QgZG14X3N0YyB7Ci0gdW5zaWduZWQgaW50IG51bTsKLSB1bnNpZ25lZCBpbnQgYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RjOworICB1bnNpZ25lZCBpbnQgbnVtOworICB1bnNpZ25lZCBpbnQgYmFzZTsKKyAgX191NjQgc3RjOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9TVEFSVCBfSU8oJ28nLCA0MSkKICNkZWZpbmUgRE1YX1NUT1AgX0lPKCdvJywgNDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfU0VUX0ZJTFRFUiBfSU9XKCdvJywgNDMsIHN0cnVjdCBkbXhfc2N0X2ZpbHRlcl9wYXJhbXMpCiAjZGVmaW5lIERNWF9TRVRfUEVTX0ZJTFRFUiBfSU9XKCdvJywgNDQsIHN0cnVjdCBkbXhfcGVzX2ZpbHRlcl9wYXJhbXMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfU0VUX0JVRkZFUl9TSVpFIF9JTygnbycsIDQ1KQogI2RlZmluZSBETVhfR0VUX1BFU19QSURTIF9JT1IoJ28nLCA0NywgX191MTZbNV0pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfR0VUX0NBUFMgX0lPUignbycsIDQ4LCBkbXhfY2Fwc190KQogI2RlZmluZSBETVhfU0VUX1NPVVJDRSBfSU9XKCdvJywgNDksIGRteF9zb3VyY2VfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9HRVRfU1RDIF9JT1dSKCdvJywgNTAsIHN0cnVjdCBkbXhfc3RjKQogI2RlZmluZSBETVhfQUREX1BJRCBfSU9XKCdvJywgNTEsIF9fdTE2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX1JFTU9WRV9QSUQgX0lPVygnbycsIDUyLCBfX3UxNikKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2Zyb250ZW5kLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9mcm9udGVuZC5oCmluZGV4IDNkNzE3MzMuLmE5N2Q1ZTcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2Zyb250ZW5kLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZnJvbnRlbmQuaApAQCAtMjEsMjUzICsyMSwyNTMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogdHlwZWRlZiBlbnVtIGZlX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9RUFNLLAotIEZFX1FBTSwKLSBGRV9PRkRNLAotIEZFX0FUU0MKKyAgRkVfUVBTSywKKyAgRkVfUUFNLAorICBGRV9PRkRNLAorICBGRV9BVFNDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBmZV90eXBlX3Q7CiB0eXBlZGVmIGVudW0gZmVfY2FwcyB7Ci0gRkVfSVNfU1RVUElEID0gMCwKLSBGRV9DQU5fSU5WRVJTSU9OX0FVVE8gPSAweDEsCisgIEZFX0lTX1NUVVBJRCA9IDAsCisgIEZFX0NBTl9JTlZFUlNJT05fQVVUTyA9IDB4MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX0ZFQ18xXzIgPSAweDIsCi0gRkVfQ0FOX0ZFQ18yXzMgPSAweDQsCi0gRkVfQ0FOX0ZFQ18zXzQgPSAweDgsCi0gRkVfQ0FOX0ZFQ180XzUgPSAweDEwLAorICBGRV9DQU5fRkVDXzFfMiA9IDB4MiwKKyAgRkVfQ0FOX0ZFQ18yXzMgPSAweDQsCisgIEZFX0NBTl9GRUNfM180ID0gMHg4LAorICBGRV9DQU5fRkVDXzRfNSA9IDB4MTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX0NBTl9GRUNfNV82ID0gMHgyMCwKLSBGRV9DQU5fRkVDXzZfNyA9IDB4NDAsCi0gRkVfQ0FOX0ZFQ183XzggPSAweDgwLAotIEZFX0NBTl9GRUNfOF85ID0gMHgxMDAsCisgIEZFX0NBTl9GRUNfNV82ID0gMHgyMCwKKyAgRkVfQ0FOX0ZFQ182XzcgPSAweDQwLAorICBGRV9DQU5fRkVDXzdfOCA9IDB4ODAsCisgIEZFX0NBTl9GRUNfOF85ID0gMHgxMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX0NBTl9GRUNfQVVUTyA9IDB4MjAwLAotIEZFX0NBTl9RUFNLID0gMHg0MDAsCi0gRkVfQ0FOX1FBTV8xNiA9IDB4ODAwLAotIEZFX0NBTl9RQU1fMzIgPSAweDEwMDAsCisgIEZFX0NBTl9GRUNfQVVUTyA9IDB4MjAwLAorICBGRV9DQU5fUVBTSyA9IDB4NDAwLAorICBGRV9DQU5fUUFNXzE2ID0gMHg4MDAsCisgIEZFX0NBTl9RQU1fMzIgPSAweDEwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX0NBTl9RQU1fNjQgPSAweDIwMDAsCi0gRkVfQ0FOX1FBTV8xMjggPSAweDQwMDAsCi0gRkVfQ0FOX1FBTV8yNTYgPSAweDgwMDAsCi0gRkVfQ0FOX1FBTV9BVVRPID0gMHgxMDAwMCwKKyAgRkVfQ0FOX1FBTV82NCA9IDB4MjAwMCwKKyAgRkVfQ0FOX1FBTV8xMjggPSAweDQwMDAsCisgIEZFX0NBTl9RQU1fMjU2ID0gMHg4MDAwLAorICBGRV9DQU5fUUFNX0FVVE8gPSAweDEwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9DQU5fVFJBTlNNSVNTSU9OX01PREVfQVVUTyA9IDB4MjAwMDAsCi0gRkVfQ0FOX0JBTkRXSURUSF9BVVRPID0gMHg0MDAwMCwKLSBGRV9DQU5fR1VBUkRfSU5URVJWQUxfQVVUTyA9IDB4ODAwMDAsCi0gRkVfQ0FOX0hJRVJBUkNIWV9BVVRPID0gMHgxMDAwMDAsCisgIEZFX0NBTl9UUkFOU01JU1NJT05fTU9ERV9BVVRPID0gMHgyMDAwMCwKKyAgRkVfQ0FOX0JBTkRXSURUSF9BVVRPID0gMHg0MDAwMCwKKyAgRkVfQ0FOX0dVQVJEX0lOVEVSVkFMX0FVVE8gPSAweDgwMDAwLAorICBGRV9DQU5fSElFUkFSQ0hZX0FVVE8gPSAweDEwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOXzhWU0IgPSAweDIwMDAwMCwKLSBGRV9DQU5fMTZWU0IgPSAweDQwMDAwMCwKLSBGRV9IQVNfRVhURU5ERURfQ0FQUyA9IDB4ODAwMDAwLAotIEZFX0NBTl9NVUxUSVNUUkVBTSA9IDB4NDAwMDAwMCwKKyAgRkVfQ0FOXzhWU0IgPSAweDIwMDAwMCwKKyAgRkVfQ0FOXzE2VlNCID0gMHg0MDAwMDAsCisgIEZFX0hBU19FWFRFTkRFRF9DQVBTID0gMHg4MDAwMDAsCisgIEZFX0NBTl9NVUxUSVNUUkVBTSA9IDB4NDAwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX1RVUkJPX0ZFQyA9IDB4ODAwMDAwMCwKLSBGRV9DQU5fMkdfTU9EVUxBVElPTiA9IDB4MTAwMDAwMDAsCi0gRkVfTkVFRFNfQkVORElORyA9IDB4MjAwMDAwMDAsCi0gRkVfQ0FOX1JFQ09WRVIgPSAweDQwMDAwMDAwLAorICBGRV9DQU5fVFVSQk9fRkVDID0gMHg4MDAwMDAwLAorICBGRV9DQU5fMkdfTU9EVUxBVElPTiA9IDB4MTAwMDAwMDAsCisgIEZFX05FRURTX0JFTkRJTkcgPSAweDIwMDAwMDAwLAorICBGRV9DQU5fUkVDT1ZFUiA9IDB4NDAwMDAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX0NBTl9NVVRFX1RTID0gMHg4MDAwMDAwMAorICBGRV9DQU5fTVVURV9UUyA9IDB4ODAwMDAwMDAKIH0gZmVfY2Fwc190Owogc3RydWN0IGR2Yl9mcm9udGVuZF9pbmZvIHsKLSBjaGFyIG5hbWVbMTI4XTsKKyAgY2hhciBuYW1lWzEyOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZlX3R5cGVfdCB0eXBlOwotIF9fdTMyIGZyZXF1ZW5jeV9taW47Ci0gX191MzIgZnJlcXVlbmN5X21heDsKLSBfX3UzMiBmcmVxdWVuY3lfc3RlcHNpemU7CisgIGZlX3R5cGVfdCB0eXBlOworICBfX3UzMiBmcmVxdWVuY3lfbWluOworICBfX3UzMiBmcmVxdWVuY3lfbWF4OworICBfX3UzMiBmcmVxdWVuY3lfc3RlcHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZyZXF1ZW5jeV90b2xlcmFuY2U7Ci0gX191MzIgc3ltYm9sX3JhdGVfbWluOwotIF9fdTMyIHN5bWJvbF9yYXRlX21heDsKLSBfX3UzMiBzeW1ib2xfcmF0ZV90b2xlcmFuY2U7CisgIF9fdTMyIGZyZXF1ZW5jeV90b2xlcmFuY2U7CisgIF9fdTMyIHN5bWJvbF9yYXRlX21pbjsKKyAgX191MzIgc3ltYm9sX3JhdGVfbWF4OworICBfX3UzMiBzeW1ib2xfcmF0ZV90b2xlcmFuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5vdGlmaWVyX2RlbGF5OwotIGZlX2NhcHNfdCBjYXBzOworICBfX3UzMiBub3RpZmllcl9kZWxheTsKKyAgZmVfY2Fwc190IGNhcHM7CiB9Owogc3RydWN0IGR2Yl9kaXNlcWNfbWFzdGVyX2NtZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbXNnIFs2XTsKLSBfX3U4IG1zZ19sZW47CisgIF9fdTggbXNnWzZdOworICBfX3U4IG1zZ19sZW47CiB9Owogc3RydWN0IGR2Yl9kaXNlcWNfc2xhdmVfcmVwbHkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1zZyBbNF07Ci0gX191OCBtc2dfbGVuOwotIGludCB0aW1lb3V0OworICBfX3U4IG1zZ1s0XTsKKyAgX191OCBtc2dfbGVuOworICBpbnQgdGltZW91dDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIGZlX3NlY192b2x0YWdlIHsKLSBTRUNfVk9MVEFHRV8xMywKLSBTRUNfVk9MVEFHRV8xOCwKLSBTRUNfVk9MVEFHRV9PRkYKKyAgU0VDX1ZPTFRBR0VfMTMsCisgIFNFQ19WT0xUQUdFXzE4LAorICBTRUNfVk9MVEFHRV9PRkYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZlX3NlY192b2x0YWdlX3Q7CiB0eXBlZGVmIGVudW0gZmVfc2VjX3RvbmVfbW9kZSB7Ci0gU0VDX1RPTkVfT04sCi0gU0VDX1RPTkVfT0ZGCisgIFNFQ19UT05FX09OLAorICBTRUNfVE9ORV9PRkYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZlX3NlY190b25lX21vZGVfdDsKIHR5cGVkZWYgZW51bSBmZV9zZWNfbWluaV9jbWQgewotIFNFQ19NSU5JX0EsCi0gU0VDX01JTklfQgorICBTRUNfTUlOSV9BLAorICBTRUNfTUlOSV9CCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBmZV9zZWNfbWluaV9jbWRfdDsKIHR5cGVkZWYgZW51bSBmZV9zdGF0dXMgewotIEZFX0hBU19TSUdOQUwgPSAweDAxLAotIEZFX0hBU19DQVJSSUVSID0gMHgwMiwKKyAgRkVfSEFTX1NJR05BTCA9IDB4MDEsCisgIEZFX0hBU19DQVJSSUVSID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfSEFTX1ZJVEVSQkkgPSAweDA0LAotIEZFX0hBU19TWU5DID0gMHgwOCwKLSBGRV9IQVNfTE9DSyA9IDB4MTAsCi0gRkVfVElNRURPVVQgPSAweDIwLAorICBGRV9IQVNfVklURVJCSSA9IDB4MDQsCisgIEZFX0hBU19TWU5DID0gMHgwOCwKKyAgRkVfSEFTX0xPQ0sgPSAweDEwLAorICBGRV9USU1FRE9VVCA9IDB4MjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX1JFSU5JVCA9IDB4NDAsCisgIEZFX1JFSU5JVCA9IDB4NDAsCiB9IGZlX3N0YXR1c190OwogdHlwZWRlZiBlbnVtIGZlX3NwZWN0cmFsX2ludmVyc2lvbiB7Ci0gSU5WRVJTSU9OX09GRiwKKyAgSU5WRVJTSU9OX09GRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5WRVJTSU9OX09OLAotIElOVkVSU0lPTl9BVVRPCisgIElOVkVSU0lPTl9PTiwKKyAgSU5WRVJTSU9OX0FVVE8KIH0gZmVfc3BlY3RyYWxfaW52ZXJzaW9uX3Q7CiB0eXBlZGVmIGVudW0gZmVfY29kZV9yYXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVDX05PTkUgPSAwLAotIEZFQ18xXzIsCi0gRkVDXzJfMywKLSBGRUNfM180LAorICBGRUNfTk9ORSA9IDAsCisgIEZFQ18xXzIsCisgIEZFQ18yXzMsCisgIEZFQ18zXzQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFQ180XzUsCi0gRkVDXzVfNiwKLSBGRUNfNl83LAotIEZFQ183XzgsCisgIEZFQ180XzUsCisgIEZFQ181XzYsCisgIEZFQ182XzcsCisgIEZFQ183XzgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFQ184XzksCi0gRkVDX0FVVE8sCi0gRkVDXzNfNSwKLSBGRUNfOV8xMCwKKyAgRkVDXzhfOSwKKyAgRkVDX0FVVE8sCisgIEZFQ18zXzUsCisgIEZFQ185XzEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRUNfMl81LAorICBGRUNfMl81LAogfSBmZV9jb2RlX3JhdGVfdDsKIHR5cGVkZWYgZW51bSBmZV9tb2R1bGF0aW9uIHsKLSBRUFNLLAorICBRUFNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBRQU1fMTYsCi0gUUFNXzMyLAotIFFBTV82NCwKLSBRQU1fMTI4LAorICBRQU1fMTYsCisgIFFBTV8zMiwKKyAgUUFNXzY0LAorICBRQU1fMTI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBRQU1fMjU2LAotIFFBTV9BVVRPLAotIFZTQl84LAotIFZTQl8xNiwKKyAgUUFNXzI1NiwKKyAgUUFNX0FVVE8sCisgIFZTQl84LAorICBWU0JfMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBTS184LAotIEFQU0tfMTYsCi0gQVBTS18zMiwKLSBEUVBTSywKKyAgUFNLXzgsCisgIEFQU0tfMTYsCisgIEFQU0tfMzIsCisgIERRUFNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBRQU1fNF9OUiwKKyAgUUFNXzRfTlIsCiB9IGZlX21vZHVsYXRpb25fdDsKIHR5cGVkZWYgZW51bSBmZV90cmFuc21pdF9tb2RlIHsKLSBUUkFOU01JU1NJT05fTU9ERV8ySywKKyAgVFJBTlNNSVNTSU9OX01PREVfMkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRSQU5TTUlTU0lPTl9NT0RFXzhLLAotIFRSQU5TTUlTU0lPTl9NT0RFX0FVVE8sCi0gVFJBTlNNSVNTSU9OX01PREVfNEssCi0gVFJBTlNNSVNTSU9OX01PREVfMUssCisgIFRSQU5TTUlTU0lPTl9NT0RFXzhLLAorICBUUkFOU01JU1NJT05fTU9ERV9BVVRPLAorICBUUkFOU01JU1NJT05fTU9ERV80SywKKyAgVFJBTlNNSVNTSU9OX01PREVfMUssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRSQU5TTUlTU0lPTl9NT0RFXzE2SywKLSBUUkFOU01JU1NJT05fTU9ERV8zMkssCi0gVFJBTlNNSVNTSU9OX01PREVfQzEsCi0gVFJBTlNNSVNTSU9OX01PREVfQzM3ODAsCisgIFRSQU5TTUlTU0lPTl9NT0RFXzE2SywKKyAgVFJBTlNNSVNTSU9OX01PREVfMzJLLAorICBUUkFOU01JU1NJT05fTU9ERV9DMSwKKyAgVFJBTlNNSVNTSU9OX01PREVfQzM3ODAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBmZV90cmFuc21pdF9tb2RlX3Q7CiB0eXBlZGVmIGVudW0gZmVfYmFuZHdpZHRoIHsKLSBCQU5EV0lEVEhfOF9NSFosCi0gQkFORFdJRFRIXzdfTUhaLAorICBCQU5EV0lEVEhfOF9NSFosCisgIEJBTkRXSURUSF83X01IWiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkFORFdJRFRIXzZfTUhaLAotIEJBTkRXSURUSF9BVVRPLAotIEJBTkRXSURUSF81X01IWiwKLSBCQU5EV0lEVEhfMTBfTUhaLAorICBCQU5EV0lEVEhfNl9NSFosCisgIEJBTkRXSURUSF9BVVRPLAorICBCQU5EV0lEVEhfNV9NSFosCisgIEJBTkRXSURUSF8xMF9NSFosCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJBTkRXSURUSF8xXzcxMl9NSFosCisgIEJBTkRXSURUSF8xXzcxMl9NSFosCiB9IGZlX2JhbmR3aWR0aF90OwogdHlwZWRlZiBlbnVtIGZlX2d1YXJkX2ludGVydmFsIHsKLSBHVUFSRF9JTlRFUlZBTF8xXzMyLAorICBHVUFSRF9JTlRFUlZBTF8xXzMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHVUFSRF9JTlRFUlZBTF8xXzE2LAotIEdVQVJEX0lOVEVSVkFMXzFfOCwKLSBHVUFSRF9JTlRFUlZBTF8xXzQsCi0gR1VBUkRfSU5URVJWQUxfQVVUTywKKyAgR1VBUkRfSU5URVJWQUxfMV8xNiwKKyAgR1VBUkRfSU5URVJWQUxfMV84LAorICBHVUFSRF9JTlRFUlZBTF8xXzQsCisgIEdVQVJEX0lOVEVSVkFMX0FVVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdVQVJEX0lOVEVSVkFMXzFfMTI4LAotIEdVQVJEX0lOVEVSVkFMXzE5XzEyOCwKLSBHVUFSRF9JTlRFUlZBTF8xOV8yNTYsCi0gR1VBUkRfSU5URVJWQUxfUE40MjAsCisgIEdVQVJEX0lOVEVSVkFMXzFfMTI4LAorICBHVUFSRF9JTlRFUlZBTF8xOV8xMjgsCisgIEdVQVJEX0lOVEVSVkFMXzE5XzI1NiwKKyAgR1VBUkRfSU5URVJWQUxfUE40MjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdVQVJEX0lOVEVSVkFMX1BONTk1LAotIEdVQVJEX0lOVEVSVkFMX1BOOTQ1LAorICBHVUFSRF9JTlRFUlZBTF9QTjU5NSwKKyAgR1VBUkRfSU5URVJWQUxfUE45NDUsCiB9IGZlX2d1YXJkX2ludGVydmFsX3Q7CiB0eXBlZGVmIGVudW0gZmVfaGllcmFyY2h5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSElFUkFSQ0hZX05PTkUsCi0gSElFUkFSQ0hZXzEsCi0gSElFUkFSQ0hZXzIsCi0gSElFUkFSQ0hZXzQsCisgIEhJRVJBUkNIWV9OT05FLAorICBISUVSQVJDSFlfMSwKKyAgSElFUkFSQ0hZXzIsCisgIEhJRVJBUkNIWV80LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBISUVSQVJDSFlfQVVUTworICBISUVSQVJDSFlfQVVUTwogfSBmZV9oaWVyYXJjaHlfdDsKIGVudW0gZmVfaW50ZXJsZWF2aW5nIHsKLSBJTlRFUkxFQVZJTkdfTk9ORSwKKyAgSU5URVJMRUFWSU5HX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElOVEVSTEVBVklOR19BVVRPLAotIElOVEVSTEVBVklOR18yNDAsCi0gSU5URVJMRUFWSU5HXzcyMCwKKyAgSU5URVJMRUFWSU5HX0FVVE8sCisgIElOVEVSTEVBVklOR18yNDAsCisgIElOVEVSTEVBVklOR183MjAsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmJfcXBza19wYXJhbWV0ZXJzIHsKLSBfX3UzMiBzeW1ib2xfcmF0ZTsKLSBmZV9jb2RlX3JhdGVfdCBmZWNfaW5uZXI7CisgIF9fdTMyIHN5bWJvbF9yYXRlOworICBmZV9jb2RlX3JhdGVfdCBmZWNfaW5uZXI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmJfcWFtX3BhcmFtZXRlcnMgewotIF9fdTMyIHN5bWJvbF9yYXRlOwotIGZlX2NvZGVfcmF0ZV90IGZlY19pbm5lcjsKLSBmZV9tb2R1bGF0aW9uX3QgbW9kdWxhdGlvbjsKKyAgX191MzIgc3ltYm9sX3JhdGU7CisgIGZlX2NvZGVfcmF0ZV90IGZlY19pbm5lcjsKKyAgZmVfbW9kdWxhdGlvbl90IG1vZHVsYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkdmJfdnNiX3BhcmFtZXRlcnMgewotIGZlX21vZHVsYXRpb25fdCBtb2R1bGF0aW9uOworICBmZV9tb2R1bGF0aW9uX3QgbW9kdWxhdGlvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2Yl9vZmRtX3BhcmFtZXRlcnMgewotIGZlX2JhbmR3aWR0aF90IGJhbmR3aWR0aDsKLSBmZV9jb2RlX3JhdGVfdCBjb2RlX3JhdGVfSFA7Ci0gZmVfY29kZV9yYXRlX3QgY29kZV9yYXRlX0xQOworICBmZV9iYW5kd2lkdGhfdCBiYW5kd2lkdGg7CisgIGZlX2NvZGVfcmF0ZV90IGNvZGVfcmF0ZV9IUDsKKyAgZmVfY29kZV9yYXRlX3QgY29kZV9yYXRlX0xQOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmZV9tb2R1bGF0aW9uX3QgY29uc3RlbGxhdGlvbjsKLSBmZV90cmFuc21pdF9tb2RlX3QgdHJhbnNtaXNzaW9uX21vZGU7Ci0gZmVfZ3VhcmRfaW50ZXJ2YWxfdCBndWFyZF9pbnRlcnZhbDsKLSBmZV9oaWVyYXJjaHlfdCBoaWVyYXJjaHlfaW5mb3JtYXRpb247CisgIGZlX21vZHVsYXRpb25fdCBjb25zdGVsbGF0aW9uOworICBmZV90cmFuc21pdF9tb2RlX3QgdHJhbnNtaXNzaW9uX21vZGU7CisgIGZlX2d1YXJkX2ludGVydmFsX3QgZ3VhcmRfaW50ZXJ2YWw7CisgIGZlX2hpZXJhcmNoeV90IGhpZXJhcmNoeV9pbmZvcm1hdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGR2Yl9mcm9udGVuZF9wYXJhbWV0ZXJzIHsKLSBfX3UzMiBmcmVxdWVuY3k7Ci0gZmVfc3BlY3RyYWxfaW52ZXJzaW9uX3QgaW52ZXJzaW9uOworICBfX3UzMiBmcmVxdWVuY3k7CisgIGZlX3NwZWN0cmFsX2ludmVyc2lvbl90IGludmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBkdmJfcXBza19wYXJhbWV0ZXJzIHFwc2s7Ci0gc3RydWN0IGR2Yl9xYW1fcGFyYW1ldGVycyBxYW07Ci0gc3RydWN0IGR2Yl9vZmRtX3BhcmFtZXRlcnMgb2ZkbTsKKyAgdW5pb24geworICAgIHN0cnVjdCBkdmJfcXBza19wYXJhbWV0ZXJzIHFwc2s7CisgICAgc3RydWN0IGR2Yl9xYW1fcGFyYW1ldGVycyBxYW07CisgICAgc3RydWN0IGR2Yl9vZmRtX3BhcmFtZXRlcnMgb2ZkbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGR2Yl92c2JfcGFyYW1ldGVycyB2c2I7Ci0gfSB1OworICAgIHN0cnVjdCBkdmJfdnNiX3BhcmFtZXRlcnMgdnNiOworICB9IHU7CiB9Owogc3RydWN0IGR2Yl9mcm9udGVuZF9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZlX3N0YXR1c190IHN0YXR1czsKLSBzdHJ1Y3QgZHZiX2Zyb250ZW5kX3BhcmFtZXRlcnMgcGFyYW1ldGVyczsKKyAgZmVfc3RhdHVzX3Qgc3RhdHVzOworICBzdHJ1Y3QgZHZiX2Zyb250ZW5kX3BhcmFtZXRlcnMgcGFyYW1ldGVyczsKIH07CiAjZGVmaW5lIERUVl9VTkRFRklORUQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM2MSwxMzUgKzM2MSwxMzUgQEAKICNkZWZpbmUgRFRWX01BWF9DT01NQU5EIERUVl9TVEFUX1RPVEFMX0JMT0NLX0NPVU5UCiB0eXBlZGVmIGVudW0gZmVfcGlsb3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQSUxPVF9PTiwKLSBQSUxPVF9PRkYsCi0gUElMT1RfQVVUTywKKyAgUElMT1RfT04sCisgIFBJTE9UX09GRiwKKyAgUElMT1RfQVVUTywKIH0gZmVfcGlsb3RfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gZmVfcm9sbG9mZiB7Ci0gUk9MTE9GRl8zNSwKLSBST0xMT0ZGXzIwLAotIFJPTExPRkZfMjUsCisgIFJPTExPRkZfMzUsCisgIFJPTExPRkZfMjAsCisgIFJPTExPRkZfMjUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJPTExPRkZfQVVUTywKKyAgUk9MTE9GRl9BVVRPLAogfSBmZV9yb2xsb2ZmX3Q7CiB0eXBlZGVmIGVudW0gZmVfZGVsaXZlcnlfc3lzdGVtIHsKLSBTWVNfVU5ERUZJTkVELAorICBTWVNfVU5ERUZJTkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTWVNfRFZCQ19BTk5FWF9BLAotIFNZU19EVkJDX0FOTkVYX0IsCi0gU1lTX0RWQlQsCi0gU1lTX0RTUywKKyAgU1lTX0RWQkNfQU5ORVhfQSwKKyAgU1lTX0RWQkNfQU5ORVhfQiwKKyAgU1lTX0RWQlQsCisgIFNZU19EU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNZU19EVkJTLAotIFNZU19EVkJTMiwKLSBTWVNfRFZCSCwKLSBTWVNfSVNEQlQsCisgIFNZU19EVkJTLAorICBTWVNfRFZCUzIsCisgIFNZU19EVkJILAorICBTWVNfSVNEQlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNZU19JU0RCUywKLSBTWVNfSVNEQkMsCi0gU1lTX0FUU0MsCi0gU1lTX0FUU0NNSCwKKyAgU1lTX0lTREJTLAorICBTWVNfSVNEQkMsCisgIFNZU19BVFNDLAorICBTWVNfQVRTQ01ILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTWVNfRFRNQiwKLSBTWVNfQ01NQiwKLSBTWVNfREFCLAotIFNZU19EVkJUMiwKKyAgU1lTX0RUTUIsCisgIFNZU19DTU1CLAorICBTWVNfREFCLAorICBTWVNfRFZCVDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNZU19UVVJCTywKLSBTWVNfRFZCQ19BTk5FWF9DLAorICBTWVNfVFVSQk8sCisgIFNZU19EVkJDX0FOTkVYX0MsCiB9IGZlX2RlbGl2ZXJ5X3N5c3RlbV90OwogI2RlZmluZSBTWVNfRFZCQ19BTk5FWF9BQyBTWVNfRFZCQ19BTk5FWF9BCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWVNfRE1CVEggU1lTX0RUTUIKIGVudW0gYXRzY21oX3NjY2NfYmxvY2tfbW9kZSB7Ci0gQVRTQ01IX1NDQ0NfQkxLX1NFUCA9IDAsCi0gQVRTQ01IX1NDQ0NfQkxLX0NPTUIgPSAxLAorICBBVFNDTUhfU0NDQ19CTEtfU0VQID0gMCwKKyAgQVRTQ01IX1NDQ0NfQkxLX0NPTUIgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBVFNDTUhfU0NDQ19CTEtfUkVTID0gMiwKKyAgQVRTQ01IX1NDQ0NfQkxLX1JFUyA9IDIsCiB9OwogZW51bSBhdHNjbWhfc2NjY19jb2RlX21vZGUgewotIEFUU0NNSF9TQ0NDX0NPREVfSExGID0gMCwKKyAgQVRTQ01IX1NDQ0NfQ09ERV9ITEYgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBVFNDTUhfU0NDQ19DT0RFX1FUUiA9IDEsCi0gQVRTQ01IX1NDQ0NfQ09ERV9SRVMgPSAyLAorICBBVFNDTUhfU0NDQ19DT0RFX1FUUiA9IDEsCisgIEFUU0NNSF9TQ0NDX0NPREVfUkVTID0gMiwKIH07CiBlbnVtIGF0c2NtaF9yc19mcmFtZV9lbnNlbWJsZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFUU0NNSF9SU0ZSQU1FX0VOU19QUkkgPSAwLAotIEFUU0NNSF9SU0ZSQU1FX0VOU19TRUMgPSAxLAorICBBVFNDTUhfUlNGUkFNRV9FTlNfUFJJID0gMCwKKyAgQVRTQ01IX1JTRlJBTUVfRU5TX1NFQyA9IDEsCiB9OwogZW51bSBhdHNjbWhfcnNfZnJhbWVfbW9kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFUU0NNSF9SU0ZSQU1FX1BSSV9PTkxZID0gMCwKLSBBVFNDTUhfUlNGUkFNRV9QUklfU0VDID0gMSwKLSBBVFNDTUhfUlNGUkFNRV9SRVMgPSAyLAorICBBVFNDTUhfUlNGUkFNRV9QUklfT05MWSA9IDAsCisgIEFUU0NNSF9SU0ZSQU1FX1BSSV9TRUMgPSAxLAorICBBVFNDTUhfUlNGUkFNRV9SRVMgPSAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGF0c2NtaF9yc19jb2RlX21vZGUgewotIEFUU0NNSF9SU0NPREVfMjExXzE4NyA9IDAsCi0gQVRTQ01IX1JTQ09ERV8yMjNfMTg3ID0gMSwKLSBBVFNDTUhfUlNDT0RFXzIzNV8xODcgPSAyLAorICBBVFNDTUhfUlNDT0RFXzIxMV8xODcgPSAwLAorICBBVFNDTUhfUlNDT0RFXzIyM18xODcgPSAxLAorICBBVFNDTUhfUlNDT0RFXzIzNV8xODcgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBVFNDTUhfUlNDT0RFX1JFUyA9IDMsCisgIEFUU0NNSF9SU0NPREVfUkVTID0gMywKIH07CiAjZGVmaW5lIE5PX1NUUkVBTV9JRF9GSUxURVIgKH4wVSkKICNkZWZpbmUgTE5BX0FVVE8gKH4wVSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHR2X2NtZHNfaCB7Ci0gY2hhciAqbmFtZTsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgc2V0OjE7CisgIGNoYXIgKiBuYW1lOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHNldCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ1ZmZlcjoxOwotIF9fdTMyIHJlc2VydmVkOjMwOworICBfX3UzMiBidWZmZXIgOiAxOworICBfX3UzMiByZXNlcnZlZCA6IDMwOwogfTsKIGVudW0gZmVjYXBfc2NhbGVfcGFyYW1zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfU0NBTEVfTk9UX0FWQUlMQUJMRSA9IDAsCi0gRkVfU0NBTEVfREVDSUJFTCwKLSBGRV9TQ0FMRV9SRUxBVElWRSwKLSBGRV9TQ0FMRV9DT1VOVEVSCisgIEZFX1NDQUxFX05PVF9BVkFJTEFCTEUgPSAwLAorICBGRV9TQ0FMRV9ERUNJQkVMLAorICBGRV9TQ0FMRV9SRUxBVElWRSwKKyAgRkVfU0NBTEVfQ09VTlRFUgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHR2X3N0YXRzIHsKLSBfX3U4IHNjYWxlOwotIHVuaW9uIHsKKyAgX191OCBzY2FsZTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1dmFsdWU7Ci0gX19zNjQgc3ZhbHVlOwotIH07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgICBfX3U2NCB1dmFsdWU7CisgICAgX19zNjQgc3ZhbHVlOworICB9OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BWF9EVFZfU1RBVFMgNAogc3RydWN0IGR0dl9mZV9zdGF0cyB7Ci0gX191OCBsZW47Ci0gc3RydWN0IGR0dl9zdGF0cyBzdGF0W01BWF9EVFZfU1RBVFNdOworICBfX3U4IGxlbjsKKyAgc3RydWN0IGR0dl9zdGF0cyBzdGF0W01BWF9EVFZfU1RBVFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBkdHZfcHJvcGVydHkgewotIF9fdTMyIGNtZDsKLSBfX3UzMiByZXNlcnZlZFszXTsKKyAgX191MzIgY21kOworICBfX3UzMiByZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fdTMyIGRhdGE7Ci0gc3RydWN0IGR0dl9mZV9zdGF0cyBzdDsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CisgICAgX191MzIgZGF0YTsKKyAgICBzdHJ1Y3QgZHR2X2ZlX3N0YXRzIHN0OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVszMl07Ci0gX191MzIgbGVuOwotIF9fdTMyIHJlc2VydmVkMVszXTsKLSB2b2lkICpyZXNlcnZlZDI7CisgICAgICBfX3U4IGRhdGFbMzJdOworICAgICAgX191MzIgbGVuOworICAgICAgX191MzIgcmVzZXJ2ZWQxWzNdOworICAgICAgdm9pZCAqIHJlc2VydmVkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBidWZmZXI7Ci0gfSB1OwotIGludCByZXN1bHQ7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgICB9IGJ1ZmZlcjsKKyAgfSB1OworICBpbnQgcmVzdWx0OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERUVl9JT0NUTF9NQVhfTVNHUyA2NAogc3RydWN0IGR0dl9wcm9wZXJ0aWVzIHsKLSBfX3UzMiBudW07Ci0gc3RydWN0IGR0dl9wcm9wZXJ0eSAqcHJvcHM7CisgIF9fdTMyIG51bTsKKyAgc3RydWN0IGR0dl9wcm9wZXJ0eSAqIHByb3BzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEZFX1NFVF9QUk9QRVJUWSBfSU9XKCdvJywgODIsIHN0cnVjdCBkdHZfcHJvcGVydGllcykKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvbmV0LmgKaW5kZXggNDgzMDhkNy4uZjA4NWRjMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvbmV0LmgKQEAgLTIxLDkgKzIxLDkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGR2Yl9uZXRfaWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwaWQ7Ci0gX191MTYgaWZfbnVtOwotIF9fdTggZmVlZHR5cGU7CisgIF9fdTE2IHBpZDsKKyAgX191MTYgaWZfbnVtOworICBfX3U4IGZlZWR0eXBlOwogI2RlZmluZSBEVkJfTkVUX0ZFRURUWVBFX01QRSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkJfTkVUX0ZFRURUWVBFX1VMRSAxCkBAIC0zMyw4ICszMyw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORVRfR0VUX0lGIF9JT1dSKCdvJywgNTQsIHN0cnVjdCBkdmJfbmV0X2lmKQogc3RydWN0IF9fZHZiX25ldF9pZl9vbGQgewotIF9fdTE2IHBpZDsKLSBfX3UxNiBpZl9udW07CisgIF9fdTE2IHBpZDsKKyAgX191MTYgaWZfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIF9fTkVUX0FERF9JRl9PTEQgX0lPV1IoJ28nLCA1Miwgc3RydWN0IF9fZHZiX25ldF9pZl9vbGQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9vc2QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL29zZC5oCmluZGV4IDA0ZDY3M2QuLjlhYWI5OGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL29zZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL29zZC5oCkBAIC0yMSw3OCArMjEsNzggQEAKICNpbmNsdWRlIDxsaW51eC9jb21waWxlci5oPgogdHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX0Nsb3NlPTEsCi0gT1NEX09wZW4sCi0gT1NEX1Nob3csCi0gT1NEX0hpZGUsCisgIE9TRF9DbG9zZSA9IDEsCisgIE9TRF9PcGVuLAorICBPU0RfU2hvdywKKyAgT1NEX0hpZGUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9DbGVhciwKLSBPU0RfRmlsbCwKLSBPU0RfU2V0Q29sb3IsCi0gT1NEX1NldFBhbGV0dGUsCisgIE9TRF9DbGVhciwKKyAgT1NEX0ZpbGwsCisgIE9TRF9TZXRDb2xvciwKKyAgT1NEX1NldFBhbGV0dGUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9TZXRUcmFucywKLSBPU0RfU2V0UGl4ZWwsCi0gT1NEX0dldFBpeGVsLAotIE9TRF9TZXRSb3csCisgIE9TRF9TZXRUcmFucywKKyAgT1NEX1NldFBpeGVsLAorICBPU0RfR2V0UGl4ZWwsCisgIE9TRF9TZXRSb3csCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9TZXRCbG9jaywKLSBPU0RfRmlsbFJvdywKLSBPU0RfRmlsbEJsb2NrLAotIE9TRF9MaW5lLAorICBPU0RfU2V0QmxvY2ssCisgIE9TRF9GaWxsUm93LAorICBPU0RfRmlsbEJsb2NrLAorICBPU0RfTGluZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX1F1ZXJ5LAotIE9TRF9UZXN0LAotIE9TRF9UZXh0LAotIE9TRF9TZXRXaW5kb3csCisgIE9TRF9RdWVyeSwKKyAgT1NEX1Rlc3QsCisgIE9TRF9UZXh0LAorICBPU0RfU2V0V2luZG93LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfTW92ZVdpbmRvdywKLSBPU0RfT3BlblJhdywKKyAgT1NEX01vdmVXaW5kb3csCisgIE9TRF9PcGVuUmF3LAogfSBPU0RfQ29tbWFuZDsKIHR5cGVkZWYgc3RydWN0IG9zZF9jbWRfcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9Db21tYW5kIGNtZDsKLSBpbnQgeDA7Ci0gaW50IHkwOwotIGludCB4MTsKKyAgT1NEX0NvbW1hbmQgY21kOworICBpbnQgeDA7CisgIGludCB5MDsKKyAgaW50IHgxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgeTE7Ci0gaW50IGNvbG9yOwotIHZvaWQgX191c2VyICpkYXRhOworICBpbnQgeTE7CisgIGludCBjb2xvcjsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOwogfSBvc2RfY21kX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBPU0RfQklUTUFQMSwKLSBPU0RfQklUTUFQMiwKLSBPU0RfQklUTUFQNCwKKyAgT1NEX0JJVE1BUDEsCisgIE9TRF9CSVRNQVAyLAorICBPU0RfQklUTUFQNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX0JJVE1BUDgsCi0gT1NEX0JJVE1BUDFIUiwKLSBPU0RfQklUTUFQMkhSLAotIE9TRF9CSVRNQVA0SFIsCisgIE9TRF9CSVRNQVA4LAorICBPU0RfQklUTUFQMUhSLAorICBPU0RfQklUTUFQMkhSLAorICBPU0RfQklUTUFQNEhSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfQklUTUFQOEhSLAotIE9TRF9ZQ1JDQjQyMiwKLSBPU0RfWUNSQ0I0NDQsCi0gT1NEX1lDUkNCNDQ0SFIsCisgIE9TRF9CSVRNQVA4SFIsCisgIE9TRF9ZQ1JDQjQyMiwKKyAgT1NEX1lDUkNCNDQ0LAorICBPU0RfWUNSQ0I0NDRIUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX1ZJREVPVFNJWkUsCi0gT1NEX1ZJREVPSFNJWkUsCi0gT1NEX1ZJREVPUVNJWkUsCi0gT1NEX1ZJREVPRFNJWkUsCisgIE9TRF9WSURFT1RTSVpFLAorICBPU0RfVklERU9IU0laRSwKKyAgT1NEX1ZJREVPUVNJWkUsCisgIE9TRF9WSURFT0RTSVpFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfVklERU9USFNJWkUsCi0gT1NEX1ZJREVPVFFTSVpFLAotIE9TRF9WSURFT1REU0laRSwKLSBPU0RfVklERU9OU0laRSwKKyAgT1NEX1ZJREVPVEhTSVpFLAorICBPU0RfVklERU9UUVNJWkUsCisgIE9TRF9WSURFT1REU0laRSwKKyAgT1NEX1ZJREVPTlNJWkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9DVVJTT1IKKyAgT1NEX0NVUlNPUgogfSBvc2RfcmF3X3dpbmRvd190OwogdHlwZWRlZiBzdHJ1Y3Qgb3NkX2NhcF9zIHsKLSBpbnQgY21kOworICBpbnQgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT1NEX0NBUF9NRU1TSVpFIDEKLSBsb25nIHZhbDsKKyAgbG9uZyB2YWw7CiB9IG9zZF9jYXBfdDsKICNkZWZpbmUgT1NEX1NFTkRfQ01EIF9JT1coJ28nLCAxNjAsIG9zZF9jbWRfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi92aWRlby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvdmlkZW8uaAppbmRleCA3ZjZkMTA5Li5jODkxMGJkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi92aWRlby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL3ZpZGVvLmgKQEAgLTIzLDQ2ICsyMyw0NiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDx0aW1lLmg+CiB0eXBlZGVmIGVudW0gewotIFZJREVPX0ZPUk1BVF80XzMsCi0gVklERU9fRk9STUFUXzE2XzksCisgIFZJREVPX0ZPUk1BVF80XzMsCisgIFZJREVPX0ZPUk1BVF8xNl85LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSURFT19GT1JNQVRfMjIxXzEKKyAgVklERU9fRk9STUFUXzIyMV8xCiB9IHZpZGVvX2Zvcm1hdF90OwogdHlwZWRlZiBlbnVtIHsKLSBWSURFT19TWVNURU1fUEFMLAorICBWSURFT19TWVNURU1fUEFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSURFT19TWVNURU1fTlRTQywKLSBWSURFT19TWVNURU1fUEFMTiwKLSBWSURFT19TWVNURU1fUEFMTmMsCi0gVklERU9fU1lTVEVNX1BBTE0sCisgIFZJREVPX1NZU1RFTV9OVFNDLAorICBWSURFT19TWVNURU1fUEFMTiwKKyAgVklERU9fU1lTVEVNX1BBTE5jLAorICBWSURFT19TWVNURU1fUEFMTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVklERU9fU1lTVEVNX05UU0M2MCwKLSBWSURFT19TWVNURU1fUEFMNjAsCi0gVklERU9fU1lTVEVNX1BBTE02MAorICBWSURFT19TWVNURU1fTlRTQzYwLAorICBWSURFT19TWVNURU1fUEFMNjAsCisgIFZJREVPX1NZU1RFTV9QQUxNNjAKIH0gdmlkZW9fc3lzdGVtX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBWSURFT19QQU5fU0NBTiwKLSBWSURFT19MRVRURVJfQk9YLAotIFZJREVPX0NFTlRFUl9DVVRfT1VUCisgIFZJREVPX1BBTl9TQ0FOLAorICBWSURFT19MRVRURVJfQk9YLAorICBWSURFT19DRU5URVJfQ1VUX09VVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gdmlkZW9fZGlzcGxheWZvcm1hdF90OwogdHlwZWRlZiBzdHJ1Y3QgewotIGludCB3OwotIGludCBoOworICBpbnQgdzsKKyAgaW50IGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZpZGVvX2Zvcm1hdF90IGFzcGVjdF9yYXRpbzsKKyAgdmlkZW9fZm9ybWF0X3QgYXNwZWN0X3JhdGlvOwogfSB2aWRlb19zaXplX3Q7CiB0eXBlZGVmIGVudW0gewotIFZJREVPX1NPVVJDRV9ERU1VWCwKKyAgVklERU9fU09VUkNFX0RFTVVYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSURFT19TT1VSQ0VfTUVNT1JZCisgIFZJREVPX1NPVVJDRV9NRU1PUlkKIH0gdmlkZW9fc3RyZWFtX3NvdXJjZV90OwogdHlwZWRlZiBlbnVtIHsKLSBWSURFT19TVE9QUEVELAorICBWSURFT19TVE9QUEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSURFT19QTEFZSU5HLAotIFZJREVPX0ZSRUVaRUQKKyAgVklERU9fUExBWUlORywKKyAgVklERU9fRlJFRVpFRAogfSB2aWRlb19wbGF5X3N0YXRlX3Q7CiAjZGVmaW5lIFZJREVPX0NNRF9QTEFZICgwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTc3LDIzICs3NywyMyBAQAogI2RlZmluZSBWSURFT19QTEFZX0ZNVF9HT1AgKDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZpZGVvX2NvbW1hbmQgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBmbGFnczsKLSB1bmlvbiB7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgZmxhZ3M7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U2NCBwdHM7Ci0gfSBzdG9wOwotIHN0cnVjdCB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHB0czsKKyAgICB9IHN0b3A7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3BlZWQ7Ci0gX191MzIgZm9ybWF0OwotIH0gcGxheTsKLSBzdHJ1Y3QgeworICAgICAgX19zMzIgc3BlZWQ7CisgICAgICBfX3UzMiBmb3JtYXQ7CisgICAgfSBwbGF5OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRhdGFbMTZdOwotIH0gcmF3OwotIH07CisgICAgICBfX3UzMiBkYXRhWzE2XTsKKyAgICB9IHJhdzsKKyAgfTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19WU1lOQ19GSUVMRF9VTktOT1dOICgwKQpAQCAtMTAyLDEwNyArMTAyLDEwNSBAQAogI2RlZmluZSBWSURFT19WU1lOQ19GSUVMRF9QUk9HUkVTU0lWRSAoMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmlkZW9fZXZlbnQgewotIF9fczMyIHR5cGU7CisgIF9fczMyIHR5cGU7CiAjZGVmaW5lIFZJREVPX0VWRU5UX1NJWkVfQ0hBTkdFRCAxCiAjZGVmaW5lIFZJREVPX0VWRU5UX0ZSQU1FX1JBVEVfQ0hBTkdFRCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19FVkVOVF9ERUNPREVSX1NUT1BQRUQgMwogI2RlZmluZSBWSURFT19FVkVOVF9WU1lOQyA0Ci0gX19rZXJuZWxfdGltZV90IHRpbWVzdGFtcDsKLSB1bmlvbiB7CisgIF9fa2VybmVsX3RpbWVfdCB0aW1lc3RhbXA7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdmlkZW9fc2l6ZV90IHNpemU7Ci0gdW5zaWduZWQgaW50IGZyYW1lX3JhdGU7Ci0gdW5zaWduZWQgY2hhciB2c3luY19maWVsZDsKLSB9IHU7CisgICAgdmlkZW9fc2l6ZV90IHNpemU7CisgICAgdW5zaWduZWQgaW50IGZyYW1lX3JhdGU7CisgICAgdW5zaWduZWQgY2hhciB2c3luY19maWVsZDsKKyAgfSB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdmlkZW9fc3RhdHVzIHsKLSBpbnQgdmlkZW9fYmxhbms7Ci0gdmlkZW9fcGxheV9zdGF0ZV90IHBsYXlfc3RhdGU7CisgIGludCB2aWRlb19ibGFuazsKKyAgdmlkZW9fcGxheV9zdGF0ZV90IHBsYXlfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZpZGVvX3N0cmVhbV9zb3VyY2VfdCBzdHJlYW1fc291cmNlOwotIHZpZGVvX2Zvcm1hdF90IHZpZGVvX2Zvcm1hdDsKLSB2aWRlb19kaXNwbGF5Zm9ybWF0X3QgZGlzcGxheV9mb3JtYXQ7CisgIHZpZGVvX3N0cmVhbV9zb3VyY2VfdCBzdHJlYW1fc291cmNlOworICB2aWRlb19mb3JtYXRfdCB2aWRlb19mb3JtYXQ7CisgIHZpZGVvX2Rpc3BsYXlmb3JtYXRfdCBkaXNwbGF5X2Zvcm1hdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZpZGVvX3N0aWxsX3BpY3R1cmUgewotIGNoYXIgX191c2VyICppRnJhbWU7Ci0gX19zMzIgc2l6ZTsKKyAgY2hhciBfX3VzZXIgKiBpRnJhbWU7CisgIF9fczMyIHNpemU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXR5cGVkZWYKLXN0cnVjdCB2aWRlb19oaWdobGlnaHQgewotIGludCBhY3RpdmU7Ci0gX191OCBjb250cmFzdDE7Cit0eXBlZGVmIHN0cnVjdCB2aWRlb19oaWdobGlnaHQgeworICBpbnQgYWN0aXZlOworICBfX3U4IGNvbnRyYXN0MTsKKyAgX191OCBjb250cmFzdDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY29udHJhc3QyOwotIF9fdTggY29sb3IxOwotIF9fdTggY29sb3IyOwotIF9fdTMyIHlwb3M7CisgIF9fdTggY29sb3IxOworICBfX3U4IGNvbG9yMjsKKyAgX191MzIgeXBvczsKKyAgX191MzIgeHBvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgeHBvczsKIH0gdmlkZW9faGlnaGxpZ2h0X3Q7CiB0eXBlZGVmIHN0cnVjdCB2aWRlb19zcHUgewotIGludCBhY3RpdmU7CisgIGludCBhY3RpdmU7CisgIGludCBzdHJlYW1faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdHJlYW1faWQ7CiB9IHZpZGVvX3NwdV90OwogdHlwZWRlZiBzdHJ1Y3QgdmlkZW9fc3B1X3BhbGV0dGUgewotIGludCBsZW5ndGg7CisgIGludCBsZW5ndGg7CisgIF9fdTggX191c2VyICogcGFsZXR0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfX3VzZXIgKnBhbGV0dGU7CiB9IHZpZGVvX3NwdV9wYWxldHRlX3Q7CiB0eXBlZGVmIHN0cnVjdCB2aWRlb19uYXZpX3BhY2sgewotIGludCBsZW5ndGg7CisgIGludCBsZW5ndGg7CisgIF9fdTggZGF0YVsxMDI0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhWzEwMjRdOwogfSB2aWRlb19uYXZpX3BhY2tfdDsKIHR5cGVkZWYgX191MTYgdmlkZW9fYXR0cmlidXRlc190OwogI2RlZmluZSBWSURFT19DQVBfTVBFRzEgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fQ0FQX01QRUcyIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0NBUF9TWVMgNAogI2RlZmluZSBWSURFT19DQVBfUFJPRyA4CiAjZGVmaW5lIFZJREVPX0NBUF9TUFUgMTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0NBUF9OQVZJIDMyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19DQVBfQ1NTIDY0CiAjZGVmaW5lIFZJREVPX1NUT1AgX0lPKCdvJywgMjEpCiAjZGVmaW5lIFZJREVPX1BMQVkgX0lPKCdvJywgMjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19GUkVFWkUgX0lPKCdvJywgMjMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19DT05USU5VRSBfSU8oJ28nLCAyNCkKICNkZWZpbmUgVklERU9fU0VMRUNUX1NPVVJDRSBfSU8oJ28nLCAyNSkKICNkZWZpbmUgVklERU9fU0VUX0JMQU5LIF9JTygnbycsIDI2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fR0VUX1NUQVRVUyBfSU9SKCdvJywgMjcsIHN0cnVjdCB2aWRlb19zdGF0dXMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19HRVRfRVZFTlQgX0lPUignbycsIDI4LCBzdHJ1Y3QgdmlkZW9fZXZlbnQpCiAjZGVmaW5lIFZJREVPX1NFVF9ESVNQTEFZX0ZPUk1BVCBfSU8oJ28nLCAyOSkKICNkZWZpbmUgVklERU9fU1RJTExQSUNUVVJFIF9JT1coJ28nLCAzMCwgc3RydWN0IHZpZGVvX3N0aWxsX3BpY3R1cmUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19GQVNUX0ZPUldBUkQgX0lPKCdvJywgMzEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19TTE9XTU9USU9OIF9JTygnbycsIDMyKQogI2RlZmluZSBWSURFT19HRVRfQ0FQQUJJTElUSUVTIF9JT1IoJ28nLCAzMywgdW5zaWduZWQgaW50KQogI2RlZmluZSBWSURFT19DTEVBUl9CVUZGRVIgX0lPKCdvJywgMzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19TRVRfSUQgX0lPKCdvJywgMzUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19TRVRfU1RSRUFNVFlQRSBfSU8oJ28nLCAzNikKICNkZWZpbmUgVklERU9fU0VUX0ZPUk1BVCBfSU8oJ28nLCAzNykKICNkZWZpbmUgVklERU9fU0VUX1NZU1RFTSBfSU8oJ28nLCAzOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NFVF9ISUdITElHSFQgX0lPVygnbycsIDM5LCB2aWRlb19oaWdobGlnaHRfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NFVF9TUFUgX0lPVygnbycsIDUwLCB2aWRlb19zcHVfdCkKICNkZWZpbmUgVklERU9fU0VUX1NQVV9QQUxFVFRFIF9JT1coJ28nLCA1MSwgdmlkZW9fc3B1X3BhbGV0dGVfdCkKICNkZWZpbmUgVklERU9fR0VUX05BVkkgX0lPUignbycsIDUyLCB2aWRlb19uYXZpX3BhY2tfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NFVF9BVFRSSUJVVEVTIF9JTygnbycsIDUzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fR0VUX1NJWkUgX0lPUignbycsIDU1LCB2aWRlb19zaXplX3QpCiAjZGVmaW5lIFZJREVPX0dFVF9GUkFNRV9SQVRFIF9JT1IoJ28nLCA1NiwgdW5zaWduZWQgaW50KQogI2RlZmluZSBWSURFT19HRVRfUFRTIF9JT1IoJ28nLCA1NywgX191NjQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19HRVRfRlJBTUVfQ09VTlQgX0lPUignbycsIDU4LCBfX3U2NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0NPTU1BTkQgX0lPV1IoJ28nLCA1OSwgc3RydWN0IHZpZGVvX2NvbW1hbmQpCiAjZGVmaW5lIFZJREVPX1RSWV9DT01NQU5EIF9JT1dSKCdvJywgNjAsIHN0cnVjdCB2aWRlb19jb21tYW5kKQogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZGQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWRkLmgKaW5kZXggY2RlMWRlOS4uMTM4ZGUyYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZGQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VkZC5oCkBAIC01NiwxNDUgKzU2LDE0NSBAQAogI2RlZmluZSBFRERfSU5GT19VU0VfSU5UMTNfRk41MCAoMSA8PCA3KQogc3RydWN0IGVkZF9kZXZpY2VfcGFyYW1zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbGVuZ3RoOwotIF9fdTE2IGluZm9fZmxhZ3M7Ci0gX191MzIgbnVtX2RlZmF1bHRfY3lsaW5kZXJzOwotIF9fdTMyIG51bV9kZWZhdWx0X2hlYWRzOworICBfX3UxNiBsZW5ndGg7CisgIF9fdTE2IGluZm9fZmxhZ3M7CisgIF9fdTMyIG51bV9kZWZhdWx0X2N5bGluZGVyczsKKyAgX191MzIgbnVtX2RlZmF1bHRfaGVhZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNlY3RvcnNfcGVyX3RyYWNrOwotIF9fdTY0IG51bWJlcl9vZl9zZWN0b3JzOwotIF9fdTE2IGJ5dGVzX3Blcl9zZWN0b3I7Ci0gX191MzIgZHB0ZV9wdHI7CisgIF9fdTMyIHNlY3RvcnNfcGVyX3RyYWNrOworICBfX3U2NCBudW1iZXJfb2Zfc2VjdG9yczsKKyAgX191MTYgYnl0ZXNfcGVyX3NlY3RvcjsKKyAgX191MzIgZHB0ZV9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGtleTsKLSBfX3U4IGRldmljZV9wYXRoX2luZm9fbGVuZ3RoOwotIF9fdTggcmVzZXJ2ZWQyOwotIF9fdTE2IHJlc2VydmVkMzsKKyAgX191MTYga2V5OworICBfX3U4IGRldmljZV9wYXRoX2luZm9fbGVuZ3RoOworICBfX3U4IHJlc2VydmVkMjsKKyAgX191MTYgcmVzZXJ2ZWQzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhvc3RfYnVzX3R5cGVbNF07Ci0gX191OCBpbnRlcmZhY2VfdHlwZVs4XTsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKKyAgX191OCBob3N0X2J1c190eXBlWzRdOworICBfX3U4IGludGVyZmFjZV90eXBlWzhdOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYmFzZV9hZGRyZXNzOwotIF9fdTE2IHJlc2VydmVkMTsKLSBfX3UzMiByZXNlcnZlZDI7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgaXNhOworICAgICAgX191MTYgYmFzZV9hZGRyZXNzOworICAgICAgX191MTYgcmVzZXJ2ZWQxOworICAgICAgX191MzIgcmVzZXJ2ZWQyOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgaXNhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTggYnVzOwotIF9fdTggc2xvdDsKLSBfX3U4IGZ1bmN0aW9uOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGJ1czsKKyAgICAgIF9fdTggc2xvdDsKKyAgICAgIF9fdTggZnVuY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2hhbm5lbDsKLSBfX3UzMiByZXNlcnZlZDsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBwY2k7Ci0gc3RydWN0IHsKKyAgICAgIF9fdTggY2hhbm5lbDsKKyAgICAgIF9fdTMyIHJlc2VydmVkOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgcGNpOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGlibmQ7Ci0gc3RydWN0IHsKLSBfX3U2NCByZXNlcnZlZDsKKyAgICAgIF9fdTY0IHJlc2VydmVkOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgaWJuZDsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHhwcnM7Ci0gc3RydWN0IHsKLSBfX3U2NCByZXNlcnZlZDsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBodHB0OworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgeHByczsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBodHB0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHVua25vd247Ci0gfSBpbnRlcmZhY2VfcGF0aDsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB1bmtub3duOworICB9IGludGVyZmFjZV9wYXRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX3U4IGRldmljZTsKLSBfX3U4IHJlc2VydmVkMTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGRldmljZTsKKyAgICAgIF9fdTggcmVzZXJ2ZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByZXNlcnZlZDI7Ci0gX191MzIgcmVzZXJ2ZWQzOwotIF9fdTY0IHJlc2VydmVkNDsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBhdGE7CisgICAgICBfX3UxNiByZXNlcnZlZDI7CisgICAgICBfX3UzMiByZXNlcnZlZDM7CisgICAgICBfX3U2NCByZXNlcnZlZDQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBkZXZpY2U7Ci0gX191OCBsdW47Ci0gX191OCByZXNlcnZlZDE7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggZGV2aWNlOworICAgICAgX191OCBsdW47CisgICAgICBfX3U4IHJlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDI7Ci0gX191MzIgcmVzZXJ2ZWQzOwotIF9fdTY0IHJlc2VydmVkNDsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBhdGFwaTsKKyAgICAgIF9fdTggcmVzZXJ2ZWQyOworICAgICAgX191MzIgcmVzZXJ2ZWQzOworICAgICAgX191NjQgcmVzZXJ2ZWQ0OworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgYXRhcGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191MTYgaWQ7Ci0gX191NjQgbHVuOwotIF9fdTE2IHJlc2VydmVkMTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgaWQ7CisgICAgICBfX3U2NCBsdW47CisgICAgICBfX3UxNiByZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkMjsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBzY3NpOwotIHN0cnVjdCB7Ci0gX191NjQgc2VyaWFsX251bWJlcjsKKyAgICAgIF9fdTMyIHJlc2VydmVkMjsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHNjc2k7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHNlcmlhbF9udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHVzYjsKLSBzdHJ1Y3QgewotIF9fdTY0IGV1aTsKKyAgICAgIF9fdTY0IHJlc2VydmVkOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgdXNiOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBldWk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGkxMzk0OwotIHN0cnVjdCB7Ci0gX191NjQgd3dpZDsKKyAgICAgIF9fdTY0IHJlc2VydmVkOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgaTEzOTQ7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHd3aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGx1bjsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBmaWJyZTsKLSBzdHJ1Y3QgewotIF9fdTY0IGlkZW50aXR5X3RhZzsKKyAgICAgIF9fdTY0IGx1bjsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGZpYnJlOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBpZGVudGl0eV90YWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGkybzsKLSBzdHJ1Y3QgewotIF9fdTMyIGFycmF5X251bWJlcjsKKyAgICAgIF9fdTY0IHJlc2VydmVkOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgaTJvOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBhcnJheV9udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkMTsKLSBfX3U2NCByZXNlcnZlZDI7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgcmFpZDsKLSBzdHJ1Y3QgeworICAgICAgX191MzIgcmVzZXJ2ZWQxOworICAgICAgX191NjQgcmVzZXJ2ZWQyOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgcmFpZDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRldmljZTsKLSBfX3U4IHJlc2VydmVkMTsKLSBfX3UxNiByZXNlcnZlZDI7Ci0gX191MzIgcmVzZXJ2ZWQzOworICAgICAgX191OCBkZXZpY2U7CisgICAgICBfX3U4IHJlc2VydmVkMTsKKyAgICAgIF9fdTE2IHJlc2VydmVkMjsKKyAgICAgIF9fdTMyIHJlc2VydmVkMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQ0OwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHNhdGE7Ci0gc3RydWN0IHsKLSBfX3U2NCByZXNlcnZlZDE7CisgICAgICBfX3U2NCByZXNlcnZlZDQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBzYXRhOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkMjsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSB1bmtub3duOwotIH0gZGV2aWNlX3BhdGg7Ci0gX191OCByZXNlcnZlZDQ7CisgICAgICBfX3U2NCByZXNlcnZlZDI7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB1bmtub3duOworICB9IGRldmljZV9wYXRoOworICBfX3U4IHJlc2VydmVkNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjaGVja3N1bTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGNoZWNrc3VtOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBlZGRfaW5mbyB7Ci0gX191OCBkZXZpY2U7CisgIF9fdTggZGV2aWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZlcnNpb247Ci0gX191MTYgaW50ZXJmYWNlX3N1cHBvcnQ7Ci0gX191MTYgbGVnYWN5X21heF9jeWxpbmRlcjsKLSBfX3U4IGxlZ2FjeV9tYXhfaGVhZDsKKyAgX191OCB2ZXJzaW9uOworICBfX3UxNiBpbnRlcmZhY2Vfc3VwcG9ydDsKKyAgX191MTYgbGVnYWN5X21heF9jeWxpbmRlcjsKKyAgX191OCBsZWdhY3lfbWF4X2hlYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGVnYWN5X3NlY3RvcnNfcGVyX3RyYWNrOwotIHN0cnVjdCBlZGRfZGV2aWNlX3BhcmFtcyBwYXJhbXM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBsZWdhY3lfc2VjdG9yc19wZXJfdHJhY2s7CisgIHN0cnVjdCBlZGRfZGV2aWNlX3BhcmFtcyBwYXJhbXM7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGVkZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtYnJfc2lnbmF0dXJlW0VERF9NQlJfU0lHX01BWF07Ci0gc3RydWN0IGVkZF9pbmZvIGVkZF9pbmZvW0VERE1BWE5SXTsKLSB1bnNpZ25lZCBjaGFyIG1icl9zaWduYXR1cmVfbnI7Ci0gdW5zaWduZWQgY2hhciBlZGRfaW5mb19ucjsKKyAgdW5zaWduZWQgaW50IG1icl9zaWduYXR1cmVbRUREX01CUl9TSUdfTUFYXTsKKyAgc3RydWN0IGVkZF9pbmZvIGVkZF9pbmZvW0VERE1BWE5SXTsKKyAgdW5zaWduZWQgY2hhciBtYnJfc2lnbmF0dXJlX25yOworICB1bnNpZ25lZCBjaGFyIGVkZF9pbmZvX25yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWZzX2ZzX3NiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Vmc19mc19zYi5oCmluZGV4IDFlMjU3MTAuLjg3ZmQ0MTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWZzX2ZzX3NiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZnNfZnNfc2IuaApAQCAtMjgsNDQgKzI4LDQ0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFRlNfUk9PVElOT0RFIDIKIHN0cnVjdCBlZnNfc3VwZXIgewotIF9fYmUzMiBmc19zaXplOwotIF9fYmUzMiBmc19maXJzdGNnOworICBfX2JlMzIgZnNfc2l6ZTsKKyAgX19iZTMyIGZzX2ZpcnN0Y2c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBmc19jZ2ZzaXplOwotIF9fYmUxNiBmc19jZ2lzaXplOwotIF9fYmUxNiBmc19zZWN0b3JzOwotIF9fYmUxNiBmc19oZWFkczsKKyAgX19iZTMyIGZzX2NnZnNpemU7CisgIF9fYmUxNiBmc19jZ2lzaXplOworICBfX2JlMTYgZnNfc2VjdG9yczsKKyAgX19iZTE2IGZzX2hlYWRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZnNfbmNnOwotIF9fYmUxNiBmc19kaXJ0eTsKLSBfX2JlMzIgZnNfdGltZTsKLSBfX2JlMzIgZnNfbWFnaWM7CisgIF9fYmUxNiBmc19uY2c7CisgIF9fYmUxNiBmc19kaXJ0eTsKKyAgX19iZTMyIGZzX3RpbWU7CisgIF9fYmUzMiBmc19tYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmc19mbmFtZVs2XTsKLSBjaGFyIGZzX2ZwYWNrWzZdOwotIF9fYmUzMiBmc19ibXNpemU7Ci0gX19iZTMyIGZzX3RmcmVlOworICBjaGFyIGZzX2ZuYW1lWzZdOworICBjaGFyIGZzX2ZwYWNrWzZdOworICBfX2JlMzIgZnNfYm1zaXplOworICBfX2JlMzIgZnNfdGZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBmc190aW5vZGU7Ci0gX19iZTMyIGZzX2JtYmxvY2s7Ci0gX19iZTMyIGZzX3JlcGxzYjsKLSBfX2JlMzIgZnNfbGFzdGlhbGxvYzsKKyAgX19iZTMyIGZzX3Rpbm9kZTsKKyAgX19iZTMyIGZzX2JtYmxvY2s7CisgIF9fYmUzMiBmc19yZXBsc2I7CisgIF9fYmUzMiBmc19sYXN0aWFsbG9jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZzX3NwYXJlWzIwXTsKLSBfX2JlMzIgZnNfY2hlY2tzdW07CisgIGNoYXIgZnNfc3BhcmVbMjBdOworICBfX2JlMzIgZnNfY2hlY2tzdW07CiB9Owogc3RydWN0IGVmc19zYl9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnNfbWFnaWM7Ci0gX191MzIgZnNfc3RhcnQ7Ci0gX191MzIgZmlyc3RfYmxvY2s7Ci0gX191MzIgdG90YWxfYmxvY2tzOworICBfX3UzMiBmc19tYWdpYzsKKyAgX191MzIgZnNfc3RhcnQ7CisgIF9fdTMyIGZpcnN0X2Jsb2NrOworICBfX3UzMiB0b3RhbF9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGdyb3VwX3NpemU7Ci0gX191MzIgZGF0YV9mcmVlOwotIF9fdTMyIGlub2RlX2ZyZWU7Ci0gX191MTYgaW5vZGVfYmxvY2tzOworICBfX3UzMiBncm91cF9zaXplOworICBfX3UzMiBkYXRhX2ZyZWU7CisgIF9fdTMyIGlub2RlX2ZyZWU7CisgIF9fdTE2IGlub2RlX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdG90YWxfZ3JvdXBzOworICBfX3UxNiB0b3RhbF9ncm91cHM7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1lbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYtZW0uaAppbmRleCAxZTg2YzVjLi44ZmU5MzlhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1lbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWVtLmgKQEAgLTUxLDE2ICs1MSwxOCBAQAogI2RlZmluZSBFTV9NMzJSIDg4CiAjZGVmaW5lIEVNX01OMTAzMDAgODkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVNX09QRU5SSVNDIDkyCiAjZGVmaW5lIEVNX0JMQUNLRklOIDEwNgogI2RlZmluZSBFTV9USV9DNjAwMCAxNDAKICNkZWZpbmUgRU1fQUFSQ0g2NCAxODMKLSNkZWZpbmUgRU1fRlJWIDB4NTQ0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRU1fRlJWIDB4NTQ0MQogI2RlZmluZSBFTV9BVlIzMiAweDE4YWQKICNkZWZpbmUgRU1fQUxQSEEgMHg5MDI2CiAjZGVmaW5lIEVNX0NZR05VU19WODUwIDB4OTA4MAotI2RlZmluZSBFTV9DWUdOVVNfTTMyUiAweDkwNDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVNX0NZR05VU19NMzJSIDB4OTA0MQogI2RlZmluZSBFTV9TMzkwX09MRCAweEEzOTAKICNkZWZpbmUgRU1fQ1lHTlVTX01OMTAzMDAgMHhiZWVmCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1mZHBpYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYtZmRwaWMuaAppbmRleCA0NDQxODkwLi40NWE1NmU0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1mZHBpYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWZkcGljLmgKQEAgLTIyLDE2ICsyMiwxNiBAQAogI2RlZmluZSBQVF9HTlVfU1RBQ0sgKFBUX0xPT1MgKyAweDQ3NGU1NTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVsZjMyX2ZkcGljX2xvYWRzZWcgewotIEVsZjMyX0FkZHIgYWRkcjsKLSBFbGYzMl9BZGRyIHBfdmFkZHI7Ci0gRWxmMzJfV29yZCBwX21lbXN6OworICBFbGYzMl9BZGRyIGFkZHI7CisgIEVsZjMyX0FkZHIgcF92YWRkcjsKKyAgRWxmMzJfV29yZCBwX21lbXN6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZWxmMzJfZmRwaWNfbG9hZG1hcCB7Ci0gRWxmMzJfSGFsZiB2ZXJzaW9uOwotIEVsZjMyX0hhbGYgbnNlZ3M7CisgIEVsZjMyX0hhbGYgdmVyc2lvbjsKKyAgRWxmMzJfSGFsZiBuc2VnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGVsZjMyX2ZkcGljX2xvYWRzZWcgc2Vnc1tdOworICBzdHJ1Y3QgZWxmMzJfZmRwaWNfbG9hZHNlZyBzZWdzW107CiB9OwogI2RlZmluZSBFTEYzMl9GRFBJQ19MT0FETUFQX1ZFUlNJT04gMHgwMDAwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi5oCmluZGV4IDBlMGQ3MjUuLjRlNDI3NTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYuaApAQCAtMTM4LDIyICsxMzgsMjIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVMRjY0X1NUX0JJTkQoeCkgRUxGX1NUX0JJTkQoeCkKICNkZWZpbmUgRUxGNjRfU1RfVFlQRSh4KSBFTEZfU1RfVFlQRSh4KQotdHlwZWRlZiBzdHJ1Y3QgZHluYW1pY3sKLSBFbGYzMl9Td29yZCBkX3RhZzsKK3R5cGVkZWYgc3RydWN0IGR5bmFtaWMgeworICBFbGYzMl9Td29yZCBkX3RhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb257Ci0gRWxmMzJfU3dvcmQgZF92YWw7Ci0gRWxmMzJfQWRkciBkX3B0cjsKLSB9IGRfdW47CisgIHVuaW9uIHsKKyAgICBFbGYzMl9Td29yZCBkX3ZhbDsKKyAgICBFbGYzMl9BZGRyIGRfcHRyOworICB9IGRfdW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBFbGYzMl9EeW47CiB0eXBlZGVmIHN0cnVjdCB7Ci0gRWxmNjRfU3h3b3JkIGRfdGFnOwotIHVuaW9uIHsKKyAgRWxmNjRfU3h3b3JkIGRfdGFnOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X1h3b3JkIGRfdmFsOwotIEVsZjY0X0FkZHIgZF9wdHI7Ci0gfSBkX3VuOworICAgIEVsZjY0X1h3b3JkIGRfdmFsOworICAgIEVsZjY0X0FkZHIgZF9wdHI7CisgIH0gZF91bjsKIH0gRWxmNjRfRHluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUxGMzJfUl9TWU0oeCkgKCh4KSA+PiA4KQpAQCAtMTYyLDExNiArMTYyLDExNiBAQAogI2RlZmluZSBFTEY2NF9SX1RZUEUoaSkgKChpKSAmIDB4ZmZmZmZmZmYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZWxmMzJfcmVsIHsKLSBFbGYzMl9BZGRyIHJfb2Zmc2V0OwotIEVsZjMyX1dvcmQgcl9pbmZvOworICBFbGYzMl9BZGRyIHJfb2Zmc2V0OworICBFbGYzMl9Xb3JkIHJfaW5mbzsKIH0gRWxmMzJfUmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGVsZjY0X3JlbCB7Ci0gRWxmNjRfQWRkciByX29mZnNldDsKLSBFbGY2NF9Yd29yZCByX2luZm87CisgIEVsZjY0X0FkZHIgcl9vZmZzZXQ7CisgIEVsZjY0X1h3b3JkIHJfaW5mbzsKIH0gRWxmNjRfUmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXR5cGVkZWYgc3RydWN0IGVsZjMyX3JlbGF7Ci0gRWxmMzJfQWRkciByX29mZnNldDsKLSBFbGYzMl9Xb3JkIHJfaW5mbzsKLSBFbGYzMl9Td29yZCByX2FkZGVuZDsKK3R5cGVkZWYgc3RydWN0IGVsZjMyX3JlbGEgeworICBFbGYzMl9BZGRyIHJfb2Zmc2V0OworICBFbGYzMl9Xb3JkIHJfaW5mbzsKKyAgRWxmMzJfU3dvcmQgcl9hZGRlbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBFbGYzMl9SZWxhOwogdHlwZWRlZiBzdHJ1Y3QgZWxmNjRfcmVsYSB7Ci0gRWxmNjRfQWRkciByX29mZnNldDsKLSBFbGY2NF9Yd29yZCByX2luZm87CisgIEVsZjY0X0FkZHIgcl9vZmZzZXQ7CisgIEVsZjY0X1h3b3JkIHJfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfU3h3b3JkIHJfYWRkZW5kOworICBFbGY2NF9TeHdvcmQgcl9hZGRlbmQ7CiB9IEVsZjY0X1JlbGE7Ci10eXBlZGVmIHN0cnVjdCBlbGYzMl9zeW17Ci0gRWxmMzJfV29yZCBzdF9uYW1lOwordHlwZWRlZiBzdHJ1Y3QgZWxmMzJfc3ltIHsKKyAgRWxmMzJfV29yZCBzdF9uYW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9BZGRyIHN0X3ZhbHVlOwotIEVsZjMyX1dvcmQgc3Rfc2l6ZTsKLSB1bnNpZ25lZCBjaGFyIHN0X2luZm87Ci0gdW5zaWduZWQgY2hhciBzdF9vdGhlcjsKKyAgRWxmMzJfQWRkciBzdF92YWx1ZTsKKyAgRWxmMzJfV29yZCBzdF9zaXplOworICB1bnNpZ25lZCBjaGFyIHN0X2luZm87CisgIHVuc2lnbmVkIGNoYXIgc3Rfb3RoZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX0hhbGYgc3Rfc2huZHg7CisgIEVsZjMyX0hhbGYgc3Rfc2huZHg7CiB9IEVsZjMyX1N5bTsKIHR5cGVkZWYgc3RydWN0IGVsZjY0X3N5bSB7Ci0gRWxmNjRfV29yZCBzdF9uYW1lOworICBFbGY2NF9Xb3JkIHN0X25hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3RfaW5mbzsKLSB1bnNpZ25lZCBjaGFyIHN0X290aGVyOwotIEVsZjY0X0hhbGYgc3Rfc2huZHg7Ci0gRWxmNjRfQWRkciBzdF92YWx1ZTsKKyAgdW5zaWduZWQgY2hhciBzdF9pbmZvOworICB1bnNpZ25lZCBjaGFyIHN0X290aGVyOworICBFbGY2NF9IYWxmIHN0X3NobmR4OworICBFbGY2NF9BZGRyIHN0X3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Yd29yZCBzdF9zaXplOworICBFbGY2NF9Yd29yZCBzdF9zaXplOwogfSBFbGY2NF9TeW07CiAjZGVmaW5lIEVJX05JREVOVCAxNgotdHlwZWRlZiBzdHJ1Y3QgZWxmMzJfaGRyewordHlwZWRlZiBzdHJ1Y3QgZWxmMzJfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBlX2lkZW50W0VJX05JREVOVF07Ci0gRWxmMzJfSGFsZiBlX3R5cGU7Ci0gRWxmMzJfSGFsZiBlX21hY2hpbmU7Ci0gRWxmMzJfV29yZCBlX3ZlcnNpb247CisgIHVuc2lnbmVkIGNoYXIgZV9pZGVudFtFSV9OSURFTlRdOworICBFbGYzMl9IYWxmIGVfdHlwZTsKKyAgRWxmMzJfSGFsZiBlX21hY2hpbmU7CisgIEVsZjMyX1dvcmQgZV92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9BZGRyIGVfZW50cnk7Ci0gRWxmMzJfT2ZmIGVfcGhvZmY7Ci0gRWxmMzJfT2ZmIGVfc2hvZmY7Ci0gRWxmMzJfV29yZCBlX2ZsYWdzOworICBFbGYzMl9BZGRyIGVfZW50cnk7CisgIEVsZjMyX09mZiBlX3Bob2ZmOworICBFbGYzMl9PZmYgZV9zaG9mZjsKKyAgRWxmMzJfV29yZCBlX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9IYWxmIGVfZWhzaXplOwotIEVsZjMyX0hhbGYgZV9waGVudHNpemU7Ci0gRWxmMzJfSGFsZiBlX3BobnVtOwotIEVsZjMyX0hhbGYgZV9zaGVudHNpemU7CisgIEVsZjMyX0hhbGYgZV9laHNpemU7CisgIEVsZjMyX0hhbGYgZV9waGVudHNpemU7CisgIEVsZjMyX0hhbGYgZV9waG51bTsKKyAgRWxmMzJfSGFsZiBlX3NoZW50c2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmMzJfSGFsZiBlX3NobnVtOwotIEVsZjMyX0hhbGYgZV9zaHN0cm5keDsKKyAgRWxmMzJfSGFsZiBlX3NobnVtOworICBFbGYzMl9IYWxmIGVfc2hzdHJuZHg7CiB9IEVsZjMyX0VoZHI7CiB0eXBlZGVmIHN0cnVjdCBlbGY2NF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGVfaWRlbnRbRUlfTklERU5UXTsKLSBFbGY2NF9IYWxmIGVfdHlwZTsKLSBFbGY2NF9IYWxmIGVfbWFjaGluZTsKLSBFbGY2NF9Xb3JkIGVfdmVyc2lvbjsKKyAgdW5zaWduZWQgY2hhciBlX2lkZW50W0VJX05JREVOVF07CisgIEVsZjY0X0hhbGYgZV90eXBlOworICBFbGY2NF9IYWxmIGVfbWFjaGluZTsKKyAgRWxmNjRfV29yZCBlX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X0FkZHIgZV9lbnRyeTsKLSBFbGY2NF9PZmYgZV9waG9mZjsKLSBFbGY2NF9PZmYgZV9zaG9mZjsKLSBFbGY2NF9Xb3JkIGVfZmxhZ3M7CisgIEVsZjY0X0FkZHIgZV9lbnRyeTsKKyAgRWxmNjRfT2ZmIGVfcGhvZmY7CisgIEVsZjY0X09mZiBlX3Nob2ZmOworICBFbGY2NF9Xb3JkIGVfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X0hhbGYgZV9laHNpemU7Ci0gRWxmNjRfSGFsZiBlX3BoZW50c2l6ZTsKLSBFbGY2NF9IYWxmIGVfcGhudW07Ci0gRWxmNjRfSGFsZiBlX3NoZW50c2l6ZTsKKyAgRWxmNjRfSGFsZiBlX2Voc2l6ZTsKKyAgRWxmNjRfSGFsZiBlX3BoZW50c2l6ZTsKKyAgRWxmNjRfSGFsZiBlX3BobnVtOworICBFbGY2NF9IYWxmIGVfc2hlbnRzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9IYWxmIGVfc2hudW07Ci0gRWxmNjRfSGFsZiBlX3Noc3RybmR4OworICBFbGY2NF9IYWxmIGVfc2hudW07CisgIEVsZjY0X0hhbGYgZV9zaHN0cm5keDsKIH0gRWxmNjRfRWhkcjsKICNkZWZpbmUgUEZfUiAweDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBGX1cgMHgyCiAjZGVmaW5lIFBGX1ggMHgxCi10eXBlZGVmIHN0cnVjdCBlbGYzMl9waGRyewotIEVsZjMyX1dvcmQgcF90eXBlOwordHlwZWRlZiBzdHJ1Y3QgZWxmMzJfcGhkciB7CisgIEVsZjMyX1dvcmQgcF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9PZmYgcF9vZmZzZXQ7Ci0gRWxmMzJfQWRkciBwX3ZhZGRyOwotIEVsZjMyX0FkZHIgcF9wYWRkcjsKLSBFbGYzMl9Xb3JkIHBfZmlsZXN6OworICBFbGYzMl9PZmYgcF9vZmZzZXQ7CisgIEVsZjMyX0FkZHIgcF92YWRkcjsKKyAgRWxmMzJfQWRkciBwX3BhZGRyOworICBFbGYzMl9Xb3JkIHBfZmlsZXN6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9Xb3JkIHBfbWVtc3o7Ci0gRWxmMzJfV29yZCBwX2ZsYWdzOwotIEVsZjMyX1dvcmQgcF9hbGlnbjsKKyAgRWxmMzJfV29yZCBwX21lbXN6OworICBFbGYzMl9Xb3JkIHBfZmxhZ3M7CisgIEVsZjMyX1dvcmQgcF9hbGlnbjsKIH0gRWxmMzJfUGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBlbGY2NF9waGRyIHsKLSBFbGY2NF9Xb3JkIHBfdHlwZTsKLSBFbGY2NF9Xb3JkIHBfZmxhZ3M7Ci0gRWxmNjRfT2ZmIHBfb2Zmc2V0OworICBFbGY2NF9Xb3JkIHBfdHlwZTsKKyAgRWxmNjRfV29yZCBwX2ZsYWdzOworICBFbGY2NF9PZmYgcF9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X0FkZHIgcF92YWRkcjsKLSBFbGY2NF9BZGRyIHBfcGFkZHI7Ci0gRWxmNjRfWHdvcmQgcF9maWxlc3o7Ci0gRWxmNjRfWHdvcmQgcF9tZW1zejsKKyAgRWxmNjRfQWRkciBwX3ZhZGRyOworICBFbGY2NF9BZGRyIHBfcGFkZHI7CisgIEVsZjY0X1h3b3JkIHBfZmlsZXN6OworICBFbGY2NF9Yd29yZCBwX21lbXN6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Yd29yZCBwX2FsaWduOworICBFbGY2NF9Yd29yZCBwX2FsaWduOwogfSBFbGY2NF9QaGRyOwogI2RlZmluZSBTSFRfTlVMTCAwCiAjZGVmaW5lIFNIVF9QUk9HQklUUyAxCkBAIC0zMDksMzQgKzMwOSwzNCBAQAogI2RlZmluZSBTSE5fQ09NTU9OIDB4ZmZmMgogI2RlZmluZSBTSE5fSElSRVNFUlZFIDB4ZmZmZgogdHlwZWRlZiBzdHJ1Y3QgZWxmMzJfc2hkciB7Ci0gRWxmMzJfV29yZCBzaF9uYW1lOworICBFbGYzMl9Xb3JkIHNoX25hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX1dvcmQgc2hfdHlwZTsKLSBFbGYzMl9Xb3JkIHNoX2ZsYWdzOwotIEVsZjMyX0FkZHIgc2hfYWRkcjsKLSBFbGYzMl9PZmYgc2hfb2Zmc2V0OworICBFbGYzMl9Xb3JkIHNoX3R5cGU7CisgIEVsZjMyX1dvcmQgc2hfZmxhZ3M7CisgIEVsZjMyX0FkZHIgc2hfYWRkcjsKKyAgRWxmMzJfT2ZmIHNoX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmMzJfV29yZCBzaF9zaXplOwotIEVsZjMyX1dvcmQgc2hfbGluazsKLSBFbGYzMl9Xb3JkIHNoX2luZm87Ci0gRWxmMzJfV29yZCBzaF9hZGRyYWxpZ247CisgIEVsZjMyX1dvcmQgc2hfc2l6ZTsKKyAgRWxmMzJfV29yZCBzaF9saW5rOworICBFbGYzMl9Xb3JkIHNoX2luZm87CisgIEVsZjMyX1dvcmQgc2hfYWRkcmFsaWduOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9Xb3JkIHNoX2VudHNpemU7CisgIEVsZjMyX1dvcmQgc2hfZW50c2l6ZTsKIH0gRWxmMzJfU2hkcjsKIHR5cGVkZWYgc3RydWN0IGVsZjY0X3NoZHIgewotIEVsZjY0X1dvcmQgc2hfbmFtZTsKKyAgRWxmNjRfV29yZCBzaF9uYW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Xb3JkIHNoX3R5cGU7Ci0gRWxmNjRfWHdvcmQgc2hfZmxhZ3M7Ci0gRWxmNjRfQWRkciBzaF9hZGRyOwotIEVsZjY0X09mZiBzaF9vZmZzZXQ7CisgIEVsZjY0X1dvcmQgc2hfdHlwZTsKKyAgRWxmNjRfWHdvcmQgc2hfZmxhZ3M7CisgIEVsZjY0X0FkZHIgc2hfYWRkcjsKKyAgRWxmNjRfT2ZmIHNoX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfWHdvcmQgc2hfc2l6ZTsKLSBFbGY2NF9Xb3JkIHNoX2xpbms7Ci0gRWxmNjRfV29yZCBzaF9pbmZvOwotIEVsZjY0X1h3b3JkIHNoX2FkZHJhbGlnbjsKKyAgRWxmNjRfWHdvcmQgc2hfc2l6ZTsKKyAgRWxmNjRfV29yZCBzaF9saW5rOworICBFbGY2NF9Xb3JkIHNoX2luZm87CisgIEVsZjY0X1h3b3JkIHNoX2FkZHJhbGlnbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfWHdvcmQgc2hfZW50c2l6ZTsKKyAgRWxmNjRfWHdvcmQgc2hfZW50c2l6ZTsKIH0gRWxmNjRfU2hkcjsKICNkZWZpbmUgRUlfTUFHMCAwCiAjZGVmaW5lIEVJX01BRzEgMQpAQCAtNDA0LDI2ICs0MDQsMjggQEAKICNkZWZpbmUgTlRfUzM5MF9MQVNUX0JSRUFLIDB4MzA2CiAjZGVmaW5lIE5UX1MzOTBfU1lTVEVNX0NBTEwgMHgzMDcKICNkZWZpbmUgTlRfUzM5MF9UREIgMHgzMDgKLSNkZWZpbmUgTlRfQVJNX1ZGUCAweDQwMAorI2RlZmluZSBOVF9TMzkwX1ZYUlNfTE9XIDB4MzA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBOVF9TMzkwX1ZYUlNfSElHSCAweDMwYQorI2RlZmluZSBOVF9BUk1fVkZQIDB4NDAwCiAjZGVmaW5lIE5UX0FSTV9UTFMgMHg0MDEKICNkZWZpbmUgTlRfQVJNX0hXX0JSRUFLIDB4NDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOVF9BUk1fSFdfV0FUQ0ggMHg0MDMKICNkZWZpbmUgTlRfTUVUQUdfQ0JVRiAweDUwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlRfTUVUQUdfUlBJUEUgMHg1MDEKICNkZWZpbmUgTlRfTUVUQUdfVExTIDB4NTAyCi10eXBlZGVmIHN0cnVjdCBlbGYzMl9ub3RlIHsKLSBFbGYzMl9Xb3JkIG5fbmFtZXN6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9Xb3JkIG5fZGVzY3N6OwotIEVsZjMyX1dvcmQgbl90eXBlOwordHlwZWRlZiBzdHJ1Y3QgZWxmMzJfbm90ZSB7CisgIEVsZjMyX1dvcmQgbl9uYW1lc3o7CisgIEVsZjMyX1dvcmQgbl9kZXNjc3o7CisgIEVsZjMyX1dvcmQgbl90eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gRWxmMzJfTmhkcjsKIHR5cGVkZWYgc3RydWN0IGVsZjY0X25vdGUgeworICBFbGY2NF9Xb3JkIG5fbmFtZXN6OworICBFbGY2NF9Xb3JkIG5fZGVzY3N6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Xb3JkIG5fbmFtZXN6OwotIEVsZjY0X1dvcmQgbl9kZXNjc3o7Ci0gRWxmNjRfV29yZCBuX3R5cGU7CisgIEVsZjY0X1dvcmQgbl90eXBlOwogfSBFbGY2NF9OaGRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGZjb3JlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZmNvcmUuaAppbmRleCAwZTIzMzhlLi5kYmYyYzg0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZmNvcmUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZmNvcmUuaApAQCAtMjYsNjAgKzI2LDU2IEBACiAjaW5jbHVkZSA8bGludXgvZWxmLmg+CiAjaW5jbHVkZSA8bGludXgvZnMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgZWxmX3NpZ2luZm8KLXsKLSBpbnQgc2lfc2lnbm87Ci0gaW50IHNpX2NvZGU7CitzdHJ1Y3QgZWxmX3NpZ2luZm8geworICBpbnQgc2lfc2lnbm87CisgIGludCBzaV9jb2RlOworICBpbnQgc2lfZXJybm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzaV9lcnJubzsKIH07CiB0eXBlZGVmIGVsZl9ncmVnX3QgZ3JlZ190OwogdHlwZWRlZiBlbGZfZ3JlZ3NldF90IGdyZWdzZXRfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVsZl9mcHJlZ3NldF90IGZwcmVnc2V0X3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbGZfZnB4cmVnc2V0X3QgZnB4cmVnc2V0X3Q7CiAjZGVmaW5lIE5HUkVHIEVMRl9OR1JFRwotc3RydWN0IGVsZl9wcnN0YXR1cworc3RydWN0IGVsZl9wcnN0YXR1cyB7CisgIHN0cnVjdCBlbGZfc2lnaW5mbyBwcl9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBzdHJ1Y3QgZWxmX3NpZ2luZm8gcHJfaW5mbzsKLSBzaG9ydCBwcl9jdXJzaWc7Ci0gdW5zaWduZWQgbG9uZyBwcl9zaWdwZW5kOworICBzaG9ydCBwcl9jdXJzaWc7CisgIHVuc2lnbmVkIGxvbmcgcHJfc2lncGVuZDsKKyAgdW5zaWduZWQgbG9uZyBwcl9zaWdob2xkOworICBwaWRfdCBwcl9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcHJfc2lnaG9sZDsKLSBwaWRfdCBwcl9waWQ7Ci0gcGlkX3QgcHJfcHBpZDsKLSBwaWRfdCBwcl9wZ3JwOworICBwaWRfdCBwcl9wcGlkOworICBwaWRfdCBwcl9wZ3JwOworICBwaWRfdCBwcl9zaWQ7CisgIHN0cnVjdCB0aW1ldmFsIHByX3V0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBwaWRfdCBwcl9zaWQ7Ci0gc3RydWN0IHRpbWV2YWwgcHJfdXRpbWU7Ci0gc3RydWN0IHRpbWV2YWwgcHJfc3RpbWU7Ci0gc3RydWN0IHRpbWV2YWwgcHJfY3V0aW1lOworICBzdHJ1Y3QgdGltZXZhbCBwcl9zdGltZTsKKyAgc3RydWN0IHRpbWV2YWwgcHJfY3V0aW1lOworICBzdHJ1Y3QgdGltZXZhbCBwcl9jc3RpbWU7CisgIGVsZl9ncmVnc2V0X3QgcHJfcmVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXZhbCBwcl9jc3RpbWU7Ci0gZWxmX2dyZWdzZXRfdCBwcl9yZWc7Ci0gaW50IHByX2ZwdmFsaWQ7CisgIGludCBwcl9mcHZhbGlkOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVMRl9QUkFSR1NaICg4MCkKLXN0cnVjdCBlbGZfcHJwc2luZm8KLXsKLSBjaGFyIHByX3N0YXRlOworc3RydWN0IGVsZl9wcnBzaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcHJfc25hbWU7Ci0gY2hhciBwcl96b21iOwotIGNoYXIgcHJfbmljZTsKLSB1bnNpZ25lZCBsb25nIHByX2ZsYWc7CisgIGNoYXIgcHJfc3RhdGU7CisgIGNoYXIgcHJfc25hbWU7CisgIGNoYXIgcHJfem9tYjsKKyAgY2hhciBwcl9uaWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91aWRfdCBwcl91aWQ7Ci0gX19rZXJuZWxfZ2lkX3QgcHJfZ2lkOwotIHBpZF90IHByX3BpZCwgcHJfcHBpZCwgcHJfcGdycCwgcHJfc2lkOwotIGNoYXIgcHJfZm5hbWVbMTZdOworICB1bnNpZ25lZCBsb25nIHByX2ZsYWc7CisgIF9fa2VybmVsX3VpZF90IHByX3VpZDsKKyAgX19rZXJuZWxfZ2lkX3QgcHJfZ2lkOworICBwaWRfdCBwcl9waWQsIHByX3BwaWQsIHByX3BncnAsIHByX3NpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwcl9wc2FyZ3NbRUxGX1BSQVJHU1pdOworICBjaGFyIHByX2ZuYW1lWzE2XTsKKyAgY2hhciBwcl9wc2FyZ3NbRUxGX1BSQVJHU1pdOwogfTsKIHR5cGVkZWYgc3RydWN0IGVsZl9wcnN0YXR1cyBwcnN0YXR1c190OwotdHlwZWRlZiBzdHJ1Y3QgZWxmX3BycHNpbmZvIHBycHNpbmZvX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3QgZWxmX3BycHNpbmZvIHBycHNpbmZvX3Q7CiAjZGVmaW5lIFBSQVJHU1ogRUxGX1BSQVJHU1oKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lcnJxdWV1ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lcnJxdWV1ZS5oCmluZGV4IGI4ZmQzYjQuLmRkNTdhMjkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXJycXVldWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VycnF1ZXVlLmgKQEAgLTIxLDE0ICsyMSwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qgc29ja19leHRlbmRlZF9lcnIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlZV9lcnJubzsKLSBfX3U4IGVlX29yaWdpbjsKLSBfX3U4IGVlX3R5cGU7Ci0gX191OCBlZV9jb2RlOworICBfX3UzMiBlZV9lcnJubzsKKyAgX191OCBlZV9vcmlnaW47CisgIF9fdTggZWVfdHlwZTsKKyAgX191OCBlZV9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVlX3BhZDsKLSBfX3UzMiBlZV9pbmZvOwotIF9fdTMyIGVlX2RhdGE7CisgIF9fdTggZWVfcGFkOworICBfX3UzMiBlZV9pbmZvOworICBfX3UzMiBlZV9kYXRhOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPX0VFX09SSUdJTl9OT05FIDAKQEAgLTM4LDYgKzM4LDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT19FRV9PUklHSU5fVFhTVEFUVVMgNAogI2RlZmluZSBTT19FRV9PUklHSU5fVElNRVNUQU1QSU5HIFNPX0VFX09SSUdJTl9UWFNUQVRVUwotI2RlZmluZSBTT19FRV9PRkZFTkRFUihlZSkgKChzdHJ1Y3Qgc29ja2FkZHIqKSgoZWUpKzEpKQorI2RlZmluZSBTT19FRV9PRkZFTkRFUihlZSkgKChzdHJ1Y3Qgc29ja2FkZHIgKikgKChlZSkgKyAxKSkKK3N0cnVjdCBzY21fdGltZXN0YW1waW5nIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCB0aW1lc3BlYyB0c1szXTsKK307CitlbnVtIHsKKyAgU0NNX1RTVEFNUF9TTkQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ01fVFNUQU1QX1NDSEVELAorICBTQ01fVFNUQU1QX0FDSywKK307CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2V0aHRvb2wuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXRodG9vbC5oCmluZGV4IGI2ZjEzMjcuLjFhMDBjN2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXRodG9vbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXRodG9vbC5oCkBAIC0yMiwyNyArMjIsMjcgQEAKICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX2NtZCB7Ci0gX191MzIgY21kOwotIF9fdTMyIHN1cHBvcnRlZDsKLSBfX3UzMiBhZHZlcnRpc2luZzsKKyAgX191MzIgY21kOworICBfX3UzMiBzdXBwb3J0ZWQ7CisgIF9fdTMyIGFkdmVydGlzaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzcGVlZDsKLSBfX3U4IGR1cGxleDsKLSBfX3U4IHBvcnQ7Ci0gX191OCBwaHlfYWRkcmVzczsKKyAgX191MTYgc3BlZWQ7CisgIF9fdTggZHVwbGV4OworICBfX3U4IHBvcnQ7CisgIF9fdTggcGh5X2FkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHJhbnNjZWl2ZXI7Ci0gX191OCBhdXRvbmVnOwotIF9fdTggbWRpb19zdXBwb3J0OwotIF9fdTMyIG1heHR4cGt0OworICBfX3U4IHRyYW5zY2VpdmVyOworICBfX3U4IGF1dG9uZWc7CisgIF9fdTggbWRpb19zdXBwb3J0OworICBfX3UzMiBtYXh0eHBrdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4cnhwa3Q7Ci0gX191MTYgc3BlZWRfaGk7Ci0gX191OCBldGhfdHBfbWRpeDsKLSBfX3U4IGV0aF90cF9tZGl4X2N0cmw7CisgIF9fdTMyIG1heHJ4cGt0OworICBfX3UxNiBzcGVlZF9oaTsKKyAgX191OCBldGhfdHBfbWRpeDsKKyAgX191OCBldGhfdHBfbWRpeF9jdHJsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBscF9hZHZlcnRpc2luZzsKLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgX191MzIgbHBfYWR2ZXJ0aXNpbmc7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKICNkZWZpbmUgRVRIX01ESU9fU1VQUE9SVFNfQzIyIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC01MSw2MzMgKzUxLDY3OSBAQAogI2RlZmluZSBFVEhUT09MX0JVU0lORk9fTEVOIDMyCiBzdHJ1Y3QgZXRodG9vbF9kcnZpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY21kOwotIGNoYXIgZHJpdmVyWzMyXTsKLSBjaGFyIHZlcnNpb25bMzJdOwotIGNoYXIgZndfdmVyc2lvbltFVEhUT09MX0ZXVkVSU19MRU5dOworICBfX3UzMiBjbWQ7CisgIGNoYXIgZHJpdmVyWzMyXTsKKyAgY2hhciB2ZXJzaW9uWzMyXTsKKyAgY2hhciBmd192ZXJzaW9uW0VUSFRPT0xfRldWRVJTX0xFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYnVzX2luZm9bRVRIVE9PTF9CVVNJTkZPX0xFTl07Ci0gY2hhciByZXNlcnZlZDFbMzJdOwotIGNoYXIgcmVzZXJ2ZWQyWzEyXTsKLSBfX3UzMiBuX3ByaXZfZmxhZ3M7CisgIGNoYXIgYnVzX2luZm9bRVRIVE9PTF9CVVNJTkZPX0xFTl07CisgIGNoYXIgcmVzZXJ2ZWQxWzMyXTsKKyAgY2hhciByZXNlcnZlZDJbMTJdOworICBfX3UzMiBuX3ByaXZfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5fc3RhdHM7Ci0gX191MzIgdGVzdGluZm9fbGVuOwotIF9fdTMyIGVlZHVtcF9sZW47Ci0gX191MzIgcmVnZHVtcF9sZW47CisgIF9fdTMyIG5fc3RhdHM7CisgIF9fdTMyIHRlc3RpbmZvX2xlbjsKKyAgX191MzIgZWVkdW1wX2xlbjsKKyAgX191MzIgcmVnZHVtcF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU09QQVNTX01BWCA2CiBzdHJ1Y3QgZXRodG9vbF93b2xpbmZvIHsKLSBfX3UzMiBjbWQ7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3VwcG9ydGVkOwotIF9fdTMyIHdvbG9wdHM7Ci0gX191OCBzb3Bhc3NbU09QQVNTX01BWF07CisgIF9fdTMyIHN1cHBvcnRlZDsKKyAgX191MzIgd29sb3B0czsKKyAgX191OCBzb3Bhc3NbU09QQVNTX01BWF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX3ZhbHVlIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgZGF0YTsKKyAgX191MzIgY21kOworICBfX3UzMiBkYXRhOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHR1bmFibGVfaWQgeworICBFVEhUT09MX0lEX1VOU1BFQywKKyAgRVRIVE9PTF9SWF9DT1BZQlJFQUssCisgIEVUSFRPT0xfVFhfQ09QWUJSRUFLLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHR1bmFibGVfdHlwZV9pZCB7CisgIEVUSFRPT0xfVFVOQUJMRV9VTlNQRUMsCisgIEVUSFRPT0xfVFVOQUJMRV9VOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEVUSFRPT0xfVFVOQUJMRV9VMTYsCisgIEVUSFRPT0xfVFVOQUJMRV9VMzIsCisgIEVUSFRPT0xfVFVOQUJMRV9VNjQsCisgIEVUSFRPT0xfVFVOQUJMRV9TVFJJTkcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBFVEhUT09MX1RVTkFCTEVfUzgsCisgIEVUSFRPT0xfVFVOQUJMRV9TMTYsCisgIEVUSFRPT0xfVFVOQUJMRV9TMzIsCisgIEVUSFRPT0xfVFVOQUJMRV9TNjQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCBldGh0b29sX3R1bmFibGUgeworICBfX3UzMiBjbWQ7CisgIF9fdTMyIGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdHlwZV9pZDsKKyAgX191MzIgbGVuOworICB2b2lkICogZGF0YVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfcmVncyB7Ci0gX191MzIgY21kOwotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgbGVuOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhWzBdOworICBfX3U4IGRhdGFbMF07CiB9Owogc3RydWN0IGV0aHRvb2xfZWVwcm9tIHsKLSBfX3UzMiBjbWQ7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFnaWM7Ci0gX191MzIgb2Zmc2V0OwotIF9fdTMyIGxlbjsKLSBfX3U4IGRhdGFbMF07CisgIF9fdTMyIG1hZ2ljOworICBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIGxlbjsKKyAgX191OCBkYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9lZWUgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBzdXBwb3J0ZWQ7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc3VwcG9ydGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhZHZlcnRpc2VkOwotIF9fdTMyIGxwX2FkdmVydGlzZWQ7Ci0gX191MzIgZWVlX2FjdGl2ZTsKLSBfX3UzMiBlZWVfZW5hYmxlZDsKKyAgX191MzIgYWR2ZXJ0aXNlZDsKKyAgX191MzIgbHBfYWR2ZXJ0aXNlZDsKKyAgX191MzIgZWVlX2FjdGl2ZTsKKyAgX191MzIgZWVlX2VuYWJsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X2xwaV9lbmFibGVkOwotIF9fdTMyIHR4X2xwaV90aW1lcjsKLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgX191MzIgdHhfbHBpX2VuYWJsZWQ7CisgIF9fdTMyIHR4X2xwaV90aW1lcjsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX21vZGluZm8gewotIF9fdTMyIGNtZDsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIGVlcHJvbV9sZW47CisgIF9fdTMyIGNtZDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgZWVwcm9tX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIHJlc2VydmVkWzhdOwogfTsKIHN0cnVjdCBldGh0b29sX2NvYWxlc2NlIHsKLSBfX3UzMiBjbWQ7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfY29hbGVzY2VfdXNlY3M7Ci0gX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXM7Ci0gX191MzIgcnhfY29hbGVzY2VfdXNlY3NfaXJxOwotIF9fdTMyIHJ4X21heF9jb2FsZXNjZWRfZnJhbWVzX2lycTsKKyAgX191MzIgcnhfY29hbGVzY2VfdXNlY3M7CisgIF9fdTMyIHJ4X21heF9jb2FsZXNjZWRfZnJhbWVzOworICBfX3UzMiByeF9jb2FsZXNjZV91c2Vjc19pcnE7CisgIF9fdTMyIHJ4X21heF9jb2FsZXNjZWRfZnJhbWVzX2lycTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfY29hbGVzY2VfdXNlY3M7Ci0gX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXM7Ci0gX191MzIgdHhfY29hbGVzY2VfdXNlY3NfaXJxOwotIF9fdTMyIHR4X21heF9jb2FsZXNjZWRfZnJhbWVzX2lycTsKKyAgX191MzIgdHhfY29hbGVzY2VfdXNlY3M7CisgIF9fdTMyIHR4X21heF9jb2FsZXNjZWRfZnJhbWVzOworICBfX3UzMiB0eF9jb2FsZXNjZV91c2Vjc19pcnE7CisgIF9fdTMyIHR4X21heF9jb2FsZXNjZWRfZnJhbWVzX2lycTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3RhdHNfYmxvY2tfY29hbGVzY2VfdXNlY3M7Ci0gX191MzIgdXNlX2FkYXB0aXZlX3J4X2NvYWxlc2NlOwotIF9fdTMyIHVzZV9hZGFwdGl2ZV90eF9jb2FsZXNjZTsKLSBfX3UzMiBwa3RfcmF0ZV9sb3c7CisgIF9fdTMyIHN0YXRzX2Jsb2NrX2NvYWxlc2NlX3VzZWNzOworICBfX3UzMiB1c2VfYWRhcHRpdmVfcnhfY29hbGVzY2U7CisgIF9fdTMyIHVzZV9hZGFwdGl2ZV90eF9jb2FsZXNjZTsKKyAgX191MzIgcGt0X3JhdGVfbG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeF9jb2FsZXNjZV91c2Vjc19sb3c7Ci0gX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfbG93OwotIF9fdTMyIHR4X2NvYWxlc2NlX3VzZWNzX2xvdzsKLSBfX3UzMiB0eF9tYXhfY29hbGVzY2VkX2ZyYW1lc19sb3c7CisgIF9fdTMyIHJ4X2NvYWxlc2NlX3VzZWNzX2xvdzsKKyAgX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfbG93OworICBfX3UzMiB0eF9jb2FsZXNjZV91c2Vjc19sb3c7CisgIF9fdTMyIHR4X21heF9jb2FsZXNjZWRfZnJhbWVzX2xvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGt0X3JhdGVfaGlnaDsKLSBfX3UzMiByeF9jb2FsZXNjZV91c2Vjc19oaWdoOwotIF9fdTMyIHJ4X21heF9jb2FsZXNjZWRfZnJhbWVzX2hpZ2g7Ci0gX191MzIgdHhfY29hbGVzY2VfdXNlY3NfaGlnaDsKKyAgX191MzIgcGt0X3JhdGVfaGlnaDsKKyAgX191MzIgcnhfY29hbGVzY2VfdXNlY3NfaGlnaDsKKyAgX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaGlnaDsKKyAgX191MzIgdHhfY29hbGVzY2VfdXNlY3NfaGlnaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaGlnaDsKLSBfX3UzMiByYXRlX3NhbXBsZV9pbnRlcnZhbDsKKyAgX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaGlnaDsKKyAgX191MzIgcmF0ZV9zYW1wbGVfaW50ZXJ2YWw7CiB9Owogc3RydWN0IGV0aHRvb2xfcmluZ3BhcmFtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY21kOwotIF9fdTMyIHJ4X21heF9wZW5kaW5nOwotIF9fdTMyIHJ4X21pbmlfbWF4X3BlbmRpbmc7Ci0gX191MzIgcnhfanVtYm9fbWF4X3BlbmRpbmc7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgcnhfbWF4X3BlbmRpbmc7CisgIF9fdTMyIHJ4X21pbmlfbWF4X3BlbmRpbmc7CisgIF9fdTMyIHJ4X2p1bWJvX21heF9wZW5kaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9tYXhfcGVuZGluZzsKLSBfX3UzMiByeF9wZW5kaW5nOwotIF9fdTMyIHJ4X21pbmlfcGVuZGluZzsKLSBfX3UzMiByeF9qdW1ib19wZW5kaW5nOworICBfX3UzMiB0eF9tYXhfcGVuZGluZzsKKyAgX191MzIgcnhfcGVuZGluZzsKKyAgX191MzIgcnhfbWluaV9wZW5kaW5nOworICBfX3UzMiByeF9qdW1ib19wZW5kaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9wZW5kaW5nOworICBfX3UzMiB0eF9wZW5kaW5nOwogfTsKIHN0cnVjdCBldGh0b29sX2NoYW5uZWxzIHsKLSBfX3UzMiBjbWQ7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3J4OwotIF9fdTMyIG1heF90eDsKLSBfX3UzMiBtYXhfb3RoZXI7Ci0gX191MzIgbWF4X2NvbWJpbmVkOworICBfX3UzMiBtYXhfcng7CisgIF9fdTMyIG1heF90eDsKKyAgX191MzIgbWF4X290aGVyOworICBfX3UzMiBtYXhfY29tYmluZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4X2NvdW50OwotIF9fdTMyIHR4X2NvdW50OwotIF9fdTMyIG90aGVyX2NvdW50OwotIF9fdTMyIGNvbWJpbmVkX2NvdW50OworICBfX3UzMiByeF9jb3VudDsKKyAgX191MzIgdHhfY291bnQ7CisgIF9fdTMyIG90aGVyX2NvdW50OworICBfX3UzMiBjb21iaW5lZF9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGV0aHRvb2xfcGF1c2VwYXJhbSB7Ci0gX191MzIgY21kOwotIF9fdTMyIGF1dG9uZWc7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgYXV0b25lZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfcGF1c2U7Ci0gX191MzIgdHhfcGF1c2U7CisgIF9fdTMyIHJ4X3BhdXNlOworICBfX3UzMiB0eF9wYXVzZTsKIH07CiAjZGVmaW5lIEVUSF9HU1RSSU5HX0xFTiAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZXRodG9vbF9zdHJpbmdzZXQgewotIEVUSF9TU19URVNUID0gMCwKLSBFVEhfU1NfU1RBVFMsCi0gRVRIX1NTX1BSSVZfRkxBR1MsCisgIEVUSF9TU19URVNUID0gMCwKKyAgRVRIX1NTX1NUQVRTLAorICBFVEhfU1NfUFJJVl9GTEFHUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVRIX1NTX05UVVBMRV9GSUxURVJTLAotIEVUSF9TU19GRUFUVVJFUywKKyAgRVRIX1NTX05UVVBMRV9GSUxURVJTLAorICBFVEhfU1NfRkVBVFVSRVMsCiB9Owogc3RydWN0IGV0aHRvb2xfZ3N0cmluZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gX191MzIgc3RyaW5nX3NldDsKLSBfX3UzMiBsZW47Ci0gX191OCBkYXRhWzBdOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHN0cmluZ19zZXQ7CisgIF9fdTMyIGxlbjsKKyAgX191OCBkYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9zc2V0X2luZm8gewotIF9fdTMyIGNtZDsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgY21kOworICBfX3UzMiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3NldF9tYXNrOwotIF9fdTMyIGRhdGFbMF07CisgIF9fdTY0IHNzZXRfbWFzazsKKyAgX191MzIgZGF0YVswXTsKIH07CiBlbnVtIGV0aHRvb2xfdGVzdF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVUSF9URVNUX0ZMX09GRkxJTkUgPSAoMSA8PCAwKSwKLSBFVEhfVEVTVF9GTF9GQUlMRUQgPSAoMSA8PCAxKSwKLSBFVEhfVEVTVF9GTF9FWFRFUk5BTF9MQiA9ICgxIDw8IDIpLAotIEVUSF9URVNUX0ZMX0VYVEVSTkFMX0xCX0RPTkUgPSAoMSA8PCAzKSwKKyAgRVRIX1RFU1RfRkxfT0ZGTElORSA9ICgxIDw8IDApLAorICBFVEhfVEVTVF9GTF9GQUlMRUQgPSAoMSA8PCAxKSwKKyAgRVRIX1RFU1RfRkxfRVhURVJOQUxfTEIgPSAoMSA8PCAyKSwKKyAgRVRIX1RFU1RfRkxfRVhURVJOQUxfTEJfRE9ORSA9ICgxIDw8IDMpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF90ZXN0IHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTMyIGxlbjsKLSBfX3U2NCBkYXRhWzBdOworICBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgbGVuOworICBfX3U2NCBkYXRhWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZXRodG9vbF9zdGF0cyB7Ci0gX191MzIgY21kOwotIF9fdTMyIG5fc3RhdHM7Ci0gX191NjQgZGF0YVswXTsKKyAgX191MzIgY21kOworICBfX3UzMiBuX3N0YXRzOworICBfX3U2NCBkYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9wZXJtX2FkZHIgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBzaXplOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVswXTsKKyAgX191OCBkYXRhWzBdOwogfTsKIGVudW0gZXRodG9vbF9mbGFncyB7Ci0gRVRIX0ZMQUdfVFhWTEFOID0gKDEgPDwgNyksCisgIEVUSF9GTEFHX1RYVkxBTiA9ICgxIDw8IDcpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFVEhfRkxBR19SWFZMQU4gPSAoMSA8PCA4KSwKLSBFVEhfRkxBR19MUk8gPSAoMSA8PCAxNSksCi0gRVRIX0ZMQUdfTlRVUExFID0gKDEgPDwgMjcpLAotIEVUSF9GTEFHX1JYSEFTSCA9ICgxIDw8IDI4KSwKKyAgRVRIX0ZMQUdfUlhWTEFOID0gKDEgPDwgOCksCisgIEVUSF9GTEFHX0xSTyA9ICgxIDw8IDE1KSwKKyAgRVRIX0ZMQUdfTlRVUExFID0gKDEgPDwgMjcpLAorICBFVEhfRkxBR19SWEhBU0ggPSAoMSA8PCAyOCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHsKLSBfX2JlMzIgaXA0c3JjOwotIF9fYmUzMiBpcDRkc3Q7CisgIF9fYmUzMiBpcDRzcmM7CisgIF9fYmUzMiBpcDRkc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwc3JjOwotIF9fYmUxNiBwZHN0OwotIF9fdTggdG9zOworICBfX2JlMTYgcHNyYzsKKyAgX19iZTE2IHBkc3Q7CisgIF9fdTggdG9zOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyB7Ci0gX19iZTMyIGlwNHNyYzsKLSBfX2JlMzIgaXA0ZHN0OwotIF9fYmUzMiBzcGk7CisgIF9fYmUzMiBpcDRzcmM7CisgIF9fYmUzMiBpcDRkc3Q7CisgIF9fYmUzMiBzcGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdG9zOworICBfX3U4IHRvczsKIH07CiAjZGVmaW5lIEVUSF9SWF9ORkNfSVA0IDEKIHN0cnVjdCBldGh0b29sX3VzcmlwNF9zcGVjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGlwNHNyYzsKLSBfX2JlMzIgaXA0ZHN0OwotIF9fYmUzMiBsNF80X2J5dGVzOwotIF9fdTggdG9zOworICBfX2JlMzIgaXA0c3JjOworICBfX2JlMzIgaXA0ZHN0OworICBfX2JlMzIgbDRfNF9ieXRlczsKKyAgX191OCB0b3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaXBfdmVyOwotIF9fdTggcHJvdG87CisgIF9fdTggaXBfdmVyOworICBfX3U4IHByb3RvOwogfTsKIHVuaW9uIGV0aHRvb2xfZmxvd191bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHRjcF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB1ZHBfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgc2N0cF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyBhaF9pcDRfc3BlYzsKKyAgc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgdGNwX2lwNF9zcGVjOworICBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB1ZHBfaXA0X3NwZWM7CisgIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHNjdHBfaXA0X3NwZWM7CisgIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIGFoX2lwNF9zcGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyBlc3BfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aHRvb2xfdXNyaXA0X3NwZWMgdXNyX2lwNF9zcGVjOwotIHN0cnVjdCBldGhoZHIgZXRoZXJfc3BlYzsKLSBfX3U4IGhkYXRhWzUyXTsKKyAgc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgZXNwX2lwNF9zcGVjOworICBzdHJ1Y3QgZXRodG9vbF91c3JpcDRfc3BlYyB1c3JfaXA0X3NwZWM7CisgIHN0cnVjdCBldGhoZHIgZXRoZXJfc3BlYzsKKyAgX191OCBoZGF0YVs1Ml07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX2Zsb3dfZXh0IHsKLSBfX3U4IHBhZGRpbmdbMl07Ci0gdW5zaWduZWQgY2hhciBoX2Rlc3RbRVRIX0FMRU5dOworICBfX3U4IHBhZGRpbmdbMl07CisgIHVuc2lnbmVkIGNoYXIgaF9kZXN0W0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHZsYW5fZXR5cGU7Ci0gX19iZTE2IHZsYW5fdGNpOwotIF9fYmUzMiBkYXRhWzJdOworICBfX2JlMTYgdmxhbl9ldHlwZTsKKyAgX19iZTE2IHZsYW5fdGNpOworICBfX2JlMzIgZGF0YVsyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfcnhfZmxvd19zcGVjIHsKLSBfX3UzMiBmbG93X3R5cGU7Ci0gdW5pb24gZXRodG9vbF9mbG93X3VuaW9uIGhfdTsKLSBzdHJ1Y3QgZXRodG9vbF9mbG93X2V4dCBoX2V4dDsKKyAgX191MzIgZmxvd190eXBlOworICB1bmlvbiBldGh0b29sX2Zsb3dfdW5pb24gaF91OworICBzdHJ1Y3QgZXRodG9vbF9mbG93X2V4dCBoX2V4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gZXRodG9vbF9mbG93X3VuaW9uIG1fdTsKLSBzdHJ1Y3QgZXRodG9vbF9mbG93X2V4dCBtX2V4dDsKLSBfX3U2NCByaW5nX2Nvb2tpZTsKLSBfX3UzMiBsb2NhdGlvbjsKKyAgdW5pb24gZXRodG9vbF9mbG93X3VuaW9uIG1fdTsKKyAgc3RydWN0IGV0aHRvb2xfZmxvd19leHQgbV9leHQ7CisgIF9fdTY0IHJpbmdfY29va2llOworICBfX3UzMiBsb2NhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGV0aHRvb2xfcnhuZmMgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBmbG93X3R5cGU7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgZmxvd190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYXRhOwotIHN0cnVjdCBldGh0b29sX3J4X2Zsb3dfc3BlYyBmczsKLSBfX3UzMiBydWxlX2NudDsKLSBfX3UzMiBydWxlX2xvY3NbMF07CisgIF9fdTY0IGRhdGE7CisgIHN0cnVjdCBldGh0b29sX3J4X2Zsb3dfc3BlYyBmczsKKyAgX191MzIgcnVsZV9jbnQ7CisgIF9fdTMyIHJ1bGVfbG9jc1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGV0aHRvb2xfcnhmaF9pbmRpciB7Ci0gX191MzIgY21kOwotIF9fdTMyIHNpemU7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmluZ19pbmRleFswXTsKKyAgX191MzIgcmluZ19pbmRleFswXTsKIH07CitzdHJ1Y3QgZXRodG9vbF9yeGZoIHsKKyAgX191MzIgY21kOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcnNzX2NvbnRleHQ7CisgIF9fdTMyIGluZGlyX3NpemU7CisgIF9fdTMyIGtleV9zaXplOworICBfX3UzMiByc3ZkWzJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcnNzX2NvbmZpZ1swXTsKK307CisjZGVmaW5lIEVUSF9SWEZIX0lORElSX05PX0NIQU5HRSAweGZmZmZmZmZmCiBzdHJ1Y3QgZXRodG9vbF9yeF9udHVwbGVfZmxvd19zcGVjIHsKLSBfX3UzMiBmbG93X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB0Y3BfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgdWRwX2lwNF9zcGVjOwotIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHNjdHBfaXA0X3NwZWM7CisgIF9fdTMyIGZsb3dfdHlwZTsKKyAgdW5pb24geworICAgIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHRjcF9pcDRfc3BlYzsKKyAgICBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB1ZHBfaXA0X3NwZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIGFoX2lwNF9zcGVjOwotIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIGVzcF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF91c3JpcDRfc3BlYyB1c3JfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aGhkciBldGhlcl9zcGVjOworICAgIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHNjdHBfaXA0X3NwZWM7CisgICAgc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgYWhfaXA0X3NwZWM7CisgICAgc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgZXNwX2lwNF9zcGVjOworICAgIHN0cnVjdCBldGh0b29sX3VzcmlwNF9zcGVjIHVzcl9pcDRfc3BlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBoZGF0YVs3Ml07Ci0gfSBoX3UsIG1fdTsKLSBfX3UxNiB2bGFuX3RhZzsKLSBfX3UxNiB2bGFuX3RhZ19tYXNrOworICAgIHN0cnVjdCBldGhoZHIgZXRoZXJfc3BlYzsKKyAgICBfX3U4IGhkYXRhWzcyXTsKKyAgfSBoX3UsIG1fdTsKKyAgX191MTYgdmxhbl90YWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGE7Ci0gX191NjQgZGF0YV9tYXNrOwotIF9fczMyIGFjdGlvbjsKLSNkZWZpbmUgRVRIVE9PTF9SWE5UVVBMRV9BQ1RJT05fRFJPUCAoLTEpCisgIF9fdTE2IHZsYW5fdGFnX21hc2s7CisgIF9fdTY0IGRhdGE7CisgIF9fdTY0IGRhdGFfbWFzazsKKyAgX19zMzIgYWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRVRIVE9PTF9SWE5UVVBMRV9BQ1RJT05fQ0xFQVIgKC0yKQorI2RlZmluZSBFVEhUT09MX1JYTlRVUExFX0FDVElPTl9EUk9QICgtIDEpCisjZGVmaW5lIEVUSFRPT0xfUlhOVFVQTEVfQUNUSU9OX0NMRUFSICgtIDIpCiB9Owogc3RydWN0IGV0aHRvb2xfcnhfbnR1cGxlIHsKLSBfX3UzMiBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBldGh0b29sX3J4X250dXBsZV9mbG93X3NwZWMgZnM7CisgIF9fdTMyIGNtZDsKKyAgc3RydWN0IGV0aHRvb2xfcnhfbnR1cGxlX2Zsb3dfc3BlYyBmczsKIH07CiAjZGVmaW5lIEVUSFRPT0xfRkxBU0hfTUFYX0ZJTEVOQU1FIDEyOAotZW51bSBldGh0b29sX2ZsYXNoX29wX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFVEhUT09MX0ZMQVNIX0FMTF9SRUdJT05TID0gMCwKK2VudW0gZXRodG9vbF9mbGFzaF9vcF90eXBlIHsKKyAgRVRIVE9PTF9GTEFTSF9BTExfUkVHSU9OUyA9IDAsCiB9Owogc3RydWN0IGV0aHRvb2xfZmxhc2ggewotIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVnaW9uOwotIGNoYXIgZGF0YVtFVEhUT09MX0ZMQVNIX01BWF9GSUxFTkFNRV07CisgIF9fdTMyIGNtZDsKKyAgX191MzIgcmVnaW9uOworICBjaGFyIGRhdGFbRVRIVE9PTF9GTEFTSF9NQVhfRklMRU5BTUVdOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgZXRodG9vbF9kdW1wIHsKKyAgX191MzIgY21kOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBmbGFnOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbGVuOworICBfX3U4IGRhdGFbMF07CiB9OwogI2RlZmluZSBFVEhfRldfRFVNUF9ESVNBQkxFIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgZXRodG9vbF9kdW1wIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBmbGFnOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gX191OCBkYXRhWzBdOwotfTsKIHN0cnVjdCBldGh0b29sX2dldF9mZWF0dXJlc19ibG9jayB7CisgIF9fdTMyIGF2YWlsYWJsZTsKKyAgX191MzIgcmVxdWVzdGVkOworICBfX3UzMiBhY3RpdmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF2YWlsYWJsZTsKLSBfX3UzMiByZXF1ZXN0ZWQ7Ci0gX191MzIgYWN0aXZlOwotIF9fdTMyIG5ldmVyX2NoYW5nZWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBuZXZlcl9jaGFuZ2VkOwogfTsKIHN0cnVjdCBldGh0b29sX2dmZWF0dXJlcyB7Ci0gX191MzIgY21kOwotIF9fdTMyIHNpemU7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGV0aHRvb2xfZ2V0X2ZlYXR1cmVzX2Jsb2NrIGZlYXR1cmVzWzBdOworICBfX3UzMiBzaXplOworICBzdHJ1Y3QgZXRodG9vbF9nZXRfZmVhdHVyZXNfYmxvY2sgZmVhdHVyZXNbMF07CiB9Owogc3RydWN0IGV0aHRvb2xfc2V0X2ZlYXR1cmVzX2Jsb2NrIHsKLSBfX3UzMiB2YWxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVxdWVzdGVkOworICBfX3UzMiB2YWxpZDsKKyAgX191MzIgcmVxdWVzdGVkOwogfTsKIHN0cnVjdCBldGh0b29sX3NmZWF0dXJlcyB7Ci0gX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXplOwotIHN0cnVjdCBldGh0b29sX3NldF9mZWF0dXJlc19ibG9jayBmZWF0dXJlc1swXTsKKyAgX191MzIgY21kOworICBfX3UzMiBzaXplOworICBzdHJ1Y3QgZXRodG9vbF9zZXRfZmVhdHVyZXNfYmxvY2sgZmVhdHVyZXNbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX3RzX2luZm8geworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHNvX3RpbWVzdGFtcGluZzsKKyAgX19zMzIgcGhjX2luZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gX191MzIgc29fdGltZXN0YW1waW5nOwotIF9fczMyIHBoY19pbmRleDsKLSBfX3UzMiB0eF90eXBlczsKKyAgX191MzIgdHhfdHlwZXM7CisgIF9fdTMyIHR4X3Jlc2VydmVkWzNdOworICBfX3UzMiByeF9maWx0ZXJzOworICBfX3UzMiByeF9yZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfcmVzZXJ2ZWRbM107Ci0gX191MzIgcnhfZmlsdGVyczsKLSBfX3UzMiByeF9yZXNlcnZlZFszXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBldGh0b29sX3NmZWF0dXJlc19yZXR2YWxfYml0cyB7Ci0gRVRIVE9PTF9GX1VOU1VQUE9SVEVEX19CSVQsCi0gRVRIVE9PTF9GX1dJU0hfX0JJVCwKLSBFVEhUT09MX0ZfQ09NUEFUX19CSVQsCisgIEVUSFRPT0xfRl9VTlNVUFBPUlRFRF9fQklULAorICBFVEhUT09MX0ZfV0lTSF9fQklULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRVRIVE9PTF9GX0NPTVBBVF9fQklULAogfTsKICNkZWZpbmUgRVRIVE9PTF9GX1VOU1VQUE9SVEVEICgxIDw8IEVUSFRPT0xfRl9VTlNVUFBPUlRFRF9fQklUKQogI2RlZmluZSBFVEhUT09MX0ZfV0lTSCAoMSA8PCBFVEhUT09MX0ZfV0lTSF9fQklUKQotI2RlZmluZSBFVEhUT09MX0ZfQ09NUEFUICgxIDw8IEVUSFRPT0xfRl9DT01QQVRfX0JJVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfRl9DT01QQVQgKDEgPDwgRVRIVE9PTF9GX0NPTVBBVF9fQklUKQogI2RlZmluZSBFVEhUT09MX0dTRVQgMHgwMDAwMDAwMQogI2RlZmluZSBFVEhUT09MX1NTRVQgMHgwMDAwMDAwMgogI2RlZmluZSBFVEhUT09MX0dEUlZJTkZPIDB4MDAwMDAwMDMKLSNkZWZpbmUgRVRIVE9PTF9HUkVHUyAweDAwMDAwMDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX0dSRUdTIDB4MDAwMDAwMDQKICNkZWZpbmUgRVRIVE9PTF9HV09MIDB4MDAwMDAwMDUKICNkZWZpbmUgRVRIVE9PTF9TV09MIDB4MDAwMDAwMDYKICNkZWZpbmUgRVRIVE9PTF9HTVNHTFZMIDB4MDAwMDAwMDcKLSNkZWZpbmUgRVRIVE9PTF9TTVNHTFZMIDB4MDAwMDAwMDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU01TR0xWTCAweDAwMDAwMDA4CiAjZGVmaW5lIEVUSFRPT0xfTldBWV9SU1QgMHgwMDAwMDAwOQogI2RlZmluZSBFVEhUT09MX0dMSU5LIDB4MDAwMDAwMGEKICNkZWZpbmUgRVRIVE9PTF9HRUVQUk9NIDB4MDAwMDAwMGIKLSNkZWZpbmUgRVRIVE9PTF9TRUVQUk9NIDB4MDAwMDAwMGMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU0VFUFJPTSAweDAwMDAwMDBjCiAjZGVmaW5lIEVUSFRPT0xfR0NPQUxFU0NFIDB4MDAwMDAwMGUKICNkZWZpbmUgRVRIVE9PTF9TQ09BTEVTQ0UgMHgwMDAwMDAwZgogI2RlZmluZSBFVEhUT09MX0dSSU5HUEFSQU0gMHgwMDAwMDAxMAotI2RlZmluZSBFVEhUT09MX1NSSU5HUEFSQU0gMHgwMDAwMDAxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TUklOR1BBUkFNIDB4MDAwMDAwMTEKICNkZWZpbmUgRVRIVE9PTF9HUEFVU0VQQVJBTSAweDAwMDAwMDEyCiAjZGVmaW5lIEVUSFRPT0xfU1BBVVNFUEFSQU0gMHgwMDAwMDAxMwogI2RlZmluZSBFVEhUT09MX0dSWENTVU0gMHgwMDAwMDAxNAotI2RlZmluZSBFVEhUT09MX1NSWENTVU0gMHgwMDAwMDAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TUlhDU1VNIDB4MDAwMDAwMTUKICNkZWZpbmUgRVRIVE9PTF9HVFhDU1VNIDB4MDAwMDAwMTYKICNkZWZpbmUgRVRIVE9PTF9TVFhDU1VNIDB4MDAwMDAwMTcKICNkZWZpbmUgRVRIVE9PTF9HU0cgMHgwMDAwMDAxOAotI2RlZmluZSBFVEhUT09MX1NTRyAweDAwMDAwMDE5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX1NTRyAweDAwMDAwMDE5CiAjZGVmaW5lIEVUSFRPT0xfVEVTVCAweDAwMDAwMDFhCiAjZGVmaW5lIEVUSFRPT0xfR1NUUklOR1MgMHgwMDAwMDAxYgogI2RlZmluZSBFVEhUT09MX1BIWVNfSUQgMHgwMDAwMDAxYwotI2RlZmluZSBFVEhUT09MX0dTVEFUUyAweDAwMDAwMDFkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX0dTVEFUUyAweDAwMDAwMDFkCiAjZGVmaW5lIEVUSFRPT0xfR1RTTyAweDAwMDAwMDFlCiAjZGVmaW5lIEVUSFRPT0xfU1RTTyAweDAwMDAwMDFmCiAjZGVmaW5lIEVUSFRPT0xfR1BFUk1BRERSIDB4MDAwMDAwMjAKLSNkZWZpbmUgRVRIVE9PTF9HVUZPIDB4MDAwMDAwMjEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR1VGTyAweDAwMDAwMDIxCiAjZGVmaW5lIEVUSFRPT0xfU1VGTyAweDAwMDAwMDIyCiAjZGVmaW5lIEVUSFRPT0xfR0dTTyAweDAwMDAwMDIzCiAjZGVmaW5lIEVUSFRPT0xfU0dTTyAweDAwMDAwMDI0Ci0jZGVmaW5lIEVUSFRPT0xfR0ZMQUdTIDB4MDAwMDAwMjUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR0ZMQUdTIDB4MDAwMDAwMjUKICNkZWZpbmUgRVRIVE9PTF9TRkxBR1MgMHgwMDAwMDAyNgogI2RlZmluZSBFVEhUT09MX0dQRkxBR1MgMHgwMDAwMDAyNwogI2RlZmluZSBFVEhUT09MX1NQRkxBR1MgMHgwMDAwMDAyOAotI2RlZmluZSBFVEhUT09MX0dSWEZIIDB4MDAwMDAwMjkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR1JYRkggMHgwMDAwMDAyOQogI2RlZmluZSBFVEhUT09MX1NSWEZIIDB4MDAwMDAwMmEKICNkZWZpbmUgRVRIVE9PTF9HR1JPIDB4MDAwMDAwMmIKICNkZWZpbmUgRVRIVE9PTF9TR1JPIDB4MDAwMDAwMmMKLSNkZWZpbmUgRVRIVE9PTF9HUlhSSU5HUyAweDAwMDAwMDJkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX0dSWFJJTkdTIDB4MDAwMDAwMmQKICNkZWZpbmUgRVRIVE9PTF9HUlhDTFNSTENOVCAweDAwMDAwMDJlCiAjZGVmaW5lIEVUSFRPT0xfR1JYQ0xTUlVMRSAweDAwMDAwMDJmCiAjZGVmaW5lIEVUSFRPT0xfR1JYQ0xTUkxBTEwgMHgwMDAwMDAzMAotI2RlZmluZSBFVEhUT09MX1NSWENMU1JMREVMIDB4MDAwMDAwMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU1JYQ0xTUkxERUwgMHgwMDAwMDAzMQogI2RlZmluZSBFVEhUT09MX1NSWENMU1JMSU5TIDB4MDAwMDAwMzIKICNkZWZpbmUgRVRIVE9PTF9GTEFTSERFViAweDAwMDAwMDMzCiAjZGVmaW5lIEVUSFRPT0xfUkVTRVQgMHgwMDAwMDAzNAotI2RlZmluZSBFVEhUT09MX1NSWE5UVVBMRSAweDAwMDAwMDM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX1NSWE5UVVBMRSAweDAwMDAwMDM1CiAjZGVmaW5lIEVUSFRPT0xfR1JYTlRVUExFIDB4MDAwMDAwMzYKICNkZWZpbmUgRVRIVE9PTF9HU1NFVF9JTkZPIDB4MDAwMDAwMzcKICNkZWZpbmUgRVRIVE9PTF9HUlhGSElORElSIDB4MDAwMDAwMzgKLSNkZWZpbmUgRVRIVE9PTF9TUlhGSElORElSIDB4MDAwMDAwMzkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU1JYRkhJTkRJUiAweDAwMDAwMDM5CiAjZGVmaW5lIEVUSFRPT0xfR0ZFQVRVUkVTIDB4MDAwMDAwM2EKICNkZWZpbmUgRVRIVE9PTF9TRkVBVFVSRVMgMHgwMDAwMDAzYgogI2RlZmluZSBFVEhUT09MX0dDSEFOTkVMUyAweDAwMDAwMDNjCi0jZGVmaW5lIEVUSFRPT0xfU0NIQU5ORUxTIDB4MDAwMDAwM2QKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU0NIQU5ORUxTIDB4MDAwMDAwM2QKICNkZWZpbmUgRVRIVE9PTF9TRVRfRFVNUCAweDAwMDAwMDNlCiAjZGVmaW5lIEVUSFRPT0xfR0VUX0RVTVBfRkxBRyAweDAwMDAwMDNmCiAjZGVmaW5lIEVUSFRPT0xfR0VUX0RVTVBfREFUQSAweDAwMDAwMDQwCi0jZGVmaW5lIEVUSFRPT0xfR0VUX1RTX0lORk8gMHgwMDAwMDA0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9HRVRfVFNfSU5GTyAweDAwMDAwMDQxCiAjZGVmaW5lIEVUSFRPT0xfR01PRFVMRUlORk8gMHgwMDAwMDA0MgogI2RlZmluZSBFVEhUT09MX0dNT0RVTEVFRVBST00gMHgwMDAwMDA0MwogI2RlZmluZSBFVEhUT09MX0dFRUUgMHgwMDAwMDA0NAotI2RlZmluZSBFVEhUT09MX1NFRUUgMHgwMDAwMDA0NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TRUVFIDB4MDAwMDAwNDUKKyNkZWZpbmUgRVRIVE9PTF9HUlNTSCAweDAwMDAwMDQ2CisjZGVmaW5lIEVUSFRPT0xfU1JTU0ggMHgwMDAwMDA0NworI2RlZmluZSBFVEhUT09MX0dUVU5BQkxFIDB4MDAwMDAwNDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU1RVTkFCTEUgMHgwMDAwMDA0OQogI2RlZmluZSBTUEFSQ19FVEhfR1NFVCBFVEhUT09MX0dTRVQKICNkZWZpbmUgU1BBUkNfRVRIX1NTRVQgRVRIVE9PTF9TU0VUCiAjZGVmaW5lIFNVUFBPUlRFRF8xMGJhc2VUX0hhbGYgKDEgPDwgMCkKLSNkZWZpbmUgU1VQUE9SVEVEXzEwYmFzZVRfRnVsbCAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEXzEwYmFzZVRfRnVsbCAoMSA8PCAxKQogI2RlZmluZSBTVVBQT1JURURfMTAwYmFzZVRfSGFsZiAoMSA8PCAyKQogI2RlZmluZSBTVVBQT1JURURfMTAwYmFzZVRfRnVsbCAoMSA8PCAzKQogI2RlZmluZSBTVVBQT1JURURfMTAwMGJhc2VUX0hhbGYgKDEgPDwgNCkKLSNkZWZpbmUgU1VQUE9SVEVEXzEwMDBiYXNlVF9GdWxsICgxIDw8IDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTVVBQT1JURURfMTAwMGJhc2VUX0Z1bGwgKDEgPDwgNSkKICNkZWZpbmUgU1VQUE9SVEVEX0F1dG9uZWcgKDEgPDwgNikKICNkZWZpbmUgU1VQUE9SVEVEX1RQICgxIDw8IDcpCiAjZGVmaW5lIFNVUFBPUlRFRF9BVUkgKDEgPDwgOCkKLSNkZWZpbmUgU1VQUE9SVEVEX01JSSAoMSA8PCA5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEX01JSSAoMSA8PCA5KQogI2RlZmluZSBTVVBQT1JURURfRklCUkUgKDEgPDwgMTApCiAjZGVmaW5lIFNVUFBPUlRFRF9CTkMgKDEgPDwgMTEpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDAwMGJhc2VUX0Z1bGwgKDEgPDwgMTIpCi0jZGVmaW5lIFNVUFBPUlRFRF9QYXVzZSAoMSA8PCAxMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNVUFBPUlRFRF9QYXVzZSAoMSA8PCAxMykKICNkZWZpbmUgU1VQUE9SVEVEX0FzeW1fUGF1c2UgKDEgPDwgMTQpCiAjZGVmaW5lIFNVUFBPUlRFRF8yNTAwYmFzZVhfRnVsbCAoMSA8PCAxNSkKICNkZWZpbmUgU1VQUE9SVEVEX0JhY2twbGFuZSAoMSA8PCAxNikKLSNkZWZpbmUgU1VQUE9SVEVEXzEwMDBiYXNlS1hfRnVsbCAoMSA8PCAxNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNVUFBPUlRFRF8xMDAwYmFzZUtYX0Z1bGwgKDEgPDwgMTcpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDAwMGJhc2VLWDRfRnVsbCAoMSA8PCAxOCkKICNkZWZpbmUgU1VQUE9SVEVEXzEwMDAwYmFzZUtSX0Z1bGwgKDEgPDwgMTkpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDAwMGJhc2VSX0ZFQyAoMSA8PCAyMCkKLSNkZWZpbmUgU1VQUE9SVEVEXzIwMDAwYmFzZU1MRDJfRnVsbCAoMSA8PCAyMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNVUFBPUlRFRF8yMDAwMGJhc2VNTEQyX0Z1bGwgKDEgPDwgMjEpCiAjZGVmaW5lIFNVUFBPUlRFRF8yMDAwMGJhc2VLUjJfRnVsbCAoMSA8PCAyMikKICNkZWZpbmUgU1VQUE9SVEVEXzQwMDAwYmFzZUtSNF9GdWxsICgxIDw8IDIzKQogI2RlZmluZSBTVVBQT1JURURfNDAwMDBiYXNlQ1I0X0Z1bGwgKDEgPDwgMjQpCi0jZGVmaW5lIFNVUFBPUlRFRF80MDAwMGJhc2VTUjRfRnVsbCAoMSA8PCAyNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNVUFBPUlRFRF80MDAwMGJhc2VTUjRfRnVsbCAoMSA8PCAyNSkKICNkZWZpbmUgU1VQUE9SVEVEXzQwMDAwYmFzZUxSNF9GdWxsICgxIDw8IDI2KQogI2RlZmluZSBBRFZFUlRJU0VEXzEwYmFzZVRfSGFsZiAoMSA8PCAwKQogI2RlZmluZSBBRFZFUlRJU0VEXzEwYmFzZVRfRnVsbCAoMSA8PCAxKQotI2RlZmluZSBBRFZFUlRJU0VEXzEwMGJhc2VUX0hhbGYgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFEVkVSVElTRURfMTAwYmFzZVRfSGFsZiAoMSA8PCAyKQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMGJhc2VUX0Z1bGwgKDEgPDwgMykKICNkZWZpbmUgQURWRVJUSVNFRF8xMDAwYmFzZVRfSGFsZiAoMSA8PCA0KQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMDBiYXNlVF9GdWxsICgxIDw8IDUpCi0jZGVmaW5lIEFEVkVSVElTRURfQXV0b25lZyAoMSA8PCA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF9BdXRvbmVnICgxIDw8IDYpCiAjZGVmaW5lIEFEVkVSVElTRURfVFAgKDEgPDwgNykKICNkZWZpbmUgQURWRVJUSVNFRF9BVUkgKDEgPDwgOCkKICNkZWZpbmUgQURWRVJUSVNFRF9NSUkgKDEgPDwgOSkKLSNkZWZpbmUgQURWRVJUSVNFRF9GSUJSRSAoMSA8PCAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFEVkVSVElTRURfRklCUkUgKDEgPDwgMTApCiAjZGVmaW5lIEFEVkVSVElTRURfQk5DICgxIDw8IDExKQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMDAwYmFzZVRfRnVsbCAoMSA8PCAxMikKICNkZWZpbmUgQURWRVJUSVNFRF9QYXVzZSAoMSA8PCAxMykKLSNkZWZpbmUgQURWRVJUSVNFRF9Bc3ltX1BhdXNlICgxIDw8IDE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF9Bc3ltX1BhdXNlICgxIDw8IDE0KQogI2RlZmluZSBBRFZFUlRJU0VEXzI1MDBiYXNlWF9GdWxsICgxIDw8IDE1KQogI2RlZmluZSBBRFZFUlRJU0VEX0JhY2twbGFuZSAoMSA8PCAxNikKICNkZWZpbmUgQURWRVJUSVNFRF8xMDAwYmFzZUtYX0Z1bGwgKDEgPDwgMTcpCi0jZGVmaW5lIEFEVkVSVElTRURfMTAwMDBiYXNlS1g0X0Z1bGwgKDEgPDwgMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBRFZFUlRJU0VEXzEwMDAwYmFzZUtYNF9GdWxsICgxIDw8IDE4KQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMDAwYmFzZUtSX0Z1bGwgKDEgPDwgMTkpCiAjZGVmaW5lIEFEVkVSVElTRURfMTAwMDBiYXNlUl9GRUMgKDEgPDwgMjApCiAjZGVmaW5lIEFEVkVSVElTRURfMjAwMDBiYXNlTUxEMl9GdWxsICgxIDw8IDIxKQotI2RlZmluZSBBRFZFUlRJU0VEXzIwMDAwYmFzZUtSMl9GdWxsICgxIDw8IDIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF8yMDAwMGJhc2VLUjJfRnVsbCAoMSA8PCAyMikKICNkZWZpbmUgQURWRVJUSVNFRF80MDAwMGJhc2VLUjRfRnVsbCAoMSA8PCAyMykKICNkZWZpbmUgQURWRVJUSVNFRF80MDAwMGJhc2VDUjRfRnVsbCAoMSA8PCAyNCkKICNkZWZpbmUgQURWRVJUSVNFRF80MDAwMGJhc2VTUjRfRnVsbCAoMSA8PCAyNSkKLSNkZWZpbmUgQURWRVJUSVNFRF80MDAwMGJhc2VMUjRfRnVsbCAoMSA8PCAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFEVkVSVElTRURfNDAwMDBiYXNlTFI0X0Z1bGwgKDEgPDwgMjYpCiAjZGVmaW5lIFNQRUVEXzEwIDEwCiAjZGVmaW5lIFNQRUVEXzEwMCAxMDAKICNkZWZpbmUgU1BFRURfMTAwMCAxMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTUEVFRF8yNTAwIDI1MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQRUVEXzEwMDAwIDEwMDAwCi0jZGVmaW5lIFNQRUVEX1VOS05PV04gLTEKKyNkZWZpbmUgU1BFRURfVU5LTk9XTiAtIDEKICNkZWZpbmUgRFVQTEVYX0hBTEYgMHgwMAotI2RlZmluZSBEVVBMRVhfRlVMTCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEVVBMRVhfRlVMTCAweDAxCiAjZGVmaW5lIERVUExFWF9VTktOT1dOIDB4ZmYKICNkZWZpbmUgUE9SVF9UUCAweDAwCiAjZGVmaW5lIFBPUlRfQVVJIDB4MDEKLSNkZWZpbmUgUE9SVF9NSUkgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUE9SVF9NSUkgMHgwMgogI2RlZmluZSBQT1JUX0ZJQlJFIDB4MDMKICNkZWZpbmUgUE9SVF9CTkMgMHgwNAogI2RlZmluZSBQT1JUX0RBIDB4MDUKLSNkZWZpbmUgUE9SVF9OT05FIDB4ZWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBPUlRfTk9ORSAweGVmCiAjZGVmaW5lIFBPUlRfT1RIRVIgMHhmZgogI2RlZmluZSBYQ1ZSX0lOVEVSTkFMIDB4MDAKICNkZWZpbmUgWENWUl9FWFRFUk5BTCAweDAxCi0jZGVmaW5lIFhDVlJfRFVNTVkxIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFhDVlJfRFVNTVkxIDB4MDIKICNkZWZpbmUgWENWUl9EVU1NWTIgMHgwMwogI2RlZmluZSBYQ1ZSX0RVTU1ZMyAweDA0CiAjZGVmaW5lIEFVVE9ORUdfRElTQUJMRSAweDAwCi0jZGVmaW5lIEFVVE9ORUdfRU5BQkxFIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVVE9ORUdfRU5BQkxFIDB4MDEKICNkZWZpbmUgRVRIX1RQX01ESV9JTlZBTElEIDB4MDAKICNkZWZpbmUgRVRIX1RQX01ESSAweDAxCiAjZGVmaW5lIEVUSF9UUF9NRElfWCAweDAyCi0jZGVmaW5lIEVUSF9UUF9NRElfQVVUTyAweDAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhfVFBfTURJX0FVVE8gMHgwMwogI2RlZmluZSBXQUtFX1BIWSAoMSA8PCAwKQogI2RlZmluZSBXQUtFX1VDQVNUICgxIDw8IDEpCiAjZGVmaW5lIFdBS0VfTUNBU1QgKDEgPDwgMikKLSNkZWZpbmUgV0FLRV9CQ0FTVCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgV0FLRV9CQ0FTVCAoMSA8PCAzKQogI2RlZmluZSBXQUtFX0FSUCAoMSA8PCA0KQogI2RlZmluZSBXQUtFX01BR0lDICgxIDw8IDUpCiAjZGVmaW5lIFdBS0VfTUFHSUNTRUNVUkUgKDEgPDwgNikKLSNkZWZpbmUgVENQX1Y0X0ZMT1cgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVENQX1Y0X0ZMT1cgMHgwMQogI2RlZmluZSBVRFBfVjRfRkxPVyAweDAyCiAjZGVmaW5lIFNDVFBfVjRfRkxPVyAweDAzCiAjZGVmaW5lIEFIX0VTUF9WNF9GTE9XIDB4MDQKLSNkZWZpbmUgVENQX1Y2X0ZMT1cgMHgwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVENQX1Y2X0ZMT1cgMHgwNQogI2RlZmluZSBVRFBfVjZfRkxPVyAweDA2CiAjZGVmaW5lIFNDVFBfVjZfRkxPVyAweDA3CiAjZGVmaW5lIEFIX0VTUF9WNl9GTE9XIDB4MDgKLSNkZWZpbmUgQUhfVjRfRkxPVyAweDA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBSF9WNF9GTE9XIDB4MDkKICNkZWZpbmUgRVNQX1Y0X0ZMT1cgMHgwYQogI2RlZmluZSBBSF9WNl9GTE9XIDB4MGIKICNkZWZpbmUgRVNQX1Y2X0ZMT1cgMHgwYwotI2RlZmluZSBJUF9VU0VSX0ZMT1cgMHgwZAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBfVVNFUl9GTE9XIDB4MGQKICNkZWZpbmUgSVBWNF9GTE9XIDB4MTAKICNkZWZpbmUgSVBWNl9GTE9XIDB4MTEKICNkZWZpbmUgRVRIRVJfRkxPVyAweDEyCi0jZGVmaW5lIEZMT1dfRVhUIDB4ODAwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZMT1dfRVhUIDB4ODAwMDAwMDAKICNkZWZpbmUgRkxPV19NQUNfRVhUIDB4NDAwMDAwMDAKICNkZWZpbmUgUlhIX0wyREEgKDEgPDwgMSkKICNkZWZpbmUgUlhIX1ZMQU4gKDEgPDwgMikKLSNkZWZpbmUgUlhIX0wzX1BST1RPICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSWEhfTDNfUFJPVE8gKDEgPDwgMykKICNkZWZpbmUgUlhIX0lQX1NSQyAoMSA8PCA0KQogI2RlZmluZSBSWEhfSVBfRFNUICgxIDw8IDUpCiAjZGVmaW5lIFJYSF9MNF9CXzBfMSAoMSA8PCA2KQotI2RlZmluZSBSWEhfTDRfQl8yXzMgKDEgPDwgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJYSF9MNF9CXzJfMyAoMSA8PCA3KQogI2RlZmluZSBSWEhfRElTQ0FSRCAoMSA8PCAzMSkKICNkZWZpbmUgUlhfQ0xTX0ZMT1dfRElTQyAweGZmZmZmZmZmZmZmZmZmZmZVTEwKICNkZWZpbmUgUlhfQ0xTX0xPQ19TUEVDSUFMIDB4ODAwMDAwMDAKLSNkZWZpbmUgUlhfQ0xTX0xPQ19BTlkgMHhmZmZmZmZmZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUlhfQ0xTX0xPQ19BTlkgMHhmZmZmZmZmZgogI2RlZmluZSBSWF9DTFNfTE9DX0ZJUlNUIDB4ZmZmZmZmZmUKICNkZWZpbmUgUlhfQ0xTX0xPQ19MQVNUIDB4ZmZmZmZmZmQKICNkZWZpbmUgRVRIX01PRFVMRV9TRkZfODA3OSAweDEKLSNkZWZpbmUgRVRIX01PRFVMRV9TRkZfODA3OV9MRU4gMjU2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhfTU9EVUxFX1NGRl84MDc5X0xFTiAyNTYKICNkZWZpbmUgRVRIX01PRFVMRV9TRkZfODQ3MiAweDIKICNkZWZpbmUgRVRIX01PRFVMRV9TRkZfODQ3Ml9MRU4gNTEyCiBlbnVtIGV0aHRvb2xfcmVzZXRfZmxhZ3MgewotIEVUSF9SRVNFVF9NR01UID0gMSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFVEhfUkVTRVRfSVJRID0gMSA8PCAxLAotIEVUSF9SRVNFVF9ETUEgPSAxIDw8IDIsCi0gRVRIX1JFU0VUX0ZJTFRFUiA9IDEgPDwgMywKLSBFVEhfUkVTRVRfT0ZGTE9BRCA9IDEgPDwgNCwKKyAgRVRIX1JFU0VUX01HTVQgPSAxIDw8IDAsCisgIEVUSF9SRVNFVF9JUlEgPSAxIDw8IDEsCisgIEVUSF9SRVNFVF9ETUEgPSAxIDw8IDIsCisgIEVUSF9SRVNFVF9GSUxURVIgPSAxIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVUSF9SRVNFVF9NQUMgPSAxIDw8IDUsCi0gRVRIX1JFU0VUX1BIWSA9IDEgPDwgNiwKLSBFVEhfUkVTRVRfUkFNID0gMSA8PCA3LAotIEVUSF9SRVNFVF9ERURJQ0FURUQgPSAweDAwMDBmZmZmLAorICBFVEhfUkVTRVRfT0ZGTE9BRCA9IDEgPDwgNCwKKyAgRVRIX1JFU0VUX01BQyA9IDEgPDwgNSwKKyAgRVRIX1JFU0VUX1BIWSA9IDEgPDwgNiwKKyAgRVRIX1JFU0VUX1JBTSA9IDEgPDwgNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVRIX1JFU0VUX0FMTCA9IDB4ZmZmZmZmZmYsCisgIEVUSF9SRVNFVF9ERURJQ0FURUQgPSAweDAwMDBmZmZmLAorICBFVEhfUkVTRVRfQUxMID0gMHhmZmZmZmZmZiwKIH07CiAjZGVmaW5lIEVUSF9SRVNFVF9TSEFSRURfU0hJRlQgMTYKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldmVudHBvbGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXZlbnRwb2xsLmgKaW5kZXggOWI1YWFkYi4uOWYzMjlmNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldmVudHBvbGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2V2ZW50cG9sbC5oCkBAIC0zNyw4ICszNyw4IEBACiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZXBvbGxfZXZlbnQgewotIF9fdTMyIGV2ZW50czsKLSBfX3U2NCBkYXRhOworICBfX3UzMiBldmVudHM7CisgIF9fdTY0IGRhdGE7CiB9IEVQT0xMX1BBQ0tFRDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFsbG9jLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZhbGxvYy5oCmluZGV4IDgwYTRjMjkuLjllYTBiMjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFsbG9jLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYWxsb2MuaApAQCAtMjIsNCArMjIsNyBAQAogI2RlZmluZSBGQUxMT0NfRkxfUFVOQ0hfSE9MRSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQUxMT0NfRkxfTk9fSElERV9TVEFMRSAweDA0CisjZGVmaW5lIEZBTExPQ19GTF9DT0xMQVBTRV9SQU5HRSAweDA4CisjZGVmaW5lIEZBTExPQ19GTF9aRVJPX1JBTkdFIDB4MTAKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFub3RpZnkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFub3RpZnkuaAppbmRleCA2YjM0YTdjLi4wZTM0Y2M3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Zhbm90aWZ5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYW5vdGlmeS5oCkBAIC0zOSwxMSArMzksMTEgQEAKICNkZWZpbmUgRkFOX0NMQVNTX05PVElGIDB4MDAwMDAwMDAKICNkZWZpbmUgRkFOX0NMQVNTX0NPTlRFTlQgMHgwMDAwMDAwNAogI2RlZmluZSBGQU5fQ0xBU1NfUFJFX0NPTlRFTlQgMHgwMDAwMDAwOAotI2RlZmluZSBGQU5fQUxMX0NMQVNTX0JJVFMgKEZBTl9DTEFTU19OT1RJRiB8IEZBTl9DTEFTU19DT05URU5UIHwgICBGQU5fQ0xBU1NfUFJFX0NPTlRFTlQpCisjZGVmaW5lIEZBTl9BTExfQ0xBU1NfQklUUyAoRkFOX0NMQVNTX05PVElGIHwgRkFOX0NMQVNTX0NPTlRFTlQgfCBGQU5fQ0xBU1NfUFJFX0NPTlRFTlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQU5fVU5MSU1JVEVEX1FVRVVFIDB4MDAwMDAwMTAKICNkZWZpbmUgRkFOX1VOTElNSVRFRF9NQVJLUyAweDAwMDAwMDIwCi0jZGVmaW5lIEZBTl9BTExfSU5JVF9GTEFHUyAoRkFOX0NMT0VYRUMgfCBGQU5fTk9OQkxPQ0sgfCAgIEZBTl9BTExfQ0xBU1NfQklUUyB8IEZBTl9VTkxJTUlURURfUVVFVUUgfCAgRkFOX1VOTElNSVRFRF9NQVJLUykKKyNkZWZpbmUgRkFOX0FMTF9JTklUX0ZMQUdTIChGQU5fQ0xPRVhFQyB8IEZBTl9OT05CTE9DSyB8IEZBTl9BTExfQ0xBU1NfQklUUyB8IEZBTl9VTkxJTUlURURfUVVFVUUgfCBGQU5fVU5MSU1JVEVEX01BUktTKQogI2RlZmluZSBGQU5fTUFSS19BREQgMHgwMDAwMDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkFOX01BUktfUkVNT1ZFIDB4MDAwMDAwMDIKQEAgLTU0LDM1ICs1NCwzNSBAQAogI2RlZmluZSBGQU5fTUFSS19JR05PUkVEX01BU0sgMHgwMDAwMDAyMAogI2RlZmluZSBGQU5fTUFSS19JR05PUkVEX1NVUlZfTU9ESUZZIDB4MDAwMDAwNDAKICNkZWZpbmUgRkFOX01BUktfRkxVU0ggMHgwMDAwMDA4MAotI2RlZmluZSBGQU5fQUxMX01BUktfRkxBR1MgKEZBTl9NQVJLX0FERCB8ICBGQU5fTUFSS19SRU1PVkUgfCAgRkFOX01BUktfRE9OVF9GT0xMT1cgfCAgRkFOX01BUktfT05MWURJUiB8ICBGQU5fTUFSS19NT1VOVCB8ICBGQU5fTUFSS19JR05PUkVEX01BU0sgfCAgRkFOX01BUktfSUdOT1JFRF9TVVJWX01PRElGWSB8ICBGQU5fTUFSS19GTFVTSCkKKyNkZWZpbmUgRkFOX0FMTF9NQVJLX0ZMQUdTIChGQU5fTUFSS19BREQgfCBGQU5fTUFSS19SRU1PVkUgfCBGQU5fTUFSS19ET05UX0ZPTExPVyB8IEZBTl9NQVJLX09OTFlESVIgfCBGQU5fTUFSS19NT1VOVCB8IEZBTl9NQVJLX0lHTk9SRURfTUFTSyB8IEZBTl9NQVJLX0lHTk9SRURfU1VSVl9NT0RJRlkgfCBGQU5fTUFSS19GTFVTSCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZBTl9BTExfRVZFTlRTIChGQU5fQUNDRVNTIHwgIEZBTl9NT0RJRlkgfCAgRkFOX0NMT1NFIHwgIEZBTl9PUEVOKQotI2RlZmluZSBGQU5fQUxMX1BFUk1fRVZFTlRTIChGQU5fT1BFTl9QRVJNIHwgIEZBTl9BQ0NFU1NfUEVSTSkKLSNkZWZpbmUgRkFOX0FMTF9PVVRHT0lOR19FVkVOVFMgKEZBTl9BTExfRVZFTlRTIHwgIEZBTl9BTExfUEVSTV9FVkVOVFMgfCAgRkFOX1FfT1ZFUkZMT1cpCisjZGVmaW5lIEZBTl9BTExfRVZFTlRTIChGQU5fQUNDRVNTIHwgRkFOX01PRElGWSB8IEZBTl9DTE9TRSB8IEZBTl9PUEVOKQorI2RlZmluZSBGQU5fQUxMX1BFUk1fRVZFTlRTIChGQU5fT1BFTl9QRVJNIHwgRkFOX0FDQ0VTU19QRVJNKQorI2RlZmluZSBGQU5fQUxMX09VVEdPSU5HX0VWRU5UUyAoRkFOX0FMTF9FVkVOVFMgfCBGQU5fQUxMX1BFUk1fRVZFTlRTIHwgRkFOX1FfT1ZFUkZMT1cpCiAjZGVmaW5lIEZBTk9USUZZX01FVEFEQVRBX1ZFUlNJT04gMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmYW5vdGlmeV9ldmVudF9tZXRhZGF0YSB7Ci0gX191MzIgZXZlbnRfbGVuOwotIF9fdTggdmVyczsKLSBfX3U4IHJlc2VydmVkOworICBfX3UzMiBldmVudF9sZW47CisgIF9fdTggdmVyczsKKyAgX191OCByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWV0YWRhdGFfbGVuOwotIF9fYWxpZ25lZF91NjQgbWFzazsKLSBfX3MzMiBmZDsKLSBfX3MzMiBwaWQ7CisgIF9fdTE2IG1ldGFkYXRhX2xlbjsKKyAgX19hbGlnbmVkX3U2NCBtYXNrOworICBfX3MzMiBmZDsKKyAgX19zMzIgcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmFub3RpZnlfcmVzcG9uc2UgewotIF9fczMyIGZkOwotIF9fdTMyIHJlc3BvbnNlOworICBfX3MzMiBmZDsKKyAgX191MzIgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRkFOX0FMTE9XIDB4MDEKICNkZWZpbmUgRkFOX0RFTlkgMHgwMgotI2RlZmluZSBGQU5fTk9GRCAtMQorI2RlZmluZSBGQU5fTk9GRCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBTl9FVkVOVF9NRVRBREFUQV9MRU4gKHNpemVvZihzdHJ1Y3QgZmFub3RpZnlfZXZlbnRfbWV0YWRhdGEpKQotI2RlZmluZSBGQU5fRVZFTlRfTkVYVChtZXRhLCBsZW4pICgobGVuKSAtPSAobWV0YSktPmV2ZW50X2xlbiwgICAoc3RydWN0IGZhbm90aWZ5X2V2ZW50X21ldGFkYXRhKikoKChjaGFyICopKG1ldGEpKSArICAgKG1ldGEpLT5ldmVudF9sZW4pKQotI2RlZmluZSBGQU5fRVZFTlRfT0sobWV0YSwgbGVuKSAoKGxvbmcpKGxlbikgPj0gKGxvbmcpRkFOX0VWRU5UX01FVEFEQVRBX0xFTiAmJiAgIChsb25nKShtZXRhKS0+ZXZlbnRfbGVuID49IChsb25nKUZBTl9FVkVOVF9NRVRBREFUQV9MRU4gJiYgICAobG9uZykobWV0YSktPmV2ZW50X2xlbiA8PSAobG9uZykobGVuKSkKKyNkZWZpbmUgRkFOX0VWRU5UX05FWFQobWV0YSxsZW4pICgobGVuKSAtPSAobWV0YSktPmV2ZW50X2xlbiwgKHN0cnVjdCBmYW5vdGlmeV9ldmVudF9tZXRhZGF0YSAqKSAoKChjaGFyICopIChtZXRhKSkgKyAobWV0YSktPmV2ZW50X2xlbikpCisjZGVmaW5lIEZBTl9FVkVOVF9PSyhtZXRhLGxlbikgKChsb25nKSAobGVuKSA+PSAobG9uZykgRkFOX0VWRU5UX01FVEFEQVRBX0xFTiAmJiAobG9uZykgKG1ldGEpLT5ldmVudF9sZW4gPj0gKGxvbmcpIEZBTl9FVkVOVF9NRVRBREFUQV9MRU4gJiYgKGxvbmcpIChtZXRhKS0+ZXZlbnRfbGVuIDw9IChsb25nKSAobGVuKSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmIuaAppbmRleCAxNmIzNzU1Li4zOWJiM2Y0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYi5oCkBAIC0xODMsMzEgKzE4MywzMSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkJfQ0FQX0ZPVVJDQyAxCiBzdHJ1Y3QgZmJfZml4X3NjcmVlbmluZm8gewotIGNoYXIgaWRbMTZdOwotIHVuc2lnbmVkIGxvbmcgc21lbV9zdGFydDsKKyAgY2hhciBpZFsxNl07CisgIHVuc2lnbmVkIGxvbmcgc21lbV9zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc21lbV9sZW47Ci0gX191MzIgdHlwZTsKLSBfX3UzMiB0eXBlX2F1eDsKLSBfX3UzMiB2aXN1YWw7CisgIF9fdTMyIHNtZW1fbGVuOworICBfX3UzMiB0eXBlOworICBfX3UzMiB0eXBlX2F1eDsKKyAgX191MzIgdmlzdWFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB4cGFuc3RlcDsKLSBfX3UxNiB5cGFuc3RlcDsKLSBfX3UxNiB5d3JhcHN0ZXA7Ci0gX191MzIgbGluZV9sZW5ndGg7CisgIF9fdTE2IHhwYW5zdGVwOworICBfX3UxNiB5cGFuc3RlcDsKKyAgX191MTYgeXdyYXBzdGVwOworICBfX3UzMiBsaW5lX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtbWlvX3N0YXJ0OwotIF9fdTMyIG1taW9fbGVuOwotIF9fdTMyIGFjY2VsOwotIF9fdTE2IGNhcGFiaWxpdGllczsKKyAgdW5zaWduZWQgbG9uZyBtbWlvX3N0YXJ0OworICBfX3UzMiBtbWlvX2xlbjsKKyAgX191MzIgYWNjZWw7CisgIF9fdTE2IGNhcGFiaWxpdGllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmVzZXJ2ZWRbMl07CisgIF9fdTE2IHJlc2VydmVkWzJdOwogfTsKIHN0cnVjdCBmYl9iaXRmaWVsZCB7Ci0gX191MzIgb2Zmc2V0OworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiBtc2JfcmlnaHQ7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgbXNiX3JpZ2h0OwogfTsKICNkZWZpbmUgRkJfTk9OU1REX0hBTSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMjQ3LDYxICsyNDcsNjEgQEAKICNkZWZpbmUgRkJfUk9UQVRFX1VEIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZCX1JPVEFURV9DQ1cgMwotI2RlZmluZSBQSUNPUzJLSFooYSkgKDEwMDAwMDAwMDBVTC8oYSkpCi0jZGVmaW5lIEtIWjJQSUNPUyhhKSAoMTAwMDAwMDAwMFVMLyhhKSkKKyNkZWZpbmUgUElDT1MyS0haKGEpICgxMDAwMDAwMDAwVUwgLyAoYSkpCisjZGVmaW5lIEtIWjJQSUNPUyhhKSAoMTAwMDAwMDAwMFVMIC8gKGEpKQogc3RydWN0IGZiX3Zhcl9zY3JlZW5pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgeHJlczsKLSBfX3UzMiB5cmVzOwotIF9fdTMyIHhyZXNfdmlydHVhbDsKLSBfX3UzMiB5cmVzX3ZpcnR1YWw7CisgIF9fdTMyIHhyZXM7CisgIF9fdTMyIHlyZXM7CisgIF9fdTMyIHhyZXNfdmlydHVhbDsKKyAgX191MzIgeXJlc192aXJ0dWFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB4b2Zmc2V0OwotIF9fdTMyIHlvZmZzZXQ7Ci0gX191MzIgYml0c19wZXJfcGl4ZWw7Ci0gX191MzIgZ3JheXNjYWxlOworICBfX3UzMiB4b2Zmc2V0OworICBfX3UzMiB5b2Zmc2V0OworICBfX3UzMiBiaXRzX3Blcl9waXhlbDsKKyAgX191MzIgZ3JheXNjYWxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmJfYml0ZmllbGQgcmVkOwotIHN0cnVjdCBmYl9iaXRmaWVsZCBncmVlbjsKLSBzdHJ1Y3QgZmJfYml0ZmllbGQgYmx1ZTsKLSBzdHJ1Y3QgZmJfYml0ZmllbGQgdHJhbnNwOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgcmVkOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgZ3JlZW47CisgIHN0cnVjdCBmYl9iaXRmaWVsZCBibHVlOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgdHJhbnNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBub25zdGQ7Ci0gX191MzIgYWN0aXZhdGU7Ci0gX191MzIgaGVpZ2h0OwotIF9fdTMyIHdpZHRoOworICBfX3UzMiBub25zdGQ7CisgIF9fdTMyIGFjdGl2YXRlOworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHdpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhY2NlbF9mbGFnczsKLSBfX3UzMiBwaXhjbG9jazsKLSBfX3UzMiBsZWZ0X21hcmdpbjsKLSBfX3UzMiByaWdodF9tYXJnaW47CisgIF9fdTMyIGFjY2VsX2ZsYWdzOworICBfX3UzMiBwaXhjbG9jazsKKyAgX191MzIgbGVmdF9tYXJnaW47CisgIF9fdTMyIHJpZ2h0X21hcmdpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdXBwZXJfbWFyZ2luOwotIF9fdTMyIGxvd2VyX21hcmdpbjsKLSBfX3UzMiBoc3luY19sZW47Ci0gX191MzIgdnN5bmNfbGVuOworICBfX3UzMiB1cHBlcl9tYXJnaW47CisgIF9fdTMyIGxvd2VyX21hcmdpbjsKKyAgX191MzIgaHN5bmNfbGVuOworICBfX3UzMiB2c3luY19sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5bmM7Ci0gX191MzIgdm1vZGU7Ci0gX191MzIgcm90YXRlOwotIF9fdTMyIGNvbG9yc3BhY2U7CisgIF9fdTMyIHN5bmM7CisgIF9fdTMyIHZtb2RlOworICBfX3UzMiByb3RhdGU7CisgIF9fdTMyIGNvbG9yc3BhY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzRdOworICBfX3UzMiByZXNlcnZlZFs0XTsKIH07CiBzdHJ1Y3QgZmJfY21hcCB7Ci0gX191MzIgc3RhcnQ7CisgIF9fdTMyIHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gX191MTYgKnJlZDsKLSBfX3UxNiAqZ3JlZW47Ci0gX191MTYgKmJsdWU7CisgIF9fdTMyIGxlbjsKKyAgX191MTYgKiByZWQ7CisgIF9fdTE2ICogZ3JlZW47CisgIF9fdTE2ICogYmx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgKnRyYW5zcDsKKyAgX191MTYgKiB0cmFuc3A7CiB9Owogc3RydWN0IGZiX2NvbjJmYm1hcCB7Ci0gX191MzIgY29uc29sZTsKKyAgX191MzIgY29uc29sZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnJhbWVidWZmZXI7CisgIF9fdTMyIGZyYW1lYnVmZmVyOwogfTsKICNkZWZpbmUgVkVTQV9OT19CTEFOS0lORyAwCiAjZGVmaW5lIFZFU0FfVlNZTkNfU1VTUEVORCAxCkBAIC0zMDksMTIgKzMwOSwxMiBAQAogI2RlZmluZSBWRVNBX0hTWU5DX1NVU1BFTkQgMgogI2RlZmluZSBWRVNBX1BPV0VSRE9XTiAzCiBlbnVtIHsKLSBGQl9CTEFOS19VTkJMQU5LID0gVkVTQV9OT19CTEFOS0lORywKKyAgRkJfQkxBTktfVU5CTEFOSyA9IFZFU0FfTk9fQkxBTktJTkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZCX0JMQU5LX05PUk1BTCA9IFZFU0FfTk9fQkxBTktJTkcgKyAxLAotIEZCX0JMQU5LX1ZTWU5DX1NVU1BFTkQgPSBWRVNBX1ZTWU5DX1NVU1BFTkQgKyAxLAotIEZCX0JMQU5LX0hTWU5DX1NVU1BFTkQgPSBWRVNBX0hTWU5DX1NVU1BFTkQgKyAxLAotIEZCX0JMQU5LX1BPV0VSRE9XTiA9IFZFU0FfUE9XRVJET1dOICsgMQorICBGQl9CTEFOS19OT1JNQUwgPSBWRVNBX05PX0JMQU5LSU5HICsgMSwKKyAgRkJfQkxBTktfVlNZTkNfU1VTUEVORCA9IFZFU0FfVlNZTkNfU1VTUEVORCArIDEsCisgIEZCX0JMQU5LX0hTWU5DX1NVU1BFTkQgPSBWRVNBX0hTWU5DX1NVU1BFTkQgKyAxLAorICBGQl9CTEFOS19QT1dFUkRPV04gPSBWRVNBX1BPV0VSRE9XTiArIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGQl9WQkxBTktfVkJMQU5LSU5HIDB4MDAxCkBAIC0zMjksNDkgKzMyOSw0OSBAQAogI2RlZmluZSBGQl9WQkxBTktfVlNZTkNJTkcgMHgwODAKICNkZWZpbmUgRkJfVkJMQU5LX0hBVkVfVlNZTkMgMHgxMDAKIHN0cnVjdCBmYl92YmxhbmsgewotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY291bnQ7Ci0gX191MzIgdmNvdW50OwotIF9fdTMyIGhjb3VudDsKLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIHZjb3VudDsKKyAgX191MzIgaGNvdW50OworICBfX3UzMiByZXNlcnZlZFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBST1BfQ09QWSAwCiAjZGVmaW5lIFJPUF9YT1IgMQogc3RydWN0IGZiX2NvcHlhcmVhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHg7Ci0gX191MzIgZHk7Ci0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OworICBfX3UzMiBkeDsKKyAgX191MzIgZHk7CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN4OwotIF9fdTMyIHN5OworICBfX3UzMiBzeDsKKyAgX191MzIgc3k7CiB9Owogc3RydWN0IGZiX2ZpbGxyZWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHg7Ci0gX191MzIgZHk7Ci0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OworICBfX3UzMiBkeDsKKyAgX191MzIgZHk7CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvbG9yOwotIF9fdTMyIHJvcDsKKyAgX191MzIgY29sb3I7CisgIF9fdTMyIHJvcDsKIH07CiBzdHJ1Y3QgZmJfaW1hZ2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkeDsKLSBfX3UzMiBkeTsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIGR4OworICBfX3UzMiBkeTsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmdfY29sb3I7Ci0gX191MzIgYmdfY29sb3I7Ci0gX191OCBkZXB0aDsKLSBjb25zdCBjaGFyICpkYXRhOworICBfX3UzMiBmZ19jb2xvcjsKKyAgX191MzIgYmdfY29sb3I7CisgIF9fdTggZGVwdGg7CisgIGNvbnN0IGNoYXIgKiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmJfY21hcCBjbWFwOworICBzdHJ1Y3QgZmJfY21hcCBjbWFwOwogfTsKICNkZWZpbmUgRkJfQ1VSX1NFVElNQUdFIDB4MDEKICNkZWZpbmUgRkJfQ1VSX1NFVFBPUyAweDAyCkBAIC0zODMsMTcgKzM4MywxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkJfQ1VSX1NFVEFMTCAweEZGCiBzdHJ1Y3QgZmJjdXJwb3MgewotIF9fdTE2IHgsIHk7CisgIF9fdTE2IHgsIHk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmYl9jdXJzb3IgewotIF9fdTE2IHNldDsKLSBfX3UxNiBlbmFibGU7Ci0gX191MTYgcm9wOworICBfX3UxNiBzZXQ7CisgIF9fdTE2IGVuYWJsZTsKKyAgX191MTYgcm9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb25zdCBjaGFyICptYXNrOwotIHN0cnVjdCBmYmN1cnBvcyBob3Q7Ci0gc3RydWN0IGZiX2ltYWdlIGltYWdlOworICBjb25zdCBjaGFyICogbWFzazsKKyAgc3RydWN0IGZiY3VycG9zIGhvdDsKKyAgc3RydWN0IGZiX2ltYWdlIGltYWdlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmNudGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmNudGwuaAppbmRleCBmYzE4ZDg3Li5iODg4ZGM5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZjbnRsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mY250bC5oCkBAIC0yNCwyNSArMjQsMzIgQEAKICNkZWZpbmUgRl9HRVRMRUFTRSAoRl9MSU5VWF9TUEVDSUZJQ19CQVNFICsgMSkKICNkZWZpbmUgRl9DQU5DRUxMSyAoRl9MSU5VWF9TUEVDSUZJQ19CQVNFICsgNSkKICNkZWZpbmUgRl9EVVBGRF9DTE9FWEVDIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyA2KQotI2RlZmluZSBGX05PVElGWSAoRl9MSU5VWF9TUEVDSUZJQ19CQVNFKzIpCisjZGVmaW5lIEZfTk9USUZZIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRl9TRVRQSVBFX1NaIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyA3KQogI2RlZmluZSBGX0dFVFBJUEVfU1ogKEZfTElOVVhfU1BFQ0lGSUNfQkFTRSArIDgpCisjZGVmaW5lIEZfQUREX1NFQUxTIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyA5KQorI2RlZmluZSBGX0dFVF9TRUFMUyAoRl9MSU5VWF9TUEVDSUZJQ19CQVNFICsgMTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGX1NFQUxfU0VBTCAweDAwMDEKKyNkZWZpbmUgRl9TRUFMX1NIUklOSyAweDAwMDIKKyNkZWZpbmUgRl9TRUFMX0dST1cgMHgwMDA0CisjZGVmaW5lIEZfU0VBTF9XUklURSAweDAwMDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEROX0FDQ0VTUyAweDAwMDAwMDAxCiAjZGVmaW5lIEROX01PRElGWSAweDAwMDAwMDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETl9DUkVBVEUgMHgwMDAwMDAwNAogI2RlZmluZSBETl9ERUxFVEUgMHgwMDAwMDAwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE5fUkVOQU1FIDB4MDAwMDAwMTAKICNkZWZpbmUgRE5fQVRUUklCIDB4MDAwMDAwMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEROX01VTFRJU0hPVCAweDgwMDAwMDAwCi0jZGVmaW5lIEFUX0ZEQ1dEIC0xMDAKKyNkZWZpbmUgQVRfRkRDV0QgLSAxMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUX1NZTUxJTktfTk9GT0xMT1cgMHgxMDAKICNkZWZpbmUgQVRfUkVNT1ZFRElSIDB4MjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVF9TWU1MSU5LX0ZPTExPVyAweDQwMAogI2RlZmluZSBBVF9OT19BVVRPTU9VTlQgMHg4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUX0VNUFRZX1BBVEggMHgxMDAwCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkLmgKaW5kZXggY2ZjODJhNi4uMGI5N2JjMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmQuaApAQCAtMjIsMTIgKzIyLDcgQEAKICNpbmNsdWRlIDxsaW51eC9jb21waWxlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmbG9wcHlfc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgc2l6ZSwKLSBzZWN0LAotIGhlYWQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRyYWNrLAotIHN0cmV0Y2g7CisgIHVuc2lnbmVkIGludCBzaXplLCBzZWN0LCBoZWFkLCB0cmFjaywgc3RyZXRjaDsKICNkZWZpbmUgRkRfU1RSRVRDSCAxCiAjZGVmaW5lIEZEX1NXQVBTSURFUyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzYsMjE5ICszMSwyMTAgQEAKICNkZWZpbmUgRkRfTUtTRUNUQkFTRShzKSAoKChzKSBeIDEpIDw8IDIpCiAjZGVmaW5lIEZEX1NFQ1RCQVNFKGZsb3BweSkgKCgoKGZsb3BweSktPnN0cmV0Y2ggJiBGRF9TRUNUQkFTRU1BU0spID4+IDIpIF4gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBnYXAsCi0gcmF0ZSwKKyAgdW5zaWduZWQgY2hhciBnYXAsIHJhdGUsCiAjZGVmaW5lIEZEXzJNIDB4NAogI2RlZmluZSBGRF9TSVpFQ09ERU1BU0sgMHgzOAorI2RlZmluZSBGRF9TSVpFQ09ERShmbG9wcHkpICgoKCgoZmxvcHB5KS0+cmF0ZSAmIEZEX1NJWkVDT0RFTUFTSykgPj4gMykgKyAyKSAlIDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGRF9TSVpFQ09ERShmbG9wcHkpICgoKCgoZmxvcHB5KS0+cmF0ZSZGRF9TSVpFQ09ERU1BU0spPj4gMykrIDIpICU4KQotI2RlZmluZSBGRF9TRUNUU0laRShmbG9wcHkpICggKGZsb3BweSktPnJhdGUgJiBGRF8yTSA/ICAgNTEyIDogMTI4IDw8IEZEX1NJWkVDT0RFKGZsb3BweSkgKQorI2RlZmluZSBGRF9TRUNUU0laRShmbG9wcHkpICgoZmxvcHB5KS0+cmF0ZSAmIEZEXzJNID8gNTEyIDogMTI4IDw8IEZEX1NJWkVDT0RFKGZsb3BweSkpCiAjZGVmaW5lIEZEX1BFUlAgMHg0MAotIHNwZWMxLAorICBzcGVjMSwgZm10X2dhcDsKKyAgY29uc3QgY2hhciAqIG5hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZtdF9nYXA7Ci0gY29uc3QgY2hhciAqIG5hbWU7CiB9OwogI2RlZmluZSBGRENMUlBSTSBfSU8oMiwgMHg0MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZEU0VUUFJNIF9JT1coMiwgMHg0Miwgc3RydWN0IGZsb3BweV9zdHJ1Y3QpCiAjZGVmaW5lIEZEU0VUTUVESUFQUk0gRkRTRVRQUk0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZEREVGUFJNIF9JT1coMiwgMHg0Mywgc3RydWN0IGZsb3BweV9zdHJ1Y3QpCiAjZGVmaW5lIEZER0VUUFJNIF9JT1IoMiwgMHgwNCwgc3RydWN0IGZsb3BweV9zdHJ1Y3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRERFRk1FRElBUFJNIEZEREVGUFJNCiAjZGVmaW5lIEZER0VUTUVESUFQUk0gRkRHRVRQUk0KLSNkZWZpbmUgRkRNU0dPTiBfSU8oMiwweDQ1KQotI2RlZmluZSBGRE1TR09GRiBfSU8oMiwweDQ2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRNU0dPTiBfSU8oMiwgMHg0NSkKKyNkZWZpbmUgRkRNU0dPRkYgX0lPKDIsIDB4NDYpCiAjZGVmaW5lIEZEX0ZJTExfQllURSAweEY2CiBzdHJ1Y3QgZm9ybWF0X2Rlc2NyIHsKLSB1bnNpZ25lZCBpbnQgZGV2aWNlLGhlYWQsdHJhY2s7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRkRGTVRCRUcgX0lPKDIsMHg0NykKLSNkZWZpbmUgRkRGTVRUUksgX0lPVygyLDB4NDgsIHN0cnVjdCBmb3JtYXRfZGVzY3IpCi0jZGVmaW5lIEZERk1URU5EIF9JTygyLDB4NDkpCisgIHVuc2lnbmVkIGludCBkZXZpY2UsIGhlYWQsIHRyYWNrOworfTsKKyNkZWZpbmUgRkRGTVRCRUcgX0lPKDIsIDB4NDcpCisjZGVmaW5lIEZERk1UVFJLIF9JT1coMiwgMHg0OCwgc3RydWN0IGZvcm1hdF9kZXNjcikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZERk1URU5EIF9JTygyLCAweDQ5KQogc3RydWN0IGZsb3BweV9tYXhfZXJyb3JzIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50Ci0gYWJvcnQsCi0gcmVhZF90cmFjaywKLSByZXNldCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcmVjYWwsCi0gcmVwb3J0aW5nOworICB1bnNpZ25lZCBpbnQgYWJvcnQsIHJlYWRfdHJhY2ssIHJlc2V0LCByZWNhbCwgcmVwb3J0aW5nOwogfTsKLSNkZWZpbmUgRkRTRVRFTVNHVFJFU0ggX0lPKDIsMHg0YSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZERkxVU0ggX0lPKDIsMHg0YikKKyNkZWZpbmUgRkRTRVRFTVNHVFJFU0ggX0lPKDIsIDB4NGEpCisjZGVmaW5lIEZERkxVU0ggX0lPKDIsIDB4NGIpCiAjZGVmaW5lIEZEU0VUTUFYRVJSUyBfSU9XKDIsIDB4NGMsIHN0cnVjdCBmbG9wcHlfbWF4X2Vycm9ycykKICNkZWZpbmUgRkRHRVRNQVhFUlJTIF9JT1IoMiwgMHgwZSwgc3RydWN0IGZsb3BweV9tYXhfZXJyb3JzKQotdHlwZWRlZiBjaGFyIGZsb3BweV9kcml2ZV9uYW1lWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIGNoYXIgZmxvcHB5X2RyaXZlX25hbWVbMTZdOwogI2RlZmluZSBGREdFVERSVlRZUCBfSU9SKDIsIDB4MGYsIGZsb3BweV9kcml2ZV9uYW1lKQogc3RydWN0IGZsb3BweV9kcml2ZV9wYXJhbXMgewotIHNpZ25lZCBjaGFyIGNtb3M7Ci0gdW5zaWduZWQgbG9uZyBtYXhfZHRyOworICBzaWduZWQgY2hhciBjbW9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGhsdDsKLSB1bnNpZ25lZCBsb25nIGh1dDsKLSB1bnNpZ25lZCBsb25nIHNydDsKLSB1bnNpZ25lZCBsb25nIHNwaW51cDsKKyAgdW5zaWduZWQgbG9uZyBtYXhfZHRyOworICB1bnNpZ25lZCBsb25nIGhsdDsKKyAgdW5zaWduZWQgbG9uZyBodXQ7CisgIHVuc2lnbmVkIGxvbmcgc3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHNwaW5kb3duOwotIHVuc2lnbmVkIGNoYXIgc3BpbmRvd25fb2Zmc2V0OwotIHVuc2lnbmVkIGNoYXIgc2VsZWN0X2RlbGF5OwotIHVuc2lnbmVkIGNoYXIgcnBzOworICB1bnNpZ25lZCBsb25nIHNwaW51cDsKKyAgdW5zaWduZWQgbG9uZyBzcGluZG93bjsKKyAgdW5zaWduZWQgY2hhciBzcGluZG93bl9vZmZzZXQ7CisgIHVuc2lnbmVkIGNoYXIgc2VsZWN0X2RlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHRyYWNrczsKLSB1bnNpZ25lZCBsb25nIHRpbWVvdXQ7Ci0gdW5zaWduZWQgY2hhciBpbnRlcmxlYXZlX3NlY3Q7Ci0gc3RydWN0IGZsb3BweV9tYXhfZXJyb3JzIG1heF9lcnJvcnM7CisgIHVuc2lnbmVkIGNoYXIgcnBzOworICB1bnNpZ25lZCBjaGFyIHRyYWNrczsKKyAgdW5zaWduZWQgbG9uZyB0aW1lb3V0OworICB1bnNpZ25lZCBjaGFyIGludGVybGVhdmVfc2VjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmbGFnczsKKyAgc3RydWN0IGZsb3BweV9tYXhfZXJyb3JzIG1heF9lcnJvcnM7CisgIGNoYXIgZmxhZ3M7CiAjZGVmaW5lIEZURF9NU0cgMHgxMAogI2RlZmluZSBGRF9CUk9LRU5fRENMIDB4MjAKLSNkZWZpbmUgRkRfREVCVUcgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRfREVCVUcgMHgwMgogI2RlZmluZSBGRF9TSUxFTlRfRENMX0NMRUFSIDB4NAogI2RlZmluZSBGRF9JTlZFUlRFRF9EQ0wgMHg4MAotIGNoYXIgcmVhZF90cmFjazsKLSBzaG9ydCBhdXRvZGV0ZWN0WzhdOworICBjaGFyIHJlYWRfdHJhY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjaGVja2ZyZXE7Ci0gaW50IG5hdGl2ZV9mb3JtYXQ7CisgIHNob3J0IGF1dG9kZXRlY3RbOF07CisgIGludCBjaGVja2ZyZXE7CisgIGludCBuYXRpdmVfZm9ybWF0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKKyAgRkRfTkVFRF9UV0FERExFX0JJVCwKKyAgRkRfVkVSSUZZX0JJVCwKKyAgRkRfRElTS19ORVdDSEFOR0VfQklULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRF9ORUVEX1RXQURETEVfQklULAotIEZEX1ZFUklGWV9CSVQsCi0gRkRfRElTS19ORVdDSEFOR0VfQklULAotIEZEX1VOVVNFRF9CSVQsCisgIEZEX1VOVVNFRF9CSVQsCisgIEZEX0RJU0tfQ0hBTkdFRF9CSVQsCisgIEZEX0RJU0tfV1JJVEFCTEVfQklULAorICBGRF9PUEVOX1NIT1VMRF9GQUlMX0JJVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRF9ESVNLX0NIQU5HRURfQklULAotIEZEX0RJU0tfV1JJVEFCTEVfQklULAotIEZEX09QRU5fU0hPVUxEX0ZBSUxfQklUCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRTRVREUlZQUk0gX0lPVygyLCAweDkwLCBzdHJ1Y3QgZmxvcHB5X2RyaXZlX3BhcmFtcykKICNkZWZpbmUgRkRHRVREUlZQUk0gX0lPUigyLCAweDExLCBzdHJ1Y3QgZmxvcHB5X2RyaXZlX3BhcmFtcykKIHN0cnVjdCBmbG9wcHlfZHJpdmVfc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgbG9uZyBmbGFnczsKICNkZWZpbmUgRkRfTkVFRF9UV0FERExFICgxIDw8IEZEX05FRURfVFdBRERMRV9CSVQpCiAjZGVmaW5lIEZEX1ZFUklGWSAoMSA8PCBGRF9WRVJJRllfQklUKQogI2RlZmluZSBGRF9ESVNLX05FV0NIQU5HRSAoMSA8PCBGRF9ESVNLX05FV0NIQU5HRV9CSVQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRF9ESVNLX0NIQU5HRUQgKDEgPDwgRkRfRElTS19DSEFOR0VEX0JJVCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZEX0RJU0tfV1JJVEFCTEUgKDEgPDwgRkRfRElTS19XUklUQUJMRV9CSVQpCi0gdW5zaWduZWQgbG9uZyBzcGludXBfZGF0ZTsKLSB1bnNpZ25lZCBsb25nIHNlbGVjdF9kYXRlOwotIHVuc2lnbmVkIGxvbmcgZmlyc3RfcmVhZF9kYXRlOworICB1bnNpZ25lZCBsb25nIHNwaW51cF9kYXRlOworICB1bnNpZ25lZCBsb25nIHNlbGVjdF9kYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBwcm9iZWRfZm9ybWF0OwotIHNob3J0IHRyYWNrOwotIHNob3J0IG1heGJsb2NrOwotIHNob3J0IG1heHRyYWNrOworICB1bnNpZ25lZCBsb25nIGZpcnN0X3JlYWRfZGF0ZTsKKyAgc2hvcnQgcHJvYmVkX2Zvcm1hdDsKKyAgc2hvcnQgdHJhY2s7CisgIHNob3J0IG1heGJsb2NrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZ2VuZXJhdGlvbjsKLSBpbnQga2VlcF9kYXRhOwotIGludCBmZF9yZWY7Ci0gaW50IGZkX2RldmljZTsKKyAgc2hvcnQgbWF4dHJhY2s7CisgIGludCBnZW5lcmF0aW9uOworICBpbnQga2VlcF9kYXRhOworICBpbnQgZmRfcmVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxhc3RfY2hlY2tlZDsKLSBjaGFyICpkbWFidWY7Ci0gaW50IGJ1ZmJsb2NrczsKKyAgaW50IGZkX2RldmljZTsKKyAgdW5zaWduZWQgbG9uZyBsYXN0X2NoZWNrZWQ7CisgIGNoYXIgKiBkbWFidWY7CisgIGludCBidWZibG9ja3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZER0VURFJWU1RBVCBfSU9SKDIsIDB4MTIsIHN0cnVjdCBmbG9wcHlfZHJpdmVfc3RydWN0KQogI2RlZmluZSBGRFBPTExEUlZTVEFUIF9JT1IoMiwgMHgxMywgc3RydWN0IGZsb3BweV9kcml2ZV9zdHJ1Y3QpCiBlbnVtIHJlc2V0X21vZGUgewotIEZEX1JFU0VUX0lGX05FRURFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkRfUkVTRVRfSUZfUkFXQ01ELAotIEZEX1JFU0VUX0FMV0FZUworICBGRF9SRVNFVF9JRl9ORUVERUQsCisgIEZEX1JFU0VUX0lGX1JBV0NNRCwKKyAgRkRfUkVTRVRfQUxXQVlTCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRSRVNFVCBfSU8oMiwgMHg1NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmxvcHB5X2ZkY19zdGF0ZSB7Ci0gaW50IHNwZWMxOwotIGludCBzcGVjMjsKLSBpbnQgZHRyOworICBpbnQgc3BlYzE7CisgIGludCBzcGVjMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2ZXJzaW9uOwotIHVuc2lnbmVkIGNoYXIgZG9yOwotIHVuc2lnbmVkIGxvbmcgYWRkcmVzczsKLSB1bnNpZ25lZCBpbnQgcmF3Y21kOjI7CisgIGludCBkdHI7CisgIHVuc2lnbmVkIGNoYXIgdmVyc2lvbjsKKyAgdW5zaWduZWQgY2hhciBkb3I7CisgIHVuc2lnbmVkIGxvbmcgYWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlc2V0OjE7Ci0gdW5zaWduZWQgaW50IG5lZWRfY29uZmlndXJlOjE7Ci0gdW5zaWduZWQgaW50IHBlcnBfbW9kZToyOwotIHVuc2lnbmVkIGludCBoYXNfZmlmbzoxOworICB1bnNpZ25lZCBpbnQgcmF3Y21kIDogMjsKKyAgdW5zaWduZWQgaW50IHJlc2V0IDogMTsKKyAgdW5zaWduZWQgaW50IG5lZWRfY29uZmlndXJlIDogMTsKKyAgdW5zaWduZWQgaW50IHBlcnBfbW9kZSA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkcml2ZXJfdmVyc2lvbjsKKyAgdW5zaWduZWQgaW50IGhhc19maWZvIDogMTsKKyAgdW5zaWduZWQgaW50IGRyaXZlcl92ZXJzaW9uOwogI2RlZmluZSBGRF9EUklWRVJfVkVSU0lPTiAweDEwMAotIHVuc2lnbmVkIGNoYXIgdHJhY2tbNF07Ci19OworICB1bnNpZ25lZCBjaGFyIHRyYWNrWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZGVmaW5lIEZER0VURkRDU1RBVCBfSU9SKDIsIDB4MTUsIHN0cnVjdCBmbG9wcHlfZmRjX3N0YXRlKQogc3RydWN0IGZsb3BweV93cml0ZV9lcnJvcnMgewotIHVuc2lnbmVkIGludCB3cml0ZV9lcnJvcnM7Ci0gdW5zaWduZWQgbG9uZyBmaXJzdF9lcnJvcl9zZWN0b3I7CisgIHVuc2lnbmVkIGludCB3cml0ZV9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmaXJzdF9lcnJvcl9nZW5lcmF0aW9uOwotIHVuc2lnbmVkIGxvbmcgbGFzdF9lcnJvcl9zZWN0b3I7Ci0gaW50IGxhc3RfZXJyb3JfZ2VuZXJhdGlvbjsKLSB1bnNpZ25lZCBpbnQgYmFkbmVzczsKKyAgdW5zaWduZWQgbG9uZyBmaXJzdF9lcnJvcl9zZWN0b3I7CisgIGludCBmaXJzdF9lcnJvcl9nZW5lcmF0aW9uOworICB1bnNpZ25lZCBsb25nIGxhc3RfZXJyb3Jfc2VjdG9yOworICBpbnQgbGFzdF9lcnJvcl9nZW5lcmF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IGJhZG5lc3M7CiB9OwogI2RlZmluZSBGRFdFUlJPUkNMUiBfSU8oMiwgMHg1NikKICNkZWZpbmUgRkRXRVJST1JHRVQgX0lPUigyLCAweDE3LCBzdHJ1Y3QgZmxvcHB5X3dyaXRlX2Vycm9ycykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZESEFWRUJBVENIRURSQVdDTUQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmxvcHB5X3Jhd19jbWQgewotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogI2RlZmluZSBGRF9SQVdfUkVBRCAxCi0jZGVmaW5lIEZEX1JBV19XUklURSAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRF9SQVdfV1JJVEUgMgogI2RlZmluZSBGRF9SQVdfTk9fTU9UT1IgNAogI2RlZmluZSBGRF9SQVdfRElTS19DSEFOR0UgNAogI2RlZmluZSBGRF9SQVdfSU5UUiA4Ci0jZGVmaW5lIEZEX1JBV19TUElOIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZEX1JBV19TUElOIDB4MTAKICNkZWZpbmUgRkRfUkFXX05PX01PVE9SX0FGVEVSIDB4MjAKICNkZWZpbmUgRkRfUkFXX05FRURfRElTSyAweDQwCiAjZGVmaW5lIEZEX1JBV19ORUVEX1NFRUsgMHg4MAotI2RlZmluZSBGRF9SQVdfTU9SRSAweDEwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRfUkFXX01PUkUgMHgxMDAKICNkZWZpbmUgRkRfUkFXX1NUT1BfSUZfRkFJTFVSRSAweDIwMAogI2RlZmluZSBGRF9SQVdfU1RPUF9JRl9TVUNDRVNTIDB4NDAwCiAjZGVmaW5lIEZEX1JBV19TT0ZURkFJTFVSRSAweDgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRfUkFXX0ZBSUxVUkUgMHgxMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRfUkFXX0hBUkRGQUlMVVJFIDB4MjAwMDAKLSB2b2lkIF9fdXNlciAqZGF0YTsKLSBjaGFyICprZXJuZWxfZGF0YTsKLSBzdHJ1Y3QgZmxvcHB5X3Jhd19jbWQgKm5leHQ7CisgIHZvaWQgX191c2VyICogZGF0YTsKKyAgY2hhciAqIGtlcm5lbF9kYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGxlbmd0aDsKLSBsb25nIHBoeXNfbGVuZ3RoOwotIGludCBidWZmZXJfbGVuZ3RoOwotIHVuc2lnbmVkIGNoYXIgcmF0ZTsKKyAgc3RydWN0IGZsb3BweV9yYXdfY21kICogbmV4dDsKKyAgbG9uZyBsZW5ndGg7CisgIGxvbmcgcGh5c19sZW5ndGg7CisgIGludCBidWZmZXJfbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNtZF9jb3VudDsKLSB1bnNpZ25lZCBjaGFyIGNtZFsxNl07Ci0gdW5zaWduZWQgY2hhciByZXBseV9jb3VudDsKLSB1bnNpZ25lZCBjaGFyIHJlcGx5WzE2XTsKKyAgdW5zaWduZWQgY2hhciByYXRlOworICB1bnNpZ25lZCBjaGFyIGNtZF9jb3VudDsKKyAgdW5zaWduZWQgY2hhciBjbWRbMTZdOworICB1bnNpZ25lZCBjaGFyIHJlcGx5X2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHJhY2s7Ci0gaW50IHJlc3VsdGNvZGU7Ci0gaW50IHJlc2VydmVkMTsKLSBpbnQgcmVzZXJ2ZWQyOworICB1bnNpZ25lZCBjaGFyIHJlcGx5WzE2XTsKKyAgaW50IHRyYWNrOworICBpbnQgcmVzdWx0Y29kZTsKKyAgaW50IHJlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCByZXNlcnZlZDI7CiB9OwogI2RlZmluZSBGRFJBV0NNRCBfSU8oMiwgMHg1OCkKICNkZWZpbmUgRkRUV0FERExFIF9JTygyLCAweDU5KQotI2RlZmluZSBGREVKRUNUIF9JTygyLCAweDVhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRFSkVDVCBfSU8oMiwgMHg1YSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mZHJlZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mZHJlZy5oCmluZGV4IGQ0NGJkNTQuLmM0ZjNmNWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmRyZWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkcmVnLmgKQEAgLTI0LDEyICsyNCwxMiBAQAogI2Vsc2UKICNkZWZpbmUgRkRfSU9QT1JUIDB4M2YwCiAjZW5kaWYKLSNkZWZpbmUgRkRfU1RBVFVTICg0ICsgRkRfSU9QT1JUICkKKyNkZWZpbmUgRkRfU1RBVFVTICg0ICsgRkRfSU9QT1JUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRkRfREFUQSAoNSArIEZEX0lPUE9SVCApCi0jZGVmaW5lIEZEX0RPUiAoMiArIEZEX0lPUE9SVCApCi0jZGVmaW5lIEZEX0RJUiAoNyArIEZEX0lPUE9SVCApCi0jZGVmaW5lIEZEX0RDUiAoNyArIEZEX0lPUE9SVCApCisjZGVmaW5lIEZEX0RBVEEgKDUgKyBGRF9JT1BPUlQpCisjZGVmaW5lIEZEX0RPUiAoMiArIEZEX0lPUE9SVCkKKyNkZWZpbmUgRkRfRElSICg3ICsgRkRfSU9QT1JUKQorI2RlZmluZSBGRF9EQ1IgKDcgKyBGRF9JT1BPUlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTVEFUVVNfQlVTWU1BU0sgMHgwRgogI2RlZmluZSBTVEFUVVNfQlVTWSAweDEwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpYl9ydWxlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWJfcnVsZXMuaAppbmRleCBhZmU2YmMwLi40OTk1M2VmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpYl9ydWxlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmliX3J1bGVzLmgKQEAgLTMxLDYwICszMSw2MCBAQAogI2RlZmluZSBGSUJfUlVMRV9GSU5EX1NBRERSIDB4MDAwMTAwMDAKIHN0cnVjdCBmaWJfcnVsZV9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZhbWlseTsKLSBfX3U4IGRzdF9sZW47Ci0gX191OCBzcmNfbGVuOwotIF9fdTggdG9zOworICBfX3U4IGZhbWlseTsKKyAgX191OCBkc3RfbGVuOworICBfX3U4IHNyY19sZW47CisgIF9fdTggdG9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRhYmxlOwotIF9fdTggcmVzMTsKLSBfX3U4IHJlczI7Ci0gX191OCBhY3Rpb247CisgIF9fdTggdGFibGU7CisgIF9fdTggcmVzMTsKKyAgX191OCByZXMyOworICBfX3U4IGFjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogfTsKIGVudW0gewotIEZSQV9VTlNQRUMsCisgIEZSQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZSQV9EU1QsCi0gRlJBX1NSQywKLSBGUkFfSUlGTkFNRSwKKyAgRlJBX0RTVCwKKyAgRlJBX1NSQywKKyAgRlJBX0lJRk5BTUUsCiAjZGVmaW5lIEZSQV9JRk5BTUUgRlJBX0lJRk5BTUUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJBX0dPVE8sCi0gRlJBX1VOVVNFRDIsCi0gRlJBX1BSSU9SSVRZLAotIEZSQV9VTlVTRUQzLAorICBGUkFfR09UTywKKyAgRlJBX1VOVVNFRDIsCisgIEZSQV9QUklPUklUWSwKKyAgRlJBX1VOVVNFRDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZSQV9VTlVTRUQ0LAotIEZSQV9VTlVTRUQ1LAotIEZSQV9GV01BUkssCi0gRlJBX0ZMT1csCisgIEZSQV9VTlVTRUQ0LAorICBGUkFfVU5VU0VENSwKKyAgRlJBX0ZXTUFSSywKKyAgRlJBX0ZMT1csCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZSQV9VTlVTRUQ2LAotIEZSQV9TVVBQUkVTU19JRkdST1VQLAotIEZSQV9TVVBQUkVTU19QUkVGSVhMRU4sCi0gRlJBX1RBQkxFLAorICBGUkFfVU5VU0VENiwKKyAgRlJBX1NVUFBSRVNTX0lGR1JPVVAsCisgIEZSQV9TVVBQUkVTU19QUkVGSVhMRU4sCisgIEZSQV9UQUJMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJBX0ZXTUFTSywKLSBGUkFfT0lGTkFNRSwKLSBfX0ZSQV9NQVgKKyAgRlJBX0ZXTUFTSywKKyAgRlJBX09JRk5BTUUsCisgIF9fRlJBX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQV9NQVggKF9fRlJBX01BWCAtIDEpCiBlbnVtIHsKLSBGUl9BQ1RfVU5TUEVDLAotIEZSX0FDVF9UT19UQkwsCisgIEZSX0FDVF9VTlNQRUMsCisgIEZSX0FDVF9UT19UQkwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZSX0FDVF9HT1RPLAotIEZSX0FDVF9OT1AsCi0gRlJfQUNUX1JFUzMsCi0gRlJfQUNUX1JFUzQsCisgIEZSX0FDVF9HT1RPLAorICBGUl9BQ1RfTk9QLAorICBGUl9BQ1RfUkVTMywKKyAgRlJfQUNUX1JFUzQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZSX0FDVF9CTEFDS0hPTEUsCi0gRlJfQUNUX1VOUkVBQ0hBQkxFLAotIEZSX0FDVF9QUk9ISUJJVCwKLSBfX0ZSX0FDVF9NQVgsCisgIEZSX0FDVF9CTEFDS0hPTEUsCisgIEZSX0FDVF9VTlJFQUNIQUJMRSwKKyAgRlJfQUNUX1BST0hJQklULAorICBfX0ZSX0FDVF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRlJfQUNUX01BWCAoX19GUl9BQ1RfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmllbWFwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpZW1hcC5oCmluZGV4IGU0YjQ2YzIuLmQ0MWE4N2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmllbWFwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWVtYXAuaApAQCAtMjEsMjQgKzIxLDI0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBmaWVtYXBfZXh0ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZmVfbG9naWNhbDsKLSBfX3U2NCBmZV9waHlzaWNhbDsKLSBfX3U2NCBmZV9sZW5ndGg7Ci0gX191NjQgZmVfcmVzZXJ2ZWQ2NFsyXTsKKyAgX191NjQgZmVfbG9naWNhbDsKKyAgX191NjQgZmVfcGh5c2ljYWw7CisgIF9fdTY0IGZlX2xlbmd0aDsKKyAgX191NjQgZmVfcmVzZXJ2ZWQ2NFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmVfZmxhZ3M7Ci0gX191MzIgZmVfcmVzZXJ2ZWRbM107CisgIF9fdTMyIGZlX2ZsYWdzOworICBfX3UzMiBmZV9yZXNlcnZlZFszXTsKIH07CiBzdHJ1Y3QgZmllbWFwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZm1fc3RhcnQ7Ci0gX191NjQgZm1fbGVuZ3RoOwotIF9fdTMyIGZtX2ZsYWdzOwotIF9fdTMyIGZtX21hcHBlZF9leHRlbnRzOworICBfX3U2NCBmbV9zdGFydDsKKyAgX191NjQgZm1fbGVuZ3RoOworICBfX3UzMiBmbV9mbGFnczsKKyAgX191MzIgZm1fbWFwcGVkX2V4dGVudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZtX2V4dGVudF9jb3VudDsKLSBfX3UzMiBmbV9yZXNlcnZlZDsKLSBzdHJ1Y3QgZmllbWFwX2V4dGVudCBmbV9leHRlbnRzWzBdOworICBfX3UzMiBmbV9leHRlbnRfY291bnQ7CisgIF9fdTMyIGZtX3Jlc2VydmVkOworICBzdHJ1Y3QgZmllbWFwX2V4dGVudCBmbV9leHRlbnRzWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZJRU1BUF9NQVhfT0ZGU0VUICh+MFVMTCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlsdGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpbHRlci5oCmluZGV4IDhiNzUyNzAuLjQ3NjFmOWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlsdGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWx0ZXIuaApAQCAtMjEsMTEwICsyMSw1OSBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8bGludXgvYnBmX2NvbW1vbi5oPgogI2RlZmluZSBCUEZfTUFKT1JfVkVSU0lPTiAxCiAjZGVmaW5lIEJQRl9NSU5PUl9WRVJTSU9OIDEKIHN0cnVjdCBzb2NrX2ZpbHRlciB7Ci0gX191MTYgY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBqdDsKLSBfX3U4IGpmOwotIF9fdTMyIGs7CisgIF9fdTE2IGNvZGU7CisgIF9fdTgganQ7CisgIF9fdTggamY7CisgIF9fdTMyIGs7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja19mcHJvZyB7Ci0gdW5zaWduZWQgc2hvcnQgbGVuOwotIHN0cnVjdCBzb2NrX2ZpbHRlciBfX3VzZXIgKmZpbHRlcjsKKyAgdW5zaWduZWQgc2hvcnQgbGVuOworICBzdHJ1Y3Qgc29ja19maWx0ZXIgX191c2VyICogZmlsdGVyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfQ0xBU1MoY29kZSkgKChjb2RlKSAmIDB4MDcpCi0jZGVmaW5lIEJQRl9MRCAweDAwCi0jZGVmaW5lIEJQRl9MRFggMHgwMQotI2RlZmluZSBCUEZfU1QgMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX1NUWCAweDAzCi0jZGVmaW5lIEJQRl9BTFUgMHgwNAotI2RlZmluZSBCUEZfSk1QIDB4MDUKLSNkZWZpbmUgQlBGX1JFVCAweDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfTUlTQyAweDA3Ci0jZGVmaW5lIEJQRl9TSVpFKGNvZGUpICgoY29kZSkgJiAweDE4KQotI2RlZmluZSBCUEZfVyAweDAwCi0jZGVmaW5lIEJQRl9IIDB4MDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9CIDB4MTAKLSNkZWZpbmUgQlBGX01PREUoY29kZSkgKChjb2RlKSAmIDB4ZTApCi0jZGVmaW5lIEJQRl9JTU0gMHgwMAotI2RlZmluZSBCUEZfQUJTIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9JTkQgMHg0MAotI2RlZmluZSBCUEZfTUVNIDB4NjAKLSNkZWZpbmUgQlBGX0xFTiAweDgwCi0jZGVmaW5lIEJQRl9NU0ggMHhhMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX09QKGNvZGUpICgoY29kZSkgJiAweGYwKQotI2RlZmluZSBCUEZfQUREIDB4MDAKLSNkZWZpbmUgQlBGX1NVQiAweDEwCi0jZGVmaW5lIEJQRl9NVUwgMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX0RJViAweDMwCi0jZGVmaW5lIEJQRl9PUiAweDQwCi0jZGVmaW5lIEJQRl9BTkQgMHg1MAotI2RlZmluZSBCUEZfTFNIIDB4NjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9SU0ggMHg3MAotI2RlZmluZSBCUEZfTkVHIDB4ODAKLSNkZWZpbmUgQlBGX01PRCAweDkwCi0jZGVmaW5lIEJQRl9YT1IgMHhhMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX0pBIDB4MDAKLSNkZWZpbmUgQlBGX0pFUSAweDEwCi0jZGVmaW5lIEJQRl9KR1QgMHgyMAotI2RlZmluZSBCUEZfSkdFIDB4MzAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9KU0VUIDB4NDAKLSNkZWZpbmUgQlBGX1NSQyhjb2RlKSAoKGNvZGUpICYgMHgwOCkKLSNkZWZpbmUgQlBGX0sgMHgwMAotI2RlZmluZSBCUEZfWCAweDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCUEZfUlZBTChjb2RlKSAoKGNvZGUpICYgMHgxOCkKICNkZWZpbmUgQlBGX0EgMHgxMAogI2RlZmluZSBCUEZfTUlTQ09QKGNvZGUpICgoY29kZSkgJiAweGY4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlBGX1RBWCAweDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCUEZfVFhBIDB4ODAKLSNpZm5kZWYgQlBGX01BWElOU05TCi0jZGVmaW5lIEJQRl9NQVhJTlNOUyA0MDk2Ci0jZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIEJQRl9TVE1UCi0jZGVmaW5lIEJQRl9TVE1UKGNvZGUsIGspIHsgKHVuc2lnbmVkIHNob3J0KShjb2RlKSwgMCwgMCwgayB9CisjZGVmaW5lIEJQRl9TVE1UKGNvZGUsaykgeyAodW5zaWduZWQgc2hvcnQpIChjb2RlKSwgMCwgMCwgayB9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjaWZuZGVmIEJQRl9KVU1QCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfSlVNUChjb2RlLCBrLCBqdCwgamYpIHsgKHVuc2lnbmVkIHNob3J0KShjb2RlKSwganQsIGpmLCBrIH0KKyNkZWZpbmUgQlBGX0pVTVAoY29kZSxrLGp0LGpmKSB7ICh1bnNpZ25lZCBzaG9ydCkgKGNvZGUpLCBqdCwgamYsIGsgfQogI2VuZGlmCi0jZGVmaW5lIEJQRl9NRU1XT1JEUyAxNgotI2RlZmluZSBTS0ZfQURfT0ZGICgtMHgxMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX01FTVdPUkRTIDE2CisjZGVmaW5lIFNLRl9BRF9PRkYgKC0gMHgxMDAwKQogI2RlZmluZSBTS0ZfQURfUFJPVE9DT0wgMAogI2RlZmluZSBTS0ZfQURfUEtUVFlQRSA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTS0ZfQURfSUZJTkRFWCA4CiAjZGVmaW5lIFNLRl9BRF9OTEFUVFIgMTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNLRl9BRF9OTEFUVFJfTkVTVCAxNgogI2RlZmluZSBTS0ZfQURfTUFSSyAyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0tGX0FEX1FVRVVFIDI0CiAjZGVmaW5lIFNLRl9BRF9IQVRZUEUgMjgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNLRl9BRF9SWEhBU0ggMzIKICNkZWZpbmUgU0tGX0FEX0NQVSAzNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0tGX0FEX0FMVV9YT1JfWCA0MAogI2RlZmluZSBTS0ZfQURfVkxBTl9UQUcgNDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNLRl9BRF9WTEFOX1RBR19QUkVTRU5UIDQ4CiAjZGVmaW5lIFNLRl9BRF9QQVlfT0ZGU0VUIDUyCi0jZGVmaW5lIFNLRl9BRF9NQVggNTYKLSNkZWZpbmUgU0tGX05FVF9PRkYgKC0weDEwMDAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNLRl9MTF9PRkYgKC0weDIwMDAwMCkKKyNkZWZpbmUgU0tGX0FEX1JBTkRPTSA1NgorI2RlZmluZSBTS0ZfQURfTUFYIDYwCisjZGVmaW5lIFNLRl9ORVRfT0ZGICgtIDB4MTAwMDAwKQorI2RlZmluZSBTS0ZfTExfT0ZGICgtIDB4MjAwMDAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maXJld2lyZS1jZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpcmV3aXJlLWNkZXYuaAppbmRleCAxMzQyYjA2Li43Y2Y5MDU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpcmV3aXJlLWNkZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpcmV3aXJlLWNkZXYuaApAQCAtMzYsMTAzICszNiwxMDMgQEAKICNkZWZpbmUgRldfQ0RFVl9FVkVOVF9JU09fSU5URVJSVVBUX01VTFRJQ0hBTk5FTCAweDA5CiBzdHJ1Y3QgZndfY2Rldl9ldmVudF9jb21tb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9zdXJlOwotIF9fdTMyIHR5cGU7CisgIF9fdTY0IGNsb3N1cmU7CisgIF9fdTMyIHR5cGU7CiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfYnVzX3Jlc2V0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIG5vZGVfaWQ7Ci0gX191MzIgbG9jYWxfbm9kZV9pZDsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgbm9kZV9pZDsKKyAgX191MzIgbG9jYWxfbm9kZV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYm1fbm9kZV9pZDsKLSBfX3UzMiBpcm1fbm9kZV9pZDsKLSBfX3UzMiByb290X25vZGVfaWQ7Ci0gX191MzIgZ2VuZXJhdGlvbjsKKyAgX191MzIgYm1fbm9kZV9pZDsKKyAgX191MzIgaXJtX25vZGVfaWQ7CisgIF9fdTMyIHJvb3Rfbm9kZV9pZDsKKyAgX191MzIgZ2VuZXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVzcG9uc2UgewotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmNvZGU7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGRhdGFbMF07CisgIF9fdTMyIHJjb2RlOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGRhdGFbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QgewotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiB0Y29kZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgdGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9mZnNldDsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGRhdGFbMF07CisgIF9fdTY0IG9mZnNldDsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QyIHsKLSBfX3U2NCBjbG9zdXJlOwotIF9fdTMyIHR5cGU7CisgIF9fdTY0IGNsb3N1cmU7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRjb2RlOwotIF9fdTY0IG9mZnNldDsKLSBfX3UzMiBzb3VyY2Vfbm9kZV9pZDsKLSBfX3UzMiBkZXN0aW5hdGlvbl9ub2RlX2lkOworICBfX3UzMiB0Y29kZTsKKyAgX191NjQgb2Zmc2V0OworICBfX3UzMiBzb3VyY2Vfbm9kZV9pZDsKKyAgX191MzIgZGVzdGluYXRpb25fbm9kZV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FyZDsKLSBfX3UzMiBnZW5lcmF0aW9uOwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGNhcmQ7CisgIF9fdTMyIGdlbmVyYXRpb247CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkYXRhWzBdOworICBfX3UzMiBkYXRhWzBdOwogfTsKIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19pbnRlcnJ1cHQgewotIF9fdTY0IGNsb3N1cmU7CisgIF9fdTY0IGNsb3N1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgY3ljbGU7Ci0gX191MzIgaGVhZGVyX2xlbmd0aDsKLSBfX3UzMiBoZWFkZXJbMF07CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGN5Y2xlOworICBfX3UzMiBoZWFkZXJfbGVuZ3RoOworICBfX3UzMiBoZWFkZXJbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19pbnRlcnJ1cHRfbWMgewotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY29tcGxldGVkOworICBfX3UzMiBjb21wbGV0ZWQ7CiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX3Jlc291cmNlIHsKLSBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBjbG9zdXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIGhhbmRsZTsKLSBfX3MzMiBjaGFubmVsOwotIF9fczMyIGJhbmR3aWR0aDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgaGFuZGxlOworICBfX3MzMiBjaGFubmVsOworICBfX3MzMiBiYW5kd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmd19jZGV2X2V2ZW50X3BoeV9wYWNrZXQgewotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmNvZGU7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGRhdGFbMF07CisgIF9fdTMyIHJjb2RlOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGRhdGFbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGZ3X2NkZXZfZXZlbnQgewotIHN0cnVjdCBmd19jZGV2X2V2ZW50X2NvbW1vbiBjb21tb247Ci0gc3RydWN0IGZ3X2NkZXZfZXZlbnRfYnVzX3Jlc2V0IGJ1c19yZXNldDsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9yZXNwb25zZSByZXNwb25zZTsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfY29tbW9uIGNvbW1vbjsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfYnVzX3Jlc2V0IGJ1c19yZXNldDsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVzcG9uc2UgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QgcmVxdWVzdDsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9yZXF1ZXN0MiByZXF1ZXN0MjsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9pc29faW50ZXJydXB0IGlzb19pbnRlcnJ1cHQ7Ci0gc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX2ludGVycnVwdF9tYyBpc29faW50ZXJydXB0X21jOworICBzdHJ1Y3QgZndfY2Rldl9ldmVudF9yZXF1ZXN0IHJlcXVlc3Q7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QyIHJlcXVlc3QyOworICBzdHJ1Y3QgZndfY2Rldl9ldmVudF9pc29faW50ZXJydXB0IGlzb19pbnRlcnJ1cHQ7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19pbnRlcnJ1cHRfbWMgaXNvX2ludGVycnVwdF9tYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX3Jlc291cmNlIGlzb19yZXNvdXJjZTsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9waHlfcGFja2V0IHBoeV9wYWNrZXQ7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19yZXNvdXJjZSBpc29fcmVzb3VyY2U7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X3BoeV9wYWNrZXQgcGh5X3BhY2tldDsKIH07CiAjZGVmaW5lIEZXX0NERVZfSU9DX0dFVF9JTkZPIF9JT1dSKCcjJywgMHgwMCwgc3RydWN0IGZ3X2NkZXZfZ2V0X2luZm8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTY3LDgxICsxNjcsODEgQEAKICNkZWZpbmUgRldfQ0RFVl9JT0NfRkxVU0hfSVNPIF9JT1coJyMnLCAweDE4LCBzdHJ1Y3QgZndfY2Rldl9mbHVzaF9pc28pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfZ2V0X2luZm8gewotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgcm9tX2xlbmd0aDsKLSBfX3U2NCByb207CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIHJvbV9sZW5ndGg7CisgIF9fdTY0IHJvbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYnVzX3Jlc2V0OwotIF9fdTY0IGJ1c19yZXNldF9jbG9zdXJlOwotIF9fdTMyIGNhcmQ7CisgIF9fdTY0IGJ1c19yZXNldDsKKyAgX191NjQgYnVzX3Jlc2V0X2Nsb3N1cmU7CisgIF9fdTMyIGNhcmQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmd19jZGV2X3NlbmRfcmVxdWVzdCB7Ci0gX191MzIgdGNvZGU7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTY0IG9mZnNldDsKKyAgX191MzIgdGNvZGU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191NjQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9zdXJlOwotIF9fdTY0IGRhdGE7Ci0gX191MzIgZ2VuZXJhdGlvbjsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgZ2VuZXJhdGlvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfc2VuZF9yZXNwb25zZSB7Ci0gX191MzIgcmNvZGU7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTY0IGRhdGE7CisgIF9fdTMyIHJjb2RlOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTY0IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKIHN0cnVjdCBmd19jZGV2X2FsbG9jYXRlIHsKLSBfX3U2NCBvZmZzZXQ7CisgIF9fdTY0IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgaGFuZGxlOwotIF9fdTY0IHJlZ2lvbl9lbmQ7CisgIF9fdTY0IGNsb3N1cmU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgaGFuZGxlOworICBfX3U2NCByZWdpb25fZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZndfY2Rldl9kZWFsbG9jYXRlIHsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGV19DREVWX0xPTkdfUkVTRVQgMAogI2RlZmluZSBGV19DREVWX1NIT1JUX1JFU0VUIDEKIHN0cnVjdCBmd19jZGV2X2luaXRpYXRlX2J1c19yZXNldCB7Ci0gX191MzIgdHlwZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfYWRkX2Rlc2NyaXB0b3IgewotIF9fdTMyIGltbWVkaWF0ZTsKLSBfX3UzMiBrZXk7CisgIF9fdTMyIGltbWVkaWF0ZTsKKyAgX191MzIga2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYXRhOwotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTY0IGRhdGE7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9yZW1vdmVfZGVzY3JpcHRvciB7Ci0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiB9OwogI2RlZmluZSBGV19DREVWX0lTT19DT05URVhUX1RSQU5TTUlUIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZXX0NERVZfSVNPX0NPTlRFWFRfUkVDRUlWRSAxCiAjZGVmaW5lIEZXX0NERVZfSVNPX0NPTlRFWFRfUkVDRUlWRV9NVUxUSUNIQU5ORUwgMgogc3RydWN0IGZ3X2NkZXZfY3JlYXRlX2lzb19jb250ZXh0IHsKLSBfX3UzMiB0eXBlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoZWFkZXJfc2l6ZTsKLSBfX3UzMiBjaGFubmVsOwotIF9fdTMyIHNwZWVkOwotIF9fdTY0IGNsb3N1cmU7CisgIF9fdTMyIGhlYWRlcl9zaXplOworICBfX3UzMiBjaGFubmVsOworICBfX3UzMiBzcGVlZDsKKyAgX191NjQgY2xvc3VyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiB9Owogc3RydWN0IGZ3X2NkZXZfc2V0X2lzb19jaGFubmVscyB7Ci0gX191NjQgY2hhbm5lbHM7CisgIF9fdTY0IGNoYW5uZWxzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiAjZGVmaW5lIEZXX0NERVZfSVNPX1BBWUxPQURfTEVOR1RIKHYpICh2KQogI2RlZmluZSBGV19DREVWX0lTT19JTlRFUlJVUFQgKDEgPDwgMTYpCkBAIC0yNTMsMTYgKzI1MywxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRldfQ0RFVl9JU09fSEVBREVSX0xFTkdUSCh2KSAoKHYpIDw8IDI0KQogc3RydWN0IGZ3X2NkZXZfaXNvX3BhY2tldCB7Ci0gX191MzIgY29udHJvbDsKLSBfX3UzMiBoZWFkZXJbMF07CisgIF9fdTMyIGNvbnRyb2w7CisgIF9fdTMyIGhlYWRlclswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfcXVldWVfaXNvIHsKLSBfX3U2NCBwYWNrZXRzOwotIF9fdTY0IGRhdGE7CisgIF9fdTY0IHBhY2tldHM7CisgIF9fdTY0IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7Ci0gX191MzIgaGFuZGxlOworICBfX3UzMiBzaXplOworICBfX3UzMiBoYW5kbGU7CiB9OwogI2RlZmluZSBGV19DREVWX0lTT19DT05URVhUX01BVENIX1RBRzAgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTI3Miw2MSArMjcyLDYxIEBACiAjZGVmaW5lIEZXX0NERVZfSVNPX0NPTlRFWFRfTUFUQ0hfQUxMX1RBR1MgMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9zdGFydF9pc28gewotIF9fczMyIGN5Y2xlOwotIF9fdTMyIHN5bmM7Ci0gX191MzIgdGFnczsKKyAgX19zMzIgY3ljbGU7CisgIF9fdTMyIHN5bmM7CisgIF9fdTMyIHRhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKIHN0cnVjdCBmd19jZGV2X3N0b3BfaXNvIHsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfZmx1c2hfaXNvIHsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfZ2V0X2N5Y2xlX3RpbWVyIHsKLSBfX3U2NCBsb2NhbF90aW1lOwotIF9fdTMyIGN5Y2xlX3RpbWVyOworICBfX3U2NCBsb2NhbF90aW1lOworICBfX3UzMiBjeWNsZV90aW1lcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfZ2V0X2N5Y2xlX3RpbWVyMiB7Ci0gX19zNjQgdHZfc2VjOwotIF9fczMyIHR2X25zZWM7Ci0gX19zMzIgY2xrX2lkOworICBfX3M2NCB0dl9zZWM7CisgIF9fczMyIHR2X25zZWM7CisgIF9fczMyIGNsa19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3ljbGVfdGltZXI7CisgIF9fdTMyIGN5Y2xlX3RpbWVyOwogfTsKIHN0cnVjdCBmd19jZGV2X2FsbG9jYXRlX2lzb19yZXNvdXJjZSB7Ci0gX191NjQgY2xvc3VyZTsKKyAgX191NjQgY2xvc3VyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY2hhbm5lbHM7Ci0gX191MzIgYmFuZHdpZHRoOwotIF9fdTMyIGhhbmRsZTsKKyAgX191NjQgY2hhbm5lbHM7CisgIF9fdTMyIGJhbmR3aWR0aDsKKyAgX191MzIgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9zZW5kX3N0cmVhbV9wYWNrZXQgewotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiB0YWc7Ci0gX191MzIgY2hhbm5lbDsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiB0YWc7CisgIF9fdTMyIGNoYW5uZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5OwotIF9fdTY0IGNsb3N1cmU7Ci0gX191NjQgZGF0YTsKLSBfX3UzMiBnZW5lcmF0aW9uOworICBfX3UzMiBzeTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgZ2VuZXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3BlZWQ7CisgIF9fdTMyIHNwZWVkOwogfTsKIHN0cnVjdCBmd19jZGV2X3NlbmRfcGh5X3BhY2tldCB7Ci0gX191NjQgY2xvc3VyZTsKKyAgX191NjQgY2xvc3VyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0YVsyXTsKLSBfX3UzMiBnZW5lcmF0aW9uOworICBfX3UzMiBkYXRhWzJdOworICBfX3UzMiBnZW5lcmF0aW9uOwogfTsKIHN0cnVjdCBmd19jZGV2X3JlY2VpdmVfcGh5X3BhY2tldHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBjbG9zdXJlOwogfTsKICNkZWZpbmUgRldfQ0RFVl9WRVJTSU9OIDMKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mbGF0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZsYXQuaAppbmRleCA5OTQ1YWUzLi4zMDFmZGEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZsYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZsYXQuaApAQCAtMjIsMjEgKzIyLDIxIEBACiAjZGVmaW5lIE1BWF9TSEFSRURfTElCUyAoMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmxhdF9oZHIgewotIGNoYXIgbWFnaWNbNF07Ci0gdW5zaWduZWQgbG9uZyByZXY7Ci0gdW5zaWduZWQgbG9uZyBlbnRyeTsKKyAgY2hhciBtYWdpY1s0XTsKKyAgdW5zaWduZWQgbG9uZyByZXY7CisgIHVuc2lnbmVkIGxvbmcgZW50cnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZGF0YV9zdGFydDsKLSB1bnNpZ25lZCBsb25nIGRhdGFfZW5kOwotIHVuc2lnbmVkIGxvbmcgYnNzX2VuZDsKLSB1bnNpZ25lZCBsb25nIHN0YWNrX3NpemU7CisgIHVuc2lnbmVkIGxvbmcgZGF0YV9zdGFydDsKKyAgdW5zaWduZWQgbG9uZyBkYXRhX2VuZDsKKyAgdW5zaWduZWQgbG9uZyBic3NfZW5kOworICB1bnNpZ25lZCBsb25nIHN0YWNrX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmVsb2Nfc3RhcnQ7Ci0gdW5zaWduZWQgbG9uZyByZWxvY19jb3VudDsKLSB1bnNpZ25lZCBsb25nIGZsYWdzOwotIHVuc2lnbmVkIGxvbmcgYnVpbGRfZGF0ZTsKKyAgdW5zaWduZWQgbG9uZyByZWxvY19zdGFydDsKKyAgdW5zaWduZWQgbG9uZyByZWxvY19jb3VudDsKKyAgdW5zaWduZWQgbG9uZyBmbGFnczsKKyAgdW5zaWduZWQgbG9uZyBidWlsZF9kYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGZpbGxlcls1XTsKKyAgdW5zaWduZWQgbG9uZyBmaWxsZXJbNV07CiB9OwogI2RlZmluZSBGTEFUX0ZMQUdfUkFNIDB4MDAwMQogI2RlZmluZSBGTEFUX0ZMQUdfR09UUElDIDB4MDAwMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mb3UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZm91LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTMxYTRhZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZm91LmgKQEAgLTAsMCArMSw1MCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9MSU5VWF9GT1VfSAorI2RlZmluZSBfVUFQSV9MSU5VWF9GT1VfSAorI2RlZmluZSBGT1VfR0VOTF9OQU1FICJmb3UiCisjZGVmaW5lIEZPVV9HRU5MX1ZFUlNJT04gMHgxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIEZPVV9BVFRSX1VOU1BFQywKKyAgRk9VX0FUVFJfUE9SVCwKKyAgRk9VX0FUVFJfQUYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGT1VfQVRUUl9JUFBST1RPLAorICBGT1VfQVRUUl9UWVBFLAorICBfX0ZPVV9BVFRSX01BWCwKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGT1VfQVRUUl9NQVggKF9fRk9VX0FUVFJfTUFYIC0gMSkKK2VudW0geworICBGT1VfQ01EX1VOU1BFQywKKyAgRk9VX0NNRF9BREQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGT1VfQ01EX0RFTCwKKyAgX19GT1VfQ01EX01BWCwKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZPVV9FTkNBUF9VTlNQRUMsCisgIEZPVV9FTkNBUF9ESVJFQ1QsCisgIEZPVV9FTkNBUF9HVUUsCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRk9VX0NNRF9NQVggKF9fRk9VX0NNRF9NQVggLSAxKQorI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzLmgKaW5kZXggZDZmYzczMC4uYmVkMjQwNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnMuaApAQCAtMjcsNyArMjcsNyBAQAogI2RlZmluZSBJTlJfT1BFTl9NQVggNDA5NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQkxPQ0tfU0laRV9CSVRTIDEwCi0jZGVmaW5lIEJMT0NLX1NJWkUgKDE8PEJMT0NLX1NJWkVfQklUUykKKyNkZWZpbmUgQkxPQ0tfU0laRSAoMSA8PCBCTE9DS19TSVpFX0JJVFMpCiAjZGVmaW5lIFNFRUtfU0VUIDAKICNkZWZpbmUgU0VFS19DVVIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM2LDE1MSArMzYsMTU1IEBACiAjZGVmaW5lIFNFRUtfSE9MRSA0CiAjZGVmaW5lIFNFRUtfTUFYIFNFRUtfSE9MRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkVOQU1FX05PUkVQTEFDRSAoMSA8PCAwKQorI2RlZmluZSBSRU5BTUVfRVhDSEFOR0UgKDEgPDwgMSkKKyNkZWZpbmUgUkVOQU1FX1dISVRFT1VUICgxIDw8IDIpCiBzdHJ1Y3QgZnN0cmltX3JhbmdlIHsKLSBfX3U2NCBzdGFydDsKLSBfX3U2NCBsZW47Ci0gX191NjQgbWlubGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgc3RhcnQ7CisgIF9fdTY0IGxlbjsKKyAgX191NjQgbWlubGVuOwogfTsKLXN0cnVjdCBmaWxlc19zdGF0X3N0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBucl9maWxlczsKLSB1bnNpZ25lZCBsb25nIG5yX2ZyZWVfZmlsZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbWF4X2ZpbGVzOworc3RydWN0IGZpbGVzX3N0YXRfc3RydWN0IHsKKyAgdW5zaWduZWQgbG9uZyBucl9maWxlczsKKyAgdW5zaWduZWQgbG9uZyBucl9mcmVlX2ZpbGVzOworICB1bnNpZ25lZCBsb25nIG1heF9maWxlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlub2Rlc19zdGF0X3QgewotIGxvbmcgbnJfaW5vZGVzOworICBsb25nIG5yX2lub2RlczsKKyAgbG9uZyBucl91bnVzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbnJfdW51c2VkOwotIGxvbmcgZHVtbXlbNV07CisgIGxvbmcgZHVtbXlbNV07CiB9OwogI2RlZmluZSBOUl9GSUxFIDgxOTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TX1JET05MWSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19OT1NVSUQgMgogI2RlZmluZSBNU19OT0RFViA0CiAjZGVmaW5lIE1TX05PRVhFQyA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19TWU5DSFJPTk9VUyAxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNfUkVNT1VOVCAzMgogI2RlZmluZSBNU19NQU5ETE9DSyA2NAogI2RlZmluZSBNU19ESVJTWU5DIDEyOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNfTk9BVElNRSAxMDI0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19OT0RJUkFUSU1FIDIwNDgKICNkZWZpbmUgTVNfQklORCA0MDk2CiAjZGVmaW5lIE1TX01PVkUgODE5MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNfUkVDIDE2Mzg0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19WRVJCT1NFIDMyNzY4CiAjZGVmaW5lIE1TX1NJTEVOVCAzMjc2OAotI2RlZmluZSBNU19QT1NJWEFDTCAoMTw8MTYpCisjZGVmaW5lIE1TX1BPU0lYQUNMICgxIDw8IDE2KQorI2RlZmluZSBNU19VTkJJTkRBQkxFICgxIDw8IDE3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNfVU5CSU5EQUJMRSAoMTw8MTcpCi0jZGVmaW5lIE1TX1BSSVZBVEUgKDE8PDE4KQotI2RlZmluZSBNU19TTEFWRSAoMTw8MTkpCi0jZGVmaW5lIE1TX1NIQVJFRCAoMTw8MjApCisjZGVmaW5lIE1TX1BSSVZBVEUgKDEgPDwgMTgpCisjZGVmaW5lIE1TX1NMQVZFICgxIDw8IDE5KQorI2RlZmluZSBNU19TSEFSRUQgKDEgPDwgMjApCisjZGVmaW5lIE1TX1JFTEFUSU1FICgxIDw8IDIxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNfUkVMQVRJTUUgKDE8PDIxKQotI2RlZmluZSBNU19LRVJOTU9VTlQgKDE8PDIyKQotI2RlZmluZSBNU19JX1ZFUlNJT04gKDE8PDIzKQotI2RlZmluZSBNU19TVFJJQ1RBVElNRSAoMTw8MjQpCisjZGVmaW5lIE1TX0tFUk5NT1VOVCAoMSA8PCAyMikKKyNkZWZpbmUgTVNfSV9WRVJTSU9OICgxIDw8IDIzKQorI2RlZmluZSBNU19TVFJJQ1RBVElNRSAoMSA8PCAyNCkKKyNkZWZpbmUgTVNfTk9TRUMgKDEgPDwgMjgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU19OT1NFQyAoMTw8MjgpCi0jZGVmaW5lIE1TX0JPUk4gKDE8PDI5KQotI2RlZmluZSBNU19BQ1RJVkUgKDE8PDMwKQotI2RlZmluZSBNU19OT1VTRVIgKDE8PDMxKQorI2RlZmluZSBNU19CT1JOICgxIDw8IDI5KQorI2RlZmluZSBNU19BQ1RJVkUgKDEgPDwgMzApCisjZGVmaW5lIE1TX05PVVNFUiAoMSA8PCAzMSkKKyNkZWZpbmUgTVNfUk1UX01BU0sgKE1TX1JET05MWSB8IE1TX1NZTkNIUk9OT1VTIHwgTVNfTUFORExPQ0sgfCBNU19JX1ZFUlNJT04pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU19STVRfTUFTSyAoTVNfUkRPTkxZfE1TX1NZTkNIUk9OT1VTfE1TX01BTkRMT0NLfE1TX0lfVkVSU0lPTikKICNkZWZpbmUgTVNfTUdDX1ZBTCAweEMwRUQwMDAwCiAjZGVmaW5lIE1TX01HQ19NU0sgMHhmZmZmMDAwMAotI2RlZmluZSBCTEtST1NFVCBfSU8oMHgxMiw5MykKKyNkZWZpbmUgQkxLUk9TRVQgX0lPKDB4MTIsIDkzKQorI2RlZmluZSBCTEtST0dFVCBfSU8oMHgxMiwgOTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtST0dFVCBfSU8oMHgxMiw5NCkKLSNkZWZpbmUgQkxLUlJQQVJUIF9JTygweDEyLDk1KQotI2RlZmluZSBCTEtHRVRTSVpFIF9JTygweDEyLDk2KQotI2RlZmluZSBCTEtGTFNCVUYgX0lPKDB4MTIsOTcpCisjZGVmaW5lIEJMS1JSUEFSVCBfSU8oMHgxMiwgOTUpCisjZGVmaW5lIEJMS0dFVFNJWkUgX0lPKDB4MTIsIDk2KQorI2RlZmluZSBCTEtGTFNCVUYgX0lPKDB4MTIsIDk3KQorI2RlZmluZSBCTEtSQVNFVCBfSU8oMHgxMiwgOTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtSQVNFVCBfSU8oMHgxMiw5OCkKLSNkZWZpbmUgQkxLUkFHRVQgX0lPKDB4MTIsOTkpCi0jZGVmaW5lIEJMS0ZSQVNFVCBfSU8oMHgxMiwxMDApCi0jZGVmaW5lIEJMS0ZSQUdFVCBfSU8oMHgxMiwxMDEpCisjZGVmaW5lIEJMS1JBR0VUIF9JTygweDEyLCA5OSkKKyNkZWZpbmUgQkxLRlJBU0VUIF9JTygweDEyLCAxMDApCisjZGVmaW5lIEJMS0ZSQUdFVCBfSU8oMHgxMiwgMTAxKQorI2RlZmluZSBCTEtTRUNUU0VUIF9JTygweDEyLCAxMDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtTRUNUU0VUIF9JTygweDEyLDEwMikKLSNkZWZpbmUgQkxLU0VDVEdFVCBfSU8oMHgxMiwxMDMpCi0jZGVmaW5lIEJMS1NTWkdFVCBfSU8oMHgxMiwxMDQpCi0jZGVmaW5lIEJMS0JTWkdFVCBfSU9SKDB4MTIsMTEyLHNpemVfdCkKKyNkZWZpbmUgQkxLU0VDVEdFVCBfSU8oMHgxMiwgMTAzKQorI2RlZmluZSBCTEtTU1pHRVQgX0lPKDB4MTIsIDEwNCkKKyNkZWZpbmUgQkxLQlNaR0VUIF9JT1IoMHgxMiwgMTEyLCBzaXplX3QpCisjZGVmaW5lIEJMS0JTWlNFVCBfSU9XKDB4MTIsIDExMywgc2l6ZV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQkxLQlNaU0VUIF9JT1coMHgxMiwxMTMsc2l6ZV90KQotI2RlZmluZSBCTEtHRVRTSVpFNjQgX0lPUigweDEyLDExNCxzaXplX3QpCi0jZGVmaW5lIEJMS1RSQUNFU0VUVVAgX0lPV1IoMHgxMiwxMTUsc3RydWN0IGJsa191c2VyX3RyYWNlX3NldHVwKQotI2RlZmluZSBCTEtUUkFDRVNUQVJUIF9JTygweDEyLDExNikKKyNkZWZpbmUgQkxLR0VUU0laRTY0IF9JT1IoMHgxMiwgMTE0LCBzaXplX3QpCisjZGVmaW5lIEJMS1RSQUNFU0VUVVAgX0lPV1IoMHgxMiwgMTE1LCBzdHJ1Y3QgYmxrX3VzZXJfdHJhY2Vfc2V0dXApCisjZGVmaW5lIEJMS1RSQUNFU1RBUlQgX0lPKDB4MTIsIDExNikKKyNkZWZpbmUgQkxLVFJBQ0VTVE9QIF9JTygweDEyLCAxMTcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtUUkFDRVNUT1AgX0lPKDB4MTIsMTE3KQotI2RlZmluZSBCTEtUUkFDRVRFQVJET1dOIF9JTygweDEyLDExOCkKLSNkZWZpbmUgQkxLRElTQ0FSRCBfSU8oMHgxMiwxMTkpCi0jZGVmaW5lIEJMS0lPTUlOIF9JTygweDEyLDEyMCkKKyNkZWZpbmUgQkxLVFJBQ0VURUFSRE9XTiBfSU8oMHgxMiwgMTE4KQorI2RlZmluZSBCTEtESVNDQVJEIF9JTygweDEyLCAxMTkpCisjZGVmaW5lIEJMS0lPTUlOIF9JTygweDEyLCAxMjApCisjZGVmaW5lIEJMS0lPT1BUIF9JTygweDEyLCAxMjEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtJT09QVCBfSU8oMHgxMiwxMjEpCi0jZGVmaW5lIEJMS0FMSUdOT0ZGIF9JTygweDEyLDEyMikKLSNkZWZpbmUgQkxLUEJTWkdFVCBfSU8oMHgxMiwxMjMpCi0jZGVmaW5lIEJMS0RJU0NBUkRaRVJPRVMgX0lPKDB4MTIsMTI0KQorI2RlZmluZSBCTEtBTElHTk9GRiBfSU8oMHgxMiwgMTIyKQorI2RlZmluZSBCTEtQQlNaR0VUIF9JTygweDEyLCAxMjMpCisjZGVmaW5lIEJMS0RJU0NBUkRaRVJPRVMgX0lPKDB4MTIsIDEyNCkKKyNkZWZpbmUgQkxLU0VDRElTQ0FSRCBfSU8oMHgxMiwgMTI1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQkxLU0VDRElTQ0FSRCBfSU8oMHgxMiwxMjUpCi0jZGVmaW5lIEJMS1JPVEFUSU9OQUwgX0lPKDB4MTIsMTI2KQotI2RlZmluZSBCTEtaRVJPT1VUIF9JTygweDEyLDEyNykKKyNkZWZpbmUgQkxLUk9UQVRJT05BTCBfSU8oMHgxMiwgMTI2KQorI2RlZmluZSBCTEtaRVJPT1VUIF9JTygweDEyLCAxMjcpCiAjZGVmaW5lIEJNQVBfSU9DVEwgMQorI2RlZmluZSBGSUJNQVAgX0lPKDB4MDAsIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGSUJNQVAgX0lPKDB4MDAsMSkKLSNkZWZpbmUgRklHRVRCU1ogX0lPKDB4MDAsMikKKyNkZWZpbmUgRklHRVRCU1ogX0lPKDB4MDAsIDIpCiAjZGVmaW5lIEZJRlJFRVpFIF9JT1dSKCdYJywgMTE5LCBpbnQpCiAjZGVmaW5lIEZJVEhBVyBfSU9XUignWCcsIDEyMCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRklUUklNIF9JT1dSKCdYJywgMTIxLCBzdHJ1Y3QgZnN0cmltX3JhbmdlKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfSU9DX0dFVEZMQUdTIF9JT1IoJ2YnLCAxLCBsb25nKQogI2RlZmluZSBGU19JT0NfU0VURkxBR1MgX0lPVygnZicsIDIsIGxvbmcpCiAjZGVmaW5lIEZTX0lPQ19HRVRWRVJTSU9OIF9JT1IoJ3YnLCAxLCBsb25nKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfSU9DX1NFVFZFUlNJT04gX0lPVygndicsIDIsIGxvbmcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JT0NfRklFTUFQIF9JT1dSKCdmJywgMTEsIHN0cnVjdCBmaWVtYXApCiAjZGVmaW5lIEZTX0lPQzMyX0dFVEZMQUdTIF9JT1IoJ2YnLCAxLCBpbnQpCiAjZGVmaW5lIEZTX0lPQzMyX1NFVEZMQUdTIF9JT1coJ2YnLCAyLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JT0MzMl9HRVRWRVJTSU9OIF9JT1IoJ3YnLCAxLCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JT0MzMl9TRVRWRVJTSU9OIF9JT1coJ3YnLCAyLCBpbnQpCiAjZGVmaW5lIEZTX1NFQ1JNX0ZMIDB4MDAwMDAwMDEKICNkZWZpbmUgRlNfVU5STV9GTCAweDAwMDAwMDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19DT01QUl9GTCAweDAwMDAwMDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19TWU5DX0ZMIDB4MDAwMDAwMDgKICNkZWZpbmUgRlNfSU1NVVRBQkxFX0ZMIDB4MDAwMDAwMTAKICNkZWZpbmUgRlNfQVBQRU5EX0ZMIDB4MDAwMDAwMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX05PRFVNUF9GTCAweDAwMDAwMDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19OT0FUSU1FX0ZMIDB4MDAwMDAwODAKICNkZWZpbmUgRlNfRElSVFlfRkwgMHgwMDAwMDEwMAogI2RlZmluZSBGU19DT01QUkJMS19GTCAweDAwMDAwMjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19OT0NPTVBfRkwgMHgwMDAwMDQwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfRUNPTVBSX0ZMIDB4MDAwMDA4MDAKICNkZWZpbmUgRlNfQlRSRUVfRkwgMHgwMDAwMTAwMAogI2RlZmluZSBGU19JTkRFWF9GTCAweDAwMDAxMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JTUFHSUNfRkwgMHgwMDAwMjAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfSk9VUk5BTF9EQVRBX0ZMIDB4MDAwMDQwMDAKICNkZWZpbmUgRlNfTk9UQUlMX0ZMIDB4MDAwMDgwMDAKICNkZWZpbmUgRlNfRElSU1lOQ19GTCAweDAwMDEwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19UT1BESVJfRkwgMHgwMDAyMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfRVhURU5UX0ZMIDB4MDAwODAwMDAKICNkZWZpbmUgRlNfRElSRUNUSU9fRkwgMHgwMDEwMDAwMAogI2RlZmluZSBGU19OT0NPV19GTCAweDAwODAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19SRVNFUlZFRF9GTCAweDgwMDAwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19GTF9VU0VSX1ZJU0lCTEUgMHgwMDAzREZGRgogI2RlZmluZSBGU19GTF9VU0VSX01PRElGSUFCTEUgMHgwMDAzODBGRgogI2RlZmluZSBTWU5DX0ZJTEVfUkFOR0VfV0FJVF9CRUZPUkUgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1lOQ19GSUxFX1JBTkdFX1dSSVRFIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZTkNfRklMRV9SQU5HRV9XQUlUX0FGVEVSIDQKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mc2xfaHlwZXJ2aXNvci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mc2xfaHlwZXJ2aXNvci5oCmluZGV4IGQ1NzY0ZDQuLjg0MWYzMmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnNsX2h5cGVydmlzb3IuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzbF9oeXBlcnZpc29yLmgKQEAgLTIxLDY1ICsyMSw2NSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Jlc3RhcnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXQ7Ci0gX191MzIgcGFydGl0aW9uOworICBfX3UzMiByZXQ7CisgIF9fdTMyIHBhcnRpdGlvbjsKIH07CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldDsKLSBfX3UzMiBwYXJ0aXRpb247Ci0gX191MzIgc3RhdHVzOworICBfX3UzMiByZXQ7CisgIF9fdTMyIHBhcnRpdGlvbjsKKyAgX191MzIgc3RhdHVzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXJ0IHsKLSBfX3UzMiByZXQ7Ci0gX191MzIgcGFydGl0aW9uOwotIF9fdTMyIGVudHJ5X3BvaW50OworICBfX3UzMiByZXQ7CisgIF9fdTMyIHBhcnRpdGlvbjsKKyAgX191MzIgZW50cnlfcG9pbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvYWQ7CisgIF9fdTMyIGxvYWQ7CiB9Owogc3RydWN0IGZzbF9odl9pb2N0bF9zdG9wIHsKLSBfX3UzMiByZXQ7CisgIF9fdTMyIHJldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFydGl0aW9uOworICBfX3UzMiBwYXJ0aXRpb247CiB9Owogc3RydWN0IGZzbF9odl9pb2N0bF9tZW1jcHkgewotIF9fdTMyIHJldDsKKyAgX191MzIgcmV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzb3VyY2U7Ci0gX191MzIgdGFyZ2V0OwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IGxvY2FsX3ZhZGRyOworICBfX3UzMiBzb3VyY2U7CisgIF9fdTMyIHRhcmdldDsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IGxvY2FsX3ZhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZW1vdGVfcGFkZHI7Ci0gX191NjQgY291bnQ7CisgIF9fdTY0IHJlbW90ZV9wYWRkcjsKKyAgX191NjQgY291bnQ7CiB9Owogc3RydWN0IGZzbF9odl9pb2N0bF9kb29yYmVsbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldDsKLSBfX3UzMiBkb29yYmVsbDsKKyAgX191MzIgcmV0OworICBfX3UzMiBkb29yYmVsbDsKIH07CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Byb3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXQ7Ci0gX191MzIgaGFuZGxlOwotIF9fdTY0IHBhdGg7Ci0gX191NjQgcHJvcG5hbWU7CisgIF9fdTMyIHJldDsKKyAgX191MzIgaGFuZGxlOworICBfX3U2NCBwYXRoOworICBfX3U2NCBwcm9wbmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcHJvcHZhbDsKLSBfX3UzMiBwcm9wbGVuOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCBwcm9wdmFsOworICBfX3UzMiBwcm9wbGVuOworICBfX3UzMiByZXNlcnZlZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU0xfSFZfSU9DVExfVFlQRSAweEFGCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9QQVJUSVRJT05fUkVTVEFSVCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCAxLCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Jlc3RhcnQpCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9QQVJUSVRJT05fR0VUX1NUQVRVUyAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCAyLCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXR1cykKLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9TVEFSVCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCAzLCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXJ0KQorI2RlZmluZSBGU0xfSFZfSU9DVExfUEFSVElUSU9OX1JFU1RBUlQgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDEsIHN0cnVjdCBmc2xfaHZfaW9jdGxfcmVzdGFydCkKKyNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9HRVRfU1RBVFVTIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCAyLCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXR1cykKKyNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9TVEFSVCBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgMywgc3RydWN0IGZzbF9odl9pb2N0bF9zdGFydCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9QQVJUSVRJT05fU1RPUCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA0LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0b3ApCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9NRU1DUFkgICBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgNSwgc3RydWN0IGZzbF9odl9pb2N0bF9tZW1jcHkpCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9ET09SQkVMTCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA2LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX2Rvb3JiZWxsKQotI2RlZmluZSBGU0xfSFZfSU9DVExfR0VUUFJPUCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA3LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Byb3ApCisjZGVmaW5lIEZTTF9IVl9JT0NUTF9QQVJUSVRJT05fU1RPUCBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgNCwgc3RydWN0IGZzbF9odl9pb2N0bF9zdG9wKQorI2RlZmluZSBGU0xfSFZfSU9DVExfTUVNQ1BZIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA1LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX21lbWNweSkKKyNkZWZpbmUgRlNMX0hWX0lPQ1RMX0RPT1JCRUxMIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA2LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX2Rvb3JiZWxsKQorI2RlZmluZSBGU0xfSFZfSU9DVExfR0VUUFJPUCBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgNywgc3RydWN0IGZzbF9odl9pb2N0bF9wcm9wKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX1NFVFBST1AgICBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgOCwgc3RydWN0IGZzbF9odl9pb2N0bF9wcm9wKQorI2RlZmluZSBGU0xfSFZfSU9DVExfU0VUUFJPUCBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgOCwgc3RydWN0IGZzbF9odl9pb2N0bF9wcm9wKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Z1c2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnVzZS5oCmluZGV4IDgxMzVkNDcuLjRmMGQ2ZDMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnVzZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnVzZS5oCkBAIC0yMSw1MiArMjEsNTIgQEAKICNpbmNsdWRlIDxzdGRpbnQuaD4KICNkZWZpbmUgRlVTRV9LRVJORUxfVkVSU0lPTiA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGVVNFX0tFUk5FTF9NSU5PUl9WRVJTSU9OIDIyCisjZGVmaW5lIEZVU0VfS0VSTkVMX01JTk9SX1ZFUlNJT04gMjMKICNkZWZpbmUgRlVTRV9ST09UX0lEIDEKIHN0cnVjdCBmdXNlX2F0dHIgewotIHVpbnQ2NF90IGlubzsKKyAgdWludDY0X3QgaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IGJsb2NrczsKLSB1aW50NjRfdCBhdGltZTsKLSB1aW50NjRfdCBtdGltZTsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3QgYmxvY2tzOworICB1aW50NjRfdCBhdGltZTsKKyAgdWludDY0X3QgbXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGN0aW1lOwotIHVpbnQzMl90IGF0aW1lbnNlYzsKLSB1aW50MzJfdCBtdGltZW5zZWM7Ci0gdWludDMyX3QgY3RpbWVuc2VjOworICB1aW50NjRfdCBjdGltZTsKKyAgdWludDMyX3QgYXRpbWVuc2VjOworICB1aW50MzJfdCBtdGltZW5zZWM7CisgIHVpbnQzMl90IGN0aW1lbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbW9kZTsKLSB1aW50MzJfdCBubGluazsKLSB1aW50MzJfdCB1aWQ7Ci0gdWludDMyX3QgZ2lkOworICB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCBubGluazsKKyAgdWludDMyX3QgdWlkOworICB1aW50MzJfdCBnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHJkZXY7Ci0gdWludDMyX3QgYmxrc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCByZGV2OworICB1aW50MzJfdCBibGtzaXplOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9rc3RhdGZzIHsKLSB1aW50NjRfdCBibG9ja3M7Ci0gdWludDY0X3QgYmZyZWU7Ci0gdWludDY0X3QgYmF2YWlsOworICB1aW50NjRfdCBibG9ja3M7CisgIHVpbnQ2NF90IGJmcmVlOworICB1aW50NjRfdCBiYXZhaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGZpbGVzOwotIHVpbnQ2NF90IGZmcmVlOwotIHVpbnQzMl90IGJzaXplOwotIHVpbnQzMl90IG5hbWVsZW47CisgIHVpbnQ2NF90IGZpbGVzOworICB1aW50NjRfdCBmZnJlZTsKKyAgdWludDMyX3QgYnNpemU7CisgIHVpbnQzMl90IG5hbWVsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZyc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOwotIHVpbnQzMl90IHNwYXJlWzZdOworICB1aW50MzJfdCBmcnNpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IHNwYXJlWzZdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9maWxlX2xvY2sgewotIHVpbnQ2NF90IHN0YXJ0OwotIHVpbnQ2NF90IGVuZDsKLSB1aW50MzJfdCB0eXBlOworICB1aW50NjRfdCBzdGFydDsKKyAgdWludDY0X3QgZW5kOworICB1aW50MzJfdCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwaWQ7CisgIHVpbnQzMl90IHBpZDsKIH07CiAjZGVmaW5lIEZBVFRSX01PREUgKDEgPDwgMCkKICNkZWZpbmUgRkFUVFJfVUlEICgxIDw8IDEpCkBAIC04MSw0OTQgKzgxLDUxMCBAQAogI2RlZmluZSBGQVRUUl9NVElNRV9OT1cgKDEgPDwgOCkKICNkZWZpbmUgRkFUVFJfTE9DS09XTkVSICgxIDw8IDkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGQVRUUl9DVElNRSAoMSA8PCAxMCkKICNkZWZpbmUgRk9QRU5fRElSRUNUX0lPICgxIDw8IDApCiAjZGVmaW5lIEZPUEVOX0tFRVBfQ0FDSEUgKDEgPDwgMSkKICNkZWZpbmUgRk9QRU5fTk9OU0VFS0FCTEUgKDEgPDwgMikKLSNkZWZpbmUgRlVTRV9BU1lOQ19SRUFEICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGVVNFX0FTWU5DX1JFQUQgKDEgPDwgMCkKICNkZWZpbmUgRlVTRV9QT1NJWF9MT0NLUyAoMSA8PCAxKQogI2RlZmluZSBGVVNFX0ZJTEVfT1BTICgxIDw8IDIpCiAjZGVmaW5lIEZVU0VfQVRPTUlDX09fVFJVTkMgKDEgPDwgMykKLSNkZWZpbmUgRlVTRV9FWFBPUlRfU1VQUE9SVCAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRlVTRV9FWFBPUlRfU1VQUE9SVCAoMSA8PCA0KQogI2RlZmluZSBGVVNFX0JJR19XUklURVMgKDEgPDwgNSkKICNkZWZpbmUgRlVTRV9ET05UX01BU0sgKDEgPDwgNikKICNkZWZpbmUgRlVTRV9TUExJQ0VfV1JJVEUgKDEgPDwgNykKLSNkZWZpbmUgRlVTRV9TUExJQ0VfTU9WRSAoMSA8PCA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRlVTRV9TUExJQ0VfTU9WRSAoMSA8PCA4KQogI2RlZmluZSBGVVNFX1NQTElDRV9SRUFEICgxIDw8IDkpCiAjZGVmaW5lIEZVU0VfRkxPQ0tfTE9DS1MgKDEgPDwgMTApCiAjZGVmaW5lIEZVU0VfSEFTX0lPQ1RMX0RJUiAoMSA8PCAxMSkKLSNkZWZpbmUgRlVTRV9BVVRPX0lOVkFMX0RBVEEgKDEgPDwgMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGVVNFX0FVVE9fSU5WQUxfREFUQSAoMSA8PCAxMikKICNkZWZpbmUgRlVTRV9ET19SRUFERElSUExVUyAoMSA8PCAxMykKICNkZWZpbmUgRlVTRV9SRUFERElSUExVU19BVVRPICgxIDw8IDE0KQogI2RlZmluZSBGVVNFX0FTWU5DX0RJTyAoMSA8PCAxNSkKLSNkZWZpbmUgQ1VTRV9VTlJFU1RSSUNURURfSU9DVEwgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZVU0VfV1JJVEVCQUNLX0NBQ0hFICgxIDw8IDE2KQorI2RlZmluZSBGVVNFX05PX09QRU5fU1VQUE9SVCAoMSA8PCAxNykKKyNkZWZpbmUgQ1VTRV9VTlJFU1RSSUNURURfSU9DVEwgKDEgPDwgMCkKICNkZWZpbmUgRlVTRV9SRUxFQVNFX0ZMVVNIICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX1JFTEVBU0VfRkxPQ0tfVU5MT0NLICgxIDw8IDEpCiAjZGVmaW5lIEZVU0VfR0VUQVRUUl9GSCAoMSA8PCAwKQogI2RlZmluZSBGVVNFX0xLX0ZMT0NLICgxIDw8IDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX1dSSVRFX0NBQ0hFICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX1dSSVRFX0xPQ0tPV05FUiAoMSA8PCAxKQogI2RlZmluZSBGVVNFX1JFQURfTE9DS09XTkVSICgxIDw8IDEpCiAjZGVmaW5lIEZVU0VfSU9DVExfQ09NUEFUICgxIDw8IDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX0lPQ1RMX1VOUkVTVFJJQ1RFRCAoMSA8PCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVTRV9JT0NUTF9SRVRSWSAoMSA8PCAyKQogI2RlZmluZSBGVVNFX0lPQ1RMXzMyQklUICgxIDw8IDMpCiAjZGVmaW5lIEZVU0VfSU9DVExfRElSICgxIDw8IDQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX0lPQ1RMX01BWF9JT1YgMjU2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX1BPTExfU0NIRURVTEVfTk9USUZZICgxIDw8IDApCiBlbnVtIGZ1c2Vfb3Bjb2RlIHsKLSBGVVNFX0xPT0tVUCA9IDEsCisgIEZVU0VfTE9PS1VQID0gMSwKKyAgRlVTRV9GT1JHRVQgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX0ZPUkdFVCA9IDIsCi0gRlVTRV9HRVRBVFRSID0gMywKLSBGVVNFX1NFVEFUVFIgPSA0LAotIEZVU0VfUkVBRExJTksgPSA1LAorICBGVVNFX0dFVEFUVFIgPSAzLAorICBGVVNFX1NFVEFUVFIgPSA0LAorICBGVVNFX1JFQURMSU5LID0gNSwKKyAgRlVTRV9TWU1MSU5LID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9TWU1MSU5LID0gNiwKLSBGVVNFX01LTk9EID0gOCwKLSBGVVNFX01LRElSID0gOSwKLSBGVVNFX1VOTElOSyA9IDEwLAorICBGVVNFX01LTk9EID0gOCwKKyAgRlVTRV9NS0RJUiA9IDksCisgIEZVU0VfVU5MSU5LID0gMTAsCisgIEZVU0VfUk1ESVIgPSAxMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9STURJUiA9IDExLAotIEZVU0VfUkVOQU1FID0gMTIsCi0gRlVTRV9MSU5LID0gMTMsCi0gRlVTRV9PUEVOID0gMTQsCisgIEZVU0VfUkVOQU1FID0gMTIsCisgIEZVU0VfTElOSyA9IDEzLAorICBGVVNFX09QRU4gPSAxNCwKKyAgRlVTRV9SRUFEID0gMTUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfUkVBRCA9IDE1LAotIEZVU0VfV1JJVEUgPSAxNiwKLSBGVVNFX1NUQVRGUyA9IDE3LAotIEZVU0VfUkVMRUFTRSA9IDE4LAorICBGVVNFX1dSSVRFID0gMTYsCisgIEZVU0VfU1RBVEZTID0gMTcsCisgIEZVU0VfUkVMRUFTRSA9IDE4LAorICBGVVNFX0ZTWU5DID0gMjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfRlNZTkMgPSAyMCwKLSBGVVNFX1NFVFhBVFRSID0gMjEsCi0gRlVTRV9HRVRYQVRUUiA9IDIyLAotIEZVU0VfTElTVFhBVFRSID0gMjMsCisgIEZVU0VfU0VUWEFUVFIgPSAyMSwKKyAgRlVTRV9HRVRYQVRUUiA9IDIyLAorICBGVVNFX0xJU1RYQVRUUiA9IDIzLAorICBGVVNFX1JFTU9WRVhBVFRSID0gMjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfUkVNT1ZFWEFUVFIgPSAyNCwKLSBGVVNFX0ZMVVNIID0gMjUsCi0gRlVTRV9JTklUID0gMjYsCi0gRlVTRV9PUEVORElSID0gMjcsCisgIEZVU0VfRkxVU0ggPSAyNSwKKyAgRlVTRV9JTklUID0gMjYsCisgIEZVU0VfT1BFTkRJUiA9IDI3LAorICBGVVNFX1JFQURESVIgPSAyOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9SRUFERElSID0gMjgsCi0gRlVTRV9SRUxFQVNFRElSID0gMjksCi0gRlVTRV9GU1lOQ0RJUiA9IDMwLAotIEZVU0VfR0VUTEsgPSAzMSwKKyAgRlVTRV9SRUxFQVNFRElSID0gMjksCisgIEZVU0VfRlNZTkNESVIgPSAzMCwKKyAgRlVTRV9HRVRMSyA9IDMxLAorICBGVVNFX1NFVExLID0gMzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfU0VUTEsgPSAzMiwKLSBGVVNFX1NFVExLVyA9IDMzLAotIEZVU0VfQUNDRVNTID0gMzQsCi0gRlVTRV9DUkVBVEUgPSAzNSwKKyAgRlVTRV9TRVRMS1cgPSAzMywKKyAgRlVTRV9BQ0NFU1MgPSAzNCwKKyAgRlVTRV9DUkVBVEUgPSAzNSwKKyAgRlVTRV9JTlRFUlJVUFQgPSAzNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9JTlRFUlJVUFQgPSAzNiwKLSBGVVNFX0JNQVAgPSAzNywKLSBGVVNFX0RFU1RST1kgPSAzOCwKLSBGVVNFX0lPQ1RMID0gMzksCisgIEZVU0VfQk1BUCA9IDM3LAorICBGVVNFX0RFU1RST1kgPSAzOCwKKyAgRlVTRV9JT0NUTCA9IDM5LAorICBGVVNFX1BPTEwgPSA0MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9QT0xMID0gNDAsCi0gRlVTRV9OT1RJRllfUkVQTFkgPSA0MSwKLSBGVVNFX0JBVENIX0ZPUkdFVCA9IDQyLAotIEZVU0VfRkFMTE9DQVRFID0gNDMsCisgIEZVU0VfTk9USUZZX1JFUExZID0gNDEsCisgIEZVU0VfQkFUQ0hfRk9SR0VUID0gNDIsCisgIEZVU0VfRkFMTE9DQVRFID0gNDMsCisgIEZVU0VfUkVBRERJUlBMVVMgPSA0NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9SRUFERElSUExVUyA9IDQ0LAotIENVU0VfSU5JVCA9IDQwOTYsCisgIEZVU0VfUkVOQU1FMiA9IDQ1LAorICBDVVNFX0lOSVQgPSA0MDk2LAogfTsKIGVudW0gZnVzZV9ub3RpZnlfY29kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfTk9USUZZX1BPTEwgPSAxLAotIEZVU0VfTk9USUZZX0lOVkFMX0lOT0RFID0gMiwKLSBGVVNFX05PVElGWV9JTlZBTF9FTlRSWSA9IDMsCi0gRlVTRV9OT1RJRllfU1RPUkUgPSA0LAorICBGVVNFX05PVElGWV9QT0xMID0gMSwKKyAgRlVTRV9OT1RJRllfSU5WQUxfSU5PREUgPSAyLAorICBGVVNFX05PVElGWV9JTlZBTF9FTlRSWSA9IDMsCisgIEZVU0VfTk9USUZZX1NUT1JFID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9OT1RJRllfUkVUUklFVkUgPSA1LAotIEZVU0VfTk9USUZZX0RFTEVURSA9IDYsCi0gRlVTRV9OT1RJRllfQ09ERV9NQVgsCisgIEZVU0VfTk9USUZZX1JFVFJJRVZFID0gNSwKKyAgRlVTRV9OT1RJRllfREVMRVRFID0gNiwKKyAgRlVTRV9OT1RJRllfQ09ERV9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVTRV9NSU5fUkVBRF9CVUZGRVIgODE5MgogI2RlZmluZSBGVVNFX0NPTVBBVF9FTlRSWV9PVVRfU0laRSAxMjAKIHN0cnVjdCBmdXNlX2VudHJ5X291dCB7Ci0gdWludDY0X3Qgbm9kZWlkOworICB1aW50NjRfdCBub2RlaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGdlbmVyYXRpb247Ci0gdWludDY0X3QgZW50cnlfdmFsaWQ7Ci0gdWludDY0X3QgYXR0cl92YWxpZDsKLSB1aW50MzJfdCBlbnRyeV92YWxpZF9uc2VjOworICB1aW50NjRfdCBnZW5lcmF0aW9uOworICB1aW50NjRfdCBlbnRyeV92YWxpZDsKKyAgdWludDY0X3QgYXR0cl92YWxpZDsKKyAgdWludDMyX3QgZW50cnlfdmFsaWRfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgYXR0cl92YWxpZF9uc2VjOwotIHN0cnVjdCBmdXNlX2F0dHIgYXR0cjsKKyAgdWludDMyX3QgYXR0cl92YWxpZF9uc2VjOworICBzdHJ1Y3QgZnVzZV9hdHRyIGF0dHI7CiB9Owogc3RydWN0IGZ1c2VfZm9yZ2V0X2luIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgbmxvb2t1cDsKKyAgdWludDY0X3Qgbmxvb2t1cDsKIH07CiBzdHJ1Y3QgZnVzZV9mb3JnZXRfb25lIHsKLSB1aW50NjRfdCBub2RlaWQ7CisgIHVpbnQ2NF90IG5vZGVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgbmxvb2t1cDsKKyAgdWludDY0X3Qgbmxvb2t1cDsKIH07CiBzdHJ1Y3QgZnVzZV9iYXRjaF9mb3JnZXRfaW4gewotIHVpbnQzMl90IGNvdW50OworICB1aW50MzJfdCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZHVtbXk7CisgIHVpbnQzMl90IGR1bW15OwogfTsKIHN0cnVjdCBmdXNlX2dldGF0dHJfaW4gewotIHVpbnQzMl90IGdldGF0dHJfZmxhZ3M7CisgIHVpbnQzMl90IGdldGF0dHJfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGR1bW15OwotIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCBkdW1teTsKKyAgdWludDY0X3QgZmg7CiB9OwogI2RlZmluZSBGVVNFX0NPTVBBVF9BVFRSX09VVF9TSVpFIDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2VfYXR0cl9vdXQgewotIHVpbnQ2NF90IGF0dHJfdmFsaWQ7Ci0gdWludDMyX3QgYXR0cl92YWxpZF9uc2VjOwotIHVpbnQzMl90IGR1bW15OworICB1aW50NjRfdCBhdHRyX3ZhbGlkOworICB1aW50MzJfdCBhdHRyX3ZhbGlkX25zZWM7CisgIHVpbnQzMl90IGR1bW15OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZnVzZV9hdHRyIGF0dHI7CisgIHN0cnVjdCBmdXNlX2F0dHIgYXR0cjsKIH07CiAjZGVmaW5lIEZVU0VfQ09NUEFUX01LTk9EX0lOX1NJWkUgOAogc3RydWN0IGZ1c2VfbWtub2RfaW4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBtb2RlOwotIHVpbnQzMl90IHJkZXY7Ci0gdWludDMyX3QgdW1hc2s7Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgcmRldjsKKyAgdWludDMyX3QgdW1hc2s7CisgIHVpbnQzMl90IHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmdXNlX21rZGlyX2luIHsKLSB1aW50MzJfdCBtb2RlOwotIHVpbnQzMl90IHVtYXNrOworICB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCB1bWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ1c2VfcmVuYW1lX2luIHsKLSB1aW50NjRfdCBuZXdkaXI7CisgIHVpbnQ2NF90IG5ld2RpcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGZ1c2VfcmVuYW1lMl9pbiB7CisgIHVpbnQ2NF90IG5ld2RpcjsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IHBhZGRpbmc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIHN0cnVjdCBmdXNlX2xpbmtfaW4gewotIHVpbnQ2NF90IG9sZG5vZGVpZDsKKyAgdWludDY0X3Qgb2xkbm9kZWlkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9zZXRhdHRyX2luIHsKKyAgdWludDMyX3QgdmFsaWQ7CisgIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IGZoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB2YWxpZDsKLSB1aW50MzJfdCBwYWRkaW5nOwotIHVpbnQ2NF90IGZoOwotIHVpbnQ2NF90IHNpemU7CisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQ2NF90IGF0aW1lOworICB1aW50NjRfdCBtdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgbG9ja19vd25lcjsKLSB1aW50NjRfdCBhdGltZTsKLSB1aW50NjRfdCBtdGltZTsKLSB1aW50NjRfdCB1bnVzZWQyOworICB1aW50NjRfdCBjdGltZTsKKyAgdWludDMyX3QgYXRpbWVuc2VjOworICB1aW50MzJfdCBtdGltZW5zZWM7CisgIHVpbnQzMl90IGN0aW1lbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgYXRpbWVuc2VjOwotIHVpbnQzMl90IG10aW1lbnNlYzsKLSB1aW50MzJfdCB1bnVzZWQzOwotIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IHVudXNlZDQ7CisgIHVpbnQzMl90IHVpZDsKKyAgdWludDMyX3QgZ2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB1bnVzZWQ0OwotIHVpbnQzMl90IHVpZDsKLSB1aW50MzJfdCBnaWQ7Ci0gdWludDMyX3QgdW51c2VkNTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHVudXNlZDU7CiB9Owogc3RydWN0IGZ1c2Vfb3Blbl9pbiB7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgdW51c2VkOworICB1aW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHVudXNlZDsKIH07CiBzdHJ1Y3QgZnVzZV9jcmVhdGVfaW4gewotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB1bWFzazsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCB1bWFzazsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfb3Blbl9vdXQgeworICB1aW50NjRfdCBmaDsKKyAgdWludDMyX3Qgb3Blbl9mbGFnczsKKyAgdWludDMyX3QgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgZmg7Ci0gdWludDMyX3Qgb3Blbl9mbGFnczsKLSB1aW50MzJfdCBwYWRkaW5nOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9yZWxlYXNlX2luIHsKLSB1aW50NjRfdCBmaDsKLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCByZWxlYXNlX2ZsYWdzOworICB1aW50NjRfdCBmaDsKKyAgdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQzMl90IHJlbGVhc2VfZmxhZ3M7CisgIHVpbnQ2NF90IGxvY2tfb3duZXI7CiB9Owogc3RydWN0IGZ1c2VfZmx1c2hfaW4gewotIHVpbnQ2NF90IGZoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB1bnVzZWQ7Ci0gdWludDMyX3QgcGFkZGluZzsKLSB1aW50NjRfdCBsb2NrX293bmVyOworICB1aW50NjRfdCBmaDsKKyAgdWludDMyX3QgdW51c2VkOworICB1aW50MzJfdCBwYWRkaW5nOworICB1aW50NjRfdCBsb2NrX293bmVyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2VfcmVhZF9pbiB7Ci0gdWludDY0X3QgZmg7Ci0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQzMl90IHNpemU7CisgIHVpbnQ2NF90IGZoOworICB1aW50NjRfdCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHJlYWRfZmxhZ3M7Ci0gdWludDY0X3QgbG9ja19vd25lcjsKLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCByZWFkX2ZsYWdzOworICB1aW50NjRfdCBsb2NrX293bmVyOworICB1aW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBhZGRpbmc7CiB9OwogI2RlZmluZSBGVVNFX0NPTVBBVF9XUklURV9JTl9TSVpFIDI0CiBzdHJ1Y3QgZnVzZV93cml0ZV9pbiB7Ci0gdWludDY0X3QgZmg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IHdyaXRlX2ZsYWdzOwotIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQ2NF90IGZoOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHdyaXRlX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50NjRfdCBsb2NrX293bmVyOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfd3JpdGVfb3V0IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfQ09NUEFUX1NUQVRGU19TSVpFIDQ4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfc3RhdGZzX291dCB7Ci0gc3RydWN0IGZ1c2Vfa3N0YXRmcyBzdDsKKyAgc3RydWN0IGZ1c2Vfa3N0YXRmcyBzdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2VfZnN5bmNfaW4geworICB1aW50NjRfdCBmaDsKKyAgdWludDMyX3QgZnN5bmNfZmxhZ3M7CisgIHVpbnQzMl90IHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGZoOwotIHVpbnQzMl90IGZzeW5jX2ZsYWdzOwotIHVpbnQzMl90IHBhZGRpbmc7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX3NldHhhdHRyX2luIHsKLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IGZsYWdzOwotfTsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIHN0cnVjdCBmdXNlX2dldHhhdHRyX2luIHsKLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7Ci19OworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBwYWRkaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiBzdHJ1Y3QgZnVzZV9nZXR4YXR0cl9vdXQgewotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgcGFkZGluZzsKLX07CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIHN0cnVjdCBmdXNlX2xrX2luIHsKLSB1aW50NjRfdCBmaDsKLSB1aW50NjRfdCBvd25lcjsKLSBzdHJ1Y3QgZnVzZV9maWxlX2xvY2sgbGs7CisgIHVpbnQ2NF90IGZoOworICB1aW50NjRfdCBvd25lcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbGtfZmxhZ3M7Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgc3RydWN0IGZ1c2VfZmlsZV9sb2NrIGxrOworICB1aW50MzJfdCBsa19mbGFnczsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07Ci1zdHJ1Y3QgZnVzZV9sa19vdXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZnVzZV9maWxlX2xvY2sgbGs7CitzdHJ1Y3QgZnVzZV9sa19vdXQgeworICBzdHJ1Y3QgZnVzZV9maWxlX2xvY2sgbGs7CiB9Owogc3RydWN0IGZ1c2VfYWNjZXNzX2luIHsKLSB1aW50MzJfdCBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCBtYXNrOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKIHN0cnVjdCBmdXNlX2luaXRfaW4gewotIHVpbnQzMl90IG1ham9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBtaW5vcjsKLSB1aW50MzJfdCBtYXhfcmVhZGFoZWFkOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBtYWpvcjsKKyAgdWludDMyX3QgbWlub3I7CisgIHVpbnQzMl90IG1heF9yZWFkYWhlYWQ7CisgIHVpbnQzMl90IGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGVVNFX0NPTVBBVF9JTklUX09VVF9TSVpFIDgKKyNkZWZpbmUgRlVTRV9DT01QQVRfMjJfSU5JVF9PVVRfU0laRSAyNAogc3RydWN0IGZ1c2VfaW5pdF9vdXQgewotIHVpbnQzMl90IG1ham9yOwotIHVpbnQzMl90IG1pbm9yOwotIHVpbnQzMl90IG1heF9yZWFkYWhlYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQxNl90IG1heF9iYWNrZ3JvdW5kOwotIHVpbnQxNl90IGNvbmdlc3Rpb25fdGhyZXNob2xkOwotIHVpbnQzMl90IG1heF93cml0ZTsKKyAgdWludDMyX3QgbWFqb3I7CisgIHVpbnQzMl90IG1pbm9yOworICB1aW50MzJfdCBtYXhfcmVhZGFoZWFkOworICB1aW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQxNl90IG1heF9iYWNrZ3JvdW5kOworICB1aW50MTZfdCBjb25nZXN0aW9uX3RocmVzaG9sZDsKKyAgdWludDMyX3QgbWF4X3dyaXRlOworICB1aW50MzJfdCB0aW1lX2dyYW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCB1bnVzZWRbOV07CiB9OwogI2RlZmluZSBDVVNFX0lOSVRfSU5GT19NQVggNDA5Ngogc3RydWN0IGN1c2VfaW5pdF9pbiB7Ci0gdWludDMyX3QgbWFqb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG1pbm9yOwotIHVpbnQzMl90IHVudXNlZDsKLSB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgbWFqb3I7CisgIHVpbnQzMl90IG1pbm9yOworICB1aW50MzJfdCB1bnVzZWQ7CisgIHVpbnQzMl90IGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGN1c2VfaW5pdF9vdXQgewotIHVpbnQzMl90IG1ham9yOwotIHVpbnQzMl90IG1pbm9yOwotIHVpbnQzMl90IHVudXNlZDsKKyAgdWludDMyX3QgbWFqb3I7CisgIHVpbnQzMl90IG1pbm9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBtYXhfcmVhZDsKLSB1aW50MzJfdCBtYXhfd3JpdGU7Ci0gdWludDMyX3QgZGV2X21ham9yOworICB1aW50MzJfdCB1bnVzZWQ7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBtYXhfcmVhZDsKKyAgdWludDMyX3QgbWF4X3dyaXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBkZXZfbWlub3I7Ci0gdWludDMyX3Qgc3BhcmVbMTBdOworICB1aW50MzJfdCBkZXZfbWFqb3I7CisgIHVpbnQzMl90IGRldl9taW5vcjsKKyAgdWludDMyX3Qgc3BhcmVbMTBdOwogfTsKLXN0cnVjdCBmdXNlX2ludGVycnVwdF9pbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHVuaXF1ZTsKK3N0cnVjdCBmdXNlX2ludGVycnVwdF9pbiB7CisgIHVpbnQ2NF90IHVuaXF1ZTsKIH07CiBzdHJ1Y3QgZnVzZV9ibWFwX2luIHsKLSB1aW50NjRfdCBibG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgYmxvY2tzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IGJsb2NrOworICB1aW50MzJfdCBibG9ja3NpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CiB9Owotc3RydWN0IGZ1c2VfYm1hcF9vdXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBibG9jazsKK3N0cnVjdCBmdXNlX2JtYXBfb3V0IHsKKyAgdWludDY0X3QgYmxvY2s7CiB9Owogc3RydWN0IGZ1c2VfaW9jdGxfaW4gewotIHVpbnQ2NF90IGZoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBjbWQ7Ci0gdWludDY0X3QgYXJnOwotIHVpbnQzMl90IGluX3NpemU7CisgIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgY21kOworICB1aW50NjRfdCBhcmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG91dF9zaXplOworICB1aW50MzJfdCBpbl9zaXplOworICB1aW50MzJfdCBvdXRfc2l6ZTsKIH07CiBzdHJ1Y3QgZnVzZV9pb2N0bF9pb3ZlYyB7Ci0gdWludDY0X3QgYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgbGVuOworICB1aW50NjRfdCBiYXNlOworICB1aW50NjRfdCBsZW47CiB9Owogc3RydWN0IGZ1c2VfaW9jdGxfb3V0IHsKLSBpbnQzMl90IHJlc3VsdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgaW5faW92czsKLSB1aW50MzJfdCBvdXRfaW92czsKKyAgaW50MzJfdCByZXN1bHQ7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBpbl9pb3ZzOworICB1aW50MzJfdCBvdXRfaW92czsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX3BvbGxfaW4gewotIHVpbnQ2NF90IGZoOwotIHVpbnQ2NF90IGtoOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50NjRfdCBmaDsKKyAgdWludDY0X3Qga2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGV2ZW50czsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGV2ZW50czsKIH07CiBzdHJ1Y3QgZnVzZV9wb2xsX291dCB7Ci0gdWludDMyX3QgcmV2ZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDMyX3QgcmV2ZW50czsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07CiBzdHJ1Y3QgZnVzZV9ub3RpZnlfcG9sbF93YWtldXBfb3V0IHsKLSB1aW50NjRfdCBraDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQ2NF90IGtoOwogfTsKIHN0cnVjdCBmdXNlX2ZhbGxvY2F0ZV9pbiB7Ci0gdWludDY0X3QgZmg7Ci0gdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBmaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgbGVuZ3RoOwotIHVpbnQzMl90IG1vZGU7Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBsZW5ndGg7CisgIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IHBhZGRpbmc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9pbl9oZWFkZXIgewotIHVpbnQzMl90IGxlbjsKLSB1aW50MzJfdCBvcGNvZGU7Ci0gdWludDY0X3QgdW5pcXVlOworICB1aW50MzJfdCBsZW47CisgIHVpbnQzMl90IG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgbm9kZWlkOwotIHVpbnQzMl90IHVpZDsKLSB1aW50MzJfdCBnaWQ7Ci0gdWludDMyX3QgcGlkOworICB1aW50NjRfdCB1bmlxdWU7CisgIHVpbnQ2NF90IG5vZGVpZDsKKyAgdWludDMyX3QgdWlkOworICB1aW50MzJfdCBnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IHBpZDsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07CiBzdHJ1Y3QgZnVzZV9vdXRfaGVhZGVyIHsKLSB1aW50MzJfdCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgZXJyb3I7Ci0gdWludDY0X3QgdW5pcXVlOworICB1aW50MzJfdCBsZW47CisgIGludDMyX3QgZXJyb3I7CisgIHVpbnQ2NF90IHVuaXF1ZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2VfZGlyZW50IHsKKyAgdWludDY0X3QgaW5vOworICB1aW50NjRfdCBvZmY7CisgIHVpbnQzMl90IG5hbWVsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGlubzsKLSB1aW50NjRfdCBvZmY7Ci0gdWludDMyX3QgbmFtZWxlbjsKLSB1aW50MzJfdCB0eXBlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbXTsKKyAgdWludDMyX3QgdHlwZTsKKyAgY2hhciBuYW1lW107CiB9OwogI2RlZmluZSBGVVNFX05BTUVfT0ZGU0VUIG9mZnNldG9mKHN0cnVjdCBmdXNlX2RpcmVudCwgbmFtZSkKLSNkZWZpbmUgRlVTRV9ESVJFTlRfQUxJR04oeCkgICAoKCh4KSArIHNpemVvZih1aW50NjRfdCkgLSAxKSAmIH4oc2l6ZW9mKHVpbnQ2NF90KSAtIDEpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlVTRV9ESVJFTlRfU0laRShkKSAgIEZVU0VfRElSRU5UX0FMSUdOKEZVU0VfTkFNRV9PRkZTRVQgKyAoZCktPm5hbWVsZW4pCisjZGVmaW5lIEZVU0VfRElSRU5UX0FMSUdOKHgpICgoKHgpICsgc2l6ZW9mKHVpbnQ2NF90KSAtIDEpICYgfihzaXplb2YodWludDY0X3QpIC0gMSkpCisjZGVmaW5lIEZVU0VfRElSRU5UX1NJWkUoZCkgRlVTRV9ESVJFTlRfQUxJR04oRlVTRV9OQU1FX09GRlNFVCArIChkKS0+bmFtZWxlbikKIHN0cnVjdCBmdXNlX2RpcmVudHBsdXMgewotIHN0cnVjdCBmdXNlX2VudHJ5X291dCBlbnRyeV9vdXQ7Ci0gc3RydWN0IGZ1c2VfZGlyZW50IGRpcmVudDsKKyAgc3RydWN0IGZ1c2VfZW50cnlfb3V0IGVudHJ5X291dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBmdXNlX2RpcmVudCBkaXJlbnQ7CiB9OwotI2RlZmluZSBGVVNFX05BTUVfT0ZGU0VUX0RJUkVOVFBMVVMgICBvZmZzZXRvZihzdHJ1Y3QgZnVzZV9kaXJlbnRwbHVzLCBkaXJlbnQubmFtZSkKLSNkZWZpbmUgRlVTRV9ESVJFTlRQTFVTX1NJWkUoZCkgICBGVVNFX0RJUkVOVF9BTElHTihGVVNFX05BTUVfT0ZGU0VUX0RJUkVOVFBMVVMgKyAoZCktPmRpcmVudC5uYW1lbGVuKQorI2RlZmluZSBGVVNFX05BTUVfT0ZGU0VUX0RJUkVOVFBMVVMgb2Zmc2V0b2Yoc3RydWN0IGZ1c2VfZGlyZW50cGx1cywgZGlyZW50Lm5hbWUpCisjZGVmaW5lIEZVU0VfRElSRU5UUExVU19TSVpFKGQpIEZVU0VfRElSRU5UX0FMSUdOKEZVU0VfTkFNRV9PRkZTRVRfRElSRU5UUExVUyArIChkKS0+ZGlyZW50Lm5hbWVsZW4pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfbm90aWZ5X2ludmFsX2lub2RlX291dCB7CisgIHVpbnQ2NF90IGlubzsKKyAgaW50NjRfdCBvZmY7CisgIGludDY0X3QgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBpbm87Ci0gaW50NjRfdCBvZmY7Ci0gaW50NjRfdCBsZW47CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX25vdGlmeV9pbnZhbF9lbnRyeV9vdXQgewotIHVpbnQ2NF90IHBhcmVudDsKLSB1aW50MzJfdCBuYW1lbGVuOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IHBhcmVudDsKKyAgdWludDMyX3QgbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBhZGRpbmc7CiB9Owogc3RydWN0IGZ1c2Vfbm90aWZ5X2RlbGV0ZV9vdXQgewotIHVpbnQ2NF90IHBhcmVudDsKLSB1aW50NjRfdCBjaGlsZDsKKyAgdWludDY0X3QgcGFyZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBuYW1lbGVuOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IGNoaWxkOworICB1aW50MzJfdCBuYW1lbGVuOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9ub3RpZnlfc3RvcmVfb3V0IHsKKyAgdWludDY0X3Qgbm9kZWlkOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IG5vZGVpZDsKLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGFkZGluZzsKIH07CiBzdHJ1Y3QgZnVzZV9ub3RpZnlfcmV0cmlldmVfb3V0IHsKLSB1aW50NjRfdCBub3RpZnlfdW5pcXVlOwotIHVpbnQ2NF90IG5vZGVpZDsKKyAgdWludDY0X3Qgbm90aWZ5X3VuaXF1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3Qgbm9kZWlkOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9ub3RpZnlfcmV0cmlldmVfaW4gewotIHVpbnQ2NF90IGR1bW15MTsKLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDMyX3Qgc2l6ZTsKKyAgdWludDY0X3QgZHVtbXkxOworICB1aW50NjRfdCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGR1bW15MjsKLSB1aW50NjRfdCBkdW1teTM7Ci0gdWludDY0X3QgZHVtbXk0OworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBkdW1teTI7CisgIHVpbnQ2NF90IGR1bW15MzsKKyAgdWludDY0X3QgZHVtbXk0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Z1dGV4LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Z1dGV4LmgKaW5kZXggMzcxYzBlYS4uZTAzYjNmOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mdXRleC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnV0ZXguaApAQCAtNTMsMTcgKzUzLDE3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVRFWF9XQUlUX0JJVFNFVF9QUklWQVRFIChGVVRFWF9XQUlUX0JJVFNFVCB8IEZVVEVYX1BSSVZBVEVfRkxBRykKICNkZWZpbmUgRlVURVhfV0FLRV9CSVRTRVRfUFJJVkFURSAoRlVURVhfV0FLRV9CSVRTRVQgfCBGVVRFWF9QUklWQVRFX0ZMQUcpCi0jZGVmaW5lIEZVVEVYX1dBSVRfUkVRVUVVRV9QSV9QUklWQVRFIChGVVRFWF9XQUlUX1JFUVVFVUVfUEkgfCAgIEZVVEVYX1BSSVZBVEVfRkxBRykKLSNkZWZpbmUgRlVURVhfQ01QX1JFUVVFVUVfUElfUFJJVkFURSAoRlVURVhfQ01QX1JFUVVFVUVfUEkgfCAgIEZVVEVYX1BSSVZBVEVfRkxBRykKKyNkZWZpbmUgRlVURVhfV0FJVF9SRVFVRVVFX1BJX1BSSVZBVEUgKEZVVEVYX1dBSVRfUkVRVUVVRV9QSSB8IEZVVEVYX1BSSVZBVEVfRkxBRykKKyNkZWZpbmUgRlVURVhfQ01QX1JFUVVFVUVfUElfUFJJVkFURSAoRlVURVhfQ01QX1JFUVVFVUVfUEkgfCBGVVRFWF9QUklWQVRFX0ZMQUcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJvYnVzdF9saXN0IHsKLSBzdHJ1Y3Qgcm9idXN0X2xpc3QgX191c2VyICpuZXh0OworICBzdHJ1Y3Qgcm9idXN0X2xpc3QgX191c2VyICogbmV4dDsKIH07CiBzdHJ1Y3Qgcm9idXN0X2xpc3RfaGVhZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCByb2J1c3RfbGlzdCBsaXN0OwotIGxvbmcgZnV0ZXhfb2Zmc2V0OwotIHN0cnVjdCByb2J1c3RfbGlzdCBfX3VzZXIgKmxpc3Rfb3BfcGVuZGluZzsKKyAgc3RydWN0IHJvYnVzdF9saXN0IGxpc3Q7CisgIGxvbmcgZnV0ZXhfb2Zmc2V0OworICBzdHJ1Y3Qgcm9idXN0X2xpc3QgX191c2VyICogbGlzdF9vcF9wZW5kaW5nOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVVEVYX1dBSVRFUlMgMHg4MDAwMDAwMApAQCAtODcsNSArODcsNSBAQAogI2RlZmluZSBGVVRFWF9PUF9DTVBfR1QgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVURVhfT1BfQ01QX0dFIDUKLSNkZWZpbmUgRlVURVhfT1Aob3AsIG9wYXJnLCBjbXAsIGNtcGFyZykgICAoKChvcCAmIDB4ZikgPDwgMjgpIHwgKChjbXAgJiAweGYpIDw8IDI0KSAgIHwgKChvcGFyZyAmIDB4ZmZmKSA8PCAxMikgfCAoY21wYXJnICYgMHhmZmYpKQorI2RlZmluZSBGVVRFWF9PUChvcCxvcGFyZyxjbXAsY21wYXJnKSAoKChvcCAmIDB4ZikgPDwgMjgpIHwgKChjbXAgJiAweGYpIDw8IDI0KSB8ICgob3BhcmcgJiAweGZmZikgPDwgMTIpIHwgKGNtcGFyZyAmIDB4ZmZmKSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5fc3RhdHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2VuX3N0YXRzLmgKaW5kZXggZTFjYTczZi4uOWRjOWIzMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5fc3RhdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbl9zdGF0cy5oCkBAIC0yMSw0OSArMjEsNDkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9TVEFUU19VTlNQRUMsCi0gVENBX1NUQVRTX0JBU0lDLAotIFRDQV9TVEFUU19SQVRFX0VTVCwKLSBUQ0FfU1RBVFNfUVVFVUUsCisgIFRDQV9TVEFUU19VTlNQRUMsCisgIFRDQV9TVEFUU19CQVNJQywKKyAgVENBX1NUQVRTX1JBVEVfRVNULAorICBUQ0FfU1RBVFNfUVVFVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9TVEFUU19BUFAsCi0gVENBX1NUQVRTX1JBVEVfRVNUNjQsCi0gX19UQ0FfU1RBVFNfTUFYLAorICBUQ0FfU1RBVFNfQVBQLAorICBUQ0FfU1RBVFNfUkFURV9FU1Q2NCwKKyAgX19UQ0FfU1RBVFNfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9TVEFUU19NQVggKF9fVENBX1NUQVRTX01BWCAtIDEpCiBzdHJ1Y3QgZ25ldF9zdGF0c19iYXNpYyB7Ci0gX191NjQgYnl0ZXM7Ci0gX191MzIgcGFja2V0czsKKyAgX191NjQgYnl0ZXM7CisgIF9fdTMyIHBhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBnbmV0X3N0YXRzX2Jhc2ljX3BhY2tlZCB7Ci0gX191NjQgYnl0ZXM7Ci0gX191MzIgcGFja2V0czsKKyAgX191NjQgYnl0ZXM7CisgIF9fdTMyIHBhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGduZXRfc3RhdHNfcmF0ZV9lc3QgewotIF9fdTMyIGJwczsKLSBfX3UzMiBwcHM7CisgIF9fdTMyIGJwczsKKyAgX191MzIgcHBzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZ25ldF9zdGF0c19yYXRlX2VzdDY0IHsKLSBfX3U2NCBicHM7Ci0gX191NjQgcHBzOworICBfX3U2NCBicHM7CisgIF9fdTY0IHBwczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGduZXRfc3RhdHNfcXVldWUgewotIF9fdTMyIHFsZW47Ci0gX191MzIgYmFja2xvZzsKKyAgX191MzIgcWxlbjsKKyAgX191MzIgYmFja2xvZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHJvcHM7Ci0gX191MzIgcmVxdWV1ZXM7Ci0gX191MzIgb3ZlcmxpbWl0czsKKyAgX191MzIgZHJvcHM7CisgIF9fdTMyIHJlcXVldWVzOworICBfX3UzMiBvdmVybGltaXRzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ25ldF9lc3RpbWF0b3IgewotIHNpZ25lZCBjaGFyIGludGVydmFsOwotIHVuc2lnbmVkIGNoYXIgZXdtYV9sb2c7CisgIHNpZ25lZCBjaGFyIGludGVydmFsOworICB1bnNpZ25lZCBjaGFyIGV3bWFfbG9nOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2VuZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbmV0bGluay5oCmluZGV4IGMwNjllZmQuLjVkYWE0YTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2VuZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5ldGxpbmsuaApAQCAtMjYsOSArMjYsOSBAQAogI2RlZmluZSBHRU5MX01BWF9JRCAxMDIzCiBzdHJ1Y3QgZ2VubG1zZ2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY21kOwotIF9fdTggdmVyc2lvbjsKLSBfX3UxNiByZXNlcnZlZDsKKyAgX191OCBjbWQ7CisgIF9fdTggdmVyc2lvbjsKKyAgX191MTYgcmVzZXJ2ZWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0VOTF9IRFJMRU4gTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBnZW5sbXNnaGRyKSkKQEAgLTQzLDUyICs0Myw1MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0VOTF9JRF9QTUNSQUlEIChOTE1TR19NSU5fVFlQRSArIDIpCiBlbnVtIHsKLSBDVFJMX0NNRF9VTlNQRUMsCi0gQ1RSTF9DTURfTkVXRkFNSUxZLAorICBDVFJMX0NNRF9VTlNQRUMsCisgIENUUkxfQ01EX05FV0ZBTUlMWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RSTF9DTURfREVMRkFNSUxZLAotIENUUkxfQ01EX0dFVEZBTUlMWSwKLSBDVFJMX0NNRF9ORVdPUFMsCi0gQ1RSTF9DTURfREVMT1BTLAorICBDVFJMX0NNRF9ERUxGQU1JTFksCisgIENUUkxfQ01EX0dFVEZBTUlMWSwKKyAgQ1RSTF9DTURfTkVXT1BTLAorICBDVFJMX0NNRF9ERUxPUFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUUkxfQ01EX0dFVE9QUywKLSBDVFJMX0NNRF9ORVdNQ0FTVF9HUlAsCi0gQ1RSTF9DTURfREVMTUNBU1RfR1JQLAotIENUUkxfQ01EX0dFVE1DQVNUX0dSUCwKKyAgQ1RSTF9DTURfR0VUT1BTLAorICBDVFJMX0NNRF9ORVdNQ0FTVF9HUlAsCisgIENUUkxfQ01EX0RFTE1DQVNUX0dSUCwKKyAgQ1RSTF9DTURfR0VUTUNBU1RfR1JQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUUkxfQ01EX01BWCwKKyAgX19DVFJMX0NNRF9NQVgsCiB9OwogI2RlZmluZSBDVFJMX0NNRF9NQVggKF9fQ1RSTF9DTURfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVFJMX0FUVFJfVU5TUEVDLAotIENUUkxfQVRUUl9GQU1JTFlfSUQsCi0gQ1RSTF9BVFRSX0ZBTUlMWV9OQU1FLAotIENUUkxfQVRUUl9WRVJTSU9OLAorICBDVFJMX0FUVFJfVU5TUEVDLAorICBDVFJMX0FUVFJfRkFNSUxZX0lELAorICBDVFJMX0FUVFJfRkFNSUxZX05BTUUsCisgIENUUkxfQVRUUl9WRVJTSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVFJMX0FUVFJfSERSU0laRSwKLSBDVFJMX0FUVFJfTUFYQVRUUiwKLSBDVFJMX0FUVFJfT1BTLAotIENUUkxfQVRUUl9NQ0FTVF9HUk9VUFMsCisgIENUUkxfQVRUUl9IRFJTSVpFLAorICBDVFJMX0FUVFJfTUFYQVRUUiwKKyAgQ1RSTF9BVFRSX09QUywKKyAgQ1RSTF9BVFRSX01DQVNUX0dST1VQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVFJMX0FUVFJfTUFYLAorICBfX0NUUkxfQVRUUl9NQVgsCiB9OwogI2RlZmluZSBDVFJMX0FUVFJfTUFYIChfX0NUUkxfQVRUUl9NQVggLSAxKQogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUUkxfQVRUUl9PUF9VTlNQRUMsCi0gQ1RSTF9BVFRSX09QX0lELAotIENUUkxfQVRUUl9PUF9GTEFHUywKLSBfX0NUUkxfQVRUUl9PUF9NQVgsCisgIENUUkxfQVRUUl9PUF9VTlNQRUMsCisgIENUUkxfQVRUUl9PUF9JRCwKKyAgQ1RSTF9BVFRSX09QX0ZMQUdTLAorICBfX0NUUkxfQVRUUl9PUF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ1RSTF9BVFRSX09QX01BWCAoX19DVFJMX0FUVFJfT1BfTUFYIC0gMSkKIGVudW0gewotIENUUkxfQVRUUl9NQ0FTVF9HUlBfVU5TUEVDLAorICBDVFJMX0FUVFJfTUNBU1RfR1JQX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RSTF9BVFRSX01DQVNUX0dSUF9OQU1FLAotIENUUkxfQVRUUl9NQ0FTVF9HUlBfSUQsCi0gX19DVFJMX0FUVFJfTUNBU1RfR1JQX01BWCwKKyAgQ1RSTF9BVFRSX01DQVNUX0dSUF9OQU1FLAorICBDVFJMX0FUVFJfTUNBU1RfR1JQX0lELAorICBfX0NUUkxfQVRUUl9NQ0FTVF9HUlBfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUUkxfQVRUUl9NQ0FTVF9HUlBfTUFYIChfX0NUUkxfQVRUUl9NQ0FTVF9HUlBfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2Vud3FlL2dlbndxZV9jYXJkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbndxZS9nZW53cWVfY2FyZC5oCmluZGV4IGM4MzFjZmMuLmM5YzExODYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2Vud3FlL2dlbndxZV9jYXJkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW53cWUvZ2Vud3FlX2NhcmQuaApAQCAtMzksNyArMzksNyBAQAogI2RlZmluZSBJT19FWFRFTkRFRF9ESUFHX1NFTEVDVE9SIDB4MDAwMDAwNzAKICNkZWZpbmUgSU9fRVhURU5ERURfRElBR19SRUFEX01CWCAweDAwMDAwMDc4CiAjZGVmaW5lIElPX0VYVEVOREVEX0RJQUdfTUFQKHJpbmcpICgweDAwMDAwNTAwIHwgKChyaW5nKSA8PCAzKSkKLSNkZWZpbmUgR0VOV1FFX0VYVEVOREVEX0RJQUdfU0VMRUNUT1IocmluZywgdHJhY2UpICgoKHJpbmcpIDw8IDgpIHwgKHRyYWNlKSkKKyNkZWZpbmUgR0VOV1FFX0VYVEVOREVEX0RJQUdfU0VMRUNUT1IocmluZyx0cmFjZSkgKCgocmluZykgPDwgOCkgfCAodHJhY2UpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU9fU0xVX1VOSVRDRkcgMHgwMDAwMDAwMAogI2RlZmluZSBJT19TTFVfVU5JVENGR19UWVBFX01BU0sgMHgwMDAwMDAwMDBmZjAwMDAwCkBAIC05NCwxMSArOTQsMTEgQEAKICNkZWZpbmUgSU9fU0xDX1ZGX0ZSRUVfUlVOTklOR19USU1FUiAweDAwMDUwMTA4CiAjZGVmaW5lIElPX1BGX1NMQ19WSVJUVUFMX1JFR0lPTiAweDAwMDUwMDAwCiAjZGVmaW5lIElPX1BGX1NMQ19WSVJUVUFMX1dJTkRPVyAweDAwMDYwMDAwCi0jZGVmaW5lIElPX1BGX1NMQ19KT0JQRU5EKG4pICgweDAwMDYxMDAwICsgOCoobikpCisjZGVmaW5lIElPX1BGX1NMQ19KT0JQRU5EKG4pICgweDAwMDYxMDAwICsgOCAqIChuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElPX1NMQ19KT0JQRU5EKG4pIElPX1BGX1NMQ19KT0JQRU5EKG4pCi0jZGVmaW5lIElPX1NMVV9TTENfUEFSU0VfVFJBUChuKSAoMHgwMDAxMTAwMCArIDgqKG4pKQotI2RlZmluZSBJT19TTFVfU0xDX0RJU1BfVFJBUChuKSAoMHgwMDAxMTIwMCArIDgqKG4pKQorI2RlZmluZSBJT19TTFVfU0xDX1BBUlNFX1RSQVAobikgKDB4MDAwMTEwMDAgKyA4ICogKG4pKQorI2RlZmluZSBJT19TTFVfU0xDX0RJU1BfVFJBUChuKSAoMHgwMDAxMTIwMCArIDggKiAobikpCiAjZGVmaW5lIElPX1NMQ19DRkdSRUdfR0ZJUiAweDAwMDIwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRklSX0VSUl9UUklHR0VSIDB4MDAwMGZmZmYKQEAgLTE3Nyw4ICsxNzcsOCBAQAogI2RlZmluZSBJT19BUFBfREVCVUdfUkVHXzE4IDB4MDIwMTAwODgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbyB7Ci0gX191NjQgbnVtOwotIF9fdTY0IHZhbDY0OworICBfX3U2NCBudW07CisgIF9fdTY0IHZhbDY0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElPX0lMTEVHQUxfVkFMVUUgMHhmZmZmZmZmZmZmZmZmZmZmdWxsCkBAIC0yMjQsMTA4ICsyMjQsMTEwIEBACiAjZGVmaW5lIFNMQ01EX01PVkVfRkxBU0hfRkxBR19QQVJUSVRJT04gKDEgPDwgNCkKICNkZWZpbmUgU0xDTURfTU9WRV9GTEFTSF9GTEFHX0VSQVNFICgxIDw8IDUpCiBlbnVtIGdlbndxZV9jYXJkX3N0YXRlIHsKLSBHRU5XUUVfQ0FSRF9VTlVTRUQgPSAwLAorICBHRU5XUUVfQ0FSRF9VTlVTRUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHRU5XUUVfQ0FSRF9VU0VEID0gMSwKLSBHRU5XUUVfQ0FSRF9GQVRBTF9FUlJPUiA9IDIsCi0gR0VOV1FFX0NBUkRfU1RBVEVfTUFYLAorICBHRU5XUUVfQ0FSRF9VU0VEID0gMSwKKyAgR0VOV1FFX0NBUkRfRkFUQUxfRVJST1IgPSAyLAorICBHRU5XUUVfQ0FSRF9SRUxPQURfQklUU1RSRUFNID0gMywKKyAgR0VOV1FFX0NBUkRfU1RBVEVfTUFYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGdlbndxZV9iaXRzdHJlYW0gewotIF9fdTY0IGRhdGFfYWRkcjsKLSBfX3UzMiBzaXplOwotIF9fdTMyIGNyYzsKKyAgX191NjQgZGF0YV9hZGRyOworICBfX3UzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0YXJnZXRfYWRkcjsKLSBfX3UzMiBwYXJ0aXRpb247Ci0gX191MzIgdWlkOwotIF9fdTY0IHNsdV9pZDsKKyAgX191MzIgY3JjOworICBfX3U2NCB0YXJnZXRfYWRkcjsKKyAgX191MzIgcGFydGl0aW9uOworICBfX3UzMiB1aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFwcF9pZDsKLSBfX3UxNiByZXRjOwotIF9fdTE2IGF0dG47Ci0gX191MzIgcHJvZ3Jlc3M7CisgIF9fdTY0IHNsdV9pZDsKKyAgX191NjQgYXBwX2lkOworICBfX3UxNiByZXRjOworICBfX3UxNiBhdHRuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcHJvZ3Jlc3M7CiB9OwogI2RlZmluZSBERENCX0xFTkdUSCAyNTYKICNkZWZpbmUgRERDQl9BU0lWX0xFTkdUSCAxMDQKLSNkZWZpbmUgRERDQl9BU0lWX0xFTkdUSF9BVFMgOTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEREQ0JfQVNJVl9MRU5HVEhfQVRTIDk2CiAjZGVmaW5lIEREQ0JfQVNWX0xFTkdUSCA2NAogI2RlZmluZSBERENCX0ZJWFVQUyAxMgogc3RydWN0IGdlbndxZV9kZWJ1Z19kYXRhIHsKLSBjaGFyIGRyaXZlcl92ZXJzaW9uWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2x1X3VuaXRjZmc7Ci0gX191NjQgYXBwX3VuaXRjZmc7Ci0gX191OCBkZGNiX2JlZm9yZVtERENCX0xFTkdUSF07Ci0gX191OCBkZGNiX3ByZXZbRERDQl9MRU5HVEhdOworICBjaGFyIGRyaXZlcl92ZXJzaW9uWzY0XTsKKyAgX191NjQgc2x1X3VuaXRjZmc7CisgIF9fdTY0IGFwcF91bml0Y2ZnOworICBfX3U4IGRkY2JfYmVmb3JlW0REQ0JfTEVOR1RIXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkZGNiX2ZpbmlzaGVkW0REQ0JfTEVOR1RIXTsKKyAgX191OCBkZGNiX3ByZXZbRERDQl9MRU5HVEhdOworICBfX3U4IGRkY2JfZmluaXNoZWRbRERDQl9MRU5HVEhdOwogfTsKICNkZWZpbmUgQVRTX1RZUEVfREFUQSAweDB1bGwKLSNkZWZpbmUgQVRTX1RZUEVfRkxBVF9SRCAweDR1bGwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFUU19UWVBFX0ZMQVRfUkQgMHg0dWxsCiAjZGVmaW5lIEFUU19UWVBFX0ZMQVRfUkRXUiAweDV1bGwKICNkZWZpbmUgQVRTX1RZUEVfU0dMX1JEIDB4NnVsbAogI2RlZmluZSBBVFNfVFlQRV9TR0xfUkRXUiAweDd1bGwKLSNkZWZpbmUgQVRTX1NFVF9GTEFHUyhfc3RydWN0LCBfZmllbGQsIF9mbGFncykgICAoKChfZmxhZ3MpICYgMHhmKSA8PCAoNDQgLSAoNCAqIChvZmZzZXRvZihfc3RydWN0LCBfZmllbGQpIC8gOCkpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUU19HRVRfRkxBR1MoX2F0cywgX2J5dGVfb2ZmcykgICAoKChfYXRzKSA+PiAoNDQgLSAoNCAqICgoX2J5dGVfb2ZmcykgLyA4KSkpKSAmIDB4ZikKKyNkZWZpbmUgQVRTX1NFVF9GTEFHUyhfc3RydWN0LF9maWVsZCxfZmxhZ3MpICgoKF9mbGFncykgJiAweGYpIDw8ICg0NCAtICg0ICogKG9mZnNldG9mKF9zdHJ1Y3QsIF9maWVsZCkgLyA4KSkpKQorI2RlZmluZSBBVFNfR0VUX0ZMQUdTKF9hdHMsX2J5dGVfb2ZmcykgKCgoX2F0cykgPj4gKDQ0IC0gKDQgKiAoKF9ieXRlX29mZnMpIC8gOCkpKSkgJiAweGYpCiBzdHJ1Y3QgZ2Vud3FlX2RkY2JfY21kIHsKLSBfX3U2NCBuZXh0X2FkZHI7Ci0gX191NjQgZmxhZ3M7CisgIF9fdTY0IG5leHRfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhY2Z1bmM7Ci0gX191OCBjbWQ7Ci0gX191OCBhc2l2X2xlbmd0aDsKLSBfX3U4IGFzdl9sZW5ndGg7CisgIF9fdTY0IGZsYWdzOworICBfX3U4IGFjZnVuYzsKKyAgX191OCBjbWQ7CisgIF9fdTggYXNpdl9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGNtZG9wdHM7Ci0gX191MTYgcmV0YzsKLSBfX3UxNiBhdHRuOwotIF9fdTE2IHZjcmM7CisgIF9fdTggYXN2X2xlbmd0aDsKKyAgX191MTYgY21kb3B0czsKKyAgX191MTYgcmV0YzsKKyAgX191MTYgYXR0bjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJvZ3Jlc3M7Ci0gX191NjQgZGVxdWVfdHM7Ci0gX191NjQgY21wbHRfdHM7Ci0gX191NjQgZGlzcF90czsKKyAgX191MTYgdmNyYzsKKyAgX191MzIgcHJvZ3Jlc3M7CisgIF9fdTY0IGRlcXVlX3RzOworICBfX3U2NCBjbXBsdF90czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGRhdGFfYWRkcjsKLSBfX3U4IGFzdltERENCX0FTVl9MRU5HVEhdOwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICBfX3U2NCBkaXNwX3RzOworICBfX3U2NCBkZGF0YV9hZGRyOworICBfX3U4IGFzdltERENCX0FTVl9MRU5HVEhdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGF0czsKLSBfX3U4IGFzaXZbRERDQl9BU0lWX0xFTkdUSF9BVFNdOwotIH07Ci0gX191OCBfX2FzaXZbRERDQl9BU0lWX0xFTkdUSF07CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGF0czsKKyAgICAgIF9fdTggYXNpdltERENCX0FTSVZfTEVOR1RIX0FUU107CisgICAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgICBfX3U4IF9fYXNpdltERENCX0FTSVZfTEVOR1RIXTsKKyAgfTsKIH07CiAjZGVmaW5lIEdFTldRRV9JT0NfQ09ERSAweGE1Ci0jZGVmaW5lIEdFTldRRV9SRUFEX1JFRzY0IF9JT1IoR0VOV1FFX0lPQ19DT0RFLCAzMCwgc3RydWN0IGdlbndxZV9yZWdfaW8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBHRU5XUUVfUkVBRF9SRUc2NCBfSU9SKEdFTldRRV9JT0NfQ09ERSwgMzAsIHN0cnVjdCBnZW53cWVfcmVnX2lvKQogI2RlZmluZSBHRU5XUUVfV1JJVEVfUkVHNjQgX0lPVyhHRU5XUUVfSU9DX0NPREUsIDMxLCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKICNkZWZpbmUgR0VOV1FFX1JFQURfUkVHMzIgX0lPUihHRU5XUUVfSU9DX0NPREUsIDMyLCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKICNkZWZpbmUgR0VOV1FFX1dSSVRFX1JFRzMyIF9JT1coR0VOV1FFX0lPQ19DT0RFLCAzMywgc3RydWN0IGdlbndxZV9yZWdfaW8pCi0jZGVmaW5lIEdFTldRRV9SRUFEX1JFRzE2IF9JT1IoR0VOV1FFX0lPQ19DT0RFLCAzNCwgc3RydWN0IGdlbndxZV9yZWdfaW8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBHRU5XUUVfUkVBRF9SRUcxNiBfSU9SKEdFTldRRV9JT0NfQ09ERSwgMzQsIHN0cnVjdCBnZW53cWVfcmVnX2lvKQogI2RlZmluZSBHRU5XUUVfV1JJVEVfUkVHMTYgX0lPVyhHRU5XUUVfSU9DX0NPREUsIDM1LCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKICNkZWZpbmUgR0VOV1FFX0dFVF9DQVJEX1NUQVRFIF9JT1IoR0VOV1FFX0lPQ19DT0RFLCAzNiwgZW51bSBnZW53cWVfY2FyZF9zdGF0ZSkKIHN0cnVjdCBnZW53cWVfbWVtIHsKLSBfX3U2NCBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzaXplOwotIF9fdTY0IGRpcmVjdGlvbjsKLSBfX3U2NCBmbGFnczsKKyAgX191NjQgYWRkcjsKKyAgX191NjQgc2l6ZTsKKyAgX191NjQgZGlyZWN0aW9uOworICBfX3U2NCBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0VOV1FFX1BJTl9NRU0gX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA0MCwgc3RydWN0IGdlbndxZV9tZW0pCiAjZGVmaW5lIEdFTldRRV9VTlBJTl9NRU0gX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA0MSwgc3RydWN0IGdlbndxZV9tZW0pCi0jZGVmaW5lIEdFTldRRV9FWEVDVVRFX0REQ0IgICBfSU9XUihHRU5XUUVfSU9DX0NPREUsIDUwLCBzdHJ1Y3QgZ2Vud3FlX2RkY2JfY21kKQotI2RlZmluZSBHRU5XUUVfRVhFQ1VURV9SQVdfRERDQiAgIF9JT1dSKEdFTldRRV9JT0NfQ09ERSwgNTEsIHN0cnVjdCBnZW53cWVfZGRjYl9jbWQpCisjZGVmaW5lIEdFTldRRV9FWEVDVVRFX0REQ0IgX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA1MCwgc3RydWN0IGdlbndxZV9kZGNiX2NtZCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEdFTldRRV9FWEVDVVRFX1JBV19ERENCIF9JT1dSKEdFTldRRV9JT0NfQ09ERSwgNTEsIHN0cnVjdCBnZW53cWVfZGRjYl9jbWQpCiAjZGVmaW5lIEdFTldRRV9TTFVfVVBEQVRFIF9JT1dSKEdFTldRRV9JT0NfQ09ERSwgODAsIHN0cnVjdCBnZW53cWVfYml0c3RyZWFtKQogI2RlZmluZSBHRU5XUUVfU0xVX1JFQUQgX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA4MSwgc3RydWN0IGdlbndxZV9iaXRzdHJlYW0pCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dmczJfb25kaXNrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dmczJfb25kaXNrLmgKaW5kZXggYTMxMDZiYS4uZmNiNTk5MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZnMyX29uZGlzay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2ZzMl9vbmRpc2suaApAQCAtMjYsNyArMjYsNyBAQAogI2RlZmluZSBHRlMyX01PVU5UX0xPQ0sgMAogI2RlZmluZSBHRlMyX0xJVkVfTE9DSyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBHRlMyX1RSQU5TX0xPQ0sgMgorI2RlZmluZSBHRlMyX0ZSRUVaRV9MT0NLIDIKICNkZWZpbmUgR0ZTMl9SRU5BTUVfTE9DSyAzCiAjZGVmaW5lIEdGUzJfQ09OVFJPTF9MT0NLIDQKICNkZWZpbmUgR0ZTMl9NT1VOVEVEX0xPQ0sgNQpAQCAtNTYsOCArNTYsOCBAQAogI2RlZmluZSBHRlMyX0ZPUk1BVF9NVUxUSSAxOTAwCiBzdHJ1Y3QgZ2ZzMl9pbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IG5vX2Zvcm1hbF9pbm87Ci0gX19iZTY0IG5vX2FkZHI7CisgIF9fYmU2NCBub19mb3JtYWxfaW5vOworICBfX2JlNjQgbm9fYWRkcjsKIH07CiAjZGVmaW5lIEdGUzJfTUVUQVRZUEVfTk9ORSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzgsNTMgKzc4LDUzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX01FVEFUWVBFX1FDIDE0CiBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciB7Ci0gX19iZTMyIG1oX21hZ2ljOwotIF9fYmUzMiBtaF90eXBlOworICBfX2JlMzIgbWhfbWFnaWM7CisgIF9fYmUzMiBtaF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgX19wYWQwOwotIF9fYmUzMiBtaF9mb3JtYXQ7Ci0gdW5pb24gewotIF9fYmUzMiBtaF9qaWQ7CisgIF9fYmU2NCBfX3BhZDA7CisgIF9fYmUzMiBtaF9mb3JtYXQ7CisgIHVuaW9uIHsKKyAgICBfX2JlMzIgbWhfamlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgX19wYWQxOwotIH07CisgICAgX19iZTMyIF9fcGFkMTsKKyAgfTsKIH07CiAjZGVmaW5lIEdGUzJfU0JfQUREUiAxMjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGUzJfU0JfTE9DSyAwCiAjZGVmaW5lIEdGUzJfTE9DS05BTUVfTEVOIDY0CiBzdHJ1Y3QgZ2ZzMl9zYiB7Ci0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgc2JfaGVhZGVyOworICBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciBzYl9oZWFkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzYl9mc19mb3JtYXQ7Ci0gX19iZTMyIHNiX211bHRpaG9zdF9mb3JtYXQ7Ci0gX191MzIgX19wYWQwOwotIF9fYmUzMiBzYl9ic2l6ZTsKKyAgX19iZTMyIHNiX2ZzX2Zvcm1hdDsKKyAgX19iZTMyIHNiX211bHRpaG9zdF9mb3JtYXQ7CisgIF9fdTMyIF9fcGFkMDsKKyAgX19iZTMyIHNiX2JzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2JfYnNpemVfc2hpZnQ7Ci0gX191MzIgX19wYWQxOwotIHN0cnVjdCBnZnMyX2ludW0gc2JfbWFzdGVyX2RpcjsKLSBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkMjsKKyAgX19iZTMyIHNiX2JzaXplX3NoaWZ0OworICBfX3UzMiBfX3BhZDE7CisgIHN0cnVjdCBnZnMyX2ludW0gc2JfbWFzdGVyX2RpcjsKKyAgc3RydWN0IGdmczJfaW51bSBfX3BhZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBnZnMyX2ludW0gc2Jfcm9vdF9kaXI7Ci0gY2hhciBzYl9sb2NrcHJvdG9bR0ZTMl9MT0NLTkFNRV9MRU5dOwotIGNoYXIgc2JfbG9ja3RhYmxlW0dGUzJfTE9DS05BTUVfTEVOXTsKLSBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkMzsKKyAgc3RydWN0IGdmczJfaW51bSBzYl9yb290X2RpcjsKKyAgY2hhciBzYl9sb2NrcHJvdG9bR0ZTMl9MT0NLTkFNRV9MRU5dOworICBjaGFyIHNiX2xvY2t0YWJsZVtHRlMyX0xPQ0tOQU1FX0xFTl07CisgIHN0cnVjdCBnZnMyX2ludW0gX19wYWQzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkNDsKKyAgc3RydWN0IGdmczJfaW51bSBfX3BhZDQ7CiAjZGVmaW5lIEdGUzJfSEFTX1VVSUQgMQotIF9fdTggc2JfdXVpZFsxNl07CisgIF9fdTggc2JfdXVpZFsxNl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBnZnMyX3JpbmRleCB7Ci0gX19iZTY0IHJpX2FkZHI7Ci0gX19iZTMyIHJpX2xlbmd0aDsKLSBfX3UzMiBfX3BhZDsKKyAgX19iZTY0IHJpX2FkZHI7CisgIF9fYmUzMiByaV9sZW5ndGg7CisgIF9fdTMyIF9fcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgcmlfZGF0YTA7Ci0gX19iZTMyIHJpX2RhdGE7Ci0gX19iZTMyIHJpX2JpdGJ5dGVzOwotIF9fdTggcmlfcmVzZXJ2ZWRbNjRdOworICBfX2JlNjQgcmlfZGF0YTA7CisgIF9fYmUzMiByaV9kYXRhOworICBfX2JlMzIgcmlfYml0Ynl0ZXM7CisgIF9fdTggcmlfcmVzZXJ2ZWRbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEdGUzJfTkJCWSA0CkBAIC0xNDMsMzMgKzE0MywzMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9SR0ZfVFJJTU1FRCAweDAwMDAwMDEwCiBzdHJ1Y3QgZ2ZzMl9yZ3JwX2x2YiB7Ci0gX19iZTMyIHJsX21hZ2ljOwotIF9fYmUzMiBybF9mbGFnczsKKyAgX19iZTMyIHJsX21hZ2ljOworICBfX2JlMzIgcmxfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBybF9mcmVlOwotIF9fYmUzMiBybF9kaW5vZGVzOwotIF9fYmU2NCBybF9pZ2VuZXJhdGlvbjsKLSBfX2JlMzIgcmxfdW5saW5rZWQ7CisgIF9fYmUzMiBybF9mcmVlOworICBfX2JlMzIgcmxfZGlub2RlczsKKyAgX19iZTY0IHJsX2lnZW5lcmF0aW9uOworICBfX2JlMzIgcmxfdW5saW5rZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBfX3BhZDsKKyAgX19iZTMyIF9fcGFkOwogfTsKIHN0cnVjdCBnZnMyX3JncnAgewotIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIHJnX2hlYWRlcjsKKyAgc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgcmdfaGVhZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgcmdfZmxhZ3M7Ci0gX19iZTMyIHJnX2ZyZWU7Ci0gX19iZTMyIHJnX2Rpbm9kZXM7Ci0gX19iZTMyIF9fcGFkOworICBfX2JlMzIgcmdfZmxhZ3M7CisgIF9fYmUzMiByZ19mcmVlOworICBfX2JlMzIgcmdfZGlub2RlczsKKyAgX19iZTMyIF9fcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgcmdfaWdlbmVyYXRpb247Ci0gX191OCByZ19yZXNlcnZlZFs4MF07CisgIF9fYmU2NCByZ19pZ2VuZXJhdGlvbjsKKyAgX191OCByZ19yZXNlcnZlZFs4MF07CiB9Owogc3RydWN0IGdmczJfcXVvdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgcXVfbGltaXQ7Ci0gX19iZTY0IHF1X3dhcm47Ci0gX19iZTY0IHF1X3ZhbHVlOwotIF9fdTggcXVfcmVzZXJ2ZWRbNjRdOworICBfX2JlNjQgcXVfbGltaXQ7CisgIF9fYmU2NCBxdV93YXJuOworICBfX2JlNjQgcXVfdmFsdWU7CisgIF9fdTggcXVfcmVzZXJ2ZWRbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEdGUzJfTUFYX01FVEFfSEVJR0hUIDEwCkBAIC0xNzgsMjMgKzE3OCwyMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUYyRFQoc2lmKSAoKChzaWYpICYgU19JRk1UKSA+PiAxMikKIGVudW0gewotIGdmczJmbF9KZGF0YSA9IDAsCi0gZ2ZzMmZsX0V4SGFzaCA9IDEsCisgIGdmczJmbF9KZGF0YSA9IDAsCisgIGdmczJmbF9FeEhhc2ggPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBnZnMyZmxfVW51c2VkID0gMiwKLSBnZnMyZmxfRWFJbmRpcmVjdCA9IDMsCi0gZ2ZzMmZsX0RpcmVjdGlvID0gNCwKLSBnZnMyZmxfSW1tdXRhYmxlID0gNSwKKyAgZ2ZzMmZsX1VudXNlZCA9IDIsCisgIGdmczJmbF9FYUluZGlyZWN0ID0gMywKKyAgZ2ZzMmZsX0RpcmVjdGlvID0gNCwKKyAgZ2ZzMmZsX0ltbXV0YWJsZSA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGdmczJmbF9BcHBlbmRPbmx5ID0gNiwKLSBnZnMyZmxfTm9BdGltZSA9IDcsCi0gZ2ZzMmZsX1N5bmMgPSA4LAotIGdmczJmbF9TeXN0ZW0gPSA5LAorICBnZnMyZmxfQXBwZW5kT25seSA9IDYsCisgIGdmczJmbF9Ob0F0aW1lID0gNywKKyAgZ2ZzMmZsX1N5bmMgPSA4LAorICBnZnMyZmxfU3lzdGVtID0gOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZ2ZzMmZsX1RvcExldmVsID0gMTAsCi0gZ2ZzMmZsX1RydW5jSW5Qcm9nID0gMjksCi0gZ2ZzMmZsX0luaGVyaXREaXJlY3RpbyA9IDMwLAotIGdmczJmbF9Jbmhlcml0SmRhdGEgPSAzMSwKKyAgZ2ZzMmZsX1RvcExldmVsID0gMTAsCisgIGdmczJmbF9UcnVuY0luUHJvZyA9IDI5LAorICBnZnMyZmxfSW5oZXJpdERpcmVjdGlvID0gMzAsCisgIGdmczJmbF9Jbmhlcml0SmRhdGEgPSAzMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBHRlMyX0RJRl9KREFUQSAweDAwMDAwMDAxCkBAIC0yMTYsMTUzICsyMTYsMTYwIEBACiAjZGVmaW5lIEdGUzJfRElGX0lOSEVSSVRfSkRBVEEgMHg4MDAwMDAwMAogc3RydWN0IGdmczJfZGlub2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgZGlfaGVhZGVyOwotIHN0cnVjdCBnZnMyX2ludW0gZGlfbnVtOwotIF9fYmUzMiBkaV9tb2RlOwotIF9fYmUzMiBkaV91aWQ7CisgIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIGRpX2hlYWRlcjsKKyAgc3RydWN0IGdmczJfaW51bSBkaV9udW07CisgIF9fYmUzMiBkaV9tb2RlOworICBfX2JlMzIgZGlfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGlfZ2lkOwotIF9fYmUzMiBkaV9ubGluazsKLSBfX2JlNjQgZGlfc2l6ZTsKLSBfX2JlNjQgZGlfYmxvY2tzOworICBfX2JlMzIgZGlfZ2lkOworICBfX2JlMzIgZGlfbmxpbms7CisgIF9fYmU2NCBkaV9zaXplOworICBfX2JlNjQgZGlfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgZGlfYXRpbWU7Ci0gX19iZTY0IGRpX210aW1lOwotIF9fYmU2NCBkaV9jdGltZTsKLSBfX2JlMzIgZGlfbWFqb3I7CisgIF9fYmU2NCBkaV9hdGltZTsKKyAgX19iZTY0IGRpX210aW1lOworICBfX2JlNjQgZGlfY3RpbWU7CisgIF9fYmUzMiBkaV9tYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGRpX21pbm9yOwotIF9fYmU2NCBkaV9nb2FsX21ldGE7Ci0gX19iZTY0IGRpX2dvYWxfZGF0YTsKLSBfX2JlNjQgZGlfZ2VuZXJhdGlvbjsKKyAgX19iZTMyIGRpX21pbm9yOworICBfX2JlNjQgZGlfZ29hbF9tZXRhOworICBfX2JlNjQgZGlfZ29hbF9kYXRhOworICBfX2JlNjQgZGlfZ2VuZXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGRpX2ZsYWdzOwotIF9fYmUzMiBkaV9wYXlsb2FkX2Zvcm1hdDsKLSBfX3UxNiBfX3BhZDE7Ci0gX19iZTE2IGRpX2hlaWdodDsKKyAgX19iZTMyIGRpX2ZsYWdzOworICBfX2JlMzIgZGlfcGF5bG9hZF9mb3JtYXQ7CisgIF9fdTE2IF9fcGFkMTsKKyAgX19iZTE2IGRpX2hlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgX19wYWQyOwotIF9fdTE2IF9fcGFkMzsKLSBfX2JlMTYgZGlfZGVwdGg7Ci0gX19iZTMyIGRpX2VudHJpZXM7CisgIF9fdTMyIF9fcGFkMjsKKyAgX191MTYgX19wYWQzOworICBfX2JlMTYgZGlfZGVwdGg7CisgIF9fYmUzMiBkaV9lbnRyaWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkNDsKLSBfX2JlNjQgZGlfZWF0dHI7Ci0gX19iZTMyIGRpX2F0aW1lX25zZWM7Ci0gX19iZTMyIGRpX210aW1lX25zZWM7CisgIHN0cnVjdCBnZnMyX2ludW0gX19wYWQ0OworICBfX2JlNjQgZGlfZWF0dHI7CisgIF9fYmUzMiBkaV9hdGltZV9uc2VjOworICBfX2JlMzIgZGlfbXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGRpX2N0aW1lX25zZWM7Ci0gX191OCBkaV9yZXNlcnZlZFs0NF07CisgIF9fYmUzMiBkaV9jdGltZV9uc2VjOworICBfX3U4IGRpX3Jlc2VydmVkWzQ0XTsKIH07CiAjZGVmaW5lIEdGUzJfRk5BTUVTSVpFIDI1NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9ESVJFTlRfU0laRShuYW1lX2xlbikgKChzaXplb2Yoc3RydWN0IGdmczJfZGlyZW50KSArIChuYW1lX2xlbikgKyA3KSAmIH43KQogc3RydWN0IGdmczJfZGlyZW50IHsKLSBzdHJ1Y3QgZ2ZzMl9pbnVtIGRlX2ludW07Ci0gX19iZTMyIGRlX2hhc2g7CisgIHN0cnVjdCBnZnMyX2ludW0gZGVfaW51bTsKKyAgX19iZTMyIGRlX2hhc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBkZV9yZWNfbGVuOwotIF9fYmUxNiBkZV9uYW1lX2xlbjsKLSBfX2JlMTYgZGVfdHlwZTsKLSBfX3U4IF9fcGFkWzE0XTsKKyAgX19iZTE2IGRlX3JlY19sZW47CisgIF9fYmUxNiBkZV9uYW1lX2xlbjsKKyAgX19iZTE2IGRlX3R5cGU7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191OCBfX3BhZFsxNF07CisgICAgc3RydWN0IHsKKyAgICAgIF9fYmUxNiBkZV9yYWhlYWQ7CisgICAgICBfX3U4IHBhZDJbMTJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICB9OworICB9OwogfTsKIHN0cnVjdCBnZnMyX2xlYWYgewotIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIGxmX2hlYWRlcjsKLSBfX2JlMTYgbGZfZGVwdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBsZl9lbnRyaWVzOwotIF9fYmUzMiBsZl9kaXJlbnRfZm9ybWF0OwotIF9fYmU2NCBsZl9uZXh0OwotIHVuaW9uIHsKKyAgc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGZfaGVhZGVyOworICBfX2JlMTYgbGZfZGVwdGg7CisgIF9fYmUxNiBsZl9lbnRyaWVzOworICBfX2JlMzIgbGZfZGlyZW50X2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsZl9yZXNlcnZlZFs2NF07Ci0gc3RydWN0IHsKLSBfX2JlNjQgbGZfaW5vZGU7Ci0gX19iZTMyIGxmX2Rpc3Q7CisgIF9fYmU2NCBsZl9uZXh0OworICB1bmlvbiB7CisgICAgX191OCBsZl9yZXNlcnZlZFs2NF07CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGxmX25zZWM7Ci0gX19iZTY0IGxmX3NlYzsKLSBfX3U4IGxmX3Jlc2VydmVkMls0MF07Ci0gfTsKKyAgICAgIF9fYmU2NCBsZl9pbm9kZTsKKyAgICAgIF9fYmUzMiBsZl9kaXN0OworICAgICAgX19iZTMyIGxmX25zZWM7CisgICAgICBfX2JlNjQgbGZfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICAgICAgX191OCBsZl9yZXNlcnZlZDJbNDBdOworICAgIH07CisgIH07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9FQV9NQVhfTkFNRV9MRU4gMjU1CiAjZGVmaW5lIEdGUzJfRUFfTUFYX0RBVEFfTEVOIDY1NTM2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0VBVFlQRV9VTlVTRUQgMAogI2RlZmluZSBHRlMyX0VBVFlQRV9VU1IgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9FQVRZUEVfU1lTIDIKICNkZWZpbmUgR0ZTMl9FQVRZUEVfU0VDVVJJVFkgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9FQVRZUEVfTEFTVCAzCiAjZGVmaW5lIEdGUzJfRUFUWVBFX1ZBTElEKHgpICgoeCkgPD0gR0ZTMl9FQVRZUEVfTEFTVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGUzJfRUFGTEFHX0xBU1QgMHgwMQogc3RydWN0IGdmczJfZWFfaGVhZGVyIHsKKyAgX19iZTMyIGVhX3JlY19sZW47CisgIF9fYmUzMiBlYV9kYXRhX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGVhX3JlY19sZW47Ci0gX19iZTMyIGVhX2RhdGFfbGVuOwotIF9fdTggZWFfbmFtZV9sZW47Ci0gX191OCBlYV90eXBlOworICBfX3U4IGVhX25hbWVfbGVuOworICBfX3U4IGVhX3R5cGU7CisgIF9fdTggZWFfZmxhZ3M7CisgIF9fdTggZWFfbnVtX3B0cnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZWFfZmxhZ3M7Ci0gX191OCBlYV9udW1fcHRyczsKLSBfX3UzMiBfX3BhZDsKKyAgX191MzIgX19wYWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9MT0dfSEVBRF9VTk1PVU5UIDB4MDAwMDAwMDEKIHN0cnVjdCBnZnMyX2xvZ19oZWFkZXIgewotIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIGxoX2hlYWRlcjsKLSBfX2JlNjQgbGhfc2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBsaF9mbGFnczsKLSBfX2JlMzIgbGhfdGFpbDsKLSBfX2JlMzIgbGhfYmxrbm87Ci0gX19iZTMyIGxoX2hhc2g7CisgIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIGxoX2hlYWRlcjsKKyAgX19iZTY0IGxoX3NlcXVlbmNlOworICBfX2JlMzIgbGhfZmxhZ3M7CisgIF9fYmUzMiBsaF90YWlsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTMyIGxoX2Jsa25vOworICBfX2JlMzIgbGhfaGFzaDsKIH07CiAjZGVmaW5lIEdGUzJfTE9HX0RFU0NfTUVUQURBVEEgMzAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0xPR19ERVNDX1JFVk9LRSAzMDEKICNkZWZpbmUgR0ZTMl9MT0dfREVTQ19KREFUQSAzMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ2ZzMl9sb2dfZGVzY3JpcHRvciB7Ci0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGRfaGVhZGVyOwotIF9fYmUzMiBsZF90eXBlOwotIF9fYmUzMiBsZF9sZW5ndGg7CisgIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIGxkX2hlYWRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGxkX2RhdGExOwotIF9fYmUzMiBsZF9kYXRhMjsKLSBfX3U4IGxkX3Jlc2VydmVkWzMyXTsKKyAgX19iZTMyIGxkX3R5cGU7CisgIF9fYmUzMiBsZF9sZW5ndGg7CisgIF9fYmUzMiBsZF9kYXRhMTsKKyAgX19iZTMyIGxkX2RhdGEyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBsZF9yZXNlcnZlZFszMl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9JTlVNX1FVQU5UVU0gMTA0ODU3Ngogc3RydWN0IGdmczJfaW51bV9yYW5nZSB7Ci0gX19iZTY0IGlyX3N0YXJ0OwotIF9fYmU2NCBpcl9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlNjQgaXJfc3RhcnQ7CisgIF9fYmU2NCBpcl9sZW5ndGg7CiB9Owogc3RydWN0IGdmczJfc3RhdGZzX2NoYW5nZSB7Ci0gX19iZTY0IHNjX3RvdGFsOwotIF9fYmU2NCBzY19mcmVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgc2NfZGlub2RlczsKKyAgX19iZTY0IHNjX3RvdGFsOworICBfX2JlNjQgc2NfZnJlZTsKKyAgX19iZTY0IHNjX2Rpbm9kZXM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9RQ0ZfVVNFUiAweDAwMDAwMDAxCiBzdHJ1Y3QgZ2ZzMl9xdW90YV9jaGFuZ2UgeworICBfX2JlNjQgcWNfY2hhbmdlOworICBfX2JlMzIgcWNfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBxY19jaGFuZ2U7Ci0gX19iZTMyIHFjX2ZsYWdzOwotIF9fYmUzMiBxY19pZDsKKyAgX19iZTMyIHFjX2lkOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ2ZzMl9xdW90YV9sdmIgewotIF9fYmUzMiBxYl9tYWdpYzsKLSBfX3UzMiBfX3BhZDsKLSBfX2JlNjQgcWJfbGltaXQ7CisgIF9fYmUzMiBxYl9tYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IHFiX3dhcm47Ci0gX19iZTY0IHFiX3ZhbHVlOworICBfX3UzMiBfX3BhZDsKKyAgX19iZTY0IHFiX2xpbWl0OworICBfX2JlNjQgcWJfd2FybjsKKyAgX19iZTY0IHFiX3ZhbHVlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hhc2hfaW5mby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oYXNoX2luZm8uaAppbmRleCBmZDM1NDNjLi41NTJlMDQ4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hhc2hfaW5mby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGFzaF9pbmZvLmgKQEAgLTE5LDI4ICsxOSwyOCBAQAogI2lmbmRlZiBfVUFQSV9MSU5VWF9IQVNIX0lORk9fSAogI2RlZmluZSBfVUFQSV9MSU5VWF9IQVNIX0lORk9fSAogZW51bSBoYXNoX2FsZ28gewotIEhBU0hfQUxHT19NRDQsCisgIEhBU0hfQUxHT19NRDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhBU0hfQUxHT19NRDUsCi0gSEFTSF9BTEdPX1NIQTEsCi0gSEFTSF9BTEdPX1JJUEVfTURfMTYwLAotIEhBU0hfQUxHT19TSEEyNTYsCisgIEhBU0hfQUxHT19NRDUsCisgIEhBU0hfQUxHT19TSEExLAorICBIQVNIX0FMR09fUklQRV9NRF8xNjAsCisgIEhBU0hfQUxHT19TSEEyNTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhBU0hfQUxHT19TSEEzODQsCi0gSEFTSF9BTEdPX1NIQTUxMiwKLSBIQVNIX0FMR09fU0hBMjI0LAotIEhBU0hfQUxHT19SSVBFX01EXzEyOCwKKyAgSEFTSF9BTEdPX1NIQTM4NCwKKyAgSEFTSF9BTEdPX1NIQTUxMiwKKyAgSEFTSF9BTEdPX1NIQTIyNCwKKyAgSEFTSF9BTEdPX1JJUEVfTURfMTI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIQVNIX0FMR09fUklQRV9NRF8yNTYsCi0gSEFTSF9BTEdPX1JJUEVfTURfMzIwLAotIEhBU0hfQUxHT19XUF8yNTYsCi0gSEFTSF9BTEdPX1dQXzM4NCwKKyAgSEFTSF9BTEdPX1JJUEVfTURfMjU2LAorICBIQVNIX0FMR09fUklQRV9NRF8zMjAsCisgIEhBU0hfQUxHT19XUF8yNTYsCisgIEhBU0hfQUxHT19XUF8zODQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhBU0hfQUxHT19XUF81MTIsCi0gSEFTSF9BTEdPX1RHUl8xMjgsCi0gSEFTSF9BTEdPX1RHUl8xNjAsCi0gSEFTSF9BTEdPX1RHUl8xOTIsCisgIEhBU0hfQUxHT19XUF81MTIsCisgIEhBU0hfQUxHT19UR1JfMTI4LAorICBIQVNIX0FMR09fVEdSXzE2MCwKKyAgSEFTSF9BTEdPX1RHUl8xOTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhBU0hfQUxHT19fTEFTVAorICBIQVNIX0FMR09fX0xBU1QKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGRsYy9pb2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjL2lvY3RsLmgKaW5kZXggYzQ3ZDkxZS4uMzdmZjVjNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjL2lvY3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjL2lvY3RsLmgKQEAgLTUyLDQ3ICs1Miw0NyBAQAogI2lmbmRlZiBfX0FTU0VNQkxZX18KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgaW50IGNsb2NrX3JhdGU7Ci0gdW5zaWduZWQgaW50IGNsb2NrX3R5cGU7Ci0gdW5zaWduZWQgc2hvcnQgbG9vcGJhY2s7CisgIHVuc2lnbmVkIGludCBjbG9ja19yYXRlOworICB1bnNpZ25lZCBpbnQgY2xvY2tfdHlwZTsKKyAgdW5zaWduZWQgc2hvcnQgbG9vcGJhY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzeW5jX3NlcmlhbF9zZXR0aW5nczsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgY2xvY2tfcmF0ZTsKLSB1bnNpZ25lZCBpbnQgY2xvY2tfdHlwZTsKKyAgdW5zaWduZWQgaW50IGNsb2NrX3JhdGU7CisgIHVuc2lnbmVkIGludCBjbG9ja190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBsb29wYmFjazsKLSB1bnNpZ25lZCBpbnQgc2xvdF9tYXA7CisgIHVuc2lnbmVkIHNob3J0IGxvb3BiYWNrOworICB1bnNpZ25lZCBpbnQgc2xvdF9tYXA7CiB9IHRlMV9zZXR0aW5nczsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZW5jb2Rpbmc7Ci0gdW5zaWduZWQgc2hvcnQgcGFyaXR5OworICB1bnNpZ25lZCBzaG9ydCBlbmNvZGluZzsKKyAgdW5zaWduZWQgc2hvcnQgcGFyaXR5OwogfSByYXdfaGRsY19wcm90bzsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHQzOTE7Ci0gdW5zaWduZWQgaW50IHQzOTI7Ci0gdW5zaWduZWQgaW50IG4zOTE7Ci0gdW5zaWduZWQgaW50IG4zOTI7CisgIHVuc2lnbmVkIGludCB0MzkxOworICB1bnNpZ25lZCBpbnQgdDM5MjsKKyAgdW5zaWduZWQgaW50IG4zOTE7CisgIHVuc2lnbmVkIGludCBuMzkyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbjM5MzsKLSB1bnNpZ25lZCBzaG9ydCBsbWk7Ci0gdW5zaWduZWQgc2hvcnQgZGNlOworICB1bnNpZ25lZCBpbnQgbjM5MzsKKyAgdW5zaWduZWQgc2hvcnQgbG1pOworICB1bnNpZ25lZCBzaG9ydCBkY2U7CiB9IGZyX3Byb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgZGxjaTsKKyAgdW5zaWduZWQgaW50IGRsY2k7CiB9IGZyX3Byb3RvX3B2YzsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRsY2k7Ci0gY2hhciBtYXN0ZXJbSUZOQU1TSVpdOwotfWZyX3Byb3RvX3B2Y19pbmZvOworICB1bnNpZ25lZCBpbnQgZGxjaTsKKyAgY2hhciBtYXN0ZXJbSUZOQU1TSVpdOworfSBmcl9wcm90b19wdmNfaW5mbzsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGludGVydmFsOwotIHVuc2lnbmVkIGludCB0aW1lb3V0OworICB1bnNpZ25lZCBpbnQgaW50ZXJ2YWw7CisgIHVuc2lnbmVkIGludCB0aW1lb3V0OwogfSBjaXNjb19wcm90bzsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGRsY2Rydi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjZHJ2LmgKaW5kZXggYTM3MjAxZC4uZGFkYzQzMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjZHJ2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjZHJ2LmgKQEAgLTE5LDU3ICsxOSw1NyBAQAogI2lmbmRlZiBfVUFQSV9IRExDRFJWX0gKICNkZWZpbmUgX1VBUElfSERMQ0RSVl9ICiBzdHJ1Y3QgaGRsY2Rydl9wYXJhbXMgewotIGludCBpb2Jhc2U7CisgIGludCBpb2Jhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpcnE7Ci0gaW50IGRtYTsKLSBpbnQgZG1hMjsKLSBpbnQgc2VyaW9iYXNlOworICBpbnQgaXJxOworICBpbnQgZG1hOworICBpbnQgZG1hMjsKKyAgaW50IHNlcmlvYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBhcmlvYmFzZTsKLSBpbnQgbWlkaWlvYmFzZTsKKyAgaW50IHBhcmlvYmFzZTsKKyAgaW50IG1pZGlpb2Jhc2U7CiB9Owogc3RydWN0IGhkbGNkcnZfY2hhbm5lbF9wYXJhbXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHhfZGVsYXk7Ci0gaW50IHR4X3RhaWw7Ci0gaW50IHNsb3R0aW1lOwotIGludCBwcGVyc2lzdDsKKyAgaW50IHR4X2RlbGF5OworICBpbnQgdHhfdGFpbDsKKyAgaW50IHNsb3R0aW1lOworICBpbnQgcHBlcnNpc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmdWxsZHVwOworICBpbnQgZnVsbGR1cDsKIH07CiBzdHJ1Y3QgaGRsY2Rydl9vbGRfY2hhbm5lbF9zdGF0ZSB7Ci0gaW50IHB0dDsKKyAgaW50IHB0dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRjZDsKLSBpbnQgcHR0X2tleWVkOworICBpbnQgZGNkOworICBpbnQgcHR0X2tleWVkOwogfTsKIHN0cnVjdCBoZGxjZHJ2X2NoYW5uZWxfc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcHR0OwotIGludCBkY2Q7Ci0gaW50IHB0dF9rZXllZDsKLSB1bnNpZ25lZCBsb25nIHR4X3BhY2tldHM7CisgIGludCBwdHQ7CisgIGludCBkY2Q7CisgIGludCBwdHRfa2V5ZWQ7CisgIHVuc2lnbmVkIGxvbmcgdHhfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyB0eF9lcnJvcnM7Ci0gdW5zaWduZWQgbG9uZyByeF9wYWNrZXRzOwotIHVuc2lnbmVkIGxvbmcgcnhfZXJyb3JzOworICB1bnNpZ25lZCBsb25nIHR4X2Vycm9yczsKKyAgdW5zaWduZWQgbG9uZyByeF9wYWNrZXRzOworICB1bnNpZ25lZCBsb25nIHJ4X2Vycm9yczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkbGNkcnZfaW9jdGwgewotIGludCBjbWQ7Ci0gdW5pb24gewotIHN0cnVjdCBoZGxjZHJ2X3BhcmFtcyBtcDsKKyAgaW50IGNtZDsKKyAgdW5pb24geworICAgIHN0cnVjdCBoZGxjZHJ2X3BhcmFtcyBtcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGhkbGNkcnZfY2hhbm5lbF9wYXJhbXMgY3A7Ci0gc3RydWN0IGhkbGNkcnZfY2hhbm5lbF9zdGF0ZSBjczsKLSBzdHJ1Y3QgaGRsY2Rydl9vbGRfY2hhbm5lbF9zdGF0ZSBvY3M7Ci0gdW5zaWduZWQgaW50IGNhbGlicmF0ZTsKKyAgICBzdHJ1Y3QgaGRsY2Rydl9jaGFubmVsX3BhcmFtcyBjcDsKKyAgICBzdHJ1Y3QgaGRsY2Rydl9jaGFubmVsX3N0YXRlIGNzOworICAgIHN0cnVjdCBoZGxjZHJ2X29sZF9jaGFubmVsX3N0YXRlIG9jczsKKyAgICB1bnNpZ25lZCBpbnQgY2FsaWJyYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGJpdHM7Ci0gY2hhciBtb2RlbmFtZVsxMjhdOwotIGNoYXIgZHJpdmVybmFtZVszMl07Ci0gfSBkYXRhOworICAgIHVuc2lnbmVkIGNoYXIgYml0czsKKyAgICBjaGFyIG1vZGVuYW1lWzEyOF07CisgICAgY2hhciBkcml2ZXJuYW1lWzMyXTsKKyAgfSBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEhETENEUlZDVExfR0VUTU9ERU1QQVIgMApAQCAtODksMTMgKzg5LDEzIEBACiAjZGVmaW5lIEhETENEUlZDVExfU0VUTU9ERSA0MQogI2RlZmluZSBIRExDRFJWQ1RMX01PREVMSVNUIDQyCiAjZGVmaW5lIEhETENEUlZDVExfRFJJVkVSTkFNRSA0MwotI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfSU9CQVNFICgxPDwwKQorI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfSU9CQVNFICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfSVJRICgxPDwxKQotI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfRE1BICgxPDwyKQotI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfRE1BMiAoMTw8MykKLSNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX1NFUklPQkFTRSAoMTw8NCkKKyNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX0lSUSAoMSA8PCAxKQorI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfRE1BICgxIDw8IDIpCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19ETUEyICgxIDw8IDMpCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19TRVJJT0JBU0UgKDEgPDwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19QQVJJT0JBU0UgKDE8PDUpCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19NSURJSU9CQVNFICgxPDw2KQorI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfUEFSSU9CQVNFICgxIDw8IDUpCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19NSURJSU9CQVNFICgxIDw8IDYpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGRyZWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGRyZWcuaAppbmRleCA2OWFmZTBkLi4zMDBlMDEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkcmVnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZHJlZy5oCkBAIC0yNCw3ICsyNCw3IEBACiAjZGVmaW5lIEhESU9fRFJJVkVfSE9CX0hEUl9TSVpFICg4ICogc2l6ZW9mKF9fdTgpKQogI2RlZmluZSBIRElPX0RSSVZFX1RBU0tfSERSX1NJWkUgKDggKiBzaXplb2YoX191OCkpCiAjZGVmaW5lIElERV9EUklWRV9UQVNLX05PX0RBVEEgMAotI2RlZmluZSBJREVfRFJJVkVfVEFTS19JTlZBTElEIC0xCisjZGVmaW5lIElERV9EUklWRV9UQVNLX0lOVkFMSUQgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJREVfRFJJVkVfVEFTS19TRVRfWEZFUiAxCiAjZGVmaW5lIElERV9EUklWRV9UQVNLX0lOIDIKQEAgLTM5LDgxICszOSw4MSBAQAogdHlwZWRlZiB1bnNpZ25lZCBjaGFyIHRhc2tfaW9yZWdfdDsKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBzYXRhX2lvcmVnX3Q7CiB0eXBlZGVmIHVuaW9uIGlkZV9yZWdfdmFsaWRfcyB7Ci0gdW5zaWduZWQgYWxsIDogMTY7CisgIHVuc2lnbmVkIGFsbCA6IDE2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGRhdGEgOiAxOwotIHVuc2lnbmVkIGVycm9yX2ZlYXR1cmUgOiAxOwotIHVuc2lnbmVkIHNlY3RvciA6IDE7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgZGF0YSA6IDE7CisgICAgdW5zaWduZWQgZXJyb3JfZmVhdHVyZSA6IDE7CisgICAgdW5zaWduZWQgc2VjdG9yIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbnNlY3RvciA6IDE7Ci0gdW5zaWduZWQgbGN5bCA6IDE7Ci0gdW5zaWduZWQgaGN5bCA6IDE7Ci0gdW5zaWduZWQgc2VsZWN0IDogMTsKKyAgICB1bnNpZ25lZCBuc2VjdG9yIDogMTsKKyAgICB1bnNpZ25lZCBsY3lsIDogMTsKKyAgICB1bnNpZ25lZCBoY3lsIDogMTsKKyAgICB1bnNpZ25lZCBzZWxlY3QgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzdGF0dXNfY29tbWFuZCA6IDE7Ci0gdW5zaWduZWQgZGF0YV9ob2IgOiAxOwotIHVuc2lnbmVkIGVycm9yX2ZlYXR1cmVfaG9iIDogMTsKLSB1bnNpZ25lZCBzZWN0b3JfaG9iIDogMTsKKyAgICB1bnNpZ25lZCBzdGF0dXNfY29tbWFuZCA6IDE7CisgICAgdW5zaWduZWQgZGF0YV9ob2IgOiAxOworICAgIHVuc2lnbmVkIGVycm9yX2ZlYXR1cmVfaG9iIDogMTsKKyAgICB1bnNpZ25lZCBzZWN0b3JfaG9iIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbnNlY3Rvcl9ob2IgOiAxOwotIHVuc2lnbmVkIGxjeWxfaG9iIDogMTsKLSB1bnNpZ25lZCBoY3lsX2hvYiA6IDE7Ci0gdW5zaWduZWQgc2VsZWN0X2hvYiA6IDE7CisgICAgdW5zaWduZWQgbnNlY3Rvcl9ob2IgOiAxOworICAgIHVuc2lnbmVkIGxjeWxfaG9iIDogMTsKKyAgICB1bnNpZ25lZCBoY3lsX2hvYiA6IDE7CisgICAgdW5zaWduZWQgc2VsZWN0X2hvYiA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNvbnRyb2xfaG9iIDogMTsKLSB9IGI7CisgICAgdW5zaWduZWQgY29udHJvbF9ob2IgOiAxOworICB9IGI7CiB9IGlkZV9yZWdfdmFsaWRfdDsKIHR5cGVkZWYgc3RydWN0IGlkZV90YXNrX3JlcXVlc3RfcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW9fcG9ydHNbOF07Ci0gX191OCBob2JfcG9ydHNbOF07Ci0gaWRlX3JlZ192YWxpZF90IG91dF9mbGFnczsKLSBpZGVfcmVnX3ZhbGlkX3QgaW5fZmxhZ3M7CisgIF9fdTggaW9fcG9ydHNbOF07CisgIF9fdTggaG9iX3BvcnRzWzhdOworICBpZGVfcmVnX3ZhbGlkX3Qgb3V0X2ZsYWdzOworICBpZGVfcmVnX3ZhbGlkX3QgaW5fZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkYXRhX3BoYXNlOwotIGludCByZXFfY21kOwotIHVuc2lnbmVkIGxvbmcgb3V0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBpbl9zaXplOworICBpbnQgZGF0YV9waGFzZTsKKyAgaW50IHJlcV9jbWQ7CisgIHVuc2lnbmVkIGxvbmcgb3V0X3NpemU7CisgIHVuc2lnbmVkIGxvbmcgaW5fc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGlkZV90YXNrX3JlcXVlc3RfdDsKIHR5cGVkZWYgc3RydWN0IGlkZV9pb2N0bF9yZXF1ZXN0X3MgewotIGlkZV90YXNrX3JlcXVlc3RfdCAqdGFza19yZXF1ZXN0OwotIHVuc2lnbmVkIGNoYXIgKm91dF9idWZmZXI7CisgIGlkZV90YXNrX3JlcXVlc3RfdCAqIHRhc2tfcmVxdWVzdDsKKyAgdW5zaWduZWQgY2hhciAqIG91dF9idWZmZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgKmluX2J1ZmZlcjsKKyAgdW5zaWduZWQgY2hhciAqIGluX2J1ZmZlcjsKIH0gaWRlX2lvY3RsX3JlcXVlc3RfdDsKIHN0cnVjdCBoZF9kcml2ZV9jbWRfaGRyIHsKLSBfX3U4IGNvbW1hbmQ7CisgIF9fdTggY29tbWFuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZWN0b3JfbnVtYmVyOwotIF9fdTggZmVhdHVyZTsKLSBfX3U4IHNlY3Rvcl9jb3VudDsKKyAgX191OCBzZWN0b3JfbnVtYmVyOworICBfX3U4IGZlYXR1cmU7CisgIF9fdTggc2VjdG9yX2NvdW50OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBoZF9kcml2ZV90YXNrX2hkciB7Ci0gX191OCBkYXRhOwotIF9fdTggZmVhdHVyZTsKLSBfX3U4IHNlY3Rvcl9jb3VudDsKKyAgX191OCBkYXRhOworICBfX3U4IGZlYXR1cmU7CisgIF9fdTggc2VjdG9yX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlY3Rvcl9udW1iZXI7Ci0gX191OCBsb3dfY3lsaW5kZXI7Ci0gX191OCBoaWdoX2N5bGluZGVyOwotIF9fdTggZGV2aWNlX2hlYWQ7CisgIF9fdTggc2VjdG9yX251bWJlcjsKKyAgX191OCBsb3dfY3lsaW5kZXI7CisgIF9fdTggaGlnaF9jeWxpbmRlcjsKKyAgX191OCBkZXZpY2VfaGVhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb21tYW5kOworICBfX3U4IGNvbW1hbmQ7CiB9IHRhc2tfc3RydWN0X3Q7CiB0eXBlZGVmIHN0cnVjdCBoZF9kcml2ZV9ob2JfaGRyIHsKLSBfX3U4IGRhdGE7CisgIF9fdTggZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmZWF0dXJlOwotIF9fdTggc2VjdG9yX2NvdW50OwotIF9fdTggc2VjdG9yX251bWJlcjsKLSBfX3U4IGxvd19jeWxpbmRlcjsKKyAgX191OCBmZWF0dXJlOworICBfX3U4IHNlY3Rvcl9jb3VudDsKKyAgX191OCBzZWN0b3JfbnVtYmVyOworICBfX3U4IGxvd19jeWxpbmRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBoaWdoX2N5bGluZGVyOwotIF9fdTggZGV2aWNlX2hlYWQ7Ci0gX191OCBjb250cm9sOworICBfX3U4IGhpZ2hfY3lsaW5kZXI7CisgIF9fdTggZGV2aWNlX2hlYWQ7CisgIF9fdTggY29udHJvbDsKIH0gaG9iX3N0cnVjdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVEFTS0ZJTEVfTk9fREFUQSAweDAwMDAKQEAgLTMxMiwxMSArMzEyLDExIEBACiAjZGVmaW5lIFNFQ1VSSVRZX0RJU0FCTEVfUEFTU1dPUkQgMHhCRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoZF9nZW9tZXRyeSB7Ci0gdW5zaWduZWQgY2hhciBoZWFkczsKLSB1bnNpZ25lZCBjaGFyIHNlY3RvcnM7Ci0gdW5zaWduZWQgc2hvcnQgY3lsaW5kZXJzOworICB1bnNpZ25lZCBjaGFyIGhlYWRzOworICB1bnNpZ25lZCBjaGFyIHNlY3RvcnM7CisgIHVuc2lnbmVkIHNob3J0IGN5bGluZGVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdGFydDsKKyAgdW5zaWduZWQgbG9uZyBzdGFydDsKIH07CiAjZGVmaW5lIEhESU9fR0VUR0VPIDB4MDMwMQogI2RlZmluZSBIRElPX0dFVF9VTk1BU0tJTlRSIDB4MDMwMgpAQCAtMzY2LDExMiArMzY2LDExMiBAQAogI2RlZmluZSBIRElPX1NFVF9BRERSRVNTIDB4MDMyZgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJVU1NUQVRFX09GRiA9IDAsCi0gQlVTU1RBVEVfT04sCi0gQlVTU1RBVEVfVFJJU1RBVEUKKyAgQlVTU1RBVEVfT0ZGID0gMCwKKyAgQlVTU1RBVEVfT04sCisgIEJVU1NUQVRFX1RSSVNUQVRFCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19ORVdfSERfRFJJVkVfSUQKIHN0cnVjdCBoZF9kcml2ZWlkIHsKLSB1bnNpZ25lZCBzaG9ydCBjb25maWc7Ci0gdW5zaWduZWQgc2hvcnQgY3lsczsKKyAgdW5zaWduZWQgc2hvcnQgY29uZmlnOworICB1bnNpZ25lZCBzaG9ydCBjeWxzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZDI7Ci0gdW5zaWduZWQgc2hvcnQgaGVhZHM7Ci0gdW5zaWduZWQgc2hvcnQgdHJhY2tfYnl0ZXM7Ci0gdW5zaWduZWQgc2hvcnQgc2VjdG9yX2J5dGVzOworICB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZDI7CisgIHVuc2lnbmVkIHNob3J0IGhlYWRzOworICB1bnNpZ25lZCBzaG9ydCB0cmFja19ieXRlczsKKyAgdW5zaWduZWQgc2hvcnQgc2VjdG9yX2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzZWN0b3JzOwotIHVuc2lnbmVkIHNob3J0IHZlbmRvcjA7Ci0gdW5zaWduZWQgc2hvcnQgdmVuZG9yMTsKLSB1bnNpZ25lZCBzaG9ydCB2ZW5kb3IyOworICB1bnNpZ25lZCBzaG9ydCBzZWN0b3JzOworICB1bnNpZ25lZCBzaG9ydCB2ZW5kb3IwOworICB1bnNpZ25lZCBzaG9ydCB2ZW5kb3IxOworICB1bnNpZ25lZCBzaG9ydCB2ZW5kb3IyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHNlcmlhbF9ub1syMF07Ci0gdW5zaWduZWQgc2hvcnQgYnVmX3R5cGU7Ci0gdW5zaWduZWQgc2hvcnQgYnVmX3NpemU7Ci0gdW5zaWduZWQgc2hvcnQgZWNjX2J5dGVzOworICB1bnNpZ25lZCBjaGFyIHNlcmlhbF9ub1syMF07CisgIHVuc2lnbmVkIHNob3J0IGJ1Zl90eXBlOworICB1bnNpZ25lZCBzaG9ydCBidWZfc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgZWNjX2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGZ3X3Jldls4XTsKLSB1bnNpZ25lZCBjaGFyIG1vZGVsWzQwXTsKLSB1bnNpZ25lZCBjaGFyIG1heF9tdWx0c2VjdDsKLSB1bnNpZ25lZCBjaGFyIHZlbmRvcjM7CisgIHVuc2lnbmVkIGNoYXIgZndfcmV2WzhdOworICB1bnNpZ25lZCBjaGFyIG1vZGVsWzQwXTsKKyAgdW5zaWduZWQgY2hhciBtYXhfbXVsdHNlY3Q7CisgIHVuc2lnbmVkIGNoYXIgdmVuZG9yMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZHdvcmRfaW87Ci0gdW5zaWduZWQgY2hhciB2ZW5kb3I0OwotIHVuc2lnbmVkIGNoYXIgY2FwYWJpbGl0eTsKLSB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZDUwOworICB1bnNpZ25lZCBzaG9ydCBkd29yZF9pbzsKKyAgdW5zaWduZWQgY2hhciB2ZW5kb3I0OworICB1bnNpZ25lZCBjaGFyIGNhcGFiaWxpdHk7CisgIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkNTA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdmVuZG9yNTsKLSB1bnNpZ25lZCBjaGFyIHRQSU87Ci0gdW5zaWduZWQgY2hhciB2ZW5kb3I2OwotIHVuc2lnbmVkIGNoYXIgdERNQTsKKyAgdW5zaWduZWQgY2hhciB2ZW5kb3I1OworICB1bnNpZ25lZCBjaGFyIHRQSU87CisgIHVuc2lnbmVkIGNoYXIgdmVuZG9yNjsKKyAgdW5zaWduZWQgY2hhciB0RE1BOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBmaWVsZF92YWxpZDsKLSB1bnNpZ25lZCBzaG9ydCBjdXJfY3lsczsKLSB1bnNpZ25lZCBzaG9ydCBjdXJfaGVhZHM7Ci0gdW5zaWduZWQgc2hvcnQgY3VyX3NlY3RvcnM7CisgIHVuc2lnbmVkIHNob3J0IGZpZWxkX3ZhbGlkOworICB1bnNpZ25lZCBzaG9ydCBjdXJfY3lsczsKKyAgdW5zaWduZWQgc2hvcnQgY3VyX2hlYWRzOworICB1bnNpZ25lZCBzaG9ydCBjdXJfc2VjdG9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgY3VyX2NhcGFjaXR5MDsKLSB1bnNpZ25lZCBzaG9ydCBjdXJfY2FwYWNpdHkxOwotIHVuc2lnbmVkIGNoYXIgbXVsdHNlY3Q7Ci0gdW5zaWduZWQgY2hhciBtdWx0c2VjdF92YWxpZDsKKyAgdW5zaWduZWQgc2hvcnQgY3VyX2NhcGFjaXR5MDsKKyAgdW5zaWduZWQgc2hvcnQgY3VyX2NhcGFjaXR5MTsKKyAgdW5zaWduZWQgY2hhciBtdWx0c2VjdDsKKyAgdW5zaWduZWQgY2hhciBtdWx0c2VjdF92YWxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxiYV9jYXBhY2l0eTsKLSB1bnNpZ25lZCBzaG9ydCBkbWFfMXdvcmQ7Ci0gdW5zaWduZWQgc2hvcnQgZG1hX213b3JkOwotIHVuc2lnbmVkIHNob3J0IGVpZGVfcGlvX21vZGVzOworICB1bnNpZ25lZCBpbnQgbGJhX2NhcGFjaXR5OworICB1bnNpZ25lZCBzaG9ydCBkbWFfMXdvcmQ7CisgIHVuc2lnbmVkIHNob3J0IGRtYV9td29yZDsKKyAgdW5zaWduZWQgc2hvcnQgZWlkZV9waW9fbW9kZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGVpZGVfZG1hX21pbjsKLSB1bnNpZ25lZCBzaG9ydCBlaWRlX2RtYV90aW1lOwotIHVuc2lnbmVkIHNob3J0IGVpZGVfcGlvOwotIHVuc2lnbmVkIHNob3J0IGVpZGVfcGlvX2lvcmR5OworICB1bnNpZ25lZCBzaG9ydCBlaWRlX2RtYV9taW47CisgIHVuc2lnbmVkIHNob3J0IGVpZGVfZG1hX3RpbWU7CisgIHVuc2lnbmVkIHNob3J0IGVpZGVfcGlvOworICB1bnNpZ25lZCBzaG9ydCBlaWRlX3Bpb19pb3JkeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgd29yZHM2OV83MFsyXTsKLSB1bnNpZ25lZCBzaG9ydCB3b3JkczcxXzc0WzRdOwotIHVuc2lnbmVkIHNob3J0IHF1ZXVlX2RlcHRoOwotIHVuc2lnbmVkIHNob3J0IHdvcmRzNzZfNzlbNF07CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzNjlfNzBbMl07CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzNzFfNzRbNF07CisgIHVuc2lnbmVkIHNob3J0IHF1ZXVlX2RlcHRoOworICB1bnNpZ25lZCBzaG9ydCB3b3Jkczc2Xzc5WzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBtYWpvcl9yZXZfbnVtOwotIHVuc2lnbmVkIHNob3J0IG1pbm9yX3Jldl9udW07Ci0gdW5zaWduZWQgc2hvcnQgY29tbWFuZF9zZXRfMTsKLSB1bnNpZ25lZCBzaG9ydCBjb21tYW5kX3NldF8yOworICB1bnNpZ25lZCBzaG9ydCBtYWpvcl9yZXZfbnVtOworICB1bnNpZ25lZCBzaG9ydCBtaW5vcl9yZXZfbnVtOworICB1bnNpZ25lZCBzaG9ydCBjb21tYW5kX3NldF8xOworICB1bnNpZ25lZCBzaG9ydCBjb21tYW5kX3NldF8yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjZnNzZTsKLSB1bnNpZ25lZCBzaG9ydCBjZnNfZW5hYmxlXzE7Ci0gdW5zaWduZWQgc2hvcnQgY2ZzX2VuYWJsZV8yOwotIHVuc2lnbmVkIHNob3J0IGNzZl9kZWZhdWx0OworICB1bnNpZ25lZCBzaG9ydCBjZnNzZTsKKyAgdW5zaWduZWQgc2hvcnQgY2ZzX2VuYWJsZV8xOworICB1bnNpZ25lZCBzaG9ydCBjZnNfZW5hYmxlXzI7CisgIHVuc2lnbmVkIHNob3J0IGNzZl9kZWZhdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBkbWFfdWx0cmE7Ci0gdW5zaWduZWQgc2hvcnQgdHJzZXVjOwotIHVuc2lnbmVkIHNob3J0IHRyc0V1YzsKLSB1bnNpZ25lZCBzaG9ydCBDdXJBUE12YWx1ZXM7CisgIHVuc2lnbmVkIHNob3J0IGRtYV91bHRyYTsKKyAgdW5zaWduZWQgc2hvcnQgdHJzZXVjOworICB1bnNpZ25lZCBzaG9ydCB0cnNFdWM7CisgIHVuc2lnbmVkIHNob3J0IEN1ckFQTXZhbHVlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbXByYzsKLSB1bnNpZ25lZCBzaG9ydCBod19jb25maWc7Ci0gdW5zaWduZWQgc2hvcnQgYWNvdXN0aWM7Ci0gdW5zaWduZWQgc2hvcnQgbXNycXM7CisgIHVuc2lnbmVkIHNob3J0IG1wcmM7CisgIHVuc2lnbmVkIHNob3J0IGh3X2NvbmZpZzsKKyAgdW5zaWduZWQgc2hvcnQgYWNvdXN0aWM7CisgIHVuc2lnbmVkIHNob3J0IG1zcnFzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzeGZlcnQ7Ci0gdW5zaWduZWQgc2hvcnQgc2FsOwotIHVuc2lnbmVkIGludCBzcGc7Ci0gdW5zaWduZWQgbG9uZyBsb25nIGxiYV9jYXBhY2l0eV8yOworICB1bnNpZ25lZCBzaG9ydCBzeGZlcnQ7CisgIHVuc2lnbmVkIHNob3J0IHNhbDsKKyAgdW5zaWduZWQgaW50IHNwZzsKKyAgdW5zaWduZWQgbG9uZyBsb25nIGxiYV9jYXBhY2l0eV8yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB3b3JkczEwNF8xMjVbMjJdOwotIHVuc2lnbmVkIHNob3J0IGxhc3RfbHVuOwotIHVuc2lnbmVkIHNob3J0IHdvcmQxMjc7Ci0gdW5zaWduZWQgc2hvcnQgZGxmOworICB1bnNpZ25lZCBzaG9ydCB3b3JkczEwNF8xMjVbMjJdOworICB1bnNpZ25lZCBzaG9ydCBsYXN0X2x1bjsKKyAgdW5zaWduZWQgc2hvcnQgd29yZDEyNzsKKyAgdW5zaWduZWQgc2hvcnQgZGxmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjc2ZvOwotIHVuc2lnbmVkIHNob3J0IHdvcmRzMTMwXzE1NVsyNl07Ci0gdW5zaWduZWQgc2hvcnQgd29yZDE1NjsKLSB1bnNpZ25lZCBzaG9ydCB3b3JkczE1N18xNTlbM107CisgIHVuc2lnbmVkIHNob3J0IGNzZm87CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMTMwXzE1NVsyNl07CisgIHVuc2lnbmVkIHNob3J0IHdvcmQxNTY7CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMTU3XzE1OVszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgY2ZhX3Bvd2VyOwotIHVuc2lnbmVkIHNob3J0IHdvcmRzMTYxXzE3NVsxNV07Ci0gdW5zaWduZWQgc2hvcnQgd29yZHMxNzZfMjA1WzMwXTsKLSB1bnNpZ25lZCBzaG9ydCB3b3JkczIwNl8yNTRbNDldOworICB1bnNpZ25lZCBzaG9ydCBjZmFfcG93ZXI7CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMTYxXzE3NVsxNV07CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMTc2XzIwNVszMF07CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMjA2XzI1NFs0OV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGludGVncml0eV93b3JkOworICB1bnNpZ25lZCBzaG9ydCBpbnRlZ3JpdHlfd29yZDsKIH07CiAjZGVmaW5lIElERV9OSUNFX0RTQ19PVkVSTEFQICgwKQogI2RlZmluZSBJREVfTklDRV9BVEFQSV9PVkVSTEFQICgxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oaWRkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGlkZGV2LmgKaW5kZXggZTQyNjBmZS4uNmY0OTRiMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oaWRkZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZGRldi5oCkBAIC0yMSw0MCArMjEsNDAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGhpZGRldl9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGhpZDsKLSBzaWduZWQgaW50IHZhbHVlOworICB1bnNpZ25lZCBoaWQ7CisgIHNpZ25lZCBpbnQgdmFsdWU7CiB9Owogc3RydWN0IGhpZGRldl9kZXZpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVzdHlwZTsKLSBfX3UzMiBidXNudW07Ci0gX191MzIgZGV2bnVtOwotIF9fdTMyIGlmbnVtOworICBfX3UzMiBidXN0eXBlOworICBfX3UzMiBidXNudW07CisgIF9fdTMyIGRldm51bTsKKyAgX191MzIgaWZudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczE2IHZlbmRvcjsKLSBfX3MxNiBwcm9kdWN0OwotIF9fczE2IHZlcnNpb247Ci0gX191MzIgbnVtX2FwcGxpY2F0aW9uczsKKyAgX19zMTYgdmVuZG9yOworICBfX3MxNiBwcm9kdWN0OworICBfX3MxNiB2ZXJzaW9uOworICBfX3UzMiBudW1fYXBwbGljYXRpb25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaGlkZGV2X2NvbGxlY3Rpb25faW5mbyB7Ci0gX191MzIgaW5kZXg7Ci0gX191MzIgdHlwZTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHVzYWdlOwotIF9fdTMyIGxldmVsOworICBfX3UzMiB1c2FnZTsKKyAgX191MzIgbGV2ZWw7CiB9OwogI2RlZmluZSBISURfU1RSSU5HX1NJWkUgMjU2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhpZGRldl9zdHJpbmdfZGVzY3JpcHRvciB7Ci0gX19zMzIgaW5kZXg7Ci0gY2hhciB2YWx1ZVtISURfU1RSSU5HX1NJWkVdOworICBfX3MzMiBpbmRleDsKKyAgY2hhciB2YWx1ZVtISURfU1RSSU5HX1NJWkVdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGlkZGV2X3JlcG9ydF9pbmZvIHsKLSBfX3UzMiByZXBvcnRfdHlwZTsKLSBfX3UzMiByZXBvcnRfaWQ7Ci0gX191MzIgbnVtX2ZpZWxkczsKKyAgX191MzIgcmVwb3J0X3R5cGU7CisgIF9fdTMyIHJlcG9ydF9pZDsKKyAgX191MzIgbnVtX2ZpZWxkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBISURfUkVQT1JUX0lEX1VOS05PV04gMHhmZmZmZmZmZgpAQCAtNzEsMjMgKzcxLDIzIEBACiAjZGVmaW5lIEhJRF9SRVBPUlRfVFlQRV9NQVggMwogc3RydWN0IGhpZGRldl9maWVsZF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVwb3J0X3R5cGU7Ci0gX191MzIgcmVwb3J0X2lkOwotIF9fdTMyIGZpZWxkX2luZGV4OwotIF9fdTMyIG1heHVzYWdlOworICBfX3UzMiByZXBvcnRfdHlwZTsKKyAgX191MzIgcmVwb3J0X2lkOworICBfX3UzMiBmaWVsZF9pbmRleDsKKyAgX191MzIgbWF4dXNhZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHBoeXNpY2FsOwotIF9fdTMyIGxvZ2ljYWw7Ci0gX191MzIgYXBwbGljYXRpb247CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBwaHlzaWNhbDsKKyAgX191MzIgbG9naWNhbDsKKyAgX191MzIgYXBwbGljYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGxvZ2ljYWxfbWluaW11bTsKLSBfX3MzMiBsb2dpY2FsX21heGltdW07Ci0gX19zMzIgcGh5c2ljYWxfbWluaW11bTsKLSBfX3MzMiBwaHlzaWNhbF9tYXhpbXVtOworICBfX3MzMiBsb2dpY2FsX21pbmltdW07CisgIF9fczMyIGxvZ2ljYWxfbWF4aW11bTsKKyAgX19zMzIgcGh5c2ljYWxfbWluaW11bTsKKyAgX19zMzIgcGh5c2ljYWxfbWF4aW11bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdW5pdF9leHBvbmVudDsKLSBfX3UzMiB1bml0OworICBfX3UzMiB1bml0X2V4cG9uZW50OworICBfX3UzMiB1bml0OwogfTsKICNkZWZpbmUgSElEX0ZJRUxEX0NPTlNUQU5UIDB4MDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTAyLDIxICsxMDIsMjEgQEAKICNkZWZpbmUgSElEX0ZJRUxEX0JVRkZFUkVEX0JZVEUgMHgxMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGlkZGV2X3VzYWdlX3JlZiB7Ci0gX191MzIgcmVwb3J0X3R5cGU7Ci0gX191MzIgcmVwb3J0X2lkOwotIF9fdTMyIGZpZWxkX2luZGV4OworICBfX3UzMiByZXBvcnRfdHlwZTsKKyAgX191MzIgcmVwb3J0X2lkOworICBfX3UzMiBmaWVsZF9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdXNhZ2VfaW5kZXg7Ci0gX191MzIgdXNhZ2VfY29kZTsKLSBfX3MzMiB2YWx1ZTsKKyAgX191MzIgdXNhZ2VfaW5kZXg7CisgIF9fdTMyIHVzYWdlX2NvZGU7CisgIF9fczMyIHZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhJRF9NQVhfTVVMVElfVVNBR0VTIDEwMjQKIHN0cnVjdCBoaWRkZXZfdXNhZ2VfcmVmX211bHRpIHsKLSBzdHJ1Y3QgaGlkZGV2X3VzYWdlX3JlZiB1cmVmOwotIF9fdTMyIG51bV92YWx1ZXM7CisgIHN0cnVjdCBoaWRkZXZfdXNhZ2VfcmVmIHVyZWY7CisgIF9fdTMyIG51bV92YWx1ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHZhbHVlc1tISURfTUFYX01VTFRJX1VTQUdFU107CisgIF9fczMyIHZhbHVlc1tISURfTUFYX01VTFRJX1VTQUdFU107CiB9OwogI2RlZmluZSBISURfRklFTERfSU5ERVhfTk9ORSAweGZmZmZmZmZmCiAjZGVmaW5lIEhJRF9WRVJTSU9OIDB4MDEwMDA0CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZHJhdy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oaWRyYXcuaAppbmRleCAwZmZhY2VhLi43ZDYwZDBkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZHJhdy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGlkcmF3LmgKQEAgLTIyLDE0ICsyMiwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhpZHJhd19yZXBvcnRfZGVzY3JpcHRvciB7Ci0gX191MzIgc2l6ZTsKLSBfX3U4IHZhbHVlW0hJRF9NQVhfREVTQ1JJUFRPUl9TSVpFXTsKKyAgX191MzIgc2l6ZTsKKyAgX191OCB2YWx1ZVtISURfTUFYX0RFU0NSSVBUT1JfU0laRV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoaWRyYXdfZGV2aW5mbyB7Ci0gX191MzIgYnVzdHlwZTsKLSBfX3MxNiB2ZW5kb3I7Ci0gX19zMTYgcHJvZHVjdDsKKyAgX191MzIgYnVzdHlwZTsKKyAgX19zMTYgdmVuZG9yOworICBfX3MxNiBwcm9kdWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEhJRElPQ0dSREVTQ1NJWkUgX0lPUignSCcsIDB4MDEsIGludCkKQEAgLTM4LDggKzM4LDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhJRElPQ0dSQVdOQU1FKGxlbikgX0lPQyhfSU9DX1JFQUQsICdIJywgMHgwNCwgbGVuKQogI2RlZmluZSBISURJT0NHUkFXUEhZUyhsZW4pIF9JT0MoX0lPQ19SRUFELCAnSCcsIDB4MDUsIGxlbikKLSNkZWZpbmUgSElESU9DU0ZFQVRVUkUobGVuKSBfSU9DKF9JT0NfV1JJVEV8X0lPQ19SRUFELCAnSCcsIDB4MDYsIGxlbikKLSNkZWZpbmUgSElESU9DR0ZFQVRVUkUobGVuKSBfSU9DKF9JT0NfV1JJVEV8X0lPQ19SRUFELCAnSCcsIDB4MDcsIGxlbikKKyNkZWZpbmUgSElESU9DU0ZFQVRVUkUobGVuKSBfSU9DKF9JT0NfV1JJVEUgfCBfSU9DX1JFQUQsICdIJywgMHgwNiwgbGVuKQorI2RlZmluZSBISURJT0NHRkVBVFVSRShsZW4pIF9JT0MoX0lPQ19XUklURSB8IF9JT0NfUkVBRCwgJ0gnLCAweDA3LCBsZW4pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBISURSQVdfRklSU1RfTUlOT1IgMAogI2RlZmluZSBISURSQVdfTUFYX0RFVklDRVMgNjQKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHBldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ocGV0LmgKaW5kZXggMTkyNTQyOC4uOThiZjcyNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ocGV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ocGV0LmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiBzdHJ1Y3QgaHBldF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBoaV9pcmVxZnJlcTsKLSB1bnNpZ25lZCBsb25nIGhpX2ZsYWdzOwotIHVuc2lnbmVkIHNob3J0IGhpX2hwZXQ7Ci0gdW5zaWduZWQgc2hvcnQgaGlfdGltZXI7CisgIHVuc2lnbmVkIGxvbmcgaGlfaXJlcWZyZXE7CisgIHVuc2lnbmVkIGxvbmcgaGlfZmxhZ3M7CisgIHVuc2lnbmVkIHNob3J0IGhpX2hwZXQ7CisgIHVuc2lnbmVkIHNob3J0IGhpX3RpbWVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEhQRVRfSU5GT19QRVJJT0RJQyAweDAwMTAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNpL2hzaV9jaGFyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hzaS9oc2lfY2hhci5oCmluZGV4IDljOTdlMjkuLmJjZWFiZmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNpL2hzaV9jaGFyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oc2kvaHNpX2NoYXIuaApAQCAtMTksMTAgKzE5LDEwIEBACiAjaWZuZGVmIF9fSFNJX0NIQVJfSAogI2RlZmluZSBfX0hTSV9DSEFSX0gKICNkZWZpbmUgSFNJX0NIQVJfTUFHSUMgJ2snCi0jZGVmaW5lIEhTQ19JT1cobnVtLCBkdHlwZSkgX0lPVyhIU0lfQ0hBUl9NQUdJQywgbnVtLCBkdHlwZSkKKyNkZWZpbmUgSFNDX0lPVyhudW0sZHR5cGUpIF9JT1coSFNJX0NIQVJfTUFHSUMsIG51bSwgZHR5cGUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBIU0NfSU9SKG51bSwgZHR5cGUpIF9JT1IoSFNJX0NIQVJfTUFHSUMsIG51bSwgZHR5cGUpCi0jZGVmaW5lIEhTQ19JT1dSKG51bSwgZHR5cGUpIF9JT1dSKEhTSV9DSEFSX01BR0lDLCBudW0sIGR0eXBlKQorI2RlZmluZSBIU0NfSU9SKG51bSxkdHlwZSkgX0lPUihIU0lfQ0hBUl9NQUdJQywgbnVtLCBkdHlwZSkKKyNkZWZpbmUgSFNDX0lPV1IobnVtLGR0eXBlKSBfSU9XUihIU0lfQ0hBUl9NQUdJQywgbnVtLCBkdHlwZSkKICNkZWZpbmUgSFNDX0lPKG51bSkgX0lPKEhTSV9DSEFSX01BR0lDLCBudW0pCiAjZGVmaW5lIEhTQ19SRVNFVCBIU0NfSU8oMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDMsMTcgKzQzLDE3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIU0NfQVJCX1BSSU8gMQogc3RydWN0IGhzY19yeF9jb25maWcgewotIHVpbnQzMl90IG1vZGU7Ci0gdWludDMyX3QgZmxvdzsKKyAgdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgZmxvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY2hhbm5lbHM7CisgIHVpbnQzMl90IGNoYW5uZWxzOwogfTsKIHN0cnVjdCBoc2NfdHhfY29uZmlnIHsKLSB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCBtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBjaGFubmVsczsKLSB1aW50MzJfdCBzcGVlZDsKLSB1aW50MzJfdCBhcmJfbW9kZTsKKyAgdWludDMyX3QgY2hhbm5lbHM7CisgIHVpbnQzMl90IHNwZWVkOworICB1aW50MzJfdCBhcmJfbW9kZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hzcl9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hzcl9uZXRsaW5rLmgKaW5kZXggYmY0N2Q2NC4uNzI4Y2UzNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oc3JfbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNyX25ldGxpbmsuaApAQCAtMTksMzUgKzE5LDM1IEBACiAjaWZuZGVmIF9fVUFQSV9IU1JfTkVUTElOS19ICiAjZGVmaW5lIF9fVUFQSV9IU1JfTkVUTElOS19ICiBlbnVtIHsKLSBIU1JfQV9VTlNQRUMsCisgIEhTUl9BX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFNSX0FfTk9ERV9BRERSLAotIEhTUl9BX0lGSU5ERVgsCi0gSFNSX0FfSUYxX0FHRSwKLSBIU1JfQV9JRjJfQUdFLAorICBIU1JfQV9OT0RFX0FERFIsCisgIEhTUl9BX0lGSU5ERVgsCisgIEhTUl9BX0lGMV9BR0UsCisgIEhTUl9BX0lGMl9BR0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhTUl9BX05PREVfQUREUl9CLAotIEhTUl9BX0lGMV9TRVEsCi0gSFNSX0FfSUYyX1NFUSwKLSBIU1JfQV9JRjFfSUZJTkRFWCwKKyAgSFNSX0FfTk9ERV9BRERSX0IsCisgIEhTUl9BX0lGMV9TRVEsCisgIEhTUl9BX0lGMl9TRVEsCisgIEhTUl9BX0lGMV9JRklOREVYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIU1JfQV9JRjJfSUZJTkRFWCwKLSBIU1JfQV9BRERSX0JfSUZJTkRFWCwKLSBfX0hTUl9BX01BWCwKKyAgSFNSX0FfSUYyX0lGSU5ERVgsCisgIEhTUl9BX0FERFJfQl9JRklOREVYLAorICBfX0hTUl9BX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIU1JfQV9NQVggKF9fSFNSX0FfTUFYIC0gMSkKIGVudW0gewotIEhTUl9DX1VOU1BFQywKLSBIU1JfQ19SSU5HX0VSUk9SLAorICBIU1JfQ19VTlNQRUMsCisgIEhTUl9DX1JJTkdfRVJST1IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhTUl9DX05PREVfRE9XTiwKLSBIU1JfQ19HRVRfTk9ERV9TVEFUVVMsCi0gSFNSX0NfU0VUX05PREVfU1RBVFVTLAotIEhTUl9DX0dFVF9OT0RFX0xJU1QsCisgIEhTUl9DX05PREVfRE9XTiwKKyAgSFNSX0NfR0VUX05PREVfU1RBVFVTLAorICBIU1JfQ19TRVRfTk9ERV9TVEFUVVMsCisgIEhTUl9DX0dFVF9OT0RFX0xJU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhTUl9DX1NFVF9OT0RFX0xJU1QsCi0gX19IU1JfQ19NQVgsCisgIEhTUl9DX1NFVF9OT0RFX0xJU1QsCisgIF9fSFNSX0NfTUFYLAogfTsKICNkZWZpbmUgSFNSX0NfTUFYIChfX0hTUl9DX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9od19icmVha3BvaW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h3X2JyZWFrcG9pbnQuaAppbmRleCAyZjYxMDYyLi5mZWNmNDQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h3X2JyZWFrcG9pbnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h3X2JyZWFrcG9pbnQuaApAQCAtMTksMjcgKzE5LDI3IEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX0hXX0JSRUFLUE9JTlRfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9IV19CUkVBS1BPSU5UX0gKIGVudW0gewotIEhXX0JSRUFLUE9JTlRfTEVOXzEgPSAxLAorICBIV19CUkVBS1BPSU5UX0xFTl8xID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdfQlJFQUtQT0lOVF9MRU5fMiA9IDIsCi0gSFdfQlJFQUtQT0lOVF9MRU5fNCA9IDQsCi0gSFdfQlJFQUtQT0lOVF9MRU5fOCA9IDgsCisgIEhXX0JSRUFLUE9JTlRfTEVOXzIgPSAyLAorICBIV19CUkVBS1BPSU5UX0xFTl80ID0gNCwKKyAgSFdfQlJFQUtQT0lOVF9MRU5fOCA9IDgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIEhXX0JSRUFLUE9JTlRfRU1QVFkgPSAwLAotIEhXX0JSRUFLUE9JTlRfUiA9IDEsCi0gSFdfQlJFQUtQT0lOVF9XID0gMiwKKyAgSFdfQlJFQUtQT0lOVF9FTVBUWSA9IDAsCisgIEhXX0JSRUFLUE9JTlRfUiA9IDEsCisgIEhXX0JSRUFLUE9JTlRfVyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhXX0JSRUFLUE9JTlRfUlcgPSBIV19CUkVBS1BPSU5UX1IgfCBIV19CUkVBS1BPSU5UX1csCi0gSFdfQlJFQUtQT0lOVF9YID0gNCwKLSBIV19CUkVBS1BPSU5UX0lOVkFMSUQgPSBIV19CUkVBS1BPSU5UX1JXIHwgSFdfQlJFQUtQT0lOVF9YLAorICBIV19CUkVBS1BPSU5UX1JXID0gSFdfQlJFQUtQT0lOVF9SIHwgSFdfQlJFQUtQT0lOVF9XLAorICBIV19CUkVBS1BPSU5UX1ggPSA0LAorICBIV19CUkVBS1BPSU5UX0lOVkFMSUQgPSBIV19CUkVBS1BPSU5UX1JXIHwgSFdfQlJFQUtQT0lOVF9YLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGJwX3R5cGVfaWR4IHsKLSBUWVBFX0lOU1QgPSAwLAotIFRZUEVfREFUQSA9IDEsCi0gVFlQRV9NQVgKKyAgVFlQRV9JTlNUID0gMCwKKyAgVFlQRV9EQVRBID0gMSwKKyAgVFlQRV9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h5cGVydi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oeXBlcnYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OWI0OGVlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oeXBlcnYuaApAQCAtMCwwICsxLDIzNCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9IWVBFUlZfSAorI2RlZmluZSBfVUFQSV9IWVBFUlZfSAorI2luY2x1ZGUgPGxpbnV4L3V1aWQuaD4KKyNkZWZpbmUgVVRJTF9GV19NSU5PUiAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVVElMX1dTMks4X0ZXX01BSk9SIDEKKyNkZWZpbmUgVVRJTF9XUzJLOF9GV19WRVJTSU9OIChVVElMX1dTMks4X0ZXX01BSk9SIDw8IDE2IHwgVVRJTF9GV19NSU5PUikKKyNkZWZpbmUgVVRJTF9GV19NQUpPUiAzCisjZGVmaW5lIFVUSUxfRldfVkVSU0lPTiAoVVRJTF9GV19NQUpPUiA8PCAxNiB8IFVUSUxfRldfTUlOT1IpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWU1NfT1BfUkVHSVNURVIgMTI4CitlbnVtIGh2X3Zzc19vcCB7CisgIFZTU19PUF9DUkVBVEUgPSAwLAorICBWU1NfT1BfREVMRVRFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVlNTX09QX0hPVF9CQUNLVVAsCisgIFZTU19PUF9HRVRfRE1fSU5GTywKKyAgVlNTX09QX0JVX0NPTVBMRVRFLAorICBWU1NfT1BfRlJFRVpFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVlNTX09QX1RIQVcsCisgIFZTU19PUF9BVVRPX1JFQ09WRVIsCisgIFZTU19PUF9DT1VOVAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaHZfdnNzX2hkciB7CisgIF9fdTggb3BlcmF0aW9uOworICBfX3U4IHJlc2VydmVkWzddOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZTU19IQlVfTk9fQVVUT19SRUNPVkVSWSAweDAwMDAwMDA1CitzdHJ1Y3QgaHZfdnNzX2NoZWNrX2ZlYXR1cmUgeworICBfX3UzMiBmbGFnczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGh2X3Zzc19jaGVja19kbV9pbmZvIHsKKyAgX191MzIgZmxhZ3M7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IGh2X3Zzc19tc2cgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24geworICAgIHN0cnVjdCBodl92c3NfaGRyIHZzc19oZHI7CisgICAgaW50IGVycm9yOworICB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24geworICAgIHN0cnVjdCBodl92c3NfY2hlY2tfZmVhdHVyZSB2c3NfY2Y7CisgICAgc3RydWN0IGh2X3Zzc19jaGVja19kbV9pbmZvIGRtX2luZm87CisgIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyNkZWZpbmUgRkNPUFlfVkVSU0lPTl8wIDAKKyNkZWZpbmUgRkNPUFlfQ1VSUkVOVF9WRVJTSU9OIEZDT1BZX1ZFUlNJT05fMAorI2RlZmluZSBXX01BWF9QQVRIIDI2MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gaHZfZmNvcHlfb3AgeworICBTVEFSVF9GSUxFX0NPUFkgPSAwLAorICBXUklURV9UT19GSUxFLAorICBDT01QTEVURV9GQ09QWSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIENBTkNFTF9GQ09QWSwKK307CitzdHJ1Y3QgaHZfZmNvcHlfaGRyIHsKKyAgX191MzIgb3BlcmF0aW9uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdXVpZF9sZSBzZXJ2aWNlX2lkMDsKKyAgdXVpZF9sZSBzZXJ2aWNlX2lkMTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisjZGVmaW5lIE9WRVJfV1JJVEUgMHgxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDUkVBVEVfUEFUSCAweDIKK3N0cnVjdCBodl9zdGFydF9mY29weSB7CisgIHN0cnVjdCBodl9mY29weV9oZHIgaGRyOworICBfX3UxNiBmaWxlX25hbWVbV19NQVhfUEFUSF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBwYXRoX25hbWVbV19NQVhfUEFUSF07CisgIF9fdTMyIGNvcHlfZmxhZ3M7CisgIF9fdTY0IGZpbGVfc2l6ZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEQVRBX0ZSQUdNRU5UICg2ICogMTAyNCkKK3N0cnVjdCBodl9kb19mY29weSB7CisgIHN0cnVjdCBodl9mY29weV9oZHIgaGRyOworICBfX3UzMiBwYWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBvZmZzZXQ7CisgIF9fdTMyIHNpemU7CisgIF9fdTggZGF0YVtEQVRBX0ZSQUdNRU5UXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVl9LVlBfRVhDSEFOR0VfTUFYX1ZBTFVFX1NJWkUgKDIwNDgpCisjZGVmaW5lIEhWX0tWUF9FWENIQU5HRV9NQVhfS0VZX1NJWkUgKDUxMikKKyNkZWZpbmUgUkVHX1NaIDEKKyNkZWZpbmUgUkVHX1UzMiA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSRUdfVTY0IDgKKyNkZWZpbmUgS1ZQX09QX1JFR0lTVEVSIDQKKyNkZWZpbmUgS1ZQX09QX1JFR0lTVEVSMSAxMDAKK2VudW0gaHZfa3ZwX2V4Y2hnX29wIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtWUF9PUF9HRVQgPSAwLAorICBLVlBfT1BfU0VULAorICBLVlBfT1BfREVMRVRFLAorICBLVlBfT1BfRU5VTUVSQVRFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS1ZQX09QX0dFVF9JUF9JTkZPLAorICBLVlBfT1BfU0VUX0lQX0lORk8sCisgIEtWUF9PUF9DT1VOVAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIGh2X2t2cF9leGNoZ19wb29sIHsKKyAgS1ZQX1BPT0xfRVhURVJOQUwgPSAwLAorICBLVlBfUE9PTF9HVUVTVCwKKyAgS1ZQX1BPT0xfQVVUTywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtWUF9QT09MX0FVVE9fRVhURVJOQUwsCisgIEtWUF9QT09MX0FVVE9fSU5URVJOQUwsCisgIEtWUF9QT09MX0NPVU5UCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFZfU19PSyAweDAwMDAwMDAwCisjZGVmaW5lIEhWX0VfRkFJTCAweDgwMDA0MDA1CisjZGVmaW5lIEhWX1NfQ09OVCAweDgwMDcwMTAzCisjZGVmaW5lIEhWX0VSUk9SX05PVF9TVVBQT1JURUQgMHg4MDA3MDAzMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFZfRVJST1JfTUFDSElORV9MT0NLRUQgMHg4MDA3MDRGNworI2RlZmluZSBIVl9FUlJPUl9ERVZJQ0VfTk9UX0NPTk5FQ1RFRCAweDgwMDcwNDhGCisjZGVmaW5lIEhWX0lOVkFMSURBUkcgMHg4MDA3MDA1NworI2RlZmluZSBIVl9HVUlEX05PVEZPVU5EIDB4ODAwNDEwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhWX0VSUk9SX0FMUkVBRFlfRVhJU1RTIDB4ODAwNzAwNTAKKyNkZWZpbmUgQUREUl9GQU1JTFlfTk9ORSAweDAwCisjZGVmaW5lIEFERFJfRkFNSUxZX0lQVjQgMHgwMQorI2RlZmluZSBBRERSX0ZBTUlMWV9JUFY2IDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1BWF9BREFQVEVSX0lEX1NJWkUgMTI4CisjZGVmaW5lIE1BWF9JUF9BRERSX1NJWkUgMTAyNAorI2RlZmluZSBNQVhfR0FURVdBWV9TSVpFIDUxMgorc3RydWN0IGh2X2t2cF9pcGFkZHJfdmFsdWUgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgYWRhcHRlcl9pZFtNQVhfQURBUFRFUl9JRF9TSVpFXTsKKyAgX191OCBhZGRyX2ZhbWlseTsKKyAgX191OCBkaGNwX2VuYWJsZWQ7CisgIF9fdTE2IGlwX2FkZHJbTUFYX0lQX0FERFJfU0laRV07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzdWJfbmV0W01BWF9JUF9BRERSX1NJWkVdOworICBfX3UxNiBnYXRlX3dheVtNQVhfR0FURVdBWV9TSVpFXTsKKyAgX191MTYgZG5zX2FkZHJbTUFYX0lQX0FERFJfU0laRV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBodl9rdnBfaGRyIHsKKyAgX191OCBvcGVyYXRpb247CisgIF9fdTggcG9vbDsKKyAgX191MTYgcGFkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CitzdHJ1Y3QgaHZfa3ZwX2V4Y2hnX21zZ192YWx1ZSB7CisgIF9fdTMyIHZhbHVlX3R5cGU7CisgIF9fdTMyIGtleV9zaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdmFsdWVfc2l6ZTsKKyAgX191OCBrZXlbSFZfS1ZQX0VYQ0hBTkdFX01BWF9LRVlfU0laRV07CisgIHVuaW9uIHsKKyAgICBfX3U4IHZhbHVlW0hWX0tWUF9FWENIQU5HRV9NQVhfVkFMVUVfU0laRV07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTMyIHZhbHVlX3UzMjsKKyAgICBfX3U2NCB2YWx1ZV91NjQ7CisgIH07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBodl9rdnBfbXNnX2VudW1lcmF0ZSB7CisgIF9fdTMyIGluZGV4OworICBzdHJ1Y3QgaHZfa3ZwX2V4Y2hnX21zZ192YWx1ZSBkYXRhOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaHZfa3ZwX21zZ19nZXQgeworICBzdHJ1Y3QgaHZfa3ZwX2V4Y2hnX21zZ192YWx1ZSBkYXRhOworfTsKK3N0cnVjdCBodl9rdnBfbXNnX3NldCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaHZfa3ZwX2V4Y2hnX21zZ192YWx1ZSBkYXRhOworfTsKK3N0cnVjdCBodl9rdnBfbXNnX2RlbGV0ZSB7CisgIF9fdTMyIGtleV9zaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBrZXlbSFZfS1ZQX0VYQ0hBTkdFX01BWF9LRVlfU0laRV07Cit9Oworc3RydWN0IGh2X2t2cF9yZWdpc3RlciB7CisgIF9fdTggdmVyc2lvbltIVl9LVlBfRVhDSEFOR0VfTUFYX0tFWV9TSVpFXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IGh2X2t2cF9tc2cgeworICB1bmlvbiB7CisgICAgc3RydWN0IGh2X2t2cF9oZHIga3ZwX2hkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgaW50IGVycm9yOworICB9OworICB1bmlvbiB7CisgICAgc3RydWN0IGh2X2t2cF9tc2dfZ2V0IGt2cF9nZXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIHN0cnVjdCBodl9rdnBfbXNnX3NldCBrdnBfc2V0OworICAgIHN0cnVjdCBodl9rdnBfbXNnX2RlbGV0ZSBrdnBfZGVsZXRlOworICAgIHN0cnVjdCBodl9rdnBfbXNnX2VudW1lcmF0ZSBrdnBfZW51bV9kYXRhOworICAgIHN0cnVjdCBodl9rdnBfaXBhZGRyX3ZhbHVlIGt2cF9pcF92YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIHN0cnVjdCBodl9rdnBfcmVnaXN0ZXIga3ZwX3JlZ2lzdGVyOworICB9IGJvZHk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IGh2X2t2cF9pcF9tc2cgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBvcGVyYXRpb247CisgIF9fdTggcG9vbDsKKyAgc3RydWN0IGh2X2t2cF9pcGFkZHJfdmFsdWUga3ZwX2lwX3ZhbDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyYy1kZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLWRldi5oCmluZGV4IDkyZGI1M2QuLjYyNmY0ZWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLWRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLWRldi5oCkBAIC0zMywxNiArMzMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEkyQ19TTUJVUyAweDA3MjAKIHN0cnVjdCBpMmNfc21idXNfaW9jdGxfZGF0YSB7Ci0gX191OCByZWFkX3dyaXRlOwotIF9fdTggY29tbWFuZDsKKyAgX191OCByZWFkX3dyaXRlOworICBfX3U4IGNvbW1hbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7Ci0gdW5pb24gaTJjX3NtYnVzX2RhdGEgX191c2VyICpkYXRhOworICBfX3UzMiBzaXplOworICB1bmlvbiBpMmNfc21idXNfZGF0YSBfX3VzZXIgKiBkYXRhOwogfTsKIHN0cnVjdCBpMmNfcmR3cl9pb2N0bF9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGkyY19tc2cgX191c2VyICptc2dzOwotIF9fdTMyIG5tc2dzOworICBzdHJ1Y3QgaTJjX21zZyBfX3VzZXIgKiBtc2dzOworICBfX3UzMiBubXNnczsKIH07CiAjZGVmaW5lIEkyQ19SRFJXX0lPQ1RMX01BWF9NU0dTIDQyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLmgKaW5kZXggMTg3ZjkyZi4uYjlhN2JmOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyYy5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpMmNfbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYWRkcjsKLSBfX3UxNiBmbGFnczsKKyAgX191MTYgYWRkcjsKKyAgX191MTYgZmxhZ3M7CiAjZGVmaW5lIEkyQ19NX1RFTiAweDAwMTAKICNkZWZpbmUgSTJDX01fUkQgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzMsOCArMzMsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTJDX01fTk9fUkRfQUNLIDB4MDgwMAogI2RlZmluZSBJMkNfTV9SRUNWX0xFTiAweDA0MDAKLSBfX3UxNiBsZW47Ci0gX191OCAqYnVmOworICBfX3UxNiBsZW47CisgIF9fdTggKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSTJDX0ZVTkNfSTJDIDB4MDAwMDAwMDEKQEAgLTU5LDIwICs1OSwyMCBAQAogI2RlZmluZSBJMkNfRlVOQ19TTUJVU19XUklURV9CTE9DS19EQVRBIDB4MDIwMDAwMDAKICNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfUkVBRF9JMkNfQkxPQ0sgMHgwNDAwMDAwMAogI2RlZmluZSBJMkNfRlVOQ19TTUJVU19XUklURV9JMkNfQkxPQ0sgMHgwODAwMDAwMAotI2RlZmluZSBJMkNfRlVOQ19TTUJVU19CWVRFIChJMkNfRlVOQ19TTUJVU19SRUFEX0JZVEUgfCAgIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JZVEUpCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0JZVEUgKEkyQ19GVU5DX1NNQlVTX1JFQURfQllURSB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JZVEUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJMkNfRlVOQ19TTUJVU19CWVRFX0RBVEEgKEkyQ19GVU5DX1NNQlVTX1JFQURfQllURV9EQVRBIHwgICBJMkNfRlVOQ19TTUJVU19XUklURV9CWVRFX0RBVEEpCi0jZGVmaW5lIEkyQ19GVU5DX1NNQlVTX1dPUkRfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9XT1JEX0RBVEEgfCAgIEkyQ19GVU5DX1NNQlVTX1dSSVRFX1dPUkRfREFUQSkKLSNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfQkxPQ0tfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9CTE9DS19EQVRBIHwgICBJMkNfRlVOQ19TTUJVU19XUklURV9CTE9DS19EQVRBKQotI2RlZmluZSBJMkNfRlVOQ19TTUJVU19JMkNfQkxPQ0sgKEkyQ19GVU5DX1NNQlVTX1JFQURfSTJDX0JMT0NLIHwgICBJMkNfRlVOQ19TTUJVU19XUklURV9JMkNfQkxPQ0spCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0JZVEVfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9CWVRFX0RBVEEgfCBJMkNfRlVOQ19TTUJVU19XUklURV9CWVRFX0RBVEEpCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX1dPUkRfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9XT1JEX0RBVEEgfCBJMkNfRlVOQ19TTUJVU19XUklURV9XT1JEX0RBVEEpCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0JMT0NLX0RBVEEgKEkyQ19GVU5DX1NNQlVTX1JFQURfQkxPQ0tfREFUQSB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JMT0NLX0RBVEEpCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0kyQ19CTE9DSyAoSTJDX0ZVTkNfU01CVVNfUkVBRF9JMkNfQkxPQ0sgfCBJMkNfRlVOQ19TTUJVU19XUklURV9JMkNfQkxPQ0spCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJMkNfRlVOQ19TTUJVU19FTVVMIChJMkNfRlVOQ19TTUJVU19RVUlDSyB8ICAgSTJDX0ZVTkNfU01CVVNfQllURSB8ICAgSTJDX0ZVTkNfU01CVVNfQllURV9EQVRBIHwgICBJMkNfRlVOQ19TTUJVU19XT1JEX0RBVEEgfCAgIEkyQ19GVU5DX1NNQlVTX1BST0NfQ0FMTCB8ICAgSTJDX0ZVTkNfU01CVVNfV1JJVEVfQkxPQ0tfREFUQSB8ICAgSTJDX0ZVTkNfU01CVVNfSTJDX0JMT0NLIHwgICBJMkNfRlVOQ19TTUJVU19QRUMpCisjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0VNVUwgKEkyQ19GVU5DX1NNQlVTX1FVSUNLIHwgSTJDX0ZVTkNfU01CVVNfQllURSB8IEkyQ19GVU5DX1NNQlVTX0JZVEVfREFUQSB8IEkyQ19GVU5DX1NNQlVTX1dPUkRfREFUQSB8IEkyQ19GVU5DX1NNQlVTX1BST0NfQ0FMTCB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JMT0NLX0RBVEEgfCBJMkNfRlVOQ19TTUJVU19JMkNfQkxPQ0sgfCBJMkNfRlVOQ19TTUJVU19QRUMpCiAjZGVmaW5lIEkyQ19TTUJVU19CTE9DS19NQVggMzIKIHVuaW9uIGkyY19zbWJ1c19kYXRhIHsKLSBfX3U4IGJ5dGU7CisgIF9fdTggYnl0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd29yZDsKLSBfX3U4IGJsb2NrW0kyQ19TTUJVU19CTE9DS19NQVggKyAyXTsKKyAgX191MTYgd29yZDsKKyAgX191OCBibG9ja1tJMkNfU01CVVNfQkxPQ0tfTUFYICsgMl07CiB9OwogI2RlZmluZSBJMkNfU01CVVNfUkVBRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMm8tZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyby1kZXYuaAppbmRleCBlMDI0OTk3Li45MzI4Y2FkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyby1kZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyby1kZXYuaApAQCAtMjMsOTcgKzIzLDk3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIEkyT19NQUdJQ19OVU1CRVIgJ2knCi0jZGVmaW5lIEkyT0dFVElPUFMgX0lPUihJMk9fTUFHSUNfTlVNQkVSLDAsX191OFtNQVhfSTJPX0NPTlRST0xMRVJTXSkKLSNkZWZpbmUgSTJPSFJUR0VUIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsMSxzdHJ1Y3QgaTJvX2NtZF9ocnRsY3QpCisjZGVmaW5lIEkyT0dFVElPUFMgX0lPUihJMk9fTUFHSUNfTlVNQkVSLCAwLCBfX3U4W01BWF9JMk9fQ09OVFJPTExFUlNdKQorI2RlZmluZSBJMk9IUlRHRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgMSwgc3RydWN0IGkyb19jbWRfaHJ0bGN0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTJPTENUR0VUIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsMixzdHJ1Y3QgaTJvX2NtZF9ocnRsY3QpCi0jZGVmaW5lIEkyT1BBUk1TRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwzLHN0cnVjdCBpMm9fY21kX3BzZXRnZXQpCi0jZGVmaW5lIEkyT1BBUk1HRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiw0LHN0cnVjdCBpMm9fY21kX3BzZXRnZXQpCi0jZGVmaW5lIEkyT1NXREwgX0lPV1IoSTJPX01BR0lDX05VTUJFUiw1LHN0cnVjdCBpMm9fc3dfeGZlcikKKyNkZWZpbmUgSTJPTENUR0VUIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsIDIsIHN0cnVjdCBpMm9fY21kX2hydGxjdCkKKyNkZWZpbmUgSTJPUEFSTVNFVCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLCAzLCBzdHJ1Y3QgaTJvX2NtZF9wc2V0Z2V0KQorI2RlZmluZSBJMk9QQVJNR0VUIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsIDQsIHN0cnVjdCBpMm9fY21kX3BzZXRnZXQpCisjZGVmaW5lIEkyT1NXREwgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgNSwgc3RydWN0IGkyb19zd194ZmVyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTJPU1dVTCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDYsc3RydWN0IGkyb19zd194ZmVyKQotI2RlZmluZSBJMk9TV0RFTCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDcsc3RydWN0IGkyb19zd194ZmVyKQotI2RlZmluZSBJMk9WQUxJREFURSBfSU9SKEkyT19NQUdJQ19OVU1CRVIsOCxfX3UzMikKLSNkZWZpbmUgSTJPSFRNTCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDksc3RydWN0IGkyb19odG1sKQorI2RlZmluZSBJMk9TV1VMIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsIDYsIHN0cnVjdCBpMm9fc3dfeGZlcikKKyNkZWZpbmUgSTJPU1dERUwgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgNywgc3RydWN0IGkyb19zd194ZmVyKQorI2RlZmluZSBJMk9WQUxJREFURSBfSU9SKEkyT19NQUdJQ19OVU1CRVIsIDgsIF9fdTMyKQorI2RlZmluZSBJMk9IVE1MIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsIDksIHN0cnVjdCBpMm9faHRtbCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEkyT0VWVFJFRyBfSU9XKEkyT19NQUdJQ19OVU1CRVIsMTAsc3RydWN0IGkyb19ldnRfaWQpCi0jZGVmaW5lIEkyT0VWVEdFVCBfSU9SKEkyT19NQUdJQ19OVU1CRVIsMTEsc3RydWN0IGkyb19ldnRfaW5mbykKLSNkZWZpbmUgSTJPUEFTU1RIUlUgX0lPUihJMk9fTUFHSUNfTlVNQkVSLDEyLHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1KQotI2RlZmluZSBJMk9QQVNTVEhSVTMyIF9JT1IoSTJPX01BR0lDX05VTUJFUiwxMixzdHJ1Y3QgaTJvX2NtZF9wYXNzdGhydTMyKQorI2RlZmluZSBJMk9FVlRSRUcgX0lPVyhJMk9fTUFHSUNfTlVNQkVSLCAxMCwgc3RydWN0IGkyb19ldnRfaWQpCisjZGVmaW5lIEkyT0VWVEdFVCBfSU9SKEkyT19NQUdJQ19OVU1CRVIsIDExLCBzdHJ1Y3QgaTJvX2V2dF9pbmZvKQorI2RlZmluZSBJMk9QQVNTVEhSVSBfSU9SKEkyT19NQUdJQ19OVU1CRVIsIDEyLCBzdHJ1Y3QgaTJvX2NtZF9wYXNzdGhydSkKKyNkZWZpbmUgSTJPUEFTU1RIUlUzMiBfSU9SKEkyT19NQUdJQ19OVU1CRVIsIDEyLCBzdHJ1Y3QgaTJvX2NtZF9wYXNzdGhydTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1MzIgewotIHVuc2lnbmVkIGludCBpb3A7Ci0gX191MzIgbXNnOworICB1bnNpZ25lZCBpbnQgaW9wOworICBfX3UzMiBtc2c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1IHsKLSB1bnNpZ25lZCBpbnQgaW9wOwotIHZvaWQgX191c2VyICptc2c7CisgIHVuc2lnbmVkIGludCBpb3A7CisgIHZvaWQgX191c2VyICogbXNnOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaTJvX2NtZF9ocnRsY3QgewotIHVuc2lnbmVkIGludCBpb3A7Ci0gdm9pZCBfX3VzZXIgKnJlc2J1ZjsKLSB1bnNpZ25lZCBpbnQgX191c2VyICpyZXNsZW47CisgIHVuc2lnbmVkIGludCBpb3A7CisgIHZvaWQgX191c2VyICogcmVzYnVmOworICB1bnNpZ25lZCBpbnQgX191c2VyICogcmVzbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaTJvX2NtZF9wc2V0Z2V0IHsKLSB1bnNpZ25lZCBpbnQgaW9wOwotIHVuc2lnbmVkIGludCB0aWQ7CisgIHVuc2lnbmVkIGludCBpb3A7CisgIHVuc2lnbmVkIGludCB0aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpvcGJ1ZjsKLSB1bnNpZ25lZCBpbnQgb3BsZW47Ci0gdm9pZCBfX3VzZXIgKnJlc2J1ZjsKLSB1bnNpZ25lZCBpbnQgX191c2VyICpyZXNsZW47CisgIHZvaWQgX191c2VyICogb3BidWY7CisgIHVuc2lnbmVkIGludCBvcGxlbjsKKyAgdm9pZCBfX3VzZXIgKiByZXNidWY7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiByZXNsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpMm9fc3dfeGZlciB7Ci0gdW5zaWduZWQgaW50IGlvcDsKLSB1bnNpZ25lZCBjaGFyIGZsYWdzOworICB1bnNpZ25lZCBpbnQgaW9wOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHN3X3R5cGU7Ci0gdW5zaWduZWQgaW50IHN3X2lkOwotIHZvaWQgX191c2VyICpidWY7Ci0gdW5zaWduZWQgaW50IF9fdXNlciAqc3dsZW47CisgIHVuc2lnbmVkIGNoYXIgc3dfdHlwZTsKKyAgdW5zaWduZWQgaW50IHN3X2lkOworICB2b2lkIF9fdXNlciAqIGJ1ZjsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIHN3bGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgX191c2VyICptYXhmcmFnOwotIHVuc2lnbmVkIGludCBfX3VzZXIgKmN1cmZyYWc7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiBtYXhmcmFnOworICB1bnNpZ25lZCBpbnQgX191c2VyICogY3VyZnJhZzsKIH07CiBzdHJ1Y3QgaTJvX2h0bWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW9wOwotIHVuc2lnbmVkIGludCB0aWQ7Ci0gdW5zaWduZWQgaW50IHBhZ2U7Ci0gdm9pZCBfX3VzZXIgKnJlc2J1ZjsKKyAgdW5zaWduZWQgaW50IGlvcDsKKyAgdW5zaWduZWQgaW50IHRpZDsKKyAgdW5zaWduZWQgaW50IHBhZ2U7CisgIHZvaWQgX191c2VyICogcmVzYnVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgX191c2VyICpyZXNsZW47Ci0gdm9pZCBfX3VzZXIgKnFidWY7Ci0gdW5zaWduZWQgaW50IHFsZW47CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiByZXNsZW47CisgIHZvaWQgX191c2VyICogcWJ1ZjsKKyAgdW5zaWduZWQgaW50IHFsZW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTJPX0VWVF9RX0xFTiAzMgogc3RydWN0IGkyb19ldnRfaWQgewotIHVuc2lnbmVkIGludCBpb3A7Ci0gdW5zaWduZWQgaW50IHRpZDsKKyAgdW5zaWduZWQgaW50IGlvcDsKKyAgdW5zaWduZWQgaW50IHRpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGV2dF9tYXNrOworICB1bnNpZ25lZCBpbnQgZXZ0X21hc2s7CiB9OwogI2RlZmluZSBJMk9fRVZUX0RBVEFfU0laRSA4OAogc3RydWN0IGkyb19ldnRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpMm9fZXZ0X2lkIGlkOwotIHVuc2lnbmVkIGNoYXIgZXZ0X2RhdGFbSTJPX0VWVF9EQVRBX1NJWkVdOwotIHVuc2lnbmVkIGludCBkYXRhX3NpemU7CisgIHN0cnVjdCBpMm9fZXZ0X2lkIGlkOworICB1bnNpZ25lZCBjaGFyIGV2dF9kYXRhW0kyT19FVlRfREFUQV9TSVpFXTsKKyAgdW5zaWduZWQgaW50IGRhdGFfc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyb19ldnRfZ2V0IHsKLSBzdHJ1Y3QgaTJvX2V2dF9pbmZvIGluZm87Ci0gaW50IHBlbmRpbmc7Ci0gaW50IGxvc3Q7CisgIHN0cnVjdCBpMm9fZXZ0X2luZm8gaW5mbzsKKyAgaW50IHBlbmRpbmc7CisgIGludCBsb3N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB0eXBlZGVmIHN0cnVjdCBpMm9fc2dfaW9faGRyIHsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIH0gaTJvX3NnX2lvX2hkcl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTJPX0JVU19MT0NBTCAwCkBAIC0xMjcsMTQxICsxMjcsMTQxIEBACiAjZGVmaW5lIEkyT19CVVNfVU5LTk9XTiAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19wY2lfYnVzIHsKLSBfX3U4IFBjaUZ1bmN0aW9uTnVtYmVyOwotIF9fdTggUGNpRGV2aWNlTnVtYmVyOwotIF9fdTggUGNpQnVzTnVtYmVyOworICBfX3U4IFBjaUZ1bmN0aW9uTnVtYmVyOworICBfX3U4IFBjaURldmljZU51bWJlcjsKKyAgX191OCBQY2lCdXNOdW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191MTYgUGNpVmVuZG9ySUQ7Ci0gX191MTYgUGNpRGV2aWNlSUQ7CisgIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTE2IFBjaVZlbmRvcklEOworICBfX3UxNiBQY2lEZXZpY2VJRDsKIH0gaTJvX3BjaV9idXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19sb2NhbF9idXMgewotIF9fdTE2IExiQmFzZUlPUG9ydDsKLSBfX3UxNiByZXNlcnZlZDsKLSBfX3UzMiBMYkJhc2VNZW1vcnlBZGRyZXNzOworICBfX3UxNiBMYkJhc2VJT1BvcnQ7CisgIF9fdTE2IHJlc2VydmVkOworICBfX3UzMiBMYkJhc2VNZW1vcnlBZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gaTJvX2xvY2FsX2J1czsKIHR5cGVkZWYgc3RydWN0IF9pMm9faXNhX2J1cyB7Ci0gX191MTYgSXNhQmFzZUlPUG9ydDsKLSBfX3U4IENTTjsKKyAgX191MTYgSXNhQmFzZUlPUG9ydDsKKyAgX191OCBDU047CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191MzIgSXNhQmFzZU1lbW9yeUFkZHJlc3M7CisgIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTMyIElzYUJhc2VNZW1vcnlBZGRyZXNzOwogfSBpMm9faXNhX2J1czsKIHR5cGVkZWYgc3RydWN0IF9pMm9fZWlzYV9idXNfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IEVpc2FCYXNlSU9Qb3J0OwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191OCBFaXNhU2xvdE51bWJlcjsKLSBfX3UzMiBFaXNhQmFzZU1lbW9yeUFkZHJlc3M7CisgIF9fdTE2IEVpc2FCYXNlSU9Qb3J0OworICBfX3U4IHJlc2VydmVkOworICBfX3U4IEVpc2FTbG90TnVtYmVyOworICBfX3UzMiBFaXNhQmFzZU1lbW9yeUFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBpMm9fZWlzYV9idXM7CiB0eXBlZGVmIHN0cnVjdCBfaTJvX21jYV9idXMgewotIF9fdTE2IE1jYUJhc2VJT1BvcnQ7Ci0gX191OCByZXNlcnZlZDsKKyAgX191MTYgTWNhQmFzZUlPUG9ydDsKKyAgX191OCByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBNY2FTbG90TnVtYmVyOwotIF9fdTMyIE1jYUJhc2VNZW1vcnlBZGRyZXNzOworICBfX3U4IE1jYVNsb3ROdW1iZXI7CisgIF9fdTMyIE1jYUJhc2VNZW1vcnlBZGRyZXNzOwogfSBpMm9fbWNhX2J1czsKIHR5cGVkZWYgc3RydWN0IF9pMm9fb3RoZXJfYnVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgQmFzZUlPUG9ydDsKLSBfX3UxNiByZXNlcnZlZDsKLSBfX3UzMiBCYXNlTWVtb3J5QWRkcmVzczsKKyAgX191MTYgQmFzZUlPUG9ydDsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTMyIEJhc2VNZW1vcnlBZGRyZXNzOwogfSBpMm9fb3RoZXJfYnVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IF9pMm9faHJ0X2VudHJ5IHsKLSBfX3UzMiBhZGFwdGVyX2lkOwotIF9fdTMyIHBhcmVudF90aWQ6MTI7Ci0gX191MzIgc3RhdGU6NDsKKyAgX191MzIgYWRhcHRlcl9pZDsKKyAgX191MzIgcGFyZW50X3RpZCA6IDEyOworICBfX3UzMiBzdGF0ZSA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ1c19udW06ODsKLSBfX3UzMiBidXNfdHlwZTo4OwotIHVuaW9uIHsKLSBpMm9fcGNpX2J1cyBwY2lfYnVzOworICBfX3UzMiBidXNfbnVtIDogODsKKyAgX191MzIgYnVzX3R5cGUgOiA4OworICB1bmlvbiB7CisgICAgaTJvX3BjaV9idXMgcGNpX2J1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaTJvX2xvY2FsX2J1cyBsb2NhbF9idXM7Ci0gaTJvX2lzYV9idXMgaXNhX2J1czsKLSBpMm9fZWlzYV9idXMgZWlzYV9idXM7Ci0gaTJvX21jYV9idXMgbWNhX2J1czsKKyAgICBpMm9fbG9jYWxfYnVzIGxvY2FsX2J1czsKKyAgICBpMm9faXNhX2J1cyBpc2FfYnVzOworICAgIGkyb19laXNhX2J1cyBlaXNhX2J1czsKKyAgICBpMm9fbWNhX2J1cyBtY2FfYnVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpMm9fb3RoZXJfYnVzIG90aGVyX2J1czsKLSB9IGJ1czsKKyAgICBpMm9fb3RoZXJfYnVzIG90aGVyX2J1czsKKyAgfSBidXM7CiB9IGkyb19ocnRfZW50cnk7CiB0eXBlZGVmIHN0cnVjdCBfaTJvX2hydCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG51bV9lbnRyaWVzOwotIF9fdTggZW50cnlfbGVuOwotIF9fdTggaHJ0X3ZlcnNpb247Ci0gX191MzIgY2hhbmdlX2luZDsKKyAgX191MTYgbnVtX2VudHJpZXM7CisgIF9fdTggZW50cnlfbGVuOworICBfX3U4IGhydF92ZXJzaW9uOworICBfX3UzMiBjaGFuZ2VfaW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpMm9faHJ0X2VudHJ5IGhydF9lbnRyeVsxXTsKKyAgaTJvX2hydF9lbnRyeSBocnRfZW50cnlbMV07CiB9IGkyb19ocnQ7CiB0eXBlZGVmIHN0cnVjdCBfaTJvX2xjdF9lbnRyeSB7Ci0gX191MzIgZW50cnlfc2l6ZToxNjsKKyAgX191MzIgZW50cnlfc2l6ZSA6IDE2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aWQ6MTI7Ci0gX191MzIgcmVzZXJ2ZWQ6NDsKLSBfX3UzMiBjaGFuZ2VfaW5kOwotIF9fdTMyIGRldmljZV9mbGFnczsKKyAgX191MzIgdGlkIDogMTI7CisgIF9fdTMyIHJlc2VydmVkIDogNDsKKyAgX191MzIgY2hhbmdlX2luZDsKKyAgX191MzIgZGV2aWNlX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbGFzc19pZDoxMjsKLSBfX3UzMiB2ZXJzaW9uOjQ7Ci0gX191MzIgdmVuZG9yX2lkOjE2OwotIF9fdTMyIHN1Yl9jbGFzczsKKyAgX191MzIgY2xhc3NfaWQgOiAxMjsKKyAgX191MzIgdmVyc2lvbiA6IDQ7CisgIF9fdTMyIHZlbmRvcl9pZCA6IDE2OworICBfX3UzMiBzdWJfY2xhc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHVzZXJfdGlkOjEyOwotIF9fdTMyIHBhcmVudF90aWQ6MTI7Ci0gX191MzIgYmlvc19pbmZvOjg7Ci0gX191OCBpZGVudGl0eV90YWdbOF07CisgIF9fdTMyIHVzZXJfdGlkIDogMTI7CisgIF9fdTMyIHBhcmVudF90aWQgOiAxMjsKKyAgX191MzIgYmlvc19pbmZvIDogODsKKyAgX191OCBpZGVudGl0eV90YWdbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV2ZW50X2NhcGFiaWxpdGllczsKKyAgX191MzIgZXZlbnRfY2FwYWJpbGl0aWVzOwogfSBpMm9fbGN0X2VudHJ5OwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19sY3QgewotIF9fdTMyIHRhYmxlX3NpemU6MTY7CisgIF9fdTMyIHRhYmxlX3NpemUgOiAxNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYm9vdF90aWQ6MTI7Ci0gX191MzIgbGN0X3Zlcjo0OwotIF9fdTMyIGlvcF9mbGFnczsKLSBfX3UzMiBjaGFuZ2VfaW5kOworICBfX3UzMiBib290X3RpZCA6IDEyOworICBfX3UzMiBsY3RfdmVyIDogNDsKKyAgX191MzIgaW9wX2ZsYWdzOworICBfX3UzMiBjaGFuZ2VfaW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpMm9fbGN0X2VudHJ5IGxjdF9lbnRyeVsxXTsKKyAgaTJvX2xjdF9lbnRyeSBsY3RfZW50cnlbMV07CiB9IGkyb19sY3Q7CiB0eXBlZGVmIHN0cnVjdCBfaTJvX3N0YXR1c19ibG9jayB7Ci0gX191MTYgb3JnX2lkOworICBfX3UxNiBvcmdfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTE2IGlvcF9pZDoxMjsKLSBfX3UxNiByZXNlcnZlZDE6NDsKLSBfX3UxNiBob3N0X3VuaXRfaWQ7CisgIF9fdTE2IHJlc2VydmVkOworICBfX3UxNiBpb3BfaWQgOiAxMjsKKyAgX191MTYgcmVzZXJ2ZWQxIDogNDsKKyAgX191MTYgaG9zdF91bml0X2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzZWdtZW50X251bWJlcjoxMjsKLSBfX3UxNiBpMm9fdmVyc2lvbjo0OwotIF9fdTggaW9wX3N0YXRlOwotIF9fdTggbXNnX3R5cGU7CisgIF9fdTE2IHNlZ21lbnRfbnVtYmVyIDogMTI7CisgIF9fdTE2IGkyb192ZXJzaW9uIDogNDsKKyAgX191OCBpb3Bfc3RhdGU7CisgIF9fdTggbXNnX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGluYm91bmRfZnJhbWVfc2l6ZTsKLSBfX3U4IGluaXRfY29kZTsKLSBfX3U4IHJlc2VydmVkMjsKLSBfX3UzMiBtYXhfaW5ib3VuZF9mcmFtZXM7CisgIF9fdTE2IGluYm91bmRfZnJhbWVfc2l6ZTsKKyAgX191OCBpbml0X2NvZGU7CisgIF9fdTggcmVzZXJ2ZWQyOworICBfX3UzMiBtYXhfaW5ib3VuZF9mcmFtZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGN1cl9pbmJvdW5kX2ZyYW1lczsKLSBfX3UzMiBtYXhfb3V0Ym91bmRfZnJhbWVzOwotIGNoYXIgcHJvZHVjdF9pZFsyNF07Ci0gX191MzIgZXhwZWN0ZWRfbGN0X3NpemU7CisgIF9fdTMyIGN1cl9pbmJvdW5kX2ZyYW1lczsKKyAgX191MzIgbWF4X291dGJvdW5kX2ZyYW1lczsKKyAgY2hhciBwcm9kdWN0X2lkWzI0XTsKKyAgX191MzIgZXhwZWN0ZWRfbGN0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlvcF9jYXBhYmlsaXRpZXM7Ci0gX191MzIgZGVzaXJlZF9tZW1fc2l6ZTsKLSBfX3UzMiBjdXJyZW50X21lbV9zaXplOwotIF9fdTMyIGN1cnJlbnRfbWVtX2Jhc2U7CisgIF9fdTMyIGlvcF9jYXBhYmlsaXRpZXM7CisgIF9fdTMyIGRlc2lyZWRfbWVtX3NpemU7CisgIF9fdTMyIGN1cnJlbnRfbWVtX3NpemU7CisgIF9fdTMyIGN1cnJlbnRfbWVtX2Jhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRlc2lyZWRfaW9fc2l6ZTsKLSBfX3UzMiBjdXJyZW50X2lvX3NpemU7Ci0gX191MzIgY3VycmVudF9pb19iYXNlOwotIF9fdTMyIHJlc2VydmVkMzoyNDsKKyAgX191MzIgZGVzaXJlZF9pb19zaXplOworICBfX3UzMiBjdXJyZW50X2lvX3NpemU7CisgIF9fdTMyIGN1cnJlbnRfaW9fYmFzZTsKKyAgX191MzIgcmVzZXJ2ZWQzIDogMjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNtZF9zdGF0dXM6ODsKKyAgX191MzIgY21kX3N0YXR1cyA6IDg7CiB9IGkyb19zdGF0dXNfYmxvY2s7CiAjZGVmaW5lIEkyT19FVlRfSU5EX1NUQVRFX0NIQU5HRSAweDgwMDAwMDAwCiAjZGVmaW5lIEkyT19FVlRfSU5EX0dFTkVSQUxfV0FSTklORyAweDQwMDAwMDAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2k4ay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pOGsuaAppbmRleCBjYzVjMTZlLi5hZmM3MzI4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2k4ay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaThrLmgKQEAgLTIxLDEyICsyMSwxMiBAQAogI2RlZmluZSBJOEtfUFJPQyAiL3Byb2MvaThrIgogI2RlZmluZSBJOEtfUFJPQ19GTVQgIjEuMCIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk4S19CSU9TX1ZFUlNJT04gX0lPUiAoJ2knLCAweDgwLCBpbnQpCi0jZGVmaW5lIEk4S19NQUNISU5FX0lEIF9JT1IgKCdpJywgMHg4MSwgaW50KQotI2RlZmluZSBJOEtfUE9XRVJfU1RBVFVTIF9JT1IgKCdpJywgMHg4Miwgc2l6ZV90KQotI2RlZmluZSBJOEtfRk5fU1RBVFVTIF9JT1IgKCdpJywgMHg4Mywgc2l6ZV90KQorI2RlZmluZSBJOEtfQklPU19WRVJTSU9OIF9JT1IoJ2knLCAweDgwLCBpbnQpCisjZGVmaW5lIEk4S19NQUNISU5FX0lEIF9JT1IoJ2knLCAweDgxLCBpbnQpCisjZGVmaW5lIEk4S19QT1dFUl9TVEFUVVMgX0lPUignaScsIDB4ODIsIHNpemVfdCkKKyNkZWZpbmUgSThLX0ZOX1NUQVRVUyBfSU9SKCdpJywgMHg4Mywgc2l6ZV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSThLX0dFVF9URU1QIF9JT1IgKCdpJywgMHg4NCwgc2l6ZV90KQorI2RlZmluZSBJOEtfR0VUX1RFTVAgX0lPUignaScsIDB4ODQsIHNpemVfdCkKICNkZWZpbmUgSThLX0dFVF9TUEVFRCBfSU9XUignaScsIDB4ODUsIHNpemVfdCkKICNkZWZpbmUgSThLX0dFVF9GQU4gX0lPV1IoJ2knLCAweDg2LCBzaXplX3QpCiAjZGVmaW5lIEk4S19TRVRfRkFOIF9JT1dSKCdpJywgMHg4Nywgc2l6ZV90KQpAQCAtMzcsMTIgKzM3LDEzIEBACiAjZGVmaW5lIEk4S19GQU5fTE9XIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk4S19GQU5fSElHSCAyCi0jZGVmaW5lIEk4S19GQU5fTUFYIEk4S19GQU5fSElHSAorI2RlZmluZSBJOEtfRkFOX1RVUkJPIDMKKyNkZWZpbmUgSThLX0ZBTl9NQVggSThLX0ZBTl9UVVJCTwogI2RlZmluZSBJOEtfVk9MX1VQIDEKLSNkZWZpbmUgSThLX1ZPTF9ET1dOIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEk4S19WT0xfRE9XTiAyCiAjZGVmaW5lIEk4S19WT0xfTVVURSA0CiAjZGVmaW5lIEk4S19BQyAxCiAjZGVmaW5lIEk4S19CQVRURVJZIDAKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pY21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXAuaAppbmRleCAxY2Y5ZDdiLi4zNzcwMzU2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXAuaApAQCAtNjcsMjggKzY3LDI4IEBACiAjZGVmaW5lIElDTVBfRVhDX0ZSQUdUSU1FIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWNtcGhkciB7Ci0gX191OCB0eXBlOwotIF9fdTggY29kZTsKLSBfX3N1bTE2IGNoZWNrc3VtOworICBfX3U4IHR5cGU7CisgIF9fdTggY29kZTsKKyAgX19zdW0xNiBjaGVja3N1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB7Ci0gX19iZTE2IGlkOwotIF9fYmUxNiBzZXF1ZW5jZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX2JlMTYgaWQ7CisgICAgICBfX2JlMTYgc2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZWNobzsKLSBfX2JlMzIgZ2F0ZXdheTsKLSBzdHJ1Y3QgewotIF9fYmUxNiBfX2xpbnV4X3VudXNlZDsKKyAgICB9IGVjaG87CisgICAgX19iZTMyIGdhdGV3YXk7CisgICAgc3RydWN0IHsKKyAgICAgIF9fYmUxNiBfX2xpbnV4X3VudXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IG10dTsKLSB9IGZyYWc7Ci0gfSB1bjsKKyAgICAgIF9fYmUxNiBtdHU7CisgICAgfSBmcmFnOworICB9IHVuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElDTVBfRklMVEVSIDEKIHN0cnVjdCBpY21wX2ZpbHRlciB7Ci0gX191MzIgZGF0YTsKKyAgX191MzIgZGF0YTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXB2Ni5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pY21wdjYuaAppbmRleCA1NDJlY2E1Li4wNmM2NmZhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXB2Ni5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcHY2LmgKQEAgLTIyLDE0MyArMjIsMTI0IEBACiAjaW5jbHVkZSA8YXNtL2J5dGVvcmRlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpY21wNmhkciB7Ci0gX191OCBpY21wNl90eXBlOwotIF9fdTggaWNtcDZfY29kZTsKLSBfX3N1bTE2IGljbXA2X2Nrc3VtOworICBfX3U4IGljbXA2X3R5cGU7CisgIF9fdTggaWNtcDZfY29kZTsKKyAgX19zdW0xNiBpY21wNl9ja3N1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fYmUzMiB1bl9kYXRhMzJbMV07Ci0gX19iZTE2IHVuX2RhdGExNlsyXTsKLSBfX3U4IHVuX2RhdGE4WzRdOworICB1bmlvbiB7CisgICAgX19iZTMyIHVuX2RhdGEzMlsxXTsKKyAgICBfX2JlMTYgdW5fZGF0YTE2WzJdOworICAgIF9fdTggdW5fZGF0YThbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpY21wdjZfZWNobyB7Ci0gX19iZTE2IGlkZW50aWZpZXI7Ci0gX19iZTE2IHNlcXVlbmNlOwotIH0gdV9lY2hvOworICAgIHN0cnVjdCBpY21wdjZfZWNobyB7CisgICAgICBfX2JlMTYgaWRlbnRpZmllcjsKKyAgICAgIF9fYmUxNiBzZXF1ZW5jZTsKKyAgICB9IHVfZWNobzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGljbXB2Nl9uZF9hZHZ0IHsKKyAgICBzdHJ1Y3QgaWNtcHY2X25kX2FkdnQgewogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTMyIHJlc2VydmVkOjUsCi0gb3ZlcnJpZGU6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc29saWNpdGVkOjEsCi0gcm91dGVyOjEsCi0gcmVzZXJ2ZWQyOjI0OworICAgICAgX191MzIgcmVzZXJ2ZWQgOiA1LCBvdmVycmlkZSA6IDEsIHNvbGljaXRlZCA6IDEsIHJvdXRlciA6IDEsIHJlc2VydmVkMiA6IDI0OwogI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJvdXRlcjoxLAotIHNvbGljaXRlZDoxLAotIG92ZXJyaWRlOjEsCi0gcmVzZXJ2ZWQ6Mjk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgICAgX191MzIgcm91dGVyIDogMSwgc29saWNpdGVkIDogMSwgb3ZlcnJpZGUgOiAxLCByZXNlcnZlZCA6IDI5OwogI2Vsc2UKICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKICNlbmRpZgotIH0gdV9uZF9hZHZ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWNtcHY2X25kX3JhIHsKLSBfX3U4IGhvcF9saW1pdDsKKyAgICB9IHVfbmRfYWR2dDsKKyAgICBzdHJ1Y3QgaWNtcHY2X25kX3JhIHsKKyAgICAgIF9fdTggaG9wX2xpbWl0OwogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQ6MywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcm91dGVyX3ByZWY6MiwKLSBob21lX2FnZW50OjEsCi0gb3RoZXI6MSwKLSBtYW5hZ2VkOjE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgICAgX191OCByZXNlcnZlZCA6IDMsIHJvdXRlcl9wcmVmIDogMiwgaG9tZV9hZ2VudCA6IDEsIG90aGVyIDogMSwgbWFuYWdlZCA6IDE7CiAjZWxpZiBkZWZpbmVkKF9fQklHX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IG1hbmFnZWQ6MSwKLSBvdGhlcjoxLAotIGhvbWVfYWdlbnQ6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcm91dGVyX3ByZWY6MiwKLSByZXNlcnZlZDozOworICAgICAgX191OCBtYW5hZ2VkIDogMSwgb3RoZXIgOiAxLCBob21lX2FnZW50IDogMSwgcm91dGVyX3ByZWYgOiAyLCByZXNlcnZlZCA6IDM7CiAjZWxzZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX2JlMTYgcnRfbGlmZXRpbWU7Ci0gfSB1X25kX3JhOwotIH0gaWNtcDZfZGF0YXVuOworICAgICAgX19iZTE2IHJ0X2xpZmV0aW1lOworICAgIH0gdV9uZF9yYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH0gaWNtcDZfZGF0YXVuOwogI2RlZmluZSBpY21wNl9pZGVudGlmaWVyIGljbXA2X2RhdGF1bi51X2VjaG8uaWRlbnRpZmllcgogI2RlZmluZSBpY21wNl9zZXF1ZW5jZSBpY21wNl9kYXRhdW4udV9lY2hvLnNlcXVlbmNlCiAjZGVmaW5lIGljbXA2X3BvaW50ZXIgaWNtcDZfZGF0YXVuLnVuX2RhdGEzMlswXQotI2RlZmluZSBpY21wNl9tdHUgaWNtcDZfZGF0YXVuLnVuX2RhdGEzMlswXQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgaWNtcDZfbXR1IGljbXA2X2RhdGF1bi51bl9kYXRhMzJbMF0KICNkZWZpbmUgaWNtcDZfdW51c2VkIGljbXA2X2RhdGF1bi51bl9kYXRhMzJbMF0KICNkZWZpbmUgaWNtcDZfbWF4ZGVsYXkgaWNtcDZfZGF0YXVuLnVuX2RhdGExNlswXQogI2RlZmluZSBpY21wNl9yb3V0ZXIgaWNtcDZfZGF0YXVuLnVfbmRfYWR2dC5yb3V0ZXIKLSNkZWZpbmUgaWNtcDZfc29saWNpdGVkIGljbXA2X2RhdGF1bi51X25kX2FkdnQuc29saWNpdGVkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBpY21wNl9zb2xpY2l0ZWQgaWNtcDZfZGF0YXVuLnVfbmRfYWR2dC5zb2xpY2l0ZWQKICNkZWZpbmUgaWNtcDZfb3ZlcnJpZGUgaWNtcDZfZGF0YXVuLnVfbmRfYWR2dC5vdmVycmlkZQogI2RlZmluZSBpY21wNl9uZGlzY3Jlc2VydmVkIGljbXA2X2RhdGF1bi51X25kX2FkdnQucmVzZXJ2ZWQKICNkZWZpbmUgaWNtcDZfaG9wX2xpbWl0IGljbXA2X2RhdGF1bi51X25kX3JhLmhvcF9saW1pdAotI2RlZmluZSBpY21wNl9hZGRyY29uZl9tYW5hZ2VkIGljbXA2X2RhdGF1bi51X25kX3JhLm1hbmFnZWQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIGljbXA2X2FkZHJjb25mX21hbmFnZWQgaWNtcDZfZGF0YXVuLnVfbmRfcmEubWFuYWdlZAogI2RlZmluZSBpY21wNl9hZGRyY29uZl9vdGhlciBpY21wNl9kYXRhdW4udV9uZF9yYS5vdGhlcgogI2RlZmluZSBpY21wNl9ydF9saWZldGltZSBpY21wNl9kYXRhdW4udV9uZF9yYS5ydF9saWZldGltZQogI2RlZmluZSBpY21wNl9yb3V0ZXJfcHJlZiBpY21wNl9kYXRhdW4udV9uZF9yYS5yb3V0ZXJfcHJlZgotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2RlZmluZSBJQ01QVjZfUk9VVEVSX1BSRUZfTE9XIDB4MwogI2RlZmluZSBJQ01QVjZfUk9VVEVSX1BSRUZfTUVESVVNIDB4MAogI2RlZmluZSBJQ01QVjZfUk9VVEVSX1BSRUZfSElHSCAweDEKLSNkZWZpbmUgSUNNUFY2X1JPVVRFUl9QUkVGX0lOVkFMSUQgMHgyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfUk9VVEVSX1BSRUZfSU5WQUxJRCAweDIKICNkZWZpbmUgSUNNUFY2X0RFU1RfVU5SRUFDSCAxCiAjZGVmaW5lIElDTVBWNl9QS1RfVE9PQklHIDIKICNkZWZpbmUgSUNNUFY2X1RJTUVfRVhDRUVEIDMKLSNkZWZpbmUgSUNNUFY2X1BBUkFNUFJPQiA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfUEFSQU1QUk9CIDQKICNkZWZpbmUgSUNNUFY2X0lORk9NU0dfTUFTSyAweDgwCiAjZGVmaW5lIElDTVBWNl9FQ0hPX1JFUVVFU1QgMTI4CiAjZGVmaW5lIElDTVBWNl9FQ0hPX1JFUExZIDEyOQotI2RlZmluZSBJQ01QVjZfTUdNX1FVRVJZIDEzMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSUNNUFY2X01HTV9RVUVSWSAxMzAKICNkZWZpbmUgSUNNUFY2X01HTV9SRVBPUlQgMTMxCiAjZGVmaW5lIElDTVBWNl9NR01fUkVEVUNUSU9OIDEzMgogI2RlZmluZSBJQ01QVjZfTklfUVVFUlkgMTM5Ci0jZGVmaW5lIElDTVBWNl9OSV9SRVBMWSAxNDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9OSV9SRVBMWSAxNDAKICNkZWZpbmUgSUNNUFY2X01MRDJfUkVQT1JUIDE0MwogI2RlZmluZSBJQ01QVjZfREhBQURfUkVRVUVTVCAxNDQKICNkZWZpbmUgSUNNUFY2X0RIQUFEX1JFUExZIDE0NQotI2RlZmluZSBJQ01QVjZfTU9CSUxFX1BSRUZJWF9TT0wgMTQ2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfTU9CSUxFX1BSRUZJWF9TT0wgMTQ2CiAjZGVmaW5lIElDTVBWNl9NT0JJTEVfUFJFRklYX0FEViAxNDcKICNkZWZpbmUgSUNNUFY2X05PUk9VVEUgMAogI2RlZmluZSBJQ01QVjZfQURNX1BST0hJQklURUQgMQotI2RlZmluZSBJQ01QVjZfTk9UX05FSUdIQk9VUiAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfTk9UX05FSUdIQk9VUiAyCiAjZGVmaW5lIElDTVBWNl9BRERSX1VOUkVBQ0ggMwogI2RlZmluZSBJQ01QVjZfUE9SVF9VTlJFQUNIIDQKICNkZWZpbmUgSUNNUFY2X1BPTElDWV9GQUlMIDUKLSNkZWZpbmUgSUNNUFY2X1JFSkVDVF9ST1VURSA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfUkVKRUNUX1JPVVRFIDYKICNkZWZpbmUgSUNNUFY2X0VYQ19IT1BMSU1JVCAwCiAjZGVmaW5lIElDTVBWNl9FWENfRlJBR1RJTUUgMQogI2RlZmluZSBJQ01QVjZfSERSX0ZJRUxEIDAKLSNkZWZpbmUgSUNNUFY2X1VOS19ORVhUSERSIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9VTktfTkVYVEhEUiAxCiAjZGVmaW5lIElDTVBWNl9VTktfT1BUSU9OIDIKICNkZWZpbmUgSUNNUFY2X0ZJTFRFUiAxCiAjZGVmaW5lIElDTVBWNl9GSUxURVJfQkxPQ0sgMQotI2RlZmluZSBJQ01QVjZfRklMVEVSX1BBU1MgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSUNNUFY2X0ZJTFRFUl9QQVNTIDIKICNkZWZpbmUgSUNNUFY2X0ZJTFRFUl9CTE9DS09USEVSUyAzCiAjZGVmaW5lIElDTVBWNl9GSUxURVJfUEFTU09OTFkgNAogc3RydWN0IGljbXA2X2ZpbHRlciB7Ci0gX191MzIgZGF0YVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGRhdGFbOF07CiB9OwogI2RlZmluZSBNTEQyX01PREVfSVNfSU5DTFVERSAxCiAjZGVmaW5lIE1MRDJfTU9ERV9JU19FWENMVURFIDIKLSNkZWZpbmUgTUxEMl9DSEFOR0VfVE9fSU5DTFVERSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNTEQyX0NIQU5HRV9UT19JTkNMVURFIDMKICNkZWZpbmUgTUxEMl9DSEFOR0VfVE9fRVhDTFVERSA0CiAjZGVmaW5lIE1MRDJfQUxMT1dfTkVXX1NPVVJDRVMgNQogI2RlZmluZSBNTEQyX0JMT0NLX09MRF9TT1VSQ0VTIDYKLSNkZWZpbmUgTUxEMl9BTExfTUNSX0lOSVQgeyB7IHsgMHhmZiwweDAyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMHgxNiB9IH0gfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUxEMl9BTExfTUNSX0lOSVQgeyB7IHsgMHhmZiwgMHgwMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMHgxNiB9IH0gfQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmLmgKaW5kZXggNGVjYTg0ZC4uZjdiNGUyMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWYuaApAQCAtMjYsMTg2ICsyNiwxODQgQEAKICNkZWZpbmUgSUZBTElBU1ogMjU2CiAjaW5jbHVkZSA8bGludXgvaGRsYy9pb2N0bC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX1VQIDB4MQotI2RlZmluZSBJRkZfQlJPQURDQVNUIDB4MgotI2RlZmluZSBJRkZfREVCVUcgMHg0Ci0jZGVmaW5lIElGRl9MT09QQkFDSyAweDgKK2VudW0gbmV0X2RldmljZV9mbGFncyB7CisgIElGRl9VUCA9IDEgPDwgMCwKKyAgSUZGX0JST0FEQ0FTVCA9IDEgPDwgMSwKKyAgSUZGX0RFQlVHID0gMSA8PCAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX1BPSU5UT1BPSU5UIDB4MTAKLSNkZWZpbmUgSUZGX05PVFJBSUxFUlMgMHgyMAotI2RlZmluZSBJRkZfUlVOTklORyAweDQwCi0jZGVmaW5lIElGRl9OT0FSUCAweDgwCisgIElGRl9MT09QQkFDSyA9IDEgPDwgMywKKyAgSUZGX1BPSU5UT1BPSU5UID0gMSA8PCA0LAorICBJRkZfTk9UUkFJTEVSUyA9IDEgPDwgNSwKKyAgSUZGX1JVTk5JTkcgPSAxIDw8IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfUFJPTUlTQyAweDEwMAotI2RlZmluZSBJRkZfQUxMTVVMVEkgMHgyMDAKLSNkZWZpbmUgSUZGX01BU1RFUiAweDQwMAotI2RlZmluZSBJRkZfU0xBVkUgMHg4MDAKKyAgSUZGX05PQVJQID0gMSA8PCA3LAorICBJRkZfUFJPTUlTQyA9IDEgPDwgOCwKKyAgSUZGX0FMTE1VTFRJID0gMSA8PCA5LAorICBJRkZfTUFTVEVSID0gMSA8PCAxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGRl9NVUxUSUNBU1QgMHgxMDAwCi0jZGVmaW5lIElGRl9QT1JUU0VMIDB4MjAwMAotI2RlZmluZSBJRkZfQVVUT01FRElBIDB4NDAwMAotI2RlZmluZSBJRkZfRFlOQU1JQyAweDgwMDAKKyAgSUZGX1NMQVZFID0gMSA8PCAxMSwKKyAgSUZGX01VTFRJQ0FTVCA9IDEgPDwgMTIsCisgIElGRl9QT1JUU0VMID0gMSA8PCAxMywKKyAgSUZGX0FVVE9NRURJQSA9IDEgPDwgMTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfTE9XRVJfVVAgMHgxMDAwMAotI2RlZmluZSBJRkZfRE9STUFOVCAweDIwMDAwCi0jZGVmaW5lIElGRl9FQ0hPIDB4NDAwMDAKLSNkZWZpbmUgSUZGX1ZPTEFUSUxFIChJRkZfTE9PUEJBQ0t8SUZGX1BPSU5UT1BPSU5UfElGRl9CUk9BRENBU1R8SUZGX0VDSE98ICBJRkZfTUFTVEVSfElGRl9TTEFWRXxJRkZfUlVOTklOR3xJRkZfTE9XRVJfVVB8SUZGX0RPUk1BTlQpCisgIElGRl9EWU5BTUlDID0gMSA8PCAxNSwKKyAgSUZGX0xPV0VSX1VQID0gMSA8PCAxNiwKKyAgSUZGX0RPUk1BTlQgPSAxIDw8IDE3LAorICBJRkZfRUNITyA9IDEgPDwgMTgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfODAyXzFRX1ZMQU4gMHgxCi0jZGVmaW5lIElGRl9FQlJJREdFIDB4MgotI2RlZmluZSBJRkZfU0xBVkVfSU5BQ1RJVkUgMHg0Ci0jZGVmaW5lIElGRl9NQVNURVJfODAyM0FEIDB4OAorfTsKKyNkZWZpbmUgSUZGX1VQIElGRl9VUAorI2RlZmluZSBJRkZfQlJPQURDQVNUIElGRl9CUk9BRENBU1QKKyNkZWZpbmUgSUZGX0RFQlVHIElGRl9ERUJVRwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX01BU1RFUl9BTEIgMHgxMAotI2RlZmluZSBJRkZfQk9ORElORyAweDIwCi0jZGVmaW5lIElGRl9TTEFWRV9ORUVEQVJQIDB4NDAKLSNkZWZpbmUgSUZGX0lTQVRBUCAweDgwCisjZGVmaW5lIElGRl9MT09QQkFDSyBJRkZfTE9PUEJBQ0sKKyNkZWZpbmUgSUZGX1BPSU5UT1BPSU5UIElGRl9QT0lOVE9QT0lOVAorI2RlZmluZSBJRkZfTk9UUkFJTEVSUyBJRkZfTk9UUkFJTEVSUworI2RlZmluZSBJRkZfUlVOTklORyBJRkZfUlVOTklORwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX01BU1RFUl9BUlBNT04gMHgxMDAKLSNkZWZpbmUgSUZGX1dBTl9IRExDIDB4MjAwCi0jZGVmaW5lIElGRl9YTUlUX0RTVF9SRUxFQVNFIDB4NDAwCi0jZGVmaW5lIElGRl9ET05UX0JSSURHRSAweDgwMAorI2RlZmluZSBJRkZfTk9BUlAgSUZGX05PQVJQCisjZGVmaW5lIElGRl9QUk9NSVNDIElGRl9QUk9NSVNDCisjZGVmaW5lIElGRl9BTExNVUxUSSBJRkZfQUxMTVVMVEkKKyNkZWZpbmUgSUZGX01BU1RFUiBJRkZfTUFTVEVSCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfRElTQUJMRV9ORVRQT0xMIDB4MTAwMAotI2RlZmluZSBJRkZfTUFDVkxBTl9QT1JUIDB4MjAwMAotI2RlZmluZSBJRkZfQlJJREdFX1BPUlQgMHg0MDAwCi0jZGVmaW5lIElGRl9PVlNfREFUQVBBVEggMHg4MDAwCisjZGVmaW5lIElGRl9TTEFWRSBJRkZfU0xBVkUKKyNkZWZpbmUgSUZGX01VTFRJQ0FTVCBJRkZfTVVMVElDQVNUCisjZGVmaW5lIElGRl9QT1JUU0VMIElGRl9QT1JUU0VMCisjZGVmaW5lIElGRl9BVVRPTUVESUEgSUZGX0FVVE9NRURJQQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX1RYX1NLQl9TSEFSSU5HIDB4MTAwMDAKLSNkZWZpbmUgSUZGX1VOSUNBU1RfRkxUIDB4MjAwMDAKLSNkZWZpbmUgSUZGX1RFQU1fUE9SVCAweDQwMDAwCi0jZGVmaW5lIElGRl9TVVBQX05PRkNTIDB4ODAwMDAKKyNkZWZpbmUgSUZGX0RZTkFNSUMgSUZGX0RZTkFNSUMKKyNkZWZpbmUgSUZGX0xPV0VSX1VQIElGRl9MT1dFUl9VUAorI2RlZmluZSBJRkZfRE9STUFOVCBJRkZfRE9STUFOVAorI2RlZmluZSBJRkZfRUNITyBJRkZfRUNITwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX0xJVkVfQUREUl9DSEFOR0UgMHgxMDAwMDAKLSNkZWZpbmUgSUZGX01BQ1ZMQU4gMHgyMDAwMDAKKyNkZWZpbmUgSUZGX1ZPTEFUSUxFIChJRkZfTE9PUEJBQ0sgfCBJRkZfUE9JTlRPUE9JTlQgfCBJRkZfQlJPQURDQVNUIHwgSUZGX0VDSE8gfCBJRkZfTUFTVEVSIHwgSUZGX1NMQVZFIHwgSUZGX1JVTk5JTkcgfCBJRkZfTE9XRVJfVVAgfCBJRkZfRE9STUFOVCkKICNkZWZpbmUgSUZfR0VUX0lGQUNFIDB4MDAwMQogI2RlZmluZSBJRl9HRVRfUFJPVE8gMHgwMDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9JRkFDRV9WMzUgMHgxMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9JRkFDRV9WMjQgMHgxMDAxCiAjZGVmaW5lIElGX0lGQUNFX1gyMSAweDEwMDIKICNkZWZpbmUgSUZfSUZBQ0VfVDEgMHgxMDAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9JRkFDRV9FMSAweDEwMDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX0lGQUNFX1NZTkNfU0VSSUFMIDB4MTAwNQogI2RlZmluZSBJRl9JRkFDRV9YMjFEIDB4MTAwNgogI2RlZmluZSBJRl9QUk9UT19IRExDIDB4MjAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfUFJPVE9fUFBQIDB4MjAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfUFJPVE9fQ0lTQ08gMHgyMDAyCiAjZGVmaW5lIElGX1BST1RPX0ZSIDB4MjAwMwogI2RlZmluZSBJRl9QUk9UT19GUl9BRERfUFZDIDB4MjAwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfUFJPVE9fRlJfREVMX1BWQyAweDIwMDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX1BST1RPX1gyNSAweDIwMDYKICNkZWZpbmUgSUZfUFJPVE9fSERMQ19FVEggMHgyMDA3CiAjZGVmaW5lIElGX1BST1RPX0ZSX0FERF9FVEhfUFZDIDB4MjAwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfUFJPVE9fRlJfREVMX0VUSF9QVkMgMHgyMDA5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9QUk9UT19GUl9QVkMgMHgyMDBBCiAjZGVmaW5lIElGX1BST1RPX0ZSX0VUSF9QVkMgMHgyMDBCCiAjZGVmaW5lIElGX1BST1RPX1JBVyAweDIwMEMKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZfT1BFUl9VTktOT1dOLAorICBJRl9PUEVSX05PVFBSRVNFTlQsCisgIElGX09QRVJfRE9XTiwKKyAgSUZfT1BFUl9MT1dFUkxBWUVSRE9XTiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElGX09QRVJfVEVTVElORywKKyAgSUZfT1BFUl9ET1JNQU5ULAorICBJRl9PUEVSX1VQLAorfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJRl9PUEVSX1VOS05PV04sCi0gSUZfT1BFUl9OT1RQUkVTRU5ULAotIElGX09QRVJfRE9XTiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZfT1BFUl9MT1dFUkxBWUVSRE9XTiwKLSBJRl9PUEVSX1RFU1RJTkcsCi0gSUZfT1BFUl9ET1JNQU5ULAotIElGX09QRVJfVVAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRl9MSU5LX01PREVfREVGQVVMVCwKKyAgSUZfTElOS19NT0RFX0RPUk1BTlQsCiB9OwotZW51bSB7Ci0gSUZfTElOS19NT0RFX0RFRkFVTFQsCi0gSUZfTElOS19NT0RFX0RPUk1BTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKIHN0cnVjdCBpZm1hcCB7Ci0gdW5zaWduZWQgbG9uZyBtZW1fc3RhcnQ7Ci0gdW5zaWduZWQgbG9uZyBtZW1fZW5kOworICB1bnNpZ25lZCBsb25nIG1lbV9zdGFydDsKKyAgdW5zaWduZWQgbG9uZyBtZW1fZW5kOworICB1bnNpZ25lZCBzaG9ydCBiYXNlX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGJhc2VfYWRkcjsKLSB1bnNpZ25lZCBjaGFyIGlycTsKLSB1bnNpZ25lZCBjaGFyIGRtYTsKLSB1bnNpZ25lZCBjaGFyIHBvcnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIGlycTsKKyAgdW5zaWduZWQgY2hhciBkbWE7CisgIHVuc2lnbmVkIGNoYXIgcG9ydDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlmX3NldHRpbmdzIHsKLSB1bnNpZ25lZCBpbnQgdHlwZTsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IHR5cGU7CisgIHVuc2lnbmVkIGludCBzaXplOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSByYXdfaGRsY19wcm90byBfX3VzZXIgKnJhd19oZGxjOwotIGNpc2NvX3Byb3RvIF9fdXNlciAqY2lzY287Ci0gZnJfcHJvdG8gX191c2VyICpmcjsKKyAgICByYXdfaGRsY19wcm90byBfX3VzZXIgKiByYXdfaGRsYzsKKyAgICBjaXNjb19wcm90byBfX3VzZXIgKiBjaXNjbzsKKyAgICBmcl9wcm90byBfX3VzZXIgKiBmcjsKKyAgICBmcl9wcm90b19wdmMgX191c2VyICogZnJfcHZjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmcl9wcm90b19wdmMgX191c2VyICpmcl9wdmM7Ci0gZnJfcHJvdG9fcHZjX2luZm8gX191c2VyICpmcl9wdmNfaW5mbzsKLSBzeW5jX3NlcmlhbF9zZXR0aW5ncyBfX3VzZXIgKnN5bmM7Ci0gdGUxX3NldHRpbmdzIF9fdXNlciAqdGUxOworICAgIGZyX3Byb3RvX3B2Y19pbmZvIF9fdXNlciAqIGZyX3B2Y19pbmZvOworICAgIHN5bmNfc2VyaWFsX3NldHRpbmdzIF9fdXNlciAqIHN5bmM7CisgICAgdGUxX3NldHRpbmdzIF9fdXNlciAqIHRlMTsKKyAgfSBpZnNfaWZzdTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBpZnNfaWZzdTsKIH07CiBzdHJ1Y3QgaWZyZXEgewogI2RlZmluZSBJRkhXQUREUkxFTiA2CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24KLSB7Ci0gY2hhciBpZnJuX25hbWVbSUZOQU1TSVpdOwotIH0gaWZyX2lmcm47CisgICAgY2hhciBpZnJuX25hbWVbSUZOQU1TSVpdOworICB9IGlmcl9pZnJuOworICB1bmlvbiB7CisgICAgc3RydWN0IHNvY2thZGRyIGlmcnVfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBzb2NrYWRkciBpZnJ1X2FkZHI7Ci0gc3RydWN0IHNvY2thZGRyIGlmcnVfZHN0YWRkcjsKLSBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9icm9hZGFkZHI7CisgICAgc3RydWN0IHNvY2thZGRyIGlmcnVfZHN0YWRkcjsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9icm9hZGFkZHI7CisgICAgc3RydWN0IHNvY2thZGRyIGlmcnVfbmV0bWFzazsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9od2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkciBpZnJ1X25ldG1hc2s7Ci0gc3RydWN0IHNvY2thZGRyIGlmcnVfaHdhZGRyOwotIHNob3J0IGlmcnVfZmxhZ3M7Ci0gaW50IGlmcnVfaXZhbHVlOworICAgIHNob3J0IGlmcnVfZmxhZ3M7CisgICAgaW50IGlmcnVfaXZhbHVlOworICAgIGludCBpZnJ1X210dTsKKyAgICBzdHJ1Y3QgaWZtYXAgaWZydV9tYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpZnJ1X210dTsKLSBzdHJ1Y3QgaWZtYXAgaWZydV9tYXA7Ci0gY2hhciBpZnJ1X3NsYXZlW0lGTkFNU0laXTsKLSBjaGFyIGlmcnVfbmV3bmFtZVtJRk5BTVNJWl07CisgICAgY2hhciBpZnJ1X3NsYXZlW0lGTkFNU0laXTsKKyAgICBjaGFyIGlmcnVfbmV3bmFtZVtJRk5BTVNJWl07CisgICAgdm9pZCBfX3VzZXIgKiBpZnJ1X2RhdGE7CisgICAgc3RydWN0IGlmX3NldHRpbmdzIGlmcnVfc2V0dGluZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICogaWZydV9kYXRhOwotIHN0cnVjdCBpZl9zZXR0aW5ncyBpZnJ1X3NldHRpbmdzOwotIH0gaWZyX2lmcnU7CisgIH0gaWZyX2lmcnU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX25hbWUgaWZyX2lmcm4uaWZybl9uYW1lCiAjZGVmaW5lIGlmcl9od2FkZHIgaWZyX2lmcnUuaWZydV9od2FkZHIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9hZGRyIGlmcl9pZnJ1LmlmcnVfYWRkcgogI2RlZmluZSBpZnJfZHN0YWRkciBpZnJfaWZydS5pZnJ1X2RzdGFkZHIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9icm9hZGFkZHIgaWZyX2lmcnUuaWZydV9icm9hZGFkZHIKICNkZWZpbmUgaWZyX25ldG1hc2sgaWZyX2lmcnUuaWZydV9uZXRtYXNrCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfZmxhZ3MgaWZyX2lmcnUuaWZydV9mbGFncwogI2RlZmluZSBpZnJfbWV0cmljIGlmcl9pZnJ1LmlmcnVfaXZhbHVlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfbXR1IGlmcl9pZnJ1LmlmcnVfbXR1CiAjZGVmaW5lIGlmcl9tYXAgaWZyX2lmcnUuaWZydV9tYXAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9zbGF2ZSBpZnJfaWZydS5pZnJ1X3NsYXZlCiAjZGVmaW5lIGlmcl9kYXRhIGlmcl9pZnJ1LmlmcnVfZGF0YQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX2lmaW5kZXggaWZyX2lmcnUuaWZydV9pdmFsdWUKICNkZWZpbmUgaWZyX2JhbmR3aWR0aCBpZnJfaWZydS5pZnJ1X2l2YWx1ZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX3FsZW4gaWZyX2lmcnUuaWZydV9pdmFsdWUKICNkZWZpbmUgaWZyX25ld25hbWUgaWZyX2lmcnUuaWZydV9uZXduYW1lCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfc2V0dGluZ3MgaWZyX2lmcnUuaWZydV9zZXR0aW5ncwogc3RydWN0IGlmY29uZiB7Ci0gaW50IGlmY19sZW47Ci0gdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIF9fdXNlciAqaWZjdV9idWY7Ci0gc3RydWN0IGlmcmVxIF9fdXNlciAqaWZjdV9yZXE7Ci0gfSBpZmNfaWZjdTsKKyAgaW50IGlmY19sZW47CisgIHVuaW9uIHsKKyAgICBjaGFyIF9fdXNlciAqIGlmY3VfYnVmOworICAgIHN0cnVjdCBpZnJlcSBfX3VzZXIgKiBpZmN1X3JlcTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH0gaWZjX2lmY3U7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZjX2J1ZiBpZmNfaWZjdS5pZmN1X2J1ZgogI2RlZmluZSBpZmNfcmVxIGlmY19pZmN1LmlmY3VfcmVxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FkZHIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkci5oCmluZGV4IGUwOGExNzYuLjVkOGQ2NjcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkci5oCkBAIC0yMiwyNyArMjIsMjcgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRsaW5rLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlmYWRkcm1zZyB7Ci0gX191OCBpZmFfZmFtaWx5OwotIF9fdTggaWZhX3ByZWZpeGxlbjsKLSBfX3U4IGlmYV9mbGFnczsKKyAgX191OCBpZmFfZmFtaWx5OworICBfX3U4IGlmYV9wcmVmaXhsZW47CisgIF9fdTggaWZhX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlmYV9zY29wZTsKLSBfX3UzMiBpZmFfaW5kZXg7CisgIF9fdTggaWZhX3Njb3BlOworICBfX3UzMiBpZmFfaW5kZXg7CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGQV9VTlNQRUMsCi0gSUZBX0FERFJFU1MsCi0gSUZBX0xPQ0FMLAotIElGQV9MQUJFTCwKKyAgSUZBX1VOU1BFQywKKyAgSUZBX0FERFJFU1MsCisgIElGQV9MT0NBTCwKKyAgSUZBX0xBQkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkFfQlJPQURDQVNULAotIElGQV9BTllDQVNULAotIElGQV9DQUNIRUlORk8sCi0gSUZBX01VTFRJQ0FTVCwKKyAgSUZBX0JST0FEQ0FTVCwKKyAgSUZBX0FOWUNBU1QsCisgIElGQV9DQUNIRUlORk8sCisgIElGQV9NVUxUSUNBU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGQV9GTEFHUywKLSBfX0lGQV9NQVgsCisgIElGQV9GTEFHUywKKyAgX19JRkFfTUFYLAogfTsKICNkZWZpbmUgSUZBX01BWCAoX19JRkFfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC02MSwxMyArNjEsMTMgQEAKICNkZWZpbmUgSUZBX0ZfTk9QUkVGSVhST1VURSAweDIwMAogc3RydWN0IGlmYV9jYWNoZWluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZmFfcHJlZmVyZWQ7Ci0gX191MzIgaWZhX3ZhbGlkOwotIF9fdTMyIGNzdGFtcDsKLSBfX3UzMiB0c3RhbXA7CisgIF9fdTMyIGlmYV9wcmVmZXJlZDsKKyAgX191MzIgaWZhX3ZhbGlkOworICBfX3UzMiBjc3RhbXA7CisgIF9fdTMyIHRzdGFtcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJRkFfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciopKCgoY2hhciopKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgaWZhZGRybXNnKSkpKQotI2RlZmluZSBJRkFfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sc2l6ZW9mKHN0cnVjdCBpZmFkZHJtc2cpKQorI2RlZmluZSBJRkFfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciAqKSAoKChjaGFyICopIChyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IGlmYWRkcm1zZykpKSkKKyNkZWZpbmUgSUZBX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLCBzaXplb2Yoc3RydWN0IGlmYWRkcm1zZykpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FkZHJsYWJlbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hZGRybGFiZWwuaAppbmRleCAzODQwYTEyLi4yNjZhYWRlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FkZHJsYWJlbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkcmxhYmVsLmgKQEAgLTIxLDE5ICsyMSwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaWZhZGRybGJsbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpZmFsX2ZhbWlseTsKLSBfX3U4IF9faWZhbF9yZXNlcnZlZDsKLSBfX3U4IGlmYWxfcHJlZml4bGVuOwotIF9fdTggaWZhbF9mbGFnczsKKyAgX191OCBpZmFsX2ZhbWlseTsKKyAgX191OCBfX2lmYWxfcmVzZXJ2ZWQ7CisgIF9fdTggaWZhbF9wcmVmaXhsZW47CisgIF9fdTggaWZhbF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWZhbF9pbmRleDsKLSBfX3UzMiBpZmFsX3NlcTsKKyAgX191MzIgaWZhbF9pbmRleDsKKyAgX191MzIgaWZhbF9zZXE7CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGQUxfQUREUkVTUyA9IDEsCi0gSUZBTF9MQUJFTCA9IDIsCi0gX19JRkFMX01BWAorICBJRkFMX0FERFJFU1MgPSAxLAorICBJRkFMX0xBQkVMID0gMiwKKyAgX19JRkFMX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGQUxfTUFYIChfX0lGQUxfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWxnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FsZy5oCmluZGV4IDM1ZjE2MWMuLmVhYmQ4ODQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWxnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hbGcuaApAQCAtMjEsMTcgKzIxLDE3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBzb2NrYWRkcl9hbGcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWxnX2ZhbWlseTsKLSBfX3U4IHNhbGdfdHlwZVsxNF07Ci0gX191MzIgc2FsZ19mZWF0OwotIF9fdTMyIHNhbGdfbWFzazsKKyAgX191MTYgc2FsZ19mYW1pbHk7CisgIF9fdTggc2FsZ190eXBlWzE0XTsKKyAgX191MzIgc2FsZ19mZWF0OworICBfX3UzMiBzYWxnX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FsZ19uYW1lWzY0XTsKKyAgX191OCBzYWxnX25hbWVbNjRdOwogfTsKIHN0cnVjdCBhZl9hbGdfaXYgewotIF9fdTMyIGl2bGVuOworICBfX3UzMiBpdmxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpdlswXTsKKyAgX191OCBpdlswXTsKIH07CiAjZGVmaW5lIEFMR19TRVRfS0VZIDEKICNkZWZpbmUgQUxHX1NFVF9JViAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FyY25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hcmNuZXQuaAppbmRleCAyN2MxNWVhLi5kMDEwYzdlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FyY25ldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYXJjbmV0LmgKQEAgLTQyLDU1ICs0Miw1MyBAQAogI2RlZmluZSBBUkNORVRfQUxFTiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFyY19yZmMxMjAxIHsKLSBfX3U4IHByb3RvOwotIF9fdTggc3BsaXRfZmxhZzsKLSBfX2JlMTYgc2VxdWVuY2U7CisgIF9fdTggcHJvdG87CisgIF9fdTggc3BsaXRfZmxhZzsKKyAgX19iZTE2IHNlcXVlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBheWxvYWRbMF07CisgIF9fdTggcGF5bG9hZFswXTsKIH07CiAjZGVmaW5lIFJGQzEyMDFfSERSX1NJWkUgNAogc3RydWN0IGFyY19yZmMxMDUxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcm90bzsKLSBfX3U4IHBheWxvYWRbMF07CisgIF9fdTggcHJvdG87CisgIF9fdTggcGF5bG9hZFswXTsKIH07CiAjZGVmaW5lIFJGQzEwNTFfSERSX1NJWkUgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhcmNfZXRoX2VuY2FwIHsKLSBfX3U4IHByb3RvOwotIHN0cnVjdCBldGhoZHIgZXRoOwotIF9fdTggcGF5bG9hZFswXTsKKyAgX191OCBwcm90bzsKKyAgc3RydWN0IGV0aGhkciBldGg7CisgIF9fdTggcGF5bG9hZFswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBFVEhfRU5DQVBfSERSX1NJWkUgMTQKIHN0cnVjdCBhcmNfY2FwIHsKLSBfX3U4IHByb3RvOworICBfX3U4IHByb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvb2tpZVtzaXplb2YoaW50KV07Ci0gdW5pb24gewotIF9fdTggYWNrOwotIF9fdTggcmF3WzBdOworICBfX3U4IGNvb2tpZVtzaXplb2YoaW50KV07CisgIHVuaW9uIHsKKyAgICBfX3U4IGFjazsKKyAgICBfX3U4IHJhd1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBtZXM7CisgIH0gbWVzOwogfTsKIHN0cnVjdCBhcmNfaGFyZHdhcmUgewotIF9fdTggc291cmNlLAorICBfX3U4IHNvdXJjZSwgZGVzdCwgb2Zmc2V0WzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkZXN0LAotIG9mZnNldFsyXTsKIH07CiAjZGVmaW5lIEFSQ19IRFJfU0laRSA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFyY2hkciB7Ci0gc3RydWN0IGFyY19oYXJkd2FyZSBoYXJkOwotIHVuaW9uIHsKLSBzdHJ1Y3QgYXJjX3JmYzEyMDEgcmZjMTIwMTsKKyAgc3RydWN0IGFyY19oYXJkd2FyZSBoYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXJjX3JmYzEwNTEgcmZjMTA1MTsKLSBzdHJ1Y3QgYXJjX2V0aF9lbmNhcCBldGhfZW5jYXA7Ci0gc3RydWN0IGFyY19jYXAgY2FwOwotIF9fdTggcmF3WzBdOworICB1bmlvbiB7CisgICAgc3RydWN0IGFyY19yZmMxMjAxIHJmYzEyMDE7CisgICAgc3RydWN0IGFyY19yZmMxMDUxIHJmYzEwNTE7CisgICAgc3RydWN0IGFyY19ldGhfZW5jYXAgZXRoX2VuY2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHNvZnQ7CisgICAgc3RydWN0IGFyY19jYXAgY2FwOworICAgIF9fdTggcmF3WzBdOworICB9IHNvZnQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hcnAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYXJwLmgKaW5kZXggMDllYzAxZC4uNDNmMmU3ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hcnAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FycC5oCkBAIC0xMTEsMTkgKzExMSwxOSBAQAogI2RlZmluZSBBUlBPUF9OQUsgMTAKIHN0cnVjdCBhcnByZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgYXJwX3BhOwotIHN0cnVjdCBzb2NrYWRkciBhcnBfaGE7Ci0gaW50IGFycF9mbGFnczsKLSBzdHJ1Y3Qgc29ja2FkZHIgYXJwX25ldG1hc2s7CisgIHN0cnVjdCBzb2NrYWRkciBhcnBfcGE7CisgIHN0cnVjdCBzb2NrYWRkciBhcnBfaGE7CisgIGludCBhcnBfZmxhZ3M7CisgIHN0cnVjdCBzb2NrYWRkciBhcnBfbmV0bWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhcnBfZGV2WzE2XTsKKyAgY2hhciBhcnBfZGV2WzE2XTsKIH07CiBzdHJ1Y3QgYXJwcmVxX29sZCB7Ci0gc3RydWN0IHNvY2thZGRyIGFycF9wYTsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9wYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyIGFycF9oYTsKLSBpbnQgYXJwX2ZsYWdzOwotIHN0cnVjdCBzb2NrYWRkciBhcnBfbmV0bWFzazsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9oYTsKKyAgaW50IGFycF9mbGFnczsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9uZXRtYXNrOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFURl9DT00gMHgwMgpAQCAtMTM0LDEyICsxMzQsMTIgQEAKICNkZWZpbmUgQVRGX05FVE1BU0sgMHgyMAogI2RlZmluZSBBVEZfRE9OVFBVQiAweDQwCiBzdHJ1Y3QgYXJwaGRyIHsKLSBfX2JlMTYgYXJfaHJkOworICBfX2JlMTYgYXJfaHJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgYXJfcHJvOwotIHVuc2lnbmVkIGNoYXIgYXJfaGxuOwotIHVuc2lnbmVkIGNoYXIgYXJfcGxuOwotIF9fYmUxNiBhcl9vcDsKKyAgX19iZTE2IGFyX3BybzsKKyAgdW5zaWduZWQgY2hhciBhcl9obG47CisgIHVuc2lnbmVkIGNoYXIgYXJfcGxuOworICBfX2JlMTYgYXJfb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9ib25kaW5nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JvbmRpbmcuaAppbmRleCBjMmZhZTQyLi4yODkyMDE1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JvbmRpbmcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JvbmRpbmcuaApAQCAtNTksMjcgKzU5LDI3IEBACiAjZGVmaW5lIEJPTkRfWE1JVF9QT0xJQ1lfRU5DQVAyMyAzCiAjZGVmaW5lIEJPTkRfWE1JVF9QT0xJQ1lfRU5DQVAzNCA0CiB0eXBlZGVmIHN0cnVjdCBpZmJvbmQgewotIF9fczMyIGJvbmRfbW9kZTsKKyAgX19zMzIgYm9uZF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBudW1fc2xhdmVzOwotIF9fczMyIG1paW1vbjsKKyAgX19zMzIgbnVtX3NsYXZlczsKKyAgX19zMzIgbWlpbW9uOwogfSBpZmJvbmQ7CiB0eXBlZGVmIHN0cnVjdCBpZnNsYXZlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc2xhdmVfaWQ7Ci0gY2hhciBzbGF2ZV9uYW1lW0lGTkFNU0laXTsKLSBfX3M4IGxpbms7Ci0gX19zOCBzdGF0ZTsKKyAgX19zMzIgc2xhdmVfaWQ7CisgIGNoYXIgc2xhdmVfbmFtZVtJRk5BTVNJWl07CisgIF9fczggbGluazsKKyAgX19zOCBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGlua19mYWlsdXJlX2NvdW50OworICBfX3UzMiBsaW5rX2ZhaWx1cmVfY291bnQ7CiB9IGlmc2xhdmU7CiBzdHJ1Y3QgYWRfaW5mbyB7Ci0gX191MTYgYWdncmVnYXRvcl9pZDsKKyAgX191MTYgYWdncmVnYXRvcl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcG9ydHM7Ci0gX191MTYgYWN0b3Jfa2V5OwotIF9fdTE2IHBhcnRuZXJfa2V5OwotIF9fdTggcGFydG5lcl9zeXN0ZW1bRVRIX0FMRU5dOworICBfX3UxNiBwb3J0czsKKyAgX191MTYgYWN0b3Jfa2V5OworICBfX3UxNiBwYXJ0bmVyX2tleTsKKyAgX191OCBwYXJ0bmVyX3N5c3RlbVtFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9icmlkZ2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYnJpZGdlLmgKaW5kZXggMzY2OTEyZS4uMTM5NGI2ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9icmlkZ2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JyaWRnZS5oCkBAIC0yMSwxODAgKzIxLDE4MSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvaWZfZXRoZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8bGludXgvaW42Lmg+CiAjZGVmaW5lIFNZU0ZTX0JSSURHRV9BVFRSICJicmlkZ2UiCiAjZGVmaW5lIFNZU0ZTX0JSSURHRV9GREIgImJyZm9yd2FyZCIKICNkZWZpbmUgU1lTRlNfQlJJREdFX1BPUlRfU1VCRElSICJicmlmIgotI2RlZmluZSBTWVNGU19CUklER0VfUE9SVF9BVFRSICJicnBvcnQiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTWVNGU19CUklER0VfUE9SVF9BVFRSICJicnBvcnQiCiAjZGVmaW5lIFNZU0ZTX0JSSURHRV9QT1JUX0xJTksgImJyaWRnZSIKICNkZWZpbmUgQlJDVExfVkVSU0lPTiAxCiAjZGVmaW5lIEJSQ1RMX0dFVF9WRVJTSU9OIDAKLSNkZWZpbmUgQlJDVExfR0VUX0JSSURHRVMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlJDVExfR0VUX0JSSURHRVMgMQogI2RlZmluZSBCUkNUTF9BRERfQlJJREdFIDIKICNkZWZpbmUgQlJDVExfREVMX0JSSURHRSAzCiAjZGVmaW5lIEJSQ1RMX0FERF9JRiA0Ci0jZGVmaW5lIEJSQ1RMX0RFTF9JRiA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUkNUTF9ERUxfSUYgNQogI2RlZmluZSBCUkNUTF9HRVRfQlJJREdFX0lORk8gNgogI2RlZmluZSBCUkNUTF9HRVRfUE9SVF9MSVNUIDcKICNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9GT1JXQVJEX0RFTEFZIDgKLSNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9IRUxMT19USU1FIDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSQ1RMX1NFVF9CUklER0VfSEVMTE9fVElNRSA5CiAjZGVmaW5lIEJSQ1RMX1NFVF9CUklER0VfTUFYX0FHRSAxMAogI2RlZmluZSBCUkNUTF9TRVRfQUdFSU5HX1RJTUUgMTEKICNkZWZpbmUgQlJDVExfU0VUX0dDX0lOVEVSVkFMIDEyCi0jZGVmaW5lIEJSQ1RMX0dFVF9QT1JUX0lORk8gMTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSQ1RMX0dFVF9QT1JUX0lORk8gMTMKICNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9TVFBfU1RBVEUgMTQKICNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9QUklPUklUWSAxNQogI2RlZmluZSBCUkNUTF9TRVRfUE9SVF9QUklPUklUWSAxNgotI2RlZmluZSBCUkNUTF9TRVRfUEFUSF9DT1NUIDE3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUkNUTF9TRVRfUEFUSF9DT1NUIDE3CiAjZGVmaW5lIEJSQ1RMX0dFVF9GREJfRU5UUklFUyAxOAogI2RlZmluZSBCUl9TVEFURV9ESVNBQkxFRCAwCiAjZGVmaW5lIEJSX1NUQVRFX0xJU1RFTklORyAxCi0jZGVmaW5lIEJSX1NUQVRFX0xFQVJOSU5HIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSX1NUQVRFX0xFQVJOSU5HIDIKICNkZWZpbmUgQlJfU1RBVEVfRk9SV0FSRElORyAzCiAjZGVmaW5lIEJSX1NUQVRFX0JMT0NLSU5HIDQKIHN0cnVjdCBfX2JyaWRnZV9pbmZvIHsKLSBfX3U2NCBkZXNpZ25hdGVkX3Jvb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJyaWRnZV9pZDsKLSBfX3UzMiByb290X3BhdGhfY29zdDsKLSBfX3UzMiBtYXhfYWdlOwotIF9fdTMyIGhlbGxvX3RpbWU7CisgIF9fdTY0IGRlc2lnbmF0ZWRfcm9vdDsKKyAgX191NjQgYnJpZGdlX2lkOworICBfX3UzMiByb290X3BhdGhfY29zdDsKKyAgX191MzIgbWF4X2FnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm9yd2FyZF9kZWxheTsKLSBfX3UzMiBicmlkZ2VfbWF4X2FnZTsKLSBfX3UzMiBicmlkZ2VfaGVsbG9fdGltZTsKLSBfX3UzMiBicmlkZ2VfZm9yd2FyZF9kZWxheTsKKyAgX191MzIgaGVsbG9fdGltZTsKKyAgX191MzIgZm9yd2FyZF9kZWxheTsKKyAgX191MzIgYnJpZGdlX21heF9hZ2U7CisgIF9fdTMyIGJyaWRnZV9oZWxsb190aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRvcG9sb2d5X2NoYW5nZTsKLSBfX3U4IHRvcG9sb2d5X2NoYW5nZV9kZXRlY3RlZDsKLSBfX3U4IHJvb3RfcG9ydDsKLSBfX3U4IHN0cF9lbmFibGVkOworICBfX3UzMiBicmlkZ2VfZm9yd2FyZF9kZWxheTsKKyAgX191OCB0b3BvbG9neV9jaGFuZ2U7CisgIF9fdTggdG9wb2xvZ3lfY2hhbmdlX2RldGVjdGVkOworICBfX3U4IHJvb3RfcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWdlaW5nX3RpbWU7Ci0gX191MzIgZ2NfaW50ZXJ2YWw7Ci0gX191MzIgaGVsbG9fdGltZXJfdmFsdWU7Ci0gX191MzIgdGNuX3RpbWVyX3ZhbHVlOworICBfX3U4IHN0cF9lbmFibGVkOworICBfX3UzMiBhZ2VpbmdfdGltZTsKKyAgX191MzIgZ2NfaW50ZXJ2YWw7CisgIF9fdTMyIGhlbGxvX3RpbWVyX3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0b3BvbG9neV9jaGFuZ2VfdGltZXJfdmFsdWU7Ci0gX191MzIgZ2NfdGltZXJfdmFsdWU7CisgIF9fdTMyIHRjbl90aW1lcl92YWx1ZTsKKyAgX191MzIgdG9wb2xvZ3lfY2hhbmdlX3RpbWVyX3ZhbHVlOworICBfX3UzMiBnY190aW1lcl92YWx1ZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF9fcG9ydF9pbmZvIHsKKyAgX191NjQgZGVzaWduYXRlZF9yb290OworICBfX3U2NCBkZXNpZ25hdGVkX2JyaWRnZTsKKyAgX191MTYgcG9ydF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGVzaWduYXRlZF9yb290OwotIF9fdTY0IGRlc2lnbmF0ZWRfYnJpZGdlOwotIF9fdTE2IHBvcnRfaWQ7Ci0gX191MTYgZGVzaWduYXRlZF9wb3J0OworICBfX3UxNiBkZXNpZ25hdGVkX3BvcnQ7CisgIF9fdTMyIHBhdGhfY29zdDsKKyAgX191MzIgZGVzaWduYXRlZF9jb3N0OworICBfX3U4IHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYXRoX2Nvc3Q7Ci0gX191MzIgZGVzaWduYXRlZF9jb3N0OwotIF9fdTggc3RhdGU7Ci0gX191OCB0b3BfY2hhbmdlX2FjazsKKyAgX191OCB0b3BfY2hhbmdlX2FjazsKKyAgX191OCBjb25maWdfcGVuZGluZzsKKyAgX191OCB1bnVzZWQwOworICBfX3UzMiBtZXNzYWdlX2FnZV90aW1lcl92YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb25maWdfcGVuZGluZzsKLSBfX3U4IHVudXNlZDA7Ci0gX191MzIgbWVzc2FnZV9hZ2VfdGltZXJfdmFsdWU7Ci0gX191MzIgZm9yd2FyZF9kZWxheV90aW1lcl92YWx1ZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaG9sZF90aW1lcl92YWx1ZTsKKyAgX191MzIgZm9yd2FyZF9kZWxheV90aW1lcl92YWx1ZTsKKyAgX191MzIgaG9sZF90aW1lcl92YWx1ZTsKIH07CiBzdHJ1Y3QgX19mZGJfZW50cnkgewotIF9fdTggbWFjX2FkZHJbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvcnRfbm87Ci0gX191OCBpc19sb2NhbDsKLSBfX3UzMiBhZ2VpbmdfdGltZXJfdmFsdWU7Ci0gX191OCBwb3J0X2hpOworICBfX3U4IG1hY19hZGRyW0VUSF9BTEVOXTsKKyAgX191OCBwb3J0X25vOworICBfX3U4IGlzX2xvY2FsOworICBfX3UzMiBhZ2VpbmdfdGltZXJfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFkMDsKLSBfX3UxNiB1bnVzZWQ7CisgIF9fdTggcG9ydF9oaTsKKyAgX191OCBwYWQwOworICBfX3UxNiB1bnVzZWQ7CiB9OwotI2RlZmluZSBCUklER0VfRkxBR1NfTUFTVEVSIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSSURHRV9GTEFHU19NQVNURVIgMQogI2RlZmluZSBCUklER0VfRkxBR1NfU0VMRiAyCiAjZGVmaW5lIEJSSURHRV9NT0RFX1ZFQiAwCiAjZGVmaW5lIEJSSURHRV9NT0RFX1ZFUEEgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBJRkxBX0JSSURHRV9GTEFHUywKKyAgSUZMQV9CUklER0VfTU9ERSwKKyAgSUZMQV9CUklER0VfVkxBTl9JTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JSSURHRV9GTEFHUywKLSBJRkxBX0JSSURHRV9NT0RFLAotIElGTEFfQlJJREdFX1ZMQU5fSU5GTywKLSBfX0lGTEFfQlJJREdFX01BWCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSUZMQV9CUklER0VfTUFYLAogfTsKICNkZWZpbmUgSUZMQV9CUklER0VfTUFYIChfX0lGTEFfQlJJREdFX01BWCAtIDEpCi0jZGVmaW5lIEJSSURHRV9WTEFOX0lORk9fTUFTVEVSICgxPDwwKQotI2RlZmluZSBCUklER0VfVkxBTl9JTkZPX1BWSUQgKDE8PDEpCisjZGVmaW5lIEJSSURHRV9WTEFOX0lORk9fTUFTVEVSICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUklER0VfVkxBTl9JTkZPX1VOVEFHR0VEICgxPDwyKQorI2RlZmluZSBCUklER0VfVkxBTl9JTkZPX1BWSUQgKDEgPDwgMSkKKyNkZWZpbmUgQlJJREdFX1ZMQU5fSU5GT19VTlRBR0dFRCAoMSA8PCAyKQogc3RydWN0IGJyaWRnZV92bGFuX2luZm8gewotIF9fdTE2IGZsYWdzOwotIF9fdTE2IHZpZDsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiB2aWQ7CiB9OwogZW51bSB7Ci0gTURCQV9VTlNQRUMsCi0gTURCQV9NREIsCisgIE1EQkFfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNREJBX1JPVVRFUiwKLSBfX01EQkFfTUFYLAorICBNREJBX01EQiwKKyAgTURCQV9ST1VURVIsCisgIF9fTURCQV9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTURCQV9NQVggKF9fTURCQV9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIE1EQkFfTURCX1VOU1BFQywKLSBNREJBX01EQl9FTlRSWSwKLSBfX01EQkFfTURCX01BWCwKKyAgTURCQV9NREJfVU5TUEVDLAorICBNREJBX01EQl9FTlRSWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTURCQV9NREJfTUFYLAogfTsKICNkZWZpbmUgTURCQV9NREJfTUFYIChfX01EQkFfTURCX01BWCAtIDEpCiBlbnVtIHsKLSBNREJBX01EQl9FTlRSWV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1EQkFfTURCX0VOVFJZX0lORk8sCi0gX19NREJBX01EQl9FTlRSWV9NQVgsCisgIE1EQkFfTURCX0VOVFJZX1VOU1BFQywKKyAgTURCQV9NREJfRU5UUllfSU5GTywKKyAgX19NREJBX01EQl9FTlRSWV9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTURCQV9NREJfRU5UUllfTUFYIChfX01EQkFfTURCX0VOVFJZX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTURCQV9ST1VURVJfVU5TUEVDLAotIE1EQkFfUk9VVEVSX1BPUlQsCi0gX19NREJBX1JPVVRFUl9NQVgsCisgIE1EQkFfUk9VVEVSX1VOU1BFQywKKyAgTURCQV9ST1VURVJfUE9SVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTURCQV9ST1VURVJfTUFYLAogfTsKICNkZWZpbmUgTURCQV9ST1VURVJfTUFYIChfX01EQkFfUk9VVEVSX01BWCAtIDEpCiBzdHJ1Y3QgYnJfcG9ydF9tc2cgewotIF9fdTggZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZmluZGV4OworICBfX3U4IGZhbWlseTsKKyAgX191MzIgaWZpbmRleDsKIH07CiBzdHJ1Y3QgYnJfbWRiX2VudHJ5IHsKLSBfX3UzMiBpZmluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaWZpbmRleDsKICNkZWZpbmUgTURCX1RFTVBPUkFSWSAwCiAjZGVmaW5lIE1EQl9QRVJNQU5FTlQgMQotIF9fdTggc3RhdGU7Ci0gc3RydWN0IHsKKyAgX191OCBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fYmUzMiBpcDQ7Ci0gc3RydWN0IGluNl9hZGRyIGlwNjsKLSB9IHU7CisgIHN0cnVjdCB7CisgICAgdW5pb24geworICAgICAgX19iZTMyIGlwNDsKKyAgICAgIHN0cnVjdCBpbjZfYWRkciBpcDY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwcm90bzsKLSB9IGFkZHI7CisgICAgfSB1OworICAgIF9fYmUxNiBwcm90bzsKKyAgfSBhZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKKyAgTURCQV9TRVRfRU5UUllfVU5TUEVDLAorICBNREJBX1NFVF9FTlRSWSwKKyAgX19NREJBX1NFVF9FTlRSWV9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1EQkFfU0VUX0VOVFJZX1VOU1BFQywKLSBNREJBX1NFVF9FTlRSWSwKLSBfX01EQkFfU0VUX0VOVFJZX01BWCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNREJBX1NFVF9FTlRSWV9NQVggKF9fTURCQV9TRVRfRU5UUllfTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9jYWJsZW1vZGVtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2NhYmxlbW9kZW0uaAppbmRleCA3MTZiOTNmLi40NTAzOWU1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2NhYmxlbW9kZW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2NhYmxlbW9kZW0uaApAQCAtMTgsMTIgKzE4LDEyIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0xJTlVYX0NBQkxFTU9ERU1fSF8KICNkZWZpbmUgX0xJTlVYX0NBQkxFTU9ERU1fSF8KLSNkZWZpbmUgU0lPQ0dDTVNUQVRTIChTSU9DREVWUFJJVkFURSswKQotI2RlZmluZSBTSU9DR0NNRklSTVdBUkUgKFNJT0NERVZQUklWQVRFKzEpCisjZGVmaW5lIFNJT0NHQ01TVEFUUyAoU0lPQ0RFVlBSSVZBVEUgKyAwKQorI2RlZmluZSBTSU9DR0NNRklSTVdBUkUgKFNJT0NERVZQUklWQVRFICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NHQ01GUkVRVUVOQ1kgKFNJT0NERVZQUklWQVRFKzIpCi0jZGVmaW5lIFNJT0NTQ01GUkVRVUVOQ1kgKFNJT0NERVZQUklWQVRFKzMpCi0jZGVmaW5lIFNJT0NHQ01QSURTIChTSU9DREVWUFJJVkFURSs0KQotI2RlZmluZSBTSU9DU0NNUElEUyAoU0lPQ0RFVlBSSVZBVEUrNSkKKyNkZWZpbmUgU0lPQ0dDTUZSRVFVRU5DWSAoU0lPQ0RFVlBSSVZBVEUgKyAyKQorI2RlZmluZSBTSU9DU0NNRlJFUVVFTkNZIChTSU9DREVWUFJJVkFURSArIDMpCisjZGVmaW5lIFNJT0NHQ01QSURTIChTSU9DREVWUFJJVkFURSArIDQpCisjZGVmaW5lIFNJT0NTQ01QSURTIChTSU9DREVWUFJJVkFURSArIDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2VxbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9lcWwuaAppbmRleCA0MTEyMDExLi41NWM4MDNmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2VxbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXFsLmgKQEAgLTMyLDE5ICszMiwxOSBAQAogI2RlZmluZSBFUUxfU0VUTUFTVFJDRkcgKFNJT0NERVZQUklWQVRFICsgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtYXN0ZXJfY29uZmlnIHsKLSBjaGFyIG1hc3Rlcl9uYW1lWzE2XTsKLSBpbnQgbWF4X3NsYXZlczsKLSBpbnQgbWluX3NsYXZlczsKKyAgY2hhciBtYXN0ZXJfbmFtZVsxNl07CisgIGludCBtYXhfc2xhdmVzOworICBpbnQgbWluX3NsYXZlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IG1hc3Rlcl9jb25maWdfdDsKIHR5cGVkZWYgc3RydWN0IHNsYXZlX2NvbmZpZyB7Ci0gY2hhciBzbGF2ZV9uYW1lWzE2XTsKLSBsb25nIHByaW9yaXR5OworICBjaGFyIHNsYXZlX25hbWVbMTZdOworICBsb25nIHByaW9yaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc2xhdmVfY29uZmlnX3Q7CiB0eXBlZGVmIHN0cnVjdCBzbGF2aW5nX3JlcXVlc3QgewotIGNoYXIgc2xhdmVfbmFtZVsxNl07Ci0gbG9uZyBwcmlvcml0eTsKKyAgY2hhciBzbGF2ZV9uYW1lWzE2XTsKKyAgbG9uZyBwcmlvcml0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHNsYXZpbmdfcmVxdWVzdF90OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2V0aGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2V0aGVyLmgKaW5kZXggNjEwZjcwYi4uYmMwMzJjYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9ldGhlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXRoZXIuaApAQCAtNjIsMTIgKzYyLDEyIEBACiAjZGVmaW5lIEVUSF9QX1NMT1cgMHg4ODA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9XQ0NQIDB4ODgzRQotI2RlZmluZSBFVEhfUF9QUFBfRElTQyAweDg4NjMKLSNkZWZpbmUgRVRIX1BfUFBQX1NFUyAweDg4NjQKICNkZWZpbmUgRVRIX1BfTVBMU19VQyAweDg4NDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX01QTFNfTUMgMHg4ODQ4CiAjZGVmaW5lIEVUSF9QX0FUTU1QT0EgMHg4ODRjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhfUF9QUFBfRElTQyAweDg4NjMKKyNkZWZpbmUgRVRIX1BfUFBQX1NFUyAweDg4NjQKICNkZWZpbmUgRVRIX1BfTElOS19DVEwgMHg4ODZjCiAjZGVmaW5lIEVUSF9QX0FUTUZBVEUgMHg4ODg0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtODYsNDggKzg2LDUxIEBACiAjZGVmaW5lIEVUSF9QX1RETFMgMHg4OTBECiAjZGVmaW5lIEVUSF9QX0ZJUCAweDg5MTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSF9QXzgwMjIxIDB4ODkxNworI2RlZmluZSBFVEhfUF9MT09QQkFDSyAweDkwMDAKICNkZWZpbmUgRVRIX1BfUUlOUTEgMHg5MTAwCiAjZGVmaW5lIEVUSF9QX1FJTlEyIDB4OTIwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfUUlOUTMgMHg5MzAwCiAjZGVmaW5lIEVUSF9QX0VEU0EgMHhEQURBCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9BRl9JVUNWIDB4RkJGQgogI2RlZmluZSBFVEhfUF84MDJfM19NSU4gMHgwNjAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF84MDJfMyAweDAwMDEKICNkZWZpbmUgRVRIX1BfQVgyNSAweDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0FMTCAweDAwMDMKICNkZWZpbmUgRVRIX1BfODAyXzIgMHgwMDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9TTkFQIDB4MDAwNQogI2RlZmluZSBFVEhfUF9ERENNUCAweDAwMDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX1dBTl9QUFAgMHgwMDA3CiAjZGVmaW5lIEVUSF9QX1BQUF9NUCAweDAwMDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0xPQ0FMVEFMSyAweDAwMDkKICNkZWZpbmUgRVRIX1BfQ0FOIDB4MDAwQwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfQ0FORkQgMHgwMDBECiAjZGVmaW5lIEVUSF9QX1BQUFRBTEsgMHgwMDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9UUl84MDJfMiAweDAwMTEKICNkZWZpbmUgRVRIX1BfTU9CSVRFWCAweDAwMTUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0NPTlRST0wgMHgwMDE2CiAjZGVmaW5lIEVUSF9QX0lSREEgMHgwMDE3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9FQ09ORVQgMHgwMDE4CiAjZGVmaW5lIEVUSF9QX0hETEMgMHgwMDE5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9BUkNORVQgMHgwMDFBCiAjZGVmaW5lIEVUSF9QX0RTQSAweDAwMUIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX1RSQUlMRVIgMHgwMDFDCiAjZGVmaW5lIEVUSF9QX1BIT05FVCAweDAwRjUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0lFRUU4MDIxNTQgMHgwMEY2CiAjZGVmaW5lIEVUSF9QX0NBSUYgMHgwMEY3Ci1zdHJ1Y3QgZXRoaGRyIHsKLSB1bnNpZ25lZCBjaGFyIGhfZGVzdFtFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaF9zb3VyY2VbRVRIX0FMRU5dOwotIF9fYmUxNiBoX3Byb3RvOworI2RlZmluZSBFVEhfUF9YRFNBIDB4MDBGOAorc3RydWN0IGV0aGhkciB7CisgIHVuc2lnbmVkIGNoYXIgaF9kZXN0W0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBoX3NvdXJjZVtFVEhfQUxFTl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMTYgaF9wcm90bzsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZjLmgKaW5kZXggNTI3YzE1ZS4uNzU4NGZhMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZmMuaApAQCAtMjEsMjMgKzIxLDIzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgRkNfQUxFTiA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGQ19ITEVOIChzaXplb2Yoc3RydWN0IGZjaF9oZHIpK3NpemVvZihzdHJ1Y3QgZmNsbGMpKQorI2RlZmluZSBGQ19ITEVOIChzaXplb2Yoc3RydWN0IGZjaF9oZHIpICsgc2l6ZW9mKHN0cnVjdCBmY2xsYykpCiAjZGVmaW5lIEZDX0lEX0xFTiAzCiAjZGVmaW5lIEVYVEVOREVEX1NBUCAweEFBCiAjZGVmaW5lIFVJX0NNRCAweDAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjaF9oZHIgewotIF9fdTggZGFkZHJbRkNfQUxFTl07Ci0gX191OCBzYWRkcltGQ19BTEVOXTsKKyAgX191OCBkYWRkcltGQ19BTEVOXTsKKyAgX191OCBzYWRkcltGQ19BTEVOXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjbGxjIHsKLSBfX3U4IGRzYXA7Ci0gX191OCBzc2FwOwotIF9fdTggbGxjOworICBfX3U4IGRzYXA7CisgIF9fdTggc3NhcDsKKyAgX191OCBsbGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJvdGlkWzNdOwotIF9fYmUxNiBldGhlcnR5cGU7CisgIF9fdTggcHJvdGlkWzNdOworICBfX2JlMTYgZXRoZXJ0eXBlOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZmRkaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mZGRpLmgKaW5kZXggNjk5YWU0NC4uZTcyZWQ3ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mZGRpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mZGRpLmgKQEAgLTMxLDY0ICszMSw2MyBAQAogI2RlZmluZSBGRERJX0tfTExDX1pMRU4gMTMKICNkZWZpbmUgRkRESV9LX0xMQ19MRU4gNDQ5MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRESV9LX09VSV9MRU4gMwogI2RlZmluZSBGRERJX0ZDX0tfVk9JRCAweDAwCiAjZGVmaW5lIEZERElfRkNfS19OT05fUkVTVFJJQ1RFRF9UT0tFTiAweDgwCiAjZGVmaW5lIEZERElfRkNfS19SRVNUUklDVEVEX1RPS0VOIDB4QzAKLSNkZWZpbmUgRkRESV9GQ19LX1NNVF9NSU4gMHg0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRESV9GQ19LX1NNVF9NSU4gMHg0MQogI2RlZmluZSBGRERJX0ZDX0tfU01UX01BWCAweDRGCiAjZGVmaW5lIEZERElfRkNfS19NQUNfTUlOIDB4QzEKICNkZWZpbmUgRkRESV9GQ19LX01BQ19NQVggMHhDRgotI2RlZmluZSBGRERJX0ZDX0tfQVNZTkNfTExDX01JTiAweDUwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRERJX0ZDX0tfQVNZTkNfTExDX01JTiAweDUwCiAjZGVmaW5lIEZERElfRkNfS19BU1lOQ19MTENfREVGIDB4NTQKICNkZWZpbmUgRkRESV9GQ19LX0FTWU5DX0xMQ19NQVggMHg1RgogI2RlZmluZSBGRERJX0ZDX0tfU1lOQ19MTENfTUlOIDB4RDAKLSNkZWZpbmUgRkRESV9GQ19LX1NZTkNfTExDX01BWCAweEQ3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRERJX0ZDX0tfU1lOQ19MTENfTUFYIDB4RDcKICNkZWZpbmUgRkRESV9GQ19LX0lNUExFTUVOVE9SX01JTiAweDYwCiAjZGVmaW5lIEZERElfRkNfS19JTVBMRU1FTlRPUl9NQVggMHg2RgogI2RlZmluZSBGRERJX0ZDX0tfUkVTRVJWRURfTUlOIDB4NzAKLSNkZWZpbmUgRkRESV9GQ19LX1JFU0VSVkVEX01BWCAweDdGCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRERJX0ZDX0tfUkVTRVJWRURfTUFYIDB4N0YKICNkZWZpbmUgRkRESV9FWFRFTkRFRF9TQVAgMHhBQQogI2RlZmluZSBGRERJX1VJX0NNRCAweDAzCiBzdHJ1Y3QgZmRkaV84MDIyXzFfaGRyIHsKLSBfX3U4IGRzYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3NhcDsKLSBfX3U4IGN0cmw7CisgIF9fdTggZHNhcDsKKyAgX191OCBzc2FwOworICBfX3U4IGN0cmw7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmZGRpXzgwMjJfMl9oZHIgeworICBfX3U4IGRzYXA7CisgIF9fdTggc3NhcDsKKyAgX191OCBjdHJsXzE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZHNhcDsKLSBfX3U4IHNzYXA7Ci0gX191OCBjdHJsXzE7Ci0gX191OCBjdHJsXzI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGN0cmxfMjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7Ci0jZGVmaW5lIEZERElfS19PVUlfTEVOIDMKIHN0cnVjdCBmZGRpX3NuYXBfaGRyIHsKLSBfX3U4IGRzYXA7CisgIF9fdTggZHNhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzc2FwOwotIF9fdTggY3RybDsKLSBfX3U4IG91aVtGRERJX0tfT1VJX0xFTl07Ci0gX19iZTE2IGV0aGVydHlwZTsKKyAgX191OCBzc2FwOworICBfX3U4IGN0cmw7CisgIF9fdTggb3VpW0ZERElfS19PVUlfTEVOXTsKKyAgX19iZTE2IGV0aGVydHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGZkZGloZHIgewotIF9fdTggZmM7Ci0gX191OCBkYWRkcltGRERJX0tfQUxFTl07CisgIF9fdTggZmM7CisgIF9fdTggZGFkZHJbRkRESV9LX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNhZGRyW0ZERElfS19BTEVOXTsKLSB1bmlvbgotIHsKLSBzdHJ1Y3QgZmRkaV84MDIyXzFfaGRyIGxsY184MDIyXzE7CisgIF9fdTggc2FkZHJbRkRESV9LX0FMRU5dOworICB1bmlvbiB7CisgICAgc3RydWN0IGZkZGlfODAyMl8xX2hkciBsbGNfODAyMl8xOworICAgIHN0cnVjdCBmZGRpXzgwMjJfMl9oZHIgbGxjXzgwMjJfMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZkZGlfODAyMl8yX2hkciBsbGNfODAyMl8yOwotIHN0cnVjdCBmZGRpX3NuYXBfaGRyIGxsY19zbmFwOwotIH0gaGRyOworICAgIHN0cnVjdCBmZGRpX3NuYXBfaGRyIGxsY19zbmFwOworICB9IGhkcjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mcmFkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZyYWQuaAppbmRleCAzZmFhZTU5Li44NTUzYzFjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZyYWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZyYWQuaApAQCAtMTksNzggKzE5LDc2IEBACiAjaWZuZGVmIF9VQVBJX0ZSQURfSF8KICNkZWZpbmUgX1VBUElfRlJBRF9IXwogI2luY2x1ZGUgPGxpbnV4L2lmLmg+Ci1zdHJ1Y3QgZGxjaV9hZGQKK3N0cnVjdCBkbGNpX2FkZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIGNoYXIgZGV2bmFtZVtJRk5BTVNJWl07Ci0gc2hvcnQgZGxjaTsKKyAgY2hhciBkZXZuYW1lW0lGTkFNU0laXTsKKyAgc2hvcnQgZGxjaTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETENJX0dFVF9DT05GIChTSU9DREVWUFJJVkFURSArIDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETENJX1NFVF9DT05GIChTSU9DREVWUFJJVkFURSArIDMpCiBzdHJ1Y3QgZGxjaV9jb25mIHsKLSBzaG9ydCBmbGFnczsKKyAgc2hvcnQgZmxhZ3M7CisgIHNob3J0IENJUl9md2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IENJUl9md2Q7Ci0gc2hvcnQgQmNfZndkOwotIHNob3J0IEJlX2Z3ZDsKLSBzaG9ydCBDSVJfYndkOworICBzaG9ydCBCY19md2Q7CisgIHNob3J0IEJlX2Z3ZDsKKyAgc2hvcnQgQ0lSX2J3ZDsKKyAgc2hvcnQgQmNfYndkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBCY19id2Q7Ci0gc2hvcnQgQmVfYndkOwotIHNob3J0IFRjX2Z3ZDsKLSBzaG9ydCBUY19id2Q7CisgIHNob3J0IEJlX2J3ZDsKKyAgc2hvcnQgVGNfZndkOworICBzaG9ydCBUY19id2Q7CisgIHNob3J0IFRmX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgVGZfbWF4OwotIHNob3J0IFRiX21heDsKKyAgc2hvcnQgVGJfbWF4OwogfTsKICNkZWZpbmUgRExDSV9HRVRfU0xBVkUgKFNJT0NERVZQUklWQVRFICsgNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMQ0lfSUdOT1JFX0NJUl9PVVQgMHgwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETENJX0FDQ09VTlRfQ0lSX0lOIDB4MDAwMgogI2RlZmluZSBETENJX0JVRkZFUl9JRiAweDAwMDgKICNkZWZpbmUgRExDSV9WQUxJRF9GTEFHUyAweDAwMEIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQURfR0VUX0NPTkYgKFNJT0NERVZQUklWQVRFKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9TRVRfQ09ORiAoU0lPQ0RFVlBSSVZBVEUgKyAxKQogI2RlZmluZSBGUkFEX0xBU1RfSU9DVEwgRlJBRF9TRVRfQ09ORgotc3RydWN0IGZyYWRfY29uZgorc3RydWN0IGZyYWRfY29uZiB7CisgIHNob3J0IHN0YXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIHNob3J0IHN0YXRpb247Ci0gc2hvcnQgZmxhZ3M7Ci0gc2hvcnQga2JhdWQ7CisgIHNob3J0IGZsYWdzOworICBzaG9ydCBrYmF1ZDsKKyAgc2hvcnQgY2xvY2tpbmc7CisgIHNob3J0IG10dTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgY2xvY2tpbmc7Ci0gc2hvcnQgbXR1OwotIHNob3J0IFQzOTE7Ci0gc2hvcnQgVDM5MjsKKyAgc2hvcnQgVDM5MTsKKyAgc2hvcnQgVDM5MjsKKyAgc2hvcnQgTjM5MTsKKyAgc2hvcnQgTjM5MjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgTjM5MTsKLSBzaG9ydCBOMzkyOwotIHNob3J0IE4zOTM7Ci0gc2hvcnQgQ0lSX2Z3ZDsKKyAgc2hvcnQgTjM5MzsKKyAgc2hvcnQgQ0lSX2Z3ZDsKKyAgc2hvcnQgQmNfZndkOworICBzaG9ydCBCZV9md2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IEJjX2Z3ZDsKLSBzaG9ydCBCZV9md2Q7Ci0gc2hvcnQgQ0lSX2J3ZDsKLSBzaG9ydCBCY19id2Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IEJlX2J3ZDsKKyAgc2hvcnQgQ0lSX2J3ZDsKKyAgc2hvcnQgQmNfYndkOworICBzaG9ydCBCZV9id2Q7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9TVEFUSU9OX0NQRSAweDAwMDAKICNkZWZpbmUgRlJBRF9TVEFUSU9OX05PREUgMHgwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGUkFEX1RYX0lHTk9SRV9DSVIgMHgwMDAxCiAjZGVmaW5lIEZSQURfUlhfQUNDT1VOVF9DSVIgMHgwMDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGUkFEX0RST1BfQUJPUlRFRCAweDAwMDQKICNkZWZpbmUgRlJBRF9CVUZGRVJJRiAweDAwMDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQURfU1RBVFMgMHgwMDEwCiAjZGVmaW5lIEZSQURfTUNJIDB4MDEwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9BVVRPRExDSSAweDgwMDAKICNkZWZpbmUgRlJBRF9WQUxJRF9GTEFHUyAweDgxMUYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQURfQ0xPQ0tfSU5UIDB4MDAwMQogI2RlZmluZSBGUkFEX0NMT0NLX0VYVCAweDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfaGlwcGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfaGlwcGkuaAppbmRleCA3YmQwYjE2Li5hNWVhZmM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2hpcHBpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9oaXBwaS5oCkBAIC0zMSw3OCArMzEsNzUgQEAKICNkZWZpbmUgSElQUElfVUlfQ01EIDB4MDMKIHN0cnVjdCBoaXBuZXRfc3RhdGlzdGljcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByeF9wYWNrZXRzOwotIGludCB0eF9wYWNrZXRzOwotIGludCByeF9lcnJvcnM7Ci0gaW50IHR4X2Vycm9yczsKKyAgaW50IHJ4X3BhY2tldHM7CisgIGludCB0eF9wYWNrZXRzOworICBpbnQgcnhfZXJyb3JzOworICBpbnQgdHhfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcnhfZHJvcHBlZDsKLSBpbnQgdHhfZHJvcHBlZDsKLSBpbnQgcnhfbGVuZ3RoX2Vycm9yczsKLSBpbnQgcnhfb3Zlcl9lcnJvcnM7CisgIGludCByeF9kcm9wcGVkOworICBpbnQgdHhfZHJvcHBlZDsKKyAgaW50IHJ4X2xlbmd0aF9lcnJvcnM7CisgIGludCByeF9vdmVyX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJ4X2NyY19lcnJvcnM7Ci0gaW50IHJ4X2ZyYW1lX2Vycm9yczsKLSBpbnQgcnhfZmlmb19lcnJvcnM7Ci0gaW50IHJ4X21pc3NlZF9lcnJvcnM7CisgIGludCByeF9jcmNfZXJyb3JzOworICBpbnQgcnhfZnJhbWVfZXJyb3JzOworICBpbnQgcnhfZmlmb19lcnJvcnM7CisgIGludCByeF9taXNzZWRfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHhfYWJvcnRlZF9lcnJvcnM7Ci0gaW50IHR4X2NhcnJpZXJfZXJyb3JzOwotIGludCB0eF9maWZvX2Vycm9yczsKLSBpbnQgdHhfaGVhcnRiZWF0X2Vycm9yczsKKyAgaW50IHR4X2Fib3J0ZWRfZXJyb3JzOworICBpbnQgdHhfY2Fycmllcl9lcnJvcnM7CisgIGludCB0eF9maWZvX2Vycm9yczsKKyAgaW50IHR4X2hlYXJ0YmVhdF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eF93aW5kb3dfZXJyb3JzOworICBpbnQgdHhfd2luZG93X2Vycm9yczsKIH07CiBzdHJ1Y3QgaGlwcGlfZnBfaGRyIHsKLSBfX2JlMzIgZml4ZWQ7CisgIF9fYmUzMiBmaXhlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGQyX3NpemU7CisgIF9fYmUzMiBkMl9zaXplOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBoaXBwaV9sZV9oZHIgewogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZjOjM7Ci0gX191OCBkb3VibGVfd2lkZToxOwotIF9fdTggbWVzc2FnZV90eXBlOjQ7CisgIF9fdTggZmMgOiAzOworICBfX3U4IGRvdWJsZV93aWRlIDogMTsKKyAgX191OCBtZXNzYWdlX3R5cGUgOiA0OwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWVzc2FnZV90eXBlOjQ7Ci0gX191OCBkb3VibGVfd2lkZToxOwotIF9fdTggZmM6MzsKKyAgX191OCBtZXNzYWdlX3R5cGUgOiA0OworICBfX3U4IGRvdWJsZV93aWRlIDogMTsKKyAgX191OCBmYyA6IDM7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkZXN0X3N3aXRjaF9hZGRyWzNdOworICBfX3U4IGRlc3Rfc3dpdGNoX2FkZHJbM107CiAjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCBkZXN0X2FkZHJfdHlwZTo0LAotIHNyY19hZGRyX3R5cGU6NDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZGVzdF9hZGRyX3R5cGUgOiA0LCBzcmNfYWRkcl90eXBlIDogNDsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggc3JjX2FkZHJfdHlwZTo0LAotIGRlc3RfYWRkcl90eXBlOjQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHNyY19hZGRyX3R5cGUgOiA0LCBkZXN0X2FkZHJfdHlwZSA6IDQ7CiAjZW5kaWYKKyAgX191OCBzcmNfc3dpdGNoX2FkZHJbM107CisgIF9fdTE2IHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNyY19zd2l0Y2hfYWRkclszXTsKLSBfX3UxNiByZXNlcnZlZDsKLSBfX3U4IGRhZGRyW0hJUFBJX0FMRU5dOwotIF9fdTE2IGxvY2FsbHlfYWRtaW5pc3RlcmVkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNhZGRyW0hJUFBJX0FMRU5dOworICBfX3U4IGRhZGRyW0hJUFBJX0FMRU5dOworICBfX3UxNiBsb2NhbGx5X2FkbWluaXN0ZXJlZDsKKyAgX191OCBzYWRkcltISVBQSV9BTEVOXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBISVBQSV9PVUlfTEVOIDMKIHN0cnVjdCBoaXBwaV9zbmFwX2hkciB7CisgIF9fdTggZHNhcDsKKyAgX191OCBzc2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRzYXA7Ci0gX191OCBzc2FwOwotIF9fdTggY3RybDsKLSBfX3U4IG91aVtISVBQSV9PVUlfTEVOXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGV0aGVydHlwZTsKKyAgX191OCBjdHJsOworICBfX3U4IG91aVtISVBQSV9PVUlfTEVOXTsKKyAgX19iZTE2IGV0aGVydHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7Ci1zdHJ1Y3QgaGlwcGlfaGRyIHsKLSBzdHJ1Y3QgaGlwcGlfZnBfaGRyIGZwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaGlwcGlfbGVfaGRyIGxlOwotIHN0cnVjdCBoaXBwaV9zbmFwX2hkciBzbmFwOworc3RydWN0IGhpcHBpX2hkciB7CisgIHN0cnVjdCBoaXBwaV9mcF9oZHIgZnA7CisgIHN0cnVjdCBoaXBwaV9sZV9oZHIgbGU7CisgIHN0cnVjdCBoaXBwaV9zbmFwX2hkciBzbmFwOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2xpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfbGluay5oCmluZGV4IGFhNTNmMGUuLmZmY2YzZjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfbGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfbGluay5oCkBAIC0yMiw0ODcgKzIyLDUyOSBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGxpbmsuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcnRubF9saW5rX3N0YXRzIHsKLSBfX3UzMiByeF9wYWNrZXRzOwotIF9fdTMyIHR4X3BhY2tldHM7Ci0gX191MzIgcnhfYnl0ZXM7CisgIF9fdTMyIHJ4X3BhY2tldHM7CisgIF9fdTMyIHR4X3BhY2tldHM7CisgIF9fdTMyIHJ4X2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9ieXRlczsKLSBfX3UzMiByeF9lcnJvcnM7Ci0gX191MzIgdHhfZXJyb3JzOwotIF9fdTMyIHJ4X2Ryb3BwZWQ7CisgIF9fdTMyIHR4X2J5dGVzOworICBfX3UzMiByeF9lcnJvcnM7CisgIF9fdTMyIHR4X2Vycm9yczsKKyAgX191MzIgcnhfZHJvcHBlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfZHJvcHBlZDsKLSBfX3UzMiBtdWx0aWNhc3Q7Ci0gX191MzIgY29sbGlzaW9uczsKLSBfX3UzMiByeF9sZW5ndGhfZXJyb3JzOworICBfX3UzMiB0eF9kcm9wcGVkOworICBfX3UzMiBtdWx0aWNhc3Q7CisgIF9fdTMyIGNvbGxpc2lvbnM7CisgIF9fdTMyIHJ4X2xlbmd0aF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4X292ZXJfZXJyb3JzOwotIF9fdTMyIHJ4X2NyY19lcnJvcnM7Ci0gX191MzIgcnhfZnJhbWVfZXJyb3JzOwotIF9fdTMyIHJ4X2ZpZm9fZXJyb3JzOworICBfX3UzMiByeF9vdmVyX2Vycm9yczsKKyAgX191MzIgcnhfY3JjX2Vycm9yczsKKyAgX191MzIgcnhfZnJhbWVfZXJyb3JzOworICBfX3UzMiByeF9maWZvX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfbWlzc2VkX2Vycm9yczsKLSBfX3UzMiB0eF9hYm9ydGVkX2Vycm9yczsKLSBfX3UzMiB0eF9jYXJyaWVyX2Vycm9yczsKLSBfX3UzMiB0eF9maWZvX2Vycm9yczsKKyAgX191MzIgcnhfbWlzc2VkX2Vycm9yczsKKyAgX191MzIgdHhfYWJvcnRlZF9lcnJvcnM7CisgIF9fdTMyIHR4X2NhcnJpZXJfZXJyb3JzOworICBfX3UzMiB0eF9maWZvX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfaGVhcnRiZWF0X2Vycm9yczsKLSBfX3UzMiB0eF93aW5kb3dfZXJyb3JzOwotIF9fdTMyIHJ4X2NvbXByZXNzZWQ7Ci0gX191MzIgdHhfY29tcHJlc3NlZDsKKyAgX191MzIgdHhfaGVhcnRiZWF0X2Vycm9yczsKKyAgX191MzIgdHhfd2luZG93X2Vycm9yczsKKyAgX191MzIgcnhfY29tcHJlc3NlZDsKKyAgX191MzIgdHhfY29tcHJlc3NlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJ0bmxfbGlua19zdGF0czY0IHsKLSBfX3U2NCByeF9wYWNrZXRzOwotIF9fdTY0IHR4X3BhY2tldHM7CisgIF9fdTY0IHJ4X3BhY2tldHM7CisgIF9fdTY0IHR4X3BhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJ4X2J5dGVzOwotIF9fdTY0IHR4X2J5dGVzOwotIF9fdTY0IHJ4X2Vycm9yczsKLSBfX3U2NCB0eF9lcnJvcnM7CisgIF9fdTY0IHJ4X2J5dGVzOworICBfX3U2NCB0eF9ieXRlczsKKyAgX191NjQgcnhfZXJyb3JzOworICBfX3U2NCB0eF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJ4X2Ryb3BwZWQ7Ci0gX191NjQgdHhfZHJvcHBlZDsKLSBfX3U2NCBtdWx0aWNhc3Q7Ci0gX191NjQgY29sbGlzaW9uczsKKyAgX191NjQgcnhfZHJvcHBlZDsKKyAgX191NjQgdHhfZHJvcHBlZDsKKyAgX191NjQgbXVsdGljYXN0OworICBfX3U2NCBjb2xsaXNpb25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByeF9sZW5ndGhfZXJyb3JzOwotIF9fdTY0IHJ4X292ZXJfZXJyb3JzOwotIF9fdTY0IHJ4X2NyY19lcnJvcnM7Ci0gX191NjQgcnhfZnJhbWVfZXJyb3JzOworICBfX3U2NCByeF9sZW5ndGhfZXJyb3JzOworICBfX3U2NCByeF9vdmVyX2Vycm9yczsKKyAgX191NjQgcnhfY3JjX2Vycm9yczsKKyAgX191NjQgcnhfZnJhbWVfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByeF9maWZvX2Vycm9yczsKLSBfX3U2NCByeF9taXNzZWRfZXJyb3JzOwotIF9fdTY0IHR4X2Fib3J0ZWRfZXJyb3JzOwotIF9fdTY0IHR4X2NhcnJpZXJfZXJyb3JzOworICBfX3U2NCByeF9maWZvX2Vycm9yczsKKyAgX191NjQgcnhfbWlzc2VkX2Vycm9yczsKKyAgX191NjQgdHhfYWJvcnRlZF9lcnJvcnM7CisgIF9fdTY0IHR4X2NhcnJpZXJfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0eF9maWZvX2Vycm9yczsKLSBfX3U2NCB0eF9oZWFydGJlYXRfZXJyb3JzOwotIF9fdTY0IHR4X3dpbmRvd19lcnJvcnM7Ci0gX191NjQgcnhfY29tcHJlc3NlZDsKKyAgX191NjQgdHhfZmlmb19lcnJvcnM7CisgIF9fdTY0IHR4X2hlYXJ0YmVhdF9lcnJvcnM7CisgIF9fdTY0IHR4X3dpbmRvd19lcnJvcnM7CisgIF9fdTY0IHJ4X2NvbXByZXNzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHR4X2NvbXByZXNzZWQ7CisgIF9fdTY0IHR4X2NvbXByZXNzZWQ7CiB9Owogc3RydWN0IHJ0bmxfbGlua19pZm1hcCB7Ci0gX191NjQgbWVtX3N0YXJ0OworICBfX3U2NCBtZW1fc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1lbV9lbmQ7Ci0gX191NjQgYmFzZV9hZGRyOwotIF9fdTE2IGlycTsKLSBfX3U4IGRtYTsKKyAgX191NjQgbWVtX2VuZDsKKyAgX191NjQgYmFzZV9hZGRyOworICBfX3UxNiBpcnE7CisgIF9fdTggZG1hOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvcnQ7CisgIF9fdTggcG9ydDsKIH07CiBlbnVtIHsKLSBJRkxBX1VOU1BFQywKKyAgSUZMQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQUREUkVTUywKLSBJRkxBX0JST0FEQ0FTVCwKLSBJRkxBX0lGTkFNRSwKLSBJRkxBX01UVSwKKyAgSUZMQV9BRERSRVNTLAorICBJRkxBX0JST0FEQ0FTVCwKKyAgSUZMQV9JRk5BTUUsCisgIElGTEFfTVRVLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0xJTkssCi0gSUZMQV9RRElTQywKLSBJRkxBX1NUQVRTLAotIElGTEFfQ09TVCwKKyAgSUZMQV9MSU5LLAorICBJRkxBX1FESVNDLAorICBJRkxBX1NUQVRTLAorICBJRkxBX0NPU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX0NPU1QgSUZMQV9DT1NUCi0gSUZMQV9QUklPUklUWSwKKyAgSUZMQV9QUklPUklUWSwKICNkZWZpbmUgSUZMQV9QUklPUklUWSBJRkxBX1BSSU9SSVRZCi0gSUZMQV9NQVNURVIsCisgIElGTEFfTUFTVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9NQVNURVIgSUZMQV9NQVNURVIKLSBJRkxBX1dJUkVMRVNTLAorICBJRkxBX1dJUkVMRVNTLAogI2RlZmluZSBJRkxBX1dJUkVMRVNTIElGTEFfV0lSRUxFU1MKLSBJRkxBX1BST1RJTkZPLAorICBJRkxBX1BST1RJTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9QUk9USU5GTyBJRkxBX1BST1RJTkZPCi0gSUZMQV9UWFFMRU4sCisgIElGTEFfVFhRTEVOLAogI2RlZmluZSBJRkxBX1RYUUxFTiBJRkxBX1RYUUxFTgotIElGTEFfTUFQLAorICBJRkxBX01BUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfTUFQIElGTEFfTUFQCi0gSUZMQV9XRUlHSFQsCisgIElGTEFfV0VJR0hULAogI2RlZmluZSBJRkxBX1dFSUdIVCBJRkxBX1dFSUdIVAotIElGTEFfT1BFUlNUQVRFLAorICBJRkxBX09QRVJTVEFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9MSU5LTU9ERSwKLSBJRkxBX0xJTktJTkZPLAorICBJRkxBX0xJTktNT0RFLAorICBJRkxBX0xJTktJTkZPLAogI2RlZmluZSBJRkxBX0xJTktJTkZPIElGTEFfTElOS0lORk8KLSBJRkxBX05FVF9OU19QSUQsCisgIElGTEFfTkVUX05TX1BJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JRkFMSUFTLAotIElGTEFfTlVNX1ZGLAotIElGTEFfVkZJTkZPX0xJU1QsCi0gSUZMQV9TVEFUUzY0LAorICBJRkxBX0lGQUxJQVMsCisgIElGTEFfTlVNX1ZGLAorICBJRkxBX1ZGSU5GT19MSVNULAorICBJRkxBX1NUQVRTNjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVkZfUE9SVFMsCi0gSUZMQV9QT1JUX1NFTEYsCi0gSUZMQV9BRl9TUEVDLAotIElGTEFfR1JPVVAsCisgIElGTEFfVkZfUE9SVFMsCisgIElGTEFfUE9SVF9TRUxGLAorICBJRkxBX0FGX1NQRUMsCisgIElGTEFfR1JPVVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfTkVUX05TX0ZELAotIElGTEFfRVhUX01BU0ssCi0gSUZMQV9QUk9NSVNDVUlUWSwKKyAgSUZMQV9ORVRfTlNfRkQsCisgIElGTEFfRVhUX01BU0ssCisgIElGTEFfUFJPTUlTQ1VJVFksCiAjZGVmaW5lIElGTEFfUFJPTUlTQ1VJVFkgSUZMQV9QUk9NSVNDVUlUWQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX05VTV9UWF9RVUVVRVMsCi0gSUZMQV9OVU1fUlhfUVVFVUVTLAotIElGTEFfQ0FSUklFUiwKLSBJRkxBX1BIWVNfUE9SVF9JRCwKKyAgSUZMQV9OVU1fVFhfUVVFVUVTLAorICBJRkxBX05VTV9SWF9RVUVVRVMsCisgIElGTEFfQ0FSUklFUiwKKyAgSUZMQV9QSFlTX1BPUlRfSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fSUZMQV9NQVgKKyAgSUZMQV9DQVJSSUVSX0NIQU5HRVMsCisgIF9fSUZMQV9NQVgKIH07CiAjZGVmaW5lIElGTEFfTUFYIChfX0lGTEFfTUFYIC0gMSkKLSNkZWZpbmUgSUZMQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyKikoKChjaGFyKikocikpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBpZmluZm9tc2cpKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkxBX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLHNpemVvZihzdHJ1Y3QgaWZpbmZvbXNnKSkKKyNkZWZpbmUgSUZMQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgaWZpbmZvbXNnKSkpKQorI2RlZmluZSBJRkxBX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLCBzaXplb2Yoc3RydWN0IGlmaW5mb21zZykpCiBlbnVtIHsKLSBJRkxBX0lORVRfVU5TUEVDLAotIElGTEFfSU5FVF9DT05GLAorICBJRkxBX0lORVRfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfSU5FVF9NQVgsCisgIElGTEFfSU5FVF9DT05GLAorICBfX0lGTEFfSU5FVF9NQVgsCiB9OwogI2RlZmluZSBJRkxBX0lORVRfTUFYIChfX0lGTEFfSU5FVF9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBJRkxBX0lORVQ2X1VOU1BFQywKKyAgSUZMQV9JTkVUNl9GTEFHUywKKyAgSUZMQV9JTkVUNl9DT05GLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lORVQ2X1VOU1BFQywKLSBJRkxBX0lORVQ2X0ZMQUdTLAotIElGTEFfSU5FVDZfQ09ORiwKLSBJRkxBX0lORVQ2X1NUQVRTLAorICBJRkxBX0lORVQ2X1NUQVRTLAorICBJRkxBX0lORVQ2X01DQVNULAorICBJRkxBX0lORVQ2X0NBQ0hFSU5GTywKKyAgSUZMQV9JTkVUNl9JQ01QNlNUQVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lORVQ2X01DQVNULAotIElGTEFfSU5FVDZfQ0FDSEVJTkZPLAotIElGTEFfSU5FVDZfSUNNUDZTVEFUUywKLSBJRkxBX0lORVQ2X1RPS0VOLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfSU5FVDZfTUFYCisgIElGTEFfSU5FVDZfVE9LRU4sCisgIElGTEFfSU5FVDZfQUREUl9HRU5fTU9ERSwKKyAgX19JRkxBX0lORVQ2X01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfSU5FVDZfTUFYIChfX0lGTEFfSU5FVDZfTUFYIC0gMSkKLWVudW0geworZW51bSBpbjZfYWRkcl9nZW5fbW9kZSB7CisgIElONl9BRERSX0dFTl9NT0RFX0VVSTY0LAorICBJTjZfQUREUl9HRU5fTU9ERV9OT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCUklER0VfTU9ERV9VTlNQRUMsCi0gQlJJREdFX01PREVfSEFJUlBJTiwKIH07CiBlbnVtIHsKKyAgSUZMQV9CUl9VTlNQRUMsCisgIElGTEFfQlJfRk9SV0FSRF9ERUxBWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CUlBPUlRfVU5TUEVDLAotIElGTEFfQlJQT1JUX1NUQVRFLAotIElGTEFfQlJQT1JUX1BSSU9SSVRZLAotIElGTEFfQlJQT1JUX0NPU1QsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQlJQT1JUX01PREUsCi0gSUZMQV9CUlBPUlRfR1VBUkQsCi0gSUZMQV9CUlBPUlRfUFJPVEVDVCwKLSBJRkxBX0JSUE9SVF9GQVNUX0xFQVZFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JSUE9SVF9MRUFSTklORywKLSBJRkxBX0JSUE9SVF9VTklDQVNUX0ZMT09ELAotIF9fSUZMQV9CUlBPUlRfTUFYCisgIElGTEFfQlJfSEVMTE9fVElNRSwKKyAgSUZMQV9CUl9NQVhfQUdFLAorICBfX0lGTEFfQlJfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElGTEFfQlJfTUFYIChfX0lGTEFfQlJfTUFYIC0gMSkKK2VudW0geworICBCUklER0VfTU9ERV9VTlNQRUMsCisgIEJSSURHRV9NT0RFX0hBSVJQSU4sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBJRkxBX0JSUE9SVF9VTlNQRUMsCisgIElGTEFfQlJQT1JUX1NUQVRFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9CUlBPUlRfUFJJT1JJVFksCisgIElGTEFfQlJQT1JUX0NPU1QsCisgIElGTEFfQlJQT1JUX01PREUsCisgIElGTEFfQlJQT1JUX0dVQVJELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9CUlBPUlRfUFJPVEVDVCwKKyAgSUZMQV9CUlBPUlRfRkFTVF9MRUFWRSwKKyAgSUZMQV9CUlBPUlRfTEVBUk5JTkcsCisgIElGTEFfQlJQT1JUX1VOSUNBU1RfRkxPT0QsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lGTEFfQlJQT1JUX01BWAorfTsKICNkZWZpbmUgSUZMQV9CUlBPUlRfTUFYIChfX0lGTEFfQlJQT1JUX01BWCAtIDEpCiBzdHJ1Y3QgaWZsYV9jYWNoZWluZm8gewotIF9fdTMyIG1heF9yZWFzbV9sZW47Ci0gX191MzIgdHN0YW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZWFjaGFibGVfdGltZTsKLSBfX3UzMiByZXRyYW5zX3RpbWU7CisgIF9fdTMyIG1heF9yZWFzbV9sZW47CisgIF9fdTMyIHRzdGFtcDsKKyAgX191MzIgcmVhY2hhYmxlX3RpbWU7CisgIF9fdTMyIHJldHJhbnNfdGltZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7CisgIElGTEFfSU5GT19VTlNQRUMsCisgIElGTEFfSU5GT19LSU5ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lORk9fVU5TUEVDLAotIElGTEFfSU5GT19LSU5ELAotIElGTEFfSU5GT19EQVRBLAotIElGTEFfSU5GT19YU1RBVFMsCisgIElGTEFfSU5GT19EQVRBLAorICBJRkxBX0lORk9fWFNUQVRTLAorICBJRkxBX0lORk9fU0xBVkVfS0lORCwKKyAgSUZMQV9JTkZPX1NMQVZFX0RBVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSU5GT19TTEFWRV9LSU5ELAotIElGTEFfSU5GT19TTEFWRV9EQVRBLAotIF9fSUZMQV9JTkZPX01BWCwKKyAgX19JRkxBX0lORk9fTUFYLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfSU5GT19NQVggKF9fSUZMQV9JTkZPX01BWCAtIDEpCiBlbnVtIHsKLSBJRkxBX1ZMQU5fVU5TUEVDLAotIElGTEFfVkxBTl9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WTEFOX0ZMQUdTLAotIElGTEFfVkxBTl9FR1JFU1NfUU9TLAotIElGTEFfVkxBTl9JTkdSRVNTX1FPUywKLSBJRkxBX1ZMQU5fUFJPVE9DT0wsCisgIElGTEFfVkxBTl9VTlNQRUMsCisgIElGTEFfVkxBTl9JRCwKKyAgSUZMQV9WTEFOX0ZMQUdTLAorICBJRkxBX1ZMQU5fRUdSRVNTX1FPUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JRkxBX1ZMQU5fTUFYLAorICBJRkxBX1ZMQU5fSU5HUkVTU19RT1MsCisgIElGTEFfVkxBTl9QUk9UT0NPTCwKKyAgX19JRkxBX1ZMQU5fTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfVkxBTl9NQVggKF9fSUZMQV9WTEFOX01BWCAtIDEpCiBzdHJ1Y3QgaWZsYV92bGFuX2ZsYWdzIHsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIG1hc2s7CiB9OwogZW51bSB7CisgIElGTEFfVkxBTl9RT1NfVU5TUEVDLAorICBJRkxBX1ZMQU5fUU9TX01BUFBJTkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVkxBTl9RT1NfVU5TUEVDLAotIElGTEFfVkxBTl9RT1NfTUFQUElORywKLSBfX0lGTEFfVkxBTl9RT1NfTUFYCisgIF9fSUZMQV9WTEFOX1FPU19NQVgKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX1ZMQU5fUU9TX01BWCAoX19JRkxBX1ZMQU5fUU9TX01BWCAtIDEpCiBzdHJ1Y3QgaWZsYV92bGFuX3Fvc19tYXBwaW5nIHsKLSBfX3UzMiBmcm9tOwotIF9fdTMyIHRvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZnJvbTsKKyAgX191MzIgdG87CiB9OwogZW51bSB7Ci0gSUZMQV9NQUNWTEFOX1VOU1BFQywKLSBJRkxBX01BQ1ZMQU5fTU9ERSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9NQUNWTEFOX0ZMQUdTLAotIF9fSUZMQV9NQUNWTEFOX01BWCwKKyAgSUZMQV9NQUNWTEFOX1VOU1BFQywKKyAgSUZMQV9NQUNWTEFOX01PREUsCisgIElGTEFfTUFDVkxBTl9GTEFHUywKKyAgSUZMQV9NQUNWTEFOX01BQ0FERFJfTU9ERSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElGTEFfTUFDVkxBTl9NQUNBRERSLAorICBJRkxBX01BQ1ZMQU5fTUFDQUREUl9EQVRBLAorICBJRkxBX01BQ1ZMQU5fTUFDQUREUl9DT1VOVCwKKyAgX19JRkxBX01BQ1ZMQU5fTUFYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElGTEFfTUFDVkxBTl9NQVggKF9fSUZMQV9NQUNWTEFOX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtYWN2bGFuX21vZGUgewotIE1BQ1ZMQU5fTU9ERV9QUklWQVRFID0gMSwKLSBNQUNWTEFOX01PREVfVkVQQSA9IDIsCi0gTUFDVkxBTl9NT0RFX0JSSURHRSA9IDQsCisgIE1BQ1ZMQU5fTU9ERV9QUklWQVRFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUFDVkxBTl9NT0RFX1BBU1NUSFJVID0gOCwKKyAgTUFDVkxBTl9NT0RFX1ZFUEEgPSAyLAorICBNQUNWTEFOX01PREVfQlJJREdFID0gNCwKKyAgTUFDVkxBTl9NT0RFX1BBU1NUSFJVID0gOCwKKyAgTUFDVkxBTl9NT0RFX1NPVVJDRSA9IDE2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIG1hY3ZsYW5fbWFjYWRkcl9tb2RlIHsKKyAgTUFDVkxBTl9NQUNBRERSX0FERCwKKyAgTUFDVkxBTl9NQUNBRERSX0RFTCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1BQ1ZMQU5fTUFDQUREUl9GTFVTSCwKKyAgTUFDVkxBTl9NQUNBRERSX1NFVCwKIH07CiAjZGVmaW5lIE1BQ1ZMQU5fRkxBR19OT1BST01JU0MgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBJRkxBX1ZYTEFOX1VOU1BFQywKKyAgSUZMQV9WWExBTl9JRCwKKyAgSUZMQV9WWExBTl9HUk9VUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WWExBTl9VTlNQRUMsCi0gSUZMQV9WWExBTl9JRCwKLSBJRkxBX1ZYTEFOX0dST1VQLAotIElGTEFfVlhMQU5fTElOSywKKyAgSUZMQV9WWExBTl9MSU5LLAorICBJRkxBX1ZYTEFOX0xPQ0FMLAorICBJRkxBX1ZYTEFOX1RUTCwKKyAgSUZMQV9WWExBTl9UT1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVlhMQU5fTE9DQUwsCi0gSUZMQV9WWExBTl9UVEwsCi0gSUZMQV9WWExBTl9UT1MsCi0gSUZMQV9WWExBTl9MRUFSTklORywKKyAgSUZMQV9WWExBTl9MRUFSTklORywKKyAgSUZMQV9WWExBTl9BR0VJTkcsCisgIElGTEFfVlhMQU5fTElNSVQsCisgIElGTEFfVlhMQU5fUE9SVF9SQU5HRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WWExBTl9BR0VJTkcsCi0gSUZMQV9WWExBTl9MSU1JVCwKLSBJRkxBX1ZYTEFOX1BPUlRfUkFOR0UsCi0gSUZMQV9WWExBTl9QUk9YWSwKKyAgSUZMQV9WWExBTl9QUk9YWSwKKyAgSUZMQV9WWExBTl9SU0MsCisgIElGTEFfVlhMQU5fTDJNSVNTLAorICBJRkxBX1ZYTEFOX0wzTUlTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WWExBTl9SU0MsCi0gSUZMQV9WWExBTl9MMk1JU1MsCi0gSUZMQV9WWExBTl9MM01JU1MsCi0gSUZMQV9WWExBTl9QT1JULAorICBJRkxBX1ZYTEFOX1BPUlQsCisgIElGTEFfVlhMQU5fR1JPVVA2LAorICBJRkxBX1ZYTEFOX0xPQ0FMNiwKKyAgSUZMQV9WWExBTl9VRFBfQ1NVTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WWExBTl9HUk9VUDYsCi0gSUZMQV9WWExBTl9MT0NBTDYsCi0gX19JRkxBX1ZYTEFOX01BWAorICBJRkxBX1ZYTEFOX1VEUF9aRVJPX0NTVU02X1RYLAorICBJRkxBX1ZYTEFOX1VEUF9aRVJPX0NTVU02X1JYLAorICBfX0lGTEFfVlhMQU5fTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9WWExBTl9NQVggKF9fSUZMQV9WWExBTl9NQVggLSAxKQogc3RydWN0IGlmbGFfdnhsYW5fcG9ydF9yYW5nZSB7Ci0gX19iZTE2IGxvdzsKLSBfX2JlMTYgaGlnaDsKKyAgX19iZTE2IGxvdzsKKyAgX19iZTE2IGhpZ2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIElGTEFfQk9ORF9VTlNQRUMsCi0gSUZMQV9CT05EX01PREUsCisgIElGTEFfQk9ORF9VTlNQRUMsCisgIElGTEFfQk9ORF9NT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfQUNUSVZFX1NMQVZFLAotIElGTEFfQk9ORF9NSUlNT04sCi0gSUZMQV9CT05EX1VQREVMQVksCi0gSUZMQV9CT05EX0RPV05ERUxBWSwKKyAgSUZMQV9CT05EX0FDVElWRV9TTEFWRSwKKyAgSUZMQV9CT05EX01JSU1PTiwKKyAgSUZMQV9CT05EX1VQREVMQVksCisgIElGTEFfQk9ORF9ET1dOREVMQVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQk9ORF9VU0VfQ0FSUklFUiwKLSBJRkxBX0JPTkRfQVJQX0lOVEVSVkFMLAotIElGTEFfQk9ORF9BUlBfSVBfVEFSR0VULAotIElGTEFfQk9ORF9BUlBfVkFMSURBVEUsCisgIElGTEFfQk9ORF9VU0VfQ0FSUklFUiwKKyAgSUZMQV9CT05EX0FSUF9JTlRFUlZBTCwKKyAgSUZMQV9CT05EX0FSUF9JUF9UQVJHRVQsCisgIElGTEFfQk9ORF9BUlBfVkFMSURBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQk9ORF9BUlBfQUxMX1RBUkdFVFMsCi0gSUZMQV9CT05EX1BSSU1BUlksCi0gSUZMQV9CT05EX1BSSU1BUllfUkVTRUxFQ1QsCi0gSUZMQV9CT05EX0ZBSUxfT1ZFUl9NQUMsCisgIElGTEFfQk9ORF9BUlBfQUxMX1RBUkdFVFMsCisgIElGTEFfQk9ORF9QUklNQVJZLAorICBJRkxBX0JPTkRfUFJJTUFSWV9SRVNFTEVDVCwKKyAgSUZMQV9CT05EX0ZBSUxfT1ZFUl9NQUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQk9ORF9YTUlUX0hBU0hfUE9MSUNZLAotIElGTEFfQk9ORF9SRVNFTkRfSUdNUCwKLSBJRkxBX0JPTkRfTlVNX1BFRVJfTk9USUYsCi0gSUZMQV9CT05EX0FMTF9TTEFWRVNfQUNUSVZFLAorICBJRkxBX0JPTkRfWE1JVF9IQVNIX1BPTElDWSwKKyAgSUZMQV9CT05EX1JFU0VORF9JR01QLAorICBJRkxBX0JPTkRfTlVNX1BFRVJfTk9USUYsCisgIElGTEFfQk9ORF9BTExfU0xBVkVTX0FDVElWRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX01JTl9MSU5LUywKLSBJRkxBX0JPTkRfTFBfSU5URVJWQUwsCi0gSUZMQV9CT05EX1BBQ0tFVFNfUEVSX1NMQVZFLAotIElGTEFfQk9ORF9BRF9MQUNQX1JBVEUsCisgIElGTEFfQk9ORF9NSU5fTElOS1MsCisgIElGTEFfQk9ORF9MUF9JTlRFUlZBTCwKKyAgSUZMQV9CT05EX1BBQ0tFVFNfUEVSX1NMQVZFLAorICBJRkxBX0JPTkRfQURfTEFDUF9SQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfQURfU0VMRUNULAotIElGTEFfQk9ORF9BRF9JTkZPLAotIF9fSUZMQV9CT05EX01BWCwKKyAgSUZMQV9CT05EX0FEX1NFTEVDVCwKKyAgSUZMQV9CT05EX0FEX0lORk8sCisgIF9fSUZMQV9CT05EX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX0JPTkRfTUFYIChfX0lGTEFfQk9ORF9NQVggLSAxKQogZW51bSB7Ci0gSUZMQV9CT05EX0FEX0lORk9fVU5TUEVDLAotIElGTEFfQk9ORF9BRF9JTkZPX0FHR1JFR0FUT1IsCisgIElGTEFfQk9ORF9BRF9JTkZPX1VOU1BFQywKKyAgSUZMQV9CT05EX0FEX0lORk9fQUdHUkVHQVRPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX0FEX0lORk9fTlVNX1BPUlRTLAotIElGTEFfQk9ORF9BRF9JTkZPX0FDVE9SX0tFWSwKLSBJRkxBX0JPTkRfQURfSU5GT19QQVJUTkVSX0tFWSwKLSBJRkxBX0JPTkRfQURfSU5GT19QQVJUTkVSX01BQywKKyAgSUZMQV9CT05EX0FEX0lORk9fTlVNX1BPUlRTLAorICBJRkxBX0JPTkRfQURfSU5GT19BQ1RPUl9LRVksCisgIElGTEFfQk9ORF9BRF9JTkZPX1BBUlRORVJfS0VZLAorICBJRkxBX0JPTkRfQURfSU5GT19QQVJUTkVSX01BQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JRkxBX0JPTkRfQURfSU5GT19NQVgsCisgIF9fSUZMQV9CT05EX0FEX0lORk9fTUFYLAogfTsKICNkZWZpbmUgSUZMQV9CT05EX0FEX0lORk9fTUFYIChfX0lGTEFfQk9ORF9BRF9JTkZPX01BWCAtIDEpCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX1NMQVZFX1VOU1BFQywKLSBJRkxBX0JPTkRfU0xBVkVfU1RBVEUsCi0gSUZMQV9CT05EX1NMQVZFX01JSV9TVEFUVVMsCi0gSUZMQV9CT05EX1NMQVZFX0xJTktfRkFJTFVSRV9DT1VOVCwKKyAgSUZMQV9CT05EX1NMQVZFX1VOU1BFQywKKyAgSUZMQV9CT05EX1NMQVZFX1NUQVRFLAorICBJRkxBX0JPTkRfU0xBVkVfTUlJX1NUQVRVUywKKyAgSUZMQV9CT05EX1NMQVZFX0xJTktfRkFJTFVSRV9DT1VOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX1NMQVZFX1BFUk1fSFdBRERSLAotIElGTEFfQk9ORF9TTEFWRV9RVUVVRV9JRCwKLSBJRkxBX0JPTkRfU0xBVkVfQURfQUdHUkVHQVRPUl9JRCwKLSBfX0lGTEFfQk9ORF9TTEFWRV9NQVgsCisgIElGTEFfQk9ORF9TTEFWRV9QRVJNX0hXQUREUiwKKyAgSUZMQV9CT05EX1NMQVZFX1FVRVVFX0lELAorICBJRkxBX0JPTkRfU0xBVkVfQURfQUdHUkVHQVRPUl9JRCwKKyAgX19JRkxBX0JPTkRfU0xBVkVfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElGTEFfQk9ORF9TTEFWRV9NQVggKF9fSUZMQV9CT05EX1NMQVZFX01BWCAtIDEpCiBlbnVtIHsKLSBJRkxBX1ZGX0lORk9fVU5TUEVDLAorICBJRkxBX1ZGX0lORk9fVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZGX0lORk8sCi0gX19JRkxBX1ZGX0lORk9fTUFYLAorICBJRkxBX1ZGX0lORk8sCisgIF9fSUZMQV9WRl9JTkZPX01BWCwKIH07CiAjZGVmaW5lIElGTEFfVkZfSU5GT19NQVggKF9fSUZMQV9WRl9JTkZPX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSUZMQV9WRl9VTlNQRUMsCi0gSUZMQV9WRl9NQUMsCi0gSUZMQV9WRl9WTEFOLAorICBJRkxBX1ZGX1VOU1BFQywKKyAgSUZMQV9WRl9NQUMsCisgIElGTEFfVkZfVkxBTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WRl9UWF9SQVRFLAotIElGTEFfVkZfU1BPT0ZDSEssCi0gSUZMQV9WRl9MSU5LX1NUQVRFLAotIF9fSUZMQV9WRl9NQVgsCisgIElGTEFfVkZfVFhfUkFURSwKKyAgSUZMQV9WRl9TUE9PRkNISywKKyAgSUZMQV9WRl9MSU5LX1NUQVRFLAorICBJRkxBX1ZGX1JBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lGTEFfVkZfTUFYLAogfTsKICNkZWZpbmUgSUZMQV9WRl9NQVggKF9fSUZMQV9WRl9NQVggLSAxKQogc3RydWN0IGlmbGFfdmZfbWFjIHsKLSBfX3UzMiB2ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtYWNbMzJdOworICBfX3UzMiB2ZjsKKyAgX191OCBtYWNbMzJdOwogfTsKIHN0cnVjdCBpZmxhX3ZmX3ZsYW4gewotIF9fdTMyIHZmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2bGFuOwotIF9fdTMyIHFvczsKKyAgX191MzIgdmY7CisgIF9fdTMyIHZsYW47CisgIF9fdTMyIHFvczsKIH07Ci1zdHJ1Y3QgaWZsYV92Zl90eF9yYXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmY7Ci0gX191MzIgcmF0ZTsKK3N0cnVjdCBpZmxhX3ZmX3R4X3JhdGUgeworICBfX3UzMiB2ZjsKKyAgX191MzIgcmF0ZTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGlmbGFfdmZfcmF0ZSB7CisgIF9fdTMyIHZmOworICBfX3UzMiBtaW5fdHhfcmF0ZTsKKyAgX191MzIgbWF4X3R4X3JhdGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpZmxhX3ZmX3Nwb29mY2hrIHsKKyAgX191MzIgdmY7CisgIF9fdTMyIHNldHRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZmOwotIF9fdTMyIHNldHRpbmc7CiB9OwogZW51bSB7CisgIElGTEFfVkZfTElOS19TVEFURV9BVVRPLAorICBJRkxBX1ZGX0xJTktfU1RBVEVfRU5BQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZGX0xJTktfU1RBVEVfQVVUTywKLSBJRkxBX1ZGX0xJTktfU1RBVEVfRU5BQkxFLAotIElGTEFfVkZfTElOS19TVEFURV9ESVNBQkxFLAotIF9fSUZMQV9WRl9MSU5LX1NUQVRFX01BWCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElGTEFfVkZfTElOS19TVEFURV9ESVNBQkxFLAorICBfX0lGTEFfVkZfTElOS19TVEFURV9NQVgsCiB9Owogc3RydWN0IGlmbGFfdmZfbGlua19zdGF0ZSB7Ci0gX191MzIgdmY7Ci0gX191MzIgbGlua19zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHZmOworICBfX3UzMiBsaW5rX3N0YXRlOwogfTsKIGVudW0gewotIElGTEFfVkZfUE9SVF9VTlNQRUMsCi0gSUZMQV9WRl9QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfVkZfUE9SVF9NQVgsCisgIElGTEFfVkZfUE9SVF9VTlNQRUMsCisgIElGTEFfVkZfUE9SVCwKKyAgX19JRkxBX1ZGX1BPUlRfTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfVkZfUE9SVF9NQVggKF9fSUZMQV9WRl9QT1JUX01BWCAtIDEpCiBlbnVtIHsKKyAgSUZMQV9QT1JUX1VOU1BFQywKKyAgSUZMQV9QT1JUX1ZGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1BPUlRfVU5TUEVDLAotIElGTEFfUE9SVF9WRiwKLSBJRkxBX1BPUlRfUFJPRklMRSwKLSBJRkxBX1BPUlRfVlNJX1RZUEUsCisgIElGTEFfUE9SVF9QUk9GSUxFLAorICBJRkxBX1BPUlRfVlNJX1RZUEUsCisgIElGTEFfUE9SVF9JTlNUQU5DRV9VVUlELAorICBJRkxBX1BPUlRfSE9TVF9VVUlELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1BPUlRfSU5TVEFOQ0VfVVVJRCwKLSBJRkxBX1BPUlRfSE9TVF9VVUlELAotIElGTEFfUE9SVF9SRVFVRVNULAotIElGTEFfUE9SVF9SRVNQT05TRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JRkxBX1BPUlRfTUFYLAorICBJRkxBX1BPUlRfUkVRVUVTVCwKKyAgSUZMQV9QT1JUX1JFU1BPTlNFLAorICBfX0lGTEFfUE9SVF9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9QT1JUX01BWCAoX19JRkxBX1BPUlRfTUFYIC0gMSkKICNkZWZpbmUgUE9SVF9QUk9GSUxFX01BWCA0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUE9SVF9VVUlEX01BWCAxNgotI2RlZmluZSBQT1JUX1NFTEZfVkYgLTEKLWVudW0gewotIFBPUlRfUkVRVUVTVF9QUkVBU1NPQ0lBVEUgPSAwLAorI2RlZmluZSBQT1JUX1NFTEZfVkYgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBPUlRfUkVRVUVTVF9QUkVBU1NPQ0lBVEVfUlIsCi0gUE9SVF9SRVFVRVNUX0FTU09DSUFURSwKLSBQT1JUX1JFUVVFU1RfRElTQVNTT0NJQVRFLAorZW51bSB7CisgIFBPUlRfUkVRVUVTVF9QUkVBU1NPQ0lBVEUgPSAwLAorICBQT1JUX1JFUVVFU1RfUFJFQVNTT0NJQVRFX1JSLAorICBQT1JUX1JFUVVFU1RfQVNTT0NJQVRFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUE9SVF9SRVFVRVNUX0RJU0FTU09DSUFURSwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gUE9SVF9WRFBfUkVTUE9OU0VfU1VDQ0VTUyA9IDAsCi0gUE9SVF9WRFBfUkVTUE9OU0VfSU5WQUxJRF9GT1JNQVQsCi0gUE9SVF9WRFBfUkVTUE9OU0VfSU5TVUZGSUNJRU5UX1JFU09VUkNFUywKKyAgUE9SVF9WRFBfUkVTUE9OU0VfU1VDQ0VTUyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBPUlRfVkRQX1JFU1BPTlNFX1VOVVNFRF9WVElELAotIFBPUlRfVkRQX1JFU1BPTlNFX1ZUSURfVklPTEFUSU9OLAotIFBPUlRfVkRQX1JFU1BPTlNFX1ZUSURfVkVSU0lPTl9WSU9BTFRJT04sCi0gUE9SVF9WRFBfUkVTUE9OU0VfT1VUX09GX1NZTkMsCisgIFBPUlRfVkRQX1JFU1BPTlNFX0lOVkFMSURfRk9STUFULAorICBQT1JUX1ZEUF9SRVNQT05TRV9JTlNVRkZJQ0lFTlRfUkVTT1VSQ0VTLAorICBQT1JUX1ZEUF9SRVNQT05TRV9VTlVTRURfVlRJRCwKKyAgUE9SVF9WRFBfUkVTUE9OU0VfVlRJRF9WSU9MQVRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBPUlRfUFJPRklMRV9SRVNQT05TRV9TVUNDRVNTID0gMHgxMDAsCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOUFJPR1JFU1MsCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOVkFMSUQsCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0JBRFNUQVRFLAorICBQT1JUX1ZEUF9SRVNQT05TRV9WVElEX1ZFUlNJT05fVklPQUxUSU9OLAorICBQT1JUX1ZEUF9SRVNQT05TRV9PVVRfT0ZfU1lOQywKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX1NVQ0NFU1MgPSAweDEwMCwKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOUFJPR1JFU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBPUlRfUFJPRklMRV9SRVNQT05TRV9JTlNVRkZJQ0lFTlRfUkVTT1VSQ0VTLAotIFBPUlRfUFJPRklMRV9SRVNQT05TRV9FUlJPUiwKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOVkFMSUQsCisgIFBPUlRfUFJPRklMRV9SRVNQT05TRV9CQURTVEFURSwKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOU1VGRklDSUVOVF9SRVNPVVJDRVMsCisgIFBPUlRfUFJPRklMRV9SRVNQT05TRV9FUlJPUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlmbGFfcG9ydF92c2kgeworICBfX3U4IHZzaV9tZ3JfaWQ7CisgIF9fdTggdnNpX3R5cGVfaWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdnNpX21ncl9pZDsKLSBfX3U4IHZzaV90eXBlX2lkWzNdOwotIF9fdTggdnNpX3R5cGVfdmVyc2lvbjsKLSBfX3U4IHBhZFszXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggdnNpX3R5cGVfdmVyc2lvbjsKKyAgX191OCBwYWRbM107CiB9OwogZW51bSB7Ci0gSUZMQV9JUE9JQl9VTlNQRUMsCi0gSUZMQV9JUE9JQl9QS0VZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lQT0lCX01PREUsCi0gSUZMQV9JUE9JQl9VTUNBU1QsCi0gX19JRkxBX0lQT0lCX01BWAorICBJRkxBX0lQT0lCX1VOU1BFQywKKyAgSUZMQV9JUE9JQl9QS0VZLAorICBJRkxBX0lQT0lCX01PREUsCisgIElGTEFfSVBPSUJfVU1DQVNULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19JRkxBX0lQT0lCX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUE9JQl9NT0RFX0RBVEFHUkFNID0gMCwKLSBJUE9JQl9NT0RFX0NPTk5FQ1RFRCA9IDEsCi19OworICBJUE9JQl9NT0RFX0RBVEFHUkFNID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElQT0lCX01PREVfQ09OTkVDVEVEID0gMSwKK307CiAjZGVmaW5lIElGTEFfSVBPSUJfTUFYIChfX0lGTEFfSVBPSUJfTUFYIC0gMSkKIGVudW0gewotIElGTEFfSFNSX1VOU1BFQywKLSBJRkxBX0hTUl9TTEFWRTEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSFNSX1NMQVZFMiwKLSBJRkxBX0hTUl9NVUxUSUNBU1RfU1BFQywKLSBJRkxBX0hTUl9TVVBFUlZJU0lPTl9BRERSLAotIElGTEFfSFNSX1NFUV9OUiwKKyAgSUZMQV9IU1JfVU5TUEVDLAorICBJRkxBX0hTUl9TTEFWRTEsCisgIElGTEFfSFNSX1NMQVZFMiwKKyAgSUZMQV9IU1JfTVVMVElDQVNUX1NQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fSUZMQV9IU1JfTUFYLAorICBJRkxBX0hTUl9TVVBFUlZJU0lPTl9BRERSLAorICBJRkxBX0hTUl9TRVFfTlIsCisgIF9fSUZMQV9IU1JfTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfSFNSX01BWCAoX19JRkxBX0hTUl9NQVggLSAxKQogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wYWNrZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGFja2V0LmgKaW5kZXggMTMzYzc3Yi4uNmU5YWU2YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wYWNrZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BhY2tldC5oCkBAIC0yMSwyMCArMjEsMjAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHNvY2thZGRyX3BrdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNwa3RfZmFtaWx5OwotIHVuc2lnbmVkIGNoYXIgc3BrdF9kZXZpY2VbMTRdOwotIF9fYmUxNiBzcGt0X3Byb3RvY29sOworICB1bnNpZ25lZCBzaG9ydCBzcGt0X2ZhbWlseTsKKyAgdW5zaWduZWQgY2hhciBzcGt0X2RldmljZVsxNF07CisgIF9fYmUxNiBzcGt0X3Byb3RvY29sOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfbGwgewotIHVuc2lnbmVkIHNob3J0IHNsbF9mYW1pbHk7Ci0gX19iZTE2IHNsbF9wcm90b2NvbDsKLSBpbnQgc2xsX2lmaW5kZXg7CisgIHVuc2lnbmVkIHNob3J0IHNsbF9mYW1pbHk7CisgIF9fYmUxNiBzbGxfcHJvdG9jb2w7CisgIGludCBzbGxfaWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc2xsX2hhdHlwZTsKLSB1bnNpZ25lZCBjaGFyIHNsbF9wa3R0eXBlOwotIHVuc2lnbmVkIGNoYXIgc2xsX2hhbGVuOwotIHVuc2lnbmVkIGNoYXIgc2xsX2FkZHJbOF07CisgIHVuc2lnbmVkIHNob3J0IHNsbF9oYXR5cGU7CisgIHVuc2lnbmVkIGNoYXIgc2xsX3BrdHR5cGU7CisgIHVuc2lnbmVkIGNoYXIgc2xsX2hhbGVuOworICB1bnNpZ25lZCBjaGFyIHNsbF9hZGRyWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFBBQ0tFVF9IT1NUIDAKQEAgLTgzLDMxICs4MywzMSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEFDS0VUX0ZBTk9VVF9GTEFHX0RFRlJBRyAweDgwMDAKIHN0cnVjdCB0cGFja2V0X3N0YXRzIHsKLSB1bnNpZ25lZCBpbnQgdHBfcGFja2V0czsKLSB1bnNpZ25lZCBpbnQgdHBfZHJvcHM7CisgIHVuc2lnbmVkIGludCB0cF9wYWNrZXRzOworICB1bnNpZ25lZCBpbnQgdHBfZHJvcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0cGFja2V0X3N0YXRzX3YzIHsKLSB1bnNpZ25lZCBpbnQgdHBfcGFja2V0czsKLSB1bnNpZ25lZCBpbnQgdHBfZHJvcHM7CisgIHVuc2lnbmVkIGludCB0cF9wYWNrZXRzOworICB1bnNpZ25lZCBpbnQgdHBfZHJvcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0cF9mcmVlemVfcV9jbnQ7CisgIHVuc2lnbmVkIGludCB0cF9mcmVlemVfcV9jbnQ7CiB9OwogdW5pb24gdHBhY2tldF9zdGF0c191IHsKLSBzdHJ1Y3QgdHBhY2tldF9zdGF0cyBzdGF0czE7CisgIHN0cnVjdCB0cGFja2V0X3N0YXRzIHN0YXRzMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRwYWNrZXRfc3RhdHNfdjMgc3RhdHMzOworICBzdHJ1Y3QgdHBhY2tldF9zdGF0c192MyBzdGF0czM7CiB9Owogc3RydWN0IHRwYWNrZXRfYXV4ZGF0YSB7Ci0gX191MzIgdHBfc3RhdHVzOworICBfX3UzMiB0cF9zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRwX2xlbjsKLSBfX3UzMiB0cF9zbmFwbGVuOwotIF9fdTE2IHRwX21hYzsKLSBfX3UxNiB0cF9uZXQ7CisgIF9fdTMyIHRwX2xlbjsKKyAgX191MzIgdHBfc25hcGxlbjsKKyAgX191MTYgdHBfbWFjOworICBfX3UxNiB0cF9uZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRwX3ZsYW5fdGNpOwotIF9fdTE2IHRwX3ZsYW5fdHBpZDsKKyAgX191MTYgdHBfdmxhbl90Y2k7CisgIF9fdTE2IHRwX3ZsYW5fdHBpZDsKIH07CiAjZGVmaW5lIFRQX1NUQVRVU19LRVJORUwgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEzMSwxMjcgKzEzMSwxMjcgQEAKICNkZWZpbmUgVFBfRlRfUkVRX0ZJTExfUlhIQVNIIDB4MQogc3RydWN0IHRwYWNrZXRfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyB0cF9zdGF0dXM7Ci0gdW5zaWduZWQgaW50IHRwX2xlbjsKLSB1bnNpZ25lZCBpbnQgdHBfc25hcGxlbjsKLSB1bnNpZ25lZCBzaG9ydCB0cF9tYWM7CisgIHVuc2lnbmVkIGxvbmcgdHBfc3RhdHVzOworICB1bnNpZ25lZCBpbnQgdHBfbGVuOworICB1bnNpZ25lZCBpbnQgdHBfc25hcGxlbjsKKyAgdW5zaWduZWQgc2hvcnQgdHBfbWFjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB0cF9uZXQ7Ci0gdW5zaWduZWQgaW50IHRwX3NlYzsKLSB1bnNpZ25lZCBpbnQgdHBfdXNlYzsKKyAgdW5zaWduZWQgc2hvcnQgdHBfbmV0OworICB1bnNpZ25lZCBpbnQgdHBfc2VjOworICB1bnNpZ25lZCBpbnQgdHBfdXNlYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUUEFDS0VUX0FMSUdOTUVOVCAxNgotI2RlZmluZSBUUEFDS0VUX0FMSUdOKHgpICgoKHgpK1RQQUNLRVRfQUxJR05NRU5ULTEpJn4oVFBBQ0tFVF9BTElHTk1FTlQtMSkpCisjZGVmaW5lIFRQQUNLRVRfQUxJR04oeCkgKCgoeCkgKyBUUEFDS0VUX0FMSUdOTUVOVCAtIDEpICYgfihUUEFDS0VUX0FMSUdOTUVOVCAtIDEpKQogI2RlZmluZSBUUEFDS0VUX0hEUkxFTiAoVFBBQ0tFVF9BTElHTihzaXplb2Yoc3RydWN0IHRwYWNrZXRfaGRyKSkgKyBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2xsKSkKIHN0cnVjdCB0cGFja2V0Ml9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0cF9zdGF0dXM7Ci0gX191MzIgdHBfbGVuOwotIF9fdTMyIHRwX3NuYXBsZW47Ci0gX191MTYgdHBfbWFjOworICBfX3UzMiB0cF9zdGF0dXM7CisgIF9fdTMyIHRwX2xlbjsKKyAgX191MzIgdHBfc25hcGxlbjsKKyAgX191MTYgdHBfbWFjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0cF9uZXQ7Ci0gX191MzIgdHBfc2VjOwotIF9fdTMyIHRwX25zZWM7Ci0gX191MTYgdHBfdmxhbl90Y2k7CisgIF9fdTE2IHRwX25ldDsKKyAgX191MzIgdHBfc2VjOworICBfX3UzMiB0cF9uc2VjOworICBfX3UxNiB0cF92bGFuX3RjaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdHBfdmxhbl90cGlkOwotIF9fdTggdHBfcGFkZGluZ1s0XTsKKyAgX191MTYgdHBfdmxhbl90cGlkOworICBfX3U4IHRwX3BhZGRpbmdbNF07CiB9Owogc3RydWN0IHRwYWNrZXRfaGRyX3ZhcmlhbnQxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHBfcnhoYXNoOwotIF9fdTMyIHRwX3ZsYW5fdGNpOwotIF9fdTE2IHRwX3ZsYW5fdHBpZDsKLSBfX3UxNiB0cF9wYWRkaW5nOworICBfX3UzMiB0cF9yeGhhc2g7CisgIF9fdTMyIHRwX3ZsYW5fdGNpOworICBfX3UxNiB0cF92bGFuX3RwaWQ7CisgIF9fdTE2IHRwX3BhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0cGFja2V0M19oZHIgewotIF9fdTMyIHRwX25leHRfb2Zmc2V0OwotIF9fdTMyIHRwX3NlYzsKKyAgX191MzIgdHBfbmV4dF9vZmZzZXQ7CisgIF9fdTMyIHRwX3NlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHBfbnNlYzsKLSBfX3UzMiB0cF9zbmFwbGVuOwotIF9fdTMyIHRwX2xlbjsKLSBfX3UzMiB0cF9zdGF0dXM7CisgIF9fdTMyIHRwX25zZWM7CisgIF9fdTMyIHRwX3NuYXBsZW47CisgIF9fdTMyIHRwX2xlbjsKKyAgX191MzIgdHBfc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0cF9tYWM7Ci0gX191MTYgdHBfbmV0OwotIHVuaW9uIHsKLSBzdHJ1Y3QgdHBhY2tldF9oZHJfdmFyaWFudDEgaHYxOworICBfX3UxNiB0cF9tYWM7CisgIF9fdTE2IHRwX25ldDsKKyAgdW5pb24geworICAgIHN0cnVjdCB0cGFja2V0X2hkcl92YXJpYW50MSBodjE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gX191OCB0cF9wYWRkaW5nWzhdOworICB9OworICBfX3U4IHRwX3BhZGRpbmdbOF07CiB9Owogc3RydWN0IHRwYWNrZXRfYmRfdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdHNfc2VjOwotIHVuaW9uIHsKLSB1bnNpZ25lZCBpbnQgdHNfdXNlYzsKLSB1bnNpZ25lZCBpbnQgdHNfbnNlYzsKKyAgdW5zaWduZWQgaW50IHRzX3NlYzsKKyAgdW5pb24geworICAgIHVuc2lnbmVkIGludCB0c191c2VjOworICAgIHVuc2lnbmVkIGludCB0c19uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICB9OwogfTsKIHN0cnVjdCB0cGFja2V0X2hkcl92MSB7Ci0gX191MzIgYmxvY2tfc3RhdHVzOworICBfX3UzMiBibG9ja19zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bV9wa3RzOwotIF9fdTMyIG9mZnNldF90b19maXJzdF9wa3Q7Ci0gX191MzIgYmxrX2xlbjsKLSBfX2FsaWduZWRfdTY0IHNlcV9udW07CisgIF9fdTMyIG51bV9wa3RzOworICBfX3UzMiBvZmZzZXRfdG9fZmlyc3RfcGt0OworICBfX3UzMiBibGtfbGVuOworICBfX2FsaWduZWRfdTY0IHNlcV9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0cGFja2V0X2JkX3RzIHRzX2ZpcnN0X3BrdCwgdHNfbGFzdF9wa3Q7CisgIHN0cnVjdCB0cGFja2V0X2JkX3RzIHRzX2ZpcnN0X3BrdCwgdHNfbGFzdF9wa3Q7CiB9OwogdW5pb24gdHBhY2tldF9iZF9oZWFkZXJfdSB7Ci0gc3RydWN0IHRwYWNrZXRfaGRyX3YxIGJoMTsKKyAgc3RydWN0IHRwYWNrZXRfaGRyX3YxIGJoMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRwYWNrZXRfYmxvY2tfZGVzYyB7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBvZmZzZXRfdG9fcHJpdjsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgb2Zmc2V0X3RvX3ByaXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHRwYWNrZXRfYmRfaGVhZGVyX3UgaGRyOworICB1bmlvbiB0cGFja2V0X2JkX2hlYWRlcl91IGhkcjsKIH07CiAjZGVmaW5lIFRQQUNLRVQyX0hEUkxFTiAoVFBBQ0tFVF9BTElHTihzaXplb2Yoc3RydWN0IHRwYWNrZXQyX2hkcikpICsgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9sbCkpCiAjZGVmaW5lIFRQQUNLRVQzX0hEUkxFTiAoVFBBQ0tFVF9BTElHTihzaXplb2Yoc3RydWN0IHRwYWNrZXQzX2hkcikpICsgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9sbCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB0cGFja2V0X3ZlcnNpb25zIHsKLSBUUEFDS0VUX1YxLAotIFRQQUNLRVRfVjIsCi0gVFBBQ0tFVF9WMworICBUUEFDS0VUX1YxLAorICBUUEFDS0VUX1YyLAorICBUUEFDS0VUX1YzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0cGFja2V0X3JlcSB7Ci0gdW5zaWduZWQgaW50IHRwX2Jsb2NrX3NpemU7Ci0gdW5zaWduZWQgaW50IHRwX2Jsb2NrX25yOworICB1bnNpZ25lZCBpbnQgdHBfYmxvY2tfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHRwX2Jsb2NrX25yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfbnI7CisgIHVuc2lnbmVkIGludCB0cF9mcmFtZV9zaXplOworICB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfbnI7CiB9Owogc3RydWN0IHRwYWNrZXRfcmVxMyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0cF9ibG9ja19zaXplOwotIHVuc2lnbmVkIGludCB0cF9ibG9ja19ucjsKLSB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfbnI7CisgIHVuc2lnbmVkIGludCB0cF9ibG9ja19zaXplOworICB1bnNpZ25lZCBpbnQgdHBfYmxvY2tfbnI7CisgIHVuc2lnbmVkIGludCB0cF9mcmFtZV9zaXplOworICB1bnNpZ25lZCBpbnQgdHBfZnJhbWVfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0cF9yZXRpcmVfYmxrX3RvdjsKLSB1bnNpZ25lZCBpbnQgdHBfc2l6ZW9mX3ByaXY7Ci0gdW5zaWduZWQgaW50IHRwX2ZlYXR1cmVfcmVxX3dvcmQ7CisgIHVuc2lnbmVkIGludCB0cF9yZXRpcmVfYmxrX3RvdjsKKyAgdW5zaWduZWQgaW50IHRwX3NpemVvZl9wcml2OworICB1bnNpZ25lZCBpbnQgdHBfZmVhdHVyZV9yZXFfd29yZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gdHBhY2tldF9yZXFfdSB7Ci0gc3RydWN0IHRwYWNrZXRfcmVxIHJlcTsKLSBzdHJ1Y3QgdHBhY2tldF9yZXEzIHJlcTM7CisgIHN0cnVjdCB0cGFja2V0X3JlcSByZXE7CisgIHN0cnVjdCB0cGFja2V0X3JlcTMgcmVxMzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBhY2tldF9tcmVxIHsKLSBpbnQgbXJfaWZpbmRleDsKLSB1bnNpZ25lZCBzaG9ydCBtcl90eXBlOwotIHVuc2lnbmVkIHNob3J0IG1yX2FsZW47CisgIGludCBtcl9pZmluZGV4OworICB1bnNpZ25lZCBzaG9ydCBtcl90eXBlOworICB1bnNpZ25lZCBzaG9ydCBtcl9hbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG1yX2FkZHJlc3NbOF07CisgIHVuc2lnbmVkIGNoYXIgbXJfYWRkcmVzc1s4XTsKIH07CiAjZGVmaW5lIFBBQ0tFVF9NUl9NVUxUSUNBU1QgMAogI2RlZmluZSBQQUNLRVRfTVJfUFJPTUlTQyAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BsaXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGxpcC5oCmluZGV4IDIyYTQ5ZTAuLjQyNjIxZDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGxpcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGxpcC5oCkBAIC0yMiw5ICsyMiw5IEBACiAjZGVmaW5lIFNJT0NERVZQTElQIFNJT0NERVZQUklWQVRFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBsaXBjb25mIHsKLSB1bnNpZ25lZCBzaG9ydCBwY21kOwotIHVuc2lnbmVkIGxvbmcgbmliYmxlOwotIHVuc2lnbmVkIGxvbmcgdHJpZ2dlcjsKKyAgdW5zaWduZWQgc2hvcnQgcGNtZDsKKyAgdW5zaWduZWQgbG9uZyBuaWJibGU7CisgIHVuc2lnbmVkIGxvbmcgdHJpZ2dlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBQTElQX0dFVF9USU1FT1VUIDB4MQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBvbDJ0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBvbDJ0cC5oCmluZGV4IDY2MWM1NmQuLjM2YjhjZWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb2wydHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sMnRwLmgKQEAgLTIxLDU0ICsyMSw1NCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgcHBwb2wydHBfYWRkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHBpZDsKLSBpbnQgZmQ7Ci0gc3RydWN0IHNvY2thZGRyX2luIGFkZHI7Ci0gX191MTYgc190dW5uZWwsIHNfc2Vzc2lvbjsKKyAgX19rZXJuZWxfcGlkX3QgcGlkOworICBpbnQgZmQ7CisgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOworICBfX3UxNiBzX3R1bm5lbCwgc19zZXNzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkX3R1bm5lbCwgZF9zZXNzaW9uOworICBfX3UxNiBkX3R1bm5lbCwgZF9zZXNzaW9uOwogfTsKIHN0cnVjdCBwcHBvbDJ0cGluNl9hZGRyIHsKLSBfX2tlcm5lbF9waWRfdCBwaWQ7CisgIF9fa2VybmVsX3BpZF90IHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZkOwotIF9fdTE2IHNfdHVubmVsLCBzX3Nlc3Npb247Ci0gX191MTYgZF90dW5uZWwsIGRfc2Vzc2lvbjsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7CisgIGludCBmZDsKKyAgX191MTYgc190dW5uZWwsIHNfc2Vzc2lvbjsKKyAgX191MTYgZF90dW5uZWwsIGRfc2Vzc2lvbjsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcHBwb2wydHB2M19hZGRyIHsKLSBfX2tlcm5lbF9waWRfdCBwaWQ7Ci0gaW50IGZkOworICBfX2tlcm5lbF9waWRfdCBwaWQ7CisgIGludCBmZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2luIGFkZHI7Ci0gX191MzIgc190dW5uZWwsIHNfc2Vzc2lvbjsKLSBfX3UzMiBkX3R1bm5lbCwgZF9zZXNzaW9uOworICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKKyAgX191MzIgc190dW5uZWwsIHNfc2Vzc2lvbjsKKyAgX191MzIgZF90dW5uZWwsIGRfc2Vzc2lvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcG9sMnRwdjNpbjZfYWRkciB7Ci0gX19rZXJuZWxfcGlkX3QgcGlkOwotIGludCBmZDsKLSBfX3UzMiBzX3R1bm5lbCwgc19zZXNzaW9uOworICBfX2tlcm5lbF9waWRfdCBwaWQ7CisgIGludCBmZDsKKyAgX191MzIgc190dW5uZWwsIHNfc2Vzc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZF90dW5uZWwsIGRfc2Vzc2lvbjsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7CisgIF9fdTMyIGRfdHVubmVsLCBkX3Nlc3Npb247CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFBQT0wyVFBfU09fREVCVUcgPSAxLAotIFBQUE9MMlRQX1NPX1JFQ1ZTRVEgPSAyLAotIFBQUE9MMlRQX1NPX1NFTkRTRVEgPSAzLAotIFBQUE9MMlRQX1NPX0xOU01PREUgPSA0LAorICBQUFBPTDJUUF9TT19ERUJVRyA9IDEsCisgIFBQUE9MMlRQX1NPX1JFQ1ZTRVEgPSAyLAorICBQUFBPTDJUUF9TT19TRU5EU0VRID0gMywKKyAgUFBQT0wyVFBfU09fTE5TTU9ERSA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBQUE9MMlRQX1NPX1JFT1JERVJUTyA9IDUsCisgIFBQUE9MMlRQX1NPX1JFT1JERVJUTyA9IDUsCiB9OwogZW51bSB7Ci0gUFBQT0wyVFBfTVNHX0RFQlVHID0gKDEgPDwgMCksCisgIFBQUE9MMlRQX01TR19ERUJVRyA9ICgxIDw8IDApLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQUFBPTDJUUF9NU0dfQ09OVFJPTCA9ICgxIDw8IDEpLAotIFBQUE9MMlRQX01TR19TRVEgPSAoMSA8PCAyKSwKLSBQUFBPTDJUUF9NU0dfREFUQSA9ICgxIDw8IDMpLAorICBQUFBPTDJUUF9NU0dfQ09OVFJPTCA9ICgxIDw8IDEpLAorICBQUFBPTDJUUF9NU0dfU0VRID0gKDEgPDwgMiksCisgIFBQUE9MMlRQX01TR19EQVRBID0gKDEgPDwgMyksCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBvbGFjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sYWMuaAppbmRleCA4NGExNDk5Li4zMDNhODk5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sYWMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sYWMuaApAQCAtMjIsMTMgKzIyLDEzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb2xhYyB7Ci0gc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKLSBpbnQgdWRwX3NvY2tldDsKKyAgc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIGludCB1ZHBfc29ja2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgX19hdHRyaWJ1dGVfXygocGFja2VkKSkgewotIF9fdTE2IHR1bm5lbCwgc2Vzc2lvbjsKLSB9IGxvY2FsLCByZW1vdGU7CisgIHN0cnVjdCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB7CisgICAgX191MTYgdHVubmVsLCBzZXNzaW9uOworICB9IGxvY2FsLCByZW1vdGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBvcG5zLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9wbnMuaAppbmRleCBkZDI5YThiLi5iZDk2ZTk0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9wbnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9wbnMuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb3BucyB7Ci0gc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKLSBpbnQgdGNwX3NvY2tldDsKKyAgc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIGludCB0Y3Bfc29ja2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBsb2NhbDsKLSBfX3UxNiByZW1vdGU7CisgIF9fdTE2IGxvY2FsOworICBfX3UxNiByZW1vdGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBveC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBveC5oCmluZGV4IDNiYzJkZGIuLjdiNGRiZDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb3guaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG94LmgKQEAgLTMyLDE0ICszMiwxNCBAQAogdHlwZWRlZiBfX2JlMTYgc2lkX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcG9lX2FkZHIgewotIHNpZF90IHNpZDsKLSB1bnNpZ25lZCBjaGFyIHJlbW90ZVtFVEhfQUxFTl07Ci0gY2hhciBkZXZbSUZOQU1TSVpdOworICBzaWRfdCBzaWQ7CisgIHVuc2lnbmVkIGNoYXIgcmVtb3RlW0VUSF9BTEVOXTsKKyAgY2hhciBkZXZbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcHB0cF9hZGRyIHsKLSBfX3UxNiBjYWxsX2lkOwotIHN0cnVjdCBpbl9hZGRyIHNpbl9hZGRyOworICBfX3UxNiBjYWxsX2lkOworICBzdHJ1Y3QgaW5fYWRkciBzaW5fYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBQWF9QUk9UT19PRSAwCkBAIC00OCw0MiArNDgsNDIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBYX01BWF9QUk9UTyAzCiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb3ggewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKLSB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKKyAgdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHBwcG9lX2FkZHIgcHBwb2U7Ci0gc3RydWN0IHBwdHBfYWRkciBwcHRwOwotIH0gc2FfYWRkcjsKKyAgdW5pb24geworICAgIHN0cnVjdCBwcHBvZV9hZGRyIHBwcG9lOworICAgIHN0cnVjdCBwcHRwX2FkZHIgcHB0cDsKKyAgfSBzYV9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19wYWNrZWQ7CiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb2wydHAgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKLSB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKKyAgdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcHBwb2wydHBfYWRkciBwcHBvbDJ0cDsKKyAgc3RydWN0IHBwcG9sMnRwX2FkZHIgcHBwb2wydHA7CiB9IF9fcGFja2VkOwogc3RydWN0IHNvY2thZGRyX3BwcG9sMnRwaW42IHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwotIHN0cnVjdCBwcHBvbDJ0cGluNl9hZGRyIHBwcG9sMnRwOworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIHN0cnVjdCBwcHBvbDJ0cGluNl9hZGRyIHBwcG9sMnRwOwogfSBfX3BhY2tlZDsKIHN0cnVjdCBzb2NrYWRkcl9wcHBvbDJ0cHYzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKLSBzdHJ1Y3QgcHBwb2wydHB2M19hZGRyIHBwcG9sMnRwOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgc3RydWN0IHBwcG9sMnRwdjNfYWRkciBwcHBvbDJ0cDsKIH0gX19wYWNrZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX3BwcG9sMnRwdjNpbjYgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKLSB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7Ci0gc3RydWN0IHBwcG9sMnRwdjNpbjZfYWRkciBwcHBvbDJ0cDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CisgIHN0cnVjdCBwcHBvbDJ0cHYzaW42X2FkZHIgcHBwb2wydHA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX3BhY2tlZDsKLSNkZWZpbmUgUFBQT0VJT0NTRldEIF9JT1coMHhCMSAsMCwgc2l6ZV90KQotI2RlZmluZSBQUFBPRUlPQ0RGV0QgX0lPKDB4QjEgLDEpCisjZGVmaW5lIFBQUE9FSU9DU0ZXRCBfSU9XKDB4QjEsIDAsIHNpemVfdCkKKyNkZWZpbmUgUFBQT0VJT0NERldEIF9JTygweEIxLCAxKQogI2RlZmluZSBQQURJX0NPREUgMHgwOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEFET19DT0RFIDB4MDcKQEAgLTkyLDExICs5MiwxMSBAQAogI2RlZmluZSBQQURUX0NPREUgMHhhNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcHBvZV90YWcgewotIF9fYmUxNiB0YWdfdHlwZTsKLSBfX2JlMTYgdGFnX2xlbjsKLSBjaGFyIHRhZ19kYXRhWzBdOworICBfX2JlMTYgdGFnX3R5cGU7CisgIF9fYmUxNiB0YWdfbGVuOworICBjaGFyIHRhZ19kYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUFRUX0VPTCBfX2NwdV90b19iZTE2KDB4MDAwMCkKICNkZWZpbmUgUFRUX1NSVl9OQU1FIF9fY3B1X3RvX2JlMTYoMHgwMTAxKQogI2RlZmluZSBQVFRfQUNfTkFNRSBfX2NwdV90b19iZTE2KDB4MDEwMikKQEAgLTExMiwyMSArMTEyLDIxIEBACiBzdHJ1Y3QgcHBwb2VfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191OCB0eXBlIDogNDsKLSBfX3U4IHZlciA6IDQ7CisgIF9fdTggdHlwZSA6IDQ7CisgIF9fdTggdmVyIDogNDsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZlciA6IDQ7Ci0gX191OCB0eXBlIDogNDsKKyAgX191OCB2ZXIgOiA0OworICBfX3U4IHR5cGUgOiA0OwogI2Vsc2UKICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX3U4IGNvZGU7Ci0gX19iZTE2IHNpZDsKLSBfX2JlMTYgbGVuZ3RoOworICBfX3U4IGNvZGU7CisgIF9fYmUxNiBzaWQ7CisgIF9fYmUxNiBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwcHBvZV90YWcgdGFnWzBdOworICBzdHJ1Y3QgcHBwb2VfdGFnIHRhZ1swXTsKIH0gX19wYWNrZWQ7CiAjZGVmaW5lIFBQUE9FX1NFU19ITEVOIDgKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9zbGlwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3NsaXAuaAppbmRleCA3ODYzZjJjLi44Y2Q3MTRlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3NsaXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3NsaXAuaApAQCAtMjYsMTAgKzI2LDEwIEBACiAjZGVmaW5lIFNMX09QVF9BREFQVElWRSA4CiAjZGVmaW5lIFNJT0NTS0VFUEFMSVZFIChTSU9DREVWUFJJVkFURSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NHS0VFUEFMSVZFIChTSU9DREVWUFJJVkFURSsxKQotI2RlZmluZSBTSU9DU09VVEZJTEwgKFNJT0NERVZQUklWQVRFKzIpCi0jZGVmaW5lIFNJT0NHT1VURklMTCAoU0lPQ0RFVlBSSVZBVEUrMykKLSNkZWZpbmUgU0lPQ1NMRUFTRSAoU0lPQ0RFVlBSSVZBVEUrNCkKKyNkZWZpbmUgU0lPQ0dLRUVQQUxJVkUgKFNJT0NERVZQUklWQVRFICsgMSkKKyNkZWZpbmUgU0lPQ1NPVVRGSUxMIChTSU9DREVWUFJJVkFURSArIDIpCisjZGVmaW5lIFNJT0NHT1VURklMTCAoU0lPQ0RFVlBSSVZBVEUgKyAzKQorI2RlZmluZSBTSU9DU0xFQVNFIChTSU9DREVWUFJJVkFURSArIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DR0xFQVNFIChTSU9DREVWUFJJVkFURSs1KQorI2RlZmluZSBTSU9DR0xFQVNFIChTSU9DREVWUFJJVkFURSArIDUpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdGVhbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90ZWFtLmgKaW5kZXggZTc3MmQ2ZC4uMGQ3M2YxZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90ZWFtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90ZWFtLmgKQEAgLTIxLDY3ICsyMSw2NyBAQAogI2RlZmluZSBURUFNX1NUUklOR19NQVhfTEVOIDMyCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9DTURfTk9PUCwKLSBURUFNX0NNRF9PUFRJT05TX1NFVCwKLSBURUFNX0NNRF9PUFRJT05TX0dFVCwKLSBURUFNX0NNRF9QT1JUX0xJU1RfR0VULAorICBURUFNX0NNRF9OT09QLAorICBURUFNX0NNRF9PUFRJT05TX1NFVCwKKyAgVEVBTV9DTURfT1BUSU9OU19HRVQsCisgIFRFQU1fQ01EX1BPUlRfTElTVF9HRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVEVBTV9DTURfTUFYLAotIFRFQU1fQ01EX01BWCA9IChfX1RFQU1fQ01EX01BWCAtIDEpLAorICBfX1RFQU1fQ01EX01BWCwKKyAgVEVBTV9DTURfTUFYID0gKF9fVEVBTV9DTURfTUFYIC0gMSksCiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9VTlNQRUMsCi0gVEVBTV9BVFRSX1RFQU1fSUZJTkRFWCwKLSBURUFNX0FUVFJfTElTVF9PUFRJT04sCi0gVEVBTV9BVFRSX0xJU1RfUE9SVCwKKyAgVEVBTV9BVFRSX1VOU1BFQywKKyAgVEVBTV9BVFRSX1RFQU1fSUZJTkRFWCwKKyAgVEVBTV9BVFRSX0xJU1RfT1BUSU9OLAorICBURUFNX0FUVFJfTElTVF9QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RFQU1fQVRUUl9NQVgsCi0gVEVBTV9BVFRSX01BWCA9IF9fVEVBTV9BVFRSX01BWCAtIDEsCisgIF9fVEVBTV9BVFRSX01BWCwKKyAgVEVBTV9BVFRSX01BWCA9IF9fVEVBTV9BVFRSX01BWCAtIDEsCiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9JVEVNX09QVElPTl9VTlNQRUMsCi0gVEVBTV9BVFRSX0lURU1fT1BUSU9OLAotIF9fVEVBTV9BVFRSX0lURU1fT1BUSU9OX01BWCwKLSBURUFNX0FUVFJfSVRFTV9PUFRJT05fTUFYID0gX19URUFNX0FUVFJfSVRFTV9PUFRJT05fTUFYIC0gMSwKKyAgVEVBTV9BVFRSX0lURU1fT1BUSU9OX1VOU1BFQywKKyAgVEVBTV9BVFRSX0lURU1fT1BUSU9OLAorICBfX1RFQU1fQVRUUl9JVEVNX09QVElPTl9NQVgsCisgIFRFQU1fQVRUUl9JVEVNX09QVElPTl9NQVggPSBfX1RFQU1fQVRUUl9JVEVNX09QVElPTl9NQVggLSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBURUFNX0FUVFJfT1BUSU9OX1VOU1BFQywKLSBURUFNX0FUVFJfT1BUSU9OX05BTUUsCisgIFRFQU1fQVRUUl9PUFRJT05fVU5TUEVDLAorICBURUFNX0FUVFJfT1BUSU9OX05BTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9PUFRJT05fQ0hBTkdFRCwKLSBURUFNX0FUVFJfT1BUSU9OX1RZUEUsCi0gVEVBTV9BVFRSX09QVElPTl9EQVRBLAotIFRFQU1fQVRUUl9PUFRJT05fUkVNT1ZFRCwKKyAgVEVBTV9BVFRSX09QVElPTl9DSEFOR0VELAorICBURUFNX0FUVFJfT1BUSU9OX1RZUEUsCisgIFRFQU1fQVRUUl9PUFRJT05fREFUQSwKKyAgVEVBTV9BVFRSX09QVElPTl9SRU1PVkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBURUFNX0FUVFJfT1BUSU9OX1BPUlRfSUZJTkRFWCwKLSBURUFNX0FUVFJfT1BUSU9OX0FSUkFZX0lOREVYLAotIF9fVEVBTV9BVFRSX09QVElPTl9NQVgsCi0gVEVBTV9BVFRSX09QVElPTl9NQVggPSBfX1RFQU1fQVRUUl9PUFRJT05fTUFYIC0gMSwKKyAgVEVBTV9BVFRSX09QVElPTl9QT1JUX0lGSU5ERVgsCisgIFRFQU1fQVRUUl9PUFRJT05fQVJSQVlfSU5ERVgsCisgIF9fVEVBTV9BVFRSX09QVElPTl9NQVgsCisgIFRFQU1fQVRUUl9PUFRJT05fTUFYID0gX19URUFNX0FUVFJfT1BUSU9OX01BWCAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRFQU1fQVRUUl9JVEVNX1BPUlRfVU5TUEVDLAotIFRFQU1fQVRUUl9JVEVNX1BPUlQsCisgIFRFQU1fQVRUUl9JVEVNX1BPUlRfVU5TUEVDLAorICBURUFNX0FUVFJfSVRFTV9QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RFQU1fQVRUUl9JVEVNX1BPUlRfTUFYLAotIFRFQU1fQVRUUl9JVEVNX1BPUlRfTUFYID0gX19URUFNX0FUVFJfSVRFTV9QT1JUX01BWCAtIDEsCisgIF9fVEVBTV9BVFRSX0lURU1fUE9SVF9NQVgsCisgIFRFQU1fQVRUUl9JVEVNX1BPUlRfTUFYID0gX19URUFNX0FUVFJfSVRFTV9QT1JUX01BWCAtIDEsCiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9QT1JUX1VOU1BFQywKLSBURUFNX0FUVFJfUE9SVF9JRklOREVYLAotIFRFQU1fQVRUUl9QT1JUX0NIQU5HRUQsCi0gVEVBTV9BVFRSX1BPUlRfTElOS1VQLAorICBURUFNX0FUVFJfUE9SVF9VTlNQRUMsCisgIFRFQU1fQVRUUl9QT1JUX0lGSU5ERVgsCisgIFRFQU1fQVRUUl9QT1JUX0NIQU5HRUQsCisgIFRFQU1fQVRUUl9QT1JUX0xJTktVUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9BVFRSX1BPUlRfU1BFRUQsCi0gVEVBTV9BVFRSX1BPUlRfRFVQTEVYLAotIFRFQU1fQVRUUl9QT1JUX1JFTU9WRUQsCi0gX19URUFNX0FUVFJfUE9SVF9NQVgsCisgIFRFQU1fQVRUUl9QT1JUX1NQRUVELAorICBURUFNX0FUVFJfUE9SVF9EVVBMRVgsCisgIFRFQU1fQVRUUl9QT1JUX1JFTU9WRUQsCisgIF9fVEVBTV9BVFRSX1BPUlRfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBURUFNX0FUVFJfUE9SVF9NQVggPSBfX1RFQU1fQVRUUl9QT1JUX01BWCAtIDEsCisgIFRFQU1fQVRUUl9QT1JUX01BWCA9IF9fVEVBTV9BVFRSX1BPUlRfTUFYIC0gMSwKIH07CiAjZGVmaW5lIFRFQU1fR0VOTF9OQU1FICJ0ZWFtIgogI2RlZmluZSBURUFNX0dFTkxfVkVSU0lPTiAweDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3R1bi5oCmluZGV4IGY4ZjgwYjkuLmRkMmRjMmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW4uaApAQCAtODQsMTYgKzg0LDE2IEBACiAjZGVmaW5lIFRVTl9GX1VGTyAweDEwCiAjZGVmaW5lIFRVTl9QS1RfU1RSSVAgMHgwMDAxCiBzdHJ1Y3QgdHVuX3BpIHsKLSBfX3UxNiBmbGFnczsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwcm90bzsKKyAgX19iZTE2IHByb3RvOwogfTsKICNkZWZpbmUgVFVOX0ZMVF9BTExNVUxUSSAweDAwMDEKIHN0cnVjdCB0dW5fZmlsdGVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX191MTYgY291bnQ7Ci0gX191OCBhZGRyWzBdW0VUSF9BTEVOXTsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IGNvdW50OworICBfX3U4IGFkZHJbMF1bRVRIX0FMRU5dOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVubmVsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3R1bm5lbC5oCmluZGV4IDY3Y2U1Y2UuLmZlYTM0MjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVubmVsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW5uZWwuaApAQCAtNDcsOTMgKzQ3LDExMiBAQAogI2RlZmluZSBHUkVfVkVSU0lPTiBfX2NwdV90b19iZTE2KDB4MDAwNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfdHVubmVsX3Bhcm0gewotIGNoYXIgbmFtZVtJRk5BTVNJWl07Ci0gaW50IGxpbms7Ci0gX19iZTE2IGlfZmxhZ3M7CisgIGNoYXIgbmFtZVtJRk5BTVNJWl07CisgIGludCBsaW5rOworICBfX2JlMTYgaV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IG9fZmxhZ3M7Ci0gX19iZTMyIGlfa2V5OwotIF9fYmUzMiBvX2tleTsKLSBzdHJ1Y3QgaXBoZHIgaXBoOworICBfX2JlMTYgb19mbGFnczsKKyAgX19iZTMyIGlfa2V5OworICBfX2JlMzIgb19rZXk7CisgIHN0cnVjdCBpcGhkciBpcGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIElGTEFfSVBUVU5fVU5TUEVDLAotIElGTEFfSVBUVU5fTElOSywKKyAgSUZMQV9JUFRVTl9VTlNQRUMsCisgIElGTEFfSVBUVU5fTElOSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JUFRVTl9MT0NBTCwKLSBJRkxBX0lQVFVOX1JFTU9URSwKLSBJRkxBX0lQVFVOX1RUTCwKLSBJRkxBX0lQVFVOX1RPUywKKyAgSUZMQV9JUFRVTl9MT0NBTCwKKyAgSUZMQV9JUFRVTl9SRU1PVEUsCisgIElGTEFfSVBUVU5fVFRMLAorICBJRkxBX0lQVFVOX1RPUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JUFRVTl9FTkNBUF9MSU1JVCwKLSBJRkxBX0lQVFVOX0ZMT1dJTkZPLAotIElGTEFfSVBUVU5fRkxBR1MsCi0gSUZMQV9JUFRVTl9QUk9UTywKKyAgSUZMQV9JUFRVTl9FTkNBUF9MSU1JVCwKKyAgSUZMQV9JUFRVTl9GTE9XSU5GTywKKyAgSUZMQV9JUFRVTl9GTEFHUywKKyAgSUZMQV9JUFRVTl9QUk9UTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JUFRVTl9QTVRVRElTQywKLSBJRkxBX0lQVFVOXzZSRF9QUkVGSVgsCi0gSUZMQV9JUFRVTl82UkRfUkVMQVlfUFJFRklYLAotIElGTEFfSVBUVU5fNlJEX1BSRUZJWExFTiwKKyAgSUZMQV9JUFRVTl9QTVRVRElTQywKKyAgSUZMQV9JUFRVTl82UkRfUFJFRklYLAorICBJRkxBX0lQVFVOXzZSRF9SRUxBWV9QUkVGSVgsCisgIElGTEFfSVBUVU5fNlJEX1BSRUZJWExFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JUFRVTl82UkRfUkVMQVlfUFJFRklYTEVOLAotIF9fSUZMQV9JUFRVTl9NQVgsCisgIElGTEFfSVBUVU5fNlJEX1JFTEFZX1BSRUZJWExFTiwKKyAgSUZMQV9JUFRVTl9FTkNBUF9UWVBFLAorICBJRkxBX0lQVFVOX0VOQ0FQX0ZMQUdTLAorICBJRkxBX0lQVFVOX0VOQ0FQX1NQT1JULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9JUFRVTl9FTkNBUF9EUE9SVCwKKyAgX19JRkxBX0lQVFVOX01BWCwKIH07CiAjZGVmaW5lIElGTEFfSVBUVU5fTUFYIChfX0lGTEFfSVBUVU5fTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHR1bm5lbF9lbmNhcF90eXBlcyB7CisgIFRVTk5FTF9FTkNBUF9OT05FLAorICBUVU5ORUxfRU5DQVBfRk9VLAorICBUVU5ORUxfRU5DQVBfR1VFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIFRVTk5FTF9FTkNBUF9GTEFHX0NTVU0gKDEgPDwgMCkKKyNkZWZpbmUgVFVOTkVMX0VOQ0FQX0ZMQUdfQ1NVTTYgKDEgPDwgMSkKICNkZWZpbmUgU0lUX0lTQVRBUCAweDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfdHVubmVsX3BybCB7Ci0gX19iZTMyIGFkZHI7Ci0gX191MTYgZmxhZ3M7CisgIF9fYmUzMiBhZGRyOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgX19yZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgX19yZXNlcnZlZDsKLSBfX3UzMiBkYXRhbGVuOwotIF9fdTMyIF9fcmVzZXJ2ZWQyOworICBfX3UzMiBkYXRhbGVuOworICBfX3UzMiBfX3Jlc2VydmVkMjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUkxfREVGQVVMVCAweDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfdHVubmVsXzZyZCB7Ci0gc3RydWN0IGluNl9hZGRyIHByZWZpeDsKLSBfX2JlMzIgcmVsYXlfcHJlZml4OworICBzdHJ1Y3QgaW42X2FkZHIgcHJlZml4OworICBfX2JlMzIgcmVsYXlfcHJlZml4OworICBfX3UxNiBwcmVmaXhsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHByZWZpeGxlbjsKLSBfX3UxNiByZWxheV9wcmVmaXhsZW47CisgIF9fdTE2IHJlbGF5X3ByZWZpeGxlbjsKIH07CiBlbnVtIHsKKyAgSUZMQV9HUkVfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0dSRV9VTlNQRUMsCi0gSUZMQV9HUkVfTElOSywKLSBJRkxBX0dSRV9JRkxBR1MsCi0gSUZMQV9HUkVfT0ZMQUdTLAorICBJRkxBX0dSRV9MSU5LLAorICBJRkxBX0dSRV9JRkxBR1MsCisgIElGTEFfR1JFX09GTEFHUywKKyAgSUZMQV9HUkVfSUtFWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9HUkVfSUtFWSwKLSBJRkxBX0dSRV9PS0VZLAotIElGTEFfR1JFX0xPQ0FMLAotIElGTEFfR1JFX1JFTU9URSwKKyAgSUZMQV9HUkVfT0tFWSwKKyAgSUZMQV9HUkVfTE9DQUwsCisgIElGTEFfR1JFX1JFTU9URSwKKyAgSUZMQV9HUkVfVFRMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0dSRV9UVEwsCi0gSUZMQV9HUkVfVE9TLAotIElGTEFfR1JFX1BNVFVESVNDLAotIElGTEFfR1JFX0VOQ0FQX0xJTUlULAorICBJRkxBX0dSRV9UT1MsCisgIElGTEFfR1JFX1BNVFVESVNDLAorICBJRkxBX0dSRV9FTkNBUF9MSU1JVCwKKyAgSUZMQV9HUkVfRkxPV0lORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfR1JFX0ZMT1dJTkZPLAotIElGTEFfR1JFX0ZMQUdTLAotIF9fSUZMQV9HUkVfTUFYLAorICBJRkxBX0dSRV9GTEFHUywKKyAgSUZMQV9HUkVfRU5DQVBfVFlQRSwKKyAgSUZMQV9HUkVfRU5DQVBfRkxBR1MsCisgIElGTEFfR1JFX0VOQ0FQX1NQT1JULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9HUkVfRU5DQVBfRFBPUlQsCisgIF9fSUZMQV9HUkVfTUFYLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfR1JFX01BWCAoX19JRkxBX0dSRV9NQVggLSAxKQotI2RlZmluZSBWVElfSVNWVEkgMHgwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWVElfSVNWVEkgKChfX2ZvcmNlIF9fYmUxNikgMHgwMDAxKQogZW51bSB7Ci0gSUZMQV9WVElfVU5TUEVDLAorICBJRkxBX1ZUSV9VTlNQRUMsCisgIElGTEFfVlRJX0xJTkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVlRJX0xJTkssCi0gSUZMQV9WVElfSUtFWSwKLSBJRkxBX1ZUSV9PS0VZLAotIElGTEFfVlRJX0xPQ0FMLAorICBJRkxBX1ZUSV9JS0VZLAorICBJRkxBX1ZUSV9PS0VZLAorICBJRkxBX1ZUSV9MT0NBTCwKKyAgSUZMQV9WVElfUkVNT1RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZUSV9SRU1PVEUsCi0gX19JRkxBX1ZUSV9NQVgsCisgIF9fSUZMQV9WVElfTUFYLAogfTsKICNkZWZpbmUgSUZMQV9WVElfTUFYIChfX0lGTEFfVlRJX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl92bGFuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3ZsYW4uaAppbmRleCA0Y2YzYzE1Li44NWEzMjM5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3ZsYW4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3ZsYW4uaApAQCAtMTksNTEgKzE5LDUxIEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX0lGX1ZMQU5fSF8KICNkZWZpbmUgX1VBUElfTElOVVhfSUZfVkxBTl9IXwogZW51bSB2bGFuX2lvY3RsX2NtZHMgewotIEFERF9WTEFOX0NNRCwKKyAgQUREX1ZMQU5fQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERUxfVkxBTl9DTUQsCi0gU0VUX1ZMQU5fSU5HUkVTU19QUklPUklUWV9DTUQsCi0gU0VUX1ZMQU5fRUdSRVNTX1BSSU9SSVRZX0NNRCwKLSBHRVRfVkxBTl9JTkdSRVNTX1BSSU9SSVRZX0NNRCwKKyAgREVMX1ZMQU5fQ01ELAorICBTRVRfVkxBTl9JTkdSRVNTX1BSSU9SSVRZX0NNRCwKKyAgU0VUX1ZMQU5fRUdSRVNTX1BSSU9SSVRZX0NNRCwKKyAgR0VUX1ZMQU5fSU5HUkVTU19QUklPUklUWV9DTUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdFVF9WTEFOX0VHUkVTU19QUklPUklUWV9DTUQsCi0gU0VUX1ZMQU5fTkFNRV9UWVBFX0NNRCwKLSBTRVRfVkxBTl9GTEFHX0NNRCwKLSBHRVRfVkxBTl9SRUFMREVWX05BTUVfQ01ELAorICBHRVRfVkxBTl9FR1JFU1NfUFJJT1JJVFlfQ01ELAorICBTRVRfVkxBTl9OQU1FX1RZUEVfQ01ELAorICBTRVRfVkxBTl9GTEFHX0NNRCwKKyAgR0VUX1ZMQU5fUkVBTERFVl9OQU1FX0NNRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR0VUX1ZMQU5fVklEX0NNRAorICBHRVRfVkxBTl9WSURfQ01ECiB9OwogZW51bSB2bGFuX2ZsYWdzIHsKLSBWTEFOX0ZMQUdfUkVPUkRFUl9IRFIgPSAweDEsCisgIFZMQU5fRkxBR19SRU9SREVSX0hEUiA9IDB4MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkxBTl9GTEFHX0dWUlAgPSAweDIsCi0gVkxBTl9GTEFHX0xPT1NFX0JJTkRJTkcgPSAweDQsCi0gVkxBTl9GTEFHX01WUlAgPSAweDgsCisgIFZMQU5fRkxBR19HVlJQID0gMHgyLAorICBWTEFOX0ZMQUdfTE9PU0VfQklORElORyA9IDB4NCwKKyAgVkxBTl9GTEFHX01WUlAgPSAweDgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdmxhbl9uYW1lX3R5cGVzIHsKLSBWTEFOX05BTUVfVFlQRV9QTFVTX1ZJRCwKLSBWTEFOX05BTUVfVFlQRV9SQVdfUExVU19WSUQsCi0gVkxBTl9OQU1FX1RZUEVfUExVU19WSURfTk9fUEFELAorICBWTEFOX05BTUVfVFlQRV9QTFVTX1ZJRCwKKyAgVkxBTl9OQU1FX1RZUEVfUkFXX1BMVVNfVklELAorICBWTEFOX05BTUVfVFlQRV9QTFVTX1ZJRF9OT19QQUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZMQU5fTkFNRV9UWVBFX1JBV19QTFVTX1ZJRF9OT19QQUQsCi0gVkxBTl9OQU1FX1RZUEVfSElHSEVTVAorICBWTEFOX05BTUVfVFlQRV9SQVdfUExVU19WSURfTk9fUEFELAorICBWTEFOX05BTUVfVFlQRV9ISUdIRVNUCiB9Owogc3RydWN0IHZsYW5faW9jdGxfYXJncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjbWQ7Ci0gY2hhciBkZXZpY2UxWzI0XTsKLSB1bmlvbiB7Ci0gY2hhciBkZXZpY2UyWzI0XTsKKyAgaW50IGNtZDsKKyAgY2hhciBkZXZpY2UxWzI0XTsKKyAgdW5pb24geworICAgIGNoYXIgZGV2aWNlMlsyNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBWSUQ7Ci0gdW5zaWduZWQgaW50IHNrYl9wcmlvcml0eTsKLSB1bnNpZ25lZCBpbnQgbmFtZV90eXBlOwotIHVuc2lnbmVkIGludCBiaW5kX3R5cGU7CisgICAgaW50IFZJRDsKKyAgICB1bnNpZ25lZCBpbnQgc2tiX3ByaW9yaXR5OworICAgIHVuc2lnbmVkIGludCBuYW1lX3R5cGU7CisgICAgdW5zaWduZWQgaW50IGJpbmRfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWc7Ci0gfSB1OwotIHNob3J0IHZsYW5fcW9zOworICAgIHVuc2lnbmVkIGludCBmbGFnOworICB9IHU7CisgIHNob3J0IHZsYW5fcW9zOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWdtcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZ21wLmgKaW5kZXggZGZhOGNhMi4uYzIwZTEzNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZ21wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZ21wLmgKQEAgLTIyLDExICsyMiwxMSBAQAogI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWdtcGhkciB7Ci0gX191OCB0eXBlOwotIF9fdTggY29kZTsKLSBfX3N1bTE2IGNzdW07CisgIF9fdTggdHlwZTsKKyAgX191OCBjb2RlOworICBfX3N1bTE2IGNzdW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBncm91cDsKKyAgX19iZTMyIGdyb3VwOwogfTsKICNkZWZpbmUgSUdNUFYzX01PREVfSVNfSU5DTFVERSAxCiAjZGVmaW5lIElHTVBWM19NT0RFX0lTX0VYQ0xVREUgMgpAQCAtMzcsNDcgKzM3LDQyIEBACiAjZGVmaW5lIElHTVBWM19CTE9DS19PTERfU09VUkNFUyA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlnbXB2M19ncmVjIHsKLSBfX3U4IGdyZWNfdHlwZTsKLSBfX3U4IGdyZWNfYXV4d29yZHM7Ci0gX19iZTE2IGdyZWNfbnNyY3M7CisgIF9fdTggZ3JlY190eXBlOworICBfX3U4IGdyZWNfYXV4d29yZHM7CisgIF9fYmUxNiBncmVjX25zcmNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZ3JlY19tY2E7Ci0gX19iZTMyIGdyZWNfc3JjWzBdOworICBfX2JlMzIgZ3JlY19tY2E7CisgIF9fYmUzMiBncmVjX3NyY1swXTsKIH07CiBzdHJ1Y3QgaWdtcHYzX3JlcG9ydCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IHJlc3YxOwotIF9fYmUxNiBjc3VtOwotIF9fYmUxNiByZXN2MjsKKyAgX191OCB0eXBlOworICBfX3U4IHJlc3YxOworICBfX2JlMTYgY3N1bTsKKyAgX19iZTE2IHJlc3YyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgbmdyZWM7Ci0gc3RydWN0IGlnbXB2M19ncmVjIGdyZWNbMF07CisgIF9fYmUxNiBuZ3JlYzsKKyAgc3RydWN0IGlnbXB2M19ncmVjIGdyZWNbMF07CiB9Owogc3RydWN0IGlnbXB2M19xdWVyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IGNvZGU7Ci0gX19iZTE2IGNzdW07Ci0gX19iZTMyIGdyb3VwOworICBfX3U4IHR5cGU7CisgIF9fdTggY29kZTsKKyAgX19iZTE2IGNzdW07CisgIF9fYmUzMiBncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191OCBxcnY6MywKLSBzdXBwcmVzczoxLAotIHJlc3Y6NDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcXJ2IDogMywgc3VwcHJlc3MgOiAxLCByZXN2IDogNDsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggcmVzdjo0LAotIHN1cHByZXNzOjEsCi0gcXJ2OjM7CisgIF9fdTggcmVzdiA6IDQsIHN1cHByZXNzIDogMSwgcXJ2IDogMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgogI2VuZGlmCi0gX191OCBxcWljOworICBfX3U4IHFxaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBuc3JjczsKLSBfX2JlMzIgc3Jjc1swXTsKKyAgX19iZTE2IG5zcmNzOworICBfX2JlMzIgc3Jjc1swXTsKIH07CiAjZGVmaW5lIElHTVBfSE9TVF9NRU1CRVJTSElQX1FVRVJZIDB4MTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luLmgKaW5kZXggZTkwMjA5Yi4uNmE2ZDE2ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW4uaApAQCAtMjIsNzEgKzIyLDcxIEBACiAjaW5jbHVkZSA8bGludXgvc29ja2V0Lmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBQUk9UT19JUCA9IDAsCisgIElQUFJPVE9fSVAgPSAwLAogI2RlZmluZSBJUFBST1RPX0lQIElQUFJPVE9fSVAKLSBJUFBST1RPX0lDTVAgPSAxLAorICBJUFBST1RPX0lDTVAgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19JQ01QIElQUFJPVE9fSUNNUAotIElQUFJPVE9fSUdNUCA9IDIsCisgIElQUFJPVE9fSUdNUCA9IDIsCiAjZGVmaW5lIElQUFJPVE9fSUdNUCBJUFBST1RPX0lHTVAKLSBJUFBST1RPX0lQSVAgPSA0LAorICBJUFBST1RPX0lQSVAgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19JUElQIElQUFJPVE9fSVBJUAotIElQUFJPVE9fVENQID0gNiwKKyAgSVBQUk9UT19UQ1AgPSA2LAogI2RlZmluZSBJUFBST1RPX1RDUCBJUFBST1RPX1RDUAotIElQUFJPVE9fRUdQID0gOCwKKyAgSVBQUk9UT19FR1AgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19FR1AgSVBQUk9UT19FR1AKLSBJUFBST1RPX1BVUCA9IDEyLAorICBJUFBST1RPX1BVUCA9IDEyLAogI2RlZmluZSBJUFBST1RPX1BVUCBJUFBST1RPX1BVUAotIElQUFJPVE9fVURQID0gMTcsCisgIElQUFJPVE9fVURQID0gMTcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX1VEUCBJUFBST1RPX1VEUAotIElQUFJPVE9fSURQID0gMjIsCisgIElQUFJPVE9fSURQID0gMjIsCiAjZGVmaW5lIElQUFJPVE9fSURQIElQUFJPVE9fSURQCi0gSVBQUk9UT19UUCA9IDI5LAorICBJUFBST1RPX1RQID0gMjksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX1RQIElQUFJPVE9fVFAKLSBJUFBST1RPX0RDQ1AgPSAzMywKKyAgSVBQUk9UT19EQ0NQID0gMzMsCiAjZGVmaW5lIElQUFJPVE9fRENDUCBJUFBST1RPX0RDQ1AKLSBJUFBST1RPX0lQVjYgPSA0MSwKKyAgSVBQUk9UT19JUFY2ID0gNDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX0lQVjYgSVBQUk9UT19JUFY2Ci0gSVBQUk9UT19SU1ZQID0gNDYsCisgIElQUFJPVE9fUlNWUCA9IDQ2LAogI2RlZmluZSBJUFBST1RPX1JTVlAgSVBQUk9UT19SU1ZQCi0gSVBQUk9UT19HUkUgPSA0NywKKyAgSVBQUk9UT19HUkUgPSA0NywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fR1JFIElQUFJPVE9fR1JFCi0gSVBQUk9UT19FU1AgPSA1MCwKKyAgSVBQUk9UT19FU1AgPSA1MCwKICNkZWZpbmUgSVBQUk9UT19FU1AgSVBQUk9UT19FU1AKLSBJUFBST1RPX0FIID0gNTEsCisgIElQUFJPVE9fQUggPSA1MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fQUggSVBQUk9UT19BSAotIElQUFJPVE9fTVRQID0gOTIsCisgIElQUFJPVE9fTVRQID0gOTIsCiAjZGVmaW5lIElQUFJPVE9fTVRQIElQUFJPVE9fTVRQCi0gSVBQUk9UT19CRUVUUEggPSA5NCwKKyAgSVBQUk9UT19CRUVUUEggPSA5NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fQkVFVFBIIElQUFJPVE9fQkVFVFBICi0gSVBQUk9UT19FTkNBUCA9IDk4LAorICBJUFBST1RPX0VOQ0FQID0gOTgsCiAjZGVmaW5lIElQUFJPVE9fRU5DQVAgSVBQUk9UT19FTkNBUAotIElQUFJPVE9fUElNID0gMTAzLAorICBJUFBST1RPX1BJTSA9IDEwMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fUElNIElQUFJPVE9fUElNCi0gSVBQUk9UT19DT01QID0gMTA4LAorICBJUFBST1RPX0NPTVAgPSAxMDgsCiAjZGVmaW5lIElQUFJPVE9fQ09NUCBJUFBST1RPX0NPTVAKLSBJUFBST1RPX1NDVFAgPSAxMzIsCisgIElQUFJPVE9fU0NUUCA9IDEzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fU0NUUCBJUFBST1RPX1NDVFAKLSBJUFBST1RPX1VEUExJVEUgPSAxMzYsCisgIElQUFJPVE9fVURQTElURSA9IDEzNiwKICNkZWZpbmUgSVBQUk9UT19VRFBMSVRFIElQUFJPVE9fVURQTElURQotIElQUFJPVE9fUkFXID0gMjU1LAorICBJUFBST1RPX1JBVyA9IDI1NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fUkFXIElQUFJPVE9fUkFXCi0gSVBQUk9UT19NQVgKKyAgSVBQUk9UT19NQVgKIH07CiBzdHJ1Y3QgaW5fYWRkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzX2FkZHI7CisgIF9fYmUzMiBzX2FkZHI7CiB9OwogI2RlZmluZSBJUF9UT1MgMQogI2RlZmluZSBJUF9UVEwgMgpAQCAtMTI0LDk5ICsxMjQsOTkgQEAKICNkZWZpbmUgSVBfUE1UVURJU0NfRE8gMgogI2RlZmluZSBJUF9QTVRVRElTQ19QUk9CRSAzCiAjZGVmaW5lIElQX1BNVFVESVNDX0lOVEVSRkFDRSA0Ci0jZGVmaW5lIElQX01VTFRJQ0FTVF9JRiAzMgorI2RlZmluZSBJUF9QTVRVRElTQ19PTUlUIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQX01VTFRJQ0FTVF9JRiAzMgogI2RlZmluZSBJUF9NVUxUSUNBU1RfVFRMIDMzCiAjZGVmaW5lIElQX01VTFRJQ0FTVF9MT09QIDM0CiAjZGVmaW5lIElQX0FERF9NRU1CRVJTSElQIDM1Ci0jZGVmaW5lIElQX0RST1BfTUVNQkVSU0hJUCAzNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBfRFJPUF9NRU1CRVJTSElQIDM2CiAjZGVmaW5lIElQX1VOQkxPQ0tfU09VUkNFIDM3CiAjZGVmaW5lIElQX0JMT0NLX1NPVVJDRSAzOAogI2RlZmluZSBJUF9BRERfU09VUkNFX01FTUJFUlNISVAgMzkKLSNkZWZpbmUgSVBfRFJPUF9TT1VSQ0VfTUVNQkVSU0hJUCA0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBfRFJPUF9TT1VSQ0VfTUVNQkVSU0hJUCA0MAogI2RlZmluZSBJUF9NU0ZJTFRFUiA0MQogI2RlZmluZSBNQ0FTVF9KT0lOX0dST1VQIDQyCiAjZGVmaW5lIE1DQVNUX0JMT0NLX1NPVVJDRSA0MwotI2RlZmluZSBNQ0FTVF9VTkJMT0NLX1NPVVJDRSA0NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUNBU1RfVU5CTE9DS19TT1VSQ0UgNDQKICNkZWZpbmUgTUNBU1RfTEVBVkVfR1JPVVAgNDUKICNkZWZpbmUgTUNBU1RfSk9JTl9TT1VSQ0VfR1JPVVAgNDYKICNkZWZpbmUgTUNBU1RfTEVBVkVfU09VUkNFX0dST1VQIDQ3Ci0jZGVmaW5lIE1DQVNUX01TRklMVEVSIDQ4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNQ0FTVF9NU0ZJTFRFUiA0OAogI2RlZmluZSBJUF9NVUxUSUNBU1RfQUxMIDQ5CiAjZGVmaW5lIElQX1VOSUNBU1RfSUYgNTAKICNkZWZpbmUgTUNBU1RfRVhDTFVERSAwCi0jZGVmaW5lIE1DQVNUX0lOQ0xVREUgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUNBU1RfSU5DTFVERSAxCiAjZGVmaW5lIElQX0RFRkFVTFRfTVVMVElDQVNUX1RUTCAxCiAjZGVmaW5lIElQX0RFRkFVTFRfTVVMVElDQVNUX0xPT1AgMQogc3RydWN0IGlwX21yZXEgewotIHN0cnVjdCBpbl9hZGRyIGltcl9tdWx0aWFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIGltcl9pbnRlcmZhY2U7CisgIHN0cnVjdCBpbl9hZGRyIGltcl9tdWx0aWFkZHI7CisgIHN0cnVjdCBpbl9hZGRyIGltcl9pbnRlcmZhY2U7CiB9Owogc3RydWN0IGlwX21yZXFuIHsKLSBzdHJ1Y3QgaW5fYWRkciBpbXJfbXVsdGlhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5fYWRkciBpbXJfYWRkcmVzczsKLSBpbnQgaW1yX2lmaW5kZXg7CisgIHN0cnVjdCBpbl9hZGRyIGltcl9tdWx0aWFkZHI7CisgIHN0cnVjdCBpbl9hZGRyIGltcl9hZGRyZXNzOworICBpbnQgaW1yX2lmaW5kZXg7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF9tcmVxX3NvdXJjZSB7CisgIF9fYmUzMiBpbXJfbXVsdGlhZGRyOworICBfX2JlMzIgaW1yX2ludGVyZmFjZTsKKyAgX19iZTMyIGltcl9zb3VyY2VhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaW1yX211bHRpYWRkcjsKLSBfX2JlMzIgaW1yX2ludGVyZmFjZTsKLSBfX2JlMzIgaW1yX3NvdXJjZWFkZHI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF9tc2ZpbHRlciB7Ci0gX19iZTMyIGltc2ZfbXVsdGlhZGRyOwotIF9fYmUzMiBpbXNmX2ludGVyZmFjZTsKLSBfX3UzMiBpbXNmX2Ztb2RlOworICBfX2JlMzIgaW1zZl9tdWx0aWFkZHI7CisgIF9fYmUzMiBpbXNmX2ludGVyZmFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW1zZl9udW1zcmM7Ci0gX19iZTMyIGltc2Zfc2xpc3RbMV07CisgIF9fdTMyIGltc2ZfZm1vZGU7CisgIF9fdTMyIGltc2ZfbnVtc3JjOworICBfX2JlMzIgaW1zZl9zbGlzdFsxXTsKIH07Ci0jZGVmaW5lIElQX01TRklMVEVSX1NJWkUobnVtc3JjKSAgIChzaXplb2Yoc3RydWN0IGlwX21zZmlsdGVyKSAtIHNpemVvZihfX3UzMikgICArIChudW1zcmMpICogc2l6ZW9mKF9fdTMyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQX01TRklMVEVSX1NJWkUobnVtc3JjKSAoc2l6ZW9mKHN0cnVjdCBpcF9tc2ZpbHRlcikgLSBzaXplb2YoX191MzIpICsgKG51bXNyYykgKiBzaXplb2YoX191MzIpKQogc3RydWN0IGdyb3VwX3JlcSB7Ci0gX191MzIgZ3JfaW50ZXJmYWNlOwotIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdyX2dyb3VwOworICBfX3UzMiBncl9pbnRlcmZhY2U7CisgIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdyX2dyb3VwOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGdyb3VwX3NvdXJjZV9yZXEgewotIF9fdTMyIGdzcl9pbnRlcmZhY2U7Ci0gc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3NyX2dyb3VwOwotIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdzcl9zb3VyY2U7CisgIF9fdTMyIGdzcl9pbnRlcmZhY2U7CisgIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdzcl9ncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdzcl9zb3VyY2U7CiB9Owogc3RydWN0IGdyb3VwX2ZpbHRlciB7Ci0gX191MzIgZ2ZfaW50ZXJmYWNlOwotIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdmX2dyb3VwOworICBfX3UzMiBnZl9pbnRlcmZhY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGdmX2Ztb2RlOwotIF9fdTMyIGdmX251bXNyYzsKLSBzdHJ1Y3QgX19rZXJuZWxfc29ja2FkZHJfc3RvcmFnZSBnZl9zbGlzdFsxXTsKKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ2ZfZ3JvdXA7CisgIF9fdTMyIGdmX2Ztb2RlOworICBfX3UzMiBnZl9udW1zcmM7CisgIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdmX3NsaXN0WzFdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBHUk9VUF9GSUxURVJfU0laRShudW1zcmMpICAgKHNpemVvZihzdHJ1Y3QgZ3JvdXBfZmlsdGVyKSAtIHNpemVvZihzdHJ1Y3QgX19rZXJuZWxfc29ja2FkZHJfc3RvcmFnZSkgICArIChudW1zcmMpICogc2l6ZW9mKHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlKSkKKyNkZWZpbmUgR1JPVVBfRklMVEVSX1NJWkUobnVtc3JjKSAoc2l6ZW9mKHN0cnVjdCBncm91cF9maWx0ZXIpIC0gc2l6ZW9mKHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlKSArIChudW1zcmMpICogc2l6ZW9mKHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlKSkKIHN0cnVjdCBpbl9wa3RpbmZvIHsKLSBpbnQgaXBpX2lmaW5kZXg7Ci0gc3RydWN0IGluX2FkZHIgaXBpX3NwZWNfZHN0OworICBpbnQgaXBpX2lmaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIGlwaV9hZGRyOworICBzdHJ1Y3QgaW5fYWRkciBpcGlfc3BlY19kc3Q7CisgIHN0cnVjdCBpbl9hZGRyIGlwaV9hZGRyOwogfTsKICNkZWZpbmUgX19TT0NLX1NJWkVfXyAxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9pbiB7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNpbl9mYW1pbHk7CisgIF9fYmUxNiBzaW5fcG9ydDsKKyAgc3RydWN0IGluX2FkZHIgc2luX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNpbl9mYW1pbHk7Ci0gX19iZTE2IHNpbl9wb3J0OwotIHN0cnVjdCBpbl9hZGRyIHNpbl9hZGRyOwotIHVuc2lnbmVkIGNoYXIgX19wYWRbX19TT0NLX1NJWkVfXyAtIHNpemVvZihzaG9ydCBpbnQpIC0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZW9mKHVuc2lnbmVkIHNob3J0IGludCkgLSBzaXplb2Yoc3RydWN0IGluX2FkZHIpXTsKKyAgdW5zaWduZWQgY2hhciBfX3BhZFtfX1NPQ0tfU0laRV9fIC0gc2l6ZW9mKHNob3J0IGludCkgLSBzaXplb2YodW5zaWduZWQgc2hvcnQgaW50KSAtIHNpemVvZihzdHJ1Y3QgaW5fYWRkcildOwogfTsKICNkZWZpbmUgc2luX3plcm8gX19wYWQKICNkZWZpbmUgSU5fQ0xBU1NBKGEpICgoKChsb25nIGludCkgKGEpKSAmIDB4ODAwMDAwMDApID09IDApCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luNi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbjYuaAppbmRleCA2NDFhNjliLi5lNTRiYzMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luNi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW42LmgKQEAgLTIzLDE1ICsyMywxNSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfX1VBUElfREVGX0lONl9BRERSCiBzdHJ1Y3QgaW42X2FkZHIgewotIHVuaW9uIHsKLSBfX3U4IHU2X2FkZHI4WzE2XTsKKyAgdW5pb24geworICAgIF9fdTggdTZfYWRkcjhbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfX1VBUElfREVGX0lONl9BRERSX0FMVAotIF9fYmUxNiB1Nl9hZGRyMTZbOF07Ci0gX19iZTMyIHU2X2FkZHIzMls0XTsKKyAgICBfX2JlMTYgdTZfYWRkcjE2WzhdOworICAgIF9fYmUzMiB1Nl9hZGRyMzJbNF07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBpbjZfdTsKKyAgfSBpbjZfdTsKICNkZWZpbmUgczZfYWRkciBpbjZfdS51Nl9hZGRyOAogI2lmIF9fVUFQSV9ERUZfSU42X0FERFJfQUxUCiAjZGVmaW5lIHM2X2FkZHIxNiBpbjZfdS51Nl9hZGRyMTYKQEAgLTQzLDM1ICs0MywzNSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfX1VBUElfREVGX1NPQ0tBRERSX0lONgogc3RydWN0IHNvY2thZGRyX2luNiB7Ci0gdW5zaWduZWQgc2hvcnQgaW50IHNpbjZfZmFtaWx5OwotIF9fYmUxNiBzaW42X3BvcnQ7CisgIHVuc2lnbmVkIHNob3J0IGludCBzaW42X2ZhbWlseTsKKyAgX19iZTE2IHNpbjZfcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNpbjZfZmxvd2luZm87Ci0gc3RydWN0IGluNl9hZGRyIHNpbjZfYWRkcjsKLSBfX3UzMiBzaW42X3Njb3BlX2lkOworICBfX2JlMzIgc2luNl9mbG93aW5mbzsKKyAgc3RydWN0IGluNl9hZGRyIHNpbjZfYWRkcjsKKyAgX191MzIgc2luNl9zY29wZV9pZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjaWYgX19VQVBJX0RFRl9JUFY2X01SRVEKIHN0cnVjdCBpcHY2X21yZXEgewotIHN0cnVjdCBpbjZfYWRkciBpcHY2bXJfbXVsdGlhZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgaXB2Nm1yX211bHRpYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlwdjZtcl9pZmluZGV4OworICBpbnQgaXB2Nm1yX2lmaW5kZXg7CiB9OwogI2VuZGlmCiAjZGVmaW5lIGlwdjZtcl9hY2FkZHIgaXB2Nm1yX211bHRpYWRkcgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpbjZfZmxvd2xhYmVsX3JlcSB7Ci0gc3RydWN0IGluNl9hZGRyIGZscl9kc3Q7Ci0gX19iZTMyIGZscl9sYWJlbDsKLSBfX3U4IGZscl9hY3Rpb247CisgIHN0cnVjdCBpbjZfYWRkciBmbHJfZHN0OworICBfX2JlMzIgZmxyX2xhYmVsOworICBfX3U4IGZscl9hY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxyX3NoYXJlOwotIF9fdTE2IGZscl9mbGFnczsKLSBfX3UxNiBmbHJfZXhwaXJlczsKLSBfX3UxNiBmbHJfbGluZ2VyOworICBfX3U4IGZscl9zaGFyZTsKKyAgX191MTYgZmxyX2ZsYWdzOworICBfX3UxNiBmbHJfZXhwaXJlczsKKyAgX191MTYgZmxyX2xpbmdlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgX19mbHJfcGFkOworICBfX3UzMiBfX2Zscl9wYWQ7CiB9OwogI2RlZmluZSBJUFY2X0ZMX0FfR0VUIDAKICNkZWZpbmUgSVBWNl9GTF9BX1BVVCAxCkBAIC0xMjgsNjcgKzEyOCw3MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9UTFZfSlVNQk8gMTk0CiAjZGVmaW5lIElQVjZfVExWX0hBTyAyMDEKKyNpZiBfX1VBUElfREVGX0lQVjZfT1BUSU9OUwogI2RlZmluZSBJUFY2X0FERFJGT1JNIDEKLSNkZWZpbmUgSVBWNl8yMjkyUEtUSU5GTyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2XzIyOTJQS1RJTkZPIDIKICNkZWZpbmUgSVBWNl8yMjkySE9QT1BUUyAzCiAjZGVmaW5lIElQVjZfMjI5MkRTVE9QVFMgNAogI2RlZmluZSBJUFY2XzIyOTJSVEhEUiA1Ci0jZGVmaW5lIElQVjZfMjI5MlBLVE9QVElPTlMgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl8yMjkyUEtUT1BUSU9OUyA2CiAjZGVmaW5lIElQVjZfQ0hFQ0tTVU0gNwogI2RlZmluZSBJUFY2XzIyOTJIT1BMSU1JVCA4CiAjZGVmaW5lIElQVjZfTkVYVEhPUCA5Ci0jZGVmaW5lIElQVjZfQVVUSEhEUiAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl9BVVRISERSIDEwCiAjZGVmaW5lIElQVjZfRkxPV0lORk8gMTEKICNkZWZpbmUgSVBWNl9VTklDQVNUX0hPUFMgMTYKICNkZWZpbmUgSVBWNl9NVUxUSUNBU1RfSUYgMTcKLSNkZWZpbmUgSVBWNl9NVUxUSUNBU1RfSE9QUyAxOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl9NVUxUSUNBU1RfSE9QUyAxOAogI2RlZmluZSBJUFY2X01VTFRJQ0FTVF9MT09QIDE5CiAjZGVmaW5lIElQVjZfQUREX01FTUJFUlNISVAgMjAKICNkZWZpbmUgSVBWNl9EUk9QX01FTUJFUlNISVAgMjEKLSNkZWZpbmUgSVBWNl9ST1VURVJfQUxFUlQgMjIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQVjZfUk9VVEVSX0FMRVJUIDIyCiAjZGVmaW5lIElQVjZfTVRVX0RJU0NPVkVSIDIzCiAjZGVmaW5lIElQVjZfTVRVIDI0CiAjZGVmaW5lIElQVjZfUkVDVkVSUiAyNQotI2RlZmluZSBJUFY2X1Y2T05MWSAyNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl9WNk9OTFkgMjYKICNkZWZpbmUgSVBWNl9KT0lOX0FOWUNBU1QgMjcKICNkZWZpbmUgSVBWNl9MRUFWRV9BTllDQVNUIDI4CiAjZGVmaW5lIElQVjZfUE1UVURJU0NfRE9OVCAwCi0jZGVmaW5lIElQVjZfUE1UVURJU0NfV0FOVCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X1BNVFVESVNDX1dBTlQgMQogI2RlZmluZSBJUFY2X1BNVFVESVNDX0RPIDIKICNkZWZpbmUgSVBWNl9QTVRVRElTQ19QUk9CRSAzCiAjZGVmaW5lIElQVjZfUE1UVURJU0NfSU5URVJGQUNFIDQKLSNkZWZpbmUgSVBWNl9GTE9XTEFCRUxfTUdSIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X1BNVFVESVNDX09NSVQgNQorI2RlZmluZSBJUFY2X0ZMT1dMQUJFTF9NR1IgMzIKICNkZWZpbmUgSVBWNl9GTE9XSU5GT19TRU5EIDMzCiAjZGVmaW5lIElQVjZfSVBTRUNfUE9MSUNZIDM0Ci0jZGVmaW5lIElQVjZfWEZSTV9QT0xJQ1kgMzUKLSNkZWZpbmUgSVBWNl9SRUNWUEtUSU5GTyA0OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl9YRlJNX1BPTElDWSAzNQorI2VuZGlmCisjZGVmaW5lIElQVjZfUkVDVlBLVElORk8gNDkKICNkZWZpbmUgSVBWNl9QS1RJTkZPIDUwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1JFQ1ZIT1BMSU1JVCA1MQogI2RlZmluZSBJUFY2X0hPUExJTUlUIDUyCiAjZGVmaW5lIElQVjZfUkVDVkhPUE9QVFMgNTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjZfSE9QT1BUUyA1NAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9SVEhEUkRTVE9QVFMgNTUKICNkZWZpbmUgSVBWNl9SRUNWUlRIRFIgNTYKICNkZWZpbmUgSVBWNl9SVEhEUiA1NwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9SRUNWRFNUT1BUUyA1OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9EU1RPUFRTIDU5CiAjZGVmaW5lIElQVjZfUkVDVlBBVEhNVFUgNjAKICNkZWZpbmUgSVBWNl9QQVRITVRVIDYxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X0RPTlRGUkFHIDYyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1JFQ1ZUQ0xBU1MgNjYKICNkZWZpbmUgSVBWNl9UQ0xBU1MgNjcKKyNkZWZpbmUgSVBWNl9BVVRPRkxPV0xBQkVMIDcwCiAjZGVmaW5lIElQVjZfQUREUl9QUkVGRVJFTkNFUyA3MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9QUkVGRVJfU1JDX1RNUCAweDAwMDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5fcm91dGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5fcm91dGUuaAppbmRleCA1MDkxM2E5Li45Mzg5NjQ4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luX3JvdXRlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbl9yb3V0ZS5oCkBAIC0zOSw3ICszOSw3IEBACiAjZGVmaW5lIFJUQ0ZfTVVMVElDQVNUIDB4MjAwMDAwMDAKICNkZWZpbmUgUlRDRl9SRUpFQ1QgMHg0MDAwMDAwMAogI2RlZmluZSBSVENGX0xPQ0FMIDB4ODAwMDAwMDAKLSNkZWZpbmUgUlRDRl9OQVQgKFJUQ0ZfRE5BVHxSVENGX1NOQVQpCisjZGVmaW5lIFJUQ0ZfTkFUIChSVENGX0ROQVQgfCBSVENGX1NOQVQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBSVF9UT1ModG9zKSAoKHRvcykmSVBUT1NfVE9TX01BU0spCisjZGVmaW5lIFJUX1RPUyh0b3MpICgodG9zKSAmIElQVE9TX1RPU19NQVNLKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luZXRfZGlhZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbmV0X2RpYWcuaAppbmRleCBiNTUwNGE5Li40NDdkOTI4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luZXRfZGlhZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5ldF9kaWFnLmgKQEAgLTI0LDExNSArMjQsMTI1IEBACiAjZGVmaW5lIERDQ1BESUFHX0dFVFNPQ0sgMTkKICNkZWZpbmUgSU5FVF9ESUFHX0dFVFNPQ0tfTUFYIDI0CiBzdHJ1Y3QgaW5ldF9kaWFnX3NvY2tpZCB7Ci0gX19iZTE2IGlkaWFnX3Nwb3J0OworICBfX2JlMTYgaWRpYWdfc3BvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBpZGlhZ19kcG9ydDsKLSBfX2JlMzIgaWRpYWdfc3JjWzRdOwotIF9fYmUzMiBpZGlhZ19kc3RbNF07Ci0gX191MzIgaWRpYWdfaWY7CisgIF9fYmUxNiBpZGlhZ19kcG9ydDsKKyAgX19iZTMyIGlkaWFnX3NyY1s0XTsKKyAgX19iZTMyIGlkaWFnX2RzdFs0XTsKKyAgX191MzIgaWRpYWdfaWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgaWRpYWdfY29va2llWzJdOwogI2RlZmluZSBJTkVUX0RJQUdfTk9DT09LSUUgKH4wVSkKIH07CiBzdHJ1Y3QgaW5ldF9kaWFnX3JlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaWRpYWdfZmFtaWx5OwotIF9fdTggaWRpYWdfc3JjX2xlbjsKLSBfX3U4IGlkaWFnX2RzdF9sZW47Ci0gX191OCBpZGlhZ19leHQ7CisgIF9fdTggaWRpYWdfZmFtaWx5OworICBfX3U4IGlkaWFnX3NyY19sZW47CisgIF9fdTggaWRpYWdfZHN0X2xlbjsKKyAgX191OCBpZGlhZ19leHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIGlkOwotIF9fdTMyIGlkaWFnX3N0YXRlczsKLSBfX3UzMiBpZGlhZ19kYnM7CisgIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIGlkOworICBfX3UzMiBpZGlhZ19zdGF0ZXM7CisgIF9fdTMyIGlkaWFnX2RiczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGluZXRfZGlhZ19yZXFfdjIgewotIF9fdTggc2RpYWdfZmFtaWx5OwotIF9fdTggc2RpYWdfcHJvdG9jb2w7Ci0gX191OCBpZGlhZ19leHQ7CisgIF9fdTggc2RpYWdfZmFtaWx5OworICBfX3U4IHNkaWFnX3Byb3RvY29sOworICBfX3U4IGlkaWFnX2V4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYWQ7Ci0gX191MzIgaWRpYWdfc3RhdGVzOwotIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIGlkOworICBfX3U4IHBhZDsKKyAgX191MzIgaWRpYWdfc3RhdGVzOworICBzdHJ1Y3QgaW5ldF9kaWFnX3NvY2tpZCBpZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSU5FVF9ESUFHX1JFUV9OT05FLAotIElORVRfRElBR19SRVFfQllURUNPREUsCisgIElORVRfRElBR19SRVFfTk9ORSwKKyAgSU5FVF9ESUFHX1JFUV9CWVRFQ09ERSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTkVUX0RJQUdfUkVRX01BWCBJTkVUX0RJQUdfUkVRX0JZVEVDT0RFCiBzdHJ1Y3QgaW5ldF9kaWFnX2JjX29wIHsKLSB1bnNpZ25lZCBjaGFyIGNvZGU7Ci0gdW5zaWduZWQgY2hhciB5ZXM7CisgIHVuc2lnbmVkIGNoYXIgY29kZTsKKyAgdW5zaWduZWQgY2hhciB5ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IG5vOworICB1bnNpZ25lZCBzaG9ydCBubzsKIH07CiBlbnVtIHsKLSBJTkVUX0RJQUdfQkNfTk9QLAorICBJTkVUX0RJQUdfQkNfTk9QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkVUX0RJQUdfQkNfSk1QLAotIElORVRfRElBR19CQ19TX0dFLAotIElORVRfRElBR19CQ19TX0xFLAotIElORVRfRElBR19CQ19EX0dFLAorICBJTkVUX0RJQUdfQkNfSk1QLAorICBJTkVUX0RJQUdfQkNfU19HRSwKKyAgSU5FVF9ESUFHX0JDX1NfTEUsCisgIElORVRfRElBR19CQ19EX0dFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkVUX0RJQUdfQkNfRF9MRSwKLSBJTkVUX0RJQUdfQkNfQVVUTywKLSBJTkVUX0RJQUdfQkNfU19DT05ELAotIElORVRfRElBR19CQ19EX0NPTkQsCisgIElORVRfRElBR19CQ19EX0xFLAorICBJTkVUX0RJQUdfQkNfQVVUTywKKyAgSU5FVF9ESUFHX0JDX1NfQ09ORCwKKyAgSU5FVF9ESUFHX0JDX0RfQ09ORCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGluZXRfZGlhZ19ob3N0Y29uZCB7Ci0gX191OCBmYW1pbHk7Ci0gX191OCBwcmVmaXhfbGVuOworICBfX3U4IGZhbWlseTsKKyAgX191OCBwcmVmaXhfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcG9ydDsKLSBfX2JlMzIgYWRkclswXTsKKyAgaW50IHBvcnQ7CisgIF9fYmUzMiBhZGRyWzBdOwogfTsKIHN0cnVjdCBpbmV0X2RpYWdfbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpZGlhZ19mYW1pbHk7Ci0gX191OCBpZGlhZ19zdGF0ZTsKLSBfX3U4IGlkaWFnX3RpbWVyOwotIF9fdTggaWRpYWdfcmV0cmFuczsKKyAgX191OCBpZGlhZ19mYW1pbHk7CisgIF9fdTggaWRpYWdfc3RhdGU7CisgIF9fdTggaWRpYWdfdGltZXI7CisgIF9fdTggaWRpYWdfcmV0cmFuczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluZXRfZGlhZ19zb2NraWQgaWQ7Ci0gX191MzIgaWRpYWdfZXhwaXJlczsKLSBfX3UzMiBpZGlhZ19ycXVldWU7Ci0gX191MzIgaWRpYWdfd3F1ZXVlOworICBzdHJ1Y3QgaW5ldF9kaWFnX3NvY2tpZCBpZDsKKyAgX191MzIgaWRpYWdfZXhwaXJlczsKKyAgX191MzIgaWRpYWdfcnF1ZXVlOworICBfX3UzMiBpZGlhZ193cXVldWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkaWFnX3VpZDsKLSBfX3UzMiBpZGlhZ19pbm9kZTsKKyAgX191MzIgaWRpYWdfdWlkOworICBfX3UzMiBpZGlhZ19pbm9kZTsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5FVF9ESUFHX05PTkUsCi0gSU5FVF9ESUFHX01FTUlORk8sCi0gSU5FVF9ESUFHX0lORk8sCi0gSU5FVF9ESUFHX1ZFR0FTSU5GTywKKyAgSU5FVF9ESUFHX05PTkUsCisgIElORVRfRElBR19NRU1JTkZPLAorICBJTkVUX0RJQUdfSU5GTywKKyAgSU5FVF9ESUFHX1ZFR0FTSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5FVF9ESUFHX0NPTkcsCi0gSU5FVF9ESUFHX1RPUywKLSBJTkVUX0RJQUdfVENMQVNTLAotIElORVRfRElBR19TS01FTUlORk8sCisgIElORVRfRElBR19DT05HLAorICBJTkVUX0RJQUdfVE9TLAorICBJTkVUX0RJQUdfVENMQVNTLAorICBJTkVUX0RJQUdfU0tNRU1JTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkVUX0RJQUdfU0hVVERPV04sCisgIElORVRfRElBR19TSFVURE9XTiwKKyAgSU5FVF9ESUFHX0RDVENQSU5GTywKIH07Ci0jZGVmaW5lIElORVRfRElBR19NQVggSU5FVF9ESUFHX1NIVVRET1dOCisjZGVmaW5lIElORVRfRElBR19NQVggSU5FVF9ESUFHX0RDVENQSU5GTworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpbmV0X2RpYWdfbWVtaW5mbyB7CisgIF9fdTMyIGlkaWFnX3JtZW07CisgIF9fdTMyIGlkaWFnX3dtZW07CisgIF9fdTMyIGlkaWFnX2ZtZW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkaWFnX3JtZW07Ci0gX191MzIgaWRpYWdfd21lbTsKLSBfX3UzMiBpZGlhZ19mbWVtOwotIF9fdTMyIGlkaWFnX3RtZW07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZGlhZ190bWVtOwogfTsKIHN0cnVjdCB0Y3B2ZWdhc19pbmZvIHsKLSBfX3UzMiB0Y3B2X2VuYWJsZWQ7Ci0gX191MzIgdGNwdl9ydHRjbnQ7CisgIF9fdTMyIHRjcHZfZW5hYmxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwdl9ydHQ7Ci0gX191MzIgdGNwdl9taW5ydHQ7CisgIF9fdTMyIHRjcHZfcnR0Y250OworICBfX3UzMiB0Y3B2X3J0dDsKKyAgX191MzIgdGNwdl9taW5ydHQ7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCB0Y3BfZGN0Y3BfaW5mbyB7CisgIF9fdTE2IGRjdGNwX2VuYWJsZWQ7CisgIF9fdTE2IGRjdGNwX2NlX3N0YXRlOworICBfX3UzMiBkY3RjcF9hbHBoYTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGRjdGNwX2FiX2VjbjsKKyAgX191MzIgZGN0Y3BfYWJfdG90OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5vdGlmeS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbm90aWZ5LmgKaW5kZXggZjliMDIwYS4uODkzMGJlMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbm90aWZ5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbm90aWZ5LmgKQEAgLTIyLDEyICsyMiwxMiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlub3RpZnlfZXZlbnQgewotIF9fczMyIHdkOwotIF9fdTMyIG1hc2s7Ci0gX191MzIgY29va2llOworICBfX3MzMiB3ZDsKKyAgX191MzIgbWFzazsKKyAgX191MzIgY29va2llOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gY2hhciBuYW1lWzBdOworICBfX3UzMiBsZW47CisgIGNoYXIgbmFtZVswXTsKIH07CiAjZGVmaW5lIElOX0FDQ0VTUyAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNTgsNyArNTgsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU5fSVNESVIgMHg0MDAwMDAwMAogI2RlZmluZSBJTl9PTkVTSE9UIDB4ODAwMDAwMDAKLSNkZWZpbmUgSU5fQUxMX0VWRU5UUyAoSU5fQUNDRVNTIHwgSU5fTU9ESUZZIHwgSU5fQVRUUklCIHwgSU5fQ0xPU0VfV1JJVEUgfCAgIElOX0NMT1NFX05PV1JJVEUgfCBJTl9PUEVOIHwgSU5fTU9WRURfRlJPTSB8ICAgSU5fTU9WRURfVE8gfCBJTl9ERUxFVEUgfCBJTl9DUkVBVEUgfCBJTl9ERUxFVEVfU0VMRiB8ICAgSU5fTU9WRV9TRUxGKQorI2RlZmluZSBJTl9BTExfRVZFTlRTIChJTl9BQ0NFU1MgfCBJTl9NT0RJRlkgfCBJTl9BVFRSSUIgfCBJTl9DTE9TRV9XUklURSB8IElOX0NMT1NFX05PV1JJVEUgfCBJTl9PUEVOIHwgSU5fTU9WRURfRlJPTSB8IElOX01PVkVEX1RPIHwgSU5fREVMRVRFIHwgSU5fQ1JFQVRFIHwgSU5fREVMRVRFX1NFTEYgfCBJTl9NT1ZFX1NFTEYpCiAjZGVmaW5lIElOX0NMT0VYRUMgT19DTE9FWEVDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTl9OT05CTE9DSyBPX05PTkJMT0NLCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lucHV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lucHV0LmgKaW5kZXggYjlkNWIyYS4uODhhMWYwZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbnB1dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5wdXQuaApAQCAtMjQsNDAgKzI0LDQwIEBACiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpbnB1dF9ldmVudCB7Ci0gc3RydWN0IHRpbWV2YWwgdGltZTsKKyAgc3RydWN0IHRpbWV2YWwgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdHlwZTsKLSBfX3UxNiBjb2RlOwotIF9fczMyIHZhbHVlOworICBfX3UxNiB0eXBlOworICBfX3UxNiBjb2RlOworICBfX3MzMiB2YWx1ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVl9WRVJTSU9OIDB4MDEwMDAxCiBzdHJ1Y3QgaW5wdXRfaWQgewotIF9fdTE2IGJ1c3R5cGU7Ci0gX191MTYgdmVuZG9yOworICBfX3UxNiBidXN0eXBlOworICBfX3UxNiB2ZW5kb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHByb2R1Y3Q7Ci0gX191MTYgdmVyc2lvbjsKKyAgX191MTYgcHJvZHVjdDsKKyAgX191MTYgdmVyc2lvbjsKIH07CiBzdHJ1Y3QgaW5wdXRfYWJzaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHZhbHVlOwotIF9fczMyIG1pbmltdW07Ci0gX19zMzIgbWF4aW11bTsKLSBfX3MzMiBmdXp6OworICBfX3MzMiB2YWx1ZTsKKyAgX19zMzIgbWluaW11bTsKKyAgX19zMzIgbWF4aW11bTsKKyAgX19zMzIgZnV6ejsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgZmxhdDsKLSBfX3MzMiByZXNvbHV0aW9uOworICBfX3MzMiBmbGF0OworICBfX3MzMiByZXNvbHV0aW9uOwogfTsKIHN0cnVjdCBpbnB1dF9rZXltYXBfZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU5QVVRfS0VZTUFQX0JZX0lOREVYICgxIDw8IDApCi0gX191OCBmbGFnczsKLSBfX3U4IGxlbjsKLSBfX3UxNiBpbmRleDsKKyAgX191OCBmbGFnczsKKyAgX191OCBsZW47CisgIF9fdTE2IGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBrZXljb2RlOwotIF9fdTggc2NhbmNvZGVbMzJdOworICBfX3UzMiBrZXljb2RlOworICBfX3U4IHNjYW5jb2RlWzMyXTsKIH07CiAjZGVmaW5lIEVWSU9DR1ZFUlNJT04gX0lPUignRScsIDB4MDEsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC05OCw5NjMgKzk4LDk3MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU5QVVRfUFJPUF9TRU1JX01UIDB4MDMKICNkZWZpbmUgSU5QVVRfUFJPUF9UT1BCVVRUT05QQUQgMHgwNAorI2RlZmluZSBJTlBVVF9QUk9QX1BPSU5USU5HX1NUSUNLIDB4MDUKICNkZWZpbmUgSU5QVVRfUFJPUF9NQVggMHgxZgotI2RlZmluZSBJTlBVVF9QUk9QX0NOVCAoSU5QVVRfUFJPUF9NQVggKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSU5QVVRfUFJPUF9DTlQgKElOUFVUX1BST1BfTUFYICsgMSkKICNkZWZpbmUgRVZfU1lOIDB4MDAKICNkZWZpbmUgRVZfS0VZIDB4MDEKICNkZWZpbmUgRVZfUkVMIDB4MDIKLSNkZWZpbmUgRVZfQUJTIDB4MDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVWX0FCUyAweDAzCiAjZGVmaW5lIEVWX01TQyAweDA0CiAjZGVmaW5lIEVWX1NXIDB4MDUKICNkZWZpbmUgRVZfTEVEIDB4MTEKLSNkZWZpbmUgRVZfU05EIDB4MTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVWX1NORCAweDEyCiAjZGVmaW5lIEVWX1JFUCAweDE0CiAjZGVmaW5lIEVWX0ZGIDB4MTUKICNkZWZpbmUgRVZfUFdSIDB4MTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVWX0ZGX1NUQVRVUyAweDE3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVl9NQVggMHgxZgotI2RlZmluZSBFVl9DTlQgKEVWX01BWCsxKQorI2RlZmluZSBFVl9DTlQgKEVWX01BWCArIDEpCiAjZGVmaW5lIFNZTl9SRVBPUlQgMAotI2RlZmluZSBTWU5fQ09ORklHIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNZTl9DT05GSUcgMQogI2RlZmluZSBTWU5fTVRfUkVQT1JUIDIKICNkZWZpbmUgU1lOX0RST1BQRUQgMwogI2RlZmluZSBTWU5fTUFYIDB4ZgotI2RlZmluZSBTWU5fQ05UIChTWU5fTUFYKzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTWU5fQ05UIChTWU5fTUFYICsgMSkKICNkZWZpbmUgS0VZX1JFU0VSVkVEIDAKICNkZWZpbmUgS0VZX0VTQyAxCiAjZGVmaW5lIEtFWV8xIDIKLSNkZWZpbmUgS0VZXzIgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZXzIgMwogI2RlZmluZSBLRVlfMyA0CiAjZGVmaW5lIEtFWV80IDUKICNkZWZpbmUgS0VZXzUgNgotI2RlZmluZSBLRVlfNiA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfNiA3CiAjZGVmaW5lIEtFWV83IDgKICNkZWZpbmUgS0VZXzggOQogI2RlZmluZSBLRVlfOSAxMAotI2RlZmluZSBLRVlfMCAxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZXzAgMTEKICNkZWZpbmUgS0VZX01JTlVTIDEyCiAjZGVmaW5lIEtFWV9FUVVBTCAxMwogI2RlZmluZSBLRVlfQkFDS1NQQUNFIDE0Ci0jZGVmaW5lIEtFWV9UQUIgMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9UQUIgMTUKICNkZWZpbmUgS0VZX1EgMTYKICNkZWZpbmUgS0VZX1cgMTcKICNkZWZpbmUgS0VZX0UgMTgKLSNkZWZpbmUgS0VZX1IgMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9SIDE5CiAjZGVmaW5lIEtFWV9UIDIwCiAjZGVmaW5lIEtFWV9ZIDIxCiAjZGVmaW5lIEtFWV9VIDIyCi0jZGVmaW5lIEtFWV9JIDIzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSSAyMwogI2RlZmluZSBLRVlfTyAyNAogI2RlZmluZSBLRVlfUCAyNQogI2RlZmluZSBLRVlfTEVGVEJSQUNFIDI2Ci0jZGVmaW5lIEtFWV9SSUdIVEJSQUNFIDI3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUklHSFRCUkFDRSAyNwogI2RlZmluZSBLRVlfRU5URVIgMjgKICNkZWZpbmUgS0VZX0xFRlRDVFJMIDI5CiAjZGVmaW5lIEtFWV9BIDMwCi0jZGVmaW5lIEtFWV9TIDMxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUyAzMQogI2RlZmluZSBLRVlfRCAzMgogI2RlZmluZSBLRVlfRiAzMwogI2RlZmluZSBLRVlfRyAzNAotI2RlZmluZSBLRVlfSCAzNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0ggMzUKICNkZWZpbmUgS0VZX0ogMzYKICNkZWZpbmUgS0VZX0sgMzcKICNkZWZpbmUgS0VZX0wgMzgKLSNkZWZpbmUgS0VZX1NFTUlDT0xPTiAzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NFTUlDT0xPTiAzOQogI2RlZmluZSBLRVlfQVBPU1RST1BIRSA0MAogI2RlZmluZSBLRVlfR1JBVkUgNDEKICNkZWZpbmUgS0VZX0xFRlRTSElGVCA0MgotI2RlZmluZSBLRVlfQkFDS1NMQVNIIDQzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQkFDS1NMQVNIIDQzCiAjZGVmaW5lIEtFWV9aIDQ0CiAjZGVmaW5lIEtFWV9YIDQ1CiAjZGVmaW5lIEtFWV9DIDQ2Ci0jZGVmaW5lIEtFWV9WIDQ3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfViA0NwogI2RlZmluZSBLRVlfQiA0OAogI2RlZmluZSBLRVlfTiA0OQogI2RlZmluZSBLRVlfTSA1MAotI2RlZmluZSBLRVlfQ09NTUEgNTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DT01NQSA1MQogI2RlZmluZSBLRVlfRE9UIDUyCiAjZGVmaW5lIEtFWV9TTEFTSCA1MwogI2RlZmluZSBLRVlfUklHSFRTSElGVCA1NAotI2RlZmluZSBLRVlfS1BBU1RFUklTSyA1NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tQQVNURVJJU0sgNTUKICNkZWZpbmUgS0VZX0xFRlRBTFQgNTYKICNkZWZpbmUgS0VZX1NQQUNFIDU3CiAjZGVmaW5lIEtFWV9DQVBTTE9DSyA1OAotI2RlZmluZSBLRVlfRjEgNTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GMSA1OQogI2RlZmluZSBLRVlfRjIgNjAKICNkZWZpbmUgS0VZX0YzIDYxCiAjZGVmaW5lIEtFWV9GNCA2MgotI2RlZmluZSBLRVlfRjUgNjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GNSA2MwogI2RlZmluZSBLRVlfRjYgNjQKICNkZWZpbmUgS0VZX0Y3IDY1CiAjZGVmaW5lIEtFWV9GOCA2NgotI2RlZmluZSBLRVlfRjkgNjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GOSA2NwogI2RlZmluZSBLRVlfRjEwIDY4CiAjZGVmaW5lIEtFWV9OVU1MT0NLIDY5CiAjZGVmaW5lIEtFWV9TQ1JPTExMT0NLIDcwCi0jZGVmaW5lIEtFWV9LUDcgNzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9LUDcgNzEKICNkZWZpbmUgS0VZX0tQOCA3MgogI2RlZmluZSBLRVlfS1A5IDczCiAjZGVmaW5lIEtFWV9LUE1JTlVTIDc0Ci0jZGVmaW5lIEtFWV9LUDQgNzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9LUDQgNzUKICNkZWZpbmUgS0VZX0tQNSA3NgogI2RlZmluZSBLRVlfS1A2IDc3CiAjZGVmaW5lIEtFWV9LUFBMVVMgNzgKLSNkZWZpbmUgS0VZX0tQMSA3OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tQMSA3OQogI2RlZmluZSBLRVlfS1AyIDgwCiAjZGVmaW5lIEtFWV9LUDMgODEKICNkZWZpbmUgS0VZX0tQMCA4MgotI2RlZmluZSBLRVlfS1BET1QgODMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9LUERPVCA4MwogI2RlZmluZSBLRVlfWkVOS0FLVUhBTktBS1UgODUKICNkZWZpbmUgS0VZXzEwMk5EIDg2CiAjZGVmaW5lIEtFWV9GMTEgODcKLSNkZWZpbmUgS0VZX0YxMiA4OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0YxMiA4OAogI2RlZmluZSBLRVlfUk8gODkKICNkZWZpbmUgS0VZX0tBVEFLQU5BIDkwCiAjZGVmaW5lIEtFWV9ISVJBR0FOQSA5MQotI2RlZmluZSBLRVlfSEVOS0FOIDkyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSEVOS0FOIDkyCiAjZGVmaW5lIEtFWV9LQVRBS0FOQUhJUkFHQU5BIDkzCiAjZGVmaW5lIEtFWV9NVUhFTktBTiA5NAogI2RlZmluZSBLRVlfS1BKUENPTU1BIDk1Ci0jZGVmaW5lIEtFWV9LUEVOVEVSIDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfS1BFTlRFUiA5NgogI2RlZmluZSBLRVlfUklHSFRDVFJMIDk3CiAjZGVmaW5lIEtFWV9LUFNMQVNIIDk4CiAjZGVmaW5lIEtFWV9TWVNSUSA5OQotI2RlZmluZSBLRVlfUklHSFRBTFQgMTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUklHSFRBTFQgMTAwCiAjZGVmaW5lIEtFWV9MSU5FRkVFRCAxMDEKICNkZWZpbmUgS0VZX0hPTUUgMTAyCiAjZGVmaW5lIEtFWV9VUCAxMDMKLSNkZWZpbmUgS0VZX1BBR0VVUCAxMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9QQUdFVVAgMTA0CiAjZGVmaW5lIEtFWV9MRUZUIDEwNQogI2RlZmluZSBLRVlfUklHSFQgMTA2CiAjZGVmaW5lIEtFWV9FTkQgMTA3Ci0jZGVmaW5lIEtFWV9ET1dOIDEwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0RPV04gMTA4CiAjZGVmaW5lIEtFWV9QQUdFRE9XTiAxMDkKICNkZWZpbmUgS0VZX0lOU0VSVCAxMTAKICNkZWZpbmUgS0VZX0RFTEVURSAxMTEKLSNkZWZpbmUgS0VZX01BQ1JPIDExMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX01BQ1JPIDExMgogI2RlZmluZSBLRVlfTVVURSAxMTMKICNkZWZpbmUgS0VZX1ZPTFVNRURPV04gMTE0CiAjZGVmaW5lIEtFWV9WT0xVTUVVUCAxMTUKLSNkZWZpbmUgS0VZX1BPV0VSIDExNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BPV0VSIDExNgogI2RlZmluZSBLRVlfS1BFUVVBTCAxMTcKICNkZWZpbmUgS0VZX0tQUExVU01JTlVTIDExOAogI2RlZmluZSBLRVlfUEFVU0UgMTE5Ci0jZGVmaW5lIEtFWV9TQ0FMRSAxMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9TQ0FMRSAxMjAKICNkZWZpbmUgS0VZX0tQQ09NTUEgMTIxCiAjZGVmaW5lIEtFWV9IQU5HRVVMIDEyMgogI2RlZmluZSBLRVlfSEFOR1VFTCBLRVlfSEFOR0VVTAotI2RlZmluZSBLRVlfSEFOSkEgMTIzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSEFOSkEgMTIzCiAjZGVmaW5lIEtFWV9ZRU4gMTI0CiAjZGVmaW5lIEtFWV9MRUZUTUVUQSAxMjUKICNkZWZpbmUgS0VZX1JJR0hUTUVUQSAxMjYKLSNkZWZpbmUgS0VZX0NPTVBPU0UgMTI3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ09NUE9TRSAxMjcKICNkZWZpbmUgS0VZX1NUT1AgMTI4CiAjZGVmaW5lIEtFWV9BR0FJTiAxMjkKICNkZWZpbmUgS0VZX1BST1BTIDEzMAotI2RlZmluZSBLRVlfVU5ETyAxMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9VTkRPIDEzMQogI2RlZmluZSBLRVlfRlJPTlQgMTMyCiAjZGVmaW5lIEtFWV9DT1BZIDEzMwogI2RlZmluZSBLRVlfT1BFTiAxMzQKLSNkZWZpbmUgS0VZX1BBU1RFIDEzNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BBU1RFIDEzNQogI2RlZmluZSBLRVlfRklORCAxMzYKICNkZWZpbmUgS0VZX0NVVCAxMzcKICNkZWZpbmUgS0VZX0hFTFAgMTM4Ci0jZGVmaW5lIEtFWV9NRU5VIDEzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX01FTlUgMTM5CiAjZGVmaW5lIEtFWV9DQUxDIDE0MAogI2RlZmluZSBLRVlfU0VUVVAgMTQxCiAjZGVmaW5lIEtFWV9TTEVFUCAxNDIKLSNkZWZpbmUgS0VZX1dBS0VVUCAxNDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9XQUtFVVAgMTQzCiAjZGVmaW5lIEtFWV9GSUxFIDE0NAogI2RlZmluZSBLRVlfU0VOREZJTEUgMTQ1CiAjZGVmaW5lIEtFWV9ERUxFVEVGSUxFIDE0NgotI2RlZmluZSBLRVlfWEZFUiAxNDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9YRkVSIDE0NwogI2RlZmluZSBLRVlfUFJPRzEgMTQ4CiAjZGVmaW5lIEtFWV9QUk9HMiAxNDkKICNkZWZpbmUgS0VZX1dXVyAxNTAKLSNkZWZpbmUgS0VZX01TRE9TIDE1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX01TRE9TIDE1MQogI2RlZmluZSBLRVlfQ09GRkVFIDE1MgogI2RlZmluZSBLRVlfU0NSRUVOTE9DSyBLRVlfQ09GRkVFCiAjZGVmaW5lIEtFWV9ESVJFQ1RJT04gMTUzCi0jZGVmaW5lIEtFWV9DWUNMRVdJTkRPV1MgMTU0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ1lDTEVXSU5ET1dTIDE1NAogI2RlZmluZSBLRVlfTUFJTCAxNTUKICNkZWZpbmUgS0VZX0JPT0tNQVJLUyAxNTYKICNkZWZpbmUgS0VZX0NPTVBVVEVSIDE1NwotI2RlZmluZSBLRVlfQkFDSyAxNTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9CQUNLIDE1OAogI2RlZmluZSBLRVlfRk9SV0FSRCAxNTkKICNkZWZpbmUgS0VZX0NMT1NFQ0QgMTYwCiAjZGVmaW5lIEtFWV9FSkVDVENEIDE2MQotI2RlZmluZSBLRVlfRUpFQ1RDTE9TRUNEIDE2MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0VKRUNUQ0xPU0VDRCAxNjIKICNkZWZpbmUgS0VZX05FWFRTT05HIDE2MwogI2RlZmluZSBLRVlfUExBWVBBVVNFIDE2NAogI2RlZmluZSBLRVlfUFJFVklPVVNTT05HIDE2NQotI2RlZmluZSBLRVlfU1RPUENEIDE2NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NUT1BDRCAxNjYKICNkZWZpbmUgS0VZX1JFQ09SRCAxNjcKICNkZWZpbmUgS0VZX1JFV0lORCAxNjgKICNkZWZpbmUgS0VZX1BIT05FIDE2OQotI2RlZmluZSBLRVlfSVNPIDE3MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0lTTyAxNzAKICNkZWZpbmUgS0VZX0NPTkZJRyAxNzEKICNkZWZpbmUgS0VZX0hPTUVQQUdFIDE3MgogI2RlZmluZSBLRVlfUkVGUkVTSCAxNzMKLSNkZWZpbmUgS0VZX0VYSVQgMTc0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRVhJVCAxNzQKICNkZWZpbmUgS0VZX01PVkUgMTc1CiAjZGVmaW5lIEtFWV9FRElUIDE3NgogI2RlZmluZSBLRVlfU0NST0xMVVAgMTc3Ci0jZGVmaW5lIEtFWV9TQ1JPTExET1dOIDE3OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NDUk9MTERPV04gMTc4CiAjZGVmaW5lIEtFWV9LUExFRlRQQVJFTiAxNzkKICNkZWZpbmUgS0VZX0tQUklHSFRQQVJFTiAxODAKICNkZWZpbmUgS0VZX05FVyAxODEKLSNkZWZpbmUgS0VZX1JFRE8gMTgyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUkVETyAxODIKICNkZWZpbmUgS0VZX0YxMyAxODMKICNkZWZpbmUgS0VZX0YxNCAxODQKICNkZWZpbmUgS0VZX0YxNSAxODUKLSNkZWZpbmUgS0VZX0YxNiAxODYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GMTYgMTg2CiAjZGVmaW5lIEtFWV9GMTcgMTg3CiAjZGVmaW5lIEtFWV9GMTggMTg4CiAjZGVmaW5lIEtFWV9GMTkgMTg5Ci0jZGVmaW5lIEtFWV9GMjAgMTkwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRjIwIDE5MAogI2RlZmluZSBLRVlfRjIxIDE5MQogI2RlZmluZSBLRVlfRjIyIDE5MgogI2RlZmluZSBLRVlfRjIzIDE5MwotI2RlZmluZSBLRVlfRjI0IDE5NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0YyNCAxOTQKICNkZWZpbmUgS0VZX1BMQVlDRCAyMDAKICNkZWZpbmUgS0VZX1BBVVNFQ0QgMjAxCiAjZGVmaW5lIEtFWV9QUk9HMyAyMDIKLSNkZWZpbmUgS0VZX1BST0c0IDIwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BST0c0IDIwMwogI2RlZmluZSBLRVlfREFTSEJPQVJEIDIwNAogI2RlZmluZSBLRVlfU1VTUEVORCAyMDUKICNkZWZpbmUgS0VZX0NMT1NFIDIwNgotI2RlZmluZSBLRVlfUExBWSAyMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9QTEFZIDIwNwogI2RlZmluZSBLRVlfRkFTVEZPUldBUkQgMjA4CiAjZGVmaW5lIEtFWV9CQVNTQk9PU1QgMjA5CiAjZGVmaW5lIEtFWV9QUklOVCAyMTAKLSNkZWZpbmUgS0VZX0hQIDIxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0hQIDIxMQogI2RlZmluZSBLRVlfQ0FNRVJBIDIxMgogI2RlZmluZSBLRVlfU09VTkQgMjEzCiAjZGVmaW5lIEtFWV9RVUVTVElPTiAyMTQKLSNkZWZpbmUgS0VZX0VNQUlMIDIxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0VNQUlMIDIxNQogI2RlZmluZSBLRVlfQ0hBVCAyMTYKICNkZWZpbmUgS0VZX1NFQVJDSCAyMTcKICNkZWZpbmUgS0VZX0NPTk5FQ1QgMjE4Ci0jZGVmaW5lIEtFWV9GSU5BTkNFIDIxOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0ZJTkFOQ0UgMjE5CiAjZGVmaW5lIEtFWV9TUE9SVCAyMjAKICNkZWZpbmUgS0VZX1NIT1AgMjIxCiAjZGVmaW5lIEtFWV9BTFRFUkFTRSAyMjIKLSNkZWZpbmUgS0VZX0NBTkNFTCAyMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DQU5DRUwgMjIzCiAjZGVmaW5lIEtFWV9CUklHSFRORVNTRE9XTiAyMjQKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NVUCAyMjUKICNkZWZpbmUgS0VZX01FRElBIDIyNgotI2RlZmluZSBLRVlfU1dJVENIVklERU9NT0RFIDIyNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NXSVRDSFZJREVPTU9ERSAyMjcKICNkZWZpbmUgS0VZX0tCRElMTFVNVE9HR0xFIDIyOAogI2RlZmluZSBLRVlfS0JESUxMVU1ET1dOIDIyOQogI2RlZmluZSBLRVlfS0JESUxMVU1VUCAyMzAKLSNkZWZpbmUgS0VZX1NFTkQgMjMxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU0VORCAyMzEKICNkZWZpbmUgS0VZX1JFUExZIDIzMgogI2RlZmluZSBLRVlfRk9SV0FSRE1BSUwgMjMzCiAjZGVmaW5lIEtFWV9TQVZFIDIzNAotI2RlZmluZSBLRVlfRE9DVU1FTlRTIDIzNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0RPQ1VNRU5UUyAyMzUKICNkZWZpbmUgS0VZX0JBVFRFUlkgMjM2CiAjZGVmaW5lIEtFWV9CTFVFVE9PVEggMjM3CiAjZGVmaW5lIEtFWV9XTEFOIDIzOAotI2RlZmluZSBLRVlfVVdCIDIzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1VXQiAyMzkKICNkZWZpbmUgS0VZX1VOS05PV04gMjQwCiAjZGVmaW5lIEtFWV9WSURFT19ORVhUIDI0MQogI2RlZmluZSBLRVlfVklERU9fUFJFViAyNDIKLSNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfQ1lDTEUgMjQzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQlJJR0hUTkVTU19DWUNMRSAyNDMKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfQVVUTyAyNDQKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfWkVSTyBLRVlfQlJJR0hUTkVTU19BVVRPCiAjZGVmaW5lIEtFWV9ESVNQTEFZX09GRiAyNDUKLSNkZWZpbmUgS0VZX1dXQU4gMjQ2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfV1dBTiAyNDYKICNkZWZpbmUgS0VZX1dJTUFYIEtFWV9XV0FOCiAjZGVmaW5lIEtFWV9SRktJTEwgMjQ3CiAjZGVmaW5lIEtFWV9NSUNNVVRFIDI0OAotI2RlZmluZSBCVE5fTUlTQyAweDEwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX01JU0MgMHgxMDAKICNkZWZpbmUgQlROXzAgMHgxMDAKICNkZWZpbmUgQlROXzEgMHgxMDEKICNkZWZpbmUgQlROXzIgMHgxMDIKLSNkZWZpbmUgQlROXzMgMHgxMDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl8zIDB4MTAzCiAjZGVmaW5lIEJUTl80IDB4MTA0CiAjZGVmaW5lIEJUTl81IDB4MTA1CiAjZGVmaW5lIEJUTl82IDB4MTA2Ci0jZGVmaW5lIEJUTl83IDB4MTA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fNyAweDEwNwogI2RlZmluZSBCVE5fOCAweDEwOAogI2RlZmluZSBCVE5fOSAweDEwOQogI2RlZmluZSBCVE5fTU9VU0UgMHgxMTAKLSNkZWZpbmUgQlROX0xFRlQgMHgxMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9MRUZUIDB4MTEwCiAjZGVmaW5lIEJUTl9SSUdIVCAweDExMQogI2RlZmluZSBCVE5fTUlERExFIDB4MTEyCiAjZGVmaW5lIEJUTl9TSURFIDB4MTEzCi0jZGVmaW5lIEJUTl9FWFRSQSAweDExNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0VYVFJBIDB4MTE0CiAjZGVmaW5lIEJUTl9GT1JXQVJEIDB4MTE1CiAjZGVmaW5lIEJUTl9CQUNLIDB4MTE2CiAjZGVmaW5lIEJUTl9UQVNLIDB4MTE3Ci0jZGVmaW5lIEJUTl9KT1lTVElDSyAweDEyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0pPWVNUSUNLIDB4MTIwCiAjZGVmaW5lIEJUTl9UUklHR0VSIDB4MTIwCiAjZGVmaW5lIEJUTl9USFVNQiAweDEyMQogI2RlZmluZSBCVE5fVEhVTUIyIDB4MTIyCi0jZGVmaW5lIEJUTl9UT1AgMHgxMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9UT1AgMHgxMjMKICNkZWZpbmUgQlROX1RPUDIgMHgxMjQKICNkZWZpbmUgQlROX1BJTktJRSAweDEyNQogI2RlZmluZSBCVE5fQkFTRSAweDEyNgotI2RlZmluZSBCVE5fQkFTRTIgMHgxMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9CQVNFMiAweDEyNwogI2RlZmluZSBCVE5fQkFTRTMgMHgxMjgKICNkZWZpbmUgQlROX0JBU0U0IDB4MTI5CiAjZGVmaW5lIEJUTl9CQVNFNSAweDEyYQotI2RlZmluZSBCVE5fQkFTRTYgMHgxMmIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9CQVNFNiAweDEyYgogI2RlZmluZSBCVE5fREVBRCAweDEyZgogI2RlZmluZSBCVE5fR0FNRVBBRCAweDEzMAogI2RlZmluZSBCVE5fU09VVEggMHgxMzAKLSNkZWZpbmUgQlROX0EgQlROX1NPVVRICiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fQSBCVE5fU09VVEgKICNkZWZpbmUgQlROX0VBU1QgMHgxMzEKICNkZWZpbmUgQlROX0IgQlROX0VBU1QKICNkZWZpbmUgQlROX0MgMHgxMzIKLSNkZWZpbmUgQlROX05PUlRIIDB4MTMzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fTk9SVEggMHgxMzMKICNkZWZpbmUgQlROX1ggQlROX05PUlRICiAjZGVmaW5lIEJUTl9XRVNUIDB4MTM0CiAjZGVmaW5lIEJUTl9ZIEJUTl9XRVNUCi0jZGVmaW5lIEJUTl9aIDB4MTM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fWiAweDEzNQogI2RlZmluZSBCVE5fVEwgMHgxMzYKICNkZWZpbmUgQlROX1RSIDB4MTM3CiAjZGVmaW5lIEJUTl9UTDIgMHgxMzgKLSNkZWZpbmUgQlROX1RSMiAweDEzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RSMiAweDEzOQogI2RlZmluZSBCVE5fU0VMRUNUIDB4MTNhCiAjZGVmaW5lIEJUTl9TVEFSVCAweDEzYgogI2RlZmluZSBCVE5fTU9ERSAweDEzYwotI2RlZmluZSBCVE5fVEhVTUJMIDB4MTNkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fVEhVTUJMIDB4MTNkCiAjZGVmaW5lIEJUTl9USFVNQlIgMHgxM2UKICNkZWZpbmUgQlROX0RJR0kgMHgxNDAKICNkZWZpbmUgQlROX1RPT0xfUEVOIDB4MTQwCi0jZGVmaW5lIEJUTl9UT09MX1JVQkJFUiAweDE0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RPT0xfUlVCQkVSIDB4MTQxCiAjZGVmaW5lIEJUTl9UT09MX0JSVVNIIDB4MTQyCiAjZGVmaW5lIEJUTl9UT09MX1BFTkNJTCAweDE0MwogI2RlZmluZSBCVE5fVE9PTF9BSVJCUlVTSCAweDE0NAotI2RlZmluZSBCVE5fVE9PTF9GSU5HRVIgMHgxNDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9UT09MX0ZJTkdFUiAweDE0NQogI2RlZmluZSBCVE5fVE9PTF9NT1VTRSAweDE0NgogI2RlZmluZSBCVE5fVE9PTF9MRU5TIDB4MTQ3CiAjZGVmaW5lIEJUTl9UT09MX1FVSU5UVEFQIDB4MTQ4Ci0jZGVmaW5lIEJUTl9UT1VDSCAweDE0YQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RPVUNIIDB4MTRhCiAjZGVmaW5lIEJUTl9TVFlMVVMgMHgxNGIKICNkZWZpbmUgQlROX1NUWUxVUzIgMHgxNGMKICNkZWZpbmUgQlROX1RPT0xfRE9VQkxFVEFQIDB4MTRkCi0jZGVmaW5lIEJUTl9UT09MX1RSSVBMRVRBUCAweDE0ZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RPT0xfVFJJUExFVEFQIDB4MTRlCiAjZGVmaW5lIEJUTl9UT09MX1FVQURUQVAgMHgxNGYKICNkZWZpbmUgQlROX1dIRUVMIDB4MTUwCiAjZGVmaW5lIEJUTl9HRUFSX0RPV04gMHgxNTAKLSNkZWZpbmUgQlROX0dFQVJfVVAgMHgxNTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9HRUFSX1VQIDB4MTUxCiAjZGVmaW5lIEtFWV9PSyAweDE2MAogI2RlZmluZSBLRVlfU0VMRUNUIDB4MTYxCiAjZGVmaW5lIEtFWV9HT1RPIDB4MTYyCi0jZGVmaW5lIEtFWV9DTEVBUiAweDE2MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NMRUFSIDB4MTYzCiAjZGVmaW5lIEtFWV9QT1dFUjIgMHgxNjQKICNkZWZpbmUgS0VZX09QVElPTiAweDE2NQogI2RlZmluZSBLRVlfSU5GTyAweDE2NgotI2RlZmluZSBLRVlfVElNRSAweDE2NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1RJTUUgMHgxNjcKICNkZWZpbmUgS0VZX1ZFTkRPUiAweDE2OAogI2RlZmluZSBLRVlfQVJDSElWRSAweDE2OQogI2RlZmluZSBLRVlfUFJPR1JBTSAweDE2YQotI2RlZmluZSBLRVlfQ0hBTk5FTCAweDE2YgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NIQU5ORUwgMHgxNmIKICNkZWZpbmUgS0VZX0ZBVk9SSVRFUyAweDE2YwogI2RlZmluZSBLRVlfRVBHIDB4MTZkCiAjZGVmaW5lIEtFWV9QVlIgMHgxNmUKLSNkZWZpbmUgS0VZX01IUCAweDE2ZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX01IUCAweDE2ZgogI2RlZmluZSBLRVlfTEFOR1VBR0UgMHgxNzAKICNkZWZpbmUgS0VZX1RJVExFIDB4MTcxCiAjZGVmaW5lIEtFWV9TVUJUSVRMRSAweDE3MgotI2RlZmluZSBLRVlfQU5HTEUgMHgxNzMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9BTkdMRSAweDE3MwogI2RlZmluZSBLRVlfWk9PTSAweDE3NAogI2RlZmluZSBLRVlfTU9ERSAweDE3NQogI2RlZmluZSBLRVlfS0VZQk9BUkQgMHgxNzYKLSNkZWZpbmUgS0VZX1NDUkVFTiAweDE3NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NDUkVFTiAweDE3NwogI2RlZmluZSBLRVlfUEMgMHgxNzgKICNkZWZpbmUgS0VZX1RWIDB4MTc5CiAjZGVmaW5lIEtFWV9UVjIgMHgxN2EKLSNkZWZpbmUgS0VZX1ZDUiAweDE3YgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1ZDUiAweDE3YgogI2RlZmluZSBLRVlfVkNSMiAweDE3YwogI2RlZmluZSBLRVlfU0FUIDB4MTdkCiAjZGVmaW5lIEtFWV9TQVQyIDB4MTdlCi0jZGVmaW5lIEtFWV9DRCAweDE3ZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NEIDB4MTdmCiAjZGVmaW5lIEtFWV9UQVBFIDB4MTgwCiAjZGVmaW5lIEtFWV9SQURJTyAweDE4MQogI2RlZmluZSBLRVlfVFVORVIgMHgxODIKLSNkZWZpbmUgS0VZX1BMQVlFUiAweDE4MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BMQVlFUiAweDE4MwogI2RlZmluZSBLRVlfVEVYVCAweDE4NAogI2RlZmluZSBLRVlfRFZEIDB4MTg1CiAjZGVmaW5lIEtFWV9BVVggMHgxODYKLSNkZWZpbmUgS0VZX01QMyAweDE4NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX01QMyAweDE4NwogI2RlZmluZSBLRVlfQVVESU8gMHgxODgKICNkZWZpbmUgS0VZX1ZJREVPIDB4MTg5CiAjZGVmaW5lIEtFWV9ESVJFQ1RPUlkgMHgxOGEKLSNkZWZpbmUgS0VZX0xJU1QgMHgxOGIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9MSVNUIDB4MThiCiAjZGVmaW5lIEtFWV9NRU1PIDB4MThjCiAjZGVmaW5lIEtFWV9DQUxFTkRBUiAweDE4ZAogI2RlZmluZSBLRVlfUkVEIDB4MThlCi0jZGVmaW5lIEtFWV9HUkVFTiAweDE4ZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0dSRUVOIDB4MThmCiAjZGVmaW5lIEtFWV9ZRUxMT1cgMHgxOTAKICNkZWZpbmUgS0VZX0JMVUUgMHgxOTEKICNkZWZpbmUgS0VZX0NIQU5ORUxVUCAweDE5MgotI2RlZmluZSBLRVlfQ0hBTk5FTERPV04gMHgxOTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DSEFOTkVMRE9XTiAweDE5MwogI2RlZmluZSBLRVlfRklSU1QgMHgxOTQKICNkZWZpbmUgS0VZX0xBU1QgMHgxOTUKICNkZWZpbmUgS0VZX0FCIDB4MTk2Ci0jZGVmaW5lIEtFWV9ORVhUIDB4MTk3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTkVYVCAweDE5NwogI2RlZmluZSBLRVlfUkVTVEFSVCAweDE5OAogI2RlZmluZSBLRVlfU0xPVyAweDE5OQogI2RlZmluZSBLRVlfU0hVRkZMRSAweDE5YQotI2RlZmluZSBLRVlfQlJFQUsgMHgxOWIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9CUkVBSyAweDE5YgogI2RlZmluZSBLRVlfUFJFVklPVVMgMHgxOWMKICNkZWZpbmUgS0VZX0RJR0lUUyAweDE5ZAogI2RlZmluZSBLRVlfVEVFTiAweDE5ZQotI2RlZmluZSBLRVlfVFdFTiAweDE5ZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1RXRU4gMHgxOWYKICNkZWZpbmUgS0VZX1ZJREVPUEhPTkUgMHgxYTAKICNkZWZpbmUgS0VZX0dBTUVTIDB4MWExCiAjZGVmaW5lIEtFWV9aT09NSU4gMHgxYTIKLSNkZWZpbmUgS0VZX1pPT01PVVQgMHgxYTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9aT09NT1VUIDB4MWEzCiAjZGVmaW5lIEtFWV9aT09NUkVTRVQgMHgxYTQKICNkZWZpbmUgS0VZX1dPUkRQUk9DRVNTT1IgMHgxYTUKICNkZWZpbmUgS0VZX0VESVRPUiAweDFhNgotI2RlZmluZSBLRVlfU1BSRUFEU0hFRVQgMHgxYTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9TUFJFQURTSEVFVCAweDFhNwogI2RlZmluZSBLRVlfR1JBUEhJQ1NFRElUT1IgMHgxYTgKICNkZWZpbmUgS0VZX1BSRVNFTlRBVElPTiAweDFhOQogI2RlZmluZSBLRVlfREFUQUJBU0UgMHgxYWEKLSNkZWZpbmUgS0VZX05FV1MgMHgxYWIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9ORVdTIDB4MWFiCiAjZGVmaW5lIEtFWV9WT0lDRU1BSUwgMHgxYWMKICNkZWZpbmUgS0VZX0FERFJFU1NCT09LIDB4MWFkCiAjZGVmaW5lIEtFWV9NRVNTRU5HRVIgMHgxYWUKLSNkZWZpbmUgS0VZX0RJU1BMQVlUT0dHTEUgMHgxYWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9ESVNQTEFZVE9HR0xFIDB4MWFmCiAjZGVmaW5lIEtFWV9CUklHSFRORVNTX1RPR0dMRSBLRVlfRElTUExBWVRPR0dMRQogI2RlZmluZSBLRVlfU1BFTExDSEVDSyAweDFiMAogI2RlZmluZSBLRVlfTE9HT0ZGIDB4MWIxCi0jZGVmaW5lIEtFWV9ET0xMQVIgMHgxYjIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9ET0xMQVIgMHgxYjIKICNkZWZpbmUgS0VZX0VVUk8gMHgxYjMKICNkZWZpbmUgS0VZX0ZSQU1FQkFDSyAweDFiNAogI2RlZmluZSBLRVlfRlJBTUVGT1JXQVJEIDB4MWI1Ci0jZGVmaW5lIEtFWV9DT05URVhUX01FTlUgMHgxYjYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DT05URVhUX01FTlUgMHgxYjYKICNkZWZpbmUgS0VZX01FRElBX1JFUEVBVCAweDFiNwogI2RlZmluZSBLRVlfMTBDSEFOTkVMU1VQIDB4MWI4CiAjZGVmaW5lIEtFWV8xMENIQU5ORUxTRE9XTiAweDFiOQotI2RlZmluZSBLRVlfSU1BR0VTIDB4MWJhCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSU1BR0VTIDB4MWJhCiAjZGVmaW5lIEtFWV9ERUxfRU9MIDB4MWMwCiAjZGVmaW5lIEtFWV9ERUxfRU9TIDB4MWMxCiAjZGVmaW5lIEtFWV9JTlNfTElORSAweDFjMgotI2RlZmluZSBLRVlfREVMX0xJTkUgMHgxYzMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9ERUxfTElORSAweDFjMwogI2RlZmluZSBLRVlfRk4gMHgxZDAKICNkZWZpbmUgS0VZX0ZOX0VTQyAweDFkMQogI2RlZmluZSBLRVlfRk5fRjEgMHgxZDIKLSNkZWZpbmUgS0VZX0ZOX0YyIDB4MWQzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRk5fRjIgMHgxZDMKICNkZWZpbmUgS0VZX0ZOX0YzIDB4MWQ0CiAjZGVmaW5lIEtFWV9GTl9GNCAweDFkNQogI2RlZmluZSBLRVlfRk5fRjUgMHgxZDYKLSNkZWZpbmUgS0VZX0ZOX0Y2IDB4MWQ3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRk5fRjYgMHgxZDcKICNkZWZpbmUgS0VZX0ZOX0Y3IDB4MWQ4CiAjZGVmaW5lIEtFWV9GTl9GOCAweDFkOQogI2RlZmluZSBLRVlfRk5fRjkgMHgxZGEKLSNkZWZpbmUgS0VZX0ZOX0YxMCAweDFkYgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0ZOX0YxMCAweDFkYgogI2RlZmluZSBLRVlfRk5fRjExIDB4MWRjCiAjZGVmaW5lIEtFWV9GTl9GMTIgMHgxZGQKICNkZWZpbmUgS0VZX0ZOXzEgMHgxZGUKLSNkZWZpbmUgS0VZX0ZOXzIgMHgxZGYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GTl8yIDB4MWRmCiAjZGVmaW5lIEtFWV9GTl9EIDB4MWUwCiAjZGVmaW5lIEtFWV9GTl9FIDB4MWUxCiAjZGVmaW5lIEtFWV9GTl9GIDB4MWUyCi0jZGVmaW5lIEtFWV9GTl9TIDB4MWUzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRk5fUyAweDFlMwogI2RlZmluZSBLRVlfRk5fQiAweDFlNAogI2RlZmluZSBLRVlfQlJMX0RPVDEgMHgxZjEKICNkZWZpbmUgS0VZX0JSTF9ET1QyIDB4MWYyCi0jZGVmaW5lIEtFWV9CUkxfRE9UMyAweDFmMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0JSTF9ET1QzIDB4MWYzCiAjZGVmaW5lIEtFWV9CUkxfRE9UNCAweDFmNAogI2RlZmluZSBLRVlfQlJMX0RPVDUgMHgxZjUKICNkZWZpbmUgS0VZX0JSTF9ET1Q2IDB4MWY2Ci0jZGVmaW5lIEtFWV9CUkxfRE9UNyAweDFmNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0JSTF9ET1Q3IDB4MWY3CiAjZGVmaW5lIEtFWV9CUkxfRE9UOCAweDFmOAogI2RlZmluZSBLRVlfQlJMX0RPVDkgMHgxZjkKICNkZWZpbmUgS0VZX0JSTF9ET1QxMCAweDFmYQotI2RlZmluZSBLRVlfTlVNRVJJQ18wIDB4MjAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTlVNRVJJQ18wIDB4MjAwCiAjZGVmaW5lIEtFWV9OVU1FUklDXzEgMHgyMDEKICNkZWZpbmUgS0VZX05VTUVSSUNfMiAweDIwMgogI2RlZmluZSBLRVlfTlVNRVJJQ18zIDB4MjAzCi0jZGVmaW5lIEtFWV9OVU1FUklDXzQgMHgyMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9OVU1FUklDXzQgMHgyMDQKICNkZWZpbmUgS0VZX05VTUVSSUNfNSAweDIwNQogI2RlZmluZSBLRVlfTlVNRVJJQ182IDB4MjA2CiAjZGVmaW5lIEtFWV9OVU1FUklDXzcgMHgyMDcKLSNkZWZpbmUgS0VZX05VTUVSSUNfOCAweDIwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX05VTUVSSUNfOCAweDIwOAogI2RlZmluZSBLRVlfTlVNRVJJQ185IDB4MjA5CiAjZGVmaW5lIEtFWV9OVU1FUklDX1NUQVIgMHgyMGEKICNkZWZpbmUgS0VZX05VTUVSSUNfUE9VTkQgMHgyMGIKLSNkZWZpbmUgS0VZX0NBTUVSQV9GT0NVUyAweDIxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NBTUVSQV9GT0NVUyAweDIxMAogI2RlZmluZSBLRVlfV1BTX0JVVFRPTiAweDIxMQogI2RlZmluZSBLRVlfVE9VQ0hQQURfVE9HR0xFIDB4MjEyCiAjZGVmaW5lIEtFWV9UT1VDSFBBRF9PTiAweDIxMwotI2RlZmluZSBLRVlfVE9VQ0hQQURfT0ZGIDB4MjE0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfVE9VQ0hQQURfT0ZGIDB4MjE0CiAjZGVmaW5lIEtFWV9DQU1FUkFfWk9PTUlOIDB4MjE1CiAjZGVmaW5lIEtFWV9DQU1FUkFfWk9PTU9VVCAweDIxNgogI2RlZmluZSBLRVlfQ0FNRVJBX1VQIDB4MjE3Ci0jZGVmaW5lIEtFWV9DQU1FUkFfRE9XTiAweDIxOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NBTUVSQV9ET1dOIDB4MjE4CiAjZGVmaW5lIEtFWV9DQU1FUkFfTEVGVCAweDIxOQogI2RlZmluZSBLRVlfQ0FNRVJBX1JJR0hUIDB4MjFhCiAjZGVmaW5lIEtFWV9BVFRFTkRBTlRfT04gMHgyMWIKLSNkZWZpbmUgS0VZX0FUVEVOREFOVF9PRkYgMHgyMWMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9BVFRFTkRBTlRfT0ZGIDB4MjFjCiAjZGVmaW5lIEtFWV9BVFRFTkRBTlRfVE9HR0xFIDB4MjFkCiAjZGVmaW5lIEtFWV9MSUdIVFNfVE9HR0xFIDB4MjFlCiAjZGVmaW5lIEJUTl9EUEFEX1VQIDB4MjIwCi0jZGVmaW5lIEJUTl9EUEFEX0RPV04gMHgyMjEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9EUEFEX0RPV04gMHgyMjEKICNkZWZpbmUgQlROX0RQQURfTEVGVCAweDIyMgogI2RlZmluZSBCVE5fRFBBRF9SSUdIVCAweDIyMwogI2RlZmluZSBLRVlfQUxTX1RPR0dMRSAweDIzMAotI2RlZmluZSBLRVlfQlVUVE9OQ09ORklHIDB4MjQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQlVUVE9OQ09ORklHIDB4MjQwCiAjZGVmaW5lIEtFWV9UQVNLTUFOQUdFUiAweDI0MQogI2RlZmluZSBLRVlfSk9VUk5BTCAweDI0MgogI2RlZmluZSBLRVlfQ09OVFJPTFBBTkVMIDB4MjQzCi0jZGVmaW5lIEtFWV9BUFBTRUxFQ1QgMHgyNDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9BUFBTRUxFQ1QgMHgyNDQKICNkZWZpbmUgS0VZX1NDUkVFTlNBVkVSIDB4MjQ1CiAjZGVmaW5lIEtFWV9WT0lDRUNPTU1BTkQgMHgyNDYKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfTUlOIDB4MjUwCi0jZGVmaW5lIEtFWV9CUklHSFRORVNTX01BWCAweDI1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfTUFYIDB4MjUxCisjZGVmaW5lIEtFWV9LQkRJTlBVVEFTU0lTVF9QUkVWIDB4MjYwCisjZGVmaW5lIEtFWV9LQkRJTlBVVEFTU0lTVF9ORVhUIDB4MjYxCisjZGVmaW5lIEtFWV9LQkRJTlBVVEFTU0lTVF9QUkVWR1JPVVAgMHgyNjIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9LQkRJTlBVVEFTU0lTVF9ORVhUR1JPVVAgMHgyNjMKKyNkZWZpbmUgS0VZX0tCRElOUFVUQVNTSVNUX0FDQ0VQVCAweDI2NAorI2RlZmluZSBLRVlfS0JESU5QVVRBU1NJU1RfQ0FOQ0VMIDB4MjY1CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZIDB4MmMwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTEgMHgyYzAKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyIDB4MmMxCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMyAweDJjMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFk0IDB4MmMzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTUgMHgyYzQKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFk2IDB4MmM1CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZNyAweDJjNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFk4IDB4MmM3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTkgMHgyYzgKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxMCAweDJjOQogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTExIDB4MmNhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTEyIDB4MmNiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTEzIDB4MmNjCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTQgMHgyY2QKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxNSAweDJjZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxNiAweDJjZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxNyAweDJkMAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTE4IDB4MmQxCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTkgMHgyZDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjAgMHgyZDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjEgMHgyZDQKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyMiAweDJkNQogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTIzIDB4MmQ2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTI0IDB4MmQ3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTI1IDB4MmQ4CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjYgMHgyZDkKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyNyAweDJkYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyOCAweDJkYgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyOSAweDJkYwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTMwIDB4MmRkCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzEgMHgyZGUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzIgMHgyZGYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzMgMHgyZTAKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzNCAweDJlMQogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTM1IDB4MmUyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTM2IDB4MmUzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTM3IDB4MmU0CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzggMHgyZTUKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzOSAweDJlNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFk0MCAweDJlNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS0VZX01JTl9JTlRFUkVTVElORyBLRVlfTVVURQogI2RlZmluZSBLRVlfTUFYIDB4MmZmCi0jZGVmaW5lIEtFWV9DTlQgKEtFWV9NQVgrMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DTlQgKEtFWV9NQVggKyAxKQogI2RlZmluZSBSRUxfWCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRUxfWSAweDAxCiAjZGVmaW5lIFJFTF9aIDB4MDIKICNkZWZpbmUgUkVMX1JYIDB4MDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJFTF9SWSAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRUxfUlogMHgwNQogI2RlZmluZSBSRUxfSFdIRUVMIDB4MDYKICNkZWZpbmUgUkVMX0RJQUwgMHgwNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkVMX1dIRUVMIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJFTF9NSVNDIDB4MDkKICNkZWZpbmUgUkVMX01BWCAweDBmCi0jZGVmaW5lIFJFTF9DTlQgKFJFTF9NQVgrMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJFTF9DTlQgKFJFTF9NQVggKyAxKQogI2RlZmluZSBBQlNfWCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfWSAweDAxCiAjZGVmaW5lIEFCU19aIDB4MDIKICNkZWZpbmUgQUJTX1JYIDB4MDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19SWSAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfUlogMHgwNQogI2RlZmluZSBBQlNfVEhST1RUTEUgMHgwNgogI2RlZmluZSBBQlNfUlVEREVSIDB4MDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19XSEVFTCAweDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfR0FTIDB4MDkKICNkZWZpbmUgQUJTX0JSQUtFIDB4MGEKICNkZWZpbmUgQUJTX0hBVDBYIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19IQVQwWSAweDExCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfSEFUMVggMHgxMgogI2RlZmluZSBBQlNfSEFUMVkgMHgxMwogI2RlZmluZSBBQlNfSEFUMlggMHgxNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX0hBVDJZIDB4MTUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19IQVQzWCAweDE2CiAjZGVmaW5lIEFCU19IQVQzWSAweDE3CiAjZGVmaW5lIEFCU19QUkVTU1VSRSAweDE4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfRElTVEFOQ0UgMHgxOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX1RJTFRfWCAweDFhCiAjZGVmaW5lIEFCU19USUxUX1kgMHgxYgogI2RlZmluZSBBQlNfVE9PTF9XSURUSCAweDFjCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfVk9MVU1FIDB4MjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NSVNDIDB4MjgKICNkZWZpbmUgQUJTX01UX1NMT1QgMHgyZgogI2RlZmluZSBBQlNfTVRfVE9VQ0hfTUFKT1IgMHgzMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX01UX1RPVUNIX01JTk9SIDB4MzEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NVF9XSURUSF9NQUpPUiAweDMyCiAjZGVmaW5lIEFCU19NVF9XSURUSF9NSU5PUiAweDMzCiAjZGVmaW5lIEFCU19NVF9PUklFTlRBVElPTiAweDM0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfUE9TSVRJT05fWCAweDM1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfUE9TSVRJT05fWSAweDM2CiAjZGVmaW5lIEFCU19NVF9UT09MX1RZUEUgMHgzNwogI2RlZmluZSBBQlNfTVRfQkxPQl9JRCAweDM4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfVFJBQ0tJTkdfSUQgMHgzOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX01UX1BSRVNTVVJFIDB4M2EKICNkZWZpbmUgQUJTX01UX0RJU1RBTkNFIDB4M2IKICNkZWZpbmUgQUJTX01UX1RPT0xfWCAweDNjCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfVE9PTF9ZIDB4M2QKLSNkZWZpbmUgQUJTX01BWCAweDNmCi0jZGVmaW5lIEFCU19DTlQgKEFCU19NQVgrMSkKLSNkZWZpbmUgU1dfTElEIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFCU19NQVggMHgzZgorI2RlZmluZSBBQlNfQ05UIChBQlNfTUFYICsgMSkKKyNkZWZpbmUgU1dfTElEIDB4MDAKICNkZWZpbmUgU1dfVEFCTEVUX01PREUgMHgwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1dfSEVBRFBIT05FX0lOU0VSVCAweDAyCiAjZGVmaW5lIFNXX1JGS0lMTF9BTEwgMHgwMwogI2RlZmluZSBTV19SQURJTyBTV19SRktJTExfQUxMCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19NSUNST1BIT05FX0lOU0VSVCAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19ET0NLIDB4MDUKICNkZWZpbmUgU1dfTElORU9VVF9JTlNFUlQgMHgwNgogI2RlZmluZSBTV19KQUNLX1BIWVNJQ0FMX0lOU0VSVCAweDA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19WSURFT09VVF9JTlNFUlQgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1dfQ0FNRVJBX0xFTlNfQ09WRVIgMHgwOQogI2RlZmluZSBTV19LRVlQQURfU0xJREUgMHgwYQogI2RlZmluZSBTV19GUk9OVF9QUk9YSU1JVFkgMHgwYgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1dfUk9UQVRFX0xPQ0sgMHgwYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1dfTElORUlOX0lOU0VSVCAweDBkCiAjZGVmaW5lIFNXX01VVEVfREVWSUNFIDB4MGUKICNkZWZpbmUgU1dfTUFYIDB4MGYKKyNkZWZpbmUgU1dfQ05UIChTV19NQVggKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU1dfQ05UIChTV19NQVgrMSkKICNkZWZpbmUgTVNDX1NFUklBTCAweDAwCiAjZGVmaW5lIE1TQ19QVUxTRUxFRCAweDAxCiAjZGVmaW5lIE1TQ19HRVNUVVJFIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TQ19SQVcgMHgwMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNDX1NDQU4gMHgwNAogI2RlZmluZSBNU0NfVElNRVNUQU1QIDB4MDUKICNkZWZpbmUgTVNDX01BWCAweDA3CisjZGVmaW5lIE1TQ19DTlQgKE1TQ19NQVggKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNDX0NOVCAoTVNDX01BWCsxKQogI2RlZmluZSBMRURfTlVNTCAweDAwCiAjZGVmaW5lIExFRF9DQVBTTCAweDAxCiAjZGVmaW5lIExFRF9TQ1JPTExMIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExFRF9DT01QT1NFIDB4MDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExFRF9LQU5BIDB4MDQKICNkZWZpbmUgTEVEX1NMRUVQIDB4MDUKICNkZWZpbmUgTEVEX1NVU1BFTkQgMHgwNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTEVEX01VVEUgMHgwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTEVEX01JU0MgMHgwOAogI2RlZmluZSBMRURfTUFJTCAweDA5CiAjZGVmaW5lIExFRF9DSEFSR0lORyAweDBhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMRURfTUFYIDB4MGYKLSNkZWZpbmUgTEVEX0NOVCAoTEVEX01BWCsxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTEVEX0NOVCAoTEVEX01BWCArIDEpCiAjZGVmaW5lIFJFUF9ERUxBWSAweDAwCiAjZGVmaW5lIFJFUF9QRVJJT0QgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkVQX01BWCAweDAxCi0jZGVmaW5lIFJFUF9DTlQgKFJFUF9NQVgrMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJFUF9DTlQgKFJFUF9NQVggKyAxKQogI2RlZmluZSBTTkRfQ0xJQ0sgMHgwMAogI2RlZmluZSBTTkRfQkVMTCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRfVE9ORSAweDAyCi0jZGVmaW5lIFNORF9NQVggMHgwNwotI2RlZmluZSBTTkRfQ05UIChTTkRfTUFYKzEpCi0jZGVmaW5lIElEX0JVUyAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRfTUFYIDB4MDcKKyNkZWZpbmUgU05EX0NOVCAoU05EX01BWCArIDEpCisjZGVmaW5lIElEX0JVUyAwCiAjZGVmaW5lIElEX1ZFTkRPUiAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRF9QUk9EVUNUIDIKICNkZWZpbmUgSURfVkVSU0lPTiAzCiAjZGVmaW5lIEJVU19QQ0kgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX0lTQVBOUCAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfVVNCIDB4MDMKICNkZWZpbmUgQlVTX0hJTCAweDA0CiAjZGVmaW5lIEJVU19CTFVFVE9PVEggMHgwNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX1ZJUlRVQUwgMHgwNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX0lTQSAweDEwCiAjZGVmaW5lIEJVU19JODA0MiAweDExCiAjZGVmaW5lIEJVU19YVEtCRCAweDEyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfUlMyMzIgMHgxMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX0dBTUVQT1JUIDB4MTQKICNkZWZpbmUgQlVTX1BBUlBPUlQgMHgxNQogI2RlZmluZSBCVVNfQU1JR0EgMHgxNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX0FEQiAweDE3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfSTJDIDB4MTgKICNkZWZpbmUgQlVTX0hPU1QgMHgxOQogI2RlZmluZSBCVVNfR1NDIDB4MUEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJVU19BVEFSSSAweDFCCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfU1BJIDB4MUMKICNkZWZpbmUgTVRfVE9PTF9GSU5HRVIgMAogI2RlZmluZSBNVF9UT09MX1BFTiAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVF9UT09MX01BWCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9TVEFUVVNfU1RPUFBFRCAweDAwCiAjZGVmaW5lIEZGX1NUQVRVU19QTEFZSU5HIDB4MDEKICNkZWZpbmUgRkZfU1RBVFVTX01BWCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZmX3JlcGxheSB7Ci0gX191MTYgbGVuZ3RoOwotIF9fdTE2IGRlbGF5OwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGxlbmd0aDsKKyAgX191MTYgZGVsYXk7Cit9Owogc3RydWN0IGZmX3RyaWdnZXIgewotIF9fdTE2IGJ1dHRvbjsKLSBfX3UxNiBpbnRlcnZhbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGJ1dHRvbjsKKyAgX191MTYgaW50ZXJ2YWw7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmZl9lbnZlbG9wZSB7Ci0gX191MTYgYXR0YWNrX2xlbmd0aDsKLSBfX3UxNiBhdHRhY2tfbGV2ZWw7Ci0gX191MTYgZmFkZV9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZhZGVfbGV2ZWw7CisgIF9fdTE2IGF0dGFja19sZW5ndGg7CisgIF9fdTE2IGF0dGFja19sZXZlbDsKKyAgX191MTYgZmFkZV9sZW5ndGg7CisgIF9fdTE2IGZhZGVfbGV2ZWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmZl9jb25zdGFudF9lZmZlY3QgewotIF9fczE2IGxldmVsOworICBfX3MxNiBsZXZlbDsKKyAgc3RydWN0IGZmX2VudmVsb3BlIGVudmVsb3BlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmZfZW52ZWxvcGUgZW52ZWxvcGU7CiB9Owogc3RydWN0IGZmX3JhbXBfZWZmZWN0IHsKLSBfX3MxNiBzdGFydF9sZXZlbDsKKyAgX19zMTYgc3RhcnRfbGV2ZWw7CisgIF9fczE2IGVuZF9sZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMTYgZW5kX2xldmVsOwotIHN0cnVjdCBmZl9lbnZlbG9wZSBlbnZlbG9wZTsKKyAgc3RydWN0IGZmX2VudmVsb3BlIGVudmVsb3BlOwogfTsKIHN0cnVjdCBmZl9jb25kaXRpb25fZWZmZWN0IHsKKyAgX191MTYgcmlnaHRfc2F0dXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmlnaHRfc2F0dXJhdGlvbjsKLSBfX3UxNiBsZWZ0X3NhdHVyYXRpb247Ci0gX19zMTYgcmlnaHRfY29lZmY7Ci0gX19zMTYgbGVmdF9jb2VmZjsKKyAgX191MTYgbGVmdF9zYXR1cmF0aW9uOworICBfX3MxNiByaWdodF9jb2VmZjsKKyAgX19zMTYgbGVmdF9jb2VmZjsKKyAgX191MTYgZGVhZGJhbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRlYWRiYW5kOwotIF9fczE2IGNlbnRlcjsKKyAgX19zMTYgY2VudGVyOwogfTsKIHN0cnVjdCBmZl9wZXJpb2RpY19lZmZlY3QgeworICBfX3UxNiB3YXZlZm9ybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd2F2ZWZvcm07Ci0gX191MTYgcGVyaW9kOwotIF9fczE2IG1hZ25pdHVkZTsKLSBfX3MxNiBvZmZzZXQ7CisgIF9fdTE2IHBlcmlvZDsKKyAgX19zMTYgbWFnbml0dWRlOworICBfX3MxNiBvZmZzZXQ7CisgIF9fdTE2IHBoYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwaGFzZTsKLSBzdHJ1Y3QgZmZfZW52ZWxvcGUgZW52ZWxvcGU7Ci0gX191MzIgY3VzdG9tX2xlbjsKLSBfX3MxNiBfX3VzZXIgKmN1c3RvbV9kYXRhOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGZmX2VudmVsb3BlIGVudmVsb3BlOworICBfX3UzMiBjdXN0b21fbGVuOworICBfX3MxNiBfX3VzZXIgKiBjdXN0b21fZGF0YTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZmX3J1bWJsZV9lZmZlY3QgewotIF9fdTE2IHN0cm9uZ19tYWduaXR1ZGU7Ci0gX191MTYgd2Vha19tYWduaXR1ZGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzdHJvbmdfbWFnbml0dWRlOworICBfX3UxNiB3ZWFrX21hZ25pdHVkZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZmX2VmZmVjdCB7Ci0gX191MTYgdHlwZTsKLSBfX3MxNiBpZDsKKyAgX191MTYgdHlwZTsKKyAgX19zMTYgaWQ7CisgIF9fdTE2IGRpcmVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZGlyZWN0aW9uOwotIHN0cnVjdCBmZl90cmlnZ2VyIHRyaWdnZXI7Ci0gc3RydWN0IGZmX3JlcGxheSByZXBsYXk7Ci0gdW5pb24geworICBzdHJ1Y3QgZmZfdHJpZ2dlciB0cmlnZ2VyOworICBzdHJ1Y3QgZmZfcmVwbGF5IHJlcGxheTsKKyAgdW5pb24geworICAgIHN0cnVjdCBmZl9jb25zdGFudF9lZmZlY3QgY29uc3RhbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmZl9jb25zdGFudF9lZmZlY3QgY29uc3RhbnQ7Ci0gc3RydWN0IGZmX3JhbXBfZWZmZWN0IHJhbXA7Ci0gc3RydWN0IGZmX3BlcmlvZGljX2VmZmVjdCBwZXJpb2RpYzsKLSBzdHJ1Y3QgZmZfY29uZGl0aW9uX2VmZmVjdCBjb25kaXRpb25bMl07CisgICAgc3RydWN0IGZmX3JhbXBfZWZmZWN0IHJhbXA7CisgICAgc3RydWN0IGZmX3BlcmlvZGljX2VmZmVjdCBwZXJpb2RpYzsKKyAgICBzdHJ1Y3QgZmZfY29uZGl0aW9uX2VmZmVjdCBjb25kaXRpb25bMl07CisgICAgc3RydWN0IGZmX3J1bWJsZV9lZmZlY3QgcnVtYmxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmZfcnVtYmxlX2VmZmVjdCBydW1ibGU7Ci0gfSB1OworICB9IHU7CiB9OwogI2RlZmluZSBGRl9SVU1CTEUgMHg1MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfUEVSSU9ESUMgMHg1MQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfQ09OU1RBTlQgMHg1MgogI2RlZmluZSBGRl9TUFJJTkcgMHg1MwogI2RlZmluZSBGRl9GUklDVElPTiAweDU0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9EQU1QRVIgMHg1NQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfSU5FUlRJQSAweDU2CiAjZGVmaW5lIEZGX1JBTVAgMHg1NwogI2RlZmluZSBGRl9FRkZFQ1RfTUlOIEZGX1JVTUJMRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfRUZGRUNUX01BWCBGRl9SQU1QCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9TUVVBUkUgMHg1OAogI2RlZmluZSBGRl9UUklBTkdMRSAweDU5CiAjZGVmaW5lIEZGX1NJTkUgMHg1YQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfU0FXX1VQIDB4NWIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZGX1NBV19ET1dOIDB4NWMKICNkZWZpbmUgRkZfQ1VTVE9NIDB4NWQKICNkZWZpbmUgRkZfV0FWRUZPUk1fTUlOIEZGX1NRVUFSRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfV0FWRUZPUk1fTUFYIEZGX0NVU1RPTQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfR0FJTiAweDYwCiAjZGVmaW5lIEZGX0FVVE9DRU5URVIgMHg2MQogI2RlZmluZSBGRl9NQVggMHg3ZgorI2RlZmluZSBGRl9DTlQgKEZGX01BWCArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGRl9DTlQgKEZGX01BWCsxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb24uaAppbmRleCA1YWYzOWQwLi40MTkzNzYzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uLmgKQEAgLTIzLDUwICsyMyw1MCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgaW50IGlvbl91c2VyX2hhbmRsZV90OwogZW51bSBpb25faGVhcF90eXBlIHsKLSBJT05fSEVBUF9UWVBFX1NZU1RFTSwKLSBJT05fSEVBUF9UWVBFX1NZU1RFTV9DT05USUcsCisgIElPTl9IRUFQX1RZUEVfU1lTVEVNLAorICBJT05fSEVBUF9UWVBFX1NZU1RFTV9DT05USUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElPTl9IRUFQX1RZUEVfQ0FSVkVPVVQsCi0gSU9OX0hFQVBfVFlQRV9DSFVOSywKLSBJT05fSEVBUF9UWVBFX0RNQSwKLSBJT05fSEVBUF9UWVBFX0NVU1RPTSwKKyAgSU9OX0hFQVBfVFlQRV9DQVJWRU9VVCwKKyAgSU9OX0hFQVBfVFlQRV9DSFVOSywKKyAgSU9OX0hFQVBfVFlQRV9ETUEsCisgIElPTl9IRUFQX1RZUEVfQ1VTVE9NLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJT05fTlVNX0hFQVBTID0gMTYsCisgIElPTl9OVU1fSEVBUFMgPSAxNiwKIH07CiAjZGVmaW5lIElPTl9IRUFQX1NZU1RFTV9NQVNLICgxIDw8IElPTl9IRUFQX1RZUEVfU1lTVEVNKQogI2RlZmluZSBJT05fSEVBUF9TWVNURU1fQ09OVElHX01BU0sgKDEgPDwgSU9OX0hFQVBfVFlQRV9TWVNURU1fQ09OVElHKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU9OX0hFQVBfQ0FSVkVPVVRfTUFTSyAoMSA8PCBJT05fSEVBUF9UWVBFX0NBUlZFT1VUKQogI2RlZmluZSBJT05fSEVBUF9UWVBFX0RNQV9NQVNLICgxIDw8IElPTl9IRUFQX1RZUEVfRE1BKQotI2RlZmluZSBJT05fTlVNX0hFQVBfSURTIHNpemVvZih1bnNpZ25lZCBpbnQpICogOAorI2RlZmluZSBJT05fTlVNX0hFQVBfSURTIChzaXplb2YodW5zaWduZWQgaW50KSAqIDgpCiAjZGVmaW5lIElPTl9GTEFHX0NBQ0hFRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJT05fRkxBR19DQUNIRURfTkVFRFNfU1lOQyAyCiBzdHJ1Y3QgaW9uX2FsbG9jYXRpb25fZGF0YSB7Ci0gc2l6ZV90IGxlbjsKLSBzaXplX3QgYWxpZ247CisgIHNpemVfdCBsZW47CisgIHNpemVfdCBhbGlnbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGhlYXBfaWRfbWFzazsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gaW9uX3VzZXJfaGFuZGxlX3QgaGFuZGxlOworICB1bnNpZ25lZCBpbnQgaGVhcF9pZF9tYXNrOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGlvbl91c2VyX2hhbmRsZV90IGhhbmRsZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlvbl9mZF9kYXRhIHsKLSBpb25fdXNlcl9oYW5kbGVfdCBoYW5kbGU7Ci0gaW50IGZkOworICBpb25fdXNlcl9oYW5kbGVfdCBoYW5kbGU7CisgIGludCBmZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlvbl9oYW5kbGVfZGF0YSB7Ci0gaW9uX3VzZXJfaGFuZGxlX3QgaGFuZGxlOworICBpb25fdXNlcl9oYW5kbGVfdCBoYW5kbGU7CiB9Owogc3RydWN0IGlvbl9jdXN0b21fZGF0YSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjbWQ7Ci0gdW5zaWduZWQgbG9uZyBhcmc7CisgIHVuc2lnbmVkIGludCBjbWQ7CisgIHVuc2lnbmVkIGxvbmcgYXJnOwogfTsKICNkZWZpbmUgSU9OX0lPQ19NQUdJQyAnSScKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElPTl9JT0NfQUxMT0MgX0lPV1IoSU9OX0lPQ19NQUdJQywgMCwgICBzdHJ1Y3QgaW9uX2FsbG9jYXRpb25fZGF0YSkKKyNkZWZpbmUgSU9OX0lPQ19BTExPQyBfSU9XUihJT05fSU9DX01BR0lDLCAwLCBzdHJ1Y3QgaW9uX2FsbG9jYXRpb25fZGF0YSkKICNkZWZpbmUgSU9OX0lPQ19GUkVFIF9JT1dSKElPTl9JT0NfTUFHSUMsIDEsIHN0cnVjdCBpb25faGFuZGxlX2RhdGEpCiAjZGVmaW5lIElPTl9JT0NfTUFQIF9JT1dSKElPTl9JT0NfTUFHSUMsIDIsIHN0cnVjdCBpb25fZmRfZGF0YSkKICNkZWZpbmUgSU9OX0lPQ19TSEFSRSBfSU9XUihJT05fSU9DX01BR0lDLCA0LCBzdHJ1Y3QgaW9uX2ZkX2RhdGEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvbl90ZXN0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvbl90ZXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmZmMzVhNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uX3Rlc3QuaApAQCAtMCwwICsxLDM4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX0xJTlVYX0lPTl9URVNUX0gKKyNkZWZpbmUgX1VBUElfTElOVVhfSU9OX1RFU1RfSAorI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaW9uX3Rlc3RfcndfZGF0YSB7CisgIF9fdTY0IHB0cjsKKyAgX191NjQgb2Zmc2V0OworICBfX3U2NCBzaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHdyaXRlOworICBpbnQgX19wYWRkaW5nOworfTsKKyNkZWZpbmUgSU9OX0lPQ19NQUdJQyAnSScKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElPTl9JT0NfVEVTVF9TRVRfRkQgX0lPKElPTl9JT0NfTUFHSUMsIDB4ZjApCisjZGVmaW5lIElPTl9JT0NfVEVTVF9ETUFfTUFQUElORyBfSU9XKElPTl9JT0NfTUFHSUMsIDB4ZjEsIHN0cnVjdCBpb25fdGVzdF9yd19kYXRhKQorI2RlZmluZSBJT05fSU9DX1RFU1RfS0VSTkVMX01BUFBJTkcgX0lPVyhJT05fSU9DX01BR0lDLCAweGYyLCBzdHJ1Y3QgaW9uX3Rlc3RfcndfZGF0YSkKKyNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9wcmlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvcHJpby5oCmluZGV4IGNjZGIzYjAuLjU4ODZlNzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9wcmlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb3ByaW8uaApAQCAtMjQsMjIgKzI0LDIyIEBACiAjZGVmaW5lIElPUFJJT19QUklPX01BU0sgKCgxVUwgPDwgSU9QUklPX0NMQVNTX1NISUZUKSAtIDEpCiAjZGVmaW5lIElPUFJJT19QUklPX0NMQVNTKG1hc2spICgobWFzaykgPj4gSU9QUklPX0NMQVNTX1NISUZUKQogI2RlZmluZSBJT1BSSU9fUFJJT19EQVRBKG1hc2spICgobWFzaykgJiBJT1BSSU9fUFJJT19NQVNLKQotI2RlZmluZSBJT1BSSU9fUFJJT19WQUxVRShjbGFzcywgZGF0YSkgKCgoY2xhc3MpIDw8IElPUFJJT19DTEFTU19TSElGVCkgfCBkYXRhKQorI2RlZmluZSBJT1BSSU9fUFJJT19WQUxVRShjbGFzcyxkYXRhKSAoKChjbGFzcykgPDwgSU9QUklPX0NMQVNTX1NISUZUKSB8IGRhdGEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpb3ByaW9fdmFsaWQobWFzaykgKElPUFJJT19QUklPX0NMQVNTKChtYXNrKSkgIT0gSU9QUklPX0NMQVNTX05PTkUpCiBlbnVtIHsKLSBJT1BSSU9fQ0xBU1NfTk9ORSwKLSBJT1BSSU9fQ0xBU1NfUlQsCisgIElPUFJJT19DTEFTU19OT05FLAorICBJT1BSSU9fQ0xBU1NfUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElPUFJJT19DTEFTU19CRSwKLSBJT1BSSU9fQ0xBU1NfSURMRSwKKyAgSU9QUklPX0NMQVNTX0JFLAorICBJT1BSSU9fQ0xBU1NfSURMRSwKIH07CiAjZGVmaW5lIElPUFJJT19CRV9OUiAoOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJT1BSSU9fV0hPX1BST0NFU1MgPSAxLAotIElPUFJJT19XSE9fUEdSUCwKLSBJT1BSSU9fV0hPX1VTRVIsCisgIElPUFJJT19XSE9fUFJPQ0VTUyA9IDEsCisgIElPUFJJT19XSE9fUEdSUCwKKyAgSU9QUklPX1dIT19VU0VSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElPUFJJT19OT1JNICg0KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcC5oCmluZGV4IGZjMGJkNzguLjg1NjdkMjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwLmgKQEAgLTIyLDE0ICsyMiwxNCBAQAogI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVE9TX1RPU19NQVNLIDB4MUUKLSNkZWZpbmUgSVBUT1NfVE9TKHRvcykgKCh0b3MpJklQVE9TX1RPU19NQVNLKQorI2RlZmluZSBJUFRPU19UT1ModG9zKSAoKHRvcykgJiBJUFRPU19UT1NfTUFTSykKICNkZWZpbmUgSVBUT1NfTE9XREVMQVkgMHgxMAogI2RlZmluZSBJUFRPU19USFJPVUdIUFVUIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVE9TX1JFTElBQklMSVRZIDB4MDQKICNkZWZpbmUgSVBUT1NfTUlOQ09TVCAweDAyCiAjZGVmaW5lIElQVE9TX1BSRUNfTUFTSyAweEUwCi0jZGVmaW5lIElQVE9TX1BSRUModG9zKSAoKHRvcykmSVBUT1NfUFJFQ19NQVNLKQorI2RlZmluZSBJUFRPU19QUkVDKHRvcykgKCh0b3MpICYgSVBUT1NfUFJFQ19NQVNLKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUT1NfUFJFQ19ORVRDT05UUk9MIDB4ZTAKICNkZWZpbmUgSVBUT1NfUFJFQ19JTlRFUk5FVENPTlRST0wgMHhjMApAQCAtNDQsMjcgKzQ0LDI3IEBACiAjZGVmaW5lIElQT1BUX0NPUFkgMHg4MAogI2RlZmluZSBJUE9QVF9DTEFTU19NQVNLIDB4NjAKICNkZWZpbmUgSVBPUFRfTlVNQkVSX01BU0sgMHgxZgotI2RlZmluZSBJUE9QVF9DT1BJRUQobykgKChvKSZJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9DT1BJRUQobykgKChvKSAmIElQT1BUX0NPUFkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUE9QVF9DTEFTUyhvKSAoKG8pJklQT1BUX0NMQVNTX01BU0spCi0jZGVmaW5lIElQT1BUX05VTUJFUihvKSAoKG8pJklQT1BUX05VTUJFUl9NQVNLKQorI2RlZmluZSBJUE9QVF9DTEFTUyhvKSAoKG8pICYgSVBPUFRfQ0xBU1NfTUFTSykKKyNkZWZpbmUgSVBPUFRfTlVNQkVSKG8pICgobykgJiBJUE9QVF9OVU1CRVJfTUFTSykKICNkZWZpbmUgSVBPUFRfQ09OVFJPTCAweDAwCiAjZGVmaW5lIElQT1BUX1JFU0VSVkVEMSAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE9QVF9NRUFTVVJFTUVOVCAweDQwCiAjZGVmaW5lIElQT1BUX1JFU0VSVkVEMiAweDYwCi0jZGVmaW5lIElQT1BUX0VORCAoMCB8SVBPUFRfQ09OVFJPTCkKLSNkZWZpbmUgSVBPUFRfTk9PUCAoMSB8SVBPUFRfQ09OVFJPTCkKKyNkZWZpbmUgSVBPUFRfRU5EICgwIHwgSVBPUFRfQ09OVFJPTCkKKyNkZWZpbmUgSVBPUFRfTk9PUCAoMSB8IElQT1BUX0NPTlRST0wpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUE9QVF9TRUMgKDIgfElQT1BUX0NPTlRST0x8SVBPUFRfQ09QWSkKLSNkZWZpbmUgSVBPUFRfTFNSUiAoMyB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQotI2RlZmluZSBJUE9QVF9USU1FU1RBTVAgKDQgfElQT1BUX01FQVNVUkVNRU5UKQotI2RlZmluZSBJUE9QVF9DSVBTTyAoNiB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9TRUMgKDIgfCBJUE9QVF9DT05UUk9MIHwgSVBPUFRfQ09QWSkKKyNkZWZpbmUgSVBPUFRfTFNSUiAoMyB8IElQT1BUX0NPTlRST0wgfCBJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9USU1FU1RBTVAgKDQgfCBJUE9QVF9NRUFTVVJFTUVOVCkKKyNkZWZpbmUgSVBPUFRfQ0lQU08gKDYgfCBJUE9QVF9DT05UUk9MIHwgSVBPUFRfQ09QWSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQT1BUX1JSICg3IHxJUE9QVF9DT05UUk9MKQotI2RlZmluZSBJUE9QVF9TSUQgKDggfElQT1BUX0NPTlRST0x8SVBPUFRfQ09QWSkKLSNkZWZpbmUgSVBPUFRfU1NSUiAoOSB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQotI2RlZmluZSBJUE9QVF9SQSAoMjB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9SUiAoNyB8IElQT1BUX0NPTlRST0wpCisjZGVmaW5lIElQT1BUX1NJRCAoOCB8IElQT1BUX0NPTlRST0wgfCBJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9TU1JSICg5IHwgSVBPUFRfQ09OVFJPTCB8IElQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX1JBICgyMCB8IElQT1BUX0NPTlRST0wgfCBJUE9QVF9DT1BZKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWRVJTSU9OIDQKICNkZWZpbmUgTUFYVFRMIDI1NQpAQCAtODcsOTggKzg3LDk0IEBACiBzdHJ1Y3QgaXBoZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3U4IGlobDo0LAotIHZlcnNpb246NDsKLSNlbGlmIGRlZmluZWQgKF9fQklHX0VORElBTl9CSVRGSUVMRCkKKyAgX191OCBpaGwgOiA0LCB2ZXJzaW9uIDogNDsKKyNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQorICBfX3U4IHZlcnNpb24gOiA0LCBpaGwgOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZlcnNpb246NCwKLSBpaGw6NDsKICNlbHNlCiAjZXJyb3IgIlBsZWFzZSBmaXggPGFzbS9ieXRlb3JkZXIuaD4iCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX191OCB0b3M7Ci0gX19iZTE2IHRvdF9sZW47Ci0gX19iZTE2IGlkOworICBfX3U4IHRvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGZyYWdfb2ZmOwotIF9fdTggdHRsOwotIF9fdTggcHJvdG9jb2w7Ci0gX19zdW0xNiBjaGVjazsKKyAgX19iZTE2IHRvdF9sZW47CisgIF9fYmUxNiBpZDsKKyAgX19iZTE2IGZyYWdfb2ZmOworICBfX3U4IHR0bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNhZGRyOwotIF9fYmUzMiBkYWRkcjsKKyAgX191OCBwcm90b2NvbDsKKyAgX19zdW0xNiBjaGVjazsKKyAgX19iZTMyIHNhZGRyOworICBfX2JlMzIgZGFkZHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpcF9hdXRoX2hkciB7CisgIF9fdTggbmV4dGhkcjsKKyAgX191OCBoZHJsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmV4dGhkcjsKLSBfX3U4IGhkcmxlbjsKLSBfX2JlMTYgcmVzZXJ2ZWQ7Ci0gX19iZTMyIHNwaTsKKyAgX19iZTE2IHJlc2VydmVkOworICBfX2JlMzIgc3BpOworICBfX2JlMzIgc2VxX25vOworICBfX3U4IGF1dGhfZGF0YVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNlcV9ubzsKLSBfX3U4IGF1dGhfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaXBfZXNwX2hkciB7CisgIF9fYmUzMiBzcGk7CisgIF9fYmUzMiBzZXFfbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzcGk7Ci0gX19iZTMyIHNlcV9ubzsKLSBfX3U4IGVuY19kYXRhWzBdOworICBfX3U4IGVuY19kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfY29tcF9oZHIgewotIF9fdTggbmV4dGhkcjsKLSBfX3U4IGZsYWdzOwotIF9fYmUxNiBjcGk7CisgIF9fdTggbmV4dGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZmxhZ3M7CisgIF9fYmUxNiBjcGk7CiB9Owogc3RydWN0IGlwX2JlZXRfcGhkciB7Ci0gX191OCBuZXh0aGRyOwotIF9fdTggaGRybGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZGxlbjsKLSBfX3U4IHJlc2VydmVkOworICBfX3U4IG5leHRoZHI7CisgIF9fdTggaGRybGVuOworICBfX3U4IHBhZGxlbjsKKyAgX191OCByZXNlcnZlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotZW51bQorZW51bSB7CisgIElQVjRfREVWQ09ORl9GT1JXQVJESU5HID0gMSwKKyAgSVBWNF9ERVZDT05GX01DX0ZPUldBUkRJTkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIElQVjRfREVWQ09ORl9GT1JXQVJESU5HPTEsCi0gSVBWNF9ERVZDT05GX01DX0ZPUldBUkRJTkcsCi0gSVBWNF9ERVZDT05GX1BST1hZX0FSUCwKKyAgSVBWNF9ERVZDT05GX1BST1hZX0FSUCwKKyAgSVBWNF9ERVZDT05GX0FDQ0VQVF9SRURJUkVDVFMsCisgIElQVjRfREVWQ09ORl9TRUNVUkVfUkVESVJFQ1RTLAorICBJUFY0X0RFVkNPTkZfU0VORF9SRURJUkVDVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9BQ0NFUFRfUkVESVJFQ1RTLAotIElQVjRfREVWQ09ORl9TRUNVUkVfUkVESVJFQ1RTLAotIElQVjRfREVWQ09ORl9TRU5EX1JFRElSRUNUUywKLSBJUFY0X0RFVkNPTkZfU0hBUkVEX01FRElBLAorICBJUFY0X0RFVkNPTkZfU0hBUkVEX01FRElBLAorICBJUFY0X0RFVkNPTkZfUlBfRklMVEVSLAorICBJUFY0X0RFVkNPTkZfQUNDRVBUX1NPVVJDRV9ST1VURSwKKyAgSVBWNF9ERVZDT05GX0JPT1RQX1JFTEFZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFY0X0RFVkNPTkZfUlBfRklMVEVSLAotIElQVjRfREVWQ09ORl9BQ0NFUFRfU09VUkNFX1JPVVRFLAotIElQVjRfREVWQ09ORl9CT09UUF9SRUxBWSwKLSBJUFY0X0RFVkNPTkZfTE9HX01BUlRJQU5TLAorICBJUFY0X0RFVkNPTkZfTE9HX01BUlRJQU5TLAorICBJUFY0X0RFVkNPTkZfVEFHLAorICBJUFY0X0RFVkNPTkZfQVJQRklMVEVSLAorICBJUFY0X0RFVkNPTkZfTUVESVVNX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFY0X0RFVkNPTkZfVEFHLAotIElQVjRfREVWQ09ORl9BUlBGSUxURVIsCi0gSVBWNF9ERVZDT05GX01FRElVTV9JRCwKLSBJUFY0X0RFVkNPTkZfTk9YRlJNLAorICBJUFY0X0RFVkNPTkZfTk9YRlJNLAorICBJUFY0X0RFVkNPTkZfTk9QT0xJQ1ksCisgIElQVjRfREVWQ09ORl9GT1JDRV9JR01QX1ZFUlNJT04sCisgIElQVjRfREVWQ09ORl9BUlBfQU5OT1VOQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9OT1BPTElDWSwKLSBJUFY0X0RFVkNPTkZfRk9SQ0VfSUdNUF9WRVJTSU9OLAotIElQVjRfREVWQ09ORl9BUlBfQU5OT1VOQ0UsCi0gSVBWNF9ERVZDT05GX0FSUF9JR05PUkUsCisgIElQVjRfREVWQ09ORl9BUlBfSUdOT1JFLAorICBJUFY0X0RFVkNPTkZfUFJPTU9URV9TRUNPTkRBUklFUywKKyAgSVBWNF9ERVZDT05GX0FSUF9BQ0NFUFQsCisgIElQVjRfREVWQ09ORl9BUlBfTk9USUZZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFY0X0RFVkNPTkZfUFJPTU9URV9TRUNPTkRBUklFUywKLSBJUFY0X0RFVkNPTkZfQVJQX0FDQ0VQVCwKLSBJUFY0X0RFVkNPTkZfQVJQX05PVElGWSwKLSBJUFY0X0RFVkNPTkZfQUNDRVBUX0xPQ0FMLAorICBJUFY0X0RFVkNPTkZfQUNDRVBUX0xPQ0FMLAorICBJUFY0X0RFVkNPTkZfU1JDX1ZNQVJLLAorICBJUFY0X0RFVkNPTkZfUFJPWFlfQVJQX1BWTEFOLAorICBJUFY0X0RFVkNPTkZfUk9VVEVfTE9DQUxORVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9TUkNfVk1BUkssCi0gSVBWNF9ERVZDT05GX1BST1hZX0FSUF9QVkxBTiwKLSBJUFY0X0RFVkNPTkZfUk9VVEVfTE9DQUxORVQsCi0gSVBWNF9ERVZDT05GX0lHTVBWMl9VTlNPTElDSVRFRF9SRVBPUlRfSU5URVJWQUwsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9JR01QVjNfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAotIF9fSVBWNF9ERVZDT05GX01BWAorICBJUFY0X0RFVkNPTkZfSUdNUFYyX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKKyAgSVBWNF9ERVZDT05GX0lHTVBWM19VTlNPTElDSVRFRF9SRVBPUlRfSU5URVJWQUwsCisgIF9fSVBWNF9ERVZDT05GX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjRfREVWQ09ORl9NQVggKF9fSVBWNF9ERVZDT05GX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwNl90dW5uZWwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXA2X3R1bm5lbC5oCmluZGV4IDk2ZjEwMDYuLmNmZWQwYzggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXA2X3R1bm5lbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXA2X3R1bm5lbC5oCkBAIC0zMSwzNSArMzEsMzUgQEAKICNkZWZpbmUgSVA2X1ROTF9GX1VTRV9PUklHX0ZXTUFSSyAweDIwCiBzdHJ1Y3QgaXA2X3RubF9wYXJtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lW0lGTkFNU0laXTsKLSBpbnQgbGluazsKLSBfX3U4IHByb3RvOwotIF9fdTggZW5jYXBfbGltaXQ7CisgIGNoYXIgbmFtZVtJRk5BTVNJWl07CisgIGludCBsaW5rOworICBfX3U4IHByb3RvOworICBfX3U4IGVuY2FwX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhvcF9saW1pdDsKLSBfX2JlMzIgZmxvd2luZm87Ci0gX191MzIgZmxhZ3M7Ci0gc3RydWN0IGluNl9hZGRyIGxhZGRyOworICBfX3U4IGhvcF9saW1pdDsKKyAgX19iZTMyIGZsb3dpbmZvOworICBfX3UzMiBmbGFnczsKKyAgc3RydWN0IGluNl9hZGRyIGxhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW42X2FkZHIgcmFkZHI7CisgIHN0cnVjdCBpbjZfYWRkciByYWRkcjsKIH07CiBzdHJ1Y3QgaXA2X3RubF9wYXJtMiB7Ci0gY2hhciBuYW1lW0lGTkFNU0laXTsKKyAgY2hhciBuYW1lW0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGxpbms7Ci0gX191OCBwcm90bzsKLSBfX3U4IGVuY2FwX2xpbWl0OwotIF9fdTggaG9wX2xpbWl0OworICBpbnQgbGluazsKKyAgX191OCBwcm90bzsKKyAgX191OCBlbmNhcF9saW1pdDsKKyAgX191OCBob3BfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBmbG93aW5mbzsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3QgaW42X2FkZHIgbGFkZHI7Ci0gc3RydWN0IGluNl9hZGRyIHJhZGRyOworICBfX2JlMzIgZmxvd2luZm87CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgaW42X2FkZHIgbGFkZHI7CisgIHN0cnVjdCBpbjZfYWRkciByYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGlfZmxhZ3M7Ci0gX19iZTE2IG9fZmxhZ3M7Ci0gX19iZTMyIGlfa2V5OwotIF9fYmUzMiBvX2tleTsKKyAgX19iZTE2IGlfZmxhZ3M7CisgIF9fYmUxNiBvX2ZsYWdzOworICBfX2JlMzIgaV9rZXk7CisgIF9fYmUzMiBvX2tleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwX3ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwX3ZzLmgKaW5kZXggM2FhMGY4NC4uMjI3NGM0ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcF92cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBfdnMuaApAQCAtMjEsNyArMjEsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIElQX1ZTX1ZFUlNJT05fQ09ERSAweDAxMDIwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTlZFUlNJT04odmVyc2lvbikgICAodmVyc2lvbiA+PiAxNikgJiAweEZGLCAgICh2ZXJzaW9uID4+IDgpICYgMHhGRiwgICB2ZXJzaW9uICYgMHhGRgorI2RlZmluZSBOVkVSU0lPTih2ZXJzaW9uKSAodmVyc2lvbiA+PiAxNikgJiAweEZGLCAodmVyc2lvbiA+PiA4KSAmIDB4RkYsIHZlcnNpb24gJiAweEZGCiAjZGVmaW5lIElQX1ZTX1NWQ19GX1BFUlNJU1RFTlQgMHgwMDAxCiAjZGVmaW5lIElQX1ZTX1NWQ19GX0hBU0hFRCAweDAwMDIKICNkZWZpbmUgSVBfVlNfU1ZDX0ZfT05FUEFDS0VUIDB4MDAwNApAQCAtMzgsMzggKzM4LDM4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUF9WU19TVEFURV9NQVNURVIgMHgwMDAxCiAjZGVmaW5lIElQX1ZTX1NUQVRFX0JBQ0tVUCAweDAwMDIKLSNkZWZpbmUgSVBfVlNfQkFTRV9DVEwgKDY0KzEwMjQrNjQpCisjZGVmaW5lIElQX1ZTX0JBU0VfQ1RMICg2NCArIDEwMjQgKyA2NCkKICNkZWZpbmUgSVBfVlNfU09fU0VUX05PTkUgSVBfVlNfQkFTRV9DVEwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9JTlNFUlQgKElQX1ZTX0JBU0VfQ1RMKzEpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9BREQgKElQX1ZTX0JBU0VfQ1RMKzIpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9FRElUIChJUF9WU19CQVNFX0NUTCszKQotI2RlZmluZSBJUF9WU19TT19TRVRfREVMIChJUF9WU19CQVNFX0NUTCs0KQorI2RlZmluZSBJUF9WU19TT19TRVRfSU5TRVJUIChJUF9WU19CQVNFX0NUTCArIDEpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9BREQgKElQX1ZTX0JBU0VfQ1RMICsgMikKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0VESVQgKElQX1ZTX0JBU0VfQ1RMICsgMykKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0RFTCAoSVBfVlNfQkFTRV9DVEwgKyA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfU09fU0VUX0ZMVVNIIChJUF9WU19CQVNFX0NUTCs1KQotI2RlZmluZSBJUF9WU19TT19TRVRfTElTVCAoSVBfVlNfQkFTRV9DVEwrNikKLSNkZWZpbmUgSVBfVlNfU09fU0VUX0FERERFU1QgKElQX1ZTX0JBU0VfQ1RMKzcpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9ERUxERVNUIChJUF9WU19CQVNFX0NUTCs4KQorI2RlZmluZSBJUF9WU19TT19TRVRfRkxVU0ggKElQX1ZTX0JBU0VfQ1RMICsgNSkKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0xJU1QgKElQX1ZTX0JBU0VfQ1RMICsgNikKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0FERERFU1QgKElQX1ZTX0JBU0VfQ1RMICsgNykKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0RFTERFU1QgKElQX1ZTX0JBU0VfQ1RMICsgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9FRElUREVTVCAoSVBfVlNfQkFTRV9DVEwrOSkKLSNkZWZpbmUgSVBfVlNfU09fU0VUX1RJTUVPVVQgKElQX1ZTX0JBU0VfQ1RMKzEwKQotI2RlZmluZSBJUF9WU19TT19TRVRfU1RBUlREQUVNT04gKElQX1ZTX0JBU0VfQ1RMKzExKQotI2RlZmluZSBJUF9WU19TT19TRVRfU1RPUERBRU1PTiAoSVBfVlNfQkFTRV9DVEwrMTIpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9FRElUREVTVCAoSVBfVlNfQkFTRV9DVEwgKyA5KQorI2RlZmluZSBJUF9WU19TT19TRVRfVElNRU9VVCAoSVBfVlNfQkFTRV9DVEwgKyAxMCkKKyNkZWZpbmUgSVBfVlNfU09fU0VUX1NUQVJUREFFTU9OIChJUF9WU19CQVNFX0NUTCArIDExKQorI2RlZmluZSBJUF9WU19TT19TRVRfU1RPUERBRU1PTiAoSVBfVlNfQkFTRV9DVEwgKyAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9SRVNUT1JFIChJUF9WU19CQVNFX0NUTCsxMykKLSNkZWZpbmUgSVBfVlNfU09fU0VUX1NBVkUgKElQX1ZTX0JBU0VfQ1RMKzE0KQotI2RlZmluZSBJUF9WU19TT19TRVRfWkVSTyAoSVBfVlNfQkFTRV9DVEwrMTUpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9SRVNUT1JFIChJUF9WU19CQVNFX0NUTCArIDEzKQorI2RlZmluZSBJUF9WU19TT19TRVRfU0FWRSAoSVBfVlNfQkFTRV9DVEwgKyAxNCkKKyNkZWZpbmUgSVBfVlNfU09fU0VUX1pFUk8gKElQX1ZTX0JBU0VfQ1RMICsgMTUpCiAjZGVmaW5lIElQX1ZTX1NPX1NFVF9NQVggSVBfVlNfU09fU0VUX1pFUk8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQX1ZTX1NPX0dFVF9WRVJTSU9OIElQX1ZTX0JBU0VfQ1RMCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9JTkZPIChJUF9WU19CQVNFX0NUTCsxKQotI2RlZmluZSBJUF9WU19TT19HRVRfU0VSVklDRVMgKElQX1ZTX0JBU0VfQ1RMKzIpCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9TRVJWSUNFIChJUF9WU19CQVNFX0NUTCszKQorI2RlZmluZSBJUF9WU19TT19HRVRfSU5GTyAoSVBfVlNfQkFTRV9DVEwgKyAxKQorI2RlZmluZSBJUF9WU19TT19HRVRfU0VSVklDRVMgKElQX1ZTX0JBU0VfQ1RMICsgMikKKyNkZWZpbmUgSVBfVlNfU09fR0VUX1NFUlZJQ0UgKElQX1ZTX0JBU0VfQ1RMICsgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9ERVNUUyAoSVBfVlNfQkFTRV9DVEwrNCkKLSNkZWZpbmUgSVBfVlNfU09fR0VUX0RFU1QgKElQX1ZTX0JBU0VfQ1RMKzUpCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9USU1FT1VUIChJUF9WU19CQVNFX0NUTCs2KQotI2RlZmluZSBJUF9WU19TT19HRVRfREFFTU9OIChJUF9WU19CQVNFX0NUTCs3KQorI2RlZmluZSBJUF9WU19TT19HRVRfREVTVFMgKElQX1ZTX0JBU0VfQ1RMICsgNCkKKyNkZWZpbmUgSVBfVlNfU09fR0VUX0RFU1QgKElQX1ZTX0JBU0VfQ1RMICsgNSkKKyNkZWZpbmUgSVBfVlNfU09fR0VUX1RJTUVPVVQgKElQX1ZTX0JBU0VfQ1RMICsgNikKKyNkZWZpbmUgSVBfVlNfU09fR0VUX0RBRU1PTiAoSVBfVlNfQkFTRV9DVEwgKyA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBfVlNfU09fR0VUX01BWCBJUF9WU19TT19HRVRfREFFTU9OCiAjZGVmaW5lIElQX1ZTX0NPTk5fRl9GV0RfTUFTSyAweDAwMDcKQEAgLTkyLDI0MCArOTIsMjQyIEBACiAjZGVmaW5lIElQX1ZTX0NPTk5fRl9URU1QTEFURSAweDEwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQX1ZTX0NPTk5fRl9PTkVfUEFDS0VUIDB4MjAwMAotI2RlZmluZSBJUF9WU19DT05OX0ZfQkFDS1VQX01BU0sgKElQX1ZTX0NPTk5fRl9GV0RfTUFTSyB8ICAgSVBfVlNfQ09OTl9GX05PT1VUUFVUIHwgICBJUF9WU19DT05OX0ZfSU5BQ1RJVkUgfCAgIElQX1ZTX0NPTk5fRl9TRVFfTUFTSyB8ICAgSVBfVlNfQ09OTl9GX05PX0NQT1JUIHwgICBJUF9WU19DT05OX0ZfVEVNUExBVEUgICApCi0jZGVmaW5lIElQX1ZTX0NPTk5fRl9CQUNLVVBfVVBEX01BU0sgKElQX1ZTX0NPTk5fRl9JTkFDVElWRSB8ICAgSVBfVlNfQ09OTl9GX1NFUV9NQVNLKQorI2RlZmluZSBJUF9WU19DT05OX0ZfQkFDS1VQX01BU0sgKElQX1ZTX0NPTk5fRl9GV0RfTUFTSyB8IElQX1ZTX0NPTk5fRl9OT09VVFBVVCB8IElQX1ZTX0NPTk5fRl9JTkFDVElWRSB8IElQX1ZTX0NPTk5fRl9TRVFfTUFTSyB8IElQX1ZTX0NPTk5fRl9OT19DUE9SVCB8IElQX1ZTX0NPTk5fRl9URU1QTEFURSkKKyNkZWZpbmUgSVBfVlNfQ09OTl9GX0JBQ0tVUF9VUERfTUFTSyAoSVBfVlNfQ09OTl9GX0lOQUNUSVZFIHwgSVBfVlNfQ09OTl9GX1NFUV9NQVNLKQogI2RlZmluZSBJUF9WU19DT05OX0ZfTkZDVCAoMSA8PCAxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQX1ZTX0NPTk5fRl9ERVNUX01BU0sgKElQX1ZTX0NPTk5fRl9GV0RfTUFTSyB8ICAgSVBfVlNfQ09OTl9GX09ORV9QQUNLRVQgfCAgIElQX1ZTX0NPTk5fRl9ORkNUIHwgICAwKQorI2RlZmluZSBJUF9WU19DT05OX0ZfREVTVF9NQVNLIChJUF9WU19DT05OX0ZfRldEX01BU0sgfCBJUF9WU19DT05OX0ZfT05FX1BBQ0tFVCB8IElQX1ZTX0NPTk5fRl9ORkNUIHwgMCkKICNkZWZpbmUgSVBfVlNfU0NIRUROQU1FX01BWExFTiAxNgogI2RlZmluZSBJUF9WU19QRU5BTUVfTUFYTEVOIDE2CiAjZGVmaW5lIElQX1ZTX0lGTkFNRV9NQVhMRU4gMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQX1ZTX1BFREFUQV9NQVhMRU4gMjU1CiBzdHJ1Y3QgaXBfdnNfc2VydmljZV91c2VyIHsKLSBfX3UxNiBwcm90b2NvbDsKLSBfX2JlMzIgYWRkcjsKKyAgX191MTYgcHJvdG9jb2w7CisgIF9fYmUzMiBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgcG9ydDsKLSBfX3UzMiBmd21hcms7Ci0gY2hhciBzY2hlZF9uYW1lW0lQX1ZTX1NDSEVETkFNRV9NQVhMRU5dOwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgX19iZTE2IHBvcnQ7CisgIF9fdTMyIGZ3bWFyazsKKyAgY2hhciBzY2hlZF9uYW1lW0lQX1ZTX1NDSEVETkFNRV9NQVhMRU5dOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0aW1lb3V0OwotIF9fYmUzMiBuZXRtYXNrOworICB1bnNpZ25lZCBpbnQgdGltZW91dDsKKyAgX19iZTMyIG5ldG1hc2s7CiB9Owogc3RydWN0IGlwX3ZzX2Rlc3RfdXNlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBhZGRyOwotIF9fYmUxNiBwb3J0OwotIHVuc2lnbmVkIGludCBjb25uX2ZsYWdzOwotIGludCB3ZWlnaHQ7CisgIF9fYmUzMiBhZGRyOworICBfX2JlMTYgcG9ydDsKKyAgdW5zaWduZWQgaW50IGNvbm5fZmxhZ3M7CisgIGludCB3ZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHVfdGhyZXNob2xkOwotIF9fdTMyIGxfdGhyZXNob2xkOworICBfX3UzMiB1X3RocmVzaG9sZDsKKyAgX191MzIgbF90aHJlc2hvbGQ7CiB9Owogc3RydWN0IGlwX3ZzX3N0YXRzX3VzZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb25uczsKLSBfX3UzMiBpbnBrdHM7Ci0gX191MzIgb3V0cGt0czsKLSBfX3U2NCBpbmJ5dGVzOworICBfX3UzMiBjb25uczsKKyAgX191MzIgaW5wa3RzOworICBfX3UzMiBvdXRwa3RzOworICBfX3U2NCBpbmJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBvdXRieXRlczsKLSBfX3UzMiBjcHM7Ci0gX191MzIgaW5wcHM7Ci0gX191MzIgb3V0cHBzOworICBfX3U2NCBvdXRieXRlczsKKyAgX191MzIgY3BzOworICBfX3UzMiBpbnBwczsKKyAgX191MzIgb3V0cHBzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmJwczsKLSBfX3UzMiBvdXRicHM7CisgIF9fdTMyIGluYnBzOworICBfX3UzMiBvdXRicHM7CiB9Owogc3RydWN0IGlwX3ZzX2dldGluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgbnVtX3NlcnZpY2VzOworICB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBudW1fc2VydmljZXM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF92c19zZXJ2aWNlX2VudHJ5IHsKLSBfX3UxNiBwcm90b2NvbDsKLSBfX2JlMzIgYWRkcjsKLSBfX2JlMTYgcG9ydDsKKyAgX191MTYgcHJvdG9jb2w7CisgIF9fYmUzMiBhZGRyOworICBfX2JlMTYgcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZndtYXJrOwotIGNoYXIgc2NoZWRfbmFtZVtJUF9WU19TQ0hFRE5BTUVfTUFYTEVOXTsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IHRpbWVvdXQ7CisgIF9fdTMyIGZ3bWFyazsKKyAgY2hhciBzY2hlZF9uYW1lW0lQX1ZTX1NDSEVETkFNRV9NQVhMRU5dOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCB0aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbmV0bWFzazsKLSB1bnNpZ25lZCBpbnQgbnVtX2Rlc3RzOwotIHN0cnVjdCBpcF92c19zdGF0c191c2VyIHN0YXRzOworICBfX2JlMzIgbmV0bWFzazsKKyAgdW5zaWduZWQgaW50IG51bV9kZXN0czsKKyAgc3RydWN0IGlwX3ZzX3N0YXRzX3VzZXIgc3RhdHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF92c19kZXN0X2VudHJ5IHsKLSBfX2JlMzIgYWRkcjsKLSBfX2JlMTYgcG9ydDsKLSB1bnNpZ25lZCBpbnQgY29ubl9mbGFnczsKKyAgX19iZTMyIGFkZHI7CisgIF9fYmUxNiBwb3J0OworICB1bnNpZ25lZCBpbnQgY29ubl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHdlaWdodDsKLSBfX3UzMiB1X3RocmVzaG9sZDsKLSBfX3UzMiBsX3RocmVzaG9sZDsKLSBfX3UzMiBhY3RpdmVjb25uczsKKyAgaW50IHdlaWdodDsKKyAgX191MzIgdV90aHJlc2hvbGQ7CisgIF9fdTMyIGxfdGhyZXNob2xkOworICBfX3UzMiBhY3RpdmVjb25uczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5hY3Rjb25uczsKLSBfX3UzMiBwZXJzaXN0Y29ubnM7Ci0gc3RydWN0IGlwX3ZzX3N0YXRzX3VzZXIgc3RhdHM7CisgIF9fdTMyIGluYWN0Y29ubnM7CisgIF9fdTMyIHBlcnNpc3Rjb25uczsKKyAgc3RydWN0IGlwX3ZzX3N0YXRzX3VzZXIgc3RhdHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF92c19nZXRfZGVzdHMgewotIF9fdTE2IHByb3RvY29sOwotIF9fYmUzMiBhZGRyOwotIF9fYmUxNiBwb3J0OworICBfX3UxNiBwcm90b2NvbDsKKyAgX19iZTMyIGFkZHI7CisgIF9fYmUxNiBwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmd21hcms7Ci0gdW5zaWduZWQgaW50IG51bV9kZXN0czsKLSBzdHJ1Y3QgaXBfdnNfZGVzdF9lbnRyeSBlbnRyeXRhYmxlWzBdOworICBfX3UzMiBmd21hcms7CisgIHVuc2lnbmVkIGludCBudW1fZGVzdHM7CisgIHN0cnVjdCBpcF92c19kZXN0X2VudHJ5IGVudHJ5dGFibGVbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF92c19nZXRfc2VydmljZXMgewotIHVuc2lnbmVkIGludCBudW1fc2VydmljZXM7Ci0gc3RydWN0IGlwX3ZzX3NlcnZpY2VfZW50cnkgZW50cnl0YWJsZVswXTsKKyAgdW5zaWduZWQgaW50IG51bV9zZXJ2aWNlczsKKyAgc3RydWN0IGlwX3ZzX3NlcnZpY2VfZW50cnkgZW50cnl0YWJsZVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX3RpbWVvdXRfdXNlciB7Ci0gaW50IHRjcF90aW1lb3V0OwotIGludCB0Y3BfZmluX3RpbWVvdXQ7Ci0gaW50IHVkcF90aW1lb3V0OworICBpbnQgdGNwX3RpbWVvdXQ7CisgIGludCB0Y3BfZmluX3RpbWVvdXQ7CisgIGludCB1ZHBfdGltZW91dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlwX3ZzX2RhZW1vbl91c2VyIHsKLSBpbnQgc3RhdGU7Ci0gY2hhciBtY2FzdF9pZm5bSVBfVlNfSUZOQU1FX01BWExFTl07CisgIGludCBzdGF0ZTsKKyAgY2hhciBtY2FzdF9pZm5bSVBfVlNfSUZOQU1FX01BWExFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzeW5jaWQ7CisgIGludCBzeW5jaWQ7CiB9OwogI2RlZmluZSBJUFZTX0dFTkxfTkFNRSAiSVBWUyIKICNkZWZpbmUgSVBWU19HRU5MX1ZFUlNJT04gMHgxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX2ZsYWdzIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBtYXNrOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgbWFzazsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBWU19DTURfVU5TUEVDID0gMCwKLSBJUFZTX0NNRF9ORVdfU0VSVklDRSwKLSBJUFZTX0NNRF9TRVRfU0VSVklDRSwKKyAgSVBWU19DTURfVU5TUEVDID0gMCwKKyAgSVBWU19DTURfTkVXX1NFUlZJQ0UsCisgIElQVlNfQ01EX1NFVF9TRVJWSUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0NNRF9ERUxfU0VSVklDRSwKLSBJUFZTX0NNRF9HRVRfU0VSVklDRSwKLSBJUFZTX0NNRF9ORVdfREVTVCwKLSBJUFZTX0NNRF9TRVRfREVTVCwKKyAgSVBWU19DTURfREVMX1NFUlZJQ0UsCisgIElQVlNfQ01EX0dFVF9TRVJWSUNFLAorICBJUFZTX0NNRF9ORVdfREVTVCwKKyAgSVBWU19DTURfU0VUX0RFU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfQ01EX0RFTF9ERVNULAotIElQVlNfQ01EX0dFVF9ERVNULAotIElQVlNfQ01EX05FV19EQUVNT04sCi0gSVBWU19DTURfREVMX0RBRU1PTiwKKyAgSVBWU19DTURfREVMX0RFU1QsCisgIElQVlNfQ01EX0dFVF9ERVNULAorICBJUFZTX0NNRF9ORVdfREFFTU9OLAorICBJUFZTX0NNRF9ERUxfREFFTU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0NNRF9HRVRfREFFTU9OLAotIElQVlNfQ01EX1NFVF9DT05GSUcsCi0gSVBWU19DTURfR0VUX0NPTkZJRywKLSBJUFZTX0NNRF9TRVRfSU5GTywKKyAgSVBWU19DTURfR0VUX0RBRU1PTiwKKyAgSVBWU19DTURfU0VUX0NPTkZJRywKKyAgSVBWU19DTURfR0VUX0NPTkZJRywKKyAgSVBWU19DTURfU0VUX0lORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfQ01EX0dFVF9JTkZPLAotIElQVlNfQ01EX1pFUk8sCi0gSVBWU19DTURfRkxVU0gsCi0gX19JUFZTX0NNRF9NQVgsCisgIElQVlNfQ01EX0dFVF9JTkZPLAorICBJUFZTX0NNRF9aRVJPLAorICBJUFZTX0NNRF9GTFVTSCwKKyAgX19JUFZTX0NNRF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBWU19DTURfTUFYIChfX0lQVlNfQ01EX01BWCAtIDEpCiBlbnVtIHsKLSBJUFZTX0NNRF9BVFRSX1VOU1BFQyA9IDAsCisgIElQVlNfQ01EX0FUVFJfVU5TUEVDID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19DTURfQVRUUl9TRVJWSUNFLAotIElQVlNfQ01EX0FUVFJfREVTVCwKLSBJUFZTX0NNRF9BVFRSX0RBRU1PTiwKLSBJUFZTX0NNRF9BVFRSX1RJTUVPVVRfVENQLAorICBJUFZTX0NNRF9BVFRSX1NFUlZJQ0UsCisgIElQVlNfQ01EX0FUVFJfREVTVCwKKyAgSVBWU19DTURfQVRUUl9EQUVNT04sCisgIElQVlNfQ01EX0FUVFJfVElNRU9VVF9UQ1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfQ01EX0FUVFJfVElNRU9VVF9UQ1BfRklOLAotIElQVlNfQ01EX0FUVFJfVElNRU9VVF9VRFAsCi0gX19JUFZTX0NNRF9BVFRSX01BWCwKKyAgSVBWU19DTURfQVRUUl9USU1FT1VUX1RDUF9GSU4sCisgIElQVlNfQ01EX0FUVFJfVElNRU9VVF9VRFAsCisgIF9fSVBWU19DTURfQVRUUl9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWU19DTURfQVRUUl9NQVggKF9fSVBWU19DTURfQVRUUl9NQVggLSAxKQogZW51bSB7Ci0gSVBWU19TVkNfQVRUUl9VTlNQRUMgPSAwLAotIElQVlNfU1ZDX0FUVFJfQUYsCisgIElQVlNfU1ZDX0FUVFJfVU5TUEVDID0gMCwKKyAgSVBWU19TVkNfQVRUUl9BRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19TVkNfQVRUUl9QUk9UT0NPTCwKLSBJUFZTX1NWQ19BVFRSX0FERFIsCi0gSVBWU19TVkNfQVRUUl9QT1JULAotIElQVlNfU1ZDX0FUVFJfRldNQVJLLAorICBJUFZTX1NWQ19BVFRSX1BST1RPQ09MLAorICBJUFZTX1NWQ19BVFRSX0FERFIsCisgIElQVlNfU1ZDX0FUVFJfUE9SVCwKKyAgSVBWU19TVkNfQVRUUl9GV01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfU1ZDX0FUVFJfU0NIRURfTkFNRSwKLSBJUFZTX1NWQ19BVFRSX0ZMQUdTLAotIElQVlNfU1ZDX0FUVFJfVElNRU9VVCwKLSBJUFZTX1NWQ19BVFRSX05FVE1BU0ssCisgIElQVlNfU1ZDX0FUVFJfU0NIRURfTkFNRSwKKyAgSVBWU19TVkNfQVRUUl9GTEFHUywKKyAgSVBWU19TVkNfQVRUUl9USU1FT1VULAorICBJUFZTX1NWQ19BVFRSX05FVE1BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfU1ZDX0FUVFJfU1RBVFMsCi0gSVBWU19TVkNfQVRUUl9QRV9OQU1FLAotIF9fSVBWU19TVkNfQVRUUl9NQVgsCisgIElQVlNfU1ZDX0FUVFJfU1RBVFMsCisgIElQVlNfU1ZDX0FUVFJfUEVfTkFNRSwKKyAgX19JUFZTX1NWQ19BVFRSX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFZTX1NWQ19BVFRSX01BWCAoX19JUFZTX1NWQ19BVFRSX01BWCAtIDEpCiBlbnVtIHsKLSBJUFZTX0RFU1RfQVRUUl9VTlNQRUMgPSAwLAotIElQVlNfREVTVF9BVFRSX0FERFIsCisgIElQVlNfREVTVF9BVFRSX1VOU1BFQyA9IDAsCisgIElQVlNfREVTVF9BVFRSX0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfREVTVF9BVFRSX1BPUlQsCi0gSVBWU19ERVNUX0FUVFJfRldEX01FVEhPRCwKLSBJUFZTX0RFU1RfQVRUUl9XRUlHSFQsCi0gSVBWU19ERVNUX0FUVFJfVV9USFJFU0gsCisgIElQVlNfREVTVF9BVFRSX1BPUlQsCisgIElQVlNfREVTVF9BVFRSX0ZXRF9NRVRIT0QsCisgIElQVlNfREVTVF9BVFRSX1dFSUdIVCwKKyAgSVBWU19ERVNUX0FUVFJfVV9USFJFU0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfREVTVF9BVFRSX0xfVEhSRVNILAotIElQVlNfREVTVF9BVFRSX0FDVElWRV9DT05OUywKLSBJUFZTX0RFU1RfQVRUUl9JTkFDVF9DT05OUywKLSBJUFZTX0RFU1RfQVRUUl9QRVJTSVNUX0NPTk5TLAorICBJUFZTX0RFU1RfQVRUUl9MX1RIUkVTSCwKKyAgSVBWU19ERVNUX0FUVFJfQUNUSVZFX0NPTk5TLAorICBJUFZTX0RFU1RfQVRUUl9JTkFDVF9DT05OUywKKyAgSVBWU19ERVNUX0FUVFJfUEVSU0lTVF9DT05OUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19ERVNUX0FUVFJfU1RBVFMsCi0gX19JUFZTX0RFU1RfQVRUUl9NQVgsCisgIElQVlNfREVTVF9BVFRSX1NUQVRTLAorICBJUFZTX0RFU1RfQVRUUl9BRERSX0ZBTUlMWSwKKyAgX19JUFZTX0RFU1RfQVRUUl9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWU19ERVNUX0FUVFJfTUFYIChfX0lQVlNfREVTVF9BVFRSX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBWU19EQUVNT05fQVRUUl9VTlNQRUMgPSAwLAotIElQVlNfREFFTU9OX0FUVFJfU1RBVEUsCi0gSVBWU19EQUVNT05fQVRUUl9NQ0FTVF9JRk4sCisgIElQVlNfREFFTU9OX0FUVFJfVU5TUEVDID0gMCwKKyAgSVBWU19EQUVNT05fQVRUUl9TVEFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19EQUVNT05fQVRUUl9TWU5DX0lELAotIF9fSVBWU19EQUVNT05fQVRUUl9NQVgsCisgIElQVlNfREFFTU9OX0FUVFJfTUNBU1RfSUZOLAorICBJUFZTX0RBRU1PTl9BVFRSX1NZTkNfSUQsCisgIF9fSVBWU19EQUVNT05fQVRUUl9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWU19EQUVNT05fQVRUUl9NQVggKF9fSVBWU19EQUVNT05fQVRUUl9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElQVlNfU1RBVFNfQVRUUl9VTlNQRUMgPSAwLAotIElQVlNfU1RBVFNfQVRUUl9DT05OUywKLSBJUFZTX1NUQVRTX0FUVFJfSU5QS1RTLAorICBJUFZTX1NUQVRTX0FUVFJfVU5TUEVDID0gMCwKKyAgSVBWU19TVEFUU19BVFRSX0NPTk5TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX1NUQVRTX0FUVFJfT1VUUEtUUywKLSBJUFZTX1NUQVRTX0FUVFJfSU5CWVRFUywKLSBJUFZTX1NUQVRTX0FUVFJfT1VUQllURVMsCi0gSVBWU19TVEFUU19BVFRSX0NQUywKKyAgSVBWU19TVEFUU19BVFRSX0lOUEtUUywKKyAgSVBWU19TVEFUU19BVFRSX09VVFBLVFMsCisgIElQVlNfU1RBVFNfQVRUUl9JTkJZVEVTLAorICBJUFZTX1NUQVRTX0FUVFJfT1VUQllURVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfU1RBVFNfQVRUUl9JTlBQUywKLSBJUFZTX1NUQVRTX0FUVFJfT1VUUFBTLAotIElQVlNfU1RBVFNfQVRUUl9JTkJQUywKLSBJUFZTX1NUQVRTX0FUVFJfT1VUQlBTLAorICBJUFZTX1NUQVRTX0FUVFJfQ1BTLAorICBJUFZTX1NUQVRTX0FUVFJfSU5QUFMsCisgIElQVlNfU1RBVFNfQVRUUl9PVVRQUFMsCisgIElQVlNfU1RBVFNfQVRUUl9JTkJQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JUFZTX1NUQVRTX0FUVFJfTUFYLAorICBJUFZTX1NUQVRTX0FUVFJfT1VUQlBTLAorICBfX0lQVlNfU1RBVFNfQVRUUl9NQVgsCiB9OwogI2RlZmluZSBJUFZTX1NUQVRTX0FUVFJfTUFYIChfX0lQVlNfU1RBVFNfQVRUUl9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBJUFZTX0lORk9fQVRUUl9VTlNQRUMgPSAwLAorICBJUFZTX0lORk9fQVRUUl9WRVJTSU9OLAorICBJUFZTX0lORk9fQVRUUl9DT05OX1RBQl9TSVpFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0lORk9fQVRUUl9VTlNQRUMgPSAwLAotIElQVlNfSU5GT19BVFRSX1ZFUlNJT04sCi0gSVBWU19JTkZPX0FUVFJfQ09OTl9UQUJfU0laRSwKLSBfX0lQVlNfSU5GT19BVFRSX01BWCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSVBWU19JTkZPX0FUVFJfTUFYLAogfTsKICNkZWZpbmUgSVBWU19JTkZPX0FUVFJfTUFYIChfX0lQVlNfSU5GT19BVFRSX01BWCAtIDEpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcGMuaAppbmRleCAzMzdlYTc3Li42NzM0NWNlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBjLmgKQEAgLTIxLDU0ICsyMSw1MyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIElQQ19QUklWQVRFICgoX19rZXJuZWxfa2V5X3QpIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGlwY19wZXJtCi17Ci0gX19rZXJuZWxfa2V5X3Qga2V5OwotIF9fa2VybmVsX3VpZF90IHVpZDsKK3N0cnVjdCBpcGNfcGVybSB7CisgIF9fa2VybmVsX2tleV90IGtleTsKKyAgX19rZXJuZWxfdWlkX3QgdWlkOworICBfX2tlcm5lbF9naWRfdCBnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2dpZF90IGdpZDsKLSBfX2tlcm5lbF91aWRfdCBjdWlkOwotIF9fa2VybmVsX2dpZF90IGNnaWQ7Ci0gX19rZXJuZWxfbW9kZV90IG1vZGU7CisgIF9fa2VybmVsX3VpZF90IGN1aWQ7CisgIF9fa2VybmVsX2dpZF90IGNnaWQ7CisgIF9fa2VybmVsX21vZGVfdCBtb2RlOworICB1bnNpZ25lZCBzaG9ydCBzZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNlcTsKIH07CiAjaW5jbHVkZSA8YXNtL2lwY2J1Zi5oPgogI2RlZmluZSBJUENfQ1JFQVQgMDAwMDEwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQQ19FWENMIDAwMDAyMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUENfTk9XQUlUIDAwMDA0MDAwCiAjZGVmaW5lIElQQ19ESVBDIDAwMDEwMDAwCiAjZGVmaW5lIElQQ19PV04gMDAwMjAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQQ19STUlEIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQQ19TRVQgMQogI2RlZmluZSBJUENfU1RBVCAyCiAjZGVmaW5lIElQQ19JTkZPIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQQ19PTEQgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBDXzY0IDB4MDEwMAogc3RydWN0IGlwY19rbHVkZ2UgewotIHN0cnVjdCBtc2didWYgX191c2VyICptc2dwOworICBzdHJ1Y3QgbXNnYnVmIF9fdXNlciAqIG1zZ3A7CisgIGxvbmcgbXNndHlwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIG1zZ3R5cDsKIH07CiAjZGVmaW5lIFNFTU9QIDEKICNkZWZpbmUgU0VNR0VUIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTUNUTCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRU1USU1FRE9QIDQKICNkZWZpbmUgTVNHU05EIDExCiAjZGVmaW5lIE1TR1JDViAxMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNHR0VUIDEzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU0dDVEwgMTQKICNkZWZpbmUgU0hNQVQgMjEKICNkZWZpbmUgU0hNRFQgMjIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNITUdFVCAyMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0hNQ1RMIDI0CiAjZGVmaW5lIERJUEMgMjUKLSNkZWZpbmUgSVBDQ0FMTCh2ZXJzaW9uLG9wKSAoKHZlcnNpb24pPDwxNiB8IChvcCkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUENDQUxMKHZlcnNpb24sb3ApICgodmVyc2lvbikgPDwgMTYgfCAob3ApKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcG1pLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwbWkuaAppbmRleCA1ZWRjMTE4Li5kZDFiMGFkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwbWkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwbWkuaApAQCAtMjMsNTggKzIzLDU4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE1JX01BWF9BRERSX1NJWkUgMzIKIHN0cnVjdCBpcG1pX2FkZHIgewotIGludCBhZGRyX3R5cGU7Ci0gc2hvcnQgY2hhbm5lbDsKKyAgaW50IGFkZHJfdHlwZTsKKyAgc2hvcnQgY2hhbm5lbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkYXRhW0lQTUlfTUFYX0FERFJfU0laRV07CisgIGNoYXIgZGF0YVtJUE1JX01BWF9BRERSX1NJWkVdOwogfTsKICNkZWZpbmUgSVBNSV9TWVNURU1fSU5URVJGQUNFX0FERFJfVFlQRSAweDBjCiBzdHJ1Y3QgaXBtaV9zeXN0ZW1faW50ZXJmYWNlX2FkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYWRkcl90eXBlOwotIHNob3J0IGNoYW5uZWw7Ci0gdW5zaWduZWQgY2hhciBsdW47CisgIGludCBhZGRyX3R5cGU7CisgIHNob3J0IGNoYW5uZWw7CisgIHVuc2lnbmVkIGNoYXIgbHVuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlfSVBNQl9BRERSX1RZUEUgMHgwMQogI2RlZmluZSBJUE1JX0lQTUJfQlJPQURDQVNUX0FERFJfVFlQRSAweDQxCiBzdHJ1Y3QgaXBtaV9pcG1iX2FkZHIgewotIGludCBhZGRyX3R5cGU7CisgIGludCBhZGRyX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGNoYW5uZWw7Ci0gdW5zaWduZWQgY2hhciBzbGF2ZV9hZGRyOwotIHVuc2lnbmVkIGNoYXIgbHVuOworICBzaG9ydCBjaGFubmVsOworICB1bnNpZ25lZCBjaGFyIHNsYXZlX2FkZHI7CisgIHVuc2lnbmVkIGNoYXIgbHVuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlfTEFOX0FERFJfVFlQRSAweDA0CiBzdHJ1Y3QgaXBtaV9sYW5fYWRkciB7Ci0gaW50IGFkZHJfdHlwZTsKLSBzaG9ydCBjaGFubmVsOworICBpbnQgYWRkcl90eXBlOworICBzaG9ydCBjaGFubmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHByaXZpbGVnZTsKLSB1bnNpZ25lZCBjaGFyIHNlc3Npb25faGFuZGxlOwotIHVuc2lnbmVkIGNoYXIgcmVtb3RlX1NXSUQ7Ci0gdW5zaWduZWQgY2hhciBsb2NhbF9TV0lEOworICB1bnNpZ25lZCBjaGFyIHByaXZpbGVnZTsKKyAgdW5zaWduZWQgY2hhciBzZXNzaW9uX2hhbmRsZTsKKyAgdW5zaWduZWQgY2hhciByZW1vdGVfU1dJRDsKKyAgdW5zaWduZWQgY2hhciBsb2NhbF9TV0lEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGx1bjsKKyAgdW5zaWduZWQgY2hhciBsdW47CiB9OwogI2RlZmluZSBJUE1JX0JNQ19DSEFOTkVMIDB4ZgogI2RlZmluZSBJUE1JX05VTV9DSEFOTkVMUyAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE1JX0NIQU5fQUxMICh+MCkKIHN0cnVjdCBpcG1pX21zZyB7Ci0gdW5zaWduZWQgY2hhciBuZXRmbjsKLSB1bnNpZ25lZCBjaGFyIGNtZDsKKyAgdW5zaWduZWQgY2hhciBuZXRmbjsKKyAgdW5zaWduZWQgY2hhciBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGRhdGFfbGVuOwotIHVuc2lnbmVkIGNoYXIgX191c2VyICpkYXRhOworICB1bnNpZ25lZCBzaG9ydCBkYXRhX2xlbjsKKyAgdW5zaWduZWQgY2hhciBfX3VzZXIgKiBkYXRhOwogfTsKIHN0cnVjdCBrZXJuZWxfaXBtaV9tc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5ldGZuOwotIHVuc2lnbmVkIGNoYXIgY21kOwotIHVuc2lnbmVkIHNob3J0IGRhdGFfbGVuOwotIHVuc2lnbmVkIGNoYXIgKmRhdGE7CisgIHVuc2lnbmVkIGNoYXIgbmV0Zm47CisgIHVuc2lnbmVkIGNoYXIgY21kOworICB1bnNpZ25lZCBzaG9ydCBkYXRhX2xlbjsKKyAgdW5zaWduZWQgY2hhciAqIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBNSV9JTlZBTElEX0NNRF9DT01QTEVUSU9OX0NPREUgMHhDMQpAQCAtOTMsNzIgKzkzLDcyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE1JX0lPQ19NQUdJQyAnaScKIHN0cnVjdCBpcG1pX3JlcSB7Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmFkZHI7Ci0gdW5zaWduZWQgaW50IGFkZHJfbGVuOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGFkZHI7CisgIHVuc2lnbmVkIGludCBhZGRyX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBtc2dpZDsKLSBzdHJ1Y3QgaXBtaV9tc2cgbXNnOworICBsb25nIG1zZ2lkOworICBzdHJ1Y3QgaXBtaV9tc2cgbXNnOwogfTsKLSNkZWZpbmUgSVBNSUNUTF9TRU5EX0NPTU1BTkQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTMsICAgc3RydWN0IGlwbWlfcmVxKQorI2RlZmluZSBJUE1JQ1RMX1NFTkRfQ09NTUFORCBfSU9SKElQTUlfSU9DX01BR0lDLCAxMywgc3RydWN0IGlwbWlfcmVxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcG1pX3JlcV9zZXR0aW1lIHsKLSBzdHJ1Y3QgaXBtaV9yZXEgcmVxOwotIGludCByZXRyaWVzOwotIHVuc2lnbmVkIGludCByZXRyeV90aW1lX21zOworICBzdHJ1Y3QgaXBtaV9yZXEgcmVxOworICBpbnQgcmV0cmllczsKKyAgdW5zaWduZWQgaW50IHJldHJ5X3RpbWVfbXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSVBNSUNUTF9TRU5EX0NPTU1BTkRfU0VUVElNRSBfSU9SKElQTUlfSU9DX01BR0lDLCAyMSwgICBzdHJ1Y3QgaXBtaV9yZXFfc2V0dGltZSkKKyNkZWZpbmUgSVBNSUNUTF9TRU5EX0NPTU1BTkRfU0VUVElNRSBfSU9SKElQTUlfSU9DX01BR0lDLCAyMSwgc3RydWN0IGlwbWlfcmVxX3NldHRpbWUpCiBzdHJ1Y3QgaXBtaV9yZWN2IHsKLSBpbnQgcmVjdl90eXBlOworICBpbnQgcmVjdl90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqYWRkcjsKLSB1bnNpZ25lZCBpbnQgYWRkcl9sZW47Ci0gbG9uZyBtc2dpZDsKLSBzdHJ1Y3QgaXBtaV9tc2cgbXNnOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGFkZHI7CisgIHVuc2lnbmVkIGludCBhZGRyX2xlbjsKKyAgbG9uZyBtc2dpZDsKKyAgc3RydWN0IGlwbWlfbXNnIG1zZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJUE1JQ1RMX1JFQ0VJVkVfTVNHIF9JT1dSKElQTUlfSU9DX01BR0lDLCAxMiwgICBzdHJ1Y3QgaXBtaV9yZWN2KQotI2RlZmluZSBJUE1JQ1RMX1JFQ0VJVkVfTVNHX1RSVU5DIF9JT1dSKElQTUlfSU9DX01BR0lDLCAxMSwgICBzdHJ1Y3QgaXBtaV9yZWN2KQorI2RlZmluZSBJUE1JQ1RMX1JFQ0VJVkVfTVNHIF9JT1dSKElQTUlfSU9DX01BR0lDLCAxMiwgc3RydWN0IGlwbWlfcmVjdikKKyNkZWZpbmUgSVBNSUNUTF9SRUNFSVZFX01TR19UUlVOQyBfSU9XUihJUE1JX0lPQ19NQUdJQywgMTEsIHN0cnVjdCBpcG1pX3JlY3YpCiBzdHJ1Y3QgaXBtaV9jbWRzcGVjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBuZXRmbjsKLSB1bnNpZ25lZCBjaGFyIGNtZDsKKyAgdW5zaWduZWQgY2hhciBuZXRmbjsKKyAgdW5zaWduZWQgY2hhciBjbWQ7CiB9OwotI2RlZmluZSBJUE1JQ1RMX1JFR0lTVEVSX0ZPUl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTQsICAgc3RydWN0IGlwbWlfY21kc3BlYykKKyNkZWZpbmUgSVBNSUNUTF9SRUdJU1RFUl9GT1JfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDE0LCBzdHJ1Y3QgaXBtaV9jbWRzcGVjKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBNSUNUTF9VTlJFR0lTVEVSX0ZPUl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTUsICAgc3RydWN0IGlwbWlfY21kc3BlYykKKyNkZWZpbmUgSVBNSUNUTF9VTlJFR0lTVEVSX0ZPUl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTUsIHN0cnVjdCBpcG1pX2NtZHNwZWMpCiBzdHJ1Y3QgaXBtaV9jbWRzcGVjX2NoYW5zIHsKLSB1bnNpZ25lZCBpbnQgbmV0Zm47Ci0gdW5zaWduZWQgaW50IGNtZDsKKyAgdW5zaWduZWQgaW50IG5ldGZuOworICB1bnNpZ25lZCBpbnQgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2hhbnM7CisgIHVuc2lnbmVkIGludCBjaGFuczsKIH07Ci0jZGVmaW5lIElQTUlDVExfUkVHSVNURVJfRk9SX0NNRF9DSEFOUyBfSU9SKElQTUlfSU9DX01BR0lDLCAyOCwgICBzdHJ1Y3QgaXBtaV9jbWRzcGVjX2NoYW5zKQotI2RlZmluZSBJUE1JQ1RMX1VOUkVHSVNURVJfRk9SX0NNRF9DSEFOUyBfSU9SKElQTUlfSU9DX01BR0lDLCAyOSwgICBzdHJ1Y3QgaXBtaV9jbWRzcGVjX2NoYW5zKQorI2RlZmluZSBJUE1JQ1RMX1JFR0lTVEVSX0ZPUl9DTURfQ0hBTlMgX0lPUihJUE1JX0lPQ19NQUdJQywgMjgsIHN0cnVjdCBpcG1pX2NtZHNwZWNfY2hhbnMpCisjZGVmaW5lIElQTUlDVExfVU5SRUdJU1RFUl9GT1JfQ01EX0NIQU5TIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI5LCBzdHJ1Y3QgaXBtaV9jbWRzcGVjX2NoYW5zKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBNSUNUTF9TRVRfR0VUU19FVkVOVFNfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDE2LCBpbnQpCiBzdHJ1Y3QgaXBtaV9jaGFubmVsX2x1bl9hZGRyZXNzX3NldCB7Ci0gdW5zaWduZWQgc2hvcnQgY2hhbm5lbDsKLSB1bnNpZ25lZCBjaGFyIHZhbHVlOworICB1bnNpZ25lZCBzaG9ydCBjaGFubmVsOworICB1bnNpZ25lZCBjaGFyIHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIElQTUlDVExfU0VUX01ZX0NIQU5ORUxfQUREUkVTU19DTUQgICBfSU9SKElQTUlfSU9DX01BR0lDLCAyNCwgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCi0jZGVmaW5lIElQTUlDVExfR0VUX01ZX0NIQU5ORUxfQUREUkVTU19DTUQgICBfSU9SKElQTUlfSU9DX01BR0lDLCAyNSwgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCi0jZGVmaW5lIElQTUlDVExfU0VUX01ZX0NIQU5ORUxfTFVOX0NNRCAgIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI2LCBzdHJ1Y3QgaXBtaV9jaGFubmVsX2x1bl9hZGRyZXNzX3NldCkKKyNkZWZpbmUgSVBNSUNUTF9TRVRfTVlfQ0hBTk5FTF9BRERSRVNTX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyNCwgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCisjZGVmaW5lIElQTUlDVExfR0VUX01ZX0NIQU5ORUxfQUREUkVTU19DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjUsIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0KQorI2RlZmluZSBJUE1JQ1RMX1NFVF9NWV9DSEFOTkVMX0xVTl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjYsIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBNSUNUTF9HRVRfTVlfQ0hBTk5FTF9MVU5fQ01EICAgX0lPUihJUE1JX0lPQ19NQUdJQywgMjcsIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0KQorI2RlZmluZSBJUE1JQ1RMX0dFVF9NWV9DSEFOTkVMX0xVTl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjcsIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0KQogI2RlZmluZSBJUE1JQ1RMX1NFVF9NWV9BRERSRVNTX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAxNywgdW5zaWduZWQgaW50KQogI2RlZmluZSBJUE1JQ1RMX0dFVF9NWV9BRERSRVNTX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAxOCwgdW5zaWduZWQgaW50KQogI2RlZmluZSBJUE1JQ1RMX1NFVF9NWV9MVU5fQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDE5LCB1bnNpZ25lZCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE1JQ1RMX0dFVF9NWV9MVU5fQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDIwLCB1bnNpZ25lZCBpbnQpCiBzdHJ1Y3QgaXBtaV90aW1pbmdfcGFybXMgewotIGludCByZXRyaWVzOwotIHVuc2lnbmVkIGludCByZXRyeV90aW1lX21zOworICBpbnQgcmV0cmllczsKKyAgdW5zaWduZWQgaW50IHJldHJ5X3RpbWVfbXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSVBNSUNUTF9TRVRfVElNSU5HX1BBUk1TX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyMiwgICBzdHJ1Y3QgaXBtaV90aW1pbmdfcGFybXMpCi0jZGVmaW5lIElQTUlDVExfR0VUX1RJTUlOR19QQVJNU19DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjMsICAgc3RydWN0IGlwbWlfdGltaW5nX3Bhcm1zKQorI2RlZmluZSBJUE1JQ1RMX1NFVF9USU1JTkdfUEFSTVNfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDIyLCBzdHJ1Y3QgaXBtaV90aW1pbmdfcGFybXMpCisjZGVmaW5lIElQTUlDVExfR0VUX1RJTUlOR19QQVJNU19DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjMsIHN0cnVjdCBpcG1pX3RpbWluZ19wYXJtcykKICNkZWZpbmUgSVBNSUNUTF9HRVRfTUFJTlRFTkFOQ0VfTU9ERV9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMzAsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlDVExfU0VUX01BSU5URU5BTkNFX01PREVfQ01EIF9JT1coSVBNSV9JT0NfTUFHSUMsIDMxLCBpbnQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwc2VjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwc2VjLmgKaW5kZXggZTk3NThlYi4uZDIwN2NmMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHNlYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBzZWMuaApAQCAtMjQsMzcgKzI0LDM3IEBACiAjZGVmaW5lIElQU0VDX1VMUFJPVE9fQU5ZIDI1NQogI2RlZmluZSBJUFNFQ19QUk9UT19BTlkgMjU1CiBlbnVtIHsKLSBJUFNFQ19NT0RFX0FOWSA9IDAsCisgIElQU0VDX01PREVfQU5ZID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRUNfTU9ERV9UUkFOU1BPUlQgPSAxLAotIElQU0VDX01PREVfVFVOTkVMID0gMiwKLSBJUFNFQ19NT0RFX0JFRVQgPSAzCisgIElQU0VDX01PREVfVFJBTlNQT1JUID0gMSwKKyAgSVBTRUNfTU9ERV9UVU5ORUwgPSAyLAorICBJUFNFQ19NT0RFX0JFRVQgPSAzCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElQU0VDX0RJUl9BTlkgPSAwLAotIElQU0VDX0RJUl9JTkJPVU5EID0gMSwKLSBJUFNFQ19ESVJfT1VUQk9VTkQgPSAyLAorICBJUFNFQ19ESVJfQU5ZID0gMCwKKyAgSVBTRUNfRElSX0lOQk9VTkQgPSAxLAorICBJUFNFQ19ESVJfT1VUQk9VTkQgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFQ19ESVJfRldEID0gMywKLSBJUFNFQ19ESVJfTUFYID0gNCwKLSBJUFNFQ19ESVJfSU5WQUxJRCA9IDUKKyAgSVBTRUNfRElSX0ZXRCA9IDMsCisgIElQU0VDX0RJUl9NQVggPSA0LAorICBJUFNFQ19ESVJfSU5WQUxJRCA9IDUKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBTRUNfUE9MSUNZX0RJU0NBUkQgPSAwLAotIElQU0VDX1BPTElDWV9OT05FID0gMSwKLSBJUFNFQ19QT0xJQ1lfSVBTRUMgPSAyLAorICBJUFNFQ19QT0xJQ1lfRElTQ0FSRCA9IDAsCisgIElQU0VDX1BPTElDWV9OT05FID0gMSwKKyAgSVBTRUNfUE9MSUNZX0lQU0VDID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRUNfUE9MSUNZX0VOVFJVU1QgPSAzLAotIElQU0VDX1BPTElDWV9CWVBBU1MgPSA0CisgIElQU0VDX1BPTElDWV9FTlRSVVNUID0gMywKKyAgSVBTRUNfUE9MSUNZX0JZUEFTUyA9IDQKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRUNfTEVWRUxfREVGQVVMVCA9IDAsCi0gSVBTRUNfTEVWRUxfVVNFID0gMSwKLSBJUFNFQ19MRVZFTF9SRVFVSVJFID0gMiwKLSBJUFNFQ19MRVZFTF9VTklRVUUgPSAzCisgIElQU0VDX0xFVkVMX0RFRkFVTFQgPSAwLAorICBJUFNFQ19MRVZFTF9VU0UgPSAxLAorICBJUFNFQ19MRVZFTF9SRVFVSVJFID0gMiwKKyAgSVBTRUNfTEVWRUxfVU5JUVVFID0gMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElQU0VDX01BTlVBTF9SRVFJRF9NQVggMHgzZmZmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwdjYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Ni5oCmluZGV4IGJmZTYyY2YuLjM0MjVmNWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Ni5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Ni5oCkBAIC0yNCwzNiArMjQsMzYgQEAKICNpbmNsdWRlIDxhc20vYnl0ZW9yZGVyLmg+CiAjZGVmaW5lIElQVjZfTUlOX01UVSAxMjgwCiBzdHJ1Y3QgaW42X3BrdGluZm8gewotIHN0cnVjdCBpbjZfYWRkciBpcGk2X2FkZHI7CisgIHN0cnVjdCBpbjZfYWRkciBpcGk2X2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpcGk2X2lmaW5kZXg7CisgIGludCBpcGk2X2lmaW5kZXg7CiB9Owogc3RydWN0IGlwNl9tdHVpbmZvIHsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGlwNm1fYWRkcjsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBpcDZtX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlwNm1fbXR1OworICBfX3UzMiBpcDZtX210dTsKIH07CiBzdHJ1Y3QgaW42X2lmcmVxIHsKLSBzdHJ1Y3QgaW42X2FkZHIgaWZyNl9hZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgaWZyNl9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZnI2X3ByZWZpeGxlbjsKLSBpbnQgaWZyNl9pZmluZGV4OworICBfX3UzMiBpZnI2X3ByZWZpeGxlbjsKKyAgaW50IGlmcjZfaWZpbmRleDsKIH07CiAjZGVmaW5lIElQVjZfU1JDUlRfU1RSSUNUIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjZfU1JDUlRfVFlQRV8wIDAKICNkZWZpbmUgSVBWNl9TUkNSVF9UWVBFXzIgMgogc3RydWN0IGlwdjZfcnRfaGRyIHsKLSBfX3U4IG5leHRoZHI7CisgIF9fdTggbmV4dGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBoZHJsZW47Ci0gX191OCB0eXBlOwotIF9fdTggc2VnbWVudHNfbGVmdDsKKyAgX191OCBoZHJsZW47CisgIF9fdTggdHlwZTsKKyAgX191OCBzZWdtZW50c19sZWZ0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXB2Nl9vcHRfaGRyIHsKLSBfX3U4IG5leHRoZHI7Ci0gX191OCBoZHJsZW47CisgIF9fdTggbmV4dGhkcjsKKyAgX191OCBoZHJsZW47CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaXB2Nl9kZXN0b3B0X2hkciBpcHY2X29wdF9oZHIKQEAgLTYxLDkwICs2MSw4OSBAQAogI2RlZmluZSBJUFY2X09QVF9ST1VURVJBTEVSVF9NTEQgMHgwMDAwCiBzdHJ1Y3QgcnQwX2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpcHY2X3J0X2hkciBydF9oZHI7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gc3RydWN0IGluNl9hZGRyIGFkZHJbMF07CisgIHN0cnVjdCBpcHY2X3J0X2hkciBydF9oZHI7CisgIF9fdTMyIHJlc2VydmVkOworICBzdHJ1Y3QgaW42X2FkZHIgYWRkclswXTsKICNkZWZpbmUgcnQwX3R5cGUgcnRfaGRyLnR5cGUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJ0Ml9oZHIgewotIHN0cnVjdCBpcHY2X3J0X2hkciBydF9oZHI7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBpcHY2X3J0X2hkciBydF9oZHI7CisgIF9fdTMyIHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW42X2FkZHIgYWRkcjsKKyAgc3RydWN0IGluNl9hZGRyIGFkZHI7CiAjZGVmaW5lIHJ0Ml90eXBlIHJ0X2hkci50eXBlCiB9Owogc3RydWN0IGlwdjZfZGVzdG9wdF9oYW8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gX191OCBsZW5ndGg7Ci0gc3RydWN0IGluNl9hZGRyIGFkZHI7CisgIF9fdTggdHlwZTsKKyAgX191OCBsZW5ndGg7CisgIHN0cnVjdCBpbjZfYWRkciBhZGRyOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXB2NmhkciB7CiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191OCBwcmlvcml0eTo0LAotIHZlcnNpb246NDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcHJpb3JpdHkgOiA0LCB2ZXJzaW9uIDogNDsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggdmVyc2lvbjo0LAotIHByaW9yaXR5OjQ7Ci0jZWxzZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB2ZXJzaW9uIDogNCwgcHJpb3JpdHkgOiA0OworI2Vsc2UKICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKICNlbmRpZgotIF9fdTggZmxvd19sYmxbM107Ci0gX19iZTE2IHBheWxvYWRfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5leHRoZHI7Ci0gX191OCBob3BfbGltaXQ7Ci0gc3RydWN0IGluNl9hZGRyIHNhZGRyOwotIHN0cnVjdCBpbjZfYWRkciBkYWRkcjsKKyAgX191OCBmbG93X2xibFszXTsKKyAgX19iZTE2IHBheWxvYWRfbGVuOworICBfX3U4IG5leHRoZHI7CisgIF9fdTggaG9wX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGluNl9hZGRyIHNhZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgZGFkZHI7CiB9OwogZW51bSB7Ci0gREVWQ09ORl9GT1JXQVJESU5HID0gMCwKLSBERVZDT05GX0hPUExJTUlULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX01UVTYsCi0gREVWQ09ORl9BQ0NFUFRfUkEsCi0gREVWQ09ORl9BQ0NFUFRfUkVESVJFQ1RTLAotIERFVkNPTkZfQVVUT0NPTkYsCisgIERFVkNPTkZfRk9SV0FSRElORyA9IDAsCisgIERFVkNPTkZfSE9QTElNSVQsCisgIERFVkNPTkZfTVRVNiwKKyAgREVWQ09ORl9BQ0NFUFRfUkEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVkNPTkZfREFEX1RSQU5TTUlUUywKLSBERVZDT05GX1JUUl9TT0xJQ0lUUywKLSBERVZDT05GX1JUUl9TT0xJQ0lUX0lOVEVSVkFMLAotIERFVkNPTkZfUlRSX1NPTElDSVRfREVMQVksCisgIERFVkNPTkZfQUNDRVBUX1JFRElSRUNUUywKKyAgREVWQ09ORl9BVVRPQ09ORiwKKyAgREVWQ09ORl9EQURfVFJBTlNNSVRTLAorICBERVZDT05GX1JUUl9TT0xJQ0lUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWQ09ORl9VU0VfVEVNUEFERFIsCi0gREVWQ09ORl9URU1QX1ZBTElEX0xGVCwKLSBERVZDT05GX1RFTVBfUFJFRkVSRURfTEZULAotIERFVkNPTkZfUkVHRU5fTUFYX1JFVFJZLAorICBERVZDT05GX1JUUl9TT0xJQ0lUX0lOVEVSVkFMLAorICBERVZDT05GX1JUUl9TT0xJQ0lUX0RFTEFZLAorICBERVZDT05GX1VTRV9URU1QQUREUiwKKyAgREVWQ09ORl9URU1QX1ZBTElEX0xGVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWQ09ORl9NQVhfREVTWU5DX0ZBQ1RPUiwKLSBERVZDT05GX01BWF9BRERSRVNTRVMsCi0gREVWQ09ORl9GT1JDRV9NTERfVkVSU0lPTiwKLSBERVZDT05GX0FDQ0VQVF9SQV9ERUZSVFIsCisgIERFVkNPTkZfVEVNUF9QUkVGRVJFRF9MRlQsCisgIERFVkNPTkZfUkVHRU5fTUFYX1JFVFJZLAorICBERVZDT05GX01BWF9ERVNZTkNfRkFDVE9SLAorICBERVZDT05GX01BWF9BRERSRVNTRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVkNPTkZfQUNDRVBUX1JBX1BJTkZPLAotIERFVkNPTkZfQUNDRVBUX1JBX1JUUl9QUkVGLAotIERFVkNPTkZfUlRSX1BST0JFX0lOVEVSVkFMLAotIERFVkNPTkZfQUNDRVBUX1JBX1JUX0lORk9fTUFYX1BMRU4sCisgIERFVkNPTkZfRk9SQ0VfTUxEX1ZFUlNJT04sCisgIERFVkNPTkZfQUNDRVBUX1JBX0RFRlJUUiwKKyAgREVWQ09ORl9BQ0NFUFRfUkFfUElORk8sCisgIERFVkNPTkZfQUNDRVBUX1JBX1JUUl9QUkVGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX1BST1hZX05EUCwKLSBERVZDT05GX09QVElNSVNUSUNfREFELAotIERFVkNPTkZfQUNDRVBUX1NPVVJDRV9ST1VURSwKLSBERVZDT05GX01DX0ZPUldBUkRJTkcsCisgIERFVkNPTkZfUlRSX1BST0JFX0lOVEVSVkFMLAorICBERVZDT05GX0FDQ0VQVF9SQV9SVF9JTkZPX01BWF9QTEVOLAorICBERVZDT05GX1BST1hZX05EUCwKKyAgREVWQ09ORl9PUFRJTUlTVElDX0RBRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWQ09ORl9ESVNBQkxFX0lQVjYsCi0gREVWQ09ORl9BQ0NFUFRfREFELAotIERFVkNPTkZfRk9SQ0VfVExMQU8sCi0gREVWQ09ORl9ORElTQ19OT1RJRlksCisgIERFVkNPTkZfQUNDRVBUX1NPVVJDRV9ST1VURSwKKyAgREVWQ09ORl9NQ19GT1JXQVJESU5HLAorICBERVZDT05GX0RJU0FCTEVfSVBWNiwKKyAgREVWQ09ORl9BQ0NFUFRfREFELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX01MRFYxX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKLSBERVZDT05GX01MRFYyX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKLSBERVZDT05GX1NVUFBSRVNTX0ZSQUdfTkRJU0MsCi0gREVWQ09ORl9NQVgKKyAgREVWQ09ORl9GT1JDRV9UTExBTywKKyAgREVWQ09ORl9ORElTQ19OT1RJRlksCisgIERFVkNPTkZfTUxEVjFfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAorICBERVZDT05GX01MRFYyX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERFVkNPTkZfU1VQUFJFU1NfRlJBR19ORElTQywKKyAgREVWQ09ORl9BQ0NFUFRfUkFfRlJPTV9MT0NBTCwKKyAgREVWQ09ORl9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwdjZfcm91dGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Nl9yb3V0ZS5oCmluZGV4IDA0MGEzZGIuLmZmNzQ5ODYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Nl9yb3V0ZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Nl9yb3V0ZS5oCkBAIC0zOCwxOCArMzgsMTggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJURl9MT0NBTCAweDgwMDAwMDAwCiBzdHJ1Y3QgaW42X3J0bXNnIHsKLSBzdHJ1Y3QgaW42X2FkZHIgcnRtc2dfZHN0OwotIHN0cnVjdCBpbjZfYWRkciBydG1zZ19zcmM7CisgIHN0cnVjdCBpbjZfYWRkciBydG1zZ19kc3Q7CisgIHN0cnVjdCBpbjZfYWRkciBydG1zZ19zcmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbjZfYWRkciBydG1zZ19nYXRld2F5OwotIF9fdTMyIHJ0bXNnX3R5cGU7Ci0gX191MTYgcnRtc2dfZHN0X2xlbjsKLSBfX3UxNiBydG1zZ19zcmNfbGVuOworICBzdHJ1Y3QgaW42X2FkZHIgcnRtc2dfZ2F0ZXdheTsKKyAgX191MzIgcnRtc2dfdHlwZTsKKyAgX191MTYgcnRtc2dfZHN0X2xlbjsKKyAgX191MTYgcnRtc2dfc3JjX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnRtc2dfbWV0cmljOwotIHVuc2lnbmVkIGxvbmcgcnRtc2dfaW5mbzsKLSBfX3UzMiBydG1zZ19mbGFnczsKLSBpbnQgcnRtc2dfaWZpbmRleDsKKyAgX191MzIgcnRtc2dfbWV0cmljOworICB1bnNpZ25lZCBsb25nIHJ0bXNnX2luZm87CisgIF9fdTMyIHJ0bXNnX2ZsYWdzOworICBpbnQgcnRtc2dfaWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBSVE1TR19ORVdERVZJQ0UgMHgxMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB4LmgKaW5kZXggNjFlZmI0OC4uNDcwODZmZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lweC5oCkBAIC0yNiwxMyArMjYsMTMgQEAKICNkZWZpbmUgSVBYX01UVSA1NzYKIHN0cnVjdCBzb2NrYWRkcl9pcHggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzaXB4X2ZhbWlseTsKLSBfX2JlMTYgc2lweF9wb3J0OwotIF9fYmUzMiBzaXB4X25ldHdvcms7Ci0gdW5zaWduZWQgY2hhciBzaXB4X25vZGVbSVBYX05PREVfTEVOXTsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2lweF9mYW1pbHk7CisgIF9fYmUxNiBzaXB4X3BvcnQ7CisgIF9fYmUzMiBzaXB4X25ldHdvcms7CisgIHVuc2lnbmVkIGNoYXIgc2lweF9ub2RlW0lQWF9OT0RFX0xFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lweF90eXBlOwotIHVuc2lnbmVkIGNoYXIgc2lweF96ZXJvOworICBfX3U4IHNpcHhfdHlwZTsKKyAgdW5zaWduZWQgY2hhciBzaXB4X3plcm87CiB9OwogI2RlZmluZSBzaXB4X3NwZWNpYWwgc2lweF9wb3J0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDEsMTUgKzQxLDE1IEBACiAjZGVmaW5lIElQWF9DUlRJVEYgMQogc3RydWN0IGlweF9yb3V0ZV9kZWZpbml0aW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGlweF9uZXR3b3JrOwotIF9fYmUzMiBpcHhfcm91dGVyX25ldHdvcms7Ci0gdW5zaWduZWQgY2hhciBpcHhfcm91dGVyX25vZGVbSVBYX05PREVfTEVOXTsKKyAgX19iZTMyIGlweF9uZXR3b3JrOworICBfX2JlMzIgaXB4X3JvdXRlcl9uZXR3b3JrOworICB1bnNpZ25lZCBjaGFyIGlweF9yb3V0ZXJfbm9kZVtJUFhfTk9ERV9MRU5dOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXB4X2ludGVyZmFjZV9kZWZpbml0aW9uIHsKLSBfX2JlMzIgaXB4X25ldHdvcms7Ci0gdW5zaWduZWQgY2hhciBpcHhfZGV2aWNlWzE2XTsKLSB1bnNpZ25lZCBjaGFyIGlweF9kbGlua190eXBlOworICBfX2JlMzIgaXB4X25ldHdvcms7CisgIHVuc2lnbmVkIGNoYXIgaXB4X2RldmljZVsxNl07CisgIHVuc2lnbmVkIGNoYXIgaXB4X2RsaW5rX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFhfRlJBTUVfTk9ORSAwCiAjZGVmaW5lIElQWF9GUkFNRV9TTkFQIDEKQEAgLTU4LDI3ICs1OCwyNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBYX0ZSQU1FXzgwMjMgNAogI2RlZmluZSBJUFhfRlJBTUVfVFJfODAyMiA1Ci0gdW5zaWduZWQgY2hhciBpcHhfc3BlY2lhbDsKKyAgdW5zaWduZWQgY2hhciBpcHhfc3BlY2lhbDsKICNkZWZpbmUgSVBYX1NQRUNJQUxfTk9ORSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFhfUFJJTUFSWSAxCiAjZGVmaW5lIElQWF9JTlRFUk5BTCAyCi0gdW5zaWduZWQgY2hhciBpcHhfbm9kZVtJUFhfTk9ERV9MRU5dOworICB1bnNpZ25lZCBjaGFyIGlweF9ub2RlW0lQWF9OT0RFX0xFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcHhfY29uZmlnX2RhdGEgewotIHVuc2lnbmVkIGNoYXIgaXB4Y2ZnX2F1dG9fc2VsZWN0X3ByaW1hcnk7Ci0gdW5zaWduZWQgY2hhciBpcHhjZmdfYXV0b19jcmVhdGVfaW50ZXJmYWNlczsKKyAgdW5zaWduZWQgY2hhciBpcHhjZmdfYXV0b19zZWxlY3RfcHJpbWFyeTsKKyAgdW5zaWduZWQgY2hhciBpcHhjZmdfYXV0b19jcmVhdGVfaW50ZXJmYWNlczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlweF9yb3V0ZV9kZWYgewotIF9fYmUzMiBpcHhfbmV0d29yazsKLSBfX2JlMzIgaXB4X3JvdXRlcl9uZXR3b3JrOworICBfX2JlMzIgaXB4X25ldHdvcms7CisgIF9fYmUzMiBpcHhfcm91dGVyX25ldHdvcms7CiAjZGVmaW5lIElQWF9ST1VURV9OT19ST1VURVIgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGlweF9yb3V0ZXJfbm9kZVtJUFhfTk9ERV9MRU5dOwotIHVuc2lnbmVkIGNoYXIgaXB4X2RldmljZVsxNl07Ci0gdW5zaWduZWQgc2hvcnQgaXB4X2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIGlweF9yb3V0ZXJfbm9kZVtJUFhfTk9ERV9MRU5dOworICB1bnNpZ25lZCBjaGFyIGlweF9kZXZpY2VbMTZdOworICB1bnNpZ25lZCBzaG9ydCBpcHhfZmxhZ3M7CiAjZGVmaW5lIElQWF9SVF9TTkFQIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQWF9SVF84MDIyIDQKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXJkYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcmRhLmgKaW5kZXggNzE4ZGJhZi4uZGFjNmQxZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcmRhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcmRhLmgKQEAgLTUzLDMwICs1MywzMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1NfVU5JQ09ERSAweGZmCiB0eXBlZGVmIGVudW0gewotIElSREFfVEVLUkFNX0RPTkdMRSA9IDAsCi0gSVJEQV9FU0lfRE9OR0xFID0gMSwKKyAgSVJEQV9URUtSQU1fRE9OR0xFID0gMCwKKyAgSVJEQV9FU0lfRE9OR0xFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVJEQV9BQ1RJU1lTX0RPTkdMRSA9IDIsCi0gSVJEQV9BQ1RJU1lTX1BMVVNfRE9OR0xFID0gMywKLSBJUkRBX0dJUkJJTF9ET05HTEUgPSA0LAotIElSREFfTElURUxJTktfRE9OR0xFID0gNSwKKyAgSVJEQV9BQ1RJU1lTX0RPTkdMRSA9IDIsCisgIElSREFfQUNUSVNZU19QTFVTX0RPTkdMRSA9IDMsCisgIElSREFfR0lSQklMX0RPTkdMRSA9IDQsCisgIElSREFfTElURUxJTktfRE9OR0xFID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVJEQV9BSVJQT1JUX0RPTkdMRSA9IDYsCi0gSVJEQV9PTERfQkVMS0lOX0RPTkdMRSA9IDcsCi0gSVJEQV9FUDcyMTFfSVIgPSA4LAotIElSREFfTUNQMjEyMF9ET05HTEUgPSA5LAorICBJUkRBX0FJUlBPUlRfRE9OR0xFID0gNiwKKyAgSVJEQV9PTERfQkVMS0lOX0RPTkdMRSA9IDcsCisgIElSREFfRVA3MjExX0lSID0gOCwKKyAgSVJEQV9NQ1AyMTIwX0RPTkdMRSA9IDksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElSREFfQUNUMjAwTF9ET05HTEUgPSAxMCwKLSBJUkRBX01BNjAwX0RPTkdMRSA9IDExLAotIElSREFfVE9JTTMyMzJfRE9OR0xFID0gMTIsCi0gSVJEQV9FUDcyMTFfRE9OR0xFID0gMTMsCisgIElSREFfQUNUMjAwTF9ET05HTEUgPSAxMCwKKyAgSVJEQV9NQTYwMF9ET05HTEUgPSAxMSwKKyAgSVJEQV9UT0lNMzIzMl9ET05HTEUgPSAxMiwKKyAgSVJEQV9FUDcyMTFfRE9OR0xFID0gMTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBJUkRBX0RPTkdMRTsKIGVudW0gewotIElSREFQUk9UT19VTklUREFUQSA9IDAsCi0gSVJEQVBST1RPX1VMVFJBID0gMSwKKyAgSVJEQVBST1RPX1VOSVREQVRBID0gMCwKKyAgSVJEQVBST1RPX1VMVFJBID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVJEQVBST1RPX01BWAorICBJUkRBUFJPVE9fTUFYCiB9OwogI2RlZmluZSBTT0xfSVJMTVAgMjY2CiAjZGVmaW5lIFNPTF9JUlRUUCAyNjYKQEAgLTExMiw0NyArMTEyLDQ3IEBACiAjZGVmaW5lIExTQVBfQU5ZIDB4ZmYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfaXJkYSB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2lyX2ZhbWlseTsKLSBfX3U4IHNpcl9sc2FwX3NlbDsKLSBfX3UzMiBzaXJfYWRkcjsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2lyX2ZhbWlseTsKKyAgX191OCBzaXJfbHNhcF9zZWw7CisgIF9fdTMyIHNpcl9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNpcl9uYW1lWzI1XTsKKyAgY2hhciBzaXJfbmFtZVsyNV07CiB9Owogc3RydWN0IGlyZGFfZGV2aWNlX2luZm8gewotIF9fdTMyIHNhZGRyOworICBfX3UzMiBzYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGFkZHI7Ci0gY2hhciBpbmZvWzIyXTsKLSBfX3U4IGNoYXJzZXQ7Ci0gX191OCBoaW50c1syXTsKKyAgX191MzIgZGFkZHI7CisgIGNoYXIgaW5mb1syMl07CisgIF9fdTggY2hhcnNldDsKKyAgX191OCBoaW50c1syXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlyZGFfZGV2aWNlX2xpc3QgewotIF9fdTMyIGxlbjsKLSBzdHJ1Y3QgaXJkYV9kZXZpY2VfaW5mbyBkZXZbMV07CisgIF9fdTMyIGxlbjsKKyAgc3RydWN0IGlyZGFfZGV2aWNlX2luZm8gZGV2WzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXJkYV9pYXNfc2V0IHsKLSBjaGFyIGlyZGFfY2xhc3NfbmFtZVtJQVNfRVhQT1JUX0NMQVNTTkFNRV07Ci0gY2hhciBpcmRhX2F0dHJpYl9uYW1lW0lBU19FWFBPUlRfQVRUUklCTkFNRV07CisgIGNoYXIgaXJkYV9jbGFzc19uYW1lW0lBU19FWFBPUlRfQ0xBU1NOQU1FXTsKKyAgY2hhciBpcmRhX2F0dHJpYl9uYW1lW0lBU19FWFBPUlRfQVRUUklCTkFNRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpcmRhX2F0dHJpYl90eXBlOwotIHVuaW9uIHsKLSB1bnNpZ25lZCBpbnQgaXJkYV9hdHRyaWJfaW50OwotIHN0cnVjdCB7CisgIHVuc2lnbmVkIGludCBpcmRhX2F0dHJpYl90eXBlOworICB1bmlvbiB7CisgICAgdW5zaWduZWQgaW50IGlyZGFfYXR0cmliX2ludDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBsZW47Ci0gX191OCBvY3RldF9zZXFbSUFTX01BWF9PQ1RFVF9TVFJJTkddOwotIH0gaXJkYV9hdHRyaWJfb2N0ZXRfc2VxOwotIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBzaG9ydCBsZW47CisgICAgICBfX3U4IG9jdGV0X3NlcVtJQVNfTUFYX09DVEVUX1NUUklOR107CisgICAgfSBpcmRhX2F0dHJpYl9vY3RldF9zZXE7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsZW47Ci0gX191OCBjaGFyc2V0OwotIF9fdTggc3RyaW5nW0lBU19NQVhfU1RSSU5HXTsKLSB9IGlyZGFfYXR0cmliX3N0cmluZzsKKyAgICAgIF9fdTggbGVuOworICAgICAgX191OCBjaGFyc2V0OworICAgICAgX191OCBzdHJpbmdbSUFTX01BWF9TVFJJTkddOworICAgIH0gaXJkYV9hdHRyaWJfc3RyaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGF0dHJpYnV0ZTsKLSBfX3UzMiBkYWRkcjsKKyAgfSBhdHRyaWJ1dGU7CisgIF9fdTMyIGRhZGRyOwogfTsKICNkZWZpbmUgU0lPQ1NET05HTEUgKFNJT0NERVZQUklWQVRFICsgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNjksMzYgKzE2OSwzNiBAQAogI2RlZmluZSBTSU9DR1FPUyAoU0lPQ0RFVlBSSVZBVEUgKyA5KQogI2RlZmluZSBJUk5BTVNJWiAxNgogc3RydWN0IGlmX2lyZGFfcW9zIHsKLSB1bnNpZ25lZCBsb25nIGJhdWRyYXRlOworICB1bnNpZ25lZCBsb25nIGJhdWRyYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBkYXRhX3NpemU7Ci0gdW5zaWduZWQgc2hvcnQgd2luZG93X3NpemU7Ci0gdW5zaWduZWQgc2hvcnQgbWluX3R1cm5fdGltZTsKLSB1bnNpZ25lZCBzaG9ydCBtYXhfdHVybl90aW1lOworICB1bnNpZ25lZCBzaG9ydCBkYXRhX3NpemU7CisgIHVuc2lnbmVkIHNob3J0IHdpbmRvd19zaXplOworICB1bnNpZ25lZCBzaG9ydCBtaW5fdHVybl90aW1lOworICB1bnNpZ25lZCBzaG9ydCBtYXhfdHVybl90aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGFkZF9ib2ZzOwotIHVuc2lnbmVkIGNoYXIgbGlua19kaXNjOworICB1bnNpZ25lZCBjaGFyIGFkZF9ib2ZzOworICB1bnNpZ25lZCBjaGFyIGxpbmtfZGlzYzsKIH07CiBzdHJ1Y3QgaWZfaXJkYV9saW5lIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkdHI7Ci0gX191OCBydHM7CisgIF9fdTggZHRyOworICBfX3U4IHJ0czsKIH07CiBzdHJ1Y3QgaWZfaXJkYV9yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gY2hhciBpZnJuX25hbWVbSVJOQU1TSVpdOwotIH0gaWZyX2lmcm47Ci0gdW5pb24geworICB1bmlvbiB7CisgICAgY2hhciBpZnJuX25hbWVbSVJOQU1TSVpdOworICB9IGlmcl9pZnJuOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpZl9pcmRhX2xpbmUgaWZydV9saW5lOwotIHN0cnVjdCBpZl9pcmRhX3FvcyBpZnJ1X3FvczsKLSB1bnNpZ25lZCBzaG9ydCBpZnJ1X2ZsYWdzOwotIHVuc2lnbmVkIGludCBpZnJ1X3JlY2VpdmluZzsKKyAgICBzdHJ1Y3QgaWZfaXJkYV9saW5lIGlmcnVfbGluZTsKKyAgICBzdHJ1Y3QgaWZfaXJkYV9xb3MgaWZydV9xb3M7CisgICAgdW5zaWduZWQgc2hvcnQgaWZydV9mbGFnczsKKyAgICB1bnNpZ25lZCBpbnQgaWZydV9yZWNlaXZpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpZnJ1X21vZGU7Ci0gdW5zaWduZWQgaW50IGlmcnVfZG9uZ2xlOwotIH0gaWZyX2lmcnU7CisgICAgdW5zaWduZWQgaW50IGlmcnVfbW9kZTsKKyAgICB1bnNpZ25lZCBpbnQgaWZydV9kb25nbGU7CisgIH0gaWZyX2lmcnU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX2JhdWRyYXRlIGlmcl9pZnJ1LmlmcnVfcW9zLmJhdWRyYXRlCkBAIC0yMTIsMTkgKzIxMiwxOSBAQAogI2RlZmluZSBJUkRBX05MX1ZFUlNJT04gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gaXJkYV9ubF9jb21tYW5kcyB7Ci0gSVJEQV9OTF9DTURfVU5TUEVDLAotIElSREFfTkxfQ01EX1NFVF9NT0RFLAotIElSREFfTkxfQ01EX0dFVF9NT0RFLAorICBJUkRBX05MX0NNRF9VTlNQRUMsCisgIElSREFfTkxfQ01EX1NFVF9NT0RFLAorICBJUkRBX05MX0NNRF9HRVRfTU9ERSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JUkRBX05MX0NNRF9BRlRFUl9MQVNUCisgIF9fSVJEQV9OTF9DTURfQUZURVJfTEFTVAogfTsKICNkZWZpbmUgSVJEQV9OTF9DTURfTUFYIChfX0lSREFfTkxfQ01EX0FGVEVSX0xBU1QgLSAxKQogZW51bSBubDgwMjExX2F0dHJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVJEQV9OTF9BVFRSX1VOU1BFQywKLSBJUkRBX05MX0FUVFJfSUZOQU1FLAotIElSREFfTkxfQVRUUl9NT0RFLAotIF9fSVJEQV9OTF9BVFRSX0FGVEVSX0xBU1QKKyAgSVJEQV9OTF9BVFRSX1VOU1BFQywKKyAgSVJEQV9OTF9BVFRSX0lGTkFNRSwKKyAgSVJEQV9OTF9BVFRSX01PREUsCisgIF9fSVJEQV9OTF9BVFRSX0FGVEVSX0xBU1QKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUkRBX05MX0FUVFJfTUFYIChfX0lSREFfTkxfQVRUUl9BRlRFUl9MQVNUIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuLmgKaW5kZXggMTI5YjJkNC4uNDkwOGYzYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuLmgKQEAgLTIzLDQyICsyMyw0MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVNETl9NQVhfRFJJVkVSUyAzMgogI2RlZmluZSBJU0ROX01BWF9DSEFOTkVMUyA2NAotI2RlZmluZSBJSU9DTkVUQUlGIF9JTygnSScsMSkKLSNkZWZpbmUgSUlPQ05FVERJRiBfSU8oJ0knLDIpCisjZGVmaW5lIElJT0NORVRBSUYgX0lPKCdJJywgMSkKKyNkZWZpbmUgSUlPQ05FVERJRiBfSU8oJ0knLCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVFNDRiBfSU8oJ0knLDMpCi0jZGVmaW5lIElJT0NORVRHQ0YgX0lPKCdJJyw0KQotI2RlZmluZSBJSU9DTkVUQU5NIF9JTygnSScsNSkKLSNkZWZpbmUgSUlPQ05FVEROTSBfSU8oJ0knLDYpCisjZGVmaW5lIElJT0NORVRTQ0YgX0lPKCdJJywgMykKKyNkZWZpbmUgSUlPQ05FVEdDRiBfSU8oJ0knLCA0KQorI2RlZmluZSBJSU9DTkVUQU5NIF9JTygnSScsIDUpCisjZGVmaW5lIElJT0NORVRETk0gX0lPKCdJJywgNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NORVRHTk0gX0lPKCdJJyw3KQotI2RlZmluZSBJSU9DR0VUU0VUIF9JTygnSScsOCkKLSNkZWZpbmUgSUlPQ1NFVFNFVCBfSU8oJ0knLDkpCi0jZGVmaW5lIElJT0NTRVRWRVIgX0lPKCdJJywxMCkKKyNkZWZpbmUgSUlPQ05FVEdOTSBfSU8oJ0knLCA3KQorI2RlZmluZSBJSU9DR0VUU0VUIF9JTygnSScsIDgpCisjZGVmaW5lIElJT0NTRVRTRVQgX0lPKCdJJywgOSkKKyNkZWZpbmUgSUlPQ1NFVFZFUiBfSU8oJ0knLCAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NORVRIVVAgX0lPKCdJJywxMSkKLSNkZWZpbmUgSUlPQ1NFVEdTVCBfSU8oJ0knLDEyKQotI2RlZmluZSBJSU9DU0VUQlJKIF9JTygnSScsMTMpCi0jZGVmaW5lIElJT0NTSUdQUkYgX0lPKCdJJywxNCkKKyNkZWZpbmUgSUlPQ05FVEhVUCBfSU8oJ0knLCAxMSkKKyNkZWZpbmUgSUlPQ1NFVEdTVCBfSU8oJ0knLCAxMikKKyNkZWZpbmUgSUlPQ1NFVEJSSiBfSU8oJ0knLCAxMykKKyNkZWZpbmUgSUlPQ1NJR1BSRiBfSU8oJ0knLCAxNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NHRVRQUkYgX0lPKCdJJywxNSkKLSNkZWZpbmUgSUlPQ1NFVFBSRiBfSU8oJ0knLDE2KQotI2RlZmluZSBJSU9DR0VUTUFQIF9JTygnSScsMTcpCi0jZGVmaW5lIElJT0NTRVRNQVAgX0lPKCdJJywxOCkKKyNkZWZpbmUgSUlPQ0dFVFBSRiBfSU8oJ0knLCAxNSkKKyNkZWZpbmUgSUlPQ1NFVFBSRiBfSU8oJ0knLCAxNikKKyNkZWZpbmUgSUlPQ0dFVE1BUCBfSU8oJ0knLCAxNykKKyNkZWZpbmUgSUlPQ1NFVE1BUCBfSU8oJ0knLCAxOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NORVRBU0wgX0lPKCdJJywxOSkKLSNkZWZpbmUgSUlPQ05FVERJTCBfSU8oJ0knLDIwKQotI2RlZmluZSBJSU9DR0VUQ1BTIF9JTygnSScsMjEpCi0jZGVmaW5lIElJT0NHRVREVlIgX0lPKCdJJywyMikKKyNkZWZpbmUgSUlPQ05FVEFTTCBfSU8oJ0knLCAxOSkKKyNkZWZpbmUgSUlPQ05FVERJTCBfSU8oJ0knLCAyMCkKKyNkZWZpbmUgSUlPQ0dFVENQUyBfSU8oJ0knLCAyMSkKKyNkZWZpbmUgSUlPQ0dFVERWUiBfSU8oJ0knLCAyMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NORVRMQ1IgX0lPKCdJJywyMykKLSNkZWZpbmUgSUlPQ05FVERXUlNFVCBfSU8oJ0knLDI0KQotI2RlZmluZSBJSU9DTkVUQUxOIF9JTygnSScsMzIpCi0jZGVmaW5lIElJT0NORVRETE4gX0lPKCdJJywzMykKKyNkZWZpbmUgSUlPQ05FVExDUiBfSU8oJ0knLCAyMykKKyNkZWZpbmUgSUlPQ05FVERXUlNFVCBfSU8oJ0knLCAyNCkKKyNkZWZpbmUgSUlPQ05FVEFMTiBfSU8oJ0knLCAzMikKKyNkZWZpbmUgSUlPQ05FVERMTiBfSU8oJ0knLCAzMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElJT0NORVRHUE4gX0lPKCdJJywzNCkKLSNkZWZpbmUgSUlPQ0RCR1ZBUiBfSU8oJ0knLDEyNykKLSNkZWZpbmUgSUlPQ0RSVkNUTCBfSU8oJ0knLDEyOCkKKyNkZWZpbmUgSUlPQ05FVEdQTiBfSU8oJ0knLCAzNCkKKyNkZWZpbmUgSUlPQ0RCR1ZBUiBfSU8oJ0knLCAxMjcpCisjZGVmaW5lIElJT0NEUlZDVEwgX0lPKCdJJywgMTI4KQogI2RlZmluZSBTSU9DR0tFRVBQRVJJT0QgKFNJT0NERVZQUklWQVRFICsgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNJT0NTS0VFUFBFUklPRCAoU0lPQ0RFVlBSSVZBVEUgKyAxKQpAQCAtOTgsNDggKzk4LDQ4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTkZfRFYgMHgwMQogdHlwZWRlZiBzdHJ1Y3QgewotIGNoYXIgZHJ2aWRbMjVdOwotIHVuc2lnbmVkIGxvbmcgYXJnOworICBjaGFyIGRydmlkWzI1XTsKKyAgdW5zaWduZWQgbG9uZyBhcmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBpc2RuX2lvY3RsX3N0cnVjdDsKIHR5cGVkZWYgc3RydWN0IHsKLSBjaGFyIG5hbWVbMTBdOwotIGNoYXIgcGhvbmVbSVNETl9NU05MRU5dOworICBjaGFyIG5hbWVbMTBdOworICBjaGFyIHBob25lW0lTRE5fTVNOTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG91dGdvaW5nOworICBpbnQgb3V0Z29pbmc7CiB9IGlzZG5fbmV0X2lvY3RsX3Bob25lOwogdHlwZWRlZiBzdHJ1Y3QgewotIGNoYXIgbmFtZVsxMF07CisgIGNoYXIgbmFtZVsxMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbWFzdGVyWzEwXTsKLSBjaGFyIHNsYXZlWzEwXTsKLSBjaGFyIGVhelsyNTZdOwotIGNoYXIgZHJ2aWRbMjVdOworICBjaGFyIG1hc3RlclsxMF07CisgIGNoYXIgc2xhdmVbMTBdOworICBjaGFyIGVhelsyNTZdOworICBjaGFyIGRydmlkWzI1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG9uaHRpbWU7Ci0gaW50IGNoYXJnZTsKLSBpbnQgbDJfcHJvdG87Ci0gaW50IGwzX3Byb3RvOworICBpbnQgb25odGltZTsKKyAgaW50IGNoYXJnZTsKKyAgaW50IGwyX3Byb3RvOworICBpbnQgbDNfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwX2VuY2FwOwotIGludCBleGNsdXNpdmU7Ci0gaW50IGRpYWxtYXg7Ci0gaW50IHNsYXZlZGVsYXk7CisgIGludCBwX2VuY2FwOworICBpbnQgZXhjbHVzaXZlOworICBpbnQgZGlhbG1heDsKKyAgaW50IHNsYXZlZGVsYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjYmRlbGF5OwotIGludCBjaGFyZ2VodXA7Ci0gaW50IGlodXA7Ci0gaW50IHNlY3VyZTsKKyAgaW50IGNiZGVsYXk7CisgIGludCBjaGFyZ2VodXA7CisgIGludCBpaHVwOworICBpbnQgc2VjdXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2FsbGJhY2s7Ci0gaW50IGNiaHVwOwotIGludCBwcHBiaW5kOwotIGludCBjaGFyZ2VpbnQ7CisgIGludCBjYWxsYmFjazsKKyAgaW50IGNiaHVwOworICBpbnQgcHBwYmluZDsKKyAgaW50IGNoYXJnZWludDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRyaWdnZXJjcHM7Ci0gaW50IGRpYWx0aW1lb3V0OwotIGludCBkaWFsd2FpdDsKLSBpbnQgZGlhbG1vZGU7CisgIGludCB0cmlnZ2VyY3BzOworICBpbnQgZGlhbHRpbWVvdXQ7CisgIGludCBkaWFsd2FpdDsKKyAgaW50IGRpYWxtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gaXNkbl9uZXRfaW9jdGxfY2ZnOwogI2RlZmluZSBJU0ROX05FVF9ESUFMTU9ERV9NQVNLIDB4QzAKQEAgLTE0Nyw1ICsxNDcsNSBAQAogI2RlZmluZSBJU0ROX05FVF9ETV9NQU5VQUwgMHg0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVNETl9ORVRfRE1fQVVUTyAweDgwCi0jZGVmaW5lIElTRE5fTkVUX0RJQUxNT0RFKHgpICgoJih4KSktPmZsYWdzICYgSVNETl9ORVRfRElBTE1PREVfTUFTSykKKyNkZWZpbmUgSVNETl9ORVRfRElBTE1PREUoeCkgKCgmICh4KSktPmZsYWdzICYgSVNETl9ORVRfRElBTE1PREVfTUFTSykKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuL2NhcGljbWQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbi9jYXBpY21kLmgKaW5kZXggYWQ2MDY3OS4uZGQyMTNiMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuL2NhcGljbWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4vY2FwaWNtZC5oCkBAIC0xOSw5ICsxOSw5IEBACiAjaWZuZGVmIF9fQ0FQSUNNRF9IX18KICNkZWZpbmUgX19DQVBJQ01EX0hfXwogI2RlZmluZSBDQVBJX01TR19CQVNFTEVOIDgKLSNkZWZpbmUgQ0FQSV9EQVRBX0IzX1JFUV9MRU4gKENBUElfTVNHX0JBU0VMRU4rNCs0KzIrMisyKQorI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVRX0xFTiAoQ0FQSV9NU0dfQkFTRUxFTiArIDQgKyA0ICsgMiArIDIgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9EQVRBX0IzX1JFU1BfTEVOIChDQVBJX01TR19CQVNFTEVOKzQrMikKKyNkZWZpbmUgQ0FQSV9EQVRBX0IzX1JFU1BfTEVOIChDQVBJX01TR19CQVNFTEVOICsgNCArIDIpCiAjZGVmaW5lIENBUElfQUxFUlQgMHgwMQogI2RlZmluZSBDQVBJX0NPTk5FQ1QgMHgwMgogI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFIDB4MDMKQEAgLTQ2LDcwICs0Niw3MCBAQAogI2RlZmluZSBDQVBJX0lORCAweDgyCiAjZGVmaW5lIENBUElfUkVTUCAweDgzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJQ01EKGNtZCxzdWJjbWQpICgoKGNtZCk8PDgpfChzdWJjbWQpKQotI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfUkVRIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULENBUElfUkVRKQotI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQ09ORiBDQVBJQ01EKENBUElfRElTQ09OTkVDVCxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9JTkQgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1QsQ0FQSV9JTkQpCisjZGVmaW5lIENBUElDTUQoY21kLHN1YmNtZCkgKCgoY21kKSA8PCA4KSB8IChzdWJjbWQpKQorI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfUkVRIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULCBDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0NPTkYgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1QsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0lORCBDQVBJQ01EKENBUElfRElTQ09OTkVDVCwgQ0FQSV9JTkQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfUkVTUCBDQVBJQ01EKENBUElfRElTQ09OTkVDVCxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfQUxFUlRfUkVRIENBUElDTUQoQ0FQSV9BTEVSVCxDQVBJX1JFUSkKLSNkZWZpbmUgQ0FQSV9BTEVSVF9DT05GIENBUElDTUQoQ0FQSV9BTEVSVCxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9SRVEgQ0FQSUNNRChDQVBJX0NPTk5FQ1QsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9SRVNQIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfQUxFUlRfUkVRIENBUElDTUQoQ0FQSV9BTEVSVCwgQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQUxFUlRfQ09ORiBDQVBJQ01EKENBUElfQUxFUlQsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVCwgQ0FQSV9SRVEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVCxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1QsQ0FQSV9JTkQpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNULENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9SRVEgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQUNUSVZFLENBUElfUkVRKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVCwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNULCBDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1QsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9SRVEgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQUNUSVZFLCBDQVBJX1JFUSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfQ09OTkVDVF9BQ1RJVkVfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFX0lORCBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsQ0FQSV9JTkQpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9BQ1RJVkVfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX1NFTEVDVF9CX1BST1RPQ09MX1JFUSBDQVBJQ01EKENBUElfU0VMRUNUX0JfUFJPVE9DT0wsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQ09OTkVDVF9BQ1RJVkVfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQUNUSVZFLCBDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNUX0FDVElWRSwgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX1NFTEVDVF9CX1BST1RPQ09MX1JFUSBDQVBJQ01EKENBUElfU0VMRUNUX0JfUFJPVE9DT0wsIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTF9DT05GIENBUElDTUQoQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTCxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfUkVRIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX0FDVElWRSxDQVBJX1JFUSkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX0FDVElWRV9DT05GIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX0FDVElWRSxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX0FDVElWRSxDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTF9DT05GIENBUElDTUQoQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTCwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19BQ1RJVkUsIENBUElfUkVRKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFX0NPTkYgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX0FDVElWRSwgQ0FQSV9JTkQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVF9CMyxDQVBJX1JFUSkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX0NPTkYgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLENBUElfSU5EKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19SRVEgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsIENBUElfUkVRKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVF9CMywgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLCBDQVBJX0lORCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkVfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkUsQ0FQSV9JTkQpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19UOTBfQUNUSVZFX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfVDkwX0FDVElWRSxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfREFUQV9CM19SRVEgQ0FQSUNNRChDQVBJX0RBVEFfQjMsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19UOTBfQUNUSVZFX0lORCBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19UOTBfQUNUSVZFLCBDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkVfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19UOTBfQUNUSVZFLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfREFUQV9CM19SRVEgQ0FQSUNNRChDQVBJX0RBVEFfQjMsIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9EQVRBX0IzX0NPTkYgQ0FQSUNNRChDQVBJX0RBVEFfQjMsQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0RBVEFfQjNfSU5EIENBUElDTUQoQ0FQSV9EQVRBX0IzLENBUElfSU5EKQotI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVTUCBDQVBJQ01EKENBUElfREFUQV9CMyxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19SRVEgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfREFUQV9CM19DT05GIENBUElDTUQoQ0FQSV9EQVRBX0IzLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfREFUQV9CM19JTkQgQ0FQSUNNRChDQVBJX0RBVEFfQjMsIENBUElfSU5EKQorI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVTUCBDQVBJQ01EKENBUElfREFUQV9CMywgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQjNfUkVRIENBUElDTUQoQ0FQSV9ESVNDT05ORUNUX0IzLCBDQVBJX1JFUSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19DT05GIENBUElDTUQoQ0FQSV9ESVNDT05ORUNUX0IzLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX0lORCBDQVBJQ01EKENBUElfRElTQ09OTkVDVF9CMyxDQVBJX0lORCkKLSNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX1JFU1AgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX1JFU0VUX0IzX1JFUSBDQVBJQ01EKENBUElfUkVTRVRfQjMsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19DT05GIENBUElDTUQoQ0FQSV9ESVNDT05ORUNUX0IzLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19JTkQgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsIENBUElfSU5EKQorI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQjNfUkVTUCBDQVBJQ01EKENBUElfRElTQ09OTkVDVF9CMywgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX1JFU0VUX0IzX1JFUSBDQVBJQ01EKENBUElfUkVTRVRfQjMsIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9SRVNFVF9CM19DT05GIENBUElDTUQoQ0FQSV9SRVNFVF9CMyxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfUkVTRVRfQjNfSU5EIENBUElDTUQoQ0FQSV9SRVNFVF9CMyxDQVBJX0lORCkKLSNkZWZpbmUgQ0FQSV9SRVNFVF9CM19SRVNQIENBUElDTUQoQ0FQSV9SRVNFVF9CMyxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfTElTVEVOX1JFUSBDQVBJQ01EKENBUElfTElTVEVOLENBUElfUkVRKQorI2RlZmluZSBDQVBJX1JFU0VUX0IzX0NPTkYgQ0FQSUNNRChDQVBJX1JFU0VUX0IzLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfUkVTRVRfQjNfSU5EIENBUElDTUQoQ0FQSV9SRVNFVF9CMywgQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfUkVTRVRfQjNfUkVTUCBDQVBJQ01EKENBUElfUkVTRVRfQjMsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9MSVNURU5fUkVRIENBUElDTUQoQ0FQSV9MSVNURU4sIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9MSVNURU5fQ09ORiBDQVBJQ01EKENBUElfTElTVEVOLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfUkVRIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsQ0FQSV9SRVEpCi0jZGVmaW5lIENBUElfTUFOVUZBQ1RVUkVSX0NPTkYgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUixDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfTUFOVUZBQ1RVUkVSX0lORCBDQVBJQ01EKENBUElfTUFOVUZBQ1RVUkVSLENBUElfSU5EKQorI2RlZmluZSBDQVBJX0xJU1RFTl9DT05GIENBUElDTUQoQ0FQSV9MSVNURU4sIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfUkVRIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsIENBUElfUkVRKQorI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9DT05GIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfSU5EIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsIENBUElfSU5EKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfUkVTUCBDQVBJQ01EKENBUElfTUFOVUZBQ1RVUkVSLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9GQUNJTElUWV9SRVEgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLENBUElfUkVRKQotI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX0NPTkYgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9GQUNJTElUWV9JTkQgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLENBUElfSU5EKQorI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9SRVNQIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9GQUNJTElUWV9SRVEgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLCBDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9GQUNJTElUWV9DT05GIENBUElDTUQoQ0FQSV9GQUNJTElUWSwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX0lORCBDQVBJQ01EKENBUElfRkFDSUxJVFksIENBUElfSU5EKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9GQUNJTElUWV9SRVNQIENBUElDTUQoQ0FQSV9GQUNJTElUWSxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfSU5GT19SRVEgQ0FQSUNNRChDQVBJX0lORk8sQ0FQSV9SRVEpCi0jZGVmaW5lIENBUElfSU5GT19DT05GIENBUElDTUQoQ0FQSV9JTkZPLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9JTkZPX0lORCBDQVBJQ01EKENBUElfSU5GTyxDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9GQUNJTElUWV9SRVNQIENBUElDTUQoQ0FQSV9GQUNJTElUWSwgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX0lORk9fUkVRIENBUElDTUQoQ0FQSV9JTkZPLCBDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9JTkZPX0NPTkYgQ0FQSUNNRChDQVBJX0lORk8sIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9JTkZPX0lORCBDQVBJQ01EKENBUElfSU5GTywgQ0FQSV9JTkQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0lORk9fUkVTUCBDQVBJQ01EKENBUElfSU5GTyxDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfSU5GT19SRVNQIENBUElDTUQoQ0FQSV9JTkZPLCBDQVBJX1JFU1ApCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbl9wcHAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbl9wcHAuaAppbmRleCBjZTA4ZjJmLi43MTJhMDc2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG5fcHBwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuX3BwcC5oCkBAIC0yMyw1MSArMjMsNDkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENBTExUWVBFX0NBTExCQUNLIDB4NAogI2RlZmluZSBJUFBQX1ZFUlNJT04gIjIuMi4wIgotc3RydWN0IHBwcGNhbGxpbmZvCi17CitzdHJ1Y3QgcHBwY2FsbGluZm8geworICBpbnQgY2FsbHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjYWxsdHlwZTsKLSB1bnNpZ25lZCBjaGFyIGxvY2FsX251bVs2NF07Ci0gdW5zaWduZWQgY2hhciByZW1vdGVfbnVtWzY0XTsKLSBpbnQgY2hhcmdlX3VuaXRzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciBsb2NhbF9udW1bNjRdOworICB1bnNpZ25lZCBjaGFyIHJlbW90ZV9udW1bNjRdOworICBpbnQgY2hhcmdlX3VuaXRzOwogfTsKLSNkZWZpbmUgUFBQSU9DR0NBTExJTkZPIF9JT1dSKCd0JywxMjgsc3RydWN0IHBwcGNhbGxpbmZvKQotI2RlZmluZSBQUFBJT0NCVU5ETEUgX0lPVygndCcsMTI5LGludCkKLSNkZWZpbmUgUFBQSU9DR01QRkxBR1MgX0lPUigndCcsMTMwLGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBQUElPQ1NNUEZMQUdTIF9JT1coJ3QnLDEzMSxpbnQpCi0jZGVmaW5lIFBQUElPQ1NNUE1UVSBfSU9XKCd0JywxMzIsaW50KQotI2RlZmluZSBQUFBJT0NTTVBNUlUgX0lPVygndCcsMTMzLGludCkKLSNkZWZpbmUgUFBQSU9DR0NPTVBSRVNTT1JTIF9JT1IoJ3QnLDEzNCx1bnNpZ25lZCBsb25nIFs4XSkKKyNkZWZpbmUgUFBQSU9DR0NBTExJTkZPIF9JT1dSKCd0JywgMTI4LCBzdHJ1Y3QgcHBwY2FsbGluZm8pCisjZGVmaW5lIFBQUElPQ0JVTkRMRSBfSU9XKCd0JywgMTI5LCBpbnQpCisjZGVmaW5lIFBQUElPQ0dNUEZMQUdTIF9JT1IoJ3QnLCAxMzAsIGludCkKKyNkZWZpbmUgUFBQSU9DU01QRkxBR1MgX0lPVygndCcsIDEzMSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFBQSU9DU0NPTVBSRVNTT1IgX0lPVygndCcsMTM1LGludCkKLSNkZWZpbmUgUFBQSU9DR0lGTkFNRSBfSU9SKCd0JywxMzYsIGNoYXIgW0lGTkFNU0laXSApCisjZGVmaW5lIFBQUElPQ1NNUE1UVSBfSU9XKCd0JywgMTMyLCBpbnQpCisjZGVmaW5lIFBQUElPQ1NNUE1SVSBfSU9XKCd0JywgMTMzLCBpbnQpCisjZGVmaW5lIFBQUElPQ0dDT01QUkVTU09SUyBfSU9SKCd0JywgMTM0LCB1bnNpZ25lZCBsb25nWzhdKQorI2RlZmluZSBQUFBJT0NTQ09NUFJFU1NPUiBfSU9XKCd0JywgMTM1LCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUFBJT0NHSUZOQU1FIF9JT1IoJ3QnLCAxMzYsIGNoYXJbSUZOQU1TSVpdKQogI2RlZmluZSBTQ19NUF9QUk9UIDB4MDAwMDAyMDAKICNkZWZpbmUgU0NfUkVKX01QX1BST1QgMHgwMDAwMDQwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NfT1VUX1NIT1JUX1NFUSAweDAwMDAwODAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ19JTl9TSE9SVF9TRVEgMHgwMDAwNDAwMAogI2RlZmluZSBTQ19ERUNPTVBfT04gMHgwMQogI2RlZmluZSBTQ19DT01QX09OIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDX0RFQ09NUF9ESVNDQVJEIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDX0NPTVBfRElTQ0FSRCAweDA4CiAjZGVmaW5lIFNDX0xJTktfREVDT01QX09OIDB4MTAKICNkZWZpbmUgU0NfTElOS19DT01QX09OIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDX0xJTktfREVDT01QX0RJU0NBUkQgMHg0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NfTElOS19DT01QX0RJU0NBUkQgMHg4MAogI2RlZmluZSBJU0ROX1BQUF9DT01QX01BWF9PUFRJT05TIDE2CiAjZGVmaW5lIElQUFBfQ09NUF9GTEFHX1hNSVQgMHgxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBQX0NPTVBfRkxBR19MSU5LIDB4Mgotc3RydWN0IGlzZG5fcHBwX2NvbXBfZGF0YSB7Ci0gaW50IG51bTsKLSB1bnNpZ25lZCBjaGFyIG9wdGlvbnNbSVNETl9QUFBfQ09NUF9NQVhfT1BUSU9OU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBvcHRsZW47Ci0gaW50IGZsYWdzOworc3RydWN0IGlzZG5fcHBwX2NvbXBfZGF0YSB7CisgIGludCBudW07CisgIHVuc2lnbmVkIGNoYXIgb3B0aW9uc1tJU0ROX1BQUF9DT01QX01BWF9PUFRJT05TXTsKKyAgaW50IG9wdGxlbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBmbGFnczsKIH07CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzb19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc29fZnMuaAppbmRleCAwYjdiNzQyLi5kYzdhMTdkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzb19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNvX2ZzLmgKQEAgLTIxLDEzICsyMSwxMyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvbWFnaWMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElTT0RDTChmcm9tLCB0bykgKHRvIC0gZnJvbSArIDEpCisjZGVmaW5lIElTT0RDTChmcm9tLHRvKSAodG8gLSBmcm9tICsgMSkKIHN0cnVjdCBpc29fdm9sdW1lX2Rlc2NyaXB0b3IgewotIGNoYXIgdHlwZVtJU09EQ0woMSwxKV07Ci0gY2hhciBpZFtJU09EQ0woMiw2KV07CisgIGNoYXIgdHlwZVtJU09EQ0woMSwgMSldOworICBjaGFyIGlkW0lTT0RDTCgyLCA2KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdmVyc2lvbltJU09EQ0woNyw3KV07Ci0gY2hhciBkYXRhW0lTT0RDTCg4LDIwNDgpXTsKKyAgY2hhciB2ZXJzaW9uW0lTT0RDTCg3LCA3KV07CisgIGNoYXIgZGF0YVtJU09EQ0woOCwgMjA0OCldOwogfTsKICNkZWZpbmUgSVNPX1ZEX1BSSU1BUlkgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM2LDE0OCArMzYsMTQ4IEBACiAjZGVmaW5lIElTT19TVEFOREFSRF9JRCAiQ0QwMDEiCiBzdHJ1Y3QgaXNvX3ByaW1hcnlfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdHlwZSBbSVNPRENMICggMSwgMSldOwotIGNoYXIgaWQgW0lTT0RDTCAoIDIsIDYpXTsKLSBjaGFyIHZlcnNpb24gW0lTT0RDTCAoIDcsIDcpXTsKLSBjaGFyIHVudXNlZDEgW0lTT0RDTCAoIDgsIDgpXTsKKyAgY2hhciB0eXBlW0lTT0RDTCgxLCAxKV07CisgIGNoYXIgaWRbSVNPRENMKDIsIDYpXTsKKyAgY2hhciB2ZXJzaW9uW0lTT0RDTCg3LCA3KV07CisgIGNoYXIgdW51c2VkMVtJU09EQ0woOCwgOCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHN5c3RlbV9pZCBbSVNPRENMICggOSwgNDApXTsKLSBjaGFyIHZvbHVtZV9pZCBbSVNPRENMICggNDEsIDcyKV07Ci0gY2hhciB1bnVzZWQyIFtJU09EQ0wgKCA3MywgODApXTsKLSBjaGFyIHZvbHVtZV9zcGFjZV9zaXplIFtJU09EQ0wgKCA4MSwgODgpXTsKKyAgY2hhciBzeXN0ZW1faWRbSVNPRENMKDksIDQwKV07CisgIGNoYXIgdm9sdW1lX2lkW0lTT0RDTCg0MSwgNzIpXTsKKyAgY2hhciB1bnVzZWQyW0lTT0RDTCg3MywgODApXTsKKyAgY2hhciB2b2x1bWVfc3BhY2Vfc2l6ZVtJU09EQ0woODEsIDg4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdW51c2VkMyBbSVNPRENMICggODksIDEyMCldOwotIGNoYXIgdm9sdW1lX3NldF9zaXplIFtJU09EQ0wgKDEyMSwgMTI0KV07Ci0gY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyIFtJU09EQ0wgKDEyNSwgMTI4KV07Ci0gY2hhciBsb2dpY2FsX2Jsb2NrX3NpemUgW0lTT0RDTCAoMTI5LCAxMzIpXTsKKyAgY2hhciB1bnVzZWQzW0lTT0RDTCg4OSwgMTIwKV07CisgIGNoYXIgdm9sdW1lX3NldF9zaXplW0lTT0RDTCgxMjEsIDEyNCldOworICBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXJbSVNPRENMKDEyNSwgMTI4KV07CisgIGNoYXIgbG9naWNhbF9ibG9ja19zaXplW0lTT0RDTCgxMjksIDEzMildOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHBhdGhfdGFibGVfc2l6ZSBbSVNPRENMICgxMzMsIDE0MCldOwotIGNoYXIgdHlwZV9sX3BhdGhfdGFibGUgW0lTT0RDTCAoMTQxLCAxNDQpXTsKLSBjaGFyIG9wdF90eXBlX2xfcGF0aF90YWJsZSBbSVNPRENMICgxNDUsIDE0OCldOwotIGNoYXIgdHlwZV9tX3BhdGhfdGFibGUgW0lTT0RDTCAoMTQ5LCAxNTIpXTsKKyAgY2hhciBwYXRoX3RhYmxlX3NpemVbSVNPRENMKDEzMywgMTQwKV07CisgIGNoYXIgdHlwZV9sX3BhdGhfdGFibGVbSVNPRENMKDE0MSwgMTQ0KV07CisgIGNoYXIgb3B0X3R5cGVfbF9wYXRoX3RhYmxlW0lTT0RDTCgxNDUsIDE0OCldOworICBjaGFyIHR5cGVfbV9wYXRoX3RhYmxlW0lTT0RDTCgxNDksIDE1MildOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG9wdF90eXBlX21fcGF0aF90YWJsZSBbSVNPRENMICgxNTMsIDE1NildOwotIGNoYXIgcm9vdF9kaXJlY3RvcnlfcmVjb3JkIFtJU09EQ0wgKDE1NywgMTkwKV07Ci0gY2hhciB2b2x1bWVfc2V0X2lkIFtJU09EQ0wgKDE5MSwgMzE4KV07Ci0gY2hhciBwdWJsaXNoZXJfaWQgW0lTT0RDTCAoMzE5LCA0NDYpXTsKKyAgY2hhciBvcHRfdHlwZV9tX3BhdGhfdGFibGVbSVNPRENMKDE1MywgMTU2KV07CisgIGNoYXIgcm9vdF9kaXJlY3RvcnlfcmVjb3JkW0lTT0RDTCgxNTcsIDE5MCldOworICBjaGFyIHZvbHVtZV9zZXRfaWRbSVNPRENMKDE5MSwgMzE4KV07CisgIGNoYXIgcHVibGlzaGVyX2lkW0lTT0RDTCgzMTksIDQ0NildOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHByZXBhcmVyX2lkIFtJU09EQ0wgKDQ0NywgNTc0KV07Ci0gY2hhciBhcHBsaWNhdGlvbl9pZCBbSVNPRENMICg1NzUsIDcwMildOwotIGNoYXIgY29weXJpZ2h0X2ZpbGVfaWQgW0lTT0RDTCAoNzAzLCA3MzkpXTsKLSBjaGFyIGFic3RyYWN0X2ZpbGVfaWQgW0lTT0RDTCAoNzQwLCA3NzYpXTsKKyAgY2hhciBwcmVwYXJlcl9pZFtJU09EQ0woNDQ3LCA1NzQpXTsKKyAgY2hhciBhcHBsaWNhdGlvbl9pZFtJU09EQ0woNTc1LCA3MDIpXTsKKyAgY2hhciBjb3B5cmlnaHRfZmlsZV9pZFtJU09EQ0woNzAzLCA3MzkpXTsKKyAgY2hhciBhYnN0cmFjdF9maWxlX2lkW0lTT0RDTCg3NDAsIDc3NildOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGJpYmxpb2dyYXBoaWNfZmlsZV9pZCBbSVNPRENMICg3NzcsIDgxMyldOwotIGNoYXIgY3JlYXRpb25fZGF0ZSBbSVNPRENMICg4MTQsIDgzMCldOwotIGNoYXIgbW9kaWZpY2F0aW9uX2RhdGUgW0lTT0RDTCAoODMxLCA4NDcpXTsKLSBjaGFyIGV4cGlyYXRpb25fZGF0ZSBbSVNPRENMICg4NDgsIDg2NCldOworICBjaGFyIGJpYmxpb2dyYXBoaWNfZmlsZV9pZFtJU09EQ0woNzc3LCA4MTMpXTsKKyAgY2hhciBjcmVhdGlvbl9kYXRlW0lTT0RDTCg4MTQsIDgzMCldOworICBjaGFyIG1vZGlmaWNhdGlvbl9kYXRlW0lTT0RDTCg4MzEsIDg0NyldOworICBjaGFyIGV4cGlyYXRpb25fZGF0ZVtJU09EQ0woODQ4LCA4NjQpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBlZmZlY3RpdmVfZGF0ZSBbSVNPRENMICg4NjUsIDg4MSldOwotIGNoYXIgZmlsZV9zdHJ1Y3R1cmVfdmVyc2lvbiBbSVNPRENMICg4ODIsIDg4MildOwotIGNoYXIgdW51c2VkNCBbSVNPRENMICg4ODMsIDg4MyldOwotIGNoYXIgYXBwbGljYXRpb25fZGF0YSBbSVNPRENMICg4ODQsIDEzOTUpXTsKKyAgY2hhciBlZmZlY3RpdmVfZGF0ZVtJU09EQ0woODY1LCA4ODEpXTsKKyAgY2hhciBmaWxlX3N0cnVjdHVyZV92ZXJzaW9uW0lTT0RDTCg4ODIsIDg4MildOworICBjaGFyIHVudXNlZDRbSVNPRENMKDg4MywgODgzKV07CisgIGNoYXIgYXBwbGljYXRpb25fZGF0YVtJU09EQ0woODg0LCAxMzk1KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdW51c2VkNSBbSVNPRENMICgxMzk2LCAyMDQ4KV07CisgIGNoYXIgdW51c2VkNVtJU09EQ0woMTM5NiwgMjA0OCldOwogfTsKIHN0cnVjdCBpc29fc3VwcGxlbWVudGFyeV9kZXNjcmlwdG9yIHsKLSBjaGFyIHR5cGUgW0lTT0RDTCAoIDEsIDEpXTsKKyAgY2hhciB0eXBlW0lTT0RDTCgxLCAxKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgaWQgW0lTT0RDTCAoIDIsIDYpXTsKLSBjaGFyIHZlcnNpb24gW0lTT0RDTCAoIDcsIDcpXTsKLSBjaGFyIGZsYWdzIFtJU09EQ0wgKCA4LCA4KV07Ci0gY2hhciBzeXN0ZW1faWQgW0lTT0RDTCAoIDksIDQwKV07CisgIGNoYXIgaWRbSVNPRENMKDIsIDYpXTsKKyAgY2hhciB2ZXJzaW9uW0lTT0RDTCg3LCA3KV07CisgIGNoYXIgZmxhZ3NbSVNPRENMKDgsIDgpXTsKKyAgY2hhciBzeXN0ZW1faWRbSVNPRENMKDksIDQwKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdm9sdW1lX2lkIFtJU09EQ0wgKCA0MSwgNzIpXTsKLSBjaGFyIHVudXNlZDIgW0lTT0RDTCAoIDczLCA4MCldOwotIGNoYXIgdm9sdW1lX3NwYWNlX3NpemUgW0lTT0RDTCAoIDgxLCA4OCldOwotIGNoYXIgZXNjYXBlIFtJU09EQ0wgKCA4OSwgMTIwKV07CisgIGNoYXIgdm9sdW1lX2lkW0lTT0RDTCg0MSwgNzIpXTsKKyAgY2hhciB1bnVzZWQyW0lTT0RDTCg3MywgODApXTsKKyAgY2hhciB2b2x1bWVfc3BhY2Vfc2l6ZVtJU09EQ0woODEsIDg4KV07CisgIGNoYXIgZXNjYXBlW0lTT0RDTCg4OSwgMTIwKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdm9sdW1lX3NldF9zaXplIFtJU09EQ0wgKDEyMSwgMTI0KV07Ci0gY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyIFtJU09EQ0wgKDEyNSwgMTI4KV07Ci0gY2hhciBsb2dpY2FsX2Jsb2NrX3NpemUgW0lTT0RDTCAoMTI5LCAxMzIpXTsKLSBjaGFyIHBhdGhfdGFibGVfc2l6ZSBbSVNPRENMICgxMzMsIDE0MCldOworICBjaGFyIHZvbHVtZV9zZXRfc2l6ZVtJU09EQ0woMTIxLCAxMjQpXTsKKyAgY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyW0lTT0RDTCgxMjUsIDEyOCldOworICBjaGFyIGxvZ2ljYWxfYmxvY2tfc2l6ZVtJU09EQ0woMTI5LCAxMzIpXTsKKyAgY2hhciBwYXRoX3RhYmxlX3NpemVbSVNPRENMKDEzMywgMTQwKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdHlwZV9sX3BhdGhfdGFibGUgW0lTT0RDTCAoMTQxLCAxNDQpXTsKLSBjaGFyIG9wdF90eXBlX2xfcGF0aF90YWJsZSBbSVNPRENMICgxNDUsIDE0OCldOwotIGNoYXIgdHlwZV9tX3BhdGhfdGFibGUgW0lTT0RDTCAoMTQ5LCAxNTIpXTsKLSBjaGFyIG9wdF90eXBlX21fcGF0aF90YWJsZSBbSVNPRENMICgxNTMsIDE1NildOworICBjaGFyIHR5cGVfbF9wYXRoX3RhYmxlW0lTT0RDTCgxNDEsIDE0NCldOworICBjaGFyIG9wdF90eXBlX2xfcGF0aF90YWJsZVtJU09EQ0woMTQ1LCAxNDgpXTsKKyAgY2hhciB0eXBlX21fcGF0aF90YWJsZVtJU09EQ0woMTQ5LCAxNTIpXTsKKyAgY2hhciBvcHRfdHlwZV9tX3BhdGhfdGFibGVbSVNPRENMKDE1MywgMTU2KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcm9vdF9kaXJlY3RvcnlfcmVjb3JkIFtJU09EQ0wgKDE1NywgMTkwKV07Ci0gY2hhciB2b2x1bWVfc2V0X2lkIFtJU09EQ0wgKDE5MSwgMzE4KV07Ci0gY2hhciBwdWJsaXNoZXJfaWQgW0lTT0RDTCAoMzE5LCA0NDYpXTsKLSBjaGFyIHByZXBhcmVyX2lkIFtJU09EQ0wgKDQ0NywgNTc0KV07CisgIGNoYXIgcm9vdF9kaXJlY3RvcnlfcmVjb3JkW0lTT0RDTCgxNTcsIDE5MCldOworICBjaGFyIHZvbHVtZV9zZXRfaWRbSVNPRENMKDE5MSwgMzE4KV07CisgIGNoYXIgcHVibGlzaGVyX2lkW0lTT0RDTCgzMTksIDQ0NildOworICBjaGFyIHByZXBhcmVyX2lkW0lTT0RDTCg0NDcsIDU3NCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGFwcGxpY2F0aW9uX2lkIFtJU09EQ0wgKDU3NSwgNzAyKV07Ci0gY2hhciBjb3B5cmlnaHRfZmlsZV9pZCBbSVNPRENMICg3MDMsIDczOSldOwotIGNoYXIgYWJzdHJhY3RfZmlsZV9pZCBbSVNPRENMICg3NDAsIDc3NildOwotIGNoYXIgYmlibGlvZ3JhcGhpY19maWxlX2lkIFtJU09EQ0wgKDc3NywgODEzKV07CisgIGNoYXIgYXBwbGljYXRpb25faWRbSVNPRENMKDU3NSwgNzAyKV07CisgIGNoYXIgY29weXJpZ2h0X2ZpbGVfaWRbSVNPRENMKDcwMywgNzM5KV07CisgIGNoYXIgYWJzdHJhY3RfZmlsZV9pZFtJU09EQ0woNzQwLCA3NzYpXTsKKyAgY2hhciBiaWJsaW9ncmFwaGljX2ZpbGVfaWRbSVNPRENMKDc3NywgODEzKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgY3JlYXRpb25fZGF0ZSBbSVNPRENMICg4MTQsIDgzMCldOwotIGNoYXIgbW9kaWZpY2F0aW9uX2RhdGUgW0lTT0RDTCAoODMxLCA4NDcpXTsKLSBjaGFyIGV4cGlyYXRpb25fZGF0ZSBbSVNPRENMICg4NDgsIDg2NCldOwotIGNoYXIgZWZmZWN0aXZlX2RhdGUgW0lTT0RDTCAoODY1LCA4ODEpXTsKKyAgY2hhciBjcmVhdGlvbl9kYXRlW0lTT0RDTCg4MTQsIDgzMCldOworICBjaGFyIG1vZGlmaWNhdGlvbl9kYXRlW0lTT0RDTCg4MzEsIDg0NyldOworICBjaGFyIGV4cGlyYXRpb25fZGF0ZVtJU09EQ0woODQ4LCA4NjQpXTsKKyAgY2hhciBlZmZlY3RpdmVfZGF0ZVtJU09EQ0woODY1LCA4ODEpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmaWxlX3N0cnVjdHVyZV92ZXJzaW9uIFtJU09EQ0wgKDg4MiwgODgyKV07Ci0gY2hhciB1bnVzZWQ0IFtJU09EQ0wgKDg4MywgODgzKV07Ci0gY2hhciBhcHBsaWNhdGlvbl9kYXRhIFtJU09EQ0wgKDg4NCwgMTM5NSldOwotIGNoYXIgdW51c2VkNSBbSVNPRENMICgxMzk2LCAyMDQ4KV07CisgIGNoYXIgZmlsZV9zdHJ1Y3R1cmVfdmVyc2lvbltJU09EQ0woODgyLCA4ODIpXTsKKyAgY2hhciB1bnVzZWQ0W0lTT0RDTCg4ODMsIDg4MyldOworICBjaGFyIGFwcGxpY2F0aW9uX2RhdGFbSVNPRENMKDg4NCwgMTM5NSldOworICBjaGFyIHVudXNlZDVbSVNPRENMKDEzOTYsIDIwNDgpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBIU19TVEFOREFSRF9JRCAiQ0RST00iCiBzdHJ1Y3QgaHNfdm9sdW1lX2Rlc2NyaXB0b3IgewotIGNoYXIgZm9vIFtJU09EQ0wgKCAxLCA4KV07CisgIGNoYXIgZm9vW0lTT0RDTCgxLCA4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdHlwZSBbSVNPRENMICggOSwgOSldOwotIGNoYXIgaWQgW0lTT0RDTCAoIDEwLCAxNCldOwotIGNoYXIgdmVyc2lvbiBbSVNPRENMICggMTUsIDE1KV07Ci0gY2hhciBkYXRhW0lTT0RDTCgxNiwyMDQ4KV07CisgIGNoYXIgdHlwZVtJU09EQ0woOSwgOSldOworICBjaGFyIGlkW0lTT0RDTCgxMCwgMTQpXTsKKyAgY2hhciB2ZXJzaW9uW0lTT0RDTCgxNSwgMTUpXTsKKyAgY2hhciBkYXRhW0lTT0RDTCgxNiwgMjA0OCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaHNfcHJpbWFyeV9kZXNjcmlwdG9yIHsKLSBjaGFyIGZvbyBbSVNPRENMICggMSwgOCldOwotIGNoYXIgdHlwZSBbSVNPRENMICggOSwgOSldOworICBjaGFyIGZvb1tJU09EQ0woMSwgOCldOworICBjaGFyIHR5cGVbSVNPRENMKDksIDkpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBpZCBbSVNPRENMICggMTAsIDE0KV07Ci0gY2hhciB2ZXJzaW9uIFtJU09EQ0wgKCAxNSwgMTUpXTsKLSBjaGFyIHVudXNlZDEgW0lTT0RDTCAoIDE2LCAxNildOwotIGNoYXIgc3lzdGVtX2lkIFtJU09EQ0wgKCAxNywgNDgpXTsKKyAgY2hhciBpZFtJU09EQ0woMTAsIDE0KV07CisgIGNoYXIgdmVyc2lvbltJU09EQ0woMTUsIDE1KV07CisgIGNoYXIgdW51c2VkMVtJU09EQ0woMTYsIDE2KV07CisgIGNoYXIgc3lzdGVtX2lkW0lTT0RDTCgxNywgNDgpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB2b2x1bWVfaWQgW0lTT0RDTCAoIDQ5LCA4MCldOwotIGNoYXIgdW51c2VkMiBbSVNPRENMICggODEsIDg4KV07Ci0gY2hhciB2b2x1bWVfc3BhY2Vfc2l6ZSBbSVNPRENMICggODksIDk2KV07Ci0gY2hhciB1bnVzZWQzIFtJU09EQ0wgKCA5NywgMTI4KV07CisgIGNoYXIgdm9sdW1lX2lkW0lTT0RDTCg0OSwgODApXTsKKyAgY2hhciB1bnVzZWQyW0lTT0RDTCg4MSwgODgpXTsKKyAgY2hhciB2b2x1bWVfc3BhY2Vfc2l6ZVtJU09EQ0woODksIDk2KV07CisgIGNoYXIgdW51c2VkM1tJU09EQ0woOTcsIDEyOCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHZvbHVtZV9zZXRfc2l6ZSBbSVNPRENMICgxMjksIDEzMildOwotIGNoYXIgdm9sdW1lX3NlcXVlbmNlX251bWJlciBbSVNPRENMICgxMzMsIDEzNildOwotIGNoYXIgbG9naWNhbF9ibG9ja19zaXplIFtJU09EQ0wgKDEzNywgMTQwKV07Ci0gY2hhciBwYXRoX3RhYmxlX3NpemUgW0lTT0RDTCAoMTQxLCAxNDgpXTsKKyAgY2hhciB2b2x1bWVfc2V0X3NpemVbSVNPRENMKDEyOSwgMTMyKV07CisgIGNoYXIgdm9sdW1lX3NlcXVlbmNlX251bWJlcltJU09EQ0woMTMzLCAxMzYpXTsKKyAgY2hhciBsb2dpY2FsX2Jsb2NrX3NpemVbSVNPRENMKDEzNywgMTQwKV07CisgIGNoYXIgcGF0aF90YWJsZV9zaXplW0lTT0RDTCgxNDEsIDE0OCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHR5cGVfbF9wYXRoX3RhYmxlIFtJU09EQ0wgKDE0OSwgMTUyKV07Ci0gY2hhciB1bnVzZWQ0IFtJU09EQ0wgKDE1MywgMTgwKV07Ci0gY2hhciByb290X2RpcmVjdG9yeV9yZWNvcmQgW0lTT0RDTCAoMTgxLCAyMTQpXTsKKyAgY2hhciB0eXBlX2xfcGF0aF90YWJsZVtJU09EQ0woMTQ5LCAxNTIpXTsKKyAgY2hhciB1bnVzZWQ0W0lTT0RDTCgxNTMsIDE4MCldOworICBjaGFyIHJvb3RfZGlyZWN0b3J5X3JlY29yZFtJU09EQ0woMTgxLCAyMTQpXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGlzb19wYXRoX3RhYmxlewotIHVuc2lnbmVkIGNoYXIgbmFtZV9sZW5bMl07Ci0gY2hhciBleHRlbnRbNF07Ci0gY2hhciBwYXJlbnRbMl07CitzdHJ1Y3QgaXNvX3BhdGhfdGFibGUgeworICB1bnNpZ25lZCBjaGFyIG5hbWVfbGVuWzJdOworICBjaGFyIGV4dGVudFs0XTsKKyAgY2hhciBwYXJlbnRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVswXTsKKyAgY2hhciBuYW1lWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpc29fZGlyZWN0b3J5X3JlY29yZCB7Ci0gY2hhciBsZW5ndGggW0lTT0RDTCAoMSwgMSldOworICBjaGFyIGxlbmd0aFtJU09EQ0woMSwgMSldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGV4dF9hdHRyX2xlbmd0aCBbSVNPRENMICgyLCAyKV07Ci0gY2hhciBleHRlbnQgW0lTT0RDTCAoMywgMTApXTsKLSBjaGFyIHNpemUgW0lTT0RDTCAoMTEsIDE4KV07Ci0gY2hhciBkYXRlIFtJU09EQ0wgKDE5LCAyNSldOworICBjaGFyIGV4dF9hdHRyX2xlbmd0aFtJU09EQ0woMiwgMildOworICBjaGFyIGV4dGVudFtJU09EQ0woMywgMTApXTsKKyAgY2hhciBzaXplW0lTT0RDTCgxMSwgMTgpXTsKKyAgY2hhciBkYXRlW0lTT0RDTCgxOSwgMjUpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmbGFncyBbSVNPRENMICgyNiwgMjYpXTsKLSBjaGFyIGZpbGVfdW5pdF9zaXplIFtJU09EQ0wgKDI3LCAyNyldOwotIGNoYXIgaW50ZXJsZWF2ZSBbSVNPRENMICgyOCwgMjgpXTsKLSBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXIgW0lTT0RDTCAoMjksIDMyKV07CisgIGNoYXIgZmxhZ3NbSVNPRENMKDI2LCAyNildOworICBjaGFyIGZpbGVfdW5pdF9zaXplW0lTT0RDTCgyNywgMjcpXTsKKyAgY2hhciBpbnRlcmxlYXZlW0lTT0RDTCgyOCwgMjgpXTsKKyAgY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyW0lTT0RDTCgyOSwgMzIpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBuYW1lX2xlbiBbSVNPRENMICgzMywgMzMpXTsKLSBjaGFyIG5hbWUgWzBdOworICB1bnNpZ25lZCBjaGFyIG5hbWVfbGVuW0lTT0RDTCgzMywgMzMpXTsKKyAgY2hhciBuYW1lWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgSVNPRlNfQkxPQ0tfQklUUyAxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXZ0di5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2LmgKaW5kZXggZDFlNjIwMS4uMzUwYzZiNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2LmgKQEAgLTIzLDIwICsyMywyMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC92aWRlb2RldjIuaD4KIHN0cnVjdCBpdnR2X2RtYV9mcmFtZSB7Ci0gZW51bSB2NGwyX2J1Zl90eXBlIHR5cGU7Ci0gX191MzIgcGl4ZWxmb3JtYXQ7CisgIGVudW0gdjRsMl9idWZfdHlwZSB0eXBlOworICBfX3UzMiBwaXhlbGZvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKnlfc291cmNlOwotIHZvaWQgX191c2VyICp1dl9zb3VyY2U7Ci0gc3RydWN0IHY0bDJfcmVjdCBzcmM7Ci0gc3RydWN0IHY0bDJfcmVjdCBkc3Q7CisgIHZvaWQgX191c2VyICogeV9zb3VyY2U7CisgIHZvaWQgX191c2VyICogdXZfc291cmNlOworICBzdHJ1Y3QgdjRsMl9yZWN0IHNyYzsKKyAgc3RydWN0IHY0bDJfcmVjdCBkc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNyY193aWR0aDsKLSBfX3UzMiBzcmNfaGVpZ2h0OworICBfX3UzMiBzcmNfd2lkdGg7CisgIF9fdTMyIHNyY19oZWlnaHQ7CiB9OwotI2RlZmluZSBJVlRWX0lPQ19ETUFfRlJBTUUgX0lPVyAoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFKzAsIHN0cnVjdCBpdnR2X2RtYV9mcmFtZSkKKyNkZWZpbmUgSVZUVl9JT0NfRE1BX0ZSQU1FIF9JT1coJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMCwgc3RydWN0IGl2dHZfZG1hX2ZyYW1lKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVZUVl9JT0NfUEFTU1RIUk9VR0hfTU9ERSBfSU9XICgnVicsIEJBU0VfVklESU9DX1BSSVZBVEUrMSwgaW50KQorI2RlZmluZSBJVlRWX0lPQ19QQVNTVEhST1VHSF9NT0RFIF9JT1coJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMSwgaW50KQogI2RlZmluZSBJVlRWX1NMSUNFRF9UWVBFX1RFTEVURVhUX0IgVjRMMl9NUEVHX1ZCSV9JVlRWX1RFTEVURVhUX0IKICNkZWZpbmUgSVZUVl9TTElDRURfVFlQRV9DQVBUSU9OXzUyNSBWNEwyX01QRUdfVkJJX0lWVFZfQ0FQVElPTl81MjUKICNkZWZpbmUgSVZUVl9TTElDRURfVFlQRV9XU1NfNjI1IFY0TDJfTVBFR19WQklfSVZUVl9XU1NfNjI1CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHZmYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2ZmIuaAppbmRleCA5MGE1ODgxLi43NDlhZTgzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHZmYi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXZ0dmZiLmgKQEAgLTIyLDEwICsyMiwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGl2dHZmYl9kbWFfZnJhbWUgewotIHZvaWQgX191c2VyICpzb3VyY2U7Ci0gdW5zaWduZWQgbG9uZyBkZXN0X29mZnNldDsKLSBpbnQgY291bnQ7CisgIHZvaWQgX191c2VyICogc291cmNlOworICB1bnNpZ25lZCBsb25nIGRlc3Rfb2Zmc2V0OworICBpbnQgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSVZUVkZCX0lPQ19ETUFfRlJBTUUgX0lPVygnVicsIEJBU0VfVklESU9DX1BSSVZBVEUrMCwgc3RydWN0IGl2dHZmYl9kbWFfZnJhbWUpCisjZGVmaW5lIElWVFZGQl9JT0NfRE1BX0ZSQU1FIF9JT1coJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMCwgc3RydWN0IGl2dHZmYl9kbWFfZnJhbWUpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXhqdXNlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9peGp1c2VyLmgKaW5kZXggY2E1ZGQzOC4uY2IyZWE0NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9peGp1c2VyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9peGp1c2VyLmgKQEAgLTE5LDcgKzE5LDcgQEAKICNpZm5kZWYgX19MSU5VWF9JWEpVU0VSX0gKICNkZWZpbmUgX19MSU5VWF9JWEpVU0VSX0gKICNpbmNsdWRlIDxsaW51eC90ZWxlcGhvbnkuaD4KLSNkZWZpbmUgSVhKQ1RMX0RTUF9SRVNFVCBfSU8gKCdxJywgMHhDMCkKKyNkZWZpbmUgSVhKQ1RMX0RTUF9SRVNFVCBfSU8oJ3EnLCAweEMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVhKQ1RMX1JJTkcgUEhPTkVfUklORwogI2RlZmluZSBJWEpDVExfSE9PS1NUQVRFIFBIT05FX0hPT0tTVEFURQpAQCAtMjgsMTUgKzI4LDE1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJWEpDVExfUklOR19TVEFSVCBQSE9ORV9SSU5HX1NUQVJUCiAjZGVmaW5lIElYSkNUTF9SSU5HX1NUT1AgUEhPTkVfUklOR19TVE9QCi0jZGVmaW5lIElYSkNUTF9DQVJEVFlQRSBfSU9SICgncScsIDB4QzEsIGludCkKLSNkZWZpbmUgSVhKQ1RMX1NFUklBTCBfSU9SICgncScsIDB4QzIsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0NBUkRUWVBFIF9JT1IoJ3EnLCAweEMxLCBpbnQpCisjZGVmaW5lIElYSkNUTF9TRVJJQUwgX0lPUigncScsIDB4QzIsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9EU1BfVFlQRSBfSU9SICgncScsIDB4QzMsIGludCkKLSNkZWZpbmUgSVhKQ1RMX0RTUF9WRVJTSU9OIF9JT1IgKCdxJywgMHhDNCwgaW50KQotI2RlZmluZSBJWEpDVExfVkVSU0lPTiBfSU9SICgncScsIDB4REEsIGNoYXIgKikKLSNkZWZpbmUgSVhKQ1RMX0RTUF9JRExFIF9JTyAoJ3EnLCAweEM1KQorI2RlZmluZSBJWEpDVExfRFNQX1RZUEUgX0lPUigncScsIDB4QzMsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0RTUF9WRVJTSU9OIF9JT1IoJ3EnLCAweEM0LCBpbnQpCisjZGVmaW5lIElYSkNUTF9WRVJTSU9OIF9JT1IoJ3EnLCAweERBLCBjaGFyICopCisjZGVmaW5lIElYSkNUTF9EU1BfSURMRSBfSU8oJ3EnLCAweEM1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX1RFU1RSQU0gX0lPICgncScsIDB4QzYpCisjZGVmaW5lIElYSkNUTF9URVNUUkFNIF9JTygncScsIDB4QzYpCiAjZGVmaW5lIElYSkNUTF9SRUNfQ09ERUMgUEhPTkVfUkVDX0NPREVDCiAjZGVmaW5lIElYSkNUTF9SRUNfU1RBUlQgUEhPTkVfUkVDX1NUQVJUCiAjZGVmaW5lIElYSkNUTF9SRUNfU1RPUCBQSE9ORV9SRUNfU1RPUApAQCAtNDcsMjMxICs0NywzMjEgQEAKICNkZWZpbmUgSVhKQ1RMX1JFQ19MRVZFTCBQSE9ORV9SRUNfTEVWRUwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIGYzMDBfNjQwID0gNCwgZjMwMF81MDAsIGYxMTAwLCBmMzUwLCBmNDAwLCBmNDgwLCBmNDQwLCBmNjIwLCBmMjBfNTAsCi0gZjEzM18yMDAsIGYzMDAsIGYzMDBfNDIwLCBmMzMwLCBmMzAwXzQyNSwgZjMzMF80NDAsIGYzNDAsIGYzNTBfNDAwLAotIGYzNTBfNDQwLCBmMzUwXzQ1MCwgZjM2MCwgZjM4MF80MjAsIGYzOTIsIGY0MDBfNDI1LCBmNDAwXzQ0MCwgZjQwMF80NTAsCisgIGYzMDBfNjQwID0gNCwKKyAgZjMwMF81MDAsCisgIGYxMTAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmNDIwLCBmNDI1LCBmNDI1XzQ1MCwgZjQyNV80NzUsIGY0MzUsIGY0NDBfNDUwLCBmNDQwXzQ4MCwgZjQ0NSwgZjQ1MCwKLSBmNDUyLCBmNDc1LCBmNDgwXzYyMCwgZjQ5NCwgZjUwMCwgZjUyMCwgZjUyMywgZjUyNSwgZjU0MF82NjAsIGY1ODcsCi0gZjU5MCwgZjYwMCwgZjY2MCwgZjcwMCwgZjc0MCwgZjc1MCwgZjc1MF8xNDUwLCBmNzcwLCBmODAwLCBmODE2LCBmODUwLAotIGY4NTdfMTY0NSwgZjkwMCwgZjkwMF8xMzAwLCBmOTM1XzEyMTUsIGY5NDFfMTQ3NywgZjk0MiwgZjk1MCwgZjk1MF8xNDAwLAorICBmMzUwLAorICBmNDAwLAorICBmNDgwLAorICBmNDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmOTc1LCBmMTAwMCwgZjEwMjAsIGYxMDUwLCBmMTEwMF8xNzUwLCBmMTE0MCwgZjEyMDAsIGYxMjA5LCBmMTMzMCwgZjEzMzYsCi0gbGYxMzY2LCBmMTM4MCwgZjE0MDAsIGYxNDc3LCBmMTYwMCwgZjE2MzNfMTYzOCwgZjE4MDAsIGYxODYwCisgIGY2MjAsCisgIGYyMF81MCwKKyAgZjEzM18yMDAsCisgIGYzMDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmMzAwXzQyMCwKKyAgZjMzMCwKKyAgZjMwMF80MjUsCisgIGYzMzBfNDQwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjM0MCwKKyAgZjM1MF80MDAsCisgIGYzNTBfNDQwLAorICBmMzUwXzQ1MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGYzNjAsCisgIGYzODBfNDIwLAorICBmMzkyLAorICBmNDAwXzQyNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY0MDBfNDQwLAorICBmNDAwXzQ1MCwKKyAgZjQyMCwKKyAgZjQyNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY0MjVfNDUwLAorICBmNDI1XzQ3NSwKKyAgZjQzNSwKKyAgZjQ0MF80NTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmNDQwXzQ4MCwKKyAgZjQ0NSwKKyAgZjQ1MCwKKyAgZjQ1MiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY0NzUsCisgIGY0ODBfNjIwLAorICBmNDk0LAorICBmNTAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjUyMCwKKyAgZjUyMywKKyAgZjUyNSwKKyAgZjU0MF82NjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmNTg3LAorICBmNTkwLAorICBmNjAwLAorICBmNjYwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjcwMCwKKyAgZjc0MCwKKyAgZjc1MCwKKyAgZjc1MF8xNDUwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjc3MCwKKyAgZjgwMCwKKyAgZjgxNiwKKyAgZjg1MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY4NTdfMTY0NSwKKyAgZjkwMCwKKyAgZjkwMF8xMzAwLAorICBmOTM1XzEyMTUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmOTQxXzE0NzcsCisgIGY5NDIsCisgIGY5NTAsCisgIGY5NTBfMTQwMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY5NzUsCisgIGYxMDAwLAorICBmMTAyMCwKKyAgZjEwNTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmMTEwMF8xNzUwLAorICBmMTE0MCwKKyAgZjEyMDAsCisgIGYxMjA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjEzMzAsCisgIGYxMzM2LAorICBsZjEzNjYsCisgIGYxMzgwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjE0MDAsCisgIGYxNDc3LAorICBmMTYwMCwKKyAgZjE2MzNfMTYzOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGYxODAwLAorICBmMTg2MAogfSBJWEpfRklMVEVSX0ZSRVE7CiB0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmaWx0ZXI7Ci0gSVhKX0ZJTFRFUl9GUkVRIGZyZXE7Ci0gY2hhciBlbmFibGU7CisgIHVuc2lnbmVkIGludCBmaWx0ZXI7CisgIElYSl9GSUxURVJfRlJFUSBmcmVxOworICBjaGFyIGVuYWJsZTsKIH0gSVhKX0ZJTFRFUjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gY2hhciBlbmFibGU7Ci0gY2hhciBlbl9maWx0ZXI7Ci0gdW5zaWduZWQgaW50IGZpbHRlcjsKKyAgY2hhciBlbmFibGU7CisgIGNoYXIgZW5fZmlsdGVyOworICB1bnNpZ25lZCBpbnQgZmlsdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgb24xOwotIHVuc2lnbmVkIGludCBvZmYxOwotIHVuc2lnbmVkIGludCBvbjI7Ci0gdW5zaWduZWQgaW50IG9mZjI7CisgIHVuc2lnbmVkIGludCBvbjE7CisgIHVuc2lnbmVkIGludCBvZmYxOworICB1bnNpZ25lZCBpbnQgb24yOworICB1bnNpZ25lZCBpbnQgb2ZmMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG9uMzsKLSB1bnNpZ25lZCBpbnQgb2ZmMzsKKyAgdW5zaWduZWQgaW50IG9uMzsKKyAgdW5zaWduZWQgaW50IG9mZjM7CiB9IElYSl9GSUxURVJfQ0FERU5DRTsKLSNkZWZpbmUgSVhKQ1RMX1NFVF9GSUxURVIgX0lPVyAoJ3EnLCAweEM3LCBJWEpfRklMVEVSICopCisjZGVmaW5lIElYSkNUTF9TRVRfRklMVEVSIF9JT1coJ3EnLCAweEM3LCBJWEpfRklMVEVSICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfU0VUX0ZJTFRFUl9SQVcgX0lPVyAoJ3EnLCAweERELCBJWEpfRklMVEVSX1JBVyAqKQotI2RlZmluZSBJWEpDVExfR0VUX0ZJTFRFUl9ISVNUIF9JT1cgKCdxJywgMHhDOCwgaW50KQotI2RlZmluZSBJWEpDVExfRklMVEVSX0NBREVOQ0UgX0lPVyAoJ3EnLCAweEQ2LCBJWEpfRklMVEVSX0NBREVOQ0UgKikKLSNkZWZpbmUgSVhKQ1RMX1BMQVlfQ0lEIF9JTyAoJ3EnLCAweEQ3KQorI2RlZmluZSBJWEpDVExfU0VUX0ZJTFRFUl9SQVcgX0lPVygncScsIDB4REQsIElYSl9GSUxURVJfUkFXICopCisjZGVmaW5lIElYSkNUTF9HRVRfRklMVEVSX0hJU1QgX0lPVygncScsIDB4QzgsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0ZJTFRFUl9DQURFTkNFIF9JT1coJ3EnLCAweEQ2LCBJWEpfRklMVEVSX0NBREVOQ0UgKikKKyNkZWZpbmUgSVhKQ1RMX1BMQVlfQ0lEIF9JTygncScsIDB4RDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBoejIwID0gMHg3ZmZhLAotIGh6NTAgPSAweDdmZTUsCi0gaHoxMzMgPSAweDdmNGMsCisgIGh6MjAgPSAweDdmZmEsCisgIGh6NTAgPSAweDdmZTUsCisgIGh6MTMzID0gMHg3ZjRjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejIwMCA9IDB4N2U2YiwKLSBoejI2MSA9IDB4N2Q1MCwKLSBoejI3NyA9IDB4N2NmYSwKLSBoejI5MyA9IDB4N2M5ZiwKKyAgaHoyMDAgPSAweDdlNmIsCisgIGh6MjYxID0gMHg3ZDUwLAorICBoejI3NyA9IDB4N2NmYSwKKyAgaHoyOTMgPSAweDdjOWYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MzAwID0gMHg3Yzc1LAotIGh6MzExID0gMHg3YzMyLAotIGh6MzI5ID0gMHg3YmJmLAotIGh6MzMwID0gMHg3YmI4LAorICBoejMwMCA9IDB4N2M3NSwKKyAgaHozMTEgPSAweDdjMzIsCisgIGh6MzI5ID0gMHg3YmJmLAorICBoejMzMCA9IDB4N2JiOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHozNDAgPSAweDdiNzUsCi0gaHozNDkgPSAweDdiMzcsCi0gaHozNTAgPSAweDdiMzAsCi0gaHozNjAgPSAweDdhZTksCisgIGh6MzQwID0gMHg3Yjc1LAorICBoejM0OSA9IDB4N2IzNywKKyAgaHozNTAgPSAweDdiMzAsCisgIGh6MzYwID0gMHg3YWU5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejM2OSA9IDB4N2FhOCwKLSBoejM4MCA9IDB4N2E1NiwKLSBoejM5MiA9IDB4NzlmYSwKLSBoejQwMCA9IDB4NzliYiwKKyAgaHozNjkgPSAweDdhYTgsCisgIGh6MzgwID0gMHg3YTU2LAorICBoejM5MiA9IDB4NzlmYSwKKyAgaHo0MDAgPSAweDc5YmIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NDE1ID0gMHg3OTQxLAotIGh6NDIwID0gMHg3OTE4LAotIGh6NDI1ID0gMHg3OGVlLAotIGh6NDM1ID0gMHg3ODk5LAorICBoejQxNSA9IDB4Nzk0MSwKKyAgaHo0MjAgPSAweDc5MTgsCisgIGh6NDI1ID0gMHg3OGVlLAorICBoejQzNSA9IDB4Nzg5OSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo0NDAgPSAweDc4NmQsCi0gaHo0NDUgPSAweDc4NDIsCi0gaHo0NTAgPSAweDc4MTUsCi0gaHo0NTIgPSAweDc4MDMsCisgIGh6NDQwID0gMHg3ODZkLAorICBoejQ0NSA9IDB4Nzg0MiwKKyAgaHo0NTAgPSAweDc4MTUsCisgIGh6NDUyID0gMHg3ODAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejQ2NiA9IDB4Nzc4NCwKLSBoejQ3NSA9IDB4NzczMSwKLSBoejQ4MCA9IDB4NzcwMSwKLSBoejQ5MyA9IDB4NzY4NSwKKyAgaHo0NjYgPSAweDc3ODQsCisgIGh6NDc1ID0gMHg3NzMxLAorICBoejQ4MCA9IDB4NzcwMSwKKyAgaHo0OTMgPSAweDc2ODUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NDk0ID0gMHg3NjdiLAotIGh6NTAwID0gMHg3NjQwLAotIGh6NTIwID0gMHg3NTc4LAotIGh6NTIzID0gMHg3NTU5LAorICBoejQ5NCA9IDB4NzY3YiwKKyAgaHo1MDAgPSAweDc2NDAsCisgIGh6NTIwID0gMHg3NTc4LAorICBoejUyMyA9IDB4NzU1OSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo1MjUgPSAweDc1NDQsCi0gaHo1NDAgPSAweDc0YTcsCi0gaHo1NTQgPSAweDc0MTEsCi0gaHo1ODcgPSAweDcyYTEsCisgIGh6NTI1ID0gMHg3NTQ0LAorICBoejU0MCA9IDB4NzRhNywKKyAgaHo1NTQgPSAweDc0MTEsCisgIGh6NTg3ID0gMHg3MmExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejU5MCA9IDB4NzI3ZiwKLSBoejYwMCA9IDB4NzIwYiwKLSBoejYyMCA9IDB4NzExZSwKLSBoejYyMiA9IDB4NzEwNiwKKyAgaHo1OTAgPSAweDcyN2YsCisgIGh6NjAwID0gMHg3MjBiLAorICBoejYyMCA9IDB4NzExZSwKKyAgaHo2MjIgPSAweDcxMDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NjU5ID0gMHg2ZjNiLAotIGh6NjYwID0gMHg2ZjJlLAotIGh6Njk4ID0gMHg2ZDNkLAotIGh6NzAwID0gMHg2ZDIyLAorICBoejY1OSA9IDB4NmYzYiwKKyAgaHo2NjAgPSAweDZmMmUsCisgIGh6Njk4ID0gMHg2ZDNkLAorICBoejcwMCA9IDB4NmQyMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo3MzkgPSAweDZiMDksCi0gaHo3NDAgPSAweDZhZmEsCi0gaHo3NTAgPSAweDZhNmMsCi0gaHo3NzAgPSAweDY5NGIsCisgIGh6NzM5ID0gMHg2YjA5LAorICBoejc0MCA9IDB4NmFmYSwKKyAgaHo3NTAgPSAweDZhNmMsCisgIGh6NzcwID0gMHg2OTRiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejc4MyA9IDB4Njg4YiwKLSBoejgwMCA9IDB4Njc4ZCwKLSBoejgxNiA9IDB4NjY5OCwKLSBoejgzMCA9IDB4NjViZiwKKyAgaHo3ODMgPSAweDY4OGIsCisgIGh6ODAwID0gMHg2NzhkLAorICBoejgxNiA9IDB4NjY5OCwKKyAgaHo4MzAgPSAweDY1YmYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6ODUwID0gMHg2NDg0LAotIGh6ODU3ID0gMHg2NDE0LAotIGh6ODgwID0gMHg2MjlmLAotIGh6OTAwID0gMHg2MTU0LAorICBoejg1MCA9IDB4NjQ4NCwKKyAgaHo4NTcgPSAweDY0MTQsCisgIGh6ODgwID0gMHg2MjlmLAorICBoejkwMCA9IDB4NjE1NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo5MzIgPSAweDVmMzUsCi0gaHo5MzUgPSAweDVmMDEsCi0gaHo5NDEgPSAweDVlOWEsCi0gaHo5NDIgPSAweDVlODgsCisgIGh6OTMyID0gMHg1ZjM1LAorICBoejkzNSA9IDB4NWYwMSwKKyAgaHo5NDEgPSAweDVlOWEsCisgIGh6OTQyID0gMHg1ZTg4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejk1MCA9IDB4NWRmZCwKLSBoejk3NSA9IDB4NWM0NCwKLSBoejEwMDAgPSAweDVhODEsCi0gaHoxMDIwID0gMHg1OTEyLAorICBoejk1MCA9IDB4NWRmZCwKKyAgaHo5NzUgPSAweDVjNDQsCisgIGh6MTAwMCA9IDB4NWE4MSwKKyAgaHoxMDIwID0gMHg1OTEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejEwNTAgPSAweDU2ZTIsCi0gaHoxMTAwID0gMHg1MzIwLAotIGh6MTE0MCA9IDB4NTAwNywKLSBoejEyMDAgPSAweDRiM2IsCisgIGh6MTA1MCA9IDB4NTZlMiwKKyAgaHoxMTAwID0gMHg1MzIwLAorICBoejExNDAgPSAweDUwMDcsCisgIGh6MTIwMCA9IDB4NGIzYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHoxMjA5ID0gMHg0YTgwLAotIGh6MTIxNSA9IDB4NGEwMiwKLSBoejEyNTAgPSAweDQ3MWMsCi0gaHoxMzAwID0gMHg0MmUwLAorICBoejEyMDkgPSAweDRhODAsCisgIGh6MTIxNSA9IDB4NGEwMiwKKyAgaHoxMjUwID0gMHg0NzFjLAorICBoejEzMDAgPSAweDQyZTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MTMzMCA9IDB4NDA0OSwKLSBoejEzMzYgPSAweDNmYzQsCi0gaHoxMzY2ID0gMHgzZDIyLAotIGh6MTM4MCA9IDB4M2JlNCwKKyAgaHoxMzMwID0gMHg0MDQ5LAorICBoejEzMzYgPSAweDNmYzQsCisgIGh6MTM2NiA9IDB4M2QyMiwKKyAgaHoxMzgwID0gMHgzYmU0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejE0MDAgPSAweDNhMWIsCi0gaHoxNDUwID0gMHgzNTk2LAotIGh6MTQ3NyA9IDB4MzMxYywKLSBoejE1MDAgPSAweDMwZmIsCisgIGh6MTQwMCA9IDB4M2ExYiwKKyAgaHoxNDUwID0gMHgzNTk2LAorICBoejE0NzcgPSAweDMzMWMsCisgIGh6MTUwMCA9IDB4MzBmYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHoxNjAwID0gMHgyNzhkLAotIGh6MTYzMyA9IDB4MjQ2MiwKLSBoejE2MzggPSAweDIzZTcsCi0gaHoxNjQ1ID0gMHgyMzNhLAorICBoejE2MDAgPSAweDI3OGQsCisgIGh6MTYzMyA9IDB4MjQ2MiwKKyAgaHoxNjM4ID0gMHgyM2U3LAorICBoejE2NDUgPSAweDIzM2EsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MTc1MCA9IDB4MThmOCwKLSBoejE4MDAgPSAweDE0MDUsCi0gaHoxODYwID0gMHhlMGIsCi0gaHoyMTAwID0gMHhmNWY2LAorICBoejE3NTAgPSAweDE4ZjgsCisgIGh6MTgwMCA9IDB4MTQwNSwKKyAgaHoxODYwID0gMHhlMGIsCisgIGh6MjEwMCA9IDB4ZjVmNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHoyMTMwID0gMHhmMmY1LAotIGh6MjQ1MCA9IDB4ZDNiMywKLSBoejI3NTAgPSAweGI4ZTQKKyAgaHoyMTMwID0gMHhmMmY1LAorICBoejI0NTAgPSAweGQzYjMsCisgIGh6Mjc1MCA9IDB4YjhlNAogfSBJWEpfRlJFUTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIEMxID0gaHoyNjEsCi0gQ1MxID0gaHoyNzcsCi0gRDEgPSBoejI5MywKKyAgQzEgPSBoejI2MSwKKyAgQ1MxID0gaHoyNzcsCisgIEQxID0gaHoyOTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERTMSA9IGh6MzExLAotIEUxID0gaHozMjksCi0gRjEgPSBoejM0OSwKLSBGUzEgPSBoejM2OSwKKyAgRFMxID0gaHozMTEsCisgIEUxID0gaHozMjksCisgIEYxID0gaHozNDksCisgIEZTMSA9IGh6MzY5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHMSA9IGh6MzkyLAotIEdTMSA9IGh6NDE1LAotIEExID0gaHo0NDAsCi0gQVMxID0gaHo0NjYsCisgIEcxID0gaHozOTIsCisgIEdTMSA9IGh6NDE1LAorICBBMSA9IGh6NDQwLAorICBBUzEgPSBoejQ2NiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQjEgPSBoejQ5MywKLSBDMiA9IGh6NTIzLAotIENTMiA9IGh6NTU0LAotIEQyID0gaHo1ODcsCisgIEIxID0gaHo0OTMsCisgIEMyID0gaHo1MjMsCisgIENTMiA9IGh6NTU0LAorICBEMiA9IGh6NTg3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEUzIgPSBoejYyMiwKLSBFMiA9IGh6NjU5LAotIEYyID0gaHo2OTgsCi0gRlMyID0gaHo3MzksCisgIERTMiA9IGh6NjIyLAorICBFMiA9IGh6NjU5LAorICBGMiA9IGh6Njk4LAorICBGUzIgPSBoejczOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRzIgPSBoejc4MywKLSBHUzIgPSBoejgzMCwKLSBBMiA9IGh6ODgwLAotIEFTMiA9IGh6OTMyLAorICBHMiA9IGh6NzgzLAorICBHUzIgPSBoejgzMCwKKyAgQTIgPSBoejg4MCwKKyAgQVMyID0gaHo5MzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBJWEpfTk9URTsKIHR5cGVkZWYgc3RydWN0IHsKLSBpbnQgdG9uZV9pbmRleDsKLSBpbnQgZnJlcTA7CisgIGludCB0b25lX2luZGV4OworICBpbnQgZnJlcTA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBnYWluMDsKLSBpbnQgZnJlcTE7Ci0gaW50IGdhaW4xOworICBpbnQgZ2FpbjA7CisgIGludCBmcmVxMTsKKyAgaW50IGdhaW4xOwogfSBJWEpfVE9ORTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9JTklUX1RPTkUgX0lPVyAoJ3EnLCAweEM5LCBJWEpfVE9ORSAqKQorI2RlZmluZSBJWEpDVExfSU5JVF9UT05FIF9JT1coJ3EnLCAweEM5LCBJWEpfVE9ORSAqKQogdHlwZWRlZiBzdHJ1Y3QgewotIGludCBpbmRleDsKLSBpbnQgdG9uZV9vbl90aW1lOworICBpbnQgaW5kZXg7CisgIGludCB0b25lX29uX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0b25lX29mZl90aW1lOwotIGludCBmcmVxMDsKLSBpbnQgZ2FpbjA7Ci0gaW50IGZyZXExOworICBpbnQgdG9uZV9vZmZfdGltZTsKKyAgaW50IGZyZXEwOworICBpbnQgZ2FpbjA7CisgIGludCBmcmVxMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGdhaW4xOworICBpbnQgZ2FpbjE7CiB9IElYSl9DQURFTkNFX0VMRU1FTlQ7CiB0eXBlZGVmIGVudW0gewotIFBMQVlfT05DRSwKKyAgUExBWV9PTkNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRVBFQVRfTEFTVF9FTEVNRU5ULAotIFJFUEVBVF9BTEwKKyAgUkVQRUFUX0xBU1RfRUxFTUVOVCwKKyAgUkVQRUFUX0FMTAogfSBJWEpfQ0FERU5DRV9URVJNOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZWxlbWVudHNfdXNlZDsKLSBJWEpfQ0FERU5DRV9URVJNIHRlcm1pbmF0aW9uOwotIElYSl9DQURFTkNFX0VMRU1FTlQgX191c2VyICpjZTsKKyAgaW50IGVsZW1lbnRzX3VzZWQ7CisgIElYSl9DQURFTkNFX1RFUk0gdGVybWluYXRpb247CisgIElYSl9DQURFTkNFX0VMRU1FTlQgX191c2VyICogY2U7CiB9IElYSl9DQURFTkNFOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX1RPTkVfQ0FERU5DRSBfSU9XICgncScsIDB4Q0EsIElYSl9DQURFTkNFICopCisjZGVmaW5lIElYSkNUTF9UT05FX0NBREVOQ0UgX0lPVygncScsIDB4Q0EsIElYSl9DQURFTkNFICopCiAjZGVmaW5lIElYSkNUTF9QTEFZX0NPREVDIFBIT05FX1BMQVlfQ09ERUMKICNkZWZpbmUgSVhKQ1RMX1BMQVlfU1RBUlQgUEhPTkVfUExBWV9TVEFSVAogI2RlZmluZSBJWEpDVExfUExBWV9TVE9QIFBIT05FX1BMQVlfU1RPUApAQCAtMjc5LDEwICszNjksMTAgQEAKICNkZWZpbmUgSVhKQ1RMX1BMQVlfREVQVEggUEhPTkVfUExBWV9ERVBUSAogI2RlZmluZSBJWEpDVExfUExBWV9WT0xVTUUgUEhPTkVfUExBWV9WT0xVTUUKICNkZWZpbmUgSVhKQ1RMX1BMQVlfTEVWRUwgUEhPTkVfUExBWV9MRVZFTAotI2RlZmluZSBJWEpDVExfQUVDX1NUQVJUIF9JT1cgKCdxJywgMHhDQiwgaW50KQorI2RlZmluZSBJWEpDVExfQUVDX1NUQVJUIF9JT1coJ3EnLCAweENCLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfQUVDX1NUT1AgX0lPICgncScsIDB4Q0MpCi0jZGVmaW5lIElYSkNUTF9BRUNfR0VUX0xFVkVMIF9JTyAoJ3EnLCAweENEKQorI2RlZmluZSBJWEpDVExfQUVDX1NUT1AgX0lPKCdxJywgMHhDQykKKyNkZWZpbmUgSVhKQ1RMX0FFQ19HRVRfTEVWRUwgX0lPKCdxJywgMHhDRCkKICNkZWZpbmUgQUVDX09GRiAwCiAjZGVmaW5lIEFFQ19MT1cgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTMwOSw5ICszOTksOSBAQAogI2RlZmluZSBJWEpDVExfUklOR0JBQ0sgUEhPTkVfUklOR0JBQ0sKICNkZWZpbmUgSVhKQ1RMX0RJQUxUT05FIFBIT05FX0RJQUxUT05FCiAjZGVmaW5lIElYSkNUTF9DUFRfU1RPUCBQSE9ORV9DUFRfU1RPUAotI2RlZmluZSBJWEpDVExfU0VUX0xFRCBfSU9XICgncScsIDB4Q0UsIGludCkKKyNkZWZpbmUgSVhKQ1RMX1NFVF9MRUQgX0lPVygncScsIDB4Q0UsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9NSVhFUiBfSU9XICgncScsIDB4Q0YsIGludCkKKyNkZWZpbmUgSVhKQ1RMX01JWEVSIF9JT1coJ3EnLCAweENGLCBpbnQpCiAjZGVmaW5lIE1JWEVSX01BU1RFUl9MIDB4MDAwMAogI2RlZmluZSBNSVhFUl9NQVNURVJfUiAweDAxMDAKICNkZWZpbmUgQVRUMDBEQiAweDAwCkBAIC00MTcsNyArNTA3LDcgQEAKICNkZWZpbmUgUE9UU19BVFRfMjhEQiAweDA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQT1RTX01VVEUgMHg4MAotI2RlZmluZSBJWEpDVExfREFBX0NPRUZGX1NFVCBfSU9XICgncScsIDB4RDAsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0RBQV9DT0VGRl9TRVQgX0lPVygncScsIDB4RDAsIGludCkKICNkZWZpbmUgREFBX1VTIDEKICNkZWZpbmUgREFBX1VLIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00MjYsNyArNTE2LDcgQEAKICNkZWZpbmUgREFBX0FVU1RSQUxJQSA1CiAjZGVmaW5lIERBQV9KQVBBTiA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfUE9SVCBfSU9XICgncScsIDB4RDEsIGludCkKKyNkZWZpbmUgSVhKQ1RMX1BPUlQgX0lPVygncScsIDB4RDEsIGludCkKICNkZWZpbmUgUE9SVF9RVUVSWSAwCiAjZGVmaW5lIFBPUlRfUE9UUyAxCiAjZGVmaW5lIFBPUlRfUFNUTiAyCkBAIC00NDEsNyArNTMxLDcgQEAKICNkZWZpbmUgUFNUTl9PRkZfSE9PSyAyCiAjZGVmaW5lIFBTVE5fUFVMU0VfRElBTCAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfREFBX0FHQUlOIF9JT1cgKCdxJywgMHhEMiwgaW50KQorI2RlZmluZSBJWEpDVExfREFBX0FHQUlOIF9JT1coJ3EnLCAweEQyLCBpbnQpCiAjZGVmaW5lIEFHUlIwMERCIDB4MDAKICNkZWZpbmUgQUdSUjNfNURCIDB4MTAKICNkZWZpbmUgQUdSUjA2REIgMHgzMApAQCAtNDUxLDU1ICs1NDEsNjMgQEAKICNkZWZpbmUgQUdYM181REIgMHgwOAogI2RlZmluZSBBR1hfMl81QiAweDBDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfUFNUTl9MSU5FVEVTVCBfSU8gKCdxJywgMHhEMykKLSNkZWZpbmUgSVhKQ1RMX0NJRCBfSU9SICgncScsIDB4RDQsIFBIT05FX0NJRCAqKQotI2RlZmluZSBJWEpDVExfVk1XSSBfSU9SICgncScsIDB4RDgsIGludCkKLSNkZWZpbmUgSVhKQ1RMX0NJRENXIF9JT1cgKCdxJywgMHhEOSwgUEhPTkVfQ0lEICopCisjZGVmaW5lIElYSkNUTF9QU1ROX0xJTkVURVNUIF9JTygncScsIDB4RDMpCisjZGVmaW5lIElYSkNUTF9DSUQgX0lPUigncScsIDB4RDQsIFBIT05FX0NJRCAqKQorI2RlZmluZSBJWEpDVExfVk1XSSBfSU9SKCdxJywgMHhEOCwgaW50KQorI2RlZmluZSBJWEpDVExfQ0lEQ1cgX0lPVygncScsIDB4RDksIFBIT05FX0NJRCAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVhKQ1RMX1dJTktfRFVSQVRJT04gUEhPTkVfV0lOS19EVVJBVElPTgotI2RlZmluZSBJWEpDVExfUE9UU19QU1ROIF9JT1cgKCdxJywgMHhENSwgaW50KQotI2RlZmluZSBJWEpDVExfSFogX0lPVyAoJ3EnLCAweEUwLCBpbnQpCi0jZGVmaW5lIElYSkNUTF9SQVRFIF9JT1cgKCdxJywgMHhFMSwgaW50KQorI2RlZmluZSBJWEpDVExfUE9UU19QU1ROIF9JT1coJ3EnLCAweEQ1LCBpbnQpCisjZGVmaW5lIElYSkNUTF9IWiBfSU9XKCdxJywgMHhFMCwgaW50KQorI2RlZmluZSBJWEpDVExfUkFURSBfSU9XKCdxJywgMHhFMSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX0ZSQU1FU19SRUFEIF9JT1IgKCdxJywgMHhFMiwgdW5zaWduZWQgbG9uZykKLSNkZWZpbmUgSVhKQ1RMX0ZSQU1FU19XUklUVEVOIF9JT1IgKCdxJywgMHhFMywgdW5zaWduZWQgbG9uZykKLSNkZWZpbmUgSVhKQ1RMX1JFQURfV0FJVCBfSU9SICgncScsIDB4RTQsIHVuc2lnbmVkIGxvbmcpCi0jZGVmaW5lIElYSkNUTF9XUklURV9XQUlUIF9JT1IgKCdxJywgMHhFNSwgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgSVhKQ1RMX0ZSQU1FU19SRUFEIF9JT1IoJ3EnLCAweEUyLCB1bnNpZ25lZCBsb25nKQorI2RlZmluZSBJWEpDVExfRlJBTUVTX1dSSVRURU4gX0lPUigncScsIDB4RTMsIHVuc2lnbmVkIGxvbmcpCisjZGVmaW5lIElYSkNUTF9SRUFEX1dBSVQgX0lPUigncScsIDB4RTQsIHVuc2lnbmVkIGxvbmcpCisjZGVmaW5lIElYSkNUTF9XUklURV9XQUlUIF9JT1IoJ3EnLCAweEU1LCB1bnNpZ25lZCBsb25nKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX0RSWUJVRkZFUl9SRUFEIF9JT1IgKCdxJywgMHhFNiwgdW5zaWduZWQgbG9uZykKLSNkZWZpbmUgSVhKQ1RMX0RSWUJVRkZFUl9DTEVBUiBfSU8gKCdxJywgMHhFNykKLSNkZWZpbmUgSVhKQ1RMX0RUTUZfUFJFU0NBTEUgX0lPVyAoJ3EnLCAweEU4LCBpbnQpCisjZGVmaW5lIElYSkNUTF9EUllCVUZGRVJfUkVBRCBfSU9SKCdxJywgMHhFNiwgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgSVhKQ1RMX0RSWUJVRkZFUl9DTEVBUiBfSU8oJ3EnLCAweEU3KQorI2RlZmluZSBJWEpDVExfRFRNRl9QUkVTQ0FMRSBfSU9XKCdxJywgMHhFOCwgaW50KQogdHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0lHX0RUTUZfUkVBRFksCi0gU0lHX0hPT0tTVEFURSwKLSBTSUdfRkxBU0gsCi0gU0lHX1BTVE5fUklORywKKyAgU0lHX0RUTUZfUkVBRFksCisgIFNJR19IT09LU1RBVEUsCisgIFNJR19GTEFTSCwKKyAgU0lHX1BTVE5fUklORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0lHX0NBTExFUl9JRCwKLSBTSUdfUFNUTl9XSU5LLAotIFNJR19GMCwgU0lHX0YxLCBTSUdfRjIsIFNJR19GMywKLSBTSUdfRkMwLCBTSUdfRkMxLCBTSUdfRkMyLCBTSUdfRkMzLAorICBTSUdfQ0FMTEVSX0lELAorICBTSUdfUFNUTl9XSU5LLAorICBTSUdfRjAsCisgIFNJR19GMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0lHX1JFQURfUkVBRFkgPSAzMywKLSBTSUdfV1JJVEVfUkVBRFkgPSAzNAorICBTSUdfRjIsCisgIFNJR19GMywKKyAgU0lHX0ZDMCwKKyAgU0lHX0ZDMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNJR19GQzIsCisgIFNJR19GQzMsCisgIFNJR19SRUFEX1JFQURZID0gMzMsCisgIFNJR19XUklURV9SRUFEWSA9IDM0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBJWEpfU0lHRVZFTlQ7CiB0eXBlZGVmIHN0cnVjdCB7CisgIHVuc2lnbmVkIGludCBldmVudDsKKyAgaW50IHNpZ25hbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGV2ZW50OwotIGludCBzaWduYWw7CiB9IElYSl9TSUdERUY7Ci0jZGVmaW5lIElYSkNUTF9TSUdDVEwgX0lPVyAoJ3EnLCAweEU5LCBJWEpfU0lHREVGICopCisjZGVmaW5lIElYSkNUTF9TSUdDVEwgX0lPVygncScsIDB4RTksIElYSl9TSUdERUYgKikKKyNkZWZpbmUgSVhKQ1RMX1NDX1JYRyBfSU9XKCdxJywgMHhFQSwgaW50KQorI2RlZmluZSBJWEpDVExfU0NfVFhHIF9JT1coJ3EnLCAweEVCLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfU0NfUlhHIF9JT1cgKCdxJywgMHhFQSwgaW50KQotI2RlZmluZSBJWEpDVExfU0NfVFhHIF9JT1cgKCdxJywgMHhFQiwgaW50KQotI2RlZmluZSBJWEpDVExfSU5URVJDT01fU1RBUlQgX0lPVyAoJ3EnLCAweEZELCBpbnQpCi0jZGVmaW5lIElYSkNUTF9JTlRFUkNPTV9TVE9QIF9JT1cgKCdxJywgMHhGRSwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVhKQ1RMX0lOVEVSQ09NX1NUQVJUIF9JT1coJ3EnLCAweEZELCBpbnQpCisjZGVmaW5lIElYSkNUTF9JTlRFUkNPTV9TVE9QIF9JT1coJ3EnLCAweEZFLCBpbnQpCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgaW50IGZpbHRlcjsKLSBjaGFyIGVuYWJsZTsKLSB1bnNpZ25lZCBpbnQgY29lZmZbMTldOworICB1bnNpZ25lZCBpbnQgZmlsdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgY2hhciBlbmFibGU7CisgIHVuc2lnbmVkIGludCBjb2VmZlsxOV07CiB9IElYSl9GSUxURVJfUkFXOwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qZmZzMi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qZmZzMi5oCmluZGV4IGRhM2NlODIuLmI3ZDQxOTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvamZmczIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2pmZnMyLmgKQEAgLTY4LDEzOSArNjgsMTMyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBKRkZTMl9JTk9fRkxBR19VU0VSQ09NUFIgMgogdHlwZWRlZiBzdHJ1Y3QgewotIF9fdTMyIHYzMjsKKyAgX191MzIgdjMyOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBqaW50MzJfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191MzIgbTsKKyAgX191MzIgbTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgam1vZGVfdDsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdjE2OworICBfX3UxNiB2MTY7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGppbnQxNl90Owotc3RydWN0IGpmZnMyX3Vua25vd25fbm9kZQoteworc3RydWN0IGpmZnMyX3Vua25vd25fbm9kZSB7CisgIGppbnQxNl90IG1hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MTZfdCBtYWdpYzsKLSBqaW50MTZfdCBub2RldHlwZTsKLSBqaW50MzJfdCB0b3RsZW47Ci0gamludDMyX3QgaGRyX2NyYzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGppbnQxNl90IG5vZGV0eXBlOworICBqaW50MzJfdCB0b3RsZW47CisgIGppbnQzMl90IGhkcl9jcmM7CiB9Owotc3RydWN0IGpmZnMyX3Jhd19kaXJlbnQKLXsKLSBqaW50MTZfdCBtYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDE2X3Qgbm9kZXR5cGU7Ci0gamludDMyX3QgdG90bGVuOwotIGppbnQzMl90IGhkcl9jcmM7Ci0gamludDMyX3QgcGlubzsKK3N0cnVjdCBqZmZzMl9yYXdfZGlyZW50IHsKKyAgamludDE2X3QgbWFnaWM7CisgIGppbnQxNl90IG5vZGV0eXBlOworICBqaW50MzJfdCB0b3RsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IHZlcnNpb247Ci0gamludDMyX3QgaW5vOwotIGppbnQzMl90IG1jdGltZTsKLSBfX3U4IG5zaXplOworICBqaW50MzJfdCBoZHJfY3JjOworICBqaW50MzJfdCBwaW5vOworICBqaW50MzJfdCB2ZXJzaW9uOworICBqaW50MzJfdCBpbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IHVudXNlZFsyXTsKLSBqaW50MzJfdCBub2RlX2NyYzsKLSBqaW50MzJfdCBuYW1lX2NyYzsKKyAgamludDMyX3QgbWN0aW1lOworICBfX3U4IG5zaXplOworICBfX3U4IHR5cGU7CisgIF9fdTggdW51c2VkWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5hbWVbMF07CisgIGppbnQzMl90IG5vZGVfY3JjOworICBqaW50MzJfdCBuYW1lX2NyYzsKKyAgX191OCBuYW1lWzBdOwogfTsKLXN0cnVjdCBqZmZzMl9yYXdfaW5vZGUKLXsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDE2X3QgbWFnaWM7Ci0gamludDE2X3Qgbm9kZXR5cGU7Ci0gamludDMyX3QgdG90bGVuOwotIGppbnQzMl90IGhkcl9jcmM7CitzdHJ1Y3QgamZmczJfcmF3X2lub2RlIHsKKyAgamludDE2X3QgbWFnaWM7CisgIGppbnQxNl90IG5vZGV0eXBlOworICBqaW50MzJfdCB0b3RsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IGlubzsKLSBqaW50MzJfdCB2ZXJzaW9uOwotIGptb2RlX3QgbW9kZTsKLSBqaW50MTZfdCB1aWQ7CisgIGppbnQzMl90IGhkcl9jcmM7CisgIGppbnQzMl90IGlubzsKKyAgamludDMyX3QgdmVyc2lvbjsKKyAgam1vZGVfdCBtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MTZfdCBnaWQ7Ci0gamludDMyX3QgaXNpemU7Ci0gamludDMyX3QgYXRpbWU7Ci0gamludDMyX3QgbXRpbWU7CisgIGppbnQxNl90IHVpZDsKKyAgamludDE2X3QgZ2lkOworICBqaW50MzJfdCBpc2l6ZTsKKyAgamludDMyX3QgYXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IGN0aW1lOwotIGppbnQzMl90IG9mZnNldDsKLSBqaW50MzJfdCBjc2l6ZTsKLSBqaW50MzJfdCBkc2l6ZTsKKyAgamludDMyX3QgbXRpbWU7CisgIGppbnQzMl90IGN0aW1lOworICBqaW50MzJfdCBvZmZzZXQ7CisgIGppbnQzMl90IGNzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvbXByOwotIF9fdTggdXNlcmNvbXByOwotIGppbnQxNl90IGZsYWdzOwotIGppbnQzMl90IGRhdGFfY3JjOworICBqaW50MzJfdCBkc2l6ZTsKKyAgX191OCBjb21wcjsKKyAgX191OCB1c2VyY29tcHI7CisgIGppbnQxNl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MzJfdCBub2RlX2NyYzsKLSBfX3U4IGRhdGFbMF07CisgIGppbnQzMl90IGRhdGFfY3JjOworICBqaW50MzJfdCBub2RlX2NyYzsKKyAgX191OCBkYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgamZmczJfcmF3X3hhdHRyIHsKKyAgamludDE2X3QgbWFnaWM7CisgIGppbnQxNl90IG5vZGV0eXBlOworICBqaW50MzJfdCB0b3RsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQxNl90IG1hZ2ljOwotIGppbnQxNl90IG5vZGV0eXBlOwotIGppbnQzMl90IHRvdGxlbjsKLSBqaW50MzJfdCBoZHJfY3JjOworICBqaW50MzJfdCBoZHJfY3JjOworICBqaW50MzJfdCB4aWQ7CisgIGppbnQzMl90IHZlcnNpb247CisgIF9fdTggeHByZWZpeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDMyX3QgeGlkOwotIGppbnQzMl90IHZlcnNpb247Ci0gX191OCB4cHJlZml4OwotIF9fdTggbmFtZV9sZW47CisgIF9fdTggbmFtZV9sZW47CisgIGppbnQxNl90IHZhbHVlX2xlbjsKKyAgamludDMyX3QgZGF0YV9jcmM7CisgIGppbnQzMl90IG5vZGVfY3JjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MTZfdCB2YWx1ZV9sZW47Ci0gamludDMyX3QgZGF0YV9jcmM7Ci0gamludDMyX3Qgbm9kZV9jcmM7Ci0gX191OCBkYXRhWzBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBkYXRhWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKLXN0cnVjdCBqZmZzMl9yYXdfeHJlZgotewotIGppbnQxNl90IG1hZ2ljOworc3RydWN0IGpmZnMyX3Jhd194cmVmIHsKKyAgamludDE2X3QgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQxNl90IG5vZGV0eXBlOwotIGppbnQzMl90IHRvdGxlbjsKLSBqaW50MzJfdCBoZHJfY3JjOwotIGppbnQzMl90IGlubzsKKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKKyAgamludDMyX3QgaGRyX2NyYzsKKyAgamludDMyX3QgaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MzJfdCB4aWQ7Ci0gamludDMyX3QgeHNlcW5vOwotIGppbnQzMl90IG5vZGVfY3JjOworICBqaW50MzJfdCB4aWQ7CisgIGppbnQzMl90IHhzZXFubzsKKyAgamludDMyX3Qgbm9kZV9jcmM7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBqZmZzMl9yYXdfc3VtbWFyeQotewotIGppbnQxNl90IG1hZ2ljOwotIGppbnQxNl90IG5vZGV0eXBlOworc3RydWN0IGpmZnMyX3Jhd19zdW1tYXJ5IHsKKyAgamludDE2X3QgbWFnaWM7CisgIGppbnQxNl90IG5vZGV0eXBlOworICBqaW50MzJfdCB0b3RsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IHRvdGxlbjsKLSBqaW50MzJfdCBoZHJfY3JjOwotIGppbnQzMl90IHN1bV9udW07Ci0gamludDMyX3QgY2xuX21rcjsKKyAgamludDMyX3QgaGRyX2NyYzsKKyAgamludDMyX3Qgc3VtX251bTsKKyAgamludDMyX3QgY2xuX21rcjsKKyAgamludDMyX3QgcGFkZGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MzJfdCBwYWRkZWQ7Ci0gamludDMyX3Qgc3VtX2NyYzsKLSBqaW50MzJfdCBub2RlX2NyYzsKLSBqaW50MzJfdCBzdW1bMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBqaW50MzJfdCBzdW1fY3JjOworICBqaW50MzJfdCBub2RlX2NyYzsKKyAgamludDMyX3Qgc3VtWzBdOwogfTsKLXVuaW9uIGpmZnMyX25vZGVfdW5pb24KLXsKLSBzdHJ1Y3QgamZmczJfcmF3X2lub2RlIGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBqZmZzMl9yYXdfZGlyZW50IGQ7Ci0gc3RydWN0IGpmZnMyX3Jhd194YXR0ciB4OwotIHN0cnVjdCBqZmZzMl9yYXdfeHJlZiByOwotIHN0cnVjdCBqZmZzMl9yYXdfc3VtbWFyeSBzOwordW5pb24gamZmczJfbm9kZV91bmlvbiB7CisgIHN0cnVjdCBqZmZzMl9yYXdfaW5vZGUgaTsKKyAgc3RydWN0IGpmZnMyX3Jhd19kaXJlbnQgZDsKKyAgc3RydWN0IGpmZnMyX3Jhd194YXR0ciB4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgamZmczJfdW5rbm93bl9ub2RlIHU7CisgIHN0cnVjdCBqZmZzMl9yYXdfeHJlZiByOworICBzdHJ1Y3QgamZmczJfcmF3X3N1bW1hcnkgczsKKyAgc3RydWN0IGpmZnMyX3Vua25vd25fbm9kZSB1OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiBqZmZzMl9kZXZpY2Vfbm9kZSB7Ci0gamludDE2X3Qgb2xkX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MzJfdCBuZXdfaWQ7CisgIGppbnQxNl90IG9sZF9pZDsKKyAgamludDMyX3QgbmV3X2lkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvam95c3RpY2suaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvam95c3RpY2suaAppbmRleCBhNTJkMzhiLi45OTMzZTY5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2pveXN0aWNrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qb3lzdGljay5oCkBAIC0yNywxMSArMjcsMTEgQEAKICNkZWZpbmUgSlNfRVZFTlRfSU5JVCAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGpzX2V2ZW50IHsKLSBfX3UzMiB0aW1lOwotIF9fczE2IHZhbHVlOwotIF9fdTggdHlwZTsKKyAgX191MzIgdGltZTsKKyAgX19zMTYgdmFsdWU7CisgIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1iZXI7CisgIF9fdTggbnVtYmVyOwogfTsKICNkZWZpbmUgSlNJT0NHVkVSU0lPTiBfSU9SKCdqJywgMHgwMSwgX191MzIpCiAjZGVmaW5lIEpTSU9DR0FYRVMgX0lPUignaicsIDB4MTEsIF9fdTgpCkBAIC00OSwxMCArNDksMTAgQEAKICNkZWZpbmUgSlNfQ09SUl9OT05FIDB4MDAKICNkZWZpbmUgSlNfQ09SUl9CUk9LRU4gMHgwMQogc3RydWN0IGpzX2NvcnIgewotIF9fczMyIGNvZWZbOF07CisgIF9fczMyIGNvZWZbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczE2IHByZWM7Ci0gX191MTYgdHlwZTsKKyAgX19zMTYgcHJlYzsKKyAgX191MTYgdHlwZTsKIH07CiAjZGVmaW5lIEpTX1JFVFVSTiBzaXplb2Yoc3RydWN0IEpTX0RBVEFfVFlQRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC03OSwzMCArNzksMzAgQEAKICNkZWZpbmUgSlNfR0VUX0FMTCA3CiAjZGVmaW5lIEpTX1NFVF9BTEwgOAogc3RydWN0IEpTX0RBVEFfVFlQRSB7Ci0gX19zMzIgYnV0dG9uczsKKyAgX19zMzIgYnV0dG9uczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgeDsKLSBfX3MzMiB5OworICBfX3MzMiB4OworICBfX3MzMiB5OwogfTsKIHN0cnVjdCBKU19EQVRBX1NBVkVfVFlQRV8zMiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIEpTX1RJTUVPVVQ7Ci0gX19zMzIgQlVTWTsKLSBfX3MzMiBKU19FWFBJUkVUSU1FOwotIF9fczMyIEpTX1RJTUVMSU1JVDsKKyAgX19zMzIgSlNfVElNRU9VVDsKKyAgX19zMzIgQlVTWTsKKyAgX19zMzIgSlNfRVhQSVJFVElNRTsKKyAgX19zMzIgSlNfVElNRUxJTUlUOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX1NBVkU7Ci0gc3RydWN0IEpTX0RBVEFfVFlQRSBKU19DT1JSOworICBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX1NBVkU7CisgIHN0cnVjdCBKU19EQVRBX1RZUEUgSlNfQ09SUjsKIH07CiBzdHJ1Y3QgSlNfREFUQV9TQVZFX1RZUEVfNjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBKU19USU1FT1VUOwotIF9fczMyIEJVU1k7Ci0gX19zNjQgSlNfRVhQSVJFVElNRTsKLSBfX3M2NCBKU19USU1FTElNSVQ7CisgIF9fczMyIEpTX1RJTUVPVVQ7CisgIF9fczMyIEJVU1k7CisgIF9fczY0IEpTX0VYUElSRVRJTUU7CisgIF9fczY0IEpTX1RJTUVMSU1JVDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IEpTX0RBVEFfVFlQRSBKU19TQVZFOwotIHN0cnVjdCBKU19EQVRBX1RZUEUgSlNfQ09SUjsKKyAgc3RydWN0IEpTX0RBVEFfVFlQRSBKU19TQVZFOworICBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX0NPUlI7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZC5oCmluZGV4IGMxZmQxMWMuLmEwMDBjZDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkLmgKQEAgLTI3LDkgKzI3LDkgQEAKICNkZWZpbmUgUElPX0ZPTlRYIDB4NEI2QwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb25zb2xlZm9udGRlc2MgewotIHVuc2lnbmVkIHNob3J0IGNoYXJjb3VudDsKLSB1bnNpZ25lZCBzaG9ydCBjaGFyaGVpZ2h0OwotIGNoYXIgX191c2VyICpjaGFyZGF0YTsKKyAgdW5zaWduZWQgc2hvcnQgY2hhcmNvdW50OworICB1bnNpZ25lZCBzaG9ydCBjaGFyaGVpZ2h0OworICBjaGFyIF9fdXNlciAqIGNoYXJkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFBJT19GT05UUkVTRVQgMHg0QjZECkBAIC03NCwyMiArNzQsMjIgQEAKICNkZWZpbmUgUElPX1VOSVNDUk5NQVAgMHg0QjZBCiAjZGVmaW5lIEdJT19VTklNQVAgMHg0QjY2CiBzdHJ1Y3QgdW5pcGFpciB7Ci0gdW5zaWduZWQgc2hvcnQgdW5pY29kZTsKKyAgdW5zaWduZWQgc2hvcnQgdW5pY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZm9udHBvczsKKyAgdW5zaWduZWQgc2hvcnQgZm9udHBvczsKIH07CiBzdHJ1Y3QgdW5pbWFwZGVzYyB7Ci0gdW5zaWduZWQgc2hvcnQgZW50cnlfY3Q7CisgIHVuc2lnbmVkIHNob3J0IGVudHJ5X2N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdW5pcGFpciBfX3VzZXIgKmVudHJpZXM7CisgIHN0cnVjdCB1bmlwYWlyIF9fdXNlciAqIGVudHJpZXM7CiB9OwogI2RlZmluZSBQSU9fVU5JTUFQIDB4NEI2NwogI2RlZmluZSBQSU9fVU5JTUFQQ0xSIDB4NEI2OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1bmltYXBpbml0IHsKLSB1bnNpZ25lZCBzaG9ydCBhZHZpc2VkX2hhc2hzaXplOwotIHVuc2lnbmVkIHNob3J0IGFkdmlzZWRfaGFzaHN0ZXA7Ci0gdW5zaWduZWQgc2hvcnQgYWR2aXNlZF9oYXNobGV2ZWw7CisgIHVuc2lnbmVkIHNob3J0IGFkdmlzZWRfaGFzaHNpemU7CisgIHVuc2lnbmVkIHNob3J0IGFkdmlzZWRfaGFzaHN0ZXA7CisgIHVuc2lnbmVkIHNob3J0IGFkdmlzZWRfaGFzaGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFVOSV9ESVJFQ1RfQkFTRSAweEYwMDAKQEAgLTExNiw5ICsxMTYsOSBAQAogI2RlZmluZSBLRFNLQkxFRCAweDRCNjUKIHN0cnVjdCBrYmVudHJ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBrYl90YWJsZTsKLSB1bnNpZ25lZCBjaGFyIGtiX2luZGV4OwotIHVuc2lnbmVkIHNob3J0IGtiX3ZhbHVlOworICB1bnNpZ25lZCBjaGFyIGtiX3RhYmxlOworICB1bnNpZ25lZCBjaGFyIGtiX2luZGV4OworICB1bnNpZ25lZCBzaG9ydCBrYl92YWx1ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLX05PUk1UQUIgMHgwMApAQCAtMTI5LDM3ICsxMjksMzcgQEAKICNkZWZpbmUgS0RHS0JFTlQgMHg0QjQ2CiAjZGVmaW5lIEtEU0tCRU5UIDB4NEI0Nwogc3RydWN0IGtic2VudHJ5IHsKLSB1bnNpZ25lZCBjaGFyIGtiX2Z1bmM7CisgIHVuc2lnbmVkIGNoYXIga2JfZnVuYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBrYl9zdHJpbmdbNTEyXTsKKyAgdW5zaWduZWQgY2hhciBrYl9zdHJpbmdbNTEyXTsKIH07CiAjZGVmaW5lIEtER0tCU0VOVCAweDRCNDgKICNkZWZpbmUgS0RTS0JTRU5UIDB4NEI0OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrYmRpYWNyIHsKLSB1bnNpZ25lZCBjaGFyIGRpYWNyLCBiYXNlLCByZXN1bHQ7CisgIHVuc2lnbmVkIGNoYXIgZGlhY3IsIGJhc2UsIHJlc3VsdDsKIH07CiBzdHJ1Y3Qga2JkaWFjcnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQga2JfY250OwotIHN0cnVjdCBrYmRpYWNyIGtiZGlhY3JbMjU2XTsKKyAgdW5zaWduZWQgaW50IGtiX2NudDsKKyAgc3RydWN0IGtiZGlhY3Iga2JkaWFjclsyNTZdOwogfTsKICNkZWZpbmUgS0RHS0JESUFDUiAweDRCNEEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtEU0tCRElBQ1IgMHg0QjRCCiBzdHJ1Y3Qga2JkaWFjcnVjIHsKLSB1bnNpZ25lZCBpbnQgZGlhY3IsIGJhc2UsIHJlc3VsdDsKKyAgdW5zaWduZWQgaW50IGRpYWNyLCBiYXNlLCByZXN1bHQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrYmRpYWNyc3VjIHsKLSB1bnNpZ25lZCBpbnQga2JfY250OwotIHN0cnVjdCBrYmRpYWNydWMga2JkaWFjcnVjWzI1Nl07CisgIHVuc2lnbmVkIGludCBrYl9jbnQ7CisgIHN0cnVjdCBrYmRpYWNydWMga2JkaWFjcnVjWzI1Nl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS0RHS0JESUFDUlVDIDB4NEJGQQogI2RlZmluZSBLRFNLQkRJQUNSVUMgMHg0QkZCCiBzdHJ1Y3Qga2JrZXljb2RlIHsKLSB1bnNpZ25lZCBpbnQgc2NhbmNvZGUsIGtleWNvZGU7CisgIHVuc2lnbmVkIGludCBzY2FuY29kZSwga2V5Y29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBLREdFVEtFWUNPREUgMHg0QjRDCkBAIC0xNjcsMjYgKzE2NywyNiBAQAogI2RlZmluZSBLRFNJR0FDQ0VQVCAweDRCNEUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga2JkX3JlcGVhdCB7Ci0gaW50IGRlbGF5OwotIGludCBwZXJpb2Q7CisgIGludCBkZWxheTsKKyAgaW50IHBlcmlvZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLREtCRFJFUCAweDRCNTIKICNkZWZpbmUgS0RGT05UT1AgMHg0QjcyCiBzdHJ1Y3QgY29uc29sZV9mb250X29wIHsKLSB1bnNpZ25lZCBpbnQgb3A7CisgIHVuc2lnbmVkIGludCBvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVuc2lnbmVkIGludCB3aWR0aCwgaGVpZ2h0OwotIHVuc2lnbmVkIGludCBjaGFyY291bnQ7Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmRhdGE7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IHdpZHRoLCBoZWlnaHQ7CisgIHVuc2lnbmVkIGludCBjaGFyY291bnQ7CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvbnNvbGVfZm9udCB7Ci0gdW5zaWduZWQgaW50IHdpZHRoLCBoZWlnaHQ7Ci0gdW5zaWduZWQgaW50IGNoYXJjb3VudDsKKyAgdW5zaWduZWQgaW50IHdpZHRoLCBoZWlnaHQ7CisgIHVuc2lnbmVkIGludCBjaGFyY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgKmRhdGE7CisgIHVuc2lnbmVkIGNoYXIgKiBkYXRhOwogfTsKICNkZWZpbmUgS0RfRk9OVF9PUF9TRVQgMAogI2RlZmluZSBLRF9GT05UX09QX0dFVCAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkZXZfdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZGV2X3QuaAppbmRleCA3Y2IxZDY5Li5mNGMwNDM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkZXZfdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2Rldl90LmgKQEAgLTE4LDggKzE4LDggQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfVUFQSV9MSU5VWF9LREVWX1RfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9LREVWX1RfSAotI2RlZmluZSBNQUpPUihkZXYpICgoZGV2KT4+OCkKKyNkZWZpbmUgTUFKT1IoZGV2KSAoKGRldikgPj4gOCkKICNkZWZpbmUgTUlOT1IoZGV2KSAoKGRldikgJiAweGZmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUtERVYobWEsbWkpICgobWEpPDw4IHwgKG1pKSkKKyNkZWZpbmUgTUtERVYobWEsbWkpICgobWEpIDw8IDggfCAobWkpKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbC1wYWdlLWZsYWdzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbC1wYWdlLWZsYWdzLmgKaW5kZXggYzRkMDVjYy4uY2UzMGJlNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWwtcGFnZS1mbGFncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLXBhZ2UtZmxhZ3MuaApAQCAtNDcsNCArNDcsNSBAQAogI2RlZmluZSBLUEZfS1NNIDIxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLUEZfVEhQIDIyCisjZGVmaW5lIEtQRl9CQUxMT09OIDIzCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbC5oCmluZGV4IGM0YzBkZGMuLmViOTQ5MGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWwuaApAQCAtMTksNyArMTksNyBAQAogI2lmbmRlZiBfVUFQSV9MSU5VWF9LRVJORUxfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9LRVJORUxfSAogI2luY2x1ZGUgPGxpbnV4L3N5c2luZm8uaD4KLSNkZWZpbmUgX19BTElHTl9LRVJORUwoeCwgYSkgX19BTElHTl9LRVJORUxfTUFTSyh4LCAodHlwZW9mKHgpKShhKSAtIDEpCisjZGVmaW5lIF9fQUxJR05fS0VSTkVMKHgsYSkgX19BTElHTl9LRVJORUxfTUFTSyh4LCAodHlwZW9mKHgpKSAoYSkgLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19BTElHTl9LRVJORUxfTUFTSyh4LCBtYXNrKSAoKCh4KSArIChtYXNrKSkgJiB+KG1hc2spKQorI2RlZmluZSBfX0FMSUdOX0tFUk5FTF9NQVNLKHgsbWFzaykgKCgoeCkgKyAobWFzaykpICYgfihtYXNrKSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWxjYXBpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbGNhcGkuaAppbmRleCBmNWUzOTc0Li5hODRmY2Y4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbGNhcGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbGNhcGkuaApAQCAtMjMsMTcgKzIzLDE3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQVBJX01BWERBVEFXSU5ET1cgOAogdHlwZWRlZiBzdHJ1Y3Qga2NhcGlfZmxhZ2RlZiB7Ci0gaW50IGNvbnRyOwotIGludCBmbGFnOworICBpbnQgY29udHI7CisgIGludCBmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0ga2NhcGlfZmxhZ2RlZjsKIHR5cGVkZWYgc3RydWN0IGtjYXBpX2NhcmRkZWYgewotIGNoYXIgZHJpdmVyWzMyXTsKLSB1bnNpZ25lZCBpbnQgcG9ydDsKKyAgY2hhciBkcml2ZXJbMzJdOworICB1bnNpZ25lZCBpbnQgcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaXJxOwotIHVuc2lnbmVkIGludCBtZW1iYXNlOwotIGludCBjYXJkbnI7CisgIHVuc2lnbmVkIGlycTsKKyAgdW5zaWduZWQgaW50IG1lbWJhc2U7CisgIGludCBjYXJkbnI7CiB9IGtjYXBpX2NhcmRkZWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLQ0FQSV9DTURfVFJBQ0UgMTAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V4ZWMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V4ZWMuaAppbmRleCBhMTdkYzIzLi5lMTYzODVlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleGVjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXhlYy5oCkBAIC0yMywyOCArMjMsMzIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWEVDX1BSRVNFUlZFX0NPTlRFWFQgMHgwMDAwMDAwMgogI2RlZmluZSBLRVhFQ19BUkNIX01BU0sgMHhmZmZmMDAwMAotI2RlZmluZSBLRVhFQ19BUkNIX0RFRkFVTFQgKCAwIDw8IDE2KQotI2RlZmluZSBLRVhFQ19BUkNIXzM4NiAoIDMgPDwgMTYpCisjZGVmaW5lIEtFWEVDX0ZJTEVfVU5MT0FEIDB4MDAwMDAwMDEKKyNkZWZpbmUgS0VYRUNfRklMRV9PTl9DUkFTSCAweDAwMDAwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLRVhFQ19BUkNIXzY4SyAoIDQgPDwgMTYpCisjZGVmaW5lIEtFWEVDX0ZJTEVfTk9fSU5JVFJBTUZTIDB4MDAwMDAwMDQKKyNkZWZpbmUgS0VYRUNfQVJDSF9ERUZBVUxUICgwIDw8IDE2KQorI2RlZmluZSBLRVhFQ19BUkNIXzM4NiAoMyA8PCAxNikKKyNkZWZpbmUgS0VYRUNfQVJDSF82OEsgKDQgPDwgMTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVhFQ19BUkNIX1g4Nl82NCAoNjIgPDwgMTYpCiAjZGVmaW5lIEtFWEVDX0FSQ0hfUFBDICgyMCA8PCAxNikKICNkZWZpbmUgS0VYRUNfQVJDSF9QUEM2NCAoMjEgPDwgMTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVhFQ19BUkNIX0lBXzY0ICg1MCA8PCAxNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWEVDX0FSQ0hfQVJNICg0MCA8PCAxNikKICNkZWZpbmUgS0VYRUNfQVJDSF9TMzkwICgyMiA8PCAxNikKICNkZWZpbmUgS0VYRUNfQVJDSF9TSCAoNDIgPDwgMTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVhFQ19BUkNIX01JUFNfTEUgKDEwIDw8IDE2KQotI2RlZmluZSBLRVhFQ19BUkNIX01JUFMgKCA4IDw8IDE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VYRUNfQVJDSF9NSVBTICg4IDw8IDE2KQogI2RlZmluZSBLRVhFQ19TRUdNRU5UX01BWCAxNgogc3RydWN0IGtleGVjX3NlZ21lbnQgeworICBjb25zdCB2b2lkICogYnVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb25zdCB2b2lkICpidWY7Ci0gc2l6ZV90IGJ1ZnN6OwotIGNvbnN0IHZvaWQgKm1lbTsKLSBzaXplX3QgbWVtc3o7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzaXplX3QgYnVmc3o7CisgIGNvbnN0IHZvaWQgKiBtZW07CisgIHNpemVfdCBtZW1zejsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWJvYXJkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWJvYXJkLmgKaW5kZXggMDM1ODkyMC4uOGRlMGZkNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXlib2FyZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Ym9hcmQuaApAQCAtNTcsNDY0ICs1Nyw0NjQgQEAKICNkZWZpbmUgS1RfREVBRDIgMTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtUX0JSTCAxNAotI2RlZmluZSBLKHQsdikgKCgodCk8PDgpfCh2KSkKKyNkZWZpbmUgSyh0LHYpICgoKHQpIDw8IDgpIHwgKHYpKQogI2RlZmluZSBLVFlQKHgpICgoeCkgPj4gOCkKICNkZWZpbmUgS1ZBTCh4KSAoKHgpICYgMHhmZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjEgSyhLVF9GTiwwKQotI2RlZmluZSBLX0YyIEsoS1RfRk4sMSkKLSNkZWZpbmUgS19GMyBLKEtUX0ZOLDIpCi0jZGVmaW5lIEtfRjQgSyhLVF9GTiwzKQorI2RlZmluZSBLX0YxIEsoS1RfRk4sIDApCisjZGVmaW5lIEtfRjIgSyhLVF9GTiwgMSkKKyNkZWZpbmUgS19GMyBLKEtUX0ZOLCAyKQorI2RlZmluZSBLX0Y0IEsoS1RfRk4sIDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y1IEsoS1RfRk4sNCkKLSNkZWZpbmUgS19GNiBLKEtUX0ZOLDUpCi0jZGVmaW5lIEtfRjcgSyhLVF9GTiw2KQotI2RlZmluZSBLX0Y4IEsoS1RfRk4sNykKKyNkZWZpbmUgS19GNSBLKEtUX0ZOLCA0KQorI2RlZmluZSBLX0Y2IEsoS1RfRk4sIDUpCisjZGVmaW5lIEtfRjcgSyhLVF9GTiwgNikKKyNkZWZpbmUgS19GOCBLKEtUX0ZOLCA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GOSBLKEtUX0ZOLDgpCi0jZGVmaW5lIEtfRjEwIEsoS1RfRk4sOSkKLSNkZWZpbmUgS19GMTEgSyhLVF9GTiwxMCkKLSNkZWZpbmUgS19GMTIgSyhLVF9GTiwxMSkKKyNkZWZpbmUgS19GOSBLKEtUX0ZOLCA4KQorI2RlZmluZSBLX0YxMCBLKEtUX0ZOLCA5KQorI2RlZmluZSBLX0YxMSBLKEtUX0ZOLCAxMCkKKyNkZWZpbmUgS19GMTIgSyhLVF9GTiwgMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMyBLKEtUX0ZOLDEyKQotI2RlZmluZSBLX0YxNCBLKEtUX0ZOLDEzKQotI2RlZmluZSBLX0YxNSBLKEtUX0ZOLDE0KQotI2RlZmluZSBLX0YxNiBLKEtUX0ZOLDE1KQorI2RlZmluZSBLX0YxMyBLKEtUX0ZOLCAxMikKKyNkZWZpbmUgS19GMTQgSyhLVF9GTiwgMTMpCisjZGVmaW5lIEtfRjE1IEsoS1RfRk4sIDE0KQorI2RlZmluZSBLX0YxNiBLKEtUX0ZOLCAxNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjE3IEsoS1RfRk4sMTYpCi0jZGVmaW5lIEtfRjE4IEsoS1RfRk4sMTcpCi0jZGVmaW5lIEtfRjE5IEsoS1RfRk4sMTgpCi0jZGVmaW5lIEtfRjIwIEsoS1RfRk4sMTkpCisjZGVmaW5lIEtfRjE3IEsoS1RfRk4sIDE2KQorI2RlZmluZSBLX0YxOCBLKEtUX0ZOLCAxNykKKyNkZWZpbmUgS19GMTkgSyhLVF9GTiwgMTgpCisjZGVmaW5lIEtfRjIwIEsoS1RfRk4sIDE5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GSU5EIEsoS1RfRk4sMjApCi0jZGVmaW5lIEtfSU5TRVJUIEsoS1RfRk4sMjEpCi0jZGVmaW5lIEtfUkVNT1ZFIEsoS1RfRk4sMjIpCi0jZGVmaW5lIEtfU0VMRUNUIEsoS1RfRk4sMjMpCisjZGVmaW5lIEtfRklORCBLKEtUX0ZOLCAyMCkKKyNkZWZpbmUgS19JTlNFUlQgSyhLVF9GTiwgMjEpCisjZGVmaW5lIEtfUkVNT1ZFIEsoS1RfRk4sIDIyKQorI2RlZmluZSBLX1NFTEVDVCBLKEtUX0ZOLCAyMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfUEdVUCBLKEtUX0ZOLDI0KQotI2RlZmluZSBLX1BHRE4gSyhLVF9GTiwyNSkKLSNkZWZpbmUgS19NQUNSTyBLKEtUX0ZOLDI2KQotI2RlZmluZSBLX0hFTFAgSyhLVF9GTiwyNykKKyNkZWZpbmUgS19QR1VQIEsoS1RfRk4sIDI0KQorI2RlZmluZSBLX1BHRE4gSyhLVF9GTiwgMjUpCisjZGVmaW5lIEtfTUFDUk8gSyhLVF9GTiwgMjYpCisjZGVmaW5lIEtfSEVMUCBLKEtUX0ZOLCAyNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRE8gSyhLVF9GTiwyOCkKLSNkZWZpbmUgS19QQVVTRSBLKEtUX0ZOLDI5KQotI2RlZmluZSBLX0YyMSBLKEtUX0ZOLDMwKQotI2RlZmluZSBLX0YyMiBLKEtUX0ZOLDMxKQorI2RlZmluZSBLX0RPIEsoS1RfRk4sIDI4KQorI2RlZmluZSBLX1BBVVNFIEsoS1RfRk4sIDI5KQorI2RlZmluZSBLX0YyMSBLKEtUX0ZOLCAzMCkKKyNkZWZpbmUgS19GMjIgSyhLVF9GTiwgMzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMyBLKEtUX0ZOLDMyKQotI2RlZmluZSBLX0YyNCBLKEtUX0ZOLDMzKQotI2RlZmluZSBLX0YyNSBLKEtUX0ZOLDM0KQotI2RlZmluZSBLX0YyNiBLKEtUX0ZOLDM1KQorI2RlZmluZSBLX0YyMyBLKEtUX0ZOLCAzMikKKyNkZWZpbmUgS19GMjQgSyhLVF9GTiwgMzMpCisjZGVmaW5lIEtfRjI1IEsoS1RfRk4sIDM0KQorI2RlZmluZSBLX0YyNiBLKEtUX0ZOLCAzNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjI3IEsoS1RfRk4sMzYpCi0jZGVmaW5lIEtfRjI4IEsoS1RfRk4sMzcpCi0jZGVmaW5lIEtfRjI5IEsoS1RfRk4sMzgpCi0jZGVmaW5lIEtfRjMwIEsoS1RfRk4sMzkpCisjZGVmaW5lIEtfRjI3IEsoS1RfRk4sIDM2KQorI2RlZmluZSBLX0YyOCBLKEtUX0ZOLCAzNykKKyNkZWZpbmUgS19GMjkgSyhLVF9GTiwgMzgpCisjZGVmaW5lIEtfRjMwIEsoS1RfRk4sIDM5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMzEgSyhLVF9GTiw0MCkKLSNkZWZpbmUgS19GMzIgSyhLVF9GTiw0MSkKLSNkZWZpbmUgS19GMzMgSyhLVF9GTiw0MikKLSNkZWZpbmUgS19GMzQgSyhLVF9GTiw0MykKKyNkZWZpbmUgS19GMzEgSyhLVF9GTiwgNDApCisjZGVmaW5lIEtfRjMyIEsoS1RfRk4sIDQxKQorI2RlZmluZSBLX0YzMyBLKEtUX0ZOLCA0MikKKyNkZWZpbmUgS19GMzQgSyhLVF9GTiwgNDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YzNSBLKEtUX0ZOLDQ0KQotI2RlZmluZSBLX0YzNiBLKEtUX0ZOLDQ1KQotI2RlZmluZSBLX0YzNyBLKEtUX0ZOLDQ2KQotI2RlZmluZSBLX0YzOCBLKEtUX0ZOLDQ3KQorI2RlZmluZSBLX0YzNSBLKEtUX0ZOLCA0NCkKKyNkZWZpbmUgS19GMzYgSyhLVF9GTiwgNDUpCisjZGVmaW5lIEtfRjM3IEsoS1RfRk4sIDQ2KQorI2RlZmluZSBLX0YzOCBLKEtUX0ZOLCA0NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjM5IEsoS1RfRk4sNDgpCi0jZGVmaW5lIEtfRjQwIEsoS1RfRk4sNDkpCi0jZGVmaW5lIEtfRjQxIEsoS1RfRk4sNTApCi0jZGVmaW5lIEtfRjQyIEsoS1RfRk4sNTEpCisjZGVmaW5lIEtfRjM5IEsoS1RfRk4sIDQ4KQorI2RlZmluZSBLX0Y0MCBLKEtUX0ZOLCA0OSkKKyNkZWZpbmUgS19GNDEgSyhLVF9GTiwgNTApCisjZGVmaW5lIEtfRjQyIEsoS1RfRk4sIDUxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNDMgSyhLVF9GTiw1MikKLSNkZWZpbmUgS19GNDQgSyhLVF9GTiw1MykKLSNkZWZpbmUgS19GNDUgSyhLVF9GTiw1NCkKLSNkZWZpbmUgS19GNDYgSyhLVF9GTiw1NSkKKyNkZWZpbmUgS19GNDMgSyhLVF9GTiwgNTIpCisjZGVmaW5lIEtfRjQ0IEsoS1RfRk4sIDUzKQorI2RlZmluZSBLX0Y0NSBLKEtUX0ZOLCA1NCkKKyNkZWZpbmUgS19GNDYgSyhLVF9GTiwgNTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y0NyBLKEtUX0ZOLDU2KQotI2RlZmluZSBLX0Y0OCBLKEtUX0ZOLDU3KQotI2RlZmluZSBLX0Y0OSBLKEtUX0ZOLDU4KQotI2RlZmluZSBLX0Y1MCBLKEtUX0ZOLDU5KQorI2RlZmluZSBLX0Y0NyBLKEtUX0ZOLCA1NikKKyNkZWZpbmUgS19GNDggSyhLVF9GTiwgNTcpCisjZGVmaW5lIEtfRjQ5IEsoS1RfRk4sIDU4KQorI2RlZmluZSBLX0Y1MCBLKEtUX0ZOLCA1OSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjUxIEsoS1RfRk4sNjApCi0jZGVmaW5lIEtfRjUyIEsoS1RfRk4sNjEpCi0jZGVmaW5lIEtfRjUzIEsoS1RfRk4sNjIpCi0jZGVmaW5lIEtfRjU0IEsoS1RfRk4sNjMpCisjZGVmaW5lIEtfRjUxIEsoS1RfRk4sIDYwKQorI2RlZmluZSBLX0Y1MiBLKEtUX0ZOLCA2MSkKKyNkZWZpbmUgS19GNTMgSyhLVF9GTiwgNjIpCisjZGVmaW5lIEtfRjU0IEsoS1RfRk4sIDYzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNTUgSyhLVF9GTiw2NCkKLSNkZWZpbmUgS19GNTYgSyhLVF9GTiw2NSkKLSNkZWZpbmUgS19GNTcgSyhLVF9GTiw2NikKLSNkZWZpbmUgS19GNTggSyhLVF9GTiw2NykKKyNkZWZpbmUgS19GNTUgSyhLVF9GTiwgNjQpCisjZGVmaW5lIEtfRjU2IEsoS1RfRk4sIDY1KQorI2RlZmluZSBLX0Y1NyBLKEtUX0ZOLCA2NikKKyNkZWZpbmUgS19GNTggSyhLVF9GTiwgNjcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y1OSBLKEtUX0ZOLDY4KQotI2RlZmluZSBLX0Y2MCBLKEtUX0ZOLDY5KQotI2RlZmluZSBLX0Y2MSBLKEtUX0ZOLDcwKQotI2RlZmluZSBLX0Y2MiBLKEtUX0ZOLDcxKQorI2RlZmluZSBLX0Y1OSBLKEtUX0ZOLCA2OCkKKyNkZWZpbmUgS19GNjAgSyhLVF9GTiwgNjkpCisjZGVmaW5lIEtfRjYxIEsoS1RfRk4sIDcwKQorI2RlZmluZSBLX0Y2MiBLKEtUX0ZOLCA3MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjYzIEsoS1RfRk4sNzIpCi0jZGVmaW5lIEtfRjY0IEsoS1RfRk4sNzMpCi0jZGVmaW5lIEtfRjY1IEsoS1RfRk4sNzQpCi0jZGVmaW5lIEtfRjY2IEsoS1RfRk4sNzUpCisjZGVmaW5lIEtfRjYzIEsoS1RfRk4sIDcyKQorI2RlZmluZSBLX0Y2NCBLKEtUX0ZOLCA3MykKKyNkZWZpbmUgS19GNjUgSyhLVF9GTiwgNzQpCisjZGVmaW5lIEtfRjY2IEsoS1RfRk4sIDc1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNjcgSyhLVF9GTiw3NikKLSNkZWZpbmUgS19GNjggSyhLVF9GTiw3NykKLSNkZWZpbmUgS19GNjkgSyhLVF9GTiw3OCkKLSNkZWZpbmUgS19GNzAgSyhLVF9GTiw3OSkKKyNkZWZpbmUgS19GNjcgSyhLVF9GTiwgNzYpCisjZGVmaW5lIEtfRjY4IEsoS1RfRk4sIDc3KQorI2RlZmluZSBLX0Y2OSBLKEtUX0ZOLCA3OCkKKyNkZWZpbmUgS19GNzAgSyhLVF9GTiwgNzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y3MSBLKEtUX0ZOLDgwKQotI2RlZmluZSBLX0Y3MiBLKEtUX0ZOLDgxKQotI2RlZmluZSBLX0Y3MyBLKEtUX0ZOLDgyKQotI2RlZmluZSBLX0Y3NCBLKEtUX0ZOLDgzKQorI2RlZmluZSBLX0Y3MSBLKEtUX0ZOLCA4MCkKKyNkZWZpbmUgS19GNzIgSyhLVF9GTiwgODEpCisjZGVmaW5lIEtfRjczIEsoS1RfRk4sIDgyKQorI2RlZmluZSBLX0Y3NCBLKEtUX0ZOLCA4MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjc1IEsoS1RfRk4sODQpCi0jZGVmaW5lIEtfRjc2IEsoS1RfRk4sODUpCi0jZGVmaW5lIEtfRjc3IEsoS1RfRk4sODYpCi0jZGVmaW5lIEtfRjc4IEsoS1RfRk4sODcpCisjZGVmaW5lIEtfRjc1IEsoS1RfRk4sIDg0KQorI2RlZmluZSBLX0Y3NiBLKEtUX0ZOLCA4NSkKKyNkZWZpbmUgS19GNzcgSyhLVF9GTiwgODYpCisjZGVmaW5lIEtfRjc4IEsoS1RfRk4sIDg3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNzkgSyhLVF9GTiw4OCkKLSNkZWZpbmUgS19GODAgSyhLVF9GTiw4OSkKLSNkZWZpbmUgS19GODEgSyhLVF9GTiw5MCkKLSNkZWZpbmUgS19GODIgSyhLVF9GTiw5MSkKKyNkZWZpbmUgS19GNzkgSyhLVF9GTiwgODgpCisjZGVmaW5lIEtfRjgwIEsoS1RfRk4sIDg5KQorI2RlZmluZSBLX0Y4MSBLKEtUX0ZOLCA5MCkKKyNkZWZpbmUgS19GODIgSyhLVF9GTiwgOTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y4MyBLKEtUX0ZOLDkyKQotI2RlZmluZSBLX0Y4NCBLKEtUX0ZOLDkzKQotI2RlZmluZSBLX0Y4NSBLKEtUX0ZOLDk0KQotI2RlZmluZSBLX0Y4NiBLKEtUX0ZOLDk1KQorI2RlZmluZSBLX0Y4MyBLKEtUX0ZOLCA5MikKKyNkZWZpbmUgS19GODQgSyhLVF9GTiwgOTMpCisjZGVmaW5lIEtfRjg1IEsoS1RfRk4sIDk0KQorI2RlZmluZSBLX0Y4NiBLKEtUX0ZOLCA5NSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjg3IEsoS1RfRk4sOTYpCi0jZGVmaW5lIEtfRjg4IEsoS1RfRk4sOTcpCi0jZGVmaW5lIEtfRjg5IEsoS1RfRk4sOTgpCi0jZGVmaW5lIEtfRjkwIEsoS1RfRk4sOTkpCisjZGVmaW5lIEtfRjg3IEsoS1RfRk4sIDk2KQorI2RlZmluZSBLX0Y4OCBLKEtUX0ZOLCA5NykKKyNkZWZpbmUgS19GODkgSyhLVF9GTiwgOTgpCisjZGVmaW5lIEtfRjkwIEsoS1RfRk4sIDk5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GOTEgSyhLVF9GTiwxMDApCi0jZGVmaW5lIEtfRjkyIEsoS1RfRk4sMTAxKQotI2RlZmluZSBLX0Y5MyBLKEtUX0ZOLDEwMikKLSNkZWZpbmUgS19GOTQgSyhLVF9GTiwxMDMpCisjZGVmaW5lIEtfRjkxIEsoS1RfRk4sIDEwMCkKKyNkZWZpbmUgS19GOTIgSyhLVF9GTiwgMTAxKQorI2RlZmluZSBLX0Y5MyBLKEtUX0ZOLCAxMDIpCisjZGVmaW5lIEtfRjk0IEsoS1RfRk4sIDEwMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjk1IEsoS1RfRk4sMTA0KQotI2RlZmluZSBLX0Y5NiBLKEtUX0ZOLDEwNSkKLSNkZWZpbmUgS19GOTcgSyhLVF9GTiwxMDYpCi0jZGVmaW5lIEtfRjk4IEsoS1RfRk4sMTA3KQorI2RlZmluZSBLX0Y5NSBLKEtUX0ZOLCAxMDQpCisjZGVmaW5lIEtfRjk2IEsoS1RfRk4sIDEwNSkKKyNkZWZpbmUgS19GOTcgSyhLVF9GTiwgMTA2KQorI2RlZmluZSBLX0Y5OCBLKEtUX0ZOLCAxMDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y5OSBLKEtUX0ZOLDEwOCkKLSNkZWZpbmUgS19GMTAwIEsoS1RfRk4sMTA5KQotI2RlZmluZSBLX0YxMDEgSyhLVF9GTiwxMTApCi0jZGVmaW5lIEtfRjEwMiBLKEtUX0ZOLDExMSkKKyNkZWZpbmUgS19GOTkgSyhLVF9GTiwgMTA4KQorI2RlZmluZSBLX0YxMDAgSyhLVF9GTiwgMTA5KQorI2RlZmluZSBLX0YxMDEgSyhLVF9GTiwgMTEwKQorI2RlZmluZSBLX0YxMDIgSyhLVF9GTiwgMTExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTAzIEsoS1RfRk4sMTEyKQotI2RlZmluZSBLX0YxMDQgSyhLVF9GTiwxMTMpCi0jZGVmaW5lIEtfRjEwNSBLKEtUX0ZOLDExNCkKLSNkZWZpbmUgS19GMTA2IEsoS1RfRk4sMTE1KQorI2RlZmluZSBLX0YxMDMgSyhLVF9GTiwgMTEyKQorI2RlZmluZSBLX0YxMDQgSyhLVF9GTiwgMTEzKQorI2RlZmluZSBLX0YxMDUgSyhLVF9GTiwgMTE0KQorI2RlZmluZSBLX0YxMDYgSyhLVF9GTiwgMTE1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTA3IEsoS1RfRk4sMTE2KQotI2RlZmluZSBLX0YxMDggSyhLVF9GTiwxMTcpCi0jZGVmaW5lIEtfRjEwOSBLKEtUX0ZOLDExOCkKLSNkZWZpbmUgS19GMTEwIEsoS1RfRk4sMTE5KQorI2RlZmluZSBLX0YxMDcgSyhLVF9GTiwgMTE2KQorI2RlZmluZSBLX0YxMDggSyhLVF9GTiwgMTE3KQorI2RlZmluZSBLX0YxMDkgSyhLVF9GTiwgMTE4KQorI2RlZmluZSBLX0YxMTAgSyhLVF9GTiwgMTE5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTExIEsoS1RfRk4sMTIwKQotI2RlZmluZSBLX0YxMTIgSyhLVF9GTiwxMjEpCi0jZGVmaW5lIEtfRjExMyBLKEtUX0ZOLDEyMikKLSNkZWZpbmUgS19GMTE0IEsoS1RfRk4sMTIzKQorI2RlZmluZSBLX0YxMTEgSyhLVF9GTiwgMTIwKQorI2RlZmluZSBLX0YxMTIgSyhLVF9GTiwgMTIxKQorI2RlZmluZSBLX0YxMTMgSyhLVF9GTiwgMTIyKQorI2RlZmluZSBLX0YxMTQgSyhLVF9GTiwgMTIzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTE1IEsoS1RfRk4sMTI0KQotI2RlZmluZSBLX0YxMTYgSyhLVF9GTiwxMjUpCi0jZGVmaW5lIEtfRjExNyBLKEtUX0ZOLDEyNikKLSNkZWZpbmUgS19GMTE4IEsoS1RfRk4sMTI3KQorI2RlZmluZSBLX0YxMTUgSyhLVF9GTiwgMTI0KQorI2RlZmluZSBLX0YxMTYgSyhLVF9GTiwgMTI1KQorI2RlZmluZSBLX0YxMTcgSyhLVF9GTiwgMTI2KQorI2RlZmluZSBLX0YxMTggSyhLVF9GTiwgMTI3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTE5IEsoS1RfRk4sMTI4KQotI2RlZmluZSBLX0YxMjAgSyhLVF9GTiwxMjkpCi0jZGVmaW5lIEtfRjEyMSBLKEtUX0ZOLDEzMCkKLSNkZWZpbmUgS19GMTIyIEsoS1RfRk4sMTMxKQorI2RlZmluZSBLX0YxMTkgSyhLVF9GTiwgMTI4KQorI2RlZmluZSBLX0YxMjAgSyhLVF9GTiwgMTI5KQorI2RlZmluZSBLX0YxMjEgSyhLVF9GTiwgMTMwKQorI2RlZmluZSBLX0YxMjIgSyhLVF9GTiwgMTMxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTIzIEsoS1RfRk4sMTMyKQotI2RlZmluZSBLX0YxMjQgSyhLVF9GTiwxMzMpCi0jZGVmaW5lIEtfRjEyNSBLKEtUX0ZOLDEzNCkKLSNkZWZpbmUgS19GMTI2IEsoS1RfRk4sMTM1KQorI2RlZmluZSBLX0YxMjMgSyhLVF9GTiwgMTMyKQorI2RlZmluZSBLX0YxMjQgSyhLVF9GTiwgMTMzKQorI2RlZmluZSBLX0YxMjUgSyhLVF9GTiwgMTM0KQorI2RlZmluZSBLX0YxMjYgSyhLVF9GTiwgMTM1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTI3IEsoS1RfRk4sMTM2KQotI2RlZmluZSBLX0YxMjggSyhLVF9GTiwxMzcpCi0jZGVmaW5lIEtfRjEyOSBLKEtUX0ZOLDEzOCkKLSNkZWZpbmUgS19GMTMwIEsoS1RfRk4sMTM5KQorI2RlZmluZSBLX0YxMjcgSyhLVF9GTiwgMTM2KQorI2RlZmluZSBLX0YxMjggSyhLVF9GTiwgMTM3KQorI2RlZmluZSBLX0YxMjkgSyhLVF9GTiwgMTM4KQorI2RlZmluZSBLX0YxMzAgSyhLVF9GTiwgMTM5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTMxIEsoS1RfRk4sMTQwKQotI2RlZmluZSBLX0YxMzIgSyhLVF9GTiwxNDEpCi0jZGVmaW5lIEtfRjEzMyBLKEtUX0ZOLDE0MikKLSNkZWZpbmUgS19GMTM0IEsoS1RfRk4sMTQzKQorI2RlZmluZSBLX0YxMzEgSyhLVF9GTiwgMTQwKQorI2RlZmluZSBLX0YxMzIgSyhLVF9GTiwgMTQxKQorI2RlZmluZSBLX0YxMzMgSyhLVF9GTiwgMTQyKQorI2RlZmluZSBLX0YxMzQgSyhLVF9GTiwgMTQzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTM1IEsoS1RfRk4sMTQ0KQotI2RlZmluZSBLX0YxMzYgSyhLVF9GTiwxNDUpCi0jZGVmaW5lIEtfRjEzNyBLKEtUX0ZOLDE0NikKLSNkZWZpbmUgS19GMTM4IEsoS1RfRk4sMTQ3KQorI2RlZmluZSBLX0YxMzUgSyhLVF9GTiwgMTQ0KQorI2RlZmluZSBLX0YxMzYgSyhLVF9GTiwgMTQ1KQorI2RlZmluZSBLX0YxMzcgSyhLVF9GTiwgMTQ2KQorI2RlZmluZSBLX0YxMzggSyhLVF9GTiwgMTQ3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTM5IEsoS1RfRk4sMTQ4KQotI2RlZmluZSBLX0YxNDAgSyhLVF9GTiwxNDkpCi0jZGVmaW5lIEtfRjE0MSBLKEtUX0ZOLDE1MCkKLSNkZWZpbmUgS19GMTQyIEsoS1RfRk4sMTUxKQorI2RlZmluZSBLX0YxMzkgSyhLVF9GTiwgMTQ4KQorI2RlZmluZSBLX0YxNDAgSyhLVF9GTiwgMTQ5KQorI2RlZmluZSBLX0YxNDEgSyhLVF9GTiwgMTUwKQorI2RlZmluZSBLX0YxNDIgSyhLVF9GTiwgMTUxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTQzIEsoS1RfRk4sMTUyKQotI2RlZmluZSBLX0YxNDQgSyhLVF9GTiwxNTMpCi0jZGVmaW5lIEtfRjE0NSBLKEtUX0ZOLDE1NCkKLSNkZWZpbmUgS19GMTQ2IEsoS1RfRk4sMTU1KQorI2RlZmluZSBLX0YxNDMgSyhLVF9GTiwgMTUyKQorI2RlZmluZSBLX0YxNDQgSyhLVF9GTiwgMTUzKQorI2RlZmluZSBLX0YxNDUgSyhLVF9GTiwgMTU0KQorI2RlZmluZSBLX0YxNDYgSyhLVF9GTiwgMTU1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTQ3IEsoS1RfRk4sMTU2KQotI2RlZmluZSBLX0YxNDggSyhLVF9GTiwxNTcpCi0jZGVmaW5lIEtfRjE0OSBLKEtUX0ZOLDE1OCkKLSNkZWZpbmUgS19GMTUwIEsoS1RfRk4sMTU5KQorI2RlZmluZSBLX0YxNDcgSyhLVF9GTiwgMTU2KQorI2RlZmluZSBLX0YxNDggSyhLVF9GTiwgMTU3KQorI2RlZmluZSBLX0YxNDkgSyhLVF9GTiwgMTU4KQorI2RlZmluZSBLX0YxNTAgSyhLVF9GTiwgMTU5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTUxIEsoS1RfRk4sMTYwKQotI2RlZmluZSBLX0YxNTIgSyhLVF9GTiwxNjEpCi0jZGVmaW5lIEtfRjE1MyBLKEtUX0ZOLDE2MikKLSNkZWZpbmUgS19GMTU0IEsoS1RfRk4sMTYzKQorI2RlZmluZSBLX0YxNTEgSyhLVF9GTiwgMTYwKQorI2RlZmluZSBLX0YxNTIgSyhLVF9GTiwgMTYxKQorI2RlZmluZSBLX0YxNTMgSyhLVF9GTiwgMTYyKQorI2RlZmluZSBLX0YxNTQgSyhLVF9GTiwgMTYzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTU1IEsoS1RfRk4sMTY0KQotI2RlZmluZSBLX0YxNTYgSyhLVF9GTiwxNjUpCi0jZGVmaW5lIEtfRjE1NyBLKEtUX0ZOLDE2NikKLSNkZWZpbmUgS19GMTU4IEsoS1RfRk4sMTY3KQorI2RlZmluZSBLX0YxNTUgSyhLVF9GTiwgMTY0KQorI2RlZmluZSBLX0YxNTYgSyhLVF9GTiwgMTY1KQorI2RlZmluZSBLX0YxNTcgSyhLVF9GTiwgMTY2KQorI2RlZmluZSBLX0YxNTggSyhLVF9GTiwgMTY3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTU5IEsoS1RfRk4sMTY4KQotI2RlZmluZSBLX0YxNjAgSyhLVF9GTiwxNjkpCi0jZGVmaW5lIEtfRjE2MSBLKEtUX0ZOLDE3MCkKLSNkZWZpbmUgS19GMTYyIEsoS1RfRk4sMTcxKQorI2RlZmluZSBLX0YxNTkgSyhLVF9GTiwgMTY4KQorI2RlZmluZSBLX0YxNjAgSyhLVF9GTiwgMTY5KQorI2RlZmluZSBLX0YxNjEgSyhLVF9GTiwgMTcwKQorI2RlZmluZSBLX0YxNjIgSyhLVF9GTiwgMTcxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTYzIEsoS1RfRk4sMTcyKQotI2RlZmluZSBLX0YxNjQgSyhLVF9GTiwxNzMpCi0jZGVmaW5lIEtfRjE2NSBLKEtUX0ZOLDE3NCkKLSNkZWZpbmUgS19GMTY2IEsoS1RfRk4sMTc1KQorI2RlZmluZSBLX0YxNjMgSyhLVF9GTiwgMTcyKQorI2RlZmluZSBLX0YxNjQgSyhLVF9GTiwgMTczKQorI2RlZmluZSBLX0YxNjUgSyhLVF9GTiwgMTc0KQorI2RlZmluZSBLX0YxNjYgSyhLVF9GTiwgMTc1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTY3IEsoS1RfRk4sMTc2KQotI2RlZmluZSBLX0YxNjggSyhLVF9GTiwxNzcpCi0jZGVmaW5lIEtfRjE2OSBLKEtUX0ZOLDE3OCkKLSNkZWZpbmUgS19GMTcwIEsoS1RfRk4sMTc5KQorI2RlZmluZSBLX0YxNjcgSyhLVF9GTiwgMTc2KQorI2RlZmluZSBLX0YxNjggSyhLVF9GTiwgMTc3KQorI2RlZmluZSBLX0YxNjkgSyhLVF9GTiwgMTc4KQorI2RlZmluZSBLX0YxNzAgSyhLVF9GTiwgMTc5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTcxIEsoS1RfRk4sMTgwKQotI2RlZmluZSBLX0YxNzIgSyhLVF9GTiwxODEpCi0jZGVmaW5lIEtfRjE3MyBLKEtUX0ZOLDE4MikKLSNkZWZpbmUgS19GMTc0IEsoS1RfRk4sMTgzKQorI2RlZmluZSBLX0YxNzEgSyhLVF9GTiwgMTgwKQorI2RlZmluZSBLX0YxNzIgSyhLVF9GTiwgMTgxKQorI2RlZmluZSBLX0YxNzMgSyhLVF9GTiwgMTgyKQorI2RlZmluZSBLX0YxNzQgSyhLVF9GTiwgMTgzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTc1IEsoS1RfRk4sMTg0KQotI2RlZmluZSBLX0YxNzYgSyhLVF9GTiwxODUpCi0jZGVmaW5lIEtfRjE3NyBLKEtUX0ZOLDE4NikKLSNkZWZpbmUgS19GMTc4IEsoS1RfRk4sMTg3KQorI2RlZmluZSBLX0YxNzUgSyhLVF9GTiwgMTg0KQorI2RlZmluZSBLX0YxNzYgSyhLVF9GTiwgMTg1KQorI2RlZmluZSBLX0YxNzcgSyhLVF9GTiwgMTg2KQorI2RlZmluZSBLX0YxNzggSyhLVF9GTiwgMTg3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTc5IEsoS1RfRk4sMTg4KQotI2RlZmluZSBLX0YxODAgSyhLVF9GTiwxODkpCi0jZGVmaW5lIEtfRjE4MSBLKEtUX0ZOLDE5MCkKLSNkZWZpbmUgS19GMTgyIEsoS1RfRk4sMTkxKQorI2RlZmluZSBLX0YxNzkgSyhLVF9GTiwgMTg4KQorI2RlZmluZSBLX0YxODAgSyhLVF9GTiwgMTg5KQorI2RlZmluZSBLX0YxODEgSyhLVF9GTiwgMTkwKQorI2RlZmluZSBLX0YxODIgSyhLVF9GTiwgMTkxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTgzIEsoS1RfRk4sMTkyKQotI2RlZmluZSBLX0YxODQgSyhLVF9GTiwxOTMpCi0jZGVmaW5lIEtfRjE4NSBLKEtUX0ZOLDE5NCkKLSNkZWZpbmUgS19GMTg2IEsoS1RfRk4sMTk1KQorI2RlZmluZSBLX0YxODMgSyhLVF9GTiwgMTkyKQorI2RlZmluZSBLX0YxODQgSyhLVF9GTiwgMTkzKQorI2RlZmluZSBLX0YxODUgSyhLVF9GTiwgMTk0KQorI2RlZmluZSBLX0YxODYgSyhLVF9GTiwgMTk1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTg3IEsoS1RfRk4sMTk2KQotI2RlZmluZSBLX0YxODggSyhLVF9GTiwxOTcpCi0jZGVmaW5lIEtfRjE4OSBLKEtUX0ZOLDE5OCkKLSNkZWZpbmUgS19GMTkwIEsoS1RfRk4sMTk5KQorI2RlZmluZSBLX0YxODcgSyhLVF9GTiwgMTk2KQorI2RlZmluZSBLX0YxODggSyhLVF9GTiwgMTk3KQorI2RlZmluZSBLX0YxODkgSyhLVF9GTiwgMTk4KQorI2RlZmluZSBLX0YxOTAgSyhLVF9GTiwgMTk5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTkxIEsoS1RfRk4sMjAwKQotI2RlZmluZSBLX0YxOTIgSyhLVF9GTiwyMDEpCi0jZGVmaW5lIEtfRjE5MyBLKEtUX0ZOLDIwMikKLSNkZWZpbmUgS19GMTk0IEsoS1RfRk4sMjAzKQorI2RlZmluZSBLX0YxOTEgSyhLVF9GTiwgMjAwKQorI2RlZmluZSBLX0YxOTIgSyhLVF9GTiwgMjAxKQorI2RlZmluZSBLX0YxOTMgSyhLVF9GTiwgMjAyKQorI2RlZmluZSBLX0YxOTQgSyhLVF9GTiwgMjAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTk1IEsoS1RfRk4sMjA0KQotI2RlZmluZSBLX0YxOTYgSyhLVF9GTiwyMDUpCi0jZGVmaW5lIEtfRjE5NyBLKEtUX0ZOLDIwNikKLSNkZWZpbmUgS19GMTk4IEsoS1RfRk4sMjA3KQorI2RlZmluZSBLX0YxOTUgSyhLVF9GTiwgMjA0KQorI2RlZmluZSBLX0YxOTYgSyhLVF9GTiwgMjA1KQorI2RlZmluZSBLX0YxOTcgSyhLVF9GTiwgMjA2KQorI2RlZmluZSBLX0YxOTggSyhLVF9GTiwgMjA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTk5IEsoS1RfRk4sMjA4KQotI2RlZmluZSBLX0YyMDAgSyhLVF9GTiwyMDkpCi0jZGVmaW5lIEtfRjIwMSBLKEtUX0ZOLDIxMCkKLSNkZWZpbmUgS19GMjAyIEsoS1RfRk4sMjExKQorI2RlZmluZSBLX0YxOTkgSyhLVF9GTiwgMjA4KQorI2RlZmluZSBLX0YyMDAgSyhLVF9GTiwgMjA5KQorI2RlZmluZSBLX0YyMDEgSyhLVF9GTiwgMjEwKQorI2RlZmluZSBLX0YyMDIgSyhLVF9GTiwgMjExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjAzIEsoS1RfRk4sMjEyKQotI2RlZmluZSBLX0YyMDQgSyhLVF9GTiwyMTMpCi0jZGVmaW5lIEtfRjIwNSBLKEtUX0ZOLDIxNCkKLSNkZWZpbmUgS19GMjA2IEsoS1RfRk4sMjE1KQorI2RlZmluZSBLX0YyMDMgSyhLVF9GTiwgMjEyKQorI2RlZmluZSBLX0YyMDQgSyhLVF9GTiwgMjEzKQorI2RlZmluZSBLX0YyMDUgSyhLVF9GTiwgMjE0KQorI2RlZmluZSBLX0YyMDYgSyhLVF9GTiwgMjE1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjA3IEsoS1RfRk4sMjE2KQotI2RlZmluZSBLX0YyMDggSyhLVF9GTiwyMTcpCi0jZGVmaW5lIEtfRjIwOSBLKEtUX0ZOLDIxOCkKLSNkZWZpbmUgS19GMjEwIEsoS1RfRk4sMjE5KQorI2RlZmluZSBLX0YyMDcgSyhLVF9GTiwgMjE2KQorI2RlZmluZSBLX0YyMDggSyhLVF9GTiwgMjE3KQorI2RlZmluZSBLX0YyMDkgSyhLVF9GTiwgMjE4KQorI2RlZmluZSBLX0YyMTAgSyhLVF9GTiwgMjE5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjExIEsoS1RfRk4sMjIwKQotI2RlZmluZSBLX0YyMTIgSyhLVF9GTiwyMjEpCi0jZGVmaW5lIEtfRjIxMyBLKEtUX0ZOLDIyMikKLSNkZWZpbmUgS19GMjE0IEsoS1RfRk4sMjIzKQorI2RlZmluZSBLX0YyMTEgSyhLVF9GTiwgMjIwKQorI2RlZmluZSBLX0YyMTIgSyhLVF9GTiwgMjIxKQorI2RlZmluZSBLX0YyMTMgSyhLVF9GTiwgMjIyKQorI2RlZmluZSBLX0YyMTQgSyhLVF9GTiwgMjIzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjE1IEsoS1RfRk4sMjI0KQotI2RlZmluZSBLX0YyMTYgSyhLVF9GTiwyMjUpCi0jZGVmaW5lIEtfRjIxNyBLKEtUX0ZOLDIyNikKLSNkZWZpbmUgS19GMjE4IEsoS1RfRk4sMjI3KQorI2RlZmluZSBLX0YyMTUgSyhLVF9GTiwgMjI0KQorI2RlZmluZSBLX0YyMTYgSyhLVF9GTiwgMjI1KQorI2RlZmluZSBLX0YyMTcgSyhLVF9GTiwgMjI2KQorI2RlZmluZSBLX0YyMTggSyhLVF9GTiwgMjI3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjE5IEsoS1RfRk4sMjI4KQotI2RlZmluZSBLX0YyMjAgSyhLVF9GTiwyMjkpCi0jZGVmaW5lIEtfRjIyMSBLKEtUX0ZOLDIzMCkKLSNkZWZpbmUgS19GMjIyIEsoS1RfRk4sMjMxKQorI2RlZmluZSBLX0YyMTkgSyhLVF9GTiwgMjI4KQorI2RlZmluZSBLX0YyMjAgSyhLVF9GTiwgMjI5KQorI2RlZmluZSBLX0YyMjEgSyhLVF9GTiwgMjMwKQorI2RlZmluZSBLX0YyMjIgSyhLVF9GTiwgMjMxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjIzIEsoS1RfRk4sMjMyKQotI2RlZmluZSBLX0YyMjQgSyhLVF9GTiwyMzMpCi0jZGVmaW5lIEtfRjIyNSBLKEtUX0ZOLDIzNCkKLSNkZWZpbmUgS19GMjI2IEsoS1RfRk4sMjM1KQorI2RlZmluZSBLX0YyMjMgSyhLVF9GTiwgMjMyKQorI2RlZmluZSBLX0YyMjQgSyhLVF9GTiwgMjMzKQorI2RlZmluZSBLX0YyMjUgSyhLVF9GTiwgMjM0KQorI2RlZmluZSBLX0YyMjYgSyhLVF9GTiwgMjM1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjI3IEsoS1RfRk4sMjM2KQotI2RlZmluZSBLX0YyMjggSyhLVF9GTiwyMzcpCi0jZGVmaW5lIEtfRjIyOSBLKEtUX0ZOLDIzOCkKLSNkZWZpbmUgS19GMjMwIEsoS1RfRk4sMjM5KQorI2RlZmluZSBLX0YyMjcgSyhLVF9GTiwgMjM2KQorI2RlZmluZSBLX0YyMjggSyhLVF9GTiwgMjM3KQorI2RlZmluZSBLX0YyMjkgSyhLVF9GTiwgMjM4KQorI2RlZmluZSBLX0YyMzAgSyhLVF9GTiwgMjM5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjMxIEsoS1RfRk4sMjQwKQotI2RlZmluZSBLX0YyMzIgSyhLVF9GTiwyNDEpCi0jZGVmaW5lIEtfRjIzMyBLKEtUX0ZOLDI0MikKLSNkZWZpbmUgS19GMjM0IEsoS1RfRk4sMjQzKQorI2RlZmluZSBLX0YyMzEgSyhLVF9GTiwgMjQwKQorI2RlZmluZSBLX0YyMzIgSyhLVF9GTiwgMjQxKQorI2RlZmluZSBLX0YyMzMgSyhLVF9GTiwgMjQyKQorI2RlZmluZSBLX0YyMzQgSyhLVF9GTiwgMjQzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjM1IEsoS1RfRk4sMjQ0KQotI2RlZmluZSBLX0YyMzYgSyhLVF9GTiwyNDUpCi0jZGVmaW5lIEtfRjIzNyBLKEtUX0ZOLDI0NikKLSNkZWZpbmUgS19GMjM4IEsoS1RfRk4sMjQ3KQorI2RlZmluZSBLX0YyMzUgSyhLVF9GTiwgMjQ0KQorI2RlZmluZSBLX0YyMzYgSyhLVF9GTiwgMjQ1KQorI2RlZmluZSBLX0YyMzcgSyhLVF9GTiwgMjQ2KQorI2RlZmluZSBLX0YyMzggSyhLVF9GTiwgMjQ3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjM5IEsoS1RfRk4sMjQ4KQotI2RlZmluZSBLX0YyNDAgSyhLVF9GTiwyNDkpCi0jZGVmaW5lIEtfRjI0MSBLKEtUX0ZOLDI1MCkKLSNkZWZpbmUgS19GMjQyIEsoS1RfRk4sMjUxKQorI2RlZmluZSBLX0YyMzkgSyhLVF9GTiwgMjQ4KQorI2RlZmluZSBLX0YyNDAgSyhLVF9GTiwgMjQ5KQorI2RlZmluZSBLX0YyNDEgSyhLVF9GTiwgMjUwKQorI2RlZmluZSBLX0YyNDIgSyhLVF9GTiwgMjUxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjQzIEsoS1RfRk4sMjUyKQotI2RlZmluZSBLX0YyNDQgSyhLVF9GTiwyNTMpCi0jZGVmaW5lIEtfRjI0NSBLKEtUX0ZOLDI1NCkKLSNkZWZpbmUgS19VTkRPIEsoS1RfRk4sMjU1KQorI2RlZmluZSBLX0YyNDMgSyhLVF9GTiwgMjUyKQorI2RlZmluZSBLX0YyNDQgSyhLVF9GTiwgMjUzKQorI2RlZmluZSBLX0YyNDUgSyhLVF9GTiwgMjU0KQorI2RlZmluZSBLX1VORE8gSyhLVF9GTiwgMjU1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19IT0xFIEsoS1RfU1BFQywwKQotI2RlZmluZSBLX0VOVEVSIEsoS1RfU1BFQywxKQotI2RlZmluZSBLX1NIX1JFR1MgSyhLVF9TUEVDLDIpCi0jZGVmaW5lIEtfU0hfTUVNIEsoS1RfU1BFQywzKQorI2RlZmluZSBLX0hPTEUgSyhLVF9TUEVDLCAwKQorI2RlZmluZSBLX0VOVEVSIEsoS1RfU1BFQywgMSkKKyNkZWZpbmUgS19TSF9SRUdTIEsoS1RfU1BFQywgMikKKyNkZWZpbmUgS19TSF9NRU0gSyhLVF9TUEVDLCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19TSF9TVEFUIEsoS1RfU1BFQyw0KQotI2RlZmluZSBLX0JSRUFLIEsoS1RfU1BFQyw1KQotI2RlZmluZSBLX0NPTlMgSyhLVF9TUEVDLDYpCi0jZGVmaW5lIEtfQ0FQUyBLKEtUX1NQRUMsNykKKyNkZWZpbmUgS19TSF9TVEFUIEsoS1RfU1BFQywgNCkKKyNkZWZpbmUgS19CUkVBSyBLKEtUX1NQRUMsIDUpCisjZGVmaW5lIEtfQ09OUyBLKEtUX1NQRUMsIDYpCisjZGVmaW5lIEtfQ0FQUyBLKEtUX1NQRUMsIDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX05VTSBLKEtUX1NQRUMsOCkKLSNkZWZpbmUgS19IT0xEIEsoS1RfU1BFQyw5KQotI2RlZmluZSBLX1NDUk9MTEZPUlcgSyhLVF9TUEVDLDEwKQotI2RlZmluZSBLX1NDUk9MTEJBQ0sgSyhLVF9TUEVDLDExKQorI2RlZmluZSBLX05VTSBLKEtUX1NQRUMsIDgpCisjZGVmaW5lIEtfSE9MRCBLKEtUX1NQRUMsIDkpCisjZGVmaW5lIEtfU0NST0xMRk9SVyBLKEtUX1NQRUMsIDEwKQorI2RlZmluZSBLX1NDUk9MTEJBQ0sgSyhLVF9TUEVDLCAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQk9PVCBLKEtUX1NQRUMsMTIpCi0jZGVmaW5lIEtfQ0FQU09OIEsoS1RfU1BFQywxMykKLSNkZWZpbmUgS19DT01QT1NFIEsoS1RfU1BFQywxNCkKLSNkZWZpbmUgS19TQUsgSyhLVF9TUEVDLDE1KQorI2RlZmluZSBLX0JPT1QgSyhLVF9TUEVDLCAxMikKKyNkZWZpbmUgS19DQVBTT04gSyhLVF9TUEVDLCAxMykKKyNkZWZpbmUgS19DT01QT1NFIEsoS1RfU1BFQywgMTQpCisjZGVmaW5lIEtfU0FLIEsoS1RfU1BFQywgMTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0RFQ1JDT05TT0xFIEsoS1RfU1BFQywxNikKLSNkZWZpbmUgS19JTkNSQ09OU09MRSBLKEtUX1NQRUMsMTcpCi0jZGVmaW5lIEtfU1BBV05DT05TT0xFIEsoS1RfU1BFQywxOCkKLSNkZWZpbmUgS19CQVJFTlVNTE9DSyBLKEtUX1NQRUMsMTkpCisjZGVmaW5lIEtfREVDUkNPTlNPTEUgSyhLVF9TUEVDLCAxNikKKyNkZWZpbmUgS19JTkNSQ09OU09MRSBLKEtUX1NQRUMsIDE3KQorI2RlZmluZSBLX1NQQVdOQ09OU09MRSBLKEtUX1NQRUMsIDE4KQorI2RlZmluZSBLX0JBUkVOVU1MT0NLIEsoS1RfU1BFQywgMTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0FMTE9DQVRFRCBLKEtUX1NQRUMsMTI2KQotI2RlZmluZSBLX05PU1VDSE1BUCBLKEtUX1NQRUMsMTI3KQotI2RlZmluZSBLX1AwIEsoS1RfUEFELDApCi0jZGVmaW5lIEtfUDEgSyhLVF9QQUQsMSkKKyNkZWZpbmUgS19BTExPQ0FURUQgSyhLVF9TUEVDLCAxMjYpCisjZGVmaW5lIEtfTk9TVUNITUFQIEsoS1RfU1BFQywgMTI3KQorI2RlZmluZSBLX1AwIEsoS1RfUEFELCAwKQorI2RlZmluZSBLX1AxIEsoS1RfUEFELCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19QMiBLKEtUX1BBRCwyKQotI2RlZmluZSBLX1AzIEsoS1RfUEFELDMpCi0jZGVmaW5lIEtfUDQgSyhLVF9QQUQsNCkKLSNkZWZpbmUgS19QNSBLKEtUX1BBRCw1KQorI2RlZmluZSBLX1AyIEsoS1RfUEFELCAyKQorI2RlZmluZSBLX1AzIEsoS1RfUEFELCAzKQorI2RlZmluZSBLX1A0IEsoS1RfUEFELCA0KQorI2RlZmluZSBLX1A1IEsoS1RfUEFELCA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19QNiBLKEtUX1BBRCw2KQotI2RlZmluZSBLX1A3IEsoS1RfUEFELDcpCi0jZGVmaW5lIEtfUDggSyhLVF9QQUQsOCkKLSNkZWZpbmUgS19QOSBLKEtUX1BBRCw5KQorI2RlZmluZSBLX1A2IEsoS1RfUEFELCA2KQorI2RlZmluZSBLX1A3IEsoS1RfUEFELCA3KQorI2RlZmluZSBLX1A4IEsoS1RfUEFELCA4KQorI2RlZmluZSBLX1A5IEsoS1RfUEFELCA5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19QUExVUyBLKEtUX1BBRCwxMCkKLSNkZWZpbmUgS19QTUlOVVMgSyhLVF9QQUQsMTEpCi0jZGVmaW5lIEtfUFNUQVIgSyhLVF9QQUQsMTIpCi0jZGVmaW5lIEtfUFNMQVNIIEsoS1RfUEFELDEzKQorI2RlZmluZSBLX1BQTFVTIEsoS1RfUEFELCAxMCkKKyNkZWZpbmUgS19QTUlOVVMgSyhLVF9QQUQsIDExKQorI2RlZmluZSBLX1BTVEFSIEsoS1RfUEFELCAxMikKKyNkZWZpbmUgS19QU0xBU0ggSyhLVF9QQUQsIDEzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19QRU5URVIgSyhLVF9QQUQsMTQpCi0jZGVmaW5lIEtfUENPTU1BIEsoS1RfUEFELDE1KQotI2RlZmluZSBLX1BET1QgSyhLVF9QQUQsMTYpCi0jZGVmaW5lIEtfUFBMVVNNSU5VUyBLKEtUX1BBRCwxNykKKyNkZWZpbmUgS19QRU5URVIgSyhLVF9QQUQsIDE0KQorI2RlZmluZSBLX1BDT01NQSBLKEtUX1BBRCwgMTUpCisjZGVmaW5lIEtfUERPVCBLKEtUX1BBRCwgMTYpCisjZGVmaW5lIEtfUFBMVVNNSU5VUyBLKEtUX1BBRCwgMTcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1BQQVJFTkwgSyhLVF9QQUQsMTgpCi0jZGVmaW5lIEtfUFBBUkVOUiBLKEtUX1BBRCwxOSkKKyNkZWZpbmUgS19QUEFSRU5MIEsoS1RfUEFELCAxOCkKKyNkZWZpbmUgS19QUEFSRU5SIEsoS1RfUEFELCAxOSkKICNkZWZpbmUgTlJfUEFEIDIwCi0jZGVmaW5lIEtfREdSQVZFIEsoS1RfREVBRCwwKQorI2RlZmluZSBLX0RHUkFWRSBLKEtUX0RFQUQsIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0RBQ1VURSBLKEtUX0RFQUQsMSkKLSNkZWZpbmUgS19EQ0lSQ00gSyhLVF9ERUFELDIpCi0jZGVmaW5lIEtfRFRJTERFIEsoS1RfREVBRCwzKQotI2RlZmluZSBLX0RESUVSRSBLKEtUX0RFQUQsNCkKKyNkZWZpbmUgS19EQUNVVEUgSyhLVF9ERUFELCAxKQorI2RlZmluZSBLX0RDSVJDTSBLKEtUX0RFQUQsIDIpCisjZGVmaW5lIEtfRFRJTERFIEsoS1RfREVBRCwgMykKKyNkZWZpbmUgS19ERElFUkUgSyhLVF9ERUFELCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19EQ0VESUwgSyhLVF9ERUFELDUpCisjZGVmaW5lIEtfRENFRElMIEsoS1RfREVBRCwgNSkKICNkZWZpbmUgTlJfREVBRCA2Ci0jZGVmaW5lIEtfRE9XTiBLKEtUX0NVUiwwKQotI2RlZmluZSBLX0xFRlQgSyhLVF9DVVIsMSkKKyNkZWZpbmUgS19ET1dOIEsoS1RfQ1VSLCAwKQorI2RlZmluZSBLX0xFRlQgSyhLVF9DVVIsIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1JJR0hUIEsoS1RfQ1VSLDIpCi0jZGVmaW5lIEtfVVAgSyhLVF9DVVIsMykKLSNkZWZpbmUgS19TSElGVCBLKEtUX1NISUZULEtHX1NISUZUKQotI2RlZmluZSBLX0NUUkwgSyhLVF9TSElGVCxLR19DVFJMKQorI2RlZmluZSBLX1JJR0hUIEsoS1RfQ1VSLCAyKQorI2RlZmluZSBLX1VQIEsoS1RfQ1VSLCAzKQorI2RlZmluZSBLX1NISUZUIEsoS1RfU0hJRlQsIEtHX1NISUZUKQorI2RlZmluZSBLX0NUUkwgSyhLVF9TSElGVCwgS0dfQ1RSTCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQUxUIEsoS1RfU0hJRlQsS0dfQUxUKQotI2RlZmluZSBLX0FMVEdSIEsoS1RfU0hJRlQsS0dfQUxUR1IpCi0jZGVmaW5lIEtfU0hJRlRMIEsoS1RfU0hJRlQsS0dfU0hJRlRMKQotI2RlZmluZSBLX1NISUZUUiBLKEtUX1NISUZULEtHX1NISUZUUikKKyNkZWZpbmUgS19BTFQgSyhLVF9TSElGVCwgS0dfQUxUKQorI2RlZmluZSBLX0FMVEdSIEsoS1RfU0hJRlQsIEtHX0FMVEdSKQorI2RlZmluZSBLX1NISUZUTCBLKEtUX1NISUZULCBLR19TSElGVEwpCisjZGVmaW5lIEtfU0hJRlRSIEsoS1RfU0hJRlQsIEtHX1NISUZUUikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQ1RSTEwgSyhLVF9TSElGVCxLR19DVFJMTCkKLSNkZWZpbmUgS19DVFJMUiBLKEtUX1NISUZULEtHX0NUUkxSKQotI2RlZmluZSBLX0NBUFNTSElGVCBLKEtUX1NISUZULEtHX0NBUFNTSElGVCkKLSNkZWZpbmUgS19BU0MwIEsoS1RfQVNDSUksMCkKKyNkZWZpbmUgS19DVFJMTCBLKEtUX1NISUZULCBLR19DVFJMTCkKKyNkZWZpbmUgS19DVFJMUiBLKEtUX1NISUZULCBLR19DVFJMUikKKyNkZWZpbmUgS19DQVBTU0hJRlQgSyhLVF9TSElGVCwgS0dfQ0FQU1NISUZUKQorI2RlZmluZSBLX0FTQzAgSyhLVF9BU0NJSSwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQVNDMSBLKEtUX0FTQ0lJLDEpCi0jZGVmaW5lIEtfQVNDMiBLKEtUX0FTQ0lJLDIpCi0jZGVmaW5lIEtfQVNDMyBLKEtUX0FTQ0lJLDMpCi0jZGVmaW5lIEtfQVNDNCBLKEtUX0FTQ0lJLDQpCisjZGVmaW5lIEtfQVNDMSBLKEtUX0FTQ0lJLCAxKQorI2RlZmluZSBLX0FTQzIgSyhLVF9BU0NJSSwgMikKKyNkZWZpbmUgS19BU0MzIEsoS1RfQVNDSUksIDMpCisjZGVmaW5lIEtfQVNDNCBLKEtUX0FTQ0lJLCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19BU0M1IEsoS1RfQVNDSUksNSkKLSNkZWZpbmUgS19BU0M2IEsoS1RfQVNDSUksNikKLSNkZWZpbmUgS19BU0M3IEsoS1RfQVNDSUksNykKLSNkZWZpbmUgS19BU0M4IEsoS1RfQVNDSUksOCkKKyNkZWZpbmUgS19BU0M1IEsoS1RfQVNDSUksIDUpCisjZGVmaW5lIEtfQVNDNiBLKEtUX0FTQ0lJLCA2KQorI2RlZmluZSBLX0FTQzcgSyhLVF9BU0NJSSwgNykKKyNkZWZpbmUgS19BU0M4IEsoS1RfQVNDSUksIDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0FTQzkgSyhLVF9BU0NJSSw5KQotI2RlZmluZSBLX0hFWDAgSyhLVF9BU0NJSSwxMCkKLSNkZWZpbmUgS19IRVgxIEsoS1RfQVNDSUksMTEpCi0jZGVmaW5lIEtfSEVYMiBLKEtUX0FTQ0lJLDEyKQorI2RlZmluZSBLX0FTQzkgSyhLVF9BU0NJSSwgOSkKKyNkZWZpbmUgS19IRVgwIEsoS1RfQVNDSUksIDEwKQorI2RlZmluZSBLX0hFWDEgSyhLVF9BU0NJSSwgMTEpCisjZGVmaW5lIEtfSEVYMiBLKEtUX0FTQ0lJLCAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfSEVYMyBLKEtUX0FTQ0lJLDEzKQotI2RlZmluZSBLX0hFWDQgSyhLVF9BU0NJSSwxNCkKLSNkZWZpbmUgS19IRVg1IEsoS1RfQVNDSUksMTUpCi0jZGVmaW5lIEtfSEVYNiBLKEtUX0FTQ0lJLDE2KQorI2RlZmluZSBLX0hFWDMgSyhLVF9BU0NJSSwgMTMpCisjZGVmaW5lIEtfSEVYNCBLKEtUX0FTQ0lJLCAxNCkKKyNkZWZpbmUgS19IRVg1IEsoS1RfQVNDSUksIDE1KQorI2RlZmluZSBLX0hFWDYgSyhLVF9BU0NJSSwgMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0hFWDcgSyhLVF9BU0NJSSwxNykKLSNkZWZpbmUgS19IRVg4IEsoS1RfQVNDSUksMTgpCi0jZGVmaW5lIEtfSEVYOSBLKEtUX0FTQ0lJLDE5KQotI2RlZmluZSBLX0hFWGEgSyhLVF9BU0NJSSwyMCkKKyNkZWZpbmUgS19IRVg3IEsoS1RfQVNDSUksIDE3KQorI2RlZmluZSBLX0hFWDggSyhLVF9BU0NJSSwgMTgpCisjZGVmaW5lIEtfSEVYOSBLKEtUX0FTQ0lJLCAxOSkKKyNkZWZpbmUgS19IRVhhIEsoS1RfQVNDSUksIDIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19IRVhiIEsoS1RfQVNDSUksMjEpCi0jZGVmaW5lIEtfSEVYYyBLKEtUX0FTQ0lJLDIyKQotI2RlZmluZSBLX0hFWGQgSyhLVF9BU0NJSSwyMykKLSNkZWZpbmUgS19IRVhlIEsoS1RfQVNDSUksMjQpCisjZGVmaW5lIEtfSEVYYiBLKEtUX0FTQ0lJLCAyMSkKKyNkZWZpbmUgS19IRVhjIEsoS1RfQVNDSUksIDIyKQorI2RlZmluZSBLX0hFWGQgSyhLVF9BU0NJSSwgMjMpCisjZGVmaW5lIEtfSEVYZSBLKEtUX0FTQ0lJLCAyNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfSEVYZiBLKEtUX0FTQ0lJLDI1KQorI2RlZmluZSBLX0hFWGYgSyhLVF9BU0NJSSwgMjUpCiAjZGVmaW5lIE5SX0FTQ0lJIDI2Ci0jZGVmaW5lIEtfU0hJRlRMT0NLIEsoS1RfTE9DSyxLR19TSElGVCkKLSNkZWZpbmUgS19DVFJMTE9DSyBLKEtUX0xPQ0ssS0dfQ1RSTCkKKyNkZWZpbmUgS19TSElGVExPQ0sgSyhLVF9MT0NLLCBLR19TSElGVCkKKyNkZWZpbmUgS19DVFJMTE9DSyBLKEtUX0xPQ0ssIEtHX0NUUkwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0FMVExPQ0sgSyhLVF9MT0NLLEtHX0FMVCkKLSNkZWZpbmUgS19BTFRHUkxPQ0sgSyhLVF9MT0NLLEtHX0FMVEdSKQotI2RlZmluZSBLX1NISUZUTExPQ0sgSyhLVF9MT0NLLEtHX1NISUZUTCkKLSNkZWZpbmUgS19TSElGVFJMT0NLIEsoS1RfTE9DSyxLR19TSElGVFIpCisjZGVmaW5lIEtfQUxUTE9DSyBLKEtUX0xPQ0ssIEtHX0FMVCkKKyNkZWZpbmUgS19BTFRHUkxPQ0sgSyhLVF9MT0NLLCBLR19BTFRHUikKKyNkZWZpbmUgS19TSElGVExMT0NLIEsoS1RfTE9DSywgS0dfU0hJRlRMKQorI2RlZmluZSBLX1NISUZUUkxPQ0sgSyhLVF9MT0NLLCBLR19TSElGVFIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0NUUkxMTE9DSyBLKEtUX0xPQ0ssS0dfQ1RSTEwpCi0jZGVmaW5lIEtfQ1RSTFJMT0NLIEsoS1RfTE9DSyxLR19DVFJMUikKLSNkZWZpbmUgS19DQVBTU0hJRlRMT0NLIEsoS1RfTE9DSyxLR19DQVBTU0hJRlQpCi0jZGVmaW5lIEtfU0hJRlRfU0xPQ0sgSyhLVF9TTE9DSyxLR19TSElGVCkKKyNkZWZpbmUgS19DVFJMTExPQ0sgSyhLVF9MT0NLLCBLR19DVFJMTCkKKyNkZWZpbmUgS19DVFJMUkxPQ0sgSyhLVF9MT0NLLCBLR19DVFJMUikKKyNkZWZpbmUgS19DQVBTU0hJRlRMT0NLIEsoS1RfTE9DSywgS0dfQ0FQU1NISUZUKQorI2RlZmluZSBLX1NISUZUX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX1NISUZUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19DVFJMX1NMT0NLIEsoS1RfU0xPQ0ssS0dfQ1RSTCkKLSNkZWZpbmUgS19BTFRfU0xPQ0sgSyhLVF9TTE9DSyxLR19BTFQpCi0jZGVmaW5lIEtfQUxUR1JfU0xPQ0sgSyhLVF9TTE9DSyxLR19BTFRHUikKLSNkZWZpbmUgS19TSElGVExfU0xPQ0sgSyhLVF9TTE9DSyxLR19TSElGVEwpCisjZGVmaW5lIEtfQ1RSTF9TTE9DSyBLKEtUX1NMT0NLLCBLR19DVFJMKQorI2RlZmluZSBLX0FMVF9TTE9DSyBLKEtUX1NMT0NLLCBLR19BTFQpCisjZGVmaW5lIEtfQUxUR1JfU0xPQ0sgSyhLVF9TTE9DSywgS0dfQUxUR1IpCisjZGVmaW5lIEtfU0hJRlRMX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX1NISUZUTCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfU0hJRlRSX1NMT0NLIEsoS1RfU0xPQ0ssS0dfU0hJRlRSKQotI2RlZmluZSBLX0NUUkxMX1NMT0NLIEsoS1RfU0xPQ0ssS0dfQ1RSTEwpCi0jZGVmaW5lIEtfQ1RSTFJfU0xPQ0sgSyhLVF9TTE9DSyxLR19DVFJMUikKLSNkZWZpbmUgS19DQVBTU0hJRlRfU0xPQ0sgSyhLVF9TTE9DSyxLR19DQVBTU0hJRlQpCisjZGVmaW5lIEtfU0hJRlRSX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX1NISUZUUikKKyNkZWZpbmUgS19DVFJMTF9TTE9DSyBLKEtUX1NMT0NLLCBLR19DVFJMTCkKKyNkZWZpbmUgS19DVFJMUl9TTE9DSyBLKEtUX1NMT0NLLCBLR19DVFJMUikKKyNkZWZpbmUgS19DQVBTU0hJRlRfU0xPQ0sgSyhLVF9TTE9DSywgS0dfQ0FQU1NISUZUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlJfTE9DSyA5CiAjZGVmaW5lIEtfQlJMX0JMQU5LIEsoS1RfQlJMLCAwKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljaG9yZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljaG9yZC5oCmluZGV4IGQxMzI2MmIuLjVmZDM5MTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Y2hvcmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWNob3JkLmgKQEAgLTIyLDEwICsyMiwxMCBAQAogI2RlZmluZSBLRVlDSE9SRF9WRVJTSU9OIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW5wdXRfa2V5Y2hvcmQgewotIF9fdTE2IHZlcnNpb247Ci0gX191MTYgaWQ7Ci0gX191MTYgY291bnQ7CisgIF9fdTE2IHZlcnNpb247CisgIF9fdTE2IGlkOworICBfX3UxNiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYga2V5Y29kZXNbXTsKKyAgX191MTYga2V5Y29kZXNbXTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Y3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWN0bC5oCmluZGV4IDk0MWUwZDUuLjE1MmNhNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Y3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljdGwuaApAQCAtMTgsMTcgKzE4LDE3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0xJTlVYX0tFWUNUTF9ICiAjZGVmaW5lIF9MSU5VWF9LRVlDVExfSAotI2RlZmluZSBLRVlfU1BFQ19USFJFQURfS0VZUklORyAtMQotI2RlZmluZSBLRVlfU1BFQ19QUk9DRVNTX0tFWVJJTkcgLTIKKyNkZWZpbmUgS0VZX1NQRUNfVEhSRUFEX0tFWVJJTkcgLSAxCisjZGVmaW5lIEtFWV9TUEVDX1BST0NFU1NfS0VZUklORyAtIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtFWV9TUEVDX1NFU1NJT05fS0VZUklORyAtMwotI2RlZmluZSBLRVlfU1BFQ19VU0VSX0tFWVJJTkcgLTQKLSNkZWZpbmUgS0VZX1NQRUNfVVNFUl9TRVNTSU9OX0tFWVJJTkcgLTUKLSNkZWZpbmUgS0VZX1NQRUNfR1JPVVBfS0VZUklORyAtNgorI2RlZmluZSBLRVlfU1BFQ19TRVNTSU9OX0tFWVJJTkcgLSAzCisjZGVmaW5lIEtFWV9TUEVDX1VTRVJfS0VZUklORyAtIDQKKyNkZWZpbmUgS0VZX1NQRUNfVVNFUl9TRVNTSU9OX0tFWVJJTkcgLSA1CisjZGVmaW5lIEtFWV9TUEVDX0dST1VQX0tFWVJJTkcgLSA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLRVlfU1BFQ19SRVFLRVlfQVVUSF9LRVkgLTcKLSNkZWZpbmUgS0VZX1NQRUNfUkVRVUVTVE9SX0tFWVJJTkcgLTgKLSNkZWZpbmUgS0VZX1JFUUtFWV9ERUZMX05PX0NIQU5HRSAtMQorI2RlZmluZSBLRVlfU1BFQ19SRVFLRVlfQVVUSF9LRVkgLSA3CisjZGVmaW5lIEtFWV9TUEVDX1JFUVVFU1RPUl9LRVlSSU5HIC0gOAorI2RlZmluZSBLRVlfUkVRS0VZX0RFRkxfTk9fQ0hBTkdFIC0gMQogI2RlZmluZSBLRVlfUkVRS0VZX0RFRkxfREVGQVVMVCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVlfUkVRS0VZX0RFRkxfVEhSRUFEX0tFWVJJTkcgMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva3ZtLmgKaW5kZXggZTY0ZjliNS4uODcwZmE2NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2t2bS5oCkBAIC02Nyw3NyArNjcsNzcgQEAKICNkZWZpbmUgS1ZNX1RSQ19QUENfSU5TVFIgKEtWTV9UUkNfSEFORExFUiArIDB4MTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV91c2VyX3RyYWNlX3NldHVwIHsKLSBfX3UzMiBidWZfc2l6ZTsKLSBfX3UzMiBidWZfbnI7CisgIF9fdTMyIGJ1Zl9zaXplOworICBfX3UzMiBidWZfbnI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19LVk1fREVQUkVDQVRFRF9NQUlOX1dfMHgwNiAgIF9JT1coS1ZNSU8sIDB4MDYsIHN0cnVjdCBrdm1fdXNlcl90cmFjZV9zZXR1cCkKKyNkZWZpbmUgX19LVk1fREVQUkVDQVRFRF9NQUlOX1dfMHgwNiBfSU9XKEtWTUlPLCAweDA2LCBzdHJ1Y3Qga3ZtX3VzZXJfdHJhY2Vfc2V0dXApCiAjZGVmaW5lIF9fS1ZNX0RFUFJFQ0FURURfTUFJTl8weDA3IF9JTyhLVk1JTywgMHgwNykKICNkZWZpbmUgX19LVk1fREVQUkVDQVRFRF9NQUlOXzB4MDggX0lPKEtWTUlPLCAweDA4KQogI2RlZmluZSBfX0tWTV9ERVBSRUNBVEVEX1ZNX1JfMHg3MCBfSU9SKEtWTUlPLCAweDcwLCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX2lycSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2JyZWFrcG9pbnQgewotIF9fdTMyIGVuYWJsZWQ7Ci0gX191MzIgcGFkZGluZzsKLSBfX3U2NCBhZGRyZXNzOworICBfX3UzMiBlbmFibGVkOworICBfX3UzMiBwYWRkaW5nOworICBfX3U2NCBhZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX2RlYnVnX2d1ZXN0IHsKLSBfX3UzMiBlbmFibGVkOwotIF9fdTMyIHBhZDsKKyAgX191MzIgZW5hYmxlZDsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qga3ZtX2JyZWFrcG9pbnQgYnJlYWtwb2ludHNbNF07Ci0gX191MzIgc2luZ2xlc3RlcDsKKyAgc3RydWN0IGt2bV9icmVha3BvaW50IGJyZWFrcG9pbnRzWzRdOworICBfX3UzMiBzaW5nbGVzdGVwOwogfTsKICNkZWZpbmUgX19LVk1fREVQUkVDQVRFRF9WQ1BVX1dfMHg4NyBfSU9XKEtWTUlPLCAweDg3LCBzdHJ1Y3Qga3ZtX2RlYnVnX2d1ZXN0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fbWVtb3J5X3JlZ2lvbiB7Ci0gX191MzIgc2xvdDsKLSBfX3UzMiBmbGFnczsKLSBfX3U2NCBndWVzdF9waHlzX2FkZHI7CisgIF9fdTMyIHNsb3Q7CisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBndWVzdF9waHlzX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1lbW9yeV9zaXplOworICBfX3U2NCBtZW1vcnlfc2l6ZTsKIH07CiBzdHJ1Y3Qga3ZtX3VzZXJzcGFjZV9tZW1vcnlfcmVnaW9uIHsKLSBfX3UzMiBzbG90OworICBfX3UzMiBzbG90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3U2NCBndWVzdF9waHlzX2FkZHI7Ci0gX191NjQgbWVtb3J5X3NpemU7Ci0gX191NjQgdXNlcnNwYWNlX2FkZHI7CisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBndWVzdF9waHlzX2FkZHI7CisgIF9fdTY0IG1lbW9yeV9zaXplOworICBfX3U2NCB1c2Vyc3BhY2VfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBLVk1fTUVNX0xPR19ESVJUWV9QQUdFUyAoMVVMIDw8IDApCiAjZGVmaW5lIEtWTV9NRU1fUkVBRE9OTFkgKDFVTCA8PCAxKQogc3RydWN0IGt2bV9pcnFfbGV2ZWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX191MzIgaXJxOwotIF9fczMyIHN0YXR1czsKLSB9OworICB1bmlvbiB7CisgICAgX191MzIgaXJxOworICAgIF9fczMyIHN0YXR1czsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGV2ZWw7CisgIF9fdTMyIGxldmVsOwogfTsKIHN0cnVjdCBrdm1faXJxY2hpcCB7Ci0gX191MzIgY2hpcF9pZDsKKyAgX191MzIgY2hpcF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOwotIHVuaW9uIHsKLSBjaGFyIGR1bW15WzUxMl07CisgIF9fdTMyIHBhZDsKKyAgdW5pb24geworICAgIGNoYXIgZHVtbXlbNTEyXTsKICNpZmRlZiBfX0tWTV9IQVZFX1BJVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qga3ZtX3BpY19zdGF0ZSBwaWM7CisgICAgc3RydWN0IGt2bV9waWNfc3RhdGUgcGljOwogI2VuZGlmCiAjaWZkZWYgX19LVk1fSEFWRV9JT0FQSUMKLSBzdHJ1Y3Qga3ZtX2lvYXBpY19zdGF0ZSBpb2FwaWM7CisgICAgc3RydWN0IGt2bV9pb2FwaWNfc3RhdGUgaW9hcGljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIH0gY2hpcDsKKyAgfSBjaGlwOwogfTsKIHN0cnVjdCBrdm1fcGl0X2NvbmZpZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHBhZFsxNV07CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBwYWRbMTVdOwogfTsKICNkZWZpbmUgS1ZNX1BJVF9TUEVBS0VSX0RVTU1ZIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNzEsODQ0ICsxNzEsOTYzIEBACiAjZGVmaW5lIEtWTV9FWElUX1MzOTBfVFNDSCAyMgogI2RlZmluZSBLVk1fRVhJVF9FUFIgMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9FWElUX1NZU1RFTV9FVkVOVCAyNAogI2RlZmluZSBLVk1fSU5URVJOQUxfRVJST1JfRU1VTEFUSU9OIDEKICNkZWZpbmUgS1ZNX0lOVEVSTkFMX0VSUk9SX1NJTVVMX0VYIDIKICNkZWZpbmUgS1ZNX0lOVEVSTkFMX0VSUk9SX0RFTElWRVJZX0VWIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3J1biB7CisgIF9fdTggcmVxdWVzdF9pbnRlcnJ1cHRfd2luZG93OworICBfX3U4IHBhZGRpbmcxWzddOworICBfX3UzMiBleGl0X3JlYXNvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXF1ZXN0X2ludGVycnVwdF93aW5kb3c7Ci0gX191OCBwYWRkaW5nMVs3XTsKLSBfX3UzMiBleGl0X3JlYXNvbjsKLSBfX3U4IHJlYWR5X2Zvcl9pbnRlcnJ1cHRfaW5qZWN0aW9uOworICBfX3U4IHJlYWR5X2Zvcl9pbnRlcnJ1cHRfaW5qZWN0aW9uOworICBfX3U4IGlmX2ZsYWc7CisgIF9fdTggcGFkZGluZzJbMl07CisgIF9fdTY0IGNyODsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpZl9mbGFnOwotIF9fdTggcGFkZGluZzJbMl07Ci0gX191NjQgY3I4OwotIF9fdTY0IGFwaWNfYmFzZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGFwaWNfYmFzZTsKICNpZmRlZiBfX0tWTV9TMzkwCi0gX191NjQgcHN3X21hc2s7Ci0gX191NjQgcHN3X2FkZHI7CisgIF9fdTY0IHBzd19tYXNrOworICBfX3U2NCBwc3dfYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBoYXJkd2FyZV9leGl0X3JlYXNvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191NjQgaGFyZHdhcmVfZXhpdF9yZWFzb247Ci0gfSBodzsKKyAgICB9IGh3OworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBoYXJkd2FyZV9lbnRyeV9mYWlsdXJlX3JlYXNvbjsKKyAgICB9IGZhaWxfZW50cnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191NjQgaGFyZHdhcmVfZW50cnlfZmFpbHVyZV9yZWFzb247Ci0gfSBmYWlsX2VudHJ5OwotIHN0cnVjdCB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGV4Y2VwdGlvbjsKKyAgICAgIF9fdTMyIGVycm9yX2NvZGU7CisgICAgfSBleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXhjZXB0aW9uOwotIF9fdTMyIGVycm9yX2NvZGU7Ci0gfSBleDsKLSBzdHJ1Y3QgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBzdHJ1Y3QgewogI2RlZmluZSBLVk1fRVhJVF9JT19JTiAwCiAjZGVmaW5lIEtWTV9FWElUX0lPX09VVCAxCi0gX191OCBkaXJlY3Rpb247Ci0gX191OCBzaXplOworICAgICAgX191OCBkaXJlY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBvcnQ7Ci0gX191MzIgY291bnQ7Ci0gX191NjQgZGF0YV9vZmZzZXQ7Ci0gfSBpbzsKKyAgICAgIF9fdTggc2l6ZTsKKyAgICAgIF9fdTE2IHBvcnQ7CisgICAgICBfX3UzMiBjb3VudDsKKyAgICAgIF9fdTY0IGRhdGFfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHN0cnVjdCBrdm1fZGVidWdfZXhpdF9hcmNoIGFyY2g7Ci0gfSBkZWJ1ZzsKLSBzdHJ1Y3QgeworICAgIH0gaW87CisgICAgc3RydWN0IHsKKyAgICAgIHN0cnVjdCBrdm1fZGVidWdfZXhpdF9hcmNoIGFyY2g7CisgICAgfSBkZWJ1ZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGh5c19hZGRyOwotIF9fdTggZGF0YVs4XTsKLSBfX3UzMiBsZW47Ci0gX191OCBpc193cml0ZTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcGh5c19hZGRyOworICAgICAgX191OCBkYXRhWzhdOworICAgICAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG1taW87Ci0gc3RydWN0IHsKLSBfX3U2NCBucjsKLSBfX3U2NCBhcmdzWzZdOworICAgICAgX191OCBpc193cml0ZTsKKyAgICB9IG1taW87CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IG5yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXQ7Ci0gX191MzIgbG9uZ21vZGU7Ci0gX191MzIgcGFkOwotIH0gaHlwZXJjYWxsOworICAgICAgX191NjQgYXJnc1s2XTsKKyAgICAgIF9fdTY0IHJldDsKKyAgICAgIF9fdTMyIGxvbmdtb2RlOworICAgICAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTY0IHJpcDsKLSBfX3UzMiBpc193cml0ZTsKLSBfX3UzMiBwYWQ7CisgICAgfSBoeXBlcmNhbGw7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHJpcDsKKyAgICAgIF9fdTMyIGlzX3dyaXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHRwcl9hY2Nlc3M7Ci0gc3RydWN0IHsKLSBfX3U4IGljcHRjb2RlOwotIF9fdTE2IGlwYTsKKyAgICAgIF9fdTMyIHBhZDsKKyAgICB9IHRwcl9hY2Nlc3M7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggaWNwdGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlwYjsKLSB9IHMzOTBfc2llaWM7CisgICAgICBfX3UxNiBpcGE7CisgICAgICBfX3UzMiBpcGI7CisgICAgfSBzMzkwX3NpZWljOwogI2RlZmluZSBLVk1fUzM5MF9SRVNFVF9QT1IgMQotI2RlZmluZSBLVk1fUzM5MF9SRVNFVF9DTEVBUiAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUzM5MF9SRVNFVF9DTEVBUiAyCiAjZGVmaW5lIEtWTV9TMzkwX1JFU0VUX1NVQlNZU1RFTSA0CiAjZGVmaW5lIEtWTV9TMzkwX1JFU0VUX0NQVV9JTklUIDgKICNkZWZpbmUgS1ZNX1MzOTBfUkVTRVRfSVBMIDE2Ci0gX191NjQgczM5MF9yZXNldF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U2NCB0cmFuc19leGNfY29kZTsKLSBfX3UzMiBwZ21fY29kZTsKLSB9IHMzOTBfdWNvbnRyb2w7CisgICAgX191NjQgczM5MF9yZXNldF9mbGFnczsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgdHJhbnNfZXhjX2NvZGU7CisgICAgICBfX3UzMiBwZ21fY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3UzMiBkY3JuOwotIF9fdTMyIGRhdGE7Ci0gX191OCBpc193cml0ZTsKKyAgICB9IHMzOTBfdWNvbnRyb2w7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGRjcm47CisgICAgICBfX3UzMiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGRjcjsKLSBzdHJ1Y3QgewotIF9fdTMyIHN1YmVycm9yOwotIF9fdTMyIG5kYXRhOworICAgICAgX191OCBpc193cml0ZTsKKyAgICB9IGRjcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgc3ViZXJyb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGFbMTZdOwotIH0gaW50ZXJuYWw7Ci0gc3RydWN0IHsKLSBfX3U2NCBncHJzWzMyXTsKKyAgICAgIF9fdTMyIG5kYXRhOworICAgICAgX191NjQgZGF0YVsxNl07CisgICAgfSBpbnRlcm5hbDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG9zaTsKLSBzdHJ1Y3QgewotIF9fdTY0IG5yOwotIF9fdTY0IHJldDsKKyAgICAgIF9fdTY0IGdwcnNbMzJdOworICAgIH0gb3NpOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBucjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYXJnc1s5XTsKLSB9IHBhcHJfaGNhbGw7Ci0gc3RydWN0IHsKLSBfX3UxNiBzdWJjaGFubmVsX2lkOworICAgICAgX191NjQgcmV0OworICAgICAgX191NjQgYXJnc1s5XTsKKyAgICB9IHBhcHJfaGNhbGw7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3ViY2hhbm5lbF9ucjsKLSBfX3UzMiBpb19pbnRfcGFybTsKLSBfX3UzMiBpb19pbnRfd29yZDsKLSBfX3UzMiBpcGI7CisgICAgICBfX3UxNiBzdWJjaGFubmVsX2lkOworICAgICAgX191MTYgc3ViY2hhbm5lbF9ucjsKKyAgICAgIF9fdTMyIGlvX2ludF9wYXJtOworICAgICAgX191MzIgaW9faW50X3dvcmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGVxdWV1ZWQ7Ci0gfSBzMzkwX3RzY2g7Ci0gc3RydWN0IHsKLSBfX3UzMiBlcHI7CisgICAgICBfX3UzMiBpcGI7CisgICAgICBfX3U4IGRlcXVldWVkOworICAgIH0gczM5MF90c2NoOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZXByOwotIGNoYXIgcGFkZGluZ1syNTZdOwotIH07Ci0gX191NjQga3ZtX3ZhbGlkX3JlZ3M7CisgICAgICBfX3UzMiBlcHI7CisgICAgfSBlcHI7CisgICAgc3RydWN0IHsKKyNkZWZpbmUgS1ZNX1NZU1RFTV9FVkVOVF9TSFVURE9XTiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGt2bV9kaXJ0eV9yZWdzOwotIHVuaW9uIHsKLSBzdHJ1Y3Qga3ZtX3N5bmNfcmVncyByZWdzOwotIGNoYXIgcGFkZGluZ1sxMDI0XTsKKyNkZWZpbmUgS1ZNX1NZU1RFTV9FVkVOVF9SRVNFVCAyCisgICAgICBfX3UzMiB0eXBlOworICAgICAgX191NjQgZmxhZ3M7CisgICAgfSBzeXN0ZW1fZXZlbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gczsKKyAgICBjaGFyIHBhZGRpbmdbMjU2XTsKKyAgfTsKKyAgX191NjQga3ZtX3ZhbGlkX3JlZ3M7CisgIF9fdTY0IGt2bV9kaXJ0eV9yZWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24geworICAgIHN0cnVjdCBrdm1fc3luY19yZWdzIHJlZ3M7CisgICAgY2hhciBwYWRkaW5nWzEwMjRdOworICB9IHM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fem9uZSB7Ci0gX191NjQgYWRkcjsKKyAgX191NjQgYWRkcjsKKyAgX191MzIgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2l6ZTsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIHBhZDsKIH07CiBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvIHsKKyAgX191NjQgcGh5c19hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwaHlzX2FkZHI7Ci0gX191MzIgbGVuOwotIF9fdTMyIHBhZDsKLSBfX3U4IGRhdGFbOF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsZW47CisgIF9fdTMyIHBhZDsKKyAgX191OCBkYXRhWzhdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3JpbmcgewotIF9fdTMyIGZpcnN0LCBsYXN0OwotIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW8gY29hbGVzY2VkX21taW9bMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmaXJzdCwgbGFzdDsKKyAgc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pbyBjb2FsZXNjZWRfbW1pb1swXTsKIH07Ci0jZGVmaW5lIEtWTV9DT0FMRVNDRURfTU1JT19NQVggICAoKFBBR0VfU0laRSAtIHNpemVvZihzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3JpbmcpKSAvICAgc2l6ZW9mKHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW8pKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NPQUxFU0NFRF9NTUlPX01BWCAoKFBBR0VfU0laRSAtIHNpemVvZihzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3JpbmcpKSAvIHNpemVvZihzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvKSkKIHN0cnVjdCBrdm1fdHJhbnNsYXRpb24gewotIF9fdTY0IGxpbmVhcl9hZGRyZXNzOworICBfX3U2NCBsaW5lYXJfYWRkcmVzczsKKyAgX191NjQgcGh5c2ljYWxfYWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGh5c2ljYWxfYWRkcmVzczsKLSBfX3U4IHZhbGlkOwotIF9fdTggd3JpdGVhYmxlOwotIF9fdTggdXNlcm1vZGU7CisgIF9fdTggdmFsaWQ7CisgIF9fdTggd3JpdGVhYmxlOworICBfX3U4IHVzZXJtb2RlOworICBfX3U4IHBhZFs1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYWRbNV07CiB9Owogc3RydWN0IGt2bV9pbnRlcnJ1cHQgewotIF9fdTMyIGlycTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlycTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9kaXJ0eV9sb2cgewotIF9fdTMyIHNsb3Q7Ci0gX191MzIgcGFkZGluZzE7CisgIF9fdTMyIHNsb3Q7CisgIF9fdTMyIHBhZGRpbmcxOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSB2b2lkIF9fdXNlciAqZGlydHlfYml0bWFwOwotIF9fdTY0IHBhZGRpbmcyOwotIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIHZvaWQgX191c2VyICogZGlydHlfYml0bWFwOworICAgIF9fdTY0IHBhZGRpbmcyOworICB9OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3NpZ25hbF9tYXNrIHsKLSBfX3UzMiBsZW47Ci0gX191OCBzaWdzZXRbMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsZW47CisgIF9fdTggc2lnc2V0WzBdOwogfTsKLXN0cnVjdCBrdm1fdHByX2FjY2Vzc19jdGwgewotIF9fdTMyIGVuYWJsZWQ7Ci0gX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzhdOworc3RydWN0IGt2bV90cHJfYWNjZXNzX2N0bCB7CisgIF9fdTMyIGVuYWJsZWQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNlcnZlZFs4XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV92YXBpY19hZGRyIHsKLSBfX3U2NCB2YXBpY19hZGRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgdmFwaWNfYWRkcjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fTVBfU1RBVEVfUlVOTkFCTEUgMAogI2RlZmluZSBLVk1fTVBfU1RBVEVfVU5JTklUSUFMSVpFRCAxCiAjZGVmaW5lIEtWTV9NUF9TVEFURV9JTklUX1JFQ0VJVkVEIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9NUF9TVEFURV9IQUxURUQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01QX1NUQVRFX1NJUElfUkVDRUlWRUQgNAorI2RlZmluZSBLVk1fTVBfU1RBVEVfU1RPUFBFRCA1CisjZGVmaW5lIEtWTV9NUF9TVEFURV9DSEVDS19TVE9QIDYKKyNkZWZpbmUgS1ZNX01QX1NUQVRFX09QRVJBVElORyA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fTVBfU1RBVEVfTE9BRCA4CiBzdHJ1Y3Qga3ZtX21wX3N0YXRlIHsKLSBfX3UzMiBtcF9zdGF0ZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG1wX3N0YXRlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3MzOTBfcHN3IHsKLSBfX3U2NCBtYXNrOwotIF9fdTY0IGFkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBtYXNrOworICBfX3U2NCBhZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX1NJR1BfU1RPUCAweGZmZmUwMDAwdQogI2RlZmluZSBLVk1fUzM5MF9QUk9HUkFNX0lOVCAweGZmZmUwMDAxdQogI2RlZmluZSBLVk1fUzM5MF9TSUdQX1NFVF9QUkVGSVggMHhmZmZlMDAwMnUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX1JFU1RBUlQgMHhmZmZlMDAwM3UKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9TMzkwX0lOVF9QRkFVTFRfSU5JVCAweGZmZmUwMDA0dQorI2RlZmluZSBLVk1fUzM5MF9JTlRfUEZBVUxUX0RPTkUgMHhmZmZlMDAwNXUKICNkZWZpbmUgS1ZNX1MzOTBfTUNISyAweGZmZmUxMDAwdQorI2RlZmluZSBLVk1fUzM5MF9JTlRfQ0xPQ0tfQ09NUCAweGZmZmYxMDA0dQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1MzOTBfSU5UX0NQVV9USU1FUiAweGZmZmYxMDA1dQogI2RlZmluZSBLVk1fUzM5MF9JTlRfVklSVElPIDB4ZmZmZjI2MDN1CiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9TRVJWSUNFIDB4ZmZmZjI0MDF1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUzM5MF9JTlRfRU1FUkdFTkNZIDB4ZmZmZjEyMDF1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUzM5MF9JTlRfRVhURVJOQUxfQ0FMTCAweGZmZmYxMjAydQotI2RlZmluZSBLVk1fUzM5MF9JTlRfSU8oYWksY3NzaWQsc3NpZCxzY2hpZCkgICAoKChzY2hpZCkpIHwgICAoKHNzaWQpIDw8IDE2KSB8ICAgKChjc3NpZCkgPDwgMTgpIHwgICAoKGFpKSA8PCAyNikpCisjZGVmaW5lIEtWTV9TMzkwX0lOVF9JTyhhaSxjc3NpZCxzc2lkLHNjaGlkKSAoKChzY2hpZCkpIHwgKChzc2lkKSA8PCAxNikgfCAoKGNzc2lkKSA8PCAxOCkgfCAoKGFpKSA8PCAyNikpCiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9JT19NSU4gMHgwMDAwMDAwMHUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9JT19NQVggMHhmZmZkZmZmZnUKLXN0cnVjdCBrdm1fczM5MF9pbnRlcnJ1cHQgewotIF9fdTMyIHR5cGU7Ci0gX191MzIgcGFybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGFybTY0Oworc3RydWN0IGt2bV9zMzkwX2ludGVycnVwdCB7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHBhcm07CisgIF9fdTY0IHBhcm02NDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Oworc3RydWN0IGt2bV9zMzkwX2lvX2luZm8geworICBfX3UxNiBzdWJjaGFubmVsX2lkOworICBfX3UxNiBzdWJjaGFubmVsX25yOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaW9faW50X3Bhcm07CisgIF9fdTMyIGlvX2ludF93b3JkOworfTsKK3N0cnVjdCBrdm1fczM5MF9leHRfaW5mbyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBleHRfcGFyYW1zOworICBfX3UzMiBwYWQ7CisgIF9fdTY0IGV4dF9wYXJhbXMyOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3Qga3ZtX3MzOTBfcGdtX2luZm8geworICBfX3U2NCB0cmFuc19leGNfY29kZTsKKyAgX191NjQgbW9uX2NvZGU7CisgIF9fdTY0IHBlcl9hZGRyZXNzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZGF0YV9leGNfY29kZTsKKyAgX191MTYgY29kZTsKKyAgX191MTYgbW9uX2NsYXNzX25yOworICBfX3U4IHBlcl9jb2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBwZXJfYXRtaWQ7CisgIF9fdTggZXhjX2FjY2Vzc19pZDsKKyAgX191OCBwZXJfYWNjZXNzX2lkOworICBfX3U4IG9wX2FjY2Vzc19pZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcGFkWzNdOworfTsKK3N0cnVjdCBrdm1fczM5MF9wcmVmaXhfaW5mbyB7CisgIF9fdTMyIGFkZHJlc3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCBrdm1fczM5MF9leHRjYWxsX2luZm8geworICBfX3UxNiBjb2RlOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3Qga3ZtX3MzOTBfZW1lcmdfaW5mbyB7CisgIF9fdTE2IGNvZGU7Cit9Oworc3RydWN0IGt2bV9zMzkwX21jaGtfaW5mbyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBjcjE0OworICBfX3U2NCBtY2ljOworICBfX3U2NCBmYWlsaW5nX3N0b3JhZ2VfYWRkcmVzczsKKyAgX191MzIgZXh0X2RhbWFnZV9jb2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcGFkOworICBfX3U4IGZpeGVkX2xvZ291dFsxNl07Cit9Oworc3RydWN0IGt2bV9zMzkwX2lycSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IGt2bV9zMzkwX2lvX2luZm8gaW87CisgICAgc3RydWN0IGt2bV9zMzkwX2V4dF9pbmZvIGV4dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IGt2bV9zMzkwX3BnbV9pbmZvIHBnbTsKKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfZW1lcmdfaW5mbyBlbWVyZzsKKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfZXh0Y2FsbF9pbmZvIGV4dGNhbGw7CisgICAgc3RydWN0IGt2bV9zMzkwX3ByZWZpeF9pbmZvIHByZWZpeDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IGt2bV9zMzkwX21jaGtfaW5mbyBtY2hrOworICAgIGNoYXIgcmVzZXJ2ZWRbNjRdOworICB9IHU7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dVRVNUREJHX0VOQUJMRSAweDAwMDAwMDAxCiAjZGVmaW5lIEtWTV9HVUVTVERCR19TSU5HTEVTVEVQIDB4MDAwMDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnIHsKLSBfX3UzMiBjb250cm9sOwotIF9fdTMyIHBhZDsKLSBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnX2FyY2ggYXJjaDsKKyAgX191MzIgY29udHJvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHBhZDsKKyAgc3RydWN0IGt2bV9ndWVzdF9kZWJ1Z19hcmNoIGFyY2g7CiB9OwogZW51bSB7Ci0ga3ZtX2lvZXZlbnRmZF9mbGFnX25yX2RhdGFtYXRjaCwKLSBrdm1faW9ldmVudGZkX2ZsYWdfbnJfcGlvLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBrdm1faW9ldmVudGZkX2ZsYWdfbnJfZGVhc3NpZ24sCi0ga3ZtX2lvZXZlbnRmZF9mbGFnX25yX3ZpcnRpb19jY3dfbm90aWZ5LAotIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9tYXgsCisgIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9kYXRhbWF0Y2gsCisgIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9waW8sCisgIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9kZWFzc2lnbiwKKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX3ZpcnRpb19jY3dfbm90aWZ5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX2Zhc3RfbW1pbywKKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX21heCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSU9FVkVOVEZEX0ZMQUdfREFUQU1BVENIICgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9kYXRhbWF0Y2gpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSU9FVkVOVEZEX0ZMQUdfUElPICgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9waW8pCiAjZGVmaW5lIEtWTV9JT0VWRU5URkRfRkxBR19ERUFTU0lHTiAoMSA8PCBrdm1faW9ldmVudGZkX2ZsYWdfbnJfZGVhc3NpZ24pCi0jZGVmaW5lIEtWTV9JT0VWRU5URkRfRkxBR19WSVJUSU9fQ0NXX05PVElGWSAgICgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl92aXJ0aW9fY2N3X25vdGlmeSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9JT0VWRU5URkRfRkxBR19WSVJUSU9fQ0NXX05PVElGWSAoMSA8PCBrdm1faW9ldmVudGZkX2ZsYWdfbnJfdmlydGlvX2Njd19ub3RpZnkpCiAjZGVmaW5lIEtWTV9JT0VWRU5URkRfVkFMSURfRkxBR19NQVNLICgoMSA8PCBrdm1faW9ldmVudGZkX2ZsYWdfbnJfbWF4KSAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9pb2V2ZW50ZmQgewotIF9fdTY0IGRhdGFtYXRjaDsKLSBfX3U2NCBhZGRyOworICBfX3U2NCBkYXRhbWF0Y2g7CisgIF9fdTY0IGFkZHI7CisgIF9fdTMyIGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuOwotIF9fczMyIGZkOwotIF9fdTMyIGZsYWdzOwotIF9fdTggcGFkWzM2XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczMyIGZkOworICBfX3UzMiBmbGFnczsKKyAgX191OCBwYWRbMzZdOwogfTsKLXN0cnVjdCBrdm1fZW5hYmxlX2NhcCB7Ci0gX191MzIgY2FwOwotIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhcmdzWzRdOwotIF9fdTggcGFkWzY0XTsKK3N0cnVjdCBrdm1fZW5hYmxlX2NhcCB7CisgIF9fdTMyIGNhcDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IGFyZ3NbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBhZFs2NF07CiB9Owogc3RydWN0IGt2bV9wcGNfcHZpbmZvIHsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGhjYWxsWzRdOwotIF9fdTggcGFkWzEwOF07CisgIF9fdTMyIGhjYWxsWzRdOworICBfX3U4IHBhZFsxMDhdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9QUENfUEFHRV9TSVpFU19NQVhfU1ogOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fcHBjX29uZV9wYWdlX3NpemUgewotIF9fdTMyIHBhZ2Vfc2hpZnQ7Ci0gX191MzIgcHRlX2VuYzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHBhZ2Vfc2hpZnQ7CisgIF9fdTMyIHB0ZV9lbmM7CiB9Owotc3RydWN0IGt2bV9wcGNfb25lX3NlZ19wYWdlX3NpemUgewotIF9fdTMyIHBhZ2Vfc2hpZnQ7Ci0gX191MzIgc2xiX2VuYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGt2bV9wcGNfb25lX3BhZ2Vfc2l6ZSBlbmNbS1ZNX1BQQ19QQUdFX1NJWkVTX01BWF9TWl07CitzdHJ1Y3Qga3ZtX3BwY19vbmVfc2VnX3BhZ2Vfc2l6ZSB7CisgIF9fdTMyIHBhZ2Vfc2hpZnQ7CisgIF9fdTMyIHNsYl9lbmM7CisgIHN0cnVjdCBrdm1fcHBjX29uZV9wYWdlX3NpemUgZW5jW0tWTV9QUENfUEFHRV9TSVpFU19NQVhfU1pdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEtWTV9QUENfUEFHRV9TSVpFU19SRUFMIDB4MDAwMDAwMDEKICNkZWZpbmUgS1ZNX1BQQ18xVF9TRUdNRU5UUyAweDAwMDAwMDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9wcGNfc21tdV9pbmZvIHsKLSBfX3U2NCBmbGFnczsKLSBfX3UzMiBzbGJfc2l6ZTsKLSBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBrdm1fcHBjX29uZV9zZWdfcGFnZV9zaXplIHNwc1tLVk1fUFBDX1BBR0VfU0laRVNfTUFYX1NaXTsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTMyIHNsYl9zaXplOworICBfX3UzMiBwYWQ7CisgIHN0cnVjdCBrdm1fcHBjX29uZV9zZWdfcGFnZV9zaXplIHNwc1tLVk1fUFBDX1BBR0VfU0laRVNfTUFYX1NaXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBLVk1fUFBDX1BWSU5GT19GTEFHU19FVl9JRExFICgxPDwwKQorI2RlZmluZSBLVk1fUFBDX1BWSU5GT19GTEFHU19FVl9JRExFICgxIDw8IDApCiAjZGVmaW5lIEtWTUlPIDB4QUUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WTV9TMzkwX1VDT05UUk9MIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WTV9QUENfSFYgMQogI2RlZmluZSBLVk1fVk1fUFBDX1BSIDIKICNkZWZpbmUgS1ZNX1MzOTBfU0lFX1BBR0VfT0ZGU0VUIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfQVBJX1ZFUlNJT04gX0lPKEtWTUlPLCAweDAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NSRUFURV9WTSBfSU8oS1ZNSU8sIDB4MDEpCiAjZGVmaW5lIEtWTV9HRVRfTVNSX0lOREVYX0xJU1QgX0lPV1IoS1ZNSU8sIDB4MDIsIHN0cnVjdCBrdm1fbXNyX2xpc3QpCiAjZGVmaW5lIEtWTV9TMzkwX0VOQUJMRV9TSUUgX0lPKEtWTUlPLCAweDA2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NIRUNLX0VYVEVOU0lPTiBfSU8oS1ZNSU8sIDB4MDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1ZDUFVfTU1BUF9TSVpFIF9JTyhLVk1JTywgMHgwNCkKICNkZWZpbmUgS1ZNX0dFVF9TVVBQT1JURURfQ1BVSUQgX0lPV1IoS1ZNSU8sIDB4MDUsIHN0cnVjdCBrdm1fY3B1aWQyKQogI2RlZmluZSBLVk1fVFJBQ0VfRU5BQkxFIF9fS1ZNX0RFUFJFQ0FURURfTUFJTl9XXzB4MDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9UUkFDRV9QQVVTRSBfX0tWTV9ERVBSRUNBVEVEX01BSU5fMHgwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1RSQUNFX0RJU0FCTEUgX19LVk1fREVQUkVDQVRFRF9NQUlOXzB4MDgKICNkZWZpbmUgS1ZNX0dFVF9FTVVMQVRFRF9DUFVJRCBfSU9XUihLVk1JTywgMHgwOSwgc3RydWN0IGt2bV9jcHVpZDIpCiAjZGVmaW5lIEtWTV9DQVBfSVJRQ0hJUCAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0hMVCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX01NVV9TSEFET1dfQ0FDSEVfQ09OVFJPTCAyCiAjZGVmaW5lIEtWTV9DQVBfVVNFUl9NRU1PUlkgMwogI2RlZmluZSBLVk1fQ0FQX1NFVF9UU1NfQUREUiA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX1ZBUElDIDYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfRVhUX0NQVUlEIDcKICNkZWZpbmUgS1ZNX0NBUF9DTE9DS1NPVVJDRSA4CiAjZGVmaW5lIEtWTV9DQVBfTlJfVkNQVVMgOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9OUl9NRU1TTE9UUyAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9QSVQgMTEKICNkZWZpbmUgS1ZNX0NBUF9OT1BfSU9fREVMQVkgMTIKICNkZWZpbmUgS1ZNX0NBUF9QVl9NTVUgMTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfTVBfU1RBVEUgMTQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfQ09BTEVTQ0VEX01NSU8gMTUKICNkZWZpbmUgS1ZNX0NBUF9TWU5DX01NVSAxNgogI2RlZmluZSBLVk1fQ0FQX0RFVklDRV9BU1NJR05NRU5UIDE3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0lPTU1VIDE4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fS1ZNX0hBVkVfTVNJCiAjZGVmaW5lIEtWTV9DQVBfREVWSUNFX01TSSAyMAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0RFU1RST1lfTUVNT1JZX1JFR0lPTl9XT1JLUyAyMQotI2lmZGVmIF9fS1ZNX0hBVkVfVVNFUl9OTUkKLSNkZWZpbmUgS1ZNX0NBUF9VU0VSX05NSSAyMgotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX1VTRVJfTk1JIDIyCiAjaWZkZWYgX19LVk1fSEFWRV9HVUVTVF9ERUJVRwogI2RlZmluZSBLVk1fQ0FQX1NFVF9HVUVTVF9ERUJVRyAyMwogI2VuZGlmCi0jaWZkZWYgX19LVk1fSEFWRV9QSVQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaWZkZWYgX19LVk1fSEFWRV9QSVQKICNkZWZpbmUgS1ZNX0NBUF9SRUlOSkVDVF9DT05UUk9MIDI0CiAjZW5kaWYKICNkZWZpbmUgS1ZNX0NBUF9JUlFfUk9VVElORyAyNQotI2RlZmluZSBLVk1fQ0FQX0lSUV9JTkpFQ1RfU1RBVFVTIDI2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX0lSUV9JTkpFQ1RfU1RBVFVTIDI2CiAjZGVmaW5lIEtWTV9DQVBfREVWSUNFX0RFQVNTSUdOTUVOVCAyNwogI2lmZGVmIF9fS1ZNX0hBVkVfTVNJWAogI2RlZmluZSBLVk1fQ0FQX0RFVklDRV9NU0lYIDI4Ci0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKICNkZWZpbmUgS1ZNX0NBUF9BU1NJR05fREVWX0lSUSAyOQogI2RlZmluZSBLVk1fQ0FQX0pPSU5fTUVNT1JZX1JFR0lPTlNfV09SS1MgMzAKICNpZmRlZiBfX0tWTV9IQVZFX01DRQotI2RlZmluZSBLVk1fQ0FQX01DRSAzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9NQ0UgMzEKICNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX0lSUUZEIDMyCiAjaWZkZWYgX19LVk1fSEFWRV9QSVQKLSNkZWZpbmUgS1ZNX0NBUF9QSVQyIDMzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX1BJVDIgMzMKICNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX1NFVF9CT09UX0NQVV9JRCAzNAogI2lmZGVmIF9fS1ZNX0hBVkVfUElUX1NUQVRFMgotI2RlZmluZSBLVk1fQ0FQX1BJVF9TVEFURTIgMzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUElUX1NUQVRFMiAzNQogI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfSU9FVkVOVEZEIDM2CiAjZGVmaW5lIEtWTV9DQVBfU0VUX0lERU5USVRZX01BUF9BRERSIDM3Ci0jaWZkZWYgX19LVk1fSEFWRV9YRU5fSFZNCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2lmZGVmIF9fS1ZNX0hBVkVfWEVOX0hWTQogI2RlZmluZSBLVk1fQ0FQX1hFTl9IVk0gMzgKICNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX0FESlVTVF9DTE9DSyAzOQotI2RlZmluZSBLVk1fQ0FQX0lOVEVSTkFMX0VSUk9SX0RBVEEgNDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfSU5URVJOQUxfRVJST1JfREFUQSA0MAogI2lmZGVmIF9fS1ZNX0hBVkVfVkNQVV9FVkVOVFMKICNkZWZpbmUgS1ZNX0NBUF9WQ1BVX0VWRU5UUyA0MQogI2VuZGlmCi0jZGVmaW5lIEtWTV9DQVBfUzM5MF9QU1cgNDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUzM5MF9QU1cgNDIKICNkZWZpbmUgS1ZNX0NBUF9QUENfU0VHU1RBVEUgNDMKICNkZWZpbmUgS1ZNX0NBUF9IWVBFUlYgNDQKICNkZWZpbmUgS1ZNX0NBUF9IWVBFUlZfVkFQSUMgNDUKLSNkZWZpbmUgS1ZNX0NBUF9IWVBFUlZfU1BJTiA0NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9IWVBFUlZfU1BJTiA0NgogI2RlZmluZSBLVk1fQ0FQX1BDSV9TRUdNRU5UIDQ3CiAjZGVmaW5lIEtWTV9DQVBfUFBDX1BBSVJFRF9TSU5HTEVTIDQ4CiAjZGVmaW5lIEtWTV9DQVBfSU5UUl9TSEFET1cgNDkKLSNpZmRlZiBfX0tWTV9IQVZFX0RFQlVHUkVHUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZmRlZiBfX0tWTV9IQVZFX0RFQlVHUkVHUwogI2RlZmluZSBLVk1fQ0FQX0RFQlVHUkVHUyA1MAogI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfWDg2X1JPQlVTVF9TSU5HTEVTVEVQIDUxCi0jZGVmaW5lIEtWTV9DQVBfUFBDX09TSSA1MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9QUENfT1NJIDUyCiAjZGVmaW5lIEtWTV9DQVBfUFBDX1VOU0VUX0lSUSA1MwogI2RlZmluZSBLVk1fQ0FQX0VOQUJMRV9DQVAgNTQKICNpZmRlZiBfX0tWTV9IQVZFX1hTQVZFCi0jZGVmaW5lIEtWTV9DQVBfWFNBVkUgNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfWFNBVkUgNTUKICNlbmRpZgogI2lmZGVmIF9fS1ZNX0hBVkVfWENSUwogI2RlZmluZSBLVk1fQ0FQX1hDUlMgNTYKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX1BQQ19HRVRfUFZJTkZPIDU3CiAjZGVmaW5lIEtWTV9DQVBfUFBDX0lSUV9MRVZFTCA1OAogI2RlZmluZSBLVk1fQ0FQX0FTWU5DX1BGIDU5Ci0jZGVmaW5lIEtWTV9DQVBfVFNDX0NPTlRST0wgNjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfVFNDX0NPTlRST0wgNjAKICNkZWZpbmUgS1ZNX0NBUF9HRVRfVFNDX0tIWiA2MQogI2RlZmluZSBLVk1fQ0FQX1BQQ19CT09LRV9TUkVHUyA2MgogI2RlZmluZSBLVk1fQ0FQX1NQQVBSX1RDRSA2MwotI2RlZmluZSBLVk1fQ0FQX1BQQ19TTVQgNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUFBDX1NNVCA2NAogI2RlZmluZSBLVk1fQ0FQX1BQQ19STUEgNjUKICNkZWZpbmUgS1ZNX0NBUF9NQVhfVkNQVVMgNjYKICNkZWZpbmUgS1ZNX0NBUF9QUENfSElPUiA2NwotI2RlZmluZSBLVk1fQ0FQX1BQQ19QQVBSIDY4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX1BQQ19QQVBSIDY4CiAjZGVmaW5lIEtWTV9DQVBfU1dfVExCIDY5CiAjZGVmaW5lIEtWTV9DQVBfT05FX1JFRyA3MAogI2RlZmluZSBLVk1fQ0FQX1MzOTBfR01BUCA3MQotI2RlZmluZSBLVk1fQ0FQX1RTQ19ERUFETElORV9USU1FUiA3MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9UU0NfREVBRExJTkVfVElNRVIgNzIKICNkZWZpbmUgS1ZNX0NBUF9TMzkwX1VDT05UUk9MIDczCiAjZGVmaW5lIEtWTV9DQVBfU1lOQ19SRUdTIDc0CiAjZGVmaW5lIEtWTV9DQVBfUENJXzJfMyA3NQotI2RlZmluZSBLVk1fQ0FQX0tWTUNMT0NLX0NUUkwgNzYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfS1ZNQ0xPQ0tfQ1RSTCA3NgogI2RlZmluZSBLVk1fQ0FQX1NJR05BTF9NU0kgNzcKICNkZWZpbmUgS1ZNX0NBUF9QUENfR0VUX1NNTVVfSU5GTyA3OAogI2RlZmluZSBLVk1fQ0FQX1MzOTBfQ09XIDc5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX1BQQ19BTExPQ19IVEFCIDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2lmZGVmIF9fS1ZNX0hBVkVfUkVBRE9OTFlfTUVNCiAjZGVmaW5lIEtWTV9DQVBfUkVBRE9OTFlfTUVNIDgxCi0jZW5kaWYKICNkZWZpbmUgS1ZNX0NBUF9JUlFGRF9SRVNBTVBMRSA4MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9QUENfQk9PS0VfV0FUQ0hET0cgODMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfUFBDX0hUQUJfRkQgODQKICNkZWZpbmUgS1ZNX0NBUF9TMzkwX0NTU19TVVBQT1JUIDg1CiAjZGVmaW5lIEtWTV9DQVBfUFBDX0VQUiA4NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9BUk1fUFNDSSA4NworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9BUk1fU0VUX0RFVklDRV9BRERSIDg4CiAjZGVmaW5lIEtWTV9DQVBfREVWSUNFX0NUUkwgODkKICNkZWZpbmUgS1ZNX0NBUF9JUlFfTVBJQyA5MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9QUENfUlRBUyA5MQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9JUlFfWElDUyA5MgogI2RlZmluZSBLVk1fQ0FQX0FSTV9FTDFfMzJCSVQgOTMKICNkZWZpbmUgS1ZNX0NBUF9TUEFQUl9NVUxUSVRDRSA5NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9FWFRfRU1VTF9DUFVJRCA5NQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9IWVBFUlZfVElNRSA5NgorI2RlZmluZSBLVk1fQ0FQX0lPQVBJQ19QT0xBUklUWV9JR05PUkVEIDk3CisjZGVmaW5lIEtWTV9DQVBfRU5BQkxFX0NBUF9WTSA5OAorI2RlZmluZSBLVk1fQ0FQX1MzOTBfSVJRQ0hJUCA5OQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9JT0VWRU5URkRfTk9fTEVOR1RIIDEwMAorI2RlZmluZSBLVk1fQ0FQX1ZNX0FUVFJJQlVURVMgMTAxCisjZGVmaW5lIEtWTV9DQVBfQVJNX1BTQ0lfMF8yIDEwMgorI2RlZmluZSBLVk1fQ0FQX1BQQ19GSVhVUF9IQ0FMTCAxMDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUFBDX0VOQUJMRV9IQ0FMTCAxMDQKKyNkZWZpbmUgS1ZNX0NBUF9DSEVDS19FWFRFTlNJT05fVk0gMTA1CiAjaWZkZWYgS1ZNX0NBUF9JUlFfUk9VVElORwogc3RydWN0IGt2bV9pcnFfcm91dGluZ19pcnFjaGlwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaXJxY2hpcDsKLSBfX3UzMiBwaW47CisgIF9fdTMyIGlycWNoaXA7CisgIF9fdTMyIHBpbjsKIH07CiBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX21zaSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFkZHJlc3NfbG87Ci0gX191MzIgYWRkcmVzc19oaTsKLSBfX3UzMiBkYXRhOwotIF9fdTMyIHBhZDsKKyAgX191MzIgYWRkcmVzc19sbzsKKyAgX191MzIgYWRkcmVzc19oaTsKKyAgX191MzIgZGF0YTsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CitzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX3MzOTBfYWRhcHRlciB7CisgIF9fdTY0IGluZF9hZGRyOworICBfX3U2NCBzdW1tYXJ5X2FkZHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBpbmRfb2Zmc2V0OworICBfX3UzMiBzdW1tYXJ5X29mZnNldDsKKyAgX191MzIgYWRhcHRlcl9pZDsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSVJRX1JPVVRJTkdfSVJRQ0hJUCAxCiAjZGVmaW5lIEtWTV9JUlFfUk9VVElOR19NU0kgMgorI2RlZmluZSBLVk1fSVJRX1JPVVRJTkdfUzM5MF9BREFQVEVSIDMKIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnc2k7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIGdzaTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfaXJxY2hpcCBpcnFjaGlwOwotIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfbXNpIG1zaTsKLSBfX3UzMiBwYWRbOF07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX2lycWNoaXAgaXJxY2hpcDsKKyAgICBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX21zaSBtc2k7CisgICAgc3RydWN0IGt2bV9pcnFfcm91dGluZ19zMzkwX2FkYXB0ZXIgYWRhcHRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB1OworICAgIF9fdTMyIHBhZFs4XTsKKyAgfSB1OwogfTsKIHN0cnVjdCBrdm1faXJxX3JvdXRpbmcgewotIF9fdTMyIG5yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX2VudHJ5IGVudHJpZXNbMF07CisgIF9fdTMyIG5yOworICBfX3UzMiBmbGFnczsKKyAgc3RydWN0IGt2bV9pcnFfcm91dGluZ19lbnRyeSBlbnRyaWVzWzBdOwogfTsKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgogI2lmZGVmIEtWTV9DQVBfTUNFCiBzdHJ1Y3Qga3ZtX3g4Nl9tY2UgewotIF9fdTY0IHN0YXR1czsKLSBfX3U2NCBhZGRyOworICBfX3U2NCBzdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1pc2M7Ci0gX191NjQgbWNnX3N0YXR1czsKLSBfX3U4IGJhbms7Ci0gX191OCBwYWQxWzddOworICBfX3U2NCBhZGRyOworICBfX3U2NCBtaXNjOworICBfX3U2NCBtY2dfc3RhdHVzOworICBfX3U4IGJhbms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBhZDJbM107CisgIF9fdTggcGFkMVs3XTsKKyAgX191NjQgcGFkMlszXTsKIH07CiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgS1ZNX0NBUF9YRU5fSFZNCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV94ZW5faHZtX2NvbmZpZyB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgbXNyOwotIF9fdTY0IGJsb2JfYWRkcl8zMjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIG1zcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYmxvYl9hZGRyXzY0OwotIF9fdTggYmxvYl9zaXplXzMyOwotIF9fdTggYmxvYl9zaXplXzY0OwotIF9fdTggcGFkMlszMF07CisgIF9fdTY0IGJsb2JfYWRkcl8zMjsKKyAgX191NjQgYmxvYl9hZGRyXzY0OworICBfX3U4IGJsb2Jfc2l6ZV8zMjsKKyAgX191OCBibG9iX3NpemVfNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBhZDJbMzBdOwogfTsKICNlbmRpZgogI2RlZmluZSBLVk1fSVJRRkRfRkxBR19ERUFTU0lHTiAoMSA8PCAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lSUUZEX0ZMQUdfUkVTQU1QTEUgKDEgPDwgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2lycWZkIHsKLSBfX3UzMiBmZDsKLSBfX3UzMiBnc2k7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZkOworICBfX3UzMiBnc2k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2FtcGxlZmQ7Ci0gX191OCBwYWRbMTZdOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzYW1wbGVmZDsKKyAgX191OCBwYWRbMTZdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2Nsb2NrX2RhdGEgeworICBfX3U2NCBjbG9jazsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBhZFs5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY2xvY2s7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcGFkWzldOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9NTVVfRlNMX0JPT0tFX05PSFYgMAogI2RlZmluZSBLVk1fTU1VX0ZTTF9CT09LRV9IViAxCiBzdHJ1Y3Qga3ZtX2NvbmZpZ190bGIgewotIF9fdTY0IHBhcmFtczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYXJyYXk7Ci0gX191MzIgbW11X3R5cGU7Ci0gX191MzIgYXJyYXlfbGVuOworICBfX3U2NCBwYXJhbXM7CisgIF9fdTY0IGFycmF5OworICBfX3UzMiBtbXVfdHlwZTsKKyAgX191MzIgYXJyYXlfbGVuOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9kaXJ0eV90bGIgewotIF9fdTY0IGJpdG1hcDsKLSBfX3UzMiBudW1fZGlydHk7Ci19OworICBfX3U2NCBiaXRtYXA7CisgIF9fdTMyIG51bV9kaXJ0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2RlZmluZSBLVk1fUkVHX0FSQ0hfTUFTSyAweGZmMDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19HRU5FUklDIDB4MDAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1BQQyAweDEwMDAwMDAwMDAwMDAwMDBVTEwKLSNkZWZpbmUgS1ZNX1JFR19YODYgMHgyMDAwMDAwMDAwMDAwMDAwVUxMCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUkVHX1g4NiAweDIwMDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19JQTY0IDB4MzAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX0FSTSAweDQwMDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TMzkwIDB4NTAwMDAwMDAwMDAwMDAwMFVMTAotI2RlZmluZSBLVk1fUkVHX0FSTTY0IDB4NjAwMDAwMDAwMDAwMDAwMFVMTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1JFR19BUk02NCAweDYwMDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19NSVBTIDB4NzAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfU0hJRlQgNTIKICNkZWZpbmUgS1ZNX1JFR19TSVpFX01BU0sgMHgwMGYwMDAwMDAwMDAwMDAwVUxMCi0jZGVmaW5lIEtWTV9SRUdfU0laRV9VOCAweDAwMDAwMDAwMDAwMDAwMDBVTEwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfU0laRV9VOCAweDAwMDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TSVpFX1UxNiAweDAwMTAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TSVpFX1UzMiAweDAwMjAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TSVpFX1U2NCAweDAwMzAwMDAwMDAwMDAwMDBVTEwKLSNkZWZpbmUgS1ZNX1JFR19TSVpFX1UxMjggMHgwMDQwMDAwMDAwMDAwMDAwVUxMCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUkVHX1NJWkVfVTEyOCAweDAwNDAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TSVpFX1UyNTYgMHgwMDUwMDAwMDAwMDAwMDAwVUxMCiAjZGVmaW5lIEtWTV9SRUdfU0laRV9VNTEyIDB4MDA2MDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfVTEwMjQgMHgwMDcwMDAwMDAwMDAwMDAwVUxMCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9yZWdfbGlzdCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG47Ci0gX191NjQgcmVnWzBdOworICBfX3U2NCBuOworICBfX3U2NCByZWdbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fb25lX3JlZyB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGlkOwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGlkOworICBfX3U2NCBhZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX21zaSB7CisgIF9fdTMyIGFkZHJlc3NfbG87CisgIF9fdTMyIGFkZHJlc3NfaGk7CisgIF9fdTMyIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFkZHJlc3NfbG87Ci0gX191MzIgYWRkcmVzc19oaTsKLSBfX3UzMiBkYXRhOwotIF9fdTMyIGZsYWdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZFsxNl07CisgIF9fdTMyIGZsYWdzOworICBfX3U4IHBhZFsxNl07CiB9Owogc3RydWN0IGt2bV9hcm1fZGV2aWNlX2FkZHIgewotIF9fdTY0IGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhZGRyOworICBfX3U2NCBpZDsKKyAgX191NjQgYWRkcjsKIH07CiAjZGVmaW5lIEtWTV9DUkVBVEVfREVWSUNFX1RFU1QgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fY3JlYXRlX2RldmljZSB7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGZkOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBmZDsKLSBfX3UzMiBmbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9kZXZpY2VfYXR0ciB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgZ3JvdXA7Ci0gX191NjQgYXR0cjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGdyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhZGRyOworICBfX3U2NCBhdHRyOworICBfX3U2NCBhZGRyOwogfTsKLSNkZWZpbmUgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzIwIDEKLSNkZWZpbmUgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzQyIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9ERVZfVFlQRV9YSUNTIDMKLSNkZWZpbmUgS1ZNX0RFVl9UWVBFX1ZGSU8gNAogI2RlZmluZSBLVk1fREVWX1ZGSU9fR1JPVVAgMQotI2RlZmluZSBLVk1fREVWX1ZGSU9fR1JPVVBfQUREIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9ERVZfVkZJT19HUk9VUF9BREQgMQogI2RlZmluZSBLVk1fREVWX1ZGSU9fR1JPVVBfREVMIDIKLSNkZWZpbmUgS1ZNX0RFVl9UWVBFX0FSTV9WR0lDX1YyIDUKK2VudW0ga3ZtX2RldmljZV90eXBlIHsKKyAgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzIwID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9ERVZfVFlQRV9GU0xfTVBJQ18yMCBLVk1fREVWX1RZUEVfRlNMX01QSUNfMjAKKyAgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzQyLAorI2RlZmluZSBLVk1fREVWX1RZUEVfRlNMX01QSUNfNDIgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzQyCisgIEtWTV9ERVZfVFlQRV9YSUNTLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0RFVl9UWVBFX1hJQ1MgS1ZNX0RFVl9UWVBFX1hJQ1MKKyAgS1ZNX0RFVl9UWVBFX1ZGSU8sCisjZGVmaW5lIEtWTV9ERVZfVFlQRV9WRklPIEtWTV9ERVZfVFlQRV9WRklPCisgIEtWTV9ERVZfVFlQRV9BUk1fVkdJQ19WMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9ERVZfVFlQRV9BUk1fVkdJQ19WMiBLVk1fREVWX1RZUEVfQVJNX1ZHSUNfVjIKKyAgS1ZNX0RFVl9UWVBFX0ZMSUMsCisjZGVmaW5lIEtWTV9ERVZfVFlQRV9GTElDIEtWTV9ERVZfVFlQRV9GTElDCisgIEtWTV9ERVZfVFlQRV9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKICNkZWZpbmUgS1ZNX1NFVF9NRU1PUllfUkVHSU9OIF9JT1coS1ZNSU8sIDB4NDAsIHN0cnVjdCBrdm1fbWVtb3J5X3JlZ2lvbikKICNkZWZpbmUgS1ZNX0NSRUFURV9WQ1BVIF9JTyhLVk1JTywgMHg0MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfRElSVFlfTE9HIF9JT1coS1ZNSU8sIDB4NDIsIHN0cnVjdCBrdm1fZGlydHlfbG9nKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9NRU1PUllfQUxJQVMgX0lPVyhLVk1JTywgMHg0Mywgc3RydWN0IGt2bV9tZW1vcnlfYWxpYXMpCiAjZGVmaW5lIEtWTV9TRVRfTlJfTU1VX1BBR0VTIF9JTyhLVk1JTywgMHg0NCkKICNkZWZpbmUgS1ZNX0dFVF9OUl9NTVVfUEFHRVMgX0lPKEtWTUlPLCAweDQ1KQorI2RlZmluZSBLVk1fU0VUX1VTRVJfTUVNT1JZX1JFR0lPTiBfSU9XKEtWTUlPLCAweDQ2LCBzdHJ1Y3Qga3ZtX3VzZXJzcGFjZV9tZW1vcnlfcmVnaW9uKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS1ZNX1NFVF9VU0VSX01FTU9SWV9SRUdJT04gX0lPVyhLVk1JTywgMHg0NiwgICBzdHJ1Y3Qga3ZtX3VzZXJzcGFjZV9tZW1vcnlfcmVnaW9uKQogI2RlZmluZSBLVk1fU0VUX1RTU19BRERSIF9JTyhLVk1JTywgMHg0NykKICNkZWZpbmUgS1ZNX1NFVF9JREVOVElUWV9NQVBfQUREUiBfSU9XKEtWTUlPLCAweDQ4LCBfX3U2NCkKIHN0cnVjdCBrdm1fczM5MF91Y2FzX21hcHBpbmcgeworICBfX3U2NCB1c2VyX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVzZXJfYWRkcjsKLSBfX3U2NCB2Y3B1X2FkZHI7Ci0gX191NjQgbGVuZ3RoOworICBfX3U2NCB2Y3B1X2FkZHI7CisgIF9fdTY0IGxlbmd0aDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUzM5MF9VQ0FTX01BUCBfSU9XKEtWTUlPLCAweDUwLCBzdHJ1Y3Qga3ZtX3MzOTBfdWNhc19tYXBwaW5nKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1MzOTBfVUNBU19VTk1BUCBfSU9XKEtWTUlPLCAweDUxLCBzdHJ1Y3Qga3ZtX3MzOTBfdWNhc19tYXBwaW5nKQogI2RlZmluZSBLVk1fUzM5MF9WQ1BVX0ZBVUxUIF9JT1coS1ZNSU8sIDB4NTIsIHVuc2lnbmVkIGxvbmcpCiAjZGVmaW5lIEtWTV9DUkVBVEVfSVJRQ0hJUCBfSU8oS1ZNSU8sIDB4NjApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSVJRX0xJTkUgX0lPVyhLVk1JTywgMHg2MSwgc3RydWN0IGt2bV9pcnFfbGV2ZWwpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX0lSUUNISVAgX0lPV1IoS1ZNSU8sIDB4NjIsIHN0cnVjdCBrdm1faXJxY2hpcCkKICNkZWZpbmUgS1ZNX1NFVF9JUlFDSElQIF9JT1IoS1ZNSU8sIDB4NjMsIHN0cnVjdCBrdm1faXJxY2hpcCkKICNkZWZpbmUgS1ZNX0NSRUFURV9QSVQgX0lPKEtWTUlPLCAweDY0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9QSVQgX0lPV1IoS1ZNSU8sIDB4NjUsIHN0cnVjdCBrdm1fcGl0X3N0YXRlKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9QSVQgX0lPUihLVk1JTywgMHg2Niwgc3RydWN0IGt2bV9waXRfc3RhdGUpCiAjZGVmaW5lIEtWTV9JUlFfTElORV9TVEFUVVMgX0lPV1IoS1ZNSU8sIDB4NjcsIHN0cnVjdCBrdm1faXJxX2xldmVsKQotI2RlZmluZSBLVk1fUkVHSVNURVJfQ09BTEVTQ0VEX01NSU8gICBfSU9XKEtWTUlPLCAweDY3LCBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3pvbmUpCisjZGVmaW5lIEtWTV9SRUdJU1RFUl9DT0FMRVNDRURfTU1JTyBfSU9XKEtWTUlPLCAweDY3LCBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3pvbmUpCisjZGVmaW5lIEtWTV9VTlJFR0lTVEVSX0NPQUxFU0NFRF9NTUlPIF9JT1coS1ZNSU8sIDB4NjgsIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fem9uZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9VTlJFR0lTVEVSX0NPQUxFU0NFRF9NTUlPICAgX0lPVyhLVk1JTywgMHg2OCwgc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pb196b25lKQotI2RlZmluZSBLVk1fQVNTSUdOX1BDSV9ERVZJQ0UgX0lPUihLVk1JTywgMHg2OSwgICBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX3BjaV9kZXYpCisjZGVmaW5lIEtWTV9BU1NJR05fUENJX0RFVklDRSBfSU9SKEtWTUlPLCAweDY5LCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX3BjaV9kZXYpCiAjZGVmaW5lIEtWTV9TRVRfR1NJX1JPVVRJTkcgX0lPVyhLVk1JTywgMHg2YSwgc3RydWN0IGt2bV9pcnFfcm91dGluZykKICNkZWZpbmUgS1ZNX0FTU0lHTl9JUlEgX19LVk1fREVQUkVDQVRFRF9WTV9SXzB4NzAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BU1NJR05fREVWX0lSUSBfSU9XKEtWTUlPLCAweDcwLCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX2lycSkKLSNkZWZpbmUgS1ZNX1JFSU5KRUNUX0NPTlRST0wgX0lPKEtWTUlPLCAweDcxKQotI2RlZmluZSBLVk1fREVBU1NJR05fUENJX0RFVklDRSBfSU9XKEtWTUlPLCAweDcyLCAgIHN0cnVjdCBrdm1fYXNzaWduZWRfcGNpX2RldikKLSNkZWZpbmUgS1ZNX0FTU0lHTl9TRVRfTVNJWF9OUiBfSU9XKEtWTUlPLCAweDczLCAgIHN0cnVjdCBrdm1fYXNzaWduZWRfbXNpeF9ucikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9BU1NJR05fU0VUX01TSVhfRU5UUlkgX0lPVyhLVk1JTywgMHg3NCwgICBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX21zaXhfZW50cnkpCisjZGVmaW5lIEtWTV9SRUlOSkVDVF9DT05UUk9MIF9JTyhLVk1JTywgMHg3MSkKKyNkZWZpbmUgS1ZNX0RFQVNTSUdOX1BDSV9ERVZJQ0UgX0lPVyhLVk1JTywgMHg3Miwgc3RydWN0IGt2bV9hc3NpZ25lZF9wY2lfZGV2KQorI2RlZmluZSBLVk1fQVNTSUdOX1NFVF9NU0lYX05SIF9JT1coS1ZNSU8sIDB4NzMsIHN0cnVjdCBrdm1fYXNzaWduZWRfbXNpeF9ucikKKyNkZWZpbmUgS1ZNX0FTU0lHTl9TRVRfTVNJWF9FTlRSWSBfSU9XKEtWTUlPLCAweDc0LCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX21zaXhfZW50cnkpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVBU1NJR05fREVWX0lSUSBfSU9XKEtWTUlPLCAweDc1LCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX2lycSkKICNkZWZpbmUgS1ZNX0lSUUZEIF9JT1coS1ZNSU8sIDB4NzYsIHN0cnVjdCBrdm1faXJxZmQpCiAjZGVmaW5lIEtWTV9DUkVBVEVfUElUMiBfSU9XKEtWTUlPLCAweDc3LCBzdHJ1Y3Qga3ZtX3BpdF9jb25maWcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX0JPT1RfQ1BVX0lEIF9JTyhLVk1JTywgMHg3OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JT0VWRU5URkQgX0lPVyhLVk1JTywgMHg3OSwgc3RydWN0IGt2bV9pb2V2ZW50ZmQpCiAjZGVmaW5lIEtWTV9YRU5fSFZNX0NPTkZJRyBfSU9XKEtWTUlPLCAweDdhLCBzdHJ1Y3Qga3ZtX3hlbl9odm1fY29uZmlnKQogI2RlZmluZSBLVk1fU0VUX0NMT0NLIF9JT1coS1ZNSU8sIDB4N2IsIHN0cnVjdCBrdm1fY2xvY2tfZGF0YSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfQ0xPQ0sgX0lPUihLVk1JTywgMHg3Yywgc3RydWN0IGt2bV9jbG9ja19kYXRhKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9QSVQyIF9JT1IoS1ZNSU8sIDB4OWYsIHN0cnVjdCBrdm1fcGl0X3N0YXRlMikKICNkZWZpbmUgS1ZNX1NFVF9QSVQyIF9JT1coS1ZNSU8sIDB4YTAsIHN0cnVjdCBrdm1fcGl0X3N0YXRlMikKICNkZWZpbmUgS1ZNX1BQQ19HRVRfUFZJTkZPIF9JT1coS1ZNSU8sIDB4YTEsIHN0cnVjdCBrdm1fcHBjX3B2aW5mbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfVFNDX0tIWiBfSU8oS1ZNSU8sIDB4YTIpCi0jZGVmaW5lIEtWTV9HRVRfVFNDX0tIWiBfSU8oS1ZNSU8sIDB4YTMpCi0jZGVmaW5lIEtWTV9BU1NJR05fU0VUX0lOVFhfTUFTSyBfSU9XKEtWTUlPLCAweGE0LCAgIHN0cnVjdCBrdm1fYXNzaWduZWRfcGNpX2RldikKLSNkZWZpbmUgS1ZNX1NJR05BTF9NU0kgX0lPVyhLVk1JTywgMHhhNSwgc3RydWN0IGt2bV9tc2kpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fR0VUX1RTQ19LSFogX0lPKEtWTUlPLCAweGEzKQorI2RlZmluZSBLVk1fQVNTSUdOX1NFVF9JTlRYX01BU0sgX0lPVyhLVk1JTywgMHhhNCwgc3RydWN0IGt2bV9hc3NpZ25lZF9wY2lfZGV2KQorI2RlZmluZSBLVk1fU0lHTkFMX01TSSBfSU9XKEtWTUlPLCAweGE1LCBzdHJ1Y3Qga3ZtX21zaSkKICNkZWZpbmUgS1ZNX1BQQ19HRVRfU01NVV9JTkZPIF9JT1IoS1ZNSU8sIDB4YTYsIHN0cnVjdCBrdm1fcHBjX3NtbXVfaW5mbykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9QUENfQUxMT0NBVEVfSFRBQiBfSU9XUihLVk1JTywgMHhhNywgX191MzIpCiAjZGVmaW5lIEtWTV9DUkVBVEVfU1BBUFJfVENFIF9JT1coS1ZNSU8sIDB4YTgsIHN0cnVjdCBrdm1fY3JlYXRlX3NwYXByX3RjZSkKICNkZWZpbmUgS1ZNX0FMTE9DQVRFX1JNQSBfSU9SKEtWTUlPLCAweGE5LCBzdHJ1Y3Qga3ZtX2FsbG9jYXRlX3JtYSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9QUENfR0VUX0hUQUJfRkQgX0lPVyhLVk1JTywgMHhhYSwgc3RydWN0IGt2bV9nZXRfaHRhYl9mZCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fU0VUX0RFVklDRV9BRERSIF9JT1coS1ZNSU8sIDB4YWIsIHN0cnVjdCBrdm1fYXJtX2RldmljZV9hZGRyKQogI2RlZmluZSBLVk1fUFBDX1JUQVNfREVGSU5FX1RPS0VOIF9JT1coS1ZNSU8sIDB4YWMsIHN0cnVjdCBrdm1fcnRhc190b2tlbl9hcmdzKQogI2RlZmluZSBLVk1fQ1JFQVRFX0RFVklDRSBfSU9XUihLVk1JTywgMHhlMCwgc3RydWN0IGt2bV9jcmVhdGVfZGV2aWNlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9ERVZJQ0VfQVRUUiBfSU9XKEtWTUlPLCAweGUxLCBzdHJ1Y3Qga3ZtX2RldmljZV9hdHRyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9ERVZJQ0VfQVRUUiBfSU9XKEtWTUlPLCAweGUyLCBzdHJ1Y3Qga3ZtX2RldmljZV9hdHRyKQogI2RlZmluZSBLVk1fSEFTX0RFVklDRV9BVFRSIF9JT1coS1ZNSU8sIDB4ZTMsIHN0cnVjdCBrdm1fZGV2aWNlX2F0dHIpCiAjZGVmaW5lIEtWTV9SVU4gX0lPKEtWTUlPLCAweDgwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9SRUdTIF9JT1IoS1ZNSU8sIDB4ODEsIHN0cnVjdCBrdm1fcmVncykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfUkVHUyBfSU9XKEtWTUlPLCAweDgyLCBzdHJ1Y3Qga3ZtX3JlZ3MpCiAjZGVmaW5lIEtWTV9HRVRfU1JFR1MgX0lPUihLVk1JTywgMHg4Mywgc3RydWN0IGt2bV9zcmVncykKICNkZWZpbmUgS1ZNX1NFVF9TUkVHUyBfSU9XKEtWTUlPLCAweDg0LCBzdHJ1Y3Qga3ZtX3NyZWdzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1RSQU5TTEFURSBfSU9XUihLVk1JTywgMHg4NSwgc3RydWN0IGt2bV90cmFuc2xhdGlvbikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JTlRFUlJVUFQgX0lPVyhLVk1JTywgMHg4Niwgc3RydWN0IGt2bV9pbnRlcnJ1cHQpCiAjZGVmaW5lIEtWTV9ERUJVR19HVUVTVCBfX0tWTV9ERVBSRUNBVEVEX1ZDUFVfV18weDg3CiAjZGVmaW5lIEtWTV9HRVRfTVNSUyBfSU9XUihLVk1JTywgMHg4OCwgc3RydWN0IGt2bV9tc3JzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9NU1JTIF9JT1coS1ZNSU8sIDB4ODksIHN0cnVjdCBrdm1fbXNycykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfQ1BVSUQgX0lPVyhLVk1JTywgMHg4YSwgc3RydWN0IGt2bV9jcHVpZCkKICNkZWZpbmUgS1ZNX1NFVF9TSUdOQUxfTUFTSyBfSU9XKEtWTUlPLCAweDhiLCBzdHJ1Y3Qga3ZtX3NpZ25hbF9tYXNrKQogI2RlZmluZSBLVk1fR0VUX0ZQVSBfSU9SKEtWTUlPLCAweDhjLCBzdHJ1Y3Qga3ZtX2ZwdSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfRlBVIF9JT1coS1ZNSU8sIDB4OGQsIHN0cnVjdCBrdm1fZnB1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9MQVBJQyBfSU9SKEtWTUlPLCAweDhlLCBzdHJ1Y3Qga3ZtX2xhcGljX3N0YXRlKQogI2RlZmluZSBLVk1fU0VUX0xBUElDIF9JT1coS1ZNSU8sIDB4OGYsIHN0cnVjdCBrdm1fbGFwaWNfc3RhdGUpCiAjZGVmaW5lIEtWTV9TRVRfQ1BVSUQyIF9JT1coS1ZNSU8sIDB4OTAsIHN0cnVjdCBrdm1fY3B1aWQyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9DUFVJRDIgX0lPV1IoS1ZNSU8sIDB4OTEsIHN0cnVjdCBrdm1fY3B1aWQyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1RQUl9BQ0NFU1NfUkVQT1JUSU5HIF9JT1dSKEtWTUlPLCAweDkyLCBzdHJ1Y3Qga3ZtX3Rwcl9hY2Nlc3NfY3RsKQogI2RlZmluZSBLVk1fU0VUX1ZBUElDX0FERFIgX0lPVyhLVk1JTywgMHg5Mywgc3RydWN0IGt2bV92YXBpY19hZGRyKQogI2RlZmluZSBLVk1fUzM5MF9JTlRFUlJVUFQgX0lPVyhLVk1JTywgMHg5NCwgc3RydWN0IGt2bV9zMzkwX2ludGVycnVwdCkKKyNkZWZpbmUgS1ZNX1MzOTBfU1RPUkVfU1RBVFVTX05PQUREUiAoLSAxdWwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLVk1fUzM5MF9TVE9SRV9TVEFUVVNfTk9BRERSICgtMXVsKQotI2RlZmluZSBLVk1fUzM5MF9TVE9SRV9TVEFUVVNfUFJFRklYRUQgKC0ydWwpCisjZGVmaW5lIEtWTV9TMzkwX1NUT1JFX1NUQVRVU19QUkVGSVhFRCAoLSAydWwpCiAjZGVmaW5lIEtWTV9TMzkwX1NUT1JFX1NUQVRVUyBfSU9XKEtWTUlPLCAweDk1LCB1bnNpZ25lZCBsb25nKQogI2RlZmluZSBLVk1fUzM5MF9TRVRfSU5JVElBTF9QU1cgX0lPVyhLVk1JTywgMHg5Niwgc3RydWN0IGt2bV9zMzkwX3BzdykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX0lOSVRJQUxfUkVTRVQgX0lPKEtWTUlPLCAweDk3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9NUF9TVEFURSBfSU9SKEtWTUlPLCAweDk4LCBzdHJ1Y3Qga3ZtX21wX3N0YXRlKQogI2RlZmluZSBLVk1fU0VUX01QX1NUQVRFIF9JT1coS1ZNSU8sIDB4OTksIHN0cnVjdCBrdm1fbXBfc3RhdGUpCiAjZGVmaW5lIEtWTV9OTUkgX0lPKEtWTUlPLCAweDlhKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9HVUVTVF9ERUJVRyBfSU9XKEtWTUlPLCAweDliLCBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1g4Nl9TRVRVUF9NQ0UgX0lPVyhLVk1JTywgMHg5YywgX191NjQpCiAjZGVmaW5lIEtWTV9YODZfR0VUX01DRV9DQVBfU1VQUE9SVEVEIF9JT1IoS1ZNSU8sIDB4OWQsIF9fdTY0KQogI2RlZmluZSBLVk1fWDg2X1NFVF9NQ0UgX0lPVyhLVk1JTywgMHg5ZSwgc3RydWN0IGt2bV94ODZfbWNlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lBNjRfVkNQVV9HRVRfU1RBQ0sgX0lPUihLVk1JTywgMHg5YSwgdm9pZCAqKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lBNjRfVkNQVV9TRVRfU1RBQ0sgX0lPVyhLVk1JTywgMHg5Yiwgdm9pZCAqKQogI2RlZmluZSBLVk1fR0VUX1ZDUFVfRVZFTlRTIF9JT1IoS1ZNSU8sIDB4OWYsIHN0cnVjdCBrdm1fdmNwdV9ldmVudHMpCiAjZGVmaW5lIEtWTV9TRVRfVkNQVV9FVkVOVFMgX0lPVyhLVk1JTywgMHhhMCwgc3RydWN0IGt2bV92Y3B1X2V2ZW50cykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfREVCVUdSRUdTIF9JT1IoS1ZNSU8sIDB4YTEsIHN0cnVjdCBrdm1fZGVidWdyZWdzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9ERUJVR1JFR1MgX0lPVyhLVk1JTywgMHhhMiwgc3RydWN0IGt2bV9kZWJ1Z3JlZ3MpCiAjZGVmaW5lIEtWTV9FTkFCTEVfQ0FQIF9JT1coS1ZNSU8sIDB4YTMsIHN0cnVjdCBrdm1fZW5hYmxlX2NhcCkKICNkZWZpbmUgS1ZNX0dFVF9YU0FWRSBfSU9SKEtWTUlPLCAweGE0LCBzdHJ1Y3Qga3ZtX3hzYXZlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9YU0FWRSBfSU9XKEtWTUlPLCAweGE1LCBzdHJ1Y3Qga3ZtX3hzYXZlKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9YQ1JTIF9JT1IoS1ZNSU8sIDB4YTYsIHN0cnVjdCBrdm1feGNycykKICNkZWZpbmUgS1ZNX1NFVF9YQ1JTIF9JT1coS1ZNSU8sIDB4YTcsIHN0cnVjdCBrdm1feGNycykKICNkZWZpbmUgS1ZNX0RJUlRZX1RMQiBfSU9XKEtWTUlPLCAweGFhLCBzdHJ1Y3Qga3ZtX2RpcnR5X3RsYikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfT05FX1JFRyBfSU9XKEtWTUlPLCAweGFiLCBzdHJ1Y3Qga3ZtX29uZV9yZWcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX09ORV9SRUcgX0lPVyhLVk1JTywgMHhhYywgc3RydWN0IGt2bV9vbmVfcmVnKQogI2RlZmluZSBLVk1fS1ZNQ0xPQ0tfQ1RSTCBfSU8oS1ZNSU8sIDB4YWQpCiAjZGVmaW5lIEtWTV9BUk1fVkNQVV9JTklUIF9JT1coS1ZNSU8sIDB4YWUsIHN0cnVjdCBrdm1fdmNwdV9pbml0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9QUkVGRVJSRURfVEFSR0VUIF9JT1IoS1ZNSU8sIDB4YWYsIHN0cnVjdCBrdm1fdmNwdV9pbml0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9SRUdfTElTVCBfSU9XUihLVk1JTywgMHhiMCwgc3RydWN0IGt2bV9yZWdfbGlzdCkKICNkZWZpbmUgS1ZNX0RFVl9BU1NJR05fRU5BQkxFX0lPTU1VICgxIDw8IDApCiAjZGVmaW5lIEtWTV9ERVZfQVNTSUdOX1BDSV8yXzMgKDEgPDwgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfQVNTSUdOX01BU0tfSU5UWCAoMSA8PCAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fYXNzaWduZWRfcGNpX2RldiB7Ci0gX191MzIgYXNzaWduZWRfZGV2X2lkOwotIF9fdTMyIGJ1c25yOworICBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7CisgIF9fdTMyIGJ1c25yOworICBfX3UzMiBkZXZmbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGV2Zm47Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgc2VnbnI7Ci0gdW5pb24geworICBfX3UzMiBmbGFnczsKKyAgX191MzIgc2VnbnI7CisgIHVuaW9uIHsKKyAgICBfX3UzMiByZXNlcnZlZFsxMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzExXTsKLSB9OworICB9OwogfTsKICNkZWZpbmUgS1ZNX0RFVl9JUlFfSE9TVF9JTlRYICgxIDw8IDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0lSUV9IT1NUX01TSSAoMSA8PCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9JUlFfSE9TVF9NU0lYICgxIDw8IDIpCiAjZGVmaW5lIEtWTV9ERVZfSVJRX0dVRVNUX0lOVFggKDEgPDwgOCkKICNkZWZpbmUgS1ZNX0RFVl9JUlFfR1VFU1RfTVNJICgxIDw8IDkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0lSUV9HVUVTVF9NU0lYICgxIDw8IDEwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9JUlFfSE9TVF9NQVNLIDB4MDBmZgogI2RlZmluZSBLVk1fREVWX0lSUV9HVUVTVF9NQVNLIDB4ZmYwMAogc3RydWN0IGt2bV9hc3NpZ25lZF9pcnEgeworICBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKLSBfX3UzMiBob3N0X2lycTsKLSBfX3UzMiBndWVzdF9pcnE7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGhvc3RfaXJxOworICBfX3UzMiBndWVzdF9pcnE7CisgIF9fdTMyIGZsYWdzOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX3UzMiByZXNlcnZlZFsxMl07Ci0gfTsKKyAgICBfX3UzMiByZXNlcnZlZFsxMl07CisgIH07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fYXNzaWduZWRfbXNpeF9uciB7Ci0gX191MzIgYXNzaWduZWRfZGV2X2lkOwotIF9fdTE2IGVudHJ5X25yOwotIF9fdTE2IHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7CisgIF9fdTE2IGVudHJ5X25yOworICBfX3UxNiBwYWRkaW5nOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9NQVhfTVNJWF9QRVJfREVWIDI1Ngogc3RydWN0IGt2bV9hc3NpZ25lZF9tc2l4X2VudHJ5IHsKLSBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7CisgIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKKyAgX191MzIgZ3NpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnc2k7Ci0gX191MTYgZW50cnk7Ci0gX191MTYgcGFkZGluZ1szXTsKKyAgX191MTYgZW50cnk7CisgIF9fdTE2IHBhZGRpbmdbM107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva3ZtX3BhcmEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva3ZtX3BhcmEuaAppbmRleCBkOTczOTk2Li5iZTA1Yjg1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2t2bV9wYXJhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm1fcGFyYS5oCkBAIC0yOSw2ICsyOSwxMCBAQAogI2RlZmluZSBLVk1fSENfRkVBVFVSRVMgMwogI2RlZmluZSBLVk1fSENfUFBDX01BUF9NQUdJQ19QQUdFIDQKICNkZWZpbmUgS1ZNX0hDX0tJQ0tfQ1BVIDUKLSNpbmNsdWRlIDxhc20va3ZtX3BhcmEuaD4KKyNkZWZpbmUgS1ZNX0hDX01JUFNfR0VUX0NMT0NLX0ZSRVEgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0hDX01JUFNfRVhJVF9WTSA3CisjZGVmaW5lIEtWTV9IQ19NSVBTX0NPTlNPTEVfT1VUUFVUIDgKKyNpbmNsdWRlIDxhc20va3ZtX3BhcmEuaD4KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbDJ0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sMnRwLmgKaW5kZXggODE4Y2RhNC4uNGVhZjdhZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sMnRwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sMnRwLmgKQEAgLTI2LDEzNCArMjYsMTMzIEBACiAjZGVmaW5lIF9fU09DS19TSVpFX18gMTYKIHN0cnVjdCBzb2NrYWRkcl9sMnRwaXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBsMnRwX2ZhbWlseTsKLSBfX2JlMTYgbDJ0cF91bnVzZWQ7Ci0gc3RydWN0IGluX2FkZHIgbDJ0cF9hZGRyOwotIF9fdTMyIGwydHBfY29ubl9pZDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3QgbDJ0cF9mYW1pbHk7CisgIF9fYmUxNiBsMnRwX3VudXNlZDsKKyAgc3RydWN0IGluX2FkZHIgbDJ0cF9hZGRyOworICBfX3UzMiBsMnRwX2Nvbm5faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgX19wYWRbc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLQotIHNpemVvZihfX2tlcm5lbF9zYV9mYW1pbHlfdCkgLQotIHNpemVvZihfX2JlMTYpIC0gc2l6ZW9mKHN0cnVjdCBpbl9hZGRyKSAtCi0gc2l6ZW9mKF9fdTMyKV07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIF9fcGFkW3NpemVvZihzdHJ1Y3Qgc29ja2FkZHIpIC0gc2l6ZW9mKF9fa2VybmVsX3NhX2ZhbWlseV90KSAtIHNpemVvZihfX2JlMTYpIC0gc2l6ZW9mKHN0cnVjdCBpbl9hZGRyKSAtIHNpemVvZihfX3UzMildOwogfTsKIHN0cnVjdCBzb2NrYWRkcl9sMnRwaXA2IHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBsMnRwX2ZhbWlseTsKLSBfX2JlMTYgbDJ0cF91bnVzZWQ7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IGwydHBfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbDJ0cF9mbG93aW5mbzsKLSBzdHJ1Y3QgaW42X2FkZHIgbDJ0cF9hZGRyOwotIF9fdTMyIGwydHBfc2NvcGVfaWQ7Ci0gX191MzIgbDJ0cF9jb25uX2lkOworICBfX2JlMTYgbDJ0cF91bnVzZWQ7CisgIF9fYmUzMiBsMnRwX2Zsb3dpbmZvOworICBzdHJ1Y3QgaW42X2FkZHIgbDJ0cF9hZGRyOworICBfX3UzMiBsMnRwX3Njb3BlX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbDJ0cF9jb25uX2lkOwogfTsKIGVudW0gewotIEwyVFBfQ01EX05PT1AsCi0gTDJUUF9DTURfVFVOTkVMX0NSRUFURSwKKyAgTDJUUF9DTURfTk9PUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9DTURfVFVOTkVMX0RFTEVURSwKLSBMMlRQX0NNRF9UVU5ORUxfTU9ESUZZLAotIEwyVFBfQ01EX1RVTk5FTF9HRVQsCi0gTDJUUF9DTURfU0VTU0lPTl9DUkVBVEUsCisgIEwyVFBfQ01EX1RVTk5FTF9DUkVBVEUsCisgIEwyVFBfQ01EX1RVTk5FTF9ERUxFVEUsCisgIEwyVFBfQ01EX1RVTk5FTF9NT0RJRlksCisgIEwyVFBfQ01EX1RVTk5FTF9HRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQ01EX1NFU1NJT05fREVMRVRFLAotIEwyVFBfQ01EX1NFU1NJT05fTU9ESUZZLAotIEwyVFBfQ01EX1NFU1NJT05fR0VULAotIF9fTDJUUF9DTURfTUFYLAorICBMMlRQX0NNRF9TRVNTSU9OX0NSRUFURSwKKyAgTDJUUF9DTURfU0VTU0lPTl9ERUxFVEUsCisgIEwyVFBfQ01EX1NFU1NJT05fTU9ESUZZLAorICBMMlRQX0NNRF9TRVNTSU9OX0dFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTDJUUF9DTURfTUFYLAogfTsKICNkZWZpbmUgTDJUUF9DTURfTUFYIChfX0wyVFBfQ01EX01BWCAtIDEpCiBlbnVtIHsKLSBMMlRQX0FUVFJfTk9ORSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX1BXX1RZUEUsCi0gTDJUUF9BVFRSX0VOQ0FQX1RZUEUsCi0gTDJUUF9BVFRSX09GRlNFVCwKLSBMMlRQX0FUVFJfREFUQV9TRVEsCisgIEwyVFBfQVRUUl9OT05FLAorICBMMlRQX0FUVFJfUFdfVFlQRSwKKyAgTDJUUF9BVFRSX0VOQ0FQX1RZUEUsCisgIEwyVFBfQVRUUl9PRkZTRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9MMlNQRUNfVFlQRSwKLSBMMlRQX0FUVFJfTDJTUEVDX0xFTiwKLSBMMlRQX0FUVFJfUFJPVE9fVkVSU0lPTiwKLSBMMlRQX0FUVFJfSUZOQU1FLAorICBMMlRQX0FUVFJfREFUQV9TRVEsCisgIEwyVFBfQVRUUl9MMlNQRUNfVFlQRSwKKyAgTDJUUF9BVFRSX0wyU1BFQ19MRU4sCisgIEwyVFBfQVRUUl9QUk9UT19WRVJTSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfQ09OTl9JRCwKLSBMMlRQX0FUVFJfUEVFUl9DT05OX0lELAotIEwyVFBfQVRUUl9TRVNTSU9OX0lELAotIEwyVFBfQVRUUl9QRUVSX1NFU1NJT05fSUQsCisgIEwyVFBfQVRUUl9JRk5BTUUsCisgIEwyVFBfQVRUUl9DT05OX0lELAorICBMMlRQX0FUVFJfUEVFUl9DT05OX0lELAorICBMMlRQX0FUVFJfU0VTU0lPTl9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX1VEUF9DU1VNLAotIEwyVFBfQVRUUl9WTEFOX0lELAotIEwyVFBfQVRUUl9DT09LSUUsCi0gTDJUUF9BVFRSX1BFRVJfQ09PS0lFLAorICBMMlRQX0FUVFJfUEVFUl9TRVNTSU9OX0lELAorICBMMlRQX0FUVFJfVURQX0NTVU0sCisgIEwyVFBfQVRUUl9WTEFOX0lELAorICBMMlRQX0FUVFJfQ09PS0lFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfREVCVUcsCi0gTDJUUF9BVFRSX1JFQ1ZfU0VRLAotIEwyVFBfQVRUUl9TRU5EX1NFUSwKLSBMMlRQX0FUVFJfTE5TX01PREUsCisgIEwyVFBfQVRUUl9QRUVSX0NPT0tJRSwKKyAgTDJUUF9BVFRSX0RFQlVHLAorICBMMlRQX0FUVFJfUkVDVl9TRVEsCisgIEwyVFBfQVRUUl9TRU5EX1NFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX1VTSU5HX0lQU0VDLAotIEwyVFBfQVRUUl9SRUNWX1RJTUVPVVQsCi0gTDJUUF9BVFRSX0ZELAotIEwyVFBfQVRUUl9JUF9TQUREUiwKKyAgTDJUUF9BVFRSX0xOU19NT0RFLAorICBMMlRQX0FUVFJfVVNJTkdfSVBTRUMsCisgIEwyVFBfQVRUUl9SRUNWX1RJTUVPVVQsCisgIEwyVFBfQVRUUl9GRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX0lQX0RBRERSLAotIEwyVFBfQVRUUl9VRFBfU1BPUlQsCi0gTDJUUF9BVFRSX1VEUF9EUE9SVCwKLSBMMlRQX0FUVFJfTVRVLAorICBMMlRQX0FUVFJfSVBfU0FERFIsCisgIEwyVFBfQVRUUl9JUF9EQUREUiwKKyAgTDJUUF9BVFRSX1VEUF9TUE9SVCwKKyAgTDJUUF9BVFRSX1VEUF9EUE9SVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX01SVSwKLSBMMlRQX0FUVFJfU1RBVFMsCi0gTDJUUF9BVFRSX0lQNl9TQUREUiwKLSBMMlRQX0FUVFJfSVA2X0RBRERSLAorICBMMlRQX0FUVFJfTVRVLAorICBMMlRQX0FUVFJfTVJVLAorICBMMlRQX0FUVFJfU1RBVFMsCisgIEwyVFBfQVRUUl9JUDZfU0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTDJUUF9BVFRSX01BWCwKKyAgTDJUUF9BVFRSX0lQNl9EQUREUiwKKyAgTDJUUF9BVFRSX1VEUF9aRVJPX0NTVU02X1RYLAorICBMMlRQX0FUVFJfVURQX1pFUk9fQ1NVTTZfUlgsCisgIF9fTDJUUF9BVFRSX01BWCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBMMlRQX0FUVFJfTUFYIChfX0wyVFBfQVRUUl9NQVggLSAxKQogZW51bSB7CisgIEwyVFBfQVRUUl9TVEFUU19OT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfU1RBVFNfTk9ORSwKLSBMMlRQX0FUVFJfVFhfUEFDS0VUUywKLSBMMlRQX0FUVFJfVFhfQllURVMsCi0gTDJUUF9BVFRSX1RYX0VSUk9SUywKKyAgTDJUUF9BVFRSX1RYX1BBQ0tFVFMsCisgIEwyVFBfQVRUUl9UWF9CWVRFUywKKyAgTDJUUF9BVFRSX1RYX0VSUk9SUywKKyAgTDJUUF9BVFRSX1JYX1BBQ0tFVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9SWF9QQUNLRVRTLAotIEwyVFBfQVRUUl9SWF9CWVRFUywKLSBMMlRQX0FUVFJfUlhfU0VRX0RJU0NBUkRTLAotIEwyVFBfQVRUUl9SWF9PT1NfUEFDS0VUUywKKyAgTDJUUF9BVFRSX1JYX0JZVEVTLAorICBMMlRQX0FUVFJfUlhfU0VRX0RJU0NBUkRTLAorICBMMlRQX0FUVFJfUlhfT09TX1BBQ0tFVFMsCisgIEwyVFBfQVRUUl9SWF9FUlJPUlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9SWF9FUlJPUlMsCi0gX19MMlRQX0FUVFJfU1RBVFNfTUFYLAorICBfX0wyVFBfQVRUUl9TVEFUU19NQVgsCiB9OwogI2RlZmluZSBMMlRQX0FUVFJfU1RBVFNfTUFYIChfX0wyVFBfQVRUUl9TVEFUU19NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbDJ0cF9wd3R5cGUgewotIEwyVFBfUFdUWVBFX05PTkUgPSAweDAwMDAsCi0gTDJUUF9QV1RZUEVfRVRIX1ZMQU4gPSAweDAwMDQsCi0gTDJUUF9QV1RZUEVfRVRIID0gMHgwMDA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX1BXVFlQRV9QUFAgPSAweDAwMDcsCi0gTDJUUF9QV1RZUEVfUFBQX0FDID0gMHgwMDA4LAotIEwyVFBfUFdUWVBFX0lQID0gMHgwMDBiLAotIF9fTDJUUF9QV1RZUEVfTUFYCisgIEwyVFBfUFdUWVBFX05PTkUgPSAweDAwMDAsCisgIEwyVFBfUFdUWVBFX0VUSF9WTEFOID0gMHgwMDA0LAorICBMMlRQX1BXVFlQRV9FVEggPSAweDAwMDUsCisgIEwyVFBfUFdUWVBFX1BQUCA9IDB4MDAwNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEwyVFBfUFdUWVBFX1BQUF9BQyA9IDB4MDAwOCwKKyAgTDJUUF9QV1RZUEVfSVAgPSAweDAwMGIsCisgIF9fTDJUUF9QV1RZUEVfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbDJ0cF9sMnNwZWNfdHlwZSB7Ci0gTDJUUF9MMlNQRUNUWVBFX05PTkUsCi0gTDJUUF9MMlNQRUNUWVBFX0RFRkFVTFQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBMMlRQX0wyU1BFQ1RZUEVfTk9ORSwKKyAgTDJUUF9MMlNQRUNUWVBFX0RFRkFVTFQsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbDJ0cF9lbmNhcF90eXBlIHsKLSBMMlRQX0VOQ0FQVFlQRV9VRFAsCi0gTDJUUF9FTkNBUFRZUEVfSVAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBMMlRQX0VOQ0FQVFlQRV9VRFAsCisgIEwyVFBfRU5DQVBUWVBFX0lQLAogfTsKLWVudW0gbDJ0cF9zZXFtb2RlIHsKLSBMMlRQX1NFUV9OT05FID0gMCwKLSBMMlRQX1NFUV9JUCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfU0VRX0FMTCA9IDIsCitlbnVtIGwydHBfc2VxbW9kZSB7CisgIEwyVFBfU0VRX05PTkUgPSAwLAorICBMMlRQX1NFUV9JUCA9IDEsCisgIEwyVFBfU0VRX0FMTCA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTDJUUF9HRU5MX05BTUUgImwydHAiCiAjZGVmaW5lIEwyVFBfR0VOTF9WRVJTSU9OIDB4MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGliYy1jb21wYXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGliYy1jb21wYXQuaAppbmRleCA4MjZiNzYzLi5iNjZlYmUyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xpYmMtY29tcGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9saWJjLWNvbXBhdC5oCkBAIC0zMiwyMiArMzIsMzMgQEAKICNkZWZpbmUgX19VQVBJX0RFRl9JUFY2X01SRVEgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19VQVBJX0RFRl9JUFBST1RPX1Y2IDAKKyNkZWZpbmUgX19VQVBJX0RFRl9JUFY2X09QVElPTlMgMAogI2Vsc2UKICNkZWZpbmUgX19VQVBJX0RFRl9JTjZfQUREUiAxCi0jZGVmaW5lIF9fVUFQSV9ERUZfSU42X0FERFJfQUxUIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fVUFQSV9ERUZfSU42X0FERFJfQUxUIDEKICNkZWZpbmUgX19VQVBJX0RFRl9TT0NLQUREUl9JTjYgMQogI2RlZmluZSBfX1VBUElfREVGX0lQVjZfTVJFUSAxCiAjZGVmaW5lIF9fVUFQSV9ERUZfSVBQUk9UT19WNiAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX1VBUElfREVGX0lQVjZfT1BUSU9OUyAxCiAjZW5kaWYKKyNpZmRlZiBfU1lTX1hBVFRSX0gKKyNkZWZpbmUgX19VQVBJX0RFRl9YQVRUUiAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKKyNkZWZpbmUgX19VQVBJX0RFRl9YQVRUUiAxCisjZW5kaWYKKyNlbHNlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX1VBUElfREVGX0lONl9BRERSIDEKICNkZWZpbmUgX19VQVBJX0RFRl9JTjZfQUREUl9BTFQgMQogI2RlZmluZSBfX1VBUElfREVGX1NPQ0tBRERSX0lONiAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX1VBUElfREVGX0lQVjZfTVJFUSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX1VBUElfREVGX0lQUFJPVE9fVjYgMQotI2VuZGlmCisjZGVmaW5lIF9fVUFQSV9ERUZfSVBWNl9PUFRJT05TIDEKKyNkZWZpbmUgX19VQVBJX0RFRl9YQVRUUiAxCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGxjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xsYy5oCmluZGV4IDBlN2RiMDAuLjcwMDdiNTcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGxjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sbGMuaApAQCAtMjIsNzUgKzIyLDczIEBACiAjZGVmaW5lIF9fTExDX1NPQ0tfU0laRV9fIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX2xsYyB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2xsY19mYW1pbHk7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2xsY19hcnBocmQ7Ci0gdW5zaWduZWQgY2hhciBzbGxjX3Rlc3Q7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNsbGNfZmFtaWx5OworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzbGxjX2FycGhyZDsKKyAgdW5zaWduZWQgY2hhciBzbGxjX3Rlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc2xsY194aWQ7Ci0gdW5zaWduZWQgY2hhciBzbGxjX3VhOwotIHVuc2lnbmVkIGNoYXIgc2xsY19zYXA7Ci0gdW5zaWduZWQgY2hhciBzbGxjX21hY1tJRkhXQUREUkxFTl07CisgIHVuc2lnbmVkIGNoYXIgc2xsY194aWQ7CisgIHVuc2lnbmVkIGNoYXIgc2xsY191YTsKKyAgdW5zaWduZWQgY2hhciBzbGxjX3NhcDsKKyAgdW5zaWduZWQgY2hhciBzbGxjX21hY1tJRkhXQUREUkxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgX19wYWRbX19MTENfU09DS19TSVpFX18gLQotIHNpemVvZihfX2tlcm5lbF9zYV9mYW1pbHlfdCkgKiAyIC0KLSBzaXplb2YodW5zaWduZWQgY2hhcikgKiA0IC0gSUZIV0FERFJMRU5dOworICB1bnNpZ25lZCBjaGFyIF9fcGFkW19fTExDX1NPQ0tfU0laRV9fIC0gc2l6ZW9mKF9fa2VybmVsX3NhX2ZhbWlseV90KSAqIDIgLSBzaXplb2YodW5zaWduZWQgY2hhcikgKiA0IC0gSUZIV0FERFJMRU5dOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGxsY19zb2Nrb3B0cyB7Ci0gTExDX09QVF9VTktOT1dOID0gMCwKLSBMTENfT1BUX1JFVFJZLAotIExMQ19PUFRfU0laRSwKKyAgTExDX09QVF9VTktOT1dOID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTExDX09QVF9BQ0tfVE1SX0VYUCwKLSBMTENfT1BUX1BfVE1SX0VYUCwKLSBMTENfT1BUX1JFSl9UTVJfRVhQLAotIExMQ19PUFRfQlVTWV9UTVJfRVhQLAorICBMTENfT1BUX1JFVFJZLAorICBMTENfT1BUX1NJWkUsCisgIExMQ19PUFRfQUNLX1RNUl9FWFAsCisgIExMQ19PUFRfUF9UTVJfRVhQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMTENfT1BUX1RYX1dJTiwKLSBMTENfT1BUX1JYX1dJTiwKLSBMTENfT1BUX1BLVElORk8sCi0gTExDX09QVF9NQVgKKyAgTExDX09QVF9SRUpfVE1SX0VYUCwKKyAgTExDX09QVF9CVVNZX1RNUl9FWFAsCisgIExMQ19PUFRfVFhfV0lOLAorICBMTENfT1BUX1JYX1dJTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIExMQ19PUFRfUEtUSU5GTywKKyAgTExDX09QVF9NQVgKIH07CiAjZGVmaW5lIExMQ19PUFRfTUFYX1JFVFJZIDEwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX09QVF9NQVhfU0laRSA0MTk2CiAjZGVmaW5lIExMQ19PUFRfTUFYX1dJTiAxMjcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19PUFRfTUFYX0FDS19UTVJfRVhQIDYwCiAjZGVmaW5lIExMQ19PUFRfTUFYX1BfVE1SX0VYUCA2MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX09QVF9NQVhfUkVKX1RNUl9FWFAgNjAKICNkZWZpbmUgTExDX09QVF9NQVhfQlVTWV9UTVJfRVhQIDYwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMTENfU0FQX05VTEwgMHgwMAogI2RlZmluZSBMTENfU0FQX0xMQyAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMTENfU0FQX1NOQSAweDA0CiAjZGVmaW5lIExMQ19TQVBfUE5NIDB4MEUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfSVAgMHgwNgogI2RlZmluZSBMTENfU0FQX0JTUEFOIDB4NDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfTU1TIDB4NEUKICNkZWZpbmUgTExDX1NBUF84MjA4IDB4N0UKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfM0NPTSAweDgwCiAjZGVmaW5lIExMQ19TQVBfUFJPIDB4OEUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfU05BUCAweEFBCiAjZGVmaW5lIExMQ19TQVBfQkFOWUFOIDB4QkMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfSVBYIDB4RTAKICNkZWZpbmUgTExDX1NBUF9ORVRCRVVJIDB4RjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfTEFOTUdSIDB4RjQKICNkZWZpbmUgTExDX1NBUF9JTVBMIDB4RjgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfRElTQyAweEZDCiAjZGVmaW5lIExMQ19TQVBfT1NJIDB4RkUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfTEFSIDB4REMKICNkZWZpbmUgTExDX1NBUF9STSAweEQ0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMTENfU0FQX0dMT0JBTCAweEZGCiBzdHJ1Y3QgbGxjX3BrdGluZm8gewotIGludCBscGlfaWZpbmRleDsKLSB1bnNpZ25lZCBjaGFyIGxwaV9zYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbHBpX21hY1tJRkhXQUREUkxFTl07CisgIGludCBscGlfaWZpbmRleDsKKyAgdW5zaWduZWQgY2hhciBscGlfc2FwOworICB1bnNpZ25lZCBjaGFyIGxwaV9tYWNbSUZIV0FERFJMRU5dOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbG9vcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sb29wLmgKaW5kZXggMTRhNDYwMi4uYzA4ODFmNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sb29wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sb29wLmgKQEAgLTIyLDQ4ICsyMiw0OCBAQAogI2RlZmluZSBMT19LRVlfU0laRSAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIExPX0ZMQUdTX1JFQURfT05MWSA9IDEsCi0gTE9fRkxBR1NfQVVUT0NMRUFSID0gNCwKLSBMT19GTEFHU19QQVJUU0NBTiA9IDgsCisgIExPX0ZMQUdTX1JFQURfT05MWSA9IDEsCisgIExPX0ZMQUdTX0FVVE9DTEVBUiA9IDQsCisgIExPX0ZMQUdTX1BBUlRTQ0FOID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2luY2x1ZGUgPGFzbS9wb3NpeF90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgbG9vcF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGxvX251bWJlcjsKLSBfX2tlcm5lbF9vbGRfZGV2X3QgbG9fZGV2aWNlOwotIHVuc2lnbmVkIGxvbmcgbG9faW5vZGU7Ci0gX19rZXJuZWxfb2xkX2Rldl90IGxvX3JkZXZpY2U7CisgIGludCBsb19udW1iZXI7CisgIF9fa2VybmVsX29sZF9kZXZfdCBsb19kZXZpY2U7CisgIHVuc2lnbmVkIGxvbmcgbG9faW5vZGU7CisgIF9fa2VybmVsX29sZF9kZXZfdCBsb19yZGV2aWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbG9fb2Zmc2V0OwotIGludCBsb19lbmNyeXB0X3R5cGU7Ci0gaW50IGxvX2VuY3J5cHRfa2V5X3NpemU7Ci0gaW50IGxvX2ZsYWdzOworICBpbnQgbG9fb2Zmc2V0OworICBpbnQgbG9fZW5jcnlwdF90eXBlOworICBpbnQgbG9fZW5jcnlwdF9rZXlfc2l6ZTsKKyAgaW50IGxvX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGxvX25hbWVbTE9fTkFNRV9TSVpFXTsKLSB1bnNpZ25lZCBjaGFyIGxvX2VuY3J5cHRfa2V5W0xPX0tFWV9TSVpFXTsKLSB1bnNpZ25lZCBsb25nIGxvX2luaXRbMl07Ci0gY2hhciByZXNlcnZlZFs0XTsKKyAgY2hhciBsb19uYW1lW0xPX05BTUVfU0laRV07CisgIHVuc2lnbmVkIGNoYXIgbG9fZW5jcnlwdF9rZXlbTE9fS0VZX1NJWkVdOworICB1bnNpZ25lZCBsb25nIGxvX2luaXRbMl07CisgIGNoYXIgcmVzZXJ2ZWRbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBsb29wX2luZm82NCB7Ci0gX191NjQgbG9fZGV2aWNlOwotIF9fdTY0IGxvX2lub2RlOworICBfX3U2NCBsb19kZXZpY2U7CisgIF9fdTY0IGxvX2lub2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBsb19yZGV2aWNlOwotIF9fdTY0IGxvX29mZnNldDsKLSBfX3U2NCBsb19zaXplbGltaXQ7Ci0gX191MzIgbG9fbnVtYmVyOworICBfX3U2NCBsb19yZGV2aWNlOworICBfX3U2NCBsb19vZmZzZXQ7CisgIF9fdTY0IGxvX3NpemVsaW1pdDsKKyAgX191MzIgbG9fbnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsb19lbmNyeXB0X3R5cGU7Ci0gX191MzIgbG9fZW5jcnlwdF9rZXlfc2l6ZTsKLSBfX3UzMiBsb19mbGFnczsKLSBfX3U4IGxvX2ZpbGVfbmFtZVtMT19OQU1FX1NJWkVdOworICBfX3UzMiBsb19lbmNyeXB0X3R5cGU7CisgIF9fdTMyIGxvX2VuY3J5cHRfa2V5X3NpemU7CisgIF9fdTMyIGxvX2ZsYWdzOworICBfX3U4IGxvX2ZpbGVfbmFtZVtMT19OQU1FX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxvX2NyeXB0X25hbWVbTE9fTkFNRV9TSVpFXTsKLSBfX3U4IGxvX2VuY3J5cHRfa2V5W0xPX0tFWV9TSVpFXTsKLSBfX3U2NCBsb19pbml0WzJdOworICBfX3U4IGxvX2NyeXB0X25hbWVbTE9fTkFNRV9TSVpFXTsKKyAgX191OCBsb19lbmNyeXB0X2tleVtMT19LRVlfU0laRV07CisgIF9fdTY0IGxvX2luaXRbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTE9fQ1JZUFRfTk9ORSAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21ham9yLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21ham9yLmgKaW5kZXggZDA3ZDA2NS4uYjJhOTU4YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYWpvci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFqb3IuaApAQCAtMTY5LDcgKzE2OSw3IEBACiAjZGVmaW5lIFNDU0lfRElTSzE1X01BSk9SIDEzNQogI2RlZmluZSBVTklYOThfUFRZX01BU1RFUl9NQUpPUiAxMjgKICNkZWZpbmUgVU5JWDk4X1BUWV9NQUpPUl9DT1VOVCA4Ci0jZGVmaW5lIFVOSVg5OF9QVFlfU0xBVkVfTUFKT1IgKFVOSVg5OF9QVFlfTUFTVEVSX01BSk9SK1VOSVg5OF9QVFlfTUFKT1JfQ09VTlQpCisjZGVmaW5lIFVOSVg5OF9QVFlfU0xBVkVfTUFKT1IgKFVOSVg5OF9QVFlfTUFTVEVSX01BSk9SICsgVU5JWDk4X1BUWV9NQUpPUl9DT1VOVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSQkRfTUFKT1IgMTQ3CiAjZGVmaW5lIFJURl9NQUpPUiAxNTAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFwX3RvXzdzZWdtZW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21hcF90b183c2VnbWVudC5oCmluZGV4IDkzODI5Y2UuLjE1NTZjYzQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFwX3RvXzdzZWdtZW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXBfdG9fN3NlZ21lbnQuaApAQCAtMzEsMjQgKzMxLDI0IEBACiAjZGVmaW5lIEJJVF9TRUc3X1JFU0VSVkVEIDcKIHN0cnVjdCBzZWc3X2NvbnZlcnNpb25fbWFwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB0YWJsZVsxMjhdOworICB1bnNpZ25lZCBjaGFyIHRhYmxlWzEyOF07CiB9OwotI2RlZmluZSBTRUc3X0NPTlZFUlNJT05fTUFQKF9uYW1lLCBfbWFwKSAgIHN0cnVjdCBzZWc3X2NvbnZlcnNpb25fbWFwIF9uYW1lID0geyAudGFibGUgPSB7IF9tYXAgfSB9CisjZGVmaW5lIFNFRzdfQ09OVkVSU0lPTl9NQVAoX25hbWUsX21hcCkgc3RydWN0IHNlZzdfY29udmVyc2lvbl9tYXAgX25hbWUgPSB7LnRhYmxlID0geyBfbWFwIH0gfQogI2RlZmluZSBNQVBfVE9fU0VHN19TWVNGU19GSUxFICJtYXBfc2VnNyIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9TRUc3KGwsYSxiLGMsZCxlLGYsZykgICAoIGE8PEJJVF9TRUc3X0EgfCBiPDxCSVRfU0VHN19CIHwgYzw8QklUX1NFRzdfQyB8IGQ8PEJJVF9TRUc3X0QgfCAgIGU8PEJJVF9TRUc3X0UgfCBmPDxCSVRfU0VHN19GIHwgZzw8QklUX1NFRzdfRyApCi0jZGVmaW5lIF9NQVBfMF8zMl9BU0NJSV9TRUc3X05PTl9QUklOVEFCTEUgICAwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwKLSNkZWZpbmUgX01BUF8zM180N19BU0NJSV9TRUc3X1NZTUJPTCAgIF9TRUc3KCchJywwLDAsMCwwLDEsMSwwKSwgX1NFRzcoJyInLDAsMSwwLDAsMCwxLDApLCBfU0VHNygnIycsMCwxLDEsMCwxLDEsMCksICBfU0VHNygnJCcsMSwwLDEsMSwwLDEsMSksIF9TRUc3KCclJywwLDAsMSwwLDAsMSwwKSwgX1NFRzcoJyYnLDEsMCwxLDEsMSwxLDEpLCAgX1NFRzcoJ1wnJywwLDAsMCwwLDAsMSwwKSxfU0VHNygnKCcsMSwwLDAsMSwxLDEsMCksIF9TRUc3KCcpJywxLDEsMSwxLDAsMCwwKSwgIF9TRUc3KCcqJywwLDEsMSwwLDEsMSwxKSwgX1NFRzcoJysnLDAsMSwxLDAsMCwwLDEpLCBfU0VHNygnLCcsMCwwLDAsMCwxLDAsMCksICBfU0VHNygnLScsMCwwLDAsMCwwLDAsMSksIF9TRUc3KCcuJywwLDAsMCwwLDEsMCwwKSwgX1NFRzcoJy8nLDAsMSwwLDAsMSwwLDEpLAotI2RlZmluZSBfTUFQXzQ4XzU3X0FTQ0lJX1NFRzdfTlVNRVJJQyAgIF9TRUc3KCcwJywxLDEsMSwxLDEsMSwwKSwgX1NFRzcoJzEnLDAsMSwxLDAsMCwwLDApLCBfU0VHNygnMicsMSwxLDAsMSwxLDAsMSksICBfU0VHNygnMycsMSwxLDEsMSwwLDAsMSksIF9TRUc3KCc0JywwLDEsMSwwLDAsMSwxKSwgX1NFRzcoJzUnLDEsMCwxLDEsMCwxLDEpLCAgX1NFRzcoJzYnLDEsMCwxLDEsMSwxLDEpLCBfU0VHNygnNycsMSwxLDEsMCwwLDAsMCksIF9TRUc3KCc4JywxLDEsMSwxLDEsMSwxKSwgIF9TRUc3KCc5JywxLDEsMSwxLDAsMSwxKSwKKyNkZWZpbmUgX1NFRzcobCxhLGIsYyxkLGUsZixnKSAoYSA8PCBCSVRfU0VHN19BIHwgYiA8PCBCSVRfU0VHN19CIHwgYyA8PCBCSVRfU0VHN19DIHwgZCA8PCBCSVRfU0VHN19EIHwgZSA8PCBCSVRfU0VHN19FIHwgZiA8PCBCSVRfU0VHN19GIHwgZyA8PCBCSVRfU0VHN19HKQorI2RlZmluZSBfTUFQXzBfMzJfQVNDSUlfU0VHN19OT05fUFJJTlRBQkxFIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisjZGVmaW5lIF9NQVBfMzNfNDdfQVNDSUlfU0VHN19TWU1CT0wgX1NFRzcoJyEnLCAwLCAwLCAwLCAwLCAxLCAxLCAwKSwgX1NFRzcoJyInLCAwLCAxLCAwLCAwLCAwLCAxLCAwKSwgX1NFRzcoJyMnLCAwLCAxLCAxLCAwLCAxLCAxLCAwKSwgX1NFRzcoJyQnLCAxLCAwLCAxLCAxLCAwLCAxLCAxKSwgX1NFRzcoJyUnLCAwLCAwLCAxLCAwLCAwLCAxLCAwKSwgX1NFRzcoJyYnLCAxLCAwLCAxLCAxLCAxLCAxLCAxKSwgX1NFRzcoJ1wnJywgMCwgMCwgMCwgMCwgMCwgMSwgMCksIF9TRUc3KCcoJywgMSwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCcpJywgMSwgMSwgMSwgMSwgMCwgMCwgMCksIF9TRUc3KCcqJywgMCwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCcrJywgMCwgMSwgMSwgMCwgMCwgMCwgMSksIF9TRUc3KCcsJywgMCwgMCwgMCwgMCwgMSwgMCwgMCksIF9TRUc3KCctJywgMCwgMCwgMCwgMCwgMCwgMCwgMSksIF9TRUc3KCcuJywgMCwgMCwgMCwgMCwgMSwgMCwgMCksIF9TRUc3KCcvJywgMCwgMSwgMCwgMCwgMSwgMCwgMSksCisjZGVmaW5lIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDIF9TRUc3KCcwJywgMSwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCcxJywgMCwgMSwgMSwgMCwgMCwgMCwgMCksIF9TRUc3KCcyJywgMSwgMSwgMCwgMSwgMSwgMCwgMSksIF9TRUc3KCczJywgMSwgMSwgMSwgMSwgMCwgMCwgMSksIF9TRUc3KCc0JywgMCwgMSwgMSwgMCwgMCwgMSwgMSksIF9TRUc3KCc1JywgMSwgMCwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCc2JywgMSwgMCwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCc3JywgMSwgMSwgMSwgMCwgMCwgMCwgMCksIF9TRUc3KCc4JywgMSwgMSwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCc5JywgMSwgMSwgMSwgMSwgMCwgMSwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfTUFQXzU4XzY0X0FTQ0lJX1NFRzdfU1lNQk9MICAgX1NFRzcoJzonLDAsMCwwLDEsMCwwLDEpLCBfU0VHNygnOycsMCwwLDAsMSwwLDAsMSksIF9TRUc3KCc8JywxLDAsMCwwLDAsMSwxKSwgIF9TRUc3KCc9JywwLDAsMCwxLDAsMCwxKSwgX1NFRzcoJz4nLDEsMSwwLDAsMCwwLDEpLCBfU0VHNygnPycsMSwxLDEsMCwwLDEsMCksICBfU0VHNygnQCcsMSwxLDAsMSwxLDEsMSksCi0jZGVmaW5lIF9NQVBfNjVfOTBfQVNDSUlfU0VHN19BTFBIQV9VUFBSICAgX1NFRzcoJ0EnLDEsMSwxLDAsMSwxLDEpLCBfU0VHNygnQicsMSwxLDEsMSwxLDEsMSksIF9TRUc3KCdDJywxLDAsMCwxLDEsMSwwKSwgIF9TRUc3KCdEJywxLDEsMSwxLDEsMSwwKSwgX1NFRzcoJ0UnLDEsMCwwLDEsMSwxLDEpLCBfU0VHNygnRicsMSwwLDAsMCwxLDEsMSksICBfU0VHNygnRycsMSwxLDEsMSwwLDEsMSksIF9TRUc3KCdIJywwLDEsMSwwLDEsMSwxKSwgX1NFRzcoJ0knLDAsMSwxLDAsMCwwLDApLCAgX1NFRzcoJ0onLDAsMSwxLDEsMCwwLDApLCBfU0VHNygnSycsMCwxLDEsMCwxLDEsMSksIF9TRUc3KCdMJywwLDAsMCwxLDEsMSwwKSwgIF9TRUc3KCdNJywxLDEsMSwwLDEsMSwwKSwgX1NFRzcoJ04nLDEsMSwxLDAsMSwxLDApLCBfU0VHNygnTycsMSwxLDEsMSwxLDEsMCksICBfU0VHNygnUCcsMSwxLDAsMCwxLDEsMSksIF9TRUc3KCdRJywxLDEsMSwxLDEsMSwwKSwgX1NFRzcoJ1InLDEsMSwxLDAsMSwxLDEpLCAgX1NFRzcoJ1MnLDEsMCwxLDEsMCwxLDEpLCBfU0VHNygnVCcsMCwwLDAsMSwxLDEsMSksIF9TRUc3KCdVJywwLDEsMSwxLDEsMSwwKSwgIF9TRUc3KCdWJywwLDEsMSwxLDEsMSwwKSwgX1NFRzcoJ1cnLDAsMSwxLDEsMSwxLDEpLCBfU0VHNygnWCcsMCwxLDEsMCwxLDEsMSksICBfU0VHNygnWScsMCwxLDEsMCwwLDEsMSksIF9TRUc3KCdaJywxLDEsMCwxLDEsMCwxKSwKLSNkZWZpbmUgX01BUF85MV85Nl9BU0NJSV9TRUc3X1NZTUJPTCAgIF9TRUc3KCdbJywxLDAsMCwxLDEsMSwwKSwgX1NFRzcoJ1xcJywwLDAsMSwwLDAsMSwxKSxfU0VHNygnXScsMSwxLDEsMSwwLDAsMCksICBfU0VHNygnXicsMSwxLDAsMCwwLDEsMCksIF9TRUc3KCdfJywwLDAsMCwxLDAsMCwwKSwgX1NFRzcoJ2AnLDAsMSwwLDAsMCwwLDApLAotI2RlZmluZSBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSICAgX1NFRzcoJ0EnLDEsMSwxLDAsMSwxLDEpLCBfU0VHNygnYicsMCwwLDEsMSwxLDEsMSksIF9TRUc3KCdjJywwLDAsMCwxLDEsMCwxKSwgIF9TRUc3KCdkJywwLDEsMSwxLDEsMCwxKSwgX1NFRzcoJ0UnLDEsMCwwLDEsMSwxLDEpLCBfU0VHNygnRicsMSwwLDAsMCwxLDEsMSksICBfU0VHNygnRycsMSwxLDEsMSwwLDEsMSksIF9TRUc3KCdoJywwLDAsMSwwLDEsMSwxKSwgX1NFRzcoJ2knLDAsMCwxLDAsMCwwLDApLCAgX1NFRzcoJ2onLDAsMCwxLDEsMCwwLDApLCBfU0VHNygnaycsMCwwLDEsMCwxLDEsMSksIF9TRUc3KCdMJywwLDAsMCwxLDEsMSwwKSwgIF9TRUc3KCdNJywxLDEsMSwwLDEsMSwwKSwgX1NFRzcoJ24nLDAsMCwxLDAsMSwwLDEpLCBfU0VHNygnbycsMCwwLDEsMSwxLDAsMSksICBfU0VHNygnUCcsMSwxLDAsMCwxLDEsMSksIF9TRUc3KCdxJywxLDEsMSwwLDAsMSwxKSwgX1NFRzcoJ3InLDAsMCwwLDAsMSwwLDEpLCAgX1NFRzcoJ1MnLDEsMCwxLDEsMCwxLDEpLCBfU0VHNygnVCcsMCwwLDAsMSwxLDEsMSksIF9TRUc3KCd1JywwLDAsMSwxLDEsMCwwKSwgIF9TRUc3KCd2JywwLDAsMSwxLDEsMCwwKSwgX1NFRzcoJ1cnLDAsMSwxLDEsMSwxLDEpLCBfU0VHNygnWCcsMCwxLDEsMCwxLDEsMSksICBfU0VHNygneScsMCwxLDEsMSwwLDEsMSksIF9TRUc3KCdaJywxLDEsMCwxLDEsMCwxKSwKKyNkZWZpbmUgX01BUF81OF82NF9BU0NJSV9TRUc3X1NZTUJPTCBfU0VHNygnOicsIDAsIDAsIDAsIDEsIDAsIDAsIDEpLCBfU0VHNygnOycsIDAsIDAsIDAsIDEsIDAsIDAsIDEpLCBfU0VHNygnPCcsIDEsIDAsIDAsIDAsIDAsIDEsIDEpLCBfU0VHNygnPScsIDAsIDAsIDAsIDEsIDAsIDAsIDEpLCBfU0VHNygnPicsIDEsIDEsIDAsIDAsIDAsIDAsIDEpLCBfU0VHNygnPycsIDEsIDEsIDEsIDAsIDAsIDEsIDApLCBfU0VHNygnQCcsIDEsIDEsIDAsIDEsIDEsIDEsIDEpLAorI2RlZmluZSBfTUFQXzY1XzkwX0FTQ0lJX1NFRzdfQUxQSEFfVVBQUiBfU0VHNygnQScsIDEsIDEsIDEsIDAsIDEsIDEsIDEpLCBfU0VHNygnQicsIDEsIDEsIDEsIDEsIDEsIDEsIDEpLCBfU0VHNygnQycsIDEsIDAsIDAsIDEsIDEsIDEsIDApLCBfU0VHNygnRCcsIDEsIDEsIDEsIDEsIDEsIDEsIDApLCBfU0VHNygnRScsIDEsIDAsIDAsIDEsIDEsIDEsIDEpLCBfU0VHNygnRicsIDEsIDAsIDAsIDAsIDEsIDEsIDEpLCBfU0VHNygnRycsIDEsIDEsIDEsIDEsIDAsIDEsIDEpLCBfU0VHNygnSCcsIDAsIDEsIDEsIDAsIDEsIDEsIDEpLCBfU0VHNygnSScsIDAsIDEsIDEsIDAsIDAsIDAsIDApLCBfU0VHNygnSicsIDAsIDEsIDEsIDEsIDAsIDAsIDApLCBfU0VHNygnSycsIDAsIDEsIDEsIDAsIDEsIDEsIDEpLCBfU0VHNygnTCcsIDAsIDAsIDAsIDEsIDEsIDEsIDApLCBfU0VHNygnTScsIDEsIDEsIDEsIDAsIDEsIDEsIDApLCBfU0VHNygnTicsIDEsIDEsIDEsIDAsIDEsIDEsIDApLCBfU0VHNygnTycsIDEsIDEsIDEsIDEsIDEsIDEsIDApLCBfU0VHNygnUCcsIDEsIDEsIDAsIDAsIDEsIDEsIDEpLCBfU0VHNygnUScsIDEsIDEsIDEsIDEsIDEsIDEsIDApLCBfU0VHNygnUicsIDEsIDEsIDEsIDAsIDEsIDEsIDEpLCBfU0VHNygnUycsIDEsIDAsIDEsIDEsIDAsIDEsIDEpLCBfU0VHNygnVCcsIDAsIDAsIDAsIDEsIDEsIDEsIDEpLCBfU0VHNygnVScsIDAsIDEsIDEsIDEsIDEsIDEsIDApLCBfU0VHNygnVicsIDAsIDEsIDEsIDEsIDEsIDEsIDApLCBfU0VHNygnVycsIDAsIDEsIDEsIDEsIDEsIDEsIDEpLCBfU0VHNygnWCcsIDAsIDEsIDEsIDAsIDEsIDEsIDEpLCBfU0VHNygnWScsIDAsIDEsIDEsIDAsIDAsIDEsIDEpLCBfU0VHNygnWicsIDEsIDEsIDAsIDEsIDEsIDAsIDEpLAorI2RlZmluZSBfTUFQXzkxXzk2X0FTQ0lJX1NFRzdfU1lNQk9MIF9TRUc3KCdbJywgMSwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCdcXCcsIDAsIDAsIDEsIDAsIDAsIDEsIDEpLCBfU0VHNygnXScsIDEsIDEsIDEsIDEsIDAsIDAsIDApLCBfU0VHNygnXicsIDEsIDEsIDAsIDAsIDAsIDEsIDApLCBfU0VHNygnXycsIDAsIDAsIDAsIDEsIDAsIDAsIDApLCBfU0VHNygnYCcsIDAsIDEsIDAsIDAsIDAsIDAsIDApLAorI2RlZmluZSBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSIF9TRUc3KCdBJywgMSwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdiJywgMCwgMCwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCdjJywgMCwgMCwgMCwgMSwgMSwgMCwgMSksIF9TRUc3KCdkJywgMCwgMSwgMSwgMSwgMSwgMCwgMSksIF9TRUc3KCdFJywgMSwgMCwgMCwgMSwgMSwgMSwgMSksIF9TRUc3KCdGJywgMSwgMCwgMCwgMCwgMSwgMSwgMSksIF9TRUc3KCdHJywgMSwgMSwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCdoJywgMCwgMCwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdpJywgMCwgMCwgMSwgMCwgMCwgMCwgMCksIF9TRUc3KCdqJywgMCwgMCwgMSwgMSwgMCwgMCwgMCksIF9TRUc3KCdrJywgMCwgMCwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdMJywgMCwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCdNJywgMSwgMSwgMSwgMCwgMSwgMSwgMCksIF9TRUc3KCduJywgMCwgMCwgMSwgMCwgMSwgMCwgMSksIF9TRUc3KCdvJywgMCwgMCwgMSwgMSwgMSwgMCwgMSksIF9TRUc3KCdQJywgMSwgMSwgMCwgMCwgMSwgMSwgMSksIF9TRUc3KCdxJywgMSwgMSwgMSwgMCwgMCwgMSwgMSksIF9TRUc3KCdyJywgMCwgMCwgMCwgMCwgMSwgMCwgMSksIF9TRUc3KCdTJywgMSwgMCwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCdUJywgMCwgMCwgMCwgMSwgMSwgMSwgMSksIF9TRUc3KCd1JywgMCwgMCwgMSwgMSwgMSwgMCwgMCksIF9TRUc3KCd2JywgMCwgMCwgMSwgMSwgMSwgMCwgMCksIF9TRUc3KCdXJywgMCwgMSwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCdYJywgMCwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCd5JywgMCwgMSwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCdaJywgMSwgMSwgMCwgMSwgMSwgMCwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfTUFQXzEyM18xMjZfQVNDSUlfU0VHN19TWU1CT0wgICBfU0VHNygneycsMSwwLDAsMSwxLDEsMCksIF9TRUc3KCd8JywwLDAsMCwwLDEsMSwwKSwgX1NFRzcoJ30nLDEsMSwxLDEsMCwwLDApLCAgX1NFRzcoJ34nLDEsMCwwLDAsMCwwLDApLAotI2RlZmluZSBNQVBfQVNDSUk3U0VHX0FMUEhBTlVNICAgX01BUF8wXzMyX0FTQ0lJX1NFRzdfTk9OX1BSSU5UQUJMRSAgIF9NQVBfMzNfNDdfQVNDSUlfU0VHN19TWU1CT0wgICBfTUFQXzQ4XzU3X0FTQ0lJX1NFRzdfTlVNRVJJQyAgIF9NQVBfNThfNjRfQVNDSUlfU0VHN19TWU1CT0wgICBfTUFQXzY1XzkwX0FTQ0lJX1NFRzdfQUxQSEFfVVBQUiAgIF9NQVBfOTFfOTZfQVNDSUlfU0VHN19TWU1CT0wgICBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSICAgX01BUF8xMjNfMTI2X0FTQ0lJX1NFRzdfU1lNQk9MCi0jZGVmaW5lIE1BUF9BU0NJSTdTRUdfQUxQSEFOVU1fTEMgICBfTUFQXzBfMzJfQVNDSUlfU0VHN19OT05fUFJJTlRBQkxFICAgX01BUF8zM180N19BU0NJSV9TRUc3X1NZTUJPTCAgIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDICAgX01BUF81OF82NF9BU0NJSV9TRUc3X1NZTUJPTCAgIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgICBfTUFQXzkxXzk2X0FTQ0lJX1NFRzdfU1lNQk9MICAgX01BUF85N18xMjJfQVNDSUlfU0VHN19BTFBIQV9MT1dFUiAgIF9NQVBfMTIzXzEyNl9BU0NJSV9TRUc3X1NZTUJPTAotI2RlZmluZSBTRUc3X0RFRkFVTFRfTUFQKF9uYW1lKSAgIFNFRzdfQ09OVkVSU0lPTl9NQVAoX25hbWUsTUFQX0FTQ0lJN1NFR19BTFBIQU5VTSkKKyNkZWZpbmUgX01BUF8xMjNfMTI2X0FTQ0lJX1NFRzdfU1lNQk9MIF9TRUc3KCd7JywgMSwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCd8JywgMCwgMCwgMCwgMCwgMSwgMSwgMCksIF9TRUc3KCd9JywgMSwgMSwgMSwgMSwgMCwgMCwgMCksIF9TRUc3KCd+JywgMSwgMCwgMCwgMCwgMCwgMCwgMCksCisjZGVmaW5lIE1BUF9BU0NJSTdTRUdfQUxQSEFOVU0gX01BUF8wXzMyX0FTQ0lJX1NFRzdfTk9OX1BSSU5UQUJMRSBfTUFQXzMzXzQ3X0FTQ0lJX1NFRzdfU1lNQk9MIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDIF9NQVBfNThfNjRfQVNDSUlfU0VHN19TWU1CT0wgX01BUF82NV85MF9BU0NJSV9TRUc3X0FMUEhBX1VQUFIgX01BUF85MV85Nl9BU0NJSV9TRUc3X1NZTUJPTCBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSIF9NQVBfMTIzXzEyNl9BU0NJSV9TRUc3X1NZTUJPTAorI2RlZmluZSBNQVBfQVNDSUk3U0VHX0FMUEhBTlVNX0xDIF9NQVBfMF8zMl9BU0NJSV9TRUc3X05PTl9QUklOVEFCTEUgX01BUF8zM180N19BU0NJSV9TRUc3X1NZTUJPTCBfTUFQXzQ4XzU3X0FTQ0lJX1NFRzdfTlVNRVJJQyBfTUFQXzU4XzY0X0FTQ0lJX1NFRzdfU1lNQk9MIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgX01BUF85MV85Nl9BU0NJSV9TRUc3X1NZTUJPTCBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSIF9NQVBfMTIzXzEyNl9BU0NJSV9TRUc3X1NZTUJPTAorI2RlZmluZSBTRUc3X0RFRkFVTFRfTUFQKF9uYW1lKSBTRUc3X0NPTlZFUlNJT05fTUFQKF9uYW1lLCBNQVBfQVNDSUk3U0VHX0FMUEhBTlVNKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXRyb3hmYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXRyb3hmYi5oCmluZGV4IGNhODMzYTUuLmI0MzcwODYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWF0cm94ZmIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21hdHJveGZiLmgKQEAgLTI0LDMzICsyNCwzMyBAQAogI2luY2x1ZGUgPGxpbnV4L3ZpZGVvZGV2Mi5oPgogI2luY2x1ZGUgPGxpbnV4L2ZiLmg+CiBzdHJ1Y3QgbWF0cm94aW9jX291dHB1dF9tb2RlIHsKLSBfX3UzMiBvdXRwdXQ7CisgIF9fdTMyIG91dHB1dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9QUklNQVJZIDB4MDAwMAogI2RlZmluZSBNQVRST1hGQl9PVVRQVVRfU0VDT05EQVJZIDB4MDAwMQogI2RlZmluZSBNQVRST1hGQl9PVVRQVVRfREZQIDB4MDAwMgotIF9fdTMyIG1vZGU7CisgIF9fdTMyIG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNQVRST1hGQl9PVVRQVVRfTU9ERV9QQUwgMHgwMDAxCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9NT0RFX05UU0MgMHgwMDAyCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9NT0RFX01PTklUT1IgMHgwMDgwCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUFUUk9YRkJfU0VUX09VVFBVVF9NT0RFIF9JT1coJ24nLDB4RkEsc2l6ZV90KQotI2RlZmluZSBNQVRST1hGQl9HRVRfT1VUUFVUX01PREUgX0lPV1IoJ24nLDB4RkEsc2l6ZV90KQorI2RlZmluZSBNQVRST1hGQl9TRVRfT1VUUFVUX01PREUgX0lPVygnbicsIDB4RkEsIHNpemVfdCkKKyNkZWZpbmUgTUFUUk9YRkJfR0VUX09VVFBVVF9NT0RFIF9JT1dSKCduJywgMHhGQSwgc2l6ZV90KQogI2RlZmluZSBNQVRST1hGQl9PVVRQVVRfQ09OTl9QUklNQVJZICgxIDw8IE1BVFJPWEZCX09VVFBVVF9QUklNQVJZKQogI2RlZmluZSBNQVRST1hGQl9PVVRQVVRfQ09OTl9TRUNPTkRBUlkgKDEgPDwgTUFUUk9YRkJfT1VUUFVUX1NFQ09OREFSWSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9DT05OX0RGUCAoMSA8PCBNQVRST1hGQl9PVVRQVVRfREZQKQotI2RlZmluZSBNQVRST1hGQl9TRVRfT1VUUFVUX0NPTk5FQ1RJT04gX0lPVygnbicsMHhGOCxzaXplX3QpCi0jZGVmaW5lIE1BVFJPWEZCX0dFVF9PVVRQVVRfQ09OTkVDVElPTiBfSU9SKCduJywweEY4LHNpemVfdCkKLSNkZWZpbmUgTUFUUk9YRkJfR0VUX0FWQUlMQUJMRV9PVVRQVVRTIF9JT1IoJ24nLDB4Rjksc2l6ZV90KQorI2RlZmluZSBNQVRST1hGQl9TRVRfT1VUUFVUX0NPTk5FQ1RJT04gX0lPVygnbicsIDB4RjgsIHNpemVfdCkKKyNkZWZpbmUgTUFUUk9YRkJfR0VUX09VVFBVVF9DT05ORUNUSU9OIF9JT1IoJ24nLCAweEY4LCBzaXplX3QpCisjZGVmaW5lIE1BVFJPWEZCX0dFVF9BVkFJTEFCTEVfT1VUUFVUUyBfSU9SKCduJywgMHhGOSwgc2l6ZV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUFUUk9YRkJfR0VUX0FMTF9PVVRQVVRTIF9JT1IoJ24nLDB4RkIsc2l6ZV90KQorI2RlZmluZSBNQVRST1hGQl9HRVRfQUxMX09VVFBVVFMgX0lPUignbicsIDB4RkIsIHNpemVfdCkKIGVudW0gbWF0cm94ZmJfY3RybF9pZCB7Ci0gTUFUUk9YRkJfQ0lEX1RFU1RPVVQgPSBWNEwyX0NJRF9QUklWQVRFX0JBU0UsCi0gTUFUUk9YRkJfQ0lEX0RFRkxJQ0tFUiwKKyAgTUFUUk9YRkJfQ0lEX1RFU1RPVVQgPSBWNEwyX0NJRF9QUklWQVRFX0JBU0UsCisgIE1BVFJPWEZCX0NJRF9ERUZMSUNLRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1BVFJPWEZCX0NJRF9MQVNUCisgIE1BVFJPWEZCX0NJRF9MQVNUCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21kaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWRpby5oCmluZGV4IDMxOTY3MGUuLjc3NjZkMTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWRpby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWRpby5oCkBAIC0yNzIsNSArMjcyLDUgQEAKICNkZWZpbmUgTURJT19QSFlfSURfUFJUQUQgMHgwM2UwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNRElPX1BIWV9JRF9ERVZBRCAweDAwMWYKLSNkZWZpbmUgTURJT19QSFlfSURfQzQ1X01BU0sgICAoTURJT19QSFlfSURfQzQ1IHwgTURJT19QSFlfSURfUFJUQUQgfCBNRElPX1BIWV9JRF9ERVZBRCkKKyNkZWZpbmUgTURJT19QSFlfSURfQzQ1X01BU0sgKE1ESU9fUEhZX0lEX0M0NSB8IE1ESU9fUEhZX0lEX1BSVEFEIHwgTURJT19QSFlfSURfREVWQUQpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVkaWEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVkaWEuaAppbmRleCA0YmE1NGFhLi41YWQxMzMwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lZGlhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZWRpYS5oCkBAIC0yNCwxNiArMjQsMTYgQEAKICNpbmNsdWRlIDxsaW51eC92ZXJzaW9uLmg+CiAjZGVmaW5lIE1FRElBX0FQSV9WRVJTSU9OIEtFUk5FTF9WRVJTSU9OKDAsIDEsIDApCiBzdHJ1Y3QgbWVkaWFfZGV2aWNlX2luZm8gewotIGNoYXIgZHJpdmVyWzE2XTsKKyAgY2hhciBkcml2ZXJbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG1vZGVsWzMyXTsKLSBjaGFyIHNlcmlhbFs0MF07Ci0gY2hhciBidXNfaW5mb1szMl07Ci0gX191MzIgbWVkaWFfdmVyc2lvbjsKKyAgY2hhciBtb2RlbFszMl07CisgIGNoYXIgc2VyaWFsWzQwXTsKKyAgY2hhciBidXNfaW5mb1szMl07CisgIF9fdTMyIG1lZGlhX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGh3X3JldmlzaW9uOwotIF9fdTMyIGRyaXZlcl92ZXJzaW9uOwotIF9fdTMyIHJlc2VydmVkWzMxXTsKKyAgX191MzIgaHdfcmV2aXNpb247CisgIF9fdTMyIGRyaXZlcl92ZXJzaW9uOworICBfX3UzMiByZXNlcnZlZFszMV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUVESUFfRU5UX0lEX0ZMQUdfTkVYVCAoMSA8PCAzMSkKQEAgLTU2LDQ5ICs1Niw0OSBAQAogI2RlZmluZSBNRURJQV9FTlRfRkxfREVGQVVMVCAoMSA8PCAwKQogc3RydWN0IG1lZGlhX2VudGl0eV9kZXNjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gY2hhciBuYW1lWzMyXTsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHJldmlzaW9uOworICBfX3UzMiBpZDsKKyAgY2hhciBuYW1lWzMyXTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgcmV2aXNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGdyb3VwX2lkOwotIF9fdTE2IHBhZHM7Ci0gX191MTYgbGlua3M7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBncm91cF9pZDsKKyAgX191MTYgcGFkczsKKyAgX191MTYgbGlua3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzRdOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTMyIG1ham9yOworICBfX3UzMiByZXNlcnZlZFs0XTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBtYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWlub3I7Ci0gfSB2NGw7Ci0gc3RydWN0IHsKLSBfX3UzMiBtYWpvcjsKKyAgICAgIF9fdTMyIG1pbm9yOworICAgIH0gdjRsOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBtYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWlub3I7Ci0gfSBmYjsKLSBzdHJ1Y3QgewotIF9fdTMyIGNhcmQ7CisgICAgICBfX3UzMiBtaW5vcjsKKyAgICB9IGZiOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBjYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZXZpY2U7Ci0gX191MzIgc3ViZGV2aWNlOwotIH0gYWxzYTsKLSBpbnQgZHZiOworICAgICAgX191MzIgZGV2aWNlOworICAgICAgX191MzIgc3ViZGV2aWNlOworICAgIH0gYWxzYTsKKyAgICBpbnQgZHZiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJhd1sxODRdOwotIH07CisgICAgX191OCByYXdbMTg0XTsKKyAgfTsKIH07CiAjZGVmaW5lIE1FRElBX1BBRF9GTF9TSU5LICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNRURJQV9QQURfRkxfU09VUkNFICgxIDw8IDEpCiAjZGVmaW5lIE1FRElBX1BBRF9GTF9NVVNUX0NPTk5FQ1QgKDEgPDwgMikKIHN0cnVjdCBtZWRpYV9wYWRfZGVzYyB7Ci0gX191MzIgZW50aXR5OworICBfX3UzMiBlbnRpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGluZGV4OwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3UxNiBpbmRleDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1FRElBX0xOS19GTF9FTkFCTEVEICgxIDw8IDApCkBAIC0xMDYsMTggKzEwNiwxOCBAQAogI2RlZmluZSBNRURJQV9MTktfRkxfRFlOQU1JQyAoMSA8PCAyKQogc3RydWN0IG1lZGlhX2xpbmtfZGVzYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtZWRpYV9wYWRfZGVzYyBzb3VyY2U7Ci0gc3RydWN0IG1lZGlhX3BhZF9kZXNjIHNpbms7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWRbMl07CisgIHN0cnVjdCBtZWRpYV9wYWRfZGVzYyBzb3VyY2U7CisgIHN0cnVjdCBtZWRpYV9wYWRfZGVzYyBzaW5rOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBtZWRpYV9saW5rc19lbnVtIHsKLSBfX3UzMiBlbnRpdHk7Ci0gc3RydWN0IG1lZGlhX3BhZF9kZXNjIF9fdXNlciAqcGFkczsKKyAgX191MzIgZW50aXR5OworICBzdHJ1Y3QgbWVkaWFfcGFkX2Rlc2MgX191c2VyICogcGFkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG1lZGlhX2xpbmtfZGVzYyBfX3VzZXIgKmxpbmtzOwotIF9fdTMyIHJlc2VydmVkWzRdOworICBzdHJ1Y3QgbWVkaWFfbGlua19kZXNjIF9fdXNlciAqIGxpbmtzOworICBfX3UzMiByZXNlcnZlZFs0XTsKIH07CiAjZGVmaW5lIE1FRElBX0lPQ19ERVZJQ0VfSU5GTyBfSU9XUignfCcsIDB4MDAsIHN0cnVjdCBtZWRpYV9kZXZpY2VfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21laS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZWkuaAppbmRleCAxYTM4ZTFjLi5hYzgwMzFmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21laS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVpLmgKQEAgLTE5LDIwICsxOSwyMCBAQAogI2lmbmRlZiBfTElOVVhfTUVJX0gKICNkZWZpbmUgX0xJTlVYX01FSV9ICiAjaW5jbHVkZSA8bGludXgvdXVpZC5oPgotI2RlZmluZSBJT0NUTF9NRUlfQ09OTkVDVF9DTElFTlQgICBfSU9XUignSCcgLCAweDAxLCBzdHJ1Y3QgbWVpX2Nvbm5lY3RfY2xpZW50X2RhdGEpCisjZGVmaW5lIElPQ1RMX01FSV9DT05ORUNUX0NMSUVOVCBfSU9XUignSCcsIDB4MDEsIHN0cnVjdCBtZWlfY29ubmVjdF9jbGllbnRfZGF0YSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWVpX2NsaWVudCB7Ci0gX191MzIgbWF4X21zZ19sZW5ndGg7Ci0gX191OCBwcm90b2NvbF92ZXJzaW9uOwotIF9fdTggcmVzZXJ2ZWRbM107CisgIF9fdTMyIG1heF9tc2dfbGVuZ3RoOworICBfX3U4IHByb3RvY29sX3ZlcnNpb247CisgIF9fdTggcmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBtZWlfY29ubmVjdF9jbGllbnRfZGF0YSB7Ci0gdW5pb24gewotIHV1aWRfbGUgaW5fY2xpZW50X3V1aWQ7CisgIHVuaW9uIHsKKyAgICB1dWlkX2xlIGluX2NsaWVudF91dWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbWVpX2NsaWVudCBvdXRfY2xpZW50X3Byb3BlcnRpZXM7Ci0gfTsKKyAgICBzdHJ1Y3QgbWVpX2NsaWVudCBvdXRfY2xpZW50X3Byb3BlcnRpZXM7CisgIH07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZW1mZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZW1mZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMTFkYWIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbWZkLmgKQEAgLTAsMCArMSwyNCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9MSU5VWF9NRU1GRF9ICisjZGVmaW5lIF9VQVBJX0xJTlVYX01FTUZEX0gKKyNkZWZpbmUgTUZEX0NMT0VYRUMgMHgwMDAxVQorI2RlZmluZSBNRkRfQUxMT1dfU0VBTElORyAweDAwMDJVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbXBvbGljeS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZW1wb2xpY3kuaAppbmRleCA3MGE4YThmLi5hMjA4ZjQyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbXBvbGljeS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVtcG9saWN5LmgKQEAgLTIxLDM3ICsyMSwzNyBAQAogI2luY2x1ZGUgPGxpbnV4L2Vycm5vLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTVBPTF9ERUZBVUxULAotIE1QT0xfUFJFRkVSUkVELAotIE1QT0xfQklORCwKLSBNUE9MX0lOVEVSTEVBVkUsCisgIE1QT0xfREVGQVVMVCwKKyAgTVBPTF9QUkVGRVJSRUQsCisgIE1QT0xfQklORCwKKyAgTVBPTF9JTlRFUkxFQVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNUE9MX0xPQ0FMLAotIE1QT0xfTUFYLAorICBNUE9MX0xPQ0FMLAorICBNUE9MX01BWCwKIH07CiBlbnVtIG1wb2xfcmViaW5kX3N0ZXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNUE9MX1JFQklORF9PTkNFLAotIE1QT0xfUkVCSU5EX1NURVAxLAotIE1QT0xfUkVCSU5EX1NURVAyLAotIE1QT0xfUkVCSU5EX05TVEVQLAorICBNUE9MX1JFQklORF9PTkNFLAorICBNUE9MX1JFQklORF9TVEVQMSwKKyAgTVBPTF9SRUJJTkRfU1RFUDIsCisgIE1QT0xfUkVCSU5EX05TVEVQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE1QT0xfRl9TVEFUSUNfTk9ERVMgKDEgPDwgMTUpCiAjZGVmaW5lIE1QT0xfRl9SRUxBVElWRV9OT0RFUyAoMSA8PCAxNCkKICNkZWZpbmUgTVBPTF9NT0RFX0ZMQUdTIChNUE9MX0ZfU1RBVElDX05PREVTIHwgTVBPTF9GX1JFTEFUSVZFX05PREVTKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVBPTF9GX05PREUgKDE8PDApCi0jZGVmaW5lIE1QT0xfRl9BRERSICgxPDwxKQotI2RlZmluZSBNUE9MX0ZfTUVNU19BTExPV0VEICgxPDwyKQotI2RlZmluZSBNUE9MX01GX1NUUklDVCAoMTw8MCkKKyNkZWZpbmUgTVBPTF9GX05PREUgKDEgPDwgMCkKKyNkZWZpbmUgTVBPTF9GX0FERFIgKDEgPDwgMSkKKyNkZWZpbmUgTVBPTF9GX01FTVNfQUxMT1dFRCAoMSA8PCAyKQorI2RlZmluZSBNUE9MX01GX1NUUklDVCAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVBPTF9NRl9NT1ZFICgxPDwxKQotI2RlZmluZSBNUE9MX01GX01PVkVfQUxMICgxPDwyKQotI2RlZmluZSBNUE9MX01GX0xBWlkgKDE8PDMpCi0jZGVmaW5lIE1QT0xfTUZfSU5URVJOQUwgKDE8PDQpCisjZGVmaW5lIE1QT0xfTUZfTU9WRSAoMSA8PCAxKQorI2RlZmluZSBNUE9MX01GX01PVkVfQUxMICgxIDw8IDIpCisjZGVmaW5lIE1QT0xfTUZfTEFaWSAoMSA8PCAzKQorI2RlZmluZSBNUE9MX01GX0lOVEVSTkFMICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNUE9MX01GX1ZBTElEIChNUE9MX01GX1NUUklDVCB8ICAgTVBPTF9NRl9NT1ZFIHwgICBNUE9MX01GX01PVkVfQUxMKQorI2RlZmluZSBNUE9MX01GX1ZBTElEIChNUE9MX01GX1NUUklDVCB8IE1QT0xfTUZfTU9WRSB8IE1QT0xfTUZfTU9WRV9BTEwpCiAjZGVmaW5lIE1QT0xfRl9TSEFSRUQgKDEgPDwgMCkKICNkZWZpbmUgTVBPTF9GX0xPQ0FMICgxIDw8IDEpCiAjZGVmaW5lIE1QT0xfRl9SRUJJTkRJTkcgKDEgPDwgMikKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWV5ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZXllLmgKaW5kZXggNzMzYTg2YS4uYTIzZTlmYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZXllLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZXllLmgKQEAgLTE5LDIyICsxOSwyMiBAQAogI2lmbmRlZiBfTUVZRV9IXwogI2RlZmluZSBfTUVZRV9IXwogc3RydWN0IG1leWVfcGFyYW1zIHsKLSB1bnNpZ25lZCBjaGFyIHN1YnNhbXBsZTsKKyAgdW5zaWduZWQgY2hhciBzdWJzYW1wbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcXVhbGl0eTsKLSB1bnNpZ25lZCBjaGFyIHNoYXJwbmVzczsKLSB1bnNpZ25lZCBjaGFyIGFnYzsKLSB1bnNpZ25lZCBjaGFyIHBpY3R1cmU7CisgIHVuc2lnbmVkIGNoYXIgcXVhbGl0eTsKKyAgdW5zaWduZWQgY2hhciBzaGFycG5lc3M7CisgIHVuc2lnbmVkIGNoYXIgYWdjOworICB1bnNpZ25lZCBjaGFyIHBpY3R1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZnJhbWVyYXRlOworICB1bnNpZ25lZCBjaGFyIGZyYW1lcmF0ZTsKIH07Ci0jZGVmaW5lIE1FWUVJT0NfR19QQVJBTVMgX0lPUiAoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFKzAsIHN0cnVjdCBtZXllX3BhcmFtcykKLSNkZWZpbmUgTUVZRUlPQ19TX1BBUkFNUyBfSU9XICgndicsIEJBU0VfVklESU9DX1BSSVZBVEUrMSwgc3RydWN0IG1leWVfcGFyYW1zKQorI2RlZmluZSBNRVlFSU9DX0dfUEFSQU1TIF9JT1IoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMCwgc3RydWN0IG1leWVfcGFyYW1zKQorI2RlZmluZSBNRVlFSU9DX1NfUEFSQU1TIF9JT1coJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMSwgc3RydWN0IG1leWVfcGFyYW1zKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUVZRUlPQ19RQlVGX0NBUFQgX0lPVyAoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFKzIsIGludCkKLSNkZWZpbmUgTUVZRUlPQ19TWU5DIF9JT1dSKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSszLCBpbnQpCi0jZGVmaW5lIE1FWUVJT0NfU1RJTExDQVBUIF9JTyAoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFKzQpCi0jZGVmaW5lIE1FWUVJT0NfU1RJTExKQ0FQVCBfSU9SICgndicsIEJBU0VfVklESU9DX1BSSVZBVEUrNSwgaW50KQorI2RlZmluZSBNRVlFSU9DX1FCVUZfQ0FQVCBfSU9XKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSArIDIsIGludCkKKyNkZWZpbmUgTUVZRUlPQ19TWU5DIF9JT1dSKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSArIDMsIGludCkKKyNkZWZpbmUgTUVZRUlPQ19TVElMTENBUFQgX0lPKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSArIDQpCisjZGVmaW5lIE1FWUVJT0NfU1RJTExKQ0FQVCBfSU9SKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSArIDUsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX01FWUVfQUdDIChWNEwyX0NJRF9VU0VSX01FWUVfQkFTRSArIDApCiAjZGVmaW5lIFY0TDJfQ0lEX01FWUVfUElDVFVSRSAoVjRMMl9DSURfVVNFUl9NRVlFX0JBU0UgKyAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWNfY29tbW9uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19jb21tb24uaAppbmRleCAzMGQ4MzA4Li41YTE3MzVjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19jb21tb24uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19jb21tb24uaApAQCAtMTksNTEgKzE5LDUxIEBACiAjaWZuZGVmIF9fTUlDX0NPTU1PTl9IXwogI2RlZmluZSBfX01JQ19DT01NT05fSF8KICNpbmNsdWRlIDxsaW51eC92aXJ0aW9fcmluZy5oPgotI2RlZmluZSBfX21pY19hbGlnbihhLCB4KSAoKChhKSArICh4KSAtIDEpICYgfigoeCkgLSAxKSkKKyNkZWZpbmUgX19taWNfYWxpZ24oYSx4KSAoKChhKSArICh4KSAtIDEpICYgfigoeCkgLSAxKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWljX2RldmljZV9kZXNjIHsKLSBfX3M4IHR5cGU7Ci0gX191OCBudW1fdnE7Ci0gX191OCBmZWF0dXJlX2xlbjsKKyAgX19zOCB0eXBlOworICBfX3U4IG51bV92cTsKKyAgX191OCBmZWF0dXJlX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb25maWdfbGVuOwotIF9fdTggc3RhdHVzOwotIF9fbGU2NCBjb25maWdbMF07Ci19IF9fYXR0cmlidXRlX18gKChhbGlnbmVkKDgpKSk7CisgIF9fdTggY29uZmlnX2xlbjsKKyAgX191OCBzdGF0dXM7CisgIF9fbGU2NCBjb25maWdbMF07Cit9IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWljX2RldmljZV9jdHJsIHsKLSBfX2xlNjQgdmRldjsKLSBfX3U4IGNvbmZpZ19jaGFuZ2U7Ci0gX191OCB2ZGV2X3Jlc2V0OworICBfX2xlNjQgdmRldjsKKyAgX191OCBjb25maWdfY2hhbmdlOworICBfX3U4IHZkZXZfcmVzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ3Vlc3RfYWNrOwotIF9fdTggaG9zdF9hY2s7Ci0gX191OCB1c2VkX2FkZHJlc3NfdXBkYXRlZDsKLSBfX3M4IGMyaF92ZGV2X2RiOworICBfX3U4IGd1ZXN0X2FjazsKKyAgX191OCBob3N0X2FjazsKKyAgX191OCB1c2VkX2FkZHJlc3NfdXBkYXRlZDsKKyAgX19zOCBjMmhfdmRldl9kYjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zOCBoMmNfdmRldl9kYjsKLX0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQoOCkpKTsKKyAgX19zOCBoMmNfdmRldl9kYjsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogc3RydWN0IG1pY19ib290cGFyYW0gewotIF9fbGUzMiBtYWdpYzsKKyAgX19sZTMyIG1hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M4IGMyaF9zaHV0ZG93bl9kYjsKLSBfX3M4IGgyY19zaHV0ZG93bl9kYjsKLSBfX3M4IGgyY19jb25maWdfZGI7Ci0gX191OCBzaHV0ZG93bl9zdGF0dXM7CisgIF9fczggYzJoX3NodXRkb3duX2RiOworICBfX3M4IGgyY19zaHV0ZG93bl9kYjsKKyAgX19zOCBoMmNfY29uZmlnX2RiOworICBfX3U4IHNodXRkb3duX3N0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaHV0ZG93bl9jYXJkOwotfSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCg4KSkpOworICBfX3U4IHNodXRkb3duX2NhcmQ7Cit9IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIHN0cnVjdCBtaWNfZGV2aWNlX3BhZ2UgewotIHN0cnVjdCBtaWNfYm9vdHBhcmFtIGJvb3RwYXJhbTsKKyAgc3RydWN0IG1pY19ib290cGFyYW0gYm9vdHBhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbWljX2RldmljZV9kZXNjIGRlc2NbMF07CisgIHN0cnVjdCBtaWNfZGV2aWNlX2Rlc2MgZGVzY1swXTsKIH07CiBzdHJ1Y3QgbWljX3ZxY29uZmlnIHsKLSBfX2xlNjQgYWRkcmVzczsKKyAgX19sZTY0IGFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGU2NCB1c2VkX2FkZHJlc3M7Ci0gX19sZTE2IG51bTsKLX0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQoOCkpKTsKKyAgX19sZTY0IHVzZWRfYWRkcmVzczsKKyAgX19sZTE2IG51bTsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogI2RlZmluZSBNSUNfVklSVElPX1JJTkdfQUxJR04gNDA5NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUlDX01BWF9WUklOR1MgNApAQCAtNzIsMTYgKzcyLDE2IEBACiAjZGVmaW5lIE1JQ19NQVhfREVTQ19CTEtfU0laRSAyNTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgX21pY192cmluZ19pbmZvIHsKLSBfX3UxNiBhdmFpbF9pZHg7Ci0gX19sZTMyIG1hZ2ljOworICBfX3UxNiBhdmFpbF9pZHg7CisgIF9fbGUzMiBtYWdpYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1pY192cmluZyB7Ci0gc3RydWN0IHZyaW5nIHZyOwotIHN0cnVjdCBfbWljX3ZyaW5nX2luZm8gKmluZm87Ci0gdm9pZCAqdmE7CisgIHN0cnVjdCB2cmluZyB2cjsKKyAgc3RydWN0IF9taWNfdnJpbmdfaW5mbyAqIGluZm87CisgIHZvaWQgKiB2YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGxlbjsKKyAgaW50IGxlbjsKIH07CiAjZGVmaW5lIG1pY19hbGlnbmVkX2Rlc2Nfc2l6ZShkKSBfX21pY19hbGlnbihtaWNfZGVzY19zaXplKGQpLCA4KQogI2lmbmRlZiBJTlRFTF9NSUNfQ0FSRApAQCAtOTEsMjQgKzkxLDI0IEBACiAjZGVmaW5lIE1JQ19NQUdJQyAweGMwZmZlZTAwCiBlbnVtIG1pY19zdGF0ZXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSUNfT0ZGTElORSA9IDAsCi0gTUlDX09OTElORSwKLSBNSUNfU0hVVFRJTkdfRE9XTiwKLSBNSUNfUkVTRVRfRkFJTEVELAorICBNSUNfT0ZGTElORSA9IDAsCisgIE1JQ19PTkxJTkUsCisgIE1JQ19TSFVUVElOR19ET1dOLAorICBNSUNfUkVTRVRfRkFJTEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSUNfU1VTUEVORElORywKLSBNSUNfU1VTUEVOREVELAotIE1JQ19MQVNUCisgIE1JQ19TVVNQRU5ESU5HLAorICBNSUNfU1VTUEVOREVELAorICBNSUNfTEFTVAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1pY19zdGF0dXMgewotIE1JQ19OT1AgPSAwLAotIE1JQ19DUkFTSEVELAotIE1JQ19IQUxURUQsCisgIE1JQ19OT1AgPSAwLAorICBNSUNfQ1JBU0hFRCwKKyAgTUlDX0hBTFRFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUlDX1BPV0VSX09GRiwKLSBNSUNfUkVTVEFSVCwKLSBNSUNfU1RBVFVTX0xBU1QKKyAgTUlDX1BPV0VSX09GRiwKKyAgTUlDX1JFU1RBUlQsCisgIE1JQ19TVEFUVVNfTEFTVAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2lvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19pb2N0bC5oCmluZGV4IDllYjFhZDIuLjgzY2JmNjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2lvY3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWNfaW9jdGwuaApAQCAtMjEsMTIgKzIxLDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBtaWNfY29weV9kZXNjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlvdmVjICppb3Y7Ci0gX191MzIgaW92Y250OwotIF9fdTggdnJfaWR4OwotIF9fdTggdXBkYXRlX3VzZWQ7CisgIHN0cnVjdCBpb3ZlYyAqIGlvdjsKKyAgX191MzIgaW92Y250OworICBfX3U4IHZyX2lkeDsKKyAgX191OCB1cGRhdGVfdXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb3V0X2xlbjsKKyAgX191MzIgb3V0X2xlbjsKIH07CiAjZGVmaW5lIE1JQ19WSVJUSU9fQUREX0RFVklDRSBfSU9XUigncycsIDEsIHN0cnVjdCBtaWNfZGV2aWNlX2Rlc2MgKikKICNkZWZpbmUgTUlDX1ZJUlRJT19DT1BZX0RFU0MgX0lPV1IoJ3MnLCAyLCBzdHJ1Y3QgbWljX2NvcHlfZGVzYyAqKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWlpLmgKaW5kZXggZDBmOTQwZS4uN2FjYzIzNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21paS5oCkBAIC0xMDMsOCArMTAzLDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFEVkVSVElTRV9MUEFDSyAweDQwMDAKICNkZWZpbmUgQURWRVJUSVNFX05QQUdFIDB4ODAwMAotI2RlZmluZSBBRFZFUlRJU0VfRlVMTCAoQURWRVJUSVNFXzEwMEZVTEwgfCBBRFZFUlRJU0VfMTBGVUxMIHwgICBBRFZFUlRJU0VfQ1NNQSkKLSNkZWZpbmUgQURWRVJUSVNFX0FMTCAoQURWRVJUSVNFXzEwSEFMRiB8IEFEVkVSVElTRV8xMEZVTEwgfCAgIEFEVkVSVElTRV8xMDBIQUxGIHwgQURWRVJUSVNFXzEwMEZVTEwpCisjZGVmaW5lIEFEVkVSVElTRV9GVUxMIChBRFZFUlRJU0VfMTAwRlVMTCB8IEFEVkVSVElTRV8xMEZVTEwgfCBBRFZFUlRJU0VfQ1NNQSkKKyNkZWZpbmUgQURWRVJUSVNFX0FMTCAoQURWRVJUSVNFXzEwSEFMRiB8IEFEVkVSVElTRV8xMEZVTEwgfCBBRFZFUlRJU0VfMTAwSEFMRiB8IEFEVkVSVElTRV8xMDBGVUxMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTFBBX1NMQ1QgMHgwMDFmCiAjZGVmaW5lIExQQV8xMEhBTEYgMHgwMDIwCkBAIC0xNjIsMTAgKzE2MiwxMCBAQAogI2RlZmluZSBNSUlfTU1EX0NUUkxfSU5DUl9PTl9XVCAweEMwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWlpX2lvY3RsX2RhdGEgewotIF9fdTE2IHBoeV9pZDsKLSBfX3UxNiByZWdfbnVtOwotIF9fdTE2IHZhbF9pbjsKKyAgX191MTYgcGh5X2lkOworICBfX3UxNiByZWdfbnVtOworICBfX3UxNiB2YWxfaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHZhbF9vdXQ7CisgIF9fdTE2IHZhbF9vdXQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pbml4X2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pbml4X2ZzLmgKaW5kZXggN2U2NzRmZS4uYzE5ZDRmNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taW5peF9mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWluaXhfZnMuaApAQCAtMjksNzUgKzI5LDc1IEBACiAjZGVmaW5lIE1JTklYX1pfTUFQX1NMT1RTIDY0CiAjZGVmaW5lIE1JTklYX1ZBTElEX0ZTIDB4MDAwMQogI2RlZmluZSBNSU5JWF9FUlJPUl9GUyAweDAwMDIKLSNkZWZpbmUgTUlOSVhfSU5PREVTX1BFUl9CTE9DSyAoKEJMT0NLX1NJWkUpLyhzaXplb2YgKHN0cnVjdCBtaW5peF9pbm9kZSkpKQorI2RlZmluZSBNSU5JWF9JTk9ERVNfUEVSX0JMT0NLICgoQkxPQ0tfU0laRSkgLyAoc2l6ZW9mKHN0cnVjdCBtaW5peF9pbm9kZSkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtaW5peF9pbm9kZSB7Ci0gX191MTYgaV9tb2RlOwotIF9fdTE2IGlfdWlkOwotIF9fdTMyIGlfc2l6ZTsKKyAgX191MTYgaV9tb2RlOworICBfX3UxNiBpX3VpZDsKKyAgX191MzIgaV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpX3RpbWU7Ci0gX191OCBpX2dpZDsKLSBfX3U4IGlfbmxpbmtzOwotIF9fdTE2IGlfem9uZVs5XTsKKyAgX191MzIgaV90aW1lOworICBfX3U4IGlfZ2lkOworICBfX3U4IGlfbmxpbmtzOworICBfX3UxNiBpX3pvbmVbOV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBtaW5peDJfaW5vZGUgewotIF9fdTE2IGlfbW9kZTsKLSBfX3UxNiBpX25saW5rczsKKyAgX191MTYgaV9tb2RlOworICBfX3UxNiBpX25saW5rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaV91aWQ7Ci0gX191MTYgaV9naWQ7Ci0gX191MzIgaV9zaXplOwotIF9fdTMyIGlfYXRpbWU7CisgIF9fdTE2IGlfdWlkOworICBfX3UxNiBpX2dpZDsKKyAgX191MzIgaV9zaXplOworICBfX3UzMiBpX2F0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpX210aW1lOwotIF9fdTMyIGlfY3RpbWU7Ci0gX191MzIgaV96b25lWzEwXTsKKyAgX191MzIgaV9tdGltZTsKKyAgX191MzIgaV9jdGltZTsKKyAgX191MzIgaV96b25lWzEwXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1pbml4X3N1cGVyX2Jsb2NrIHsKLSBfX3UxNiBzX25pbm9kZXM7Ci0gX191MTYgc19uem9uZXM7Ci0gX191MTYgc19pbWFwX2Jsb2NrczsKKyAgX191MTYgc19uaW5vZGVzOworICBfX3UxNiBzX256b25lczsKKyAgX191MTYgc19pbWFwX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc196bWFwX2Jsb2NrczsKLSBfX3UxNiBzX2ZpcnN0ZGF0YXpvbmU7Ci0gX191MTYgc19sb2dfem9uZV9zaXplOwotIF9fdTMyIHNfbWF4X3NpemU7CisgIF9fdTE2IHNfem1hcF9ibG9ja3M7CisgIF9fdTE2IHNfZmlyc3RkYXRhem9uZTsKKyAgX191MTYgc19sb2dfem9uZV9zaXplOworICBfX3UzMiBzX21heF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzX21hZ2ljOwotIF9fdTE2IHNfc3RhdGU7Ci0gX191MzIgc196b25lczsKKyAgX191MTYgc19tYWdpYzsKKyAgX191MTYgc19zdGF0ZTsKKyAgX191MzIgc196b25lczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1pbml4M19zdXBlcl9ibG9jayB7Ci0gX191MzIgc19uaW5vZGVzOwotIF9fdTE2IHNfcGFkMDsKLSBfX3UxNiBzX2ltYXBfYmxvY2tzOworICBfX3UzMiBzX25pbm9kZXM7CisgIF9fdTE2IHNfcGFkMDsKKyAgX191MTYgc19pbWFwX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc196bWFwX2Jsb2NrczsKLSBfX3UxNiBzX2ZpcnN0ZGF0YXpvbmU7Ci0gX191MTYgc19sb2dfem9uZV9zaXplOwotIF9fdTE2IHNfcGFkMTsKKyAgX191MTYgc196bWFwX2Jsb2NrczsKKyAgX191MTYgc19maXJzdGRhdGF6b25lOworICBfX3UxNiBzX2xvZ196b25lX3NpemU7CisgIF9fdTE2IHNfcGFkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc19tYXhfc2l6ZTsKLSBfX3UzMiBzX3pvbmVzOwotIF9fdTE2IHNfbWFnaWM7Ci0gX191MTYgc19wYWQyOworICBfX3UzMiBzX21heF9zaXplOworICBfX3UzMiBzX3pvbmVzOworICBfX3UxNiBzX21hZ2ljOworICBfX3UxNiBzX3BhZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNfYmxvY2tzaXplOwotIF9fdTggc19kaXNrX3ZlcnNpb247CisgIF9fdTE2IHNfYmxvY2tzaXplOworICBfX3U4IHNfZGlza192ZXJzaW9uOwogfTsKIHN0cnVjdCBtaW5peF9kaXJfZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBpbm9kZTsKLSBjaGFyIG5hbWVbMF07CisgIF9fdTE2IGlub2RlOworICBjaGFyIG5hbWVbMF07CiB9Owogc3RydWN0IG1pbml4M19kaXJfZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbm9kZTsKLSBjaGFyIG5hbWVbMF07CisgIF9fdTMyIGlub2RlOworICBjaGFyIG5hbWVbMF07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tbWMvaW9jdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbW1jL2lvY3RsLmgKaW5kZXggMWJkMDIwNC4uNzYxZjFkNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tbWMvaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21tYy9pb2N0bC5oCkBAIC0yMSwyNSArMjEsMjUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IG1tY19pb2NfY21kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHdyaXRlX2ZsYWc7Ci0gaW50IGlzX2FjbWQ7Ci0gX191MzIgb3Bjb2RlOwotIF9fdTMyIGFyZzsKKyAgaW50IHdyaXRlX2ZsYWc7CisgIGludCBpc19hY21kOworICBfX3UzMiBvcGNvZGU7CisgIF9fdTMyIGFyZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzcG9uc2VbNF07Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVuc2lnbmVkIGludCBibGtzejsKLSB1bnNpZ25lZCBpbnQgYmxvY2tzOworICBfX3UzMiByZXNwb25zZVs0XTsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgYmxrc3o7CisgIHVuc2lnbmVkIGludCBibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwb3N0c2xlZXBfbWluX3VzOwotIHVuc2lnbmVkIGludCBwb3N0c2xlZXBfbWF4X3VzOwotIHVuc2lnbmVkIGludCBkYXRhX3RpbWVvdXRfbnM7Ci0gdW5zaWduZWQgaW50IGNtZF90aW1lb3V0X21zOworICB1bnNpZ25lZCBpbnQgcG9zdHNsZWVwX21pbl91czsKKyAgdW5zaWduZWQgaW50IHBvc3RzbGVlcF9tYXhfdXM7CisgIHVuc2lnbmVkIGludCBkYXRhX3RpbWVvdXRfbnM7CisgIHVuc2lnbmVkIGludCBjbWRfdGltZW91dF9tczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgX19wYWQ7Ci0gX191NjQgZGF0YV9wdHI7CisgIF9fdTMyIF9fcGFkOworICBfX3U2NCBkYXRhX3B0cjsKIH07Ci0jZGVmaW5lIG1tY19pb2NfY21kX3NldF9kYXRhKGljLCBwdHIpIGljLmRhdGFfcHRyID0gKF9fdTY0KSh1bnNpZ25lZCBsb25nKSBwdHIKKyNkZWZpbmUgbW1jX2lvY19jbWRfc2V0X2RhdGEoaWMscHRyKSBpYy5kYXRhX3B0ciA9IChfX3U2NCkgKHVuc2lnbmVkIGxvbmcpIHB0cgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTU1DX0lPQ19DTUQgX0lPV1IoTU1DX0JMT0NLX01BSk9SLCAwLCBzdHJ1Y3QgbW1jX2lvY19jbWQpCiAjZGVmaW5lIE1NQ19JT0NfTUFYX0JZVEVTICg1MTJMICogMjU2KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcGxzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21wbHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NGI0Mjc5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcGxzLmgKQEAgLTAsMCArMSwzOCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9NUExTX0gKKyNkZWZpbmUgX1VBUElfTVBMU19ICisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKyNpbmNsdWRlIDxhc20vYnl0ZW9yZGVyLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IG1wbHNfbGFiZWwgeworICBfX2JlMzIgZW50cnk7Cit9OworI2RlZmluZSBNUExTX0xTX0xBQkVMX01BU0sgMHhGRkZGRjAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVBMU19MU19MQUJFTF9TSElGVCAxMgorI2RlZmluZSBNUExTX0xTX1RDX01BU0sgMHgwMDAwMEUwMAorI2RlZmluZSBNUExTX0xTX1RDX1NISUZUIDkKKyNkZWZpbmUgTVBMU19MU19TX01BU0sgMHgwMDAwMDEwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVBMU19MU19TX1NISUZUIDgKKyNkZWZpbmUgTVBMU19MU19UVExfTUFTSyAweDAwMDAwMEZGCisjZGVmaW5lIE1QTFNfTFNfVFRMX1NISUZUIDAKKyNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXF1ZXVlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21xdWV1ZS5oCmluZGV4IDQ1OTljZGMuLjQ1ZjNhMTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXF1ZXVlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcXVldWUuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjZGVmaW5lIE1RX0JZVEVTX01BWCA4MTkyMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXFfYXR0ciB7Ci0gX19rZXJuZWxfbG9uZ190IG1xX2ZsYWdzOwotIF9fa2VybmVsX2xvbmdfdCBtcV9tYXhtc2c7Ci0gX19rZXJuZWxfbG9uZ190IG1xX21zZ3NpemU7CisgIF9fa2VybmVsX2xvbmdfdCBtcV9mbGFnczsKKyAgX19rZXJuZWxfbG9uZ190IG1xX21heG1zZzsKKyAgX19rZXJuZWxfbG9uZ190IG1xX21zZ3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBtcV9jdXJtc2dzOwotIF9fa2VybmVsX2xvbmdfdCBfX3Jlc2VydmVkWzRdOworICBfX2tlcm5lbF9sb25nX3QgbXFfY3VybXNnczsKKyAgX19rZXJuZWxfbG9uZ190IF9fcmVzZXJ2ZWRbNF07CiB9OwogI2RlZmluZSBOT1RJRllfTk9ORSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcm91dGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXJvdXRlLmgKaW5kZXggNTUwNzcwZi4uYmFlNWQ3MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcm91dGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZS5oCkBAIC0yMyw1MCArMjMsNTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1SVF9CQVNFIDIwMAogI2RlZmluZSBNUlRfSU5JVCAoTVJUX0JBU0UpCi0jZGVmaW5lIE1SVF9ET05FIChNUlRfQkFTRSsxKQotI2RlZmluZSBNUlRfQUREX1ZJRiAoTVJUX0JBU0UrMikKKyNkZWZpbmUgTVJUX0RPTkUgKE1SVF9CQVNFICsgMSkKKyNkZWZpbmUgTVJUX0FERF9WSUYgKE1SVF9CQVNFICsgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1SVF9ERUxfVklGIChNUlRfQkFTRSszKQotI2RlZmluZSBNUlRfQUREX01GQyAoTVJUX0JBU0UrNCkKLSNkZWZpbmUgTVJUX0RFTF9NRkMgKE1SVF9CQVNFKzUpCi0jZGVmaW5lIE1SVF9WRVJTSU9OIChNUlRfQkFTRSs2KQorI2RlZmluZSBNUlRfREVMX1ZJRiAoTVJUX0JBU0UgKyAzKQorI2RlZmluZSBNUlRfQUREX01GQyAoTVJUX0JBU0UgKyA0KQorI2RlZmluZSBNUlRfREVMX01GQyAoTVJUX0JBU0UgKyA1KQorI2RlZmluZSBNUlRfVkVSU0lPTiAoTVJUX0JBU0UgKyA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVJUX0FTU0VSVCAoTVJUX0JBU0UrNykKLSNkZWZpbmUgTVJUX1BJTSAoTVJUX0JBU0UrOCkKLSNkZWZpbmUgTVJUX1RBQkxFIChNUlRfQkFTRSs5KQotI2RlZmluZSBNUlRfQUREX01GQ19QUk9YWSAoTVJUX0JBU0UrMTApCisjZGVmaW5lIE1SVF9BU1NFUlQgKE1SVF9CQVNFICsgNykKKyNkZWZpbmUgTVJUX1BJTSAoTVJUX0JBU0UgKyA4KQorI2RlZmluZSBNUlRfVEFCTEUgKE1SVF9CQVNFICsgOSkKKyNkZWZpbmUgTVJUX0FERF9NRkNfUFJPWFkgKE1SVF9CQVNFICsgMTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNUlRfREVMX01GQ19QUk9YWSAoTVJUX0JBU0UrMTEpCi0jZGVmaW5lIE1SVF9NQVggKE1SVF9CQVNFKzExKQorI2RlZmluZSBNUlRfREVMX01GQ19QUk9YWSAoTVJUX0JBU0UgKyAxMSkKKyNkZWZpbmUgTVJUX01BWCAoTVJUX0JBU0UgKyAxMSkKICNkZWZpbmUgU0lPQ0dFVFZJRkNOVCBTSU9DUFJPVE9QUklWQVRFCi0jZGVmaW5lIFNJT0NHRVRTR0NOVCAoU0lPQ1BST1RPUFJJVkFURSsxKQorI2RlZmluZSBTSU9DR0VUU0dDTlQgKFNJT0NQUk9UT1BSSVZBVEUgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0dFVFJQRiAoU0lPQ1BST1RPUFJJVkFURSsyKQorI2RlZmluZSBTSU9DR0VUUlBGIChTSU9DUFJPVE9QUklWQVRFICsgMikKICNkZWZpbmUgTUFYVklGUyAzMgogdHlwZWRlZiB1bnNpZ25lZCBsb25nIHZpZmJpdG1hcF90OwogdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCB2aWZpX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBTExfVklGUyAoKHZpZmlfdCkoLTEpKQotI2RlZmluZSBWSUZNX1NFVChuLG0pICgobSl8PSgxPDwobikpKQotI2RlZmluZSBWSUZNX0NMUihuLG0pICgobSkmPX4oMTw8KG4pKSkKLSNkZWZpbmUgVklGTV9JU1NFVChuLG0pICgobSkmKDE8PChuKSkpCisjZGVmaW5lIEFMTF9WSUZTICgodmlmaV90KSAoLSAxKSkKKyNkZWZpbmUgVklGTV9TRVQobixtKSAoKG0pIHw9ICgxIDw8IChuKSkpCisjZGVmaW5lIFZJRk1fQ0xSKG4sbSkgKChtKSAmPSB+KDEgPDwgKG4pKSkKKyNkZWZpbmUgVklGTV9JU1NFVChuLG0pICgobSkgJiAoMSA8PCAobikpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVklGTV9DTFJBTEwobSkgKChtKT0wKQotI2RlZmluZSBWSUZNX0NPUFkobWZyb20sbXRvKSAoKG10byk9KG1mcm9tKSkKLSNkZWZpbmUgVklGTV9TQU1FKG0xLG0yKSAoKG0xKT09KG0yKSkKKyNkZWZpbmUgVklGTV9DTFJBTEwobSkgKChtKSA9IDApCisjZGVmaW5lIFZJRk1fQ09QWShtZnJvbSxtdG8pICgobXRvKSA9IChtZnJvbSkpCisjZGVmaW5lIFZJRk1fU0FNRShtMSxtMikgKChtMSkgPT0gKG0yKSkKIHN0cnVjdCB2aWZjdGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2aWZpX3QgdmlmY192aWZpOwotIHVuc2lnbmVkIGNoYXIgdmlmY19mbGFnczsKLSB1bnNpZ25lZCBjaGFyIHZpZmNfdGhyZXNob2xkOwotIHVuc2lnbmVkIGludCB2aWZjX3JhdGVfbGltaXQ7CisgIHZpZmlfdCB2aWZjX3ZpZmk7CisgIHVuc2lnbmVkIGNoYXIgdmlmY19mbGFnczsKKyAgdW5zaWduZWQgY2hhciB2aWZjX3RocmVzaG9sZDsKKyAgdW5zaWduZWQgaW50IHZpZmNfcmF0ZV9saW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBpbl9hZGRyIHZpZmNfbGNsX2FkZHI7Ci0gaW50IHZpZmNfbGNsX2lmaW5kZXg7Ci0gfTsKKyAgdW5pb24geworICAgIHN0cnVjdCBpbl9hZGRyIHZpZmNfbGNsX2FkZHI7CisgICAgaW50IHZpZmNfbGNsX2lmaW5kZXg7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIHZpZmNfcm10X2FkZHI7CisgIHN0cnVjdCBpbl9hZGRyIHZpZmNfcm10X2FkZHI7CiB9OwogI2RlZmluZSBWSUZGX1RVTk5FTCAweDEKICNkZWZpbmUgVklGRl9TUkNSVCAweDIKQEAgLTc0LDQ2ICs3NCw0NiBAQAogI2RlZmluZSBWSUZGX1JFR0lTVEVSIDB4NAogI2RlZmluZSBWSUZGX1VTRV9JRklOREVYIDB4OAogc3RydWN0IG1mY2N0bCB7Ci0gc3RydWN0IGluX2FkZHIgbWZjY19vcmlnaW47CisgIHN0cnVjdCBpbl9hZGRyIG1mY2Nfb3JpZ2luOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5fYWRkciBtZmNjX21jYXN0Z3JwOwotIHZpZmlfdCBtZmNjX3BhcmVudDsKLSB1bnNpZ25lZCBjaGFyIG1mY2NfdHRsc1tNQVhWSUZTXTsKLSB1bnNpZ25lZCBpbnQgbWZjY19wa3RfY250OworICBzdHJ1Y3QgaW5fYWRkciBtZmNjX21jYXN0Z3JwOworICB2aWZpX3QgbWZjY19wYXJlbnQ7CisgIHVuc2lnbmVkIGNoYXIgbWZjY190dGxzW01BWFZJRlNdOworICB1bnNpZ25lZCBpbnQgbWZjY19wa3RfY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbWZjY19ieXRlX2NudDsKLSB1bnNpZ25lZCBpbnQgbWZjY193cm9uZ19pZjsKLSBpbnQgbWZjY19leHBpcmU7CisgIHVuc2lnbmVkIGludCBtZmNjX2J5dGVfY250OworICB1bnNpZ25lZCBpbnQgbWZjY193cm9uZ19pZjsKKyAgaW50IG1mY2NfZXhwaXJlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2lvY19zZ19yZXEgewotIHN0cnVjdCBpbl9hZGRyIHNyYzsKLSBzdHJ1Y3QgaW5fYWRkciBncnA7Ci0gdW5zaWduZWQgbG9uZyBwa3RjbnQ7CisgIHN0cnVjdCBpbl9hZGRyIHNyYzsKKyAgc3RydWN0IGluX2FkZHIgZ3JwOworICB1bnNpZ25lZCBsb25nIHBrdGNudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBieXRlY250OwotIHVuc2lnbmVkIGxvbmcgd3JvbmdfaWY7CisgIHVuc2lnbmVkIGxvbmcgYnl0ZWNudDsKKyAgdW5zaWduZWQgbG9uZyB3cm9uZ19pZjsKIH07CiBzdHJ1Y3Qgc2lvY192aWZfcmVxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdmlmaV90IHZpZmk7Ci0gdW5zaWduZWQgbG9uZyBpY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBvY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBpYnl0ZXM7CisgIHZpZmlfdCB2aWZpOworICB1bnNpZ25lZCBsb25nIGljb3VudDsKKyAgdW5zaWduZWQgbG9uZyBvY291bnQ7CisgIHVuc2lnbmVkIGxvbmcgaWJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG9ieXRlczsKKyAgdW5zaWduZWQgbG9uZyBvYnl0ZXM7CiB9Owogc3RydWN0IGlnbXBtc2cgewotIF9fdTMyIHVudXNlZDEsdW51c2VkMjsKKyAgX191MzIgdW51c2VkMSwgdW51c2VkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBpbV9tc2d0eXBlOwotIHVuc2lnbmVkIGNoYXIgaW1fbWJ6OwotIHVuc2lnbmVkIGNoYXIgaW1fdmlmOwotIHVuc2lnbmVkIGNoYXIgdW51c2VkMzsKKyAgdW5zaWduZWQgY2hhciBpbV9tc2d0eXBlOworICB1bnNpZ25lZCBjaGFyIGltX21iejsKKyAgdW5zaWduZWQgY2hhciBpbV92aWY7CisgIHVuc2lnbmVkIGNoYXIgdW51c2VkMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgaW1fc3JjLGltX2RzdDsKKyAgc3RydWN0IGluX2FkZHIgaW1fc3JjLCBpbV9kc3Q7CiB9OwotI2RlZmluZSBNRkNfQVNTRVJUX1RIUkVTSCAoMypIWikKKyNkZWZpbmUgTUZDX0FTU0VSVF9USFJFU0ggKDMgKiBIWikKICNkZWZpbmUgSUdNUE1TR19OT0NBQ0hFIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElHTVBNU0dfV1JPTkdWSUYgMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcm91dGU2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZTYuaAppbmRleCBjOWYzMTY0Li44YTNjMzYzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZTYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZTYuaApAQCAtMjMsMzAgKzIzLDMwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNUlQ2X0JBU0UgMjAwCiAjZGVmaW5lIE1SVDZfSU5JVCAoTVJUNl9CQVNFKQotI2RlZmluZSBNUlQ2X0RPTkUgKE1SVDZfQkFTRSsxKQotI2RlZmluZSBNUlQ2X0FERF9NSUYgKE1SVDZfQkFTRSsyKQorI2RlZmluZSBNUlQ2X0RPTkUgKE1SVDZfQkFTRSArIDEpCisjZGVmaW5lIE1SVDZfQUREX01JRiAoTVJUNl9CQVNFICsgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1SVDZfREVMX01JRiAoTVJUNl9CQVNFKzMpCi0jZGVmaW5lIE1SVDZfQUREX01GQyAoTVJUNl9CQVNFKzQpCi0jZGVmaW5lIE1SVDZfREVMX01GQyAoTVJUNl9CQVNFKzUpCi0jZGVmaW5lIE1SVDZfVkVSU0lPTiAoTVJUNl9CQVNFKzYpCisjZGVmaW5lIE1SVDZfREVMX01JRiAoTVJUNl9CQVNFICsgMykKKyNkZWZpbmUgTVJUNl9BRERfTUZDIChNUlQ2X0JBU0UgKyA0KQorI2RlZmluZSBNUlQ2X0RFTF9NRkMgKE1SVDZfQkFTRSArIDUpCisjZGVmaW5lIE1SVDZfVkVSU0lPTiAoTVJUNl9CQVNFICsgNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1SVDZfQVNTRVJUIChNUlQ2X0JBU0UrNykKLSNkZWZpbmUgTVJUNl9QSU0gKE1SVDZfQkFTRSs4KQotI2RlZmluZSBNUlQ2X1RBQkxFIChNUlQ2X0JBU0UrOSkKLSNkZWZpbmUgTVJUNl9BRERfTUZDX1BST1hZIChNUlQ2X0JBU0UrMTApCisjZGVmaW5lIE1SVDZfQVNTRVJUIChNUlQ2X0JBU0UgKyA3KQorI2RlZmluZSBNUlQ2X1BJTSAoTVJUNl9CQVNFICsgOCkKKyNkZWZpbmUgTVJUNl9UQUJMRSAoTVJUNl9CQVNFICsgOSkKKyNkZWZpbmUgTVJUNl9BRERfTUZDX1BST1hZIChNUlQ2X0JBU0UgKyAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1SVDZfREVMX01GQ19QUk9YWSAoTVJUNl9CQVNFKzExKQotI2RlZmluZSBNUlQ2X01BWCAoTVJUNl9CQVNFKzExKQorI2RlZmluZSBNUlQ2X0RFTF9NRkNfUFJPWFkgKE1SVDZfQkFTRSArIDExKQorI2RlZmluZSBNUlQ2X01BWCAoTVJUNl9CQVNFICsgMTEpCiAjZGVmaW5lIFNJT0NHRVRNSUZDTlRfSU42IFNJT0NQUk9UT1BSSVZBVEUKLSNkZWZpbmUgU0lPQ0dFVFNHQ05UX0lONiAoU0lPQ1BST1RPUFJJVkFURSsxKQorI2RlZmluZSBTSU9DR0VUU0dDTlRfSU42IChTSU9DUFJPVE9QUklWQVRFICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NHRVRSUEYgKFNJT0NQUk9UT1BSSVZBVEUrMikKKyNkZWZpbmUgU0lPQ0dFVFJQRiAoU0lPQ1BST1RPUFJJVkFURSArIDIpCiAjZGVmaW5lIE1BWE1JRlMgMzIKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBtaWZiaXRtYXBfdDsKIHR5cGVkZWYgdW5zaWduZWQgc2hvcnQgbWlmaV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQUxMX01JRlMgKChtaWZpX3QpKC0xKSkKKyNkZWZpbmUgQUxMX01JRlMgKChtaWZpX3QpICgtIDEpKQogI2lmbmRlZiBJRl9TRVRTSVpFCiAjZGVmaW5lIElGX1NFVFNJWkUgMjU2CiAjZW5kaWYKQEAgLTU4LDQ4ICs1OCw0OCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogdHlwZWRlZiBzdHJ1Y3QgaWZfc2V0IHsKLSBpZl9tYXNrIGlmc19iaXRzW0RJVl9ST1VORF9VUChJRl9TRVRTSVpFLCBOSUZCSVRTKV07CisgIGlmX21hc2sgaWZzX2JpdHNbRElWX1JPVU5EX1VQKElGX1NFVFNJWkUsIE5JRkJJVFMpXTsKIH0gaWZfc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZfU0VUKG4sIHApICgocCktPmlmc19iaXRzWyhuKS9OSUZCSVRTXSB8PSAoMSA8PCAoKG4pICUgTklGQklUUykpKQotI2RlZmluZSBJRl9DTFIobiwgcCkgKChwKS0+aWZzX2JpdHNbKG4pL05JRkJJVFNdICY9IH4oMSA8PCAoKG4pICUgTklGQklUUykpKQotI2RlZmluZSBJRl9JU1NFVChuLCBwKSAoKHApLT5pZnNfYml0c1sobikvTklGQklUU10gJiAoMSA8PCAoKG4pICUgTklGQklUUykpKQotI2RlZmluZSBJRl9DT1BZKGYsIHQpIGJjb3B5KGYsIHQsIHNpemVvZigqKGYpKSkKKyNkZWZpbmUgSUZfU0VUKG4scCkgKChwKS0+aWZzX2JpdHNbKG4pIC8gTklGQklUU10gfD0gKDEgPDwgKChuKSAlIE5JRkJJVFMpKSkKKyNkZWZpbmUgSUZfQ0xSKG4scCkgKChwKS0+aWZzX2JpdHNbKG4pIC8gTklGQklUU10gJj0gfigxIDw8ICgobikgJSBOSUZCSVRTKSkpCisjZGVmaW5lIElGX0lTU0VUKG4scCkgKChwKS0+aWZzX2JpdHNbKG4pIC8gTklGQklUU10gJiAoMSA8PCAoKG4pICUgTklGQklUUykpKQorI2RlZmluZSBJRl9DT1BZKGYsdCkgYmNvcHkoZiwgdCwgc2l6ZW9mKCogKGYpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGX1pFUk8ocCkgYnplcm8ocCwgc2l6ZW9mKCoocCkpKQorI2RlZmluZSBJRl9aRVJPKHApIGJ6ZXJvKHAsIHNpemVvZigqIChwKSkpCiBzdHJ1Y3QgbWlmNmN0bCB7Ci0gbWlmaV90IG1pZjZjX21pZmk7Ci0gdW5zaWduZWQgY2hhciBtaWY2Y19mbGFnczsKKyAgbWlmaV90IG1pZjZjX21pZmk7CisgIHVuc2lnbmVkIGNoYXIgbWlmNmNfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdmlmY190aHJlc2hvbGQ7Ci0gX191MTYgbWlmNmNfcGlmaTsKLSB1bnNpZ25lZCBpbnQgdmlmY19yYXRlX2xpbWl0OworICB1bnNpZ25lZCBjaGFyIHZpZmNfdGhyZXNob2xkOworICBfX3UxNiBtaWY2Y19waWZpOworICB1bnNpZ25lZCBpbnQgdmlmY19yYXRlX2xpbWl0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1JRkZfUkVHSVNURVIgMHgxCiBzdHJ1Y3QgbWY2Y2N0bCB7Ci0gc3RydWN0IHNvY2thZGRyX2luNiBtZjZjY19vcmlnaW47Ci0gc3RydWN0IHNvY2thZGRyX2luNiBtZjZjY19tY2FzdGdycDsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBtZjZjY19vcmlnaW47CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgbWY2Y2NfbWNhc3RncnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1pZmlfdCBtZjZjY19wYXJlbnQ7Ci0gc3RydWN0IGlmX3NldCBtZjZjY19pZnNldDsKKyAgbWlmaV90IG1mNmNjX3BhcmVudDsKKyAgc3RydWN0IGlmX3NldCBtZjZjY19pZnNldDsKIH07CiBzdHJ1Y3Qgc2lvY19zZ19yZXE2IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2luNiBzcmM7Ci0gc3RydWN0IHNvY2thZGRyX2luNiBncnA7Ci0gdW5zaWduZWQgbG9uZyBwa3RjbnQ7Ci0gdW5zaWduZWQgbG9uZyBieXRlY250OworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IHNyYzsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBncnA7CisgIHVuc2lnbmVkIGxvbmcgcGt0Y250OworICB1bnNpZ25lZCBsb25nIGJ5dGVjbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgd3JvbmdfaWY7CisgIHVuc2lnbmVkIGxvbmcgd3JvbmdfaWY7CiB9Owogc3RydWN0IHNpb2NfbWlmX3JlcTYgewotIG1pZmlfdCBtaWZpOworICBtaWZpX3QgbWlmaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBpY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBvY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBpYnl0ZXM7Ci0gdW5zaWduZWQgbG9uZyBvYnl0ZXM7CisgIHVuc2lnbmVkIGxvbmcgaWNvdW50OworICB1bnNpZ25lZCBsb25nIG9jb3VudDsKKyAgdW5zaWduZWQgbG9uZyBpYnl0ZXM7CisgIHVuc2lnbmVkIGxvbmcgb2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbXJ0Nm1zZyB7CkBAIC0xMDcsMTIgKzEwNywxMiBAQAogI2RlZmluZSBNUlQ2TVNHX1dST05HTUlGIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1SVDZNU0dfV0hPTEVQS1QgMwotIF9fdTggaW02X21iejsKLSBfX3U4IGltNl9tc2d0eXBlOwotIF9fdTE2IGltNl9taWY7CisgIF9fdTggaW02X21iejsKKyAgX191OCBpbTZfbXNndHlwZTsKKyAgX191MTYgaW02X21pZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW02X3BhZDsKLSBzdHJ1Y3QgaW42X2FkZHIgaW02X3NyYywgaW02X2RzdDsKKyAgX191MzIgaW02X3BhZDsKKyAgc3RydWN0IGluNl9hZGRyIGltNl9zcmMsIGltNl9kc3Q7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tc2Rvc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tc2Rvc19mcy5oCmluZGV4IGYxMTkwYWQuLmJhYTE4NTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXNkb3NfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZG9zX2ZzLmgKQEAgLTU3LDIxICs1NywyMSBAQAogI2RlZmluZSBDQVNFX0xPV0VSX0VYVCAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgREVMRVRFRF9GTEFHIDB4ZTUKLSNkZWZpbmUgSVNfRlJFRShuKSAoISoobikgfHwgKihuKSA9PSBERUxFVEVEX0ZMQUcpCisjZGVmaW5lIElTX0ZSRUUobikgKCEgKiAobikgfHwgKiAobikgPT0gREVMRVRFRF9GTEFHKQogI2RlZmluZSBGQVRfTEZOX0xFTiAyNTUKICNkZWZpbmUgTVNET1NfTkFNRSAxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNET1NfU0xPVFMgMjEKICNkZWZpbmUgTVNET1NfRE9UICIuICAgICAgICAgICIKICNkZWZpbmUgTVNET1NfRE9URE9UICIuLiAgICAgICAgICIKLSNkZWZpbmUgRkFUX0ZJUlNUX0VOVChzLCB4KSAoKE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAzMiA/IDB4MEZGRkZGMDAgOiAgIE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAxNiA/IDB4RkYwMCA6IDB4RjAwKSB8ICh4KSkKKyNkZWZpbmUgRkFUX0ZJUlNUX0VOVChzLHgpICgoTVNET1NfU0IocyktPmZhdF9iaXRzID09IDMyID8gMHgwRkZGRkYwMCA6IE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAxNiA/IDB4RkYwMCA6IDB4RjAwKSB8ICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBVF9TVEFSVF9FTlQgMgogI2RlZmluZSBNQVhfRkFUMTIgMHhGRjQKICNkZWZpbmUgTUFYX0ZBVDE2IDB4RkZGNAogI2RlZmluZSBNQVhfRkFUMzIgMHgwRkZGRkZGNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUFYX0ZBVChzKSAoTVNET1NfU0IocyktPmZhdF9iaXRzID09IDMyID8gTUFYX0ZBVDMyIDogICBNU0RPU19TQihzKS0+ZmF0X2JpdHMgPT0gMTYgPyBNQVhfRkFUMTYgOiBNQVhfRkFUMTIpCisjZGVmaW5lIE1BWF9GQVQocykgKE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAzMiA/IE1BWF9GQVQzMiA6IE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAxNiA/IE1BWF9GQVQxNiA6IE1BWF9GQVQxMikKICNkZWZpbmUgQkFEX0ZBVDEyIDB4RkY3CiAjZGVmaW5lIEJBRF9GQVQxNiAweEZGRjcKICNkZWZpbmUgQkFEX0ZBVDMyIDB4MEZGRkZGRjcKQEAgLTg2LDE0ICs4NiwxNCBAQAogI2RlZmluZSBGQVRfRlNJTkZPX1NJRzEgMHg0MTYxNTI1MgogI2RlZmluZSBGQVRfRlNJTkZPX1NJRzIgMHg2MTQxNzI3MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVNfRlNJTkZPKHgpIChsZTMyX3RvX2NwdSgoeCktPnNpZ25hdHVyZTEpID09IEZBVF9GU0lORk9fU0lHMSAgICYmIGxlMzJfdG9fY3B1KCh4KS0+c2lnbmF0dXJlMikgPT0gRkFUX0ZTSU5GT19TSUcyKQorI2RlZmluZSBJU19GU0lORk8oeCkgKGxlMzJfdG9fY3B1KCh4KS0+c2lnbmF0dXJlMSkgPT0gRkFUX0ZTSU5GT19TSUcxICYmIGxlMzJfdG9fY3B1KCh4KS0+c2lnbmF0dXJlMikgPT0gRkFUX0ZTSU5GT19TSUcyKQogI2RlZmluZSBGQVRfU1RBVEVfRElSVFkgMHgwMQogc3RydWN0IF9fZmF0X2RpcmVudCB7Ci0gbG9uZyBkX2lubzsKKyAgbG9uZyBkX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfb2ZmX3QgZF9vZmY7Ci0gdW5zaWduZWQgc2hvcnQgZF9yZWNsZW47Ci0gY2hhciBkX25hbWVbMjU2XTsKKyAgX19rZXJuZWxfb2ZmX3QgZF9vZmY7CisgIHVuc2lnbmVkIHNob3J0IGRfcmVjbGVuOworICBjaGFyIGRfbmFtZVsyNTZdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZGQVRfSU9DVExfUkVBRERJUl9CT1RIIF9JT1IoJ3InLCAxLCBzdHJ1Y3QgX19mYXRfZGlyZW50WzJdKQpAQCAtMTAzLDkyICsxMDMsOTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBVF9JT0NUTF9HRVRfVk9MVU1FX0lEIF9JT1IoJ3InLCAweDEzLCBfX3UzMikKIHN0cnVjdCBmYXRfYm9vdF9zZWN0b3IgewotIF9fdTggaWdub3JlZFszXTsKLSBfX3U4IHN5c3RlbV9pZFs4XTsKKyAgX191OCBpZ25vcmVkWzNdOworICBfX3U4IHN5c3RlbV9pZFs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZWN0b3Jfc2l6ZVsyXTsKLSBfX3U4IHNlY19wZXJfY2x1czsKLSBfX2xlMTYgcmVzZXJ2ZWQ7Ci0gX191OCBmYXRzOworICBfX3U4IHNlY3Rvcl9zaXplWzJdOworICBfX3U4IHNlY19wZXJfY2x1czsKKyAgX19sZTE2IHJlc2VydmVkOworICBfX3U4IGZhdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGlyX2VudHJpZXNbMl07Ci0gX191OCBzZWN0b3JzWzJdOwotIF9fdTggbWVkaWE7Ci0gX19sZTE2IGZhdF9sZW5ndGg7CisgIF9fdTggZGlyX2VudHJpZXNbMl07CisgIF9fdTggc2VjdG9yc1syXTsKKyAgX191OCBtZWRpYTsKKyAgX19sZTE2IGZhdF9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBzZWNzX3RyYWNrOwotIF9fbGUxNiBoZWFkczsKLSBfX2xlMzIgaGlkZGVuOwotIF9fbGUzMiB0b3RhbF9zZWN0OworICBfX2xlMTYgc2Vjc190cmFjazsKKyAgX19sZTE2IGhlYWRzOworICBfX2xlMzIgaGlkZGVuOworICBfX2xlMzIgdG90YWxfc2VjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191OCBkcml2ZV9udW1iZXI7Ci0gX191OCBzdGF0ZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGRyaXZlX251bWJlcjsKKyAgICAgIF9fdTggc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lnbmF0dXJlOwotIF9fdTggdm9sX2lkWzRdOwotIF9fdTggdm9sX2xhYmVsWzExXTsKLSBfX3U4IGZzX3R5cGVbOF07CisgICAgICBfX3U4IHNpZ25hdHVyZTsKKyAgICAgIF9fdTggdm9sX2lkWzRdOworICAgICAgX191OCB2b2xfbGFiZWxbMTFdOworICAgICAgX191OCBmc190eXBlWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGZhdDE2OwotIHN0cnVjdCB7Ci0gX19sZTMyIGxlbmd0aDsKLSBfX2xlMTYgZmxhZ3M7CisgICAgfSBmYXQxNjsKKyAgICBzdHJ1Y3QgeworICAgICAgX19sZTMyIGxlbmd0aDsKKyAgICAgIF9fbGUxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB2ZXJzaW9uWzJdOwotIF9fbGUzMiByb290X2NsdXN0ZXI7Ci0gX19sZTE2IGluZm9fc2VjdG9yOwotIF9fbGUxNiBiYWNrdXBfYm9vdDsKKyAgICAgIF9fdTggdmVyc2lvblsyXTsKKyAgICAgIF9fbGUzMiByb290X2NsdXN0ZXI7CisgICAgICBfX2xlMTYgaW5mb19zZWN0b3I7CisgICAgICBfX2xlMTYgYmFja3VwX2Jvb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiByZXNlcnZlZDJbNl07Ci0gX191OCBkcml2ZV9udW1iZXI7Ci0gX191OCBzdGF0ZTsKLSBfX3U4IHNpZ25hdHVyZTsKKyAgICAgIF9fbGUxNiByZXNlcnZlZDJbNl07CisgICAgICBfX3U4IGRyaXZlX251bWJlcjsKKyAgICAgIF9fdTggc3RhdGU7CisgICAgICBfX3U4IHNpZ25hdHVyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB2b2xfaWRbNF07Ci0gX191OCB2b2xfbGFiZWxbMTFdOwotIF9fdTggZnNfdHlwZVs4XTsKLSB9IGZhdDMyOworICAgICAgX191OCB2b2xfaWRbNF07CisgICAgICBfX3U4IHZvbF9sYWJlbFsxMV07CisgICAgICBfX3U4IGZzX3R5cGVbOF07CisgICAgfSBmYXQzMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgfTsKIH07CiBzdHJ1Y3QgZmF0X2Jvb3RfZnNpbmZvIHsKLSBfX2xlMzIgc2lnbmF0dXJlMTsKKyAgX19sZTMyIHNpZ25hdHVyZTE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiByZXNlcnZlZDFbMTIwXTsKLSBfX2xlMzIgc2lnbmF0dXJlMjsKLSBfX2xlMzIgZnJlZV9jbHVzdGVyczsKLSBfX2xlMzIgbmV4dF9jbHVzdGVyOworICBfX2xlMzIgcmVzZXJ2ZWQxWzEyMF07CisgIF9fbGUzMiBzaWduYXR1cmUyOworICBfX2xlMzIgZnJlZV9jbHVzdGVyczsKKyAgX19sZTMyIG5leHRfY2x1c3RlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJlc2VydmVkMls0XTsKKyAgX19sZTMyIHJlc2VydmVkMls0XTsKIH07CiBzdHJ1Y3QgbXNkb3NfZGlyX2VudHJ5IHsKLSBfX3U4IG5hbWVbTVNET1NfTkFNRV07CisgIF9fdTggbmFtZVtNU0RPU19OQU1FXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhdHRyOwotIF9fdTggbGNhc2U7Ci0gX191OCBjdGltZV9jczsKLSBfX2xlMTYgY3RpbWU7CisgIF9fdTggYXR0cjsKKyAgX191OCBsY2FzZTsKKyAgX191OCBjdGltZV9jczsKKyAgX19sZTE2IGN0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgY2RhdGU7Ci0gX19sZTE2IGFkYXRlOwotIF9fbGUxNiBzdGFydGhpOwotIF9fbGUxNiB0aW1lLGRhdGUsc3RhcnQ7CisgIF9fbGUxNiBjZGF0ZTsKKyAgX19sZTE2IGFkYXRlOworICBfX2xlMTYgc3RhcnRoaTsKKyAgX19sZTE2IHRpbWUsIGRhdGUsIHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgc2l6ZTsKKyAgX19sZTMyIHNpemU7CiB9Owogc3RydWN0IG1zZG9zX2Rpcl9zbG90IHsKLSBfX3U4IGlkOworICBfX3U4IGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5hbWUwXzRbMTBdOwotIF9fdTggYXR0cjsKLSBfX3U4IHJlc2VydmVkOwotIF9fdTggYWxpYXNfY2hlY2tzdW07CisgIF9fdTggbmFtZTBfNFsxMF07CisgIF9fdTggYXR0cjsKKyAgX191OCByZXNlcnZlZDsKKyAgX191OCBhbGlhc19jaGVja3N1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuYW1lNV8xMFsxMl07Ci0gX19sZTE2IHN0YXJ0OwotIF9fdTggbmFtZTExXzEyWzRdOworICBfX3U4IG5hbWU1XzEwWzEyXTsKKyAgX19sZTE2IHN0YXJ0OworICBfX3U4IG5hbWUxMV8xMls0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tc2cuaAppbmRleCA4ZDdjNjA2Li5hYjk0ZWY2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXNnLmgKQEAgLTI3LDQxICsyNyw0MSBAQAogI2RlZmluZSBNU0dfQ09QWSAwNDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXNxaWRfZHMgewotIHN0cnVjdCBpcGNfcGVybSBtc2dfcGVybTsKLSBzdHJ1Y3QgbXNnICptc2dfZmlyc3Q7Ci0gc3RydWN0IG1zZyAqbXNnX2xhc3Q7CisgIHN0cnVjdCBpcGNfcGVybSBtc2dfcGVybTsKKyAgc3RydWN0IG1zZyAqIG1zZ19maXJzdDsKKyAgc3RydWN0IG1zZyAqIG1zZ19sYXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF90aW1lX3QgbXNnX3N0aW1lOwotIF9fa2VybmVsX3RpbWVfdCBtc2dfcnRpbWU7Ci0gX19rZXJuZWxfdGltZV90IG1zZ19jdGltZTsKLSB1bnNpZ25lZCBsb25nIG1zZ19sY2J5dGVzOworICBfX2tlcm5lbF90aW1lX3QgbXNnX3N0aW1lOworICBfX2tlcm5lbF90aW1lX3QgbXNnX3J0aW1lOworICBfX2tlcm5lbF90aW1lX3QgbXNnX2N0aW1lOworICB1bnNpZ25lZCBsb25nIG1zZ19sY2J5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG1zZ19scWJ5dGVzOwotIHVuc2lnbmVkIHNob3J0IG1zZ19jYnl0ZXM7Ci0gdW5zaWduZWQgc2hvcnQgbXNnX3FudW07Ci0gdW5zaWduZWQgc2hvcnQgbXNnX3FieXRlczsKKyAgdW5zaWduZWQgbG9uZyBtc2dfbHFieXRlczsKKyAgdW5zaWduZWQgc2hvcnQgbXNnX2NieXRlczsKKyAgdW5zaWduZWQgc2hvcnQgbXNnX3FudW07CisgIHVuc2lnbmVkIHNob3J0IG1zZ19xYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2lwY19waWRfdCBtc2dfbHNwaWQ7Ci0gX19rZXJuZWxfaXBjX3BpZF90IG1zZ19scnBpZDsKKyAgX19rZXJuZWxfaXBjX3BpZF90IG1zZ19sc3BpZDsKKyAgX19rZXJuZWxfaXBjX3BpZF90IG1zZ19scnBpZDsKIH07CiAjaW5jbHVkZSA8YXNtL21zZ2J1Zi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtc2didWYgewotIF9fa2VybmVsX2xvbmdfdCBtdHlwZTsKLSBjaGFyIG10ZXh0WzFdOworICBfX2tlcm5lbF9sb25nX3QgbXR5cGU7CisgIGNoYXIgbXRleHRbMV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtc2dpbmZvIHsKLSBpbnQgbXNncG9vbDsKLSBpbnQgbXNnbWFwOwotIGludCBtc2dtYXg7CisgIGludCBtc2dwb29sOworICBpbnQgbXNnbWFwOworICBpbnQgbXNnbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbXNnbW5iOwotIGludCBtc2dtbmk7Ci0gaW50IG1zZ3NzejsKLSBpbnQgbXNndHFsOworICBpbnQgbXNnbW5iOworICBpbnQgbXNnbW5pOworICBpbnQgbXNnc3N6OworICBpbnQgbXNndHFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBtc2dzZWc7CisgIHVuc2lnbmVkIHNob3J0IG1zZ3NlZzsKIH07CiAjZGVmaW5lIE1TR19NRU1fU0NBTEUgMzIKICNkZWZpbmUgTVNHTU5JIDE2CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L210aW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXRpby5oCmluZGV4IGI0YmViZjkuLjllMDU3ZDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXRpby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXRpby5oCkBAIC0yMiw4ICsyMiw4IEBACiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXRvcCB7Ci0gc2hvcnQgbXRfb3A7Ci0gaW50IG10X2NvdW50OworICBzaG9ydCBtdF9vcDsKKyAgaW50IG10X2NvdW50OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1UUkVTRVQgMApAQCAtNjgsMTUgKzY4LDE1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVFdFT0ZJIDM1CiBzdHJ1Y3QgbXRnZXQgewotIGxvbmcgbXRfdHlwZTsKLSBsb25nIG10X3Jlc2lkOworICBsb25nIG10X3R5cGU7CisgIGxvbmcgbXRfcmVzaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbXRfZHNyZWc7Ci0gbG9uZyBtdF9nc3RhdDsKLSBsb25nIG10X2VycmVnOwotIF9fa2VybmVsX2RhZGRyX3QgbXRfZmlsZW5vOworICBsb25nIG10X2RzcmVnOworICBsb25nIG10X2dzdGF0OworICBsb25nIG10X2VycmVnOworICBfX2tlcm5lbF9kYWRkcl90IG10X2ZpbGVubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfZGFkZHJfdCBtdF9ibGtubzsKKyAgX19rZXJuZWxfZGFkZHJfdCBtdF9ibGtubzsKIH07CiAjZGVmaW5lIE1UX0lTVU5LTk9XTiAweDAxCiAjZGVmaW5lIE1UX0lTUUlDMDIgMHgwMgpAQCAtMTA2LDcgKzEwNiw3IEBACiAjZGVmaW5lIE1UX0lTRlRBUEVfRkxBRyAweDgwMDAwMAogc3RydWN0IG10cG9zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBtdF9ibGtubzsKKyAgbG9uZyBtdF9ibGtubzsKIH07CiAjZGVmaW5lIE1USU9DVE9QIF9JT1coJ20nLCAxLCBzdHJ1Y3QgbXRvcCkKICNkZWZpbmUgTVRJT0NHRVQgX0lPUignbScsIDIsIHN0cnVjdCBtdGdldCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbl9yMzk2NC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uX3IzOTY0LmgKaW5kZXggZTFjZmYzMS4uYzkyMmFjZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uX3IzOTY0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uX3IzOTY0LmgKQEAgLTMyLDE4ICszMiwyMiBAQAogI2RlZmluZSBSMzk2NF9TSUdfTk9ORSAweDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFIzOTY0X1VTRV9TSUdJTyAweDEwMDAKLWVudW0ge1IzOTY0X01TR19BQ0s9MSwgUjM5NjRfTVNHX0RBVEEgfTsKK2VudW0geworICBSMzk2NF9NU0dfQUNLID0gMSwKKyAgUjM5NjRfTVNHX0RBVEEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2RlZmluZSBSMzk2NF9NQVhfTVNHX0NPVU5UIDMyCiAjZGVmaW5lIFIzOTY0X09LIDAKKyNkZWZpbmUgUjM5NjRfVFhfRkFJTCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFIzOTY0X1RYX0ZBSUwgLTEKLSNkZWZpbmUgUjM5NjRfT1ZFUkZMT1cgLTIKKyNkZWZpbmUgUjM5NjRfT1ZFUkZMT1cgLSAyCiBzdHJ1Y3QgcjM5NjRfY2xpZW50X21lc3NhZ2UgewotIGludCBtc2dfaWQ7CisgIGludCBtc2dfaWQ7CisgIGludCBhcmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhcmc7Ci0gaW50IGVycm9yX2NvZGU7CisgIGludCBlcnJvcl9jb2RlOwogfTsKICNkZWZpbmUgUjM5NjRfTVRVIDI1NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmJkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25iZC5oCmluZGV4IDUzNzM2ZTkuLjU4OGZiZDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmJkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uYmQuaApAQCAtMTksMjcgKzE5LDI3IEBACiAjaWZuZGVmIF9VQVBJTElOVVhfTkJEX0gKICNkZWZpbmUgX1VBUElMSU5VWF9OQkRfSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIE5CRF9TRVRfU09DSyBfSU8oIDB4YWIsIDAgKQorI2RlZmluZSBOQkRfU0VUX1NPQ0sgX0lPKDB4YWIsIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOQkRfU0VUX0JMS1NJWkUgX0lPKCAweGFiLCAxICkKLSNkZWZpbmUgTkJEX1NFVF9TSVpFIF9JTyggMHhhYiwgMiApCi0jZGVmaW5lIE5CRF9ET19JVCBfSU8oIDB4YWIsIDMgKQotI2RlZmluZSBOQkRfQ0xFQVJfU09DSyBfSU8oIDB4YWIsIDQgKQorI2RlZmluZSBOQkRfU0VUX0JMS1NJWkUgX0lPKDB4YWIsIDEpCisjZGVmaW5lIE5CRF9TRVRfU0laRSBfSU8oMHhhYiwgMikKKyNkZWZpbmUgTkJEX0RPX0lUIF9JTygweGFiLCAzKQorI2RlZmluZSBOQkRfQ0xFQVJfU09DSyBfSU8oMHhhYiwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5CRF9DTEVBUl9RVUUgX0lPKCAweGFiLCA1ICkKLSNkZWZpbmUgTkJEX1BSSU5UX0RFQlVHIF9JTyggMHhhYiwgNiApCi0jZGVmaW5lIE5CRF9TRVRfU0laRV9CTE9DS1MgX0lPKCAweGFiLCA3ICkKLSNkZWZpbmUgTkJEX0RJU0NPTk5FQ1QgX0lPKCAweGFiLCA4ICkKKyNkZWZpbmUgTkJEX0NMRUFSX1FVRSBfSU8oMHhhYiwgNSkKKyNkZWZpbmUgTkJEX1BSSU5UX0RFQlVHIF9JTygweGFiLCA2KQorI2RlZmluZSBOQkRfU0VUX1NJWkVfQkxPQ0tTIF9JTygweGFiLCA3KQorI2RlZmluZSBOQkRfRElTQ09OTkVDVCBfSU8oMHhhYiwgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5CRF9TRVRfVElNRU9VVCBfSU8oIDB4YWIsIDkgKQotI2RlZmluZSBOQkRfU0VUX0ZMQUdTIF9JTyggMHhhYiwgMTApCisjZGVmaW5lIE5CRF9TRVRfVElNRU9VVCBfSU8oMHhhYiwgOSkKKyNkZWZpbmUgTkJEX1NFVF9GTEFHUyBfSU8oMHhhYiwgMTApCiBlbnVtIHsKLSBOQkRfQ01EX1JFQUQgPSAwLAorICBOQkRfQ01EX1JFQUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOQkRfQ01EX1dSSVRFID0gMSwKLSBOQkRfQ01EX0RJU0MgPSAyLAotIE5CRF9DTURfRkxVU0ggPSAzLAotIE5CRF9DTURfVFJJTSA9IDQKKyAgTkJEX0NNRF9XUklURSA9IDEsCisgIE5CRF9DTURfRElTQyA9IDIsCisgIE5CRF9DTURfRkxVU0ggPSAzLAorICBOQkRfQ01EX1RSSU0gPSA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkJEX0ZMQUdfSEFTX0ZMQUdTICgxIDw8IDApCkBAIC01MiwxOCArNTIsMTggQEAKICNkZWZpbmUgTkJEX1JFUExZX01BR0lDIDB4Njc0NDY2OTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmJkX3JlcXVlc3QgewotIF9fYmUzMiBtYWdpYzsKLSBfX2JlMzIgdHlwZTsKLSBjaGFyIGhhbmRsZVs4XTsKKyAgX19iZTMyIG1hZ2ljOworICBfX2JlMzIgdHlwZTsKKyAgY2hhciBoYW5kbGVbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBmcm9tOwotIF9fYmUzMiBsZW47CisgIF9fYmU2NCBmcm9tOworICBfX2JlMzIgbGVuOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBuYmRfcmVwbHkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbWFnaWM7Ci0gX19iZTMyIGVycm9yOwotIGNoYXIgaGFuZGxlWzhdOworICBfX2JlMzIgbWFnaWM7CisgIF9fYmUzMiBlcnJvcjsKKyAgY2hhciBoYW5kbGVbOF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwLmgKaW5kZXggZTJjZDdkNC4uYjg3Y2RiYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcC5oCkBAIC0yNywxNCArMjcsMTQgQEAKICNkZWZpbmUgTkNQX0RFQUxMT0NfU0xPVF9SRVFVRVNUICgweDU1NTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5jcF9yZXF1ZXN0X2hlYWRlciB7Ci0gX191MTYgdHlwZTsKLSBfX3U4IHNlcXVlbmNlOwotIF9fdTggY29ubl9sb3c7CisgIF9fdTE2IHR5cGU7CisgIF9fdTggc2VxdWVuY2U7CisgIF9fdTggY29ubl9sb3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGFzazsKLSBfX3U4IGNvbm5faGlnaDsKLSBfX3U4IGZ1bmN0aW9uOwotIF9fdTggZGF0YVswXTsKKyAgX191OCB0YXNrOworICBfX3U4IGNvbm5faGlnaDsKKyAgX191OCBmdW5jdGlvbjsKKyAgX191OCBkYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIE5DUF9SRVBMWSAoMHgzMzMzKQpAQCAtNDIsMzEgKzQyLDMxIEBACiAjZGVmaW5lIE5DUF9QT1NJVElWRV9BQ0sgKDB4OTk5OSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmNwX3JlcGx5X2hlYWRlciB7Ci0gX191MTYgdHlwZTsKLSBfX3U4IHNlcXVlbmNlOwotIF9fdTggY29ubl9sb3c7CisgIF9fdTE2IHR5cGU7CisgIF9fdTggc2VxdWVuY2U7CisgIF9fdTggY29ubl9sb3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGFzazsKLSBfX3U4IGNvbm5faGlnaDsKLSBfX3U4IGNvbXBsZXRpb25fY29kZTsKLSBfX3U4IGNvbm5lY3Rpb25fc3RhdGU7CisgIF9fdTggdGFzazsKKyAgX191OCBjb25uX2hpZ2g7CisgIF9fdTggY29tcGxldGlvbl9jb2RlOworICBfX3U4IGNvbm5lY3Rpb25fc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVswXTsKKyAgX191OCBkYXRhWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgTkNQX1ZPTE5BTUVfTEVOICgxNikKICNkZWZpbmUgTkNQX05VTUJFUl9PRl9WT0xVTUVTICgyNTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5jcF92b2x1bWVfaW5mbyB7Ci0gX191MzIgdG90YWxfYmxvY2tzOwotIF9fdTMyIGZyZWVfYmxvY2tzOwotIF9fdTMyIHB1cmdlYWJsZV9ibG9ja3M7CisgIF9fdTMyIHRvdGFsX2Jsb2NrczsKKyAgX191MzIgZnJlZV9ibG9ja3M7CisgIF9fdTMyIHB1cmdlYWJsZV9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5vdF95ZXRfcHVyZ2VhYmxlX2Jsb2NrczsKLSBfX3UzMiB0b3RhbF9kaXJfZW50cmllczsKLSBfX3UzMiBhdmFpbGFibGVfZGlyX2VudHJpZXM7Ci0gX191OCBzZWN0b3JzX3Blcl9ibG9jazsKKyAgX191MzIgbm90X3lldF9wdXJnZWFibGVfYmxvY2tzOworICBfX3UzMiB0b3RhbF9kaXJfZW50cmllczsKKyAgX191MzIgYXZhaWxhYmxlX2Rpcl9lbnRyaWVzOworICBfX3U4IHNlY3RvcnNfcGVyX2Jsb2NrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHZvbHVtZV9uYW1lW05DUF9WT0xOQU1FX0xFTiArIDFdOworICBjaGFyIHZvbHVtZV9uYW1lW05DUF9WT0xOQU1FX0xFTiArIDFdOwogfTsKICNkZWZpbmUgQVJfUkVBRCAoY3B1X3RvX2xlMTYoMSkpCiAjZGVmaW5lIEFSX1dSSVRFIChjcHVfdG9fbGUxNigyKSkKQEAgLTEzMyw0MyArMTMzLDQzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiBzdHJ1Y3QgbndfbmZzX2luZm8gewotIF9fdTMyIG1vZGU7Ci0gX191MzIgcmRldjsKKyAgX191MzIgbW9kZTsKKyAgX191MzIgcmRldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG53X2luZm9fc3RydWN0IHsKLSBfX3UzMiBzcGFjZUFsbG9jOwotIF9fbGUzMiBhdHRyaWJ1dGVzOworICBfX3UzMiBzcGFjZUFsbG9jOworICBfX2xlMzIgYXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX19sZTMyIGRhdGFTdHJlYW1TaXplOwotIF9fbGUzMiB0b3RhbFN0cmVhbVNpemU7Ci0gX191MTYgbnVtYmVyT2ZTdHJlYW1zOworICBfX3UxNiBmbGFnczsKKyAgX19sZTMyIGRhdGFTdHJlYW1TaXplOworICBfX2xlMzIgdG90YWxTdHJlYW1TaXplOworICBfX3UxNiBudW1iZXJPZlN0cmVhbXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBjcmVhdGlvblRpbWU7Ci0gX19sZTE2IGNyZWF0aW9uRGF0ZTsKLSBfX3UzMiBjcmVhdG9ySUQ7Ci0gX19sZTE2IG1vZGlmeVRpbWU7CisgIF9fbGUxNiBjcmVhdGlvblRpbWU7CisgIF9fbGUxNiBjcmVhdGlvbkRhdGU7CisgIF9fdTMyIGNyZWF0b3JJRDsKKyAgX19sZTE2IG1vZGlmeVRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBtb2RpZnlEYXRlOwotIF9fdTMyIG1vZGlmaWVySUQ7Ci0gX19sZTE2IGxhc3RBY2Nlc3NEYXRlOwotIF9fdTE2IGFyY2hpdmVUaW1lOworICBfX2xlMTYgbW9kaWZ5RGF0ZTsKKyAgX191MzIgbW9kaWZpZXJJRDsKKyAgX19sZTE2IGxhc3RBY2Nlc3NEYXRlOworICBfX3UxNiBhcmNoaXZlVGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYXJjaGl2ZURhdGU7Ci0gX191MzIgYXJjaGl2ZXJJRDsKLSBfX3UxNiBpbmhlcml0ZWRSaWdodHNNYXNrOwotIF9fbGUzMiBkaXJFbnROdW07CisgIF9fdTE2IGFyY2hpdmVEYXRlOworICBfX3UzMiBhcmNoaXZlcklEOworICBfX3UxNiBpbmhlcml0ZWRSaWdodHNNYXNrOworICBfX2xlMzIgZGlyRW50TnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgRG9zRGlyTnVtOwotIF9fdTMyIHZvbE51bWJlcjsKLSBfX3UzMiBFQURhdGFTaXplOwotIF9fdTMyIEVBS2V5Q291bnQ7CisgIF9fbGUzMiBEb3NEaXJOdW07CisgIF9fdTMyIHZvbE51bWJlcjsKKyAgX191MzIgRUFEYXRhU2l6ZTsKKyAgX191MzIgRUFLZXlDb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgRUFLZXlTaXplOwotIF9fdTMyIE5TQ3JlYXRvcjsKLSBfX3U4IG5hbWVMZW47Ci0gX191OCBlbnRyeU5hbWVbMjU2XTsKKyAgX191MzIgRUFLZXlTaXplOworICBfX3UzMiBOU0NyZWF0b3I7CisgIF9fdTggbmFtZUxlbjsKKyAgX191OCBlbnRyeU5hbWVbMjU2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBETV9BVFRSSUJVVEVTIChjcHVfdG9fbGUzMigweDAyKSkKQEAgLTE4OSwzMCArMTg5LDMwIEBACiAjZGVmaW5lIERNX0lOSEVSSVRFRF9SSUdIVFNfTUFTSyAoY3B1X3RvX2xlMzIoMHgxMDAwKSkKICNkZWZpbmUgRE1fTUFYSU1VTV9TUEFDRSAoY3B1X3RvX2xlMzIoMHgyMDAwKSkKIHN0cnVjdCBud19tb2RpZnlfZG9zX2luZm8gewotIF9fbGUzMiBhdHRyaWJ1dGVzOworICBfX2xlMzIgYXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGNyZWF0aW9uRGF0ZTsKLSBfX2xlMTYgY3JlYXRpb25UaW1lOwotIF9fdTMyIGNyZWF0b3JJRDsKLSBfX2xlMTYgbW9kaWZ5RGF0ZTsKKyAgX19sZTE2IGNyZWF0aW9uRGF0ZTsKKyAgX19sZTE2IGNyZWF0aW9uVGltZTsKKyAgX191MzIgY3JlYXRvcklEOworICBfX2xlMTYgbW9kaWZ5RGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IG1vZGlmeVRpbWU7Ci0gX191MzIgbW9kaWZpZXJJRDsKLSBfX3UxNiBhcmNoaXZlRGF0ZTsKLSBfX3UxNiBhcmNoaXZlVGltZTsKKyAgX19sZTE2IG1vZGlmeVRpbWU7CisgIF9fdTMyIG1vZGlmaWVySUQ7CisgIF9fdTE2IGFyY2hpdmVEYXRlOworICBfX3UxNiBhcmNoaXZlVGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXJjaGl2ZXJJRDsKLSBfX2xlMTYgbGFzdEFjY2Vzc0RhdGU7Ci0gX191MTYgaW5oZXJpdGFuY2VHcmFudE1hc2s7Ci0gX191MTYgaW5oZXJpdGFuY2VSZXZva2VNYXNrOworICBfX3UzMiBhcmNoaXZlcklEOworICBfX2xlMTYgbGFzdEFjY2Vzc0RhdGU7CisgIF9fdTE2IGluaGVyaXRhbmNlR3JhbnRNYXNrOworICBfX3UxNiBpbmhlcml0YW5jZVJldm9rZU1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heGltdW1TcGFjZTsKKyAgX191MzIgbWF4aW11bVNwYWNlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBud19zZWFyY2hfc2VxdWVuY2UgewotIF9fdTggdm9sTnVtYmVyOworICBfX3U4IHZvbE51bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGlyQmFzZTsKLSBfX3UzMiBzZXF1ZW5jZTsKKyAgX191MzIgZGlyQmFzZTsKKyAgX191MzIgc2VxdWVuY2U7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3BfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX2ZzLmgKaW5kZXggODc5MjE0NC4uYjRjZWExMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3BfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9mcy5oCkBAIC0yNywxMjIgKzI3LDExNCBAQAogI2luY2x1ZGUgPGxpbnV4L25jcF9uby5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuY3BfaW9jdGxfcmVxdWVzdCB7Ci0gdW5zaWduZWQgaW50IGZ1bmN0aW9uOwotIHVuc2lnbmVkIGludCBzaXplOwotIGNoYXIgX191c2VyICpkYXRhOworICB1bnNpZ25lZCBpbnQgZnVuY3Rpb247CisgIHVuc2lnbmVkIGludCBzaXplOworICBjaGFyIF9fdXNlciAqIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuY3BfZnNfaW5mbyB7Ci0gaW50IHZlcnNpb247Ci0gc3RydWN0IHNvY2thZGRyX2lweCBhZGRyOworICBpbnQgdmVyc2lvbjsKKyAgc3RydWN0IHNvY2thZGRyX2lweCBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91aWRfdCBtb3VudGVkX3VpZDsKLSBpbnQgY29ubmVjdGlvbjsKLSBpbnQgYnVmZmVyX3NpemU7Ci0gaW50IHZvbHVtZV9udW1iZXI7CisgIF9fa2VybmVsX3VpZF90IG1vdW50ZWRfdWlkOworICBpbnQgY29ubmVjdGlvbjsKKyAgaW50IGJ1ZmZlcl9zaXplOworICBpbnQgdm9sdW1lX251bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGRpcmVjdG9yeV9pZDsKKyAgX19sZTMyIGRpcmVjdG9yeV9pZDsKIH07CiBzdHJ1Y3QgbmNwX2ZzX2luZm9fdjIgewotIGludCB2ZXJzaW9uOworICBpbnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtb3VudGVkX3VpZDsKLSB1bnNpZ25lZCBpbnQgY29ubmVjdGlvbjsKLSB1bnNpZ25lZCBpbnQgYnVmZmVyX3NpemU7Ci0gdW5zaWduZWQgaW50IHZvbHVtZV9udW1iZXI7CisgIHVuc2lnbmVkIGxvbmcgbW91bnRlZF91aWQ7CisgIHVuc2lnbmVkIGludCBjb25uZWN0aW9uOworICB1bnNpZ25lZCBpbnQgYnVmZmVyX3NpemU7CisgIHVuc2lnbmVkIGludCB2b2x1bWVfbnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZGlyZWN0b3J5X2lkOwotIF9fdTMyIGR1bW15MTsKLSBfX3UzMiBkdW1teTI7Ci0gX191MzIgZHVtbXkzOworICBfX2xlMzIgZGlyZWN0b3J5X2lkOworICBfX3UzMiBkdW1teTE7CisgIF9fdTMyIGR1bW15MjsKKyAgX191MzIgZHVtbXkzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgbmNwX3NpZ25faW5pdAotewotIGNoYXIgc2lnbl9yb290WzhdOworc3RydWN0IG5jcF9zaWduX2luaXQgeworICBjaGFyIHNpZ25fcm9vdFs4XTsKKyAgY2hhciBzaWduX2xhc3RbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNpZ25fbGFzdFsxNl07CiB9Owotc3RydWN0IG5jcF9sb2NrX2lvY3RsCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IG5jcF9sb2NrX2lvY3RsIHsKICNkZWZpbmUgTkNQX0xPQ0tfTE9HIDAKICNkZWZpbmUgTkNQX0xPQ0tfU0ggMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0xPQ0tfRVggMgogI2RlZmluZSBOQ1BfTE9DS19DTEVBUiAyNTYKKyAgaW50IGNtZDsKKyAgaW50IG9yaWdpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNtZDsKLSBpbnQgb3JpZ2luOwotIHVuc2lnbmVkIGludCBvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGxlbmd0aDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBvZmZzZXQ7CisgIHVuc2lnbmVkIGludCBsZW5ndGg7CiAjZGVmaW5lIE5DUF9MT0NLX0RFRkFVTFRfVElNRU9VVCAxOAogI2RlZmluZSBOQ1BfTE9DS19NQVhfVElNRU9VVCAxODAKLSBpbnQgdGltZW91dDsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IG5jcF9zZXRyb290X2lvY3RsCi17Ci0gaW50IHZvbE51bWJlcjsKLSBpbnQgbmFtZXNwYWNlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZGlyRW50TnVtOworICBpbnQgdGltZW91dDsKIH07Ci1zdHJ1Y3QgbmNwX29iamVjdG5hbWVfaW9jdGwKLXsKK3N0cnVjdCBuY3Bfc2V0cm9vdF9pb2N0bCB7CisgIGludCB2b2xOdW1iZXI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgbmFtZXNwYWNlOworICBfX2xlMzIgZGlyRW50TnVtOworfTsKK3N0cnVjdCBuY3Bfb2JqZWN0bmFtZV9pb2N0bCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfQVVUSF9OT05FIDB4MDAKICNkZWZpbmUgTkNQX0FVVEhfQklORCAweDMxCiAjZGVmaW5lIE5DUF9BVVRIX05EUyAweDMyCi0gaW50IGF1dGhfdHlwZTsKKyAgaW50IGF1dGhfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IG9iamVjdF9uYW1lX2xlbjsKLSB2b2lkIF9fdXNlciAqIG9iamVjdF9uYW1lOworICBzaXplX3Qgb2JqZWN0X25hbWVfbGVuOworICB2b2lkIF9fdXNlciAqIG9iamVjdF9uYW1lOwogfTsKLXN0cnVjdCBuY3BfcHJpdmF0ZWRhdGFfaW9jdGwKK3N0cnVjdCBuY3BfcHJpdmF0ZWRhdGFfaW9jdGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBzaXplX3QgbGVuOwotIHZvaWQgX191c2VyICogZGF0YTsKKyAgc2l6ZV90IGxlbjsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NTTkFNRV9MRU4gMjAKLXN0cnVjdCBuY3BfbmxzX2lvY3RsCi17Ci0gdW5zaWduZWQgY2hhciBjb2RlcGFnZVtOQ1BfSU9DU05BTUVfTEVOKzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGlvY2hhcnNldFtOQ1BfSU9DU05BTUVfTEVOKzFdOworc3RydWN0IG5jcF9ubHNfaW9jdGwgeworICB1bnNpZ25lZCBjaGFyIGNvZGVwYWdlW05DUF9JT0NTTkFNRV9MRU4gKyAxXTsKKyAgdW5zaWduZWQgY2hhciBpb2NoYXJzZXRbTkNQX0lPQ1NOQU1FX0xFTiArIDFdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfTkNQUkVRVUVTVCBfSU9SKCduJywgMSwgc3RydWN0IG5jcF9pb2N0bF9yZXF1ZXN0KQogI2RlZmluZSBOQ1BfSU9DX0dFVE1PVU5UVUlEIF9JT1coJ24nLCAyLCBfX2tlcm5lbF9vbGRfdWlkX3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfSU9DX0dFVE1PVU5UVUlEMiBfSU9XKCduJywgMiwgdW5zaWduZWQgbG9uZykKICNkZWZpbmUgTkNQX0lPQ19DT05OX0xPR0dFRF9JTiBfSU8oJ24nLCAzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0dFVF9GU19JTkZPX1ZFUlNJT04gKDEpCiAjZGVmaW5lIE5DUF9JT0NfR0VUX0ZTX0lORk8gX0lPV1IoJ24nLCA0LCBzdHJ1Y3QgbmNwX2ZzX2luZm8pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfR0VUX0ZTX0lORk9fVkVSU0lPTl9WMiAoMikKICNkZWZpbmUgTkNQX0lPQ19HRVRfRlNfSU5GT19WMiBfSU9XUignbicsIDQsIHN0cnVjdCBuY3BfZnNfaW5mb192MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfU0lHTl9JTklUIF9JT1IoJ24nLCA1LCBzdHJ1Y3QgbmNwX3NpZ25faW5pdCkKICNkZWZpbmUgTkNQX0lPQ19TSUdOX1dBTlRFRCBfSU9SKCduJywgNiwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19TRVRfU0lHTl9XQU5URUQgX0lPVygnbicsIDYsIGludCkKICNkZWZpbmUgTkNQX0lPQ19MT0NLVU5MT0NLIF9JT1IoJ24nLCA3LCBzdHJ1Y3QgbmNwX2xvY2tfaW9jdGwpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfSU9DX0dFVFJPT1QgX0lPVygnbicsIDgsIHN0cnVjdCBuY3Bfc2V0cm9vdF9pb2N0bCkKICNkZWZpbmUgTkNQX0lPQ19TRVRST09UIF9JT1IoJ24nLCA4LCBzdHJ1Y3QgbmNwX3NldHJvb3RfaW9jdGwpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfSU9DX0dFVE9CSkVDVE5BTUUgX0lPV1IoJ24nLCA5LCBzdHJ1Y3QgbmNwX29iamVjdG5hbWVfaW9jdGwpCiAjZGVmaW5lIE5DUF9JT0NfU0VUT0JKRUNUTkFNRSBfSU9SKCduJywgOSwgc3RydWN0IG5jcF9vYmplY3RuYW1lX2lvY3RsKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19HRVRQUklWQVRFREFUQSBfSU9XUignbicsIDEwLCBzdHJ1Y3QgbmNwX3ByaXZhdGVkYXRhX2lvY3RsKQogI2RlZmluZSBOQ1BfSU9DX1NFVFBSSVZBVEVEQVRBIF9JT1IoJ24nLCAxMCwgc3RydWN0IG5jcF9wcml2YXRlZGF0YV9pb2N0bCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfR0VUQ0hBUlNFVFMgX0lPV1IoJ24nLCAxMSwgc3RydWN0IG5jcF9ubHNfaW9jdGwpCiAjZGVmaW5lIE5DUF9JT0NfU0VUQ0hBUlNFVFMgX0lPUignbicsIDExLCBzdHJ1Y3QgbmNwX25sc19pb2N0bCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfR0VUREVOVFJZVFRMIF9JT1coJ24nLCAxMiwgX191MzIpCiAjZGVmaW5lIE5DUF9JT0NfU0VUREVOVFJZVFRMIF9JT1IoJ24nLCAxMiwgX191MzIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfUEFDS0VUX1NJWkUgNDA3MAogI2RlZmluZSBOQ1BfTUFYUEFUSExFTiAyNTUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9NQVhOQU1FTEVOIDE0CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9tb3VudC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3BfbW91bnQuaAppbmRleCBlZTNlODRmLi4wNjFmYzljIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9tb3VudC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX21vdW50LmgKQEAgLTMzLDM4ICszMywzOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX01PVU5UX05GU19FWFRSQVMgMHgwMDgwCiBzdHJ1Y3QgbmNwX21vdW50X2RhdGEgewotIGludCB2ZXJzaW9uOwotIHVuc2lnbmVkIGludCBuY3BfZmQ7CisgIGludCB2ZXJzaW9uOworICB1bnNpZ25lZCBpbnQgbmNwX2ZkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91aWRfdCBtb3VudGVkX3VpZDsKLSBfX2tlcm5lbF9waWRfdCB3ZG9nX3BpZDsKLSB1bnNpZ25lZCBjaGFyIG1vdW50ZWRfdm9sW05DUF9WT0xOQU1FX0xFTiArIDFdOwotIHVuc2lnbmVkIGludCB0aW1lX291dDsKKyAgX19rZXJuZWxfdWlkX3QgbW91bnRlZF91aWQ7CisgIF9fa2VybmVsX3BpZF90IHdkb2dfcGlkOworICB1bnNpZ25lZCBjaGFyIG1vdW50ZWRfdm9sW05DUF9WT0xOQU1FX0xFTiArIDFdOworICB1bnNpZ25lZCBpbnQgdGltZV9vdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByZXRyeV9jb3VudDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gX19rZXJuZWxfdWlkX3QgdWlkOwotIF9fa2VybmVsX2dpZF90IGdpZDsKKyAgdW5zaWduZWQgaW50IHJldHJ5X2NvdW50OworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIF9fa2VybmVsX3VpZF90IHVpZDsKKyAgX19rZXJuZWxfZ2lkX3QgZ2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9tb2RlX3QgZmlsZV9tb2RlOwotIF9fa2VybmVsX21vZGVfdCBkaXJfbW9kZTsKKyAgX19rZXJuZWxfbW9kZV90IGZpbGVfbW9kZTsKKyAgX19rZXJuZWxfbW9kZV90IGRpcl9tb2RlOwogfTsKICNkZWZpbmUgTkNQX01PVU5UX1ZFUlNJT05fVjQgKDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5jcF9tb3VudF9kYXRhX3Y0IHsKLSBpbnQgdmVyc2lvbjsKLSB1bnNpZ25lZCBsb25nIGZsYWdzOwotIHVuc2lnbmVkIGxvbmcgbW91bnRlZF91aWQ7CisgIGludCB2ZXJzaW9uOworICB1bnNpZ25lZCBsb25nIGZsYWdzOworICB1bnNpZ25lZCBsb25nIG1vdW50ZWRfdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHdkb2dfcGlkOwotIHVuc2lnbmVkIGludCBuY3BfZmQ7Ci0gdW5zaWduZWQgaW50IHRpbWVfb3V0OwotIHVuc2lnbmVkIGludCByZXRyeV9jb3VudDsKKyAgbG9uZyB3ZG9nX3BpZDsKKyAgdW5zaWduZWQgaW50IG5jcF9mZDsKKyAgdW5zaWduZWQgaW50IHRpbWVfb3V0OworICB1bnNpZ25lZCBpbnQgcmV0cnlfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgdWlkOwotIHVuc2lnbmVkIGxvbmcgZ2lkOwotIHVuc2lnbmVkIGxvbmcgZmlsZV9tb2RlOwotIHVuc2lnbmVkIGxvbmcgZGlyX21vZGU7CisgIHVuc2lnbmVkIGxvbmcgdWlkOworICB1bnNpZ25lZCBsb25nIGdpZDsKKyAgdW5zaWduZWQgbG9uZyBmaWxlX21vZGU7CisgIHVuc2lnbmVkIGxvbmcgZGlyX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkNQX01PVU5UX1ZFUlNJT05fVjUgKDUpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9uby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3Bfbm8uaAppbmRleCA5NjY5ZTg4Li4xNzUxNDEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9uby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX25vLmgKQEAgLTI3LDEyICsyNywxMiBAQAogI2RlZmluZSBhQVJDSCAoX19jcHVfdG9fbGUzMigweDIwKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGFTSEFSRUQgKF9fY3B1X3RvX2xlMzIoMHg4MCkpCi0jZGVmaW5lIGFET05UU1VCQUxMT0NBVEUgKF9fY3B1X3RvX2xlMzIoMUw8PDExKSkKLSNkZWZpbmUgYVRSQU5TQUNUSU9OQUwgKF9fY3B1X3RvX2xlMzIoMUw8PDEyKSkKLSNkZWZpbmUgYVBVUkdFIChfX2NwdV90b19sZTMyKDFMPDwxNikpCisjZGVmaW5lIGFET05UU1VCQUxMT0NBVEUgKF9fY3B1X3RvX2xlMzIoMUwgPDwgMTEpKQorI2RlZmluZSBhVFJBTlNBQ1RJT05BTCAoX19jcHVfdG9fbGUzMigxTCA8PCAxMikpCisjZGVmaW5lIGFQVVJHRSAoX19jcHVfdG9fbGUzMigxTCA8PCAxNikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBhUkVOQU1FSU5ISUJJVCAoX19jcHVfdG9fbGUzMigxTDw8MTcpKQotI2RlZmluZSBhREVMRVRFSU5ISUJJVCAoX19jcHVfdG9fbGUzMigxTDw8MTgpKQotI2RlZmluZSBhRE9OVENPTVBSRVNTIChfX2NwdV90b19sZTMyKDFMPDwyNykpCisjZGVmaW5lIGFSRU5BTUVJTkhJQklUIChfX2NwdV90b19sZTMyKDFMIDw8IDE3KSkKKyNkZWZpbmUgYURFTEVURUlOSElCSVQgKF9fY3B1X3RvX2xlMzIoMUwgPDwgMTgpKQorI2RlZmluZSBhRE9OVENPTVBSRVNTIChfX2NwdV90b19sZTMyKDFMIDw8IDI3KSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmVpZ2hib3VyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25laWdoYm91ci5oCmluZGV4IGQ4NGRlMGMuLmM3M2M3ZjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmVpZ2hib3VyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZWlnaGJvdXIuaApAQCAtMjIsMTMzICsyMiwxMzQgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRsaW5rLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5kbXNnIHsKLSBfX3U4IG5kbV9mYW1pbHk7Ci0gX191OCBuZG1fcGFkMTsKLSBfX3UxNiBuZG1fcGFkMjsKKyAgX191OCBuZG1fZmFtaWx5OworICBfX3U4IG5kbV9wYWQxOworICBfX3UxNiBuZG1fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgbmRtX2lmaW5kZXg7Ci0gX191MTYgbmRtX3N0YXRlOwotIF9fdTggbmRtX2ZsYWdzOwotIF9fdTggbmRtX3R5cGU7CisgIF9fczMyIG5kbV9pZmluZGV4OworICBfX3UxNiBuZG1fc3RhdGU7CisgIF9fdTggbmRtX2ZsYWdzOworICBfX3U4IG5kbV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBOREFfVU5TUEVDLAotIE5EQV9EU1QsCisgIE5EQV9VTlNQRUMsCisgIE5EQV9EU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EQV9MTEFERFIsCi0gTkRBX0NBQ0hFSU5GTywKLSBOREFfUFJPQkVTLAotIE5EQV9WTEFOLAorICBOREFfTExBRERSLAorICBOREFfQ0FDSEVJTkZPLAorICBOREFfUFJPQkVTLAorICBOREFfVkxBTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRBX1BPUlQsCi0gTkRBX1ZOSSwKLSBOREFfSUZJTkRFWCwKLSBfX05EQV9NQVgKKyAgTkRBX1BPUlQsCisgIE5EQV9WTkksCisgIE5EQV9JRklOREVYLAorICBOREFfTUFTVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19OREFfTUFYCiB9OwogI2RlZmluZSBOREFfTUFYIChfX05EQV9NQVggLSAxKQogI2RlZmluZSBOVEZfVVNFIDB4MDEKLSNkZWZpbmUgTlRGX1BST1hZIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5URl9QUk9YWSAweDA4CiAjZGVmaW5lIE5URl9ST1VURVIgMHg4MAogI2RlZmluZSBOVEZfU0VMRiAweDAyCiAjZGVmaW5lIE5URl9NQVNURVIgMHgwNAotI2RlZmluZSBOVURfSU5DT01QTEVURSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBOVURfSU5DT01QTEVURSAweDAxCiAjZGVmaW5lIE5VRF9SRUFDSEFCTEUgMHgwMgogI2RlZmluZSBOVURfU1RBTEUgMHgwNAogI2RlZmluZSBOVURfREVMQVkgMHgwOAotI2RlZmluZSBOVURfUFJPQkUgMHgxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTlVEX1BST0JFIDB4MTAKICNkZWZpbmUgTlVEX0ZBSUxFRCAweDIwCiAjZGVmaW5lIE5VRF9OT0FSUCAweDQwCiAjZGVmaW5lIE5VRF9QRVJNQU5FTlQgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlVEX05PTkUgMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZGFfY2FjaGVpbmZvIHsKLSBfX3UzMiBuZG1fY29uZmlybWVkOwotIF9fdTMyIG5kbV91c2VkOwotIF9fdTMyIG5kbV91cGRhdGVkOworICBfX3UzMiBuZG1fY29uZmlybWVkOworICBfX3UzMiBuZG1fdXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmRtX3JlZmNudDsKKyAgX191MzIgbmRtX3VwZGF0ZWQ7CisgIF9fdTMyIG5kbV9yZWZjbnQ7CiB9Owogc3RydWN0IG5kdF9zdGF0cyB7Ci0gX191NjQgbmR0c19hbGxvY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG5kdHNfZGVzdHJveXM7Ci0gX191NjQgbmR0c19oYXNoX2dyb3dzOwotIF9fdTY0IG5kdHNfcmVzX2ZhaWxlZDsKLSBfX3U2NCBuZHRzX2xvb2t1cHM7CisgIF9fdTY0IG5kdHNfYWxsb2NzOworICBfX3U2NCBuZHRzX2Rlc3Ryb3lzOworICBfX3U2NCBuZHRzX2hhc2hfZ3Jvd3M7CisgIF9fdTY0IG5kdHNfcmVzX2ZhaWxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbmR0c19oaXRzOwotIF9fdTY0IG5kdHNfcmN2X3Byb2Jlc19tY2FzdDsKLSBfX3U2NCBuZHRzX3Jjdl9wcm9iZXNfdWNhc3Q7Ci0gX191NjQgbmR0c19wZXJpb2RpY19nY19ydW5zOworICBfX3U2NCBuZHRzX2xvb2t1cHM7CisgIF9fdTY0IG5kdHNfaGl0czsKKyAgX191NjQgbmR0c19yY3ZfcHJvYmVzX21jYXN0OworICBfX3U2NCBuZHRzX3Jjdl9wcm9iZXNfdWNhc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG5kdHNfZm9yY2VkX2djX3J1bnM7CisgIF9fdTY0IG5kdHNfcGVyaW9kaWNfZ2NfcnVuczsKKyAgX191NjQgbmR0c19mb3JjZWRfZ2NfcnVuczsKIH07CiBlbnVtIHsKLSBORFRQQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVFBBX0lGSU5ERVgsCi0gTkRUUEFfUkVGQ05ULAotIE5EVFBBX1JFQUNIQUJMRV9USU1FLAotIE5EVFBBX0JBU0VfUkVBQ0hBQkxFX1RJTUUsCisgIE5EVFBBX1VOU1BFQywKKyAgTkRUUEFfSUZJTkRFWCwKKyAgTkRUUEFfUkVGQ05ULAorICBORFRQQV9SRUFDSEFCTEVfVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUUEFfUkVUUkFOU19USU1FLAotIE5EVFBBX0dDX1NUQUxFVElNRSwKLSBORFRQQV9ERUxBWV9QUk9CRV9USU1FLAotIE5EVFBBX1FVRVVFX0xFTiwKKyAgTkRUUEFfQkFTRV9SRUFDSEFCTEVfVElNRSwKKyAgTkRUUEFfUkVUUkFOU19USU1FLAorICBORFRQQV9HQ19TVEFMRVRJTUUsCisgIE5EVFBBX0RFTEFZX1BST0JFX1RJTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVFBBX0FQUF9QUk9CRVMsCi0gTkRUUEFfVUNBU1RfUFJPQkVTLAotIE5EVFBBX01DQVNUX1BST0JFUywKLSBORFRQQV9BTllDQVNUX0RFTEFZLAorICBORFRQQV9RVUVVRV9MRU4sCisgIE5EVFBBX0FQUF9QUk9CRVMsCisgIE5EVFBBX1VDQVNUX1BST0JFUywKKyAgTkRUUEFfTUNBU1RfUFJPQkVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORFRQQV9QUk9YWV9ERUxBWSwKLSBORFRQQV9QUk9YWV9RTEVOLAotIE5EVFBBX0xPQ0tUSU1FLAotIE5EVFBBX1FVRVVFX0xFTkJZVEVTLAorICBORFRQQV9BTllDQVNUX0RFTEFZLAorICBORFRQQV9QUk9YWV9ERUxBWSwKKyAgTkRUUEFfUFJPWFlfUUxFTiwKKyAgTkRUUEFfTE9DS1RJTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkRUUEFfTUFYCisgIE5EVFBBX1FVRVVFX0xFTkJZVEVTLAorICBfX05EVFBBX01BWAogfTsKICNkZWZpbmUgTkRUUEFfTUFYIChfX05EVFBBX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5kdG1zZyB7CisgIF9fdTggbmR0bV9mYW1pbHk7CisgIF9fdTggbmR0bV9wYWQxOworICBfX3UxNiBuZHRtX3BhZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmR0bV9mYW1pbHk7Ci0gX191OCBuZHRtX3BhZDE7Ci0gX191MTYgbmR0bV9wYWQyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmR0X2NvbmZpZyB7Ci0gX191MTYgbmR0Y19rZXlfbGVuOwotIF9fdTE2IG5kdGNfZW50cnlfc2l6ZTsKLSBfX3UzMiBuZHRjX2VudHJpZXM7CisgIF9fdTE2IG5kdGNfa2V5X2xlbjsKKyAgX191MTYgbmR0Y19lbnRyeV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZHRjX2xhc3RfZmx1c2g7Ci0gX191MzIgbmR0Y19sYXN0X3JhbmQ7Ci0gX191MzIgbmR0Y19oYXNoX3JuZDsKLSBfX3UzMiBuZHRjX2hhc2hfbWFzazsKKyAgX191MzIgbmR0Y19lbnRyaWVzOworICBfX3UzMiBuZHRjX2xhc3RfZmx1c2g7CisgIF9fdTMyIG5kdGNfbGFzdF9yYW5kOworICBfX3UzMiBuZHRjX2hhc2hfcm5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZHRjX2hhc2hfY2hhaW5fZ2M7Ci0gX191MzIgbmR0Y19wcm94eV9xbGVuOworICBfX3UzMiBuZHRjX2hhc2hfbWFzazsKKyAgX191MzIgbmR0Y19oYXNoX2NoYWluX2djOworICBfX3UzMiBuZHRjX3Byb3h5X3FsZW47CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBORFRBX1VOU1BFQywKKyAgTkRUQV9OQU1FLAorICBORFRBX1RIUkVTSDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVEFfVU5TUEVDLAotIE5EVEFfTkFNRSwKLSBORFRBX1RIUkVTSDEsCi0gTkRUQV9USFJFU0gyLAorICBORFRBX1RIUkVTSDIsCisgIE5EVEFfVEhSRVNIMywKKyAgTkRUQV9DT05GSUcsCisgIE5EVEFfUEFSTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVEFfVEhSRVNIMywKLSBORFRBX0NPTkZJRywKLSBORFRBX1BBUk1TLAotIE5EVEFfU1RBVFMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVEFfR0NfSU5URVJWQUwsCi0gX19ORFRBX01BWAorICBORFRBX1NUQVRTLAorICBORFRBX0dDX0lOVEVSVkFMLAorICBfX05EVEFfTUFYCiB9OwotI2RlZmluZSBORFRBX01BWCAoX19ORFRBX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORFRBX01BWCAoX19ORFRBX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldC5oCmluZGV4IDBkYzE0ODEuLjBlZmI2OGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXQuaApAQCAtNDgsMTIgKzQ4LDEyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWVNfU0VORE1NU0cgMjAKIHR5cGVkZWYgZW51bSB7Ci0gU1NfRlJFRSA9IDAsCi0gU1NfVU5DT05ORUNURUQsCisgIFNTX0ZSRUUgPSAwLAorICBTU19VTkNPTk5FQ1RFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1NfQ09OTkVDVElORywKLSBTU19DT05ORUNURUQsCi0gU1NfRElTQ09OTkVDVElORworICBTU19DT05ORUNUSU5HLAorICBTU19DT05ORUNURUQsCisgIFNTX0RJU0NPTk5FQ1RJTkcKIH0gc29ja2V0X3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19TT19BQ0NFUFRDT04gKDEgPDwgMTYpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldF9kcm9wbW9uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldF9kcm9wbW9uLmgKaW5kZXggYWYwYjk3Ni4uYWVmMTgxMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRfZHJvcG1vbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X2Ryb3Btb24uaApAQCAtMjIsNDcgKzIyLDQ4IEBACiAjaW5jbHVkZSA8bGludXgvbmV0bGluay5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZXRfZG1fZHJvcF9wb2ludCB7Ci0gX191OCBwY1s4XTsKLSBfX3UzMiBjb3VudDsKKyAgX191OCBwY1s4XTsKKyAgX191MzIgY291bnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgaXNfZHJvcF9wb2ludF9odyh4KSBkbyB7ICBpbnQgX19fX2ksIF9fX19qOyAgZm9yIChfX19faSA9IDA7IF9fX19pIDwgODsgaSBfX19faSsrKSAgX19fX2ogfD0geFtfX19faV07ICBfX19fajsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgaXNfZHJvcF9wb2ludF9odyh4KSBkbyB7IGludCBfX19faSwgX19fX2o7IGZvcihfX19faSA9IDA7IF9fX19pIDwgODsgaSBfX19faSArKykgX19fX2ogfD0geFtfX19faV07IF9fX19qOyBcCit9IHdoaWxlKDApCiAjZGVmaW5lIE5FVF9ETV9DRkdfVkVSU0lPTiAwCiAjZGVmaW5lIE5FVF9ETV9DRkdfQUxFUlRfQ09VTlQgMQogI2RlZmluZSBORVRfRE1fQ0ZHX0FMRVJUX0RFTEFZIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5FVF9ETV9DRkdfTUFYIDMKIHN0cnVjdCBuZXRfZG1fY29uZmlnX2VudHJ5IHsKLSBfX3UzMiB0eXBlOwotIF9fdTY0IGRhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3UzMiB0eXBlOworICBfX3U2NCBkYXRhIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5ldF9kbV9jb25maWdfbXNnIHsKLSBfX3UzMiBlbnRyaWVzOwotIHN0cnVjdCBuZXRfZG1fY29uZmlnX2VudHJ5IG9wdGlvbnNbMF07CisgIF9fdTMyIGVudHJpZXM7CisgIHN0cnVjdCBuZXRfZG1fY29uZmlnX2VudHJ5IG9wdGlvbnNbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuZXRfZG1fYWxlcnRfbXNnIHsKLSBfX3UzMiBlbnRyaWVzOwotIHN0cnVjdCBuZXRfZG1fZHJvcF9wb2ludCBwb2ludHNbMF07CisgIF9fdTMyIGVudHJpZXM7CisgIHN0cnVjdCBuZXRfZG1fZHJvcF9wb2ludCBwb2ludHNbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuZXRfZG1fdXNlcl9tc2cgewotIHVuaW9uIHsKLSBzdHJ1Y3QgbmV0X2RtX2NvbmZpZ19tc2cgdXNlcjsKKyAgdW5pb24geworICAgIHN0cnVjdCBuZXRfZG1fY29uZmlnX21zZyB1c2VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbmV0X2RtX2FsZXJ0X21zZyBhbGVydDsKLSB9IHU7CisgICAgc3RydWN0IG5ldF9kbV9hbGVydF9tc2cgYWxlcnQ7CisgIH0gdTsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RNX0NNRF9VTlNQRUMgPSAwLAotIE5FVF9ETV9DTURfQUxFUlQsCi0gTkVUX0RNX0NNRF9DT05GSUcsCi0gTkVUX0RNX0NNRF9TVEFSVCwKKyAgTkVUX0RNX0NNRF9VTlNQRUMgPSAwLAorICBORVRfRE1fQ01EX0FMRVJULAorICBORVRfRE1fQ01EX0NPTkZJRywKKyAgTkVUX0RNX0NNRF9TVEFSVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RNX0NNRF9TVE9QLAotIF9ORVRfRE1fQ01EX01BWCwKKyAgTkVUX0RNX0NNRF9TVE9QLAorICBfTkVUX0RNX0NNRF9NQVgsCiB9OwogI2RlZmluZSBORVRfRE1fQ01EX01BWCAoX05FVF9ETV9DTURfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldF90c3RhbXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X3RzdGFtcC5oCmluZGV4IDFlOWZmZDcuLjVkZmQyYWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X3RzdGFtcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X3RzdGFtcC5oCkBAIC0yMSw1MSArMjEsNTQgQEAKICNpbmNsdWRlIDxsaW51eC9zb2NrZXQuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTT0ZfVElNRVNUQU1QSU5HX1RYX0hBUkRXQVJFID0gKDE8PDApLAotIFNPRl9USU1FU1RBTVBJTkdfVFhfU09GVFdBUkUgPSAoMTw8MSksCi0gU09GX1RJTUVTVEFNUElOR19SWF9IQVJEV0FSRSA9ICgxPDwyKSwKLSBTT0ZfVElNRVNUQU1QSU5HX1JYX1NPRlRXQVJFID0gKDE8PDMpLAorICBTT0ZfVElNRVNUQU1QSU5HX1RYX0hBUkRXQVJFID0gKDEgPDwgMCksCisgIFNPRl9USU1FU1RBTVBJTkdfVFhfU09GVFdBUkUgPSAoMSA8PCAxKSwKKyAgU09GX1RJTUVTVEFNUElOR19SWF9IQVJEV0FSRSA9ICgxIDw8IDIpLAorICBTT0ZfVElNRVNUQU1QSU5HX1JYX1NPRlRXQVJFID0gKDEgPDwgMyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNPRl9USU1FU1RBTVBJTkdfU09GVFdBUkUgPSAoMTw8NCksCi0gU09GX1RJTUVTVEFNUElOR19TWVNfSEFSRFdBUkUgPSAoMTw8NSksCi0gU09GX1RJTUVTVEFNUElOR19SQVdfSEFSRFdBUkUgPSAoMTw8NiksCi0gU09GX1RJTUVTVEFNUElOR19NQVNLID0KKyAgU09GX1RJTUVTVEFNUElOR19TT0ZUV0FSRSA9ICgxIDw8IDQpLAorICBTT0ZfVElNRVNUQU1QSU5HX1NZU19IQVJEV0FSRSA9ICgxIDw8IDUpLAorICBTT0ZfVElNRVNUQU1QSU5HX1JBV19IQVJEV0FSRSA9ICgxIDw8IDYpLAorICBTT0ZfVElNRVNUQU1QSU5HX09QVF9JRCA9ICgxIDw8IDcpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSAoU09GX1RJTUVTVEFNUElOR19SQVdfSEFSRFdBUkUgLSAxKSB8Ci0gU09GX1RJTUVTVEFNUElOR19SQVdfSEFSRFdBUkUKKyAgU09GX1RJTUVTVEFNUElOR19UWF9TQ0hFRCA9ICgxIDw8IDgpLAorICBTT0ZfVElNRVNUQU1QSU5HX1RYX0FDSyA9ICgxIDw8IDkpLAorICBTT0ZfVElNRVNUQU1QSU5HX0xBU1QgPSBTT0ZfVElNRVNUQU1QSU5HX1RYX0FDSywKKyAgU09GX1RJTUVTVEFNUElOR19NQVNLID0gKFNPRl9USU1FU1RBTVBJTkdfTEFTVCAtIDEpIHwgU09GX1RJTUVTVEFNUElOR19MQVNUCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBod3RzdGFtcF9jb25maWcgeworICBpbnQgZmxhZ3M7CisgIGludCB0eF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmxhZ3M7Ci0gaW50IHR4X3R5cGU7Ci0gaW50IHJ4X2ZpbHRlcjsKKyAgaW50IHJ4X2ZpbHRlcjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBod3RzdGFtcF90eF90eXBlcyB7Ci0gSFdUU1RBTVBfVFhfT0ZGLAotIEhXVFNUQU1QX1RYX09OLAotIEhXVFNUQU1QX1RYX09ORVNURVBfU1lOQywKKyAgSFdUU1RBTVBfVFhfT0ZGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSFdUU1RBTVBfVFhfT04sCisgIEhXVFNUQU1QX1RYX09ORVNURVBfU1lOQywKIH07CiBlbnVtIGh3dHN0YW1wX3J4X2ZpbHRlcnMgewotIEhXVFNUQU1QX0ZJTFRFUl9OT05FLAotIEhXVFNUQU1QX0ZJTFRFUl9BTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhXVFNUQU1QX0ZJTFRFUl9TT01FLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjFfTDRfRVZFTlQsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9TWU5DLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjFfTDRfREVMQVlfUkVRLAorICBIV1RTVEFNUF9GSUxURVJfTk9ORSwKKyAgSFdUU1RBTVBfRklMVEVSX0FMTCwKKyAgSFdUU1RBTVBfRklMVEVSX1NPTUUsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjFfTDRfRVZFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDRfRVZFTlQsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MNF9TWU5DLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDRfREVMQVlfUkVRLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDJfRVZFTlQsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjFfTDRfU1lOQywKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9ERUxBWV9SRVEsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDRfRVZFTlQsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDRfU1lOQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MMl9TWU5DLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDJfREVMQVlfUkVRLAotIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfRVZFTlQsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9TWU5DLAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0w0X0RFTEFZX1JFUSwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MMl9FVkVOVCwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MMl9TWU5DLAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0wyX0RFTEFZX1JFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9ERUxBWV9SRVEsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfRVZFTlQsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfU1lOQywKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9ERUxBWV9SRVEsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRjb25mLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGNvbmYuaAppbmRleCAyYmYwOWQxLi5hOWJmMjE2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGNvbmYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGNvbmYuaApAQCAtMjIsMjIgKzIyLDIyIEBACiAjaW5jbHVkZSA8bGludXgvbmV0bGluay5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZXRjb25mbXNnIHsKLSBfX3U4IG5jbV9mYW1pbHk7CisgIF9fdTggbmNtX2ZhbWlseTsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUQ09ORkFfVU5TUEVDLAotIE5FVENPTkZBX0lGSU5ERVgsCi0gTkVUQ09ORkFfRk9SV0FSRElORywKLSBORVRDT05GQV9SUF9GSUxURVIsCisgIE5FVENPTkZBX1VOU1BFQywKKyAgTkVUQ09ORkFfSUZJTkRFWCwKKyAgTkVUQ09ORkFfRk9SV0FSRElORywKKyAgTkVUQ09ORkFfUlBfRklMVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRDT05GQV9NQ19GT1JXQVJESU5HLAotIE5FVENPTkZBX1BST1hZX05FSUdILAotIF9fTkVUQ09ORkFfTUFYCisgIE5FVENPTkZBX01DX0ZPUldBUkRJTkcsCisgIE5FVENPTkZBX1BST1hZX05FSUdILAorICBfX05FVENPTkZBX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5FVENPTkZBX01BWCAoX19ORVRDT05GQV9NQVggLSAxKQotI2RlZmluZSBORVRDT05GQV9JRklOREVYX0FMTCAtMQotI2RlZmluZSBORVRDT05GQV9JRklOREVYX0RFRkFVTFQgLTIKKyNkZWZpbmUgTkVUQ09ORkFfSUZJTkRFWF9BTEwgLSAxCisjZGVmaW5lIE5FVENPTkZBX0lGSU5ERVhfREVGQVVMVCAtIDIKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZGV2aWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGRldmljZS5oCmluZGV4IGYyNDcyZmMuLjViMzBhYjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZGV2aWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRkZXZpY2UuaApAQCAtMjYsMTUgKzI2LDI2IEBACiAjZGVmaW5lIE1BWF9BRERSX0xFTiAzMgogI2RlZmluZSBJTklUX05FVERFVl9HUk9VUCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORVRfTkFNRV9VTktOT1dOIDAKKyNkZWZpbmUgTkVUX05BTUVfRU5VTSAxCisjZGVmaW5lIE5FVF9OQU1FX1BSRURJQ1RBQkxFIDIKKyNkZWZpbmUgTkVUX05BTUVfVVNFUiAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORVRfTkFNRV9SRU5BTUVEIDQKIGVudW0gewotIElGX1BPUlRfVU5LTk9XTiA9IDAsCi0gSUZfUE9SVF8xMEJBU0UyLAotIElGX1BPUlRfMTBCQVNFVCwKKyAgSUZfUE9SVF9VTktOT1dOID0gMCwKKyAgSUZfUE9SVF8xMEJBU0UyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRl9QT1JUX0FVSSwKLSBJRl9QT1JUXzEwMEJBU0VULAotIElGX1BPUlRfMTAwQkFTRVRYLAotIElGX1BPUlRfMTAwQkFTRUZYCisgIElGX1BPUlRfMTBCQVNFVCwKKyAgSUZfUE9SVF9BVUksCisgIElGX1BPUlRfMTAwQkFTRVQsCisgIElGX1BPUlRfMTAwQkFTRVRYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZfUE9SVF8xMDBCQVNFRlgKIH07CisjZGVmaW5lIE5FVF9BRERSX1BFUk0gMAorI2RlZmluZSBORVRfQUREUl9SQU5ET00gMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkVUX0FERFJfU1RPTEVOIDIKKyNkZWZpbmUgTkVUX0FERFJfU0VUIDMKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyLmgKaW5kZXggNzgwNDMyMS4uYjA0ZGFhNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci5oCkBAIC0zNyw0MCArMzcsNDAgQEAKICNkZWZpbmUgTkZfVkVSRElDVF9RQklUUyAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZfUVVFVUVfTlIoeCkgKCgoKHgpIDw8IDE2KSAmIE5GX1ZFUkRJQ1RfUU1BU0spIHwgTkZfUVVFVUUpCi0jZGVmaW5lIE5GX0RST1BfRVJSKHgpICgoKC14KSA8PCAxNikgfCBORl9EUk9QKQorI2RlZmluZSBORl9EUk9QX0VSUih4KSAoKCgtIHgpIDw8IDE2KSB8IE5GX0RST1ApCiAjZGVmaW5lIE5GQ19VTktOT1dOIDB4NDAwMAogI2RlZmluZSBORkNfQUxURVJFRCAweDgwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GX1ZFUkRJQ1RfQklUUyAxNgogZW51bSBuZl9pbmV0X2hvb2tzIHsKLSBORl9JTkVUX1BSRV9ST1VUSU5HLAotIE5GX0lORVRfTE9DQUxfSU4sCisgIE5GX0lORVRfUFJFX1JPVVRJTkcsCisgIE5GX0lORVRfTE9DQUxfSU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lORVRfRk9SV0FSRCwKLSBORl9JTkVUX0xPQ0FMX09VVCwKLSBORl9JTkVUX1BPU1RfUk9VVElORywKLSBORl9JTkVUX05VTUhPT0tTCisgIE5GX0lORVRfRk9SV0FSRCwKKyAgTkZfSU5FVF9MT0NBTF9PVVQsCisgIE5GX0lORVRfUE9TVF9ST1VUSU5HLAorICBORl9JTkVUX05VTUhPT0tTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIE5GUFJPVE9fVU5TUEVDID0gMCwKLSBORlBST1RPX0lORVQgPSAxLAorICBORlBST1RPX1VOU1BFQyA9IDAsCisgIE5GUFJPVE9fSU5FVCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUFJPVE9fSVBWNCA9IDIsCi0gTkZQUk9UT19BUlAgPSAzLAotIE5GUFJPVE9fQlJJREdFID0gNywKLSBORlBST1RPX0lQVjYgPSAxMCwKKyAgTkZQUk9UT19JUFY0ID0gMiwKKyAgTkZQUk9UT19BUlAgPSAzLAorICBORlBST1RPX0JSSURHRSA9IDcsCisgIE5GUFJPVE9fSVBWNiA9IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlBST1RPX0RFQ05FVCA9IDEyLAotIE5GUFJPVE9fTlVNUFJPVE8sCisgIE5GUFJPVE9fREVDTkVUID0gMTIsCisgIE5GUFJPVE9fTlVNUFJPVE8sCiB9OwogdW5pb24gbmZfaW5ldF9hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWxsWzRdOwotIF9fYmUzMiBpcDsKLSBfX2JlMzIgaXA2WzRdOwotIHN0cnVjdCBpbl9hZGRyIGluOworICBfX3UzMiBhbGxbNF07CisgIF9fYmUzMiBpcDsKKyAgX19iZTMyIGlwNls0XTsKKyAgc3RydWN0IGluX2FkZHIgaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbjZfYWRkciBpbjY7CisgIHN0cnVjdCBpbjZfYWRkciBpbjY7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldC5oCmluZGV4IGQ4NWM4NWIuLjgyMTBhNzQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldC5oCkBAIC0yNCwyNTEgKzI0LDI3NiBAQAogI2RlZmluZSBJUFNFVF9NQVhfQ09NTUVOVF9TSVpFIDI1NQogI2RlZmluZSBJUFNFVF9NQVhOQU1FTEVOIDMyCiBlbnVtIGlwc2V0X2NtZCB7Ci0gSVBTRVRfQ01EX05PTkUsCisgIElQU0VUX0NNRF9OT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9DTURfUFJPVE9DT0wsCi0gSVBTRVRfQ01EX0NSRUFURSwKLSBJUFNFVF9DTURfREVTVFJPWSwKLSBJUFNFVF9DTURfRkxVU0gsCisgIElQU0VUX0NNRF9QUk9UT0NPTCwKKyAgSVBTRVRfQ01EX0NSRUFURSwKKyAgSVBTRVRfQ01EX0RFU1RST1ksCisgIElQU0VUX0NNRF9GTFVTSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQ01EX1JFTkFNRSwKLSBJUFNFVF9DTURfU1dBUCwKLSBJUFNFVF9DTURfTElTVCwKLSBJUFNFVF9DTURfU0FWRSwKKyAgSVBTRVRfQ01EX1JFTkFNRSwKKyAgSVBTRVRfQ01EX1NXQVAsCisgIElQU0VUX0NNRF9MSVNULAorICBJUFNFVF9DTURfU0FWRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQ01EX0FERCwKLSBJUFNFVF9DTURfREVMLAotIElQU0VUX0NNRF9URVNULAotIElQU0VUX0NNRF9IRUFERVIsCisgIElQU0VUX0NNRF9BREQsCisgIElQU0VUX0NNRF9ERUwsCisgIElQU0VUX0NNRF9URVNULAorICBJUFNFVF9DTURfSEVBREVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9DTURfVFlQRSwKLSBJUFNFVF9NU0dfTUFYLAotIElQU0VUX0NNRF9SRVNUT1JFID0gSVBTRVRfTVNHX01BWCwKLSBJUFNFVF9DTURfSEVMUCwKKyAgSVBTRVRfQ01EX1RZUEUsCisgIElQU0VUX01TR19NQVgsCisgIElQU0VUX0NNRF9SRVNUT1JFID0gSVBTRVRfTVNHX01BWCwKKyAgSVBTRVRfQ01EX0hFTFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0NNRF9WRVJTSU9OLAotIElQU0VUX0NNRF9RVUlULAotIElQU0VUX0NNRF9NQVgsCi0gSVBTRVRfQ01EX0NPTU1JVCA9IElQU0VUX0NNRF9NQVgsCisgIElQU0VUX0NNRF9WRVJTSU9OLAorICBJUFNFVF9DTURfUVVJVCwKKyAgSVBTRVRfQ01EX01BWCwKKyAgSVBTRVRfQ01EX0NPTU1JVCA9IElQU0VUX0NNRF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIElQU0VUX0FUVFJfVU5TUEVDLAotIElQU0VUX0FUVFJfUFJPVE9DT0wsCisgIElQU0VUX0FUVFJfVU5TUEVDLAorICBJUFNFVF9BVFRSX1BST1RPQ09MLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX1NFVE5BTUUsCi0gSVBTRVRfQVRUUl9UWVBFTkFNRSwKLSBJUFNFVF9BVFRSX1NFVE5BTUUyID0gSVBTRVRfQVRUUl9UWVBFTkFNRSwKLSBJUFNFVF9BVFRSX1JFVklTSU9OLAorICBJUFNFVF9BVFRSX1NFVE5BTUUsCisgIElQU0VUX0FUVFJfVFlQRU5BTUUsCisgIElQU0VUX0FUVFJfU0VUTkFNRTIgPSBJUFNFVF9BVFRSX1RZUEVOQU1FLAorICBJUFNFVF9BVFRSX1JFVklTSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX0ZBTUlMWSwKLSBJUFNFVF9BVFRSX0ZMQUdTLAotIElQU0VUX0FUVFJfREFUQSwKLSBJUFNFVF9BVFRSX0FEVCwKKyAgSVBTRVRfQVRUUl9GQU1JTFksCisgIElQU0VUX0FUVFJfRkxBR1MsCisgIElQU0VUX0FUVFJfREFUQSwKKyAgSVBTRVRfQVRUUl9BRFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfTElORU5PLAotIElQU0VUX0FUVFJfUFJPVE9DT0xfTUlOLAotIElQU0VUX0FUVFJfUkVWSVNJT05fTUlOID0gSVBTRVRfQVRUUl9QUk9UT0NPTF9NSU4sCi0gX19JUFNFVF9BVFRSX0NNRF9NQVgsCisgIElQU0VUX0FUVFJfTElORU5PLAorICBJUFNFVF9BVFRSX1BST1RPQ09MX01JTiwKKyAgSVBTRVRfQVRUUl9SRVZJU0lPTl9NSU4gPSBJUFNFVF9BVFRSX1BST1RPQ09MX01JTiwKKyAgX19JUFNFVF9BVFRSX0NNRF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBTRVRfQVRUUl9DTURfTUFYIChfX0lQU0VUX0FUVFJfQ01EX01BWCAtIDEpCiBlbnVtIHsKLSBJUFNFVF9BVFRSX0lQID0gSVBTRVRfQVRUUl9VTlNQRUMgKyAxLAorICBJUFNFVF9BVFRSX0lQID0gSVBTRVRfQVRUUl9VTlNQRUMgKyAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX0lQX0ZST00gPSBJUFNFVF9BVFRSX0lQLAotIElQU0VUX0FUVFJfSVBfVE8sCi0gSVBTRVRfQVRUUl9DSURSLAotIElQU0VUX0FUVFJfUE9SVCwKKyAgSVBTRVRfQVRUUl9JUF9GUk9NID0gSVBTRVRfQVRUUl9JUCwKKyAgSVBTRVRfQVRUUl9JUF9UTywKKyAgSVBTRVRfQVRUUl9DSURSLAorICBJUFNFVF9BVFRSX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfUE9SVF9GUk9NID0gSVBTRVRfQVRUUl9QT1JULAotIElQU0VUX0FUVFJfUE9SVF9UTywKLSBJUFNFVF9BVFRSX1RJTUVPVVQsCi0gSVBTRVRfQVRUUl9QUk9UTywKKyAgSVBTRVRfQVRUUl9QT1JUX0ZST00gPSBJUFNFVF9BVFRSX1BPUlQsCisgIElQU0VUX0FUVFJfUE9SVF9UTywKKyAgSVBTRVRfQVRUUl9USU1FT1VULAorICBJUFNFVF9BVFRSX1BST1RPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX0NBRFRfRkxBR1MsCi0gSVBTRVRfQVRUUl9DQURUX0xJTkVOTyA9IElQU0VUX0FUVFJfTElORU5PLAotIElQU0VUX0FUVFJfQ0FEVF9NQVggPSAxNiwKLSBJUFNFVF9BVFRSX0dDLAorICBJUFNFVF9BVFRSX0NBRFRfRkxBR1MsCisgIElQU0VUX0FUVFJfQ0FEVF9MSU5FTk8gPSBJUFNFVF9BVFRSX0xJTkVOTywKKyAgSVBTRVRfQVRUUl9NQVJLLAorICBJUFNFVF9BVFRSX01BUktNQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX0hBU0hTSVpFLAotIElQU0VUX0FUVFJfTUFYRUxFTSwKLSBJUFNFVF9BVFRSX05FVE1BU0ssCi0gSVBTRVRfQVRUUl9QUk9CRVMsCisgIElQU0VUX0FUVFJfQ0FEVF9NQVggPSAxNiwKKyAgSVBTRVRfQVRUUl9HQywKKyAgSVBTRVRfQVRUUl9IQVNIU0laRSwKKyAgSVBTRVRfQVRUUl9NQVhFTEVNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX1JFU0laRSwKLSBJUFNFVF9BVFRSX1NJWkUsCi0gSVBTRVRfQVRUUl9FTEVNRU5UUywKLSBJUFNFVF9BVFRSX1JFRkVSRU5DRVMsCisgIElQU0VUX0FUVFJfTkVUTUFTSywKKyAgSVBTRVRfQVRUUl9QUk9CRVMsCisgIElQU0VUX0FUVFJfUkVTSVpFLAorICBJUFNFVF9BVFRSX1NJWkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfTUVNU0laRSwKLSBfX0lQU0VUX0FUVFJfQ1JFQVRFX01BWCwKKyAgSVBTRVRfQVRUUl9FTEVNRU5UUywKKyAgSVBTRVRfQVRUUl9SRUZFUkVOQ0VTLAorICBJUFNFVF9BVFRSX01FTVNJWkUsCisgIF9fSVBTRVRfQVRUUl9DUkVBVEVfTUFYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElQU0VUX0FUVFJfQ1JFQVRFX01BWCAoX19JUFNFVF9BVFRSX0NSRUFURV9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElQU0VUX0FUVFJfRVRIRVIgPSBJUFNFVF9BVFRSX0NBRFRfTUFYICsgMSwKLSBJUFNFVF9BVFRSX05BTUUsCi0gSVBTRVRfQVRUUl9OQU1FUkVGLAorICBJUFNFVF9BVFRSX0VUSEVSID0gSVBTRVRfQVRUUl9DQURUX01BWCArIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfSVAyLAotIElQU0VUX0FUVFJfQ0lEUjIsCi0gSVBTRVRfQVRUUl9JUDJfVE8sCi0gSVBTRVRfQVRUUl9JRkFDRSwKKyAgSVBTRVRfQVRUUl9OQU1FLAorICBJUFNFVF9BVFRSX05BTUVSRUYsCisgIElQU0VUX0FUVFJfSVAyLAorICBJUFNFVF9BVFRSX0NJRFIyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BVFRSX0JZVEVTLAotIElQU0VUX0FUVFJfUEFDS0VUUywKLSBJUFNFVF9BVFRSX0NPTU1FTlQsCi0gX19JUFNFVF9BVFRSX0FEVF9NQVgsCisgIElQU0VUX0FUVFJfSVAyX1RPLAorICBJUFNFVF9BVFRSX0lGQUNFLAorICBJUFNFVF9BVFRSX0JZVEVTLAorICBJUFNFVF9BVFRSX1BBQ0tFVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9BVFRSX0NPTU1FTlQsCisgIElQU0VUX0FUVFJfU0tCTUFSSywKKyAgSVBTRVRfQVRUUl9TS0JQUklPLAorICBJUFNFVF9BVFRSX1NLQlFVRVVFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19JUFNFVF9BVFRSX0FEVF9NQVgsCiB9OwogI2RlZmluZSBJUFNFVF9BVFRSX0FEVF9NQVggKF9fSVBTRVRfQVRUUl9BRFRfTUFYIC0gMSkKIGVudW0gewotIElQU0VUX0FUVFJfSVBBRERSX0lQVjQgPSBJUFNFVF9BVFRSX1VOU1BFQyArIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfSVBBRERSX0lQVjYsCi0gX19JUFNFVF9BVFRSX0lQQUREUl9NQVgsCisgIElQU0VUX0FUVFJfSVBBRERSX0lQVjQgPSBJUFNFVF9BVFRSX1VOU1BFQyArIDEsCisgIElQU0VUX0FUVFJfSVBBRERSX0lQVjYsCisgIF9fSVBTRVRfQVRUUl9JUEFERFJfTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQU0VUX0FUVFJfSVBBRERSX01BWCAoX19JUFNFVF9BVFRSX0lQQUREUl9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gaXBzZXRfZXJybm8gewotIElQU0VUX0VSUl9QUklWQVRFID0gNDA5NiwKLSBJUFNFVF9FUlJfUFJPVE9DT0wsCi0gSVBTRVRfRVJSX0ZJTkRfVFlQRSwKKyAgSVBTRVRfRVJSX1BSSVZBVEUgPSA0MDk2LAorICBJUFNFVF9FUlJfUFJPVE9DT0wsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9NQVhfU0VUUywKLSBJUFNFVF9FUlJfQlVTWSwKLSBJUFNFVF9FUlJfRVhJU1RfU0VUTkFNRTIsCi0gSVBTRVRfRVJSX1RZUEVfTUlTTUFUQ0gsCisgIElQU0VUX0VSUl9GSU5EX1RZUEUsCisgIElQU0VUX0VSUl9NQVhfU0VUUywKKyAgSVBTRVRfRVJSX0JVU1ksCisgIElQU0VUX0VSUl9FWElTVF9TRVROQU1FMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX0VYSVNULAotIElQU0VUX0VSUl9JTlZBTElEX0NJRFIsCi0gSVBTRVRfRVJSX0lOVkFMSURfTkVUTUFTSywKLSBJUFNFVF9FUlJfSU5WQUxJRF9GQU1JTFksCisgIElQU0VUX0VSUl9UWVBFX01JU01BVENILAorICBJUFNFVF9FUlJfRVhJU1QsCisgIElQU0VUX0VSUl9JTlZBTElEX0NJRFIsCisgIElQU0VUX0VSUl9JTlZBTElEX05FVE1BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9USU1FT1VULAotIElQU0VUX0VSUl9SRUZFUkVOQ0VELAotIElQU0VUX0VSUl9JUEFERFJfSVBWNCwKLSBJUFNFVF9FUlJfSVBBRERSX0lQVjYsCisgIElQU0VUX0VSUl9JTlZBTElEX0ZBTUlMWSwKKyAgSVBTRVRfRVJSX1RJTUVPVVQsCisgIElQU0VUX0VSUl9SRUZFUkVOQ0VELAorICBJUFNFVF9FUlJfSVBBRERSX0lQVjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9DT1VOVEVSLAotIElQU0VUX0VSUl9DT01NRU5ULAotIElQU0VUX0VSUl9UWVBFX1NQRUNJRklDID0gNDM1MiwKKyAgSVBTRVRfRVJSX0lQQUREUl9JUFY2LAorICBJUFNFVF9FUlJfQ09VTlRFUiwKKyAgSVBTRVRfRVJSX0NPTU1FTlQsCisgIElQU0VUX0VSUl9JTlZBTElEX01BUktNQVNLLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVBTRVRfRVJSX1NLQklORk8sCisgIElQU0VUX0VSUl9UWVBFX1NQRUNJRklDID0gNDM1MiwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpcHNldF9jbWRfZmxhZ3MgewotIElQU0VUX0ZMQUdfQklUX0VYSVNUID0gMCwKLSBJUFNFVF9GTEFHX0VYSVNUID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfRVhJU1QpLAotIElQU0VUX0ZMQUdfQklUX0xJU1RfU0VUTkFNRSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0ZMQUdfTElTVF9TRVROQU1FID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTElTVF9TRVROQU1FKSwKLSBJUFNFVF9GTEFHX0JJVF9MSVNUX0hFQURFUiA9IDIsCi0gSVBTRVRfRkxBR19MSVNUX0hFQURFUiA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX0xJU1RfSEVBREVSKSwKLSBJUFNFVF9GTEFHX0JJVF9TS0lQX0NPVU5URVJfVVBEQVRFID0gMywKKyAgSVBTRVRfRkxBR19CSVRfRVhJU1QgPSAwLAorICBJUFNFVF9GTEFHX0VYSVNUID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfRVhJU1QpLAorICBJUFNFVF9GTEFHX0JJVF9MSVNUX1NFVE5BTUUgPSAxLAorICBJUFNFVF9GTEFHX0xJU1RfU0VUTkFNRSA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX0xJU1RfU0VUTkFNRSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0ZMQUdfU0tJUF9DT1VOVEVSX1VQREFURSA9Ci0gKDEgPDwgSVBTRVRfRkxBR19CSVRfU0tJUF9DT1VOVEVSX1VQREFURSksCi0gSVBTRVRfRkxBR19CSVRfU0tJUF9TVUJDT1VOVEVSX1VQREFURSA9IDQsCi0gSVBTRVRfRkxBR19TS0lQX1NVQkNPVU5URVJfVVBEQVRFID0KKyAgSVBTRVRfRkxBR19CSVRfTElTVF9IRUFERVIgPSAyLAorICBJUFNFVF9GTEFHX0xJU1RfSEVBREVSID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTElTVF9IRUFERVIpLAorICBJUFNFVF9GTEFHX0JJVF9TS0lQX0NPVU5URVJfVVBEQVRFID0gMywKKyAgSVBTRVRfRkxBR19TS0lQX0NPVU5URVJfVVBEQVRFID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfU0tJUF9DT1VOVEVSX1VQREFURSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotICgxIDw8IElQU0VUX0ZMQUdfQklUX1NLSVBfU1VCQ09VTlRFUl9VUERBVEUpLAotIElQU0VUX0ZMQUdfQklUX01BVENIX0NPVU5URVJTID0gNSwKLSBJUFNFVF9GTEFHX01BVENIX0NPVU5URVJTID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTUFUQ0hfQ09VTlRFUlMpLAotIElQU0VUX0ZMQUdfQklUX1JFVFVSTl9OT01BVENIID0gNywKKyAgSVBTRVRfRkxBR19CSVRfU0tJUF9TVUJDT1VOVEVSX1VQREFURSA9IDQsCisgIElQU0VUX0ZMQUdfU0tJUF9TVUJDT1VOVEVSX1VQREFURSA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1NLSVBfU1VCQ09VTlRFUl9VUERBVEUpLAorICBJUFNFVF9GTEFHX0JJVF9NQVRDSF9DT1VOVEVSUyA9IDUsCisgIElQU0VUX0ZMQUdfTUFUQ0hfQ09VTlRFUlMgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9NQVRDSF9DT1VOVEVSUyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0ZMQUdfUkVUVVJOX05PTUFUQ0ggPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9SRVRVUk5fTk9NQVRDSCksCi0gSVBTRVRfRkxBR19DTURfTUFYID0gMTUsCisgIElQU0VUX0ZMQUdfQklUX1JFVFVSTl9OT01BVENIID0gNywKKyAgSVBTRVRfRkxBR19SRVRVUk5fTk9NQVRDSCA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1JFVFVSTl9OT01BVENIKSwKKyAgSVBTRVRfRkxBR19CSVRfTUFQX1NLQk1BUksgPSA4LAorICBJUFNFVF9GTEFHX01BUF9TS0JNQVJLID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTUFQX1NLQk1BUkspLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVBTRVRfRkxBR19CSVRfTUFQX1NLQlBSSU8gPSA5LAorICBJUFNFVF9GTEFHX01BUF9TS0JQUklPID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTUFQX1NLQlBSSU8pLAorICBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCUVVFVUUgPSAxMCwKKyAgSVBTRVRfRkxBR19NQVBfU0tCUVVFVUUgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCUVVFVUUpLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVBTRVRfRkxBR19DTURfTUFYID0gMTUsCiB9OwogZW51bSBpcHNldF9jYWR0X2ZsYWdzIHsKKyAgSVBTRVRfRkxBR19CSVRfQkVGT1JFID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19CSVRfQkVGT1JFID0gMCwKLSBJUFNFVF9GTEFHX0JFRk9SRSA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX0JFRk9SRSksCi0gSVBTRVRfRkxBR19CSVRfUEhZU0RFViA9IDEsCi0gSVBTRVRfRkxBR19QSFlTREVWID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfUEhZU0RFViksCisgIElQU0VUX0ZMQUdfQkVGT1JFID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfQkVGT1JFKSwKKyAgSVBTRVRfRkxBR19CSVRfUEhZU0RFViA9IDEsCisgIElQU0VUX0ZMQUdfUEhZU0RFViA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1BIWVNERVYpLAorICBJUFNFVF9GTEFHX0JJVF9OT01BVENIID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19CSVRfTk9NQVRDSCA9IDIsCi0gSVBTRVRfRkxBR19OT01BVENIID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTk9NQVRDSCksCi0gSVBTRVRfRkxBR19CSVRfV0lUSF9DT1VOVEVSUyA9IDMsCi0gSVBTRVRfRkxBR19XSVRIX0NPVU5URVJTID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfV0lUSF9DT1VOVEVSUyksCisgIElQU0VUX0ZMQUdfTk9NQVRDSCA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX05PTUFUQ0gpLAorICBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPVU5URVJTID0gMywKKyAgSVBTRVRfRkxBR19XSVRIX0NPVU5URVJTID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfV0lUSF9DT1VOVEVSUyksCisgIElQU0VUX0ZMQUdfQklUX1dJVEhfQ09NTUVOVCA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0ZMQUdfQklUX1dJVEhfQ09NTUVOVCA9IDQsCi0gSVBTRVRfRkxBR19XSVRIX0NPTU1FTlQgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPTU1FTlQpLAotIElQU0VUX0ZMQUdfQ0FEVF9NQVggPSAxNSwKKyAgSVBTRVRfRkxBR19XSVRIX0NPTU1FTlQgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPTU1FTlQpLAorICBJUFNFVF9GTEFHX0JJVF9XSVRIX0ZPUkNFQUREID0gNSwKKyAgSVBTRVRfRkxBR19XSVRIX0ZPUkNFQUREID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfV0lUSF9GT1JDRUFERCksCisgIElQU0VUX0ZMQUdfQklUX1dJVEhfU0tCSU5GTyA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9GTEFHX1dJVEhfU0tCSU5GTyA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1dJVEhfU0tCSU5GTyksCisgIElQU0VUX0ZMQUdfQ0FEVF9NQVggPSAxNSwKK307CitlbnVtIGlwc2V0X2NyZWF0ZV9mbGFncyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9DUkVBVEVfRkxBR19CSVRfRk9SQ0VBREQgPSAwLAorICBJUFNFVF9DUkVBVEVfRkxBR19GT1JDRUFERCA9ICgxIDw8IElQU0VUX0NSRUFURV9GTEFHX0JJVF9GT1JDRUFERCksCisgIElQU0VUX0NSRUFURV9GTEFHX0JJVF9NQVggPSA3LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGlwc2V0X2FkdCB7Ci0gSVBTRVRfQURELAotIElQU0VUX0RFTCwKLSBJUFNFVF9URVNULAorICBJUFNFVF9BREQsCisgIElQU0VUX0RFTCwKKyAgSVBTRVRfVEVTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQURUX01BWCwKLSBJUFNFVF9DUkVBVEUgPSBJUFNFVF9BRFRfTUFYLAotIElQU0VUX0NBRFRfTUFYLAorICBJUFNFVF9BRFRfTUFYLAorICBJUFNFVF9DUkVBVEUgPSBJUFNFVF9BRFRfTUFYLAorICBJUFNFVF9DQURUX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX3UxNiBpcF9zZXRfaWRfdDsKICNkZWZpbmUgSVBTRVRfSU5WQUxJRF9JRCA2NTUzNQogZW51bSBpcF9zZXRfZGltIHsKLSBJUFNFVF9ESU1fWkVSTyA9IDAsCisgIElQU0VUX0RJTV9aRVJPID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRElNX09ORSwKLSBJUFNFVF9ESU1fVFdPLAotIElQU0VUX0RJTV9USFJFRSwKLSBJUFNFVF9ESU1fTUFYID0gNiwKKyAgSVBTRVRfRElNX09ORSwKKyAgSVBTRVRfRElNX1RXTywKKyAgSVBTRVRfRElNX1RIUkVFLAorICBJUFNFVF9ESU1fTUFYID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQklUX1JFVFVSTl9OT01BVENIID0gNywKKyAgSVBTRVRfQklUX1JFVFVSTl9OT01BVENIID0gNywKIH07CiBlbnVtIGlwX3NldF9rb3B0IHsKLSBJUFNFVF9JTlZfTUFUQ0ggPSAoMSA8PCBJUFNFVF9ESU1fWkVSTyksCisgIElQU0VUX0lOVl9NQVRDSCA9ICgxIDw8IElQU0VUX0RJTV9aRVJPKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRElNX09ORV9TUkMgPSAoMSA8PCBJUFNFVF9ESU1fT05FKSwKLSBJUFNFVF9ESU1fVFdPX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9UV08pLAotIElQU0VUX0RJTV9USFJFRV9TUkMgPSAoMSA8PCBJUFNFVF9ESU1fVEhSRUUpLAotIElQU0VUX1JFVFVSTl9OT01BVENIID0gKDEgPDwgSVBTRVRfQklUX1JFVFVSTl9OT01BVENIKSwKKyAgSVBTRVRfRElNX09ORV9TUkMgPSAoMSA8PCBJUFNFVF9ESU1fT05FKSwKKyAgSVBTRVRfRElNX1RXT19TUkMgPSAoMSA8PCBJUFNFVF9ESU1fVFdPKSwKKyAgSVBTRVRfRElNX1RIUkVFX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9USFJFRSksCisgIElQU0VUX1JFVFVSTl9OT01BVENIID0gKDEgPDwgSVBTRVRfQklUX1JFVFVSTl9OT01BVENIKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gSVBTRVRfQ09VTlRFUl9OT05FID0gMCwKLSBJUFNFVF9DT1VOVEVSX0VRLAorICBJUFNFVF9DT1VOVEVSX05PTkUgPSAwLAorICBJUFNFVF9DT1VOVEVSX0VRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9DT1VOVEVSX05FLAotIElQU0VUX0NPVU5URVJfTFQsCi0gSVBTRVRfQ09VTlRFUl9HVCwKKyAgSVBTRVRfQ09VTlRFUl9ORSwKKyAgSVBTRVRfQ09VTlRFUl9MVCwKKyAgSVBTRVRfQ09VTlRFUl9HVCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3NldF9jb3VudGVyX21hdGNoIHsKLSBfX3U4IG9wOwotIF9fdTY0IHZhbHVlOworICBfX3U4IG9wOworICBfX3U2NCB2YWx1ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT19JUF9TRVQgODMKIHVuaW9uIGlwX3NldF9uYW1lX2luZGV4IHsKLSBjaGFyIG5hbWVbSVBTRVRfTUFYTkFNRUxFTl07Ci0gaXBfc2V0X2lkX3QgaW5kZXg7CisgIGNoYXIgbmFtZVtJUFNFVF9NQVhOQU1FTEVOXTsKKyAgaXBfc2V0X2lkX3QgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBfU0VUX09QX0dFVF9CWU5BTUUgMHgwMDAwMDAwNgogc3RydWN0IGlwX3NldF9yZXFfZ2V0X3NldCB7Ci0gdW5zaWduZWQgaW50IG9wOworICB1bnNpZ25lZCBpbnQgb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2ZXJzaW9uOwotIHVuaW9uIGlwX3NldF9uYW1lX2luZGV4IHNldDsKKyAgdW5zaWduZWQgaW50IHZlcnNpb247CisgIHVuaW9uIGlwX3NldF9uYW1lX2luZGV4IHNldDsKIH07CiAjZGVmaW5lIElQX1NFVF9PUF9HRVRfQllJTkRFWCAweDAwMDAwMDA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUF9TRVRfT1BfR0VUX0ZOQU1FIDB4MDAwMDAwMDgKIHN0cnVjdCBpcF9zZXRfcmVxX2dldF9zZXRfZmFtaWx5IHsKLSB1bnNpZ25lZCBpbnQgb3A7Ci0gdW5zaWduZWQgaW50IHZlcnNpb247CisgIHVuc2lnbmVkIGludCBvcDsKKyAgdW5zaWduZWQgaW50IHZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmYW1pbHk7Ci0gdW5pb24gaXBfc2V0X25hbWVfaW5kZXggc2V0OworICB1bnNpZ25lZCBpbnQgZmFtaWx5OworICB1bmlvbiBpcF9zZXRfbmFtZV9pbmRleCBzZXQ7CiB9OwogI2RlZmluZSBJUF9TRVRfT1BfVkVSU0lPTiAweDAwMDAwMTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3NldF9yZXFfdmVyc2lvbiB7Ci0gdW5zaWduZWQgaW50IG9wOwotIHVuc2lnbmVkIGludCB2ZXJzaW9uOworICB1bnNpZ25lZCBpbnQgb3A7CisgIHVuc2lnbmVkIGludCB2ZXJzaW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9iaXRtYXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9iaXRtYXAuaAppbmRleCAwM2EzOTJmLi5lZGNhZTRjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfYml0bWFwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2JpdG1hcC5oCkBAIC0xOSw4ICsxOSw4IEBACiAjaWZuZGVmIF9VQVBJX19JUF9TRVRfQklUTUFQX0gKICNkZWZpbmUgX1VBUElfX0lQX1NFVF9CSVRNQVBfSAogZW51bSB7Ci0gSVBTRVRfRVJSX0JJVE1BUF9SQU5HRSA9IElQU0VUX0VSUl9UWVBFX1NQRUNJRklDLAorICBJUFNFVF9FUlJfQklUTUFQX1JBTkdFID0gSVBTRVRfRVJSX1RZUEVfU1BFQ0lGSUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9CSVRNQVBfUkFOR0VfU0laRSwKKyAgSVBTRVRfRVJSX0JJVE1BUF9SQU5HRV9TSVpFLAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2guaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9oYXNoLmgKaW5kZXggMzRhNDZmOS4uZGQ3NjVmYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2guaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaC5oCkBAIC0xOSwxMyArMTksMTMgQEAKICNpZm5kZWYgX1VBUElfX0lQX1NFVF9IQVNIX0gKICNkZWZpbmUgX1VBUElfX0lQX1NFVF9IQVNIX0gKIGVudW0gewotIElQU0VUX0VSUl9IQVNIX0ZVTEwgPSBJUFNFVF9FUlJfVFlQRV9TUEVDSUZJQywKKyAgSVBTRVRfRVJSX0hBU0hfRlVMTCA9IElQU0VUX0VSUl9UWVBFX1NQRUNJRklDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9FUlJfSEFTSF9FTEVNLAotIElQU0VUX0VSUl9JTlZBTElEX1BST1RPLAotIElQU0VUX0VSUl9NSVNTSU5HX1BST1RPLAotIElQU0VUX0VSUl9IQVNIX1JBTkdFX1VOU1VQUE9SVEVELAorICBJUFNFVF9FUlJfSEFTSF9FTEVNLAorICBJUFNFVF9FUlJfSU5WQUxJRF9QUk9UTywKKyAgSVBTRVRfRVJSX01JU1NJTkdfUFJPVE8sCisgIElQU0VUX0VSUl9IQVNIX1JBTkdFX1VOU1VQUE9SVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9FUlJfSEFTSF9SQU5HRSwKKyAgSVBTRVRfRVJSX0hBU0hfUkFOR0UsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfbGlzdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2xpc3QuaAppbmRleCA4M2EyNmQwLi42MjM1NzRjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfbGlzdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9saXN0LmgKQEAgLTE5LDEzICsxOSwxMyBAQAogI2lmbmRlZiBfVUFQSV9fSVBfU0VUX0xJU1RfSAogI2RlZmluZSBfVUFQSV9fSVBfU0VUX0xJU1RfSAogZW51bSB7Ci0gSVBTRVRfRVJSX05BTUUgPSBJUFNFVF9FUlJfVFlQRV9TUEVDSUZJQywKKyAgSVBTRVRfRVJSX05BTUUgPSBJUFNFVF9FUlJfVFlQRV9TUEVDSUZJQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX0xPT1AsCi0gSVBTRVRfRVJSX0JFRk9SRSwKLSBJUFNFVF9FUlJfTkFNRVJFRiwKLSBJUFNFVF9FUlJfTElTVF9GVUxMLAorICBJUFNFVF9FUlJfTE9PUCwKKyAgSVBTRVRfRVJSX0JFRk9SRSwKKyAgSVBTRVRfRVJSX05BTUVSRUYsCisgIElQU0VUX0VSUl9MSVNUX0ZVTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9SRUZfRVhJU1QsCisgIElQU0VUX0VSUl9SRUZfRVhJU1QsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfY29tbW9uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfY29tbW9uLmgKaW5kZXggMDVlMmQxZi4uNTdjYmI5MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2NvbW1vbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19jb21tb24uaApAQCAtMTksMTYgKzE5LDE2IEBACiAjaWZuZGVmIF9VQVBJX05GX0NPTk5UUkFDS19DT01NT05fSAogI2RlZmluZSBfVUFQSV9ORl9DT05OVFJBQ0tfQ09NTU9OX0gKIGVudW0gaXBfY29ubnRyYWNrX2luZm8gewotIElQX0NUX0VTVEFCTElTSEVELAorICBJUF9DVF9FU1RBQkxJU0hFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBfQ1RfUkVMQVRFRCwKLSBJUF9DVF9ORVcsCi0gSVBfQ1RfSVNfUkVQTFksCi0gSVBfQ1RfRVNUQUJMSVNIRURfUkVQTFkgPSBJUF9DVF9FU1RBQkxJU0hFRCArIElQX0NUX0lTX1JFUExZLAorICBJUF9DVF9SRUxBVEVELAorICBJUF9DVF9ORVcsCisgIElQX0NUX0lTX1JFUExZLAorICBJUF9DVF9FU1RBQkxJU0hFRF9SRVBMWSA9IElQX0NUX0VTVEFCTElTSEVEICsgSVBfQ1RfSVNfUkVQTFksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQX0NUX1JFTEFURURfUkVQTFkgPSBJUF9DVF9SRUxBVEVEICsgSVBfQ1RfSVNfUkVQTFksCi0gSVBfQ1RfTkVXX1JFUExZID0gSVBfQ1RfTkVXICsgSVBfQ1RfSVNfUkVQTFksCi0gSVBfQ1RfTlVNQkVSID0gSVBfQ1RfSVNfUkVQTFkgKiAyIC0gMQorICBJUF9DVF9SRUxBVEVEX1JFUExZID0gSVBfQ1RfUkVMQVRFRCArIElQX0NUX0lTX1JFUExZLAorICBJUF9DVF9ORVdfUkVQTFkgPSBJUF9DVF9ORVcgKyBJUF9DVF9JU19SRVBMWSwKKyAgSVBfQ1RfTlVNQkVSID0gSVBfQ1RfSVNfUkVQTFkgKiAyIC0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GX0NUX1NUQVRFX0lOVkFMSURfQklUICgxIDw8IDApCkBAIC0zNiw2NSArMzYsNjUgQEAKICNkZWZpbmUgTkZfQ1RfU1RBVEVfVU5UUkFDS0VEX0JJVCAoMSA8PCAoSVBfQ1RfTlVNQkVSICsgMSkpCiBlbnVtIGlwX2Nvbm50cmFja19zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfRVhQRUNURURfQklUID0gMCwKLSBJUFNfRVhQRUNURUQgPSAoMSA8PCBJUFNfRVhQRUNURURfQklUKSwKLSBJUFNfU0VFTl9SRVBMWV9CSVQgPSAxLAotIElQU19TRUVOX1JFUExZID0gKDEgPDwgSVBTX1NFRU5fUkVQTFlfQklUKSwKKyAgSVBTX0VYUEVDVEVEX0JJVCA9IDAsCisgIElQU19FWFBFQ1RFRCA9ICgxIDw8IElQU19FWFBFQ1RFRF9CSVQpLAorICBJUFNfU0VFTl9SRVBMWV9CSVQgPSAxLAorICBJUFNfU0VFTl9SRVBMWSA9ICgxIDw8IElQU19TRUVOX1JFUExZX0JJVCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19BU1NVUkVEX0JJVCA9IDIsCi0gSVBTX0FTU1VSRUQgPSAoMSA8PCBJUFNfQVNTVVJFRF9CSVQpLAotIElQU19DT05GSVJNRURfQklUID0gMywKLSBJUFNfQ09ORklSTUVEID0gKDEgPDwgSVBTX0NPTkZJUk1FRF9CSVQpLAorICBJUFNfQVNTVVJFRF9CSVQgPSAyLAorICBJUFNfQVNTVVJFRCA9ICgxIDw8IElQU19BU1NVUkVEX0JJVCksCisgIElQU19DT05GSVJNRURfQklUID0gMywKKyAgSVBTX0NPTkZJUk1FRCA9ICgxIDw8IElQU19DT05GSVJNRURfQklUKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTX1NSQ19OQVRfQklUID0gNCwKLSBJUFNfU1JDX05BVCA9ICgxIDw8IElQU19TUkNfTkFUX0JJVCksCi0gSVBTX0RTVF9OQVRfQklUID0gNSwKLSBJUFNfRFNUX05BVCA9ICgxIDw8IElQU19EU1RfTkFUX0JJVCksCisgIElQU19TUkNfTkFUX0JJVCA9IDQsCisgIElQU19TUkNfTkFUID0gKDEgPDwgSVBTX1NSQ19OQVRfQklUKSwKKyAgSVBTX0RTVF9OQVRfQklUID0gNSwKKyAgSVBTX0RTVF9OQVQgPSAoMSA8PCBJUFNfRFNUX05BVF9CSVQpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfTkFUX01BU0sgPSAoSVBTX0RTVF9OQVQgfCBJUFNfU1JDX05BVCksCi0gSVBTX1NFUV9BREpVU1RfQklUID0gNiwKLSBJUFNfU0VRX0FESlVTVCA9ICgxIDw8IElQU19TRVFfQURKVVNUX0JJVCksCi0gSVBTX1NSQ19OQVRfRE9ORV9CSVQgPSA3LAorICBJUFNfTkFUX01BU0sgPSAoSVBTX0RTVF9OQVQgfCBJUFNfU1JDX05BVCksCisgIElQU19TRVFfQURKVVNUX0JJVCA9IDYsCisgIElQU19TRVFfQURKVVNUID0gKDEgPDwgSVBTX1NFUV9BREpVU1RfQklUKSwKKyAgSVBTX1NSQ19OQVRfRE9ORV9CSVQgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfU1JDX05BVF9ET05FID0gKDEgPDwgSVBTX1NSQ19OQVRfRE9ORV9CSVQpLAotIElQU19EU1RfTkFUX0RPTkVfQklUID0gOCwKLSBJUFNfRFNUX05BVF9ET05FID0gKDEgPDwgSVBTX0RTVF9OQVRfRE9ORV9CSVQpLAotIElQU19OQVRfRE9ORV9NQVNLID0gKElQU19EU1RfTkFUX0RPTkUgfCBJUFNfU1JDX05BVF9ET05FKSwKKyAgSVBTX1NSQ19OQVRfRE9ORSA9ICgxIDw8IElQU19TUkNfTkFUX0RPTkVfQklUKSwKKyAgSVBTX0RTVF9OQVRfRE9ORV9CSVQgPSA4LAorICBJUFNfRFNUX05BVF9ET05FID0gKDEgPDwgSVBTX0RTVF9OQVRfRE9ORV9CSVQpLAorICBJUFNfTkFUX0RPTkVfTUFTSyA9IChJUFNfRFNUX05BVF9ET05FIHwgSVBTX1NSQ19OQVRfRE9ORSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19EWUlOR19CSVQgPSA5LAotIElQU19EWUlORyA9ICgxIDw8IElQU19EWUlOR19CSVQpLAotIElQU19GSVhFRF9USU1FT1VUX0JJVCA9IDEwLAotIElQU19GSVhFRF9USU1FT1VUID0gKDEgPDwgSVBTX0ZJWEVEX1RJTUVPVVRfQklUKSwKKyAgSVBTX0RZSU5HX0JJVCA9IDksCisgIElQU19EWUlORyA9ICgxIDw8IElQU19EWUlOR19CSVQpLAorICBJUFNfRklYRURfVElNRU9VVF9CSVQgPSAxMCwKKyAgSVBTX0ZJWEVEX1RJTUVPVVQgPSAoMSA8PCBJUFNfRklYRURfVElNRU9VVF9CSVQpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfVEVNUExBVEVfQklUID0gMTEsCi0gSVBTX1RFTVBMQVRFID0gKDEgPDwgSVBTX1RFTVBMQVRFX0JJVCksCi0gSVBTX1VOVFJBQ0tFRF9CSVQgPSAxMiwKLSBJUFNfVU5UUkFDS0VEID0gKDEgPDwgSVBTX1VOVFJBQ0tFRF9CSVQpLAorICBJUFNfVEVNUExBVEVfQklUID0gMTEsCisgIElQU19URU1QTEFURSA9ICgxIDw8IElQU19URU1QTEFURV9CSVQpLAorICBJUFNfVU5UUkFDS0VEX0JJVCA9IDEyLAorICBJUFNfVU5UUkFDS0VEID0gKDEgPDwgSVBTX1VOVFJBQ0tFRF9CSVQpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfSEVMUEVSX0JJVCA9IDEzLAotIElQU19IRUxQRVIgPSAoMSA8PCBJUFNfSEVMUEVSX0JJVCksCisgIElQU19IRUxQRVJfQklUID0gMTMsCisgIElQU19IRUxQRVIgPSAoMSA8PCBJUFNfSEVMUEVSX0JJVCksCiB9OwogZW51bSBpcF9jb25udHJhY2tfZXZlbnRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVF9ORVcsCi0gSVBDVF9SRUxBVEVELAotIElQQ1RfREVTVFJPWSwKLSBJUENUX1JFUExZLAorICBJUENUX05FVywKKyAgSVBDVF9SRUxBVEVELAorICBJUENUX0RFU1RST1ksCisgIElQQ1RfUkVQTFksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1RfQVNTVVJFRCwKLSBJUENUX1BST1RPSU5GTywKLSBJUENUX0hFTFBFUiwKLSBJUENUX01BUkssCisgIElQQ1RfQVNTVVJFRCwKKyAgSVBDVF9QUk9UT0lORk8sCisgIElQQ1RfSEVMUEVSLAorICBJUENUX01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1RfU0VRQURKLAotIElQQ1RfTkFUU0VRQURKID0gSVBDVF9TRVFBREosCi0gSVBDVF9TRUNNQVJLLAotIElQQ1RfTEFCRUwsCisgIElQQ1RfU0VRQURKLAorICBJUENUX05BVFNFUUFESiA9IElQQ1RfU0VRQURKLAorICBJUENUX1NFQ01BUkssCisgIElQQ1RfTEFCRUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gaXBfY29ubnRyYWNrX2V4cGVjdF9ldmVudHMgewotIElQRVhQX05FVywKLSBJUEVYUF9ERVNUUk9ZLAorICBJUEVYUF9ORVcsCisgIElQRVhQX0RFU1RST1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZfQ1RfRVhQRUNUX1BFUk1BTkVOVCAweDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19mdHAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19mdHAuaAppbmRleCAxZjBlM2MwLi4yMzk1NWQzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfZnRwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2Z0cC5oCkBAIC0xOSwxMSArMTksMTEgQEAKICNpZm5kZWYgX1VBUElfTkZfQ09OTlRSQUNLX0ZUUF9ICiAjZGVmaW5lIF9VQVBJX05GX0NPTk5UUkFDS19GVFBfSAogZW51bSBuZl9jdF9mdHBfdHlwZSB7Ci0gTkZfQ1RfRlRQX1BPUlQsCisgIE5GX0NUX0ZUUF9QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9DVF9GVFBfUEFTViwKLSBORl9DVF9GVFBfRVBSVCwKLSBORl9DVF9GVFBfRVBTViwKKyAgTkZfQ1RfRlRQX1BBU1YsCisgIE5GX0NUX0ZUUF9FUFJULAorICBORl9DVF9GVFBfRVBTViwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfc2N0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3NjdHAuaAppbmRleCAzN2M0ZTY5Li5mMzBjNThlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfc2N0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zY3RwLmgKQEAgLTIxLDIxICsyMSwyMSBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdHVwbGVfY29tbW9uLmg+CiBlbnVtIHNjdHBfY29ubnRyYWNrIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9DT05OVFJBQ0tfTk9ORSwKLSBTQ1RQX0NPTk5UUkFDS19DTE9TRUQsCi0gU0NUUF9DT05OVFJBQ0tfQ09PS0lFX1dBSVQsCi0gU0NUUF9DT05OVFJBQ0tfQ09PS0lFX0VDSE9FRCwKKyAgU0NUUF9DT05OVFJBQ0tfTk9ORSwKKyAgU0NUUF9DT05OVFJBQ0tfQ0xPU0VELAorICBTQ1RQX0NPTk5UUkFDS19DT09LSUVfV0FJVCwKKyAgU0NUUF9DT05OVFJBQ0tfQ09PS0lFX0VDSE9FRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9DT05OVFJBQ0tfRVNUQUJMSVNIRUQsCi0gU0NUUF9DT05OVFJBQ0tfU0hVVERPV05fU0VOVCwKLSBTQ1RQX0NPTk5UUkFDS19TSFVURE9XTl9SRUNELAotIFNDVFBfQ09OTlRSQUNLX1NIVVRET1dOX0FDS19TRU5ULAorICBTQ1RQX0NPTk5UUkFDS19FU1RBQkxJU0hFRCwKKyAgU0NUUF9DT05OVFJBQ0tfU0hVVERPV05fU0VOVCwKKyAgU0NUUF9DT05OVFJBQ0tfU0hVVERPV05fUkVDRCwKKyAgU0NUUF9DT05OVFJBQ0tfU0hVVERPV05fQUNLX1NFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQ09OTlRSQUNLX01BWAorICBTQ1RQX0NPTk5UUkFDS19NQVgKIH07CiBzdHJ1Y3QgaXBfY3Rfc2N0cCB7Ci0gZW51bSBzY3RwX2Nvbm50cmFjayBzdGF0ZTsKKyAgZW51bSBzY3RwX2Nvbm50cmFjayBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHZ0YWdbSVBfQ1RfRElSX01BWF07CisgIF9fYmUzMiB2dGFnW0lQX0NUX0RJUl9NQVhdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RjcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RjcC5oCmluZGV4IDNkNzllYjMuLjFhZjAwZDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190Y3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdGNwLmgKQEAgLTIxLDI1ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHRjcF9jb25udHJhY2sgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfQ09OTlRSQUNLX05PTkUsCi0gVENQX0NPTk5UUkFDS19TWU5fU0VOVCwKLSBUQ1BfQ09OTlRSQUNLX1NZTl9SRUNWLAotIFRDUF9DT05OVFJBQ0tfRVNUQUJMSVNIRUQsCisgIFRDUF9DT05OVFJBQ0tfTk9ORSwKKyAgVENQX0NPTk5UUkFDS19TWU5fU0VOVCwKKyAgVENQX0NPTk5UUkFDS19TWU5fUkVDViwKKyAgVENQX0NPTk5UUkFDS19FU1RBQkxJU0hFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX0NPTk5UUkFDS19GSU5fV0FJVCwKLSBUQ1BfQ09OTlRSQUNLX0NMT1NFX1dBSVQsCi0gVENQX0NPTk5UUkFDS19MQVNUX0FDSywKLSBUQ1BfQ09OTlRSQUNLX1RJTUVfV0FJVCwKKyAgVENQX0NPTk5UUkFDS19GSU5fV0FJVCwKKyAgVENQX0NPTk5UUkFDS19DTE9TRV9XQUlULAorICBUQ1BfQ09OTlRSQUNLX0xBU1RfQUNLLAorICBUQ1BfQ09OTlRSQUNLX1RJTUVfV0FJVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX0NPTk5UUkFDS19DTE9TRSwKLSBUQ1BfQ09OTlRSQUNLX0xJU1RFTiwKKyAgVENQX0NPTk5UUkFDS19DTE9TRSwKKyAgVENQX0NPTk5UUkFDS19MSVNURU4sCiAjZGVmaW5lIFRDUF9DT05OVFJBQ0tfU1lOX1NFTlQyIFRDUF9DT05OVFJBQ0tfTElTVEVOCi0gVENQX0NPTk5UUkFDS19NQVgsCisgIFRDUF9DT05OVFJBQ0tfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfQ09OTlRSQUNLX0lHTk9SRSwKLSBUQ1BfQ09OTlRSQUNLX1JFVFJBTlMsCi0gVENQX0NPTk5UUkFDS19VTkFDSywKLSBUQ1BfQ09OTlRSQUNLX1RJTUVPVVRfTUFYCisgIFRDUF9DT05OVFJBQ0tfSUdOT1JFLAorICBUQ1BfQ09OTlRSQUNLX1JFVFJBTlMsCisgIFRDUF9DT05OVFJBQ0tfVU5BQ0ssCisgIFRDUF9DT05OVFJBQ0tfVElNRU9VVF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUF9DVF9UQ1BfRkxBR19XSU5ET1dfU0NBTEUgMHgwMQpAQCAtNTEsOCArNTEsOCBAQAogI2RlZmluZSBJUF9DVF9UQ1BfRkxBR19NQVhBQ0tfU0VUIDB4MjAKIHN0cnVjdCBuZl9jdF90Y3BfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIF9fdTggbWFzazsKKyAgX191OCBmbGFnczsKKyAgX191OCBtYXNrOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190dXBsZV9jb21tb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190dXBsZV9jb21tb24uaAppbmRleCA5ZjY1MTVlLi44NTY2ZTg2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdHVwbGVfY29tbW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3R1cGxlX2NvbW1vbi5oCkBAIC0xOSwzNiArMTksMzYgQEAKICNpZm5kZWYgX05GX0NPTk5UUkFDS19UVVBMRV9DT01NT05fSAogI2RlZmluZSBfTkZfQ09OTlRSQUNLX1RVUExFX0NPTU1PTl9ICiBlbnVtIGlwX2Nvbm50cmFja19kaXIgewotIElQX0NUX0RJUl9PUklHSU5BTCwKKyAgSVBfQ1RfRElSX09SSUdJTkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUF9DVF9ESVJfUkVQTFksCi0gSVBfQ1RfRElSX01BWAorICBJUF9DVF9ESVJfUkVQTFksCisgIElQX0NUX0RJUl9NQVgKIH07CiB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGFsbDsKLSBzdHJ1Y3QgewotIF9fYmUxNiBwb3J0OwotIH0gdGNwOworICBfX2JlMTYgYWxsOworICBzdHJ1Y3QgeworICAgIF9fYmUxNiBwb3J0OworICB9IHRjcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX2JlMTYgcG9ydDsKLSB9IHVkcDsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIF9fYmUxNiBwb3J0OworICB9IHVkcDsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGlkOwotIH0gaWNtcDsKLSBzdHJ1Y3QgewotIF9fYmUxNiBwb3J0OworICAgIF9fYmUxNiBpZDsKKyAgfSBpY21wOworICBzdHJ1Y3QgeworICAgIF9fYmUxNiBwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGRjY3A7Ci0gc3RydWN0IHsKLSBfX2JlMTYgcG9ydDsKLSB9IHNjdHA7CisgIH0gZGNjcDsKKyAgc3RydWN0IHsKKyAgICBfX2JlMTYgcG9ydDsKKyAgfSBzY3RwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fYmUxNiBrZXk7Ci0gfSBncmU7CisgIHN0cnVjdCB7CisgICAgX19iZTE2IGtleTsKKyAgfSBncmU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RJTkZPMkRJUihjdGluZm8pICgoY3RpbmZvKSA+PSBJUF9DVF9JU19SRVBMWSA/IElQX0NUX0RJUl9SRVBMWSA6IElQX0NUX0RJUl9PUklHSU5BTCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX25hdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfbmF0LmgKaW5kZXggYjM5OTg4OC4uNmMxMTE4MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfbmF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfbmF0LmgKQEAgLTI3LDI4ICsyNywyOSBAQAogI2RlZmluZSBORl9OQVRfUkFOR0VfUEVSU0lTVEVOVCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTV9GVUxMWSAoMSA8PCA0KQotI2RlZmluZSBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0FMTCAgIChORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NIHwgTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTV9GVUxMWSkKKyNkZWZpbmUgTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTV9BTEwgKE5GX05BVF9SQU5HRV9QUk9UT19SQU5ET00gfCBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0ZVTExZKQorI2RlZmluZSBORl9OQVRfUkFOR0VfTUFTSyAoTkZfTkFUX1JBTkdFX01BUF9JUFMgfCBORl9OQVRfUkFOR0VfUFJPVE9fU1BFQ0lGSUVEIHwgTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTSB8IE5GX05BVF9SQU5HRV9QRVJTSVNURU5UIHwgTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTV9GVUxMWSkKIHN0cnVjdCBuZl9uYXRfaXB2NF9yYW5nZSB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbWluX2lwOwotIF9fYmUzMiBtYXhfaXA7Ci0gdW5pb24gbmZfY29ubnRyYWNrX21hbl9wcm90byBtaW47Ci0gdW5pb24gbmZfY29ubnRyYWNrX21hbl9wcm90byBtYXg7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgX19iZTMyIG1pbl9pcDsKKyAgX19iZTMyIG1heF9pcDsKKyAgdW5pb24gbmZfY29ubnRyYWNrX21hbl9wcm90byBtaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1heDsKIH07CiBzdHJ1Y3QgbmZfbmF0X2lwdjRfbXVsdGlfcmFuZ2VfY29tcGF0IHsKLSB1bnNpZ25lZCBpbnQgcmFuZ2VzaXplOwotIHN0cnVjdCBuZl9uYXRfaXB2NF9yYW5nZSByYW5nZVsxXTsKKyAgdW5zaWduZWQgaW50IHJhbmdlc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBuZl9uYXRfaXB2NF9yYW5nZSByYW5nZVsxXTsKIH07CiBzdHJ1Y3QgbmZfbmF0X3JhbmdlIHsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIG1pbl9hZGRyOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIG5mX2luZXRfYWRkciBtYXhfYWRkcjsKLSB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1pbl9wcm90bzsKLSB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1heF9wcm90bzsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG1pbl9hZGRyOworICB1bmlvbiBuZl9pbmV0X2FkZHIgbWF4X2FkZHI7CisgIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gbWluX3Byb3RvOworICB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1heF9wcm90bzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfdGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaAppbmRleCAzNDYzMmRkLi41ODk4NGFmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaApAQCAtMTksMzk5ICsxOSw0MzQgQEAKICNpZm5kZWYgX0xJTlVYX05GX1RBQkxFU19ICiAjZGVmaW5lIF9MSU5VWF9ORl9UQUJMRVNfSAogI2RlZmluZSBORlRfQ0hBSU5fTUFYTkFNRUxFTiAzMgorI2RlZmluZSBORlRfVVNFUkRBVEFfTUFYTEVOIDI1NgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X3JlZ2lzdGVycyB7CisgIE5GVF9SRUdfVkVSRElDVCwKKyAgTkZUX1JFR18xLAorICBORlRfUkVHXzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9SRUdfVkVSRElDVCwKLSBORlRfUkVHXzEsCi0gTkZUX1JFR18yLAotIE5GVF9SRUdfMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX1JFR180LAotIF9fTkZUX1JFR19NQVgKKyAgTkZUX1JFR18zLAorICBORlRfUkVHXzQsCisgIF9fTkZUX1JFR19NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRfUkVHX01BWCAoX19ORlRfUkVHX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfdmVyZGljdHMgewotIE5GVF9DT05USU5VRSA9IC0xLAotIE5GVF9CUkVBSyA9IC0yLAotIE5GVF9KVU1QID0gLTMsCisgIE5GVF9DT05USU5VRSA9IC0gMSwKKyAgTkZUX0JSRUFLID0gLSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfR09UTyA9IC00LAotIE5GVF9SRVRVUk4gPSAtNSwKKyAgTkZUX0pVTVAgPSAtIDMsCisgIE5GVF9HT1RPID0gLSA0LAorICBORlRfUkVUVVJOID0gLSA1LAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mX3RhYmxlc19tc2dfdHlwZXMgeworICBORlRfTVNHX05FV1RBQkxFLAorICBORlRfTVNHX0dFVFRBQkxFLAorICBORlRfTVNHX0RFTFRBQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTVNHX05FV1RBQkxFLAotIE5GVF9NU0dfR0VUVEFCTEUsCi0gTkZUX01TR19ERUxUQUJMRSwKLSBORlRfTVNHX05FV0NIQUlOLAorICBORlRfTVNHX05FV0NIQUlOLAorICBORlRfTVNHX0dFVENIQUlOLAorICBORlRfTVNHX0RFTENIQUlOLAorICBORlRfTVNHX05FV1JVTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NU0dfR0VUQ0hBSU4sCi0gTkZUX01TR19ERUxDSEFJTiwKLSBORlRfTVNHX05FV1JVTEUsCi0gTkZUX01TR19HRVRSVUxFLAorICBORlRfTVNHX0dFVFJVTEUsCisgIE5GVF9NU0dfREVMUlVMRSwKKyAgTkZUX01TR19ORVdTRVQsCisgIE5GVF9NU0dfR0VUU0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTVNHX0RFTFJVTEUsCi0gTkZUX01TR19ORVdTRVQsCi0gTkZUX01TR19HRVRTRVQsCi0gTkZUX01TR19ERUxTRVQsCisgIE5GVF9NU0dfREVMU0VULAorICBORlRfTVNHX05FV1NFVEVMRU0sCisgIE5GVF9NU0dfR0VUU0VURUxFTSwKKyAgTkZUX01TR19ERUxTRVRFTEVNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTVNHX05FV1NFVEVMRU0sCi0gTkZUX01TR19HRVRTRVRFTEVNLAotIE5GVF9NU0dfREVMU0VURUxFTSwKLSBORlRfTVNHX01BWCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9NU0dfTkVXR0VOLAorICBORlRfTVNHX0dFVEdFTiwKKyAgTkZUX01TR19NQVgsCiB9OwotZW51bSBuZnRfbGlzdF9hdHRyaWJ1dGVzIHsKLSBORlRBX0xJU1RfVU5QRUMsCi0gTkZUQV9MSVNUX0VMRU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZUQV9MSVNUX01BWAorZW51bSBuZnRfbGlzdF9hdHRyaWJ1dGVzIHsKKyAgTkZUQV9MSVNUX1VOUEVDLAorICBORlRBX0xJU1RfRUxFTSwKKyAgX19ORlRBX0xJU1RfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZUQV9MSVNUX01BWCAoX19ORlRBX0xJU1RfTUFYIC0gMSkKIGVudW0gbmZ0X2hvb2tfYXR0cmlidXRlcyB7CisgIE5GVEFfSE9PS19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfSE9PS19VTlNQRUMsCi0gTkZUQV9IT09LX0hPT0tOVU0sCi0gTkZUQV9IT09LX1BSSU9SSVRZLAotIF9fTkZUQV9IT09LX01BWAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUQV9IT09LX0hPT0tOVU0sCisgIE5GVEFfSE9PS19QUklPUklUWSwKKyAgX19ORlRBX0hPT0tfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9IT09LX01BWCAoX19ORlRBX0hPT0tfTUFYIC0gMSkKIGVudW0gbmZ0X3RhYmxlX2ZsYWdzIHsKLSBORlRfVEFCTEVfRl9ET1JNQU5UID0gMHgxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUX1RBQkxFX0ZfRE9STUFOVCA9IDB4MSwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfdGFibGVfYXR0cmlidXRlcyB7Ci0gTkZUQV9UQUJMRV9VTlNQRUMsCi0gTkZUQV9UQUJMRV9OQU1FLAorICBORlRBX1RBQkxFX1VOU1BFQywKKyAgTkZUQV9UQUJMRV9OQU1FLAorICBORlRBX1RBQkxFX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1RBQkxFX0ZMQUdTLAotIE5GVEFfVEFCTEVfVVNFLAotIF9fTkZUQV9UQUJMRV9NQVgKKyAgTkZUQV9UQUJMRV9VU0UsCisgIF9fTkZUQV9UQUJMRV9NQVgKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX1RBQkxFX01BWCAoX19ORlRBX1RBQkxFX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfY2hhaW5fYXR0cmlidXRlcyB7Ci0gTkZUQV9DSEFJTl9VTlNQRUMsCi0gTkZUQV9DSEFJTl9UQUJMRSwKKyAgTkZUQV9DSEFJTl9VTlNQRUMsCisgIE5GVEFfQ0hBSU5fVEFCTEUsCisgIE5GVEFfQ0hBSU5fSEFORExFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0NIQUlOX0hBTkRMRSwKLSBORlRBX0NIQUlOX05BTUUsCi0gTkZUQV9DSEFJTl9IT09LLAotIE5GVEFfQ0hBSU5fUE9MSUNZLAorICBORlRBX0NIQUlOX05BTUUsCisgIE5GVEFfQ0hBSU5fSE9PSywKKyAgTkZUQV9DSEFJTl9QT0xJQ1ksCisgIE5GVEFfQ0hBSU5fVVNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0NIQUlOX1VTRSwKLSBORlRBX0NIQUlOX1RZUEUsCi0gTkZUQV9DSEFJTl9DT1VOVEVSUywKLSBfX05GVEFfQ0hBSU5fTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0NIQUlOX1RZUEUsCisgIE5GVEFfQ0hBSU5fQ09VTlRFUlMsCisgIF9fTkZUQV9DSEFJTl9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX0NIQUlOX01BWCAoX19ORlRBX0NIQUlOX01BWCAtIDEpCiBlbnVtIG5mdF9ydWxlX2F0dHJpYnV0ZXMgewotIE5GVEFfUlVMRV9VTlNQRUMsCisgIE5GVEFfUlVMRV9VTlNQRUMsCisgIE5GVEFfUlVMRV9UQUJMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9SVUxFX1RBQkxFLAotIE5GVEFfUlVMRV9DSEFJTiwKLSBORlRBX1JVTEVfSEFORExFLAotIE5GVEFfUlVMRV9FWFBSRVNTSU9OUywKKyAgTkZUQV9SVUxFX0NIQUlOLAorICBORlRBX1JVTEVfSEFORExFLAorICBORlRBX1JVTEVfRVhQUkVTU0lPTlMsCisgIE5GVEFfUlVMRV9DT01QQVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfUlVMRV9DT01QQVQsCi0gTkZUQV9SVUxFX1BPU0lUSU9OLAotIF9fTkZUQV9SVUxFX01BWAorICBORlRBX1JVTEVfUE9TSVRJT04sCisgIE5GVEFfUlVMRV9VU0VSREFUQSwKKyAgX19ORlRBX1JVTEVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9SVUxFX01BWCAoX19ORlRBX1JVTEVfTUFYIC0gMSkKIGVudW0gbmZ0X3J1bGVfY29tcGF0X2ZsYWdzIHsKLSBORlRfUlVMRV9DT01QQVRfRl9JTlYgPSAoMSA8PCAxKSwKLSBORlRfUlVMRV9DT01QQVRfRl9NQVNLID0gTkZUX1JVTEVfQ09NUEFUX0ZfSU5WLAorICBORlRfUlVMRV9DT01QQVRfRl9JTlYgPSAoMSA8PCAxKSwKKyAgTkZUX1JVTEVfQ09NUEFUX0ZfTUFTSyA9IE5GVF9SVUxFX0NPTVBBVF9GX0lOViwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBuZnRfcnVsZV9jb21wYXRfYXR0cmlidXRlcyB7Ci0gTkZUQV9SVUxFX0NPTVBBVF9VTlNQRUMsCi0gTkZUQV9SVUxFX0NPTVBBVF9QUk9UTywKKyAgTkZUQV9SVUxFX0NPTVBBVF9VTlNQRUMsCisgIE5GVEFfUlVMRV9DT01QQVRfUFJPVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfUlVMRV9DT01QQVRfRkxBR1MsCi0gX19ORlRBX1JVTEVfQ09NUEFUX01BWAorICBORlRBX1JVTEVfQ09NUEFUX0ZMQUdTLAorICBfX05GVEFfUlVMRV9DT01QQVRfTUFYCiB9OwogI2RlZmluZSBORlRBX1JVTEVfQ09NUEFUX01BWCAoX19ORlRBX1JVTEVfQ09NUEFUX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfc2V0X2ZsYWdzIHsKLSBORlRfU0VUX0FOT05ZTU9VUyA9IDB4MSwKLSBORlRfU0VUX0NPTlNUQU5UID0gMHgyLAotIE5GVF9TRVRfSU5URVJWQUwgPSAweDQsCisgIE5GVF9TRVRfQU5PTllNT1VTID0gMHgxLAorICBORlRfU0VUX0NPTlNUQU5UID0gMHgyLAorICBORlRfU0VUX0lOVEVSVkFMID0gMHg0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfU0VUX01BUCA9IDB4OCwKKyAgTkZUX1NFVF9NQVAgPSAweDgsCiB9OworZW51bSBuZnRfc2V0X3BvbGljaWVzIHsKKyAgTkZUX1NFVF9QT0xfUEVSRk9STUFOQ0UsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfU0VUX1BPTF9NRU1PUlksCit9OworZW51bSBuZnRfc2V0X2Rlc2NfYXR0cmlidXRlcyB7CisgIE5GVEFfU0VUX0RFU0NfVU5TUEVDLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUQV9TRVRfREVTQ19TSVpFLAorICBfX05GVEFfU0VUX0RFU0NfTUFYCit9OworI2RlZmluZSBORlRBX1NFVF9ERVNDX01BWCAoX19ORlRBX1NFVF9ERVNDX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfc2V0X2F0dHJpYnV0ZXMgewotIE5GVEFfU0VUX1VOU1BFQywKKyAgTkZUQV9TRVRfVU5TUEVDLAorICBORlRBX1NFVF9UQUJMRSwKKyAgTkZUQV9TRVRfTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9TRVRfVEFCTEUsCi0gTkZUQV9TRVRfTkFNRSwKLSBORlRBX1NFVF9GTEFHUywKLSBORlRBX1NFVF9LRVlfVFlQRSwKKyAgTkZUQV9TRVRfRkxBR1MsCisgIE5GVEFfU0VUX0tFWV9UWVBFLAorICBORlRBX1NFVF9LRVlfTEVOLAorICBORlRBX1NFVF9EQVRBX1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfU0VUX0tFWV9MRU4sCi0gTkZUQV9TRVRfREFUQV9UWVBFLAotIE5GVEFfU0VUX0RBVEFfTEVOLAotIF9fTkZUQV9TRVRfTUFYCisgIE5GVEFfU0VUX0RBVEFfTEVOLAorICBORlRBX1NFVF9QT0xJQ1ksCisgIE5GVEFfU0VUX0RFU0MsCisgIE5GVEFfU0VUX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19ORlRBX1NFVF9NQVgKIH07CiAjZGVmaW5lIE5GVEFfU0VUX01BWCAoX19ORlRBX1NFVF9NQVggLSAxKQogZW51bSBuZnRfc2V0X2VsZW1fZmxhZ3MgewotIE5GVF9TRVRfRUxFTV9JTlRFUlZBTF9FTkQgPSAweDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfU0VUX0VMRU1fSU5URVJWQUxfRU5EID0gMHgxLAogfTsKIGVudW0gbmZ0X3NldF9lbGVtX2F0dHJpYnV0ZXMgewotIE5GVEFfU0VUX0VMRU1fVU5TUEVDLAotIE5GVEFfU0VUX0VMRU1fS0VZLAorICBORlRBX1NFVF9FTEVNX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9TRVRfRUxFTV9EQVRBLAotIE5GVEFfU0VUX0VMRU1fRkxBR1MsCi0gX19ORlRBX1NFVF9FTEVNX01BWAorICBORlRBX1NFVF9FTEVNX0tFWSwKKyAgTkZUQV9TRVRfRUxFTV9EQVRBLAorICBORlRBX1NFVF9FTEVNX0ZMQUdTLAorICBfX05GVEFfU0VUX0VMRU1fTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfU0VUX0VMRU1fTUFYIChfX05GVEFfU0VUX0VMRU1fTUFYIC0gMSkKIGVudW0gbmZ0X3NldF9lbGVtX2xpc3RfYXR0cmlidXRlcyB7Ci0gTkZUQV9TRVRfRUxFTV9MSVNUX1VOU1BFQywKLSBORlRBX1NFVF9FTEVNX0xJU1RfVEFCTEUsCisgIE5GVEFfU0VUX0VMRU1fTElTVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfU0VUX0VMRU1fTElTVF9TRVQsCi0gTkZUQV9TRVRfRUxFTV9MSVNUX0VMRU1FTlRTLAotIF9fTkZUQV9TRVRfRUxFTV9MSVNUX01BWAorICBORlRBX1NFVF9FTEVNX0xJU1RfVEFCTEUsCisgIE5GVEFfU0VUX0VMRU1fTElTVF9TRVQsCisgIE5GVEFfU0VUX0VMRU1fTElTVF9FTEVNRU5UUywKKyAgTkZUQV9TRVRfRUxFTV9MSVNUX1NFVF9JRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTkZUQV9TRVRfRUxFTV9MSVNUX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfU0VUX0VMRU1fTElTVF9NQVggKF9fTkZUQV9TRVRfRUxFTV9MSVNUX01BWCAtIDEpCiBlbnVtIG5mdF9kYXRhX3R5cGVzIHsKLSBORlRfREFUQV9WQUxVRSwKLSBORlRfREFUQV9WRVJESUNUID0gMHhmZmZmZmYwMFUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfREFUQV9WQUxVRSwKKyAgTkZUX0RBVEFfVkVSRElDVCA9IDB4ZmZmZmZmMDBVLAogfTsKICNkZWZpbmUgTkZUX0RBVEFfUkVTRVJWRURfTUFTSyAweGZmZmZmZjAwVQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2RhdGFfYXR0cmlidXRlcyB7Ci0gTkZUQV9EQVRBX1VOU1BFQywKKyAgTkZUQV9EQVRBX1VOU1BFQywKKyAgTkZUQV9EQVRBX1ZBTFVFLAorICBORlRBX0RBVEFfVkVSRElDVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9EQVRBX1ZBTFVFLAotIE5GVEFfREFUQV9WRVJESUNULAotIF9fTkZUQV9EQVRBX01BWAorICBfX05GVEFfREFUQV9NQVgKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX0RBVEFfTUFYIChfX05GVEFfREFUQV9NQVggLSAxKQogZW51bSBuZnRfdmVyZGljdF9hdHRyaWJ1dGVzIHsKLSBORlRBX1ZFUkRJQ1RfVU5TUEVDLAotIE5GVEFfVkVSRElDVF9DT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1ZFUkRJQ1RfQ0hBSU4sCi0gX19ORlRBX1ZFUkRJQ1RfTUFYCisgIE5GVEFfVkVSRElDVF9VTlNQRUMsCisgIE5GVEFfVkVSRElDVF9DT0RFLAorICBORlRBX1ZFUkRJQ1RfQ0hBSU4sCisgIF9fTkZUQV9WRVJESUNUX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GVEFfVkVSRElDVF9NQVggKF9fTkZUQV9WRVJESUNUX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfZXhwcl9hdHRyaWJ1dGVzIHsKLSBORlRBX0VYUFJfVU5TUEVDLAotIE5GVEFfRVhQUl9OQU1FLAotIE5GVEFfRVhQUl9EQVRBLAorICBORlRBX0VYUFJfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GVEFfRVhQUl9NQVgKKyAgTkZUQV9FWFBSX05BTUUsCisgIE5GVEFfRVhQUl9EQVRBLAorICBfX05GVEFfRVhQUl9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX0VYUFJfTUFYIChfX05GVEFfRVhQUl9NQVggLSAxKQogZW51bSBuZnRfaW1tZWRpYXRlX2F0dHJpYnV0ZXMgeworICBORlRBX0lNTUVESUFURV9VTlNQRUMsCisgIE5GVEFfSU1NRURJQVRFX0RSRUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfSU1NRURJQVRFX1VOU1BFQywKLSBORlRBX0lNTUVESUFURV9EUkVHLAotIE5GVEFfSU1NRURJQVRFX0RBVEEsCi0gX19ORlRBX0lNTUVESUFURV9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfSU1NRURJQVRFX0RBVEEsCisgIF9fTkZUQV9JTU1FRElBVEVfTUFYCiB9OwogI2RlZmluZSBORlRBX0lNTUVESUFURV9NQVggKF9fTkZUQV9JTU1FRElBVEVfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9iaXR3aXNlX2F0dHJpYnV0ZXMgewotIE5GVEFfQklUV0lTRV9VTlNQRUMsCisgIE5GVEFfQklUV0lTRV9VTlNQRUMsCisgIE5GVEFfQklUV0lTRV9TUkVHLAorICBORlRBX0JJVFdJU0VfRFJFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9CSVRXSVNFX1NSRUcsCi0gTkZUQV9CSVRXSVNFX0RSRUcsCi0gTkZUQV9CSVRXSVNFX0xFTiwKLSBORlRBX0JJVFdJU0VfTUFTSywKKyAgTkZUQV9CSVRXSVNFX0xFTiwKKyAgTkZUQV9CSVRXSVNFX01BU0ssCisgIE5GVEFfQklUV0lTRV9YT1IsCisgIF9fTkZUQV9CSVRXSVNFX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0JJVFdJU0VfWE9SLAotIF9fTkZUQV9CSVRXSVNFX01BWAogfTsKICNkZWZpbmUgTkZUQV9CSVRXSVNFX01BWCAoX19ORlRBX0JJVFdJU0VfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9ieXRlb3JkZXJfb3BzIHsKLSBORlRfQllURU9SREVSX05UT0gsCi0gTkZUX0JZVEVPUkRFUl9IVE9OLAorICBORlRfQllURU9SREVSX05UT0gsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfQllURU9SREVSX0hUT04sCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2J5dGVvcmRlcl9hdHRyaWJ1dGVzIHsKLSBORlRBX0JZVEVPUkRFUl9VTlNQRUMsCi0gTkZUQV9CWVRFT1JERVJfU1JFRywKLSBORlRBX0JZVEVPUkRFUl9EUkVHLAorICBORlRBX0JZVEVPUkRFUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQllURU9SREVSX09QLAotIE5GVEFfQllURU9SREVSX0xFTiwKLSBORlRBX0JZVEVPUkRFUl9TSVpFLAotIF9fTkZUQV9CWVRFT1JERVJfTUFYCisgIE5GVEFfQllURU9SREVSX1NSRUcsCisgIE5GVEFfQllURU9SREVSX0RSRUcsCisgIE5GVEFfQllURU9SREVSX09QLAorICBORlRBX0JZVEVPUkRFUl9MRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0JZVEVPUkRFUl9TSVpFLAorICBfX05GVEFfQllURU9SREVSX01BWAogfTsKICNkZWZpbmUgTkZUQV9CWVRFT1JERVJfTUFYIChfX05GVEFfQllURU9SREVSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfY21wX29wcyB7Ci0gTkZUX0NNUF9FUSwKKyAgTkZUX0NNUF9FUSwKKyAgTkZUX0NNUF9ORVEsCisgIE5GVF9DTVBfTFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9DTVBfTkVRLAotIE5GVF9DTVBfTFQsCi0gTkZUX0NNUF9MVEUsCi0gTkZUX0NNUF9HVCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX0NNUF9HVEUsCisgIE5GVF9DTVBfTFRFLAorICBORlRfQ01QX0dULAorICBORlRfQ01QX0dURSwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfY21wX2F0dHJpYnV0ZXMgewotIE5GVEFfQ01QX1VOU1BFQywKKyAgTkZUQV9DTVBfVU5TUEVDLAorICBORlRBX0NNUF9TUkVHLAorICBORlRBX0NNUF9PUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9DTVBfU1JFRywKLSBORlRBX0NNUF9PUCwKLSBORlRBX0NNUF9EQVRBLAotIF9fTkZUQV9DTVBfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0NNUF9EQVRBLAorICBfX05GVEFfQ01QX01BWAogfTsKICNkZWZpbmUgTkZUQV9DTVBfTUFYIChfX05GVEFfQ01QX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfbG9va3VwX2F0dHJpYnV0ZXMgewotIE5GVEFfTE9PS1VQX1VOU1BFQywKKyAgTkZUQV9MT09LVVBfVU5TUEVDLAorICBORlRBX0xPT0tVUF9TRVQsCisgIE5GVEFfTE9PS1VQX1NSRUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfTE9PS1VQX1NFVCwKLSBORlRBX0xPT0tVUF9TUkVHLAotIE5GVEFfTE9PS1VQX0RSRUcsCi0gX19ORlRBX0xPT0tVUF9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfTE9PS1VQX0RSRUcsCisgIE5GVEFfTE9PS1VQX1NFVF9JRCwKKyAgX19ORlRBX0xPT0tVUF9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX0xPT0tVUF9NQVggKF9fTkZUQV9MT09LVVBfTUFYIC0gMSkKIGVudW0gbmZ0X3BheWxvYWRfYmFzZXMgewotIE5GVF9QQVlMT0FEX0xMX0hFQURFUiwKKyAgTkZUX1BBWUxPQURfTExfSEVBREVSLAorICBORlRfUEFZTE9BRF9ORVRXT1JLX0hFQURFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX1BBWUxPQURfTkVUV09SS19IRUFERVIsCi0gTkZUX1BBWUxPQURfVFJBTlNQT1JUX0hFQURFUiwKKyAgTkZUX1BBWUxPQURfVFJBTlNQT1JUX0hFQURFUiwKIH07CiBlbnVtIG5mdF9wYXlsb2FkX2F0dHJpYnV0ZXMgeworICBORlRBX1BBWUxPQURfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1BBWUxPQURfVU5TUEVDLAotIE5GVEFfUEFZTE9BRF9EUkVHLAotIE5GVEFfUEFZTE9BRF9CQVNFLAotIE5GVEFfUEFZTE9BRF9PRkZTRVQsCisgIE5GVEFfUEFZTE9BRF9EUkVHLAorICBORlRBX1BBWUxPQURfQkFTRSwKKyAgTkZUQV9QQVlMT0FEX09GRlNFVCwKKyAgTkZUQV9QQVlMT0FEX0xFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9QQVlMT0FEX0xFTiwKLSBfX05GVEFfUEFZTE9BRF9NQVgKKyAgX19ORlRBX1BBWUxPQURfTUFYCiB9OwogI2RlZmluZSBORlRBX1BBWUxPQURfTUFYIChfX05GVEFfUEFZTE9BRF9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2V4dGhkcl9hdHRyaWJ1dGVzIHsKLSBORlRBX0VYVEhEUl9VTlNQRUMsCi0gTkZUQV9FWFRIRFJfRFJFRywKLSBORlRBX0VYVEhEUl9UWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0VYVEhEUl9PRkZTRVQsCi0gTkZUQV9FWFRIRFJfTEVOLAotIF9fTkZUQV9FWFRIRFJfTUFYCisgIE5GVEFfRVhUSERSX1VOU1BFQywKKyAgTkZUQV9FWFRIRFJfRFJFRywKKyAgTkZUQV9FWFRIRFJfVFlQRSwKKyAgTkZUQV9FWFRIRFJfT0ZGU0VULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUQV9FWFRIRFJfTEVOLAorICBfX05GVEFfRVhUSERSX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfRVhUSERSX01BWCAoX19ORlRBX0VYVEhEUl9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X21ldGFfa2V5cyB7Ci0gTkZUX01FVEFfTEVOLAotIE5GVF9NRVRBX1BST1RPQ09MLAorICBORlRfTUVUQV9MRU4sCisgIE5GVF9NRVRBX1BST1RPQ09MLAorICBORlRfTUVUQV9QUklPUklUWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX01FVEFfUFJJT1JJVFksCi0gTkZUX01FVEFfTUFSSywKLSBORlRfTUVUQV9JSUYsCi0gTkZUX01FVEFfT0lGLAorICBORlRfTUVUQV9NQVJLLAorICBORlRfTUVUQV9JSUYsCisgIE5GVF9NRVRBX09JRiwKKyAgTkZUX01FVEFfSUlGTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX01FVEFfSUlGTkFNRSwKLSBORlRfTUVUQV9PSUZOQU1FLAotIE5GVF9NRVRBX0lJRlRZUEUsCi0gTkZUX01FVEFfT0lGVFlQRSwKKyAgTkZUX01FVEFfT0lGTkFNRSwKKyAgTkZUX01FVEFfSUlGVFlQRSwKKyAgTkZUX01FVEFfT0lGVFlQRSwKKyAgTkZUX01FVEFfU0tVSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NRVRBX1NLVUlELAotIE5GVF9NRVRBX1NLR0lELAotIE5GVF9NRVRBX05GVFJBQ0UsCi0gTkZUX01FVEFfUlRDTEFTU0lELAorICBORlRfTUVUQV9TS0dJRCwKKyAgTkZUX01FVEFfTkZUUkFDRSwKKyAgTkZUX01FVEFfUlRDTEFTU0lELAorICBORlRfTUVUQV9TRUNNQVJLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTUVUQV9TRUNNQVJLLAotIE5GVF9NRVRBX05GUFJPVE8sCi0gTkZUX01FVEFfTDRQUk9UTywKKyAgTkZUX01FVEFfTkZQUk9UTywKKyAgTkZUX01FVEFfTDRQUk9UTywKKyAgTkZUX01FVEFfQlJJX0lJRk5BTUUsCisgIE5GVF9NRVRBX0JSSV9PSUZOQU1FLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUX01FVEFfUEtUVFlQRSwKKyAgTkZUX01FVEFfQ1BVLAorICBORlRfTUVUQV9JSUZHUk9VUCwKKyAgTkZUX01FVEFfT0lGR1JPVVAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9tZXRhX2F0dHJpYnV0ZXMgewotIE5GVEFfTUVUQV9VTlNQRUMsCi0gTkZUQV9NRVRBX0RSRUcsCi0gTkZUQV9NRVRBX0tFWSwKKyAgTkZUQV9NRVRBX1VOU1BFQywKKyAgTkZUQV9NRVRBX0RSRUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfTUVUQV9TUkVHLAotIF9fTkZUQV9NRVRBX01BWAorICBORlRBX01FVEFfS0VZLAorICBORlRBX01FVEFfU1JFRywKKyAgX19ORlRBX01FVEFfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9NRVRBX01BWCAoX19ORlRBX01FVEFfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9jdF9rZXlzIHsKLSBORlRfQ1RfU1RBVEUsCi0gTkZUX0NUX0RJUkVDVElPTiwKLSBORlRfQ1RfU1RBVFVTLAorICBORlRfQ1RfU1RBVEUsCisgIE5GVF9DVF9ESVJFQ1RJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9DVF9NQVJLLAotIE5GVF9DVF9TRUNNQVJLLAotIE5GVF9DVF9FWFBJUkFUSU9OLAotIE5GVF9DVF9IRUxQRVIsCisgIE5GVF9DVF9TVEFUVVMsCisgIE5GVF9DVF9NQVJLLAorICBORlRfQ1RfU0VDTUFSSywKKyAgTkZUX0NUX0VYUElSQVRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9DVF9MM1BST1RPQ09MLAotIE5GVF9DVF9TUkMsCi0gTkZUX0NUX0RTVCwKLSBORlRfQ1RfUFJPVE9DT0wsCisgIE5GVF9DVF9IRUxQRVIsCisgIE5GVF9DVF9MM1BST1RPQ09MLAorICBORlRfQ1RfU1JDLAorICBORlRfQ1RfRFNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfQ1RfUFJPVE9fU1JDLAotIE5GVF9DVF9QUk9UT19EU1QsCisgIE5GVF9DVF9QUk9UT0NPTCwKKyAgTkZUX0NUX1BST1RPX1NSQywKKyAgTkZUX0NUX1BST1RPX0RTVCwKKyAgTkZUX0NUX0xBQkVMUywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBuZnRfY3RfYXR0cmlidXRlcyB7CisgIE5GVEFfQ1RfVU5TUEVDLAorICBORlRBX0NUX0RSRUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQ1RfVU5TUEVDLAotIE5GVEFfQ1RfRFJFRywKLSBORlRBX0NUX0tFWSwKLSBORlRBX0NUX0RJUkVDVElPTiwKKyAgTkZUQV9DVF9LRVksCisgIE5GVEFfQ1RfRElSRUNUSU9OLAorICBORlRBX0NUX1NSRUcsCisgIF9fTkZUQV9DVF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9DVF9TUkVHLAotIF9fTkZUQV9DVF9NQVgKIH07CiAjZGVmaW5lIE5GVEFfQ1RfTUFYIChfX05GVEFfQ1RfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9saW1pdF9hdHRyaWJ1dGVzIHsKLSBORlRBX0xJTUlUX1VOU1BFQywKLSBORlRBX0xJTUlUX1JBVEUsCi0gTkZUQV9MSU1JVF9VTklULAorICBORlRBX0xJTUlUX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORlRBX0xJTUlUX01BWAorICBORlRBX0xJTUlUX1JBVEUsCisgIE5GVEFfTElNSVRfVU5JVCwKKyAgX19ORlRBX0xJTUlUX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfTElNSVRfTUFYIChfX05GVEFfTElNSVRfTUFYIC0gMSkKIGVudW0gbmZ0X2NvdW50ZXJfYXR0cmlidXRlcyB7CisgIE5GVEFfQ09VTlRFUl9VTlNQRUMsCisgIE5GVEFfQ09VTlRFUl9CWVRFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9DT1VOVEVSX1VOU1BFQywKLSBORlRBX0NPVU5URVJfQllURVMsCi0gTkZUQV9DT1VOVEVSX1BBQ0tFVFMsCi0gX19ORlRBX0NPVU5URVJfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0NPVU5URVJfUEFDS0VUUywKKyAgX19ORlRBX0NPVU5URVJfTUFYCiB9OwogI2RlZmluZSBORlRBX0NPVU5URVJfTUFYIChfX05GVEFfQ09VTlRFUl9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2xvZ19hdHRyaWJ1dGVzIHsKLSBORlRBX0xPR19VTlNQRUMsCisgIE5GVEFfTE9HX1VOU1BFQywKKyAgTkZUQV9MT0dfR1JPVVAsCisgIE5GVEFfTE9HX1BSRUZJWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9MT0dfR1JPVVAsCi0gTkZUQV9MT0dfUFJFRklYLAotIE5GVEFfTE9HX1NOQVBMRU4sCi0gTkZUQV9MT0dfUVRIUkVTSE9MRCwKKyAgTkZUQV9MT0dfU05BUExFTiwKKyAgTkZUQV9MT0dfUVRIUkVTSE9MRCwKKyAgTkZUQV9MT0dfTEVWRUwsCisgIE5GVEFfTE9HX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GVEFfTE9HX01BWAorICBfX05GVEFfTE9HX01BWAogfTsKICNkZWZpbmUgTkZUQV9MT0dfTUFYIChfX05GVEFfTE9HX01BWCAtIDEpCiBlbnVtIG5mdF9xdWV1ZV9hdHRyaWJ1dGVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9RVUVVRV9VTlNQRUMsCi0gTkZUQV9RVUVVRV9OVU0sCi0gTkZUQV9RVUVVRV9UT1RBTCwKLSBORlRBX1FVRVVFX0ZMQUdTLAorICBORlRBX1FVRVVFX1VOU1BFQywKKyAgTkZUQV9RVUVVRV9OVU0sCisgIE5GVEFfUVVFVUVfVE9UQUwsCisgIE5GVEFfUVVFVUVfRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZUQV9RVUVVRV9NQVgKKyAgX19ORlRBX1FVRVVFX01BWAogfTsKICNkZWZpbmUgTkZUQV9RVUVVRV9NQVggKF9fTkZUQV9RVUVVRV9NQVggLSAxKQogI2RlZmluZSBORlRfUVVFVUVfRkxBR19CWVBBU1MgMHgwMQpAQCAtNDE5LDM2ICs0NTQsNjMgQEAKICNkZWZpbmUgTkZUX1FVRVVFX0ZMQUdfQ1BVX0ZBTk9VVCAweDAyCiAjZGVmaW5lIE5GVF9RVUVVRV9GTEFHX01BU0sgMHgwMwogZW51bSBuZnRfcmVqZWN0X3R5cGVzIHsKLSBORlRfUkVKRUNUX0lDTVBfVU5SRUFDSCwKKyAgTkZUX1JFSkVDVF9JQ01QX1VOUkVBQ0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9SRUpFQ1RfVENQX1JTVCwKKyAgTkZUX1JFSkVDVF9UQ1BfUlNULAorICBORlRfUkVKRUNUX0lDTVBYX1VOUkVBQ0gsCiB9OworZW51bSBuZnRfcmVqZWN0X2luZXRfY29kZSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfUkVKRUNUX0lDTVBYX05PX1JPVVRFID0gMCwKKyAgTkZUX1JFSkVDVF9JQ01QWF9QT1JUX1VOUkVBQ0gsCisgIE5GVF9SRUpFQ1RfSUNNUFhfSE9TVF9VTlJFQUNILAorICBORlRfUkVKRUNUX0lDTVBYX0FETUlOX1BST0hJQklURUQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX05GVF9SRUpFQ1RfSUNNUFhfTUFYCit9OworI2RlZmluZSBORlRfUkVKRUNUX0lDTVBYX01BWCAoX19ORlRfUkVKRUNUX0lDTVBYX01BWCAtIDEpCiBlbnVtIG5mdF9yZWplY3RfYXR0cmlidXRlcyB7Ci0gTkZUQV9SRUpFQ1RfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1JFSkVDVF9UWVBFLAotIE5GVEFfUkVKRUNUX0lDTVBfQ09ERSwKLSBfX05GVEFfUkVKRUNUX01BWAorICBORlRBX1JFSkVDVF9VTlNQRUMsCisgIE5GVEFfUkVKRUNUX1RZUEUsCisgIE5GVEFfUkVKRUNUX0lDTVBfQ09ERSwKKyAgX19ORlRBX1JFSkVDVF9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9SRUpFQ1RfTUFYIChfX05GVEFfUkVKRUNUX01BWCAtIDEpCiBlbnVtIG5mdF9uYXRfdHlwZXMgewotIE5GVF9OQVRfU05BVCwKLSBORlRfTkFUX0ROQVQsCisgIE5GVF9OQVRfU05BVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9OQVRfRE5BVCwKIH07CiBlbnVtIG5mdF9uYXRfYXR0cmlidXRlcyB7Ci0gTkZUQV9OQVRfVU5TUEVDLAotIE5GVEFfTkFUX1RZUEUsCisgIE5GVEFfTkFUX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9OQVRfRkFNSUxZLAotIE5GVEFfTkFUX1JFR19BRERSX01JTiwKLSBORlRBX05BVF9SRUdfQUREUl9NQVgsCi0gTkZUQV9OQVRfUkVHX1BST1RPX01JTiwKKyAgTkZUQV9OQVRfVFlQRSwKKyAgTkZUQV9OQVRfRkFNSUxZLAorICBORlRBX05BVF9SRUdfQUREUl9NSU4sCisgIE5GVEFfTkFUX1JFR19BRERSX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9OQVRfUkVHX1BST1RPX01BWCwKLSBfX05GVEFfTkFUX01BWAorICBORlRBX05BVF9SRUdfUFJPVE9fTUlOLAorICBORlRBX05BVF9SRUdfUFJPVE9fTUFYLAorICBORlRBX05BVF9GTEFHUywKKyAgX19ORlRBX05BVF9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORlRBX05BVF9NQVggKF9fTkZUQV9OQVRfTUFYIC0gMSkKK2VudW0gbmZ0X21hc3FfYXR0cmlidXRlcyB7CisgIE5GVEFfTUFTUV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX01BU1FfRkxBR1MsCisgIF9fTkZUQV9NQVNRX01BWAorfTsKKyNkZWZpbmUgTkZUQV9NQVNRX01BWCAoX19ORlRBX01BU1FfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIG5mdF9nZW5fYXR0cmlidXRlcyB7CisgIE5GVEFfR0VOX1VOU1BFQywKKyAgTkZUQV9HRU5fSUQsCisgIF9fTkZUQV9HRU5fTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgTkZUQV9HRU5fTUFYIChfX05GVEFfR0VOX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlc19jb21wYXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlc19jb21wYXQuaAppbmRleCAzMzY3ZGFlLi5hZTFkMzM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXNfY29tcGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfdGFibGVzX2NvbXBhdC5oCkBAIC0xOSwzOSArMTksMzkgQEAKICNpZm5kZWYgX05GVF9DT01QQVRfTkZORVRMSU5LX0hfCiAjZGVmaW5lIF9ORlRfQ09NUEFUX05GTkVUTElOS19IXwogZW51bSBuZnRfdGFyZ2V0X2F0dHJpYnV0ZXMgewotIE5GVEFfVEFSR0VUX1VOU1BFQywKKyAgTkZUQV9UQVJHRVRfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1RBUkdFVF9OQU1FLAotIE5GVEFfVEFSR0VUX1JFViwKLSBORlRBX1RBUkdFVF9JTkZPLAotIF9fTkZUQV9UQVJHRVRfTUFYCisgIE5GVEFfVEFSR0VUX05BTUUsCisgIE5GVEFfVEFSR0VUX1JFViwKKyAgTkZUQV9UQVJHRVRfSU5GTywKKyAgX19ORlRBX1RBUkdFVF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORlRBX1RBUkdFVF9NQVggKF9fTkZUQV9UQVJHRVRfTUFYIC0gMSkKIGVudW0gbmZ0X21hdGNoX2F0dHJpYnV0ZXMgewotIE5GVEFfTUFUQ0hfVU5TUEVDLAorICBORlRBX01BVENIX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9NQVRDSF9OQU1FLAotIE5GVEFfTUFUQ0hfUkVWLAotIE5GVEFfTUFUQ0hfSU5GTywKLSBfX05GVEFfTUFUQ0hfTUFYCisgIE5GVEFfTUFUQ0hfTkFNRSwKKyAgTkZUQV9NQVRDSF9SRVYsCisgIE5GVEFfTUFUQ0hfSU5GTywKKyAgX19ORlRBX01BVENIX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GVEFfTUFUQ0hfTUFYIChfX05GVEFfTUFUQ0hfTUFYIC0gMSkKICNkZWZpbmUgTkZUX0NPTVBBVF9OQU1FX01BWCAzMgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GTkxfTVNHX0NPTVBBVF9HRVQsCi0gTkZOTF9NU0dfQ09NUEFUX01BWAorICBORk5MX01TR19DT01QQVRfR0VULAorICBORk5MX01TR19DT01QQVRfTUFYCiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQ09NUEFUX1VOU1BFQyA9IDAsCi0gTkZUQV9DT01QQVRfTkFNRSwKLSBORlRBX0NPTVBBVF9SRVYsCi0gTkZUQV9DT01QQVRfVFlQRSwKKyAgTkZUQV9DT01QQVRfVU5TUEVDID0gMCwKKyAgTkZUQV9DT01QQVRfTkFNRSwKKyAgTkZUQV9DT01QQVRfUkVWLAorICBORlRBX0NPTVBBVF9UWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GVEFfQ09NUEFUX01BWCwKKyAgX19ORlRBX0NPTVBBVF9NQVgsCiB9OwogI2RlZmluZSBORlRBX0NPTVBBVF9NQVggKF9fTkZUQV9DT01QQVRfTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaAppbmRleCBjMDRmNjJjLi5lYTA2ZjA4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaApAQCAtMjIsNTcgKzIyLDU5IEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb21wYXQuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mbmV0bGlua19ncm91cHMgewotIE5GTkxHUlBfTk9ORSwKKyAgTkZOTEdSUF9OT05FLAogI2RlZmluZSBORk5MR1JQX05PTkUgTkZOTEdSUF9OT05FCi0gTkZOTEdSUF9DT05OVFJBQ0tfTkVXLAorICBORk5MR1JQX0NPTk5UUkFDS19ORVcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MR1JQX0NPTk5UUkFDS19ORVcgTkZOTEdSUF9DT05OVFJBQ0tfTkVXCi0gTkZOTEdSUF9DT05OVFJBQ0tfVVBEQVRFLAorICBORk5MR1JQX0NPTk5UUkFDS19VUERBVEUsCiAjZGVmaW5lIE5GTkxHUlBfQ09OTlRSQUNLX1VQREFURSBORk5MR1JQX0NPTk5UUkFDS19VUERBVEUKLSBORk5MR1JQX0NPTk5UUkFDS19ERVNUUk9ZLAorICBORk5MR1JQX0NPTk5UUkFDS19ERVNUUk9ZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTEdSUF9DT05OVFJBQ0tfREVTVFJPWSBORk5MR1JQX0NPTk5UUkFDS19ERVNUUk9ZCi0gTkZOTEdSUF9DT05OVFJBQ0tfRVhQX05FVywKKyAgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX05FVywKICNkZWZpbmUgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX05FVyBORk5MR1JQX0NPTk5UUkFDS19FWFBfTkVXCi0gTkZOTEdSUF9DT05OVFJBQ0tfRVhQX1VQREFURSwKKyAgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX1VQREFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxHUlBfQ09OTlRSQUNLX0VYUF9VUERBVEUgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX1VQREFURQotIE5GTkxHUlBfQ09OTlRSQUNLX0VYUF9ERVNUUk9ZLAorICBORk5MR1JQX0NPTk5UUkFDS19FWFBfREVTVFJPWSwKICNkZWZpbmUgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX0RFU1RST1kgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX0RFU1RST1kKLSBORk5MR1JQX05GVEFCTEVTLAorICBORk5MR1JQX05GVEFCTEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTEdSUF9ORlRBQkxFUyBORk5MR1JQX05GVEFCTEVTCi0gX19ORk5MR1JQX01BWCwKKyAgTkZOTEdSUF9BQ0NUX1FVT1RBLAorI2RlZmluZSBORk5MR1JQX0FDQ1RfUVVPVEEgTkZOTEdSUF9BQ0NUX1FVT1RBCisgIF9fTkZOTEdSUF9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZOTEdSUF9NQVggKF9fTkZOTEdSUF9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZmdlbm1zZyB7Ci0gX191OCBuZmdlbl9mYW1pbHk7Ci0gX191OCB2ZXJzaW9uOwotIF9fYmUxNiByZXNfaWQ7CisgIF9fdTggbmZnZW5fZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB2ZXJzaW9uOworICBfX2JlMTYgcmVzX2lkOwogfTsKICNkZWZpbmUgTkZORVRMSU5LX1YwIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxfU1VCU1lTX0lEKHgpICgoeCAmIDB4ZmYwMCkgPj4gOCkKICNkZWZpbmUgTkZOTF9NU0dfVFlQRSh4KSAoeCAmIDB4MDBmZikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxfU1VCU1lTX05PTkUgMAogI2RlZmluZSBORk5MX1NVQlNZU19DVE5FVExJTksgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfQ1RORVRMSU5LX0VYUCAyCiAjZGVmaW5lIE5GTkxfU1VCU1lTX1FVRVVFIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxfU1VCU1lTX1VMT0cgNAogI2RlZmluZSBORk5MX1NVQlNZU19PU0YgNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfSVBTRVQgNgogI2RlZmluZSBORk5MX1NVQlNZU19BQ0NUIDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxfU1VCU1lTX0NUTkVUTElOS19USU1FT1VUIDgKICNkZWZpbmUgTkZOTF9TVUJTWVNfQ1RIRUxQRVIgOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfTkZUQUJMRVMgMTAKICNkZWZpbmUgTkZOTF9TVUJTWVNfTkZUX0NPTVBBVCAxMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfQ09VTlQgMTIKICNkZWZpbmUgTkZOTF9NU0dfQkFUQ0hfQkVHSU4gTkxNU0dfTUlOX1RZUEUKLSNkZWZpbmUgTkZOTF9NU0dfQkFUQ0hfRU5EIE5MTVNHX01JTl9UWVBFKzEKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkZOTF9NU0dfQkFUQ0hfRU5EIE5MTVNHX01JTl9UWVBFICsgMQorI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfYWNjdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2FjY3QuaAppbmRleCAwMWYxM2VmLi4yYjcxMTEyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfYWNjdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19hY2N0LmgKQEAgLTIzLDIzICsyMyw0MyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogZW51bSBuZm5sX2FjY3RfbXNnX3R5cGVzIHsKLSBORk5MX01TR19BQ0NUX05FVywKLSBORk5MX01TR19BQ0NUX0dFVCwKKyAgTkZOTF9NU0dfQUNDVF9ORVcsCisgIE5GTkxfTVNHX0FDQ1RfR0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORk5MX01TR19BQ0NUX0dFVF9DVFJaRVJPLAotIE5GTkxfTVNHX0FDQ1RfREVMLAotIE5GTkxfTVNHX0FDQ1RfTUFYCisgIE5GTkxfTVNHX0FDQ1RfR0VUX0NUUlpFUk8sCisgIE5GTkxfTVNHX0FDQ1RfREVMLAorICBORk5MX01TR19BQ0NUX09WRVJRVU9UQSwKKyAgTkZOTF9NU0dfQUNDVF9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OworZW51bSBuZm5sX2FjY3RfZmxhZ3MgeworICBORkFDQ1RfRl9RVU9UQV9QS1RTID0gKDEgPDwgMCksCisgIE5GQUNDVF9GX1FVT1RBX0JZVEVTID0gKDEgPDwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORkFDQ1RfRl9PVkVSUVVPVEEgPSAoMSA8PCAyKSwKK307CiBlbnVtIG5mbmxfYWNjdF90eXBlIHsKLSBORkFDQ1RfVU5TUEVDLAotIE5GQUNDVF9OQU1FLAotIE5GQUNDVF9QS1RTLAorICBORkFDQ1RfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkFDQ1RfQllURVMsCi0gTkZBQ0NUX1VTRSwKLSBfX05GQUNDVF9NQVgKKyAgTkZBQ0NUX05BTUUsCisgIE5GQUNDVF9QS1RTLAorICBORkFDQ1RfQllURVMsCisgIE5GQUNDVF9VU0UsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORkFDQ1RfRkxBR1MsCisgIE5GQUNDVF9RVU9UQSwKKyAgTkZBQ0NUX0ZJTFRFUiwKKyAgX19ORkFDQ1RfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgTkZBQ0NUX01BWCAoX19ORkFDQ1RfTUFYIC0gMSkKK2VudW0gbmZubF9hdHRyX2ZpbHRlcl90eXBlIHsKKyAgTkZBQ0NUX0ZJTFRFUl9VTlNQRUMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORkFDQ1RfRklMVEVSX01BU0ssCisgIE5GQUNDVF9GSUxURVJfVkFMVUUsCisgIF9fTkZBQ0NUX0ZJTFRFUl9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBORkFDQ1RfTUFYIChfX05GQUNDVF9NQVggLSAxKQorI2RlZmluZSBORkFDQ1RfRklMVEVSX01BWCAoX19ORkFDQ1RfRklMVEVSX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb21wYXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb21wYXQuaAppbmRleCAwMTBiOTU3Li4xNzYxYzQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29tcGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2NvbXBhdC5oCkBAIC0yOCw4ICsyOCw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORl9ORVRMSU5LX0NPTk5UUkFDS19FWFBfREVTVFJPWSAweDAwMDAwMDIwCiBzdHJ1Y3QgbmZhdHRyIHsKLSBfX3UxNiBuZmFfbGVuOwotIF9fdTE2IG5mYV90eXBlOworICBfX3UxNiBuZmFfbGVuOworICBfX3UxNiBuZmFfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORk5MX05GQV9ORVNUIDB4ODAwMApAQCAtMzcsMTggKzM3LDIxIEBACiAjZGVmaW5lIE5GQV9BTElHTlRPIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQV9BTElHTihsZW4pICgoKGxlbikgKyBORkFfQUxJR05UTyAtIDEpICYgfihORkFfQUxJR05UTyAtIDEpKQotI2RlZmluZSBORkFfT0sobmZhLGxlbikgKChsZW4pID4gMCAmJiAobmZhKS0+bmZhX2xlbiA+PSBzaXplb2Yoc3RydWN0IG5mYXR0cikgICAmJiAobmZhKS0+bmZhX2xlbiA8PSAobGVuKSkKLSNkZWZpbmUgTkZBX05FWFQobmZhLGF0dHJsZW4pICgoYXR0cmxlbikgLT0gTkZBX0FMSUdOKChuZmEpLT5uZmFfbGVuKSwgICAoc3RydWN0IG5mYXR0ciAqKSgoKGNoYXIgKikobmZhKSkgKyBORkFfQUxJR04oKG5mYSktPm5mYV9sZW4pKSkKKyNkZWZpbmUgTkZBX09LKG5mYSxsZW4pICgobGVuKSA+IDAgJiYgKG5mYSktPm5mYV9sZW4gPj0gc2l6ZW9mKHN0cnVjdCBuZmF0dHIpICYmIChuZmEpLT5uZmFfbGVuIDw9IChsZW4pKQorI2RlZmluZSBORkFfTkVYVChuZmEsYXR0cmxlbikgKChhdHRybGVuKSAtPSBORkFfQUxJR04oKG5mYSktPm5mYV9sZW4pLCAoc3RydWN0IG5mYXR0ciAqKSAoKChjaGFyICopIChuZmEpKSArIE5GQV9BTElHTigobmZhKS0+bmZhX2xlbikpKQogI2RlZmluZSBORkFfTEVOR1RIKGxlbikgKE5GQV9BTElHTihzaXplb2Yoc3RydWN0IG5mYXR0cikpICsgKGxlbikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkFfU1BBQ0UobGVuKSBORkFfQUxJR04oTkZBX0xFTkdUSChsZW4pKQotI2RlZmluZSBORkFfREFUQShuZmEpICgodm9pZCAqKSgoKGNoYXIgKikobmZhKSkgKyBORkFfTEVOR1RIKDApKSkKLSNkZWZpbmUgTkZBX1BBWUxPQUQobmZhKSAoKGludCkoKG5mYSktPm5mYV9sZW4pIC0gTkZBX0xFTkdUSCgwKSkKLSNkZWZpbmUgTkZBX05FU1Qoc2tiLCB0eXBlKSAgKHsgc3RydWN0IG5mYXR0ciAqX19zdGFydCA9IChzdHJ1Y3QgbmZhdHRyICopc2tiX3RhaWxfcG9pbnRlcihza2IpOyAgIE5GQV9QVVQoc2tiLCAoTkZOTF9ORkFfTkVTVCB8IHR5cGUpLCAwLCBOVUxMKTsgICBfX3N0YXJ0OyB9KQorI2RlZmluZSBORkFfREFUQShuZmEpICgodm9pZCAqKSAoKChjaGFyICopIChuZmEpKSArIE5GQV9MRU5HVEgoMCkpKQorI2RlZmluZSBORkFfUEFZTE9BRChuZmEpICgoaW50KSAoKG5mYSktPm5mYV9sZW4pIC0gTkZBX0xFTkdUSCgwKSkKKyNkZWZpbmUgTkZBX05FU1Qoc2tiLHR5cGUpIFwKKyh7IHN0cnVjdCBuZmF0dHIgKiBfX3N0YXJ0ID0gKHN0cnVjdCBuZmF0dHIgKikgc2tiX3RhaWxfcG9pbnRlcihza2IpOyBORkFfUFVUKHNrYiwgKE5GTkxfTkZBX05FU1QgfCB0eXBlKSwgMCwgTlVMTCk7IF9fc3RhcnQ7IH0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBORkFfTkVTVF9FTkQoc2tiLCBzdGFydCkgICh7IChzdGFydCktPm5mYV9sZW4gPSBza2JfdGFpbF9wb2ludGVyKHNrYikgLSAodW5zaWduZWQgY2hhciAqKShzdGFydCk7ICAgKHNrYiktPmxlbjsgfSkKLSNkZWZpbmUgTkZBX05FU1RfQ0FOQ0VMKHNrYiwgc3RhcnQpICAoeyBpZiAoc3RhcnQpICAgc2tiX3RyaW0oc2tiLCAodW5zaWduZWQgY2hhciAqKSAoc3RhcnQpIC0gKHNrYiktPmRhdGEpOyAgIC0xOyB9KQotI2RlZmluZSBORk1fTkZBKG4pICgoc3RydWN0IG5mYXR0ciAqKSgoKGNoYXIgKikobikpICAgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IG5mZ2VubXNnKSkpKQorI2RlZmluZSBORkFfTkVTVF9FTkQoc2tiLHN0YXJ0KSBcCisoeyAoc3RhcnQpLT5uZmFfbGVuID0gc2tiX3RhaWxfcG9pbnRlcihza2IpIC0gKHVuc2lnbmVkIGNoYXIgKikgKHN0YXJ0KTsgKHNrYiktPmxlbjsgfSkKKyNkZWZpbmUgTkZBX05FU1RfQ0FOQ0VMKHNrYixzdGFydCkgXAorKHsgaWYoc3RhcnQpIHNrYl90cmltKHNrYiwgKHVuc2lnbmVkIGNoYXIgKikgKHN0YXJ0KSAtIChza2IpLT5kYXRhKTsgLSAxOyB9KQorI2RlZmluZSBORk1fTkZBKG4pICgoc3RydWN0IG5mYXR0ciAqKSAoKChjaGFyICopIChuKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IG5mZ2VubXNnKSkpKQogI2RlZmluZSBORk1fUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sIHNpemVvZihzdHJ1Y3QgbmZnZW5tc2cpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2Nvbm50cmFjay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2Nvbm50cmFjay5oCmluZGV4IDJiMjJjNGYuLjg4ZTQwNGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb25udHJhY2suaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29ubnRyYWNrLmgKQEAgLTIxLDI5MiArMjEsMjkyIEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oPgogZW51bSBjbnRsX21zZ190eXBlcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1ROTF9NU0dfQ1RfTkVXLAotIElQQ1ROTF9NU0dfQ1RfR0VULAotIElQQ1ROTF9NU0dfQ1RfREVMRVRFLAotIElQQ1ROTF9NU0dfQ1RfR0VUX0NUUlpFUk8sCisgIElQQ1ROTF9NU0dfQ1RfTkVXLAorICBJUENUTkxfTVNHX0NUX0dFVCwKKyAgSVBDVE5MX01TR19DVF9ERUxFVEUsCisgIElQQ1ROTF9NU0dfQ1RfR0VUX0NUUlpFUk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1ROTF9NU0dfQ1RfR0VUX1NUQVRTX0NQVSwKLSBJUENUTkxfTVNHX0NUX0dFVF9TVEFUUywKLSBJUENUTkxfTVNHX0NUX0dFVF9EWUlORywKLSBJUENUTkxfTVNHX0NUX0dFVF9VTkNPTkZJUk1FRCwKKyAgSVBDVE5MX01TR19DVF9HRVRfU1RBVFNfQ1BVLAorICBJUENUTkxfTVNHX0NUX0dFVF9TVEFUUywKKyAgSVBDVE5MX01TR19DVF9HRVRfRFlJTkcsCisgIElQQ1ROTF9NU0dfQ1RfR0VUX1VOQ09ORklSTUVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUENUTkxfTVNHX01BWAorICBJUENUTkxfTVNHX01BWAogfTsKIGVudW0gY3RubF9leHBfbXNnX3R5cGVzIHsKLSBJUENUTkxfTVNHX0VYUF9ORVcsCisgIElQQ1ROTF9NU0dfRVhQX05FVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVE5MX01TR19FWFBfR0VULAotIElQQ1ROTF9NU0dfRVhQX0RFTEVURSwKLSBJUENUTkxfTVNHX0VYUF9HRVRfU1RBVFNfQ1BVLAotIElQQ1ROTF9NU0dfRVhQX01BWAorICBJUENUTkxfTVNHX0VYUF9HRVQsCisgIElQQ1ROTF9NU0dfRVhQX0RFTEVURSwKKyAgSVBDVE5MX01TR19FWFBfR0VUX1NUQVRTX0NQVSwKKyAgSVBDVE5MX01TR19FWFBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gY3RhdHRyX3R5cGUgewotIENUQV9VTlNQRUMsCi0gQ1RBX1RVUExFX09SSUcsCisgIENUQV9VTlNQRUMsCisgIENUQV9UVVBMRV9PUklHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVFVQTEVfUkVQTFksCi0gQ1RBX1NUQVRVUywKLSBDVEFfUFJPVE9JTkZPLAotIENUQV9IRUxQLAorICBDVEFfVFVQTEVfUkVQTFksCisgIENUQV9TVEFUVVMsCisgIENUQV9QUk9UT0lORk8sCisgIENUQV9IRUxQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfTkFUX1NSQywKKyAgQ1RBX05BVF9TUkMsCiAjZGVmaW5lIENUQV9OQVQgQ1RBX05BVF9TUkMKLSBDVEFfVElNRU9VVCwKLSBDVEFfTUFSSywKKyAgQ1RBX1RJTUVPVVQsCisgIENUQV9NQVJLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfQ09VTlRFUlNfT1JJRywKLSBDVEFfQ09VTlRFUlNfUkVQTFksCi0gQ1RBX1VTRSwKLSBDVEFfSUQsCisgIENUQV9DT1VOVEVSU19PUklHLAorICBDVEFfQ09VTlRFUlNfUkVQTFksCisgIENUQV9VU0UsCisgIENUQV9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX05BVF9EU1QsCi0gQ1RBX1RVUExFX01BU1RFUiwKLSBDVEFfU0VRX0FESl9PUklHLAotIENUQV9OQVRfU0VRX0FESl9PUklHID0gQ1RBX1NFUV9BREpfT1JJRywKKyAgQ1RBX05BVF9EU1QsCisgIENUQV9UVVBMRV9NQVNURVIsCisgIENUQV9TRVFfQURKX09SSUcsCisgIENUQV9OQVRfU0VRX0FESl9PUklHID0gQ1RBX1NFUV9BREpfT1JJRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NFUV9BREpfUkVQTFksCi0gQ1RBX05BVF9TRVFfQURKX1JFUExZID0gQ1RBX1NFUV9BREpfUkVQTFksCi0gQ1RBX1NFQ01BUkssCi0gQ1RBX1pPTkUsCisgIENUQV9TRVFfQURKX1JFUExZLAorICBDVEFfTkFUX1NFUV9BREpfUkVQTFkgPSBDVEFfU0VRX0FESl9SRVBMWSwKKyAgQ1RBX1NFQ01BUkssCisgIENUQV9aT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU0VDQ1RYLAotIENUQV9USU1FU1RBTVAsCi0gQ1RBX01BUktfTUFTSywKLSBDVEFfTEFCRUxTLAorICBDVEFfU0VDQ1RYLAorICBDVEFfVElNRVNUQU1QLAorICBDVEFfTUFSS19NQVNLLAorICBDVEFfTEFCRUxTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfTEFCRUxTX01BU0ssCi0gX19DVEFfTUFYCisgIENUQV9MQUJFTFNfTUFTSywKKyAgX19DVEFfTUFYCiB9OwogI2RlZmluZSBDVEFfTUFYIChfX0NUQV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY3RhdHRyX3R1cGxlIHsKLSBDVEFfVFVQTEVfVU5TUEVDLAotIENUQV9UVVBMRV9JUCwKLSBDVEFfVFVQTEVfUFJPVE8sCisgIENUQV9UVVBMRV9VTlNQRUMsCisgIENUQV9UVVBMRV9JUCwKKyAgQ1RBX1RVUExFX1BST1RPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9UVVBMRV9NQVgKKyAgX19DVEFfVFVQTEVfTUFYCiB9OwogI2RlZmluZSBDVEFfVFVQTEVfTUFYIChfX0NUQV9UVVBMRV9NQVggLSAxKQogZW51bSBjdGF0dHJfaXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfSVBfVU5TUEVDLAotIENUQV9JUF9WNF9TUkMsCi0gQ1RBX0lQX1Y0X0RTVCwKLSBDVEFfSVBfVjZfU1JDLAorICBDVEFfSVBfVU5TUEVDLAorICBDVEFfSVBfVjRfU1JDLAorICBDVEFfSVBfVjRfRFNULAorICBDVEFfSVBfVjZfU1JDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfSVBfVjZfRFNULAotIF9fQ1RBX0lQX01BWAorICBDVEFfSVBfVjZfRFNULAorICBfX0NUQV9JUF9NQVgKIH07CiAjZGVmaW5lIENUQV9JUF9NQVggKF9fQ1RBX0lQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjdGF0dHJfbDRwcm90byB7Ci0gQ1RBX1BST1RPX1VOU1BFQywKLSBDVEFfUFJPVE9fTlVNLAotIENUQV9QUk9UT19TUkNfUE9SVCwKKyAgQ1RBX1BST1RPX1VOU1BFQywKKyAgQ1RBX1BST1RPX05VTSwKKyAgQ1RBX1BST1RPX1NSQ19QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfUFJPVE9fRFNUX1BPUlQsCi0gQ1RBX1BST1RPX0lDTVBfSUQsCi0gQ1RBX1BST1RPX0lDTVBfVFlQRSwKLSBDVEFfUFJPVE9fSUNNUF9DT0RFLAorICBDVEFfUFJPVE9fRFNUX1BPUlQsCisgIENUQV9QUk9UT19JQ01QX0lELAorICBDVEFfUFJPVE9fSUNNUF9UWVBFLAorICBDVEFfUFJPVE9fSUNNUF9DT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfUFJPVE9fSUNNUFY2X0lELAotIENUQV9QUk9UT19JQ01QVjZfVFlQRSwKLSBDVEFfUFJPVE9fSUNNUFY2X0NPREUsCi0gX19DVEFfUFJPVE9fTUFYCisgIENUQV9QUk9UT19JQ01QVjZfSUQsCisgIENUQV9QUk9UT19JQ01QVjZfVFlQRSwKKyAgQ1RBX1BST1RPX0lDTVBWNl9DT0RFLAorICBfX0NUQV9QUk9UT19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDVEFfUFJPVE9fTUFYIChfX0NUQV9QUk9UT19NQVggLSAxKQogZW51bSBjdGF0dHJfcHJvdG9pbmZvIHsKLSBDVEFfUFJPVE9JTkZPX1VOU1BFQywKKyAgQ1RBX1BST1RPSU5GT19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9QUk9UT0lORk9fVENQLAotIENUQV9QUk9UT0lORk9fRENDUCwKLSBDVEFfUFJPVE9JTkZPX1NDVFAsCi0gX19DVEFfUFJPVE9JTkZPX01BWAorICBDVEFfUFJPVE9JTkZPX1RDUCwKKyAgQ1RBX1BST1RPSU5GT19EQ0NQLAorICBDVEFfUFJPVE9JTkZPX1NDVFAsCisgIF9fQ1RBX1BST1RPSU5GT19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDVEFfUFJPVE9JTkZPX01BWCAoX19DVEFfUFJPVE9JTkZPX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9wcm90b2luZm9fdGNwIHsKLSBDVEFfUFJPVE9JTkZPX1RDUF9VTlNQRUMsCisgIENUQV9QUk9UT0lORk9fVENQX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1BST1RPSU5GT19UQ1BfU1RBVEUsCi0gQ1RBX1BST1RPSU5GT19UQ1BfV1NDQUxFX09SSUdJTkFMLAotIENUQV9QUk9UT0lORk9fVENQX1dTQ0FMRV9SRVBMWSwKLSBDVEFfUFJPVE9JTkZPX1RDUF9GTEFHU19PUklHSU5BTCwKKyAgQ1RBX1BST1RPSU5GT19UQ1BfU1RBVEUsCisgIENUQV9QUk9UT0lORk9fVENQX1dTQ0FMRV9PUklHSU5BTCwKKyAgQ1RBX1BST1RPSU5GT19UQ1BfV1NDQUxFX1JFUExZLAorICBDVEFfUFJPVE9JTkZPX1RDUF9GTEFHU19PUklHSU5BTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1BST1RPSU5GT19UQ1BfRkxBR1NfUkVQTFksCi0gX19DVEFfUFJPVE9JTkZPX1RDUF9NQVgKKyAgQ1RBX1BST1RPSU5GT19UQ1BfRkxBR1NfUkVQTFksCisgIF9fQ1RBX1BST1RPSU5GT19UQ1BfTUFYCiB9OwogI2RlZmluZSBDVEFfUFJPVE9JTkZPX1RDUF9NQVggKF9fQ1RBX1BST1RPSU5GT19UQ1BfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9wcm90b2luZm9fZGNjcCB7Ci0gQ1RBX1BST1RPSU5GT19EQ0NQX1VOU1BFQywKLSBDVEFfUFJPVE9JTkZPX0RDQ1BfU1RBVEUsCi0gQ1RBX1BST1RPSU5GT19EQ0NQX1JPTEUsCisgIENUQV9QUk9UT0lORk9fRENDUF9VTlNQRUMsCisgIENUQV9QUk9UT0lORk9fRENDUF9TVEFURSwKKyAgQ1RBX1BST1RPSU5GT19EQ0NQX1JPTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9QUk9UT0lORk9fRENDUF9IQU5EU0hBS0VfU0VRLAotIF9fQ1RBX1BST1RPSU5GT19EQ0NQX01BWCwKKyAgQ1RBX1BST1RPSU5GT19EQ0NQX0hBTkRTSEFLRV9TRVEsCisgIF9fQ1RBX1BST1RPSU5GT19EQ0NQX01BWCwKIH07CiAjZGVmaW5lIENUQV9QUk9UT0lORk9fRENDUF9NQVggKF9fQ1RBX1BST1RPSU5GT19EQ0NQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjdGF0dHJfcHJvdG9pbmZvX3NjdHAgewotIENUQV9QUk9UT0lORk9fU0NUUF9VTlNQRUMsCi0gQ1RBX1BST1RPSU5GT19TQ1RQX1NUQVRFLAotIENUQV9QUk9UT0lORk9fU0NUUF9WVEFHX09SSUdJTkFMLAorICBDVEFfUFJPVE9JTkZPX1NDVFBfVU5TUEVDLAorICBDVEFfUFJPVE9JTkZPX1NDVFBfU1RBVEUsCisgIENUQV9QUk9UT0lORk9fU0NUUF9WVEFHX09SSUdJTkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfUFJPVE9JTkZPX1NDVFBfVlRBR19SRVBMWSwKLSBfX0NUQV9QUk9UT0lORk9fU0NUUF9NQVgKKyAgQ1RBX1BST1RPSU5GT19TQ1RQX1ZUQUdfUkVQTFksCisgIF9fQ1RBX1BST1RPSU5GT19TQ1RQX01BWAogfTsKICNkZWZpbmUgQ1RBX1BST1RPSU5GT19TQ1RQX01BWCAoX19DVEFfUFJPVE9JTkZPX1NDVFBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9jb3VudGVycyB7Ci0gQ1RBX0NPVU5URVJTX1VOU1BFQywKLSBDVEFfQ09VTlRFUlNfUEFDS0VUUywKLSBDVEFfQ09VTlRFUlNfQllURVMsCisgIENUQV9DT1VOVEVSU19VTlNQRUMsCisgIENUQV9DT1VOVEVSU19QQUNLRVRTLAorICBDVEFfQ09VTlRFUlNfQllURVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9DT1VOVEVSUzMyX1BBQ0tFVFMsCi0gQ1RBX0NPVU5URVJTMzJfQllURVMsCi0gX19DVEFfQ09VTlRFUlNfTUFYCisgIENUQV9DT1VOVEVSUzMyX1BBQ0tFVFMsCisgIENUQV9DT1VOVEVSUzMyX0JZVEVTLAorICBfX0NUQV9DT1VOVEVSU19NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfQ09VTlRFUlNfTUFYIChfX0NUQV9DT1VOVEVSU19NQVggLSAxKQogZW51bSBjdGF0dHJfdHN0YW1wIHsKLSBDVEFfVElNRVNUQU1QX1VOU1BFQywKLSBDVEFfVElNRVNUQU1QX1NUQVJULAorICBDVEFfVElNRVNUQU1QX1VOU1BFQywKKyAgQ1RBX1RJTUVTVEFNUF9TVEFSVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVTVEFNUF9TVE9QLAotIF9fQ1RBX1RJTUVTVEFNUF9NQVgKKyAgQ1RBX1RJTUVTVEFNUF9TVE9QLAorICBfX0NUQV9USU1FU1RBTVBfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRVNUQU1QX01BWCAoX19DVEFfVElNRVNUQU1QX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjdGF0dHJfbmF0IHsKLSBDVEFfTkFUX1VOU1BFQywKLSBDVEFfTkFUX1Y0X01JTklQLAorICBDVEFfTkFUX1VOU1BFQywKKyAgQ1RBX05BVF9WNF9NSU5JUCwKICNkZWZpbmUgQ1RBX05BVF9NSU5JUCBDVEFfTkFUX1Y0X01JTklQCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9OQVRfVjRfTUFYSVAsCisgIENUQV9OQVRfVjRfTUFYSVAsCiAjZGVmaW5lIENUQV9OQVRfTUFYSVAgQ1RBX05BVF9WNF9NQVhJUAotIENUQV9OQVRfUFJPVE8sCi0gQ1RBX05BVF9WNl9NSU5JUCwKKyAgQ1RBX05BVF9QUk9UTywKKyAgQ1RBX05BVF9WNl9NSU5JUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX05BVF9WNl9NQVhJUCwKLSBfX0NUQV9OQVRfTUFYCisgIENUQV9OQVRfVjZfTUFYSVAsCisgIF9fQ1RBX05BVF9NQVgKIH07CiAjZGVmaW5lIENUQV9OQVRfTUFYIChfX0NUQV9OQVRfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9wcm90b25hdCB7Ci0gQ1RBX1BST1RPTkFUX1VOU1BFQywKLSBDVEFfUFJPVE9OQVRfUE9SVF9NSU4sCi0gQ1RBX1BST1RPTkFUX1BPUlRfTUFYLAorICBDVEFfUFJPVE9OQVRfVU5TUEVDLAorICBDVEFfUFJPVE9OQVRfUE9SVF9NSU4sCisgIENUQV9QUk9UT05BVF9QT1JUX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfUFJPVE9OQVRfTUFYCisgIF9fQ1RBX1BST1RPTkFUX01BWAogfTsKICNkZWZpbmUgQ1RBX1BST1RPTkFUX01BWCAoX19DVEFfUFJPVE9OQVRfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3NlcWFkaiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9TRVFBREpfVU5TUEVDLAotIENUQV9TRVFBREpfQ09SUkVDVElPTl9QT1MsCi0gQ1RBX1NFUUFESl9PRkZTRVRfQkVGT1JFLAotIENUQV9TRVFBREpfT0ZGU0VUX0FGVEVSLAorICBDVEFfU0VRQURKX1VOU1BFQywKKyAgQ1RBX1NFUUFESl9DT1JSRUNUSU9OX1BPUywKKyAgQ1RBX1NFUUFESl9PRkZTRVRfQkVGT1JFLAorICBDVEFfU0VRQURKX09GRlNFVF9BRlRFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfU0VRQURKX01BWAorICBfX0NUQV9TRVFBREpfTUFYCiB9OwogI2RlZmluZSBDVEFfU0VRQURKX01BWCAoX19DVEFfU0VRQURKX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9uYXRzZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfTkFUX1NFUV9VTlNQRUMsCi0gQ1RBX05BVF9TRVFfQ09SUkVDVElPTl9QT1MsCi0gQ1RBX05BVF9TRVFfT0ZGU0VUX0JFRk9SRSwKLSBDVEFfTkFUX1NFUV9PRkZTRVRfQUZURVIsCisgIENUQV9OQVRfU0VRX1VOU1BFQywKKyAgQ1RBX05BVF9TRVFfQ09SUkVDVElPTl9QT1MsCisgIENUQV9OQVRfU0VRX09GRlNFVF9CRUZPUkUsCisgIENUQV9OQVRfU0VRX09GRlNFVF9BRlRFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfTkFUX1NFUV9NQVgKKyAgX19DVEFfTkFUX1NFUV9NQVgKIH07CiAjZGVmaW5lIENUQV9OQVRfU0VRX01BWCAoX19DVEFfTkFUX1NFUV9NQVggLSAxKQogZW51bSBjdGF0dHJfZXhwZWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX0VYUEVDVF9VTlNQRUMsCi0gQ1RBX0VYUEVDVF9NQVNURVIsCi0gQ1RBX0VYUEVDVF9UVVBMRSwKLSBDVEFfRVhQRUNUX01BU0ssCisgIENUQV9FWFBFQ1RfVU5TUEVDLAorICBDVEFfRVhQRUNUX01BU1RFUiwKKyAgQ1RBX0VYUEVDVF9UVVBMRSwKKyAgQ1RBX0VYUEVDVF9NQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfRVhQRUNUX1RJTUVPVVQsCi0gQ1RBX0VYUEVDVF9JRCwKLSBDVEFfRVhQRUNUX0hFTFBfTkFNRSwKLSBDVEFfRVhQRUNUX1pPTkUsCisgIENUQV9FWFBFQ1RfVElNRU9VVCwKKyAgQ1RBX0VYUEVDVF9JRCwKKyAgQ1RBX0VYUEVDVF9IRUxQX05BTUUsCisgIENUQV9FWFBFQ1RfWk9ORSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX0VYUEVDVF9GTEFHUywKLSBDVEFfRVhQRUNUX0NMQVNTLAotIENUQV9FWFBFQ1RfTkFULAotIENUQV9FWFBFQ1RfRk4sCisgIENUQV9FWFBFQ1RfRkxBR1MsCisgIENUQV9FWFBFQ1RfQ0xBU1MsCisgIENUQV9FWFBFQ1RfTkFULAorICBDVEFfRVhQRUNUX0ZOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9FWFBFQ1RfTUFYCisgIF9fQ1RBX0VYUEVDVF9NQVgKIH07CiAjZGVmaW5lIENUQV9FWFBFQ1RfTUFYIChfX0NUQV9FWFBFQ1RfTUFYIC0gMSkKIGVudW0gY3RhdHRyX2V4cGVjdF9uYXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfRVhQRUNUX05BVF9VTlNQRUMsCi0gQ1RBX0VYUEVDVF9OQVRfRElSLAotIENUQV9FWFBFQ1RfTkFUX1RVUExFLAotIF9fQ1RBX0VYUEVDVF9OQVRfTUFYCisgIENUQV9FWFBFQ1RfTkFUX1VOU1BFQywKKyAgQ1RBX0VYUEVDVF9OQVRfRElSLAorICBDVEFfRVhQRUNUX05BVF9UVVBMRSwKKyAgX19DVEFfRVhQRUNUX05BVF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDVEFfRVhQRUNUX05BVF9NQVggKF9fQ1RBX0VYUEVDVF9OQVRfTUFYIC0gMSkKIGVudW0gY3RhdHRyX2hlbHAgewotIENUQV9IRUxQX1VOU1BFQywKKyAgQ1RBX0hFTFBfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfSEVMUF9OQU1FLAotIENUQV9IRUxQX0lORk8sCi0gX19DVEFfSEVMUF9NQVgKKyAgQ1RBX0hFTFBfTkFNRSwKKyAgQ1RBX0hFTFBfSU5GTywKKyAgX19DVEFfSEVMUF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfSEVMUF9NQVggKF9fQ1RBX0hFTFBfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3NlY2N0eCB7Ci0gQ1RBX1NFQ0NUWF9VTlNQRUMsCi0gQ1RBX1NFQ0NUWF9OQU1FLAorICBDVEFfU0VDQ1RYX1VOU1BFQywKKyAgQ1RBX1NFQ0NUWF9OQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9TRUNDVFhfTUFYCisgIF9fQ1RBX1NFQ0NUWF9NQVgKIH07CiAjZGVmaW5lIENUQV9TRUNDVFhfTUFYIChfX0NUQV9TRUNDVFhfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3N0YXRzX2NwdSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9TVEFUU19VTlNQRUMsCi0gQ1RBX1NUQVRTX1NFQVJDSEVELAotIENUQV9TVEFUU19GT1VORCwKLSBDVEFfU1RBVFNfTkVXLAorICBDVEFfU1RBVFNfVU5TUEVDLAorICBDVEFfU1RBVFNfU0VBUkNIRUQsCisgIENUQV9TVEFUU19GT1VORCwKKyAgQ1RBX1NUQVRTX05FVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NUQVRTX0lOVkFMSUQsCi0gQ1RBX1NUQVRTX0lHTk9SRSwKLSBDVEFfU1RBVFNfREVMRVRFLAotIENUQV9TVEFUU19ERUxFVEVfTElTVCwKKyAgQ1RBX1NUQVRTX0lOVkFMSUQsCisgIENUQV9TVEFUU19JR05PUkUsCisgIENUQV9TVEFUU19ERUxFVEUsCisgIENUQV9TVEFUU19ERUxFVEVfTElTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NUQVRTX0lOU0VSVCwKLSBDVEFfU1RBVFNfSU5TRVJUX0ZBSUxFRCwKLSBDVEFfU1RBVFNfRFJPUCwKLSBDVEFfU1RBVFNfRUFSTFlfRFJPUCwKKyAgQ1RBX1NUQVRTX0lOU0VSVCwKKyAgQ1RBX1NUQVRTX0lOU0VSVF9GQUlMRUQsCisgIENUQV9TVEFUU19EUk9QLAorICBDVEFfU1RBVFNfRUFSTFlfRFJPUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NUQVRTX0VSUk9SLAotIENUQV9TVEFUU19TRUFSQ0hfUkVTVEFSVCwKLSBfX0NUQV9TVEFUU19NQVgsCisgIENUQV9TVEFUU19FUlJPUiwKKyAgQ1RBX1NUQVRTX1NFQVJDSF9SRVNUQVJULAorICBfX0NUQV9TVEFUU19NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RBX1NUQVRTX01BWCAoX19DVEFfU1RBVFNfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3N0YXRzX2dsb2JhbCB7Ci0gQ1RBX1NUQVRTX0dMT0JBTF9VTlNQRUMsCi0gQ1RBX1NUQVRTX0dMT0JBTF9FTlRSSUVTLAorICBDVEFfU1RBVFNfR0xPQkFMX1VOU1BFQywKKyAgQ1RBX1NUQVRTX0dMT0JBTF9FTlRSSUVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9TVEFUU19HTE9CQUxfTUFYLAorICBfX0NUQV9TVEFUU19HTE9CQUxfTUFYLAogfTsKICNkZWZpbmUgQ1RBX1NUQVRTX0dMT0JBTF9NQVggKF9fQ1RBX1NUQVRTX0dMT0JBTF9NQVggLSAxKQogZW51bSBjdGF0dHJfZXhwZWN0X3N0YXRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NUQVRTX0VYUF9VTlNQRUMsCi0gQ1RBX1NUQVRTX0VYUF9ORVcsCi0gQ1RBX1NUQVRTX0VYUF9DUkVBVEUsCi0gQ1RBX1NUQVRTX0VYUF9ERUxFVEUsCisgIENUQV9TVEFUU19FWFBfVU5TUEVDLAorICBDVEFfU1RBVFNfRVhQX05FVywKKyAgQ1RBX1NUQVRTX0VYUF9DUkVBVEUsCisgIENUQV9TVEFUU19FWFBfREVMRVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9TVEFUU19FWFBfTUFYLAorICBfX0NUQV9TVEFUU19FWFBfTUFYLAogfTsKICNkZWZpbmUgQ1RBX1NUQVRTX0VYUF9NQVggKF9fQ1RBX1NUQVRTX0VYUF9NQVggLSAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY3RoZWxwZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdGhlbHBlci5oCmluZGV4IGYxYTFlNDEuLjU2MWUyMTcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdGhlbHBlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdGhlbHBlci5oCkBAIC0yMiw1NiArMjIsNTYgQEAKICNkZWZpbmUgTkZDVF9IRUxQRVJfU1RBVFVTX0VOQUJMRUQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZubF9hY2N0X21zZ190eXBlcyB7Ci0gTkZOTF9NU0dfQ1RIRUxQRVJfTkVXLAotIE5GTkxfTVNHX0NUSEVMUEVSX0dFVCwKLSBORk5MX01TR19DVEhFTFBFUl9ERUwsCisgIE5GTkxfTVNHX0NUSEVMUEVSX05FVywKKyAgTkZOTF9NU0dfQ1RIRUxQRVJfR0VULAorICBORk5MX01TR19DVEhFTFBFUl9ERUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GTkxfTVNHX0NUSEVMUEVSX01BWAorICBORk5MX01TR19DVEhFTFBFUl9NQVgKIH07CiBlbnVtIG5mbmxfY3RoZWxwZXJfdHlwZSB7Ci0gTkZDVEhfVU5TUEVDLAorICBORkNUSF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ1RIX05BTUUsCi0gTkZDVEhfVFVQTEUsCi0gTkZDVEhfUVVFVUVfTlVNLAotIE5GQ1RIX1BPTElDWSwKKyAgTkZDVEhfTkFNRSwKKyAgTkZDVEhfVFVQTEUsCisgIE5GQ1RIX1FVRVVFX05VTSwKKyAgTkZDVEhfUE9MSUNZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNUSF9QUklWX0RBVEFfTEVOLAotIE5GQ1RIX1NUQVRVUywKLSBfX05GQ1RIX01BWAorICBORkNUSF9QUklWX0RBVEFfTEVOLAorICBORkNUSF9TVEFUVVMsCisgIF9fTkZDVEhfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDVEhfTUFYIChfX05GQ1RIX01BWCAtIDEpCiBlbnVtIG5mbmxfY3RoZWxwZXJfcG9saWN5X3R5cGUgewotIE5GQ1RIX1BPTElDWV9TRVRfVU5TUEVDLAotIE5GQ1RIX1BPTElDWV9TRVRfTlVNLAorICBORkNUSF9QT0xJQ1lfU0VUX1VOU1BFQywKKyAgTkZDVEhfUE9MSUNZX1NFVF9OVU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ1RIX1BPTElDWV9TRVQsCi0gTkZDVEhfUE9MSUNZX1NFVDEgPSBORkNUSF9QT0xJQ1lfU0VULAotIE5GQ1RIX1BPTElDWV9TRVQyLAotIE5GQ1RIX1BPTElDWV9TRVQzLAorICBORkNUSF9QT0xJQ1lfU0VULAorICBORkNUSF9QT0xJQ1lfU0VUMSA9IE5GQ1RIX1BPTElDWV9TRVQsCisgIE5GQ1RIX1BPTElDWV9TRVQyLAorICBORkNUSF9QT0xJQ1lfU0VUMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDVEhfUE9MSUNZX1NFVDQsCi0gX19ORkNUSF9QT0xJQ1lfU0VUX01BWAorICBORkNUSF9QT0xJQ1lfU0VUNCwKKyAgX19ORkNUSF9QT0xJQ1lfU0VUX01BWAogfTsKICNkZWZpbmUgTkZDVEhfUE9MSUNZX1NFVF9NQVggKF9fTkZDVEhfUE9MSUNZX1NFVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZubF9jdGhlbHBlcl9wb2xfdHlwZSB7Ci0gTkZDVEhfUE9MSUNZX1VOU1BFQywKLSBORkNUSF9QT0xJQ1lfTkFNRSwKLSBORkNUSF9QT0xJQ1lfRVhQRUNUX01BWCwKKyAgTkZDVEhfUE9MSUNZX1VOU1BFQywKKyAgTkZDVEhfUE9MSUNZX05BTUUsCisgIE5GQ1RIX1BPTElDWV9FWFBFQ1RfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNUSF9QT0xJQ1lfRVhQRUNUX1RJTUVPVVQsCi0gX19ORkNUSF9QT0xJQ1lfTUFYCisgIE5GQ1RIX1BPTElDWV9FWFBFQ1RfVElNRU9VVCwKKyAgX19ORkNUSF9QT0xJQ1lfTUFYCiB9OwogI2RlZmluZSBORkNUSF9QT0xJQ1lfTUFYIChfX05GQ1RIX1BPTElDWV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZubF9jdGhlbHBlcl90dXBsZV90eXBlIHsKLSBORkNUSF9UVVBMRV9VTlNQRUMsCi0gTkZDVEhfVFVQTEVfTDNQUk9UT05VTSwKLSBORkNUSF9UVVBMRV9MNFBST1RPTlVNLAorICBORkNUSF9UVVBMRV9VTlNQRUMsCisgIE5GQ1RIX1RVUExFX0wzUFJPVE9OVU0sCisgIE5GQ1RIX1RVUExFX0w0UFJPVE9OVU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZDVEhfVFVQTEVfTUFYLAorICBfX05GQ1RIX1RVUExFX01BWCwKIH07CiAjZGVmaW5lIE5GQ1RIX1RVUExFX01BWCAoX19ORkNUSF9UVVBMRV9NQVggLSAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY3R0aW1lb3V0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY3R0aW1lb3V0LmgKaW5kZXggODkyNTc5OS4uNGMzNWNlMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2N0dGltZW91dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdHRpbWVvdXQuaApAQCAtMjEsMTIzICsyMSwxMjMgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rLmg+CiBlbnVtIGN0bmxfdGltZW91dF9tc2dfdHlwZXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUENUTkxfTVNHX1RJTUVPVVRfTkVXLAotIElQQ1ROTF9NU0dfVElNRU9VVF9HRVQsCi0gSVBDVE5MX01TR19USU1FT1VUX0RFTEVURSwKLSBJUENUTkxfTVNHX1RJTUVPVVRfREVGQVVMVF9TRVQsCisgIElQQ1ROTF9NU0dfVElNRU9VVF9ORVcsCisgIElQQ1ROTF9NU0dfVElNRU9VVF9HRVQsCisgIElQQ1ROTF9NU0dfVElNRU9VVF9ERUxFVEUsCisgIElQQ1ROTF9NU0dfVElNRU9VVF9ERUZBVUxUX1NFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVE5MX01TR19USU1FT1VUX0RFRkFVTFRfR0VULAotIElQQ1ROTF9NU0dfVElNRU9VVF9NQVgKKyAgSVBDVE5MX01TR19USU1FT1VUX0RFRkFVTFRfR0VULAorICBJUENUTkxfTVNHX1RJTUVPVVRfTUFYCiB9OwogZW51bSBjdGF0dHJfdGltZW91dCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1VOU1BFQywKLSBDVEFfVElNRU9VVF9OQU1FLAotIENUQV9USU1FT1VUX0wzUFJPVE8sCi0gQ1RBX1RJTUVPVVRfTDRQUk9UTywKKyAgQ1RBX1RJTUVPVVRfVU5TUEVDLAorICBDVEFfVElNRU9VVF9OQU1FLAorICBDVEFfVElNRU9VVF9MM1BST1RPLAorICBDVEFfVElNRU9VVF9MNFBST1RPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9EQVRBLAotIENUQV9USU1FT1VUX1VTRSwKLSBfX0NUQV9USU1FT1VUX01BWAorICBDVEFfVElNRU9VVF9EQVRBLAorICBDVEFfVElNRU9VVF9VU0UsCisgIF9fQ1RBX1RJTUVPVVRfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RBX1RJTUVPVVRfTUFYIChfX0NUQV9USU1FT1VUX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X2dlbmVyaWMgewotIENUQV9USU1FT1VUX0dFTkVSSUNfVU5TUEVDLAotIENUQV9USU1FT1VUX0dFTkVSSUNfVElNRU9VVCwKKyAgQ1RBX1RJTUVPVVRfR0VORVJJQ19VTlNQRUMsCisgIENUQV9USU1FT1VUX0dFTkVSSUNfVElNRU9VVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfVElNRU9VVF9HRU5FUklDX01BWAorICBfX0NUQV9USU1FT1VUX0dFTkVSSUNfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9HRU5FUklDX01BWCAoX19DVEFfVElNRU9VVF9HRU5FUklDX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X3RjcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1RDUF9VTlNQRUMsCi0gQ1RBX1RJTUVPVVRfVENQX1NZTl9TRU5ULAotIENUQV9USU1FT1VUX1RDUF9TWU5fUkVDViwKLSBDVEFfVElNRU9VVF9UQ1BfRVNUQUJMSVNIRUQsCisgIENUQV9USU1FT1VUX1RDUF9VTlNQRUMsCisgIENUQV9USU1FT1VUX1RDUF9TWU5fU0VOVCwKKyAgQ1RBX1RJTUVPVVRfVENQX1NZTl9SRUNWLAorICBDVEFfVElNRU9VVF9UQ1BfRVNUQUJMSVNIRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1RDUF9GSU5fV0FJVCwKLSBDVEFfVElNRU9VVF9UQ1BfQ0xPU0VfV0FJVCwKLSBDVEFfVElNRU9VVF9UQ1BfTEFTVF9BQ0ssCi0gQ1RBX1RJTUVPVVRfVENQX1RJTUVfV0FJVCwKKyAgQ1RBX1RJTUVPVVRfVENQX0ZJTl9XQUlULAorICBDVEFfVElNRU9VVF9UQ1BfQ0xPU0VfV0FJVCwKKyAgQ1RBX1RJTUVPVVRfVENQX0xBU1RfQUNLLAorICBDVEFfVElNRU9VVF9UQ1BfVElNRV9XQUlULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9UQ1BfQ0xPU0UsCi0gQ1RBX1RJTUVPVVRfVENQX1NZTl9TRU5UMiwKLSBDVEFfVElNRU9VVF9UQ1BfUkVUUkFOUywKLSBDVEFfVElNRU9VVF9UQ1BfVU5BQ0ssCisgIENUQV9USU1FT1VUX1RDUF9DTE9TRSwKKyAgQ1RBX1RJTUVPVVRfVENQX1NZTl9TRU5UMiwKKyAgQ1RBX1RJTUVPVVRfVENQX1JFVFJBTlMsCisgIENUQV9USU1FT1VUX1RDUF9VTkFDSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfVElNRU9VVF9UQ1BfTUFYCisgIF9fQ1RBX1RJTUVPVVRfVENQX01BWAogfTsKICNkZWZpbmUgQ1RBX1RJTUVPVVRfVENQX01BWCAoX19DVEFfVElNRU9VVF9UQ1BfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfdWRwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfVURQX1VOU1BFQywKLSBDVEFfVElNRU9VVF9VRFBfVU5SRVBMSUVELAotIENUQV9USU1FT1VUX1VEUF9SRVBMSUVELAotIF9fQ1RBX1RJTUVPVVRfVURQX01BWAorICBDVEFfVElNRU9VVF9VRFBfVU5TUEVDLAorICBDVEFfVElNRU9VVF9VRFBfVU5SRVBMSUVELAorICBDVEFfVElNRU9VVF9VRFBfUkVQTElFRCwKKyAgX19DVEFfVElNRU9VVF9VRFBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ1RBX1RJTUVPVVRfVURQX01BWCAoX19DVEFfVElNRU9VVF9VRFBfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfdWRwbGl0ZSB7Ci0gQ1RBX1RJTUVPVVRfVURQTElURV9VTlNQRUMsCisgIENUQV9USU1FT1VUX1VEUExJVEVfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9VRFBMSVRFX1VOUkVQTElFRCwKLSBDVEFfVElNRU9VVF9VRFBMSVRFX1JFUExJRUQsCi0gX19DVEFfVElNRU9VVF9VRFBMSVRFX01BWAorICBDVEFfVElNRU9VVF9VRFBMSVRFX1VOUkVQTElFRCwKKyAgQ1RBX1RJTUVPVVRfVURQTElURV9SRVBMSUVELAorICBfX0NUQV9USU1FT1VUX1VEUExJVEVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RBX1RJTUVPVVRfVURQTElURV9NQVggKF9fQ1RBX1RJTUVPVVRfVURQTElURV9NQVggLSAxKQogZW51bSBjdGF0dHJfdGltZW91dF9pY21wIHsKLSBDVEFfVElNRU9VVF9JQ01QX1VOU1BFQywKLSBDVEFfVElNRU9VVF9JQ01QX1RJTUVPVVQsCisgIENUQV9USU1FT1VUX0lDTVBfVU5TUEVDLAorICBDVEFfVElNRU9VVF9JQ01QX1RJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX1RJTUVPVVRfSUNNUF9NQVgKKyAgX19DVEFfVElNRU9VVF9JQ01QX01BWAogfTsKICNkZWZpbmUgQ1RBX1RJTUVPVVRfSUNNUF9NQVggKF9fQ1RBX1RJTUVPVVRfSUNNUF9NQVggLSAxKQogZW51bSBjdGF0dHJfdGltZW91dF9kY2NwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfRENDUF9VTlNQRUMsCi0gQ1RBX1RJTUVPVVRfRENDUF9SRVFVRVNULAotIENUQV9USU1FT1VUX0RDQ1BfUkVTUE9ORCwKLSBDVEFfVElNRU9VVF9EQ0NQX1BBUlRPUEVOLAorICBDVEFfVElNRU9VVF9EQ0NQX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfRENDUF9SRVFVRVNULAorICBDVEFfVElNRU9VVF9EQ0NQX1JFU1BPTkQsCisgIENUQV9USU1FT1VUX0RDQ1BfUEFSVE9QRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX0RDQ1BfT1BFTiwKLSBDVEFfVElNRU9VVF9EQ0NQX0NMT1NFUkVRLAotIENUQV9USU1FT1VUX0RDQ1BfQ0xPU0lORywKLSBDVEFfVElNRU9VVF9EQ0NQX1RJTUVXQUlULAorICBDVEFfVElNRU9VVF9EQ0NQX09QRU4sCisgIENUQV9USU1FT1VUX0RDQ1BfQ0xPU0VSRVEsCisgIENUQV9USU1FT1VUX0RDQ1BfQ0xPU0lORywKKyAgQ1RBX1RJTUVPVVRfRENDUF9USU1FV0FJVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfVElNRU9VVF9EQ0NQX01BWAorICBfX0NUQV9USU1FT1VUX0RDQ1BfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9EQ0NQX01BWCAoX19DVEFfVElNRU9VVF9EQ0NQX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X3NjdHAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9TQ1RQX1VOU1BFQywKLSBDVEFfVElNRU9VVF9TQ1RQX0NMT1NFRCwKLSBDVEFfVElNRU9VVF9TQ1RQX0NPT0tJRV9XQUlULAotIENUQV9USU1FT1VUX1NDVFBfQ09PS0lFX0VDSE9FRCwKKyAgQ1RBX1RJTUVPVVRfU0NUUF9VTlNQRUMsCisgIENUQV9USU1FT1VUX1NDVFBfQ0xPU0VELAorICBDVEFfVElNRU9VVF9TQ1RQX0NPT0tJRV9XQUlULAorICBDVEFfVElNRU9VVF9TQ1RQX0NPT0tJRV9FQ0hPRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1NDVFBfRVNUQUJMSVNIRUQsCi0gQ1RBX1RJTUVPVVRfU0NUUF9TSFVURE9XTl9TRU5ULAotIENUQV9USU1FT1VUX1NDVFBfU0hVVERPV05fUkVDRCwKLSBDVEFfVElNRU9VVF9TQ1RQX1NIVVRET1dOX0FDS19TRU5ULAorICBDVEFfVElNRU9VVF9TQ1RQX0VTVEFCTElTSEVELAorICBDVEFfVElNRU9VVF9TQ1RQX1NIVVRET1dOX1NFTlQsCisgIENUQV9USU1FT1VUX1NDVFBfU0hVVERPV05fUkVDRCwKKyAgQ1RBX1RJTUVPVVRfU0NUUF9TSFVURE9XTl9BQ0tfU0VOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfVElNRU9VVF9TQ1RQX01BWAorICBfX0NUQV9USU1FT1VUX1NDVFBfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9TQ1RQX01BWCAoX19DVEFfVElNRU9VVF9TQ1RQX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X2ljbXB2NiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX0lDTVBWNl9VTlNQRUMsCi0gQ1RBX1RJTUVPVVRfSUNNUFY2X1RJTUVPVVQsCi0gX19DVEFfVElNRU9VVF9JQ01QVjZfTUFYCisgIENUQV9USU1FT1VUX0lDTVBWNl9VTlNQRUMsCisgIENUQV9USU1FT1VUX0lDTVBWNl9USU1FT1VULAorICBfX0NUQV9USU1FT1VUX0lDTVBWNl9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfVElNRU9VVF9JQ01QVjZfTUFYIChfX0NUQV9USU1FT1VUX0lDTVBWNl9NQVggLSAxKQogZW51bSBjdGF0dHJfdGltZW91dF9ncmUgewotIENUQV9USU1FT1VUX0dSRV9VTlNQRUMsCi0gQ1RBX1RJTUVPVVRfR1JFX1VOUkVQTElFRCwKKyAgQ1RBX1RJTUVPVVRfR1JFX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfR1JFX1VOUkVQTElFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfR1JFX1JFUExJRUQsCi0gX19DVEFfVElNRU9VVF9HUkVfTUFYCisgIENUQV9USU1FT1VUX0dSRV9SRVBMSUVELAorICBfX0NUQV9USU1FT1VUX0dSRV9NQVgKIH07CiAjZGVmaW5lIENUQV9USU1FT1VUX0dSRV9NQVggKF9fQ1RBX1RJTUVPVVRfR1JFX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2xvZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2xvZy5oCmluZGV4IDU2ZDIwMzYuLmM1MzQ1ZmQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19sb2cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfbG9nLmgKQEAgLTIyLDg4ICsyMiw4OCBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdWxubF9tc2dfdHlwZXMgewotIE5GVUxOTF9NU0dfUEFDS0VULAotIE5GVUxOTF9NU0dfQ09ORklHLAotIE5GVUxOTF9NU0dfTUFYCisgIE5GVUxOTF9NU0dfUEFDS0VULAorICBORlVMTkxfTVNHX0NPTkZJRywKKyAgTkZVTE5MX01TR19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5mdWxubF9tc2dfcGFja2V0X2hkciB7Ci0gX19iZTE2IGh3X3Byb3RvY29sOwotIF9fdTggaG9vazsKKyAgX19iZTE2IGh3X3Byb3RvY29sOworICBfX3U4IGhvb2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggX3BhZDsKKyAgX191OCBfcGFkOwogfTsKIHN0cnVjdCBuZnVsbmxfbXNnX3BhY2tldF9odyB7Ci0gX19iZTE2IGh3X2FkZHJsZW47CisgIF9fYmUxNiBod19hZGRybGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBfcGFkOwotIF9fdTggaHdfYWRkcls4XTsKKyAgX191MTYgX3BhZDsKKyAgX191OCBod19hZGRyWzhdOwogfTsKIHN0cnVjdCBuZnVsbmxfbXNnX3BhY2tldF90aW1lc3RhbXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2FsaWduZWRfYmU2NCBzZWM7Ci0gX19hbGlnbmVkX2JlNjQgdXNlYzsKKyAgX19hbGlnbmVkX2JlNjQgc2VjOworICBfX2FsaWduZWRfYmU2NCB1c2VjOwogfTsKIGVudW0gbmZ1bG5sX2F0dHJfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVUxBX1VOU1BFQywKLSBORlVMQV9QQUNLRVRfSERSLAotIE5GVUxBX01BUkssCi0gTkZVTEFfVElNRVNUQU1QLAorICBORlVMQV9VTlNQRUMsCisgIE5GVUxBX1BBQ0tFVF9IRFIsCisgIE5GVUxBX01BUkssCisgIE5GVUxBX1RJTUVTVEFNUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZVTEFfSUZJTkRFWF9JTkRFViwKLSBORlVMQV9JRklOREVYX09VVERFViwKLSBORlVMQV9JRklOREVYX1BIWVNJTkRFViwKLSBORlVMQV9JRklOREVYX1BIWVNPVVRERVYsCisgIE5GVUxBX0lGSU5ERVhfSU5ERVYsCisgIE5GVUxBX0lGSU5ERVhfT1VUREVWLAorICBORlVMQV9JRklOREVYX1BIWVNJTkRFViwKKyAgTkZVTEFfSUZJTkRFWF9QSFlTT1VUREVWLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlVMQV9IV0FERFIsCi0gTkZVTEFfUEFZTE9BRCwKLSBORlVMQV9QUkVGSVgsCi0gTkZVTEFfVUlELAorICBORlVMQV9IV0FERFIsCisgIE5GVUxBX1BBWUxPQUQsCisgIE5GVUxBX1BSRUZJWCwKKyAgTkZVTEFfVUlELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlVMQV9TRVEsCi0gTkZVTEFfU0VRX0dMT0JBTCwKLSBORlVMQV9HSUQsCi0gTkZVTEFfSFdUWVBFLAorICBORlVMQV9TRVEsCisgIE5GVUxBX1NFUV9HTE9CQUwsCisgIE5GVUxBX0dJRCwKKyAgTkZVTEFfSFdUWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlVMQV9IV0hFQURFUiwKLSBORlVMQV9IV0xFTiwKLSBfX05GVUxBX01BWAorICBORlVMQV9IV0hFQURFUiwKKyAgTkZVTEFfSFdMRU4sCisgIF9fTkZVTEFfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZVTEFfTUFYIChfX05GVUxBX01BWCAtIDEpCiBlbnVtIG5mdWxubF9tc2dfY29uZmlnX2NtZHMgewotIE5GVUxOTF9DRkdfQ01EX05PTkUsCi0gTkZVTE5MX0NGR19DTURfQklORCwKKyAgTkZVTE5MX0NGR19DTURfTk9ORSwKKyAgTkZVTE5MX0NGR19DTURfQklORCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZVTE5MX0NGR19DTURfVU5CSU5ELAotIE5GVUxOTF9DRkdfQ01EX1BGX0JJTkQsCi0gTkZVTE5MX0NGR19DTURfUEZfVU5CSU5ELAorICBORlVMTkxfQ0ZHX0NNRF9VTkJJTkQsCisgIE5GVUxOTF9DRkdfQ01EX1BGX0JJTkQsCisgIE5GVUxOTF9DRkdfQ01EX1BGX1VOQklORCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5mdWxubF9tc2dfY29uZmlnX2NtZCB7Ci0gX191OCBjb21tYW5kOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggY29tbWFuZDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgbmZ1bG5sX21zZ19jb25maWdfbW9kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBjb3B5X3JhbmdlOwotIF9fdTggY29weV9tb2RlOwotIF9fdTggX3BhZDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2JlMzIgY29weV9yYW5nZTsKKyAgX191OCBjb3B5X21vZGU7CisgIF9fdTggX3BhZDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnVsbmxfYXR0cl9jb25maWcgewotIE5GVUxBX0NGR19VTlNQRUMsCi0gTkZVTEFfQ0ZHX0NNRCwKLSBORlVMQV9DRkdfTU9ERSwKKyAgTkZVTEFfQ0ZHX1VOU1BFQywKKyAgTkZVTEFfQ0ZHX0NNRCwKKyAgTkZVTEFfQ0ZHX01PREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVUxBX0NGR19OTEJVRlNJWiwKLSBORlVMQV9DRkdfVElNRU9VVCwKLSBORlVMQV9DRkdfUVRIUkVTSCwKLSBORlVMQV9DRkdfRkxBR1MsCisgIE5GVUxBX0NGR19OTEJVRlNJWiwKKyAgTkZVTEFfQ0ZHX1RJTUVPVVQsCisgIE5GVUxBX0NGR19RVEhSRVNILAorICBORlVMQV9DRkdfRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZVTEFfQ0ZHX01BWAorICBfX05GVUxBX0NGR19NQVgKIH07Ci0jZGVmaW5lIE5GVUxBX0NGR19NQVggKF9fTkZVTEFfQ0ZHX01BWCAtMSkKKyNkZWZpbmUgTkZVTEFfQ0ZHX01BWCAoX19ORlVMQV9DRkdfTUFYIC0gMSkKICNkZWZpbmUgTkZVTE5MX0NPUFlfTk9ORSAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlVMTkxfQ09QWV9NRVRBIDB4MDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19xdWV1ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX3F1ZXVlLmgKaW5kZXggODE2ZTM0NC4uNjk0NjM2YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX3F1ZXVlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX3F1ZXVlLmgKQEAgLTIyLDEwMiArMjIsMTAyIEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZxbmxfbXNnX3R5cGVzIHsKLSBORlFOTF9NU0dfUEFDS0VULAotIE5GUU5MX01TR19WRVJESUNULAotIE5GUU5MX01TR19DT05GSUcsCisgIE5GUU5MX01TR19QQUNLRVQsCisgIE5GUU5MX01TR19WRVJESUNULAorICBORlFOTF9NU0dfQ09ORklHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFOTF9NU0dfVkVSRElDVF9CQVRDSCwKLSBORlFOTF9NU0dfTUFYCisgIE5GUU5MX01TR19WRVJESUNUX0JBVENILAorICBORlFOTF9NU0dfTUFYCiB9Owogc3RydWN0IG5mcW5sX21zZ19wYWNrZXRfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHBhY2tldF9pZDsKLSBfX2JlMTYgaHdfcHJvdG9jb2w7Ci0gX191OCBob29rOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fYmUzMiBwYWNrZXRfaWQ7CisgIF9fYmUxNiBod19wcm90b2NvbDsKKyAgX191OCBob29rOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmZxbmxfbXNnX3BhY2tldF9odyB7Ci0gX19iZTE2IGh3X2FkZHJsZW47Ci0gX191MTYgX3BhZDsKLSBfX3U4IGh3X2FkZHJbOF07CisgIF9fYmUxNiBod19hZGRybGVuOworICBfX3UxNiBfcGFkOworICBfX3U4IGh3X2FkZHJbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuZnFubF9tc2dfcGFja2V0X3RpbWVzdGFtcCB7Ci0gX19hbGlnbmVkX2JlNjQgc2VjOwotIF9fYWxpZ25lZF9iZTY0IHVzZWM7CisgIF9fYWxpZ25lZF9iZTY0IHNlYzsKKyAgX19hbGlnbmVkX2JlNjQgdXNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBuZnFubF9hdHRyX3R5cGUgewotIE5GUUFfVU5TUEVDLAotIE5GUUFfUEFDS0VUX0hEUiwKKyAgTkZRQV9VTlNQRUMsCisgIE5GUUFfUEFDS0VUX0hEUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZRQV9WRVJESUNUX0hEUiwKLSBORlFBX01BUkssCi0gTkZRQV9USU1FU1RBTVAsCi0gTkZRQV9JRklOREVYX0lOREVWLAorICBORlFBX1ZFUkRJQ1RfSERSLAorICBORlFBX01BUkssCisgIE5GUUFfVElNRVNUQU1QLAorICBORlFBX0lGSU5ERVhfSU5ERVYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUUFfSUZJTkRFWF9PVVRERVYsCi0gTkZRQV9JRklOREVYX1BIWVNJTkRFViwKLSBORlFBX0lGSU5ERVhfUEhZU09VVERFViwKLSBORlFBX0hXQUREUiwKKyAgTkZRQV9JRklOREVYX09VVERFViwKKyAgTkZRQV9JRklOREVYX1BIWVNJTkRFViwKKyAgTkZRQV9JRklOREVYX1BIWVNPVVRERVYsCisgIE5GUUFfSFdBRERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFBX1BBWUxPQUQsCi0gTkZRQV9DVCwKLSBORlFBX0NUX0lORk8sCi0gTkZRQV9DQVBfTEVOLAorICBORlFBX1BBWUxPQUQsCisgIE5GUUFfQ1QsCisgIE5GUUFfQ1RfSU5GTywKKyAgTkZRQV9DQVBfTEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFBX1NLQl9JTkZPLAotIE5GUUFfRVhQLAotIE5GUUFfVUlELAotIE5GUUFfR0lELAorICBORlFBX1NLQl9JTkZPLAorICBORlFBX0VYUCwKKyAgTkZRQV9VSUQsCisgIE5GUUFfR0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GUUFfTUFYCisgIF9fTkZRQV9NQVgKIH07CiAjZGVmaW5lIE5GUUFfTUFYIChfX05GUUFfTUFYIC0gMSkKIHN0cnVjdCBuZnFubF9tc2dfdmVyZGljdF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgdmVyZGljdDsKLSBfX2JlMzIgaWQ7CisgIF9fYmUzMiB2ZXJkaWN0OworICBfX2JlMzIgaWQ7CiB9OwogZW51bSBuZnFubF9tc2dfY29uZmlnX2NtZHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFOTF9DRkdfQ01EX05PTkUsCi0gTkZRTkxfQ0ZHX0NNRF9CSU5ELAotIE5GUU5MX0NGR19DTURfVU5CSU5ELAotIE5GUU5MX0NGR19DTURfUEZfQklORCwKKyAgTkZRTkxfQ0ZHX0NNRF9OT05FLAorICBORlFOTF9DRkdfQ01EX0JJTkQsCisgIE5GUU5MX0NGR19DTURfVU5CSU5ELAorICBORlFOTF9DRkdfQ01EX1BGX0JJTkQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUU5MX0NGR19DTURfUEZfVU5CSU5ELAorICBORlFOTF9DRkdfQ01EX1BGX1VOQklORCwKIH07CiBzdHJ1Y3QgbmZxbmxfbXNnX2NvbmZpZ19jbWQgewotIF9fdTggY29tbWFuZDsKKyAgX191OCBjb21tYW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9wYWQ7Ci0gX19iZTE2IHBmOworICBfX3U4IF9wYWQ7CisgIF9fYmUxNiBwZjsKIH07CiBlbnVtIG5mcW5sX2NvbmZpZ19tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZRTkxfQ09QWV9OT05FLAotIE5GUU5MX0NPUFlfTUVUQSwKLSBORlFOTF9DT1BZX1BBQ0tFVCwKKyAgTkZRTkxfQ09QWV9OT05FLAorICBORlFOTF9DT1BZX01FVEEsCisgIE5GUU5MX0NPUFlfUEFDS0VULAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmZxbmxfbXNnX2NvbmZpZ19wYXJhbXMgewotIF9fYmUzMiBjb3B5X3JhbmdlOwotIF9fdTggY29weV9tb2RlOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fYmUzMiBjb3B5X3JhbmdlOworICBfX3U4IGNvcHlfbW9kZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnFubF9hdHRyX2NvbmZpZyB7Ci0gTkZRQV9DRkdfVU5TUEVDLAotIE5GUUFfQ0ZHX0NNRCwKLSBORlFBX0NGR19QQVJBTVMsCisgIE5GUUFfQ0ZHX1VOU1BFQywKKyAgTkZRQV9DRkdfQ01ELAorICBORlFBX0NGR19QQVJBTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUUFfQ0ZHX1FVRVVFX01BWExFTiwKLSBORlFBX0NGR19NQVNLLAotIE5GUUFfQ0ZHX0ZMQUdTLAotIF9fTkZRQV9DRkdfTUFYCisgIE5GUUFfQ0ZHX1FVRVVFX01BWExFTiwKKyAgTkZRQV9DRkdfTUFTSywKKyAgTkZRQV9DRkdfRkxBR1MsCisgIF9fTkZRQV9DRkdfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgTkZRQV9DRkdfTUFYIChfX05GUUFfQ0ZHX01BWC0xKQorI2RlZmluZSBORlFBX0NGR19NQVggKF9fTkZRQV9DRkdfTUFYIC0gMSkKICNkZWZpbmUgTkZRQV9DRkdfRl9GQUlMX09QRU4gKDEgPDwgMCkKICNkZWZpbmUgTkZRQV9DRkdfRl9DT05OVFJBQ0sgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94X3RhYmxlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveF90YWJsZXMuaAppbmRleCA3MzU1ZDAxLi5hYWIzMmJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94X3RhYmxlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3hfdGFibGVzLmgKQEAgLTI2LDY3ICsyNiw2OSBAQAogI2RlZmluZSBYVF9UQUJMRV9NQVhOQU1FTEVOIDMyCiBzdHJ1Y3QgeHRfZW50cnlfbWF0Y2ggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX3UxNiBtYXRjaF9zaXplOwotIGNoYXIgbmFtZVtYVF9FWFRFTlNJT05fTUFYTkFNRUxFTl07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgbWF0Y2hfc2l6ZTsKKyAgICAgIGNoYXIgbmFtZVtYVF9FWFRFTlNJT05fTUFYTkFNRUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmV2aXNpb247Ci0gfSB1c2VyOwotIHN0cnVjdCB7Ci0gX191MTYgbWF0Y2hfc2l6ZTsKKyAgICAgIF9fdTggcmV2aXNpb247CisgICAgfSB1c2VyOworICAgIHN0cnVjdCB7CisgICAgICBfX3UxNiBtYXRjaF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeHRfbWF0Y2ggKm1hdGNoOwotIH0ga2VybmVsOwotIF9fdTE2IG1hdGNoX3NpemU7Ci0gfSB1OworICAgICAgc3RydWN0IHh0X21hdGNoICogbWF0Y2g7CisgICAgfSBrZXJuZWw7CisgICAgX191MTYgbWF0Y2hfc2l6ZTsKKyAgfSB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRhdGFbMF07CisgIHVuc2lnbmVkIGNoYXIgZGF0YVswXTsKIH07CiBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0IHsKLSB1bmlvbiB7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3UxNiB0YXJnZXRfc2l6ZTsKLSBjaGFyIG5hbWVbWFRfRVhURU5TSU9OX01BWE5BTUVMRU5dOwotIF9fdTggcmV2aXNpb247CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IHRhcmdldF9zaXplOworICAgICAgY2hhciBuYW1lW1hUX0VYVEVOU0lPTl9NQVhOQU1FTEVOXTsKKyAgICAgIF9fdTggcmV2aXNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdXNlcjsKLSBzdHJ1Y3QgewotIF9fdTE2IHRhcmdldF9zaXplOwotIHN0cnVjdCB4dF90YXJnZXQgKnRhcmdldDsKKyAgICB9IHVzZXI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IHRhcmdldF9zaXplOworICAgICAgc3RydWN0IHh0X3RhcmdldCAqIHRhcmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBrZXJuZWw7Ci0gX191MTYgdGFyZ2V0X3NpemU7Ci0gfSB1OwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXTsKKyAgICB9IGtlcm5lbDsKKyAgICBfX3UxNiB0YXJnZXRfc2l6ZTsKKyAgfSB1OworICB1bnNpZ25lZCBjaGFyIGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgWFRfVEFSR0VUX0lOSVQoX19uYW1lLCBfX3NpemUpICB7ICAgLnRhcmdldC51LnVzZXIgPSB7ICAgLnRhcmdldF9zaXplID0gWFRfQUxJR04oX19zaXplKSwgICAubmFtZSA9IF9fbmFtZSwgICB9LCAgfQorI2RlZmluZSBYVF9UQVJHRVRfSU5JVChfX25hbWUsX19zaXplKSBcCit7LnRhcmdldC51LnVzZXIgPSB7LnRhcmdldF9zaXplID0gWFRfQUxJR04oX19zaXplKSwubmFtZSA9IF9fbmFtZSwgfSwgXAorfQogc3RydWN0IHh0X3N0YW5kYXJkX3RhcmdldCB7Ci0gc3RydWN0IHh0X2VudHJ5X3RhcmdldCB0YXJnZXQ7CisgIHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdmVyZGljdDsKKyAgaW50IHZlcmRpY3Q7CiB9Owogc3RydWN0IHh0X2Vycm9yX3RhcmdldCB7Ci0gc3RydWN0IHh0X2VudHJ5X3RhcmdldCB0YXJnZXQ7CisgIHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGVycm9ybmFtZVtYVF9GVU5DVElPTl9NQVhOQU1FTEVOXTsKKyAgY2hhciBlcnJvcm5hbWVbWFRfRlVOQ1RJT05fTUFYTkFNRUxFTl07CiB9Owogc3RydWN0IHh0X2dldF9yZXZpc2lvbiB7Ci0gY2hhciBuYW1lW1hUX0VYVEVOU0lPTl9NQVhOQU1FTEVOXTsKKyAgY2hhciBuYW1lW1hUX0VYVEVOU0lPTl9NQVhOQU1FTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXZpc2lvbjsKKyAgX191OCByZXZpc2lvbjsKIH07CiAjZGVmaW5lIFhUX0NPTlRJTlVFIDB4RkZGRkZGRkYKLSNkZWZpbmUgWFRfUkVUVVJOICgtTkZfUkVQRUFUIC0gMSkKKyNkZWZpbmUgWFRfUkVUVVJOICgtIE5GX1JFUEVBVCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF94dF9hbGlnbiB7Ci0gX191OCB1ODsKLSBfX3UxNiB1MTY7Ci0gX191MzIgdTMyOworICBfX3U4IHU4OworICBfX3UxNiB1MTY7CisgIF9fdTMyIHUzMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdTY0OworICBfX3U2NCB1NjQ7CiB9OwogI2RlZmluZSBYVF9BTElHTihzKSBfX0FMSUdOX0tFUk5FTCgocyksIF9fYWxpZ25vZl9fKHN0cnVjdCBfeHRfYWxpZ24pKQogI2RlZmluZSBYVF9TVEFOREFSRF9UQVJHRVQgIiIKQEAgLTk2LDIwICs5OCwyNCBAQAogI2RlZmluZSBBRERfQ09VTlRFUihjLGIscCkgZG8geyAoYykuYmNudCArPSAoYik7IChjKS5wY250ICs9IChwKTsgfSB3aGlsZSgwKQogc3RydWN0IHh0X2NvdW50ZXJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGNudCwgYmNudDsKKyAgX191NjQgcGNudCwgYmNudDsKIH07CiBzdHJ1Y3QgeHRfY291bnRlcnNfaW5mbyB7Ci0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7Ci0gc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzWzBdOworICB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOworICBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnNbMF07CiB9OwogI2RlZmluZSBYVF9JTlZfUFJPVE8gMHg0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgWFRfTUFUQ0hfSVRFUkFURSh0eXBlLCBlLCBmbiwgYXJncy4uLikgICh7ICAgdW5zaWduZWQgaW50IF9faTsgICBpbnQgX19yZXQgPSAwOyAgIHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqX19tOyAgICAgZm9yIChfX2kgPSBzaXplb2YodHlwZSk7ICAgX19pIDwgKGUpLT50YXJnZXRfb2Zmc2V0OyAgIF9faSArPSBfX20tPnUubWF0Y2hfc2l6ZSkgeyAgIF9fbSA9ICh2b2lkICopZSArIF9faTsgICAgIF9fcmV0ID0gZm4oX19tICwgIyMgYXJncyk7ICAgaWYgKF9fcmV0ICE9IDApICAgYnJlYWs7ICAgfSAgIF9fcmV0OyAgfSkKLSNkZWZpbmUgWFRfRU5UUllfSVRFUkFURV9DT05USU5VRSh0eXBlLCBlbnRyaWVzLCBzaXplLCBuLCBmbiwgYXJncy4uLikgICh7ICAgdW5zaWduZWQgaW50IF9faSwgX19uOyAgIGludCBfX3JldCA9IDA7ICAgdHlwZSAqX19lbnRyeTsgICAgIGZvciAoX19pID0gMCwgX19uID0gMDsgX19pIDwgKHNpemUpOyAgIF9faSArPSBfX2VudHJ5LT5uZXh0X29mZnNldCwgX19uKyspIHsgICBfX2VudHJ5ID0gKHZvaWQgKikoZW50cmllcykgKyBfX2k7ICAgaWYgKF9fbiA8IG4pICAgY29udGludWU7ICAgICBfX3JldCA9IGZuKF9fZW50cnkgLCAjIyBhcmdzKTsgICBpZiAoX19yZXQgIT0gMCkgICBicmVhazsgICB9ICAgX19yZXQ7ICB9KQotI2RlZmluZSBYVF9FTlRSWV9JVEVSQVRFKHR5cGUsIGVudHJpZXMsIHNpemUsIGZuLCBhcmdzLi4uKSAgIFhUX0VOVFJZX0lURVJBVEVfQ09OVElOVUUodHlwZSwgZW50cmllcywgc2l6ZSwgMCwgZm4sIGFyZ3MpCi0jZGVmaW5lIHh0X2VudHJ5X2ZvcmVhY2gocG9zLCBlaGVhZCwgZXNpemUpICAgZm9yICgocG9zKSA9ICh0eXBlb2YocG9zKSkoZWhlYWQpOyAgIChwb3MpIDwgKHR5cGVvZihwb3MpKSgoY2hhciAqKShlaGVhZCkgKyAoZXNpemUpKTsgICAocG9zKSA9ICh0eXBlb2YocG9zKSkoKGNoYXIgKikocG9zKSArIChwb3MpLT5uZXh0X29mZnNldCkpCisjZGVmaW5lIFhUX01BVENIX0lURVJBVEUodHlwZSxlLGZuLGFyZ3MuLi4pIFwKKyh7IHVuc2lnbmVkIGludCBfX2k7IGludCBfX3JldCA9IDA7IHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqIF9fbTsgZm9yKF9faSA9IHNpemVvZih0eXBlKTsgX19pIDwgKGUpLT50YXJnZXRfb2Zmc2V0OyBfX2kgKz0gX19tLT51Lm1hdGNoX3NpemUpIHsgX19tID0gKHZvaWQgKikgZSArIF9faTsgX19yZXQgPSBmbihfX20sICMjYXJncyk7IGlmKF9fcmV0ICE9IDApIGJyZWFrOyB9IF9fcmV0OyBcCit9KQorI2RlZmluZSBYVF9FTlRSWV9JVEVSQVRFX0NPTlRJTlVFKHR5cGUsZW50cmllcyxzaXplLG4sZm4sYXJncy4uLikgXAorKHsgdW5zaWduZWQgaW50IF9faSwgX19uOyBpbnQgX19yZXQgPSAwOyB0eXBlICogX19lbnRyeTsgZm9yKF9faSA9IDAsIF9fbiA9IDA7IF9faSA8IChzaXplKTsgX19pICs9IF9fZW50cnktPm5leHRfb2Zmc2V0LCBfX24gKyspIHsgX19lbnRyeSA9ICh2b2lkICopIChlbnRyaWVzKSArIF9faTsgaWYoX19uIDwgbikgY29udGludWU7IF9fcmV0ID0gZm4oX19lbnRyeSwgIyNhcmdzKTsgaWYoX19yZXQgIT0gMCkgYnJlYWs7IH0gX19yZXQ7IFwKK30pCisjZGVmaW5lIFhUX0VOVFJZX0lURVJBVEUodHlwZSxlbnRyaWVzLHNpemUsZm4sYXJncy4uLikgWFRfRU5UUllfSVRFUkFURV9DT05USU5VRSh0eXBlLCBlbnRyaWVzLCBzaXplLCAwLCBmbiwgYXJncykKKyNkZWZpbmUgeHRfZW50cnlfZm9yZWFjaChwb3MsZWhlYWQsZXNpemUpIGZvcigocG9zKSA9ICh0eXBlb2YocG9zKSkgKGVoZWFkKTsgKHBvcykgPCAodHlwZW9mKHBvcykpICgoY2hhciAqKSAoZWhlYWQpICsgKGVzaXplKSk7IChwb3MpID0gKHR5cGVvZihwb3MpKSAoKGNoYXIgKikgKHBvcykgKyAocG9zKS0+bmV4dF9vZmZzZXQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgeHRfZW1hdGNoX2ZvcmVhY2gocG9zLCBlbnRyeSkgICBmb3IgKChwb3MpID0gKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKWVudHJ5LT5lbGVtczsgICAocG9zKSA8IChzdHJ1Y3QgeHRfZW50cnlfbWF0Y2ggKikoKGNoYXIgKikoZW50cnkpICsgICAoZW50cnkpLT50YXJnZXRfb2Zmc2V0KTsgICAocG9zKSA9IChzdHJ1Y3QgeHRfZW50cnlfbWF0Y2ggKikoKGNoYXIgKikocG9zKSArICAgKHBvcyktPnUubWF0Y2hfc2l6ZSkpCisjZGVmaW5lIHh0X2VtYXRjaF9mb3JlYWNoKHBvcyxlbnRyeSkgZm9yKChwb3MpID0gKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKSBlbnRyeS0+ZWxlbXM7IChwb3MpIDwgKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKSAoKGNoYXIgKikgKGVudHJ5KSArIChlbnRyeSktPnRhcmdldF9vZmZzZXQpOyAocG9zKSA9IChzdHJ1Y3QgeHRfZW50cnlfbWF0Y2ggKikgKChjaGFyICopIChwb3MpICsgKHBvcyktPnUubWF0Y2hfc2l6ZSkpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0FVRElULmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9BVURJVC5oCmluZGV4IGI0ZDk1MTEuLmJiMWJlMmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0FVRElULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQVVESVQuaApAQCAtMjEsMTUgKzIxLDE1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9BVURJVF9UWVBFX0FDQ0VQVCA9IDAsCi0gWFRfQVVESVRfVFlQRV9EUk9QLAotIFhUX0FVRElUX1RZUEVfUkVKRUNULAotIF9fWFRfQVVESVRfVFlQRV9NQVgsCisgIFhUX0FVRElUX1RZUEVfQUNDRVBUID0gMCwKKyAgWFRfQVVESVRfVFlQRV9EUk9QLAorICBYVF9BVURJVF9UWVBFX1JFSkVDVCwKKyAgX19YVF9BVURJVF9UWVBFX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBYVF9BVURJVF9UWVBFX01BWCAoX19YVF9BVURJVF9UWVBFX01BWCAtIDEpCiBzdHJ1Y3QgeHRfYXVkaXRfaW5mbyB7Ci0gX191OCB0eXBlOworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0hFQ0tTVU0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NIRUNLU1VNLmgKaW5kZXggM2M3MGYxZS4uM2NlNzE1MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0hFQ0tTVU0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DSEVDS1NVTS5oCkBAIC0yMiw3ICsyMiw3IEBACiAjZGVmaW5lIFhUX0NIRUNLU1VNX09QX0ZJTEwgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9DSEVDS1NVTV9pbmZvIHsKLSBfX3U4IG9wZXJhdGlvbjsKKyAgX191OCBvcGVyYXRpb247CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0xBU1NJRlkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NMQVNTSUZZLmgKaW5kZXggNDRlMjYyZi4uODE0NTRiNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0xBU1NJRlkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DTEFTU0lGWS5oCkBAIC0yMSw2ICsyMSw2IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9jbGFzc2lmeV90YXJnZXRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByaW9yaXR5OworICBfX3UzMiBwcmlvcml0eTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NPTk5TRUNNQVJLLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DT05OU0VDTUFSSy5oCmluZGV4IDEwNWY5NDMuLmM5OWQwMWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NPTk5TRUNNQVJLLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ09OTlNFQ01BUksuaApAQCAtMjEsMTEgKzIxLDExIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDT05OU0VDTUFSS19TQVZFID0gMSwKLSBDT05OU0VDTUFSS19SRVNUT1JFLAorICBDT05OU0VDTUFSS19TQVZFID0gMSwKKyAgQ09OTlNFQ01BUktfUkVTVE9SRSwKIH07CiBzdHJ1Y3QgeHRfY29ubnNlY21hcmtfdGFyZ2V0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1vZGU7CisgIF9fdTggbW9kZTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NULmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DVC5oCmluZGV4IGZkZmVmNWUuLjAzZDIwOTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ1QuaApAQCAtMjEsMzAgKzIxLDMwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DVF9OT1RSQUNLID0gMSA8PCAwLAotIFhUX0NUX05PVFJBQ0tfQUxJQVMgPSAxIDw8IDEsCi0gWFRfQ1RfTUFTSyA9IFhUX0NUX05PVFJBQ0sgfCBYVF9DVF9OT1RSQUNLX0FMSUFTLAorICBYVF9DVF9OT1RSQUNLID0gMSA8PCAwLAorICBYVF9DVF9OT1RSQUNLX0FMSUFTID0gMSA8PCAxLAorICBYVF9DVF9NQVNLID0gWFRfQ1RfTk9UUkFDSyB8IFhUX0NUX05PVFJBQ0tfQUxJQVMsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9jdF90YXJnZXRfaW5mbyB7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgem9uZTsKLSBfX3UzMiBjdF9ldmVudHM7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiB6b25lOworICBfX3UzMiBjdF9ldmVudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4cF9ldmVudHM7Ci0gY2hhciBoZWxwZXJbMTZdOwotIHN0cnVjdCBuZl9jb25uICpjdCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTMyIGV4cF9ldmVudHM7CisgIGNoYXIgaGVscGVyWzE2XTsKKyAgc3RydWN0IG5mX2Nvbm4gKiBjdCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9jdF90YXJnZXRfaW5mb192MSB7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgem9uZTsKLSBfX3UzMiBjdF9ldmVudHM7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiB6b25lOworICBfX3UzMiBjdF9ldmVudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4cF9ldmVudHM7Ci0gY2hhciBoZWxwZXJbMTZdOwotIGNoYXIgdGltZW91dFszMl07Ci0gc3RydWN0IG5mX2Nvbm4gKmN0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191MzIgZXhwX2V2ZW50czsKKyAgY2hhciBoZWxwZXJbMTZdOworICBjaGFyIHRpbWVvdXRbMzJdOworICBzdHJ1Y3QgbmZfY29ubiAqIGN0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9EU0NQLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9EU0NQLmgKaW5kZXggYzEyMjcwNy4uODBmMmY2NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfRFNDUC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0RTQ1AuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfRFNDUF9pbmZvIHsKLSBfX3U4IGRzY3A7CisgIF9fdTggZHNjcDsKIH07CiBzdHJ1Y3QgeHRfdG9zX3RhcmdldF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0b3NfdmFsdWU7Ci0gX191OCB0b3NfbWFzazsKKyAgX191OCB0b3NfdmFsdWU7CisgIF9fdTggdG9zX21hc2s7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfSE1BUksuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0hNQVJLLmgKaW5kZXggYWRkMDMwMi4uZDNiMmFiNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfSE1BUksuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ITUFSSy5oCkBAIC0yMSw1NCArMjEsNTQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hNQVJLX1NBRERSX01BU0ssCi0gWFRfSE1BUktfREFERFJfTUFTSywKLSBYVF9ITUFSS19TUEksCi0gWFRfSE1BUktfU1BJX01BU0ssCisgIFhUX0hNQVJLX1NBRERSX01BU0ssCisgIFhUX0hNQVJLX0RBRERSX01BU0ssCisgIFhUX0hNQVJLX1NQSSwKKyAgWFRfSE1BUktfU1BJX01BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hNQVJLX1NQT1JULAotIFhUX0hNQVJLX0RQT1JULAotIFhUX0hNQVJLX1NQT1JUX01BU0ssCi0gWFRfSE1BUktfRFBPUlRfTUFTSywKKyAgWFRfSE1BUktfU1BPUlQsCisgIFhUX0hNQVJLX0RQT1JULAorICBYVF9ITUFSS19TUE9SVF9NQVNLLAorICBYVF9ITUFSS19EUE9SVF9NQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9ITUFSS19QUk9UT19NQVNLLAotIFhUX0hNQVJLX1JORCwKLSBYVF9ITUFSS19NT0RVTFVTLAotIFhUX0hNQVJLX09GRlNFVCwKKyAgWFRfSE1BUktfUFJPVE9fTUFTSywKKyAgWFRfSE1BUktfUk5ELAorICBYVF9ITUFSS19NT0RVTFVTLAorICBYVF9ITUFSS19PRkZTRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hNQVJLX0NULAotIFhUX0hNQVJLX01FVEhPRF9MMywKLSBYVF9ITUFSS19NRVRIT0RfTDNfNCwKKyAgWFRfSE1BUktfQ1QsCisgIFhUX0hNQVJLX01FVEhPRF9MMywKKyAgWFRfSE1BUktfTUVUSE9EX0wzXzQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfSE1BUktfRkxBRyhmbGFnKSAoMSA8PCBmbGFnKQogdW5pb24gaG1hcmtfcG9ydHMgewotIHN0cnVjdCB7Ci0gX191MTYgc3JjOworICBzdHJ1Y3QgeworICAgIF9fdTE2IHNyYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZHN0OwotIH0gcDE2OwotIHN0cnVjdCB7Ci0gX19iZTE2IHNyYzsKKyAgICBfX3UxNiBkc3Q7CisgIH0gcDE2OworICBzdHJ1Y3QgeworICAgIF9fYmUxNiBzcmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBkc3Q7Ci0gfSBiMTY7Ci0gX191MzIgdjMyOwotIF9fYmUzMiBiMzI7CisgICAgX19iZTE2IGRzdDsKKyAgfSBiMTY7CisgIF9fdTMyIHYzMjsKKyAgX19iZTMyIGIzMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X2htYXJrX2luZm8gewotIHVuaW9uIG5mX2luZXRfYWRkciBzcmNfbWFzazsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgZHN0X21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciBzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIGRzdF9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBobWFya19wb3J0cyBwb3J0X21hc2s7Ci0gdW5pb24gaG1hcmtfcG9ydHMgcG9ydF9zZXQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MTYgcHJvdG9fbWFzazsKKyAgdW5pb24gaG1hcmtfcG9ydHMgcG9ydF9tYXNrOworICB1bmlvbiBobWFya19wb3J0cyBwb3J0X3NldDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTE2IHByb3RvX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhc2hybmQ7Ci0gX191MzIgaG1vZHVsdXM7Ci0gX191MzIgaG9mZnNldDsKKyAgX191MzIgaGFzaHJuZDsKKyAgX191MzIgaG1vZHVsdXM7CisgIF9fdTMyIGhvZmZzZXQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfSURMRVRJTUVSLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9JRExFVElNRVIuaAppbmRleCAxYTJjMDg4Li45ZGY2Yzc2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9JRExFVElNRVIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9JRExFVElNRVIuaApAQCAtMjIsOSArMjIsOSBAQAogI2RlZmluZSBNQVhfSURMRVRJTUVSX0xBQkVMX1NJWkUgMjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWRsZXRpbWVyX3RnX2luZm8gewotIF9fdTMyIHRpbWVvdXQ7Ci0gY2hhciBsYWJlbFtNQVhfSURMRVRJTUVSX0xBQkVMX1NJWkVdOwotIHN0cnVjdCBpZGxldGltZXJfdGcgKnRpbWVyIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191MzIgdGltZW91dDsKKyAgY2hhciBsYWJlbFtNQVhfSURMRVRJTUVSX0xBQkVMX1NJWkVdOworICBzdHJ1Y3QgaWRsZXRpbWVyX3RnICogdGltZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0xFRC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTEVELmgKaW5kZXggNjAwZWRmNC4uNTNiNTNlYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTEVELmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTEVELmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfbGVkX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGlkWzI3XTsKLSBfX3U4IGFsd2F5c19ibGluazsKLSBfX3UzMiBkZWxheTsKLSB2b2lkICppbnRlcm5hbF9kYXRhIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgY2hhciBpZFsyN107CisgIF9fdTggYWx3YXlzX2JsaW5rOworICBfX3UzMiBkZWxheTsKKyAgdm9pZCAqIGludGVybmFsX2RhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0xPRy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTE9HLmgKaW5kZXggNTYxMGVhZC4uNDdhYWUzZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTE9HLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTE9HLmgKQEAgLTI4LDkgKzI4LDkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX0xPR19NQVNLIDB4MmYKIHN0cnVjdCB4dF9sb2dfaW5mbyB7Ci0gdW5zaWduZWQgY2hhciBsZXZlbDsKLSB1bnNpZ25lZCBjaGFyIGxvZ2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIGxldmVsOworICB1bnNpZ25lZCBjaGFyIGxvZ2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHByZWZpeFszMF07CisgIGNoYXIgcHJlZml4WzMwXTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GTE9HLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ORkxPRy5oCmluZGV4IGE4ZDBjZmYuLmM3ODFmY2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GTE9HLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTkZMT0cuaApAQCAtMjQsMTMgKzI0LDEzIEBACiAjZGVmaW5lIFhUX05GTE9HX0RFRkFVTFRfVEhSRVNIT0xEIDAKICNkZWZpbmUgWFRfTkZMT0dfTUFTSyAweDAKIHN0cnVjdCB4dF9uZmxvZ19pbmZvIHsKLSBfX3UzMiBsZW47CisgIF9fdTMyIGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZ3JvdXA7Ci0gX191MTYgdGhyZXNob2xkOwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IHBhZDsKKyAgX191MTYgZ3JvdXA7CisgIF9fdTE2IHRocmVzaG9sZDsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwcmVmaXhbNjRdOworICBjaGFyIHByZWZpeFs2NF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ORlFVRVVFLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ORlFVRVVFLmgKaW5kZXggYjlhZWNhMS4uY2U0ODcyNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTkZRVUVVRS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GUVVFVUUuaApAQCAtMjEsMjQgKzIxLDI0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9ORlFfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHF1ZXVlbnVtOworICBfX3UxNiBxdWV1ZW51bTsKIH07CiBzdHJ1Y3QgeHRfTkZRX2luZm9fdjEgewotIF9fdTE2IHF1ZXVlbnVtOworICBfX3UxNiBxdWV1ZW51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcXVldWVzX3RvdGFsOworICBfX3UxNiBxdWV1ZXNfdG90YWw7CiB9Owogc3RydWN0IHh0X05GUV9pbmZvX3YyIHsKLSBfX3UxNiBxdWV1ZW51bTsKKyAgX191MTYgcXVldWVudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHF1ZXVlc190b3RhbDsKLSBfX3UxNiBieXBhc3M7CisgIF9fdTE2IHF1ZXVlc190b3RhbDsKKyAgX191MTYgYnlwYXNzOwogfTsKIHN0cnVjdCB4dF9ORlFfaW5mb192MyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHF1ZXVlbnVtOwotIF9fdTE2IHF1ZXVlc190b3RhbDsKLSBfX3UxNiBmbGFnczsKKyAgX191MTYgcXVldWVudW07CisgIF9fdTE2IHF1ZXVlc190b3RhbDsKKyAgX191MTYgZmxhZ3M7CiAjZGVmaW5lIE5GUV9GTEFHX0JZUEFTUyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlFfRkxBR19DUFVfRkFOT1VUIDB4MDIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1JBVEVFU1QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1JBVEVFU1QuaAppbmRleCAxOTk3ZWZhLi42M2RkMmI2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9SQVRFRVNULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfUkFURUVTVC5oCkBAIC0yMSwxMCArMjEsMTAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X3JhdGVlc3RfdGFyZ2V0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbSUZOQU1TSVpdOwotIF9fczggaW50ZXJ2YWw7Ci0gX191OCBld21hX2xvZzsKLSBzdHJ1Y3QgeHRfcmF0ZWVzdCAqZXN0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgY2hhciBuYW1lW0lGTkFNU0laXTsKKyAgX19zOCBpbnRlcnZhbDsKKyAgX191OCBld21hX2xvZzsKKyAgc3RydWN0IHh0X3JhdGVlc3QgKiBlc3QgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1NFQ01BUksuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1NFQ01BUksuaAppbmRleCA5ZWUwMDRkLi4wNmE0YTA1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9TRUNNQVJLLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU0VDTUFSSy5oCkBAIC0yMyw5ICsyMyw5IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUNNQVJLX1NFQ0NUWF9NQVggMjU2CiBzdHJ1Y3QgeHRfc2VjbWFya190YXJnZXRfaW5mbyB7Ci0gX191OCBtb2RlOwotIF9fdTMyIHNlY2lkOworICBfX3U4IG1vZGU7CisgIF9fdTMyIHNlY2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNlY2N0eFtTRUNNQVJLX1NFQ0NUWF9NQVhdOworICBjaGFyIHNlY2N0eFtTRUNNQVJLX1NFQ0NUWF9NQVhdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU1lOUFJPWFkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1NZTlBST1hZLmgKaW5kZXggYjNjZDFmZi4uZGJkYjc0YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU1lOUFJPWFkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9TWU5QUk9YWS5oCkBAIC0yNiw5ICsyNiw5IEBACiAjZGVmaW5lIFhUX1NZTlBST1hZX09QVF9FQ04gMHgxMAogc3RydWN0IHh0X3N5bnByb3h5X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9wdGlvbnM7Ci0gX191OCB3c2NhbGU7Ci0gX191MTYgbXNzOworICBfX3U4IG9wdGlvbnM7CisgIF9fdTggd3NjYWxlOworICBfX3UxNiBtc3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVENQTVNTLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BNU1MuaAppbmRleCA5MWMyNzM3Li4zYzI1YzQzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BNU1MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BNU1MuaApAQCAtMjEsNyArMjEsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfdGNwbXNzX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtc3M7CisgIF9fdTE2IG1zczsKIH07CiAjZGVmaW5lIFhUX1RDUE1TU19DTEFNUF9QTVRVIDB4ZmZmZgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BPUFRTVFJJUC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVENQT1BUU1RSSVAuaAppbmRleCA2YTcwZDA2Li5hY2Y1NzdmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BPUFRTVFJJUC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE9QVFNUUklQLmgKQEAgLTE5LDExICsxOSwxMSBAQAogI2lmbmRlZiBfWFRfVENQT1BUU1RSSVBfSAogI2RlZmluZSBfWFRfVENQT1BUU1RSSVBfSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIHRjcG9wdHN0cmlwX3NldF9iaXQoYm1hcCwgaWR4KSAgIChibWFwWyhpZHgpID4+IDVdIHw9IDFVIDw8IChpZHggJiAzMSkpCisjZGVmaW5lIHRjcG9wdHN0cmlwX3NldF9iaXQoYm1hcCxpZHgpIChibWFwWyhpZHgpID4+IDVdIHw9IDFVIDw8IChpZHggJiAzMSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSB0Y3BvcHRzdHJpcF90ZXN0X2JpdChibWFwLCBpZHgpICAgKCgoMVUgPDwgKGlkeCAmIDMxKSkgJiBibWFwWyhpZHgpID4+IDVdKSAhPSAwKQorI2RlZmluZSB0Y3BvcHRzdHJpcF90ZXN0X2JpdChibWFwLGlkeCkgKCgoMVUgPDwgKGlkeCAmIDMxKSkgJiBibWFwWyhpZHgpID4+IDVdKSAhPSAwKQogc3RydWN0IHh0X3RjcG9wdHN0cmlwX3RhcmdldF9pbmZvIHsKLSBfX3UzMiBzdHJpcF9ibWFwWzhdOworICBfX3UzMiBzdHJpcF9ibWFwWzhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RFRS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVEVFLmgKaW5kZXggMDAwYjc4Ni4uZGRmNmExOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVEVFLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVEVFLmgKQEAgLTE5LDEwICsxOSwxMCBAQAogI2lmbmRlZiBfWFRfVEVFX1RBUkdFVF9ICiAjZGVmaW5lIF9YVF9URUVfVEFSR0VUX0gKIHN0cnVjdCB4dF90ZWVfdGdpbmZvIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgZ3c7CisgIHVuaW9uIG5mX2luZXRfYWRkciBndzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBvaWZbMTZdOwotIHN0cnVjdCB4dF90ZWVfcHJpdiAqcHJpdiBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIGNoYXIgb2lmWzE2XTsKKyAgc3RydWN0IHh0X3RlZV9wcml2ICogcHJpdiBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVFBST1hZLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UUFJPWFkuaAppbmRleCBmNGY2YmY2Li4zODA3MDg1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UUFJPWFkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UUFJPWFkuaApAQCAtMjEsMTggKzIxLDE4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF90cHJveHlfdGFyZ2V0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXJrX21hc2s7Ci0gX191MzIgbWFya192YWx1ZTsKLSBfX2JlMzIgbGFkZHI7Ci0gX19iZTE2IGxwb3J0OworICBfX3UzMiBtYXJrX21hc2s7CisgIF9fdTMyIG1hcmtfdmFsdWU7CisgIF9fYmUzMiBsYWRkcjsKKyAgX19iZTE2IGxwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfdHByb3h5X3RhcmdldF9pbmZvX3YxIHsKLSBfX3UzMiBtYXJrX21hc2s7Ci0gX191MzIgbWFya192YWx1ZTsKKyAgX191MzIgbWFya19tYXNrOworICBfX3UzMiBtYXJrX3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBuZl9pbmV0X2FkZHIgbGFkZHI7Ci0gX19iZTE2IGxwb3J0OworICB1bmlvbiBuZl9pbmV0X2FkZHIgbGFkZHI7CisgIF9fYmUxNiBscG9ydDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9hZGRydHlwZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfYWRkcnR5cGUuaAppbmRleCA5ZGI0M2FkLi4yYTdkMDFmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9hZGRydHlwZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2FkZHJ0eXBlLmgKQEAgLTIxLDQxICsyMSw0MSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQUREUlRZUEVfSU5WRVJUX1NPVVJDRSA9IDB4MDAwMSwKLSBYVF9BRERSVFlQRV9JTlZFUlRfREVTVCA9IDB4MDAwMiwKLSBYVF9BRERSVFlQRV9MSU1JVF9JRkFDRV9JTiA9IDB4MDAwNCwKLSBYVF9BRERSVFlQRV9MSU1JVF9JRkFDRV9PVVQgPSAweDAwMDgsCisgIFhUX0FERFJUWVBFX0lOVkVSVF9TT1VSQ0UgPSAweDAwMDEsCisgIFhUX0FERFJUWVBFX0lOVkVSVF9ERVNUID0gMHgwMDAyLAorICBYVF9BRERSVFlQRV9MSU1JVF9JRkFDRV9JTiA9IDB4MDAwNCwKKyAgWFRfQUREUlRZUEVfTElNSVRfSUZBQ0VfT1VUID0gMHgwMDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBYVF9BRERSVFlQRV9VTlNQRUMgPSAxIDw8IDAsCi0gWFRfQUREUlRZUEVfVU5JQ0FTVCA9IDEgPDwgMSwKKyAgWFRfQUREUlRZUEVfVU5TUEVDID0gMSA8PCAwLAorICBYVF9BRERSVFlQRV9VTklDQVNUID0gMSA8PCAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9BRERSVFlQRV9MT0NBTCA9IDEgPDwgMiwKLSBYVF9BRERSVFlQRV9CUk9BRENBU1QgPSAxIDw8IDMsCi0gWFRfQUREUlRZUEVfQU5ZQ0FTVCA9IDEgPDwgNCwKLSBYVF9BRERSVFlQRV9NVUxUSUNBU1QgPSAxIDw8IDUsCisgIFhUX0FERFJUWVBFX0xPQ0FMID0gMSA8PCAyLAorICBYVF9BRERSVFlQRV9CUk9BRENBU1QgPSAxIDw8IDMsCisgIFhUX0FERFJUWVBFX0FOWUNBU1QgPSAxIDw8IDQsCisgIFhUX0FERFJUWVBFX01VTFRJQ0FTVCA9IDEgPDwgNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQUREUlRZUEVfQkxBQ0tIT0xFID0gMSA8PCA2LAotIFhUX0FERFJUWVBFX1VOUkVBQ0hBQkxFID0gMSA8PCA3LAotIFhUX0FERFJUWVBFX1BST0hJQklUID0gMSA8PCA4LAotIFhUX0FERFJUWVBFX1RIUk9XID0gMSA8PCA5LAorICBYVF9BRERSVFlQRV9CTEFDS0hPTEUgPSAxIDw8IDYsCisgIFhUX0FERFJUWVBFX1VOUkVBQ0hBQkxFID0gMSA8PCA3LAorICBYVF9BRERSVFlQRV9QUk9ISUJJVCA9IDEgPDwgOCwKKyAgWFRfQUREUlRZUEVfVEhST1cgPSAxIDw8IDksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0FERFJUWVBFX05BVCA9IDEgPDwgMTAsCi0gWFRfQUREUlRZUEVfWFJFU09MVkUgPSAxIDw8IDExLAorICBYVF9BRERSVFlQRV9OQVQgPSAxIDw8IDEwLAorICBYVF9BRERSVFlQRV9YUkVTT0xWRSA9IDEgPDwgMTEsCiB9Owogc3RydWN0IHh0X2FkZHJ0eXBlX2luZm9fdjEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzb3VyY2U7Ci0gX191MTYgZGVzdDsKLSBfX3UzMiBmbGFnczsKKyAgX191MTYgc291cmNlOworICBfX3UxNiBkZXN0OworICBfX3UzMiBmbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2FkZHJ0eXBlX2luZm8gewotIF9fdTE2IHNvdXJjZTsKLSBfX3UxNiBkZXN0OwotIF9fdTMyIGludmVydF9zb3VyY2U7CisgIF9fdTE2IHNvdXJjZTsKKyAgX191MTYgZGVzdDsKKyAgX191MzIgaW52ZXJ0X3NvdXJjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW52ZXJ0X2Rlc3Q7CisgIF9fdTMyIGludmVydF9kZXN0OwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfYnBmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9icGYuaAppbmRleCAyM2FlODkyLi42OWZmMzA0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9icGYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9icGYuaApAQCAtMjIsMTAgKzIyLDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX0JQRl9NQVhfTlVNX0lOU1RSIDY0CitzdHJ1Y3QgYnBmX3Byb2c7CiBzdHJ1Y3QgeHRfYnBmX2luZm8gewotIF9fdTE2IGJwZl9wcm9ncmFtX251bV9lbGVtOwotIHN0cnVjdCBzb2NrX2ZpbHRlciBicGZfcHJvZ3JhbVtYVF9CUEZfTUFYX05VTV9JTlNUUl07CisgIF9fdTE2IGJwZl9wcm9ncmFtX251bV9lbGVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc2tfZmlsdGVyICpmaWx0ZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBzdHJ1Y3Qgc29ja19maWx0ZXIgYnBmX3Byb2dyYW1bWFRfQlBGX01BWF9OVU1fSU5TVFJdOworICBzdHJ1Y3QgYnBmX3Byb2cgKiBmaWx0ZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogfTsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nncm91cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2dyb3VwLmgKaW5kZXggOTg2OTUxYi4uY2U0MmU5ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2dyb3VwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2dyb3VwLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X2Nncm91cF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgaW52ZXJ0OworICBfX3UzMiBpZDsKKyAgX191MzIgaW52ZXJ0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NsdXN0ZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NsdXN0ZXIuaAppbmRleCAyNzk2Y2M3Li44NjJhMTE5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jbHVzdGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2x1c3Rlci5oCkBAIC0yMSwxNCArMjEsMTQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9jbHVzdGVyX2ZsYWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ0xVU1RFUl9GX0lOViA9ICgxIDw8IDApCisgIFhUX0NMVVNURVJfRl9JTlYgPSAoMSA8PCAwKQogfTsKIHN0cnVjdCB4dF9jbHVzdGVyX21hdGNoX2luZm8gewotIF9fdTMyIHRvdGFsX25vZGVzOworICBfX3UzMiB0b3RhbF9ub2RlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbm9kZV9tYXNrOwotIF9fdTMyIGhhc2hfc2VlZDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgbm9kZV9tYXNrOworICBfX3UzMiBoYXNoX3NlZWQ7CisgIF9fdTMyIGZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX0NMVVNURVJfTk9ERVNfTUFYIDMyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb21tZW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb21tZW50LmgKaW5kZXggYzRlMTBjNC4uNTU0NTQ0ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29tbWVudC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NvbW1lbnQuaApAQCAtMjEsNiArMjEsNiBAQAogI2RlZmluZSBYVF9NQVhfQ09NTUVOVF9MRU4gMjU2CiBzdHJ1Y3QgeHRfY29tbWVudF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBjb21tZW50W1hUX01BWF9DT01NRU5UX0xFTl07CisgIGNoYXIgY29tbWVudFtYVF9NQVhfQ09NTUVOVF9MRU5dOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubmJ5dGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25uYnl0ZXMuaAppbmRleCAxNmQxNjEwLi40NzliMWE2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25uYnl0ZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25uYnl0ZXMuaApAQCAtMjEsMjUgKzIxLDI1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfY29ubmJ5dGVzX3doYXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DT05OQllURVNfUEtUUywKLSBYVF9DT05OQllURVNfQllURVMsCi0gWFRfQ09OTkJZVEVTX0FWR1BLVCwKKyAgWFRfQ09OTkJZVEVTX1BLVFMsCisgIFhUX0NPTk5CWVRFU19CWVRFUywKKyAgWFRfQ09OTkJZVEVTX0FWR1BLVCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB4dF9jb25uYnl0ZXNfZGlyZWN0aW9uIHsKLSBYVF9DT05OQllURVNfRElSX09SSUdJTkFMLAotIFhUX0NPTk5CWVRFU19ESVJfUkVQTFksCi0gWFRfQ09OTkJZVEVTX0RJUl9CT1RILAorICBYVF9DT05OQllURVNfRElSX09SSUdJTkFMLAorICBYVF9DT05OQllURVNfRElSX1JFUExZLAorICBYVF9DT05OQllURVNfRElSX0JPVEgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9jb25uYnl0ZXNfaW5mbyB7Ci0gc3RydWN0IHsKLSBfX2FsaWduZWRfdTY0IGZyb207CisgIHN0cnVjdCB7CisgICAgX19hbGlnbmVkX3U2NCBmcm9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2FsaWduZWRfdTY0IHRvOwotIH0gY291bnQ7Ci0gX191OCB3aGF0OwotIF9fdTggZGlyZWN0aW9uOworICAgIF9fYWxpZ25lZF91NjQgdG87CisgIH0gY291bnQ7CisgIF9fdTggd2hhdDsKKyAgX191OCBkaXJlY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubmxhYmVsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGFiZWwuaAppbmRleCA0ZTVmM2M5Li4xMGEwY2JjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGFiZWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGFiZWwuaApAQCAtMTksMTIgKzE5LDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgWFRfQ09OTkxBQkVMX01BWEJJVCAxMjcKIGVudW0geHRfY29ubmxhYmVsX210b3B0cyB7Ci0gWFRfQ09OTkxBQkVMX09QX0lOVkVSVCA9IDEgPDwgMCwKKyAgWFRfQ09OTkxBQkVMX09QX0lOVkVSVCA9IDEgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ09OTkxBQkVMX09QX1NFVCA9IDEgPDwgMSwKKyAgWFRfQ09OTkxBQkVMX09QX1NFVCA9IDEgPDwgMSwKIH07CiBzdHJ1Y3QgeHRfY29ubmxhYmVsX210aW5mbyB7Ci0gX191MTYgYml0OworICBfX3UxNiBiaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG9wdGlvbnM7CisgIF9fdTE2IG9wdGlvbnM7CiB9OwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubmxpbWl0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGltaXQuaAppbmRleCBiMjMzNDgyLi5mMDA2YTUwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGltaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGltaXQuaApAQCAtMjMsMjMgKzIzLDIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2Nvbm5saW1pdF9kYXRhOwogZW51bSB7Ci0gWFRfQ09OTkxJTUlUX0lOVkVSVCA9IDEgPDwgMCwKLSBYVF9DT05OTElNSVRfREFERFIgPSAxIDw8IDEsCisgIFhUX0NPTk5MSU1JVF9JTlZFUlQgPSAxIDw8IDAsCisgIFhUX0NPTk5MSU1JVF9EQUREUiA9IDEgPDwgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X2Nvbm5saW1pdF9pbmZvIHsKLSB1bmlvbiB7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIG1hc2s7CisgIHVuaW9uIHsKKyAgICB1bmlvbiBuZl9pbmV0X2FkZHIgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fYmUzMiB2NF9tYXNrOwotIF9fYmUzMiB2Nl9tYXNrWzRdOwotIH07CisgICAgdW5pb24geworICAgICAgX19iZTMyIHY0X21hc2s7CisgICAgICBfX2JlMzIgdjZfbWFza1s0XTsKKyAgICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIHVuc2lnbmVkIGludCBsaW1pdDsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3QgeHRfY29ubmxpbWl0X2RhdGEgKmRhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICB9OworICB1bnNpZ25lZCBpbnQgbGltaXQ7CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgeHRfY29ubmxpbWl0X2RhdGEgKiBkYXRhIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubWFyay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubm1hcmsuaAppbmRleCAxNzExN2FkLi4zZTU0MzBmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubWFyay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmgKQEAgLTIxLDE5ICsyMSwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ09OTk1BUktfU0VUID0gMCwKLSBYVF9DT05OTUFSS19TQVZFLAotIFhUX0NPTk5NQVJLX1JFU1RPUkUKKyAgWFRfQ09OTk1BUktfU0VUID0gMCwKKyAgWFRfQ09OTk1BUktfU0FWRSwKKyAgWFRfQ09OTk1BUktfUkVTVE9SRQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfY29ubm1hcmtfdGdpbmZvMSB7Ci0gX191MzIgY3RtYXJrLCBjdG1hc2ssIG5mbWFzazsKLSBfX3U4IG1vZGU7CisgIF9fdTMyIGN0bWFyaywgY3RtYXNrLCBuZm1hc2s7CisgIF9fdTggbW9kZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2Nvbm5tYXJrX210aW5mbzEgewotIF9fdTMyIG1hcmssIG1hc2s7Ci0gX191OCBpbnZlcnQ7CisgIF9fdTMyIG1hcmssIG1hc2s7CisgIF9fdTggaW52ZXJ0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm50cmFjay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubnRyYWNrLmgKaW5kZXggNTNhOWZhMC4uYTY5Y2MyYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubnRyYWNrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubnRyYWNrLmgKQEAgLTIyLDc4ICsyMiw3OCBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3R1cGxlX2NvbW1vbi5oPgotI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfQklUKGN0aW5mbykgKDEgPDwgKChjdGluZm8pJUlQX0NUX0lTX1JFUExZKzEpKQorI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfQklUKGN0aW5mbykgKDEgPDwgKChjdGluZm8pICUgSVBfQ1RfSVNfUkVQTFkgKyAxKSkKICNkZWZpbmUgWFRfQ09OTlRSQUNLX1NUQVRFX0lOVkFMSUQgKDEgPDwgMCkKICNkZWZpbmUgWFRfQ09OTlRSQUNLX1NUQVRFX1NOQVQgKDEgPDwgKElQX0NUX05VTUJFUiArIDEpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfQ09OTlRSQUNLX1NUQVRFX0ROQVQgKDEgPDwgKElQX0NUX05VTUJFUiArIDIpKQogI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfVU5UUkFDS0VEICgxIDw8IChJUF9DVF9OVU1CRVIgKyAzKSkKIGVudW0gewotIFhUX0NPTk5UUkFDS19TVEFURSA9IDEgPDwgMCwKKyAgWFRfQ09OTlRSQUNLX1NUQVRFID0gMSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DT05OVFJBQ0tfUFJPVE8gPSAxIDw8IDEsCi0gWFRfQ09OTlRSQUNLX09SSUdTUkMgPSAxIDw8IDIsCi0gWFRfQ09OTlRSQUNLX09SSUdEU1QgPSAxIDw8IDMsCi0gWFRfQ09OTlRSQUNLX1JFUExTUkMgPSAxIDw8IDQsCisgIFhUX0NPTk5UUkFDS19QUk9UTyA9IDEgPDwgMSwKKyAgWFRfQ09OTlRSQUNLX09SSUdTUkMgPSAxIDw8IDIsCisgIFhUX0NPTk5UUkFDS19PUklHRFNUID0gMSA8PCAzLAorICBYVF9DT05OVFJBQ0tfUkVQTFNSQyA9IDEgPDwgNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ09OTlRSQUNLX1JFUExEU1QgPSAxIDw8IDUsCi0gWFRfQ09OTlRSQUNLX1NUQVRVUyA9IDEgPDwgNiwKLSBYVF9DT05OVFJBQ0tfRVhQSVJFUyA9IDEgPDwgNywKLSBYVF9DT05OVFJBQ0tfT1JJR1NSQ19QT1JUID0gMSA8PCA4LAorICBYVF9DT05OVFJBQ0tfUkVQTERTVCA9IDEgPDwgNSwKKyAgWFRfQ09OTlRSQUNLX1NUQVRVUyA9IDEgPDwgNiwKKyAgWFRfQ09OTlRSQUNLX0VYUElSRVMgPSAxIDw8IDcsCisgIFhUX0NPTk5UUkFDS19PUklHU1JDX1BPUlQgPSAxIDw8IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0NPTk5UUkFDS19PUklHRFNUX1BPUlQgPSAxIDw8IDksCi0gWFRfQ09OTlRSQUNLX1JFUExTUkNfUE9SVCA9IDEgPDwgMTAsCi0gWFRfQ09OTlRSQUNLX1JFUExEU1RfUE9SVCA9IDEgPDwgMTEsCi0gWFRfQ09OTlRSQUNLX0RJUkVDVElPTiA9IDEgPDwgMTIsCisgIFhUX0NPTk5UUkFDS19PUklHRFNUX1BPUlQgPSAxIDw8IDksCisgIFhUX0NPTk5UUkFDS19SRVBMU1JDX1BPUlQgPSAxIDw8IDEwLAorICBYVF9DT05OVFJBQ0tfUkVQTERTVF9QT1JUID0gMSA8PCAxMSwKKyAgWFRfQ09OTlRSQUNLX0RJUkVDVElPTiA9IDEgPDwgMTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0NPTk5UUkFDS19TVEFURV9BTElBUyA9IDEgPDwgMTMsCisgIFhUX0NPTk5UUkFDS19TVEFURV9BTElBUyA9IDEgPDwgMTMsCiB9Owogc3RydWN0IHh0X2Nvbm50cmFja19tdGluZm8xIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ3NyY19hZGRyLCBvcmlnc3JjX21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnc3JjX2FkZHIsIG9yaWdzcmNfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdkc3RfYWRkciwgb3JpZ2RzdF9tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciByZXBsc3JjX2FkZHIsIHJlcGxzcmNfbWFzazsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbGRzdF9hZGRyLCByZXBsZHN0X21hc2s7Ci0gX191MzIgZXhwaXJlc19taW4sIGV4cGlyZXNfbWF4OworICB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ2RzdF9hZGRyLCBvcmlnZHN0X21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciByZXBsc3JjX2FkZHIsIHJlcGxzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxkc3RfYWRkciwgcmVwbGRzdF9tYXNrOworICBfX3UzMiBleHBpcmVzX21pbiwgZXhwaXJlc19tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGw0cHJvdG87Ci0gX19iZTE2IG9yaWdzcmNfcG9ydCwgb3JpZ2RzdF9wb3J0OwotIF9fYmUxNiByZXBsc3JjX3BvcnQsIHJlcGxkc3RfcG9ydDsKLSBfX3UxNiBtYXRjaF9mbGFncywgaW52ZXJ0X2ZsYWdzOworICBfX3UxNiBsNHByb3RvOworICBfX2JlMTYgb3JpZ3NyY19wb3J0LCBvcmlnZHN0X3BvcnQ7CisgIF9fYmUxNiByZXBsc3JjX3BvcnQsIHJlcGxkc3RfcG9ydDsKKyAgX191MTYgbWF0Y2hfZmxhZ3MsIGludmVydF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKKyAgX191OCBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKIH07CiBzdHJ1Y3QgeHRfY29ubnRyYWNrX210aW5mbzIgewotIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnc3JjX2FkZHIsIG9yaWdzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdzcmNfYWRkciwgb3JpZ3NyY19tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ2RzdF9hZGRyLCBvcmlnZHN0X21hc2s7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciByZXBsZHN0X2FkZHIsIHJlcGxkc3RfbWFzazsKLSBfX3UzMiBleHBpcmVzX21pbiwgZXhwaXJlc19tYXg7CisgIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnZHN0X2FkZHIsIG9yaWdkc3RfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbGRzdF9hZGRyLCByZXBsZHN0X21hc2s7CisgIF9fdTMyIGV4cGlyZXNfbWluLCBleHBpcmVzX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbDRwcm90bzsKLSBfX2JlMTYgb3JpZ3NyY19wb3J0LCBvcmlnZHN0X3BvcnQ7Ci0gX19iZTE2IHJlcGxzcmNfcG9ydCwgcmVwbGRzdF9wb3J0OwotIF9fdTE2IG1hdGNoX2ZsYWdzLCBpbnZlcnRfZmxhZ3M7CisgIF9fdTE2IGw0cHJvdG87CisgIF9fYmUxNiBvcmlnc3JjX3BvcnQsIG9yaWdkc3RfcG9ydDsKKyAgX19iZTE2IHJlcGxzcmNfcG9ydCwgcmVwbGRzdF9wb3J0OworICBfX3UxNiBtYXRjaF9mbGFncywgaW52ZXJ0X2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKKyAgX191MTYgc3RhdGVfbWFzaywgc3RhdHVzX21hc2s7CiB9Owogc3RydWN0IHh0X2Nvbm50cmFja19tdGluZm8zIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ3NyY19hZGRyLCBvcmlnc3JjX21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnc3JjX2FkZHIsIG9yaWdzcmNfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdkc3RfYWRkciwgb3JpZ2RzdF9tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciByZXBsc3JjX2FkZHIsIHJlcGxzcmNfbWFzazsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbGRzdF9hZGRyLCByZXBsZHN0X21hc2s7Ci0gX191MzIgZXhwaXJlc19taW4sIGV4cGlyZXNfbWF4OworICB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ2RzdF9hZGRyLCBvcmlnZHN0X21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciByZXBsc3JjX2FkZHIsIHJlcGxzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxkc3RfYWRkciwgcmVwbGRzdF9tYXNrOworICBfX3UzMiBleHBpcmVzX21pbiwgZXhwaXJlc19tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGw0cHJvdG87Ci0gX191MTYgb3JpZ3NyY19wb3J0LCBvcmlnZHN0X3BvcnQ7Ci0gX191MTYgcmVwbHNyY19wb3J0LCByZXBsZHN0X3BvcnQ7Ci0gX191MTYgbWF0Y2hfZmxhZ3MsIGludmVydF9mbGFnczsKKyAgX191MTYgbDRwcm90bzsKKyAgX191MTYgb3JpZ3NyY19wb3J0LCBvcmlnZHN0X3BvcnQ7CisgIF9fdTE2IHJlcGxzcmNfcG9ydCwgcmVwbGRzdF9wb3J0OworICBfX3UxNiBtYXRjaF9mbGFncywgaW52ZXJ0X2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKLSBfX3UxNiBvcmlnc3JjX3BvcnRfaGlnaCwgb3JpZ2RzdF9wb3J0X2hpZ2g7Ci0gX191MTYgcmVwbHNyY19wb3J0X2hpZ2gsIHJlcGxkc3RfcG9ydF9oaWdoOworICBfX3UxNiBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKKyAgX191MTYgb3JpZ3NyY19wb3J0X2hpZ2gsIG9yaWdkc3RfcG9ydF9oaWdoOworICBfX3UxNiByZXBsc3JjX3BvcnRfaGlnaCwgcmVwbGRzdF9wb3J0X2hpZ2g7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY3B1LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jcHUuaAppbmRleCBiOTIxMWU2Li4wODcyMjg2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jcHUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jcHUuaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfY3B1X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcHU7Ci0gX191MzIgaW52ZXJ0OworICBfX3UzMiBjcHU7CisgIF9fdTMyIGludmVydDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kY2NwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kY2NwLmgKaW5kZXggODA5NWVmMi4uMTFiNTAyMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZGNjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2RjY3AuaApAQCAtMjcsMTMgKzI3LDEzIEBACiAjZGVmaW5lIFhUX0RDQ1BfVkFMSURfRkxBR1MgMHgwZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9kY2NwX2luZm8gewotIF9fdTE2IGRwdHNbMl07Ci0gX191MTYgc3B0c1syXTsKLSBfX3UxNiBmbGFnczsKKyAgX191MTYgZHB0c1syXTsKKyAgX191MTYgc3B0c1syXTsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGludmZsYWdzOwotIF9fdTE2IHR5cGVtYXNrOwotIF9fdTggb3B0aW9uOworICBfX3UxNiBpbnZmbGFnczsKKyAgX191MTYgdHlwZW1hc2s7CisgIF9fdTggb3B0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Rldmdyb3VwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kZXZncm91cC5oCmluZGV4IGQ2YjJlYmMuLjU5MWRhMjYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Rldmdyb3VwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZGV2Z3JvdXAuaApAQCAtMjEsMTkgKzIxLDE5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfZGV2Z3JvdXBfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9ERVZHUk9VUF9NQVRDSF9TUkMgPSAweDEsCi0gWFRfREVWR1JPVVBfSU5WRVJUX1NSQyA9IDB4MiwKLSBYVF9ERVZHUk9VUF9NQVRDSF9EU1QgPSAweDQsCi0gWFRfREVWR1JPVVBfSU5WRVJUX0RTVCA9IDB4OCwKKyAgWFRfREVWR1JPVVBfTUFUQ0hfU1JDID0gMHgxLAorICBYVF9ERVZHUk9VUF9JTlZFUlRfU1JDID0gMHgyLAorICBYVF9ERVZHUk9VUF9NQVRDSF9EU1QgPSAweDQsCisgIFhUX0RFVkdST1VQX0lOVkVSVF9EU1QgPSAweDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9kZXZncm91cF9pbmZvIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBzcmNfZ3JvdXA7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBzcmNfZ3JvdXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNyY19tYXNrOwotIF9fdTMyIGRzdF9ncm91cDsKLSBfX3UzMiBkc3RfbWFzazsKKyAgX191MzIgc3JjX21hc2s7CisgIF9fdTMyIGRzdF9ncm91cDsKKyAgX191MzIgZHN0X21hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZHNjcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZHNjcC5oCmluZGV4IGMzZTZjMWIuLjVjMTgyYTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2RzY3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kc2NwLmgKQEAgLTI0LDE1ICsyNCwxNSBAQAogI2RlZmluZSBYVF9EU0NQX1NISUZUIDIKICNkZWZpbmUgWFRfRFNDUF9NQVggMHgzZgogc3RydWN0IHh0X2RzY3BfaW5mbyB7Ci0gX191OCBkc2NwOworICBfX3U4IGRzY3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OworICBfX3U4IGludmVydDsKIH07CiBzdHJ1Y3QgeHRfdG9zX21hdGNoX2luZm8gewotIF9fdTggdG9zX21hc2s7CisgIF9fdTggdG9zX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdG9zX3ZhbHVlOwotIF9fdTggaW52ZXJ0OworICBfX3U4IHRvc192YWx1ZTsKKyAgX191OCBpbnZlcnQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZWNuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9lY24uaAppbmRleCBkZTA0YzY1Li40YTgyZWMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9lY24uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9lY24uaApAQCAtMjgsMTYgKzI4LDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9FQ05fT1BfTUFUQ0hfTUFTSyAweGNlCiBzdHJ1Y3QgeHRfZWNuX2luZm8gewotIF9fdTggb3BlcmF0aW9uOwotIF9fdTggaW52ZXJ0OworICBfX3U4IG9wZXJhdGlvbjsKKyAgX191OCBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaXBfZWN0OwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTggZWN0OworICBfX3U4IGlwX2VjdDsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGVjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB0Y3A7Ci0gfSBwcm90bzsKKyAgICB9IHRjcDsKKyAgfSBwcm90bzsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9lc3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2VzcC5oCmluZGV4IDhjYTU0ZTguLmE1Mzg5ZjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2VzcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2VzcC5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9lc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGlzWzJdOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTMyIHNwaXNbMl07CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogI2RlZmluZSBYVF9FU1BfSU5WX1NQSSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaGFzaGxpbWl0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oYXNobGltaXQuaAppbmRleCBkN2Y2MDE1Li40OWUxYzM0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oYXNobGltaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oYXNobGltaXQuaApAQCAtMjQsNTUgKzI0LDU1IEBACiAjZGVmaW5lIFhUX0hBU0hMSU1JVF9CWVRFX1NISUZUIDQKIHN0cnVjdCB4dF9oYXNobGltaXRfaHRhYmxlOwogZW51bSB7Ci0gWFRfSEFTSExJTUlUX0hBU0hfRElQID0gMSA8PCAwLAorICBYVF9IQVNITElNSVRfSEFTSF9ESVAgPSAxIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hBU0hMSU1JVF9IQVNIX0RQVCA9IDEgPDwgMSwKLSBYVF9IQVNITElNSVRfSEFTSF9TSVAgPSAxIDw8IDIsCi0gWFRfSEFTSExJTUlUX0hBU0hfU1BUID0gMSA8PCAzLAotIFhUX0hBU0hMSU1JVF9JTlZFUlQgPSAxIDw8IDQsCisgIFhUX0hBU0hMSU1JVF9IQVNIX0RQVCA9IDEgPDwgMSwKKyAgWFRfSEFTSExJTUlUX0hBU0hfU0lQID0gMSA8PCAyLAorICBYVF9IQVNITElNSVRfSEFTSF9TUFQgPSAxIDw8IDMsCisgIFhUX0hBU0hMSU1JVF9JTlZFUlQgPSAxIDw8IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hBU0hMSU1JVF9CWVRFUyA9IDEgPDwgNSwKKyAgWFRfSEFTSExJTUlUX0JZVEVTID0gMSA8PCA1LAogfTsKIHN0cnVjdCBoYXNobGltaXRfY2ZnIHsKLSBfX3UzMiBtb2RlOworICBfX3UzMiBtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhdmc7Ci0gX191MzIgYnVyc3Q7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiBtYXg7CisgIF9fdTMyIGF2ZzsKKyAgX191MzIgYnVyc3Q7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIG1heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2NfaW50ZXJ2YWw7Ci0gX191MzIgZXhwaXJlOworICBfX3UzMiBnY19pbnRlcnZhbDsKKyAgX191MzIgZXhwaXJlOwogfTsKIHN0cnVjdCB4dF9oYXNobGltaXRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZSBbSUZOQU1TSVpdOwotIHN0cnVjdCBoYXNobGltaXRfY2ZnIGNmZzsKLSBzdHJ1Y3QgeHRfaGFzaGxpbWl0X2h0YWJsZSAqaGluZm87Ci0gdW5pb24geworICBjaGFyIG5hbWVbSUZOQU1TSVpdOworICBzdHJ1Y3QgaGFzaGxpbWl0X2NmZyBjZmc7CisgIHN0cnVjdCB4dF9oYXNobGltaXRfaHRhYmxlICogaGluZm87CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCAqcHRyOwotIHN0cnVjdCB4dF9oYXNobGltaXRfaW5mbyAqbWFzdGVyOwotIH0gdTsKKyAgICB2b2lkICogcHRyOworICAgIHN0cnVjdCB4dF9oYXNobGltaXRfaW5mbyAqIG1hc3RlcjsKKyAgfSB1OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGFzaGxpbWl0X2NmZzEgewotIF9fdTMyIG1vZGU7Ci0gX191MzIgYXZnOwotIF9fdTMyIGJ1cnN0OworICBfX3UzMiBtb2RlOworICBfX3UzMiBhdmc7CisgIF9fdTMyIGJ1cnN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXplOwotIF9fdTMyIG1heDsKLSBfX3UzMiBnY19pbnRlcnZhbDsKLSBfX3UzMiBleHBpcmU7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIG1heDsKKyAgX191MzIgZ2NfaW50ZXJ2YWw7CisgIF9fdTMyIGV4cGlyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcmNtYXNrLCBkc3RtYXNrOworICBfX3U4IHNyY21hc2ssIGRzdG1hc2s7CiB9Owogc3RydWN0IHh0X2hhc2hsaW1pdF9tdGluZm8xIHsKLSBjaGFyIG5hbWVbSUZOQU1TSVpdOworICBjaGFyIG5hbWVbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaGFzaGxpbWl0X2NmZzEgY2ZnOwotIHN0cnVjdCB4dF9oYXNobGltaXRfaHRhYmxlICpoaW5mbyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIHN0cnVjdCBoYXNobGltaXRfY2ZnMSBjZmc7CisgIHN0cnVjdCB4dF9oYXNobGltaXRfaHRhYmxlICogaGluZm8gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2hlbHBlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaGVscGVyLmgKaW5kZXggNzg1NjYzZS4uNzNhZTBhMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaGVscGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaGVscGVyLmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgX1hUX0hFTFBFUl9ICiAjZGVmaW5lIF9YVF9IRUxQRVJfSAogc3RydWN0IHh0X2hlbHBlcl9pbmZvIHsKLSBpbnQgaW52ZXJ0OworICBpbnQgaW52ZXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbMzBdOworICBjaGFyIG5hbWVbMzBdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXBjb21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcGNvbXAuaAppbmRleCAxYmQxYjU2Li42YzVmN2IxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcGNvbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcGNvbXAuaApAQCAtMjEsOSArMjEsOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfaXBjb21wIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3Bpc1syXTsKLSBfX3U4IGludmZsYWdzOwotIF9fdTggaGRycmVzOworICBfX3UzMiBzcGlzWzJdOworICBfX3U4IGludmZsYWdzOworICBfX3U4IGhkcnJlczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9JUENPTVBfSU5WX1NQSSAweDAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcHJhbmdlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcHJhbmdlLmgKaW5kZXggNWRjZjE1NC4uMzE1YmM1OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXByYW5nZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwcmFuZ2UuaApAQCAtMjIsMTcgKzIyLDE3IEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBSQU5HRV9TUkMgPSAxIDw8IDAsCi0gSVBSQU5HRV9EU1QgPSAxIDw8IDEsCi0gSVBSQU5HRV9TUkNfSU5WID0gMSA8PCA0LAorICBJUFJBTkdFX1NSQyA9IDEgPDwgMCwKKyAgSVBSQU5HRV9EU1QgPSAxIDw8IDEsCisgIElQUkFOR0VfU1JDX0lOViA9IDEgPDwgNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBSQU5HRV9EU1RfSU5WID0gMSA8PCA1LAorICBJUFJBTkdFX0RTVF9JTlYgPSAxIDw8IDUsCiB9Owogc3RydWN0IHh0X2lwcmFuZ2VfbXRpbmZvIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgc3JjX21pbiwgc3JjX21heDsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHNyY19taW4sIHNyY19tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIG5mX2luZXRfYWRkciBkc3RfbWluLCBkc3RfbWF4OwotIF9fdTggZmxhZ3M7CisgIHVuaW9uIG5mX2luZXRfYWRkciBkc3RfbWluLCBkc3RfbWF4OworICBfX3U4IGZsYWdzOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwdnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwdnMuaAppbmRleCA0YTAzZGYyLi44YTcwMmUwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcHZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXB2cy5oCkBAIC0yMSwyOCArMjEsMjggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0lQVlNfSVBWU19QUk9QRVJUWSA9IDEgPDwgMCwKLSBYVF9JUFZTX1BST1RPID0gMSA8PCAxLAotIFhUX0lQVlNfVkFERFIgPSAxIDw8IDIsCi0gWFRfSVBWU19WUE9SVCA9IDEgPDwgMywKKyAgWFRfSVBWU19JUFZTX1BST1BFUlRZID0gMSA8PCAwLAorICBYVF9JUFZTX1BST1RPID0gMSA8PCAxLAorICBYVF9JUFZTX1ZBRERSID0gMSA8PCAyLAorICBYVF9JUFZTX1ZQT1JUID0gMSA8PCAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9JUFZTX0RJUiA9IDEgPDwgNCwKLSBYVF9JUFZTX01FVEhPRCA9IDEgPDwgNSwKLSBYVF9JUFZTX1ZQT1JUQ1RMID0gMSA8PCA2LAotIFhUX0lQVlNfTUFTSyA9ICgxIDw8IDcpIC0gMSwKKyAgWFRfSVBWU19ESVIgPSAxIDw8IDQsCisgIFhUX0lQVlNfTUVUSE9EID0gMSA8PCA1LAorICBYVF9JUFZTX1ZQT1JUQ1RMID0gMSA8PCA2LAorICBYVF9JUFZTX01BU0sgPSAoMSA8PCA3KSAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0lQVlNfT05DRV9NQVNLID0gWFRfSVBWU19NQVNLICYgflhUX0lQVlNfSVBWU19QUk9QRVJUWQorICBYVF9JUFZTX09OQ0VfTUFTSyA9IFhUX0lQVlNfTUFTSyAmIH5YVF9JUFZTX0lQVlNfUFJPUEVSVFkKIH07CiBzdHJ1Y3QgeHRfaXB2c19tdGluZm8gewotIHVuaW9uIG5mX2luZXRfYWRkciB2YWRkciwgdm1hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciB2YWRkciwgdm1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiB2cG9ydDsKLSBfX3U4IGw0cHJvdG87Ci0gX191OCBmd2RfbWV0aG9kOwotIF9fYmUxNiB2cG9ydGN0bDsKKyAgX19iZTE2IHZwb3J0OworICBfX3U4IGw0cHJvdG87CisgIF9fdTggZndkX21ldGhvZDsKKyAgX19iZTE2IHZwb3J0Y3RsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGludmVydDsKLSBfX3U4IGJpdG1hc2s7CisgIF9fdTggaW52ZXJ0OworICBfX3U4IGJpdG1hc2s7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbDJ0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbDJ0cC5oCmluZGV4IDlhN2I4MmMuLjFiYTE0YTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2wydHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9sMnRwLmgKQEAgLTIxLDI0ICsyMSwyNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHh0X2wydHBfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0wyVFBfVFlQRV9DT05UUk9MLAotIFhUX0wyVFBfVFlQRV9EQVRBLAorICBYVF9MMlRQX1RZUEVfQ09OVFJPTCwKKyAgWFRfTDJUUF9UWVBFX0RBVEEsCiB9Owogc3RydWN0IHh0X2wydHBfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRpZDsKLSBfX3UzMiBzaWQ7Ci0gX191OCB2ZXJzaW9uOwotIF9fdTggdHlwZTsKKyAgX191MzIgdGlkOworICBfX3UzMiBzaWQ7CisgIF9fdTggdmVyc2lvbjsKKyAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogfTsKIGVudW0gewotIFhUX0wyVFBfVElEID0gKDEgPDwgMCksCisgIFhUX0wyVFBfVElEID0gKDEgPDwgMCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0wyVFBfU0lEID0gKDEgPDwgMSksCi0gWFRfTDJUUF9WRVJTSU9OID0gKDEgPDwgMiksCi0gWFRfTDJUUF9UWVBFID0gKDEgPDwgMyksCisgIFhUX0wyVFBfU0lEID0gKDEgPDwgMSksCisgIFhUX0wyVFBfVkVSU0lPTiA9ICgxIDw8IDIpLAorICBYVF9MMlRQX1RZUEUgPSAoMSA8PCAzKSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9sZW5ndGguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xlbmd0aC5oCmluZGV4IDBmMWM3ZDkuLjdhYjdkY2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xlbmd0aC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xlbmd0aC5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9sZW5ndGhfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1pbiwgbWF4OwotIF9fdTggaW52ZXJ0OworICBfX3UxNiBtaW4sIG1heDsKKyAgX191OCBpbnZlcnQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGltaXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xpbWl0LmgKaW5kZXggZTIyOTk3Yy4uNDkzN2VhYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGltaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9saW1pdC5oCkBAIC0yMywxMyArMjMsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfbGltaXRfcHJpdjsKIHN0cnVjdCB4dF9yYXRlaW5mbyB7Ci0gX191MzIgYXZnOwotIF9fdTMyIGJ1cnN0OworICBfX3UzMiBhdmc7CisgIF9fdTMyIGJ1cnN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHByZXY7Ci0gX191MzIgY3JlZGl0OwotIF9fdTMyIGNyZWRpdF9jYXAsIGNvc3Q7Ci0gc3RydWN0IHh0X2xpbWl0X3ByaXYgKm1hc3RlcjsKKyAgdW5zaWduZWQgbG9uZyBwcmV2OworICBfX3UzMiBjcmVkaXQ7CisgIF9fdTMyIGNyZWRpdF9jYXAsIGNvc3Q7CisgIHN0cnVjdCB4dF9saW1pdF9wcml2ICogbWFzdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X21hYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFjLmgKaW5kZXggMTJjNTg0Yy4uNTc5NjkwNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFjLmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgX1hUX01BQ19ICiAjZGVmaW5lIF9YVF9NQUNfSAogc3RydWN0IHh0X21hY19pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIHNyY2FkZHJbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIHNyY2FkZHJbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaW52ZXJ0OworICBpbnQgaW52ZXJ0OwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFyay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFyay5oCmluZGV4IDFjZDBlYTAuLjkyMzJiNzEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X21hcmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYXJrLmgKQEAgLTIxLDExICsyMSwxMSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfbWFya190Z2luZm8yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFyaywgbWFzazsKKyAgX191MzIgbWFyaywgbWFzazsKIH07CiBzdHJ1Y3QgeHRfbWFya19tdGluZm8xIHsKLSBfX3UzMiBtYXJrLCBtYXNrOworICBfX3UzMiBtYXJrLCBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGludmVydDsKKyAgX191OCBpbnZlcnQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tdWx0aXBvcnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X211bHRpcG9ydC5oCmluZGV4IGQ0MzA0ZjUuLjU2Nzc3NTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X211bHRpcG9ydC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X211bHRpcG9ydC5oCkBAIC0yMSwyNSArMjEsMjUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9tdWx0aXBvcnRfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9NVUxUSVBPUlRfU09VUkNFLAotIFhUX01VTFRJUE9SVF9ERVNUSU5BVElPTiwKLSBYVF9NVUxUSVBPUlRfRUlUSEVSCisgIFhUX01VTFRJUE9SVF9TT1VSQ0UsCisgIFhUX01VTFRJUE9SVF9ERVNUSU5BVElPTiwKKyAgWFRfTVVMVElQT1JUX0VJVEhFUgogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX01VTFRJX1BPUlRTIDE1CiBzdHJ1Y3QgeHRfbXVsdGlwb3J0IHsKLSBfX3U4IGZsYWdzOwotIF9fdTggY291bnQ7CisgIF9fdTggZmxhZ3M7CisgIF9fdTggY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBvcnRzW1hUX01VTFRJX1BPUlRTXTsKKyAgX191MTYgcG9ydHNbWFRfTVVMVElfUE9SVFNdOwogfTsKIHN0cnVjdCB4dF9tdWx0aXBvcnRfdjEgewotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY291bnQ7Ci0gX191MTYgcG9ydHNbWFRfTVVMVElfUE9SVFNdOwotIF9fdTggcGZsYWdzW1hUX01VTFRJX1BPUlRTXTsKLSBfX3U4IGludmVydDsKKyAgX191OCBjb3VudDsKKyAgX191MTYgcG9ydHNbWFRfTVVMVElfUE9SVFNdOworICBfX3U4IHBmbGFnc1tYVF9NVUxUSV9QT1JUU107CisgIF9fdTggaW52ZXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X25mYWNjdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbmZhY2N0LmgKaW5kZXggMzdkYTAzOC4uODMxM2U0YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbmZhY2N0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbmZhY2N0LmgKQEAgLTIyLDggKzIyLDggQEAKIHN0cnVjdCBuZl9hY2N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9uZmFjY3RfbWF0Y2hfaW5mbyB7Ci0gY2hhciBuYW1lW05GQUNDVF9OQU1FX01BWF07Ci0gc3RydWN0IG5mX2FjY3QgKm5mYWNjdDsKKyAgY2hhciBuYW1lW05GQUNDVF9OQU1FX01BWF07CisgIHN0cnVjdCBuZl9hY2N0ICogbmZhY2N0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X29zZi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3NmLmgKaW5kZXggY2VlZTQ4ZC4uOTg1OTc5NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3NmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3NmLmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIE1BWEdFTlJFTEVOIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYVF9PU0ZfR0VOUkUgKDE8PDApCi0jZGVmaW5lIFhUX09TRl9UVEwgKDE8PDEpCi0jZGVmaW5lIFhUX09TRl9MT0cgKDE8PDIpCi0jZGVmaW5lIFhUX09TRl9JTlZFUlQgKDE8PDMpCisjZGVmaW5lIFhUX09TRl9HRU5SRSAoMSA8PCAwKQorI2RlZmluZSBYVF9PU0ZfVFRMICgxIDw8IDEpCisjZGVmaW5lIFhUX09TRl9MT0cgKDEgPDwgMikKKyNkZWZpbmUgWFRfT1NGX0lOVkVSVCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfT1NGX0xPR0xFVkVMX0FMTCAwCiAjZGVmaW5lIFhUX09TRl9MT0dMRVZFTF9GSVJTVCAxCkBAIC0zNCw4MCArMzQsODAgQEAKICNkZWZpbmUgWFRfT1NGX1RUTF9MRVNTIDEKICNkZWZpbmUgWFRfT1NGX1RUTF9OT0NIRUNLIDIKIHN0cnVjdCB4dF9vc2ZfaW5mbyB7Ci0gY2hhciBnZW5yZVtNQVhHRU5SRUxFTl07CisgIGNoYXIgZ2VucmVbTUFYR0VOUkVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgbG9nbGV2ZWw7Ci0gX191MzIgdHRsOworICBfX3UzMiBsZW47CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBsb2dsZXZlbDsKKyAgX191MzIgdHRsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfb3NmX3djIHsKLSBfX3UzMiB3YzsKLSBfX3UzMiB2YWw7CisgIF9fdTMyIHdjOworICBfX3UzMiB2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9vc2Zfb3B0IHsKLSBfX3UxNiBraW5kLCBsZW5ndGg7Ci0gc3RydWN0IHh0X29zZl93YyB3YzsKKyAgX191MTYga2luZCwgbGVuZ3RoOworICBzdHJ1Y3QgeHRfb3NmX3djIHdjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfb3NmX3VzZXJfZmluZ2VyIHsKLSBzdHJ1Y3QgeHRfb3NmX3djIHdzczsKLSBfX3U4IHR0bCwgZGY7CisgIHN0cnVjdCB4dF9vc2Zfd2Mgd3NzOworICBfX3U4IHR0bCwgZGY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNzLCBtc3M7Ci0gX191MTYgb3B0X251bTsKLSBjaGFyIGdlbnJlW01BWEdFTlJFTEVOXTsKLSBjaGFyIHZlcnNpb25bTUFYR0VOUkVMRU5dOworICBfX3UxNiBzcywgbXNzOworICBfX3UxNiBvcHRfbnVtOworICBjaGFyIGdlbnJlW01BWEdFTlJFTEVOXTsKKyAgY2hhciB2ZXJzaW9uW01BWEdFTlJFTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzdWJ0eXBlW01BWEdFTlJFTEVOXTsKLSBzdHJ1Y3QgeHRfb3NmX29wdCBvcHRbTUFYX0lQT1BUTEVOXTsKKyAgY2hhciBzdWJ0eXBlW01BWEdFTlJFTEVOXTsKKyAgc3RydWN0IHh0X29zZl9vcHQgb3B0W01BWF9JUE9QVExFTl07CiB9Owogc3RydWN0IHh0X29zZl9ubG1zZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9vc2ZfdXNlcl9maW5nZXIgZjsKLSBzdHJ1Y3QgaXBoZHIgaXA7Ci0gc3RydWN0IHRjcGhkciB0Y3A7CisgIHN0cnVjdCB4dF9vc2ZfdXNlcl9maW5nZXIgZjsKKyAgc3RydWN0IGlwaGRyIGlwOworICBzdHJ1Y3QgdGNwaGRyIHRjcDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpYW5hX29wdGlvbnMgewotIE9TRk9QVF9FT0wgPSAwLAotIE9TRk9QVF9OT1AsCi0gT1NGT1BUX01TUywKKyAgT1NGT1BUX0VPTCA9IDAsCisgIE9TRk9QVF9OT1AsCisgIE9TRk9QVF9NU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRk9QVF9XU08sCi0gT1NGT1BUX1NBQ0tQLAotIE9TRk9QVF9TQUNLLAotIE9TRk9QVF9FQ0hPLAorICBPU0ZPUFRfV1NPLAorICBPU0ZPUFRfU0FDS1AsCisgIE9TRk9QVF9TQUNLLAorICBPU0ZPUFRfRUNITywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NGT1BUX0VDSE9SRVBMWSwKLSBPU0ZPUFRfVFMsCi0gT1NGT1BUX1BPQ1AsCi0gT1NGT1BUX1BPU1AsCisgIE9TRk9QVF9FQ0hPUkVQTFksCisgIE9TRk9QVF9UUywKKyAgT1NGT1BUX1BPQ1AsCisgIE9TRk9QVF9QT1NQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0ZPUFRfRU1QVFkgPSAyNTUsCisgIE9TRk9QVF9FTVBUWSA9IDI1NSwKIH07CiBlbnVtIHh0X29zZl93aW5kb3dfc2l6ZV9vcHRpb25zIHsKLSBPU0ZfV1NTX1BMQUlOID0gMCwKKyAgT1NGX1dTU19QTEFJTiA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRl9XU1NfTVNTLAotIE9TRl9XU1NfTVRVLAotIE9TRl9XU1NfTU9EVUxPLAotIE9TRl9XU1NfTUFYLAorICBPU0ZfV1NTX01TUywKKyAgT1NGX1dTU19NVFUsCisgIE9TRl9XU1NfTU9EVUxPLAorICBPU0ZfV1NTX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB4dF9vc2ZfbXNnX3R5cGVzIHsKLSBPU0ZfTVNHX0FERCwKLSBPU0ZfTVNHX1JFTU9WRSwKKyAgT1NGX01TR19BREQsCisgIE9TRl9NU0dfUkVNT1ZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0ZfTVNHX01BWCwKKyAgT1NGX01TR19NQVgsCiB9OwogZW51bSB4dF9vc2ZfYXR0cl90eXBlIHsKLSBPU0ZfQVRUUl9VTlNQRUMsCisgIE9TRl9BVFRSX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NGX0FUVFJfRklOR0VSLAotIE9TRl9BVFRSX01BWCwKKyAgT1NGX0FUVFJfRklOR0VSLAorICBPU0ZfQVRUUl9NQVgsCiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3duZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X293bmVyLmgKaW5kZXggODcyZTA3OC4uMjhiMDQ1NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3duZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vd25lci5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX09XTkVSX1VJRCA9IDEgPDwgMCwKLSBYVF9PV05FUl9HSUQgPSAxIDw8IDEsCi0gWFRfT1dORVJfU09DS0VUID0gMSA8PCAyLAorICBYVF9PV05FUl9VSUQgPSAxIDw8IDAsCisgIFhUX09XTkVSX0dJRCA9IDEgPDwgMSwKKyAgWFRfT1dORVJfU09DS0VUID0gMSA8PCAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfb3duZXJfbWF0Y2hfaW5mbyB7Ci0gX191MzIgdWlkX21pbiwgdWlkX21heDsKLSBfX3UzMiBnaWRfbWluLCBnaWRfbWF4OwotIF9fdTggbWF0Y2gsIGludmVydDsKKyAgX191MzIgdWlkX21pbiwgdWlkX21heDsKKyAgX191MzIgZ2lkX21pbiwgZ2lkX21heDsKKyAgX191OCBtYXRjaCwgaW52ZXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BoeXNkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BoeXNkZXYuaAppbmRleCAxNjFlY2UyLi5jY2ZkNjdiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9waHlzZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGh5c2Rldi5oCkBAIC0yOCwxMyArMjgsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX1BIWVNERVZfT1BfTUFTSyAoMHgyMCAtIDEpCiBzdHJ1Y3QgeHRfcGh5c2Rldl9pbmZvIHsKLSBjaGFyIHBoeXNpbmRldltJRk5BTVNJWl07Ci0gY2hhciBpbl9tYXNrW0lGTkFNU0laXTsKKyAgY2hhciBwaHlzaW5kZXZbSUZOQU1TSVpdOworICBjaGFyIGluX21hc2tbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHBoeXNvdXRkZXZbSUZOQU1TSVpdOwotIGNoYXIgb3V0X21hc2tbSUZOQU1TSVpdOwotIF9fdTggaW52ZXJ0OwotIF9fdTggYml0bWFzazsKKyAgY2hhciBwaHlzb3V0ZGV2W0lGTkFNU0laXTsKKyAgY2hhciBvdXRfbWFza1tJRk5BTVNJWl07CisgIF9fdTggaW52ZXJ0OworICBfX3U4IGJpdG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGt0dHlwZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGt0dHlwZS5oCmluZGV4IDVlZjEyNTYuLmIyMzg5OWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BrdHR5cGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9wa3R0eXBlLmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgX1hUX1BLVFRZUEVfSAogI2RlZmluZSBfWFRfUEtUVFlQRV9ICiBzdHJ1Y3QgeHRfcGt0dHlwZV9pbmZvIHsKLSBpbnQgcGt0dHlwZTsKKyAgaW50IHBrdHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpbnZlcnQ7CisgIGludCBpbnZlcnQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9wb2xpY3kuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BvbGljeS5oCmluZGV4IGY2MDVmYWUuLjViYWJmZGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BvbGljeS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BvbGljeS5oCkBAIC0yMiw1NyArMjIsNTAgQEAKICNkZWZpbmUgWFRfUE9MSUNZX01BWF9FTEVNIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHh0X3BvbGljeV9mbGFncyB7Ci0gWFRfUE9MSUNZX01BVENIX0lOID0gMHgxLAotIFhUX1BPTElDWV9NQVRDSF9PVVQgPSAweDIsCi0gWFRfUE9MSUNZX01BVENIX05PTkUgPSAweDQsCisgIFhUX1BPTElDWV9NQVRDSF9JTiA9IDB4MSwKKyAgWFRfUE9MSUNZX01BVENIX09VVCA9IDB4MiwKKyAgWFRfUE9MSUNZX01BVENIX05PTkUgPSAweDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1BPTElDWV9NQVRDSF9TVFJJQ1QgPSAweDgsCisgIFhUX1BPTElDWV9NQVRDSF9TVFJJQ1QgPSAweDgsCiB9OwogZW51bSB4dF9wb2xpY3lfbW9kZXMgewotIFhUX1BPTElDWV9NT0RFX1RSQU5TUE9SVCwKKyAgWFRfUE9MSUNZX01PREVfVFJBTlNQT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9QT0xJQ1lfTU9ERV9UVU5ORUwKKyAgWFRfUE9MSUNZX01PREVfVFVOTkVMCiB9Owogc3RydWN0IHh0X3BvbGljeV9zcGVjIHsKLSBfX3U4IHNhZGRyOjEsCisgIF9fdTggc2FkZHIgOiAxLCBkYWRkciA6IDEsIHByb3RvIDogMSwgbW9kZSA6IDEsIHNwaSA6IDEsIHJlcWlkIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZGFkZHI6MSwKLSBwcm90bzoxLAotIG1vZGU6MSwKLSBzcGk6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcmVxaWQ6MTsKIH07CiB1bmlvbiB4dF9wb2xpY3lfYWRkciB7Ci0gc3RydWN0IGluX2FkZHIgYTQ7CisgIHN0cnVjdCBpbl9hZGRyIGE0OworICBzdHJ1Y3QgaW42X2FkZHIgYTY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbjZfYWRkciBhNjsKIH07CiBzdHJ1Y3QgeHRfcG9saWN5X2VsZW0gewotIHVuaW9uIHsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5pb24geHRfcG9saWN5X2FkZHIgc2FkZHI7Ci0gdW5pb24geHRfcG9saWN5X2FkZHIgc21hc2s7Ci0gdW5pb24geHRfcG9saWN5X2FkZHIgZGFkZHI7CisgICAgICB1bmlvbiB4dF9wb2xpY3lfYWRkciBzYWRkcjsKKyAgICAgIHVuaW9uIHh0X3BvbGljeV9hZGRyIHNtYXNrOworICAgICAgdW5pb24geHRfcG9saWN5X2FkZHIgZGFkZHI7CisgICAgICB1bmlvbiB4dF9wb2xpY3lfYWRkciBkbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24geHRfcG9saWN5X2FkZHIgZG1hc2s7Ci0gfTsKLSB9OwotIF9fYmUzMiBzcGk7CisgICAgfTsKKyAgfTsKKyAgX19iZTMyIHNwaTsKKyAgX191MzIgcmVxaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlcWlkOwotIF9fdTggcHJvdG87Ci0gX191OCBtb2RlOwotIHN0cnVjdCB4dF9wb2xpY3lfc3BlYyBtYXRjaDsKKyAgX191OCBwcm90bzsKKyAgX191OCBtb2RlOworICBzdHJ1Y3QgeHRfcG9saWN5X3NwZWMgbWF0Y2g7CisgIHN0cnVjdCB4dF9wb2xpY3lfc3BlYyBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9wb2xpY3lfc3BlYyBpbnZlcnQ7CiB9Owogc3RydWN0IHh0X3BvbGljeV9pbmZvIHsKLSBzdHJ1Y3QgeHRfcG9saWN5X2VsZW0gcG9sW1hUX1BPTElDWV9NQVhfRUxFTV07CisgIHN0cnVjdCB4dF9wb2xpY3lfZWxlbSBwb2xbWFRfUE9MSUNZX01BWF9FTEVNXTsKKyAgX191MTYgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IGxlbjsKKyAgX191MTYgbGVuOwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3F1b3RhLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9xdW90YS5oCmluZGV4IGI2NzUzOTMuLmY4NTdlZDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3F1b3RhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcXVvdGEuaApAQCAtMjEsMTYgKzIxLDE2IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfcXVvdGFfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9RVU9UQV9JTlZFUlQgPSAweDEsCisgIFhUX1FVT1RBX0lOVkVSVCA9IDB4MSwKIH07CiAjZGVmaW5lIFhUX1FVT1RBX01BU0sgMHgxCiBzdHJ1Y3QgeHRfcXVvdGFfcHJpdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfcXVvdGFfaW5mbyB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcGFkOwotIF9fYWxpZ25lZF91NjQgcXVvdGE7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBwYWQ7CisgIF9fYWxpZ25lZF91NjQgcXVvdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9xdW90YV9wcml2ICptYXN0ZXI7CisgIHN0cnVjdCB4dF9xdW90YV9wcml2ICogbWFzdGVyOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmF0ZWVzdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmF0ZWVzdC5oCmluZGV4IDY2YjA2YWEuLjBkYjA3NGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JhdGVlc3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yYXRlZXN0LmgKQEAgLTIxLDM1ICsyMSwzNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHh0X3JhdGVlc3RfbWF0Y2hfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SQVRFRVNUX01BVENIX0lOVkVSVCA9IDE8PDAsCi0gWFRfUkFURUVTVF9NQVRDSF9BQlMgPSAxPDwxLAotIFhUX1JBVEVFU1RfTUFUQ0hfUkVMID0gMTw8MiwKLSBYVF9SQVRFRVNUX01BVENIX0RFTFRBID0gMTw8MywKKyAgWFRfUkFURUVTVF9NQVRDSF9JTlZFUlQgPSAxIDw8IDAsCisgIFhUX1JBVEVFU1RfTUFUQ0hfQUJTID0gMSA8PCAxLAorICBYVF9SQVRFRVNUX01BVENIX1JFTCA9IDEgPDwgMiwKKyAgWFRfUkFURUVTVF9NQVRDSF9ERUxUQSA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUkFURUVTVF9NQVRDSF9CUFMgPSAxPDw0LAotIFhUX1JBVEVFU1RfTUFUQ0hfUFBTID0gMTw8NSwKKyAgWFRfUkFURUVTVF9NQVRDSF9CUFMgPSAxIDw8IDQsCisgIFhUX1JBVEVFU1RfTUFUQ0hfUFBTID0gMSA8PCA1LAogfTsKIGVudW0geHRfcmF0ZWVzdF9tYXRjaF9tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUkFURUVTVF9NQVRDSF9OT05FLAotIFhUX1JBVEVFU1RfTUFUQ0hfRVEsCi0gWFRfUkFURUVTVF9NQVRDSF9MVCwKLSBYVF9SQVRFRVNUX01BVENIX0dULAorICBYVF9SQVRFRVNUX01BVENIX05PTkUsCisgIFhUX1JBVEVFU1RfTUFUQ0hfRVEsCisgIFhUX1JBVEVFU1RfTUFUQ0hfTFQsCisgIFhUX1JBVEVFU1RfTUFUQ0hfR1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9yYXRlZXN0X21hdGNoX2luZm8gewotIGNoYXIgbmFtZTFbSUZOQU1TSVpdOwotIGNoYXIgbmFtZTJbSUZOQU1TSVpdOworICBjaGFyIG5hbWUxW0lGTkFNU0laXTsKKyAgY2hhciBuYW1lMltJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IG1vZGU7Ci0gX191MzIgYnBzMTsKLSBfX3UzMiBwcHMxOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgbW9kZTsKKyAgX191MzIgYnBzMTsKKyAgX191MzIgcHBzMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnBzMjsKLSBfX3UzMiBwcHMyOwotIHN0cnVjdCB4dF9yYXRlZXN0ICplc3QxIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKLSBzdHJ1Y3QgeHRfcmF0ZWVzdCAqZXN0MiBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTMyIGJwczI7CisgIF9fdTMyIHBwczI7CisgIHN0cnVjdCB4dF9yYXRlZXN0ICogZXN0MSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIHN0cnVjdCB4dF9yYXRlZXN0ICogZXN0MiBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVhbG0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JlYWxtLmgKaW5kZXggNDY3Nzk4NS4uN2E0OTE4OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVhbG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWFsbS5oCkBAIC0yMSw5ICsyMSw5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9yZWFsbV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgbWFzazsKLSBfX3U4IGludmVydDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIG1hc2s7CisgIF9fdTggaW52ZXJ0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JlY2VudC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVjZW50LmgKaW5kZXggMmFkNjg1Zi4uODI5NGM1YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVjZW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVjZW50LmgKQEAgLTIxLDQwICsyMSw0MCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUkVDRU5UX0NIRUNLID0gMSA8PCAwLAotIFhUX1JFQ0VOVF9TRVQgPSAxIDw8IDEsCi0gWFRfUkVDRU5UX1VQREFURSA9IDEgPDwgMiwKLSBYVF9SRUNFTlRfUkVNT1ZFID0gMSA8PCAzLAorICBYVF9SRUNFTlRfQ0hFQ0sgPSAxIDw8IDAsCisgIFhUX1JFQ0VOVF9TRVQgPSAxIDw8IDEsCisgIFhUX1JFQ0VOVF9VUERBVEUgPSAxIDw8IDIsCisgIFhUX1JFQ0VOVF9SRU1PVkUgPSAxIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1JFQ0VOVF9UVEwgPSAxIDw8IDQsCi0gWFRfUkVDRU5UX1JFQVAgPSAxIDw8IDUsCi0gWFRfUkVDRU5UX1NPVVJDRSA9IDAsCi0gWFRfUkVDRU5UX0RFU1QgPSAxLAorICBYVF9SRUNFTlRfVFRMID0gMSA8PCA0LAorICBYVF9SRUNFTlRfUkVBUCA9IDEgPDwgNSwKKyAgWFRfUkVDRU5UX1NPVVJDRSA9IDAsCisgIFhUX1JFQ0VOVF9ERVNUID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUkVDRU5UX05BTUVfTEVOID0gMjAwLAorICBYVF9SRUNFTlRfTkFNRV9MRU4gPSAyMDAsCiB9OwotI2RlZmluZSBYVF9SRUNFTlRfTU9ESUZJRVJTIChYVF9SRUNFTlRfVFRMfFhUX1JFQ0VOVF9SRUFQKQotI2RlZmluZSBYVF9SRUNFTlRfVkFMSURfRkxBR1MgKFhUX1JFQ0VOVF9DSEVDS3xYVF9SRUNFTlRfU0VUfFhUX1JFQ0VOVF9VUERBVEV8ICBYVF9SRUNFTlRfUkVNT1ZFfFhUX1JFQ0VOVF9UVEx8WFRfUkVDRU5UX1JFQVApCisjZGVmaW5lIFhUX1JFQ0VOVF9NT0RJRklFUlMgKFhUX1JFQ0VOVF9UVEwgfCBYVF9SRUNFTlRfUkVBUCkKKyNkZWZpbmUgWFRfUkVDRU5UX1ZBTElEX0ZMQUdTIChYVF9SRUNFTlRfQ0hFQ0sgfCBYVF9SRUNFTlRfU0VUIHwgWFRfUkVDRU5UX1VQREFURSB8IFhUX1JFQ0VOVF9SRU1PVkUgfCBYVF9SRUNFTlRfVFRMIHwgWFRfUkVDRU5UX1JFQVApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X3JlY2VudF9tdGluZm8gewotIF9fdTMyIHNlY29uZHM7Ci0gX191MzIgaGl0X2NvdW50OwotIF9fdTggY2hlY2tfc2V0OworICBfX3UzMiBzZWNvbmRzOworICBfX3UzMiBoaXRfY291bnQ7CisgIF9fdTggY2hlY2tfc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGludmVydDsKLSBjaGFyIG5hbWVbWFRfUkVDRU5UX05BTUVfTEVOXTsKLSBfX3U4IHNpZGU7CisgIF9fdTggaW52ZXJ0OworICBjaGFyIG5hbWVbWFRfUkVDRU5UX05BTUVfTEVOXTsKKyAgX191OCBzaWRlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfcmVjZW50X210aW5mb192MSB7Ci0gX191MzIgc2Vjb25kczsKLSBfX3UzMiBoaXRfY291bnQ7Ci0gX191OCBjaGVja19zZXQ7CisgIF9fdTMyIHNlY29uZHM7CisgIF9fdTMyIGhpdF9jb3VudDsKKyAgX191OCBjaGVja19zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OwotIGNoYXIgbmFtZVtYVF9SRUNFTlRfTkFNRV9MRU5dOwotIF9fdTggc2lkZTsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgbWFzazsKKyAgX191OCBpbnZlcnQ7CisgIGNoYXIgbmFtZVtYVF9SRUNFTlRfTkFNRV9MRU5dOworICBfX3U4IHNpZGU7CisgIHVuaW9uIG5mX2luZXRfYWRkciBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JwZmlsdGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ycGZpbHRlci5oCmluZGV4IDI5NTMzZDYuLmRiZTZlNmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JwZmlsdGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcnBmaWx0ZXIuaApAQCAtMjEsMTQgKzIxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SUEZJTFRFUl9MT09TRSA9IDEgPDwgMCwKLSBYVF9SUEZJTFRFUl9WQUxJRF9NQVJLID0gMSA8PCAxLAotIFhUX1JQRklMVEVSX0FDQ0VQVF9MT0NBTCA9IDEgPDwgMiwKLSBYVF9SUEZJTFRFUl9JTlZFUlQgPSAxIDw8IDMsCisgIFhUX1JQRklMVEVSX0xPT1NFID0gMSA8PCAwLAorICBYVF9SUEZJTFRFUl9WQUxJRF9NQVJLID0gMSA8PCAxLAorICBYVF9SUEZJTFRFUl9BQ0NFUFRfTE9DQUwgPSAxIDw8IDIsCisgIFhUX1JQRklMVEVSX0lOVkVSVCA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3JwZmlsdGVyX2luZm8gewotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2N0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2N0cC5oCmluZGV4IGVkNzI0NmIuLmI2ZmJlZGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NjdHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zY3RwLmgKQEAgLTI2LDM4ICsyNiw0MCBAQAogI2RlZmluZSBYVF9TQ1RQX1ZBTElEX0ZMQUdTIDB4MDcKIHN0cnVjdCB4dF9zY3RwX2ZsYWdfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2h1bmt0eXBlOwotIF9fdTggZmxhZzsKLSBfX3U4IGZsYWdfbWFzazsKKyAgX191OCBjaHVua3R5cGU7CisgIF9fdTggZmxhZzsKKyAgX191OCBmbGFnX21hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfTlVNX1NDVFBfRkxBR1MgNAogc3RydWN0IHh0X3NjdHBfaW5mbyB7Ci0gX191MTYgZHB0c1syXTsKLSBfX3UxNiBzcHRzWzJdOworICBfX3UxNiBkcHRzWzJdOworICBfX3UxNiBzcHRzWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjaHVua21hcFsyNTYgLyBzaXplb2YgKF9fdTMyKV07CisgIF9fdTMyIGNodW5rbWFwWzI1NiAvIHNpemVvZihfX3UzMildOwogI2RlZmluZSBTQ1RQX0NIVU5LX01BVENIX0FOWSAweDAxCiAjZGVmaW5lIFNDVFBfQ0hVTktfTUFUQ0hfQUxMIDB4MDIKICNkZWZpbmUgU0NUUF9DSFVOS19NQVRDSF9PTkxZIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2h1bmtfbWF0Y2hfdHlwZTsKLSBzdHJ1Y3QgeHRfc2N0cF9mbGFnX2luZm8gZmxhZ19pbmZvW1hUX05VTV9TQ1RQX0ZMQUdTXTsKLSBpbnQgZmxhZ19jb3VudDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgY2h1bmtfbWF0Y2hfdHlwZTsKKyAgc3RydWN0IHh0X3NjdHBfZmxhZ19pbmZvIGZsYWdfaW5mb1tYVF9OVU1fU0NUUF9GTEFHU107CisgIGludCBmbGFnX2NvdW50OworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW52ZmxhZ3M7CisgIF9fdTMyIGludmZsYWdzOwogfTsKICNkZWZpbmUgYnl0ZXModHlwZSkgKHNpemVvZih0eXBlKSAqIDgpCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfU0VUKGNodW5rbWFwLCB0eXBlKSAgIGRvIHsgICAoY2h1bmttYXApW3R5cGUgLyBieXRlcyhfX3UzMildIHw9ICAgMSA8PCAodHlwZSAlIGJ5dGVzKF9fdTMyKSk7ICAgfSB3aGlsZSAoMCkKKyNkZWZpbmUgU0NUUF9DSFVOS01BUF9TRVQoY2h1bmttYXAsdHlwZSkgZG8geyAoY2h1bmttYXApW3R5cGUgLyBieXRlcyhfX3UzMildIHw9IDEgPDwgKHR5cGUgJSBieXRlcyhfX3UzMikpOyB9IHdoaWxlKDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0NMRUFSKGNodW5rbWFwLCB0eXBlKSAgIGRvIHsgICAoY2h1bmttYXApW3R5cGUgLyBieXRlcyhfX3UzMildICY9ICAgfigxIDw8ICh0eXBlICUgYnl0ZXMoX191MzIpKSk7ICAgfSB3aGlsZSAoMCkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9JU19TRVQoY2h1bmttYXAsIHR5cGUpICAoeyAgICgoY2h1bmttYXApW3R5cGUgLyBieXRlcyAoX191MzIpXSAmICAgKDEgPDwgKHR5cGUgJSBieXRlcyAoX191MzIpKSkpID8gMTogMDsgIH0pCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfUkVTRVQoY2h1bmttYXApICAgbWVtc2V0KChjaHVua21hcCksIDAsIHNpemVvZihjaHVua21hcCkpCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfU0VUX0FMTChjaHVua21hcCkgICBtZW1zZXQoKGNodW5rbWFwKSwgfjBVLCBzaXplb2YoY2h1bmttYXApKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0NMRUFSKGNodW5rbWFwLHR5cGUpIGRvIHsgKGNodW5rbWFwKVt0eXBlIC8gYnl0ZXMoX191MzIpXSAmPSB+KDEgPDwgKHR5cGUgJSBieXRlcyhfX3UzMikpKTsgfSB3aGlsZSgwKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0lTX1NFVChjaHVua21hcCx0eXBlKSBcCisoeyAoKGNodW5rbWFwKVt0eXBlIC8gYnl0ZXMoX191MzIpXSAmICgxIDw8ICh0eXBlICUgYnl0ZXMoX191MzIpKSkpID8gMSA6IDA7IFwKK30pCisjZGVmaW5lIFNDVFBfQ0hVTktNQVBfUkVTRVQoY2h1bmttYXApIG1lbXNldCgoY2h1bmttYXApLCAwLCBzaXplb2YoY2h1bmttYXApKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX1NFVF9BTEwoY2h1bmttYXApIG1lbXNldCgoY2h1bmttYXApLCB+MFUsIHNpemVvZihjaHVua21hcCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0NPUFkoZGVzdG1hcCwgc3JjbWFwKSAgIG1lbWNweSgoZGVzdG1hcCksIChzcmNtYXApLCBzaXplb2Yoc3JjbWFwKSkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9JU19DTEVBUihjaHVua21hcCkgICBfX3NjdHBfY2h1bmttYXBfaXNfY2xlYXIoKGNodW5rbWFwKSwgQVJSQVlfU0laRShjaHVua21hcCkpCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfSVNfQUxMX1NFVChjaHVua21hcCkgICBfX3NjdHBfY2h1bmttYXBfaXNfYWxsX3NldCgoY2h1bmttYXApLCBBUlJBWV9TSVpFKGNodW5rbWFwKSkKKyNkZWZpbmUgU0NUUF9DSFVOS01BUF9DT1BZKGRlc3RtYXAsc3JjbWFwKSBtZW1jcHkoKGRlc3RtYXApLCAoc3JjbWFwKSwgc2l6ZW9mKHNyY21hcCkpCisjZGVmaW5lIFNDVFBfQ0hVTktNQVBfSVNfQ0xFQVIoY2h1bmttYXApIF9fc2N0cF9jaHVua21hcF9pc19jbGVhcigoY2h1bmttYXApLCBBUlJBWV9TSVpFKGNodW5rbWFwKSkKKyNkZWZpbmUgU0NUUF9DSFVOS01BUF9JU19BTExfU0VUKGNodW5rbWFwKSBfX3NjdHBfY2h1bmttYXBfaXNfYWxsX3NldCgoY2h1bmttYXApLCBBUlJBWV9TSVpFKGNodW5rbWFwKSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2V0LmgKaW5kZXggM2QyN2U1Ny4uNWEyZmUwMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2V0LmgKQEAgLTI2LDU1ICsyNiw2NCBAQAogI2RlZmluZSBJUFNFVF9NQVRDSF9JTlYgMHgwNAogc3RydWN0IHh0X3NldF9pbmZvX3YwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaXBfc2V0X2lkX3QgaW5kZXg7Ci0gdW5pb24gewotIF9fdTMyIGZsYWdzW0lQU0VUX0RJTV9NQVggKyAxXTsKLSBzdHJ1Y3QgeworICBpcF9zZXRfaWRfdCBpbmRleDsKKyAgdW5pb24geworICAgIF9fdTMyIGZsYWdzW0lQU0VUX0RJTV9NQVggKyAxXTsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX2ZsYWdzW0lQU0VUX0RJTV9NQVhdOwotIF9fdTggZGltOwotIF9fdTggZmxhZ3M7Ci0gfSBjb21wYXQ7CisgICAgICBfX3UzMiBfX2ZsYWdzW0lQU0VUX0RJTV9NQVhdOworICAgICAgX191OCBkaW07CisgICAgICBfX3U4IGZsYWdzOworICAgIH0gY29tcGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHU7CisgIH0gdTsKIH07CiBzdHJ1Y3QgeHRfc2V0X2luZm9fbWF0Y2hfdjAgewotIHN0cnVjdCB4dF9zZXRfaW5mb192MCBtYXRjaF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mb192MCBtYXRjaF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb190YXJnZXRfdjAgewotIHN0cnVjdCB4dF9zZXRfaW5mb192MCBhZGRfc2V0OwotIHN0cnVjdCB4dF9zZXRfaW5mb192MCBkZWxfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm9fdjAgYWRkX3NldDsKKyAgc3RydWN0IHh0X3NldF9pbmZvX3YwIGRlbF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mbyB7Ci0gaXBfc2V0X2lkX3QgaW5kZXg7Ci0gX191OCBkaW07CisgIGlwX3NldF9pZF90IGluZGV4OworICBfX3U4IGRpbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIH07CiBzdHJ1Y3QgeHRfc2V0X2luZm9fbWF0Y2hfdjEgewotIHN0cnVjdCB4dF9zZXRfaW5mbyBtYXRjaF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBtYXRjaF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb190YXJnZXRfdjEgewotIHN0cnVjdCB4dF9zZXRfaW5mbyBhZGRfc2V0OwotIHN0cnVjdCB4dF9zZXRfaW5mbyBkZWxfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm8gYWRkX3NldDsKKyAgc3RydWN0IHh0X3NldF9pbmZvIGRlbF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb190YXJnZXRfdjIgewotIHN0cnVjdCB4dF9zZXRfaW5mbyBhZGRfc2V0OwotIHN0cnVjdCB4dF9zZXRfaW5mbyBkZWxfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm8gYWRkX3NldDsKKyAgc3RydWN0IHh0X3NldF9pbmZvIGRlbF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHRpbWVvdXQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiB0aW1lb3V0OwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb19tYXRjaF92MyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9zZXRfaW5mbyBtYXRjaF9zZXQ7Ci0gc3RydWN0IGlwX3NldF9jb3VudGVyX21hdGNoIHBhY2tldHM7Ci0gc3RydWN0IGlwX3NldF9jb3VudGVyX21hdGNoIGJ5dGVzOwotIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgeHRfc2V0X2luZm8gbWF0Y2hfc2V0OworICBzdHJ1Y3QgaXBfc2V0X2NvdW50ZXJfbWF0Y2ggcGFja2V0czsKKyAgc3RydWN0IGlwX3NldF9jb3VudGVyX21hdGNoIGJ5dGVzOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Oworc3RydWN0IHh0X3NldF9pbmZvX3RhcmdldF92MyB7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBhZGRfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm8gZGVsX3NldDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCB4dF9zZXRfaW5mbyBtYXBfc2V0OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgdGltZW91dDsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zb2NrZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NvY2tldC5oCmluZGV4IDQxNzBmZTYuLmZmNTdkMjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NvY2tldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NvY2tldC5oCkBAIC0yMSwxNyArMjEsMTcgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1NPQ0tFVF9UUkFOU1BBUkVOVCA9IDEgPDwgMCwKLSBYVF9TT0NLRVRfTk9XSUxEQ0FSRCA9IDEgPDwgMSwKKyAgWFRfU09DS0VUX1RSQU5TUEFSRU5UID0gMSA8PCAwLAorICBYVF9TT0NLRVRfTk9XSUxEQ0FSRCA9IDEgPDwgMSwKIH07CiBzdHJ1Y3QgeHRfc29ja2V0X210aW5mbzEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogfTsKICNkZWZpbmUgWFRfU09DS0VUX0ZMQUdTX1YxIFhUX1NPQ0tFVF9UUkFOU1BBUkVOVAogc3RydWN0IHh0X3NvY2tldF9tdGluZm8yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIH07CiAjZGVmaW5lIFhUX1NPQ0tFVF9GTEFHU19WMiAoWFRfU09DS0VUX1RSQU5TUEFSRU5UIHwgWFRfU09DS0VUX05PV0lMRENBUkQpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0ZS5oCmluZGV4IDZmZjE4ODkuLjVkMmNkMTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RhdGUuaApAQCAtMTgsMTIgKzE4LDEyIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1hUX1NUQVRFX0gKICNkZWZpbmUgX1hUX1NUQVRFX0gKLSNkZWZpbmUgWFRfU1RBVEVfQklUKGN0aW5mbykgKDEgPDwgKChjdGluZm8pJUlQX0NUX0lTX1JFUExZKzEpKQorI2RlZmluZSBYVF9TVEFURV9CSVQoY3RpbmZvKSAoMSA8PCAoKGN0aW5mbykgJSBJUF9DVF9JU19SRVBMWSArIDEpKQogI2RlZmluZSBYVF9TVEFURV9JTlZBTElEICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9TVEFURV9VTlRSQUNLRUQgKDEgPDwgKElQX0NUX05VTUJFUiArIDEpKQogc3RydWN0IHh0X3N0YXRlX2luZm8gewotIHVuc2lnbmVkIGludCBzdGF0ZW1hc2s7CisgIHVuc2lnbmVkIGludCBzdGF0ZW1hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RhdGlzdGljLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0aXN0aWMuaAppbmRleCA2MjE1YWFlLi4xOWM0ZTdhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0aXN0aWMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0aXN0aWMuaApAQCAtMjEsMzUgKzIxLDM1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfc3RhdGlzdGljX21vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9TVEFUSVNUSUNfTU9ERV9SQU5ET00sCi0gWFRfU1RBVElTVElDX01PREVfTlRILAotIF9fWFRfU1RBVElTVElDX01PREVfTUFYCisgIFhUX1NUQVRJU1RJQ19NT0RFX1JBTkRPTSwKKyAgWFRfU1RBVElTVElDX01PREVfTlRILAorICBfX1hUX1NUQVRJU1RJQ19NT0RFX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX1NUQVRJU1RJQ19NT0RFX01BWCAoX19YVF9TVEFUSVNUSUNfTU9ERV9NQVggLSAxKQogZW51bSB4dF9zdGF0aXN0aWNfZmxhZ3MgewotIFhUX1NUQVRJU1RJQ19JTlZFUlQgPSAweDEsCisgIFhUX1NUQVRJU1RJQ19JTlZFUlQgPSAweDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfU1RBVElTVElDX01BU0sgMHgxCiBzdHJ1Y3QgeHRfc3RhdGlzdGljX3ByaXY7CiBzdHJ1Y3QgeHRfc3RhdGlzdGljX2luZm8gewotIF9fdTE2IG1vZGU7CisgIF9fdTE2IG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZsYWdzOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTMyIHByb2JhYmlsaXR5OworICBfX3UxNiBmbGFnczsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBwcm9iYWJpbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSByYW5kb207Ci0gc3RydWN0IHsKLSBfX3UzMiBldmVyeTsKLSBfX3UzMiBwYWNrZXQ7CisgICAgfSByYW5kb207CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGV2ZXJ5OworICAgICAgX191MzIgcGFja2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKLSB9IG50aDsKLSB9IHU7Ci0gc3RydWN0IHh0X3N0YXRpc3RpY19wcml2ICptYXN0ZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICAgICAgX191MzIgY291bnQ7CisgICAgfSBudGg7CisgIH0gdTsKKyAgc3RydWN0IHh0X3N0YXRpc3RpY19wcml2ICogbWFzdGVyIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdHJpbmcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0cmluZy5oCmluZGV4IDE5N2NjZjQuLmNmNDVhNjkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0cmluZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0cmluZy5oCkBAIC0yMywyOCArMjMsMjggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX1NUUklOR19NQVhfQUxHT19OQU1FX1NJWkUgMTYKIGVudW0gewotIFhUX1NUUklOR19GTEFHX0lOVkVSVCA9IDB4MDEsCi0gWFRfU1RSSU5HX0ZMQUdfSUdOT1JFQ0FTRSA9IDB4MDIKKyAgWFRfU1RSSU5HX0ZMQUdfSU5WRVJUID0gMHgwMSwKKyAgWFRfU1RSSU5HX0ZMQUdfSUdOT1JFQ0FTRSA9IDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3N0cmluZ19pbmZvIHsKLSBfX3UxNiBmcm9tX29mZnNldDsKLSBfX3UxNiB0b19vZmZzZXQ7CisgIF9fdTE2IGZyb21fb2Zmc2V0OworICBfX3UxNiB0b19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYWxnb1tYVF9TVFJJTkdfTUFYX0FMR09fTkFNRV9TSVpFXTsKLSBjaGFyIHBhdHRlcm5bWFRfU1RSSU5HX01BWF9QQVRURVJOX1NJWkVdOwotIF9fdTggcGF0bGVuOwotIHVuaW9uIHsKKyAgY2hhciBhbGdvW1hUX1NUUklOR19NQVhfQUxHT19OQU1FX1NJWkVdOworICBjaGFyIHBhdHRlcm5bWFRfU1RSSU5HX01BWF9QQVRURVJOX1NJWkVdOworICBfX3U4IHBhdGxlbjsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTggaW52ZXJ0OwotIH0gdjA7Ci0gc3RydWN0IHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCBpbnZlcnQ7CisgICAgfSB2MDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIH0gdjE7Ci0gfSB1OwotIHN0cnVjdCB0c19jb25maWcgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpICpjb25maWc7CisgICAgICBfX3U4IGZsYWdzOworICAgIH0gdjE7CisgIH0gdTsKKyAgc3RydWN0IHRzX2NvbmZpZyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSkgKiBjb25maWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGNwbXNzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90Y3Btc3MuaAppbmRleCBkMWJiNzA3Li5mOGQwNTk3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90Y3Btc3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90Y3Btc3MuaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfdGNwbXNzX21hdGNoX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtc3NfbWluLCBtc3NfbWF4OwotIF9fdTggaW52ZXJ0OworICBfX3UxNiBtc3NfbWluLCBtc3NfbWF4OworICBfX3U4IGludmVydDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90Y3B1ZHAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcHVkcC5oCmluZGV4IDkzODYxMTAuLjM1ZjUzMWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcHVkcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcHVkcC5oCkBAIC0yMSwxMyArMjEsMTMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X3RjcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNwdHNbMl07Ci0gX191MTYgZHB0c1syXTsKLSBfX3U4IG9wdGlvbjsKLSBfX3U4IGZsZ19tYXNrOworICBfX3UxNiBzcHRzWzJdOworICBfX3UxNiBkcHRzWzJdOworICBfX3U4IG9wdGlvbjsKKyAgX191OCBmbGdfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGdfY21wOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggZmxnX2NtcDsKKyAgX191OCBpbnZmbGFnczsKIH07CiAjZGVmaW5lIFhUX1RDUF9JTlZfU1JDUFQgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM3LDkgKzM3LDkgQEAKICNkZWZpbmUgWFRfVENQX0lOVl9NQVNLIDB4MEYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfdWRwIHsKLSBfX3UxNiBzcHRzWzJdOwotIF9fdTE2IGRwdHNbMl07Ci0gX191OCBpbnZmbGFnczsKKyAgX191MTYgc3B0c1syXTsKKyAgX191MTYgZHB0c1syXTsKKyAgX191OCBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBYVF9VRFBfSU5WX1NSQ1BUIDB4MDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RpbWUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RpbWUuaAppbmRleCAyMzhhMmNhLi40MzA2YjAyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90aW1lLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGltZS5oCkBAIC0yMSwyNSArMjEsMjUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X3RpbWVfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRhdGVfc3RhcnQ7Ci0gX191MzIgZGF0ZV9zdG9wOwotIF9fdTMyIGRheXRpbWVfc3RhcnQ7Ci0gX191MzIgZGF5dGltZV9zdG9wOworICBfX3UzMiBkYXRlX3N0YXJ0OworICBfX3UzMiBkYXRlX3N0b3A7CisgIF9fdTMyIGRheXRpbWVfc3RhcnQ7CisgIF9fdTMyIGRheXRpbWVfc3RvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbW9udGhkYXlzX21hdGNoOwotIF9fdTggd2Vla2RheXNfbWF0Y2g7Ci0gX191OCBmbGFnczsKKyAgX191MzIgbW9udGhkYXlzX21hdGNoOworICBfX3U4IHdlZWtkYXlzX21hdGNoOworICBfX3U4IGZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBYVF9USU1FX0xPQ0FMX1RaID0gMSA8PCAwLAotIFhUX1RJTUVfQ09OVElHVU9VUyA9IDEgPDwgMSwKLSBYVF9USU1FX0FMTF9NT05USERBWVMgPSAweEZGRkZGRkZFLAorICBYVF9USU1FX0xPQ0FMX1RaID0gMSA8PCAwLAorICBYVF9USU1FX0NPTlRJR1VPVVMgPSAxIDw8IDEsCisgIFhUX1RJTUVfQUxMX01PTlRIREFZUyA9IDB4RkZGRkZGRkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1RJTUVfQUxMX1dFRUtEQVlTID0gMHhGRSwKLSBYVF9USU1FX01JTl9EQVlUSU1FID0gMCwKLSBYVF9USU1FX01BWF9EQVlUSU1FID0gMjQgKiA2MCAqIDYwIC0gMSwKKyAgWFRfVElNRV9BTExfV0VFS0RBWVMgPSAweEZFLAorICBYVF9USU1FX01JTl9EQVlUSU1FID0gMCwKKyAgWFRfVElNRV9NQVhfREFZVElNRSA9IDI0ICogNjAgKiA2MCAtIDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgWFRfVElNRV9BTExfRkxBR1MgKFhUX1RJTUVfTE9DQUxfVFp8WFRfVElNRV9DT05USUdVT1VTKQorI2RlZmluZSBYVF9USU1FX0FMTF9GTEFHUyAoWFRfVElNRV9MT0NBTF9UWiB8IFhUX1RJTUVfQ09OVElHVU9VUykKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdTMyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF91MzIuaAppbmRleCAwMjY4ZmMwLi5hZWFlMWFmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF91MzIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF91MzIuaApAQCAtMjEsMzUgKzIxLDM1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfdTMyX29wcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1UzMl9BTkQsCi0gWFRfVTMyX0xFRlRTSCwKLSBYVF9VMzJfUklHSFRTSCwKLSBYVF9VMzJfQVQsCisgIFhUX1UzMl9BTkQsCisgIFhUX1UzMl9MRUZUU0gsCisgIFhUX1UzMl9SSUdIVFNILAorICBYVF9VMzJfQVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF91MzJfbG9jYXRpb25fZWxlbWVudCB7Ci0gX191MzIgbnVtYmVyOwotIF9fdTggbmV4dG9wOworICBfX3UzMiBudW1iZXI7CisgIF9fdTggbmV4dG9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfdTMyX3ZhbHVlX2VsZW1lbnQgewotIF9fdTMyIG1pbjsKLSBfX3UzMiBtYXg7CisgIF9fdTMyIG1pbjsKKyAgX191MzIgbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFhUX1UzMl9NQVhTSVpFIDEwCiBzdHJ1Y3QgeHRfdTMyX3Rlc3QgewotIHN0cnVjdCB4dF91MzJfbG9jYXRpb25fZWxlbWVudCBsb2NhdGlvbltYVF9VMzJfTUFYU0laRSsxXTsKKyAgc3RydWN0IHh0X3UzMl9sb2NhdGlvbl9lbGVtZW50IGxvY2F0aW9uW1hUX1UzMl9NQVhTSVpFICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF91MzJfdmFsdWVfZWxlbWVudCB2YWx1ZVtYVF9VMzJfTUFYU0laRSsxXTsKLSBfX3U4IG5udW1zOwotIF9fdTggbnZhbHVlczsKKyAgc3RydWN0IHh0X3UzMl92YWx1ZV9lbGVtZW50IHZhbHVlW1hUX1UzMl9NQVhTSVpFICsgMV07CisgIF9fdTggbm51bXM7CisgIF9fdTggbnZhbHVlczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X3UzMiB7Ci0gc3RydWN0IHh0X3UzMl90ZXN0IHRlc3RzW1hUX1UzMl9NQVhTSVpFKzFdOwotIF9fdTggbnRlc3RzOwotIF9fdTggaW52ZXJ0OworICBzdHJ1Y3QgeHRfdTMyX3Rlc3QgdGVzdHNbWFRfVTMyX01BWFNJWkUgKyAxXTsKKyAgX191OCBudGVzdHM7CisgIF9fdTggaW52ZXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnBfdGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwX3RhYmxlcy5oCmluZGV4IDk1ZTFlMjkuLjEyMzY4M2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnBfdGFibGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYXJwL2FycF90YWJsZXMuaApAQCAtMzcsMjkgKzM3LDI5IEBACiAjZGVmaW5lIEFSUFRfU1RBTkRBUkRfVEFSR0VUIFhUX1NUQU5EQVJEX1RBUkdFVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9FUlJPUl9UQVJHRVQgWFRfRVJST1JfVEFSR0VUCi0jZGVmaW5lIEFSUFRfRU5UUllfSVRFUkFURShlbnRyaWVzLCBzaXplLCBmbiwgYXJncy4uLikgICBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBhcnB0X2VudHJ5LCBlbnRyaWVzLCBzaXplLCBmbiwgIyMgYXJncykKKyNkZWZpbmUgQVJQVF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsc2l6ZSxmbixhcmdzLi4uKSBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBhcnB0X2VudHJ5LCBlbnRyaWVzLCBzaXplLCBmbiwgIyNhcmdzKQogI2RlZmluZSBBUlBUX0RFVl9BRERSX0xFTl9NQVggMTYKIHN0cnVjdCBhcnB0X2RldmFkZHJfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOwotIGNoYXIgbWFza1tBUlBUX0RFVl9BRERSX0xFTl9NQVhdOworICBjaGFyIGFkZHJbQVJQVF9ERVZfQUREUl9MRU5fTUFYXTsKKyAgY2hhciBtYXNrW0FSUFRfREVWX0FERFJfTEVOX01BWF07CiB9Owogc3RydWN0IGFycHRfYXJwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgc3JjLCB0Z3Q7Ci0gc3RydWN0IGluX2FkZHIgc21zaywgdG1zazsKLSBfX3U4IGFyaGxuLCBhcmhsbl9tYXNrOwotIHN0cnVjdCBhcnB0X2RldmFkZHJfaW5mbyBzcmNfZGV2YWRkcjsKKyAgc3RydWN0IGluX2FkZHIgc3JjLCB0Z3Q7CisgIHN0cnVjdCBpbl9hZGRyIHNtc2ssIHRtc2s7CisgIF9fdTggYXJobG4sIGFyaGxuX21hc2s7CisgIHN0cnVjdCBhcnB0X2RldmFkZHJfaW5mbyBzcmNfZGV2YWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGFycHRfZGV2YWRkcl9pbmZvIHRndF9kZXZhZGRyOwotIF9fYmUxNiBhcnBvcCwgYXJwb3BfbWFzazsKLSBfX2JlMTYgYXJocmQsIGFyaHJkX21hc2s7Ci0gX19iZTE2IGFycHJvLCBhcnByb19tYXNrOworICBzdHJ1Y3QgYXJwdF9kZXZhZGRyX2luZm8gdGd0X2RldmFkZHI7CisgIF9fYmUxNiBhcnBvcCwgYXJwb3BfbWFzazsKKyAgX19iZTE2IGFyaHJkLCBhcmhyZF9tYXNrOworICBfX2JlMTYgYXJwcm8sIGFycHJvX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKLSB1bnNpZ25lZCBjaGFyIGluaWZhY2VfbWFza1tJRk5BTVNJWl0sIG91dGlmYWNlX21hc2tbSUZOQU1TSVpdOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgaW52ZmxhZ3M7CisgIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKKyAgdW5zaWduZWQgY2hhciBpbmlmYWNlX21hc2tbSUZOQU1TSVpdLCBvdXRpZmFjZV9tYXNrW0lGTkFNU0laXTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQVJQVF9GX01BU0sgMHgwMApAQCAtNzcsNTUgKzc3LDU0IEBACiAjZGVmaW5lIEFSUFRfSU5WX0FSUEhMTiAweDAyMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFSUFRfSU5WX01BU0sgMHgwM0ZGCi1zdHJ1Y3QgYXJwdF9lbnRyeQotewotIHN0cnVjdCBhcnB0X2FycCBhcnA7CitzdHJ1Y3QgYXJwdF9lbnRyeSB7CisgIHN0cnVjdCBhcnB0X2FycCBhcnA7CisgIF9fdTE2IHRhcmdldF9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRhcmdldF9vZmZzZXQ7Ci0gX191MTYgbmV4dF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGNvbWVmcm9tOwotIHN0cnVjdCB4dF9jb3VudGVycyBjb3VudGVyczsKKyAgX191MTYgbmV4dF9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBjb21lZnJvbTsKKyAgc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOworICB1bnNpZ25lZCBjaGFyIGVsZW1zWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGVsZW1zWzBdOwogfTsKICNkZWZpbmUgQVJQVF9CQVNFX0NUTCA5NgogI2RlZmluZSBBUlBUX1NPX1NFVF9SRVBMQUNFIChBUlBUX0JBU0VfQ1RMKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9TT19TRVRfQUREX0NPVU5URVJTIChBUlBUX0JBU0VfQ1RMICsgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFSUFRfU09fU0VUX01BWCBBUlBUX1NPX1NFVF9BRERfQ09VTlRFUlMKICNkZWZpbmUgQVJQVF9TT19HRVRfSU5GTyAoQVJQVF9CQVNFX0NUTCkKICNkZWZpbmUgQVJQVF9TT19HRVRfRU5UUklFUyAoQVJQVF9CQVNFX0NUTCArIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX1NPX0dFVF9SRVZJU0lPTl9UQVJHRVQgKEFSUFRfQkFTRV9DVEwgKyAzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9TT19HRVRfTUFYIChBUlBUX1NPX0dFVF9SRVZJU0lPTl9UQVJHRVQpCiBzdHJ1Y3QgYXJwdF9nZXRpbmZvIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7Ci0gdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfQVJQX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0FSUF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9BUlBfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0FSUF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKKyAgdW5zaWduZWQgaW50IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzaXplOwogfTsKIHN0cnVjdCBhcnB0X3JlcGxhY2UgewotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKLSB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7Ci0gdW5zaWduZWQgaW50IHNpemU7Ci0gdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfQVJQX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfQVJQX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IHVuZGVyZmxvd1tORl9BUlBfTlVNSE9PS1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0FSUF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICpjb3VudGVyczsKLSBzdHJ1Y3QgYXJwdF9lbnRyeSBlbnRyaWVzWzBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKKyAgc3RydWN0IHh0X2NvdW50ZXJzIF9fdXNlciAqIGNvdW50ZXJzOworICBzdHJ1Y3QgYXJwdF9lbnRyeSBlbnRyaWVzWzBdOwogfTsKLXN0cnVjdCBhcnB0X2dldF9lbnRyaWVzIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhcnB0X2VudHJ5IGVudHJ5dGFibGVbMF07CitzdHJ1Y3QgYXJwdF9nZXRfZW50cmllcyB7CisgIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHN0cnVjdCBhcnB0X2VudHJ5IGVudHJ5dGFibGVbMF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYXJwL2FycHRfbWFuZ2xlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwdF9tYW5nbGUuaAppbmRleCA1YjFmZDMwLi45MmVlYzJkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwdF9tYW5nbGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwdF9tYW5nbGUuaApAQCAtMjEsMjYgKzIxLDI1IEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyX2FycC9hcnBfdGFibGVzLmg+CiAjZGVmaW5lIEFSUFRfTUFOR0xFX0FERFJfTEVOX01BWCBzaXplb2Yoc3RydWN0IGluX2FkZHIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGFycHRfbWFuZ2xlCi17Ci0gY2hhciBzcmNfZGV2YWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOwotIGNoYXIgdGd0X2RldmFkZHJbQVJQVF9ERVZfQUREUl9MRU5fTUFYXTsKK3N0cnVjdCBhcnB0X21hbmdsZSB7CisgIGNoYXIgc3JjX2RldmFkZHJbQVJQVF9ERVZfQUREUl9MRU5fTUFYXTsKKyAgY2hhciB0Z3RfZGV2YWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgaW5fYWRkciBzcmNfaXA7Ci0gfSB1X3M7Ci0gdW5pb24geworICAgIHN0cnVjdCBpbl9hZGRyIHNyY19pcDsKKyAgfSB1X3M7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgaW5fYWRkciB0Z3RfaXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIHRndF9pcDsKLSB9IHVfdDsKLSB1X2ludDhfdCBmbGFnczsKLSBpbnQgdGFyZ2V0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfSB1X3Q7CisgIF9fdTggZmxhZ3M7CisgIGludCB0YXJnZXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9NQU5HTEVfU0RFViAweDAxCiAjZGVmaW5lIEFSUFRfTUFOR0xFX1RERVYgMHgwMgogI2RlZmluZSBBUlBUX01BTkdMRV9TSVAgMHgwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9NQU5HTEVfVElQIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFSUFRfTUFOR0xFX01BU0sgMHgwZgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0XzgwMl8zLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0XzgwMl8zLmgKaW5kZXggMDlhZTdlMC4uYzY1Y2M1MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF84MDJfMy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfODAyXzMuaApAQCAtMjksNDAgKzI5LDQwIEBACiAjZGVmaW5lIElTX1VJIDB4MDMKICNkZWZpbmUgRUJUXzgwMl8zX01BU0sgKEVCVF84MDJfM19TQVAgfCBFQlRfODAyXzNfVFlQRSB8IEVCVF84MDJfMykKIHN0cnVjdCBoZHJfdWkgewotIF9fdTggZHNhcDsKKyAgX191OCBkc2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNzYXA7Ci0gX191OCBjdHJsOwotIF9fdTggb3JpZ1szXTsKLSBfX2JlMTYgdHlwZTsKKyAgX191OCBzc2FwOworICBfX3U4IGN0cmw7CisgIF9fdTggb3JpZ1szXTsKKyAgX19iZTE2IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBoZHJfbmkgewotIF9fdTggZHNhcDsKLSBfX3U4IHNzYXA7CisgIF9fdTggZHNhcDsKKyAgX191OCBzc2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgY3RybDsKLSBfX3U4IG9yaWdbM107Ci0gX19iZTE2IHR5cGU7CisgIF9fYmUxNiBjdHJsOworICBfX3U4IG9yaWdbM107CisgIF9fYmUxNiB0eXBlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZWJ0XzgwMl8zX2hkciB7Ci0gX191OCBkYWRkcltFVEhfQUxFTl07Ci0gX191OCBzYWRkcltFVEhfQUxFTl07Ci0gX19iZTE2IGxlbjsKKyAgX191OCBkYWRkcltFVEhfQUxFTl07CisgIF9fdTggc2FkZHJbRVRIX0FMRU5dOworICBfX2JlMTYgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGhkcl91aSB1aTsKLSBzdHJ1Y3QgaGRyX25pIG5pOwotIH0gbGxjOworICB1bmlvbiB7CisgICAgc3RydWN0IGhkcl91aSB1aTsKKyAgICBzdHJ1Y3QgaGRyX25pIG5pOworICB9IGxsYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGVidF84MDJfM19pbmZvIHsKLSBfX3U4IHNhcDsKLSBfX2JlMTYgdHlwZTsKKyAgX191OCBzYXA7CisgIF9fYmUxNiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJpdG1hc2s7Ci0gX191OCBpbnZmbGFnczsKKyAgX191OCBiaXRtYXNrOworICBfX3U4IGludmZsYWdzOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYW1vbmcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYW1vbmcuaAppbmRleCBhZWUwOWY3Li42NDI2YzFiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2Ftb25nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hbW9uZy5oCkBAIC0yMywyOCArMjMsMjggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9BTU9OR19TUkMgMHgwMgogc3RydWN0IGVidF9tYWNfd29ybWhhc2hfdHVwbGUgewotIF9fdTMyIGNtcFsyXTsKLSBfX2JlMzIgaXA7CisgIF9fdTMyIGNtcFsyXTsKKyAgX19iZTMyIGlwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaCB7Ci0gaW50IHRhYmxlWzI1N107Ci0gaW50IHBvb2xzaXplOworICBpbnQgdGFibGVbMjU3XTsKKyAgaW50IHBvb2xzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaF90dXBsZSBwb29sWzBdOworICBzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaF90dXBsZSBwb29sWzBdOwogfTsKLSNkZWZpbmUgZWJ0X21hY193b3JtaGFzaF9zaXplKHgpICgoeCkgPyBzaXplb2Yoc3RydWN0IGVidF9tYWNfd29ybWhhc2gpICAgKyAoeCktPnBvb2xzaXplICogc2l6ZW9mKHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoX3R1cGxlKSA6IDApCisjZGVmaW5lIGVidF9tYWNfd29ybWhhc2hfc2l6ZSh4KSAoKHgpID8gc2l6ZW9mKHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoKSArICh4KS0+cG9vbHNpemUgKiBzaXplb2Yoc3RydWN0IGVidF9tYWNfd29ybWhhc2hfdHVwbGUpIDogMCkKIHN0cnVjdCBlYnRfYW1vbmdfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB3aF9kc3Rfb2ZzOwotIGludCB3aF9zcmNfb2ZzOwotIGludCBiaXRtYXNrOworICBpbnQgd2hfZHN0X29mczsKKyAgaW50IHdoX3NyY19vZnM7CisgIGludCBiaXRtYXNrOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9BTU9OR19EU1RfTkVHIDB4MQogI2RlZmluZSBFQlRfQU1PTkdfU1JDX05FRyAweDIKLSNkZWZpbmUgZWJ0X2Ftb25nX3doX2RzdCh4KSAoKHgpLT53aF9kc3Rfb2ZzID8gICAoc3RydWN0IGVidF9tYWNfd29ybWhhc2gqKSgoY2hhciopKHgpICsgKHgpLT53aF9kc3Rfb2ZzKSA6IE5VTEwpCi0jZGVmaW5lIGVidF9hbW9uZ193aF9zcmMoeCkgKCh4KS0+d2hfc3JjX29mcyA/ICAgKHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoKikoKGNoYXIqKSh4KSArICh4KS0+d2hfc3JjX29mcykgOiBOVUxMKQorI2RlZmluZSBlYnRfYW1vbmdfd2hfZHN0KHgpICgoeCktPndoX2RzdF9vZnMgPyAoc3RydWN0IGVidF9tYWNfd29ybWhhc2ggKikgKChjaGFyICopICh4KSArICh4KS0+d2hfZHN0X29mcykgOiBOVUxMKQorI2RlZmluZSBlYnRfYW1vbmdfd2hfc3JjKHgpICgoeCktPndoX3NyY19vZnMgPyAoc3RydWN0IGVidF9tYWNfd29ybWhhc2ggKikgKChjaGFyICopICh4KSArICh4KS0+d2hfc3JjX29mcykgOiBOVUxMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0FNT05HX01BVENIICJhbW9uZyIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYXJwLmgKaW5kZXggNzkxYmQ2ZS4uZmI2NzZiNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycC5oCkBAIC0yOSwyNyArMjksMjYgQEAKICNkZWZpbmUgRUJUX0FSUF9TUkNfTUFDIDB4MjAKICNkZWZpbmUgRUJUX0FSUF9EU1RfTUFDIDB4NDAKICNkZWZpbmUgRUJUX0FSUF9HUkFUIDB4ODAKLSNkZWZpbmUgRUJUX0FSUF9NQVNLIChFQlRfQVJQX09QQ09ERSB8IEVCVF9BUlBfSFRZUEUgfCBFQlRfQVJQX1BUWVBFIHwgICBFQlRfQVJQX1NSQ19JUCB8IEVCVF9BUlBfRFNUX0lQIHwgRUJUX0FSUF9TUkNfTUFDIHwgRUJUX0FSUF9EU1RfTUFDIHwgICBFQlRfQVJQX0dSQVQpCisjZGVmaW5lIEVCVF9BUlBfTUFTSyAoRUJUX0FSUF9PUENPREUgfCBFQlRfQVJQX0hUWVBFIHwgRUJUX0FSUF9QVFlQRSB8IEVCVF9BUlBfU1JDX0lQIHwgRUJUX0FSUF9EU1RfSVAgfCBFQlRfQVJQX1NSQ19NQUMgfCBFQlRfQVJQX0RTVF9NQUMgfCBFQlRfQVJQX0dSQVQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfQVJQX01BVENIICJhcnAiCi1zdHJ1Y3QgZWJ0X2FycF9pbmZvCi17Ci0gX19iZTE2IGh0eXBlOworc3RydWN0IGVidF9hcnBfaW5mbyB7CisgIF9fYmUxNiBodHlwZTsKKyAgX19iZTE2IHB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgcHR5cGU7Ci0gX19iZTE2IG9wY29kZTsKLSBfX2JlMzIgc2FkZHI7Ci0gX19iZTMyIHNtc2s7CisgIF9fYmUxNiBvcGNvZGU7CisgIF9fYmUzMiBzYWRkcjsKKyAgX19iZTMyIHNtc2s7CisgIF9fYmUzMiBkYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGRhZGRyOwotIF9fYmUzMiBkbXNrOwotIHVuc2lnbmVkIGNoYXIgc21hZGRyW0VUSF9BTEVOXTsKLSB1bnNpZ25lZCBjaGFyIHNtbXNrW0VUSF9BTEVOXTsKKyAgX19iZTMyIGRtc2s7CisgIHVuc2lnbmVkIGNoYXIgc21hZGRyW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBzbW1za1tFVEhfQUxFTl07CisgIHVuc2lnbmVkIGNoYXIgZG1hZGRyW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkbWFkZHJbRVRIX0FMRU5dOwotIHVuc2lnbmVkIGNoYXIgZG1tc2tbRVRIX0FMRU5dOwotIF9fdTggYml0bWFzazsKLSBfX3U4IGludmZsYWdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciBkbW1za1tFVEhfQUxFTl07CisgIF9fdTggYml0bWFzazsKKyAgX191OCBpbnZmbGFnczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycHJlcGx5LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycHJlcGx5LmgKaW5kZXggZTA1NmQ0Ni4uZTBjZDUwMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnByZXBseS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYXJwcmVwbHkuaApAQCAtMTksOSArMTksOSBAQAogI2lmbmRlZiBfX0xJTlVYX0JSSURHRV9FQlRfQVJQUkVQTFlfSAogI2RlZmluZSBfX0xJTlVYX0JSSURHRV9FQlRfQVJQUkVQTFlfSAogc3RydWN0IGVidF9hcnByZXBseV9pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIG1hY1tFVEhfQUxFTl07CisgIHVuc2lnbmVkIGNoYXIgbWFjW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRhcmdldDsKKyAgaW50IHRhcmdldDsKIH07CiAjZGVmaW5lIEVCVF9BUlBSRVBMWV9UQVJHRVQgImFycHJlcGx5IgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwLmgKaW5kZXggY2U5ZWFhNy4uZWY0NWM2OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfaXAuaApAQCAtMjcsMjIgKzI3LDIyIEBACiAjZGVmaW5lIEVCVF9JUF9TUE9SVCAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfSVBfRFBPUlQgMHgyMAotI2RlZmluZSBFQlRfSVBfTUFTSyAoRUJUX0lQX1NPVVJDRSB8IEVCVF9JUF9ERVNUIHwgRUJUX0lQX1RPUyB8IEVCVF9JUF9QUk9UTyB8ICBFQlRfSVBfU1BPUlQgfCBFQlRfSVBfRFBPUlQgKQorI2RlZmluZSBFQlRfSVBfTUFTSyAoRUJUX0lQX1NPVVJDRSB8IEVCVF9JUF9ERVNUIHwgRUJUX0lQX1RPUyB8IEVCVF9JUF9QUk9UTyB8IEVCVF9JUF9TUE9SVCB8IEVCVF9JUF9EUE9SVCkKICNkZWZpbmUgRUJUX0lQX01BVENIICJpcCIKIHN0cnVjdCBlYnRfaXBfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzYWRkcjsKLSBfX2JlMzIgZGFkZHI7Ci0gX19iZTMyIHNtc2s7Ci0gX19iZTMyIGRtc2s7CisgIF9fYmUzMiBzYWRkcjsKKyAgX19iZTMyIGRhZGRyOworICBfX2JlMzIgc21zazsKKyAgX19iZTMyIGRtc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdG9zOwotIF9fdTggcHJvdG9jb2w7Ci0gX191OCBiaXRtYXNrOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggdG9zOworICBfX3U4IHByb3RvY29sOworICBfX3U4IGJpdG1hc2s7CisgIF9fdTggaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNwb3J0WzJdOwotIF9fdTE2IGRwb3J0WzJdOworICBfX3UxNiBzcG9ydFsyXTsKKyAgX191MTYgZHBvcnRbMl07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcDYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfaXA2LmgKaW5kZXggNTUyYjBkNy4uYWMwNjA0NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcDYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwNi5oCkBAIC0yOCwyOSArMjgsMjkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9JUDZfRFBPUlQgMHgyMAogI2RlZmluZSBFQlRfSVA2X0lDTVA2IDB4NDAKLSNkZWZpbmUgRUJUX0lQNl9NQVNLIChFQlRfSVA2X1NPVVJDRSB8IEVCVF9JUDZfREVTVCB8IEVCVF9JUDZfVENMQVNTIHwgIEVCVF9JUDZfUFJPVE8gfCBFQlRfSVA2X1NQT1JUIHwgRUJUX0lQNl9EUE9SVCB8ICAgRUJUX0lQNl9JQ01QNikKKyNkZWZpbmUgRUJUX0lQNl9NQVNLIChFQlRfSVA2X1NPVVJDRSB8IEVCVF9JUDZfREVTVCB8IEVCVF9JUDZfVENMQVNTIHwgRUJUX0lQNl9QUk9UTyB8IEVCVF9JUDZfU1BPUlQgfCBFQlRfSVA2X0RQT1JUIHwgRUJUX0lQNl9JQ01QNikKICNkZWZpbmUgRUJUX0lQNl9NQVRDSCAiaXA2IgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlYnRfaXA2X2luZm8gewotIHN0cnVjdCBpbjZfYWRkciBzYWRkcjsKLSBzdHJ1Y3QgaW42X2FkZHIgZGFkZHI7Ci0gc3RydWN0IGluNl9hZGRyIHNtc2s7CisgIHN0cnVjdCBpbjZfYWRkciBzYWRkcjsKKyAgc3RydWN0IGluNl9hZGRyIGRhZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgc21zazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluNl9hZGRyIGRtc2s7Ci0gX191OCB0Y2xhc3M7Ci0gX191OCBwcm90b2NvbDsKLSBfX3U4IGJpdG1hc2s7CisgIHN0cnVjdCBpbjZfYWRkciBkbXNrOworICBfX3U4IHRjbGFzczsKKyAgX191OCBwcm90b2NvbDsKKyAgX191OCBiaXRtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGludmZsYWdzOwotIHVuaW9uIHsKLSBfX3UxNiBzcG9ydFsyXTsKLSBfX3U4IGljbXB2Nl90eXBlWzJdOworICBfX3U4IGludmZsYWdzOworICB1bmlvbiB7CisgICAgX191MTYgc3BvcnRbMl07CisgICAgX191OCBpY21wdjZfdHlwZVsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSB1bmlvbiB7Ci0gX191MTYgZHBvcnRbMl07Ci0gX191OCBpY21wdjZfY29kZVsyXTsKKyAgfTsKKyAgdW5pb24geworICAgIF9fdTE2IGRwb3J0WzJdOworICAgIF9fdTggaWNtcHY2X2NvZGVbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgIH07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2xpbWl0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2xpbWl0LmgKaW5kZXggMzAzYzJiYi4uMzc1NjQ3MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9saW1pdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbGltaXQuaApAQCAtMjMsMTIgKzIzLDEyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfTElNSVRfU0NBTEUgMTAwMDAKIHN0cnVjdCBlYnRfbGltaXRfaW5mbyB7Ci0gX191MzIgYXZnOwotIF9fdTMyIGJ1cnN0OworICBfX3UzMiBhdmc7CisgIF9fdTMyIGJ1cnN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHByZXY7Ci0gX191MzIgY3JlZGl0OwotIF9fdTMyIGNyZWRpdF9jYXAsIGNvc3Q7CisgIHVuc2lnbmVkIGxvbmcgcHJldjsKKyAgX191MzIgY3JlZGl0OworICBfX3UzMiBjcmVkaXRfY2FwLCBjb3N0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbG9nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2xvZy5oCmluZGV4IDcyYTEwNWQuLmIyNzZjNWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbG9nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9sb2cuaApAQCAtMjksMTAgKzI5LDEwIEBACiAjZGVmaW5lIEVCVF9MT0dfUFJFRklYX1NJWkUgMzAKICNkZWZpbmUgRUJUX0xPR19XQVRDSEVSICJsb2ciCiBzdHJ1Y3QgZWJ0X2xvZ19pbmZvIHsKLSBfX3U4IGxvZ2xldmVsOworICBfX3U4IGxvZ2xldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByZWZpeFtFQlRfTE9HX1BSRUZJWF9TSVpFXTsKLSBfX3UzMiBiaXRtYXNrOworICBfX3U4IHByZWZpeFtFQlRfTE9HX1BSRUZJWF9TSVpFXTsKKyAgX191MzIgYml0bWFzazsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9tYXJrX20uaAppbmRleCA1YzMyNTIyLi40OTdiMDE5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbWFya19tLmgKQEAgLTI0LDEwICsyNCwxMCBAQAogI2RlZmluZSBFQlRfTUFSS19PUiAweDAyCiAjZGVmaW5lIEVCVF9NQVJLX01BU0sgKEVCVF9NQVJLX0FORCB8IEVCVF9NQVJLX09SKQogc3RydWN0IGVidF9tYXJrX21faW5mbyB7Ci0gdW5zaWduZWQgbG9uZyBtYXJrLCBtYXNrOworICB1bnNpZ25lZCBsb25nIG1hcmssIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OwotIF9fdTggYml0bWFzazsKKyAgX191OCBpbnZlcnQ7CisgIF9fdTggYml0bWFzazsKIH07CiAjZGVmaW5lIEVCVF9NQVJLX01BVENIICJtYXJrX20iCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9tYXJrX3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbWFya190LmgKaW5kZXggZWZjNTc4Ni4uZGJmZGZiMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9tYXJrX3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfdC5oCkBAIC0yNCw5ICsyNCw5IEBACiAjZGVmaW5lIE1BUktfQU5EX1ZBTFVFICgweGZmZmZmZmQwKQogI2RlZmluZSBNQVJLX1hPUl9WQUxVRSAoMHhmZmZmZmZjMCkKIHN0cnVjdCBlYnRfbWFya190X2luZm8gewotIHVuc2lnbmVkIGxvbmcgbWFyazsKKyAgdW5zaWduZWQgbG9uZyBtYXJrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGFyZ2V0OworICBpbnQgdGFyZ2V0OwogfTsKICNkZWZpbmUgRUJUX01BUktfVEFSR0VUICJtYXJrIgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25hdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9uYXQuaAppbmRleCAyNTdjZGIxLi5lYjM0MWMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25hdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmF0LmgKQEAgLTIxLDggKzIxLDggQEAKICNkZWZpbmUgTkFUX0FSUF9CSVQgKDB4MDAwMDAwMTApCiBzdHJ1Y3QgZWJ0X25hdF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBtYWNbRVRIX0FMRU5dOwotIGludCB0YXJnZXQ7CisgIHVuc2lnbmVkIGNoYXIgbWFjW0VUSF9BTEVOXTsKKyAgaW50IHRhcmdldDsKIH07CiAjZGVmaW5lIEVCVF9TTkFUX1RBUkdFVCAic25hdCIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25mbG9nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25mbG9nLmgKaW5kZXggOWJlNjg4YS4uOGE5ZTk4ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9uZmxvZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmZsb2cuaApAQCAtMjcsMTMgKzI3LDEzIEBACiAjZGVmaW5lIEVCVF9ORkxPR19ERUZBVUxUX1RIUkVTSE9MRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVidF9uZmxvZ19pbmZvIHsKLSBfX3UzMiBsZW47Ci0gX191MTYgZ3JvdXA7Ci0gX191MTYgdGhyZXNob2xkOworICBfX3UzMiBsZW47CisgIF9fdTE2IGdyb3VwOworICBfX3UxNiB0aHJlc2hvbGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IHBhZDsKLSBjaGFyIHByZWZpeFtFQlRfTkZMT0dfUFJFRklYX1NJWkVdOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgcGFkOworICBjaGFyIHByZWZpeFtFQlRfTkZMT0dfUFJFRklYX1NJWkVdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfcGt0dHlwZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9wa3R0eXBlLmgKaW5kZXggYmJjZmQwYy4uMmU2NTM1YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9wa3R0eXBlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9wa3R0eXBlLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGVidF9wa3R0eXBlX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBrdF90eXBlOwotIF9fdTggaW52ZXJ0OworICBfX3U4IHBrdF90eXBlOworICBfX3U4IGludmVydDsKIH07CiAjZGVmaW5lIEVCVF9QS1RUWVBFX01BVENIICJwa3R0eXBlIgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfcmVkaXJlY3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfcmVkaXJlY3QuaAppbmRleCBhODZiYTJjLi5hOWE3MzJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3JlZGlyZWN0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9yZWRpcmVjdC5oCkBAIC0xOSw3ICsxOSw3IEBACiAjaWZuZGVmIF9fTElOVVhfQlJJREdFX0VCVF9SRURJUkVDVF9ICiAjZGVmaW5lIF9fTElOVVhfQlJJREdFX0VCVF9SRURJUkVDVF9ICiBzdHJ1Y3QgZWJ0X3JlZGlyZWN0X2luZm8gewotIGludCB0YXJnZXQ7CisgIGludCB0YXJnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRUJUX1JFRElSRUNUX1RBUkdFVCAicmVkaXJlY3QiCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3N0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9zdHAuaAppbmRleCA0NzhiYjQ5Li40ZTQyMDYwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3N0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfc3RwLmgKQEAgLTM5LDI3ICszOSwyNyBAQAogI2RlZmluZSBFQlRfU1RQX0NPTkZJR19NQVNLIDB4MGZmZQogI2RlZmluZSBFQlRfU1RQX01BVENIICJzdHAiCiBzdHJ1Y3QgZWJ0X3N0cF9jb25maWdfaW5mbyB7Ci0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcm9vdF9wcmlvbCwgcm9vdF9wcmlvdTsKLSBjaGFyIHJvb3RfYWRkcls2XSwgcm9vdF9hZGRybXNrWzZdOwotIF9fdTMyIHJvb3RfY29zdGwsIHJvb3RfY29zdHU7Ci0gX191MTYgc2VuZGVyX3ByaW9sLCBzZW5kZXJfcHJpb3U7CisgIF9fdTE2IHJvb3RfcHJpb2wsIHJvb3RfcHJpb3U7CisgIGNoYXIgcm9vdF9hZGRyWzZdLCByb290X2FkZHJtc2tbNl07CisgIF9fdTMyIHJvb3RfY29zdGwsIHJvb3RfY29zdHU7CisgIF9fdTE2IHNlbmRlcl9wcmlvbCwgc2VuZGVyX3ByaW91OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNlbmRlcl9hZGRyWzZdLCBzZW5kZXJfYWRkcm1za1s2XTsKLSBfX3UxNiBwb3J0bCwgcG9ydHU7Ci0gX191MTYgbXNnX2FnZWwsIG1zZ19hZ2V1OwotIF9fdTE2IG1heF9hZ2VsLCBtYXhfYWdldTsKKyAgY2hhciBzZW5kZXJfYWRkcls2XSwgc2VuZGVyX2FkZHJtc2tbNl07CisgIF9fdTE2IHBvcnRsLCBwb3J0dTsKKyAgX191MTYgbXNnX2FnZWwsIG1zZ19hZ2V1OworICBfX3UxNiBtYXhfYWdlbCwgbWF4X2FnZXU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhlbGxvX3RpbWVsLCBoZWxsb190aW1ldTsKLSBfX3UxNiBmb3J3YXJkX2RlbGF5bCwgZm9yd2FyZF9kZWxheXU7CisgIF9fdTE2IGhlbGxvX3RpbWVsLCBoZWxsb190aW1ldTsKKyAgX191MTYgZm9yd2FyZF9kZWxheWwsIGZvcndhcmRfZGVsYXl1OwogfTsKIHN0cnVjdCBlYnRfc3RwX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gc3RydWN0IGVidF9zdHBfY29uZmlnX2luZm8gY29uZmlnOwotIF9fdTE2IGJpdG1hc2s7Ci0gX191MTYgaW52ZmxhZ3M7CisgIF9fdTggdHlwZTsKKyAgc3RydWN0IGVidF9zdHBfY29uZmlnX2luZm8gY29uZmlnOworICBfX3UxNiBiaXRtYXNrOworICBfX3UxNiBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3Vsb2cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdWxvZy5oCmluZGV4IDM3ZWU3MmQuLjAyOWQ2YjEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdWxvZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdWxvZy5oCkBAIC0yOSwyOCArMjksMjcgQEAKICNkZWZpbmUgRUJUX1VMT0dfV0FUQ0hFUiAidWxvZyIKICNkZWZpbmUgRUJUX1VMT0dfVkVSU0lPTiAxCiBzdHJ1Y3QgZWJ0X3Vsb2dfaW5mbyB7Ci0gX191MzIgbmxncm91cDsKKyAgX191MzIgbmxncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNwcmFuZ2U7Ci0gdW5zaWduZWQgaW50IHF0aHJlc2hvbGQ7Ci0gY2hhciBwcmVmaXhbRUJUX1VMT0dfUFJFRklYX0xFTl07CisgIHVuc2lnbmVkIGludCBjcHJhbmdlOworICB1bnNpZ25lZCBpbnQgcXRocmVzaG9sZDsKKyAgY2hhciBwcmVmaXhbRUJUX1VMT0dfUFJFRklYX0xFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGVidF91bG9nX3BhY2tldF9tc2cgewotIGludCB2ZXJzaW9uOwotIGNoYXIgaW5kZXZbSUZOQU1TSVpdOwotIGNoYXIgb3V0ZGV2W0lGTkFNU0laXTsKKyAgaW50IHZlcnNpb247CisgIGNoYXIgaW5kZXZbSUZOQU1TSVpdOworICBjaGFyIG91dGRldltJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcGh5c2luZGV2W0lGTkFNU0laXTsKLSBjaGFyIHBoeXNvdXRkZXZbSUZOQU1TSVpdOwotIGNoYXIgcHJlZml4W0VCVF9VTE9HX1BSRUZJWF9MRU5dOwotIHN0cnVjdCB0aW1ldmFsIHN0YW1wOworICBjaGFyIHBoeXNpbmRldltJRk5BTVNJWl07CisgIGNoYXIgcGh5c291dGRldltJRk5BTVNJWl07CisgIGNoYXIgcHJlZml4W0VCVF9VTE9HX1BSRUZJWF9MRU5dOworICBzdHJ1Y3QgdGltZXZhbCBzdGFtcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtYXJrOwotIHVuc2lnbmVkIGludCBob29rOwotIHNpemVfdCBkYXRhX2xlbjsKLSB1bnNpZ25lZCBjaGFyIGRhdGFbMF0gX19hdHRyaWJ1dGVfXworICB1bnNpZ25lZCBsb25nIG1hcms7CisgIHVuc2lnbmVkIGludCBob29rOworICBzaXplX3QgZGF0YV9sZW47CisgIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfdWxvZ19pbmZvKSkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gKChhbGlnbmVkIChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3Vsb2dfaW5mbykpKSk7CiB9IGVidF91bG9nX3BhY2tldF9tc2dfdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF92bGFuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3ZsYW4uaAppbmRleCBhNTBkODMzLi45YzZhNDM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3ZsYW4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3ZsYW4uaApAQCAtMjcsMTIgKzI3LDEyIEBACiAjZGVmaW5lIEVCVF9WTEFOX01BVENIICJ2bGFuIgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlYnRfdmxhbl9pbmZvIHsKLSBfX3UxNiBpZDsKLSBfX3U4IHByaW87Ci0gX19iZTE2IGVuY2FwOworICBfX3UxNiBpZDsKKyAgX191OCBwcmlvOworICBfX2JlMTYgZW5jYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYml0bWFzazsKLSBfX3U4IGludmZsYWdzOworICBfX3U4IGJpdG1hc2s7CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0YWJsZXMuaAppbmRleCAyN2Y3NjVhLi42YjIwMWEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0YWJsZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0YWJsZXMuaApAQCAtMjYsMTAgKzI2LDEwIEBACiAjZGVmaW5lIEVCVF9DSEFJTl9NQVhOQU1FTEVOIEVCVF9UQUJMRV9NQVhOQU1FTEVOCiAjZGVmaW5lIEVCVF9GVU5DVElPTl9NQVhOQU1FTEVOIEVCVF9UQUJMRV9NQVhOQU1FTEVOCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBFQlRfQUNDRVBUIC0xCi0jZGVmaW5lIEVCVF9EUk9QIC0yCi0jZGVmaW5lIEVCVF9DT05USU5VRSAtMwotI2RlZmluZSBFQlRfUkVUVVJOIC00CisjZGVmaW5lIEVCVF9BQ0NFUFQgLSAxCisjZGVmaW5lIEVCVF9EUk9QIC0gMgorI2RlZmluZSBFQlRfQ09OVElOVUUgLSAzCisjZGVmaW5lIEVCVF9SRVRVUk4gLSA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOVU1fU1RBTkRBUkRfVEFSR0VUUyA0CiAjZGVmaW5lIEVCVF9WRVJESUNUX0JJVFMgMHgwMDAwMDAwRgpAQCAtMzcsNDMgKzM3LDQzIEBACiBzdHJ1Y3QgeHRfdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlYnRfY291bnRlciB7Ci0gdWludDY0X3QgcGNudDsKLSB1aW50NjRfdCBiY250OworICB1aW50NjRfdCBwY250OworICB1aW50NjRfdCBiY250OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZWJ0X3JlcGxhY2UgewotIGNoYXIgbmFtZVtFQlRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOwotIHVuc2lnbmVkIGludCBuZW50cmllczsKKyAgY2hhciBuYW1lW0VCVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOworICB1bnNpZ25lZCBpbnQgbmVudHJpZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBlbnRyaWVzX3NpemU7Ci0gc3RydWN0IGVidF9lbnRyaWVzIF9fdXNlciAqaG9va19lbnRyeVtORl9CUl9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgZWJ0X2NvdW50ZXIgX191c2VyICpjb3VudGVyczsKKyAgdW5zaWduZWQgaW50IGVudHJpZXNfc2l6ZTsKKyAgc3RydWN0IGVidF9lbnRyaWVzIF9fdXNlciAqIGhvb2tfZW50cnlbTkZfQlJfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOworICBzdHJ1Y3QgZWJ0X2NvdW50ZXIgX191c2VyICogY291bnRlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgX191c2VyICplbnRyaWVzOworICBjaGFyIF9fdXNlciAqIGVudHJpZXM7CiB9Owogc3RydWN0IGVidF9yZXBsYWNlX2tlcm5lbCB7Ci0gY2hhciBuYW1lW0VCVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgY2hhciBuYW1lW0VCVF9UQUJMRV9NQVhOQU1FTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOwotIHVuc2lnbmVkIGludCBuZW50cmllczsKLSB1bnNpZ25lZCBpbnQgZW50cmllc19zaXplOwotIHN0cnVjdCBlYnRfZW50cmllcyAqaG9va19lbnRyeVtORl9CUl9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKKyAgdW5zaWduZWQgaW50IG5lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgZW50cmllc19zaXplOworICBzdHJ1Y3QgZWJ0X2VudHJpZXMgKiBob29rX2VudHJ5W05GX0JSX05VTUhPT0tTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgZWJ0X2NvdW50ZXIgKmNvdW50ZXJzOwotIGNoYXIgKmVudHJpZXM7CisgIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7CisgIHN0cnVjdCBlYnRfY291bnRlciAqIGNvdW50ZXJzOworICBjaGFyICogZW50cmllczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVidF9lbnRyaWVzIHsKLSB1bnNpZ25lZCBpbnQgZGlzdGluZ3Vpc2hlcjsKLSBjaGFyIG5hbWVbRUJUX0NIQUlOX01BWE5BTUVMRU5dOwotIHVuc2lnbmVkIGludCBjb3VudGVyX29mZnNldDsKKyAgdW5zaWduZWQgaW50IGRpc3Rpbmd1aXNoZXI7CisgIGNoYXIgbmFtZVtFQlRfQ0hBSU5fTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCBjb3VudGVyX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBvbGljeTsKLSB1bnNpZ25lZCBpbnQgbmVudHJpZXM7Ci0gY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18gKChhbGlnbmVkIChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOworICBpbnQgcG9saWN5OworICB1bnNpZ25lZCBpbnQgbmVudHJpZXM7CisgIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0VOVFJZX09SX0VOVFJJRVMgMHgwMQpAQCAtODIsNyArODIsNyBAQAogI2RlZmluZSBFQlRfU09VUkNFTUFDIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9ERVNUTUFDIDB4MTAKLSNkZWZpbmUgRUJUX0ZfTUFTSyAoRUJUX05PUFJPVE8gfCBFQlRfODAyXzMgfCBFQlRfU09VUkNFTUFDIHwgRUJUX0RFU1RNQUMgICB8IEVCVF9FTlRSWV9PUl9FTlRSSUVTKQorI2RlZmluZSBFQlRfRl9NQVNLIChFQlRfTk9QUk9UTyB8IEVCVF84MDJfMyB8IEVCVF9TT1VSQ0VNQUMgfCBFQlRfREVTVE1BQyB8IEVCVF9FTlRSWV9PUl9FTlRSSUVTKQogI2RlZmluZSBFQlRfSVBST1RPIDB4MDEKICNkZWZpbmUgRUJUX0lJTiAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtOTIsNzggKzkyLDg0IEBACiAjZGVmaW5lIEVCVF9JTE9HSUNBTElOIDB4MjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9JTE9HSUNBTE9VVCAweDQwCi0jZGVmaW5lIEVCVF9JTlZfTUFTSyAoRUJUX0lQUk9UTyB8IEVCVF9JSU4gfCBFQlRfSU9VVCB8IEVCVF9JTE9HSUNBTElOICAgfCBFQlRfSUxPR0lDQUxPVVQgfCBFQlRfSVNPVVJDRSB8IEVCVF9JREVTVCkKKyNkZWZpbmUgRUJUX0lOVl9NQVNLIChFQlRfSVBST1RPIHwgRUJUX0lJTiB8IEVCVF9JT1VUIHwgRUJUX0lMT0dJQ0FMSU4gfCBFQlRfSUxPR0lDQUxPVVQgfCBFQlRfSVNPVVJDRSB8IEVCVF9JREVTVCkKIHN0cnVjdCBlYnRfZW50cnlfbWF0Y2ggewotIHVuaW9uIHsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbRUJUX0ZVTkNUSU9OX01BWE5BTUVMRU5dOwotIHN0cnVjdCB4dF9tYXRjaCAqbWF0Y2g7Ci0gfSB1OwotIHVuc2lnbmVkIGludCBtYXRjaF9zaXplOworICAgIGNoYXIgbmFtZVtFQlRfRlVOQ1RJT05fTUFYTkFNRUxFTl07CisgICAgc3RydWN0IHh0X21hdGNoICogbWF0Y2g7CisgIH0gdTsKKyAgdW5zaWduZWQgaW50IG1hdGNoX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18oKGFsaWduZWQoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKIH07CiBzdHJ1Y3QgZWJ0X2VudHJ5X3dhdGNoZXIgewotIHVuaW9uIHsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbRUJUX0ZVTkNUSU9OX01BWE5BTUVMRU5dOwotIHN0cnVjdCB4dF90YXJnZXQgKndhdGNoZXI7Ci0gfSB1OwotIHVuc2lnbmVkIGludCB3YXRjaGVyX3NpemU7CisgICAgY2hhciBuYW1lW0VCVF9GVU5DVElPTl9NQVhOQU1FTEVOXTsKKyAgICBzdHJ1Y3QgeHRfdGFyZ2V0ICogd2F0Y2hlcjsKKyAgfSB1OworICB1bnNpZ25lZCBpbnQgd2F0Y2hlcl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRhdGFbMF0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CisgIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CiB9Owogc3RydWN0IGVidF9lbnRyeV90YXJnZXQgewotIHVuaW9uIHsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbRUJUX0ZVTkNUSU9OX01BWE5BTUVMRU5dOwotIHN0cnVjdCB4dF90YXJnZXQgKnRhcmdldDsKLSB9IHU7Ci0gdW5zaWduZWQgaW50IHRhcmdldF9zaXplOworICAgIGNoYXIgbmFtZVtFQlRfRlVOQ1RJT05fTUFYTkFNRUxFTl07CisgICAgc3RydWN0IHh0X3RhcmdldCAqIHRhcmdldDsKKyAgfSB1OworICB1bnNpZ25lZCBpbnQgdGFyZ2V0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18oKGFsaWduZWQoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKIH07CiAjZGVmaW5lIEVCVF9TVEFOREFSRF9UQVJHRVQgInN0YW5kYXJkIgogc3RydWN0IGVidF9zdGFuZGFyZF90YXJnZXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZWJ0X2VudHJ5X3RhcmdldCB0YXJnZXQ7Ci0gaW50IHZlcmRpY3Q7CisgIHN0cnVjdCBlYnRfZW50cnlfdGFyZ2V0IHRhcmdldDsKKyAgaW50IHZlcmRpY3Q7CiB9Owogc3RydWN0IGVidF9lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBiaXRtYXNrOwotIHVuc2lnbmVkIGludCBpbnZmbGFnczsKLSBfX2JlMTYgZXRocHJvdG87Ci0gY2hhciBpbltJRk5BTVNJWl07CisgIHVuc2lnbmVkIGludCBiaXRtYXNrOworICB1bnNpZ25lZCBpbnQgaW52ZmxhZ3M7CisgIF9fYmUxNiBldGhwcm90bzsKKyAgY2hhciBpbltJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbG9naWNhbF9pbltJRk5BTVNJWl07Ci0gY2hhciBvdXRbSUZOQU1TSVpdOwotIGNoYXIgbG9naWNhbF9vdXRbSUZOQU1TSVpdOwotIHVuc2lnbmVkIGNoYXIgc291cmNlbWFjW0VUSF9BTEVOXTsKKyAgY2hhciBsb2dpY2FsX2luW0lGTkFNU0laXTsKKyAgY2hhciBvdXRbSUZOQU1TSVpdOworICBjaGFyIGxvZ2ljYWxfb3V0W0lGTkFNU0laXTsKKyAgdW5zaWduZWQgY2hhciBzb3VyY2VtYWNbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHNvdXJjZW1za1tFVEhfQUxFTl07Ci0gdW5zaWduZWQgY2hhciBkZXN0bWFjW0VUSF9BTEVOXTsKLSB1bnNpZ25lZCBjaGFyIGRlc3Rtc2tbRVRIX0FMRU5dOwotIHVuc2lnbmVkIGludCB3YXRjaGVyc19vZmZzZXQ7CisgIHVuc2lnbmVkIGNoYXIgc291cmNlbXNrW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBkZXN0bWFjW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBkZXN0bXNrW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgaW50IHdhdGNoZXJzX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRhcmdldF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IG5leHRfb2Zmc2V0OwotIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CisgIHVuc2lnbmVkIGludCB0YXJnZXRfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgbmV4dF9vZmZzZXQ7CisgIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9CQVNFX0NUTCAxMjgKICNkZWZpbmUgRUJUX1NPX1NFVF9FTlRSSUVTIChFQlRfQkFTRV9DVEwpCi0jZGVmaW5lIEVCVF9TT19TRVRfQ09VTlRFUlMgKEVCVF9TT19TRVRfRU5UUklFUysxKQotI2RlZmluZSBFQlRfU09fU0VUX01BWCAoRUJUX1NPX1NFVF9DT1VOVEVSUysxKQorI2RlZmluZSBFQlRfU09fU0VUX0NPVU5URVJTIChFQlRfU09fU0VUX0VOVFJJRVMgKyAxKQorI2RlZmluZSBFQlRfU09fU0VUX01BWCAoRUJUX1NPX1NFVF9DT1VOVEVSUyArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfU09fR0VUX0lORk8gKEVCVF9CQVNFX0NUTCkKLSNkZWZpbmUgRUJUX1NPX0dFVF9FTlRSSUVTIChFQlRfU09fR0VUX0lORk8rMSkKLSNkZWZpbmUgRUJUX1NPX0dFVF9JTklUX0lORk8gKEVCVF9TT19HRVRfRU5UUklFUysxKQotI2RlZmluZSBFQlRfU09fR0VUX0lOSVRfRU5UUklFUyAoRUJUX1NPX0dFVF9JTklUX0lORk8rMSkKKyNkZWZpbmUgRUJUX1NPX0dFVF9FTlRSSUVTIChFQlRfU09fR0VUX0lORk8gKyAxKQorI2RlZmluZSBFQlRfU09fR0VUX0lOSVRfSU5GTyAoRUJUX1NPX0dFVF9FTlRSSUVTICsgMSkKKyNkZWZpbmUgRUJUX1NPX0dFVF9JTklUX0VOVFJJRVMgKEVCVF9TT19HRVRfSU5JVF9JTkZPICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVCVF9TT19HRVRfTUFYIChFQlRfU09fR0VUX0lOSVRfRU5UUklFUysxKQotI2RlZmluZSBFQlRfTUFUQ0hfSVRFUkFURShlLCBmbiwgYXJncy4uLikgICh7ICAgdW5zaWduZWQgaW50IF9faTsgICBpbnQgX19yZXQgPSAwOyAgIHN0cnVjdCBlYnRfZW50cnlfbWF0Y2ggKl9fbWF0Y2g7ICAgICBmb3IgKF9faSA9IHNpemVvZihzdHJ1Y3QgZWJ0X2VudHJ5KTsgICBfX2kgPCAoZSktPndhdGNoZXJzX29mZnNldDsgICBfX2kgKz0gX19tYXRjaC0+bWF0Y2hfc2l6ZSArICAgc2l6ZW9mKHN0cnVjdCBlYnRfZW50cnlfbWF0Y2gpKSB7ICAgX19tYXRjaCA9ICh2b2lkICopKGUpICsgX19pOyAgICAgX19yZXQgPSBmbihfX21hdGNoICwgIyMgYXJncyk7ICAgaWYgKF9fcmV0ICE9IDApICAgYnJlYWs7ICAgfSAgIGlmIChfX3JldCA9PSAwKSB7ICAgaWYgKF9faSAhPSAoZSktPndhdGNoZXJzX29mZnNldCkgICBfX3JldCA9IC1FSU5WQUw7ICAgfSAgIF9fcmV0OyAgfSkKLSNkZWZpbmUgRUJUX1dBVENIRVJfSVRFUkFURShlLCBmbiwgYXJncy4uLikgICh7ICAgdW5zaWduZWQgaW50IF9faTsgICBpbnQgX19yZXQgPSAwOyAgIHN0cnVjdCBlYnRfZW50cnlfd2F0Y2hlciAqX193YXRjaGVyOyAgICAgZm9yIChfX2kgPSBlLT53YXRjaGVyc19vZmZzZXQ7ICAgX19pIDwgKGUpLT50YXJnZXRfb2Zmc2V0OyAgIF9faSArPSBfX3dhdGNoZXItPndhdGNoZXJfc2l6ZSArICAgc2l6ZW9mKHN0cnVjdCBlYnRfZW50cnlfd2F0Y2hlcikpIHsgICBfX3dhdGNoZXIgPSAodm9pZCAqKShlKSArIF9faTsgICAgIF9fcmV0ID0gZm4oX193YXRjaGVyICwgIyMgYXJncyk7ICAgaWYgKF9fcmV0ICE9IDApICAgYnJlYWs7ICAgfSAgIGlmIChfX3JldCA9PSAwKSB7ICAgaWYgKF9faSAhPSAoZSktPnRhcmdldF9vZmZzZXQpICAgX19yZXQgPSAtRUlOVkFMOyAgIH0gICBfX3JldDsgIH0pCi0jZGVmaW5lIEVCVF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsIHNpemUsIGZuLCBhcmdzLi4uKSAgKHsgICB1bnNpZ25lZCBpbnQgX19pOyAgIGludCBfX3JldCA9IDA7ICAgc3RydWN0IGVidF9lbnRyeSAqX19lbnRyeTsgICAgIGZvciAoX19pID0gMDsgX19pIDwgKHNpemUpOykgeyAgIF9fZW50cnkgPSAodm9pZCAqKShlbnRyaWVzKSArIF9faTsgICBfX3JldCA9IGZuKF9fZW50cnkgLCAjIyBhcmdzKTsgICBpZiAoX19yZXQgIT0gMCkgICBicmVhazsgICBpZiAoX19lbnRyeS0+Yml0bWFzayAhPSAwKSAgIF9faSArPSBfX2VudHJ5LT5uZXh0X29mZnNldDsgICBlbHNlICAgX19pICs9IHNpemVvZihzdHJ1Y3QgZWJ0X2VudHJpZXMpOyAgIH0gICBpZiAoX19yZXQgPT0gMCkgeyAgIGlmIChfX2kgIT0gKHNpemUpKSAgIF9fcmV0ID0gLUVJTlZBTDsgICB9ICAgX19yZXQ7ICB9KQorI2RlZmluZSBFQlRfU09fR0VUX01BWCAoRUJUX1NPX0dFVF9JTklUX0VOVFJJRVMgKyAxKQorI2RlZmluZSBFQlRfTUFUQ0hfSVRFUkFURShlLGZuLGFyZ3MuLi4pIFwKKyh7IHVuc2lnbmVkIGludCBfX2k7IGludCBfX3JldCA9IDA7IHN0cnVjdCBlYnRfZW50cnlfbWF0Y2ggKiBfX21hdGNoOyBmb3IoX19pID0gc2l6ZW9mKHN0cnVjdCBlYnRfZW50cnkpOyBfX2kgPCAoZSktPndhdGNoZXJzX29mZnNldDsgX19pICs9IF9fbWF0Y2gtPm1hdGNoX3NpemUgKyBzaXplb2Yoc3RydWN0IGVidF9lbnRyeV9tYXRjaCkpIHsgX19tYXRjaCA9ICh2b2lkICopIChlKSArIF9faTsgX19yZXQgPSBmbihfX21hdGNoLCAjI2FyZ3MpOyBpZihfX3JldCAhPSAwKSBicmVhazsgfSBpZihfX3JldCA9PSAwKSB7IGlmKF9faSAhPSAoZSktPndhdGNoZXJzX29mZnNldCkgX19yZXQgPSAtIEVJTlZBTDsgfSBfX3JldDsgXAorfSkKKyNkZWZpbmUgRUJUX1dBVENIRVJfSVRFUkFURShlLGZuLGFyZ3MuLi4pIFwKKyh7IHVuc2lnbmVkIGludCBfX2k7IGludCBfX3JldCA9IDA7IHN0cnVjdCBlYnRfZW50cnlfd2F0Y2hlciAqIF9fd2F0Y2hlcjsgZm9yKF9faSA9IGUtPndhdGNoZXJzX29mZnNldDsgX19pIDwgKGUpLT50YXJnZXRfb2Zmc2V0OyBfX2kgKz0gX193YXRjaGVyLT53YXRjaGVyX3NpemUgKyBzaXplb2Yoc3RydWN0IGVidF9lbnRyeV93YXRjaGVyKSkgeyBfX3dhdGNoZXIgPSAodm9pZCAqKSAoZSkgKyBfX2k7IF9fcmV0ID0gZm4oX193YXRjaGVyLCAjI2FyZ3MpOyBpZihfX3JldCAhPSAwKSBicmVhazsgfSBpZihfX3JldCA9PSAwKSB7IGlmKF9faSAhPSAoZSktPnRhcmdldF9vZmZzZXQpIF9fcmV0ID0gLSBFSU5WQUw7IH0gX19yZXQ7IFwKK30pCisjZGVmaW5lIEVCVF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsc2l6ZSxmbixhcmdzLi4uKSBcCisoeyB1bnNpZ25lZCBpbnQgX19pOyBpbnQgX19yZXQgPSAwOyBzdHJ1Y3QgZWJ0X2VudHJ5ICogX19lbnRyeTsgZm9yKF9faSA9IDA7IF9faSA8IChzaXplKTspIHsgX19lbnRyeSA9ICh2b2lkICopIChlbnRyaWVzKSArIF9faTsgX19yZXQgPSBmbihfX2VudHJ5LCAjI2FyZ3MpOyBpZihfX3JldCAhPSAwKSBicmVhazsgaWYoX19lbnRyeS0+Yml0bWFzayAhPSAwKSBfX2kgKz0gX19lbnRyeS0+bmV4dF9vZmZzZXQ7IGVsc2UgX19pICs9IHNpemVvZihzdHJ1Y3QgZWJ0X2VudHJpZXMpOyB9IGlmKF9fcmV0ID09IDApIHsgaWYoX19pICE9IChzaXplKSkgX19yZXQgPSAtIEVJTlZBTDsgfSBfX3JldDsgXAorfSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2RlY25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfZGVjbmV0LmgKaW5kZXggOTU1MmRkNS4uZDVmMmZkNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfZGVjbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfZGVjbmV0LmgKQEAgLTM3LDM0ICszNywzNCBAQAogI2RlZmluZSBORl9ETl9OVU1IT09LUyA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZl9kbl9ob29rX3ByaW9yaXRpZXMgewotIE5GX0ROX1BSSV9GSVJTVCA9IElOVF9NSU4sCi0gTkZfRE5fUFJJX0NPTk5UUkFDSyA9IC0yMDAsCi0gTkZfRE5fUFJJX01BTkdMRSA9IC0xNTAsCisgIE5GX0ROX1BSSV9GSVJTVCA9IElOVF9NSU4sCisgIE5GX0ROX1BSSV9DT05OVFJBQ0sgPSAtIDIwMCwKKyAgTkZfRE5fUFJJX01BTkdMRSA9IC0gMTUwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9ETl9QUklfTkFUX0RTVCA9IC0xMDAsCi0gTkZfRE5fUFJJX0ZJTFRFUiA9IDAsCi0gTkZfRE5fUFJJX05BVF9TUkMgPSAxMDAsCi0gTkZfRE5fUFJJX0ROUlRNU0cgPSAyMDAsCisgIE5GX0ROX1BSSV9OQVRfRFNUID0gLSAxMDAsCisgIE5GX0ROX1BSSV9GSUxURVIgPSAwLAorICBORl9ETl9QUklfTkFUX1NSQyA9IDEwMCwKKyAgTkZfRE5fUFJJX0ROUlRNU0cgPSAyMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0ROX1BSSV9MQVNUID0gSU5UX01BWCwKKyAgTkZfRE5fUFJJX0xBU1QgPSBJTlRfTUFYLAogfTsKIHN0cnVjdCBuZl9kbl9ydG1zZyB7Ci0gaW50IG5mZG5faWZpbmRleDsKKyAgaW50IG5mZG5faWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBORkROX1JUTVNHKHIpICgodW5zaWduZWQgY2hhciAqKShyKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgbmZfZG5fcnRtc2cpKSkKKyNkZWZpbmUgTkZETl9SVE1TRyhyKSAoKHVuc2lnbmVkIGNoYXIgKikgKHIpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBuZl9kbl9ydG1zZykpKQogI2RlZmluZSBETlJNR19MMV9HUk9VUCAweDAxCiAjZGVmaW5lIEROUk1HX0wyX0dST1VQIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBETlJOR19OTEdSUF9OT05FLAorICBETlJOR19OTEdSUF9OT05FLAogI2RlZmluZSBETlJOR19OTEdSUF9OT05FIEROUk5HX05MR1JQX05PTkUKLSBETlJOR19OTEdSUF9MMSwKKyAgRE5STkdfTkxHUlBfTDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETlJOR19OTEdSUF9MMSBETlJOR19OTEdSUF9MMQotIEROUk5HX05MR1JQX0wyLAorICBETlJOR19OTEdSUF9MMiwKICNkZWZpbmUgRE5STkdfTkxHUlBfTDIgRE5STkdfTkxHUlBfTDIKLSBfX0ROUk5HX05MR1JQX01BWAorICBfX0ROUk5HX05MR1JQX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEROUk5HX05MR1JQX01BWCAoX19ETlJOR19OTEdSUF9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC5oCmluZGV4IGFhMWQ3M2QuLjI4MmE1NGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0LmgKQEAgLTQ0LDI0ICs0NCwyNCBAQAogI2RlZmluZSBORl9JUF9QT1NUX1JPVVRJTkcgNAogI2RlZmluZSBORl9JUF9OVU1IT09LUyA1CiBlbnVtIG5mX2lwX2hvb2tfcHJpb3JpdGllcyB7Ci0gTkZfSVBfUFJJX0ZJUlNUID0gSU5UX01JTiwKKyAgTkZfSVBfUFJJX0ZJUlNUID0gSU5UX01JTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfSVBfUFJJX0NPTk5UUkFDS19ERUZSQUcgPSAtNDAwLAotIE5GX0lQX1BSSV9SQVcgPSAtMzAwLAotIE5GX0lQX1BSSV9TRUxJTlVYX0ZJUlNUID0gLTIyNSwKLSBORl9JUF9QUklfQ09OTlRSQUNLID0gLTIwMCwKKyAgTkZfSVBfUFJJX0NPTk5UUkFDS19ERUZSQUcgPSAtIDQwMCwKKyAgTkZfSVBfUFJJX1JBVyA9IC0gMzAwLAorICBORl9JUF9QUklfU0VMSU5VWF9GSVJTVCA9IC0gMjI1LAorICBORl9JUF9QUklfQ09OTlRSQUNLID0gLSAyMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQX1BSSV9NQU5HTEUgPSAtMTUwLAotIE5GX0lQX1BSSV9OQVRfRFNUID0gLTEwMCwKLSBORl9JUF9QUklfRklMVEVSID0gMCwKLSBORl9JUF9QUklfU0VDVVJJVFkgPSA1MCwKKyAgTkZfSVBfUFJJX01BTkdMRSA9IC0gMTUwLAorICBORl9JUF9QUklfTkFUX0RTVCA9IC0gMTAwLAorICBORl9JUF9QUklfRklMVEVSID0gMCwKKyAgTkZfSVBfUFJJX1NFQ1VSSVRZID0gNTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQX1BSSV9OQVRfU1JDID0gMTAwLAotIE5GX0lQX1BSSV9TRUxJTlVYX0xBU1QgPSAyMjUsCi0gTkZfSVBfUFJJX0NPTk5UUkFDS19IRUxQRVIgPSAzMDAsCi0gTkZfSVBfUFJJX0NPTk5UUkFDS19DT05GSVJNID0gSU5UX01BWCwKKyAgTkZfSVBfUFJJX05BVF9TUkMgPSAxMDAsCisgIE5GX0lQX1BSSV9TRUxJTlVYX0xBU1QgPSAyMjUsCisgIE5GX0lQX1BSSV9DT05OVFJBQ0tfSEVMUEVSID0gMzAwLAorICBORl9JUF9QUklfQ09OTlRSQUNLX0NPTkZJUk0gPSBJTlRfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9JUF9QUklfTEFTVCA9IElOVF9NQVgsCisgIE5GX0lQX1BSSV9MQVNUID0gSU5UX01BWCwKIH07CiAjZGVmaW5lIFNPX09SSUdJTkFMX0RTVCA4MAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwX3RhYmxlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcF90YWJsZXMuaAppbmRleCAxMzJiMGFkLi4wNDg5NmM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwX3RhYmxlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXBfdGFibGVzLmgKQEAgLTU3LDE4ICs1NywxOCBAQAogI2RlZmluZSBJUFRfU1RBTkRBUkRfVEFSR0VUIFhUX1NUQU5EQVJEX1RBUkdFVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUX0VSUk9SX1RBUkdFVCBYVF9FUlJPUl9UQVJHRVQKLSNkZWZpbmUgSVBUX01BVENIX0lURVJBVEUoZSwgZm4sIGFyZ3MuLi4pICAgWFRfTUFUQ0hfSVRFUkFURShzdHJ1Y3QgaXB0X2VudHJ5LCBlLCBmbiwgIyMgYXJncykKLSNkZWZpbmUgSVBUX0VOVFJZX0lURVJBVEUoZW50cmllcywgc2l6ZSwgZm4sIGFyZ3MuLi4pICAgWFRfRU5UUllfSVRFUkFURShzdHJ1Y3QgaXB0X2VudHJ5LCBlbnRyaWVzLCBzaXplLCBmbiwgIyMgYXJncykKKyNkZWZpbmUgSVBUX01BVENIX0lURVJBVEUoZSxmbixhcmdzLi4uKSBYVF9NQVRDSF9JVEVSQVRFKHN0cnVjdCBpcHRfZW50cnksIGUsIGZuLCAjI2FyZ3MpCisjZGVmaW5lIElQVF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsc2l6ZSxmbixhcmdzLi4uKSBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBpcHRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjI2FyZ3MpCiBzdHJ1Y3QgaXB0X2lwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgc3JjLCBkc3Q7Ci0gc3RydWN0IGluX2FkZHIgc21zaywgZG1zazsKLSBjaGFyIGluaWZhY2VbSUZOQU1TSVpdLCBvdXRpZmFjZVtJRk5BTVNJWl07Ci0gdW5zaWduZWQgY2hhciBpbmlmYWNlX21hc2tbSUZOQU1TSVpdLCBvdXRpZmFjZV9tYXNrW0lGTkFNU0laXTsKKyAgc3RydWN0IGluX2FkZHIgc3JjLCBkc3Q7CisgIHN0cnVjdCBpbl9hZGRyIHNtc2ssIGRtc2s7CisgIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKKyAgdW5zaWduZWQgY2hhciBpbmlmYWNlX21hc2tbSUZOQU1TSVpdLCBvdXRpZmFjZV9tYXNrW0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcHJvdG87Ci0gX191OCBmbGFnczsKLSBfX3U4IGludmZsYWdzOworICBfX3UxNiBwcm90bzsKKyAgX191OCBmbGFnczsKKyAgX191OCBpbnZmbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFRfRl9GUkFHIDB4MDEKQEAgLTg2LDE0ICs4NiwxNCBAQAogI2RlZmluZSBJUFRfSU5WX01BU0sgMHg3Rgogc3RydWN0IGlwdF9lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpcHRfaXAgaXA7Ci0gdW5zaWduZWQgaW50IG5mY2FjaGU7Ci0gX191MTYgdGFyZ2V0X29mZnNldDsKLSBfX3UxNiBuZXh0X29mZnNldDsKKyAgc3RydWN0IGlwdF9pcCBpcDsKKyAgdW5zaWduZWQgaW50IG5mY2FjaGU7CisgIF9fdTE2IHRhcmdldF9vZmZzZXQ7CisgIF9fdTE2IG5leHRfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY29tZWZyb207Ci0gc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOwotIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CisgIHVuc2lnbmVkIGludCBjb21lZnJvbTsKKyAgc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOworICB1bnNpZ25lZCBjaGFyIGVsZW1zWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVF9CQVNFX0NUTCA2NApAQCAtMTA4LDQ3ICsxMDgsNDQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVF9TT19HRVRfTUFYIElQVF9TT19HRVRfUkVWSVNJT05fVEFSR0VUCiBzdHJ1Y3QgaXB0X2ljbXAgewotIF9fdTggdHlwZTsKLSBfX3U4IGNvZGVbMl07CisgIF9fdTggdHlwZTsKKyAgX191OCBjb2RlWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGludmZsYWdzOworICBfX3U4IGludmZsYWdzOwogfTsKICNkZWZpbmUgSVBUX0lDTVBfSU5WIDB4MDEKIHN0cnVjdCBpcHRfZ2V0aW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKLSB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7Ci0gdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfSU5FVF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IHVuZGVyZmxvd1tORl9JTkVUX05VTUhPT0tTXTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CisgIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7Ci0gdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKKyAgdW5zaWduZWQgaW50IHNpemU7CiB9Owogc3RydWN0IGlwdF9yZXBsYWNlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKLSB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7Ci0gdW5zaWduZWQgaW50IHNpemU7CisgIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOworICB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7CisgIHVuc2lnbmVkIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9JTkVUX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOwotIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7Ci0gc3RydWN0IHh0X2NvdW50ZXJzIF9fdXNlciAqY291bnRlcnM7CisgIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOworICBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICogY291bnRlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpcHRfZW50cnkgZW50cmllc1swXTsKKyAgc3RydWN0IGlwdF9lbnRyeSBlbnRyaWVzWzBdOwogfTsKIHN0cnVjdCBpcHRfZ2V0X2VudHJpZXMgewotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSBzdHJ1Y3QgaXB0X2VudHJ5IGVudHJ5dGFibGVbMF07CisgIHVuc2lnbmVkIGludCBzaXplOworICBzdHJ1Y3QgaXB0X2VudHJ5IGVudHJ5dGFibGVbMF07CiB9Owotc3RhdGljIF9faW5saW5lX18gc3RydWN0IHh0X2VudHJ5X3RhcmdldCAqCitzdGF0aWMgX19pbmxpbmVfXyBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0ICogaXB0X2dldF90YXJnZXQoc3RydWN0IGlwdF9lbnRyeSAqIGUpIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1pcHRfZ2V0X3RhcmdldChzdHJ1Y3QgaXB0X2VudHJ5ICplKQotewotIHJldHVybiAodm9pZCAqKWUgKyBlLT50YXJnZXRfb2Zmc2V0OworICByZXR1cm4odm9pZCAqKSBlICsgZS0+dGFyZ2V0X29mZnNldDsKIH0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0NMVVNURVJJUC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfQ0xVU1RFUklQLmgKaW5kZXggOTQ2NDU0NS4uNjFmNzJhOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfQ0xVU1RFUklQLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfQ0xVU1RFUklQLmgKQEAgLTIyLDkgKzIyLDkgQEAKICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY2x1c3RlcmlwX2hhc2htb2RlIHsKLSBDTFVTVEVSSVBfSEFTSE1PREVfU0lQID0gMCwKLSBDTFVTVEVSSVBfSEFTSE1PREVfU0lQX1NQVCwKLSBDTFVTVEVSSVBfSEFTSE1PREVfU0lQX1NQVF9EUFQsCisgIENMVVNURVJJUF9IQVNITU9ERV9TSVAgPSAwLAorICBDTFVTVEVSSVBfSEFTSE1PREVfU0lQX1NQVCwKKyAgQ0xVU1RFUklQX0hBU0hNT0RFX1NJUF9TUFRfRFBULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENMVVNURVJJUF9IQVNITU9ERV9NQVggQ0xVU1RFUklQX0hBU0hNT0RFX1NJUF9TUFRfRFBUCkBAIC0zMywxNiArMzMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2x1c3RlcmlwX2NvbmZpZzsKIHN0cnVjdCBpcHRfY2x1c3RlcmlwX3RndF9pbmZvIHsKLSBfX3UzMiBmbGFnczsKLSBfX3U4IGNsdXN0ZXJtYWNbRVRIX0FMRU5dOworICBfX3UzMiBmbGFnczsKKyAgX191OCBjbHVzdGVybWFjW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbnVtX3RvdGFsX25vZGVzOwotIF9fdTE2IG51bV9sb2NhbF9ub2RlczsKLSBfX3UxNiBsb2NhbF9ub2Rlc1tDTFVTVEVSSVBfTUFYX05PREVTXTsKLSBfX3UzMiBoYXNoX21vZGU7CisgIF9fdTE2IG51bV90b3RhbF9ub2RlczsKKyAgX191MTYgbnVtX2xvY2FsX25vZGVzOworICBfX3UxNiBsb2NhbF9ub2Rlc1tDTFVTVEVSSVBfTUFYX05PREVTXTsKKyAgX191MzIgaGFzaF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYXNoX2luaXR2YWw7Ci0gc3RydWN0IGNsdXN0ZXJpcF9jb25maWcgKmNvbmZpZzsKKyAgX191MzIgaGFzaF9pbml0dmFsOworICBzdHJ1Y3QgY2x1c3RlcmlwX2NvbmZpZyAqIGNvbmZpZzsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9FQ04uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0VDTi5oCmluZGV4IGRlZmY3MzIuLjk1ZGZkOTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0VDTi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0VDTi5oCkBAIC0yOCwxNCArMjgsMTQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVF9FQ05fT1BfTUFTSyAweGNlCiBzdHJ1Y3QgaXB0X0VDTl9pbmZvIHsKLSBfX3U4IG9wZXJhdGlvbjsKLSBfX3U4IGlwX2VjdDsKKyAgX191OCBvcGVyYXRpb247CisgIF9fdTggaXBfZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX3U4IGVjZToxLCBjd3I6MTsKLSB9IHRjcDsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGVjZSA6IDEsIGN3ciA6IDE7CisgICAgfSB0Y3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gcHJvdG87CisgIH0gcHJvdG87CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9MT0cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0xPRy5oCmluZGV4IDBlMDE2YmIuLmVkMDIxZWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0xPRy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0xPRy5oCkBAIC0yOSwxMCArMjksMTAgQEAKICNkZWZpbmUgSVBUX0xPR19NQUNERUNPREUgMHgyMAogI2RlZmluZSBJUFRfTE9HX01BU0sgMHgyZgogc3RydWN0IGlwdF9sb2dfaW5mbyB7Ci0gdW5zaWduZWQgY2hhciBsZXZlbDsKKyAgdW5zaWduZWQgY2hhciBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBsb2dmbGFnczsKLSBjaGFyIHByZWZpeFszMF07CisgIHVuc2lnbmVkIGNoYXIgbG9nZmxhZ3M7CisgIGNoYXIgcHJlZml4WzMwXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9SRUpFQ1QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1JFSkVDVC5oCmluZGV4IGQxMzNiNzEuLjhlMTU2NDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1JFSkVDVC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1JFSkVDVC5oCkBAIC0xOSwyMSArMTksMjEgQEAKICNpZm5kZWYgX0lQVF9SRUpFQ1RfSAogI2RlZmluZSBfSVBUX1JFSkVDVF9ICiBlbnVtIGlwdF9yZWplY3Rfd2l0aCB7Ci0gSVBUX0lDTVBfTkVUX1VOUkVBQ0hBQkxFLAorICBJUFRfSUNNUF9ORVRfVU5SRUFDSEFCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVF9JQ01QX0hPU1RfVU5SRUFDSEFCTEUsCi0gSVBUX0lDTVBfUFJPVF9VTlJFQUNIQUJMRSwKLSBJUFRfSUNNUF9QT1JUX1VOUkVBQ0hBQkxFLAotIElQVF9JQ01QX0VDSE9SRVBMWSwKKyAgSVBUX0lDTVBfSE9TVF9VTlJFQUNIQUJMRSwKKyAgSVBUX0lDTVBfUFJPVF9VTlJFQUNIQUJMRSwKKyAgSVBUX0lDTVBfUE9SVF9VTlJFQUNIQUJMRSwKKyAgSVBUX0lDTVBfRUNIT1JFUExZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFRfSUNNUF9ORVRfUFJPSElCSVRFRCwKLSBJUFRfSUNNUF9IT1NUX1BST0hJQklURUQsCi0gSVBUX1RDUF9SRVNFVCwKLSBJUFRfSUNNUF9BRE1JTl9QUk9ISUJJVEVECisgIElQVF9JQ01QX05FVF9QUk9ISUJJVEVELAorICBJUFRfSUNNUF9IT1NUX1BST0hJQklURUQsCisgIElQVF9UQ1BfUkVTRVQsCisgIElQVF9JQ01QX0FETUlOX1BST0hJQklURUQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlwdF9yZWplY3RfaW5mbyB7Ci0gZW51bSBpcHRfcmVqZWN0X3dpdGggd2l0aDsKKyAgZW51bSBpcHRfcmVqZWN0X3dpdGggd2l0aDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9UVEwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1RUTC5oCmluZGV4IGNhMjc2OGIuLjk1MmM5MGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1RUTC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1RUTC5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVF9UVExfU0VUID0gMCwKLSBJUFRfVFRMX0lOQywKLSBJUFRfVFRMX0RFQworICBJUFRfVFRMX1NFVCA9IDAsCisgIElQVF9UVExfSU5DLAorICBJUFRfVFRMX0RFQwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVF9UVExfTUFYTU9ERSBJUFRfVFRMX0RFQwogc3RydWN0IGlwdF9UVExfaW5mbyB7Ci0gX191OCBtb2RlOwotIF9fdTggdHRsOworICBfX3U4IG1vZGU7CisgIF9fdTggdHRsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1VMT0cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1VMT0cuaAppbmRleCA4ZThmNTcyLi5lZTZhNTU3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9VTE9HLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVUxPRy5oCkBAIC0yOSwyNyArMjksMjcgQEAKICNkZWZpbmUgVUxPR19QUkVGSVhfTEVOIDMyCiAjZGVmaW5lIFVMT0dfTUFYX1FMRU4gNTAKIHN0cnVjdCBpcHRfdWxvZ19pbmZvIHsKLSB1bnNpZ25lZCBpbnQgbmxfZ3JvdXA7CisgIHVuc2lnbmVkIGludCBubF9ncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGNvcHlfcmFuZ2U7Ci0gc2l6ZV90IHF0aHJlc2hvbGQ7Ci0gY2hhciBwcmVmaXhbVUxPR19QUkVGSVhfTEVOXTsKKyAgc2l6ZV90IGNvcHlfcmFuZ2U7CisgIHNpemVfdCBxdGhyZXNob2xkOworICBjaGFyIHByZWZpeFtVTE9HX1BSRUZJWF9MRU5dOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB1bG9nX3BhY2tldF9tc2cgewotIHVuc2lnbmVkIGxvbmcgbWFyazsKLSBsb25nIHRpbWVzdGFtcF9zZWM7Ci0gbG9uZyB0aW1lc3RhbXBfdXNlYzsKKyAgdW5zaWduZWQgbG9uZyBtYXJrOworICBsb25nIHRpbWVzdGFtcF9zZWM7CisgIGxvbmcgdGltZXN0YW1wX3VzZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBob29rOwotIGNoYXIgaW5kZXZfbmFtZVtJRk5BTVNJWl07Ci0gY2hhciBvdXRkZXZfbmFtZVtJRk5BTVNJWl07Ci0gc2l6ZV90IGRhdGFfbGVuOworICB1bnNpZ25lZCBpbnQgaG9vazsKKyAgY2hhciBpbmRldl9uYW1lW0lGTkFNU0laXTsKKyAgY2hhciBvdXRkZXZfbmFtZVtJRk5BTVNJWl07CisgIHNpemVfdCBkYXRhX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwcmVmaXhbVUxPR19QUkVGSVhfTEVOXTsKLSB1bnNpZ25lZCBjaGFyIG1hY19sZW47Ci0gdW5zaWduZWQgY2hhciBtYWNbVUxPR19NQUNfTEVOXTsKLSB1bnNpZ25lZCBjaGFyIHBheWxvYWRbMF07CisgIGNoYXIgcHJlZml4W1VMT0dfUFJFRklYX0xFTl07CisgIHVuc2lnbmVkIGNoYXIgbWFjX2xlbjsKKyAgdW5zaWduZWQgY2hhciBtYWNbVUxPR19NQUNfTEVOXTsKKyAgdW5zaWduZWQgY2hhciBwYXlsb2FkWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gdWxvZ19wYWNrZXRfbXNnX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X2FoLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9haC5oCmluZGV4IDA0ODVjNmQuLmI4YjhiMzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X2FoLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfYWguaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaXB0X2FoIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3Bpc1syXTsKLSBfX3U4IGludmZsYWdzOworICBfX3UzMiBzcGlzWzJdOworICBfX3U4IGludmZsYWdzOwogfTsKICNkZWZpbmUgSVBUX0FIX0lOVl9TUEkgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X2Vjbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfZWNuLmgKaW5kZXggODViZGQwMS4uMjBlNzU3ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfZWNuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfZWNuLmgKQEAgLTIyLDEyICsyMiwxMiBAQAogI2RlZmluZSBpcHRfZWNuX2luZm8geHRfZWNuX2luZm8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFRfRUNOX0lQX01BU0sgPSBYVF9FQ05fSVBfTUFTSywKLSBJUFRfRUNOX09QX01BVENIX0lQID0gWFRfRUNOX09QX01BVENIX0lQLAotIElQVF9FQ05fT1BfTUFUQ0hfRUNFID0gWFRfRUNOX09QX01BVENIX0VDRSwKKyAgSVBUX0VDTl9JUF9NQVNLID0gWFRfRUNOX0lQX01BU0ssCisgIElQVF9FQ05fT1BfTUFUQ0hfSVAgPSBYVF9FQ05fT1BfTUFUQ0hfSVAsCisgIElQVF9FQ05fT1BfTUFUQ0hfRUNFID0gWFRfRUNOX09QX01BVENIX0VDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBUX0VDTl9PUF9NQVRDSF9DV1IgPSBYVF9FQ05fT1BfTUFUQ0hfQ1dSLAotIElQVF9FQ05fT1BfTUFUQ0hfTUFTSyA9IFhUX0VDTl9PUF9NQVRDSF9NQVNLLAorICBJUFRfRUNOX09QX01BVENIX0NXUiA9IFhUX0VDTl9PUF9NQVRDSF9DV1IsCisgIElQVF9FQ05fT1BfTUFUQ0hfTUFTSyA9IFhUX0VDTl9PUF9NQVRDSF9NQVNLLAogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X3R0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfdHRsLmgKaW5kZXggYzU2N2Q1My4uMTUxOTViYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfdHRsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfdHRsLmgKQEAgLTIxLDE1ICsyMSwxNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBUX1RUTF9FUSA9IDAsCi0gSVBUX1RUTF9ORSwKLSBJUFRfVFRMX0xULAotIElQVF9UVExfR1QsCisgIElQVF9UVExfRVEgPSAwLAorICBJUFRfVFRMX05FLAorICBJUFRfVFRMX0xULAorICBJUFRfVFRMX0dULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXB0X3R0bF9pbmZvIHsKLSBfX3U4IG1vZGU7Ci0gX191OCB0dGw7CisgIF9fdTggbW9kZTsKKyAgX191OCB0dGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni5oCmluZGV4IDM1MTUzNmYuLjJlMjNhYTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2LmgKQEAgLTQ0LDIyICs0NCwyMiBAQAogI2RlZmluZSBORl9JUDZfUE9TVF9ST1VUSU5HIDQKICNkZWZpbmUgTkZfSVA2X05VTUhPT0tTIDUKIGVudW0gbmZfaXA2X2hvb2tfcHJpb3JpdGllcyB7Ci0gTkZfSVA2X1BSSV9GSVJTVCA9IElOVF9NSU4sCisgIE5GX0lQNl9QUklfRklSU1QgPSBJTlRfTUlOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9JUDZfUFJJX0NPTk5UUkFDS19ERUZSQUcgPSAtNDAwLAotIE5GX0lQNl9QUklfUkFXID0gLTMwMCwKLSBORl9JUDZfUFJJX1NFTElOVVhfRklSU1QgPSAtMjI1LAotIE5GX0lQNl9QUklfQ09OTlRSQUNLID0gLTIwMCwKKyAgTkZfSVA2X1BSSV9DT05OVFJBQ0tfREVGUkFHID0gLSA0MDAsCisgIE5GX0lQNl9QUklfUkFXID0gLSAzMDAsCisgIE5GX0lQNl9QUklfU0VMSU5VWF9GSVJTVCA9IC0gMjI1LAorICBORl9JUDZfUFJJX0NPTk5UUkFDSyA9IC0gMjAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9JUDZfUFJJX01BTkdMRSA9IC0xNTAsCi0gTkZfSVA2X1BSSV9OQVRfRFNUID0gLTEwMCwKLSBORl9JUDZfUFJJX0ZJTFRFUiA9IDAsCi0gTkZfSVA2X1BSSV9TRUNVUklUWSA9IDUwLAorICBORl9JUDZfUFJJX01BTkdMRSA9IC0gMTUwLAorICBORl9JUDZfUFJJX05BVF9EU1QgPSAtIDEwMCwKKyAgTkZfSVA2X1BSSV9GSUxURVIgPSAwLAorICBORl9JUDZfUFJJX1NFQ1VSSVRZID0gNTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQNl9QUklfTkFUX1NSQyA9IDEwMCwKLSBORl9JUDZfUFJJX1NFTElOVVhfTEFTVCA9IDIyNSwKLSBORl9JUDZfUFJJX0NPTk5UUkFDS19IRUxQRVIgPSAzMDAsCi0gTkZfSVA2X1BSSV9MQVNUID0gSU5UX01BWCwKKyAgTkZfSVA2X1BSSV9OQVRfU1JDID0gMTAwLAorICBORl9JUDZfUFJJX1NFTElOVVhfTEFTVCA9IDIyNSwKKyAgTkZfSVA2X1BSSV9DT05OVFJBQ0tfSEVMUEVSID0gMzAwLAorICBORl9JUDZfUFJJX0xBU1QgPSBJTlRfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2X3RhYmxlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZfdGFibGVzLmgKaW5kZXggMWVmNjYwNC4uMzc4ODRiMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZfdGFibGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZfdGFibGVzLmgKQEAgLTU3LDE5ICs1NywxOSBAQAogI2RlZmluZSBJUDZUX1NUQU5EQVJEX1RBUkdFVCBYVF9TVEFOREFSRF9UQVJHRVQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQNlRfRVJST1JfVEFSR0VUIFhUX0VSUk9SX1RBUkdFVAotI2RlZmluZSBJUDZUX01BVENIX0lURVJBVEUoZSwgZm4sIGFyZ3MuLi4pICAgWFRfTUFUQ0hfSVRFUkFURShzdHJ1Y3QgaXA2dF9lbnRyeSwgZSwgZm4sICMjIGFyZ3MpCi0jZGVmaW5lIElQNlRfRU5UUllfSVRFUkFURShlbnRyaWVzLCBzaXplLCBmbiwgYXJncy4uLikgICBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBpcDZ0X2VudHJ5LCBlbnRyaWVzLCBzaXplLCBmbiwgIyMgYXJncykKKyNkZWZpbmUgSVA2VF9NQVRDSF9JVEVSQVRFKGUsZm4sYXJncy4uLikgWFRfTUFUQ0hfSVRFUkFURShzdHJ1Y3QgaXA2dF9lbnRyeSwgZSwgZm4sICMjYXJncykKKyNkZWZpbmUgSVA2VF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsc2l6ZSxmbixhcmdzLi4uKSBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBpcDZ0X2VudHJ5LCBlbnRyaWVzLCBzaXplLCBmbiwgIyNhcmdzKQogc3RydWN0IGlwNnRfaXA2IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluNl9hZGRyIHNyYywgZHN0OwotIHN0cnVjdCBpbjZfYWRkciBzbXNrLCBkbXNrOwotIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKLSB1bnNpZ25lZCBjaGFyIGluaWZhY2VfbWFza1tJRk5BTVNJWl0sIG91dGlmYWNlX21hc2tbSUZOQU1TSVpdOworICBzdHJ1Y3QgaW42X2FkZHIgc3JjLCBkc3Q7CisgIHN0cnVjdCBpbjZfYWRkciBzbXNrLCBkbXNrOworICBjaGFyIGluaWZhY2VbSUZOQU1TSVpdLCBvdXRpZmFjZVtJRk5BTVNJWl07CisgIHVuc2lnbmVkIGNoYXIgaW5pZmFjZV9tYXNrW0lGTkFNU0laXSwgb3V0aWZhY2VfbWFza1tJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHByb3RvOwotIF9fdTggdG9zOwotIF9fdTggZmxhZ3M7Ci0gX191OCBpbnZmbGFnczsKKyAgX191MTYgcHJvdG87CisgIF9fdTggdG9zOworICBfX3U4IGZsYWdzOworICBfX3U4IGludmZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElQNlRfRl9QUk9UTyAweDAxCkBAIC04OCwzMCArODgsMzYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQNlRfSU5WX01BU0sgMHg3Rgogc3RydWN0IGlwNnRfZW50cnkgewotIHN0cnVjdCBpcDZ0X2lwNiBpcHY2OwotIHVuc2lnbmVkIGludCBuZmNhY2hlOworICBzdHJ1Y3QgaXA2dF9pcDYgaXB2NjsKKyAgdW5zaWduZWQgaW50IG5mY2FjaGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRhcmdldF9vZmZzZXQ7Ci0gX191MTYgbmV4dF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGNvbWVmcm9tOwotIHN0cnVjdCB4dF9jb3VudGVycyBjb3VudGVyczsKKyAgX191MTYgdGFyZ2V0X29mZnNldDsKKyAgX191MTYgbmV4dF9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBjb21lZnJvbTsKKyAgc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGVsZW1zWzBdOworICB1bnNpZ25lZCBjaGFyIGVsZW1zWzBdOwogfTsKIHN0cnVjdCBpcDZ0X3N0YW5kYXJkIHsKLSBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyeTsKKyAgc3RydWN0IGlwNnRfZW50cnkgZW50cnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9zdGFuZGFyZF90YXJnZXQgdGFyZ2V0OworICBzdHJ1Y3QgeHRfc3RhbmRhcmRfdGFyZ2V0IHRhcmdldDsKIH07CiBzdHJ1Y3QgaXA2dF9lcnJvciB7Ci0gc3RydWN0IGlwNnRfZW50cnkgZW50cnk7CisgIHN0cnVjdCBpcDZ0X2VudHJ5IGVudHJ5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeHRfZXJyb3JfdGFyZ2V0IHRhcmdldDsKKyAgc3RydWN0IHh0X2Vycm9yX3RhcmdldCB0YXJnZXQ7CiB9OwotI2RlZmluZSBJUDZUX0VOVFJZX0lOSVQoX19zaXplKSAgeyAgIC50YXJnZXRfb2Zmc2V0ID0gc2l6ZW9mKHN0cnVjdCBpcDZ0X2VudHJ5KSwgICAubmV4dF9vZmZzZXQgPSAoX19zaXplKSwgIH0KLSNkZWZpbmUgSVA2VF9TVEFOREFSRF9JTklUKF9fdmVyZGljdCkgIHsgICAuZW50cnkgPSBJUDZUX0VOVFJZX0lOSVQoc2l6ZW9mKHN0cnVjdCBpcDZ0X3N0YW5kYXJkKSksICAgLnRhcmdldCA9IFhUX1RBUkdFVF9JTklUKFhUX1NUQU5EQVJEX1RBUkdFVCwgICBzaXplb2Yoc3RydWN0IHh0X3N0YW5kYXJkX3RhcmdldCkpLCAgIC50YXJnZXQudmVyZGljdCA9IC0oX192ZXJkaWN0KSAtIDEsICB9CisjZGVmaW5lIElQNlRfRU5UUllfSU5JVChfX3NpemUpIFwKK3sudGFyZ2V0X29mZnNldCA9IHNpemVvZihzdHJ1Y3QgaXA2dF9lbnRyeSksLm5leHRfb2Zmc2V0ID0gKF9fc2l6ZSksIFwKK30KKyNkZWZpbmUgSVA2VF9TVEFOREFSRF9JTklUKF9fdmVyZGljdCkgXAorey5lbnRyeSA9IElQNlRfRU5UUllfSU5JVChzaXplb2Yoc3RydWN0IGlwNnRfc3RhbmRhcmQpKSwudGFyZ2V0ID0gWFRfVEFSR0VUX0lOSVQoWFRfU1RBTkRBUkRfVEFSR0VULCBzaXplb2Yoc3RydWN0IHh0X3N0YW5kYXJkX3RhcmdldCkpLC50YXJnZXQudmVyZGljdCA9IC0gKF9fdmVyZGljdCkgLSAxLCBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUDZUX0VSUk9SX0lOSVQgIHsgICAuZW50cnkgPSBJUDZUX0VOVFJZX0lOSVQoc2l6ZW9mKHN0cnVjdCBpcDZ0X2Vycm9yKSksICAgLnRhcmdldCA9IFhUX1RBUkdFVF9JTklUKFhUX0VSUk9SX1RBUkdFVCwgICBzaXplb2Yoc3RydWN0IHh0X2Vycm9yX3RhcmdldCkpLCAgIC50YXJnZXQuZXJyb3JuYW1lID0gIkVSUk9SIiwgIH0KKyNkZWZpbmUgSVA2VF9FUlJPUl9JTklUIFwKK3suZW50cnkgPSBJUDZUX0VOVFJZX0lOSVQoc2l6ZW9mKHN0cnVjdCBpcDZ0X2Vycm9yKSksLnRhcmdldCA9IFhUX1RBUkdFVF9JTklUKFhUX0VSUk9SX1RBUkdFVCwgc2l6ZW9mKHN0cnVjdCB4dF9lcnJvcl90YXJnZXQpKSwudGFyZ2V0LmVycm9ybmFtZSA9ICJFUlJPUiIsIFwKK30KICNkZWZpbmUgSVA2VF9CQVNFX0NUTCA2NAogI2RlZmluZSBJUDZUX1NPX1NFVF9SRVBMQUNFIChJUDZUX0JBU0VfQ1RMKQogI2RlZmluZSBJUDZUX1NPX1NFVF9BRERfQ09VTlRFUlMgKElQNlRfQkFTRV9DVEwgKyAxKQpAQCAtMTI2LDQ2ICsxMzIsNDQgQEAKICNkZWZpbmUgSVA2VF9TT19PUklHSU5BTF9EU1QgODAKIHN0cnVjdCBpcDZ0X2ljbXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gX191OCBjb2RlWzJdOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggdHlwZTsKKyAgX191OCBjb2RlWzJdOworICBfX3U4IGludmZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQNlRfSUNNUF9JTlYgMHgwMQogc3RydWN0IGlwNnRfZ2V0aW5mbyB7Ci0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOwotIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfSU5FVF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOwotIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9JTkVUX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IHVuZGVyZmxvd1tORl9JTkVUX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlwNnRfcmVwbGFjZSB7Ci0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9JTkVUX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7CisgIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9JTkVUX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IHVuZGVyZmxvd1tORl9JTkVUX05VTUhPT0tTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICpjb3VudGVyczsKLSBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyaWVzWzBdOworICB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOworICBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICogY291bnRlcnM7CisgIHN0cnVjdCBpcDZ0X2VudHJ5IGVudHJpZXNbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcDZ0X2dldF9lbnRyaWVzIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHNpemU7Ci0gc3RydWN0IGlwNnRfZW50cnkgZW50cnl0YWJsZVswXTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgc3RydWN0IGlwNnRfZW50cnkgZW50cnl0YWJsZVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owotc3RhdGljIF9faW5saW5lX18gc3RydWN0IHh0X2VudHJ5X3RhcmdldCAqCi1pcDZ0X2dldF90YXJnZXQoc3RydWN0IGlwNnRfZW50cnkgKmUpCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHJldHVybiAodm9pZCAqKWUgKyBlLT50YXJnZXRfb2Zmc2V0Oworc3RhdGljIF9faW5saW5lX18gc3RydWN0IHh0X2VudHJ5X3RhcmdldCAqIGlwNnRfZ2V0X3RhcmdldChzdHJ1Y3QgaXA2dF9lbnRyeSAqIGUpIHsKKyAgcmV0dXJuKHZvaWQgKikgZSArIGUtPnRhcmdldF9vZmZzZXQ7CiB9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfSEwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ITC5oCmluZGV4IDBlZGVkMDYuLjRjM2ZiMTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ITC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ITC5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQNlRfSExfU0VUID0gMCwKLSBJUDZUX0hMX0lOQywKLSBJUDZUX0hMX0RFQworICBJUDZUX0hMX1NFVCA9IDAsCisgIElQNlRfSExfSU5DLAorICBJUDZUX0hMX0RFQwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQNlRfSExfTUFYTU9ERSBJUDZUX0hMX0RFQwogc3RydWN0IGlwNnRfSExfaW5mbyB7Ci0gX191OCBtb2RlOwotIF9fdTggaG9wX2xpbWl0OworICBfX3U4IG1vZGU7CisgIF9fdTggaG9wX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9MT0cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9MT0cuaAppbmRleCA1ODMyNzRjLi5mYTJlNDMwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfTE9HLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0xPRy5oCkBAIC0yOSwxMCArMjksMTAgQEAKICNkZWZpbmUgSVA2VF9MT0dfTUFDREVDT0RFIDB4MjAKICNkZWZpbmUgSVA2VF9MT0dfTUFTSyAweDJmCiBzdHJ1Y3QgaXA2dF9sb2dfaW5mbyB7Ci0gdW5zaWduZWQgY2hhciBsZXZlbDsKKyAgdW5zaWduZWQgY2hhciBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBsb2dmbGFnczsKLSBjaGFyIHByZWZpeFszMF07CisgIHVuc2lnbmVkIGNoYXIgbG9nZmxhZ3M7CisgIGNoYXIgcHJlZml4WzMwXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfTlBULmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfTlBULmgKaW5kZXggYjkyMmQxYy4uYmI5ZDU4MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X05QVC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9OUFQuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwNnRfbnB0X3RnaW5mbyB7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHNyY19wZng7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIGRzdF9wZng7Ci0gX191OCBzcmNfcGZ4X2xlbjsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHNyY19wZng7CisgIHVuaW9uIG5mX2luZXRfYWRkciBkc3RfcGZ4OworICBfX3U4IHNyY19wZnhfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRzdF9wZnhfbGVuOwotIF9fc3VtMTYgYWRqdXN0bWVudDsKKyAgX191OCBkc3RfcGZ4X2xlbjsKKyAgX19zdW0xNiBhZGp1c3RtZW50OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9SRUpFQ1QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9SRUpFQ1QuaAppbmRleCBjNzg0MDBkLi5hZmU1Y2Q1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfUkVKRUNULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X1JFSkVDVC5oCkBAIC0yMSwxOCArMjEsMTggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSBpcDZ0X3JlamVjdF93aXRoIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVA2VF9JQ01QNl9OT19ST1VURSwKLSBJUDZUX0lDTVA2X0FETV9QUk9ISUJJVEVELAotIElQNlRfSUNNUDZfTk9UX05FSUdIQk9VUiwKLSBJUDZUX0lDTVA2X0FERFJfVU5SRUFDSCwKKyAgSVA2VF9JQ01QNl9OT19ST1VURSwKKyAgSVA2VF9JQ01QNl9BRE1fUFJPSElCSVRFRCwKKyAgSVA2VF9JQ01QNl9OT1RfTkVJR0hCT1VSLAorICBJUDZUX0lDTVA2X0FERFJfVU5SRUFDSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVA2VF9JQ01QNl9QT1JUX1VOUkVBQ0gsCi0gSVA2VF9JQ01QNl9FQ0hPUkVQTFksCi0gSVA2VF9UQ1BfUkVTRVQKKyAgSVA2VF9JQ01QNl9QT1JUX1VOUkVBQ0gsCisgIElQNlRfSUNNUDZfRUNIT1JFUExZLAorICBJUDZUX1RDUF9SRVNFVAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXA2dF9yZWplY3RfaW5mbyB7Ci0gX191MzIgd2l0aDsKKyAgX191MzIgd2l0aDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfYWguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9haC5oCmluZGV4IDIzNGRkZTQuLjc1ODJkMDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9haC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9haC5oCkBAIC0yMSwxMCArMjEsMTAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGlwNnRfYWggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGlzWzJdOwotIF9fdTMyIGhkcmxlbjsKLSBfX3U4IGhkcnJlczsKLSBfX3U4IGludmZsYWdzOworICBfX3UzMiBzcGlzWzJdOworICBfX3UzMiBoZHJsZW47CisgIF9fdTggaGRycmVzOworICBfX3U4IGludmZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElQNlRfQUhfU1BJIDB4MDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9mcmFnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfZnJhZy5oCmluZGV4IGI0MTQ1Y2IuLmNlYjU2M2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9mcmFnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2ZyYWcuaApAQCAtMjEsMTAgKzIxLDEwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpcDZ0X2ZyYWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZHNbMl07Ci0gX191MzIgaGRybGVuOwotIF9fdTggZmxhZ3M7Ci0gX191OCBpbnZmbGFnczsKKyAgX191MzIgaWRzWzJdOworICBfX3UzMiBoZHJsZW47CisgIF9fdTggZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVA2VF9GUkFHX0lEUyAweDAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfaGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9obC5oCmluZGV4IDNjZmY2MTUuLjhhMjc5MzUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9obC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9obC5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQNlRfSExfRVEgPSAwLAotIElQNlRfSExfTkUsCi0gSVA2VF9ITF9MVCwKLSBJUDZUX0hMX0dULAorICBJUDZUX0hMX0VRID0gMCwKKyAgSVA2VF9ITF9ORSwKKyAgSVA2VF9ITF9MVCwKKyAgSVA2VF9ITF9HVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlwNnRfaGxfaW5mbyB7Ci0gX191OCBtb2RlOwotIF9fdTggaG9wX2xpbWl0OworICBfX3U4IG1vZGU7CisgIF9fdTggaG9wX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9pcHY2aGVhZGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfaXB2NmhlYWRlci5oCmluZGV4IDNkYjdjYmYuLmVjMWJhNTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9pcHY2aGVhZGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2lwdjZoZWFkZXIuaApAQCAtMjEsOSArMjEsOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaXA2dF9pcHY2aGVhZGVyX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1hdGNoZmxhZ3M7Ci0gX191OCBpbnZmbGFnczsKLSBfX3U4IG1vZGVmbGFnOworICBfX3U4IG1hdGNoZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggbW9kZWZsYWc7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFTS19IT1BPUFRTIDEyOApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X21oLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfbWguaAppbmRleCAxMGIyZWM0Li45ZmZjMTI3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfbWguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfbWguaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaXA2dF9taCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZXNbMl07Ci0gX191OCBpbnZmbGFnczsKKyAgX191OCB0eXBlc1syXTsKKyAgX191OCBpbnZmbGFnczsKIH07CiAjZGVmaW5lIElQNlRfTUhfSU5WX1RZUEUgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9vcHRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfb3B0cy5oCmluZGV4IGJkM2MzMTguLjJkOTE4MTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9vcHRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X29wdHMuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjZGVmaW5lIElQNlRfT1BUU19PUFRTTlIgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXA2dF9vcHRzIHsKLSBfX3UzMiBoZHJsZW47Ci0gX191OCBmbGFnczsKLSBfX3U4IGludmZsYWdzOworICBfX3UzMiBoZHJsZW47CisgIF9fdTggZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG9wdHNbSVA2VF9PUFRTX09QVFNOUl07Ci0gX191OCBvcHRzbnI7CisgIF9fdTE2IG9wdHNbSVA2VF9PUFRTX09QVFNOUl07CisgIF9fdTggb3B0c25yOwogfTsKICNkZWZpbmUgSVA2VF9PUFRTX0xFTiAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X3J0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfcnQuaAppbmRleCA4NmNhNDYyLi4wMzZiMjZhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfcnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfcnQuaApAQCAtMjIsMTQgKzIyLDE0IEBACiAjZGVmaW5lIElQNlRfUlRfSE9QUyAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcDZ0X3J0IHsKLSBfX3UzMiBydF90eXBlOwotIF9fdTMyIHNlZ3NsZWZ0WzJdOwotIF9fdTMyIGhkcmxlbjsKKyAgX191MzIgcnRfdHlwZTsKKyAgX191MzIgc2Vnc2xlZnRbMl07CisgIF9fdTMyIGhkcmxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKLSBfX3U4IGludmZsYWdzOwotIHN0cnVjdCBpbjZfYWRkciBhZGRyc1tJUDZUX1JUX0hPUFNdOwotIF9fdTggYWRkcm5yOworICBfX3U4IGZsYWdzOworICBfX3U4IGludmZsYWdzOworICBzdHJ1Y3QgaW42X2FkZHIgYWRkcnNbSVA2VF9SVF9IT1BTXTsKKyAgX191OCBhZGRybnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVA2VF9SVF9UWVAgMHgwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmsuaAppbmRleCBiNTU2N2IwLi5iY2FmMDIwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmsuaApAQCAtNTIsMTkgKzUyLDE5IEBACiAjZGVmaW5lIE1BWF9MSU5LUyAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9ubCB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3QgbmxfZmFtaWx5OwotIHVuc2lnbmVkIHNob3J0IG5sX3BhZDsKLSBfX3UzMiBubF9waWQ7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IG5sX2ZhbWlseTsKKyAgdW5zaWduZWQgc2hvcnQgbmxfcGFkOworICBfX3UzMiBubF9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5sX2dyb3VwczsKKyAgX191MzIgbmxfZ3JvdXBzOwogfTsKIHN0cnVjdCBubG1zZ2hkciB7Ci0gX191MzIgbmxtc2dfbGVuOworICBfX3UzMiBubG1zZ19sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG5sbXNnX3R5cGU7Ci0gX191MTYgbmxtc2dfZmxhZ3M7Ci0gX191MzIgbmxtc2dfc2VxOwotIF9fdTMyIG5sbXNnX3BpZDsKKyAgX191MTYgbmxtc2dfdHlwZTsKKyAgX191MTYgbmxtc2dfZmxhZ3M7CisgIF9fdTMyIG5sbXNnX3NlcTsKKyAgX191MzIgbmxtc2dfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5MTV9GX1JFUVVFU1QgMQpAQCAtNzcsMjIgKzc3LDIyIEBACiAjZGVmaW5lIE5MTV9GX01BVENIIDB4MjAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTE1fRl9BVE9NSUMgMHg0MDAKLSNkZWZpbmUgTkxNX0ZfRFVNUCAoTkxNX0ZfUk9PVHxOTE1fRl9NQVRDSCkKKyNkZWZpbmUgTkxNX0ZfRFVNUCAoTkxNX0ZfUk9PVCB8IE5MTV9GX01BVENIKQogI2RlZmluZSBOTE1fRl9SRVBMQUNFIDB4MTAwCiAjZGVmaW5lIE5MTV9GX0VYQ0wgMHgyMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MTV9GX0NSRUFURSAweDQwMAogI2RlZmluZSBOTE1fRl9BUFBFTkQgMHg4MDAKICNkZWZpbmUgTkxNU0dfQUxJR05UTyA0VQotI2RlZmluZSBOTE1TR19BTElHTihsZW4pICggKChsZW4pK05MTVNHX0FMSUdOVE8tMSkgJiB+KE5MTVNHX0FMSUdOVE8tMSkgKQorI2RlZmluZSBOTE1TR19BTElHTihsZW4pICgoKGxlbikgKyBOTE1TR19BTElHTlRPIC0gMSkgJiB+KE5MTVNHX0FMSUdOVE8gLSAxKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MTVNHX0hEUkxFTiAoKGludCkgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBubG1zZ2hkcikpKQogI2RlZmluZSBOTE1TR19MRU5HVEgobGVuKSAoKGxlbikgKyBOTE1TR19IRFJMRU4pCiAjZGVmaW5lIE5MTVNHX1NQQUNFKGxlbikgTkxNU0dfQUxJR04oTkxNU0dfTEVOR1RIKGxlbikpCi0jZGVmaW5lIE5MTVNHX0RBVEEobmxoKSAoKHZvaWQqKSgoKGNoYXIqKW5saCkgKyBOTE1TR19MRU5HVEgoMCkpKQorI2RlZmluZSBOTE1TR19EQVRBKG5saCkgKCh2b2lkICopICgoKGNoYXIgKikgbmxoKSArIE5MTVNHX0xFTkdUSCgwKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOTE1TR19ORVhUKG5saCxsZW4pICgobGVuKSAtPSBOTE1TR19BTElHTigobmxoKS0+bmxtc2dfbGVuKSwgICAoc3RydWN0IG5sbXNnaGRyKikoKChjaGFyKikobmxoKSkgKyBOTE1TR19BTElHTigobmxoKS0+bmxtc2dfbGVuKSkpCi0jZGVmaW5lIE5MTVNHX09LKG5saCxsZW4pICgobGVuKSA+PSAoaW50KXNpemVvZihzdHJ1Y3Qgbmxtc2doZHIpICYmICAgKG5saCktPm5sbXNnX2xlbiA+PSBzaXplb2Yoc3RydWN0IG5sbXNnaGRyKSAmJiAgIChubGgpLT5ubG1zZ19sZW4gPD0gKGxlbikpCisjZGVmaW5lIE5MTVNHX05FWFQobmxoLGxlbikgKChsZW4pIC09IE5MTVNHX0FMSUdOKChubGgpLT5ubG1zZ19sZW4pLCAoc3RydWN0IG5sbXNnaGRyICopICgoKGNoYXIgKikgKG5saCkpICsgTkxNU0dfQUxJR04oKG5saCktPm5sbXNnX2xlbikpKQorI2RlZmluZSBOTE1TR19PSyhubGgsbGVuKSAoKGxlbikgPj0gKGludCkgc2l6ZW9mKHN0cnVjdCBubG1zZ2hkcikgJiYgKG5saCktPm5sbXNnX2xlbiA+PSBzaXplb2Yoc3RydWN0IG5sbXNnaGRyKSAmJiAobmxoKS0+bmxtc2dfbGVuIDw9IChsZW4pKQogI2RlZmluZSBOTE1TR19QQVlMT0FEKG5saCxsZW4pICgobmxoKS0+bmxtc2dfbGVuIC0gTkxNU0dfU1BBQ0UoKGxlbikpKQogI2RlZmluZSBOTE1TR19OT09QIDB4MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEwMiw4ICsxMDIsOCBAQAogI2RlZmluZSBOTE1TR19NSU5fVFlQRSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sbXNnZXJyIHsKLSBpbnQgZXJyb3I7Ci0gc3RydWN0IG5sbXNnaGRyIG1zZzsKKyAgaW50IGVycm9yOworICBzdHJ1Y3Qgbmxtc2doZHIgbXNnOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5FVExJTktfQUREX01FTUJFUlNISVAgMQpAQCAtMTE2LDMzICsxMTYsMzMgQEAKICNkZWZpbmUgTkVUTElOS19UWF9SSU5HIDcKIHN0cnVjdCBubF9wa3RpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ3JvdXA7CisgIF9fdTMyIGdyb3VwOwogfTsKIHN0cnVjdCBubF9tbWFwX3JlcSB7Ci0gdW5zaWduZWQgaW50IG5tX2Jsb2NrX3NpemU7CisgIHVuc2lnbmVkIGludCBubV9ibG9ja19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbm1fYmxvY2tfbnI7Ci0gdW5zaWduZWQgaW50IG5tX2ZyYW1lX3NpemU7Ci0gdW5zaWduZWQgaW50IG5tX2ZyYW1lX25yOworICB1bnNpZ25lZCBpbnQgbm1fYmxvY2tfbnI7CisgIHVuc2lnbmVkIGludCBubV9mcmFtZV9zaXplOworICB1bnNpZ25lZCBpbnQgbm1fZnJhbWVfbnI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBubF9tbWFwX2hkciB7Ci0gdW5zaWduZWQgaW50IG5tX3N0YXR1czsKLSB1bnNpZ25lZCBpbnQgbm1fbGVuOwotIF9fdTMyIG5tX2dyb3VwOworICB1bnNpZ25lZCBpbnQgbm1fc3RhdHVzOworICB1bnNpZ25lZCBpbnQgbm1fbGVuOworICBfX3UzMiBubV9ncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbm1fcGlkOwotIF9fdTMyIG5tX3VpZDsKLSBfX3UzMiBubV9naWQ7CisgIF9fdTMyIG5tX3BpZDsKKyAgX191MzIgbm1fdWlkOworICBfX3UzMiBubV9naWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmxfbW1hcF9zdGF0dXMgewotIE5MX01NQVBfU1RBVFVTX1VOVVNFRCwKLSBOTF9NTUFQX1NUQVRVU19SRVNFUlZFRCwKLSBOTF9NTUFQX1NUQVRVU19WQUxJRCwKKyAgTkxfTU1BUF9TVEFUVVNfVU5VU0VELAorICBOTF9NTUFQX1NUQVRVU19SRVNFUlZFRCwKKyAgTkxfTU1BUF9TVEFUVVNfVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MX01NQVBfU1RBVFVTX0NPUFksCi0gTkxfTU1BUF9TVEFUVVNfU0tJUCwKKyAgTkxfTU1BUF9TVEFUVVNfQ09QWSwKKyAgTkxfTU1BUF9TVEFUVVNfU0tJUCwKIH07CiAjZGVmaW5lIE5MX01NQVBfTVNHX0FMSUdOTUVOVCBOTE1TR19BTElHTlRPCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTUxLDEzICsxNTEsMTMgQEAKICNkZWZpbmUgTkVUX01BSk9SIDM2CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUTElOS19VTkNPTk5FQ1RFRCA9IDAsCi0gTkVUTElOS19DT05ORUNURUQsCisgIE5FVExJTktfVU5DT05ORUNURUQgPSAwLAorICBORVRMSU5LX0NPTk5FQ1RFRCwKIH07CiBzdHJ1Y3QgbmxhdHRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbmxhX2xlbjsKLSBfX3UxNiBubGFfdHlwZTsKKyAgX191MTYgbmxhX2xlbjsKKyAgX191MTYgbmxhX3R5cGU7CiB9OwogI2RlZmluZSBOTEFfRl9ORVNURUQgKDEgPDwgMTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRsaW5rX2RpYWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0bGlua19kaWFnLmgKaW5kZXggMDZlNTAwMi4uZWJmNjM3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRsaW5rX2RpYWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmtfZGlhZy5oCkBAIC0yMSw0MyArMjEsNDMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IG5ldGxpbmtfZGlhZ19yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNkaWFnX2ZhbWlseTsKLSBfX3U4IHNkaWFnX3Byb3RvY29sOwotIF9fdTE2IHBhZDsKLSBfX3UzMiBuZGlhZ19pbm87CisgIF9fdTggc2RpYWdfZmFtaWx5OworICBfX3U4IHNkaWFnX3Byb3RvY29sOworICBfX3UxNiBwYWQ7CisgIF9fdTMyIG5kaWFnX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmRpYWdfc2hvdzsKLSBfX3UzMiBuZGlhZ19jb29raWVbMl07CisgIF9fdTMyIG5kaWFnX3Nob3c7CisgIF9fdTMyIG5kaWFnX2Nvb2tpZVsyXTsKIH07CiBzdHJ1Y3QgbmV0bGlua19kaWFnX21zZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmRpYWdfZmFtaWx5OwotIF9fdTggbmRpYWdfdHlwZTsKLSBfX3U4IG5kaWFnX3Byb3RvY29sOwotIF9fdTggbmRpYWdfc3RhdGU7CisgIF9fdTggbmRpYWdfZmFtaWx5OworICBfX3U4IG5kaWFnX3R5cGU7CisgIF9fdTggbmRpYWdfcHJvdG9jb2w7CisgIF9fdTggbmRpYWdfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5kaWFnX3BvcnRpZDsKLSBfX3UzMiBuZGlhZ19kc3RfcG9ydGlkOwotIF9fdTMyIG5kaWFnX2RzdF9ncm91cDsKLSBfX3UzMiBuZGlhZ19pbm87CisgIF9fdTMyIG5kaWFnX3BvcnRpZDsKKyAgX191MzIgbmRpYWdfZHN0X3BvcnRpZDsKKyAgX191MzIgbmRpYWdfZHN0X2dyb3VwOworICBfX3UzMiBuZGlhZ19pbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5kaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgbmRpYWdfY29va2llWzJdOwogfTsKIHN0cnVjdCBuZXRsaW5rX2RpYWdfcmluZyB7Ci0gX191MzIgbmRyX2Jsb2NrX3NpemU7CisgIF9fdTMyIG5kcl9ibG9ja19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZHJfYmxvY2tfbnI7Ci0gX191MzIgbmRyX2ZyYW1lX3NpemU7Ci0gX191MzIgbmRyX2ZyYW1lX25yOworICBfX3UzMiBuZHJfYmxvY2tfbnI7CisgIF9fdTMyIG5kcl9mcmFtZV9zaXplOworICBfX3UzMiBuZHJfZnJhbWVfbnI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIE5FVExJTktfRElBR19NRU1JTkZPLAotIE5FVExJTktfRElBR19HUk9VUFMsCi0gTkVUTElOS19ESUFHX1JYX1JJTkcsCisgIE5FVExJTktfRElBR19NRU1JTkZPLAorICBORVRMSU5LX0RJQUdfR1JPVVBTLAorICBORVRMSU5LX0RJQUdfUlhfUklORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUTElOS19ESUFHX1RYX1JJTkcsCi0gX19ORVRMSU5LX0RJQUdfTUFYLAorICBORVRMSU5LX0RJQUdfVFhfUklORywKKyAgX19ORVRMSU5LX0RJQUdfTUFYLAogfTsKICNkZWZpbmUgTkVUTElOS19ESUFHX01BWCAoX19ORVRMSU5LX0RJQUdfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldHJvbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRyb20uaAppbmRleCBiYjBmZDU5Li40ZTQxMWYyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldHJvbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0cm9tLmgKQEAgLTI3LDIyICsyNywyMiBAQAogI2RlZmluZSBORVRST01fVDQgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVUUk9NX0lETEUgNwotI2RlZmluZSBTSU9DTlJERUNPQlMgKFNJT0NQUk9UT1BSSVZBVEUrMikKKyNkZWZpbmUgU0lPQ05SREVDT0JTIChTSU9DUFJPVE9QUklWQVRFICsgMikKIHN0cnVjdCBucl9yb3V0ZV9zdHJ1Y3QgewogI2RlZmluZSBORVRST01fTkVJR0ggMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVUUk9NX05PREUgMQotIGludCB0eXBlOwotIGF4MjVfYWRkcmVzcyBjYWxsc2lnbjsKLSBjaGFyIGRldmljZVsxNl07CisgIGludCB0eXBlOworICBheDI1X2FkZHJlc3MgY2FsbHNpZ247CisgIGNoYXIgZGV2aWNlWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHF1YWxpdHk7Ci0gY2hhciBtbmVtb25pY1s3XTsKLSBheDI1X2FkZHJlc3MgbmVpZ2hib3VyOwotIHVuc2lnbmVkIGludCBvYnNfY291bnQ7CisgIHVuc2lnbmVkIGludCBxdWFsaXR5OworICBjaGFyIG1uZW1vbmljWzddOworICBheDI1X2FkZHJlc3MgbmVpZ2hib3VyOworICB1bnNpZ25lZCBpbnQgb2JzX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbmRpZ2lzOwotIGF4MjVfYWRkcmVzcyBkaWdpcGVhdGVyc1tBWDI1X01BWF9ESUdJU107CisgIHVuc2lnbmVkIGludCBuZGlnaXM7CisgIGF4MjVfYWRkcmVzcyBkaWdpcGVhdGVyc1tBWDI1X01BWF9ESUdJU107CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZmMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZjLmgKaW5kZXggODg5NzlkZS4uN2E4M2FjNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mYy5oCkBAIC0yNiwxMDkgKzI2LDExNCBAQAogI2RlZmluZSBORkNfR0VOTF9NQ0FTVF9FVkVOVF9OQU1FICJldmVudHMiCiBlbnVtIG5mY19jb21tYW5kcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19DTURfVU5TUEVDLAotIE5GQ19DTURfR0VUX0RFVklDRSwKLSBORkNfQ01EX0RFVl9VUCwKLSBORkNfQ01EX0RFVl9ET1dOLAorICBORkNfQ01EX1VOU1BFQywKKyAgTkZDX0NNRF9HRVRfREVWSUNFLAorICBORkNfQ01EX0RFVl9VUCwKKyAgTkZDX0NNRF9ERVZfRE9XTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0NNRF9ERVBfTElOS19VUCwKLSBORkNfQ01EX0RFUF9MSU5LX0RPV04sCi0gTkZDX0NNRF9TVEFSVF9QT0xMLAotIE5GQ19DTURfU1RPUF9QT0xMLAorICBORkNfQ01EX0RFUF9MSU5LX1VQLAorICBORkNfQ01EX0RFUF9MSU5LX0RPV04sCisgIE5GQ19DTURfU1RBUlRfUE9MTCwKKyAgTkZDX0NNRF9TVE9QX1BPTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19DTURfR0VUX1RBUkdFVCwKLSBORkNfRVZFTlRfVEFSR0VUU19GT1VORCwKLSBORkNfRVZFTlRfREVWSUNFX0FEREVELAotIE5GQ19FVkVOVF9ERVZJQ0VfUkVNT1ZFRCwKKyAgTkZDX0NNRF9HRVRfVEFSR0VULAorICBORkNfRVZFTlRfVEFSR0VUU19GT1VORCwKKyAgTkZDX0VWRU5UX0RFVklDRV9BRERFRCwKKyAgTkZDX0VWRU5UX0RFVklDRV9SRU1PVkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfRVZFTlRfVEFSR0VUX0xPU1QsCi0gTkZDX0VWRU5UX1RNX0FDVElWQVRFRCwKLSBORkNfRVZFTlRfVE1fREVBQ1RJVkFURUQsCi0gTkZDX0NNRF9MTENfR0VUX1BBUkFNUywKKyAgTkZDX0VWRU5UX1RBUkdFVF9MT1NULAorICBORkNfRVZFTlRfVE1fQUNUSVZBVEVELAorICBORkNfRVZFTlRfVE1fREVBQ1RJVkFURUQsCisgIE5GQ19DTURfTExDX0dFVF9QQVJBTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19DTURfTExDX1NFVF9QQVJBTVMsCi0gTkZDX0NNRF9FTkFCTEVfU0UsCi0gTkZDX0NNRF9ESVNBQkxFX1NFLAotIE5GQ19DTURfTExDX1NEUkVRLAorICBORkNfQ01EX0xMQ19TRVRfUEFSQU1TLAorICBORkNfQ01EX0VOQUJMRV9TRSwKKyAgTkZDX0NNRF9ESVNBQkxFX1NFLAorICBORkNfQ01EX0xMQ19TRFJFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0VWRU5UX0xMQ19TRFJFUywKLSBORkNfQ01EX0ZXX0RPV05MT0FELAotIE5GQ19FVkVOVF9TRV9BRERFRCwKLSBORkNfRVZFTlRfU0VfUkVNT1ZFRCwKKyAgTkZDX0VWRU5UX0xMQ19TRFJFUywKKyAgTkZDX0NNRF9GV19ET1dOTE9BRCwKKyAgTkZDX0VWRU5UX1NFX0FEREVELAorICBORkNfRVZFTlRfU0VfUkVNT1ZFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0VWRU5UX1NFX0NPTk5FQ1RJVklUWSwKLSBORkNfRVZFTlRfU0VfVFJBTlNBQ1RJT04sCi0gTkZDX0NNRF9HRVRfU0UsCi0gTkZDX0NNRF9TRV9JTywKKyAgTkZDX0VWRU5UX1NFX0NPTk5FQ1RJVklUWSwKKyAgTkZDX0VWRU5UX1NFX1RSQU5TQUNUSU9OLAorICBORkNfQ01EX0dFVF9TRSwKKyAgTkZDX0NNRF9TRV9JTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORkNfQ01EX0FGVEVSX0xBU1QKKyAgX19ORkNfQ01EX0FGVEVSX0xBU1QKIH07CiAjZGVmaW5lIE5GQ19DTURfTUFYIChfX05GQ19DTURfQUZURVJfTEFTVCAtIDEpCiBlbnVtIG5mY19hdHRycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19BVFRSX1VOU1BFQywKLSBORkNfQVRUUl9ERVZJQ0VfSU5ERVgsCi0gTkZDX0FUVFJfREVWSUNFX05BTUUsCi0gTkZDX0FUVFJfUFJPVE9DT0xTLAorICBORkNfQVRUUl9VTlNQRUMsCisgIE5GQ19BVFRSX0RFVklDRV9JTkRFWCwKKyAgTkZDX0FUVFJfREVWSUNFX05BTUUsCisgIE5GQ19BVFRSX1BST1RPQ09MUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0FUVFJfVEFSR0VUX0lOREVYLAotIE5GQ19BVFRSX1RBUkdFVF9TRU5TX1JFUywKLSBORkNfQVRUUl9UQVJHRVRfU0VMX1JFUywKLSBORkNfQVRUUl9UQVJHRVRfTkZDSUQxLAorICBORkNfQVRUUl9UQVJHRVRfSU5ERVgsCisgIE5GQ19BVFRSX1RBUkdFVF9TRU5TX1JFUywKKyAgTkZDX0FUVFJfVEFSR0VUX1NFTF9SRVMsCisgIE5GQ19BVFRSX1RBUkdFVF9ORkNJRDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19BVFRSX1RBUkdFVF9TRU5TQl9SRVMsCi0gTkZDX0FUVFJfVEFSR0VUX1NFTlNGX1JFUywKLSBORkNfQVRUUl9DT01NX01PREUsCi0gTkZDX0FUVFJfUkZfTU9ERSwKKyAgTkZDX0FUVFJfVEFSR0VUX1NFTlNCX1JFUywKKyAgTkZDX0FUVFJfVEFSR0VUX1NFTlNGX1JFUywKKyAgTkZDX0FUVFJfQ09NTV9NT0RFLAorICBORkNfQVRUUl9SRl9NT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQVRUUl9ERVZJQ0VfUE9XRVJFRCwKLSBORkNfQVRUUl9JTV9QUk9UT0NPTFMsCi0gTkZDX0FUVFJfVE1fUFJPVE9DT0xTLAotIE5GQ19BVFRSX0xMQ19QQVJBTV9MVE8sCisgIE5GQ19BVFRSX0RFVklDRV9QT1dFUkVELAorICBORkNfQVRUUl9JTV9QUk9UT0NPTFMsCisgIE5GQ19BVFRSX1RNX1BST1RPQ09MUywKKyAgTkZDX0FUVFJfTExDX1BBUkFNX0xUTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0FUVFJfTExDX1BBUkFNX1JXLAotIE5GQ19BVFRSX0xMQ19QQVJBTV9NSVVYLAotIE5GQ19BVFRSX1NFLAotIE5GQ19BVFRSX0xMQ19TRFAsCisgIE5GQ19BVFRSX0xMQ19QQVJBTV9SVywKKyAgTkZDX0FUVFJfTExDX1BBUkFNX01JVVgsCisgIE5GQ19BVFRSX1NFLAorICBORkNfQVRUUl9MTENfU0RQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQVRUUl9GSVJNV0FSRV9OQU1FLAotIE5GQ19BVFRSX1NFX0lOREVYLAotIE5GQ19BVFRSX1NFX1RZUEUsCi0gTkZDX0FUVFJfU0VfQUlELAorICBORkNfQVRUUl9GSVJNV0FSRV9OQU1FLAorICBORkNfQVRUUl9TRV9JTkRFWCwKKyAgTkZDX0FUVFJfU0VfVFlQRSwKKyAgTkZDX0FUVFJfU0VfQUlELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQVRUUl9GSVJNV0FSRV9ET1dOTE9BRF9TVEFUVVMsCi0gTkZDX0FUVFJfU0VfQVBEVSwKLSBfX05GQ19BVFRSX0FGVEVSX0xBU1QKKyAgTkZDX0FUVFJfRklSTVdBUkVfRE9XTkxPQURfU1RBVFVTLAorICBORkNfQVRUUl9TRV9BUERVLAorICBORkNfQVRUUl9UQVJHRVRfSVNPMTU2OTNfRFNGSUQsCisgIE5GQ19BVFRSX1RBUkdFVF9JU08xNTY5M19VSUQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX05GQ19BVFRSX0FGVEVSX0xBU1QKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfQVRUUl9NQVggKF9fTkZDX0FUVFJfQUZURVJfTEFTVCAtIDEpCiBlbnVtIG5mY19zZHBfYXR0ciB7Ci0gTkZDX1NEUF9BVFRSX1VOU1BFQywKLSBORkNfU0RQX0FUVFJfVVJJLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfU0RQX0FUVFJfU0FQLAotIF9fTkZDX1NEUF9BVFRSX0FGVEVSX0xBU1QKKyAgTkZDX1NEUF9BVFRSX1VOU1BFQywKKyAgTkZDX1NEUF9BVFRSX1VSSSwKKyAgTkZDX1NEUF9BVFRSX1NBUCwKKyAgX19ORkNfU0RQX0FUVFJfQUZURVJfTEFTVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GQ19TRFBfQVRUUl9NQVggKF9fTkZDX1NEUF9BVFRSX0FGVEVSX0xBU1QgLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX0RFVklDRV9OQU1FX01BWFNJWkUgOAogI2RlZmluZSBORkNfTkZDSUQxX01BWFNJWkUgMTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19ORkNJRDJfTUFYU0laRSA4CiAjZGVmaW5lIE5GQ19ORkNJRDNfTUFYU0laRSAxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1NFTlNCX1JFU19NQVhTSVpFIDEyCiAjZGVmaW5lIE5GQ19TRU5TRl9SRVNfTUFYU0laRSAxOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX0dCX01BWFNJWkUgNDgKICNkZWZpbmUgTkZDX0ZJUk1XQVJFX05BTUVfTUFYU0laRSAzMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkZDX0lTTzE1NjkzX1VJRF9NQVhTSVpFIDgKICNkZWZpbmUgTkZDX1BST1RPX0pFV0VMIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19QUk9UT19NSUZBUkUgMgogI2RlZmluZSBORkNfUFJPVE9fRkVMSUNBIDMKICNkZWZpbmUgTkZDX1BST1RPX0lTTzE0NDQzIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19QUk9UT19ORkNfREVQIDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19QUk9UT19JU08xNDQ0M19CIDYKLSNkZWZpbmUgTkZDX1BST1RPX01BWCA3CisjZGVmaW5lIE5GQ19QUk9UT19JU08xNTY5MyA3CisjZGVmaW5lIE5GQ19QUk9UT19NQVggOAogI2RlZmluZSBORkNfQ09NTV9BQ1RJVkUgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX0NPTU1fUEFTU0lWRSAxCkBAIC0xNDMsNDYgKzE0OCw1NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1BST1RPX05GQ19ERVBfTUFTSyAoMSA8PCBORkNfUFJPVE9fTkZDX0RFUCkKICNkZWZpbmUgTkZDX1BST1RPX0lTTzE0NDQzX0JfTUFTSyAoMSA8PCBORkNfUFJPVE9fSVNPMTQ0NDNfQikKKyNkZWZpbmUgTkZDX1BST1RPX0lTTzE1NjkzX01BU0sgKDEgPDwgTkZDX1BST1RPX0lTTzE1NjkzKQogI2RlZmluZSBORkNfU0VfVUlDQyAweDEKLSNkZWZpbmUgTkZDX1NFX0VNQkVEREVEIDB4MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkZDX1NFX0VNQkVEREVEIDB4MgogI2RlZmluZSBORkNfU0VfRElTQUJMRUQgMHgwCiAjZGVmaW5lIE5GQ19TRV9FTkFCTEVEIDB4MQogc3RydWN0IHNvY2thZGRyX25mYyB7Ci0gc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZXZfaWR4OwotIF9fdTMyIHRhcmdldF9pZHg7Ci0gX191MzIgbmZjX3Byb3RvY29sOworICBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIF9fdTMyIGRldl9pZHg7CisgIF9fdTMyIHRhcmdldF9pZHg7CisgIF9fdTMyIG5mY19wcm90b2NvbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX0xMQ1BfTUFYX1NFUlZJQ0VfTkFNRSA2Mwogc3RydWN0IHNvY2thZGRyX25mY19sbGNwIHsKLSBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7Ci0gX191MzIgZGV2X2lkeDsKKyAgc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0YXJnZXRfaWR4OwotIF9fdTMyIG5mY19wcm90b2NvbDsKLSBfX3U4IGRzYXA7Ci0gX191OCBzc2FwOworICBfX3UzMiBkZXZfaWR4OworICBfX3UzMiB0YXJnZXRfaWR4OworICBfX3UzMiBuZmNfcHJvdG9jb2w7CisgIF9fdTggZHNhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzZXJ2aWNlX25hbWVbTkZDX0xMQ1BfTUFYX1NFUlZJQ0VfTkFNRV07ICA7Ci0gc2l6ZV90IHNlcnZpY2VfbmFtZV9sZW47CisgIF9fdTggc3NhcDsKKyAgY2hhciBzZXJ2aWNlX25hbWVbTkZDX0xMQ1BfTUFYX1NFUlZJQ0VfTkFNRV07Cis7CisgIHNpemVfdCBzZXJ2aWNlX25hbWVfbGVuOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GQ19TT0NLUFJPVE9fUkFXIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19TT0NLUFJPVE9fTExDUCAxCiAjZGVmaW5lIE5GQ19TT0NLUFJPVE9fTUFYIDIKLSNkZWZpbmUgTkZDX0hFQURFUl9TSVpFIDEKLSNkZWZpbmUgTkZDX0xMQ1BfUkFXX0hFQURFUl9TSVpFIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5GQ19MTENQX0RJUkVDVElPTl9SWCAweDAwCi0jZGVmaW5lIE5GQ19MTENQX0RJUkVDVElPTl9UWCAweDAxCisjZGVmaW5lIE5GQ19IRUFERVJfU0laRSAxCisjZGVmaW5lIE5GQ19SQVdfSEVBREVSX1NJWkUgMgorI2RlZmluZSBORkNfRElSRUNUSU9OX1JYIDB4MDAKKyNkZWZpbmUgTkZDX0RJUkVDVElPTl9UWCAweDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQVdfUEFZTE9BRF9MTENQIDAKKyNkZWZpbmUgUkFXX1BBWUxPQURfTkNJIDEKKyNkZWZpbmUgUkFXX1BBWUxPQURfSENJIDIKKyNkZWZpbmUgUkFXX1BBWUxPQURfRElHSVRBTCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQVdfUEFZTE9BRF9QUk9QUklFVEFSWSA0CiAjZGVmaW5lIE5GQ19MTENQX1JXIDAKICNkZWZpbmUgTkZDX0xMQ1BfTUlVWCAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfTExDUF9SRU1PVEVfTUlVIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19MTENQX1JFTU9URV9MVE8gMwogI2RlZmluZSBORkNfTExDUF9SRU1PVEVfUlcgNAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzLmgKaW5kZXggOWI2MzQ4NC4uMjcwODNhMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mcy5oCkBAIC0yOCw3ICsyOCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlNfRkhTSVpFIDMyCiAjZGVmaW5lIE5GU19DT09LSUVTSVpFIDQKLSNkZWZpbmUgTkZTX0ZJRk9fREVWICgtMSkKKyNkZWZpbmUgTkZTX0ZJRk9fREVWICgtIDEpCiAjZGVmaW5lIE5GU01PREVfRk1UIDAxNzAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GU01PREVfRElSIDAwNDAwMDAKQEAgLTQ0LDExMSArNDQsMTExIEBACiAjZGVmaW5lIE5GU19NTlRfVkVSU0lPTiAxCiAjZGVmaW5lIE5GU19NTlQzX1ZFUlNJT04gMwogI2RlZmluZSBORlNfUElQRV9ESVJOQU1FICJuZnMiCi0gZW51bSBuZnNfc3RhdCB7CitlbnVtIG5mc19zdGF0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTX09LID0gMCwKLSBORlNFUlJfUEVSTSA9IDEsCi0gTkZTRVJSX05PRU5UID0gMiwKLSBORlNFUlJfSU8gPSA1LAorICBORlNfT0sgPSAwLAorICBORlNFUlJfUEVSTSA9IDEsCisgIE5GU0VSUl9OT0VOVCA9IDIsCisgIE5GU0VSUl9JTyA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9OWElPID0gNiwKLSBORlNFUlJfRUFHQUlOID0gMTEsCi0gTkZTRVJSX0FDQ0VTID0gMTMsCi0gTkZTRVJSX0VYSVNUID0gMTcsCisgIE5GU0VSUl9OWElPID0gNiwKKyAgTkZTRVJSX0VBR0FJTiA9IDExLAorICBORlNFUlJfQUNDRVMgPSAxMywKKyAgTkZTRVJSX0VYSVNUID0gMTcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9YREVWID0gMTgsCi0gTkZTRVJSX05PREVWID0gMTksCi0gTkZTRVJSX05PVERJUiA9IDIwLAotIE5GU0VSUl9JU0RJUiA9IDIxLAorICBORlNFUlJfWERFViA9IDE4LAorICBORlNFUlJfTk9ERVYgPSAxOSwKKyAgTkZTRVJSX05PVERJUiA9IDIwLAorICBORlNFUlJfSVNESVIgPSAyMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX0lOVkFMID0gMjIsCi0gTkZTRVJSX0ZCSUcgPSAyNywKLSBORlNFUlJfTk9TUEMgPSAyOCwKLSBORlNFUlJfUk9GUyA9IDMwLAorICBORlNFUlJfSU5WQUwgPSAyMiwKKyAgTkZTRVJSX0ZCSUcgPSAyNywKKyAgTkZTRVJSX05PU1BDID0gMjgsCisgIE5GU0VSUl9ST0ZTID0gMzAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9NTElOSyA9IDMxLAotIE5GU0VSUl9PUE5PVFNVUFAgPSA0NSwKLSBORlNFUlJfTkFNRVRPT0xPTkcgPSA2MywKLSBORlNFUlJfTk9URU1QVFkgPSA2NiwKKyAgTkZTRVJSX01MSU5LID0gMzEsCisgIE5GU0VSUl9PUE5PVFNVUFAgPSA0NSwKKyAgTkZTRVJSX05BTUVUT09MT05HID0gNjMsCisgIE5GU0VSUl9OT1RFTVBUWSA9IDY2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfRFFVT1QgPSA2OSwKLSBORlNFUlJfU1RBTEUgPSA3MCwKLSBORlNFUlJfUkVNT1RFID0gNzEsCi0gTkZTRVJSX1dGTFVTSCA9IDk5LAorICBORlNFUlJfRFFVT1QgPSA2OSwKKyAgTkZTRVJSX1NUQUxFID0gNzAsCisgIE5GU0VSUl9SRU1PVEUgPSA3MSwKKyAgTkZTRVJSX1dGTFVTSCA9IDk5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfQkFESEFORExFID0gMTAwMDEsCi0gTkZTRVJSX05PVF9TWU5DID0gMTAwMDIsCi0gTkZTRVJSX0JBRF9DT09LSUUgPSAxMDAwMywKLSBORlNFUlJfTk9UU1VQUCA9IDEwMDA0LAorICBORlNFUlJfQkFESEFORExFID0gMTAwMDEsCisgIE5GU0VSUl9OT1RfU1lOQyA9IDEwMDAyLAorICBORlNFUlJfQkFEX0NPT0tJRSA9IDEwMDAzLAorICBORlNFUlJfTk9UU1VQUCA9IDEwMDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfVE9PU01BTEwgPSAxMDAwNSwKLSBORlNFUlJfU0VSVkVSRkFVTFQgPSAxMDAwNiwKLSBORlNFUlJfQkFEVFlQRSA9IDEwMDA3LAotIE5GU0VSUl9KVUtFQk9YID0gMTAwMDgsCisgIE5GU0VSUl9UT09TTUFMTCA9IDEwMDA1LAorICBORlNFUlJfU0VSVkVSRkFVTFQgPSAxMDAwNiwKKyAgTkZTRVJSX0JBRFRZUEUgPSAxMDAwNywKKyAgTkZTRVJSX0pVS0VCT1ggPSAxMDAwOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX1NBTUUgPSAxMDAwOSwKLSBORlNFUlJfREVOSUVEID0gMTAwMTAsCi0gTkZTRVJSX0VYUElSRUQgPSAxMDAxMSwKLSBORlNFUlJfTE9DS0VEID0gMTAwMTIsCisgIE5GU0VSUl9TQU1FID0gMTAwMDksCisgIE5GU0VSUl9ERU5JRUQgPSAxMDAxMCwKKyAgTkZTRVJSX0VYUElSRUQgPSAxMDAxMSwKKyAgTkZTRVJSX0xPQ0tFRCA9IDEwMDEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfR1JBQ0UgPSAxMDAxMywKLSBORlNFUlJfRkhFWFBJUkVEID0gMTAwMTQsCi0gTkZTRVJSX1NIQVJFX0RFTklFRCA9IDEwMDE1LAotIE5GU0VSUl9XUk9OR1NFQyA9IDEwMDE2LAorICBORlNFUlJfR1JBQ0UgPSAxMDAxMywKKyAgTkZTRVJSX0ZIRVhQSVJFRCA9IDEwMDE0LAorICBORlNFUlJfU0hBUkVfREVOSUVEID0gMTAwMTUsCisgIE5GU0VSUl9XUk9OR1NFQyA9IDEwMDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfQ0xJRF9JTlVTRSA9IDEwMDE3LAotIE5GU0VSUl9SRVNPVVJDRSA9IDEwMDE4LAotIE5GU0VSUl9NT1ZFRCA9IDEwMDE5LAotIE5GU0VSUl9OT0ZJTEVIQU5ETEUgPSAxMDAyMCwKKyAgTkZTRVJSX0NMSURfSU5VU0UgPSAxMDAxNywKKyAgTkZTRVJSX1JFU09VUkNFID0gMTAwMTgsCisgIE5GU0VSUl9NT1ZFRCA9IDEwMDE5LAorICBORlNFUlJfTk9GSUxFSEFORExFID0gMTAwMjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9NSU5PUl9WRVJTX01JU01BVENIID0gMTAwMjEsCi0gTkZTRVJSX1NUQUxFX0NMSUVOVElEID0gMTAwMjIsCi0gTkZTRVJSX1NUQUxFX1NUQVRFSUQgPSAxMDAyMywKLSBORlNFUlJfT0xEX1NUQVRFSUQgPSAxMDAyNCwKKyAgTkZTRVJSX01JTk9SX1ZFUlNfTUlTTUFUQ0ggPSAxMDAyMSwKKyAgTkZTRVJSX1NUQUxFX0NMSUVOVElEID0gMTAwMjIsCisgIE5GU0VSUl9TVEFMRV9TVEFURUlEID0gMTAwMjMsCisgIE5GU0VSUl9PTERfU1RBVEVJRCA9IDEwMDI0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfQkFEX1NUQVRFSUQgPSAxMDAyNSwKLSBORlNFUlJfQkFEX1NFUUlEID0gMTAwMjYsCi0gTkZTRVJSX05PVF9TQU1FID0gMTAwMjcsCi0gTkZTRVJSX0xPQ0tfUkFOR0UgPSAxMDAyOCwKKyAgTkZTRVJSX0JBRF9TVEFURUlEID0gMTAwMjUsCisgIE5GU0VSUl9CQURfU0VRSUQgPSAxMDAyNiwKKyAgTkZTRVJSX05PVF9TQU1FID0gMTAwMjcsCisgIE5GU0VSUl9MT0NLX1JBTkdFID0gMTAwMjgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9TWU1MSU5LID0gMTAwMjksCi0gTkZTRVJSX1JFU1RPUkVGSCA9IDEwMDMwLAotIE5GU0VSUl9MRUFTRV9NT1ZFRCA9IDEwMDMxLAotIE5GU0VSUl9BVFRSTk9UU1VQUCA9IDEwMDMyLAorICBORlNFUlJfU1lNTElOSyA9IDEwMDI5LAorICBORlNFUlJfUkVTVE9SRUZIID0gMTAwMzAsCisgIE5GU0VSUl9MRUFTRV9NT1ZFRCA9IDEwMDMxLAorICBORlNFUlJfQVRUUk5PVFNVUFAgPSAxMDAzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX05PX0dSQUNFID0gMTAwMzMsCi0gTkZTRVJSX1JFQ0xBSU1fQkFEID0gMTAwMzQsCi0gTkZTRVJSX1JFQ0xBSU1fQ09ORkxJQ1QgPSAxMDAzNSwKLSBORlNFUlJfQkFEX1hEUiA9IDEwMDM2LAorICBORlNFUlJfTk9fR1JBQ0UgPSAxMDAzMywKKyAgTkZTRVJSX1JFQ0xBSU1fQkFEID0gMTAwMzQsCisgIE5GU0VSUl9SRUNMQUlNX0NPTkZMSUNUID0gMTAwMzUsCisgIE5GU0VSUl9CQURfWERSID0gMTAwMzYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9MT0NLU19IRUxEID0gMTAwMzcsCi0gTkZTRVJSX09QRU5NT0RFID0gMTAwMzgsCi0gTkZTRVJSX0JBRE9XTkVSID0gMTAwMzksCi0gTkZTRVJSX0JBRENIQVIgPSAxMDA0MCwKKyAgTkZTRVJSX0xPQ0tTX0hFTEQgPSAxMDAzNywKKyAgTkZTRVJSX09QRU5NT0RFID0gMTAwMzgsCisgIE5GU0VSUl9CQURPV05FUiA9IDEwMDM5LAorICBORlNFUlJfQkFEQ0hBUiA9IDEwMDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfQkFETkFNRSA9IDEwMDQxLAotIE5GU0VSUl9CQURfUkFOR0UgPSAxMDA0MiwKLSBORlNFUlJfTE9DS19OT1RTVVBQID0gMTAwNDMsCi0gTkZTRVJSX09QX0lMTEVHQUwgPSAxMDA0NCwKKyAgTkZTRVJSX0JBRE5BTUUgPSAxMDA0MSwKKyAgTkZTRVJSX0JBRF9SQU5HRSA9IDEwMDQyLAorICBORlNFUlJfTE9DS19OT1RTVVBQID0gMTAwNDMsCisgIE5GU0VSUl9PUF9JTExFR0FMID0gMTAwNDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9ERUFETE9DSyA9IDEwMDQ1LAotIE5GU0VSUl9GSUxFX09QRU4gPSAxMDA0NiwKLSBORlNFUlJfQURNSU5fUkVWT0tFRCA9IDEwMDQ3LAotIE5GU0VSUl9DQl9QQVRIX0RPV04gPSAxMDA0OCwKKyAgTkZTRVJSX0RFQURMT0NLID0gMTAwNDUsCisgIE5GU0VSUl9GSUxFX09QRU4gPSAxMDA0NiwKKyAgTkZTRVJSX0FETUlOX1JFVk9LRUQgPSAxMDA0NywKKyAgTkZTRVJSX0NCX1BBVEhfRE9XTiA9IDEwMDQ4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5mc19mdHlwZSB7Ci0gTkZOT04gPSAwLAotIE5GUkVHID0gMSwKKyAgTkZOT04gPSAwLAorICBORlJFRyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GRElSID0gMiwKLSBORkJMSyA9IDMsCi0gTkZDSFIgPSA0LAotIE5GTE5LID0gNSwKKyAgTkZESVIgPSAyLAorICBORkJMSyA9IDMsCisgIE5GQ0hSID0gNCwKKyAgTkZMTksgPSA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNPQ0sgPSA2LAotIE5GQkFEID0gNywKLSBORkZJRk8gPSA4CisgIE5GU09DSyA9IDYsCisgIE5GQkFEID0gNywKKyAgTkZGSUZPID0gOAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzMi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMyLmgKaW5kZXggMzFkNzMxYi4uMTBhYWZlOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMyLmgKQEAgLTI3LDcgKzI3LDcgQEAKICNkZWZpbmUgTkZTMl9GSFNJWkUgMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GUzJfQ09PS0lFU0laRSA0Ci0jZGVmaW5lIE5GUzJfRklGT19ERVYgKC0xKQorI2RlZmluZSBORlMyX0ZJRk9fREVWICgtIDEpCiAjZGVmaW5lIE5GUzJNT0RFX0ZNVCAwMTcwMDAwCiAjZGVmaW5lIE5GUzJNT0RFX0RJUiAwMDQwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzksMjEgKzM5LDIxIEBACiAjZGVmaW5lIE5GUzJNT0RFX1NPQ0sgMDE0MDAwMAogI2RlZmluZSBORlMyTU9ERV9GSUZPIDAwMTAwMDAKIGVudW0gbmZzMl9mdHlwZSB7Ci0gTkYyTk9OID0gMCwKKyAgTkYyTk9OID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkYyUkVHID0gMSwKLSBORjJESVIgPSAyLAotIE5GMkJMSyA9IDMsCi0gTkYyQ0hSID0gNCwKKyAgTkYyUkVHID0gMSwKKyAgTkYyRElSID0gMiwKKyAgTkYyQkxLID0gMywKKyAgTkYyQ0hSID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkYyTE5LID0gNSwKLSBORjJTT0NLID0gNiwKLSBORjJCQUQgPSA3LAotIE5GMkZJRk8gPSA4CisgIE5GMkxOSyA9IDUsCisgIE5GMlNPQ0sgPSA2LAorICBORjJCQUQgPSA3LAorICBORjJGSUZPID0gOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbmZzMl9maCB7Ci0gY2hhciBkYXRhW05GUzJfRkhTSVpFXTsKKyAgY2hhciBkYXRhW05GUzJfRkhTSVpFXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlMyX1ZFUlNJT04gMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczMuaAppbmRleCAyY2RjZTRiLi5kYjZkYzRiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczMuaApAQCAtMzEsNyArMzEsNyBAQAogI2RlZmluZSBORlMzX0NPT0tJRVZFUkZTSVpFIDgKICNkZWZpbmUgTkZTM19XUklURVZFUkZTSVpFIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5GUzNfRklGT19ERVYgKC0xKQorI2RlZmluZSBORlMzX0ZJRk9fREVWICgtIDEpCiAjZGVmaW5lIE5GUzNNT0RFX0ZNVCAwMTcwMDAwCiAjZGVmaW5lIE5GUzNNT0RFX0RJUiAwMDQwMDAwCiAjZGVmaW5lIE5GUzNNT0RFX0NIUiAwMDIwMDAwCkBAIC01Miw5ICs1Miw5IEBACiAjZGVmaW5lIE5GUzNfQUNDRVNTX0ZVTEwgMHgwMDNmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnMzX2NyZWF0ZW1vZGUgewotIE5GUzNfQ1JFQVRFX1VOQ0hFQ0tFRCA9IDAsCi0gTkZTM19DUkVBVEVfR1VBUkRFRCA9IDEsCi0gTkZTM19DUkVBVEVfRVhDTFVTSVZFID0gMgorICBORlMzX0NSRUFURV9VTkNIRUNLRUQgPSAwLAorICBORlMzX0NSRUFURV9HVUFSREVEID0gMSwKKyAgTkZTM19DUkVBVEVfRVhDTFVTSVZFID0gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GUzNfRlNGX0xJTksgMHgwMDAxCkBAIC02NywyMiArNjcsMjIgQEAKICNkZWZpbmUgTkZTM19GU0ZfUkVBRE9OTFkgMHgwMDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnMzX2Z0eXBlIHsKLSBORjNOT04gPSAwLAotIE5GM1JFRyA9IDEsCi0gTkYzRElSID0gMiwKKyAgTkYzTk9OID0gMCwKKyAgTkYzUkVHID0gMSwKKyAgTkYzRElSID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkYzQkxLID0gMywKLSBORjNDSFIgPSA0LAotIE5GM0xOSyA9IDUsCi0gTkYzU09DSyA9IDYsCisgIE5GM0JMSyA9IDMsCisgIE5GM0NIUiA9IDQsCisgIE5GM0xOSyA9IDUsCisgIE5GM1NPQ0sgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORjNGSUZPID0gNywKLSBORjNCQUQgPSA4CisgIE5GM0ZJRk8gPSA3LAorICBORjNCQUQgPSA4CiB9Owogc3RydWN0IG5mczNfZmggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzaXplOwotIHVuc2lnbmVkIGNoYXIgZGF0YVtORlMzX0ZIU0laRV07CisgIHVuc2lnbmVkIHNob3J0IHNpemU7CisgIHVuc2lnbmVkIGNoYXIgZGF0YVtORlMzX0ZIU0laRV07CiB9OwogI2RlZmluZSBORlMzX1ZFUlNJT04gMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzNC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0LmgKaW5kZXggMjk0NDY5My4uYjBkZDkyNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0LmgKQEAgLTE1NywxNSArMTU3LDE1IEBACiAjZGVmaW5lIE5GUzRfU0VDSU5GT19TVFlMRTRfQ1VSUkVOVF9GSCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlM0X1NFQ0lORk9fU1RZTEU0X1BBUkVOVCAxCi0jZGVmaW5lIE5GUzRfTUFYX1VJTlQ2NCAofihfX3U2NCkwKQorI2RlZmluZSBORlM0X01BWF9VSU5UNjQgKH4oX191NjQpIDApCiAjZGVmaW5lIE5GUzRfTUFYX09QUyA4CiAjZGVmaW5lIE5GUzRfTUFYX0JBQ0tfQ0hBTk5FTF9PUFMgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZzNF9hY2xfd2hvdHlwZSB7Ci0gTkZTNF9BQ0xfV0hPX05BTUVEID0gMCwKLSBORlM0X0FDTF9XSE9fT1dORVIsCi0gTkZTNF9BQ0xfV0hPX0dST1VQLAorICBORlM0X0FDTF9XSE9fTkFNRUQgPSAwLAorICBORlM0X0FDTF9XSE9fT1dORVIsCisgIE5GUzRfQUNMX1dIT19HUk9VUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTNF9BQ0xfV0hPX0VWRVJZT05FLAorICBORlM0X0FDTF9XSE9fRVZFUllPTkUsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczRfbW91bnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzNF9tb3VudC5oCmluZGV4IDhkODQ0MTYuLjY0YWFkZTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzNF9tb3VudC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzNF9tb3VudC5oCkBAIC0yMSwzMyArMjEsMzMgQEAKICNkZWZpbmUgTkZTNF9NT1VOVF9WRVJTSU9OIDEKIHN0cnVjdCBuZnNfc3RyaW5nIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxlbjsKLSBjb25zdCBjaGFyIF9fdXNlciAqIGRhdGE7CisgIHVuc2lnbmVkIGludCBsZW47CisgIGNvbnN0IGNoYXIgX191c2VyICogZGF0YTsKIH07CiBzdHJ1Y3QgbmZzNF9tb3VudF9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHZlcnNpb247Ci0gaW50IGZsYWdzOwotIGludCByc2l6ZTsKLSBpbnQgd3NpemU7CisgIGludCB2ZXJzaW9uOworICBpbnQgZmxhZ3M7CisgIGludCByc2l6ZTsKKyAgaW50IHdzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGltZW87Ci0gaW50IHJldHJhbnM7Ci0gaW50IGFjcmVnbWluOwotIGludCBhY3JlZ21heDsKKyAgaW50IHRpbWVvOworICBpbnQgcmV0cmFuczsKKyAgaW50IGFjcmVnbWluOworICBpbnQgYWNyZWdtYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhY2Rpcm1pbjsKLSBpbnQgYWNkaXJtYXg7Ci0gc3RydWN0IG5mc19zdHJpbmcgY2xpZW50X2FkZHI7Ci0gc3RydWN0IG5mc19zdHJpbmcgbW50X3BhdGg7CisgIGludCBhY2Rpcm1pbjsKKyAgaW50IGFjZGlybWF4OworICBzdHJ1Y3QgbmZzX3N0cmluZyBjbGllbnRfYWRkcjsKKyAgc3RydWN0IG5mc19zdHJpbmcgbW50X3BhdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBuZnNfc3RyaW5nIGhvc3RuYW1lOwotIHVuc2lnbmVkIGludCBob3N0X2FkZHJsZW47Ci0gc3RydWN0IHNvY2thZGRyIF9fdXNlciAqIGhvc3RfYWRkcjsKLSBpbnQgcHJvdG87CisgIHN0cnVjdCBuZnNfc3RyaW5nIGhvc3RuYW1lOworICB1bnNpZ25lZCBpbnQgaG9zdF9hZGRybGVuOworICBzdHJ1Y3Qgc29ja2FkZHIgX191c2VyICogaG9zdF9hZGRyOworICBpbnQgcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhdXRoX2ZsYXZvdXJsZW47Ci0gaW50IF9fdXNlciAqYXV0aF9mbGF2b3VyczsKKyAgaW50IGF1dGhfZmxhdm91cmxlbjsKKyAgaW50IF9fdXNlciAqIGF1dGhfZmxhdm91cnM7CiB9OwogI2RlZmluZSBORlM0X01PVU5UX1NPRlQgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX2ZzLmgKaW5kZXggZjM0MGZiMS4uYjc3MWNmYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19mcy5oCkBAIC0yNCw5ICsyNCw5IEBACiAjZGVmaW5lIE5GU19ERUZfVURQX1JFVFJBTlMgKDMpCiAjZGVmaW5lIE5GU19ERUZfVENQX1RJTUVPICg2MDApCiAjZGVmaW5lIE5GU19ERUZfVENQX1JFVFJBTlMgKDIpCi0jZGVmaW5lIE5GU19NQVhfVURQX1RJTUVPVVQgKDYwKkhaKQorI2RlZmluZSBORlNfTUFYX1VEUF9USU1FT1VUICg2MCAqIEhaKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkZTX01BWF9UQ1BfVElNRU9VVCAoNjAwKkhaKQorI2RlZmluZSBORlNfTUFYX1RDUF9USU1FT1VUICg2MDAgKiBIWikKICNkZWZpbmUgTkZTX0RFRl9BQ1JFR01JTiAoMykKICNkZWZpbmUgTkZTX0RFRl9BQ1JFR01BWCAoNjApCiAjZGVmaW5lIE5GU19ERUZfQUNESVJNSU4gKDMwKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfaWRtYXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX2lkbWFwLmgKaW5kZXggMDM5YmY0MC4uNWY1YzBlYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfaWRtYXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19pZG1hcC5oCkBAIC0zMiwxMiArMzIsMTIgQEAKICNkZWZpbmUgSURNQVBfU1RBVFVTX1NVQ0NFU1MgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpZG1hcF9tc2cgewotIF9fdTggaW1fdHlwZTsKLSBfX3U4IGltX2NvbnY7Ci0gY2hhciBpbV9uYW1lW0lETUFQX05BTUVTWl07CisgIF9fdTggaW1fdHlwZTsKKyAgX191OCBpbV9jb252OworICBjaGFyIGltX25hbWVbSURNQVBfTkFNRVNaXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW1faWQ7Ci0gX191OCBpbV9zdGF0dXM7CisgIF9fdTMyIGltX2lkOworICBfX3U4IGltX3N0YXR1czsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19tb3VudC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfbW91bnQuaAppbmRleCBkYzk2ZWQyLi4xNmVkNDYwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19tb3VudC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX21vdW50LmgKQEAgLTI3LDI5ICsyNywyOSBAQAogI2RlZmluZSBORlNfTUFYX0NPTlRFWFRfTEVOIDI1NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZnNfbW91bnRfZGF0YSB7Ci0gaW50IHZlcnNpb247Ci0gaW50IGZkOwotIHN0cnVjdCBuZnMyX2ZoIG9sZF9yb290OworICBpbnQgdmVyc2lvbjsKKyAgaW50IGZkOworICBzdHJ1Y3QgbmZzMl9maCBvbGRfcm9vdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZsYWdzOwotIGludCByc2l6ZTsKLSBpbnQgd3NpemU7Ci0gaW50IHRpbWVvOworICBpbnQgZmxhZ3M7CisgIGludCByc2l6ZTsKKyAgaW50IHdzaXplOworICBpbnQgdGltZW87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZXRyYW5zOwotIGludCBhY3JlZ21pbjsKLSBpbnQgYWNyZWdtYXg7Ci0gaW50IGFjZGlybWluOworICBpbnQgcmV0cmFuczsKKyAgaW50IGFjcmVnbWluOworICBpbnQgYWNyZWdtYXg7CisgIGludCBhY2Rpcm1pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGFjZGlybWF4OwotIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOwotIGNoYXIgaG9zdG5hbWVbTkZTX01BWE5BTUxFTiArIDFdOwotIGludCBuYW1sZW47CisgIGludCBhY2Rpcm1heDsKKyAgc3RydWN0IHNvY2thZGRyX2luIGFkZHI7CisgIGNoYXIgaG9zdG5hbWVbTkZTX01BWE5BTUxFTiArIDFdOworICBpbnQgbmFtbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYnNpemU7Ci0gc3RydWN0IG5mczNfZmggcm9vdDsKLSBpbnQgcHNldWRvZmxhdm9yOwotIGNoYXIgY29udGV4dFtORlNfTUFYX0NPTlRFWFRfTEVOICsgMV07CisgIHVuc2lnbmVkIGludCBic2l6ZTsKKyAgc3RydWN0IG5mczNfZmggcm9vdDsKKyAgaW50IHBzZXVkb2ZsYXZvcjsKKyAgY2hhciBjb250ZXh0W05GU19NQVhfQ09OVEVYVF9MRU4gKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORlNfTU9VTlRfU09GVCAweDAwMDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9jbGQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9jbGQuaAppbmRleCAxNmIzNjI5Li4zNTkzNjM0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvY2xkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL2NsZC5oCkBAIC0yMiwyOCArMjIsMjggQEAKICNkZWZpbmUgTkZTNF9PUEFRVUVfTElNSVQgMTAyNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY2xkX2NvbW1hbmQgewotIENsZF9DcmVhdGUsCi0gQ2xkX1JlbW92ZSwKLSBDbGRfQ2hlY2ssCisgIENsZF9DcmVhdGUsCisgIENsZF9SZW1vdmUsCisgIENsZF9DaGVjaywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ2xkX0dyYWNlRG9uZSwKKyAgQ2xkX0dyYWNlRG9uZSwKIH07CiBzdHJ1Y3QgY2xkX25hbWUgewotIHVpbnQxNl90IGNuX2xlbjsKKyAgdWludDE2X3QgY25fbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNuX2lkW05GUzRfT1BBUVVFX0xJTUlUXTsKKyAgdW5zaWduZWQgY2hhciBjbl9pZFtORlM0X09QQVFVRV9MSU1JVF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGNsZF9tc2cgewotIHVpbnQ4X3QgY21fdmVyczsKKyAgdWludDhfdCBjbV92ZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IGNtX2NtZDsKLSBpbnQxNl90IGNtX3N0YXR1czsKLSB1aW50MzJfdCBjbV94aWQ7Ci0gdW5pb24geworICB1aW50OF90IGNtX2NtZDsKKyAgaW50MTZfdCBjbV9zdGF0dXM7CisgIHVpbnQzMl90IGNtX3hpZDsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQ2NF90IGNtX2dyYWNldGltZTsKLSBzdHJ1Y3QgY2xkX25hbWUgY21fbmFtZTsKLSB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGNtX3U7CisgICAgaW50NjRfdCBjbV9ncmFjZXRpbWU7CisgICAgc3RydWN0IGNsZF9uYW1lIGNtX25hbWU7CisgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgY21fdTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvZXhwb3J0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvZXhwb3J0LmgKaW5kZXggNWY4YWQ4OC4uNGQ3YmZhZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL2V4cG9ydC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9leHBvcnQuaApAQCAtMzEsMTYgKzMxLDE4IEBACiAjZGVmaW5lIE5GU0VYUF9BU1lOQyAweDAwMTAKICNkZWZpbmUgTkZTRVhQX0dBVEhFUkVEX1dSSVRFUyAweDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5GU0VYUF9OT1JFQURESVJQTFVTIDB4MDA0MAogI2RlZmluZSBORlNFWFBfTk9ISURFIDB4MDIwMAogI2RlZmluZSBORlNFWFBfTk9TVUJUUkVFQ0hFQ0sgMHgwNDAwCiAjZGVmaW5lIE5GU0VYUF9OT0FVVEhOTE0gMHgwODAwCi0jZGVmaW5lIE5GU0VYUF9NU05GUyAweDEwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5GU0VYUF9NU05GUyAweDEwMDAKICNkZWZpbmUgTkZTRVhQX0ZTSUQgMHgyMDAwCiAjZGVmaW5lIE5GU0VYUF9DUk9TU01PVU5UIDB4NDAwMAogI2RlZmluZSBORlNFWFBfTk9BQ0wgMHg4MDAwCi0jZGVmaW5lIE5GU0VYUF9WNFJPT1QgMHgxMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkZTRVhQX0FMTEZMQUdTIDB4MTdFM0YKLSNkZWZpbmUgTkZTRVhQX1NFQ0lORk9fRkxBR1MgKE5GU0VYUF9SRUFET05MWSB8IE5GU0VYUF9ST09UU1FVQVNIICAgfCBORlNFWFBfQUxMU1FVQVNIICAgfCBORlNFWFBfSU5TRUNVUkVfUE9SVCkKKyNkZWZpbmUgTkZTRVhQX1Y0Uk9PVCAweDEwMDAwCisjZGVmaW5lIE5GU0VYUF9BTExGTEFHUyAweDFGRTdGCisjZGVmaW5lIE5GU0VYUF9TRUNJTkZPX0ZMQUdTIChORlNFWFBfUkVBRE9OTFkgfCBORlNFWFBfUk9PVFNRVUFTSCB8IE5GU0VYUF9BTExTUVVBU0ggfCBORlNFWFBfSU5TRUNVUkVfUE9SVCkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9uZnNmaC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL25mc2ZoLmgKaW5kZXggZDA4OTQxMi4uMjg1OTM2YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL25mc2ZoLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL25mc2ZoLmgKQEAgLTI2LDMzICsyNiwzMyBAQAogI2luY2x1ZGUgPGxpbnV4L25mczQuaD4KIHN0cnVjdCBuZnNfZmhiYXNlX29sZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZiX2Rjb29raWU7Ci0gX191MzIgZmJfaW5vOwotIF9fdTMyIGZiX2RpcmlubzsKLSBfX3UzMiBmYl9kZXY7CisgIF9fdTMyIGZiX2Rjb29raWU7CisgIF9fdTMyIGZiX2lubzsKKyAgX191MzIgZmJfZGlyaW5vOworICBfX3UzMiBmYl9kZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZiX3hkZXY7Ci0gX191MzIgZmJfeGlubzsKLSBfX3UzMiBmYl9nZW5lcmF0aW9uOworICBfX3UzMiBmYl94ZGV2OworICBfX3UzMiBmYl94aW5vOworICBfX3UzMiBmYl9nZW5lcmF0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmZzX2ZoYmFzZV9uZXcgewotIF9fdTggZmJfdmVyc2lvbjsKLSBfX3U4IGZiX2F1dGhfdHlwZTsKLSBfX3U4IGZiX2ZzaWRfdHlwZTsKKyAgX191OCBmYl92ZXJzaW9uOworICBfX3U4IGZiX2F1dGhfdHlwZTsKKyAgX191OCBmYl9mc2lkX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmJfZmlsZWlkX3R5cGU7Ci0gX191MzIgZmJfYXV0aFsxXTsKKyAgX191OCBmYl9maWxlaWRfdHlwZTsKKyAgX191MzIgZmJfYXV0aFsxXTsKIH07CiBzdHJ1Y3Qga25mc2RfZmggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmhfc2l6ZTsKLSB1bmlvbiB7Ci0gc3RydWN0IG5mc19maGJhc2Vfb2xkIGZoX29sZDsKLSBfX3UzMiBmaF9wYWRbTkZTNF9GSFNJWkUvNF07CisgIHVuc2lnbmVkIGludCBmaF9zaXplOworICB1bmlvbiB7CisgICAgc3RydWN0IG5mc19maGJhc2Vfb2xkIGZoX29sZDsKKyAgICBfX3UzMiBmaF9wYWRbTkZTNF9GSFNJWkUgLyA0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG5mc19maGJhc2VfbmV3IGZoX25ldzsKLSB9IGZoX2Jhc2U7CisgICAgc3RydWN0IG5mc19maGJhc2VfbmV3IGZoX25ldzsKKyAgfSBmaF9iYXNlOwogfTsKICNkZWZpbmUgb2ZoX2Rjb29raWUgZmhfYmFzZS5maF9vbGQuZmJfZGNvb2tpZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTY4LDcgKzY4LDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGZoX2F1dGhfdHlwZSBmaF9iYXNlLmZoX25ldy5mYl9hdXRoX3R5cGUKICNkZWZpbmUgZmhfZmlsZWlkX3R5cGUgZmhfYmFzZS5maF9uZXcuZmJfZmlsZWlkX3R5cGUKLSNkZWZpbmUgZmhfYXV0aCBmaF9iYXNlLmZoX25ldy5mYl9hdXRoCiAjZGVmaW5lIGZoX2ZzaWQgZmhfYmFzZS5maF9uZXcuZmJfYXV0aAorI2RlZmluZSBmaF9hdXRoIGZoX2Jhc2UuZmhfbmV3LmZiX2F1dGgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9zdGF0cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL3N0YXRzLmgKaW5kZXggNzU3YjdkNy4uM2M0OWJiYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL3N0YXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL3N0YXRzLmgKQEAgLTE5LDYgKzE5LDYgQEAKICNpZm5kZWYgX1VBUElMSU5VWF9ORlNEX1NUQVRTX0gKICNkZWZpbmUgX1VBUElMSU5VWF9ORlNEX1NUQVRTX0gKICNpbmNsdWRlIDxsaW51eC9uZnM0Lmg+Ci0jZGVmaW5lIE5GU0RfVVNBR0VfV1JBUCAoSFoqMTAwMDAwMCkKKyNkZWZpbmUgTkZTRF9VU0FHRV9XUkFQIChIWiAqIDEwMDAwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25sODAyMTEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmw4MDIxMS5oCmluZGV4IDAxYzUwY2QuLmFlNmQ2ZDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmw4MDIxMS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmw4MDIxMS5oCkBAIC0yMiw0MTYgKzIyLDQzNiBAQAogI2RlZmluZSBOTDgwMjExX0dFTkxfTkFNRSAibmw4MDIxMSIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfY29tbWFuZHMgewotIE5MODAyMTFfQ01EX1VOU1BFQywKLSBOTDgwMjExX0NNRF9HRVRfV0lQSFksCi0gTkw4MDIxMV9DTURfU0VUX1dJUEhZLAorICBOTDgwMjExX0NNRF9VTlNQRUMsCisgIE5MODAyMTFfQ01EX0dFVF9XSVBIWSwKKyAgTkw4MDIxMV9DTURfU0VUX1dJUEhZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9ORVdfV0lQSFksCi0gTkw4MDIxMV9DTURfREVMX1dJUEhZLAotIE5MODAyMTFfQ01EX0dFVF9JTlRFUkZBQ0UsCi0gTkw4MDIxMV9DTURfU0VUX0lOVEVSRkFDRSwKKyAgTkw4MDIxMV9DTURfTkVXX1dJUEhZLAorICBOTDgwMjExX0NNRF9ERUxfV0lQSFksCisgIE5MODAyMTFfQ01EX0dFVF9JTlRFUkZBQ0UsCisgIE5MODAyMTFfQ01EX1NFVF9JTlRFUkZBQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX05FV19JTlRFUkZBQ0UsCi0gTkw4MDIxMV9DTURfREVMX0lOVEVSRkFDRSwKLSBOTDgwMjExX0NNRF9HRVRfS0VZLAotIE5MODAyMTFfQ01EX1NFVF9LRVksCisgIE5MODAyMTFfQ01EX05FV19JTlRFUkZBQ0UsCisgIE5MODAyMTFfQ01EX0RFTF9JTlRFUkZBQ0UsCisgIE5MODAyMTFfQ01EX0dFVF9LRVksCisgIE5MODAyMTFfQ01EX1NFVF9LRVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX05FV19LRVksCi0gTkw4MDIxMV9DTURfREVMX0tFWSwKLSBOTDgwMjExX0NNRF9HRVRfQkVBQ09OLAotIE5MODAyMTFfQ01EX1NFVF9CRUFDT04sCisgIE5MODAyMTFfQ01EX05FV19LRVksCisgIE5MODAyMTFfQ01EX0RFTF9LRVksCisgIE5MODAyMTFfQ01EX0dFVF9CRUFDT04sCisgIE5MODAyMTFfQ01EX1NFVF9CRUFDT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1NUQVJUX0FQLAotIE5MODAyMTFfQ01EX05FV19CRUFDT04gPSBOTDgwMjExX0NNRF9TVEFSVF9BUCwKLSBOTDgwMjExX0NNRF9TVE9QX0FQLAotIE5MODAyMTFfQ01EX0RFTF9CRUFDT04gPSBOTDgwMjExX0NNRF9TVE9QX0FQLAorICBOTDgwMjExX0NNRF9TVEFSVF9BUCwKKyAgTkw4MDIxMV9DTURfTkVXX0JFQUNPTiA9IE5MODAyMTFfQ01EX1NUQVJUX0FQLAorICBOTDgwMjExX0NNRF9TVE9QX0FQLAorICBOTDgwMjExX0NNRF9ERUxfQkVBQ09OID0gTkw4MDIxMV9DTURfU1RPUF9BUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfR0VUX1NUQVRJT04sCi0gTkw4MDIxMV9DTURfU0VUX1NUQVRJT04sCi0gTkw4MDIxMV9DTURfTkVXX1NUQVRJT04sCi0gTkw4MDIxMV9DTURfREVMX1NUQVRJT04sCisgIE5MODAyMTFfQ01EX0dFVF9TVEFUSU9OLAorICBOTDgwMjExX0NNRF9TRVRfU1RBVElPTiwKKyAgTkw4MDIxMV9DTURfTkVXX1NUQVRJT04sCisgIE5MODAyMTFfQ01EX0RFTF9TVEFUSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9HRVRfTVBBVEgsCi0gTkw4MDIxMV9DTURfU0VUX01QQVRILAotIE5MODAyMTFfQ01EX05FV19NUEFUSCwKLSBOTDgwMjExX0NNRF9ERUxfTVBBVEgsCisgIE5MODAyMTFfQ01EX0dFVF9NUEFUSCwKKyAgTkw4MDIxMV9DTURfU0VUX01QQVRILAorICBOTDgwMjExX0NNRF9ORVdfTVBBVEgsCisgIE5MODAyMTFfQ01EX0RFTF9NUEFUSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX0JTUywKLSBOTDgwMjExX0NNRF9TRVRfUkVHLAotIE5MODAyMTFfQ01EX1JFUV9TRVRfUkVHLAotIE5MODAyMTFfQ01EX0dFVF9NRVNIX0NPTkZJRywKKyAgTkw4MDIxMV9DTURfU0VUX0JTUywKKyAgTkw4MDIxMV9DTURfU0VUX1JFRywKKyAgTkw4MDIxMV9DTURfUkVRX1NFVF9SRUcsCisgIE5MODAyMTFfQ01EX0dFVF9NRVNIX0NPTkZJRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX01FU0hfQ09ORklHLAotIE5MODAyMTFfQ01EX1NFVF9NR01UX0VYVFJBX0lFICAsCi0gTkw4MDIxMV9DTURfR0VUX1JFRywKLSBOTDgwMjExX0NNRF9HRVRfU0NBTiwKKyAgTkw4MDIxMV9DTURfU0VUX01FU0hfQ09ORklHLAorICBOTDgwMjExX0NNRF9TRVRfTUdNVF9FWFRSQV9JRSwKKyAgTkw4MDIxMV9DTURfR0VUX1JFRywKKyAgTkw4MDIxMV9DTURfR0VUX1NDQU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1RSSUdHRVJfU0NBTiwKLSBOTDgwMjExX0NNRF9ORVdfU0NBTl9SRVNVTFRTLAotIE5MODAyMTFfQ01EX1NDQU5fQUJPUlRFRCwKLSBOTDgwMjExX0NNRF9SRUdfQ0hBTkdFLAorICBOTDgwMjExX0NNRF9UUklHR0VSX1NDQU4sCisgIE5MODAyMTFfQ01EX05FV19TQ0FOX1JFU1VMVFMsCisgIE5MODAyMTFfQ01EX1NDQU5fQUJPUlRFRCwKKyAgTkw4MDIxMV9DTURfUkVHX0NIQU5HRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfQVVUSEVOVElDQVRFLAotIE5MODAyMTFfQ01EX0FTU09DSUFURSwKLSBOTDgwMjExX0NNRF9ERUFVVEhFTlRJQ0FURSwKLSBOTDgwMjExX0NNRF9ESVNBU1NPQ0lBVEUsCisgIE5MODAyMTFfQ01EX0FVVEhFTlRJQ0FURSwKKyAgTkw4MDIxMV9DTURfQVNTT0NJQVRFLAorICBOTDgwMjExX0NNRF9ERUFVVEhFTlRJQ0FURSwKKyAgTkw4MDIxMV9DTURfRElTQVNTT0NJQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9NSUNIQUVMX01JQ19GQUlMVVJFLAotIE5MODAyMTFfQ01EX1JFR19CRUFDT05fSElOVCwKLSBOTDgwMjExX0NNRF9KT0lOX0lCU1MsCi0gTkw4MDIxMV9DTURfTEVBVkVfSUJTUywKKyAgTkw4MDIxMV9DTURfTUlDSEFFTF9NSUNfRkFJTFVSRSwKKyAgTkw4MDIxMV9DTURfUkVHX0JFQUNPTl9ISU5ULAorICBOTDgwMjExX0NNRF9KT0lOX0lCU1MsCisgIE5MODAyMTFfQ01EX0xFQVZFX0lCU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1RFU1RNT0RFLAotIE5MODAyMTFfQ01EX0NPTk5FQ1QsCi0gTkw4MDIxMV9DTURfUk9BTSwKLSBOTDgwMjExX0NNRF9ESVNDT05ORUNULAorICBOTDgwMjExX0NNRF9URVNUTU9ERSwKKyAgTkw4MDIxMV9DTURfQ09OTkVDVCwKKyAgTkw4MDIxMV9DTURfUk9BTSwKKyAgTkw4MDIxMV9DTURfRElTQ09OTkVDVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX1dJUEhZX05FVE5TLAotIE5MODAyMTFfQ01EX0dFVF9TVVJWRVksCi0gTkw4MDIxMV9DTURfTkVXX1NVUlZFWV9SRVNVTFRTLAotIE5MODAyMTFfQ01EX1NFVF9QTUtTQSwKKyAgTkw4MDIxMV9DTURfU0VUX1dJUEhZX05FVE5TLAorICBOTDgwMjExX0NNRF9HRVRfU1VSVkVZLAorICBOTDgwMjExX0NNRF9ORVdfU1VSVkVZX1JFU1VMVFMsCisgIE5MODAyMTFfQ01EX1NFVF9QTUtTQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfREVMX1BNS1NBLAotIE5MODAyMTFfQ01EX0ZMVVNIX1BNS1NBLAotIE5MODAyMTFfQ01EX1JFTUFJTl9PTl9DSEFOTkVMLAotIE5MODAyMTFfQ01EX0NBTkNFTF9SRU1BSU5fT05fQ0hBTk5FTCwKKyAgTkw4MDIxMV9DTURfREVMX1BNS1NBLAorICBOTDgwMjExX0NNRF9GTFVTSF9QTUtTQSwKKyAgTkw4MDIxMV9DTURfUkVNQUlOX09OX0NIQU5ORUwsCisgIE5MODAyMTFfQ01EX0NBTkNFTF9SRU1BSU5fT05fQ0hBTk5FTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX1RYX0JJVFJBVEVfTUFTSywKLSBOTDgwMjExX0NNRF9SRUdJU1RFUl9GUkFNRSwKLSBOTDgwMjExX0NNRF9SRUdJU1RFUl9BQ1RJT04gPSBOTDgwMjExX0NNRF9SRUdJU1RFUl9GUkFNRSwKLSBOTDgwMjExX0NNRF9GUkFNRSwKKyAgTkw4MDIxMV9DTURfU0VUX1RYX0JJVFJBVEVfTUFTSywKKyAgTkw4MDIxMV9DTURfUkVHSVNURVJfRlJBTUUsCisgIE5MODAyMTFfQ01EX1JFR0lTVEVSX0FDVElPTiA9IE5MODAyMTFfQ01EX1JFR0lTVEVSX0ZSQU1FLAorICBOTDgwMjExX0NNRF9GUkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfQUNUSU9OID0gTkw4MDIxMV9DTURfRlJBTUUsCi0gTkw4MDIxMV9DTURfRlJBTUVfVFhfU1RBVFVTLAotIE5MODAyMTFfQ01EX0FDVElPTl9UWF9TVEFUVVMgPSBOTDgwMjExX0NNRF9GUkFNRV9UWF9TVEFUVVMsCi0gTkw4MDIxMV9DTURfU0VUX1BPV0VSX1NBVkUsCisgIE5MODAyMTFfQ01EX0FDVElPTiA9IE5MODAyMTFfQ01EX0ZSQU1FLAorICBOTDgwMjExX0NNRF9GUkFNRV9UWF9TVEFUVVMsCisgIE5MODAyMTFfQ01EX0FDVElPTl9UWF9TVEFUVVMgPSBOTDgwMjExX0NNRF9GUkFNRV9UWF9TVEFUVVMsCisgIE5MODAyMTFfQ01EX1NFVF9QT1dFUl9TQVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9HRVRfUE9XRVJfU0FWRSwKLSBOTDgwMjExX0NNRF9TRVRfQ1FNLAotIE5MODAyMTFfQ01EX05PVElGWV9DUU0sCi0gTkw4MDIxMV9DTURfU0VUX0NIQU5ORUwsCisgIE5MODAyMTFfQ01EX0dFVF9QT1dFUl9TQVZFLAorICBOTDgwMjExX0NNRF9TRVRfQ1FNLAorICBOTDgwMjExX0NNRF9OT1RJRllfQ1FNLAorICBOTDgwMjExX0NNRF9TRVRfQ0hBTk5FTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX1dEU19QRUVSLAotIE5MODAyMTFfQ01EX0ZSQU1FX1dBSVRfQ0FOQ0VMLAotIE5MODAyMTFfQ01EX0pPSU5fTUVTSCwKLSBOTDgwMjExX0NNRF9MRUFWRV9NRVNILAorICBOTDgwMjExX0NNRF9TRVRfV0RTX1BFRVIsCisgIE5MODAyMTFfQ01EX0ZSQU1FX1dBSVRfQ0FOQ0VMLAorICBOTDgwMjExX0NNRF9KT0lOX01FU0gsCisgIE5MODAyMTFfQ01EX0xFQVZFX01FU0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1VOUFJPVF9ERUFVVEhFTlRJQ0FURSwKLSBOTDgwMjExX0NNRF9VTlBST1RfRElTQVNTT0NJQVRFLAotIE5MODAyMTFfQ01EX05FV19QRUVSX0NBTkRJREFURSwKLSBOTDgwMjExX0NNRF9HRVRfV09XTEFOLAorICBOTDgwMjExX0NNRF9VTlBST1RfREVBVVRIRU5USUNBVEUsCisgIE5MODAyMTFfQ01EX1VOUFJPVF9ESVNBU1NPQ0lBVEUsCisgIE5MODAyMTFfQ01EX05FV19QRUVSX0NBTkRJREFURSwKKyAgTkw4MDIxMV9DTURfR0VUX1dPV0xBTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU0VUX1dPV0xBTiwKLSBOTDgwMjExX0NNRF9TVEFSVF9TQ0hFRF9TQ0FOLAotIE5MODAyMTFfQ01EX1NUT1BfU0NIRURfU0NBTiwKLSBOTDgwMjExX0NNRF9TQ0hFRF9TQ0FOX1JFU1VMVFMsCisgIE5MODAyMTFfQ01EX1NFVF9XT1dMQU4sCisgIE5MODAyMTFfQ01EX1NUQVJUX1NDSEVEX1NDQU4sCisgIE5MODAyMTFfQ01EX1NUT1BfU0NIRURfU0NBTiwKKyAgTkw4MDIxMV9DTURfU0NIRURfU0NBTl9SRVNVTFRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TQ0hFRF9TQ0FOX1NUT1BQRUQsCi0gTkw4MDIxMV9DTURfU0VUX1JFS0VZX09GRkxPQUQsCi0gTkw4MDIxMV9DTURfUE1LU0FfQ0FORElEQVRFLAotIE5MODAyMTFfQ01EX1RETFNfT1BFUiwKKyAgTkw4MDIxMV9DTURfU0NIRURfU0NBTl9TVE9QUEVELAorICBOTDgwMjExX0NNRF9TRVRfUkVLRVlfT0ZGTE9BRCwKKyAgTkw4MDIxMV9DTURfUE1LU0FfQ0FORElEQVRFLAorICBOTDgwMjExX0NNRF9URExTX09QRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1RETFNfTUdNVCwKLSBOTDgwMjExX0NNRF9VTkVYUEVDVEVEX0ZSQU1FLAotIE5MODAyMTFfQ01EX1BST0JFX0NMSUVOVCwKLSBOTDgwMjExX0NNRF9SRUdJU1RFUl9CRUFDT05TLAorICBOTDgwMjExX0NNRF9URExTX01HTVQsCisgIE5MODAyMTFfQ01EX1VORVhQRUNURURfRlJBTUUsCisgIE5MODAyMTFfQ01EX1BST0JFX0NMSUVOVCwKKyAgTkw4MDIxMV9DTURfUkVHSVNURVJfQkVBQ09OUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfVU5FWFBFQ1RFRF80QUREUl9GUkFNRSwKLSBOTDgwMjExX0NNRF9TRVRfTk9BQ0tfTUFQLAotIE5MODAyMTFfQ01EX0NIX1NXSVRDSF9OT1RJRlksCi0gTkw4MDIxMV9DTURfU1RBUlRfUDJQX0RFVklDRSwKKyAgTkw4MDIxMV9DTURfVU5FWFBFQ1RFRF80QUREUl9GUkFNRSwKKyAgTkw4MDIxMV9DTURfU0VUX05PQUNLX01BUCwKKyAgTkw4MDIxMV9DTURfQ0hfU1dJVENIX05PVElGWSwKKyAgTkw4MDIxMV9DTURfU1RBUlRfUDJQX0RFVklDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU1RPUF9QMlBfREVWSUNFLAotIE5MODAyMTFfQ01EX0NPTk5fRkFJTEVELAotIE5MODAyMTFfQ01EX1NFVF9NQ0FTVF9SQVRFLAotIE5MODAyMTFfQ01EX1NFVF9NQUNfQUNMLAorICBOTDgwMjExX0NNRF9TVE9QX1AyUF9ERVZJQ0UsCisgIE5MODAyMTFfQ01EX0NPTk5fRkFJTEVELAorICBOTDgwMjExX0NNRF9TRVRfTUNBU1RfUkFURSwKKyAgTkw4MDIxMV9DTURfU0VUX01BQ19BQ0wsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1JBREFSX0RFVEVDVCwKLSBOTDgwMjExX0NNRF9HRVRfUFJPVE9DT0xfRkVBVFVSRVMsCi0gTkw4MDIxMV9DTURfVVBEQVRFX0ZUX0lFUywKLSBOTDgwMjExX0NNRF9GVF9FVkVOVCwKKyAgTkw4MDIxMV9DTURfUkFEQVJfREVURUNULAorICBOTDgwMjExX0NNRF9HRVRfUFJPVE9DT0xfRkVBVFVSRVMsCisgIE5MODAyMTFfQ01EX1VQREFURV9GVF9JRVMsCisgIE5MODAyMTFfQ01EX0ZUX0VWRU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9DUklUX1BST1RPQ09MX1NUQVJULAotIE5MODAyMTFfQ01EX0NSSVRfUFJPVE9DT0xfU1RPUCwKLSBOTDgwMjExX0NNRF9HRVRfQ09BTEVTQ0UsCi0gTkw4MDIxMV9DTURfU0VUX0NPQUxFU0NFLAorICBOTDgwMjExX0NNRF9DUklUX1BST1RPQ09MX1NUQVJULAorICBOTDgwMjExX0NNRF9DUklUX1BST1RPQ09MX1NUT1AsCisgIE5MODAyMTFfQ01EX0dFVF9DT0FMRVNDRSwKKyAgTkw4MDIxMV9DTURfU0VUX0NPQUxFU0NFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9DSEFOTkVMX1NXSVRDSCwKLSBOTDgwMjExX0NNRF9WRU5ET1IsCi0gTkw4MDIxMV9DTURfU0VUX1FPU19NQVAsCi0gX19OTDgwMjExX0NNRF9BRlRFUl9MQVNULAorICBOTDgwMjExX0NNRF9DSEFOTkVMX1NXSVRDSCwKKyAgTkw4MDIxMV9DTURfVkVORE9SLAorICBOTDgwMjExX0NNRF9TRVRfUU9TX01BUCwKKyAgTkw4MDIxMV9DTURfQUREX1RYX1RTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9NQVggPSBfX05MODAyMTFfQ01EX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfQ01EX0RFTF9UWF9UUywKKyAgX19OTDgwMjExX0NNRF9BRlRFUl9MQVNULAorICBOTDgwMjExX0NNRF9NQVggPSBfX05MODAyMTFfQ01EX0FGVEVSX0xBU1QgLSAxCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9DTURfU0VUX0JTUyBOTDgwMjExX0NNRF9TRVRfQlNTCiAjZGVmaW5lIE5MODAyMTFfQ01EX1NFVF9NR01UX0VYVFJBX0lFIE5MODAyMTFfQ01EX1NFVF9NR01UX0VYVFJBX0lFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0NNRF9SRUdfQ0hBTkdFIE5MODAyMTFfQ01EX1JFR19DSEFOR0UKICNkZWZpbmUgTkw4MDIxMV9DTURfQVVUSEVOVElDQVRFIE5MODAyMTFfQ01EX0FVVEhFTlRJQ0FURQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9DTURfQVNTT0NJQVRFIE5MODAyMTFfQ01EX0FTU09DSUFURQogI2RlZmluZSBOTDgwMjExX0NNRF9ERUFVVEhFTlRJQ0FURSBOTDgwMjExX0NNRF9ERUFVVEhFTlRJQ0FURQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9DTURfRElTQVNTT0NJQVRFIE5MODAyMTFfQ01EX0RJU0FTU09DSUFURQogI2RlZmluZSBOTDgwMjExX0NNRF9SRUdfQkVBQ09OX0hJTlQgTkw4MDIxMV9DTURfUkVHX0JFQUNPTl9ISU5UCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0FUVFJfRkVBVFVSRV9GTEFHUyBOTDgwMjExX0FUVFJfRkVBVFVSRV9GTEFHUwogI2RlZmluZSBOTDgwMjExX0NNRF9HRVRfTUVTSF9QQVJBTVMgTkw4MDIxMV9DTURfR0VUX01FU0hfQ09ORklHCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0NNRF9TRVRfTUVTSF9QQVJBTVMgTkw4MDIxMV9DTURfU0VUX01FU0hfQ09ORklHCiAjZGVmaW5lIE5MODAyMTFfTUVTSF9TRVRVUF9WRU5ET1JfUEFUSF9TRUxfSUUgTkw4MDIxMV9NRVNIX1NFVFVQX0lFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2F0dHJzIHsKLSBOTDgwMjExX0FUVFJfVU5TUEVDLAorICBOTDgwMjExX0FUVFJfVU5TUEVDLAorICBOTDgwMjExX0FUVFJfV0lQSFksCisgIE5MODAyMTFfQVRUUl9XSVBIWV9OQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0lQSFksCi0gTkw4MDIxMV9BVFRSX1dJUEhZX05BTUUsCi0gTkw4MDIxMV9BVFRSX0lGSU5ERVgsCi0gTkw4MDIxMV9BVFRSX0lGTkFNRSwKKyAgTkw4MDIxMV9BVFRSX0lGSU5ERVgsCisgIE5MODAyMTFfQVRUUl9JRk5BTUUsCisgIE5MODAyMTFfQVRUUl9JRlRZUEUsCisgIE5MODAyMTFfQVRUUl9NQUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9JRlRZUEUsCi0gTkw4MDIxMV9BVFRSX01BQywKLSBOTDgwMjExX0FUVFJfS0VZX0RBVEEsCi0gTkw4MDIxMV9BVFRSX0tFWV9JRFgsCisgIE5MODAyMTFfQVRUUl9LRVlfREFUQSwKKyAgTkw4MDIxMV9BVFRSX0tFWV9JRFgsCisgIE5MODAyMTFfQVRUUl9LRVlfQ0lQSEVSLAorICBOTDgwMjExX0FUVFJfS0VZX1NFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0tFWV9DSVBIRVIsCi0gTkw4MDIxMV9BVFRSX0tFWV9TRVEsCi0gTkw4MDIxMV9BVFRSX0tFWV9ERUZBVUxULAotIE5MODAyMTFfQVRUUl9CRUFDT05fSU5URVJWQUwsCisgIE5MODAyMTFfQVRUUl9LRVlfREVGQVVMVCwKKyAgTkw4MDIxMV9BVFRSX0JFQUNPTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9BVFRSX0RUSU1fUEVSSU9ELAorICBOTDgwMjExX0FUVFJfQkVBQ09OX0hFQUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9EVElNX1BFUklPRCwKLSBOTDgwMjExX0FUVFJfQkVBQ09OX0hFQUQsCi0gTkw4MDIxMV9BVFRSX0JFQUNPTl9UQUlMLAotIE5MODAyMTFfQVRUUl9TVEFfQUlELAorICBOTDgwMjExX0FUVFJfQkVBQ09OX1RBSUwsCisgIE5MODAyMTFfQVRUUl9TVEFfQUlELAorICBOTDgwMjExX0FUVFJfU1RBX0ZMQUdTLAorICBOTDgwMjExX0FUVFJfU1RBX0xJU1RFTl9JTlRFUlZBTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1NUQV9GTEFHUywKLSBOTDgwMjExX0FUVFJfU1RBX0xJU1RFTl9JTlRFUlZBTCwKLSBOTDgwMjExX0FUVFJfU1RBX1NVUFBPUlRFRF9SQVRFUywKLSBOTDgwMjExX0FUVFJfU1RBX1ZMQU4sCisgIE5MODAyMTFfQVRUUl9TVEFfU1VQUE9SVEVEX1JBVEVTLAorICBOTDgwMjExX0FUVFJfU1RBX1ZMQU4sCisgIE5MODAyMTFfQVRUUl9TVEFfSU5GTywKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0JBTkRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfU1RBX0lORk8sCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0JBTkRTLAotIE5MODAyMTFfQVRUUl9NTlRSX0ZMQUdTLAotIE5MODAyMTFfQVRUUl9NRVNIX0lELAorICBOTDgwMjExX0FUVFJfTU5UUl9GTEFHUywKKyAgTkw4MDIxMV9BVFRSX01FU0hfSUQsCisgIE5MODAyMTFfQVRUUl9TVEFfUExJTktfQUNUSU9OLAorICBOTDgwMjExX0FUVFJfTVBBVEhfTkVYVF9IT1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TVEFfUExJTktfQUNUSU9OLAotIE5MODAyMTFfQVRUUl9NUEFUSF9ORVhUX0hPUCwKLSBOTDgwMjExX0FUVFJfTVBBVEhfSU5GTywKLSBOTDgwMjExX0FUVFJfQlNTX0NUU19QUk9ULAorICBOTDgwMjExX0FUVFJfTVBBVEhfSU5GTywKKyAgTkw4MDIxMV9BVFRSX0JTU19DVFNfUFJPVCwKKyAgTkw4MDIxMV9BVFRSX0JTU19TSE9SVF9QUkVBTUJMRSwKKyAgTkw4MDIxMV9BVFRSX0JTU19TSE9SVF9TTE9UX1RJTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9CU1NfU0hPUlRfUFJFQU1CTEUsCi0gTkw4MDIxMV9BVFRSX0JTU19TSE9SVF9TTE9UX1RJTUUsCi0gTkw4MDIxMV9BVFRSX0hUX0NBUEFCSUxJVFksCi0gTkw4MDIxMV9BVFRSX1NVUFBPUlRFRF9JRlRZUEVTLAorICBOTDgwMjExX0FUVFJfSFRfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRFRF9JRlRZUEVTLAorICBOTDgwMjExX0FUVFJfUkVHX0FMUEhBMiwKKyAgTkw4MDIxMV9BVFRSX1JFR19SVUxFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1JFR19BTFBIQTIsCi0gTkw4MDIxMV9BVFRSX1JFR19SVUxFUywKLSBOTDgwMjExX0FUVFJfTUVTSF9DT05GSUcsCi0gTkw4MDIxMV9BVFRSX0JTU19CQVNJQ19SQVRFUywKKyAgTkw4MDIxMV9BVFRSX01FU0hfQ09ORklHLAorICBOTDgwMjExX0FUVFJfQlNTX0JBU0lDX1JBVEVTLAorICBOTDgwMjExX0FUVFJfV0lQSFlfVFhRX1BBUkFNUywKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0ZSRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9XSVBIWV9UWFFfUEFSQU1TLAotIE5MODAyMTFfQVRUUl9XSVBIWV9GUkVRLAotIE5MODAyMTFfQVRUUl9XSVBIWV9DSEFOTkVMX1RZUEUsCi0gTkw4MDIxMV9BVFRSX0tFWV9ERUZBVUxUX01HTVQsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9DSEFOTkVMX1RZUEUsCisgIE5MODAyMTFfQVRUUl9LRVlfREVGQVVMVF9NR01ULAorICBOTDgwMjExX0FUVFJfTUdNVF9TVUJUWVBFLAorICBOTDgwMjExX0FUVFJfSUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9NR01UX1NVQlRZUEUsCi0gTkw4MDIxMV9BVFRSX0lFLAotIE5MODAyMTFfQVRUUl9NQVhfTlVNX1NDQU5fU1NJRFMsCi0gTkw4MDIxMV9BVFRSX1NDQU5fRlJFUVVFTkNJRVMsCisgIE5MODAyMTFfQVRUUl9NQVhfTlVNX1NDQU5fU1NJRFMsCisgIE5MODAyMTFfQVRUUl9TQ0FOX0ZSRVFVRU5DSUVTLAorICBOTDgwMjExX0FUVFJfU0NBTl9TU0lEUywKKyAgTkw4MDIxMV9BVFRSX0dFTkVSQVRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TQ0FOX1NTSURTLAotIE5MODAyMTFfQVRUUl9HRU5FUkFUSU9OLAotIE5MODAyMTFfQVRUUl9CU1MsCi0gTkw4MDIxMV9BVFRSX1JFR19JTklUSUFUT1IsCisgIE5MODAyMTFfQVRUUl9CU1MsCisgIE5MODAyMTFfQVRUUl9SRUdfSU5JVElBVE9SLAorICBOTDgwMjExX0FUVFJfUkVHX1RZUEUsCisgIE5MODAyMTFfQVRUUl9TVVBQT1JURURfQ09NTUFORFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9SRUdfVFlQRSwKLSBOTDgwMjExX0FUVFJfU1VQUE9SVEVEX0NPTU1BTkRTLAotIE5MODAyMTFfQVRUUl9GUkFNRSwKLSBOTDgwMjExX0FUVFJfU1NJRCwKKyAgTkw4MDIxMV9BVFRSX0ZSQU1FLAorICBOTDgwMjExX0FUVFJfU1NJRCwKKyAgTkw4MDIxMV9BVFRSX0FVVEhfVFlQRSwKKyAgTkw4MDIxMV9BVFRSX1JFQVNPTl9DT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfQVVUSF9UWVBFLAotIE5MODAyMTFfQVRUUl9SRUFTT05fQ09ERSwKLSBOTDgwMjExX0FUVFJfS0VZX1RZUEUsCi0gTkw4MDIxMV9BVFRSX01BWF9TQ0FOX0lFX0xFTiwKKyAgTkw4MDIxMV9BVFRSX0tFWV9UWVBFLAorICBOTDgwMjExX0FUVFJfTUFYX1NDQU5fSUVfTEVOLAorICBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFUywKKyAgTkw4MDIxMV9BVFRSX0ZSRVFfQkVGT1JFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFUywKLSBOTDgwMjExX0FUVFJfRlJFUV9CRUZPUkUsCi0gTkw4MDIxMV9BVFRSX0ZSRVFfQUZURVIsCi0gTkw4MDIxMV9BVFRSX0ZSRVFfRklYRUQsCisgIE5MODAyMTFfQVRUUl9GUkVRX0FGVEVSLAorICBOTDgwMjExX0FUVFJfRlJFUV9GSVhFRCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX1JFVFJZX1NIT1JULAorICBOTDgwMjExX0FUVFJfV0lQSFlfUkVUUllfTE9ORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dJUEhZX1JFVFJZX1NIT1JULAotIE5MODAyMTFfQVRUUl9XSVBIWV9SRVRSWV9MT05HLAotIE5MODAyMTFfQVRUUl9XSVBIWV9GUkFHX1RIUkVTSE9MRCwKLSBOTDgwMjExX0FUVFJfV0lQSFlfUlRTX1RIUkVTSE9MRCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0ZSQUdfVEhSRVNIT0xELAorICBOTDgwMjExX0FUVFJfV0lQSFlfUlRTX1RIUkVTSE9MRCwKKyAgTkw4MDIxMV9BVFRSX1RJTUVEX09VVCwKKyAgTkw4MDIxMV9BVFRSX1VTRV9NRlAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9USU1FRF9PVVQsCi0gTkw4MDIxMV9BVFRSX1VTRV9NRlAsCi0gTkw4MDIxMV9BVFRSX1NUQV9GTEFHUzIsCi0gTkw4MDIxMV9BVFRSX0NPTlRST0xfUE9SVCwKKyAgTkw4MDIxMV9BVFRSX1NUQV9GTEFHUzIsCisgIE5MODAyMTFfQVRUUl9DT05UUk9MX1BPUlQsCisgIE5MODAyMTFfQVRUUl9URVNUREFUQSwKKyAgTkw4MDIxMV9BVFRSX1BSSVZBQ1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9URVNUREFUQSwKLSBOTDgwMjExX0FUVFJfUFJJVkFDWSwKLSBOTDgwMjExX0FUVFJfRElTQ09OTkVDVEVEX0JZX0FQLAotIE5MODAyMTFfQVRUUl9TVEFUVVNfQ09ERSwKKyAgTkw4MDIxMV9BVFRSX0RJU0NPTk5FQ1RFRF9CWV9BUCwKKyAgTkw4MDIxMV9BVFRSX1NUQVRVU19DT0RFLAorICBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFU19QQUlSV0lTRSwKKyAgTkw4MDIxMV9BVFRSX0NJUEhFUl9TVUlURV9HUk9VUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NJUEhFUl9TVUlURVNfUEFJUldJU0UsCi0gTkw4MDIxMV9BVFRSX0NJUEhFUl9TVUlURV9HUk9VUCwKLSBOTDgwMjExX0FUVFJfV1BBX1ZFUlNJT05TLAotIE5MODAyMTFfQVRUUl9BS01fU1VJVEVTLAorICBOTDgwMjExX0FUVFJfV1BBX1ZFUlNJT05TLAorICBOTDgwMjExX0FUVFJfQUtNX1NVSVRFUywKKyAgTkw4MDIxMV9BVFRSX1JFUV9JRSwKKyAgTkw4MDIxMV9BVFRSX1JFU1BfSUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9SRVFfSUUsCi0gTkw4MDIxMV9BVFRSX1JFU1BfSUUsCi0gTkw4MDIxMV9BVFRSX1BSRVZfQlNTSUQsCi0gTkw4MDIxMV9BVFRSX0tFWSwKKyAgTkw4MDIxMV9BVFRSX1BSRVZfQlNTSUQsCisgIE5MODAyMTFfQVRUUl9LRVksCisgIE5MODAyMTFfQVRUUl9LRVlTLAorICBOTDgwMjExX0FUVFJfUElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfS0VZUywKLSBOTDgwMjExX0FUVFJfUElELAotIE5MODAyMTFfQVRUUl80QUREUiwKLSBOTDgwMjExX0FUVFJfU1VSVkVZX0lORk8sCisgIE5MODAyMTFfQVRUUl80QUREUiwKKyAgTkw4MDIxMV9BVFRSX1NVUlZFWV9JTkZPLAorICBOTDgwMjExX0FUVFJfUE1LSUQsCisgIE5MODAyMTFfQVRUUl9NQVhfTlVNX1BNS0lEUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1BNS0lELAotIE5MODAyMTFfQVRUUl9NQVhfTlVNX1BNS0lEUywKLSBOTDgwMjExX0FUVFJfRFVSQVRJT04sCi0gTkw4MDIxMV9BVFRSX0NPT0tJRSwKKyAgTkw4MDIxMV9BVFRSX0RVUkFUSU9OLAorICBOTDgwMjExX0FUVFJfQ09PS0lFLAorICBOTDgwMjExX0FUVFJfV0lQSFlfQ09WRVJBR0VfQ0xBU1MsCisgIE5MODAyMTFfQVRUUl9UWF9SQVRFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0NPVkVSQUdFX0NMQVNTLAotIE5MODAyMTFfQVRUUl9UWF9SQVRFUywKLSBOTDgwMjExX0FUVFJfRlJBTUVfTUFUQ0gsCi0gTkw4MDIxMV9BVFRSX0FDSywKKyAgTkw4MDIxMV9BVFRSX0ZSQU1FX01BVENILAorICBOTDgwMjExX0FUVFJfQUNLLAorICBOTDgwMjExX0FUVFJfUFNfU1RBVEUsCisgIE5MODAyMTFfQVRUUl9DUU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9QU19TVEFURSwKLSBOTDgwMjExX0FUVFJfQ1FNLAotIE5MODAyMTFfQVRUUl9MT0NBTF9TVEFURV9DSEFOR0UsCi0gTkw4MDIxMV9BVFRSX0FQX0lTT0xBVEUsCisgIE5MODAyMTFfQVRUUl9MT0NBTF9TVEFURV9DSEFOR0UsCisgIE5MODAyMTFfQVRUUl9BUF9JU09MQVRFLAorICBOTDgwMjExX0FUVFJfV0lQSFlfVFhfUE9XRVJfU0VUVElORywKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX1RYX1BPV0VSX0xFVkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0lQSFlfVFhfUE9XRVJfU0VUVElORywKLSBOTDgwMjExX0FUVFJfV0lQSFlfVFhfUE9XRVJfTEVWRUwsCi0gTkw4MDIxMV9BVFRSX1RYX0ZSQU1FX1RZUEVTLAotIE5MODAyMTFfQVRUUl9SWF9GUkFNRV9UWVBFUywKKyAgTkw4MDIxMV9BVFRSX1RYX0ZSQU1FX1RZUEVTLAorICBOTDgwMjExX0FUVFJfUlhfRlJBTUVfVFlQRVMsCisgIE5MODAyMTFfQVRUUl9GUkFNRV9UWVBFLAorICBOTDgwMjExX0FUVFJfQ09OVFJPTF9QT1JUX0VUSEVSVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0ZSQU1FX1RZUEUsCi0gTkw4MDIxMV9BVFRSX0NPTlRST0xfUE9SVF9FVEhFUlRZUEUsCi0gTkw4MDIxMV9BVFRSX0NPTlRST0xfUE9SVF9OT19FTkNSWVBULAotIE5MODAyMTFfQVRUUl9TVVBQT1JUX0lCU1NfUlNOLAorICBOTDgwMjExX0FUVFJfQ09OVFJPTF9QT1JUX05PX0VOQ1JZUFQsCisgIE5MODAyMTFfQVRUUl9TVVBQT1JUX0lCU1NfUlNOLAorICBOTDgwMjExX0FUVFJfV0lQSFlfQU5URU5OQV9UWCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0FOVEVOTkFfUlgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX1RYLAotIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX1JYLAotIE5MODAyMTFfQVRUUl9NQ0FTVF9SQVRFLAotIE5MODAyMTFfQVRUUl9PRkZDSEFOTkVMX1RYX09LLAorICBOTDgwMjExX0FUVFJfTUNBU1RfUkFURSwKKyAgTkw4MDIxMV9BVFRSX09GRkNIQU5ORUxfVFhfT0ssCisgIE5MODAyMTFfQVRUUl9CU1NfSFRfT1BNT0RFLAorICBOTDgwMjExX0FUVFJfS0VZX0RFRkFVTFRfVFlQRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9CU1NfSFRfT1BNT0RFLAotIE5MODAyMTFfQVRUUl9LRVlfREVGQVVMVF9UWVBFUywKLSBOTDgwMjExX0FUVFJfTUFYX1JFTUFJTl9PTl9DSEFOTkVMX0RVUkFUSU9OLAotIE5MODAyMTFfQVRUUl9NRVNIX1NFVFVQLAorICBOTDgwMjExX0FUVFJfTUFYX1JFTUFJTl9PTl9DSEFOTkVMX0RVUkFUSU9OLAorICBOTDgwMjExX0FUVFJfTUVTSF9TRVRVUCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0FOVEVOTkFfQVZBSUxfVFgsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX0FWQUlMX1JYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0lQSFlfQU5URU5OQV9BVkFJTF9UWCwKLSBOTDgwMjExX0FUVFJfV0lQSFlfQU5URU5OQV9BVkFJTF9SWCwKLSBOTDgwMjExX0FUVFJfU1VQUE9SVF9NRVNIX0FVVEgsCi0gTkw4MDIxMV9BVFRSX1NUQV9QTElOS19TVEFURSwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRfTUVTSF9BVVRILAorICBOTDgwMjExX0FUVFJfU1RBX1BMSU5LX1NUQVRFLAorICBOTDgwMjExX0FUVFJfV09XTEFOX1RSSUdHRVJTLAorICBOTDgwMjExX0FUVFJfV09XTEFOX1RSSUdHRVJTX1NVUFBPUlRFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dPV0xBTl9UUklHR0VSUywKLSBOTDgwMjExX0FUVFJfV09XTEFOX1RSSUdHRVJTX1NVUFBPUlRFRCwKLSBOTDgwMjExX0FUVFJfU0NIRURfU0NBTl9JTlRFUlZBTCwKLSBOTDgwMjExX0FUVFJfSU5URVJGQUNFX0NPTUJJTkFUSU9OUywKKyAgTkw4MDIxMV9BVFRSX1NDSEVEX1NDQU5fSU5URVJWQUwsCisgIE5MODAyMTFfQVRUUl9JTlRFUkZBQ0VfQ09NQklOQVRJT05TLAorICBOTDgwMjExX0FUVFJfU09GVFdBUkVfSUZUWVBFUywKKyAgTkw4MDIxMV9BVFRSX1JFS0VZX0RBVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TT0ZUV0FSRV9JRlRZUEVTLAotIE5MODAyMTFfQVRUUl9SRUtFWV9EQVRBLAotIE5MODAyMTFfQVRUUl9NQVhfTlVNX1NDSEVEX1NDQU5fU1NJRFMsCi0gTkw4MDIxMV9BVFRSX01BWF9TQ0hFRF9TQ0FOX0lFX0xFTiwKKyAgTkw4MDIxMV9BVFRSX01BWF9OVU1fU0NIRURfU0NBTl9TU0lEUywKKyAgTkw4MDIxMV9BVFRSX01BWF9TQ0hFRF9TQ0FOX0lFX0xFTiwKKyAgTkw4MDIxMV9BVFRSX1NDQU5fU1VQUF9SQVRFUywKKyAgTkw4MDIxMV9BVFRSX0hJRERFTl9TU0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfU0NBTl9TVVBQX1JBVEVTLAotIE5MODAyMTFfQVRUUl9ISURERU5fU1NJRCwKLSBOTDgwMjExX0FUVFJfSUVfUFJPQkVfUkVTUCwKLSBOTDgwMjExX0FUVFJfSUVfQVNTT0NfUkVTUCwKKyAgTkw4MDIxMV9BVFRSX0lFX1BST0JFX1JFU1AsCisgIE5MODAyMTFfQVRUUl9JRV9BU1NPQ19SRVNQLAorICBOTDgwMjExX0FUVFJfU1RBX1dNRSwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRfQVBfVUFQU0QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TVEFfV01FLAotIE5MODAyMTFfQVRUUl9TVVBQT1JUX0FQX1VBUFNELAotIE5MODAyMTFfQVRUUl9ST0FNX1NVUFBPUlQsCi0gTkw4MDIxMV9BVFRSX1NDSEVEX1NDQU5fTUFUQ0gsCisgIE5MODAyMTFfQVRUUl9ST0FNX1NVUFBPUlQsCisgIE5MODAyMTFfQVRUUl9TQ0hFRF9TQ0FOX01BVENILAorICBOTDgwMjExX0FUVFJfTUFYX01BVENIX1NFVFMsCisgIE5MODAyMTFfQVRUUl9QTUtTQV9DQU5ESURBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9NQVhfTUFUQ0hfU0VUUywKLSBOTDgwMjExX0FUVFJfUE1LU0FfQ0FORElEQVRFLAotIE5MODAyMTFfQVRUUl9UWF9OT19DQ0tfUkFURSwKLSBOTDgwMjExX0FUVFJfVERMU19BQ1RJT04sCisgIE5MODAyMTFfQVRUUl9UWF9OT19DQ0tfUkFURSwKKyAgTkw4MDIxMV9BVFRSX1RETFNfQUNUSU9OLAorICBOTDgwMjExX0FUVFJfVERMU19ESUFMT0dfVE9LRU4sCisgIE5MODAyMTFfQVRUUl9URExTX09QRVJBVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1RETFNfRElBTE9HX1RPS0VOLAotIE5MODAyMTFfQVRUUl9URExTX09QRVJBVElPTiwKLSBOTDgwMjExX0FUVFJfVERMU19TVVBQT1JULAotIE5MODAyMTFfQVRUUl9URExTX0VYVEVSTkFMX1NFVFVQLAorICBOTDgwMjExX0FUVFJfVERMU19TVVBQT1JULAorICBOTDgwMjExX0FUVFJfVERMU19FWFRFUk5BTF9TRVRVUCwKKyAgTkw4MDIxMV9BVFRSX0RFVklDRV9BUF9TTUUsCisgIE5MODAyMTFfQVRUUl9ET05UX1dBSVRfRk9SX0FDSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0RFVklDRV9BUF9TTUUsCi0gTkw4MDIxMV9BVFRSX0RPTlRfV0FJVF9GT1JfQUNLLAotIE5MODAyMTFfQVRUUl9GRUFUVVJFX0ZMQUdTLAotIE5MODAyMTFfQVRUUl9QUk9CRV9SRVNQX09GRkxPQUQsCisgIE5MODAyMTFfQVRUUl9GRUFUVVJFX0ZMQUdTLAorICBOTDgwMjExX0FUVFJfUFJPQkVfUkVTUF9PRkZMT0FELAorICBOTDgwMjExX0FUVFJfUFJPQkVfUkVTUCwKKyAgTkw4MDIxMV9BVFRSX0RGU19SRUdJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9QUk9CRV9SRVNQLAotIE5MODAyMTFfQVRUUl9ERlNfUkVHSU9OLAotIE5MODAyMTFfQVRUUl9ESVNBQkxFX0hULAotIE5MODAyMTFfQVRUUl9IVF9DQVBBQklMSVRZX01BU0ssCisgIE5MODAyMTFfQVRUUl9ESVNBQkxFX0hULAorICBOTDgwMjExX0FUVFJfSFRfQ0FQQUJJTElUWV9NQVNLLAorICBOTDgwMjExX0FUVFJfTk9BQ0tfTUFQLAorICBOTDgwMjExX0FUVFJfSU5BQ1RJVklUWV9USU1FT1VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfTk9BQ0tfTUFQLAotIE5MODAyMTFfQVRUUl9JTkFDVElWSVRZX1RJTUVPVVQsCi0gTkw4MDIxMV9BVFRSX1JYX1NJR05BTF9EQk0sCi0gTkw4MDIxMV9BVFRSX0JHX1NDQU5fUEVSSU9ELAorICBOTDgwMjExX0FUVFJfUlhfU0lHTkFMX0RCTSwKKyAgTkw4MDIxMV9BVFRSX0JHX1NDQU5fUEVSSU9ELAorICBOTDgwMjExX0FUVFJfV0RFViwKKyAgTkw4MDIxMV9BVFRSX1VTRVJfUkVHX0hJTlRfVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dERVYsCi0gTkw4MDIxMV9BVFRSX1VTRVJfUkVHX0hJTlRfVFlQRSwKLSBOTDgwMjExX0FUVFJfQ09OTl9GQUlMRURfUkVBU09OLAotIE5MODAyMTFfQVRUUl9TQUVfREFUQSwKKyAgTkw4MDIxMV9BVFRSX0NPTk5fRkFJTEVEX1JFQVNPTiwKKyAgTkw4MDIxMV9BVFRSX1NBRV9EQVRBLAorICBOTDgwMjExX0FUVFJfVkhUX0NBUEFCSUxJVFksCisgIE5MODAyMTFfQVRUUl9TQ0FOX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfVkhUX0NBUEFCSUxJVFksCi0gTkw4MDIxMV9BVFRSX1NDQU5fRkxBR1MsCi0gTkw4MDIxMV9BVFRSX0NIQU5ORUxfV0lEVEgsCi0gTkw4MDIxMV9BVFRSX0NFTlRFUl9GUkVRMSwKKyAgTkw4MDIxMV9BVFRSX0NIQU5ORUxfV0lEVEgsCisgIE5MODAyMTFfQVRUUl9DRU5URVJfRlJFUTEsCisgIE5MODAyMTFfQVRUUl9DRU5URVJfRlJFUTIsCisgIE5MODAyMTFfQVRUUl9QMlBfQ1RXSU5ET1csCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9DRU5URVJfRlJFUTIsCi0gTkw4MDIxMV9BVFRSX1AyUF9DVFdJTkRPVywKLSBOTDgwMjExX0FUVFJfUDJQX09QUFBTLAotIE5MODAyMTFfQVRUUl9MT0NBTF9NRVNIX1BPV0VSX01PREUsCisgIE5MODAyMTFfQVRUUl9QMlBfT1BQUFMsCisgIE5MODAyMTFfQVRUUl9MT0NBTF9NRVNIX1BPV0VSX01PREUsCisgIE5MODAyMTFfQVRUUl9BQ0xfUE9MSUNZLAorICBOTDgwMjExX0FUVFJfTUFDX0FERFJTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfQUNMX1BPTElDWSwKLSBOTDgwMjExX0FUVFJfTUFDX0FERFJTLAotIE5MODAyMTFfQVRUUl9NQUNfQUNMX01BWCwKLSBOTDgwMjExX0FUVFJfUkFEQVJfRVZFTlQsCisgIE5MODAyMTFfQVRUUl9NQUNfQUNMX01BWCwKKyAgTkw4MDIxMV9BVFRSX1JBREFSX0VWRU5ULAorICBOTDgwMjExX0FUVFJfRVhUX0NBUEEsCisgIE5MODAyMTFfQVRUUl9FWFRfQ0FQQV9NQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfRVhUX0NBUEEsCi0gTkw4MDIxMV9BVFRSX0VYVF9DQVBBX01BU0ssCi0gTkw4MDIxMV9BVFRSX1NUQV9DQVBBQklMSVRZLAotIE5MODAyMTFfQVRUUl9TVEFfRVhUX0NBUEFCSUxJVFksCisgIE5MODAyMTFfQVRUUl9TVEFfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9BVFRSX1NUQV9FWFRfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9BVFRSX1BST1RPQ09MX0ZFQVRVUkVTLAorICBOTDgwMjExX0FUVFJfU1BMSVRfV0lQSFlfRFVNUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1BST1RPQ09MX0ZFQVRVUkVTLAotIE5MODAyMTFfQVRUUl9TUExJVF9XSVBIWV9EVU1QLAotIE5MODAyMTFfQVRUUl9ESVNBQkxFX1ZIVCwKLSBOTDgwMjExX0FUVFJfVkhUX0NBUEFCSUxJVFlfTUFTSywKKyAgTkw4MDIxMV9BVFRSX0RJU0FCTEVfVkhULAorICBOTDgwMjExX0FUVFJfVkhUX0NBUEFCSUxJVFlfTUFTSywKKyAgTkw4MDIxMV9BVFRSX01ESUQsCisgIE5MODAyMTFfQVRUUl9JRV9SSUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9NRElELAotIE5MODAyMTFfQVRUUl9JRV9SSUMsCi0gTkw4MDIxMV9BVFRSX0NSSVRfUFJPVF9JRCwKLSBOTDgwMjExX0FUVFJfTUFYX0NSSVRfUFJPVF9EVVJBVElPTiwKKyAgTkw4MDIxMV9BVFRSX0NSSVRfUFJPVF9JRCwKKyAgTkw4MDIxMV9BVFRSX01BWF9DUklUX1BST1RfRFVSQVRJT04sCisgIE5MODAyMTFfQVRUUl9QRUVSX0FJRCwKKyAgTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9QRUVSX0FJRCwKLSBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSwKLSBOTDgwMjExX0FUVFJfQ0hfU1dJVENIX0NPVU5ULAotIE5MODAyMTFfQVRUUl9DSF9TV0lUQ0hfQkxPQ0tfVFgsCisgIE5MODAyMTFfQVRUUl9DSF9TV0lUQ0hfQ09VTlQsCisgIE5MODAyMTFfQVRUUl9DSF9TV0lUQ0hfQkxPQ0tfVFgsCisgIE5MODAyMTFfQVRUUl9DU0FfSUVTLAorICBOTDgwMjExX0FUVFJfQ1NBX0NfT0ZGX0JFQUNPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NTQV9JRVMsCi0gTkw4MDIxMV9BVFRSX0NTQV9DX09GRl9CRUFDT04sCi0gTkw4MDIxMV9BVFRSX0NTQV9DX09GRl9QUkVTUCwKLSBOTDgwMjExX0FUVFJfUlhNR01UX0ZMQUdTLAorICBOTDgwMjExX0FUVFJfQ1NBX0NfT0ZGX1BSRVNQLAorICBOTDgwMjExX0FUVFJfUlhNR01UX0ZMQUdTLAorICBOTDgwMjExX0FUVFJfU1RBX1NVUFBPUlRFRF9DSEFOTkVMUywKKyAgTkw4MDIxMV9BVFRSX1NUQV9TVVBQT1JURURfT1BFUl9DTEFTU0VTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfU1RBX1NVUFBPUlRFRF9DSEFOTkVMUywKLSBOTDgwMjExX0FUVFJfU1RBX1NVUFBPUlRFRF9PUEVSX0NMQVNTRVMsCi0gTkw4MDIxMV9BVFRSX0hBTkRMRV9ERlMsCi0gTkw4MDIxMV9BVFRSX1NVUFBPUlRfNV9NSFosCisgIE5MODAyMTFfQVRUUl9IQU5ETEVfREZTLAorICBOTDgwMjExX0FUVFJfU1VQUE9SVF81X01IWiwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRfMTBfTUhaLAorICBOTDgwMjExX0FUVFJfT1BNT0RFX05PVElGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfU1VQUE9SVF8xMF9NSFosCi0gTkw4MDIxMV9BVFRSX09QTU9ERV9OT1RJRiwKLSBOTDgwMjExX0FUVFJfVkVORE9SX0lELAotIE5MODAyMTFfQVRUUl9WRU5ET1JfU1VCQ01ELAorICBOTDgwMjExX0FUVFJfVkVORE9SX0lELAorICBOTDgwMjExX0FUVFJfVkVORE9SX1NVQkNNRCwKKyAgTkw4MDIxMV9BVFRSX1ZFTkRPUl9EQVRBLAorICBOTDgwMjExX0FUVFJfVkVORE9SX0VWRU5UUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1ZFTkRPUl9EQVRBLAotIE5MODAyMTFfQVRUUl9WRU5ET1JfRVZFTlRTLAotIE5MODAyMTFfQVRUUl9RT1NfTUFQLAotIF9fTkw4MDIxMV9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQVRUUl9RT1NfTUFQLAorICBOTDgwMjExX0FUVFJfTUFDX0hJTlQsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9GUkVRX0hJTlQsCisgIE5MODAyMTFfQVRUUl9NQVhfQVBfQVNTT0NfU1RBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfTUFYID0gX19OTDgwMjExX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9BVFRSX1RETFNfUEVFUl9DQVBBQklMSVRZLAorICBOTDgwMjExX0FUVFJfSUZBQ0VfU09DS0VUX09XTkVSLAorICBOTDgwMjExX0FUVFJfQ1NBX0NfT0ZGU0VUU19UWCwKKyAgTkw4MDIxMV9BVFRSX01BWF9DU0FfQ09VTlRFUlMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX0FUVFJfVERMU19JTklUSUFUT1IsCisgIE5MODAyMTFfQVRUUl9VU0VfUlJNLAorICBOTDgwMjExX0FUVFJfV0lQSFlfRFlOX0FDSywKKyAgTkw4MDIxMV9BVFRSX1RTSUQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX0FUVFJfVVNFUl9QUklPLAorICBOTDgwMjExX0FUVFJfQURNSVRURURfVElNRSwKKyAgTkw4MDIxMV9BVFRSX1NNUFNfTU9ERSwKKyAgX19OTDgwMjExX0FUVFJfQUZURVJfTEFTVCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfQVRUUl9NQVggPSBfX05MODAyMTFfQVRUUl9BRlRFUl9MQVNUIC0gMQogfTsKICNkZWZpbmUgTkw4MDIxMV9BVFRSX1NDQU5fR0VORVJBVElPTiBOTDgwMjExX0FUVFJfR0VORVJBVElPTgogI2RlZmluZSBOTDgwMjExX0FUVFJfTUVTSF9QQVJBTVMgTkw4MDIxMV9BVFRSX01FU0hfQ09ORklHCkBAIC00NzYsMzgzICs0OTYsMzkzIEBACiAjZGVmaW5lIE5MODAyMTFfTUFYX05SX0FLTV9TVUlURVMgMgogI2RlZmluZSBOTDgwMjExX01JTl9SRU1BSU5fT05fQ0hBTk5FTF9USU1FIDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOTDgwMjExX1NDQU5fUlNTSV9USE9MRF9PRkYgLTMwMAorI2RlZmluZSBOTDgwMjExX1NDQU5fUlNTSV9USE9MRF9PRkYgLSAzMDAKICNkZWZpbmUgTkw4MDIxMV9DUU1fVFhFX01BWF9JTlRWTCAxODAwCiBlbnVtIG5sODAyMTFfaWZ0eXBlIHsKLSBOTDgwMjExX0lGVFlQRV9VTlNQRUNJRklFRCwKKyAgTkw4MDIxMV9JRlRZUEVfVU5TUEVDSUZJRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfSUZUWVBFX0FESE9DLAotIE5MODAyMTFfSUZUWVBFX1NUQVRJT04sCi0gTkw4MDIxMV9JRlRZUEVfQVAsCi0gTkw4MDIxMV9JRlRZUEVfQVBfVkxBTiwKKyAgTkw4MDIxMV9JRlRZUEVfQURIT0MsCisgIE5MODAyMTFfSUZUWVBFX1NUQVRJT04sCisgIE5MODAyMTFfSUZUWVBFX0FQLAorICBOTDgwMjExX0lGVFlQRV9BUF9WTEFOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0lGVFlQRV9XRFMsCi0gTkw4MDIxMV9JRlRZUEVfTU9OSVRPUiwKLSBOTDgwMjExX0lGVFlQRV9NRVNIX1BPSU5ULAotIE5MODAyMTFfSUZUWVBFX1AyUF9DTElFTlQsCisgIE5MODAyMTFfSUZUWVBFX1dEUywKKyAgTkw4MDIxMV9JRlRZUEVfTU9OSVRPUiwKKyAgTkw4MDIxMV9JRlRZUEVfTUVTSF9QT0lOVCwKKyAgTkw4MDIxMV9JRlRZUEVfUDJQX0NMSUVOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9JRlRZUEVfUDJQX0dPLAotIE5MODAyMTFfSUZUWVBFX1AyUF9ERVZJQ0UsCi0gTlVNX05MODAyMTFfSUZUWVBFUywKLSBOTDgwMjExX0lGVFlQRV9NQVggPSBOVU1fTkw4MDIxMV9JRlRZUEVTIC0gMQorICBOTDgwMjExX0lGVFlQRV9QMlBfR08sCisgIE5MODAyMTFfSUZUWVBFX1AyUF9ERVZJQ0UsCisgIE5VTV9OTDgwMjExX0lGVFlQRVMsCisgIE5MODAyMTFfSUZUWVBFX01BWCA9IE5VTV9OTDgwMjExX0lGVFlQRVMgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9zdGFfZmxhZ3MgewotIF9fTkw4MDIxMV9TVEFfRkxBR19JTlZBTElELAotIE5MODAyMTFfU1RBX0ZMQUdfQVVUSE9SSVpFRCwKKyAgX19OTDgwMjExX1NUQV9GTEFHX0lOVkFMSUQsCisgIE5MODAyMTFfU1RBX0ZMQUdfQVVUSE9SSVpFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfRkxBR19TSE9SVF9QUkVBTUJMRSwKLSBOTDgwMjExX1NUQV9GTEFHX1dNRSwKLSBOTDgwMjExX1NUQV9GTEFHX01GUCwKLSBOTDgwMjExX1NUQV9GTEFHX0FVVEhFTlRJQ0FURUQsCisgIE5MODAyMTFfU1RBX0ZMQUdfU0hPUlRfUFJFQU1CTEUsCisgIE5MODAyMTFfU1RBX0ZMQUdfV01FLAorICBOTDgwMjExX1NUQV9GTEFHX01GUCwKKyAgTkw4MDIxMV9TVEFfRkxBR19BVVRIRU5USUNBVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9GTEFHX1RETFNfUEVFUiwKLSBOTDgwMjExX1NUQV9GTEFHX0FTU09DSUFURUQsCi0gX19OTDgwMjExX1NUQV9GTEFHX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9TVEFfRkxBR19NQVggPSBfX05MODAyMTFfU1RBX0ZMQUdfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9TVEFfRkxBR19URExTX1BFRVIsCisgIE5MODAyMTFfU1RBX0ZMQUdfQVNTT0NJQVRFRCwKKyAgX19OTDgwMjExX1NUQV9GTEFHX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfU1RBX0ZMQUdfTUFYID0gX19OTDgwMjExX1NUQV9GTEFHX0FGVEVSX0xBU1QgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkw4MDIxMV9TVEFfRkxBR19NQVhfT0xEX0FQSSBOTDgwMjExX1NUQV9GTEFHX1RETFNfUEVFUgogc3RydWN0IG5sODAyMTFfc3RhX2ZsYWdfdXBkYXRlIHsKLSBfX3UzMiBtYXNrOworICBfX3UzMiBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZXQ7CisgIF9fdTMyIHNldDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIG5sODAyMTFfcmF0ZV9pbmZvIHsKLSBfX05MODAyMTFfUkFURV9JTkZPX0lOVkFMSUQsCisgIF9fTkw4MDIxMV9SQVRFX0lORk9fSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SQVRFX0lORk9fQklUUkFURSwKLSBOTDgwMjExX1JBVEVfSU5GT19NQ1MsCi0gTkw4MDIxMV9SQVRFX0lORk9fNDBfTUhaX1dJRFRILAotIE5MODAyMTFfUkFURV9JTkZPX1NIT1JUX0dJLAorICBOTDgwMjExX1JBVEVfSU5GT19CSVRSQVRFLAorICBOTDgwMjExX1JBVEVfSU5GT19NQ1MsCisgIE5MODAyMTFfUkFURV9JTkZPXzQwX01IWl9XSURUSCwKKyAgTkw4MDIxMV9SQVRFX0lORk9fU0hPUlRfR0ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUkFURV9JTkZPX0JJVFJBVEUzMiwKLSBOTDgwMjExX1JBVEVfSU5GT19WSFRfTUNTLAotIE5MODAyMTFfUkFURV9JTkZPX1ZIVF9OU1MsCi0gTkw4MDIxMV9SQVRFX0lORk9fODBfTUhaX1dJRFRILAorICBOTDgwMjExX1JBVEVfSU5GT19CSVRSQVRFMzIsCisgIE5MODAyMTFfUkFURV9JTkZPX1ZIVF9NQ1MsCisgIE5MODAyMTFfUkFURV9JTkZPX1ZIVF9OU1MsCisgIE5MODAyMTFfUkFURV9JTkZPXzgwX01IWl9XSURUSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SQVRFX0lORk9fODBQODBfTUhaX1dJRFRILAotIE5MODAyMTFfUkFURV9JTkZPXzE2MF9NSFpfV0lEVEgsCi0gX19OTDgwMjExX1JBVEVfSU5GT19BRlRFUl9MQVNULAotIE5MODAyMTFfUkFURV9JTkZPX01BWCA9IF9fTkw4MDIxMV9SQVRFX0lORk9fQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9SQVRFX0lORk9fODBQODBfTUhaX1dJRFRILAorICBOTDgwMjExX1JBVEVfSU5GT18xNjBfTUhaX1dJRFRILAorICBfX05MODAyMTFfUkFURV9JTkZPX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfUkFURV9JTkZPX01BWCA9IF9fTkw4MDIxMV9SQVRFX0lORk9fQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX3N0YV9ic3NfcGFyYW0gewotIF9fTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0lOVkFMSUQsCi0gTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0NUU19QUk9ULAorICBfX05MODAyMTFfU1RBX0JTU19QQVJBTV9JTlZBTElELAorICBOTDgwMjExX1NUQV9CU1NfUEFSQU1fQ1RTX1BST1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0JTU19QQVJBTV9TSE9SVF9QUkVBTUJMRSwKLSBOTDgwMjExX1NUQV9CU1NfUEFSQU1fU0hPUlRfU0xPVF9USU1FLAotIE5MODAyMTFfU1RBX0JTU19QQVJBTV9EVElNX1BFUklPRCwKLSBOTDgwMjExX1NUQV9CU1NfUEFSQU1fQkVBQ09OX0lOVEVSVkFMLAorICBOTDgwMjExX1NUQV9CU1NfUEFSQU1fU0hPUlRfUFJFQU1CTEUsCisgIE5MODAyMTFfU1RBX0JTU19QQVJBTV9TSE9SVF9TTE9UX1RJTUUsCisgIE5MODAyMTFfU1RBX0JTU19QQVJBTV9EVElNX1BFUklPRCwKKyAgTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0JFQUNPTl9JTlRFUlZBTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1NUQV9CU1NfUEFSQU1fQUZURVJfTEFTVCwKLSBOTDgwMjExX1NUQV9CU1NfUEFSQU1fTUFYID0gX19OTDgwMjExX1NUQV9CU1NfUEFSQU1fQUZURVJfTEFTVCAtIDEKKyAgX19OTDgwMjExX1NUQV9CU1NfUEFSQU1fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9TVEFfQlNTX1BBUkFNX01BWCA9IF9fTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX3N0YV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1NUQV9JTkZPX0lOVkFMSUQsCi0gTkw4MDIxMV9TVEFfSU5GT19JTkFDVElWRV9USU1FLAotIE5MODAyMTFfU1RBX0lORk9fUlhfQllURVMsCi0gTkw4MDIxMV9TVEFfSU5GT19UWF9CWVRFUywKKyAgX19OTDgwMjExX1NUQV9JTkZPX0lOVkFMSUQsCisgIE5MODAyMTFfU1RBX0lORk9fSU5BQ1RJVkVfVElNRSwKKyAgTkw4MDIxMV9TVEFfSU5GT19SWF9CWVRFUywKKyAgTkw4MDIxMV9TVEFfSU5GT19UWF9CWVRFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfSU5GT19MTElELAotIE5MODAyMTFfU1RBX0lORk9fUExJRCwKLSBOTDgwMjExX1NUQV9JTkZPX1BMSU5LX1NUQVRFLAotIE5MODAyMTFfU1RBX0lORk9fU0lHTkFMLAorICBOTDgwMjExX1NUQV9JTkZPX0xMSUQsCisgIE5MODAyMTFfU1RBX0lORk9fUExJRCwKKyAgTkw4MDIxMV9TVEFfSU5GT19QTElOS19TVEFURSwKKyAgTkw4MDIxMV9TVEFfSU5GT19TSUdOQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fVFhfQklUUkFURSwKLSBOTDgwMjExX1NUQV9JTkZPX1JYX1BBQ0tFVFMsCi0gTkw4MDIxMV9TVEFfSU5GT19UWF9QQUNLRVRTLAotIE5MODAyMTFfU1RBX0lORk9fVFhfUkVUUklFUywKKyAgTkw4MDIxMV9TVEFfSU5GT19UWF9CSVRSQVRFLAorICBOTDgwMjExX1NUQV9JTkZPX1JYX1BBQ0tFVFMsCisgIE5MODAyMTFfU1RBX0lORk9fVFhfUEFDS0VUUywKKyAgTkw4MDIxMV9TVEFfSU5GT19UWF9SRVRSSUVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9JTkZPX1RYX0ZBSUxFRCwKLSBOTDgwMjExX1NUQV9JTkZPX1NJR05BTF9BVkcsCi0gTkw4MDIxMV9TVEFfSU5GT19SWF9CSVRSQVRFLAotIE5MODAyMTFfU1RBX0lORk9fQlNTX1BBUkFNLAorICBOTDgwMjExX1NUQV9JTkZPX1RYX0ZBSUxFRCwKKyAgTkw4MDIxMV9TVEFfSU5GT19TSUdOQUxfQVZHLAorICBOTDgwMjExX1NUQV9JTkZPX1JYX0JJVFJBVEUsCisgIE5MODAyMTFfU1RBX0lORk9fQlNTX1BBUkFNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9JTkZPX0NPTk5FQ1RFRF9USU1FLAotIE5MODAyMTFfU1RBX0lORk9fU1RBX0ZMQUdTLAotIE5MODAyMTFfU1RBX0lORk9fQkVBQ09OX0xPU1MsCi0gTkw4MDIxMV9TVEFfSU5GT19UX09GRlNFVCwKKyAgTkw4MDIxMV9TVEFfSU5GT19DT05ORUNURURfVElNRSwKKyAgTkw4MDIxMV9TVEFfSU5GT19TVEFfRkxBR1MsCisgIE5MODAyMTFfU1RBX0lORk9fQkVBQ09OX0xPU1MsCisgIE5MODAyMTFfU1RBX0lORk9fVF9PRkZTRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fTE9DQUxfUE0sCi0gTkw4MDIxMV9TVEFfSU5GT19QRUVSX1BNLAotIE5MODAyMTFfU1RBX0lORk9fTk9OUEVFUl9QTSwKLSBOTDgwMjExX1NUQV9JTkZPX1JYX0JZVEVTNjQsCisgIE5MODAyMTFfU1RBX0lORk9fTE9DQUxfUE0sCisgIE5MODAyMTFfU1RBX0lORk9fUEVFUl9QTSwKKyAgTkw4MDIxMV9TVEFfSU5GT19OT05QRUVSX1BNLAorICBOTDgwMjExX1NUQV9JTkZPX1JYX0JZVEVTNjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fVFhfQllURVM2NCwKLSBOTDgwMjExX1NUQV9JTkZPX0NIQUlOX1NJR05BTCwKLSBOTDgwMjExX1NUQV9JTkZPX0NIQUlOX1NJR05BTF9BVkcsCi0gX19OTDgwMjExX1NUQV9JTkZPX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfU1RBX0lORk9fVFhfQllURVM2NCwKKyAgTkw4MDIxMV9TVEFfSU5GT19DSEFJTl9TSUdOQUwsCisgIE5MODAyMTFfU1RBX0lORk9fQ0hBSU5fU0lHTkFMX0FWRywKKyAgTkw4MDIxMV9TVEFfSU5GT19FWFBFQ1RFRF9USFJPVUdIUFVULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9JTkZPX01BWCA9IF9fTkw4MDIxMV9TVEFfSU5GT19BRlRFUl9MQVNUIC0gMQorICBfX05MODAyMTFfU1RBX0lORk9fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9TVEFfSU5GT19NQVggPSBfX05MODAyMTFfU1RBX0lORk9fQUZURVJfTEFTVCAtIDEKIH07CiBlbnVtIG5sODAyMTFfbXBhdGhfZmxhZ3MgewotIE5MODAyMTFfTVBBVEhfRkxBR19BQ1RJVkUgPSAxPDwwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01QQVRIX0ZMQUdfUkVTT0xWSU5HID0gMTw8MSwKLSBOTDgwMjExX01QQVRIX0ZMQUdfU05fVkFMSUQgPSAxPDwyLAotIE5MODAyMTFfTVBBVEhfRkxBR19GSVhFRCA9IDE8PDMsCi0gTkw4MDIxMV9NUEFUSF9GTEFHX1JFU09MVkVEID0gMTw8NCwKKyAgTkw4MDIxMV9NUEFUSF9GTEFHX0FDVElWRSA9IDEgPDwgMCwKKyAgTkw4MDIxMV9NUEFUSF9GTEFHX1JFU09MVklORyA9IDEgPDwgMSwKKyAgTkw4MDIxMV9NUEFUSF9GTEFHX1NOX1ZBTElEID0gMSA8PCAyLAorICBOTDgwMjExX01QQVRIX0ZMQUdfRklYRUQgPSAxIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX01QQVRIX0ZMQUdfUkVTT0xWRUQgPSAxIDw8IDQsCiB9OwogZW51bSBubDgwMjExX21wYXRoX2luZm8gewotIF9fTkw4MDIxMV9NUEFUSF9JTkZPX0lOVkFMSUQsCi0gTkw4MDIxMV9NUEFUSF9JTkZPX0ZSQU1FX1FMRU4sCisgIF9fTkw4MDIxMV9NUEFUSF9JTkZPX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTVBBVEhfSU5GT19TTiwKLSBOTDgwMjExX01QQVRIX0lORk9fTUVUUklDLAotIE5MODAyMTFfTVBBVEhfSU5GT19FWFBUSU1FLAotIE5MODAyMTFfTVBBVEhfSU5GT19GTEFHUywKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX0ZSQU1FX1FMRU4sCisgIE5MODAyMTFfTVBBVEhfSU5GT19TTiwKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX01FVFJJQywKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX0VYUFRJTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTVBBVEhfSU5GT19ESVNDT1ZFUllfVElNRU9VVCwKLSBOTDgwMjExX01QQVRIX0lORk9fRElTQ09WRVJZX1JFVFJJRVMsCi0gX19OTDgwMjExX01QQVRIX0lORk9fQUZURVJfTEFTVCwKLSBOTDgwMjExX01QQVRIX0lORk9fTUFYID0gX19OTDgwMjExX01QQVRIX0lORk9fQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX0ZMQUdTLAorICBOTDgwMjExX01QQVRIX0lORk9fRElTQ09WRVJZX1RJTUVPVVQsCisgIE5MODAyMTFfTVBBVEhfSU5GT19ESVNDT1ZFUllfUkVUUklFUywKKyAgX19OTDgwMjExX01QQVRIX0lORk9fQUZURVJfTEFTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfTVBBVEhfSU5GT19NQVggPSBfX05MODAyMTFfTVBBVEhfSU5GT19BRlRFUl9MQVNUIC0gMQogfTsKIGVudW0gbmw4MDIxMV9iYW5kX2F0dHIgewotIF9fTkw4MDIxMV9CQU5EX0FUVFJfSU5WQUxJRCwKLSBOTDgwMjExX0JBTkRfQVRUUl9GUkVRUywKKyAgX19OTDgwMjExX0JBTkRfQVRUUl9JTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JBTkRfQVRUUl9SQVRFUywKLSBOTDgwMjExX0JBTkRfQVRUUl9IVF9NQ1NfU0VULAotIE5MODAyMTFfQkFORF9BVFRSX0hUX0NBUEEsCi0gTkw4MDIxMV9CQU5EX0FUVFJfSFRfQU1QRFVfRkFDVE9SLAorICBOTDgwMjExX0JBTkRfQVRUUl9GUkVRUywKKyAgTkw4MDIxMV9CQU5EX0FUVFJfUkFURVMsCisgIE5MODAyMTFfQkFORF9BVFRSX0hUX01DU19TRVQsCisgIE5MODAyMTFfQkFORF9BVFRSX0hUX0NBUEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQkFORF9BVFRSX0hUX0FNUERVX0RFTlNJVFksCi0gTkw4MDIxMV9CQU5EX0FUVFJfVkhUX01DU19TRVQsCi0gTkw4MDIxMV9CQU5EX0FUVFJfVkhUX0NBUEEsCi0gX19OTDgwMjExX0JBTkRfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX0JBTkRfQVRUUl9IVF9BTVBEVV9GQUNUT1IsCisgIE5MODAyMTFfQkFORF9BVFRSX0hUX0FNUERVX0RFTlNJVFksCisgIE5MODAyMTFfQkFORF9BVFRSX1ZIVF9NQ1NfU0VULAorICBOTDgwMjExX0JBTkRfQVRUUl9WSFRfQ0FQQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CQU5EX0FUVFJfTUFYID0gX19OTDgwMjExX0JBTkRfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBfX05MODAyMTFfQkFORF9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQkFORF9BVFRSX01BWCA9IF9fTkw4MDIxMV9CQU5EX0FUVFJfQUZURVJfTEFTVCAtIDEKIH07CiAjZGVmaW5lIE5MODAyMTFfQkFORF9BVFRSX0hUX0NBUEEgTkw4MDIxMV9CQU5EX0FUVFJfSFRfQ0FQQQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9mcmVxdWVuY3lfYXR0ciB7CisgIF9fTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9JTlZBTElELAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0ZSRVEsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfRElTQUJMRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9JTlZBTElELAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfRlJFUSwKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0RJU0FCTEVELAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSVIsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSVIsCisgIF9fTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JQlNTLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX1JBREFSLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX01BWF9UWF9QT1dFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lCU1MsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9SQURBUiwKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX01BWF9UWF9QT1dFUiwKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0RGU19TVEFURSwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9ERlNfU1RBVEUsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfREZTX1RJTUUsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSFQ0MF9NSU5VUywKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19IVDQwX1BMVVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfREZTX1RJTUUsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19IVDQwX01JTlVTLAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSFQ0MF9QTFVTLAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fODBNSFosCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fODBNSFosCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fMTYwTUhaLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0RGU19DQUNfVElNRSwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9JTkRPT1JfT05MWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT18xNjBNSFosCi0gX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9NQVggPSBfX05MODAyMTFfRlJFUVVFTkNZX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9HT19DT05DVVJSRU5ULAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PXzIwTUhaLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PXzEwTUhaLAorICBfX05MODAyMTFfRlJFUVVFTkNZX0FUVFJfQUZURVJfTEFTVCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTUFYID0gX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9NQVhfVFhfUE9XRVIgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9NQVhfVFhfUE9XRVIKICNkZWZpbmUgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9QQVNTSVZFX1NDQU4gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JUgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JQlNTIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSVIKICNkZWZpbmUgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JUiBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lSCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2JpdHJhdGVfYXR0ciB7Ci0gX19OTDgwMjExX0JJVFJBVEVfQVRUUl9JTlZBTElELAotIE5MODAyMTFfQklUUkFURV9BVFRSX1JBVEUsCi0gTkw4MDIxMV9CSVRSQVRFX0FUVFJfMkdIWl9TSE9SVFBSRUFNQkxFLAorICBfX05MODAyMTFfQklUUkFURV9BVFRSX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkw4MDIxMV9CSVRSQVRFX0FUVFJfQUZURVJfTEFTVCwKLSBOTDgwMjExX0JJVFJBVEVfQVRUUl9NQVggPSBfX05MODAyMTFfQklUUkFURV9BVFRSX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfQklUUkFURV9BVFRSX1JBVEUsCisgIE5MODAyMTFfQklUUkFURV9BVFRSXzJHSFpfU0hPUlRQUkVBTUJMRSwKKyAgX19OTDgwMjExX0JJVFJBVEVfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX0JJVFJBVEVfQVRUUl9NQVggPSBfX05MODAyMTFfQklUUkFURV9BVFRSX0FGVEVSX0xBU1QgLSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9yZWdfaW5pdGlhdG9yIHsKKyAgTkw4MDIxMV9SRUdET01fU0VUX0JZX0NPUkUsCisgIE5MODAyMTFfUkVHRE9NX1NFVF9CWV9VU0VSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JFR0RPTV9TRVRfQllfQ09SRSwKLSBOTDgwMjExX1JFR0RPTV9TRVRfQllfVVNFUiwKLSBOTDgwMjExX1JFR0RPTV9TRVRfQllfRFJJVkVSLAotIE5MODAyMTFfUkVHRE9NX1NFVF9CWV9DT1VOVFJZX0lFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9SRUdET01fU0VUX0JZX0RSSVZFUiwKKyAgTkw4MDIxMV9SRUdET01fU0VUX0JZX0NPVU5UUllfSUUsCiB9OwogZW51bSBubDgwMjExX3JlZ190eXBlIHsKLSBOTDgwMjExX1JFR0RPTV9UWVBFX0NPVU5UUlksCi0gTkw4MDIxMV9SRUdET01fVFlQRV9XT1JMRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SRUdET01fVFlQRV9DVVNUT01fV09STEQsCi0gTkw4MDIxMV9SRUdET01fVFlQRV9JTlRFUlNFQ1RJT04sCisgIE5MODAyMTFfUkVHRE9NX1RZUEVfQ09VTlRSWSwKKyAgTkw4MDIxMV9SRUdET01fVFlQRV9XT1JMRCwKKyAgTkw4MDIxMV9SRUdET01fVFlQRV9DVVNUT01fV09STEQsCisgIE5MODAyMTFfUkVHRE9NX1RZUEVfSU5URVJTRUNUSU9OLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5sODAyMTFfcmVnX3J1bGVfYXR0ciB7CisgIF9fTkw4MDIxMV9SRUdfUlVMRV9BVFRSX0lOVkFMSUQsCisgIE5MODAyMTFfQVRUUl9SRUdfUlVMRV9GTEFHUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1JFR19SVUxFX0FUVFJfSU5WQUxJRCwKLSBOTDgwMjExX0FUVFJfUkVHX1JVTEVfRkxBR1MsCi0gTkw4MDIxMV9BVFRSX0ZSRVFfUkFOR0VfU1RBUlQsCi0gTkw4MDIxMV9BVFRSX0ZSRVFfUkFOR0VfRU5ELAorICBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9TVEFSVCwKKyAgTkw4MDIxMV9BVFRSX0ZSRVFfUkFOR0VfRU5ELAorICBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9NQVhfQlcsCisgIE5MODAyMTFfQVRUUl9QT1dFUl9SVUxFX01BWF9BTlRfR0FJTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0ZSRVFfUkFOR0VfTUFYX0JXLAotIE5MODAyMTFfQVRUUl9QT1dFUl9SVUxFX01BWF9BTlRfR0FJTiwKLSBOTDgwMjExX0FUVFJfUE9XRVJfUlVMRV9NQVhfRUlSUCwKLSBfX05MODAyMTFfUkVHX1JVTEVfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX0FUVFJfUE9XRVJfUlVMRV9NQVhfRUlSUCwKKyAgTkw4MDIxMV9BVFRSX0RGU19DQUNfVElNRSwKKyAgX19OTDgwMjExX1JFR19SVUxFX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9SRUdfUlVMRV9BVFRSX01BWCA9IF9fTkw4MDIxMV9SRUdfUlVMRV9BVFRSX0FGVEVSX0xBU1QgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUkVHX1JVTEVfQVRUUl9NQVggPSBfX05MODAyMTFfUkVHX1JVTEVfQVRUUl9BRlRFUl9MQVNUIC0gMQogfTsKIGVudW0gbmw4MDIxMV9zY2hlZF9zY2FuX21hdGNoX2F0dHIgewotIF9fTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfSU5WQUxJRCwKKyAgX19OTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9JTlZBTElELAorICBOTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9TU0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9TU0lELAotIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX1JTU0ksCi0gX19OTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9BRlRFUl9MQVNULAotIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX01BWCA9Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfUlNTSSwKKyAgX19OTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9NQVggPSBfX05MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9BVFRSX1NDSEVEX1NDQU5fTUFUQ0hfU1NJRCBOTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9TU0lECiBlbnVtIG5sODAyMTFfcmVnX3J1bGVfZmxhZ3MgeworICBOTDgwMjExX1JSRl9OT19PRkRNID0gMSA8PCAwLAorICBOTDgwMjExX1JSRl9OT19DQ0sgPSAxIDw8IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUlJGX05PX09GRE0gPSAxPDwwLAotIE5MODAyMTFfUlJGX05PX0NDSyA9IDE8PDEsCi0gTkw4MDIxMV9SUkZfTk9fSU5ET09SID0gMTw8MiwKLSBOTDgwMjExX1JSRl9OT19PVVRET09SID0gMTw8MywKKyAgTkw4MDIxMV9SUkZfTk9fSU5ET09SID0gMSA8PCAyLAorICBOTDgwMjExX1JSRl9OT19PVVRET09SID0gMSA8PCAzLAorICBOTDgwMjExX1JSRl9ERlMgPSAxIDw8IDQsCisgIE5MODAyMTFfUlJGX1BUUF9PTkxZID0gMSA8PCA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JSRl9ERlMgPSAxPDw0LAotIE5MODAyMTFfUlJGX1BUUF9PTkxZID0gMTw8NSwKLSBOTDgwMjExX1JSRl9QVE1QX09OTFkgPSAxPDw2LAotIE5MODAyMTFfUlJGX05PX0lSID0gMTw8NywKKyAgTkw4MDIxMV9SUkZfUFRNUF9PTkxZID0gMSA8PCA2LAorICBOTDgwMjExX1JSRl9OT19JUiA9IDEgPDwgNywKKyAgX19OTDgwMjExX1JSRl9OT19JQlNTID0gMSA8PCA4LAorICBOTDgwMjExX1JSRl9BVVRPX0JXID0gMSA8PCAxMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1JSRl9OT19JQlNTID0gMTw8OCwKIH07CiAjZGVmaW5lIE5MODAyMTFfUlJGX1BBU1NJVkVfU0NBTiBOTDgwMjExX1JSRl9OT19JUgogI2RlZmluZSBOTDgwMjExX1JSRl9OT19JQlNTIE5MODAyMTFfUlJGX05PX0lSCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX1JSRl9OT19JUiBOTDgwMjExX1JSRl9OT19JUgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkw4MDIxMV9SUkZfTk9fSVJfQUxMIChOTDgwMjExX1JSRl9OT19JUiB8IF9fTkw4MDIxMV9SUkZfTk9fSUJTUykKIGVudW0gbmw4MDIxMV9kZnNfcmVnaW9ucyB7Ci0gTkw4MDIxMV9ERlNfVU5TRVQgPSAwLAorICBOTDgwMjExX0RGU19VTlNFVCA9IDAsCisgIE5MODAyMTFfREZTX0ZDQyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfREZTX0ZDQyA9IDEsCi0gTkw4MDIxMV9ERlNfRVRTSSA9IDIsCi0gTkw4MDIxMV9ERlNfSlAgPSAzLAorICBOTDgwMjExX0RGU19FVFNJID0gMiwKKyAgTkw4MDIxMV9ERlNfSlAgPSAzLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfdXNlcl9yZWdfaGludF90eXBlIHsKLSBOTDgwMjExX1VTRVJfUkVHX0hJTlRfVVNFUiA9IDAsCi0gTkw4MDIxMV9VU0VSX1JFR19ISU5UX0NFTExfQkFTRSA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX1VTRVJfUkVHX0hJTlRfVVNFUiA9IDAsCisgIE5MODAyMTFfVVNFUl9SRUdfSElOVF9DRUxMX0JBU0UgPSAxLAorICBOTDgwMjExX1VTRVJfUkVHX0hJTlRfSU5ET09SID0gMiwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX3N1cnZleV9pbmZvIHsKLSBfX05MODAyMTFfU1VSVkVZX0lORk9fSU5WQUxJRCwKLSBOTDgwMjExX1NVUlZFWV9JTkZPX0ZSRVFVRU5DWSwKLSBOTDgwMjExX1NVUlZFWV9JTkZPX05PSVNFLAorICBfX05MODAyMTFfU1VSVkVZX0lORk9fSU5WQUxJRCwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19GUkVRVUVOQ1ksCisgIE5MODAyMTFfU1VSVkVZX0lORk9fTk9JU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1VSVkVZX0lORk9fSU5fVVNFLAotIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FLAotIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FX0JVU1ksCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfRVhUX0JVU1ksCisgIE5MODAyMTFfU1VSVkVZX0lORk9fSU5fVVNFLAorICBOTDgwMjExX1NVUlZFWV9JTkZPX0NIQU5ORUxfVElNRSwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfQlVTWSwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfRVhUX0JVU1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FX1JYLAotIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FX1RYLAotIF9fTkw4MDIxMV9TVVJWRVlfSU5GT19BRlRFUl9MQVNULAotIE5MODAyMTFfU1VSVkVZX0lORk9fTUFYID0gX19OTDgwMjExX1NVUlZFWV9JTkZPX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FX1JYLAorICBOTDgwMjExX1NVUlZFWV9JTkZPX0NIQU5ORUxfVElNRV9UWCwKKyAgX19OTDgwMjExX1NVUlZFWV9JTkZPX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfU1VSVkVZX0lORk9fTUFYID0gX19OTDgwMjExX1NVUlZFWV9JTkZPX0FGVEVSX0xBU1QgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9tbnRyX2ZsYWdzIHsKLSBfX05MODAyMTFfTU5UUl9GTEFHX0lOVkFMSUQsCi0gTkw4MDIxMV9NTlRSX0ZMQUdfRkNTRkFJTCwKKyAgX19OTDgwMjExX01OVFJfRkxBR19JTlZBTElELAorICBOTDgwMjExX01OVFJfRkxBR19GQ1NGQUlMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01OVFJfRkxBR19QTENQRkFJTCwKLSBOTDgwMjExX01OVFJfRkxBR19DT05UUk9MLAotIE5MODAyMTFfTU5UUl9GTEFHX09USEVSX0JTUywKLSBOTDgwMjExX01OVFJfRkxBR19DT09LX0ZSQU1FUywKKyAgTkw4MDIxMV9NTlRSX0ZMQUdfUExDUEZBSUwsCisgIE5MODAyMTFfTU5UUl9GTEFHX0NPTlRST0wsCisgIE5MODAyMTFfTU5UUl9GTEFHX09USEVSX0JTUywKKyAgTkw4MDIxMV9NTlRSX0ZMQUdfQ09PS19GUkFNRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTU5UUl9GTEFHX0FDVElWRSwKLSBfX05MODAyMTFfTU5UUl9GTEFHX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9NTlRSX0ZMQUdfTUFYID0gX19OTDgwMjExX01OVFJfRkxBR19BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX01OVFJfRkxBR19BQ1RJVkUsCisgIF9fTkw4MDIxMV9NTlRSX0ZMQUdfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9NTlRSX0ZMQUdfTUFYID0gX19OTDgwMjExX01OVFJfRkxBR19BRlRFUl9MQVNUIC0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfbWVzaF9wb3dlcl9tb2RlIHsKLSBOTDgwMjExX01FU0hfUE9XRVJfVU5LTk9XTiwKLSBOTDgwMjExX01FU0hfUE9XRVJfQUNUSVZFLAotIE5MODAyMTFfTUVTSF9QT1dFUl9MSUdIVF9TTEVFUCwKKyAgTkw4MDIxMV9NRVNIX1BPV0VSX1VOS05PV04sCisgIE5MODAyMTFfTUVTSF9QT1dFUl9BQ1RJVkUsCisgIE5MODAyMTFfTUVTSF9QT1dFUl9MSUdIVF9TTEVFUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIX1BPV0VSX0RFRVBfU0xFRVAsCi0gX19OTDgwMjExX01FU0hfUE9XRVJfQUZURVJfTEFTVCwKLSBOTDgwMjExX01FU0hfUE9XRVJfTUFYID0gX19OTDgwMjExX01FU0hfUE9XRVJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9NRVNIX1BPV0VSX0RFRVBfU0xFRVAsCisgIF9fTkw4MDIxMV9NRVNIX1BPV0VSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfTUVTSF9QT1dFUl9NQVggPSBfX05MODAyMTFfTUVTSF9QT1dFUl9BRlRFUl9MQVNUIC0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfbWVzaGNvbmZfcGFyYW1zIHsKLSBfX05MODAyMTFfTUVTSENPTkZfSU5WQUxJRCwKLSBOTDgwMjExX01FU0hDT05GX1JFVFJZX1RJTUVPVVQsCi0gTkw4MDIxMV9NRVNIQ09ORl9DT05GSVJNX1RJTUVPVVQsCisgIF9fTkw4MDIxMV9NRVNIQ09ORl9JTlZBTElELAorICBOTDgwMjExX01FU0hDT05GX1JFVFJZX1RJTUVPVVQsCisgIE5MODAyMTFfTUVTSENPTkZfQ09ORklSTV9USU1FT1VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0hPTERJTkdfVElNRU9VVCwKLSBOTDgwMjExX01FU0hDT05GX01BWF9QRUVSX0xJTktTLAotIE5MODAyMTFfTUVTSENPTkZfTUFYX1JFVFJJRVMsCi0gTkw4MDIxMV9NRVNIQ09ORl9UVEwsCisgIE5MODAyMTFfTUVTSENPTkZfSE9MRElOR19USU1FT1VULAorICBOTDgwMjExX01FU0hDT05GX01BWF9QRUVSX0xJTktTLAorICBOTDgwMjExX01FU0hDT05GX01BWF9SRVRSSUVTLAorICBOTDgwMjExX01FU0hDT05GX1RUTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIQ09ORl9BVVRPX09QRU5fUExJTktTLAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9NQVhfUFJFUV9SRVRSSUVTLAotIE5MODAyMTFfTUVTSENPTkZfUEFUSF9SRUZSRVNIX1RJTUUsCi0gTkw4MDIxMV9NRVNIQ09ORl9NSU5fRElTQ09WRVJZX1RJTUVPVVQsCisgIE5MODAyMTFfTUVTSENPTkZfQVVUT19PUEVOX1BMSU5LUywKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX01BWF9QUkVRX1JFVFJJRVMsCisgIE5MODAyMTFfTUVTSENPTkZfUEFUSF9SRUZSRVNIX1RJTUUsCisgIE5MODAyMTFfTUVTSENPTkZfTUlOX0RJU0NPVkVSWV9USU1FT1VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0hXTVBfQUNUSVZFX1BBVEhfVElNRU9VVCwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfUFJFUV9NSU5fSU5URVJWQUwsCi0gTkw4MDIxMV9NRVNIQ09ORl9IV01QX05FVF9ESUFNX1RSVlNfVElNRSwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfUk9PVE1PREUsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9BQ1RJVkVfUEFUSF9USU1FT1VULAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfUFJFUV9NSU5fSU5URVJWQUwsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9ORVRfRElBTV9UUlZTX1RJTUUsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9ST09UTU9ERSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIQ09ORl9FTEVNRU5UX1RUTCwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfUkFOTl9JTlRFUlZBTCwKLSBOTDgwMjExX01FU0hDT05GX0dBVEVfQU5OT1VOQ0VNRU5UUywKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfUEVSUl9NSU5fSU5URVJWQUwsCisgIE5MODAyMTFfTUVTSENPTkZfRUxFTUVOVF9UVEwsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9SQU5OX0lOVEVSVkFMLAorICBOTDgwMjExX01FU0hDT05GX0dBVEVfQU5OT1VOQ0VNRU5UUywKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX1BFUlJfTUlOX0lOVEVSVkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0ZPUldBUkRJTkcsCi0gTkw4MDIxMV9NRVNIQ09ORl9SU1NJX1RIUkVTSE9MRCwKLSBOTDgwMjExX01FU0hDT05GX1NZTkNfT0ZGU0VUX01BWF9ORUlHSEJPUiwKLSBOTDgwMjExX01FU0hDT05GX0hUX09QTU9ERSwKKyAgTkw4MDIxMV9NRVNIQ09ORl9GT1JXQVJESU5HLAorICBOTDgwMjExX01FU0hDT05GX1JTU0lfVEhSRVNIT0xELAorICBOTDgwMjExX01FU0hDT05GX1NZTkNfT0ZGU0VUX01BWF9ORUlHSEJPUiwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IVF9PUE1PREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9QQVRIX1RPX1JPT1RfVElNRU9VVCwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfUk9PVF9JTlRFUlZBTCwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfQ09ORklSTUFUSU9OX0lOVEVSVkFMLAotIE5MODAyMTFfTUVTSENPTkZfUE9XRVJfTU9ERSwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX1BBVEhfVE9fUk9PVF9USU1FT1VULAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfUk9PVF9JTlRFUlZBTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX0NPTkZJUk1BVElPTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9QT1dFUl9NT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0FXQUtFX1dJTkRPVywKLSBOTDgwMjExX01FU0hDT05GX1BMSU5LX1RJTUVPVVQsCi0gX19OTDgwMjExX01FU0hDT05GX0FUVFJfQUZURVJfTEFTVCwKLSBOTDgwMjExX01FU0hDT05GX0FUVFJfTUFYID0gX19OTDgwMjExX01FU0hDT05GX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9NRVNIQ09ORl9BV0FLRV9XSU5ET1csCisgIE5MODAyMTFfTUVTSENPTkZfUExJTktfVElNRU9VVCwKKyAgX19OTDgwMjExX01FU0hDT05GX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9BVFRSX01BWCA9IF9fTkw4MDIxMV9NRVNIQ09ORl9BVFRSX0FGVEVSX0xBU1QgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9tZXNoX3NldHVwX3BhcmFtcyB7Ci0gX19OTDgwMjExX01FU0hfU0VUVVBfSU5WQUxJRCwKLSBOTDgwMjExX01FU0hfU0VUVVBfRU5BQkxFX1ZFTkRPUl9QQVRIX1NFTCwKKyAgX19OTDgwMjExX01FU0hfU0VUVVBfSU5WQUxJRCwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX0VOQUJMRV9WRU5ET1JfUEFUSF9TRUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSF9TRVRVUF9FTkFCTEVfVkVORE9SX01FVFJJQywKLSBOTDgwMjExX01FU0hfU0VUVVBfSUUsCi0gTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9BVVRILAotIE5MODAyMTFfTUVTSF9TRVRVUF9VU0VSU1BBQ0VfQU1QRSwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX0VOQUJMRV9WRU5ET1JfTUVUUklDLAorICBOTDgwMjExX01FU0hfU0VUVVBfSUUsCisgIE5MODAyMTFfTUVTSF9TRVRVUF9VU0VSU1BBQ0VfQVVUSCwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9BTVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hfU0VUVVBfRU5BQkxFX1ZFTkRPUl9TWU5DLAotIE5MODAyMTFfTUVTSF9TRVRVUF9VU0VSU1BBQ0VfTVBNLAotIE5MODAyMTFfTUVTSF9TRVRVUF9BVVRIX1BST1RPQ09MLAotIF9fTkw4MDIxMV9NRVNIX1NFVFVQX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX0VOQUJMRV9WRU5ET1JfU1lOQywKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9NUE0sCisgIE5MODAyMTFfTUVTSF9TRVRVUF9BVVRIX1BST1RPQ09MLAorICBfX05MODAyMTFfTUVTSF9TRVRVUF9BVFRSX0FGVEVSX0xBU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSF9TRVRVUF9BVFRSX01BWCA9IF9fTkw4MDIxMV9NRVNIX1NFVFVQX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX0FUVFJfTUFYID0gX19OTDgwMjExX01FU0hfU0VUVVBfQVRUUl9BRlRFUl9MQVNUIC0gMQogfTsKIGVudW0gbmw4MDIxMV90eHFfYXR0ciB7Ci0gX19OTDgwMjExX1RYUV9BVFRSX0lOVkFMSUQsCisgIF9fTkw4MDIxMV9UWFFfQVRUUl9JTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1RYUV9BVFRSX0FDLAotIE5MODAyMTFfVFhRX0FUVFJfVFhPUCwKLSBOTDgwMjExX1RYUV9BVFRSX0NXTUlOLAotIE5MODAyMTFfVFhRX0FUVFJfQ1dNQVgsCisgIE5MODAyMTFfVFhRX0FUVFJfQUMsCisgIE5MODAyMTFfVFhRX0FUVFJfVFhPUCwKKyAgTkw4MDIxMV9UWFFfQVRUUl9DV01JTiwKKyAgTkw4MDIxMV9UWFFfQVRUUl9DV01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9UWFFfQVRUUl9BSUZTLAotIF9fTkw4MDIxMV9UWFFfQVRUUl9BRlRFUl9MQVNULAotIE5MODAyMTFfVFhRX0FUVFJfTUFYID0gX19OTDgwMjExX1RYUV9BVFRSX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfVFhRX0FUVFJfQUlGUywKKyAgX19OTDgwMjExX1RYUV9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfVFhRX0FUVFJfTUFYID0gX19OTDgwMjExX1RYUV9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9hYyB7Ci0gTkw4MDIxMV9BQ19WTywKLSBOTDgwMjExX0FDX1ZJLAotIE5MODAyMTFfQUNfQkUsCisgIE5MODAyMTFfQUNfVk8sCisgIE5MODAyMTFfQUNfVkksCisgIE5MODAyMTFfQUNfQkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQUNfQkssCi0gTkw4MDIxMV9OVU1fQUNTCisgIE5MODAyMTFfQUNfQkssCisgIE5MODAyMTFfTlVNX0FDUwogfTsKICNkZWZpbmUgTkw4MDIxMV9UWFFfQVRUUl9RVUVVRSBOTDgwMjExX1RYUV9BVFRSX0FDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtODYyLDE4MyArODkyLDE5MyBAQAogI2RlZmluZSBOTDgwMjExX1RYUV9RX0JLIE5MODAyMTFfQUNfQksKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfY2hhbm5lbF90eXBlIHsKLSBOTDgwMjExX0NIQU5fTk9fSFQsCi0gTkw4MDIxMV9DSEFOX0hUMjAsCi0gTkw4MDIxMV9DSEFOX0hUNDBNSU5VUywKKyAgTkw4MDIxMV9DSEFOX05PX0hULAorICBOTDgwMjExX0NIQU5fSFQyMCwKKyAgTkw4MDIxMV9DSEFOX0hUNDBNSU5VUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DSEFOX0hUNDBQTFVTCisgIE5MODAyMTFfQ0hBTl9IVDQwUExVUwogfTsKIGVudW0gbmw4MDIxMV9jaGFuX3dpZHRoIHsKLSBOTDgwMjExX0NIQU5fV0lEVEhfMjBfTk9IVCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzIwX05PSFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ0hBTl9XSURUSF8yMCwKLSBOTDgwMjExX0NIQU5fV0lEVEhfNDAsCi0gTkw4MDIxMV9DSEFOX1dJRFRIXzgwLAotIE5MODAyMTFfQ0hBTl9XSURUSF84MFA4MCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzIwLAorICBOTDgwMjExX0NIQU5fV0lEVEhfNDAsCisgIE5MODAyMTFfQ0hBTl9XSURUSF84MCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzgwUDgwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NIQU5fV0lEVEhfMTYwLAotIE5MODAyMTFfQ0hBTl9XSURUSF81LAotIE5MODAyMTFfQ0hBTl9XSURUSF8xMCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzE2MCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzUsCisgIE5MODAyMTFfQ0hBTl9XSURUSF8xMCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2Jzc19zY2FuX3dpZHRoIHsKLSBOTDgwMjExX0JTU19DSEFOX1dJRFRIXzIwLAotIE5MODAyMTFfQlNTX0NIQU5fV0lEVEhfMTAsCi0gTkw4MDIxMV9CU1NfQ0hBTl9XSURUSF81LAorICBOTDgwMjExX0JTU19DSEFOX1dJRFRIXzIwLAorICBOTDgwMjExX0JTU19DSEFOX1dJRFRIXzEwLAorICBOTDgwMjExX0JTU19DSEFOX1dJRFRIXzUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9ic3MgewotIF9fTkw4MDIxMV9CU1NfSU5WQUxJRCwKLSBOTDgwMjExX0JTU19CU1NJRCwKKyAgX19OTDgwMjExX0JTU19JTlZBTElELAorICBOTDgwMjExX0JTU19CU1NJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CU1NfRlJFUVVFTkNZLAotIE5MODAyMTFfQlNTX1RTRiwKLSBOTDgwMjExX0JTU19CRUFDT05fSU5URVJWQUwsCi0gTkw4MDIxMV9CU1NfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9CU1NfRlJFUVVFTkNZLAorICBOTDgwMjExX0JTU19UU0YsCisgIE5MODAyMTFfQlNTX0JFQUNPTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9CU1NfQ0FQQUJJTElUWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CU1NfSU5GT1JNQVRJT05fRUxFTUVOVFMsCi0gTkw4MDIxMV9CU1NfU0lHTkFMX01CTSwKLSBOTDgwMjExX0JTU19TSUdOQUxfVU5TUEVDLAotIE5MODAyMTFfQlNTX1NUQVRVUywKKyAgTkw4MDIxMV9CU1NfSU5GT1JNQVRJT05fRUxFTUVOVFMsCisgIE5MODAyMTFfQlNTX1NJR05BTF9NQk0sCisgIE5MODAyMTFfQlNTX1NJR05BTF9VTlNQRUMsCisgIE5MODAyMTFfQlNTX1NUQVRVUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CU1NfU0VFTl9NU19BR08sCi0gTkw4MDIxMV9CU1NfQkVBQ09OX0lFUywKLSBOTDgwMjExX0JTU19DSEFOX1dJRFRILAotIF9fTkw4MDIxMV9CU1NfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9CU1NfU0VFTl9NU19BR08sCisgIE5MODAyMTFfQlNTX0JFQUNPTl9JRVMsCisgIE5MODAyMTFfQlNTX0NIQU5fV0lEVEgsCisgIE5MODAyMTFfQlNTX0JFQUNPTl9UU0YsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQlNTX01BWCA9IF9fTkw4MDIxMV9CU1NfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9CU1NfUFJFU1BfREFUQSwKKyAgX19OTDgwMjExX0JTU19BRlRFUl9MQVNULAorICBOTDgwMjExX0JTU19NQVggPSBfX05MODAyMTFfQlNTX0FGVEVSX0xBU1QgLSAxCiB9OwotZW51bSBubDgwMjExX2Jzc19zdGF0dXMgewotIE5MODAyMTFfQlNTX1NUQVRVU19BVVRIRU5USUNBVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JTU19TVEFUVVNfQVNTT0NJQVRFRCwKLSBOTDgwMjExX0JTU19TVEFUVVNfSUJTU19KT0lORUQsCitlbnVtIG5sODAyMTFfYnNzX3N0YXR1cyB7CisgIE5MODAyMTFfQlNTX1NUQVRVU19BVVRIRU5USUNBVEVELAorICBOTDgwMjExX0JTU19TVEFUVVNfQVNTT0NJQVRFRCwKKyAgTkw4MDIxMV9CU1NfU1RBVFVTX0lCU1NfSk9JTkVELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5sODAyMTFfYXV0aF90eXBlIHsKKyAgTkw4MDIxMV9BVVRIVFlQRV9PUEVOX1NZU1RFTSwKKyAgTkw4MDIxMV9BVVRIVFlQRV9TSEFSRURfS0VZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FVVEhUWVBFX09QRU5fU1lTVEVNLAotIE5MODAyMTFfQVVUSFRZUEVfU0hBUkVEX0tFWSwKLSBOTDgwMjExX0FVVEhUWVBFX0ZULAotIE5MODAyMTFfQVVUSFRZUEVfTkVUV09SS19FQVAsCisgIE5MODAyMTFfQVVUSFRZUEVfRlQsCisgIE5MODAyMTFfQVVUSFRZUEVfTkVUV09SS19FQVAsCisgIE5MODAyMTFfQVVUSFRZUEVfU0FFLAorICBfX05MODAyMTFfQVVUSFRZUEVfTlVNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FVVEhUWVBFX1NBRSwKLSBfX05MODAyMTFfQVVUSFRZUEVfTlVNLAotIE5MODAyMTFfQVVUSFRZUEVfTUFYID0gX19OTDgwMjExX0FVVEhUWVBFX05VTSAtIDEsCi0gTkw4MDIxMV9BVVRIVFlQRV9BVVRPTUFUSUMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfQVVUSFRZUEVfTUFYID0gX19OTDgwMjExX0FVVEhUWVBFX05VTSAtIDEsCisgIE5MODAyMTFfQVVUSFRZUEVfQVVUT01BVElDCiB9OwogZW51bSBubDgwMjExX2tleV90eXBlIHsKLSBOTDgwMjExX0tFWVRZUEVfR1JPVVAsCi0gTkw4MDIxMV9LRVlUWVBFX1BBSVJXSVNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0tFWVRZUEVfUEVFUktFWSwKLSBOVU1fTkw4MDIxMV9LRVlUWVBFUworICBOTDgwMjExX0tFWVRZUEVfR1JPVVAsCisgIE5MODAyMTFfS0VZVFlQRV9QQUlSV0lTRSwKKyAgTkw4MDIxMV9LRVlUWVBFX1BFRVJLRVksCisgIE5VTV9OTDgwMjExX0tFWVRZUEVTCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9tZnAgeworICBOTDgwMjExX01GUF9OTywKKyAgTkw4MDIxMV9NRlBfUkVRVUlSRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUZQX05PLAotIE5MODAyMTFfTUZQX1JFUVVJUkVELAogfTsKIGVudW0gbmw4MDIxMV93cGFfdmVyc2lvbnMgeworICBOTDgwMjExX1dQQV9WRVJTSU9OXzEgPSAxIDw8IDAsCisgIE5MODAyMTFfV1BBX1ZFUlNJT05fMiA9IDEgPDwgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9XUEFfVkVSU0lPTl8xID0gMSA8PCAwLAotIE5MODAyMTFfV1BBX1ZFUlNJT05fMiA9IDEgPDwgMSwKIH07CiBlbnVtIG5sODAyMTFfa2V5X2RlZmF1bHRfdHlwZXMgeworICBfX05MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9JTlZBTElELAorICBOTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVfVU5JQ0FTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVfSU5WQUxJRCwKLSBOTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVfVU5JQ0FTVCwKLSBOTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVfTVVMVElDQVNULAotIE5VTV9OTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVTCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVfTVVMVElDQVNULAorICBOVU1fTkw4MDIxMV9LRVlfREVGQVVMVF9UWVBFUwogfTsKIGVudW0gbmw4MDIxMV9rZXlfYXR0cmlidXRlcyB7Ci0gX19OTDgwMjExX0tFWV9JTlZBTElELAotIE5MODAyMTFfS0VZX0RBVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfS0VZX0lEWCwKLSBOTDgwMjExX0tFWV9DSVBIRVIsCi0gTkw4MDIxMV9LRVlfU0VRLAotIE5MODAyMTFfS0VZX0RFRkFVTFQsCisgIF9fTkw4MDIxMV9LRVlfSU5WQUxJRCwKKyAgTkw4MDIxMV9LRVlfREFUQSwKKyAgTkw4MDIxMV9LRVlfSURYLAorICBOTDgwMjExX0tFWV9DSVBIRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfS0VZX0RFRkFVTFRfTUdNVCwKLSBOTDgwMjExX0tFWV9UWVBFLAotIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRVMsCi0gX19OTDgwMjExX0tFWV9BRlRFUl9MQVNULAorICBOTDgwMjExX0tFWV9TRVEsCisgIE5MODAyMTFfS0VZX0RFRkFVTFQsCisgIE5MODAyMTFfS0VZX0RFRkFVTFRfTUdNVCwKKyAgTkw4MDIxMV9LRVlfVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9LRVlfTUFYID0gX19OTDgwMjExX0tFWV9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVTLAorICBfX05MODAyMTFfS0VZX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfS0VZX01BWCA9IF9fTkw4MDIxMV9LRVlfQUZURVJfTEFTVCAtIDEKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX3R4X3JhdGVfYXR0cmlidXRlcyB7Ci0gX19OTDgwMjExX1RYUkFURV9JTlZBTElELAorICBfX05MODAyMTFfVFhSQVRFX0lOVkFMSUQsCisgIE5MODAyMTFfVFhSQVRFX0xFR0FDWSwKKyAgTkw4MDIxMV9UWFJBVEVfSFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfVFhSQVRFX0xFR0FDWSwKLSBOTDgwMjExX1RYUkFURV9IVCwKLSBOTDgwMjExX1RYUkFURV9WSFQsCi0gX19OTDgwMjExX1RYUkFURV9BRlRFUl9MQVNULAorICBOTDgwMjExX1RYUkFURV9WSFQsCisgIE5MODAyMTFfVFhSQVRFX0dJLAorICBfX05MODAyMTFfVFhSQVRFX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfVFhSQVRFX01BWCA9IF9fTkw4MDIxMV9UWFJBVEVfQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9UWFJBVEVfTUFYID0gX19OTDgwMjExX1RYUkFURV9BRlRFUl9MQVNUIC0gMQogfTsKICNkZWZpbmUgTkw4MDIxMV9UWFJBVEVfTUNTIE5MODAyMTFfVFhSQVRFX0hUCiAjZGVmaW5lIE5MODAyMTFfVkhUX05TU19NQVggOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBubDgwMjExX3R4cmF0ZV92aHQgewotIF9fdTE2IG1jc1tOTDgwMjExX1ZIVF9OU1NfTUFYXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IG1jc1tOTDgwMjExX1ZIVF9OU1NfTUFYXTsKK307CitlbnVtIG5sODAyMTFfdHhyYXRlX2dpIHsKKyAgTkw4MDIxMV9UWFJBVEVfREVGQVVMVF9HSSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfVFhSQVRFX0ZPUkNFX1NHSSwKKyAgTkw4MDIxMV9UWFJBVEVfRk9SQ0VfTEdJLAogfTsKIGVudW0gbmw4MDIxMV9iYW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CQU5EXzJHSFosCi0gTkw4MDIxMV9CQU5EXzVHSFosCi0gTkw4MDIxMV9CQU5EXzYwR0haLAorICBOTDgwMjExX0JBTkRfMkdIWiwKKyAgTkw4MDIxMV9CQU5EXzVHSFosCisgIE5MODAyMTFfQkFORF82MEdIWiwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX3BzX3N0YXRlIHsKLSBOTDgwMjExX1BTX0RJU0FCTEVELAotIE5MODAyMTFfUFNfRU5BQkxFRCwKKyAgTkw4MDIxMV9QU19ESVNBQkxFRCwKKyAgTkw4MDIxMV9QU19FTkFCTEVELAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfYXR0cl9jcW0gewotIF9fTkw4MDIxMV9BVFRSX0NRTV9JTlZBTElELAotIE5MODAyMTFfQVRUUl9DUU1fUlNTSV9USE9MRCwKLSBOTDgwMjExX0FUVFJfQ1FNX1JTU0lfSFlTVCwKKyAgX19OTDgwMjExX0FUVFJfQ1FNX0lOVkFMSUQsCisgIE5MODAyMTFfQVRUUl9DUU1fUlNTSV9USE9MRCwKKyAgTkw4MDIxMV9BVFRSX0NRTV9SU1NJX0hZU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9DUU1fUlNTSV9USFJFU0hPTERfRVZFTlQsCi0gTkw4MDIxMV9BVFRSX0NRTV9QS1RfTE9TU19FVkVOVCwKLSBOTDgwMjExX0FUVFJfQ1FNX1RYRV9SQVRFLAotIE5MODAyMTFfQVRUUl9DUU1fVFhFX1BLVFMsCisgIE5MODAyMTFfQVRUUl9DUU1fUlNTSV9USFJFU0hPTERfRVZFTlQsCisgIE5MODAyMTFfQVRUUl9DUU1fUEtUX0xPU1NfRVZFTlQsCisgIE5MODAyMTFfQVRUUl9DUU1fVFhFX1JBVEUsCisgIE5MODAyMTFfQVRUUl9DUU1fVFhFX1BLVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9DUU1fVFhFX0lOVFZMLAotIF9fTkw4MDIxMV9BVFRSX0NRTV9BRlRFUl9MQVNULAotIE5MODAyMTFfQVRUUl9DUU1fTUFYID0gX19OTDgwMjExX0FUVFJfQ1FNX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfQVRUUl9DUU1fVFhFX0lOVFZMLAorICBfX05MODAyMTFfQVRUUl9DUU1fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9BVFRSX0NRTV9NQVggPSBfX05MODAyMTFfQVRUUl9DUU1fQUZURVJfTEFTVCAtIDEKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2NxbV9yc3NpX3RocmVzaG9sZF9ldmVudCB7Ci0gTkw4MDIxMV9DUU1fUlNTSV9USFJFU0hPTERfRVZFTlRfTE9XLAotIE5MODAyMTFfQ1FNX1JTU0lfVEhSRVNIT0xEX0VWRU5UX0hJR0gsCi0gTkw4MDIxMV9DUU1fUlNTSV9CRUFDT05fTE9TU19FVkVOVCwKKyAgTkw4MDIxMV9DUU1fUlNTSV9USFJFU0hPTERfRVZFTlRfTE9XLAorICBOTDgwMjExX0NRTV9SU1NJX1RIUkVTSE9MRF9FVkVOVF9ISUdILAorICBOTDgwMjExX0NRTV9SU1NJX0JFQUNPTl9MT1NTX0VWRU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5sODAyMTFfdHhfcG93ZXJfc2V0dGluZyB7Ci0gTkw4MDIxMV9UWF9QT1dFUl9BVVRPTUFUSUMsCi0gTkw4MDIxMV9UWF9QT1dFUl9MSU1JVEVELAorICBOTDgwMjExX1RYX1BPV0VSX0FVVE9NQVRJQywKKyAgTkw4MDIxMV9UWF9QT1dFUl9MSU1JVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1RYX1BPV0VSX0ZJWEVELAorICBOTDgwMjExX1RYX1BPV0VSX0ZJWEVELAogfTsKIGVudW0gbmw4MDIxMV9wYWNrZXRfcGF0dGVybl9hdHRyIHsKLSBfX05MODAyMTFfUEtUUEFUX0lOVkFMSUQsCisgIF9fTkw4MDIxMV9QS1RQQVRfSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9QS1RQQVRfTUFTSywKLSBOTDgwMjExX1BLVFBBVF9QQVRURVJOLAotIE5MODAyMTFfUEtUUEFUX09GRlNFVCwKLSBOVU1fTkw4MDIxMV9QS1RQQVQsCisgIE5MODAyMTFfUEtUUEFUX01BU0ssCisgIE5MODAyMTFfUEtUUEFUX1BBVFRFUk4sCisgIE5MODAyMTFfUEtUUEFUX09GRlNFVCwKKyAgTlVNX05MODAyMTFfUEtUUEFULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNQVhfTkw4MDIxMV9QS1RQQVQgPSBOVU1fTkw4MDIxMV9QS1RQQVQgLSAxLAorICBNQVhfTkw4MDIxMV9QS1RQQVQgPSBOVU1fTkw4MDIxMV9QS1RQQVQgLSAxLAogfTsKIHN0cnVjdCBubDgwMjExX3BhdHRlcm5fc3VwcG9ydCB7Ci0gX191MzIgbWF4X3BhdHRlcm5zOworICBfX3UzMiBtYXhfcGF0dGVybnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1pbl9wYXR0ZXJuX2xlbjsKLSBfX3UzMiBtYXhfcGF0dGVybl9sZW47Ci0gX191MzIgbWF4X3BrdF9vZmZzZXQ7CisgIF9fdTMyIG1pbl9wYXR0ZXJuX2xlbjsKKyAgX191MzIgbWF4X3BhdHRlcm5fbGVuOworICBfX3UzMiBtYXhfcGt0X29mZnNldDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05MODAyMTFfV09XTEFOX1BLVFBBVF9JTlZBTElEIF9fTkw4MDIxMV9QS1RQQVRfSU5WQUxJRApAQCAtMTA1MSwyNTkgKzEwOTEsMjg1IEBACiAjZGVmaW5lIG5sODAyMTFfd293bGFuX3BhdHRlcm5fc3VwcG9ydCBubDgwMjExX3BhdHRlcm5fc3VwcG9ydAogZW51bSBubDgwMjExX3dvd2xhbl90cmlnZ2VycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkw4MDIxMV9XT1dMQU5fVFJJR19JTlZBTElELAotIE5MODAyMTFfV09XTEFOX1RSSUdfQU5ZLAotIE5MODAyMTFfV09XTEFOX1RSSUdfRElTQ09OTkVDVCwKLSBOTDgwMjExX1dPV0xBTl9UUklHX01BR0lDX1BLVCwKKyAgX19OTDgwMjExX1dPV0xBTl9UUklHX0lOVkFMSUQsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfQU5ZLAorICBOTDgwMjExX1dPV0xBTl9UUklHX0RJU0NPTk5FQ1QsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfTUFHSUNfUEtULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1dPV0xBTl9UUklHX1BLVF9QQVRURVJOLAotIE5MODAyMTFfV09XTEFOX1RSSUdfR1RLX1JFS0VZX1NVUFBPUlRFRCwKLSBOTDgwMjExX1dPV0xBTl9UUklHX0dUS19SRUtFWV9GQUlMVVJFLAotIE5MODAyMTFfV09XTEFOX1RSSUdfRUFQX0lERU5UX1JFUVVFU1QsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfUEtUX1BBVFRFUk4sCisgIE5MODAyMTFfV09XTEFOX1RSSUdfR1RLX1JFS0VZX1NVUFBPUlRFRCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19HVEtfUkVLRVlfRkFJTFVSRSwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19FQVBfSURFTlRfUkVRVUVTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9XT1dMQU5fVFJJR180V0FZX0hBTkRTSEFLRSwKLSBOTDgwMjExX1dPV0xBTl9UUklHX1JGS0lMTF9SRUxFQVNFLAotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIxMSwKLSBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9QS1RfODAyMTFfTEVOLAorICBOTDgwMjExX1dPV0xBTl9UUklHXzRXQVlfSEFORFNIQUtFLAorICBOTDgwMjExX1dPV0xBTl9UUklHX1JGS0lMTF9SRUxFQVNFLAorICBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9QS1RfODAyMTEsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIxMV9MRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIzLAotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIzX0xFTiwKLSBOTDgwMjExX1dPV0xBTl9UUklHX1RDUF9DT05ORUNUSU9OLAotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1RDUF9NQVRDSCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjMsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIzX0xFTiwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19UQ1BfQ09OTkVDVElPTiwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfVENQX01BVENILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9UQ1BfQ09OTkxPU1QsCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfVENQX05PTU9SRVRPS0VOUywKLSBOVU1fTkw4MDIxMV9XT1dMQU5fVFJJRywKLSBNQVhfTkw4MDIxMV9XT1dMQU5fVFJJRyA9IE5VTV9OTDgwMjExX1dPV0xBTl9UUklHIC0gMQorICBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9UQ1BfQ09OTkxPU1QsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1RDUF9OT01PUkVUT0tFTlMsCisgIE5VTV9OTDgwMjExX1dPV0xBTl9UUklHLAorICBNQVhfTkw4MDIxMV9XT1dMQU5fVFJJRyA9IE5VTV9OTDgwMjExX1dPV0xBTl9UUklHIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgbmw4MDIxMV93b3dsYW5fdGNwX2RhdGFfc2VxIHsKLSBfX3UzMiBzdGFydCwgb2Zmc2V0LCBsZW47CisgIF9fdTMyIHN0YXJ0LCBvZmZzZXQsIGxlbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sODAyMTFfd293bGFuX3RjcF9kYXRhX3Rva2VuIHsKLSBfX3UzMiBvZmZzZXQsIGxlbjsKLSBfX3U4IHRva2VuX3N0cmVhbVtdOworICBfX3UzMiBvZmZzZXQsIGxlbjsKKyAgX191OCB0b2tlbl9zdHJlYW1bXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sODAyMTFfd293bGFuX3RjcF9kYXRhX3Rva2VuX2ZlYXR1cmUgewotIF9fdTMyIG1pbl9sZW4sIG1heF9sZW4sIGJ1ZnNpemU7CisgIF9fdTMyIG1pbl9sZW4sIG1heF9sZW4sIGJ1ZnNpemU7CiB9OwogZW51bSBubDgwMjExX3dvd2xhbl90Y3BfYXR0cnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfV09XTEFOX1RDUF9JTlZBTElELAotIE5MODAyMTFfV09XTEFOX1RDUF9TUkNfSVBWNCwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfRFNUX0lQVjQsCi0gTkw4MDIxMV9XT1dMQU5fVENQX0RTVF9NQUMsCisgIF9fTkw4MDIxMV9XT1dMQU5fVENQX0lOVkFMSUQsCisgIE5MODAyMTFfV09XTEFOX1RDUF9TUkNfSVBWNCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX0RTVF9JUFY0LAorICBOTDgwMjExX1dPV0xBTl9UQ1BfRFNUX01BQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9XT1dMQU5fVENQX1NSQ19QT1JULAotIE5MODAyMTFfV09XTEFOX1RDUF9EU1RfUE9SVCwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9QQVlMT0FELAotIE5MODAyMTFfV09XTEFOX1RDUF9EQVRBX1BBWUxPQURfU0VRLAorICBOTDgwMjExX1dPV0xBTl9UQ1BfU1JDX1BPUlQsCisgIE5MODAyMTFfV09XTEFOX1RDUF9EU1RfUE9SVCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX0RBVEFfUEFZTE9BRCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX0RBVEFfUEFZTE9BRF9TRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfV09XTEFOX1RDUF9EQVRBX1BBWUxPQURfVE9LRU4sCi0gTkw4MDIxMV9XT1dMQU5fVENQX0RBVEFfSU5URVJWQUwsCi0gTkw4MDIxMV9XT1dMQU5fVENQX1dBS0VfUEFZTE9BRCwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfV0FLRV9NQVNLLAorICBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9QQVlMT0FEX1RPS0VOLAorICBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9JTlRFUlZBTCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX1dBS0VfUEFZTE9BRCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX1dBS0VfTUFTSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVNX05MODAyMTFfV09XTEFOX1RDUCwKLSBNQVhfTkw4MDIxMV9XT1dMQU5fVENQID0gTlVNX05MODAyMTFfV09XTEFOX1RDUCAtIDEKKyAgTlVNX05MODAyMTFfV09XTEFOX1RDUCwKKyAgTUFYX05MODAyMTFfV09XTEFOX1RDUCA9IE5VTV9OTDgwMjExX1dPV0xBTl9UQ1AgLSAxCiB9Owogc3RydWN0IG5sODAyMTFfY29hbGVzY2VfcnVsZV9zdXBwb3J0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3J1bGVzOwotIHN0cnVjdCBubDgwMjExX3BhdHRlcm5fc3VwcG9ydCBwYXQ7Ci0gX191MzIgbWF4X2RlbGF5OworICBfX3UzMiBtYXhfcnVsZXM7CisgIHN0cnVjdCBubDgwMjExX3BhdHRlcm5fc3VwcG9ydCBwYXQ7CisgIF9fdTMyIG1heF9kZWxheTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2F0dHJfY29hbGVzY2VfcnVsZSB7Ci0gX19OTDgwMjExX0NPQUxFU0NFX1JVTEVfSU5WQUxJRCwKLSBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRV9ERUxBWSwKLSBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRV9DT05ESVRJT04sCisgIF9fTkw4MDIxMV9DT0FMRVNDRV9SVUxFX0lOVkFMSUQsCisgIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX0RFTEFZLAorICBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRV9DT05ESVRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX1BLVF9QQVRURVJOLAotIE5VTV9OTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSwKLSBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRV9NQVggPSBOVU1fTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEUgLSAxCisgIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX1BLVF9QQVRURVJOLAorICBOVU1fTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEUsCisgIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX01BWCA9IE5VTV9OTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSAtIDEKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2NvYWxlc2NlX2NvbmRpdGlvbiB7Ci0gTkw4MDIxMV9DT0FMRVNDRV9DT05ESVRJT05fTUFUQ0gsCi0gTkw4MDIxMV9DT0FMRVNDRV9DT05ESVRJT05fTk9fTUFUQ0gKKyAgTkw4MDIxMV9DT0FMRVNDRV9DT05ESVRJT05fTUFUQ0gsCisgIE5MODAyMTFfQ09BTEVTQ0VfQ09ORElUSU9OX05PX01BVENICiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9pZmFjZV9saW1pdF9hdHRycyB7Ci0gTkw4MDIxMV9JRkFDRV9MSU1JVF9VTlNQRUMsCi0gTkw4MDIxMV9JRkFDRV9MSU1JVF9NQVgsCi0gTkw4MDIxMV9JRkFDRV9MSU1JVF9UWVBFUywKKyAgTkw4MDIxMV9JRkFDRV9MSU1JVF9VTlNQRUMsCisgIE5MODAyMTFfSUZBQ0VfTElNSVRfTUFYLAorICBOTDgwMjExX0lGQUNFX0xJTUlUX1RZUEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVU1fTkw4MDIxMV9JRkFDRV9MSU1JVCwKLSBNQVhfTkw4MDIxMV9JRkFDRV9MSU1JVCA9IE5VTV9OTDgwMjExX0lGQUNFX0xJTUlUIC0gMQorICBOVU1fTkw4MDIxMV9JRkFDRV9MSU1JVCwKKyAgTUFYX05MODAyMTFfSUZBQ0VfTElNSVQgPSBOVU1fTkw4MDIxMV9JRkFDRV9MSU1JVCAtIDEKIH07CiBlbnVtIG5sODAyMTFfaWZfY29tYmluYXRpb25fYXR0cnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0lGQUNFX0NPTUJfVU5TUEVDLAotIE5MODAyMTFfSUZBQ0VfQ09NQl9MSU1JVFMsCi0gTkw4MDIxMV9JRkFDRV9DT01CX01BWE5VTSwKLSBOTDgwMjExX0lGQUNFX0NPTUJfU1RBX0FQX0JJX01BVENILAorICBOTDgwMjExX0lGQUNFX0NPTUJfVU5TUEVDLAorICBOTDgwMjExX0lGQUNFX0NPTUJfTElNSVRTLAorICBOTDgwMjExX0lGQUNFX0NPTUJfTUFYTlVNLAorICBOTDgwMjExX0lGQUNFX0NPTUJfU1RBX0FQX0JJX01BVENILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0lGQUNFX0NPTUJfTlVNX0NIQU5ORUxTLAotIE5MODAyMTFfSUZBQ0VfQ09NQl9SQURBUl9ERVRFQ1RfV0lEVEhTLAotIE5VTV9OTDgwMjExX0lGQUNFX0NPTUIsCi0gTUFYX05MODAyMTFfSUZBQ0VfQ09NQiA9IE5VTV9OTDgwMjExX0lGQUNFX0NPTUIgLSAxCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9OVU1fQ0hBTk5FTFMsCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9SQURBUl9ERVRFQ1RfV0lEVEhTLAorICBOTDgwMjExX0lGQUNFX0NPTUJfUkFEQVJfREVURUNUX1JFR0lPTlMsCisgIE5VTV9OTDgwMjExX0lGQUNFX0NPTUIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBNQVhfTkw4MDIxMV9JRkFDRV9DT01CID0gTlVNX05MODAyMTFfSUZBQ0VfQ09NQiAtIDEKIH07CiBlbnVtIG5sODAyMTFfcGxpbmtfc3RhdGUgewotIE5MODAyMTFfUExJTktfTElTVEVOLAotIE5MODAyMTFfUExJTktfT1BOX1NOVCwKKyAgTkw4MDIxMV9QTElOS19MSVNURU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUExJTktfT1BOX1JDVkQsCi0gTkw4MDIxMV9QTElOS19DTkZfUkNWRCwKLSBOTDgwMjExX1BMSU5LX0VTVEFCLAotIE5MODAyMTFfUExJTktfSE9MRElORywKKyAgTkw4MDIxMV9QTElOS19PUE5fU05ULAorICBOTDgwMjExX1BMSU5LX09QTl9SQ1ZELAorICBOTDgwMjExX1BMSU5LX0NORl9SQ1ZELAorICBOTDgwMjExX1BMSU5LX0VTVEFCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1BMSU5LX0JMT0NLRUQsCi0gTlVNX05MODAyMTFfUExJTktfU1RBVEVTLAotIE1BWF9OTDgwMjExX1BMSU5LX1NUQVRFUyA9IE5VTV9OTDgwMjExX1BMSU5LX1NUQVRFUyAtIDEKKyAgTkw4MDIxMV9QTElOS19IT0xESU5HLAorICBOTDgwMjExX1BMSU5LX0JMT0NLRUQsCisgIE5VTV9OTDgwMjExX1BMSU5LX1NUQVRFUywKKyAgTUFYX05MODAyMTFfUExJTktfU1RBVEVTID0gTlVNX05MODAyMTFfUExJTktfU1RBVEVTIC0gMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBwbGlua19hY3Rpb25zIHsKLSBOTDgwMjExX1BMSU5LX0FDVElPTl9OT19BQ1RJT04sCi0gTkw4MDIxMV9QTElOS19BQ1RJT05fT1BFTiwKLSBOTDgwMjExX1BMSU5LX0FDVElPTl9CTE9DSywKKyAgTkw4MDIxMV9QTElOS19BQ1RJT05fTk9fQUNUSU9OLAorICBOTDgwMjExX1BMSU5LX0FDVElPTl9PUEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVU1fTkw4MDIxMV9QTElOS19BQ1RJT05TLAorICBOTDgwMjExX1BMSU5LX0FDVElPTl9CTE9DSywKKyAgTlVNX05MODAyMTFfUExJTktfQUNUSU9OUywKIH07CiAjZGVmaW5lIE5MODAyMTFfS0NLX0xFTiAxNgotI2RlZmluZSBOTDgwMjExX0tFS19MRU4gMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5MODAyMTFfS0VLX0xFTiAxNgogI2RlZmluZSBOTDgwMjExX1JFUExBWV9DVFJfTEVOIDgKIGVudW0gbmw4MDIxMV9yZWtleV9kYXRhIHsKLSBfX05MODAyMTFfUkVLRVlfREFUQV9JTlZBTElELAotIE5MODAyMTFfUkVLRVlfREFUQV9LRUssCisgIF9fTkw4MDIxMV9SRUtFWV9EQVRBX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUkVLRVlfREFUQV9LQ0ssCi0gTkw4MDIxMV9SRUtFWV9EQVRBX1JFUExBWV9DVFIsCi0gTlVNX05MODAyMTFfUkVLRVlfREFUQSwKLSBNQVhfTkw4MDIxMV9SRUtFWV9EQVRBID0gTlVNX05MODAyMTFfUkVLRVlfREFUQSAtIDEKKyAgTkw4MDIxMV9SRUtFWV9EQVRBX0tFSywKKyAgTkw4MDIxMV9SRUtFWV9EQVRBX0tDSywKKyAgTkw4MDIxMV9SRUtFWV9EQVRBX1JFUExBWV9DVFIsCisgIE5VTV9OTDgwMjExX1JFS0VZX0RBVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBNQVhfTkw4MDIxMV9SRUtFWV9EQVRBID0gTlVNX05MODAyMTFfUkVLRVlfREFUQSAtIDEKIH07CiBlbnVtIG5sODAyMTFfaGlkZGVuX3NzaWQgewotIE5MODAyMTFfSElEREVOX1NTSURfTk9UX0lOX1VTRSwKLSBOTDgwMjExX0hJRERFTl9TU0lEX1pFUk9fTEVOLAorICBOTDgwMjExX0hJRERFTl9TU0lEX05PVF9JTl9VU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfSElEREVOX1NTSURfWkVST19DT05URU5UUworICBOTDgwMjExX0hJRERFTl9TU0lEX1pFUk9fTEVOLAorICBOTDgwMjExX0hJRERFTl9TU0lEX1pFUk9fQ09OVEVOVFMKIH07CiBlbnVtIG5sODAyMTFfc3RhX3dtZV9hdHRyIHsKLSBfX05MODAyMTFfU1RBX1dNRV9JTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9XTUVfVUFQU0RfUVVFVUVTLAotIE5MODAyMTFfU1RBX1dNRV9NQVhfU1AsCi0gX19OTDgwMjExX1NUQV9XTUVfQUZURVJfTEFTVCwKLSBOTDgwMjExX1NUQV9XTUVfTUFYID0gX19OTDgwMjExX1NUQV9XTUVfQUZURVJfTEFTVCAtIDEKKyAgX19OTDgwMjExX1NUQV9XTUVfSU5WQUxJRCwKKyAgTkw4MDIxMV9TVEFfV01FX1VBUFNEX1FVRVVFUywKKyAgTkw4MDIxMV9TVEFfV01FX01BWF9TUCwKKyAgX19OTDgwMjExX1NUQV9XTUVfQUZURVJfTEFTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfU1RBX1dNRV9NQVggPSBfX05MODAyMTFfU1RBX1dNRV9BRlRFUl9MQVNUIC0gMQogfTsKIGVudW0gbmw4MDIxMV9wbWtzYV9jYW5kaWRhdGVfYXR0ciB7Ci0gX19OTDgwMjExX1BNS1NBX0NBTkRJREFURV9JTlZBTElELAotIE5MODAyMTFfUE1LU0FfQ0FORElEQVRFX0lOREVYLAorICBfX05MODAyMTFfUE1LU0FfQ0FORElEQVRFX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUE1LU0FfQ0FORElEQVRFX0JTU0lELAotIE5MODAyMTFfUE1LU0FfQ0FORElEQVRFX1BSRUFVVEgsCi0gTlVNX05MODAyMTFfUE1LU0FfQ0FORElEQVRFLAotIE1BWF9OTDgwMjExX1BNS1NBX0NBTkRJREFURSA9IE5VTV9OTDgwMjExX1BNS1NBX0NBTkRJREFURSAtIDEKKyAgTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfSU5ERVgsCisgIE5MODAyMTFfUE1LU0FfQ0FORElEQVRFX0JTU0lELAorICBOTDgwMjExX1BNS1NBX0NBTkRJREFURV9QUkVBVVRILAorICBOVU1fTkw4MDIxMV9QTUtTQV9DQU5ESURBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBNQVhfTkw4MDIxMV9QTUtTQV9DQU5ESURBVEUgPSBOVU1fTkw4MDIxMV9QTUtTQV9DQU5ESURBVEUgLSAxCiB9OwogZW51bSBubDgwMjExX3RkbHNfb3BlcmF0aW9uIHsKLSBOTDgwMjExX1RETFNfRElTQ09WRVJZX1JFUSwKLSBOTDgwMjExX1RETFNfU0VUVVAsCisgIE5MODAyMTFfVERMU19ESVNDT1ZFUllfUkVRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1RETFNfVEVBUkRPV04sCi0gTkw4MDIxMV9URExTX0VOQUJMRV9MSU5LLAotIE5MODAyMTFfVERMU19ESVNBQkxFX0xJTkssCisgIE5MODAyMTFfVERMU19TRVRVUCwKKyAgTkw4MDIxMV9URExTX1RFQVJET1dOLAorICBOTDgwMjExX1RETFNfRU5BQkxFX0xJTkssCisgIE5MODAyMTFfVERMU19ESVNBQkxFX0xJTkssCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfZmVhdHVyZV9mbGFncyB7Ci0gTkw4MDIxMV9GRUFUVVJFX1NLX1RYX1NUQVRVUyA9IDEgPDwgMCwKLSBOTDgwMjExX0ZFQVRVUkVfSFRfSUJTUyA9IDEgPDwgMSwKLSBOTDgwMjExX0ZFQVRVUkVfSU5BQ1RJVklUWV9USU1FUiA9IDEgPDwgMiwKKyAgTkw4MDIxMV9GRUFUVVJFX1NLX1RYX1NUQVRVUyA9IDEgPDwgMCwKKyAgTkw4MDIxMV9GRUFUVVJFX0hUX0lCU1MgPSAxIDw8IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfRkVBVFVSRV9DRUxMX0JBU0VfUkVHX0hJTlRTID0gMSA8PCAzLAotIE5MODAyMTFfRkVBVFVSRV9QMlBfREVWSUNFX05FRURTX0NIQU5ORUwgPSAxIDw8IDQsCi0gTkw4MDIxMV9GRUFUVVJFX1NBRSA9IDEgPDwgNSwKLSBOTDgwMjExX0ZFQVRVUkVfTE9XX1BSSU9SSVRZX1NDQU4gPSAxIDw8IDYsCisgIE5MODAyMTFfRkVBVFVSRV9JTkFDVElWSVRZX1RJTUVSID0gMSA8PCAyLAorICBOTDgwMjExX0ZFQVRVUkVfQ0VMTF9CQVNFX1JFR19ISU5UUyA9IDEgPDwgMywKKyAgTkw4MDIxMV9GRUFUVVJFX1AyUF9ERVZJQ0VfTkVFRFNfQ0hBTk5FTCA9IDEgPDwgNCwKKyAgTkw4MDIxMV9GRUFUVVJFX1NBRSA9IDEgPDwgNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GRUFUVVJFX1NDQU5fRkxVU0ggPSAxIDw8IDcsCi0gTkw4MDIxMV9GRUFUVVJFX0FQX1NDQU4gPSAxIDw8IDgsCi0gTkw4MDIxMV9GRUFUVVJFX1ZJRl9UWFBPV0VSID0gMSA8PCA5LAotIE5MODAyMTFfRkVBVFVSRV9ORUVEX09CU1NfU0NBTiA9IDEgPDwgMTAsCisgIE5MODAyMTFfRkVBVFVSRV9MT1dfUFJJT1JJVFlfU0NBTiA9IDEgPDwgNiwKKyAgTkw4MDIxMV9GRUFUVVJFX1NDQU5fRkxVU0ggPSAxIDw8IDcsCisgIE5MODAyMTFfRkVBVFVSRV9BUF9TQ0FOID0gMSA8PCA4LAorICBOTDgwMjExX0ZFQVRVUkVfVklGX1RYUE9XRVIgPSAxIDw8IDksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfRkVBVFVSRV9QMlBfR09fQ1RXSU4gPSAxIDw8IDExLAotIE5MODAyMTFfRkVBVFVSRV9QMlBfR09fT1BQUFMgPSAxIDw8IDEyLAotIE5MODAyMTFfRkVBVFVSRV9BRFZFUlRJU0VfQ0hBTl9MSU1JVFMgPSAxIDw8IDE0LAotIE5MODAyMTFfRkVBVFVSRV9GVUxMX0FQX0NMSUVOVF9TVEFURSA9IDEgPDwgMTUsCisgIE5MODAyMTFfRkVBVFVSRV9ORUVEX09CU1NfU0NBTiA9IDEgPDwgMTAsCisgIE5MODAyMTFfRkVBVFVSRV9QMlBfR09fQ1RXSU4gPSAxIDw8IDExLAorICBOTDgwMjExX0ZFQVRVUkVfUDJQX0dPX09QUFBTID0gMSA8PCAxMiwKKyAgTkw4MDIxMV9GRUFUVVJFX0FEVkVSVElTRV9DSEFOX0xJTUlUUyA9IDEgPDwgMTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfRkVBVFVSRV9VU0VSU1BBQ0VfTVBNID0gMSA8PCAxNiwKLSBOTDgwMjExX0ZFQVRVUkVfQUNUSVZFX01PTklUT1IgPSAxIDw8IDE3LAorICBOTDgwMjExX0ZFQVRVUkVfRlVMTF9BUF9DTElFTlRfU1RBVEUgPSAxIDw8IDE1LAorICBOTDgwMjExX0ZFQVRVUkVfVVNFUlNQQUNFX01QTSA9IDEgPDwgMTYsCisgIE5MODAyMTFfRkVBVFVSRV9BQ1RJVkVfTU9OSVRPUiA9IDEgPDwgMTcsCisgIE5MODAyMTFfRkVBVFVSRV9BUF9NT0RFX0NIQU5fV0lEVEhfQ0hBTkdFID0gMSA8PCAxOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfRkVBVFVSRV9EU19QQVJBTV9TRVRfSUVfSU5fUFJPQkVTID0gMSA8PCAxOSwKKyAgTkw4MDIxMV9GRUFUVVJFX1dGQV9UUENfSUVfSU5fUFJPQkVTID0gMSA8PCAyMCwKKyAgTkw4MDIxMV9GRUFUVVJFX1FVSUVUID0gMSA8PCAyMSwKKyAgTkw4MDIxMV9GRUFUVVJFX1RYX1BPV0VSX0lOU0VSVElPTiA9IDEgPDwgMjIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX0ZFQVRVUkVfQUNLVE9fRVNUSU1BVElPTiA9IDEgPDwgMjMsCisgIE5MODAyMTFfRkVBVFVSRV9TVEFUSUNfU01QUyA9IDEgPDwgMjQsCisgIE5MODAyMTFfRkVBVFVSRV9EWU5BTUlDX1NNUFMgPSAxIDw8IDI1LAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfcHJvYmVfcmVzcF9vZmZsb2FkX3N1cHBvcnRfYXR0ciB7CisgIE5MODAyMTFfUFJPQkVfUkVTUF9PRkZMT0FEX1NVUFBPUlRfV1BTID0gMSA8PCAwLAorICBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUX1dQUzIgPSAxIDw8IDEsCisgIE5MODAyMTFfUFJPQkVfUkVTUF9PRkZMT0FEX1NVUFBPUlRfUDJQID0gMSA8PCAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUX1dQUyA9IDE8PDAsCi0gTkw4MDIxMV9QUk9CRV9SRVNQX09GRkxPQURfU1VQUE9SVF9XUFMyID0gMTw8MSwKLSBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUX1AyUCA9IDE8PDIsCi0gTkw4MDIxMV9QUk9CRV9SRVNQX09GRkxPQURfU1VQUE9SVF84MDIxMVUgPSAxPDwzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9QUk9CRV9SRVNQX09GRkxPQURfU1VQUE9SVF84MDIxMVUgPSAxIDw8IDMsCiB9OwogZW51bSBubDgwMjExX2Nvbm5lY3RfZmFpbGVkX3JlYXNvbiB7Ci0gTkw4MDIxMV9DT05OX0ZBSUxfTUFYX0NMSUVOVFMsCi0gTkw4MDIxMV9DT05OX0ZBSUxfQkxPQ0tFRF9DTElFTlQsCisgIE5MODAyMTFfQ09OTl9GQUlMX01BWF9DTElFTlRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9DT05OX0ZBSUxfQkxPQ0tFRF9DTElFTlQsCiB9OwogZW51bSBubDgwMjExX3NjYW5fZmxhZ3MgewotIE5MODAyMTFfU0NBTl9GTEFHX0xPV19QUklPUklUWSA9IDE8PDAsCi0gTkw4MDIxMV9TQ0FOX0ZMQUdfRkxVU0ggPSAxPDwxLAorICBOTDgwMjExX1NDQU5fRkxBR19MT1dfUFJJT1JJVFkgPSAxIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU0NBTl9GTEFHX0FQID0gMTw8MiwKKyAgTkw4MDIxMV9TQ0FOX0ZMQUdfRkxVU0ggPSAxIDw8IDEsCisgIE5MODAyMTFfU0NBTl9GTEFHX0FQID0gMSA8PCAyLAogfTsKIGVudW0gbmw4MDIxMV9hY2xfcG9saWN5IHsKLSBOTDgwMjExX0FDTF9QT0xJQ1lfQUNDRVBUX1VOTEVTU19MSVNURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQUNMX1BPTElDWV9ERU5ZX1VOTEVTU19MSVNURUQsCisgIE5MODAyMTFfQUNMX1BPTElDWV9BQ0NFUFRfVU5MRVNTX0xJU1RFRCwKKyAgTkw4MDIxMV9BQ0xfUE9MSUNZX0RFTllfVU5MRVNTX0xJU1RFRCwKK307CitlbnVtIG5sODAyMTFfc21wc19tb2RlIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfU01QU19PRkYsCisgIE5MODAyMTFfU01QU19TVEFUSUMsCisgIE5MODAyMTFfU01QU19EWU5BTUlDLAorICBfX05MODAyMTFfU01QU19BRlRFUl9MQVNULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9TTVBTX01BWCA9IF9fTkw4MDIxMV9TTVBTX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX3JhZGFyX2V2ZW50IHsKLSBOTDgwMjExX1JBREFSX0RFVEVDVEVELAorICBOTDgwMjExX1JBREFSX0RFVEVDVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JBREFSX0NBQ19GSU5JU0hFRCwKLSBOTDgwMjExX1JBREFSX0NBQ19BQk9SVEVELAotIE5MODAyMTFfUkFEQVJfTk9QX0ZJTklTSEVELAorICBOTDgwMjExX1JBREFSX0NBQ19GSU5JU0hFRCwKKyAgTkw4MDIxMV9SQURBUl9DQUNfQUJPUlRFRCwKKyAgTkw4MDIxMV9SQURBUl9OT1BfRklOSVNIRUQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9kZnNfc3RhdGUgewotIE5MODAyMTFfREZTX1VTQUJMRSwKLSBOTDgwMjExX0RGU19VTkFWQUlMQUJMRSwKLSBOTDgwMjExX0RGU19BVkFJTEFCTEUsCisgIE5MODAyMTFfREZTX1VTQUJMRSwKKyAgTkw4MDIxMV9ERlNfVU5BVkFJTEFCTEUsCisgIE5MODAyMTFfREZTX0FWQUlMQUJMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX3Byb3RvY29sX2ZlYXR1cmVzIHsKLSBOTDgwMjExX1BST1RPQ09MX0ZFQVRVUkVfU1BMSVRfV0lQSFlfRFVNUCA9IDEgPDwgMCwKKyAgTkw4MDIxMV9QUk9UT0NPTF9GRUFUVVJFX1NQTElUX1dJUEhZX0RVTVAgPSAxIDw8IDAsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9jcml0X3Byb3RvX2lkIHsKLSBOTDgwMjExX0NSSVRfUFJPVE9fVU5TUEVDLAotIE5MODAyMTFfQ1JJVF9QUk9UT19ESENQLAotIE5MODAyMTFfQ1JJVF9QUk9UT19FQVBPTCwKKyAgTkw4MDIxMV9DUklUX1BST1RPX1VOU1BFQywKKyAgTkw4MDIxMV9DUklUX1BST1RPX0RIQ1AsCisgIE5MODAyMTFfQ1JJVF9QUk9UT19FQVBPTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DUklUX1BST1RPX0FQSVBBLAotIE5VTV9OTDgwMjExX0NSSVRfUFJPVE8KKyAgTkw4MDIxMV9DUklUX1BST1RPX0FQSVBBLAorICBOVU1fTkw4MDIxMV9DUklUX1BST1RPCiB9OwogI2RlZmluZSBOTDgwMjExX0NSSVRfUFJPVE9fTUFYX0RVUkFUSU9OIDUwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfcnhtZ210X2ZsYWdzIHsKLSBOTDgwMjExX1JYTUdNVF9GTEFHX0FOU1dFUkVEID0gMSA8PCAwLAorICBOTDgwMjExX1JYTUdNVF9GTEFHX0FOU1dFUkVEID0gMSA8PCAwLAogfTsKICNkZWZpbmUgTkw4MDIxMV9WRU5ET1JfSURfSVNfTElOVVggMHg4MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBubDgwMjExX3ZlbmRvcl9jbWRfaW5mbyB7Ci0gX191MzIgdmVuZG9yX2lkOwotIF9fdTMyIHN1YmNtZDsKKyAgX191MzIgdmVuZG9yX2lkOworICBfX3UzMiBzdWJjbWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gbmw4MDIxMV90ZGxzX3BlZXJfY2FwYWJpbGl0eSB7CisgIE5MODAyMTFfVERMU19QRUVSX0hUID0gMSA8PCAwLAorICBOTDgwMjExX1RETFNfUEVFUl9WSFQgPSAxIDw8IDEsCisgIE5MODAyMTFfVERMU19QRUVSX1dNTSA9IDEgPDwgMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L251YnVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L251YnVzLmgKaW5kZXggNDZkNmFiYy4uZGFlZTY1ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udWJ1cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnVidXMuaApAQCAtMjEsMTg4ICsyMSwxODUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSBudWJ1c19jYXRlZ29yeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0NBVF9CT0FSRCA9IDB4MDAwMSwKLSBOVUJVU19DQVRfRElTUExBWSA9IDB4MDAwMywKLSBOVUJVU19DQVRfTkVUV09SSyA9IDB4MDAwNCwKLSBOVUJVU19DQVRfQ09NTVVOSUNBVElPTlMgPSAweDAwMDYsCisgIE5VQlVTX0NBVF9CT0FSRCA9IDB4MDAwMSwKKyAgTlVCVVNfQ0FUX0RJU1BMQVkgPSAweDAwMDMsCisgIE5VQlVTX0NBVF9ORVRXT1JLID0gMHgwMDA0LAorICBOVUJVU19DQVRfQ09NTVVOSUNBVElPTlMgPSAweDAwMDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0NBVF9GT05UID0gMHgwMDA5LAotIE5VQlVTX0NBVF9DUFUgPSAweDAwMEEsCi0gTlVCVVNfQ0FUX0RVT0RPQ0sgPSAweDAwMjAKKyAgTlVCVVNfQ0FUX0ZPTlQgPSAweDAwMDksCisgIE5VQlVTX0NBVF9DUFUgPSAweDAwMEEsCisgIE5VQlVTX0NBVF9EVU9ET0NLID0gMHgwMDIwCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbnVidXNfdHlwZV9uZXR3b3JrIHsKLSBOVUJVU19UWVBFX0VUSEVSTkVUID0gMHgwMDAxLAotIE5VQlVTX1RZUEVfUlMyMzIgPSAweDAwMDIKKyAgTlVCVVNfVFlQRV9FVEhFUk5FVCA9IDB4MDAwMSwKKyAgTlVCVVNfVFlQRV9SUzIzMiA9IDB4MDAwMgogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG51YnVzX3R5cGVfZGlzcGxheSB7Ci0gTlVCVVNfVFlQRV9WSURFTyA9IDB4MDAwMQorICBOVUJVU19UWVBFX1ZJREVPID0gMHgwMDAxCiB9OwogZW51bSBudWJ1c190eXBlX2NwdSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1RZUEVfNjgwMjAgPSAweDAwMDMsCi0gTlVCVVNfVFlQRV82ODAzMCA9IDB4MDAwNCwKLSBOVUJVU19UWVBFXzY4MDQwID0gMHgwMDA1CisgIE5VQlVTX1RZUEVfNjgwMjAgPSAweDAwMDMsCisgIE5VQlVTX1RZUEVfNjgwMzAgPSAweDAwMDQsCisgIE5VQlVTX1RZUEVfNjgwNDAgPSAweDAwMDUKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBudWJ1c19kcnN3IHsKLSBOVUJVU19EUlNXX0FQUExFID0gMHgwMDAxLAotIE5VQlVTX0RSU1dfQVBQTEVfSElSRVMgPSAweDAwMTMsCi0gTlVCVVNfRFJTV18zQ09NID0gMHgwMDAwLAorICBOVUJVU19EUlNXX0FQUExFID0gMHgwMDAxLAorICBOVUJVU19EUlNXX0FQUExFX0hJUkVTID0gMHgwMDEzLAorICBOVUJVU19EUlNXXzNDT00gPSAweDAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSU1dfQ0FCTEVUUk9OID0gMHgwMDAxLAotIE5VQlVTX0RSU1dfU09OSUNfTEMgPSAweDAwMDEsCi0gTlVCVVNfRFJTV19LSU5FVElDUyA9IDB4MDEwMywKLSBOVUJVU19EUlNXX0FTQU5URSA9IDB4MDEwNCwKKyAgTlVCVVNfRFJTV19DQUJMRVRST04gPSAweDAwMDEsCisgIE5VQlVTX0RSU1dfU09OSUNfTEMgPSAweDAwMDEsCisgIE5VQlVTX0RSU1dfS0lORVRJQ1MgPSAweDAxMDMsCisgIE5VQlVTX0RSU1dfQVNBTlRFID0gMHgwMTA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUlNXX1RFQ0hXT1JLUyA9IDB4MDEwOSwKLSBOVUJVU19EUlNXX0RBWU5BID0gMHgwMTBiLAotIE5VQlVTX0RSU1dfRkFSQUxMT04gPSAweDAxMGMsCi0gTlVCVVNfRFJTV19BUFBMRV9TTiA9IDB4MDEwZiwKKyAgTlVCVVNfRFJTV19URUNIV09SS1MgPSAweDAxMDksCisgIE5VQlVTX0RSU1dfREFZTkEgPSAweDAxMGIsCisgIE5VQlVTX0RSU1dfRkFSQUxMT04gPSAweDAxMGMsCisgIE5VQlVTX0RSU1dfQVBQTEVfU04gPSAweDAxMGYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSU1dfREFZTkEyID0gMHgwMTE1LAotIE5VQlVTX0RSU1dfRk9DVVMgPSAweDAxMWEsCi0gTlVCVVNfRFJTV19BU0FOVEVfQ1MgPSAweDAxMWQsCi0gTlVCVVNfRFJTV19EQVlOQV9MQyA9IDB4MDExZSwKKyAgTlVCVVNfRFJTV19EQVlOQTIgPSAweDAxMTUsCisgIE5VQlVTX0RSU1dfRk9DVVMgPSAweDAxMWEsCisgIE5VQlVTX0RSU1dfQVNBTlRFX0NTID0gMHgwMTFkLAorICBOVUJVU19EUlNXX0RBWU5BX0xDID0gMHgwMTFlLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUlNXX05PTkUgPSAweDAwMDAsCisgIE5VQlVTX0RSU1dfTk9ORSA9IDB4MDAwMCwKIH07CiBlbnVtIG51YnVzX2RyaHcgewotIE5VQlVTX0RSSFdfQVBQTEVfVEZCID0gMHgwMDAxLAorICBOVUJVU19EUkhXX0FQUExFX1RGQiA9IDB4MDAwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19BUFBMRV9XVkMgPSAweDAwMDYsCi0gTlVCVVNfRFJIV19TSUdNQV9DTFJNQVggPSAweDAwMDcsCi0gTlVCVVNfRFJIV19BUFBMRV9TRTMwID0gMHgwMDA5LAotIE5VQlVTX0RSSFdfQVBQTEVfSFJWQyA9IDB4MDAxMywKKyAgTlVCVVNfRFJIV19BUFBMRV9XVkMgPSAweDAwMDYsCisgIE5VQlVTX0RSSFdfU0lHTUFfQ0xSTUFYID0gMHgwMDA3LAorICBOVUJVU19EUkhXX0FQUExFX1NFMzAgPSAweDAwMDksCisgIE5VQlVTX0RSSFdfQVBQTEVfSFJWQyA9IDB4MDAxMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19BUFBMRV9QVkMgPSAweDAwMTcsCi0gTlVCVVNfRFJIV19BUFBMRV9SQlYxID0gMHgwMDE4LAotIE5VQlVTX0RSSFdfQVBQTEVfTURDID0gMHgwMDE5LAotIE5VQlVTX0RSSFdfQVBQTEVfU09OT1JBID0gMHgwMDIyLAorICBOVUJVU19EUkhXX0FQUExFX1BWQyA9IDB4MDAxNywKKyAgTlVCVVNfRFJIV19BUFBMRV9SQlYxID0gMHgwMDE4LAorICBOVUJVU19EUkhXX0FQUExFX01EQyA9IDB4MDAxOSwKKyAgTlVCVVNfRFJIV19BUFBMRV9TT05PUkEgPSAweDAwMjIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfQVBQTEVfMjRBQyA9IDB4MDAyYiwKLSBOVUJVU19EUkhXX0FQUExFX1ZBTEtZUklFID0gMHgwMDJlLAotIE5VQlVTX0RSSFdfQVBQTEVfSkVUID0gMHgwMDI5LAotIE5VQlVTX0RSSFdfU01BQ19HRlggPSAweDAxMDUsCisgIE5VQlVTX0RSSFdfQVBQTEVfMjRBQyA9IDB4MDAyYiwKKyAgTlVCVVNfRFJIV19BUFBMRV9WQUxLWVJJRSA9IDB4MDAyZSwKKyAgTlVCVVNfRFJIV19BUFBMRV9KRVQgPSAweDAwMjksCisgIE5VQlVTX0RSSFdfU01BQ19HRlggPSAweDAxMDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfUkFTVEVSX0NCMjY0ID0gMHgwMTNCLAotIE5VQlVTX0RSSFdfTUlDUk9OX1hDRUVEID0gMHgwMTQ2LAotIE5VQlVTX0RSSFdfUkRJVVNfR1NDID0gMHgwMTUzLAotIE5VQlVTX0RSSFdfU01BQ19TUEVDOCA9IDB4MDE3QiwKKyAgTlVCVVNfRFJIV19SQVNURVJfQ0IyNjQgPSAweDAxM0IsCisgIE5VQlVTX0RSSFdfTUlDUk9OX1hDRUVEID0gMHgwMTQ2LAorICBOVUJVU19EUkhXX1JESVVTX0dTQyA9IDB4MDE1MywKKyAgTlVCVVNfRFJIV19TTUFDX1NQRUM4ID0gMHgwMTdCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX1NNQUNfU1BFQzI0ID0gMHgwMTdDLAotIE5VQlVTX0RSSFdfUkFTVEVSX0NCMzY0ID0gMHgwMjZGLAotIE5VQlVTX0RSSFdfUkRJVVNfRENHWCA9IDB4MDI3QywKLSBOVUJVU19EUkhXX1JESVVTX1BDOCA9IDB4MDI5MSwKKyAgTlVCVVNfRFJIV19TTUFDX1NQRUMyNCA9IDB4MDE3QywKKyAgTlVCVVNfRFJIV19SQVNURVJfQ0IzNjQgPSAweDAyNkYsCisgIE5VQlVTX0RSSFdfUkRJVVNfRENHWCA9IDB4MDI3QywKKyAgTlVCVVNfRFJIV19SRElVU19QQzggPSAweDAyOTEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfTEFQSVNfUENTOCA9IDB4MDI5MiwKLSBOVUJVU19EUkhXX1JBU1RFUl8yNFhMSSA9IDB4MDJBMCwKLSBOVUJVU19EUkhXX1JBU1RFUl9QQlBHVCA9IDB4MDJBNSwKLSBOVUJVU19EUkhXX0VNQUNIX0ZTWCA9IDB4MDJBRSwKKyAgTlVCVVNfRFJIV19MQVBJU19QQ1M4ID0gMHgwMjkyLAorICBOVUJVU19EUkhXX1JBU1RFUl8yNFhMSSA9IDB4MDJBMCwKKyAgTlVCVVNfRFJIV19SQVNURVJfUEJQR1QgPSAweDAyQTUsCisgIE5VQlVTX0RSSFdfRU1BQ0hfRlNYID0gMHgwMkFFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX1JBU1RFUl8yNFhMVFYgPSAweDAyQjcsCi0gTlVCVVNfRFJIV19TTUFDX1RIVU5EMjQgPSAweDAyQ0IsCi0gTlVCVVNfRFJIV19TTUFDX1RIVU5ETEdIVCA9IDB4MDNEOSwKLSBOVUJVU19EUkhXX1JESVVTX1BDMjRYUCA9IDB4MDQwNiwKKyAgTlVCVVNfRFJIV19SQVNURVJfMjRYTFRWID0gMHgwMkI3LAorICBOVUJVU19EUkhXX1NNQUNfVEhVTkQyNCA9IDB4MDJDQiwKKyAgTlVCVVNfRFJIV19TTUFDX1RIVU5ETEdIVCA9IDB4MDNEOSwKKyAgTlVCVVNfRFJIV19SRElVU19QQzI0WFAgPSAweDA0MDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfUkRJVVNfUEMyNFggPSAweDA0MEEsCi0gTlVCVVNfRFJIV19SRElVU19QQzhYSiA9IDB4MDQwQiwKLSBOVUJVU19EUkhXX0lOVEVSTEFOID0gMHgwMTAwLAotIE5VQlVTX0RSSFdfU01DOTE5NCA9IDB4MDEwMSwKKyAgTlVCVVNfRFJIV19SRElVU19QQzI0WCA9IDB4MDQwQSwKKyAgTlVCVVNfRFJIV19SRElVU19QQzhYSiA9IDB4MDQwQiwKKyAgTlVCVVNfRFJIV19JTlRFUkxBTiA9IDB4MDEwMCwKKyAgTlVCVVNfRFJIV19TTUM5MTk0ID0gMHgwMTAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX0tJTkVUSUNTID0gMHgwMTA2LAotIE5VQlVTX0RSSFdfQ0FCTEVUUk9OID0gMHgwMTA5LAotIE5VQlVTX0RSSFdfQVNBTlRFX0xDID0gMHgwMTBmLAotIE5VQlVTX0RSSFdfU09OSUMgPSAweDAxMTAsCisgIE5VQlVTX0RSSFdfS0lORVRJQ1MgPSAweDAxMDYsCisgIE5VQlVTX0RSSFdfQ0FCTEVUUk9OID0gMHgwMTA5LAorICBOVUJVU19EUkhXX0FTQU5URV9MQyA9IDB4MDEwZiwKKyAgTlVCVVNfRFJIV19TT05JQyA9IDB4MDExMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19URUNIV09SS1MgPSAweDAxMTIsCi0gTlVCVVNfRFJIV19BUFBMRV9TT05JQ19OQiA9IDB4MDExOCwKLSBOVUJVU19EUkhXX0FQUExFX1NPTklDX0xDID0gMHgwMTE5LAotIE5VQlVTX0RSSFdfRk9DVVMgPSAweDAxMWMsCisgIE5VQlVTX0RSSFdfVEVDSFdPUktTID0gMHgwMTEyLAorICBOVUJVU19EUkhXX0FQUExFX1NPTklDX05CID0gMHgwMTE4LAorICBOVUJVU19EUkhXX0FQUExFX1NPTklDX0xDID0gMHgwMTE5LAorICBOVUJVU19EUkhXX0ZPQ1VTID0gMHgwMTFjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX1NPTk5FVCA9IDB4MDExZCwKKyAgTlVCVVNfRFJIV19TT05ORVQgPSAweDAxMWQsCiB9OwogZW51bSBudWJ1c19yZXNfaWQgewotIE5VQlVTX1JFU0lEX1RZUEUgPSAweDAwMDEsCisgIE5VQlVTX1JFU0lEX1RZUEUgPSAweDAwMDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX05BTUUgPSAweDAwMDIsCi0gTlVCVVNfUkVTSURfSUNPTiA9IDB4MDAwMywKLSBOVUJVU19SRVNJRF9EUlZSRElSID0gMHgwMDA0LAotIE5VQlVTX1JFU0lEX0xPQURSRUMgPSAweDAwMDUsCisgIE5VQlVTX1JFU0lEX05BTUUgPSAweDAwMDIsCisgIE5VQlVTX1JFU0lEX0lDT04gPSAweDAwMDMsCisgIE5VQlVTX1JFU0lEX0RSVlJESVIgPSAweDAwMDQsCisgIE5VQlVTX1JFU0lEX0xPQURSRUMgPSAweDAwMDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX0JPT1RSRUMgPSAweDAwMDYsCi0gTlVCVVNfUkVTSURfRkxBR1MgPSAweDAwMDcsCi0gTlVCVVNfUkVTSURfSFdERVZJRCA9IDB4MDAwOCwKLSBOVUJVU19SRVNJRF9NSU5PUl9CQVNFT1MgPSAweDAwMGEsCisgIE5VQlVTX1JFU0lEX0JPT1RSRUMgPSAweDAwMDYsCisgIE5VQlVTX1JFU0lEX0ZMQUdTID0gMHgwMDA3LAorICBOVUJVU19SRVNJRF9IV0RFVklEID0gMHgwMDA4LAorICBOVUJVU19SRVNJRF9NSU5PUl9CQVNFT1MgPSAweDAwMGEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX01JTk9SX0xFTkdUSCA9IDB4MDAwYiwKLSBOVUJVU19SRVNJRF9NQUpPUl9CQVNFT1MgPSAweDAwMGMsCi0gTlVCVVNfUkVTSURfTUFKT1JfTEVOR1RIID0gMHgwMDBkLAotIE5VQlVTX1JFU0lEX0NJQ04gPSAweDAwMGYsCisgIE5VQlVTX1JFU0lEX01JTk9SX0xFTkdUSCA9IDB4MDAwYiwKKyAgTlVCVVNfUkVTSURfTUFKT1JfQkFTRU9TID0gMHgwMDBjLAorICBOVUJVU19SRVNJRF9NQUpPUl9MRU5HVEggPSAweDAwMGQsCisgIE5VQlVTX1JFU0lEX0NJQ04gPSAweDAwMGYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX0lDTDggPSAweDAwMTAsCi0gTlVCVVNfUkVTSURfSUNMNCA9IDB4MDAxMSwKKyAgTlVCVVNfUkVTSURfSUNMOCA9IDB4MDAxMCwKKyAgTlVCVVNfUkVTSURfSUNMNCA9IDB4MDAxMSwKIH07CiBlbnVtIG51YnVzX2JvYXJkX3Jlc19pZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX0JPQVJESUQgPSAweDAwMjAsCi0gTlVCVVNfUkVTSURfUFJBTUlOSVREQVRBID0gMHgwMDIxLAotIE5VQlVTX1JFU0lEX1BSSU1BUllJTklUID0gMHgwMDIyLAotIE5VQlVTX1JFU0lEX1RJTUVPVVRDT05TVCA9IDB4MDAyMywKKyAgTlVCVVNfUkVTSURfQk9BUkRJRCA9IDB4MDAyMCwKKyAgTlVCVVNfUkVTSURfUFJBTUlOSVREQVRBID0gMHgwMDIxLAorICBOVUJVU19SRVNJRF9QUklNQVJZSU5JVCA9IDB4MDAyMiwKKyAgTlVCVVNfUkVTSURfVElNRU9VVENPTlNUID0gMHgwMDIzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19SRVNJRF9WRU5ET1JJTkZPID0gMHgwMDI0LAotIE5VQlVTX1JFU0lEX0JPQVJERkxBR1MgPSAweDAwMjUsCi0gTlVCVVNfUkVTSURfU0VDT05ESU5JVCA9IDB4MDAyNiwKLSBOVUJVU19SRVNJRF9WSUROQU1FUyA9IDB4MDA0MSwKKyAgTlVCVVNfUkVTSURfVkVORE9SSU5GTyA9IDB4MDAyNCwKKyAgTlVCVVNfUkVTSURfQk9BUkRGTEFHUyA9IDB4MDAyNSwKKyAgTlVCVVNfUkVTSURfU0VDT05ESU5JVCA9IDB4MDAyNiwKKyAgTlVCVVNfUkVTSURfVklETkFNRVMgPSAweDAwNDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX1ZJRE1PREVTID0gMHgwMDdlCisgIE5VQlVTX1JFU0lEX1ZJRE1PREVTID0gMHgwMDdlCiB9OwogZW51bSBudWJ1c192ZW5kb3JfcmVzX2lkIHsKLSBOVUJVU19SRVNJRF9WRU5EX0lEID0gMHgwMDAxLAorICBOVUJVU19SRVNJRF9WRU5EX0lEID0gMHgwMDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19SRVNJRF9WRU5EX1NFUklBTCA9IDB4MDAwMiwKLSBOVUJVU19SRVNJRF9WRU5EX1JFViA9IDB4MDAwMywKLSBOVUJVU19SRVNJRF9WRU5EX1BBUlQgPSAweDAwMDQsCi0gTlVCVVNfUkVTSURfVkVORF9EQVRFID0gMHgwMDA1CisgIE5VQlVTX1JFU0lEX1ZFTkRfU0VSSUFMID0gMHgwMDAyLAorICBOVUJVU19SRVNJRF9WRU5EX1JFViA9IDB4MDAwMywKKyAgTlVCVVNfUkVTSURfVkVORF9QQVJUID0gMHgwMDA0LAorICBOVUJVU19SRVNJRF9WRU5EX0RBVEUgPSAweDAwMDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBudWJ1c19uZXRfcmVzX2lkIHsKLSBOVUJVU19SRVNJRF9NQUNfQUREUkVTUyA9IDB4MDA4MAorICBOVUJVU19SRVNJRF9NQUNfQUREUkVTUyA9IDB4MDA4MAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG51YnVzX2NwdV9yZXNfaWQgewotIE5VQlVTX1JFU0lEX01FTUlORk8gPSAweDAwODEsCi0gTlVCVVNfUkVTSURfUk9NSU5GTyA9IDB4MDA4MgorICBOVUJVU19SRVNJRF9NRU1JTkZPID0gMHgwMDgxLAorICBOVUJVU19SRVNJRF9ST01JTkZPID0gMHgwMDgyCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbnVidXNfZGlzcGxheV9yZXNfaWQgewotIE5VQlVTX1JFU0lEX0dBTU1BRElSID0gMHgwMDQwLAotIE5VQlVTX1JFU0lEX0ZJUlNUTU9ERSA9IDB4MDA4MCwKLSBOVUJVU19SRVNJRF9TRUNPTkRNT0RFID0gMHgwMDgxLAorICBOVUJVU19SRVNJRF9HQU1NQURJUiA9IDB4MDA0MCwKKyAgTlVCVVNfUkVTSURfRklSU1RNT0RFID0gMHgwMDgwLAorICBOVUJVU19SRVNJRF9TRUNPTkRNT0RFID0gMHgwMDgxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19SRVNJRF9USElSRE1PREUgPSAweDAwODIsCi0gTlVCVVNfUkVTSURfRk9VUlRITU9ERSA9IDB4MDA4MywKLSBOVUJVU19SRVNJRF9GSUZUSE1PREUgPSAweDAwODQsCi0gTlVCVVNfUkVTSURfU0lYVEhNT0RFID0gMHgwMDg1CisgIE5VQlVTX1JFU0lEX1RISVJETU9ERSA9IDB4MDA4MiwKKyAgTlVCVVNfUkVTSURfRk9VUlRITU9ERSA9IDB4MDA4MywKKyAgTlVCVVNfUkVTSURfRklGVEhNT0RFID0gMHgwMDg0LAorICBOVUJVU19SRVNJRF9TSVhUSE1PREUgPSAweDAwODUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owotc3RydWN0IG51YnVzX2RpcgotewotIHVuc2lnbmVkIGNoYXIgKmJhc2U7CitzdHJ1Y3QgbnVidXNfZGlyIHsKKyAgdW5zaWduZWQgY2hhciAqIGJhc2U7CisgIHVuc2lnbmVkIGNoYXIgKiBwdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgKnB0cjsKLSBpbnQgZG9uZTsKLSBpbnQgbWFzazsKKyAgaW50IGRvbmU7CisgIGludCBtYXNrOwogfTsKK3N0cnVjdCBudWJ1c19kaXJlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBudWJ1c19kaXJlbnQKLXsKLSB1bnNpZ25lZCBjaGFyICpiYXNlOwotIHVuc2lnbmVkIGNoYXIgdHlwZTsKKyAgdW5zaWduZWQgY2hhciAqIGJhc2U7CisgIHVuc2lnbmVkIGNoYXIgdHlwZTsKKyAgX191MzIgZGF0YTsKKyAgaW50IG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRhdGE7Ci0gaW50IG1hc2s7CiB9OwogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udm1lLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252bWUuaAppbmRleCBlZWRlYTkwLi4wMzBmMDFjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252bWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252bWUuaApAQCAtMjEsNTM0ICsyMSw1NzUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IG52bWVfaWRfcG93ZXJfc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgbWF4X3Bvd2VyOwotIF9fdTggcnN2ZDI7Ci0gX191OCBmbGFnczsKLSBfX2xlMzIgZW50cnlfbGF0OworICBfX2xlMTYgbWF4X3Bvd2VyOworICBfX3U4IHJzdmQyOworICBfX3U4IGZsYWdzOworICBfX2xlMzIgZW50cnlfbGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZXhpdF9sYXQ7Ci0gX191OCByZWFkX3RwdXQ7Ci0gX191OCByZWFkX2xhdDsKLSBfX3U4IHdyaXRlX3RwdXQ7CisgIF9fbGUzMiBleGl0X2xhdDsKKyAgX191OCByZWFkX3RwdXQ7CisgIF9fdTggcmVhZF9sYXQ7CisgIF9fdTggd3JpdGVfdHB1dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB3cml0ZV9sYXQ7Ci0gX191OCByc3ZkMTZbMTZdOworICBfX3U4IHdyaXRlX2xhdDsKKyAgX19sZTE2IGlkbGVfcG93ZXI7CisgIF9fdTggaWRsZV9zY2FsZTsKKyAgX191OCByc3ZkMTk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2xlMTYgYWN0aXZlX3Bvd2VyOworICBfX3U4IGFjdGl2ZV93b3JrX3NjYWxlOworICBfX3U4IHJzdmQyM1s5XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUFNfRkxBR1NfTUFYX1BPV0VSX1NDQUxFID0gMSA8PCAwLAotIE5WTUVfUFNfRkxBR1NfTk9OX09QX1NUQVRFID0gMSA8PCAxLAorICBOVk1FX1BTX0ZMQUdTX01BWF9QT1dFUl9TQ0FMRSA9IDEgPDwgMCwKKyAgTlZNRV9QU19GTEFHU19OT05fT1BfU1RBVEUgPSAxIDw8IDEsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBudm1lX2lkX2N0cmwgeworICBfX2xlMTYgdmlkOworICBfX2xlMTYgc3N2aWQ7CisgIGNoYXIgc25bMjBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgdmlkOwotIF9fbGUxNiBzc3ZpZDsKLSBjaGFyIHNuWzIwXTsKLSBjaGFyIG1uWzQwXTsKKyAgY2hhciBtbls0MF07CisgIGNoYXIgZnJbOF07CisgIF9fdTggcmFiOworICBfX3U4IGllZWVbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZnJbOF07Ci0gX191OCByYWI7Ci0gX191OCBpZWVlWzNdOwotIF9fdTggbWljOworICBfX3U4IG1pYzsKKyAgX191OCBtZHRzOworICBfX3UxNiBjbnRsaWQ7CisgIF9fdTMyIHZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtZHRzOwotIF9fdTggcnN2ZDc4WzE3OF07Ci0gX19sZTE2IG9hY3M7Ci0gX191OCBhY2w7CisgIF9fdTggcnN2ZDg0WzE3Ml07CisgIF9fbGUxNiBvYWNzOworICBfX3U4IGFjbDsKKyAgX191OCBhZXJsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFlcmw7Ci0gX191OCBmcm13OwotIF9fdTggbHBhOwotIF9fdTggZWxwZTsKKyAgX191OCBmcm13OworICBfX3U4IGxwYTsKKyAgX191OCBlbHBlOworICBfX3U4IG5wc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnBzczsKLSBfX3U4IHJzdmQyNjRbMjQ4XTsKLSBfX3U4IHNxZXM7Ci0gX191OCBjcWVzOworICBfX3U4IGF2c2NjOworICBfX3U4IGFwc3RhOworICBfX2xlMTYgd2N0ZW1wOworICBfX2xlMTYgY2N0ZW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJzdmQ1MTRbMl07Ci0gX19sZTMyIG5uOwotIF9fbGUxNiBvbmNzOwotIF9fbGUxNiBmdXNlczsKKyAgX191OCByc3ZkMjcwWzI0Ml07CisgIF9fdTggc3FlczsKKyAgX191OCBjcWVzOworICBfX3U4IHJzdmQ1MTRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZm5hOwotIF9fdTggdndjOwotIF9fbGUxNiBhd3VuOwotIF9fbGUxNiBhd3VwZjsKKyAgX19sZTMyIG5uOworICBfX2xlMTYgb25jczsKKyAgX19sZTE2IGZ1c2VzOworICBfX3U4IGZuYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByc3ZkNTMwWzE1MThdOwotIHN0cnVjdCBudm1lX2lkX3Bvd2VyX3N0YXRlIHBzZFszMl07Ci0gX191OCB2c1sxMDI0XTsKKyAgX191OCB2d2M7CisgIF9fbGUxNiBhd3VuOworICBfX2xlMTYgYXd1cGY7CisgIF9fdTggbnZzY2M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJzdmQ1MzE7CisgIF9fbGUxNiBhY3d1OworICBfX3U4IHJzdmQ1MzRbMl07CisgIF9fbGUzMiBzZ2xzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByc3ZkNTQwWzE1MDhdOworICBzdHJ1Y3QgbnZtZV9pZF9wb3dlcl9zdGF0ZSBwc2RbMzJdOworICBfX3U4IHZzWzEwMjRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBOVk1FX0NUUkxfT05DU19DT01QQVJFID0gMSA8PCAwLAotIE5WTUVfQ1RSTF9PTkNTX1dSSVRFX1VOQ09SUkVDVEFCTEUgPSAxIDw8IDEsCi0gTlZNRV9DVFJMX09OQ1NfRFNNID0gMSA8PCAyLAorICBOVk1FX0NUUkxfT05DU19DT01QQVJFID0gMSA8PCAwLAorICBOVk1FX0NUUkxfT05DU19XUklURV9VTkNPUlJFQ1RBQkxFID0gMSA8PCAxLAorICBOVk1FX0NUUkxfT05DU19EU00gPSAxIDw8IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOVk1FX0NUUkxfVldDX1BSRVNFTlQgPSAxIDw8IDAsCiB9Owogc3RydWN0IG52bWVfbGJhZiB7Ci0gX19sZTE2IG1zOwotIF9fdTggZHM7CisgIF9fbGUxNiBtczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBycDsKKyAgX191OCBkczsKKyAgX191OCBycDsKIH07CiBzdHJ1Y3QgbnZtZV9pZF9ucyB7Ci0gX19sZTY0IG5zemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGU2NCBuY2FwOwotIF9fbGU2NCBudXNlOwotIF9fdTggbnNmZWF0OwotIF9fdTggbmxiYWY7CisgIF9fbGU2NCBuc3plOworICBfX2xlNjQgbmNhcDsKKyAgX19sZTY0IG51c2U7CisgIF9fdTggbnNmZWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYmFzOwotIF9fdTggbWM7Ci0gX191OCBkcGM7Ci0gX191OCBkcHM7CisgIF9fdTggbmxiYWY7CisgIF9fdTggZmxiYXM7CisgIF9fdTggbWM7CisgIF9fdTggZHBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJzdmQzMFs5OF07Ci0gc3RydWN0IG52bWVfbGJhZiBsYmFmWzE2XTsKLSBfX3U4IHJzdmQxOTJbMTkyXTsKLSBfX3U4IHZzWzM3MTJdOworICBfX3U4IGRwczsKKyAgX191OCBubWljOworICBfX3U4IHJlc2NhcDsKKyAgX191OCBmcGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJzdmQzMzsKKyAgX19sZTE2IG5hd3VuOworICBfX2xlMTYgbmF3dXBmOworICBfX2xlMTYgbmFjd3U7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJzdmQ0MFs4MF07CisgIF9fdTggZXVpNjRbOF07CisgIHN0cnVjdCBudm1lX2xiYWYgbGJhZlsxNl07CisgIF9fdTggcnN2ZDE5MlsxOTJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB2c1szNzEyXTsKIH07CiBlbnVtIHsKLSBOVk1FX05TX0ZFQVRfVEhJTiA9IDEgPDwgMCwKLSBOVk1FX0xCQUZfUlBfQkVTVCA9IDAsCisgIE5WTUVfTlNfRkVBVF9USElOID0gMSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX0xCQUZfUlBfQkVUVEVSID0gMSwKLSBOVk1FX0xCQUZfUlBfR09PRCA9IDIsCi0gTlZNRV9MQkFGX1JQX0RFR1JBREVEID0gMywKKyAgTlZNRV9MQkFGX1JQX0JFU1QgPSAwLAorICBOVk1FX0xCQUZfUlBfQkVUVEVSID0gMSwKKyAgTlZNRV9MQkFGX1JQX0dPT0QgPSAyLAorICBOVk1FX0xCQUZfUlBfREVHUkFERUQgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG52bWVfc21hcnRfbG9nIHsKLSBfX3U4IGNyaXRpY2FsX3dhcm5pbmc7Ci0gX191OCB0ZW1wZXJhdHVyZVsyXTsKLSBfX3U4IGF2YWlsX3NwYXJlOworICBfX3U4IGNyaXRpY2FsX3dhcm5pbmc7CisgIF9fdTggdGVtcGVyYXR1cmVbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3BhcmVfdGhyZXNoOwotIF9fdTggcGVyY2VudF91c2VkOwotIF9fdTggcnN2ZDZbMjZdOwotIF9fdTggZGF0YV91bml0c19yZWFkWzE2XTsKKyAgX191OCBhdmFpbF9zcGFyZTsKKyAgX191OCBzcGFyZV90aHJlc2g7CisgIF9fdTggcGVyY2VudF91c2VkOworICBfX3U4IHJzdmQ2WzI2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhX3VuaXRzX3dyaXR0ZW5bMTZdOwotIF9fdTggaG9zdF9yZWFkc1sxNl07Ci0gX191OCBob3N0X3dyaXRlc1sxNl07Ci0gX191OCBjdHJsX2J1c3lfdGltZVsxNl07CisgIF9fdTggZGF0YV91bml0c19yZWFkWzE2XTsKKyAgX191OCBkYXRhX3VuaXRzX3dyaXR0ZW5bMTZdOworICBfX3U4IGhvc3RfcmVhZHNbMTZdOworICBfX3U4IGhvc3Rfd3JpdGVzWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwb3dlcl9jeWNsZXNbMTZdOwotIF9fdTggcG93ZXJfb25faG91cnNbMTZdOwotIF9fdTggdW5zYWZlX3NodXRkb3duc1sxNl07Ci0gX191OCBtZWRpYV9lcnJvcnNbMTZdOworICBfX3U4IGN0cmxfYnVzeV90aW1lWzE2XTsKKyAgX191OCBwb3dlcl9jeWNsZXNbMTZdOworICBfX3U4IHBvd2VyX29uX2hvdXJzWzE2XTsKKyAgX191OCB1bnNhZmVfc2h1dGRvd25zWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1fZXJyX2xvZ19lbnRyaWVzWzE2XTsKLSBfX3U4IHJzdmQxOTJbMzIwXTsKKyAgX191OCBtZWRpYV9lcnJvcnNbMTZdOworICBfX3U4IG51bV9lcnJfbG9nX2VudHJpZXNbMTZdOworICBfX2xlMzIgd2FybmluZ190ZW1wX3RpbWU7CisgIF9fbGUzMiBjcml0aWNhbF9jb21wX3RpbWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2xlMTYgdGVtcF9zZW5zb3JbOF07CisgIF9fdTggcnN2ZDIxNlsyOTZdOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NNQVJUX0NSSVRfU1BBUkUgPSAxIDw8IDAsCi0gTlZNRV9TTUFSVF9DUklUX1RFTVBFUkFUVVJFID0gMSA8PCAxLAotIE5WTUVfU01BUlRfQ1JJVF9SRUxJQUJJTElUWSA9IDEgPDwgMiwKLSBOVk1FX1NNQVJUX0NSSVRfTUVESUEgPSAxIDw8IDMsCisgIE5WTUVfU01BUlRfQ1JJVF9TUEFSRSA9IDEgPDwgMCwKKyAgTlZNRV9TTUFSVF9DUklUX1RFTVBFUkFUVVJFID0gMSA8PCAxLAorICBOVk1FX1NNQVJUX0NSSVRfUkVMSUFCSUxJVFkgPSAxIDw8IDIsCisgIE5WTUVfU01BUlRfQ1JJVF9NRURJQSA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TTUFSVF9DUklUX1ZPTEFUSUxFX01FTU9SWSA9IDEgPDwgNCwKKyAgTlZNRV9TTUFSVF9DUklUX1ZPTEFUSUxFX01FTU9SWSA9IDEgPDwgNCwKIH07CiBzdHJ1Y3QgbnZtZV9sYmFfcmFuZ2VfdHlwZSB7Ci0gX191OCB0eXBlOworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYXR0cmlidXRlczsKLSBfX3U4IHJzdmQyWzE0XTsKLSBfX3U2NCBzbGJhOwotIF9fdTY0IG5sYjsKKyAgX191OCBhdHRyaWJ1dGVzOworICBfX3U4IHJzdmQyWzE0XTsKKyAgX191NjQgc2xiYTsKKyAgX191NjQgbmxiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGd1aWRbMTZdOwotIF9fdTggcnN2ZDQ4WzE2XTsKKyAgX191OCBndWlkWzE2XTsKKyAgX191OCByc3ZkNDhbMTZdOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX0xCQVJUX1RZUEVfRlMgPSAweDAxLAotIE5WTUVfTEJBUlRfVFlQRV9SQUlEID0gMHgwMiwKLSBOVk1FX0xCQVJUX1RZUEVfQ0FDSEUgPSAweDAzLAotIE5WTUVfTEJBUlRfVFlQRV9TV0FQID0gMHgwNCwKKyAgTlZNRV9MQkFSVF9UWVBFX0ZTID0gMHgwMSwKKyAgTlZNRV9MQkFSVF9UWVBFX1JBSUQgPSAweDAyLAorICBOVk1FX0xCQVJUX1RZUEVfQ0FDSEUgPSAweDAzLAorICBOVk1FX0xCQVJUX1RZUEVfU1dBUCA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfTEJBUlRfQVRUUklCX1RFTVAgPSAxIDw8IDAsCi0gTlZNRV9MQkFSVF9BVFRSSUJfSElERSA9IDEgPDwgMSwKKyAgTlZNRV9MQkFSVF9BVFRSSUJfVEVNUCA9IDEgPDwgMCwKKyAgTlZNRV9MQkFSVF9BVFRSSUJfSElERSA9IDEgPDwgMSwKIH07CiBlbnVtIG52bWVfb3Bjb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbnZtZV9jbWRfZmx1c2ggPSAweDAwLAotIG52bWVfY21kX3dyaXRlID0gMHgwMSwKLSBudm1lX2NtZF9yZWFkID0gMHgwMiwKLSBudm1lX2NtZF93cml0ZV91bmNvciA9IDB4MDQsCisgIG52bWVfY21kX2ZsdXNoID0gMHgwMCwKKyAgbnZtZV9jbWRfd3JpdGUgPSAweDAxLAorICBudm1lX2NtZF9yZWFkID0gMHgwMiwKKyAgbnZtZV9jbWRfd3JpdGVfdW5jb3IgPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBudm1lX2NtZF9jb21wYXJlID0gMHgwNSwKLSBudm1lX2NtZF9kc20gPSAweDA5LAorICBudm1lX2NtZF9jb21wYXJlID0gMHgwNSwKKyAgbnZtZV9jbWRfZHNtID0gMHgwOSwKIH07CiBzdHJ1Y3QgbnZtZV9jb21tb25fY29tbWFuZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX2xlMzIgbnNpZDsKKyAgX191OCBvcGNvZGU7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fbGUzMiBuc2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY2R3MlsyXTsKLSBfX2xlNjQgbWV0YWRhdGE7Ci0gX19sZTY0IHBycDE7Ci0gX19sZTY0IHBycDI7CisgIF9fbGUzMiBjZHcyWzJdOworICBfX2xlNjQgbWV0YWRhdGE7CisgIF9fbGU2NCBwcnAxOworICBfX2xlNjQgcHJwMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGNkdzEwWzZdOworICBfX2xlMzIgY2R3MTBbNl07CiB9Owogc3RydWN0IG52bWVfcndfY29tbWFuZCB7Ci0gX191OCBvcGNvZGU7CisgIF9fdTggb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7Ci0gX19sZTMyIG5zaWQ7Ci0gX191NjQgcnN2ZDI7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fbGUzMiBuc2lkOworICBfX3U2NCByc3ZkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IG1ldGFkYXRhOwotIF9fbGU2NCBwcnAxOwotIF9fbGU2NCBwcnAyOwotIF9fbGU2NCBzbGJhOworICBfX2xlNjQgbWV0YWRhdGE7CisgIF9fbGU2NCBwcnAxOworICBfX2xlNjQgcHJwMjsKKyAgX19sZTY0IHNsYmE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBsZW5ndGg7Ci0gX19sZTE2IGNvbnRyb2w7Ci0gX19sZTMyIGRzbWdtdDsKLSBfX2xlMzIgcmVmdGFnOworICBfX2xlMTYgbGVuZ3RoOworICBfX2xlMTYgY29udHJvbDsKKyAgX19sZTMyIGRzbWdtdDsKKyAgX19sZTMyIHJlZnRhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGFwcHRhZzsKLSBfX2xlMTYgYXBwbWFzazsKKyAgX19sZTE2IGFwcHRhZzsKKyAgX19sZTE2IGFwcG1hc2s7CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUldfTFIgPSAxIDw8IDE1LAotIE5WTUVfUldfRlVBID0gMSA8PCAxNCwKLSBOVk1FX1JXX0RTTV9GUkVRX1VOU1BFQyA9IDAsCi0gTlZNRV9SV19EU01fRlJFUV9UWVBJQ0FMID0gMSwKKyAgTlZNRV9SV19MUiA9IDEgPDwgMTUsCisgIE5WTUVfUldfRlVBID0gMSA8PCAxNCwKKyAgTlZNRV9SV19EU01fRlJFUV9VTlNQRUMgPSAwLAorICBOVk1FX1JXX0RTTV9GUkVRX1RZUElDQUwgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1JXX0RTTV9GUkVRX1JBUkUgPSAyLAotIE5WTUVfUldfRFNNX0ZSRVFfUkVBRFMgPSAzLAotIE5WTUVfUldfRFNNX0ZSRVFfV1JJVEVTID0gNCwKLSBOVk1FX1JXX0RTTV9GUkVRX1JXID0gNSwKKyAgTlZNRV9SV19EU01fRlJFUV9SQVJFID0gMiwKKyAgTlZNRV9SV19EU01fRlJFUV9SRUFEUyA9IDMsCisgIE5WTUVfUldfRFNNX0ZSRVFfV1JJVEVTID0gNCwKKyAgTlZNRV9SV19EU01fRlJFUV9SVyA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUldfRFNNX0ZSRVFfT05DRSA9IDYsCi0gTlZNRV9SV19EU01fRlJFUV9QUkVGRVRDSCA9IDcsCi0gTlZNRV9SV19EU01fRlJFUV9URU1QID0gOCwKLSBOVk1FX1JXX0RTTV9MQVRFTkNZX05PTkUgPSAwIDw8IDQsCisgIE5WTUVfUldfRFNNX0ZSRVFfT05DRSA9IDYsCisgIE5WTUVfUldfRFNNX0ZSRVFfUFJFRkVUQ0ggPSA3LAorICBOVk1FX1JXX0RTTV9GUkVRX1RFTVAgPSA4LAorICBOVk1FX1JXX0RTTV9MQVRFTkNZX05PTkUgPSAwIDw8IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUldfRFNNX0xBVEVOQ1lfSURMRSA9IDEgPDwgNCwKLSBOVk1FX1JXX0RTTV9MQVRFTkNZX05PUk0gPSAyIDw8IDQsCi0gTlZNRV9SV19EU01fTEFURU5DWV9MT1cgPSAzIDw8IDQsCi0gTlZNRV9SV19EU01fU0VRX1JFUSA9IDEgPDwgNiwKKyAgTlZNRV9SV19EU01fTEFURU5DWV9JRExFID0gMSA8PCA0LAorICBOVk1FX1JXX0RTTV9MQVRFTkNZX05PUk0gPSAyIDw8IDQsCisgIE5WTUVfUldfRFNNX0xBVEVOQ1lfTE9XID0gMyA8PCA0LAorICBOVk1FX1JXX0RTTV9TRVFfUkVRID0gMSA8PCA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1JXX0RTTV9DT01QUkVTU0VEID0gMSA8PCA3LAorICBOVk1FX1JXX0RTTV9DT01QUkVTU0VEID0gMSA8PCA3LAogfTsKIHN0cnVjdCBudm1lX2RzbV9jbWQgewotIF9fdTggb3Bjb2RlOworICBfX3U4IG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fbGUzMiBuc2lkOwotIF9fdTY0IHJzdmQyWzJdOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX2xlMzIgbnNpZDsKKyAgX191NjQgcnN2ZDJbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGU2NCBwcnAxOwotIF9fbGU2NCBwcnAyOwotIF9fbGUzMiBucjsKLSBfX2xlMzIgYXR0cmlidXRlczsKKyAgX19sZTY0IHBycDE7CisgIF9fbGU2NCBwcnAyOworICBfX2xlMzIgbnI7CisgIF9fbGUzMiBhdHRyaWJ1dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByc3ZkMTJbNF07CisgIF9fdTMyIHJzdmQxMls0XTsKIH07CiBlbnVtIHsKLSBOVk1FX0RTTUdNVF9JRFIgPSAxIDw8IDAsCisgIE5WTUVfRFNNR01UX0lEUiA9IDEgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9EU01HTVRfSURXID0gMSA8PCAxLAotIE5WTUVfRFNNR01UX0FEID0gMSA8PCAyLAorICBOVk1FX0RTTUdNVF9JRFcgPSAxIDw8IDEsCisgIE5WTUVfRFNNR01UX0FEID0gMSA8PCAyLAogfTsKIHN0cnVjdCBudm1lX2RzbV9yYW5nZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBjYXR0cjsKLSBfX2xlMzIgbmxiOwotIF9fbGU2NCBzbGJhOworICBfX2xlMzIgY2F0dHI7CisgIF9fbGUzMiBubGI7CisgIF9fbGU2NCBzbGJhOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG52bWVfYWRtaW5fb3Bjb2RlIHsKLSBudm1lX2FkbWluX2RlbGV0ZV9zcSA9IDB4MDAsCi0gbnZtZV9hZG1pbl9jcmVhdGVfc3EgPSAweDAxLAotIG52bWVfYWRtaW5fZ2V0X2xvZ19wYWdlID0gMHgwMiwKKyAgbnZtZV9hZG1pbl9kZWxldGVfc3EgPSAweDAwLAorICBudm1lX2FkbWluX2NyZWF0ZV9zcSA9IDB4MDEsCisgIG52bWVfYWRtaW5fZ2V0X2xvZ19wYWdlID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbnZtZV9hZG1pbl9kZWxldGVfY3EgPSAweDA0LAotIG52bWVfYWRtaW5fY3JlYXRlX2NxID0gMHgwNSwKLSBudm1lX2FkbWluX2lkZW50aWZ5ID0gMHgwNiwKLSBudm1lX2FkbWluX2Fib3J0X2NtZCA9IDB4MDgsCisgIG52bWVfYWRtaW5fZGVsZXRlX2NxID0gMHgwNCwKKyAgbnZtZV9hZG1pbl9jcmVhdGVfY3EgPSAweDA1LAorICBudm1lX2FkbWluX2lkZW50aWZ5ID0gMHgwNiwKKyAgbnZtZV9hZG1pbl9hYm9ydF9jbWQgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBudm1lX2FkbWluX3NldF9mZWF0dXJlcyA9IDB4MDksCi0gbnZtZV9hZG1pbl9nZXRfZmVhdHVyZXMgPSAweDBhLAotIG52bWVfYWRtaW5fYXN5bmNfZXZlbnQgPSAweDBjLAotIG52bWVfYWRtaW5fYWN0aXZhdGVfZncgPSAweDEwLAorICBudm1lX2FkbWluX3NldF9mZWF0dXJlcyA9IDB4MDksCisgIG52bWVfYWRtaW5fZ2V0X2ZlYXR1cmVzID0gMHgwYSwKKyAgbnZtZV9hZG1pbl9hc3luY19ldmVudCA9IDB4MGMsCisgIG52bWVfYWRtaW5fYWN0aXZhdGVfZncgPSAweDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBudm1lX2FkbWluX2Rvd25sb2FkX2Z3ID0gMHgxMSwKLSBudm1lX2FkbWluX2Zvcm1hdF9udm0gPSAweDgwLAotIG52bWVfYWRtaW5fc2VjdXJpdHlfc2VuZCA9IDB4ODEsCi0gbnZtZV9hZG1pbl9zZWN1cml0eV9yZWN2ID0gMHg4MiwKKyAgbnZtZV9hZG1pbl9kb3dubG9hZF9mdyA9IDB4MTEsCisgIG52bWVfYWRtaW5fZm9ybWF0X252bSA9IDB4ODAsCisgIG52bWVfYWRtaW5fc2VjdXJpdHlfc2VuZCA9IDB4ODEsCisgIG52bWVfYWRtaW5fc2VjdXJpdHlfcmVjdiA9IDB4ODIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIE5WTUVfUVVFVUVfUEhZU19DT05USUcgPSAoMSA8PCAwKSwKLSBOVk1FX0NRX0lSUV9FTkFCTEVEID0gKDEgPDwgMSksCisgIE5WTUVfUVVFVUVfUEhZU19DT05USUcgPSAoMSA8PCAwKSwKKyAgTlZNRV9DUV9JUlFfRU5BQkxFRCA9ICgxIDw8IDEpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NRX1BSSU9fVVJHRU5UID0gKDAgPDwgMSksCi0gTlZNRV9TUV9QUklPX0hJR0ggPSAoMSA8PCAxKSwKLSBOVk1FX1NRX1BSSU9fTUVESVVNID0gKDIgPDwgMSksCi0gTlZNRV9TUV9QUklPX0xPVyA9ICgzIDw8IDEpLAorICBOVk1FX1NRX1BSSU9fVVJHRU5UID0gKDAgPDwgMSksCisgIE5WTUVfU1FfUFJJT19ISUdIID0gKDEgPDwgMSksCisgIE5WTUVfU1FfUFJJT19NRURJVU0gPSAoMiA8PCAxKSwKKyAgTlZNRV9TUV9QUklPX0xPVyA9ICgzIDw8IDEpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX0ZFQVRfQVJCSVRSQVRJT04gPSAweDAxLAotIE5WTUVfRkVBVF9QT1dFUl9NR01UID0gMHgwMiwKLSBOVk1FX0ZFQVRfTEJBX1JBTkdFID0gMHgwMywKLSBOVk1FX0ZFQVRfVEVNUF9USFJFU0ggPSAweDA0LAorICBOVk1FX0ZFQVRfQVJCSVRSQVRJT04gPSAweDAxLAorICBOVk1FX0ZFQVRfUE9XRVJfTUdNVCA9IDB4MDIsCisgIE5WTUVfRkVBVF9MQkFfUkFOR0UgPSAweDAzLAorICBOVk1FX0ZFQVRfVEVNUF9USFJFU0ggPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX0ZFQVRfRVJSX1JFQ09WRVJZID0gMHgwNSwKLSBOVk1FX0ZFQVRfVk9MQVRJTEVfV0MgPSAweDA2LAotIE5WTUVfRkVBVF9OVU1fUVVFVUVTID0gMHgwNywKLSBOVk1FX0ZFQVRfSVJRX0NPQUxFU0NFID0gMHgwOCwKKyAgTlZNRV9GRUFUX0VSUl9SRUNPVkVSWSA9IDB4MDUsCisgIE5WTUVfRkVBVF9WT0xBVElMRV9XQyA9IDB4MDYsCisgIE5WTUVfRkVBVF9OVU1fUVVFVUVTID0gMHgwNywKKyAgTlZNRV9GRUFUX0lSUV9DT0FMRVNDRSA9IDB4MDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfRkVBVF9JUlFfQ09ORklHID0gMHgwOSwKLSBOVk1FX0ZFQVRfV1JJVEVfQVRPTUlDID0gMHgwYSwKLSBOVk1FX0ZFQVRfQVNZTkNfRVZFTlQgPSAweDBiLAotIE5WTUVfRkVBVF9TV19QUk9HUkVTUyA9IDB4MGMsCisgIE5WTUVfRkVBVF9JUlFfQ09ORklHID0gMHgwOSwKKyAgTlZNRV9GRUFUX1dSSVRFX0FUT01JQyA9IDB4MGEsCisgIE5WTUVfRkVBVF9BU1lOQ19FVkVOVCA9IDB4MGIsCisgIE5WTUVfRkVBVF9TV19QUk9HUkVTUyA9IDB4MGMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfRldBQ1RfUkVQTCA9ICgwIDw8IDMpLAotIE5WTUVfRldBQ1RfUkVQTF9BQ1RWID0gKDEgPDwgMyksCi0gTlZNRV9GV0FDVF9BQ1RWID0gKDIgPDwgMyksCisgIE5WTUVfTE9HX0VSUk9SID0gMHgwMSwKKyAgTlZNRV9MT0dfU01BUlQgPSAweDAyLAorICBOVk1FX0xPR19GV19TTE9UID0gMHgwMywKKyAgTlZNRV9MT0dfUkVTRVJWQVRJT04gPSAweDgwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTlZNRV9GV0FDVF9SRVBMID0gKDAgPDwgMyksCisgIE5WTUVfRldBQ1RfUkVQTF9BQ1RWID0gKDEgPDwgMyksCisgIE5WTUVfRldBQ1RfQUNUViA9ICgyIDw8IDMpLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbnZtZV9pZGVudGlmeSB7Ci0gX191OCBvcGNvZGU7Ci0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIG5zaWQ7Ci0gX191NjQgcnN2ZDJbMl07Ci0gX19sZTY0IHBycDE7Ci0gX19sZTY0IHBycDI7CisgIF9fbGUzMiBuc2lkOworICBfX3U2NCByc3ZkMlsyXTsKKyAgX19sZTY0IHBycDE7CisgIF9fbGU2NCBwcnAyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY25zOwotIF9fdTMyIHJzdmQxMVs1XTsKKyAgX19sZTMyIGNuczsKKyAgX191MzIgcnN2ZDExWzVdOwogfTsKIHN0cnVjdCBudm1lX2ZlYXR1cmVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcGNvZGU7Ci0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fbGUzMiBuc2lkOworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX19sZTMyIG5zaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJzdmQyWzJdOwotIF9fbGU2NCBwcnAxOwotIF9fbGU2NCBwcnAyOwotIF9fbGUzMiBmaWQ7CisgIF9fdTY0IHJzdmQyWzJdOworICBfX2xlNjQgcHJwMTsKKyAgX19sZTY0IHBycDI7CisgIF9fbGUzMiBmaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkd29yZDExOwotIF9fdTMyIHJzdmQxMls0XTsKKyAgX19sZTMyIGR3b3JkMTE7CisgIF9fdTMyIHJzdmQxMls0XTsKIH07CiBzdHJ1Y3QgbnZtZV9jcmVhdGVfY3EgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7Ci0gX191MzIgcnN2ZDFbNV07CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX3UzMiByc3ZkMVs1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IHBycDE7Ci0gX191NjQgcnN2ZDg7Ci0gX19sZTE2IGNxaWQ7Ci0gX19sZTE2IHFzaXplOworICBfX2xlNjQgcHJwMTsKKyAgX191NjQgcnN2ZDg7CisgIF9fbGUxNiBjcWlkOworICBfX2xlMTYgcXNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBjcV9mbGFnczsKLSBfX2xlMTYgaXJxX3ZlY3RvcjsKLSBfX3UzMiByc3ZkMTJbNF07CisgIF9fbGUxNiBjcV9mbGFnczsKKyAgX19sZTE2IGlycV92ZWN0b3I7CisgIF9fdTMyIHJzdmQxMls0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG52bWVfY3JlYXRlX3NxIHsKLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByc3ZkMVs1XTsKLSBfX2xlNjQgcHJwMTsKLSBfX3U2NCByc3ZkODsKLSBfX2xlMTYgc3FpZDsKKyAgX191MzIgcnN2ZDFbNV07CisgIF9fbGU2NCBwcnAxOworICBfX3U2NCByc3ZkODsKKyAgX19sZTE2IHNxaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBxc2l6ZTsKLSBfX2xlMTYgc3FfZmxhZ3M7Ci0gX19sZTE2IGNxaWQ7Ci0gX191MzIgcnN2ZDEyWzRdOworICBfX2xlMTYgcXNpemU7CisgIF9fbGUxNiBzcV9mbGFnczsKKyAgX19sZTE2IGNxaWQ7CisgIF9fdTMyIHJzdmQxMls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG52bWVfZGVsZXRlX3F1ZXVlIHsKLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY29tbWFuZF9pZDsKLSBfX3UzMiByc3ZkMVs5XTsKLSBfX2xlMTYgcWlkOwotIF9fdTE2IHJzdmQxMDsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX191MzIgcnN2ZDFbOV07CisgIF9fbGUxNiBxaWQ7CisgIF9fdTE2IHJzdmQxMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnN2ZDExWzVdOworICBfX3UzMiByc3ZkMTFbNV07CiB9Owogc3RydWN0IG52bWVfYWJvcnRfY21kIHsKLSBfX3U4IG9wY29kZTsKKyAgX191OCBvcGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX3UzMiByc3ZkMVs5XTsKLSBfX2xlMTYgc3FpZDsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX191MzIgcnN2ZDFbOV07CisgIF9fbGUxNiBzcWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBjaWQ7Ci0gX191MzIgcnN2ZDExWzVdOworICBfX3UxNiBjaWQ7CisgIF9fdTMyIHJzdmQxMVs1XTsKIH07CiBzdHJ1Y3QgbnZtZV9kb3dubG9hZF9maXJtd2FyZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX3UzMiByc3ZkMVs1XTsKKyAgX191OCBvcGNvZGU7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fdTMyIHJzdmQxWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlNjQgcHJwMTsKLSBfX2xlNjQgcHJwMjsKLSBfX2xlMzIgbnVtZDsKLSBfX2xlMzIgb2Zmc2V0OworICBfX2xlNjQgcHJwMTsKKyAgX19sZTY0IHBycDI7CisgIF9fbGUzMiBudW1kOworICBfX2xlMzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByc3ZkMTJbNF07CisgIF9fdTMyIHJzdmQxMls0XTsKIH07CiBzdHJ1Y3QgbnZtZV9mb3JtYXRfY21kIHsKLSBfX3U4IG9wY29kZTsKKyAgX191OCBvcGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX2xlMzIgbnNpZDsKLSBfX3U2NCByc3ZkMls0XTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX19sZTMyIG5zaWQ7CisgIF9fdTY0IHJzdmQyWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY2R3MTA7Ci0gX191MzIgcnN2ZDExWzVdOworICBfX2xlMzIgY2R3MTA7CisgIF9fdTMyIHJzdmQxMVs1XTsKIH07CiBzdHJ1Y3QgbnZtZV9jb21tYW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBudm1lX2NvbW1vbl9jb21tYW5kIGNvbW1vbjsKLSBzdHJ1Y3QgbnZtZV9yd19jb21tYW5kIHJ3OwotIHN0cnVjdCBudm1lX2lkZW50aWZ5IGlkZW50aWZ5OworICB1bmlvbiB7CisgICAgc3RydWN0IG52bWVfY29tbW9uX2NvbW1hbmQgY29tbW9uOworICAgIHN0cnVjdCBudm1lX3J3X2NvbW1hbmQgcnc7CisgICAgc3RydWN0IG52bWVfaWRlbnRpZnkgaWRlbnRpZnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBudm1lX2ZlYXR1cmVzIGZlYXR1cmVzOwotIHN0cnVjdCBudm1lX2NyZWF0ZV9jcSBjcmVhdGVfY3E7Ci0gc3RydWN0IG52bWVfY3JlYXRlX3NxIGNyZWF0ZV9zcTsKLSBzdHJ1Y3QgbnZtZV9kZWxldGVfcXVldWUgZGVsZXRlX3F1ZXVlOworICAgIHN0cnVjdCBudm1lX2ZlYXR1cmVzIGZlYXR1cmVzOworICAgIHN0cnVjdCBudm1lX2NyZWF0ZV9jcSBjcmVhdGVfY3E7CisgICAgc3RydWN0IG52bWVfY3JlYXRlX3NxIGNyZWF0ZV9zcTsKKyAgICBzdHJ1Y3QgbnZtZV9kZWxldGVfcXVldWUgZGVsZXRlX3F1ZXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbnZtZV9kb3dubG9hZF9maXJtd2FyZSBkbGZ3OwotIHN0cnVjdCBudm1lX2Zvcm1hdF9jbWQgZm9ybWF0OwotIHN0cnVjdCBudm1lX2RzbV9jbWQgZHNtOwotIHN0cnVjdCBudm1lX2Fib3J0X2NtZCBhYm9ydDsKKyAgICBzdHJ1Y3QgbnZtZV9kb3dubG9hZF9maXJtd2FyZSBkbGZ3OworICAgIHN0cnVjdCBudm1lX2Zvcm1hdF9jbWQgZm9ybWF0OworICAgIHN0cnVjdCBudm1lX2RzbV9jbWQgZHNtOworICAgIHN0cnVjdCBudm1lX2Fib3J0X2NtZCBhYm9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgfTsKIH07CiBlbnVtIHsKLSBOVk1FX1NDX1NVQ0NFU1MgPSAweDAsCisgIE5WTUVfU0NfU1VDQ0VTUyA9IDB4MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19JTlZBTElEX09QQ09ERSA9IDB4MSwKLSBOVk1FX1NDX0lOVkFMSURfRklFTEQgPSAweDIsCi0gTlZNRV9TQ19DTURJRF9DT05GTElDVCA9IDB4MywKLSBOVk1FX1NDX0RBVEFfWEZFUl9FUlJPUiA9IDB4NCwKKyAgTlZNRV9TQ19JTlZBTElEX09QQ09ERSA9IDB4MSwKKyAgTlZNRV9TQ19JTlZBTElEX0ZJRUxEID0gMHgyLAorICBOVk1FX1NDX0NNRElEX0NPTkZMSUNUID0gMHgzLAorICBOVk1FX1NDX0RBVEFfWEZFUl9FUlJPUiA9IDB4NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19QT1dFUl9MT1NTID0gMHg1LAotIE5WTUVfU0NfSU5URVJOQUwgPSAweDYsCi0gTlZNRV9TQ19BQk9SVF9SRVEgPSAweDcsCi0gTlZNRV9TQ19BQk9SVF9RVUVVRSA9IDB4OCwKKyAgTlZNRV9TQ19QT1dFUl9MT1NTID0gMHg1LAorICBOVk1FX1NDX0lOVEVSTkFMID0gMHg2LAorICBOVk1FX1NDX0FCT1JUX1JFUSA9IDB4NywKKyAgTlZNRV9TQ19BQk9SVF9RVUVVRSA9IDB4OCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19GVVNFRF9GQUlMID0gMHg5LAotIE5WTUVfU0NfRlVTRURfTUlTU0lORyA9IDB4YSwKLSBOVk1FX1NDX0lOVkFMSURfTlMgPSAweGIsCi0gTlZNRV9TQ19DTURfU0VRX0VSUk9SID0gMHhjLAorICBOVk1FX1NDX0ZVU0VEX0ZBSUwgPSAweDksCisgIE5WTUVfU0NfRlVTRURfTUlTU0lORyA9IDB4YSwKKyAgTlZNRV9TQ19JTlZBTElEX05TID0gMHhiLAorICBOVk1FX1NDX0NNRF9TRVFfRVJST1IgPSAweGMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU0NfTEJBX1JBTkdFID0gMHg4MCwKLSBOVk1FX1NDX0NBUF9FWENFRURFRCA9IDB4ODEsCi0gTlZNRV9TQ19OU19OT1RfUkVBRFkgPSAweDgyLAotIE5WTUVfU0NfQ1FfSU5WQUxJRCA9IDB4MTAwLAorICBOVk1FX1NDX0xCQV9SQU5HRSA9IDB4ODAsCisgIE5WTUVfU0NfQ0FQX0VYQ0VFREVEID0gMHg4MSwKKyAgTlZNRV9TQ19OU19OT1RfUkVBRFkgPSAweDgyLAorICBOVk1FX1NDX0NRX0lOVkFMSUQgPSAweDEwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19RSURfSU5WQUxJRCA9IDB4MTAxLAotIE5WTUVfU0NfUVVFVUVfU0laRSA9IDB4MTAyLAotIE5WTUVfU0NfQUJPUlRfTElNSVQgPSAweDEwMywKLSBOVk1FX1NDX0FCT1JUX01JU1NJTkcgPSAweDEwNCwKKyAgTlZNRV9TQ19RSURfSU5WQUxJRCA9IDB4MTAxLAorICBOVk1FX1NDX1FVRVVFX1NJWkUgPSAweDEwMiwKKyAgTlZNRV9TQ19BQk9SVF9MSU1JVCA9IDB4MTAzLAorICBOVk1FX1NDX0FCT1JUX01JU1NJTkcgPSAweDEwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19BU1lOQ19MSU1JVCA9IDB4MTA1LAotIE5WTUVfU0NfRklSTVdBUkVfU0xPVCA9IDB4MTA2LAotIE5WTUVfU0NfRklSTVdBUkVfSU1BR0UgPSAweDEwNywKLSBOVk1FX1NDX0lOVkFMSURfVkVDVE9SID0gMHgxMDgsCisgIE5WTUVfU0NfQVNZTkNfTElNSVQgPSAweDEwNSwKKyAgTlZNRV9TQ19GSVJNV0FSRV9TTE9UID0gMHgxMDYsCisgIE5WTUVfU0NfRklSTVdBUkVfSU1BR0UgPSAweDEwNywKKyAgTlZNRV9TQ19JTlZBTElEX1ZFQ1RPUiA9IDB4MTA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX0lOVkFMSURfTE9HX1BBR0UgPSAweDEwOSwKLSBOVk1FX1NDX0lOVkFMSURfRk9STUFUID0gMHgxMGEsCi0gTlZNRV9TQ19CQURfQVRUUklCVVRFUyA9IDB4MTgwLAotIE5WTUVfU0NfV1JJVEVfRkFVTFQgPSAweDI4MCwKKyAgTlZNRV9TQ19JTlZBTElEX0xPR19QQUdFID0gMHgxMDksCisgIE5WTUVfU0NfSU5WQUxJRF9GT1JNQVQgPSAweDEwYSwKKyAgTlZNRV9TQ19CQURfQVRUUklCVVRFUyA9IDB4MTgwLAorICBOVk1FX1NDX1dSSVRFX0ZBVUxUID0gMHgyODAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU0NfUkVBRF9FUlJPUiA9IDB4MjgxLAotIE5WTUVfU0NfR1VBUkRfQ0hFQ0sgPSAweDI4MiwKLSBOVk1FX1NDX0FQUFRBR19DSEVDSyA9IDB4MjgzLAotIE5WTUVfU0NfUkVGVEFHX0NIRUNLID0gMHgyODQsCisgIE5WTUVfU0NfUkVBRF9FUlJPUiA9IDB4MjgxLAorICBOVk1FX1NDX0dVQVJEX0NIRUNLID0gMHgyODIsCisgIE5WTUVfU0NfQVBQVEFHX0NIRUNLID0gMHgyODMsCisgIE5WTUVfU0NfUkVGVEFHX0NIRUNLID0gMHgyODQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU0NfQ09NUEFSRV9GQUlMRUQgPSAweDI4NSwKLSBOVk1FX1NDX0FDQ0VTU19ERU5JRUQgPSAweDI4NiwKKyAgTlZNRV9TQ19DT01QQVJFX0ZBSUxFRCA9IDB4Mjg1LAorICBOVk1FX1NDX0FDQ0VTU19ERU5JRUQgPSAweDI4NiwKKyAgTlZNRV9TQ19ETlIgPSAweDQwMDAsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBudm1lX2NvbXBsZXRpb24geworICBfX2xlMzIgcmVzdWx0OworICBfX3UzMiByc3ZkOworICBfX2xlMTYgc3FfaGVhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJlc3VsdDsKLSBfX3UzMiByc3ZkOwotIF9fbGUxNiBzcV9oZWFkOwotIF9fbGUxNiBzcV9pZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY29tbWFuZF9pZDsKLSBfX2xlMTYgc3RhdHVzOworICBfX2xlMTYgc3FfaWQ7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fbGUxNiBzdGF0dXM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBudm1lX3VzZXJfaW8geworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29udHJvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcGNvZGU7Ci0gX191OCBmbGFnczsKLSBfX3UxNiBjb250cm9sOwotIF9fdTE2IG5ibG9ja3M7CisgIF9fdTE2IG5ibG9ja3M7CisgIF9fdTE2IHJzdmQ7CisgIF9fdTY0IG1ldGFkYXRhOworICBfX3U2NCBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByc3ZkOwotIF9fdTY0IG1ldGFkYXRhOwotIF9fdTY0IGFkZHI7Ci0gX191NjQgc2xiYTsKKyAgX191NjQgc2xiYTsKKyAgX191MzIgZHNtZ210OworICBfX3UzMiByZWZ0YWc7CisgIF9fdTE2IGFwcHRhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHNtZ210OwotIF9fdTMyIHJlZnRhZzsKLSBfX3UxNiBhcHB0YWc7Ci0gX191MTYgYXBwbWFzazsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGFwcG1hc2s7CiB9Owogc3RydWN0IG52bWVfYWRtaW5fY21kIHsKLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOworICBfX3U4IG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcnN2ZDE7Ci0gX191MzIgbnNpZDsKLSBfX3UzMiBjZHcyOwotIF9fdTMyIGNkdzM7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IHJzdmQxOworICBfX3UzMiBuc2lkOworICBfX3UzMiBjZHcyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBtZXRhZGF0YTsKLSBfX3U2NCBhZGRyOwotIF9fdTMyIG1ldGFkYXRhX2xlbjsKLSBfX3UzMiBkYXRhX2xlbjsKKyAgX191MzIgY2R3MzsKKyAgX191NjQgbWV0YWRhdGE7CisgIF9fdTY0IGFkZHI7CisgIF9fdTMyIG1ldGFkYXRhX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2R3MTA7Ci0gX191MzIgY2R3MTE7Ci0gX191MzIgY2R3MTI7Ci0gX191MzIgY2R3MTM7CisgIF9fdTMyIGRhdGFfbGVuOworICBfX3UzMiBjZHcxMDsKKyAgX191MzIgY2R3MTE7CisgIF9fdTMyIGNkdzEyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjZHcxNDsKLSBfX3UzMiBjZHcxNTsKLSBfX3UzMiB0aW1lb3V0X21zOwotIF9fdTMyIHJlc3VsdDsKKyAgX191MzIgY2R3MTM7CisgIF9fdTMyIGNkdzE0OworICBfX3UzMiBjZHcxNTsKKyAgX191MzIgdGltZW91dF9tczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc3VsdDsKIH07CiAjZGVmaW5lIE5WTUVfSU9DVExfSUQgX0lPKCdOJywgMHg0MCkKICNkZWZpbmUgTlZNRV9JT0NUTF9BRE1JTl9DTUQgX0lPV1IoJ04nLCAweDQxLCBzdHJ1Y3QgbnZtZV9hZG1pbl9jbWQpCi0jZGVmaW5lIE5WTUVfSU9DVExfU1VCTUlUX0lPIF9JT1coJ04nLCAweDQyLCBzdHJ1Y3QgbnZtZV91c2VyX2lvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTlZNRV9JT0NUTF9TVUJNSVRfSU8gX0lPVygnTicsIDB4NDIsIHN0cnVjdCBudm1lX3VzZXJfaW8pCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZyYW0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZyYW0uaAppbmRleCA0YzhmYzUwLi5lMGMzMjBhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252cmFtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udnJhbS5oCkBAIC0yMyw2ICsyMyw2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOVlJBTV9TRVRDS1MgX0lPKCdwJywgMHg0MSkKICNkZWZpbmUgTlZSQU1fRklSU1RfQllURSAxNAotI2RlZmluZSBOVlJBTV9PRkZTRVQoeCkgKCh4KS1OVlJBTV9GSVJTVF9CWVRFKQorI2RlZmluZSBOVlJBTV9PRkZTRVQoeCkgKCh4KSAtIE5WUkFNX0ZJUlNUX0JZVEUpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXAzaXNwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXAzaXNwLmgKaW5kZXggZTEwMzgwOC4uM2NiYTRlNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vbWFwM2lzcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcDNpc3AuaApAQCAtMjEsMTQgKzIxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC92aWRlb2RldjIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9DQ0RDX0NGRyAgIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDEsIHN0cnVjdCBvbWFwM2lzcF9jY2RjX3VwZGF0ZV9jb25maWcpCi0jZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9QUlZfQ0ZHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMiwgc3RydWN0IG9tYXAzaXNwX3ByZXZfdXBkYXRlX2NvbmZpZykKLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX0FFV0JfQ0ZHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMywgc3RydWN0IG9tYXAzaXNwX2gzYV9hZXdiX2NvbmZpZykKLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX0hJU1RfQ0ZHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNCwgc3RydWN0IG9tYXAzaXNwX2hpc3RfY29uZmlnKQorI2RlZmluZSBWSURJT0NfT01BUDNJU1BfQ0NEQ19DRkcgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMSwgc3RydWN0IG9tYXAzaXNwX2NjZGNfdXBkYXRlX2NvbmZpZykKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX1BSVl9DRkcgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMiwgc3RydWN0IG9tYXAzaXNwX3ByZXZfdXBkYXRlX2NvbmZpZykKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX0FFV0JfQ0ZHIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDMsIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWV3Yl9jb25maWcpCisjZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9ISVNUX0NGRyBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyA0LCBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9jb25maWcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWSURJT0NfT01BUDNJU1BfQUZfQ0ZHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNSwgc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9jb25maWcpCi0jZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9TVEFUX1JFUSAgIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDYsIHN0cnVjdCBvbWFwM2lzcF9zdGF0X2RhdGEpCi0jZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9TVEFUX0VOICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNywgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX0FGX0NGRyBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyA1LCBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX2NvbmZpZykKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX1NUQVRfUkVRIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDYsIHN0cnVjdCBvbWFwM2lzcF9zdGF0X2RhdGEpCisjZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9TVEFUX0VOIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDcsIHVuc2lnbmVkIGxvbmcpCiAjZGVmaW5lIFY0TDJfRVZFTlRfT01BUDNJU1BfQ0xBU1MgKFY0TDJfRVZFTlRfUFJJVkFURV9TVEFSVCB8IDB4MTAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9FVkVOVF9PTUFQM0lTUF9BRVdCIChWNEwyX0VWRU5UX09NQVAzSVNQX0NMQVNTIHwgMHgxKQpAQCAtMzYsOSArMzYsOSBAQAogI2RlZmluZSBWNEwyX0VWRU5UX09NQVAzSVNQX0hJU1QgKFY0TDJfRVZFTlRfT01BUDNJU1BfQ0xBU1MgfCAweDMpCiBzdHJ1Y3Qgb21hcDNpc3Bfc3RhdF9ldmVudF9zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcmFtZV9udW1iZXI7Ci0gX191MTYgY29uZmlnX2NvdW50ZXI7Ci0gX191OCBidWZfZXJyOworICBfX3UzMiBmcmFtZV9udW1iZXI7CisgIF9fdTE2IGNvbmZpZ19jb3VudGVyOworICBfX3U4IGJ1Zl9lcnI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUDNJU1BfQUVXQl9NQVhfU0FUVVJBVElPTl9MSU0gMTAyMwpAQCAtODMsMzMgKzgzLDMzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPTUFQM0lTUF9BRl9NQVhfQlVGX1NJWkUgMjIxMTg0CiBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2Fld2JfY29uZmlnIHsKLSBfX3UzMiBidWZfc2l6ZTsKLSBfX3UxNiBjb25maWdfY291bnRlcjsKKyAgX191MzIgYnVmX3NpemU7CisgIF9fdTE2IGNvbmZpZ19jb3VudGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYXR1cmF0aW9uX2xpbWl0OwotIF9fdTE2IHdpbl9oZWlnaHQ7Ci0gX191MTYgd2luX3dpZHRoOwotIF9fdTE2IHZlcl93aW5fY291bnQ7CisgIF9fdTE2IHNhdHVyYXRpb25fbGltaXQ7CisgIF9fdTE2IHdpbl9oZWlnaHQ7CisgIF9fdTE2IHdpbl93aWR0aDsKKyAgX191MTYgdmVyX3dpbl9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaG9yX3dpbl9jb3VudDsKLSBfX3UxNiB2ZXJfd2luX3N0YXJ0OwotIF9fdTE2IGhvcl93aW5fc3RhcnQ7Ci0gX191MTYgYmxrX3Zlcl93aW5fc3RhcnQ7CisgIF9fdTE2IGhvcl93aW5fY291bnQ7CisgIF9fdTE2IHZlcl93aW5fc3RhcnQ7CisgIF9fdTE2IGhvcl93aW5fc3RhcnQ7CisgIF9fdTE2IGJsa192ZXJfd2luX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBibGtfd2luX2hlaWdodDsKLSBfX3UxNiBzdWJzYW1wbGVfdmVyX2luYzsKLSBfX3UxNiBzdWJzYW1wbGVfaG9yX2luYzsKLSBfX3U4IGFsYXdfZW5hYmxlOworICBfX3UxNiBibGtfd2luX2hlaWdodDsKKyAgX191MTYgc3Vic2FtcGxlX3Zlcl9pbmM7CisgIF9fdTE2IHN1YnNhbXBsZV9ob3JfaW5jOworICBfX3U4IGFsYXdfZW5hYmxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3Bfc3RhdF9kYXRhIHsKLSBzdHJ1Y3QgdGltZXZhbCB0czsKLSB2b2lkIF9fdXNlciAqYnVmOworICBzdHJ1Y3QgdGltZXZhbCB0czsKKyAgdm9pZCBfX3VzZXIgKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ1Zl9zaXplOwotIF9fdTE2IGZyYW1lX251bWJlcjsKLSBfX3UxNiBjdXJfZnJhbWU7Ci0gX191MTYgY29uZmlnX2NvdW50ZXI7CisgIF9fdTMyIGJ1Zl9zaXplOworICBfX3UxNiBmcmFtZV9udW1iZXI7CisgIF9fdTE2IGN1cl9mcmFtZTsKKyAgX191MTYgY29uZmlnX2NvdW50ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgT01BUDNJU1BfSElTVF9CSU5TXzMyIDAKQEAgLTExNyw3ICsxMTcsNyBAQAogI2RlZmluZSBPTUFQM0lTUF9ISVNUX0JJTlNfMTI4IDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9NQVAzSVNQX0hJU1RfQklOU18yNTYgMwotI2RlZmluZSBPTUFQM0lTUF9ISVNUX01FTV9TSVpFX0JJTlMobikgKCgxIDw8ICgobikrNSkpKjQqNCkKKyNkZWZpbmUgT01BUDNJU1BfSElTVF9NRU1fU0laRV9CSU5TKG4pICgoMSA8PCAoKG4pICsgNSkpICogNCAqIDQpCiAjZGVmaW5lIE9NQVAzSVNQX0hJU1RfTUVNX1NJWkUgMTAyNAogI2RlZmluZSBPTUFQM0lTUF9ISVNUX01JTl9SRUdJT05TIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMzYsNzQgKzEzNiw3NCBAQAogI2RlZmluZSBPTUFQM0lTUF9ISVNUX0NGQV9GT1ZFT05YMyAxCiBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9yZWdpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBoX3N0YXJ0OwotIF9fdTE2IGhfZW5kOwotIF9fdTE2IHZfc3RhcnQ7Ci0gX191MTYgdl9lbmQ7CisgIF9fdTE2IGhfc3RhcnQ7CisgIF9fdTE2IGhfZW5kOworICBfX3UxNiB2X3N0YXJ0OworICBfX3UxNiB2X2VuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXAzaXNwX2hpc3RfY29uZmlnIHsKLSBfX3UzMiBidWZfc2l6ZTsKLSBfX3UxNiBjb25maWdfY291bnRlcjsKKyAgX191MzIgYnVmX3NpemU7CisgIF9fdTE2IGNvbmZpZ19jb3VudGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG51bV9hY2NfZnJhbWVzOwotIF9fdTE2IGhpc3RfYmluczsKLSBfX3U4IGNmYTsKLSBfX3U4IHdnW09NQVAzSVNQX0hJU1RfTUFYX1dHXTsKKyAgX191OCBudW1fYWNjX2ZyYW1lczsKKyAgX191MTYgaGlzdF9iaW5zOworICBfX3U4IGNmYTsKKyAgX191OCB3Z1tPTUFQM0lTUF9ISVNUX01BWF9XR107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnVtX3JlZ2lvbnM7Ci0gc3RydWN0IG9tYXAzaXNwX2hpc3RfcmVnaW9uIHJlZ2lvbltPTUFQM0lTUF9ISVNUX01BWF9SRUdJT05TXTsKKyAgX191OCBudW1fcmVnaW9uczsKKyAgc3RydWN0IG9tYXAzaXNwX2hpc3RfcmVnaW9uIHJlZ2lvbltPTUFQM0lTUF9ISVNUX01BWF9SRUdJT05TXTsKIH07CiAjZGVmaW5lIE9NQVAzSVNQX0FGX05VTV9DT0VGIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvbWFwM2lzcF9oM2FfYWZfZnZtb2RlIHsKLSBPTUFQM0lTUF9BRl9NT0RFX1NVTU1FRCA9IDAsCi0gT01BUDNJU1BfQUZfTU9ERV9QRUFLID0gMQorICBPTUFQM0lTUF9BRl9NT0RFX1NVTU1FRCA9IDAsCisgIE9NQVAzSVNQX0FGX01PREVfUEVBSyA9IDEKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvbWFwM2lzcF9oM2FfYWZfcmdicG9zIHsKLSBPTUFQM0lTUF9BRl9HUl9HQl9CQVlFUiA9IDAsCi0gT01BUDNJU1BfQUZfUkdfR0JfQkFZRVIgPSAxLAotIE9NQVAzSVNQX0FGX0dSX0JHX0JBWUVSID0gMiwKKyAgT01BUDNJU1BfQUZfR1JfR0JfQkFZRVIgPSAwLAorICBPTUFQM0lTUF9BRl9SR19HQl9CQVlFUiA9IDEsCisgIE9NQVAzSVNQX0FGX0dSX0JHX0JBWUVSID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUDNJU1BfQUZfUkdfQkdfQkFZRVIgPSAzLAotIE9NQVAzSVNQX0FGX0dHX1JCX0NVU1RPTSA9IDQsCi0gT01BUDNJU1BfQUZfUkJfR0dfQ1VTVE9NID0gNQorICBPTUFQM0lTUF9BRl9SR19CR19CQVlFUiA9IDMsCisgIE9NQVAzSVNQX0FGX0dHX1JCX0NVU1RPTSA9IDQsCisgIE9NQVAzSVNQX0FGX1JCX0dHX0NVU1RPTSA9IDUKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9obWYgewotIF9fdTggZW5hYmxlOwotIF9fdTggdGhyZXNob2xkOworICBfX3U4IGVuYWJsZTsKKyAgX191OCB0aHJlc2hvbGQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfaWlyIHsKLSBfX3UxNiBoX3N0YXJ0OwotIF9fdTE2IGNvZWZmX3NldDBbT01BUDNJU1BfQUZfTlVNX0NPRUZdOwotIF9fdTE2IGNvZWZmX3NldDFbT01BUDNJU1BfQUZfTlVNX0NPRUZdOworICBfX3UxNiBoX3N0YXJ0OworICBfX3UxNiBjb2VmZl9zZXQwW09NQVAzSVNQX0FGX05VTV9DT0VGXTsKKyAgX191MTYgY29lZmZfc2V0MVtPTUFQM0lTUF9BRl9OVU1fQ09FRl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfcGF4ZWwgewotIF9fdTE2IGhfc3RhcnQ7Ci0gX191MTYgdl9zdGFydDsKKyAgX191MTYgaF9zdGFydDsKKyAgX191MTYgdl9zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB3aWR0aDsKLSBfX3U4IGhlaWdodDsKLSBfX3U4IGhfY250OwotIF9fdTggdl9jbnQ7CisgIF9fdTggd2lkdGg7CisgIF9fdTggaGVpZ2h0OworICBfX3U4IGhfY250OworICBfX3U4IHZfY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxpbmVfaW5jOworICBfX3U4IGxpbmVfaW5jOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfY29uZmlnIHsKLSBfX3UzMiBidWZfc2l6ZTsKKyAgX191MzIgYnVmX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGNvbmZpZ19jb3VudGVyOwotIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfaG1mIGhtZjsKLSBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX2lpciBpaXI7Ci0gc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9wYXhlbCBwYXhlbDsKKyAgX191MTYgY29uZmlnX2NvdW50ZXI7CisgIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfaG1mIGhtZjsKKyAgc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9paXIgaWlyOworICBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX3BheGVsIHBheGVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIG9tYXAzaXNwX2gzYV9hZl9yZ2Jwb3MgcmdiX3BvczsKLSBlbnVtIG9tYXAzaXNwX2gzYV9hZl9mdm1vZGUgZnZtb2RlOwotIF9fdTggYWxhd19lbmFibGU7CisgIGVudW0gb21hcDNpc3BfaDNhX2FmX3JnYnBvcyByZ2JfcG9zOworICBlbnVtIG9tYXAzaXNwX2gzYV9hZl9mdm1vZGUgZnZtb2RlOworICBfX3U4IGFsYXdfZW5hYmxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9NQVAzSVNQX0NDRENfQUxBVyAoMSA8PCAwKQpAQCAtMjE4LDY4ICsyMTgsNjggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9NQVAzSVNQX1JHQl9NQVggMwogZW51bSBvbWFwM2lzcF9hbGF3X2lwd2lkdGggewotIE9NQVAzSVNQX0FMQVdfQklUMTJfMyA9IDB4MywKLSBPTUFQM0lTUF9BTEFXX0JJVDExXzIgPSAweDQsCisgIE9NQVAzSVNQX0FMQVdfQklUMTJfMyA9IDB4MywKKyAgT01BUDNJU1BfQUxBV19CSVQxMV8yID0gMHg0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQM0lTUF9BTEFXX0JJVDEwXzEgPSAweDUsCi0gT01BUDNJU1BfQUxBV19CSVQ5XzAgPSAweDYKKyAgT01BUDNJU1BfQUxBV19CSVQxMF8xID0gMHg1LAorICBPTUFQM0lTUF9BTEFXX0JJVDlfMCA9IDB4NgogfTsKIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2xzY19jb25maWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBvZmZzZXQ7Ci0gX191OCBnYWluX21vZGVfbjsKLSBfX3U4IGdhaW5fbW9kZV9tOwotIF9fdTggZ2Fpbl9mb3JtYXQ7CisgIF9fdTE2IG9mZnNldDsKKyAgX191OCBnYWluX21vZGVfbjsKKyAgX191OCBnYWluX21vZGVfbTsKKyAgX191OCBnYWluX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZm10c3BoOwotIF9fdTE2IGZtdGxuaDsKLSBfX3UxNiBmbXRzbHY7Ci0gX191MTYgZm10bG52OworICBfX3UxNiBmbXRzcGg7CisgIF9fdTE2IGZtdGxuaDsKKyAgX191MTYgZm10c2x2OworICBfX3UxNiBmbXRsbnY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW5pdGlhbF94OwotIF9fdTggaW5pdGlhbF95OwotIF9fdTMyIHNpemU7CisgIF9fdTggaW5pdGlhbF94OworICBfX3U4IGluaXRpYWxfeTsKKyAgX191MzIgc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXAzaXNwX2NjZGNfYmNsYW1wIHsKLSBfX3U4IG9iZ2FpbjsKLSBfX3U4IG9ic3RwaXhlbDsKLSBfX3U4IG9ibGluZXM7CisgIF9fdTggb2JnYWluOworICBfX3U4IG9ic3RwaXhlbDsKKyAgX191OCBvYmxpbmVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9ibGVuOwotIF9fdTE2IGRjc3VidmFsOworICBfX3U4IG9ibGVuOworICBfX3UxNiBkY3N1YnZhbDsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19mcGMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBmcG51bTsKLSBfX3UzMiBmcGNhZGRyOworICBfX3UxNiBmcG51bTsKKyAgX191MzIgZnBjYWRkcjsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19ibGNvbXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJfbWc7Ci0gX191OCBnYl9nOwotIF9fdTggZ3JfY3k7Ci0gX191OCByX3llOworICBfX3U4IGJfbWc7CisgIF9fdTggZ2JfZzsKKyAgX191OCBncl9jeTsKKyAgX191OCByX3llOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19jdWxsaW5nIHsKLSBfX3U4IHZfcGF0dGVybjsKLSBfX3UxNiBoX29kZDsKKyAgX191OCB2X3BhdHRlcm47CisgIF9fdTE2IGhfb2RkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBoX2V2ZW47CisgIF9fdTE2IGhfZXZlbjsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfY2NkY191cGRhdGVfY29uZmlnIHsKLSBfX3UxNiB1cGRhdGU7CisgIF9fdTE2IHVwZGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZzsKLSBlbnVtIG9tYXAzaXNwX2FsYXdfaXB3aWR0aCBhbGF3aXA7Ci0gc3RydWN0IG9tYXAzaXNwX2NjZGNfYmNsYW1wIF9fdXNlciAqYmNsYW1wOwotIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2JsY29tcCBfX3VzZXIgKmJsY29tcDsKKyAgX191MTYgZmxhZzsKKyAgZW51bSBvbWFwM2lzcF9hbGF3X2lwd2lkdGggYWxhd2lwOworICBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19iY2xhbXAgX191c2VyICogYmNsYW1wOworICBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19ibGNvbXAgX191c2VyICogYmxjb21wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19mcGMgX191c2VyICpmcGM7Ci0gc3RydWN0IG9tYXAzaXNwX2NjZGNfbHNjX2NvbmZpZyBfX3VzZXIgKmxzY19jZmc7Ci0gc3RydWN0IG9tYXAzaXNwX2NjZGNfY3VsbGluZyBfX3VzZXIgKmN1bGw7Ci0gX191OCBfX3VzZXIgKmxzYzsKKyAgc3RydWN0IG9tYXAzaXNwX2NjZGNfZnBjIF9fdXNlciAqIGZwYzsKKyAgc3RydWN0IG9tYXAzaXNwX2NjZGNfbHNjX2NvbmZpZyBfX3VzZXIgKiBsc2NfY2ZnOworICBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19jdWxsaW5nIF9fdXNlciAqIGN1bGw7CisgIF9fdTggX191c2VyICogbHNjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE9NQVAzSVNQX1BSRVZfTFVNQUVOSCAoMSA8PCAwKQpAQCAtMzExLDEwNiArMzExLDEwNiBAQAogI2RlZmluZSBPTUFQM0lTUF9QUkVWX0RFVEVDVF9DT1JSRUNUX0NIQU5ORUxTIDQKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2htZWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9kZGRpc3Q7Ci0gX191OCBldmVuZGlzdDsKLSBfX3U4IHRocmVzOworICBfX3U4IG9kZGRpc3Q7CisgIF9fdTggZXZlbmRpc3Q7CisgIF9fdTggdGhyZXM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gb21hcDNpc3BfY2ZhX2ZtdCB7Ci0gT01BUDNJU1BfQ0ZBRk1UX0JBWUVSLAotIE9NQVAzSVNQX0NGQUZNVF9TT05ZVkdBLAotIE9NQVAzSVNQX0NGQUZNVF9SR0JGT1ZFT04sCisgIE9NQVAzSVNQX0NGQUZNVF9CQVlFUiwKKyAgT01BUDNJU1BfQ0ZBRk1UX1NPTllWR0EsCisgIE9NQVAzSVNQX0NGQUZNVF9SR0JGT1ZFT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVAzSVNQX0NGQUZNVF9ETlNQTCwKLSBPTUFQM0lTUF9DRkFGTVRfSE9ORVlDT01CLAotIE9NQVAzSVNQX0NGQUZNVF9SUkdHQkJGT1ZFT04KKyAgT01BUDNJU1BfQ0ZBRk1UX0ROU1BMLAorICBPTUFQM0lTUF9DRkFGTVRfSE9ORVlDT01CLAorICBPTUFQM0lTUF9DRkFGTVRfUlJHR0JCRk9WRU9OCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NmYSB7Ci0gZW51bSBvbWFwM2lzcF9jZmFfZm10IGZvcm1hdDsKLSBfX3U4IGdyYWR0aHJzX3ZlcnQ7Ci0gX191OCBncmFkdGhyc19ob3J6OworICBlbnVtIG9tYXAzaXNwX2NmYV9mbXQgZm9ybWF0OworICBfX3U4IGdyYWR0aHJzX3ZlcnQ7CisgIF9fdTggZ3JhZHRocnNfaG9yejsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGFibGVbNF1bT01BUDNJU1BfUFJFVl9DRkFfQkxLX1NJWkVdOworICBfX3UzMiB0YWJsZVs0XVtPTUFQM0lTUF9QUkVWX0NGQV9CTEtfU0laRV07CiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfY3N1cCB7Ci0gX191OCBnYWluOworICBfX3U4IGdhaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGhyZXM7Ci0gX191OCBoeXBmX2VuOworICBfX3U4IHRocmVzOworICBfX3U4IGh5cGZfZW47CiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfd2JhbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRnYWluOwotIF9fdTggY29lZjM7Ci0gX191OCBjb2VmMjsKLSBfX3U4IGNvZWYxOworICBfX3UxNiBkZ2FpbjsKKyAgX191OCBjb2VmMzsKKyAgX191OCBjb2VmMjsKKyAgX191OCBjb2VmMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb2VmMDsKKyAgX191OCBjb2VmMDsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9ibGthZGogewotIF9fdTggcmVkOworICBfX3U4IHJlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBncmVlbjsKLSBfX3U4IGJsdWU7CisgIF9fdTggZ3JlZW47CisgIF9fdTggYmx1ZTsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9yZ2J0b3JnYiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1hdHJpeFtPTUFQM0lTUF9SR0JfTUFYXVtPTUFQM0lTUF9SR0JfTUFYXTsKLSBfX3UxNiBvZmZzZXRbT01BUDNJU1BfUkdCX01BWF07CisgIF9fdTE2IG1hdHJpeFtPTUFQM0lTUF9SR0JfTUFYXVtPTUFQM0lTUF9SR0JfTUFYXTsKKyAgX191MTYgb2Zmc2V0W09NQVAzSVNQX1JHQl9NQVhdOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NzYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1hdHJpeFtPTUFQM0lTUF9SR0JfTUFYXVtPTUFQM0lTUF9SR0JfTUFYXTsKLSBfX3MxNiBvZmZzZXRbT01BUDNJU1BfUkdCX01BWF07CisgIF9fdTE2IG1hdHJpeFtPTUFQM0lTUF9SR0JfTUFYXVtPTUFQM0lTUF9SR0JfTUFYXTsKKyAgX19zMTYgb2Zmc2V0W09NQVAzSVNQX1JHQl9NQVhdOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3ljbGltaXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1pbkM7Ci0gX191OCBtYXhDOwotIF9fdTggbWluWTsKLSBfX3U4IG1heFk7CisgIF9fdTggbWluQzsKKyAgX191OCBtYXhDOworICBfX3U4IG1pblk7CisgIF9fdTggbWF4WTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfZGNvciB7Ci0gX191OCBjb3VwbGV0X21vZGVfZW47Ci0gX191MzIgZGV0ZWN0X2NvcnJlY3RbT01BUDNJU1BfUFJFVl9ERVRFQ1RfQ09SUkVDVF9DSEFOTkVMU107CisgIF9fdTggY291cGxldF9tb2RlX2VuOworICBfX3UzMiBkZXRlY3RfY29ycmVjdFtPTUFQM0lTUF9QUkVWX0RFVEVDVF9DT1JSRUNUX0NIQU5ORUxTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfbmYgewotIF9fdTggc3ByZWFkOwotIF9fdTMyIHRhYmxlW09NQVAzSVNQX1BSRVZfTkZfVEJMX1NJWkVdOworICBfX3U4IHNwcmVhZDsKKyAgX191MzIgdGFibGVbT01BUDNJU1BfUFJFVl9ORl9UQkxfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2d0YWJsZXMgewotIF9fdTMyIHJlZFtPTUFQM0lTUF9QUkVWX0dBTU1BX1RCTF9TSVpFXTsKLSBfX3UzMiBncmVlbltPTUFQM0lTUF9QUkVWX0dBTU1BX1RCTF9TSVpFXTsKKyAgX191MzIgcmVkW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOworICBfX3UzMiBncmVlbltPTUFQM0lTUF9QUkVWX0dBTU1BX1RCTF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmx1ZVtPTUFQM0lTUF9QUkVWX0dBTU1BX1RCTF9TSVpFXTsKKyAgX191MzIgYmx1ZVtPTUFQM0lTUF9QUkVWX0dBTU1BX1RCTF9TSVpFXTsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9sdW1hIHsKLSBfX3UzMiB0YWJsZVtPTUFQM0lTUF9QUkVWX1lFTkhfVEJMX1NJWkVdOworICBfX3UzMiB0YWJsZVtPTUFQM0lTUF9QUkVWX1lFTkhfVEJMX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl91cGRhdGVfY29uZmlnIHsKLSBfX3UzMiB1cGRhdGU7Ci0gX191MzIgZmxhZzsKKyAgX191MzIgdXBkYXRlOworICBfX3UzMiBmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaGFkaW5nX3NoaWZ0OwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2x1bWEgX191c2VyICpsdW1hOwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2htZWQgX191c2VyICpobWVkOwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NmYSBfX3VzZXIgKmNmYTsKKyAgX191MzIgc2hhZGluZ19zaGlmdDsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfbHVtYSBfX3VzZXIgKiBsdW1hOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9obWVkIF9fdXNlciAqIGhtZWQ7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NmYSBfX3VzZXIgKiBjZmE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NzdXAgX191c2VyICpjc3VwOwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3diYWwgX191c2VyICp3YmFsOwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2Jsa2FkaiBfX3VzZXIgKmJsa2FkajsKLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9yZ2J0b3JnYiBfX3VzZXIgKnJnYjJyZ2I7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NzdXAgX191c2VyICogY3N1cDsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfd2JhbCBfX3VzZXIgKiB3YmFsOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9ibGthZGogX191c2VyICogYmxrYWRqOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9yZ2J0b3JnYiBfX3VzZXIgKiByZ2IycmdiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9jc2MgX191c2VyICpjc2M7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfeWNsaW1pdCBfX3VzZXIgKnljbGltaXQ7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfZGNvciBfX3VzZXIgKmRjb3I7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfbmYgX191c2VyICpuZjsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfY3NjIF9fdXNlciAqIGNzYzsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfeWNsaW1pdCBfX3VzZXIgKiB5Y2xpbWl0OworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9kY29yIF9fdXNlciAqIGRjb3I7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X25mIF9fdXNlciAqIG5mOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9ndGFibGVzIF9fdXNlciAqZ2FtbWE7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2d0YWJsZXMgX191c2VyICogZ2FtbWE7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXBmYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vbWFwZmIuaAppbmRleCAwN2U4YjlmLi5kOGVkYWVmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXBmYi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcGZiLmgKQEAgLTIyLDkgKzIyLDkgQEAKICNpbmNsdWRlIDxsaW51eC9pb2N0bC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2RlZmluZSBPTUFQX0lPVyhudW0sIGR0eXBlKSBfSU9XKCdPJywgbnVtLCBkdHlwZSkKLSNkZWZpbmUgT01BUF9JT1IobnVtLCBkdHlwZSkgX0lPUignTycsIG51bSwgZHR5cGUpCi0jZGVmaW5lIE9NQVBfSU9XUihudW0sIGR0eXBlKSBfSU9XUignTycsIG51bSwgZHR5cGUpCisjZGVmaW5lIE9NQVBfSU9XKG51bSxkdHlwZSkgX0lPVygnTycsIG51bSwgZHR5cGUpCisjZGVmaW5lIE9NQVBfSU9SKG51bSxkdHlwZSkgX0lPUignTycsIG51bSwgZHR5cGUpCisjZGVmaW5lIE9NQVBfSU9XUihudW0sZHR5cGUpIF9JT1dSKCdPJywgbnVtLCBkdHlwZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9NQVBfSU8obnVtKSBfSU8oJ08nLCBudW0pCiAjZGVmaW5lIE9NQVBGQl9NSVJST1IgT01BUF9JT1coMzEsIGludCkKQEAgLTg2LDE0NCArODYsMTQ0IEBACiAjZGVmaW5lIE9NQVBGQl9NRU1fSURYX01BU0sgMHg3ZgogZW51bSBvbWFwZmJfY29sb3JfZm9ybWF0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUEZCX0NPTE9SX1JHQjU2NSA9IDAsCi0gT01BUEZCX0NPTE9SX1lVVjQyMiwKLSBPTUFQRkJfQ09MT1JfWVVWNDIwLAotIE9NQVBGQl9DT0xPUl9DTFVUXzhCUFAsCisgIE9NQVBGQl9DT0xPUl9SR0I1NjUgPSAwLAorICBPTUFQRkJfQ09MT1JfWVVWNDIyLAorICBPTUFQRkJfQ09MT1JfWVVWNDIwLAorICBPTUFQRkJfQ09MT1JfQ0xVVF84QlBQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfQ09MT1JfQ0xVVF80QlBQLAotIE9NQVBGQl9DT0xPUl9DTFVUXzJCUFAsCi0gT01BUEZCX0NPTE9SX0NMVVRfMUJQUCwKLSBPTUFQRkJfQ09MT1JfUkdCNDQ0LAorICBPTUFQRkJfQ09MT1JfQ0xVVF80QlBQLAorICBPTUFQRkJfQ09MT1JfQ0xVVF8yQlBQLAorICBPTUFQRkJfQ09MT1JfQ0xVVF8xQlBQLAorICBPTUFQRkJfQ09MT1JfUkdCNDQ0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfQ09MT1JfWVVZNDIyLAotIE9NQVBGQl9DT0xPUl9BUkdCMTYsCi0gT01BUEZCX0NPTE9SX1JHQjI0VSwKLSBPTUFQRkJfQ09MT1JfUkdCMjRQLAorICBPTUFQRkJfQ09MT1JfWVVZNDIyLAorICBPTUFQRkJfQ09MT1JfQVJHQjE2LAorICBPTUFQRkJfQ09MT1JfUkdCMjRVLAorICBPTUFQRkJfQ09MT1JfUkdCMjRQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfQ09MT1JfQVJHQjMyLAotIE9NQVBGQl9DT0xPUl9SR0JBMzIsCi0gT01BUEZCX0NPTE9SX1JHQlgzMiwKKyAgT01BUEZCX0NPTE9SX0FSR0IzMiwKKyAgT01BUEZCX0NPTE9SX1JHQkEzMiwKKyAgT01BUEZCX0NPTE9SX1JHQlgzMiwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXBmYl91cGRhdGVfd2luZG93IHsKLSBfX3UzMiB4LCB5OwotIF9fdTMyIHdpZHRoLCBoZWlnaHQ7Ci0gX191MzIgZm9ybWF0OworICBfX3UzMiB4LCB5OworICBfX3UzMiB3aWR0aCwgaGVpZ2h0OworICBfX3UzMiBmb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG91dF94LCBvdXRfeTsKLSBfX3UzMiBvdXRfd2lkdGgsIG91dF9oZWlnaHQ7Ci0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIG91dF94LCBvdXRfeTsKKyAgX191MzIgb3V0X3dpZHRoLCBvdXRfaGVpZ2h0OworICBfX3UzMiByZXNlcnZlZFs4XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXBmYl91cGRhdGVfd2luZG93X29sZCB7Ci0gX191MzIgeCwgeTsKLSBfX3UzMiB3aWR0aCwgaGVpZ2h0OwotIF9fdTMyIGZvcm1hdDsKKyAgX191MzIgeCwgeTsKKyAgX191MzIgd2lkdGgsIGhlaWdodDsKKyAgX191MzIgZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG9tYXBmYl9wbGFuZSB7Ci0gT01BUEZCX1BMQU5FX0dGWCA9IDAsCi0gT01BUEZCX1BMQU5FX1ZJRDEsCisgIE9NQVBGQl9QTEFORV9HRlggPSAwLAorICBPTUFQRkJfUExBTkVfVklEMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUEZCX1BMQU5FX1ZJRDIsCisgIE9NQVBGQl9QTEFORV9WSUQyLAogfTsKIGVudW0gb21hcGZiX2NoYW5uZWxfb3V0IHsKLSBPTUFQRkJfQ0hBTk5FTF9PVVRfTENEID0gMCwKKyAgT01BUEZCX0NIQU5ORUxfT1VUX0xDRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9DSEFOTkVMX09VVF9ESUdJVCwKKyAgT01BUEZCX0NIQU5ORUxfT1VUX0RJR0lULAogfTsKIHN0cnVjdCBvbWFwZmJfcGxhbmVfaW5mbyB7Ci0gX191MzIgcG9zX3g7CisgIF9fdTMyIHBvc194OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwb3NfeTsKLSBfX3U4IGVuYWJsZWQ7Ci0gX191OCBjaGFubmVsX291dDsKLSBfX3U4IG1pcnJvcjsKKyAgX191MzIgcG9zX3k7CisgIF9fdTggZW5hYmxlZDsKKyAgX191OCBjaGFubmVsX291dDsKKyAgX191OCBtaXJyb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWVtX2lkeDsKLSBfX3UzMiBvdXRfd2lkdGg7Ci0gX191MzIgb3V0X2hlaWdodDsKLSBfX3UzMiByZXNlcnZlZDJbMTJdOworICBfX3U4IG1lbV9pZHg7CisgIF9fdTMyIG91dF93aWR0aDsKKyAgX191MzIgb3V0X2hlaWdodDsKKyAgX191MzIgcmVzZXJ2ZWQyWzEyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXBmYl9tZW1faW5mbyB7Ci0gX191MzIgc2l6ZTsKLSBfX3U4IHR5cGU7CisgIF9fdTMyIHNpemU7CisgIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZFszXTsKKyAgX191OCByZXNlcnZlZFszXTsKIH07CiBzdHJ1Y3Qgb21hcGZiX2NhcHMgewotIF9fdTMyIGN0cmw7CisgIF9fdTMyIGN0cmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBsYW5lX2NvbG9yOwotIF9fdTMyIHduZF9jb2xvcjsKKyAgX191MzIgcGxhbmVfY29sb3I7CisgIF9fdTMyIHduZF9jb2xvcjsKIH07CiBlbnVtIG9tYXBmYl9jb2xvcl9rZXlfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9DT0xPUl9LRVlfRElTQUJMRUQgPSAwLAotIE9NQVBGQl9DT0xPUl9LRVlfR0ZYX0RTVCwKLSBPTUFQRkJfQ09MT1JfS0VZX1ZJRF9TUkMsCisgIE9NQVBGQl9DT0xPUl9LRVlfRElTQUJMRUQgPSAwLAorICBPTUFQRkJfQ09MT1JfS0VZX0dGWF9EU1QsCisgIE9NQVBGQl9DT0xPUl9LRVlfVklEX1NSQywKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXBmYl9jb2xvcl9rZXkgewotIF9fdTggY2hhbm5lbF9vdXQ7Ci0gX191MzIgYmFja2dyb3VuZDsKLSBfX3UzMiB0cmFuc19rZXk7CisgIF9fdTggY2hhbm5lbF9vdXQ7CisgIF9fdTMyIGJhY2tncm91bmQ7CisgIF9fdTMyIHRyYW5zX2tleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBrZXlfdHlwZTsKKyAgX191OCBrZXlfdHlwZTsKIH07CiBlbnVtIG9tYXBmYl91cGRhdGVfbW9kZSB7Ci0gT01BUEZCX1VQREFURV9ESVNBQkxFRCA9IDAsCisgIE9NQVBGQl9VUERBVEVfRElTQUJMRUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfQVVUT19VUERBVEUsCi0gT01BUEZCX01BTlVBTF9VUERBVEUKKyAgT01BUEZCX0FVVE9fVVBEQVRFLAorICBPTUFQRkJfTUFOVUFMX1VQREFURQogfTsKIHN0cnVjdCBvbWFwZmJfbWVtb3J5X3JlYWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB4OwotIF9fdTE2IHk7Ci0gX191MTYgdzsKLSBfX3UxNiBoOworICBfX3UxNiB4OworICBfX3UxNiB5OworICBfX3UxNiB3OworICBfX3UxNiBoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgYnVmZmVyX3NpemU7Ci0gdm9pZCBfX3VzZXIgKmJ1ZmZlcjsKKyAgc2l6ZV90IGJ1ZmZlcl9zaXplOworICB2b2lkIF9fdXNlciAqIGJ1ZmZlcjsKIH07CiBzdHJ1Y3Qgb21hcGZiX292bF9jb2xvcm1vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG92ZXJsYXlfaWR4OwotIF9fdTggbW9kZV9pZHg7Ci0gX191MzIgYml0c19wZXJfcGl4ZWw7Ci0gX191MzIgbm9uc3RkOworICBfX3U4IG92ZXJsYXlfaWR4OworICBfX3U4IG1vZGVfaWR4OworICBfX3UzMiBiaXRzX3Blcl9waXhlbDsKKyAgX191MzIgbm9uc3RkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmJfYml0ZmllbGQgcmVkOwotIHN0cnVjdCBmYl9iaXRmaWVsZCBncmVlbjsKLSBzdHJ1Y3QgZmJfYml0ZmllbGQgYmx1ZTsKLSBzdHJ1Y3QgZmJfYml0ZmllbGQgdHJhbnNwOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgcmVkOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgZ3JlZW47CisgIHN0cnVjdCBmYl9iaXRmaWVsZCBibHVlOworICBzdHJ1Y3QgZmJfYml0ZmllbGQgdHJhbnNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcGZiX3ZyYW1faW5mbyB7Ci0gX191MzIgdG90YWw7Ci0gX191MzIgZnJlZTsKKyAgX191MzIgdG90YWw7CisgIF9fdTMyIGZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxhcmdlc3RfZnJlZV9ibG9jazsKLSBfX3UzMiByZXNlcnZlZFs1XTsKKyAgX191MzIgbGFyZ2VzdF9mcmVlX2Jsb2NrOworICBfX3UzMiByZXNlcnZlZFs1XTsKIH07CiBzdHJ1Y3Qgb21hcGZiX3RlYXJzeW5jX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVuYWJsZWQ7Ci0gX191OCByZXNlcnZlZDFbM107Ci0gX191MTYgbGluZTsKLSBfX3UxNiByZXNlcnZlZDI7CisgIF9fdTggZW5hYmxlZDsKKyAgX191OCByZXNlcnZlZDFbM107CisgIF9fdTE2IGxpbmU7CisgIF9fdTE2IHJlc2VydmVkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXBmYl9kaXNwbGF5X2luZm8gewotIF9fdTE2IHhyZXM7Ci0gX191MTYgeXJlczsKKyAgX191MTYgeHJlczsKKyAgX191MTYgeXJlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OwotIF9fdTMyIHJlc2VydmVkWzVdOworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OworICBfX3UzMiByZXNlcnZlZFs1XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29vbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vb20uaAppbmRleCBkMzdmMzZjLi4zZGIwNWNhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29vbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvb29tLmgKQEAgLTE4LDExICsxOCwxMSBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX19JTkNMVURFX0xJTlVYX09PTV9ICiAjZGVmaW5lIF9VQVBJX19JTkNMVURFX0xJTlVYX09PTV9ICi0jZGVmaW5lIE9PTV9TQ09SRV9BREpfTUlOICgtMTAwMCkKKyNkZWZpbmUgT09NX1NDT1JFX0FESl9NSU4gKC0gMTAwMCkKICNkZWZpbmUgT09NX1NDT1JFX0FESl9NQVggMTAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgT09NX0RJU0FCTEUgKC0xNykKLSNkZWZpbmUgT09NX0FESlVTVF9NSU4gKC0xNikKKyNkZWZpbmUgT09NX0RJU0FCTEUgKC0gMTcpCisjZGVmaW5lIE9PTV9BREpVU1RfTUlOICgtIDE2KQogI2RlZmluZSBPT01fQURKVVNUX01BWCAxNQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vcGVudnN3aXRjaC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vcGVudnN3aXRjaC5oCmluZGV4IDk2NDliNmIuLjY2M2UzN2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb3BlbnZzd2l0Y2guaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29wZW52c3dpdGNoLmgKQEAgLTIyLDcgKzIyLDcgQEAKICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfaGVhZGVyIHsKLSBpbnQgZHBfaWZpbmRleDsKKyAgaW50IGRwX2lmaW5kZXg7CiB9OwogI2RlZmluZSBPVlNfREFUQVBBVEhfRkFNSUxZICJvdnNfZGF0YXBhdGgiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzEsMzA4ICszMSwzMjYgQEAKICNkZWZpbmUgT1ZTX0RQX1ZFUl9GRUFUVVJFUyAyCiBlbnVtIG92c19kYXRhcGF0aF9jbWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfRFBfQ01EX1VOU1BFQywKLSBPVlNfRFBfQ01EX05FVywKLSBPVlNfRFBfQ01EX0RFTCwKLSBPVlNfRFBfQ01EX0dFVCwKKyAgT1ZTX0RQX0NNRF9VTlNQRUMsCisgIE9WU19EUF9DTURfTkVXLAorICBPVlNfRFBfQ01EX0RFTCwKKyAgT1ZTX0RQX0NNRF9HRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19EUF9DTURfU0VUCisgIE9WU19EUF9DTURfU0VUCiB9OwogZW51bSBvdnNfZGF0YXBhdGhfYXR0ciB7Ci0gT1ZTX0RQX0FUVFJfVU5TUEVDLAorICBPVlNfRFBfQVRUUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19EUF9BVFRSX05BTUUsCi0gT1ZTX0RQX0FUVFJfVVBDQUxMX1BJRCwKLSBPVlNfRFBfQVRUUl9TVEFUUywKLSBPVlNfRFBfQVRUUl9NRUdBRkxPV19TVEFUUywKKyAgT1ZTX0RQX0FUVFJfTkFNRSwKKyAgT1ZTX0RQX0FUVFJfVVBDQUxMX1BJRCwKKyAgT1ZTX0RQX0FUVFJfU1RBVFMsCisgIE9WU19EUF9BVFRSX01FR0FGTE9XX1NUQVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfRFBfQVRUUl9VU0VSX0ZFQVRVUkVTLAotIF9fT1ZTX0RQX0FUVFJfTUFYCisgIE9WU19EUF9BVFRSX1VTRVJfRkVBVFVSRVMsCisgIF9fT1ZTX0RQX0FUVFJfTUFYCiB9OwogI2RlZmluZSBPVlNfRFBfQVRUUl9NQVggKF9fT1ZTX0RQX0FUVFJfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3ZzX2RwX3N0YXRzIHsKLSBfX3U2NCBuX2hpdDsKLSBfX3U2NCBuX21pc3NlZDsKLSBfX3U2NCBuX2xvc3Q7CisgIF9fdTY0IG5faGl0OworICBfX3U2NCBuX21pc3NlZDsKKyAgX191NjQgbl9sb3N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBuX2Zsb3dzOworICBfX3U2NCBuX2Zsb3dzOwogfTsKIHN0cnVjdCBvdnNfZHBfbWVnYWZsb3dfc3RhdHMgewotIF9fdTY0IG5fbWFza19oaXQ7CisgIF9fdTY0IG5fbWFza19oaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5fbWFza3M7Ci0gX191MzIgcGFkMDsKLSBfX3U2NCBwYWQxOwotIF9fdTY0IHBhZDI7CisgIF9fdTMyIG5fbWFza3M7CisgIF9fdTMyIHBhZDA7CisgIF9fdTY0IHBhZDE7CisgIF9fdTY0IHBhZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvdnNfdnBvcnRfc3RhdHMgewotIF9fdTY0IHJ4X3BhY2tldHM7Ci0gX191NjQgdHhfcGFja2V0czsKKyAgX191NjQgcnhfcGFja2V0czsKKyAgX191NjQgdHhfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnhfYnl0ZXM7Ci0gX191NjQgdHhfYnl0ZXM7Ci0gX191NjQgcnhfZXJyb3JzOwotIF9fdTY0IHR4X2Vycm9yczsKKyAgX191NjQgcnhfYnl0ZXM7CisgIF9fdTY0IHR4X2J5dGVzOworICBfX3U2NCByeF9lcnJvcnM7CisgIF9fdTY0IHR4X2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnhfZHJvcHBlZDsKLSBfX3U2NCB0eF9kcm9wcGVkOworICBfX3U2NCByeF9kcm9wcGVkOworICBfX3U2NCB0eF9kcm9wcGVkOwogfTsKICNkZWZpbmUgT1ZTX0RQX0ZfVU5BTElHTkVEICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBPVlNQX0xPQ0FMICgoX191MzIpMCkKKyNkZWZpbmUgT1ZTX0RQX0ZfVlBPUlRfUElEUyAoMSA8PCAxKQorI2RlZmluZSBPVlNQX0xPQ0FMICgoX191MzIpIDApCiAjZGVmaW5lIE9WU19QQUNLRVRfRkFNSUxZICJvdnNfcGFja2V0IgogI2RlZmluZSBPVlNfUEFDS0VUX1ZFUlNJT04gMHgxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvdnNfcGFja2V0X2NtZCB7CisgIE9WU19QQUNLRVRfQ01EX1VOU1BFQywKKyAgT1ZTX1BBQ0tFVF9DTURfTUlTUywKKyAgT1ZTX1BBQ0tFVF9DTURfQUNUSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfUEFDS0VUX0NNRF9VTlNQRUMsCi0gT1ZTX1BBQ0tFVF9DTURfTUlTUywKLSBPVlNfUEFDS0VUX0NNRF9BQ1RJT04sCi0gT1ZTX1BBQ0tFVF9DTURfRVhFQ1VURQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgT1ZTX1BBQ0tFVF9DTURfRVhFQ1VURQogfTsKIGVudW0gb3ZzX3BhY2tldF9hdHRyIHsKLSBPVlNfUEFDS0VUX0FUVFJfVU5TUEVDLAotIE9WU19QQUNLRVRfQVRUUl9QQUNLRVQsCisgIE9WU19QQUNLRVRfQVRUUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19QQUNLRVRfQVRUUl9LRVksCi0gT1ZTX1BBQ0tFVF9BVFRSX0FDVElPTlMsCi0gT1ZTX1BBQ0tFVF9BVFRSX1VTRVJEQVRBLAotIF9fT1ZTX1BBQ0tFVF9BVFRSX01BWAorICBPVlNfUEFDS0VUX0FUVFJfUEFDS0VULAorICBPVlNfUEFDS0VUX0FUVFJfS0VZLAorICBPVlNfUEFDS0VUX0FUVFJfQUNUSU9OUywKKyAgT1ZTX1BBQ0tFVF9BVFRSX1VTRVJEQVRBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19PVlNfUEFDS0VUX0FUVFJfTUFYCiB9OwogI2RlZmluZSBPVlNfUEFDS0VUX0FUVFJfTUFYIChfX09WU19QQUNLRVRfQVRUUl9NQVggLSAxKQogI2RlZmluZSBPVlNfVlBPUlRfRkFNSUxZICJvdnNfdnBvcnQiCi0jZGVmaW5lIE9WU19WUE9SVF9NQ0dST1VQICJvdnNfdnBvcnQiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBPVlNfVlBPUlRfTUNHUk9VUCAib3ZzX3Zwb3J0IgogI2RlZmluZSBPVlNfVlBPUlRfVkVSU0lPTiAweDEKIGVudW0gb3ZzX3Zwb3J0X2NtZCB7Ci0gT1ZTX1ZQT1JUX0NNRF9VTlNQRUMsCi0gT1ZTX1ZQT1JUX0NNRF9ORVcsCisgIE9WU19WUE9SVF9DTURfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfVlBPUlRfQ01EX0RFTCwKLSBPVlNfVlBPUlRfQ01EX0dFVCwKLSBPVlNfVlBPUlRfQ01EX1NFVAorICBPVlNfVlBPUlRfQ01EX05FVywKKyAgT1ZTX1ZQT1JUX0NNRF9ERUwsCisgIE9WU19WUE9SVF9DTURfR0VULAorICBPVlNfVlBPUlRfQ01EX1NFVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvdnNfdnBvcnRfdHlwZSB7Ci0gT1ZTX1ZQT1JUX1RZUEVfVU5TUEVDLAotIE9WU19WUE9SVF9UWVBFX05FVERFViwKLSBPVlNfVlBPUlRfVFlQRV9JTlRFUk5BTCwKKyAgT1ZTX1ZQT1JUX1RZUEVfVU5TUEVDLAorICBPVlNfVlBPUlRfVFlQRV9ORVRERVYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19WUE9SVF9UWVBFX0dSRSwKLSBPVlNfVlBPUlRfVFlQRV9WWExBTiwKLSBfX09WU19WUE9SVF9UWVBFX01BWAorICBPVlNfVlBPUlRfVFlQRV9JTlRFUk5BTCwKKyAgT1ZTX1ZQT1JUX1RZUEVfR1JFLAorICBPVlNfVlBPUlRfVFlQRV9WWExBTiwKKyAgT1ZTX1ZQT1JUX1RZUEVfR0VORVZFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19PVlNfVlBPUlRfVFlQRV9NQVgKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPVlNfVlBPUlRfVFlQRV9NQVggKF9fT1ZTX1ZQT1JUX1RZUEVfTUFYIC0gMSkKIGVudW0gb3ZzX3Zwb3J0X2F0dHIgewotIE9WU19WUE9SVF9BVFRSX1VOU1BFQywKLSBPVlNfVlBPUlRfQVRUUl9QT1JUX05PLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfVlBPUlRfQVRUUl9UWVBFLAotIE9WU19WUE9SVF9BVFRSX05BTUUsCi0gT1ZTX1ZQT1JUX0FUVFJfT1BUSU9OUywKLSBPVlNfVlBPUlRfQVRUUl9VUENBTExfUElELAorICBPVlNfVlBPUlRfQVRUUl9VTlNQRUMsCisgIE9WU19WUE9SVF9BVFRSX1BPUlRfTk8sCisgIE9WU19WUE9SVF9BVFRSX1RZUEUsCisgIE9WU19WUE9SVF9BVFRSX05BTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19WUE9SVF9BVFRSX1NUQVRTLAotIF9fT1ZTX1ZQT1JUX0FUVFJfTUFYCisgIE9WU19WUE9SVF9BVFRSX09QVElPTlMsCisgIE9WU19WUE9SVF9BVFRSX1VQQ0FMTF9QSUQsCisgIE9WU19WUE9SVF9BVFRSX1NUQVRTLAorICBfX09WU19WUE9SVF9BVFRSX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE9WU19WUE9SVF9BVFRSX01BWCAoX19PVlNfVlBPUlRfQVRUUl9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIE9WU19UVU5ORUxfQVRUUl9VTlNQRUMsCi0gT1ZTX1RVTk5FTF9BVFRSX0RTVF9QT1JULAotIF9fT1ZTX1RVTk5FTF9BVFRSX01BWAorICBPVlNfVFVOTkVMX0FUVFJfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgT1ZTX1RVTk5FTF9BVFRSX0RTVF9QT1JULAorICBfX09WU19UVU5ORUxfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19UVU5ORUxfQVRUUl9NQVggKF9fT1ZTX1RVTk5FTF9BVFRSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPVlNfRkxPV19GQU1JTFkgIm92c19mbG93IgogI2RlZmluZSBPVlNfRkxPV19NQ0dST1VQICJvdnNfZmxvdyIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9WU19GTE9XX1ZFUlNJT04gMHgxCiBlbnVtIG92c19mbG93X2NtZCB7Ci0gT1ZTX0ZMT1dfQ01EX1VOU1BFQywKLSBPVlNfRkxPV19DTURfTkVXLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfRkxPV19DTURfREVMLAotIE9WU19GTE9XX0NNRF9HRVQsCi0gT1ZTX0ZMT1dfQ01EX1NFVAorICBPVlNfRkxPV19DTURfVU5TUEVDLAorICBPVlNfRkxPV19DTURfTkVXLAorICBPVlNfRkxPV19DTURfREVMLAorICBPVlNfRkxPV19DTURfR0VULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgT1ZTX0ZMT1dfQ01EX1NFVAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3ZzX2Zsb3dfc3RhdHMgewotIF9fdTY0IG5fcGFja2V0czsKLSBfX3U2NCBuX2J5dGVzOworICBfX3U2NCBuX3BhY2tldHM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBuX2J5dGVzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c19rZXlfYXR0ciB7Ci0gT1ZTX0tFWV9BVFRSX1VOU1BFQywKLSBPVlNfS0VZX0FUVFJfRU5DQVAsCi0gT1ZTX0tFWV9BVFRSX1BSSU9SSVRZLAorICBPVlNfS0VZX0FUVFJfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfS0VZX0FUVFJfSU5fUE9SVCwKLSBPVlNfS0VZX0FUVFJfRVRIRVJORVQsCi0gT1ZTX0tFWV9BVFRSX1ZMQU4sCi0gT1ZTX0tFWV9BVFRSX0VUSEVSVFlQRSwKKyAgT1ZTX0tFWV9BVFRSX0VOQ0FQLAorICBPVlNfS0VZX0FUVFJfUFJJT1JJVFksCisgIE9WU19LRVlfQVRUUl9JTl9QT1JULAorICBPVlNfS0VZX0FUVFJfRVRIRVJORVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19LRVlfQVRUUl9JUFY0LAotIE9WU19LRVlfQVRUUl9JUFY2LAotIE9WU19LRVlfQVRUUl9UQ1AsCi0gT1ZTX0tFWV9BVFRSX1VEUCwKKyAgT1ZTX0tFWV9BVFRSX1ZMQU4sCisgIE9WU19LRVlfQVRUUl9FVEhFUlRZUEUsCisgIE9WU19LRVlfQVRUUl9JUFY0LAorICBPVlNfS0VZX0FUVFJfSVBWNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0tFWV9BVFRSX0lDTVAsCi0gT1ZTX0tFWV9BVFRSX0lDTVBWNiwKLSBPVlNfS0VZX0FUVFJfQVJQLAotIE9WU19LRVlfQVRUUl9ORCwKKyAgT1ZTX0tFWV9BVFRSX1RDUCwKKyAgT1ZTX0tFWV9BVFRSX1VEUCwKKyAgT1ZTX0tFWV9BVFRSX0lDTVAsCisgIE9WU19LRVlfQVRUUl9JQ01QVjYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19LRVlfQVRUUl9TS0JfTUFSSywKLSBPVlNfS0VZX0FUVFJfVFVOTkVMLAotIE9WU19LRVlfQVRUUl9TQ1RQLAotIE9WU19LRVlfQVRUUl9UQ1BfRkxBR1MsCisgIE9WU19LRVlfQVRUUl9BUlAsCisgIE9WU19LRVlfQVRUUl9ORCwKKyAgT1ZTX0tFWV9BVFRSX1NLQl9NQVJLLAorICBPVlNfS0VZX0FUVFJfVFVOTkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX09WU19LRVlfQVRUUl9NQVgKKyAgT1ZTX0tFWV9BVFRSX1NDVFAsCisgIE9WU19LRVlfQVRUUl9UQ1BfRkxBR1MsCisgIE9WU19LRVlfQVRUUl9EUF9IQVNILAorICBPVlNfS0VZX0FUVFJfUkVDSVJDX0lELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19PVlNfS0VZX0FUVFJfTUFYCiB9OwogI2RlZmluZSBPVlNfS0VZX0FUVFJfTUFYIChfX09WU19LRVlfQVRUUl9NQVggLSAxKQogZW51bSBvdnNfdHVubmVsX2tleV9hdHRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1RVTk5FTF9LRVlfQVRUUl9JRCwKLSBPVlNfVFVOTkVMX0tFWV9BVFRSX0lQVjRfU1JDLAotIE9WU19UVU5ORUxfS0VZX0FUVFJfSVBWNF9EU1QsCi0gT1ZTX1RVTk5FTF9LRVlfQVRUUl9UT1MsCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfSUQsCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfSVBWNF9TUkMsCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfSVBWNF9EU1QsCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfVE9TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfVFVOTkVMX0tFWV9BVFRSX1RUTCwKLSBPVlNfVFVOTkVMX0tFWV9BVFRSX0RPTlRfRlJBR01FTlQsCi0gT1ZTX1RVTk5FTF9LRVlfQVRUUl9DU1VNLAotIF9fT1ZTX1RVTk5FTF9LRVlfQVRUUl9NQVgKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9UVEwsCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfRE9OVF9GUkFHTUVOVCwKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9DU1VNLAorICBPVlNfVFVOTkVMX0tFWV9BVFRSX09BTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfR0VORVZFX09QVFMsCisgIF9fT1ZTX1RVTk5FTF9LRVlfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19UVU5ORUxfS0VZX0FUVFJfTUFYIChfX09WU19UVU5ORUxfS0VZX0FUVFJfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c19mcmFnX3R5cGUgewotIE9WU19GUkFHX1RZUEVfTk9ORSwKKyAgT1ZTX0ZSQUdfVFlQRV9OT05FLAorICBPVlNfRlJBR19UWVBFX0ZJUlNULAorICBPVlNfRlJBR19UWVBFX0xBVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfRlJBR19UWVBFX0ZJUlNULAotIE9WU19GUkFHX1RZUEVfTEFURVIsCi0gX19PVlNfRlJBR19UWVBFX01BWAorICBfX09WU19GUkFHX1RZUEVfTUFYCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT1ZTX0ZSQUdfVFlQRV9NQVggKF9fT1ZTX0ZSQUdfVFlQRV9NQVggLSAxKQogc3RydWN0IG92c19rZXlfZXRoZXJuZXQgewotIF9fdTggZXRoX3NyY1tFVEhfQUxFTl07Ci0gX191OCBldGhfZHN0W0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZXRoX3NyY1tFVEhfQUxFTl07CisgIF9fdTggZXRoX2RzdFtFVEhfQUxFTl07CiB9Owogc3RydWN0IG92c19rZXlfaXB2NCB7Ci0gX19iZTMyIGlwdjRfc3JjOwotIF9fYmUzMiBpcHY0X2RzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpcHY0X3Byb3RvOwotIF9fdTggaXB2NF90b3M7Ci0gX191OCBpcHY0X3R0bDsKLSBfX3U4IGlwdjRfZnJhZzsKKyAgX19iZTMyIGlwdjRfc3JjOworICBfX2JlMzIgaXB2NF9kc3Q7CisgIF9fdTggaXB2NF9wcm90bzsKKyAgX191OCBpcHY0X3RvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggaXB2NF90dGw7CisgIF9fdTggaXB2NF9mcmFnOwogfTsKIHN0cnVjdCBvdnNfa2V5X2lwdjYgewotIF9fYmUzMiBpcHY2X3NyY1s0XTsKLSBfX2JlMzIgaXB2Nl9kc3RbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBpcHY2X2xhYmVsOwotIF9fdTggaXB2Nl9wcm90bzsKLSBfX3U4IGlwdjZfdGNsYXNzOwotIF9fdTggaXB2Nl9obGltaXQ7CisgIF9fYmUzMiBpcHY2X3NyY1s0XTsKKyAgX19iZTMyIGlwdjZfZHN0WzRdOworICBfX2JlMzIgaXB2Nl9sYWJlbDsKKyAgX191OCBpcHY2X3Byb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlwdjZfZnJhZzsKKyAgX191OCBpcHY2X3RjbGFzczsKKyAgX191OCBpcHY2X2hsaW1pdDsKKyAgX191OCBpcHY2X2ZyYWc7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfa2V5X3RjcCB7Ci0gX19iZTE2IHRjcF9zcmM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiB0Y3BfZHN0OworICBfX2JlMTYgdGNwX3NyYzsKKyAgX19iZTE2IHRjcF9kc3Q7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfa2V5X3VkcCB7Ci0gX19iZTE2IHVkcF9zcmM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiB1ZHBfZHN0OworICBfX2JlMTYgdWRwX3NyYzsKKyAgX19iZTE2IHVkcF9kc3Q7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfa2V5X3NjdHAgewotIF9fYmUxNiBzY3RwX3NyYzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHNjdHBfZHN0OworICBfX2JlMTYgc2N0cF9zcmM7CisgIF9fYmUxNiBzY3RwX2RzdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfaWNtcCB7Ci0gX191OCBpY21wX3R5cGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaWNtcF9jb2RlOworICBfX3U4IGljbXBfdHlwZTsKKyAgX191OCBpY21wX2NvZGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfa2V5X2ljbXB2NiB7Ci0gX191OCBpY21wdjZfdHlwZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpY21wdjZfY29kZTsKKyAgX191OCBpY21wdjZfdHlwZTsKKyAgX191OCBpY21wdjZfY29kZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfYXJwIHsKLSBfX2JlMzIgYXJwX3NpcDsKKyAgX19iZTMyIGFycF9zaXA7CisgIF9fYmUzMiBhcnBfdGlwOworICBfX2JlMTYgYXJwX29wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgYXJwX3RpcDsKLSBfX2JlMTYgYXJwX29wOwotIF9fdTggYXJwX3NoYVtFVEhfQUxFTl07Ci0gX191OCBhcnBfdGhhW0VUSF9BTEVOXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggYXJwX3NoYVtFVEhfQUxFTl07CisgIF9fdTggYXJwX3RoYVtFVEhfQUxFTl07CiB9Owogc3RydWN0IG92c19rZXlfbmQgewotIF9fdTMyIG5kX3RhcmdldFs0XTsKLSBfX3U4IG5kX3NsbFtFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmRfdGxsW0VUSF9BTEVOXTsKKyAgX191MzIgbmRfdGFyZ2V0WzRdOworICBfX3U4IG5kX3NsbFtFVEhfQUxFTl07CisgIF9fdTggbmRfdGxsW0VUSF9BTEVOXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvdnNfZmxvd19hdHRyIHsKLSBPVlNfRkxPV19BVFRSX1VOU1BFQywKKyAgT1ZTX0ZMT1dfQVRUUl9VTlNQRUMsCisgIE9WU19GTE9XX0FUVFJfS0VZLAorICBPVlNfRkxPV19BVFRSX0FDVElPTlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19GTE9XX0FUVFJfS0VZLAotIE9WU19GTE9XX0FUVFJfQUNUSU9OUywKLSBPVlNfRkxPV19BVFRSX1NUQVRTLAotIE9WU19GTE9XX0FUVFJfVENQX0ZMQUdTLAorICBPVlNfRkxPV19BVFRSX1NUQVRTLAorICBPVlNfRkxPV19BVFRSX1RDUF9GTEFHUywKKyAgT1ZTX0ZMT1dfQVRUUl9VU0VELAorICBPVlNfRkxPV19BVFRSX0NMRUFSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfRkxPV19BVFRSX1VTRUQsCi0gT1ZTX0ZMT1dfQVRUUl9DTEVBUiwKLSBPVlNfRkxPV19BVFRSX01BU0ssCi0gX19PVlNfRkxPV19BVFRSX01BWAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgT1ZTX0ZMT1dfQVRUUl9NQVNLLAorICBfX09WU19GTE9XX0FUVFJfTUFYCiB9OwogI2RlZmluZSBPVlNfRkxPV19BVFRSX01BWCAoX19PVlNfRkxPV19BVFRSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvdnNfc2FtcGxlX2F0dHIgewotIE9WU19TQU1QTEVfQVRUUl9VTlNQRUMsCisgIE9WU19TQU1QTEVfQVRUUl9VTlNQRUMsCisgIE9WU19TQU1QTEVfQVRUUl9QUk9CQUJJTElUWSwKKyAgT1ZTX1NBTVBMRV9BVFRSX0FDVElPTlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19TQU1QTEVfQVRUUl9QUk9CQUJJTElUWSwKLSBPVlNfU0FNUExFX0FUVFJfQUNUSU9OUywKLSBfX09WU19TQU1QTEVfQVRUUl9NQVgsCisgIF9fT1ZTX1NBTVBMRV9BVFRSX01BWCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPVlNfU0FNUExFX0FUVFJfTUFYIChfX09WU19TQU1QTEVfQVRUUl9NQVggLSAxKQogZW51bSBvdnNfdXNlcnNwYWNlX2F0dHIgewotIE9WU19VU0VSU1BBQ0VfQVRUUl9VTlNQRUMsCi0gT1ZTX1VTRVJTUEFDRV9BVFRSX1BJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1VTRVJTUEFDRV9BVFRSX1VTRVJEQVRBLAotIF9fT1ZTX1VTRVJTUEFDRV9BVFRSX01BWAorICBPVlNfVVNFUlNQQUNFX0FUVFJfVU5TUEVDLAorICBPVlNfVVNFUlNQQUNFX0FUVFJfUElELAorICBPVlNfVVNFUlNQQUNFX0FUVFJfVVNFUkRBVEEsCisgIF9fT1ZTX1VTRVJTUEFDRV9BVFRSX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE9WU19VU0VSU1BBQ0VfQVRUUl9NQVggKF9fT1ZTX1VTRVJTUEFDRV9BVFRSX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19hY3Rpb25fcHVzaF92bGFuIHsKLSBfX2JlMTYgdmxhbl90cGlkOwotIF9fYmUxNiB2bGFuX3RjaTsKKyAgX19iZTE2IHZsYW5fdHBpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUxNiB2bGFuX3RjaTsKIH07CitlbnVtIG92c19oYXNoX2FsZyB7CisgIE9WU19IQVNIX0FMR19MNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IG92c19hY3Rpb25faGFzaCB7CisgIHVpbnQzMl90IGhhc2hfYWxnOworICB1aW50MzJfdCBoYXNoX2Jhc2lzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiBlbnVtIG92c19hY3Rpb25fYXR0ciB7Ci0gT1ZTX0FDVElPTl9BVFRSX1VOU1BFQywKLSBPVlNfQUNUSU9OX0FUVFJfT1VUUFVULAotIE9WU19BQ1RJT05fQVRUUl9VU0VSU1BBQ0UsCisgIE9WU19BQ1RJT05fQVRUUl9VTlNQRUMsCisgIE9WU19BQ1RJT05fQVRUUl9PVVRQVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19BQ1RJT05fQVRUUl9TRVQsCi0gT1ZTX0FDVElPTl9BVFRSX1BVU0hfVkxBTiwKLSBPVlNfQUNUSU9OX0FUVFJfUE9QX1ZMQU4sCi0gT1ZTX0FDVElPTl9BVFRSX1NBTVBMRSwKKyAgT1ZTX0FDVElPTl9BVFRSX1VTRVJTUEFDRSwKKyAgT1ZTX0FDVElPTl9BVFRSX1NFVCwKKyAgT1ZTX0FDVElPTl9BVFRSX1BVU0hfVkxBTiwKKyAgT1ZTX0FDVElPTl9BVFRSX1BPUF9WTEFOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX09WU19BQ1RJT05fQVRUUl9NQVgKKyAgT1ZTX0FDVElPTl9BVFRSX1NBTVBMRSwKKyAgT1ZTX0FDVElPTl9BVFRSX1JFQ0lSQywKKyAgT1ZTX0FDVElPTl9BVFRSX0hBU0gsCisgIF9fT1ZTX0FDVElPTl9BVFRSX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE9WU19BQ1RJT05fQVRUUl9NQVggKF9fT1ZTX0FDVElPTl9BVFRSX01BWCAtIDEpCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhY2tldF9kaWFnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhY2tldF9kaWFnLmgKaW5kZXggOGExYjFkYS4uNWY1OTY5YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYWNrZXRfZGlhZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFja2V0X2RpYWcuaApAQCAtMjEsMTMgKzIxLDEzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBwYWNrZXRfZGlhZ19yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNkaWFnX2ZhbWlseTsKLSBfX3U4IHNkaWFnX3Byb3RvY29sOwotIF9fdTE2IHBhZDsKLSBfX3UzMiBwZGlhZ19pbm87CisgIF9fdTggc2RpYWdfZmFtaWx5OworICBfX3U4IHNkaWFnX3Byb3RvY29sOworICBfX3UxNiBwYWQ7CisgIF9fdTMyIHBkaWFnX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRpYWdfc2hvdzsKLSBfX3UzMiBwZGlhZ19jb29raWVbMl07CisgIF9fdTMyIHBkaWFnX3Nob3c7CisgIF9fdTMyIHBkaWFnX2Nvb2tpZVsyXTsKIH07CiAjZGVmaW5lIFBBQ0tFVF9TSE9XX0lORk8gMHgwMDAwMDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM4LDM3ICszOCwzNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEFDS0VUX1NIT1dfRklMVEVSIDB4MDAwMDAwMjAKIHN0cnVjdCBwYWNrZXRfZGlhZ19tc2cgewotIF9fdTggcGRpYWdfZmFtaWx5OwotIF9fdTggcGRpYWdfdHlwZTsKKyAgX191OCBwZGlhZ19mYW1pbHk7CisgIF9fdTggcGRpYWdfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcGRpYWdfbnVtOwotIF9fdTMyIHBkaWFnX2lubzsKLSBfX3UzMiBwZGlhZ19jb29raWVbMl07CisgIF9fdTE2IHBkaWFnX251bTsKKyAgX191MzIgcGRpYWdfaW5vOworICBfX3UzMiBwZGlhZ19jb29raWVbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFBBQ0tFVF9ESUFHX0lORk8sCi0gUEFDS0VUX0RJQUdfTUNMSVNULAotIFBBQ0tFVF9ESUFHX1JYX1JJTkcsCisgIFBBQ0tFVF9ESUFHX0lORk8sCisgIFBBQ0tFVF9ESUFHX01DTElTVCwKKyAgUEFDS0VUX0RJQUdfUlhfUklORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEFDS0VUX0RJQUdfVFhfUklORywKLSBQQUNLRVRfRElBR19GQU5PVVQsCi0gUEFDS0VUX0RJQUdfVUlELAotIFBBQ0tFVF9ESUFHX01FTUlORk8sCisgIFBBQ0tFVF9ESUFHX1RYX1JJTkcsCisgIFBBQ0tFVF9ESUFHX0ZBTk9VVCwKKyAgUEFDS0VUX0RJQUdfVUlELAorICBQQUNLRVRfRElBR19NRU1JTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQUNLRVRfRElBR19GSUxURVIsCi0gX19QQUNLRVRfRElBR19NQVgsCisgIFBBQ0tFVF9ESUFHX0ZJTFRFUiwKKyAgX19QQUNLRVRfRElBR19NQVgsCiB9OwogI2RlZmluZSBQQUNLRVRfRElBR19NQVggKF9fUEFDS0VUX0RJQUdfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcGFja2V0X2RpYWdfaW5mbyB7Ci0gX191MzIgcGRpX2luZGV4OwotIF9fdTMyIHBkaV92ZXJzaW9uOwotIF9fdTMyIHBkaV9yZXNlcnZlOworICBfX3UzMiBwZGlfaW5kZXg7CisgIF9fdTMyIHBkaV92ZXJzaW9uOworICBfX3UzMiBwZGlfcmVzZXJ2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRpX2NvcHlfdGhyZXNoOwotIF9fdTMyIHBkaV90c3RhbXA7Ci0gX191MzIgcGRpX2ZsYWdzOworICBfX3UzMiBwZGlfY29weV90aHJlc2g7CisgIF9fdTMyIHBkaV90c3RhbXA7CisgIF9fdTMyIHBkaV9mbGFnczsKICNkZWZpbmUgUERJX1JVTk5JTkcgMHgxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQRElfQVVYREFUQSAweDIKQEAgLTc4LDIzICs3OCwyMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcGFja2V0X2RpYWdfbWNsaXN0IHsKLSBfX3UzMiBwZG1jX2luZGV4OwotIF9fdTMyIHBkbWNfY291bnQ7CisgIF9fdTMyIHBkbWNfaW5kZXg7CisgIF9fdTMyIHBkbWNfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBkbWNfdHlwZTsKLSBfX3UxNiBwZG1jX2FsZW47Ci0gX191OCBwZG1jX2FkZHJbTUFYX0FERFJfTEVOXTsKKyAgX191MTYgcGRtY190eXBlOworICBfX3UxNiBwZG1jX2FsZW47CisgIF9fdTggcGRtY19hZGRyW01BWF9BRERSX0xFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwYWNrZXRfZGlhZ19yaW5nIHsKLSBfX3UzMiBwZHJfYmxvY2tfc2l6ZTsKLSBfX3UzMiBwZHJfYmxvY2tfbnI7Ci0gX191MzIgcGRyX2ZyYW1lX3NpemU7CisgIF9fdTMyIHBkcl9ibG9ja19zaXplOworICBfX3UzMiBwZHJfYmxvY2tfbnI7CisgIF9fdTMyIHBkcl9mcmFtZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZHJfZnJhbWVfbnI7Ci0gX191MzIgcGRyX3JldGlyZV90bW87Ci0gX191MzIgcGRyX3NpemVvZl9wcml2OwotIF9fdTMyIHBkcl9mZWF0dXJlczsKKyAgX191MzIgcGRyX2ZyYW1lX25yOworICBfX3UzMiBwZHJfcmV0aXJlX3RtbzsKKyAgX191MzIgcGRyX3NpemVvZl9wcml2OworICBfX3UzMiBwZHJfZmVhdHVyZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYXJwb3J0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhcnBvcnQuaAppbmRleCAzNjdhYWZiLi44M2E3ZDA4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhcnBvcnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhcnBvcnQuaApAQCAtMTksMTYgKzE5LDE2IEBACiAjaWZuZGVmIF9VQVBJX1BBUlBPUlRfSF8KICNkZWZpbmUgX1VBUElfUEFSUE9SVF9IXwogI2RlZmluZSBQQVJQT1JUX01BWCAxNgotI2RlZmluZSBQQVJQT1JUX0lSUV9OT05FIC0xCisjZGVmaW5lIFBBUlBPUlRfSVJRX05PTkUgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQQVJQT1JUX0RNQV9OT05FIC0xCi0jZGVmaW5lIFBBUlBPUlRfSVJRX0FVVE8gLTIKLSNkZWZpbmUgUEFSUE9SVF9ETUFfQVVUTyAtMgotI2RlZmluZSBQQVJQT1JUX0RNQV9OT0ZJRk8gLTMKKyNkZWZpbmUgUEFSUE9SVF9ETUFfTk9ORSAtIDEKKyNkZWZpbmUgUEFSUE9SVF9JUlFfQVVUTyAtIDIKKyNkZWZpbmUgUEFSUE9SVF9ETUFfQVVUTyAtIDIKKyNkZWZpbmUgUEFSUE9SVF9ETUFfTk9GSUZPIC0gMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEFSUE9SVF9ESVNBQkxFIC0yCi0jZGVmaW5lIFBBUlBPUlRfSVJRX1BST0JFT05MWSAtMwotI2RlZmluZSBQQVJQT1JUX0lPSElfQVVUTyAtMQorI2RlZmluZSBQQVJQT1JUX0RJU0FCTEUgLSAyCisjZGVmaW5lIFBBUlBPUlRfSVJRX1BST0JFT05MWSAtIDMKKyNkZWZpbmUgUEFSUE9SVF9JT0hJX0FVVE8gLSAxCiAjZGVmaW5lIFBBUlBPUlRfQ09OVFJPTF9TVFJPQkUgMHgxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQQVJQT1JUX0NPTlRST0xfQVVUT0ZEIDB4MgpAQCAtNDIsNTIgKzQyLDUyIEBACiAjZGVmaW5lIFBBUlBPUlRfU1RBVFVTX0JVU1kgMHg4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZW51bSB7Ci0gUEFSUE9SVF9DTEFTU19MRUdBQ1kgPSAwLAotIFBBUlBPUlRfQ0xBU1NfUFJJTlRFUiwKLSBQQVJQT1JUX0NMQVNTX01PREVNLAorICBQQVJQT1JUX0NMQVNTX0xFR0FDWSA9IDAsCisgIFBBUlBPUlRfQ0xBU1NfUFJJTlRFUiwKKyAgUEFSUE9SVF9DTEFTU19NT0RFTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEFSUE9SVF9DTEFTU19ORVQsCi0gUEFSUE9SVF9DTEFTU19IREMsCi0gUEFSUE9SVF9DTEFTU19QQ01DSUEsCi0gUEFSUE9SVF9DTEFTU19NRURJQSwKKyAgUEFSUE9SVF9DTEFTU19ORVQsCisgIFBBUlBPUlRfQ0xBU1NfSERDLAorICBQQVJQT1JUX0NMQVNTX1BDTUNJQSwKKyAgUEFSUE9SVF9DTEFTU19NRURJQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEFSUE9SVF9DTEFTU19GREMsCi0gUEFSUE9SVF9DTEFTU19QT1JUUywKLSBQQVJQT1JUX0NMQVNTX1NDQU5ORVIsCi0gUEFSUE9SVF9DTEFTU19ESUdDQU0sCisgIFBBUlBPUlRfQ0xBU1NfRkRDLAorICBQQVJQT1JUX0NMQVNTX1BPUlRTLAorICBQQVJQT1JUX0NMQVNTX1NDQU5ORVIsCisgIFBBUlBPUlRfQ0xBU1NfRElHQ0FNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJQT1JUX0NMQVNTX09USEVSLAotIFBBUlBPUlRfQ0xBU1NfVU5TUEVDLAotIFBBUlBPUlRfQ0xBU1NfU0NTSUFEQVBURVIKKyAgUEFSUE9SVF9DTEFTU19PVEhFUiwKKyAgUEFSUE9SVF9DTEFTU19VTlNQRUMsCisgIFBBUlBPUlRfQ0xBU1NfU0NTSUFEQVBURVIKIH0gcGFycG9ydF9kZXZpY2VfY2xhc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQQVJQT1JUX01PREVfUENTUFAgKDE8PDApCi0jZGVmaW5lIFBBUlBPUlRfTU9ERV9UUklTVEFURSAoMTw8MSkKLSNkZWZpbmUgUEFSUE9SVF9NT0RFX0VQUCAoMTw8MikKLSNkZWZpbmUgUEFSUE9SVF9NT0RFX0VDUCAoMTw8MykKKyNkZWZpbmUgUEFSUE9SVF9NT0RFX1BDU1BQICgxIDw8IDApCisjZGVmaW5lIFBBUlBPUlRfTU9ERV9UUklTVEFURSAoMSA8PCAxKQorI2RlZmluZSBQQVJQT1JUX01PREVfRVBQICgxIDw8IDIpCisjZGVmaW5lIFBBUlBPUlRfTU9ERV9FQ1AgKDEgPDwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBBUlBPUlRfTU9ERV9DT01QQVQgKDE8PDQpCi0jZGVmaW5lIFBBUlBPUlRfTU9ERV9ETUEgKDE8PDUpCi0jZGVmaW5lIFBBUlBPUlRfTU9ERV9TQUZFSU5JTlQgKDE8PDYpCisjZGVmaW5lIFBBUlBPUlRfTU9ERV9DT01QQVQgKDEgPDwgNCkKKyNkZWZpbmUgUEFSUE9SVF9NT0RFX0RNQSAoMSA8PCA1KQorI2RlZmluZSBQQVJQT1JUX01PREVfU0FGRUlOSU5UICgxIDw8IDYpCiAjZGVmaW5lIElFRUUxMjg0X01PREVfTklCQkxFIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElFRUUxMjg0X01PREVfQllURSAoMTw8MCkKLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9DT01QQVQgKDE8PDgpCi0jZGVmaW5lIElFRUUxMjg0X01PREVfQkVDUCAoMTw8OSkKLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9FQ1AgKDE8PDQpCisjZGVmaW5lIElFRUUxMjg0X01PREVfQllURSAoMSA8PCAwKQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0NPTVBBVCAoMSA8PCA4KQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0JFQ1AgKDEgPDwgOSkKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9FQ1AgKDEgPDwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElFRUUxMjg0X01PREVfRUNQUkxFIChJRUVFMTI4NF9NT0RFX0VDUCB8ICgxPDw1KSkKLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9FQ1BTV0UgKDE8PDEwKQotI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VQUCAoMTw8NikKLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9FUFBTTCAoMTw8MTEpCisjZGVmaW5lIElFRUUxMjg0X01PREVfRUNQUkxFIChJRUVFMTI4NF9NT0RFX0VDUCB8ICgxIDw8IDUpKQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VDUFNXRSAoMSA8PCAxMCkKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9FUFAgKDEgPDwgNikKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9FUFBTTCAoMSA8PCAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElFRUUxMjg0X01PREVfRVBQU1dFICgxPDwxMikKLSNkZWZpbmUgSUVFRTEyODRfREVWSUNFSUQgKDE8PDIpCi0jZGVmaW5lIElFRUUxMjg0X0VYVF9MSU5LICgxPDwxNCkKLSNkZWZpbmUgSUVFRTEyODRfQUREUiAoMTw8MTMpCisjZGVmaW5lIElFRUUxMjg0X01PREVfRVBQU1dFICgxIDw8IDEyKQorI2RlZmluZSBJRUVFMTI4NF9ERVZJQ0VJRCAoMSA8PCAyKQorI2RlZmluZSBJRUVFMTI4NF9FWFRfTElOSyAoMSA8PCAxNCkKKyNkZWZpbmUgSUVFRTEyODRfQUREUiAoMSA8PCAxMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElFRUUxMjg0X0RBVEEgMAotI2RlZmluZSBQQVJQT1JUX0VQUF9GQVNUICgxPDwwKQotI2RlZmluZSBQQVJQT1JUX1c5MTI4NFBJQyAoMTw8MSkKKyNkZWZpbmUgUEFSUE9SVF9FUFBfRkFTVCAoMSA8PCAwKQorI2RlZmluZSBQQVJQT1JUX1c5MTI4NFBJQyAoMSA8PCAxKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYXRjaGtleS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYXRjaGtleS5oCmluZGV4IGQxZGEyNjcuLjQwNmQ4MDMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGF0Y2hrZXkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhdGNoa2V5LmgKQEAgLTI2LDkgKzI2LDkgQEAKICNpZmRlZiBfX0JZVEVfT1JERVIKICNpZiBfX0JZVEVfT1JERVIgPT0gX19CSUdfRU5ESUFOCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfUEFUQ0hLRVkoaWQpICgweGZkMDB8aWQpCi0jZWxpZiBfX0JZVEVfT1JERVIgPT0gX19MSVRUTEVfRU5ESUFOCi0jZGVmaW5lIF9QQVRDSEtFWShpZCkgKChpZDw8OCl8MHgwMGZkKQorI2RlZmluZSBfUEFUQ0hLRVkoaWQpICgweGZkMDAgfCBpZCkKKyNlbGlmIF9fQllURV9PUkRFUj09X19MSVRUTEVfRU5ESUFOCisjZGVmaW5lIF9QQVRDSEtFWShpZCkgKChpZCA8PCA4KSB8IDB4MDBmZCkKICNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vycm9yICJjb3VsZCBub3QgZGV0ZXJtaW5lIGJ5dGUgb3JkZXIiCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wY2kuaAppbmRleCAyMDM1MjQ2Li43NTY5Y2NhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGNpLmgKQEAgLTE5LDcgKzE5LDcgQEAKICNpZm5kZWYgX1VBUElMSU5VWF9QQ0lfSAogI2RlZmluZSBfVUFQSUxJTlVYX1BDSV9ICiAjaW5jbHVkZSA8bGludXgvcGNpX3JlZ3MuaD4KLSNkZWZpbmUgUENJX0RFVkZOKHNsb3QsIGZ1bmMpICgoKChzbG90KSAmIDB4MWYpIDw8IDMpIHwgKChmdW5jKSAmIDB4MDcpKQorI2RlZmluZSBQQ0lfREVWRk4oc2xvdCxmdW5jKSAoKCgoc2xvdCkgJiAweDFmKSA8PCAzKSB8ICgoZnVuYykgJiAweDA3KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBDSV9TTE9UKGRldmZuKSAoKChkZXZmbikgPj4gMykgJiAweDFmKQogI2RlZmluZSBQQ0lfRlVOQyhkZXZmbikgKChkZXZmbikgJiAweDA3KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wY2lfcmVncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wY2lfcmVncy5oCmluZGV4IGQyMGY1MDAuLmQxOTE4MjEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGNpX3JlZ3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaV9yZWdzLmgKQEAgLTU5MSwzNjAgKzU5MSwzNjEgQEAKICNkZWZpbmUgUENJX0VYUF9SVENUTF9DUlNTVkUgMHgwMDEwCiAjZGVmaW5lIFBDSV9FWFBfUlRDQVAgMzAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfUlRDQVBfQ1JTVklTIDB4MDAwMQogI2RlZmluZSBQQ0lfRVhQX1JUU1RBIDMyCiAjZGVmaW5lIFBDSV9FWFBfUlRTVEFfUE1FIDB4MDAwMTAwMDAKICNkZWZpbmUgUENJX0VYUF9SVFNUQV9QRU5ESU5HIDB4MDAwMjAwMDAKLSNkZWZpbmUgUENJX0VYUF9ERVZDQVAyIDM2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhQX0RFVkNBUDIgMzYKICNkZWZpbmUgUENJX0VYUF9ERVZDQVAyX0FSSSAweDAwMDAwMDIwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ0FQMl9MVFIgMHgwMDAwMDgwMAogI2RlZmluZSBQQ0lfRVhQX0RFVkNBUDJfT0JGRl9NQVNLIDB4MDAwYzAwMDAKLSNkZWZpbmUgUENJX0VYUF9ERVZDQVAyX09CRkZfTVNHIDB4MDAwNDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfREVWQ0FQMl9PQkZGX01TRyAweDAwMDQwMDAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ0FQMl9PQkZGX1dBS0UgMHgwMDA4MDAwMAogI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDIgNDAKICNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX0NPTVBfVElNRU9VVCAweDAwMGYKLSNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX0FSSSAweDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9BUkkgMHgwMDIwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9JRE9fUkVRX0VOIDB4MDEwMAogI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDJfSURPX0NNUF9FTiAweDAyMDAKICNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX0xUUl9FTiAweDA0MDAKLSNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX09CRkZfTVNHQV9FTiAweDIwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9PQkZGX01TR0FfRU4gMHgyMDAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9PQkZGX01TR0JfRU4gMHg0MDAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9PQkZGX1dBS0VfRU4gMHg2MDAwCiAjZGVmaW5lIFBDSV9FWFBfREVWU1RBMiA0MgotI2RlZmluZSBQQ0lfQ0FQX0VYUF9FTkRQT0lOVF9TSVpFT0ZfVjIgNDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9DQVBfRVhQX0VORFBPSU5UX1NJWkVPRl9WMiA0NAogI2RlZmluZSBQQ0lfRVhQX0xOS0NBUDIgNDQKICNkZWZpbmUgUENJX0VYUF9MTktDQVAyX1NMU18yXzVHQiAweDAwMDAwMDAyCiAjZGVmaW5lIFBDSV9FWFBfTE5LQ0FQMl9TTFNfNV8wR0IgMHgwMDAwMDAwNAotI2RlZmluZSBQQ0lfRVhQX0xOS0NBUDJfU0xTXzhfMEdCIDB4MDAwMDAwMDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfTE5LQ0FQMl9TTFNfOF8wR0IgMHgwMDAwMDAwOAogI2RlZmluZSBQQ0lfRVhQX0xOS0NBUDJfQ1JPU1NMSU5LIDB4MDAwMDAxMDAKICNkZWZpbmUgUENJX0VYUF9MTktDVEwyIDQ4CiAjZGVmaW5lIFBDSV9FWFBfTE5LU1RBMiA1MAotI2RlZmluZSBQQ0lfRVhQX1NMVENBUDIgNTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfU0xUQ0FQMiA1MgogI2RlZmluZSBQQ0lfRVhQX1NMVENUTDIgNTYKICNkZWZpbmUgUENJX0VYUF9TTFRTVEEyIDU4CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEKGhlYWRlcikgKGhlYWRlciAmIDB4MDAwMGZmZmYpCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX1ZFUihoZWFkZXIpICgoaGVhZGVyID4+IDE2KSAmIDB4ZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX1ZFUihoZWFkZXIpICgoaGVhZGVyID4+IDE2KSAmIDB4ZikKICNkZWZpbmUgUENJX0VYVF9DQVBfTkVYVChoZWFkZXIpICgoaGVhZGVyID4+IDIwKSAmIDB4ZmZjKQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9FUlIgMHgwMQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9WQyAweDAyCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0RTTiAweDAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9EU04gMHgwMwogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9QV1IgMHgwNAogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9SQ0xEIDB4MDUKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfUkNJTEMgMHgwNgotI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9SQ0VDIDB4MDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1JDRUMgMHgwNwogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9NRlZDIDB4MDgKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfVkM5IDB4MDkKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfUkNSQiAweDBBCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1ZORFIgMHgwQgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYVF9DQVBfSURfVk5EUiAweDBCCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0NBQyAweDBDCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0FDUyAweDBECiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0FSSSAweDBFCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0FUUyAweDBGCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9BVFMgMHgwRgogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9TUklPViAweDEwCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX01SSU9WIDB4MTEKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfTUNBU1QgMHgxMgotI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9QUkkgMHgxMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYVF9DQVBfSURfUFJJIDB4MTMKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfQU1EX1hYWCAweDE0CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1JFQkFSIDB4MTUKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfRFBBIDB4MTYKLSNkZWZpbmUgUENJX0VYVF9DQVBfSURfVFBIIDB4MTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1RQSCAweDE3CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0xUUiAweDE4CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1NFQ1BDSSAweDE5CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1BNVVggMHgxQQotI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9QQVNJRCAweDFCCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9QQVNJRCAweDFCCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX01BWCBQQ0lfRVhUX0NBUF9JRF9QQVNJRAogI2RlZmluZSBQQ0lfRVhUX0NBUF9EU05fU0laRU9GIDEyCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX01DQVNUX0VORFBPSU5UX1NJWkVPRiA0MAotI2RlZmluZSBQQ0lfRVJSX1VOQ09SX1NUQVRVUyA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQQ0lfRVJSX1VOQ19UUkFJTiAweDAwMDAwMDAxCisjZGVmaW5lIFBDSV9FUlJfVU5DT1JfU1RBVFVTIDQKKyNkZWZpbmUgUENJX0VSUl9VTkNfVU5EIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX0VSUl9VTkNfRExQIDB4MDAwMDAwMTAKICNkZWZpbmUgUENJX0VSUl9VTkNfU1VSUEROIDB4MDAwMDAwMjAKLSNkZWZpbmUgUENJX0VSUl9VTkNfUE9JU09OX1RMUCAweDAwMDAxMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX1VOQ19QT0lTT05fVExQIDB4MDAwMDEwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfRkNQIDB4MDAwMDIwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfQ09NUF9USU1FIDB4MDAwMDQwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfQ09NUF9BQk9SVCAweDAwMDA4MDAwCi0jZGVmaW5lIFBDSV9FUlJfVU5DX1VOWF9DT01QIDB4MDAwMTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfVU5DX1VOWF9DT01QIDB4MDAwMTAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfUlhfT1ZFUiAweDAwMDIwMDAwCiAjZGVmaW5lIFBDSV9FUlJfVU5DX01BTEZfVExQIDB4MDAwNDAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfRUNSQyAweDAwMDgwMDAwCi0jZGVmaW5lIFBDSV9FUlJfVU5DX1VOU1VQIDB4MDAxMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfVU5DX1VOU1VQIDB4MDAxMDAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfQUNTViAweDAwMjAwMDAwCiAjZGVmaW5lIFBDSV9FUlJfVU5DX0lOVE4gMHgwMDQwMDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19NQ0JUTFAgMHgwMDgwMDAwMAotI2RlZmluZSBQQ0lfRVJSX1VOQ19BVE9NRUcgMHgwMTAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9VTkNfQVRPTUVHIDB4MDEwMDAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfVExQUFJFIDB4MDIwMDAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNPUl9NQVNLIDgKICNkZWZpbmUgUENJX0VSUl9VTkNPUl9TRVZFUiAxMgotI2RlZmluZSBQQ0lfRVJSX0NPUl9TVEFUVVMgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfQ09SX1NUQVRVUyAxNgogI2RlZmluZSBQQ0lfRVJSX0NPUl9SQ1ZSIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX0VSUl9DT1JfQkFEX1RMUCAweDAwMDAwMDQwCiAjZGVmaW5lIFBDSV9FUlJfQ09SX0JBRF9ETExQIDB4MDAwMDAwODAKLSNkZWZpbmUgUENJX0VSUl9DT1JfUkVQX1JPTEwgMHgwMDAwMDEwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9DT1JfUkVQX1JPTEwgMHgwMDAwMDEwMAogI2RlZmluZSBQQ0lfRVJSX0NPUl9SRVBfVElNRVIgMHgwMDAwMTAwMAogI2RlZmluZSBQQ0lfRVJSX0NPUl9BRFZfTkZBVCAweDAwMDAyMDAwCiAjZGVmaW5lIFBDSV9FUlJfQ09SX0lOVEVSTkFMIDB4MDAwMDQwMDAKLSNkZWZpbmUgUENJX0VSUl9DT1JfTE9HX09WRVIgMHgwMDAwODAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9DT1JfTE9HX09WRVIgMHgwMDAwODAwMAogI2RlZmluZSBQQ0lfRVJSX0NPUl9NQVNLIDIwCiAjZGVmaW5lIFBDSV9FUlJfQ0FQIDI0CiAjZGVmaW5lIFBDSV9FUlJfQ0FQX0ZFUCh4KSAoKHgpICYgMzEpCi0jZGVmaW5lIFBDSV9FUlJfQ0FQX0VDUkNfR0VOQyAweDAwMDAwMDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX0NBUF9FQ1JDX0dFTkMgMHgwMDAwMDAyMAogI2RlZmluZSBQQ0lfRVJSX0NBUF9FQ1JDX0dFTkUgMHgwMDAwMDA0MAogI2RlZmluZSBQQ0lfRVJSX0NBUF9FQ1JDX0NIS0MgMHgwMDAwMDA4MAogI2RlZmluZSBQQ0lfRVJSX0NBUF9FQ1JDX0NIS0UgMHgwMDAwMDEwMAotI2RlZmluZSBQQ0lfRVJSX0hFQURFUl9MT0cgMjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfSEVBREVSX0xPRyAyOAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfQ09NTUFORCA0NAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfQ01EX0NPUl9FTiAweDAwMDAwMDAxCiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9DTURfTk9ORkFUQUxfRU4gMHgwMDAwMDAwMgotI2RlZmluZSBQQ0lfRVJSX1JPT1RfQ01EX0ZBVEFMX0VOIDB4MDAwMDAwMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfUk9PVF9DTURfRkFUQUxfRU4gMHgwMDAwMDAwNAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfU1RBVFVTIDQ4CiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9DT1JfUkNWIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX0VSUl9ST09UX01VTFRJX0NPUl9SQ1YgMHgwMDAwMDAwMgotI2RlZmluZSBQQ0lfRVJSX1JPT1RfVU5DT1JfUkNWIDB4MDAwMDAwMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfUk9PVF9VTkNPUl9SQ1YgMHgwMDAwMDAwNAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfTVVMVElfVU5DT1JfUkNWIDB4MDAwMDAwMDgKICNkZWZpbmUgUENJX0VSUl9ST09UX0ZJUlNUX0ZBVEFMIDB4MDAwMDAwMTAKICNkZWZpbmUgUENJX0VSUl9ST09UX05PTkZBVEFMX1JDViAweDAwMDAwMDIwCi0jZGVmaW5lIFBDSV9FUlJfUk9PVF9GQVRBTF9SQ1YgMHgwMDAwMDA0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9ST09UX0ZBVEFMX1JDViAweDAwMDAwMDQwCiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9FUlJfU1JDIDUyCiAjZGVmaW5lIFBDSV9WQ19QT1JUX0NBUDEgNAogI2RlZmluZSBQQ0lfVkNfQ0FQMV9FVkNDIDB4MDAwMDAwMDcKLSNkZWZpbmUgUENJX1ZDX0NBUDFfTFBFVkNDIDB4MDAwMDAwNzAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9WQ19DQVAxX0xQRVZDQyAweDAwMDAwMDcwCiAjZGVmaW5lIFBDSV9WQ19DQVAxX0FSQl9TSVpFIDB4MDAwMDBjMDAKICNkZWZpbmUgUENJX1ZDX1BPUlRfQ0FQMiA4CiAjZGVmaW5lIFBDSV9WQ19DQVAyXzMyX1BIQVNFIDB4MDAwMDAwMDIKLSNkZWZpbmUgUENJX1ZDX0NBUDJfNjRfUEhBU0UgMHgwMDAwMDAwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX0NBUDJfNjRfUEhBU0UgMHgwMDAwMDAwNAogI2RlZmluZSBQQ0lfVkNfQ0FQMl8xMjhfUEhBU0UgMHgwMDAwMDAwOAogI2RlZmluZSBQQ0lfVkNfQ0FQMl9BUkJfT0ZGIDB4ZmYwMDAwMDAKICNkZWZpbmUgUENJX1ZDX1BPUlRfQ1RSTCAxMgotI2RlZmluZSBQQ0lfVkNfUE9SVF9DVFJMX0xPQURfVEFCTEUgMHgwMDAwMDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX1BPUlRfQ1RSTF9MT0FEX1RBQkxFIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX1ZDX1BPUlRfU1RBVFVTIDE0CiAjZGVmaW5lIFBDSV9WQ19QT1JUX1NUQVRVU19UQUJMRSAweDAwMDAwMDAxCiAjZGVmaW5lIFBDSV9WQ19SRVNfQ0FQIDE2Ci0jZGVmaW5lIFBDSV9WQ19SRVNfQ0FQXzMyX1BIQVNFIDB4MDAwMDAwMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9WQ19SRVNfQ0FQXzMyX1BIQVNFIDB4MDAwMDAwMDIKICNkZWZpbmUgUENJX1ZDX1JFU19DQVBfNjRfUEhBU0UgMHgwMDAwMDAwNAogI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF8xMjhfUEhBU0UgMHgwMDAwMDAwOAogI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF8xMjhfUEhBU0VfVEIgMHgwMDAwMDAxMAotI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF8yNTZfUEhBU0UgMHgwMDAwMDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX1JFU19DQVBfMjU2X1BIQVNFIDB4MDAwMDAwMjAKICNkZWZpbmUgUENJX1ZDX1JFU19DQVBfQVJCX09GRiAweGZmMDAwMDAwCiAjZGVmaW5lIFBDSV9WQ19SRVNfQ1RSTCAyMAogI2RlZmluZSBQQ0lfVkNfUkVTX0NUUkxfTE9BRF9UQUJMRSAweDAwMDEwMDAwCi0jZGVmaW5lIFBDSV9WQ19SRVNfQ1RSTF9BUkJfU0VMRUNUIDB4MDAwZTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9WQ19SRVNfQ1RSTF9BUkJfU0VMRUNUIDB4MDAwZTAwMDAKICNkZWZpbmUgUENJX1ZDX1JFU19DVFJMX0lEIDB4MDcwMDAwMDAKICNkZWZpbmUgUENJX1ZDX1JFU19DVFJMX0VOQUJMRSAweDgwMDAwMDAwCiAjZGVmaW5lIFBDSV9WQ19SRVNfU1RBVFVTIDI2Ci0jZGVmaW5lIFBDSV9WQ19SRVNfU1RBVFVTX1RBQkxFIDB4MDAwMDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9WQ19SRVNfU1RBVFVTX1RBQkxFIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX1ZDX1JFU19TVEFUVVNfTkVHTyAweDAwMDAwMDAyCiAjZGVmaW5lIFBDSV9DQVBfVkNfQkFTRV9TSVpFT0YgMHgxMAogI2RlZmluZSBQQ0lfQ0FQX1ZDX1BFUl9WQ19TSVpFT0YgMHgwQwotI2RlZmluZSBQQ0lfUFdSX0RTUiA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUFdSX0RTUiA0CiAjZGVmaW5lIFBDSV9QV1JfREFUQSA4CiAjZGVmaW5lIFBDSV9QV1JfREFUQV9CQVNFKHgpICgoeCkgJiAweGZmKQogI2RlZmluZSBQQ0lfUFdSX0RBVEFfU0NBTEUoeCkgKCgoeCkgPj4gOCkgJiAzKQotI2RlZmluZSBQQ0lfUFdSX0RBVEFfUE1fU1VCKHgpICgoKHgpID4+IDEwKSAmIDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUFdSX0RBVEFfUE1fU1VCKHgpICgoKHgpID4+IDEwKSAmIDcpCiAjZGVmaW5lIFBDSV9QV1JfREFUQV9QTV9TVEFURSh4KSAoKCh4KSA+PiAxMykgJiAzKQogI2RlZmluZSBQQ0lfUFdSX0RBVEFfVFlQRSh4KSAoKCh4KSA+PiAxNSkgJiA3KQogI2RlZmluZSBQQ0lfUFdSX0RBVEFfUkFJTCh4KSAoKCh4KSA+PiAxOCkgJiA3KQotI2RlZmluZSBQQ0lfUFdSX0NBUCAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1BXUl9DQVAgMTIKICNkZWZpbmUgUENJX1BXUl9DQVBfQlVER0VUKHgpICgoeCkgJiAxKQogI2RlZmluZSBQQ0lfRVhUX0NBUF9QV1JfU0laRU9GIDE2CiAjZGVmaW5lIFBDSV9WTkRSX0hFQURFUiA0Ci0jZGVmaW5lIFBDSV9WTkRSX0hFQURFUl9JRCh4KSAoKHgpICYgMHhmZmZmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZORFJfSEVBREVSX0lEKHgpICgoeCkgJiAweGZmZmYpCiAjZGVmaW5lIFBDSV9WTkRSX0hFQURFUl9SRVYoeCkgKCgoeCkgPj4gMTYpICYgMHhmKQogI2RlZmluZSBQQ0lfVk5EUl9IRUFERVJfTEVOKHgpICgoKHgpID4+IDIwKSAmIDB4ZmZmKQogI2RlZmluZSBIVF8zQklUX0NBUF9NQVNLIDB4RTAKLSNkZWZpbmUgSFRfQ0FQVFlQRV9TTEFWRSAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVF9DQVBUWVBFX1NMQVZFIDB4MDAKICNkZWZpbmUgSFRfQ0FQVFlQRV9IT1NUIDB4MjAKICNkZWZpbmUgSFRfNUJJVF9DQVBfTUFTSyAweEY4CiAjZGVmaW5lIEhUX0NBUFRZUEVfSVJRIDB4ODAKLSNkZWZpbmUgSFRfQ0FQVFlQRV9SRU1BUFBJTkdfNDAgMHhBMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFRfQ0FQVFlQRV9SRU1BUFBJTkdfNDAgMHhBMAogI2RlZmluZSBIVF9DQVBUWVBFX1JFTUFQUElOR182NCAweEEyCiAjZGVmaW5lIEhUX0NBUFRZUEVfVU5JVElEX0NMVU1QIDB4OTAKICNkZWZpbmUgSFRfQ0FQVFlQRV9FWFRDT05GIDB4OTgKLSNkZWZpbmUgSFRfQ0FQVFlQRV9NU0lfTUFQUElORyAweEE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVF9DQVBUWVBFX01TSV9NQVBQSU5HIDB4QTgKICNkZWZpbmUgSFRfTVNJX0ZMQUdTIDB4MDIKICNkZWZpbmUgSFRfTVNJX0ZMQUdTX0VOQUJMRSAweDEKICNkZWZpbmUgSFRfTVNJX0ZMQUdTX0ZJWEVEIDB4MgotI2RlZmluZSBIVF9NU0lfRklYRURfQUREUiAweDAwMDAwMDAwRkVFMDAwMDBVTEwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhUX01TSV9GSVhFRF9BRERSIDB4MDAwMDAwMDBGRUUwMDAwMFVMTAogI2RlZmluZSBIVF9NU0lfQUREUl9MTyAweDA0CiAjZGVmaW5lIEhUX01TSV9BRERSX0xPX01BU0sgMHhGRkYwMDAwMAogI2RlZmluZSBIVF9NU0lfQUREUl9ISSAweDA4Ci0jZGVmaW5lIEhUX0NBUFRZUEVfRElSRUNUX1JPVVRFIDB4QjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhUX0NBUFRZUEVfRElSRUNUX1JPVVRFIDB4QjAKICNkZWZpbmUgSFRfQ0FQVFlQRV9WQ1NFVCAweEI4CiAjZGVmaW5lIEhUX0NBUFRZUEVfRVJST1JfUkVUUlkgMHhDMAogI2RlZmluZSBIVF9DQVBUWVBFX0dFTjMgMHhEMAotI2RlZmluZSBIVF9DQVBUWVBFX1BNIDB4RTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhUX0NBUFRZUEVfUE0gMHhFMAogI2RlZmluZSBIVF9DQVBfU0laRU9GX0xPTkcgMjgKICNkZWZpbmUgSFRfQ0FQX1NJWkVPRl9TSE9SVCAyNAogI2RlZmluZSBQQ0lfQVJJX0NBUCAweDA0Ci0jZGVmaW5lIFBDSV9BUklfQ0FQX01GVkMgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQVJJX0NBUF9NRlZDIDB4MDAwMQogI2RlZmluZSBQQ0lfQVJJX0NBUF9BQ1MgMHgwMDAyCiAjZGVmaW5lIFBDSV9BUklfQ0FQX05GTih4KSAoKCh4KSA+PiA4KSAmIDB4ZmYpCiAjZGVmaW5lIFBDSV9BUklfQ1RSTCAweDA2Ci0jZGVmaW5lIFBDSV9BUklfQ1RSTF9NRlZDIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0FSSV9DVFJMX01GVkMgMHgwMDAxCiAjZGVmaW5lIFBDSV9BUklfQ1RSTF9BQ1MgMHgwMDAyCiAjZGVmaW5lIFBDSV9BUklfQ1RSTF9GRyh4KSAoKCh4KSA+PiA0KSAmIDcpCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0FSSV9TSVpFT0YgOAotI2RlZmluZSBQQ0lfQVRTX0NBUCAweDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQVRTX0NBUCAweDA0CiAjZGVmaW5lIFBDSV9BVFNfQ0FQX1FERVAoeCkgKCh4KSAmIDB4MWYpCiAjZGVmaW5lIFBDSV9BVFNfTUFYX1FERVAgMzIKICNkZWZpbmUgUENJX0FUU19DVFJMIDB4MDYKLSNkZWZpbmUgUENJX0FUU19DVFJMX0VOQUJMRSAweDgwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9BVFNfQ1RSTF9FTkFCTEUgMHg4MDAwCiAjZGVmaW5lIFBDSV9BVFNfQ1RSTF9TVFUoeCkgKCh4KSAmIDB4MWYpCiAjZGVmaW5lIFBDSV9BVFNfTUlOX1NUVSAxMgogI2RlZmluZSBQQ0lfRVhUX0NBUF9BVFNfU0laRU9GIDgKLSNkZWZpbmUgUENJX1BSSV9DVFJMIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QUklfQ1RSTCAweDA0CiAjZGVmaW5lIFBDSV9QUklfQ1RSTF9FTkFCTEUgMHgwMQogI2RlZmluZSBQQ0lfUFJJX0NUUkxfUkVTRVQgMHgwMgogI2RlZmluZSBQQ0lfUFJJX1NUQVRVUyAweDA2Ci0jZGVmaW5lIFBDSV9QUklfU1RBVFVTX1JGIDB4MDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUFJJX1NUQVRVU19SRiAweDAwMQogI2RlZmluZSBQQ0lfUFJJX1NUQVRVU19VUFJHSSAweDAwMgogI2RlZmluZSBQQ0lfUFJJX1NUQVRVU19TVE9QUEVEIDB4MTAwCiAjZGVmaW5lIFBDSV9QUklfTUFYX1JFUSAweDA4Ci0jZGVmaW5lIFBDSV9QUklfQUxMT0NfUkVRIDB4MGMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QUklfQUxMT0NfUkVRIDB4MGMKICNkZWZpbmUgUENJX0VYVF9DQVBfUFJJX1NJWkVPRiAxNgogI2RlZmluZSBQQ0lfUEFTSURfQ0FQIDB4MDQKICNkZWZpbmUgUENJX1BBU0lEX0NBUF9FWEVDIDB4MDIKLSNkZWZpbmUgUENJX1BBU0lEX0NBUF9QUklWIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QQVNJRF9DQVBfUFJJViAweDA0CiAjZGVmaW5lIFBDSV9QQVNJRF9DVFJMIDB4MDYKICNkZWZpbmUgUENJX1BBU0lEX0NUUkxfRU5BQkxFIDB4MDEKICNkZWZpbmUgUENJX1BBU0lEX0NUUkxfRVhFQyAweDAyCi0jZGVmaW5lIFBDSV9QQVNJRF9DVFJMX1BSSVYgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1BBU0lEX0NUUkxfUFJJViAweDA0CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX1BBU0lEX1NJWkVPRiA4CiAjZGVmaW5lIFBDSV9TUklPVl9DQVAgMHgwNAogI2RlZmluZSBQQ0lfU1JJT1ZfQ0FQX1ZGTSAweDAxCi0jZGVmaW5lIFBDSV9TUklPVl9DQVBfSU5UUih4KSAoKHgpID4+IDIxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1NSSU9WX0NBUF9JTlRSKHgpICgoeCkgPj4gMjEpCiAjZGVmaW5lIFBDSV9TUklPVl9DVFJMIDB4MDgKICNkZWZpbmUgUENJX1NSSU9WX0NUUkxfVkZFIDB4MDEKICNkZWZpbmUgUENJX1NSSU9WX0NUUkxfVkZNIDB4MDIKLSNkZWZpbmUgUENJX1NSSU9WX0NUUkxfSU5UUiAweDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9JTlRSIDB4MDQKICNkZWZpbmUgUENJX1NSSU9WX0NUUkxfTVNFIDB4MDgKICNkZWZpbmUgUENJX1NSSU9WX0NUUkxfQVJJIDB4MTAKICNkZWZpbmUgUENJX1NSSU9WX1NUQVRVUyAweDBhCi0jZGVmaW5lIFBDSV9TUklPVl9TVEFUVVNfVkZNIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9TUklPVl9TVEFUVVNfVkZNIDB4MDEKICNkZWZpbmUgUENJX1NSSU9WX0lOSVRJQUxfVkYgMHgwYwogI2RlZmluZSBQQ0lfU1JJT1ZfVE9UQUxfVkYgMHgwZQogI2RlZmluZSBQQ0lfU1JJT1ZfTlVNX1ZGIDB4MTAKLSNkZWZpbmUgUENJX1NSSU9WX0ZVTkNfTElOSyAweDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU1JJT1ZfRlVOQ19MSU5LIDB4MTIKICNkZWZpbmUgUENJX1NSSU9WX1ZGX09GRlNFVCAweDE0CiAjZGVmaW5lIFBDSV9TUklPVl9WRl9TVFJJREUgMHgxNgogI2RlZmluZSBQQ0lfU1JJT1ZfVkZfRElEIDB4MWEKLSNkZWZpbmUgUENJX1NSSU9WX1NVUF9QR1NJWkUgMHgxYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1NSSU9WX1NVUF9QR1NJWkUgMHgxYwogI2RlZmluZSBQQ0lfU1JJT1ZfU1lTX1BHU0laRSAweDIwCiAjZGVmaW5lIFBDSV9TUklPVl9CQVIgMHgyNAogI2RlZmluZSBQQ0lfU1JJT1ZfTlVNX0JBUlMgNgotI2RlZmluZSBQQ0lfU1JJT1ZfVkZNIDB4M2MKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9TUklPVl9WRk0gMHgzYwogI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX0JJUih4KSAoKHgpICYgNykKICNkZWZpbmUgUENJX1NSSU9WX1ZGTV9PRkZTRVQoeCkgKCh4KSAmIH43KQogI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX1VBIDB4MAotI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX01JIDB4MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1NSSU9WX1ZGTV9NSSAweDEKICNkZWZpbmUgUENJX1NSSU9WX1ZGTV9NTyAweDIKICNkZWZpbmUgUENJX1NSSU9WX1ZGTV9BViAweDMKICNkZWZpbmUgUENJX0VYVF9DQVBfU1JJT1ZfU0laRU9GIDY0Ci0jZGVmaW5lIFBDSV9MVFJfTUFYX1NOT09QX0xBVCAweDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9MVFJfTUFYX1NOT09QX0xBVCAweDQKICNkZWZpbmUgUENJX0xUUl9NQVhfTk9TTk9PUF9MQVQgMHg2CiAjZGVmaW5lIFBDSV9MVFJfVkFMVUVfTUFTSyAweDAwMDAwM2ZmCiAjZGVmaW5lIFBDSV9MVFJfU0NBTEVfTUFTSyAweDAwMDAxYzAwCi0jZGVmaW5lIFBDSV9MVFJfU0NBTEVfU0hJRlQgMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9MVFJfU0NBTEVfU0hJRlQgMTAKICNkZWZpbmUgUENJX0VYVF9DQVBfTFRSX1NJWkVPRiA4CiAjZGVmaW5lIFBDSV9BQ1NfQ0FQIDB4MDQKICNkZWZpbmUgUENJX0FDU19TViAweDAxCi0jZGVmaW5lIFBDSV9BQ1NfVEIgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0FDU19UQiAweDAyCiAjZGVmaW5lIFBDSV9BQ1NfUlIgMHgwNAogI2RlZmluZSBQQ0lfQUNTX0NSIDB4MDgKICNkZWZpbmUgUENJX0FDU19VRiAweDEwCi0jZGVmaW5lIFBDSV9BQ1NfRUMgMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0FDU19FQyAweDIwCiAjZGVmaW5lIFBDSV9BQ1NfRFQgMHg0MAogI2RlZmluZSBQQ0lfQUNTX0VHUkVTU19CSVRTIDB4MDUKICNkZWZpbmUgUENJX0FDU19DVFJMIDB4MDYKLSNkZWZpbmUgUENJX0FDU19FR1JFU1NfQ1RMX1YgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0FDU19FR1JFU1NfQ1RMX1YgMHgwOAogI2RlZmluZSBQQ0lfVlNFQ19IRFIgNAogI2RlZmluZSBQQ0lfVlNFQ19IRFJfTEVOX1NISUZUIDIwCiAjZGVmaW5lIFBDSV9TQVRBX1JFR1MgNAotI2RlZmluZSBQQ0lfU0FUQV9SRUdTX01BU0sgMHhGCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU0FUQV9SRUdTX01BU0sgMHhGCiAjZGVmaW5lIFBDSV9TQVRBX1JFR1NfSU5MSU5FIDB4RgogI2RlZmluZSBQQ0lfU0FUQV9TSVpFT0ZfU0hPUlQgOAogI2RlZmluZSBQQ0lfU0FUQV9TSVpFT0ZfTE9ORyAxNgotI2RlZmluZSBQQ0lfUkVCQVJfQ1RSTCA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUkVCQVJfQ1RSTCA4CiAjZGVmaW5lIFBDSV9SRUJBUl9DVFJMX05CQVJfTUFTSyAoNyA8PCA1KQogI2RlZmluZSBQQ0lfUkVCQVJfQ1RSTF9OQkFSX1NISUZUIDUKICNkZWZpbmUgUENJX0RQQV9DQVAgNAotI2RlZmluZSBQQ0lfRFBBX0NBUF9TVUJTVEFURV9NQVNLIDB4MUYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9EUEFfQ0FQX1NVQlNUQVRFX01BU0sgMHgxRgogI2RlZmluZSBQQ0lfRFBBX0JBU0VfU0laRU9GIDE2CiAjZGVmaW5lIFBDSV9UUEhfQ0FQIDQKICNkZWZpbmUgUENJX1RQSF9DQVBfTE9DX01BU0sgMHg2MDAKLSNkZWZpbmUgUENJX1RQSF9MT0NfTk9ORSAweDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1RQSF9MT0NfTk9ORSAweDAwMAogI2RlZmluZSBQQ0lfVFBIX0xPQ19DQVAgMHgyMDAKICNkZWZpbmUgUENJX1RQSF9MT0NfTVNJWCAweDQwMAogI2RlZmluZSBQQ0lfVFBIX0NBUF9TVF9NQVNLIDB4MDdGRjAwMDAKLSNkZWZpbmUgUENJX1RQSF9DQVBfU1RfU0hJRlQgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9UUEhfQ0FQX1NUX1NISUZUIDE2CiAjZGVmaW5lIFBDSV9UUEhfQkFTRV9TSVpFT0YgMTIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZXJmX2V2ZW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcmZfZXZlbnQuaAppbmRleCA1OTIyY2JlLi5jY2VmYTc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcmZfZXZlbnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcmZfZXZlbnQuaApAQCAtMjMsMzk2ICsyMywzNTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8YXNtL2J5dGVvcmRlci5oPgogZW51bSBwZXJmX3R5cGVfaWQgewotIFBFUkZfVFlQRV9IQVJEV0FSRSA9IDAsCi0gUEVSRl9UWVBFX1NPRlRXQVJFID0gMSwKKyAgUEVSRl9UWVBFX0hBUkRXQVJFID0gMCwKKyAgUEVSRl9UWVBFX1NPRlRXQVJFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9UWVBFX1RSQUNFUE9JTlQgPSAyLAotIFBFUkZfVFlQRV9IV19DQUNIRSA9IDMsCi0gUEVSRl9UWVBFX1JBVyA9IDQsCi0gUEVSRl9UWVBFX0JSRUFLUE9JTlQgPSA1LAorICBQRVJGX1RZUEVfVFJBQ0VQT0lOVCA9IDIsCisgIFBFUkZfVFlQRV9IV19DQUNIRSA9IDMsCisgIFBFUkZfVFlQRV9SQVcgPSA0LAorICBQRVJGX1RZUEVfQlJFQUtQT0lOVCA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfVFlQRV9NQVgsCisgIFBFUkZfVFlQRV9NQVgsCiB9OwogZW51bSBwZXJmX2h3X2lkIHsKLSBQRVJGX0NPVU5UX0hXX0NQVV9DWUNMRVMgPSAwLAorICBQRVJGX0NPVU5UX0hXX0NQVV9DWUNMRVMgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX0lOU1RSVUNUSU9OUyA9IDEsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9SRUZFUkVOQ0VTID0gMiwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX01JU1NFUyA9IDMsCi0gUEVSRl9DT1VOVF9IV19CUkFOQ0hfSU5TVFJVQ1RJT05TID0gNCwKKyAgUEVSRl9DT1VOVF9IV19JTlNUUlVDVElPTlMgPSAxLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFRkVSRU5DRVMgPSAyLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX01JU1NFUyA9IDMsCisgIFBFUkZfQ09VTlRfSFdfQlJBTkNIX0lOU1RSVUNUSU9OUyA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfQ09VTlRfSFdfQlJBTkNIX01JU1NFUyA9IDUsCi0gUEVSRl9DT1VOVF9IV19CVVNfQ1lDTEVTID0gNiwKLSBQRVJGX0NPVU5UX0hXX1NUQUxMRURfQ1lDTEVTX0ZST05URU5EID0gNywKLSBQRVJGX0NPVU5UX0hXX1NUQUxMRURfQ1lDTEVTX0JBQ0tFTkQgPSA4LAorICBQRVJGX0NPVU5UX0hXX0JSQU5DSF9NSVNTRVMgPSA1LAorICBQRVJGX0NPVU5UX0hXX0JVU19DWUNMRVMgPSA2LAorICBQRVJGX0NPVU5UX0hXX1NUQUxMRURfQ1lDTEVTX0ZST05URU5EID0gNywKKyAgUEVSRl9DT1VOVF9IV19TVEFMTEVEX0NZQ0xFU19CQUNLRU5EID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9IV19SRUZfQ1BVX0NZQ0xFUyA9IDksCi0gUEVSRl9DT1VOVF9IV19NQVgsCisgIFBFUkZfQ09VTlRfSFdfUkVGX0NQVV9DWUNMRVMgPSA5LAorICBQRVJGX0NPVU5UX0hXX01BWCwKIH07CiBlbnVtIHBlcmZfaHdfY2FjaGVfaWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX0wxRCA9IDAsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9MMUkgPSAxLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTEwgPSAyLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfRFRMQiA9IDMsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTDFEID0gMCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9MMUkgPSAxLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX0xMID0gMiwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9EVExCID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9JVExCID0gNCwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX0JQVSA9IDUsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9OT0RFID0gNiwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX01BWCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9JVExCID0gNCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9CUFUgPSA1LAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX05PREUgPSA2LAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBwZXJmX2h3X2NhY2hlX29wX2lkIHsKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX1JFQUQgPSAwLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfV1JJVEUgPSAxLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX1JFQUQgPSAwLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX1dSSVRFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9PUF9QUkVGRVRDSCA9IDIsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9PUF9NQVgsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfUFJFRkVUQ0ggPSAyLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX01BWCwKIH07CiBlbnVtIHBlcmZfaHdfY2FjaGVfb3BfcmVzdWx0X2lkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9SRVNVTFRfQUNDRVNTID0gMCwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFU1VMVF9NSVNTID0gMSwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFU1VMVF9NQVgsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVTVUxUX0FDQ0VTUyA9IDAsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVTVUxUX01JU1MgPSAxLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFU1VMVF9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gcGVyZl9zd19pZHMgewotIFBFUkZfQ09VTlRfU1dfQ1BVX0NMT0NLID0gMCwKLSBQRVJGX0NPVU5UX1NXX1RBU0tfQ0xPQ0sgPSAxLAotIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFMgPSAyLAorICBQRVJGX0NPVU5UX1NXX0NQVV9DTE9DSyA9IDAsCisgIFBFUkZfQ09VTlRfU1dfVEFTS19DTE9DSyA9IDEsCisgIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFMgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX1NXX0NPTlRFWFRfU1dJVENIRVMgPSAzLAotIFBFUkZfQ09VTlRfU1dfQ1BVX01JR1JBVElPTlMgPSA0LAotIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFNfTUlOID0gNSwKLSBQRVJGX0NPVU5UX1NXX1BBR0VfRkFVTFRTX01BSiA9IDYsCisgIFBFUkZfQ09VTlRfU1dfQ09OVEVYVF9TV0lUQ0hFUyA9IDMsCisgIFBFUkZfQ09VTlRfU1dfQ1BVX01JR1JBVElPTlMgPSA0LAorICBQRVJGX0NPVU5UX1NXX1BBR0VfRkFVTFRTX01JTiA9IDUsCisgIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFNfTUFKID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9TV19BTElHTk1FTlRfRkFVTFRTID0gNywKLSBQRVJGX0NPVU5UX1NXX0VNVUxBVElPTl9GQVVMVFMgPSA4LAotIFBFUkZfQ09VTlRfU1dfRFVNTVkgPSA5LAotIFBFUkZfQ09VTlRfU1dfTUFYLAorICBQRVJGX0NPVU5UX1NXX0FMSUdOTUVOVF9GQVVMVFMgPSA3LAorICBQRVJGX0NPVU5UX1NXX0VNVUxBVElPTl9GQVVMVFMgPSA4LAorICBQRVJGX0NPVU5UX1NXX0RVTU1ZID0gOSwKKyAgUEVSRl9DT1VOVF9TV19NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gcGVyZl9ldmVudF9zYW1wbGVfZm9ybWF0IHsKLSBQRVJGX1NBTVBMRV9JUCA9IDFVIDw8IDAsCi0gUEVSRl9TQU1QTEVfVElEID0gMVUgPDwgMSwKKyAgUEVSRl9TQU1QTEVfSVAgPSAxVSA8PCAwLAorICBQRVJGX1NBTVBMRV9USUQgPSAxVSA8PCAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1NBTVBMRV9USU1FID0gMVUgPDwgMiwKLSBQRVJGX1NBTVBMRV9BRERSID0gMVUgPDwgMywKLSBQRVJGX1NBTVBMRV9SRUFEID0gMVUgPDwgNCwKLSBQRVJGX1NBTVBMRV9DQUxMQ0hBSU4gPSAxVSA8PCA1LAorICBQRVJGX1NBTVBMRV9USU1FID0gMVUgPDwgMiwKKyAgUEVSRl9TQU1QTEVfQUREUiA9IDFVIDw8IDMsCisgIFBFUkZfU0FNUExFX1JFQUQgPSAxVSA8PCA0LAorICBQRVJGX1NBTVBMRV9DQUxMQ0hBSU4gPSAxVSA8PCA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1NBTVBMRV9JRCA9IDFVIDw8IDYsCi0gUEVSRl9TQU1QTEVfQ1BVID0gMVUgPDwgNywKLSBQRVJGX1NBTVBMRV9QRVJJT0QgPSAxVSA8PCA4LAotIFBFUkZfU0FNUExFX1NUUkVBTV9JRCA9IDFVIDw8IDksCisgIFBFUkZfU0FNUExFX0lEID0gMVUgPDwgNiwKKyAgUEVSRl9TQU1QTEVfQ1BVID0gMVUgPDwgNywKKyAgUEVSRl9TQU1QTEVfUEVSSU9EID0gMVUgPDwgOCwKKyAgUEVSRl9TQU1QTEVfU1RSRUFNX0lEID0gMVUgPDwgOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9TQU1QTEVfUkFXID0gMVUgPDwgMTAsCi0gUEVSRl9TQU1QTEVfQlJBTkNIX1NUQUNLID0gMVUgPDwgMTEsCi0gUEVSRl9TQU1QTEVfUkVHU19VU0VSID0gMVUgPDwgMTIsCi0gUEVSRl9TQU1QTEVfU1RBQ0tfVVNFUiA9IDFVIDw8IDEzLAorICBQRVJGX1NBTVBMRV9SQVcgPSAxVSA8PCAxMCwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX1NUQUNLID0gMVUgPDwgMTEsCisgIFBFUkZfU0FNUExFX1JFR1NfVVNFUiA9IDFVIDw8IDEyLAorICBQRVJGX1NBTVBMRV9TVEFDS19VU0VSID0gMVUgPDwgMTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX1dFSUdIVCA9IDFVIDw8IDE0LAotIFBFUkZfU0FNUExFX0RBVEFfU1JDID0gMVUgPDwgMTUsCi0gUEVSRl9TQU1QTEVfSURFTlRJRklFUiA9IDFVIDw8IDE2LAotIFBFUkZfU0FNUExFX1RSQU5TQUNUSU9OID0gMVUgPDwgMTcsCisgIFBFUkZfU0FNUExFX1dFSUdIVCA9IDFVIDw8IDE0LAorICBQRVJGX1NBTVBMRV9EQVRBX1NSQyA9IDFVIDw8IDE1LAorICBQRVJGX1NBTVBMRV9JREVOVElGSUVSID0gMVUgPDwgMTYsCisgIFBFUkZfU0FNUExFX1RSQU5TQUNUSU9OID0gMVUgPDwgMTcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX01BWCA9IDFVIDw8IDE4LAorICBQRVJGX1NBTVBMRV9NQVggPSAxVSA8PCAxOCwKIH07CiBlbnVtIHBlcmZfYnJhbmNoX3NhbXBsZV90eXBlIHsKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfVVNFUiA9IDFVIDw8IDAsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9VU0VSID0gMVUgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9TQU1QTEVfQlJBTkNIX0tFUk5FTCA9IDFVIDw8IDEsCi0gUEVSRl9TQU1QTEVfQlJBTkNIX0hWID0gMVUgPDwgMiwKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfQU5ZID0gMVUgPDwgMywKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfQU5ZX0NBTEwgPSAxVSA8PCA0LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfS0VSTkVMID0gMVUgPDwgMSwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX0hWID0gMVUgPDwgMiwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX0FOWSA9IDFVIDw8IDMsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9BTllfQ0FMTCA9IDFVIDw8IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX0JSQU5DSF9BTllfUkVUVVJOID0gMVUgPDwgNSwKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfSU5EX0NBTEwgPSAxVSA8PCA2LAotIFBFUkZfU0FNUExFX0JSQU5DSF9BQk9SVF9UWCA9IDFVIDw8IDcsCi0gUEVSRl9TQU1QTEVfQlJBTkNIX0lOX1RYID0gMVUgPDwgOCwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX0FOWV9SRVRVUk4gPSAxVSA8PCA1LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfSU5EX0NBTEwgPSAxVSA8PCA2LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfQUJPUlRfVFggPSAxVSA8PCA3LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfSU5fVFggPSAxVSA8PCA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1NBTVBMRV9CUkFOQ0hfTk9fVFggPSAxVSA8PCA5LAotIFBFUkZfU0FNUExFX0JSQU5DSF9NQVggPSAxVSA8PCAxMCwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX05PX1RYID0gMVUgPDwgOSwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX0NPTkQgPSAxVSA8PCAxMCwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX01BWCA9IDFVIDw8IDExLAogfTsKLSNkZWZpbmUgUEVSRl9TQU1QTEVfQlJBTkNIX1BMTV9BTEwgICAoUEVSRl9TQU1QTEVfQlJBTkNIX1VTRVJ8ICBQRVJGX1NBTVBMRV9CUkFOQ0hfS0VSTkVMfCAgUEVSRl9TQU1QTEVfQlJBTkNIX0hWKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9TQU1QTEVfQlJBTkNIX1BMTV9BTEwgKFBFUkZfU0FNUExFX0JSQU5DSF9VU0VSIHwgUEVSRl9TQU1QTEVfQlJBTkNIX0tFUk5FTCB8IFBFUkZfU0FNUExFX0JSQU5DSF9IVikKIGVudW0gcGVyZl9zYW1wbGVfcmVnc19hYmkgewotIFBFUkZfU0FNUExFX1JFR1NfQUJJX05PTkUgPSAwLAotIFBFUkZfU0FNUExFX1JFR1NfQUJJXzMyID0gMSwKLSBQRVJGX1NBTVBMRV9SRUdTX0FCSV82NCA9IDIsCisgIFBFUkZfU0FNUExFX1JFR1NfQUJJX05PTkUgPSAwLAorICBQRVJGX1NBTVBMRV9SRUdTX0FCSV8zMiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1NBTVBMRV9SRUdTX0FCSV82NCA9IDIsCiB9OwogZW51bSB7Ci0gUEVSRl9UWE5fRUxJU0lPTiA9ICgxIDw8IDApLAotIFBFUkZfVFhOX1RSQU5TQUNUSU9OID0gKDEgPDwgMSksCisgIFBFUkZfVFhOX0VMSVNJT04gPSAoMSA8PCAwKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9UWE5fU1lOQyA9ICgxIDw8IDIpLAotIFBFUkZfVFhOX0FTWU5DID0gKDEgPDwgMyksCi0gUEVSRl9UWE5fUkVUUlkgPSAoMSA8PCA0KSwKLSBQRVJGX1RYTl9DT05GTElDVCA9ICgxIDw8IDUpLAorICBQRVJGX1RYTl9UUkFOU0FDVElPTiA9ICgxIDw8IDEpLAorICBQRVJGX1RYTl9TWU5DID0gKDEgPDwgMiksCisgIFBFUkZfVFhOX0FTWU5DID0gKDEgPDwgMyksCisgIFBFUkZfVFhOX1JFVFJZID0gKDEgPDwgNCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfVFhOX0NBUEFDSVRZX1dSSVRFID0gKDEgPDwgNiksCi0gUEVSRl9UWE5fQ0FQQUNJVFlfUkVBRCA9ICgxIDw8IDcpLAotIFBFUkZfVFhOX01BWCA9ICgxIDw8IDgpLAotIFBFUkZfVFhOX0FCT1JUX01BU0sgPSAoMHhmZmZmZmZmZlVMTCA8PCAzMiksCisgIFBFUkZfVFhOX0NPTkZMSUNUID0gKDEgPDwgNSksCisgIFBFUkZfVFhOX0NBUEFDSVRZX1dSSVRFID0gKDEgPDwgNiksCisgIFBFUkZfVFhOX0NBUEFDSVRZX1JFQUQgPSAoMSA8PCA3KSwKKyAgUEVSRl9UWE5fTUFYID0gKDEgPDwgOCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfVFhOX0FCT1JUX1NISUZUID0gMzIsCisgIFBFUkZfVFhOX0FCT1JUX01BU0sgPSAoMHhmZmZmZmZmZlVMTCA8PCAzMiksCisgIFBFUkZfVFhOX0FCT1JUX1NISUZUID0gMzIsCiB9OwogZW51bSBwZXJmX2V2ZW50X3JlYWRfZm9ybWF0IHsKLSBQRVJGX0ZPUk1BVF9UT1RBTF9USU1FX0VOQUJMRUQgPSAxVSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0ZPUk1BVF9UT1RBTF9USU1FX1JVTk5JTkcgPSAxVSA8PCAxLAotIFBFUkZfRk9STUFUX0lEID0gMVUgPDwgMiwKLSBQRVJGX0ZPUk1BVF9HUk9VUCA9IDFVIDw8IDMsCi0gUEVSRl9GT1JNQVRfTUFYID0gMVUgPDwgNCwKKyAgUEVSRl9GT1JNQVRfVE9UQUxfVElNRV9FTkFCTEVEID0gMVUgPDwgMCwKKyAgUEVSRl9GT1JNQVRfVE9UQUxfVElNRV9SVU5OSU5HID0gMVUgPDwgMSwKKyAgUEVSRl9GT1JNQVRfSUQgPSAxVSA8PCAyLAorICBQRVJGX0ZPUk1BVF9HUk9VUCA9IDFVIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX0ZPUk1BVF9NQVggPSAxVSA8PCA0LAogfTsKICNkZWZpbmUgUEVSRl9BVFRSX1NJWkVfVkVSMCA2NAogI2RlZmluZSBQRVJGX0FUVFJfU0laRV9WRVIxIDcyCi0jZGVmaW5lIFBFUkZfQVRUUl9TSVpFX1ZFUjIgODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfQVRUUl9TSVpFX1ZFUjIgODAKICNkZWZpbmUgUEVSRl9BVFRSX1NJWkVfVkVSMyA5Ngogc3RydWN0IHBlcmZfZXZlbnRfYXR0ciB7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBzaXplOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjb25maWc7Ci0gdW5pb24gewotIF9fdTY0IHNhbXBsZV9wZXJpb2Q7Ci0gX191NjQgc2FtcGxlX2ZyZXE7CisgIF9fdTMyIHNpemU7CisgIF9fdTY0IGNvbmZpZzsKKyAgdW5pb24geworICAgIF9fdTY0IHNhbXBsZV9wZXJpb2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gX191NjQgc2FtcGxlX3R5cGU7Ci0gX191NjQgcmVhZF9mb3JtYXQ7Ci0gX191NjQgZGlzYWJsZWQgOiAxLAorICAgIF9fdTY0IHNhbXBsZV9mcmVxOworICB9OworICBfX3U2NCBzYW1wbGVfdHlwZTsKKyAgX191NjQgcmVhZF9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGluaGVyaXQgOiAxLAotIHBpbm5lZCA6IDEsCi0gZXhjbHVzaXZlIDogMSwKLSBleGNsdWRlX3VzZXIgOiAxLAorICBfX3U2NCBkaXNhYmxlZCA6IDEsIGluaGVyaXQgOiAxLCBwaW5uZWQgOiAxLCBleGNsdXNpdmUgOiAxLCBleGNsdWRlX3VzZXIgOiAxLCBleGNsdWRlX2tlcm5lbCA6IDEsIGV4Y2x1ZGVfaHYgOiAxLCBleGNsdWRlX2lkbGUgOiAxLCBtbWFwIDogMSwgY29tbSA6IDEsIGZyZXEgOiAxLCBpbmhlcml0X3N0YXQgOiAxLCBlbmFibGVfb25fZXhlYyA6IDEsIHRhc2sgOiAxLCB3YXRlcm1hcmsgOiAxLCBwcmVjaXNlX2lwIDogMiwgbW1hcF9kYXRhIDogMSwgc2FtcGxlX2lkX2FsbCA6IDEsIGV4Y2x1ZGVfaG9zdCA6IDEsIGV4Y2x1ZGVfZ3Vlc3QgOiAxLCBleGNsdWRlX2NhbGxjaGFpbl9rZXJuZWwgOiAxLCBleGNsdWRlX2NhbGxjaGFpbl91c2VyIDogMSwgbW1hcDIgOiAxLCBjb21tX2V4ZWMgOiAxLCBfX3Jlc2VydmVkXzEgOiAzOTsKKyAgdW5pb24geworICAgIF9fdTMyIHdha2V1cF9ldmVudHM7CisgICAgX191MzIgd2FrZXVwX3dhdGVybWFyazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZXhjbHVkZV9rZXJuZWwgOiAxLAotIGV4Y2x1ZGVfaHYgOiAxLAotIGV4Y2x1ZGVfaWRsZSA6IDEsCi0gbW1hcCA6IDEsCisgIH07CisgIF9fdTMyIGJwX3R5cGU7CisgIHVuaW9uIHsKKyAgICBfX3U2NCBicF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjb21tIDogMSwKLSBmcmVxIDogMSwKLSBpbmhlcml0X3N0YXQgOiAxLAotIGVuYWJsZV9vbl9leGVjIDogMSwKKyAgICBfX3U2NCBjb25maWcxOworICB9OworICB1bmlvbiB7CisgICAgX191NjQgYnBfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0YXNrIDogMSwKLSB3YXRlcm1hcmsgOiAxLAotIHByZWNpc2VfaXAgOiAyLAotIG1tYXBfZGF0YSA6IDEsCisgICAgX191NjQgY29uZmlnMjsKKyAgfTsKKyAgX191NjQgYnJhbmNoX3NhbXBsZV90eXBlOworICBfX3U2NCBzYW1wbGVfcmVnc191c2VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzYW1wbGVfaWRfYWxsIDogMSwKLSBleGNsdWRlX2hvc3QgOiAxLAotIGV4Y2x1ZGVfZ3Vlc3QgOiAxLAotIGV4Y2x1ZGVfY2FsbGNoYWluX2tlcm5lbCA6IDEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGV4Y2x1ZGVfY2FsbGNoYWluX3VzZXIgOiAxLAotIG1tYXAyIDogMSwKLSBfX3Jlc2VydmVkXzEgOiA0MDsKLSB1bmlvbiB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdha2V1cF9ldmVudHM7Ci0gX191MzIgd2FrZXVwX3dhdGVybWFyazsKLSB9OwotIF9fdTMyIGJwX3R5cGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX3U2NCBicF9hZGRyOwotIF9fdTY0IGNvbmZpZzE7Ci0gfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fdTY0IGJwX2xlbjsKLSBfX3U2NCBjb25maWcyOwotIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJyYW5jaF9zYW1wbGVfdHlwZTsKLSBfX3U2NCBzYW1wbGVfcmVnc191c2VyOwotIF9fdTMyIHNhbXBsZV9zdGFja191c2VyOwotIF9fdTMyIF9fcmVzZXJ2ZWRfMjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNhbXBsZV9zdGFja191c2VyOworICBfX3UzMiBfX3Jlc2VydmVkXzI7CiB9OwotI2RlZmluZSBwZXJmX2ZsYWdzKGF0dHIpICgqKCYoYXR0ciktPnJlYWRfZm9ybWF0ICsgMSkpCi0jZGVmaW5lIFBFUkZfRVZFTlRfSU9DX0VOQUJMRSBfSU8gKCckJywgMCkKLSNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfRElTQUJMRSBfSU8gKCckJywgMSkKKyNkZWZpbmUgcGVyZl9mbGFncyhhdHRyKSAoKiAoJiAoYXR0ciktPnJlYWRfZm9ybWF0ICsgMSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19SRUZSRVNIIF9JTyAoJyQnLCAyKQotI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19SRVNFVCBfSU8gKCckJywgMykKKyNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfRU5BQkxFIF9JTygnJCcsIDApCisjZGVmaW5lIFBFUkZfRVZFTlRfSU9DX0RJU0FCTEUgX0lPKCckJywgMSkKKyNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfUkVGUkVTSCBfSU8oJyQnLCAyKQorI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19SRVNFVCBfSU8oJyQnLCAzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfUEVSSU9EIF9JT1coJyQnLCA0LCBfX3U2NCkKLSNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfU0VUX09VVFBVVCBfSU8gKCckJywgNSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfRVZFTlRfSU9DX1NFVF9PVVRQVVQgX0lPKCckJywgNSkKICNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfU0VUX0ZJTFRFUiBfSU9XKCckJywgNiwgY2hhciAqKQogI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19JRCBfSU9SKCckJywgNywgX191NjQgKikKLWVudW0gcGVyZl9ldmVudF9pb2NfZmxhZ3MgewotIFBFUkZfSU9DX0ZMQUdfR1JPVVAgPSAxVSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gcGVyZl9ldmVudF9pb2NfZmxhZ3MgeworICBQRVJGX0lPQ19GTEFHX0dST1VQID0gMVUgPDwgMCwKIH07CiBzdHJ1Y3QgcGVyZl9ldmVudF9tbWFwX3BhZ2UgewotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgY29tcGF0X3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvY2s7Ci0gX191MzIgaW5kZXg7Ci0gX19zNjQgb2Zmc2V0OwotIF9fdTY0IHRpbWVfZW5hYmxlZDsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgY29tcGF0X3ZlcnNpb247CisgIF9fdTMyIGxvY2s7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0aW1lX3J1bm5pbmc7Ci0gdW5pb24gewotIF9fdTY0IGNhcGFiaWxpdGllczsKLSBzdHJ1Y3QgeworICBfX3M2NCBvZmZzZXQ7CisgIF9fdTY0IHRpbWVfZW5hYmxlZDsKKyAgX191NjQgdGltZV9ydW5uaW5nOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNhcF9iaXQwIDogMSwKLSBjYXBfYml0MF9pc19kZXByZWNhdGVkIDogMSwKLSBjYXBfdXNlcl9yZHBtYyA6IDEsCi0gY2FwX3VzZXJfdGltZSA6IDEsCisgICAgX191NjQgY2FwYWJpbGl0aWVzOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBjYXBfYml0MCA6IDEsIGNhcF9iaXQwX2lzX2RlcHJlY2F0ZWQgOiAxLCBjYXBfdXNlcl9yZHBtYyA6IDEsIGNhcF91c2VyX3RpbWUgOiAxLCBjYXBfdXNlcl90aW1lX3plcm8gOiAxLCBjYXBfX19fX3JlcyA6IDU5OworICAgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNhcF91c2VyX3RpbWVfemVybyA6IDEsCi0gY2FwX19fX19yZXMgOiA1OTsKLSB9OwotIH07CisgIH07CisgIF9fdTE2IHBtY193aWR0aDsKKyAgX191MTYgdGltZV9zaGlmdDsKKyAgX191MzIgdGltZV9tdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwbWNfd2lkdGg7Ci0gX191MTYgdGltZV9zaGlmdDsKLSBfX3UzMiB0aW1lX211bHQ7Ci0gX191NjQgdGltZV9vZmZzZXQ7CisgIF9fdTY0IHRpbWVfb2Zmc2V0OworICBfX3U2NCB0aW1lX3plcm87CisgIF9fdTMyIHNpemU7CisgIF9fdTggX19yZXNlcnZlZFsxMTggKiA4ICsgNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRpbWVfemVybzsKLSBfX3UzMiBzaXplOwotIF9fdTggX19yZXNlcnZlZFsxMTgqOCs0XTsKLSBfX3U2NCBkYXRhX2hlYWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGFfdGFpbDsKKyAgX191NjQgZGF0YV9oZWFkOworICBfX3U2NCBkYXRhX3RhaWw7CiB9OwogI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0NQVU1PREVfTUFTSyAoNyA8PCAwKQotI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0NQVU1PREVfVU5LTk9XTiAoMCA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19DUFVNT0RFX1VOS05PV04gKDAgPDwgMCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19LRVJORUwgKDEgPDwgMCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19VU0VSICgyIDw8IDApCiAjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfSFlQRVJWSVNPUiAoMyA8PCAwKQotI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0dVRVNUX0tFUk5FTCAoNCA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19HVUVTVF9LRVJORUwgKDQgPDwgMCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19HVUVTVF9VU0VSICg1IDw8IDApCiAjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfTU1BUF9EQVRBICgxIDw8IDEzKQorI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0NPTU1fRVhFQyAoMSA8PCAxMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfRVhBQ1RfSVAgKDEgPDwgMTQpCiAjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfRVhUX1JFU0VSVkVEICgxIDw8IDE1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwZXJmX2V2ZW50X2hlYWRlciB7Ci0gX191MzIgdHlwZTsKLSBfX3UxNiBtaXNjOwotIF9fdTE2IHNpemU7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBtaXNjOworICBfX3UxNiBzaXplOwogfTsKIGVudW0gcGVyZl9ldmVudF90eXBlIHsKLSBQRVJGX1JFQ09SRF9NTUFQID0gMSwKLSBQRVJGX1JFQ09SRF9MT1NUID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUNPUkRfQ09NTSA9IDMsCi0gUEVSRl9SRUNPUkRfRVhJVCA9IDQsCi0gUEVSRl9SRUNPUkRfVEhST1RUTEUgPSA1LAotIFBFUkZfUkVDT1JEX1VOVEhST1RUTEUgPSA2LAorICBQRVJGX1JFQ09SRF9NTUFQID0gMSwKKyAgUEVSRl9SRUNPUkRfTE9TVCA9IDIsCisgIFBFUkZfUkVDT1JEX0NPTU0gPSAzLAorICBQRVJGX1JFQ09SRF9FWElUID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUNPUkRfRk9SSyA9IDcsCi0gUEVSRl9SRUNPUkRfUkVBRCA9IDgsCi0gUEVSRl9SRUNPUkRfU0FNUExFID0gOSwKLSBQRVJGX1JFQ09SRF9NTUFQMiA9IDEwLAorICBQRVJGX1JFQ09SRF9USFJPVFRMRSA9IDUsCisgIFBFUkZfUkVDT1JEX1VOVEhST1RUTEUgPSA2LAorICBQRVJGX1JFQ09SRF9GT1JLID0gNywKKyAgUEVSRl9SRUNPUkRfUkVBRCA9IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVDT1JEX01BWCwKKyAgUEVSRl9SRUNPUkRfU0FNUExFID0gOSwKKyAgUEVSRl9SRUNPUkRfTU1BUDIgPSAxMCwKKyAgUEVSRl9SRUNPUkRfTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBFUkZfTUFYX1NUQUNLX0RFUFRIIDEyNwogZW51bSBwZXJmX2NhbGxjaGFpbl9jb250ZXh0IHsKKyAgUEVSRl9DT05URVhUX0hWID0gKF9fdTY0KSAtIDMyLAorICBQRVJGX0NPTlRFWFRfS0VSTkVMID0gKF9fdTY0KSAtIDEyOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT05URVhUX0hWID0gKF9fdTY0KS0zMiwKLSBQRVJGX0NPTlRFWFRfS0VSTkVMID0gKF9fdTY0KS0xMjgsCi0gUEVSRl9DT05URVhUX1VTRVIgPSAoX191NjQpLTUxMiwKLSBQRVJGX0NPTlRFWFRfR1VFU1QgPSAoX191NjQpLTIwNDgsCisgIFBFUkZfQ09OVEVYVF9VU0VSID0gKF9fdTY0KSAtIDUxMiwKKyAgUEVSRl9DT05URVhUX0dVRVNUID0gKF9fdTY0KSAtIDIwNDgsCisgIFBFUkZfQ09OVEVYVF9HVUVTVF9LRVJORUwgPSAoX191NjQpIC0gMjE3NiwKKyAgUEVSRl9DT05URVhUX0dVRVNUX1VTRVIgPSAoX191NjQpIC0gMjU2MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT05URVhUX0dVRVNUX0tFUk5FTCA9IChfX3U2NCktMjE3NiwKLSBQRVJGX0NPTlRFWFRfR1VFU1RfVVNFUiA9IChfX3U2NCktMjU2MCwKLSBQRVJGX0NPTlRFWFRfTUFYID0gKF9fdTY0KS00MDk1LAorICBQRVJGX0NPTlRFWFRfTUFYID0gKF9fdTY0KSAtIDQwOTUsCiB9OworI2RlZmluZSBQRVJGX0ZMQUdfRkRfTk9fR1JPVVAgKDFVTCA8PCAwKQorI2RlZmluZSBQRVJGX0ZMQUdfRkRfT1VUUFVUICgxVUwgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBFUkZfRkxBR19GRF9OT19HUk9VUCAoMVUgPDwgMCkKLSNkZWZpbmUgUEVSRl9GTEFHX0ZEX09VVFBVVCAoMVUgPDwgMSkKLSNkZWZpbmUgUEVSRl9GTEFHX1BJRF9DR1JPVVAgKDFVIDw8IDIpCi0jZGVmaW5lIFBFUkZfRkxBR19GRF9DTE9FWEVDICgxVSA8PCAzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9GTEFHX1BJRF9DR1JPVVAgKDFVTCA8PCAyKQorI2RlZmluZSBQRVJGX0ZMQUdfRkRfQ0xPRVhFQyAoMVVMIDw8IDMpCiB1bmlvbiBwZXJmX21lbV9kYXRhX3NyYyB7Ci0gX191NjQgdmFsOwotIHN0cnVjdCB7Ci0gX191NjQgbWVtX29wOjUsCisgIF9fdTY0IHZhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbWVtX2x2bDoxNCwKLSBtZW1fc25vb3A6NSwKLSBtZW1fbG9jazoyLAotIG1lbV9kdGxiOjcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1lbV9yc3ZkOjMxOwotIH07CisgIHN0cnVjdCB7CisgICAgX191NjQgbWVtX29wIDogNSwgbWVtX2x2bCA6IDE0LCBtZW1fc25vb3AgOiA1LCBtZW1fbG9jayA6IDIsIG1lbV9kdGxiIDogNywgbWVtX3JzdmQgOiAzMTsKKyAgfTsKIH07Ci0jZGVmaW5lIFBFUkZfTUVNX09QX05BIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX09QX05BIDB4MDEKICNkZWZpbmUgUEVSRl9NRU1fT1BfTE9BRCAweDAyCiAjZGVmaW5lIFBFUkZfTUVNX09QX1NUT1JFIDB4MDQKICNkZWZpbmUgUEVSRl9NRU1fT1BfUEZFVENIIDB4MDgKLSNkZWZpbmUgUEVSRl9NRU1fT1BfRVhFQyAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX01FTV9PUF9FWEVDIDB4MTAKICNkZWZpbmUgUEVSRl9NRU1fT1BfU0hJRlQgMAogI2RlZmluZSBQRVJGX01FTV9MVkxfTkEgMHgwMQogI2RlZmluZSBQRVJGX01FTV9MVkxfSElUIDB4MDIKLSNkZWZpbmUgUEVSRl9NRU1fTFZMX01JU1MgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fTFZMX01JU1MgMHgwNAogI2RlZmluZSBQRVJGX01FTV9MVkxfTDEgMHgwOAogI2RlZmluZSBQRVJGX01FTV9MVkxfTEZCIDB4MTAKICNkZWZpbmUgUEVSRl9NRU1fTFZMX0wyIDB4MjAKLSNkZWZpbmUgUEVSRl9NRU1fTFZMX0wzIDB4NDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX0xWTF9MMyAweDQwCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9MT0NfUkFNIDB4ODAKICNkZWZpbmUgUEVSRl9NRU1fTFZMX1JFTV9SQU0xIDB4MTAwCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9SRU1fUkFNMiAweDIwMAotI2RlZmluZSBQRVJGX01FTV9MVkxfUkVNX0NDRTEgMHg0MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX0xWTF9SRU1fQ0NFMSAweDQwMAogI2RlZmluZSBQRVJGX01FTV9MVkxfUkVNX0NDRTIgMHg4MDAKICNkZWZpbmUgUEVSRl9NRU1fTFZMX0lPIDB4MTAwMAogI2RlZmluZSBQRVJGX01FTV9MVkxfVU5DIDB4MjAwMAotI2RlZmluZSBQRVJGX01FTV9MVkxfU0hJRlQgNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fTFZMX1NISUZUIDUKICNkZWZpbmUgUEVSRl9NRU1fU05PT1BfTkEgMHgwMQogI2RlZmluZSBQRVJGX01FTV9TTk9PUF9OT05FIDB4MDIKICNkZWZpbmUgUEVSRl9NRU1fU05PT1BfSElUIDB4MDQKLSNkZWZpbmUgUEVSRl9NRU1fU05PT1BfTUlTUyAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX01FTV9TTk9PUF9NSVNTIDB4MDgKICNkZWZpbmUgUEVSRl9NRU1fU05PT1BfSElUTSAweDEwCiAjZGVmaW5lIFBFUkZfTUVNX1NOT09QX1NISUZUIDE5CiAjZGVmaW5lIFBFUkZfTUVNX0xPQ0tfTkEgMHgwMQotI2RlZmluZSBQRVJGX01FTV9MT0NLX0xPQ0tFRCAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX01FTV9MT0NLX0xPQ0tFRCAweDAyCiAjZGVmaW5lIFBFUkZfTUVNX0xPQ0tfU0hJRlQgMjQKICNkZWZpbmUgUEVSRl9NRU1fVExCX05BIDB4MDEKICNkZWZpbmUgUEVSRl9NRU1fVExCX0hJVCAweDAyCi0jZGVmaW5lIFBFUkZfTUVNX1RMQl9NSVNTIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX1RMQl9NSVNTIDB4MDQKICNkZWZpbmUgUEVSRl9NRU1fVExCX0wxIDB4MDgKICNkZWZpbmUgUEVSRl9NRU1fVExCX0wyIDB4MTAKICNkZWZpbmUgUEVSRl9NRU1fVExCX1dLIDB4MjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBFUkZfTUVNX1RMQl9PUyAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQRVJGX01FTV9UTEJfU0hJRlQgMjYKLSNkZWZpbmUgUEVSRl9NRU1fUyhhLCBzKSAgICgoKF9fdTY0KVBFUkZfTUVNXyMjYSMjXyMjcykgPDwgUEVSRl9NRU1fIyNhIyNfU0hJRlQpCisjZGVmaW5lIFBFUkZfTUVNX1MoYSxzKSAoKChfX3U2NCkgUEVSRl9NRU1fICMjYSAjI18gIyNzKSA8PCBQRVJGX01FTV8gIyNhICMjX1NISUZUKQogc3RydWN0IHBlcmZfYnJhbmNoX2VudHJ5IHsKLSBfX3U2NCBmcm9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0bzsKLSBfX3U2NCBtaXNwcmVkOjEsCi0gcHJlZGljdGVkOjEsCi0gaW5fdHg6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYWJvcnQ6MSwKLSByZXNlcnZlZDo2MDsKKyAgX191NjQgZnJvbTsKKyAgX191NjQgdG87CisgIF9fdTY0IG1pc3ByZWQgOiAxLCBwcmVkaWN0ZWQgOiAxLCBpbl90eCA6IDEsIGFib3J0IDogMSwgcmVzZXJ2ZWQgOiA2MDsKIH07Ci0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyc29uYWxpdHkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyc29uYWxpdHkuaAppbmRleCBlOTVhNTE0Li5mYTYzMWI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcnNvbmFsaXR5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZXJzb25hbGl0eS5oCkBAIC0xOSw1MyArMTksNTIgQEAKICNpZm5kZWYgX1VBUElfTElOVVhfUEVSU09OQUxJVFlfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9QRVJTT05BTElUWV9ICiBlbnVtIHsKLSBVTkFNRTI2ID0gMHgwMDIwMDAwLAorICBVTkFNRTI2ID0gMHgwMDIwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBRERSX05PX1JBTkRPTUlaRSA9IDB4MDA0MDAwMCwKLSBGRFBJQ19GVU5DUFRSUyA9IDB4MDA4MDAwMCwKLSBNTUFQX1BBR0VfWkVSTyA9IDB4MDEwMDAwMCwKLSBBRERSX0NPTVBBVF9MQVlPVVQgPSAweDAyMDAwMDAsCisgIEFERFJfTk9fUkFORE9NSVpFID0gMHgwMDQwMDAwLAorICBGRFBJQ19GVU5DUFRSUyA9IDB4MDA4MDAwMCwKKyAgTU1BUF9QQUdFX1pFUk8gPSAweDAxMDAwMDAsCisgIEFERFJfQ09NUEFUX0xBWU9VVCA9IDB4MDIwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkVBRF9JTVBMSUVTX0VYRUMgPSAweDA0MDAwMDAsCi0gQUREUl9MSU1JVF8zMkJJVCA9IDB4MDgwMDAwMCwKLSBTSE9SVF9JTk9ERSA9IDB4MTAwMDAwMCwKLSBXSE9MRV9TRUNPTkRTID0gMHgyMDAwMDAwLAorICBSRUFEX0lNUExJRVNfRVhFQyA9IDB4MDQwMDAwMCwKKyAgQUREUl9MSU1JVF8zMkJJVCA9IDB4MDgwMDAwMCwKKyAgU0hPUlRfSU5PREUgPSAweDEwMDAwMDAsCisgIFdIT0xFX1NFQ09ORFMgPSAweDIwMDAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNUSUNLWV9USU1FT1VUUyA9IDB4NDAwMDAwMCwKLSBBRERSX0xJTUlUXzNHQiA9IDB4ODAwMDAwMCwKKyAgU1RJQ0tZX1RJTUVPVVRTID0gMHg0MDAwMDAwLAorICBBRERSX0xJTUlUXzNHQiA9IDB4ODAwMDAwMCwKIH07Ci0jZGVmaW5lIFBFUl9DTEVBUl9PTl9TRVRJRCAoUkVBRF9JTVBMSUVTX0VYRUMgfCAgIEFERFJfTk9fUkFORE9NSVpFIHwgICBBRERSX0NPTVBBVF9MQVlPVVQgfCAgIE1NQVBfUEFHRV9aRVJPKQorI2RlZmluZSBQRVJfQ0xFQVJfT05fU0VUSUQgKFJFQURfSU1QTElFU19FWEVDIHwgQUREUl9OT19SQU5ET01JWkUgfCBBRERSX0NPTVBBVF9MQVlPVVQgfCBNTUFQX1BBR0VfWkVSTykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBQRVJfTElOVVggPSAweDAwMDAsCi0gUEVSX0xJTlVYXzMyQklUID0gMHgwMDAwIHwgQUREUl9MSU1JVF8zMkJJVCwKLSBQRVJfTElOVVhfRkRQSUMgPSAweDAwMDAgfCBGRFBJQ19GVU5DUFRSUywKKyAgUEVSX0xJTlVYID0gMHgwMDAwLAorICBQRVJfTElOVVhfMzJCSVQgPSAweDAwMDAgfCBBRERSX0xJTUlUXzMyQklULAorICBQRVJfTElOVVhfRkRQSUMgPSAweDAwMDAgfCBGRFBJQ19GVU5DUFRSUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSX1NWUjQgPSAweDAwMDEgfCBTVElDS1lfVElNRU9VVFMgfCBNTUFQX1BBR0VfWkVSTywKLSBQRVJfU1ZSMyA9IDB4MDAwMiB8IFNUSUNLWV9USU1FT1VUUyB8IFNIT1JUX0lOT0RFLAotIFBFUl9TQ09TVlIzID0gMHgwMDAzIHwgU1RJQ0tZX1RJTUVPVVRTIHwKLSBXSE9MRV9TRUNPTkRTIHwgU0hPUlRfSU5PREUsCisgIFBFUl9TVlI0ID0gMHgwMDAxIHwgU1RJQ0tZX1RJTUVPVVRTIHwgTU1BUF9QQUdFX1pFUk8sCisgIFBFUl9TVlIzID0gMHgwMDAyIHwgU1RJQ0tZX1RJTUVPVVRTIHwgU0hPUlRfSU5PREUsCisgIFBFUl9TQ09TVlIzID0gMHgwMDAzIHwgU1RJQ0tZX1RJTUVPVVRTIHwgV0hPTEVfU0VDT05EUyB8IFNIT1JUX0lOT0RFLAorICBQRVJfT1NSNSA9IDB4MDAwMyB8IFNUSUNLWV9USU1FT1VUUyB8IFdIT0xFX1NFQ09ORFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUl9PU1I1ID0gMHgwMDAzIHwgU1RJQ0tZX1RJTUVPVVRTIHwgV0hPTEVfU0VDT05EUywKLSBQRVJfV1lTRVYzODYgPSAweDAwMDQgfCBTVElDS1lfVElNRU9VVFMgfCBTSE9SVF9JTk9ERSwKLSBQRVJfSVNDUjQgPSAweDAwMDUgfCBTVElDS1lfVElNRU9VVFMsCi0gUEVSX0JTRCA9IDB4MDAwNiwKKyAgUEVSX1dZU0VWMzg2ID0gMHgwMDA0IHwgU1RJQ0tZX1RJTUVPVVRTIHwgU0hPUlRfSU5PREUsCisgIFBFUl9JU0NSNCA9IDB4MDAwNSB8IFNUSUNLWV9USU1FT1VUUywKKyAgUEVSX0JTRCA9IDB4MDAwNiwKKyAgUEVSX1NVTk9TID0gMHgwMDA2IHwgU1RJQ0tZX1RJTUVPVVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJfU1VOT1MgPSAweDAwMDYgfCBTVElDS1lfVElNRU9VVFMsCi0gUEVSX1hFTklYID0gMHgwMDA3IHwgU1RJQ0tZX1RJTUVPVVRTIHwgU0hPUlRfSU5PREUsCi0gUEVSX0xJTlVYMzIgPSAweDAwMDgsCi0gUEVSX0xJTlVYMzJfM0dCID0gMHgwMDA4IHwgQUREUl9MSU1JVF8zR0IsCisgIFBFUl9YRU5JWCA9IDB4MDAwNyB8IFNUSUNLWV9USU1FT1VUUyB8IFNIT1JUX0lOT0RFLAorICBQRVJfTElOVVgzMiA9IDB4MDAwOCwKKyAgUEVSX0xJTlVYMzJfM0dCID0gMHgwMDA4IHwgQUREUl9MSU1JVF8zR0IsCisgIFBFUl9JUklYMzIgPSAweDAwMDkgfCBTVElDS1lfVElNRU9VVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUl9JUklYMzIgPSAweDAwMDkgfCBTVElDS1lfVElNRU9VVFMsCi0gUEVSX0lSSVhOMzIgPSAweDAwMGEgfCBTVElDS1lfVElNRU9VVFMsCi0gUEVSX0lSSVg2NCA9IDB4MDAwYiB8IFNUSUNLWV9USU1FT1VUUywKLSBQRVJfUklTQ09TID0gMHgwMDBjLAorICBQRVJfSVJJWE4zMiA9IDB4MDAwYSB8IFNUSUNLWV9USU1FT1VUUywKKyAgUEVSX0lSSVg2NCA9IDB4MDAwYiB8IFNUSUNLWV9USU1FT1VUUywKKyAgUEVSX1JJU0NPUyA9IDB4MDAwYywKKyAgUEVSX1NPTEFSSVMgPSAweDAwMGQgfCBTVElDS1lfVElNRU9VVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUl9TT0xBUklTID0gMHgwMDBkIHwgU1RJQ0tZX1RJTUVPVVRTLAotIFBFUl9VVzcgPSAweDAwMGUgfCBTVElDS1lfVElNRU9VVFMgfCBNTUFQX1BBR0VfWkVSTywKLSBQRVJfT1NGNCA9IDB4MDAwZiwKLSBQRVJfSFBVWCA9IDB4MDAxMCwKKyAgUEVSX1VXNyA9IDB4MDAwZSB8IFNUSUNLWV9USU1FT1VUUyB8IE1NQVBfUEFHRV9aRVJPLAorICBQRVJfT1NGNCA9IDB4MDAwZiwKKyAgUEVSX0hQVVggPSAweDAwMTAsCisgIFBFUl9NQVNLID0gMHgwMGZmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJfTUFTSyA9IDB4MDBmZiwKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGZrZXl2Mi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZmtleXYyLmgKaW5kZXggYjg3YjY5OC4uZjRkZjU3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZmtleXYyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZmtleXYyLmgKQEAgLTIzLDM0MyArMjMsMzU2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQRktFWVYyX1JFVklTSU9OIDE5OTgwNkwKIHN0cnVjdCBzYWRiX21zZyB7Ci0gX191OCBzYWRiX21zZ192ZXJzaW9uOwotIF9fdTggc2FkYl9tc2dfdHlwZTsKKyAgX191OCBzYWRiX21zZ192ZXJzaW9uOworICBfX3U4IHNhZGJfbXNnX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkYl9tc2dfZXJybm87Ci0gX191OCBzYWRiX21zZ19zYXR5cGU7Ci0gX191MTYgc2FkYl9tc2dfbGVuOwotIF9fdTE2IHNhZGJfbXNnX3Jlc2VydmVkOworICBfX3U4IHNhZGJfbXNnX2Vycm5vOworICBfX3U4IHNhZGJfbXNnX3NhdHlwZTsKKyAgX191MTYgc2FkYl9tc2dfbGVuOworICBfX3UxNiBzYWRiX21zZ19yZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FkYl9tc2dfc2VxOwotIF9fdTMyIHNhZGJfbXNnX3BpZDsKKyAgX191MzIgc2FkYl9tc2dfc2VxOworICBfX3UzMiBzYWRiX21zZ19waWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfZXh0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9leHRfbGVuOwotIF9fdTE2IHNhZGJfZXh0X3R5cGU7CisgIF9fdTE2IHNhZGJfZXh0X2xlbjsKKyAgX191MTYgc2FkYl9leHRfdHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9zYSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfc2FfbGVuOwotIF9fdTE2IHNhZGJfc2FfZXh0dHlwZTsKLSBfX2JlMzIgc2FkYl9zYV9zcGk7Ci0gX191OCBzYWRiX3NhX3JlcGxheTsKKyAgX191MTYgc2FkYl9zYV9sZW47CisgIF9fdTE2IHNhZGJfc2FfZXh0dHlwZTsKKyAgX19iZTMyIHNhZGJfc2Ffc3BpOworICBfX3U4IHNhZGJfc2FfcmVwbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNhZGJfc2Ffc3RhdGU7Ci0gX191OCBzYWRiX3NhX2F1dGg7Ci0gX191OCBzYWRiX3NhX2VuY3J5cHQ7Ci0gX191MzIgc2FkYl9zYV9mbGFnczsKKyAgX191OCBzYWRiX3NhX3N0YXRlOworICBfX3U4IHNhZGJfc2FfYXV0aDsKKyAgX191OCBzYWRiX3NhX2VuY3J5cHQ7CisgIF9fdTMyIHNhZGJfc2FfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX2xpZmV0aW1lIHsKLSBfX3UxNiBzYWRiX2xpZmV0aW1lX2xlbjsKLSBfX3UxNiBzYWRiX2xpZmV0aW1lX2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfbGlmZXRpbWVfbGVuOworICBfX3UxNiBzYWRiX2xpZmV0aW1lX2V4dHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhZGJfbGlmZXRpbWVfYWxsb2NhdGlvbnM7Ci0gX191NjQgc2FkYl9saWZldGltZV9ieXRlczsKLSBfX3U2NCBzYWRiX2xpZmV0aW1lX2FkZHRpbWU7Ci0gX191NjQgc2FkYl9saWZldGltZV91c2V0aW1lOworICBfX3UzMiBzYWRiX2xpZmV0aW1lX2FsbG9jYXRpb25zOworICBfX3U2NCBzYWRiX2xpZmV0aW1lX2J5dGVzOworICBfX3U2NCBzYWRiX2xpZmV0aW1lX2FkZHRpbWU7CisgIF9fdTY0IHNhZGJfbGlmZXRpbWVfdXNldGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfYWRkcmVzcyB7Ci0gX191MTYgc2FkYl9hZGRyZXNzX2xlbjsKLSBfX3UxNiBzYWRiX2FkZHJlc3NfZXh0dHlwZTsKKyAgX191MTYgc2FkYl9hZGRyZXNzX2xlbjsKKyAgX191MTYgc2FkYl9hZGRyZXNzX2V4dHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkYl9hZGRyZXNzX3Byb3RvOwotIF9fdTggc2FkYl9hZGRyZXNzX3ByZWZpeGxlbjsKLSBfX3UxNiBzYWRiX2FkZHJlc3NfcmVzZXJ2ZWQ7CisgIF9fdTggc2FkYl9hZGRyZXNzX3Byb3RvOworICBfX3U4IHNhZGJfYWRkcmVzc19wcmVmaXhsZW47CisgIF9fdTE2IHNhZGJfYWRkcmVzc19yZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNhZGJfa2V5IHsKLSBfX3UxNiBzYWRiX2tleV9sZW47Ci0gX191MTYgc2FkYl9rZXlfZXh0dHlwZTsKLSBfX3UxNiBzYWRiX2tleV9iaXRzOworICBfX3UxNiBzYWRiX2tleV9sZW47CisgIF9fdTE2IHNhZGJfa2V5X2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfa2V5X2JpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfa2V5X3Jlc2VydmVkOworICBfX3UxNiBzYWRiX2tleV9yZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9pZGVudCB7Ci0gX191MTYgc2FkYl9pZGVudF9sZW47CisgIF9fdTE2IHNhZGJfaWRlbnRfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX2lkZW50X2V4dHR5cGU7Ci0gX191MTYgc2FkYl9pZGVudF90eXBlOwotIF9fdTE2IHNhZGJfaWRlbnRfcmVzZXJ2ZWQ7Ci0gX191NjQgc2FkYl9pZGVudF9pZDsKKyAgX191MTYgc2FkYl9pZGVudF9leHR0eXBlOworICBfX3UxNiBzYWRiX2lkZW50X3R5cGU7CisgIF9fdTE2IHNhZGJfaWRlbnRfcmVzZXJ2ZWQ7CisgIF9fdTY0IHNhZGJfaWRlbnRfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3NlbnMgewotIF9fdTE2IHNhZGJfc2Vuc19sZW47Ci0gX191MTYgc2FkYl9zZW5zX2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfc2Vuc19sZW47CisgIF9fdTE2IHNhZGJfc2Vuc19leHR0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYWRiX3NlbnNfZHBkOwotIF9fdTggc2FkYl9zZW5zX3NlbnNfbGV2ZWw7Ci0gX191OCBzYWRiX3NlbnNfc2Vuc19sZW47Ci0gX191OCBzYWRiX3NlbnNfaW50ZWdfbGV2ZWw7CisgIF9fdTMyIHNhZGJfc2Vuc19kcGQ7CisgIF9fdTggc2FkYl9zZW5zX3NlbnNfbGV2ZWw7CisgIF9fdTggc2FkYl9zZW5zX3NlbnNfbGVuOworICBfX3U4IHNhZGJfc2Vuc19pbnRlZ19sZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWRiX3NlbnNfaW50ZWdfbGVuOwotIF9fdTMyIHNhZGJfc2Vuc19yZXNlcnZlZDsKKyAgX191OCBzYWRiX3NlbnNfaW50ZWdfbGVuOworICBfX3UzMiBzYWRiX3NlbnNfcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfcHJvcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfcHJvcF9sZW47Ci0gX191MTYgc2FkYl9wcm9wX2V4dHR5cGU7Ci0gX191OCBzYWRiX3Byb3BfcmVwbGF5OwotIF9fdTggc2FkYl9wcm9wX3Jlc2VydmVkWzNdOworICBfX3UxNiBzYWRiX3Byb3BfbGVuOworICBfX3UxNiBzYWRiX3Byb3BfZXh0dHlwZTsKKyAgX191OCBzYWRiX3Byb3BfcmVwbGF5OworICBfX3U4IHNhZGJfcHJvcF9yZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfY29tYiB7Ci0gX191OCBzYWRiX2NvbWJfYXV0aDsKLSBfX3U4IHNhZGJfY29tYl9lbmNyeXB0OworICBfX3U4IHNhZGJfY29tYl9hdXRoOworICBfX3U4IHNhZGJfY29tYl9lbmNyeXB0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX2NvbWJfZmxhZ3M7Ci0gX191MTYgc2FkYl9jb21iX2F1dGhfbWluYml0czsKLSBfX3UxNiBzYWRiX2NvbWJfYXV0aF9tYXhiaXRzOwotIF9fdTE2IHNhZGJfY29tYl9lbmNyeXB0X21pbmJpdHM7CisgIF9fdTE2IHNhZGJfY29tYl9mbGFnczsKKyAgX191MTYgc2FkYl9jb21iX2F1dGhfbWluYml0czsKKyAgX191MTYgc2FkYl9jb21iX2F1dGhfbWF4Yml0czsKKyAgX191MTYgc2FkYl9jb21iX2VuY3J5cHRfbWluYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9jb21iX2VuY3J5cHRfbWF4Yml0czsKLSBfX3UzMiBzYWRiX2NvbWJfcmVzZXJ2ZWQ7Ci0gX191MzIgc2FkYl9jb21iX3NvZnRfYWxsb2NhdGlvbnM7Ci0gX191MzIgc2FkYl9jb21iX2hhcmRfYWxsb2NhdGlvbnM7CisgIF9fdTE2IHNhZGJfY29tYl9lbmNyeXB0X21heGJpdHM7CisgIF9fdTMyIHNhZGJfY29tYl9yZXNlcnZlZDsKKyAgX191MzIgc2FkYl9jb21iX3NvZnRfYWxsb2NhdGlvbnM7CisgIF9fdTMyIHNhZGJfY29tYl9oYXJkX2FsbG9jYXRpb25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzYWRiX2NvbWJfc29mdF9ieXRlczsKLSBfX3U2NCBzYWRiX2NvbWJfaGFyZF9ieXRlczsKLSBfX3U2NCBzYWRiX2NvbWJfc29mdF9hZGR0aW1lOwotIF9fdTY0IHNhZGJfY29tYl9oYXJkX2FkZHRpbWU7CisgIF9fdTY0IHNhZGJfY29tYl9zb2Z0X2J5dGVzOworICBfX3U2NCBzYWRiX2NvbWJfaGFyZF9ieXRlczsKKyAgX191NjQgc2FkYl9jb21iX3NvZnRfYWRkdGltZTsKKyAgX191NjQgc2FkYl9jb21iX2hhcmRfYWRkdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2FkYl9jb21iX3NvZnRfdXNldGltZTsKLSBfX3U2NCBzYWRiX2NvbWJfaGFyZF91c2V0aW1lOworICBfX3U2NCBzYWRiX2NvbWJfc29mdF91c2V0aW1lOworICBfX3U2NCBzYWRiX2NvbWJfaGFyZF91c2V0aW1lOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3N1cHBvcnRlZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfc3VwcG9ydGVkX2xlbjsKLSBfX3UxNiBzYWRiX3N1cHBvcnRlZF9leHR0eXBlOwotIF9fdTMyIHNhZGJfc3VwcG9ydGVkX3Jlc2VydmVkOworICBfX3UxNiBzYWRiX3N1cHBvcnRlZF9sZW47CisgIF9fdTE2IHNhZGJfc3VwcG9ydGVkX2V4dHR5cGU7CisgIF9fdTMyIHNhZGJfc3VwcG9ydGVkX3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2FkYl9hbGcgewotIF9fdTggc2FkYl9hbGdfaWQ7Ci0gX191OCBzYWRiX2FsZ19pdmxlbjsKLSBfX3UxNiBzYWRiX2FsZ19taW5iaXRzOworICBfX3U4IHNhZGJfYWxnX2lkOworICBfX3U4IHNhZGJfYWxnX2l2bGVuOworICBfX3UxNiBzYWRiX2FsZ19taW5iaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX2FsZ19tYXhiaXRzOwotIF9fdTE2IHNhZGJfYWxnX3Jlc2VydmVkOworICBfX3UxNiBzYWRiX2FsZ19tYXhiaXRzOworICBfX3UxNiBzYWRiX2FsZ19yZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9zcGlyYW5nZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfc3BpcmFuZ2VfbGVuOwotIF9fdTE2IHNhZGJfc3BpcmFuZ2VfZXh0dHlwZTsKLSBfX3UzMiBzYWRiX3NwaXJhbmdlX21pbjsKLSBfX3UzMiBzYWRiX3NwaXJhbmdlX21heDsKKyAgX191MTYgc2FkYl9zcGlyYW5nZV9sZW47CisgIF9fdTE2IHNhZGJfc3BpcmFuZ2VfZXh0dHlwZTsKKyAgX191MzIgc2FkYl9zcGlyYW5nZV9taW47CisgIF9fdTMyIHNhZGJfc3BpcmFuZ2VfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYWRiX3NwaXJhbmdlX3Jlc2VydmVkOworICBfX3UzMiBzYWRiX3NwaXJhbmdlX3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3hfa21wcml2YXRlIHsKLSBfX3UxNiBzYWRiX3hfa21wcml2YXRlX2xlbjsKKyAgX191MTYgc2FkYl94X2ttcHJpdmF0ZV9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfeF9rbXByaXZhdGVfZXh0dHlwZTsKLSBfX3UzMiBzYWRiX3hfa21wcml2YXRlX3Jlc2VydmVkOworICBfX3UxNiBzYWRiX3hfa21wcml2YXRlX2V4dHR5cGU7CisgIF9fdTMyIHNhZGJfeF9rbXByaXZhdGVfcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfeF9zYTIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX3hfc2EyX2xlbjsKLSBfX3UxNiBzYWRiX3hfc2EyX2V4dHR5cGU7Ci0gX191OCBzYWRiX3hfc2EyX21vZGU7Ci0gX191OCBzYWRiX3hfc2EyX3Jlc2VydmVkMTsKKyAgX191MTYgc2FkYl94X3NhMl9sZW47CisgIF9fdTE2IHNhZGJfeF9zYTJfZXh0dHlwZTsKKyAgX191OCBzYWRiX3hfc2EyX21vZGU7CisgIF9fdTggc2FkYl94X3NhMl9yZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfeF9zYTJfcmVzZXJ2ZWQyOwotIF9fdTMyIHNhZGJfeF9zYTJfc2VxdWVuY2U7Ci0gX191MzIgc2FkYl94X3NhMl9yZXFpZDsKKyAgX191MTYgc2FkYl94X3NhMl9yZXNlcnZlZDI7CisgIF9fdTMyIHNhZGJfeF9zYTJfc2VxdWVuY2U7CisgIF9fdTMyIHNhZGJfeF9zYTJfcmVxaWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzYWRiX3hfcG9saWN5IHsKLSBfX3UxNiBzYWRiX3hfcG9saWN5X2xlbjsKLSBfX3UxNiBzYWRiX3hfcG9saWN5X2V4dHR5cGU7Ci0gX191MTYgc2FkYl94X3BvbGljeV90eXBlOworICBfX3UxNiBzYWRiX3hfcG9saWN5X2xlbjsKKyAgX191MTYgc2FkYl94X3BvbGljeV9leHR0eXBlOworICBfX3UxNiBzYWRiX3hfcG9saWN5X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkYl94X3BvbGljeV9kaXI7Ci0gX191OCBzYWRiX3hfcG9saWN5X3Jlc2VydmVkOwotIF9fdTMyIHNhZGJfeF9wb2xpY3lfaWQ7Ci0gX191MzIgc2FkYl94X3BvbGljeV9wcmlvcml0eTsKKyAgX191OCBzYWRiX3hfcG9saWN5X2RpcjsKKyAgX191OCBzYWRiX3hfcG9saWN5X3Jlc2VydmVkOworICBfX3UzMiBzYWRiX3hfcG9saWN5X2lkOworICBfX3UzMiBzYWRiX3hfcG9saWN5X3ByaW9yaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl94X2lwc2VjcmVxdWVzdCB7Ci0gX191MTYgc2FkYl94X2lwc2VjcmVxdWVzdF9sZW47Ci0gX191MTYgc2FkYl94X2lwc2VjcmVxdWVzdF9wcm90bzsKKyAgX191MTYgc2FkYl94X2lwc2VjcmVxdWVzdF9sZW47CisgIF9fdTE2IHNhZGJfeF9pcHNlY3JlcXVlc3RfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkYl94X2lwc2VjcmVxdWVzdF9tb2RlOwotIF9fdTggc2FkYl94X2lwc2VjcmVxdWVzdF9sZXZlbDsKLSBfX3UxNiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3Jlc2VydmVkMTsKLSBfX3UzMiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3JlcWlkOworICBfX3U4IHNhZGJfeF9pcHNlY3JlcXVlc3RfbW9kZTsKKyAgX191OCBzYWRiX3hfaXBzZWNyZXF1ZXN0X2xldmVsOworICBfX3UxNiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3Jlc2VydmVkMTsKKyAgX191MzIgc2FkYl94X2lwc2VjcmVxdWVzdF9yZXFpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FkYl94X2lwc2VjcmVxdWVzdF9yZXNlcnZlZDI7CisgIF9fdTMyIHNhZGJfeF9pcHNlY3JlcXVlc3RfcmVzZXJ2ZWQyOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3hfbmF0X3RfdHlwZSB7Ci0gX191MTYgc2FkYl94X25hdF90X3R5cGVfbGVuOworICBfX3UxNiBzYWRiX3hfbmF0X3RfdHlwZV9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfeF9uYXRfdF90eXBlX2V4dHR5cGU7Ci0gX191OCBzYWRiX3hfbmF0X3RfdHlwZV90eXBlOwotIF9fdTggc2FkYl94X25hdF90X3R5cGVfcmVzZXJ2ZWRbM107CisgIF9fdTE2IHNhZGJfeF9uYXRfdF90eXBlX2V4dHR5cGU7CisgIF9fdTggc2FkYl94X25hdF90X3R5cGVfdHlwZTsKKyAgX191OCBzYWRiX3hfbmF0X3RfdHlwZV9yZXNlcnZlZFszXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNhZGJfeF9uYXRfdF9wb3J0IHsKLSBfX3UxNiBzYWRiX3hfbmF0X3RfcG9ydF9sZW47Ci0gX191MTYgc2FkYl94X25hdF90X3BvcnRfZXh0dHlwZTsKLSBfX2JlMTYgc2FkYl94X25hdF90X3BvcnRfcG9ydDsKKyAgX191MTYgc2FkYl94X25hdF90X3BvcnRfbGVuOworICBfX3UxNiBzYWRiX3hfbmF0X3RfcG9ydF9leHR0eXBlOworICBfX2JlMTYgc2FkYl94X25hdF90X3BvcnRfcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl94X25hdF90X3BvcnRfcmVzZXJ2ZWQ7CisgIF9fdTE2IHNhZGJfeF9uYXRfdF9wb3J0X3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3hfc2VjX2N0eCB7Ci0gX191MTYgc2FkYl94X3NlY19sZW47CisgIF9fdTE2IHNhZGJfeF9zZWNfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX3hfc2VjX2V4dHR5cGU7Ci0gX191OCBzYWRiX3hfY3R4X2FsZzsKLSBfX3U4IHNhZGJfeF9jdHhfZG9pOwotIF9fdTE2IHNhZGJfeF9jdHhfbGVuOworICBfX3UxNiBzYWRiX3hfc2VjX2V4dHR5cGU7CisgIF9fdTggc2FkYl94X2N0eF9hbGc7CisgIF9fdTggc2FkYl94X2N0eF9kb2k7CisgIF9fdTE2IHNhZGJfeF9jdHhfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl94X2ttYWRkcmVzcyB7Ci0gX191MTYgc2FkYl94X2ttYWRkcmVzc19sZW47Ci0gX191MTYgc2FkYl94X2ttYWRkcmVzc19leHR0eXBlOworICBfX3UxNiBzYWRiX3hfa21hZGRyZXNzX2xlbjsKKyAgX191MTYgc2FkYl94X2ttYWRkcmVzc19leHR0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYWRiX3hfa21hZGRyZXNzX3Jlc2VydmVkOworICBfX3UzMiBzYWRiX3hfa21hZGRyZXNzX3Jlc2VydmVkOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKK3N0cnVjdCBzYWRiX3hfZmlsdGVyIHsKKyAgX191MTYgc2FkYl94X2ZpbHRlcl9sZW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzYWRiX3hfZmlsdGVyX2V4dHR5cGU7CisgIF9fdTMyIHNhZGJfeF9maWx0ZXJfc2FkZHJbNF07CisgIF9fdTMyIHNhZGJfeF9maWx0ZXJfZGFkZHJbNF07CisgIF9fdTE2IHNhZGJfeF9maWx0ZXJfZmFtaWx5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBzYWRiX3hfZmlsdGVyX3NwbGVuOworICBfX3U4IHNhZGJfeF9maWx0ZXJfZHBsZW47CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBTQURCX1JFU0VSVkVEIDAKLSNkZWZpbmUgU0FEQl9HRVRTUEkgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9HRVRTUEkgMQogI2RlZmluZSBTQURCX1VQREFURSAyCiAjZGVmaW5lIFNBREJfQUREIDMKICNkZWZpbmUgU0FEQl9ERUxFVEUgNAotI2RlZmluZSBTQURCX0dFVCA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX0dFVCA1CiAjZGVmaW5lIFNBREJfQUNRVUlSRSA2CiAjZGVmaW5lIFNBREJfUkVHSVNURVIgNwogI2RlZmluZSBTQURCX0VYUElSRSA4Ci0jZGVmaW5lIFNBREJfRkxVU0ggOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9GTFVTSCA5CiAjZGVmaW5lIFNBREJfRFVNUCAxMAogI2RlZmluZSBTQURCX1hfUFJPTUlTQyAxMQogI2RlZmluZSBTQURCX1hfUENIQU5HRSAxMgotI2RlZmluZSBTQURCX1hfU1BEVVBEQVRFIDEzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfU1BEVVBEQVRFIDEzCiAjZGVmaW5lIFNBREJfWF9TUERBREQgMTQKICNkZWZpbmUgU0FEQl9YX1NQRERFTEVURSAxNQogI2RlZmluZSBTQURCX1hfU1BER0VUIDE2Ci0jZGVmaW5lIFNBREJfWF9TUERBQ1FVSVJFIDE3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfU1BEQUNRVUlSRSAxNwogI2RlZmluZSBTQURCX1hfU1BERFVNUCAxOAogI2RlZmluZSBTQURCX1hfU1BERkxVU0ggMTkKICNkZWZpbmUgU0FEQl9YX1NQRFNFVElEWCAyMAotI2RlZmluZSBTQURCX1hfU1BERVhQSVJFIDIxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfU1BERVhQSVJFIDIxCiAjZGVmaW5lIFNBREJfWF9TUERERUxFVEUyIDIyCiAjZGVmaW5lIFNBREJfWF9OQVRfVF9ORVdfTUFQUElORyAyMwogI2RlZmluZSBTQURCX1hfTUlHUkFURSAyNAotI2RlZmluZSBTQURCX01BWCAyNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9NQVggMjQKICNkZWZpbmUgU0FEQl9TQUZMQUdTX1BGUyAxCiAjZGVmaW5lIFNBREJfU0FGTEFHU19OT1BNVFVESVNDIDB4MjAwMDAwMDAKICNkZWZpbmUgU0FEQl9TQUZMQUdTX0RFQ0FQX0RTQ1AgMHg0MDAwMDAwMAotI2RlZmluZSBTQURCX1NBRkxBR1NfTk9FQ04gMHg4MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9TQUZMQUdTX05PRUNOIDB4ODAwMDAwMDAKICNkZWZpbmUgU0FEQl9TQVNUQVRFX0xBUlZBTCAwCiAjZGVmaW5lIFNBREJfU0FTVEFURV9NQVRVUkUgMQogI2RlZmluZSBTQURCX1NBU1RBVEVfRFlJTkcgMgotI2RlZmluZSBTQURCX1NBU1RBVEVfREVBRCAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1NBU1RBVEVfREVBRCAzCiAjZGVmaW5lIFNBREJfU0FTVEFURV9NQVggMwogI2RlZmluZSBTQURCX1NBVFlQRV9VTlNQRUMgMAogI2RlZmluZSBTQURCX1NBVFlQRV9BSCAyCi0jZGVmaW5lIFNBREJfU0FUWVBFX0VTUCAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1NBVFlQRV9FU1AgMwogI2RlZmluZSBTQURCX1NBVFlQRV9SU1ZQIDUKICNkZWZpbmUgU0FEQl9TQVRZUEVfT1NQRlYyIDYKICNkZWZpbmUgU0FEQl9TQVRZUEVfUklQVjIgNwotI2RlZmluZSBTQURCX1NBVFlQRV9NSVAgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9TQVRZUEVfTUlQIDgKICNkZWZpbmUgU0FEQl9YX1NBVFlQRV9JUENPTVAgOQogI2RlZmluZSBTQURCX1NBVFlQRV9NQVggOQogI2RlZmluZSBTQURCX0FBTEdfTk9ORSAwCi0jZGVmaW5lIFNBREJfQUFMR19NRDVITUFDIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfQUFMR19NRDVITUFDIDIKICNkZWZpbmUgU0FEQl9BQUxHX1NIQTFITUFDIDMKICNkZWZpbmUgU0FEQl9YX0FBTEdfU0hBMl8yNTZITUFDIDUKICNkZWZpbmUgU0FEQl9YX0FBTEdfU0hBMl8zODRITUFDIDYKLSNkZWZpbmUgU0FEQl9YX0FBTEdfU0hBMl81MTJITUFDIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9BQUxHX1NIQTJfNTEySE1BQyA3CiAjZGVmaW5lIFNBREJfWF9BQUxHX1JJUEVNRDE2MEhNQUMgOAogI2RlZmluZSBTQURCX1hfQUFMR19BRVNfWENCQ19NQUMgOQogI2RlZmluZSBTQURCX1hfQUFMR19OVUxMIDI1MQotI2RlZmluZSBTQURCX0FBTEdfTUFYIDI1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9BQUxHX01BWCAyNTEKICNkZWZpbmUgU0FEQl9FQUxHX05PTkUgMAogI2RlZmluZSBTQURCX0VBTEdfREVTQ0JDIDIKICNkZWZpbmUgU0FEQl9FQUxHXzNERVNDQkMgMwotI2RlZmluZSBTQURCX1hfRUFMR19DQVNUQ0JDIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9FQUxHX0NBU1RDQkMgNgogI2RlZmluZSBTQURCX1hfRUFMR19CTE9XRklTSENCQyA3CiAjZGVmaW5lIFNBREJfRUFMR19OVUxMIDExCiAjZGVmaW5lIFNBREJfWF9FQUxHX0FFU0NCQyAxMgotI2RlZmluZSBTQURCX1hfRUFMR19BRVNDVFIgMTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9FQUxHX0FFU0NUUiAxMwogI2RlZmluZSBTQURCX1hfRUFMR19BRVNfQ0NNX0lDVjggMTQKICNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTX0NDTV9JQ1YxMiAxNQogI2RlZmluZSBTQURCX1hfRUFMR19BRVNfQ0NNX0lDVjE2IDE2Ci0jZGVmaW5lIFNBREJfWF9FQUxHX0FFU19HQ01fSUNWOCAxOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTX0dDTV9JQ1Y4IDE4CiAjZGVmaW5lIFNBREJfWF9FQUxHX0FFU19HQ01fSUNWMTIgMTkKICNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTX0dDTV9JQ1YxNiAyMAogI2RlZmluZSBTQURCX1hfRUFMR19DQU1FTExJQUNCQyAyMgotI2RlZmluZSBTQURCX1hfRUFMR19OVUxMX0FFU19HTUFDIDIzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfRUFMR19OVUxMX0FFU19HTUFDIDIzCiAjZGVmaW5lIFNBREJfRUFMR19NQVggMjUzCiAjZGVmaW5lIFNBREJfWF9FQUxHX1NFUlBFTlRDQkMgMjUyCiAjZGVmaW5lIFNBREJfWF9FQUxHX1RXT0ZJU0hDQkMgMjUzCi0jZGVmaW5lIFNBREJfWF9DQUxHX05PTkUgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0NBTEdfTk9ORSAwCiAjZGVmaW5lIFNBREJfWF9DQUxHX09VSSAxCiAjZGVmaW5lIFNBREJfWF9DQUxHX0RFRkxBVEUgMgogI2RlZmluZSBTQURCX1hfQ0FMR19MWlMgMwotI2RlZmluZSBTQURCX1hfQ0FMR19MWkpIIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9DQUxHX0xaSkggNAogI2RlZmluZSBTQURCX1hfQ0FMR19NQVggNAogI2RlZmluZSBTQURCX0VYVF9SRVNFUlZFRCAwCiAjZGVmaW5lIFNBREJfRVhUX1NBIDEKLSNkZWZpbmUgU0FEQl9FWFRfTElGRVRJTUVfQ1VSUkVOVCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX0VYVF9MSUZFVElNRV9DVVJSRU5UIDIKICNkZWZpbmUgU0FEQl9FWFRfTElGRVRJTUVfSEFSRCAzCiAjZGVmaW5lIFNBREJfRVhUX0xJRkVUSU1FX1NPRlQgNAogI2RlZmluZSBTQURCX0VYVF9BRERSRVNTX1NSQyA1Ci0jZGVmaW5lIFNBREJfRVhUX0FERFJFU1NfRFNUIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfRVhUX0FERFJFU1NfRFNUIDYKICNkZWZpbmUgU0FEQl9FWFRfQUREUkVTU19QUk9YWSA3CiAjZGVmaW5lIFNBREJfRVhUX0tFWV9BVVRIIDgKICNkZWZpbmUgU0FEQl9FWFRfS0VZX0VOQ1JZUFQgOQotI2RlZmluZSBTQURCX0VYVF9JREVOVElUWV9TUkMgMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfRVhUX0lERU5USVRZX1NSQyAxMAogI2RlZmluZSBTQURCX0VYVF9JREVOVElUWV9EU1QgMTEKICNkZWZpbmUgU0FEQl9FWFRfU0VOU0lUSVZJVFkgMTIKICNkZWZpbmUgU0FEQl9FWFRfUFJPUE9TQUwgMTMKLSNkZWZpbmUgU0FEQl9FWFRfU1VQUE9SVEVEX0FVVEggMTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfRVhUX1NVUFBPUlRFRF9BVVRIIDE0CiAjZGVmaW5lIFNBREJfRVhUX1NVUFBPUlRFRF9FTkNSWVBUIDE1CiAjZGVmaW5lIFNBREJfRVhUX1NQSVJBTkdFIDE2CiAjZGVmaW5lIFNBREJfWF9FWFRfS01QUklWQVRFIDE3Ci0jZGVmaW5lIFNBREJfWF9FWFRfUE9MSUNZIDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfRVhUX1BPTElDWSAxOAogI2RlZmluZSBTQURCX1hfRVhUX1NBMiAxOQogI2RlZmluZSBTQURCX1hfRVhUX05BVF9UX1RZUEUgMjAKICNkZWZpbmUgU0FEQl9YX0VYVF9OQVRfVF9TUE9SVCAyMQotI2RlZmluZSBTQURCX1hfRVhUX05BVF9UX0RQT1JUIDIyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfRVhUX05BVF9UX0RQT1JUIDIyCiAjZGVmaW5lIFNBREJfWF9FWFRfTkFUX1RfT0EgMjMKICNkZWZpbmUgU0FEQl9YX0VYVF9TRUNfQ1RYIDI0CiAjZGVmaW5lIFNBREJfWF9FWFRfS01BRERSRVNTIDI1Ci0jZGVmaW5lIFNBREJfRVhUX01BWCAyNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0VYVF9GSUxURVIgMjYKKyNkZWZpbmUgU0FEQl9FWFRfTUFYIDI2CiAjZGVmaW5lIFNBREJfSURFTlRUWVBFX1JFU0VSVkVEIDAKICNkZWZpbmUgU0FEQl9JREVOVFRZUEVfUFJFRklYIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBREJfSURFTlRUWVBFX0ZRRE4gMgogI2RlZmluZSBTQURCX0lERU5UVFlQRV9VU0VSRlFETiAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQURCX0lERU5UVFlQRV9NQVggMwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZy5oCmluZGV4IDgyNjg2ZGEuLmRiODg0NDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BnLmgKQEAgLTIyLDE5ICsyMiwxOSBAQAogI2RlZmluZSBQR19NQVhfREFUQSAzMjc2OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwZ193cml0ZV9oZHIgewotIGNoYXIgbWFnaWM7Ci0gY2hhciBmdW5jOwotIGludCBkbGVuOworICBjaGFyIG1hZ2ljOworICBjaGFyIGZ1bmM7CisgIGludCBkbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGltZW91dDsKLSBjaGFyIHBhY2tldFsxMl07CisgIGludCB0aW1lb3V0OworICBjaGFyIHBhY2tldFsxMl07CiB9Owogc3RydWN0IHBnX3JlYWRfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtYWdpYzsKLSBjaGFyIHNjc2k7Ci0gaW50IGRsZW47Ci0gaW50IGR1cmF0aW9uOworICBjaGFyIG1hZ2ljOworICBjaGFyIHNjc2k7CisgIGludCBkbGVuOworICBpbnQgZHVyYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcGFkWzEyXTsKKyAgY2hhciBwYWRbMTJdOwogfTsKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGhhbnRvbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waGFudG9tLmgKaW5kZXggZDQzNmVjMS4uMGRhMTQxMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waGFudG9tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waGFudG9tLmgKQEAgLTIxLDE0ICsyMSwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgcGhtX3JlZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlZzsKLSBfX3UzMiB2YWx1ZTsKKyAgX191MzIgcmVnOworICBfX3UzMiB2YWx1ZTsKIH07CiBzdHJ1Y3QgcGhtX3JlZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKLSBfX3UzMiBtYXNrOwotIF9fdTMyIHZhbHVlc1s4XTsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIG1hc2s7CisgIF9fdTMyIHZhbHVlc1s4XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQSF9JT0NfTUFHSUMgJ3AnCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bob25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waG9uZXQuaAppbmRleCA0MDEzMmJkLi4yYjVlNzg3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bob25ldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGhvbmV0LmgKQEAgLTQzLDMyICs0MywzMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lPQ1BOREVMUkVTT1VSQ0UgKFNJT0NQUk9UT1BSSVZBVEUgKyAxNSkKIHN0cnVjdCBwaG9uZXRoZHIgewotIF9fdTggcG5fcmRldjsKLSBfX3U4IHBuX3NkZXY7CisgIF9fdTggcG5fcmRldjsKKyAgX191OCBwbl9zZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBuX3JlczsKLSBfX2JlMTYgcG5fbGVuZ3RoOwotIF9fdTggcG5fcm9iajsKLSBfX3U4IHBuX3NvYmo7CisgIF9fdTggcG5fcmVzOworICBfX2JlMTYgcG5fbGVuZ3RoOworICBfX3U4IHBuX3JvYmo7CisgIF9fdTggcG5fc29iajsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHBob25ldG1zZyB7Ci0gX191OCBwbl90cmFuc19pZDsKLSBfX3U4IHBuX21zZ19pZDsKKyAgX191OCBwbl90cmFuc19pZDsKKyAgX191OCBwbl9tc2dfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTggcG5fc3VibXNnX2lkOwotIF9fdTggcG5fZGF0YVs1XTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IHBuX3N1Ym1zZ19pZDsKKyAgICAgIF9fdTggcG5fZGF0YVs1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBiYXNlOwotIHN0cnVjdCB7Ci0gX191MTYgcG5fZV9yZXNfaWQ7Ci0gX191OCBwbl9lX3N1Ym1zZ19pZDsKKyAgICB9IGJhc2U7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IHBuX2VfcmVzX2lkOworICAgICAgX191OCBwbl9lX3N1Ym1zZ19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwbl9lX2RhdGFbM107Ci0gfSBleHQ7Ci0gfSBwbl9tc2dfdTsKKyAgICAgIF9fdTggcG5fZV9kYXRhWzNdOworICAgIH0gZXh0OworICB9IHBuX21zZ191OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBOX0NPTU1PTl9NRVNTQUdFIDB4RjAKQEAgLTg5LDEyICs4OSwxMiBAQAogI2RlZmluZSBwbl9lX29yaWdfbXNnX2lkIHBuX2VfZGF0YVswXQogI2RlZmluZSBwbl9lX3N0YXR1cyBwbl9lX2RhdGFbMV0KIHN0cnVjdCBzb2NrYWRkcl9wbiB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3BuX2ZhbWlseTsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3BuX2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcG5fb2JqOwotIF9fdTggc3BuX2RldjsKLSBfX3U4IHNwbl9yZXNvdXJjZTsKLSBfX3U4IHNwbl96ZXJvW3NpemVvZihzdHJ1Y3Qgc29ja2FkZHIpIC0gc2l6ZW9mKF9fa2VybmVsX3NhX2ZhbWlseV90KSAtIDNdOworICBfX3U4IHNwbl9vYmo7CisgIF9fdTggc3BuX2RldjsKKyAgX191OCBzcG5fcmVzb3VyY2U7CisgIF9fdTggc3BuX3plcm9bc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLSBzaXplb2YoX19rZXJuZWxfc2FfZmFtaWx5X3QpIC0gM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUE5fREVWX1BDIDB4MTAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0X2Nscy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RfY2xzLmgKaW5kZXggOTJlYTBkZi4uOGM4N2JhZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RfY2xzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RfY2xzLmgKQEAgLTIzLDI4ICsyMywyOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1RDX01BS0UzMih4KSAoKHgpKQogI2RlZmluZSBfVENfTUFLRU1BU0sxKG4pIChfVENfTUFLRTMyKDEpIDw8IF9UQ19NQUtFMzIobikpCi0jZGVmaW5lIF9UQ19NQUtFTUFTSyh2LG4pIChfVENfTUFLRTMyKChfVENfTUFLRTMyKDEpPDwodikpLTEpIDw8IF9UQ19NQUtFMzIobikpCisjZGVmaW5lIF9UQ19NQUtFTUFTSyh2LG4pIChfVENfTUFLRTMyKChfVENfTUFLRTMyKDEpIDw8ICh2KSkgLSAxKSA8PCBfVENfTUFLRTMyKG4pKQogI2RlZmluZSBfVENfTUFLRVZBTFVFKHYsbikgKF9UQ19NQUtFMzIodikgPDwgX1RDX01BS0UzMihuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9UQ19HRVRWQUxVRSh2LG4sbSkgKChfVENfTUFLRTMyKHYpICYgX1RDX01BS0UzMihtKSkgPj4gX1RDX01BS0UzMihuKSkKICNkZWZpbmUgVENfTVVOR0VEIF9UQ19NQUtFTUFTSzEoMCkKLSNkZWZpbmUgU0VUX1RDX01VTkdFRCh2KSAoIFRDX01VTkdFRCB8ICh2ICYgflRDX01VTkdFRCkpCi0jZGVmaW5lIENMUl9UQ19NVU5HRUQodikgKCB2ICYgflRDX01VTkdFRCkKKyNkZWZpbmUgU0VUX1RDX01VTkdFRCh2KSAoVENfTVVOR0VEIHwgKHYgJiB+VENfTVVOR0VEKSkKKyNkZWZpbmUgQ0xSX1RDX01VTkdFRCh2KSAodiAmIH5UQ19NVU5HRUQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19PSzJNVU5HRSBfVENfTUFLRU1BU0sxKDEpCi0jZGVmaW5lIFNFVF9UQ19PSzJNVU5HRSh2KSAoIFRDX09LMk1VTkdFIHwgKHYgJiB+VENfT0syTVVOR0UpKQotI2RlZmluZSBDTFJfVENfT0syTVVOR0UodikgKCB2ICYgflRDX09LMk1VTkdFKQorI2RlZmluZSBTRVRfVENfT0syTVVOR0UodikgKFRDX09LMk1VTkdFIHwgKHYgJiB+VENfT0syTVVOR0UpKQorI2RlZmluZSBDTFJfVENfT0syTVVOR0UodikgKHYgJiB+VENfT0syTVVOR0UpCiAjZGVmaW5lIFNfVENfVkVSRCBfVENfTUFLRTMyKDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNX1RDX1ZFUkQgX1RDX01BS0VNQVNLKDQsU19UQ19WRVJEKQotI2RlZmluZSBHX1RDX1ZFUkQoeCkgX1RDX0dFVFZBTFVFKHgsU19UQ19WRVJELE1fVENfVkVSRCkKLSNkZWZpbmUgVl9UQ19WRVJEKHgpIF9UQ19NQUtFVkFMVUUoeCxTX1RDX1ZFUkQpCisjZGVmaW5lIE1fVENfVkVSRCBfVENfTUFLRU1BU0soNCwgU19UQ19WRVJEKQorI2RlZmluZSBHX1RDX1ZFUkQoeCkgX1RDX0dFVFZBTFVFKHgsIFNfVENfVkVSRCwgTV9UQ19WRVJEKQorI2RlZmluZSBWX1RDX1ZFUkQoeCkgX1RDX01BS0VWQUxVRSh4LCBTX1RDX1ZFUkQpCiAjZGVmaW5lIFNFVF9UQ19WRVJEKHYsbikgKChWX1RDX1ZFUkQobikpIHwgKHYgJiB+TV9UQ19WRVJEKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNfVENfRlJPTSBfVENfTUFLRTMyKDYpCi0jZGVmaW5lIE1fVENfRlJPTSBfVENfTUFLRU1BU0soMixTX1RDX0ZST00pCi0jZGVmaW5lIEdfVENfRlJPTSh4KSBfVENfR0VUVkFMVUUoeCxTX1RDX0ZST00sTV9UQ19GUk9NKQotI2RlZmluZSBWX1RDX0ZST00oeCkgX1RDX01BS0VWQUxVRSh4LFNfVENfRlJPTSkKKyNkZWZpbmUgTV9UQ19GUk9NIF9UQ19NQUtFTUFTSygyLCBTX1RDX0ZST00pCisjZGVmaW5lIEdfVENfRlJPTSh4KSBfVENfR0VUVkFMVUUoeCwgU19UQ19GUk9NLCBNX1RDX0ZST00pCisjZGVmaW5lIFZfVENfRlJPTSh4KSBfVENfTUFLRVZBTFVFKHgsIFNfVENfRlJPTSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFVF9UQ19GUk9NKHYsbikgKChWX1RDX0ZST00obikpIHwgKHYgJiB+TV9UQ19GUk9NKSkKICNkZWZpbmUgQVRfU1RBQ0sgMHgwCkBAIC01MiwzMyArNTIsMzMgQEAKICNkZWZpbmUgQVRfRUdSRVNTIDB4MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfTkNMUyBfVENfTUFLRU1BU0sxKDgpCi0jZGVmaW5lIFNFVF9UQ19OQ0xTKHYpICggVENfTkNMUyB8ICh2ICYgflRDX05DTFMpKQotI2RlZmluZSBDTFJfVENfTkNMUyh2KSAoIHYgJiB+VENfTkNMUykKKyNkZWZpbmUgU0VUX1RDX05DTFModikgKFRDX05DTFMgfCAodiAmIH5UQ19OQ0xTKSkKKyNkZWZpbmUgQ0xSX1RDX05DTFModikgKHYgJiB+VENfTkNMUykKICNkZWZpbmUgU19UQ19SVFRMIF9UQ19NQUtFMzIoOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1fVENfUlRUTCBfVENfTUFLRU1BU0soMyxTX1RDX1JUVEwpCi0jZGVmaW5lIEdfVENfUlRUTCh4KSBfVENfR0VUVkFMVUUoeCxTX1RDX1JUVEwsTV9UQ19SVFRMKQotI2RlZmluZSBWX1RDX1JUVEwoeCkgX1RDX01BS0VWQUxVRSh4LFNfVENfUlRUTCkKKyNkZWZpbmUgTV9UQ19SVFRMIF9UQ19NQUtFTUFTSygzLCBTX1RDX1JUVEwpCisjZGVmaW5lIEdfVENfUlRUTCh4KSBfVENfR0VUVkFMVUUoeCwgU19UQ19SVFRMLCBNX1RDX1JUVEwpCisjZGVmaW5lIFZfVENfUlRUTCh4KSBfVENfTUFLRVZBTFVFKHgsIFNfVENfUlRUTCkKICNkZWZpbmUgU0VUX1RDX1JUVEwodixuKSAoKFZfVENfUlRUTChuKSkgfCAodiAmIH5NX1RDX1JUVEwpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU19UQ19BVCBfVENfTUFLRTMyKDEyKQotI2RlZmluZSBNX1RDX0FUIF9UQ19NQUtFTUFTSygyLFNfVENfQVQpCi0jZGVmaW5lIEdfVENfQVQoeCkgX1RDX0dFVFZBTFVFKHgsU19UQ19BVCxNX1RDX0FUKQotI2RlZmluZSBWX1RDX0FUKHgpIF9UQ19NQUtFVkFMVUUoeCxTX1RDX0FUKQorI2RlZmluZSBNX1RDX0FUIF9UQ19NQUtFTUFTSygyLCBTX1RDX0FUKQorI2RlZmluZSBHX1RDX0FUKHgpIF9UQ19HRVRWQUxVRSh4LCBTX1RDX0FULCBNX1RDX0FUKQorI2RlZmluZSBWX1RDX0FUKHgpIF9UQ19NQUtFVkFMVUUoeCwgU19UQ19BVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFVF9UQ19BVCh2LG4pICgoVl9UQ19BVChuKSkgfCAodiAmIH5NX1RDX0FUKSkKIGVudW0gewotIFRDQV9BQ1RfVU5TUEVDLAotIFRDQV9BQ1RfS0lORCwKKyAgVENBX0FDVF9VTlNQRUMsCisgIFRDQV9BQ1RfS0lORCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0FDVF9PUFRJT05TLAotIFRDQV9BQ1RfSU5ERVgsCi0gVENBX0FDVF9TVEFUUywKLSBfX1RDQV9BQ1RfTUFYCisgIFRDQV9BQ1RfT1BUSU9OUywKKyAgVENBX0FDVF9JTkRFWCwKKyAgVENBX0FDVF9TVEFUUywKKyAgX19UQ0FfQUNUX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDQV9BQ1RfTUFYIF9fVENBX0FDVF9NQVgKLSNkZWZpbmUgVENBX09MRF9DT01QQVQgKFRDQV9BQ1RfTUFYKzEpCisjZGVmaW5lIFRDQV9PTERfQ09NUEFUIChUQ0FfQUNUX01BWCArIDEpCiAjZGVmaW5lIFRDQV9BQ1RfTUFYX1BSSU8gMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfQklORCAxCkBAIC05MSw3ICs5MSw3IEBACiAjZGVmaW5lIE1BWF9SRUNfTE9PUCA0CiAjZGVmaW5lIE1BWF9SRURfTE9PUCA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUQ19BQ1RfVU5TUEVDICgtMSkKKyNkZWZpbmUgVENfQUNUX1VOU1BFQyAoLSAxKQogI2RlZmluZSBUQ19BQ1RfT0sgMAogI2RlZmluZSBUQ19BQ1RfUkVDTEFTU0lGWSAxCiAjZGVmaW5lIFRDX0FDVF9TSE9UIDIKQEAgLTEwMywxMjAgKzEwMywxMjAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX0FDVF9KVU1QIDB4MTAwMDAwMDAKIGVudW0gewotIFRDQV9JRF9VTlNQRUM9MCwKLSBUQ0FfSURfUE9MSUNFPTEsCisgIFRDQV9JRF9VTlNQRUMgPSAwLAorICBUQ0FfSURfUE9MSUNFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19UQ0FfSURfTUFYPTI1NQorICBfX1RDQV9JRF9NQVggPSAyNTUKIH07CiAjZGVmaW5lIFRDQV9JRF9NQVggX19UQ0FfSURfTUFYCiBzdHJ1Y3QgdGNfcG9saWNlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gaW50IGFjdGlvbjsKKyAgX191MzIgaW5kZXg7CisgIGludCBhY3Rpb247CiAjZGVmaW5lIFRDX1BPTElDRV9VTlNQRUMgVENfQUNUX1VOU1BFQwogI2RlZmluZSBUQ19QT0xJQ0VfT0sgVENfQUNUX09LCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19QT0xJQ0VfUkVDTEFTU0lGWSBUQ19BQ1RfUkVDTEFTU0lGWQogI2RlZmluZSBUQ19QT0xJQ0VfU0hPVCBUQ19BQ1RfU0hPVAogI2RlZmluZSBUQ19QT0xJQ0VfUElQRSBUQ19BQ1RfUElQRQotIF9fdTMyIGxpbWl0OworICBfX3UzMiBsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVyc3Q7Ci0gX191MzIgbXR1OwotIHN0cnVjdCB0Y19yYXRlc3BlYyByYXRlOwotIHN0cnVjdCB0Y19yYXRlc3BlYyBwZWFrcmF0ZTsKKyAgX191MzIgYnVyc3Q7CisgIF9fdTMyIG10dTsKKyAgc3RydWN0IHRjX3JhdGVzcGVjIHJhdGU7CisgIHN0cnVjdCB0Y19yYXRlc3BlYyBwZWFrcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJlZmNudDsKLSBpbnQgYmluZGNudDsKLSBfX3UzMiBjYXBhYjsKKyAgaW50IHJlZmNudDsKKyAgaW50IGJpbmRjbnQ7CisgIF9fdTMyIGNhcGFiOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNmX3QgewotIF9fdTY0IGluc3RhbGw7Ci0gX191NjQgbGFzdHVzZTsKLSBfX3U2NCBleHBpcmVzOworICBfX3U2NCBpbnN0YWxsOworICBfX3U2NCBsYXN0dXNlOworICBfX3U2NCBleHBpcmVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfY250IHsKLSBpbnQgcmVmY250OwotIGludCBiaW5kY250OworICBpbnQgcmVmY250OworICBpbnQgYmluZGNudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSB0Y19nZW4gICBfX3UzMiBpbmRleDsgICBfX3UzMiBjYXBhYjsgICBpbnQgYWN0aW9uOyAgIGludCByZWZjbnQ7ICAgaW50IGJpbmRjbnQKKyNkZWZpbmUgdGNfZ2VuIF9fdTMyIGluZGV4OyBfX3UzMiBjYXBhYjsgaW50IGFjdGlvbjsgaW50IHJlZmNudDsgaW50IGJpbmRjbnQKIGVudW0gewotIFRDQV9QT0xJQ0VfVU5TUEVDLAorICBUQ0FfUE9MSUNFX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1BPTElDRV9UQkYsCi0gVENBX1BPTElDRV9SQVRFLAotIFRDQV9QT0xJQ0VfUEVBS1JBVEUsCi0gVENBX1BPTElDRV9BVlJBVEUsCisgIFRDQV9QT0xJQ0VfVEJGLAorICBUQ0FfUE9MSUNFX1JBVEUsCisgIFRDQV9QT0xJQ0VfUEVBS1JBVEUsCisgIFRDQV9QT0xJQ0VfQVZSQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUE9MSUNFX1JFU1VMVCwKLSBfX1RDQV9QT0xJQ0VfTUFYCisgIFRDQV9QT0xJQ0VfUkVTVUxULAorICBfX1RDQV9QT0xJQ0VfTUFYCiAjZGVmaW5lIFRDQV9QT0xJQ0VfUkVTVUxUIFRDQV9QT0xJQ0VfUkVTVUxUCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX1BPTElDRV9NQVggKF9fVENBX1BPTElDRV9NQVggLSAxKQotI2RlZmluZSBUQ19VMzJfSFRJRChoKSAoKGgpJjB4RkZGMDAwMDApCi0jZGVmaW5lIFRDX1UzMl9VU0VSSFRJRChoKSAoVENfVTMyX0hUSUQoaCk+PjIwKQotI2RlZmluZSBUQ19VMzJfSEFTSChoKSAoKChoKT4+MTIpJjB4RkYpCisjZGVmaW5lIFRDX1UzMl9IVElEKGgpICgoaCkgJiAweEZGRjAwMDAwKQorI2RlZmluZSBUQ19VMzJfVVNFUkhUSUQoaCkgKFRDX1UzMl9IVElEKGgpID4+IDIwKQorI2RlZmluZSBUQ19VMzJfSEFTSChoKSAoKChoKSA+PiAxMikgJiAweEZGKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVENfVTMyX05PREUoaCkgKChoKSYweEZGRikKLSNkZWZpbmUgVENfVTMyX0tFWShoKSAoKGgpJjB4RkZGRkYpCisjZGVmaW5lIFRDX1UzMl9OT0RFKGgpICgoaCkgJiAweEZGRikKKyNkZWZpbmUgVENfVTMyX0tFWShoKSAoKGgpICYgMHhGRkZGRikKICNkZWZpbmUgVENfVTMyX1VOU1BFQyAwCiAjZGVmaW5lIFRDX1UzMl9ST09UICgweEZGRjAwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9VMzJfVU5TUEVDLAotIFRDQV9VMzJfQ0xBU1NJRCwKLSBUQ0FfVTMyX0hBU0gsCisgIFRDQV9VMzJfVU5TUEVDLAorICBUQ0FfVTMyX0NMQVNTSUQsCisgIFRDQV9VMzJfSEFTSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1UzMl9MSU5LLAotIFRDQV9VMzJfRElWSVNPUiwKLSBUQ0FfVTMyX1NFTCwKLSBUQ0FfVTMyX1BPTElDRSwKKyAgVENBX1UzMl9MSU5LLAorICBUQ0FfVTMyX0RJVklTT1IsCisgIFRDQV9VMzJfU0VMLAorICBUQ0FfVTMyX1BPTElDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1UzMl9BQ1QsCi0gVENBX1UzMl9JTkRFViwKLSBUQ0FfVTMyX1BDTlQsCi0gVENBX1UzMl9NQVJLLAorICBUQ0FfVTMyX0FDVCwKKyAgVENBX1UzMl9JTkRFViwKKyAgVENBX1UzMl9QQ05ULAorICBUQ0FfVTMyX01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX1UzMl9NQVgKKyAgX19UQ0FfVTMyX01BWAogfTsKICNkZWZpbmUgVENBX1UzMl9NQVggKF9fVENBX1UzMl9NQVggLSAxKQogc3RydWN0IHRjX3UzMl9rZXkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbWFzazsKLSBfX2JlMzIgdmFsOwotIGludCBvZmY7Ci0gaW50IG9mZm1hc2s7CisgIF9fYmUzMiBtYXNrOworICBfX2JlMzIgdmFsOworICBpbnQgb2ZmOworICBpbnQgb2ZmbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRjX3UzMl9zZWwgewotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7Ci0gdW5zaWduZWQgY2hhciBvZmZzaGlmdDsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKKyAgdW5zaWduZWQgY2hhciBvZmZzaGlmdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBua2V5czsKLSBfX2JlMTYgb2ZmbWFzazsKLSBfX3UxNiBvZmY7Ci0gc2hvcnQgb2Zmb2ZmOworICB1bnNpZ25lZCBjaGFyIG5rZXlzOworICBfX2JlMTYgb2ZmbWFzazsKKyAgX191MTYgb2ZmOworICBzaG9ydCBvZmZvZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGhvZmY7Ci0gX19iZTMyIGhtYXNrOwotIHN0cnVjdCB0Y191MzJfa2V5IGtleXNbMF07CisgIHNob3J0IGhvZmY7CisgIF9fYmUzMiBobWFzazsKKyAgc3RydWN0IHRjX3UzMl9rZXkga2V5c1swXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3UzMl9tYXJrIHsKLSBfX3UzMiB2YWw7Ci0gX191MzIgbWFzazsKLSBfX3UzMiBzdWNjZXNzOworICBfX3UzMiB2YWw7CisgIF9fdTMyIG1hc2s7CisgIF9fdTMyIHN1Y2Nlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y191MzJfcGNudCB7Ci0gX191NjQgcmNudDsKLSBfX3U2NCByaGl0OworICBfX3U2NCByY250OworICBfX3U2NCByaGl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBrY250c1swXTsKKyAgX191NjQga2NudHNbMF07CiB9OwogI2RlZmluZSBUQ19VMzJfVEVSTUlOQUwgMQogI2RlZmluZSBUQ19VMzJfT0ZGU0VUIDIKQEAgLTIyNiwxOTkgKzIyNiwxOTkgQEAKICNkZWZpbmUgVENfVTMyX01BWERFUFRIIDgKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUlNWUF9VTlNQRUMsCi0gVENBX1JTVlBfQ0xBU1NJRCwKLSBUQ0FfUlNWUF9EU1QsCi0gVENBX1JTVlBfU1JDLAorICBUQ0FfUlNWUF9VTlNQRUMsCisgIFRDQV9SU1ZQX0NMQVNTSUQsCisgIFRDQV9SU1ZQX0RTVCwKKyAgVENBX1JTVlBfU1JDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUlNWUF9QSU5GTywKLSBUQ0FfUlNWUF9QT0xJQ0UsCi0gVENBX1JTVlBfQUNULAotIF9fVENBX1JTVlBfTUFYCisgIFRDQV9SU1ZQX1BJTkZPLAorICBUQ0FfUlNWUF9QT0xJQ0UsCisgIFRDQV9SU1ZQX0FDVCwKKyAgX19UQ0FfUlNWUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBUQ0FfUlNWUF9NQVggKF9fVENBX1JTVlBfTUFYIC0gMSApCisjZGVmaW5lIFRDQV9SU1ZQX01BWCAoX19UQ0FfUlNWUF9NQVggLSAxKQogc3RydWN0IHRjX3JzdnBfZ3BpIHsKLSBfX3UzMiBrZXk7CisgIF9fdTMyIGtleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFzazsKLSBpbnQgb2Zmc2V0OworICBfX3UzMiBtYXNrOworICBpbnQgb2Zmc2V0OwogfTsKIHN0cnVjdCB0Y19yc3ZwX3BpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRjX3JzdnBfZ3BpIGRwaTsKLSBzdHJ1Y3QgdGNfcnN2cF9ncGkgc3BpOwotIF9fdTggcHJvdG9jb2w7Ci0gX191OCB0dW5uZWxpZDsKKyAgc3RydWN0IHRjX3JzdnBfZ3BpIGRwaTsKKyAgc3RydWN0IHRjX3JzdnBfZ3BpIHNwaTsKKyAgX191OCBwcm90b2NvbDsKKyAgX191OCB0dW5uZWxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0dW5uZWxoZHI7Ci0gX191OCBwYWQ7CisgIF9fdTggdHVubmVsaGRyOworICBfX3U4IHBhZDsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1JPVVRFNF9VTlNQRUMsCi0gVENBX1JPVVRFNF9DTEFTU0lELAotIFRDQV9ST1VURTRfVE8sCi0gVENBX1JPVVRFNF9GUk9NLAorICBUQ0FfUk9VVEU0X1VOU1BFQywKKyAgVENBX1JPVVRFNF9DTEFTU0lELAorICBUQ0FfUk9VVEU0X1RPLAorICBUQ0FfUk9VVEU0X0ZST00sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9ST1VURTRfSUlGLAotIFRDQV9ST1VURTRfUE9MSUNFLAotIFRDQV9ST1VURTRfQUNULAotIF9fVENBX1JPVVRFNF9NQVgKKyAgVENBX1JPVVRFNF9JSUYsCisgIFRDQV9ST1VURTRfUE9MSUNFLAorICBUQ0FfUk9VVEU0X0FDVCwKKyAgX19UQ0FfUk9VVEU0X01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDQV9ST1VURTRfTUFYIChfX1RDQV9ST1VURTRfTUFYIC0gMSkKIGVudW0gewotIFRDQV9GV19VTlNQRUMsCisgIFRDQV9GV19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GV19DTEFTU0lELAotIFRDQV9GV19QT0xJQ0UsCi0gVENBX0ZXX0lOREVWLAotIFRDQV9GV19BQ1QsCisgIFRDQV9GV19DTEFTU0lELAorICBUQ0FfRldfUE9MSUNFLAorICBUQ0FfRldfSU5ERVYsCisgIFRDQV9GV19BQ1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GV19NQVNLLAotIF9fVENBX0ZXX01BWAorICBUQ0FfRldfTUFTSywKKyAgX19UQ0FfRldfTUFYCiB9OwogI2RlZmluZSBUQ0FfRldfTUFYIChfX1RDQV9GV19NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9UQ0lOREVYX1VOU1BFQywKLSBUQ0FfVENJTkRFWF9IQVNILAotIFRDQV9UQ0lOREVYX01BU0ssCisgIFRDQV9UQ0lOREVYX1VOU1BFQywKKyAgVENBX1RDSU5ERVhfSEFTSCwKKyAgVENBX1RDSU5ERVhfTUFTSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1RDSU5ERVhfU0hJRlQsCi0gVENBX1RDSU5ERVhfRkFMTF9USFJPVUdILAotIFRDQV9UQ0lOREVYX0NMQVNTSUQsCi0gVENBX1RDSU5ERVhfUE9MSUNFLAorICBUQ0FfVENJTkRFWF9TSElGVCwKKyAgVENBX1RDSU5ERVhfRkFMTF9USFJPVUdILAorICBUQ0FfVENJTkRFWF9DTEFTU0lELAorICBUQ0FfVENJTkRFWF9QT0xJQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9UQ0lOREVYX0FDVCwKLSBfX1RDQV9UQ0lOREVYX01BWAorICBUQ0FfVENJTkRFWF9BQ1QsCisgIF9fVENBX1RDSU5ERVhfTUFYCiB9OwogI2RlZmluZSBUQ0FfVENJTkRFWF9NQVggKF9fVENBX1RDSU5ERVhfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBGTE9XX0tFWV9TUkMsCi0gRkxPV19LRVlfRFNULAotIEZMT1dfS0VZX1BST1RPLAorICBGTE9XX0tFWV9TUkMsCisgIEZMT1dfS0VZX0RTVCwKKyAgRkxPV19LRVlfUFJPVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZMT1dfS0VZX1BST1RPX1NSQywKLSBGTE9XX0tFWV9QUk9UT19EU1QsCi0gRkxPV19LRVlfSUlGLAotIEZMT1dfS0VZX1BSSU9SSVRZLAorICBGTE9XX0tFWV9QUk9UT19TUkMsCisgIEZMT1dfS0VZX1BST1RPX0RTVCwKKyAgRkxPV19LRVlfSUlGLAorICBGTE9XX0tFWV9QUklPUklUWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkxPV19LRVlfTUFSSywKLSBGTE9XX0tFWV9ORkNULAotIEZMT1dfS0VZX05GQ1RfU1JDLAotIEZMT1dfS0VZX05GQ1RfRFNULAorICBGTE9XX0tFWV9NQVJLLAorICBGTE9XX0tFWV9ORkNULAorICBGTE9XX0tFWV9ORkNUX1NSQywKKyAgRkxPV19LRVlfTkZDVF9EU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZMT1dfS0VZX05GQ1RfUFJPVE9fU1JDLAotIEZMT1dfS0VZX05GQ1RfUFJPVE9fRFNULAotIEZMT1dfS0VZX1JUQ0xBU1NJRCwKLSBGTE9XX0tFWV9TS1VJRCwKKyAgRkxPV19LRVlfTkZDVF9QUk9UT19TUkMsCisgIEZMT1dfS0VZX05GQ1RfUFJPVE9fRFNULAorICBGTE9XX0tFWV9SVENMQVNTSUQsCisgIEZMT1dfS0VZX1NLVUlELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGTE9XX0tFWV9TS0dJRCwKLSBGTE9XX0tFWV9WTEFOX1RBRywKLSBGTE9XX0tFWV9SWEhBU0gsCi0gX19GTE9XX0tFWV9NQVgsCisgIEZMT1dfS0VZX1NLR0lELAorICBGTE9XX0tFWV9WTEFOX1RBRywKKyAgRkxPV19LRVlfUlhIQVNILAorICBfX0ZMT1dfS0VZX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGTE9XX0tFWV9NQVggKF9fRkxPV19LRVlfTUFYIC0gMSkKIGVudW0gewotIEZMT1dfTU9ERV9NQVAsCisgIEZMT1dfTU9ERV9NQVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZMT1dfTU9ERV9IQVNILAorICBGTE9XX01PREVfSEFTSCwKIH07CiBlbnVtIHsKLSBUQ0FfRkxPV19VTlNQRUMsCisgIFRDQV9GTE9XX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZMT1dfS0VZUywKLSBUQ0FfRkxPV19NT0RFLAotIFRDQV9GTE9XX0JBU0VDTEFTUywKLSBUQ0FfRkxPV19SU0hJRlQsCisgIFRDQV9GTE9XX0tFWVMsCisgIFRDQV9GTE9XX01PREUsCisgIFRDQV9GTE9XX0JBU0VDTEFTUywKKyAgVENBX0ZMT1dfUlNISUZULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRkxPV19BRERFTkQsCi0gVENBX0ZMT1dfTUFTSywKLSBUQ0FfRkxPV19YT1IsCi0gVENBX0ZMT1dfRElWSVNPUiwKKyAgVENBX0ZMT1dfQURERU5ELAorICBUQ0FfRkxPV19NQVNLLAorICBUQ0FfRkxPV19YT1IsCisgIFRDQV9GTE9XX0RJVklTT1IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GTE9XX0FDVCwKLSBUQ0FfRkxPV19QT0xJQ0UsCi0gVENBX0ZMT1dfRU1BVENIRVMsCi0gVENBX0ZMT1dfUEVSVFVSQiwKKyAgVENBX0ZMT1dfQUNULAorICBUQ0FfRkxPV19QT0xJQ0UsCisgIFRDQV9GTE9XX0VNQVRDSEVTLAorICBUQ0FfRkxPV19QRVJUVVJCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDQV9GTE9XX01BWAorICBfX1RDQV9GTE9XX01BWAogfTsKICNkZWZpbmUgVENBX0ZMT1dfTUFYIChfX1RDQV9GTE9XX01BWCAtIDEpCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0JBU0lDX1VOU1BFQywKLSBUQ0FfQkFTSUNfQ0xBU1NJRCwKLSBUQ0FfQkFTSUNfRU1BVENIRVMsCi0gVENBX0JBU0lDX0FDVCwKKyAgVENBX0JBU0lDX1VOU1BFQywKKyAgVENBX0JBU0lDX0NMQVNTSUQsCisgIFRDQV9CQVNJQ19FTUFUQ0hFUywKKyAgVENBX0JBU0lDX0FDVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0JBU0lDX1BPTElDRSwKLSBfX1RDQV9CQVNJQ19NQVgKKyAgVENBX0JBU0lDX1BPTElDRSwKKyAgX19UQ0FfQkFTSUNfTUFYCiB9OwogI2RlZmluZSBUQ0FfQkFTSUNfTUFYIChfX1RDQV9CQVNJQ19NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9DR1JPVVBfVU5TUEVDLAotIFRDQV9DR1JPVVBfQUNULAotIFRDQV9DR1JPVVBfUE9MSUNFLAorICBUQ0FfQ0dST1VQX1VOU1BFQywKKyAgVENBX0NHUk9VUF9BQ1QsCisgIFRDQV9DR1JPVVBfUE9MSUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQ0dST1VQX0VNQVRDSEVTLAotIF9fVENBX0NHUk9VUF9NQVgsCisgIFRDQV9DR1JPVVBfRU1BVENIRVMsCisgIF9fVENBX0NHUk9VUF9NQVgsCiB9OwogI2RlZmluZSBUQ0FfQ0dST1VQX01BWCAoX19UQ0FfQ0dST1VQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX0JQRl9VTlNQRUMsCi0gVENBX0JQRl9BQ1QsCi0gVENBX0JQRl9QT0xJQ0UsCisgIFRDQV9CUEZfVU5TUEVDLAorICBUQ0FfQlBGX0FDVCwKKyAgVENBX0JQRl9QT0xJQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9CUEZfQ0xBU1NJRCwKLSBUQ0FfQlBGX09QU19MRU4sCi0gVENBX0JQRl9PUFMsCi0gX19UQ0FfQlBGX01BWCwKKyAgVENBX0JQRl9DTEFTU0lELAorICBUQ0FfQlBGX09QU19MRU4sCisgIFRDQV9CUEZfT1BTLAorICBfX1RDQV9CUEZfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDQV9CUEZfTUFYIChfX1RDQV9CUEZfTUFYIC0gMSkKIHN0cnVjdCB0Y2ZfZW1hdGNoX3RyZWVfaGRyIHsKLSBfX3UxNiBubWF0Y2hlczsKKyAgX191MTYgbm1hdGNoZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHByb2dpZDsKKyAgX191MTYgcHJvZ2lkOwogfTsKIGVudW0gewotIFRDQV9FTUFUQ0hfVFJFRV9VTlNQRUMsCisgIFRDQV9FTUFUQ0hfVFJFRV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9FTUFUQ0hfVFJFRV9IRFIsCi0gVENBX0VNQVRDSF9UUkVFX0xJU1QsCi0gX19UQ0FfRU1BVENIX1RSRUVfTUFYCisgIFRDQV9FTUFUQ0hfVFJFRV9IRFIsCisgIFRDQV9FTUFUQ0hfVFJFRV9MSVNULAorICBfX1RDQV9FTUFUQ0hfVFJFRV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfRU1BVENIX1RSRUVfTUFYIChfX1RDQV9FTUFUQ0hfVFJFRV9NQVggLSAxKQogc3RydWN0IHRjZl9lbWF0Y2hfaGRyIHsKLSBfX3UxNiBtYXRjaGlkOwotIF9fdTE2IGtpbmQ7CisgIF9fdTE2IG1hdGNoaWQ7CisgIF9fdTE2IGtpbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IHBhZDsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHBhZDsKIH07CiAjZGVmaW5lIFRDRl9FTV9SRUxfRU5EIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRDRl9FTV9SRUxfQU5EICgxPDwwKQotI2RlZmluZSBUQ0ZfRU1fUkVMX09SICgxPDwxKQotI2RlZmluZSBUQ0ZfRU1fSU5WRVJUICgxPDwyKQotI2RlZmluZSBUQ0ZfRU1fU0lNUExFICgxPDwzKQorI2RlZmluZSBUQ0ZfRU1fUkVMX0FORCAoMSA8PCAwKQorI2RlZmluZSBUQ0ZfRU1fUkVMX09SICgxIDw8IDEpCisjZGVmaW5lIFRDRl9FTV9JTlZFUlQgKDEgPDwgMikKKyNkZWZpbmUgVENGX0VNX1NJTVBMRSAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX0VNX1JFTF9NQVNLIDMKICNkZWZpbmUgVENGX0VNX1JFTF9WQUxJRCh2KSAoKCh2KSAmIFRDRl9FTV9SRUxfTUFTSykgIT0gVENGX0VNX1JFTF9NQVNLKQogZW51bSB7Ci0gVENGX0xBWUVSX0xJTkssCisgIFRDRl9MQVlFUl9MSU5LLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTEFZRVJfTkVUV09SSywKLSBUQ0ZfTEFZRVJfVFJBTlNQT1JULAotIF9fVENGX0xBWUVSX01BWAorICBUQ0ZfTEFZRVJfTkVUV09SSywKKyAgVENGX0xBWUVSX1RSQU5TUE9SVCwKKyAgX19UQ0ZfTEFZRVJfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX0xBWUVSX01BWCAoX19UQ0ZfTEFZRVJfTUFYIC0gMSkKQEAgLTQzNiwxMyArNDM2LDEzIEBACiAjZGVmaW5lIFRDRl9FTV9NQVggOAogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9FTV9QUk9HX1RDCisgIFRDRl9FTV9QUk9HX1RDCiB9OwogZW51bSB7Ci0gVENGX0VNX09QTkRfRVEsCisgIFRDRl9FTV9PUE5EX0VRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfRU1fT1BORF9HVCwKLSBUQ0ZfRU1fT1BORF9MVAorICBUQ0ZfRU1fT1BORF9HVCwKKyAgVENGX0VNX09QTkRfTFQKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9zY2hlZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3Rfc2NoZWQuaAppbmRleCA1YjY0MDk2Li41MThmODNmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9zY2hlZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0X3NjaGVkLmgKQEAgLTI5LDg3ICsyOSw4NyBAQAogI2RlZmluZSBUQ19QUklPX0NPTlRST0wgNwogI2RlZmluZSBUQ19QUklPX01BWCAxNQogc3RydWN0IHRjX3N0YXRzIHsKLSBfX3U2NCBieXRlczsKKyAgX191NjQgYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhY2tldHM7Ci0gX191MzIgZHJvcHM7Ci0gX191MzIgb3ZlcmxpbWl0czsKLSBfX3UzMiBicHM7CisgIF9fdTMyIHBhY2tldHM7CisgIF9fdTMyIGRyb3BzOworICBfX3UzMiBvdmVybGltaXRzOworICBfX3UzMiBicHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBwczsKLSBfX3UzMiBxbGVuOwotIF9fdTMyIGJhY2tsb2c7CisgIF9fdTMyIHBwczsKKyAgX191MzIgcWxlbjsKKyAgX191MzIgYmFja2xvZzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2VzdGltYXRvciB7Ci0gc2lnbmVkIGNoYXIgaW50ZXJ2YWw7Ci0gdW5zaWduZWQgY2hhciBld21hX2xvZzsKKyAgc2lnbmVkIGNoYXIgaW50ZXJ2YWw7CisgIHVuc2lnbmVkIGNoYXIgZXdtYV9sb2c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfSF9NQUpfTUFTSyAoMHhGRkZGMDAwMFUpCiAjZGVmaW5lIFRDX0hfTUlOX01BU0sgKDB4MDAwMEZGRkZVKQotI2RlZmluZSBUQ19IX01BSihoKSAoKGgpJlRDX0hfTUFKX01BU0spCi0jZGVmaW5lIFRDX0hfTUlOKGgpICgoaCkmVENfSF9NSU5fTUFTSykKKyNkZWZpbmUgVENfSF9NQUooaCkgKChoKSAmIFRDX0hfTUFKX01BU0spCisjZGVmaW5lIFRDX0hfTUlOKGgpICgoaCkgJiBUQ19IX01JTl9NQVNLKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVENfSF9NQUtFKG1haixtaW4pICgoKG1haikmVENfSF9NQUpfTUFTSyl8KChtaW4pJlRDX0hfTUlOX01BU0spKQorI2RlZmluZSBUQ19IX01BS0UobWFqLG1pbikgKCgobWFqKSAmIFRDX0hfTUFKX01BU0spIHwgKChtaW4pICYgVENfSF9NSU5fTUFTSykpCiAjZGVmaW5lIFRDX0hfVU5TUEVDICgwVSkKICNkZWZpbmUgVENfSF9ST09UICgweEZGRkZGRkZGVSkKICNkZWZpbmUgVENfSF9JTkdSRVNTICgweEZGRkZGRkYxVSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHRjX2xpbmtfbGF5ZXIgewotIFRDX0xJTktMQVlFUl9VTkFXQVJFLAotIFRDX0xJTktMQVlFUl9FVEhFUk5FVCwKLSBUQ19MSU5LTEFZRVJfQVRNLAorICBUQ19MSU5LTEFZRVJfVU5BV0FSRSwKKyAgVENfTElOS0xBWUVSX0VUSEVSTkVULAorICBUQ19MSU5LTEFZRVJfQVRNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDX0xJTktMQVlFUl9NQVNLIDB4MEYKIHN0cnVjdCB0Y19yYXRlc3BlYyB7Ci0gdW5zaWduZWQgY2hhciBjZWxsX2xvZzsKKyAgdW5zaWduZWQgY2hhciBjZWxsX2xvZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsaW5rbGF5ZXI7Ci0gdW5zaWduZWQgc2hvcnQgb3ZlcmhlYWQ7Ci0gc2hvcnQgY2VsbF9hbGlnbjsKLSB1bnNpZ25lZCBzaG9ydCBtcHU7CisgIF9fdTggbGlua2xheWVyOworICB1bnNpZ25lZCBzaG9ydCBvdmVyaGVhZDsKKyAgc2hvcnQgY2VsbF9hbGlnbjsKKyAgdW5zaWduZWQgc2hvcnQgbXB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByYXRlOworICBfX3UzMiByYXRlOwogfTsKICNkZWZpbmUgVENfUlRBQl9TSVpFIDEwMjQKIHN0cnVjdCB0Y19zaXplc3BlYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY2VsbF9sb2c7Ci0gdW5zaWduZWQgY2hhciBzaXplX2xvZzsKLSBzaG9ydCBjZWxsX2FsaWduOwotIGludCBvdmVyaGVhZDsKKyAgdW5zaWduZWQgY2hhciBjZWxsX2xvZzsKKyAgdW5zaWduZWQgY2hhciBzaXplX2xvZzsKKyAgc2hvcnQgY2VsbF9hbGlnbjsKKyAgaW50IG92ZXJoZWFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGlua2xheWVyOwotIHVuc2lnbmVkIGludCBtcHU7Ci0gdW5zaWduZWQgaW50IG10dTsKLSB1bnNpZ25lZCBpbnQgdHNpemU7CisgIHVuc2lnbmVkIGludCBsaW5rbGF5ZXI7CisgIHVuc2lnbmVkIGludCBtcHU7CisgIHVuc2lnbmVkIGludCBtdHU7CisgIHVuc2lnbmVkIGludCB0c2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVENBX1NUQUJfVU5TUEVDLAotIFRDQV9TVEFCX0JBU0UsCisgIFRDQV9TVEFCX1VOU1BFQywKKyAgVENBX1NUQUJfQkFTRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1NUQUJfREFUQSwKLSBfX1RDQV9TVEFCX01BWAorICBUQ0FfU1RBQl9EQVRBLAorICBfX1RDQV9TVEFCX01BWAogfTsKICNkZWZpbmUgVENBX1NUQUJfTUFYIChfX1RDQV9TVEFCX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2ZpZm9fcW9wdCB7Ci0gX191MzIgbGltaXQ7CisgIF9fdTMyIGxpbWl0OwogfTsKICNkZWZpbmUgVENRX1BSSU9fQkFORFMgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUV9NSU5fUFJJT19CQU5EUyAyCiBzdHJ1Y3QgdGNfcHJpb19xb3B0IHsKLSBpbnQgYmFuZHM7Ci0gX191OCBwcmlvbWFwW1RDX1BSSU9fTUFYKzFdOworICBpbnQgYmFuZHM7CisgIF9fdTggcHJpb21hcFtUQ19QUklPX01BWCArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfbXVsdGlxX3FvcHQgewotIF9fdTE2IGJhbmRzOwotIF9fdTE2IG1heF9iYW5kczsKKyAgX191MTYgYmFuZHM7CisgIF9fdTE2IG1heF9iYW5kczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ1FfUExVR19CVUZGRVIgMApAQCAtMTE4LDkzICsxMTgsOTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUV9QTFVHX0xJTUlUIDMKIHN0cnVjdCB0Y19wbHVnX3FvcHQgewotIGludCBhY3Rpb247Ci0gX191MzIgbGltaXQ7CisgIGludCBhY3Rpb247CisgIF9fdTMyIGxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfdGJmX3FvcHQgewotIHN0cnVjdCB0Y19yYXRlc3BlYyByYXRlOwotIHN0cnVjdCB0Y19yYXRlc3BlYyBwZWFrcmF0ZTsKKyAgc3RydWN0IHRjX3JhdGVzcGVjIHJhdGU7CisgIHN0cnVjdCB0Y19yYXRlc3BlYyBwZWFrcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGltaXQ7Ci0gX191MzIgYnVmZmVyOwotIF9fdTMyIG10dTsKKyAgX191MzIgbGltaXQ7CisgIF9fdTMyIGJ1ZmZlcjsKKyAgX191MzIgbXR1OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfVEJGX1VOU1BFQywKLSBUQ0FfVEJGX1BBUk1TLAotIFRDQV9UQkZfUlRBQiwKKyAgVENBX1RCRl9VTlNQRUMsCisgIFRDQV9UQkZfUEFSTVMsCisgIFRDQV9UQkZfUlRBQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1RCRl9QVEFCLAotIFRDQV9UQkZfUkFURTY0LAotIFRDQV9UQkZfUFJBVEU2NCwKLSBUQ0FfVEJGX0JVUlNULAorICBUQ0FfVEJGX1BUQUIsCisgIFRDQV9UQkZfUkFURTY0LAorICBUQ0FfVEJGX1BSQVRFNjQsCisgIFRDQV9UQkZfQlVSU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9UQkZfUEJVUlNULAotIF9fVENBX1RCRl9NQVgsCisgIFRDQV9UQkZfUEJVUlNULAorICBfX1RDQV9UQkZfTUFYLAogfTsKICNkZWZpbmUgVENBX1RCRl9NQVggKF9fVENBX1RCRl9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19zZnFfcW9wdCB7Ci0gdW5zaWduZWQgcXVhbnR1bTsKLSBpbnQgcGVydHVyYl9wZXJpb2Q7Ci0gX191MzIgbGltaXQ7CisgIHVuc2lnbmVkIHF1YW50dW07CisgIGludCBwZXJ0dXJiX3BlcmlvZDsKKyAgX191MzIgbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGRpdmlzb3I7Ci0gdW5zaWduZWQgZmxvd3M7CisgIHVuc2lnbmVkIGRpdmlzb3I7CisgIHVuc2lnbmVkIGZsb3dzOwogfTsKIHN0cnVjdCB0Y19zZnFyZWRfc3RhdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcm9iX2Ryb3A7Ci0gX191MzIgZm9yY2VkX2Ryb3A7Ci0gX191MzIgcHJvYl9tYXJrOwotIF9fdTMyIGZvcmNlZF9tYXJrOworICBfX3UzMiBwcm9iX2Ryb3A7CisgIF9fdTMyIGZvcmNlZF9kcm9wOworICBfX3UzMiBwcm9iX21hcms7CisgIF9fdTMyIGZvcmNlZF9tYXJrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcm9iX21hcmtfaGVhZDsKLSBfX3UzMiBmb3JjZWRfbWFya19oZWFkOworICBfX3UzMiBwcm9iX21hcmtfaGVhZDsKKyAgX191MzIgZm9yY2VkX21hcmtfaGVhZDsKIH07CiBzdHJ1Y3QgdGNfc2ZxX3FvcHRfdjEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNfc2ZxX3FvcHQgdjA7Ci0gdW5zaWduZWQgaW50IGRlcHRoOwotIHVuc2lnbmVkIGludCBoZWFkZHJvcDsKLSBfX3UzMiBsaW1pdDsKKyAgc3RydWN0IHRjX3NmcV9xb3B0IHYwOworICB1bnNpZ25lZCBpbnQgZGVwdGg7CisgIHVuc2lnbmVkIGludCBoZWFkZHJvcDsKKyAgX191MzIgbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHF0aF9taW47Ci0gX191MzIgcXRoX21heDsKLSB1bnNpZ25lZCBjaGFyIFdsb2c7Ci0gdW5zaWduZWQgY2hhciBQbG9nOworICBfX3UzMiBxdGhfbWluOworICBfX3UzMiBxdGhfbWF4OworICB1bnNpZ25lZCBjaGFyIFdsb2c7CisgIHVuc2lnbmVkIGNoYXIgUGxvZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBTY2VsbF9sb2c7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKLSBfX3UzMiBtYXhfUDsKLSBzdHJ1Y3QgdGNfc2ZxcmVkX3N0YXRzIHN0YXRzOworICB1bnNpZ25lZCBjaGFyIFNjZWxsX2xvZzsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKKyAgX191MzIgbWF4X1A7CisgIHN0cnVjdCB0Y19zZnFyZWRfc3RhdHMgc3RhdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y19zZnFfeHN0YXRzIHsKLSBfX3MzMiBhbGxvdDsKKyAgX19zMzIgYWxsb3Q7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9SRURfVU5TUEVDLAotIFRDQV9SRURfUEFSTVMsCi0gVENBX1JFRF9TVEFCLAorICBUQ0FfUkVEX1VOU1BFQywKKyAgVENBX1JFRF9QQVJNUywKKyAgVENBX1JFRF9TVEFCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUkVEX01BWF9QLAotIF9fVENBX1JFRF9NQVgsCisgIFRDQV9SRURfTUFYX1AsCisgIF9fVENBX1JFRF9NQVgsCiB9OwogI2RlZmluZSBUQ0FfUkVEX01BWCAoX19UQ0FfUkVEX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3JlZF9xb3B0IHsKLSBfX3UzMiBsaW1pdDsKLSBfX3UzMiBxdGhfbWluOwotIF9fdTMyIHF0aF9tYXg7CisgIF9fdTMyIGxpbWl0OworICBfX3UzMiBxdGhfbWluOworICBfX3UzMiBxdGhfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIFdsb2c7Ci0gdW5zaWduZWQgY2hhciBQbG9nOwotIHVuc2lnbmVkIGNoYXIgU2NlbGxfbG9nOwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgV2xvZzsKKyAgdW5zaWduZWQgY2hhciBQbG9nOworICB1bnNpZ25lZCBjaGFyIFNjZWxsX2xvZzsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX1JFRF9FQ04gMQogI2RlZmluZSBUQ19SRURfSEFSRERST1AgMgpAQCAtMjEyLDg0ICsyMTIsODQgQEAKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3JlZF94c3RhdHMgewotIF9fdTMyIGVhcmx5OwotIF9fdTMyIHBkcm9wOwotIF9fdTMyIG90aGVyOworICBfX3UzMiBlYXJseTsKKyAgX191MzIgcGRyb3A7CisgIF9fdTMyIG90aGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXJrZWQ7CisgIF9fdTMyIG1hcmtlZDsKIH07CiAjZGVmaW5lIE1BWF9EUHMgMTYKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfR1JFRF9VTlNQRUMsCi0gVENBX0dSRURfUEFSTVMsCi0gVENBX0dSRURfU1RBQiwKLSBUQ0FfR1JFRF9EUFMsCisgIFRDQV9HUkVEX1VOU1BFQywKKyAgVENBX0dSRURfUEFSTVMsCisgIFRDQV9HUkVEX1NUQUIsCisgIFRDQV9HUkVEX0RQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0dSRURfTUFYX1AsCi0gX19UQ0FfR1JFRF9NQVgsCisgIFRDQV9HUkVEX01BWF9QLAorICBfX1RDQV9HUkVEX01BWCwKIH07CiAjZGVmaW5lIFRDQV9HUkVEX01BWCAoX19UQ0FfR1JFRF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19ncmVkX3FvcHQgewotIF9fdTMyIGxpbWl0OwotIF9fdTMyIHF0aF9taW47Ci0gX191MzIgcXRoX21heDsKKyAgX191MzIgbGltaXQ7CisgIF9fdTMyIHF0aF9taW47CisgIF9fdTMyIHF0aF9tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIERQOwotIF9fdTMyIGJhY2tsb2c7Ci0gX191MzIgcWF2ZTsKLSBfX3UzMiBmb3JjZWQ7CisgIF9fdTMyIERQOworICBfX3UzMiBiYWNrbG9nOworICBfX3UzMiBxYXZlOworICBfX3UzMiBmb3JjZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVhcmx5OwotIF9fdTMyIG90aGVyOwotIF9fdTMyIHBkcm9wOwotIF9fdTggV2xvZzsKKyAgX191MzIgZWFybHk7CisgIF9fdTMyIG90aGVyOworICBfX3UzMiBwZHJvcDsKKyAgX191OCBXbG9nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IFBsb2c7Ci0gX191OCBTY2VsbF9sb2c7Ci0gX191OCBwcmlvOwotIF9fdTMyIHBhY2tldHM7CisgIF9fdTggUGxvZzsKKyAgX191OCBTY2VsbF9sb2c7CisgIF9fdTggcHJpbzsKKyAgX191MzIgcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnl0ZXNpbjsKKyAgX191MzIgYnl0ZXNpbjsKIH07CiBzdHJ1Y3QgdGNfZ3JlZF9zb3B0IHsKLSBfX3UzMiBEUHM7CisgIF9fdTMyIERQczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGVmX0RQOwotIF9fdTggZ3JpbzsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IHBhZDE7CisgIF9fdTMyIGRlZl9EUDsKKyAgX191OCBncmlvOworICBfX3U4IGZsYWdzOworICBfX3UxNiBwYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBUQ0FfQ0hPS0VfVU5TUEVDLAotIFRDQV9DSE9LRV9QQVJNUywKKyAgVENBX0NIT0tFX1VOU1BFQywKKyAgVENBX0NIT0tFX1BBUk1TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQ0hPS0VfU1RBQiwKLSBUQ0FfQ0hPS0VfTUFYX1AsCi0gX19UQ0FfQ0hPS0VfTUFYLAorICBUQ0FfQ0hPS0VfU1RBQiwKKyAgVENBX0NIT0tFX01BWF9QLAorICBfX1RDQV9DSE9LRV9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0NIT0tFX01BWCAoX19UQ0FfQ0hPS0VfTUFYIC0gMSkKIHN0cnVjdCB0Y19jaG9rZV9xb3B0IHsKLSBfX3UzMiBsaW1pdDsKLSBfX3UzMiBxdGhfbWluOworICBfX3UzMiBsaW1pdDsKKyAgX191MzIgcXRoX21pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXRoX21heDsKLSB1bnNpZ25lZCBjaGFyIFdsb2c7Ci0gdW5zaWduZWQgY2hhciBQbG9nOwotIHVuc2lnbmVkIGNoYXIgU2NlbGxfbG9nOworICBfX3UzMiBxdGhfbWF4OworICB1bnNpZ25lZCBjaGFyIFdsb2c7CisgIHVuc2lnbmVkIGNoYXIgUGxvZzsKKyAgdW5zaWduZWQgY2hhciBTY2VsbF9sb2c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CiB9Owogc3RydWN0IHRjX2Nob2tlX3hzdGF0cyB7Ci0gX191MzIgZWFybHk7CisgIF9fdTMyIGVhcmx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZHJvcDsKLSBfX3UzMiBvdGhlcjsKLSBfX3UzMiBtYXJrZWQ7Ci0gX191MzIgbWF0Y2hlZDsKKyAgX191MzIgcGRyb3A7CisgIF9fdTMyIG90aGVyOworICBfX3UzMiBtYXJrZWQ7CisgIF9fdTMyIG1hdGNoZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENfSFRCX05VTVBSSU8gOApAQCAtMjk3LDczICsyOTcsNzMgQEAKICNkZWZpbmUgVENfSFRCX1BST1RPVkVSIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfaHRiX29wdCB7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIHJhdGU7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIGNlaWw7Ci0gX191MzIgYnVmZmVyOworICBzdHJ1Y3QgdGNfcmF0ZXNwZWMgcmF0ZTsKKyAgc3RydWN0IHRjX3JhdGVzcGVjIGNlaWw7CisgIF9fdTMyIGJ1ZmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2J1ZmZlcjsKLSBfX3UzMiBxdWFudHVtOwotIF9fdTMyIGxldmVsOwotIF9fdTMyIHByaW87CisgIF9fdTMyIGNidWZmZXI7CisgIF9fdTMyIHF1YW50dW07CisgIF9fdTMyIGxldmVsOworICBfX3UzMiBwcmlvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfaHRiX2dsb2IgewotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgcmF0ZTJxdWFudHVtOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiByYXRlMnF1YW50dW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRlZmNsczsKLSBfX3UzMiBkZWJ1ZzsKLSBfX3UzMiBkaXJlY3RfcGt0czsKKyAgX191MzIgZGVmY2xzOworICBfX3UzMiBkZWJ1ZzsKKyAgX191MzIgZGlyZWN0X3BrdHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9IVEJfVU5TUEVDLAotIFRDQV9IVEJfUEFSTVMsCi0gVENBX0hUQl9JTklULAorICBUQ0FfSFRCX1VOU1BFQywKKyAgVENBX0hUQl9QQVJNUywKKyAgVENBX0hUQl9JTklULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSFRCX0NUQUIsCi0gVENBX0hUQl9SVEFCLAotIFRDQV9IVEJfRElSRUNUX1FMRU4sCi0gVENBX0hUQl9SQVRFNjQsCisgIFRDQV9IVEJfQ1RBQiwKKyAgVENBX0hUQl9SVEFCLAorICBUQ0FfSFRCX0RJUkVDVF9RTEVOLAorICBUQ0FfSFRCX1JBVEU2NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0hUQl9DRUlMNjQsCi0gX19UQ0FfSFRCX01BWCwKKyAgVENBX0hUQl9DRUlMNjQsCisgIF9fVENBX0hUQl9NQVgsCiB9OwogI2RlZmluZSBUQ0FfSFRCX01BWCAoX19UQ0FfSFRCX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2h0Yl94c3RhdHMgewotIF9fdTMyIGxlbmRzOwotIF9fdTMyIGJvcnJvd3M7Ci0gX191MzIgZ2lhbnRzOworICBfX3UzMiBsZW5kczsKKyAgX191MzIgYm9ycm93czsKKyAgX191MzIgZ2lhbnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0b2tlbnM7Ci0gX191MzIgY3Rva2VuczsKKyAgX191MzIgdG9rZW5zOworICBfX3UzMiBjdG9rZW5zOwogfTsKIHN0cnVjdCB0Y19oZnNjX3FvcHQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkZWZjbHM7CisgIF9fdTE2IGRlZmNsczsKIH07CiBzdHJ1Y3QgdGNfc2VydmljZV9jdXJ2ZSB7Ci0gX191MzIgbTE7CisgIF9fdTMyIG0xOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkOwotIF9fdTMyIG0yOworICBfX3UzMiBkOworICBfX3UzMiBtMjsKIH07CiBzdHJ1Y3QgdGNfaGZzY19zdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHdvcms7Ci0gX191NjQgcnR3b3JrOwotIF9fdTMyIHBlcmlvZDsKLSBfX3UzMiBsZXZlbDsKKyAgX191NjQgd29yazsKKyAgX191NjQgcnR3b3JrOworICBfX3UzMiBwZXJpb2Q7CisgIF9fdTMyIGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBUQ0FfSEZTQ19VTlNQRUMsCi0gVENBX0hGU0NfUlNDLAorICBUQ0FfSEZTQ19VTlNQRUMsCisgIFRDQV9IRlNDX1JTQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0hGU0NfRlNDLAotIFRDQV9IRlNDX1VTQywKLSBfX1RDQV9IRlNDX01BWCwKKyAgVENBX0hGU0NfRlNDLAorICBUQ0FfSEZTQ19VU0MsCisgIF9fVENBX0hGU0NfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9IRlNDX01BWCAoX19UQ0FfSEZTQ19NQVggLSAxKQpAQCAtMzcyLDEzICszNzIsMTMgQEAKICNkZWZpbmUgVENfQ0JRX0RFRl9FV01BIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfY2JxX2xzc29wdCB7Ci0gdW5zaWduZWQgY2hhciBjaGFuZ2U7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKKyAgdW5zaWduZWQgY2hhciBjaGFuZ2U7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CiAjZGVmaW5lIFRDRl9DQlFfTFNTX0JPVU5ERUQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX0NCUV9MU1NfSVNPTEFURUQgMgotIHVuc2lnbmVkIGNoYXIgZXdtYV9sb2c7Ci0gdW5zaWduZWQgY2hhciBsZXZlbDsKKyAgdW5zaWduZWQgY2hhciBld21hX2xvZzsKKyAgdW5zaWduZWQgY2hhciBsZXZlbDsKICNkZWZpbmUgVENGX0NCUV9MU1NfRkxBR1MgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX0NCUV9MU1NfRVdNQSAyCkBAIC0zODcsMjQgKzM4NywyNCBAQAogI2RlZmluZSBUQ0ZfQ0JRX0xTU19PRkZUSU1FIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDRl9DQlFfTFNTX0FWUEtUIDB4MjAKLSBfX3UzMiBtYXhpZGxlOwotIF9fdTMyIG1pbmlkbGU7Ci0gX191MzIgb2ZmdGltZTsKKyAgX191MzIgbWF4aWRsZTsKKyAgX191MzIgbWluaWRsZTsKKyAgX191MzIgb2ZmdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXZwa3Q7CisgIF9fdTMyIGF2cGt0OwogfTsKIHN0cnVjdCB0Y19jYnFfd3Jyb3B0IHsKLSB1bnNpZ25lZCBjaGFyIGZsYWdzOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHByaW9yaXR5OwotIHVuc2lnbmVkIGNoYXIgY3ByaW9yaXR5OwotIHVuc2lnbmVkIGNoYXIgX19yZXNlcnZlZDsKLSBfX3UzMiBhbGxvdDsKKyAgdW5zaWduZWQgY2hhciBwcmlvcml0eTsKKyAgdW5zaWduZWQgY2hhciBjcHJpb3JpdHk7CisgIHVuc2lnbmVkIGNoYXIgX19yZXNlcnZlZDsKKyAgX191MzIgYWxsb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdlaWdodDsKKyAgX191MzIgd2VpZ2h0OwogfTsKIHN0cnVjdCB0Y19jYnFfb3ZsIHsKLSB1bnNpZ25lZCBjaGFyIHN0cmF0ZWd5OworICB1bnNpZ25lZCBjaGFyIHN0cmF0ZWd5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfQ0JRX09WTF9DTEFTU0lDIDAKICNkZWZpbmUgVENfQ0JRX09WTF9ERUxBWSAxCkBAIC00MTIsMzc3ICs0MTIsMzc3IEBACiAjZGVmaW5lIFRDX0NCUV9PVkxfRFJPUCAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19DQlFfT1ZMX1JDTEFTU0lDIDQKLSB1bnNpZ25lZCBjaGFyIHByaW9yaXR5MjsKLSBfX3UxNiBwYWQ7Ci0gX191MzIgcGVuYWx0eTsKKyAgdW5zaWduZWQgY2hhciBwcmlvcml0eTI7CisgIF9fdTE2IHBhZDsKKyAgX191MzIgcGVuYWx0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRjX2NicV9wb2xpY2UgewotIHVuc2lnbmVkIGNoYXIgcG9saWNlOwotIHVuc2lnbmVkIGNoYXIgX19yZXMxOworICB1bnNpZ25lZCBjaGFyIHBvbGljZTsKKyAgdW5zaWduZWQgY2hhciBfX3JlczE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IF9fcmVzMjsKKyAgdW5zaWduZWQgc2hvcnQgX19yZXMyOwogfTsKIHN0cnVjdCB0Y19jYnFfZm9wdCB7Ci0gX191MzIgc3BsaXQ7CisgIF9fdTMyIHNwbGl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZWZtYXA7Ci0gX191MzIgZGVmY2hhbmdlOworICBfX3UzMiBkZWZtYXA7CisgIF9fdTMyIGRlZmNoYW5nZTsKIH07CiBzdHJ1Y3QgdGNfY2JxX3hzdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJvcnJvd3M7Ci0gX191MzIgb3ZlcmFjdGlvbnM7Ci0gX19zMzIgYXZnaWRsZTsKLSBfX3MzMiB1bmRlcnRpbWU7CisgIF9fdTMyIGJvcnJvd3M7CisgIF9fdTMyIG92ZXJhY3Rpb25zOworICBfX3MzMiBhdmdpZGxlOworICBfX3MzMiB1bmRlcnRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9DQlFfVU5TUEVDLAotIFRDQV9DQlFfTFNTT1BULAorICBUQ0FfQ0JRX1VOU1BFQywKKyAgVENBX0NCUV9MU1NPUFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9DQlFfV1JST1BULAotIFRDQV9DQlFfRk9QVCwKLSBUQ0FfQ0JRX09WTF9TVFJBVEVHWSwKLSBUQ0FfQ0JRX1JBVEUsCisgIFRDQV9DQlFfV1JST1BULAorICBUQ0FfQ0JRX0ZPUFQsCisgIFRDQV9DQlFfT1ZMX1NUUkFURUdZLAorICBUQ0FfQ0JRX1JBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9DQlFfUlRBQiwKLSBUQ0FfQ0JRX1BPTElDRSwKLSBfX1RDQV9DQlFfTUFYLAorICBUQ0FfQ0JRX1JUQUIsCisgIFRDQV9DQlFfUE9MSUNFLAorICBfX1RDQV9DQlFfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9DQlFfTUFYIChfX1RDQV9DQlFfTUFYIC0gMSkKIGVudW0gewotIFRDQV9EU01BUktfVU5TUEVDLAotIFRDQV9EU01BUktfSU5ESUNFUywKKyAgVENBX0RTTUFSS19VTlNQRUMsCisgIFRDQV9EU01BUktfSU5ESUNFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0RTTUFSS19ERUZBVUxUX0lOREVYLAotIFRDQV9EU01BUktfU0VUX1RDX0lOREVYLAotIFRDQV9EU01BUktfTUFTSywKLSBUQ0FfRFNNQVJLX1ZBTFVFLAorICBUQ0FfRFNNQVJLX0RFRkFVTFRfSU5ERVgsCisgIFRDQV9EU01BUktfU0VUX1RDX0lOREVYLAorICBUQ0FfRFNNQVJLX01BU0ssCisgIFRDQV9EU01BUktfVkFMVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX0RTTUFSS19NQVgsCisgIF9fVENBX0RTTUFSS19NQVgsCiB9OwogI2RlZmluZSBUQ0FfRFNNQVJLX01BWCAoX19UQ0FfRFNNQVJLX01BWCAtIDEpCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0FUTV9VTlNQRUMsCi0gVENBX0FUTV9GRCwKLSBUQ0FfQVRNX1BUUiwKLSBUQ0FfQVRNX0hEUiwKKyAgVENBX0FUTV9VTlNQRUMsCisgIFRDQV9BVE1fRkQsCisgIFRDQV9BVE1fUFRSLAorICBUQ0FfQVRNX0hEUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0FUTV9FWENFU1MsCi0gVENBX0FUTV9BRERSLAotIFRDQV9BVE1fU1RBVEUsCi0gX19UQ0FfQVRNX01BWCwKKyAgVENBX0FUTV9FWENFU1MsCisgIFRDQV9BVE1fQUREUiwKKyAgVENBX0FUTV9TVEFURSwKKyAgX19UQ0FfQVRNX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ0FfQVRNX01BWCAoX19UQ0FfQVRNX01BWCAtIDEpCiBlbnVtIHsKLSBUQ0FfTkVURU1fVU5TUEVDLAorICBUQ0FfTkVURU1fVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfTkVURU1fQ09SUiwKLSBUQ0FfTkVURU1fREVMQVlfRElTVCwKLSBUQ0FfTkVURU1fUkVPUkRFUiwKLSBUQ0FfTkVURU1fQ09SUlVQVCwKKyAgVENBX05FVEVNX0NPUlIsCisgIFRDQV9ORVRFTV9ERUxBWV9ESVNULAorICBUQ0FfTkVURU1fUkVPUkRFUiwKKyAgVENBX05FVEVNX0NPUlJVUFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9ORVRFTV9MT1NTLAotIFRDQV9ORVRFTV9SQVRFLAotIFRDQV9ORVRFTV9FQ04sCi0gVENBX05FVEVNX1JBVEU2NCwKKyAgVENBX05FVEVNX0xPU1MsCisgIFRDQV9ORVRFTV9SQVRFLAorICBUQ0FfTkVURU1fRUNOLAorICBUQ0FfTkVURU1fUkFURTY0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDQV9ORVRFTV9NQVgsCisgIF9fVENBX05FVEVNX01BWCwKIH07CiAjZGVmaW5lIFRDQV9ORVRFTV9NQVggKF9fVENBX05FVEVNX01BWCAtIDEpCiBzdHJ1Y3QgdGNfbmV0ZW1fcW9wdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxhdGVuY3k7Ci0gX191MzIgbGltaXQ7Ci0gX191MzIgbG9zczsKLSBfX3UzMiBnYXA7CisgIF9fdTMyIGxhdGVuY3k7CisgIF9fdTMyIGxpbWl0OworICBfX3UzMiBsb3NzOworICBfX3UzMiBnYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGR1cGxpY2F0ZTsKLSBfX3UzMiBqaXR0ZXI7CisgIF9fdTMyIGR1cGxpY2F0ZTsKKyAgX191MzIgaml0dGVyOwogfTsKIHN0cnVjdCB0Y19uZXRlbV9jb3JyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGVsYXlfY29ycjsKLSBfX3UzMiBsb3NzX2NvcnI7Ci0gX191MzIgZHVwX2NvcnI7CisgIF9fdTMyIGRlbGF5X2NvcnI7CisgIF9fdTMyIGxvc3NfY29ycjsKKyAgX191MzIgZHVwX2NvcnI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19uZXRlbV9yZW9yZGVyIHsKLSBfX3UzMiBwcm9iYWJpbGl0eTsKLSBfX3UzMiBjb3JyZWxhdGlvbjsKKyAgX191MzIgcHJvYmFiaWxpdHk7CisgIF9fdTMyIGNvcnJlbGF0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfbmV0ZW1fY29ycnVwdCB7Ci0gX191MzIgcHJvYmFiaWxpdHk7Ci0gX191MzIgY29ycmVsYXRpb247CisgIF9fdTMyIHByb2JhYmlsaXR5OworICBfX3UzMiBjb3JyZWxhdGlvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX25ldGVtX3JhdGUgewotIF9fdTMyIHJhdGU7Ci0gX19zMzIgcGFja2V0X292ZXJoZWFkOwotIF9fdTMyIGNlbGxfc2l6ZTsKKyAgX191MzIgcmF0ZTsKKyAgX19zMzIgcGFja2V0X292ZXJoZWFkOworICBfX3UzMiBjZWxsX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGNlbGxfb3ZlcmhlYWQ7CisgIF9fczMyIGNlbGxfb3ZlcmhlYWQ7CiB9OwogZW51bSB7Ci0gTkVURU1fTE9TU19VTlNQRUMsCisgIE5FVEVNX0xPU1NfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRFTV9MT1NTX0dJLAotIE5FVEVNX0xPU1NfR0UsCi0gX19ORVRFTV9MT1NTX01BWAorICBORVRFTV9MT1NTX0dJLAorICBORVRFTV9MT1NTX0dFLAorICBfX05FVEVNX0xPU1NfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVURU1fTE9TU19NQVggKF9fTkVURU1fTE9TU19NQVggLSAxKQogc3RydWN0IHRjX25ldGVtX2dpbW9kZWwgewotIF9fdTMyIHAxMzsKLSBfX3UzMiBwMzE7CisgIF9fdTMyIHAxMzsKKyAgX191MzIgcDMxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwMzI7Ci0gX191MzIgcDE0OwotIF9fdTMyIHAyMzsKKyAgX191MzIgcDMyOworICBfX3UzMiBwMTQ7CisgIF9fdTMyIHAyMzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX25ldGVtX2dlbW9kZWwgewotIF9fdTMyIHA7Ci0gX191MzIgcjsKLSBfX3UzMiBoOworICBfX3UzMiBwOworICBfX3UzMiByOworICBfX3UzMiBoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBrMTsKKyAgX191MzIgazE7CiB9OwogI2RlZmluZSBORVRFTV9ESVNUX1NDQUxFIDgxOTIKICNkZWZpbmUgTkVURU1fRElTVF9NQVggMTYzODQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfRFJSX1VOU1BFQywKLSBUQ0FfRFJSX1FVQU5UVU0sCi0gX19UQ0FfRFJSX01BWAorICBUQ0FfRFJSX1VOU1BFQywKKyAgVENBX0RSUl9RVUFOVFVNLAorICBfX1RDQV9EUlJfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX0RSUl9NQVggKF9fVENBX0RSUl9NQVggLSAxKQogc3RydWN0IHRjX2Rycl9zdGF0cyB7Ci0gX191MzIgZGVmaWNpdDsKKyAgX191MzIgZGVmaWNpdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ19RT1BUX0JJVE1BU0sgMTUKICNkZWZpbmUgVENfUU9QVF9NQVhfUVVFVUUgMTYKIHN0cnVjdCB0Y19tcXByaW9fcW9wdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnVtX3RjOwotIF9fdTggcHJpb190Y19tYXBbVENfUU9QVF9CSVRNQVNLICsgMV07Ci0gX191OCBodzsKLSBfX3UxNiBjb3VudFtUQ19RT1BUX01BWF9RVUVVRV07CisgIF9fdTggbnVtX3RjOworICBfX3U4IHByaW9fdGNfbWFwW1RDX1FPUFRfQklUTUFTSyArIDFdOworICBfX3U4IGh3OworICBfX3UxNiBjb3VudFtUQ19RT1BUX01BWF9RVUVVRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG9mZnNldFtUQ19RT1BUX01BWF9RVUVVRV07CisgIF9fdTE2IG9mZnNldFtUQ19RT1BUX01BWF9RVUVVRV07CiB9OwogZW51bSB7Ci0gVENBX1NGQl9VTlNQRUMsCisgIFRDQV9TRkJfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfU0ZCX1BBUk1TLAotIF9fVENBX1NGQl9NQVgsCisgIFRDQV9TRkJfUEFSTVMsCisgIF9fVENBX1NGQl9NQVgsCiB9OwogI2RlZmluZSBUQ0FfU0ZCX01BWCAoX19UQ0FfU0ZCX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3NmYl9xb3B0IHsKLSBfX3UzMiByZWhhc2hfaW50ZXJ2YWw7Ci0gX191MzIgd2FybXVwX3RpbWU7Ci0gX191MzIgbWF4OworICBfX3UzMiByZWhhc2hfaW50ZXJ2YWw7CisgIF9fdTMyIHdhcm11cF90aW1lOworICBfX3UzMiBtYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJpbl9zaXplOwotIF9fdTMyIGluY3JlbWVudDsKLSBfX3UzMiBkZWNyZW1lbnQ7Ci0gX191MzIgbGltaXQ7CisgIF9fdTMyIGJpbl9zaXplOworICBfX3UzMiBpbmNyZW1lbnQ7CisgIF9fdTMyIGRlY3JlbWVudDsKKyAgX191MzIgbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBlbmFsdHlfcmF0ZTsKLSBfX3UzMiBwZW5hbHR5X2J1cnN0OworICBfX3UzMiBwZW5hbHR5X3JhdGU7CisgIF9fdTMyIHBlbmFsdHlfYnVyc3Q7CiB9Owogc3RydWN0IHRjX3NmYl94c3RhdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlYXJseWRyb3A7Ci0gX191MzIgcGVuYWx0eWRyb3A7Ci0gX191MzIgYnVja2V0ZHJvcDsKLSBfX3UzMiBxdWV1ZWRyb3A7CisgIF9fdTMyIGVhcmx5ZHJvcDsKKyAgX191MzIgcGVuYWx0eWRyb3A7CisgIF9fdTMyIGJ1Y2tldGRyb3A7CisgIF9fdTMyIHF1ZXVlZHJvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2hpbGRkcm9wOwotIF9fdTMyIG1hcmtlZDsKLSBfX3UzMiBtYXhxbGVuOwotIF9fdTMyIG1heHByb2I7CisgIF9fdTMyIGNoaWxkZHJvcDsKKyAgX191MzIgbWFya2VkOworICBfX3UzMiBtYXhxbGVuOworICBfX3UzMiBtYXhwcm9iOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhdmdwcm9iOworICBfX3UzMiBhdmdwcm9iOwogfTsKICNkZWZpbmUgU0ZCX01BWF9QUk9CIDB4RkZGRgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9RRlFfVU5TUEVDLAotIFRDQV9RRlFfV0VJR0hULAotIFRDQV9RRlFfTE1BWCwKLSBfX1RDQV9RRlFfTUFYCisgIFRDQV9RRlFfVU5TUEVDLAorICBUQ0FfUUZRX1dFSUdIVCwKKyAgVENBX1FGUV9MTUFYLAorICBfX1RDQV9RRlFfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX1FGUV9NQVggKF9fVENBX1FGUV9NQVggLSAxKQogc3RydWN0IHRjX3FmcV9zdGF0cyB7Ci0gX191MzIgd2VpZ2h0OworICBfX3UzMiB3ZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxtYXg7CisgIF9fdTMyIGxtYXg7CiB9OwogZW51bSB7Ci0gVENBX0NPREVMX1VOU1BFQywKKyAgVENBX0NPREVMX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0NPREVMX1RBUkdFVCwKLSBUQ0FfQ09ERUxfTElNSVQsCi0gVENBX0NPREVMX0lOVEVSVkFMLAotIFRDQV9DT0RFTF9FQ04sCisgIFRDQV9DT0RFTF9UQVJHRVQsCisgIFRDQV9DT0RFTF9MSU1JVCwKKyAgVENBX0NPREVMX0lOVEVSVkFMLAorICBUQ0FfQ09ERUxfRUNOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDQV9DT0RFTF9NQVgKKyAgX19UQ0FfQ09ERUxfTUFYCiB9OwogI2RlZmluZSBUQ0FfQ09ERUxfTUFYIChfX1RDQV9DT0RFTF9NQVggLSAxKQogc3RydWN0IHRjX2NvZGVsX3hzdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heHBhY2tldDsKLSBfX3UzMiBjb3VudDsKLSBfX3UzMiBsYXN0Y291bnQ7Ci0gX191MzIgbGRlbGF5OworICBfX3UzMiBtYXhwYWNrZXQ7CisgIF9fdTMyIGNvdW50OworICBfX3UzMiBsYXN0Y291bnQ7CisgIF9fdTMyIGxkZWxheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgZHJvcF9uZXh0OwotIF9fdTMyIGRyb3Bfb3ZlcmxpbWl0OwotIF9fdTMyIGVjbl9tYXJrOwotIF9fdTMyIGRyb3BwaW5nOworICBfX3MzMiBkcm9wX25leHQ7CisgIF9fdTMyIGRyb3Bfb3ZlcmxpbWl0OworICBfX3UzMiBlY25fbWFyazsKKyAgX191MzIgZHJvcHBpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9GUV9DT0RFTF9VTlNQRUMsCi0gVENBX0ZRX0NPREVMX1RBUkdFVCwKKyAgVENBX0ZRX0NPREVMX1VOU1BFQywKKyAgVENBX0ZRX0NPREVMX1RBUkdFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZRX0NPREVMX0xJTUlULAotIFRDQV9GUV9DT0RFTF9JTlRFUlZBTCwKLSBUQ0FfRlFfQ09ERUxfRUNOLAotIFRDQV9GUV9DT0RFTF9GTE9XUywKKyAgVENBX0ZRX0NPREVMX0xJTUlULAorICBUQ0FfRlFfQ09ERUxfSU5URVJWQUwsCisgIFRDQV9GUV9DT0RFTF9FQ04sCisgIFRDQV9GUV9DT0RFTF9GTE9XUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZRX0NPREVMX1FVQU5UVU0sCi0gX19UQ0FfRlFfQ09ERUxfTUFYCisgIFRDQV9GUV9DT0RFTF9RVUFOVFVNLAorICBfX1RDQV9GUV9DT0RFTF9NQVgKIH07CiAjZGVmaW5lIFRDQV9GUV9DT0RFTF9NQVggKF9fVENBX0ZRX0NPREVMX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX0ZRX0NPREVMX1hTVEFUU19RRElTQywKLSBUQ0FfRlFfQ09ERUxfWFNUQVRTX0NMQVNTLAorICBUQ0FfRlFfQ09ERUxfWFNUQVRTX1FESVNDLAorICBUQ0FfRlFfQ09ERUxfWFNUQVRTX0NMQVNTLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfZnFfY29kZWxfcWRfc3RhdHMgewotIF9fdTMyIG1heHBhY2tldDsKLSBfX3UzMiBkcm9wX292ZXJsaW1pdDsKLSBfX3UzMiBlY25fbWFyazsKKyAgX191MzIgbWF4cGFja2V0OworICBfX3UzMiBkcm9wX292ZXJsaW1pdDsKKyAgX191MzIgZWNuX21hcms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5ld19mbG93X2NvdW50OwotIF9fdTMyIG5ld19mbG93c19sZW47Ci0gX191MzIgb2xkX2Zsb3dzX2xlbjsKKyAgX191MzIgbmV3X2Zsb3dfY291bnQ7CisgIF9fdTMyIG5ld19mbG93c19sZW47CisgIF9fdTMyIG9sZF9mbG93c19sZW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19mcV9jb2RlbF9jbF9zdGF0cyB7Ci0gX19zMzIgZGVmaWNpdDsKLSBfX3UzMiBsZGVsYXk7Ci0gX191MzIgY291bnQ7CisgIF9fczMyIGRlZmljaXQ7CisgIF9fdTMyIGxkZWxheTsKKyAgX191MzIgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxhc3Rjb3VudDsKLSBfX3UzMiBkcm9wcGluZzsKLSBfX3MzMiBkcm9wX25leHQ7CisgIF9fdTMyIGxhc3Rjb3VudDsKKyAgX191MzIgZHJvcHBpbmc7CisgIF9fczMyIGRyb3BfbmV4dDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2ZxX2NvZGVsX3hzdGF0cyB7Ci0gX191MzIgdHlwZTsKLSB1bmlvbiB7Ci0gc3RydWN0IHRjX2ZxX2NvZGVsX3FkX3N0YXRzIHFkaXNjX3N0YXRzOworICBfX3UzMiB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHRjX2ZxX2NvZGVsX3FkX3N0YXRzIHFkaXNjX3N0YXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNfZnFfY29kZWxfY2xfc3RhdHMgY2xhc3Nfc3RhdHM7Ci0gfTsKKyAgICBzdHJ1Y3QgdGNfZnFfY29kZWxfY2xfc3RhdHMgY2xhc3Nfc3RhdHM7CisgIH07CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GUV9VTlNQRUMsCi0gVENBX0ZRX1BMSU1JVCwKLSBUQ0FfRlFfRkxPV19QTElNSVQsCi0gVENBX0ZRX1FVQU5UVU0sCisgIFRDQV9GUV9VTlNQRUMsCisgIFRDQV9GUV9QTElNSVQsCisgIFRDQV9GUV9GTE9XX1BMSU1JVCwKKyAgVENBX0ZRX1FVQU5UVU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GUV9JTklUSUFMX1FVQU5UVU0sCi0gVENBX0ZRX1JBVEVfRU5BQkxFLAotIFRDQV9GUV9GTE9XX0RFRkFVTFRfUkFURSwKLSBUQ0FfRlFfRkxPV19NQVhfUkFURSwKKyAgVENBX0ZRX0lOSVRJQUxfUVVBTlRVTSwKKyAgVENBX0ZRX1JBVEVfRU5BQkxFLAorICBUQ0FfRlFfRkxPV19ERUZBVUxUX1JBVEUsCisgIFRDQV9GUV9GTE9XX01BWF9SQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRlFfQlVDS0VUU19MT0csCi0gVENBX0ZRX0ZMT1dfUkVGSUxMX0RFTEFZLAotIF9fVENBX0ZRX01BWAorICBUQ0FfRlFfQlVDS0VUU19MT0csCisgIFRDQV9GUV9GTE9XX1JFRklMTF9ERUxBWSwKKyAgX19UQ0FfRlFfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0ZRX01BWCAoX19UQ0FfRlFfTUFYIC0gMSkKIHN0cnVjdCB0Y19mcV9xZF9zdGF0cyB7Ci0gX191NjQgZ2NfZmxvd3M7Ci0gX191NjQgaGlnaHByaW9fcGFja2V0czsKKyAgX191NjQgZ2NfZmxvd3M7CisgIF9fdTY0IGhpZ2hwcmlvX3BhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRjcF9yZXRyYW5zOwotIF9fdTY0IHRocm90dGxlZDsKLSBfX3U2NCBmbG93c19wbGltaXQ7Ci0gX191NjQgcGt0c190b29fbG9uZzsKKyAgX191NjQgdGNwX3JldHJhbnM7CisgIF9fdTY0IHRocm90dGxlZDsKKyAgX191NjQgZmxvd3NfcGxpbWl0OworICBfX3U2NCBwa3RzX3Rvb19sb25nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhbGxvY2F0aW9uX2Vycm9yczsKLSBfX3M2NCB0aW1lX25leHRfZGVsYXllZF9mbG93OwotIF9fdTMyIGZsb3dzOwotIF9fdTMyIGluYWN0aXZlX2Zsb3dzOworICBfX3U2NCBhbGxvY2F0aW9uX2Vycm9yczsKKyAgX19zNjQgdGltZV9uZXh0X2RlbGF5ZWRfZmxvdzsKKyAgX191MzIgZmxvd3M7CisgIF9fdTMyIGluYWN0aXZlX2Zsb3dzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aHJvdHRsZWRfZmxvd3M7Ci0gX191MzIgcGFkOworICBfX3UzMiB0aHJvdHRsZWRfZmxvd3M7CisgIF9fdTMyIHBhZDsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0hIRl9VTlNQRUMsCi0gVENBX0hIRl9CQUNLTE9HX0xJTUlULAotIFRDQV9ISEZfUVVBTlRVTSwKLSBUQ0FfSEhGX0hIX0ZMT1dTX0xJTUlULAorICBUQ0FfSEhGX1VOU1BFQywKKyAgVENBX0hIRl9CQUNLTE9HX0xJTUlULAorICBUQ0FfSEhGX1FVQU5UVU0sCisgIFRDQV9ISEZfSEhfRkxPV1NfTElNSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9ISEZfUkVTRVRfVElNRU9VVCwKLSBUQ0FfSEhGX0FETUlUX0JZVEVTLAotIFRDQV9ISEZfRVZJQ1RfVElNRU9VVCwKLSBUQ0FfSEhGX05PTl9ISF9XRUlHSFQsCisgIFRDQV9ISEZfUkVTRVRfVElNRU9VVCwKKyAgVENBX0hIRl9BRE1JVF9CWVRFUywKKyAgVENBX0hIRl9FVklDVF9USU1FT1VULAorICBUQ0FfSEhGX05PTl9ISF9XRUlHSFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX0hIRl9NQVgKKyAgX19UQ0FfSEhGX01BWAogfTsKICNkZWZpbmUgVENBX0hIRl9NQVggKF9fVENBX0hIRl9NQVggLSAxKQogc3RydWN0IHRjX2hoZl94c3RhdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkcm9wX292ZXJsaW1pdDsKLSBfX3UzMiBoaF9vdmVybGltaXQ7Ci0gX191MzIgaGhfdG90X2NvdW50OwotIF9fdTMyIGhoX2N1cl9jb3VudDsKKyAgX191MzIgZHJvcF9vdmVybGltaXQ7CisgIF9fdTMyIGhoX292ZXJsaW1pdDsKKyAgX191MzIgaGhfdG90X2NvdW50OworICBfX3UzMiBoaF9jdXJfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9QSUVfVU5TUEVDLAotIFRDQV9QSUVfVEFSR0VULAorICBUQ0FfUElFX1VOU1BFQywKKyAgVENBX1BJRV9UQVJHRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9QSUVfTElNSVQsCi0gVENBX1BJRV9UVVBEQVRFLAotIFRDQV9QSUVfQUxQSEEsCi0gVENBX1BJRV9CRVRBLAorICBUQ0FfUElFX0xJTUlULAorICBUQ0FfUElFX1RVUERBVEUsCisgIFRDQV9QSUVfQUxQSEEsCisgIFRDQV9QSUVfQkVUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1BJRV9FQ04sCi0gVENBX1BJRV9CWVRFTU9ERSwKLSBfX1RDQV9QSUVfTUFYCisgIFRDQV9QSUVfRUNOLAorICBUQ0FfUElFX0JZVEVNT0RFLAorICBfX1RDQV9QSUVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX1BJRV9NQVggKF9fVENBX1BJRV9NQVggLSAxKQogc3RydWN0IHRjX3BpZV94c3RhdHMgewotIF9fdTMyIHByb2I7Ci0gX191MzIgZGVsYXk7CisgIF9fdTMyIHByb2I7CisgIF9fdTMyIGRlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhdmdfZHFfcmF0ZTsKLSBfX3UzMiBwYWNrZXRzX2luOwotIF9fdTMyIGRyb3BwZWQ7Ci0gX191MzIgb3ZlcmxpbWl0OworICBfX3UzMiBhdmdfZHFfcmF0ZTsKKyAgX191MzIgcGFja2V0c19pbjsKKyAgX191MzIgZHJvcHBlZDsKKyAgX191MzIgb3ZlcmxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhxOwotIF9fdTMyIGVjbl9tYXJrOworICBfX3UzMiBtYXhxOworICBfX3UzMiBlY25fbWFyazsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdGNkdmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0Y2R2ZC5oCmluZGV4IGM4MGU4ZWIuLjVkN2EyNDYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0Y2R2ZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0Y2R2ZC5oCkBAIC01OCwxMyArNTgsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBLVF9DVFJMX0NNRF9TVEFUVVMgMgogc3RydWN0IHBrdF9jdHJsX2NvbW1hbmQgewotIF9fdTMyIGNvbW1hbmQ7Ci0gX191MzIgZGV2X2luZGV4OworICBfX3UzMiBjb21tYW5kOworICBfX3UzMiBkZXZfaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRldjsKLSBfX3UzMiBwa3RfZGV2OwotIF9fdTMyIG51bV9kZXZpY2VzOwotIF9fdTMyIHBhZGRpbmc7CisgIF9fdTMyIGRldjsKKyAgX191MzIgcGt0X2RldjsKKyAgX191MzIgbnVtX2RldmljZXM7CisgIF9fdTMyIHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUEFDS0VUX0lPQ1RMX01BR0lDICgnWCcpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BtdS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wbXUuaAppbmRleCAzNzJiZDE5Li41YTNkOGMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BtdS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG11LmgKQEAgLTg4LDMzICs4OCwzMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUE1VX0kyQ19TVEFUVVNfQlVTWSAweGZlCiBlbnVtIHsKLSBQTVVfVU5LTk9XTiwKLSBQTVVfT0hBUkVfQkFTRUQsCisgIFBNVV9VTktOT1dOLAorICBQTVVfT0hBUkVfQkFTRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBNVV9IRUFUSFJPV19CQVNFRCwKLSBQTVVfUEFERElOR1RPTl9CQVNFRCwKLSBQTVVfS0VZTEFSR09fQkFTRUQsCi0gUE1VXzY4S19WMSwKKyAgUE1VX0hFQVRIUk9XX0JBU0VELAorICBQTVVfUEFERElOR1RPTl9CQVNFRCwKKyAgUE1VX0tFWUxBUkdPX0JBU0VELAorICBQTVVfNjhLX1YxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQTVVfNjhLX1YyLAorICBQTVVfNjhLX1YyLAogfTsKIGVudW0gewotIFBNVV9QV1JfR0VUX1BPV0VSVVBfRVZFTlRTID0gMHgwMCwKKyAgUE1VX1BXUl9HRVRfUE9XRVJVUF9FVkVOVFMgPSAweDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQTVVfUFdSX1NFVF9QT1dFUlVQX0VWRU5UUyA9IDB4MDEsCi0gUE1VX1BXUl9DTFJfUE9XRVJVUF9FVkVOVFMgPSAweDAyLAotIFBNVV9QV1JfR0VUX1dBS0VVUF9FVkVOVFMgPSAweDAzLAotIFBNVV9QV1JfU0VUX1dBS0VVUF9FVkVOVFMgPSAweDA0LAorICBQTVVfUFdSX1NFVF9QT1dFUlVQX0VWRU5UUyA9IDB4MDEsCisgIFBNVV9QV1JfQ0xSX1BPV0VSVVBfRVZFTlRTID0gMHgwMiwKKyAgUE1VX1BXUl9HRVRfV0FLRVVQX0VWRU5UUyA9IDB4MDMsCisgIFBNVV9QV1JfU0VUX1dBS0VVUF9FVkVOVFMgPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQTVVfUFdSX0NMUl9XQUtFVVBfRVZFTlRTID0gMHgwNSwKKyAgUE1VX1BXUl9DTFJfV0FLRVVQX0VWRU5UUyA9IDB4MDUsCiB9OwogZW51bSB7Ci0gUE1VX1BXUl9XQUtFVVBfS0VZID0gMHgwMSwKKyAgUE1VX1BXUl9XQUtFVVBfS0VZID0gMHgwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE1VX1BXUl9XQUtFVVBfQUNfSU5TRVJUID0gMHgwMiwKLSBQTVVfUFdSX1dBS0VVUF9BQ19DSEFOR0UgPSAweDA0LAotIFBNVV9QV1JfV0FLRVVQX0xJRF9PUEVOID0gMHgwOCwKLSBQTVVfUFdSX1dBS0VVUF9SSU5HID0gMHgxMCwKKyAgUE1VX1BXUl9XQUtFVVBfQUNfSU5TRVJUID0gMHgwMiwKKyAgUE1VX1BXUl9XQUtFVVBfQUNfQ0hBTkdFID0gMHgwNCwKKyAgUE1VX1BXUl9XQUtFVVBfTElEX09QRU4gPSAweDA4LAorICBQTVVfUFdSX1dBS0VVUF9SSU5HID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bvc2l4X3R5cGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bvc2l4X3R5cGVzLmgKaW5kZXggYzE5NzUxOS4uYjBlMWM1ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wb3NpeF90eXBlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG9zaXhfdHlwZXMuaApAQCAtMjMsMTAgKzIzLDEwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0ZEX1NFVFNJWkUgMTAyNAogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgZmRzX2JpdHNbX19GRF9TRVRTSVpFIC8gKDggKiBzaXplb2YobG9uZykpXTsKKyAgdW5zaWduZWQgbG9uZyBmZHNfYml0c1tfX0ZEX1NFVFNJWkUgLyAoOCAqIHNpemVvZihsb25nKSldOwogfSBfX2tlcm5lbF9mZF9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZiB2b2lkICgqX19rZXJuZWxfc2lnaGFuZGxlcl90KShpbnQpOwordHlwZWRlZiB2b2lkKCogX19rZXJuZWxfc2lnaGFuZGxlcl90KSAoaW50KTsKIHR5cGVkZWYgaW50IF9fa2VybmVsX2tleV90OwogdHlwZWRlZiBpbnQgX19rZXJuZWxfbXFkX3Q7CiAjaW5jbHVkZSA8YXNtL3Bvc2l4X3R5cGVzLmg+CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwZGV2LmgKaW5kZXggMmZhNzg1Yy4uNWQwM2Y0MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcGRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBkZXYuaApAQCAtMjQsOSArMjQsOSBAQAogI2RlZmluZSBQUFJDT05UUk9MIF9JT1IoUFBfSU9DVEwsIDB4ODMsIHVuc2lnbmVkIGNoYXIpCiAjZGVmaW5lIFBQV0NPTlRST0wgX0lPVyhQUF9JT0NUTCwgMHg4NCwgdW5zaWduZWQgY2hhcikKIHN0cnVjdCBwcGRldl9mcm9iX3N0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBtYXNrOworICB1bnNpZ25lZCBjaGFyIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdmFsOworICB1bnNpZ25lZCBjaGFyIHZhbDsKIH07CiAjZGVmaW5lIFBQRkNPTlRST0wgX0lPVyhQUF9JT0NUTCwgMHg4ZSwgc3RydWN0IHBwZGV2X2Zyb2Jfc3RydWN0KQogI2RlZmluZSBQUFJEQVRBIF9JT1IoUFBfSU9DVEwsIDB4ODUsIHVuc2lnbmVkIGNoYXIpCkBAIC01Nyw4ICs1Nyw4IEBACiAjZGVmaW5lIFBQR0VURkxBR1MgX0lPUihQUF9JT0NUTCwgMHg5YSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFBTRVRGTEFHUyBfSU9XKFBQX0lPQ1RMLCAweDliLCBpbnQpCi0jZGVmaW5lIFBQX0ZBU1RXUklURSAoMTw8MikKLSNkZWZpbmUgUFBfRkFTVFJFQUQgKDE8PDMpCi0jZGVmaW5lIFBQX1c5MTI4NFBJQyAoMTw8NCkKKyNkZWZpbmUgUFBfRkFTVFdSSVRFICgxIDw8IDIpCisjZGVmaW5lIFBQX0ZBU1RSRUFEICgxIDw8IDMpCisjZGVmaW5lIFBQX1c5MTI4NFBJQyAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFBfRkxBR01BU0sgKFBQX0ZBU1RXUklURSB8IFBQX0ZBU1RSRUFEIHwgUFBfVzkxMjg0UElDKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtY29tcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtY29tcC5oCmluZGV4IDg2NmIwZmYuLmQ5NTMzMzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwLWNvbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcC1jb21wLmgKQEAgLTQyLDcgKzQyLDcgQEAKICNkZWZpbmUgQlNEX1ZFUlNJT04oeCkgKCh4KSA+PiA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlNEX0NVUlJFTlRfVkVSU0lPTiAxCi0jZGVmaW5lIEJTRF9NQUtFX09QVCh2LCBuKSAoKCh2KSA8PCA1KSB8IChuKSkKKyNkZWZpbmUgQlNEX01BS0VfT1BUKHYsbikgKCgodikgPDwgNSkgfCAobikpCiAjZGVmaW5lIEJTRF9NSU5fQklUUyA5CiAjZGVmaW5lIEJTRF9NQVhfQklUUyAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwLWlvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcC1pb2N0bC5oCmluZGV4IGZhMjQyM2MuLjM5MTcwMzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwLWlvY3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtaW9jdGwuaApAQCAtNjEsMzAgKzYxLDMwIEBACiAjZGVmaW5lIFNDX0RDX0VSUk9SIDB4MDA0MDAwMDAKIHN0cnVjdCBucGlvY3RsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHByb3RvY29sOwotIGVudW0gTlBtb2RlIG1vZGU7CisgIGludCBwcm90b2NvbDsKKyAgZW51bSBOUG1vZGUgbW9kZTsKIH07CiBzdHJ1Y3QgcHBwX29wdGlvbl9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfX3VzZXIgKnB0cjsKLSBfX3UzMiBsZW5ndGg7Ci0gaW50IHRyYW5zbWl0OworICBfX3U4IF9fdXNlciAqIHB0cjsKKyAgX191MzIgbGVuZ3RoOworICBpbnQgdHJhbnNtaXQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcHBvbDJ0cF9pb2Nfc3RhdHMgewotIF9fdTE2IHR1bm5lbF9pZDsKLSBfX3UxNiBzZXNzaW9uX2lkOwotIF9fdTMyIHVzaW5nX2lwc2VjOjE7CisgIF9fdTE2IHR1bm5lbF9pZDsKKyAgX191MTYgc2Vzc2lvbl9pZDsKKyAgX191MzIgdXNpbmdfaXBzZWMgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2FsaWduZWRfdTY0IHR4X3BhY2tldHM7Ci0gX19hbGlnbmVkX3U2NCB0eF9ieXRlczsKLSBfX2FsaWduZWRfdTY0IHR4X2Vycm9yczsKLSBfX2FsaWduZWRfdTY0IHJ4X3BhY2tldHM7CisgIF9fYWxpZ25lZF91NjQgdHhfcGFja2V0czsKKyAgX19hbGlnbmVkX3U2NCB0eF9ieXRlczsKKyAgX19hbGlnbmVkX3U2NCB0eF9lcnJvcnM7CisgIF9fYWxpZ25lZF91NjQgcnhfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19hbGlnbmVkX3U2NCByeF9ieXRlczsKLSBfX2FsaWduZWRfdTY0IHJ4X3NlcV9kaXNjYXJkczsKLSBfX2FsaWduZWRfdTY0IHJ4X29vc19wYWNrZXRzOwotIF9fYWxpZ25lZF91NjQgcnhfZXJyb3JzOworICBfX2FsaWduZWRfdTY0IHJ4X2J5dGVzOworICBfX2FsaWduZWRfdTY0IHJ4X3NlcV9kaXNjYXJkczsKKyAgX19hbGlnbmVkX3U2NCByeF9vb3NfcGFja2V0czsKKyAgX19hbGlnbmVkX3U2NCByeF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUFBQSU9DR0ZMQUdTIF9JT1IoJ3QnLCA5MCwgaW50KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHBfZGVmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHBfZGVmcy5oCmluZGV4IDY2NTQwNTguLmZmMWFmYmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwX2RlZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcF9kZWZzLmgKQEAgLTIzLDEwICsyMywxMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFBQX0ZDU0xFTiAyCiAjZGVmaW5lIFBQUF9NUlUgMTUwMAotI2RlZmluZSBQUFBfQUREUkVTUyhwKSAoKChfX3U4ICopKHApKVswXSkKLSNkZWZpbmUgUFBQX0NPTlRST0wocCkgKCgoX191OCAqKShwKSlbMV0pCisjZGVmaW5lIFBQUF9BRERSRVNTKHApICgoKF9fdTggKikgKHApKVswXSkKKyNkZWZpbmUgUFBQX0NPTlRST0wocCkgKCgoX191OCAqKSAocCkpWzFdKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFBQX1BST1RPQ09MKHApICgoKChfX3U4ICopKHApKVsyXSA8PCA4KSArICgoX191OCAqKShwKSlbM10pCisjZGVmaW5lIFBQUF9QUk9UT0NPTChwKSAoKCgoX191OCAqKSAocCkpWzJdIDw8IDgpICsgKChfX3U4ICopIChwKSlbM10pCiAjZGVmaW5lIFBQUF9BTExTVEFUSU9OUyAweGZmCiAjZGVmaW5lIFBQUF9VSSAweDAzCiAjZGVmaW5lIFBQUF9GTEFHIDB4N2UKQEAgLTY3LDY4ICs2Nyw2OCBAQAogdHlwZWRlZiBfX3UzMiBleHRfYWNjbVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIE5QbW9kZSB7Ci0gTlBNT0RFX1BBU1MsCi0gTlBNT0RFX0RST1AsCi0gTlBNT0RFX0VSUk9SLAorICBOUE1PREVfUEFTUywKKyAgTlBNT0RFX0RST1AsCisgIE5QTU9ERV9FUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlBNT0RFX1FVRVVFCisgIE5QTU9ERV9RVUVVRQogfTsKIHN0cnVjdCBwcHBzdGF0IHsKLSBfX3UzMiBwcHBfZGlzY2FyZHM7CisgIF9fdTMyIHBwcF9kaXNjYXJkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHBwX2lieXRlczsKLSBfX3UzMiBwcHBfaW9jdGVjdHM7Ci0gX191MzIgcHBwX2lwYWNrZXRzOwotIF9fdTMyIHBwcF9pZXJyb3JzOworICBfX3UzMiBwcHBfaWJ5dGVzOworICBfX3UzMiBwcHBfaW9jdGVjdHM7CisgIF9fdTMyIHBwcF9pcGFja2V0czsKKyAgX191MzIgcHBwX2llcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBwcF9pbHFyczsKLSBfX3UzMiBwcHBfb2J5dGVzOwotIF9fdTMyIHBwcF9vb2N0ZWN0czsKLSBfX3UzMiBwcHBfb3BhY2tldHM7CisgIF9fdTMyIHBwcF9pbHFyczsKKyAgX191MzIgcHBwX29ieXRlczsKKyAgX191MzIgcHBwX29vY3RlY3RzOworICBfX3UzMiBwcHBfb3BhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBwcF9vZXJyb3JzOwotIF9fdTMyIHBwcF9vbHFyczsKKyAgX191MzIgcHBwX29lcnJvcnM7CisgIF9fdTMyIHBwcF9vbHFyczsKIH07CiBzdHJ1Y3QgdmpzdGF0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmpzX3BhY2tldHM7Ci0gX191MzIgdmpzX2NvbXByZXNzZWQ7Ci0gX191MzIgdmpzX3NlYXJjaGVzOwotIF9fdTMyIHZqc19taXNzZXM7CisgIF9fdTMyIHZqc19wYWNrZXRzOworICBfX3UzMiB2anNfY29tcHJlc3NlZDsKKyAgX191MzIgdmpzX3NlYXJjaGVzOworICBfX3UzMiB2anNfbWlzc2VzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2anNfdW5jb21wcmVzc2VkaW47Ci0gX191MzIgdmpzX2NvbXByZXNzZWRpbjsKLSBfX3UzMiB2anNfZXJyb3JpbjsKLSBfX3UzMiB2anNfdG9zc2VkOworICBfX3UzMiB2anNfdW5jb21wcmVzc2VkaW47CisgIF9fdTMyIHZqc19jb21wcmVzc2VkaW47CisgIF9fdTMyIHZqc19lcnJvcmluOworICBfX3UzMiB2anNfdG9zc2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29tcHN0YXQgewotIF9fdTMyIHVuY19ieXRlczsKLSBfX3UzMiB1bmNfcGFja2V0czsKKyAgX191MzIgdW5jX2J5dGVzOworICBfX3UzMiB1bmNfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY29tcF9ieXRlczsKLSBfX3UzMiBjb21wX3BhY2tldHM7Ci0gX191MzIgaW5jX2J5dGVzOwotIF9fdTMyIGluY19wYWNrZXRzOworICBfX3UzMiBjb21wX2J5dGVzOworICBfX3UzMiBjb21wX3BhY2tldHM7CisgIF9fdTMyIGluY19ieXRlczsKKyAgX191MzIgaW5jX3BhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluX2NvdW50OwotIF9fdTMyIGJ5dGVzX291dDsKLSBkb3VibGUgcmF0aW87CisgIF9fdTMyIGluX2NvdW50OworICBfX3UzMiBieXRlc19vdXQ7CisgIGRvdWJsZSByYXRpbzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcF9zdGF0cyB7Ci0gc3RydWN0IHBwcHN0YXQgcDsKLSBzdHJ1Y3QgdmpzdGF0IHZqOworICBzdHJ1Y3QgcHBwc3RhdCBwOworICBzdHJ1Y3QgdmpzdGF0IHZqOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHBwX2NvbXBfc3RhdHMgewotIHN0cnVjdCBjb21wc3RhdCBjOwotIHN0cnVjdCBjb21wc3RhdCBkOworICBzdHJ1Y3QgY29tcHN0YXQgYzsKKyAgc3RydWN0IGNvbXBzdGF0IGQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcHBfaWRsZSB7Ci0gX19rZXJuZWxfdGltZV90IHhtaXRfaWRsZTsKLSBfX2tlcm5lbF90aW1lX3QgcmVjdl9pZGxlOworICBfX2tlcm5lbF90aW1lX3QgeG1pdF9pZGxlOworICBfX2tlcm5lbF90aW1lX3QgcmVjdl9pZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bwcy5oCmluZGV4IGNiOGE0MTguLjY5ODk4YTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHMuaApAQCAtMjcsMjcgKzI3LDI3IEBACiAjZGVmaW5lIFBQU19NQVhfTkFNRV9MRU4gMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHBzX2t0aW1lIHsKLSBfX3M2NCBzZWM7Ci0gX19zMzIgbnNlYzsKLSBfX3UzMiBmbGFnczsKKyAgX19zNjQgc2VjOworICBfX3MzMiBuc2VjOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBQUFNfVElNRV9JTlZBTElEICgxPDwwKQorI2RlZmluZSBQUFNfVElNRV9JTlZBTElEICgxIDw8IDApCiBzdHJ1Y3QgcHBzX2tpbmZvIHsKLSBfX3UzMiBhc3NlcnRfc2VxdWVuY2U7CisgIF9fdTMyIGFzc2VydF9zZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2xlYXJfc2VxdWVuY2U7Ci0gc3RydWN0IHBwc19rdGltZSBhc3NlcnRfdHU7Ci0gc3RydWN0IHBwc19rdGltZSBjbGVhcl90dTsKLSBpbnQgY3VycmVudF9tb2RlOworICBfX3UzMiBjbGVhcl9zZXF1ZW5jZTsKKyAgc3RydWN0IHBwc19rdGltZSBhc3NlcnRfdHU7CisgIHN0cnVjdCBwcHNfa3RpbWUgY2xlYXJfdHU7CisgIGludCBjdXJyZW50X21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcHNfa3BhcmFtcyB7Ci0gaW50IGFwaV92ZXJzaW9uOwotIGludCBtb2RlOworICBpbnQgYXBpX3ZlcnNpb247CisgIGludCBtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcHBzX2t0aW1lIGFzc2VydF9vZmZfdHU7Ci0gc3RydWN0IHBwc19rdGltZSBjbGVhcl9vZmZfdHU7CisgIHN0cnVjdCBwcHNfa3RpbWUgYXNzZXJ0X29mZl90dTsKKyAgc3RydWN0IHBwc19rdGltZSBjbGVhcl9vZmZfdHU7CiB9OwogI2RlZmluZSBQUFNfQ0FQVFVSRUFTU0VSVCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNjgsMTUgKzY4LDE1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUFNfS0NfSEFSRFBQU19GTEwgMgogc3RydWN0IHBwc19mZGF0YSB7Ci0gc3RydWN0IHBwc19raW5mbyBpbmZvOwotIHN0cnVjdCBwcHNfa3RpbWUgdGltZW91dDsKKyAgc3RydWN0IHBwc19raW5mbyBpbmZvOworICBzdHJ1Y3QgcHBzX2t0aW1lIHRpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcHNfYmluZF9hcmdzIHsKLSBpbnQgdHNmb3JtYXQ7Ci0gaW50IGVkZ2U7CisgIGludCB0c2Zvcm1hdDsKKyAgaW50IGVkZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb25zdW1lcjsKKyAgaW50IGNvbnN1bWVyOwogfTsKICNpbmNsdWRlIDxsaW51eC9pb2N0bC5oPgogI2RlZmluZSBQUFNfR0VUUEFSQU1TIF9JT1IoJ3AnLCAweGExLCBzdHJ1Y3QgcHBzX2twYXJhbXMgKikKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHJjdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHJjdGwuaAppbmRleCBhMTI3YjVhLi4wNzg5OGNjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ByY3RsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcmN0bC5oCkBAIC0xOCwxMDMgKzE4LDEyOSBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9MSU5VWF9QUkNUTF9ICiAjZGVmaW5lIF9MSU5VWF9QUkNUTF9ICisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgUFJfU0VUX1BERUFUSFNJRyAxCi0jZGVmaW5lIFBSX0dFVF9QREVBVEhTSUcgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfR0VUX1BERUFUSFNJRyAyCiAjZGVmaW5lIFBSX0dFVF9EVU1QQUJMRSAzCiAjZGVmaW5lIFBSX1NFVF9EVU1QQUJMRSA0CiAjZGVmaW5lIFBSX0dFVF9VTkFMSUdOIDUKLSNkZWZpbmUgUFJfU0VUX1VOQUxJR04gNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfU0VUX1VOQUxJR04gNgogI2RlZmluZSBQUl9VTkFMSUdOX05PUFJJTlQgMQogI2RlZmluZSBQUl9VTkFMSUdOX1NJR0JVUyAyCiAjZGVmaW5lIFBSX0dFVF9LRUVQQ0FQUyA3Ci0jZGVmaW5lIFBSX1NFVF9LRUVQQ0FQUyA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfS0VFUENBUFMgOAogI2RlZmluZSBQUl9HRVRfRlBFTVUgOQogI2RlZmluZSBQUl9TRVRfRlBFTVUgMTAKICNkZWZpbmUgUFJfRlBFTVVfTk9QUklOVCAxCi0jZGVmaW5lIFBSX0ZQRU1VX1NJR0ZQRSAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9GUEVNVV9TSUdGUEUgMgogI2RlZmluZSBQUl9HRVRfRlBFWEMgMTEKICNkZWZpbmUgUFJfU0VUX0ZQRVhDIDEyCiAjZGVmaW5lIFBSX0ZQX0VYQ19TV19FTkFCTEUgMHg4MAotI2RlZmluZSBQUl9GUF9FWENfRElWIDB4MDEwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9GUF9FWENfRElWIDB4MDEwMDAwCiAjZGVmaW5lIFBSX0ZQX0VYQ19PVkYgMHgwMjAwMDAKICNkZWZpbmUgUFJfRlBfRVhDX1VORCAweDA0MDAwMAogI2RlZmluZSBQUl9GUF9FWENfUkVTIDB4MDgwMDAwCi0jZGVmaW5lIFBSX0ZQX0VYQ19JTlYgMHgxMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX0ZQX0VYQ19JTlYgMHgxMDAwMDAKICNkZWZpbmUgUFJfRlBfRVhDX0RJU0FCTEVEIDAKICNkZWZpbmUgUFJfRlBfRVhDX05PTlJFQ09WIDEKICNkZWZpbmUgUFJfRlBfRVhDX0FTWU5DIDIKLSNkZWZpbmUgUFJfRlBfRVhDX1BSRUNJU0UgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfRlBfRVhDX1BSRUNJU0UgMwogI2RlZmluZSBQUl9HRVRfVElNSU5HIDEzCiAjZGVmaW5lIFBSX1NFVF9USU1JTkcgMTQKICNkZWZpbmUgUFJfVElNSU5HX1NUQVRJU1RJQ0FMIDAKLSNkZWZpbmUgUFJfVElNSU5HX1RJTUVTVEFNUCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9USU1JTkdfVElNRVNUQU1QIDEKICNkZWZpbmUgUFJfU0VUX05BTUUgMTUKICNkZWZpbmUgUFJfR0VUX05BTUUgMTYKICNkZWZpbmUgUFJfR0VUX0VORElBTiAxOQotI2RlZmluZSBQUl9TRVRfRU5ESUFOIDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfRU5ESUFOIDIwCiAjZGVmaW5lIFBSX0VORElBTl9CSUcgMAogI2RlZmluZSBQUl9FTkRJQU5fTElUVExFIDEKICNkZWZpbmUgUFJfRU5ESUFOX1BQQ19MSVRUTEUgMgotI2RlZmluZSBQUl9HRVRfU0VDQ09NUCAyMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfR0VUX1NFQ0NPTVAgMjEKICNkZWZpbmUgUFJfU0VUX1NFQ0NPTVAgMjIKICNkZWZpbmUgUFJfQ0FQQlNFVF9SRUFEIDIzCiAjZGVmaW5lIFBSX0NBUEJTRVRfRFJPUCAyNAotI2RlZmluZSBQUl9HRVRfVFNDIDI1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9HRVRfVFNDIDI1CiAjZGVmaW5lIFBSX1NFVF9UU0MgMjYKICNkZWZpbmUgUFJfVFNDX0VOQUJMRSAxCiAjZGVmaW5lIFBSX1RTQ19TSUdTRUdWIDIKLSNkZWZpbmUgUFJfR0VUX1NFQ1VSRUJJVFMgMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX0dFVF9TRUNVUkVCSVRTIDI3CiAjZGVmaW5lIFBSX1NFVF9TRUNVUkVCSVRTIDI4CiAjZGVmaW5lIFBSX1NFVF9USU1FUlNMQUNLIDI5CiAjZGVmaW5lIFBSX0dFVF9USU1FUlNMQUNLIDMwCi0jZGVmaW5lIFBSX1RBU0tfUEVSRl9FVkVOVFNfRElTQUJMRSAzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfVEFTS19QRVJGX0VWRU5UU19ESVNBQkxFIDMxCiAjZGVmaW5lIFBSX1RBU0tfUEVSRl9FVkVOVFNfRU5BQkxFIDMyCiAjZGVmaW5lIFBSX01DRV9LSUxMIDMzCiAjZGVmaW5lIFBSX01DRV9LSUxMX0NMRUFSIDAKLSNkZWZpbmUgUFJfTUNFX0tJTExfU0VUIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX01DRV9LSUxMX1NFVCAxCiAjZGVmaW5lIFBSX01DRV9LSUxMX0xBVEUgMAogI2RlZmluZSBQUl9NQ0VfS0lMTF9FQVJMWSAxCiAjZGVmaW5lIFBSX01DRV9LSUxMX0RFRkFVTFQgMgotI2RlZmluZSBQUl9NQ0VfS0lMTF9HRVQgMzQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX01DRV9LSUxMX0dFVCAzNAogI2RlZmluZSBQUl9TRVRfTU0gMzUKICNkZWZpbmUgUFJfU0VUX01NX1NUQVJUX0NPREUgMQogI2RlZmluZSBQUl9TRVRfTU1fRU5EX0NPREUgMgotI2RlZmluZSBQUl9TRVRfTU1fU1RBUlRfREFUQSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfTU1fU1RBUlRfREFUQSAzCiAjZGVmaW5lIFBSX1NFVF9NTV9FTkRfREFUQSA0CiAjZGVmaW5lIFBSX1NFVF9NTV9TVEFSVF9TVEFDSyA1CiAjZGVmaW5lIFBSX1NFVF9NTV9TVEFSVF9CUksgNgotI2RlZmluZSBQUl9TRVRfTU1fQlJLIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9NTV9CUksgNwogI2RlZmluZSBQUl9TRVRfTU1fQVJHX1NUQVJUIDgKICNkZWZpbmUgUFJfU0VUX01NX0FSR19FTkQgOQogI2RlZmluZSBQUl9TRVRfTU1fRU5WX1NUQVJUIDEwCi0jZGVmaW5lIFBSX1NFVF9NTV9FTlZfRU5EIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfTU1fRU5WX0VORCAxMQogI2RlZmluZSBQUl9TRVRfTU1fQVVYViAxMgogI2RlZmluZSBQUl9TRVRfTU1fRVhFX0ZJTEUgMTMKLSNkZWZpbmUgUFJfU0VUX1BUUkFDRVIgMHg1OTYxNmQ2MQotI2RlZmluZSBQUl9TRVRfUFRSQUNFUl9BTlkgKCh1bnNpZ25lZCBsb25nKS0xKQorI2RlZmluZSBQUl9TRVRfTU1fTUFQIDE0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfTU1fTUFQX1NJWkUgMTUKK3N0cnVjdCBwcmN0bF9tbV9tYXAgeworICBfX3U2NCBzdGFydF9jb2RlOworICBfX3U2NCBlbmRfY29kZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHN0YXJ0X2RhdGE7CisgIF9fdTY0IGVuZF9kYXRhOworICBfX3U2NCBzdGFydF9icms7CisgIF9fdTY0IGJyazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHN0YXJ0X3N0YWNrOworICBfX3U2NCBhcmdfc3RhcnQ7CisgIF9fdTY0IGFyZ19lbmQ7CisgIF9fdTY0IGVudl9zdGFydDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGVudl9lbmQ7CisgIF9fdTY0ICogYXV4djsKKyAgX191MzIgYXV4dl9zaXplOworICBfX3UzMiBleGVfZmQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgUFJfU0VUX1BUUkFDRVIgMHg1OTYxNmQ2MQorI2RlZmluZSBQUl9TRVRfUFRSQUNFUl9BTlkgKCh1bnNpZ25lZCBsb25nKSAtIDEpCiAjZGVmaW5lIFBSX1NFVF9DSElMRF9TVUJSRUFQRVIgMzYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBSX0dFVF9DSElMRF9TVUJSRUFQRVIgMzcKICNkZWZpbmUgUFJfU0VUX05PX05FV19QUklWUyAzOAogI2RlZmluZSBQUl9HRVRfTk9fTkVXX1BSSVZTIDM5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUl9HRVRfVElEX0FERFJFU1MgNDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9USFBfRElTQUJMRSA0MQorI2RlZmluZSBQUl9HRVRfVEhQX0RJU0FCTEUgNDIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wc2NpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BzY2kuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNTIzYWJlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wc2NpLmgKQEAgLTAsMCArMSw3OSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9MSU5VWF9QU0NJX0gKKyNkZWZpbmUgX1VBUElfTElOVVhfUFNDSV9ICisjZGVmaW5lIFBTQ0lfMF8yX0ZOX0JBU0UgMHg4NDAwMDAwMAorI2RlZmluZSBQU0NJXzBfMl9GTihuKSAoUFNDSV8wXzJfRk5fQkFTRSArIChuKSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yXzY0QklUIDB4NDAwMDAwMDAKKyNkZWZpbmUgUFNDSV8wXzJfRk42NF9CQVNFIChQU0NJXzBfMl9GTl9CQVNFICsgUFNDSV8wXzJfNjRCSVQpCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjQobikgKFBTQ0lfMF8yX0ZONjRfQkFTRSArIChuKSkKKyNkZWZpbmUgUFNDSV8wXzJfRk5fUFNDSV9WRVJTSU9OIFBTQ0lfMF8yX0ZOKDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJXzBfMl9GTl9DUFVfU1VTUEVORCBQU0NJXzBfMl9GTigxKQorI2RlZmluZSBQU0NJXzBfMl9GTl9DUFVfT0ZGIFBTQ0lfMF8yX0ZOKDIpCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX0NQVV9PTiBQU0NJXzBfMl9GTigzKQorI2RlZmluZSBQU0NJXzBfMl9GTl9BRkZJTklUWV9JTkZPIFBTQ0lfMF8yX0ZOKDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJXzBfMl9GTl9NSUdSQVRFIFBTQ0lfMF8yX0ZOKDUpCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX01JR1JBVEVfSU5GT19UWVBFIFBTQ0lfMF8yX0ZOKDYpCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX01JR1JBVEVfSU5GT19VUF9DUFUgUFNDSV8wXzJfRk4oNykKKyNkZWZpbmUgUFNDSV8wXzJfRk5fU1lTVEVNX09GRiBQU0NJXzBfMl9GTig4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFNDSV8wXzJfRk5fU1lTVEVNX1JFU0VUIFBTQ0lfMF8yX0ZOKDkpCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjRfQ1BVX1NVU1BFTkQgUFNDSV8wXzJfRk42NCgxKQorI2RlZmluZSBQU0NJXzBfMl9GTjY0X0NQVV9PTiBQU0NJXzBfMl9GTjY0KDMpCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjRfQUZGSU5JVFlfSU5GTyBQU0NJXzBfMl9GTjY0KDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJXzBfMl9GTjY0X01JR1JBVEUgUFNDSV8wXzJfRk42NCg1KQorI2RlZmluZSBQU0NJXzBfMl9GTjY0X01JR1JBVEVfSU5GT19VUF9DUFUgUFNDSV8wXzJfRk42NCg3KQorI2RlZmluZSBQU0NJXzBfMl9QT1dFUl9TVEFURV9JRF9NQVNLIDB4ZmZmZgorI2RlZmluZSBQU0NJXzBfMl9QT1dFUl9TVEFURV9JRF9TSElGVCAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJXzBfMl9QT1dFUl9TVEFURV9UWVBFX1NISUZUIDE2CisjZGVmaW5lIFBTQ0lfMF8yX1BPV0VSX1NUQVRFX1RZUEVfTUFTSyAoMHgxIDw8IFBTQ0lfMF8yX1BPV0VSX1NUQVRFX1RZUEVfU0hJRlQpCisjZGVmaW5lIFBTQ0lfMF8yX1BPV0VSX1NUQVRFX0FGRkxfU0hJRlQgMjQKKyNkZWZpbmUgUFNDSV8wXzJfUE9XRVJfU1RBVEVfQUZGTF9NQVNLICgweDMgPDwgUFNDSV8wXzJfUE9XRVJfU1RBVEVfQUZGTF9TSElGVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX0FGRklOSVRZX0xFVkVMX09OIDAKKyNkZWZpbmUgUFNDSV8wXzJfQUZGSU5JVFlfTEVWRUxfT0ZGIDEKKyNkZWZpbmUgUFNDSV8wXzJfQUZGSU5JVFlfTEVWRUxfT05fUEVORElORyAyCisjZGVmaW5lIFBTQ0lfMF8yX1RPU19VUF9NSUdSQVRFIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX1RPU19VUF9OT19NSUdSQVRFIDEKKyNkZWZpbmUgUFNDSV8wXzJfVE9TX01QIDIKKyNkZWZpbmUgUFNDSV9WRVJTSU9OX01BSk9SX1NISUZUIDE2CisjZGVmaW5lIFBTQ0lfVkVSU0lPTl9NSU5PUl9NQVNLICgoMVUgPDwgUFNDSV9WRVJTSU9OX01BSk9SX1NISUZUKSAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJX1ZFUlNJT05fTUFKT1JfTUFTSyB+UFNDSV9WRVJTSU9OX01JTk9SX01BU0sKKyNkZWZpbmUgUFNDSV9WRVJTSU9OX01BSk9SKHZlcikgKCgodmVyKSAmIFBTQ0lfVkVSU0lPTl9NQUpPUl9NQVNLKSA+PiBQU0NJX1ZFUlNJT05fTUFKT1JfU0hJRlQpCisjZGVmaW5lIFBTQ0lfVkVSU0lPTl9NSU5PUih2ZXIpICgodmVyKSAmIFBTQ0lfVkVSU0lPTl9NSU5PUl9NQVNLKQorI2RlZmluZSBQU0NJX1JFVF9TVUNDRVNTIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfUkVUX05PVF9TVVBQT1JURUQgLSAxCisjZGVmaW5lIFBTQ0lfUkVUX0lOVkFMSURfUEFSQU1TIC0gMgorI2RlZmluZSBQU0NJX1JFVF9ERU5JRUQgLSAzCisjZGVmaW5lIFBTQ0lfUkVUX0FMUkVBRFlfT04gLSA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJX1JFVF9PTl9QRU5ESU5HIC0gNQorI2RlZmluZSBQU0NJX1JFVF9JTlRFUk5BTF9GQUlMVVJFIC0gNgorI2RlZmluZSBQU0NJX1JFVF9OT1RfUFJFU0VOVCAtIDcKKyNkZWZpbmUgUFNDSV9SRVRfRElTQUJMRUQgLSA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3B0cF9jbG9jay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wdHBfY2xvY2suaAppbmRleCAwMWIxNWQwLi5iYjlkNmQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3B0cF9jbG9jay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRwX2Nsb2NrLmgKQEAgLTIxLDYxICsyMSw4MSBAQAogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBUUF9FTkFCTEVfRkVBVFVSRSAoMTw8MCkKLSNkZWZpbmUgUFRQX1JJU0lOR19FREdFICgxPDwxKQotI2RlZmluZSBQVFBfRkFMTElOR19FREdFICgxPDwyKQorI2RlZmluZSBQVFBfRU5BQkxFX0ZFQVRVUkUgKDEgPDwgMCkKKyNkZWZpbmUgUFRQX1JJU0lOR19FREdFICgxIDw8IDEpCisjZGVmaW5lIFBUUF9GQUxMSU5HX0VER0UgKDEgPDwgMikKIHN0cnVjdCBwdHBfY2xvY2tfdGltZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczY0IHNlYzsKLSBfX3UzMiBuc2VjOwotIF9fdTMyIHJlc2VydmVkOworICBfX3M2NCBzZWM7CisgIF9fdTMyIG5zZWM7CisgIF9fdTMyIHJlc2VydmVkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHRwX2Nsb2NrX2NhcHMgewotIGludCBtYXhfYWRqOwotIGludCBuX2FsYXJtOwotIGludCBuX2V4dF90czsKKyAgaW50IG1heF9hZGo7CisgIGludCBuX2FsYXJtOworICBpbnQgbl9leHRfdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBuX3Blcl9vdXQ7Ci0gaW50IHBwczsKLSBpbnQgcnN2WzE1XTsKKyAgaW50IG5fcGVyX291dDsKKyAgaW50IHBwczsKKyAgaW50IG5fcGluczsKKyAgaW50IHJzdlsxNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHRwX2V4dHRzX3JlcXVlc3QgewotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IHJzdlsyXTsKKyAgdW5zaWduZWQgaW50IGluZGV4OworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgcnN2WzJdOwogfTsKIHN0cnVjdCBwdHBfcGVyb3V0X3JlcXVlc3QgewotIHN0cnVjdCBwdHBfY2xvY2tfdGltZSBzdGFydDsKLSBzdHJ1Y3QgcHRwX2Nsb2NrX3RpbWUgcGVyaW9kOworICBzdHJ1Y3QgcHRwX2Nsb2NrX3RpbWUgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IHJzdls0XTsKKyAgc3RydWN0IHB0cF9jbG9ja190aW1lIHBlcmlvZDsKKyAgdW5zaWduZWQgaW50IGluZGV4OworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCByc3ZbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBUUF9NQVhfU0FNUExFUyAyNQogc3RydWN0IHB0cF9zeXNfb2Zmc2V0IHsKLSB1bnNpZ25lZCBpbnQgbl9zYW1wbGVzOwotIHVuc2lnbmVkIGludCByc3ZbM107CisgIHVuc2lnbmVkIGludCBuX3NhbXBsZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwdHBfY2xvY2tfdGltZSB0c1syICogUFRQX01BWF9TQU1QTEVTICsgMV07CisgIHVuc2lnbmVkIGludCByc3ZbM107CisgIHN0cnVjdCBwdHBfY2xvY2tfdGltZSB0c1syICogUFRQX01BWF9TQU1QTEVTICsgMV07CiB9OworZW51bSBwdHBfcGluX2Z1bmN0aW9uIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFBUUF9QRl9OT05FLAorICBQVFBfUEZfRVhUVFMsCisgIFBUUF9QRl9QRVJPVVQsCisgIFBUUF9QRl9QSFlTWU5DLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgcHRwX3Bpbl9kZXNjIHsKKyAgY2hhciBuYW1lWzY0XTsKKyAgdW5zaWduZWQgaW50IGluZGV4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IGZ1bmM7CisgIHVuc2lnbmVkIGludCBjaGFuOworICB1bnNpZ25lZCBpbnQgcnN2WzVdOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBUUF9DTEtfTUFHSUMgJz0nCiAjZGVmaW5lIFBUUF9DTE9DS19HRVRDQVBTIF9JT1IoUFRQX0NMS19NQUdJQywgMSwgc3RydWN0IHB0cF9jbG9ja19jYXBzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFRQX0VYVFRTX1JFUVVFU1QgX0lPVyhQVFBfQ0xLX01BR0lDLCAyLCBzdHJ1Y3QgcHRwX2V4dHRzX3JlcXVlc3QpCiAjZGVmaW5lIFBUUF9QRVJPVVRfUkVRVUVTVCBfSU9XKFBUUF9DTEtfTUFHSUMsIDMsIHN0cnVjdCBwdHBfcGVyb3V0X3JlcXVlc3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQVFBfRU5BQkxFX1BQUyBfSU9XKFBUUF9DTEtfTUFHSUMsIDQsIGludCkKICNkZWZpbmUgUFRQX1NZU19PRkZTRVQgX0lPVyhQVFBfQ0xLX01BR0lDLCA1LCBzdHJ1Y3QgcHRwX3N5c19vZmZzZXQpCisjZGVmaW5lIFBUUF9QSU5fR0VURlVOQyBfSU9XUihQVFBfQ0xLX01BR0lDLCA2LCBzdHJ1Y3QgcHRwX3Bpbl9kZXNjKQorI2RlZmluZSBQVFBfUElOX1NFVEZVTkMgX0lPVyhQVFBfQ0xLX01BR0lDLCA3LCBzdHJ1Y3QgcHRwX3Bpbl9kZXNjKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwdHBfZXh0dHNfZXZlbnQgewotIHN0cnVjdCBwdHBfY2xvY2tfdGltZSB0OwotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHN0cnVjdCBwdHBfY2xvY2tfdGltZSB0OworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJzdlsyXTsKKyAgdW5zaWduZWQgaW50IHJzdlsyXTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRyYWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3B0cmFjZS5oCmluZGV4IDZmNzFiNmQuLmEzMjQ0ZTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRyYWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wdHJhY2UuaApAQCAtNDksMTAgKzQ5LDEwIEBACiAjZGVmaW5lIFBUUkFDRV9MSVNURU4gMHg0MjA4CiAjZGVmaW5lIFBUUkFDRV9QRUVLU0lHSU5GTyAweDQyMDkKIHN0cnVjdCBwdHJhY2VfcGVla3NpZ2luZm9fYXJncyB7Ci0gX191NjQgb2ZmOworICBfX3U2NCBvZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fczMyIG5yOworICBfX3UzMiBmbGFnczsKKyAgX19zMzIgbnI7CiB9OwogI2RlZmluZSBQVFJBQ0VfR0VUU0lHTUFTSyAweDQyMGEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3FueDRfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54NF9mcy5oCmluZGV4IGFlNWUzZWUuLmIwZTUxN2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54NF9mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54NF9mcy5oCkBAIC00OCw1NCArNDgsNTQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFFOWDRfTkFNRV9NQVggNDgKIHN0cnVjdCBxbng0X2lub2RlX2VudHJ5IHsKLSBjaGFyIGRpX2ZuYW1lW1FOWDRfU0hPUlRfTkFNRV9NQVhdOwotIHFueDRfb2ZmX3QgZGlfc2l6ZTsKKyAgY2hhciBkaV9mbmFtZVtRTlg0X1NIT1JUX05BTUVfTUFYXTsKKyAgcW54NF9vZmZfdCBkaV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBxbng0X3h0bnRfdCBkaV9maXJzdF94dG50OwotIF9fbGUzMiBkaV94YmxrOwotIF9fbGUzMiBkaV9mdGltZTsKLSBfX2xlMzIgZGlfbXRpbWU7CisgIHFueDRfeHRudF90IGRpX2ZpcnN0X3h0bnQ7CisgIF9fbGUzMiBkaV94YmxrOworICBfX2xlMzIgZGlfZnRpbWU7CisgIF9fbGUzMiBkaV9tdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGRpX2F0aW1lOwotIF9fbGUzMiBkaV9jdGltZTsKLSBxbng0X254dG50X3QgZGlfbnVtX3h0bnRzOwotIHFueDRfbW9kZV90IGRpX21vZGU7CisgIF9fbGUzMiBkaV9hdGltZTsKKyAgX19sZTMyIGRpX2N0aW1lOworICBxbng0X254dG50X3QgZGlfbnVtX3h0bnRzOworICBxbng0X21vZGVfdCBkaV9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBxbng0X211aWRfdCBkaV91aWQ7Ci0gcW54NF9tZ2lkX3QgZGlfZ2lkOwotIHFueDRfbmxpbmtfdCBkaV9ubGluazsKLSBfX3U4IGRpX3plcm9bNF07CisgIHFueDRfbXVpZF90IGRpX3VpZDsKKyAgcW54NF9tZ2lkX3QgZGlfZ2lkOworICBxbng0X25saW5rX3QgZGlfbmxpbms7CisgIF9fdTggZGlfemVyb1s0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcW54NF9mdHlwZV90IGRpX3R5cGU7Ci0gX191OCBkaV9zdGF0dXM7CisgIHFueDRfZnR5cGVfdCBkaV90eXBlOworICBfX3U4IGRpX3N0YXR1czsKIH07CiBzdHJ1Y3QgcW54NF9saW5rX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRsX2ZuYW1lW1FOWDRfTkFNRV9NQVhdOwotIF9fbGUzMiBkbF9pbm9kZV9ibGs7Ci0gX191OCBkbF9pbm9kZV9uZHg7Ci0gX191OCBkbF9zcGFyZVsxMF07CisgIGNoYXIgZGxfZm5hbWVbUU5YNF9OQU1FX01BWF07CisgIF9fbGUzMiBkbF9pbm9kZV9ibGs7CisgIF9fdTggZGxfaW5vZGVfbmR4OworICBfX3U4IGRsX3NwYXJlWzEwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkbF9zdGF0dXM7CisgIF9fdTggZGxfc3RhdHVzOwogfTsKIHN0cnVjdCBxbng0X3hibGsgewotIF9fbGUzMiB4YmxrX25leHRfeGJsazsKKyAgX19sZTMyIHhibGtfbmV4dF94YmxrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgeGJsa19wcmV2X3hibGs7Ci0gX191OCB4YmxrX251bV94dG50czsKLSBfX3U4IHhibGtfc3BhcmVbM107Ci0gX19sZTMyIHhibGtfbnVtX2Jsb2NrczsKKyAgX19sZTMyIHhibGtfcHJldl94YmxrOworICBfX3U4IHhibGtfbnVtX3h0bnRzOworICBfX3U4IHhibGtfc3BhcmVbM107CisgIF9fbGUzMiB4YmxrX251bV9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHFueDRfeHRudF90IHhibGtfeHRudHNbUU5YNF9NQVhfWFROVFNfUEVSX1hCTEtdOwotIGNoYXIgeGJsa19zaWduYXR1cmVbOF07Ci0gcW54NF94dG50X3QgeGJsa19maXJzdF94dG50OworICBxbng0X3h0bnRfdCB4YmxrX3h0bnRzW1FOWDRfTUFYX1hUTlRTX1BFUl9YQkxLXTsKKyAgY2hhciB4YmxrX3NpZ25hdHVyZVs4XTsKKyAgcW54NF94dG50X3QgeGJsa19maXJzdF94dG50OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcW54NF9zdXBlcl9ibG9jayB7Ci0gc3RydWN0IHFueDRfaW5vZGVfZW50cnkgUm9vdERpcjsKLSBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBJbm9kZTsKLSBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBCb290OworICBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBSb290RGlyOworICBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBJbm9kZTsKKyAgc3RydWN0IHFueDRfaW5vZGVfZW50cnkgQm9vdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHFueDRfaW5vZGVfZW50cnkgQWx0Qm9vdDsKKyAgc3RydWN0IHFueDRfaW5vZGVfZW50cnkgQWx0Qm9vdDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54dHlwZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54dHlwZXMuaAppbmRleCA0MTIxMDI1Li5kNmJhMTI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3FueHR5cGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbnh0eXBlcy5oCkBAIC0yMyw4ICsyMyw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX3U4IHFueDRfZnR5cGVfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSBfX2xlMzIgeHRudF9ibGs7Ci0gX19sZTMyIHh0bnRfc2l6ZTsKKyAgX19sZTMyIHh0bnRfYmxrOworICBfX2xlMzIgeHRudF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gcW54NF94dG50X3Q7CiB0eXBlZGVmIF9fbGUxNiBxbng0X21vZGVfdDsKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcXVvdGEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcXVvdGEuaAppbmRleCA5MjMyZDY0Li5kNWZjNzA3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3F1b3RhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xdW90YS5oCkBAIC0yNiwxMCArMjYsMTEgQEAKICNkZWZpbmUgVVNSUVVPVEEgMAogI2RlZmluZSBHUlBRVU9UQSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJTklUUUZOQU1FUyB7ICAgInVzZXIiLCAgICAgImdyb3VwIiwgICAgICJ1bmRlZmluZWQiLCAgfTsKKyNkZWZpbmUgSU5JVFFGTkFNRVMgeyAidXNlciIsICJncm91cCIsICJ1bmRlZmluZWQiLCBcCit9OwogI2RlZmluZSBTVUJDTURNQVNLIDB4MDBmZgogI2RlZmluZSBTVUJDTURTSElGVCA4Ci0jZGVmaW5lIFFDTUQoY21kLCB0eXBlKSAoKChjbWQpIDw8IFNVQkNNRFNISUZUKSB8ICgodHlwZSkgJiBTVUJDTURNQVNLKSkKKyNkZWZpbmUgUUNNRChjbWQsdHlwZSkgKCgoY21kKSA8PCBTVUJDTURTSElGVCkgfCAoKHR5cGUpICYgU1VCQ01ETUFTSykpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBRX1NZTkMgMHg4MDAwMDEKICNkZWZpbmUgUV9RVU9UQU9OIDB4ODAwMDAyCkBAIC00OSwxNCArNTAsMTQgQEAKICNkZWZpbmUgUUlGX0RRQkxLU0laRV9CSVRTIDEwCiAjZGVmaW5lIFFJRl9EUUJMS1NJWkUgKDEgPDwgUUlGX0RRQkxLU0laRV9CSVRTKQogZW51bSB7Ci0gUUlGX0JMSU1JVFNfQiA9IDAsCisgIFFJRl9CTElNSVRTX0IgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBRSUZfU1BBQ0VfQiwKLSBRSUZfSUxJTUlUU19CLAotIFFJRl9JTk9ERVNfQiwKLSBRSUZfQlRJTUVfQiwKKyAgUUlGX1NQQUNFX0IsCisgIFFJRl9JTElNSVRTX0IsCisgIFFJRl9JTk9ERVNfQiwKKyAgUUlGX0JUSU1FX0IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFJRl9JVElNRV9CLAorICBRSUZfSVRJTUVfQiwKIH07CiAjZGVmaW5lIFFJRl9CTElNSVRTICgxIDw8IFFJRl9CTElNSVRTX0IpCiAjZGVmaW5lIFFJRl9TUEFDRSAoMSA8PCBRSUZfU1BBQ0VfQikKQEAgLTcyLDE3ICs3MywxNyBAQAogI2RlZmluZSBRSUZfQUxMIChRSUZfTElNSVRTIHwgUUlGX1VTQUdFIHwgUUlGX1RJTUVTKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpZl9kcWJsayB7Ci0gX191NjQgZHFiX2JoYXJkbGltaXQ7Ci0gX191NjQgZHFiX2Jzb2Z0bGltaXQ7Ci0gX191NjQgZHFiX2N1cnNwYWNlOworICBfX3U2NCBkcWJfYmhhcmRsaW1pdDsKKyAgX191NjQgZHFiX2Jzb2Z0bGltaXQ7CisgIF9fdTY0IGRxYl9jdXJzcGFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHFiX2loYXJkbGltaXQ7Ci0gX191NjQgZHFiX2lzb2Z0bGltaXQ7Ci0gX191NjQgZHFiX2N1cmlub2RlczsKLSBfX3U2NCBkcWJfYnRpbWU7CisgIF9fdTY0IGRxYl9paGFyZGxpbWl0OworICBfX3U2NCBkcWJfaXNvZnRsaW1pdDsKKyAgX191NjQgZHFiX2N1cmlub2RlczsKKyAgX191NjQgZHFiX2J0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcWJfaXRpbWU7Ci0gX191MzIgZHFiX3ZhbGlkOworICBfX3U2NCBkcWJfaXRpbWU7CisgIF9fdTMyIGRxYl92YWxpZDsKIH07CiAjZGVmaW5lIElJRl9CR1JBQ0UgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTkxLDEwICs5MiwxMCBAQAogI2RlZmluZSBJSUZfQUxMIChJSUZfQkdSQUNFIHwgSUlGX0lHUkFDRSB8IElJRl9GTEFHUykKIHN0cnVjdCBpZl9kcWluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcWlfYmdyYWNlOwotIF9fdTY0IGRxaV9pZ3JhY2U7Ci0gX191MzIgZHFpX2ZsYWdzOwotIF9fdTMyIGRxaV92YWxpZDsKKyAgX191NjQgZHFpX2JncmFjZTsKKyAgX191NjQgZHFpX2lncmFjZTsKKyAgX191MzIgZHFpX2ZsYWdzOworICBfX3UzMiBkcWlfdmFsaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUVVPVEFfTkxfTk9XQVJOIDAKQEAgLTExMiwyMyArMTEzLDIzIEBACiAjZGVmaW5lIFFVT1RBX05MX0JTT0ZUQkVMT1cgMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBRVU9UQV9OTF9DX1VOU1BFQywKLSBRVU9UQV9OTF9DX1dBUk5JTkcsCi0gX19RVU9UQV9OTF9DX01BWCwKKyAgUVVPVEFfTkxfQ19VTlNQRUMsCisgIFFVT1RBX05MX0NfV0FSTklORywKKyAgX19RVU9UQV9OTF9DX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBRVU9UQV9OTF9DX01BWCAoX19RVU9UQV9OTF9DX01BWCAtIDEpCiBlbnVtIHsKLSBRVU9UQV9OTF9BX1VOU1BFQywKKyAgUVVPVEFfTkxfQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFVT1RBX05MX0FfUVRZUEUsCi0gUVVPVEFfTkxfQV9FWENFU1NfSUQsCi0gUVVPVEFfTkxfQV9XQVJOSU5HLAotIFFVT1RBX05MX0FfREVWX01BSk9SLAorICBRVU9UQV9OTF9BX1FUWVBFLAorICBRVU9UQV9OTF9BX0VYQ0VTU19JRCwKKyAgUVVPVEFfTkxfQV9XQVJOSU5HLAorICBRVU9UQV9OTF9BX0RFVl9NQUpPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUVVPVEFfTkxfQV9ERVZfTUlOT1IsCi0gUVVPVEFfTkxfQV9DQVVTRURfSUQsCi0gX19RVU9UQV9OTF9BX01BWCwKKyAgUVVPVEFfTkxfQV9ERVZfTUlOT1IsCisgIFFVT1RBX05MX0FfQ0FVU0VEX0lELAorICBfX1FVT1RBX05MX0FfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFFVT1RBX05MX0FfTUFYIChfX1FVT1RBX05MX0FfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFpZC9tZF9wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhaWQvbWRfcC5oCmluZGV4IGZjNmUyMGUuLmJkZjhlN2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFpZC9tZF9wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3AuaApAQCAtNDEsNyArNDEsNyBAQAogI2RlZmluZSBNRF9TQl9ERVNDUklQVE9SX1dPUkRTIDMyCiAjZGVmaW5lIE1EX1NCX0RJU0tTIDI3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNRF9TQl9ESVNLU19XT1JEUyAoTURfU0JfRElTS1MqTURfU0JfREVTQ1JJUFRPUl9XT1JEUykKKyNkZWZpbmUgTURfU0JfRElTS1NfV09SRFMgKE1EX1NCX0RJU0tTICogTURfU0JfREVTQ1JJUFRPUl9XT1JEUykKICNkZWZpbmUgTURfU0JfUkVTRVJWRURfV09SRFMgKDEwMjQgLSBNRF9TQl9HRU5FUklDX1dPUkRTIC0gTURfU0JfUEVSU09OQUxJVFlfV09SRFMgLSBNRF9TQl9ESVNLU19XT1JEUyAtIE1EX1NCX0RFU0NSSVBUT1JfV09SRFMpCiAjZGVmaW5lIE1EX1NCX0VRVUFMX1dPUkRTIChNRF9TQl9HRU5FUklDX1dPUkRTICsgTURfU0JfUEVSU09OQUxJVFlfV09SRFMgKyBNRF9TQl9ESVNLU19XT1JEUykKICNkZWZpbmUgTURfRElTS19GQVVMVFkgMApAQCAtNTIsMTMgKzUyLDEzIEBACiAjZGVmaW5lIE1EX0RJU0tfV1JJVEVNT1NUTFkgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IG1kcF9kZXZpY2VfZGVzY3JpcHRvcl9zIHsKLSBfX3UzMiBudW1iZXI7Ci0gX191MzIgbWFqb3I7Ci0gX191MzIgbWlub3I7CisgIF9fdTMyIG51bWJlcjsKKyAgX191MzIgbWFqb3I7CisgIF9fdTMyIG1pbm9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByYWlkX2Rpc2s7Ci0gX191MzIgc3RhdGU7Ci0gX191MzIgcmVzZXJ2ZWRbTURfU0JfREVTQ1JJUFRPUl9XT1JEUyAtIDVdOworICBfX3UzMiByYWlkX2Rpc2s7CisgIF9fdTMyIHN0YXRlOworICBfX3UzMiByZXNlcnZlZFtNRF9TQl9ERVNDUklQVE9SX1dPUkRTIC0gNV07CiB9IG1kcF9kaXNrX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNRF9TQl9NQUdJQyAweGE5MmI0ZWZjCkBAIC02NywxMjIgKzY3LDEyMiBAQAogI2RlZmluZSBNRF9TQl9CSVRNQVBfUFJFU0VOVCA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgbWRwX3N1cGVyYmxvY2tfcyB7Ci0gX191MzIgbWRfbWFnaWM7Ci0gX191MzIgbWFqb3JfdmVyc2lvbjsKLSBfX3UzMiBtaW5vcl92ZXJzaW9uOworICBfX3UzMiBtZF9tYWdpYzsKKyAgX191MzIgbWFqb3JfdmVyc2lvbjsKKyAgX191MzIgbWlub3JfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGF0Y2hfdmVyc2lvbjsKLSBfX3UzMiBndmFsaWRfd29yZHM7Ci0gX191MzIgc2V0X3V1aWQwOwotIF9fdTMyIGN0aW1lOworICBfX3UzMiBwYXRjaF92ZXJzaW9uOworICBfX3UzMiBndmFsaWRfd29yZHM7CisgIF9fdTMyIHNldF91dWlkMDsKKyAgX191MzIgY3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxldmVsOwotIF9fdTMyIHNpemU7Ci0gX191MzIgbnJfZGlza3M7Ci0gX191MzIgcmFpZF9kaXNrczsKKyAgX191MzIgbGV2ZWw7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIG5yX2Rpc2tzOworICBfX3UzMiByYWlkX2Rpc2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtZF9taW5vcjsKLSBfX3UzMiBub3RfcGVyc2lzdGVudDsKLSBfX3UzMiBzZXRfdXVpZDE7Ci0gX191MzIgc2V0X3V1aWQyOworICBfX3UzMiBtZF9taW5vcjsKKyAgX191MzIgbm90X3BlcnNpc3RlbnQ7CisgIF9fdTMyIHNldF91dWlkMTsKKyAgX191MzIgc2V0X3V1aWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZXRfdXVpZDM7Ci0gX191MzIgZ3N0YXRlX2NyZXNlcnZlZFtNRF9TQl9HRU5FUklDX0NPTlNUQU5UX1dPUkRTIC0gMTZdOwotIF9fdTMyIHV0aW1lOwotIF9fdTMyIHN0YXRlOworICBfX3UzMiBzZXRfdXVpZDM7CisgIF9fdTMyIGdzdGF0ZV9jcmVzZXJ2ZWRbTURfU0JfR0VORVJJQ19DT05TVEFOVF9XT1JEUyAtIDE2XTsKKyAgX191MzIgdXRpbWU7CisgIF9fdTMyIHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhY3RpdmVfZGlza3M7Ci0gX191MzIgd29ya2luZ19kaXNrczsKLSBfX3UzMiBmYWlsZWRfZGlza3M7Ci0gX191MzIgc3BhcmVfZGlza3M7CisgIF9fdTMyIGFjdGl2ZV9kaXNrczsKKyAgX191MzIgd29ya2luZ19kaXNrczsKKyAgX191MzIgZmFpbGVkX2Rpc2tzOworICBfX3UzMiBzcGFyZV9kaXNrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2JfY3N1bTsKKyAgX191MzIgc2JfY3N1bTsKICNpZiBkZWZpbmVkKF9fQllURV9PUkRFUikgPyBfX0JZVEVfT1JERVIgPT0gX19CSUdfRU5ESUFOIDogZGVmaW5lZChfX0JJR19FTkRJQU4pCi0gX191MzIgZXZlbnRzX2hpOwotIF9fdTMyIGV2ZW50c19sbzsKKyAgX191MzIgZXZlbnRzX2hpOworICBfX3UzMiBldmVudHNfbG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNwX2V2ZW50c19oaTsKLSBfX3UzMiBjcF9ldmVudHNfbG87Ci0jZWxpZiBkZWZpbmVkKF9fQllURV9PUkRFUikgPyBfX0JZVEVfT1JERVIgPT0gX19MSVRUTEVfRU5ESUFOIDogZGVmaW5lZChfX0xJVFRMRV9FTkRJQU4pCi0gX191MzIgZXZlbnRzX2xvOworICBfX3UzMiBjcF9ldmVudHNfaGk7CisgIF9fdTMyIGNwX2V2ZW50c19sbzsKKyNlbGlmIGRlZmluZWQoX19CWVRFX09SREVSKT9fX0JZVEVfT1JERVI9PV9fTElUVExFX0VORElBTjpkZWZpbmVkKF9fTElUVExFX0VORElBTikKKyAgX191MzIgZXZlbnRzX2xvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBldmVudHNfaGk7Ci0gX191MzIgY3BfZXZlbnRzX2xvOwotIF9fdTMyIGNwX2V2ZW50c19oaTsKKyAgX191MzIgZXZlbnRzX2hpOworICBfX3UzMiBjcF9ldmVudHNfbG87CisgIF9fdTMyIGNwX2V2ZW50c19oaTsKICNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vycm9yIHVuc3BlY2lmaWVkIGVuZGlhbm5lc3MKICNlbmRpZgotIF9fdTMyIHJlY292ZXJ5X2NwOwotIF9fdTY0IHJlc2hhcGVfcG9zaXRpb247CisgIF9fdTMyIHJlY292ZXJ5X2NwOworICBfX3U2NCByZXNoYXBlX3Bvc2l0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZXdfbGV2ZWw7Ci0gX191MzIgZGVsdGFfZGlza3M7Ci0gX191MzIgbmV3X2xheW91dDsKLSBfX3UzMiBuZXdfY2h1bms7CisgIF9fdTMyIG5ld19sZXZlbDsKKyAgX191MzIgZGVsdGFfZGlza3M7CisgIF9fdTMyIG5ld19sYXlvdXQ7CisgIF9fdTMyIG5ld19jaHVuazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ3N0YXRlX3NyZXNlcnZlZFtNRF9TQl9HRU5FUklDX1NUQVRFX1dPUkRTIC0gMThdOwotIF9fdTMyIGxheW91dDsKLSBfX3UzMiBjaHVua19zaXplOwotIF9fdTMyIHJvb3RfcHY7CisgIF9fdTMyIGdzdGF0ZV9zcmVzZXJ2ZWRbTURfU0JfR0VORVJJQ19TVEFURV9XT1JEUyAtIDE4XTsKKyAgX191MzIgbGF5b3V0OworICBfX3UzMiBjaHVua19zaXplOworICBfX3UzMiByb290X3B2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByb290X2Jsb2NrOwotIF9fdTMyIHBzdGF0ZV9yZXNlcnZlZFtNRF9TQl9QRVJTT05BTElUWV9XT1JEUyAtIDRdOwotIG1kcF9kaXNrX3QgZGlza3NbTURfU0JfRElTS1NdOwotIF9fdTMyIHJlc2VydmVkW01EX1NCX1JFU0VSVkVEX1dPUkRTXTsKKyAgX191MzIgcm9vdF9ibG9jazsKKyAgX191MzIgcHN0YXRlX3Jlc2VydmVkW01EX1NCX1BFUlNPTkFMSVRZX1dPUkRTIC0gNF07CisgIG1kcF9kaXNrX3QgZGlza3NbTURfU0JfRElTS1NdOworICBfX3UzMiByZXNlcnZlZFtNRF9TQl9SRVNFUlZFRF9XT1JEU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1kcF9kaXNrX3QgdGhpc19kaXNrOworICBtZHBfZGlza190IHRoaXNfZGlzazsKIH0gbWRwX3N1cGVyX3Q7Ci0jZGVmaW5lIE1EX1NVUEVSQkxPQ0tfMV9USU1FX1NFQ19NQVNLICgoMVVMTDw8NDApIC0gMSkKKyNkZWZpbmUgTURfU1VQRVJCTE9DS18xX1RJTUVfU0VDX01BU0sgKCgxVUxMIDw8IDQwKSAtIDEpCiBzdHJ1Y3QgbWRwX3N1cGVyYmxvY2tfMSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBtYWdpYzsKLSBfX2xlMzIgbWFqb3JfdmVyc2lvbjsKLSBfX2xlMzIgZmVhdHVyZV9tYXA7Ci0gX19sZTMyIHBhZDA7CisgIF9fbGUzMiBtYWdpYzsKKyAgX19sZTMyIG1ham9yX3ZlcnNpb247CisgIF9fbGUzMiBmZWF0dXJlX21hcDsKKyAgX19sZTMyIHBhZDA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2V0X3V1aWRbMTZdOwotIGNoYXIgc2V0X25hbWVbMzJdOwotIF9fbGU2NCBjdGltZTsKLSBfX2xlMzIgbGV2ZWw7CisgIF9fdTggc2V0X3V1aWRbMTZdOworICBjaGFyIHNldF9uYW1lWzMyXTsKKyAgX19sZTY0IGN0aW1lOworICBfX2xlMzIgbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBsYXlvdXQ7Ci0gX19sZTY0IHNpemU7Ci0gX19sZTMyIGNodW5rc2l6ZTsKLSBfX2xlMzIgcmFpZF9kaXNrczsKKyAgX19sZTMyIGxheW91dDsKKyAgX19sZTY0IHNpemU7CisgIF9fbGUzMiBjaHVua3NpemU7CisgIF9fbGUzMiByYWlkX2Rpc2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgYml0bWFwX29mZnNldDsKLSBfX2xlMzIgbmV3X2xldmVsOwotIF9fbGU2NCByZXNoYXBlX3Bvc2l0aW9uOwotIF9fbGUzMiBkZWx0YV9kaXNrczsKKyAgX19sZTMyIGJpdG1hcF9vZmZzZXQ7CisgIF9fbGUzMiBuZXdfbGV2ZWw7CisgIF9fbGU2NCByZXNoYXBlX3Bvc2l0aW9uOworICBfX2xlMzIgZGVsdGFfZGlza3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBuZXdfbGF5b3V0OwotIF9fbGUzMiBuZXdfY2h1bms7Ci0gX19sZTMyIG5ld19vZmZzZXQ7Ci0gX19sZTY0IGRhdGFfb2Zmc2V0OworICBfX2xlMzIgbmV3X2xheW91dDsKKyAgX19sZTMyIG5ld19jaHVuazsKKyAgX19sZTMyIG5ld19vZmZzZXQ7CisgIF9fbGU2NCBkYXRhX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IGRhdGFfc2l6ZTsKLSBfX2xlNjQgc3VwZXJfb2Zmc2V0OwotIF9fbGU2NCByZWNvdmVyeV9vZmZzZXQ7Ci0gX19sZTMyIGRldl9udW1iZXI7CisgIF9fbGU2NCBkYXRhX3NpemU7CisgIF9fbGU2NCBzdXBlcl9vZmZzZXQ7CisgIF9fbGU2NCByZWNvdmVyeV9vZmZzZXQ7CisgIF9fbGUzMiBkZXZfbnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY250X2NvcnJlY3RlZF9yZWFkOwotIF9fdTggZGV2aWNlX3V1aWRbMTZdOwotIF9fdTggZGV2ZmxhZ3M7CisgIF9fbGUzMiBjbnRfY29ycmVjdGVkX3JlYWQ7CisgIF9fdTggZGV2aWNlX3V1aWRbMTZdOworICBfX3U4IGRldmZsYWdzOwogI2RlZmluZSBXcml0ZU1vc3RseTEgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJibG9nX3NoaWZ0OwotIF9fbGUxNiBiYmxvZ19zaXplOwotIF9fbGUzMiBiYmxvZ19vZmZzZXQ7Ci0gX19sZTY0IHV0aW1lOworICBfX3U4IGJibG9nX3NoaWZ0OworICBfX2xlMTYgYmJsb2dfc2l6ZTsKKyAgX19sZTMyIGJibG9nX29mZnNldDsKKyAgX19sZTY0IHV0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlNjQgZXZlbnRzOwotIF9fbGU2NCByZXN5bmNfb2Zmc2V0OwotIF9fbGUzMiBzYl9jc3VtOwotIF9fbGUzMiBtYXhfZGV2OworICBfX2xlNjQgZXZlbnRzOworICBfX2xlNjQgcmVzeW5jX29mZnNldDsKKyAgX19sZTMyIHNiX2NzdW07CisgIF9fbGUzMiBtYXhfZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZDNbNjQtMzJdOwotIF9fbGUxNiBkZXZfcm9sZXNbMF07CisgIF9fdTggcGFkM1s2NCAtIDMyXTsKKyAgX19sZTE2IGRldl9yb2xlc1swXTsKIH07CiAjZGVmaW5lIE1EX0ZFQVRVUkVfQklUTUFQX09GRlNFVCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTk0LDYgKzE5NCw2IEBACiAjZGVmaW5lIE1EX0ZFQVRVUkVfUkVTSEFQRV9CQUNLV0FSRFMgMzIKICNkZWZpbmUgTURfRkVBVFVSRV9ORVdfT0ZGU0VUIDY0CiAjZGVmaW5lIE1EX0ZFQVRVUkVfUkVDT1ZFUllfQklUTUFQIDEyOAotI2RlZmluZSBNRF9GRUFUVVJFX0FMTCAoTURfRkVBVFVSRV9CSVRNQVBfT0ZGU0VUICAgfE1EX0ZFQVRVUkVfUkVDT1ZFUllfT0ZGU0VUICAgfE1EX0ZFQVRVUkVfUkVTSEFQRV9BQ1RJVkUgICB8TURfRkVBVFVSRV9CQURfQkxPQ0tTICAgfE1EX0ZFQVRVUkVfUkVQTEFDRU1FTlQgICB8TURfRkVBVFVSRV9SRVNIQVBFX0JBQ0tXQVJEUyAgIHxNRF9GRUFUVVJFX05FV19PRkZTRVQgICB8TURfRkVBVFVSRV9SRUNPVkVSWV9CSVRNQVAgICApCisjZGVmaW5lIE1EX0ZFQVRVUkVfQUxMIChNRF9GRUFUVVJFX0JJVE1BUF9PRkZTRVQgfCBNRF9GRUFUVVJFX1JFQ09WRVJZX09GRlNFVCB8IE1EX0ZFQVRVUkVfUkVTSEFQRV9BQ1RJVkUgfCBNRF9GRUFUVVJFX0JBRF9CTE9DS1MgfCBNRF9GRUFUVVJFX1JFUExBQ0VNRU5UIHwgTURfRkVBVFVSRV9SRVNIQVBFX0JBQ0tXQVJEUyB8IE1EX0ZFQVRVUkVfTkVXX09GRlNFVCB8IE1EX0ZFQVRVUkVfUkVDT1ZFUllfQklUTUFQKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFpZC9tZF91LmgKaW5kZXggOTQwMmM3Ny4uN2E5ZmE2MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhaWQvbWRfdS5oCkBAIC0yMiw5OCArMjIsOTQgQEAKICNkZWZpbmUgTURfTUlOT1JfVkVSU0lPTiA5MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTURfUEFUQ0hMRVZFTF9WRVJTSU9OIDMKLSNkZWZpbmUgUkFJRF9WRVJTSU9OIF9JT1IgKE1EX01BSk9SLCAweDEwLCBtZHVfdmVyc2lvbl90KQotI2RlZmluZSBHRVRfQVJSQVlfSU5GTyBfSU9SIChNRF9NQUpPUiwgMHgxMSwgbWR1X2FycmF5X2luZm9fdCkKLSNkZWZpbmUgR0VUX0RJU0tfSU5GTyBfSU9SIChNRF9NQUpPUiwgMHgxMiwgbWR1X2Rpc2tfaW5mb190KQorI2RlZmluZSBSQUlEX1ZFUlNJT04gX0lPUihNRF9NQUpPUiwgMHgxMCwgbWR1X3ZlcnNpb25fdCkKKyNkZWZpbmUgR0VUX0FSUkFZX0lORk8gX0lPUihNRF9NQUpPUiwgMHgxMSwgbWR1X2FycmF5X2luZm9fdCkKKyNkZWZpbmUgR0VUX0RJU0tfSU5GTyBfSU9SKE1EX01BSk9SLCAweDEyLCBtZHVfZGlza19pbmZvX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQUklOVF9SQUlEX0RFQlVHIF9JTyAoTURfTUFKT1IsIDB4MTMpCi0jZGVmaW5lIFJBSURfQVVUT1JVTiBfSU8gKE1EX01BSk9SLCAweDE0KQotI2RlZmluZSBHRVRfQklUTUFQX0ZJTEUgX0lPUiAoTURfTUFKT1IsIDB4MTUsIG1kdV9iaXRtYXBfZmlsZV90KQotI2RlZmluZSBDTEVBUl9BUlJBWSBfSU8gKE1EX01BSk9SLCAweDIwKQorI2RlZmluZSBSQUlEX0FVVE9SVU4gX0lPKE1EX01BSk9SLCAweDE0KQorI2RlZmluZSBHRVRfQklUTUFQX0ZJTEUgX0lPUihNRF9NQUpPUiwgMHgxNSwgbWR1X2JpdG1hcF9maWxlX3QpCisjZGVmaW5lIENMRUFSX0FSUkFZIF9JTyhNRF9NQUpPUiwgMHgyMCkKKyNkZWZpbmUgQUREX05FV19ESVNLIF9JT1coTURfTUFKT1IsIDB4MjEsIG1kdV9kaXNrX2luZm9fdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFERF9ORVdfRElTSyBfSU9XIChNRF9NQUpPUiwgMHgyMSwgbWR1X2Rpc2tfaW5mb190KQotI2RlZmluZSBIT1RfUkVNT1ZFX0RJU0sgX0lPIChNRF9NQUpPUiwgMHgyMikKLSNkZWZpbmUgU0VUX0FSUkFZX0lORk8gX0lPVyAoTURfTUFKT1IsIDB4MjMsIG1kdV9hcnJheV9pbmZvX3QpCi0jZGVmaW5lIFNFVF9ESVNLX0lORk8gX0lPIChNRF9NQUpPUiwgMHgyNCkKKyNkZWZpbmUgSE9UX1JFTU9WRV9ESVNLIF9JTyhNRF9NQUpPUiwgMHgyMikKKyNkZWZpbmUgU0VUX0FSUkFZX0lORk8gX0lPVyhNRF9NQUpPUiwgMHgyMywgbWR1X2FycmF5X2luZm9fdCkKKyNkZWZpbmUgU0VUX0RJU0tfSU5GTyBfSU8oTURfTUFKT1IsIDB4MjQpCisjZGVmaW5lIFdSSVRFX1JBSURfSU5GTyBfSU8oTURfTUFKT1IsIDB4MjUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBXUklURV9SQUlEX0lORk8gX0lPIChNRF9NQUpPUiwgMHgyNSkKLSNkZWZpbmUgVU5QUk9URUNUX0FSUkFZIF9JTyAoTURfTUFKT1IsIDB4MjYpCi0jZGVmaW5lIFBST1RFQ1RfQVJSQVkgX0lPIChNRF9NQUpPUiwgMHgyNykKLSNkZWZpbmUgSE9UX0FERF9ESVNLIF9JTyAoTURfTUFKT1IsIDB4MjgpCisjZGVmaW5lIFVOUFJPVEVDVF9BUlJBWSBfSU8oTURfTUFKT1IsIDB4MjYpCisjZGVmaW5lIFBST1RFQ1RfQVJSQVkgX0lPKE1EX01BSk9SLCAweDI3KQorI2RlZmluZSBIT1RfQUREX0RJU0sgX0lPKE1EX01BSk9SLCAweDI4KQorI2RlZmluZSBTRVRfRElTS19GQVVMVFkgX0lPKE1EX01BSk9SLCAweDI5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VUX0RJU0tfRkFVTFRZIF9JTyAoTURfTUFKT1IsIDB4MjkpCi0jZGVmaW5lIEhPVF9HRU5FUkFURV9FUlJPUiBfSU8gKE1EX01BSk9SLCAweDJhKQotI2RlZmluZSBTRVRfQklUTUFQX0ZJTEUgX0lPVyAoTURfTUFKT1IsIDB4MmIsIGludCkKLSNkZWZpbmUgUlVOX0FSUkFZIF9JT1cgKE1EX01BSk9SLCAweDMwLCBtZHVfcGFyYW1fdCkKKyNkZWZpbmUgSE9UX0dFTkVSQVRFX0VSUk9SIF9JTyhNRF9NQUpPUiwgMHgyYSkKKyNkZWZpbmUgU0VUX0JJVE1BUF9GSUxFIF9JT1coTURfTUFKT1IsIDB4MmIsIGludCkKKyNkZWZpbmUgUlVOX0FSUkFZIF9JT1coTURfTUFKT1IsIDB4MzAsIG1kdV9wYXJhbV90KQorI2RlZmluZSBTVE9QX0FSUkFZIF9JTyhNRF9NQUpPUiwgMHgzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNUT1BfQVJSQVkgX0lPIChNRF9NQUpPUiwgMHgzMikKLSNkZWZpbmUgU1RPUF9BUlJBWV9STyBfSU8gKE1EX01BSk9SLCAweDMzKQotI2RlZmluZSBSRVNUQVJUX0FSUkFZX1JXIF9JTyAoTURfTUFKT1IsIDB4MzQpCisjZGVmaW5lIFNUT1BfQVJSQVlfUk8gX0lPKE1EX01BSk9SLCAweDMzKQorI2RlZmluZSBSRVNUQVJUX0FSUkFZX1JXIF9JTyhNRF9NQUpPUiwgMHgzNCkKICNkZWZpbmUgTWRwTWlub3JTaGlmdCA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgbWR1X3ZlcnNpb25fcyB7Ci0gaW50IG1ham9yOwotIGludCBtaW5vcjsKLSBpbnQgcGF0Y2hsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBtYWpvcjsKKyAgaW50IG1pbm9yOworICBpbnQgcGF0Y2hsZXZlbDsKIH0gbWR1X3ZlcnNpb25fdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtZHVfYXJyYXlfaW5mb19zIHsKLSBpbnQgbWFqb3JfdmVyc2lvbjsKLSBpbnQgbWlub3JfdmVyc2lvbjsKKyAgaW50IG1ham9yX3ZlcnNpb247CisgIGludCBtaW5vcl92ZXJzaW9uOworICBpbnQgcGF0Y2hfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBhdGNoX3ZlcnNpb247Ci0gaW50IGN0aW1lOwotIGludCBsZXZlbDsKLSBpbnQgc2l6ZTsKKyAgaW50IGN0aW1lOworICBpbnQgbGV2ZWw7CisgIGludCBzaXplOworICBpbnQgbnJfZGlza3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBucl9kaXNrczsKLSBpbnQgcmFpZF9kaXNrczsKLSBpbnQgbWRfbWlub3I7Ci0gaW50IG5vdF9wZXJzaXN0ZW50OworICBpbnQgcmFpZF9kaXNrczsKKyAgaW50IG1kX21pbm9yOworICBpbnQgbm90X3BlcnNpc3RlbnQ7CisgIGludCB1dGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHV0aW1lOwotIGludCBzdGF0ZTsKLSBpbnQgYWN0aXZlX2Rpc2tzOwotIGludCB3b3JraW5nX2Rpc2tzOworICBpbnQgc3RhdGU7CisgIGludCBhY3RpdmVfZGlza3M7CisgIGludCB3b3JraW5nX2Rpc2tzOworICBpbnQgZmFpbGVkX2Rpc2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmFpbGVkX2Rpc2tzOwotIGludCBzcGFyZV9kaXNrczsKLSBpbnQgbGF5b3V0OwotIGludCBjaHVua19zaXplOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHNwYXJlX2Rpc2tzOworICBpbnQgbGF5b3V0OworICBpbnQgY2h1bmtfc2l6ZTsKIH0gbWR1X2FycmF5X2luZm9fdDsKLSNkZWZpbmUgTEVWRUxfTVVMVElQQVRIICgtNCkKLSNkZWZpbmUgTEVWRUxfTElORUFSICgtMSkKLSNkZWZpbmUgTEVWRUxfRkFVTFRZICgtNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIExFVkVMX05PTkUgKC0xMDAwMDAwKQorI2RlZmluZSBMRVZFTF9NVUxUSVBBVEggKC0gNCkKKyNkZWZpbmUgTEVWRUxfTElORUFSICgtIDEpCisjZGVmaW5lIExFVkVMX0ZBVUxUWSAoLSA1KQorI2RlZmluZSBMRVZFTF9OT05FICgtIDEwMDAwMDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgbWR1X2Rpc2tfaW5mb19zIHsKLSBpbnQgbnVtYmVyOwotIGludCBtYWpvcjsKKyAgaW50IG51bWJlcjsKKyAgaW50IG1ham9yOworICBpbnQgbWlub3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtaW5vcjsKLSBpbnQgcmFpZF9kaXNrOwotIGludCBzdGF0ZTsKKyAgaW50IHJhaWRfZGlzazsKKyAgaW50IHN0YXRlOwogfSBtZHVfZGlza19pbmZvX3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgbWR1X3N0YXJ0X2luZm9fcyB7Ci0gaW50IG1ham9yOwotIGludCBtaW5vcjsKLSBpbnQgcmFpZF9kaXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RhdGU7CisgIGludCBtYWpvcjsKKyAgaW50IG1pbm9yOworICBpbnQgcmFpZF9kaXNrOworICBpbnQgc3RhdGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBtZHVfc3RhcnRfaW5mb190OwotdHlwZWRlZiBzdHJ1Y3QgbWR1X2JpdG1hcF9maWxlX3MKLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwYXRobmFtZVs0MDk2XTsKK3R5cGVkZWYgc3RydWN0IG1kdV9iaXRtYXBfZmlsZV9zIHsKKyAgY2hhciBwYXRobmFtZVs0MDk2XTsKIH0gbWR1X2JpdG1hcF9maWxlX3Q7Ci10eXBlZGVmIHN0cnVjdCBtZHVfcGFyYW1fcwotewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGVyc29uYWxpdHk7Ci0gaW50IGNodW5rX3NpemU7Ci0gaW50IG1heF9mYXVsdDsKK3R5cGVkZWYgc3RydWN0IG1kdV9wYXJhbV9zIHsKKyAgaW50IHBlcnNvbmFsaXR5OworICBpbnQgY2h1bmtfc2l6ZTsKKyAgaW50IG1heF9mYXVsdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IG1kdV9wYXJhbV90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYW5kb20uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFuZG9tLmgKaW5kZXggNjIxNWQwOC4uMjIzMzJkMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYW5kb20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhbmRvbS5oCkBAIC0yMiwxOCArMjIsMjAgQEAKICNpbmNsdWRlIDxsaW51eC9pb2N0bC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9pcnFuci5oPgotI2RlZmluZSBSTkRHRVRFTlRDTlQgX0lPUiggJ1InLCAweDAwLCBpbnQgKQotI2RlZmluZSBSTkRBRERUT0VOVENOVCBfSU9XKCAnUicsIDB4MDEsIGludCApCi0jZGVmaW5lIFJOREdFVFBPT0wgX0lPUiggJ1InLCAweDAyLCBpbnQgWzJdICkKKyNkZWZpbmUgUk5ER0VURU5UQ05UIF9JT1IoJ1InLCAweDAwLCBpbnQpCisjZGVmaW5lIFJOREFERFRPRU5UQ05UIF9JT1coJ1InLCAweDAxLCBpbnQpCisjZGVmaW5lIFJOREdFVFBPT0wgX0lPUignUicsIDB4MDIsIGludFsyXSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJOREFEREVOVFJPUFkgX0lPVyggJ1InLCAweDAzLCBpbnQgWzJdICkKLSNkZWZpbmUgUk5EWkFQRU5UQ05UIF9JTyggJ1InLCAweDA0ICkKLSNkZWZpbmUgUk5EQ0xFQVJQT09MIF9JTyggJ1InLCAweDA2ICkKKyNkZWZpbmUgUk5EQURERU5UUk9QWSBfSU9XKCdSJywgMHgwMywgaW50WzJdKQorI2RlZmluZSBSTkRaQVBFTlRDTlQgX0lPKCdSJywgMHgwNCkKKyNkZWZpbmUgUk5EQ0xFQVJQT09MIF9JTygnUicsIDB4MDYpCiBzdHJ1Y3QgcmFuZF9wb29sX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZW50cm9weV9jb3VudDsKLSBpbnQgYnVmX3NpemU7Ci0gX191MzIgYnVmWzBdOworICBpbnQgZW50cm9weV9jb3VudDsKKyAgaW50IGJ1Zl9zaXplOworICBfX3UzMiBidWZbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgR1JORF9OT05CTE9DSyAweDAwMDEKKyNkZWZpbmUgR1JORF9SQU5ET00gMHgwMDAyCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmF3LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jhdy5oCmluZGV4IDUyZTJiYTkuLjIzMjA3MjcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmF3LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYXcuaApAQCAtMTksMTYgKzE5LDE1IEBACiAjaWZuZGVmIF9fTElOVVhfUkFXX0gKICNkZWZpbmUgX19MSU5VWF9SQVdfSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIFJBV19TRVRCSU5EIF9JTyggMHhhYywgMCApCisjZGVmaW5lIFJBV19TRVRCSU5EIF9JTygweGFjLCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUkFXX0dFVEJJTkQgX0lPKCAweGFjLCAxICkKLXN0cnVjdCByYXdfY29uZmlnX3JlcXVlc3QKLXsKLSBpbnQgcmF3X21pbm9yOworI2RlZmluZSBSQVdfR0VUQklORCBfSU8oMHhhYywgMSkKK3N0cnVjdCByYXdfY29uZmlnX3JlcXVlc3QgeworICBpbnQgcmF3X21pbm9yOworICBfX3U2NCBibG9ja19tYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYmxvY2tfbWFqb3I7Ci0gX191NjQgYmxvY2tfbWlub3I7CisgIF9fdTY0IGJsb2NrX21pbm9yOwogfTsKICNkZWZpbmUgTUFYX1JBV19NSU5PUlMgQ09ORklHX01BWF9SQVdfREVWUwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jkcy5oCmluZGV4IDk4YzU2NDQuLjY2Y2I5MDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZHMuaApAQCAtNTYsOCArNTYsOCBAQAogI2RlZmluZSBSRFNfSU5GT19MQVNUIDEwMDEwCiBzdHJ1Y3QgcmRzX2luZm9fY291bnRlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgbmFtZVszMl07Ci0gdWludDY0X3QgdmFsdWU7CisgIHVpbnQ4X3QgbmFtZVszMl07CisgIHVpbnQ2NF90IHZhbHVlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUkRTX0lORk9fQ09OTkVDVElPTl9GTEFHX1NFTkRJTkcgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTY2LDY3ICs2Niw2NyBAQAogI2RlZmluZSBUUkFOU05BTVNJWiAxNgogc3RydWN0IHJkc19pbmZvX2Nvbm5lY3Rpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBuZXh0X3R4X3NlcTsKLSB1aW50NjRfdCBuZXh0X3J4X3NlcTsKLSBfX2JlMzIgbGFkZHI7Ci0gX19iZTMyIGZhZGRyOworICB1aW50NjRfdCBuZXh0X3R4X3NlcTsKKyAgdWludDY0X3QgbmV4dF9yeF9zZXE7CisgIF9fYmUzMiBsYWRkcjsKKyAgX19iZTMyIGZhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IHRyYW5zcG9ydFtUUkFOU05BTVNJWl07Ci0gdWludDhfdCBmbGFnczsKKyAgdWludDhfdCB0cmFuc3BvcnRbVFJBTlNOQU1TSVpdOworICB1aW50OF90IGZsYWdzOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUkRTX0lORk9fTUVTU0FHRV9GTEFHX0FDSyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRFNfSU5GT19NRVNTQUdFX0ZMQUdfRkFTVF9BQ0sgMHgwMgogc3RydWN0IHJkc19pbmZvX21lc3NhZ2UgewotIHVpbnQ2NF90IHNlcTsKLSB1aW50MzJfdCBsZW47CisgIHVpbnQ2NF90IHNlcTsKKyAgdWludDMyX3QgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbGFkZHI7Ci0gX19iZTMyIGZhZGRyOwotIF9fYmUxNiBscG9ydDsKLSBfX2JlMTYgZnBvcnQ7CisgIF9fYmUzMiBsYWRkcjsKKyAgX19iZTMyIGZhZGRyOworICBfX2JlMTYgbHBvcnQ7CisgIF9fYmUxNiBmcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDhfdCBmbGFnczsKKyAgdWludDhfdCBmbGFnczsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgcmRzX2luZm9fc29ja2V0IHsKLSB1aW50MzJfdCBzbmRidWY7CisgIHVpbnQzMl90IHNuZGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGJvdW5kX2FkZHI7Ci0gX19iZTMyIGNvbm5lY3RlZF9hZGRyOwotIF9fYmUxNiBib3VuZF9wb3J0OwotIF9fYmUxNiBjb25uZWN0ZWRfcG9ydDsKKyAgX19iZTMyIGJvdW5kX2FkZHI7CisgIF9fYmUzMiBjb25uZWN0ZWRfYWRkcjsKKyAgX19iZTE2IGJvdW5kX3BvcnQ7CisgIF9fYmUxNiBjb25uZWN0ZWRfcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcmN2YnVmOwotIHVpbnQ2NF90IGludW07CisgIHVpbnQzMl90IHJjdmJ1ZjsKKyAgdWludDY0X3QgaW51bTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgcmRzX2luZm9fdGNwX3NvY2tldCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBsb2NhbF9hZGRyOwotIF9fYmUxNiBsb2NhbF9wb3J0OwotIF9fYmUzMiBwZWVyX2FkZHI7Ci0gX19iZTE2IHBlZXJfcG9ydDsKKyAgX19iZTMyIGxvY2FsX2FkZHI7CisgIF9fYmUxNiBsb2NhbF9wb3J0OworICBfX2JlMzIgcGVlcl9hZGRyOworICBfX2JlMTYgcGVlcl9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBoZHJfcmVtOwotIHVpbnQ2NF90IGRhdGFfcmVtOwotIHVpbnQzMl90IGxhc3Rfc2VudF9ueHQ7Ci0gdWludDMyX3QgbGFzdF9leHBlY3RlZF91bmE7CisgIHVpbnQ2NF90IGhkcl9yZW07CisgIHVpbnQ2NF90IGRhdGFfcmVtOworICB1aW50MzJfdCBsYXN0X3NlbnRfbnh0OworICB1aW50MzJfdCBsYXN0X2V4cGVjdGVkX3VuYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbGFzdF9zZWVuX3VuYTsKKyAgdWludDMyX3QgbGFzdF9zZWVuX3VuYTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFJEU19JQl9HSURfTEVOIDE2CiBzdHJ1Y3QgcmRzX2luZm9fcmRtYV9jb25uZWN0aW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNyY19hZGRyOwotIF9fYmUzMiBkc3RfYWRkcjsKLSB1aW50OF90IHNyY19naWRbUkRTX0lCX0dJRF9MRU5dOwotIHVpbnQ4X3QgZHN0X2dpZFtSRFNfSUJfR0lEX0xFTl07CisgIF9fYmUzMiBzcmNfYWRkcjsKKyAgX19iZTMyIGRzdF9hZGRyOworICB1aW50OF90IHNyY19naWRbUkRTX0lCX0dJRF9MRU5dOworICB1aW50OF90IGRzdF9naWRbUkRTX0lCX0dJRF9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBtYXhfc2VuZF93cjsKLSB1aW50MzJfdCBtYXhfcmVjdl93cjsKLSB1aW50MzJfdCBtYXhfc2VuZF9zZ2U7Ci0gdWludDMyX3QgcmRtYV9tcl9tYXg7CisgIHVpbnQzMl90IG1heF9zZW5kX3dyOworICB1aW50MzJfdCBtYXhfcmVjdl93cjsKKyAgdWludDMyX3QgbWF4X3NlbmRfc2dlOworICB1aW50MzJfdCByZG1hX21yX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcmRtYV9tcl9zaXplOworICB1aW50MzJfdCByZG1hX21yX3NpemU7CiB9OwogI2RlZmluZSBSRFNfQ09OR19NT05JVE9SX1NJWkUgNjQKICNkZWZpbmUgUkRTX0NPTkdfTU9OSVRPUl9CSVQocG9ydCkgKCgodW5zaWduZWQgaW50KSBwb3J0KSAlIFJEU19DT05HX01PTklUT1JfU0laRSkKQEAgLTEzNCw3NSArMTM0LDc1IEBACiAjZGVmaW5lIFJEU19DT05HX01PTklUT1JfTUFTSyhwb3J0KSAoMVVMTCA8PCBSRFNfQ09OR19NT05JVE9SX0JJVChwb3J0KSkKIHR5cGVkZWYgdWludDY0X3QgcmRzX3JkbWFfY29va2llX3Q7CiBzdHJ1Y3QgcmRzX2lvdmVjIHsKLSB1aW50NjRfdCBhZGRyOworICB1aW50NjRfdCBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBieXRlczsKKyAgdWludDY0X3QgYnl0ZXM7CiB9Owogc3RydWN0IHJkc19nZXRfbXJfYXJncyB7Ci0gc3RydWN0IHJkc19pb3ZlYyB2ZWM7CisgIHN0cnVjdCByZHNfaW92ZWMgdmVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBjb29raWVfYWRkcjsKLSB1aW50NjRfdCBmbGFnczsKKyAgdWludDY0X3QgY29va2llX2FkZHI7CisgIHVpbnQ2NF90IGZsYWdzOwogfTsKIHN0cnVjdCByZHNfZ2V0X21yX2Zvcl9kZXN0X2FyZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBkZXN0X2FkZHI7Ci0gc3RydWN0IHJkc19pb3ZlYyB2ZWM7Ci0gdWludDY0X3QgY29va2llX2FkZHI7Ci0gdWludDY0X3QgZmxhZ3M7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGRlc3RfYWRkcjsKKyAgc3RydWN0IHJkc19pb3ZlYyB2ZWM7CisgIHVpbnQ2NF90IGNvb2tpZV9hZGRyOworICB1aW50NjRfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJkc19mcmVlX21yX2FyZ3MgewotIHJkc19yZG1hX2Nvb2tpZV90IGNvb2tpZTsKLSB1aW50NjRfdCBmbGFnczsKKyAgcmRzX3JkbWFfY29va2llX3QgY29va2llOworICB1aW50NjRfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJkc19yZG1hX2FyZ3MgewotIHJkc19yZG1hX2Nvb2tpZV90IGNvb2tpZTsKLSBzdHJ1Y3QgcmRzX2lvdmVjIHJlbW90ZV92ZWM7CisgIHJkc19yZG1hX2Nvb2tpZV90IGNvb2tpZTsKKyAgc3RydWN0IHJkc19pb3ZlYyByZW1vdGVfdmVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBsb2NhbF92ZWNfYWRkcjsKLSB1aW50NjRfdCBucl9sb2NhbDsKLSB1aW50NjRfdCBmbGFnczsKLSB1aW50NjRfdCB1c2VyX3Rva2VuOworICB1aW50NjRfdCBsb2NhbF92ZWNfYWRkcjsKKyAgdWludDY0X3QgbnJfbG9jYWw7CisgIHVpbnQ2NF90IGZsYWdzOworICB1aW50NjRfdCB1c2VyX3Rva2VuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcmRzX2F0b21pY19hcmdzIHsKLSByZHNfcmRtYV9jb29raWVfdCBjb29raWU7Ci0gdWludDY0X3QgbG9jYWxfYWRkcjsKKyAgcmRzX3JkbWFfY29va2llX3QgY29va2llOworICB1aW50NjRfdCBsb2NhbF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCByZW1vdGVfYWRkcjsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSB1aW50NjRfdCBjb21wYXJlOworICB1aW50NjRfdCByZW1vdGVfYWRkcjsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1aW50NjRfdCBjb21wYXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBzd2FwOwotIH0gY3N3cDsKLSBzdHJ1Y3QgewotIHVpbnQ2NF90IGFkZDsKKyAgICAgIHVpbnQ2NF90IHN3YXA7CisgICAgfSBjc3dwOworICAgIHN0cnVjdCB7CisgICAgICB1aW50NjRfdCBhZGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZmFkZDsKLSBzdHJ1Y3QgewotIHVpbnQ2NF90IGNvbXBhcmU7Ci0gdWludDY0X3Qgc3dhcDsKKyAgICB9IGZhZGQ7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ2NF90IGNvbXBhcmU7CisgICAgICB1aW50NjRfdCBzd2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBjb21wYXJlX21hc2s7Ci0gdWludDY0X3Qgc3dhcF9tYXNrOwotIH0gbV9jc3dwOwotIHN0cnVjdCB7CisgICAgICB1aW50NjRfdCBjb21wYXJlX21hc2s7CisgICAgICB1aW50NjRfdCBzd2FwX21hc2s7CisgICAgfSBtX2Nzd3A7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgYWRkOwotIHVpbnQ2NF90IG5vY2FycnlfbWFzazsKLSB9IG1fZmFkZDsKLSB9OworICAgICAgdWludDY0X3QgYWRkOworICAgICAgdWludDY0X3Qgbm9jYXJyeV9tYXNrOworICAgIH0gbV9mYWRkOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBmbGFnczsKLSB1aW50NjRfdCB1c2VyX3Rva2VuOworICB1aW50NjRfdCBmbGFnczsKKyAgdWludDY0X3QgdXNlcl90b2tlbjsKIH07CiBzdHJ1Y3QgcmRzX3JkbWFfbm90aWZ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgdXNlcl90b2tlbjsKLSBpbnQzMl90IHN0YXR1czsKKyAgdWludDY0X3QgdXNlcl90b2tlbjsKKyAgaW50MzJfdCBzdGF0dXM7CiB9OwogI2RlZmluZSBSRFNfUkRNQV9TVUNDRVNTIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX2ZzLmgKaW5kZXggNTAxMWIxMS4uYjBlYzAzYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZWlzZXJmc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVpc2VyZnNfZnMuaApAQCAtMjEsNyArMjEsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvbWFnaWMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJFSVNFUkZTX0lPQ19VTlBBQ0sgX0lPVygweENELDEsbG9uZykKKyNkZWZpbmUgUkVJU0VSRlNfSU9DX1VOUEFDSyBfSU9XKDB4Q0QsIDEsIGxvbmcpCiAjZGVmaW5lIFJFSVNFUkZTX0lPQ19HRVRGTEFHUyBGU19JT0NfR0VURkxBR1MKICNkZWZpbmUgUkVJU0VSRlNfSU9DX1NFVEZMQUdTIEZTX0lPQ19TRVRGTEFHUwogI2RlZmluZSBSRUlTRVJGU19JT0NfR0VUVkVSU0lPTiBGU19JT0NfR0VUVkVSU0lPTgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZWlzZXJmc194YXR0ci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZWlzZXJmc194YXR0ci5oCmluZGV4IDkwNTZkZTIuLmNjMWJmOWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVpc2VyZnNfeGF0dHIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX3hhdHRyLmgKQEAgLTIyLDE0ICsyMiwxNCBAQAogI2RlZmluZSBSRUlTRVJGU19YQVRUUl9NQUdJQyAweDUyNDY1ODQxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJlaXNlcmZzX3hhdHRyX2hlYWRlciB7Ci0gX19sZTMyIGhfbWFnaWM7Ci0gX19sZTMyIGhfaGFzaDsKKyAgX19sZTMyIGhfbWFnaWM7CisgIF9fbGUzMiBoX2hhc2g7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZWlzZXJmc19zZWN1cml0eV9oYW5kbGUgewotIGNvbnN0IGNoYXIgKm5hbWU7Ci0gdm9pZCAqdmFsdWU7Ci0gc2l6ZV90IGxlbmd0aDsKKyAgY29uc3QgY2hhciAqIG5hbWU7CisgIHZvaWQgKiB2YWx1ZTsKKyAgc2l6ZV90IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jlc291cmNlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jlc291cmNlLmgKaW5kZXggOWQyNjBjMi4uZWFmOWZjNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZXNvdXJjZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVzb3VyY2UuaApAQCAtMjIsNTIgKzIyLDUyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJVU0FHRV9TRUxGIDAKLSNkZWZpbmUgUlVTQUdFX0NISUxEUkVOICgtMSkKLSNkZWZpbmUgUlVTQUdFX0JPVEggKC0yKQorI2RlZmluZSBSVVNBR0VfQ0hJTERSRU4gKC0gMSkKKyNkZWZpbmUgUlVTQUdFX0JPVEggKC0gMikKICNkZWZpbmUgUlVTQUdFX1RIUkVBRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJ1c2FnZSB7Ci0gc3RydWN0IHRpbWV2YWwgcnVfdXRpbWU7Ci0gc3RydWN0IHRpbWV2YWwgcnVfc3RpbWU7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X21heHJzczsKKyAgc3RydWN0IHRpbWV2YWwgcnVfdXRpbWU7CisgIHN0cnVjdCB0aW1ldmFsIHJ1X3N0aW1lOworICBfX2tlcm5lbF9sb25nX3QgcnVfbWF4cnNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgcnVfaXhyc3M7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X2lkcnNzOwotIF9fa2VybmVsX2xvbmdfdCBydV9pc3JzczsKLSBfX2tlcm5lbF9sb25nX3QgcnVfbWluZmx0OworICBfX2tlcm5lbF9sb25nX3QgcnVfaXhyc3M7CisgIF9fa2VybmVsX2xvbmdfdCBydV9pZHJzczsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X2lzcnNzOworICBfX2tlcm5lbF9sb25nX3QgcnVfbWluZmx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgcnVfbWFqZmx0OwotIF9fa2VybmVsX2xvbmdfdCBydV9uc3dhcDsKLSBfX2tlcm5lbF9sb25nX3QgcnVfaW5ibG9jazsKLSBfX2tlcm5lbF9sb25nX3QgcnVfb3VibG9jazsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X21hamZsdDsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X25zd2FwOworICBfX2tlcm5lbF9sb25nX3QgcnVfaW5ibG9jazsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X291YmxvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBydV9tc2dzbmQ7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X21zZ3JjdjsKLSBfX2tlcm5lbF9sb25nX3QgcnVfbnNpZ25hbHM7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X252Y3N3OworICBfX2tlcm5lbF9sb25nX3QgcnVfbXNnc25kOworICBfX2tlcm5lbF9sb25nX3QgcnVfbXNncmN2OworICBfX2tlcm5lbF9sb25nX3QgcnVfbnNpZ25hbHM7CisgIF9fa2VybmVsX2xvbmdfdCBydV9udmNzdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IHJ1X25pdmNzdzsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X25pdmNzdzsKIH07CiBzdHJ1Y3QgcmxpbWl0IHsKLSBfX2tlcm5lbF91bG9uZ190IHJsaW1fY3VyOworICBfX2tlcm5lbF91bG9uZ190IHJsaW1fY3VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IHJsaW1fbWF4OworICBfX2tlcm5lbF91bG9uZ190IHJsaW1fbWF4OwogfTsKICNkZWZpbmUgUkxJTTY0X0lORklOSVRZICh+MFVMTCkKIHN0cnVjdCBybGltaXQ2NCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJsaW1fY3VyOwotIF9fdTY0IHJsaW1fbWF4OworICBfX3U2NCBybGltX2N1cjsKKyAgX191NjQgcmxpbV9tYXg7CiB9OwotI2RlZmluZSBQUklPX01JTiAoLTIwKQorI2RlZmluZSBQUklPX01JTiAoLSAyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBSSU9fTUFYIDIwCiAjZGVmaW5lIFBSSU9fUFJPQ0VTUyAwCiAjZGVmaW5lIFBSSU9fUEdSUCAxCiAjZGVmaW5lIFBSSU9fVVNFUiAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfU1RLX0xJTSAoOCoxMDI0KjEwMjQpCi0jZGVmaW5lIE1MT0NLX0xJTUlUICgoUEFHRV9TSVpFID4gNjQqMTAyNCkgPyBQQUdFX1NJWkUgOiA2NCoxMDI0KQorI2RlZmluZSBfU1RLX0xJTSAoOCAqIDEwMjQgKiAxMDI0KQorI2RlZmluZSBNTE9DS19MSU1JVCAoKFBBR0VfU0laRSA+IDY0ICogMTAyNCkgPyBQQUdFX1NJWkUgOiA2NCAqIDEwMjQpCiAjaW5jbHVkZSA8YXNtL3Jlc291cmNlLmg+CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jma2lsbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZmtpbGwuaAppbmRleCA5MTRjYzFkLi41NzM4MDRjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jma2lsbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmZraWxsLmgKQEAgLTI0LDM0ICsyNCwzNCBAQAogI2RlZmluZSBSRktJTExfU1RBVEVfVU5CTE9DS0VEIDEKICNkZWZpbmUgUkZLSUxMX1NUQVRFX0hBUkRfQkxPQ0tFRCAyCiBlbnVtIHJma2lsbF90eXBlIHsKLSBSRktJTExfVFlQRV9BTEwgPSAwLAorICBSRktJTExfVFlQRV9BTEwgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRktJTExfVFlQRV9XTEFOLAotIFJGS0lMTF9UWVBFX0JMVUVUT09USCwKLSBSRktJTExfVFlQRV9VV0IsCi0gUkZLSUxMX1RZUEVfV0lNQVgsCisgIFJGS0lMTF9UWVBFX1dMQU4sCisgIFJGS0lMTF9UWVBFX0JMVUVUT09USCwKKyAgUkZLSUxMX1RZUEVfVVdCLAorICBSRktJTExfVFlQRV9XSU1BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkZLSUxMX1RZUEVfV1dBTiwKLSBSRktJTExfVFlQRV9HUFMsCi0gUkZLSUxMX1RZUEVfRk0sCi0gUkZLSUxMX1RZUEVfTkZDLAorICBSRktJTExfVFlQRV9XV0FOLAorICBSRktJTExfVFlQRV9HUFMsCisgIFJGS0lMTF9UWVBFX0ZNLAorICBSRktJTExfVFlQRV9ORkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VTV9SRktJTExfVFlQRVMsCisgIE5VTV9SRktJTExfVFlQRVMsCiB9OwogZW51bSByZmtpbGxfb3BlcmF0aW9uIHsKLSBSRktJTExfT1BfQUREID0gMCwKKyAgUkZLSUxMX09QX0FERCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJGS0lMTF9PUF9ERUwsCi0gUkZLSUxMX09QX0NIQU5HRSwKLSBSRktJTExfT1BfQ0hBTkdFX0FMTCwKKyAgUkZLSUxMX09QX0RFTCwKKyAgUkZLSUxMX09QX0NIQU5HRSwKKyAgUkZLSUxMX09QX0NIQU5HRV9BTEwsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZmtpbGxfZXZlbnQgewotIF9fdTMyIGlkeDsKLSBfX3U4IHR5cGU7Ci0gX191OCBvcDsKKyAgX191MzIgaWR4OworICBfX3U4IHR5cGU7CisgIF9fdTggb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc29mdCwgaGFyZDsKKyAgX191OCBzb2Z0LCBoYXJkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUkZLSUxMX0VWRU5UX1NJWkVfVjEgOAogI2RlZmluZSBSRktJTExfSU9DX01BR0lDICdSJwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb21mc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb21mc19mcy5oCmluZGV4IGQ0ZWZmOGYuLjJhMDk1N2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm9tZnNfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvbWZzX2ZzLmgKQEAgLTIzLDMyICsyMywzMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUk9NQlNJWkUgQkxPQ0tfU0laRQogI2RlZmluZSBST01CU0JJVFMgQkxPQ0tfU0laRV9CSVRTCi0jZGVmaW5lIFJPTUJNQVNLIChST01CU0laRS0xKQorI2RlZmluZSBST01CTUFTSyAoUk9NQlNJWkUgLSAxKQogI2RlZmluZSBST01GU19NQUdJQyAweDcyNzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJPTUZTX01BWEZOIDEyOAotI2RlZmluZSBfX21rdyhoLGwpICgoKGgpJjB4MDBmZik8PCA4fCgobCkmMHgwMGZmKSkKLSNkZWZpbmUgX19ta2woaCxsKSAoKChoKSYweGZmZmYpPDwxNnwoKGwpJjB4ZmZmZikpCi0jZGVmaW5lIF9fbWs0KGEsYixjLGQpIGNwdV90b19iZTMyKF9fbWtsKF9fbWt3KGEsYiksX19ta3coYyxkKSkpCisjZGVmaW5lIF9fbWt3KGgsbCkgKCgoaCkgJiAweDAwZmYpIDw8IDggfCAoKGwpICYgMHgwMGZmKSkKKyNkZWZpbmUgX19ta2woaCxsKSAoKChoKSAmIDB4ZmZmZikgPDwgMTYgfCAoKGwpICYgMHhmZmZmKSkKKyNkZWZpbmUgX19tazQoYSxiLGMsZCkgY3B1X3RvX2JlMzIoX19ta2woX19ta3coYSwgYiksIF9fbWt3KGMsIGQpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJPTVNCX1dPUkQwIF9fbWs0KCctJywncicsJ28nLCdtJykKLSNkZWZpbmUgUk9NU0JfV09SRDEgX19tazQoJzEnLCdmJywncycsJy0nKQorI2RlZmluZSBST01TQl9XT1JEMCBfX21rNCgnLScsICdyJywgJ28nLCAnbScpCisjZGVmaW5lIFJPTVNCX1dPUkQxIF9fbWs0KCcxJywgJ2YnLCAncycsICctJykKIHN0cnVjdCByb21mc19zdXBlcl9ibG9jayB7Ci0gX19iZTMyIHdvcmQwOworICBfX2JlMzIgd29yZDA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiB3b3JkMTsKLSBfX2JlMzIgc2l6ZTsKLSBfX2JlMzIgY2hlY2tzdW07Ci0gY2hhciBuYW1lWzBdOworICBfX2JlMzIgd29yZDE7CisgIF9fYmUzMiBzaXplOworICBfX2JlMzIgY2hlY2tzdW07CisgIGNoYXIgbmFtZVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJvbWZzX2lub2RlIHsKLSBfX2JlMzIgbmV4dDsKLSBfX2JlMzIgc3BlYzsKKyAgX19iZTMyIG5leHQ7CisgIF9fYmUzMiBzcGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2l6ZTsKLSBfX2JlMzIgY2hlY2tzdW07Ci0gY2hhciBuYW1lWzBdOworICBfX2JlMzIgc2l6ZTsKKyAgX19iZTMyIGNoZWNrc3VtOworICBjaGFyIG5hbWVbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUk9NRkhfVFlQRSA3CkBAIC02NCw3ICs2NCw3IEBACiAjZGVmaW5lIFJPTUZIX0ZJRiA3CiAjZGVmaW5lIFJPTUZIX0VYRUMgOAogI2RlZmluZSBST01GSF9TSVpFIDE2Ci0jZGVmaW5lIFJPTUZIX1BBRCAoUk9NRkhfU0laRS0xKQorI2RlZmluZSBST01GSF9QQUQgKFJPTUZIX1NJWkUgLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUk9NRkhfTUFTSyAoflJPTUZIX1BBRCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb3NlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jvc2UuaAppbmRleCA5ZjQ1MDkyLi5iYTkxZjQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jvc2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jvc2UuaApAQCAtMzIsMTYgKzMyLDE2IEBACiAjZGVmaW5lIFJPU0VfUUJJVElOQ0wgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUk9TRV9IT0xEQkFDSyA3Ci0jZGVmaW5lIFNJT0NSU0dDQVVTRSAoU0lPQ1BST1RPUFJJVkFURSswKQotI2RlZmluZSBTSU9DUlNTQ0FVU0UgKFNJT0NQUk9UT1BSSVZBVEUrMSkKLSNkZWZpbmUgU0lPQ1JTTDJDQUxMIChTSU9DUFJPVE9QUklWQVRFKzIpCisjZGVmaW5lIFNJT0NSU0dDQVVTRSAoU0lPQ1BST1RPUFJJVkFURSArIDApCisjZGVmaW5lIFNJT0NSU1NDQVVTRSAoU0lPQ1BST1RPUFJJVkFURSArIDEpCisjZGVmaW5lIFNJT0NSU0wyQ0FMTCAoU0lPQ1BST1RPUFJJVkFURSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DUlNTTDJDQUxMIChTSU9DUFJPVE9QUklWQVRFKzIpCi0jZGVmaW5lIFNJT0NSU0FDQ0VQVCAoU0lPQ1BST1RPUFJJVkFURSszKQotI2RlZmluZSBTSU9DUlNDTFJSVCAoU0lPQ1BST1RPUFJJVkFURSs0KQotI2RlZmluZSBTSU9DUlNHTDJDQUxMIChTSU9DUFJPVE9QUklWQVRFKzUpCisjZGVmaW5lIFNJT0NSU1NMMkNBTEwgKFNJT0NQUk9UT1BSSVZBVEUgKyAyKQorI2RlZmluZSBTSU9DUlNBQ0NFUFQgKFNJT0NQUk9UT1BSSVZBVEUgKyAzKQorI2RlZmluZSBTSU9DUlNDTFJSVCAoU0lPQ1BST1RPUFJJVkFURSArIDQpCisjZGVmaW5lIFNJT0NSU0dMMkNBTEwgKFNJT0NQUk9UT1BSSVZBVEUgKyA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ1JTR0ZBQ0lMSVRJRVMgKFNJT0NQUk9UT1BSSVZBVEUrNikKKyNkZWZpbmUgU0lPQ1JTR0ZBQ0lMSVRJRVMgKFNJT0NQUk9UT1BSSVZBVEUgKyA2KQogI2RlZmluZSBST1NFX0RURV9PUklHSU5BVEVEIDB4MDAKICNkZWZpbmUgUk9TRV9OVU1CRVJfQlVTWSAweDAxCiAjZGVmaW5lIFJPU0VfSU5WQUxJRF9GQUNJTElUWSAweDAzCkBAIC01Niw1MSArNTYsNTEgQEAKICNkZWZpbmUgUk9TRV9TSElQX0FCU0VOVCAweDM5CiB0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcm9zZV9hZGRyWzVdOworICBjaGFyIHJvc2VfYWRkcls1XTsKIH0gcm9zZV9hZGRyZXNzOwogc3RydWN0IHNvY2thZGRyX3Jvc2UgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNyb3NlX2ZhbWlseTsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3Jvc2VfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSByb3NlX2FkZHJlc3Mgc3Jvc2VfYWRkcjsKLSBheDI1X2FkZHJlc3Mgc3Jvc2VfY2FsbDsKLSBpbnQgc3Jvc2VfbmRpZ2lzOwotIGF4MjVfYWRkcmVzcyBzcm9zZV9kaWdpOworICByb3NlX2FkZHJlc3Mgc3Jvc2VfYWRkcjsKKyAgYXgyNV9hZGRyZXNzIHNyb3NlX2NhbGw7CisgIGludCBzcm9zZV9uZGlnaXM7CisgIGF4MjVfYWRkcmVzcyBzcm9zZV9kaWdpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZnVsbF9zb2NrYWRkcl9yb3NlIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzcm9zZV9mYW1pbHk7Ci0gcm9zZV9hZGRyZXNzIHNyb3NlX2FkZHI7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNyb3NlX2ZhbWlseTsKKyAgcm9zZV9hZGRyZXNzIHNyb3NlX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF4MjVfYWRkcmVzcyBzcm9zZV9jYWxsOwotIHVuc2lnbmVkIGludCBzcm9zZV9uZGlnaXM7Ci0gYXgyNV9hZGRyZXNzIHNyb3NlX2RpZ2lzW1JPU0VfTUFYX0RJR0lTXTsKKyAgYXgyNV9hZGRyZXNzIHNyb3NlX2NhbGw7CisgIHVuc2lnbmVkIGludCBzcm9zZV9uZGlnaXM7CisgIGF4MjVfYWRkcmVzcyBzcm9zZV9kaWdpc1tST1NFX01BWF9ESUdJU107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByb3NlX3JvdXRlX3N0cnVjdCB7Ci0gcm9zZV9hZGRyZXNzIGFkZHJlc3M7Ci0gdW5zaWduZWQgc2hvcnQgbWFzazsKLSBheDI1X2FkZHJlc3MgbmVpZ2hib3VyOworICByb3NlX2FkZHJlc3MgYWRkcmVzczsKKyAgdW5zaWduZWQgc2hvcnQgbWFzazsKKyAgYXgyNV9hZGRyZXNzIG5laWdoYm91cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkZXZpY2VbMTZdOwotIHVuc2lnbmVkIGNoYXIgbmRpZ2lzOwotIGF4MjVfYWRkcmVzcyBkaWdpcGVhdGVyc1tBWDI1X01BWF9ESUdJU107CisgIGNoYXIgZGV2aWNlWzE2XTsKKyAgdW5zaWduZWQgY2hhciBuZGlnaXM7CisgIGF4MjVfYWRkcmVzcyBkaWdpcGVhdGVyc1tBWDI1X01BWF9ESUdJU107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByb3NlX2NhdXNlX3N0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjYXVzZTsKLSB1bnNpZ25lZCBjaGFyIGRpYWdub3N0aWM7CisgIHVuc2lnbmVkIGNoYXIgY2F1c2U7CisgIHVuc2lnbmVkIGNoYXIgZGlhZ25vc3RpYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJvc2VfZmFjaWxpdGllc19zdHJ1Y3QgewotIHJvc2VfYWRkcmVzcyBzb3VyY2VfYWRkciwgZGVzdF9hZGRyOwotIGF4MjVfYWRkcmVzcyBzb3VyY2VfY2FsbCwgZGVzdF9jYWxsOwotIHVuc2lnbmVkIGNoYXIgc291cmNlX25kaWdpcywgZGVzdF9uZGlnaXM7CisgIHJvc2VfYWRkcmVzcyBzb3VyY2VfYWRkciwgZGVzdF9hZGRyOworICBheDI1X2FkZHJlc3Mgc291cmNlX2NhbGwsIGRlc3RfY2FsbDsKKyAgdW5zaWduZWQgY2hhciBzb3VyY2VfbmRpZ2lzLCBkZXN0X25kaWdpczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXgyNV9hZGRyZXNzIHNvdXJjZV9kaWdpc1tST1NFX01BWF9ESUdJU107Ci0gYXgyNV9hZGRyZXNzIGRlc3RfZGlnaXNbUk9TRV9NQVhfRElHSVNdOwotIHVuc2lnbmVkIGludCByYW5kOwotIHJvc2VfYWRkcmVzcyBmYWlsX2FkZHI7CisgIGF4MjVfYWRkcmVzcyBzb3VyY2VfZGlnaXNbUk9TRV9NQVhfRElHSVNdOworICBheDI1X2FkZHJlc3MgZGVzdF9kaWdpc1tST1NFX01BWF9ESUdJU107CisgIHVuc2lnbmVkIGludCByYW5kOworICByb3NlX2FkZHJlc3MgZmFpbF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBheDI1X2FkZHJlc3MgZmFpbF9jYWxsOworICBheDI1X2FkZHJlc3MgZmFpbF9jYWxsOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb3V0ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb3V0ZS5oCmluZGV4IDc0M2YwMGMuLmI2YTU4MDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm91dGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvdXRlLmgKQEAgLTIyLDIzICsyMiwyMyBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJ0ZW50cnkgewotIHVuc2lnbmVkIGxvbmcgcnRfcGFkMTsKLSBzdHJ1Y3Qgc29ja2FkZHIgcnRfZHN0OwotIHN0cnVjdCBzb2NrYWRkciBydF9nYXRld2F5OworICB1bnNpZ25lZCBsb25nIHJ0X3BhZDE7CisgIHN0cnVjdCBzb2NrYWRkciBydF9kc3Q7CisgIHN0cnVjdCBzb2NrYWRkciBydF9nYXRld2F5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgcnRfZ2VubWFzazsKLSB1bnNpZ25lZCBzaG9ydCBydF9mbGFnczsKLSBzaG9ydCBydF9wYWQyOwotIHVuc2lnbmVkIGxvbmcgcnRfcGFkMzsKKyAgc3RydWN0IHNvY2thZGRyIHJ0X2dlbm1hc2s7CisgIHVuc2lnbmVkIHNob3J0IHJ0X2ZsYWdzOworICBzaG9ydCBydF9wYWQyOworICB1bnNpZ25lZCBsb25nIHJ0X3BhZDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgKnJ0X3BhZDQ7Ci0gc2hvcnQgcnRfbWV0cmljOwotIGNoYXIgX191c2VyICpydF9kZXY7Ci0gdW5zaWduZWQgbG9uZyBydF9tdHU7CisgIHZvaWQgKiBydF9wYWQ0OworICBzaG9ydCBydF9tZXRyaWM7CisgIGNoYXIgX191c2VyICogcnRfZGV2OworICB1bnNpZ25lZCBsb25nIHJ0X210dTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIHJ0X21zcyBydF9tdHUKLSB1bnNpZ25lZCBsb25nIHJ0X3dpbmRvdzsKLSB1bnNpZ25lZCBzaG9ydCBydF9pcnR0OworICB1bnNpZ25lZCBsb25nIHJ0X3dpbmRvdzsKKyAgdW5zaWduZWQgc2hvcnQgcnRfaXJ0dDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVEZfVVAgMHgwMDAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3J0Yy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ydGMuaAppbmRleCBhY2I0OWQ2Li5mMGU0MzUwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3J0Yy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRjLmgKQEAgLTE5LDM1ICsxOSwzNSBAQAogI2lmbmRlZiBfVUFQSV9MSU5VWF9SVENfSF8KICNkZWZpbmUgX1VBUElfTElOVVhfUlRDX0hfCiBzdHJ1Y3QgcnRjX3RpbWUgewotIGludCB0bV9zZWM7CisgIGludCB0bV9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0bV9taW47Ci0gaW50IHRtX2hvdXI7Ci0gaW50IHRtX21kYXk7Ci0gaW50IHRtX21vbjsKKyAgaW50IHRtX21pbjsKKyAgaW50IHRtX2hvdXI7CisgIGludCB0bV9tZGF5OworICBpbnQgdG1fbW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdG1feWVhcjsKLSBpbnQgdG1fd2RheTsKLSBpbnQgdG1feWRheTsKLSBpbnQgdG1faXNkc3Q7CisgIGludCB0bV95ZWFyOworICBpbnQgdG1fd2RheTsKKyAgaW50IHRtX3lkYXk7CisgIGludCB0bV9pc2RzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHJ0Y193a2Fscm0gewotIHVuc2lnbmVkIGNoYXIgZW5hYmxlZDsKLSB1bnNpZ25lZCBjaGFyIHBlbmRpbmc7CisgIHVuc2lnbmVkIGNoYXIgZW5hYmxlZDsKKyAgdW5zaWduZWQgY2hhciBwZW5kaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcnRjX3RpbWUgdGltZTsKKyAgc3RydWN0IHJ0Y190aW1lIHRpbWU7CiB9Owogc3RydWN0IHJ0Y19wbGxfaW5mbyB7Ci0gaW50IHBsbF9jdHJsOworICBpbnQgcGxsX2N0cmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwbGxfdmFsdWU7Ci0gaW50IHBsbF9tYXg7Ci0gaW50IHBsbF9taW47Ci0gaW50IHBsbF9wb3NtdWx0OworICBpbnQgcGxsX3ZhbHVlOworICBpbnQgcGxsX21heDsKKyAgaW50IHBsbF9taW47CisgIGludCBwbGxfcG9zbXVsdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBsbF9uZWdtdWx0OwotIGxvbmcgcGxsX2Nsb2NrOworICBpbnQgcGxsX25lZ211bHQ7CisgIGxvbmcgcGxsX2Nsb2NrOwogfTsKICNkZWZpbmUgUlRDX0FJRV9PTiBfSU8oJ3AnLCAweDAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRuZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3J0bmV0bGluay5oCmluZGV4IDNhMDNlODguLmYwNzc5Y2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRuZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ydG5ldGxpbmsuaApAQCAtMjksMTIyICsyOSwxMjIgQEAKICNkZWZpbmUgUlROTF9GQU1JTFlfSVA2TVIgMTI5CiAjZGVmaW5lIFJUTkxfRkFNSUxZX01BWCAxMjkKIGVudW0gewotIFJUTV9CQVNFID0gMTYsCisgIFJUTV9CQVNFID0gMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fQkFTRSBSVE1fQkFTRQotIFJUTV9ORVdMSU5LID0gMTYsCisgIFJUTV9ORVdMSU5LID0gMTYsCiAjZGVmaW5lIFJUTV9ORVdMSU5LIFJUTV9ORVdMSU5LCi0gUlRNX0RFTExJTkssCisgIFJUTV9ERUxMSU5LLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0RFTExJTksgUlRNX0RFTExJTksKLSBSVE1fR0VUTElOSywKKyAgUlRNX0dFVExJTkssCiAjZGVmaW5lIFJUTV9HRVRMSU5LIFJUTV9HRVRMSU5LCi0gUlRNX1NFVExJTkssCisgIFJUTV9TRVRMSU5LLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX1NFVExJTksgUlRNX1NFVExJTksKLSBSVE1fTkVXQUREUiA9IDIwLAorICBSVE1fTkVXQUREUiA9IDIwLAogI2RlZmluZSBSVE1fTkVXQUREUiBSVE1fTkVXQUREUgotIFJUTV9ERUxBRERSLAorICBSVE1fREVMQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ERUxBRERSIFJUTV9ERUxBRERSCi0gUlRNX0dFVEFERFIsCisgIFJUTV9HRVRBRERSLAogI2RlZmluZSBSVE1fR0VUQUREUiBSVE1fR0VUQUREUgotIFJUTV9ORVdST1VURSA9IDI0LAorICBSVE1fTkVXUk9VVEUgPSAyNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ORVdST1VURSBSVE1fTkVXUk9VVEUKLSBSVE1fREVMUk9VVEUsCisgIFJUTV9ERUxST1VURSwKICNkZWZpbmUgUlRNX0RFTFJPVVRFIFJUTV9ERUxST1VURQotIFJUTV9HRVRST1VURSwKKyAgUlRNX0dFVFJPVVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0dFVFJPVVRFIFJUTV9HRVRST1VURQotIFJUTV9ORVdORUlHSCA9IDI4LAorICBSVE1fTkVXTkVJR0ggPSAyOCwKICNkZWZpbmUgUlRNX05FV05FSUdIIFJUTV9ORVdORUlHSAotIFJUTV9ERUxORUlHSCwKKyAgUlRNX0RFTE5FSUdILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0RFTE5FSUdIIFJUTV9ERUxORUlHSAotIFJUTV9HRVRORUlHSCwKKyAgUlRNX0dFVE5FSUdILAogI2RlZmluZSBSVE1fR0VUTkVJR0ggUlRNX0dFVE5FSUdICi0gUlRNX05FV1JVTEUgPSAzMiwKKyAgUlRNX05FV1JVTEUgPSAzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ORVdSVUxFIFJUTV9ORVdSVUxFCi0gUlRNX0RFTFJVTEUsCisgIFJUTV9ERUxSVUxFLAogI2RlZmluZSBSVE1fREVMUlVMRSBSVE1fREVMUlVMRQotIFJUTV9HRVRSVUxFLAorICBSVE1fR0VUUlVMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRSVUxFIFJUTV9HRVRSVUxFCi0gUlRNX05FV1FESVNDID0gMzYsCisgIFJUTV9ORVdRRElTQyA9IDM2LAogI2RlZmluZSBSVE1fTkVXUURJU0MgUlRNX05FV1FESVNDCi0gUlRNX0RFTFFESVNDLAorICBSVE1fREVMUURJU0MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fREVMUURJU0MgUlRNX0RFTFFESVNDCi0gUlRNX0dFVFFESVNDLAorICBSVE1fR0VUUURJU0MsCiAjZGVmaW5lIFJUTV9HRVRRRElTQyBSVE1fR0VUUURJU0MKLSBSVE1fTkVXVENMQVNTID0gNDAsCisgIFJUTV9ORVdUQ0xBU1MgPSA0MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ORVdUQ0xBU1MgUlRNX05FV1RDTEFTUwotIFJUTV9ERUxUQ0xBU1MsCisgIFJUTV9ERUxUQ0xBU1MsCiAjZGVmaW5lIFJUTV9ERUxUQ0xBU1MgUlRNX0RFTFRDTEFTUwotIFJUTV9HRVRUQ0xBU1MsCisgIFJUTV9HRVRUQ0xBU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fR0VUVENMQVNTIFJUTV9HRVRUQ0xBU1MKLSBSVE1fTkVXVEZJTFRFUiA9IDQ0LAorICBSVE1fTkVXVEZJTFRFUiA9IDQ0LAogI2RlZmluZSBSVE1fTkVXVEZJTFRFUiBSVE1fTkVXVEZJTFRFUgotIFJUTV9ERUxURklMVEVSLAorICBSVE1fREVMVEZJTFRFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ERUxURklMVEVSIFJUTV9ERUxURklMVEVSCi0gUlRNX0dFVFRGSUxURVIsCisgIFJUTV9HRVRURklMVEVSLAogI2RlZmluZSBSVE1fR0VUVEZJTFRFUiBSVE1fR0VUVEZJTFRFUgotIFJUTV9ORVdBQ1RJT04gPSA0OCwKKyAgUlRNX05FV0FDVElPTiA9IDQ4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV0FDVElPTiBSVE1fTkVXQUNUSU9OCi0gUlRNX0RFTEFDVElPTiwKKyAgUlRNX0RFTEFDVElPTiwKICNkZWZpbmUgUlRNX0RFTEFDVElPTiBSVE1fREVMQUNUSU9OCi0gUlRNX0dFVEFDVElPTiwKKyAgUlRNX0dFVEFDVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRBQ1RJT04gUlRNX0dFVEFDVElPTgotIFJUTV9ORVdQUkVGSVggPSA1MiwKKyAgUlRNX05FV1BSRUZJWCA9IDUyLAogI2RlZmluZSBSVE1fTkVXUFJFRklYIFJUTV9ORVdQUkVGSVgKLSBSVE1fR0VUTVVMVElDQVNUID0gNTgsCisgIFJUTV9HRVRNVUxUSUNBU1QgPSA1OCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRNVUxUSUNBU1QgUlRNX0dFVE1VTFRJQ0FTVAotIFJUTV9HRVRBTllDQVNUID0gNjIsCisgIFJUTV9HRVRBTllDQVNUID0gNjIsCiAjZGVmaW5lIFJUTV9HRVRBTllDQVNUIFJUTV9HRVRBTllDQVNUCi0gUlRNX05FV05FSUdIVEJMID0gNjQsCisgIFJUTV9ORVdORUlHSFRCTCA9IDY0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV05FSUdIVEJMIFJUTV9ORVdORUlHSFRCTAotIFJUTV9HRVRORUlHSFRCTCA9IDY2LAorICBSVE1fR0VUTkVJR0hUQkwgPSA2NiwKICNkZWZpbmUgUlRNX0dFVE5FSUdIVEJMIFJUTV9HRVRORUlHSFRCTAotIFJUTV9TRVRORUlHSFRCTCwKKyAgUlRNX1NFVE5FSUdIVEJMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX1NFVE5FSUdIVEJMIFJUTV9TRVRORUlHSFRCTAotIFJUTV9ORVdORFVTRVJPUFQgPSA2OCwKKyAgUlRNX05FV05EVVNFUk9QVCA9IDY4LAogI2RlZmluZSBSVE1fTkVXTkRVU0VST1BUIFJUTV9ORVdORFVTRVJPUFQKLSBSVE1fTkVXQUREUkxBQkVMID0gNzIsCisgIFJUTV9ORVdBRERSTEFCRUwgPSA3MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ORVdBRERSTEFCRUwgUlRNX05FV0FERFJMQUJFTAotIFJUTV9ERUxBRERSTEFCRUwsCisgIFJUTV9ERUxBRERSTEFCRUwsCiAjZGVmaW5lIFJUTV9ERUxBRERSTEFCRUwgUlRNX0RFTEFERFJMQUJFTAotIFJUTV9HRVRBRERSTEFCRUwsCisgIFJUTV9HRVRBRERSTEFCRUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fR0VUQUREUkxBQkVMIFJUTV9HRVRBRERSTEFCRUwKLSBSVE1fR0VURENCID0gNzgsCisgIFJUTV9HRVREQ0IgPSA3OCwKICNkZWZpbmUgUlRNX0dFVERDQiBSVE1fR0VURENCCi0gUlRNX1NFVERDQiwKKyAgUlRNX1NFVERDQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9TRVREQ0IgUlRNX1NFVERDQgotIFJUTV9ORVdORVRDT05GID0gODAsCisgIFJUTV9ORVdORVRDT05GID0gODAsCiAjZGVmaW5lIFJUTV9ORVdORVRDT05GIFJUTV9ORVdORVRDT05GCi0gUlRNX0dFVE5FVENPTkYgPSA4MiwKKyAgUlRNX0dFVE5FVENPTkYgPSA4MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRORVRDT05GIFJUTV9HRVRORVRDT05GCi0gUlRNX05FV01EQiA9IDg0LAorICBSVE1fTkVXTURCID0gODQsCiAjZGVmaW5lIFJUTV9ORVdNREIgUlRNX05FV01EQgotIFJUTV9ERUxNREIgPSA4NSwKKyAgUlRNX0RFTE1EQiA9IDg1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0RFTE1EQiBSVE1fREVMTURCCi0gUlRNX0dFVE1EQiA9IDg2LAorICBSVE1fR0VUTURCID0gODYsCiAjZGVmaW5lIFJUTV9HRVRNREIgUlRNX0dFVE1EQgotIF9fUlRNX01BWCwKKyAgX19SVE1fTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX01BWCAoKChfX1JUTV9NQVggKyAzKSAmIH4zKSAtIDEpCiB9OwpAQCAtMTUzLDUxICsxNTMsNTEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9GQU0oY21kKSAoKChjbWQpIC0gUlRNX0JBU0UpID4+IDIpCiBzdHJ1Y3QgcnRhdHRyIHsKLSB1bnNpZ25lZCBzaG9ydCBydGFfbGVuOwotIHVuc2lnbmVkIHNob3J0IHJ0YV90eXBlOworICB1bnNpZ25lZCBzaG9ydCBydGFfbGVuOworICB1bnNpZ25lZCBzaG9ydCBydGFfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBSVEFfQUxJR05UTyA0Ci0jZGVmaW5lIFJUQV9BTElHTihsZW4pICggKChsZW4pK1JUQV9BTElHTlRPLTEpICYgfihSVEFfQUxJR05UTy0xKSApCi0jZGVmaW5lIFJUQV9PSyhydGEsbGVuKSAoKGxlbikgPj0gKGludClzaXplb2Yoc3RydWN0IHJ0YXR0cikgJiYgICAocnRhKS0+cnRhX2xlbiA+PSBzaXplb2Yoc3RydWN0IHJ0YXR0cikgJiYgICAocnRhKS0+cnRhX2xlbiA8PSAobGVuKSkKKyNkZWZpbmUgUlRBX0FMSUdOKGxlbikgKCgobGVuKSArIFJUQV9BTElHTlRPIC0gMSkgJiB+KFJUQV9BTElHTlRPIC0gMSkpCisjZGVmaW5lIFJUQV9PSyhydGEsbGVuKSAoKGxlbikgPj0gKGludCkgc2l6ZW9mKHN0cnVjdCBydGF0dHIpICYmIChydGEpLT5ydGFfbGVuID49IHNpemVvZihzdHJ1Y3QgcnRhdHRyKSAmJiAocnRhKS0+cnRhX2xlbiA8PSAobGVuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJUQV9ORVhUKHJ0YSxhdHRybGVuKSAoKGF0dHJsZW4pIC09IFJUQV9BTElHTigocnRhKS0+cnRhX2xlbiksICAgKHN0cnVjdCBydGF0dHIqKSgoKGNoYXIqKShydGEpKSArIFJUQV9BTElHTigocnRhKS0+cnRhX2xlbikpKQorI2RlZmluZSBSVEFfTkVYVChydGEsYXR0cmxlbikgKChhdHRybGVuKSAtPSBSVEFfQUxJR04oKHJ0YSktPnJ0YV9sZW4pLCAoc3RydWN0IHJ0YXR0ciAqKSAoKChjaGFyICopIChydGEpKSArIFJUQV9BTElHTigocnRhKS0+cnRhX2xlbikpKQogI2RlZmluZSBSVEFfTEVOR1RIKGxlbikgKFJUQV9BTElHTihzaXplb2Yoc3RydWN0IHJ0YXR0cikpICsgKGxlbikpCiAjZGVmaW5lIFJUQV9TUEFDRShsZW4pIFJUQV9BTElHTihSVEFfTEVOR1RIKGxlbikpCi0jZGVmaW5lIFJUQV9EQVRBKHJ0YSkgKCh2b2lkKikoKChjaGFyKikocnRhKSkgKyBSVEFfTEVOR1RIKDApKSkKKyNkZWZpbmUgUlRBX0RBVEEocnRhKSAoKHZvaWQgKikgKCgoY2hhciAqKSAocnRhKSkgKyBSVEFfTEVOR1RIKDApKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJUQV9QQVlMT0FEKHJ0YSkgKChpbnQpKChydGEpLT5ydGFfbGVuKSAtIFJUQV9MRU5HVEgoMCkpCisjZGVmaW5lIFJUQV9QQVlMT0FEKHJ0YSkgKChpbnQpICgocnRhKS0+cnRhX2xlbikgLSBSVEFfTEVOR1RIKDApKQogc3RydWN0IHJ0bXNnIHsKLSB1bnNpZ25lZCBjaGFyIHJ0bV9mYW1pbHk7Ci0gdW5zaWduZWQgY2hhciBydG1fZHN0X2xlbjsKKyAgdW5zaWduZWQgY2hhciBydG1fZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIHJ0bV9kc3RfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJ0bV9zcmNfbGVuOwotIHVuc2lnbmVkIGNoYXIgcnRtX3RvczsKLSB1bnNpZ25lZCBjaGFyIHJ0bV90YWJsZTsKLSB1bnNpZ25lZCBjaGFyIHJ0bV9wcm90b2NvbDsKKyAgdW5zaWduZWQgY2hhciBydG1fc3JjX2xlbjsKKyAgdW5zaWduZWQgY2hhciBydG1fdG9zOworICB1bnNpZ25lZCBjaGFyIHJ0bV90YWJsZTsKKyAgdW5zaWduZWQgY2hhciBydG1fcHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcnRtX3Njb3BlOwotIHVuc2lnbmVkIGNoYXIgcnRtX3R5cGU7Ci0gdW5zaWduZWQgcnRtX2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIHJ0bV9zY29wZTsKKyAgdW5zaWduZWQgY2hhciBydG1fdHlwZTsKKyAgdW5zaWduZWQgcnRtX2ZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBSVE5fVU5TUEVDLAotIFJUTl9VTklDQVNULAotIFJUTl9MT0NBTCwKKyAgUlROX1VOU1BFQywKKyAgUlROX1VOSUNBU1QsCisgIFJUTl9MT0NBTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROX0JST0FEQ0FTVCwKLSBSVE5fQU5ZQ0FTVCwKLSBSVE5fTVVMVElDQVNULAotIFJUTl9CTEFDS0hPTEUsCisgIFJUTl9CUk9BRENBU1QsCisgIFJUTl9BTllDQVNULAorICBSVE5fTVVMVElDQVNULAorICBSVE5fQkxBQ0tIT0xFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5fVU5SRUFDSEFCTEUsCi0gUlROX1BST0hJQklULAotIFJUTl9USFJPVywKLSBSVE5fTkFULAorICBSVE5fVU5SRUFDSEFCTEUsCisgIFJUTl9QUk9ISUJJVCwKKyAgUlROX1RIUk9XLAorICBSVE5fTkFULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5fWFJFU09MVkUsCi0gX19SVE5fTUFYCisgIFJUTl9YUkVTT0xWRSwKKyAgX19SVE5fTUFYCiB9OwogI2RlZmluZSBSVE5fTUFYIChfX1JUTl9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTIyMSwxMiArMjIxLDEyIEBACiAjZGVmaW5lIFJUUFJPVF9NUk9VVEVEIDE3CiBlbnVtIHJ0X3Njb3BlX3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVF9TQ09QRV9VTklWRVJTRT0wLAotIFJUX1NDT1BFX1NJVEU9MjAwLAotIFJUX1NDT1BFX0xJTks9MjUzLAotIFJUX1NDT1BFX0hPU1Q9MjU0LAorICBSVF9TQ09QRV9VTklWRVJTRSA9IDAsCisgIFJUX1NDT1BFX1NJVEUgPSAyMDAsCisgIFJUX1NDT1BFX0xJTksgPSAyNTMsCisgIFJUX1NDT1BFX0hPU1QgPSAyNTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUX1NDT1BFX05PV0hFUkU9MjU1CisgIFJUX1NDT1BFX05PV0hFUkUgPSAyNTUKIH07CiAjZGVmaW5lIFJUTV9GX05PVElGWSAweDEwMAogI2RlZmluZSBSVE1fRl9DTE9ORUQgMHgyMDAKQEAgLTIzNCw1MSArMjM0LDUxIEBACiAjZGVmaW5lIFJUTV9GX0VRVUFMSVpFIDB4NDAwCiAjZGVmaW5lIFJUTV9GX1BSRUZJWCAweDgwMAogZW51bSBydF9jbGFzc190IHsKLSBSVF9UQUJMRV9VTlNQRUM9MCwKKyAgUlRfVEFCTEVfVU5TUEVDID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRfVEFCTEVfQ09NUEFUPTI1MiwKLSBSVF9UQUJMRV9ERUZBVUxUPTI1MywKLSBSVF9UQUJMRV9NQUlOPTI1NCwKLSBSVF9UQUJMRV9MT0NBTD0yNTUsCisgIFJUX1RBQkxFX0NPTVBBVCA9IDI1MiwKKyAgUlRfVEFCTEVfREVGQVVMVCA9IDI1MywKKyAgUlRfVEFCTEVfTUFJTiA9IDI1NCwKKyAgUlRfVEFCTEVfTE9DQUwgPSAyNTUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUX1RBQkxFX01BWD0weEZGRkZGRkZGCisgIFJUX1RBQkxFX01BWCA9IDB4RkZGRkZGRkYKIH07CiBlbnVtIHJ0YXR0cl90eXBlX3QgewotIFJUQV9VTlNQRUMsCisgIFJUQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQV9EU1QsCi0gUlRBX1NSQywKLSBSVEFfSUlGLAotIFJUQV9PSUYsCisgIFJUQV9EU1QsCisgIFJUQV9TUkMsCisgIFJUQV9JSUYsCisgIFJUQV9PSUYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQV9HQVRFV0FZLAotIFJUQV9QUklPUklUWSwKLSBSVEFfUFJFRlNSQywKLSBSVEFfTUVUUklDUywKKyAgUlRBX0dBVEVXQVksCisgIFJUQV9QUklPUklUWSwKKyAgUlRBX1BSRUZTUkMsCisgIFJUQV9NRVRSSUNTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFfTVVMVElQQVRILAotIFJUQV9QUk9UT0lORk8sCi0gUlRBX0ZMT1csCi0gUlRBX0NBQ0hFSU5GTywKKyAgUlRBX01VTFRJUEFUSCwKKyAgUlRBX1BST1RPSU5GTywKKyAgUlRBX0ZMT1csCisgIFJUQV9DQUNIRUlORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQV9TRVNTSU9OLAotIFJUQV9NUF9BTEdPLAotIFJUQV9UQUJMRSwKLSBSVEFfTUFSSywKKyAgUlRBX1NFU1NJT04sCisgIFJUQV9NUF9BTEdPLAorICBSVEFfVEFCTEUsCisgIFJUQV9NQVJLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFfTUZDX1NUQVRTLAotIF9fUlRBX01BWAorICBSVEFfTUZDX1NUQVRTLAorICBfX1JUQV9NQVgKIH07CiAjZGVmaW5lIFJUQV9NQVggKF9fUlRBX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBSVE1fUlRBKHIpICgoc3RydWN0IHJ0YXR0ciopKCgoY2hhciopKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgcnRtc2cpKSkpCi0jZGVmaW5lIFJUTV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobixzaXplb2Yoc3RydWN0IHJ0bXNnKSkKKyNkZWZpbmUgUlRNX1JUQShyKSAoKHN0cnVjdCBydGF0dHIgKikgKCgoY2hhciAqKSAocikpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBydG1zZykpKSkKKyNkZWZpbmUgUlRNX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLCBzaXplb2Yoc3RydWN0IHJ0bXNnKSkKIHN0cnVjdCBydG5leHRob3AgewotIHVuc2lnbmVkIHNob3J0IHJ0bmhfbGVuOworICB1bnNpZ25lZCBzaG9ydCBydG5oX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBydG5oX2ZsYWdzOwotIHVuc2lnbmVkIGNoYXIgcnRuaF9ob3BzOwotIGludCBydG5oX2lmaW5kZXg7CisgIHVuc2lnbmVkIGNoYXIgcnRuaF9mbGFnczsKKyAgdW5zaWduZWQgY2hhciBydG5oX2hvcHM7CisgIGludCBydG5oX2lmaW5kZXg7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlROSF9GX0RFQUQgMQpAQCAtMjg2LDY5ICsyODYsNjkgQEAKICNkZWZpbmUgUlROSF9GX09OTElOSyA0CiAjZGVmaW5lIFJUTkhfQUxJR05UTyA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBSVE5IX0FMSUdOKGxlbikgKCAoKGxlbikrUlROSF9BTElHTlRPLTEpICYgfihSVE5IX0FMSUdOVE8tMSkgKQotI2RlZmluZSBSVE5IX09LKHJ0bmgsbGVuKSAoKHJ0bmgpLT5ydG5oX2xlbiA+PSBzaXplb2Yoc3RydWN0IHJ0bmV4dGhvcCkgJiYgICAoKGludCkocnRuaCktPnJ0bmhfbGVuKSA8PSAobGVuKSkKLSNkZWZpbmUgUlROSF9ORVhUKHJ0bmgpICgoc3RydWN0IHJ0bmV4dGhvcCopKCgoY2hhciopKHJ0bmgpKSArIFJUTkhfQUxJR04oKHJ0bmgpLT5ydG5oX2xlbikpKQorI2RlZmluZSBSVE5IX0FMSUdOKGxlbikgKCgobGVuKSArIFJUTkhfQUxJR05UTyAtIDEpICYgfihSVE5IX0FMSUdOVE8gLSAxKSkKKyNkZWZpbmUgUlROSF9PSyhydG5oLGxlbikgKChydG5oKS0+cnRuaF9sZW4gPj0gc2l6ZW9mKHN0cnVjdCBydG5leHRob3ApICYmICgoaW50KSAocnRuaCktPnJ0bmhfbGVuKSA8PSAobGVuKSkKKyNkZWZpbmUgUlROSF9ORVhUKHJ0bmgpICgoc3RydWN0IHJ0bmV4dGhvcCAqKSAoKChjaGFyICopIChydG5oKSkgKyBSVE5IX0FMSUdOKChydG5oKS0+cnRuaF9sZW4pKSkKICNkZWZpbmUgUlROSF9MRU5HVEgobGVuKSAoUlROSF9BTElHTihzaXplb2Yoc3RydWN0IHJ0bmV4dGhvcCkpICsgKGxlbikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE5IX1NQQUNFKGxlbikgUlROSF9BTElHTihSVE5IX0xFTkdUSChsZW4pKQotI2RlZmluZSBSVE5IX0RBVEEocnRuaCkgKChzdHJ1Y3QgcnRhdHRyKikoKChjaGFyKikocnRuaCkpICsgUlROSF9MRU5HVEgoMCkpKQorI2RlZmluZSBSVE5IX0RBVEEocnRuaCkgKChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHJ0bmgpKSArIFJUTkhfTEVOR1RIKDApKSkKIHN0cnVjdCBydGFfY2FjaGVpbmZvIHsKLSBfX3UzMiBydGFfY2xudHJlZjsKKyAgX191MzIgcnRhX2NsbnRyZWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ0YV9sYXN0dXNlOwotIF9fczMyIHJ0YV9leHBpcmVzOwotIF9fdTMyIHJ0YV9lcnJvcjsKLSBfX3UzMiBydGFfdXNlZDsKKyAgX191MzIgcnRhX2xhc3R1c2U7CisgIF9fczMyIHJ0YV9leHBpcmVzOworICBfX3UzMiBydGFfZXJyb3I7CisgIF9fdTMyIHJ0YV91c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRORVRMSU5LX0hBVkVfUEVFUklORk8gMQotIF9fdTMyIHJ0YV9pZDsKLSBfX3UzMiBydGFfdHM7Ci0gX191MzIgcnRhX3RzYWdlOworICBfX3UzMiBydGFfaWQ7CisgIF9fdTMyIHJ0YV90czsKKyAgX191MzIgcnRhX3RzYWdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBSVEFYX1VOU1BFQywKKyAgUlRBWF9VTlNQRUMsCiAjZGVmaW5lIFJUQVhfVU5TUEVDIFJUQVhfVU5TUEVDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfTE9DSywKKyAgUlRBWF9MT0NLLAogI2RlZmluZSBSVEFYX0xPQ0sgUlRBWF9MT0NLCi0gUlRBWF9NVFUsCisgIFJUQVhfTVRVLAogI2RlZmluZSBSVEFYX01UVSBSVEFYX01UVQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX1dJTkRPVywKKyAgUlRBWF9XSU5ET1csCiAjZGVmaW5lIFJUQVhfV0lORE9XIFJUQVhfV0lORE9XCi0gUlRBWF9SVFQsCisgIFJUQVhfUlRULAogI2RlZmluZSBSVEFYX1JUVCBSVEFYX1JUVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX1JUVFZBUiwKKyAgUlRBWF9SVFRWQVIsCiAjZGVmaW5lIFJUQVhfUlRUVkFSIFJUQVhfUlRUVkFSCi0gUlRBWF9TU1RIUkVTSCwKKyAgUlRBWF9TU1RIUkVTSCwKICNkZWZpbmUgUlRBWF9TU1RIUkVTSCBSVEFYX1NTVEhSRVNICiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfQ1dORCwKKyAgUlRBWF9DV05ELAogI2RlZmluZSBSVEFYX0NXTkQgUlRBWF9DV05ECi0gUlRBWF9BRFZNU1MsCisgIFJUQVhfQURWTVNTLAogI2RlZmluZSBSVEFYX0FEVk1TUyBSVEFYX0FEVk1TUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX1JFT1JERVJJTkcsCisgIFJUQVhfUkVPUkRFUklORywKICNkZWZpbmUgUlRBWF9SRU9SREVSSU5HIFJUQVhfUkVPUkRFUklORwotIFJUQVhfSE9QTElNSVQsCisgIFJUQVhfSE9QTElNSVQsCiAjZGVmaW5lIFJUQVhfSE9QTElNSVQgUlRBWF9IT1BMSU1JVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX0lOSVRDV05ELAorICBSVEFYX0lOSVRDV05ELAogI2RlZmluZSBSVEFYX0lOSVRDV05EIFJUQVhfSU5JVENXTkQKLSBSVEFYX0ZFQVRVUkVTLAorICBSVEFYX0ZFQVRVUkVTLAogI2RlZmluZSBSVEFYX0ZFQVRVUkVTIFJUQVhfRkVBVFVSRVMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBWF9SVE9fTUlOLAorICBSVEFYX1JUT19NSU4sCiAjZGVmaW5lIFJUQVhfUlRPX01JTiBSVEFYX1JUT19NSU4KLSBSVEFYX0lOSVRSV05ELAorICBSVEFYX0lOSVRSV05ELAogI2RlZmluZSBSVEFYX0lOSVRSV05EIFJUQVhfSU5JVFJXTkQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBWF9RVUlDS0FDSywKKyAgUlRBWF9RVUlDS0FDSywKICNkZWZpbmUgUlRBWF9RVUlDS0FDSyBSVEFYX1FVSUNLQUNLCi0gX19SVEFYX01BWAorICBfX1JUQVhfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRBWF9NQVggKF9fUlRBWF9NQVggLSAxKQpAQCAtMzU4LDIyNCArMzU4LDIyMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRBWF9GRUFUVVJFX0FMTEZSQUcgMHgwMDAwMDAwOAogc3RydWN0IHJ0YV9zZXNzaW9uIHsKLSBfX3U4IHByb3RvOwotIF9fdTggcGFkMTsKKyAgX191OCBwcm90bzsKKyAgX191OCBwYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwYWQyOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTE2IHNwb3J0OworICBfX3UxNiBwYWQyOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IHNwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkcG9ydDsKLSB9IHBvcnRzOwotIHN0cnVjdCB7Ci0gX191OCB0eXBlOworICAgICAgX191MTYgZHBvcnQ7CisgICAgfSBwb3J0czsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvZGU7Ci0gX191MTYgaWRlbnQ7Ci0gfSBpY21wdDsKLSBfX3UzMiBzcGk7CisgICAgICBfX3U4IGNvZGU7CisgICAgICBfX3UxNiBpZGVudDsKKyAgICB9IGljbXB0OworICAgIF9fdTMyIHNwaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB1OworICB9IHU7CiB9Owogc3RydWN0IHJ0YV9tZmNfc3RhdHMgewotIF9fdTY0IG1mY3NfcGFja2V0czsKKyAgX191NjQgbWZjc19wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBtZmNzX2J5dGVzOwotIF9fdTY0IG1mY3Nfd3JvbmdfaWY7CisgIF9fdTY0IG1mY3NfYnl0ZXM7CisgIF9fdTY0IG1mY3Nfd3JvbmdfaWY7CiB9Owogc3RydWN0IHJ0Z2VubXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBydGdlbl9mYW1pbHk7CisgIHVuc2lnbmVkIGNoYXIgcnRnZW5fZmFtaWx5OwogfTsKIHN0cnVjdCBpZmluZm9tc2cgewotIHVuc2lnbmVkIGNoYXIgaWZpX2ZhbWlseTsKKyAgdW5zaWduZWQgY2hhciBpZmlfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIF9faWZpX3BhZDsKLSB1bnNpZ25lZCBzaG9ydCBpZmlfdHlwZTsKLSBpbnQgaWZpX2luZGV4OwotIHVuc2lnbmVkIGlmaV9mbGFnczsKKyAgdW5zaWduZWQgY2hhciBfX2lmaV9wYWQ7CisgIHVuc2lnbmVkIHNob3J0IGlmaV90eXBlOworICBpbnQgaWZpX2luZGV4OworICB1bnNpZ25lZCBpZmlfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGlmaV9jaGFuZ2U7CisgIHVuc2lnbmVkIGlmaV9jaGFuZ2U7CiB9Owogc3RydWN0IHByZWZpeG1zZyB7Ci0gdW5zaWduZWQgY2hhciBwcmVmaXhfZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIHByZWZpeF9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHJlZml4X3BhZDE7Ci0gdW5zaWduZWQgc2hvcnQgcHJlZml4X3BhZDI7Ci0gaW50IHByZWZpeF9pZmluZGV4OwotIHVuc2lnbmVkIGNoYXIgcHJlZml4X3R5cGU7CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X3BhZDE7CisgIHVuc2lnbmVkIHNob3J0IHByZWZpeF9wYWQyOworICBpbnQgcHJlZml4X2lmaW5kZXg7CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHJlZml4X2xlbjsKLSB1bnNpZ25lZCBjaGFyIHByZWZpeF9mbGFnczsKLSB1bnNpZ25lZCBjaGFyIHByZWZpeF9wYWQzOworICB1bnNpZ25lZCBjaGFyIHByZWZpeF9sZW47CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIHByZWZpeF9wYWQzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtCi17Ci0gUFJFRklYX1VOU1BFQywKLSBQUkVGSVhfQUREUkVTUywKK2VudW0geworICBQUkVGSVhfVU5TUEVDLAorICBQUkVGSVhfQUREUkVTUywKKyAgUFJFRklYX0NBQ0hFSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFJFRklYX0NBQ0hFSU5GTywKLSBfX1BSRUZJWF9NQVgKKyAgX19QUkVGSVhfTUFYCiB9OwogI2RlZmluZSBQUkVGSVhfTUFYIChfX1BSRUZJWF9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcmVmaXhfY2FjaGVpbmZvIHsKLSBfX3UzMiBwcmVmZXJyZWRfdGltZTsKLSBfX3UzMiB2YWxpZF90aW1lOwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHByZWZlcnJlZF90aW1lOworICBfX3UzMiB2YWxpZF90aW1lOworfTsKIHN0cnVjdCB0Y21zZyB7Ci0gdW5zaWduZWQgY2hhciB0Y21fZmFtaWx5OwotIHVuc2lnbmVkIGNoYXIgdGNtX19wYWQxOwotIHVuc2lnbmVkIHNob3J0IHRjbV9fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRjbV9pZmluZGV4OwotIF9fdTMyIHRjbV9oYW5kbGU7Ci0gX191MzIgdGNtX3BhcmVudDsKLSBfX3UzMiB0Y21faW5mbzsKKyAgdW5zaWduZWQgY2hhciB0Y21fZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIHRjbV9fcGFkMTsKKyAgdW5zaWduZWQgc2hvcnQgdGNtX19wYWQyOworICBpbnQgdGNtX2lmaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0Y21faGFuZGxlOworICBfX3UzMiB0Y21fcGFyZW50OworICBfX3UzMiB0Y21faW5mbzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX1VOU1BFQywKLSBUQ0FfS0lORCwKKyAgVENBX1VOU1BFQywKKyAgVENBX0tJTkQsCisgIFRDQV9PUFRJT05TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfT1BUSU9OUywKLSBUQ0FfU1RBVFMsCi0gVENBX1hTVEFUUywKLSBUQ0FfUkFURSwKKyAgVENBX1NUQVRTLAorICBUQ0FfWFNUQVRTLAorICBUQ0FfUkFURSwKKyAgVENBX0ZDTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GQ05ULAotIFRDQV9TVEFUUzIsCi0gVENBX1NUQUIsCi0gX19UQ0FfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBUQ0FfU1RBVFMyLAorICBUQ0FfU1RBQiwKKyAgX19UQ0FfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX01BWCAoX19UQ0FfTUFYIC0gMSkKLSNkZWZpbmUgVENBX1JUQShyKSAoKHN0cnVjdCBydGF0dHIqKSgoKGNoYXIqKShyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IHRjbXNnKSkpKQotI2RlZmluZSBUQ0FfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sc2l6ZW9mKHN0cnVjdCB0Y21zZykpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUQ0FfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciAqKSAoKChjaGFyICopIChyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IHRjbXNnKSkpKQorI2RlZmluZSBUQ0FfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sIHNpemVvZihzdHJ1Y3QgdGNtc2cpKQogc3RydWN0IG5kdXNlcm9wdG1zZyB7Ci0gdW5zaWduZWQgY2hhciBuZHVzZXJvcHRfZmFtaWx5OwotIHVuc2lnbmVkIGNoYXIgbmR1c2Vyb3B0X3BhZDE7Ci0gdW5zaWduZWQgc2hvcnQgbmR1c2Vyb3B0X29wdHNfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbmR1c2Vyb3B0X2lmaW5kZXg7Ci0gX191OCBuZHVzZXJvcHRfaWNtcF90eXBlOwotIF9fdTggbmR1c2Vyb3B0X2ljbXBfY29kZTsKLSB1bnNpZ25lZCBzaG9ydCBuZHVzZXJvcHRfcGFkMjsKKyAgdW5zaWduZWQgY2hhciBuZHVzZXJvcHRfZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIG5kdXNlcm9wdF9wYWQxOworICB1bnNpZ25lZCBzaG9ydCBuZHVzZXJvcHRfb3B0c19sZW47CisgIGludCBuZHVzZXJvcHRfaWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG5kdXNlcm9wdF9wYWQzOworICBfX3U4IG5kdXNlcm9wdF9pY21wX3R5cGU7CisgIF9fdTggbmR1c2Vyb3B0X2ljbXBfY29kZTsKKyAgdW5zaWduZWQgc2hvcnQgbmR1c2Vyb3B0X3BhZDI7CisgIHVuc2lnbmVkIGludCBuZHVzZXJvcHRfcGFkMzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gTkRVU0VST1BUX1VOU1BFQywKKyAgTkRVU0VST1BUX1VOU1BFQywKKyAgTkRVU0VST1BUX1NSQ0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVVNFUk9QVF9TUkNBRERSLAotIF9fTkRVU0VST1BUX01BWAorICBfX05EVVNFUk9QVF9NQVgKIH07CiAjZGVmaW5lIE5EVVNFUk9QVF9NQVggKF9fTkRVU0VST1BUX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfTElOSyAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfTk9USUZZIDIKICNkZWZpbmUgUlRNR1JQX05FSUdIIDQKICNkZWZpbmUgUlRNR1JQX1RDIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9JUFY0X0lGQUREUiAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfSVBWNF9NUk9VVEUgMHgyMAogI2RlZmluZSBSVE1HUlBfSVBWNF9ST1VURSAweDQwCiAjZGVmaW5lIFJUTUdSUF9JUFY0X1JVTEUgMHg4MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNR1JQX0lQVjZfSUZBRERSIDB4MTAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfSVBWNl9NUk9VVEUgMHgyMDAKICNkZWZpbmUgUlRNR1JQX0lQVjZfUk9VVEUgMHg0MDAKICNkZWZpbmUgUlRNR1JQX0lQVjZfSUZJTkZPIDB4ODAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfREVDbmV0X0lGQUREUiAweDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9ERUNuZXRfUk9VVEUgMHg0MDAwCiAjZGVmaW5lIFJUTUdSUF9JUFY2X1BSRUZJWCAweDIwMDAwCiBlbnVtIHJ0bmV0bGlua19ncm91cHMgeworICBSVE5MR1JQX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfTk9ORSwKICNkZWZpbmUgUlROTEdSUF9OT05FIFJUTkxHUlBfTk9ORQotIFJUTkxHUlBfTElOSywKKyAgUlROTEdSUF9MSU5LLAogI2RlZmluZSBSVE5MR1JQX0xJTksgUlROTEdSUF9MSU5LCisgIFJUTkxHUlBfTk9USUZZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX05PVElGWSwKICNkZWZpbmUgUlROTEdSUF9OT1RJRlkgUlROTEdSUF9OT1RJRlkKLSBSVE5MR1JQX05FSUdILAorICBSVE5MR1JQX05FSUdILAogI2RlZmluZSBSVE5MR1JQX05FSUdIIFJUTkxHUlBfTkVJR0gKKyAgUlROTEdSUF9UQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9UQywKICNkZWZpbmUgUlROTEdSUF9UQyBSVE5MR1JQX1RDCi0gUlROTEdSUF9JUFY0X0lGQUREUiwKKyAgUlROTEdSUF9JUFY0X0lGQUREUiwKICNkZWZpbmUgUlROTEdSUF9JUFY0X0lGQUREUiBSVE5MR1JQX0lQVjRfSUZBRERSCisgIFJUTkxHUlBfSVBWNF9NUk9VVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfSVBWNF9NUk9VVEUsCiAjZGVmaW5lIFJUTkxHUlBfSVBWNF9NUk9VVEUgUlROTEdSUF9JUFY0X01ST1VURQotIFJUTkxHUlBfSVBWNF9ST1VURSwKKyAgUlROTEdSUF9JUFY0X1JPVVRFLAogI2RlZmluZSBSVE5MR1JQX0lQVjRfUk9VVEUgUlROTEdSUF9JUFY0X1JPVVRFCisgIFJUTkxHUlBfSVBWNF9SVUxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX0lQVjRfUlVMRSwKICNkZWZpbmUgUlROTEdSUF9JUFY0X1JVTEUgUlROTEdSUF9JUFY0X1JVTEUKLSBSVE5MR1JQX0lQVjZfSUZBRERSLAorICBSVE5MR1JQX0lQVjZfSUZBRERSLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfSUZBRERSIFJUTkxHUlBfSVBWNl9JRkFERFIKKyAgUlROTEdSUF9JUFY2X01ST1VURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9JUFY2X01ST1VURSwKICNkZWZpbmUgUlROTEdSUF9JUFY2X01ST1VURSBSVE5MR1JQX0lQVjZfTVJPVVRFCi0gUlROTEdSUF9JUFY2X1JPVVRFLAorICBSVE5MR1JQX0lQVjZfUk9VVEUsCiAjZGVmaW5lIFJUTkxHUlBfSVBWNl9ST1VURSBSVE5MR1JQX0lQVjZfUk9VVEUKKyAgUlROTEdSUF9JUFY2X0lGSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9JUFY2X0lGSU5GTywKICNkZWZpbmUgUlROTEdSUF9JUFY2X0lGSU5GTyBSVE5MR1JQX0lQVjZfSUZJTkZPCi0gUlROTEdSUF9ERUNuZXRfSUZBRERSLAorICBSVE5MR1JQX0RFQ25ldF9JRkFERFIsCiAjZGVmaW5lIFJUTkxHUlBfREVDbmV0X0lGQUREUiBSVE5MR1JQX0RFQ25ldF9JRkFERFIKKyAgUlROTEdSUF9OT1AyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX05PUDIsCi0gUlROTEdSUF9ERUNuZXRfUk9VVEUsCisgIFJUTkxHUlBfREVDbmV0X1JPVVRFLAogI2RlZmluZSBSVE5MR1JQX0RFQ25ldF9ST1VURSBSVE5MR1JQX0RFQ25ldF9ST1VURQotIFJUTkxHUlBfREVDbmV0X1JVTEUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSVE5MR1JQX0RFQ25ldF9SVUxFLAogI2RlZmluZSBSVE5MR1JQX0RFQ25ldF9SVUxFIFJUTkxHUlBfREVDbmV0X1JVTEUKLSBSVE5MR1JQX05PUDQsCi0gUlROTEdSUF9JUFY2X1BSRUZJWCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFJUTkxHUlBfTk9QNCwKKyAgUlROTEdSUF9JUFY2X1BSRUZJWCwKICNkZWZpbmUgUlROTEdSUF9JUFY2X1BSRUZJWCBSVE5MR1JQX0lQVjZfUFJFRklYCisgIFJUTkxHUlBfSVBWNl9SVUxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX0lQVjZfUlVMRSwKICNkZWZpbmUgUlROTEdSUF9JUFY2X1JVTEUgUlROTEdSUF9JUFY2X1JVTEUKLSBSVE5MR1JQX05EX1VTRVJPUFQsCisgIFJUTkxHUlBfTkRfVVNFUk9QVCwKICNkZWZpbmUgUlROTEdSUF9ORF9VU0VST1BUIFJUTkxHUlBfTkRfVVNFUk9QVAorICBSVE5MR1JQX1BIT05FVF9JRkFERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfUEhPTkVUX0lGQUREUiwKICNkZWZpbmUgUlROTEdSUF9QSE9ORVRfSUZBRERSIFJUTkxHUlBfUEhPTkVUX0lGQUREUgotIFJUTkxHUlBfUEhPTkVUX1JPVVRFLAorICBSVE5MR1JQX1BIT05FVF9ST1VURSwKICNkZWZpbmUgUlROTEdSUF9QSE9ORVRfUk9VVEUgUlROTEdSUF9QSE9ORVRfUk9VVEUKKyAgUlROTEdSUF9EQ0IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfRENCLAogI2RlZmluZSBSVE5MR1JQX0RDQiBSVE5MR1JQX0RDQgotIFJUTkxHUlBfSVBWNF9ORVRDT05GLAorICBSVE5MR1JQX0lQVjRfTkVUQ09ORiwKICNkZWZpbmUgUlROTEdSUF9JUFY0X05FVENPTkYgUlROTEdSUF9JUFY0X05FVENPTkYKKyAgUlROTEdSUF9JUFY2X05FVENPTkYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfSVBWNl9ORVRDT05GLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfTkVUQ09ORiBSVE5MR1JQX0lQVjZfTkVUQ09ORgotIFJUTkxHUlBfTURCLAorICBSVE5MR1JQX01EQiwKICNkZWZpbmUgUlROTEdSUF9NREIgUlROTEdSUF9NREIKKyAgX19SVE5MR1JQX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1JUTkxHUlBfTUFYCiB9OwogI2RlZmluZSBSVE5MR1JQX01BWCAoX19SVE5MR1JQX01BWCAtIDEpCiBzdHJ1Y3QgdGNhbXNnIHsKKyAgdW5zaWduZWQgY2hhciB0Y2FfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHRjYV9mYW1pbHk7Ci0gdW5zaWduZWQgY2hhciB0Y2FfX3BhZDE7Ci0gdW5zaWduZWQgc2hvcnQgdGNhX19wYWQyOworICB1bnNpZ25lZCBjaGFyIHRjYV9fcGFkMTsKKyAgdW5zaWduZWQgc2hvcnQgdGNhX19wYWQyOwogfTsKKyNkZWZpbmUgVEFfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciAqKSAoKChjaGFyICopIChyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IHRjYW1zZykpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRBX1JUQShyKSAoKHN0cnVjdCBydGF0dHIqKSgoKGNoYXIqKShyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IHRjYW1zZykpKSkKLSNkZWZpbmUgVEFfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sc2l6ZW9mKHN0cnVjdCB0Y2Ftc2cpKQorI2RlZmluZSBUQV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobiwgc2l6ZW9mKHN0cnVjdCB0Y2Ftc2cpKQogI2RlZmluZSBUQ0FfQUNUX1RBQiAxCiAjZGVmaW5lIFRDQUFfTUFYIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJURVhUX0ZJTFRFUl9WRiAoMSA8PCAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRFWFRfRklMVEVSX0JSVkxBTiAoMSA8PCAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY2MuaAppbmRleCA0YTk1ZWFkLi44YTQzMDU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NjLmgKQEAgLTI3LDE0MyArMjcsMTQzIEBACiAjZGVmaW5lIEJBWUNPTSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBTQ0NfaW9jdGxfY21kcyB7Ci0gU0lPQ1NDQ1JFU0VSVkVEID0gU0lPQ0RFVlBSSVZBVEUsCi0gU0lPQ1NDQ0NGRywKLSBTSU9DU0NDSU5JLAorICBTSU9DU0NDUkVTRVJWRUQgPSBTSU9DREVWUFJJVkFURSwKKyAgU0lPQ1NDQ0NGRywKKyAgU0lPQ1NDQ0lOSSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0lPQ1NDQ0NIQU5JTkksCi0gU0lPQ1NDQ1NNRU0sCi0gU0lPQ1NDQ0dLSVNTLAotIFNJT0NTQ0NTS0lTUywKKyAgU0lPQ1NDQ0NIQU5JTkksCisgIFNJT0NTQ0NTTUVNLAorICBTSU9DU0NDR0tJU1MsCisgIFNJT0NTQ0NTS0lTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0lPQ1NDQ0dTVEFULAotIFNJT0NTQ0NDQUwKKyAgU0lPQ1NDQ0dTVEFULAorICBTSU9DU0NDQ0FMCiB9OwogZW51bSBMMV9wYXJhbXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJBTV9EQVRBLAotIFBBUkFNX1RYREVMQVksCi0gUEFSQU1fUEVSU0lTVCwKLSBQQVJBTV9TTE9UVElNRSwKKyAgUEFSQU1fREFUQSwKKyAgUEFSQU1fVFhERUxBWSwKKyAgUEFSQU1fUEVSU0lTVCwKKyAgUEFSQU1fU0xPVFRJTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUkFNX1RYVEFJTCwKLSBQQVJBTV9GVUxMRFVQLAotIFBBUkFNX1NPRlREQ0QsCi0gUEFSQU1fTVVURSwKKyAgUEFSQU1fVFhUQUlMLAorICBQQVJBTV9GVUxMRFVQLAorICBQQVJBTV9TT0ZURENELAorICBQQVJBTV9NVVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJBTV9EVFIsCi0gUEFSQU1fUlRTLAotIFBBUkFNX1NQRUVELAotIFBBUkFNX0VORERFTEFZLAorICBQQVJBTV9EVFIsCisgIFBBUkFNX1JUUywKKyAgUEFSQU1fU1BFRUQsCisgIFBBUkFNX0VORERFTEFZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJBTV9HUk9VUCwKLSBQQVJBTV9JRExFLAotIFBBUkFNX01JTiwKLSBQQVJBTV9NQVhLRVksCisgIFBBUkFNX0dST1VQLAorICBQQVJBTV9JRExFLAorICBQQVJBTV9NSU4sCisgIFBBUkFNX01BWEtFWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEFSQU1fV0FJVCwKLSBQQVJBTV9NQVhERUZFUiwKLSBQQVJBTV9UWCwKLSBQQVJBTV9IV0VWRU5UID0gMzEsCisgIFBBUkFNX1dBSVQsCisgIFBBUkFNX01BWERFRkVSLAorICBQQVJBTV9UWCwKKyAgUEFSQU1fSFdFVkVOVCA9IDMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJBTV9SRVRVUk4gPSAyNTUKKyAgUEFSQU1fUkVUVVJOID0gMjU1CiB9OwogZW51bSBGVUxMRFVQX21vZGVzIHsKLSBLSVNTX0RVUExFWF9IQUxGLAorICBLSVNTX0RVUExFWF9IQUxGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLSVNTX0RVUExFWF9GVUxMLAotIEtJU1NfRFVQTEVYX0xJTkssCi0gS0lTU19EVVBMRVhfT1BUSU1BCisgIEtJU1NfRFVQTEVYX0ZVTEwsCisgIEtJU1NfRFVQTEVYX0xJTkssCisgIEtJU1NfRFVQTEVYX09QVElNQQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJTUVSX09GRiA2NTUzNVUKICNkZWZpbmUgTk9fU1VDSF9QQVJBTSA2NTUzNFUKIGVudW0gSFdFVkVOVF9vcHRzIHsKLSBIV0VWX0RDRF9PTiwKKyAgSFdFVl9EQ0RfT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhXRVZfRENEX09GRiwKLSBIV0VWX0FMTF9TRU5UCisgIEhXRVZfRENEX09GRiwKKyAgSFdFVl9BTExfU0VOVAogfTsKICNkZWZpbmUgUlhHUk9VUCAwMTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUWEdST1VQIDAyMDAKIGVudW0gQ0xPQ0tfc291cmNlcyB7Ci0gQ0xLX0RQTEwsCi0gQ0xLX0VYVEVSTkFMLAorICBDTEtfRFBMTCwKKyAgQ0xLX0VYVEVSTkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDTEtfRElWSURFUiwKLSBDTEtfQlJHCisgIENMS19ESVZJREVSLAorICBDTEtfQlJHCiB9OwogZW51bSBUWF9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRYU19JRExFLAotIFRYU19CVVNZLAotIFRYU19BQ1RJVkUsCi0gVFhTX05FV0ZSQU1FLAorICBUWFNfSURMRSwKKyAgVFhTX0JVU1ksCisgIFRYU19BQ1RJVkUsCisgIFRYU19ORVdGUkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFhTX0lETEUyLAotIFRYU19XQUlULAotIFRYU19USU1FT1VUCisgIFRYU19JRExFMiwKKyAgVFhTX1dBSVQsCisgIFRYU19USU1FT1VUCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBpb19wb3J0Owogc3RydWN0IHNjY19zdGF0IHsKLSBsb25nIHJ4aW50czsKLSBsb25nIHR4aW50czsKKyAgbG9uZyByeGludHM7CisgIGxvbmcgdHhpbnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGV4aW50czsKLSBsb25nIHNwaW50czsKLSBsb25nIHR4ZnJhbWVzOwotIGxvbmcgcnhmcmFtZXM7CisgIGxvbmcgZXhpbnRzOworICBsb25nIHNwaW50czsKKyAgbG9uZyB0eGZyYW1lczsKKyAgbG9uZyByeGZyYW1lczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyByeGVycnM7Ci0gbG9uZyB0eGVycnM7Ci0gdW5zaWduZWQgaW50IG5vc3BhY2U7Ci0gdW5zaWduZWQgaW50IHJ4X292ZXI7CisgIGxvbmcgcnhlcnJzOworICBsb25nIHR4ZXJyczsKKyAgdW5zaWduZWQgaW50IG5vc3BhY2U7CisgIHVuc2lnbmVkIGludCByeF9vdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdHhfdW5kZXI7Ci0gdW5zaWduZWQgaW50IHR4X3N0YXRlOwotIGludCB0eF9xdWV1ZWQ7Ci0gdW5zaWduZWQgaW50IG1heHF1ZXVlOworICB1bnNpZ25lZCBpbnQgdHhfdW5kZXI7CisgIHVuc2lnbmVkIGludCB0eF9zdGF0ZTsKKyAgaW50IHR4X3F1ZXVlZDsKKyAgdW5zaWduZWQgaW50IG1heHF1ZXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYnVmc2l6ZTsKKyAgdW5zaWduZWQgaW50IGJ1ZnNpemU7CiB9Owogc3RydWN0IHNjY19tb2RlbSB7Ci0gbG9uZyBzcGVlZDsKKyAgbG9uZyBzcGVlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBjbG9ja3NyYzsKLSBjaGFyIG5yejsKKyAgY2hhciBjbG9ja3NyYzsKKyAgY2hhciBucno7CiB9Owogc3RydWN0IHNjY19raXNzX2NtZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb21tYW5kOwotIHVuc2lnbmVkIHBhcmFtOworICBpbnQgY29tbWFuZDsKKyAgdW5zaWduZWQgcGFyYW07CiB9Owogc3RydWN0IHNjY19od19jb25maWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpb19wb3J0IGRhdGFfYTsKLSBpb19wb3J0IGN0cmxfYTsKLSBpb19wb3J0IGRhdGFfYjsKLSBpb19wb3J0IGN0cmxfYjsKKyAgaW9fcG9ydCBkYXRhX2E7CisgIGlvX3BvcnQgY3RybF9hOworICBpb19wb3J0IGRhdGFfYjsKKyAgaW9fcG9ydCBjdHJsX2I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGlvX3BvcnQgdmVjdG9yX2xhdGNoOwotIGlvX3BvcnQgc3BlY2lhbDsKLSBpbnQgaXJxOwotIGxvbmcgY2xvY2s7CisgIGlvX3BvcnQgdmVjdG9yX2xhdGNoOworICBpb19wb3J0IHNwZWNpYWw7CisgIGludCBpcnE7CisgIGxvbmcgY2xvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgb3B0aW9uOwotIGNoYXIgYnJhbmQ7Ci0gY2hhciBlc2NjOworICBjaGFyIG9wdGlvbjsKKyAgY2hhciBicmFuZDsKKyAgY2hhciBlc2NjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2NjX21lbV9jb25maWcgewotIHVuc2lnbmVkIGludCBkdW1teTsKLSB1bnNpZ25lZCBpbnQgYnVmc2l6ZTsKKyAgdW5zaWduZWQgaW50IGR1bW15OworICB1bnNpZ25lZCBpbnQgYnVmc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjY19jYWxpYnJhdGUgewotIHVuc2lnbmVkIGludCB0aW1lOwotIHVuc2lnbmVkIGNoYXIgcGF0dGVybjsKKyAgdW5zaWduZWQgaW50IHRpbWU7CisgIHVuc2lnbmVkIGNoYXIgcGF0dGVybjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjcmVlbl9pbmZvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjcmVlbl9pbmZvLmgKaW5kZXggZTAzZmVlZi4uY2ZlMjJmZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY3JlZW5faW5mby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NyZWVuX2luZm8uaApAQCAtMjEsNDggKzIxLDQ4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBzY3JlZW5faW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3JpZ194OwotIF9fdTggb3JpZ195OwotIF9fdTE2IGV4dF9tZW1fazsKLSBfX3UxNiBvcmlnX3ZpZGVvX3BhZ2U7CisgIF9fdTggb3JpZ194OworICBfX3U4IG9yaWdfeTsKKyAgX191MTYgZXh0X21lbV9rOworICBfX3UxNiBvcmlnX3ZpZGVvX3BhZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3JpZ192aWRlb19tb2RlOwotIF9fdTggb3JpZ192aWRlb19jb2xzOwotIF9fdTggZmxhZ3M7Ci0gX191OCB1bnVzZWQyOworICBfX3U4IG9yaWdfdmlkZW9fbW9kZTsKKyAgX191OCBvcmlnX3ZpZGVvX2NvbHM7CisgIF9fdTggZmxhZ3M7CisgIF9fdTggdW51c2VkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3JpZ192aWRlb19lZ2FfYng7Ci0gX191MTYgdW51c2VkMzsKLSBfX3U4IG9yaWdfdmlkZW9fbGluZXM7Ci0gX191OCBvcmlnX3ZpZGVvX2lzVkdBOworICBfX3UxNiBvcmlnX3ZpZGVvX2VnYV9ieDsKKyAgX191MTYgdW51c2VkMzsKKyAgX191OCBvcmlnX3ZpZGVvX2xpbmVzOworICBfX3U4IG9yaWdfdmlkZW9faXNWR0E7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG9yaWdfdmlkZW9fcG9pbnRzOwotIF9fdTE2IGxmYl93aWR0aDsKLSBfX3UxNiBsZmJfaGVpZ2h0OwotIF9fdTE2IGxmYl9kZXB0aDsKKyAgX191MTYgb3JpZ192aWRlb19wb2ludHM7CisgIF9fdTE2IGxmYl93aWR0aDsKKyAgX191MTYgbGZiX2hlaWdodDsKKyAgX191MTYgbGZiX2RlcHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZmJfYmFzZTsKLSBfX3UzMiBsZmJfc2l6ZTsKLSBfX3UxNiBjbF9tYWdpYywgY2xfb2Zmc2V0OwotIF9fdTE2IGxmYl9saW5lbGVuZ3RoOworICBfX3UzMiBsZmJfYmFzZTsKKyAgX191MzIgbGZiX3NpemU7CisgIF9fdTE2IGNsX21hZ2ljLCBjbF9vZmZzZXQ7CisgIF9fdTE2IGxmYl9saW5lbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlZF9zaXplOwotIF9fdTggcmVkX3BvczsKLSBfX3U4IGdyZWVuX3NpemU7Ci0gX191OCBncmVlbl9wb3M7CisgIF9fdTggcmVkX3NpemU7CisgIF9fdTggcmVkX3BvczsKKyAgX191OCBncmVlbl9zaXplOworICBfX3U4IGdyZWVuX3BvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibHVlX3NpemU7Ci0gX191OCBibHVlX3BvczsKLSBfX3U4IHJzdmRfc2l6ZTsKLSBfX3U4IHJzdmRfcG9zOworICBfX3U4IGJsdWVfc2l6ZTsKKyAgX191OCBibHVlX3BvczsKKyAgX191OCByc3ZkX3NpemU7CisgIF9fdTggcnN2ZF9wb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHZlc2FwbV9zZWc7Ci0gX191MTYgdmVzYXBtX29mZjsKLSBfX3UxNiBwYWdlczsKLSBfX3UxNiB2ZXNhX2F0dHJpYnV0ZXM7CisgIF9fdTE2IHZlc2FwbV9zZWc7CisgIF9fdTE2IHZlc2FwbV9vZmY7CisgIF9fdTE2IHBhZ2VzOworICBfX3UxNiB2ZXNhX2F0dHJpYnV0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNhcGFiaWxpdGllczsKLSBfX3U4IF9yZXNlcnZlZFs2XTsKKyAgX191MzIgY2FwYWJpbGl0aWVzOworICBfX3U4IF9yZXNlcnZlZFs2XTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFZJREVPX1RZUEVfTURBIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjdHAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2N0cC5oCmluZGV4IGZlN2MzNzYuLjI5ZTRiOWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2N0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2N0cC5oCkBAIC02NCw0NjMgKzY0LDUxMSBAQAogI2RlZmluZSBTQ1RQX0dFVF9BU1NPQ19JRF9MSVNUIDI5CiAjZGVmaW5lIFNDVFBfQVVUT19BU0NPTkYgMzAKICNkZWZpbmUgU0NUUF9QRUVSX0FERFJfVEhMRFMgMzEKLSNkZWZpbmUgU0NUUF9TT0NLT1BUX0JJTkRYX0FERCAxMDAKKyNkZWZpbmUgU0NUUF9SRUNWUkNWSU5GTyAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0NUUF9SRUNWTlhUSU5GTyAzMworI2RlZmluZSBTQ1RQX0RFRkFVTFRfU05ESU5GTyAzNAorI2RlZmluZSBTQ1RQX1NPQ0tPUFRfQklORFhfQUREIDEwMAogI2RlZmluZSBTQ1RQX1NPQ0tPUFRfQklORFhfUkVNIDEwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NUUF9TT0NLT1BUX1BFRUxPRkYgMTAyCiAjZGVmaW5lIFNDVFBfU09DS09QVF9DT05ORUNUWF9PTEQgMTA3CiAjZGVmaW5lIFNDVFBfR0VUX1BFRVJfQUREUlMgMTA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ1RQX0dFVF9MT0NBTF9BRERSUyAxMDkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDVFBfU09DS09QVF9DT05ORUNUWCAxMTAKICNkZWZpbmUgU0NUUF9TT0NLT1BUX0NPTk5FQ1RYMyAxMTEKICNkZWZpbmUgU0NUUF9HRVRfQVNTT0NfU1RBVFMgMTEyCitlbnVtIHNjdHBfbXNnX2ZsYWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1TR19OT1RJRklDQVRJT04gPSAweDgwMDAsCisjZGVmaW5lIE1TR19OT1RJRklDQVRJT04gTVNHX05PVElGSUNBVElPTgorfTsKIHN0cnVjdCBzY3RwX2luaXRtc2cgewotIF9fdTE2IHNpbml0X251bV9vc3RyZWFtczsKLSBfX3UxNiBzaW5pdF9tYXhfaW5zdHJlYW1zOwotIF9fdTE2IHNpbml0X21heF9hdHRlbXB0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2luaXRfbWF4X2luaXRfdGltZW87CisgIF9fdTE2IHNpbml0X251bV9vc3RyZWFtczsKKyAgX191MTYgc2luaXRfbWF4X2luc3RyZWFtczsKKyAgX191MTYgc2luaXRfbWF4X2F0dGVtcHRzOworICBfX3UxNiBzaW5pdF9tYXhfaW5pdF90aW1lbzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNjdHBfc25kcmN2aW5mbyB7Ci0gX191MTYgc2luZm9fc3RyZWFtOworICBfX3UxNiBzaW5mb19zdHJlYW07CisgIF9fdTE2IHNpbmZvX3NzbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2luZm9fc3NuOwotIF9fdTE2IHNpbmZvX2ZsYWdzOwotIF9fdTMyIHNpbmZvX3BwaWQ7Ci0gX191MzIgc2luZm9fY29udGV4dDsKKyAgX191MTYgc2luZm9fZmxhZ3M7CisgIF9fdTMyIHNpbmZvX3BwaWQ7CisgIF9fdTMyIHNpbmZvX2NvbnRleHQ7CisgIF9fdTMyIHNpbmZvX3RpbWV0b2xpdmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpbmZvX3RpbWV0b2xpdmU7Ci0gX191MzIgc2luZm9fdHNuOwotIF9fdTMyIHNpbmZvX2N1bXRzbjsKLSBzY3RwX2Fzc29jX3Qgc2luZm9fYXNzb2NfaWQ7CisgIF9fdTMyIHNpbmZvX3RzbjsKKyAgX191MzIgc2luZm9fY3VtdHNuOworICBzY3RwX2Fzc29jX3Qgc2luZm9fYXNzb2NfaWQ7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBzY3RwX3NuZGluZm8geworICBfX3UxNiBzbmRfc2lkOworICBfX3UxNiBzbmRfZmxhZ3M7CisgIF9fdTMyIHNuZF9wcGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgc25kX2NvbnRleHQ7CisgIHNjdHBfYXNzb2NfdCBzbmRfYXNzb2NfaWQ7Cit9Oworc3RydWN0IHNjdHBfcmN2aW5mbyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiByY3Zfc2lkOworICBfX3UxNiByY3Zfc3NuOworICBfX3UxNiByY3ZfZmxhZ3M7CisgIF9fdTMyIHJjdl9wcGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmN2X3RzbjsKKyAgX191MzIgcmN2X2N1bXRzbjsKKyAgX191MzIgcmN2X2NvbnRleHQ7CisgIHNjdHBfYXNzb2NfdCByY3ZfYXNzb2NfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLWVudW0gc2N0cF9zaW5mb19mbGFncyB7Ci0gU0NUUF9VTk9SREVSRUQgPSAxLAotIFNDVFBfQUREUl9PVkVSID0gMiwKK3N0cnVjdCBzY3RwX254dGluZm8geworICBfX3UxNiBueHRfc2lkOworICBfX3UxNiBueHRfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQUJPUlQ9NCwKLSBTQ1RQX1NBQ0tfSU1NRURJQVRFTFkgPSA4LAotIFNDVFBfRU9GPU1TR19GSU4sCisgIF9fdTMyIG54dF9wcGlkOworICBfX3UzMiBueHRfbGVuZ3RoOworICBzY3RwX2Fzc29jX3Qgbnh0X2Fzc29jX2lkOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHNjdHBfc2luZm9fZmxhZ3MgeworICBTQ1RQX1VOT1JERVJFRCA9ICgxIDw8IDApLAorICBTQ1RQX0FERFJfT1ZFUiA9ICgxIDw8IDEpLAorICBTQ1RQX0FCT1JUID0gKDEgPDwgMiksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1NBQ0tfSU1NRURJQVRFTFkgPSAoMSA8PCAzKSwKKyAgU0NUUF9OT1RJRklDQVRJT04gPSBNU0dfTk9USUZJQ0FUSU9OLAorICBTQ1RQX0VPRiA9IE1TR19GSU4sCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5pb24gewotIF9fdTggcmF3OwotIHN0cnVjdCBzY3RwX2luaXRtc2cgaW5pdDsKLSBzdHJ1Y3Qgc2N0cF9zbmRyY3ZpbmZvIHNuZHJjdjsKKyAgX191OCByYXc7CisgIHN0cnVjdCBzY3RwX2luaXRtc2cgaW5pdDsKKyAgc3RydWN0IHNjdHBfc25kcmN2aW5mbyBzbmRyY3Y7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzY3RwX2Ntc2dfZGF0YV90OwogdHlwZWRlZiBlbnVtIHNjdHBfY21zZ190eXBlIHsKLSBTQ1RQX0lOSVQsCisgIFNDVFBfSU5JVCwKICNkZWZpbmUgU0NUUF9JTklUIFNDVFBfSU5JVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX1NORFJDViwKKyAgU0NUUF9TTkRSQ1YsCiAjZGVmaW5lIFNDVFBfU05EUkNWIFNDVFBfU05EUkNWCisgIFNDVFBfU05ESU5GTywKKyNkZWZpbmUgU0NUUF9TTkRJTkZPIFNDVFBfU05ESU5GTworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9SQ1ZJTkZPLAorI2RlZmluZSBTQ1RQX1JDVklORk8gU0NUUF9SQ1ZJTkZPCisgIFNDVFBfTlhUSU5GTywKKyNkZWZpbmUgU0NUUF9OWFRJTkZPIFNDVFBfTlhUSU5GTworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc2N0cF9jbXNnX3Q7CiBzdHJ1Y3Qgc2N0cF9hc3NvY19jaGFuZ2UgeworICBfX3UxNiBzYWNfdHlwZTsKKyAgX191MTYgc2FjX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWNfdHlwZTsKLSBfX3UxNiBzYWNfZmxhZ3M7Ci0gX191MzIgc2FjX2xlbmd0aDsKLSBfX3UxNiBzYWNfc3RhdGU7CisgIF9fdTMyIHNhY19sZW5ndGg7CisgIF9fdTE2IHNhY19zdGF0ZTsKKyAgX191MTYgc2FjX2Vycm9yOworICBfX3UxNiBzYWNfb3V0Ym91bmRfc3RyZWFtczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FjX2Vycm9yOwotIF9fdTE2IHNhY19vdXRib3VuZF9zdHJlYW1zOwotIF9fdTE2IHNhY19pbmJvdW5kX3N0cmVhbXM7Ci0gc2N0cF9hc3NvY190IHNhY19hc3NvY19pZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWNfaW5mb1swXTsKKyAgX191MTYgc2FjX2luYm91bmRfc3RyZWFtczsKKyAgc2N0cF9hc3NvY190IHNhY19hc3NvY19pZDsKKyAgX191OCBzYWNfaW5mb1swXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzY3RwX3NhY19zdGF0ZSB7Ci0gU0NUUF9DT01NX1VQLAorICBTQ1RQX0NPTU1fVVAsCisgIFNDVFBfQ09NTV9MT1NULAorICBTQ1RQX1JFU1RBUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQ09NTV9MT1NULAotIFNDVFBfUkVTVEFSVCwKLSBTQ1RQX1NIVVRET1dOX0NPTVAsCi0gU0NUUF9DQU5UX1NUUl9BU1NPQywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfU0hVVERPV05fQ09NUCwKKyAgU0NUUF9DQU5UX1NUUl9BU1NPQywKIH07CiBzdHJ1Y3Qgc2N0cF9wYWRkcl9jaGFuZ2UgewotIF9fdTE2IHNwY190eXBlOwotIF9fdTE2IHNwY19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3BjX2xlbmd0aDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcGNfYWFkZHI7Ci0gaW50IHNwY19zdGF0ZTsKLSBpbnQgc3BjX2Vycm9yOworICBfX3UxNiBzcGNfdHlwZTsKKyAgX191MTYgc3BjX2ZsYWdzOworICBfX3UzMiBzcGNfbGVuZ3RoOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcGNfYWFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNjdHBfYXNzb2NfdCBzcGNfYXNzb2NfaWQ7CisgIGludCBzcGNfc3RhdGU7CisgIGludCBzcGNfZXJyb3I7CisgIHNjdHBfYXNzb2NfdCBzcGNfYXNzb2NfaWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gc2N0cF9zcGNfc3RhdGUgewotIFNDVFBfQUREUl9BVkFJTEFCTEUsCisgIFNDVFBfQUREUl9BVkFJTEFCTEUsCisgIFNDVFBfQUREUl9VTlJFQUNIQUJMRSwKKyAgU0NUUF9BRERSX1JFTU9WRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQUREUl9VTlJFQUNIQUJMRSwKLSBTQ1RQX0FERFJfUkVNT1ZFRCwKLSBTQ1RQX0FERFJfQURERUQsCi0gU0NUUF9BRERSX01BREVfUFJJTSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9BRERSX0NPTkZJUk1FRCwKKyAgU0NUUF9BRERSX0FEREVELAorICBTQ1RQX0FERFJfTUFERV9QUklNLAorICBTQ1RQX0FERFJfQ09ORklSTUVELAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2N0cF9yZW1vdGVfZXJyb3IgewotIF9fdTE2IHNyZV90eXBlOworICBfX3UxNiBzcmVfdHlwZTsKKyAgX191MTYgc3JlX2ZsYWdzOworICBfX3UzMiBzcmVfbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzcmVfZmxhZ3M7Ci0gX191MzIgc3JlX2xlbmd0aDsKLSBfX3UxNiBzcmVfZXJyb3I7Ci0gc2N0cF9hc3NvY190IHNyZV9hc3NvY19pZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcmVfZGF0YVswXTsKKyAgX191MTYgc3JlX2Vycm9yOworICBzY3RwX2Fzc29jX3Qgc3JlX2Fzc29jX2lkOworICBfX3U4IHNyZV9kYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2N0cF9zZW5kX2ZhaWxlZCB7Ci0gX191MTYgc3NmX3R5cGU7CisgIF9fdTE2IHNzZl90eXBlOworICBfX3UxNiBzc2ZfZmxhZ3M7CisgIF9fdTMyIHNzZl9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNzZl9mbGFnczsKLSBfX3UzMiBzc2ZfbGVuZ3RoOwotIF9fdTMyIHNzZl9lcnJvcjsKLSBzdHJ1Y3Qgc2N0cF9zbmRyY3ZpbmZvIHNzZl9pbmZvOworICBfX3UzMiBzc2ZfZXJyb3I7CisgIHN0cnVjdCBzY3RwX3NuZHJjdmluZm8gc3NmX2luZm87CisgIHNjdHBfYXNzb2NfdCBzc2ZfYXNzb2NfaWQ7CisgIF9fdTggc3NmX2RhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNjdHBfYXNzb2NfdCBzc2ZfYXNzb2NfaWQ7Ci0gX191OCBzc2ZfZGF0YVswXTsKIH07CiBlbnVtIHNjdHBfc3NmX2ZsYWdzIHsKKyAgU0NUUF9EQVRBX1VOU0VOVCwKKyAgU0NUUF9EQVRBX1NFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfREFUQV9VTlNFTlQsCi0gU0NUUF9EQVRBX1NFTlQsCiB9Owogc3RydWN0IHNjdHBfc2h1dGRvd25fZXZlbnQgeworICBfX3UxNiBzc2VfdHlwZTsKKyAgX191MTYgc3NlX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzc2VfdHlwZTsKLSBfX3UxNiBzc2VfZmxhZ3M7Ci0gX191MzIgc3NlX2xlbmd0aDsKLSBzY3RwX2Fzc29jX3Qgc3NlX2Fzc29jX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgc3NlX2xlbmd0aDsKKyAgc2N0cF9hc3NvY190IHNzZV9hc3NvY19pZDsKIH07CiBzdHJ1Y3Qgc2N0cF9hZGFwdGF0aW9uX2V2ZW50IHsKLSBfX3UxNiBzYWlfdHlwZTsKLSBfX3UxNiBzYWlfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhaV9sZW5ndGg7Ci0gX191MzIgc2FpX2FkYXB0YXRpb25faW5kOwotIHNjdHBfYXNzb2NfdCBzYWlfYXNzb2NfaWQ7CisgIF9fdTE2IHNhaV90eXBlOworICBfX3UxNiBzYWlfZmxhZ3M7CisgIF9fdTMyIHNhaV9sZW5ndGg7CisgIF9fdTMyIHNhaV9hZGFwdGF0aW9uX2luZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNjdHBfYXNzb2NfdCBzYWlfYXNzb2NfaWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX3BkYXBpX2V2ZW50IHsKLSBfX3UxNiBwZGFwaV90eXBlOwotIF9fdTE2IHBkYXBpX2ZsYWdzOwotIF9fdTMyIHBkYXBpX2xlbmd0aDsKKyAgX191MTYgcGRhcGlfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRhcGlfaW5kaWNhdGlvbjsKLSBzY3RwX2Fzc29jX3QgcGRhcGlfYXNzb2NfaWQ7Ci19OwotZW51bSB7IFNDVFBfUEFSVElBTF9ERUxJVkVSWV9BQk9SVEVEPTAsIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IHNjdHBfYXV0aGtleV9ldmVudCB7Ci0gX191MTYgYXV0aF90eXBlOwotIF9fdTE2IGF1dGhfZmxhZ3M7Ci0gX191MzIgYXV0aF9sZW5ndGg7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGF1dGhfa2V5bnVtYmVyOwotIF9fdTE2IGF1dGhfYWx0a2V5bnVtYmVyOwotIF9fdTMyIGF1dGhfaW5kaWNhdGlvbjsKLSBzY3RwX2Fzc29jX3QgYXV0aF9hc3NvY19pZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotZW51bSB7IFNDVFBfQVVUSF9ORVdLRVkgPSAwLCB9Owotc3RydWN0IHNjdHBfc2VuZGVyX2RyeV9ldmVudCB7Ci0gX191MTYgc2VuZGVyX2RyeV90eXBlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzZW5kZXJfZHJ5X2ZsYWdzOwotIF9fdTMyIHNlbmRlcl9kcnlfbGVuZ3RoOwotIHNjdHBfYXNzb2NfdCBzZW5kZXJfZHJ5X2Fzc29jX2lkOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3Qgc2N0cF9ldmVudF9zdWJzY3JpYmUgewotIF9fdTggc2N0cF9kYXRhX2lvX2V2ZW50OwotIF9fdTggc2N0cF9hc3NvY2lhdGlvbl9ldmVudDsKLSBfX3U4IHNjdHBfYWRkcmVzc19ldmVudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzY3RwX3NlbmRfZmFpbHVyZV9ldmVudDsKLSBfX3U4IHNjdHBfcGVlcl9lcnJvcl9ldmVudDsKLSBfX3U4IHNjdHBfc2h1dGRvd25fZXZlbnQ7Ci0gX191OCBzY3RwX3BhcnRpYWxfZGVsaXZlcnlfZXZlbnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2N0cF9hZGFwdGF0aW9uX2xheWVyX2V2ZW50OwotIF9fdTggc2N0cF9hdXRoZW50aWNhdGlvbl9ldmVudDsKLSBfX3U4IHNjdHBfc2VuZGVyX2RyeV9ldmVudDsKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdW5pb24gc2N0cF9ub3RpZmljYXRpb24gewotIHN0cnVjdCB7Ci0gX191MTYgc25fdHlwZTsKLSBfX3UxNiBzbl9mbGFnczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc25fbGVuZ3RoOwotIH0gc25faGVhZGVyOwotIHN0cnVjdCBzY3RwX2Fzc29jX2NoYW5nZSBzbl9hc3NvY19jaGFuZ2U7Ci0gc3RydWN0IHNjdHBfcGFkZHJfY2hhbmdlIHNuX3BhZGRyX2NoYW5nZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNjdHBfcmVtb3RlX2Vycm9yIHNuX3JlbW90ZV9lcnJvcjsKLSBzdHJ1Y3Qgc2N0cF9zZW5kX2ZhaWxlZCBzbl9zZW5kX2ZhaWxlZDsKLSBzdHJ1Y3Qgc2N0cF9zaHV0ZG93bl9ldmVudCBzbl9zaHV0ZG93bl9ldmVudDsKLSBzdHJ1Y3Qgc2N0cF9hZGFwdGF0aW9uX2V2ZW50IHNuX2FkYXB0YXRpb25fZXZlbnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzY3RwX3BkYXBpX2V2ZW50IHNuX3BkYXBpX2V2ZW50OwotIHN0cnVjdCBzY3RwX2F1dGhrZXlfZXZlbnQgc25fYXV0aGtleV9ldmVudDsKLSBzdHJ1Y3Qgc2N0cF9zZW5kZXJfZHJ5X2V2ZW50IHNuX3NlbmRlcl9kcnlfZXZlbnQ7Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0gc2N0cF9zbl90eXBlIHsKLSBTQ1RQX1NOX1RZUEVfQkFTRSA9ICgxPDwxNSksCi0gU0NUUF9BU1NPQ19DSEFOR0UsCi0jZGVmaW5lIFNDVFBfQVNTT0NfQ0hBTkdFIFNDVFBfQVNTT0NfQ0hBTkdFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfUEVFUl9BRERSX0NIQU5HRSwKLSNkZWZpbmUgU0NUUF9QRUVSX0FERFJfQ0hBTkdFIFNDVFBfUEVFUl9BRERSX0NIQU5HRQotIFNDVFBfU0VORF9GQUlMRUQsCi0jZGVmaW5lIFNDVFBfU0VORF9GQUlMRUQgU0NUUF9TRU5EX0ZBSUxFRAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX1JFTU9URV9FUlJPUiwKLSNkZWZpbmUgU0NUUF9SRU1PVEVfRVJST1IgU0NUUF9SRU1PVEVfRVJST1IKLSBTQ1RQX1NIVVRET1dOX0VWRU5ULAotI2RlZmluZSBTQ1RQX1NIVVRET1dOX0VWRU5UIFNDVFBfU0hVVERPV05fRVZFTlQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9QQVJUSUFMX0RFTElWRVJZX0VWRU5ULAotI2RlZmluZSBTQ1RQX1BBUlRJQUxfREVMSVZFUllfRVZFTlQgU0NUUF9QQVJUSUFMX0RFTElWRVJZX0VWRU5UCi0gU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04sCi0jZGVmaW5lIFNDVFBfQURBUFRBVElPTl9JTkRJQ0FUSU9OIFNDVFBfQURBUFRBVElPTl9JTkRJQ0FUSU9OCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQVVUSEVOVElDQVRJT05fRVZFTlQsCi0jZGVmaW5lIFNDVFBfQVVUSEVOVElDQVRJT05fSU5ESUNBVElPTiBTQ1RQX0FVVEhFTlRJQ0FUSU9OX0VWRU5UCi0gU0NUUF9TRU5ERVJfRFJZX0VWRU5ULAotI2RlZmluZSBTQ1RQX1NFTkRFUl9EUllfRVZFTlQgU0NUUF9TRU5ERVJfRFJZX0VWRU5UCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLXR5cGVkZWYgZW51bSBzY3RwX3NuX2Vycm9yIHsKLSBTQ1RQX0ZBSUxFRF9USFJFU0hPTEQsCi0gU0NUUF9SRUNFSVZFRF9TQUNLLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX0hFQVJUQkVBVF9TVUNDRVNTLAotIFNDVFBfUkVTUE9OU0VfVE9fVVNFUl9SRVEsCi0gU0NUUF9JTlRFUk5BTF9FUlJPUiwKLSBTQ1RQX1NIVVRET1dOX0dVQVJEX0VYUElSRVMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfUEVFUl9GQVVMVFksCi19IHNjdHBfc25fZXJyb3JfdDsKLXN0cnVjdCBzY3RwX3J0b2luZm8gewotIHNjdHBfYXNzb2NfdCBzcnRvX2Fzc29jX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcnRvX2luaXRpYWw7Ci0gX191MzIgc3J0b19tYXg7Ci0gX191MzIgc3J0b19taW47Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBzY3RwX2Fzc29jcGFyYW1zIHsKLSBzY3RwX2Fzc29jX3Qgc2Fzb2NfYXNzb2NfaWQ7Ci0gX191MTYgc2Fzb2NfYXNvY21heHJ4dDsKLSBfX3UxNiBzYXNvY19udW1iZXJfcGVlcl9kZXN0aW5hdGlvbnM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhc29jX3BlZXJfcnduZDsKLSBfX3UzMiBzYXNvY19sb2NhbF9yd25kOwotIF9fdTMyIHNhc29jX2Nvb2tpZV9saWZlOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3Qgc2N0cF9zZXRwZWVycHJpbSB7Ci0gc2N0cF9hc3NvY190IHNzcHBfYXNzb2NfaWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3NwcF9hZGRyOwotfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3Qgc2N0cF9wcmltIHsKLSBzY3RwX2Fzc29jX3Qgc3NwX2Fzc29jX2lkOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNzcF9hZGRyOwotfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIHNjdHBfc2V0cHJpbSBzY3RwX3ByaW0KLXN0cnVjdCBzY3RwX3NldGFkYXB0YXRpb24gewotIF9fdTMyIHNzYl9hZGFwdGF0aW9uX2luZDsKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bSBzY3RwX3NwcF9mbGFncyB7Ci0gU1BQX0hCX0VOQUJMRSA9IDE8PDAsCi0gU1BQX0hCX0RJU0FCTEUgPSAxPDwxLAotIFNQUF9IQiA9IFNQUF9IQl9FTkFCTEUgfCBTUFBfSEJfRElTQUJMRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1BQX0hCX0RFTUFORCA9IDE8PDIsCi0gU1BQX1BNVFVEX0VOQUJMRSA9IDE8PDMsCi0gU1BQX1BNVFVEX0RJU0FCTEUgPSAxPDw0LAotIFNQUF9QTVRVRCA9IFNQUF9QTVRVRF9FTkFCTEUgfCBTUFBfUE1UVURfRElTQUJMRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1BQX1NBQ0tERUxBWV9FTkFCTEUgPSAxPDw1LAotIFNQUF9TQUNLREVMQVlfRElTQUJMRSA9IDE8PDYsCi0gU1BQX1NBQ0tERUxBWSA9IFNQUF9TQUNLREVMQVlfRU5BQkxFIHwgU1BQX1NBQ0tERUxBWV9ESVNBQkxFLAotIFNQUF9IQl9USU1FX0lTX1pFUk8gPSAxPDw3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1zdHJ1Y3Qgc2N0cF9wYWRkcnBhcmFtcyB7Ci0gc2N0cF9hc3NvY190IHNwcF9hc3NvY19pZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcHBfYWRkcmVzczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3BwX2hiaW50ZXJ2YWw7Ci0gX191MTYgc3BwX3BhdGhtYXhyeHQ7Ci0gX191MzIgc3BwX3BhdGhtdHU7Ci0gX191MzIgc3BwX3NhY2tkZWxheTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3BwX2ZsYWdzOwotfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKLXN0cnVjdCBzY3RwX2F1dGhjaHVuayB7Ci0gX191OCBzYXV0aF9jaHVuazsKKyAgX191MTYgcGRhcGlfZmxhZ3M7CisgIF9fdTMyIHBkYXBpX2xlbmd0aDsKKyAgX191MzIgcGRhcGlfaW5kaWNhdGlvbjsKKyAgc2N0cF9hc3NvY190IHBkYXBpX2Fzc29jX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBTQ1RQX0FVVEhfSE1BQ19JRF9TSEExID0gMSwKLSBTQ1RQX0FVVEhfSE1BQ19JRF9TSEEyNTYgPSAzLAorICBTQ1RQX1BBUlRJQUxfREVMSVZFUllfQUJPUlRFRCA9IDAsCit9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBzY3RwX2F1dGhrZXlfZXZlbnQgeworICBfX3UxNiBhdXRoX3R5cGU7CisgIF9fdTE2IGF1dGhfZmxhZ3M7CisgIF9fdTMyIGF1dGhfbGVuZ3RoOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgYXV0aF9rZXludW1iZXI7CisgIF9fdTE2IGF1dGhfYWx0a2V5bnVtYmVyOworICBfX3UzMiBhdXRoX2luZGljYXRpb247CisgIHNjdHBfYXNzb2NfdCBhdXRoX2Fzc29jX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgU0NUUF9BVVRIX05FV0tFWSA9IDAsCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBzY3RwX3NlbmRlcl9kcnlfZXZlbnQgeworICBfX3UxNiBzZW5kZXJfZHJ5X3R5cGU7CisgIF9fdTE2IHNlbmRlcl9kcnlfZmxhZ3M7CisgIF9fdTMyIHNlbmRlcl9kcnlfbGVuZ3RoOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2N0cF9hc3NvY190IHNlbmRlcl9kcnlfYXNzb2NfaWQ7Cit9Oworc3RydWN0IHNjdHBfZXZlbnRfc3Vic2NyaWJlIHsKKyAgX191OCBzY3RwX2RhdGFfaW9fZXZlbnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHNjdHBfYXNzb2NpYXRpb25fZXZlbnQ7CisgIF9fdTggc2N0cF9hZGRyZXNzX2V2ZW50OworICBfX3U4IHNjdHBfc2VuZF9mYWlsdXJlX2V2ZW50OworICBfX3U4IHNjdHBfcGVlcl9lcnJvcl9ldmVudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc2N0cF9zaHV0ZG93bl9ldmVudDsKKyAgX191OCBzY3RwX3BhcnRpYWxfZGVsaXZlcnlfZXZlbnQ7CisgIF9fdTggc2N0cF9hZGFwdGF0aW9uX2xheWVyX2V2ZW50OworICBfX3U4IHNjdHBfYXV0aGVudGljYXRpb25fZXZlbnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHNjdHBfc2VuZGVyX2RyeV9ldmVudDsKK307Cit1bmlvbiBzY3RwX25vdGlmaWNhdGlvbiB7CisgIHN0cnVjdCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTE2IHNuX3R5cGU7CisgICAgX191MTYgc25fZmxhZ3M7CisgICAgX191MzIgc25fbGVuZ3RoOworICB9IHNuX2hlYWRlcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBzY3RwX2Fzc29jX2NoYW5nZSBzbl9hc3NvY19jaGFuZ2U7CisgIHN0cnVjdCBzY3RwX3BhZGRyX2NoYW5nZSBzbl9wYWRkcl9jaGFuZ2U7CisgIHN0cnVjdCBzY3RwX3JlbW90ZV9lcnJvciBzbl9yZW1vdGVfZXJyb3I7CisgIHN0cnVjdCBzY3RwX3NlbmRfZmFpbGVkIHNuX3NlbmRfZmFpbGVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNjdHBfc2h1dGRvd25fZXZlbnQgc25fc2h1dGRvd25fZXZlbnQ7CisgIHN0cnVjdCBzY3RwX2FkYXB0YXRpb25fZXZlbnQgc25fYWRhcHRhdGlvbl9ldmVudDsKKyAgc3RydWN0IHNjdHBfcGRhcGlfZXZlbnQgc25fcGRhcGlfZXZlbnQ7CisgIHN0cnVjdCBzY3RwX2F1dGhrZXlfZXZlbnQgc25fYXV0aGtleV9ldmVudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBzY3RwX3NlbmRlcl9kcnlfZXZlbnQgc25fc2VuZGVyX2RyeV9ldmVudDsKK307CitlbnVtIHNjdHBfc25fdHlwZSB7CisgIFNDVFBfU05fVFlQRV9CQVNFID0gKDEgPDwgMTUpLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9BU1NPQ19DSEFOR0UsCisjZGVmaW5lIFNDVFBfQVNTT0NfQ0hBTkdFIFNDVFBfQVNTT0NfQ0hBTkdFCisgIFNDVFBfUEVFUl9BRERSX0NIQU5HRSwKKyNkZWZpbmUgU0NUUF9QRUVSX0FERFJfQ0hBTkdFIFNDVFBfUEVFUl9BRERSX0NIQU5HRQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9TRU5EX0ZBSUxFRCwKKyNkZWZpbmUgU0NUUF9TRU5EX0ZBSUxFRCBTQ1RQX1NFTkRfRkFJTEVECisgIFNDVFBfUkVNT1RFX0VSUk9SLAorI2RlZmluZSBTQ1RQX1JFTU9URV9FUlJPUiBTQ1RQX1JFTU9URV9FUlJPUgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9TSFVURE9XTl9FVkVOVCwKKyNkZWZpbmUgU0NUUF9TSFVURE9XTl9FVkVOVCBTQ1RQX1NIVVRET1dOX0VWRU5UCisgIFNDVFBfUEFSVElBTF9ERUxJVkVSWV9FVkVOVCwKKyNkZWZpbmUgU0NUUF9QQVJUSUFMX0RFTElWRVJZX0VWRU5UIFNDVFBfUEFSVElBTF9ERUxJVkVSWV9FVkVOVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04sCisjZGVmaW5lIFNDVFBfQURBUFRBVElPTl9JTkRJQ0FUSU9OIFNDVFBfQURBUFRBVElPTl9JTkRJQ0FUSU9OCisgIFNDVFBfQVVUSEVOVElDQVRJT05fRVZFTlQsCisjZGVmaW5lIFNDVFBfQVVUSEVOVElDQVRJT05fSU5ESUNBVElPTiBTQ1RQX0FVVEhFTlRJQ0FUSU9OX0VWRU5UCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1NFTkRFUl9EUllfRVZFTlQsCisjZGVmaW5lIFNDVFBfU0VOREVSX0RSWV9FVkVOVCBTQ1RQX1NFTkRFUl9EUllfRVZFTlQKK307Cit0eXBlZGVmIGVudW0gc2N0cF9zbl9lcnJvciB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX0ZBSUxFRF9USFJFU0hPTEQsCisgIFNDVFBfUkVDRUlWRURfU0FDSywKKyAgU0NUUF9IRUFSVEJFQVRfU1VDQ0VTUywKKyAgU0NUUF9SRVNQT05TRV9UT19VU0VSX1JFUSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfSU5URVJOQUxfRVJST1IsCisgIFNDVFBfU0hVVERPV05fR1VBUkRfRVhQSVJFUywKKyAgU0NUUF9QRUVSX0ZBVUxUWSwKK30gc2N0cF9zbl9lcnJvcl90OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBzY3RwX3J0b2luZm8geworICBzY3RwX2Fzc29jX3Qgc3J0b19hc3NvY19pZDsKKyAgX191MzIgc3J0b19pbml0aWFsOworICBfX3UzMiBzcnRvX21heDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNydG9fbWluOworfTsKK3N0cnVjdCBzY3RwX2Fzc29jcGFyYW1zIHsKKyAgc2N0cF9hc3NvY190IHNhc29jX2Fzc29jX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgc2Fzb2NfYXNvY21heHJ4dDsKKyAgX191MTYgc2Fzb2NfbnVtYmVyX3BlZXJfZGVzdGluYXRpb25zOworICBfX3UzMiBzYXNvY19wZWVyX3J3bmQ7CisgIF9fdTMyIHNhc29jX2xvY2FsX3J3bmQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzYXNvY19jb29raWVfbGlmZTsKK307CitzdHJ1Y3Qgc2N0cF9zZXRwZWVycHJpbSB7CisgIHNjdHBfYXNzb2NfdCBzc3BwX2Fzc29jX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3NwcF9hZGRyOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKK3N0cnVjdCBzY3RwX3ByaW0geworICBzY3RwX2Fzc29jX3Qgc3NwX2Fzc29jX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3NwX2FkZHI7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOworI2RlZmluZSBzY3RwX3NldHByaW0gc2N0cF9wcmltCitzdHJ1Y3Qgc2N0cF9zZXRhZGFwdGF0aW9uIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNzYl9hZGFwdGF0aW9uX2luZDsKK307CitlbnVtIHNjdHBfc3BwX2ZsYWdzIHsKKyAgU1BQX0hCX0VOQUJMRSA9IDEgPDwgMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNQUF9IQl9ESVNBQkxFID0gMSA8PCAxLAorICBTUFBfSEIgPSBTUFBfSEJfRU5BQkxFIHwgU1BQX0hCX0RJU0FCTEUsCisgIFNQUF9IQl9ERU1BTkQgPSAxIDw8IDIsCisgIFNQUF9QTVRVRF9FTkFCTEUgPSAxIDw8IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTUFBfUE1UVURfRElTQUJMRSA9IDEgPDwgNCwKKyAgU1BQX1BNVFVEID0gU1BQX1BNVFVEX0VOQUJMRSB8IFNQUF9QTVRVRF9ESVNBQkxFLAorICBTUFBfU0FDS0RFTEFZX0VOQUJMRSA9IDEgPDwgNSwKKyAgU1BQX1NBQ0tERUxBWV9ESVNBQkxFID0gMSA8PCA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU1BQX1NBQ0tERUxBWSA9IFNQUF9TQUNLREVMQVlfRU5BQkxFIHwgU1BQX1NBQ0tERUxBWV9ESVNBQkxFLAorICBTUFBfSEJfVElNRV9JU19aRVJPID0gMSA8PCA3LAorfTsKK3N0cnVjdCBzY3RwX3BhZGRycGFyYW1zIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNjdHBfYXNzb2NfdCBzcHBfYXNzb2NfaWQ7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwcF9hZGRyZXNzOworICBfX3UzMiBzcHBfaGJpbnRlcnZhbDsKKyAgX191MTYgc3BwX3BhdGhtYXhyeHQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzcHBfcGF0aG10dTsKKyAgX191MzIgc3BwX3NhY2tkZWxheTsKKyAgX191MzIgc3BwX2ZsYWdzOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3Qgc2N0cF9hdXRoY2h1bmsgeworICBfX3U4IHNhdXRoX2NodW5rOworfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9BVVRIX0hNQUNfSURfU0hBMSA9IDEsCisgIFNDVFBfQVVUSF9ITUFDX0lEX1NIQTI1NiA9IDMsCiB9Owogc3RydWN0IHNjdHBfaG1hY2FsZ28gewotIF9fdTMyIHNobWFjX251bV9pZGVudHM7Ci0gX191MTYgc2htYWNfaWRlbnRzW107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzaG1hY19udW1faWRlbnRzOworICBfX3UxNiBzaG1hY19pZGVudHNbXTsKIH07CiAjZGVmaW5lIHNobWFjX251bWJlcl9vZl9pZGVudHMgc2htYWNfbnVtX2lkZW50cworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX2F1dGhrZXkgewotIHNjdHBfYXNzb2NfdCBzY2FfYXNzb2NfaWQ7CisgIHNjdHBfYXNzb2NfdCBzY2FfYXNzb2NfaWQ7CisgIF9fdTE2IHNjYV9rZXludW1iZXI7CisgIF9fdTE2IHNjYV9rZXlsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNjYV9rZXludW1iZXI7Ci0gX191MTYgc2NhX2tleWxlbmd0aDsKLSBfX3U4IHNjYV9rZXlbXTsKKyAgX191OCBzY2Ffa2V5W107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX2F1dGhrZXlpZCB7Ci0gc2N0cF9hc3NvY190IHNjYWN0X2Fzc29jX2lkOwotIF9fdTE2IHNjYWN0X2tleW51bWJlcjsKKyAgc2N0cF9hc3NvY190IHNjYWN0X2Fzc29jX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgc2NhY3Rfa2V5bnVtYmVyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2N0cF9zYWNrX2luZm8gewotIHNjdHBfYXNzb2NfdCBzYWNrX2Fzc29jX2lkOwotIHVpbnQzMl90IHNhY2tfZGVsYXk7Ci0gdWludDMyX3Qgc2Fja19mcmVxOworICBzY3RwX2Fzc29jX3Qgc2Fja19hc3NvY19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHNhY2tfZGVsYXk7CisgIHVpbnQzMl90IHNhY2tfZnJlcTsKIH07CiBzdHJ1Y3Qgc2N0cF9hc3NvY192YWx1ZSB7Ci0gc2N0cF9hc3NvY190IGFzc29jX2lkOwotIHVpbnQzMl90IGFzc29jX3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2N0cF9hc3NvY190IGFzc29jX2lkOworICB1aW50MzJfdCBhc3NvY192YWx1ZTsKIH07CiBzdHJ1Y3Qgc2N0cF9wYWRkcmluZm8gewotIHNjdHBfYXNzb2NfdCBzcGluZm9fYXNzb2NfaWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3BpbmZvX2FkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHNwaW5mb19zdGF0ZTsKLSBfX3UzMiBzcGluZm9fY3duZDsKLSBfX3UzMiBzcGluZm9fc3J0dDsKLSBfX3UzMiBzcGluZm9fcnRvOworICBzY3RwX2Fzc29jX3Qgc3BpbmZvX2Fzc29jX2lkOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcGluZm9fYWRkcmVzczsKKyAgX19zMzIgc3BpbmZvX3N0YXRlOworICBfX3UzMiBzcGluZm9fY3duZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3BpbmZvX210dTsKKyAgX191MzIgc3BpbmZvX3NydHQ7CisgIF9fdTMyIHNwaW5mb19ydG87CisgIF9fdTMyIHNwaW5mb19tdHU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gc2N0cF9zcGluZm9fc3RhdGUgewotIFNDVFBfSU5BQ1RJVkUsCisgIFNDVFBfSU5BQ1RJVkUsCisgIFNDVFBfUEYsCisgIFNDVFBfQUNUSVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX1BGLAotIFNDVFBfQUNUSVZFLAotIFNDVFBfVU5DT05GSVJNRUQsCi0gU0NUUF9VTktOT1dOID0gMHhmZmZmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1VOQ09ORklSTUVELAorICBTQ1RQX1VOS05PV04gPSAweGZmZmYKIH07CiBzdHJ1Y3Qgc2N0cF9zdGF0dXMgewotIHNjdHBfYXNzb2NfdCBzc3RhdF9hc3NvY19pZDsKLSBfX3MzMiBzc3RhdF9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3N0YXRfcnduZDsKLSBfX3UxNiBzc3RhdF91bmFja2RhdGE7Ci0gX191MTYgc3N0YXRfcGVuZGRhdGE7Ci0gX191MTYgc3N0YXRfaW5zdHJtczsKKyAgc2N0cF9hc3NvY190IHNzdGF0X2Fzc29jX2lkOworICBfX3MzMiBzc3RhdF9zdGF0ZTsKKyAgX191MzIgc3N0YXRfcnduZDsKKyAgX191MTYgc3N0YXRfdW5hY2tkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzc3RhdF9vdXRzdHJtczsKLSBfX3UzMiBzc3RhdF9mcmFnbWVudGF0aW9uX3BvaW50OwotIHN0cnVjdCBzY3RwX3BhZGRyaW5mbyBzc3RhdF9wcmltYXJ5OworICBfX3UxNiBzc3RhdF9wZW5kZGF0YTsKKyAgX191MTYgc3N0YXRfaW5zdHJtczsKKyAgX191MTYgc3N0YXRfb3V0c3RybXM7CisgIF9fdTMyIHNzdGF0X2ZyYWdtZW50YXRpb25fcG9pbnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc2N0cF9wYWRkcmluZm8gc3N0YXRfcHJpbWFyeTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjdHBfYXV0aGNodW5rcyB7Ci0gc2N0cF9hc3NvY190IGdhdXRoX2Fzc29jX2lkOwotIF9fdTMyIGdhdXRoX251bWJlcl9vZl9jaHVua3M7Ci0gdWludDhfdCBnYXV0aF9jaHVua3NbXTsKKyAgc2N0cF9hc3NvY190IGdhdXRoX2Fzc29jX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZ2F1dGhfbnVtYmVyX29mX2NodW5rczsKKyAgdWludDhfdCBnYXV0aF9jaHVua3NbXTsKIH07CiAjZGVmaW5lIGd1dGhfbnVtYmVyX29mX2NodW5rcyBnYXV0aF9udW1iZXJfb2ZfY2h1bmtzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzY3RwX3NzdGF0X3N0YXRlIHsKLSBTQ1RQX0VNUFRZID0gMCwKKyAgU0NUUF9FTVBUWSA9IDAsCisgIFNDVFBfQ0xPU0VEID0gMSwKKyAgU0NUUF9DT09LSUVfV0FJVCA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfQ0xPU0VEID0gMSwKLSBTQ1RQX0NPT0tJRV9XQUlUID0gMiwKLSBTQ1RQX0NPT0tJRV9FQ0hPRUQgPSAzLAotIFNDVFBfRVNUQUJMSVNIRUQgPSA0LAorICBTQ1RQX0NPT0tJRV9FQ0hPRUQgPSAzLAorICBTQ1RQX0VTVEFCTElTSEVEID0gNCwKKyAgU0NUUF9TSFVURE9XTl9QRU5ESU5HID0gNSwKKyAgU0NUUF9TSFVURE9XTl9TRU5UID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9TSFVURE9XTl9QRU5ESU5HID0gNSwKLSBTQ1RQX1NIVVRET1dOX1NFTlQgPSA2LAotIFNDVFBfU0hVVERPV05fUkVDRUlWRUQgPSA3LAotIFNDVFBfU0hVVERPV05fQUNLX1NFTlQgPSA4LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9TSFVURE9XTl9SRUNFSVZFRCA9IDcsCisgIFNDVFBfU0hVVERPV05fQUNLX1NFTlQgPSA4LAogfTsKIHN0cnVjdCBzY3RwX2Fzc29jX2lkcyB7Ci0gX191MzIgZ2FpZHNfbnVtYmVyX29mX2lkczsKLSBzY3RwX2Fzc29jX3QgZ2FpZHNfYXNzb2NfaWRbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGdhaWRzX251bWJlcl9vZl9pZHM7CisgIHNjdHBfYXNzb2NfdCBnYWlkc19hc3NvY19pZFtdOwogfTsKIHN0cnVjdCBzY3RwX2dldGFkZHJzX29sZCB7Ci0gc2N0cF9hc3NvY190IGFzc29jX2lkOwotIGludCBhZGRyX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyICphZGRyczsKKyAgc2N0cF9hc3NvY190IGFzc29jX2lkOworICBpbnQgYWRkcl9udW07CisgIHN0cnVjdCBzb2NrYWRkciAqIGFkZHJzOwogfTsKLXN0cnVjdCBzY3RwX2dldGFkZHJzIHsKLSBzY3RwX2Fzc29jX3QgYXNzb2NfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFkZHJfbnVtOwotIF9fdTggYWRkcnNbMF07CitzdHJ1Y3Qgc2N0cF9nZXRhZGRycyB7CisgIHNjdHBfYXNzb2NfdCBhc3NvY19pZDsKKyAgX191MzIgYWRkcl9udW07CisgIF9fdTggYWRkcnNbMF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzY3RwX2Fzc29jX3N0YXRzIHsKKyAgc2N0cF9hc3NvY190IHNhc19hc3NvY19pZDsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc2FzX29ic19ydG9faXBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzY3RwX2Fzc29jX3Qgc2FzX2Fzc29jX2lkOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNhc19vYnNfcnRvX2lwYWRkcjsKLSBfX3U2NCBzYXNfbWF4cnRvOwotIF9fdTY0IHNhc19pc2Fja3M7CisgIF9fdTY0IHNhc19tYXhydG87CisgIF9fdTY0IHNhc19pc2Fja3M7CisgIF9fdTY0IHNhc19vc2Fja3M7CisgIF9fdTY0IHNhc19vcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2FzX29zYWNrczsKLSBfX3U2NCBzYXNfb3BhY2tldHM7Ci0gX191NjQgc2FzX2lwYWNrZXRzOwotIF9fdTY0IHNhc19ydHhjaHVua3M7CisgIF9fdTY0IHNhc19pcGFja2V0czsKKyAgX191NjQgc2FzX3J0eGNodW5rczsKKyAgX191NjQgc2FzX291dG9mc2VxdHNuczsKKyAgX191NjQgc2FzX2lkdXBjaHVua3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNhc19vdXRvZnNlcXRzbnM7Ci0gX191NjQgc2FzX2lkdXBjaHVua3M7Ci0gX191NjQgc2FzX2dhcGNudDsKLSBfX3U2NCBzYXNfb3VvZGNodW5rczsKKyAgX191NjQgc2FzX2dhcGNudDsKKyAgX191NjQgc2FzX291b2RjaHVua3M7CisgIF9fdTY0IHNhc19pdW9kY2h1bmtzOworICBfX3U2NCBzYXNfb29kY2h1bmtzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzYXNfaXVvZGNodW5rczsKLSBfX3U2NCBzYXNfb29kY2h1bmtzOwotIF9fdTY0IHNhc19pb2RjaHVua3M7Ci0gX191NjQgc2FzX29jdHJsY2h1bmtzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzYXNfaWN0cmxjaHVua3M7CisgIF9fdTY0IHNhc19pb2RjaHVua3M7CisgIF9fdTY0IHNhc19vY3RybGNodW5rczsKKyAgX191NjQgc2FzX2ljdHJsY2h1bmtzOwogfTsKLWVudW0gc2N0cF9tc2dfZmxhZ3MgewotIE1TR19OT1RJRklDQVRJT04gPSAweDgwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU0dfTk9USUZJQ0FUSU9OIE1TR19OT1RJRklDQVRJT04KLX07CiAjZGVmaW5lIFNDVFBfQklORFhfQUREX0FERFIgMHgwMQogI2RlZmluZSBTQ1RQX0JJTkRYX1JFTV9BRERSIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gc2N0cF9hc3NvY190IGFzc29jaWQ7Ci0gaW50IHNkOworICBzY3RwX2Fzc29jX3QgYXNzb2NpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBzZDsKIH0gc2N0cF9wZWVsb2ZmX2FyZ190OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX3BhZGRydGhsZHMgewotIHNjdHBfYXNzb2NfdCBzcHRfYXNzb2NfaWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3B0X2FkZHJlc3M7Ci0gX191MTYgc3B0X3BhdGhtYXhyeHQ7CisgIHNjdHBfYXNzb2NfdCBzcHRfYXNzb2NfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNwdF9wYXRocGZ0aGxkOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcHRfYWRkcmVzczsKKyAgX191MTYgc3B0X3BhdGhtYXhyeHQ7CisgIF9fdTE2IHNwdF9wYXRocGZ0aGxkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2RsYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZGxhLmgKaW5kZXggYWU1ZDE2MS4uYmQ5NTdiNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZGxhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZGxhLmgKQEAgLTI3LDcgKzI3LDcgQEAKICNkZWZpbmUgU0RMQV9TNTA4IDUwODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNETEFfUzUwOSA1MDkwCi0jZGVmaW5lIFNETEFfVU5LTk9XTiAtMQorI2RlZmluZSBTRExBX1VOS05PV04gLSAxCiAjZGVmaW5lIFNETEFfUzUwOF9QT1JUX1YzNSAweDAwCiAjZGVmaW5lIFNETEFfUzUwOF9QT1JUX1JTMjMyIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00OCwxMCArNDgsMTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNETEFfUkVBRE1FTSAoRlJBRF9MQVNUX0lPQ1RMICsgNikKIHN0cnVjdCBzZGxhX21lbSB7Ci0gaW50IGFkZHI7Ci0gaW50IGxlbjsKKyAgaW50IGFkZHI7CisgIGludCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpkYXRhOworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9OwogI2RlZmluZSBTRExBX1NUQVJUIChGUkFEX0xBU1RfSU9DVEwgKyA3KQogI2RlZmluZSBTRExBX1NUT1AgKEZSQURfTEFTVF9JT0NUTCArIDgpCkBAIC02OCw0MiArNjgsNDIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNETEFfTUFYX0RMQ0kgMjQKIHN0cnVjdCBzZGxhX2NvbmYgewotIHNob3J0IHN0YXRpb247Ci0gc2hvcnQgY29uZmlnOworICBzaG9ydCBzdGF0aW9uOworICBzaG9ydCBjb25maWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGtiYXVkOwotIHNob3J0IGNsb2NraW5nOwotIHNob3J0IG1heF9mcm07Ci0gc2hvcnQgVDM5MTsKKyAgc2hvcnQga2JhdWQ7CisgIHNob3J0IGNsb2NraW5nOworICBzaG9ydCBtYXhfZnJtOworICBzaG9ydCBUMzkxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBUMzkyOwotIHNob3J0IE4zOTE7Ci0gc2hvcnQgTjM5MjsKLSBzaG9ydCBOMzkzOworICBzaG9ydCBUMzkyOworICBzaG9ydCBOMzkxOworICBzaG9ydCBOMzkyOworICBzaG9ydCBOMzkzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBDSVJfZndkOwotIHNob3J0IEJjX2Z3ZDsKLSBzaG9ydCBCZV9md2Q7Ci0gc2hvcnQgQ0lSX2J3ZDsKKyAgc2hvcnQgQ0lSX2Z3ZDsKKyAgc2hvcnQgQmNfZndkOworICBzaG9ydCBCZV9md2Q7CisgIHNob3J0IENJUl9id2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IEJjX2J3ZDsKLSBzaG9ydCBCZV9id2Q7CisgIHNob3J0IEJjX2J3ZDsKKyAgc2hvcnQgQmVfYndkOwogfTsKIHN0cnVjdCBzZGxhX2RsY2lfY29uZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGNvbmZpZzsKLSBzaG9ydCBDSVJfZndkOwotIHNob3J0IEJjX2Z3ZDsKLSBzaG9ydCBCZV9md2Q7CisgIHNob3J0IGNvbmZpZzsKKyAgc2hvcnQgQ0lSX2Z3ZDsKKyAgc2hvcnQgQmNfZndkOworICBzaG9ydCBCZV9md2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IENJUl9id2Q7Ci0gc2hvcnQgQmNfYndkOwotIHNob3J0IEJlX2J3ZDsKLSBzaG9ydCBUY19md2Q7CisgIHNob3J0IENJUl9id2Q7CisgIHNob3J0IEJjX2J3ZDsKKyAgc2hvcnQgQmVfYndkOworICBzaG9ydCBUY19md2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IFRjX2J3ZDsKLSBzaG9ydCBUZl9tYXg7Ci0gc2hvcnQgVGJfbWF4OworICBzaG9ydCBUY19id2Q7CisgIHNob3J0IFRmX21heDsKKyAgc2hvcnQgVGJfbWF4OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VjY29tcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWNjb21wLmgKaW5kZXggOTA3ODk1ZS4uN2MwYTUxYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWNjb21wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWNjb21wLmgKQEAgLTI0LDIxICsyNCwyNSBAQAogI2RlZmluZSBTRUNDT01QX01PREVfRElTQUJMRUQgMAogI2RlZmluZSBTRUNDT01QX01PREVfU1RSSUNUIDEKICNkZWZpbmUgU0VDQ09NUF9NT0RFX0ZJTFRFUiAyCi0jZGVmaW5lIFNFQ0NPTVBfUkVUX0tJTEwgMHgwMDAwMDAwMFUKKyNkZWZpbmUgU0VDQ09NUF9TRVRfTU9ERV9TVFJJQ1QgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0VDQ09NUF9TRVRfTU9ERV9GSUxURVIgMQorI2RlZmluZSBTRUNDT01QX0ZJTFRFUl9GTEFHX1RTWU5DIDEKKyNkZWZpbmUgU0VDQ09NUF9SRVRfS0lMTCAweDAwMDAwMDAwVQogI2RlZmluZSBTRUNDT01QX1JFVF9UUkFQIDB4MDAwMzAwMDBVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUNDT01QX1JFVF9FUlJOTyAweDAwMDUwMDAwVQogI2RlZmluZSBTRUNDT01QX1JFVF9UUkFDRSAweDdmZjAwMDAwVQogI2RlZmluZSBTRUNDT01QX1JFVF9BTExPVyAweDdmZmYwMDAwVQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VDQ09NUF9SRVRfQUNUSU9OIDB4N2ZmZjAwMDBVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUNDT01QX1JFVF9EQVRBIDB4MDAwMGZmZmZVCiBzdHJ1Y3Qgc2VjY29tcF9kYXRhIHsKLSBpbnQgbnI7CisgIGludCBucjsKKyAgX191MzIgYXJjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXJjaDsKLSBfX3U2NCBpbnN0cnVjdGlvbl9wb2ludGVyOwotIF9fdTY0IGFyZ3NbNl07CisgIF9fdTY0IGluc3RydWN0aW9uX3BvaW50ZXI7CisgIF9fdTY0IGFyZ3NbNl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VjdXJlYml0cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWN1cmViaXRzLmgKaW5kZXggYTI4YWJlOC4uYTY0NGQ1YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWN1cmViaXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWN1cmViaXRzLmgKQEAgLTI5LDEzICsyOSwxMyBAQAogI2RlZmluZSBTRUNVUkVfTk9fU0VUVUlEX0ZJWFVQIDIKICNkZWZpbmUgU0VDVVJFX05PX1NFVFVJRF9GSVhVUF9MT0NLRUQgMwogI2RlZmluZSBTRUNCSVRfTk9fU0VUVUlEX0ZJWFVQIChpc3NlY3VyZV9tYXNrKFNFQ1VSRV9OT19TRVRVSURfRklYVVApKQotI2RlZmluZSBTRUNCSVRfTk9fU0VUVUlEX0ZJWFVQX0xPQ0tFRCAgIChpc3NlY3VyZV9tYXNrKFNFQ1VSRV9OT19TRVRVSURfRklYVVBfTE9DS0VEKSkKKyNkZWZpbmUgU0VDQklUX05PX1NFVFVJRF9GSVhVUF9MT0NLRUQgKGlzc2VjdXJlX21hc2soU0VDVVJFX05PX1NFVFVJRF9GSVhVUF9MT0NLRUQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VDVVJFX0tFRVBfQ0FQUyA0CiAjZGVmaW5lIFNFQ1VSRV9LRUVQX0NBUFNfTE9DS0VEIDUKICNkZWZpbmUgU0VDQklUX0tFRVBfQ0FQUyAoaXNzZWN1cmVfbWFzayhTRUNVUkVfS0VFUF9DQVBTKSkKICNkZWZpbmUgU0VDQklUX0tFRVBfQ0FQU19MT0NLRUQgKGlzc2VjdXJlX21hc2soU0VDVVJFX0tFRVBfQ0FQU19MT0NLRUQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VDVVJFX0FMTF9CSVRTIChpc3NlY3VyZV9tYXNrKFNFQ1VSRV9OT1JPT1QpIHwgICBpc3NlY3VyZV9tYXNrKFNFQ1VSRV9OT19TRVRVSURfRklYVVApIHwgICBpc3NlY3VyZV9tYXNrKFNFQ1VSRV9LRUVQX0NBUFMpKQorI2RlZmluZSBTRUNVUkVfQUxMX0JJVFMgKGlzc2VjdXJlX21hc2soU0VDVVJFX05PUk9PVCkgfCBpc3NlY3VyZV9tYXNrKFNFQ1VSRV9OT19TRVRVSURfRklYVVApIHwgaXNzZWN1cmVfbWFzayhTRUNVUkVfS0VFUF9DQVBTKSkKICNkZWZpbmUgU0VDVVJFX0FMTF9MT0NLUyAoU0VDVVJFX0FMTF9CSVRTIDw8IDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VsaW51eF9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlbGludXhfbmV0bGluay5oCmluZGV4IGM1ZGRkMmIuLjhlNDYyYzkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VsaW51eF9uZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWxpbnV4X25ldGxpbmsuaApAQCAtMjIsOSArMjIsOSBAQAogI2RlZmluZSBTRUxOTF9NU0dfQkFTRSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gU0VMTkxfTVNHX1NFVEVORk9SQ0UgPSBTRUxOTF9NU0dfQkFTRSwKLSBTRUxOTF9NU0dfUE9MSUNZTE9BRCwKLSBTRUxOTF9NU0dfTUFYCisgIFNFTE5MX01TR19TRVRFTkZPUkNFID0gU0VMTkxfTVNHX0JBU0UsCisgIFNFTE5MX01TR19QT0xJQ1lMT0FELAorICBTRUxOTF9NU0dfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU0VMTkxfR1JQX05PTkUgMHgwMDAwMDAwMApAQCAtMzIsMjAgKzMyLDIwIEBACiAjZGVmaW5lIFNFTE5MX0dSUF9BTEwgMHhmZmZmZmZmZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gc2VsaW51eF9ubGdyb3VwcyB7Ci0gU0VMTkxHUlBfTk9ORSwKKyAgU0VMTkxHUlBfTk9ORSwKICNkZWZpbmUgU0VMTkxHUlBfTk9ORSBTRUxOTEdSUF9OT05FCi0gU0VMTkxHUlBfQVZDLAorICBTRUxOTEdSUF9BVkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUxOTEdSUF9BVkMgU0VMTkxHUlBfQVZDCi0gX19TRUxOTEdSUF9NQVgKKyAgX19TRUxOTEdSUF9NQVgKIH07CiAjZGVmaW5lIFNFTE5MR1JQX01BWCAoX19TRUxOTEdSUF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzZWxubF9tc2dfc2V0ZW5mb3JjZSB7Ci0gX19zMzIgdmFsOworICBfX3MzMiB2YWw7CiB9Owogc3RydWN0IHNlbG5sX21zZ19wb2xpY3lsb2FkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2Vxbm87CisgIF9fdTMyIHNlcW5vOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZW0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VtLmgKaW5kZXggODhiMmYxOS4uMDQ5MDlkNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlbS5oCkBAIC0zMyw1MiArMzMsNTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTV9JTkZPIDE5CiBzdHJ1Y3Qgc2VtaWRfZHMgewotIHN0cnVjdCBpcGNfcGVybSBzZW1fcGVybTsKLSBfX2tlcm5lbF90aW1lX3Qgc2VtX290aW1lOworICBzdHJ1Y3QgaXBjX3Blcm0gc2VtX3Blcm07CisgIF9fa2VybmVsX3RpbWVfdCBzZW1fb3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBzZW1fY3RpbWU7Ci0gc3RydWN0IHNlbSAqc2VtX2Jhc2U7Ci0gc3RydWN0IHNlbV9xdWV1ZSAqc2VtX3BlbmRpbmc7Ci0gc3RydWN0IHNlbV9xdWV1ZSAqKnNlbV9wZW5kaW5nX2xhc3Q7CisgIF9fa2VybmVsX3RpbWVfdCBzZW1fY3RpbWU7CisgIHN0cnVjdCBzZW0gKiBzZW1fYmFzZTsKKyAgc3RydWN0IHNlbV9xdWV1ZSAqIHNlbV9wZW5kaW5nOworICBzdHJ1Y3Qgc2VtX3F1ZXVlICogKiBzZW1fcGVuZGluZ19sYXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc2VtX3VuZG8gKnVuZG87Ci0gdW5zaWduZWQgc2hvcnQgc2VtX25zZW1zOworICBzdHJ1Y3Qgc2VtX3VuZG8gKiB1bmRvOworICB1bnNpZ25lZCBzaG9ydCBzZW1fbnNlbXM7CiB9OwogI2luY2x1ZGUgPGFzbS9zZW1idWYuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2VtYnVmIHsKLSB1bnNpZ25lZCBzaG9ydCBzZW1fbnVtOwotIHNob3J0IHNlbV9vcDsKLSBzaG9ydCBzZW1fZmxnOworICB1bnNpZ25lZCBzaG9ydCBzZW1fbnVtOworICBzaG9ydCBzZW1fb3A7CisgIHNob3J0IHNlbV9mbGc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHVuaW9uIHNlbXVuIHsKLSBpbnQgdmFsOwotIHN0cnVjdCBzZW1pZF9kcyBfX3VzZXIgKmJ1ZjsKKyAgaW50IHZhbDsKKyAgc3RydWN0IHNlbWlkX2RzIF9fdXNlciAqIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgX191c2VyICphcnJheTsKLSBzdHJ1Y3Qgc2VtaW5mbyBfX3VzZXIgKl9fYnVmOwotIHZvaWQgX191c2VyICpfX3BhZDsKKyAgdW5zaWduZWQgc2hvcnQgX191c2VyICogYXJyYXk7CisgIHN0cnVjdCBzZW1pbmZvIF9fdXNlciAqIF9fYnVmOworICB2b2lkIF9fdXNlciAqIF9fcGFkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2VtaW5mbyB7Ci0gaW50IHNlbW1hcDsKLSBpbnQgc2VtbW5pOwotIGludCBzZW1tbnM7CisgIGludCBzZW1tYXA7CisgIGludCBzZW1tbmk7CisgIGludCBzZW1tbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzZW1tbnU7Ci0gaW50IHNlbW1zbDsKLSBpbnQgc2Vtb3BtOwotIGludCBzZW11bWU7CisgIGludCBzZW1tbnU7CisgIGludCBzZW1tc2w7CisgIGludCBzZW1vcG07CisgIGludCBzZW11bWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzZW11c3o7Ci0gaW50IHNlbXZteDsKLSBpbnQgc2VtYWVtOworICBpbnQgc2VtdXN6OworICBpbnQgc2Vtdm14OworICBpbnQgc2VtYWVtOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTU1OSSAxMjgKICNkZWZpbmUgU0VNTVNMIDI1MAotI2RlZmluZSBTRU1NTlMgKFNFTU1OSSpTRU1NU0wpCisjZGVmaW5lIFNFTU1OUyAoU0VNTU5JICogU0VNTVNMKQogI2RlZmluZSBTRU1PUE0gMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTVZNWCAzMjc2NwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaWFsLmgKaW5kZXggZTYyMjY4Mi4uMzAwMTc2YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbC5oCkBAIC0yMiwyOCArMjIsMjggQEAKICNpbmNsdWRlIDxsaW51eC90dHlfZmxhZ3MuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2VyaWFsX3N0cnVjdCB7Ci0gaW50IHR5cGU7Ci0gaW50IGxpbmU7Ci0gdW5zaWduZWQgaW50IHBvcnQ7CisgIGludCB0eXBlOworICBpbnQgbGluZTsKKyAgdW5zaWduZWQgaW50IHBvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpcnE7Ci0gaW50IGZsYWdzOwotIGludCB4bWl0X2ZpZm9fc2l6ZTsKLSBpbnQgY3VzdG9tX2Rpdmlzb3I7CisgIGludCBpcnE7CisgIGludCBmbGFnczsKKyAgaW50IHhtaXRfZmlmb19zaXplOworICBpbnQgY3VzdG9tX2Rpdmlzb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBiYXVkX2Jhc2U7Ci0gdW5zaWduZWQgc2hvcnQgY2xvc2VfZGVsYXk7Ci0gY2hhciBpb190eXBlOwotIGNoYXIgcmVzZXJ2ZWRfY2hhclsxXTsKKyAgaW50IGJhdWRfYmFzZTsKKyAgdW5zaWduZWQgc2hvcnQgY2xvc2VfZGVsYXk7CisgIGNoYXIgaW9fdHlwZTsKKyAgY2hhciByZXNlcnZlZF9jaGFyWzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaHViNjsKLSB1bnNpZ25lZCBzaG9ydCBjbG9zaW5nX3dhaXQ7Ci0gdW5zaWduZWQgc2hvcnQgY2xvc2luZ193YWl0MjsKLSB1bnNpZ25lZCBjaGFyICppb21lbV9iYXNlOworICBpbnQgaHViNjsKKyAgdW5zaWduZWQgc2hvcnQgY2xvc2luZ193YWl0OworICB1bnNpZ25lZCBzaG9ydCBjbG9zaW5nX3dhaXQyOworICB1bnNpZ25lZCBjaGFyICogaW9tZW1fYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgaW9tZW1fcmVnX3NoaWZ0OwotIHVuc2lnbmVkIGludCBwb3J0X2hpZ2g7Ci0gdW5zaWduZWQgbG9uZyBpb21hcF9iYXNlOworICB1bnNpZ25lZCBzaG9ydCBpb21lbV9yZWdfc2hpZnQ7CisgIHVuc2lnbmVkIGludCBwb3J0X2hpZ2g7CisgIHVuc2lnbmVkIGxvbmcgaW9tYXBfYmFzZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBU1lOQ19DTE9TSU5HX1dBSVRfSU5GIDAKQEAgLTc3LDQwICs3Nyw0MCBAQAogI2RlZmluZSBVQVJUX05BVFNFTUkgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzZXJpYWxfbXVsdGlwb3J0X3N0cnVjdCB7Ci0gaW50IGlycTsKLSBpbnQgcG9ydDE7Ci0gdW5zaWduZWQgY2hhciBtYXNrMSwgbWF0Y2gxOworICBpbnQgaXJxOworICBpbnQgcG9ydDE7CisgIHVuc2lnbmVkIGNoYXIgbWFzazEsIG1hdGNoMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBvcnQyOwotIHVuc2lnbmVkIGNoYXIgbWFzazIsIG1hdGNoMjsKLSBpbnQgcG9ydDM7Ci0gdW5zaWduZWQgY2hhciBtYXNrMywgbWF0Y2gzOworICBpbnQgcG9ydDI7CisgIHVuc2lnbmVkIGNoYXIgbWFzazIsIG1hdGNoMjsKKyAgaW50IHBvcnQzOworICB1bnNpZ25lZCBjaGFyIG1hc2szLCBtYXRjaDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwb3J0NDsKLSB1bnNpZ25lZCBjaGFyIG1hc2s0LCBtYXRjaDQ7Ci0gaW50IHBvcnRfbW9uaXRvcjsKLSBpbnQgcmVzZXJ2ZWRbMzJdOworICBpbnQgcG9ydDQ7CisgIHVuc2lnbmVkIGNoYXIgbWFzazQsIG1hdGNoNDsKKyAgaW50IHBvcnRfbW9uaXRvcjsKKyAgaW50IHJlc2VydmVkWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNlcmlhbF9pY291bnRlcl9zdHJ1Y3QgewotIGludCBjdHMsIGRzciwgcm5nLCBkY2Q7Ci0gaW50IHJ4LCB0eDsKKyAgaW50IGN0cywgZHNyLCBybmcsIGRjZDsKKyAgaW50IHJ4LCB0eDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZyYW1lLCBvdmVycnVuLCBwYXJpdHksIGJyazsKLSBpbnQgYnVmX292ZXJydW47Ci0gaW50IHJlc2VydmVkWzldOworICBpbnQgZnJhbWUsIG92ZXJydW4sIHBhcml0eSwgYnJrOworICBpbnQgYnVmX292ZXJydW47CisgIGludCByZXNlcnZlZFs5XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNlcmlhbF9yczQ4NSB7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBTRVJfUlM0ODVfRU5BQkxFRCAoMSA8PCAwKQogI2RlZmluZSBTRVJfUlM0ODVfUlRTX09OX1NFTkQgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUl9SUzQ4NV9SVFNfQUZURVJfU0VORCAoMSA8PCAyKQogI2RlZmluZSBTRVJfUlM0ODVfUlhfRFVSSU5HX1RYICgxIDw8IDQpCi0gX191MzIgZGVsYXlfcnRzX2JlZm9yZV9zZW5kOwotIF9fdTMyIGRlbGF5X3J0c19hZnRlcl9zZW5kOworICBfX3UzMiBkZWxheV9ydHNfYmVmb3JlX3NlbmQ7CisgIF9fdTMyIGRlbGF5X3J0c19hZnRlcl9zZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWRkaW5nWzVdOworICBfX3UzMiBwYWRkaW5nWzVdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfY29yZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfY29yZS5oCmluZGV4IDU5ZmMzMmEuLmUzMTBmOGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaWFsX2NvcmUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9jb3JlLmgKQEAgLTE0Myw0ICsxNDMsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUE9SVF9BU0MgMTA1CiAjZGVmaW5lIFBPUlRfVElMRUdYIDEwNgorI2RlZmluZSBQT1JUX01FTl9aMTM1IDEwNworI2RlZmluZSBQT1JUX1NDMTZJUzdYWCAxMDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBPUlRfTUVTT04gMTA5CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaWFsX3JlZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfcmVnLmgKaW5kZXggMWIwYmFkYS4uZjY4YzU0YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfcmVnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfcmVnLmgKQEAgLTMxLDcgKzMxLDcgQEAKICNkZWZpbmUgVUFSVF9JSVIgMgogI2RlZmluZSBVQVJUX0lJUl9OT19JTlQgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVUFSVF9JSVJfSUQgMHgwNgorI2RlZmluZSBVQVJUX0lJUl9JRCAweDBlCiAjZGVmaW5lIFVBUlRfSUlSX01TSSAweDAwCiAjZGVmaW5lIFVBUlRfSUlSX1RIUkkgMHgwMgogI2RlZmluZSBVQVJUX0lJUl9SREkgMHgwNApAQCAtNzYsMjM5ICs3NiwyNDMgQEAKICNkZWZpbmUgVUFSVF9GQ1I2X1RfVFJJR0dFUl8zMCAweDMwCiAjZGVmaW5lIFVBUlRfRkNSN182NEJZVEUgMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVUFSVF9GQ1JfUl9UUklHX1NISUZUIDYKKyNkZWZpbmUgVUFSVF9GQ1JfUl9UUklHX0JJVFMoeCkgKCgoeCkgJiBVQVJUX0ZDUl9UUklHR0VSX01BU0spID4+IFVBUlRfRkNSX1JfVFJJR19TSElGVCkKKyNkZWZpbmUgVUFSVF9GQ1JfUl9UUklHX01BWF9TVEFURSA0CiAjZGVmaW5lIFVBUlRfTENSIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTENSX0RMQUIgMHg4MAogI2RlZmluZSBVQVJUX0xDUl9TQkMgMHg0MAogI2RlZmluZSBVQVJUX0xDUl9TUEFSIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTENSX0VQQVIgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MQ1JfUEFSSVRZIDB4MDgKICNkZWZpbmUgVUFSVF9MQ1JfU1RPUCAweDA0CiAjZGVmaW5lIFVBUlRfTENSX1dMRU41IDB4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTENSX1dMRU42IDB4MDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTENSX1dMRU43IDB4MDIKICNkZWZpbmUgVUFSVF9MQ1JfV0xFTjggMHgwMwogI2RlZmluZSBVQVJUX0xDUl9DT05GX01PREVfQSBVQVJUX0xDUl9ETEFCCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0xDUl9DT05GX01PREVfQiAweEJGCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01DUiA0CiAjZGVmaW5lIFVBUlRfTUNSX0NMS1NFTCAweDgwCiAjZGVmaW5lIFVBUlRfTUNSX1RDUlRMUiAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01DUl9YT05BTlkgMHgyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9NQ1JfQUZFIDB4MjAKICNkZWZpbmUgVUFSVF9NQ1JfTE9PUCAweDEwCiAjZGVmaW5lIFVBUlRfTUNSX09VVDIgMHgwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9NQ1JfT1VUMSAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01DUl9SVFMgMHgwMgogI2RlZmluZSBVQVJUX01DUl9EVFIgMHgwMQogI2RlZmluZSBVQVJUX0xTUiA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0xTUl9GSUZPRSAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0xTUl9URU1UIDB4NDAKICNkZWZpbmUgVUFSVF9MU1JfVEhSRSAweDIwCiAjZGVmaW5lIFVBUlRfTFNSX0JJIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTFNSX0ZFIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTFNSX1BFIDB4MDQKICNkZWZpbmUgVUFSVF9MU1JfT0UgMHgwMgogI2RlZmluZSBVQVJUX0xTUl9EUiAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0xTUl9CUktfRVJST1JfQklUUyAweDFFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01TUiA2CiAjZGVmaW5lIFVBUlRfTVNSX0RDRCAweDgwCiAjZGVmaW5lIFVBUlRfTVNSX1JJIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTVNSX0RTUiAweDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01TUl9DVFMgMHgxMAogI2RlZmluZSBVQVJUX01TUl9ERENEIDB4MDgKICNkZWZpbmUgVUFSVF9NU1JfVEVSSSAweDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01TUl9ERFNSIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTVNSX0RDVFMgMHgwMQogI2RlZmluZSBVQVJUX01TUl9BTllfREVMVEEgMHgwRgogI2RlZmluZSBVQVJUX1NDUiA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0RMTCAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0RMTSAxCiAjZGVmaW5lIFVBUlRfRUZSIDIKICNkZWZpbmUgVUFSVF9YUl9FRlIgOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9FRlJfQ1RTIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRUZSX1JUUyAweDQwCiAjZGVmaW5lIFVBUlRfRUZSX1NDRCAweDIwCiAjZGVmaW5lIFVBUlRfRUZSX0VDQiAweDEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1hPTjEgNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9YT04yIDUKICNkZWZpbmUgVUFSVF9YT0ZGMSA2CiAjZGVmaW5lIFVBUlRfWE9GRjIgNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9USTc1Ml9UQ1IgNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9USTc1Ml9UTFIgNwogI2RlZmluZSBVQVJUX1RSRyAwCiAjZGVmaW5lIFVBUlRfVFJHXzEgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9UUkdfNCAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RSR184IDB4MDgKICNkZWZpbmUgVUFSVF9UUkdfMTYgMHgxMAogI2RlZmluZSBVQVJUX1RSR18zMiAweDIwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RSR182NCAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RSR185NiAweDYwCiAjZGVmaW5lIFVBUlRfVFJHXzEyMCAweDc4CiAjZGVmaW5lIFVBUlRfVFJHXzEyOCAweDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFIgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1RSX1JUU19OT0RFTEFZIDB4MDAKICNkZWZpbmUgVUFSVF9GQ1RSX1JUU180REVMQVkgMHgwMQogI2RlZmluZSBVQVJUX0ZDVFJfUlRTXzZERUxBWSAweDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfUlRTXzhERUxBWSAweDAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfSVJEQSAweDA0CiAjZGVmaW5lIFVBUlRfRkNUUl9UWF9JTlQgMHgwOAogI2RlZmluZSBVQVJUX0ZDVFJfVFJHQSAweDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfVFJHQiAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfVFJHQyAweDIwCiAjZGVmaW5lIFVBUlRfRkNUUl9UUkdEIDB4MzAKICNkZWZpbmUgVUFSVF9GQ1RSX1NDUl9TV0FQIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9SWCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfVFggMHg4MAogI2RlZmluZSBVQVJUX0VNU1IgNwogI2RlZmluZSBVQVJUX0VNU1JfRklGT19DT1VOVCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0VNU1JfQUxUX0NPVU5UIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfSUVSX0RNQUUgMHg4MAogI2RlZmluZSBVQVJUX0lFUl9VVUUgMHg0MAogI2RlZmluZSBVQVJUX0lFUl9OUlpFIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfSUVSX1JUT0lFIDB4MTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfSUlSX1RPRCAweDA4CiAjZGVmaW5lIFVBUlRfRkNSX1BYQVIxIDB4MDAKICNkZWZpbmUgVUFSVF9GQ1JfUFhBUjggMHg0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfUFhBUjE2IDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNSX1BYQVIzMiAweGMwCiAjZGVmaW5lIFVBUlRfRkNSX0hTVV82NF8xQiAweDAwCiAjZGVmaW5lIFVBUlRfRkNSX0hTVV82NF8xNkIgMHg0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzY0XzMyQiAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDUl9IU1VfNjRfNTZCIDB4YzAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzE2XzFCIDB4MDAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzE2XzRCIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNSX0hTVV8xNl84QiAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDUl9IU1VfMTZfMTRCIDB4YzAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzY0Ql9GSUZPIDB4MjAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzE2Ql9GSUZPIDB4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNSX0hBTEZfRU1QVF9UWEkgMHgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfRlVMTF9FTVBUX1RYSSAweDA4CiAjZGVmaW5lIFVBUlRfQVNSIDB4MDEKICNkZWZpbmUgVUFSVF9SRkwgMHgwMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9URkwgMHgwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9JQ1IgMHgwNQogI2RlZmluZSBVQVJUX0FDUiAweDAwCiAjZGVmaW5lIFVBUlRfQ1BSIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfVENSIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfQ0tTIDB4MDMKICNkZWZpbmUgVUFSVF9UVEwgMHgwNAogI2RlZmluZSBVQVJUX1JUTCAweDA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDTCAweDA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDSCAweDA3CiAjZGVmaW5lIFVBUlRfSUQxIDB4MDgKICNkZWZpbmUgVUFSVF9JRDIgMHgwOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9JRDMgMHgwQQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SRVYgMHgwQgogI2RlZmluZSBVQVJUX0NTUiAweDBDCiAjZGVmaW5lIFVBUlRfTk1SIDB4MEQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfQ1RSIDB4RkYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfQUNSX1JYRElTIDB4MDEKICNkZWZpbmUgVUFSVF9BQ1JfVFhESVMgMHgwMgogI2RlZmluZSBVQVJUX0FDUl9EU1JGQyAweDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0FDUl9UTEVOQiAweDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0FDUl9JQ1JSRCAweDQwCiAjZGVmaW5lIFVBUlRfQUNSX0FTUkVOIDB4ODAKLSNkZWZpbmUgVUFSVF9SU0FfQkFTRSAoLTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVQVJUX1JTQV9CQVNFICgtIDgpCiAjZGVmaW5lIFVBUlRfUlNBX01TUiAoKFVBUlRfUlNBX0JBU0UpICsgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX01TUl9TV0FQICgxIDw8IDApCiAjZGVmaW5lIFVBUlRfUlNBX01TUl9GSUZPICgxIDw8IDIpCiAjZGVmaW5lIFVBUlRfUlNBX01TUl9GTE9XICgxIDw8IDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9NU1JfSVRZUCAoMSA8PCA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfSUVSICgoVUFSVF9SU0FfQkFTRSkgKyAxKQogI2RlZmluZSBVQVJUX1JTQV9JRVJfUnhfRklGT19IICgxIDw8IDApCiAjZGVmaW5lIFVBUlRfUlNBX0lFUl9UeF9GSUZPX0ggKDEgPDwgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX0lFUl9UeF9GSUZPX0UgKDEgPDwgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX0lFUl9SeF9UT1VUICgxIDw8IDMpCiAjZGVmaW5lIFVBUlRfUlNBX0lFUl9USU1FUiAoMSA8PCA0KQogI2RlZmluZSBVQVJUX1JTQV9TUlIgKChVQVJUX1JTQV9CQVNFKSArIDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9TUlJfVHhfRklGT19ORU1QICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9TUlJfVHhfRklGT19OSEZMICgxIDw8IDEpCiAjZGVmaW5lIFVBUlRfUlNBX1NSUl9UeF9GSUZPX05GVUwgKDEgPDwgMikKICNkZWZpbmUgVUFSVF9SU0FfU1JSX1J4X0ZJRk9fTkVNUCAoMSA8PCAzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfU1JSX1J4X0ZJRk9fTkhGTCAoMSA8PCA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfU1JSX1J4X0ZJRk9fTkZVTCAoMSA8PCA1KQogI2RlZmluZSBVQVJUX1JTQV9TUlJfUnhfVE9VVCAoMSA8PCA2KQogI2RlZmluZSBVQVJUX1JTQV9TUlJfVElNRVIgKDEgPDwgNykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX0ZSUiAoKFVBUlRfUlNBX0JBU0UpICsgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX1RJVlNSICgoVUFSVF9SU0FfQkFTRSkgKyAzKQogI2RlZmluZSBVQVJUX1JTQV9UQ1IgKChVQVJUX1JTQV9CQVNFKSArIDQpCiAjZGVmaW5lIFVBUlRfUlNBX1RDUl9TV0lUQ0ggKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUklBTF9SU0FfQkFVRF9CQVNFICg5MjE2MDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVJJQUxfUlNBX0JBVURfQkFTRV9MTyAoU0VSSUFMX1JTQV9CQVVEX0JBU0UgLyA4KQogI2RlZmluZSBVQVJUX09NQVBfTURSMSAweDA4CiAjZGVmaW5lIFVBUlRfT01BUF9NRFIyIDB4MDkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9TQ1IgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX1NTUiAweDExCiAjZGVmaW5lIFVBUlRfT01BUF9FQkxSIDB4MTIKICNkZWZpbmUgVUFSVF9PTUFQX09TQ18xMk1fU0VMIDB4MTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9NVkVSIDB4MTQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9TWVNDIDB4MTUKICNkZWZpbmUgVUFSVF9PTUFQX1NZU1MgMHgxNgogI2RlZmluZSBVQVJUX09NQVBfV0VSIDB4MTcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxXzE2WF9NT0RFIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxX1NJUl9NT0RFIDB4MDEKICNkZWZpbmUgVUFSVF9PTUFQX01EUjFfMTZYX0FCQVVEX01PREUgMHgwMgogI2RlZmluZSBVQVJUX09NQVBfTURSMV8xM1hfTU9ERSAweDAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX09NQVBfTURSMV9NSVJfTU9ERSAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX09NQVBfTURSMV9GSVJfTU9ERSAweDA1CiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxX0NJUl9NT0RFIDB4MDYKICNkZWZpbmUgVUFSVF9PTUFQX01EUjFfRElTQUJMRSAweDA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0VYQVJfOFhNT0RFIDB4ODgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRVhBUl9TTEVFUCAweDhiCiAjZGVmaW5lIFVBUlRfRVhBUl9EVklEIDB4OGQKICNkZWZpbmUgVUFSVF9FWEFSX0ZDVFIgMHgwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1RSX0VYQVJfSVJEQSAweDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfRVhBUl80ODUgMHgxMAogI2RlZmluZSBVQVJUX0ZDVFJfRVhBUl9UUkdBIDB4MDAKICNkZWZpbmUgVUFSVF9GQ1RSX0VYQVJfVFJHQiAweDYwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfRVhBUl9UUkdDIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9FWEFSX1RSR0QgMHhjMAogI2RlZmluZSBVQVJUX0VYQVJfVFhUUkcgMHgwYQogI2RlZmluZSBVQVJUX0VYQVJfUlhUUkcgMHgwYgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaW8uaAppbmRleCA3YWZiMWEyLi5hOGZjZmQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpby5oCkBAIC04NCw1ICs4NCw2IEBACiAjZGVmaW5lIFNFUklPX0hBTVBTSElSRSAweDNiCiAjZGVmaW5lIFNFUklPX1BTMk1VTFQgMHgzYwogI2RlZmluZSBTRVJJT19UU0M0MCAweDNkCi0jZW5kaWYKKyNkZWZpbmUgU0VSSU9fV0FDT01fSVYgMHgzZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaG0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2htLmgKaW5kZXggMjhlMTY3MC4uYmI3ZjkwNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NobS5oCkBAIC0yMiwyNyArMjIsMjcgQEAKICNpbmNsdWRlIDxsaW51eC9lcnJuby5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDx1bmlzdGQuaD4KLSNkZWZpbmUgU0hNTUFYIDB4MjAwMDAwMAogI2RlZmluZSBTSE1NSU4gMQogI2RlZmluZSBTSE1NTkkgNDA5NgorI2RlZmluZSBTSE1NQVggKFVMT05HX01BWCAtICgxVUwgPDwgMjQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0hNQUxMIChTSE1NQVgvZ2V0cGFnZXNpemUoKSooU0hNTU5JLzE2KSkKKyNkZWZpbmUgU0hNQUxMIChVTE9OR19NQVggLSAoMVVMIDw8IDI0KSkKICNkZWZpbmUgU0hNU0VHIFNITU1OSQogc3RydWN0IHNobWlkX2RzIHsKLSBzdHJ1Y3QgaXBjX3Blcm0gc2htX3Blcm07CisgIHN0cnVjdCBpcGNfcGVybSBzaG1fcGVybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNobV9zZWdzejsKLSBfX2tlcm5lbF90aW1lX3Qgc2htX2F0aW1lOwotIF9fa2VybmVsX3RpbWVfdCBzaG1fZHRpbWU7Ci0gX19rZXJuZWxfdGltZV90IHNobV9jdGltZTsKKyAgaW50IHNobV9zZWdzejsKKyAgX19rZXJuZWxfdGltZV90IHNobV9hdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNobV9kdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNobV9jdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfaXBjX3BpZF90IHNobV9jcGlkOwotIF9fa2VybmVsX2lwY19waWRfdCBzaG1fbHBpZDsKLSB1bnNpZ25lZCBzaG9ydCBzaG1fbmF0dGNoOwotIHVuc2lnbmVkIHNob3J0IHNobV91bnVzZWQ7CisgIF9fa2VybmVsX2lwY19waWRfdCBzaG1fY3BpZDsKKyAgX19rZXJuZWxfaXBjX3BpZF90IHNobV9scGlkOworICB1bnNpZ25lZCBzaG9ydCBzaG1fbmF0dGNoOworICB1bnNpZ25lZCBzaG9ydCBzaG1fdW51c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICpzaG1fdW51c2VkMjsKLSB2b2lkICpzaG1fdW51c2VkMzsKKyAgdm9pZCAqIHNobV91bnVzZWQyOworICB2b2lkICogc2htX3VudXNlZDM7CiB9OwogI2luY2x1ZGUgPGFzbS9zaG1idWYuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC01OSwyMiArNTksMjIgQEAKICNkZWZpbmUgU0hNX1NUQVQgMTMKICNkZWZpbmUgU0hNX0lORk8gMTQKIHN0cnVjdCBzaG1pbmZvIHsKLSBpbnQgc2htbWF4OworICBpbnQgc2htbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc2htbWluOwotIGludCBzaG1tbmk7Ci0gaW50IHNobXNlZzsKLSBpbnQgc2htYWxsOworICBpbnQgc2htbWluOworICBpbnQgc2htbW5pOworICBpbnQgc2htc2VnOworICBpbnQgc2htYWxsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc2htX2luZm8gewotIGludCB1c2VkX2lkczsKLSBfX2tlcm5lbF91bG9uZ190IHNobV90b3Q7CisgIGludCB1c2VkX2lkczsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1fdG90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IHNobV9yc3M7Ci0gX19rZXJuZWxfdWxvbmdfdCBzaG1fc3dwOwotIF9fa2VybmVsX3Vsb25nX3Qgc3dhcF9hdHRlbXB0czsKLSBfX2tlcm5lbF91bG9uZ190IHN3YXBfc3VjY2Vzc2VzOworICBfX2tlcm5lbF91bG9uZ190IHNobV9yc3M7CisgIF9fa2VybmVsX3Vsb25nX3Qgc2htX3N3cDsKKyAgX19rZXJuZWxfdWxvbmdfdCBzd2FwX2F0dGVtcHRzOworICBfX2tlcm5lbF91bG9uZ190IHN3YXBfc3VjY2Vzc2VzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2lnbmFsZmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2lnbmFsZmQuaAppbmRleCA4OTc1MTMwLi5kY2NkNjViIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NpZ25hbGZkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaWduYWxmZC5oCkBAIC0yNCwyOCArMjQsMjggQEAKICNkZWZpbmUgU0ZEX0NMT0VYRUMgT19DTE9FWEVDCiAjZGVmaW5lIFNGRF9OT05CTE9DSyBPX05PTkJMT0NLCiBzdHJ1Y3Qgc2lnbmFsZmRfc2lnaW5mbyB7Ci0gX191MzIgc3NpX3NpZ25vOworICBfX3UzMiBzc2lfc2lnbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHNzaV9lcnJubzsKLSBfX3MzMiBzc2lfY29kZTsKLSBfX3UzMiBzc2lfcGlkOwotIF9fdTMyIHNzaV91aWQ7CisgIF9fczMyIHNzaV9lcnJubzsKKyAgX19zMzIgc3NpX2NvZGU7CisgIF9fdTMyIHNzaV9waWQ7CisgIF9fdTMyIHNzaV91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHNzaV9mZDsKLSBfX3UzMiBzc2lfdGlkOwotIF9fdTMyIHNzaV9iYW5kOwotIF9fdTMyIHNzaV9vdmVycnVuOworICBfX3MzMiBzc2lfZmQ7CisgIF9fdTMyIHNzaV90aWQ7CisgIF9fdTMyIHNzaV9iYW5kOworICBfX3UzMiBzc2lfb3ZlcnJ1bjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3NpX3RyYXBubzsKLSBfX3MzMiBzc2lfc3RhdHVzOwotIF9fczMyIHNzaV9pbnQ7Ci0gX191NjQgc3NpX3B0cjsKKyAgX191MzIgc3NpX3RyYXBubzsKKyAgX19zMzIgc3NpX3N0YXR1czsKKyAgX19zMzIgc3NpX2ludDsKKyAgX191NjQgc3NpX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3NpX3V0aW1lOwotIF9fdTY0IHNzaV9zdGltZTsKLSBfX3U2NCBzc2lfYWRkcjsKLSBfX3UxNiBzc2lfYWRkcl9sc2I7CisgIF9fdTY0IHNzaV91dGltZTsKKyAgX191NjQgc3NpX3N0aW1lOworICBfX3U2NCBzc2lfYWRkcjsKKyAgX191MTYgc3NpX2FkZHJfbHNiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9fcGFkWzQ2XTsKKyAgX191OCBfX3BhZFs0Nl07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NtaWFwcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zbWlhcHAuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YjJhNDYyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zbWlhcHAuaApAQCAtMCwwICsxLDI4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9fVUFQSV9MSU5VWF9TTUlBUFBfSF8KKyNkZWZpbmUgX19VQVBJX0xJTlVYX1NNSUFQUF9IXworI2RlZmluZSBWNEwyX1NNSUFQUF9URVNUX1BBVFRFUk5fTU9ERV9ESVNBQkxFRCAwCisjZGVmaW5lIFY0TDJfU01JQVBQX1RFU1RfUEFUVEVSTl9NT0RFX1NPTElEX0NPTE9VUiAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NNSUFQUF9URVNUX1BBVFRFUk5fTU9ERV9DT0xPVVJfQkFSUyAyCisjZGVmaW5lIFY0TDJfU01JQVBQX1RFU1RfUEFUVEVSTl9NT0RFX0NPTE9VUl9CQVJTX0dSRVkgMworI2RlZmluZSBWNEwyX1NNSUFQUF9URVNUX1BBVFRFUk5fTU9ERV9QTjkgNAorI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zbm1wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NubXAuaAppbmRleCA5ZDVmYjA5Li5hYjE2M2NjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NubXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NubXAuaApAQCAtMTgsMzE3ICsxOCwzMTYgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfTElOVVhfU05NUF9ICiAjZGVmaW5lIF9MSU5VWF9TTk1QX0gKLWVudW0KLXsKK2VudW0geworICBJUFNUQVRTX01JQl9OVU0gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9OVU0gPSAwLAotIElQU1RBVFNfTUlCX0lOUEtUUywKLSBJUFNUQVRTX01JQl9JTk9DVEVUUywKLSBJUFNUQVRTX01JQl9JTkRFTElWRVJTLAorICBJUFNUQVRTX01JQl9JTlBLVFMsCisgIElQU1RBVFNfTUlCX0lOT0NURVRTLAorICBJUFNUQVRTX01JQl9JTkRFTElWRVJTLAorICBJUFNUQVRTX01JQl9PVVRGT1JXREFUQUdSQU1TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9PVVRGT1JXREFUQUdSQU1TLAotIElQU1RBVFNfTUlCX09VVFBLVFMsCi0gSVBTVEFUU19NSUJfT1VUT0NURVRTLAotIElQU1RBVFNfTUlCX0lOSERSRVJST1JTLAorICBJUFNUQVRTX01JQl9PVVRQS1RTLAorICBJUFNUQVRTX01JQl9PVVRPQ1RFVFMsCisgIElQU1RBVFNfTUlCX0lOSERSRVJST1JTLAorICBJUFNUQVRTX01JQl9JTlRPT0JJR0VSUk9SUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTVEFUU19NSUJfSU5UT09CSUdFUlJPUlMsCi0gSVBTVEFUU19NSUJfSU5OT1JPVVRFUywKLSBJUFNUQVRTX01JQl9JTkFERFJFUlJPUlMsCi0gSVBTVEFUU19NSUJfSU5VTktOT1dOUFJPVE9TLAorICBJUFNUQVRTX01JQl9JTk5PUk9VVEVTLAorICBJUFNUQVRTX01JQl9JTkFERFJFUlJPUlMsCisgIElQU1RBVFNfTUlCX0lOVU5LTk9XTlBST1RPUywKKyAgSVBTVEFUU19NSUJfSU5UUlVOQ0FURURQS1RTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9JTlRSVU5DQVRFRFBLVFMsCi0gSVBTVEFUU19NSUJfSU5ESVNDQVJEUywKLSBJUFNUQVRTX01JQl9PVVRESVNDQVJEUywKLSBJUFNUQVRTX01JQl9PVVROT1JPVVRFUywKKyAgSVBTVEFUU19NSUJfSU5ESVNDQVJEUywKKyAgSVBTVEFUU19NSUJfT1VURElTQ0FSRFMsCisgIElQU1RBVFNfTUlCX09VVE5PUk9VVEVTLAorICBJUFNUQVRTX01JQl9SRUFTTVRJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX1JFQVNNVElNRU9VVCwKLSBJUFNUQVRTX01JQl9SRUFTTVJFUURTLAotIElQU1RBVFNfTUlCX1JFQVNNT0tTLAotIElQU1RBVFNfTUlCX1JFQVNNRkFJTFMsCisgIElQU1RBVFNfTUlCX1JFQVNNUkVRRFMsCisgIElQU1RBVFNfTUlCX1JFQVNNT0tTLAorICBJUFNUQVRTX01JQl9SRUFTTUZBSUxTLAorICBJUFNUQVRTX01JQl9GUkFHT0tTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9GUkFHT0tTLAotIElQU1RBVFNfTUlCX0ZSQUdGQUlMUywKLSBJUFNUQVRTX01JQl9GUkFHQ1JFQVRFUywKLSBJUFNUQVRTX01JQl9JTk1DQVNUUEtUUywKKyAgSVBTVEFUU19NSUJfRlJBR0ZBSUxTLAorICBJUFNUQVRTX01JQl9GUkFHQ1JFQVRFUywKKyAgSVBTVEFUU19NSUJfSU5NQ0FTVFBLVFMsCisgIElQU1RBVFNfTUlCX09VVE1DQVNUUEtUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTVEFUU19NSUJfT1VUTUNBU1RQS1RTLAotIElQU1RBVFNfTUlCX0lOQkNBU1RQS1RTLAotIElQU1RBVFNfTUlCX09VVEJDQVNUUEtUUywKLSBJUFNUQVRTX01JQl9JTk1DQVNUT0NURVRTLAorICBJUFNUQVRTX01JQl9JTkJDQVNUUEtUUywKKyAgSVBTVEFUU19NSUJfT1VUQkNBU1RQS1RTLAorICBJUFNUQVRTX01JQl9JTk1DQVNUT0NURVRTLAorICBJUFNUQVRTX01JQl9PVVRNQ0FTVE9DVEVUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTVEFUU19NSUJfT1VUTUNBU1RPQ1RFVFMsCi0gSVBTVEFUU19NSUJfSU5CQ0FTVE9DVEVUUywKLSBJUFNUQVRTX01JQl9PVVRCQ0FTVE9DVEVUUywKLSBJUFNUQVRTX01JQl9DU1VNRVJST1JTLAorICBJUFNUQVRTX01JQl9JTkJDQVNUT0NURVRTLAorICBJUFNUQVRTX01JQl9PVVRCQ0FTVE9DVEVUUywKKyAgSVBTVEFUU19NSUJfQ1NVTUVSUk9SUywKKyAgSVBTVEFUU19NSUJfTk9FQ1RQS1RTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9OT0VDVFBLVFMsCi0gSVBTVEFUU19NSUJfRUNUMVBLVFMsCi0gSVBTVEFUU19NSUJfRUNUMFBLVFMsCi0gSVBTVEFUU19NSUJfQ0VQS1RTLAorICBJUFNUQVRTX01JQl9FQ1QxUEtUUywKKyAgSVBTVEFUU19NSUJfRUNUMFBLVFMsCisgIElQU1RBVFNfTUlCX0NFUEtUUywKKyAgX19JUFNUQVRTX01JQl9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JUFNUQVRTX01JQl9NQVgKIH07Ci1lbnVtCi17CitlbnVtIHsKKyAgSUNNUF9NSUJfTlVNID0gMCwKKyAgSUNNUF9NSUJfSU5NU0dTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQ01QX01JQl9OVU0gPSAwLAotIElDTVBfTUlCX0lOTVNHUywKLSBJQ01QX01JQl9JTkVSUk9SUywKLSBJQ01QX01JQl9JTkRFU1RVTlJFQUNIUywKKyAgSUNNUF9NSUJfSU5FUlJPUlMsCisgIElDTVBfTUlCX0lOREVTVFVOUkVBQ0hTLAorICBJQ01QX01JQl9JTlRJTUVFWENEUywKKyAgSUNNUF9NSUJfSU5QQVJNUFJPQlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX0lOVElNRUVYQ0RTLAotIElDTVBfTUlCX0lOUEFSTVBST0JTLAotIElDTVBfTUlCX0lOU1JDUVVFTkNIUywKLSBJQ01QX01JQl9JTlJFRElSRUNUUywKKyAgSUNNUF9NSUJfSU5TUkNRVUVOQ0hTLAorICBJQ01QX01JQl9JTlJFRElSRUNUUywKKyAgSUNNUF9NSUJfSU5FQ0hPUywKKyAgSUNNUF9NSUJfSU5FQ0hPUkVQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUNNUF9NSUJfSU5FQ0hPUywKLSBJQ01QX01JQl9JTkVDSE9SRVBTLAotIElDTVBfTUlCX0lOVElNRVNUQU1QUywKLSBJQ01QX01JQl9JTlRJTUVTVEFNUFJFUFMsCisgIElDTVBfTUlCX0lOVElNRVNUQU1QUywKKyAgSUNNUF9NSUJfSU5USU1FU1RBTVBSRVBTLAorICBJQ01QX01JQl9JTkFERFJNQVNLUywKKyAgSUNNUF9NSUJfSU5BRERSTUFTS1JFUFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX0lOQUREUk1BU0tTLAotIElDTVBfTUlCX0lOQUREUk1BU0tSRVBTLAotIElDTVBfTUlCX09VVE1TR1MsCi0gSUNNUF9NSUJfT1VURVJST1JTLAorICBJQ01QX01JQl9PVVRNU0dTLAorICBJQ01QX01JQl9PVVRFUlJPUlMsCisgIElDTVBfTUlCX09VVERFU1RVTlJFQUNIUywKKyAgSUNNUF9NSUJfT1VUVElNRUVYQ0RTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQ01QX01JQl9PVVRERVNUVU5SRUFDSFMsCi0gSUNNUF9NSUJfT1VUVElNRUVYQ0RTLAotIElDTVBfTUlCX09VVFBBUk1QUk9CUywKLSBJQ01QX01JQl9PVVRTUkNRVUVOQ0hTLAorICBJQ01QX01JQl9PVVRQQVJNUFJPQlMsCisgIElDTVBfTUlCX09VVFNSQ1FVRU5DSFMsCisgIElDTVBfTUlCX09VVFJFRElSRUNUUywKKyAgSUNNUF9NSUJfT1VURUNIT1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX09VVFJFRElSRUNUUywKLSBJQ01QX01JQl9PVVRFQ0hPUywKLSBJQ01QX01JQl9PVVRFQ0hPUkVQUywKLSBJQ01QX01JQl9PVVRUSU1FU1RBTVBTLAorICBJQ01QX01JQl9PVVRFQ0hPUkVQUywKKyAgSUNNUF9NSUJfT1VUVElNRVNUQU1QUywKKyAgSUNNUF9NSUJfT1VUVElNRVNUQU1QUkVQUywKKyAgSUNNUF9NSUJfT1VUQUREUk1BU0tTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQ01QX01JQl9PVVRUSU1FU1RBTVBSRVBTLAotIElDTVBfTUlCX09VVEFERFJNQVNLUywKLSBJQ01QX01JQl9PVVRBRERSTUFTS1JFUFMsCi0gSUNNUF9NSUJfQ1NVTUVSUk9SUywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JQ01QX01JQl9NQVgKKyAgSUNNUF9NSUJfT1VUQUREUk1BU0tSRVBTLAorICBJQ01QX01JQl9DU1VNRVJST1JTLAorICBfX0lDTVBfTUlCX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fSUNNUE1TR19NSUJfTUFYIDUxMgotZW51bQorZW51bSB7CisgIElDTVA2X01JQl9OVU0gPSAwLAorICBJQ01QNl9NSUJfSU5NU0dTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBJQ01QNl9NSUJfTlVNID0gMCwKLSBJQ01QNl9NSUJfSU5NU0dTLAotIElDTVA2X01JQl9JTkVSUk9SUywKKyAgSUNNUDZfTUlCX0lORVJST1JTLAorICBJQ01QNl9NSUJfT1VUTVNHUywKKyAgSUNNUDZfTUlCX09VVEVSUk9SUywKKyAgSUNNUDZfTUlCX0NTVU1FUlJPUlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVA2X01JQl9PVVRNU0dTLAotIElDTVA2X01JQl9PVVRFUlJPUlMsCi0gSUNNUDZfTUlCX0NTVU1FUlJPUlMsCi0gX19JQ01QNl9NSUJfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lDTVA2X01JQl9NQVgKIH07CiAjZGVmaW5lIF9fSUNNUDZNU0dfTUlCX01BWCA1MTIKLWVudW0KLXsKK2VudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUlCX05VTSA9IDAsCi0gVENQX01JQl9SVE9BTEdPUklUSE0sCi0gVENQX01JQl9SVE9NSU4sCi0gVENQX01JQl9SVE9NQVgsCisgIFRDUF9NSUJfTlVNID0gMCwKKyAgVENQX01JQl9SVE9BTEdPUklUSE0sCisgIFRDUF9NSUJfUlRPTUlOLAorICBUQ1BfTUlCX1JUT01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX01JQl9NQVhDT05OLAotIFRDUF9NSUJfQUNUSVZFT1BFTlMsCi0gVENQX01JQl9QQVNTSVZFT1BFTlMsCi0gVENQX01JQl9BVFRFTVBURkFJTFMsCisgIFRDUF9NSUJfTUFYQ09OTiwKKyAgVENQX01JQl9BQ1RJVkVPUEVOUywKKyAgVENQX01JQl9QQVNTSVZFT1BFTlMsCisgIFRDUF9NSUJfQVRURU1QVEZBSUxTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUlCX0VTVEFCUkVTRVRTLAotIFRDUF9NSUJfQ1VSUkVTVEFCLAotIFRDUF9NSUJfSU5TRUdTLAotIFRDUF9NSUJfT1VUU0VHUywKKyAgVENQX01JQl9FU1RBQlJFU0VUUywKKyAgVENQX01JQl9DVVJSRVNUQUIsCisgIFRDUF9NSUJfSU5TRUdTLAorICBUQ1BfTUlCX09VVFNFR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9NSUJfUkVUUkFOU1NFR1MsCi0gVENQX01JQl9JTkVSUlMsCi0gVENQX01JQl9PVVRSU1RTLAotIFRDUF9NSUJfQ1NVTUVSUk9SUywKKyAgVENQX01JQl9SRVRSQU5TU0VHUywKKyAgVENQX01JQl9JTkVSUlMsCisgIFRDUF9NSUJfT1VUUlNUUywKKyAgVENQX01JQl9DU1VNRVJST1JTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDUF9NSUJfTUFYCisgIF9fVENQX01JQl9NQVgKIH07Ci1lbnVtCi17CitlbnVtIHsKKyAgVURQX01JQl9OVU0gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVRFBfTUlCX05VTSA9IDAsCi0gVURQX01JQl9JTkRBVEFHUkFNUywKLSBVRFBfTUlCX05PUE9SVFMsCi0gVURQX01JQl9JTkVSUk9SUywKKyAgVURQX01JQl9JTkRBVEFHUkFNUywKKyAgVURQX01JQl9OT1BPUlRTLAorICBVRFBfTUlCX0lORVJST1JTLAorICBVRFBfTUlCX09VVERBVEFHUkFNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVURQX01JQl9PVVREQVRBR1JBTVMsCi0gVURQX01JQl9SQ1ZCVUZFUlJPUlMsCi0gVURQX01JQl9TTkRCVUZFUlJPUlMsCi0gVURQX01JQl9DU1VNRVJST1JTLAorICBVRFBfTUlCX1JDVkJVRkVSUk9SUywKKyAgVURQX01JQl9TTkRCVUZFUlJPUlMsCisgIFVEUF9NSUJfQ1NVTUVSUk9SUywKKyAgX19VRFBfTUlCX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1VEUF9NSUJfTUFYCiB9OwotZW51bQoteworZW51bSB7CisgIExJTlVYX01JQl9OVU0gPSAwLAorICBMSU5VWF9NSUJfU1lOQ09PS0lFU1NFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9OVU0gPSAwLAotIExJTlVYX01JQl9TWU5DT09LSUVTU0VOVCwKLSBMSU5VWF9NSUJfU1lOQ09PS0lFU1JFQ1YsCi0gTElOVVhfTUlCX1NZTkNPT0tJRVNGQUlMRUQsCisgIExJTlVYX01JQl9TWU5DT09LSUVTUkVDViwKKyAgTElOVVhfTUlCX1NZTkNPT0tJRVNGQUlMRUQsCisgIExJTlVYX01JQl9FTUJSWU9OSUNSU1RTLAorICBMSU5VWF9NSUJfUFJVTkVDQUxMRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9FTUJSWU9OSUNSU1RTLAotIExJTlVYX01JQl9QUlVORUNBTExFRCwKLSBMSU5VWF9NSUJfUkNWUFJVTkVELAotIExJTlVYX01JQl9PRk9QUlVORUQsCisgIExJTlVYX01JQl9SQ1ZQUlVORUQsCisgIExJTlVYX01JQl9PRk9QUlVORUQsCisgIExJTlVYX01JQl9PVVRPRldJTkRPV0lDTVBTLAorICBMSU5VWF9NSUJfTE9DS0RST1BQRURJQ01QUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX09VVE9GV0lORE9XSUNNUFMsCi0gTElOVVhfTUlCX0xPQ0tEUk9QUEVESUNNUFMsCi0gTElOVVhfTUlCX0FSUEZJTFRFUiwKLSBMSU5VWF9NSUJfVElNRVdBSVRFRCwKKyAgTElOVVhfTUlCX0FSUEZJTFRFUiwKKyAgTElOVVhfTUlCX1RJTUVXQUlURUQsCisgIExJTlVYX01JQl9USU1FV0FJVFJFQ1lDTEVELAorICBMSU5VWF9NSUJfVElNRVdBSVRLSUxMRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9USU1FV0FJVFJFQ1lDTEVELAotIExJTlVYX01JQl9USU1FV0FJVEtJTExFRCwKLSBMSU5VWF9NSUJfUEFXU1BBU1NJVkVSRUpFQ1RFRCwKLSBMSU5VWF9NSUJfUEFXU0FDVElWRVJFSkVDVEVELAorICBMSU5VWF9NSUJfUEFXU1BBU1NJVkVSRUpFQ1RFRCwKKyAgTElOVVhfTUlCX1BBV1NBQ1RJVkVSRUpFQ1RFRCwKKyAgTElOVVhfTUlCX1BBV1NFU1RBQlJFSkVDVEVELAorICBMSU5VWF9NSUJfREVMQVlFREFDS1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9QQVdTRVNUQUJSRUpFQ1RFRCwKLSBMSU5VWF9NSUJfREVMQVlFREFDS1MsCi0gTElOVVhfTUlCX0RFTEFZRURBQ0tMT0NLRUQsCi0gTElOVVhfTUlCX0RFTEFZRURBQ0tMT1NULAorICBMSU5VWF9NSUJfREVMQVlFREFDS0xPQ0tFRCwKKyAgTElOVVhfTUlCX0RFTEFZRURBQ0tMT1NULAorICBMSU5VWF9NSUJfTElTVEVOT1ZFUkZMT1dTLAorICBMSU5VWF9NSUJfTElTVEVORFJPUFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9MSVNURU5PVkVSRkxPV1MsCi0gTElOVVhfTUlCX0xJU1RFTkRST1BTLAotIExJTlVYX01JQl9UQ1BQUkVRVUVVRUQsCi0gTElOVVhfTUlCX1RDUERJUkVDVENPUFlGUk9NQkFDS0xPRywKKyAgTElOVVhfTUlCX1RDUFBSRVFVRVVFRCwKKyAgTElOVVhfTUlCX1RDUERJUkVDVENPUFlGUk9NQkFDS0xPRywKKyAgTElOVVhfTUlCX1RDUERJUkVDVENPUFlGUk9NUFJFUVVFVUUsCisgIExJTlVYX01JQl9UQ1BQUkVRVUVVRURST1BQRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BESVJFQ1RDT1BZRlJPTVBSRVFVRVVFLAotIExJTlVYX01JQl9UQ1BQUkVRVUVVRURST1BQRUQsCi0gTElOVVhfTUlCX1RDUEhQSElUUywKLSBMSU5VWF9NSUJfVENQSFBISVRTVE9VU0VSLAorICBMSU5VWF9NSUJfVENQSFBISVRTLAorICBMSU5VWF9NSUJfVENQSFBISVRTVE9VU0VSLAorICBMSU5VWF9NSUJfVENQUFVSRUFDS1MsCisgIExJTlVYX01JQl9UQ1BIUEFDS1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BQVVJFQUNLUywKLSBMSU5VWF9NSUJfVENQSFBBQ0tTLAotIExJTlVYX01JQl9UQ1BSRU5PUkVDT1ZFUlksCi0gTElOVVhfTUlCX1RDUFNBQ0tSRUNPVkVSWSwKKyAgTElOVVhfTUlCX1RDUFJFTk9SRUNPVkVSWSwKKyAgTElOVVhfTUlCX1RDUFNBQ0tSRUNPVkVSWSwKKyAgTElOVVhfTUlCX1RDUFNBQ0tSRU5FR0lORywKKyAgTElOVVhfTUlCX1RDUEZBQ0tSRU9SREVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQU0FDS1JFTkVHSU5HLAotIExJTlVYX01JQl9UQ1BGQUNLUkVPUkRFUiwKLSBMSU5VWF9NSUJfVENQU0FDS1JFT1JERVIsCi0gTElOVVhfTUlCX1RDUFJFTk9SRU9SREVSLAorICBMSU5VWF9NSUJfVENQU0FDS1JFT1JERVIsCisgIExJTlVYX01JQl9UQ1BSRU5PUkVPUkRFUiwKKyAgTElOVVhfTUlCX1RDUFRTUkVPUkRFUiwKKyAgTElOVVhfTUlCX1RDUEZVTExVTkRPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQVFNSRU9SREVSLAotIExJTlVYX01JQl9UQ1BGVUxMVU5ETywKLSBMSU5VWF9NSUJfVENQUEFSVElBTFVORE8sCi0gTElOVVhfTUlCX1RDUERTQUNLVU5ETywKKyAgTElOVVhfTUlCX1RDUFBBUlRJQUxVTkRPLAorICBMSU5VWF9NSUJfVENQRFNBQ0tVTkRPLAorICBMSU5VWF9NSUJfVENQTE9TU1VORE8sCisgIExJTlVYX01JQl9UQ1BMT1NUUkVUUkFOU01JVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUExPU1NVTkRPLAotIExJTlVYX01JQl9UQ1BMT1NUUkVUUkFOU01JVCwKLSBMSU5VWF9NSUJfVENQUkVOT0ZBSUxVUkVTLAotIExJTlVYX01JQl9UQ1BTQUNLRkFJTFVSRVMsCisgIExJTlVYX01JQl9UQ1BSRU5PRkFJTFVSRVMsCisgIExJTlVYX01JQl9UQ1BTQUNLRkFJTFVSRVMsCisgIExJTlVYX01JQl9UQ1BMT1NTRkFJTFVSRVMsCisgIExJTlVYX01JQl9UQ1BGQVNUUkVUUkFOUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUExPU1NGQUlMVVJFUywKLSBMSU5VWF9NSUJfVENQRkFTVFJFVFJBTlMsCi0gTElOVVhfTUlCX1RDUEZPUldBUkRSRVRSQU5TLAotIExJTlVYX01JQl9UQ1BTTE9XU1RBUlRSRVRSQU5TLAorICBMSU5VWF9NSUJfVENQRk9SV0FSRFJFVFJBTlMsCisgIExJTlVYX01JQl9UQ1BTTE9XU1RBUlRSRVRSQU5TLAorICBMSU5VWF9NSUJfVENQVElNRU9VVFMsCisgIExJTlVYX01JQl9UQ1BMT1NTUFJPQkVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQVElNRU9VVFMsCi0gTElOVVhfTUlCX1RDUExPU1NQUk9CRVMsCi0gTElOVVhfTUlCX1RDUExPU1NQUk9CRVJFQ09WRVJZLAotIExJTlVYX01JQl9UQ1BSRU5PUkVDT1ZFUllGQUlMLAorICBMSU5VWF9NSUJfVENQTE9TU1BST0JFUkVDT1ZFUlksCisgIExJTlVYX01JQl9UQ1BSRU5PUkVDT1ZFUllGQUlMLAorICBMSU5VWF9NSUJfVENQU0FDS1JFQ09WRVJZRkFJTCwKKyAgTElOVVhfTUlCX1RDUFNDSEVEVUxFUkZBSUxFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUFNBQ0tSRUNPVkVSWUZBSUwsCi0gTElOVVhfTUlCX1RDUFNDSEVEVUxFUkZBSUxFRCwKLSBMSU5VWF9NSUJfVENQUkNWQ09MTEFQU0VELAotIExJTlVYX01JQl9UQ1BEU0FDS09MRFNFTlQsCisgIExJTlVYX01JQl9UQ1BSQ1ZDT0xMQVBTRUQsCisgIExJTlVYX01JQl9UQ1BEU0FDS09MRFNFTlQsCisgIExJTlVYX01JQl9UQ1BEU0FDS09GT1NFTlQsCisgIExJTlVYX01JQl9UQ1BEU0FDS1JFQ1YsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BEU0FDS09GT1NFTlQsCi0gTElOVVhfTUlCX1RDUERTQUNLUkVDViwKLSBMSU5VWF9NSUJfVENQRFNBQ0tPRk9SRUNWLAotIExJTlVYX01JQl9UQ1BBQk9SVE9OREFUQSwKKyAgTElOVVhfTUlCX1RDUERTQUNLT0ZPUkVDViwKKyAgTElOVVhfTUlCX1RDUEFCT1JUT05EQVRBLAorICBMSU5VWF9NSUJfVENQQUJPUlRPTkNMT1NFLAorICBMSU5VWF9NSUJfVENQQUJPUlRPTk1FTU9SWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUEFCT1JUT05DTE9TRSwKLSBMSU5VWF9NSUJfVENQQUJPUlRPTk1FTU9SWSwKLSBMSU5VWF9NSUJfVENQQUJPUlRPTlRJTUVPVVQsCi0gTElOVVhfTUlCX1RDUEFCT1JUT05MSU5HRVIsCisgIExJTlVYX01JQl9UQ1BBQk9SVE9OVElNRU9VVCwKKyAgTElOVVhfTUlCX1RDUEFCT1JUT05MSU5HRVIsCisgIExJTlVYX01JQl9UQ1BBQk9SVEZBSUxFRCwKKyAgTElOVVhfTUlCX1RDUE1FTU9SWVBSRVNTVVJFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUEFCT1JURkFJTEVELAotIExJTlVYX01JQl9UQ1BNRU1PUllQUkVTU1VSRVMsCi0gTElOVVhfTUlCX1RDUFNBQ0tESVNDQVJELAotIExJTlVYX01JQl9UQ1BEU0FDS0lHTk9SRURPTEQsCisgIExJTlVYX01JQl9UQ1BTQUNLRElTQ0FSRCwKKyAgTElOVVhfTUlCX1RDUERTQUNLSUdOT1JFRE9MRCwKKyAgTElOVVhfTUlCX1RDUERTQUNLSUdOT1JFRE5PVU5ETywKKyAgTElOVVhfTUlCX1RDUFNQVVJJT1VTUlRPUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUERTQUNLSUdOT1JFRE5PVU5ETywKLSBMSU5VWF9NSUJfVENQU1BVUklPVVNSVE9TLAotIExJTlVYX01JQl9UQ1BNRDVOT1RGT1VORCwKLSBMSU5VWF9NSUJfVENQTUQ1VU5FWFBFQ1RFRCwKKyAgTElOVVhfTUlCX1RDUE1ENU5PVEZPVU5ELAorICBMSU5VWF9NSUJfVENQTUQ1VU5FWFBFQ1RFRCwKKyAgTElOVVhfTUlCX1NBQ0tTSElGVEVELAorICBMSU5VWF9NSUJfU0FDS01FUkdFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1NBQ0tTSElGVEVELAotIExJTlVYX01JQl9TQUNLTUVSR0VELAotIExJTlVYX01JQl9TQUNLU0hJRlRGQUxMQkFDSywKLSBMSU5VWF9NSUJfVENQQkFDS0xPR0RST1AsCisgIExJTlVYX01JQl9TQUNLU0hJRlRGQUxMQkFDSywKKyAgTElOVVhfTUlCX1RDUEJBQ0tMT0dEUk9QLAorICBMSU5VWF9NSUJfVENQTUlOVFRMRFJPUCwKKyAgTElOVVhfTUlCX1RDUERFRkVSQUNDRVBURFJPUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUE1JTlRUTERST1AsCi0gTElOVVhfTUlCX1RDUERFRkVSQUNDRVBURFJPUCwKLSBMSU5VWF9NSUJfSVBSUEZJTFRFUiwKLSBMSU5VWF9NSUJfVENQVElNRVdBSVRPVkVSRkxPVywKKyAgTElOVVhfTUlCX0lQUlBGSUxURVIsCisgIExJTlVYX01JQl9UQ1BUSU1FV0FJVE9WRVJGTE9XLAorICBMSU5VWF9NSUJfVENQUkVRUUZVTExET0NPT0tJRVMsCisgIExJTlVYX01JQl9UQ1BSRVFRRlVMTERST1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BSRVFRRlVMTERPQ09PS0lFUywKLSBMSU5VWF9NSUJfVENQUkVRUUZVTExEUk9QLAotIExJTlVYX01JQl9UQ1BSRVRSQU5TRkFJTCwKLSBMSU5VWF9NSUJfVENQUkNWQ09BTEVTQ0UsCisgIExJTlVYX01JQl9UQ1BSRVRSQU5TRkFJTCwKKyAgTElOVVhfTUlCX1RDUFJDVkNPQUxFU0NFLAorICBMSU5VWF9NSUJfVENQT0ZPUVVFVUUsCisgIExJTlVYX01JQl9UQ1BPRk9EUk9QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQT0ZPUVVFVUUsCi0gTElOVVhfTUlCX1RDUE9GT0RST1AsCi0gTElOVVhfTUlCX1RDUE9GT01FUkdFLAotIExJTlVYX01JQl9UQ1BDSEFMTEVOR0VBQ0ssCisgIExJTlVYX01JQl9UQ1BPRk9NRVJHRSwKKyAgTElOVVhfTUlCX1RDUENIQUxMRU5HRUFDSywKKyAgTElOVVhfTUlCX1RDUFNZTkNIQUxMRU5HRSwKKyAgTElOVVhfTUlCX1RDUEZBU1RPUEVOQUNUSVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQU1lOQ0hBTExFTkdFLAotIExJTlVYX01JQl9UQ1BGQVNUT1BFTkFDVElWRSwKLSBMSU5VWF9NSUJfVENQRkFTVE9QRU5QQVNTSVZFLAotIExJTlVYX01JQl9UQ1BGQVNUT1BFTlBBU1NJVkVGQUlMLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5BQ1RJVkVGQUlMLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5QQVNTSVZFLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5QQVNTSVZFRkFJTCwKKyAgTElOVVhfTUlCX1RDUEZBU1RPUEVOTElTVEVOT1ZFUkZMT1csCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BGQVNUT1BFTkxJU1RFTk9WRVJGTE9XLAotIExJTlVYX01JQl9UQ1BGQVNUT1BFTkNPT0tJRVJFUUQsCi0gTElOVVhfTUlCX1RDUFNQVVJJT1VTX1JUWF9IT1NUUVVFVUVTLAotIExJTlVYX01JQl9CVVNZUE9MTFJYUEFDS0VUUywKKyAgTElOVVhfTUlCX1RDUEZBU1RPUEVOQ09PS0lFUkVRRCwKKyAgTElOVVhfTUlCX1RDUFNQVVJJT1VTX1JUWF9IT1NUUVVFVUVTLAorICBMSU5VWF9NSUJfQlVTWVBPTExSWFBBQ0tFVFMsCisgIExJTlVYX01JQl9UQ1BBVVRPQ09SS0lORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUEFVVE9DT1JLSU5HLAotIF9fTElOVVhfTUlCX01BWAorICBMSU5VWF9NSUJfVENQRlJPTVpFUk9XSU5ET1dBRFYsCisgIExJTlVYX01JQl9UQ1BUT1pFUk9XSU5ET1dBRFYsCisgIExJTlVYX01JQl9UQ1BXQU5UWkVST1dJTkRPV0FEViwKKyAgTElOVVhfTUlCX1RDUFNZTlJFVFJBTlMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBMSU5VWF9NSUJfVENQT1JJR0RBVEFTRU5ULAorICBfX0xJTlVYX01JQl9NQVgKIH07Ci1lbnVtCitlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gTElOVVhfTUlCX1hGUk1OVU0gPSAwLAotIExJTlVYX01JQl9YRlJNSU5FUlJPUiwKLSBMSU5VWF9NSUJfWEZSTUlOQlVGRkVSRVJST1IsCisgIExJTlVYX01JQl9YRlJNTlVNID0gMCwKKyAgTElOVVhfTUlCX1hGUk1JTkVSUk9SLAorICBMSU5VWF9NSUJfWEZSTUlOQlVGRkVSRVJST1IsCisgIExJTlVYX01JQl9YRlJNSU5IRFJFUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1hGUk1JTkhEUkVSUk9SLAotIExJTlVYX01JQl9YRlJNSU5OT1NUQVRFUywKLSBMSU5VWF9NSUJfWEZSTUlOU1RBVEVQUk9UT0VSUk9SLAotIExJTlVYX01JQl9YRlJNSU5TVEFURU1PREVFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1JTk5PU1RBVEVTLAorICBMSU5VWF9NSUJfWEZSTUlOU1RBVEVQUk9UT0VSUk9SLAorICBMSU5VWF9NSUJfWEZSTUlOU1RBVEVNT0RFRVJST1IsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURVNFUUVSUk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfWEZSTUlOU1RBVEVTRVFFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTUlOU1RBVEVFWFBJUkVELAotIExJTlVYX01JQl9YRlJNSU5TVEFURU1JU01BVENILAotIExJTlVYX01JQl9YRlJNSU5TVEFURUlOVkFMSUQsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURUVYUElSRUQsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURU1JU01BVENILAorICBMSU5VWF9NSUJfWEZSTUlOU1RBVEVJTlZBTElELAorICBMSU5VWF9NSUJfWEZSTUlOVE1QTE1JU01BVENILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfWEZSTUlOVE1QTE1JU01BVENILAotIExJTlVYX01JQl9YRlJNSU5OT1BPTFMsCi0gTElOVVhfTUlCX1hGUk1JTlBPTEJMT0NLLAotIExJTlVYX01JQl9YRlJNSU5QT0xFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1JTk5PUE9MUywKKyAgTElOVVhfTUlCX1hGUk1JTlBPTEJMT0NLLAorICBMSU5VWF9NSUJfWEZSTUlOUE9MRVJST1IsCisgIExJTlVYX01JQl9YRlJNT1VURVJST1IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9YRlJNT1VURVJST1IsCi0gTElOVVhfTUlCX1hGUk1PVVRCVU5ETEVHRU5FUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVEJVTkRMRUNIRUNLRVJST1IsCi0gTElOVVhfTUlCX1hGUk1PVVROT1NUQVRFUywKKyAgTElOVVhfTUlCX1hGUk1PVVRCVU5ETEVHRU5FUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1PVVRCVU5ETEVDSEVDS0VSUk9SLAorICBMSU5VWF9NSUJfWEZSTU9VVE5PU1RBVEVTLAorICBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFUFJPVE9FUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1hGUk1PVVRTVEFURVBST1RPRVJST1IsCi0gTElOVVhfTUlCX1hGUk1PVVRTVEFURU1PREVFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFU0VRRVJST1IsCi0gTElOVVhfTUlCX1hGUk1PVVRTVEFURUVYUElSRUQsCisgIExJTlVYX01JQl9YRlJNT1VUU1RBVEVNT0RFRVJST1IsCisgIExJTlVYX01JQl9YRlJNT1VUU1RBVEVTRVFFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1PVVRTVEFURUVYUElSRUQsCisgIExJTlVYX01JQl9YRlJNT1VUUE9MQkxPQ0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9YRlJNT1VUUE9MQkxPQ0ssCi0gTElOVVhfTUlCX1hGUk1PVVRQT0xERUFELAotIExJTlVYX01JQl9YRlJNT1VUUE9MRVJST1IsCi0gTElOVVhfTUlCX1hGUk1GV0RIRFJFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1PVVRQT0xERUFELAorICBMSU5VWF9NSUJfWEZSTU9VVFBPTEVSUk9SLAorICBMSU5VWF9NSUJfWEZSTUZXREhEUkVSUk9SLAorICBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1hGUk1PVVRTVEFURUlOVkFMSUQsCi0gTElOVVhfTUlCX1hGUk1BQ1FVSVJFRVJST1IsCi0gX19MSU5VWF9NSUJfWEZSTU1BWAorICBMSU5VWF9NSUJfWEZSTUFDUVVJUkVFUlJPUiwKKyAgX19MSU5VWF9NSUJfWEZSTU1BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvY2tfZGlhZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb2NrX2RpYWcuaAppbmRleCAwZGMyOTAyLi4wNTI3NzllIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvY2tfZGlhZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja19kaWFnLmgKQEAgLTIyLDIyICsyMiwyMiBAQAogI2RlZmluZSBTT0NLX0RJQUdfQllfRkFNSUxZIDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2tfZGlhZ19yZXEgewotIF9fdTggc2RpYWdfZmFtaWx5OwotIF9fdTggc2RpYWdfcHJvdG9jb2w7CisgIF9fdTggc2RpYWdfZmFtaWx5OworICBfX3U4IHNkaWFnX3Byb3RvY29sOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBTS19NRU1JTkZPX1JNRU1fQUxMT0MsCi0gU0tfTUVNSU5GT19SQ1ZCVUYsCi0gU0tfTUVNSU5GT19XTUVNX0FMTE9DLAorICBTS19NRU1JTkZPX1JNRU1fQUxMT0MsCisgIFNLX01FTUlORk9fUkNWQlVGLAorICBTS19NRU1JTkZPX1dNRU1fQUxMT0MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNLX01FTUlORk9fU05EQlVGLAotIFNLX01FTUlORk9fRldEX0FMTE9DLAotIFNLX01FTUlORk9fV01FTV9RVUVVRUQsCi0gU0tfTUVNSU5GT19PUFRNRU0sCisgIFNLX01FTUlORk9fU05EQlVGLAorICBTS19NRU1JTkZPX0ZXRF9BTExPQywKKyAgU0tfTUVNSU5GT19XTUVNX1FVRVVFRCwKKyAgU0tfTUVNSU5GT19PUFRNRU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNLX01FTUlORk9fQkFDS0xPRywKLSBTS19NRU1JTkZPX1ZBUlMsCisgIFNLX01FTUlORk9fQkFDS0xPRywKKyAgU0tfTUVNSU5GT19WQVJTLAogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja2V0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvY2tldC5oCmluZGV4IDIzYWFlNzIuLjI5MmRkMTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja2V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb2NrZXQuaApAQCAtMTksMTIgKzE5LDEyIEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX1NPQ0tFVF9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX1NPQ0tFVF9ICiAjZGVmaW5lIF9LX1NTX01BWFNJWkUgMTI4Ci0jZGVmaW5lIF9LX1NTX0FMSUdOU0laRSAoX19hbGlnbm9mX18gKHN0cnVjdCBzb2NrYWRkciAqKSkKKyNkZWZpbmUgX0tfU1NfQUxJR05TSVpFIChfX2FsaWdub2ZfXyhzdHJ1Y3Qgc29ja2FkZHIgKikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBfX2tlcm5lbF9zYV9mYW1pbHlfdDsKIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzc19mYW1pbHk7Ci0gY2hhciBfX2RhdGFbX0tfU1NfTUFYU0laRSAtIHNpemVvZih1bnNpZ25lZCBzaG9ydCldOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzc19mYW1pbHk7CisgIGNoYXIgX19kYXRhW19LX1NTX01BWFNJWkUgLSBzaXplb2YodW5zaWduZWQgc2hvcnQpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChhbGlnbmVkKF9LX1NTX0FMSUdOU0laRSkpKTsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChfS19TU19BTElHTlNJWkUpKSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvbS5oCmluZGV4IDEwOTlkZDQuLmNiNzZlNzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb20uaApAQCAtMjIsNDYgKzIyLDQ2IEBACiAjZGVmaW5lIFNPTV9QQUdFU0laRSA0MDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvbV9oZHIgewotIHNob3J0IHN5c3RlbV9pZDsKLSBzaG9ydCBhX21hZ2ljOwotIHVuc2lnbmVkIGludCB2ZXJzaW9uX2lkOworICBzaG9ydCBzeXN0ZW1faWQ7CisgIHNob3J0IGFfbWFnaWM7CisgIHVuc2lnbmVkIGludCB2ZXJzaW9uX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXNwZWMgZmlsZV90aW1lOwotIHVuc2lnbmVkIGludCBlbnRyeV9zcGFjZTsKLSB1bnNpZ25lZCBpbnQgZW50cnlfc3Vic3BhY2U7Ci0gdW5zaWduZWQgaW50IGVudHJ5X29mZnNldDsKKyAgc3RydWN0IHRpbWVzcGVjIGZpbGVfdGltZTsKKyAgdW5zaWduZWQgaW50IGVudHJ5X3NwYWNlOworICB1bnNpZ25lZCBpbnQgZW50cnlfc3Vic3BhY2U7CisgIHVuc2lnbmVkIGludCBlbnRyeV9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhdXhfaGVhZGVyX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBhdXhfaGVhZGVyX3NpemU7Ci0gdW5zaWduZWQgaW50IHNvbV9sZW5ndGg7Ci0gdW5zaWduZWQgaW50IHByZXN1bWVkX2RwOworICB1bnNpZ25lZCBpbnQgYXV4X2hlYWRlcl9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IGF1eF9oZWFkZXJfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHNvbV9sZW5ndGg7CisgIHVuc2lnbmVkIGludCBwcmVzdW1lZF9kcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNwYWNlX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBzcGFjZV90b3RhbDsKLSB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IHN1YnNwYWNlX3RvdGFsOworICB1bnNpZ25lZCBpbnQgc3BhY2VfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBzcGFjZV90b3RhbDsKKyAgdW5zaWduZWQgaW50IHN1YnNwYWNlX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfdG90YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsb2FkZXJfZml4dXBfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IGxvYWRlcl9maXh1cF90b3RhbDsKLSB1bnNpZ25lZCBpbnQgc3BhY2Vfc3RyaW5nc19sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgc3BhY2Vfc3RyaW5nc19zaXplOworICB1bnNpZ25lZCBpbnQgbG9hZGVyX2ZpeHVwX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgbG9hZGVyX2ZpeHVwX3RvdGFsOworICB1bnNpZ25lZCBpbnQgc3BhY2Vfc3RyaW5nc19sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IHNwYWNlX3N0cmluZ3Nfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluaXRfYXJyYXlfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IGluaXRfYXJyYXlfdG90YWw7Ci0gdW5zaWduZWQgaW50IGNvbXBpbGVyX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBjb21waWxlcl90b3RhbDsKKyAgdW5zaWduZWQgaW50IGluaXRfYXJyYXlfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBpbml0X2FycmF5X3RvdGFsOworICB1bnNpZ25lZCBpbnQgY29tcGlsZXJfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBjb21waWxlcl90b3RhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN5bWJvbF9sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgc3ltYm9sX3RvdGFsOwotIHVuc2lnbmVkIGludCBmaXh1cF9yZXF1ZXN0X2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBmaXh1cF9yZXF1ZXN0X3RvdGFsOworICB1bnNpZ25lZCBpbnQgc3ltYm9sX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgc3ltYm9sX3RvdGFsOworICB1bnNpZ25lZCBpbnQgZml4dXBfcmVxdWVzdF9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IGZpeHVwX3JlcXVlc3RfdG90YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzeW1ib2xfc3RyaW5nc19sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgc3ltYm9sX3N0cmluZ3Nfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdW5sb2FkYWJsZV9zcF9sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgdW5sb2FkYWJsZV9zcF9zaXplOworICB1bnNpZ25lZCBpbnQgc3ltYm9sX3N0cmluZ3NfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBzeW1ib2xfc3RyaW5nc19zaXplOworICB1bnNpZ25lZCBpbnQgdW5sb2FkYWJsZV9zcF9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IHVubG9hZGFibGVfc3Bfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNoZWNrc3VtOworICB1bnNpZ25lZCBpbnQgY2hlY2tzdW07CiB9OwogI2RlZmluZSBTT01fU0lEX1BBUklTQ18xXzAgMHgwMjBiCiAjZGVmaW5lIFNPTV9TSURfUEFSSVNDXzFfMSAweDAyMTAKQEAgLTgxLDkwICs4MSw5MCBAQAogI2RlZmluZSBTT01fSURfTkVXIDg3MTAyNDEyCiBzdHJ1Y3QgYXV4X2lkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG1hbmRhdG9yeSA6MTsKLSB1bnNpZ25lZCBpbnQgY29weSA6MTsKLSB1bnNpZ25lZCBpbnQgYXBwZW5kIDoxOwotIHVuc2lnbmVkIGludCBpZ25vcmUgOjE7CisgIHVuc2lnbmVkIGludCBtYW5kYXRvcnkgOiAxOworICB1bnNpZ25lZCBpbnQgY29weSA6IDE7CisgIHVuc2lnbmVkIGludCBhcHBlbmQgOiAxOworICB1bnNpZ25lZCBpbnQgaWdub3JlIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlc2VydmVkIDoxMjsKLSB1bnNpZ25lZCBpbnQgdHlwZSA6MTY7Ci0gdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgdW5zaWduZWQgaW50IHJlc2VydmVkIDogMTI7CisgIHVuc2lnbmVkIGludCB0eXBlIDogMTY7CisgIHVuc2lnbmVkIGludCBsZW5ndGg7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb21fZXhlY19hdXhoZHIgewotIHN0cnVjdCBhdXhfaWQgc29tX2F1eGhkcjsKLSBpbnQgZXhlY190c2l6ZTsKLSBpbnQgZXhlY190bWVtOworICBzdHJ1Y3QgYXV4X2lkIHNvbV9hdXhoZHI7CisgIGludCBleGVjX3RzaXplOworICBpbnQgZXhlY190bWVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZXhlY190ZmlsZTsKLSBpbnQgZXhlY19kc2l6ZTsKLSBpbnQgZXhlY19kbWVtOwotIGludCBleGVjX2RmaWxlOworICBpbnQgZXhlY190ZmlsZTsKKyAgaW50IGV4ZWNfZHNpemU7CisgIGludCBleGVjX2RtZW07CisgIGludCBleGVjX2RmaWxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZXhlY19ic2l6ZTsKLSBpbnQgZXhlY19lbnRyeTsKLSBpbnQgZXhlY19mbGFnczsKLSBpbnQgZXhlY19iZmlsbDsKKyAgaW50IGV4ZWNfYnNpemU7CisgIGludCBleGVjX2VudHJ5OworICBpbnQgZXhlY19mbGFnczsKKyAgaW50IGV4ZWNfYmZpbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHVuaW9uIG5hbWVfcHQgewotIGNoYXIgKiBuX25hbWU7Ci0gdW5zaWduZWQgaW50IG5fc3RyeDsKKyAgY2hhciAqIG5fbmFtZTsKKyAgdW5zaWduZWQgaW50IG5fc3RyeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNwYWNlX2RpY3Rpb25hcnlfcmVjb3JkIHsKLSB1bmlvbiBuYW1lX3B0IG5hbWU7Ci0gdW5zaWduZWQgaW50IGlzX2xvYWRhYmxlIDoxOworICB1bmlvbiBuYW1lX3B0IG5hbWU7CisgIHVuc2lnbmVkIGludCBpc19sb2FkYWJsZSA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpc19kZWZpbmVkIDoxOwotIHVuc2lnbmVkIGludCBpc19wcml2YXRlIDoxOwotIHVuc2lnbmVkIGludCBoYXNfaW50ZXJtZWRpYXRlX2NvZGUgOjE7Ci0gdW5zaWduZWQgaW50IGlzX3RzcGVjaWZpYyA6MTsKKyAgdW5zaWduZWQgaW50IGlzX2RlZmluZWQgOiAxOworICB1bnNpZ25lZCBpbnQgaXNfcHJpdmF0ZSA6IDE7CisgIHVuc2lnbmVkIGludCBoYXNfaW50ZXJtZWRpYXRlX2NvZGUgOiAxOworICB1bnNpZ25lZCBpbnQgaXNfdHNwZWNpZmljIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlc2VydmVkIDoxMTsKLSB1bnNpZ25lZCBpbnQgc29ydF9rZXkgOjg7Ci0gdW5zaWduZWQgaW50IHJlc2VydmVkMiA6ODsKLSBpbnQgc3BhY2VfbnVtYmVyOworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOiAxMTsKKyAgdW5zaWduZWQgaW50IHNvcnRfa2V5IDogODsKKyAgdW5zaWduZWQgaW50IHJlc2VydmVkMiA6IDg7CisgIGludCBzcGFjZV9udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdWJzcGFjZV9pbmRleDsKLSB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfcXVhbnRpdHk7Ci0gaW50IGxvYWRlcl9maXhfaW5kZXg7Ci0gdW5zaWduZWQgaW50IGxvYWRlcl9maXhfcXVhbnRpdHk7CisgIGludCBzdWJzcGFjZV9pbmRleDsKKyAgdW5zaWduZWQgaW50IHN1YnNwYWNlX3F1YW50aXR5OworICBpbnQgbG9hZGVyX2ZpeF9pbmRleDsKKyAgdW5zaWduZWQgaW50IGxvYWRlcl9maXhfcXVhbnRpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpbml0X3BvaW50ZXJfaW5kZXg7Ci0gdW5zaWduZWQgaW50IGluaXRfcG9pbnRlcl9xdWFudGl0eTsKKyAgaW50IGluaXRfcG9pbnRlcl9pbmRleDsKKyAgdW5zaWduZWQgaW50IGluaXRfcG9pbnRlcl9xdWFudGl0eTsKIH07CiBzdHJ1Y3Qgc3Vic3BhY2VfZGljdGlvbmFyeV9yZWNvcmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3BhY2VfaW5kZXg7Ci0gdW5zaWduZWQgaW50IGFjY2Vzc19jb250cm9sX2JpdHMgOjc7Ci0gdW5zaWduZWQgaW50IG1lbW9yeV9yZXNpZGVudCA6MTsKLSB1bnNpZ25lZCBpbnQgZHVwX2NvbW1vbiA6MTsKKyAgaW50IHNwYWNlX2luZGV4OworICB1bnNpZ25lZCBpbnQgYWNjZXNzX2NvbnRyb2xfYml0cyA6IDc7CisgIHVuc2lnbmVkIGludCBtZW1vcnlfcmVzaWRlbnQgOiAxOworICB1bnNpZ25lZCBpbnQgZHVwX2NvbW1vbiA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpc19jb21tb24gOjE7Ci0gdW5zaWduZWQgaW50IHF1YWRyYW50IDoyOwotIHVuc2lnbmVkIGludCBpbml0aWFsbHlfZnJvemVuIDoxOwotIHVuc2lnbmVkIGludCBpc19maXJzdCA6MTsKKyAgdW5zaWduZWQgaW50IGlzX2NvbW1vbiA6IDE7CisgIHVuc2lnbmVkIGludCBxdWFkcmFudCA6IDI7CisgIHVuc2lnbmVkIGludCBpbml0aWFsbHlfZnJvemVuIDogMTsKKyAgdW5zaWduZWQgaW50IGlzX2ZpcnN0IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvZGVfb25seSA6MTsKLSB1bnNpZ25lZCBpbnQgc29ydF9rZXkgOjg7Ci0gdW5zaWduZWQgaW50IHJlcGxpY2F0ZV9pbml0IDoxOwotIHVuc2lnbmVkIGludCBjb250aW51YXRpb24gOjE7CisgIHVuc2lnbmVkIGludCBjb2RlX29ubHkgOiAxOworICB1bnNpZ25lZCBpbnQgc29ydF9rZXkgOiA4OworICB1bnNpZ25lZCBpbnQgcmVwbGljYXRlX2luaXQgOiAxOworICB1bnNpZ25lZCBpbnQgY29udGludWF0aW9uIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGlzX3RzcGVjaWZpYyA6MTsKLSB1bnNpZ25lZCBpbnQgaXNfY29tZGF0IDoxOwotIHVuc2lnbmVkIGludCByZXNlcnZlZCA6NDsKLSBpbnQgZmlsZV9sb2NfaW5pdF92YWx1ZTsKKyAgdW5zaWduZWQgaW50IGlzX3RzcGVjaWZpYyA6IDE7CisgIHVuc2lnbmVkIGludCBpc19jb21kYXQgOiAxOworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOiA0OworICBpbnQgZmlsZV9sb2NfaW5pdF92YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluaXRpYWxpemF0aW9uX2xlbmd0aDsKLSB1bnNpZ25lZCBpbnQgc3Vic3BhY2Vfc3RhcnQ7Ci0gdW5zaWduZWQgaW50IHN1YnNwYWNlX2xlbmd0aDsKLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQyIDo1OworICB1bnNpZ25lZCBpbnQgaW5pdGlhbGl6YXRpb25fbGVuZ3RoOworICB1bnNpZ25lZCBpbnQgc3Vic3BhY2Vfc3RhcnQ7CisgIHVuc2lnbmVkIGludCBzdWJzcGFjZV9sZW5ndGg7CisgIHVuc2lnbmVkIGludCByZXNlcnZlZDIgOiA1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYWxpZ25tZW50IDoyNzsKLSB1bmlvbiBuYW1lX3B0IG5hbWU7Ci0gaW50IGZpeHVwX3JlcXVlc3RfaW5kZXg7Ci0gdW5zaWduZWQgaW50IGZpeHVwX3JlcXVlc3RfcXVhbnRpdHk7CisgIHVuc2lnbmVkIGludCBhbGlnbm1lbnQgOiAyNzsKKyAgdW5pb24gbmFtZV9wdCBuYW1lOworICBpbnQgZml4dXBfcmVxdWVzdF9pbmRleDsKKyAgdW5zaWduZWQgaW50IGZpeHVwX3JlcXVlc3RfcXVhbnRpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb25ldC5oCmluZGV4IDM3MDRlOGMuLjFlMzQ4NDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29uZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvbmV0LmgKQEAgLTE4LDIzICsxOCwyMyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJTElOVVhfU09ORVRfSAogI2RlZmluZSBfVUFQSUxJTlVYX1NPTkVUX0gKLSNkZWZpbmUgX19TT05FVF9JVEVNUyAgIF9fSEFORExFX0lURU0oc2VjdGlvbl9iaXApOyAgICAgX19IQU5ETEVfSVRFTShsaW5lX2JpcCk7ICAgICBfX0hBTkRMRV9JVEVNKHBhdGhfYmlwKTsgICAgIF9fSEFORExFX0lURU0obGluZV9mZWJlKTsgICAgIF9fSEFORExFX0lURU0ocGF0aF9mZWJlKTsgICAgIF9fSEFORExFX0lURU0oY29ycl9oY3MpOyAgICAgX19IQU5ETEVfSVRFTSh1bmNvcnJfaGNzKTsgICAgIF9fSEFORExFX0lURU0odHhfY2VsbHMpOyAgICAgX19IQU5ETEVfSVRFTShyeF9jZWxscyk7CisjZGVmaW5lIF9fU09ORVRfSVRFTVMgX19IQU5ETEVfSVRFTShzZWN0aW9uX2JpcCk7IF9fSEFORExFX0lURU0obGluZV9iaXApOyBfX0hBTkRMRV9JVEVNKHBhdGhfYmlwKTsgX19IQU5ETEVfSVRFTShsaW5lX2ZlYmUpOyBfX0hBTkRMRV9JVEVNKHBhdGhfZmViZSk7IF9fSEFORExFX0lURU0oY29ycl9oY3MpOyBfX0hBTkRMRV9JVEVNKHVuY29ycl9oY3MpOyBfX0hBTkRMRV9JVEVNKHR4X2NlbGxzKTsgX19IQU5ETEVfSVRFTShyeF9jZWxscyk7CiBzdHJ1Y3Qgc29uZXRfc3RhdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19IQU5ETEVfSVRFTShpKSBpbnQgaQotIF9fU09ORVRfSVRFTVMKKyAgX19TT05FVF9JVEVNUwogI3VuZGVmIF9fSEFORExFX0lURU0KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPTkVUX0dFVFNUQVQgX0lPUignYScsQVRNSU9DX1BIWVRZUCxzdHJ1Y3Qgc29uZXRfc3RhdHMpCi0jZGVmaW5lIFNPTkVUX0dFVFNUQVRaIF9JT1IoJ2EnLEFUTUlPQ19QSFlUWVArMSxzdHJ1Y3Qgc29uZXRfc3RhdHMpCi0jZGVmaW5lIFNPTkVUX1NFVERJQUcgX0lPV1IoJ2EnLEFUTUlPQ19QSFlUWVArMixpbnQpCi0jZGVmaW5lIFNPTkVUX0NMUkRJQUcgX0lPV1IoJ2EnLEFUTUlPQ19QSFlUWVArMyxpbnQpCisjZGVmaW5lIFNPTkVUX0dFVFNUQVQgX0lPUignYScsIEFUTUlPQ19QSFlUWVAsIHN0cnVjdCBzb25ldF9zdGF0cykKKyNkZWZpbmUgU09ORVRfR0VUU1RBVFogX0lPUignYScsIEFUTUlPQ19QSFlUWVAgKyAxLCBzdHJ1Y3Qgc29uZXRfc3RhdHMpCisjZGVmaW5lIFNPTkVUX1NFVERJQUcgX0lPV1IoJ2EnLCBBVE1JT0NfUEhZVFlQICsgMiwgaW50KQorI2RlZmluZSBTT05FVF9DTFJESUFHIF9JT1dSKCdhJywgQVRNSU9DX1BIWVRZUCArIDMsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPTkVUX0dFVERJQUcgX0lPUignYScsQVRNSU9DX1BIWVRZUCs0LGludCkKLSNkZWZpbmUgU09ORVRfU0VURlJBTUlORyBfSU9XKCdhJyxBVE1JT0NfUEhZVFlQKzUsaW50KQotI2RlZmluZSBTT05FVF9HRVRGUkFNSU5HIF9JT1IoJ2EnLEFUTUlPQ19QSFlUWVArNixpbnQpCi0jZGVmaW5lIFNPTkVUX0dFVEZSU0VOU0UgX0lPUignYScsQVRNSU9DX1BIWVRZUCs3LCAgIHVuc2lnbmVkIGNoYXJbU09ORVRfRlJTRU5TRV9TSVpFXSkKKyNkZWZpbmUgU09ORVRfR0VURElBRyBfSU9SKCdhJywgQVRNSU9DX1BIWVRZUCArIDQsIGludCkKKyNkZWZpbmUgU09ORVRfU0VURlJBTUlORyBfSU9XKCdhJywgQVRNSU9DX1BIWVRZUCArIDUsIGludCkKKyNkZWZpbmUgU09ORVRfR0VURlJBTUlORyBfSU9SKCdhJywgQVRNSU9DX1BIWVRZUCArIDYsIGludCkKKyNkZWZpbmUgU09ORVRfR0VURlJTRU5TRSBfSU9SKCdhJywgQVRNSU9DX1BIWVRZUCArIDcsIHVuc2lnbmVkIGNoYXJbU09ORVRfRlJTRU5TRV9TSVpFXSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPTkVUX0lOU19TQklQIDEKICNkZWZpbmUgU09ORVRfSU5TX0xCSVAgMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb3VuZGNhcmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc291bmRjYXJkLmgKaW5kZXggMzUyZjY2ZC4uMTFhZjc2MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb3VuZGNhcmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvdW5kY2FyZC5oCkBAIC04MiwxMyArODIsMTMgQEAKICNkZWZpbmUgU0lPQ19PVVQgMHgyMDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lPQ19JTiAweDQwMDAwMDAwCi0jZGVmaW5lIFNJT0NfSU5PVVQgKFNJT0NfSU58U0lPQ19PVVQpCi0jZGVmaW5lIF9TSU8oeCx5KSAoKGludCkoU0lPQ19WT0lEfCh4PDw4KXx5KSkKLSNkZWZpbmUgX1NJT1IoeCx5LHQpICgoaW50KShTSU9DX09VVHwoKHNpemVvZih0KSZTSU9DUEFSTV9NQVNLKTw8MTYpfCh4PDw4KXx5KSkKKyNkZWZpbmUgU0lPQ19JTk9VVCAoU0lPQ19JTiB8IFNJT0NfT1VUKQorI2RlZmluZSBfU0lPKHgseSkgKChpbnQpIChTSU9DX1ZPSUQgfCAoeCA8PCA4KSB8IHkpKQorI2RlZmluZSBfU0lPUih4LHksdCkgKChpbnQpIChTSU9DX09VVCB8ICgoc2l6ZW9mKHQpICYgU0lPQ1BBUk1fTUFTSykgPDwgMTYpIHwgKHggPDwgOCkgfCB5KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9TSU9XKHgseSx0KSAoKGludCkoU0lPQ19JTnwoKHNpemVvZih0KSZTSU9DUEFSTV9NQVNLKTw8MTYpfCh4PDw4KXx5KSkKLSNkZWZpbmUgX1NJT1dSKHgseSx0KSAoKGludCkoU0lPQ19JTk9VVHwoKHNpemVvZih0KSZTSU9DUEFSTV9NQVNLKTw8MTYpfCh4PDw4KXx5KSkKLSNkZWZpbmUgX1NJT0NfU0laRSh4KSAoKHg+PjE2KSZTSU9DUEFSTV9NQVNLKQorI2RlZmluZSBfU0lPVyh4LHksdCkgKChpbnQpIChTSU9DX0lOIHwgKChzaXplb2YodCkgJiBTSU9DUEFSTV9NQVNLKSA8PCAxNikgfCAoeCA8PCA4KSB8IHkpKQorI2RlZmluZSBfU0lPV1IoeCx5LHQpICgoaW50KSAoU0lPQ19JTk9VVCB8ICgoc2l6ZW9mKHQpICYgU0lPQ1BBUk1fTUFTSykgPDwgMTYpIHwgKHggPDwgOCkgfCB5KSkKKyNkZWZpbmUgX1NJT0NfU0laRSh4KSAoKHggPj4gMTYpICYgU0lPQ1BBUk1fTUFTSykKICNkZWZpbmUgX1NJT0NfRElSKHgpICh4ICYgMHhmMDAwMDAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9TSU9DX05PTkUgU0lPQ19WT0lECkBAIC05Nyw2NDIgKzk3LDYzNyBAQAogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0jZGVmaW5lIFNORENUTF9TRVFfUkVTRVQgX1NJTyAoJ1EnLCAwKQotI2RlZmluZSBTTkRDVExfU0VRX1NZTkMgX1NJTyAoJ1EnLCAxKQorI2RlZmluZSBTTkRDVExfU0VRX1JFU0VUIF9TSU8oJ1EnLCAwKQorI2RlZmluZSBTTkRDVExfU0VRX1NZTkMgX1NJTygnUScsIDEpCiAjZGVmaW5lIFNORENUTF9TWU5USF9JTkZPIF9TSU9XUignUScsIDIsIHN0cnVjdCBzeW50aF9pbmZvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX1NFUV9DVFJMUkFURSBfU0lPV1IoJ1EnLCAzLCBpbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfR0VUT1VUQ09VTlQgX1NJT1IgKCdRJywgNCwgaW50KQotI2RlZmluZSBTTkRDVExfU0VRX0dFVElOQ09VTlQgX1NJT1IgKCdRJywgNSwgaW50KQotI2RlZmluZSBTTkRDVExfU0VRX1BFUkNNT0RFIF9TSU9XICgnUScsIDYsIGludCkKKyNkZWZpbmUgU05EQ1RMX1NFUV9HRVRPVVRDT1VOVCBfU0lPUignUScsIDQsIGludCkKKyNkZWZpbmUgU05EQ1RMX1NFUV9HRVRJTkNPVU5UIF9TSU9SKCdRJywgNSwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX1BFUkNNT0RFIF9TSU9XKCdRJywgNiwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0ZNX0xPQURfSU5TVFIgX1NJT1cgKCdRJywgNywgc3RydWN0IHNiaV9pbnN0cnVtZW50KQotI2RlZmluZSBTTkRDVExfU0VRX1RFU1RNSURJIF9TSU9XICgnUScsIDgsIGludCkKLSNkZWZpbmUgU05EQ1RMX1NFUV9SRVNFVFNBTVBMRVMgX1NJT1cgKCdRJywgOSwgaW50KQotI2RlZmluZSBTTkRDVExfU0VRX05SU1lOVEhTIF9TSU9SICgnUScsMTAsIGludCkKKyNkZWZpbmUgU05EQ1RMX0ZNX0xPQURfSU5TVFIgX1NJT1coJ1EnLCA3LCBzdHJ1Y3Qgc2JpX2luc3RydW1lbnQpCisjZGVmaW5lIFNORENUTF9TRVFfVEVTVE1JREkgX1NJT1coJ1EnLCA4LCBpbnQpCisjZGVmaW5lIFNORENUTF9TRVFfUkVTRVRTQU1QTEVTIF9TSU9XKCdRJywgOSwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX05SU1lOVEhTIF9TSU9SKCdRJywgMTAsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9TRVFfTlJNSURJUyBfU0lPUiAoJ1EnLDExLCBpbnQpCi0jZGVmaW5lIFNORENUTF9NSURJX0lORk8gX1NJT1dSKCdRJywxMiwgc3RydWN0IG1pZGlfaW5mbykKLSNkZWZpbmUgU05EQ1RMX1NFUV9USFJFU0hPTEQgX1NJT1cgKCdRJywxMywgaW50KQotI2RlZmluZSBTTkRDVExfU1lOVEhfTUVNQVZMIF9TSU9XUignUScsMTQsIGludCkKKyNkZWZpbmUgU05EQ1RMX1NFUV9OUk1JRElTIF9TSU9SKCdRJywgMTEsIGludCkKKyNkZWZpbmUgU05EQ1RMX01JRElfSU5GTyBfU0lPV1IoJ1EnLCAxMiwgc3RydWN0IG1pZGlfaW5mbykKKyNkZWZpbmUgU05EQ1RMX1NFUV9USFJFU0hPTEQgX1NJT1coJ1EnLCAxMywgaW50KQorI2RlZmluZSBTTkRDVExfU1lOVEhfTUVNQVZMIF9TSU9XUignUScsIDE0LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRk1fNE9QX0VOQUJMRSBfU0lPVyAoJ1EnLDE1LCBpbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfUEFOSUMgX1NJTyAoJ1EnLDE3KQotI2RlZmluZSBTTkRDVExfU0VRX09VVE9GQkFORCBfU0lPVyAoJ1EnLDE4LCBzdHJ1Y3Qgc2VxX2V2ZW50X3JlYykKLSNkZWZpbmUgU05EQ1RMX1NFUV9HRVRUSU1FIF9TSU9SICgnUScsMTksIGludCkKKyNkZWZpbmUgU05EQ1RMX0ZNXzRPUF9FTkFCTEUgX1NJT1coJ1EnLCAxNSwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX1BBTklDIF9TSU8oJ1EnLCAxNykKKyNkZWZpbmUgU05EQ1RMX1NFUV9PVVRPRkJBTkQgX1NJT1coJ1EnLCAxOCwgc3RydWN0IHNlcV9ldmVudF9yZWMpCisjZGVmaW5lIFNORENUTF9TRVFfR0VUVElNRSBfU0lPUignUScsIDE5LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfU1lOVEhfSUQgX1NJT1dSKCdRJywyMCwgc3RydWN0IHN5bnRoX2luZm8pCi0jZGVmaW5lIFNORENUTF9TWU5USF9DT05UUk9MIF9TSU9XUignUScsMjEsIHN0cnVjdCBzeW50aF9jb250cm9sKQotI2RlZmluZSBTTkRDVExfU1lOVEhfUkVNT1ZFU0FNUExFIF9TSU9XUignUScsMjIsIHN0cnVjdCByZW1vdmVfc2FtcGxlKQotdHlwZWRlZiBzdHJ1Y3Qgc3ludGhfY29udHJvbAorI2RlZmluZSBTTkRDVExfU1lOVEhfSUQgX1NJT1dSKCdRJywgMjAsIHN0cnVjdCBzeW50aF9pbmZvKQorI2RlZmluZSBTTkRDVExfU1lOVEhfQ09OVFJPTCBfU0lPV1IoJ1EnLCAyMSwgc3RydWN0IHN5bnRoX2NvbnRyb2wpCisjZGVmaW5lIFNORENUTF9TWU5USF9SRU1PVkVTQU1QTEUgX1NJT1dSKCdRJywgMjIsIHN0cnVjdCByZW1vdmVfc2FtcGxlKQordHlwZWRlZiBzdHJ1Y3Qgc3ludGhfY29udHJvbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIGludCBkZXZubzsKLSBjaGFyIGRhdGFbNDAwMF07Ci19c3ludGhfY29udHJvbDsKKyAgaW50IGRldm5vOworICBjaGFyIGRhdGFbNDAwMF07Cit9IHN5bnRoX2NvbnRyb2w7Cit0eXBlZGVmIHN0cnVjdCByZW1vdmVfc2FtcGxlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi10eXBlZGVmIHN0cnVjdCByZW1vdmVfc2FtcGxlCi17Ci0gaW50IGRldm5vOwotIGludCBiYW5rbm87Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpbnN0cm5vOworICBpbnQgZGV2bm87CisgIGludCBiYW5rbm87CisgIGludCBpbnN0cm5vOwogfSByZW1vdmVfc2FtcGxlOwotdHlwZWRlZiBzdHJ1Y3Qgc2VxX2V2ZW50X3JlYyB7Ci0gdW5zaWduZWQgY2hhciBhcnJbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBzdHJ1Y3Qgc2VxX2V2ZW50X3JlYyB7CisgIHVuc2lnbmVkIGNoYXIgYXJyWzhdOwogfSBzZXFfZXZlbnRfcmVjOwogI2RlZmluZSBTTkRDVExfVE1SX1RJTUVCQVNFIF9TSU9XUignVCcsIDEsIGludCkKLSNkZWZpbmUgU05EQ1RMX1RNUl9TVEFSVCBfU0lPICgnVCcsIDIpCi0jZGVmaW5lIFNORENUTF9UTVJfU1RPUCBfU0lPICgnVCcsIDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfVE1SX0NPTlRJTlVFIF9TSU8gKCdUJywgNCkKKyNkZWZpbmUgU05EQ1RMX1RNUl9TVEFSVCBfU0lPKCdUJywgMikKKyNkZWZpbmUgU05EQ1RMX1RNUl9TVE9QIF9TSU8oJ1QnLCAzKQorI2RlZmluZSBTTkRDVExfVE1SX0NPTlRJTlVFIF9TSU8oJ1QnLCA0KQogI2RlZmluZSBTTkRDVExfVE1SX1RFTVBPIF9TSU9XUignVCcsIDUsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORENUTF9UTVJfU09VUkNFIF9TSU9XUignVCcsIDYsIGludCkKICNkZWZpbmUgVE1SX0lOVEVSTkFMIDB4MDAwMDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRNUl9FWFRFUk5BTCAweDAwMDAwMDAyCiAjZGVmaW5lIFRNUl9NT0RFX01JREkgMHgwMDAwMDAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVE1SX01PREVfRlNLIDB4MDAwMDAwMjAKICNkZWZpbmUgVE1SX01PREVfQ0xTIDB4MDAwMDAwNDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRNUl9NT0RFX1NNUFRFIDB4MDAwMDAwODAKLSNkZWZpbmUgU05EQ1RMX1RNUl9NRVRST05PTUUgX1NJT1cgKCdUJywgNywgaW50KQotI2RlZmluZSBTTkRDVExfVE1SX1NFTEVDVCBfU0lPVyAoJ1QnLCA4LCBpbnQpCi0jZGVmaW5lIF9MSU5VWF9QQVRDSEtFWV9IX0lORElSRUNUCisjZGVmaW5lIFNORENUTF9UTVJfTUVUUk9OT01FIF9TSU9XKCdUJywgNywgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EQ1RMX1RNUl9TRUxFQ1QgX1NJT1coJ1QnLCA4LCBpbnQpCisjZGVmaW5lIF9MSU5VWF9QQVRDSEtFWV9IX0lORElSRUNUCiAjaW5jbHVkZSA8bGludXgvcGF0Y2hrZXkuaD4KICN1bmRlZiBfTElOVVhfUEFUQ0hLRVlfSF9JTkRJUkVDVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0JZVEVfT1JERVIKICNpZiBfX0JZVEVfT1JERVIgPT0gX19CSUdfRU5ESUFOCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBRk1UX1MxNl9ORSBBRk1UX1MxNl9CRQotI2VsaWYgX19CWVRFX09SREVSID09IF9fTElUVExFX0VORElBTgorI2VsaWYgX19CWVRFX09SREVSPT1fX0xJVFRMRV9FTkRJQU4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfUzE2X05FIEFGTVRfUzE2X0xFCiAjZWxzZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlcnJvciAiY291bGQgbm90IGRldGVybWluZSBieXRlIG9yZGVyIgogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiBzdHJ1Y3QgcGF0Y2hfaW5mbyB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGtleTsKKyAgdW5zaWduZWQgc2hvcnQga2V5OwogI2RlZmluZSBXQVZFX1BBVENIIF9QQVRDSEtFWSgweDA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1VTX1BBVENIIFdBVkVfUEFUQ0gKICNkZWZpbmUgV0FWRUZST05UX1BBVENIIF9QQVRDSEtFWSgweDA2KQorICBzaG9ydCBkZXZpY2Vfbm87CisgIHNob3J0IGluc3RyX25vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBkZXZpY2Vfbm87Ci0gc2hvcnQgaW5zdHJfbm87Ci0gdW5zaWduZWQgaW50IG1vZGU7CisgIHVuc2lnbmVkIGludCBtb2RlOwogI2RlZmluZSBXQVZFXzE2X0JJVFMgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgV0FWRV9VTlNJR05FRCAweDAyCiAjZGVmaW5lIFdBVkVfTE9PUElORyAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX0JJRElSX0xPT1AgMHgwOAogI2RlZmluZSBXQVZFX0xPT1BfQkFDSyAweDEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX1NVU1RBSU5fT04gMHgyMAogI2RlZmluZSBXQVZFX0VOVkVMT1BFUyAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX0ZBU1RfUkVMRUFTRSAweDgwCiAjZGVmaW5lIFdBVkVfVklCUkFUTyAweDAwMDEwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX1RSRU1PTE8gMHgwMDAyMDAwMAogI2RlZmluZSBXQVZFX1NDQUxFIDB4MDAwNDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVkVfRlJBQ1RJT05TIDB4MDAwODAwMDAKICNkZWZpbmUgV0FWRV9ST00gMHg0MDAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgV0FWRV9NVUxBVyAweDIwMDAwMDAwCi0gaW50IGxlbjsKLSBpbnQgbG9vcF9zdGFydCwgbG9vcF9lbmQ7Ci0gdW5zaWduZWQgaW50IGJhc2VfZnJlcTsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGJhc2Vfbm90ZTsKLSB1bnNpZ25lZCBpbnQgaGlnaF9ub3RlOwotIHVuc2lnbmVkIGludCBsb3dfbm90ZTsKLSBpbnQgcGFubmluZzsKKyAgaW50IGxvb3Bfc3RhcnQsIGxvb3BfZW5kOworICB1bnNpZ25lZCBpbnQgYmFzZV9mcmVxOworICB1bnNpZ25lZCBpbnQgYmFzZV9ub3RlOworICB1bnNpZ25lZCBpbnQgaGlnaF9ub3RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGV0dW5pbmc7Ci0gdW5zaWduZWQgY2hhciBlbnZfcmF0ZVsgNiBdOwotIHVuc2lnbmVkIGNoYXIgZW52X29mZnNldFsgNiBdOwotIHVuc2lnbmVkIGNoYXIgdHJlbW9sb19zd2VlcDsKKyAgdW5zaWduZWQgaW50IGxvd19ub3RlOworICBpbnQgcGFubmluZzsKKyAgaW50IGRldHVuaW5nOworICB1bnNpZ25lZCBjaGFyIGVudl9yYXRlWzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHRyZW1vbG9fcmF0ZTsKLSB1bnNpZ25lZCBjaGFyIHRyZW1vbG9fZGVwdGg7Ci0gdW5zaWduZWQgY2hhciB2aWJyYXRvX3N3ZWVwOwotIHVuc2lnbmVkIGNoYXIgdmlicmF0b19yYXRlOworICB1bnNpZ25lZCBjaGFyIGVudl9vZmZzZXRbNl07CisgIHVuc2lnbmVkIGNoYXIgdHJlbW9sb19zd2VlcDsKKyAgdW5zaWduZWQgY2hhciB0cmVtb2xvX3JhdGU7CisgIHVuc2lnbmVkIGNoYXIgdHJlbW9sb19kZXB0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2aWJyYXRvX2RlcHRoOwotIGludCBzY2FsZV9mcmVxdWVuY3k7Ci0gdW5zaWduZWQgaW50IHNjYWxlX2ZhY3RvcjsKLSBpbnQgdm9sdW1lOworICB1bnNpZ25lZCBjaGFyIHZpYnJhdG9fc3dlZXA7CisgIHVuc2lnbmVkIGNoYXIgdmlicmF0b19yYXRlOworICB1bnNpZ25lZCBjaGFyIHZpYnJhdG9fZGVwdGg7CisgIGludCBzY2FsZV9mcmVxdWVuY3k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmcmFjdGlvbnM7Ci0gaW50IHJlc2VydmVkMTsKLSBpbnQgc3BhcmVbMl07Ci0gY2hhciBkYXRhWzFdOworICB1bnNpZ25lZCBpbnQgc2NhbGVfZmFjdG9yOworICBpbnQgdm9sdW1lOworICBpbnQgZnJhY3Rpb25zOworICBpbnQgcmVzZXJ2ZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICBpbnQgc3BhcmVbMl07CisgIGNoYXIgZGF0YVsxXTsKK307CiBzdHJ1Y3Qgc3lzZXhfaW5mbyB7Ci0gc2hvcnQga2V5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2hvcnQga2V5OwogI2RlZmluZSBTWVNFWF9QQVRDSCBfUEFUQ0hLRVkoMHgwNSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BVUlfUEFUQ0ggX1BBVENIS0VZKDB4MDYpCi0gc2hvcnQgZGV2aWNlX25vOwotIGludCBsZW47Ci0gdW5zaWduZWQgY2hhciBkYXRhWzFdOworICBzaG9ydCBkZXZpY2Vfbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgIGludCBsZW47CisgIHVuc2lnbmVkIGNoYXIgZGF0YVsxXTsKK307CiAjZGVmaW5lIFNFUV9OT1RFT0ZGIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9GTU5PVEVPRkYgU0VRX05PVEVPRkYKICNkZWZpbmUgU0VRX05PVEVPTiAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfRk1OT1RFT04gU0VRX05PVEVPTgogI2RlZmluZSBTRVFfV0FJVCBUTVJfV0FJVF9BQlMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9QR01DSEFOR0UgMwogI2RlZmluZSBTRVFfRk1QR01DSEFOR0UgU0VRX1BHTUNIQU5HRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX1NZTkNUSU1FUiBUTVJfU1RBUlQKICNkZWZpbmUgU0VRX01JRElQVVRDIDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9EUlVNT04gNgogI2RlZmluZSBTRVFfRFJVTU9GRiA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfRUNITyBUTVJfRUNITwogI2RlZmluZSBTRVFfQUZURVJUT1VDSCA5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfQ09OVFJPTExFUiAxMAogI2RlZmluZSBDVExfQkFOS19TRUxFQ1QgMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX01PRFdIRUVMIDB4MDEKICNkZWZpbmUgQ1RMX0JSRUFUSCAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfRk9PVCAweDA0CiAjZGVmaW5lIENUTF9QT1JUQU1FTlRPX1RJTUUgMHgwNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0RBVEFfRU5UUlkgMHgwNgogI2RlZmluZSBDVExfTUFJTl9WT0xVTUUgMHgwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0JBTEFOQ0UgMHgwOAogI2RlZmluZSBDVExfUEFOIDB4MGEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9FWFBSRVNTSU9OIDB4MGIKICNkZWZpbmUgQ1RMX0dFTkVSQUxfUFVSUE9TRTEgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0dFTkVSQUxfUFVSUE9TRTIgMHgxMQogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFMyAweDEyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFNCAweDEzCiAjZGVmaW5lIENUTF9EQU1QRVJfUEVEQUwgMHg0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX1NVU1RBSU4gMHg0MAogI2RlZmluZSBDVExfSE9MRCAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfUE9SVEFNRU5UTyAweDQxCiAjZGVmaW5lIENUTF9TT1NURU5VVE8gMHg0MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX1NPRlRfUEVEQUwgMHg0MwogI2RlZmluZSBDVExfSE9MRDIgMHg0NQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0dFTkVSQUxfUFVSUE9TRTUgMHg1MAogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFNiAweDUxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFNyAweDUyCiAjZGVmaW5lIENUTF9HRU5FUkFMX1BVUlBPU0U4IDB4NTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9FWFRfRUZGX0RFUFRIIDB4NWIKICNkZWZpbmUgQ1RMX1RSRU1PTE9fREVQVEggMHg1YworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0NIT1JVU19ERVBUSCAweDVkCiAjZGVmaW5lIENUTF9ERVRVTkVfREVQVEggMHg1ZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0NFTEVTVEVfREVQVEggMHg1ZQogI2RlZmluZSBDVExfUEhBU0VSX0RFUFRIIDB4NWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9EQVRBX0lOQ1JFTUVOVCAweDYwCiAjZGVmaW5lIENUTF9EQVRBX0RFQ1JFTUVOVCAweDYxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfTk9OUkVHX1BBUk1fTlVNX0xTQiAweDYyCiAjZGVmaW5lIENUTF9OT05SRUdfUEFSTV9OVU1fTVNCIDB4NjMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9SRUdJU1RfUEFSTV9OVU1fTFNCIDB4NjQKICNkZWZpbmUgQ1RMX1JFR0lTVF9QQVJNX05VTV9NU0IgMHg2NQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RSTF9QSVRDSF9CRU5ERVIgMjU1CiAjZGVmaW5lIENUUkxfUElUQ0hfQkVOREVSX1JBTkdFIDI1NAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RSTF9FWFBSRVNTSU9OIDI1MwogI2RlZmluZSBDVFJMX01BSU5fVk9MVU1FIDI1MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX0JBTEFOQ0UgMTEKICNkZWZpbmUgU0VRX1ZPTE1PREUgMTIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZPTF9NRVRIT0RfQURBR0lPIDEKICNkZWZpbmUgVk9MX01FVEhPRF9MSU5FQVIgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX0ZVTExTSVpFIDB4ZmQKICNkZWZpbmUgU0VRX1BSSVZBVEUgMHhmZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX0VYVEVOREVEIDB4ZmYKIHR5cGVkZWYgdW5zaWduZWQgY2hhciBzYmlfaW5zdHJfZGF0YVszMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNiaV9pbnN0cnVtZW50IHsKLSB1bnNpZ25lZCBzaG9ydCBrZXk7CisgIHVuc2lnbmVkIHNob3J0IGtleTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZNX1BBVENIIF9QQVRDSEtFWSgweDAxKQogI2RlZmluZSBPUEwzX1BBVENIIF9QQVRDSEtFWSgweDAzKQorICBzaG9ydCBkZXZpY2U7CisgIGludCBjaGFubmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBkZXZpY2U7Ci0gaW50IGNoYW5uZWw7Ci0gc2JpX2luc3RyX2RhdGEgb3BlcmF0b3JzOwotIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzYmlfaW5zdHJfZGF0YSBvcGVyYXRvcnM7Cit9Owogc3RydWN0IHN5bnRoX2luZm8gewotIGNoYXIgbmFtZVszMF07Ci0gaW50IGRldmljZTsKLSBpbnQgc3ludGhfdHlwZTsKKyAgY2hhciBuYW1lWzMwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBkZXZpY2U7CisgIGludCBzeW50aF90eXBlOwogI2RlZmluZSBTWU5USF9UWVBFX0ZNIDAKICNkZWZpbmUgU1lOVEhfVFlQRV9TQU1QTEUgMQotI2RlZmluZSBTWU5USF9UWVBFX01JREkgMgotIGludCBzeW50aF9zdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1lOVEhfVFlQRV9NSURJIDIKKyAgaW50IHN5bnRoX3N1YnR5cGU7CiAjZGVmaW5lIEZNX1RZUEVfQURMSUIgMHgwMAogI2RlZmluZSBGTV9UWVBFX09QTDMgMHgwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUlESV9UWVBFX01QVTQwMSAweDQwMQogI2RlZmluZSBTQU1QTEVfVFlQRV9CQVNJQyAweDEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQU1QTEVfVFlQRV9HVVMgU0FNUExFX1RZUEVfQkFTSUMKICNkZWZpbmUgU0FNUExFX1RZUEVfV0FWRUZST05UIDB4MTEKLSBpbnQgcGVyY19tb2RlOwotIGludCBucl92b2ljZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBucl9kcnVtczsKLSBpbnQgaW5zdHJfYmFua19zaXplOwotIHVuc2lnbmVkIGludCBjYXBhYmlsaXRpZXM7CisgIGludCBwZXJjX21vZGU7CisgIGludCBucl92b2ljZXM7CisgIGludCBucl9kcnVtczsKKyAgaW50IGluc3RyX2Jhbmtfc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBjYXBhYmlsaXRpZXM7CiAjZGVmaW5lIFNZTlRIX0NBUF9QRVJDTU9ERSAweDAwMDAwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5USF9DQVBfT1BMMyAweDAwMDAwMDAyCiAjZGVmaW5lIFNZTlRIX0NBUF9JTlBVVCAweDAwMDAwMDA0Ci0gaW50IGR1bW1pZXNbMTldOwotIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgZHVtbWllc1sxOV07Cit9Owogc3RydWN0IHNvdW5kX3RpbWVyX2luZm8gewotIGNoYXIgbmFtZVszMl07Ci0gaW50IGNhcHM7Ci0gfTsKKyAgY2hhciBuYW1lWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBjYXBzOworfTsKICNkZWZpbmUgTUlESV9DQVBfTVBVNDAxIDEKIHN0cnVjdCBtaWRpX2luZm8gewotIGNoYXIgbmFtZVszMF07Ci0gaW50IGRldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNhcGFiaWxpdGllczsKLSBpbnQgZGV2X3R5cGU7Ci0gaW50IGR1bW1pZXNbMThdOwotIH07CisgIGNoYXIgbmFtZVszMF07CisgIGludCBkZXZpY2U7CisgIHVuc2lnbmVkIGludCBjYXBhYmlsaXRpZXM7CisgIGludCBkZXZfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBkdW1taWVzWzE4XTsKK307CiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gY2hhciBucl9hcmdzLCBucl9yZXR1cm5zOwotIHVuc2lnbmVkIGNoYXIgZGF0YVszMF07CisgIHVuc2lnbmVkIGNoYXIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG1wdV9jb21tYW5kX3JlYzsKKyAgY2hhciBucl9hcmdzLCBucl9yZXR1cm5zOworICB1bnNpZ25lZCBjaGFyIGRhdGFbMzBdOworfSBtcHVfY29tbWFuZF9yZWM7CiAjZGVmaW5lIFNORENUTF9NSURJX1BSRVRJTUUgX1NJT1dSKCdtJywgMCwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX01JRElfTVBVTU9ERSBfU0lPV1IoJ20nLCAxLCBpbnQpCiAjZGVmaW5lIFNORENUTF9NSURJX01QVUNNRCBfU0lPV1IoJ20nLCAyLCBtcHVfY29tbWFuZF9yZWMpCisjZGVmaW5lIFNORENUTF9EU1BfUkVTRVQgX1NJTygnUCcsIDApCisjZGVmaW5lIFNORENUTF9EU1BfU1lOQyBfU0lPKCdQJywgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9EU1BfUkVTRVQgX1NJTyAoJ1AnLCAwKQotI2RlZmluZSBTTkRDVExfRFNQX1NZTkMgX1NJTyAoJ1AnLCAxKQogI2RlZmluZSBTTkRDVExfRFNQX1NQRUVEIF9TSU9XUignUCcsIDIsIGludCkKICNkZWZpbmUgU05EQ1RMX0RTUF9TVEVSRU8gX1NJT1dSKCdQJywgMywgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX0RTUF9HRVRCTEtTSVpFIF9TSU9XUignUCcsIDQsIGludCkKICNkZWZpbmUgU05EQ1RMX0RTUF9TQU1QTEVTSVpFIFNORENUTF9EU1BfU0VURk1UCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfRFNQX0NIQU5ORUxTIF9TSU9XUignUCcsIDYsIGludCkKICNkZWZpbmUgU09VTkRfUENNX1dSSVRFX0NIQU5ORUxTIFNORENUTF9EU1BfQ0hBTk5FTFMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9XUklURV9GSUxURVIgX1NJT1dSKCdQJywgNywgaW50KQotI2RlZmluZSBTTkRDVExfRFNQX1BPU1QgX1NJTyAoJ1AnLCA4KQotI2RlZmluZSBTTkRDVExfRFNQX1NVQkRJVklERSBfU0lPV1IoJ1AnLCA5LCBpbnQpCi0jZGVmaW5lIFNORENUTF9EU1BfU0VURlJBR01FTlQgX1NJT1dSKCdQJywxMCwgaW50KQorI2RlZmluZSBTTkRDVExfRFNQX1BPU1QgX1NJTygnUCcsIDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRFNQX0dFVEZNVFMgX1NJT1IgKCdQJywxMSwgaW50KQotI2RlZmluZSBTTkRDVExfRFNQX1NFVEZNVCBfU0lPV1IoJ1AnLDUsIGludCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9TVUJESVZJREUgX1NJT1dSKCdQJywgOSwgaW50KQorI2RlZmluZSBTTkRDVExfRFNQX1NFVEZSQUdNRU5UIF9TSU9XUignUCcsIDEwLCBpbnQpCisjZGVmaW5lIFNORENUTF9EU1BfR0VURk1UUyBfU0lPUignUCcsIDExLCBpbnQpCisjZGVmaW5lIFNORENUTF9EU1BfU0VURk1UIF9TSU9XUignUCcsIDUsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfUVVFUlkgMHgwMDAwMDAwMAogI2RlZmluZSBBRk1UX01VX0xBVyAweDAwMDAwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBRk1UX0FfTEFXIDB4MDAwMDAwMDIKICNkZWZpbmUgQUZNVF9JTUFfQURQQ00gMHgwMDAwMDAwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUZNVF9VOCAweDAwMDAwMDA4CiAjZGVmaW5lIEFGTVRfUzE2X0xFIDB4MDAwMDAwMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfUzE2X0JFIDB4MDAwMDAwMjAKICNkZWZpbmUgQUZNVF9TOCAweDAwMDAwMDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBRk1UX1UxNl9MRSAweDAwMDAwMDgwCiAjZGVmaW5lIEFGTVRfVTE2X0JFIDB4MDAwMDAxMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfTVBFRyAweDAwMDAwMjAwCiAjZGVmaW5lIEFGTVRfQUMzIDB4MDAwMDA0MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBhdWRpb19idWZfaW5mbyB7Ci0gaW50IGZyYWdtZW50czsKKyAgaW50IGZyYWdtZW50czsKKyAgaW50IGZyYWdzdG90YWw7CisgIGludCBmcmFnc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZyYWdzdG90YWw7Ci0gaW50IGZyYWdzaXplOwotIGludCBieXRlczsKLSB9IGF1ZGlvX2J1Zl9pbmZvOworICBpbnQgYnl0ZXM7Cit9IGF1ZGlvX2J1Zl9pbmZvOworI2RlZmluZSBTTkRDVExfRFNQX0dFVE9TUEFDRSBfU0lPUignUCcsIDEyLCBhdWRpb19idWZfaW5mbykKKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRJU1BBQ0UgX1NJT1IoJ1AnLCAxMywgYXVkaW9fYnVmX2luZm8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRFNQX0dFVE9TUEFDRSBfU0lPUiAoJ1AnLDEyLCBhdWRpb19idWZfaW5mbykKLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRJU1BBQ0UgX1NJT1IgKCdQJywxMywgYXVkaW9fYnVmX2luZm8pCi0jZGVmaW5lIFNORENUTF9EU1BfTk9OQkxPQ0sgX1NJTyAoJ1AnLDE0KQotI2RlZmluZSBTTkRDVExfRFNQX0dFVENBUFMgX1NJT1IgKCdQJywxNSwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EQ1RMX0RTUF9OT05CTE9DSyBfU0lPKCdQJywgMTQpCisjZGVmaW5lIFNORENUTF9EU1BfR0VUQ0FQUyBfU0lPUignUCcsIDE1LCBpbnQpCiAjZGVmaW5lIERTUF9DQVBfUkVWSVNJT04gMHgwMDAwMDBmZgogI2RlZmluZSBEU1BfQ0FQX0RVUExFWCAweDAwMDAwMTAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQ0FQX1JFQUxUSU1FIDB4MDAwMDAyMDAKICNkZWZpbmUgRFNQX0NBUF9CQVRDSCAweDAwMDAwNDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQ0FQX0NPUFJPQyAweDAwMDAwODAwCiAjZGVmaW5lIERTUF9DQVBfVFJJR0dFUiAweDAwMDAxMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQ0FQX01NQVAgMHgwMDAwMjAwMAogI2RlZmluZSBEU1BfQ0FQX01VTFRJIDB4MDAwMDQwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9DQVBfQklORCAweDAwMDA4MDAwCi0jZGVmaW5lIFNORENUTF9EU1BfR0VUVFJJR0dFUiBfU0lPUiAoJ1AnLDE2LCBpbnQpCi0jZGVmaW5lIFNORENUTF9EU1BfU0VUVFJJR0dFUiBfU0lPVyAoJ1AnLDE2LCBpbnQpCi0jZGVmaW5lIFBDTV9FTkFCTEVfSU5QVVQgMHgwMDAwMDAwMQorI2RlZmluZSBTTkRDVExfRFNQX0dFVFRSSUdHRVIgX1NJT1IoJ1AnLCAxNiwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EQ1RMX0RTUF9TRVRUUklHR0VSIF9TSU9XKCdQJywgMTYsIGludCkKKyNkZWZpbmUgUENNX0VOQUJMRV9JTlBVVCAweDAwMDAwMDAxCiAjZGVmaW5lIFBDTV9FTkFCTEVfT1VUUFVUIDB4MDAwMDAwMDIKIHR5cGVkZWYgc3RydWN0IGNvdW50X2luZm8gewotIGludCBieXRlczsKLSBpbnQgYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcHRyOwotIH0gY291bnRfaW5mbzsKLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRJUFRSIF9TSU9SICgnUCcsMTcsIGNvdW50X2luZm8pCi0jZGVmaW5lIFNORENUTF9EU1BfR0VUT1BUUiBfU0lPUiAoJ1AnLDE4LCBjb3VudF9pbmZvKQorICBpbnQgYnl0ZXM7CisgIGludCBibG9ja3M7CisgIGludCBwdHI7Cit9IGNvdW50X2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRDVExfRFNQX0dFVElQVFIgX1NJT1IoJ1AnLCAxNywgY291bnRfaW5mbykKKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRPUFRSIF9TSU9SKCdQJywgMTgsIGNvdW50X2luZm8pCiB0eXBlZGVmIHN0cnVjdCBidWZmbWVtX2Rlc2MgewotIHVuc2lnbmVkICpidWZmZXI7Ci0gaW50IHNpemU7Ci0gfSBidWZmbWVtX2Rlc2M7CisgIHVuc2lnbmVkICogYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0RTUF9NQVBJTkJVRiBfU0lPUiAoJ1AnLCAxOSwgYnVmZm1lbV9kZXNjKQotI2RlZmluZSBTTkRDVExfRFNQX01BUE9VVEJVRiBfU0lPUiAoJ1AnLCAyMCwgYnVmZm1lbV9kZXNjKQotI2RlZmluZSBTTkRDVExfRFNQX1NFVFNZTkNSTyBfU0lPICgnUCcsIDIxKQotI2RlZmluZSBTTkRDVExfRFNQX1NFVERVUExFWCBfU0lPICgnUCcsIDIyKQorICBpbnQgc2l6ZTsKK30gYnVmZm1lbV9kZXNjOworI2RlZmluZSBTTkRDVExfRFNQX01BUElOQlVGIF9TSU9SKCdQJywgMTksIGJ1ZmZtZW1fZGVzYykKKyNkZWZpbmUgU05EQ1RMX0RTUF9NQVBPVVRCVUYgX1NJT1IoJ1AnLCAyMCwgYnVmZm1lbV9kZXNjKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRPREVMQVkgX1NJT1IgKCdQJywgMjMsIGludCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9TRVRTWU5DUk8gX1NJTygnUCcsIDIxKQorI2RlZmluZSBTTkRDVExfRFNQX1NFVERVUExFWCBfU0lPKCdQJywgMjIpCisjZGVmaW5lIFNORENUTF9EU1BfR0VUT0RFTEFZIF9TSU9SKCdQJywgMjMsIGludCkKICNkZWZpbmUgU05EQ1RMX0RTUF9HRVRDSEFOTkVMTUFTSyBfU0lPV1IoJ1AnLCA2NCwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX0RTUF9CSU5EX0NIQU5ORUwgX1NJT1dSKCdQJywgNjUsIGludCkKICNkZWZpbmUgRFNQX0JJTkRfUVVFUlkgMHgwMDAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFNQX0JJTkRfRlJPTlQgMHgwMDAwMDAwMQogI2RlZmluZSBEU1BfQklORF9TVVJSIDB4MDAwMDAwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9CSU5EX0NFTlRFUl9MRkUgMHgwMDAwMDAwNAogI2RlZmluZSBEU1BfQklORF9IQU5EU0VUIDB4MDAwMDAwMDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9CSU5EX01JQyAweDAwMDAwMDEwCiAjZGVmaW5lIERTUF9CSU5EX01PREVNMSAweDAwMDAwMDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQklORF9NT0RFTTIgMHgwMDAwMDA0MAogI2RlZmluZSBEU1BfQklORF9JMlMgMHgwMDAwMDA4MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFNQX0JJTkRfU1BESUYgMHgwMDAwMDEwMAotI2RlZmluZSBTTkRDVExfRFNQX1NFVFNQRElGIF9TSU9XICgnUCcsIDY2LCBpbnQpCi0jZGVmaW5lIFNORENUTF9EU1BfR0VUU1BESUYgX1NJT1IgKCdQJywgNjcsIGludCkKLSNkZWZpbmUgU1BESUZfUFJPIDB4MDAwMQorI2RlZmluZSBTTkRDVExfRFNQX1NFVFNQRElGIF9TSU9XKCdQJywgNjYsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORENUTF9EU1BfR0VUU1BESUYgX1NJT1IoJ1AnLCA2NywgaW50KQorI2RlZmluZSBTUERJRl9QUk8gMHgwMDAxCiAjZGVmaW5lIFNQRElGX05fQVVEIDB4MDAwMgogI2RlZmluZSBTUERJRl9DT1BZIDB4MDAwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1BESUZfUFJFIDB4MDAwOAogI2RlZmluZSBTUERJRl9DQyAweDA3ZjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQRElGX0wgMHgwODAwCiAjZGVmaW5lIFNQRElGX0RSUyAweDQwMDAKLSNkZWZpbmUgU1BESUZfViAweDgwMDAKLSNkZWZpbmUgU05EQ1RMX0RTUF9QUk9GSUxFIF9TSU9XICgnUCcsIDIzLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTUERJRl9WIDB4ODAwMAorI2RlZmluZSBTTkRDVExfRFNQX1BST0ZJTEUgX1NJT1coJ1AnLCAyMywgaW50KQogI2RlZmluZSBBUEZfTk9STUFMIDAKICNkZWZpbmUgQVBGX05FVFdPUksgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVBGX0NQVUlOVEVOUyAyCi0jZGVmaW5lIFNPVU5EX1BDTV9SRUFEX1JBVEUgX1NJT1IgKCdQJywgMiwgaW50KQorI2RlZmluZSBTT1VORF9QQ01fUkVBRF9SQVRFIF9TSU9SKCdQJywgMiwgaW50KQorI2RlZmluZSBTT1VORF9QQ01fUkVBRF9DSEFOTkVMUyBfU0lPUignUCcsIDYsIGludCkKKyNkZWZpbmUgU09VTkRfUENNX1JFQURfQklUUyBfU0lPUignUCcsIDUsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPVU5EX1BDTV9SRUFEX0NIQU5ORUxTIF9TSU9SICgnUCcsIDYsIGludCkKLSNkZWZpbmUgU09VTkRfUENNX1JFQURfQklUUyBfU0lPUiAoJ1AnLCA1LCBpbnQpCi0jZGVmaW5lIFNPVU5EX1BDTV9SRUFEX0ZJTFRFUiBfU0lPUiAoJ1AnLCA3LCBpbnQpCisjZGVmaW5lIFNPVU5EX1BDTV9SRUFEX0ZJTFRFUiBfU0lPUignUCcsIDcsIGludCkKICNkZWZpbmUgU09VTkRfUENNX1dSSVRFX0JJVFMgU05EQ1RMX0RTUF9TRVRGTVQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9XUklURV9SQVRFIFNORENUTF9EU1BfU1BFRUQKICNkZWZpbmUgU09VTkRfUENNX1BPU1QgU05EQ1RMX0RTUF9QT1NUCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9QQ01fUkVTRVQgU05EQ1RMX0RTUF9SRVNFVAogI2RlZmluZSBTT1VORF9QQ01fU1lOQyBTTkRDVExfRFNQX1NZTkMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9TVUJESVZJREUgU05EQ1RMX0RTUF9TVUJESVZJREUKICNkZWZpbmUgU09VTkRfUENNX1NFVEZSQUdNRU5UIFNORENUTF9EU1BfU0VURlJBR01FTlQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRGTVRTIFNORENUTF9EU1BfR0VURk1UUwogI2RlZmluZSBTT1VORF9QQ01fU0VURk1UIFNORENUTF9EU1BfU0VURk1UCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9QQ01fR0VUT1NQQUNFIFNORENUTF9EU1BfR0VUT1NQQUNFCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRJU1BBQ0UgU05EQ1RMX0RTUF9HRVRJU1BBQ0UKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9OT05CTE9DSyBTTkRDVExfRFNQX05PTkJMT0NLCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRDQVBTIFNORENUTF9EU1BfR0VUQ0FQUwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX0dFVFRSSUdHRVIgU05EQ1RMX0RTUF9HRVRUUklHR0VSCiAjZGVmaW5lIFNPVU5EX1BDTV9TRVRUUklHR0VSIFNORENUTF9EU1BfU0VUVFJJR0dFUgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX1NFVFNZTkNSTyBTTkRDVExfRFNQX1NFVFNZTkNSTwogI2RlZmluZSBTT1VORF9QQ01fR0VUSVBUUiBTTkRDVExfRFNQX0dFVElQVFIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRPUFRSIFNORENUTF9EU1BfR0VUT1BUUgogI2RlZmluZSBTT1VORF9QQ01fTUFQSU5CVUYgU05EQ1RMX0RTUF9NQVBJTkJVRgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX01BUE9VVEJVRiBTTkRDVExfRFNQX01BUE9VVEJVRgogdHlwZWRlZiBzdHJ1Y3QgY29wcl9idWZmZXIgeworICBpbnQgY29tbWFuZDsKKyAgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY29tbWFuZDsKLSBpbnQgZmxhZ3M7CiAjZGVmaW5lIENQRl9OT05FIDB4MDAwMAogI2RlZmluZSBDUEZfRklSU1QgMHgwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDUEZfTEFTVCAweDAwMDIKLSBpbnQgbGVuOwotIGludCBvZmZzOwotIHVuc2lnbmVkIGNoYXIgZGF0YVs0MDAwXTsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBjb3ByX2J1ZmZlcjsKKyAgaW50IG9mZnM7CisgIHVuc2lnbmVkIGNoYXIgZGF0YVs0MDAwXTsKK30gY29wcl9idWZmZXI7CiB0eXBlZGVmIHN0cnVjdCBjb3ByX2RlYnVnX2J1ZiB7Ci0gaW50IGNvbW1hbmQ7Ci0gaW50IHBhcm0xOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGFybTI7Ci0gaW50IGZsYWdzOwotIGludCBsZW47Ci0gfSBjb3ByX2RlYnVnX2J1ZjsKKyAgaW50IGNvbW1hbmQ7CisgIGludCBwYXJtMTsKKyAgaW50IHBhcm0yOworICBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgbGVuOworfSBjb3ByX2RlYnVnX2J1ZjsKIHR5cGVkZWYgc3RydWN0IGNvcHJfbXNnIHsKLSBpbnQgbGVuOwotIHVuc2lnbmVkIGNoYXIgZGF0YVs0MDAwXTsKLSB9IGNvcHJfbXNnOworICBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0NPUFJfUkVTRVQgX1NJTyAoJ0MnLCAwKQorICB1bnNpZ25lZCBjaGFyIGRhdGFbNDAwMF07Cit9IGNvcHJfbXNnOworI2RlZmluZSBTTkRDVExfQ09QUl9SRVNFVCBfU0lPKCdDJywgMCkKICNkZWZpbmUgU05EQ1RMX0NPUFJfTE9BRCBfU0lPV1IoJ0MnLCAxLCBjb3ByX2J1ZmZlcikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORENUTF9DT1BSX1JEQVRBIF9TSU9XUignQycsIDIsIGNvcHJfZGVidWdfYnVmKQogI2RlZmluZSBTTkRDVExfQ09QUl9SQ09ERSBfU0lPV1IoJ0MnLCAzLCBjb3ByX2RlYnVnX2J1ZikKKyNkZWZpbmUgU05EQ1RMX0NPUFJfV0RBVEEgX1NJT1coJ0MnLCA0LCBjb3ByX2RlYnVnX2J1ZikKKyNkZWZpbmUgU05EQ1RMX0NPUFJfV0NPREUgX1NJT1coJ0MnLCA1LCBjb3ByX2RlYnVnX2J1ZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9DT1BSX1dEQVRBIF9TSU9XICgnQycsIDQsIGNvcHJfZGVidWdfYnVmKQotI2RlZmluZSBTTkRDVExfQ09QUl9XQ09ERSBfU0lPVyAoJ0MnLCA1LCBjb3ByX2RlYnVnX2J1ZikKICNkZWZpbmUgU05EQ1RMX0NPUFJfUlVOIF9TSU9XUignQycsIDYsIGNvcHJfZGVidWdfYnVmKQogI2RlZmluZSBTTkRDVExfQ09QUl9IQUxUIF9TSU9XUignQycsIDcsIGNvcHJfZGVidWdfYnVmKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX0NPUFJfU0VORE1TRyBfU0lPV1IoJ0MnLCA4LCBjb3ByX21zZykKLSNkZWZpbmUgU05EQ1RMX0NPUFJfUkNWTVNHIF9TSU9SICgnQycsIDksIGNvcHJfbXNnKQorI2RlZmluZSBTTkRDVExfQ09QUl9SQ1ZNU0cgX1NJT1IoJ0MnLCA5LCBjb3ByX21zZykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX05SREVWSUNFUyAyNQogI2RlZmluZSBTT1VORF9NSVhFUl9WT0xVTUUgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfQkFTUyAxCiAjZGVmaW5lIFNPVU5EX01JWEVSX1RSRUJMRSAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9TWU5USCAzCiAjZGVmaW5lIFNPVU5EX01JWEVSX1BDTSA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9TUEVBS0VSIDUKICNkZWZpbmUgU09VTkRfTUlYRVJfTElORSA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9NSUMgNwogI2RlZmluZSBTT1VORF9NSVhFUl9DRCA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9JTUlYIDkKICNkZWZpbmUgU09VTkRfTUlYRVJfQUxUUENNIDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUNMRVYgMTEKICNkZWZpbmUgU09VTkRfTUlYRVJfSUdBSU4gMTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX09HQUlOIDEzCiAjZGVmaW5lIFNPVU5EX01JWEVSX0xJTkUxIDE0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9MSU5FMiAxNQogI2RlZmluZSBTT1VORF9NSVhFUl9MSU5FMyAxNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfRElHSVRBTDEgMTcKICNkZWZpbmUgU09VTkRfTUlYRVJfRElHSVRBTDIgMTgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX0RJR0lUQUwzIDE5CiAjZGVmaW5lIFNPVU5EX01JWEVSX1BIT05FSU4gMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1BIT05FT1VUIDIxCiAjZGVmaW5lIFNPVU5EX01JWEVSX1ZJREVPIDIyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SQURJTyAyMwogI2RlZmluZSBTT1VORF9NSVhFUl9NT05JVE9SIDI0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9PTk9GRl9NSU4gMjgKICNkZWZpbmUgU09VTkRfT05PRkZfTUFYIDMwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9OT05FIDMxCiAjZGVmaW5lIFNPVU5EX01JWEVSX0VOSEFOQ0UgU09VTkRfTUlYRVJfTk9ORQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfTVVURSBTT1VORF9NSVhFUl9OT05FCiAjZGVmaW5lIFNPVU5EX01JWEVSX0xPVUQgU09VTkRfTUlYRVJfTk9ORQotI2RlZmluZSBTT1VORF9ERVZJQ0VfTEFCRUxTIHsiVm9sICAiLCAiQmFzcyAiLCAiVHJlYmwiLCAiU3ludGgiLCAiUGNtICAiLCAiU3BrciAiLCAiTGluZSAiLCAgICJNaWMgICIsICJDRCAgICIsICJNaXggICIsICJQY20yICIsICJSZWMgICIsICJJR2FpbiIsICJPR2FpbiIsICAgIkxpbmUxIiwgIkxpbmUyIiwgIkxpbmUzIiwgIkRpZ2l0YWwxIiwgIkRpZ2l0YWwyIiwgIkRpZ2l0YWwzIiwgICAiUGhvbmVJbiIsICJQaG9uZU91dCIsICJWaWRlbyIsICJSYWRpbyIsICJNb25pdG9yIn0KLSNkZWZpbmUgU09VTkRfREVWSUNFX05BTUVTIHsidm9sIiwgImJhc3MiLCAidHJlYmxlIiwgInN5bnRoIiwgInBjbSIsICJzcGVha2VyIiwgImxpbmUiLCAgICJtaWMiLCAiY2QiLCAibWl4IiwgInBjbTIiLCAicmVjIiwgImlnYWluIiwgIm9nYWluIiwgICAibGluZTEiLCAibGluZTIiLCAibGluZTMiLCAiZGlnMSIsICJkaWcyIiwgImRpZzMiLCAgICJwaGluIiwgInBob3V0IiwgInZpZGVvIiwgInJhZGlvIiwgIm1vbml0b3IifQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU09VTkRfREVWSUNFX0xBQkVMUyB7ICJWb2wgICIsICJCYXNzICIsICJUcmVibCIsICJTeW50aCIsICJQY20gICIsICJTcGtyICIsICJMaW5lICIsICJNaWMgICIsICJDRCAgICIsICJNaXggICIsICJQY20yICIsICJSZWMgICIsICJJR2FpbiIsICJPR2FpbiIsICJMaW5lMSIsICJMaW5lMiIsICJMaW5lMyIsICJEaWdpdGFsMSIsICJEaWdpdGFsMiIsICJEaWdpdGFsMyIsICJQaG9uZUluIiwgIlBob25lT3V0IiwgIlZpZGVvIiwgIlJhZGlvIiwgIk1vbml0b3IiIH0KKyNkZWZpbmUgU09VTkRfREVWSUNFX05BTUVTIHsgInZvbCIsICJiYXNzIiwgInRyZWJsZSIsICJzeW50aCIsICJwY20iLCAic3BlYWtlciIsICJsaW5lIiwgIm1pYyIsICJjZCIsICJtaXgiLCAicGNtMiIsICJyZWMiLCAiaWdhaW4iLCAib2dhaW4iLCAibGluZTEiLCAibGluZTIiLCAibGluZTMiLCAiZGlnMSIsICJkaWcyIiwgImRpZzMiLCAicGhpbiIsICJwaG91dCIsICJ2aWRlbyIsICJyYWRpbyIsICJtb25pdG9yIiB9CiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQ1NSQyAweGZmCiAjZGVmaW5lIFNPVU5EX01JWEVSX0RFVk1BU0sgMHhmZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVDTUFTSyAweGZkCiAjZGVmaW5lIFNPVU5EX01JWEVSX0NBUFMgMHhmYwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfQ0FQX0VYQ0xfSU5QVVQgMHgwMDAwMDAwMQogI2RlZmluZSBTT1VORF9NSVhFUl9TVEVSRU9ERVZTIDB4ZmIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX09VVFNSQyAweGZhCiAjZGVmaW5lIFNPVU5EX01JWEVSX09VVE1BU0sgMHhmOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19WT0xVTUUgKDEgPDwgU09VTkRfTUlYRVJfVk9MVU1FKQogI2RlZmluZSBTT1VORF9NQVNLX0JBU1MgKDEgPDwgU09VTkRfTUlYRVJfQkFTUykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfVFJFQkxFICgxIDw8IFNPVU5EX01JWEVSX1RSRUJMRSkKICNkZWZpbmUgU09VTkRfTUFTS19TWU5USCAoMSA8PCBTT1VORF9NSVhFUl9TWU5USCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfUENNICgxIDw8IFNPVU5EX01JWEVSX1BDTSkKICNkZWZpbmUgU09VTkRfTUFTS19TUEVBS0VSICgxIDw8IFNPVU5EX01JWEVSX1NQRUFLRVIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0xJTkUgKDEgPDwgU09VTkRfTUlYRVJfTElORSkKICNkZWZpbmUgU09VTkRfTUFTS19NSUMgKDEgPDwgU09VTkRfTUlYRVJfTUlDKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19DRCAoMSA8PCBTT1VORF9NSVhFUl9DRCkKICNkZWZpbmUgU09VTkRfTUFTS19JTUlYICgxIDw8IFNPVU5EX01JWEVSX0lNSVgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0FMVFBDTSAoMSA8PCBTT1VORF9NSVhFUl9BTFRQQ00pCiAjZGVmaW5lIFNPVU5EX01BU0tfUkVDTEVWICgxIDw8IFNPVU5EX01JWEVSX1JFQ0xFVikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfSUdBSU4gKDEgPDwgU09VTkRfTUlYRVJfSUdBSU4pCiAjZGVmaW5lIFNPVU5EX01BU0tfT0dBSU4gKDEgPDwgU09VTkRfTUlYRVJfT0dBSU4pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0xJTkUxICgxIDw8IFNPVU5EX01JWEVSX0xJTkUxKQogI2RlZmluZSBTT1VORF9NQVNLX0xJTkUyICgxIDw8IFNPVU5EX01JWEVSX0xJTkUyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19MSU5FMyAoMSA8PCBTT1VORF9NSVhFUl9MSU5FMykKICNkZWZpbmUgU09VTkRfTUFTS19ESUdJVEFMMSAoMSA8PCBTT1VORF9NSVhFUl9ESUdJVEFMMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfRElHSVRBTDIgKDEgPDwgU09VTkRfTUlYRVJfRElHSVRBTDIpCiAjZGVmaW5lIFNPVU5EX01BU0tfRElHSVRBTDMgKDEgPDwgU09VTkRfTUlYRVJfRElHSVRBTDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX1BIT05FSU4gKDEgPDwgU09VTkRfTUlYRVJfUEhPTkVJTikKICNkZWZpbmUgU09VTkRfTUFTS19QSE9ORU9VVCAoMSA8PCBTT1VORF9NSVhFUl9QSE9ORU9VVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfUkFESU8gKDEgPDwgU09VTkRfTUlYRVJfUkFESU8pCiAjZGVmaW5lIFNPVU5EX01BU0tfVklERU8gKDEgPDwgU09VTkRfTUlYRVJfVklERU8pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX01PTklUT1IgKDEgPDwgU09VTkRfTUlYRVJfTU9OSVRPUikKICNkZWZpbmUgU09VTkRfTUFTS19NVVRFICgxIDw8IFNPVU5EX01JWEVSX01VVEUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0VOSEFOQ0UgKDEgPDwgU09VTkRfTUlYRVJfRU5IQU5DRSkKICNkZWZpbmUgU09VTkRfTUFTS19MT1VEICgxIDw8IFNPVU5EX01JWEVSX0xPVUQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNSVhFUl9SRUFEKGRldikgX1NJT1IoJ00nLCBkZXYsIGludCkKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9WT0xVTUUgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9WT0xVTUUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0JBU1MgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9CQVNTKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1RSRUJMRSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1RSRUJMRSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfU1lOVEggTUlYRVJfUkVBRChTT1VORF9NSVhFUl9TWU5USCkKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9QQ00gTUlYRVJfUkVBRChTT1VORF9NSVhFUl9QQ00pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1NQRUFLRVIgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9TUEVBS0VSKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0xJTkUgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9MSU5FKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9NSUMgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9NSUMpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfQ0QgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9DRCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfSU1JWCBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0lNSVgpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfQUxUUENNIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfQUxUUENNKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9SRUNMRVYgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9SRUNMRVYpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfSUdBSU4gTUlYRVJfUkVBRChTT1VORF9NSVhFUl9JR0FJTikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfT0dBSU4gTUlYRVJfUkVBRChTT1VORF9NSVhFUl9PR0FJTikKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9MSU5FMSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0xJTkUxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9MSU5FMiBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0xJTkUyKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0xJTkUzIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfTElORTMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX01VVEUgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9NVVRFKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0VOSEFOQ0UgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9FTkhBTkNFKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9MT1VEIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfTE9VRCkKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9SRUNTUkMgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9SRUNTUkMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0RFVk1BU0sgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9ERVZNQVNLKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1JFQ01BU0sgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9SRUNNQVNLKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9TVEVSRU9ERVZTIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfU1RFUkVPREVWUykKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9DQVBTIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfQ0FQUykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1JWEVSX1dSSVRFKGRldikgX1NJT1dSKCdNJywgZGV2LCBpbnQpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1ZPTFVNRSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9WT0xVTUUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9CQVNTIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0JBU1MpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1RSRUJMRSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9UUkVCTEUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9TWU5USCBNSVhFUl9XUklURShTT1VORF9NSVhFUl9TWU5USCkKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfUENNIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX1BDTSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1NQRUFLRVIgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfU1BFQUtFUikKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfTElORSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9MSU5FKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfTUlDIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX01JQykKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfQ0QgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfQ0QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9JTUlYIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0lNSVgpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0FMVFBDTSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9BTFRQQ00pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9SRUNMRVYgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfUkVDTEVWKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9JR0FJTiBNSVhFUl9XUklURShTT1VORF9NSVhFUl9JR0FJTikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX09HQUlOIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX09HQUlOKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9MSU5FMSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9MSU5FMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0xJTkUyIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0xJTkUyKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9MSU5FMyBNSVhFUl9XUklURShTT1VORF9NSVhFUl9MSU5FMykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX01VVEUgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfTVVURSkKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfRU5IQU5DRSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9FTkhBTkNFKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfTE9VRCBNSVhFUl9XUklURShTT1VORF9NSVhFUl9MT1VEKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9SRUNTUkMgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfUkVDU1JDKQordHlwZWRlZiBzdHJ1Y3QgbWl4ZXJfaW5mbyB7CisgIGNoYXIgaWRbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXR5cGVkZWYgc3RydWN0IG1peGVyX2luZm8KLXsKLSBjaGFyIGlkWzE2XTsKLSBjaGFyIG5hbWVbMzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbW9kaWZ5X2NvdW50ZXI7Ci0gaW50IGZpbGxlcnNbMTBdOworICBjaGFyIG5hbWVbMzJdOworICBpbnQgbW9kaWZ5X2NvdW50ZXI7CisgIGludCBmaWxsZXJzWzEwXTsKIH0gbWl4ZXJfaW5mbzsKLXR5cGVkZWYgc3RydWN0IF9vbGRfbWl4ZXJfaW5mbwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBjaGFyIGlkWzE2XTsKLSBjaGFyIG5hbWVbMzJdOwordHlwZWRlZiBzdHJ1Y3QgX29sZF9taXhlcl9pbmZvIHsKKyAgY2hhciBpZFsxNl07CisgIGNoYXIgbmFtZVszMl07CiB9IF9vbGRfbWl4ZXJfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPVU5EX01JWEVSX0lORk8gX1NJT1IgKCdNJywgMTAxLCBtaXhlcl9pbmZvKQotI2RlZmluZSBTT1VORF9PTERfTUlYRVJfSU5GTyBfU0lPUiAoJ00nLCAxMDEsIF9vbGRfbWl4ZXJfaW5mbykKKyNkZWZpbmUgU09VTkRfTUlYRVJfSU5GTyBfU0lPUignTScsIDEwMSwgbWl4ZXJfaW5mbykKKyNkZWZpbmUgU09VTkRfT0xEX01JWEVSX0lORk8gX1NJT1IoJ00nLCAxMDEsIF9vbGRfbWl4ZXJfaW5mbykKIHR5cGVkZWYgdW5zaWduZWQgY2hhciBtaXhlcl9yZWNvcmRbMTI4XTsKICNkZWZpbmUgU09VTkRfTUlYRVJfQUNDRVNTIF9TSU9XUignTScsIDEwMiwgbWl4ZXJfcmVjb3JkKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTc0NiwxNCArNzQxLDE0IEBACiAjZGVmaW5lIFNPVU5EX01JWEVSX1BSSVZBVEU1IF9TSU9XUignTScsIDExNSwgaW50KQogdHlwZWRlZiBzdHJ1Y3QgbWl4ZXJfdm9sX3RhYmxlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG51bTsKLSBjaGFyIG5hbWVbMzJdOwotIGludCBsZXZlbHNbMzJdOworICBpbnQgbnVtOworICBjaGFyIG5hbWVbMzJdOworICBpbnQgbGV2ZWxzWzMyXTsKIH0gbWl4ZXJfdm9sX3RhYmxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfR0VUTEVWRUxTIF9TSU9XUignTScsIDExNiwgbWl4ZXJfdm9sX3RhYmxlKQogI2RlZmluZSBTT1VORF9NSVhFUl9TRVRMRVZFTFMgX1NJT1dSKCdNJywgMTE3LCBtaXhlcl92b2xfdGFibGUpCi0jZGVmaW5lIE9TU19HRVRWRVJTSU9OIF9TSU9SICgnTScsIDExOCwgaW50KQorI2RlZmluZSBPU1NfR0VUVkVSU0lPTiBfU0lPUignTScsIDExOCwgaW50KQogI2RlZmluZSBFVl9TRVFfTE9DQUwgMHg4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVZfVElNSU5HIDB4ODEKQEAgLTc4NywxNCArNzgyLDE0IEBACiAjZGVmaW5lIFNFUV9ERUNMQVJFQlVGKCkgU0VRX1VTRV9FWFRCVUYoKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX1BNX0RFRklORVMgaW50IF9fZm9vX2Jhcl9fXwotI2RlZmluZSBTRVFfTE9BRF9HTUlOU1RSKGRldiwgaW5zdHIpCi0jZGVmaW5lIFNFUV9MT0FEX0dNRFJVTShkZXYsIGRydW0pCisjZGVmaW5lIFNFUV9MT0FEX0dNSU5TVFIoZGV2LGluc3RyKQorI2RlZmluZSBTRVFfTE9BRF9HTURSVU0oZGV2LGRydW0pCiAjZGVmaW5lIF9TRVFfRVhURVJOIGV4dGVybgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VRX1VTRV9FWFRCVUYoKSAgIF9TRVFfRVhURVJOIHVuc2lnbmVkIGNoYXIgX3NlcWJ1ZltdOyAgIF9TRVFfRVhURVJOIGludCBfc2VxYnVmbGVuOyBfU0VRX0VYVEVSTiBpbnQgX3NlcWJ1ZnB0cgorI2RlZmluZSBTRVFfVVNFX0VYVEJVRigpIF9TRVFfRVhURVJOIHVuc2lnbmVkIGNoYXIgX3NlcWJ1ZltdOyBfU0VRX0VYVEVSTiBpbnQgX3NlcWJ1ZmxlbjsgX1NFUV9FWFRFUk4gaW50IF9zZXFidWZwdHIKICNpZm5kZWYgVVNFX1NJTVBMRV9NQUNST1MKLSNkZWZpbmUgU0VRX0RFRklORUJVRihsZW4pIHVuc2lnbmVkIGNoYXIgX3NlcWJ1ZltsZW5dOyBpbnQgX3NlcWJ1ZmxlbiA9IGxlbjtpbnQgX3NlcWJ1ZnB0ciA9IDAKLSNkZWZpbmUgX1NFUV9ORUVEQlVGKGxlbikgaWYgKChfc2VxYnVmcHRyKyhsZW4pKSA+IF9zZXFidWZsZW4pIHNlcWJ1Zl9kdW1wKCkKKyNkZWZpbmUgU0VRX0RFRklORUJVRihsZW4pIHVuc2lnbmVkIGNoYXIgX3NlcWJ1ZltsZW5dOyBpbnQgX3NlcWJ1ZmxlbiA9IGxlbjsgaW50IF9zZXFidWZwdHIgPSAwCisjZGVmaW5lIF9TRVFfTkVFREJVRihsZW4pIGlmKChfc2VxYnVmcHRyICsgKGxlbikpID4gX3NlcWJ1Zmxlbikgc2VxYnVmX2R1bXAoKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1NFUV9BRFZCVUYobGVuKSBfc2VxYnVmcHRyICs9IGxlbgogI2RlZmluZSBTRVFfRFVNUEJVRiBzZXFidWZfZHVtcApAQCAtODAyLDI5ICs3OTcsMjkgQEAKICNkZWZpbmUgX1NFUV9ORUVEQlVGKGxlbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSNkZWZpbmUgU0VRX1ZPTFVNRV9NT0RFKGRldiwgbW9kZSkge19TRVFfTkVFREJVRig4KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfRVhURU5ERUQ7ICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSBTRVFfVk9MTU9ERTsgIF9zZXFidWZbX3NlcWJ1ZnB0cisyXSA9IChkZXYpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzNdID0gKG1vZGUpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzRdID0gMDsgIF9zZXFidWZbX3NlcWJ1ZnB0cis1XSA9IDA7ICBfc2VxYnVmW19zZXFidWZwdHIrNl0gPSAwOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzddID0gMDsgIF9TRVFfQURWQlVGKDgpO30KLSNkZWZpbmUgX0NITl9WT0lDRShkZXYsIGV2ZW50LCBjaG4sIG5vdGUsIHBhcm0pICAge19TRVFfTkVFREJVRig4KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBFVl9DSE5fVk9JQ0U7ICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSAoZGV2KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cisyXSA9IChldmVudCk7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAoY2huKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis0XSA9IChub3RlKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis1XSA9IChwYXJtKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis2XSA9ICgwKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis3XSA9IDA7ICBfU0VRX0FEVkJVRig4KTt9Ci0jZGVmaW5lIFNFUV9TVEFSVF9OT1RFKGRldiwgY2huLCBub3RlLCB2b2wpICAgX0NITl9WT0lDRShkZXYsIE1JRElfTk9URU9OLCBjaG4sIG5vdGUsIHZvbCkKKyNkZWZpbmUgU0VRX1ZPTFVNRV9NT0RFKGRldixtb2RlKSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IFNFUV9FWFRFTkRFRDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSBTRVFfVk9MTU9ERTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAoZGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgM10gPSAobW9kZSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDRdID0gMDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNV0gPSAwOyBfc2VxYnVmW19zZXFidWZwdHIgKyA2XSA9IDA7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDddID0gMDsgX1NFUV9BRFZCVUYoOCk7IH0KKyNkZWZpbmUgX0NITl9WT0lDRShkZXYsZXZlbnQsY2huLG5vdGUscGFybSkgeyBfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBFVl9DSE5fVk9JQ0U7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGRldik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gKGV2ZW50KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgM10gPSAoY2huKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSAobm90ZSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDVdID0gKHBhcm0pOyBfc2VxYnVmW19zZXFidWZwdHIgKyA2XSA9ICgwKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgN10gPSAwOyBfU0VRX0FEVkJVRig4KTsgfQorI2RlZmluZSBTRVFfU1RBUlRfTk9URShkZXYsY2huLG5vdGUsdm9sKSBfQ0hOX1ZPSUNFKGRldiwgTUlESV9OT1RFT04sIGNobiwgbm90ZSwgdm9sKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VRX1NUT1BfTk9URShkZXYsIGNobiwgbm90ZSwgdm9sKSAgIF9DSE5fVk9JQ0UoZGV2LCBNSURJX05PVEVPRkYsIGNobiwgbm90ZSwgdm9sKQotI2RlZmluZSBTRVFfS0VZX1BSRVNTVVJFKGRldiwgY2huLCBub3RlLCBwcmVzc3VyZSkgICBfQ0hOX1ZPSUNFKGRldiwgTUlESV9LRVlfUFJFU1NVUkUsIGNobiwgbm90ZSwgcHJlc3N1cmUpCi0jZGVmaW5lIF9DSE5fQ09NTU9OKGRldiwgZXZlbnQsIGNobiwgcDEsIHAyLCB3MTQpICAge19TRVFfTkVFREJVRig4KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBFVl9DSE5fQ09NTU9OOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzFdID0gKGRldik7ICBfc2VxYnVmW19zZXFidWZwdHIrMl0gPSAoZXZlbnQpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzNdID0gKGNobik7ICBfc2VxYnVmW19zZXFidWZwdHIrNF0gPSAocDEpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzVdID0gKHAyKTsgICooc2hvcnQgKikmX3NlcWJ1Zltfc2VxYnVmcHRyKzZdID0gKHcxNCk7ICBfU0VRX0FEVkJVRig4KTt9Ci0jZGVmaW5lIFNFUV9TWVNFWChkZXYsIGJ1ZiwgbGVuKSAgIHtpbnQgaWksIGxsPShsZW4pOyAgIHVuc2lnbmVkIGNoYXIgKmJ1ZnA9YnVmOyAgaWYgKGxsPjYpbGw9NjsgIF9TRVFfTkVFREJVRig4KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBFVl9TWVNFWDsgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IChkZXYpOyAgZm9yKGlpPTA7aWk8bGw7aWkrKykgIF9zZXFidWZbX3NlcWJ1ZnB0citpaSsyXSA9IGJ1ZnBbaWldOyAgZm9yKGlpPWxsO2lpPDY7aWkrKykgIF9zZXFidWZbX3NlcWJ1ZnB0citpaSsyXSA9IDB4ZmY7ICBfU0VRX0FEVkJVRig4KTt9CisjZGVmaW5lIFNFUV9TVE9QX05PVEUoZGV2LGNobixub3RlLHZvbCkgX0NITl9WT0lDRShkZXYsIE1JRElfTk9URU9GRiwgY2huLCBub3RlLCB2b2wpCisjZGVmaW5lIFNFUV9LRVlfUFJFU1NVUkUoZGV2LGNobixub3RlLHByZXNzdXJlKSBfQ0hOX1ZPSUNFKGRldiwgTUlESV9LRVlfUFJFU1NVUkUsIGNobiwgbm90ZSwgcHJlc3N1cmUpCisjZGVmaW5lIF9DSE5fQ09NTU9OKGRldixldmVudCxjaG4scDEscDIsdzE0KSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX0NITl9DT01NT047IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGRldik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gKGV2ZW50KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgM10gPSAoY2huKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSAocDEpOyBfc2VxYnVmW19zZXFidWZwdHIgKyA1XSA9IChwMik7ICogKHNob3J0ICopICYgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNl0gPSAodzE0KTsgX1NFUV9BRFZCVUYoOCk7IH0KKyNkZWZpbmUgU0VRX1NZU0VYKGRldixidWYsbGVuKSB7IGludCBpaSwgbGwgPSAobGVuKTsgdW5zaWduZWQgY2hhciAqIGJ1ZnAgPSBidWY7IGlmKGxsID4gNikgbGwgPSA2OyBfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBFVl9TWVNFWDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoZGV2KTsgZm9yKGlpID0gMDsgaWkgPCBsbDsgaWkgKyspIF9zZXFidWZbX3NlcWJ1ZnB0ciArIGlpICsgMl0gPSBidWZwW2lpXTsgZm9yKGlpID0gbGw7IGlpIDwgNjsgaWkgKyspIF9zZXFidWZbX3NlcWJ1ZnB0ciArIGlpICsgMl0gPSAweGZmOyBfU0VRX0FEVkJVRig4KTsgfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VRX0NITl9QUkVTU1VSRShkZXYsIGNobiwgcHJlc3N1cmUpICAgX0NITl9DT01NT04oZGV2LCBNSURJX0NITl9QUkVTU1VSRSwgY2huLCBwcmVzc3VyZSwgMCwgMCkKKyNkZWZpbmUgU0VRX0NITl9QUkVTU1VSRShkZXYsY2huLHByZXNzdXJlKSBfQ0hOX0NPTU1PTihkZXYsIE1JRElfQ0hOX1BSRVNTVVJFLCBjaG4sIHByZXNzdXJlLCAwLCAwKQogI2RlZmluZSBTRVFfU0VUX1BBVENIIFNFUV9QR01fQ0hBTkdFCi0jZGVmaW5lIFNFUV9QR01fQ0hBTkdFKGRldiwgY2huLCBwYXRjaCkgICBfQ0hOX0NPTU1PTihkZXYsIE1JRElfUEdNX0NIQU5HRSwgY2huLCBwYXRjaCwgMCwgMCkKLSNkZWZpbmUgU0VRX0NPTlRST0woZGV2LCBjaG4sIGNvbnRyb2xsZXIsIHZhbHVlKSAgIF9DSE5fQ09NTU9OKGRldiwgTUlESV9DVExfQ0hBTkdFLCBjaG4sIGNvbnRyb2xsZXIsIDAsIHZhbHVlKQorI2RlZmluZSBTRVFfUEdNX0NIQU5HRShkZXYsY2huLHBhdGNoKSBfQ0hOX0NPTU1PTihkZXYsIE1JRElfUEdNX0NIQU5HRSwgY2huLCBwYXRjaCwgMCwgMCkKKyNkZWZpbmUgU0VRX0NPTlRST0woZGV2LGNobixjb250cm9sbGVyLHZhbHVlKSBfQ0hOX0NPTU1PTihkZXYsIE1JRElfQ1RMX0NIQU5HRSwgY2huLCBjb250cm9sbGVyLCAwLCB2YWx1ZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNFUV9CRU5ERVIoZGV2LCBjaG4sIHZhbHVlKSAgIF9DSE5fQ09NTU9OKGRldiwgTUlESV9QSVRDSF9CRU5ELCBjaG4sIDAsIDAsIHZhbHVlKQotI2RlZmluZSBTRVFfVjJfWF9DT05UUk9MKGRldiwgdm9pY2UsIGNvbnRyb2xsZXIsIHZhbHVlKSB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IFNFUV9FWFRFTkRFRDsgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IFNFUV9DT05UUk9MTEVSOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gKGRldik7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAodm9pY2UpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzRdID0gKGNvbnRyb2xsZXIpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzVdID0gKCh2YWx1ZSkmMHhmZik7ICBfc2VxYnVmW19zZXFidWZwdHIrNl0gPSAoKHZhbHVlPj44KSYweGZmKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis3XSA9IDA7ICBfU0VRX0FEVkJVRig4KTt9Ci0jZGVmaW5lIFNFUV9QSVRDSEJFTkQoZGV2LCB2b2ljZSwgdmFsdWUpIFNFUV9WMl9YX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RSTF9QSVRDSF9CRU5ERVIsIHZhbHVlKQotI2RlZmluZSBTRVFfQkVOREVSX1JBTkdFKGRldiwgdm9pY2UsIHZhbHVlKSBTRVFfVjJfWF9DT05UUk9MKGRldiwgdm9pY2UsIENUUkxfUElUQ0hfQkVOREVSX1JBTkdFLCB2YWx1ZSkKKyNkZWZpbmUgU0VRX0JFTkRFUihkZXYsY2huLHZhbHVlKSBfQ0hOX0NPTU1PTihkZXYsIE1JRElfUElUQ0hfQkVORCwgY2huLCAwLCAwLCB2YWx1ZSkKKyNkZWZpbmUgU0VRX1YyX1hfQ09OVFJPTChkZXYsdm9pY2UsY29udHJvbGxlcix2YWx1ZSkgeyBfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfRVhURU5ERUQ7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gU0VRX0NPTlRST0xMRVI7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gKGRldik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDNdID0gKHZvaWNlKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSAoY29udHJvbGxlcik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDVdID0gKCh2YWx1ZSkgJiAweGZmKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNl0gPSAoKHZhbHVlID4+IDgpICYgMHhmZik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDddID0gMDsgX1NFUV9BRFZCVUYoOCk7IH0KKyNkZWZpbmUgU0VRX1BJVENIQkVORChkZXYsdm9pY2UsdmFsdWUpIFNFUV9WMl9YX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RSTF9QSVRDSF9CRU5ERVIsIHZhbHVlKQorI2RlZmluZSBTRVFfQkVOREVSX1JBTkdFKGRldix2b2ljZSx2YWx1ZSkgU0VRX1YyX1hfQ09OVFJPTChkZXYsIHZvaWNlLCBDVFJMX1BJVENIX0JFTkRFUl9SQU5HRSwgdmFsdWUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVFfRVhQUkVTU0lPTihkZXYsIHZvaWNlLCB2YWx1ZSkgU0VRX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RMX0VYUFJFU1NJT04sIHZhbHVlKjEyOCkKLSNkZWZpbmUgU0VRX01BSU5fVk9MVU1FKGRldiwgdm9pY2UsIHZhbHVlKSBTRVFfQ09OVFJPTChkZXYsIHZvaWNlLCBDVExfTUFJTl9WT0xVTUUsICh2YWx1ZSoxNjM4MykvMTAwKQotI2RlZmluZSBTRVFfUEFOTklORyhkZXYsIHZvaWNlLCBwb3MpIFNFUV9DT05UUk9MKGRldiwgdm9pY2UsIENUTF9QQU4sIChwb3MrMTI4KSAvIDIpCi0jZGVmaW5lIF9USU1FUl9FVkVOVChldiwgcGFybSkge19TRVFfTkVFREJVRig4KTsgIF9zZXFidWZbX3NlcWJ1ZnB0ciswXSA9IEVWX1RJTUlORzsgICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSAoZXYpOyAgIF9zZXFidWZbX3NlcWJ1ZnB0cisyXSA9IDA7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAwOyAgKih1bnNpZ25lZCBpbnQgKikmX3NlcWJ1Zltfc2VxYnVmcHRyKzRdID0gKHBhcm0pOyAgIF9TRVFfQURWQlVGKDgpO30KKyNkZWZpbmUgU0VRX0VYUFJFU1NJT04oZGV2LHZvaWNlLHZhbHVlKSBTRVFfQ09OVFJPTChkZXYsIHZvaWNlLCBDVExfRVhQUkVTU0lPTiwgdmFsdWUgKiAxMjgpCisjZGVmaW5lIFNFUV9NQUlOX1ZPTFVNRShkZXYsdm9pY2UsdmFsdWUpIFNFUV9DT05UUk9MKGRldiwgdm9pY2UsIENUTF9NQUlOX1ZPTFVNRSwgKHZhbHVlICogMTYzODMpIC8gMTAwKQorI2RlZmluZSBTRVFfUEFOTklORyhkZXYsdm9pY2UscG9zKSBTRVFfQ09OVFJPTChkZXYsIHZvaWNlLCBDVExfUEFOLCAocG9zICsgMTI4KSAvIDIpCisjZGVmaW5lIF9USU1FUl9FVkVOVChldixwYXJtKSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMF0gPSBFVl9USU1JTkc7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAwOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IDA7ICogKHVuc2lnbmVkIGludCAqKSAmIF9zZXFidWZbX3NlcWJ1ZnB0ciArIDRdID0gKHBhcm0pOyBfU0VRX0FEVkJVRig4KTsgfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX1NUQVJUX1RJTUVSKCkgX1RJTUVSX0VWRU5UKFRNUl9TVEFSVCwgMCkKICNkZWZpbmUgU0VRX1NUT1BfVElNRVIoKSBfVElNRVJfRVZFTlQoVE1SX1NUT1AsIDApCkBAIC04MzcsMTAgKzgzMiwxMCBAQAogI2RlZmluZSBTRVFfU09OR1BPUyhwb3MpIF9USU1FUl9FVkVOVChUTVJfU1BQLCBwb3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfVElNRV9TSUdOQVRVUkUoc2lnKSBfVElNRVJfRVZFTlQoVE1SX1RJTUVTSUcsIHNpZykKLSNkZWZpbmUgX0xPQ0FMX0VWRU5UKGV2LCBwYXJtKSB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzBdID0gRVZfU0VRX0xPQ0FMOyAgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IChldik7ICAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gMDsgIF9zZXFidWZbX3NlcWJ1ZnB0ciszXSA9IDA7ICAqKHVuc2lnbmVkIGludCAqKSZfc2VxYnVmW19zZXFidWZwdHIrNF0gPSAocGFybSk7ICAgX1NFUV9BRFZCVUYoOCk7fQorI2RlZmluZSBfTE9DQUxfRVZFTlQoZXYscGFybSkgeyBfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDBdID0gRVZfU0VRX0xPQ0FMOyBfc2VxYnVmW19zZXFidWZwdHIgKyAxXSA9IChldik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gMDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgM10gPSAwOyAqICh1bnNpZ25lZCBpbnQgKikgJiBfc2VxYnVmW19zZXFidWZwdHIgKyA0XSA9IChwYXJtKTsgX1NFUV9BRFZCVUYoOCk7IH0KICNkZWZpbmUgU0VRX1BMQVlBVURJTyhkZXZtYXNrKSBfTE9DQUxfRVZFTlQoTE9DTF9TVEFSVEFVRElPLCBkZXZtYXNrKQotI2RlZmluZSBTRVFfTUlESU9VVChkZXZpY2UsIGJ5dGUpIHtfU0VRX05FRURCVUYoNCk7ICBfc2VxYnVmW19zZXFidWZwdHJdID0gU0VRX01JRElQVVRDOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzFdID0gKGJ5dGUpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gKGRldmljZSk7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAwOyAgX1NFUV9BRFZCVUYoNCk7fQorI2RlZmluZSBTRVFfTUlESU9VVChkZXZpY2UsYnl0ZSkgeyBfU0VRX05FRURCVUYoNCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfTUlESVBVVEM7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGJ5dGUpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAyXSA9IChkZXZpY2UpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IDA7IF9TRVFfQURWQlVGKDQpOyB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVFfV1JQQVRDSChwYXRjaHgsIGxlbikgICB7aWYgKF9zZXFidWZwdHIpIFNFUV9EVU1QQlVGKCk7ICBpZiAod3JpdGUoc2VxZmQsIChjaGFyKikocGF0Y2h4KSwgbGVuKT09LTEpICAgcGVycm9yKCJXcml0ZSBwYXRjaDogL2Rldi9zZXF1ZW5jZXIiKTt9Ci0jZGVmaW5lIFNFUV9XUlBBVENIMihwYXRjaHgsIGxlbikgICAoU0VRX0RVTVBCVUYoKSwgd3JpdGUoc2VxZmQsIChjaGFyKikocGF0Y2h4KSwgbGVuKSkKKyNkZWZpbmUgU0VRX1dSUEFUQ0gocGF0Y2h4LGxlbikgeyBpZihfc2VxYnVmcHRyKSBTRVFfRFVNUEJVRigpOyBpZih3cml0ZShzZXFmZCwgKGNoYXIgKikgKHBhdGNoeCksIGxlbikgPT0gLSAxKSBwZXJyb3IoIldyaXRlIHBhdGNoOiAvZGV2L3NlcXVlbmNlciIpOyB9CisjZGVmaW5lIFNFUV9XUlBBVENIMihwYXRjaHgsbGVuKSAoU0VRX0RVTVBCVUYoKSwgd3JpdGUoc2VxZmQsIChjaGFyICopIChwYXRjaHgpLCBsZW4pKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NwaS9zcGlkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3BpL3NwaWRldi5oCmluZGV4IDI0MWRjOTUuLmMxMGJmOGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3BpL3NwaWRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3BpL3NwaWRldi5oCkBAIC0yMiwxMSArMjIsMTEgQEAKICNkZWZpbmUgU1BJX0NQSEEgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1BJX0NQT0wgMHgwMgotI2RlZmluZSBTUElfTU9ERV8wICgwfDApCi0jZGVmaW5lIFNQSV9NT0RFXzEgKDB8U1BJX0NQSEEpCi0jZGVmaW5lIFNQSV9NT0RFXzIgKFNQSV9DUE9MfDApCisjZGVmaW5lIFNQSV9NT0RFXzAgKDAgfCAwKQorI2RlZmluZSBTUElfTU9ERV8xICgwIHwgU1BJX0NQSEEpCisjZGVmaW5lIFNQSV9NT0RFXzIgKFNQSV9DUE9MIHwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNQSV9NT0RFXzMgKFNQSV9DUE9MfFNQSV9DUEhBKQorI2RlZmluZSBTUElfTU9ERV8zIChTUElfQ1BPTCB8IFNQSV9DUEhBKQogI2RlZmluZSBTUElfQ1NfSElHSCAweDA0CiAjZGVmaW5lIFNQSV9MU0JfRklSU1QgMHgwOAogI2RlZmluZSBTUElfM1dJUkUgMHgxMApAQCAtMzQsMzEgKzM0LDQxIEBACiAjZGVmaW5lIFNQSV9MT09QIDB4MjAKICNkZWZpbmUgU1BJX05PX0NTIDB4NDAKICNkZWZpbmUgU1BJX1JFQURZIDB4ODAKKyNkZWZpbmUgU1BJX1RYX0RVQUwgMHgxMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNQSV9UWF9RVUFEIDB4MjAwCisjZGVmaW5lIFNQSV9SWF9EVUFMIDB4NDAwCisjZGVmaW5lIFNQSV9SWF9RVUFEIDB4ODAwCiAjZGVmaW5lIFNQSV9JT0NfTUFHSUMgJ2snCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNwaV9pb2NfdHJhbnNmZXIgewotIF9fdTY0IHR4X2J1ZjsKLSBfX3U2NCByeF9idWY7Ci0gX191MzIgbGVuOworICBfX3U2NCB0eF9idWY7CisgIF9fdTY0IHJ4X2J1ZjsKKyAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGVlZF9oejsKLSBfX3UxNiBkZWxheV91c2VjczsKLSBfX3U4IGJpdHNfcGVyX3dvcmQ7Ci0gX191OCBjc19jaGFuZ2U7CisgIF9fdTMyIHNwZWVkX2h6OworICBfX3UxNiBkZWxheV91c2VjczsKKyAgX191OCBiaXRzX3Blcl93b3JkOworICBfX3U4IGNzX2NoYW5nZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOworICBfX3U4IHR4X25iaXRzOworICBfX3U4IHJ4X25iaXRzOworICBfX3UxNiBwYWQ7CiB9OwotI2RlZmluZSBTUElfTVNHU0laRShOKSAgICgoKChOKSooc2l6ZW9mIChzdHJ1Y3Qgc3BpX2lvY190cmFuc2ZlcikpKSA8ICgxIDw8IF9JT0NfU0laRUJJVFMpKSAgID8gKChOKSooc2l6ZW9mIChzdHJ1Y3Qgc3BpX2lvY190cmFuc2ZlcikpKSA6IDApCi0jZGVmaW5lIFNQSV9JT0NfTUVTU0FHRShOKSBfSU9XKFNQSV9JT0NfTUFHSUMsIDAsIGNoYXJbU1BJX01TR1NJWkUoTildKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1BJX01TR1NJWkUoTikgKCgoKE4pICogKHNpemVvZihzdHJ1Y3Qgc3BpX2lvY190cmFuc2ZlcikpKSA8ICgxIDw8IF9JT0NfU0laRUJJVFMpKSA/ICgoTikgKiAoc2l6ZW9mKHN0cnVjdCBzcGlfaW9jX3RyYW5zZmVyKSkpIDogMCkKKyNkZWZpbmUgU1BJX0lPQ19NRVNTQUdFKE4pIF9JT1coU1BJX0lPQ19NQUdJQywgMCwgY2hhcltTUElfTVNHU0laRShOKV0pCiAjZGVmaW5lIFNQSV9JT0NfUkRfTU9ERSBfSU9SKFNQSV9JT0NfTUFHSUMsIDEsIF9fdTgpCiAjZGVmaW5lIFNQSV9JT0NfV1JfTU9ERSBfSU9XKFNQSV9JT0NfTUFHSUMsIDEsIF9fdTgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTUElfSU9DX1JEX0xTQl9GSVJTVCBfSU9SKFNQSV9JT0NfTUFHSUMsIDIsIF9fdTgpCiAjZGVmaW5lIFNQSV9JT0NfV1JfTFNCX0ZJUlNUIF9JT1coU1BJX0lPQ19NQUdJQywgMiwgX191OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQSV9JT0NfUkRfQklUU19QRVJfV09SRCBfSU9SKFNQSV9JT0NfTUFHSUMsIDMsIF9fdTgpCiAjZGVmaW5lIFNQSV9JT0NfV1JfQklUU19QRVJfV09SRCBfSU9XKFNQSV9JT0NfTUFHSUMsIDMsIF9fdTgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTUElfSU9DX1JEX01BWF9TUEVFRF9IWiBfSU9SKFNQSV9JT0NfTUFHSUMsIDQsIF9fdTMyKQogI2RlZmluZSBTUElfSU9DX1dSX01BWF9TUEVFRF9IWiBfSU9XKFNQSV9JT0NfTUFHSUMsIDQsIF9fdTMyKQorI2RlZmluZSBTUElfSU9DX1JEX01PREUzMiBfSU9SKFNQSV9JT0NfTUFHSUMsIDUsIF9fdTMyKQorI2RlZmluZSBTUElfSU9DX1dSX01PREUzMiBfSU9XKFNQSV9JT0NfTUFHSUMsIDUsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdW5ycGMvZGVidWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3VucnBjL2RlYnVnLmgKaW5kZXggMGMyNTRjMS4uM2YwOWY2ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdW5ycGMvZGVidWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N1bnJwYy9kZWJ1Zy5oCkBAIC0zNiwxNSArMzYsMTUgQEAKICNkZWZpbmUgUlBDREJHX0FMTCAweDdmZmYKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVExfUlBDREVCVUcgPSAxLAotIENUTF9ORlNERUJVRywKLSBDVExfTkZTRERFQlVHLAotIENUTF9OTE1ERUJVRywKKyAgQ1RMX1JQQ0RFQlVHID0gMSwKKyAgQ1RMX05GU0RFQlVHLAorICBDVExfTkZTRERFQlVHLAorICBDVExfTkxNREVCVUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9TTE9UVEFCTEVfVURQLAotIENUTF9TTE9UVEFCTEVfVENQLAotIENUTF9NSU5fUkVTVlBPUlQsCi0gQ1RMX01BWF9SRVNWUE9SVCwKKyAgQ1RMX1NMT1RUQUJMRV9VRFAsCisgIENUTF9TTE9UVEFCTEVfVENQLAorICBDVExfTUlOX1JFU1ZQT1JULAorICBDVExfTUFYX1JFU1ZQT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3VzcGVuZF9pb2N0bHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3VzcGVuZF9pb2N0bHMuaAppbmRleCA0MGIxN2U0Li42ZWYxOTJmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N1c3BlbmRfaW9jdGxzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdXNwZW5kX2lvY3Rscy5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCByZXN1bWVfc3dhcF9hcmVhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9mZl90IG9mZnNldDsKLSBfX3UzMiBkZXY7CisgIF9fa2VybmVsX2xvZmZfdCBvZmZzZXQ7CisgIF9fdTMyIGRldjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFNOQVBTSE9UX0lPQ19NQUdJQyAnMycKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zMyw3ICszMyw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkFQU0hPVF9GUkVFX1NXQVBfUEFHRVMgX0lPKFNOQVBTSE9UX0lPQ19NQUdJQywgOSkKICNkZWZpbmUgU05BUFNIT1RfUzJSQU0gX0lPKFNOQVBTSE9UX0lPQ19NQUdJQywgMTEpCi0jZGVmaW5lIFNOQVBTSE9UX1NFVF9TV0FQX0FSRUEgX0lPVyhTTkFQU0hPVF9JT0NfTUFHSUMsIDEzLCAgIHN0cnVjdCByZXN1bWVfc3dhcF9hcmVhKQorI2RlZmluZSBTTkFQU0hPVF9TRVRfU1dBUF9BUkVBIF9JT1coU05BUFNIT1RfSU9DX01BR0lDLCAxMywgc3RydWN0IHJlc3VtZV9zd2FwX2FyZWEpCiAjZGVmaW5lIFNOQVBTSE9UX0dFVF9JTUFHRV9TSVpFIF9JT1IoU05BUFNIT1RfSU9DX01BR0lDLCAxNCwgX19rZXJuZWxfbG9mZl90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05BUFNIT1RfUExBVEZPUk1fU1VQUE9SVCBfSU8oU05BUFNIT1RfSU9DX01BR0lDLCAxNSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3dfc3luYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd19zeW5jLmgKaW5kZXggOGFiNTMxYy4uYWM1MDAwMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd19zeW5jLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd19zeW5jLmgKQEAgLTIxLDEzICsyMSwxMyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qgc3dfc3luY19jcmVhdGVfZmVuY2VfZGF0YSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZhbHVlOwotIGNoYXIgbmFtZVszMl07Ci0gX19zMzIgZmVuY2U7CisgIF9fdTMyIHZhbHVlOworICBjaGFyIG5hbWVbMzJdOworICBfX3MzMiBmZW5jZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19TWU5DX0lPQ19NQUdJQyAnVycKLSNkZWZpbmUgU1dfU1lOQ19JT0NfQ1JFQVRFX0ZFTkNFIF9JT1dSKFNXX1NZTkNfSU9DX01BR0lDLCAwLCAgc3RydWN0IHN3X3N5bmNfY3JlYXRlX2ZlbmNlX2RhdGEpCisjZGVmaW5lIFNXX1NZTkNfSU9DX0NSRUFURV9GRU5DRSBfSU9XUihTV19TWU5DX0lPQ19NQUdJQywgMCwgc3RydWN0IHN3X3N5bmNfY3JlYXRlX2ZlbmNlX2RhdGEpCiAjZGVmaW5lIFNXX1NZTkNfSU9DX0lOQyBfSU9XKFNXX1NZTkNfSU9DX01BR0lDLCAxLCBfX3UzMikKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3dhYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd2FiLmgKaW5kZXggOGJlODVhOC4uZDdkNmZhNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd2FiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd2FiLmgKQEAgLTIyLDE0ICsyMiwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGFzbS9zd2FiLmg+Ci0jZGVmaW5lIF9fX2NvbnN0YW50X3N3YWIxNih4KSAoKF9fdTE2KSggICAoKChfX3UxNikoeCkgJiAoX191MTYpMHgwMGZmVSkgPDwgOCkgfCAgICgoKF9fdTE2KSh4KSAmIChfX3UxNikweGZmMDBVKSA+PiA4KSkpCi0jZGVmaW5lIF9fX2NvbnN0YW50X3N3YWIzMih4KSAoKF9fdTMyKSggICAoKChfX3UzMikoeCkgJiAoX191MzIpMHgwMDAwMDBmZlVMKSA8PCAyNCkgfCAgICgoKF9fdTMyKSh4KSAmIChfX3UzMikweDAwMDBmZjAwVUwpIDw8IDgpIHwgICAoKChfX3UzMikoeCkgJiAoX191MzIpMHgwMGZmMDAwMFVMKSA+PiA4KSB8ICAgKCgoX191MzIpKHgpICYgKF9fdTMyKTB4ZmYwMDAwMDBVTCkgPj4gMjQpKSkKLSNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjY0KHgpICgoX191NjQpKCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweDAwMDAwMDAwMDAwMDAwZmZVTEwpIDw8IDU2KSB8ICAgKCgoX191NjQpKHgpICYgKF9fdTY0KTB4MDAwMDAwMDAwMDAwZmYwMFVMTCkgPDwgNDApIHwgICAoKChfX3U2NCkoeCkgJiAoX191NjQpMHgwMDAwMDAwMDAwZmYwMDAwVUxMKSA8PCAyNCkgfCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweDAwMDAwMDAwZmYwMDAwMDBVTEwpIDw8IDgpIHwgICAoKChfX3U2NCkoeCkgJiAoX191NjQpMHgwMDAwMDBmZjAwMDAwMDAwVUxMKSA+PiA4KSB8ICAgKCgoX191NjQpKHgpICYgKF9fdTY0KTB4MDAwMGZmMDAwMDAwMDAwMFVMTCkgPj4gMjQpIHwgICAoKChfX3U2NCkoeCkgJiAoX191NjQpMHgwMGZmMDAwMDAwMDAwMDAwVUxMKSA+PiA0MCkgfCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweGZmMDAwMDAwMDAwMDAwMDBVTEwpID4+IDU2KSkpCisjZGVmaW5lIF9fX2NvbnN0YW50X3N3YWIxNih4KSAoKF9fdTE2KSAoKCgoX191MTYpICh4KSAmIChfX3UxNikgMHgwMGZmVSkgPDwgOCkgfCAoKChfX3UxNikgKHgpICYgKF9fdTE2KSAweGZmMDBVKSA+PiA4KSkpCisjZGVmaW5lIF9fX2NvbnN0YW50X3N3YWIzMih4KSAoKF9fdTMyKSAoKCgoX191MzIpICh4KSAmIChfX3UzMikgMHgwMDAwMDBmZlVMKSA8PCAyNCkgfCAoKChfX3UzMikgKHgpICYgKF9fdTMyKSAweDAwMDBmZjAwVUwpIDw8IDgpIHwgKCgoX191MzIpICh4KSAmIChfX3UzMikgMHgwMGZmMDAwMFVMKSA+PiA4KSB8ICgoKF9fdTMyKSAoeCkgJiAoX191MzIpIDB4ZmYwMDAwMDBVTCkgPj4gMjQpKSkKKyNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjY0KHgpICgoX191NjQpICgoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweDAwMDAwMDAwMDAwMDAwZmZVTEwpIDw8IDU2KSB8ICgoKF9fdTY0KSAoeCkgJiAoX191NjQpIDB4MDAwMDAwMDAwMDAwZmYwMFVMTCkgPDwgNDApIHwgKCgoX191NjQpICh4KSAmIChfX3U2NCkgMHgwMDAwMDAwMDAwZmYwMDAwVUxMKSA8PCAyNCkgfCAoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweDAwMDAwMDAwZmYwMDAwMDBVTEwpIDw8IDgpIHwgKCgoX191NjQpICh4KSAmIChfX3U2NCkgMHgwMDAwMDBmZjAwMDAwMDAwVUxMKSA+PiA4KSB8ICgoKF9fdTY0KSAoeCkgJiAoX191NjQpIDB4MDAwMGZmMDAwMDAwMDAwMFVMTCkgPj4gMjQpIHwgKCgoX191NjQpICh4KSAmIChfX3U2NCkgMHgwMGZmMDAwMDAwMDAwMDAwVUxMKSA+PiA0MCkgfCAoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweGZmMDAwMDAwMDAwMDAwMDBVTEwpID4+IDU2KSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX19jb25zdGFudF9zd2FodzMyKHgpICgoX191MzIpKCAgICgoKF9fdTMyKSh4KSAmIChfX3UzMikweDAwMDBmZmZmVUwpIDw8IDE2KSB8ICAgKCgoX191MzIpKHgpICYgKF9fdTMyKTB4ZmZmZjAwMDBVTCkgPj4gMTYpKSkKLSNkZWZpbmUgX19fY29uc3RhbnRfc3dhaGIzMih4KSAoKF9fdTMyKSggICAoKChfX3UzMikoeCkgJiAoX191MzIpMHgwMGZmMDBmZlVMKSA8PCA4KSB8ICAgKCgoX191MzIpKHgpICYgKF9fdTMyKTB4ZmYwMGZmMDBVTCkgPj4gOCkpKQorI2RlZmluZSBfX19jb25zdGFudF9zd2FodzMyKHgpICgoX191MzIpICgoKChfX3UzMikgKHgpICYgKF9fdTMyKSAweDAwMDBmZmZmVUwpIDw8IDE2KSB8ICgoKF9fdTMyKSAoeCkgJiAoX191MzIpIDB4ZmZmZjAwMDBVTCkgPj4gMTYpKSkKKyNkZWZpbmUgX19fY29uc3RhbnRfc3dhaGIzMih4KSAoKF9fdTMyKSAoKCgoX191MzIpICh4KSAmIChfX3UzMikgMHgwMGZmMDBmZlVMKSA8PCA4KSB8ICgoKF9fdTMyKSAoeCkgJiAoX191MzIpIDB4ZmYwMGZmMDBVTCkgPj4gOCkpKQogI2lmZGVmIF9fSEFWRV9CVUlMVElOX0JTV0FQMTZfXwotI2VsaWYgZGVmaW5lZCAoX19hcmNoX3N3YWIxNikKKyNlbGlmIGRlZmluZWQoX19hcmNoX3N3YWIxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQogI2VuZGlmCkBAIC0zOSw3ICszOSw3IEBACiAjZWxzZQogI2VuZGlmCiAjaWZkZWYgX19IQVZFX0JVSUxUSU5fQlNXQVA2NF9fCi0jZWxpZiBkZWZpbmVkIChfX2FyY2hfc3dhYjY0KQorI2VsaWYgZGVmaW5lZChfX2FyY2hfc3dhYjY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbGlmIGRlZmluZWQoX19TV0FCXzY0X1RIUlVfMzJfXykKICNlbHNlCkBAIC01MiwxMiArNTIsMTIgQEAKICNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0jZGVmaW5lIF9fc3dhYjE2KHgpICAgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UxNikoeCkpID8gICBfX19jb25zdGFudF9zd2FiMTYoeCkgOiAgIF9fZnN3YWIxNih4KSkKLSNkZWZpbmUgX19zd2FiMzIoeCkgICAoX19idWlsdGluX2NvbnN0YW50X3AoKF9fdTMyKSh4KSkgPyAgIF9fX2NvbnN0YW50X3N3YWIzMih4KSA6ICAgX19mc3dhYjMyKHgpKQotI2RlZmluZSBfX3N3YWI2NCh4KSAgIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191NjQpKHgpKSA/ICAgX19fY29uc3RhbnRfc3dhYjY0KHgpIDogICBfX2Zzd2FiNjQoeCkpCisjZGVmaW5lIF9fc3dhYjE2KHgpIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MTYpICh4KSkgPyBfX19jb25zdGFudF9zd2FiMTYoeCkgOiBfX2Zzd2FiMTYoeCkpCisjZGVmaW5lIF9fc3dhYjMyKHgpIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpICh4KSkgPyBfX19jb25zdGFudF9zd2FiMzIoeCkgOiBfX2Zzd2FiMzIoeCkpCisjZGVmaW5lIF9fc3dhYjY0KHgpIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191NjQpICh4KSkgPyBfX19jb25zdGFudF9zd2FiNjQoeCkgOiBfX2Zzd2FiNjQoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX3N3YWh3MzIoeCkgICAoX19idWlsdGluX2NvbnN0YW50X3AoKF9fdTMyKSh4KSkgPyAgIF9fX2NvbnN0YW50X3N3YWh3MzIoeCkgOiAgIF9fZnN3YWh3MzIoeCkpCi0jZGVmaW5lIF9fc3dhaGIzMih4KSAgIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpKHgpKSA/ICAgX19fY29uc3RhbnRfc3dhaGIzMih4KSA6ICAgX19mc3dhaGIzMih4KSkKKyNkZWZpbmUgX19zd2FodzMyKHgpIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpICh4KSkgPyBfX19jb25zdGFudF9zd2FodzMyKHgpIDogX19mc3dhaHczMih4KSkKKyNkZWZpbmUgX19zd2FoYjMyKHgpIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpICh4KSkgPyBfX19jb25zdGFudF9zd2FoYjMyKHgpIDogX19mc3dhaGIzMih4KSkKICNpZmRlZiBfX2FyY2hfc3dhYjE2cAogI2Vsc2UKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5bmMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luYy5oCmluZGV4IGVmNzRmYWYuLmJiZjY2NDEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luYy5oCkBAIC0yMiwzMiArMjIsMzIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzeW5jX21lcmdlX2RhdGEgewotIF9fczMyIGZkMjsKLSBjaGFyIG5hbWVbMzJdOwotIF9fczMyIGZlbmNlOworICBfX3MzMiBmZDI7CisgIGNoYXIgbmFtZVszMl07CisgIF9fczMyIGZlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc3luY19wdF9pbmZvIHsKLSBfX3UzMiBsZW47Ci0gY2hhciBvYmpfbmFtZVszMl07CisgIF9fdTMyIGxlbjsKKyAgY2hhciBvYmpfbmFtZVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZHJpdmVyX25hbWVbMzJdOwotIF9fczMyIHN0YXR1czsKLSBfX3U2NCB0aW1lc3RhbXBfbnM7Ci0gX191OCBkcml2ZXJfZGF0YVswXTsKKyAgY2hhciBkcml2ZXJfbmFtZVszMl07CisgIF9fczMyIHN0YXR1czsKKyAgX191NjQgdGltZXN0YW1wX25zOworICBfX3U4IGRyaXZlcl9kYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc3luY19mZW5jZV9pbmZvX2RhdGEgewotIF9fdTMyIGxlbjsKLSBjaGFyIG5hbWVbMzJdOworICBfX3UzMiBsZW47CisgIGNoYXIgbmFtZVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHN0YXR1czsKLSBfX3U4IHB0X2luZm9bMF07CisgIF9fczMyIHN0YXR1czsKKyAgX191OCBwdF9pbmZvWzBdOwogfTsKICNkZWZpbmUgU1lOQ19JT0NfTUFHSUMgJz4nCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5DX0lPQ19XQUlUIF9JT1coU1lOQ19JT0NfTUFHSUMsIDAsIF9fczMyKQogI2RlZmluZSBTWU5DX0lPQ19NRVJHRSBfSU9XUihTWU5DX0lPQ19NQUdJQywgMSwgc3RydWN0IHN5bmNfbWVyZ2VfZGF0YSkKLSNkZWZpbmUgU1lOQ19JT0NfRkVOQ0VfSU5GTyBfSU9XUihTWU5DX0lPQ19NQUdJQywgMiwgIHN0cnVjdCBzeW5jX2ZlbmNlX2luZm9fZGF0YSkKKyNkZWZpbmUgU1lOQ19JT0NfRkVOQ0VfSU5GTyBfSU9XUihTWU5DX0lPQ19NQUdJQywgMiwgc3RydWN0IHN5bmNfZmVuY2VfaW5mb19kYXRhKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jbGluay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jbGluay5oCmluZGV4IDdmZjgwNWQuLmJhNTM3MmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luY2xpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5bmNsaW5rLmgKQEAgLTE2MiwxNDAgKzE2MiwxMzkgQEAKICNkZWZpbmUgTUdTTF9JTlRFUkZBQ0VfUkwgMHg0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUdTTF9JTlRFUkZBQ0VfTVNCX0ZJUlNUIDB4ODAKLXR5cGVkZWYgc3RydWN0IF9NR1NMX1BBUkFNUwotewotIHVuc2lnbmVkIGxvbmcgbW9kZTsKK3R5cGVkZWYgc3RydWN0IF9NR1NMX1BBUkFNUyB7CisgIHVuc2lnbmVkIGxvbmcgbW9kZTsKKyAgdW5zaWduZWQgY2hhciBsb29wYmFjazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBsb29wYmFjazsKLSB1bnNpZ25lZCBzaG9ydCBmbGFnczsKLSB1bnNpZ25lZCBjaGFyIGVuY29kaW5nOwotIHVuc2lnbmVkIGxvbmcgY2xvY2tfc3BlZWQ7CisgIHVuc2lnbmVkIHNob3J0IGZsYWdzOworICB1bnNpZ25lZCBjaGFyIGVuY29kaW5nOworICB1bnNpZ25lZCBsb25nIGNsb2NrX3NwZWVkOworICB1bnNpZ25lZCBjaGFyIGFkZHJfZmlsdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGFkZHJfZmlsdGVyOwotIHVuc2lnbmVkIHNob3J0IGNyY190eXBlOwotIHVuc2lnbmVkIGNoYXIgcHJlYW1ibGVfbGVuZ3RoOwotIHVuc2lnbmVkIGNoYXIgcHJlYW1ibGU7CisgIHVuc2lnbmVkIHNob3J0IGNyY190eXBlOworICB1bnNpZ25lZCBjaGFyIHByZWFtYmxlX2xlbmd0aDsKKyAgdW5zaWduZWQgY2hhciBwcmVhbWJsZTsKKyAgdW5zaWduZWQgbG9uZyBkYXRhX3JhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZGF0YV9yYXRlOwotIHVuc2lnbmVkIGNoYXIgZGF0YV9iaXRzOwotIHVuc2lnbmVkIGNoYXIgc3RvcF9iaXRzOwotIHVuc2lnbmVkIGNoYXIgcGFyaXR5OworICB1bnNpZ25lZCBjaGFyIGRhdGFfYml0czsKKyAgdW5zaWduZWQgY2hhciBzdG9wX2JpdHM7CisgIHVuc2lnbmVkIGNoYXIgcGFyaXR5OworfSBNR1NMX1BBUkFNUywgKiBQTUdTTF9QQVJBTVM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBNR1NMX1BBUkFNUywgKlBNR1NMX1BBUkFNUzsKICNkZWZpbmUgTUlDUk9HQVRFX1ZFTkRPUl9JRCAweDEzYzAKICNkZWZpbmUgU1lOQ0xJTktfREVWSUNFX0lEIDB4MDAxMAogI2RlZmluZSBNR1NDQ19ERVZJQ0VfSUQgMHgwMDIwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5DTElOS19TQ0FfREVWSUNFX0lEIDB4MDAzMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1lOQ0xJTktfR1RfREVWSUNFX0lEIDB4MDA3MAogI2RlZmluZSBTWU5DTElOS19HVDRfREVWSUNFX0lEIDB4MDA4MAogI2RlZmluZSBTWU5DTElOS19BQ19ERVZJQ0VfSUQgMHgwMDkwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5DTElOS19HVDJfREVWSUNFX0lEIDB4MDBBMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUdTTF9NQVhfU0VSSUFMX05VTUJFUiAzMAogI2RlZmluZSBEaWFnU3RhdHVzX09LIDAKICNkZWZpbmUgRGlhZ1N0YXR1c19BZGRyZXNzRmFpbHVyZSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEaWFnU3RhdHVzX0FkZHJlc3NDb25mbGljdCAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEaWFnU3RhdHVzX0lycUZhaWx1cmUgMwogI2RlZmluZSBEaWFnU3RhdHVzX0lycUNvbmZsaWN0IDQKICNkZWZpbmUgRGlhZ1N0YXR1c19EbWFGYWlsdXJlIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERpYWdTdGF0dXNfRG1hQ29uZmxpY3QgNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRGlhZ1N0YXR1c19QY2lBZGFwdGVyTm90Rm91bmQgNwogI2RlZmluZSBEaWFnU3RhdHVzX0NhbnRBc3NpZ25QY2lSZXNvdXJjZXMgOAogI2RlZmluZSBEaWFnU3RhdHVzX0NhbnRBc3NpZ25QY2lNZW1BZGRyIDkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERpYWdTdGF0dXNfQ2FudEFzc2lnblBjaUlvQWRkciAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRGlhZ1N0YXR1c19DYW50QXNzaWduUGNpSXJxIDExCiAjZGVmaW5lIERpYWdTdGF0dXNfTWVtb3J5RXJyb3IgMTIKICNkZWZpbmUgU2VyaWFsU2lnbmFsX0RDRCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTZXJpYWxTaWduYWxfVFhEIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9SSSAweDA0CiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9SWEQgMHgwOAogI2RlZmluZSBTZXJpYWxTaWduYWxfQ1RTIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9SVFMgMHgyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU2VyaWFsU2lnbmFsX0RTUiAweDQwCiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9EVFIgMHg4MAogc3RydWN0IG1nc2xfaWNvdW50IHsKKyAgX191MzIgY3RzLCBkc3IsIHJuZywgZGNkLCB0eCwgcng7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGN0cywgZHNyLCBybmcsIGRjZCwgdHgsIHJ4OwotIF9fdTMyIGZyYW1lLCBwYXJpdHksIG92ZXJydW4sIGJyazsKLSBfX3UzMiBidWZfb3ZlcnJ1bjsKLSBfX3UzMiB0eG9rOworICBfX3UzMiBmcmFtZSwgcGFyaXR5LCBvdmVycnVuLCBicms7CisgIF9fdTMyIGJ1Zl9vdmVycnVuOworICBfX3UzMiB0eG9rOworICBfX3UzMiB0eHVuZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eHVuZGVyOwotIF9fdTMyIHR4YWJvcnQ7Ci0gX191MzIgdHh0aW1lb3V0OwotIF9fdTMyIHJ4c2hvcnQ7CisgIF9fdTMyIHR4YWJvcnQ7CisgIF9fdTMyIHR4dGltZW91dDsKKyAgX191MzIgcnhzaG9ydDsKKyAgX191MzIgcnhsb25nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeGxvbmc7Ci0gX191MzIgcnhhYm9ydDsKLSBfX3UzMiByeG92ZXI7Ci0gX191MzIgcnhjcmM7CisgIF9fdTMyIHJ4YWJvcnQ7CisgIF9fdTMyIHJ4b3ZlcjsKKyAgX191MzIgcnhjcmM7CisgIF9fdTMyIHJ4b2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4b2s7Ci0gX191MzIgZXhpdGh1bnQ7Ci0gX191MzIgcnhpZGxlOworICBfX3UzMiBleGl0aHVudDsKKyAgX191MzIgcnhpZGxlOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ3Bpb19kZXNjIHsKLSBfX3UzMiBzdGF0ZTsKLSBfX3UzMiBzbWFzazsKLSBfX3UzMiBkaXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRtYXNrOworICBfX3UzMiBzdGF0ZTsKKyAgX191MzIgc21hc2s7CisgIF9fdTMyIGRpcjsKKyAgX191MzIgZG1hc2s7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgREVCVUdfTEVWRUxfREFUQSAxCiAjZGVmaW5lIERFQlVHX0xFVkVMX0VSUk9SIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERFQlVHX0xFVkVMX0lORk8gMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgREVCVUdfTEVWRUxfQkggNAogI2RlZmluZSBERUJVR19MRVZFTF9JU1IgNQogI2RlZmluZSBNZ3NsRXZlbnRfRHNyQWN0aXZlIDB4MDAwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X0RzckluYWN0aXZlIDB4MDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X0RzciAweDAwMDMKICNkZWZpbmUgTWdzbEV2ZW50X0N0c0FjdGl2ZSAweDAwMDQKICNkZWZpbmUgTWdzbEV2ZW50X0N0c0luYWN0aXZlIDB4MDAwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X0N0cyAweDAwMGMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1nc2xFdmVudF9EY2RBY3RpdmUgMHgwMDEwCiAjZGVmaW5lIE1nc2xFdmVudF9EY2RJbmFjdGl2ZSAweDAwMjAKICNkZWZpbmUgTWdzbEV2ZW50X0RjZCAweDAwMzAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1nc2xFdmVudF9SaUFjdGl2ZSAweDAwNDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1nc2xFdmVudF9SaUluYWN0aXZlIDB4MDA4MAogI2RlZmluZSBNZ3NsRXZlbnRfUmkgMHgwMGMwCiAjZGVmaW5lIE1nc2xFdmVudF9FeGl0SHVudE1vZGUgMHgwMTAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNZ3NsRXZlbnRfSWRsZVJlY2VpdmVkIDB4MDIwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUdTTF9NQUdJQ19JT0MgJ20nCi0jZGVmaW5lIE1HU0xfSU9DU1BBUkFNUyBfSU9XKE1HU0xfTUFHSUNfSU9DLDAsc3RydWN0IF9NR1NMX1BBUkFNUykKLSNkZWZpbmUgTUdTTF9JT0NHUEFSQU1TIF9JT1IoTUdTTF9NQUdJQ19JT0MsMSxzdHJ1Y3QgX01HU0xfUEFSQU1TKQorI2RlZmluZSBNR1NMX0lPQ1NQQVJBTVMgX0lPVyhNR1NMX01BR0lDX0lPQywgMCwgc3RydWN0IF9NR1NMX1BBUkFNUykKKyNkZWZpbmUgTUdTTF9JT0NHUEFSQU1TIF9JT1IoTUdTTF9NQUdJQ19JT0MsIDEsIHN0cnVjdCBfTUdTTF9QQVJBTVMpCisjZGVmaW5lIE1HU0xfSU9DU1RYSURMRSBfSU8oTUdTTF9NQUdJQ19JT0MsIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR1NMX0lPQ1NUWElETEUgX0lPKE1HU0xfTUFHSUNfSU9DLDIpCi0jZGVmaW5lIE1HU0xfSU9DR1RYSURMRSBfSU8oTUdTTF9NQUdJQ19JT0MsMykKLSNkZWZpbmUgTUdTTF9JT0NUWEVOQUJMRSBfSU8oTUdTTF9NQUdJQ19JT0MsNCkKLSNkZWZpbmUgTUdTTF9JT0NSWEVOQUJMRSBfSU8oTUdTTF9NQUdJQ19JT0MsNSkKKyNkZWZpbmUgTUdTTF9JT0NHVFhJRExFIF9JTyhNR1NMX01BR0lDX0lPQywgMykKKyNkZWZpbmUgTUdTTF9JT0NUWEVOQUJMRSBfSU8oTUdTTF9NQUdJQ19JT0MsIDQpCisjZGVmaW5lIE1HU0xfSU9DUlhFTkFCTEUgX0lPKE1HU0xfTUFHSUNfSU9DLCA1KQorI2RlZmluZSBNR1NMX0lPQ1RYQUJPUlQgX0lPKE1HU0xfTUFHSUNfSU9DLCA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUdTTF9JT0NUWEFCT1JUIF9JTyhNR1NMX01BR0lDX0lPQyw2KQotI2RlZmluZSBNR1NMX0lPQ0dTVEFUUyBfSU8oTUdTTF9NQUdJQ19JT0MsNykKLSNkZWZpbmUgTUdTTF9JT0NXQUlURVZFTlQgX0lPV1IoTUdTTF9NQUdJQ19JT0MsOCxpbnQpCi0jZGVmaW5lIE1HU0xfSU9DQ0xSTU9EQ09VTlQgX0lPKE1HU0xfTUFHSUNfSU9DLDE1KQorI2RlZmluZSBNR1NMX0lPQ0dTVEFUUyBfSU8oTUdTTF9NQUdJQ19JT0MsIDcpCisjZGVmaW5lIE1HU0xfSU9DV0FJVEVWRU5UIF9JT1dSKE1HU0xfTUFHSUNfSU9DLCA4LCBpbnQpCisjZGVmaW5lIE1HU0xfSU9DQ0xSTU9EQ09VTlQgX0lPKE1HU0xfTUFHSUNfSU9DLCAxNSkKKyNkZWZpbmUgTUdTTF9JT0NMT09QVFhET05FIF9JTyhNR1NMX01BR0lDX0lPQywgOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1HU0xfSU9DTE9PUFRYRE9ORSBfSU8oTUdTTF9NQUdJQ19JT0MsOSkKLSNkZWZpbmUgTUdTTF9JT0NTSUYgX0lPKE1HU0xfTUFHSUNfSU9DLDEwKQotI2RlZmluZSBNR1NMX0lPQ0dJRiBfSU8oTUdTTF9NQUdJQ19JT0MsMTEpCi0jZGVmaW5lIE1HU0xfSU9DU0dQSU8gX0lPVyhNR1NMX01BR0lDX0lPQywxNixzdHJ1Y3QgZ3Bpb19kZXNjKQorI2RlZmluZSBNR1NMX0lPQ1NJRiBfSU8oTUdTTF9NQUdJQ19JT0MsIDEwKQorI2RlZmluZSBNR1NMX0lPQ0dJRiBfSU8oTUdTTF9NQUdJQ19JT0MsIDExKQorI2RlZmluZSBNR1NMX0lPQ1NHUElPIF9JT1coTUdTTF9NQUdJQ19JT0MsIDE2LCBzdHJ1Y3QgZ3Bpb19kZXNjKQorI2RlZmluZSBNR1NMX0lPQ0dHUElPIF9JT1IoTUdTTF9NQUdJQ19JT0MsIDE3LCBzdHJ1Y3QgZ3Bpb19kZXNjKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUdTTF9JT0NHR1BJTyBfSU9SKE1HU0xfTUFHSUNfSU9DLDE3LHN0cnVjdCBncGlvX2Rlc2MpCi0jZGVmaW5lIE1HU0xfSU9DV0FJVEdQSU8gX0lPV1IoTUdTTF9NQUdJQ19JT0MsMTgsc3RydWN0IGdwaW9fZGVzYykKKyNkZWZpbmUgTUdTTF9JT0NXQUlUR1BJTyBfSU9XUihNR1NMX01BR0lDX0lPQywgMTgsIHN0cnVjdCBncGlvX2Rlc2MpCiAjZGVmaW5lIE1HU0xfSU9DU1hTWU5DIF9JTyhNR1NMX01BR0lDX0lPQywgMTkpCiAjZGVmaW5lIE1HU0xfSU9DR1hTWU5DIF9JTyhNR1NMX01BR0lDX0lPQywgMjApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR1NMX0lPQ1NYQ1RSTCBfSU8oTUdTTF9NQUdJQ19JT0MsIDIxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUdTTF9JT0NHWENUUkwgX0lPKE1HU0xfTUFHSUNfSU9DLCAyMikKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNjdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3lzY3RsLmgKaW5kZXggODhjYjAxYy4uMmNhYzVmMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNjdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2N0bC5oCkBAIC0yNiw5NTggKzI2LDkzNSBAQAogI2RlZmluZSBDVExfTUFYTkFNRSAxMAogc3RydWN0IF9fc3lzY3RsX2FyZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX191c2VyICpuYW1lOwotIGludCBubGVuOwotIHZvaWQgX191c2VyICpvbGR2YWw7Ci0gc2l6ZV90IF9fdXNlciAqb2xkbGVucDsKKyAgaW50IF9fdXNlciAqIG5hbWU7CisgIGludCBubGVuOworICB2b2lkIF9fdXNlciAqIG9sZHZhbDsKKyAgc2l6ZV90IF9fdXNlciAqIG9sZGxlbnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpuZXd2YWw7Ci0gc2l6ZV90IG5ld2xlbjsKLSB1bnNpZ25lZCBsb25nIF9fbGludXhfdW51c2VkWzRdOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtCi17Ci0gQ1RMX0tFUk49MSwKLSBDVExfVk09MiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX05FVD0zLAotIENUTF9QUk9DPTQsCi0gQ1RMX0ZTPTUsCi0gQ1RMX0RFQlVHPTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9ERVY9NywKLSBDVExfQlVTPTgsCi0gQ1RMX0FCST05LAotIENUTF9DUFU9MTAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9BUkxBTj0yNTQsCi0gQ1RMX1MzOTBEQkY9NTY3NywKLSBDVExfU1VOUlBDPTcyNDksCi0gQ1RMX1BNPTk4OTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9GUlY9OTg5OCwKLX07Ci1lbnVtCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9CVVNfSVNBPTEKLX07Ci1lbnVtCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElOT1RJRllfTUFYX1VTRVJfSU5TVEFOQ0VTPTEsCi0gSU5PVElGWV9NQVhfVVNFUl9XQVRDSEVTPTIsCi0gSU5PVElGWV9NQVhfUVVFVUVEX0VWRU5UUz0zCi19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0KLXsKLSBLRVJOX09TVFlQRT0xLAotIEtFUk5fT1NSRUxFQVNFPTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fT1NSRVY9MywKLSBLRVJOX1ZFUlNJT049NCwKLSBLRVJOX1NFQ1VSRU1BU0s9NSwKLSBLRVJOX1BST0Y9NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9OT0RFTkFNRT03LAotIEtFUk5fRE9NQUlOTkFNRT04LAotIEtFUk5fUEFOSUM9MTUsCi0gS0VSTl9SRUFMUk9PVERFVj0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9TUEFSQ19SRUJPT1Q9MjEsCi0gS0VSTl9DVExBTFRERUw9MjIsCi0gS0VSTl9QUklOVEs9MjMsCi0gS0VSTl9OQU1FVFJBTlM9MjQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fUFBDX0hUQUJSRUNMQUlNPTI1LAotIEtFUk5fUFBDX1pFUk9QQUdFRD0yNiwKLSBLRVJOX1BQQ19QT1dFUlNBVkVfTkFQPTI3LAotIEtFUk5fTU9EUFJPQkU9MjgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fU0dfQklHX0JVRkY9MjksCi0gS0VSTl9BQ0NUPTMwLAotIEtFUk5fUFBDX0wyQ1I9MzEsCi0gS0VSTl9SVFNJR05SPTMyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1JUU0lHTUFYPTMzLAotIEtFUk5fU0hNTUFYPTM0LAotIEtFUk5fTVNHTUFYPTM1LAotIEtFUk5fTVNHTU5CPTM2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX01TR1BPT0w9MzcsCi0gS0VSTl9TWVNSUT0zOCwKLSBLRVJOX01BWF9USFJFQURTPTM5LAotIEtFUk5fUkFORE9NPTQwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1NITUFMTD00MSwKLSBLRVJOX01TR01OST00MiwKLSBLRVJOX1NFTT00MywKLSBLRVJOX1NQQVJDX1NUT1BfQT00NCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9TSE1NTkk9NDUsCi0gS0VSTl9PVkVSRkxPV1VJRD00NiwKLSBLRVJOX09WRVJGTE9XR0lEPTQ3LAotIEtFUk5fU0hNUEFUSD00OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9IT1RQTFVHPTQ5LAotIEtFUk5fSUVFRV9FTVVMQVRJT05fV0FSTklOR1M9NTAsCi0gS0VSTl9TMzkwX1VTRVJfREVCVUdfTE9HR0lORz01MSwKLSBLRVJOX0NPUkVfVVNFU19QSUQ9NTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fVEFJTlRFRD01MywKLSBLRVJOX0NBRFBJRD01NCwKLSBLRVJOX1BJRE1BWD01NSwKLSBLRVJOX0NPUkVfUEFUVEVSTj01NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9QQU5JQ19PTl9PT1BTPTU3LAotIEtFUk5fSFBQQV9QV1JTVz01OCwKLSBLRVJOX0hQUEFfVU5BTElHTkVEPTU5LAotIEtFUk5fUFJJTlRLX1JBVEVMSU1JVD02MCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9QUklOVEtfUkFURUxJTUlUX0JVUlNUPTYxLAotIEtFUk5fUFRZPTYyLAotIEtFUk5fTkdST1VQU19NQVg9NjMsCi0gS0VSTl9TUEFSQ19TQ09OU19QV1JPRkY9NjQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fSFpfVElNRVI9NjUsCi0gS0VSTl9VTktOT1dOX05NSV9QQU5JQz02NiwKLSBLRVJOX0JPT1RMT0FERVJfVFlQRT02NywKLSBLRVJOX1JBTkRPTUlaRT02OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9TRVRVSURfRFVNUEFCTEU9NjksCi0gS0VSTl9TUElOX1JFVFJZPTcwLAotIEtFUk5fQUNQSV9WSURFT19GTEFHUz03MSwKLSBLRVJOX0lBNjRfVU5BTElHTkVEPTcyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX0NPTVBBVF9MT0c9NzMsCi0gS0VSTl9NQVhfTE9DS19ERVBUSD03NCwKLSBLRVJOX05NSV9XQVRDSERPRz03NSwKLSBLRVJOX1BBTklDX09OX05NST03NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotZW51bQotewotIFZNX1VOVVNFRDE9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fVU5VU0VEMj0yLAotIFZNX1VOVVNFRDM9MywKLSBWTV9VTlVTRUQ0PTQsCi0gVk1fT1ZFUkNPTU1JVF9NRU1PUlk9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fVU5VU0VENT02LAotIFZNX1VOVVNFRDc9NywKLSBWTV9VTlVTRUQ4PTgsCi0gVk1fVU5VU0VEOT05LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9QQUdFX0NMVVNURVI9MTAsCi0gVk1fRElSVFlfQkFDS0dST1VORD0xMSwKLSBWTV9ESVJUWV9SQVRJTz0xMiwKLSBWTV9ESVJUWV9XQl9DUz0xMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fRElSVFlfRVhQSVJFX0NTPTE0LAotIFZNX05SX1BERkxVU0hfVEhSRUFEUz0xNSwKLSBWTV9PVkVSQ09NTUlUX1JBVElPPTE2LAotIFZNX1BBR0VCVUY9MTcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX0hVR0VUTEJfUEFHRVM9MTgsCi0gVk1fU1dBUFBJTkVTUz0xOSwKLSBWTV9MT1dNRU1fUkVTRVJWRV9SQVRJTz0yMCwKLSBWTV9NSU5fRlJFRV9LQllURVM9MjEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX01BWF9NQVBfQ09VTlQ9MjIsCi0gVk1fTEFQVE9QX01PREU9MjMsCi0gVk1fQkxPQ0tfRFVNUD0yNCwKLSBWTV9IVUdFVExCX0dST1VQPTI1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9WRlNfQ0FDSEVfUFJFU1NVUkU9MjYsCi0gVk1fTEVHQUNZX1ZBX0xBWU9VVD0yNywKLSBWTV9TV0FQX1RPS0VOX1RJTUVPVVQ9MjgsCi0gVk1fRFJPUF9QQUdFQ0FDSEU9MjksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX1BFUkNQVV9QQUdFTElTVF9GUkFDVElPTj0zMCwKLSBWTV9aT05FX1JFQ0xBSU1fTU9ERT0zMSwKLSBWTV9NSU5fVU5NQVBQRUQ9MzIsCi0gVk1fUEFOSUNfT05fT09NPTMzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9WRFNPX0VOQUJMRUQ9MzQsCi0gVk1fTUlOX1NMQUI9MzUsCi19OwotZW51bQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBORVRfQ09SRT0xLAotIE5FVF9FVEhFUj0yLAotIE5FVF84MDI9MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1VOSVg9NCwKLSBORVRfSVBWND01LAotIE5FVF9JUFg9NiwKLSBORVRfQVRBTEs9NywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FVFJPTT04LAotIE5FVF9BWDI1PTksCi0gTkVUX0JSSURHRT0xMCwKLSBORVRfUk9TRT0xMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjY9MTIsCi0gTkVUX1gyNT0xMywKLSBORVRfVFI9MTQsCi0gTkVUX0RFQ05FVD0xNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0VDT05FVD0xNiwKLSBORVRfU0NUUD0xNywKLSBORVRfTExDPTE4LAotIE5FVF9ORVRGSUxURVI9MTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9EQ0NQPTIwLAotIE5FVF9JUkRBPTQxMiwKLX07Ci1lbnVtCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIFJBTkRPTV9QT09MU0laRT0xLAotIFJBTkRPTV9FTlRST1BZX0NPVU5UPTIsCi0gUkFORE9NX1JFQURfVEhSRVNIPTMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJBTkRPTV9XUklURV9USFJFU0g9NCwKLSBSQU5ET01fQk9PVF9JRD01LAotIFJBTkRPTV9VVUlEPTYKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bQotewotIFBUWV9NQVg9MSwKLSBQVFlfTlI9MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1lbnVtCi17Ci0gQlVTX0lTQV9NRU1fQkFTRT0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCVVNfSVNBX1BPUlRfQkFTRT0yLAotIEJVU19JU0FfUE9SVF9TSElGVD0zCi19OwotZW51bQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBORVRfQ09SRV9XTUVNX01BWD0xLAotIE5FVF9DT1JFX1JNRU1fTUFYPTIsCi0gTkVUX0NPUkVfV01FTV9ERUZBVUxUPTMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9DT1JFX1JNRU1fREVGQVVMVD00LAotIE5FVF9DT1JFX01BWF9CQUNLTE9HPTYsCi0gTkVUX0NPUkVfRkFTVFJPVVRFPTcsCi0gTkVUX0NPUkVfTVNHX0NPU1Q9OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NPUkVfTVNHX0JVUlNUPTksCi0gTkVUX0NPUkVfT1BUTUVNX01BWD0xMCwKLSBORVRfQ09SRV9IT1RfTElTVF9MRU5HVEg9MTEsCi0gTkVUX0NPUkVfRElWRVJUX1ZFUlNJT049MTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9DT1JFX05PX0NPTkdfVEhSRVNIPTEzLAotIE5FVF9DT1JFX05PX0NPTkc9MTQsCi0gTkVUX0NPUkVfTE9fQ09ORz0xNSwKLSBORVRfQ09SRV9NT0RfQ09ORz0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NPUkVfREVWX1dFSUdIVD0xNywKLSBORVRfQ09SRV9TT01BWENPTk49MTgsCi0gTkVUX0NPUkVfQlVER0VUPTE5LAotIE5FVF9DT1JFX0FFVkVOVF9FVElNRT0yMCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NPUkVfQUVWRU5UX1JTRVFUSD0yMSwKLSBORVRfQ09SRV9XQVJOSU5HUz0yMiwKLX07Ci1lbnVtCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIE5FVF9VTklYX0RFU1RST1lfREVMQVk9MSwKLSBORVRfVU5JWF9ERUxFVEVfREVMQVk9MiwKLSBORVRfVU5JWF9NQVhfREdSQU1fUUxFTj0zLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1lbnVtCi17Ci0gTkVUX05GX0NPTk5UUkFDS19NQVg9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fU0VOVD0yLAotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfU1lOX1JFQ1Y9MywKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0VTVEFCTElTSEVEPTQsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9GSU5fV0FJVD01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFX1dBSVQ9NiwKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0xBU1RfQUNLPTcsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9USU1FX1dBSVQ9OCwKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFPTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORl9DT05OVFJBQ0tfVURQX1RJTUVPVVQ9MTAsCi0gTkVUX05GX0NPTk5UUkFDS19VRFBfVElNRU9VVF9TVFJFQU09MTEsCi0gTkVUX05GX0NPTk5UUkFDS19JQ01QX1RJTUVPVVQ9MTIsCi0gTkVUX05GX0NPTk5UUkFDS19HRU5FUklDX1RJTUVPVVQ9MTMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORl9DT05OVFJBQ0tfQlVDS0VUUz0xNCwKLSBORVRfTkZfQ09OTlRSQUNLX0xPR19JTlZBTElEPTE1LAotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTUFYX1JFVFJBTlM9MTYsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfTE9PU0U9MTcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORl9DT05OVFJBQ0tfVENQX0JFX0xJQkVSQUw9MTgsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfTUFYX1JFVFJBTlM9MTksCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ0xPU0VEPTIwLAotIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9XQUlUPTIxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DT09LSUVfRUNIT0VEPTIyLAotIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0VTVEFCTElTSEVEPTIzLAotIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX1NIVVRET1dOX1NFTlQ9MjQsCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fUkVDRD0yNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fQUNLX1NFTlQ9MjYsCi0gTkVUX05GX0NPTk5UUkFDS19DT1VOVD0yNywKLSBORVRfTkZfQ09OTlRSQUNLX0lDTVBWNl9USU1FT1VUPTI4LAotIE5FVF9ORl9DT05OVFJBQ0tfRlJBRzZfVElNRU9VVD0yOSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19GUkFHNl9MT1dfVEhSRVNIPTMwLAotIE5FVF9ORl9DT05OVFJBQ0tfRlJBRzZfSElHSF9USFJFU0g9MzEsCi0gTkVUX05GX0NPTk5UUkFDS19DSEVDS1NVTT0zMiwKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bQotewotIE5FVF9JUFY0X0ZPUldBUkQ9OCwKLSBORVRfSVBWNF9EWU5BRERSPTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0NPTkY9MTYsCi0gTkVUX0lQVjRfTkVJR0g9MTcsCi0gTkVUX0lQVjRfUk9VVEU9MTgsCi0gTkVUX0lQVjRfRklCX0hBU0g9MTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05FVEZJTFRFUj0yMCwKLSBORVRfSVBWNF9UQ1BfVElNRVNUQU1QUz0zMywKLSBORVRfSVBWNF9UQ1BfV0lORE9XX1NDQUxJTkc9MzQsCi0gTkVUX0lQVjRfVENQX1NBQ0s9MzUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1RDUF9SRVRSQU5TX0NPTExBUFNFPTM2LAotIE5FVF9JUFY0X0RFRkFVTFRfVFRMPTM3LAotIE5FVF9JUFY0X0FVVE9DT05GSUc9MzgsCi0gTkVUX0lQVjRfTk9fUE1UVV9ESVNDPTM5LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9UQ1BfU1lOX1JFVFJJRVM9NDAsCi0gTkVUX0lQVjRfSVBGUkFHX0hJR0hfVEhSRVNIPTQxLAotIE5FVF9JUFY0X0lQRlJBR19MT1dfVEhSRVNIPTQyLAotIE5FVF9JUFY0X0lQRlJBR19USU1FPTQzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9UQ1BfTUFYX0tBX1BST0JFUz00NCwKLSBORVRfSVBWNF9UQ1BfS0VFUEFMSVZFX1RJTUU9NDUsCi0gTkVUX0lQVjRfVENQX0tFRVBBTElWRV9QUk9CRVM9NDYsCi0gTkVUX0lQVjRfVENQX1JFVFJJRVMxPTQ3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9UQ1BfUkVUUklFUzI9NDgsCi0gTkVUX0lQVjRfVENQX0ZJTl9USU1FT1VUPTQ5LAotIE5FVF9JUFY0X0lQX01BU1FfREVCVUc9NTAsCi0gTkVUX1RDUF9TWU5DT09LSUVTPTUxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX1NURFVSRz01MiwKLSBORVRfVENQX1JGQzEzMzc9NTMsCi0gTkVUX1RDUF9TWU5fVEFJTERST1A9NTQsCi0gTkVUX1RDUF9NQVhfU1lOX0JBQ0tMT0c9NTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0xPQ0FMX1BPUlRfUkFOR0U9NTYsCi0gTkVUX0lQVjRfSUNNUF9FQ0hPX0lHTk9SRV9BTEw9NTcsCi0gTkVUX0lQVjRfSUNNUF9FQ0hPX0lHTk9SRV9CUk9BRENBU1RTPTU4LAotIE5FVF9JUFY0X0lDTVBfU09VUkNFUVVFTkNIX1JBVEU9NTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0lDTVBfREVTVFVOUkVBQ0hfUkFURT02MCwKLSBORVRfSVBWNF9JQ01QX1RJTUVFWENFRURfUkFURT02MSwKLSBORVRfSVBWNF9JQ01QX1BBUkFNUFJPQl9SQVRFPTYyLAotIE5FVF9JUFY0X0lDTVBfRUNIT1JFUExZX1JBVEU9NjMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0lDTVBfSUdOT1JFX0JPR1VTX0VSUk9SX1JFU1BPTlNFUz02NCwKLSBORVRfSVBWNF9JR01QX01BWF9NRU1CRVJTSElQUz02NSwKLSBORVRfVENQX1RXX1JFQ1lDTEU9NjYsCi0gTkVUX0lQVjRfQUxXQVlTX0RFRlJBRz02NywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfVENQX0tFRVBBTElWRV9JTlRWTD02OCwKLSBORVRfSVBWNF9JTkVUX1BFRVJfVEhSRVNIT0xEPTY5LAotIE5FVF9JUFY0X0lORVRfUEVFUl9NSU5UVEw9NzAsCi0gTkVUX0lQVjRfSU5FVF9QRUVSX01BWFRUTD03MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfSU5FVF9QRUVSX0dDX01JTlRJTUU9NzIsCi0gTkVUX0lQVjRfSU5FVF9QRUVSX0dDX01BWFRJTUU9NzMsCi0gTkVUX1RDUF9PUlBIQU5fUkVUUklFUz03NCwKLSBORVRfVENQX0FCT1JUX09OX09WRVJGTE9XPTc1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX1NZTkFDS19SRVRSSUVTPTc2LAotIE5FVF9UQ1BfTUFYX09SUEhBTlM9NzcsCi0gTkVUX1RDUF9NQVhfVFdfQlVDS0VUUz03OCwKLSBORVRfVENQX0ZBQ0s9NzksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfUkVPUkRFUklORz04MCwKLSBORVRfVENQX0VDTj04MSwKLSBORVRfVENQX0RTQUNLPTgyLAotIE5FVF9UQ1BfTUVNPTgzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX1dNRU09ODQsCi0gTkVUX1RDUF9STUVNPTg1LAotIE5FVF9UQ1BfQVBQX1dJTj04NiwKLSBORVRfVENQX0FEVl9XSU5fU0NBTEU9ODcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05PTkxPQ0FMX0JJTkQ9ODgsCi0gTkVUX0lQVjRfSUNNUF9SQVRFTElNSVQ9ODksCi0gTkVUX0lQVjRfSUNNUF9SQVRFTUFTSz05MCwKLSBORVRfVENQX1RXX1JFVVNFPTkxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX0ZSVE89OTIsCi0gTkVUX1RDUF9MT1dfTEFURU5DWT05MywKLSBORVRfSVBWNF9JUEZSQUdfU0VDUkVUX0lOVEVSVkFMPTk0LAotIE5FVF9JUFY0X0lHTVBfTUFYX01TRj05NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1RDUF9OT19NRVRSSUNTX1NBVkU9OTcsCi0gTkVUX1RDUF9ERUZBVUxUX1dJTl9TQ0FMRT0xMDUsCi0gTkVUX1RDUF9NT0RFUkFURV9SQ1ZCVUY9MTA2LAotIE5FVF9UQ1BfVFNPX1dJTl9ESVZJU09SPTEwNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1RDUF9CSUNfQkVUQT0xMDgsCi0gTkVUX0lQVjRfSUNNUF9FUlJPUlNfVVNFX0lOQk9VTkRfSUZBRERSPTEwOSwKLSBORVRfVENQX0NPTkdfQ09OVFJPTD0xMTAsCi0gTkVUX1RDUF9BQkM9MTExLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9JUEZSQUdfTUFYX0RJU1Q9MTEyLAotIE5FVF9UQ1BfTVRVX1BST0JJTkc9MTEzLAotIE5FVF9UQ1BfQkFTRV9NU1M9MTE0LAotIE5FVF9JUFY0X1RDUF9XT1JLQVJPVU5EX1NJR05FRF9XSU5ET1dTPTExNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1RDUF9ETUFfQ09QWUJSRUFLPTExNiwKLSBORVRfVENQX1NMT1dfU1RBUlRfQUZURVJfSURMRT0xMTcsCi0gTkVUX0NJUFNPVjRfQ0FDSEVfRU5BQkxFPTExOCwKLSBORVRfQ0lQU09WNF9DQUNIRV9CVUNLRVRfU0laRT0xMTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9DSVBTT1Y0X1JCTV9PUFRGTVQ9MTIwLAotIE5FVF9DSVBTT1Y0X1JCTV9TVFJJQ1RWQUxJRD0xMjEsCi0gTkVUX1RDUF9BVkFJTF9DT05HX0NPTlRST0w9MTIyLAotIE5FVF9UQ1BfQUxMT1dFRF9DT05HX0NPTlRST0w9MTIzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX01BWF9TU1RIUkVTSD0xMjQsCi0gTkVUX1RDUF9GUlRPX1JFU1BPTlNFPTEyNSwKLX07Ci1lbnVtIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfUk9VVEVfRkxVU0g9MSwKLSBORVRfSVBWNF9ST1VURV9NSU5fREVMQVk9MiwKLSBORVRfSVBWNF9ST1VURV9NQVhfREVMQVk9MywKLSBORVRfSVBWNF9ST1VURV9HQ19USFJFU0g9NCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfUk9VVEVfTUFYX1NJWkU9NSwKLSBORVRfSVBWNF9ST1VURV9HQ19NSU5fSU5URVJWQUw9NiwKLSBORVRfSVBWNF9ST1VURV9HQ19USU1FT1VUPTcsCi0gTkVUX0lQVjRfUk9VVEVfR0NfSU5URVJWQUw9OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfUk9VVEVfUkVESVJFQ1RfTE9BRD05LAotIE5FVF9JUFY0X1JPVVRFX1JFRElSRUNUX05VTUJFUj0xMCwKLSBORVRfSVBWNF9ST1VURV9SRURJUkVDVF9TSUxFTkNFPTExLAotIE5FVF9JUFY0X1JPVVRFX0VSUk9SX0NPU1Q9MTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1JPVVRFX0VSUk9SX0JVUlNUPTEzLAotIE5FVF9JUFY0X1JPVVRFX0dDX0VMQVNUSUNJVFk9MTQsCi0gTkVUX0lQVjRfUk9VVEVfTVRVX0VYUElSRVM9MTUsCi0gTkVUX0lQVjRfUk9VVEVfTUlOX1BNVFU9MTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1JPVVRFX01JTl9BRFZNU1M9MTcsCi0gTkVUX0lQVjRfUk9VVEVfU0VDUkVUX0lOVEVSVkFMPTE4LAotIE5FVF9JUFY0X1JPVVRFX0dDX01JTl9JTlRFUlZBTF9NUz0xOSwKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bQotewotIE5FVF9QUk9UT19DT05GX0FMTD0tMiwKLSBORVRfUFJPVE9fQ09ORl9ERUZBVUxUPS0zCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0KLXsKLSBORVRfSVBWNF9DT05GX0ZPUldBUkRJTkc9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9NQ19GT1JXQVJESU5HPTIsCi0gTkVUX0lQVjRfQ09ORl9QUk9YWV9BUlA9MywKLSBORVRfSVBWNF9DT05GX0FDQ0VQVF9SRURJUkVDVFM9NCwKLSBORVRfSVBWNF9DT05GX1NFQ1VSRV9SRURJUkVDVFM9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9TRU5EX1JFRElSRUNUUz02LAotIE5FVF9JUFY0X0NPTkZfU0hBUkVEX01FRElBPTcsCi0gTkVUX0lQVjRfQ09ORl9SUF9GSUxURVI9OCwKLSBORVRfSVBWNF9DT05GX0FDQ0VQVF9TT1VSQ0VfUk9VVEU9OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9CT09UUF9SRUxBWT0xMCwKLSBORVRfSVBWNF9DT05GX0xPR19NQVJUSUFOUz0xMSwKLSBORVRfSVBWNF9DT05GX1RBRz0xMiwKLSBORVRfSVBWNF9DT05GX0FSUEZJTFRFUj0xMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9NRURJVU1fSUQ9MTQsCi0gTkVUX0lQVjRfQ09ORl9OT1hGUk09MTUsCi0gTkVUX0lQVjRfQ09ORl9OT1BPTElDWT0xNiwKLSBORVRfSVBWNF9DT05GX0ZPUkNFX0lHTVBfVkVSU0lPTj0xNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9BUlBfQU5OT1VOQ0U9MTgsCi0gTkVUX0lQVjRfQ09ORl9BUlBfSUdOT1JFPTE5LAotIE5FVF9JUFY0X0NPTkZfUFJPTU9URV9TRUNPTkRBUklFUz0yMCwKLSBORVRfSVBWNF9DT05GX0FSUF9BQ0NFUFQ9MjEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0NPTkZfQVJQX05PVElGWT0yMiwKLX07Ci1lbnVtCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19NQVg9MSwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfU1lOX1NFTlQ9MiwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfU1lOX1JFQ1Y9MywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfRVNUQUJMSVNIRUQ9NCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0ZJTl9XQUlUPTUsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFX1dBSVQ9NiwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTEFTVF9BQ0s9NywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfVElNRV9XQUlUPTgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9DTE9TRT05LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19VRFBfVElNRU9VVD0xMCwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVURQX1RJTUVPVVRfU1RSRUFNPTExLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19JQ01QX1RJTUVPVVQ9MTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19HRU5FUklDX1RJTUVPVVQ9MTMsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0JVQ0tFVFM9MTQsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0xPR19JTlZBTElEPTE1LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9NQVhfUkVUUkFOUz0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9MT09TRT0xNywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX0JFX0xJQkVSQUw9MTgsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9NQVhfUkVUUkFOUz0xOSwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NMT1NFRD0yMCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DT09LSUVfV0FJVD0yMSwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9FQ0hPRUQ9MjIsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9FU1RBQkxJU0hFRD0yMywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX1NIVVRET1dOX1NFTlQ9MjQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fUkVDRD0yNSwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX1NIVVRET1dOX0FDS19TRU5UPTI2LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19DT1VOVD0yNywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfQ0hFQ0tTVU09MjgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0gewotIE5FVF9JUFY2X0NPTkY9MTYsCi0gTkVUX0lQVjZfTkVJR0g9MTcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X1JPVVRFPTE4LAotIE5FVF9JUFY2X0lDTVA9MTksCi0gTkVUX0lQVjZfQklORFY2T05MWT0yMCwKLSBORVRfSVBWNl9JUDZGUkFHX0hJR0hfVEhSRVNIPTIxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9JUDZGUkFHX0xPV19USFJFU0g9MjIsCi0gTkVUX0lQVjZfSVA2RlJBR19USU1FPTIzLAotIE5FVF9JUFY2X0lQNkZSQUdfU0VDUkVUX0lOVEVSVkFMPTI0LAotIE5FVF9JUFY2X01MRF9NQVhfTVNGPTI1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1lbnVtIHsKLSBORVRfSVBWNl9ST1VURV9GTFVTSD0xLAotIE5FVF9JUFY2X1JPVVRFX0dDX1RIUkVTSD0yLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9ST1VURV9NQVhfU0laRT0zLAotIE5FVF9JUFY2X1JPVVRFX0dDX01JTl9JTlRFUlZBTD00LAotIE5FVF9JUFY2X1JPVVRFX0dDX1RJTUVPVVQ9NSwKLSBORVRfSVBWNl9ST1VURV9HQ19JTlRFUlZBTD02LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9ST1VURV9HQ19FTEFTVElDSVRZPTcsCi0gTkVUX0lQVjZfUk9VVEVfTVRVX0VYUElSRVM9OCwKLSBORVRfSVBWNl9ST1VURV9NSU5fQURWTVNTPTksCi0gTkVUX0lQVjZfUk9VVEVfR0NfTUlOX0lOVEVSVkFMX01TPTEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0gewotIE5FVF9JUFY2X0ZPUldBUkRJTkc9MSwKLSBORVRfSVBWNl9IT1BfTElNSVQ9MiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjZfTVRVPTMsCi0gTkVUX0lQVjZfQUNDRVBUX1JBPTQsCi0gTkVUX0lQVjZfQUNDRVBUX1JFRElSRUNUUz01LAotIE5FVF9JUFY2X0FVVE9DT05GPTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X0RBRF9UUkFOU01JVFM9NywKLSBORVRfSVBWNl9SVFJfU09MSUNJVFM9OCwKLSBORVRfSVBWNl9SVFJfU09MSUNJVF9JTlRFUlZBTD05LAotIE5FVF9JUFY2X1JUUl9TT0xJQ0lUX0RFTEFZPTEwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9VU0VfVEVNUEFERFI9MTEsCi0gTkVUX0lQVjZfVEVNUF9WQUxJRF9MRlQ9MTIsCi0gTkVUX0lQVjZfVEVNUF9QUkVGRVJFRF9MRlQ9MTMsCi0gTkVUX0lQVjZfUkVHRU5fTUFYX1JFVFJZPTE0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9NQVhfREVTWU5DX0ZBQ1RPUj0xNSwKLSBORVRfSVBWNl9NQVhfQUREUkVTU0VTPTE2LAotIE5FVF9JUFY2X0ZPUkNFX01MRF9WRVJTSU9OPTE3LAotIE5FVF9JUFY2X0FDQ0VQVF9SQV9ERUZSVFI9MTgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X0FDQ0VQVF9SQV9QSU5GTz0xOSwKLSBORVRfSVBWNl9BQ0NFUFRfUkFfUlRSX1BSRUY9MjAsCi0gTkVUX0lQVjZfUlRSX1BST0JFX0lOVEVSVkFMPTIxLAotIE5FVF9JUFY2X0FDQ0VQVF9SQV9SVF9JTkZPX01BWF9QTEVOPTIyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9QUk9YWV9ORFA9MjMsCi0gTkVUX0lQVjZfQUNDRVBUX1NPVVJDRV9ST1VURT0yNSwKLSBfX05FVF9JUFY2X01BWAorICB2b2lkIF9fdXNlciAqIG5ld3ZhbDsKKyAgc2l6ZV90IG5ld2xlbjsKKyAgdW5zaWduZWQgbG9uZyBfX2xpbnV4X3VudXNlZFs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTkVUX0lQVjZfSUNNUF9SQVRFTElNSVQ9MQotfTsKLWVudW0geworICBDVExfS0VSTiA9IDEsCisgIENUTF9WTSA9IDIsCisgIENUTF9ORVQgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVJR0hfTUNBU1RfU09MSUNJVD0xLAotIE5FVF9ORUlHSF9VQ0FTVF9TT0xJQ0lUPTIsCi0gTkVUX05FSUdIX0FQUF9TT0xJQ0lUPTMsCi0gTkVUX05FSUdIX1JFVFJBTlNfVElNRT00LAorICBDVExfUFJPQyA9IDQsCisgIENUTF9GUyA9IDUsCisgIENUTF9ERUJVRyA9IDYsCisgIENUTF9ERVYgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVJR0hfUkVBQ0hBQkxFX1RJTUU9NSwKLSBORVRfTkVJR0hfREVMQVlfUFJPQkVfVElNRT02LAotIE5FVF9ORUlHSF9HQ19TVEFMRV9USU1FPTcsCi0gTkVUX05FSUdIX1VOUkVTX1FMRU49OCwKKyAgQ1RMX0JVUyA9IDgsCisgIENUTF9BQkkgPSA5LAorICBDVExfQ1BVID0gMTAsCisgIENUTF9BUkxBTiA9IDI1NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FSUdIX1BST1hZX1FMRU49OSwKLSBORVRfTkVJR0hfQU5ZQ0FTVF9ERUxBWT0xMCwKLSBORVRfTkVJR0hfUFJPWFlfREVMQVk9MTEsCi0gTkVUX05FSUdIX0xPQ0tUSU1FPTEyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVJR0hfR0NfSU5URVJWQUw9MTMsCi0gTkVUX05FSUdIX0dDX1RIUkVTSDE9MTQsCi0gTkVUX05FSUdIX0dDX1RIUkVTSDI9MTUsCi0gTkVUX05FSUdIX0dDX1RIUkVTSDM9MTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORUlHSF9SRVRSQU5TX1RJTUVfTVM9MTcsCi0gTkVUX05FSUdIX1JFQUNIQUJMRV9USU1FX01TPTE4LAotfTsKLWVudW0gewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfRENDUF9ERUZBVUxUPTEsCi19OwotZW51bSB7Ci0gTkVUX0lQWF9QUFJPUF9CUk9BRENBU1RJTkc9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQWF9GT1JXQVJESU5HPTIKLX07Ci1lbnVtIHsKLSBORVRfTExDMj0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTExDX1NUQVRJT049MiwKLX07Ci1lbnVtIHsKLSBORVRfTExDMl9USU1FT1VUPTEsCisgIENUTF9TMzkwREJGID0gNTY3NywKKyAgQ1RMX1NVTlJQQyA9IDcyNDksCisgIENUTF9QTSA9IDk4OTksCisgIENUTF9GUlYgPSA5ODk4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBORVRfTExDX1NUQVRJT05fQUNLX1RJTUVPVVQ9MSwKKyAgQ1RMX0JVU19JU0EgPSAxCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIE5FVF9MTEMyX0FDS19USU1FT1VUPTEsCi0gTkVUX0xMQzJfUF9USU1FT1VUPTIsCi0gTkVUX0xMQzJfUkVKX1RJTUVPVVQ9MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0xMQzJfQlVTWV9USU1FT1VUPTQsCi19OwotZW51bSB7Ci0gTkVUX0FUQUxLX0FBUlBfRVhQSVJZX1RJTUU9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0FUQUxLX0FBUlBfVElDS19USU1FPTIsCi0gTkVUX0FUQUxLX0FBUlBfUkVUUkFOU01JVF9MSU1JVD0zLAotIE5FVF9BVEFMS19BQVJQX1JFU09MVkVfVElNRT00Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0gewotIE5FVF9ORVRST01fREVGQVVMVF9QQVRIX1FVQUxJVFk9MSwKLSBORVRfTkVUUk9NX09CU09MRVNDRU5DRV9DT1VOVF9JTklUSUFMSVNFUj0yLAotIE5FVF9ORVRST01fTkVUV09SS19UVExfSU5JVElBTElTRVI9MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FVFJPTV9UUkFOU1BPUlRfVElNRU9VVD00LAotIE5FVF9ORVRST01fVFJBTlNQT1JUX01BWElNVU1fVFJJRVM9NSwKLSBORVRfTkVUUk9NX1RSQU5TUE9SVF9BQ0tOT1dMRURHRV9ERUxBWT02LAotIE5FVF9ORVRST01fVFJBTlNQT1JUX0JVU1lfREVMQVk9NywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FVFJPTV9UUkFOU1BPUlRfUkVRVUVTVEVEX1dJTkRPV19TSVpFPTgsCi0gTkVUX05FVFJPTV9UUkFOU1BPUlRfTk9fQUNUSVZJVFlfVElNRU9VVD05LAotIE5FVF9ORVRST01fUk9VVElOR19DT05UUk9MPTEwLAotIE5FVF9ORVRST01fTElOS19GQUlMU19DT1VOVD0xMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FVFJPTV9SRVNFVD0xMgotfTsKLWVudW0gewotIE5FVF9BWDI1X0lQX0RFRkFVTFRfTU9ERT0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQVgyNV9ERUZBVUxUX01PREU9MiwKLSBORVRfQVgyNV9CQUNLT0ZGX1RZUEU9MywKLSBORVRfQVgyNV9DT05ORUNUX01PREU9NCwKLSBORVRfQVgyNV9TVEFOREFSRF9XSU5ET1c9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0FYMjVfRVhURU5ERURfV0lORE9XPTYsCi0gTkVUX0FYMjVfVDFfVElNRU9VVD03LAotIE5FVF9BWDI1X1QyX1RJTUVPVVQ9OCwKLSBORVRfQVgyNV9UM19USU1FT1VUPTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9BWDI1X0lETEVfVElNRU9VVD0xMCwKLSBORVRfQVgyNV9OMj0xMSwKLSBORVRfQVgyNV9QQUNMRU49MTIsCi0gTkVUX0FYMjVfUFJPVE9DT0w9MTMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9BWDI1X0RBTUFfU0xBVkVfVElNRU9VVD0xNAotfTsKLWVudW0gewotIE5FVF9ST1NFX1JFU1RBUlRfUkVRVUVTVF9USU1FT1VUPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ST1NFX0NBTExfUkVRVUVTVF9USU1FT1VUPTIsCi0gTkVUX1JPU0VfUkVTRVRfUkVRVUVTVF9USU1FT1VUPTMsCi0gTkVUX1JPU0VfQ0xFQVJfUkVRVUVTVF9USU1FT1VUPTQsCi0gTkVUX1JPU0VfQUNLX0hPTERfQkFDS19USU1FT1VUPTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ST1NFX1JPVVRJTkdfQ09OVFJPTD02LAotIE5FVF9ST1NFX0xJTktfRkFJTF9USU1FT1VUPTcsCi0gTkVUX1JPU0VfTUFYX1ZDUz04LAotIE5FVF9ST1NFX1dJTkRPV19TSVpFPTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ST1NFX05PX0FDVElWSVRZX1RJTUVPVVQ9MTAKLX07Ci1lbnVtIHsKLSBORVRfWDI1X1JFU1RBUlRfUkVRVUVTVF9USU1FT1VUPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9YMjVfQ0FMTF9SRVFVRVNUX1RJTUVPVVQ9MiwKLSBORVRfWDI1X1JFU0VUX1JFUVVFU1RfVElNRU9VVD0zLAotIE5FVF9YMjVfQ0xFQVJfUkVRVUVTVF9USU1FT1VUPTQsCi0gTkVUX1gyNV9BQ0tfSE9MRF9CQUNLX1RJTUVPVVQ9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1gyNV9GT1JXQVJEPTYKLX07Ci1lbnVtCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UUl9SSUZfVElNRU9VVD0xCi19OwotZW51bSB7Ci0gTkVUX0RFQ05FVF9OT0RFX1RZUEUgPSAxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX05PREVfQUREUkVTUyA9IDIsCi0gTkVUX0RFQ05FVF9OT0RFX05BTUUgPSAzLAotIE5FVF9ERUNORVRfREVGQVVMVF9ERVZJQ0UgPSA0LAotIE5FVF9ERUNORVRfVElNRV9XQUlUID0gNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RFQ05FVF9ETl9DT1VOVCA9IDYsCi0gTkVUX0RFQ05FVF9ESV9DT1VOVCA9IDcsCi0gTkVUX0RFQ05FVF9EUl9DT1VOVCA9IDgsCi0gTkVUX0RFQ05FVF9EU1RfR0NfSU5URVJWQUwgPSA5LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX0NPTkYgPSAxMCwKLSBORVRfREVDTkVUX05PX0ZDX01BWF9DV05EID0gMTEsCi0gTkVUX0RFQ05FVF9NRU0gPSAxMiwKLSBORVRfREVDTkVUX1JNRU0gPSAxMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RFQ05FVF9XTUVNID0gMTQsCi0gTkVUX0RFQ05FVF9ERUJVR19MRVZFTCA9IDI1NQotfTsKLWVudW0gewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX0NPTkZfTE9PUEJBQ0sgPSAtMiwKLSBORVRfREVDTkVUX0NPTkZfRERDTVAgPSAtMywKLSBORVRfREVDTkVUX0NPTkZfUFBQID0gLTQsCi0gTkVUX0RFQ05FVF9DT05GX1gyNSA9IC01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX0NPTkZfR1JFID0gLTYsCi0gTkVUX0RFQ05FVF9DT05GX0VUSEVSID0gLTcKLX07Ci1lbnVtIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9QUklPUklUWSA9IDEsCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9UMSA9IDIsCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9UMiA9IDMsCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9UMyA9IDQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ERUNORVRfQ09ORl9ERVZfRk9SV0FSRElORyA9IDUsCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9CTEtTSVpFID0gNiwKLSBORVRfREVDTkVUX0NPTkZfREVWX1NUQVRFID0gNwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtIHsKLSBORVRfU0NUUF9SVE9fSU5JVElBTCA9IDEsCi0gTkVUX1NDVFBfUlRPX01JTiA9IDIsCi0gTkVUX1NDVFBfUlRPX01BWCA9IDMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9TQ1RQX1JUT19BTFBIQSA9IDQsCi0gTkVUX1NDVFBfUlRPX0JFVEEgPSA1LAotIE5FVF9TQ1RQX1ZBTElEX0NPT0tJRV9MSUZFID0gNiwKLSBORVRfU0NUUF9BU1NPQ0lBVElPTl9NQVhfUkVUUkFOUyA9IDcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9TQ1RQX1BBVEhfTUFYX1JFVFJBTlMgPSA4LAotIE5FVF9TQ1RQX01BWF9JTklUX1JFVFJBTlNNSVRTID0gOSwKLSBORVRfU0NUUF9IQl9JTlRFUlZBTCA9IDEwLAotIE5FVF9TQ1RQX1BSRVNFUlZFX0VOQUJMRSA9IDExLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfU0NUUF9NQVhfQlVSU1QgPSAxMiwKLSBORVRfU0NUUF9BRERJUF9FTkFCTEUgPSAxMywKLSBORVRfU0NUUF9QUlNDVFBfRU5BQkxFID0gMTQsCi0gTkVUX1NDVFBfU05EQlVGX1BPTElDWSA9IDE1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfU0NUUF9TQUNLX1RJTUVPVVQgPSAxNiwKLSBORVRfU0NUUF9SQ1ZCVUZfUE9MSUNZID0gMTcsCi19OwotZW51bSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9CUklER0VfTkZfQ0FMTF9BUlBUQUJMRVMgPSAxLAotIE5FVF9CUklER0VfTkZfQ0FMTF9JUFRBQkxFUyA9IDIsCi0gTkVUX0JSSURHRV9ORl9DQUxMX0lQNlRBQkxFUyA9IDMsCi0gTkVUX0JSSURHRV9ORl9GSUxURVJfVkxBTl9UQUdHRUQgPSA0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQlJJREdFX05GX0ZJTFRFUl9QUFBPRV9UQUdHRUQgPSA1LAotfTsKLWVudW0gewotIE5FVF9JUkRBX0RJU0NPVkVSWT0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVJEQV9ERVZOQU1FPTIsCi0gTkVUX0lSREFfREVCVUc9MywKLSBORVRfSVJEQV9GQVNUX1BPTEw9NCwKLSBORVRfSVJEQV9ESVNDT1ZFUllfU0xPVFM9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lSREFfRElTQ09WRVJZX1RJTUVPVVQ9NiwKLSBORVRfSVJEQV9TTE9UX1RJTUVPVVQ9NywKLSBORVRfSVJEQV9NQVhfQkFVRF9SQVRFPTgsCi0gTkVUX0lSREFfTUlOX1RYX1RVUk5fVElNRT05LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVJEQV9NQVhfVFhfREFUQV9TSVpFPTEwLAotIE5FVF9JUkRBX01BWF9UWF9XSU5ET1c9MTEsCi0gTkVUX0lSREFfTUFYX05PUkVQTFlfVElNRT0xMiwKLSBORVRfSVJEQV9XQVJOX05PUkVQTFlfVElNRT0xMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lSREFfTEFQX0tFRVBBTElWRV9USU1FPTE0LAotfTsKLWVudW0KLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlNfTlJJTk9ERT0xLAotIEZTX1NUQVRJTk9ERT0yLAotIEZTX01BWElOT0RFPTMsCi0gRlNfTlJEUVVPVD00LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19NQVhEUVVPVD01LAotIEZTX05SRklMRT02LAotIEZTX01BWEZJTEU9NywKLSBGU19ERU5UUlk9OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlNfTlJTVVBFUj05LAotIEZTX01BWFNVUEVSPTEwLAotIEZTX09WRVJGTE9XVUlEPTExLAotIEZTX09WRVJGTE9XR0lEPTEyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19MRUFTRVM9MTMsCi0gRlNfRElSX05PVElGWT0xNCwKLSBGU19MRUFTRV9USU1FPTE1LAotIEZTX0RRU1RBVFM9MTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZTX1hGUz0xNywKLSBGU19BSU9fTlI9MTgsCi0gRlNfQUlPX01BWF9OUj0xOSwKLSBGU19JTk9USUZZPTIwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19PQ0ZTMj05ODgsCi19OwotZW51bSB7Ci0gRlNfRFFfTE9PS1VQUyA9IDEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZTX0RRX0RST1BTID0gMiwKLSBGU19EUV9SRUFEUyA9IDMsCi0gRlNfRFFfV1JJVEVTID0gNCwKLSBGU19EUV9DQUNIRV9ISVRTID0gNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlNfRFFfQUxMT0NBVEVEID0gNiwKLSBGU19EUV9GUkVFID0gNywKLSBGU19EUV9TWU5DUyA9IDgsCi0gRlNfRFFfV0FSTklOR1MgPSA5LAorICBJTk9USUZZX01BWF9VU0VSX0lOU1RBTkNFUyA9IDEsCisgIElOT1RJRllfTUFYX1VTRVJfV0FUQ0hFUyA9IDIsCisgIElOT1RJRllfTUFYX1FVRVVFRF9FVkVOVFMgPSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIERFVl9DRFJPTT0xLAotIERFVl9IV01PTj0yLAorICBLRVJOX09TVFlQRSA9IDEsCisgIEtFUk5fT1NSRUxFQVNFID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX1BBUlBPUlQ9MywKLSBERVZfUkFJRD00LAotIERFVl9NQUNfSElEPTUsCi0gREVWX1NDU0k9NiwKKyAgS0VSTl9PU1JFViA9IDMsCisgIEtFUk5fVkVSU0lPTiA9IDQsCisgIEtFUk5fU0VDVVJFTUFTSyA9IDUsCisgIEtFUk5fUFJPRiA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVl9JUE1JPTcsCi19OwotZW51bSB7Ci0gREVWX0NEUk9NX0lORk89MSwKKyAgS0VSTl9OT0RFTkFNRSA9IDcsCisgIEtFUk5fRE9NQUlOTkFNRSA9IDgsCisgIEtFUk5fUEFOSUMgPSAxNSwKKyAgS0VSTl9SRUFMUk9PVERFViA9IDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZfQ0RST01fQVVUT0NMT1NFPTIsCi0gREVWX0NEUk9NX0FVVE9FSkVDVD0zLAotIERFVl9DRFJPTV9ERUJVRz00LAotIERFVl9DRFJPTV9MT0NLPTUsCisgIEtFUk5fU1BBUkNfUkVCT09UID0gMjEsCisgIEtFUk5fQ1RMQUxUREVMID0gMjIsCisgIEtFUk5fUFJJTlRLID0gMjMsCisgIEtFUk5fTkFNRVRSQU5TID0gMjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVl9DRFJPTV9DSEVDS19NRURJQT02Ci19OwotZW51bSB7Ci0gREVWX1BBUlBPUlRfREVGQVVMVD0tMworICBLRVJOX1BQQ19IVEFCUkVDTEFJTSA9IDI1LAorICBLRVJOX1BQQ19aRVJPUEFHRUQgPSAyNiwKKyAgS0VSTl9QUENfUE9XRVJTQVZFX05BUCA9IDI3LAorICBLRVJOX01PRFBST0JFID0gMjgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX1NHX0JJR19CVUZGID0gMjksCisgIEtFUk5fQUNDVCA9IDMwLAorICBLRVJOX1BQQ19MMkNSID0gMzEsCisgIEtFUk5fUlRTSUdOUiA9IDMyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9SVFNJR01BWCA9IDMzLAorICBLRVJOX1NITU1BWCA9IDM0LAorICBLRVJOX01TR01BWCA9IDM1LAorICBLRVJOX01TR01OQiA9IDM2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9NU0dQT09MID0gMzcsCisgIEtFUk5fU1lTUlEgPSAzOCwKKyAgS0VSTl9NQVhfVEhSRUFEUyA9IDM5LAorICBLRVJOX1JBTkRPTSA9IDQwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9TSE1BTEwgPSA0MSwKKyAgS0VSTl9NU0dNTkkgPSA0MiwKKyAgS0VSTl9TRU0gPSA0MywKKyAgS0VSTl9TUEFSQ19TVE9QX0EgPSA0NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fU0hNTU5JID0gNDUsCisgIEtFUk5fT1ZFUkZMT1dVSUQgPSA0NiwKKyAgS0VSTl9PVkVSRkxPV0dJRCA9IDQ3LAorICBLRVJOX1NITVBBVEggPSA0OCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fSE9UUExVRyA9IDQ5LAorICBLRVJOX0lFRUVfRU1VTEFUSU9OX1dBUk5JTkdTID0gNTAsCisgIEtFUk5fUzM5MF9VU0VSX0RFQlVHX0xPR0dJTkcgPSA1MSwKKyAgS0VSTl9DT1JFX1VTRVNfUElEID0gNTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX1RBSU5URUQgPSA1MywKKyAgS0VSTl9DQURQSUQgPSA1NCwKKyAgS0VSTl9QSURNQVggPSA1NSwKKyAgS0VSTl9DT1JFX1BBVFRFUk4gPSA1NiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fUEFOSUNfT05fT09QUyA9IDU3LAorICBLRVJOX0hQUEFfUFdSU1cgPSA1OCwKKyAgS0VSTl9IUFBBX1VOQUxJR05FRCA9IDU5LAorICBLRVJOX1BSSU5US19SQVRFTElNSVQgPSA2MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fUFJJTlRLX1JBVEVMSU1JVF9CVVJTVCA9IDYxLAorICBLRVJOX1BUWSA9IDYyLAorICBLRVJOX05HUk9VUFNfTUFYID0gNjMsCisgIEtFUk5fU1BBUkNfU0NPTlNfUFdST0ZGID0gNjQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX0haX1RJTUVSID0gNjUsCisgIEtFUk5fVU5LTk9XTl9OTUlfUEFOSUMgPSA2NiwKKyAgS0VSTl9CT09UTE9BREVSX1RZUEUgPSA2NywKKyAgS0VSTl9SQU5ET01JWkUgPSA2OCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fU0VUVUlEX0RVTVBBQkxFID0gNjksCisgIEtFUk5fU1BJTl9SRVRSWSA9IDcwLAorICBLRVJOX0FDUElfVklERU9fRkxBR1MgPSA3MSwKKyAgS0VSTl9JQTY0X1VOQUxJR05FRCA9IDcyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9DT01QQVRfTE9HID0gNzMsCisgIEtFUk5fTUFYX0xPQ0tfREVQVEggPSA3NCwKKyAgS0VSTl9OTUlfV0FUQ0hET0cgPSA3NSwKKyAgS0VSTl9QQU5JQ19PTl9OTUkgPSA3NiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gREVWX1JBSURfU1BFRURfTElNSVRfTUlOPTEsCi0gREVWX1JBSURfU1BFRURfTElNSVRfTUFYPTIKKyAgVk1fVU5VU0VEMSA9IDEsCisgIFZNX1VOVVNFRDIgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVk1fVU5VU0VEMyA9IDMsCisgIFZNX1VOVVNFRDQgPSA0LAorICBWTV9PVkVSQ09NTUlUX01FTU9SWSA9IDUsCisgIFZNX1VOVVNFRDUgPSA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVk1fVU5VU0VENyA9IDcsCisgIFZNX1VOVVNFRDggPSA4LAorICBWTV9VTlVTRUQ5ID0gOSwKKyAgVk1fUEFHRV9DTFVTVEVSID0gMTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9ESVJUWV9CQUNLR1JPVU5EID0gMTEsCisgIFZNX0RJUlRZX1JBVElPID0gMTIsCisgIFZNX0RJUlRZX1dCX0NTID0gMTMsCisgIFZNX0RJUlRZX0VYUElSRV9DUyA9IDE0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVk1fTlJfUERGTFVTSF9USFJFQURTID0gMTUsCisgIFZNX09WRVJDT01NSVRfUkFUSU8gPSAxNiwKKyAgVk1fUEFHRUJVRiA9IDE3LAorICBWTV9IVUdFVExCX1BBR0VTID0gMTgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9TV0FQUElORVNTID0gMTksCisgIFZNX0xPV01FTV9SRVNFUlZFX1JBVElPID0gMjAsCisgIFZNX01JTl9GUkVFX0tCWVRFUyA9IDIxLAorICBWTV9NQVhfTUFQX0NPVU5UID0gMjIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9MQVBUT1BfTU9ERSA9IDIzLAorICBWTV9CTE9DS19EVU1QID0gMjQsCisgIFZNX0hVR0VUTEJfR1JPVVAgPSAyNSwKKyAgVk1fVkZTX0NBQ0hFX1BSRVNTVVJFID0gMjYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9MRUdBQ1lfVkFfTEFZT1VUID0gMjcsCisgIFZNX1NXQVBfVE9LRU5fVElNRU9VVCA9IDI4LAorICBWTV9EUk9QX1BBR0VDQUNIRSA9IDI5LAorICBWTV9QRVJDUFVfUEFHRUxJU1RfRlJBQ1RJT04gPSAzMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX1pPTkVfUkVDTEFJTV9NT0RFID0gMzEsCisgIFZNX01JTl9VTk1BUFBFRCA9IDMyLAorICBWTV9QQU5JQ19PTl9PT00gPSAzMywKKyAgVk1fVkRTT19FTkFCTEVEID0gMzQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9NSU5fU0xBQiA9IDM1LAorfTsKK2VudW0geworICBORVRfQ09SRSA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfRVRIRVIgPSAyLAorICBORVRfODAyID0gMywKKyAgTkVUX1VOSVggPSA0LAorICBORVRfSVBWNCA9IDUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBYID0gNiwKKyAgTkVUX0FUQUxLID0gNywKKyAgTkVUX05FVFJPTSA9IDgsCisgIE5FVF9BWDI1ID0gOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9CUklER0UgPSAxMCwKKyAgTkVUX1JPU0UgPSAxMSwKKyAgTkVUX0lQVjYgPSAxMiwKKyAgTkVUX1gyNSA9IDEzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RSID0gMTQsCisgIE5FVF9ERUNORVQgPSAxNSwKKyAgTkVUX0VDT05FVCA9IDE2LAorICBORVRfU0NUUCA9IDE3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0xMQyA9IDE4LAorICBORVRfTkVURklMVEVSID0gMTksCisgIE5FVF9EQ0NQID0gMjAsCisgIE5FVF9JUkRBID0gNDEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBERVZfUEFSUE9SVF9ERUZBVUxUX1RJTUVTTElDRT0xLAotIERFVl9QQVJQT1JUX0RFRkFVTFRfU1BJTlRJTUU9MgorICBSQU5ET01fUE9PTFNJWkUgPSAxLAorICBSQU5ET01fRU5UUk9QWV9DT1VOVCA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSQU5ET01fUkVBRF9USFJFU0ggPSAzLAorICBSQU5ET01fV1JJVEVfVEhSRVNIID0gNCwKKyAgUkFORE9NX0JPT1RfSUQgPSA1LAorICBSQU5ET01fVVVJRCA9IDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gREVWX1BBUlBPUlRfU1BJTlRJTUU9MSwKLSBERVZfUEFSUE9SVF9CQVNFX0FERFI9MiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX1BBUlBPUlRfSVJRPTMsCi0gREVWX1BBUlBPUlRfRE1BPTQsCi0gREVWX1BBUlBPUlRfTU9ERVM9NSwKLSBERVZfUEFSUE9SVF9ERVZJQ0VTPTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVl9QQVJQT1JUX0FVVE9QUk9CRT0xNgotfTsKLWVudW0gewotIERFVl9QQVJQT1JUX0RFVklDRVNfQUNUSVZFPS0zLAorICBQVFlfTUFYID0gMSwKKyAgUFRZX05SID0gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBERVZfUEFSUE9SVF9ERVZJQ0VfVElNRVNMSUNFPTEsCisgIEJVU19JU0FfTUVNX0JBU0UgPSAxLAorICBCVVNfSVNBX1BPUlRfQkFTRSA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBCVVNfSVNBX1BPUlRfU0hJRlQgPSAzCit9OworZW51bSB7CisgIE5FVF9DT1JFX1dNRU1fTUFYID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9DT1JFX1JNRU1fTUFYID0gMiwKKyAgTkVUX0NPUkVfV01FTV9ERUZBVUxUID0gMywKKyAgTkVUX0NPUkVfUk1FTV9ERUZBVUxUID0gNCwKKyAgTkVUX0NPUkVfTUFYX0JBQ0tMT0cgPSA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0NPUkVfRkFTVFJPVVRFID0gNywKKyAgTkVUX0NPUkVfTVNHX0NPU1QgPSA4LAorICBORVRfQ09SRV9NU0dfQlVSU1QgPSA5LAorICBORVRfQ09SRV9PUFRNRU1fTUFYID0gMTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQ09SRV9IT1RfTElTVF9MRU5HVEggPSAxMSwKKyAgTkVUX0NPUkVfRElWRVJUX1ZFUlNJT04gPSAxMiwKKyAgTkVUX0NPUkVfTk9fQ09OR19USFJFU0ggPSAxMywKKyAgTkVUX0NPUkVfTk9fQ09ORyA9IDE0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0NPUkVfTE9fQ09ORyA9IDE1LAorICBORVRfQ09SRV9NT0RfQ09ORyA9IDE2LAorICBORVRfQ09SRV9ERVZfV0VJR0hUID0gMTcsCisgIE5FVF9DT1JFX1NPTUFYQ09OTiA9IDE4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0NPUkVfQlVER0VUID0gMTksCisgIE5FVF9DT1JFX0FFVkVOVF9FVElNRSA9IDIwLAorICBORVRfQ09SRV9BRVZFTlRfUlNFUVRIID0gMjEsCisgIE5FVF9DT1JFX1dBUk5JTkdTID0gMjIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBORVRfVU5JWF9ERVNUUk9ZX0RFTEFZID0gMSwKKyAgTkVUX1VOSVhfREVMRVRFX0RFTEFZID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9VTklYX01BWF9ER1JBTV9RTEVOID0gMywKK307CitlbnVtIHsKKyAgTkVUX05GX0NPTk5UUkFDS19NQVggPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fU0VOVCA9IDIsCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfU1lOX1JFQ1YgPSAzLAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0VTVEFCTElTSEVEID0gNCwKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9GSU5fV0FJVCA9IDUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFX1dBSVQgPSA2LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0xBU1RfQUNLID0gNywKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9USU1FX1dBSVQgPSA4LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFID0gOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORl9DT05OVFJBQ0tfVURQX1RJTUVPVVQgPSAxMCwKKyAgTkVUX05GX0NPTk5UUkFDS19VRFBfVElNRU9VVF9TVFJFQU0gPSAxMSwKKyAgTkVUX05GX0NPTk5UUkFDS19JQ01QX1RJTUVPVVQgPSAxMiwKKyAgTkVUX05GX0NPTk5UUkFDS19HRU5FUklDX1RJTUVPVVQgPSAxMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORl9DT05OVFJBQ0tfQlVDS0VUUyA9IDE0LAorICBORVRfTkZfQ09OTlRSQUNLX0xPR19JTlZBTElEID0gMTUsCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTUFYX1JFVFJBTlMgPSAxNiwKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfTE9PU0UgPSAxNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX0JFX0xJQkVSQUwgPSAxOCwKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfTUFYX1JFVFJBTlMgPSAxOSwKKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ0xPU0VEID0gMjAsCisgIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9XQUlUID0gMjEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DT09LSUVfRUNIT0VEID0gMjIsCisgIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0VTVEFCTElTSEVEID0gMjMsCisgIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX1NIVVRET1dOX1NFTlQgPSAyNCwKKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fUkVDRCA9IDI1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fQUNLX1NFTlQgPSAyNiwKKyAgTkVUX05GX0NPTk5UUkFDS19DT1VOVCA9IDI3LAorICBORVRfTkZfQ09OTlRSQUNLX0lDTVBWNl9USU1FT1VUID0gMjgsCisgIE5FVF9ORl9DT05OVFJBQ0tfRlJBRzZfVElNRU9VVCA9IDI5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19GUkFHNl9MT1dfVEhSRVNIID0gMzAsCisgIE5FVF9ORl9DT05OVFJBQ0tfRlJBRzZfSElHSF9USFJFU0ggPSAzMSwKKyAgTkVUX05GX0NPTk5UUkFDS19DSEVDS1NVTSA9IDMyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBERVZfTUFDX0hJRF9LRVlCT0FSRF9TRU5EU19MSU5VWF9LRVlDT0RFUz0xLAotIERFVl9NQUNfSElEX0tFWUJPQVJEX0xPQ0tfS0VZQ09ERVM9MiwKLSBERVZfTUFDX0hJRF9NT1VTRV9CVVRUT05fRU1VTEFUSU9OPTMsCisgIE5FVF9JUFY0X0ZPUldBUkQgPSA4LAorICBORVRfSVBWNF9EWU5BRERSID0gOSwKKyAgTkVUX0lQVjRfQ09ORiA9IDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZfTUFDX0hJRF9NT1VTRV9CVVRUT04yX0tFWUNPREU9NCwKLSBERVZfTUFDX0hJRF9NT1VTRV9CVVRUT04zX0tFWUNPREU9NSwKLSBERVZfTUFDX0hJRF9BREJfTU9VU0VfU0VORFNfS0VZQ09ERVM9NgorICBORVRfSVBWNF9ORUlHSCA9IDE3LAorICBORVRfSVBWNF9ST1VURSA9IDE4LAorICBORVRfSVBWNF9GSUJfSEFTSCA9IDE5LAorICBORVRfSVBWNF9ORVRGSUxURVIgPSAyMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1RDUF9USU1FU1RBTVBTID0gMzMsCisgIE5FVF9JUFY0X1RDUF9XSU5ET1dfU0NBTElORyA9IDM0LAorICBORVRfSVBWNF9UQ1BfU0FDSyA9IDM1LAorICBORVRfSVBWNF9UQ1BfUkVUUkFOU19DT0xMQVBTRSA9IDM2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfREVGQVVMVF9UVEwgPSAzNywKKyAgTkVUX0lQVjRfQVVUT0NPTkZJRyA9IDM4LAorICBORVRfSVBWNF9OT19QTVRVX0RJU0MgPSAzOSwKKyAgTkVUX0lQVjRfVENQX1NZTl9SRVRSSUVTID0gNDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9JUEZSQUdfSElHSF9USFJFU0ggPSA0MSwKKyAgTkVUX0lQVjRfSVBGUkFHX0xPV19USFJFU0ggPSA0MiwKKyAgTkVUX0lQVjRfSVBGUkFHX1RJTUUgPSA0MywKKyAgTkVUX0lQVjRfVENQX01BWF9LQV9QUk9CRVMgPSA0NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1RDUF9LRUVQQUxJVkVfVElNRSA9IDQ1LAorICBORVRfSVBWNF9UQ1BfS0VFUEFMSVZFX1BST0JFUyA9IDQ2LAorICBORVRfSVBWNF9UQ1BfUkVUUklFUzEgPSA0NywKKyAgTkVUX0lQVjRfVENQX1JFVFJJRVMyID0gNDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9UQ1BfRklOX1RJTUVPVVQgPSA0OSwKKyAgTkVUX0lQVjRfSVBfTUFTUV9ERUJVRyA9IDUwLAorICBORVRfVENQX1NZTkNPT0tJRVMgPSA1MSwKKyAgTkVUX1RDUF9TVERVUkcgPSA1MiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfUkZDMTMzNyA9IDUzLAorICBORVRfVENQX1NZTl9UQUlMRFJPUCA9IDU0LAorICBORVRfVENQX01BWF9TWU5fQkFDS0xPRyA9IDU1LAorICBORVRfSVBWNF9MT0NBTF9QT1JUX1JBTkdFID0gNTYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9JQ01QX0VDSE9fSUdOT1JFX0FMTCA9IDU3LAorICBORVRfSVBWNF9JQ01QX0VDSE9fSUdOT1JFX0JST0FEQ0FTVFMgPSA1OCwKKyAgTkVUX0lQVjRfSUNNUF9TT1VSQ0VRVUVOQ0hfUkFURSA9IDU5LAorICBORVRfSVBWNF9JQ01QX0RFU1RVTlJFQUNIX1JBVEUgPSA2MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lDTVBfVElNRUVYQ0VFRF9SQVRFID0gNjEsCisgIE5FVF9JUFY0X0lDTVBfUEFSQU1QUk9CX1JBVEUgPSA2MiwKKyAgTkVUX0lQVjRfSUNNUF9FQ0hPUkVQTFlfUkFURSA9IDYzLAorICBORVRfSVBWNF9JQ01QX0lHTk9SRV9CT0dVU19FUlJPUl9SRVNQT05TRVMgPSA2NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lHTVBfTUFYX01FTUJFUlNISVBTID0gNjUsCisgIE5FVF9UQ1BfVFdfUkVDWUNMRSA9IDY2LAorICBORVRfSVBWNF9BTFdBWVNfREVGUkFHID0gNjcsCisgIE5FVF9JUFY0X1RDUF9LRUVQQUxJVkVfSU5UVkwgPSA2OCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lORVRfUEVFUl9USFJFU0hPTEQgPSA2OSwKKyAgTkVUX0lQVjRfSU5FVF9QRUVSX01JTlRUTCA9IDcwLAorICBORVRfSVBWNF9JTkVUX1BFRVJfTUFYVFRMID0gNzEsCisgIE5FVF9JUFY0X0lORVRfUEVFUl9HQ19NSU5USU1FID0gNzIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9JTkVUX1BFRVJfR0NfTUFYVElNRSA9IDczLAorICBORVRfVENQX09SUEhBTl9SRVRSSUVTID0gNzQsCisgIE5FVF9UQ1BfQUJPUlRfT05fT1ZFUkZMT1cgPSA3NSwKKyAgTkVUX1RDUF9TWU5BQ0tfUkVUUklFUyA9IDc2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RDUF9NQVhfT1JQSEFOUyA9IDc3LAorICBORVRfVENQX01BWF9UV19CVUNLRVRTID0gNzgsCisgIE5FVF9UQ1BfRkFDSyA9IDc5LAorICBORVRfVENQX1JFT1JERVJJTkcgPSA4MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfRUNOID0gODEsCisgIE5FVF9UQ1BfRFNBQ0sgPSA4MiwKKyAgTkVUX1RDUF9NRU0gPSA4MywKKyAgTkVUX1RDUF9XTUVNID0gODQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX1JNRU0gPSA4NSwKKyAgTkVUX1RDUF9BUFBfV0lOID0gODYsCisgIE5FVF9UQ1BfQURWX1dJTl9TQ0FMRSA9IDg3LAorICBORVRfSVBWNF9OT05MT0NBTF9CSU5EID0gODgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9JQ01QX1JBVEVMSU1JVCA9IDg5LAorICBORVRfSVBWNF9JQ01QX1JBVEVNQVNLID0gOTAsCisgIE5FVF9UQ1BfVFdfUkVVU0UgPSA5MSwKKyAgTkVUX1RDUF9GUlRPID0gOTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX0xPV19MQVRFTkNZID0gOTMsCisgIE5FVF9JUFY0X0lQRlJBR19TRUNSRVRfSU5URVJWQUwgPSA5NCwKKyAgTkVUX0lQVjRfSUdNUF9NQVhfTVNGID0gOTYsCisgIE5FVF9UQ1BfTk9fTUVUUklDU19TQVZFID0gOTcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX0RFRkFVTFRfV0lOX1NDQUxFID0gMTA1LAorICBORVRfVENQX01PREVSQVRFX1JDVkJVRiA9IDEwNiwKKyAgTkVUX1RDUF9UU09fV0lOX0RJVklTT1IgPSAxMDcsCisgIE5FVF9UQ1BfQklDX0JFVEEgPSAxMDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9JQ01QX0VSUk9SU19VU0VfSU5CT1VORF9JRkFERFIgPSAxMDksCisgIE5FVF9UQ1BfQ09OR19DT05UUk9MID0gMTEwLAorICBORVRfVENQX0FCQyA9IDExMSwKKyAgTkVUX0lQVjRfSVBGUkFHX01BWF9ESVNUID0gMTEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RDUF9NVFVfUFJPQklORyA9IDExMywKKyAgTkVUX1RDUF9CQVNFX01TUyA9IDExNCwKKyAgTkVUX0lQVjRfVENQX1dPUktBUk9VTkRfU0lHTkVEX1dJTkRPV1MgPSAxMTUsCisgIE5FVF9UQ1BfRE1BX0NPUFlCUkVBSyA9IDExNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfU0xPV19TVEFSVF9BRlRFUl9JRExFID0gMTE3LAorICBORVRfQ0lQU09WNF9DQUNIRV9FTkFCTEUgPSAxMTgsCisgIE5FVF9DSVBTT1Y0X0NBQ0hFX0JVQ0tFVF9TSVpFID0gMTE5LAorICBORVRfQ0lQU09WNF9SQk1fT1BURk1UID0gMTIwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0NJUFNPVjRfUkJNX1NUUklDVFZBTElEID0gMTIxLAorICBORVRfVENQX0FWQUlMX0NPTkdfQ09OVFJPTCA9IDEyMiwKKyAgTkVUX1RDUF9BTExPV0VEX0NPTkdfQ09OVFJPTCA9IDEyMywKKyAgTkVUX1RDUF9NQVhfU1NUSFJFU0ggPSAxMjQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX0ZSVE9fUkVTUE9OU0UgPSAxMjUsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIERFVl9TQ1NJX0xPR0dJTkdfTEVWRUw9MSwKKyAgTkVUX0lQVjRfUk9VVEVfRkxVU0ggPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfUk9VVEVfTUlOX0RFTEFZID0gMiwKKyAgTkVUX0lQVjRfUk9VVEVfTUFYX0RFTEFZID0gMywKKyAgTkVUX0lQVjRfUk9VVEVfR0NfVEhSRVNIID0gNCwKKyAgTkVUX0lQVjRfUk9VVEVfTUFYX1NJWkUgPSA1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfUk9VVEVfR0NfTUlOX0lOVEVSVkFMID0gNiwKKyAgTkVUX0lQVjRfUk9VVEVfR0NfVElNRU9VVCA9IDcsCisgIE5FVF9JUFY0X1JPVVRFX0dDX0lOVEVSVkFMID0gOCwKKyAgTkVUX0lQVjRfUk9VVEVfUkVESVJFQ1RfTE9BRCA9IDksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ST1VURV9SRURJUkVDVF9OVU1CRVIgPSAxMCwKKyAgTkVUX0lQVjRfUk9VVEVfUkVESVJFQ1RfU0lMRU5DRSA9IDExLAorICBORVRfSVBWNF9ST1VURV9FUlJPUl9DT1NUID0gMTIsCisgIE5FVF9JUFY0X1JPVVRFX0VSUk9SX0JVUlNUID0gMTMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ST1VURV9HQ19FTEFTVElDSVRZID0gMTQsCisgIE5FVF9JUFY0X1JPVVRFX01UVV9FWFBJUkVTID0gMTUsCisgIE5FVF9JUFY0X1JPVVRFX01JTl9QTVRVID0gMTYsCisgIE5FVF9JUFY0X1JPVVRFX01JTl9BRFZNU1MgPSAxNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1JPVVRFX1NFQ1JFVF9JTlRFUlZBTCA9IDE4LAorICBORVRfSVBWNF9ST1VURV9HQ19NSU5fSU5URVJWQUxfTVMgPSAxOSwKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX0lQTUlfUE9XRVJPRkZfUE9XRVJDWUNMRT0xLAorICBORVRfUFJPVE9fQ09ORl9BTEwgPSAtIDIsCisgIE5FVF9QUk9UT19DT05GX0RFRkFVTFQgPSAtIDMKIH07Ci1lbnVtCi17CitlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQUJJX0RFRkhBTkRMRVJfQ09GRj0xLAotIEFCSV9ERUZIQU5ETEVSX0VMRj0yLAotIEFCSV9ERUZIQU5ETEVSX0xDQUxMNz0zLAotIEFCSV9ERUZIQU5ETEVSX0xJQkNTTz00LAorICBORVRfSVBWNF9DT05GX0ZPUldBUkRJTkcgPSAxLAorICBORVRfSVBWNF9DT05GX01DX0ZPUldBUkRJTkcgPSAyLAorICBORVRfSVBWNF9DT05GX1BST1hZX0FSUCA9IDMsCisgIE5FVF9JUFY0X0NPTkZfQUNDRVBUX1JFRElSRUNUUyA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFCSV9UUkFDRT01LAotIEFCSV9GQUtFX1VUU05BTUU9NiwKKyAgTkVUX0lQVjRfQ09ORl9TRUNVUkVfUkVESVJFQ1RTID0gNSwKKyAgTkVUX0lQVjRfQ09ORl9TRU5EX1JFRElSRUNUUyA9IDYsCisgIE5FVF9JUFY0X0NPTkZfU0hBUkVEX01FRElBID0gNywKKyAgTkVUX0lQVjRfQ09ORl9SUF9GSUxURVIgPSA4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfQ09ORl9BQ0NFUFRfU09VUkNFX1JPVVRFID0gOSwKKyAgTkVUX0lQVjRfQ09ORl9CT09UUF9SRUxBWSA9IDEwLAorICBORVRfSVBWNF9DT05GX0xPR19NQVJUSUFOUyA9IDExLAorICBORVRfSVBWNF9DT05GX1RBRyA9IDEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfQ09ORl9BUlBGSUxURVIgPSAxMywKKyAgTkVUX0lQVjRfQ09ORl9NRURJVU1fSUQgPSAxNCwKKyAgTkVUX0lQVjRfQ09ORl9OT1hGUk0gPSAxNSwKKyAgTkVUX0lQVjRfQ09ORl9OT1BPTElDWSA9IDE2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfQ09ORl9GT1JDRV9JR01QX1ZFUlNJT04gPSAxNywKKyAgTkVUX0lQVjRfQ09ORl9BUlBfQU5OT1VOQ0UgPSAxOCwKKyAgTkVUX0lQVjRfQ09ORl9BUlBfSUdOT1JFID0gMTksCisgIE5FVF9JUFY0X0NPTkZfUFJPTU9URV9TRUNPTkRBUklFUyA9IDIwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfQ09ORl9BUlBfQUNDRVBUID0gMjEsCisgIE5FVF9JUFY0X0NPTkZfQVJQX05PVElGWSA9IDIyLAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX01BWCA9IDEsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fU0VOVCA9IDIsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fUkVDViA9IDMsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9FU1RBQkxJU0hFRCA9IDQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfRklOX1dBSVQgPSA1LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0VfV0FJVCA9IDYsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9MQVNUX0FDSyA9IDcsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9USU1FX1dBSVQgPSA4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFID0gOSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1VEUF9USU1FT1VUID0gMTAsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19VRFBfVElNRU9VVF9TVFJFQU0gPSAxMSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0lDTVBfVElNRU9VVCA9IDEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0dFTkVSSUNfVElNRU9VVCA9IDEzLAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfQlVDS0VUUyA9IDE0LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfTE9HX0lOVkFMSUQgPSAxNSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX01BWF9SRVRSQU5TID0gMTYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX0xPT1NFID0gMTcsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfQkVfTElCRVJBTCA9IDE4LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX01BWF9SRVRSQU5TID0gMTksCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ0xPU0VEID0gMjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9XQUlUID0gMjEsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ09PS0lFX0VDSE9FRCA9IDIyLAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0VTVEFCTElTSEVEID0gMjMsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fU0VOVCA9IDI0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9SRUNEID0gMjUsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fQUNLX1NFTlQgPSAyNiwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0NPVU5UID0gMjcsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19DSEVDS1NVTSA9IDI4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgTkVUX0lQVjZfQ09ORiA9IDE2LAorICBORVRfSVBWNl9ORUlHSCA9IDE3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfUk9VVEUgPSAxOCwKKyAgTkVUX0lQVjZfSUNNUCA9IDE5LAorICBORVRfSVBWNl9CSU5EVjZPTkxZID0gMjAsCisgIE5FVF9JUFY2X0lQNkZSQUdfSElHSF9USFJFU0ggPSAyMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X0lQNkZSQUdfTE9XX1RIUkVTSCA9IDIyLAorICBORVRfSVBWNl9JUDZGUkFHX1RJTUUgPSAyMywKKyAgTkVUX0lQVjZfSVA2RlJBR19TRUNSRVRfSU5URVJWQUwgPSAyNCwKKyAgTkVUX0lQVjZfTUxEX01BWF9NU0YgPSAyNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIE5FVF9JUFY2X1JPVVRFX0ZMVVNIID0gMSwKKyAgTkVUX0lQVjZfUk9VVEVfR0NfVEhSRVNIID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X1JPVVRFX01BWF9TSVpFID0gMywKKyAgTkVUX0lQVjZfUk9VVEVfR0NfTUlOX0lOVEVSVkFMID0gNCwKKyAgTkVUX0lQVjZfUk9VVEVfR0NfVElNRU9VVCA9IDUsCisgIE5FVF9JUFY2X1JPVVRFX0dDX0lOVEVSVkFMID0gNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X1JPVVRFX0dDX0VMQVNUSUNJVFkgPSA3LAorICBORVRfSVBWNl9ST1VURV9NVFVfRVhQSVJFUyA9IDgsCisgIE5FVF9JUFY2X1JPVVRFX01JTl9BRFZNU1MgPSA5LAorICBORVRfSVBWNl9ST1VURV9HQ19NSU5fSU5URVJWQUxfTVMgPSAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgTkVUX0lQVjZfRk9SV0FSRElORyA9IDEsCisgIE5FVF9JUFY2X0hPUF9MSU1JVCA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNl9NVFUgPSAzLAorICBORVRfSVBWNl9BQ0NFUFRfUkEgPSA0LAorICBORVRfSVBWNl9BQ0NFUFRfUkVESVJFQ1RTID0gNSwKKyAgTkVUX0lQVjZfQVVUT0NPTkYgPSA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfREFEX1RSQU5TTUlUUyA9IDcsCisgIE5FVF9JUFY2X1JUUl9TT0xJQ0lUUyA9IDgsCisgIE5FVF9JUFY2X1JUUl9TT0xJQ0lUX0lOVEVSVkFMID0gOSwKKyAgTkVUX0lQVjZfUlRSX1NPTElDSVRfREVMQVkgPSAxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X1VTRV9URU1QQUREUiA9IDExLAorICBORVRfSVBWNl9URU1QX1ZBTElEX0xGVCA9IDEyLAorICBORVRfSVBWNl9URU1QX1BSRUZFUkVEX0xGVCA9IDEzLAorICBORVRfSVBWNl9SRUdFTl9NQVhfUkVUUlkgPSAxNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X01BWF9ERVNZTkNfRkFDVE9SID0gMTUsCisgIE5FVF9JUFY2X01BWF9BRERSRVNTRVMgPSAxNiwKKyAgTkVUX0lQVjZfRk9SQ0VfTUxEX1ZFUlNJT04gPSAxNywKKyAgTkVUX0lQVjZfQUNDRVBUX1JBX0RFRlJUUiA9IDE4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfQUNDRVBUX1JBX1BJTkZPID0gMTksCisgIE5FVF9JUFY2X0FDQ0VQVF9SQV9SVFJfUFJFRiA9IDIwLAorICBORVRfSVBWNl9SVFJfUFJPQkVfSU5URVJWQUwgPSAyMSwKKyAgTkVUX0lQVjZfQUNDRVBUX1JBX1JUX0lORk9fTUFYX1BMRU4gPSAyMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X1BST1hZX05EUCA9IDIzLAorICBORVRfSVBWNl9BQ0NFUFRfU09VUkNFX1JPVVRFID0gMjUsCisgIE5FVF9JUFY2X0FDQ0VQVF9SQV9GUk9NX0xPQ0FMID0gMjYsCisgIF9fTkVUX0lQVjZfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBORVRfSVBWNl9JQ01QX1JBVEVMSU1JVCA9IDEKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIE5FVF9ORUlHSF9NQ0FTVF9TT0xJQ0lUID0gMSwKKyAgTkVUX05FSUdIX1VDQVNUX1NPTElDSVQgPSAyLAorICBORVRfTkVJR0hfQVBQX1NPTElDSVQgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05FSUdIX1JFVFJBTlNfVElNRSA9IDQsCisgIE5FVF9ORUlHSF9SRUFDSEFCTEVfVElNRSA9IDUsCisgIE5FVF9ORUlHSF9ERUxBWV9QUk9CRV9USU1FID0gNiwKKyAgTkVUX05FSUdIX0dDX1NUQUxFX1RJTUUgPSA3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05FSUdIX1VOUkVTX1FMRU4gPSA4LAorICBORVRfTkVJR0hfUFJPWFlfUUxFTiA9IDksCisgIE5FVF9ORUlHSF9BTllDQVNUX0RFTEFZID0gMTAsCisgIE5FVF9ORUlHSF9QUk9YWV9ERUxBWSA9IDExLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05FSUdIX0xPQ0tUSU1FID0gMTIsCisgIE5FVF9ORUlHSF9HQ19JTlRFUlZBTCA9IDEzLAorICBORVRfTkVJR0hfR0NfVEhSRVNIMSA9IDE0LAorICBORVRfTkVJR0hfR0NfVEhSRVNIMiA9IDE1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05FSUdIX0dDX1RIUkVTSDMgPSAxNiwKKyAgTkVUX05FSUdIX1JFVFJBTlNfVElNRV9NUyA9IDE3LAorICBORVRfTkVJR0hfUkVBQ0hBQkxFX1RJTUVfTVMgPSAxOCwKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIE5FVF9EQ0NQX0RFRkFVTFQgPSAxLAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQWF9QUFJPUF9CUk9BRENBU1RJTkcgPSAxLAorICBORVRfSVBYX0ZPUldBUkRJTkcgPSAyCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTExDMiA9IDEsCisgIE5FVF9MTENfU1RBVElPTiA9IDIsCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTExDMl9USU1FT1VUID0gMSwKK307CitlbnVtIHsKKyAgTkVUX0xMQ19TVEFUSU9OX0FDS19USU1FT1VUID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIE5FVF9MTEMyX0FDS19USU1FT1VUID0gMSwKKyAgTkVUX0xMQzJfUF9USU1FT1VUID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9MTEMyX1JFSl9USU1FT1VUID0gMywKKyAgTkVUX0xMQzJfQlVTWV9USU1FT1VUID0gNCwKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9BVEFMS19BQVJQX0VYUElSWV9USU1FID0gMSwKKyAgTkVUX0FUQUxLX0FBUlBfVElDS19USU1FID0gMiwKKyAgTkVUX0FUQUxLX0FBUlBfUkVUUkFOU01JVF9MSU1JVCA9IDMsCisgIE5FVF9BVEFMS19BQVJQX1JFU09MVkVfVElNRSA9IDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIE5FVF9ORVRST01fREVGQVVMVF9QQVRIX1FVQUxJVFkgPSAxLAorICBORVRfTkVUUk9NX09CU09MRVNDRU5DRV9DT1VOVF9JTklUSUFMSVNFUiA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVUUk9NX05FVFdPUktfVFRMX0lOSVRJQUxJU0VSID0gMywKKyAgTkVUX05FVFJPTV9UUkFOU1BPUlRfVElNRU9VVCA9IDQsCisgIE5FVF9ORVRST01fVFJBTlNQT1JUX01BWElNVU1fVFJJRVMgPSA1LAorICBORVRfTkVUUk9NX1RSQU5TUE9SVF9BQ0tOT1dMRURHRV9ERUxBWSA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVUUk9NX1RSQU5TUE9SVF9CVVNZX0RFTEFZID0gNywKKyAgTkVUX05FVFJPTV9UUkFOU1BPUlRfUkVRVUVTVEVEX1dJTkRPV19TSVpFID0gOCwKKyAgTkVUX05FVFJPTV9UUkFOU1BPUlRfTk9fQUNUSVZJVFlfVElNRU9VVCA9IDksCisgIE5FVF9ORVRST01fUk9VVElOR19DT05UUk9MID0gMTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVUUk9NX0xJTktfRkFJTFNfQ09VTlQgPSAxMSwKKyAgTkVUX05FVFJPTV9SRVNFVCA9IDEyCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQVgyNV9JUF9ERUZBVUxUX01PREUgPSAxLAorICBORVRfQVgyNV9ERUZBVUxUX01PREUgPSAyLAorICBORVRfQVgyNV9CQUNLT0ZGX1RZUEUgPSAzLAorICBORVRfQVgyNV9DT05ORUNUX01PREUgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0FYMjVfU1RBTkRBUkRfV0lORE9XID0gNSwKKyAgTkVUX0FYMjVfRVhURU5ERURfV0lORE9XID0gNiwKKyAgTkVUX0FYMjVfVDFfVElNRU9VVCA9IDcsCisgIE5FVF9BWDI1X1QyX1RJTUVPVVQgPSA4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0FYMjVfVDNfVElNRU9VVCA9IDksCisgIE5FVF9BWDI1X0lETEVfVElNRU9VVCA9IDEwLAorICBORVRfQVgyNV9OMiA9IDExLAorICBORVRfQVgyNV9QQUNMRU4gPSAxMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9BWDI1X1BST1RPQ09MID0gMTMsCisgIE5FVF9BWDI1X0RBTUFfU0xBVkVfVElNRU9VVCA9IDE0Cit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfUk9TRV9SRVNUQVJUX1JFUVVFU1RfVElNRU9VVCA9IDEsCisgIE5FVF9ST1NFX0NBTExfUkVRVUVTVF9USU1FT1VUID0gMiwKKyAgTkVUX1JPU0VfUkVTRVRfUkVRVUVTVF9USU1FT1VUID0gMywKKyAgTkVUX1JPU0VfQ0xFQVJfUkVRVUVTVF9USU1FT1VUID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ST1NFX0FDS19IT0xEX0JBQ0tfVElNRU9VVCA9IDUsCisgIE5FVF9ST1NFX1JPVVRJTkdfQ09OVFJPTCA9IDYsCisgIE5FVF9ST1NFX0xJTktfRkFJTF9USU1FT1VUID0gNywKKyAgTkVUX1JPU0VfTUFYX1ZDUyA9IDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfUk9TRV9XSU5ET1dfU0laRSA9IDksCisgIE5FVF9ST1NFX05PX0FDVElWSVRZX1RJTUVPVVQgPSAxMAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1gyNV9SRVNUQVJUX1JFUVVFU1RfVElNRU9VVCA9IDEsCisgIE5FVF9YMjVfQ0FMTF9SRVFVRVNUX1RJTUVPVVQgPSAyLAorICBORVRfWDI1X1JFU0VUX1JFUVVFU1RfVElNRU9VVCA9IDMsCisgIE5FVF9YMjVfQ0xFQVJfUkVRVUVTVF9USU1FT1VUID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9YMjVfQUNLX0hPTERfQkFDS19USU1FT1VUID0gNSwKKyAgTkVUX1gyNV9GT1JXQVJEID0gNgorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RSX1JJRl9USU1FT1VUID0gMQorfTsKK2VudW0geworICBORVRfREVDTkVUX05PREVfVFlQRSA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfREVDTkVUX05PREVfQUREUkVTUyA9IDIsCisgIE5FVF9ERUNORVRfTk9ERV9OQU1FID0gMywKKyAgTkVUX0RFQ05FVF9ERUZBVUxUX0RFVklDRSA9IDQsCisgIE5FVF9ERUNORVRfVElNRV9XQUlUID0gNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfRE5fQ09VTlQgPSA2LAorICBORVRfREVDTkVUX0RJX0NPVU5UID0gNywKKyAgTkVUX0RFQ05FVF9EUl9DT1VOVCA9IDgsCisgIE5FVF9ERUNORVRfRFNUX0dDX0lOVEVSVkFMID0gOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfQ09ORiA9IDEwLAorICBORVRfREVDTkVUX05PX0ZDX01BWF9DV05EID0gMTEsCisgIE5FVF9ERUNORVRfTUVNID0gMTIsCisgIE5FVF9ERUNORVRfUk1FTSA9IDEzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9XTUVNID0gMTQsCisgIE5FVF9ERUNORVRfREVCVUdfTEVWRUwgPSAyNTUKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfQ09ORl9MT09QQkFDSyA9IC0gMiwKKyAgTkVUX0RFQ05FVF9DT05GX0REQ01QID0gLSAzLAorICBORVRfREVDTkVUX0NPTkZfUFBQID0gLSA0LAorICBORVRfREVDTkVUX0NPTkZfWDI1ID0gLSA1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9DT05GX0dSRSA9IC0gNiwKKyAgTkVUX0RFQ05FVF9DT05GX0VUSEVSID0gLSA3Cit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfREVDTkVUX0NPTkZfREVWX1BSSU9SSVRZID0gMSwKKyAgTkVUX0RFQ05FVF9DT05GX0RFVl9UMSA9IDIsCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfVDIgPSAzLAorICBORVRfREVDTkVUX0NPTkZfREVWX1QzID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfRk9SV0FSRElORyA9IDUsCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfQkxLU0laRSA9IDYsCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfU1RBVEUgPSA3Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBORVRfU0NUUF9SVE9fSU5JVElBTCA9IDEsCisgIE5FVF9TQ1RQX1JUT19NSU4gPSAyLAorICBORVRfU0NUUF9SVE9fTUFYID0gMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9TQ1RQX1JUT19BTFBIQSA9IDQsCisgIE5FVF9TQ1RQX1JUT19CRVRBID0gNSwKKyAgTkVUX1NDVFBfVkFMSURfQ09PS0lFX0xJRkUgPSA2LAorICBORVRfU0NUUF9BU1NPQ0lBVElPTl9NQVhfUkVUUkFOUyA9IDcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfU0NUUF9QQVRIX01BWF9SRVRSQU5TID0gOCwKKyAgTkVUX1NDVFBfTUFYX0lOSVRfUkVUUkFOU01JVFMgPSA5LAorICBORVRfU0NUUF9IQl9JTlRFUlZBTCA9IDEwLAorICBORVRfU0NUUF9QUkVTRVJWRV9FTkFCTEUgPSAxMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9TQ1RQX01BWF9CVVJTVCA9IDEyLAorICBORVRfU0NUUF9BRERJUF9FTkFCTEUgPSAxMywKKyAgTkVUX1NDVFBfUFJTQ1RQX0VOQUJMRSA9IDE0LAorICBORVRfU0NUUF9TTkRCVUZfUE9MSUNZID0gMTUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfU0NUUF9TQUNLX1RJTUVPVVQgPSAxNiwKKyAgTkVUX1NDVFBfUkNWQlVGX1BPTElDWSA9IDE3LAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0JSSURHRV9ORl9DQUxMX0FSUFRBQkxFUyA9IDEsCisgIE5FVF9CUklER0VfTkZfQ0FMTF9JUFRBQkxFUyA9IDIsCisgIE5FVF9CUklER0VfTkZfQ0FMTF9JUDZUQUJMRVMgPSAzLAorICBORVRfQlJJREdFX05GX0ZJTFRFUl9WTEFOX1RBR0dFRCA9IDQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQlJJREdFX05GX0ZJTFRFUl9QUFBPRV9UQUdHRUQgPSA1LAorfTsKK2VudW0geworICBORVRfSVJEQV9ESVNDT1ZFUlkgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lSREFfREVWTkFNRSA9IDIsCisgIE5FVF9JUkRBX0RFQlVHID0gMywKKyAgTkVUX0lSREFfRkFTVF9QT0xMID0gNCwKKyAgTkVUX0lSREFfRElTQ09WRVJZX1NMT1RTID0gNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUkRBX0RJU0NPVkVSWV9USU1FT1VUID0gNiwKKyAgTkVUX0lSREFfU0xPVF9USU1FT1VUID0gNywKKyAgTkVUX0lSREFfTUFYX0JBVURfUkFURSA9IDgsCisgIE5FVF9JUkRBX01JTl9UWF9UVVJOX1RJTUUgPSA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lSREFfTUFYX1RYX0RBVEFfU0laRSA9IDEwLAorICBORVRfSVJEQV9NQVhfVFhfV0lORE9XID0gMTEsCisgIE5FVF9JUkRBX01BWF9OT1JFUExZX1RJTUUgPSAxMiwKKyAgTkVUX0lSREFfV0FSTl9OT1JFUExZX1RJTUUgPSAxMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUkRBX0xBUF9LRUVQQUxJVkVfVElNRSA9IDE0LAorfTsKK2VudW0geworICBGU19OUklOT0RFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX1NUQVRJTk9ERSA9IDIsCisgIEZTX01BWElOT0RFID0gMywKKyAgRlNfTlJEUVVPVCA9IDQsCisgIEZTX01BWERRVU9UID0gNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX05SRklMRSA9IDYsCisgIEZTX01BWEZJTEUgPSA3LAorICBGU19ERU5UUlkgPSA4LAorICBGU19OUlNVUEVSID0gOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX01BWFNVUEVSID0gMTAsCisgIEZTX09WRVJGTE9XVUlEID0gMTEsCisgIEZTX09WRVJGTE9XR0lEID0gMTIsCisgIEZTX0xFQVNFUyA9IDEzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlNfRElSX05PVElGWSA9IDE0LAorICBGU19MRUFTRV9USU1FID0gMTUsCisgIEZTX0RRU1RBVFMgPSAxNiwKKyAgRlNfWEZTID0gMTcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGU19BSU9fTlIgPSAxOCwKKyAgRlNfQUlPX01BWF9OUiA9IDE5LAorICBGU19JTk9USUZZID0gMjAsCisgIEZTX09DRlMyID0gOTg4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgRlNfRFFfTE9PS1VQUyA9IDEsCisgIEZTX0RRX0RST1BTID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX0RRX1JFQURTID0gMywKKyAgRlNfRFFfV1JJVEVTID0gNCwKKyAgRlNfRFFfQ0FDSEVfSElUUyA9IDUsCisgIEZTX0RRX0FMTE9DQVRFRCA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGU19EUV9GUkVFID0gNywKKyAgRlNfRFFfU1lOQ1MgPSA4LAorICBGU19EUV9XQVJOSU5HUyA9IDksCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBERVZfQ0RST00gPSAxLAorICBERVZfSFdNT04gPSAyLAorICBERVZfUEFSUE9SVCA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBERVZfUkFJRCA9IDQsCisgIERFVl9NQUNfSElEID0gNSwKKyAgREVWX1NDU0kgPSA2LAorICBERVZfSVBNSSA9IDcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBERVZfQ0RST01fSU5GTyA9IDEsCisgIERFVl9DRFJPTV9BVVRPQ0xPU0UgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgREVWX0NEUk9NX0FVVE9FSkVDVCA9IDMsCisgIERFVl9DRFJPTV9ERUJVRyA9IDQsCisgIERFVl9DRFJPTV9MT0NLID0gNSwKKyAgREVWX0NEUk9NX0NIRUNLX01FRElBID0gNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgREVWX1BBUlBPUlRfREVGQVVMVCA9IC0gMworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgREVWX1JBSURfU1BFRURfTElNSVRfTUlOID0gMSwKKyAgREVWX1JBSURfU1BFRURfTElNSVRfTUFYID0gMgorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgREVWX1BBUlBPUlRfREVGQVVMVF9USU1FU0xJQ0UgPSAxLAorICBERVZfUEFSUE9SVF9ERUZBVUxUX1NQSU5USU1FID0gMgorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgREVWX1BBUlBPUlRfU1BJTlRJTUUgPSAxLAorICBERVZfUEFSUE9SVF9CQVNFX0FERFIgPSAyLAorICBERVZfUEFSUE9SVF9JUlEgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgREVWX1BBUlBPUlRfRE1BID0gNCwKKyAgREVWX1BBUlBPUlRfTU9ERVMgPSA1LAorICBERVZfUEFSUE9SVF9ERVZJQ0VTID0gNiwKKyAgREVWX1BBUlBPUlRfQVVUT1BST0JFID0gMTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIERFVl9QQVJQT1JUX0RFVklDRVNfQUNUSVZFID0gLSAzLAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgREVWX1BBUlBPUlRfREVWSUNFX1RJTUVTTElDRSA9IDEsCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBERVZfTUFDX0hJRF9LRVlCT0FSRF9TRU5EU19MSU5VWF9LRVlDT0RFUyA9IDEsCisgIERFVl9NQUNfSElEX0tFWUJPQVJEX0xPQ0tfS0VZQ09ERVMgPSAyLAorICBERVZfTUFDX0hJRF9NT1VTRV9CVVRUT05fRU1VTEFUSU9OID0gMywKKyAgREVWX01BQ19ISURfTU9VU0VfQlVUVE9OMl9LRVlDT0RFID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERFVl9NQUNfSElEX01PVVNFX0JVVFRPTjNfS0VZQ09ERSA9IDUsCisgIERFVl9NQUNfSElEX0FEQl9NT1VTRV9TRU5EU19LRVlDT0RFUyA9IDYKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERFVl9TQ1NJX0xPR0dJTkdfTEVWRUwgPSAxLAorfTsKK2VudW0geworICBERVZfSVBNSV9QT1dFUk9GRl9QT1dFUkNZQ0xFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIEFCSV9ERUZIQU5ETEVSX0NPRkYgPSAxLAorICBBQklfREVGSEFORExFUl9FTEYgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgQUJJX0RFRkhBTkRMRVJfTENBTEw3ID0gMywKKyAgQUJJX0RFRkhBTkRMRVJfTElCQ1NPID0gNCwKKyAgQUJJX1RSQUNFID0gNSwKKyAgQUJJX0ZBS0VfVVRTTkFNRSA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3lzaW5mby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNpbmZvLmgKaW5kZXggYzcyZjQxMS4uNzVjNjc2OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNpbmZvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNpbmZvLmgKQEAgLTIyLDIzICsyMiwyMyBAQAogI2RlZmluZSBTSV9MT0FEX1NISUZUIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHN5c2luZm8gewotIF9fa2VybmVsX2xvbmdfdCB1cHRpbWU7Ci0gX19rZXJuZWxfdWxvbmdfdCBsb2Fkc1szXTsKLSBfX2tlcm5lbF91bG9uZ190IHRvdGFscmFtOworICBfX2tlcm5lbF9sb25nX3QgdXB0aW1lOworICBfX2tlcm5lbF91bG9uZ190IGxvYWRzWzNdOworICBfX2tlcm5lbF91bG9uZ190IHRvdGFscmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IGZyZWVyYW07Ci0gX19rZXJuZWxfdWxvbmdfdCBzaGFyZWRyYW07Ci0gX19rZXJuZWxfdWxvbmdfdCBidWZmZXJyYW07Ci0gX19rZXJuZWxfdWxvbmdfdCB0b3RhbHN3YXA7CisgIF9fa2VybmVsX3Vsb25nX3QgZnJlZXJhbTsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaGFyZWRyYW07CisgIF9fa2VybmVsX3Vsb25nX3QgYnVmZmVycmFtOworICBfX2tlcm5lbF91bG9uZ190IHRvdGFsc3dhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBmcmVlc3dhcDsKLSBfX3UxNiBwcm9jczsKLSBfX3UxNiBwYWQ7Ci0gX19rZXJuZWxfdWxvbmdfdCB0b3RhbGhpZ2g7CisgIF9fa2VybmVsX3Vsb25nX3QgZnJlZXN3YXA7CisgIF9fdTE2IHByb2NzOworICBfX3UxNiBwYWQ7CisgIF9fa2VybmVsX3Vsb25nX3QgdG90YWxoaWdoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IGZyZWVoaWdoOwotIF9fdTMyIG1lbV91bml0OwotIGNoYXIgX2ZbMjAtMipzaXplb2YoX19rZXJuZWxfdWxvbmdfdCktc2l6ZW9mKF9fdTMyKV07CisgIF9fa2VybmVsX3Vsb25nX3QgZnJlZWhpZ2g7CisgIF9fdTMyIG1lbV91bml0OworICBjaGFyIF9mWzIwIC0gMiAqIHNpemVvZihfX2tlcm5lbF91bG9uZ190KSAtIHNpemVvZihfX3UzMildOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGFyZ2V0X2NvcmVfdXNlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXJnZXRfY29yZV91c2VyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UwY2Y0MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGFyZ2V0X2NvcmVfdXNlci5oCkBAIC0wLDAgKzEsOTEgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX19UQVJHRVRfQ09SRV9VU0VSX0gKKyNkZWZpbmUgX19UQVJHRVRfQ09SRV9VU0VSX0gKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L3Vpby5oPgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVENNVV9WRVJTSU9OICIxLjAiCisjZGVmaW5lIFRDTVVfTUFJTEJPWF9WRVJTSU9OIDEKKyNkZWZpbmUgQUxJR05fU0laRSA2NAorc3RydWN0IHRjbXVfbWFpbGJveCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiB2ZXJzaW9uOworICBfX3UxNiBmbGFnczsKKyAgX191MzIgY21kcl9vZmY7CisgIF9fdTMyIGNtZHJfc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGNtZF9oZWFkOworICBfX3UzMiBjbWRfdGFpbCBfX2F0dHJpYnV0ZV9fKChfX2FsaWduZWRfXyhBTElHTl9TSVpFKSkpOworfSBfX3BhY2tlZDsKK2VudW0gdGNtdV9vcGNvZGUgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVENNVV9PUF9QQUQgPSAwLAorICBUQ01VX09QX0NNRCwKK307CitzdHJ1Y3QgdGNtdV9jbWRfZW50cnlfaGRyIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGxlbl9vcDsKK30gX19wYWNrZWQ7CisjZGVmaW5lIFRDTVVfT1BfTUFTSyAweDcKKyNkZWZpbmUgVENNVV9TRU5TRV9CVUZGRVJTSVpFIDk2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHRjbXVfY21kX2VudHJ5IHsKKyAgc3RydWN0IHRjbXVfY21kX2VudHJ5X2hkciBoZHI7CisgIHVpbnQxNl90IGNtZF9pZDsKKyAgdWludDE2X3QgX19wYWQxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1aW50NjRfdCBjZGJfb2ZmOworICAgICAgdWludDY0X3QgaW92X2NudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgICBzdHJ1Y3QgaW92ZWMgaW92WzBdOworICAgIH0gcmVxOworICAgIHN0cnVjdCB7CisgICAgICB1aW50OF90IHNjc2lfc3RhdHVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICAgIHVpbnQ4X3QgX19wYWQxOworICAgICAgdWludDE2X3QgX19wYWQyOworICAgICAgdWludDMyX3QgX19wYWQzOworICAgICAgY2hhciBzZW5zZV9idWZmZXJbVENNVV9TRU5TRV9CVUZGRVJTSVpFXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgfSByc3A7CisgIH07Cit9IF9fcGFja2VkOworI2RlZmluZSBUQ01VX09QX0FMSUdOX1NJWkUgc2l6ZW9mKHVpbnQ2NF90KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gdGNtdV9nZW5sX2NtZCB7CisgIFRDTVVfQ01EX1VOU1BFQywKKyAgVENNVV9DTURfQURERURfREVWSUNFLAorICBUQ01VX0NNRF9SRU1PVkVEX0RFVklDRSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fVENNVV9DTURfTUFYLAorfTsKKyNkZWZpbmUgVENNVV9DTURfTUFYIChfX1RDTVVfQ01EX01BWCAtIDEpCitlbnVtIHRjbXVfZ2VubF9hdHRyIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFRDTVVfQVRUUl9VTlNQRUMsCisgIFRDTVVfQVRUUl9ERVZJQ0UsCisgIFRDTVVfQVRUUl9NSU5PUiwKKyAgX19UQ01VX0FUVFJfTUFYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIFRDTVVfQVRUUl9NQVggKF9fVENNVV9BVFRSX01BWCAtIDEpCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGFza3N0YXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rhc2tzdGF0cy5oCmluZGV4IGZkN2U5ZWQuLjI5OGViZjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGFza3N0YXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXNrc3RhdHMuaApAQCAtMjMsOTMgKzIzLDkzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUU19DT01NX0xFTiAzMgogc3RydWN0IHRhc2tzdGF0cyB7Ci0gX191MTYgdmVyc2lvbjsKLSBfX3UzMiBhY19leGl0Y29kZTsKKyAgX191MTYgdmVyc2lvbjsKKyAgX191MzIgYWNfZXhpdGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWNfZmxhZzsKLSBfX3U4IGFjX25pY2U7Ci0gX191NjQgY3B1X2NvdW50IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKLSBfX3U2NCBjcHVfZGVsYXlfdG90YWw7CisgIF9fdTggYWNfZmxhZzsKKyAgX191OCBhY19uaWNlOworICBfX3U2NCBjcHVfY291bnQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3U2NCBjcHVfZGVsYXlfdG90YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJsa2lvX2NvdW50OwotIF9fdTY0IGJsa2lvX2RlbGF5X3RvdGFsOwotIF9fdTY0IHN3YXBpbl9jb3VudDsKLSBfX3U2NCBzd2FwaW5fZGVsYXlfdG90YWw7CisgIF9fdTY0IGJsa2lvX2NvdW50OworICBfX3U2NCBibGtpb19kZWxheV90b3RhbDsKKyAgX191NjQgc3dhcGluX2NvdW50OworICBfX3U2NCBzd2FwaW5fZGVsYXlfdG90YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNwdV9ydW5fcmVhbF90b3RhbDsKLSBfX3U2NCBjcHVfcnVuX3ZpcnR1YWxfdG90YWw7Ci0gY2hhciBhY19jb21tW1RTX0NPTU1fTEVOXTsKLSBfX3U4IGFjX3NjaGVkIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191NjQgY3B1X3J1bl9yZWFsX3RvdGFsOworICBfX3U2NCBjcHVfcnVuX3ZpcnR1YWxfdG90YWw7CisgIGNoYXIgYWNfY29tbVtUU19DT01NX0xFTl07CisgIF9fdTggYWNfc2NoZWQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFjX3BhZFszXTsKLSBfX3UzMiBhY191aWQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwotIF9fdTMyIGFjX2dpZDsKLSBfX3UzMiBhY19waWQ7CisgIF9fdTggYWNfcGFkWzNdOworICBfX3UzMiBhY191aWQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3UzMiBhY19naWQ7CisgIF9fdTMyIGFjX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWNfcHBpZDsKLSBfX3UzMiBhY19idGltZTsKLSBfX3U2NCBhY19ldGltZSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7Ci0gX191NjQgYWNfdXRpbWU7CisgIF9fdTMyIGFjX3BwaWQ7CisgIF9fdTMyIGFjX2J0aW1lOworICBfX3U2NCBhY19ldGltZSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTY0IGFjX3V0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhY19zdGltZTsKLSBfX3U2NCBhY19taW5mbHQ7Ci0gX191NjQgYWNfbWFqZmx0OwotIF9fdTY0IGNvcmVtZW07CisgIF9fdTY0IGFjX3N0aW1lOworICBfX3U2NCBhY19taW5mbHQ7CisgIF9fdTY0IGFjX21hamZsdDsKKyAgX191NjQgY29yZW1lbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdmlydG1lbTsKLSBfX3U2NCBoaXdhdGVyX3JzczsKLSBfX3U2NCBoaXdhdGVyX3ZtOwotIF9fdTY0IHJlYWRfY2hhcjsKKyAgX191NjQgdmlydG1lbTsKKyAgX191NjQgaGl3YXRlcl9yc3M7CisgIF9fdTY0IGhpd2F0ZXJfdm07CisgIF9fdTY0IHJlYWRfY2hhcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgd3JpdGVfY2hhcjsKLSBfX3U2NCByZWFkX3N5c2NhbGxzOwotIF9fdTY0IHdyaXRlX3N5c2NhbGxzOworICBfX3U2NCB3cml0ZV9jaGFyOworICBfX3U2NCByZWFkX3N5c2NhbGxzOworICBfX3U2NCB3cml0ZV9zeXNjYWxsczsKICNkZWZpbmUgVEFTS1NUQVRTX0hBU19JT19BQ0NPVU5USU5HCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlYWRfYnl0ZXM7Ci0gX191NjQgd3JpdGVfYnl0ZXM7Ci0gX191NjQgY2FuY2VsbGVkX3dyaXRlX2J5dGVzOwotIF9fdTY0IG52Y3N3OworICBfX3U2NCByZWFkX2J5dGVzOworICBfX3U2NCB3cml0ZV9ieXRlczsKKyAgX191NjQgY2FuY2VsbGVkX3dyaXRlX2J5dGVzOworICBfX3U2NCBudmNzdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbml2Y3N3OwotIF9fdTY0IGFjX3V0aW1lc2NhbGVkOwotIF9fdTY0IGFjX3N0aW1lc2NhbGVkOwotIF9fdTY0IGNwdV9zY2FsZWRfcnVuX3JlYWxfdG90YWw7CisgIF9fdTY0IG5pdmNzdzsKKyAgX191NjQgYWNfdXRpbWVzY2FsZWQ7CisgIF9fdTY0IGFjX3N0aW1lc2NhbGVkOworICBfX3U2NCBjcHVfc2NhbGVkX3J1bl9yZWFsX3RvdGFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmcmVlcGFnZXNfY291bnQ7Ci0gX191NjQgZnJlZXBhZ2VzX2RlbGF5X3RvdGFsOworICBfX3U2NCBmcmVlcGFnZXNfY291bnQ7CisgIF9fdTY0IGZyZWVwYWdlc19kZWxheV90b3RhbDsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEFTS1NUQVRTX0NNRF9VTlNQRUMgPSAwLAotIFRBU0tTVEFUU19DTURfR0VULAotIFRBU0tTVEFUU19DTURfTkVXLAotIF9fVEFTS1NUQVRTX0NNRF9NQVgsCisgIFRBU0tTVEFUU19DTURfVU5TUEVDID0gMCwKKyAgVEFTS1NUQVRTX0NNRF9HRVQsCisgIFRBU0tTVEFUU19DTURfTkVXLAorICBfX1RBU0tTVEFUU19DTURfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRBU0tTVEFUU19DTURfTUFYIChfX1RBU0tTVEFUU19DTURfTUFYIC0gMSkKIGVudW0gewotIFRBU0tTVEFUU19UWVBFX1VOU1BFQyA9IDAsCisgIFRBU0tTVEFUU19UWVBFX1VOU1BFQyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRBU0tTVEFUU19UWVBFX1BJRCwKLSBUQVNLU1RBVFNfVFlQRV9UR0lELAotIFRBU0tTVEFUU19UWVBFX1NUQVRTLAotIFRBU0tTVEFUU19UWVBFX0FHR1JfUElELAorICBUQVNLU1RBVFNfVFlQRV9QSUQsCisgIFRBU0tTVEFUU19UWVBFX1RHSUQsCisgIFRBU0tTVEFUU19UWVBFX1NUQVRTLAorICBUQVNLU1RBVFNfVFlQRV9BR0dSX1BJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEFTS1NUQVRTX1RZUEVfQUdHUl9UR0lELAotIFRBU0tTVEFUU19UWVBFX05VTEwsCi0gX19UQVNLU1RBVFNfVFlQRV9NQVgsCisgIFRBU0tTVEFUU19UWVBFX0FHR1JfVEdJRCwKKyAgVEFTS1NUQVRTX1RZUEVfTlVMTCwKKyAgX19UQVNLU1RBVFNfVFlQRV9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVEFTS1NUQVRTX1RZUEVfTUFYIChfX1RBU0tTVEFUU19UWVBFX01BWCAtIDEpCiBlbnVtIHsKLSBUQVNLU1RBVFNfQ01EX0FUVFJfVU5TUEVDID0gMCwKLSBUQVNLU1RBVFNfQ01EX0FUVFJfUElELAorICBUQVNLU1RBVFNfQ01EX0FUVFJfVU5TUEVDID0gMCwKKyAgVEFTS1NUQVRTX0NNRF9BVFRSX1BJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEFTS1NUQVRTX0NNRF9BVFRSX1RHSUQsCi0gVEFTS1NUQVRTX0NNRF9BVFRSX1JFR0lTVEVSX0NQVU1BU0ssCi0gVEFTS1NUQVRTX0NNRF9BVFRSX0RFUkVHSVNURVJfQ1BVTUFTSywKLSBfX1RBU0tTVEFUU19DTURfQVRUUl9NQVgsCisgIFRBU0tTVEFUU19DTURfQVRUUl9UR0lELAorICBUQVNLU1RBVFNfQ01EX0FUVFJfUkVHSVNURVJfQ1BVTUFTSywKKyAgVEFTS1NUQVRTX0NNRF9BVFRSX0RFUkVHSVNURVJfQ1BVTUFTSywKKyAgX19UQVNLU1RBVFNfQ01EX0FUVFJfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRBU0tTVEFUU19DTURfQVRUUl9NQVggKF9fVEFTS1NUQVRTX0NNRF9BVFRSX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19jc3VtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19jc3VtLmgKaW5kZXggODg5ZWRhOC4uODNjMDBiNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfY3N1bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2NzdW0uaApAQCAtMjMsMjcgKzIzLDI3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfQUNUX0NTVU0gMTYKIGVudW0gewotIFRDQV9DU1VNX1VOU1BFQywKLSBUQ0FfQ1NVTV9QQVJNUywKKyAgVENBX0NTVU1fVU5TUEVDLAorICBUQ0FfQ1NVTV9QQVJNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0NTVU1fVE0sCi0gX19UQ0FfQ1NVTV9NQVgKKyAgVENBX0NTVU1fVE0sCisgIF9fVENBX0NTVU1fTUFYCiB9OwogI2RlZmluZSBUQ0FfQ1NVTV9NQVggKF9fVENBX0NTVU1fTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19JUFY0SERSID0gMSwKLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19JQ01QID0gMiwKLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19JR01QID0gNCwKKyAgVENBX0NTVU1fVVBEQVRFX0ZMQUdfSVBWNEhEUiA9IDEsCisgIFRDQV9DU1VNX1VQREFURV9GTEFHX0lDTVAgPSAyLAorICBUQ0FfQ1NVTV9VUERBVEVfRkxBR19JR01QID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0NTVU1fVVBEQVRFX0ZMQUdfVENQID0gOCwKLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19VRFAgPSAxNiwKLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19VRFBMSVRFID0gMzIKKyAgVENBX0NTVU1fVVBEQVRFX0ZMQUdfVENQID0gOCwKKyAgVENBX0NTVU1fVVBEQVRFX0ZMQUdfVURQID0gMTYsCisgIFRDQV9DU1VNX1VQREFURV9GTEFHX1VEUExJVEUgPSAzMgogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfY3N1bSB7Ci0gdGNfZ2VuOwotIF9fdTMyIHVwZGF0ZV9mbGFnczsKKyAgdGNfZ2VuOworICBfX3UzMiB1cGRhdGVfZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfZGVmYWN0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19kZWZhY3QuaAppbmRleCA0NDU0ZGZjLi5iOTZiY2Q1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19kZWZhY3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19kZWZhY3QuaApAQCAtMjEsMTUgKzIxLDE1IEBACiAjaW5jbHVkZSA8bGludXgvcGt0X2Nscy5oPgogc3RydWN0IHRjX2RlZmFjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRjX2dlbjsKKyAgdGNfZ2VuOwogfTsKIGVudW0gewotIFRDQV9ERUZfVU5TUEVDLAorICBUQ0FfREVGX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0RFRl9UTSwKLSBUQ0FfREVGX1BBUk1TLAotIFRDQV9ERUZfREFUQSwKLSBfX1RDQV9ERUZfTUFYCisgIFRDQV9ERUZfVE0sCisgIFRDQV9ERUZfUEFSTVMsCisgIFRDQV9ERUZfREFUQSwKKyAgX19UQ0FfREVGX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDQV9ERUZfTUFYIChfX1RDQV9ERUZfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2dhY3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2dhY3QuaAppbmRleCA5MDUzOGUxLi4xODE1MmUyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19nYWN0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfZ2FjdC5oCkBAIC0yMyw3ICsyMyw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfQUNUX0dBQ1QgNQogc3RydWN0IHRjX2dhY3QgewotIHRjX2dlbjsKKyAgdGNfZ2VuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfZ2FjdF9wIHsKQEAgLTMxLDE5ICszMSwxOSBAQAogI2RlZmluZSBQR0FDVF9ORVRSQU5EIDEKICNkZWZpbmUgUEdBQ1RfREVURVJNIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1BWF9SQU5EIChQR0FDVF9ERVRFUk0gKyAxICkKLSBfX3UxNiBwdHlwZTsKLSBfX3UxNiBwdmFsOwotIGludCBwYWN0aW9uOworI2RlZmluZSBNQVhfUkFORCAoUEdBQ1RfREVURVJNICsgMSkKKyAgX191MTYgcHR5cGU7CisgIF9fdTE2IHB2YWw7CisgIGludCBwYWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBUQ0FfR0FDVF9VTlNQRUMsCi0gVENBX0dBQ1RfVE0sCisgIFRDQV9HQUNUX1VOU1BFQywKKyAgVENBX0dBQ1RfVE0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9HQUNUX1BBUk1TLAotIFRDQV9HQUNUX1BST0IsCi0gX19UQ0FfR0FDVF9NQVgKKyAgVENBX0dBQ1RfUEFSTVMsCisgIFRDQV9HQUNUX1BST0IsCisgIF9fVENBX0dBQ1RfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0dBQ1RfTUFYIChfX1RDQV9HQUNUX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19pcHQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2lwdC5oCmluZGV4IDAwYjg4YjguLjEwYjg4MDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2lwdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2lwdC5oCkBAIC0yMywxNiArMjMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfWFQgMTAKIGVudW0gewotIFRDQV9JUFRfVU5TUEVDLAotIFRDQV9JUFRfVEFCTEUsCisgIFRDQV9JUFRfVU5TUEVDLAorICBUQ0FfSVBUX1RBQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSVBUX0hPT0ssCi0gVENBX0lQVF9JTkRFWCwKLSBUQ0FfSVBUX0NOVCwKLSBUQ0FfSVBUX1RNLAorICBUQ0FfSVBUX0hPT0ssCisgIFRDQV9JUFRfSU5ERVgsCisgIFRDQV9JUFRfQ05ULAorICBUQ0FfSVBUX1RNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSVBUX1RBUkcsCi0gX19UQ0FfSVBUX01BWAorICBUQ0FfSVBUX1RBUkcsCisgIF9fVENBX0lQVF9NQVgKIH07CiAjZGVmaW5lIFRDQV9JUFRfTUFYIChfX1RDQV9JUFRfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19taXJyZWQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX21pcnJlZC5oCmluZGV4IGQ5ODJiMzIuLjk4M2NlOTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX21pcnJlZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX21pcnJlZC5oCkBAIC0yOCwxNyArMjgsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9JTkdSRVNTX01JUlJPUiA0CiBzdHJ1Y3QgdGNfbWlycmVkIHsKLSB0Y19nZW47Ci0gaW50IGVhY3Rpb247CisgIHRjX2dlbjsKKyAgaW50IGVhY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlmaW5kZXg7CisgIF9fdTMyIGlmaW5kZXg7CiB9OwogZW51bSB7Ci0gVENBX01JUlJFRF9VTlNQRUMsCisgIFRDQV9NSVJSRURfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfTUlSUkVEX1RNLAotIFRDQV9NSVJSRURfUEFSTVMsCi0gX19UQ0FfTUlSUkVEX01BWAorICBUQ0FfTUlSUkVEX1RNLAorICBUQ0FfTUlSUkVEX1BBUk1TLAorICBfX1RDQV9NSVJSRURfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX01JUlJFRF9NQVggKF9fVENBX01JUlJFRF9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfbmF0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19uYXQuaAppbmRleCBmOGRhZGYzLi5lODEyZDU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19uYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19uYXQuaApAQCAtMjMsMjIgKzIzLDIyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfQUNUX05BVCA5CiBlbnVtIHsKLSBUQ0FfTkFUX1VOU1BFQywKLSBUQ0FfTkFUX1BBUk1TLAorICBUQ0FfTkFUX1VOU1BFQywKKyAgVENBX05BVF9QQVJNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX05BVF9UTSwKLSBfX1RDQV9OQVRfTUFYCisgIFRDQV9OQVRfVE0sCisgIF9fVENBX05BVF9NQVgKIH07CiAjZGVmaW5lIFRDQV9OQVRfTUFYIChfX1RDQV9OQVRfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9OQVRfRkxBR19FR1JFU1MgMQogc3RydWN0IHRjX25hdCB7Ci0gdGNfZ2VuOwotIF9fYmUzMiBvbGRfYWRkcjsKKyAgdGNfZ2VuOworICBfX2JlMzIgb2xkX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBuZXdfYWRkcjsKLSBfX2JlMzIgbWFzazsKLSBfX3UzMiBmbGFnczsKKyAgX19iZTMyIG5ld19hZGRyOworICBfX2JlMzIgbWFzazsKKyAgX191MzIgZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfcGVkaXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX3BlZGl0LmgKaW5kZXggYmFlNWZlMC4uNGExNzIxYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfcGVkaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19wZWRpdC5oCkBAIC0yMywzMCArMjMsMzAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfUEVESVQgNwogZW51bSB7Ci0gVENBX1BFRElUX1VOU1BFQywKLSBUQ0FfUEVESVRfVE0sCisgIFRDQV9QRURJVF9VTlNQRUMsCisgIFRDQV9QRURJVF9UTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1BFRElUX1BBUk1TLAotIF9fVENBX1BFRElUX01BWAorICBUQ0FfUEVESVRfUEFSTVMsCisgIF9fVENBX1BFRElUX01BWAogfTsKICNkZWZpbmUgVENBX1BFRElUX01BWCAoX19UQ0FfUEVESVRfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfcGVkaXRfa2V5IHsKLSBfX3UzMiBtYXNrOwotIF9fdTMyIHZhbDsKLSBfX3UzMiBvZmY7CisgIF9fdTMyIG1hc2s7CisgIF9fdTMyIHZhbDsKKyAgX191MzIgb2ZmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhdDsKLSBfX3UzMiBvZmZtYXNrOwotIF9fdTMyIHNoaWZ0OworICBfX3UzMiBhdDsKKyAgX191MzIgb2ZmbWFzazsKKyAgX191MzIgc2hpZnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19wZWRpdF9zZWwgewotIHRjX2dlbjsKLSB1bnNpZ25lZCBjaGFyIG5rZXlzOwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIHRjX2dlbjsKKyAgdW5zaWduZWQgY2hhciBua2V5czsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRjX3BlZGl0X2tleSBrZXlzWzBdOworICBzdHJ1Y3QgdGNfcGVkaXRfa2V5IGtleXNbMF07CiB9OwogI2RlZmluZSB0Y19wZWRpdCB0Y19wZWRpdF9zZWwKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfc2tiZWRpdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfc2tiZWRpdC5oCmluZGV4IDNmZmFjMDUuLjczZmQzYTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX3NrYmVkaXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19za2JlZGl0LmgKQEAgLTI2LDE4ICsyNiwxOCBAQAogI2RlZmluZSBTS0JFRElUX0ZfTUFSSyAweDQKIHN0cnVjdCB0Y19za2JlZGl0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNfZ2VuOworICB0Y19nZW47CiB9OwogZW51bSB7Ci0gVENBX1NLQkVESVRfVU5TUEVDLAorICBUQ0FfU0tCRURJVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9TS0JFRElUX1RNLAotIFRDQV9TS0JFRElUX1BBUk1TLAotIFRDQV9TS0JFRElUX1BSSU9SSVRZLAotIFRDQV9TS0JFRElUX1FVRVVFX01BUFBJTkcsCisgIFRDQV9TS0JFRElUX1RNLAorICBUQ0FfU0tCRURJVF9QQVJNUywKKyAgVENBX1NLQkVESVRfUFJJT1JJVFksCisgIFRDQV9TS0JFRElUX1FVRVVFX01BUFBJTkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9TS0JFRElUX01BUkssCi0gX19UQ0FfU0tCRURJVF9NQVgKKyAgVENBX1NLQkVESVRfTUFSSywKKyAgX19UQ0FfU0tCRURJVF9NQVgKIH07CiAjZGVmaW5lIFRDQV9TS0JFRElUX01BWCAoX19UQ0FfU0tCRURJVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX2NtcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fY21wLmgKaW5kZXggODAzMmUwZi4uZDU0NWRhZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fY21wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fY21wLmgKQEAgLTIyLDIxICsyMiwyMSBAQAogI2luY2x1ZGUgPGxpbnV4L3BrdF9jbHMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNmX2VtX2NtcCB7Ci0gX191MzIgdmFsOwotIF9fdTMyIG1hc2s7Ci0gX191MTYgb2ZmOworICBfX3UzMiB2YWw7CisgIF9fdTMyIG1hc2s7CisgIF9fdTE2IG9mZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhbGlnbjo0OwotIF9fdTggZmxhZ3M6NDsKLSBfX3U4IGxheWVyOjQ7Ci0gX191OCBvcG5kOjQ7CisgIF9fdTggYWxpZ24gOiA0OworICBfX3U4IGZsYWdzIDogNDsKKyAgX191OCBsYXllciA6IDQ7CisgIF9fdTggb3BuZCA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDRl9FTV9BTElHTl9VOCA9IDEsCi0gVENGX0VNX0FMSUdOX1UxNiA9IDIsCisgIFRDRl9FTV9BTElHTl9VOCA9IDEsCisgIFRDRl9FTV9BTElHTl9VMTYgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfRU1fQUxJR05fVTMyID0gNAorICBUQ0ZfRU1fQUxJR05fVTMyID0gNAogfTsKICNkZWZpbmUgVENGX0VNX0NNUF9UUkFOUyAxCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX21ldGEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX21ldGEuaAppbmRleCBlMDdlM2IzLi4xMWExZDcyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9tZXRhLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fbWV0YS5oCkBAIC0yMiwxOSArMjIsMTkgQEAKICNpbmNsdWRlIDxsaW51eC9wa3RfY2xzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX0VNX01FVEFfVU5TUEVDLAotIFRDQV9FTV9NRVRBX0hEUiwKLSBUQ0FfRU1fTUVUQV9MVkFMVUUsCisgIFRDQV9FTV9NRVRBX1VOU1BFQywKKyAgVENBX0VNX01FVEFfSERSLAorICBUQ0FfRU1fTUVUQV9MVkFMVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9FTV9NRVRBX1JWQUxVRSwKLSBfX1RDQV9FTV9NRVRBX01BWAorICBUQ0FfRU1fTUVUQV9SVkFMVUUsCisgIF9fVENBX0VNX01FVEFfTUFYCiB9OwogI2RlZmluZSBUQ0FfRU1fTUVUQV9NQVggKF9fVENBX0VNX01FVEFfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNmX21ldGFfdmFsIHsKLSBfX3UxNiBraW5kOwotIF9fdTggc2hpZnQ7Ci0gX191OCBvcDsKKyAgX191MTYga2luZDsKKyAgX191OCBzaGlmdDsKKyAgX191OCBvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ0ZfTUVUQV9UWVBFX01BU0sgKDB4ZiA8PCAxMikKQEAgLTQzLDgxICs0Myw4MSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX01FVEFfSUQoa2luZCkgKChraW5kKSAmIFRDRl9NRVRBX0lEX01BU0spCiBlbnVtIHsKLSBUQ0ZfTUVUQV9UWVBFX1ZBUiwKLSBUQ0ZfTUVUQV9UWVBFX0lOVCwKKyAgVENGX01FVEFfVFlQRV9WQVIsCisgIFRDRl9NRVRBX1RZUEVfSU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDRl9NRVRBX1RZUEVfTUFYCisgIF9fVENGX01FVEFfVFlQRV9NQVgKIH07CiAjZGVmaW5lIFRDRl9NRVRBX1RZUEVfTUFYIChfX1RDRl9NRVRBX1RZUEVfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9WQUxVRSwKLSBUQ0ZfTUVUQV9JRF9SQU5ET00sCi0gVENGX01FVEFfSURfTE9BREFWR18wLAotIFRDRl9NRVRBX0lEX0xPQURBVkdfMSwKKyAgVENGX01FVEFfSURfVkFMVUUsCisgIFRDRl9NRVRBX0lEX1JBTkRPTSwKKyAgVENGX01FVEFfSURfTE9BREFWR18wLAorICBUQ0ZfTUVUQV9JRF9MT0FEQVZHXzEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX0xPQURBVkdfMiwKLSBUQ0ZfTUVUQV9JRF9ERVYsCi0gVENGX01FVEFfSURfUFJJT1JJVFksCi0gVENGX01FVEFfSURfUFJPVE9DT0wsCisgIFRDRl9NRVRBX0lEX0xPQURBVkdfMiwKKyAgVENGX01FVEFfSURfREVWLAorICBUQ0ZfTUVUQV9JRF9QUklPUklUWSwKKyAgVENGX01FVEFfSURfUFJPVE9DT0wsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1BLVFRZUEUsCi0gVENGX01FVEFfSURfUEtUTEVOLAotIFRDRl9NRVRBX0lEX0RBVEFMRU4sCi0gVENGX01FVEFfSURfTUFDTEVOLAorICBUQ0ZfTUVUQV9JRF9QS1RUWVBFLAorICBUQ0ZfTUVUQV9JRF9QS1RMRU4sCisgIFRDRl9NRVRBX0lEX0RBVEFMRU4sCisgIFRDRl9NRVRBX0lEX01BQ0xFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfTkZNQVJLLAotIFRDRl9NRVRBX0lEX1RDSU5ERVgsCi0gVENGX01FVEFfSURfUlRDTEFTU0lELAotIFRDRl9NRVRBX0lEX1JUSUlGLAorICBUQ0ZfTUVUQV9JRF9ORk1BUkssCisgIFRDRl9NRVRBX0lEX1RDSU5ERVgsCisgIFRDRl9NRVRBX0lEX1JUQ0xBU1NJRCwKKyAgVENGX01FVEFfSURfUlRJSUYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1NLX0ZBTUlMWSwKLSBUQ0ZfTUVUQV9JRF9TS19TVEFURSwKLSBUQ0ZfTUVUQV9JRF9TS19SRVVTRSwKLSBUQ0ZfTUVUQV9JRF9TS19CT1VORF9JRiwKKyAgVENGX01FVEFfSURfU0tfRkFNSUxZLAorICBUQ0ZfTUVUQV9JRF9TS19TVEFURSwKKyAgVENGX01FVEFfSURfU0tfUkVVU0UsCisgIFRDRl9NRVRBX0lEX1NLX0JPVU5EX0lGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9TS19SRUZDTlQsCi0gVENGX01FVEFfSURfU0tfU0hVVERPV04sCi0gVENGX01FVEFfSURfU0tfUFJPVE8sCi0gVENGX01FVEFfSURfU0tfVFlQRSwKKyAgVENGX01FVEFfSURfU0tfUkVGQ05ULAorICBUQ0ZfTUVUQV9JRF9TS19TSFVURE9XTiwKKyAgVENGX01FVEFfSURfU0tfUFJPVE8sCisgIFRDRl9NRVRBX0lEX1NLX1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1NLX1JDVkJVRiwKLSBUQ0ZfTUVUQV9JRF9TS19STUVNX0FMTE9DLAotIFRDRl9NRVRBX0lEX1NLX1dNRU1fQUxMT0MsCi0gVENGX01FVEFfSURfU0tfT01FTV9BTExPQywKKyAgVENGX01FVEFfSURfU0tfUkNWQlVGLAorICBUQ0ZfTUVUQV9JRF9TS19STUVNX0FMTE9DLAorICBUQ0ZfTUVUQV9JRF9TS19XTUVNX0FMTE9DLAorICBUQ0ZfTUVUQV9JRF9TS19PTUVNX0FMTE9DLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9TS19XTUVNX1FVRVVFRCwKLSBUQ0ZfTUVUQV9JRF9TS19SQ1ZfUUxFTiwKLSBUQ0ZfTUVUQV9JRF9TS19TTkRfUUxFTiwKLSBUQ0ZfTUVUQV9JRF9TS19FUlJfUUxFTiwKKyAgVENGX01FVEFfSURfU0tfV01FTV9RVUVVRUQsCisgIFRDRl9NRVRBX0lEX1NLX1JDVl9RTEVOLAorICBUQ0ZfTUVUQV9JRF9TS19TTkRfUUxFTiwKKyAgVENGX01FVEFfSURfU0tfRVJSX1FMRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1NLX0ZPUldBUkRfQUxMT0NTLAotIFRDRl9NRVRBX0lEX1NLX1NOREJVRiwKLSBUQ0ZfTUVUQV9JRF9TS19BTExPQ1MsCi0gX19UQ0ZfTUVUQV9JRF9TS19ST1VURV9DQVBTLAorICBUQ0ZfTUVUQV9JRF9TS19GT1JXQVJEX0FMTE9DUywKKyAgVENGX01FVEFfSURfU0tfU05EQlVGLAorICBUQ0ZfTUVUQV9JRF9TS19BTExPQ1MsCisgIF9fVENGX01FVEFfSURfU0tfUk9VVEVfQ0FQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfSEFTSCwKLSBUQ0ZfTUVUQV9JRF9TS19MSU5HRVJUSU1FLAotIFRDRl9NRVRBX0lEX1NLX0FDS19CQUNLTE9HLAotIFRDRl9NRVRBX0lEX1NLX01BWF9BQ0tfQkFDS0xPRywKKyAgVENGX01FVEFfSURfU0tfSEFTSCwKKyAgVENGX01FVEFfSURfU0tfTElOR0VSVElNRSwKKyAgVENGX01FVEFfSURfU0tfQUNLX0JBQ0tMT0csCisgIFRDRl9NRVRBX0lEX1NLX01BWF9BQ0tfQkFDS0xPRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfUFJJTywKLSBUQ0ZfTUVUQV9JRF9TS19SQ1ZMT1dBVCwKLSBUQ0ZfTUVUQV9JRF9TS19SQ1ZUSU1FTywKLSBUQ0ZfTUVUQV9JRF9TS19TTkRUSU1FTywKKyAgVENGX01FVEFfSURfU0tfUFJJTywKKyAgVENGX01FVEFfSURfU0tfUkNWTE9XQVQsCisgIFRDRl9NRVRBX0lEX1NLX1JDVlRJTUVPLAorICBUQ0ZfTUVUQV9JRF9TS19TTkRUSU1FTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfU0VORE1TR19PRkYsCi0gVENGX01FVEFfSURfU0tfV1JJVEVfUEVORElORywKLSBUQ0ZfTUVUQV9JRF9WTEFOX1RBRywKLSBUQ0ZfTUVUQV9JRF9SWEhBU0gsCisgIFRDRl9NRVRBX0lEX1NLX1NFTkRNU0dfT0ZGLAorICBUQ0ZfTUVUQV9JRF9TS19XUklURV9QRU5ESU5HLAorICBUQ0ZfTUVUQV9JRF9WTEFOX1RBRywKKyAgVENGX01FVEFfSURfUlhIQVNILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDRl9NRVRBX0lEX01BWAorICBfX1RDRl9NRVRBX0lEX01BWAogfTsKICNkZWZpbmUgVENGX01FVEFfSURfTUFYIChfX1RDRl9NRVRBX0lEX01BWCAtIDEpCiBzdHJ1Y3QgdGNmX21ldGFfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRjZl9tZXRhX3ZhbCBsZWZ0OwotIHN0cnVjdCB0Y2ZfbWV0YV92YWwgcmlnaHQ7CisgIHN0cnVjdCB0Y2ZfbWV0YV92YWwgbGVmdDsKKyAgc3RydWN0IHRjZl9tZXRhX3ZhbCByaWdodDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9uYnl0ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fbmJ5dGUuaAppbmRleCBlYTM3ZTY3Li5jYzI2YzFkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9uYnl0ZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX25ieXRlLmgKQEAgLTIyLDkgKzIyLDkgQEAKICNpbmNsdWRlIDxsaW51eC9wa3RfY2xzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjZl9lbV9uYnl0ZSB7Ci0gX191MTYgb2ZmOwotIF9fdTE2IGxlbjoxMjsKLSBfX3U4IGxheWVyOjQ7CisgIF9fdTE2IG9mZjsKKyAgX191MTYgbGVuIDogMTI7CisgIF9fdTggbGF5ZXIgOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX3RleHQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX3RleHQuaAppbmRleCAyMDA1NzQ2Li43ZjVhNDBlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV90ZXh0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fdGV4dC5oCkBAIC0yMywxNCArMjMsMTQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX0VNX1RFWFRfQUxHT1NJWiAxNgogc3RydWN0IHRjZl9lbV90ZXh0IHsKLSBjaGFyIGFsZ29bVENfRU1fVEVYVF9BTEdPU0laXTsKLSBfX3UxNiBmcm9tX29mZnNldDsKKyAgY2hhciBhbGdvW1RDX0VNX1RFWFRfQUxHT1NJWl07CisgIF9fdTE2IGZyb21fb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0b19vZmZzZXQ7Ci0gX191MTYgcGF0dGVybl9sZW47Ci0gX191OCBmcm9tX2xheWVyOjQ7Ci0gX191OCB0b19sYXllcjo0OworICBfX3UxNiB0b19vZmZzZXQ7CisgIF9fdTE2IHBhdHRlcm5fbGVuOworICBfX3U4IGZyb21fbGF5ZXIgOiA0OworICBfX3U4IHRvX2xheWVyIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYWQ7CisgIF9fdTggcGFkOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNwLmgKaW5kZXggYTdiNWM1ZS4uMzM0N2JjMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjcC5oCkBAIC0yMywxODYgKzIzLDE2NiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9zb2NrZXQuaD4KIHN0cnVjdCB0Y3BoZHIgewotIF9fYmUxNiBzb3VyY2U7Ci0gX19iZTE2IGRlc3Q7CisgIF9fYmUxNiBzb3VyY2U7CisgIF9fYmUxNiBkZXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2VxOwotIF9fYmUzMiBhY2tfc2VxOworICBfX2JlMzIgc2VxOworICBfX2JlMzIgYWNrX3NlcTsKICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3UxNiByZXMxOjQsCisgIF9fdTE2IHJlczEgOiA0LCBkb2ZmIDogNCwgZmluIDogMSwgc3luIDogMSwgcnN0IDogMSwgcHNoIDogMSwgYWNrIDogMSwgdXJnIDogMSwgZWNlIDogMSwgY3dyIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZG9mZjo0LAotIGZpbjoxLAotIHN5bjoxLAotIHJzdDoxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBwc2g6MSwKLSBhY2s6MSwKLSB1cmc6MSwKLSBlY2U6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY3dyOjE7CiAjZWxpZiBkZWZpbmVkKF9fQklHX0VORElBTl9CSVRGSUVMRCkKLSBfX3UxNiBkb2ZmOjQsCi0gcmVzMTo0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjd3I6MSwKLSBlY2U6MSwKLSB1cmc6MSwKLSBhY2s6MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcHNoOjEsCi0gcnN0OjEsCi0gc3luOjEsCi0gZmluOjE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBkb2ZmIDogNCwgcmVzMSA6IDQsIGN3ciA6IDEsIGVjZSA6IDEsIHVyZyA6IDEsIGFjayA6IDEsIHBzaCA6IDEsIHJzdCA6IDEsIHN5biA6IDEsIGZpbiA6IDE7CiAjZWxzZQogI2Vycm9yICJBZGp1c3QgeW91ciA8YXNtL2J5dGVvcmRlci5oPiBkZWZpbmVzIgotI2VuZGlmCi0gX19iZTE2IHdpbmRvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zdW0xNiBjaGVjazsKLSBfX2JlMTYgdXJnX3B0cjsKKyNlbmRpZgorICBfX2JlMTYgd2luZG93OworICBfX3N1bTE2IGNoZWNrOworICBfX2JlMTYgdXJnX3B0cjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gdGNwX3dvcmRfaGRyIHsKKyAgc3RydWN0IHRjcGhkciBoZHI7CisgIF9fYmUzMiB3b3Jkc1s1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRjcGhkciBoZHI7Ci0gX19iZTMyIHdvcmRzWzVdOwogfTsKLSNkZWZpbmUgdGNwX2ZsYWdfd29yZCh0cCkgKCAoKHVuaW9uIHRjcF93b3JkX2hkciAqKSh0cCkpLT53b3JkcyBbM10pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSB0Y3BfZmxhZ193b3JkKHRwKSAoKCh1bmlvbiB0Y3Bfd29yZF9oZHIgKikgKHRwKSktPndvcmRzWzNdKQogZW51bSB7Ci0gVENQX0ZMQUdfQ1dSID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwODAwMDAwKSwKLSBUQ1BfRkxBR19FQ0UgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDA0MDAwMDApLAotIFRDUF9GTEFHX1VSRyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDIwMDAwMCksCisgIFRDUF9GTEFHX0NXUiA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDgwMDAwMCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9GTEFHX0FDSyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDEwMDAwMCksCi0gVENQX0ZMQUdfUFNIID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDgwMDAwKSwKLSBUQ1BfRkxBR19SU1QgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDAwNDAwMDApLAotIFRDUF9GTEFHX1NZTiA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDAyMDAwMCksCisgIFRDUF9GTEFHX0VDRSA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDQwMDAwMCksCisgIFRDUF9GTEFHX1VSRyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDIwMDAwMCksCisgIFRDUF9GTEFHX0FDSyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDEwMDAwMCksCisgIFRDUF9GTEFHX1BTSCA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDA4MDAwMCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9GTEFHX0ZJTiA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDAxMDAwMCksCi0gVENQX1JFU0VSVkVEX0JJVFMgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MEYwMDAwMDApLAotIFRDUF9EQVRBX09GRlNFVCA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHhGMDAwMDAwMCkKKyAgVENQX0ZMQUdfUlNUID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDQwMDAwKSwKKyAgVENQX0ZMQUdfU1lOID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDIwMDAwKSwKKyAgVENQX0ZMQUdfRklOID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDEwMDAwKSwKKyAgVENQX1JFU0VSVkVEX0JJVFMgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MEYwMDAwMDApLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVENQX0RBVEFfT0ZGU0VUID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweEYwMDAwMDAwKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9NU1NfREVGQVVMVCA1MzZVCiAjZGVmaW5lIFRDUF9NU1NfREVTSVJFRCAxMjIwVQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX05PREVMQVkgMQogI2RlZmluZSBUQ1BfTUFYU0VHIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9DT1JLIDMKICNkZWZpbmUgVENQX0tFRVBJRExFIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9LRUVQSU5UVkwgNQogI2RlZmluZSBUQ1BfS0VFUENOVCA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfU1lOQ05UIDcKICNkZWZpbmUgVENQX0xJTkdFUjIgOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX0RFRkVSX0FDQ0VQVCA5CiAjZGVmaW5lIFRDUF9XSU5ET1dfQ0xBTVAgMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9JTkZPIDExCiAjZGVmaW5lIFRDUF9RVUlDS0FDSyAxMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX0NPTkdFU1RJT04gMTMKICNkZWZpbmUgVENQX01ENVNJRyAxNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX1RISU5fTElORUFSX1RJTUVPVVRTIDE2CiAjZGVmaW5lIFRDUF9USElOX0RVUEFDSyAxNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX1VTRVJfVElNRU9VVCAxOAogI2RlZmluZSBUQ1BfUkVQQUlSIDE5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfUkVQQUlSX1FVRVVFIDIwCiAjZGVmaW5lIFRDUF9RVUVVRV9TRVEgMjEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9SRVBBSVJfT1BUSU9OUyAyMgogI2RlZmluZSBUQ1BfRkFTVE9QRU4gMjMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9USU1FU1RBTVAgMjQKICNkZWZpbmUgVENQX05PVFNFTlRfTE9XQVQgMjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNwX3JlcGFpcl9vcHQgewotIF9fdTMyIG9wdF9jb2RlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvcHRfdmFsOworICBfX3UzMiBvcHRfY29kZTsKKyAgX191MzIgb3B0X3ZhbDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENQX05PX1FVRVVFLAorICBUQ1BfTk9fUVVFVUUsCisgIFRDUF9SRUNWX1FVRVVFLAorICBUQ1BfU0VORF9RVUVVRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX1JFQ1ZfUVVFVUUsCi0gVENQX1NFTkRfUVVFVUUsCi0gVENQX1FVRVVFU19OUiwKKyAgVENQX1FVRVVFU19OUiwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BJX09QVF9USU1FU1RBTVBTIDEKICNkZWZpbmUgVENQSV9PUFRfU0FDSyAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BJX09QVF9XU0NBTEUgNAogI2RlZmluZSBUQ1BJX09QVF9FQ04gOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQSV9PUFRfRUNOX1NFRU4gMTYKICNkZWZpbmUgVENQSV9PUFRfU1lOX0RBVEEgMzIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHRjcF9jYV9zdGF0ZSB7Ci0gVENQX0NBX09wZW4gPSAwLAorICBUQ1BfQ0FfT3BlbiA9IDAsCisjZGVmaW5lIFRDUEZfQ0FfT3BlbiAoMSA8PCBUQ1BfQ0FfT3BlbikKKyAgVENQX0NBX0Rpc29yZGVyID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRDUEZfQ0FfT3BlbiAoMTw8VENQX0NBX09wZW4pCi0gVENQX0NBX0Rpc29yZGVyID0gMSwKLSNkZWZpbmUgVENQRl9DQV9EaXNvcmRlciAoMTw8VENQX0NBX0Rpc29yZGVyKQotIFRDUF9DQV9DV1IgPSAyLAorI2RlZmluZSBUQ1BGX0NBX0Rpc29yZGVyICgxIDw8IFRDUF9DQV9EaXNvcmRlcikKKyAgVENQX0NBX0NXUiA9IDIsCisjZGVmaW5lIFRDUEZfQ0FfQ1dSICgxIDw8IFRDUF9DQV9DV1IpCisgIFRDUF9DQV9SZWNvdmVyeSA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUQ1BGX0NBX0NXUiAoMTw8VENQX0NBX0NXUikKLSBUQ1BfQ0FfUmVjb3ZlcnkgPSAzLAotI2RlZmluZSBUQ1BGX0NBX1JlY292ZXJ5ICgxPDxUQ1BfQ0FfUmVjb3ZlcnkpCi0gVENQX0NBX0xvc3MgPSA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUQ1BGX0NBX0xvc3MgKDE8PFRDUF9DQV9Mb3NzKQorI2RlZmluZSBUQ1BGX0NBX1JlY292ZXJ5ICgxIDw8IFRDUF9DQV9SZWNvdmVyeSkKKyAgVENQX0NBX0xvc3MgPSA0CisjZGVmaW5lIFRDUEZfQ0FfTG9zcyAoMSA8PCBUQ1BfQ0FfTG9zcykKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjcF9pbmZvIHsKLSBfX3U4IHRjcGlfc3RhdGU7CisgIF9fdTggdGNwaV9zdGF0ZTsKKyAgX191OCB0Y3BpX2NhX3N0YXRlOworICBfX3U4IHRjcGlfcmV0cmFuc21pdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGNwaV9jYV9zdGF0ZTsKLSBfX3U4IHRjcGlfcmV0cmFuc21pdHM7Ci0gX191OCB0Y3BpX3Byb2JlczsKLSBfX3U4IHRjcGlfYmFja29mZjsKKyAgX191OCB0Y3BpX3Byb2JlczsKKyAgX191OCB0Y3BpX2JhY2tvZmY7CisgIF9fdTggdGNwaV9vcHRpb25zOworICBfX3U4IHRjcGlfc25kX3dzY2FsZSA6IDQsIHRjcGlfcmN2X3dzY2FsZSA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGNwaV9vcHRpb25zOwotIF9fdTggdGNwaV9zbmRfd3NjYWxlIDogNCwgdGNwaV9yY3Zfd3NjYWxlIDogNDsKLSBfX3UzMiB0Y3BpX3J0bzsKLSBfX3UzMiB0Y3BpX2F0bzsKKyAgX191MzIgdGNwaV9ydG87CisgIF9fdTMyIHRjcGlfYXRvOworICBfX3UzMiB0Y3BpX3NuZF9tc3M7CisgIF9fdTMyIHRjcGlfcmN2X21zczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwaV9zbmRfbXNzOwotIF9fdTMyIHRjcGlfcmN2X21zczsKLSBfX3UzMiB0Y3BpX3VuYWNrZWQ7Ci0gX191MzIgdGNwaV9zYWNrZWQ7CisgIF9fdTMyIHRjcGlfdW5hY2tlZDsKKyAgX191MzIgdGNwaV9zYWNrZWQ7CisgIF9fdTMyIHRjcGlfbG9zdDsKKyAgX191MzIgdGNwaV9yZXRyYW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0Y3BpX2xvc3Q7Ci0gX191MzIgdGNwaV9yZXRyYW5zOwotIF9fdTMyIHRjcGlfZmFja2V0czsKLSBfX3UzMiB0Y3BpX2xhc3RfZGF0YV9zZW50OworICBfX3UzMiB0Y3BpX2ZhY2tldHM7CisgIF9fdTMyIHRjcGlfbGFzdF9kYXRhX3NlbnQ7CisgIF9fdTMyIHRjcGlfbGFzdF9hY2tfc2VudDsKKyAgX191MzIgdGNwaV9sYXN0X2RhdGFfcmVjdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwaV9sYXN0X2Fja19zZW50OwotIF9fdTMyIHRjcGlfbGFzdF9kYXRhX3JlY3Y7Ci0gX191MzIgdGNwaV9sYXN0X2Fja19yZWN2OwotIF9fdTMyIHRjcGlfcG10dTsKKyAgX191MzIgdGNwaV9sYXN0X2Fja19yZWN2OworICBfX3UzMiB0Y3BpX3BtdHU7CisgIF9fdTMyIHRjcGlfcmN2X3NzdGhyZXNoOworICBfX3UzMiB0Y3BpX3J0dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwaV9yY3Zfc3N0aHJlc2g7Ci0gX191MzIgdGNwaV9ydHQ7Ci0gX191MzIgdGNwaV9ydHR2YXI7Ci0gX191MzIgdGNwaV9zbmRfc3N0aHJlc2g7CisgIF9fdTMyIHRjcGlfcnR0dmFyOworICBfX3UzMiB0Y3BpX3NuZF9zc3RocmVzaDsKKyAgX191MzIgdGNwaV9zbmRfY3duZDsKKyAgX191MzIgdGNwaV9hZHZtc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRjcGlfc25kX2N3bmQ7Ci0gX191MzIgdGNwaV9hZHZtc3M7Ci0gX191MzIgdGNwaV9yZW9yZGVyaW5nOwotIF9fdTMyIHRjcGlfcmN2X3J0dDsKKyAgX191MzIgdGNwaV9yZW9yZGVyaW5nOworICBfX3UzMiB0Y3BpX3Jjdl9ydHQ7CisgIF9fdTMyIHRjcGlfcmN2X3NwYWNlOworICBfX3UzMiB0Y3BpX3RvdGFsX3JldHJhbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRjcGlfcmN2X3NwYWNlOwotIF9fdTMyIHRjcGlfdG90YWxfcmV0cmFuczsKKyAgX191NjQgdGNwaV9wYWNpbmdfcmF0ZTsKKyAgX191NjQgdGNwaV9tYXhfcGFjaW5nX3JhdGU7CiB9OwogI2RlZmluZSBUQ1BfTUQ1U0lHX01BWEtFWUxFTiA4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y3BfbWQ1c2lnIHsKLSBzdHJ1Y3QgX19rZXJuZWxfc29ja2FkZHJfc3RvcmFnZSB0Y3BtX2FkZHI7Ci0gX191MTYgX190Y3BtX3BhZDE7Ci0gX191MTYgdGNwbV9rZXlsZW47CisgIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIHRjcG1fYWRkcjsKKyAgX191MTYgX190Y3BtX3BhZDE7CisgIF9fdTE2IHRjcG1fa2V5bGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX3RjcG1fcGFkMjsKLSBfX3U4IHRjcG1fa2V5W1RDUF9NRDVTSUdfTUFYS0VZTEVOXTsKKyAgX191MzIgX190Y3BtX3BhZDI7CisgIF9fdTggdGNwbV9rZXlbVENQX01ENVNJR19NQVhLRVlMRU5dOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNwX21ldHJpY3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNwX21ldHJpY3MuaAppbmRleCA0NDllYzk1Li40YmMzZTQ4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjcF9tZXRyaWNzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3BfbWV0cmljcy5oCkBAIC0yMyw0NCArMjMsNDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9NRVRSSUNTX0dFTkxfVkVSU0lPTiAweDEKIGVudW0gdGNwX21ldHJpY19pbmRleCB7Ci0gVENQX01FVFJJQ19SVFQsCi0gVENQX01FVFJJQ19SVFRWQVIsCisgIFRDUF9NRVRSSUNfUlRULAorICBUQ1BfTUVUUklDX1JUVFZBUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX01FVFJJQ19TU1RIUkVTSCwKLSBUQ1BfTUVUUklDX0NXTkQsCi0gVENQX01FVFJJQ19SRU9SREVSSU5HLAotIF9fVENQX01FVFJJQ19NQVgsCisgIFRDUF9NRVRSSUNfU1NUSFJFU0gsCisgIFRDUF9NRVRSSUNfQ1dORCwKKyAgVENQX01FVFJJQ19SRU9SREVSSU5HLAorICBUQ1BfTUVUUklDX1JUVF9VUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFRDUF9NRVRSSUNfUlRUVkFSX1VTLAorICBfX1RDUF9NRVRSSUNfTUFYLAogfTsKICNkZWZpbmUgVENQX01FVFJJQ19NQVggKF9fVENQX01FVFJJQ19NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDUF9NRVRSSUNTX0FUVFJfVU5TUEVDLAorICBUQ1BfTUVUUklDU19BVFRSX1VOU1BFQywKKyAgVENQX01FVFJJQ1NfQVRUUl9BRERSX0lQVjQsCisgIFRDUF9NRVRSSUNTX0FUVFJfQUREUl9JUFY2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUVUUklDU19BVFRSX0FERFJfSVBWNCwKLSBUQ1BfTUVUUklDU19BVFRSX0FERFJfSVBWNiwKLSBUQ1BfTUVUUklDU19BVFRSX0FHRSwKLSBUQ1BfTUVUUklDU19BVFRSX1RXX1RTVkFMLAorICBUQ1BfTUVUUklDU19BVFRSX0FHRSwKKyAgVENQX01FVFJJQ1NfQVRUUl9UV19UU1ZBTCwKKyAgVENQX01FVFJJQ1NfQVRUUl9UV19UU19TVEFNUCwKKyAgVENQX01FVFJJQ1NfQVRUUl9WQUxTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUVUUklDU19BVFRSX1RXX1RTX1NUQU1QLAotIFRDUF9NRVRSSUNTX0FUVFJfVkFMUywKLSBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX01TUywKLSBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX1NZTl9EUk9QUywKKyAgVENQX01FVFJJQ1NfQVRUUl9GT1BFTl9NU1MsCisgIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fU1lOX0RST1BTLAorICBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX1NZTl9EUk9QX1RTLAorICBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX0NPT0tJRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX01FVFJJQ1NfQVRUUl9GT1BFTl9TWU5fRFJPUF9UUywKLSBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX0NPT0tJRSwKLSBUQ1BfTUVUUklDU19BVFRSX1NBRERSX0lQVjQsCi0gVENQX01FVFJJQ1NfQVRUUl9TQUREUl9JUFY2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDUF9NRVRSSUNTX0FUVFJfTUFYLAorICBUQ1BfTUVUUklDU19BVFRSX1NBRERSX0lQVjQsCisgIFRDUF9NRVRSSUNTX0FUVFJfU0FERFJfSVBWNiwKKyAgX19UQ1BfTUVUUklDU19BVFRSX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfTUVUUklDU19BVFRSX01BWCAoX19UQ1BfTUVUUklDU19BVFRSX01BWCAtIDEpCiBlbnVtIHsKKyAgVENQX01FVFJJQ1NfQ01EX1VOU1BFQywKKyAgVENQX01FVFJJQ1NfQ01EX0dFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX01FVFJJQ1NfQ01EX1VOU1BFQywKLSBUQ1BfTUVUUklDU19DTURfR0VULAotIFRDUF9NRVRSSUNTX0NNRF9ERUwsCi0gX19UQ1BfTUVUUklDU19DTURfTUFYLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVENQX01FVFJJQ1NfQ01EX0RFTCwKKyAgX19UQ1BfTUVUUklDU19DTURfTUFYLAogfTsKICNkZWZpbmUgVENQX01FVFJJQ1NfQ01EX01BWCAoX19UQ1BfTUVUUklDU19DTURfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGVsZXBob255LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RlbGVwaG9ueS5oCmluZGV4IGY0YzZkNjMuLjc0YTQ5MjIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGVsZXBob255LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZWxlcGhvbnkuaApAQCAtMzQsMTU3ICszNCwxNTUgQEAKICNkZWZpbmUgUVRJX1BIT05FSkFDS19QQ0kgNTAwCiAjZGVmaW5lIFFUSV9QSE9ORUNBUkQgNjAwCiB0eXBlZGVmIGVudW0gewotIHZlbmRvciA9IDAsCisgIHZlbmRvciA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRldmljZSwKLSBwb3J0LAotIGNvZGVjLAotIGRzcAorICBkZXZpY2UsCisgIHBvcnQsCisgIGNvZGVjLAorICBkc3AKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHBob25lX2NhcDsKIHN0cnVjdCBwaG9uZV9jYXBhYmlsaXR5IHsKLSBjaGFyIGRlc2NbODBdOwotIHBob25lX2NhcCBjYXB0eXBlOworICBjaGFyIGRlc2NbODBdOworICBwaG9uZV9jYXAgY2FwdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNhcDsKLSBpbnQgaGFuZGxlOworICBpbnQgY2FwOworICBpbnQgaGFuZGxlOwogfTsKIHR5cGVkZWYgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBvdHMgPSAwLAotIHBzdG4sCi0gaGFuZHNldCwKLSBzcGVha2VyCisgIHBvdHMgPSAwLAorICBwc3RuLAorICBoYW5kc2V0LAorICBzcGVha2VyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBwaG9uZV9wb3J0czsKLSNkZWZpbmUgUEhPTkVfQ0FQQUJJTElUSUVTIF9JTyAoJ3EnLCAweDgwKQotI2RlZmluZSBQSE9ORV9DQVBBQklMSVRJRVNfTElTVCBfSU9SICgncScsIDB4ODEsIHN0cnVjdCBwaG9uZV9jYXBhYmlsaXR5ICopCi0jZGVmaW5lIFBIT05FX0NBUEFCSUxJVElFU19DSEVDSyBfSU9XICgncScsIDB4ODIsIHN0cnVjdCBwaG9uZV9jYXBhYmlsaXR5ICopCisjZGVmaW5lIFBIT05FX0NBUEFCSUxJVElFUyBfSU8oJ3EnLCAweDgwKQorI2RlZmluZSBQSE9ORV9DQVBBQklMSVRJRVNfTElTVCBfSU9SKCdxJywgMHg4MSwgc3RydWN0IHBob25lX2NhcGFiaWxpdHkgKikKKyNkZWZpbmUgUEhPTkVfQ0FQQUJJTElUSUVTX0NIRUNLIF9JT1coJ3EnLCAweDgyLCBzdHJ1Y3QgcGhvbmVfY2FwYWJpbGl0eSAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBjaGFyIG1vbnRoWzNdOwotIGNoYXIgZGF5WzNdOwotIGNoYXIgaG91clszXTsKKyAgY2hhciBtb250aFszXTsKKyAgY2hhciBkYXlbM107CisgIGNoYXIgaG91clszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtaW5bM107Ci0gaW50IG51bWxlbjsKLSBjaGFyIG51bWJlclsxMV07Ci0gaW50IG5hbWVsZW47CisgIGNoYXIgbWluWzNdOworICBpbnQgbnVtbGVuOworICBjaGFyIG51bWJlclsxMV07CisgIGludCBuYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbODBdOworICBjaGFyIG5hbWVbODBdOwogfSBQSE9ORV9DSUQ7Ci0jZGVmaW5lIFBIT05FX1JJTkcgX0lPICgncScsIDB4ODMpCi0jZGVmaW5lIFBIT05FX0hPT0tTVEFURSBfSU8gKCdxJywgMHg4NCkKKyNkZWZpbmUgUEhPTkVfUklORyBfSU8oJ3EnLCAweDgzKQorI2RlZmluZSBQSE9ORV9IT09LU1RBVEUgX0lPKCdxJywgMHg4NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX01BWFJJTkdTIF9JT1cgKCdxJywgMHg4NSwgY2hhcikKLSNkZWZpbmUgUEhPTkVfUklOR19DQURFTkNFIF9JT1cgKCdxJywgMHg4Niwgc2hvcnQpCi0jZGVmaW5lIE9MRF9QSE9ORV9SSU5HX1NUQVJUIF9JTyAoJ3EnLCAweDg3KQotI2RlZmluZSBQSE9ORV9SSU5HX1NUQVJUIF9JT1cgKCdxJywgMHg4NywgUEhPTkVfQ0lEICopCisjZGVmaW5lIFBIT05FX01BWFJJTkdTIF9JT1coJ3EnLCAweDg1LCBjaGFyKQorI2RlZmluZSBQSE9ORV9SSU5HX0NBREVOQ0UgX0lPVygncScsIDB4ODYsIHNob3J0KQorI2RlZmluZSBPTERfUEhPTkVfUklOR19TVEFSVCBfSU8oJ3EnLCAweDg3KQorI2RlZmluZSBQSE9ORV9SSU5HX1NUQVJUIF9JT1coJ3EnLCAweDg3LCBQSE9ORV9DSUQgKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX1JJTkdfU1RPUCBfSU8gKCdxJywgMHg4OCkKKyNkZWZpbmUgUEhPTkVfUklOR19TVE9QIF9JTygncScsIDB4ODgpCiAjZGVmaW5lIFVTQV9SSU5HX0NBREVOQ0UgMHhDMEMwCi0jZGVmaW5lIFBIT05FX1JFQ19DT0RFQyBfSU9XICgncScsIDB4ODksIGludCkKLSNkZWZpbmUgUEhPTkVfUkVDX1NUQVJUIF9JTyAoJ3EnLCAweDhBKQorI2RlZmluZSBQSE9ORV9SRUNfQ09ERUMgX0lPVygncScsIDB4ODksIGludCkKKyNkZWZpbmUgUEhPTkVfUkVDX1NUQVJUIF9JTygncScsIDB4OEEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9SRUNfU1RPUCBfSU8gKCdxJywgMHg4QikKLSNkZWZpbmUgUEhPTkVfUkVDX0RFUFRIIF9JT1cgKCdxJywgMHg4QywgaW50KQotI2RlZmluZSBQSE9ORV9GUkFNRSBfSU9XICgncScsIDB4OEQsIGludCkKLSNkZWZpbmUgUEhPTkVfUkVDX1ZPTFVNRSBfSU9XICgncScsIDB4OEUsIGludCkKKyNkZWZpbmUgUEhPTkVfUkVDX1NUT1AgX0lPKCdxJywgMHg4QikKKyNkZWZpbmUgUEhPTkVfUkVDX0RFUFRIIF9JT1coJ3EnLCAweDhDLCBpbnQpCisjZGVmaW5lIFBIT05FX0ZSQU1FIF9JT1coJ3EnLCAweDhELCBpbnQpCisjZGVmaW5lIFBIT05FX1JFQ19WT0xVTUUgX0lPVygncScsIDB4OEUsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX1JFQ19WT0xVTUVfTElORUFSIF9JT1cgKCdxJywgMHhEQiwgaW50KQotI2RlZmluZSBQSE9ORV9SRUNfTEVWRUwgX0lPICgncScsIDB4OEYpCi0jZGVmaW5lIFBIT05FX1BMQVlfQ09ERUMgX0lPVyAoJ3EnLCAweDkwLCBpbnQpCi0jZGVmaW5lIFBIT05FX1BMQVlfU1RBUlQgX0lPICgncScsIDB4OTEpCisjZGVmaW5lIFBIT05FX1JFQ19WT0xVTUVfTElORUFSIF9JT1coJ3EnLCAweERCLCBpbnQpCisjZGVmaW5lIFBIT05FX1JFQ19MRVZFTCBfSU8oJ3EnLCAweDhGKQorI2RlZmluZSBQSE9ORV9QTEFZX0NPREVDIF9JT1coJ3EnLCAweDkwLCBpbnQpCisjZGVmaW5lIFBIT05FX1BMQVlfU1RBUlQgX0lPKCdxJywgMHg5MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX1BMQVlfU1RPUCBfSU8gKCdxJywgMHg5MikKLSNkZWZpbmUgUEhPTkVfUExBWV9ERVBUSCBfSU9XICgncScsIDB4OTMsIGludCkKLSNkZWZpbmUgUEhPTkVfUExBWV9WT0xVTUUgX0lPVyAoJ3EnLCAweDk0LCBpbnQpCi0jZGVmaW5lIFBIT05FX1BMQVlfVk9MVU1FX0xJTkVBUiBfSU9XICgncScsIDB4REMsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9TVE9QIF9JTygncScsIDB4OTIpCisjZGVmaW5lIFBIT05FX1BMQVlfREVQVEggX0lPVygncScsIDB4OTMsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9WT0xVTUUgX0lPVygncScsIDB4OTQsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9WT0xVTUVfTElORUFSIF9JT1coJ3EnLCAweERDLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9QTEFZX0xFVkVMIF9JTyAoJ3EnLCAweDk1KQotI2RlZmluZSBQSE9ORV9EVE1GX1JFQURZIF9JT1IgKCdxJywgMHg5NiwgaW50KQotI2RlZmluZSBQSE9ORV9HRVRfRFRNRiBfSU9SICgncScsIDB4OTcsIGludCkKLSNkZWZpbmUgUEhPTkVfR0VUX0RUTUZfQVNDSUkgX0lPUiAoJ3EnLCAweDk4LCBpbnQpCisjZGVmaW5lIFBIT05FX1BMQVlfTEVWRUwgX0lPKCdxJywgMHg5NSkKKyNkZWZpbmUgUEhPTkVfRFRNRl9SRUFEWSBfSU9SKCdxJywgMHg5NiwgaW50KQorI2RlZmluZSBQSE9ORV9HRVRfRFRNRiBfSU9SKCdxJywgMHg5NywgaW50KQorI2RlZmluZSBQSE9ORV9HRVRfRFRNRl9BU0NJSSBfSU9SKCdxJywgMHg5OCwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfRFRNRl9PT0IgX0lPVyAoJ3EnLCAweDk5LCBpbnQpCi0jZGVmaW5lIFBIT05FX0VYQ0VQVElPTiBfSU9SICgncScsIDB4OUEsIGludCkKLSNkZWZpbmUgUEhPTkVfUExBWV9UT05FIF9JT1cgKCdxJywgMHg5QiwgY2hhcikKLSNkZWZpbmUgUEhPTkVfU0VUX1RPTkVfT05fVElNRSBfSU9XICgncScsIDB4OUMsIGludCkKKyNkZWZpbmUgUEhPTkVfRFRNRl9PT0IgX0lPVygncScsIDB4OTksIGludCkKKyNkZWZpbmUgUEhPTkVfRVhDRVBUSU9OIF9JT1IoJ3EnLCAweDlBLCBpbnQpCisjZGVmaW5lIFBIT05FX1BMQVlfVE9ORSBfSU9XKCdxJywgMHg5QiwgY2hhcikKKyNkZWZpbmUgUEhPTkVfU0VUX1RPTkVfT05fVElNRSBfSU9XKCdxJywgMHg5QywgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfU0VUX1RPTkVfT0ZGX1RJTUUgX0lPVyAoJ3EnLCAweDlELCBpbnQpCi0jZGVmaW5lIFBIT05FX0dFVF9UT05FX09OX1RJTUUgX0lPICgncScsIDB4OUUpCi0jZGVmaW5lIFBIT05FX0dFVF9UT05FX09GRl9USU1FIF9JTyAoJ3EnLCAweDlGKQotI2RlZmluZSBQSE9ORV9HRVRfVE9ORV9TVEFURSBfSU8gKCdxJywgMHhBMCkKKyNkZWZpbmUgUEhPTkVfU0VUX1RPTkVfT0ZGX1RJTUUgX0lPVygncScsIDB4OUQsIGludCkKKyNkZWZpbmUgUEhPTkVfR0VUX1RPTkVfT05fVElNRSBfSU8oJ3EnLCAweDlFKQorI2RlZmluZSBQSE9ORV9HRVRfVE9ORV9PRkZfVElNRSBfSU8oJ3EnLCAweDlGKQorI2RlZmluZSBQSE9ORV9HRVRfVE9ORV9TVEFURSBfSU8oJ3EnLCAweEEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfQlVTWSBfSU8gKCdxJywgMHhBMSkKLSNkZWZpbmUgUEhPTkVfUklOR0JBQ0sgX0lPICgncScsIDB4QTIpCi0jZGVmaW5lIFBIT05FX0RJQUxUT05FIF9JTyAoJ3EnLCAweEEzKQotI2RlZmluZSBQSE9ORV9DUFRfU1RPUCBfSU8gKCdxJywgMHhBNCkKKyNkZWZpbmUgUEhPTkVfQlVTWSBfSU8oJ3EnLCAweEExKQorI2RlZmluZSBQSE9ORV9SSU5HQkFDSyBfSU8oJ3EnLCAweEEyKQorI2RlZmluZSBQSE9ORV9ESUFMVE9ORSBfSU8oJ3EnLCAweEEzKQorI2RlZmluZSBQSE9ORV9DUFRfU1RPUCBfSU8oJ3EnLCAweEE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfUFNUTl9TRVRfU1RBVEUgX0lPVyAoJ3EnLCAweEE0LCBpbnQpCi0jZGVmaW5lIFBIT05FX1BTVE5fR0VUX1NUQVRFIF9JTyAoJ3EnLCAweEE1KQorI2RlZmluZSBQSE9ORV9QU1ROX1NFVF9TVEFURSBfSU9XKCdxJywgMHhBNCwgaW50KQorI2RlZmluZSBQSE9ORV9QU1ROX0dFVF9TVEFURSBfSU8oJ3EnLCAweEE1KQogI2RlZmluZSBQU1ROX09OX0hPT0sgMAogI2RlZmluZSBQU1ROX1JJTkdJTkcgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFNUTl9PRkZfSE9PSyAyCiAjZGVmaW5lIFBTVE5fUFVMU0VfRElBTCAzCi0jZGVmaW5lIFBIT05FX1dJTktfRFVSQVRJT04gX0lPVyAoJ3EnLCAweEE2LCBpbnQpCi0jZGVmaW5lIFBIT05FX1dJTksgX0lPVyAoJ3EnLCAweEFBLCBpbnQpCisjZGVmaW5lIFBIT05FX1dJTktfRFVSQVRJT04gX0lPVygncScsIDB4QTYsIGludCkKKyNkZWZpbmUgUEhPTkVfV0lOSyBfSU9XKCdxJywgMHhBQSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZW51bSB7Ci0gRzcyM182MyA9IDEsCi0gRzcyM181MyA9IDIsCi0gVFM4NSA9IDMsCisgIEc3MjNfNjMgPSAxLAorICBHNzIzXzUzID0gMiwKKyAgVFM4NSA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRTNDggPSA0LAotIFRTNDEgPSA1LAotIEc3MjggPSA2LAotIEc3MjkgPSA3LAorICBUUzQ4ID0gNCwKKyAgVFM0MSA9IDUsCisgIEc3MjggPSA2LAorICBHNzI5ID0gNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVUxBVyA9IDgsCi0gQUxBVyA9IDksCi0gTElORUFSMTYgPSAxMCwKLSBMSU5FQVI4ID0gMTEsCisgIFVMQVcgPSA4LAorICBBTEFXID0gOSwKKyAgTElORUFSMTYgPSAxMCwKKyAgTElORUFSOCA9IDExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXU1MgPSAxMiwKLSBHNzI5QiA9IDEzCisgIFdTUyA9IDEyLAorICBHNzI5QiA9IDEzCiB9IHBob25lX2NvZGVjOwotc3RydWN0IHBob25lX2NvZGVjX2RhdGEKK3N0cnVjdCBwaG9uZV9jb2RlY19kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gcGhvbmVfY29kZWMgdHlwZTsKLSB1bnNpZ25lZCBzaG9ydCBidWZfbWluLCBidWZfb3B0LCBidWZfbWF4OworICBwaG9uZV9jb2RlYyB0eXBlOworICB1bnNpZ25lZCBzaG9ydCBidWZfbWluLCBidWZfb3B0LCBidWZfbWF4OwogfTsKKyNkZWZpbmUgUEhPTkVfUVVFUllfQ09ERUMgX0lPV1IoJ3EnLCAweEE3LCBzdHJ1Y3QgcGhvbmVfY29kZWNfZGF0YSAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfUVVFUllfQ09ERUMgX0lPV1IgKCdxJywgMHhBNywgc3RydWN0IHBob25lX2NvZGVjX2RhdGEgKikKLSNkZWZpbmUgUEhPTkVfUFNUTl9MSU5FVEVTVCBfSU8gKCdxJywgMHhBOCkKLSNkZWZpbmUgUEhPTkVfVkFEIF9JT1cgKCdxJywgMHhBOSwgaW50KQotc3RydWN0IHBob25lX2V4Y2VwdAorI2RlZmluZSBQSE9ORV9QU1ROX0xJTkVURVNUIF9JTygncScsIDB4QTgpCisjZGVmaW5lIFBIT05FX1ZBRCBfSU9XKCdxJywgMHhBOSwgaW50KQorc3RydWN0IHBob25lX2V4Y2VwdCB7CisgIHVuc2lnbmVkIGludCBkdG1mX3JlYWR5IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gdW5zaWduZWQgaW50IGR0bWZfcmVhZHk6MTsKLSB1bnNpZ25lZCBpbnQgaG9va3N0YXRlOjE7Ci0gdW5zaWduZWQgaW50IHBzdG5fcmluZzoxOworICB1bnNpZ25lZCBpbnQgaG9va3N0YXRlIDogMTsKKyAgdW5zaWduZWQgaW50IHBzdG5fcmluZyA6IDE7CisgIHVuc2lnbmVkIGludCBjYWxsZXJfaWQgOiAxOworICB1bnNpZ25lZCBpbnQgcHN0bl93aW5rIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNhbGxlcl9pZDoxOwotIHVuc2lnbmVkIGludCBwc3RuX3dpbms6MTsKLSB1bnNpZ25lZCBpbnQgZjA6MTsKLSB1bnNpZ25lZCBpbnQgZjE6MTsKKyAgdW5zaWduZWQgaW50IGYwIDogMTsKKyAgdW5zaWduZWQgaW50IGYxIDogMTsKKyAgdW5zaWduZWQgaW50IGYyIDogMTsKKyAgdW5zaWduZWQgaW50IGYzIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGYyOjE7Ci0gdW5zaWduZWQgaW50IGYzOjE7Ci0gdW5zaWduZWQgaW50IGZsYXNoOjE7Ci0gdW5zaWduZWQgaW50IGZjMDoxOworICB1bnNpZ25lZCBpbnQgZmxhc2ggOiAxOworICB1bnNpZ25lZCBpbnQgZmMwIDogMTsKKyAgdW5zaWduZWQgaW50IGZjMSA6IDE7CisgIHVuc2lnbmVkIGludCBmYzIgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmMxOjE7Ci0gdW5zaWduZWQgaW50IGZjMjoxOwotIHVuc2lnbmVkIGludCBmYzM6MTsKLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQ6MTg7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgZmMzIDogMTsKKyAgdW5zaWduZWQgaW50IHJlc2VydmVkIDogMTg7CiB9OwogdW5pb24gdGVsZXBob255X2V4Y2VwdGlvbiB7Ci0gc3RydWN0IHBob25lX2V4Y2VwdCBiaXRzOwotIHVuc2lnbmVkIGludCBieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBwaG9uZV9leGNlcHQgYml0czsKKyAgdW5zaWduZWQgaW50IGJ5dGVzOwogfTsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGVybWlvcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZXJtaW9zLmgKaW5kZXggMmFjMDA4My4uMGU3YTM5MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZXJtaW9zLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZXJtaW9zLmgKQEAgLTIyLDE4ICsyMiwxNyBAQAogI2luY2x1ZGUgPGFzbS90ZXJtaW9zLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkYgNQotc3RydWN0IHRlcm1pb3gKLXsKLSBfX3UxNiB4X2hmbGFnOworc3RydWN0IHRlcm1pb3ggeworICBfX3UxNiB4X2hmbGFnOworICBfX3UxNiB4X2NmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB4X2NmbGFnOwotIF9fdTE2IHhfcmZsYWdbTkZGXTsKLSBfX3UxNiB4X3NmbGFnOworICBfX3UxNiB4X3JmbGFnW05GRl07CisgIF9fdTE2IHhfc2ZsYWc7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRTWE9GRiAweDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUU1hPTiAweDAwMDIKICNkZWZpbmUgRFRSWE9GRiAweDAwMDQKICNkZWZpbmUgRFNSWE9OIDB4MDAwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lLmgKaW5kZXggNjJmYjdkZi4uYmYyNDVmYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lLmgKQEAgLTIzLDMzICsyMywzMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1NUUlVDVF9USU1FU1BFQwogc3RydWN0IHRpbWVzcGVjIHsKLSBfX2tlcm5lbF90aW1lX3QgdHZfc2VjOwotIGxvbmcgdHZfbnNlYzsKKyAgX19rZXJuZWxfdGltZV90IHR2X3NlYzsKKyAgbG9uZyB0dl9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKIHN0cnVjdCB0aW1ldmFsIHsKLSBfX2tlcm5lbF90aW1lX3QgdHZfc2VjOworICBfX2tlcm5lbF90aW1lX3QgdHZfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9zdXNlY29uZHNfdCB0dl91c2VjOworICBfX2tlcm5lbF9zdXNlY29uZHNfdCB0dl91c2VjOwogfTsKIHN0cnVjdCB0aW1lem9uZSB7Ci0gaW50IHR6X21pbnV0ZXN3ZXN0OworICBpbnQgdHpfbWludXRlc3dlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0el9kc3R0aW1lOworICBpbnQgdHpfZHN0dGltZTsKIH07CiAjZGVmaW5lIElUSU1FUl9SRUFMIDAKICNkZWZpbmUgSVRJTUVSX1ZJUlRVQUwgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVRJTUVSX1BST0YgMgogc3RydWN0IGl0aW1lcnNwZWMgewotIHN0cnVjdCB0aW1lc3BlYyBpdF9pbnRlcnZhbDsKLSBzdHJ1Y3QgdGltZXNwZWMgaXRfdmFsdWU7CisgIHN0cnVjdCB0aW1lc3BlYyBpdF9pbnRlcnZhbDsKKyAgc3RydWN0IHRpbWVzcGVjIGl0X3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXRpbWVydmFsIHsKLSBzdHJ1Y3QgdGltZXZhbCBpdF9pbnRlcnZhbDsKLSBzdHJ1Y3QgdGltZXZhbCBpdF92YWx1ZTsKKyAgc3RydWN0IHRpbWV2YWwgaXRfaW50ZXJ2YWw7CisgIHN0cnVjdCB0aW1ldmFsIGl0X3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENMT0NLX1JFQUxUSU1FIDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZXMuaAppbmRleCBjMWRhOGFlLi5kMDQ5NGQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lcy5oCkBAIC0yMSwxMCArMjEsMTAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHRtcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2Nsb2NrX3QgdG1zX3V0aW1lOwotIF9fa2VybmVsX2Nsb2NrX3QgdG1zX3N0aW1lOwotIF9fa2VybmVsX2Nsb2NrX3QgdG1zX2N1dGltZTsKLSBfX2tlcm5lbF9jbG9ja190IHRtc19jc3RpbWU7CisgIF9fa2VybmVsX2Nsb2NrX3QgdG1zX3V0aW1lOworICBfX2tlcm5lbF9jbG9ja190IHRtc19zdGltZTsKKyAgX19rZXJuZWxfY2xvY2tfdCB0bXNfY3V0aW1lOworICBfX2tlcm5lbF9jbG9ja190IHRtc19jc3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1leC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1leC5oCmluZGV4IGE1OTY2OTguLjAwODQ2OGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZXguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWV4LmgKQEAgLTIyLDM0ICsyMiw0NCBAQAogI2RlZmluZSBOVFBfQVBJIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGltZXggewotIHVuc2lnbmVkIGludCBtb2RlczsKLSBfX2tlcm5lbF9sb25nX3Qgb2Zmc2V0OwotIF9fa2VybmVsX2xvbmdfdCBmcmVxOworICB1bnNpZ25lZCBpbnQgbW9kZXM7CisgIF9fa2VybmVsX2xvbmdfdCBvZmZzZXQ7CisgIF9fa2VybmVsX2xvbmdfdCBmcmVxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgbWF4ZXJyb3I7Ci0gX19rZXJuZWxfbG9uZ190IGVzdGVycm9yOwotIGludCBzdGF0dXM7Ci0gX19rZXJuZWxfbG9uZ190IGNvbnN0YW50OworICBfX2tlcm5lbF9sb25nX3QgbWF4ZXJyb3I7CisgIF9fa2VybmVsX2xvbmdfdCBlc3RlcnJvcjsKKyAgaW50IHN0YXR1czsKKyAgX19rZXJuZWxfbG9uZ190IGNvbnN0YW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgcHJlY2lzaW9uOwotIF9fa2VybmVsX2xvbmdfdCB0b2xlcmFuY2U7Ci0gc3RydWN0IHRpbWV2YWwgdGltZTsKLSBfX2tlcm5lbF9sb25nX3QgdGljazsKKyAgX19rZXJuZWxfbG9uZ190IHByZWNpc2lvbjsKKyAgX19rZXJuZWxfbG9uZ190IHRvbGVyYW5jZTsKKyAgc3RydWN0IHRpbWV2YWwgdGltZTsKKyAgX19rZXJuZWxfbG9uZ190IHRpY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBwcHNmcmVxOwotIF9fa2VybmVsX2xvbmdfdCBqaXR0ZXI7Ci0gaW50IHNoaWZ0OwotIF9fa2VybmVsX2xvbmdfdCBzdGFiaWw7CisgIF9fa2VybmVsX2xvbmdfdCBwcHNmcmVxOworICBfX2tlcm5lbF9sb25nX3Qgaml0dGVyOworICBpbnQgc2hpZnQ7CisgIF9fa2VybmVsX2xvbmdfdCBzdGFiaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBqaXRjbnQ7Ci0gX19rZXJuZWxfbG9uZ190IGNhbGNudDsKLSBfX2tlcm5lbF9sb25nX3QgZXJyY250OwotIF9fa2VybmVsX2xvbmdfdCBzdGJjbnQ7CisgIF9fa2VybmVsX2xvbmdfdCBqaXRjbnQ7CisgIF9fa2VybmVsX2xvbmdfdCBjYWxjbnQ7CisgIF9fa2VybmVsX2xvbmdfdCBlcnJjbnQ7CisgIF9fa2VybmVsX2xvbmdfdCBzdGJjbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0YWk7Ci0gaW50IDozMjsgaW50IDozMjsgaW50IDozMjsgaW50IDozMjsKLSBpbnQgOjMyOyBpbnQgOjMyOyBpbnQgOjMyOyBpbnQgOjMyOwotIGludCA6MzI7IGludCA6MzI7IGludCA6MzI7CisgIGludCB0YWk7CisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKyAgaW50IDogMzI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgOiAzMjsKKyAgaW50IDogMzI7CisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKyAgaW50IDogMzI7CisgIGludCA6IDMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFESl9PRkZTRVQgMHgwMDAxCkBAIC05OSw3ICsxMDksNyBAQAogI2RlZmluZSBTVEFfTkFOTyAweDIwMDAKICNkZWZpbmUgU1RBX01PREUgMHg0MDAwCiAjZGVmaW5lIFNUQV9DTEsgMHg4MDAwCi0jZGVmaW5lIFNUQV9ST05MWSAoU1RBX1BQU1NJR05BTCB8IFNUQV9QUFNKSVRURVIgfCBTVEFfUFBTV0FOREVSIHwgICBTVEFfUFBTRVJST1IgfCBTVEFfQ0xPQ0tFUlIgfCBTVEFfTkFOTyB8IFNUQV9NT0RFIHwgU1RBX0NMSykKKyNkZWZpbmUgU1RBX1JPTkxZIChTVEFfUFBTU0lHTkFMIHwgU1RBX1BQU0pJVFRFUiB8IFNUQV9QUFNXQU5ERVIgfCBTVEFfUFBTRVJST1IgfCBTVEFfQ0xPQ0tFUlIgfCBTVEFfTkFOTyB8IFNUQV9NT0RFIHwgU1RBX0NMSykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJTUVfT0sgMAogI2RlZmluZSBUSU1FX0lOUyAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rpb2NsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rpb2NsLmgKaW5kZXggZjM4MThmYy4uNzUzZDYxMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW9jbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlvY2wuaApAQCAtMjksMTIgKzI5LDEyIEBACiAjZGVmaW5lIFRJT0NMX1NFTE1PVVNFUkVQT1JUIDE2CiAjZGVmaW5lIFRJT0NMX1NFTEJVVFRPTk1BU0sgMTUKIHN0cnVjdCB0aW9jbF9zZWxlY3Rpb24gewotIHVuc2lnbmVkIHNob3J0IHhzOworICB1bnNpZ25lZCBzaG9ydCB4czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgeXM7Ci0gdW5zaWduZWQgc2hvcnQgeGU7Ci0gdW5zaWduZWQgc2hvcnQgeWU7Ci0gdW5zaWduZWQgc2hvcnQgc2VsX21vZGU7CisgIHVuc2lnbmVkIHNob3J0IHlzOworICB1bnNpZ25lZCBzaG9ydCB4ZTsKKyAgdW5zaWduZWQgc2hvcnQgeWU7CisgIHVuc2lnbmVkIHNob3J0IHNlbF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRJT0NMX1BBU1RFU0VMIDMKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlwYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjLmgKaW5kZXggNjQ1YzYxMC4uMjMwZmYxYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjLmgKQEAgLTE5LDExMSArMTksMTI2IEBACiAjaWZuZGVmIF9MSU5VWF9USVBDX0hfCiAjZGVmaW5lIF9MSU5VWF9USVBDX0hfCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKyNpbmNsdWRlIDxsaW51eC9zb2NraW9zLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRpcGNfcG9ydGlkIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVmOwotIF9fdTMyIG5vZGU7CisgIF9fdTMyIHJlZjsKKyAgX191MzIgbm9kZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRpcGNfbmFtZSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgaW5zdGFuY2U7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGluc3RhbmNlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19uYW1lX3NlcSB7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGxvd2VyOworICBfX3UzMiB1cHBlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBsb3dlcjsKLSBfX3UzMiB1cHBlcjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0NGR19TUlYgMAogI2RlZmluZSBUSVBDX1RPUF9TUlYgMQorI2RlZmluZSBUSVBDX0xJTktfU1RBVEUgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19SRVNFUlZFRF9UWVBFUyA2NAogI2RlZmluZSBUSVBDX1pPTkVfU0NPUEUgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19DTFVTVEVSX1NDT1BFIDIKICNkZWZpbmUgVElQQ19OT0RFX1NDT1BFIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfTUFYX1VTRVJfTVNHX1NJWkUgNjYwMDBVCiAjZGVmaW5lIFRJUENfTE9XX0lNUE9SVEFOQ0UgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19NRURJVU1fSU1QT1JUQU5DRSAxCiAjZGVmaW5lIFRJUENfSElHSF9JTVBPUlRBTkNFIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfQ1JJVElDQUxfSU1QT1JUQU5DRSAzCiAjZGVmaW5lIFRJUENfT0sgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19FUlJfTk9fTkFNRSAxCiAjZGVmaW5lIFRJUENfRVJSX05PX1BPUlQgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19FUlJfTk9fTk9ERSAzCiAjZGVmaW5lIFRJUENfRVJSX09WRVJMT0FEIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfQ09OTl9TSFVURE9XTiA1CiAjZGVmaW5lIFRJUENfU1VCX1BPUlRTIDB4MDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfU1VCX1NFUlZJQ0UgMHgwMgogI2RlZmluZSBUSVBDX1NVQl9DQU5DRUwgMHgwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19XQUlUX0ZPUkVWRVIgKH4wKQogc3RydWN0IHRpcGNfc3Vic2NyIHsKLSBzdHJ1Y3QgdGlwY19uYW1lX3NlcSBzZXE7Ci0gX191MzIgdGltZW91dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmlsdGVyOwotIGNoYXIgdXNyX2hhbmRsZVs4XTsKKyAgc3RydWN0IHRpcGNfbmFtZV9zZXEgc2VxOworICBfX3UzMiB0aW1lb3V0OworICBfX3UzMiBmaWx0ZXI7CisgIGNoYXIgdXNyX2hhbmRsZVs4XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUSVBDX1BVQkxJU0hFRCAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX1dJVEhEUkFXTiAyCiAjZGVmaW5lIFRJUENfU1VCU0NSX1RJTUVPVVQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0aXBjX2V2ZW50IHsKLSBfX3UzMiBldmVudDsKKyAgX191MzIgZXZlbnQ7CisgIF9fdTMyIGZvdW5kX2xvd2VyOworICBfX3UzMiBmb3VuZF91cHBlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm91bmRfbG93ZXI7Ci0gX191MzIgZm91bmRfdXBwZXI7Ci0gc3RydWN0IHRpcGNfcG9ydGlkIHBvcnQ7Ci0gc3RydWN0IHRpcGNfc3Vic2NyIHM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgdGlwY19wb3J0aWQgcG9ydDsKKyAgc3RydWN0IHRpcGNfc3Vic2NyIHM7CiB9OwogI2lmbmRlZiBBRl9USVBDCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBRl9USVBDIDMwCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIFBGX1RJUEMKICNkZWZpbmUgUEZfVElQQyBBRl9USVBDCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjaWZuZGVmIFNPTF9USVBDCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT0xfVElQQyAyNzEKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19BRERSX05BTUVTRVEgMQogI2RlZmluZSBUSVBDX0FERFJfTUNBU1QgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19BRERSX05BTUUgMgogI2RlZmluZSBUSVBDX0FERFJfSUQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl90aXBjIHsKLSB1bnNpZ25lZCBzaG9ydCBmYW1pbHk7CisgIHVuc2lnbmVkIHNob3J0IGZhbWlseTsKKyAgdW5zaWduZWQgY2hhciBhZGRydHlwZTsKKyAgc2lnbmVkIGNoYXIgc2NvcGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYWRkcnR5cGU7Ci0gc2lnbmVkIGNoYXIgc2NvcGU7Ci0gdW5pb24gewotIHN0cnVjdCB0aXBjX3BvcnRpZCBpZDsKKyAgdW5pb24geworICAgIHN0cnVjdCB0aXBjX3BvcnRpZCBpZDsKKyAgICBzdHJ1Y3QgdGlwY19uYW1lX3NlcSBuYW1lc2VxOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aXBjX25hbWVfc2VxIG5hbWVzZXE7Ci0gc3RydWN0IHsKLSBzdHJ1Y3QgdGlwY19uYW1lIG5hbWU7Ci0gX191MzIgZG9tYWluOworICAgICAgc3RydWN0IHRpcGNfbmFtZSBuYW1lOworICAgICAgX191MzIgZG9tYWluOworICAgIH0gbmFtZTsKKyAgfSBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG5hbWU7Ci0gfSBhZGRyOwogfTsKICNkZWZpbmUgVElQQ19FUlJJTkZPIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfUkVUREFUQSAyCiAjZGVmaW5lIFRJUENfREVTVE5BTUUgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19JTVBPUlRBTkNFIDEyNwogI2RlZmluZSBUSVBDX1NSQ19EUk9QUEFCTEUgMTI4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0RFU1RfRFJPUFBBQkxFIDEyOQogI2RlZmluZSBUSVBDX0NPTk5fVElNRU9VVCAxMzAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfTk9ERV9SRUNWUV9ERVBUSCAxMzEKICNkZWZpbmUgVElQQ19TT0NLX1JFQ1ZRX0RFUFRIIDEzMgorI2RlZmluZSBUSVBDX01BWF9NRURJQV9OQU1FIDE2CisjZGVmaW5lIFRJUENfTUFYX0lGX05BTUUgMTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfTUFYX0JFQVJFUl9OQU1FIDMyCisjZGVmaW5lIFRJUENfTUFYX0xJTktfTkFNRSA2MAorI2RlZmluZSBTSU9DR0VUTElOS05BTUUgU0lPQ1BST1RPUFJJVkFURQorc3RydWN0IHRpcGNfc2lvY19sbl9yZXEgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcGVlcjsKKyAgX191MzIgYmVhcmVyX2lkOworICBjaGFyIGxpbmtuYW1lW1RJUENfTUFYX0xJTktfTkFNRV07Cit9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjX2NvbmZpZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjX2NvbmZpZy5oCmluZGV4IDZlY2FiZGEuLjc2NDBkNzkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlwY19jb25maWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGNfY29uZmlnLmgKQEAgLTIxLDE3NiArMjEsMTczIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9zdHJpbmcuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8bGludXgvdGlwYy5oPgogI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KICNpbmNsdWRlIDxhcnBhL2luZXQuaD4KICNkZWZpbmUgVElQQ19DTURfTk9PUCAweDAwMDAKLSNkZWZpbmUgVElQQ19DTURfR0VUX05PREVTIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfR0VUX05PREVTIDB4MDAwMQogI2RlZmluZSBUSVBDX0NNRF9HRVRfTUVESUFfTkFNRVMgMHgwMDAyCiAjZGVmaW5lIFRJUENfQ01EX0dFVF9CRUFSRVJfTkFNRVMgMHgwMDAzCiAjZGVmaW5lIFRJUENfQ01EX0dFVF9MSU5LUyAweDAwMDQKLSNkZWZpbmUgVElQQ19DTURfU0hPV19OQU1FX1RBQkxFIDB4MDAwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfU0hPV19OQU1FX1RBQkxFIDB4MDAwNQogI2RlZmluZSBUSVBDX0NNRF9TSE9XX1BPUlRTIDB4MDAwNgogI2RlZmluZSBUSVBDX0NNRF9TSE9XX0xJTktfU1RBVFMgMHgwMDBCCiAjZGVmaW5lIFRJUENfQ01EX1NIT1dfU1RBVFMgMHgwMDBGCi0jZGVmaW5lIFRJUENfQ01EX0dFVF9SRU1PVEVfTU5HIDB4NDAwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfR0VUX1JFTU9URV9NTkcgMHg0MDAzCiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfUE9SVFMgMHg0MDA0CiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfUFVCTCAweDQwMDUKICNkZWZpbmUgVElQQ19DTURfR0VUX01BWF9TVUJTQ1IgMHg0MDA2Ci0jZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfWk9ORVMgMHg0MDA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9HRVRfTUFYX1pPTkVTIDB4NDAwNwogI2RlZmluZSBUSVBDX0NNRF9HRVRfTUFYX0NMVVNURVJTIDB4NDAwOAogI2RlZmluZSBUSVBDX0NNRF9HRVRfTUFYX05PREVTIDB4NDAwOQogI2RlZmluZSBUSVBDX0NNRF9HRVRfTUFYX1NMQVZFUyAweDQwMEEKLSNkZWZpbmUgVElQQ19DTURfR0VUX05FVElEIDB4NDAwQgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfR0VUX05FVElEIDB4NDAwQgogI2RlZmluZSBUSVBDX0NNRF9FTkFCTEVfQkVBUkVSIDB4NDEwMQogI2RlZmluZSBUSVBDX0NNRF9ESVNBQkxFX0JFQVJFUiAweDQxMDIKICNkZWZpbmUgVElQQ19DTURfU0VUX0xJTktfVE9MIDB4NDEwNwotI2RlZmluZSBUSVBDX0NNRF9TRVRfTElOS19QUkkgMHg0MTA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9TRVRfTElOS19QUkkgMHg0MTA4CiAjZGVmaW5lIFRJUENfQ01EX1NFVF9MSU5LX1dJTkRPVyAweDQxMDkKICNkZWZpbmUgVElQQ19DTURfU0VUX0xPR19TSVpFIDB4NDEwQQogI2RlZmluZSBUSVBDX0NNRF9EVU1QX0xPRyAweDQxMEIKLSNkZWZpbmUgVElQQ19DTURfUkVTRVRfTElOS19TVEFUUyAweDQxMEMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfQ01EX1JFU0VUX0xJTktfU1RBVFMgMHg0MTBDCiAjZGVmaW5lIFRJUENfQ01EX1NFVF9OT0RFX0FERFIgMHg4MDAxCiAjZGVmaW5lIFRJUENfQ01EX1NFVF9SRU1PVEVfTU5HIDB4ODAwMwogI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX1BPUlRTIDB4ODAwNAotI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX1BVQkwgMHg4MDA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX1BVQkwgMHg4MDA1CiAjZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfU1VCU0NSIDB4ODAwNgogI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX1pPTkVTIDB4ODAwNwogI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX0NMVVNURVJTIDB4ODAwOAotI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX05PREVTIDB4ODAwOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfU0VUX01BWF9OT0RFUyAweDgwMDkKICNkZWZpbmUgVElQQ19DTURfU0VUX01BWF9TTEFWRVMgMHg4MDBBCiAjZGVmaW5lIFRJUENfQ01EX1NFVF9ORVRJRCAweDgwMEIKICNkZWZpbmUgVElQQ19DTURfTk9UX05FVF9BRE1JTiAweEMwMDEKLSNkZWZpbmUgVElQQ19UTFZfTk9ORSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX1RMVl9OT05FIDAKICNkZWZpbmUgVElQQ19UTFZfVk9JRCAxCiAjZGVmaW5lIFRJUENfVExWX1VOU0lHTkVEIDIKICNkZWZpbmUgVElQQ19UTFZfU1RSSU5HIDMKLSNkZWZpbmUgVElQQ19UTFZfTEFSR0VfU1RSSU5HIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfVExWX0xBUkdFX1NUUklORyA0CiAjZGVmaW5lIFRJUENfVExWX1VMVFJBX1NUUklORyA1CiAjZGVmaW5lIFRJUENfVExWX0VSUk9SX1NUUklORyAxNgogI2RlZmluZSBUSVBDX1RMVl9ORVRfQUREUiAxNwotI2RlZmluZSBUSVBDX1RMVl9NRURJQV9OQU1FIDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX1RMVl9NRURJQV9OQU1FIDE4CiAjZGVmaW5lIFRJUENfVExWX0JFQVJFUl9OQU1FIDE5CiAjZGVmaW5lIFRJUENfVExWX0xJTktfTkFNRSAyMAogI2RlZmluZSBUSVBDX1RMVl9OT0RFX0lORk8gMjEKLSNkZWZpbmUgVElQQ19UTFZfTElOS19JTkZPIDIyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX1RMVl9MSU5LX0lORk8gMjIKICNkZWZpbmUgVElQQ19UTFZfQkVBUkVSX0NPTkZJRyAyMwogI2RlZmluZSBUSVBDX1RMVl9MSU5LX0NPTkZJRyAyNAogI2RlZmluZSBUSVBDX1RMVl9OQU1FX1RCTF9RVUVSWSAyNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19UTFZfUE9SVF9SRUYgMjYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRJUENfTUFYX01FRElBX05BTUUgMTYKLSNkZWZpbmUgVElQQ19NQVhfSUZfTkFNRSAxNgotI2RlZmluZSBUSVBDX01BWF9CRUFSRVJfTkFNRSAzMgotI2RlZmluZSBUSVBDX01BWF9MSU5LX05BTUUgNjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfTUlOX0xJTktfUFJJIDAKICNkZWZpbmUgVElQQ19ERUZfTElOS19QUkkgMTAKICNkZWZpbmUgVElQQ19NQVhfTElOS19QUkkgMzEKLSNkZWZpbmUgVElQQ19NRURJQV9MSU5LX1BSSSAoVElQQ19NQVhfTElOS19QUkkgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19NRURJQV9MSU5LX1BSSSAoVElQQ19NQVhfTElOS19QUkkgKyAxKQogI2RlZmluZSBUSVBDX01JTl9MSU5LX1RPTCA1MAogI2RlZmluZSBUSVBDX0RFRl9MSU5LX1RPTCAxNTAwCiAjZGVmaW5lIFRJUENfTUFYX0xJTktfVE9MIDMwMDAwCi0jaWYgVElQQ19NSU5fTElOS19UT0wgPCAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZiBUSVBDX01JTl9MSU5LX1RPTCA8IDE2CiAjZXJyb3IgIlRJUENfTUlOX0xJTktfVE9MIGlzIHRvbyBzbWFsbCAoYWJvcnQgbGltaXQgbWF5IGJlIE5hTikiCiAjZW5kaWYKICNkZWZpbmUgVElQQ19NSU5fTElOS19XSU4gMTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfREVGX0xJTktfV0lOIDUwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUSVBDX01BWF9MSU5LX1dJTiAxNTAKKyNkZWZpbmUgVElQQ19NQVhfTElOS19XSU4gODE5MQogc3RydWN0IHRpcGNfbm9kZV9pbmZvIHsKLSBfX2JlMzIgYWRkcjsKLSBfX2JlMzIgdXA7CisgIF9fYmUzMiBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTMyIHVwOwogfTsKIHN0cnVjdCB0aXBjX2xpbmtfaW5mbyB7Ci0gX19iZTMyIGRlc3Q7Ci0gX19iZTMyIHVwOworICBfX2JlMzIgZGVzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzdHJbVElQQ19NQVhfTElOS19OQU1FXTsKKyAgX19iZTMyIHVwOworICBjaGFyIHN0cltUSVBDX01BWF9MSU5LX05BTUVdOwogfTsKIHN0cnVjdCB0aXBjX2JlYXJlcl9jb25maWcgewotIF9fYmUzMiBwcmlvcml0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGRpc2NfZG9tYWluOwotIGNoYXIgbmFtZVtUSVBDX01BWF9CRUFSRVJfTkFNRV07CisgIF9fYmUzMiBwcmlvcml0eTsKKyAgX19iZTMyIGRpc2NfZG9tYWluOworICBjaGFyIG5hbWVbVElQQ19NQVhfQkVBUkVSX05BTUVdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19saW5rX2NvbmZpZyB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiB2YWx1ZTsKLSBjaGFyIG5hbWVbVElQQ19NQVhfTElOS19OQU1FXTsKKyAgX19iZTMyIHZhbHVlOworICBjaGFyIG5hbWVbVElQQ19NQVhfTElOS19OQU1FXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX05UUV9BTExUWVBFUyAweDgwMDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRpcGNfbmFtZV90YWJsZV9xdWVyeSB7Ci0gX19iZTMyIGRlcHRoOwotIF9fYmUzMiB0eXBlOwotIF9fYmUzMiBsb3dib3VuZDsKKyAgX19iZTMyIGRlcHRoOworICBfX2JlMzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHVwYm91bmQ7CisgIF9fYmUzMiBsb3dib3VuZDsKKyAgX19iZTMyIHVwYm91bmQ7CiB9OwogI2RlZmluZSBUSVBDX0NGR19UTFZfRVJST1IgIlx4ODAiCi0jZGVmaW5lIFRJUENfQ0ZHX05PVF9ORVRfQURNSU4gIlx4ODEiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NGR19OT1RfTkVUX0FETUlOICJceDgxIgogI2RlZmluZSBUSVBDX0NGR19OT1RfWk9ORV9NU1RSICJceDgyIgogI2RlZmluZSBUSVBDX0NGR19OT19SRU1PVEUgIlx4ODMiCiAjZGVmaW5lIFRJUENfQ0ZHX05PVF9TVVBQT1JURUQgIlx4ODQiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0NGR19JTlZBTElEX1ZBTFVFICJceDg1IgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0bHZfZGVzYyB7Ci0gX19iZTE2IHRsdl9sZW47Ci0gX19iZTE2IHRsdl90eXBlOworICBfX2JlMTYgdGx2X2xlbjsKKyAgX19iZTE2IHRsdl90eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUTFZfQUxJR05UTyA0Ci0jZGVmaW5lIFRMVl9BTElHTihkYXRhbGVuKSAoKChkYXRhbGVuKSsoVExWX0FMSUdOVE8tMSkpICYgfihUTFZfQUxJR05UTy0xKSkKKyNkZWZpbmUgVExWX0FMSUdOKGRhdGFsZW4pICgoKGRhdGFsZW4pICsgKFRMVl9BTElHTlRPIC0gMSkpICYgfihUTFZfQUxJR05UTyAtIDEpKQogI2RlZmluZSBUTFZfTEVOR1RIKGRhdGFsZW4pIChzaXplb2Yoc3RydWN0IHRsdl9kZXNjKSArIChkYXRhbGVuKSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRMVl9TUEFDRShkYXRhbGVuKSAoVExWX0FMSUdOKFRMVl9MRU5HVEgoZGF0YWxlbikpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVExWX0RBVEEodGx2KSAoKHZvaWQgKikoKGNoYXIgKikodGx2KSArIFRMVl9MRU5HVEgoMCkpKQorI2RlZmluZSBUTFZfREFUQSh0bHYpICgodm9pZCAqKSAoKGNoYXIgKikgKHRsdikgKyBUTFZfTEVOR1RIKDApKSkKIHN0cnVjdCB0bHZfbGlzdF9kZXNjIHsKLSBzdHJ1Y3QgdGx2X2Rlc2MgKnRsdl9wdHI7Ci0gX191MzIgdGx2X3NwYWNlOworICBzdHJ1Y3QgdGx2X2Rlc2MgKiB0bHZfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdGx2X3NwYWNlOwogfTsKICNkZWZpbmUgVElQQ19HRU5MX05BTUUgIlRJUEMiCiAjZGVmaW5lIFRJUENfR0VOTF9WRVJTSU9OIDB4MQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19HRU5MX0NNRCAweDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19nZW5sbXNnaGRyIHsKLSBfX3UzMiBkZXN0OwotIF9fdTE2IGNtZDsKLSBfX3UxNiByZXNlcnZlZDsKKyAgX191MzIgZGVzdDsKKyAgX191MTYgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgcmVzZXJ2ZWQ7CiB9OwogI2RlZmluZSBUSVBDX0dFTkxfSERSTEVOIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgdGlwY19nZW5sbXNnaGRyKSkKIHN0cnVjdCB0aXBjX2NmZ19tc2dfaGRyIHsKLSBfX2JlMzIgdGNtX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHRjbV90eXBlOwotIF9fYmUxNiB0Y21fZmxhZ3M7Ci0gY2hhciB0Y21fcmVzZXJ2ZWRbOF07CisgIF9fYmUzMiB0Y21fbGVuOworICBfX2JlMTYgdGNtX3R5cGU7CisgIF9fYmUxNiB0Y21fZmxhZ3M7CisgIGNoYXIgdGNtX3Jlc2VydmVkWzhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ01fRl9SRVFVRVNUIDB4MQogI2RlZmluZSBUQ01fRl9NT1JFIDB4MgotI2RlZmluZSBUQ01fQUxJR04oZGF0YWxlbikgKCgoZGF0YWxlbikrMykgJiB+MykKLSNkZWZpbmUgVENNX0xFTkdUSChkYXRhbGVuKSAoc2l6ZW9mKHN0cnVjdCB0aXBjX2NmZ19tc2dfaGRyKSArIGRhdGFsZW4pCisjZGVmaW5lIFRDTV9BTElHTihkYXRhbGVuKSAoKChkYXRhbGVuKSArIDMpICYgfjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUQ01fTEVOR1RIKGRhdGFsZW4pIChzaXplb2Yoc3RydWN0IHRpcGNfY2ZnX21zZ19oZHIpICsgZGF0YWxlbikKICNkZWZpbmUgVENNX1NQQUNFKGRhdGFsZW4pIChUQ01fQUxJR04oVENNX0xFTkdUSChkYXRhbGVuKSkpCi0jZGVmaW5lIFRDTV9EQVRBKHRjbV9oZHIpICgodm9pZCAqKSgoY2hhciAqKSh0Y21faGRyKSArIFRDTV9MRU5HVEgoMCkpKQorI2RlZmluZSBUQ01fREFUQSh0Y21faGRyKSAoKHZvaWQgKikgKChjaGFyICopICh0Y21faGRyKSArIFRDTV9MRU5HVEgoMCkpKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90b3NoaWJhLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rvc2hpYmEuaAppbmRleCAwOWIyMGI1Li4wNGU4ZWU1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rvc2hpYmEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rvc2hpYmEuaApAQCAtMjMsMTMgKzIzLDEzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUT1NIX1NNTSBfSU9XUigndCcsIDB4OTAsIGludCkKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgZWF4OwotIHVuc2lnbmVkIGludCBlYnggX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICB1bnNpZ25lZCBpbnQgZWF4OworICB1bnNpZ25lZCBpbnQgZWJ4IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZWN4IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKLSB1bnNpZ25lZCBpbnQgZWR4IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKLSB1bnNpZ25lZCBpbnQgZXNpIF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKLSB1bnNpZ25lZCBpbnQgZWRpIF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgdW5zaWduZWQgaW50IGVjeCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyAgdW5zaWduZWQgaW50IGVkeCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyAgdW5zaWduZWQgaW50IGVzaSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyAgdW5zaWduZWQgaW50IGVkaSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IFNNTVJlZ2lzdGVyczsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90dHlfZmxhZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdHR5X2ZsYWdzLmgKaW5kZXggMjNkMWU1ZC4uYmNjNWY2MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90dHlfZmxhZ3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3R0eV9mbGFncy5oCkBAIC03NCwxMSArNzQsMTEgQEAKICNkZWZpbmUgQVNZTkNfQlVHR1lfVUFSVCAoMVUgPDwgQVNZTkNCX0JVR0dZX1VBUlQpCiAjZGVmaW5lIEFTWU5DX0FVVE9QUk9CRSAoMVUgPDwgQVNZTkNCX0FVVE9QUk9CRSkKICNkZWZpbmUgQVNZTkNfRkxBR1MgKCgxVSA8PCAoQVNZTkNCX0xBU1RfVVNFUiArIDEpKSAtIDEpCi0jZGVmaW5lIEFTWU5DX1VTUl9NQVNLIChBU1lOQ19TUERfTUFTS3xBU1lOQ19DQUxMT1VUX05PSFVQfCAgIEFTWU5DX0xPV19MQVRFTkNZKQorI2RlZmluZSBBU1lOQ19VU1JfTUFTSyAoQVNZTkNfU1BEX01BU0sgfCBBU1lOQ19DQUxMT1VUX05PSFVQIHwgQVNZTkNfTE9XX0xBVEVOQ1kpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBU1lOQ19TUERfQ1VTVCAoQVNZTkNfU1BEX0hJfEFTWU5DX1NQRF9WSEkpCi0jZGVmaW5lIEFTWU5DX1NQRF9XQVJQIChBU1lOQ19TUERfSEl8QVNZTkNfU1BEX1NISSkKLSNkZWZpbmUgQVNZTkNfU1BEX01BU0sgKEFTWU5DX1NQRF9ISXxBU1lOQ19TUERfVkhJfEFTWU5DX1NQRF9TSEkpCisjZGVmaW5lIEFTWU5DX1NQRF9DVVNUIChBU1lOQ19TUERfSEkgfCBBU1lOQ19TUERfVkhJKQorI2RlZmluZSBBU1lOQ19TUERfV0FSUCAoQVNZTkNfU1BEX0hJIHwgQVNZTkNfU1BEX1NISSkKKyNkZWZpbmUgQVNZTkNfU1BEX01BU0sgKEFTWU5DX1NQRF9ISSB8IEFTWU5DX1NQRF9WSEkgfCBBU1lOQ19TUERfU0hJKQogI2RlZmluZSBBU1lOQ19JTklUSUFMSVpFRCAoMVUgPDwgQVNZTkNCX0lOSVRJQUxJWkVEKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVNZTkNfTk9STUFMX0FDVElWRSAoMVUgPDwgQVNZTkNCX05PUk1BTF9BQ1RJVkUpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VkcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91ZHAuaAppbmRleCA0MWEwNTkyLi5lMWQ1NDZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VkcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWRwLmgKQEAgLTIxLDE2ICsyMSwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgdWRwaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHNvdXJjZTsKLSBfX2JlMTYgZGVzdDsKLSBfX2JlMTYgbGVuOwotIF9fc3VtMTYgY2hlY2s7CisgIF9fYmUxNiBzb3VyY2U7CisgIF9fYmUxNiBkZXN0OworICBfX2JlMTYgbGVuOworICBfX3N1bTE2IGNoZWNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFVEUF9DT1JLIDEKICNkZWZpbmUgVURQX0VOQ0FQIDEwMAotI2RlZmluZSBVRFBfRU5DQVBfRVNQSU5VRFBfTk9OX0lLRSAxCisjZGVmaW5lIFVEUF9OT19DSEVDSzZfVFggMTAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVRFBfTk9fQ0hFQ0s2X1JYIDEwMgorI2RlZmluZSBVRFBfRU5DQVBfRVNQSU5VRFBfTk9OX0lLRSAxCiAjZGVmaW5lIFVEUF9FTkNBUF9FU1BJTlVEUCAyCiAjZGVmaW5lIFVEUF9FTkNBUF9MMlRQSU5VRFAgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aGlkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VoaWQuaAppbmRleCAzN2MzYjE3Li5lMDEyYThkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VoaWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VoaWQuaApAQCAtMjEsODggKzIxLDE2OSBAQAogI2luY2x1ZGUgPGxpbnV4L2lucHV0Lmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8bGludXgvaGlkLmg+CiBlbnVtIHVoaWRfZXZlbnRfdHlwZSB7Ci0gVUhJRF9DUkVBVEUsCi0gVUhJRF9ERVNUUk9ZLAotIFVISURfU1RBUlQsCisgIF9fVUhJRF9MRUdBQ1lfQ1JFQVRFLAorICBVSElEX0RFU1RST1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVISURfU1RPUCwKLSBVSElEX09QRU4sCi0gVUhJRF9DTE9TRSwKLSBVSElEX09VVFBVVCwKKyAgVUhJRF9TVEFSVCwKKyAgVUhJRF9TVE9QLAorICBVSElEX09QRU4sCisgIFVISURfQ0xPU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVISURfT1VUUFVUX0VWLAotIFVISURfSU5QVVQsCi0gVUhJRF9GRUFUVVJFLAotIFVISURfRkVBVFVSRV9BTlNXRVIsCisgIFVISURfT1VUUFVULAorICBfX1VISURfTEVHQUNZX09VVFBVVF9FViwKKyAgX19VSElEX0xFR0FDWV9JTlBVVCwKKyAgVUhJRF9HRVRfUkVQT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVUhJRF9HRVRfUkVQT1JUX1JFUExZLAorICBVSElEX0NSRUFURTIsCisgIFVISURfSU5QVVQyLAorICBVSElEX1NFVF9SRVBPUlQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBVSElEX1NFVF9SRVBPUlRfUkVQTFksCiB9Owotc3RydWN0IHVoaWRfY3JlYXRlX3JlcSB7Ci0gX191OCBuYW1lWzEyOF07Ci0gX191OCBwaHlzWzY0XTsKK3N0cnVjdCB1aGlkX2NyZWF0ZTJfcmVxIHsKKyAgX191OCBuYW1lWzEyOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdW5pcVs2NF07Ci0gX191OCBfX3VzZXIgKnJkX2RhdGE7Ci0gX191MTYgcmRfc2l6ZTsKLSBfX3UxNiBidXM7CisgIF9fdTggcGh5c1s2NF07CisgIF9fdTggdW5pcVs2NF07CisgIF9fdTE2IHJkX3NpemU7CisgIF9fdTE2IGJ1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmVuZG9yOwotIF9fdTMyIHByb2R1Y3Q7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBjb3VudHJ5OworICBfX3UzMiB2ZW5kb3I7CisgIF9fdTMyIHByb2R1Y3Q7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIGNvdW50cnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJkX2RhdGFbSElEX01BWF9ERVNDUklQVE9SX1NJWkVdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CitlbnVtIHVoaWRfZGV2X2ZsYWcgeworICBVSElEX0RFVl9OVU1CRVJFRF9GRUFUVVJFX1JFUE9SVFMgPSAoMVVMTCA8PCAwKSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFVISURfREVWX05VTUJFUkVEX09VVFBVVF9SRVBPUlRTID0gKDFVTEwgPDwgMSksCisgIFVISURfREVWX05VTUJFUkVEX0lOUFVUX1JFUE9SVFMgPSAoMVVMTCA8PCAyKSwKK307CitzdHJ1Y3QgdWhpZF9zdGFydF9yZXEgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZGV2X2ZsYWdzOworfTsKICNkZWZpbmUgVUhJRF9EQVRBX01BWCA0MDk2CiBlbnVtIHVoaWRfcmVwb3J0X3R5cGUgewotIFVISURfRkVBVFVSRV9SRVBPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVISURfT1VUUFVUX1JFUE9SVCwKLSBVSElEX0lOUFVUX1JFUE9SVCwKKyAgVUhJRF9GRUFUVVJFX1JFUE9SVCwKKyAgVUhJRF9PVVRQVVRfUkVQT1JULAorICBVSElEX0lOUFVUX1JFUE9SVCwKIH07Ci1zdHJ1Y3QgdWhpZF9pbnB1dF9yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07Ci0gX191MTYgc2l6ZTsKK3N0cnVjdCB1aGlkX2lucHV0Ml9yZXEgeworICBfX3UxNiBzaXplOworICBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWhpZF9vdXRwdXRfcmVxIHsKKyAgX191OCBkYXRhW1VISURfREFUQV9NQVhdOworICBfX3UxNiBzaXplOworICBfX3U4IHJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07Ci0gX191MTYgc2l6ZTsKLSBfX3U4IHJ0eXBlOworfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CitzdHJ1Y3QgdWhpZF9nZXRfcmVwb3J0X3JlcSB7CisgIF9fdTMyIGlkOworICBfX3U4IHJudW07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJ0eXBlOworfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CitzdHJ1Y3QgdWhpZF9nZXRfcmVwb3J0X3JlcGx5X3JlcSB7CisgIF9fdTMyIGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgZXJyOworICBfX3UxNiBzaXplOworICBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgdWhpZF9vdXRwdXRfZXZfcmVxIHsKLSBfX3UxNiB0eXBlOwotIF9fdTE2IGNvZGU7Ci0gX19zMzIgdmFsdWU7CitzdHJ1Y3QgdWhpZF9zZXRfcmVwb3J0X3JlcSB7CisgIF9fdTMyIGlkOworICBfX3U4IHJudW07CisgIF9fdTggcnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzaXplOworICBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3N0cnVjdCB1aGlkX3NldF9yZXBvcnRfcmVwbHlfcmVxIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkOworICBfX3UxNiBlcnI7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK2VudW0gdWhpZF9sZWdhY3lfZXZlbnRfdHlwZSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBVSElEX0NSRUFURSA9IF9fVUhJRF9MRUdBQ1lfQ1JFQVRFLAorICBVSElEX09VVFBVVF9FViA9IF9fVUhJRF9MRUdBQ1lfT1VUUFVUX0VWLAorICBVSElEX0lOUFVUID0gX19VSElEX0xFR0FDWV9JTlBVVCwKKyAgVUhJRF9GRUFUVVJFID0gVUhJRF9HRVRfUkVQT1JULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVUhJRF9GRUFUVVJFX0FOU1dFUiA9IFVISURfR0VUX1JFUE9SVF9SRVBMWSwKK307CitzdHJ1Y3QgdWhpZF9jcmVhdGVfcmVxIHsKKyAgX191OCBuYW1lWzEyOF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBoeXNbNjRdOworICBfX3U4IHVuaXFbNjRdOworICBfX3U4IF9fdXNlciAqIHJkX2RhdGE7CisgIF9fdTE2IHJkX3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBidXM7CisgIF9fdTMyIHZlbmRvcjsKKyAgX191MzIgcHJvZHVjdDsKKyAgX191MzIgdmVyc2lvbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGNvdW50cnk7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3N0cnVjdCB1aGlkX2lucHV0X3JlcSB7CisgIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHNpemU7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3N0cnVjdCB1aGlkX291dHB1dF9ldl9yZXEgeworICBfX3UxNiB0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgY29kZTsKKyAgX19zMzIgdmFsdWU7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIHN0cnVjdCB1aGlkX2ZlYXR1cmVfcmVxIHsKLSBfX3UzMiBpZDsKLSBfX3U4IHJudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnR5cGU7CisgIF9fdTMyIGlkOworICBfX3U4IHJudW07CisgIF9fdTggcnR5cGU7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWhpZF9mZWF0dXJlX2Fuc3dlcl9yZXEgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKKyAgX191MTYgZXJyOworICBfX3UxNiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBlcnI7Ci0gX191MTYgc2l6ZTsKLSBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07CisgIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1aGlkX2V2ZW50IHsKLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdWhpZF9jcmVhdGVfcmVxIGNyZWF0ZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVoaWRfaW5wdXRfcmVxIGlucHV0OwotIHN0cnVjdCB1aGlkX291dHB1dF9yZXEgb3V0cHV0OwotIHN0cnVjdCB1aGlkX291dHB1dF9ldl9yZXEgb3V0cHV0X2V2OwotIHN0cnVjdCB1aGlkX2ZlYXR1cmVfcmVxIGZlYXR1cmU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdWhpZF9jcmVhdGVfcmVxIGNyZWF0ZTsKKyAgICBzdHJ1Y3QgdWhpZF9pbnB1dF9yZXEgaW5wdXQ7CisgICAgc3RydWN0IHVoaWRfb3V0cHV0X3JlcSBvdXRwdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1aGlkX2ZlYXR1cmVfYW5zd2VyX3JlcSBmZWF0dXJlX2Fuc3dlcjsKLSB9IHU7CisgICAgc3RydWN0IHVoaWRfb3V0cHV0X2V2X3JlcSBvdXRwdXRfZXY7CisgICAgc3RydWN0IHVoaWRfZmVhdHVyZV9yZXEgZmVhdHVyZTsKKyAgICBzdHJ1Y3QgdWhpZF9nZXRfcmVwb3J0X3JlcSBnZXRfcmVwb3J0OworICAgIHN0cnVjdCB1aGlkX2ZlYXR1cmVfYW5zd2VyX3JlcSBmZWF0dXJlX2Fuc3dlcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IHVoaWRfZ2V0X3JlcG9ydF9yZXBseV9yZXEgZ2V0X3JlcG9ydF9yZXBseTsKKyAgICBzdHJ1Y3QgdWhpZF9jcmVhdGUyX3JlcSBjcmVhdGUyOworICAgIHN0cnVjdCB1aGlkX2lucHV0Ml9yZXEgaW5wdXQyOworICAgIHN0cnVjdCB1aGlkX3NldF9yZXBvcnRfcmVxIHNldF9yZXBvcnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIHN0cnVjdCB1aGlkX3NldF9yZXBvcnRfcmVwbHlfcmVxIHNldF9yZXBvcnRfcmVwbHk7CisgICAgc3RydWN0IHVoaWRfc3RhcnRfcmVxIHN0YXJ0OworICB9IHU7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aW5wdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWlucHV0LmgKaW5kZXggNmFkMDMzNC4uODQ1YWZmYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aW5wdXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VpbnB1dC5oCkBAIC0yMSwxOSArMjEsMTkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L2lucHV0Lmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBVSU5QVVRfVkVSU0lPTiAzCisjZGVmaW5lIFVJTlBVVF9WRVJTSU9OIDQKIHN0cnVjdCB1aW5wdXRfZmZfdXBsb2FkIHsKLSBfX3UzMiByZXF1ZXN0X2lkOwotIF9fczMyIHJldHZhbDsKKyAgX191MzIgcmVxdWVzdF9pZDsKKyAgX19zMzIgcmV0dmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmZfZWZmZWN0IGVmZmVjdDsKLSBzdHJ1Y3QgZmZfZWZmZWN0IG9sZDsKKyAgc3RydWN0IGZmX2VmZmVjdCBlZmZlY3Q7CisgIHN0cnVjdCBmZl9lZmZlY3Qgb2xkOwogfTsKIHN0cnVjdCB1aW5wdXRfZmZfZXJhc2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXF1ZXN0X2lkOwotIF9fczMyIHJldHZhbDsKLSBfX3UzMiBlZmZlY3RfaWQ7CisgIF9fdTMyIHJlcXVlc3RfaWQ7CisgIF9fczMyIHJldHZhbDsKKyAgX191MzIgZWZmZWN0X2lkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVJTlBVVF9JT0NUTF9CQVNFICdVJwpAQCAtNDksNyArNDksNyBAQAogI2RlZmluZSBVSV9TRVRfTEVEQklUIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDEwNSwgaW50KQogI2RlZmluZSBVSV9TRVRfU05EQklUIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDEwNiwgaW50KQogI2RlZmluZSBVSV9TRVRfRkZCSVQgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA3LCBpbnQpCi0jZGVmaW5lIFVJX1NFVF9QSFlTIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDEwOCwgY2hhciopCisjZGVmaW5lIFVJX1NFVF9QSFlTIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDEwOCwgY2hhciAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUlfU0VUX1NXQklUIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDEwOSwgaW50KQogI2RlZmluZSBVSV9TRVRfUFJPUEJJVCBfSU9XKFVJTlBVVF9JT0NUTF9CQVNFLCAxMTAsIGludCkKQEAgLTU4LDIxICs1OCwyMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUlfQkVHSU5fRkZfRVJBU0UgX0lPV1IoVUlOUFVUX0lPQ1RMX0JBU0UsIDIwMiwgc3RydWN0IHVpbnB1dF9mZl9lcmFzZSkKICNkZWZpbmUgVUlfRU5EX0ZGX0VSQVNFIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDIwMywgc3RydWN0IHVpbnB1dF9mZl9lcmFzZSkKKyNkZWZpbmUgVUlfR0VUX1NZU05BTUUobGVuKSBfSU9DKF9JT0NfUkVBRCwgVUlOUFVUX0lPQ1RMX0JBU0UsIDMwMCwgbGVuKQorI2RlZmluZSBVSV9HRVRfVkVSU0lPTiBfSU9SKFVJTlBVVF9JT0NUTF9CQVNFLCAzMDEsIHVuc2lnbmVkIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVWX1VJTlBVVCAweDAxMDEKICNkZWZpbmUgVUlfRkZfVVBMT0FEIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVJX0ZGX0VSQVNFIDIKICNkZWZpbmUgVUlOUFVUX01BWF9OQU1FX1NJWkUgODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWlucHV0X3VzZXJfZGV2IHsKLSBjaGFyIG5hbWVbVUlOUFVUX01BWF9OQU1FX1NJWkVdOworICBjaGFyIG5hbWVbVUlOUFVUX01BWF9OQU1FX1NJWkVdOworICBzdHJ1Y3QgaW5wdXRfaWQgaWQ7CisgIF9fdTMyIGZmX2VmZmVjdHNfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5wdXRfaWQgaWQ7Ci0gX191MzIgZmZfZWZmZWN0c19tYXg7Ci0gX19zMzIgYWJzbWF4W0FCU19DTlRdOwotIF9fczMyIGFic21pbltBQlNfQ05UXTsKKyAgX19zMzIgYWJzbWF4W0FCU19DTlRdOworICBfX3MzMiBhYnNtaW5bQUJTX0NOVF07CisgIF9fczMyIGFic2Z1enpbQUJTX0NOVF07CisgIF9fczMyIGFic2ZsYXRbQUJTX0NOVF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGFic2Z1enpbQUJTX0NOVF07Ci0gX19zMzIgYWJzZmxhdFtBQlNfQ05UXTsKIH07CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Vpby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aW8uaAppbmRleCA0NDk0MGMxLi5lZWFjYjU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Vpby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWlvLmgKQEAgLTIxLDEzICsyMSwxMSBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaW92ZWMKLXsKLSB2b2lkIF9fdXNlciAqaW92X2Jhc2U7Ci0gX19rZXJuZWxfc2l6ZV90IGlvdl9sZW47Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGlvdmVjIHsKKyAgdm9pZCBfX3VzZXIgKiBpb3ZfYmFzZTsKKyAgX19rZXJuZWxfc2l6ZV90IGlvdl9sZW47CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUlPX0ZBU1RJT1YgOAogI2RlZmluZSBVSU9fTUFYSU9WIDEwMjQKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWx0cmFzb3VuZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bHRyYXNvdW5kLmgKaW5kZXggMzNjNGI1Yi4uZDk1ODJiZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bHRyYXNvdW5kLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bHRyYXNvdW5kLmgKQEAgLTM5LDI3ICszOSwyNyBAQAogI2RlZmluZSBfR1VTX1ZPTFVNRV9TQ0FMRSAweDBlCiAjZGVmaW5lIF9HVVNfVk9JQ0VWT0wyIDB4MGYKICNkZWZpbmUgX0dVU19WT0lDRV9QT1MgMHgxMAotI2RlZmluZSBfR1VTX0NNRChjaG4sIHZvaWNlLCBjbWQsIHAxLCBwMikgICB7X1NFUV9ORUVEQlVGKDgpOyBfc2VxYnVmW19zZXFidWZwdHJdID0gU0VRX1BSSVZBVEU7ICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSAoY2huKTsgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gY21kOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzNdID0gdm9pY2U7ICAqKHVuc2lnbmVkIHNob3J0KikmX3NlcWJ1Zltfc2VxYnVmcHRyKzRdID0gcDE7ICAqKHVuc2lnbmVkIHNob3J0KikmX3NlcWJ1Zltfc2VxYnVmcHRyKzZdID0gcDI7ICBfU0VRX0FEVkJVRig4KTt9CisjZGVmaW5lIF9HVVNfQ01EKGNobix2b2ljZSxjbWQscDEscDIpIHsgX1NFUV9ORUVEQlVGKDgpOyBfc2VxYnVmW19zZXFidWZwdHJdID0gU0VRX1BSSVZBVEU7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGNobik7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gY21kOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IHZvaWNlOyAqICh1bnNpZ25lZCBzaG9ydCAqKSAmIF9zZXFidWZbX3NlcWJ1ZnB0ciArIDRdID0gcDE7ICogKHVuc2lnbmVkIHNob3J0ICopICYgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNl0gPSBwMjsgX1NFUV9BRFZCVUYoOCk7IH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEdVU19OVU1WT0lDRVMoY2huLCBwMSkgX0dVU19DTUQoY2huLCAwLCBfR1VTX05VTVZPSUNFUywgKHAxKSwgMCkKLSNkZWZpbmUgR1VTX1ZPSUNFU0FNUExFKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFU0FNUExFLCAocDEpLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VPTihjaG4sIHZvaWNlLCBwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRU9OLCAocDEpLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VPRkYoY2huLCB2b2ljZSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRU9GRiwgMCwgMCkKKyNkZWZpbmUgR1VTX05VTVZPSUNFUyhjaG4scDEpIF9HVVNfQ01EKGNobiwgMCwgX0dVU19OVU1WT0lDRVMsIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRVNBTVBMRShjaG4sdm9pY2UscDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VTQU1QTEUsIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRU9OKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRU9OLCAocDEpLCAwKQorI2RlZmluZSBHVVNfVk9JQ0VPRkYoY2huLHZvaWNlKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFT0ZGLCAwLCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgR1VTX1ZPSUNFRkFERShjaG4sIHZvaWNlKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFRkFERSwgMCwgMCkKLSNkZWZpbmUgR1VTX1ZPSUNFTU9ERShjaG4sIHZvaWNlLCBwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRU1PREUsIChwMSksIDApCi0jZGVmaW5lIEdVU19WT0lDRUJBTEEoY2huLCB2b2ljZSwgcDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VCQUxBLCAocDEpLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VGUkVRKGNobiwgdm9pY2UsIHApIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VGUkVRLCAgIChwKSAmIDB4ZmZmZiwgKChwKSA+PiAxNikgJiAweGZmZmYpCisjZGVmaW5lIEdVU19WT0lDRUZBREUoY2huLHZvaWNlKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFRkFERSwgMCwgMCkKKyNkZWZpbmUgR1VTX1ZPSUNFTU9ERShjaG4sdm9pY2UscDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VNT0RFLCAocDEpLCAwKQorI2RlZmluZSBHVVNfVk9JQ0VCQUxBKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRUJBTEEsIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRUZSRVEoY2huLHZvaWNlLHApIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VGUkVRLCAocCkgJiAweGZmZmYsICgocCkgPj4gMTYpICYgMHhmZmZmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgR1VTX1ZPSUNFVk9MKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFVk9MLCAocDEpLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VWT0wyKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFVk9MMiwgKHAxKSwgMCkKLSNkZWZpbmUgR1VTX1JBTVBSQU5HRShjaG4sIHZvaWNlLCBsb3csIGhpZ2gpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfUkFNUFJBTkdFLCAobG93KSwgKGhpZ2gpKQotI2RlZmluZSBHVVNfUkFNUFJBVEUoY2huLCB2b2ljZSwgcDEsIHAyKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBSQVRFLCAocDEpLCAocDIpKQorI2RlZmluZSBHVVNfVk9JQ0VWT0woY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFVk9MLCAocDEpLCAwKQorI2RlZmluZSBHVVNfVk9JQ0VWT0wyKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRVZPTDIsIChwMSksIDApCisjZGVmaW5lIEdVU19SQU1QUkFOR0UoY2huLHZvaWNlLGxvdyxoaWdoKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBSQU5HRSwgKGxvdyksIChoaWdoKSkKKyNkZWZpbmUgR1VTX1JBTVBSQVRFKGNobix2b2ljZSxwMSxwMikgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QUkFURSwgKHAxKSwgKHAyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEdVU19SQU1QTU9ERShjaG4sIHZvaWNlLCBwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QTU9ERSwgKHAxKSwgMCkKLSNkZWZpbmUgR1VTX1JBTVBPTihjaG4sIHZvaWNlLCBwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QT04sIChwMSksIDApCi0jZGVmaW5lIEdVU19SQU1QT0ZGKGNobiwgdm9pY2UpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfUkFNUE9GRiwgMCwgMCkKLSNkZWZpbmUgR1VTX1ZPTFVNRV9TQ0FMRShjaG4sIHZvaWNlLCBwMSwgcDIpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9MVU1FX1NDQUxFLCAocDEpLCAocDIpKQorI2RlZmluZSBHVVNfUkFNUE1PREUoY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBNT0RFLCAocDEpLCAwKQorI2RlZmluZSBHVVNfUkFNUE9OKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QT04sIChwMSksIDApCisjZGVmaW5lIEdVU19SQU1QT0ZGKGNobix2b2ljZSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QT0ZGLCAwLCAwKQorI2RlZmluZSBHVVNfVk9MVU1FX1NDQUxFKGNobix2b2ljZSxwMSxwMikgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0xVTUVfU0NBTEUsIChwMSksIChwMikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBHVVNfVk9JQ0VfUE9TKGNobiwgdm9pY2UsIHApIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VfUE9TLCAgIChwKSAmIDB4ZmZmZiwgKChwKSA+PiAxNikgJiAweGZmZmYpCisjZGVmaW5lIEdVU19WT0lDRV9QT1MoY2huLHZvaWNlLHApIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VfUE9TLCAocCkgJiAweGZmZmYsICgocCkgPj4gMTYpICYgMHhmZmZmKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VuLmgKaW5kZXggNzM2YjViZi4uMDdmNjE1ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW4uaApAQCAtMjIsOCArMjIsOCBAQAogI2RlZmluZSBVTklYX1BBVEhfTUFYIDEwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl91biB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3VuX2ZhbWlseTsKLSBjaGFyIHN1bl9wYXRoW1VOSVhfUEFUSF9NQVhdOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzdW5fZmFtaWx5OworICBjaGFyIHN1bl9wYXRoW1VOSVhfUEFUSF9NQVhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW5peF9kaWFnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VuaXhfZGlhZy5oCmluZGV4IDQ3NTU4M2UuLmZmMjEzOGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW5peF9kaWFnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bml4X2RpYWcuaApAQCAtMjEsMTQgKzIxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB1bml4X2RpYWdfcmVxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZGlhZ19mYW1pbHk7Ci0gX191OCBzZGlhZ19wcm90b2NvbDsKLSBfX3UxNiBwYWQ7Ci0gX191MzIgdWRpYWdfc3RhdGVzOworICBfX3U4IHNkaWFnX2ZhbWlseTsKKyAgX191OCBzZGlhZ19wcm90b2NvbDsKKyAgX191MTYgcGFkOworICBfX3UzMiB1ZGlhZ19zdGF0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHVkaWFnX2lubzsKLSBfX3UzMiB1ZGlhZ19zaG93OwotIF9fdTMyIHVkaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgdWRpYWdfaW5vOworICBfX3UzMiB1ZGlhZ19zaG93OworICBfX3UzMiB1ZGlhZ19jb29raWVbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVURJQUdfU0hPV19OQU1FIDB4MDAwMDAwMDEKQEAgLTM5LDM3ICszOSwzNyBAQAogI2RlZmluZSBVRElBR19TSE9XX1JRTEVOIDB4MDAwMDAwMTAKICNkZWZpbmUgVURJQUdfU0hPV19NRU1JTkZPIDB4MDAwMDAwMjAKIHN0cnVjdCB1bml4X2RpYWdfbXNnIHsKLSBfX3U4IHVkaWFnX2ZhbWlseTsKKyAgX191OCB1ZGlhZ19mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdWRpYWdfdHlwZTsKLSBfX3U4IHVkaWFnX3N0YXRlOwotIF9fdTggcGFkOwotIF9fdTMyIHVkaWFnX2lubzsKKyAgX191OCB1ZGlhZ190eXBlOworICBfX3U4IHVkaWFnX3N0YXRlOworICBfX3U4IHBhZDsKKyAgX191MzIgdWRpYWdfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1ZGlhZ19jb29raWVbMl07CisgIF9fdTMyIHVkaWFnX2Nvb2tpZVsyXTsKIH07CiBlbnVtIHsKLSBVTklYX0RJQUdfTkFNRSwKKyAgVU5JWF9ESUFHX05BTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVOSVhfRElBR19WRlMsCi0gVU5JWF9ESUFHX1BFRVIsCi0gVU5JWF9ESUFHX0lDT05TLAotIFVOSVhfRElBR19SUUxFTiwKKyAgVU5JWF9ESUFHX1ZGUywKKyAgVU5JWF9ESUFHX1BFRVIsCisgIFVOSVhfRElBR19JQ09OUywKKyAgVU5JWF9ESUFHX1JRTEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVTklYX0RJQUdfTUVNSU5GTywKLSBVTklYX0RJQUdfU0hVVERPV04sCi0gX19VTklYX0RJQUdfTUFYLAorICBVTklYX0RJQUdfTUVNSU5GTywKKyAgVU5JWF9ESUFHX1NIVVRET1dOLAorICBfX1VOSVhfRElBR19NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVU5JWF9ESUFHX01BWCAoX19VTklYX0RJQUdfTUFYIC0gMSkKIHN0cnVjdCB1bml4X2RpYWdfdmZzIHsKLSBfX3UzMiB1ZGlhZ192ZnNfaW5vOwotIF9fdTMyIHVkaWFnX3Zmc19kZXY7CisgIF9fdTMyIHVkaWFnX3Zmc19pbm87CisgIF9fdTMyIHVkaWFnX3Zmc19kZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB1bml4X2RpYWdfcnFsZW4gewotIF9fdTMyIHVkaWFnX3JxdWV1ZTsKLSBfX3UzMiB1ZGlhZ193cXVldWU7CisgIF9fdTMyIHVkaWFnX3JxdWV1ZTsKKyAgX191MzIgdWRpYWdfd3F1ZXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2F1ZGlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9hdWRpby5oCmluZGV4IDQwZGY3NWQuLjQ1OTUxNmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2F1ZGlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvYXVkaW8uaApAQCAtMTIzLDMzICsxMjMsMzQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQ19URVJNSU5BTF9WRU5ET1JfU1BFQyAweDFGRgogc3RydWN0IHVhYzFfYWNfaGVhZGVyX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX19sZTE2IGJjZEFEQzsKLSBfX2xlMTYgd1RvdGFsTGVuZ3RoOwotIF9fdTggYkluQ29sbGVjdGlvbjsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fbGUxNiBiY2RBREM7CisgIF9fbGUxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYkluQ29sbGVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiYUludGVyZmFjZU5yW107Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiYUludGVyZmFjZU5yW107Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVQUNfRFRfQUNfSEVBREVSX1NJWkUobikgKDggKyAobikpCi0jZGVmaW5lIERFQ0xBUkVfVUFDX0FDX0hFQURFUl9ERVNDUklQVE9SKG4pICBzdHJ1Y3QgdWFjMV9hY19oZWFkZXJfZGVzY3JpcHRvcl8jI24geyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgICBfX2xlMTYgYmNkQURDOyAgIF9fbGUxNiB3VG90YWxMZW5ndGg7ICAgX191OCBiSW5Db2xsZWN0aW9uOyAgIF9fdTggYmFJbnRlcmZhY2VOcltuXTsgIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpCisjZGVmaW5lIERFQ0xBUkVfVUFDX0FDX0hFQURFUl9ERVNDUklQVE9SKG4pIHN0cnVjdCB1YWMxX2FjX2hlYWRlcl9kZXNjcmlwdG9yXyAjI24geyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgX19sZTE2IGJjZEFEQzsgX19sZTE2IHdUb3RhbExlbmd0aDsgX191OCBiSW5Db2xsZWN0aW9uOyBfX3U4IGJhSW50ZXJmYWNlTnJbbl07IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWFjX2lucHV0X3Rlcm1pbmFsX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlRlcm1pbmFsSUQ7Ci0gX19sZTE2IHdUZXJtaW5hbFR5cGU7Ci0gX191OCBiQXNzb2NUZXJtaW5hbDsKLSBfX3U4IGJOckNoYW5uZWxzOworICBfX3U4IGJUZXJtaW5hbElEOworICBfX2xlMTYgd1Rlcm1pbmFsVHlwZTsKKyAgX191OCBiQXNzb2NUZXJtaW5hbDsKKyAgX191OCBiTnJDaGFubmVsczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdDaGFubmVsQ29uZmlnOwotIF9fdTggaUNoYW5uZWxOYW1lczsKLSBfX3U4IGlUZXJtaW5hbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd0NoYW5uZWxDb25maWc7CisgIF9fdTggaUNoYW5uZWxOYW1lczsKKyAgX191OCBpVGVybWluYWw7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX0RUX0lOUFVUX1RFUk1JTkFMX1NJWkUgMTIKICNkZWZpbmUgVUFDX0lOUFVUX1RFUk1JTkFMX1VOREVGSU5FRCAweDIwMApAQCAtMTYzLDE3ICsxNjQsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQ19URVJNSU5BTF9DU19DT1BZX1BST1RFQ1RfQ09OVFJPTCAweDAxCiBzdHJ1Y3QgdWFjMV9vdXRwdXRfdGVybWluYWxfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJUZXJtaW5hbElEOwotIF9fbGUxNiB3VGVybWluYWxUeXBlOwotIF9fdTggYkFzc29jVGVybWluYWw7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJUZXJtaW5hbElEOworICBfX2xlMTYgd1Rlcm1pbmFsVHlwZTsKKyAgX191OCBiQXNzb2NUZXJtaW5hbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiU291cmNlSUQ7Ci0gX191OCBpVGVybWluYWw7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiU291cmNlSUQ7CisgIF9fdTggaVRlcm1pbmFsOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVUFDX0RUX09VVFBVVF9URVJNSU5BTF9TSVpFIDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQ19PVVRQVVRfVEVSTUlOQUxfVU5ERUZJTkVEIDB4MzAwCkBAIC0xODcsNTkgKzE4OCw2MCBAQAogI2RlZmluZSBVQUNfT1VUUFVUX1RFUk1JTkFMX0xPV19GUkVRX0VGRkVDVFNfU1BFQUtFUiAweDMwNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX0RUX0ZFQVRVUkVfVU5JVF9TSVpFKGNoKSAoNyArICgoY2gpICsgMSkgKiAyKQotI2RlZmluZSBERUNMQVJFX1VBQ19GRUFUVVJFX1VOSVRfREVTQ1JJUFRPUihjaCkgIHN0cnVjdCB1YWNfZmVhdHVyZV91bml0X2Rlc2NyaXB0b3JfIyNjaCB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyAgIF9fdTggYlVuaXRJRDsgICBfX3U4IGJTb3VyY2VJRDsgICBfX3U4IGJDb250cm9sU2l6ZTsgICBfX2xlMTYgYm1hQ29udHJvbHNbY2ggKyAxXTsgICBfX3U4IGlGZWF0dXJlOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgREVDTEFSRV9VQUNfRkVBVFVSRV9VTklUX0RFU0NSSVBUT1IoY2gpIHN0cnVjdCB1YWNfZmVhdHVyZV91bml0X2Rlc2NyaXB0b3JfICMjY2ggeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgX191OCBiVW5pdElEOyBfX3U4IGJTb3VyY2VJRDsgX191OCBiQ29udHJvbFNpemU7IF9fbGUxNiBibWFDb250cm9sc1tjaCArIDFdOyBfX3U4IGlGZWF0dXJlOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiBzdHJ1Y3QgdWFjX21peGVyX3VuaXRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYlVuaXRJRDsKLSBfX3U4IGJOckluUGluczsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJVbml0SUQ7CisgIF9fdTggYk5ySW5QaW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhU291cmNlSURbXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJhU291cmNlSURbXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdWFjX3NlbGVjdG9yX3VuaXRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYlVpbnRJRDsKLSBfX3U4IGJOckluUGluczsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJVaW50SUQ7CisgIF9fdTggYk5ySW5QaW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhU291cmNlSURbXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJhU291cmNlSURbXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdWFjX2ZlYXR1cmVfdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiVW5pdElEOwotIF9fdTggYlNvdXJjZUlEOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYlVuaXRJRDsKKyAgX191OCBiU291cmNlSUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkNvbnRyb2xTaXplOwotIF9fdTggYm1hQ29udHJvbHNbMF07CisgIF9fdTggYkNvbnRyb2xTaXplOworICBfX3U4IGJtYUNvbnRyb2xzWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1YWNfcHJvY2Vzc2luZ191bml0X2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiVW5pdElEOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiVW5pdElEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3UHJvY2Vzc1R5cGU7Ci0gX191OCBiTnJJblBpbnM7Ci0gX191OCBiYVNvdXJjZUlEW107Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191MTYgd1Byb2Nlc3NUeXBlOworICBfX3U4IGJOckluUGluczsKKyAgX191OCBiYVNvdXJjZUlEW107Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YWMxX2FzX2hlYWRlcl9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJUZXJtaW5hbExpbms7Ci0gX191OCBiRGVsYXk7Ci0gX19sZTE2IHdGb3JtYXRUYWc7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiVGVybWluYWxMaW5rOworICBfX3U4IGJEZWxheTsKKyAgX19sZTE2IHdGb3JtYXRUYWc7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX0RUX0FTX0hFQURFUl9TSVpFIDcKICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lfVU5ERUZJTkVEIDB4MApAQCAtMjUxLDc3ICsyNTMsNzggQEAKICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lfTVVMQVcgMHg1CiBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lfY29udGludW91c19kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYkZvcm1hdFR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJGb3JtYXRUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJOckNoYW5uZWxzOwotIF9fdTggYlN1YmZyYW1lU2l6ZTsKLSBfX3U4IGJCaXRSZXNvbHV0aW9uOwotIF9fdTggYlNhbUZyZXFUeXBlOworICBfX3U4IGJOckNoYW5uZWxzOworICBfX3U4IGJTdWJmcmFtZVNpemU7CisgIF9fdTggYkJpdFJlc29sdXRpb247CisgIF9fdTggYlNhbUZyZXFUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRMb3dlclNhbUZyZXFbM107Ci0gX191OCB0VXBwZXJTYW1GcmVxWzNdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggdExvd2VyU2FtRnJlcVszXTsKKyAgX191OCB0VXBwZXJTYW1GcmVxWzNdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lfQ09OVElOVU9VU19ERVNDX1NJWkUgMTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lfZGlzY3JldGVfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRm9ybWF0VHlwZTsKLSBfX3U4IGJOckNoYW5uZWxzOwotIF9fdTggYlN1YmZyYW1lU2l6ZTsKLSBfX3U4IGJCaXRSZXNvbHV0aW9uOworICBfX3U4IGJGb3JtYXRUeXBlOworICBfX3U4IGJOckNoYW5uZWxzOworICBfX3U4IGJTdWJmcmFtZVNpemU7CisgIF9fdTggYkJpdFJlc29sdXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlNhbUZyZXFUeXBlOwotIF9fdTggdFNhbUZyZXFbXVszXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOwotI2RlZmluZSBERUNMQVJFX1VBQ19GT1JNQVRfVFlQRV9JX0RJU0NSRVRFX0RFU0MobikgIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaV9kaXNjcmV0ZV9kZXNjcmlwdG9yXyMjbiB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyAgIF9fdTggYkZvcm1hdFR5cGU7ICAgX191OCBiTnJDaGFubmVsczsgICBfX3U4IGJTdWJmcmFtZVNpemU7ICAgX191OCBiQml0UmVzb2x1dGlvbjsgICBfX3U4IGJTYW1GcmVxVHlwZTsgICBfX3U4IHRTYW1GcmVxW25dWzNdOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyAgX191OCBiU2FtRnJlcVR5cGU7CisgIF9fdTggdFNhbUZyZXFbXVszXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisjZGVmaW5lIERFQ0xBUkVfVUFDX0ZPUk1BVF9UWVBFX0lfRElTQ1JFVEVfREVTQyhuKSBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lfZGlzY3JldGVfZGVzY3JpcHRvcl8gIyNuIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7IF9fdTggYkZvcm1hdFR5cGU7IF9fdTggYk5yQ2hhbm5lbHM7IF9fdTggYlN1YmZyYW1lU2l6ZTsgX191OCBiQml0UmVzb2x1dGlvbjsgX191OCBiU2FtRnJlcVR5cGU7IF9fdTggdFNhbUZyZXFbbl1bM107IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQ19GT1JNQVRfVFlQRV9JX0RJU0NSRVRFX0RFU0NfU0laRShuKSAoOCArIChuICogMykpCiBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lfZXh0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiRm9ybWF0VHlwZTsKLSBfX3U4IGJTdWJzbG90U2l6ZTsKLSBfX3U4IGJCaXRSZXNvbHV0aW9uOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiRm9ybWF0VHlwZTsKKyAgX191OCBiU3Vic2xvdFNpemU7CisgIF9fdTggYkJpdFJlc29sdXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkhlYWRlckxlbmd0aDsKLSBfX3U4IGJDb250cm9sU2l6ZTsKLSBfX3U4IGJTaWRlQmFuZFByb3RvY29sOworICBfX3U4IGJIZWFkZXJMZW5ndGg7CisgIF9fdTggYkNvbnRyb2xTaXplOworICBfX3U4IGJTaWRlQmFuZFByb3RvY29sOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQ19GT1JNQVRfVFlQRV9JSV9NUEVHIDB4MTAwMQogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSUlfQUMzIDB4MTAwMgogc3RydWN0IHVhY19mb3JtYXRfdHlwZV9paV9kaXNjcmV0ZV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiRm9ybWF0VHlwZTsKLSBfX2xlMTYgd01heEJpdFJhdGU7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiRm9ybWF0VHlwZTsKKyAgX19sZTE2IHdNYXhCaXRSYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd1NhbXBsZXNQZXJGcmFtZTsKLSBfX3U4IGJTYW1GcmVxVHlwZTsKLSBfX3U4IHRTYW1GcmVxW11bM107CisgIF9fbGUxNiB3U2FtcGxlc1BlckZyYW1lOworICBfX3U4IGJTYW1GcmVxVHlwZTsKKyAgX191OCB0U2FtRnJlcVtdWzNdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lpX2V4dF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJGb3JtYXRUeXBlOwotIF9fdTE2IHdNYXhCaXRSYXRlOwotIF9fdTE2IHdTYW1wbGVzUGVyRnJhbWU7Ci0gX191OCBiSGVhZGVyTGVuZ3RoOworICBfX3U4IGJGb3JtYXRUeXBlOworICBfX3UxNiB3TWF4Qml0UmF0ZTsKKyAgX191MTYgd1NhbXBsZXNQZXJGcmFtZTsKKyAgX191OCBiSGVhZGVyTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJTaWRlQmFuZFByb3RvY29sOworICBfX3U4IGJTaWRlQmFuZFByb3RvY29sOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lJSV9JRUMxOTM3X0FDMyAweDIwMDEKICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lJSV9JRUMxOTM3X01QRUcxX0xBWUVSMSAweDIwMDIKQEAgLTM0MSwxMyArMzQ0LDEzIEBACiAjZGVmaW5lIFVBQ19FWFRfRk9STUFUX1RZUEVfSUlJIDB4ODMKIHN0cnVjdCB1YWNfaXNvX2VuZHBvaW50X2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBibUF0dHJpYnV0ZXM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJtQXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTG9ja0RlbGF5VW5pdHM7Ci0gX19sZTE2IHdMb2NrRGVsYXk7CisgIF9fdTggYkxvY2tEZWxheVVuaXRzOworICBfX2xlMTYgd0xvY2tEZWxheTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVBQ19JU09fRU5EUE9JTlRfREVTQ19TSVpFIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zNjMsOCArMzY2LDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBQzFfU1RBVFVTX1RZUEVfTUVNX0NIQU5HRUQgKDEgPDwgNikKIHN0cnVjdCB1YWMxX3N0YXR1c193b3JkIHsKLSBfX3U4IGJTdGF0dXNUeXBlOwotIF9fdTggYk9yaWdpbmF0b3I7CisgIF9fdTggYlN0YXR1c1R5cGU7CisgIF9fdTggYk9yaWdpbmF0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLXdkbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLXdkbS5oCmluZGV4IGUxNzBmNTkuLjIzODU1YmQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NkYy13ZG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMtd2RtLmgKQEAgLTE4LDYgKzE4LDcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfVUFQSV9fTElOVVhfVVNCX0NEQ19XRE1fSAogI2RlZmluZSBfVUFQSV9fTElOVVhfVVNCX0NEQ19XRE1fSAorI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIElPQ1RMX1dETV9NQVhfQ09NTUFORCBfSU9SKCdIJywgMHhBMCwgX191MTYpCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NkYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLmgKaW5kZXggMTcyNzhlMS4uODExMjNjYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLmgKQEAgLTYyLDMxMiArNjIsMzIzIEBACiAjZGVmaW5lIFVTQl9DRENfTkNNX1RZUEUgMHgxYQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0NEQ19NQklNX1RZUEUgMHgxYgorI2RlZmluZSBVU0JfQ0RDX01CSU1fRVhURU5ERURfVFlQRSAweDFjCiBzdHJ1Y3QgdXNiX2NkY19oZWFkZXJfZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fbGUxNiBiY2RDREM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX2xlMTYgYmNkQ0RDOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2NkY19jYWxsX21nbXRfZGVzY3JpcHRvciB7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBibUNhcGFiaWxpdGllczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggYm1DYXBhYmlsaXRpZXM7CiAjZGVmaW5lIFVTQl9DRENfQ0FMTF9NR01UX0NBUF9DQUxMX01HTVQgMHgwMQogI2RlZmluZSBVU0JfQ0RDX0NBTExfTUdNVF9DQVBfREFUQV9JTlRGIDB4MDIKLSBfX3U4IGJEYXRhSW50ZXJmYWNlOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYkRhdGFJbnRlcmZhY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX2FjbV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm1DYXBhYmlsaXRpZXM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYm1DYXBhYmlsaXRpZXM7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfQ0RDX0NPTU1fRkVBVFVSRSAweDAxCi0jZGVmaW5lIFVTQl9DRENfQ0FQX0xJTkUgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19DQVBfTElORSAweDAyCiAjZGVmaW5lIFVTQl9DRENfQ0FQX0JSSyAweDA0CiAjZGVmaW5lIFVTQl9DRENfQ0FQX05PVElGWSAweDA4CiBzdHJ1Y3QgdXNiX2NkY191bmlvbl9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggYk1hc3RlckludGVyZmFjZTA7Ci0gX191OCBiU2xhdmVJbnRlcmZhY2UwOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTWFzdGVySW50ZXJmYWNlMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiU2xhdmVJbnRlcmZhY2UwOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX2NvdW50cnlfZnVuY3Rpb25hbF9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBpQ291bnRyeUNvZGVSZWxEYXRlOwotIF9fbGUxNiB3Q291bnR5Q29kZTA7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGlDb3VudHJ5Q29kZVJlbERhdGU7CisgIF9fbGUxNiB3Q291bnR5Q29kZTA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX25ldHdvcmtfdGVybWluYWxfZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJFbnRpdHlJZDsKLSBfX3U4IGlOYW1lOwotIF9fdTggYkNoYW5uZWxJbmRleDsKLSBfX3U4IGJQaHlzaWNhbEludGVyZmFjZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkVudGl0eUlkOworICBfX3U4IGlOYW1lOworICBfX3U4IGJDaGFubmVsSW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYlBoeXNpY2FsSW50ZXJmYWNlOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX2V0aGVyX2Rlc2MgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGlNQUNBZGRyZXNzOwotIF9fbGUzMiBibUV0aGVybmV0U3RhdGlzdGljczsKLSBfX2xlMTYgd01heFNlZ21lbnRTaXplOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggaU1BQ0FkZHJlc3M7CisgIF9fbGUzMiBibUV0aGVybmV0U3RhdGlzdGljczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdOdW1iZXJNQ0ZpbHRlcnM7Ci0gX191OCBiTnVtYmVyUG93ZXJGaWx0ZXJzOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3TWF4U2VnbWVudFNpemU7CisgIF9fbGUxNiB3TnVtYmVyTUNGaWx0ZXJzOworICBfX3U4IGJOdW1iZXJQb3dlckZpbHRlcnM7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfY2RjX2RtbV9kZXNjIHsKKyAgX191OCBiRnVuY3Rpb25MZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRnVuY3Rpb25MZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191MTYgYmNkVmVyc2lvbjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdNYXhDb21tYW5kOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTE2IGJjZFZlcnNpb247CisgIF9fbGUxNiB3TWF4Q29tbWFuZDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2NkY19tZGxtX2Rlc2MgewotIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX19sZTE2IGJjZFZlcnNpb247Ci0gX191OCBiR1VJRFsxNl07CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX2xlMTYgYmNkVmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiR1VJRFsxNl07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfbWRsbV9kZXRhaWxfZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggYkd1aWREZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXRhaWxEYXRhWzBdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiR3VpZERlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXRhaWxEYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2NkY19vYmV4X2Rlc2MgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGJjZFZlcnNpb247Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fbGUxNiBiY2RWZXJzaW9uOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX25jbV9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fbGUxNiBiY2ROY21WZXJzaW9uOwotIF9fdTggYm1OZXR3b3JrQ2FwYWJpbGl0aWVzOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX19sZTE2IGJjZE5jbVZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYm1OZXR3b3JrQ2FwYWJpbGl0aWVzOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX21iaW1fZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fbGUxNiBiY2RNQklNVmVyc2lvbjsKLSBfX2xlMTYgd01heENvbnRyb2xNZXNzYWdlOwotIF9fdTggYk51bWJlckZpbHRlcnM7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX19sZTE2IGJjZE1CSU1WZXJzaW9uOworICBfX2xlMTYgd01heENvbnRyb2xNZXNzYWdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJNYXhGaWx0ZXJTaXplOwotIF9fbGUxNiB3TWF4U2VnbWVudFNpemU7Ci0gX191OCBibU5ldHdvcmtDYXBhYmlsaXRpZXM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiTnVtYmVyRmlsdGVyczsKKyAgX191OCBiTWF4RmlsdGVyU2l6ZTsKKyAgX19sZTE2IHdNYXhTZWdtZW50U2l6ZTsKKyAgX191OCBibU5ldHdvcmtDYXBhYmlsaXRpZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKK3N0cnVjdCB1c2JfY2RjX21iaW1fZXh0ZW5kZWRfZGVzYyB7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX19sZTE2IGJjZE1CSU1FeHRlbmRlZFZlcnNpb247CisgIF9fdTggYk1heE91dHN0YW5kaW5nQ29tbWFuZE1lc3NhZ2VzOworICBfX2xlMTYgd01UVTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfQ0RDX1NFTkRfRU5DQVBTVUxBVEVEX0NPTU1BTkQgMHgwMAogI2RlZmluZSBVU0JfQ0RDX0dFVF9FTkNBUFNVTEFURURfUkVTUE9OU0UgMHgwMQogI2RlZmluZSBVU0JfQ0RDX1JFUV9TRVRfTElORV9DT0RJTkcgMHgyMAotI2RlZmluZSBVU0JfQ0RDX1JFUV9HRVRfTElORV9DT0RJTkcgMHgyMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19SRVFfR0VUX0xJTkVfQ09ESU5HIDB4MjEKICNkZWZpbmUgVVNCX0NEQ19SRVFfU0VUX0NPTlRST0xfTElORV9TVEFURSAweDIyCiAjZGVmaW5lIFVTQl9DRENfUkVRX1NFTkRfQlJFQUsgMHgyMwogI2RlZmluZSBVU0JfQ0RDX1NFVF9FVEhFUk5FVF9NVUxUSUNBU1RfRklMVEVSUyAweDQwCi0jZGVmaW5lIFVTQl9DRENfU0VUX0VUSEVSTkVUX1BNX1BBVFRFUk5fRklMVEVSIDB4NDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfU0VUX0VUSEVSTkVUX1BNX1BBVFRFUk5fRklMVEVSIDB4NDEKICNkZWZpbmUgVVNCX0NEQ19HRVRfRVRIRVJORVRfUE1fUEFUVEVSTl9GSUxURVIgMHg0MgogI2RlZmluZSBVU0JfQ0RDX1NFVF9FVEhFUk5FVF9QQUNLRVRfRklMVEVSIDB4NDMKICNkZWZpbmUgVVNCX0NEQ19HRVRfRVRIRVJORVRfU1RBVElTVElDIDB4NDQKLSNkZWZpbmUgVVNCX0NEQ19HRVRfTlRCX1BBUkFNRVRFUlMgMHg4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19HRVRfTlRCX1BBUkFNRVRFUlMgMHg4MAogI2RlZmluZSBVU0JfQ0RDX0dFVF9ORVRfQUREUkVTUyAweDgxCiAjZGVmaW5lIFVTQl9DRENfU0VUX05FVF9BRERSRVNTIDB4ODIKICNkZWZpbmUgVVNCX0NEQ19HRVRfTlRCX0ZPUk1BVCAweDgzCi0jZGVmaW5lIFVTQl9DRENfU0VUX05UQl9GT1JNQVQgMHg4NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19TRVRfTlRCX0ZPUk1BVCAweDg0CiAjZGVmaW5lIFVTQl9DRENfR0VUX05UQl9JTlBVVF9TSVpFIDB4ODUKICNkZWZpbmUgVVNCX0NEQ19TRVRfTlRCX0lOUFVUX1NJWkUgMHg4NgogI2RlZmluZSBVU0JfQ0RDX0dFVF9NQVhfREFUQUdSQU1fU0laRSAweDg3Ci0jZGVmaW5lIFVTQl9DRENfU0VUX01BWF9EQVRBR1JBTV9TSVpFIDB4ODgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfU0VUX01BWF9EQVRBR1JBTV9TSVpFIDB4ODgKICNkZWZpbmUgVVNCX0NEQ19HRVRfQ1JDX01PREUgMHg4OQogI2RlZmluZSBVU0JfQ0RDX1NFVF9DUkNfTU9ERSAweDhhCiBzdHJ1Y3QgdXNiX2NkY19saW5lX2NvZGluZyB7Ci0gX19sZTMyIGR3RFRFUmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQ2hhckZvcm1hdDsKKyAgX19sZTMyIGR3RFRFUmF0ZTsKKyAgX191OCBiQ2hhckZvcm1hdDsKICNkZWZpbmUgVVNCX0NEQ18xX1NUT1BfQklUUyAwCiAjZGVmaW5lIFVTQl9DRENfMV81X1NUT1BfQklUUyAxCi0jZGVmaW5lIFVTQl9DRENfMl9TVE9QX0JJVFMgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJQYXJpdHlUeXBlOworI2RlZmluZSBVU0JfQ0RDXzJfU1RPUF9CSVRTIDIKKyAgX191OCBiUGFyaXR5VHlwZTsKICNkZWZpbmUgVVNCX0NEQ19OT19QQVJJVFkgMAogI2RlZmluZSBVU0JfQ0RDX09ERF9QQVJJVFkgMQotI2RlZmluZSBVU0JfQ0RDX0VWRU5fUEFSSVRZIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfRVZFTl9QQVJJVFkgMgogI2RlZmluZSBVU0JfQ0RDX01BUktfUEFSSVRZIDMKICNkZWZpbmUgVVNCX0NEQ19TUEFDRV9QQVJJVFkgNAotIF9fdTggYkRhdGFCaXRzOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYkRhdGFCaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfUEFDS0VUX1RZUEVfUFJPTUlTQ1VPVVMgKDEgPDwgMCkKICNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9BTExfTVVMVElDQVNUICgxIDw8IDEpCiAjZGVmaW5lIFVTQl9DRENfUEFDS0VUX1RZUEVfRElSRUNURUQgKDEgPDwgMikKLSNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9CUk9BRENBU1QgKDEgPDwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfUEFDS0VUX1RZUEVfQlJPQURDQVNUICgxIDw8IDMpCiAjZGVmaW5lIFVTQl9DRENfUEFDS0VUX1RZUEVfTVVMVElDQVNUICgxIDw8IDQpCiAjZGVmaW5lIFVTQl9DRENfTk9USUZZX05FVFdPUktfQ09OTkVDVElPTiAweDAwCiAjZGVmaW5lIFVTQl9DRENfTk9USUZZX1JFU1BPTlNFX0FWQUlMQUJMRSAweDAxCi0jZGVmaW5lIFVTQl9DRENfTk9USUZZX1NFUklBTF9TVEFURSAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX05PVElGWV9TRVJJQUxfU1RBVEUgMHgyMAogI2RlZmluZSBVU0JfQ0RDX05PVElGWV9TUEVFRF9DSEFOR0UgMHgyYQogc3RydWN0IHVzYl9jZGNfbm90aWZpY2F0aW9uIHsKLSBfX3U4IGJtUmVxdWVzdFR5cGU7Ci0gX191OCBiTm90aWZpY2F0aW9uVHlwZTsKKyAgX191OCBibVJlcXVlc3RUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd1ZhbHVlOwotIF9fbGUxNiB3SW5kZXg7Ci0gX19sZTE2IHdMZW5ndGg7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiTm90aWZpY2F0aW9uVHlwZTsKKyAgX19sZTE2IHdWYWx1ZTsKKyAgX19sZTE2IHdJbmRleDsKKyAgX19sZTE2IHdMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX3NwZWVkX2NoYW5nZSB7Ci0gX19sZTMyIERMQml0UlJhdGU7Ci0gX19sZTMyIFVMQml0UmF0ZTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMzIgRExCaXRSUmF0ZTsKKyAgX19sZTMyIFVMQml0UmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfbmNtX250Yl9wYXJhbWV0ZXJzIHsKLSBfX2xlMTYgd0xlbmd0aDsKLSBfX2xlMTYgYm1OdGJGb3JtYXRzU3VwcG9ydGVkOwotIF9fbGUzMiBkd050YkluTWF4U2l6ZTsKKyAgX19sZTE2IHdMZW5ndGg7CisgIF9fbGUxNiBibU50YkZvcm1hdHNTdXBwb3J0ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3TmRwSW5EaXZpc29yOwotIF9fbGUxNiB3TmRwSW5QYXlsb2FkUmVtYWluZGVyOwotIF9fbGUxNiB3TmRwSW5BbGlnbm1lbnQ7Ci0gX19sZTE2IHdQYWRkaW5nMTsKKyAgX19sZTMyIGR3TnRiSW5NYXhTaXplOworICBfX2xlMTYgd05kcEluRGl2aXNvcjsKKyAgX19sZTE2IHdOZHBJblBheWxvYWRSZW1haW5kZXI7CisgIF9fbGUxNiB3TmRwSW5BbGlnbm1lbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkd050Yk91dE1heFNpemU7Ci0gX19sZTE2IHdOZHBPdXREaXZpc29yOwotIF9fbGUxNiB3TmRwT3V0UGF5bG9hZFJlbWFpbmRlcjsKLSBfX2xlMTYgd05kcE91dEFsaWdubWVudDsKKyAgX19sZTE2IHdQYWRkaW5nMTsKKyAgX19sZTMyIGR3TnRiT3V0TWF4U2l6ZTsKKyAgX19sZTE2IHdOZHBPdXREaXZpc29yOworICBfX2xlMTYgd05kcE91dFBheWxvYWRSZW1haW5kZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3TnRiT3V0TWF4RGF0YWdyYW1zOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3TmRwT3V0QWxpZ25tZW50OworICBfX2xlMTYgd050Yk91dE1heERhdGFncmFtczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfTkNNX05USDE2X1NJR04gMHg0ODRENDM0RQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRIMzJfU0lHTiAweDY4NkQ2MzZFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jZGNfbmNtX250aDE2IHsKLSBfX2xlMzIgZHdTaWduYXR1cmU7Ci0gX19sZTE2IHdIZWFkZXJMZW5ndGg7Ci0gX19sZTE2IHdTZXF1ZW5jZTsKKyAgX19sZTMyIGR3U2lnbmF0dXJlOworICBfX2xlMTYgd0hlYWRlckxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdCbG9ja0xlbmd0aDsKLSBfX2xlMTYgd05kcEluZGV4OwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3U2VxdWVuY2U7CisgIF9fbGUxNiB3QmxvY2tMZW5ndGg7CisgIF9fbGUxNiB3TmRwSW5kZXg7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfY2RjX25jbV9udGgzMiB7CisgIF9fbGUzMiBkd1NpZ25hdHVyZTsKKyAgX19sZTE2IHdIZWFkZXJMZW5ndGg7CisgIF9fbGUxNiB3U2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkd1NpZ25hdHVyZTsKLSBfX2xlMTYgd0hlYWRlckxlbmd0aDsKLSBfX2xlMTYgd1NlcXVlbmNlOwotIF9fbGUzMiBkd0Jsb2NrTGVuZ3RoOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZHdOZHBJbmRleDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMzIgZHdCbG9ja0xlbmd0aDsKKyAgX19sZTMyIGR3TmRwSW5kZXg7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfQ0RDX05DTV9ORFAxNl9DUkNfU0lHTiAweDMxNEQ0MzRFCi0jZGVmaW5lIFVTQl9DRENfTkNNX05EUDE2X05PQ1JDX1NJR04gMHgzMDRENDM0RQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMTZfTk9DUkNfU0lHTiAweDMwNEQ0MzRFCiAjZGVmaW5lIFVTQl9DRENfTkNNX05EUDMyX0NSQ19TSUdOIDB4MzE2RDYzNkUKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMzJfTk9DUkNfU0lHTiAweDMwNkQ2MzZFCiAjZGVmaW5lIFVTQl9DRENfTUJJTV9ORFAxNl9JUFNfU0lHTiAweDAwNTM1MDQ5Ci0jZGVmaW5lIFVTQl9DRENfTUJJTV9ORFAzMl9JUFNfU0lHTiAweDAwNzM3MDY5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX01CSU1fTkRQMzJfSVBTX1NJR04gMHgwMDczNzA2OQogI2RlZmluZSBVU0JfQ0RDX01CSU1fTkRQMTZfRFNTX1NJR04gMHgwMDUzNTM0NAogI2RlZmluZSBVU0JfQ0RDX01CSU1fTkRQMzJfRFNTX1NJR04gMHgwMDczNzM2NAogc3RydWN0IHVzYl9jZGNfbmNtX2RwZTE2IHsKLSBfX2xlMTYgd0RhdGFncmFtSW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3RGF0YWdyYW1MZW5ndGg7CisgIF9fbGUxNiB3RGF0YWdyYW1JbmRleDsKKyAgX19sZTE2IHdEYXRhZ3JhbUxlbmd0aDsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IHVzYl9jZGNfbmNtX25kcDE2IHsKLSBfX2xlMzIgZHdTaWduYXR1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3TGVuZ3RoOwotIF9fbGUxNiB3TmV4dE5kcEluZGV4OwotIHN0cnVjdCB1c2JfY2RjX25jbV9kcGUxNiBkcGUxNlswXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMzIgZHdTaWduYXR1cmU7CisgIF9fbGUxNiB3TGVuZ3RoOworICBfX2xlMTYgd05leHROZHBJbmRleDsKKyAgc3RydWN0IHVzYl9jZGNfbmNtX2RwZTE2IGRwZTE2WzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2NkY19uY21fZHBlMzIgewotIF9fbGUzMiBkd0RhdGFncmFtSW5kZXg7Ci0gX19sZTMyIGR3RGF0YWdyYW1MZW5ndGg7CisgIF9fbGUzMiBkd0RhdGFncmFtSW5kZXg7CisgIF9fbGUzMiBkd0RhdGFncmFtTGVuZ3RoOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfY2RjX25jbV9uZHAzMiB7Ci0gX19sZTMyIGR3U2lnbmF0dXJlOwotIF9fbGUxNiB3TGVuZ3RoOwotIF9fbGUxNiB3UmVzZXJ2ZWQ2OworICBfX2xlMzIgZHdTaWduYXR1cmU7CisgIF9fbGUxNiB3TGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZHdOZXh0TmRwSW5kZXg7Ci0gX19sZTMyIGR3UmVzZXJ2ZWQxMjsKLSBzdHJ1Y3QgdXNiX2NkY19uY21fZHBlMzIgZHBlMzJbMF07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTE2IHdSZXNlcnZlZDY7CisgIF9fbGUzMiBkd05leHROZHBJbmRleDsKKyAgX19sZTMyIGR3UmVzZXJ2ZWQxMjsKKyAgc3RydWN0IHVzYl9jZGNfbmNtX2RwZTMyIGRwZTMyWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfTkNNX05EUDE2X0lOREVYX01JTiAweDAwMEMKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMzJfSU5ERVhfTUlOIDB4MDAxMAogI2RlZmluZSBVU0JfQ0RDX05DTV9EQVRBR1JBTV9GT1JNQVRfQ1JDIDB4MzAKLSNkZWZpbmUgVVNCX0NEQ19OQ01fREFUQUdSQU1fRk9STUFUX05PQ1JDIDBYMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfTkNNX0RBVEFHUkFNX0ZPUk1BVF9OT0NSQyAwWDMxCiAjZGVmaW5lIFVTQl9DRENfTkNNX1BST1RPX0NPREVfTk9fRU5DQVBfQ09NTUFORFMgMHgwMAogI2RlZmluZSBVU0JfQ0RDX05DTV9QUk9UT19DT0RFX0VYVEVSTl9QUk9UTyAweEZFCiAjZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfRVRIX0ZJTFRFUiAoMSA8PCAwKQotI2RlZmluZSBVU0JfQ0RDX05DTV9OQ0FQX05FVF9BRERSRVNTICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX05DTV9OQ0FQX05FVF9BRERSRVNTICgxIDw8IDEpCiAjZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfRU5DQVBfQ09NTUFORCAoMSA8PCAyKQogI2RlZmluZSBVU0JfQ0RDX05DTV9OQ0FQX01BWF9EQVRBR1JBTV9TSVpFICgxIDw8IDMpCiAjZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfQ1JDX01PREUgKDEgPDwgNCkKLSNkZWZpbmUgVVNCX0NEQ19OQ01fTkNBUF9OVEJfSU5QVVRfU0laRSAoMSA8PCA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19OQ01fTkNBUF9OVEJfSU5QVVRfU0laRSAoMSA8PCA1KQogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEIxNl9TVVBQT1JURUQgKDEgPDwgMCkKICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCMzJfU1VQUE9SVEVEICgxIDw8IDEpCiAjZGVmaW5lIFVTQl9DRENfTkNNX05EUF9BTElHTl9NSU5fU0laRSAweDA0Ci0jZGVmaW5lIFVTQl9DRENfTkNNX05UQl9NQVhfTEVOR1RIIDB4MUMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfTkNNX05UQl9NQVhfTEVOR1RIIDB4MUMKICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCMTZfRk9STUFUIDB4MDAKICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCMzJfRk9STUFUIDB4MDEKICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCX01JTl9JTl9TSVpFIDIwNDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9DRENfTkNNX05UQl9NSU5fT1VUX1NJWkUgMjA0OAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfY2RjX25jbV9uZHBfaW5wdXRfc2l6ZSB7Ci0gX19sZTMyIGR3TnRiSW5NYXhTaXplOwotIF9fbGUxNiB3TnRiSW5NYXhEYXRhZ3JhbXM7Ci0gX19sZTE2IHdSZXNlcnZlZDsKKyAgX19sZTMyIGR3TnRiSW5NYXhTaXplOworICBfX2xlMTYgd050YkluTWF4RGF0YWdyYW1zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd1Jlc2VydmVkOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0NEQ19OQ01fQ1JDX05PVF9BUFBFTkRFRCAweDAwCiAjZGVmaW5lIFVTQl9DRENfTkNNX0NSQ19BUFBFTkRFRCAweDAxCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NoMTEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NoMTEuaAppbmRleCBjYmUzZDcwLi5mODU4NWRmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jaDExLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2gxMS5oCkBAIC03MSw5ICs3MSw5IEBACiAjZGVmaW5lIFVTQl9QT1JUX0ZFQVRfUkVNT1RFX1dBS0VfT1ZFUl9DVVJSRU5UICgxIDw8IDEwKQogc3RydWN0IHVzYl9wb3J0X3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3UG9ydFN0YXR1czsKLSBfX2xlMTYgd1BvcnRDaGFuZ2U7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTE2IHdQb3J0U3RhdHVzOworICBfX2xlMTYgd1BvcnRDaGFuZ2U7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfUE9SVF9TVEFUX0NPTk5FQ1RJT04gMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfUE9SVF9TVEFUX0VOQUJMRSAweDAwMDIKQEAgLTkzLDcgKzkzLDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9TU19QT1JUX1NUQVRfU1BFRUQgMHgxYzAwCiAjZGVmaW5lIFVTQl9QT1JUX1NUQVRfU1BFRURfNUdCUFMgMHgwMDAwCi0jZGVmaW5lIFVTQl9TU19QT1JUX1NUQVRfTUFTSyAoVVNCX1BPUlRfU1RBVF9DT05ORUNUSU9OIHwgICBVU0JfUE9SVF9TVEFUX0VOQUJMRSB8ICAgVVNCX1BPUlRfU1RBVF9PVkVSQ1VSUkVOVCB8ICAgVVNCX1BPUlRfU1RBVF9SRVNFVCkKKyNkZWZpbmUgVVNCX1NTX1BPUlRfU1RBVF9NQVNLIChVU0JfUE9SVF9TVEFUX0NPTk5FQ1RJT04gfCBVU0JfUE9SVF9TVEFUX0VOQUJMRSB8IFVTQl9QT1JUX1NUQVRfT1ZFUkNVUlJFTlQgfCBVU0JfUE9SVF9TVEFUX1JFU0VUKQogI2RlZmluZSBVU0JfU1NfUE9SVF9MU19VMCAweDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9TU19QT1JUX0xTX1UxIDB4MDAyMApAQCAtMTM2LDkgKzEzNiw5IEBACiAjZGVmaW5lIEhVQl9DSEFSX1BPUlRJTkQgMHgwMDgwCiBzdHJ1Y3QgdXNiX2h1Yl9zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd0h1YlN0YXR1czsKLSBfX2xlMTYgd0h1YkNoYW5nZTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd0h1YlN0YXR1czsKKyAgX19sZTE2IHdIdWJDaGFuZ2U7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBIVUJfU1RBVFVTX0xPQ0FMX1BPV0VSIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSFVCX1NUQVRVU19PVkVSQ1VSUkVOVCAweDAwMDIKQEAgLTE1NywyOCArMTU3LDI4IEBACiAjZGVmaW5lIFVTQl9IVUJfUFJfU1MgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfaHViX2Rlc2NyaXB0b3IgewotIF9fdTggYkRlc2NMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiTmJyUG9ydHM7CisgIF9fdTggYkRlc2NMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJOYnJQb3J0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdIdWJDaGFyYWN0ZXJpc3RpY3M7Ci0gX191OCBiUHdyT24yUHdyR29vZDsKLSBfX3U4IGJIdWJDb250ckN1cnJlbnQ7Ci0gdW5pb24geworICBfX2xlMTYgd0h1YkNoYXJhY3RlcmlzdGljczsKKyAgX191OCBiUHdyT24yUHdyR29vZDsKKyAgX191OCBiSHViQ29udHJDdXJyZW50OworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBEZXZpY2VSZW1vdmFibGVbKFVTQl9NQVhDSElMRFJFTiArIDEgKyA3KSAvIDhdOwotIF9fdTggUG9ydFB3ckN0cmxNYXNrWyhVU0JfTUFYQ0hJTERSRU4gKyAxICsgNykgLyA4XTsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBoczsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCBEZXZpY2VSZW1vdmFibGVbKFVTQl9NQVhDSElMRFJFTiArIDEgKyA3KSAvIDhdOworICAgICAgX191OCBQb3J0UHdyQ3RybE1hc2tbKFVTQl9NQVhDSElMRFJFTiArIDEgKyA3KSAvIDhdOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgaHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBiSHViSGRyRGVjTGF0OwotIF9fbGUxNiB3SHViRGVsYXk7Ci0gX19sZTE2IERldmljZVJlbW92YWJsZTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCBiSHViSGRyRGVjTGF0OworICAgICAgX19sZTE2IHdIdWJEZWxheTsKKyAgICAgIF9fbGUxNiBEZXZpY2VSZW1vdmFibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHNzOwotIH0gdTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgc3M7CisgIH0gdTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIEhVQl9MRURfQVVUTyAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVUJfTEVEX0FNQkVSIDEKQEAgLTE4NiwxNiArMTg2LDIwIEBACiAjZGVmaW5lIEhVQl9MRURfT0ZGIDMKIGVudW0gaHViX2xlZF9tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5ESUNBVE9SX0FVVE8gPSAwLAotIElORElDQVRPUl9DWUNMRSwKLSBJTkRJQ0FUT1JfR1JFRU5fQkxJTkssIElORElDQVRPUl9HUkVFTl9CTElOS19PRkYsCi0gSU5ESUNBVE9SX0FNQkVSX0JMSU5LLCBJTkRJQ0FUT1JfQU1CRVJfQkxJTktfT0ZGLAorICBJTkRJQ0FUT1JfQVVUTyA9IDAsCisgIElORElDQVRPUl9DWUNMRSwKKyAgSU5ESUNBVE9SX0dSRUVOX0JMSU5LLAorICBJTkRJQ0FUT1JfR1JFRU5fQkxJTktfT0ZGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkRJQ0FUT1JfQUxUX0JMSU5LLCBJTkRJQ0FUT1JfQUxUX0JMSU5LX09GRgotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIElORElDQVRPUl9BTUJFUl9CTElOSywKKyAgSU5ESUNBVE9SX0FNQkVSX0JMSU5LX09GRiwKKyAgSU5ESUNBVE9SX0FMVF9CTElOSywKKyAgSU5ESUNBVE9SX0FMVF9CTElOS19PRkYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBIVUJfVFRUVF84X0JJVFMgMHgwMAogI2RlZmluZSBIVUJfVFRUVF8xNl9CSVRTIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhVQl9UVFRUXzI0X0JJVFMgMHg0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSFVCX1RUVFRfMzJfQklUUyAweDYwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NoOS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2g5LmgKaW5kZXggM2Y1Yjk5Yi4uYzJkZDkyZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2g5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2g5LmgKQEAgLTEwNiwxMyArMTA2LDEzIEBACiAjZGVmaW5lIFVTQl9ERVZfU1RBVF9MVE1fRU5BQkxFRCA0CiBzdHJ1Y3QgdXNiX2N0cmxyZXF1ZXN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiUmVxdWVzdFR5cGU7Ci0gX191OCBiUmVxdWVzdDsKLSBfX2xlMTYgd1ZhbHVlOwotIF9fbGUxNiB3SW5kZXg7CisgIF9fdTggYlJlcXVlc3RUeXBlOworICBfX3U4IGJSZXF1ZXN0OworICBfX2xlMTYgd1ZhbHVlOworICBfX2xlMTYgd0luZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd0xlbmd0aDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd0xlbmd0aDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9ERVZJQ0UgMHgwMQogI2RlZmluZSBVU0JfRFRfQ09ORklHIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNDgsMzAgKzE0OCwzMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0RUX0NTX0VORFBPSU5UIChVU0JfVFlQRV9DTEFTUyB8IFVTQl9EVF9FTkRQT0lOVCkKIHN0cnVjdCB1c2JfZGVzY3JpcHRvcl9oZWFkZXIgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2RldmljZV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBiY2RVU0I7Ci0gX191OCBiRGV2aWNlQ2xhc3M7Ci0gX191OCBiRGV2aWNlU3ViQ2xhc3M7Ci0gX191OCBiRGV2aWNlUHJvdG9jb2w7CisgIF9fbGUxNiBiY2RVU0I7CisgIF9fdTggYkRldmljZUNsYXNzOworICBfX3U4IGJEZXZpY2VTdWJDbGFzczsKKyAgX191OCBiRGV2aWNlUHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk1heFBhY2tldFNpemUwOwotIF9fbGUxNiBpZFZlbmRvcjsKLSBfX2xlMTYgaWRQcm9kdWN0OwotIF9fbGUxNiBiY2REZXZpY2U7CisgIF9fdTggYk1heFBhY2tldFNpemUwOworICBfX2xlMTYgaWRWZW5kb3I7CisgIF9fbGUxNiBpZFByb2R1Y3Q7CisgIF9fbGUxNiBiY2REZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaU1hbnVmYWN0dXJlcjsKLSBfX3U4IGlQcm9kdWN0OwotIF9fdTggaVNlcmlhbE51bWJlcjsKLSBfX3U4IGJOdW1Db25maWd1cmF0aW9uczsKKyAgX191OCBpTWFudWZhY3R1cmVyOworICBfX3U4IGlQcm9kdWN0OworICBfX3U4IGlTZXJpYWxOdW1iZXI7CisgIF9fdTggYk51bUNvbmZpZ3VyYXRpb25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX0RFVklDRV9TSVpFIDE4CiAjZGVmaW5lIFVTQl9DTEFTU19QRVJfSU5URVJGQUNFIDAKICNkZWZpbmUgVVNCX0NMQVNTX0FVRElPIDEKQEAgLTE5NywxNyArMTk3LDE3IEBACiAjZGVmaW5lIFVTQl9TVUJDTEFTU19WRU5ET1JfU1BFQyAweGZmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jb25maWdfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fbGUxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fbGUxNiB3VG90YWxMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk51bUludGVyZmFjZXM7Ci0gX191OCBiQ29uZmlndXJhdGlvblZhbHVlOwotIF9fdTggaUNvbmZpZ3VyYXRpb247Ci0gX191OCBibUF0dHJpYnV0ZXM7CisgIF9fdTggYk51bUludGVyZmFjZXM7CisgIF9fdTggYkNvbmZpZ3VyYXRpb25WYWx1ZTsKKyAgX191OCBpQ29uZmlndXJhdGlvbjsKKyAgX191OCBibUF0dHJpYnV0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk1heFBvd2VyOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYk1heFBvd2VyOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX0NPTkZJR19TSVpFIDkKICNkZWZpbmUgVVNCX0NPTkZJR19BVFRfT05FICgxIDw8IDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMjE2LDM4ICsyMTYsMzggQEAKICNkZWZpbmUgVVNCX0NPTkZJR19BVFRfQkFUVEVSWSAoMSA8PCA0KQogc3RydWN0IHVzYl9zdHJpbmdfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX2xlMTYgd0RhdGFbMV07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX19sZTE2IHdEYXRhWzFdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2ludGVyZmFjZV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiSW50ZXJmYWNlTnVtYmVyOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJJbnRlcmZhY2VOdW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkFsdGVybmF0ZVNldHRpbmc7Ci0gX191OCBiTnVtRW5kcG9pbnRzOwotIF9fdTggYkludGVyZmFjZUNsYXNzOwotIF9fdTggYkludGVyZmFjZVN1YkNsYXNzOworICBfX3U4IGJBbHRlcm5hdGVTZXR0aW5nOworICBfX3U4IGJOdW1FbmRwb2ludHM7CisgIF9fdTggYkludGVyZmFjZUNsYXNzOworICBfX3U4IGJJbnRlcmZhY2VTdWJDbGFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiSW50ZXJmYWNlUHJvdG9jb2w7Ci0gX191OCBpSW50ZXJmYWNlOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYkludGVyZmFjZVByb3RvY29sOworICBfX3U4IGlJbnRlcmZhY2U7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfSU5URVJGQUNFX1NJWkUgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfZW5kcG9pbnRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkVuZHBvaW50QWRkcmVzczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRW5kcG9pbnRBZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJtQXR0cmlidXRlczsKLSBfX2xlMTYgd01heFBhY2tldFNpemU7Ci0gX191OCBiSW50ZXJ2YWw7Ci0gX191OCBiUmVmcmVzaDsKKyAgX191OCBibUF0dHJpYnV0ZXM7CisgIF9fbGUxNiB3TWF4UGFja2V0U2l6ZTsKKyAgX191OCBiSW50ZXJ2YWw7CisgIF9fdTggYlJlZnJlc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlN5bmNoQWRkcmVzczsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJTeW5jaEFkZHJlc3M7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfRU5EUE9JTlRfU0laRSA3CiAjZGVmaW5lIFVTQl9EVF9FTkRQT0lOVF9BVURJT19TSVpFIDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0yNzcsMTE4ICsyNzcsMTE4IEBACiAjZGVmaW5lIFVTQl9FTkRQT0lOVF9VU0FHRV9JTVBMSUNJVF9GQiAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9zc19lcF9jb21wX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJNYXhCdXJzdDsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTWF4QnVyc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm1BdHRyaWJ1dGVzOwotIF9fbGUxNiB3Qnl0ZXNQZXJJbnRlcnZhbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJtQXR0cmlidXRlczsKKyAgX19sZTE2IHdCeXRlc1BlckludGVydmFsOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX1NTX0VQX0NPTVBfU0laRSA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfU1NfTVVMVChwKSAoMSArICgocCkgJiAweDMpKQogc3RydWN0IHVzYl9xdWFsaWZpZXJfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgYmNkVVNCOwotIF9fdTggYkRldmljZUNsYXNzOwotIF9fdTggYkRldmljZVN1YkNsYXNzOwotIF9fdTggYkRldmljZVByb3RvY29sOworICBfX2xlMTYgYmNkVVNCOworICBfX3U4IGJEZXZpY2VDbGFzczsKKyAgX191OCBiRGV2aWNlU3ViQ2xhc3M7CisgIF9fdTggYkRldmljZVByb3RvY29sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJNYXhQYWNrZXRTaXplMDsKLSBfX3U4IGJOdW1Db25maWd1cmF0aW9uczsKLSBfX3U4IGJSRVNFUlZFRDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJNYXhQYWNrZXRTaXplMDsKKyAgX191OCBiTnVtQ29uZmlndXJhdGlvbnM7CisgIF9fdTggYlJFU0VSVkVEOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX290Z19kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBibUF0dHJpYnV0ZXM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYm1BdHRyaWJ1dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX09UR19TUlAgKDEgPDwgMCkKICNkZWZpbmUgVVNCX09UR19ITlAgKDEgPDwgMSkKIHN0cnVjdCB1c2JfZGVidWdfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZWJ1Z0luRW5kcG9pbnQ7Ci0gX191OCBiRGVidWdPdXRFbmRwb2ludDsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVidWdJbkVuZHBvaW50OworICBfX3U4IGJEZWJ1Z091dEVuZHBvaW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2ludGVyZmFjZV9hc3NvY19kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkZpcnN0SW50ZXJmYWNlOwotIF9fdTggYkludGVyZmFjZUNvdW50OwotIF9fdTggYkZ1bmN0aW9uQ2xhc3M7Ci0gX191OCBiRnVuY3Rpb25TdWJDbGFzczsKKyAgX191OCBiRmlyc3RJbnRlcmZhY2U7CisgIF9fdTggYkludGVyZmFjZUNvdW50OworICBfX3U4IGJGdW5jdGlvbkNsYXNzOworICBfX3U4IGJGdW5jdGlvblN1YkNsYXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJGdW5jdGlvblByb3RvY29sOwotIF9fdTggaUZ1bmN0aW9uOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYkZ1bmN0aW9uUHJvdG9jb2w7CisgIF9fdTggaUZ1bmN0aW9uOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2Jfc2VjdXJpdHlfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX2xlMTYgd1RvdGFsTGVuZ3RoOwotIF9fdTggYk51bUVuY3J5cHRpb25UeXBlczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX19sZTE2IHdUb3RhbExlbmd0aDsKKyAgX191OCBiTnVtRW5jcnlwdGlvblR5cGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2tleV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdFRLSURbM107Ci0gX191OCBiUmVzZXJ2ZWQ7Ci0gX191OCBiS2V5RGF0YVswXTsKKyAgX191OCB0VEtJRFszXTsKKyAgX191OCBiUmVzZXJ2ZWQ7CisgIF9fdTggYktleURhdGFbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfZW5jcnlwdGlvbl9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRW5jcnlwdGlvblR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkVuY3J5cHRpb25UeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0VOQ19UWVBFX1VOU0VDVVJFIDAKICNkZWZpbmUgVVNCX0VOQ19UWVBFX1dJUkVEIDEKICNkZWZpbmUgVVNCX0VOQ19UWVBFX0NDTV8xIDIKICNkZWZpbmUgVVNCX0VOQ19UWVBFX1JTQV8xIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRW5jcnlwdGlvblZhbHVlOwotIF9fdTggYkF1dGhLZXlJbmRleDsKKyAgX191OCBiRW5jcnlwdGlvblZhbHVlOworICBfX3U4IGJBdXRoS2V5SW5kZXg7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9ib3NfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX2xlMTYgd1RvdGFsTGVuZ3RoOwotIF9fdTggYk51bURldmljZUNhcHM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fbGUxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYk51bURldmljZUNhcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX0JPU19TSVpFIDUKIHN0cnVjdCB1c2JfZGV2X2NhcF9oZWFkZXIgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXZDYXBhYmlsaXR5VHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0NBUF9UWVBFX1dJUkVMRVNTX1VTQiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl93aXJlbGVzc19jYXBfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXZDYXBhYmlsaXR5VHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibUF0dHJpYnV0ZXM7CisgIF9fdTggYm1BdHRyaWJ1dGVzOwogI2RlZmluZSBVU0JfV0lSRUxFU1NfUDJQX0RSRCAoMSA8PCAxKQogI2RlZmluZSBVU0JfV0lSRUxFU1NfQkVBQ09OX01BU0sgKDMgPDwgMikKICNkZWZpbmUgVVNCX1dJUkVMRVNTX0JFQUNPTl9TRUxGICgxIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfV0lSRUxFU1NfQkVBQ09OX0RJUkVDVEVEICgyIDw8IDIpCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19CRUFDT05fTk9ORSAoMyA8PCAyKQotIF9fbGUxNiB3UEhZUmF0ZXM7CisgIF9fbGUxNiB3UEhZUmF0ZXM7CiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QSFlfNTMgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QSFlfODAgKDEgPDwgMSkKQEAgLTM5OSwyMCArMzk5LDIwIEBACiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QSFlfMzIwICgxIDw8IDUpCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QSFlfNDAwICgxIDw8IDYpCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QSFlfNDgwICgxIDw8IDcpCi0gX191OCBibVRGSVRYUG93ZXJJbmZvOworICBfX3U4IGJtVEZJVFhQb3dlckluZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm1GRklUWFBvd2VySW5mbzsKLSBfX2xlMTYgYm1CYW5kR3JvdXA7Ci0gX191OCBiUmVzZXJ2ZWQ7CisgIF9fdTggYm1GRklUWFBvd2VySW5mbzsKKyAgX19sZTE2IGJtQmFuZEdyb3VwOworICBfX3U4IGJSZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfQ0FQX1RZUEVfRVhUIDIKIHN0cnVjdCB1c2JfZXh0X2NhcF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOwotIF9fbGUzMiBibUF0dHJpYnV0ZXM7CisgIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOworICBfX2xlMzIgYm1BdHRyaWJ1dGVzOwogI2RlZmluZSBVU0JfTFBNX1NVUFBPUlQgKDEgPDwgMSkKICNkZWZpbmUgVVNCX0JFU0xfU1VQUE9SVCAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTQyNiw0NyArNDI2LDQ3IEBACiAjZGVmaW5lIFVTQl9TU19DQVBfVFlQRSAzCiBzdHJ1Y3QgdXNiX3NzX2NhcF9kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOwotIF9fdTggYm1BdHRyaWJ1dGVzOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXZDYXBhYmlsaXR5VHlwZTsKKyAgX191OCBibUF0dHJpYnV0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfTFRNX1NVUFBPUlQgKDEgPDwgMSkKLSBfX2xlMTYgd1NwZWVkU3VwcG9ydGVkOworICBfX2xlMTYgd1NwZWVkU3VwcG9ydGVkOwogI2RlZmluZSBVU0JfTE9XX1NQRUVEX09QRVJBVElPTiAoMSkKICNkZWZpbmUgVVNCX0ZVTExfU1BFRURfT1BFUkFUSU9OICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfSElHSF9TUEVFRF9PUEVSQVRJT04gKDEgPDwgMikKICNkZWZpbmUgVVNCXzVHQlBTX09QRVJBVElPTiAoMSA8PCAzKQotIF9fdTggYkZ1bmN0aW9uYWxpdHlTdXBwb3J0OwotIF9fdTggYlUxZGV2RXhpdExhdDsKKyAgX191OCBiRnVuY3Rpb25hbGl0eVN1cHBvcnQ7CisgIF9fdTggYlUxZGV2RXhpdExhdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGJVMkRldkV4aXRMYXQ7CisgIF9fbGUxNiBiVTJEZXZFeGl0TGF0OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX1VTQl9TU19DQVBfU0laRSAxMAogI2RlZmluZSBDT05UQUlORVJfSURfVFlQRSA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9zc19jb250YWluZXJfaWRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXZDYXBhYmlsaXR5VHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiUmVzZXJ2ZWQ7Ci0gX191OCBDb250YWluZXJJRFsxNl07CisgIF9fdTggYlJlc2VydmVkOworICBfX3U4IENvbnRhaW5lcklEWzE2XTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9VU0JfU1NfQ09OVE5fSURfU0laRSAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2Jfd2lyZWxlc3NfZXBfY29tcF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiTWF4QnVyc3Q7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYk1heEJ1cnN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJNYXhTZXF1ZW5jZTsKLSBfX2xlMTYgd01heFN0cmVhbURlbGF5OwotIF9fbGUxNiB3T3ZlclRoZUFpclBhY2tldFNpemU7Ci0gX191OCBiT3ZlclRoZUFpckludGVydmFsOworICBfX3U4IGJNYXhTZXF1ZW5jZTsKKyAgX19sZTE2IHdNYXhTdHJlYW1EZWxheTsKKyAgX19sZTE2IHdPdmVyVGhlQWlyUGFja2V0U2l6ZTsKKyAgX191OCBiT3ZlclRoZUFpckludGVydmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJtQ29tcEF0dHJpYnV0ZXM7CisgIF9fdTggYm1Db21wQXR0cmlidXRlczsKICNkZWZpbmUgVVNCX0VORFBPSU5UX1NXSVRDSF9NQVNLIDB4MDMKICNkZWZpbmUgVVNCX0VORFBPSU5UX1NXSVRDSF9OTyAwCiAjZGVmaW5lIFVTQl9FTkRQT0lOVF9TV0lUQ0hfU1dJVENIIDEKQEAgLTQ3NCw2NyArNDc0LDY4IEBACiAjZGVmaW5lIFVTQl9FTkRQT0lOVF9TV0lUQ0hfU0NBTEUgMgogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfaGFuZHNoYWtlIHsKLSBfX3U4IGJNZXNzYWdlTnVtYmVyOworICBfX3U4IGJNZXNzYWdlTnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJTdGF0dXM7Ci0gX191OCB0VEtJRFszXTsKLSBfX3U4IGJSZXNlcnZlZDsKLSBfX3U4IENESURbMTZdOworICBfX3U4IGJTdGF0dXM7CisgIF9fdTggdFRLSURbM107CisgIF9fdTggYlJlc2VydmVkOworICBfX3U4IENESURbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5vbmNlWzE2XTsKLSBfX3U4IE1JQ1s4XTsKKyAgX191OCBub25jZVsxNl07CisgIF9fdTggTUlDWzhdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY29ubmVjdGlvbl9jb250ZXh0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBDSElEWzE2XTsKLSBfX3U4IENESURbMTZdOwotIF9fdTggQ0tbMTZdOworICBfX3U4IENISURbMTZdOworICBfX3U4IENESURbMTZdOworICBfX3U4IENLWzE2XTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB1c2JfZGV2aWNlX3NwZWVkIHsKLSBVU0JfU1BFRURfVU5LTk9XTiA9IDAsCi0gVVNCX1NQRUVEX0xPVywgVVNCX1NQRUVEX0ZVTEwsCi0gVVNCX1NQRUVEX0hJR0gsCisgIFVTQl9TUEVFRF9VTktOT1dOID0gMCwKKyAgVVNCX1NQRUVEX0xPVywKKyAgVVNCX1NQRUVEX0ZVTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVTQl9TUEVFRF9XSVJFTEVTUywKLSBVU0JfU1BFRURfU1VQRVIsCisgIFVTQl9TUEVFRF9ISUdILAorICBVU0JfU1BFRURfV0lSRUxFU1MsCisgIFVTQl9TUEVFRF9TVVBFUiwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB1c2JfZGV2aWNlX3N0YXRlIHsKKyAgVVNCX1NUQVRFX05PVEFUVEFDSEVEID0gMCwKKyAgVVNCX1NUQVRFX0FUVEFDSEVELAorICBVU0JfU1RBVEVfUE9XRVJFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVVNCX1NUQVRFX05PVEFUVEFDSEVEID0gMCwKLSBVU0JfU1RBVEVfQVRUQUNIRUQsCi0gVVNCX1NUQVRFX1BPV0VSRUQsCi0gVVNCX1NUQVRFX1JFQ09OTkVDVElORywKKyAgVVNCX1NUQVRFX1JFQ09OTkVDVElORywKKyAgVVNCX1NUQVRFX1VOQVVUSEVOVElDQVRFRCwKKyAgVVNCX1NUQVRFX0RFRkFVTFQsCisgIFVTQl9TVEFURV9BRERSRVNTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVU0JfU1RBVEVfVU5BVVRIRU5USUNBVEVELAotIFVTQl9TVEFURV9ERUZBVUxULAotIFVTQl9TVEFURV9BRERSRVNTLAotIFVTQl9TVEFURV9DT05GSUdVUkVELAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVU0JfU1RBVEVfU1VTUEVOREVECisgIFVTQl9TVEFURV9DT05GSUdVUkVELAorICBVU0JfU1RBVEVfU1VTUEVOREVECiB9OwogZW51bSB1c2IzX2xpbmtfc3RhdGUgewotIFVTQjNfTFBNX1UwID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVVNCM19MUE1fVTEsCi0gVVNCM19MUE1fVTIsCi0gVVNCM19MUE1fVTMKKyAgVVNCM19MUE1fVTAgPSAwLAorICBVU0IzX0xQTV9VMSwKKyAgVVNCM19MUE1fVTIsCisgIFVTQjNfTFBNX1UzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQjNfTFBNX0RJU0FCTEVEIDB4MAogI2RlZmluZSBVU0IzX0xQTV9VMV9NQVhfVElNRU9VVCAweDdGCiAjZGVmaW5lIFVTQjNfTFBNX1UyX01BWF9USU1FT1VUIDB4RkUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQjNfTFBNX0RFVklDRV9JTklUSUFURUQgMHhGRgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2Jfc2V0X3NlbF9yZXEgewotIF9fdTggdTFfc2VsOwotIF9fdTggdTFfcGVsOwotIF9fbGUxNiB1Ml9zZWw7CisgIF9fdTggdTFfc2VsOworICBfX3U4IHUxX3BlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHUyX3BlbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgdTJfc2VsOworICBfX2xlMTYgdTJfcGVsOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCM19MUE1fTUFYX1UxX1NFTF9QRUwgMHhGRgotI2RlZmluZSBVU0IzX0xQTV9NQVhfVTJfU0VMX1BFTCAweEZGRkYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQjNfTFBNX01BWF9VMl9TRUxfUEVMIDB4RkZGRgogI2RlZmluZSBVU0JfU0VMRl9QT1dFUl9WQlVTX01BWF9EUkFXIDEwMAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mX210cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZl9tdHAuaAppbmRleCAzYzE4MzUzLi4yMmVjNzcxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mX210cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2ZfbXRwLmgKQEAgLTIyLDE3ICsyMiwxNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG10cF9maWxlX3JhbmdlIHsKLSBpbnQgZmQ7Ci0gbG9mZl90IG9mZnNldDsKLSBpbnQ2NF90IGxlbmd0aDsKKyAgaW50IGZkOworICBsb2ZmX3Qgb2Zmc2V0OworICBpbnQ2NF90IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDE2X3QgY29tbWFuZDsKLSB1aW50MzJfdCB0cmFuc2FjdGlvbl9pZDsKKyAgdWludDE2X3QgY29tbWFuZDsKKyAgdWludDMyX3QgdHJhbnNhY3Rpb25faWQ7CiB9Owogc3RydWN0IG10cF9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBsZW5ndGg7Ci0gdm9pZCAqZGF0YTsKKyAgc2l6ZV90IGxlbmd0aDsKKyAgdm9pZCAqIGRhdGE7CiB9OwogI2RlZmluZSBNVFBfU0VORF9GSUxFIF9JT1coJ00nLCAwLCBzdHJ1Y3QgbXRwX2ZpbGVfcmFuZ2UpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZnVuY3Rpb25mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZnVuY3Rpb25mcy5oCmluZGV4IDNlYTE4NWEuLmYzZjRkYTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2Z1bmN0aW9uZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mdW5jdGlvbmZzLmgKQEAgLTIzLDU5ICsyMywxMDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvdXNiL2NoOS5oPgogZW51bSB7Ci0gRlVOQ1RJT05GU19ERVNDUklQVE9SU19NQUdJQyA9IDEsCi0gRlVOQ1RJT05GU19TVFJJTkdTX01BR0lDID0gMgorICBGVU5DVElPTkZTX0RFU0NSSVBUT1JTX01BR0lDID0gMSwKKyAgRlVOQ1RJT05GU19TVFJJTkdTX01BR0lDID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZVTkNUSU9ORlNfREVTQ1JJUFRPUlNfTUFHSUNfVjIgPSAzLAorfTsKK2VudW0gZnVuY3Rpb25mc19mbGFncyB7CisgIEZVTkNUSU9ORlNfSEFTX0ZTX0RFU0MgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlVOQ1RJT05GU19IQVNfSFNfREVTQyA9IDIsCisgIEZVTkNUSU9ORlNfSEFTX1NTX0RFU0MgPSA0LAorICBGVU5DVElPTkZTX0hBU19NU19PU19ERVNDID0gOCwKKyAgRlVOQ1RJT05GU19WSVJUVUFMX0FERFIgPSAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHVzYl9lbmRwb2ludF9kZXNjcmlwdG9yX25vX2F1ZGlvIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkVuZHBvaW50QWRkcmVzczsKLSBfX3U4IGJtQXR0cmlidXRlczsKLSBfX2xlMTYgd01heFBhY2tldFNpemU7Ci0gX191OCBiSW50ZXJ2YWw7CisgIF9fdTggYkVuZHBvaW50QWRkcmVzczsKKyAgX191OCBibUF0dHJpYnV0ZXM7CisgIF9fbGUxNiB3TWF4UGFja2V0U2l6ZTsKKyAgX191OCBiSW50ZXJ2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKK3N0cnVjdCB1c2JfZnVuY3Rpb25mc19kZXNjc19oZWFkX3YyIHsKKyAgX19sZTMyIG1hZ2ljOworICBfX2xlMzIgbGVuZ3RoOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19sZTMyIGZsYWdzOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfZnVuY3Rpb25mc19kZXNjc19oZWFkIHsKLSBfX2xlMzIgbWFnaWM7Ci0gX19sZTMyIGxlbmd0aDsKKyAgX19sZTMyIG1hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZnNfY291bnQ7Ci0gX19sZTMyIGhzX2NvdW50OworICBfX2xlMzIgbGVuZ3RoOworICBfX2xlMzIgZnNfY291bnQ7CisgIF9fbGUzMiBoc19jb3VudDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBkZXByZWNhdGVkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHVzYl9vc19kZXNjX2hlYWRlciB7CisgIF9fdTggaW50ZXJmYWNlOworICBfX2xlMzIgZHdMZW5ndGg7CisgIF9fbGUxNiBiY2RWZXJzaW9uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19sZTE2IHdJbmRleDsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGJDb3VudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgICBfX3U4IFJlc2VydmVkOworICAgIH07CisgICAgX19sZTE2IHdDb3VudDsKKyAgfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IHVzYl9leHRfY29tcGF0X2Rlc2MgeworICBfX3U4IGJGaXJzdEludGVyZmFjZU51bWJlcjsKKyAgX191OCBSZXNlcnZlZDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IENvbXBhdGlibGVJRFs4XTsKKyAgX191OCBTdWJDb21wYXRpYmxlSURbOF07CisgIF9fdTggUmVzZXJ2ZWQyWzZdOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgdXNiX2V4dF9wcm9wX2Rlc2MgeworICBfX2xlMzIgZHdTaXplOworICBfX2xlMzIgZHdQcm9wZXJ0eURhdGFUeXBlOworICBfX2xlMTYgd1Byb3BlcnR5TmFtZUxlbmd0aDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9mdW5jdGlvbmZzX3N0cmluZ3NfaGVhZCB7CisgIF9fbGUzMiBtYWdpYzsKKyAgX19sZTMyIGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIG1hZ2ljOwotIF9fbGUzMiBsZW5ndGg7Ci0gX19sZTMyIHN0cl9jb3VudDsKLSBfX2xlMzIgbGFuZ19jb3VudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fbGUzMiBzdHJfY291bnQ7CisgIF9fbGUzMiBsYW5nX2NvdW50OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gdXNiX2Z1bmN0aW9uZnNfZXZlbnRfdHlwZSB7Ci0gRlVOQ1RJT05GU19CSU5ELAotIEZVTkNUSU9ORlNfVU5CSU5ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVU5DVElPTkZTX0VOQUJMRSwKLSBGVU5DVElPTkZTX0RJU0FCTEUsCi0gRlVOQ1RJT05GU19TRVRVUCwKLSBGVU5DVElPTkZTX1NVU1BFTkQsCisgIEZVTkNUSU9ORlNfQklORCwKKyAgRlVOQ1RJT05GU19VTkJJTkQsCisgIEZVTkNUSU9ORlNfRU5BQkxFLAorICBGVU5DVElPTkZTX0RJU0FCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVTkNUSU9ORlNfUkVTVU1FCisgIEZVTkNUSU9ORlNfU0VUVVAsCisgIEZVTkNUSU9ORlNfU1VTUEVORCwKKyAgRlVOQ1RJT05GU19SRVNVTUUKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9mdW5jdGlvbmZzX2V2ZW50IHsKLSB1bmlvbiB7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdXNiX2N0cmxyZXF1ZXN0IHNldHVwOworICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1c2JfY3RybHJlcXVlc3Qgc2V0dXA7Ci0gfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB1OwotIF9fdTggdHlwZTsKLSBfX3U4IF9wYWRbM107Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHR5cGU7CisgIF9fdTggX3BhZFszXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIEZVTkNUSU9ORlNfRklGT19TVEFUVVMgX0lPKCdnJywgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVTkNUSU9ORlNfRklGT19GTFVTSCBfSU8oJ2cnLCAyKQogI2RlZmluZSBGVU5DVElPTkZTX0NMRUFSX0hBTFQgX0lPKCdnJywgMykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVTkNUSU9ORlNfSU5URVJGQUNFX1JFVk1BUCBfSU8oJ2cnLCAxMjgpCiAjZGVmaW5lIEZVTkNUSU9ORlNfRU5EUE9JTlRfUkVWTUFQIF9JTygnZycsIDEyOSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZVTkNUSU9ORlNfRU5EUE9JTlRfREVTQyBfSU9SKCdnJywgMTMwLCBzdHJ1Y3QgdXNiX2VuZHBvaW50X2Rlc2NyaXB0b3IpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2dhZGdldGZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9nYWRnZXRmcy5oCmluZGV4IDRiNmNhMDAuLjM5ZGExOGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2dhZGdldGZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZ2FkZ2V0ZnMuaApAQCAtMjMsMjEgKzIzLDIxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3VzYi9jaDkuaD4KIGVudW0gdXNiX2dhZGdldGZzX2V2ZW50X3R5cGUgewotIEdBREdFVEZTX05PUCA9IDAsCi0gR0FER0VURlNfQ09OTkVDVCwKKyAgR0FER0VURlNfTk9QID0gMCwKKyAgR0FER0VURlNfQ09OTkVDVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR0FER0VURlNfRElTQ09OTkVDVCwKLSBHQURHRVRGU19TRVRVUCwKLSBHQURHRVRGU19TVVNQRU5ELAorICBHQURHRVRGU19ESVNDT05ORUNULAorICBHQURHRVRGU19TRVRVUCwKKyAgR0FER0VURlNfU1VTUEVORCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9nYWRnZXRmc19ldmVudCB7Ci0gdW5pb24gewotIGVudW0gdXNiX2RldmljZV9zcGVlZCBzcGVlZDsKLSBzdHJ1Y3QgdXNiX2N0cmxyZXF1ZXN0IHNldHVwOworICB1bmlvbiB7CisgICAgZW51bSB1c2JfZGV2aWNlX3NwZWVkIHNwZWVkOworICAgIHN0cnVjdCB1c2JfY3RybHJlcXVlc3Qgc2V0dXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdTsKLSBlbnVtIHVzYl9nYWRnZXRmc19ldmVudF90eXBlIHR5cGU7CisgIH0gdTsKKyAgZW51bSB1c2JfZ2FkZ2V0ZnNfZXZlbnRfdHlwZSB0eXBlOwogfTsKICNkZWZpbmUgR0FER0VURlNfRklGT19TVEFUVVMgX0lPKCdnJywgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9taWRpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9taWRpLmgKaW5kZXggOTljMzZmNy4uMDMxMTE2YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvbWlkaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL21pZGkuaApAQCAtMjksNTUgKzI5LDU3IEBACiAjZGVmaW5lIFVTQl9NU19FTUJFRERFRCAweDAxCiAjZGVmaW5lIFVTQl9NU19FWFRFUk5BTCAweDAyCiBzdHJ1Y3QgdXNiX21zX2hlYWRlcl9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX19sZTE2IGJjZE1TQzsKLSBfX2xlMTYgd1RvdGFsTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fbGUxNiBiY2RNU0M7CisgIF9fbGUxNiB3VG90YWxMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfTVNfSEVBREVSX1NJWkUgNwogc3RydWN0IHVzYl9taWRpX2luX2phY2tfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYkphY2tUeXBlOwotIF9fdTggYkphY2tJRDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJKYWNrVHlwZTsKKyAgX191OCBiSmFja0lEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlKYWNrOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggaUphY2s7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfTUlESV9JTl9TSVpFIDYKIHN0cnVjdCB1c2JfbWlkaV9zb3VyY2VfcGluIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiYVNvdXJjZUlEOwotIF9fdTggYmFTb3VyY2VQaW47Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiYVNvdXJjZUlEOworICBfX3U4IGJhU291cmNlUGluOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfbWlkaV9vdXRfamFja19kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYkphY2tUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiSmFja1R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkphY2tJRDsKLSBfX3U4IGJOcklucHV0UGluczsKLSBzdHJ1Y3QgdXNiX21pZGlfc291cmNlX3BpbiBwaW5zW107Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiSmFja0lEOworICBfX3U4IGJOcklucHV0UGluczsKKyAgc3RydWN0IHVzYl9taWRpX3NvdXJjZV9waW4gcGluc1tdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9EVF9NSURJX09VVF9TSVpFKHApICg3ICsgMiAqIChwKSkKLSNkZWZpbmUgREVDTEFSRV9VU0JfTUlESV9PVVRfSkFDS19ERVNDUklQVE9SKHApICBzdHJ1Y3QgdXNiX21pZGlfb3V0X2phY2tfZGVzY3JpcHRvcl8jI3AgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgICBfX3U4IGJKYWNrVHlwZTsgICBfX3U4IGJKYWNrSUQ7ICAgX191OCBiTnJJbnB1dFBpbnM7ICAgc3RydWN0IHVzYl9taWRpX3NvdXJjZV9waW4gcGluc1twXTsgICBfX3U4IGlKYWNrOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgREVDTEFSRV9VU0JfTUlESV9PVVRfSkFDS19ERVNDUklQVE9SKHApIHN0cnVjdCB1c2JfbWlkaV9vdXRfamFja19kZXNjcmlwdG9yXyAjI3AgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgX191OCBiSmFja1R5cGU7IF9fdTggYkphY2tJRDsgX191OCBiTnJJbnB1dFBpbnM7IHN0cnVjdCB1c2JfbWlkaV9zb3VyY2VfcGluIHBpbnNbcF07IF9fdTggaUphY2s7IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIHN0cnVjdCB1c2JfbXNfZW5kcG9pbnRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYk51bUVtYk1JRElKYWNrOwotIF9fdTggYmFBc3NvY0phY2tJRFtdOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYk51bUVtYk1JRElKYWNrOworICBfX3U4IGJhQXNzb2NKYWNrSURbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9NU19FTkRQT0lOVF9TSVpFKG4pICg0ICsgKG4pKQotI2RlZmluZSBERUNMQVJFX1VTQl9NU19FTkRQT0lOVF9ERVNDUklQVE9SKG4pICBzdHJ1Y3QgdXNiX21zX2VuZHBvaW50X2Rlc2NyaXB0b3JfIyNuIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7ICAgX191OCBiTnVtRW1iTUlESUphY2s7ICAgX191OCBiYUFzc29jSmFja0lEW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgREVDTEFSRV9VU0JfTVNfRU5EUE9JTlRfREVTQ1JJUFRPUihuKSBzdHJ1Y3QgdXNiX21zX2VuZHBvaW50X2Rlc2NyaXB0b3JfICMjbiB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyBfX3U4IGJOdW1FbWJNSURJSmFjazsgX191OCBiYUFzc29jSmFja0lEW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi92aWRlby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvdmlkZW8uaAppbmRleCA3YWJhZWFkLi5hYjEwZWQ4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi92aWRlby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL3ZpZGVvLmgKQEAgLTE2OSwyODUgKzE2OSwyOTIgQEAKICNkZWZpbmUgVVZDX0NPTlRST0xfQ0FQX0FVVE9VUERBVEUgKDEgPDwgMykKICNkZWZpbmUgVVZDX0NPTlRST0xfQ0FQX0FTWU5DSFJPTk9VUyAoMSA8PCA0KQogc3RydWN0IHV2Y19kZXNjcmlwdG9yX2hlYWRlciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHV2Y19oZWFkZXJfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3UxNiBiY2RVVkM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3UxNiBiY2RVVkM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdUb3RhbExlbmd0aDsKLSBfX3UzMiBkd0Nsb2NrRnJlcXVlbmN5OwotIF9fdTggYkluQ29sbGVjdGlvbjsKLSBfX3U4IGJhSW50ZXJmYWNlTnJbXTsKKyAgX191MTYgd1RvdGFsTGVuZ3RoOworICBfX3UzMiBkd0Nsb2NrRnJlcXVlbmN5OworICBfX3U4IGJJbkNvbGxlY3Rpb247CisgIF9fdTggYmFJbnRlcmZhY2VOcltdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2RlZmluZSBVVkNfRFRfSEVBREVSX1NJWkUobikgKDEyKyhuKSkKLSNkZWZpbmUgVVZDX0hFQURFUl9ERVNDUklQVE9SKG4pICAgdXZjX2hlYWRlcl9kZXNjcmlwdG9yXyMjbgotI2RlZmluZSBERUNMQVJFX1VWQ19IRUFERVJfREVTQ1JJUFRPUihuKSAgc3RydWN0IFVWQ19IRUFERVJfREVTQ1JJUFRPUihuKSB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyAgIF9fdTE2IGJjZFVWQzsgICBfX3UxNiB3VG90YWxMZW5ndGg7ICAgX191MzIgZHdDbG9ja0ZyZXF1ZW5jeTsgICBfX3U4IGJJbkNvbGxlY3Rpb247ICAgX191OCBiYUludGVyZmFjZU5yW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX0hFQURFUl9TSVpFKG4pICgxMiArIChuKSkKKyNkZWZpbmUgVVZDX0hFQURFUl9ERVNDUklQVE9SKG4pIHV2Y19oZWFkZXJfZGVzY3JpcHRvcl8gIyNuCisjZGVmaW5lIERFQ0xBUkVfVVZDX0hFQURFUl9ERVNDUklQVE9SKG4pIHN0cnVjdCBVVkNfSEVBREVSX0RFU0NSSVBUT1IobikgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191MTYgYmNkVVZDOyBfX3UxNiB3VG90YWxMZW5ndGg7IF9fdTMyIGR3Q2xvY2tGcmVxdWVuY3k7IF9fdTggYkluQ29sbGVjdGlvbjsgX191OCBiYUludGVyZmFjZU5yW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHV2Y19pbnB1dF90ZXJtaW5hbF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJUZXJtaW5hbElEOwotIF9fdTE2IHdUZXJtaW5hbFR5cGU7Ci0gX191OCBiQXNzb2NUZXJtaW5hbDsKLSBfX3U4IGlUZXJtaW5hbDsKKyAgX191OCBiVGVybWluYWxJRDsKKyAgX191MTYgd1Rlcm1pbmFsVHlwZTsKKyAgX191OCBiQXNzb2NUZXJtaW5hbDsKKyAgX191OCBpVGVybWluYWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAjZGVmaW5lIFVWQ19EVF9JTlBVVF9URVJNSU5BTF9TSVpFIDgKIHN0cnVjdCB1dmNfb3V0cHV0X3Rlcm1pbmFsX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJUZXJtaW5hbElEOwotIF9fdTE2IHdUZXJtaW5hbFR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiVGVybWluYWxJRDsKKyAgX191MTYgd1Rlcm1pbmFsVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQXNzb2NUZXJtaW5hbDsKLSBfX3U4IGJTb3VyY2VJRDsKLSBfX3U4IGlUZXJtaW5hbDsKKyAgX191OCBiQXNzb2NUZXJtaW5hbDsKKyAgX191OCBiU291cmNlSUQ7CisgIF9fdTggaVRlcm1pbmFsOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVVkNfRFRfT1VUUFVUX1RFUk1JTkFMX1NJWkUgOQogc3RydWN0IHV2Y19jYW1lcmFfdGVybWluYWxfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJUZXJtaW5hbElEOwotIF9fdTE2IHdUZXJtaW5hbFR5cGU7Ci0gX191OCBiQXNzb2NUZXJtaW5hbDsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYlRlcm1pbmFsSUQ7CisgIF9fdTE2IHdUZXJtaW5hbFR5cGU7CisgIF9fdTggYkFzc29jVGVybWluYWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaVRlcm1pbmFsOwotIF9fdTE2IHdPYmplY3RpdmVGb2NhbExlbmd0aE1pbjsKLSBfX3UxNiB3T2JqZWN0aXZlRm9jYWxMZW5ndGhNYXg7Ci0gX191MTYgd09jdWxhckZvY2FsTGVuZ3RoOworICBfX3U4IGlUZXJtaW5hbDsKKyAgX191MTYgd09iamVjdGl2ZUZvY2FsTGVuZ3RoTWluOworICBfX3UxNiB3T2JqZWN0aXZlRm9jYWxMZW5ndGhNYXg7CisgIF9fdTE2IHdPY3VsYXJGb2NhbExlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQ29udHJvbFNpemU7Ci0gX191OCBibUNvbnRyb2xzWzNdOworICBfX3U4IGJDb250cm9sU2l6ZTsKKyAgX191OCBibUNvbnRyb2xzWzNdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0jZGVmaW5lIFVWQ19EVF9DQU1FUkFfVEVSTUlOQUxfU0laRShuKSAoMTUrKG4pKQorI2RlZmluZSBVVkNfRFRfQ0FNRVJBX1RFUk1JTkFMX1NJWkUobikgKDE1ICsgKG4pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1dmNfc2VsZWN0b3JfdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJVbml0SUQ7Ci0gX191OCBiTnJJblBpbnM7Ci0gX191OCBiYVNvdXJjZUlEWzBdOwotIF9fdTggaVNlbGVjdG9yOworICBfX3U4IGJVbml0SUQ7CisgIF9fdTggYk5ySW5QaW5zOworICBfX3U4IGJhU291cmNlSURbMF07CisgIF9fdTggaVNlbGVjdG9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2RlZmluZSBVVkNfRFRfU0VMRUNUT1JfVU5JVF9TSVpFKG4pICg2KyhuKSkKLSNkZWZpbmUgVVZDX1NFTEVDVE9SX1VOSVRfREVTQ1JJUFRPUihuKSAgIHV2Y19zZWxlY3Rvcl91bml0X2Rlc2NyaXB0b3JfIyNuCi0jZGVmaW5lIERFQ0xBUkVfVVZDX1NFTEVDVE9SX1VOSVRfREVTQ1JJUFRPUihuKSAgc3RydWN0IFVWQ19TRUxFQ1RPUl9VTklUX0RFU0NSSVBUT1IobikgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgICBfX3U4IGJVbml0SUQ7ICAgX191OCBiTnJJblBpbnM7ICAgX191OCBiYVNvdXJjZUlEW25dOyAgIF9fdTggaVNlbGVjdG9yOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX1NFTEVDVE9SX1VOSVRfU0laRShuKSAoNiArIChuKSkKKyNkZWZpbmUgVVZDX1NFTEVDVE9SX1VOSVRfREVTQ1JJUFRPUihuKSB1dmNfc2VsZWN0b3JfdW5pdF9kZXNjcmlwdG9yXyAjI24KKyNkZWZpbmUgREVDTEFSRV9VVkNfU0VMRUNUT1JfVU5JVF9ERVNDUklQVE9SKG4pIHN0cnVjdCBVVkNfU0VMRUNUT1JfVU5JVF9ERVNDUklQVE9SKG4pIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7IF9fdTggYlVuaXRJRDsgX191OCBiTnJJblBpbnM7IF9fdTggYmFTb3VyY2VJRFtuXTsgX191OCBpU2VsZWN0b3I7IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX3Byb2Nlc3NpbmdfdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJVbml0SUQ7Ci0gX191OCBiU291cmNlSUQ7Ci0gX191MTYgd01heE11bHRpcGxpZXI7Ci0gX191OCBiQ29udHJvbFNpemU7CisgIF9fdTggYlVuaXRJRDsKKyAgX191OCBiU291cmNlSUQ7CisgIF9fdTE2IHdNYXhNdWx0aXBsaWVyOworICBfX3U4IGJDb250cm9sU2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibUNvbnRyb2xzWzJdOwotIF9fdTggaVByb2Nlc3Npbmc7CisgIF9fdTggYm1Db250cm9sc1syXTsKKyAgX191OCBpUHJvY2Vzc2luZzsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2RlZmluZSBVVkNfRFRfUFJPQ0VTU0lOR19VTklUX1NJWkUobikgKDkrKG4pKQorI2RlZmluZSBVVkNfRFRfUFJPQ0VTU0lOR19VTklUX1NJWkUobikgKDkgKyAobikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHV2Y19leHRlbnNpb25fdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJVbml0SUQ7Ci0gX191OCBndWlkRXh0ZW5zaW9uQ29kZVsxNl07Ci0gX191OCBiTnVtQ29udHJvbHM7Ci0gX191OCBiTnJJblBpbnM7CisgIF9fdTggYlVuaXRJRDsKKyAgX191OCBndWlkRXh0ZW5zaW9uQ29kZVsxNl07CisgIF9fdTggYk51bUNvbnRyb2xzOworICBfX3U4IGJOckluUGluczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiYVNvdXJjZUlEWzBdOwotIF9fdTggYkNvbnRyb2xTaXplOwotIF9fdTggYm1Db250cm9sc1swXTsKLSBfX3U4IGlFeHRlbnNpb247CisgIF9fdTggYmFTb3VyY2VJRFswXTsKKyAgX191OCBiQ29udHJvbFNpemU7CisgIF9fdTggYm1Db250cm9sc1swXTsKKyAgX191OCBpRXh0ZW5zaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2RlZmluZSBVVkNfRFRfRVhURU5TSU9OX1VOSVRfU0laRShwLCBuKSAoMjQrKHApKyhuKSkKLSNkZWZpbmUgVVZDX0VYVEVOU0lPTl9VTklUX0RFU0NSSVBUT1IocCwgbikgICB1dmNfZXh0ZW5zaW9uX3VuaXRfZGVzY3JpcHRvcl8jI3BfIyNuCi0jZGVmaW5lIERFQ0xBUkVfVVZDX0VYVEVOU0lPTl9VTklUX0RFU0NSSVBUT1IocCwgbikgIHN0cnVjdCBVVkNfRVhURU5TSU9OX1VOSVRfREVTQ1JJUFRPUihwLCBuKSB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyAgIF9fdTggYlVuaXRJRDsgICBfX3U4IGd1aWRFeHRlbnNpb25Db2RlWzE2XTsgICBfX3U4IGJOdW1Db250cm9sczsgICBfX3U4IGJOckluUGluczsgICBfX3U4IGJhU291cmNlSURbcF07ICAgX191OCBiQ29udHJvbFNpemU7ICAgX191OCBibUNvbnRyb2xzW25dOyAgIF9fdTggaUV4dGVuc2lvbjsgIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpCisjZGVmaW5lIFVWQ19EVF9FWFRFTlNJT05fVU5JVF9TSVpFKHAsbikgKDI0ICsgKHApICsgKG4pKQorI2RlZmluZSBVVkNfRVhURU5TSU9OX1VOSVRfREVTQ1JJUFRPUihwLG4pIHV2Y19leHRlbnNpb25fdW5pdF9kZXNjcmlwdG9yXyAjI3BfICMjbgorI2RlZmluZSBERUNMQVJFX1VWQ19FWFRFTlNJT05fVU5JVF9ERVNDUklQVE9SKHAsbikgc3RydWN0IFVWQ19FWFRFTlNJT05fVU5JVF9ERVNDUklQVE9SKHAsIG4pIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7IF9fdTggYlVuaXRJRDsgX191OCBndWlkRXh0ZW5zaW9uQ29kZVsxNl07IF9fdTggYk51bUNvbnRyb2xzOyBfX3U4IGJOckluUGluczsgX191OCBiYVNvdXJjZUlEW3BdOyBfX3U4IGJDb250cm9sU2l6ZTsgX191OCBibUNvbnRyb2xzW25dOyBfX3U4IGlFeHRlbnNpb247IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX2NvbnRyb2xfZW5kcG9pbnRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd01heFRyYW5zZmVyU2l6ZTsKKyAgX191MTYgd01heFRyYW5zZmVyU2l6ZTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogI2RlZmluZSBVVkNfRFRfQ09OVFJPTF9FTkRQT0lOVF9TSVpFIDUKIHN0cnVjdCB1dmNfaW5wdXRfaGVhZGVyX2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiTnVtRm9ybWF0czsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYk51bUZvcm1hdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdUb3RhbExlbmd0aDsKLSBfX3U4IGJFbmRwb2ludEFkZHJlc3M7Ci0gX191OCBibUluZm87Ci0gX191OCBiVGVybWluYWxMaW5rOworICBfX3UxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYkVuZHBvaW50QWRkcmVzczsKKyAgX191OCBibUluZm87CisgIF9fdTggYlRlcm1pbmFsTGluazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiU3RpbGxDYXB0dXJlTWV0aG9kOwotIF9fdTggYlRyaWdnZXJTdXBwb3J0OwotIF9fdTggYlRyaWdnZXJVc2FnZTsKLSBfX3U4IGJDb250cm9sU2l6ZTsKKyAgX191OCBiU3RpbGxDYXB0dXJlTWV0aG9kOworICBfX3U4IGJUcmlnZ2VyU3VwcG9ydDsKKyAgX191OCBiVHJpZ2dlclVzYWdlOworICBfX3U4IGJDb250cm9sU2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibWFDb250cm9sc1tdOworICBfX3U4IGJtYUNvbnRyb2xzW107CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKLSNkZWZpbmUgVVZDX0RUX0lOUFVUX0hFQURFUl9TSVpFKG4sIHApICgxMysobipwKSkKLSNkZWZpbmUgVVZDX0lOUFVUX0hFQURFUl9ERVNDUklQVE9SKG4sIHApICAgdXZjX2lucHV0X2hlYWRlcl9kZXNjcmlwdG9yXyMjbl8jI3AKKyNkZWZpbmUgVVZDX0RUX0lOUFVUX0hFQURFUl9TSVpFKG4scCkgKDEzICsgKG4gKiBwKSkKKyNkZWZpbmUgVVZDX0lOUFVUX0hFQURFUl9ERVNDUklQVE9SKG4scCkgdXZjX2lucHV0X2hlYWRlcl9kZXNjcmlwdG9yXyAjI25fICMjcAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgREVDTEFSRV9VVkNfSU5QVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgIHN0cnVjdCBVVkNfSU5QVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgICBfX3U4IGJOdW1Gb3JtYXRzOyAgIF9fdTE2IHdUb3RhbExlbmd0aDsgICBfX3U4IGJFbmRwb2ludEFkZHJlc3M7ICAgX191OCBibUluZm87ICAgX191OCBiVGVybWluYWxMaW5rOyAgIF9fdTggYlN0aWxsQ2FwdHVyZU1ldGhvZDsgICBfX3U4IGJUcmlnZ2VyU3VwcG9ydDsgICBfX3U4IGJUcmlnZ2VyVXNhZ2U7ICAgX191OCBiQ29udHJvbFNpemU7ICAgX191OCBibWFDb250cm9sc1twXVtuXTsgIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpCisjZGVmaW5lIERFQ0xBUkVfVVZDX0lOUFVUX0hFQURFUl9ERVNDUklQVE9SKG4scCkgc3RydWN0IFVWQ19JTlBVVF9IRUFERVJfREVTQ1JJUFRPUihuLCBwKSB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyBfX3U4IGJOdW1Gb3JtYXRzOyBfX3UxNiB3VG90YWxMZW5ndGg7IF9fdTggYkVuZHBvaW50QWRkcmVzczsgX191OCBibUluZm87IF9fdTggYlRlcm1pbmFsTGluazsgX191OCBiU3RpbGxDYXB0dXJlTWV0aG9kOyBfX3U4IGJUcmlnZ2VyU3VwcG9ydDsgX191OCBiVHJpZ2dlclVzYWdlOyBfX3U4IGJDb250cm9sU2l6ZTsgX191OCBibWFDb250cm9sc1twXVtuXTsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogc3RydWN0IHV2Y19vdXRwdXRfaGVhZGVyX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiTnVtRm9ybWF0czsKLSBfX3UxNiB3VG90YWxMZW5ndGg7Ci0gX191OCBiRW5kcG9pbnRBZGRyZXNzOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTnVtRm9ybWF0czsKKyAgX191MTYgd1RvdGFsTGVuZ3RoOworICBfX3U4IGJFbmRwb2ludEFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlRlcm1pbmFsTGluazsKLSBfX3U4IGJDb250cm9sU2l6ZTsKLSBfX3U4IGJtYUNvbnRyb2xzW107CisgIF9fdTggYlRlcm1pbmFsTGluazsKKyAgX191OCBiQ29udHJvbFNpemU7CisgIF9fdTggYm1hQ29udHJvbHNbXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVVZDX0RUX09VVFBVVF9IRUFERVJfU0laRShuLCBwKSAoOSsobipwKSkKLSNkZWZpbmUgVVZDX09VVFBVVF9IRUFERVJfREVTQ1JJUFRPUihuLCBwKSAgIHV2Y19vdXRwdXRfaGVhZGVyX2Rlc2NyaXB0b3JfIyNuXyMjcAotI2RlZmluZSBERUNMQVJFX1VWQ19PVVRQVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgIHN0cnVjdCBVVkNfT1VUUFVUX0hFQURFUl9ERVNDUklQVE9SKG4sIHApIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7ICAgX191OCBiTnVtRm9ybWF0czsgICBfX3UxNiB3VG90YWxMZW5ndGg7ICAgX191OCBiRW5kcG9pbnRBZGRyZXNzOyAgIF9fdTggYlRlcm1pbmFsTGluazsgICBfX3U4IGJDb250cm9sU2l6ZTsgICBfX3U4IGJtYUNvbnRyb2xzW3BdW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX09VVFBVVF9IRUFERVJfU0laRShuLHApICg5ICsgKG4gKiBwKSkKKyNkZWZpbmUgVVZDX09VVFBVVF9IRUFERVJfREVTQ1JJUFRPUihuLHApIHV2Y19vdXRwdXRfaGVhZGVyX2Rlc2NyaXB0b3JfICMjbl8gIyNwCisjZGVmaW5lIERFQ0xBUkVfVVZDX09VVFBVVF9IRUFERVJfREVTQ1JJUFRPUihuLHApIHN0cnVjdCBVVkNfT1VUUFVUX0hFQURFUl9ERVNDUklQVE9SKG4sIHApIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7IF9fdTggYk51bUZvcm1hdHM7IF9fdTE2IHdUb3RhbExlbmd0aDsgX191OCBiRW5kcG9pbnRBZGRyZXNzOyBfX3U4IGJUZXJtaW5hbExpbms7IF9fdTggYkNvbnRyb2xTaXplOyBfX3U4IGJtYUNvbnRyb2xzW3BdW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiBzdHJ1Y3QgdXZjX2NvbG9yX21hdGNoaW5nX2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiQ29sb3JQcmltYXJpZXM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJDb2xvclByaW1hcmllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiVHJhbnNmZXJDaGFyYWN0ZXJpc3RpY3M7Ci0gX191OCBiTWF0cml4Q29lZmZpY2llbnRzOworICBfX3U4IGJUcmFuc2ZlckNoYXJhY3RlcmlzdGljczsKKyAgX191OCBiTWF0cml4Q29lZmZpY2llbnRzOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAjZGVmaW5lIFVWQ19EVF9DT0xPUl9NQVRDSElOR19TSVpFIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX3N0cmVhbWluZ19jb250cm9sIHsKLSBfX3UxNiBibUhpbnQ7Ci0gX191OCBiRm9ybWF0SW5kZXg7Ci0gX191OCBiRnJhbWVJbmRleDsKKyAgX191MTYgYm1IaW50OworICBfX3U4IGJGb3JtYXRJbmRleDsKKyAgX191OCBiRnJhbWVJbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHdGcmFtZUludGVydmFsOwotIF9fdTE2IHdLZXlGcmFtZVJhdGU7Ci0gX191MTYgd1BGcmFtZVJhdGU7Ci0gX191MTYgd0NvbXBRdWFsaXR5OworICBfX3UzMiBkd0ZyYW1lSW50ZXJ2YWw7CisgIF9fdTE2IHdLZXlGcmFtZVJhdGU7CisgIF9fdTE2IHdQRnJhbWVSYXRlOworICBfX3UxNiB3Q29tcFF1YWxpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdDb21wV2luZG93U2l6ZTsKLSBfX3UxNiB3RGVsYXk7Ci0gX191MzIgZHdNYXhWaWRlb0ZyYW1lU2l6ZTsKLSBfX3UzMiBkd01heFBheWxvYWRUcmFuc2ZlclNpemU7CisgIF9fdTE2IHdDb21wV2luZG93U2l6ZTsKKyAgX191MTYgd0RlbGF5OworICBfX3UzMiBkd01heFZpZGVvRnJhbWVTaXplOworICBfX3UzMiBkd01heFBheWxvYWRUcmFuc2ZlclNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGR3Q2xvY2tGcmVxdWVuY3k7Ci0gX191OCBibUZyYW1pbmdJbmZvOwotIF9fdTggYlByZWZlcmVkVmVyc2lvbjsKLSBfX3U4IGJNaW5WZXJzaW9uOworICBfX3UzMiBkd0Nsb2NrRnJlcXVlbmN5OworICBfX3U4IGJtRnJhbWluZ0luZm87CisgIF9fdTggYlByZWZlcmVkVmVyc2lvbjsKKyAgX191OCBiTWluVmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTWF4VmVyc2lvbjsKKyAgX191OCBiTWF4VmVyc2lvbjsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IHV2Y19mb3JtYXRfdW5jb21wcmVzc2VkIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiRm9ybWF0SW5kZXg7Ci0gX191OCBiTnVtRnJhbWVEZXNjcmlwdG9yczsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJGb3JtYXRJbmRleDsKKyAgX191OCBiTnVtRnJhbWVEZXNjcmlwdG9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBndWlkRm9ybWF0WzE2XTsKLSBfX3U4IGJCaXRzUGVyUGl4ZWw7Ci0gX191OCBiRGVmYXVsdEZyYW1lSW5kZXg7Ci0gX191OCBiQXNwZWN0UmF0aW9YOworICBfX3U4IGd1aWRGb3JtYXRbMTZdOworICBfX3U4IGJCaXRzUGVyUGl4ZWw7CisgIF9fdTggYkRlZmF1bHRGcmFtZUluZGV4OworICBfX3U4IGJBc3BlY3RSYXRpb1g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkFzcGVjdFJhdGlvWTsKLSBfX3U4IGJtSW50ZXJmYWNlRmxhZ3M7Ci0gX191OCBiQ29weVByb3RlY3Q7CisgIF9fdTggYkFzcGVjdFJhdGlvWTsKKyAgX191OCBibUludGVyZmFjZUZsYWdzOworICBfX3U4IGJDb3B5UHJvdGVjdDsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVZDX0RUX0ZPUk1BVF9VTkNPTVBSRVNTRURfU0laRSAyNwogc3RydWN0IHV2Y19mcmFtZV91bmNvbXByZXNzZWQgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiRnJhbWVJbmRleDsKLSBfX3U4IGJtQ2FwYWJpbGl0aWVzOwotIF9fdTE2IHdXaWR0aDsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkZyYW1lSW5kZXg7CisgIF9fdTggYm1DYXBhYmlsaXRpZXM7CisgIF9fdTE2IHdXaWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd0hlaWdodDsKLSBfX3UzMiBkd01pbkJpdFJhdGU7Ci0gX191MzIgZHdNYXhCaXRSYXRlOwotIF9fdTMyIGR3TWF4VmlkZW9GcmFtZUJ1ZmZlclNpemU7CisgIF9fdTE2IHdIZWlnaHQ7CisgIF9fdTMyIGR3TWluQml0UmF0ZTsKKyAgX191MzIgZHdNYXhCaXRSYXRlOworICBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOwotIF9fdTggYkZyYW1lSW50ZXJ2YWxUeXBlOwotIF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtdOworICBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOworICBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsKKyAgX191MzIgZHdGcmFtZUludGVydmFsW107CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFVWQ19EVF9GUkFNRV9VTkNPTVBSRVNTRURfU0laRShuKSAoMjYrNCoobikpCi0jZGVmaW5lIFVWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgICB1dmNfZnJhbWVfdW5jb21wcmVzc2VkXyMjbgotI2RlZmluZSBERUNMQVJFX1VWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgIHN0cnVjdCBVVkNfRlJBTUVfVU5DT01QUkVTU0VEKG4pIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7ICAgX191OCBiRnJhbWVJbmRleDsgICBfX3U4IGJtQ2FwYWJpbGl0aWVzOyAgIF9fdTE2IHdXaWR0aDsgICBfX3UxNiB3SGVpZ2h0OyAgIF9fdTMyIGR3TWluQml0UmF0ZTsgICBfX3UzMiBkd01heEJpdFJhdGU7ICAgX191MzIgZHdNYXhWaWRlb0ZyYW1lQnVmZmVyU2l6ZTsgICBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOyAgIF9fdTggYkZyYW1lSW50ZXJ2YWxUeXBlOyAgIF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtuXTsgIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpCisjZGVmaW5lIFVWQ19EVF9GUkFNRV9VTkNPTVBSRVNTRURfU0laRShuKSAoMjYgKyA0ICogKG4pKQorI2RlZmluZSBVVkNfRlJBTUVfVU5DT01QUkVTU0VEKG4pIHV2Y19mcmFtZV91bmNvbXByZXNzZWRfICMjbgorI2RlZmluZSBERUNMQVJFX1VWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgc3RydWN0IFVWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191OCBiRnJhbWVJbmRleDsgX191OCBibUNhcGFiaWxpdGllczsgX191MTYgd1dpZHRoOyBfX3UxNiB3SGVpZ2h0OyBfX3UzMiBkd01pbkJpdFJhdGU7IF9fdTMyIGR3TWF4Qml0UmF0ZTsgX191MzIgZHdNYXhWaWRlb0ZyYW1lQnVmZmVyU2l6ZTsgX191MzIgZHdEZWZhdWx0RnJhbWVJbnRlcnZhbDsgX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7IF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtuXTsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogc3RydWN0IHV2Y19mb3JtYXRfbWpwZWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiRm9ybWF0SW5kZXg7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJGb3JtYXRJbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTnVtRnJhbWVEZXNjcmlwdG9yczsKLSBfX3U4IGJtRmxhZ3M7Ci0gX191OCBiRGVmYXVsdEZyYW1lSW5kZXg7Ci0gX191OCBiQXNwZWN0UmF0aW9YOworICBfX3U4IGJOdW1GcmFtZURlc2NyaXB0b3JzOworICBfX3U4IGJtRmxhZ3M7CisgIF9fdTggYkRlZmF1bHRGcmFtZUluZGV4OworICBfX3U4IGJBc3BlY3RSYXRpb1g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkFzcGVjdFJhdGlvWTsKLSBfX3U4IGJtSW50ZXJmYWNlRmxhZ3M7Ci0gX191OCBiQ29weVByb3RlY3Q7CisgIF9fdTggYkFzcGVjdFJhdGlvWTsKKyAgX191OCBibUludGVyZmFjZUZsYWdzOworICBfX3U4IGJDb3B5UHJvdGVjdDsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVZDX0RUX0ZPUk1BVF9NSlBFR19TSVpFIDExCiBzdHJ1Y3QgdXZjX2ZyYW1lX21qcGVnIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggYkZyYW1lSW5kZXg7Ci0gX191OCBibUNhcGFiaWxpdGllczsKLSBfX3UxNiB3V2lkdGg7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJGcmFtZUluZGV4OworICBfX3U4IGJtQ2FwYWJpbGl0aWVzOworICBfX3UxNiB3V2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdIZWlnaHQ7Ci0gX191MzIgZHdNaW5CaXRSYXRlOwotIF9fdTMyIGR3TWF4Qml0UmF0ZTsKLSBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOworICBfX3UxNiB3SGVpZ2h0OworICBfX3UzMiBkd01pbkJpdFJhdGU7CisgIF9fdTMyIGR3TWF4Qml0UmF0ZTsKKyAgX191MzIgZHdNYXhWaWRlb0ZyYW1lQnVmZmVyU2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHdEZWZhdWx0RnJhbWVJbnRlcnZhbDsKLSBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsKLSBfX3UzMiBkd0ZyYW1lSW50ZXJ2YWxbXTsKKyAgX191MzIgZHdEZWZhdWx0RnJhbWVJbnRlcnZhbDsKKyAgX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7CisgIF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBVVkNfRFRfRlJBTUVfTUpQRUdfU0laRShuKSAoMjYrNCoobikpCi0jZGVmaW5lIFVWQ19GUkFNRV9NSlBFRyhuKSAgIHV2Y19mcmFtZV9tanBlZ18jI24KLSNkZWZpbmUgREVDTEFSRV9VVkNfRlJBTUVfTUpQRUcobikgIHN0cnVjdCBVVkNfRlJBTUVfTUpQRUcobikgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgICBfX3U4IGJGcmFtZUluZGV4OyAgIF9fdTggYm1DYXBhYmlsaXRpZXM7ICAgX191MTYgd1dpZHRoOyAgIF9fdTE2IHdIZWlnaHQ7ICAgX191MzIgZHdNaW5CaXRSYXRlOyAgIF9fdTMyIGR3TWF4Qml0UmF0ZTsgICBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOyAgIF9fdTMyIGR3RGVmYXVsdEZyYW1lSW50ZXJ2YWw7ICAgX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7ICAgX191MzIgZHdGcmFtZUludGVydmFsW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX0ZSQU1FX01KUEVHX1NJWkUobikgKDI2ICsgNCAqIChuKSkKKyNkZWZpbmUgVVZDX0ZSQU1FX01KUEVHKG4pIHV2Y19mcmFtZV9tanBlZ18gIyNuCisjZGVmaW5lIERFQ0xBUkVfVVZDX0ZSQU1FX01KUEVHKG4pIHN0cnVjdCBVVkNfRlJBTUVfTUpQRUcobikgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191OCBiRnJhbWVJbmRleDsgX191OCBibUNhcGFiaWxpdGllczsgX191MTYgd1dpZHRoOyBfX3UxNiB3SGVpZ2h0OyBfX3UzMiBkd01pbkJpdFJhdGU7IF9fdTMyIGR3TWF4Qml0UmF0ZTsgX191MzIgZHdNYXhWaWRlb0ZyYW1lQnVmZmVyU2l6ZTsgX191MzIgZHdEZWZhdWx0RnJhbWVJbnRlcnZhbDsgX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7IF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtuXTsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JkZXZpY2VfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiZGV2aWNlX2ZzLmgKaW5kZXggMGMxNzgxZC4uMGFhMjA2MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JkZXZpY2VfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYmRldmljZV9mcy5oCkBAIC0yMiw0MyArMjIsNDMgQEAKICNpbmNsdWRlIDxsaW51eC9tYWdpYy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JkZXZmc19jdHJsdHJhbnNmZXIgewotIF9fdTggYlJlcXVlc3RUeXBlOwotIF9fdTggYlJlcXVlc3Q7Ci0gX191MTYgd1ZhbHVlOworICBfX3U4IGJSZXF1ZXN0VHlwZTsKKyAgX191OCBiUmVxdWVzdDsKKyAgX191MTYgd1ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3SW5kZXg7Ci0gX191MTYgd0xlbmd0aDsKLSBfX3UzMiB0aW1lb3V0OwotIHZvaWQgX191c2VyICpkYXRhOworICBfX3UxNiB3SW5kZXg7CisgIF9fdTE2IHdMZW5ndGg7CisgIF9fdTMyIHRpbWVvdXQ7CisgIHZvaWQgX191c2VyICogZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHVzYmRldmZzX2J1bGt0cmFuc2ZlciB7Ci0gdW5zaWduZWQgaW50IGVwOwotIHVuc2lnbmVkIGludCBsZW47CisgIHVuc2lnbmVkIGludCBlcDsKKyAgdW5zaWduZWQgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRpbWVvdXQ7Ci0gdm9pZCBfX3VzZXIgKmRhdGE7CisgIHVuc2lnbmVkIGludCB0aW1lb3V0OworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9Owogc3RydWN0IHVzYmRldmZzX3NldGludGVyZmFjZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpbnRlcmZhY2U7Ci0gdW5zaWduZWQgaW50IGFsdHNldHRpbmc7CisgIHVuc2lnbmVkIGludCBpbnRlcmZhY2U7CisgIHVuc2lnbmVkIGludCBhbHRzZXR0aW5nOwogfTsKIHN0cnVjdCB1c2JkZXZmc19kaXNjb25uZWN0c2lnbmFsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNpZ25yOwotIHZvaWQgX191c2VyICpjb250ZXh0OworICB1bnNpZ25lZCBpbnQgc2lnbnI7CisgIHZvaWQgX191c2VyICogY29udGV4dDsKIH07CiAjZGVmaW5lIFVTQkRFVkZTX01BWERSSVZFUk5BTUUgMjU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYmRldmZzX2dldGRyaXZlciB7Ci0gdW5zaWduZWQgaW50IGludGVyZmFjZTsKLSBjaGFyIGRyaXZlcltVU0JERVZGU19NQVhEUklWRVJOQU1FICsgMV07CisgIHVuc2lnbmVkIGludCBpbnRlcmZhY2U7CisgIGNoYXIgZHJpdmVyW1VTQkRFVkZTX01BWERSSVZFUk5BTUUgKyAxXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYmRldmZzX2Nvbm5lY3RpbmZvIHsKLSB1bnNpZ25lZCBpbnQgZGV2bnVtOwotIHVuc2lnbmVkIGNoYXIgc2xvdzsKKyAgdW5zaWduZWQgaW50IGRldm51bTsKKyAgdW5zaWduZWQgY2hhciBzbG93OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQkRFVkZTX1VSQl9TSE9SVF9OT1RfT0sgMHgwMQpAQCAtNzQsNTQgKzc0LDY0IEBACiAjZGVmaW5lIFVTQkRFVkZTX1VSQl9UWVBFX0NPTlRST0wgMgogI2RlZmluZSBVU0JERVZGU19VUkJfVFlQRV9CVUxLIDMKIHN0cnVjdCB1c2JkZXZmc19pc29fcGFja2V0X2Rlc2MgewotIHVuc2lnbmVkIGludCBsZW5ndGg7CisgIHVuc2lnbmVkIGludCBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhY3R1YWxfbGVuZ3RoOwotIHVuc2lnbmVkIGludCBzdGF0dXM7CisgIHVuc2lnbmVkIGludCBhY3R1YWxfbGVuZ3RoOworICB1bnNpZ25lZCBpbnQgc3RhdHVzOwogfTsKIHN0cnVjdCB1c2JkZXZmc191cmIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHR5cGU7Ci0gdW5zaWduZWQgY2hhciBlbmRwb2ludDsKLSBpbnQgc3RhdHVzOwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgY2hhciB0eXBlOworICB1bnNpZ25lZCBjaGFyIGVuZHBvaW50OworICBpbnQgc3RhdHVzOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpidWZmZXI7Ci0gaW50IGJ1ZmZlcl9sZW5ndGg7Ci0gaW50IGFjdHVhbF9sZW5ndGg7Ci0gaW50IHN0YXJ0X2ZyYW1lOworICB2b2lkIF9fdXNlciAqIGJ1ZmZlcjsKKyAgaW50IGJ1ZmZlcl9sZW5ndGg7CisgIGludCBhY3R1YWxfbGVuZ3RoOworICBpbnQgc3RhcnRfZnJhbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBudW1iZXJfb2ZfcGFja2V0czsKLSBpbnQgZXJyb3JfY291bnQ7Ci0gdW5zaWduZWQgaW50IHNpZ25yOwotIHZvaWQgX191c2VyICp1c2VyY29udGV4dDsKKyAgdW5pb24geworICAgIGludCBudW1iZXJfb2ZfcGFja2V0czsKKyAgICB1bnNpZ25lZCBpbnQgc3RyZWFtX2lkOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdXNiZGV2ZnNfaXNvX3BhY2tldF9kZXNjIGlzb19mcmFtZV9kZXNjWzBdOworICBpbnQgZXJyb3JfY291bnQ7CisgIHVuc2lnbmVkIGludCBzaWducjsKKyAgdm9pZCBfX3VzZXIgKiB1c2VyY29udGV4dDsKKyAgc3RydWN0IHVzYmRldmZzX2lzb19wYWNrZXRfZGVzYyBpc29fZnJhbWVfZGVzY1swXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHVzYmRldmZzX2lvY3RsIHsKLSBpbnQgaWZubzsKKyAgaW50IGlmbm87CisgIGludCBpb2N0bF9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaW9jdGxfY29kZTsKLSB2b2lkIF9fdXNlciAqZGF0YTsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOwogfTsKIHN0cnVjdCB1c2JkZXZmc19odWJfcG9ydGluZm8geworICBjaGFyIG5wb3J0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBucG9ydHM7Ci0gY2hhciBwb3J0IFsxMjddOworICBjaGFyIHBvcnRbMTI3XTsKIH07CiAjZGVmaW5lIFVTQkRFVkZTX0NBUF9aRVJPX1BBQ0tFVCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JERVZGU19DQVBfQlVMS19DT05USU5VQVRJT04gMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCREVWRlNfQ0FQX05PX1BBQ0tFVF9TSVpFX0xJTSAweDA0CiAjZGVmaW5lIFVTQkRFVkZTX0NBUF9CVUxLX1NDQVRURVJfR0FUSEVSIDB4MDgKICNkZWZpbmUgVVNCREVWRlNfRElTQ09OTkVDVF9DTEFJTV9JRl9EUklWRVIgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCREVWRlNfRElTQ09OTkVDVF9DTEFJTV9FWENFUFRfRFJJVkVSIDB4MDIKLXN0cnVjdCB1c2JkZXZmc19kaXNjb25uZWN0X2NsYWltIHsKLSB1bnNpZ25lZCBpbnQgaW50ZXJmYWNlOwotIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkcml2ZXJbVVNCREVWRlNfTUFYRFJJVkVSTkFNRSArIDFdOworc3RydWN0IHVzYmRldmZzX2Rpc2Nvbm5lY3RfY2xhaW0geworICB1bnNpZ25lZCBpbnQgaW50ZXJmYWNlOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGNoYXIgZHJpdmVyW1VTQkRFVkZTX01BWERSSVZFUk5BTUUgKyAxXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IHVzYmRldmZzX3N0cmVhbXMgeworICB1bnNpZ25lZCBpbnQgbnVtX3N0cmVhbXM7CisgIHVuc2lnbmVkIGludCBudW1fZXBzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciBlcHNbMF07CiB9OwogI2RlZmluZSBVU0JERVZGU19DT05UUk9MIF9JT1dSKCdVJywgMCwgc3RydWN0IHVzYmRldmZzX2N0cmx0cmFuc2ZlcikKICNkZWZpbmUgVVNCREVWRlNfQ09OVFJPTDMyIF9JT1dSKCdVJywgMCwgc3RydWN0IHVzYmRldmZzX2N0cmx0cmFuc2ZlcjMyKQpAQCAtMTYyLDQgKzE3Miw3IEBACiAjZGVmaW5lIFVTQkRFVkZTX0dFVF9DQVBBQklMSVRJRVMgX0lPUignVScsIDI2LCBfX3UzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQkRFVkZTX0RJU0NPTk5FQ1RfQ0xBSU0gX0lPUignVScsIDI3LCBzdHJ1Y3QgdXNiZGV2ZnNfZGlzY29ubmVjdF9jbGFpbSkKKyNkZWZpbmUgVVNCREVWRlNfQUxMT0NfU1RSRUFNUyBfSU9SKCdVJywgMjgsIHN0cnVjdCB1c2JkZXZmc19zdHJlYW1zKQorI2RlZmluZSBVU0JERVZGU19GUkVFX1NUUkVBTVMgX0lPUignVScsIDI5LCBzdHJ1Y3QgdXNiZGV2ZnNfc3RyZWFtcykKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiaXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiaXAuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZGRhOGM4Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JpcC5oCkBAIC0wLDAgKzEsMzMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX1VBUElfTElOVVhfVVNCSVBfSAorI2RlZmluZSBfVUFQSV9MSU5VWF9VU0JJUF9ICitlbnVtIHVzYmlwX2RldmljZV9zdGF0dXMgeworICBTREVWX1NUX0FWQUlMQUJMRSA9IDB4MDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTREVWX1NUX1VTRUQsCisgIFNERVZfU1RfRVJST1IsCisgIFZERVZfU1RfTlVMTCwKKyAgVkRFVl9TVF9OT1RBU1NJR05FRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZERVZfU1RfVVNFRCwKKyAgVkRFVl9TVF9FUlJPUgorfTsKKyNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRpbWUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRpbWUuaAppbmRleCA0Y2MwNjE3Li4yZTk4YTNkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0aW1lLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dGltZS5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB1dGltYnVmIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IGFjdGltZTsKLSBfX2tlcm5lbF90aW1lX3QgbW9kdGltZTsKKyAgX19rZXJuZWxfdGltZV90IGFjdGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1vZHRpbWU7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dHNuYW1lLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0c25hbWUuaAppbmRleCBlZTVlZTk3Li40NDQ3ZDE4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0c25hbWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0c25hbWUuaApAQCAtMjEsMzEgKzIxLDMxIEBACiAjZGVmaW5lIF9fT0xEX1VUU19MRU4gOAogc3RydWN0IG9sZG9sZF91dHNuYW1lIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzeXNuYW1lWzldOwotIGNoYXIgbm9kZW5hbWVbOV07Ci0gY2hhciByZWxlYXNlWzldOwotIGNoYXIgdmVyc2lvbls5XTsKKyAgY2hhciBzeXNuYW1lWzldOworICBjaGFyIG5vZGVuYW1lWzldOworICBjaGFyIHJlbGVhc2VbOV07CisgIGNoYXIgdmVyc2lvbls5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtYWNoaW5lWzldOworICBjaGFyIG1hY2hpbmVbOV07CiB9OwogI2RlZmluZSBfX05FV19VVFNfTEVOIDY0CiBzdHJ1Y3Qgb2xkX3V0c25hbWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHN5c25hbWVbNjVdOwotIGNoYXIgbm9kZW5hbWVbNjVdOwotIGNoYXIgcmVsZWFzZVs2NV07Ci0gY2hhciB2ZXJzaW9uWzY1XTsKKyAgY2hhciBzeXNuYW1lWzY1XTsKKyAgY2hhciBub2RlbmFtZVs2NV07CisgIGNoYXIgcmVsZWFzZVs2NV07CisgIGNoYXIgdmVyc2lvbls2NV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbWFjaGluZVs2NV07CisgIGNoYXIgbWFjaGluZVs2NV07CiB9Owogc3RydWN0IG5ld191dHNuYW1lIHsKLSBjaGFyIHN5c25hbWVbX19ORVdfVVRTX0xFTiArIDFdOworICBjaGFyIHN5c25hbWVbX19ORVdfVVRTX0xFTiArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5vZGVuYW1lW19fTkVXX1VUU19MRU4gKyAxXTsKLSBjaGFyIHJlbGVhc2VbX19ORVdfVVRTX0xFTiArIDFdOwotIGNoYXIgdmVyc2lvbltfX05FV19VVFNfTEVOICsgMV07Ci0gY2hhciBtYWNoaW5lW19fTkVXX1VUU19MRU4gKyAxXTsKKyAgY2hhciBub2RlbmFtZVtfX05FV19VVFNfTEVOICsgMV07CisgIGNoYXIgcmVsZWFzZVtfX05FV19VVFNfTEVOICsgMV07CisgIGNoYXIgdmVyc2lvbltfX05FV19VVFNfTEVOICsgMV07CisgIGNoYXIgbWFjaGluZVtfX05FV19VVFNfTEVOICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZG9tYWlubmFtZVtfX05FV19VVFNfTEVOICsgMV07CisgIGNoYXIgZG9tYWlubmFtZVtfX05FV19VVFNfTEVOICsgMV07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V1aWQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXVpZC5oCmluZGV4IDVjMjk4MDkuLmNjODZmYzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXVpZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXVpZC5oCkBAIC0yMiwxNSArMjIsMTkgQEAKICNpbmNsdWRlIDxsaW51eC9zdHJpbmcuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191OCBiWzE2XTsKKyAgX191OCBiWzE2XTsKIH0gdXVpZF9sZTsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiWzE2XTsKKyAgX191OCBiWzE2XTsKIH0gdXVpZF9iZTsKLSNkZWZpbmUgVVVJRF9MRShhLCBiLCBjLCBkMCwgZDEsIGQyLCBkMywgZDQsIGQ1LCBkNiwgZDcpICAoKHV1aWRfbGUpICB7eyAoYSkgJiAweGZmLCAoKGEpID4+IDgpICYgMHhmZiwgKChhKSA+PiAxNikgJiAweGZmLCAoKGEpID4+IDI0KSAmIDB4ZmYsICAgKGIpICYgMHhmZiwgKChiKSA+PiA4KSAmIDB4ZmYsICAgKGMpICYgMHhmZiwgKChjKSA+PiA4KSAmIDB4ZmYsICAgKGQwKSwgKGQxKSwgKGQyKSwgKGQzKSwgKGQ0KSwgKGQ1KSwgKGQ2KSwgKGQ3KSB9fSkKLSNkZWZpbmUgVVVJRF9CRShhLCBiLCBjLCBkMCwgZDEsIGQyLCBkMywgZDQsIGQ1LCBkNiwgZDcpICAoKHV1aWRfYmUpICB7eyAoKGEpID4+IDI0KSAmIDB4ZmYsICgoYSkgPj4gMTYpICYgMHhmZiwgKChhKSA+PiA4KSAmIDB4ZmYsIChhKSAmIDB4ZmYsICAgKChiKSA+PiA4KSAmIDB4ZmYsIChiKSAmIDB4ZmYsICAgKChjKSA+PiA4KSAmIDB4ZmYsIChjKSAmIDB4ZmYsICAgKGQwKSwgKGQxKSwgKGQyKSwgKGQzKSwgKGQ0KSwgKGQ1KSwgKGQ2KSwgKGQ3KSB9fSkKKyNkZWZpbmUgVVVJRF9MRShhLGIsYyxkMCxkMSxkMixkMyxkNCxkNSxkNixkNykgXAorKCh1dWlkX2xlKSBcCit7IHsgKGEpICYgMHhmZiwgKChhKSA+PiA4KSAmIDB4ZmYsICgoYSkgPj4gMTYpICYgMHhmZiwgKChhKSA+PiAyNCkgJiAweGZmLCAoYikgJiAweGZmLCAoKGIpID4+IDgpICYgMHhmZiwgKGMpICYgMHhmZiwgKChjKSA+PiA4KSAmIDB4ZmYsIChkMCksIChkMSksIChkMiksIChkMyksIChkNCksIChkNSksIChkNiksIChkNykgfSB9KQorI2RlZmluZSBVVUlEX0JFKGEsYixjLGQwLGQxLGQyLGQzLGQ0LGQ1LGQ2LGQ3KSBcCisoKHV1aWRfYmUpIFwKK3sgeyAoKGEpID4+IDI0KSAmIDB4ZmYsICgoYSkgPj4gMTYpICYgMHhmZiwgKChhKSA+PiA4KSAmIDB4ZmYsIChhKSAmIDB4ZmYsICgoYikgPj4gOCkgJiAweGZmLCAoYikgJiAweGZmLCAoKGMpID4+IDgpICYgMHhmZiwgKGMpICYgMHhmZiwgKGQwKSwgKGQxKSwgKGQyKSwgKGQzKSwgKGQ0KSwgKGQ1KSwgKGQ2KSwgKGQ3KSB9IH0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOVUxMX1VVSURfTEUgICBVVUlEX0xFKDB4MDAwMDAwMDAsIDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDApCi0jZGVmaW5lIE5VTExfVVVJRF9CRSAgIFVVSURfQkUoMHgwMDAwMDAwMCwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCkKKyNkZWZpbmUgTlVMTF9VVUlEX0xFIFVVSURfTEUoMHgwMDAwMDAwMCwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDApCisjZGVmaW5lIE5VTExfVVVJRF9CRSBVVUlEX0JFKDB4MDAwMDAwMDAsIDB4MDAwMCwgMHgwMDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V2Y3ZpZGVvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V2Y3ZpZGVvLmgKaW5kZXggM2VlYmUxNy4uNzI0NmUzMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dmN2aWRlby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXZjdmlkZW8uaApAQCAtMzgsMzYgKzM4LDM2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVVkNfQ1RSTF9GTEFHX1JFU1RPUkUgKDEgPDwgNikKICNkZWZpbmUgVVZDX0NUUkxfRkxBR19BVVRPX1VQREFURSAoMSA8PCA3KQotI2RlZmluZSBVVkNfQ1RSTF9GTEFHX0dFVF9SQU5HRSAgIChVVkNfQ1RSTF9GTEFHX0dFVF9DVVIgfCBVVkNfQ1RSTF9GTEFHX0dFVF9NSU4gfCAgIFVWQ19DVFJMX0ZMQUdfR0VUX01BWCB8IFVWQ19DVFJMX0ZMQUdfR0VUX1JFUyB8ICAgVVZDX0NUUkxfRkxBR19HRVRfREVGKQorI2RlZmluZSBVVkNfQ1RSTF9GTEFHX0dFVF9SQU5HRSAoVVZDX0NUUkxfRkxBR19HRVRfQ1VSIHwgVVZDX0NUUkxfRkxBR19HRVRfTUlOIHwgVVZDX0NUUkxfRkxBR19HRVRfTUFYIHwgVVZDX0NUUkxfRkxBR19HRVRfUkVTIHwgVVZDX0NUUkxfRkxBR19HRVRfREVGKQogc3RydWN0IHV2Y19tZW51X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2YWx1ZTsKLSBfX3U4IG5hbWVbMzJdOworICBfX3UzMiB2YWx1ZTsKKyAgX191OCBuYW1lWzMyXTsKIH07CiBzdHJ1Y3QgdXZjX3h1X2NvbnRyb2xfbWFwcGluZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTggbmFtZVszMl07Ci0gX191OCBlbnRpdHlbMTZdOwotIF9fdTggc2VsZWN0b3I7CisgIF9fdTMyIGlkOworICBfX3U4IG5hbWVbMzJdOworICBfX3U4IGVudGl0eVsxNl07CisgIF9fdTggc2VsZWN0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2l6ZTsKLSBfX3U4IG9mZnNldDsKLSBfX3UzMiB2NGwyX3R5cGU7Ci0gX191MzIgZGF0YV90eXBlOworICBfX3U4IHNpemU7CisgIF9fdTggb2Zmc2V0OworICBfX3UzMiB2NGwyX3R5cGU7CisgIF9fdTMyIGRhdGFfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHV2Y19tZW51X2luZm8gX191c2VyICptZW51X2luZm87Ci0gX191MzIgbWVudV9jb3VudDsKLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgc3RydWN0IHV2Y19tZW51X2luZm8gX191c2VyICogbWVudV9pbmZvOworICBfX3UzMiBtZW51X2NvdW50OworICBfX3UzMiByZXNlcnZlZFs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHV2Y194dV9jb250cm9sX3F1ZXJ5IHsKLSBfX3U4IHVuaXQ7Ci0gX191OCBzZWxlY3RvcjsKLSBfX3U4IHF1ZXJ5OworICBfX3U4IHVuaXQ7CisgIF9fdTggc2VsZWN0b3I7CisgIF9fdTggcXVlcnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNpemU7Ci0gX191OCBfX3VzZXIgKmRhdGE7CisgIF9fdTE2IHNpemU7CisgIF9fdTggX191c2VyICogZGF0YTsKIH07CiAjZGVmaW5lIFVWQ0lPQ19DVFJMX01BUCBfSU9XUigndScsIDB4MjAsIHN0cnVjdCB1dmNfeHVfY29udHJvbF9tYXBwaW5nKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb21tb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb21tb24uaAppbmRleCA4MTRkOTYwLi5hMzc5YTdlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29tbW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWNvbW1vbi5oCkBAIC0xOCwyOCArMTgsMzggQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfX1Y0TDJfQ09NTU9OX18KICNkZWZpbmUgX19WNEwyX0NPTU1PTl9fCisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgVjRMMl9TRUxfVEdUX0NST1AgMHgwMDAwCi0jZGVmaW5lIFY0TDJfU0VMX1RHVF9DUk9QX0RFRkFVTFQgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NFTF9UR1RfQ1JPUF9ERUZBVUxUIDB4MDAwMQogI2RlZmluZSBWNEwyX1NFTF9UR1RfQ1JPUF9CT1VORFMgMHgwMDAyCiAjZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFIDB4MDEwMAogI2RlZmluZSBWNEwyX1NFTF9UR1RfQ09NUE9TRV9ERUZBVUxUIDB4MDEwMQotI2RlZmluZSBWNEwyX1NFTF9UR1RfQ09NUE9TRV9CT1VORFMgMHgwMTAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NFTF9UR1RfQ09NUE9TRV9CT1VORFMgMHgwMTAyCiAjZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFX1BBRERFRCAweDAxMDMKICNkZWZpbmUgVjRMMl9TRUxfVEdUX0NST1BfQUNUSVZFIFY0TDJfU0VMX1RHVF9DUk9QCiAjZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFX0FDVElWRSBWNEwyX1NFTF9UR1RfQ09NUE9TRQotI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfVEdUX0NST1BfQUNUVUFMIFY0TDJfU0VMX1RHVF9DUk9QCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfVEdUX0NST1BfQUNUVUFMIFY0TDJfU0VMX1RHVF9DUk9QCiAjZGVmaW5lIFY0TDJfU1VCREVWX1NFTF9UR1RfQ09NUE9TRV9BQ1RVQUwgVjRMMl9TRUxfVEdUX0NPTVBPU0UKICNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX1RHVF9DUk9QX0JPVU5EUyBWNEwyX1NFTF9UR1RfQ1JPUF9CT1VORFMKICNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX1RHVF9DT01QT1NFX0JPVU5EUyBWNEwyX1NFTF9UR1RfQ09NUE9TRV9CT1VORFMKLSNkZWZpbmUgVjRMMl9TRUxfRkxBR19HRSAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9TRUxfRkxBR19HRSAoMSA8PCAwKQogI2RlZmluZSBWNEwyX1NFTF9GTEFHX0xFICgxIDw8IDEpCiAjZGVmaW5lIFY0TDJfU0VMX0ZMQUdfS0VFUF9DT05GSUcgKDEgPDwgMikKICNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX0ZMQUdfU0laRV9HRSBWNEwyX1NFTF9GTEFHX0dFCi0jZGVmaW5lIFY0TDJfU1VCREVWX1NFTF9GTEFHX1NJWkVfTEUgVjRMMl9TRUxfRkxBR19MRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX0ZMQUdfU0laRV9MRSBWNEwyX1NFTF9GTEFHX0xFCiAjZGVmaW5lIFY0TDJfU1VCREVWX1NFTF9GTEFHX0tFRVBfQ09ORklHIFY0TDJfU0VMX0ZMQUdfS0VFUF9DT05GSUcKK3N0cnVjdCB2NGwyX2VkaWQgeworICBfX3UzMiBwYWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzdGFydF9ibG9jazsKKyAgX191MzIgYmxvY2tzOworICBfX3UzMiByZXNlcnZlZFs1XTsKKyAgX191OCAqIGVkaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWNvbnRyb2xzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaAppbmRleCAyMjM2ZmY3Li4wMjRhYTRkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaApAQCAtMzEsOTAwICszMSw5NjQgQEAKICNkZWZpbmUgVjRMMl9DVFJMX0NMQVNTX0RWIDB4MDBhMDAwMDAKICNkZWZpbmUgVjRMMl9DVFJMX0NMQVNTX0ZNX1JYIDB4MDBhMTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ1RSTF9DTEFTU19SRl9UVU5FUiAweDAwYTIwMDAwCisjZGVmaW5lIFY0TDJfQ1RSTF9DTEFTU19ERVRFQ1QgMHgwMGEzMDAwMAogI2RlZmluZSBWNEwyX0NJRF9CQVNFIChWNEwyX0NUUkxfQ0xBU1NfVVNFUiB8IDB4OTAwKQogI2RlZmluZSBWNEwyX0NJRF9VU0VSX0JBU0UgVjRMMl9DSURfQkFTRQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfVVNFUl9DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX1VTRVIgfCAxKQotI2RlZmluZSBWNEwyX0NJRF9CUklHSFRORVNTIChWNEwyX0NJRF9CQVNFKzApCisjZGVmaW5lIFY0TDJfQ0lEX0JSSUdIVE5FU1MgKFY0TDJfQ0lEX0JBU0UgKyAwKQorI2RlZmluZSBWNEwyX0NJRF9DT05UUkFTVCAoVjRMMl9DSURfQkFTRSArIDEpCisjZGVmaW5lIFY0TDJfQ0lEX1NBVFVSQVRJT04gKFY0TDJfQ0lEX0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfQ09OVFJBU1QgKFY0TDJfQ0lEX0JBU0UrMSkKLSNkZWZpbmUgVjRMMl9DSURfU0FUVVJBVElPTiAoVjRMMl9DSURfQkFTRSsyKQotI2RlZmluZSBWNEwyX0NJRF9IVUUgKFY0TDJfQ0lEX0JBU0UrMykKLSNkZWZpbmUgVjRMMl9DSURfQVVESU9fVk9MVU1FIChWNEwyX0NJRF9CQVNFKzUpCisjZGVmaW5lIFY0TDJfQ0lEX0hVRSAoVjRMMl9DSURfQkFTRSArIDMpCisjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX1ZPTFVNRSAoVjRMMl9DSURfQkFTRSArIDUpCisjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UgKyA2KQorI2RlZmluZSBWNEwyX0NJRF9BVURJT19CQVNTIChWNEwyX0NJRF9CQVNFICsgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UrNikKLSNkZWZpbmUgVjRMMl9DSURfQVVESU9fQkFTUyAoVjRMMl9DSURfQkFTRSs3KQotI2RlZmluZSBWNEwyX0NJRF9BVURJT19UUkVCTEUgKFY0TDJfQ0lEX0JBU0UrOCkKLSNkZWZpbmUgVjRMMl9DSURfQVVESU9fTVVURSAoVjRMMl9DSURfQkFTRSs5KQorI2RlZmluZSBWNEwyX0NJRF9BVURJT19UUkVCTEUgKFY0TDJfQ0lEX0JBU0UgKyA4KQorI2RlZmluZSBWNEwyX0NJRF9BVURJT19NVVRFIChWNEwyX0NJRF9CQVNFICsgOSkKKyNkZWZpbmUgVjRMMl9DSURfQVVESU9fTE9VRE5FU1MgKFY0TDJfQ0lEX0JBU0UgKyAxMCkKKyNkZWZpbmUgVjRMMl9DSURfQkxBQ0tfTEVWRUwgKFY0TDJfQ0lEX0JBU0UgKyAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0xPVURORVNTIChWNEwyX0NJRF9CQVNFKzEwKQotI2RlZmluZSBWNEwyX0NJRF9CTEFDS19MRVZFTCAoVjRMMl9DSURfQkFTRSsxMSkKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19XSElURV9CQUxBTkNFIChWNEwyX0NJRF9CQVNFKzEyKQotI2RlZmluZSBWNEwyX0NJRF9ET19XSElURV9CQUxBTkNFIChWNEwyX0NJRF9CQVNFKzEzKQorI2RlZmluZSBWNEwyX0NJRF9BVVRPX1dISVRFX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UgKyAxMikKKyNkZWZpbmUgVjRMMl9DSURfRE9fV0hJVEVfQkFMQU5DRSAoVjRMMl9DSURfQkFTRSArIDEzKQorI2RlZmluZSBWNEwyX0NJRF9SRURfQkFMQU5DRSAoVjRMMl9DSURfQkFTRSArIDE0KQorI2RlZmluZSBWNEwyX0NJRF9CTFVFX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UgKyAxNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX1JFRF9CQUxBTkNFIChWNEwyX0NJRF9CQVNFKzE0KQotI2RlZmluZSBWNEwyX0NJRF9CTFVFX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UrMTUpCi0jZGVmaW5lIFY0TDJfQ0lEX0dBTU1BIChWNEwyX0NJRF9CQVNFKzE2KQorI2RlZmluZSBWNEwyX0NJRF9HQU1NQSAoVjRMMl9DSURfQkFTRSArIDE2KQogI2RlZmluZSBWNEwyX0NJRF9XSElURU5FU1MgKFY0TDJfQ0lEX0dBTU1BKQorI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRSAoVjRMMl9DSURfQkFTRSArIDE3KQorI2RlZmluZSBWNEwyX0NJRF9BVVRPR0FJTiAoVjRMMl9DSURfQkFTRSArIDE4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkUgKFY0TDJfQ0lEX0JBU0UrMTcpCi0jZGVmaW5lIFY0TDJfQ0lEX0FVVE9HQUlOIChWNEwyX0NJRF9CQVNFKzE4KQotI2RlZmluZSBWNEwyX0NJRF9HQUlOIChWNEwyX0NJRF9CQVNFKzE5KQotI2RlZmluZSBWNEwyX0NJRF9IRkxJUCAoVjRMMl9DSURfQkFTRSsyMCkKKyNkZWZpbmUgVjRMMl9DSURfR0FJTiAoVjRMMl9DSURfQkFTRSArIDE5KQorI2RlZmluZSBWNEwyX0NJRF9IRkxJUCAoVjRMMl9DSURfQkFTRSArIDIwKQorI2RlZmluZSBWNEwyX0NJRF9WRkxJUCAoVjRMMl9DSURfQkFTRSArIDIxKQorI2RlZmluZSBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWSAoVjRMMl9DSURfQkFTRSArIDI0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfVkZMSVAgKFY0TDJfQ0lEX0JBU0UrMjEpCi0jZGVmaW5lIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZIChWNEwyX0NJRF9CQVNFKzI0KQogZW51bSB2NGwyX3Bvd2VyX2xpbmVfZnJlcXVlbmN5IHsKLSBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV9ESVNBQkxFRCA9IDAsCisgIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZX0RJU0FCTEVEID0gMCwKKyAgVjRMMl9DSURfUE9XRVJfTElORV9GUkVRVUVOQ1lfNTBIWiA9IDEsCisgIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZXzYwSFogPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV81MEhaID0gMSwKLSBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV82MEhaID0gMiwKLSBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV9BVVRPID0gMywKKyAgVjRMMl9DSURfUE9XRVJfTElORV9GUkVRVUVOQ1lfQVVUTyA9IDMsCiB9OworI2RlZmluZSBWNEwyX0NJRF9IVUVfQVVUTyAoVjRMMl9DSURfQkFTRSArIDI1KQorI2RlZmluZSBWNEwyX0NJRF9XSElURV9CQUxBTkNFX1RFTVBFUkFUVVJFIChWNEwyX0NJRF9CQVNFICsgMjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9IVUVfQVVUTyAoVjRMMl9DSURfQkFTRSsyNSkKLSNkZWZpbmUgVjRMMl9DSURfV0hJVEVfQkFMQU5DRV9URU1QRVJBVFVSRSAoVjRMMl9DSURfQkFTRSsyNikKLSNkZWZpbmUgVjRMMl9DSURfU0hBUlBORVNTIChWNEwyX0NJRF9CQVNFKzI3KQotI2RlZmluZSBWNEwyX0NJRF9CQUNLTElHSFRfQ09NUEVOU0FUSU9OIChWNEwyX0NJRF9CQVNFKzI4KQorI2RlZmluZSBWNEwyX0NJRF9TSEFSUE5FU1MgKFY0TDJfQ0lEX0JBU0UgKyAyNykKKyNkZWZpbmUgVjRMMl9DSURfQkFDS0xJR0hUX0NPTVBFTlNBVElPTiAoVjRMMl9DSURfQkFTRSArIDI4KQorI2RlZmluZSBWNEwyX0NJRF9DSFJPTUFfQUdDIChWNEwyX0NJRF9CQVNFICsgMjkpCisjZGVmaW5lIFY0TDJfQ0lEX0NPTE9SX0tJTExFUiAoVjRMMl9DSURfQkFTRSArIDMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfQ0hST01BX0FHQyAoVjRMMl9DSURfQkFTRSsyOSkKLSNkZWZpbmUgVjRMMl9DSURfQ09MT1JfS0lMTEVSIChWNEwyX0NJRF9CQVNFKzMwKQotI2RlZmluZSBWNEwyX0NJRF9DT0xPUkZYIChWNEwyX0NJRF9CQVNFKzMxKQorI2RlZmluZSBWNEwyX0NJRF9DT0xPUkZYIChWNEwyX0NJRF9CQVNFICsgMzEpCiBlbnVtIHY0bDJfY29sb3JmeCB7CisgIFY0TDJfQ09MT1JGWF9OT05FID0gMCwKKyAgVjRMMl9DT0xPUkZYX0JXID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DT0xPUkZYX05PTkUgPSAwLAotIFY0TDJfQ09MT1JGWF9CVyA9IDEsCi0gVjRMMl9DT0xPUkZYX1NFUElBID0gMiwKLSBWNEwyX0NPTE9SRlhfTkVHQVRJVkUgPSAzLAorICBWNEwyX0NPTE9SRlhfU0VQSUEgPSAyLAorICBWNEwyX0NPTE9SRlhfTkVHQVRJVkUgPSAzLAorICBWNEwyX0NPTE9SRlhfRU1CT1NTID0gNCwKKyAgVjRMMl9DT0xPUkZYX1NLRVRDSCA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ09MT1JGWF9FTUJPU1MgPSA0LAotIFY0TDJfQ09MT1JGWF9TS0VUQ0ggPSA1LAotIFY0TDJfQ09MT1JGWF9TS1lfQkxVRSA9IDYsCi0gVjRMMl9DT0xPUkZYX0dSQVNTX0dSRUVOID0gNywKKyAgVjRMMl9DT0xPUkZYX1NLWV9CTFVFID0gNiwKKyAgVjRMMl9DT0xPUkZYX0dSQVNTX0dSRUVOID0gNywKKyAgVjRMMl9DT0xPUkZYX1NLSU5fV0hJVEVOID0gOCwKKyAgVjRMMl9DT0xPUkZYX1ZJVklEID0gOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DT0xPUkZYX1NLSU5fV0hJVEVOID0gOCwKLSBWNEwyX0NPTE9SRlhfVklWSUQgPSA5LAotIFY0TDJfQ09MT1JGWF9BUVVBID0gMTAsCi0gVjRMMl9DT0xPUkZYX0FSVF9GUkVFWkUgPSAxMSwKKyAgVjRMMl9DT0xPUkZYX0FRVUEgPSAxMCwKKyAgVjRMMl9DT0xPUkZYX0FSVF9GUkVFWkUgPSAxMSwKKyAgVjRMMl9DT0xPUkZYX1NJTEhPVUVUVEUgPSAxMiwKKyAgVjRMMl9DT0xPUkZYX1NPTEFSSVpBVElPTiA9IDEzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NPTE9SRlhfU0lMSE9VRVRURSA9IDEyLAotIFY0TDJfQ09MT1JGWF9TT0xBUklaQVRJT04gPSAxMywKLSBWNEwyX0NPTE9SRlhfQU5USVFVRSA9IDE0LAotIFY0TDJfQ09MT1JGWF9TRVRfQ0JDUiA9IDE1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9DT0xPUkZYX0FOVElRVUUgPSAxNCwKKyAgVjRMMl9DT0xPUkZYX1NFVF9DQkNSID0gMTUsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9BVVRPQlJJR0hUTkVTUyAoVjRMMl9DSURfQkFTRSszMikKLSNkZWZpbmUgVjRMMl9DSURfQkFORF9TVE9QX0ZJTFRFUiAoVjRMMl9DSURfQkFTRSszMykKLSNkZWZpbmUgVjRMMl9DSURfUk9UQVRFIChWNEwyX0NJRF9CQVNFKzM0KQorI2RlZmluZSBWNEwyX0NJRF9BVVRPQlJJR0hUTkVTUyAoVjRMMl9DSURfQkFTRSArIDMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfQkdfQ09MT1IgKFY0TDJfQ0lEX0JBU0UrMzUpCi0jZGVmaW5lIFY0TDJfQ0lEX0NIUk9NQV9HQUlOIChWNEwyX0NJRF9CQVNFKzM2KQotI2RlZmluZSBWNEwyX0NJRF9JTExVTUlOQVRPUlNfMSAoVjRMMl9DSURfQkFTRSszNykKLSNkZWZpbmUgVjRMMl9DSURfSUxMVU1JTkFUT1JTXzIgKFY0TDJfQ0lEX0JBU0UrMzgpCisjZGVmaW5lIFY0TDJfQ0lEX0JBTkRfU1RPUF9GSUxURVIgKFY0TDJfQ0lEX0JBU0UgKyAzMykKKyNkZWZpbmUgVjRMMl9DSURfUk9UQVRFIChWNEwyX0NJRF9CQVNFICsgMzQpCisjZGVmaW5lIFY0TDJfQ0lEX0JHX0NPTE9SIChWNEwyX0NJRF9CQVNFICsgMzUpCisjZGVmaW5lIFY0TDJfQ0lEX0NIUk9NQV9HQUlOIChWNEwyX0NJRF9CQVNFICsgMzYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NSU5fQlVGRkVSU19GT1JfQ0FQVFVSRSAoVjRMMl9DSURfQkFTRSszOSkKLSNkZWZpbmUgVjRMMl9DSURfTUlOX0JVRkZFUlNfRk9SX09VVFBVVCAoVjRMMl9DSURfQkFTRSs0MCkKLSNkZWZpbmUgVjRMMl9DSURfQUxQSEFfQ09NUE9ORU5UIChWNEwyX0NJRF9CQVNFKzQxKQotI2RlZmluZSBWNEwyX0NJRF9DT0xPUkZYX0NCQ1IgKFY0TDJfQ0lEX0JBU0UrNDIpCisjZGVmaW5lIFY0TDJfQ0lEX0lMTFVNSU5BVE9SU18xIChWNEwyX0NJRF9CQVNFICsgMzcpCisjZGVmaW5lIFY0TDJfQ0lEX0lMTFVNSU5BVE9SU18yIChWNEwyX0NJRF9CQVNFICsgMzgpCisjZGVmaW5lIFY0TDJfQ0lEX01JTl9CVUZGRVJTX0ZPUl9DQVBUVVJFIChWNEwyX0NJRF9CQVNFICsgMzkpCisjZGVmaW5lIFY0TDJfQ0lEX01JTl9CVUZGRVJTX0ZPUl9PVVRQVVQgKFY0TDJfQ0lEX0JBU0UgKyA0MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0xBU1RQMSAoVjRMMl9DSURfQkFTRSs0MykKKyNkZWZpbmUgVjRMMl9DSURfQUxQSEFfQ09NUE9ORU5UIChWNEwyX0NJRF9CQVNFICsgNDEpCisjZGVmaW5lIFY0TDJfQ0lEX0NPTE9SRlhfQ0JDUiAoVjRMMl9DSURfQkFTRSArIDQyKQorI2RlZmluZSBWNEwyX0NJRF9MQVNUUDEgKFY0TDJfQ0lEX0JBU0UgKyA0MykKICNkZWZpbmUgVjRMMl9DSURfVVNFUl9NRVlFX0JBU0UgKFY0TDJfQ0lEX1VTRVJfQkFTRSArIDB4MTAwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1VTRVJfQlRUVl9CQVNFIChWNEwyX0NJRF9VU0VSX0JBU0UgKyAweDEwMTApCiAjZGVmaW5lIFY0TDJfQ0lEX1VTRVJfUzIyNTVfQkFTRSAoVjRMMl9DSURfVVNFUl9CQVNFICsgMHgxMDMwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfVVNFUl9TSTQ3NlhfQkFTRSAoVjRMMl9DSURfVVNFUl9CQVNFICsgMHgxMDQwKQogI2RlZmluZSBWNEwyX0NJRF9VU0VSX1RJX1ZQRV9CQVNFIChWNEwyX0NJRF9VU0VSX0JBU0UgKyAweDEwNTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9VU0VSX1NBQTcxMzRfQkFTRSAoVjRMMl9DSURfVVNFUl9CQVNFICsgMHgxMDYwKQogI2RlZmluZSBWNEwyX0NJRF9NUEVHX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19NUEVHIHwgMHg5MDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfTVBFRyB8IDEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSswKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9UWVBFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX3N0cmVhbV90eXBlIHsKLSBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfUFMgPSAwLAorICBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfUFMgPSAwLAorICBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfVFMgPSAxLAorICBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzFfU1MgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfVFMgPSAxLAotIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMV9TUyA9IDIsCi0gVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcyX0RWRCA9IDMsCi0gVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcxX1ZDRCA9IDQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9TVkNEID0gNSwKKyAgVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcyX0RWRCA9IDMsCisgIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMV9WQ0QgPSA0LAorICBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfU1ZDRCA9IDUsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QSURfUE1UIChWNEwyX0NJRF9NUEVHX0JBU0UrMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUElEX0FVRElPIChWNEwyX0NJRF9NUEVHX0JBU0UrMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9WSURFTyAoVjRMMl9DSURfTVBFR19CQVNFKzMpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9QQ1IgKFY0TDJfQ0lEX01QRUdfQkFTRSs0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QRVNfSURfQVVESU8gKFY0TDJfQ0lEX01QRUdfQkFTRSs1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QRVNfSURfVklERU8gKFY0TDJfQ0lEX01QRUdfQkFTRSs2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QSURfUE1UIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QSURfQVVESU8gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9WSURFTyAoVjRMMl9DSURfTVBFR19CQVNFICsgMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUElEX1BDUiAoVjRMMl9DSURfTVBFR19CQVNFICsgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1ZCSV9GTVQgKFY0TDJfQ0lEX01QRUdfQkFTRSs3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QRVNfSURfQVVESU8gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BFU19JRF9WSURFTyAoVjRMMl9DSURfTVBFR19CQVNFICsgNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fVkJJX0ZNVCAoVjRMMl9DSURfTVBFR19CQVNFICsgNykKIGVudW0gdjRsMl9tcGVnX3N0cmVhbV92YmlfZm10IHsKLSBWNEwyX01QRUdfU1RSRUFNX1ZCSV9GTVRfTk9ORSA9IDAsCi0gVjRMMl9NUEVHX1NUUkVBTV9WQklfRk1UX0lWVFYgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX1NUUkVBTV9WQklfRk1UX05PTkUgPSAwLAorICBWNEwyX01QRUdfU1RSRUFNX1ZCSV9GTVRfSVZUViA9IDEsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVEgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fU0FNUExJTkdfRlJFUSAoVjRMMl9DSURfTVBFR19CQVNFICsgMTAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX2F1ZGlvX3NhbXBsaW5nX2ZyZXEgewotIFY0TDJfTVBFR19BVURJT19TQU1QTElOR19GUkVRXzQ0MTAwID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVFfNDQxMDAgPSAwLAorICBWNEwyX01QRUdfQVVESU9fU0FNUExJTkdfRlJFUV80ODAwMCA9IDEsCisgIFY0TDJfTVBFR19BVURJT19TQU1QTElOR19GUkVRXzMyMDAwID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVFfNDgwMDAgPSAxLAotIFY0TDJfTVBFR19BVURJT19TQU1QTElOR19GUkVRXzMyMDAwID0gMiwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fRU5DT0RJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0VOQ09ESU5HIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDEpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19lbmNvZGluZyB7Ci0gVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0xBWUVSXzEgPSAwLAotIFY0TDJfTVBFR19BVURJT19FTkNPRElOR19MQVlFUl8yID0gMSwKLSBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfTEFZRVJfMyA9IDIsCisgIFY0TDJfTVBFR19BVURJT19FTkNPRElOR19MQVlFUl8xID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0FBQyA9IDMsCi0gVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0FDMyA9IDQsCisgIFY0TDJfTVBFR19BVURJT19FTkNPRElOR19MQVlFUl8yID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0xBWUVSXzMgPSAyLAorICBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfQUFDID0gMywKKyAgVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0FDMyA9IDQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19MMV9CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19MMV9CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDIpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19sMV9iaXRyYXRlIHsKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zMksgPSAwLAotIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzY0SyA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfOTZLID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzJLID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMTI4SyA9IDMsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMTYwSyA9IDQsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMTkySyA9IDUsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMjI0SyA9IDYsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzY0SyA9IDEsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzk2SyA9IDIsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzEyOEsgPSAzLAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8xNjBLID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMjU2SyA9IDcsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMjg4SyA9IDgsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzIwSyA9IDksCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzUySyA9IDEwLAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8xOTJLID0gNSwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMjI0SyA9IDYsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzI1NksgPSA3LAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8yODhLID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzg0SyA9IDExLAotIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzQxNksgPSAxMiwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV80NDhLID0gMTMsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzMyMEsgPSA5LAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zNTJLID0gMTAsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzM4NEsgPSAxMSwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfNDE2SyA9IDEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfNDQ4SyA9IDEzLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTDJfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFKzEwMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19MMl9CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDMpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19sMl9iaXRyYXRlIHsKLSBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8zMksgPSAwLAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzQ4SyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzU2SyA9IDIsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNjRLID0gMywKLSBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV84MEsgPSA0LAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzk2SyA9IDUsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzMySyA9IDAsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzQ4SyA9IDEsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzU2SyA9IDIsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzY0SyA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzExMksgPSA2LAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzEyOEsgPSA3LAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzE2MEsgPSA4LAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzE5MksgPSA5LAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV84MEsgPSA0LAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV85NksgPSA1LAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8xMTJLID0gNiwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTI4SyA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzIyNEsgPSAxMCwKLSBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8yNTZLID0gMTEsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMzIwSyA9IDEyLAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzM4NEsgPSAxMywKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTYwSyA9IDgsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzE5MksgPSA5LAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8yMjRLID0gMTAsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzI1NksgPSAxMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzMyMEsgPSAxMiwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMzg0SyA9IDEzLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19MM19CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTA0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0wzX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19sM19iaXRyYXRlIHsKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8zMksgPSAwLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8zMksgPSAwLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV80MEsgPSAxLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV80OEsgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV80MEsgPSAxLAotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzQ4SyA9IDIsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfNTZLID0gMywKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV82NEsgPSA0LAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV81NksgPSAzLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV82NEsgPSA0LAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV84MEsgPSA1LAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV85NksgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV84MEsgPSA1LAotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzk2SyA9IDYsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTEySyA9IDcsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTI4SyA9IDgsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzExMksgPSA3LAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xMjhLID0gOCwKKyAgVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTYwSyA9IDksCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzE5MksgPSAxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTYwSyA9IDksCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTkySyA9IDEwLAotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzIyNEsgPSAxMSwKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8yNTZLID0gMTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzMyMEsgPSAxMywKKyAgVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMjI0SyA9IDExLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8yNTZLID0gMTIsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzMyMEsgPSAxMywKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFKzEwNSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFICsgMTA1KQogZW51bSB2NGwyX21wZWdfYXVkaW9fbW9kZSB7CisgIFY0TDJfTVBFR19BVURJT19NT0RFX1NURVJFTyA9IDAsCisgIFY0TDJfTVBFR19BVURJT19NT0RFX0pPSU5UX1NURVJFTyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19NT0RFX1NURVJFTyA9IDAsCi0gVjRMMl9NUEVHX0FVRElPX01PREVfSk9JTlRfU1RFUkVPID0gMSwKLSBWNEwyX01QRUdfQVVESU9fTU9ERV9EVUFMID0gMiwKLSBWNEwyX01QRUdfQVVESU9fTU9ERV9NT05PID0gMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTVBFR19BVURJT19NT0RFX0RVQUwgPSAyLAorICBWNEwyX01QRUdfQVVESU9fTU9ERV9NT05PID0gMywKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19tb2RlX2V4dGVuc2lvbiB7Ci0gVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzQgPSAwLAorICBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfNCA9IDAsCisgIFY0TDJfTVBFR19BVURJT19NT0RFX0VYVEVOU0lPTl9CT1VORF84ID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzEyID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzggPSAxLAotIFY0TDJfTVBFR19BVURJT19NT0RFX0VYVEVOU0lPTl9CT1VORF8xMiA9IDIsCi0gVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzE2ID0gMywKKyAgVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzE2ID0gMywKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0VNUEhBU0lTIChWNEwyX0NJRF9NUEVHX0JBU0UrMTA3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0VNUEhBU0lTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDcpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19lbXBoYXNpcyB7Ci0gVjRMMl9NUEVHX0FVRElPX0VNUEhBU0lTX05PTkUgPSAwLAotIFY0TDJfTVBFR19BVURJT19FTVBIQVNJU181MF9ESVZfMTVfdVMgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fRU1QSEFTSVNfQ0NJVFRfSjE3ID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0VNUEhBU0lTX05PTkUgPSAwLAorICBWNEwyX01QRUdfQVVESU9fRU1QSEFTSVNfNTBfRElWXzE1X3VTID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX0VNUEhBU0lTX0NDSVRUX0oxNyA9IDIsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0NSQyAoVjRMMl9DSURfTVBFR19CQVNFKzEwOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fQ1JDIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDgpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19jcmMgeworICBWNEwyX01QRUdfQVVESU9fQ1JDX05PTkUgPSAwLAorICBWNEwyX01QRUdfQVVESU9fQ1JDX0NSQzE2ID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0NSQ19OT05FID0gMCwKLSBWNEwyX01QRUdfQVVESU9fQ1JDX0NSQzE2ID0gMSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTVVURSAoVjRMMl9DSURfTVBFR19CQVNFKzEwOSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NVVRFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fQUFDX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDExMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19BQzNfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMTExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19BQUNfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFKzExMCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19BQzNfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFKzExMSkKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2FjM19iaXRyYXRlIHsKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMzJLID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzMySyA9IDAsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV80MEsgPSAxLAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNDhLID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzQwSyA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzQ4SyA9IDIsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzU2SyA9IDMsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzY0SyA9IDQsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV81NksgPSAzLAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNjRLID0gNCwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzgwSyA9IDUsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV85NksgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfODBLID0gNSwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfOTZLID0gNiwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTEySyA9IDcsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzEyOEsgPSA4LAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTEySyA9IDcsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8xMjhLID0gOCwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzE2MEsgPSA5LAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTkySyA9IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTYwSyA9IDksCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzE5MksgPSAxMCwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMjI0SyA9IDExLAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8yNTZLID0gMTIsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8yMjRLID0gMTEsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8yNTZLID0gMTIsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8zMjBLID0gMTMsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8zODRLID0gMTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8zMjBLID0gMTMsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzM4NEsgPSAxNCwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNDQ4SyA9IDE1LAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV81MTJLID0gMTYsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV80NDhLID0gMTUsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV81MTJLID0gMTYsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV81NzZLID0gMTcsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV82NDBLID0gMTgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV81NzZLID0gMTcsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzY0MEsgPSAxOCwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fREVDX1BMQVlCQUNLIChWNEwyX0NJRF9NUEVHX0JBU0UrMTEyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19ERUNfUExBWUJBQ0sgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDExMikKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2RlY19wbGF5YmFjayB7Ci0gVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19BVVRPID0gMCwKLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX1NURVJFTyA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19MRUZUID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19BVVRPID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19SSUdIVCA9IDMsCi0gVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19NT05PID0gNCwKLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX1NXQVBQRURfU1RFUkVPID0gNSwKKyAgVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19TVEVSRU8gPSAxLAorICBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX0xFRlQgPSAyLAorICBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX1JJR0hUID0gMywKKyAgVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19NT05PID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTVBFR19BVURJT19ERUNfUExBWUJBQ0tfU1dBUFBFRF9TVEVSRU8gPSA1LAogfTsKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19ERUNfTVVMVElMSU5HVUFMX1BMQVlCQUNLIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMTMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fRU5DT0RJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fREVDX01VTFRJTElOR1VBTF9QTEFZQkFDSyAoVjRMMl9DSURfTVBFR19CQVNFKzExMykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19FTkNPRElORyAoVjRMMl9DSURfTVBFR19CQVNFKzIwMCkKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2VuY29kaW5nIHsKLSBWNEwyX01QRUdfVklERU9fRU5DT0RJTkdfTVBFR18xID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0VOQ09ESU5HX01QRUdfMSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19FTkNPRElOR19NUEVHXzIgPSAxLAorICBWNEwyX01QRUdfVklERU9fRU5DT0RJTkdfTVBFR180X0FWQyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19FTkNPRElOR19NUEVHXzIgPSAxLAotIFY0TDJfTVBFR19WSURFT19FTkNPRElOR19NUEVHXzRfQVZDID0gMiwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQVNQRUNUIChWNEwyX0NJRF9NUEVHX0JBU0UrMjAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19BU1BFQ1QgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwMSkKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2FzcGVjdCB7Ci0gVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF8xeDEgPSAwLAotIFY0TDJfTVBFR19WSURFT19BU1BFQ1RfNHgzID0gMSwKLSBWNEwyX01QRUdfVklERU9fQVNQRUNUXzE2eDkgPSAyLAorICBWNEwyX01QRUdfVklERU9fQVNQRUNUXzF4MSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19BU1BFQ1RfMjIxeDEwMCA9IDMsCisgIFY0TDJfTVBFR19WSURFT19BU1BFQ1RfNHgzID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF8xNng5ID0gMiwKKyAgVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF8yMjF4MTAwID0gMywKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQl9GUkFNRVMgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDIpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fR09QX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0dPUF9DTE9TVVJFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1BVTExET1dOIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEVfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFKzIwNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19CX0ZSQU1FUyAoVjRMMl9DSURfTVBFR19CQVNFICsgMjAyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0dPUF9TSVpFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMDMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fR09QX0NMT1NVUkUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwNCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19QVUxMRE9XTiAoVjRMMl9DSURfTVBFR19CQVNFICsgMjA1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19CSVRSQVRFX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwNikKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2JpdHJhdGVfbW9kZSB7CisgIFY0TDJfTVBFR19WSURFT19CSVRSQVRFX01PREVfVkJSID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0JJVFJBVEVfTU9ERV9DQlIgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fQklUUkFURV9NT0RFX1ZCUiA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0JJVFJBVEVfTU9ERV9DQlIgPSAxLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwNykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19CSVRSQVRFX1BFQUsgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwOCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19URU1QT1JBTF9ERUNJTUFUSU9OIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMDkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEVfUEVBSyAoVjRMMl9DSURfTVBFR19CQVNFKzIwOCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19URU1QT1JBTF9ERUNJTUFUSU9OIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA5KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVURV9ZVVYgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjEwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VVEVfWVVWIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDT0RFUl9TTElDRV9JTlRFUkZBQ0UgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIxMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19ERUNPREVSX01QRUc0X0RFQkxPQ0tfRklMVEVSIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0RFQ09ERVJfU0xJQ0VfSU5URVJGQUNFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjEyKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0RFQ09ERVJfTVBFRzRfREVCTE9DS19GSUxURVIgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTMpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQ1lDTElDX0lOVFJBX1JFRlJFU0hfTUIgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fRlJBTUVfUkNfRU5BQkxFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjE1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IRUFERVJfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFKzIxNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19DWUNMSUNfSU5UUkFfUkVGUkVTSF9NQiAoVjRMMl9DSURfTVBFR19CQVNFICsgMjE0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0ZSQU1FX1JDX0VOQUJMRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjE1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFQURFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTYpCiBlbnVtIHY0bDJfbXBlZ192aWRlb19oZWFkZXJfbW9kZSB7Ci0gVjRMMl9NUEVHX1ZJREVPX0hFQURFUl9NT0RFX1NFUEFSQVRFID0gMCwKLSBWNEwyX01QRUdfVklERU9fSEVBREVSX01PREVfSk9JTkVEX1dJVEhfMVNUX0ZSQU1FID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTVBFR19WSURFT19IRUFERVJfTU9ERV9TRVBBUkFURSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IRUFERVJfTU9ERV9KT0lORURfV0lUSF8xU1RfRlJBTUUgPSAxLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NQVhfUkVGX1BJQyAoVjRMMl9DSURfTVBFR19CQVNFKzIxNykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NQl9SQ19FTkFCTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTgpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTUFYX0JZVEVTIChWNEwyX0NJRF9NUEVHX0JBU0UrMjE5KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01BWF9SRUZfUElDIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VTFRJX1NMSUNFX01BWF9NQiAoVjRMMl9DSURfTVBFR19CQVNFKzIyMCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NVUxUSV9TTElDRV9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjIxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01CX1JDX0VOQUJMRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjE4KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VTFRJX1NMSUNFX01BWF9CWVRFUyAoVjRMMl9DSURfTVBFR19CQVNFICsgMjE5KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VTFRJX1NMSUNFX01BWF9NQiAoVjRMMl9DSURfTVBFR19CQVNFICsgMjIwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VTFRJX1NMSUNFX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfbXBlZ192aWRlb19tdWx0aV9zbGljZV9tb2RlIHsKLSBWNEwyX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTU9ERV9TSU5HTEUgPSAwLAorICBWNEwyX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTU9ERV9TSU5HTEUgPSAwLAorICBWNEwyX01QRUdfVklERU9fTVVMVElfU0lDRV9NT0RFX01BWF9NQiA9IDEsCisgIFY0TDJfTVBFR19WSURFT19NVUxUSV9TSUNFX01PREVfTUFYX0JZVEVTID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX01VTFRJX1NJQ0VfTU9ERV9NQVhfTUIgPSAxLAotIFY0TDJfTVBFR19WSURFT19NVUxUSV9TSUNFX01PREVfTUFYX0JZVEVTID0gMiwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVkJWX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMjIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVkJWX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19ERUNfUFRTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMjMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDX0ZSQU1FIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0RFQ19QVFMgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMjMpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDX0ZSQU1FIChWNEwyX0NJRF9NUEVHX0JBU0UrMjI0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZCVl9ERUxBWSAoVjRMMl9DSURfTVBFR19CQVNFKzIyNSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19SRVBFQVRfU0VRX0hFQURFUiAoVjRMMl9DSURfTVBFR19CQVNFKzIyNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WQlZfREVMQVkgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyNSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19SRVBFQVRfU0VRX0hFQURFUiAoVjRMMl9DSURfTVBFR19CQVNFICsgMjI2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01WX0hfU0VBUkNIX1JBTkdFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMjcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVZfVl9TRUFSQ0hfUkFOR0UgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzAwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjNfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzMwMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX0JfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszMDIpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszMDMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzMDApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19QX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzMDEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19CX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzMDIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDMwMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19NQVhfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszMDQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzUwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzM1MSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0JfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19NQVhfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDMwNCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1MCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1BfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1MSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0JfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTMpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9NQVhfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF84WDhfVFJBTlNGT1JNIChWNEwyX0NJRF9NUEVHX0JBU0UrMzU1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfQ1BCX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1MykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfOFg4X1RSQU5TRk9STSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfQ1BCX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9FTlRST1BZX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9FTlRST1BZX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1NykKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfZW50cm9weV9tb2RlIHsKLSBWNEwyX01QRUdfVklERU9fSDI2NF9FTlRST1BZX01PREVfQ0FWTEMgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERV9DQUJBQyA9IDEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERV9DQVZMQyA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERV9DQUJBQyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0lfUEVSSU9EIChWNEwyX0NJRF9NUEVHX0JBU0UrMzU4KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTEVWRUwgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9JX1BFUklPRCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU4KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTEVWRUwgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM1OSkKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfbGV2ZWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzAgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFCID0gMSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzEgPSAyLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFfMiA9IDMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFfMCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFCID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8xID0gMiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8yID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8zID0gNCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8yXzAgPSA1LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzJfMSA9IDYsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMl8yID0gNywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8zID0gNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMl8wID0gNSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMl8xID0gNiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMl8yID0gNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfM18wID0gOCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8zXzEgPSA5LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzNfMiA9IDEwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzRfMCA9IDExLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8zXzAgPSA4LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8zXzEgPSA5LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8zXzIgPSAxMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNF8wID0gMTEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzRfMSA9IDEyLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzRfMiA9IDEzLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzVfMCA9IDE0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzVfMSA9IDE1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF80XzEgPSAxMiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNF8yID0gMTMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzVfMCA9IDE0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF81XzEgPSAxNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfQUxQSEEgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9CRVRBIChWNEwyX0NJRF9NUEVHX0JBU0UrMzYxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFKzM2MikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX0FMUEhBIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9CRVRBIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9sb29wX2ZpbHRlcl9tb2RlIHsKLSBWNEwyX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFX0VOQUJMRUQgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREVfRElTQUJMRUQgPSAxLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREVfRElTQUJMRURfQVRfU0xJQ0VfQk9VTkRBUlkgPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFX0VOQUJMRUQgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFX0RJU0FCTEVEID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfTU9ERV9ESVNBQkxFRF9BVF9TTElDRV9CT1VOREFSWSA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1BST0ZJTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9QUk9GSUxFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjMpCiBlbnVtIHY0bDJfbXBlZ192aWRlb19oMjY0X3Byb2ZpbGUgewotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfQkFTRUxJTkUgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0JBU0VMSU5FID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9DT05TVFJBSU5FRF9CQVNFTElORSA9IDEsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9NQUlOID0gMiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0VYVEVOREVEID0gMywKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0ggPSA0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0NPTlNUUkFJTkVEX0JBU0VMSU5FID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9NQUlOID0gMiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9FWFRFTkRFRCA9IDMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSCA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSF8xMCA9IDUsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQyMiA9IDYsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQ0NF9QUkVESUNUSVZFID0gNywKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfMTBfSU5UUkEgPSA4LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfMTAgPSA1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDIyID0gNiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQ0NF9QUkVESUNUSVZFID0gNywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzEwX0lOVFJBID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQyMl9JTlRSQSA9IDksCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQ0NF9JTlRSQSA9IDEwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfQ0FWTENfNDQ0X0lOVFJBID0gMTEsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TQ0FMQUJMRV9CQVNFTElORSA9IDEyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDIyX0lOVFJBID0gOSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzQ0NF9JTlRSQSA9IDEwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0NBVkxDXzQ0NF9JTlRSQSA9IDExLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX1NDQUxBQkxFX0JBU0VMSU5FID0gMTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU0NBTEFCTEVfSElHSCA9IDEzLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU0NBTEFCTEVfSElHSF9JTlRSQSA9IDE0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU1RFUkVPX0hJR0ggPSAxNSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX01VTFRJVklFV19ISUdIID0gMTYsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU0NBTEFCTEVfSElHSCA9IDEzLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX1NDQUxBQkxFX0hJR0hfSU5UUkEgPSAxNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TVEVSRU9fSElHSCA9IDE1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX01VTFRJVklFV19ISUdIID0gMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9FWFRfU0FSX0hFSUdIVCAoVjRMMl9DSURfTVBFR19CQVNFKzM2NCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9FWFRfU0FSX1dJRFRIIChWNEwyX0NJRF9NUEVHX0JBU0UrMzY1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9FTkFCTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9WVUlfRVhUX1NBUl9IRUlHSFQgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2NCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9FWFRfU0FSX1dJRFRIIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0VOQUJMRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzY2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDIChWNEwyX0NJRF9NUEVHX0JBU0UrMzY3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JREMgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2NykKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfdnVpX3Nhcl9pZGMgewotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDX1VOU1BFQ0lGSUVEID0gMCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xeDEgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ19VTlNQRUNJRklFRCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzF4MSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzEyeDExID0gMiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xMHgxMSA9IDMsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTZ4MTEgPSA0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzQweDMzID0gNSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTJ4MTEgPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xMHgxMSA9IDMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzE2eDExID0gNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfNDB4MzMgPSA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18yNHgxMSA9IDYsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMjB4MTEgPSA3LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzMyeDExID0gOCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ184MHgzMyA9IDksCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzI0eDExID0gNiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMjB4MTEgPSA3LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18zMngxMSA9IDgsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzgweDMzID0gOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTh4MTEgPSAxMCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xNXgxMSA9IDExLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzY0eDMzID0gMTIsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTYweDk5ID0gMTMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzE4eDExID0gMTAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzE1eDExID0gMTEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzY0eDMzID0gMTIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzE2MHg5OSA9IDEzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ180eDMgPSAxNCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18zeDIgPSAxNSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18yeDEgPSAxNiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ19FWFRFTkRFRCA9IDE3LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ180eDMgPSAxNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfM3gyID0gMTUsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzJ4MSA9IDE2LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ19FWFRFTkRFRCA9IDE3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9TRUlfRlJBTUVfUEFDS0lORyAoVjRMMl9DSURfTVBFR19CQVNFKzM2OCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUF9DVVJSRU5UX0ZSQU1FXzAgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjkpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRSAoVjRMMl9DSURfTVBFR19CQVNFKzM3MCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUkFNRV9QQUNLSU5HIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjgpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQ1VSUkVOVF9GUkFNRV8wIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzcwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfc2VpX2ZwX2FycmFuZ2VtZW50X3R5cGUgewotIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX0NIRUNLRVJCT0FSRCA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfQ09MVU1OID0gMSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9ST1cgPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9DSEVDS0VSQk9BUkQgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9DT0xVTU4gPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9ST1cgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9TSURFX0JZX1NJREUgPSAzLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1RPUF9CT1RUT00gPSA0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1RFTVBPUkFMID0gNSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfU0lERV9CWV9TSURFID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfVE9QX0JPVFRPTSA9IDQsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1RFTVBPUkFMID0gNSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PIChWNEwyX0NJRF9NUEVHX0JBU0UrMzcxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFIChWNEwyX0NJRF9NUEVHX0JBU0UrMzcyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3MikKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfZm1vX21hcF90eXBlIHsKLSBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfSU5URVJMRUFWRURfU0xJQ0VTID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX0lOVEVSTEVBVkVEX1NMSUNFUyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9TQ0FUVEVSRURfU0xJQ0VTID0gMSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfRk9SRUdST1VORF9XSVRIX0xFRlRfT1ZFUiA9IDIsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX0JPWF9PVVQgPSAzLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9SQVNURVJfU0NBTiA9IDQsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9TQ0FUVEVSRURfU0xJQ0VTID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX0ZPUkVHUk9VTkRfV0lUSF9MRUZUX09WRVIgPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfQk9YX09VVCA9IDMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9SQVNURVJfU0NBTiA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9XSVBFX1NDQU4gPSA1LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9FWFBMSUNJVCA9IDYsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9XSVBFX1NDQU4gPSA1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfRVhQTElDSVQgPSA2LAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19TTElDRV9HUk9VUCAoVjRMMl9DSURfTVBFR19CQVNFKzM3MykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19TTElDRV9HUk9VUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzczKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19DSEFOR0VfRElSRUNUSU9OIChWNEwyX0NJRF9NUEVHX0JBU0UrMzc0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX0NIQU5HRV9ESVJFQ1RJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3NCkKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfZm1vX2NoYW5nZV9kaXIgewotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19DSEFOR0VfRElSX1JJR0hUID0gMCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX0RJUl9MRUZUID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX0NIQU5HRV9ESVJfUklHSFQgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX0RJUl9MRUZUID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX0NIQU5HRV9SQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMzc1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX1JVTl9MRU5HVEggKFY0TDJfQ0lEX01QRUdfQkFTRSszNzYpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9BU08gKFY0TDJfQ0lEX01QRUdfQkFTRSszNzcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX1JBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3NSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19SVU5fTEVOR1RIIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9BU08gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9BU09fU0xJQ0VfT1JERVIgKFY0TDJfQ0lEX01QRUdfQkFTRSszNzgpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HIChWNEwyX0NJRF9NUEVHX0JBU0UrMzc5KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSElFUkFSQ0hJQ0FMX0NPRElOR19UWVBFIChWNEwyX0NJRF9NUEVHX0JBU0UrMzgwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfQVNPX1NMSUNFX09SREVSIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzgpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM4MCkKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfaGllcmFyY2hpY2FsX2NvZGluZ190eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfSElFUkFSQ0hJQ0FMX0NPRElOR19CID0gMCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX1AgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX0IgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX1AgPSAxLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfTEFZRVIgKFY0TDJfQ0lEX01QRUdfQkFTRSszODEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX0xBWUVSIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzODEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSElFUkFSQ0hJQ0FMX0NPRElOR19MQVlFUl9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzM4MikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNDAwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X1BfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSs0MDEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfQl9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzQwMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfTEFZRVJfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM4MikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0MDApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDAxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X0JfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDQwMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfTUlOX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNDAzKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzQwNCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFKzQwNSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDQwMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9NQVhfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDQwNCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDA1KQogZW51bSB2NGwyX21wZWdfdmlkZW9fbXBlZzRfbGV2ZWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMCA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzBCID0gMSwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMSA9IDIsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzIgPSAzLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8wQiA9IDEsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8xID0gMiwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzIgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMyA9IDQsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzNCID0gNSwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfNCA9IDYsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzUgPSA3LAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMyA9IDQsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8zQiA9IDUsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF80ID0gNiwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzUgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfUFJPRklMRSAoVjRMMl9DSURfTVBFR19CQVNFKzQwNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0MDYpCiBlbnVtIHY0bDJfbXBlZ192aWRlb19tcGVnNF9wcm9maWxlIHsKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9TSU1QTEUgPSAwLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9TSU1QTEUgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9BRFZBTkNFRF9TSU1QTEUgPSAxLAotIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX0NPUkUgPSAyLAotIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX1NJTVBMRV9TQ0FMQUJMRSA9IDMsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEVfQURWQU5DRURfQ09ESU5HX0VGRklDSUVOQ1kgPSA0LAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9BRFZBTkNFRF9TSU1QTEUgPSAxLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9DT1JFID0gMiwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEVfU0lNUExFX1NDQUxBQkxFID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEVfQURWQU5DRURfQ09ESU5HX0VGRklDSUVOQ1kgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfUVBFTCAoVjRMMl9DSURfTVBFR19CQVNFKzQwNykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfTlVNX1BBUlRJVElPTlMgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MDApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfUVBFTCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDA3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9OVU1fUEFSVElUSU9OUyAoVjRMMl9DSURfTVBFR19CQVNFICsgNTAwKQogZW51bSB2NGwyX3ZwOF9udW1fcGFydGl0aW9ucyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzFfUEFSVElUSU9OID0gMCwKLSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8yX1BBUlRJVElPTlMgPSAxLAotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzRfUEFSVElUSU9OUyA9IDIsCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfOF9QQVJUSVRJT05TID0gMywKKyAgVjRMMl9DSURfTVBFR19WSURFT19WUFhfMV9QQVJUSVRJT04gPSAwLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8yX1BBUlRJVElPTlMgPSAxLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF80X1BBUlRJVElPTlMgPSAyLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF84X1BBUlRJVElPTlMgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0lNRF9ESVNBQkxFXzRYNCAoVjRMMl9DSURfTVBFR19CQVNFKzUwMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfTlVNX1JFRl9GUkFNRVMgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MDIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0lNRF9ESVNBQkxFXzRYNCAoVjRMMl9DSURfTVBFR19CQVNFICsgNTAxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9OVU1fUkVGX0ZSQU1FUyAoVjRMMl9DSURfTVBFR19CQVNFICsgNTAyKQogZW51bSB2NGwyX3ZwOF9udW1fcmVmX2ZyYW1lcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzFfUkVGX0ZSQU1FID0gMCwKLSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8yX1JFRl9GUkFNRSA9IDEsCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfM19SRUZfRlJBTUUgPSAyLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8xX1JFRl9GUkFNRSA9IDAsCisgIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzJfUkVGX0ZSQU1FID0gMSwKKyAgVjRMMl9DSURfTVBFR19WSURFT19WUFhfM19SRUZfRlJBTUUgPSAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0ZJTFRFUl9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFKzUwMykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfRklMVEVSX1NIQVJQTkVTUyAoVjRMMl9DSURfTVBFR19CQVNFKzUwNCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1JFRl9QRVJJT0QgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MDUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0dPTERFTl9GUkFNRV9TRUwgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MDYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0ZJTFRFUl9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFICsgNTAzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9GSUxURVJfU0hBUlBORVNTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0dPTERFTl9GUkFNRV9SRUZfUEVSSU9EIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0dPTERFTl9GUkFNRV9TRUwgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUwNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfdnA4X2dvbGRlbl9mcmFtZV9zZWwgewotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0dPTERFTl9GUkFNRV9VU0VfUFJFViA9IDAsCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1VTRV9SRUZfUEVSSU9EID0gMSwKKyAgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1VTRV9QUkVWID0gMCwKKyAgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1VTRV9SRUZfUEVSSU9EID0gMSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MDcpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzUwOCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfSV9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzUwOSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzUxMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfTUlOX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNTA4KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX1BfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX1BST0ZJTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSs1MTEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX1BST0ZJTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUxMSkKICNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19NUEVHIHwgMHgxMDAwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fU1BBVElBTF9GSUxURVJfTU9ERSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSX01PREUgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgMCkKIGVudW0gdjRsMl9tcGVnX2N4MjM0MXhfdmlkZW9fc3BhdGlhbF9maWx0ZXJfbW9kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSX01PREVfTUFOVUFMID0gMCwKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19TUEFUSUFMX0ZJTFRFUl9NT0RFX0FVVE8gPSAxLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19TUEFUSUFMX0ZJTFRFUl9NT0RFX01BTlVBTCA9IDAsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSX01PREVfQVVUTyA9IDEsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fU1BBVElBTF9GSUxURVIgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19TUEFUSUFMX0ZJTFRFUiAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyAyKQogZW51bSB2NGwyX21wZWdfY3gyMzQxeF92aWRlb19sdW1hX3NwYXRpYWxfZmlsdGVyX3R5cGUgewotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV9PRkYgPSAwLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8xRF9IT1IgPSAxLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfT0ZGID0gMCwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzFEX0hPUiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8xRF9WRVJUID0gMiwKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfMkRfSFZfU0VQQVJBQkxFID0gMywKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfMkRfU1lNX05PTl9TRVBBUkFCTEUgPSA0LAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfMURfVkVSVCA9IDIsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8yRF9IVl9TRVBBUkFCTEUgPSAzLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfMkRfU1lNX05PTl9TRVBBUkFCTEUgPSA0LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19DSFJPTUFfU1BBVElBTF9GSUxURVJfVFlQRSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDMpCiBlbnVtIHY0bDJfbXBlZ19jeDIzNDF4X3ZpZGVvX2Nocm9tYV9zcGF0aWFsX2ZpbHRlcl90eXBlIHsKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19DSFJPTUFfU1BBVElBTF9GSUxURVJfVFlQRV9PRkYgPSAwLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzFEX0hPUiA9IDEsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFX09GRiA9IDAsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzFEX0hPUiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSs0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fVEVNUE9SQUxfRklMVEVSX01PREUgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgNCkKIGVudW0gdjRsMl9tcGVnX2N4MjM0MXhfdmlkZW9fdGVtcG9yYWxfZmlsdGVyX21vZGUgewotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUl9NT0RFX01BTlVBTCA9IDAsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUl9NT0RFX01BTlVBTCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUl9NT0RFX0FVVE8gPSAxLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19URU1QT1JBTF9GSUxURVJfTU9ERV9BVVRPID0gMSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19URU1QT1JBTF9GSUxURVIgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEUgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19URU1QT1JBTF9GSUxURVIgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgNSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX2N4MjM0MXhfdmlkZW9fbWVkaWFuX2ZpbHRlcl90eXBlIHsKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfT0ZGID0gMCwKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfSE9SID0gMSwKLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfVkVSVCA9IDIsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9PRkYgPSAwLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfSE9SID0gMSwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFX1ZFUlQgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfSE9SX1ZFUlQgPSAzLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9ESUFHID0gNCwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFX0hPUl9WRVJUID0gMywKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFX0RJQUcgPSA0LAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfTUVESUFOX0ZJTFRFUl9CT1RUT00gKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX01FRElBTl9GSUxURVJfQk9UVE9NIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9NRURJQU5fRklMVEVSX1RPUCAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrOCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9NRURJQU5fRklMVEVSX0JPVFRPTSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrOSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9NRURJQU5fRklMVEVSX1RPUCAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrMTApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9TVFJFQU1fSU5TRVJUX05BVl9QQUNLRVRTIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSsxMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfTUVESUFOX0ZJTFRFUl9UT1AgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgOCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9NRURJQU5fRklMVEVSX0JPVFRPTSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyA5KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX01FRElBTl9GSUxURVJfVE9QIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDEwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfU1RSRUFNX0lOU0VSVF9OQVZfUEFDS0VUUyAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX01QRUcgfCAweDExMDApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fREVDT0RFUl9IMjY0X0RJU1BMQVlfREVMQVkgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSswKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0RFQ09ERVJfSDI2NF9ESVNQTEFZX0RFTEFZX0VOQUJMRSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19ERUNPREVSX0gyNjRfRElTUExBWV9ERUxBWSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19ERUNPREVSX0gyNjRfRElTUExBWV9ERUxBWV9FTkFCTEUgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX21mYzUxX3ZpZGVvX2ZyYW1lX3NraXBfbW9kZSB7Ci0gVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZSQU1FX1NLSVBfTU9ERV9ESVNBQkxFRCA9IDAsCi0gVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZSQU1FX1NLSVBfTU9ERV9MRVZFTF9MSU1JVCA9IDEsCi0gVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZSQU1FX1NLSVBfTU9ERV9CVUZfTElNSVQgPSAyLAorICBWNEwyX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFX0RJU0FCTEVEID0gMCwKKyAgVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZSQU1FX1NLSVBfTU9ERV9MRVZFTF9MSU1JVCA9IDEsCisgIFY0TDJfTVBFR19NRkM1MV9WSURFT19GUkFNRV9TS0lQX01PREVfQlVGX0xJTUlUID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEUgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSszKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEUgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDMpCiBlbnVtIHY0bDJfbXBlZ19tZmM1MV92aWRlb19mb3JjZV9mcmFtZV90eXBlIHsKLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRV9ESVNBQkxFRCA9IDAsCisgIFY0TDJfTVBFR19NRkM1MV9WSURFT19GT1JDRV9GUkFNRV9UWVBFX0RJU0FCTEVEID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEVfSV9GUkFNRSA9IDEsCi0gVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEVfTk9UX0NPREVEID0gMiwKKyAgVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEVfSV9GUkFNRSA9IDEsCisgIFY0TDJfTVBFR19NRkM1MV9WSURFT19GT1JDRV9GUkFNRV9UWVBFX05PVF9DT0RFRCA9IDIsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1BBRERJTkcgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1BBRERJTkcgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1BBRERJTkdfWVVWIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19SQ19GSVhFRF9UQVJHRVRfQklUIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19SQ19SRUFDVElPTl9DT0VGRiAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzcpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19BQ1RJVklUWSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzUwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1BBRERJTkdfWVVWIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyA1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1JDX0ZJWEVEX1RBUkdFVF9CSVQgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUkNfUkVBQ1RJT05fQ09FRkYgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19BQ1RJVklUWSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0gyNjRfQURBUFRJVkVfUkNfREFSSyAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzUxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0gyNjRfQURBUFRJVkVfUkNfU01PT1RIIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNTIpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19TVEFUSUMgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs1MykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X05VTV9SRUZfUElDX0ZPUl9QIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNTQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19EQVJLIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyA1MSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX1NNT09USCAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNTIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19TVEFUSUMgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDUzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0gyNjRfTlVNX1JFRl9QSUNfRk9SX1AgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDU0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19DQU1FUkEgfCAweDkwMCkKICNkZWZpbmUgVjRMMl9DSURfQ0FNRVJBX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfQ0FNRVJBIHwgMSkKLSNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfQVVUTyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMSkKKyNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfQVVUTyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxKQogZW51bSB2NGwyX2V4cG9zdXJlX2F1dG9fdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfRVhQT1NVUkVfQVVUTyA9IDAsCi0gVjRMMl9FWFBPU1VSRV9NQU5VQUwgPSAxLAotIFY0TDJfRVhQT1NVUkVfU0hVVFRFUl9QUklPUklUWSA9IDIsCi0gVjRMMl9FWFBPU1VSRV9BUEVSVFVSRV9QUklPUklUWSA9IDMKKyAgVjRMMl9FWFBPU1VSRV9BVVRPID0gMCwKKyAgVjRMMl9FWFBPU1VSRV9NQU5VQUwgPSAxLAorICBWNEwyX0VYUE9TVVJFX1NIVVRURVJfUFJJT1JJVFkgPSAyLAorICBWNEwyX0VYUE9TVVJFX0FQRVJUVVJFX1BSSU9SSVRZID0gMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyKQotI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRV9BVVRPX1BSSU9SSVRZIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSszKQotI2RlZmluZSBWNEwyX0NJRF9QQU5fUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzQpCisjZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDIpCisjZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFX0FVVE9fUFJJT1JJVFkgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMykKKyNkZWZpbmUgVjRMMl9DSURfUEFOX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9USUxUX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSs1KQotI2RlZmluZSBWNEwyX0NJRF9QQU5fUkVTRVQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzYpCi0jZGVmaW5lIFY0TDJfQ0lEX1RJTFRfUkVTRVQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzcpCi0jZGVmaW5lIFY0TDJfQ0lEX1BBTl9BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrOCkKKyNkZWZpbmUgVjRMMl9DSURfVElMVF9SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyA1KQorI2RlZmluZSBWNEwyX0NJRF9QQU5fUkVTRVQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgNikKKyNkZWZpbmUgVjRMMl9DSURfVElMVF9SRVNFVCAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyA3KQorI2RlZmluZSBWNEwyX0NJRF9QQU5fQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX1RJTFRfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzkpCi0jZGVmaW5lIFY0TDJfQ0lEX0ZPQ1VTX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxMCkKLSNkZWZpbmUgVjRMMl9DSURfRk9DVVNfUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzExKQotI2RlZmluZSBWNEwyX0NJRF9GT0NVU19BVVRPIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxMikKKyNkZWZpbmUgVjRMMl9DSURfVElMVF9BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyA5KQorI2RlZmluZSBWNEwyX0NJRF9GT0NVU19BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxMCkKKyNkZWZpbmUgVjRMMl9DSURfRk9DVVNfUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTEpCisjZGVmaW5lIFY0TDJfQ0lEX0ZPQ1VTX0FVVE8gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9aT09NX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxMykKLSNkZWZpbmUgVjRMMl9DSURfWk9PTV9SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTQpCi0jZGVmaW5lIFY0TDJfQ0lEX1pPT01fQ09OVElOVU9VUyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTUpCi0jZGVmaW5lIFY0TDJfQ0lEX1BSSVZBQ1kgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzE2KQorI2RlZmluZSBWNEwyX0NJRF9aT09NX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDEzKQorI2RlZmluZSBWNEwyX0NJRF9aT09NX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDE0KQorI2RlZmluZSBWNEwyX0NJRF9aT09NX0NPTlRJTlVPVVMgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTUpCisjZGVmaW5lIFY0TDJfQ0lEX1BSSVZBQ1kgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9JUklTX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxNykKLSNkZWZpbmUgVjRMMl9DSURfSVJJU19SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTgpCi0jZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRVhQT1NVUkVfQklBUyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTkpCi0jZGVmaW5lIFY0TDJfQ0lEX0FVVE9fTl9QUkVTRVRfV0hJVEVfQkFMQU5DRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMjApCisjZGVmaW5lIFY0TDJfQ0lEX0lSSVNfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTcpCisjZGVmaW5lIFY0TDJfQ0lEX0lSSVNfUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTgpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRVhQT1NVUkVfQklBUyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxOSkKKyNkZWZpbmUgVjRMMl9DSURfQVVUT19OX1BSRVNFVF9XSElURV9CQUxBTkNFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9hdXRvX25fcHJlc2V0X3doaXRlX2JhbGFuY2UgewotIFY0TDJfV0hJVEVfQkFMQU5DRV9NQU5VQUwgPSAwLAotIFY0TDJfV0hJVEVfQkFMQU5DRV9BVVRPID0gMSwKLSBWNEwyX1dISVRFX0JBTEFOQ0VfSU5DQU5ERVNDRU5UID0gMiwKKyAgVjRMMl9XSElURV9CQUxBTkNFX01BTlVBTCA9IDAsCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9BVVRPID0gMSwKKyAgVjRMMl9XSElURV9CQUxBTkNFX0lOQ0FOREVTQ0VOVCA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfV0hJVEVfQkFMQU5DRV9GTFVPUkVTQ0VOVCA9IDMsCi0gVjRMMl9XSElURV9CQUxBTkNFX0ZMVU9SRVNDRU5UX0ggPSA0LAotIFY0TDJfV0hJVEVfQkFMQU5DRV9IT1JJWk9OID0gNSwKLSBWNEwyX1dISVRFX0JBTEFOQ0VfREFZTElHSFQgPSA2LAorICBWNEwyX1dISVRFX0JBTEFOQ0VfRkxVT1JFU0NFTlQgPSAzLAorICBWNEwyX1dISVRFX0JBTEFOQ0VfRkxVT1JFU0NFTlRfSCA9IDQsCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9IT1JJWk9OID0gNSwKKyAgVjRMMl9XSElURV9CQUxBTkNFX0RBWUxJR0hUID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9XSElURV9CQUxBTkNFX0ZMQVNIID0gNywKLSBWNEwyX1dISVRFX0JBTEFOQ0VfQ0xPVURZID0gOCwKLSBWNEwyX1dISVRFX0JBTEFOQ0VfU0hBREUgPSA5LAorICBWNEwyX1dISVRFX0JBTEFOQ0VfRkxBU0ggPSA3LAorICBWNEwyX1dISVRFX0JBTEFOQ0VfQ0xPVURZID0gOCwKKyAgVjRMMl9XSElURV9CQUxBTkNFX1NIQURFID0gOSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9XSURFX0RZTkFNSUNfUkFOR0UgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzIxKQotI2RlZmluZSBWNEwyX0NJRF9JTUFHRV9TVEFCSUxJWkFUSU9OIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyMikKLSNkZWZpbmUgVjRMMl9DSURfSVNPX1NFTlNJVElWSVRZIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyMykKLSNkZWZpbmUgVjRMMl9DSURfSVNPX1NFTlNJVElWSVRZX0FVVE8gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI0KQorI2RlZmluZSBWNEwyX0NJRF9XSURFX0RZTkFNSUNfUkFOR0UgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjEpCisjZGVmaW5lIFY0TDJfQ0lEX0lNQUdFX1NUQUJJTElaQVRJT04gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjIpCisjZGVmaW5lIFY0TDJfQ0lEX0lTT19TRU5TSVRJVklUWSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyMykKKyNkZWZpbmUgVjRMMl9DSURfSVNPX1NFTlNJVElWSVRZX0FVVE8gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2lzb19zZW5zaXRpdml0eV9hdXRvX3R5cGUgewotIFY0TDJfSVNPX1NFTlNJVElWSVRZX01BTlVBTCA9IDAsCi0gVjRMMl9JU09fU0VOU0lUSVZJVFlfQVVUTyA9IDEsCisgIFY0TDJfSVNPX1NFTlNJVElWSVRZX01BTlVBTCA9IDAsCisgIFY0TDJfSVNPX1NFTlNJVElWSVRZX0FVVE8gPSAxLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFX01FVEVSSU5HIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyNSkKKyNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfTUVURVJJTkcgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjUpCiBlbnVtIHY0bDJfZXhwb3N1cmVfbWV0ZXJpbmcgewotIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfQVZFUkFHRSA9IDAsCi0gVjRMMl9FWFBPU1VSRV9NRVRFUklOR19DRU5URVJfV0VJR0hURUQgPSAxLAorICBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX0FWRVJBR0UgPSAwLAorICBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX0NFTlRFUl9XRUlHSFRFRCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfU1BPVCA9IDIsCi0gVjRMMl9FWFBPU1VSRV9NRVRFUklOR19NQVRSSVggPSAzLAorICBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX1NQT1QgPSAyLAorICBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX01BVFJJWCA9IDMsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9TQ0VORV9NT0RFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyNikKKyNkZWZpbmUgVjRMMl9DSURfU0NFTkVfTU9ERSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfc2NlbmVfbW9kZSB7Ci0gVjRMMl9TQ0VORV9NT0RFX05PTkUgPSAwLAotIFY0TDJfU0NFTkVfTU9ERV9CQUNLTElHSFQgPSAxLAotIFY0TDJfU0NFTkVfTU9ERV9CRUFDSF9TTk9XID0gMiwKKyAgVjRMMl9TQ0VORV9NT0RFX05PTkUgPSAwLAorICBWNEwyX1NDRU5FX01PREVfQkFDS0xJR0hUID0gMSwKKyAgVjRMMl9TQ0VORV9NT0RFX0JFQUNIX1NOT1cgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1NDRU5FX01PREVfQ0FORExFX0xJR0hUID0gMywKLSBWNEwyX1NDRU5FX01PREVfREFXTl9EVVNLID0gNCwKLSBWNEwyX1NDRU5FX01PREVfRkFMTF9DT0xPUlMgPSA1LAotIFY0TDJfU0NFTkVfTU9ERV9GSVJFV09SS1MgPSA2LAorICBWNEwyX1NDRU5FX01PREVfQ0FORExFX0xJR0hUID0gMywKKyAgVjRMMl9TQ0VORV9NT0RFX0RBV05fRFVTSyA9IDQsCisgIFY0TDJfU0NFTkVfTU9ERV9GQUxMX0NPTE9SUyA9IDUsCisgIFY0TDJfU0NFTkVfTU9ERV9GSVJFV09SS1MgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1NDRU5FX01PREVfTEFORFNDQVBFID0gNywKLSBWNEwyX1NDRU5FX01PREVfTklHSFQgPSA4LAotIFY0TDJfU0NFTkVfTU9ERV9QQVJUWV9JTkRPT1IgPSA5LAotIFY0TDJfU0NFTkVfTU9ERV9QT1JUUkFJVCA9IDEwLAorICBWNEwyX1NDRU5FX01PREVfTEFORFNDQVBFID0gNywKKyAgVjRMMl9TQ0VORV9NT0RFX05JR0hUID0gOCwKKyAgVjRMMl9TQ0VORV9NT0RFX1BBUlRZX0lORE9PUiA9IDksCisgIFY0TDJfU0NFTkVfTU9ERV9QT1JUUkFJVCA9IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1NDRU5FX01PREVfU1BPUlRTID0gMTEsCi0gVjRMMl9TQ0VORV9NT0RFX1NVTlNFVCA9IDEyLAotIFY0TDJfU0NFTkVfTU9ERV9URVhUID0gMTMsCisgIFY0TDJfU0NFTkVfTU9ERV9TUE9SVFMgPSAxMSwKKyAgVjRMMl9TQ0VORV9NT0RFX1NVTlNFVCA9IDEyLAorICBWNEwyX1NDRU5FX01PREVfVEVYVCA9IDEzLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEXzNBX0xPQ0sgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI3KQorI2RlZmluZSBWNEwyX0NJRF8zQV9MT0NLIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDI3KQogI2RlZmluZSBWNEwyX0xPQ0tfRVhQT1NVUkUgKDEgPDwgMCkKICNkZWZpbmUgVjRMMl9MT0NLX1dISVRFX0JBTEFOQ0UgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9MT0NLX0ZPQ1VTICgxIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1NUQVJUIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyOCkKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19GT0NVU19TVE9QIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyOSkKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19GT0NVU19TVEFUVVMgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzMwKQorI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1NUQVJUIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDI4KQorI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1NUT1AgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjkpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRk9DVVNfU1RBVFVTIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDMwKQogI2RlZmluZSBWNEwyX0FVVE9fRk9DVVNfU1RBVFVTX0lETEUgKDAgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQVVUT19GT0NVU19TVEFUVVNfQlVTWSAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0FVVE9fRk9DVVNfU1RBVFVTX1JFQUNIRUQgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9BVVRPX0ZPQ1VTX1NUQVRVU19GQUlMRUQgKDEgPDwgMikKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19GT0NVU19SQU5HRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMzEpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRk9DVVNfUkFOR0UgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2F1dG9fZm9jdXNfcmFuZ2UgewotIFY0TDJfQVVUT19GT0NVU19SQU5HRV9BVVRPID0gMCwKLSBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfTk9STUFMID0gMSwKLSBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfTUFDUk8gPSAyLAorICBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfQVVUTyA9IDAsCisgIFY0TDJfQVVUT19GT0NVU19SQU5HRV9OT1JNQUwgPSAxLAorICBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfTUFDUk8gPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfSU5GSU5JVFkgPSAzLAorICBWNEwyX0FVVE9fRk9DVVNfUkFOR0VfSU5GSU5JVFkgPSAzLAogfTsKKyNkZWZpbmUgVjRMMl9DSURfUEFOX1NQRUVEIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDMyKQorI2RlZmluZSBWNEwyX0NJRF9USUxUX1NQRUVEIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDMzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX0ZNX1RYIHwgMHg5MDApCiAjZGVmaW5lIFY0TDJfQ0lEX0ZNX1RYX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfRk1fVFggfCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0RFVklBVElPTiAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDEpCiAjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9QSSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfUFRZIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMykKICNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX1BTX05BTUUgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX1JBRElPX1RFWFQgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA2KQorI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfTU9OT19TVEVSRU8gKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0FSVElGSUNJQUxfSEVBRCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDgpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9DT01QUkVTU0VEIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgOSkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0RZTkFNSUNfUFRZIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTApCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9UUkFGRklDX0FOTk9VTkNFTUVOVCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDExKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX1RSQUZGSUNfUFJPR1JBTSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDEyKQorI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfTVVTSUNfU1BFRUNIIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTMpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9BTFRfRlJFUVNfRU5BQkxFIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTQpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9BTFRfRlJFUVMgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxNSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0xJTUlURVJfRU5BQkxFRCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDY0KQogI2RlZmluZSBWNEwyX0NJRF9BVURJT19MSU1JVEVSX1JFTEVBU0VfVElNRSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDY1KQogI2RlZmluZSBWNEwyX0NJRF9BVURJT19MSU1JVEVSX0RFVklBVElPTiAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDY2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQVVESU9fQ09NUFJFU1NJT05fRU5BQkxFRCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQVVESU9fQ09NUFJFU1NJT05fR0FJTiAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDgxKQogI2RlZmluZSBWNEwyX0NJRF9BVURJT19DT01QUkVTU0lPTl9USFJFU0hPTEQgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA4MikKICNkZWZpbmUgVjRMMl9DSURfQVVESU9fQ09NUFJFU1NJT05fQVRUQUNLX1RJTUUgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA4MykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0NPTVBSRVNTSU9OX1JFTEVBU0VfVElNRSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDg0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfUElMT1RfVE9ORV9FTkFCTEVEIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgOTYpCiAjZGVmaW5lIFY0TDJfQ0lEX1BJTE9UX1RPTkVfREVWSUFUSU9OIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgOTcpCiAjZGVmaW5lIFY0TDJfQ0lEX1BJTE9UX1RPTkVfRlJFUVVFTkNZIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgOTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9UVU5FX1BSRUVNUEhBU0lTIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTEyKQotZW51bSB2NGwyX3ByZWVtcGhhc2lzIHsKLSBWNEwyX1BSRUVNUEhBU0lTX0RJU0FCTEVEID0gMCwKLSBWNEwyX1BSRUVNUEhBU0lTXzUwX3VTID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9QUkVFTVBIQVNJU183NV91UyA9IDIsCitlbnVtIHY0bDJfcHJlZW1waGFzaXMgeworICBWNEwyX1BSRUVNUEhBU0lTX0RJU0FCTEVEID0gMCwKKyAgVjRMMl9QUkVFTVBIQVNJU181MF91UyA9IDEsCisgIFY0TDJfUFJFRU1QSEFTSVNfNzVfdVMgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfQ0lEX1RVTkVfUE9XRVJfTEVWRUwgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxMTMpCiAjZGVmaW5lIFY0TDJfQ0lEX1RVTkVfQU5URU5OQV9DQVBBQ0lUT1IgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxMTQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfRkxBU0ggfCAweDkwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfRkxBU0ggfCAxKQogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9MRURfTU9ERSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDEpCiBlbnVtIHY0bDJfZmxhc2hfbGVkX21vZGUgeworICBWNEwyX0ZMQVNIX0xFRF9NT0RFX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfRkxBU0hfTEVEX01PREVfTk9ORSwKLSBWNEwyX0ZMQVNIX0xFRF9NT0RFX0ZMQVNILAotIFY0TDJfRkxBU0hfTEVEX01PREVfVE9SQ0gsCisgIFY0TDJfRkxBU0hfTEVEX01PREVfRkxBU0gsCisgIFY0TDJfRkxBU0hfTEVEX01PREVfVE9SQ0gsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfU1RST0JFX1NPVVJDRSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDIpCi1lbnVtIHY0bDJfZmxhc2hfc3Ryb2JlX3NvdXJjZSB7Ci0gVjRMMl9GTEFTSF9TVFJPQkVfU09VUkNFX1NPRlRXQVJFLAotIFY0TDJfRkxBU0hfU1RST0JFX1NPVVJDRV9FWFRFUk5BTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHY0bDJfZmxhc2hfc3Ryb2JlX3NvdXJjZSB7CisgIFY0TDJfRkxBU0hfU1RST0JFX1NPVVJDRV9TT0ZUV0FSRSwKKyAgVjRMMl9GTEFTSF9TVFJPQkVfU09VUkNFX0VYVEVSTkFMLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX1NUUk9CRSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDMpCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX1NUUk9CRV9TVE9QIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgNCkKICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfU1RST0JFX1NUQVRVUyAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9USU1FT1VUIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX0lOVEVOU0lUWSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDcpCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX1RPUkNIX0lOVEVOU0lUWSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDgpCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX0lORElDQVRPUl9JTlRFTlNJVFkgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyA5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfRkFVTFQgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyAxMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfT1ZFUl9WT0xUQUdFICgxIDw8IDApCiAjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfVElNRU9VVCAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0ZMQVNIX0ZBVUxUX09WRVJfVEVNUEVSQVRVUkUgKDEgPDwgMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfU0hPUlRfQ0lSQ1VJVCAoMSA8PCAzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9PVkVSX0NVUlJFTlQgKDEgPDwgNCkKICNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9JTkRJQ0FUT1IgKDEgPDwgNSkKLSNkZWZpbmUgVjRMMl9DSURfRkxBU0hfQ0hBUkdFIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMTEpCisjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfVU5ERVJfVk9MVEFHRSAoMSA8PCA2KQorI2RlZmluZSBWNEwyX0ZMQVNIX0ZBVUxUX0lOUFVUX1ZPTFRBR0UgKDEgPDwgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfTEVEX09WRVJfVEVNUEVSQVRVUkUgKDEgPDwgOCkKKyNkZWZpbmUgVjRMMl9DSURfRkxBU0hfQ0hBUkdFIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMTEpCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX1JFQURZIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMTIpCiAjZGVmaW5lIFY0TDJfQ0lEX0pQRUdfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX0pQRUcgfCAweDkwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0pQRUdfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19KUEVHIHwgMSkKICNkZWZpbmUgVjRMMl9DSURfSlBFR19DSFJPTUFfU1VCU0FNUExJTkcgKFY0TDJfQ0lEX0pQRUdfQ0xBU1NfQkFTRSArIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2pwZWdfY2hyb21hX3N1YnNhbXBsaW5nIHsKLSBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQ0NCA9IDAsCi0gVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MjIgPSAxLAotIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDIwID0gMiwKKyAgVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180NDQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQxMSA9IDMsCi0gVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MTAgPSA0LAotIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfR1JBWSA9IDUsCisgIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDIyID0gMSwKKyAgVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MjAgPSAyLAorICBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQxMSA9IDMsCisgIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDEwID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfR1JBWSA9IDUsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfSlBFR19SRVNUQVJUX0lOVEVSVkFMIChWNEwyX0NJRF9KUEVHX0NMQVNTX0JBU0UgKyAyKQogI2RlZmluZSBWNEwyX0NJRF9KUEVHX0NPTVBSRVNTSU9OX1FVQUxJVFkgKFY0TDJfQ0lEX0pQRUdfQ0xBU1NfQkFTRSArIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9KUEVHX0FDVElWRV9NQVJLRVIgKFY0TDJfQ0lEX0pQRUdfQ0xBU1NfQkFTRSArIDQpCiAjZGVmaW5lIFY0TDJfSlBFR19BQ1RJVkVfTUFSS0VSX0FQUDAgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfSlBFR19BQ1RJVkVfTUFSS0VSX0FQUDEgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9KUEVHX0FDVElWRV9NQVJLRVJfQ09NICgxIDw8IDE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9KUEVHX0FDVElWRV9NQVJLRVJfRFFUICgxIDw8IDE3KQogI2RlZmluZSBWNEwyX0pQRUdfQUNUSVZFX01BUktFUl9ESFQgKDEgPDwgMTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX0lNQUdFX1NPVVJDRSB8IDB4OTAwKQogI2RlZmluZSBWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19JTUFHRV9TT1VSQ0UgfCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfVkJMQU5LIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDEpCiAjZGVmaW5lIFY0TDJfQ0lEX0hCTEFOSyAoVjRMMl9DSURfSU1BR0VfU09VUkNFX0NMQVNTX0JBU0UgKyAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQU5BTE9HVUVfR0FJTiAoVjRMMl9DSURfSU1BR0VfU09VUkNFX0NMQVNTX0JBU0UgKyAzKQorI2RlZmluZSBWNEwyX0NJRF9URVNUX1BBVFRFUk5fUkVEIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9URVNUX1BBVFRFUk5fR1JFRU5SIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDUpCisjZGVmaW5lIFY0TDJfQ0lEX1RFU1RfUEFUVEVSTl9CTFVFIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDYpCisjZGVmaW5lIFY0TDJfQ0lEX1RFU1RfUEFUVEVSTl9HUkVFTkIgKFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFICsgNykKICNkZWZpbmUgVjRMMl9DSURfSU1BR0VfUFJPQ19DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfSU1BR0VfUFJPQyB8IDB4OTAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfSU1BR0VfUFJPQ19DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0lNQUdFX1BST0MgfCAxKQogI2RlZmluZSBWNEwyX0NJRF9MSU5LX0ZSRVEgKFY0TDJfQ0lEX0lNQUdFX1BST0NfQ0xBU1NfQkFTRSArIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9QSVhFTF9SQVRFIChWNEwyX0NJRF9JTUFHRV9QUk9DX0NMQVNTX0JBU0UgKyAyKQogI2RlZmluZSBWNEwyX0NJRF9URVNUX1BBVFRFUk4gKFY0TDJfQ0lEX0lNQUdFX1BST0NfQ0xBU1NfQkFTRSArIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9EVl9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfRFYgfCAweDkwMCkKICNkZWZpbmUgVjRMMl9DSURfRFZfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19EViB8IDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9EVl9UWF9IT1RQTFVHIChWNEwyX0NJRF9EVl9DTEFTU19CQVNFICsgMSkKICNkZWZpbmUgVjRMMl9DSURfRFZfVFhfUlhTRU5TRSAoVjRMMl9DSURfRFZfQ0xBU1NfQkFTRSArIDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9EVl9UWF9FRElEX1BSRVNFTlQgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyAzKQogI2RlZmluZSBWNEwyX0NJRF9EVl9UWF9NT0RFIChWNEwyX0NJRF9EVl9DTEFTU19CQVNFICsgNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfZHZfdHhfbW9kZSB7Ci0gVjRMMl9EVl9UWF9NT0RFX0RWSV9EID0gMCwKLSBWNEwyX0RWX1RYX01PREVfSERNSSA9IDEsCi19OworICBWNEwyX0RWX1RYX01PREVfRFZJX0QgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9EVl9UWF9NT0RFX0hETUkgPSAxLAorfTsKICNkZWZpbmUgVjRMMl9DSURfRFZfVFhfUkdCX1JBTkdFIChWNEwyX0NJRF9EVl9DTEFTU19CQVNFICsgNSkKIGVudW0gdjRsMl9kdl9yZ2JfcmFuZ2UgewotIFY0TDJfRFZfUkdCX1JBTkdFX0FVVE8gPSAwLAotIFY0TDJfRFZfUkdCX1JBTkdFX0xJTUlURUQgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0RWX1JHQl9SQU5HRV9GVUxMID0gMiwKKyAgVjRMMl9EVl9SR0JfUkFOR0VfQVVUTyA9IDAsCisgIFY0TDJfRFZfUkdCX1JBTkdFX0xJTUlURUQgPSAxLAorICBWNEwyX0RWX1JHQl9SQU5HRV9GVUxMID0gMiwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9EVl9SWF9QT1dFUl9QUkVTRU5UIChWNEwyX0NJRF9EVl9DTEFTU19CQVNFICsgMTAwKQogI2RlZmluZSBWNEwyX0NJRF9EVl9SWF9SR0JfUkFOR0UgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyAxMDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfRk1fUlggfCAweDkwMCkKICNkZWZpbmUgVjRMMl9DSURfRk1fUlhfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19GTV9SWCB8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9UVU5FX0RFRU1QSEFTSVMgKFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKyAxKQogZW51bSB2NGwyX2RlZW1waGFzaXMgeworICBWNEwyX0RFRU1QSEFTSVNfRElTQUJMRUQgPSBWNEwyX1BSRUVNUEhBU0lTX0RJU0FCTEVELAorICBWNEwyX0RFRU1QSEFTSVNfNTBfdVMgPSBWNEwyX1BSRUVNUEhBU0lTXzUwX3VTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0RFRU1QSEFTSVNfRElTQUJMRUQgPSBWNEwyX1BSRUVNUEhBU0lTX0RJU0FCTEVELAotIFY0TDJfREVFTVBIQVNJU181MF91UyA9IFY0TDJfUFJFRU1QSEFTSVNfNTBfdVMsCi0gVjRMMl9ERUVNUEhBU0lTXzc1X3VTID0gVjRMMl9QUkVFTVBIQVNJU183NV91UywKKyAgVjRMMl9ERUVNUEhBU0lTXzc1X3VTID0gVjRMMl9QUkVFTVBIQVNJU183NV91UywKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9SRFNfUkVDRVBUSU9OIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgMikKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1JYX1BUWSAoVjRMMl9DSURfRk1fUlhfQ0xBU1NfQkFTRSArIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRFNfUlhfUFNfTkFNRSAoVjRMMl9DSURfRk1fUlhfQ0xBU1NfQkFTRSArIDQpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19SWF9SQURJT19URVhUIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgNSkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1JYX1RSQUZGSUNfQU5OT1VOQ0VNRU5UIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgNikKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1JYX1RSQUZGSUNfUFJPR1JBTSAoVjRMMl9DSURfRk1fUlhfQ0xBU1NfQkFTRSArIDcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRFNfUlhfTVVTSUNfU1BFRUNIIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgOCkKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX1JGX1RVTkVSIHwgMHg5MDApCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfUkZfVFVORVIgfCAxKQorI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9CQU5EV0lEVEhfQVVUTyAoVjRMMl9DSURfUkZfVFVORVJfQ0xBU1NfQkFTRSArIDExKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfQkFORFdJRFRIIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgMTIpCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX0xOQV9HQUlOX0FVVE8gKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA0MSkKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfTE5BX0dBSU4gKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA0MikKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfTUlYRVJfR0FJTl9BVVRPIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgNTEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9NSVhFUl9HQUlOIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgNTIpCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX0lGX0dBSU5fQVVUTyAoVjRMMl9DSURfUkZfVFVORVJfQ0xBU1NfQkFTRSArIDYxKQorI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9JRl9HQUlOIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgNjIpCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX1BMTF9MT0NLIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgOTEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX0RFVEVDVCB8IDB4OTAwKQorI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19ERVRFQ1QgfCAxKQorI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfTURfTU9ERSAoVjRMMl9DSURfREVURUNUX0NMQVNTX0JBU0UgKyAxKQorZW51bSB2NGwyX2RldGVjdF9tZF9tb2RlIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfREVURUNUX01EX01PREVfRElTQUJMRUQgPSAwLAorICBWNEwyX0RFVEVDVF9NRF9NT0RFX0dMT0JBTCA9IDEsCisgIFY0TDJfREVURUNUX01EX01PREVfVEhSRVNIT0xEX0dSSUQgPSAyLAorICBWNEwyX0RFVEVDVF9NRF9NT0RFX1JFR0lPTl9HUklEID0gMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfTURfR0xPQkFMX1RIUkVTSE9MRCAoVjRMMl9DSURfREVURUNUX0NMQVNTX0JBU0UgKyAyKQorI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfTURfVEhSRVNIT0xEX0dSSUQgKFY0TDJfQ0lEX0RFVEVDVF9DTEFTU19CQVNFICsgMykKKyNkZWZpbmUgVjRMMl9DSURfREVURUNUX01EX1JFR0lPTl9HUklEIChWNEwyX0NJRF9ERVRFQ1RfQ0xBU1NfQkFTRSArIDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItZHYtdGltaW5ncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWR2LXRpbWluZ3MuaAppbmRleCBiYjEzNzRhLi5hNGY5MWVjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItZHYtdGltaW5ncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1kdi10aW1pbmdzLmgKQEAgLTE5LDEzOCArMTksMjY1IEBACiAjaWZuZGVmIF9WNEwyX0RWX1RJTUlOR1NfSAogI2RlZmluZSBfVjRMMl9EVl9USU1JTkdTX0gKICNpZiBfX0dOVUNfXyA8IDQgfHwgX19HTlVDX18gPT0gNCAmJiBfX0dOVUNfTUlOT1JfXyA8IDYKLSNkZWZpbmUgVjRMMl9JTklUX0JUX1RJTUlOR1MoX3dpZHRoLCBhcmdzLi4uKSAgIHsgLmJ0ID0geyBfd2lkdGggLCAjIyBhcmdzIH0gfQorI2RlZmluZSBWNEwyX0lOSVRfQlRfVElNSU5HUyhfd2lkdGgsYXJncy4uLikgey5idCA9IHsgX3dpZHRoLCAjI2FyZ3MgfSB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vsc2UKLSNkZWZpbmUgVjRMMl9JTklUX0JUX1RJTUlOR1MoX3dpZHRoLCBhcmdzLi4uKSAgIC5idCA9IHsgX3dpZHRoICwgIyMgYXJncyB9CisjZGVmaW5lIFY0TDJfSU5JVF9CVF9USU1JTkdTKF93aWR0aCxhcmdzLi4uKSAuIGJ0ID0geyBfd2lkdGgsICMjYXJncyB9CiAjZW5kaWYKLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNjQwWDQ4MFA1OV85NCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAgIDI1MTc1MDAwLCAxNiwgOTYsIDQ4LCAxMCwgMiwgMzMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV82NDBYNDgwUDU5Xzk0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAyNTE3NTAwMCwgMTYsIDk2LCA0OCwgMTAsIDIsIDMzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg0ODBJNTlfOTQgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDQ4MCwgMSwgMCwgICAxMzUwMDAwMCwgMTksIDYyLCA1NywgNCwgMywgMTUsIDQsIDMsIDE2LCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg0ODBQNTlfOTQgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDQ4MCwgMCwgMCwgICAyNzAwMDAwMCwgMTYsIDYyLCA2MCwgOSwgNiwgMzAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV83MjBYNTc2STUwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA1NzYsIDEsIDAsICAgMTM1MDAwMDAsIDEyLCA2MywgNjksIDIsIDMsIDE5LCAyLCAzLCAyMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfSEFMRl9MSU5FKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV83MjBYNTc2UDUwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA1NzYsIDAsIDAsICAgMjcwMDAwMDAsIDEyLCA2NCwgNjgsIDUsIDUsIDM5LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNzIwWDQ4MEk1OV85NCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDQ4MCwgMSwgMCwgMTM1MDAwMDAsIDE5LCA2MiwgNTcsIDQsIDMsIDE1LCA0LCAzLCAxNiwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0hBTEZfTElORSkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV83MjBYNDgwUDU5Xzk0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDgwLCAwLCAwLCAyNzAwMDAwMCwgMTYsIDYyLCA2MCwgOSwgNiwgMzAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV83MjBYNTc2STUwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNTc2LCAxLCAwLCAxMzUwMDAwMCwgMTIsIDYzLCA2OSwgMiwgMywgMTksIDIsIDMsIDIwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfSEFMRl9MSU5FKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg1NzZQNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA1NzYsIDAsIDAsIDI3MDAwMDAwLCAxMiwgNjQsIDY4LCA1LCA1LCAzOSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFAyNCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNTk0MDAwMDAsIDE3NjAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgICBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFAyNSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDI0MjAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQMzAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3MjAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCAxNzYwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDUwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgNDQwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDI0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA1OTQwMDAwMCwgMTc2MCwgNDAsIDIyMCwgNSwgNSwgMjAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFAyNSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3MjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDI0MjAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQMzAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCAxNzYwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDUwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgNDQwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDExMCwgNDAsIDIyMCwgNSwgNSwgMjAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQMjQgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgNjM4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFAyNSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCA1MjgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDMwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDg4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgMTEwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFAyNCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCA2MzgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDI1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDUyOCwgNDQsIDE0OCwgNCwgNSwgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQMzAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgODgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MEk1MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDEsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCA1MjgsIDQ0LCAxNDgsIDIsIDUsIDE1LCAyLCA1LCAxNiwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfSEFMRl9MSU5FKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQNTAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNDg1MDAwMDAsIDUyOCwgNDQsIDE0OCwgNCwgNSwgMzYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBJNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAxLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgODgsIDQ0LCAxNDgsIDIsIDUsIDE1LCAyLCA1LCAxNiwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsICAgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUyB8IFY0TDJfRFZfRkxfSEFMRl9MSU5FKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNDg1MDAwMDAsIDg4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsICAgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwSTUwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDEsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDUyOCwgNDQsIDE0OCwgMiwgNSwgMTUsIDIsIDUsIDE2LCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfSEFMRl9MSU5FKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFA1MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE0ODUwMDAwMCwgNTI4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MEk2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAxLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCA4OCwgNDQsIDE0OCwgMiwgNSwgMTUsIDIsIDUsIDE2LCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMgfCBWNEwyX0RWX0ZMX0hBTEZfTElORSkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNDg1MDAwMDAsIDg4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYMzUwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCAzNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAzMTUwMDAwMCwgMzIsIDY0LCA5NiwgMzIsIDMsIDYwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMzE1MDAwMDAsIDMyLCA2NCwgOTYsIDEsIDMsIDQxLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNzIwWDQwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMzU1MDAwMDAsIDM2LCA3MiwgMTA4LCAxLCAzLCA0MiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzM4NDBYMjE2MFAyNCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygzODQwLCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI5NzAwMDAwMCwgMTI3NiwgODgsIDI5NiwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMzg0MFgyMTYwUDI1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDM4NDAsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCAxMDU2LCA4OCwgMjk2LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8zODQwWDIxNjBQMzAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMzg0MCwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyOTcwMDAwMDAsIDE3NiwgODgsIDI5NiwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMzg0MFgyMTYwUDUwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDM4NDAsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNTk0MDAwMDAwLCAxMDU2LCA4OCwgMjk2LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMzg0MFgyMTYwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDM4NDAsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNTk0MDAwMDAwLCAxNzYsIDg4LCAyOTYsIDgsIDEwLCA3MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzQwOTZYMjE2MFAyNCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg0MDk2LCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI5NzAwMDAwMCwgMTAyMCwgODgsIDI5NiwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNDA5NlgyMTYwUDI1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDQwOTYsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCA5NjgsIDg4LCAxMjgsIDgsIDEwLCA3MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzQwOTZYMjE2MFAzMCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg0MDk2LCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI5NzAwMDAwMCwgODgsIDg4LCAxMjgsIDgsIDEwLCA3MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0JUX0NFQV80MDk2WDIxNjBQNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNDA5NiwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1OTQwMDAwMDAsIDk2OCwgODgsIDEyOCwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNDA5NlgyMTYwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDQwOTYsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNTk0MDAwMDAwLCA4OCwgODgsIDEyOCwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDM1MFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDM1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAzMTUwMDAwMCwgMzIsIDY0LCA5NiwgMzIsIDMsIDYwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDQwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAzMTUwMDAwMCwgMzIsIDY0LCA5NiwgMSwgMywgNDEsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNzIwWDQwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDQwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAzNTUwMDAwMCwgMzYsIDcyLCAxMDgsIDEsIDMsIDQyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KICNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQ4MFA2MCBWNEwyX0RWX0JUX0NFQV82NDBYNDgwUDU5Xzk0CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzY0MFg0ODBQNzIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsIDMxNTAwMDAwLCAyNCwgNDAsIDEyOCwgOSwgMywgMjgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDgwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAzMTUwMDAwMCwgMTYsIDY0LCAxMjAsIDEsIDMsIDE2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzY0MFg0ODBQNzIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDQ4MCwgMCwgMCwgICAzMTUwMDAwMCwgMjQsIDQwLCAxMjgsIDksIDMsIDI4LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQ4MFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAgIDMxNTAwMDAwLCAxNiwgNjQsIDEyMCwgMSwgMywgMTYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDgwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsICAgMzYwMDAwMDAsIDU2LCA1NiwgODAsIDEsIDMsIDI1LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA1NiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAzNjAwMDAwMCwgMjQsIDcyLCAxMjgsIDEsIDIsIDIyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQ4MFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDQ4MCwgMCwgMCwgMzYwMDAwMDAsIDU2LCA1NiwgODAsIDEsIDMsIDI1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA1NiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAzNjAwMDAwMCwgMjQsIDcyLCAxMjgsIDEsIDIsIDIyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA0MDAwMDAwMCwgNDAsIDEyOCwgODgsIDEsIDQsIDIzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA3MiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA1MDAwMDAwMCwgNTYsIDEyMCwgNjQsIDM3LCA2LCAyMywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDQwMDAwMDAwLCA0MCwgMTI4LCA4OCwgMSwgNCwgMjMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDcyIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDUwMDAwMDAwLCA1NiwgMTIwLCA2NCwgMzcsIDYsIDIzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA0OTUwMDAwMCwgMTYsIDgwLCAxNjAsIDEsIDMsIDIxLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA1NjI1MDAwMCwgMzIsIDY0LCAxNTIsIDEsIDMsIDI3LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA0OTUwMDAwMCwgMTYsIDgwLCAxNjAsIDEsIDMsIDIxLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA1NjI1MDAwMCwgMzIsIDY0LCAxNTIsIDEsIDMsIDI3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNzMyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDI5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84NDhYNDgwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDg0OCwgNDgwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDMzNzUwMDAwLCAxNiwgMTEyLCAxMTIsIDYsIDgsIDIzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzgwMFg2MDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICA3MzI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgMjksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODQ4WDQ4MFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDg0OCwgNDgwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAzMzc1MDAwMCwgMTYsIDExMiwgMTEyLCA2LCA4LCAyMywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4STQzIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAxLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA0NDkwMDAwMCwgOCwgMTc2LCA1NiwgMCwgNCwgMjAsIDAsIDQsIDIxLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsIDAsICAgNjUwMDAwMDAsIDI0LCAxMzYsIDE2MCwgMywgNiwgMjksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OEk0MyB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDEsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNDQ5MDAwMDAsIDgsIDE3NiwgNTYsIDAsIDQsIDIwLCAwLCA0LCAyMSwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4UDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgMCwgNjUwMDAwMDAsIDI0LCAxMzYsIDE2MCwgMywgNiwgMjksIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFA3MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsIDAsIDc1MDAwMDAwLCAyNCwgMTM2LCAxNDQsIDMsIDYsIDI5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc4NzUwMDAwLCAxNiwgOTYsIDE3NiwgMSwgMywgMjgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQNzAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsIDAsICAgNzUwMDAwMDAsIDI0LCAxMzYsIDE0NCwgMywgNiwgMjksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzg3NTAwMDAsIDE2LCA5NiwgMTc2LCAxLCAzLCAyOCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4UDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA5NDUwMDAwMCwgNDgsIDk2LCAyMDgsIDEsIDMsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTE1NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCAzOCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTE1Mlg4NjRQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMTUyLCA4NjQsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwODAwMDAwMCwgNjQsIDEyOCwgMjU2LCAxLCAzLCAzMiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4UDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA5NDUwMDAwMCwgNDgsIDk2LCAyMDgsIDEsIDMsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxMTU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDM4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMTUyWDg2NFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMTUyLCA4NjQsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTA4MDAwMDAwLCA2NCwgMTI4LCAyNTYsIDEsIDMsIDMyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KICNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3MjBQNjAgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQNjAKLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQNjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICA2ODI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNywgMTIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3OTUwMDAwMCwgNjQsIDEyOCwgMTkyLCAzLCA3LCAyMCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwMjI1MDAwMCwgODAsIDEyOCwgMjA4LCAzLCA3LCAyNywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYNzY4UDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzY4LCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTE3NTAwMDAwLCA4MCwgMTM2LCAyMTYsIDMsIDcsIDMxLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTQwMjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA3LCAzNSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDcxMDAwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCAxNCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNjgyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDcsIDEyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzk1MDAwMDAsIDY0LCAxMjgsIDE5MiwgMywgNywgMjAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTAyMjUwMDAwLCA4MCwgMTI4LCAyMDgsIDMsIDcsIDI3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzY4LCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDExNzUwMDAwMCwgODAsIDEzNiwgMjE2LCAzLCA3LCAzMSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDgzNTAwMDAwLCA3MiwgMTI4LCAyMDAsIDMsIDYsIDIyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg4MDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA4MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMDY1MDAwMDAsIDgwLCAxMjgsIDIwOCwgMywgNiwgMjksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEyMjUwMDAwMCwgODAsIDEzNiwgMjE2LCAzLCA2LCAzNCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDEyMF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDE0NjI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMzgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxNDAyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDcsIDM1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA4MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNzEwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDE0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA4MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgODM1MDAwMDAsIDcyLCAxMjgsIDIwMCwgMywgNiwgMjIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA4MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTA2NTAwMDAwLCA4MCwgMTI4LCAyMDgsIDMsIDYsIDI5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYOTYwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgOTYwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMDgwMDAwMDAsIDk2LCAxMTIsIDMxMiwgMSwgMywgMzYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDk2MFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDk2MCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTQ4NTAwMDAwLCA2NCwgMTYwLCAyMjQsIDEsIDMsIDQ3LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg5NjBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgOTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTc1NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA1MCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMDgwMDAwMDAsIDQ4LCAxMTIsIDI0OCwgMSwgMywgMzgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA4MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTIyNTAwMDAwLCA4MCwgMTM2LCAyMTYsIDMsIDYsIDM0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg4MDBQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxNDYyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDM4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDk2MFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA5NjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTA4MDAwMDAwLCA5NiwgMTEyLCAzMTIsIDEsIDMsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg5NjBQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgOTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE0ODUwMDAwMCwgNjQsIDE2MCwgMjI0LCAxLCAzLCA0NywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMzUwMDAwMDAsIDE2LCAxNDQsIDI0OCwgMSwgMywgMzgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNTc1MDAwMDAsIDY0LCAxNjAsIDIyNCwgMSwgMywgNDQsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgMTAyNCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDE4NzI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNywgNTAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTM2MFg3NjhQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMzYwLCA3NjgsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDg1NTAwMDAwLCA2NCwgMTEyLCAyNTYsIDMsIDYsIDE4LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg5NjBQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDk2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxNzU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDUwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgMTAyNCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDgwMDAwMDAsIDQ4LCAxMTIsIDI0OCwgMSwgMywgMzgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgMTAyNCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMzUwMDAwMDAsIDE2LCAxNDQsIDI0OCwgMSwgMywgMzgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgMTAyNCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNTc1MDAwMDAsIDY0LCAxNjAsIDIyNCwgMSwgMywgNDQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTM2MFg3NjhQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2MCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTQ4MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA1LCAzNywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzY2WDc2OFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEzNjYsIDc2OCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgODU1MDAwMDAsIDcwLCAxNDMsIDIxMywgMywgMywgMjQsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzY2WDc2OFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEzNjYsIDc2OCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzIwMDAwMDAsIDE0LCA1NiwgNjQsIDEsIDMsIDI4LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQNjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDAwLCAxMDUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTAxMDAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCAyMywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDEwMjRQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDEwMjQsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMTg3MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA3LCA1MCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTM2MFg3NjhQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2MCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDg1NTAwMDAwLCA2NCwgMTEyLCAyNTYsIDMsIDYsIDE4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTM2MFg3NjhQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEzNjAsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxNDgyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDUsIDM3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzY2WDc2OFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMzY2LCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgODU1MDAwMDAsIDcwLCAxNDMsIDIxMywgMywgMywgMjQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEyMTc1MDAwMCwgODgsIDE0NCwgMjMyLCAzLCA0LCAzMiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0MDBYMTA1MFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNTYwMDAwMDAsIDEwNCwgMTQ0LCAyNDgsIDMsIDQsIDQyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE3OTUwMDAwMCwgMTA0LCAxNTIsIDI1NiwgMywgNCwgNDgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDIwODAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNTUsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTM2Nlg3NjhQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2NiwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDcyMDAwMDAwLCAxNCwgNTYsIDY0LCAxLCAzLCAyOCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDYwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMTAxMDAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCAyMywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTIxNzUwMDAwLCA4OCwgMTQ0LCAyMzIsIDMsIDQsIDMyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTU2MDAwMDAwLCAxMDQsIDE0NCwgMjQ4LCAzLCA0LCA0MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDg4NzUwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCAxNywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwNjUwMDAwMCwgODAsIDE1MiwgMjMyLCAzLCA2LCAyNSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQ0MCwgOTAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTM2NzUwMDAwLCA5NiwgMTUyLCAyNDgsIDMsIDYsIDMzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQ0MFg5MDBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNTcwMDAwMDAsIDEwNCwgMTUyLCAyNTYsIDMsIDYsIDM5LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTc5NTAwMDAwLCAxMDQsIDE1MiwgMjU2LCAzLCA0LCA0OCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0MDBYMTA1MFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyMDgwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDU1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgODg3NTAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDE3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTA2NTAwMDAwLCA4MCwgMTUyLCAyMzIsIDMsIDYsIDI1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDEyMF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDE4Mjc1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgNDQsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFg5MDBQNjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCA5MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwODAwMDAwMCwgMjQsIDgwLCA5NiwgMSwgMywgOTYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE2MjAwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA2NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE3NTUwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMzY3NTAwMDAsIDk2LCAxNTIsIDI0OCwgMywgNiwgMzMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTU3MDAwMDAwLCAxMDQsIDE1MiwgMjU2LCAzLCA2LCAzOSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMTgyNzUwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA0NCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFg5MDBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgOTAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDEwODAwMDAwMCwgMjQsIDgwLCA5NiwgMSwgMywgOTYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNzAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxODkwMDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMDI1MDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMjk1MDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDI2ODI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNjQsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTYyMDAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDY1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTc1NTAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDcwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTg5MDAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjAyNTAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxMTkwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDIxLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNDYyNTAwMDAsIDEwNCwgMTc2LCAyODAsIDMsIDYsIDMwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE4NzAwMDAwMCwgMTIwLCAxNzYsIDI5NiwgMywgNiwgNDAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjE0NzUwMDAwLCAxMjgsIDE3NiwgMzA0LCAzLCA2LCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDIyOTUwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyNjgyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDY0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxMTkwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDIxLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNDYyNTAwMDAsIDEwNCwgMTc2LCAyODAsIDMsIDYsIDMwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMjQ1NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA1MywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNzkyWDEzNDRQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNzkyLCAxMzQ0LCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjA0NzUwMDAwLCAxMjgsIDIwMCwgMzI4LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE3OTJYMTM0NFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE3OTIsIDEzNDQsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyNjEwMDAwMDAsIDk2LCAyMTYsIDM1MiwgMSwgMywgNjksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNzkyWDEzNDRQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTc5MiwgMTM0NCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDMzMzI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNzIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTg3MDAwMDAwLCAxMjAsIDE3NiwgMjk2LCAzLCA2LCA0MCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDIxNDc1MDAwMCwgMTI4LCAxNzYsIDMwNCwgMywgNiwgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjQ1NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA1MywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTc5MlgxMzQ0UDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE3OTIsIDEzNDQsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjA0NzUwMDAwLCAxMjgsIDIwMCwgMzI4LCAxLCAzLCA0NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxODU2LCAxMzkyLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjE4MjUwMDAwLCA5NiwgMjI0LCAzNTIsIDEsIDMsIDQzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTg1NlgxMzkyUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTg1NiwgMTM5MiwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDI4ODAwMDAwMCwgMTI4LCAyMjQsIDM1MiwgMSwgMywgMTA0LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTg1NlgxMzkyUDEyMF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE4NTYsIDEzOTIsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAzNTY1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDc1LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE3OTJYMTM0NFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNzkyLCAxMzQ0LCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDI2MTAwMDAwMCwgOTYsIDIxNiwgMzUyLCAxLCAzLCA2OSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE3OTJYMTM0NFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTc5MiwgMTM0NCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAzMzMyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTg1NiwgMTM5MiwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyMTgyNTAwMDAsIDk2LCAyMjQsIDM1MiwgMSwgMywgNDMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTg1NiwgMTM5MiwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyODgwMDAwMDAsIDEyOCwgMjI0LCAzNTIsIDEsIDMsIDEwNCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE4NTYsIDEzOTIsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMzU2NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA3NSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KICNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMDgwUDYwIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFA2MAorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxNTQwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDI2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxOTMyNTAwMDAsIDEzNiwgMjAwLCAzMzYsIDMsIDYsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxNTQwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDI2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxOTMyNTAwMDAsIDEzNiwgMjAwLCAzMzYsIDMsIDYsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDI0NTI1MDAwMCwgMTM2LCAyMDgsIDM0NCwgMywgNiwgNDYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjgxMjUwMDAwLCAxNDQsIDIwOCwgMzUyLCAzLCA2LCA1MywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDI0NTI1MDAwMCwgMTM2LCAyMDgsIDM0NCwgMywgNiwgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyODEyNTAwMDAsIDE0NCwgMjA4LCAzNTIsIDMsIDYsIDUzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDMxNzAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgNjIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTQ0MFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxNDQwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDIzNDAwMDAwMCwgMTI4LCAyMDgsIDM0NCwgMSwgMywgNTYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDEyMF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAzMTcwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDYyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTQ0MFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDE0NDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMzQwMDAwMDAsIDEyOCwgMjA4LCAzNDQsIDEsIDMsIDU2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxNDQwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTQ0MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDI5NzAwMDAwMCwgMTQ0LCAyMjQsIDM1MiwgMSwgMywgNTYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDE0NDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTQ0MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDM4MDUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNzgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxNDQwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDE0NDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCAxNDQsIDIyNCwgMzUyLCAxLCAzLCA1NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTQ0MFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTQ0MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAzODA1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDc4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yMDQ4WDExNTJQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjA0OCwgMTE1MiwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNjIwMDAwMDAsIDI2LCA4MCwgOTYsIDEsIDMsIDQ0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyNjg1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDM3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjA0OFgxMTUyUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjA0OCwgMTE1MiwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTYyMDAwMDAwLCAyNiwgODAsIDk2LCAxLCAzLCA0NCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDI2ODUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMzcsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDM0ODUwMDAwMCwgMTkyLCAyODAsIDQ3MiwgMywgNiwgNDksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNDQzMjUwMDAwLCAyMDgsIDI4MCwgNDg4LCAzLCA2LCA2MywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDM0ODUwMDAwMCwgMTkyLCAyODAsIDQ3MiwgMywgNiwgNDksIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA0NDMyNTAwMDAsIDIwOCwgMjgwLCA0ODgsIDMsIDYsIDYzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDI1NjAsIDE2MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNTA1MjUwMDAwLCAyMDgsIDI4MCwgNDg4LCAzLCA2LCA3MywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1NTI3NTAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDg1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDUwNTI1MDAwMCwgMjA4LCAyODAsIDQ4OCwgMywgNiwgNzMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDU1Mjc1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgODUsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNDA5NlgyMTYwUDYwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDQwOTYsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgNTU2NzQ0MDAwLCA4LCAzMiwgNDAsIDQ4LCA4LCA2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF80MDk2WDIxNjBQNTlfOTRfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNDA5NiwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1NTYxODgwMDAsIDgsIDMyLCA0MCwgNDgsIDgsIDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1tZWRpYWJ1cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLW1lZGlhYnVzLmgKaW5kZXggODRhYTVkMy4uMmMyYjBlNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLW1lZGlhYnVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLW1lZGlhYnVzLmgKQEAgLTIyLDk1ICsyMiwxMTAgQEAKICNpbmNsdWRlIDxsaW51eC92aWRlb2RldjIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfbWJ1c19waXhlbGNvZGUgewotIFY0TDJfTUJVU19GTVRfRklYRUQgPSAweDAwMDEsCi0gVjRMMl9NQlVTX0ZNVF9SR0I0NDRfMlg4X1BBREhJX0JFID0gMHgxMDAxLAotIFY0TDJfTUJVU19GTVRfUkdCNDQ0XzJYOF9QQURISV9MRSA9IDB4MTAwMiwKKyAgVjRMMl9NQlVTX0ZNVF9GSVhFRCA9IDB4MDAwMSwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I0NDRfMlg4X1BBREhJX0JFID0gMHgxMDAxLAorICBWNEwyX01CVVNfRk1UX1JHQjQ0NF8yWDhfUEFESElfTEUgPSAweDEwMDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfUkdCNTU1XzJYOF9QQURISV9CRSA9IDB4MTAwMywKLSBWNEwyX01CVVNfRk1UX1JHQjU1NV8yWDhfUEFESElfTEUgPSAweDEwMDQsCi0gVjRMMl9NQlVTX0ZNVF9CR1I1NjVfMlg4X0JFID0gMHgxMDA1LAotIFY0TDJfTUJVU19GTVRfQkdSNTY1XzJYOF9MRSA9IDB4MTAwNiwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I1NTVfMlg4X1BBREhJX0JFID0gMHgxMDAzLAorICBWNEwyX01CVVNfRk1UX1JHQjU1NV8yWDhfUEFESElfTEUgPSAweDEwMDQsCisgIFY0TDJfTUJVU19GTVRfQkdSNTY1XzJYOF9CRSA9IDB4MTAwNSwKKyAgVjRMMl9NQlVTX0ZNVF9CR1I1NjVfMlg4X0xFID0gMHgxMDA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1JHQjU2NV8yWDhfQkUgPSAweDEwMDcsCi0gVjRMMl9NQlVTX0ZNVF9SR0I1NjVfMlg4X0xFID0gMHgxMDA4LAotIFY0TDJfTUJVU19GTVRfUkdCNjY2XzFYMTggPSAweDEwMDksCi0gVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMVgyNCA9IDB4MTAwYSwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I1NjVfMlg4X0JFID0gMHgxMDA3LAorICBWNEwyX01CVVNfRk1UX1JHQjU2NV8yWDhfTEUgPSAweDEwMDgsCisgIFY0TDJfTUJVU19GTVRfUkdCNjY2XzFYMTggPSAweDEwMDksCisgIFY0TDJfTUJVU19GTVRfUkdCODg4XzFYMjQgPSAweDEwMGEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfUkdCODg4XzJYMTJfQkUgPSAweDEwMGIsCi0gVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMlgxMl9MRSA9IDB4MTAwYywKLSBWNEwyX01CVVNfRk1UX0FSR0I4ODg4XzFYMzIgPSAweDEwMGQsCi0gVjRMMl9NQlVTX0ZNVF9ZOF8xWDggPSAweDIwMDEsCisgIFY0TDJfTUJVU19GTVRfUkdCODg4XzJYMTJfQkUgPSAweDEwMGIsCisgIFY0TDJfTUJVU19GTVRfUkdCODg4XzJYMTJfTEUgPSAweDEwMGMsCisgIFY0TDJfTUJVU19GTVRfQVJHQjg4ODhfMVgzMiA9IDB4MTAwZCwKKyAgVjRMMl9NQlVTX0ZNVF9ZOF8xWDggPSAweDIwMDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfVVY4XzFYOCA9IDB4MjAxNSwKLSBWNEwyX01CVVNfRk1UX1VZVlk4XzFfNVg4ID0gMHgyMDAyLAotIFY0TDJfTUJVU19GTVRfVllVWThfMV81WDggPSAweDIwMDMsCi0gVjRMMl9NQlVTX0ZNVF9ZVVlWOF8xXzVYOCA9IDB4MjAwNCwKKyAgVjRMMl9NQlVTX0ZNVF9VVjhfMVg4ID0gMHgyMDE1LAorICBWNEwyX01CVVNfRk1UX1VZVlk4XzFfNVg4ID0gMHgyMDAyLAorICBWNEwyX01CVVNfRk1UX1ZZVVk4XzFfNVg4ID0gMHgyMDAzLAorICBWNEwyX01CVVNfRk1UX1lVWVY4XzFfNVg4ID0gMHgyMDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1lWWVU4XzFfNVg4ID0gMHgyMDA1LAotIFY0TDJfTUJVU19GTVRfVVlWWThfMlg4ID0gMHgyMDA2LAotIFY0TDJfTUJVU19GTVRfVllVWThfMlg4ID0gMHgyMDA3LAotIFY0TDJfTUJVU19GTVRfWVVZVjhfMlg4ID0gMHgyMDA4LAorICBWNEwyX01CVVNfRk1UX1lWWVU4XzFfNVg4ID0gMHgyMDA1LAorICBWNEwyX01CVVNfRk1UX1VZVlk4XzJYOCA9IDB4MjAwNiwKKyAgVjRMMl9NQlVTX0ZNVF9WWVVZOF8yWDggPSAweDIwMDcsCisgIFY0TDJfTUJVU19GTVRfWVVZVjhfMlg4ID0gMHgyMDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1lWWVU4XzJYOCA9IDB4MjAwOSwKLSBWNEwyX01CVVNfRk1UX1kxMF8xWDEwID0gMHgyMDBhLAotIFY0TDJfTUJVU19GTVRfWVVZVjEwXzJYMTAgPSAweDIwMGIsCi0gVjRMMl9NQlVTX0ZNVF9ZVllVMTBfMlgxMCA9IDB4MjAwYywKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVOF8yWDggPSAweDIwMDksCisgIFY0TDJfTUJVU19GTVRfWTEwXzFYMTAgPSAweDIwMGEsCisgIFY0TDJfTUJVU19GTVRfVVlWWTEwXzJYMTAgPSAweDIwMTgsCisgIFY0TDJfTUJVU19GTVRfVllVWTEwXzJYMTAgPSAweDIwMTksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfWTEyXzFYMTIgPSAweDIwMTMsCi0gVjRMMl9NQlVTX0ZNVF9VWVZZOF8xWDE2ID0gMHgyMDBmLAotIFY0TDJfTUJVU19GTVRfVllVWThfMVgxNiA9IDB4MjAxMCwKLSBWNEwyX01CVVNfRk1UX1lVWVY4XzFYMTYgPSAweDIwMTEsCisgIFY0TDJfTUJVU19GTVRfWVVZVjEwXzJYMTAgPSAweDIwMGIsCisgIFY0TDJfTUJVU19GTVRfWVZZVTEwXzJYMTAgPSAweDIwMGMsCisgIFY0TDJfTUJVU19GTVRfWTEyXzFYMTIgPSAweDIwMTMsCisgIFY0TDJfTUJVU19GTVRfVVlWWThfMVgxNiA9IDB4MjAwZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9ZVllVOF8xWDE2ID0gMHgyMDEyLAotIFY0TDJfTUJVU19GTVRfWURZVVlEWVY4XzFYMTYgPSAweDIwMTQsCi0gVjRMMl9NQlVTX0ZNVF9ZVVlWMTBfMVgyMCA9IDB4MjAwZCwKLSBWNEwyX01CVVNfRk1UX1lWWVUxMF8xWDIwID0gMHgyMDBlLAorICBWNEwyX01CVVNfRk1UX1ZZVVk4XzFYMTYgPSAweDIwMTAsCisgIFY0TDJfTUJVU19GTVRfWVVZVjhfMVgxNiA9IDB4MjAxMSwKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVOF8xWDE2ID0gMHgyMDEyLAorICBWNEwyX01CVVNfRk1UX1lEWVVZRFlWOF8xWDE2ID0gMHgyMDE0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1lVVjEwXzFYMzAgPSAweDIwMTYsCi0gVjRMMl9NQlVTX0ZNVF9BWVVWOF8xWDMyID0gMHgyMDE3LAotIFY0TDJfTUJVU19GTVRfU0JHR1I4XzFYOCA9IDB4MzAwMSwKLSBWNEwyX01CVVNfRk1UX1NHQlJHOF8xWDggPSAweDMwMTMsCisgIFY0TDJfTUJVU19GTVRfVVlWWTEwXzFYMjAgPSAweDIwMWEsCisgIFY0TDJfTUJVU19GTVRfVllVWTEwXzFYMjAgPSAweDIwMWIsCisgIFY0TDJfTUJVU19GTVRfWVVZVjEwXzFYMjAgPSAweDIwMGQsCisgIFY0TDJfTUJVU19GTVRfWVZZVTEwXzFYMjAgPSAweDIwMGUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfU0dSQkc4XzFYOCA9IDB4MzAwMiwKLSBWNEwyX01CVVNfRk1UX1NSR0dCOF8xWDggPSAweDMwMTQsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwX0FMQVc4XzFYOCA9IDB4MzAxNSwKLSBWNEwyX01CVVNfRk1UX1NHQlJHMTBfQUxBVzhfMVg4ID0gMHgzMDE2LAorICBWNEwyX01CVVNfRk1UX1lVVjEwXzFYMzAgPSAweDIwMTYsCisgIFY0TDJfTUJVU19GTVRfQVlVVjhfMVgzMiA9IDB4MjAxNywKKyAgVjRMMl9NQlVTX0ZNVF9VWVZZMTJfMlgxMiA9IDB4MjAxYywKKyAgVjRMMl9NQlVTX0ZNVF9WWVVZMTJfMlgxMiA9IDB4MjAxZCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9TR1JCRzEwX0FMQVc4XzFYOCA9IDB4MzAxNywKLSBWNEwyX01CVVNfRk1UX1NSR0dCMTBfQUxBVzhfMVg4ID0gMHgzMDE4LAotIFY0TDJfTUJVU19GTVRfU0JHR1IxMF9EUENNOF8xWDggPSAweDMwMGIsCi0gVjRMMl9NQlVTX0ZNVF9TR0JSRzEwX0RQQ004XzFYOCA9IDB4MzAwYywKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWMTJfMlgxMiA9IDB4MjAxZSwKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVMTJfMlgxMiA9IDB4MjAxZiwKKyAgVjRMMl9NQlVTX0ZNVF9VWVZZMTJfMVgyNCA9IDB4MjAyMCwKKyAgVjRMMl9NQlVTX0ZNVF9WWVVZMTJfMVgyNCA9IDB4MjAyMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9TR1JCRzEwX0RQQ004XzFYOCA9IDB4MzAwOSwKLSBWNEwyX01CVVNfRk1UX1NSR0dCMTBfRFBDTThfMVg4ID0gMHgzMDBkLAotIFY0TDJfTUJVU19GTVRfU0JHR1IxMF8yWDhfUEFESElfQkUgPSAweDMwMDMsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURISV9MRSA9IDB4MzAwNCwKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWMTJfMVgyNCA9IDB4MjAyMiwKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVMTJfMVgyNCA9IDB4MjAyMywKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjhfMVg4ID0gMHgzMDAxLAorICBWNEwyX01CVVNfRk1UX1NHQlJHOF8xWDggPSAweDMwMTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfU0JHR1IxMF8yWDhfUEFETE9fQkUgPSAweDMwMDUsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURMT19MRSA9IDB4MzAwNiwKLSBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMVgxMCA9IDB4MzAwNywKLSBWNEwyX01CVVNfRk1UX1NHQlJHMTBfMVgxMCA9IDB4MzAwZSwKKyAgVjRMMl9NQlVTX0ZNVF9TR1JCRzhfMVg4ID0gMHgzMDAyLAorICBWNEwyX01CVVNfRk1UX1NSR0dCOF8xWDggPSAweDMwMTQsCisgIFY0TDJfTUJVU19GTVRfU0JHR1IxMF9BTEFXOF8xWDggPSAweDMwMTUsCisgIFY0TDJfTUJVU19GTVRfU0dCUkcxMF9BTEFXOF8xWDggPSAweDMwMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfU0dSQkcxMF8xWDEwID0gMHgzMDBhLAotIFY0TDJfTUJVU19GTVRfU1JHR0IxMF8xWDEwID0gMHgzMDBmLAotIFY0TDJfTUJVU19GTVRfU0JHR1IxMl8xWDEyID0gMHgzMDA4LAotIFY0TDJfTUJVU19GTVRfU0dCUkcxMl8xWDEyID0gMHgzMDEwLAorICBWNEwyX01CVVNfRk1UX1NHUkJHMTBfQUxBVzhfMVg4ID0gMHgzMDE3LAorICBWNEwyX01CVVNfRk1UX1NSR0dCMTBfQUxBVzhfMVg4ID0gMHgzMDE4LAorICBWNEwyX01CVVNfRk1UX1NCR0dSMTBfRFBDTThfMVg4ID0gMHgzMDBiLAorICBWNEwyX01CVVNfRk1UX1NHQlJHMTBfRFBDTThfMVg4ID0gMHgzMDBjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1NHUkJHMTJfMVgxMiA9IDB4MzAxMSwKLSBWNEwyX01CVVNfRk1UX1NSR0dCMTJfMVgxMiA9IDB4MzAxMiwKLSBWNEwyX01CVVNfRk1UX0pQRUdfMVg4ID0gMHg0MDAxLAotIFY0TDJfTUJVU19GTVRfUzVDX1VZVllfSlBFR18xWDggPSAweDUwMDEsCisgIFY0TDJfTUJVU19GTVRfU0dSQkcxMF9EUENNOF8xWDggPSAweDMwMDksCisgIFY0TDJfTUJVU19GTVRfU1JHR0IxMF9EUENNOF8xWDggPSAweDMwMGQsCisgIFY0TDJfTUJVU19GTVRfU0JHR1IxMF8yWDhfUEFESElfQkUgPSAweDMwMDMsCisgIFY0TDJfTUJVU19GTVRfU0JHR1IxMF8yWDhfUEFESElfTEUgPSAweDMwMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfQUhTVjg4ODhfMVgzMiA9IDB4NjAwMSwKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURMT19CRSA9IDB4MzAwNSwKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURMT19MRSA9IDB4MzAwNiwKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzFYMTAgPSAweDMwMDcsCisgIFY0TDJfTUJVU19GTVRfU0dCUkcxMF8xWDEwID0gMHgzMDBlLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NQlVTX0ZNVF9TR1JCRzEwXzFYMTAgPSAweDMwMGEsCisgIFY0TDJfTUJVU19GTVRfU1JHR0IxMF8xWDEwID0gMHgzMDBmLAorICBWNEwyX01CVVNfRk1UX1NCR0dSMTJfMVgxMiA9IDB4MzAwOCwKKyAgVjRMMl9NQlVTX0ZNVF9TR0JSRzEyXzFYMTIgPSAweDMwMTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX01CVVNfRk1UX1NHUkJHMTJfMVgxMiA9IDB4MzAxMSwKKyAgVjRMMl9NQlVTX0ZNVF9TUkdHQjEyXzFYMTIgPSAweDMwMTIsCisgIFY0TDJfTUJVU19GTVRfSlBFR18xWDggPSAweDQwMDEsCisgIFY0TDJfTUJVU19GTVRfUzVDX1VZVllfSlBFR18xWDggPSAweDUwMDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX01CVVNfRk1UX0FIU1Y4ODg4XzFYMzIgPSAweDYwMDEsCiB9Owogc3RydWN0IHY0bDJfbWJ1c19mcmFtZWZtdCB7Ci0gX191MzIgd2lkdGg7CisgIF9fdTMyIHdpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgY29kZTsKLSBfX3UzMiBmaWVsZDsKLSBfX3UzMiBjb2xvcnNwYWNlOworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIGNvZGU7CisgIF9fdTMyIGZpZWxkOworICBfX3UzMiBjb2xvcnNwYWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs3XTsKKyAgX191MzIgcmVzZXJ2ZWRbN107CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItc3ViZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItc3ViZGV2LmgKaW5kZXggYWQ5Y2I4Yi4uNjUzZjg0NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLXN1YmRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1zdWJkZXYuaApAQCAtMjQsOTYgKzI0LDk1IEBACiAjaW5jbHVkZSA8bGludXgvdjRsMi1jb21tb24uaD4KICNpbmNsdWRlIDxsaW51eC92NGwyLW1lZGlhYnVzLmg+CiBlbnVtIHY0bDJfc3ViZGV2X2Zvcm1hdF93aGVuY2UgewotIFY0TDJfU1VCREVWX0ZPUk1BVF9UUlkgPSAwLAorICBWNEwyX1NVQkRFVl9GT1JNQVRfVFJZID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9TVUJERVZfRk9STUFUX0FDVElWRSA9IDEsCisgIFY0TDJfU1VCREVWX0ZPUk1BVF9BQ1RJVkUgPSAxLAogfTsKIHN0cnVjdCB2NGwyX3N1YmRldl9mb3JtYXQgewotIF9fdTMyIHdoaWNoOworICBfX3UzMiB3aGljaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOwotIHN0cnVjdCB2NGwyX21idXNfZnJhbWVmbXQgZm9ybWF0OwotIF9fdTMyIHJlc2VydmVkWzhdOworICBfX3UzMiBwYWQ7CisgIHN0cnVjdCB2NGwyX21idXNfZnJhbWVmbXQgZm9ybWF0OworICBfX3UzMiByZXNlcnZlZFs4XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfc3ViZGV2X2Nyb3AgewotIF9fdTMyIHdoaWNoOwotIF9fdTMyIHBhZDsKLSBzdHJ1Y3QgdjRsMl9yZWN0IHJlY3Q7CisgIF9fdTMyIHdoaWNoOworICBfX3UzMiBwYWQ7CisgIHN0cnVjdCB2NGwyX3JlY3QgcmVjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIHJlc2VydmVkWzhdOwogfTsKIHN0cnVjdCB2NGwyX3N1YmRldl9tYnVzX2NvZGVfZW51bSB7Ci0gX191MzIgcGFkOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIGNvZGU7Ci0gX191MzIgcmVzZXJ2ZWRbOV07CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBjb2RlOworICBfX3UzMiByZXNlcnZlZFs5XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX3NpemVfZW51bSB7Ci0gX191MzIgaW5kZXg7Ci0gX191MzIgcGFkOwotIF9fdTMyIGNvZGU7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBwYWQ7CisgIF9fdTMyIGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1pbl93aWR0aDsKLSBfX3UzMiBtYXhfd2lkdGg7Ci0gX191MzIgbWluX2hlaWdodDsKLSBfX3UzMiBtYXhfaGVpZ2h0OworICBfX3UzMiBtaW5fd2lkdGg7CisgIF9fdTMyIG1heF93aWR0aDsKKyAgX191MzIgbWluX2hlaWdodDsKKyAgX191MzIgbWF4X2hlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbOV07CisgIF9fdTMyIHJlc2VydmVkWzldOwogfTsKIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9pbnRlcnZhbCB7Ci0gX191MzIgcGFkOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX2ZyYWN0IGludGVydmFsOwotIF9fdTMyIHJlc2VydmVkWzldOworICBzdHJ1Y3QgdjRsMl9mcmFjdCBpbnRlcnZhbDsKKyAgX191MzIgcmVzZXJ2ZWRbOV07CiB9Owogc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX2ludGVydmFsX2VudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBwYWQ7Ci0gX191MzIgY29kZTsKLSBfX3UzMiB3aWR0aDsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHBhZDsKKyAgX191MzIgY29kZTsKKyAgX191MzIgd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhlaWdodDsKLSBzdHJ1Y3QgdjRsMl9mcmFjdCBpbnRlcnZhbDsKLSBfX3UzMiByZXNlcnZlZFs5XTsKKyAgX191MzIgaGVpZ2h0OworICBzdHJ1Y3QgdjRsMl9mcmFjdCBpbnRlcnZhbDsKKyAgX191MzIgcmVzZXJ2ZWRbOV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX3N1YmRldl9zZWxlY3Rpb24gewotIF9fdTMyIHdoaWNoOwotIF9fdTMyIHBhZDsKLSBfX3UzMiB0YXJnZXQ7CisgIF9fdTMyIHdoaWNoOworICBfX3UzMiBwYWQ7CisgIF9fdTMyIHRhcmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gc3RydWN0IHY0bDJfcmVjdCByOwotIF9fdTMyIHJlc2VydmVkWzhdOworICBfX3UzMiBmbGFnczsKKyAgc3RydWN0IHY0bDJfcmVjdCByOworICBfX3UzMiByZXNlcnZlZFs4XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IHY0bDJfc3ViZGV2X2VkaWQgewotIF9fdTMyIHBhZDsKLSBfX3UzMiBzdGFydF9ibG9jazsKLSBfX3UzMiBibG9ja3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzVdOwotIF9fdTggX191c2VyICplZGlkOwotfTsKKyNkZWZpbmUgdjRsMl9zdWJkZXZfZWRpZCB2NGwyX2VkaWQKICNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0ZNVCBfSU9XUignVicsIDQsIHN0cnVjdCB2NGwyX3N1YmRldl9mb3JtYXQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfU1VCREVWX1NfRk1UIF9JT1dSKCdWJywgNSwgc3RydWN0IHY0bDJfc3ViZGV2X2Zvcm1hdCkKLSNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0ZSQU1FX0lOVEVSVkFMICAgX0lPV1IoJ1YnLCAyMSwgc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX2ludGVydmFsKQotI2RlZmluZSBWSURJT0NfU1VCREVWX1NfRlJBTUVfSU5URVJWQUwgICBfSU9XUignVicsIDIyLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWwpCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9NQlVTX0NPREUgICBfSU9XUignVicsIDIsIHN0cnVjdCB2NGwyX3N1YmRldl9tYnVzX2NvZGVfZW51bSkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0ZSQU1FX0lOVEVSVkFMIF9JT1dSKCdWJywgMjEsIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9pbnRlcnZhbCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9GUkFNRV9TSVpFICAgX0lPV1IoJ1YnLCA3NCwgc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX3NpemVfZW51bSkKLSNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX0ZSQU1FX0lOVEVSVkFMICAgX0lPV1IoJ1YnLCA3NSwgc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX2ludGVydmFsX2VudW0pCisjZGVmaW5lIFZJRElPQ19TVUJERVZfU19GUkFNRV9JTlRFUlZBTCBfSU9XUignVicsIDIyLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWwpCisjZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9NQlVTX0NPREUgX0lPV1IoJ1YnLCAyLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfbWJ1c19jb2RlX2VudW0pCisjZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9GUkFNRV9TSVpFIF9JT1dSKCdWJywgNzQsIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9zaXplX2VudW0pCisjZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9GUkFNRV9JTlRFUlZBTCBfSU9XUignVicsIDc1LCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWxfZW51bSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TVUJERVZfR19DUk9QIF9JT1dSKCdWJywgNTksIHN0cnVjdCB2NGwyX3N1YmRldl9jcm9wKQogI2RlZmluZSBWSURJT0NfU1VCREVWX1NfQ1JPUCBfSU9XUignVicsIDYwLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfY3JvcCkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9HX1NFTEVDVElPTiBfSU9XUignVicsIDYxLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfc2VsZWN0aW9uKQorI2RlZmluZSBWSURJT0NfU1VCREVWX1NfU0VMRUNUSU9OIF9JT1dSKCdWJywgNjIsIHN0cnVjdCB2NGwyX3N1YmRldl9zZWxlY3Rpb24pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWSURJT0NfU1VCREVWX0dfU0VMRUNUSU9OICAgX0lPV1IoJ1YnLCA2MSwgc3RydWN0IHY0bDJfc3ViZGV2X3NlbGVjdGlvbikKLSNkZWZpbmUgVklESU9DX1NVQkRFVl9TX1NFTEVDVElPTiAgIF9JT1dSKCdWJywgNjIsIHN0cnVjdCB2NGwyX3N1YmRldl9zZWxlY3Rpb24pCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfR19FRElEIF9JT1dSKCdWJywgNDAsIHN0cnVjdCB2NGwyX3N1YmRldl9lZGlkKQotI2RlZmluZSBWSURJT0NfU1VCREVWX1NfRURJRCBfSU9XUignVicsIDQxLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZWRpZCkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0VESUQgX0lPV1IoJ1YnLCA0MCwgc3RydWN0IHY0bDJfZWRpZCkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9TX0VESUQgX0lPV1IoJ1YnLCA0MSwgc3RydWN0IHY0bDJfZWRpZCkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9TX0RWX1RJTUlOR1MgX0lPV1IoJ1YnLCA4Nywgc3RydWN0IHY0bDJfZHZfdGltaW5ncykKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0RWX1RJTUlOR1MgX0lPV1IoJ1YnLCA4OCwgc3RydWN0IHY0bDJfZHZfdGltaW5ncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19TVUJERVZfRU5VTV9EVl9USU1JTkdTIF9JT1dSKCdWJywgOTgsIHN0cnVjdCB2NGwyX2VudW1fZHZfdGltaW5ncykKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9RVUVSWV9EVl9USU1JTkdTIF9JT1IoJ1YnLCA5OSwgc3RydWN0IHY0bDJfZHZfdGltaW5ncykKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9EVl9USU1JTkdTX0NBUCBfSU9XUignVicsIDEwMCwgc3RydWN0IHY0bDJfZHZfdGltaW5nc19jYXApCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZlcnNpb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmVyc2lvbi5oCmluZGV4IDcxZTUzNzMuLmE2YzZhMmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmVyc2lvbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmVyc2lvbi5oCkBAIC0xNiw1ICsxNiw1IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jZGVmaW5lIExJTlVYX1ZFUlNJT05fQ09ERSAyMDAxOTIKKyNkZWZpbmUgTElOVVhfVkVSU0lPTl9DT0RFIDIwMTIyNgogI2RlZmluZSBLRVJORUxfVkVSU0lPTihhLGIsYykgKCgoYSkgPDwgMTYpICsgKChiKSA8PCA4KSArIChjKSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmV0aC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXRoLmgKaW5kZXggMDAwZjU2Yi4uZTA4ZWMyMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXRoLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXRoLmgKQEAgLTE5LDEwICsxOSwxMCBAQAogI2lmbmRlZiBfX05FVF9WRVRIX0hfCiAjZGVmaW5lIF9fTkVUX1ZFVEhfSF8KIGVudW0gewotIFZFVEhfSU5GT19VTlNQRUMsCisgIFZFVEhfSU5GT19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZFVEhfSU5GT19QRUVSLAotIF9fVkVUSF9JTkZPX01BWAorICBWRVRIX0lORk9fUEVFUiwKKyAgX19WRVRIX0lORk9fTUFYCiAjZGVmaW5lIFZFVEhfSU5GT19NQVggKF9fVkVUSF9JTkZPX01BWCAtIDEpCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmZpby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZmlvLmgKaW5kZXggODhjYjA2Ny4uMzJkYjcwZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZmlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZmlvLmgKQEAgLTI0LDYgKzI0LDExIEBACiAjZGVmaW5lIFZGSU9fQVBJX1ZFUlNJT04gMAogI2RlZmluZSBWRklPX1RZUEUxX0lPTU1VIDEKICNkZWZpbmUgVkZJT19TUEFQUl9UQ0VfSU9NTVUgMgorI2RlZmluZSBWRklPX1RZUEUxdjJfSU9NTVUgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVkZJT19ETUFfQ0NfSU9NTVUgNAorI2RlZmluZSBWRklPX0VFSCA1CisjZGVmaW5lIFZGSU9fVFlQRTFfTkVTVElOR19JT01NVSA2CiAjZGVmaW5lIFZGSU9fVFlQRSAoJzsnKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZJT19CQVNFIDEwMApAQCAtMzIsOCArMzcsOCBAQAogI2RlZmluZSBWRklPX1NFVF9JT01NVSBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2ZmlvX2dyb3VwX3N0YXR1cyB7Ci0gX191MzIgYXJnc3o7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGFyZ3N6OworICBfX3UzMiBmbGFnczsKICNkZWZpbmUgVkZJT19HUk9VUF9GTEFHU19WSUFCTEUgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZGSU9fR1JPVVBfRkxBR1NfQ09OVEFJTkVSX1NFVCAoMSA8PCAxKQpAQCAtNDQsNDkgKzQ5LDQ5IEBACiAjZGVmaW5lIFZGSU9fR1JPVVBfVU5TRVRfQ09OVEFJTkVSIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDUpCiAjZGVmaW5lIFZGSU9fR1JPVVBfR0VUX0RFVklDRV9GRCBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyA2KQogc3RydWN0IHZmaW9fZGV2aWNlX2luZm8gewotIF9fdTMyIGFyZ3N6OworICBfX3UzMiBhcmdzejsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBWRklPX0RFVklDRV9GTEFHU19SRVNFVCAoMSA8PCAwKQogI2RlZmluZSBWRklPX0RFVklDRV9GTEFHU19QQ0kgKDEgPDwgMSkKLSBfX3UzMiBudW1fcmVnaW9uczsKKyAgX191MzIgbnVtX3JlZ2lvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bV9pcnFzOworICBfX3UzMiBudW1faXJxczsKIH07CiAjZGVmaW5lIFZGSU9fREVWSUNFX0dFVF9JTkZPIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDcpCiBzdHJ1Y3QgdmZpb19yZWdpb25faW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFyZ3N6OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFZGSU9fUkVHSU9OX0lORk9fRkxBR19SRUFEICgxIDw8IDApCiAjZGVmaW5lIFZGSU9fUkVHSU9OX0lORk9fRkxBR19XUklURSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZJT19SRUdJT05fSU5GT19GTEFHX01NQVAgKDEgPDwgMikKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiByZXN2OwotIF9fdTY0IHNpemU7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiByZXN2OworICBfX3U2NCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBvZmZzZXQ7CisgIF9fdTY0IG9mZnNldDsKIH07CiAjZGVmaW5lIFZGSU9fREVWSUNFX0dFVF9SRUdJT05fSU5GTyBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyA4KQogc3RydWN0IHZmaW9faXJxX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBWRklPX0lSUV9JTkZPX0VWRU5URkQgKDEgPDwgMCkKICNkZWZpbmUgVkZJT19JUlFfSU5GT19NQVNLQUJMRSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZJT19JUlFfSU5GT19BVVRPTUFTS0VEICgxIDw8IDIpCiAjZGVmaW5lIFZGSU9fSVJRX0lORk9fTk9SRVNJWkUgKDEgPDwgMykKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBjb3VudDsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFZGSU9fREVWSUNFX0dFVF9JUlFfSU5GTyBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyA5KQogc3RydWN0IHZmaW9faXJxX3NldCB7Ci0gX191MzIgYXJnc3o7CisgIF9fdTMyIGFyZ3N6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFZGSU9fSVJRX1NFVF9EQVRBX05PTkUgKDEgPDwgMCkKICNkZWZpbmUgVkZJT19JUlFfU0VUX0RBVEFfQk9PTCAoMSA8PCAxKQogI2RlZmluZSBWRklPX0lSUV9TRVRfREFUQV9FVkVOVEZEICgxIDw8IDIpCkBAIC05NCwxMDYgKzk5LDEzMSBAQAogI2RlZmluZSBWRklPX0lSUV9TRVRfQUNUSU9OX01BU0sgKDEgPDwgMykKICNkZWZpbmUgVkZJT19JUlFfU0VUX0FDVElPTl9VTk1BU0sgKDEgPDwgNCkKICNkZWZpbmUgVkZJT19JUlFfU0VUX0FDVElPTl9UUklHR0VSICgxIDw8IDUpCi0gX191MzIgaW5kZXg7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGFydDsKLSBfX3UzMiBjb3VudDsKLSBfX3U4IGRhdGFbXTsKKyAgX191MzIgc3RhcnQ7CisgIF9fdTMyIGNvdW50OworICBfX3U4IGRhdGFbXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRklPX0RFVklDRV9TRVRfSVJRUyBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxMCkKLSNkZWZpbmUgVkZJT19JUlFfU0VUX0RBVEFfVFlQRV9NQVNLIChWRklPX0lSUV9TRVRfREFUQV9OT05FIHwgICBWRklPX0lSUV9TRVRfREFUQV9CT09MIHwgICBWRklPX0lSUV9TRVRfREFUQV9FVkVOVEZEKQotI2RlZmluZSBWRklPX0lSUV9TRVRfQUNUSU9OX1RZUEVfTUFTSyAoVkZJT19JUlFfU0VUX0FDVElPTl9NQVNLIHwgICBWRklPX0lSUV9TRVRfQUNUSU9OX1VOTUFTSyB8ICAgVkZJT19JUlFfU0VUX0FDVElPTl9UUklHR0VSKQorI2RlZmluZSBWRklPX0lSUV9TRVRfREFUQV9UWVBFX01BU0sgKFZGSU9fSVJRX1NFVF9EQVRBX05PTkUgfCBWRklPX0lSUV9TRVRfREFUQV9CT09MIHwgVkZJT19JUlFfU0VUX0RBVEFfRVZFTlRGRCkKKyNkZWZpbmUgVkZJT19JUlFfU0VUX0FDVElPTl9UWVBFX01BU0sgKFZGSU9fSVJRX1NFVF9BQ1RJT05fTUFTSyB8IFZGSU9fSVJRX1NFVF9BQ1RJT05fVU5NQVNLIHwgVkZJT19JUlFfU0VUX0FDVElPTl9UUklHR0VSKQogI2RlZmluZSBWRklPX0RFVklDRV9SRVNFVCBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBWRklPX1BDSV9CQVIwX1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9CQVIxX1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9CQVIyX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfQkFSMF9SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX0JBUjFfUkVHSU9OX0lOREVYLAorICBWRklPX1BDSV9CQVIyX1JFR0lPTl9JTkRFWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkZJT19QQ0lfQkFSM19SRUdJT05fSU5ERVgsCi0gVkZJT19QQ0lfQkFSNF9SRUdJT05fSU5ERVgsCi0gVkZJT19QQ0lfQkFSNV9SRUdJT05fSU5ERVgsCi0gVkZJT19QQ0lfUk9NX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfQkFSM19SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX0JBUjRfUkVHSU9OX0lOREVYLAorICBWRklPX1BDSV9CQVI1X1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfUk9NX1JFR0lPTl9JTkRFWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkZJT19QQ0lfQ09ORklHX1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9WR0FfUkVHSU9OX0lOREVYLAotIFZGSU9fUENJX05VTV9SRUdJT05TCisgIFZGSU9fUENJX0NPTkZJR19SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX1ZHQV9SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX05VTV9SRUdJT05TCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFZGSU9fUENJX0lOVFhfSVJRX0lOREVYLAotIFZGSU9fUENJX01TSV9JUlFfSU5ERVgsCi0gVkZJT19QQ0lfTVNJWF9JUlFfSU5ERVgsCisgIFZGSU9fUENJX0lOVFhfSVJRX0lOREVYLAorICBWRklPX1BDSV9NU0lfSVJRX0lOREVYLAorICBWRklPX1BDSV9NU0lYX0lSUV9JTkRFWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkZJT19QQ0lfRVJSX0lSUV9JTkRFWCwKLSBWRklPX1BDSV9OVU1fSVJRUworICBWRklPX1BDSV9FUlJfSVJRX0lOREVYLAorICBWRklPX1BDSV9OVU1fSVJRUwogfTsKIHN0cnVjdCB2ZmlvX3BjaV9kZXBlbmRlbnRfZGV2aWNlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ3JvdXBfaWQ7Ci0gX191MTYgc2VnbWVudDsKLSBfX3U4IGJ1czsKLSBfX3U4IGRldmZuOworICBfX3UzMiBncm91cF9pZDsKKyAgX191MTYgc2VnbWVudDsKKyAgX191OCBidXM7CisgIF9fdTggZGV2Zm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB2ZmlvX3BjaV9ob3RfcmVzZXRfaW5mbyB7Ci0gX191MzIgYXJnc3o7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGFyZ3N6OworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY291bnQ7Ci0gc3RydWN0IHZmaW9fcGNpX2RlcGVuZGVudF9kZXZpY2UgZGV2aWNlc1tdOworICBfX3UzMiBjb3VudDsKKyAgc3RydWN0IHZmaW9fcGNpX2RlcGVuZGVudF9kZXZpY2UgZGV2aWNlc1tdOwogfTsKICNkZWZpbmUgVkZJT19ERVZJQ0VfR0VUX1BDSV9IT1RfUkVTRVRfSU5GTyBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmZpb19wY2lfaG90X3Jlc2V0IHsKLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBjb3VudDsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgZ3JvdXBfZmRzW107CisgIF9fczMyIGdyb3VwX2Zkc1tdOwogfTsKICNkZWZpbmUgVkZJT19ERVZJQ0VfUENJX0hPVF9SRVNFVCBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxMykKIHN0cnVjdCB2ZmlvX2lvbW11X3R5cGUxX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBWRklPX0lPTU1VX0lORk9fUEdTSVpFUyAoMSA8PCAwKQotIF9fdTY0IGlvdmFfcGdzaXplczsKKyAgX191NjQgaW92YV9wZ3NpemVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFZGSU9fSU9NTVVfR0VUX0lORk8gX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTIpCiBzdHJ1Y3QgdmZpb19pb21tdV90eXBlMV9kbWFfbWFwIHsKLSBfX3UzMiBhcmdzejsKKyAgX191MzIgYXJnc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKICNkZWZpbmUgVkZJT19ETUFfTUFQX0ZMQUdfUkVBRCAoMSA8PCAwKQogI2RlZmluZSBWRklPX0RNQV9NQVBfRkxBR19XUklURSAoMSA8PCAxKQotIF9fdTY0IHZhZGRyOworICBfX3U2NCB2YWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgaW92YTsKLSBfX3U2NCBzaXplOworICBfX3U2NCBpb3ZhOworICBfX3U2NCBzaXplOwogfTsKICNkZWZpbmUgVkZJT19JT01NVV9NQVBfRE1BIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDEzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2ZmlvX2lvbW11X3R5cGUxX2RtYV91bm1hcCB7Ci0gX191MzIgYXJnc3o7Ci0gX191MzIgZmxhZ3M7Ci0gX191NjQgaW92YTsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBpb3ZhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzaXplOworICBfX3U2NCBzaXplOwogfTsKICNkZWZpbmUgVkZJT19JT01NVV9VTk1BUF9ETUEgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTQpCiAjZGVmaW5lIFZGSU9fSU9NTVVfRU5BQkxFIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDE1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZJT19JT01NVV9ESVNBQkxFIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDE2KQogc3RydWN0IHZmaW9faW9tbXVfc3BhcHJfdGNlX2luZm8gewotIF9fdTMyIGFyZ3N6OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRtYTMyX3dpbmRvd19zdGFydDsKLSBfX3UzMiBkbWEzMl93aW5kb3dfc2l6ZTsKKyAgX191MzIgZG1hMzJfd2luZG93X3N0YXJ0OworICBfX3UzMiBkbWEzMl93aW5kb3dfc2l6ZTsKIH07CiAjZGVmaW5lIFZGSU9fSU9NTVVfU1BBUFJfVENFX0dFVF9JTkZPIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCB2ZmlvX2VlaF9wZV9vcCB7CisgIF9fdTMyIGFyZ3N6OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgb3A7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgVkZJT19FRUhfUEVfRElTQUJMRSAwCisjZGVmaW5lIFZGSU9fRUVIX1BFX0VOQUJMRSAxCisjZGVmaW5lIFZGSU9fRUVIX1BFX1VORlJFRVpFX0lPIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZGSU9fRUVIX1BFX1VORlJFRVpFX0RNQSAzCisjZGVmaW5lIFZGSU9fRUVIX1BFX0dFVF9TVEFURSA0CisjZGVmaW5lIFZGSU9fRUVIX1BFX1NUQVRFX05PUk1BTCAwCisjZGVmaW5lIFZGSU9fRUVIX1BFX1NUQVRFX1JFU0VUIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZGSU9fRUVIX1BFX1NUQVRFX1NUT1BQRUQgMgorI2RlZmluZSBWRklPX0VFSF9QRV9TVEFURV9TVE9QUEVEX0RNQSA0CisjZGVmaW5lIFZGSU9fRUVIX1BFX1NUQVRFX1VOQVZBSUwgNQorI2RlZmluZSBWRklPX0VFSF9QRV9SRVNFVF9ERUFDVElWQVRFIDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZGSU9fRUVIX1BFX1JFU0VUX0hPVCA2CisjZGVmaW5lIFZGSU9fRUVIX1BFX1JFU0VUX0ZVTkRBTUVOVEFMIDcKKyNkZWZpbmUgVkZJT19FRUhfUEVfQ09ORklHVVJFIDgKKyNkZWZpbmUgVkZJT19FRUhfUEVfT1AgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMjEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Zob3N0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Zob3N0LmgKaW5kZXggYzQ5YzA3MS4uMGE2NmU3YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aG9zdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmhvc3QuaApAQCAtMjYsMzkgKzI2LDM5IEBACiAjaW5jbHVkZSA8bGludXgvdmlydGlvX3JpbmcuaD4KIHN0cnVjdCB2aG9zdF92cmluZ19zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgbnVtOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBudW07CiB9Owogc3RydWN0IHZob3N0X3ZyaW5nX2ZpbGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW5kZXg7Ci0gaW50IGZkOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIGludCBmZDsKIH07CiBzdHJ1Y3Qgdmhvc3RfdnJpbmdfYWRkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpbmRleDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBpbmRleDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogI2RlZmluZSBWSE9TVF9WUklOR19GX0xPRyAwCi0gX191NjQgZGVzY191c2VyX2FkZHI7CisgIF9fdTY0IGRlc2NfdXNlcl9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c2VkX3VzZXJfYWRkcjsKLSBfX3U2NCBhdmFpbF91c2VyX2FkZHI7Ci0gX191NjQgbG9nX2d1ZXN0X2FkZHI7CisgIF9fdTY0IHVzZWRfdXNlcl9hZGRyOworICBfX3U2NCBhdmFpbF91c2VyX2FkZHI7CisgIF9fdTY0IGxvZ19ndWVzdF9hZGRyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgdmhvc3RfbWVtb3J5X3JlZ2lvbiB7Ci0gX191NjQgZ3Vlc3RfcGh5c19hZGRyOwotIF9fdTY0IG1lbW9yeV9zaXplOwotIF9fdTY0IHVzZXJzcGFjZV9hZGRyOworICBfX3U2NCBndWVzdF9waHlzX2FkZHI7CisgIF9fdTY0IG1lbW9yeV9zaXplOworICBfX3U2NCB1c2Vyc3BhY2VfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZmxhZ3NfcGFkZGluZzsKKyAgX191NjQgZmxhZ3NfcGFkZGluZzsKIH07CiAjZGVmaW5lIFZIT1NUX1BBR0VfU0laRSAweDEwMDAKIHN0cnVjdCB2aG9zdF9tZW1vcnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBucmVnaW9uczsKLSBfX3UzMiBwYWRkaW5nOwotIHN0cnVjdCB2aG9zdF9tZW1vcnlfcmVnaW9uIHJlZ2lvbnNbMF07CisgIF9fdTMyIG5yZWdpb25zOworICBfX3UzMiBwYWRkaW5nOworICBzdHJ1Y3Qgdmhvc3RfbWVtb3J5X3JlZ2lvbiByZWdpb25zWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZIT1NUX1ZJUlRJTyAweEFGCkBAIC04NiwxMCArODYsMTAgQEAKICNkZWZpbmUgVkhPU1RfU0NTSV9BQklfVkVSU0lPTiAxCiBzdHJ1Y3Qgdmhvc3Rfc2NzaV90YXJnZXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYWJpX3ZlcnNpb247Ci0gY2hhciB2aG9zdF93d3BuWzIyNF07Ci0gdW5zaWduZWQgc2hvcnQgdmhvc3RfdHBndDsKLSB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZDsKKyAgaW50IGFiaV92ZXJzaW9uOworICBjaGFyIHZob3N0X3d3cG5bMjI0XTsKKyAgdW5zaWduZWQgc2hvcnQgdmhvc3RfdHBndDsKKyAgdW5zaWduZWQgc2hvcnQgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVkhPU1RfU0NTSV9TRVRfRU5EUE9JTlQgX0lPVyhWSE9TVF9WSVJUSU8sIDB4NDAsIHN0cnVjdCB2aG9zdF9zY3NpX3RhcmdldCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlkZW9kZXYyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpZGVvZGV2Mi5oCmluZGV4IGIxYzYwNDIuLmRmM2ViYzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlkZW9kZXYyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aWRlb2RldjIuaApAQCAtMjgsMTM5MSArMjgsMTUwOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fTUFYX0ZSQU1FIDMyCiAjZGVmaW5lIFZJREVPX01BWF9QTEFORVMgOAotI2RlZmluZSB2NGwyX2ZvdXJjYyhhLCBiLCBjLCBkKSAgKChfX3UzMikoYSkgfCAoKF9fdTMyKShiKSA8PCA4KSB8ICgoX191MzIpKGMpIDw8IDE2KSB8ICgoX191MzIpKGQpIDw8IDI0KSkKKyNkZWZpbmUgdjRsMl9mb3VyY2MoYSxiLGMsZCkgKChfX3UzMikgKGEpIHwgKChfX3UzMikgKGIpIDw8IDgpIHwgKChfX3UzMikgKGMpIDw8IDE2KSB8ICgoX191MzIpIChkKSA8PCAyNCkpCisjZGVmaW5lIHY0bDJfZm91cmNjX2JlKGEsYixjLGQpICh2NGwyX2ZvdXJjYyhhLCBiLCBjLCBkKSB8ICgxIDw8IDMxKSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfZmllbGQgeworICBWNEwyX0ZJRUxEX0FOWSA9IDAsCisgIFY0TDJfRklFTERfTk9ORSA9IDEsCisgIFY0TDJfRklFTERfVE9QID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GSUVMRF9BTlkgPSAwLAotIFY0TDJfRklFTERfTk9ORSA9IDEsCi0gVjRMMl9GSUVMRF9UT1AgPSAyLAotIFY0TDJfRklFTERfQk9UVE9NID0gMywKKyAgVjRMMl9GSUVMRF9CT1RUT00gPSAzLAorICBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgPSA0LAorICBWNEwyX0ZJRUxEX1NFUV9UQiA9IDUsCisgIFY0TDJfRklFTERfU0VRX0JUID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEID0gNCwKLSBWNEwyX0ZJRUxEX1NFUV9UQiA9IDUsCi0gVjRMMl9GSUVMRF9TRVFfQlQgPSA2LAotIFY0TDJfRklFTERfQUxURVJOQVRFID0gNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCID0gOCwKLSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgPSA5LAorICBWNEwyX0ZJRUxEX0FMVEVSTkFURSA9IDcsCisgIFY0TDJfRklFTERfSU5URVJMQUNFRF9UQiA9IDgsCisgIFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCA9IDksCiB9OwotI2RlZmluZSBWNEwyX0ZJRUxEX0hBU19UT1AoZmllbGQpICAgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9UT1AgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfVEIgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfQlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0ZJRUxEX0hBU19CT1RUT00oZmllbGQpICAgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9CT1RUT00gfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfVEIgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfQlQpCi0jZGVmaW5lIFY0TDJfRklFTERfSEFTX0JPVEgoZmllbGQpICAgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfVEIgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfQlQpCisjZGVmaW5lIFY0TDJfRklFTERfSEFTX1RPUChmaWVsZCkgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9UT1AgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfVEIgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAoZmllbGQpID09IFY0TDJfRklFTERfU0VRX0JUKQorI2RlZmluZSBWNEwyX0ZJRUxEX0hBU19CT1RUT00oZmllbGQpICgoZmllbGQpID09IFY0TDJfRklFTERfQk9UVE9NIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX0JUIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfVEIgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9CVCkKKyNkZWZpbmUgVjRMMl9GSUVMRF9IQVNfQk9USChmaWVsZCkgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX0JUIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfVEIgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9CVCkKKyNkZWZpbmUgVjRMMl9GSUVMRF9IQVNfVF9PUl9CKGZpZWxkKSAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0JPVFRPTSB8fCAoZmllbGQpID09IFY0TDJfRklFTERfVE9QIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9BTFRFUk5BVEUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2J1Zl90eXBlIHsKLSBWNEwyX0JVRl9UWVBFX1ZJREVPX0NBUFRVUkUgPSAxLAorICBWNEwyX0JVRl9UWVBFX1ZJREVPX0NBUFRVUkUgPSAxLAorICBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVCA9IDIsCisgIFY0TDJfQlVGX1RZUEVfVklERU9fT1ZFUkxBWSA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUID0gMiwKLSBWNEwyX0JVRl9UWVBFX1ZJREVPX09WRVJMQVkgPSAzLAotIFY0TDJfQlVGX1RZUEVfVkJJX0NBUFRVUkUgPSA0LAotIFY0TDJfQlVGX1RZUEVfVkJJX09VVFBVVCA9IDUsCisgIFY0TDJfQlVGX1RZUEVfVkJJX0NBUFRVUkUgPSA0LAorICBWNEwyX0JVRl9UWVBFX1ZCSV9PVVRQVVQgPSA1LAorICBWNEwyX0JVRl9UWVBFX1NMSUNFRF9WQklfQ0FQVFVSRSA9IDYsCisgIFY0TDJfQlVGX1RZUEVfU0xJQ0VEX1ZCSV9PVVRQVVQgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0JVRl9UWVBFX1NMSUNFRF9WQklfQ0FQVFVSRSA9IDYsCi0gVjRMMl9CVUZfVFlQRV9TTElDRURfVkJJX09VVFBVVCA9IDcsCi0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfT1ZFUkxBWSA9IDgsCi0gVjRMMl9CVUZfVFlQRV9WSURFT19DQVBUVVJFX01QTEFORSA9IDksCisgIFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUX09WRVJMQVkgPSA4LAorICBWNEwyX0JVRl9UWVBFX1ZJREVPX0NBUFRVUkVfTVBMQU5FID0gOSwKKyAgVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfTVBMQU5FID0gMTAsCisgIFY0TDJfQlVGX1RZUEVfU0RSX0NBUFRVUkUgPSAxMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfTVBMQU5FID0gMTAsCi0gVjRMMl9CVUZfVFlQRV9QUklWQVRFID0gMHg4MCwKKyAgVjRMMl9CVUZfVFlQRV9QUklWQVRFID0gMHg4MCwKIH07Ci0jZGVmaW5lIFY0TDJfVFlQRV9JU19NVUxUSVBMQU5BUih0eXBlKSAgICgodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19DQVBUVVJFX01QTEFORSAgIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9NUExBTkUpCisjZGVmaW5lIFY0TDJfVFlQRV9JU19NVUxUSVBMQU5BUih0eXBlKSAoKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fQ0FQVFVSRV9NUExBTkUgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUX01QTEFORSkKKyNkZWZpbmUgVjRMMl9UWVBFX0lTX09VVFBVVCh0eXBlKSAoKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9NUExBTkUgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1ZFUkxBWSB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfT1ZFUkxBWSB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WQklfT1VUUFVUIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1NMSUNFRF9WQklfT1VUUFVUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9UWVBFX0lTX09VVFBVVCh0eXBlKSAgICgodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVQgICB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfTVBMQU5FICAgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1ZFUkxBWSAgIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9PVkVSTEFZICAgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVkJJX09VVFBVVCAgIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1NMSUNFRF9WQklfT1VUUFVUKQogZW51bSB2NGwyX3R1bmVyX3R5cGUgewotIFY0TDJfVFVORVJfUkFESU8gPSAxLAotIFY0TDJfVFVORVJfQU5BTE9HX1RWID0gMiwKKyAgVjRMMl9UVU5FUl9SQURJTyA9IDEsCisgIFY0TDJfVFVORVJfQU5BTE9HX1RWID0gMiwKKyAgVjRMMl9UVU5FUl9ESUdJVEFMX1RWID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9UVU5FUl9ESUdJVEFMX1RWID0gMywKKyAgVjRMMl9UVU5FUl9BREMgPSA0LAorICBWNEwyX1RVTkVSX1JGID0gNSwKIH07CiBlbnVtIHY0bDJfbWVtb3J5IHsKLSBWNEwyX01FTU9SWV9NTUFQID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NRU1PUllfVVNFUlBUUiA9IDIsCi0gVjRMMl9NRU1PUllfT1ZFUkxBWSA9IDMsCi0gVjRMMl9NRU1PUllfRE1BQlVGID0gNCwKKyAgVjRMMl9NRU1PUllfTU1BUCA9IDEsCisgIFY0TDJfTUVNT1JZX1VTRVJQVFIgPSAyLAorICBWNEwyX01FTU9SWV9PVkVSTEFZID0gMywKKyAgVjRMMl9NRU1PUllfRE1BQlVGID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9jb2xvcnNwYWNlIHsKLSBWNEwyX0NPTE9SU1BBQ0VfU01QVEUxNzBNID0gMSwKLSBWNEwyX0NPTE9SU1BBQ0VfU01QVEUyNDBNID0gMiwKLSBWNEwyX0NPTE9SU1BBQ0VfUkVDNzA5ID0gMywKKyAgVjRMMl9DT0xPUlNQQUNFX1NNUFRFMTcwTSA9IDEsCisgIFY0TDJfQ09MT1JTUEFDRV9TTVBURTI0ME0gPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NPTE9SU1BBQ0VfQlQ4NzggPSA0LAotIFY0TDJfQ09MT1JTUEFDRV80NzBfU1lTVEVNX00gPSA1LAotIFY0TDJfQ09MT1JTUEFDRV80NzBfU1lTVEVNX0JHID0gNiwKLSBWNEwyX0NPTE9SU1BBQ0VfSlBFRyA9IDcsCisgIFY0TDJfQ09MT1JTUEFDRV9SRUM3MDkgPSAzLAorICBWNEwyX0NPTE9SU1BBQ0VfQlQ4NzggPSA0LAorICBWNEwyX0NPTE9SU1BBQ0VfNDcwX1NZU1RFTV9NID0gNSwKKyAgVjRMMl9DT0xPUlNQQUNFXzQ3MF9TWVNURU1fQkcgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NPTE9SU1BBQ0VfU1JHQiA9IDgsCisgIFY0TDJfQ09MT1JTUEFDRV9KUEVHID0gNywKKyAgVjRMMl9DT0xPUlNQQUNFX1NSR0IgPSA4LAogfTsKIGVudW0gdjRsMl9wcmlvcml0eSB7Ci0gVjRMMl9QUklPUklUWV9VTlNFVCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfUFJJT1JJVFlfQkFDS0dST1VORCA9IDEsCi0gVjRMMl9QUklPUklUWV9JTlRFUkFDVElWRSA9IDIsCi0gVjRMMl9QUklPUklUWV9SRUNPUkQgPSAzLAotIFY0TDJfUFJJT1JJVFlfREVGQVVMVCA9IFY0TDJfUFJJT1JJVFlfSU5URVJBQ1RJVkUsCisgIFY0TDJfUFJJT1JJVFlfVU5TRVQgPSAwLAorICBWNEwyX1BSSU9SSVRZX0JBQ0tHUk9VTkQgPSAxLAorICBWNEwyX1BSSU9SSVRZX0lOVEVSQUNUSVZFID0gMiwKKyAgVjRMMl9QUklPUklUWV9SRUNPUkQgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9QUklPUklUWV9ERUZBVUxUID0gVjRMMl9QUklPUklUWV9JTlRFUkFDVElWRSwKIH07CiBzdHJ1Y3QgdjRsMl9yZWN0IHsKLSBfX3MzMiBsZWZ0OwotIF9fczMyIHRvcDsKKyAgX19zMzIgbGVmdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OworICBfX3MzMiB0b3A7CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZyYWN0IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtZXJhdG9yOwotIF9fdTMyIGRlbm9taW5hdG9yOworICBfX3UzMiBudW1lcmF0b3I7CisgIF9fdTMyIGRlbm9taW5hdG9yOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9jYXBhYmlsaXR5IHsKKyAgX191OCBkcml2ZXJbMTZdOworICBfX3U4IGNhcmRbMzJdOworICBfX3U4IGJ1c19pbmZvWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkcml2ZXJbMTZdOwotIF9fdTggY2FyZFszMl07Ci0gX191OCBidXNfaW5mb1szMl07Ci0gX191MzIgdmVyc2lvbjsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgY2FwYWJpbGl0aWVzOworICBfX3UzMiBkZXZpY2VfY2FwczsKKyAgX191MzIgcmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNhcGFiaWxpdGllczsKLSBfX3UzMiBkZXZpY2VfY2FwczsKLSBfX3UzMiByZXNlcnZlZFszXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NBUF9WSURFT19DQVBUVVJFIDB4MDAwMDAwMDEKICNkZWZpbmUgVjRMMl9DQVBfVklERU9fT1VUUFVUIDB4MDAwMDAwMDIKICNkZWZpbmUgVjRMMl9DQVBfVklERU9fT1ZFUkxBWSAweDAwMDAwMDA0Ci0jZGVmaW5lIFY0TDJfQ0FQX1ZCSV9DQVBUVVJFIDB4MDAwMDAwMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0FQX1ZCSV9DQVBUVVJFIDB4MDAwMDAwMTAKICNkZWZpbmUgVjRMMl9DQVBfVkJJX09VVFBVVCAweDAwMDAwMDIwCiAjZGVmaW5lIFY0TDJfQ0FQX1NMSUNFRF9WQklfQ0FQVFVSRSAweDAwMDAwMDQwCiAjZGVmaW5lIFY0TDJfQ0FQX1NMSUNFRF9WQklfT1VUUFVUIDB4MDAwMDAwODAKLSNkZWZpbmUgVjRMMl9DQVBfUkRTX0NBUFRVUkUgMHgwMDAwMDEwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DQVBfUkRTX0NBUFRVUkUgMHgwMDAwMDEwMAogI2RlZmluZSBWNEwyX0NBUF9WSURFT19PVVRQVVRfT1ZFUkxBWSAweDAwMDAwMjAwCiAjZGVmaW5lIFY0TDJfQ0FQX0hXX0ZSRVFfU0VFSyAweDAwMDAwNDAwCiAjZGVmaW5lIFY0TDJfQ0FQX1JEU19PVVRQVVQgMHgwMDAwMDgwMAotI2RlZmluZSBWNEwyX0NBUF9WSURFT19DQVBUVVJFX01QTEFORSAweDAwMDAxMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NBUF9WSURFT19DQVBUVVJFX01QTEFORSAweDAwMDAxMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX09VVFBVVF9NUExBTkUgMHgwMDAwMjAwMAogI2RlZmluZSBWNEwyX0NBUF9WSURFT19NMk1fTVBMQU5FIDB4MDAwMDQwMDAKICNkZWZpbmUgVjRMMl9DQVBfVklERU9fTTJNIDB4MDAwMDgwMDAKLSNkZWZpbmUgVjRMMl9DQVBfVFVORVIgMHgwMDAxMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DQVBfVFVORVIgMHgwMDAxMDAwMAogI2RlZmluZSBWNEwyX0NBUF9BVURJTyAweDAwMDIwMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX1JBRElPIDB4MDAwNDAwMDAKICNkZWZpbmUgVjRMMl9DQVBfTU9EVUxBVE9SIDB4MDAwODAwMDAKLSNkZWZpbmUgVjRMMl9DQVBfUkVBRFdSSVRFIDB4MDEwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0FQX1NEUl9DQVBUVVJFIDB4MDAxMDAwMDAKKyNkZWZpbmUgVjRMMl9DQVBfRVhUX1BJWF9GT1JNQVQgMHgwMDIwMDAwMAorI2RlZmluZSBWNEwyX0NBUF9SRUFEV1JJVEUgMHgwMTAwMDAwMAogI2RlZmluZSBWNEwyX0NBUF9BU1lOQ0lPIDB4MDIwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0FQX1NUUkVBTUlORyAweDA0MDAwMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX0RFVklDRV9DQVBTIDB4ODAwMDAwMDAKIHN0cnVjdCB2NGwyX3BpeF9mb3JtYXQgeworICBfX3UzMiB3aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OwotIF9fdTMyIHBpeGVsZm9ybWF0OwotIF9fdTMyIGZpZWxkOworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHBpeGVsZm9ybWF0OworICBfX3UzMiBmaWVsZDsKKyAgX191MzIgYnl0ZXNwZXJsaW5lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBieXRlc3BlcmxpbmU7Ci0gX191MzIgc2l6ZWltYWdlOwotIF9fdTMyIGNvbG9yc3BhY2U7Ci0gX191MzIgcHJpdjsKKyAgX191MzIgc2l6ZWltYWdlOworICBfX3UzMiBjb2xvcnNwYWNlOworICBfX3UzMiBwcml2OworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCMzMyIHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnQicsICcxJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1JHQjQ0NCB2NGwyX2ZvdXJjYygnUicsICc0JywgJzQnLCAnNCcpCisjZGVmaW5lIFY0TDJfUElYX0ZNVF9BUkdCNDQ0IHY0bDJfZm91cmNjKCdBJywgJ1InLCAnMScsICcyJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfUElYX0ZNVF9YUkdCNDQ0IHY0bDJfZm91cmNjKCdYJywgJ1InLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1JHQjU1NSB2NGwyX2ZvdXJjYygnUicsICdHJywgJ0InLCAnTycpCisjZGVmaW5lIFY0TDJfUElYX0ZNVF9BUkdCNTU1IHY0bDJfZm91cmNjKCdBJywgJ1InLCAnMScsICc1JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1hSR0I1NTUgdjRsMl9mb3VyY2MoJ1gnLCAnUicsICcxJywgJzUnKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1JHQjU2NSB2NGwyX2ZvdXJjYygnUicsICdHJywgJ0InLCAnUCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9SR0I1NTVYIHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnQicsICdRJykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0FSR0I1NTVYIHY0bDJfZm91cmNjX2JlKCdBJywgJ1InLCAnMScsICc1JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1hSR0I1NTVYIHY0bDJfZm91cmNjX2JlKCdYJywgJ1InLCAnMScsICc1JykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9SR0I1NjVYIHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnQicsICdSJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX0JHUjY2NiB2NGwyX2ZvdXJjYygnQicsICdHJywgJ1InLCAnSCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfQkdSMjQgdjRsMl9mb3VyY2MoJ0InLCAnRycsICdSJywgJzMnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCMjQgdjRsMl9mb3VyY2MoJ1InLCAnRycsICdCJywgJzMnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX0JHUjMyIHY0bDJfZm91cmNjKCdCJywgJ0cnLCAnUicsICc0JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0FCR1IzMiB2NGwyX2ZvdXJjYygnQScsICdSJywgJzInLCAnNCcpCisjZGVmaW5lIFY0TDJfUElYX0ZNVF9YQkdSMzIgdjRsMl9mb3VyY2MoJ1gnLCAnUicsICcyJywgJzQnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCMzIgdjRsMl9mb3VyY2MoJ1InLCAnRycsICdCJywgJzQnKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0FSR0IzMiB2NGwyX2ZvdXJjYygnQicsICdBJywgJzInLCAnNCcpCisjZGVmaW5lIFY0TDJfUElYX0ZNVF9YUkdCMzIgdjRsMl9mb3VyY2MoJ0InLCAnWCcsICcyJywgJzQnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfR1JFWSB2NGwyX2ZvdXJjYygnRycsICdSJywgJ0UnLCAnWScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZNCB2NGwyX2ZvdXJjYygnWScsICcwJywgJzQnLCAnICcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWTYgdjRsMl9mb3VyY2MoJ1knLCAnMCcsICc2JywgJyAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWTEwIHY0bDJfZm91cmNjKCdZJywgJzEnLCAnMCcsICcgJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZMTIgdjRsMl9mb3VyY2MoJ1knLCAnMScsICcyJywgJyAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWTE2IHY0bDJfZm91cmNjKCdZJywgJzEnLCAnNicsICcgJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZMTBCUEFDSyB2NGwyX2ZvdXJjYygnWScsICcxJywgJzAnLCAnQicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9QQUw4IHY0bDJfZm91cmNjKCdQJywgJ0EnLCAnTCcsICc4JykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9VVjggdjRsMl9mb3VyY2MoJ1UnLCAnVicsICc4JywgJyAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVZVNDEwIHY0bDJfZm91cmNjKCdZJywgJ1YnLCAnVScsICc5JykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVlU0MjAgdjRsMl9mb3VyY2MoJ1knLCAnVicsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVZViB2NGwyX2ZvdXJjYygnWScsICdVJywgJ1knLCAnVicpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVlVViB2NGwyX2ZvdXJjYygnWScsICdZJywgJ1UnLCAnVicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVllVIHY0bDJfZm91cmNjKCdZJywgJ1YnLCAnWScsICdVJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9VWVZZIHY0bDJfZm91cmNjKCdVJywgJ1knLCAnVicsICdZJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1ZZVVkgdjRsMl9mb3VyY2MoJ1YnLCAnWScsICdVJywgJ1knKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjQyMlAgdjRsMl9mb3VyY2MoJzQnLCAnMicsICcyJywgJ1AnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNDExUCB2NGwyX2ZvdXJjYygnNCcsICcxJywgJzEnLCAnUCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWTQxUCB2NGwyX2ZvdXJjYygnWScsICc0JywgJzEnLCAnUCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVY0NDQgdjRsMl9mb3VyY2MoJ1knLCAnNCcsICc0JywgJzQnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjU1NSB2NGwyX2ZvdXJjYygnWScsICdVJywgJ1YnLCAnTycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVY1NjUgdjRsMl9mb3VyY2MoJ1knLCAnVScsICdWJywgJ1AnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjMyIHY0bDJfZm91cmNjKCdZJywgJ1UnLCAnVicsICc0JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjQxMCB2NGwyX2ZvdXJjYygnWScsICdVJywgJ1YnLCAnOScpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNDIwIHY0bDJfZm91cmNjKCdZJywgJ1UnLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX0hJMjQwIHY0bDJfZm91cmNjKCdIJywgJ0knLCAnMicsICc0JykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ITTEyIHY0bDJfZm91cmNjKCdIJywgJ00nLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX000MjAgdjRsMl9mb3VyY2MoJ00nLCAnNCcsICcyJywgJzAnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMTIgdjRsMl9mb3VyY2MoJ04nLCAnVicsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYyMSB2NGwyX2ZvdXJjYygnTicsICdWJywgJzInLCAnMScpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYxNiB2NGwyX2ZvdXJjYygnTicsICdWJywgJzEnLCAnNicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjYxIHY0bDJfZm91cmNjKCdOJywgJ1YnLCAnNicsICcxJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjI0IHY0bDJfZm91cmNjKCdOJywgJ1YnLCAnMicsICc0JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WNDIgdjRsMl9mb3VyY2MoJ04nLCAnVicsICc0JywgJzInKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMTJNIHY0bDJfZm91cmNjKCdOJywgJ00nLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMjFNIHY0bDJfZm91cmNjKCdOJywgJ00nLCAnMicsICcxJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjE2TSB2NGwyX2ZvdXJjYygnTicsICdNJywgJzEnLCAnNicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjYxTSB2NGwyX2ZvdXJjYygnTicsICdNJywgJzYnLCAnMScpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYxMk1UIHY0bDJfZm91cmNjKCdUJywgJ00nLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMTJNVF8xNlgxNiB2NGwyX2ZvdXJjYygnVicsICdNJywgJzEnLCAnMicpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNDIwTSB2NGwyX2ZvdXJjYygnWScsICdNJywgJzEnLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVlU0MjBNIHY0bDJfZm91cmNjKCdZJywgJ00nLCAnMicsICcxJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TQkdHUjggdjRsMl9mb3VyY2MoJ0InLCAnQScsICc4JywgJzEnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0dCUkc4IHY0bDJfZm91cmNjKCdHJywgJ0InLCAnUicsICdHJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR1JCRzggdjRsMl9mb3VyY2MoJ0cnLCAnUicsICdCJywgJ0cnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1JHR0I4IHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnRycsICdCJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TQkdHUjEwIHY0bDJfZm91cmNjKCdCJywgJ0cnLCAnMScsICcwJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHQlJHMTAgdjRsMl9mb3VyY2MoJ0cnLCAnQicsICcxJywgJzAnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHUkJHMTAgdjRsMl9mb3VyY2MoJ0InLCAnQScsICcxJywgJzAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1JHR0IxMCB2NGwyX2ZvdXJjYygnUicsICdHJywgJzEnLCAnMCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0JHR1IxMiB2NGwyX2ZvdXJjYygnQicsICdHJywgJzEnLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR0JSRzEyIHY0bDJfZm91cmNjKCdHJywgJ0InLCAnMScsICcyJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR1JCRzEyIHY0bDJfZm91cmNjKCdCJywgJ0EnLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NSR0dCMTIgdjRsMl9mb3VyY2MoJ1InLCAnRycsICcxJywgJzInKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NCR0dSMTBBTEFXOCB2NGwyX2ZvdXJjYygnYScsICdCJywgJ0EnLCAnOCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR0JSRzEwQUxBVzggdjRsMl9mb3VyY2MoJ2EnLCAnRycsICdBJywgJzgnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHUkJHMTBBTEFXOCB2NGwyX2ZvdXJjYygnYScsICdnJywgJ0EnLCAnOCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUkdHQjEwQUxBVzggdjRsMl9mb3VyY2MoJ2EnLCAnUicsICdBJywgJzgnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NCR0dSMTBEUENNOCB2NGwyX2ZvdXJjYygnYicsICdCJywgJ0EnLCAnOCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR0JSRzEwRFBDTTggdjRsMl9mb3VyY2MoJ2InLCAnRycsICdBJywgJzgnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHUkJHMTBEUENNOCB2NGwyX2ZvdXJjYygnQicsICdEJywgJzEnLCAnMCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUkdHQjEwRFBDTTggdjRsMl9mb3VyY2MoJ2InLCAnUicsICdBJywgJzgnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NCR0dSMTYgdjRsMl9mb3VyY2MoJ0InLCAnWScsICdSJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTUpQRUcgdjRsMl9mb3VyY2MoJ00nLCAnSicsICdQJywgJ0cnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX0pQRUcgdjRsMl9mb3VyY2MoJ0onLCAnUCcsICdFJywgJ0cnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfRFYgdjRsMl9mb3VyY2MoJ2QnLCAndicsICdzJywgJ2QnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX01QRUcgdjRsMl9mb3VyY2MoJ00nLCAnUCcsICdFJywgJ0cnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfSDI2NCB2NGwyX2ZvdXJjYygnSCcsICcyJywgJzYnLCAnNCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfSDI2NF9OT19TQyB2NGwyX2ZvdXJjYygnQScsICdWJywgJ0MnLCAnMScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9IMjY0X01WQyB2NGwyX2ZvdXJjYygnTScsICcyJywgJzYnLCAnNCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfSDI2MyB2NGwyX2ZvdXJjYygnSCcsICcyJywgJzYnLCAnMycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9NUEVHMSB2NGwyX2ZvdXJjYygnTScsICdQJywgJ0cnLCAnMScpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTVBFRzIgdjRsMl9mb3VyY2MoJ00nLCAnUCcsICdHJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTVBFRzQgdjRsMl9mb3VyY2MoJ00nLCAnUCcsICdHJywgJzQnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1hWSUQgdjRsMl9mb3VyY2MoJ1gnLCAnVicsICdJJywgJ0QnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfVkMxX0FOTkVYX0cgdjRsMl9mb3VyY2MoJ1YnLCAnQycsICcxJywgJ0cnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1ZDMV9BTk5FWF9MIHY0bDJfZm91cmNjKCdWJywgJ0MnLCAnMScsICdMJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1ZQOCB2NGwyX2ZvdXJjYygnVicsICdQJywgJzgnLCAnMCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfQ1BJQTEgdjRsMl9mb3VyY2MoJ0MnLCAnUCcsICdJJywgJ0EnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfV05WQSB2NGwyX2ZvdXJjYygnVycsICdOJywgJ1YnLCAnQScpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU045QzEwWCB2NGwyX2ZvdXJjYygnUycsICc5JywgJzEnLCAnMCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TTjlDMjBYX0k0MjAgdjRsMl9mb3VyY2MoJ1MnLCAnOScsICcyJywgJzAnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1BXQzEgdjRsMl9mb3VyY2MoJ1AnLCAnVycsICdDJywgJzEnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUFdDMiB2NGwyX2ZvdXJjYygnUCcsICdXJywgJ0MnLCAnMicpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfRVQ2MVgyNTEgdjRsMl9mb3VyY2MoJ0UnLCAnNicsICcyJywgJzUnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1BDQTUwMSB2NGwyX2ZvdXJjYygnUycsICc1JywgJzAnLCAnMScpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1BDQTUwNSB2NGwyX2ZvdXJjYygnUycsICc1JywgJzAnLCAnNScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUENBNTA4IHY0bDJfZm91cmNjKCdTJywgJzUnLCAnMCcsICc4JykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUENBNTYxIHY0bDJfZm91cmNjKCdTJywgJzUnLCAnNicsICcxJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1BBQzIwNyB2NGwyX2ZvdXJjYygnUCcsICcyJywgJzAnLCAnNycpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTVI5NzMxMEEgdjRsMl9mb3VyY2MoJ00nLCAnMycsICcxJywgJzAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfSkwyMDA1QkNEIHY0bDJfZm91cmNjKCdKJywgJ0wnLCAnMicsICcwJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TTjlDMjAyOCB2NGwyX2ZvdXJjYygnUycsICdPJywgJ04nLCAnWCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUTkwNUMgdjRsMl9mb3VyY2MoJzknLCAnMCcsICc1JywgJ0MnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1BKUEcgdjRsMl9mb3VyY2MoJ1AnLCAnSicsICdQJywgJ0cnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfT1Y1MTEgdjRsMl9mb3VyY2MoJ08nLCAnNScsICcxJywgJzEnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX09WNTE4IHY0bDJfZm91cmNjKCdPJywgJzUnLCAnMScsICc4JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NUVjA2ODAgdjRsMl9mb3VyY2MoJ1MnLCAnNicsICc4JywgJzAnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1RNNjAwMCB2NGwyX2ZvdXJjYygnVCcsICdNJywgJzYnLCAnMCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9DSVRfWVlWWVVZIHY0bDJfZm91cmNjKCdDJywgJ0knLCAnVCcsICdWJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9LT05JQ0E0MjAgdjRsMl9mb3VyY2MoJ0snLCAnTycsICdOJywgJ0knKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfSlBHTCB2NGwyX2ZvdXJjYygnSicsICdQJywgJ0cnLCAnTCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0U0MDEgdjRsMl9mb3VyY2MoJ1MnLCAnNCcsICcwJywgJzEnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUzVDX1VZVllfSlBHIHY0bDJfZm91cmNjKCdTJywgJzUnLCAnQycsICdJJykKKyNkZWZpbmUgVjRMMl9TRFJfRk1UX0NVOCB2NGwyX2ZvdXJjYygnQycsICdVJywgJzAnLCAnOCcpCisjZGVmaW5lIFY0TDJfU0RSX0ZNVF9DVTE2TEUgdjRsMl9mb3VyY2MoJ0MnLCAnVScsICcxJywgJzYnKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9TRFJfRk1UX0NTOCB2NGwyX2ZvdXJjYygnQycsICdTJywgJzAnLCAnOCcpCisjZGVmaW5lIFY0TDJfU0RSX0ZNVF9DUzE0TEUgdjRsMl9mb3VyY2MoJ0MnLCAnUycsICcxJywgJzQnKQorI2RlZmluZSBWNEwyX1NEUl9GTVRfUlUxMkxFIHY0bDJfZm91cmNjKCdSJywgJ1UnLCAnMScsICcyJykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1BSSVZfTUFHSUMgMHhmZWVkY2FmZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0ZMQUdfUFJFTVVMX0FMUEhBIDB4MDAwMDAwMDEKIHN0cnVjdCB2NGwyX2ZtdGRlc2MgewotIF9fdTMyIGluZGV4OwotIF9fdTMyIHR5cGU7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRlc2NyaXB0aW9uWzMyXTsKLSBfX3UzMiBwaXhlbGZvcm1hdDsKLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTggZGVzY3JpcHRpb25bMzJdOworICBfX3UzMiBwaXhlbGZvcm1hdDsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRk1UX0ZMQUdfQ09NUFJFU1NFRCAweDAwMDEKICNkZWZpbmUgVjRMMl9GTVRfRkxBR19FTVVMQVRFRCAweDAwMDIKIGVudW0gdjRsMl9mcm1zaXpldHlwZXMgewotIFY0TDJfRlJNU0laRV9UWVBFX0RJU0NSRVRFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GUk1TSVpFX1RZUEVfQ09OVElOVU9VUyA9IDIsCi0gVjRMMl9GUk1TSVpFX1RZUEVfU1RFUFdJU0UgPSAzLAorICBWNEwyX0ZSTVNJWkVfVFlQRV9ESVNDUkVURSA9IDEsCisgIFY0TDJfRlJNU0laRV9UWVBFX0NPTlRJTlVPVVMgPSAyLAorICBWNEwyX0ZSTVNJWkVfVFlQRV9TVEVQV0lTRSA9IDMsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZybXNpemVfZGlzY3JldGUgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZybXNpemVfc3RlcHdpc2UgeworICBfX3UzMiBtaW5fd2lkdGg7CisgIF9fdTMyIG1heF93aWR0aDsKKyAgX191MzIgc3RlcF93aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWluX3dpZHRoOwotIF9fdTMyIG1heF93aWR0aDsKLSBfX3UzMiBzdGVwX3dpZHRoOwotIF9fdTMyIG1pbl9oZWlnaHQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9oZWlnaHQ7Ci0gX191MzIgc3RlcF9oZWlnaHQ7CisgIF9fdTMyIG1pbl9oZWlnaHQ7CisgIF9fdTMyIG1heF9oZWlnaHQ7CisgIF9fdTMyIHN0ZXBfaGVpZ2h0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9mcm1zaXplZW51bSB7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBwaXhlbF9mb3JtYXQ7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIHBpeGVsX2Zvcm1hdDsKLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKKyAgdW5pb24geworICAgIHN0cnVjdCB2NGwyX2ZybXNpemVfZGlzY3JldGUgZGlzY3JldGU7CisgICAgc3RydWN0IHY0bDJfZnJtc2l6ZV9zdGVwd2lzZSBzdGVwd2lzZTsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHY0bDJfZnJtc2l6ZV9kaXNjcmV0ZSBkaXNjcmV0ZTsKLSBzdHJ1Y3QgdjRsMl9mcm1zaXplX3N0ZXB3aXNlIHN0ZXB3aXNlOwotIH07Ci0gX191MzIgcmVzZXJ2ZWRbMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZFsyXTsKIH07CiBlbnVtIHY0bDJfZnJtaXZhbHR5cGVzIHsKLSBWNEwyX0ZSTUlWQUxfVFlQRV9ESVNDUkVURSA9IDEsCi0gVjRMMl9GUk1JVkFMX1RZUEVfQ09OVElOVU9VUyA9IDIsCisgIFY0TDJfRlJNSVZBTF9UWVBFX0RJU0NSRVRFID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GUk1JVkFMX1RZUEVfU1RFUFdJU0UgPSAzLAorICBWNEwyX0ZSTUlWQUxfVFlQRV9DT05USU5VT1VTID0gMiwKKyAgVjRMMl9GUk1JVkFMX1RZUEVfU1RFUFdJU0UgPSAzLAogfTsKIHN0cnVjdCB2NGwyX2ZybWl2YWxfc3RlcHdpc2UgewotIHN0cnVjdCB2NGwyX2ZyYWN0IG1pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHY0bDJfZnJhY3QgbWF4OwotIHN0cnVjdCB2NGwyX2ZyYWN0IHN0ZXA7CisgIHN0cnVjdCB2NGwyX2ZyYWN0IG1pbjsKKyAgc3RydWN0IHY0bDJfZnJhY3QgbWF4OworICBzdHJ1Y3QgdjRsMl9mcmFjdCBzdGVwOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9mcm1pdmFsZW51bSB7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBwaXhlbF9mb3JtYXQ7CisgIF9fdTMyIHdpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBwaXhlbF9mb3JtYXQ7Ci0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9mcmFjdCBkaXNjcmV0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSB1bmlvbiB7Ci0gc3RydWN0IHY0bDJfZnJhY3QgZGlzY3JldGU7Ci0gc3RydWN0IHY0bDJfZnJtaXZhbF9zdGVwd2lzZSBzdGVwd2lzZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgICBzdHJ1Y3QgdjRsMl9mcm1pdmFsX3N0ZXB3aXNlIHN0ZXB3aXNlOworICB9OworICBfX3UzMiByZXNlcnZlZFsyXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfdGltZWNvZGUgeworICBfX3UzMiB0eXBlOworICBfX3UzMiBmbGFnczsKKyAgX191OCBmcmFtZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgZmxhZ3M7Ci0gX191OCBmcmFtZXM7Ci0gX191OCBzZWNvbmRzOworICBfX3U4IHNlY29uZHM7CisgIF9fdTggbWludXRlczsKKyAgX191OCBob3VyczsKKyAgX191OCB1c2VyYml0c1s0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtaW51dGVzOwotIF9fdTggaG91cnM7Ci0gX191OCB1c2VyYml0c1s0XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RDX1RZUEVfMjRGUFMgMQogI2RlZmluZSBWNEwyX1RDX1RZUEVfMjVGUFMgMgogI2RlZmluZSBWNEwyX1RDX1RZUEVfMzBGUFMgMwotI2RlZmluZSBWNEwyX1RDX1RZUEVfNTBGUFMgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9UQ19UWVBFXzUwRlBTIDQKICNkZWZpbmUgVjRMMl9UQ19UWVBFXzYwRlBTIDUKICNkZWZpbmUgVjRMMl9UQ19GTEFHX0RST1BGUkFNRSAweDAwMDEKICNkZWZpbmUgVjRMMl9UQ19GTEFHX0NPTE9SRlJBTUUgMHgwMDAyCi0jZGVmaW5lIFY0TDJfVENfVVNFUkJJVFNfZmllbGQgMHgwMDBDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1RDX1VTRVJCSVRTX2ZpZWxkIDB4MDAwQwogI2RlZmluZSBWNEwyX1RDX1VTRVJCSVRTX1VTRVJERUZJTkVEIDB4MDAwMAogI2RlZmluZSBWNEwyX1RDX1VTRVJCSVRTXzhCSVRDSEFSUyAweDAwMDgKIHN0cnVjdCB2NGwyX2pwZWdjb21wcmVzc2lvbiB7Ci0gaW50IHF1YWxpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBBUFBuOwotIGludCBBUFBfbGVuOwotIGNoYXIgQVBQX2RhdGFbNjBdOwotIGludCBDT01fbGVuOworICBpbnQgcXVhbGl0eTsKKyAgaW50IEFQUG47CisgIGludCBBUFBfbGVuOworICBjaGFyIEFQUF9kYXRhWzYwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBDT01fZGF0YVs2MF07Ci0gX191MzIganBlZ19tYXJrZXJzOwotI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RIVCAoMTw8MykKLSNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9EUVQgKDE8PDQpCisgIGludCBDT01fbGVuOworICBjaGFyIENPTV9kYXRhWzYwXTsKKyAgX191MzIganBlZ19tYXJrZXJzOworI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RIVCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9EUkkgKDE8PDUpCi0jZGVmaW5lIFY0TDJfSlBFR19NQVJLRVJfQ09NICgxPDw2KQotI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0FQUCAoMTw8NykKKyNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9EUVQgKDEgPDwgNCkKKyNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9EUkkgKDEgPDwgNSkKKyNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9DT00gKDEgPDwgNikKKyNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9BUFAgKDEgPDwgNykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX3JlcXVlc3RidWZmZXJzIHsKLSBfX3UzMiBjb3VudDsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIG1lbW9yeTsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3UzMiBtZW1vcnk7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKIHN0cnVjdCB2NGwyX3BsYW5lIHsKLSBfX3UzMiBieXRlc3VzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbmd0aDsKLSB1bmlvbiB7Ci0gX191MzIgbWVtX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIHVzZXJwdHI7CisgIF9fdTMyIGJ5dGVzdXNlZDsKKyAgX191MzIgbGVuZ3RoOworICB1bmlvbiB7CisgICAgX191MzIgbWVtX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgZmQ7Ci0gfSBtOwotIF9fdTMyIGRhdGFfb2Zmc2V0OwotIF9fdTMyIHJlc2VydmVkWzExXTsKKyAgICB1bnNpZ25lZCBsb25nIHVzZXJwdHI7CisgICAgX19zMzIgZmQ7CisgIH0gbTsKKyAgX191MzIgZGF0YV9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZFsxMV07CiB9Owogc3RydWN0IHY0bDJfYnVmZmVyIHsKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiB0eXBlOworICBfX3UzMiBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnl0ZXN1c2VkOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGZpZWxkOwotIHN0cnVjdCB0aW1ldmFsIHRpbWVzdGFtcDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgYnl0ZXN1c2VkOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgZmllbGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX3RpbWVjb2RlIHRpbWVjb2RlOwotIF9fdTMyIHNlcXVlbmNlOwotIF9fdTMyIG1lbW9yeTsKLSB1bmlvbiB7CisgIHN0cnVjdCB0aW1ldmFsIHRpbWVzdGFtcDsKKyAgc3RydWN0IHY0bDJfdGltZWNvZGUgdGltZWNvZGU7CisgIF9fdTMyIHNlcXVlbmNlOworICBfX3UzMiBtZW1vcnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mZnNldDsKLSB1bnNpZ25lZCBsb25nIHVzZXJwdHI7Ci0gc3RydWN0IHY0bDJfcGxhbmUgKnBsYW5lczsKLSBfX3MzMiBmZDsKKyAgdW5pb24geworICAgIF9fdTMyIG9mZnNldDsKKyAgICB1bnNpZ25lZCBsb25nIHVzZXJwdHI7CisgICAgc3RydWN0IHY0bDJfcGxhbmUgKiBwbGFuZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgcmVzZXJ2ZWQyOwotIF9fdTMyIHJlc2VydmVkOworICAgIF9fczMyIGZkOworICB9IG07CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgcmVzZXJ2ZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OwotI2RlZmluZSBWNEwyX0JVRl9GTEFHX01BUFBFRCAweDAwMDEKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19RVUVVRUQgMHgwMDAyCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfRE9ORSAweDAwMDQKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19NQVBQRUQgMHgwMDAwMDAwMQorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1FVRVVFRCAweDAwMDAwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0JVRl9GTEFHX0tFWUZSQU1FIDB4MDAwOAotI2RlZmluZSBWNEwyX0JVRl9GTEFHX1BGUkFNRSAweDAwMTAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19CRlJBTUUgMHgwMDIwCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfRVJST1IgMHgwMDQwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfRE9ORSAweDAwMDAwMDA0CisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfS0VZRlJBTUUgMHgwMDAwMDAwOAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1BGUkFNRSAweDAwMDAwMDEwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfQkZSQU1FIDB4MDAwMDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRUNPREUgMHgwMTAwCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfUFJFUEFSRUQgMHgwNDAwCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfTk9fQ0FDSEVfSU5WQUxJREFURSAweDA4MDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19OT19DQUNIRV9DTEVBTiAweDEwMDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19FUlJPUiAweDAwMDAwMDQwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRUNPREUgMHgwMDAwMDEwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1BSRVBBUkVEIDB4MDAwMDA0MDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19OT19DQUNIRV9JTlZBTElEQVRFIDB4MDAwMDA4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX01BU0sgMHhlMDAwCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX1VOS05PV04gMHgwMDAwCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX01PTk9UT05JQyAweDIwMDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfQ09QWSAweDQwMDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19OT19DQUNIRV9DTEVBTiAweDAwMDAxMDAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX01BU0sgMHgwMDAwZTAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RJTUVTVEFNUF9VTktOT1dOIDB4MDAwMDAwMDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfTU9OT1RPTklDIDB4MDAwMDIwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX0NPUFkgMHgwMDAwNDAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RTVEFNUF9TUkNfTUFTSyAweDAwMDcwMDAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVFNUQU1QX1NSQ19FT0YgMHgwMDAwMDAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RTVEFNUF9TUkNfU09FIDB4MDAwMTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9leHBvcnRidWZmZXIgewotIF9fdTMyIHR5cGU7Ci0gX191MzIgaW5kZXg7Ci0gX191MzIgcGxhbmU7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBwbGFuZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX19zMzIgZmQ7Ci0gX191MzIgcmVzZXJ2ZWRbMTFdOworICBfX3UzMiBmbGFnczsKKyAgX19zMzIgZmQ7CisgIF9fdTMyIHJlc2VydmVkWzExXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZnJhbWVidWZmZXIgewotIF9fdTMyIGNhcGFiaWxpdHk7Ci0gX191MzIgZmxhZ3M7Ci0gdm9pZCAqYmFzZTsKKyAgX191MzIgY2FwYWJpbGl0eTsKKyAgX191MzIgZmxhZ3M7CisgIHZvaWQgKiBiYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0IGZtdDsKKyAgc3RydWN0IHsKKyAgICBfX3UzMiB3aWR0aDsKKyAgICBfX3UzMiBoZWlnaHQ7CisgICAgX191MzIgcGl4ZWxmb3JtYXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTMyIGZpZWxkOworICAgIF9fdTMyIGJ5dGVzcGVybGluZTsKKyAgICBfX3UzMiBzaXplaW1hZ2U7CisgICAgX191MzIgY29sb3JzcGFjZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MzIgcHJpdjsKKyAgfSBmbXQ7CiB9OwogI2RlZmluZSBWNEwyX0ZCVUZfQ0FQX0VYVEVSTk9WRVJMQVkgMHgwMDAxCi0jZGVmaW5lIFY0TDJfRkJVRl9DQVBfQ0hST01BS0VZIDB4MDAwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9GQlVGX0NBUF9DSFJPTUFLRVkgMHgwMDAyCiAjZGVmaW5lIFY0TDJfRkJVRl9DQVBfTElTVF9DTElQUElORyAweDAwMDQKICNkZWZpbmUgVjRMMl9GQlVGX0NBUF9CSVRNQVBfQ0xJUFBJTkcgMHgwMDA4CiAjZGVmaW5lIFY0TDJfRkJVRl9DQVBfTE9DQUxfQUxQSEEgMHgwMDEwCi0jZGVmaW5lIFY0TDJfRkJVRl9DQVBfR0xPQkFMX0FMUEhBIDB4MDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9GQlVGX0NBUF9HTE9CQUxfQUxQSEEgMHgwMDIwCiAjZGVmaW5lIFY0TDJfRkJVRl9DQVBfTE9DQUxfSU5WX0FMUEhBIDB4MDA0MAogI2RlZmluZSBWNEwyX0ZCVUZfQ0FQX1NSQ19DSFJPTUFLRVkgMHgwMDgwCiAjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX1BSSU1BUlkgMHgwMDAxCi0jZGVmaW5lIFY0TDJfRkJVRl9GTEFHX09WRVJMQVkgMHgwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0ZCVUZfRkxBR19PVkVSTEFZIDB4MDAwMgogI2RlZmluZSBWNEwyX0ZCVUZfRkxBR19DSFJPTUFLRVkgMHgwMDA0CiAjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX0xPQ0FMX0FMUEhBIDB4MDAwOAogI2RlZmluZSBWNEwyX0ZCVUZfRkxBR19HTE9CQUxfQUxQSEEgMHgwMDEwCi0jZGVmaW5lIFY0TDJfRkJVRl9GTEFHX0xPQ0FMX0lOVl9BTFBIQSAweDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX0xPQ0FMX0lOVl9BTFBIQSAweDAwMjAKICNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfU1JDX0NIUk9NQUtFWSAweDAwNDAKIHN0cnVjdCB2NGwyX2NsaXAgewotIHN0cnVjdCB2NGwyX3JlY3QgYzsKLSBzdHJ1Y3QgdjRsMl9jbGlwIF9fdXNlciAqbmV4dDsKKyAgc3RydWN0IHY0bDJfcmVjdCBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHY0bDJfY2xpcCBfX3VzZXIgKiBuZXh0OwogfTsKIHN0cnVjdCB2NGwyX3dpbmRvdyB7Ci0gc3RydWN0IHY0bDJfcmVjdCB3OwotIF9fdTMyIGZpZWxkOworICBzdHJ1Y3QgdjRsMl9yZWN0IHc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNocm9tYWtleTsKLSBzdHJ1Y3QgdjRsMl9jbGlwIF9fdXNlciAqY2xpcHM7Ci0gX191MzIgY2xpcGNvdW50OwotIHZvaWQgX191c2VyICpiaXRtYXA7CisgIF9fdTMyIGZpZWxkOworICBfX3UzMiBjaHJvbWFrZXk7CisgIHN0cnVjdCB2NGwyX2NsaXAgX191c2VyICogY2xpcHM7CisgIF9fdTMyIGNsaXBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBnbG9iYWxfYWxwaGE7CisgIHZvaWQgX191c2VyICogYml0bWFwOworICBfX3U4IGdsb2JhbF9hbHBoYTsKIH07CiBzdHJ1Y3QgdjRsMl9jYXB0dXJlcGFybSB7Ci0gX191MzIgY2FwYWJpbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FwdHVyZW1vZGU7Ci0gc3RydWN0IHY0bDJfZnJhY3QgdGltZXBlcmZyYW1lOwotIF9fdTMyIGV4dGVuZGVkbW9kZTsKLSBfX3UzMiByZWFkYnVmZmVyczsKKyAgX191MzIgY2FwYWJpbGl0eTsKKyAgX191MzIgY2FwdHVyZW1vZGU7CisgIHN0cnVjdCB2NGwyX2ZyYWN0IHRpbWVwZXJmcmFtZTsKKyAgX191MzIgZXh0ZW5kZWRtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgX191MzIgcmVhZGJ1ZmZlcnM7CisgIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKICNkZWZpbmUgVjRMMl9NT0RFX0hJR0hRVUFMSVRZIDB4MDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DQVBfVElNRVBFUkZSQU1FIDB4MTAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX291dHB1dHBhcm0gewotIF9fdTMyIGNhcGFiaWxpdHk7Ci0gX191MzIgb3V0cHV0bW9kZTsKLSBzdHJ1Y3QgdjRsMl9mcmFjdCB0aW1lcGVyZnJhbWU7CisgIF9fdTMyIGNhcGFiaWxpdHk7CisgIF9fdTMyIG91dHB1dG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4dGVuZGVkbW9kZTsKLSBfX3UzMiB3cml0ZWJ1ZmZlcnM7Ci0gX191MzIgcmVzZXJ2ZWRbNF07CisgIHN0cnVjdCB2NGwyX2ZyYWN0IHRpbWVwZXJmcmFtZTsKKyAgX191MzIgZXh0ZW5kZWRtb2RlOworICBfX3UzMiB3cml0ZWJ1ZmZlcnM7CisgIF9fdTMyIHJlc2VydmVkWzRdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfY3JvcGNhcCB7Ci0gX191MzIgdHlwZTsKLSBzdHJ1Y3QgdjRsMl9yZWN0IGJvdW5kczsKLSBzdHJ1Y3QgdjRsMl9yZWN0IGRlZnJlY3Q7CisgIF9fdTMyIHR5cGU7CisgIHN0cnVjdCB2NGwyX3JlY3QgYm91bmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9mcmFjdCBwaXhlbGFzcGVjdDsKKyAgc3RydWN0IHY0bDJfcmVjdCBkZWZyZWN0OworICBzdHJ1Y3QgdjRsMl9mcmFjdCBwaXhlbGFzcGVjdDsKIH07CiBzdHJ1Y3QgdjRsMl9jcm9wIHsKLSBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9yZWN0IGM7CisgIF9fdTMyIHR5cGU7CisgIHN0cnVjdCB2NGwyX3JlY3QgYzsKIH07CiBzdHJ1Y3QgdjRsMl9zZWxlY3Rpb24gewotIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRhcmdldDsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3QgdjRsMl9yZWN0IHI7Ci0gX191MzIgcmVzZXJ2ZWRbOV07CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHRhcmdldDsKKyAgX191MzIgZmxhZ3M7CisgIHN0cnVjdCB2NGwyX3JlY3QgcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkWzldOwogfTsKIHR5cGVkZWYgX191NjQgdjRsMl9zdGRfaWQ7Ci0jZGVmaW5lIFY0TDJfU1REX1BBTF9CICgodjRsMl9zdGRfaWQpMHgwMDAwMDAwMSkKLSNkZWZpbmUgVjRMMl9TVERfUEFMX0IxICgodjRsMl9zdGRfaWQpMHgwMDAwMDAwMikKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0IgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDAwMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9HICgodjRsMl9zdGRfaWQpMHgwMDAwMDAwNCkKLSNkZWZpbmUgVjRMMl9TVERfUEFMX0ggKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDA4KQotI2RlZmluZSBWNEwyX1NURF9QQUxfSSAoKHY0bDJfc3RkX2lkKTB4MDAwMDAwMTApCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9EICgodjRsMl9zdGRfaWQpMHgwMDAwMDAyMCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0IxICgodjRsMl9zdGRfaWQpIDB4MDAwMDAwMDIpCisjZGVmaW5lIFY0TDJfU1REX1BBTF9HICgodjRsMl9zdGRfaWQpIDB4MDAwMDAwMDQpCisjZGVmaW5lIFY0TDJfU1REX1BBTF9IICgodjRsMl9zdGRfaWQpIDB4MDAwMDAwMDgpCisjZGVmaW5lIFY0TDJfU1REX1BBTF9JICgodjRsMl9zdGRfaWQpIDB4MDAwMDAwMTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF9QQUxfRDEgKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDQwKQotI2RlZmluZSBWNEwyX1NURF9QQUxfSyAoKHY0bDJfc3RkX2lkKTB4MDAwMDAwODApCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9NICgodjRsMl9zdGRfaWQpMHgwMDAwMDEwMCkKLSNkZWZpbmUgVjRMMl9TVERfUEFMX04gKCh2NGwyX3N0ZF9pZCkweDAwMDAwMjAwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfRCAoKHY0bDJfc3RkX2lkKSAweDAwMDAwMDIwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfRDEgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDA0MCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0sgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDA4MCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX00gKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDEwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9OYyAoKHY0bDJfc3RkX2lkKTB4MDAwMDA0MDApCi0jZGVmaW5lIFY0TDJfU1REX1BBTF82MCAoKHY0bDJfc3RkX2lkKTB4MDAwMDA4MDApCi0jZGVmaW5lIFY0TDJfU1REX05UU0NfTSAoKHY0bDJfc3RkX2lkKTB4MDAwMDEwMDApCi0jZGVmaW5lIFY0TDJfU1REX05UU0NfTV9KUCAoKHY0bDJfc3RkX2lkKTB4MDAwMDIwMDApCisjZGVmaW5lIFY0TDJfU1REX1BBTF9OICgodjRsMl9zdGRfaWQpIDB4MDAwMDAyMDApCisjZGVmaW5lIFY0TDJfU1REX1BBTF9OYyAoKHY0bDJfc3RkX2lkKSAweDAwMDAwNDAwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfNjAgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDgwMCkKKyNkZWZpbmUgVjRMMl9TVERfTlRTQ19NICgodjRsMl9zdGRfaWQpIDB4MDAwMDEwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF9OVFNDXzQ0MyAoKHY0bDJfc3RkX2lkKTB4MDAwMDQwMDApCi0jZGVmaW5lIFY0TDJfU1REX05UU0NfTV9LUiAoKHY0bDJfc3RkX2lkKTB4MDAwMDgwMDApCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0IgKCh2NGwyX3N0ZF9pZCkweDAwMDEwMDAwKQotI2RlZmluZSBWNEwyX1NURF9TRUNBTV9EICgodjRsMl9zdGRfaWQpMHgwMDAyMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfTlRTQ19NX0pQICgodjRsMl9zdGRfaWQpIDB4MDAwMDIwMDApCisjZGVmaW5lIFY0TDJfU1REX05UU0NfNDQzICgodjRsMl9zdGRfaWQpIDB4MDAwMDQwMDApCisjZGVmaW5lIFY0TDJfU1REX05UU0NfTV9LUiAoKHY0bDJfc3RkX2lkKSAweDAwMDA4MDAwKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTV9CICgodjRsMl9zdGRfaWQpIDB4MDAwMTAwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF9TRUNBTV9HICgodjRsMl9zdGRfaWQpMHgwMDA0MDAwMCkKLSNkZWZpbmUgVjRMMl9TVERfU0VDQU1fSCAoKHY0bDJfc3RkX2lkKTB4MDAwODAwMDApCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0sgKCh2NGwyX3N0ZF9pZCkweDAwMTAwMDAwKQotI2RlZmluZSBWNEwyX1NURF9TRUNBTV9LMSAoKHY0bDJfc3RkX2lkKTB4MDAyMDAwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0QgKCh2NGwyX3N0ZF9pZCkgMHgwMDAyMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fRyAoKHY0bDJfc3RkX2lkKSAweDAwMDQwMDAwKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTV9IICgodjRsMl9zdGRfaWQpIDB4MDAwODAwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0sgKCh2NGwyX3N0ZF9pZCkgMHgwMDEwMDAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0wgKCh2NGwyX3N0ZF9pZCkweDAwNDAwMDAwKQotI2RlZmluZSBWNEwyX1NURF9TRUNBTV9MQyAoKHY0bDJfc3RkX2lkKTB4MDA4MDAwMDApCi0jZGVmaW5lIFY0TDJfU1REX0FUU0NfOF9WU0IgKCh2NGwyX3N0ZF9pZCkweDAxMDAwMDAwKQotI2RlZmluZSBWNEwyX1NURF9BVFNDXzE2X1ZTQiAoKHY0bDJfc3RkX2lkKTB4MDIwMDAwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0sxICgodjRsMl9zdGRfaWQpIDB4MDAyMDAwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0wgKCh2NGwyX3N0ZF9pZCkgMHgwMDQwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fTEMgKCh2NGwyX3N0ZF9pZCkgMHgwMDgwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfQVRTQ184X1ZTQiAoKHY0bDJfc3RkX2lkKSAweDAxMDAwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfTlRTQyAoVjRMMl9TVERfTlRTQ19NIHwgIFY0TDJfU1REX05UU0NfTV9KUCB8ICBWNEwyX1NURF9OVFNDX01fS1IpCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0RLIChWNEwyX1NURF9TRUNBTV9EIHwgIFY0TDJfU1REX1NFQ0FNX0sgfCAgVjRMMl9TVERfU0VDQU1fSzEpCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNIChWNEwyX1NURF9TRUNBTV9CIHwgIFY0TDJfU1REX1NFQ0FNX0cgfCAgVjRMMl9TVERfU0VDQU1fSCB8ICBWNEwyX1NURF9TRUNBTV9ESyB8ICBWNEwyX1NURF9TRUNBTV9MIHwgIFY0TDJfU1REX1NFQ0FNX0xDKQotI2RlZmluZSBWNEwyX1NURF9QQUxfQkcgKFY0TDJfU1REX1BBTF9CIHwgIFY0TDJfU1REX1BBTF9CMSB8ICBWNEwyX1NURF9QQUxfRykKKyNkZWZpbmUgVjRMMl9TVERfQVRTQ18xNl9WU0IgKCh2NGwyX3N0ZF9pZCkgMHgwMjAwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfTlRTQyAoVjRMMl9TVERfTlRTQ19NIHwgVjRMMl9TVERfTlRTQ19NX0pQIHwgVjRMMl9TVERfTlRTQ19NX0tSKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTV9ESyAoVjRMMl9TVERfU0VDQU1fRCB8IFY0TDJfU1REX1NFQ0FNX0sgfCBWNEwyX1NURF9TRUNBTV9LMSkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU0gKFY0TDJfU1REX1NFQ0FNX0IgfCBWNEwyX1NURF9TRUNBTV9HIHwgVjRMMl9TVERfU0VDQU1fSCB8IFY0TDJfU1REX1NFQ0FNX0RLIHwgVjRMMl9TVERfU0VDQU1fTCB8IFY0TDJfU1REX1NFQ0FNX0xDKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfUEFMX0RLIChWNEwyX1NURF9QQUxfRCB8ICBWNEwyX1NURF9QQUxfRDEgfCAgVjRMMl9TVERfUEFMX0spCi0jZGVmaW5lIFY0TDJfU1REX1BBTCAoVjRMMl9TVERfUEFMX0JHIHwgIFY0TDJfU1REX1BBTF9ESyB8ICBWNEwyX1NURF9QQUxfSCB8ICBWNEwyX1NURF9QQUxfSSkKLSNkZWZpbmUgVjRMMl9TVERfQiAoVjRMMl9TVERfUEFMX0IgfCAgVjRMMl9TVERfUEFMX0IxIHwgIFY0TDJfU1REX1NFQ0FNX0IpCi0jZGVmaW5lIFY0TDJfU1REX0cgKFY0TDJfU1REX1BBTF9HIHwgIFY0TDJfU1REX1NFQ0FNX0cpCisjZGVmaW5lIFY0TDJfU1REX1BBTF9CRyAoVjRMMl9TVERfUEFMX0IgfCBWNEwyX1NURF9QQUxfQjEgfCBWNEwyX1NURF9QQUxfRykKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0RLIChWNEwyX1NURF9QQUxfRCB8IFY0TDJfU1REX1BBTF9EMSB8IFY0TDJfU1REX1BBTF9LKQorI2RlZmluZSBWNEwyX1NURF9QQUwgKFY0TDJfU1REX1BBTF9CRyB8IFY0TDJfU1REX1BBTF9ESyB8IFY0TDJfU1REX1BBTF9IIHwgVjRMMl9TVERfUEFMX0kpCisjZGVmaW5lIFY0TDJfU1REX0IgKFY0TDJfU1REX1BBTF9CIHwgVjRMMl9TVERfUEFMX0IxIHwgVjRMMl9TVERfU0VDQU1fQikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX0ggKFY0TDJfU1REX1BBTF9IIHwgIFY0TDJfU1REX1NFQ0FNX0gpCi0jZGVmaW5lIFY0TDJfU1REX0wgKFY0TDJfU1REX1NFQ0FNX0wgfCAgVjRMMl9TVERfU0VDQU1fTEMpCi0jZGVmaW5lIFY0TDJfU1REX0dIIChWNEwyX1NURF9HIHwgIFY0TDJfU1REX0gpCi0jZGVmaW5lIFY0TDJfU1REX0RLIChWNEwyX1NURF9QQUxfREsgfCAgVjRMMl9TVERfU0VDQU1fREspCisjZGVmaW5lIFY0TDJfU1REX0cgKFY0TDJfU1REX1BBTF9HIHwgVjRMMl9TVERfU0VDQU1fRykKKyNkZWZpbmUgVjRMMl9TVERfSCAoVjRMMl9TVERfUEFMX0ggfCBWNEwyX1NURF9TRUNBTV9IKQorI2RlZmluZSBWNEwyX1NURF9MIChWNEwyX1NURF9TRUNBTV9MIHwgVjRMMl9TVERfU0VDQU1fTEMpCisjZGVmaW5lIFY0TDJfU1REX0dIIChWNEwyX1NURF9HIHwgVjRMMl9TVERfSCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX0JHIChWNEwyX1NURF9CIHwgIFY0TDJfU1REX0cpCi0jZGVmaW5lIFY0TDJfU1REX01OIChWNEwyX1NURF9QQUxfTSB8ICBWNEwyX1NURF9QQUxfTiB8ICBWNEwyX1NURF9QQUxfTmMgfCAgVjRMMl9TVERfTlRTQykKLSNkZWZpbmUgVjRMMl9TVERfTVRTIChWNEwyX1NURF9OVFNDX00gfCAgVjRMMl9TVERfUEFMX00gfCAgVjRMMl9TVERfUEFMX04gfCAgVjRMMl9TVERfUEFMX05jKQotI2RlZmluZSBWNEwyX1NURF81MjVfNjAgKFY0TDJfU1REX1BBTF9NIHwgIFY0TDJfU1REX1BBTF82MCB8ICBWNEwyX1NURF9OVFNDIHwgIFY0TDJfU1REX05UU0NfNDQzKQorI2RlZmluZSBWNEwyX1NURF9ESyAoVjRMMl9TVERfUEFMX0RLIHwgVjRMMl9TVERfU0VDQU1fREspCisjZGVmaW5lIFY0TDJfU1REX0JHIChWNEwyX1NURF9CIHwgVjRMMl9TVERfRykKKyNkZWZpbmUgVjRMMl9TVERfTU4gKFY0TDJfU1REX1BBTF9NIHwgVjRMMl9TVERfUEFMX04gfCBWNEwyX1NURF9QQUxfTmMgfCBWNEwyX1NURF9OVFNDKQorI2RlZmluZSBWNEwyX1NURF9NVFMgKFY0TDJfU1REX05UU0NfTSB8IFY0TDJfU1REX1BBTF9NIHwgVjRMMl9TVERfUEFMX04gfCBWNEwyX1NURF9QQUxfTmMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF82MjVfNTAgKFY0TDJfU1REX1BBTCB8ICBWNEwyX1NURF9QQUxfTiB8ICBWNEwyX1NURF9QQUxfTmMgfCAgVjRMMl9TVERfU0VDQU0pCi0jZGVmaW5lIFY0TDJfU1REX0FUU0MgKFY0TDJfU1REX0FUU0NfOF9WU0IgfCAgVjRMMl9TVERfQVRTQ18xNl9WU0IpCisjZGVmaW5lIFY0TDJfU1REXzUyNV82MCAoVjRMMl9TVERfUEFMX00gfCBWNEwyX1NURF9QQUxfNjAgfCBWNEwyX1NURF9OVFNDIHwgVjRMMl9TVERfTlRTQ180NDMpCisjZGVmaW5lIFY0TDJfU1REXzYyNV81MCAoVjRMMl9TVERfUEFMIHwgVjRMMl9TVERfUEFMX04gfCBWNEwyX1NURF9QQUxfTmMgfCBWNEwyX1NURF9TRUNBTSkKKyNkZWZpbmUgVjRMMl9TVERfQVRTQyAoVjRMMl9TVERfQVRTQ184X1ZTQiB8IFY0TDJfU1REX0FUU0NfMTZfVlNCKQogI2RlZmluZSBWNEwyX1NURF9VTktOT1dOIDAKLSNkZWZpbmUgVjRMMl9TVERfQUxMIChWNEwyX1NURF81MjVfNjAgfCAgVjRMMl9TVERfNjI1XzUwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9TVERfQUxMIChWNEwyX1NURF81MjVfNjAgfCBWNEwyX1NURF82MjVfNTApCiBzdHJ1Y3QgdjRsMl9zdGFuZGFyZCB7Ci0gX191MzIgaW5kZXg7Ci0gdjRsMl9zdGRfaWQgaWQ7Ci0gX191OCBuYW1lWzI0XTsKKyAgX191MzIgaW5kZXg7CisgIHY0bDJfc3RkX2lkIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9mcmFjdCBmcmFtZXBlcmlvZDsKLSBfX3UzMiBmcmFtZWxpbmVzOwotIF9fdTMyIHJlc2VydmVkWzRdOworICBfX3U4IG5hbWVbMjRdOworICBzdHJ1Y3QgdjRsMl9mcmFjdCBmcmFtZXBlcmlvZDsKKyAgX191MzIgZnJhbWVsaW5lczsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9idF90aW1pbmdzIHsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgaW50ZXJsYWNlZDsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcG9sYXJpdGllczsKLSBfX3U2NCBwaXhlbGNsb2NrOwotIF9fdTMyIGhmcm9udHBvcmNoOwotIF9fdTMyIGhzeW5jOworICBfX3UzMiBpbnRlcmxhY2VkOworICBfX3UzMiBwb2xhcml0aWVzOworICBfX3U2NCBwaXhlbGNsb2NrOworICBfX3UzMiBoZnJvbnRwb3JjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGJhY2twb3JjaDsKLSBfX3UzMiB2ZnJvbnRwb3JjaDsKLSBfX3UzMiB2c3luYzsKLSBfX3UzMiB2YmFja3BvcmNoOworICBfX3UzMiBoc3luYzsKKyAgX191MzIgaGJhY2twb3JjaDsKKyAgX191MzIgdmZyb250cG9yY2g7CisgIF9fdTMyIHZzeW5jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbF92ZnJvbnRwb3JjaDsKLSBfX3UzMiBpbF92c3luYzsKLSBfX3UzMiBpbF92YmFja3BvcmNoOwotIF9fdTMyIHN0YW5kYXJkczsKKyAgX191MzIgdmJhY2twb3JjaDsKKyAgX191MzIgaWxfdmZyb250cG9yY2g7CisgIF9fdTMyIGlsX3ZzeW5jOworICBfX3UzMiBpbF92YmFja3BvcmNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXNlcnZlZFsxNF07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191MzIgc3RhbmRhcmRzOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWRbMTRdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRFZfUFJPR1JFU1NJVkUgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9EVl9JTlRFUkxBQ0VEIDEKICNkZWZpbmUgVjRMMl9EVl9WU1lOQ19QT1NfUE9MIDB4MDAwMDAwMDEKICNkZWZpbmUgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIDB4MDAwMDAwMDIKLSNkZWZpbmUgVjRMMl9EVl9CVF9TVERfQ0VBODYxICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0JUX1NURF9DRUE4NjEgKDEgPDwgMCkKICNkZWZpbmUgVjRMMl9EVl9CVF9TVERfRE1UICgxIDw8IDEpCiAjZGVmaW5lIFY0TDJfRFZfQlRfU1REX0NWVCAoMSA8PCAyKQogI2RlZmluZSBWNEwyX0RWX0JUX1NURF9HVEYgKDEgPDwgMykKLSNkZWZpbmUgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcgKDEgPDwgMCkKICNkZWZpbmUgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUyAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0RWX0ZMX1JFRFVDRURfRlBTICgxIDw8IDIpCiAjZGVmaW5lIFY0TDJfRFZfRkxfSEFMRl9MSU5FICgxIDw8IDMpCi0jZGVmaW5lIFY0TDJfRFZfQlRfQkxBTktJTkdfV0lEVEgoYnQpICAgKGJ0LT5oZnJvbnRwb3JjaCArIGJ0LT5oc3luYyArIGJ0LT5oYmFja3BvcmNoKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9GUkFNRV9XSURUSChidCkgICAoYnQtPndpZHRoICsgVjRMMl9EVl9CVF9CTEFOS0lOR19XSURUSChidCkpCi0jZGVmaW5lIFY0TDJfRFZfQlRfQkxBTktJTkdfSEVJR0hUKGJ0KSAgIChidC0+dmZyb250cG9yY2ggKyBidC0+dnN5bmMgKyBidC0+dmJhY2twb3JjaCArICAgYnQtPmlsX3Zmcm9udHBvcmNoICsgYnQtPmlsX3ZzeW5jICsgYnQtPmlsX3ZiYWNrcG9yY2gpCi0jZGVmaW5lIFY0TDJfRFZfQlRfRlJBTUVfSEVJR0hUKGJ0KSAgIChidC0+aGVpZ2h0ICsgVjRMMl9EVl9CVF9CTEFOS0lOR19IRUlHSFQoYnQpKQorI2RlZmluZSBWNEwyX0RWX0JUX0JMQU5LSU5HX1dJRFRIKGJ0KSAoKGJ0KS0+aGZyb250cG9yY2ggKyAoYnQpLT5oc3luYyArIChidCktPmhiYWNrcG9yY2gpCisjZGVmaW5lIFY0TDJfRFZfQlRfRlJBTUVfV0lEVEgoYnQpICgoYnQpLT53aWR0aCArIFY0TDJfRFZfQlRfQkxBTktJTkdfV0lEVEgoYnQpKQorI2RlZmluZSBWNEwyX0RWX0JUX0JMQU5LSU5HX0hFSUdIVChidCkgKChidCktPnZmcm9udHBvcmNoICsgKGJ0KS0+dnN5bmMgKyAoYnQpLT52YmFja3BvcmNoICsgKGJ0KS0+aWxfdmZyb250cG9yY2ggKyAoYnQpLT5pbF92c3luYyArIChidCktPmlsX3ZiYWNrcG9yY2gpCisjZGVmaW5lIFY0TDJfRFZfQlRfRlJBTUVfSEVJR0hUKGJ0KSAoKGJ0KS0+aGVpZ2h0ICsgVjRMMl9EVl9CVF9CTEFOS0lOR19IRUlHSFQoYnQpKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3MgeworICBfX3UzMiB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfYnRfdGltaW5ncyBidDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSB1bmlvbiB7Ci0gc3RydWN0IHY0bDJfYnRfdGltaW5ncyBidDsKLSBfX3UzMiByZXNlcnZlZFszMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgICBfX3UzMiByZXNlcnZlZFszMl07CisgIH07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBWNEwyX0RWX0JUXzY1Nl8xMTIwIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9lbnVtX2R2X3RpbWluZ3MgeworICBfX3UzMiBpbmRleDsKKyAgX191MzIgcGFkOworICBfX3UzMiByZXNlcnZlZFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gX191MzIgcmVzZXJ2ZWRbM107Ci0gc3RydWN0IHY0bDJfZHZfdGltaW5ncyB0aW1pbmdzOworICBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzIHRpbWluZ3M7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2J0X3RpbWluZ3NfY2FwIHsKLSBfX3UzMiBtaW5fd2lkdGg7Ci0gX191MzIgbWF4X3dpZHRoOwotIF9fdTMyIG1pbl9oZWlnaHQ7CisgIF9fdTMyIG1pbl93aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X2hlaWdodDsKLSBfX3U2NCBtaW5fcGl4ZWxjbG9jazsKLSBfX3U2NCBtYXhfcGl4ZWxjbG9jazsKLSBfX3UzMiBzdGFuZGFyZHM7CisgIF9fdTMyIG1heF93aWR0aDsKKyAgX191MzIgbWluX2hlaWdodDsKKyAgX191MzIgbWF4X2hlaWdodDsKKyAgX191NjQgbWluX3BpeGVsY2xvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNhcGFiaWxpdGllczsKLSBfX3UzMiByZXNlcnZlZFsxNl07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191NjQgbWF4X3BpeGVsY2xvY2s7CisgIF9fdTMyIHN0YW5kYXJkczsKKyAgX191MzIgY2FwYWJpbGl0aWVzOworICBfX3UzMiByZXNlcnZlZFsxNl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVjRMMl9EVl9CVF9DQVBfSU5URVJMQUNFRCAoMSA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9EVl9CVF9DQVBfUFJPR1JFU1NJVkUgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9EVl9CVF9DQVBfUkVEVUNFRF9CTEFOS0lORyAoMSA8PCAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9EVl9CVF9DQVBfQ1VTVE9NICgxIDw8IDMpCiBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzX2NhcCB7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiByZXNlcnZlZFszXTsKLSB1bmlvbiB7Ci0gc3RydWN0IHY0bDJfYnRfdGltaW5nc19jYXAgYnQ7CisgIF9fdTMyIHJlc2VydmVkWzJdOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfYnRfdGltaW5nc19jYXAgYnQ7CisgICAgX191MzIgcmF3X2RhdGFbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByYXdfZGF0YVszMl07Ci0gfTsKKyAgfTsKIH07CiBzdHJ1Y3QgdjRsMl9pbnB1dCB7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3U4IG5hbWVbMzJdOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgYXVkaW9zZXQ7CisgIF9fdTggbmFtZVszMl07CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGF1ZGlvc2V0OworICBfX3UzMiB0dW5lcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHVuZXI7Ci0gdjRsMl9zdGRfaWQgc3RkOwotIF9fdTMyIHN0YXR1czsKLSBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIHY0bDJfc3RkX2lkIHN0ZDsKKyAgX191MzIgc3RhdHVzOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIHJlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFszXTsKIH07CiAjZGVmaW5lIFY0TDJfSU5QVVRfVFlQRV9UVU5FUiAxCiAjZGVmaW5lIFY0TDJfSU5QVVRfVFlQRV9DQU1FUkEgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9OT19QT1dFUiAweDAwMDAwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0lOX1NUX05PX1NJR05BTCAweDAwMDAwMDAyCiAjZGVmaW5lIFY0TDJfSU5fU1RfTk9fQ09MT1IgMHgwMDAwMDAwNAogI2RlZmluZSBWNEwyX0lOX1NUX0hGTElQIDB4MDAwMDAwMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfSU5fU1RfVkZMSVAgMHgwMDAwMDAyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9OT19IX0xPQ0sgMHgwMDAwMDEwMAogI2RlZmluZSBWNEwyX0lOX1NUX0NPTE9SX0tJTEwgMHgwMDAwMDIwMAogI2RlZmluZSBWNEwyX0lOX1NUX05PX1NZTkMgMHgwMDAxMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9OT19FUVUgMHgwMDAyMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9OT19DQVJSSUVSIDB4MDAwNDAwMDAKICNkZWZpbmUgVjRMMl9JTl9TVF9NQUNST1ZJU0lPTiAweDAxMDAwMDAwCiAjZGVmaW5lIFY0TDJfSU5fU1RfTk9fQUNDRVNTIDB4MDIwMDAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfSU5fU1RfVlRSIDB4MDQwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfSU5fQ0FQX0RWX1RJTUlOR1MgMHgwMDAwMDAwMgogI2RlZmluZSBWNEwyX0lOX0NBUF9DVVNUT01fVElNSU5HUyBWNEwyX0lOX0NBUF9EVl9USU1JTkdTCiAjZGVmaW5lIFY0TDJfSU5fQ0FQX1NURCAweDAwMDAwMDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfb3V0cHV0IHsKLSBfX3UzMiBpbmRleDsKLSBfX3U4IG5hbWVbMzJdOwotIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF1ZGlvc2V0OwotIF9fdTMyIG1vZHVsYXRvcjsKLSB2NGwyX3N0ZF9pZCBzdGQ7Ci0gX191MzIgY2FwYWJpbGl0aWVzOworICBfX3UzMiBpbmRleDsKKyAgX191OCBuYW1lWzMyXTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgYXVkaW9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzNdOworICBfX3UzMiBtb2R1bGF0b3I7CisgIHY0bDJfc3RkX2lkIHN0ZDsKKyAgX191MzIgY2FwYWJpbGl0aWVzOworICBfX3UzMiByZXNlcnZlZFszXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBWNEwyX09VVFBVVF9UWVBFX01PRFVMQVRPUiAxCiAjZGVmaW5lIFY0TDJfT1VUUFVUX1RZUEVfQU5BTE9HIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfT1VUUFVUX1RZUEVfQU5BTE9HVkdBT1ZFUkxBWSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX09VVF9DQVBfRFZfVElNSU5HUyAweDAwMDAwMDAyCiAjZGVmaW5lIFY0TDJfT1VUX0NBUF9DVVNUT01fVElNSU5HUyBWNEwyX09VVF9DQVBfRFZfVElNSU5HUwogI2RlZmluZSBWNEwyX09VVF9DQVBfU1REIDB4MDAwMDAwMDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9jb250cm9sIHsKLSBfX3UzMiBpZDsKLSBfX3MzMiB2YWx1ZTsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZDsKKyAgX19zMzIgdmFsdWU7Cit9Owogc3RydWN0IHY0bDJfZXh0X2NvbnRyb2wgewotIF9fdTMyIGlkOwotIF9fdTMyIHNpemU7Ci0gX191MzIgcmVzZXJ2ZWQyWzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX19zMzIgdmFsdWU7Ci0gX19zNjQgdmFsdWU2NDsKLSBjaGFyICpzdHJpbmc7CisgIF9fdTMyIGlkOworICBfX3UzMiBzaXplOworICBfX3UzMiByZXNlcnZlZDJbMV07CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICAgIF9fczMyIHZhbHVlOworICAgIF9fczY0IHZhbHVlNjQ7CisgICAgY2hhciBfX3VzZXIgKiBzdHJpbmc7CisgICAgX191OCBfX3VzZXIgKiBwX3U4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBfX3UxNiBfX3VzZXIgKiBwX3UxNjsKKyAgICBfX3UzMiBfX3VzZXIgKiBwX3UzMjsKKyAgICB2b2lkIF9fdXNlciAqIHB0cjsKKyAgfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfZXh0X2NvbnRyb2xzIHsKLSBfX3UzMiBjdHJsX2NsYXNzOworICBfX3UzMiBjdHJsX2NsYXNzOworICBfX3UzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY291bnQ7Ci0gX191MzIgZXJyb3JfaWR4OwotIF9fdTMyIHJlc2VydmVkWzJdOwotIHN0cnVjdCB2NGwyX2V4dF9jb250cm9sICpjb250cm9sczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGVycm9yX2lkeDsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CisgIHN0cnVjdCB2NGwyX2V4dF9jb250cm9sICogY29udHJvbHM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DVFJMX0lEX01BU0sgKDB4MGZmZmZmZmYpCiAjZGVmaW5lIFY0TDJfQ1RSTF9JRDJDTEFTUyhpZCkgKChpZCkgJiAweDBmZmYwMDAwVUwpCiAjZGVmaW5lIFY0TDJfQ1RSTF9EUklWRVJfUFJJVihpZCkgKCgoaWQpICYgMHhmZmZmKSA+PSAweDEwMDApCisjZGVmaW5lIFY0TDJfQ1RSTF9NQVhfRElNUyAoNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfY3RybF90eXBlIHsKLSBWNEwyX0NUUkxfVFlQRV9JTlRFR0VSID0gMSwKLSBWNEwyX0NUUkxfVFlQRV9CT09MRUFOID0gMiwKLSBWNEwyX0NUUkxfVFlQRV9NRU5VID0gMywKKyAgVjRMMl9DVFJMX1RZUEVfSU5URUdFUiA9IDEsCisgIFY0TDJfQ1RSTF9UWVBFX0JPT0xFQU4gPSAyLAorICBWNEwyX0NUUkxfVFlQRV9NRU5VID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DVFJMX1RZUEVfQlVUVE9OID0gNCwKLSBWNEwyX0NUUkxfVFlQRV9JTlRFR0VSNjQgPSA1LAotIFY0TDJfQ1RSTF9UWVBFX0NUUkxfQ0xBU1MgPSA2LAotIFY0TDJfQ1RSTF9UWVBFX1NUUklORyA9IDcsCisgIFY0TDJfQ1RSTF9UWVBFX0JVVFRPTiA9IDQsCisgIFY0TDJfQ1RSTF9UWVBFX0lOVEVHRVI2NCA9IDUsCisgIFY0TDJfQ1RSTF9UWVBFX0NUUkxfQ0xBU1MgPSA2LAorICBWNEwyX0NUUkxfVFlQRV9TVFJJTkcgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NUUkxfVFlQRV9CSVRNQVNLID0gOCwKLSBWNEwyX0NUUkxfVFlQRV9JTlRFR0VSX01FTlUgPSA5LAorICBWNEwyX0NUUkxfVFlQRV9CSVRNQVNLID0gOCwKKyAgVjRMMl9DVFJMX1RZUEVfSU5URUdFUl9NRU5VID0gOSwKKyAgVjRMMl9DVFJMX0NPTVBPVU5EX1RZUEVTID0gMHgwMTAwLAorICBWNEwyX0NUUkxfVFlQRV9VOCA9IDB4MDEwMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfQ1RSTF9UWVBFX1UxNiA9IDB4MDEwMSwKKyAgVjRMMl9DVFJMX1RZUEVfVTMyID0gMHgwMTAyLAogfTsKIHN0cnVjdCB2NGwyX3F1ZXJ5Y3RybCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIHR5cGU7Ci0gX191OCBuYW1lWzMyXTsKLSBfX3MzMiBtaW5pbXVtOworICBfX3UzMiBpZDsKKyAgX191MzIgdHlwZTsKKyAgX191OCBuYW1lWzMyXTsKKyAgX19zMzIgbWluaW11bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgbWF4aW11bTsKLSBfX3MzMiBzdGVwOwotIF9fczMyIGRlZmF1bHRfdmFsdWU7Ci0gX191MzIgZmxhZ3M7CisgIF9fczMyIG1heGltdW07CisgIF9fczMyIHN0ZXA7CisgIF9fczMyIGRlZmF1bHRfdmFsdWU7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgX191MzIgcmVzZXJ2ZWRbMl07Cit9Oworc3RydWN0IHY0bDJfcXVlcnlfZXh0X2N0cmwgeworICBfX3UzMiBpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHR5cGU7CisgIGNoYXIgbmFtZVszMl07CisgIF9fczY0IG1pbmltdW07CisgIF9fczY0IG1heGltdW07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBzdGVwOworICBfX3M2NCBkZWZhdWx0X3ZhbHVlOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgZWxlbV9zaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZWxlbXM7CisgIF9fdTMyIG5yX29mX2RpbXM7CisgIF9fdTMyIGRpbXNbVjRMMl9DVFJMX01BWF9ESU1TXTsKKyAgX191MzIgcmVzZXJ2ZWRbMzJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdjRsMl9xdWVyeW1lbnUgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIHVuaW9uIHsKLSBfX3U4IG5hbWVbMzJdOwotIF9fczY0IHZhbHVlOworICB1bmlvbiB7CisgICAgX191OCBuYW1lWzMyXTsKKyAgICBfX3M2NCB2YWx1ZTsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3UzMiByZXNlcnZlZDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UzMiByZXNlcnZlZDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX0RJU0FCTEVEIDB4MDAwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfR1JBQkJFRCAweDAwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX1JFQURfT05MWSAweDAwMDQKICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfVVBEQVRFIDB4MDAwOAogI2RlZmluZSBWNEwyX0NUUkxfRkxBR19JTkFDVElWRSAweDAwMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX1NMSURFUiAweDAwMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX1dSSVRFX09OTFkgMHgwMDQwCiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX1ZPTEFUSUxFIDB4MDA4MAorI2RlZmluZSBWNEwyX0NUUkxfRkxBR19IQVNfUEFZTE9BRCAweDAxMDAKICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfTkVYVF9DVFJMIDB4ODAwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX05FWFRfQ09NUE9VTkQgMHg0MDAwMDAwMAogI2RlZmluZSBWNEwyX0NJRF9NQVhfQ1RSTFMgMTAyNAogI2RlZmluZSBWNEwyX0NJRF9QUklWQVRFX0JBU0UgMHgwODAwMDAwMAogc3RydWN0IHY0bDJfdHVuZXIgewotIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5hbWVbMzJdOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgY2FwYWJpbGl0eTsKLSBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgaW5kZXg7CisgIF9fdTggbmFtZVszMl07CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGNhcGFiaWxpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhbmdlaGlnaDsKLSBfX3UzMiByeHN1YmNoYW5zOwotIF9fdTMyIGF1ZG1vZGU7Ci0gX19zMzIgc2lnbmFsOworICBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgcmFuZ2VoaWdoOworICBfX3UzMiByeHN1YmNoYW5zOworICBfX3UzMiBhdWRtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBhZmM7Ci0gX191MzIgcmVzZXJ2ZWRbNF07CisgIF9fczMyIHNpZ25hbDsKKyAgX19zMzIgYWZjOworICBfX3UzMiByZXNlcnZlZFs0XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfbW9kdWxhdG9yIHsKKyAgX191MzIgaW5kZXg7CisgIF9fdTggbmFtZVszMl07CisgIF9fdTMyIGNhcGFiaWxpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgY2FwYWJpbGl0eTsKLSBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgcmFuZ2Vsb3c7CisgIF9fdTMyIHJhbmdlaGlnaDsKKyAgX191MzIgdHhzdWJjaGFuczsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhbmdlaGlnaDsKLSBfX3UzMiB0eHN1YmNoYW5zOwotIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX0xPVyAweDAwMDEKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfTk9STSAweDAwMDIKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfSFdTRUVLX0JPVU5ERUQgMHgwMDA0Ci0jZGVmaW5lIFY0TDJfVFVORVJfQ0FQX0hXU0VFS19XUkFQIDB4MDAwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfSFdTRUVLX1dSQVAgMHgwMDA4CiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX1NURVJFTyAweDAwMTAKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfTEFORzIgMHgwMDIwCiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX1NBUCAweDAwMjAKLSNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfTEFORzEgMHgwMDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9MQU5HMSAweDAwNDAKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfUkRTIDB4MDA4MAogI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9SRFNfQkxPQ0tfSU8gMHgwMTAwCiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX1JEU19DT05UUk9MUyAweDAyMDAKLSNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfRlJFUV9CQU5EUyAweDA0MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX0ZSRVFfQkFORFMgMHgwNDAwCiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX0hXU0VFS19QUk9HX0xJTSAweDA4MDAKKyNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfMUhaIDB4MTAwMAogI2RlZmluZSBWNEwyX1RVTkVSX1NVQl9NT05PIDB4MDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9TVUJfU1RFUkVPIDB4MDAwMgogI2RlZmluZSBWNEwyX1RVTkVSX1NVQl9MQU5HMiAweDAwMDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfVFVORVJfU1VCX1NBUCAweDAwMDQKICNkZWZpbmUgVjRMMl9UVU5FUl9TVUJfTEFORzEgMHgwMDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RVTkVSX1NVQl9SRFMgMHgwMDEwCiAjZGVmaW5lIFY0TDJfVFVORVJfTU9ERV9NT05PIDB4MDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX1NURVJFTyAweDAwMDEKICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX0xBTkcyIDB4MDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX1NBUCAweDAwMDIKICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX0xBTkcxIDB4MDAwMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX0xBTkcxX0xBTkcyIDB4MDAwNAogc3RydWN0IHY0bDJfZnJlcXVlbmN5IHsKLSBfX3UzMiB0dW5lcjsKLSBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcmVxdWVuY3k7Ci0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIHR1bmVyOworICBfX3UzMiB0eXBlOworICBfX3UzMiBmcmVxdWVuY3k7CisgIF9fdTMyIHJlc2VydmVkWzhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfQkFORF9NT0RVTEFUSU9OX1ZTQiAoMSA8PCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9CQU5EX01PRFVMQVRJT05fRk0gKDEgPDwgMikKICNkZWZpbmUgVjRMMl9CQU5EX01PRFVMQVRJT05fQU0gKDEgPDwgMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9mcmVxdWVuY3lfYmFuZCB7Ci0gX191MzIgdHVuZXI7CisgIF9fdTMyIHR1bmVyOworICBfX3UzMiB0eXBlOworICBfX3UzMiBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBjYXBhYmlsaXR5OwotIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiBjYXBhYmlsaXR5OworICBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgcmFuZ2VoaWdoOworICBfX3UzMiBtb2R1bGF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByYW5nZWhpZ2g7Ci0gX191MzIgbW9kdWxhdGlvbjsKLSBfX3UzMiByZXNlcnZlZFs5XTsKKyAgX191MzIgcmVzZXJ2ZWRbOV07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2h3X2ZyZXFfc2VlayB7Ci0gX191MzIgdHVuZXI7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBzZWVrX3Vwd2FyZDsKKyAgX191MzIgdHVuZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdyYXBfYXJvdW5kOwotIF9fdTMyIHNwYWNpbmc7Ci0gX191MzIgcmFuZ2Vsb3c7Ci0gX191MzIgcmFuZ2VoaWdoOworICBfX3UzMiB0eXBlOworICBfX3UzMiBzZWVrX3Vwd2FyZDsKKyAgX191MzIgd3JhcF9hcm91bmQ7CisgIF9fdTMyIHNwYWNpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzVdOworICBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgcmFuZ2VoaWdoOworICBfX3UzMiByZXNlcnZlZFs1XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfcmRzX2RhdGEgewotIF9fdTggbHNiOworICBfX3U4IGxzYjsKKyAgX191OCBtc2I7CisgIF9fdTggYmxvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbXNiOwotIF9fdTggYmxvY2s7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX01TSyAweDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0EgMAogI2RlZmluZSBWNEwyX1JEU19CTE9DS19CIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0MgMgogI2RlZmluZSBWNEwyX1JEU19CTE9DS19EIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0NfQUxUIDQKICNkZWZpbmUgVjRMMl9SRFNfQkxPQ0tfSU5WQUxJRCA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1JEU19CTE9DS19DT1JSRUNURUQgMHg0MAogI2RlZmluZSBWNEwyX1JEU19CTE9DS19FUlJPUiAweDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfYXVkaW8gewotIF9fdTMyIGluZGV4OwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgY2FwYWJpbGl0eTsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1vZGU7Ci0gX191MzIgcmVzZXJ2ZWRbMl07CisgIF9fdTggbmFtZVszMl07CisgIF9fdTMyIGNhcGFiaWxpdHk7CisgIF9fdTMyIG1vZGU7CisgIF9fdTMyIHJlc2VydmVkWzJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfQVVEQ0FQX1NURVJFTyAweDAwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0FVRENBUF9BVkwgMHgwMDAwMgogI2RlZmluZSBWNEwyX0FVRE1PREVfQVZMIDB4MDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9hdWRpb291dCB7Ci0gX191MzIgaW5kZXg7CisgIF9fdTMyIGluZGV4OworICBfX3U4IG5hbWVbMzJdOworICBfX3UzMiBjYXBhYmlsaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5hbWVbMzJdOwotIF9fdTMyIGNhcGFiaWxpdHk7Ci0gX191MzIgbW9kZTsKLSBfX3UzMiByZXNlcnZlZFsyXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG1vZGU7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKICNkZWZpbmUgVjRMMl9FTkNfSURYX0ZSQU1FX0kgKDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VOQ19JRFhfRlJBTUVfUCAoMSkKICNkZWZpbmUgVjRMMl9FTkNfSURYX0ZSQU1FX0IgKDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VOQ19JRFhfRlJBTUVfTUFTSyAoMHhmKQogc3RydWN0IHY0bDJfZW5jX2lkeF9lbnRyeSB7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTY0IHB0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3U2NCBvZmZzZXQ7CisgIF9fdTY0IHB0czsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRU5DX0lEWF9FTlRSSUVTICg2NCkKIHN0cnVjdCB2NGwyX2VuY19pZHggewotIF9fdTMyIGVudHJpZXM7Ci0gX191MzIgZW50cmllc19jYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzRdOwotIHN0cnVjdCB2NGwyX2VuY19pZHhfZW50cnkgZW50cnlbVjRMMl9FTkNfSURYX0VOVFJJRVNdOworICBfX3UzMiBlbnRyaWVzOworICBfX3UzMiBlbnRyaWVzX2NhcDsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CisgIHN0cnVjdCB2NGwyX2VuY19pZHhfZW50cnkgZW50cnlbVjRMMl9FTkNfSURYX0VOVFJJRVNdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfRU5DX0NNRF9TVEFSVCAoMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRU5DX0NNRF9TVE9QICgxKQogI2RlZmluZSBWNEwyX0VOQ19DTURfUEFVU0UgKDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VOQ19DTURfUkVTVU1FICgzKQogI2RlZmluZSBWNEwyX0VOQ19DTURfU1RPUF9BVF9HT1BfRU5EICgxIDw8IDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZW5jb2Rlcl9jbWQgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBmbGFnczsKLSB1bmlvbiB7CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3UzMiBkYXRhWzhdOwotIH0gcmF3OwotIH07CisgIF9fdTMyIGZsYWdzOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGRhdGFbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIH0gcmF3OworICB9OwogfTsKICNkZWZpbmUgVjRMMl9ERUNfQ01EX1NUQVJUICgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9ERUNfQ01EX1NUT1AgKDEpCiAjZGVmaW5lIFY0TDJfREVDX0NNRF9QQVVTRSAoMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfREVDX0NNRF9SRVNVTUUgKDMpCiAjZGVmaW5lIFY0TDJfREVDX0NNRF9TVEFSVF9NVVRFX0FVRElPICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RFQ19DTURfUEFVU0VfVE9fQkxBQ0sgKDEgPDwgMCkKICNkZWZpbmUgVjRMMl9ERUNfQ01EX1NUT1BfVE9fQkxBQ0sgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfREVDX0NNRF9TVE9QX0lNTUVESUFURUxZICgxIDw8IDEpCiAjZGVmaW5lIFY0TDJfREVDX1NUQVJUX0ZNVF9OT05FICgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9ERUNfU1RBUlRfRk1UX0dPUCAoMSkKIHN0cnVjdCB2NGwyX2RlY29kZXJfY21kIHsKKyAgX191MzIgY21kOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY21kOwotIF9fdTMyIGZsYWdzOwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHB0czsKKyAgICB9IHN0b3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHB0czsKLSB9IHN0b3A7Ci0gc3RydWN0IHsKLSBfX3MzMiBzcGVlZDsKKyAgICBzdHJ1Y3QgeworICAgICAgX19zMzIgc3BlZWQ7CisgICAgICBfX3UzMiBmb3JtYXQ7CisgICAgfSBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm9ybWF0OwotIH0gc3RhcnQ7Ci0gc3RydWN0IHsKLSBfX3UzMiBkYXRhWzE2XTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgZGF0YVsxNl07CisgICAgfSByYXc7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gcmF3OwotIH07CiB9Owogc3RydWN0IHY0bDJfdmJpX2Zvcm1hdCB7CisgIF9fdTMyIHNhbXBsaW5nX3JhdGU7CisgIF9fdTMyIG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FtcGxpbmdfcmF0ZTsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgc2FtcGxlc19wZXJfbGluZTsKLSBfX3UzMiBzYW1wbGVfZm9ybWF0OworICBfX3UzMiBzYW1wbGVzX3Blcl9saW5lOworICBfX3UzMiBzYW1wbGVfZm9ybWF0OworICBfX3MzMiBzdGFydFsyXTsKKyAgX191MzIgY291bnRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHN0YXJ0WzJdOwotIF9fdTMyIGNvdW50WzJdOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKICNkZWZpbmUgVjRMMl9WQklfVU5TWU5DICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1ZCSV9JTlRFUkxBQ0VEICgxIDw8IDEpCisjZGVmaW5lIFY0TDJfVkJJX0lUVV81MjVfRjFfU1RBUlQgKDEpCisjZGVmaW5lIFY0TDJfVkJJX0lUVV81MjVfRjJfU1RBUlQgKDI2NCkKKyNkZWZpbmUgVjRMMl9WQklfSVRVXzYyNV9GMV9TVEFSVCAoMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfVkJJX0lUVV82MjVfRjJfU1RBUlQgKDMxNCkKIHN0cnVjdCB2NGwyX3NsaWNlZF92YmlfZm9ybWF0IHsKKyAgX191MTYgc2VydmljZV9zZXQ7CisgIF9fdTE2IHNlcnZpY2VfbGluZXNbMl1bMjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzZXJ2aWNlX3NldDsKLSBfX3UxNiBzZXJ2aWNlX2xpbmVzWzJdWzI0XTsKLSBfX3UzMiBpb19zaXplOwotIF9fdTMyIHJlc2VydmVkWzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaW9fc2l6ZTsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogI2RlZmluZSBWNEwyX1NMSUNFRF9URUxFVEVYVF9CICgweDAwMDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1NMSUNFRF9WUFMgKDB4MDQwMCkKICNkZWZpbmUgVjRMMl9TTElDRURfQ0FQVElPTl81MjUgKDB4MTAwMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfU0xJQ0VEX1dTU182MjUgKDB4NDAwMCkKICNkZWZpbmUgVjRMMl9TTElDRURfVkJJXzUyNSAoVjRMMl9TTElDRURfQ0FQVElPTl81MjUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1NMSUNFRF9WQklfNjI1IChWNEwyX1NMSUNFRF9URUxFVEVYVF9CIHwgVjRMMl9TTElDRURfVlBTIHwgVjRMMl9TTElDRURfV1NTXzYyNSkKIHN0cnVjdCB2NGwyX3NsaWNlZF92YmlfY2FwIHsKKyAgX191MTYgc2VydmljZV9zZXQ7CisgIF9fdTE2IHNlcnZpY2VfbGluZXNbMl1bMjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzZXJ2aWNlX3NldDsKLSBfX3UxNiBzZXJ2aWNlX2xpbmVzWzJdWzI0XTsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHJlc2VydmVkWzNdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdHlwZTsKKyAgX191MzIgcmVzZXJ2ZWRbM107CiB9Owogc3RydWN0IHY0bDJfc2xpY2VkX3ZiaV9kYXRhIHsKLSBfX3UzMiBpZDsKLSBfX3UzMiBmaWVsZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGluZTsKLSBfX3UzMiByZXNlcnZlZDsKLSBfX3U4IGRhdGFbNDhdOworICBfX3UzMiBpZDsKKyAgX191MzIgZmllbGQ7CisgIF9fdTMyIGxpbmU7CisgIF9fdTMyIHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBkYXRhWzQ4XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX01QRUdfVkJJX0lWVFZfVEVMRVRFWFRfQiAoMSkKICNkZWZpbmUgVjRMMl9NUEVHX1ZCSV9JVlRWX0NBUFRJT05fNTI1ICg0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9NUEVHX1ZCSV9JVlRWX1dTU182MjUgKDUpCiAjZGVmaW5lIFY0TDJfTVBFR19WQklfSVZUVl9WUFMgKDcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MF9saW5lIHsKLSBfX3U4IGlkOwotIF9fdTggZGF0YVs0Ml07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZGF0YVs0Ml07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MCB7Ci0gX19sZTMyIGxpbmVtYXNrWzJdOwotIHN0cnVjdCB2NGwyX21wZWdfdmJpX2l0djBfbGluZSBsaW5lWzM1XTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMzIgbGluZW1hc2tbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9pdHYwX2xpbmUgbGluZVszNV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfbXBlZ192YmlfSVRWMCB7Ci0gc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MF9saW5lIGxpbmVbMzZdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Ci0jZGVmaW5lIFY0TDJfTVBFR19WQklfSVZUVl9NQUdJQzAgIml0djAiCisgIHN0cnVjdCB2NGwyX21wZWdfdmJpX2l0djBfbGluZSBsaW5lWzM2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworI2RlZmluZSBWNEwyX01QRUdfVkJJX0lWVFZfTUFHSUMwICJpdHYwIgogI2RlZmluZSBWNEwyX01QRUdfVkJJX0lWVFZfTUFHSUMxICJJVFYwIgogc3RydWN0IHY0bDJfbXBlZ192YmlfZm10X2l2dHYgewotIF9fdTggbWFnaWNbNF07Ci0gdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9pdHYwIGl0djA7Ci0gc3RydWN0IHY0bDJfbXBlZ192YmlfSVRWMCBJVFYwOwotIH07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBtYWdpY1s0XTsKKyAgdW5pb24geworICAgIHN0cnVjdCB2NGwyX21wZWdfdmJpX2l0djAgaXR2MDsKKyAgICBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9JVFYwIElUVjA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB2NGwyX3BsYW5lX3BpeF9mb3JtYXQgewotIF9fdTMyIHNpemVpbWFnZTsKLSBfX3UxNiBieXRlc3BlcmxpbmU7Ci0gX191MTYgcmVzZXJ2ZWRbN107CisgIF9fdTMyIHNpemVpbWFnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191MTYgYnl0ZXNwZXJsaW5lOworICBfX3UxNiByZXNlcnZlZFs3XTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0X21wbGFuZSB7Ci0gX191MzIgd2lkdGg7Ci0gX191MzIgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwaXhlbGZvcm1hdDsKLSBfX3UzMiBmaWVsZDsKLSBfX3UzMiBjb2xvcnNwYWNlOwotIHN0cnVjdCB2NGwyX3BsYW5lX3BpeF9mb3JtYXQgcGxhbmVfZm10W1ZJREVPX01BWF9QTEFORVNdOworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OworICBfX3UzMiBwaXhlbGZvcm1hdDsKKyAgX191MzIgZmllbGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnVtX3BsYW5lczsKLSBfX3U4IHJlc2VydmVkWzExXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UzMiBjb2xvcnNwYWNlOworICBzdHJ1Y3QgdjRsMl9wbGFuZV9waXhfZm9ybWF0IHBsYW5lX2ZtdFtWSURFT19NQVhfUExBTkVTXTsKKyAgX191OCBudW1fcGxhbmVzOworICBfX3U4IGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZFsxMF07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IHY0bDJfc2RyX2Zvcm1hdCB7CisgIF9fdTMyIHBpeGVsZm9ybWF0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYnVmZmVyc2l6ZTsKKyAgX191OCByZXNlcnZlZFsyNF07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfZm9ybWF0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSB1bmlvbiB7Ci0gc3RydWN0IHY0bDJfcGl4X2Zvcm1hdCBwaXg7Ci0gc3RydWN0IHY0bDJfcGl4X2Zvcm1hdF9tcGxhbmUgcGl4X21wOworICBfX3UzMiB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfcGl4X2Zvcm1hdCBwaXg7CisgICAgc3RydWN0IHY0bDJfcGl4X2Zvcm1hdF9tcGxhbmUgcGl4X21wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl93aW5kb3cgd2luOwotIHN0cnVjdCB2NGwyX3ZiaV9mb3JtYXQgdmJpOwotIHN0cnVjdCB2NGwyX3NsaWNlZF92YmlfZm9ybWF0IHNsaWNlZDsKLSBfX3U4IHJhd19kYXRhWzIwMF07CisgICAgc3RydWN0IHY0bDJfd2luZG93IHdpbjsKKyAgICBzdHJ1Y3QgdjRsMl92YmlfZm9ybWF0IHZiaTsKKyAgICBzdHJ1Y3QgdjRsMl9zbGljZWRfdmJpX2Zvcm1hdCBzbGljZWQ7CisgICAgc3RydWN0IHY0bDJfc2RyX2Zvcm1hdCBzZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZm10OworICAgIF9fdTggcmF3X2RhdGFbMjAwXTsKKyAgfSBmbXQ7CiB9Owogc3RydWN0IHY0bDJfc3RyZWFtcGFybSB7Ci0gX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB2NGwyX2NhcHR1cmVwYXJtIGNhcHR1cmU7Ci0gc3RydWN0IHY0bDJfb3V0cHV0cGFybSBvdXRwdXQ7Ci0gX191OCByYXdfZGF0YVsyMDBdOworICBfX3UzMiB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfY2FwdHVyZXBhcm0gY2FwdHVyZTsKKyAgICBzdHJ1Y3QgdjRsMl9vdXRwdXRwYXJtIG91dHB1dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBwYXJtOworICAgIF9fdTggcmF3X2RhdGFbMjAwXTsKKyAgfSBwYXJtOwogfTsKICNkZWZpbmUgVjRMMl9FVkVOVF9BTEwgMAotI2RlZmluZSBWNEwyX0VWRU5UX1ZTWU5DIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRVZFTlRfVlNZTkMgMQogI2RlZmluZSBWNEwyX0VWRU5UX0VPUyAyCiAjZGVmaW5lIFY0TDJfRVZFTlRfQ1RSTCAzCiAjZGVmaW5lIFY0TDJfRVZFTlRfRlJBTUVfU1lOQyA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0VWRU5UX1NPVVJDRV9DSEFOR0UgNQorI2RlZmluZSBWNEwyX0VWRU5UX01PVElPTl9ERVQgNgogI2RlZmluZSBWNEwyX0VWRU5UX1BSSVZBVEVfU1RBUlQgMHgwODAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2V2ZW50X3ZzeW5jIHsKLSBfX3U4IGZpZWxkOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Ci0jZGVmaW5lIFY0TDJfRVZFTlRfQ1RSTF9DSF9WQUxVRSAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBmaWVsZDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisjZGVmaW5lIFY0TDJfRVZFTlRfQ1RSTF9DSF9WQUxVRSAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0VWRU5UX0NUUkxfQ0hfRkxBR1MgKDEgPDwgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRVZFTlRfQ1RSTF9DSF9SQU5HRSAoMSA8PCAyKQogc3RydWN0IHY0bDJfZXZlbnRfY3RybCB7Ci0gX191MzIgY2hhbmdlczsKKyAgX191MzIgY2hhbmdlczsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSB1bmlvbiB7Ci0gX19zMzIgdmFsdWU7Ci0gX19zNjQgdmFsdWU2NDsKKyAgdW5pb24geworICAgIF9fczMyIHZhbHVlOworICAgIF9fczY0IHZhbHVlNjQ7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gX191MzIgZmxhZ3M7Ci0gX19zMzIgbWluaW11bTsKLSBfX3MzMiBtYXhpbXVtOworICBfX3UzMiBmbGFnczsKKyAgX19zMzIgbWluaW11bTsKKyAgX19zMzIgbWF4aW11bTsKKyAgX19zMzIgc3RlcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3RlcDsKLSBfX3MzMiBkZWZhdWx0X3ZhbHVlOworICBfX3MzMiBkZWZhdWx0X3ZhbHVlOwogfTsKIHN0cnVjdCB2NGwyX2V2ZW50X2ZyYW1lX3N5bmMgeworICBfX3UzMiBmcmFtZV9zZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnJhbWVfc2VxdWVuY2U7Cit9OworI2RlZmluZSBWNEwyX0VWRU5UX1NSQ19DSF9SRVNPTFVUSU9OICgxIDw8IDApCitzdHJ1Y3QgdjRsMl9ldmVudF9zcmNfY2hhbmdlIHsKKyAgX191MzIgY2hhbmdlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBWNEwyX0VWRU5UX01EX0ZMX0hBVkVfRlJBTUVfU0VRICgxIDw8IDApCitzdHJ1Y3QgdjRsMl9ldmVudF9tb3Rpb25fZGV0IHsKKyAgX191MzIgZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmcmFtZV9zZXF1ZW5jZTsKKyAgX191MzIgcmVnaW9uX21hc2s7CiB9Owogc3RydWN0IHY0bDJfZXZlbnQgewotIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgdjRsMl9ldmVudF92c3luYyB2c3luYzsKLSBzdHJ1Y3QgdjRsMl9ldmVudF9jdHJsIGN0cmw7Ci0gc3RydWN0IHY0bDJfZXZlbnRfZnJhbWVfc3luYyBmcmFtZV9zeW5jOworICBfX3UzMiB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfZXZlbnRfdnN5bmMgdnN5bmM7CisgICAgc3RydWN0IHY0bDJfZXZlbnRfY3RybCBjdHJsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFbNjRdOwotIH0gdTsKLSBfX3UzMiBwZW5kaW5nOwotIF9fdTMyIHNlcXVlbmNlOworICAgIHN0cnVjdCB2NGwyX2V2ZW50X2ZyYW1lX3N5bmMgZnJhbWVfc3luYzsKKyAgICBzdHJ1Y3QgdjRsMl9ldmVudF9zcmNfY2hhbmdlIHNyY19jaGFuZ2U7CisgICAgc3RydWN0IHY0bDJfZXZlbnRfbW90aW9uX2RldCBtb3Rpb25fZGV0OworICAgIF9fdTggZGF0YVs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1lc3BlYyB0aW1lc3RhbXA7Ci0gX191MzIgaWQ7Ci0gX191MzIgcmVzZXJ2ZWRbOF07CisgIH0gdTsKKyAgX191MzIgcGVuZGluZzsKKyAgX191MzIgc2VxdWVuY2U7CisgIHN0cnVjdCB0aW1lc3BlYyB0aW1lc3RhbXA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZDsKKyAgX191MzIgcmVzZXJ2ZWRbOF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9FVkVOVF9TVUJfRkxfU0VORF9JTklUSUFMICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VWRU5UX1NVQl9GTF9BTExPV19GRUVEQkFDSyAoMSA8PCAxKQogc3RydWN0IHY0bDJfZXZlbnRfc3Vic2NyaXB0aW9uIHsKLSBfX3UzMiB0eXBlOworICBfX3UzMiB0eXBlOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWRbNV07CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNlcnZlZFs1XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NISVBfTUFUQ0hfQlJJREdFIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9TVUJERVYgNAogI2RlZmluZSBWNEwyX0NISVBfTUFUQ0hfSE9TVCBWNEwyX0NISVBfTUFUQ0hfQlJJREdFCiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9JMkNfRFJJVkVSIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9JMkNfQUREUiAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NISVBfTUFUQ0hfQUM5NyAzCiBzdHJ1Y3QgdjRsMl9kYmdfbWF0Y2ggewotIF9fdTMyIHR5cGU7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fdTMyIGFkZHI7Ci0gY2hhciBuYW1lWzMyXTsKLSB9OworICAgIF9fdTMyIGFkZHI7CisgICAgY2hhciBuYW1lWzMyXTsKKyAgfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9kYmdfcmVnaXN0ZXIgewotIHN0cnVjdCB2NGwyX2RiZ19tYXRjaCBtYXRjaDsKLSBfX3UzMiBzaXplOworICBzdHJ1Y3QgdjRsMl9kYmdfbWF0Y2ggbWF0Y2g7CisgIF9fdTMyIHNpemU7CisgIF9fdTY0IHJlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVnOwotIF9fdTY0IHZhbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U2NCB2YWw7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBWNEwyX0NISVBfRkxfUkVBREFCTEUgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0hJUF9GTF9XUklUQUJMRSAoMSA8PCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2RiZ19jaGlwX2luZm8gewotIHN0cnVjdCB2NGwyX2RiZ19tYXRjaCBtYXRjaDsKLSBjaGFyIG5hbWVbMzJdOworICBzdHJ1Y3QgdjRsMl9kYmdfbWF0Y2ggbWF0Y2g7CisgIGNoYXIgbmFtZVszMl07CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXNlcnZlZFszMl07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191MzIgcmVzZXJ2ZWRbMzJdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB2NGwyX2NyZWF0ZV9idWZmZXJzIHsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIGNvdW50OwotIF9fdTMyIG1lbW9yeTsKLSBzdHJ1Y3QgdjRsMl9mb3JtYXQgZm9ybWF0OworICBfX3UzMiBjb3VudDsKKyAgX191MzIgbWVtb3J5OworICBzdHJ1Y3QgdjRsMl9mb3JtYXQgZm9ybWF0OworICBfX3UzMiByZXNlcnZlZFs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbOF07CiB9OwogI2RlZmluZSBWSURJT0NfUVVFUllDQVAgX0lPUignVicsIDAsIHN0cnVjdCB2NGwyX2NhcGFiaWxpdHkpCiAjZGVmaW5lIFZJRElPQ19SRVNFUlZFRCBfSU8oJ1YnLCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX0VOVU1fRk1UIF9JT1dSKCdWJywgMiwgc3RydWN0IHY0bDJfZm10ZGVzYykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19HX0ZNVCBfSU9XUignVicsIDQsIHN0cnVjdCB2NGwyX2Zvcm1hdCkKICNkZWZpbmUgVklESU9DX1NfRk1UIF9JT1dSKCdWJywgNSwgc3RydWN0IHY0bDJfZm9ybWF0KQogI2RlZmluZSBWSURJT0NfUkVRQlVGUyBfSU9XUignVicsIDgsIHN0cnVjdCB2NGwyX3JlcXVlc3RidWZmZXJzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1FVRVJZQlVGIF9JT1dSKCdWJywgOSwgc3RydWN0IHY0bDJfYnVmZmVyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX0dfRkJVRiBfSU9SKCdWJywgMTAsIHN0cnVjdCB2NGwyX2ZyYW1lYnVmZmVyKQogI2RlZmluZSBWSURJT0NfU19GQlVGIF9JT1coJ1YnLCAxMSwgc3RydWN0IHY0bDJfZnJhbWVidWZmZXIpCiAjZGVmaW5lIFZJRElPQ19PVkVSTEFZIF9JT1coJ1YnLCAxNCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1FCVUYgX0lPV1IoJ1YnLCAxNSwgc3RydWN0IHY0bDJfYnVmZmVyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX0VYUEJVRiBfSU9XUignVicsIDE2LCBzdHJ1Y3QgdjRsMl9leHBvcnRidWZmZXIpCiAjZGVmaW5lIFZJRElPQ19EUUJVRiBfSU9XUignVicsIDE3LCBzdHJ1Y3QgdjRsMl9idWZmZXIpCiAjZGVmaW5lIFZJRElPQ19TVFJFQU1PTiBfSU9XKCdWJywgMTgsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TVFJFQU1PRkYgX0lPVygnVicsIDE5LCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfR19QQVJNIF9JT1dSKCdWJywgMjEsIHN0cnVjdCB2NGwyX3N0cmVhbXBhcm0pCiAjZGVmaW5lIFZJRElPQ19TX1BBUk0gX0lPV1IoJ1YnLCAyMiwgc3RydWN0IHY0bDJfc3RyZWFtcGFybSkKICNkZWZpbmUgVklESU9DX0dfU1REIF9JT1IoJ1YnLCAyMywgdjRsMl9zdGRfaWQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfU19TVEQgX0lPVygnVicsIDI0LCB2NGwyX3N0ZF9pZCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19FTlVNU1REIF9JT1dSKCdWJywgMjUsIHN0cnVjdCB2NGwyX3N0YW5kYXJkKQogI2RlZmluZSBWSURJT0NfRU5VTUlOUFVUIF9JT1dSKCdWJywgMjYsIHN0cnVjdCB2NGwyX2lucHV0KQogI2RlZmluZSBWSURJT0NfR19DVFJMIF9JT1dSKCdWJywgMjcsIHN0cnVjdCB2NGwyX2NvbnRyb2wpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfU19DVFJMIF9JT1dSKCdWJywgMjgsIHN0cnVjdCB2NGwyX2NvbnRyb2wpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfR19UVU5FUiBfSU9XUignVicsIDI5LCBzdHJ1Y3QgdjRsMl90dW5lcikKICNkZWZpbmUgVklESU9DX1NfVFVORVIgX0lPVygnVicsIDMwLCBzdHJ1Y3QgdjRsMl90dW5lcikKICNkZWZpbmUgVklESU9DX0dfQVVESU8gX0lPUignVicsIDMzLCBzdHJ1Y3QgdjRsMl9hdWRpbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TX0FVRElPIF9JT1coJ1YnLCAzNCwgc3RydWN0IHY0bDJfYXVkaW8pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfUVVFUllDVFJMIF9JT1dSKCdWJywgMzYsIHN0cnVjdCB2NGwyX3F1ZXJ5Y3RybCkKICNkZWZpbmUgVklESU9DX1FVRVJZTUVOVSBfSU9XUignVicsIDM3LCBzdHJ1Y3QgdjRsMl9xdWVyeW1lbnUpCiAjZGVmaW5lIFZJRElPQ19HX0lOUFVUIF9JT1IoJ1YnLCAzOCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1NfSU5QVVQgX0lPV1IoJ1YnLCAzOSwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0dfRURJRCBfSU9XUignVicsIDQwLCBzdHJ1Y3QgdjRsMl9lZGlkKQorI2RlZmluZSBWSURJT0NfU19FRElEIF9JT1dSKCdWJywgNDEsIHN0cnVjdCB2NGwyX2VkaWQpCiAjZGVmaW5lIFZJRElPQ19HX09VVFBVVCBfSU9SKCdWJywgNDYsIGludCkKICNkZWZpbmUgVklESU9DX1NfT1VUUFVUIF9JT1dSKCdWJywgNDcsIGludCkKLSNkZWZpbmUgVklESU9DX0VOVU1PVVRQVVQgX0lPV1IoJ1YnLCA0OCwgc3RydWN0IHY0bDJfb3V0cHV0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0VOVU1PVVRQVVQgX0lPV1IoJ1YnLCA0OCwgc3RydWN0IHY0bDJfb3V0cHV0KQogI2RlZmluZSBWSURJT0NfR19BVURPVVQgX0lPUignVicsIDQ5LCBzdHJ1Y3QgdjRsMl9hdWRpb291dCkKICNkZWZpbmUgVklESU9DX1NfQVVET1VUIF9JT1coJ1YnLCA1MCwgc3RydWN0IHY0bDJfYXVkaW9vdXQpCiAjZGVmaW5lIFZJRElPQ19HX01PRFVMQVRPUiBfSU9XUignVicsIDU0LCBzdHJ1Y3QgdjRsMl9tb2R1bGF0b3IpCi0jZGVmaW5lIFZJRElPQ19TX01PRFVMQVRPUiBfSU9XKCdWJywgNTUsIHN0cnVjdCB2NGwyX21vZHVsYXRvcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19TX01PRFVMQVRPUiBfSU9XKCdWJywgNTUsIHN0cnVjdCB2NGwyX21vZHVsYXRvcikKICNkZWZpbmUgVklESU9DX0dfRlJFUVVFTkNZIF9JT1dSKCdWJywgNTYsIHN0cnVjdCB2NGwyX2ZyZXF1ZW5jeSkKICNkZWZpbmUgVklESU9DX1NfRlJFUVVFTkNZIF9JT1coJ1YnLCA1Nywgc3RydWN0IHY0bDJfZnJlcXVlbmN5KQogI2RlZmluZSBWSURJT0NfQ1JPUENBUCBfSU9XUignVicsIDU4LCBzdHJ1Y3QgdjRsMl9jcm9wY2FwKQotI2RlZmluZSBWSURJT0NfR19DUk9QIF9JT1dSKCdWJywgNTksIHN0cnVjdCB2NGwyX2Nyb3ApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfR19DUk9QIF9JT1dSKCdWJywgNTksIHN0cnVjdCB2NGwyX2Nyb3ApCiAjZGVmaW5lIFZJRElPQ19TX0NST1AgX0lPVygnVicsIDYwLCBzdHJ1Y3QgdjRsMl9jcm9wKQogI2RlZmluZSBWSURJT0NfR19KUEVHQ09NUCBfSU9SKCdWJywgNjEsIHN0cnVjdCB2NGwyX2pwZWdjb21wcmVzc2lvbikKICNkZWZpbmUgVklESU9DX1NfSlBFR0NPTVAgX0lPVygnVicsIDYyLCBzdHJ1Y3QgdjRsMl9qcGVnY29tcHJlc3Npb24pCi0jZGVmaW5lIFZJRElPQ19RVUVSWVNURCBfSU9SKCdWJywgNjMsIHY0bDJfc3RkX2lkKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX1FVRVJZU1REIF9JT1IoJ1YnLCA2MywgdjRsMl9zdGRfaWQpCiAjZGVmaW5lIFZJRElPQ19UUllfRk1UIF9JT1dSKCdWJywgNjQsIHN0cnVjdCB2NGwyX2Zvcm1hdCkKICNkZWZpbmUgVklESU9DX0VOVU1BVURJTyBfSU9XUignVicsIDY1LCBzdHJ1Y3QgdjRsMl9hdWRpbykKICNkZWZpbmUgVklESU9DX0VOVU1BVURPVVQgX0lPV1IoJ1YnLCA2Niwgc3RydWN0IHY0bDJfYXVkaW9vdXQpCi0jZGVmaW5lIFZJRElPQ19HX1BSSU9SSVRZIF9JT1IoJ1YnLCA2NywgX191MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfR19QUklPUklUWSBfSU9SKCdWJywgNjcsIF9fdTMyKQogI2RlZmluZSBWSURJT0NfU19QUklPUklUWSBfSU9XKCdWJywgNjgsIF9fdTMyKQogI2RlZmluZSBWSURJT0NfR19TTElDRURfVkJJX0NBUCBfSU9XUignVicsIDY5LCBzdHJ1Y3QgdjRsMl9zbGljZWRfdmJpX2NhcCkKICNkZWZpbmUgVklESU9DX0xPR19TVEFUVVMgX0lPKCdWJywgNzApCi0jZGVmaW5lIFZJRElPQ19HX0VYVF9DVFJMUyBfSU9XUignVicsIDcxLCBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbHMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfR19FWFRfQ1RSTFMgX0lPV1IoJ1YnLCA3MSwgc3RydWN0IHY0bDJfZXh0X2NvbnRyb2xzKQogI2RlZmluZSBWSURJT0NfU19FWFRfQ1RSTFMgX0lPV1IoJ1YnLCA3Miwgc3RydWN0IHY0bDJfZXh0X2NvbnRyb2xzKQogI2RlZmluZSBWSURJT0NfVFJZX0VYVF9DVFJMUyBfSU9XUignVicsIDczLCBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbHMpCiAjZGVmaW5lIFZJRElPQ19FTlVNX0ZSQU1FU0laRVMgX0lPV1IoJ1YnLCA3NCwgc3RydWN0IHY0bDJfZnJtc2l6ZWVudW0pCi0jZGVmaW5lIFZJRElPQ19FTlVNX0ZSQU1FSU5URVJWQUxTIF9JT1dSKCdWJywgNzUsIHN0cnVjdCB2NGwyX2ZybWl2YWxlbnVtKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0VOVU1fRlJBTUVJTlRFUlZBTFMgX0lPV1IoJ1YnLCA3NSwgc3RydWN0IHY0bDJfZnJtaXZhbGVudW0pCiAjZGVmaW5lIFZJRElPQ19HX0VOQ19JTkRFWCBfSU9SKCdWJywgNzYsIHN0cnVjdCB2NGwyX2VuY19pZHgpCiAjZGVmaW5lIFZJRElPQ19FTkNPREVSX0NNRCBfSU9XUignVicsIDc3LCBzdHJ1Y3QgdjRsMl9lbmNvZGVyX2NtZCkKICNkZWZpbmUgVklESU9DX1RSWV9FTkNPREVSX0NNRCBfSU9XUignVicsIDc4LCBzdHJ1Y3QgdjRsMl9lbmNvZGVyX2NtZCkKLSNkZWZpbmUgVklESU9DX0RCR19TX1JFR0lTVEVSIF9JT1coJ1YnLCA3OSwgc3RydWN0IHY0bDJfZGJnX3JlZ2lzdGVyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0RCR19TX1JFR0lTVEVSIF9JT1coJ1YnLCA3OSwgc3RydWN0IHY0bDJfZGJnX3JlZ2lzdGVyKQogI2RlZmluZSBWSURJT0NfREJHX0dfUkVHSVNURVIgX0lPV1IoJ1YnLCA4MCwgc3RydWN0IHY0bDJfZGJnX3JlZ2lzdGVyKQogI2RlZmluZSBWSURJT0NfU19IV19GUkVRX1NFRUsgX0lPVygnVicsIDgyLCBzdHJ1Y3QgdjRsMl9od19mcmVxX3NlZWspCiAjZGVmaW5lIFZJRElPQ19TX0RWX1RJTUlOR1MgX0lPV1IoJ1YnLCA4Nywgc3RydWN0IHY0bDJfZHZfdGltaW5ncykKLSNkZWZpbmUgVklESU9DX0dfRFZfVElNSU5HUyBfSU9XUignVicsIDg4LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0dfRFZfVElNSU5HUyBfSU9XUignVicsIDg4LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQogI2RlZmluZSBWSURJT0NfRFFFVkVOVCBfSU9SKCdWJywgODksIHN0cnVjdCB2NGwyX2V2ZW50KQogI2RlZmluZSBWSURJT0NfU1VCU0NSSUJFX0VWRU5UIF9JT1coJ1YnLCA5MCwgc3RydWN0IHY0bDJfZXZlbnRfc3Vic2NyaXB0aW9uKQogI2RlZmluZSBWSURJT0NfVU5TVUJTQ1JJQkVfRVZFTlQgX0lPVygnVicsIDkxLCBzdHJ1Y3QgdjRsMl9ldmVudF9zdWJzY3JpcHRpb24pCi0jZGVmaW5lIFZJRElPQ19DUkVBVEVfQlVGUyBfSU9XUignVicsIDkyLCBzdHJ1Y3QgdjRsMl9jcmVhdGVfYnVmZmVycykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19DUkVBVEVfQlVGUyBfSU9XUignVicsIDkyLCBzdHJ1Y3QgdjRsMl9jcmVhdGVfYnVmZmVycykKICNkZWZpbmUgVklESU9DX1BSRVBBUkVfQlVGIF9JT1dSKCdWJywgOTMsIHN0cnVjdCB2NGwyX2J1ZmZlcikKICNkZWZpbmUgVklESU9DX0dfU0VMRUNUSU9OIF9JT1dSKCdWJywgOTQsIHN0cnVjdCB2NGwyX3NlbGVjdGlvbikKICNkZWZpbmUgVklESU9DX1NfU0VMRUNUSU9OIF9JT1dSKCdWJywgOTUsIHN0cnVjdCB2NGwyX3NlbGVjdGlvbikKLSNkZWZpbmUgVklESU9DX0RFQ09ERVJfQ01EIF9JT1dSKCdWJywgOTYsIHN0cnVjdCB2NGwyX2RlY29kZXJfY21kKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0RFQ09ERVJfQ01EIF9JT1dSKCdWJywgOTYsIHN0cnVjdCB2NGwyX2RlY29kZXJfY21kKQogI2RlZmluZSBWSURJT0NfVFJZX0RFQ09ERVJfQ01EIF9JT1dSKCdWJywgOTcsIHN0cnVjdCB2NGwyX2RlY29kZXJfY21kKQogI2RlZmluZSBWSURJT0NfRU5VTV9EVl9USU1JTkdTIF9JT1dSKCdWJywgOTgsIHN0cnVjdCB2NGwyX2VudW1fZHZfdGltaW5ncykKICNkZWZpbmUgVklESU9DX1FVRVJZX0RWX1RJTUlOR1MgX0lPUignVicsIDk5LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQotI2RlZmluZSBWSURJT0NfRFZfVElNSU5HU19DQVAgX0lPV1IoJ1YnLCAxMDAsIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3NfY2FwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0RWX1RJTUlOR1NfQ0FQIF9JT1dSKCdWJywgMTAwLCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzX2NhcCkKICNkZWZpbmUgVklESU9DX0VOVU1fRlJFUV9CQU5EUyBfSU9XUignVicsIDEwMSwgc3RydWN0IHY0bDJfZnJlcXVlbmN5X2JhbmQpCiAjZGVmaW5lIFZJRElPQ19EQkdfR19DSElQX0lORk8gX0lPV1IoJ1YnLCAxMDIsIHN0cnVjdCB2NGwyX2RiZ19jaGlwX2luZm8pCisjZGVmaW5lIFZJRElPQ19RVUVSWV9FWFRfQ1RSTCBfSU9XUignVicsIDEwMywgc3RydWN0IHY0bDJfcXVlcnlfZXh0X2N0cmwpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCQVNFX1ZJRElPQ19QUklWQVRFIDE5MgogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fOXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvXzlwLmgKaW5kZXggMmFkZjBkZi4uNzJiYzY0YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fOXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb185cC5oCkBAIC0yNCw4ICsyNCw4IEBACiAjaW5jbHVkZSA8bGludXgvdmlydGlvX2NvbmZpZy5oPgogI2RlZmluZSBWSVJUSU9fOVBfTU9VTlRfVEFHIDAKIHN0cnVjdCB2aXJ0aW9fOXBfY29uZmlnIHsKLSBfX3UxNiB0YWdfbGVuOworICBfX3UxNiB0YWdfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRhZ1swXTsKKyAgX191OCB0YWdbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19iYWxsb29uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19iYWxsb29uLmgKaW5kZXggZDc5ZGI2Zi4uMDI3YjY1ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fYmFsbG9vbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2JhbGxvb24uaApAQCAtMjQsMjUgKzI0LDIzIEBACiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX0ZfTVVTVF9URUxMX0hPU1QgMAogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9GX1NUQVRTX1ZRIDEKICNkZWZpbmUgVklSVElPX0JBTExPT05fUEZOX1NISUZUIDEyCi1zdHJ1Y3QgdmlydGlvX2JhbGxvb25fY29uZmlnCitzdHJ1Y3QgdmlydGlvX2JhbGxvb25fY29uZmlnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX19sZTMyIG51bV9wYWdlczsKLSBfX2xlMzIgYWN0dWFsOworICBfX2xlMzIgbnVtX3BhZ2VzOworICBfX2xlMzIgYWN0dWFsOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX1NfU1dBUF9JTiAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX1NXQVBfT1VUIDEKICNkZWZpbmUgVklSVElPX0JBTExPT05fU19NQUpGTFQgMgogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX01JTkZMVCAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX01FTUZSRUUgNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0JBTExPT05fU19NRU1UT1QgNQogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX05SIDYKIHN0cnVjdCB2aXJ0aW9fYmFsbG9vbl9zdGF0IHsKKyAgX191MTYgdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0YWc7Ci0gX191NjQgdmFsOworICBfX3U2NCB2YWw7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fYmxrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19ibGsuaAppbmRleCA3OGVjNWUwLi5iNmEyMmQwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19ibGsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19ibGsuaApAQCAtMzQsNTIgKzM0LDU2IEBACiAjZGVmaW5lIFZJUlRJT19CTEtfRl9XQ0UgOQogI2RlZmluZSBWSVJUSU9fQkxLX0ZfVE9QT0xPR1kgMTAKICNkZWZpbmUgVklSVElPX0JMS19GX0NPTkZJR19XQ0UgMTEKLSNkZWZpbmUgVklSVElPX0JMS19GX0ZMVVNIIFZJUlRJT19CTEtfRl9XQ0UKKyNkZWZpbmUgVklSVElPX0JMS19GX01RIDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSVJUSU9fQkxLX0ZfRkxVU0ggVklSVElPX0JMS19GX1dDRQogI2RlZmluZSBWSVJUSU9fQkxLX0lEX0JZVEVTIDIwCiBzdHJ1Y3QgdmlydGlvX2Jsa19jb25maWcgewotIF9fdTY0IGNhcGFjaXR5OwotIF9fdTMyIHNpemVfbWF4OworICBfX3U2NCBjYXBhY2l0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2VnX21heDsKLSBzdHJ1Y3QgdmlydGlvX2Jsa19nZW9tZXRyeSB7Ci0gX191MTYgY3lsaW5kZXJzOwotIF9fdTggaGVhZHM7CisgIF9fdTMyIHNpemVfbWF4OworICBfX3UzMiBzZWdfbWF4OworICBzdHJ1Y3QgdmlydGlvX2Jsa19nZW9tZXRyeSB7CisgICAgX191MTYgY3lsaW5kZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlY3RvcnM7Ci0gfSBnZW9tZXRyeTsKLSBfX3UzMiBibGtfc2l6ZTsKLSBfX3U4IHBoeXNpY2FsX2Jsb2NrX2V4cDsKKyAgICBfX3U4IGhlYWRzOworICAgIF9fdTggc2VjdG9yczsKKyAgfSBnZW9tZXRyeTsKKyAgX191MzIgYmxrX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWxpZ25tZW50X29mZnNldDsKLSBfX3UxNiBtaW5faW9fc2l6ZTsKLSBfX3UzMiBvcHRfaW9fc2l6ZTsKLSBfX3U4IHdjZTsKKyAgX191OCBwaHlzaWNhbF9ibG9ja19leHA7CisgIF9fdTggYWxpZ25tZW50X29mZnNldDsKKyAgX191MTYgbWluX2lvX3NpemU7CisgIF9fdTMyIG9wdF9pb19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB3Y2U7CisgIF9fdTggdW51c2VkOworICBfX3UxNiBudW1fcXVldWVzOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CTEtfVF9JTiAwCiAjZGVmaW5lIFZJUlRJT19CTEtfVF9PVVQgMQogI2RlZmluZSBWSVJUSU9fQkxLX1RfU0NTSV9DTUQgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0JMS19UX0ZMVVNIIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CTEtfVF9HRVRfSUQgOAogI2RlZmluZSBWSVJUSU9fQkxLX1RfQkFSUklFUiAweDgwMDAwMDAwCiBzdHJ1Y3QgdmlydGlvX2Jsa19vdXRoZHIgeworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIGlvcHJpbzsKLSBfX3U2NCBzZWN0b3I7CisgIF9fdTMyIGlvcHJpbzsKKyAgX191NjQgc2VjdG9yOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmlydGlvX3Njc2lfaW5oZHIgewotIF9fdTMyIGVycm9yczsKLSBfX3UzMiBkYXRhX2xlbjsKLSBfX3UzMiBzZW5zZV9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2lkdWFsOworICBfX3UzMiBlcnJvcnM7CisgIF9fdTMyIGRhdGFfbGVuOworICBfX3UzMiBzZW5zZV9sZW47CisgIF9fdTMyIHJlc2lkdWFsOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFZJUlRJT19CTEtfU19PSyAwCiAjZGVmaW5lIFZJUlRJT19CTEtfU19JT0VSUiAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fQkxLX1NfVU5TVVBQIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2NvbnNvbGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2NvbnNvbGUuaAppbmRleCA4MWQ1MTVjLi45Y2NmNzcwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19jb25zb2xlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fY29uc29sZS5oCkBAIC0yNiwxOSArMjYsMTkgQEAKICNkZWZpbmUgVklSVElPX0NPTlNPTEVfRl9NVUxUSVBPUlQgMQogI2RlZmluZSBWSVJUSU9fQ09OU09MRV9GX0VNRVJHX1dSSVRFIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJUlRJT19DT05TT0xFX0JBRF9JRCAofihfX3UzMikwKQorI2RlZmluZSBWSVJUSU9fQ09OU09MRV9CQURfSUQgKH4oX191MzIpIDApCiBzdHJ1Y3QgdmlydGlvX2NvbnNvbGVfY29uZmlnIHsKLSBfX3UxNiBjb2xzOwotIF9fdTE2IHJvd3M7CisgIF9fdTE2IGNvbHM7CisgIF9fdTE2IHJvd3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9ucl9wb3J0czsKLSBfX3UzMiBlbWVyZ193cjsKKyAgX191MzIgbWF4X25yX3BvcnRzOworICBfX3UzMiBlbWVyZ193cjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdmlydGlvX2NvbnNvbGVfY29udHJvbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTE2IGV2ZW50OwotIF9fdTE2IHZhbHVlOworICBfX3UzMiBpZDsKKyAgX191MTYgZXZlbnQ7CisgIF9fdTE2IHZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19DT05TT0xFX0RFVklDRV9SRUFEWSAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19uZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX25ldC5oCmluZGV4IGFhZjFiMjkuLmZlZjgwNzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX25ldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX25ldC5oCkBAIC01MywzOCArNTMsMzggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19ORVRfU19BTk5PVU5DRSAyCiBzdHJ1Y3QgdmlydGlvX25ldF9jb25maWcgewotIF9fdTggbWFjW0VUSF9BTEVOXTsKLSBfX3UxNiBzdGF0dXM7CisgIF9fdTggbWFjW0VUSF9BTEVOXTsKKyAgX191MTYgc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtYXhfdmlydHF1ZXVlX3BhaXJzOworICBfX3UxNiBtYXhfdmlydHF1ZXVlX3BhaXJzOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB2aXJ0aW9fbmV0X2hkciB7CiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0ZfTkVFRFNfQ1NVTSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fTkVUX0hEUl9GX0RBVEFfVkFMSUQgMgotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0dTT19OT05FIDAKICNkZWZpbmUgVklSVElPX05FVF9IRFJfR1NPX1RDUFY0IDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0dTT19VRFAgMwogI2RlZmluZSBWSVJUSU9fTkVUX0hEUl9HU09fVENQVjYgNAogI2RlZmluZSBWSVJUSU9fTkVUX0hEUl9HU09fRUNOIDB4ODAKLSBfX3U4IGdzb190eXBlOworICBfX3U4IGdzb190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBoZHJfbGVuOwotIF9fdTE2IGdzb19zaXplOwotIF9fdTE2IGNzdW1fc3RhcnQ7Ci0gX191MTYgY3N1bV9vZmZzZXQ7CisgIF9fdTE2IGhkcl9sZW47CisgIF9fdTE2IGdzb19zaXplOworICBfX3UxNiBjc3VtX3N0YXJ0OworICBfX3UxNiBjc3VtX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHZpcnRpb19uZXRfaGRyX21yZ19yeGJ1ZiB7Ci0gc3RydWN0IHZpcnRpb19uZXRfaGRyIGhkcjsKLSBfX3UxNiBudW1fYnVmZmVyczsKKyAgc3RydWN0IHZpcnRpb19uZXRfaGRyIGhkcjsKKyAgX191MTYgbnVtX2J1ZmZlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB2aXJ0aW9fbmV0X2N0cmxfaGRyIHsKLSBfX3U4IGNsYXNzOwotIF9fdTggY21kOworICBfX3U4IGNsYXNzOworICBfX3U4IGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogdHlwZWRlZiBfX3U4IHZpcnRpb19uZXRfY3RybF9hY2s7CkBAIC0xMDEsOCArMTAxLDggQEAKICNkZWZpbmUgVklSVElPX05FVF9DVFJMX1JYX05PQkNBU1QgNQogc3RydWN0IHZpcnRpb19uZXRfY3RybF9tYWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlbnRyaWVzOwotIF9fdTggbWFjc1tdW0VUSF9BTEVOXTsKKyAgX191MzIgZW50cmllczsKKyAgX191OCBtYWNzW11bRVRIX0FMRU5dOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVklSVElPX05FVF9DVFJMX01BQyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTE2LDcgKzExNiw3IEBACiAjZGVmaW5lIFZJUlRJT19ORVRfQ1RSTF9BTk5PVU5DRV9BQ0sgMAogc3RydWN0IHZpcnRpb19uZXRfY3RybF9tcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHZpcnRxdWV1ZV9wYWlyczsKKyAgX191MTYgdmlydHF1ZXVlX3BhaXJzOwogfTsKICNkZWZpbmUgVklSVElPX05FVF9DVFJMX01RIDQKICNkZWZpbmUgVklSVElPX05FVF9DVFJMX01RX1ZRX1BBSVJTX1NFVCAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19yaW5nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19yaW5nLmgKaW5kZXggMDU3NDBlNy4uYTE3MTg3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fcmluZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX3JpbmcuaApAQCAtMjksMzggKzI5LDM4IEBACiAjZGVmaW5lIFZJUlRJT19SSU5HX0ZfSU5ESVJFQ1RfREVTQyAyOAogI2RlZmluZSBWSVJUSU9fUklOR19GX0VWRU5UX0lEWCAyOQogc3RydWN0IHZyaW5nX2Rlc2MgewotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbjsKLSBfX3UxNiBmbGFnczsKLSBfX3UxNiBuZXh0OworICBfX3UzMiBsZW47CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBuZXh0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdnJpbmdfYXZhaWwgewotIF9fdTE2IGZsYWdzOwotIF9fdTE2IGlkeDsKLSBfX3UxNiByaW5nW107CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBpZHg7CisgIF9fdTE2IHJpbmdbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHZyaW5nX3VzZWRfZWxlbSB7Ci0gX191MzIgaWQ7Ci0gX191MzIgbGVuOworICBfX3UzMiBpZDsKKyAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdnJpbmdfdXNlZCB7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgaWR4OworICBfX3UxNiBmbGFnczsKKyAgX191MTYgaWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdnJpbmdfdXNlZF9lbGVtIHJpbmdbXTsKKyAgc3RydWN0IHZyaW5nX3VzZWRfZWxlbSByaW5nW107CiB9Owogc3RydWN0IHZyaW5nIHsKLSB1bnNpZ25lZCBpbnQgbnVtOworICB1bnNpZ25lZCBpbnQgbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdnJpbmdfZGVzYyAqZGVzYzsKLSBzdHJ1Y3QgdnJpbmdfYXZhaWwgKmF2YWlsOwotIHN0cnVjdCB2cmluZ191c2VkICp1c2VkOworICBzdHJ1Y3QgdnJpbmdfZGVzYyAqIGRlc2M7CisgIHN0cnVjdCB2cmluZ19hdmFpbCAqIGF2YWlsOworICBzdHJ1Y3QgdnJpbmdfdXNlZCAqIHVzZWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgdnJpbmdfdXNlZF9ldmVudCh2cikgKCh2ciktPmF2YWlsLT5yaW5nWyh2ciktPm51bV0pCi0jZGVmaW5lIHZyaW5nX2F2YWlsX2V2ZW50KHZyKSAoKihfX3UxNiAqKSYodnIpLT51c2VkLT5yaW5nWyh2ciktPm51bV0pCisjZGVmaW5lIHZyaW5nX2F2YWlsX2V2ZW50KHZyKSAoKiAoX191MTYgKikgJiAodnIpLT51c2VkLT5yaW5nWyh2ciktPm51bV0pCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdm1fc29ja2V0cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92bV9zb2NrZXRzLmgKaW5kZXggMjBlN2I4Yy4uYzVjNmZkNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92bV9zb2NrZXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92bV9zb2NrZXRzLmgKQEAgLTI4LDI5ICsyOCwyNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09fVk1fU09DS0VUU19DT05ORUNUX1RJTUVPVVQgNgogI2RlZmluZSBTT19WTV9TT0NLRVRTX05PTkJMT0NLX1RYUlggNwotI2RlZmluZSBWTUFERFJfQ0lEX0FOWSAtMVUKLSNkZWZpbmUgVk1BRERSX1BPUlRfQU5ZIC0xVQorI2RlZmluZSBWTUFERFJfQ0lEX0FOWSAtIDFVCisjZGVmaW5lIFZNQUREUl9QT1JUX0FOWSAtIDFVCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWTUFERFJfQ0lEX0hZUEVSVklTT1IgMAogI2RlZmluZSBWTUFERFJfQ0lEX1JFU0VSVkVEIDEKICNkZWZpbmUgVk1BRERSX0NJRF9IT1NUIDIKLSNkZWZpbmUgVk1fU09DS0VUU19JTlZBTElEX1ZFUlNJT04gLTFVCisjZGVmaW5lIFZNX1NPQ0tFVFNfSU5WQUxJRF9WRVJTSU9OIC0gMVUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZNX1NPQ0tFVFNfVkVSU0lPTl9FUE9DSChfdikgKCgoX3YpICYgMHhGRjAwMDAwMCkgPj4gMjQpCiAjZGVmaW5lIFZNX1NPQ0tFVFNfVkVSU0lPTl9NQUpPUihfdikgKCgoX3YpICYgMHgwMEZGMDAwMCkgPj4gMTYpCiAjZGVmaW5lIFZNX1NPQ0tFVFNfVkVSU0lPTl9NSU5PUihfdikgKCgoX3YpICYgMHgwMDAwRkZGRikpCiBzdHJ1Y3Qgc29ja2FkZHJfdm0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzdm1fZmFtaWx5OwotIHVuc2lnbmVkIHNob3J0IHN2bV9yZXNlcnZlZDE7Ci0gdW5zaWduZWQgaW50IHN2bV9wb3J0OwotIHVuc2lnbmVkIGludCBzdm1fY2lkOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzdm1fZmFtaWx5OworICB1bnNpZ25lZCBzaG9ydCBzdm1fcmVzZXJ2ZWQxOworICB1bnNpZ25lZCBpbnQgc3ZtX3BvcnQ7CisgIHVuc2lnbmVkIGludCBzdm1fY2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHN2bV96ZXJvW3NpemVvZihzdHJ1Y3Qgc29ja2FkZHIpIC0KLSBzaXplb2Yoc2FfZmFtaWx5X3QpIC0KLSBzaXplb2YodW5zaWduZWQgc2hvcnQpIC0KLSBzaXplb2YodW5zaWduZWQgaW50KSAtIHNpemVvZih1bnNpZ25lZCBpbnQpXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgc3ZtX3plcm9bc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLSBzaXplb2Yoc2FfZmFtaWx5X3QpIC0gc2l6ZW9mKHVuc2lnbmVkIHNob3J0KSAtIHNpemVvZih1bnNpZ25lZCBpbnQpIC0gc2l6ZW9mKHVuc2lnbmVkIGludCldOwogfTsKICNkZWZpbmUgSU9DVExfVk1fU09DS0VUU19HRVRfTE9DQUxfQ0lEIF9JTyg3LCAweGI5KQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92c3AxLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZzcDEuaAppbmRleCBiNzUyMmU3Li4yOGY3ZmNkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZzcDEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZzcDEuaApAQCAtMjEsOSArMjEsOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvdmlkZW9kZXYyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWSURJT0NfVlNQMV9MVVRfQ09ORklHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMSwgc3RydWN0IHZzcDFfbHV0X2NvbmZpZykKKyNkZWZpbmUgVklESU9DX1ZTUDFfTFVUX0NPTkZJRyBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAxLCBzdHJ1Y3QgdnNwMV9sdXRfY29uZmlnKQogc3RydWN0IHZzcDFfbHV0X2NvbmZpZyB7Ci0gdTMyIGx1dFsyNTZdOworICB1MzIgbHV0WzI1Nl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92dC5oCmluZGV4IDY2NGYzN2YuLmM5YTgyNDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Z0LmgKQEAgLTI0LDEyICsyNCwxMiBAQAogI2RlZmluZSBNQVhfTlJfVVNFUl9DT05TT0xFUyA2MwogI2RlZmluZSBWVF9PUEVOUVJZIDB4NTYwMAogc3RydWN0IHZ0X21vZGUgewotIGNoYXIgbW9kZTsKKyAgY2hhciBtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHdhaXR2OwotIHNob3J0IHJlbHNpZzsKLSBzaG9ydCBhY3FzaWc7Ci0gc2hvcnQgZnJzaWc7CisgIGNoYXIgd2FpdHY7CisgIHNob3J0IHJlbHNpZzsKKyAgc2hvcnQgYWNxc2lnOworICBzaG9ydCBmcnNpZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBWVF9HRVRNT0RFIDB4NTYwMQpAQCAtMzksMTAgKzM5LDEwIEBACiAjZGVmaW5lIFZUX1BST0NFU1MgMHgwMQogI2RlZmluZSBWVF9BQ0tBQ1EgMHgwMgogc3RydWN0IHZ0X3N0YXQgewotIHVuc2lnbmVkIHNob3J0IHZfYWN0aXZlOworICB1bnNpZ25lZCBzaG9ydCB2X2FjdGl2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgdl9zaWduYWw7Ci0gdW5zaWduZWQgc2hvcnQgdl9zdGF0ZTsKKyAgdW5zaWduZWQgc2hvcnQgdl9zaWduYWw7CisgIHVuc2lnbmVkIHNob3J0IHZfc3RhdGU7CiB9OwogI2RlZmluZSBWVF9HRVRTVEFURSAweDU2MDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC01MywyMSArNTMsMjEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZUX0RJU0FMTE9DQVRFIDB4NTYwOAogc3RydWN0IHZ0X3NpemVzIHsKLSB1bnNpZ25lZCBzaG9ydCB2X3Jvd3M7Ci0gdW5zaWduZWQgc2hvcnQgdl9jb2xzOworICB1bnNpZ25lZCBzaG9ydCB2X3Jvd3M7CisgIHVuc2lnbmVkIHNob3J0IHZfY29sczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgdl9zY3JvbGxzaXplOworICB1bnNpZ25lZCBzaG9ydCB2X3Njcm9sbHNpemU7CiB9OwogI2RlZmluZSBWVF9SRVNJWkUgMHg1NjA5CiBzdHJ1Y3QgdnRfY29uc2l6ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHZfcm93czsKLSB1bnNpZ25lZCBzaG9ydCB2X2NvbHM7Ci0gdW5zaWduZWQgc2hvcnQgdl92bGluOwotIHVuc2lnbmVkIHNob3J0IHZfY2xpbjsKKyAgdW5zaWduZWQgc2hvcnQgdl9yb3dzOworICB1bnNpZ25lZCBzaG9ydCB2X2NvbHM7CisgIHVuc2lnbmVkIHNob3J0IHZfdmxpbjsKKyAgdW5zaWduZWQgc2hvcnQgdl9jbGluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB2X3Zjb2w7Ci0gdW5zaWduZWQgc2hvcnQgdl9jY29sOworICB1bnNpZ25lZCBzaG9ydCB2X3Zjb2w7CisgIHVuc2lnbmVkIHNob3J0IHZfY2NvbDsKIH07CiAjZGVmaW5lIFZUX1JFU0laRVggMHg1NjBBCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzYsMjUgKzc2LDI1IEBACiAjZGVmaW5lIFZUX0dFVEhJRk9OVE1BU0sgMHg1NjBECiBzdHJ1Y3QgdnRfZXZlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXZlbnQ7CisgIHVuc2lnbmVkIGludCBldmVudDsKICNkZWZpbmUgVlRfRVZFTlRfU1dJVENIIDB4MDAwMQogI2RlZmluZSBWVF9FVkVOVF9CTEFOSyAweDAwMDIKICNkZWZpbmUgVlRfRVZFTlRfVU5CTEFOSyAweDAwMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZUX0VWRU5UX1JFU0laRSAweDAwMDgKICNkZWZpbmUgVlRfTUFYX0VWRU5UIDB4MDAwRgotIHVuc2lnbmVkIGludCBvbGRldjsKLSB1bnNpZ25lZCBpbnQgbmV3ZXY7CisgIHVuc2lnbmVkIGludCBvbGRldjsKKyAgdW5zaWduZWQgaW50IG5ld2V2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGFkWzRdOworICB1bnNpZ25lZCBpbnQgcGFkWzRdOwogfTsKICNkZWZpbmUgVlRfV0FJVEVWRU5UIDB4NTYwRQogc3RydWN0IHZ0X3NldGFjdGl2YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvbnNvbGU7Ci0gc3RydWN0IHZ0X21vZGUgbW9kZTsKKyAgdW5zaWduZWQgaW50IGNvbnNvbGU7CisgIHN0cnVjdCB2dF9tb2RlIG1vZGU7CiB9OwogI2RlZmluZSBWVF9TRVRBQ1RJVkFURSAweDU2MEYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIHZ0X2dldF9rbXNnX3JlZGlyZWN0KCkgdnRfa21zZ19yZWRpcmVjdCgtMSkKKyNkZWZpbmUgdnRfZ2V0X2ttc2dfcmVkaXJlY3QoKSB2dF9rbXNnX3JlZGlyZWN0KC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93YW5yb3V0ZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2Fucm91dGVyLmgKaW5kZXggZDg3OTYwMC4uZDRmNDgyMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93YW5yb3V0ZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhbnJvdXRlci5oCkBAIC0xOCwxMyArMTgsMTIgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfVUFQSV9ST1VURVJfSAogI2RlZmluZSBfVUFQSV9ST1VURVJfSAotZW51bSB3YW5fc3RhdGVzCi17CitlbnVtIHdhbl9zdGF0ZXMgeworICBXQU5fVU5DT05GSUdVUkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXQU5fVU5DT05GSUdVUkVELAotIFdBTl9ESVNDT05ORUNURUQsCi0gV0FOX0NPTk5FQ1RJTkcsCi0gV0FOX0NPTk5FQ1RFRAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgV0FOX0RJU0NPTk5FQ1RFRCwKKyAgV0FOX0NPTk5FQ1RJTkcsCisgIFdBTl9DT05ORUNURUQKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhdGNoZG9nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhdGNoZG9nLmgKaW5kZXggMDVhOWJjOC4uYjhhOWMzMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93YXRjaGRvZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2F0Y2hkb2cuaApAQCAtMjMsMTAgKzIzLDEwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVRDSERPR19JT0NUTF9CQVNFICdXJwogc3RydWN0IHdhdGNoZG9nX2luZm8gewotIF9fdTMyIG9wdGlvbnM7Ci0gX191MzIgZmlybXdhcmVfdmVyc2lvbjsKKyAgX191MzIgb3B0aW9uczsKKyAgX191MzIgZmlybXdhcmVfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpZGVudGl0eVszMl07CisgIF9fdTggaWRlbnRpdHlbMzJdOwogfTsKICNkZWZpbmUgV0RJT0NfR0VUU1VQUE9SVCBfSU9SKFdBVENIRE9HX0lPQ1RMX0JBU0UsIDAsIHN0cnVjdCB3YXRjaGRvZ19pbmZvKQogI2RlZmluZSBXRElPQ19HRVRTVEFUVVMgX0lPUihXQVRDSERPR19JT0NUTF9CQVNFLCAxLCBpbnQpCkBAIC00Miw4ICs0Miw4IEBACiAjZGVmaW5lIFdESU9DX0dFVFBSRVRJTUVPVVQgX0lPUihXQVRDSERPR19JT0NUTF9CQVNFLCA5LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXRElPQ19HRVRUSU1FTEVGVCBfSU9SKFdBVENIRE9HX0lPQ1RMX0JBU0UsIDEwLCBpbnQpCi0jZGVmaW5lIFdESU9GX1VOS05PV04gLTEKLSNkZWZpbmUgV0RJT1NfVU5LTk9XTiAtMQorI2RlZmluZSBXRElPRl9VTktOT1dOIC0gMQorI2RlZmluZSBXRElPU19VTktOT1dOIC0gMQogI2RlZmluZSBXRElPRl9PVkVSSEVBVCAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdESU9GX0ZBTkZBVUxUIDB4MDAwMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aWw2MjEwX3VhcGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2lsNjIxMF91YXBpLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTJhZWQwZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2lsNjIxMF91YXBpLmgKQEAgLTAsMCArMSw1MSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfX1dJTDYyMTBfVUFQSV9IX18KKyNkZWZpbmUgX19XSUw2MjEwX1VBUElfSF9fCisjZGVmaW5lIF9fdXNlcgorI2luY2x1ZGUgPGxpbnV4L3NvY2tpb3MuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFdJTF9JT0NUTF9NRU1JTyAoU0lPQ0RFVlBSSVZBVEUgKyAyKQorI2RlZmluZSBXSUxfSU9DVExfTUVNSU9fQkxPQ0sgKFNJT0NERVZQUklWQVRFICsgMykKK2VudW0gd2lsX21lbWlvX29wIHsKKyAgd2lsX21taW9fcmVhZCA9IDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB3aWxfbW1pb193cml0ZSA9IDEsCisgIHdpbF9tbWlvX29wX21hc2sgPSAweGZmLAorICB3aWxfbW1pb19hZGRyX2xpbmtlciA9IDAgPDwgOCwKKyAgd2lsX21taW9fYWRkcl9haGIgPSAxIDw8IDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB3aWxfbW1pb19hZGRyX2JhciA9IDIgPDwgOCwKKyAgd2lsX21taW9fYWRkcl9tYXNrID0gMHhmZjAwLAorfTsKK3N0cnVjdCB3aWxfbWVtaW8geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3Qgb3A7CisgIHVpbnQzMl90IGFkZHI7CisgIHVpbnQzMl90IHZhbDsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHdpbF9tZW1pb19ibG9jayB7CisgIHVpbnQzMl90IG9wOworICB1aW50MzJfdCBhZGRyOworICB1aW50MzJfdCBzaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdm9pZCBfX3VzZXIgKiBibG9jazsKK307CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXguaAppbmRleCAxNTFhYjBkLi44YWZiNWMxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpbWF4LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC5oCkBAIC0yMSw2NSArMjEsNjUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFdJTUFYX0dOTF9WRVJTSU9OID0gMDEsCi0gV0lNQVhfR05MX0FUVFJfSU5WQUxJRCA9IDB4MDAsCi0gV0lNQVhfR05MX0FUVFJfTUFYID0gMTAsCisgIFdJTUFYX0dOTF9WRVJTSU9OID0gMDEsCisgIFdJTUFYX0dOTF9BVFRSX0lOVkFMSUQgPSAweDAwLAorICBXSU1BWF9HTkxfQVRUUl9NQVggPSAxMCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gV0lNQVhfR05MX09QX01TR19GUk9NX1VTRVIsCi0gV0lNQVhfR05MX09QX01TR19UT19VU0VSLAotIFdJTUFYX0dOTF9PUF9SRktJTEwsCisgIFdJTUFYX0dOTF9PUF9NU0dfRlJPTV9VU0VSLAorICBXSU1BWF9HTkxfT1BfTVNHX1RPX1VTRVIsCisgIFdJTUFYX0dOTF9PUF9SRktJTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFdJTUFYX0dOTF9PUF9SRVNFVCwKLSBXSU1BWF9HTkxfUkVfU1RBVEVfQ0hBTkdFLAotIFdJTUFYX0dOTF9PUF9TVEFURV9HRVQsCisgIFdJTUFYX0dOTF9PUF9SRVNFVCwKKyAgV0lNQVhfR05MX1JFX1NUQVRFX0NIQU5HRSwKKyAgV0lNQVhfR05MX09QX1NUQVRFX0dFVCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gV0lNQVhfR05MX01TR19JRklEWCA9IDEsCi0gV0lNQVhfR05MX01TR19QSVBFX05BTUUsCi0gV0lNQVhfR05MX01TR19EQVRBLAorICBXSU1BWF9HTkxfTVNHX0lGSURYID0gMSwKKyAgV0lNQVhfR05MX01TR19QSVBFX05BTUUsCisgIFdJTUFYX0dOTF9NU0dfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB3aW1heF9yZl9zdGF0ZSB7Ci0gV0lNQVhfUkZfT0ZGID0gMCwKLSBXSU1BWF9SRl9PTiA9IDEsCisgIFdJTUFYX1JGX09GRiA9IDAsCisgIFdJTUFYX1JGX09OID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gV0lNQVhfUkZfUVVFUlkgPSAyLAorICBXSU1BWF9SRl9RVUVSWSA9IDIsCiB9OwogZW51bSB7Ci0gV0lNQVhfR05MX1JGS0lMTF9JRklEWCA9IDEsCisgIFdJTUFYX0dOTF9SRktJTExfSUZJRFggPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXSU1BWF9HTkxfUkZLSUxMX1NUQVRFLAorICBXSU1BWF9HTkxfUkZLSUxMX1NUQVRFLAogfTsKIGVudW0gewotIFdJTUFYX0dOTF9SRVNFVF9JRklEWCA9IDEsCisgIFdJTUFYX0dOTF9SRVNFVF9JRklEWCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFdJTUFYX0dOTF9TVEdFVF9JRklEWCA9IDEsCisgIFdJTUFYX0dOTF9TVEdFVF9JRklEWCA9IDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFdJTUFYX0dOTF9TVENIX0lGSURYID0gMSwKLSBXSU1BWF9HTkxfU1RDSF9TVEFURV9PTEQsCi0gV0lNQVhfR05MX1NUQ0hfU1RBVEVfTkVXLAorICBXSU1BWF9HTkxfU1RDSF9JRklEWCA9IDEsCisgIFdJTUFYX0dOTF9TVENIX1NUQVRFX09MRCwKKyAgV0lNQVhfR05MX1NUQ0hfU1RBVEVfTkVXLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0gZW51bSB3aW1heF9zdCB7Ci0gX19XSU1BWF9TVF9OVUxMID0gMCwKLSBXSU1BWF9TVF9ET1dOLAorZW51bSB3aW1heF9zdCB7CisgIF9fV0lNQVhfU1RfTlVMTCA9IDAsCisgIFdJTUFYX1NUX0RPV04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fV0lNQVhfU1RfUVVJRVNDSU5HLAotIFdJTUFYX1NUX1VOSU5JVElBTElaRUQsCi0gV0lNQVhfU1RfUkFESU9fT0ZGLAotIFdJTUFYX1NUX1JFQURZLAorICBfX1dJTUFYX1NUX1FVSUVTQ0lORywKKyAgV0lNQVhfU1RfVU5JTklUSUFMSVpFRCwKKyAgV0lNQVhfU1RfUkFESU9fT0ZGLAorICBXSU1BWF9TVF9SRUFEWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gV0lNQVhfU1RfU0NBTk5JTkcsCi0gV0lNQVhfU1RfQ09OTkVDVElORywKLSBXSU1BWF9TVF9DT05ORUNURUQsCi0gX19XSU1BWF9TVF9JTlZBTElECisgIFdJTUFYX1NUX1NDQU5OSU5HLAorICBXSU1BWF9TVF9DT05ORUNUSU5HLAorICBXSU1BWF9TVF9DT05ORUNURUQsCisgIF9fV0lNQVhfU1RfSU5WQUxJRAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXgvaTI0MDBtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpbWF4L2kyNDAwbS5oCmluZGV4IDMwNTg1YTguLmUyNDcyOWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXgvaTI0MDBtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC9pMjQwMG0uaApAQCAtMjIsMzYwICsyMiwzNjAgQEAKICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMjQwMG1fYmNmX2hkciB7Ci0gX19sZTMyIG1vZHVsZV90eXBlOwotIF9fbGUzMiBoZWFkZXJfbGVuOwotIF9fbGUzMiBoZWFkZXJfdmVyc2lvbjsKKyAgX19sZTMyIG1vZHVsZV90eXBlOworICBfX2xlMzIgaGVhZGVyX2xlbjsKKyAgX19sZTMyIGhlYWRlcl92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgbW9kdWxlX2lkOwotIF9fbGUzMiBtb2R1bGVfdmVuZG9yOwotIF9fbGUzMiBkYXRlOwotIF9fbGUzMiBzaXplOworICBfX2xlMzIgbW9kdWxlX2lkOworICBfX2xlMzIgbW9kdWxlX3ZlbmRvcjsKKyAgX19sZTMyIGRhdGU7CisgIF9fbGUzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIga2V5X3NpemU7Ci0gX19sZTMyIG1vZHVsdXNfc2l6ZTsKLSBfX2xlMzIgZXhwb25lbnRfc2l6ZTsKLSBfX3U4IHJlc2VydmVkWzg4XTsKKyAgX19sZTMyIGtleV9zaXplOworICBfX2xlMzIgbW9kdWx1c19zaXplOworICBfX2xlMzIgZXhwb25lbnRfc2l6ZTsKKyAgX191OCByZXNlcnZlZFs4OF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSBpMjQwMG1fYnJoX29wY29kZSB7Ci0gSTI0MDBNX0JSSF9SRUFEID0gMSwKLSBJMjQwME1fQlJIX1dSSVRFID0gMiwKKyAgSTI0MDBNX0JSSF9SRUFEID0gMSwKKyAgSTI0MDBNX0JSSF9XUklURSA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9CUkhfSlVNUCA9IDMsCi0gSTI0MDBNX0JSSF9TSUdORURfSlVNUCA9IDgsCi0gSTI0MDBNX0JSSF9IQVNIX1BBWUxPQURfT05MWSA9IDksCisgIEkyNDAwTV9CUkhfSlVNUCA9IDMsCisgIEkyNDAwTV9CUkhfU0lHTkVEX0pVTVAgPSA4LAorICBJMjQwME1fQlJIX0hBU0hfUEFZTE9BRF9PTkxZID0gOSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpMjQwMG1fYnJoIHsKLSBJMjQwME1fQlJIX1NJR05BVFVSRSA9IDB4Y2JiYzAwMDAsCi0gSTI0MDBNX0JSSF9TSUdOQVRVUkVfTUFTSyA9IDB4ZmZmZjAwMDAsCi0gSTI0MDBNX0JSSF9TSUdOQVRVUkVfU0hJRlQgPSAxNiwKKyAgSTI0MDBNX0JSSF9TSUdOQVRVUkUgPSAweGNiYmMwMDAwLAorICBJMjQwME1fQlJIX1NJR05BVFVSRV9NQVNLID0gMHhmZmZmMDAwMCwKKyAgSTI0MDBNX0JSSF9TSUdOQVRVUkVfU0hJRlQgPSAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX0JSSF9PUENPREVfTUFTSyA9IDB4MDAwMDAwMGYsCi0gSTI0MDBNX0JSSF9SRVNQT05TRV9NQVNLID0gMHgwMDAwMDBmMCwKLSBJMjQwME1fQlJIX1JFU1BPTlNFX1NISUZUID0gNCwKLSBJMjQwME1fQlJIX0RJUkVDVF9BQ0NFU1MgPSAweDAwMDAwNDAwLAorICBJMjQwME1fQlJIX09QQ09ERV9NQVNLID0gMHgwMDAwMDAwZiwKKyAgSTI0MDBNX0JSSF9SRVNQT05TRV9NQVNLID0gMHgwMDAwMDBmMCwKKyAgSTI0MDBNX0JSSF9SRVNQT05TRV9TSElGVCA9IDQsCisgIEkyNDAwTV9CUkhfRElSRUNUX0FDQ0VTUyA9IDB4MDAwMDA0MDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9CUkhfUkVTUE9OU0VfUkVRVUlSRUQgPSAweDAwMDAwMjAwLAotIEkyNDAwTV9CUkhfVVNFX0NIRUNLU1VNID0gMHgwMDAwMDEwMCwKKyAgSTI0MDBNX0JSSF9SRVNQT05TRV9SRVFVSVJFRCA9IDB4MDAwMDAyMDAsCisgIEkyNDAwTV9CUkhfVVNFX0NIRUNLU1VNID0gMHgwMDAwMDEwMCwKIH07CiBzdHJ1Y3QgaTI0MDBtX2Jvb3Ryb21faGVhZGVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGNvbW1hbmQ7Ci0gX19sZTMyIHRhcmdldF9hZGRyOwotIF9fbGUzMiBkYXRhX3NpemU7Ci0gX19sZTMyIGJsb2NrX2NoZWNrc3VtOworICBfX2xlMzIgY29tbWFuZDsKKyAgX19sZTMyIHRhcmdldF9hZGRyOworICBfX2xlMzIgZGF0YV9zaXplOworICBfX2xlMzIgYmxvY2tfY2hlY2tzdW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcGF5bG9hZFswXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBjaGFyIHBheWxvYWRbMF07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSBpMjQwMG1fcHQgewotIEkyNDAwTV9QVF9EQVRBID0gMCwKKyAgSTI0MDBNX1BUX0RBVEEgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUFRfQ1RSTCwKLSBJMjQwME1fUFRfVFJBQ0UsCi0gSTI0MDBNX1BUX1JFU0VUX1dBUk0sCi0gSTI0MDBNX1BUX1JFU0VUX0NPTEQsCisgIEkyNDAwTV9QVF9DVFJMLAorICBJMjQwME1fUFRfVFJBQ0UsCisgIEkyNDAwTV9QVF9SRVNFVF9XQVJNLAorICBJMjQwME1fUFRfUkVTRVRfQ09MRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1BUX0VEQVRBLAotIEkyNDAwTV9QVF9JTExFR0FMCisgIEkyNDAwTV9QVF9FREFUQSwKKyAgSTI0MDBNX1BUX0lMTEVHQUwKIH07CiBzdHJ1Y3QgaTI0MDBtX3BsX2RhdGFfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJlc2VydmVkOworICBfX2xlMzIgcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGkyNDAwbV9wbF9lZGF0YV9oZHIgewotIF9fbGUzMiByZW9yZGVyOworICBfX2xlMzIgcmVvcmRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjczsKLSBfX3U4IHJlc2VydmVkWzExXTsKKyAgX191OCBjczsKKyAgX191OCByZXNlcnZlZFsxMV07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSBpMjQwMG1fY3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fQ1NfSVBWNF8wID0gMCwKLSBJMjQwME1fQ1NfSVBWNCA9IDIsCisgIEkyNDAwTV9DU19JUFY0XzAgPSAwLAorICBJMjQwME1fQ1NfSVBWNCA9IDIsCiB9OwogZW51bSBpMjQwMG1fcm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUk9fTkVFREVEID0gMHgwMSwKLSBJMjQwME1fUk9fVFlQRSA9IDB4MDMsCi0gSTI0MDBNX1JPX1RZUEVfU0hJRlQgPSAxLAotIEkyNDAwTV9ST19DSU4gPSAweDBmLAorICBJMjQwME1fUk9fTkVFREVEID0gMHgwMSwKKyAgSTI0MDBNX1JPX1RZUEUgPSAweDAzLAorICBJMjQwME1fUk9fVFlQRV9TSElGVCA9IDEsCisgIEkyNDAwTV9ST19DSU4gPSAweDBmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUk9fQ0lOX1NISUZUID0gNCwKLSBJMjQwME1fUk9fRkJOID0gMHgwN2ZmLAotIEkyNDAwTV9ST19GQk5fU0hJRlQgPSA4LAotIEkyNDAwTV9ST19TTiA9IDB4MDdmZiwKKyAgSTI0MDBNX1JPX0NJTl9TSElGVCA9IDQsCisgIEkyNDAwTV9ST19GQk4gPSAweDA3ZmYsCisgIEkyNDAwTV9ST19GQk5fU0hJRlQgPSA4LAorICBJMjQwME1fUk9fU04gPSAweDA3ZmYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9ST19TTl9TSElGVCA9IDIxLAorICBJMjQwME1fUk9fU05fU0hJRlQgPSAyMSwKIH07CiBlbnVtIGkyNDAwbV9yb190eXBlIHsKLSBJMjQwME1fUk9fVFlQRV9SRVNFVCA9IDAsCisgIEkyNDAwTV9ST19UWVBFX1JFU0VUID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1JPX1RZUEVfUEFDS0VULAotIEkyNDAwTV9ST19UWVBFX1dTLAotIEkyNDAwTV9ST19UWVBFX1BBQ0tFVF9XUywKKyAgSTI0MDBNX1JPX1RZUEVfUEFDS0VULAorICBJMjQwME1fUk9fVFlQRV9XUywKKyAgSTI0MDBNX1JPX1RZUEVfUEFDS0VUX1dTLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJMjQwME1fUExfQUxJR04gPSAxNiwKLSBJMjQwME1fUExfU0laRV9NQVggPSAweDNFRkYsCi0gSTI0MDBNX01BWF9QTFNfSU5fTVNHID0gNjAsCisgIEkyNDAwTV9QTF9BTElHTiA9IDE2LAorICBJMjQwME1fUExfU0laRV9NQVggPSAweDNFRkYsCisgIEkyNDAwTV9NQVhfUExTX0lOX01TRyA9IDYwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fSDJEX1BSRVZJRVdfQkFSS0VSID0gMHhjYWZlOTAwZCwKLSBJMjQwME1fQ09MRF9SRVNFVF9CQVJLRVIgPSAweGMwMWRjMDFkLAotIEkyNDAwTV9XQVJNX1JFU0VUX0JBUktFUiA9IDB4NTBmNzUwZjcsCi0gSTI0MDBNX05CT09UX0JBUktFUiA9IDB4ZGVhZGJlZWYsCisgIEkyNDAwTV9IMkRfUFJFVklFV19CQVJLRVIgPSAweGNhZmU5MDBkLAorICBJMjQwME1fQ09MRF9SRVNFVF9CQVJLRVIgPSAweGMwMWRjMDFkLAorICBJMjQwME1fV0FSTV9SRVNFVF9CQVJLRVIgPSAweDUwZjc1MGY3LAorICBJMjQwME1fTkJPT1RfQkFSS0VSID0gMHhkZWFkYmVlZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1NCT09UX0JBUktFUiA9IDB4MGZmMWMxYTEsCi0gSTI0MDBNX1NCT09UX0JBUktFUl82MDUwID0gMHg4MDAwMDAwMSwKLSBJMjQwME1fQUNLX0JBUktFUiA9IDB4ZmVlZGJhYmUsCi0gSTI0MDBNX0QySF9NU0dfQkFSS0VSID0gMHhiZWVmYmFiZSwKKyAgSTI0MDBNX1NCT09UX0JBUktFUiA9IDB4MGZmMWMxYTEsCisgIEkyNDAwTV9TQk9PVF9CQVJLRVJfNjA1MCA9IDB4ODAwMDAwMDEsCisgIEkyNDAwTV9BQ0tfQkFSS0VSID0gMHhmZWVkYmFiZSwKKyAgSTI0MDBNX0QySF9NU0dfQkFSS0VSID0gMHhiZWVmYmFiZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGkyNDAwbV9wbGQgewotIF9fbGUzMiB2YWw7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTMyIHZhbDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJMjQwME1fUExEX1NJWkVfTUFTSyAweDAwMDAzZmZmCiAjZGVmaW5lIEkyNDAwTV9QTERfVFlQRV9TSElGVCAxNgogI2RlZmluZSBJMjQwME1fUExEX1RZUEVfTUFTSyAweDAwMGYwMDAwCiBzdHJ1Y3QgaTI0MDBtX21zZ19oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX19sZTMyIGJhcmtlcjsKLSBfX3UzMiBzaXplOwotIH07CisgIHVuaW9uIHsKKyAgICBfX2xlMzIgYmFya2VyOworICAgIF9fdTMyIHNpemU7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX2xlMzIgc2VxdWVuY2U7Ci0gX191MzIgb2Zmc2V0OwotIH07CisgIHVuaW9uIHsKKyAgICBfX2xlMzIgc2VxdWVuY2U7CisgICAgX191MzIgb2Zmc2V0OworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgbnVtX3BsczsKLSBfX2xlMTYgcnN2MTsKLSBfX2xlMTYgcGFkZGluZzsKLSBfX2xlMTYgcnN2MjsKKyAgX19sZTE2IG51bV9wbHM7CisgIF9fbGUxNiByc3YxOworICBfX2xlMTYgcGFkZGluZzsKKyAgX19sZTE2IHJzdjI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpMjQwMG1fcGxkIHBsZFswXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBzdHJ1Y3QgaTI0MDBtX3BsZCBwbGRbMF07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSB7Ci0gSTI0MDBNX0wzTDRfVkVSU0lPTiA9IDB4MDEwMCwKKyAgSTI0MDBNX0wzTDRfVkVSU0lPTiA9IDB4MDEwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBpMjQwMG1fbXQgewotIEkyNDAwTV9NVF9SRVNFUlZFRCA9IDB4MDAwMCwKLSBJMjQwME1fTVRfSU5WQUxJRCA9IDB4ZmZmZiwKKyAgSTI0MDBNX01UX1JFU0VSVkVEID0gMHgwMDAwLAorICBJMjQwME1fTVRfSU5WQUxJRCA9IDB4ZmZmZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01UX1JFUE9SVF9NQVNLID0gMHg4MDAwLAotIEkyNDAwTV9NVF9HRVRfU0NBTl9SRVNVTFQgPSAweDQyMDIsCi0gSTI0MDBNX01UX1NFVF9TQ0FOX1BBUkFNID0gMHg0NDAyLAotIEkyNDAwTV9NVF9DTURfUkZfQ09OVFJPTCA9IDB4NDYwMiwKKyAgSTI0MDBNX01UX1JFUE9SVF9NQVNLID0gMHg4MDAwLAorICBJMjQwME1fTVRfR0VUX1NDQU5fUkVTVUxUID0gMHg0MjAyLAorICBJMjQwME1fTVRfU0VUX1NDQU5fUEFSQU0gPSAweDQ0MDIsCisgIEkyNDAwTV9NVF9DTURfUkZfQ09OVFJPTCA9IDB4NDYwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01UX0NNRF9TQ0FOID0gMHg0NjAzLAotIEkyNDAwTV9NVF9DTURfQ09OTkVDVCA9IDB4NDYwNCwKLSBJMjQwME1fTVRfQ01EX0RJU0NPTk5FQ1QgPSAweDQ2MDUsCi0gSTI0MDBNX01UX0NNRF9FWElUX0lETEUgPSAweDQ2MDYsCisgIEkyNDAwTV9NVF9DTURfU0NBTiA9IDB4NDYwMywKKyAgSTI0MDBNX01UX0NNRF9DT05ORUNUID0gMHg0NjA0LAorICBJMjQwME1fTVRfQ01EX0RJU0NPTk5FQ1QgPSAweDQ2MDUsCisgIEkyNDAwTV9NVF9DTURfRVhJVF9JRExFID0gMHg0NjA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfR0VUX0xNX1ZFUlNJT04gPSAweDUyMDEsCi0gSTI0MDBNX01UX0dFVF9ERVZJQ0VfSU5GTyA9IDB4NTIwMiwKLSBJMjQwME1fTVRfR0VUX0xJTktfU1RBVFVTID0gMHg1MjAzLAotIEkyNDAwTV9NVF9HRVRfU1RBVElTVElDUyA9IDB4NTIwNCwKKyAgSTI0MDBNX01UX0dFVF9MTV9WRVJTSU9OID0gMHg1MjAxLAorICBJMjQwME1fTVRfR0VUX0RFVklDRV9JTkZPID0gMHg1MjAyLAorICBJMjQwME1fTVRfR0VUX0xJTktfU1RBVFVTID0gMHg1MjAzLAorICBJMjQwME1fTVRfR0VUX1NUQVRJU1RJQ1MgPSAweDUyMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9HRVRfU1RBVEUgPSAweDUyMDUsCi0gSTI0MDBNX01UX0dFVF9NRURJQV9TVEFUVVMgPSAweDUyMDYsCi0gSTI0MDBNX01UX1NFVF9JTklUX0NPTkZJRyA9IDB4NTQwNCwKLSBJMjQwME1fTVRfQ01EX0lOSVQgPSAweDU2MDEsCisgIEkyNDAwTV9NVF9HRVRfU1RBVEUgPSAweDUyMDUsCisgIEkyNDAwTV9NVF9HRVRfTUVESUFfU1RBVFVTID0gMHg1MjA2LAorICBJMjQwME1fTVRfU0VUX0lOSVRfQ09ORklHID0gMHg1NDA0LAorICBJMjQwME1fTVRfQ01EX0lOSVQgPSAweDU2MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9DTURfVEVSTUlOQVRFID0gMHg1NjAyLAotIEkyNDAwTV9NVF9DTURfTU9ERV9PRl9PUCA9IDB4NTYwMywKLSBJMjQwME1fTVRfQ01EX1JFU0VUX0RFVklDRSA9IDB4NTYwNCwKLSBJMjQwME1fTVRfQ01EX01PTklUT1JfQ09OVFJPTCA9IDB4NTYwNSwKKyAgSTI0MDBNX01UX0NNRF9URVJNSU5BVEUgPSAweDU2MDIsCisgIEkyNDAwTV9NVF9DTURfTU9ERV9PRl9PUCA9IDB4NTYwMywKKyAgSTI0MDBNX01UX0NNRF9SRVNFVF9ERVZJQ0UgPSAweDU2MDQsCisgIEkyNDAwTV9NVF9DTURfTU9OSVRPUl9DT05UUk9MID0gMHg1NjA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfQ01EX0VOVEVSX1BPV0VSU0FWRSA9IDB4NTYwNiwKLSBJMjQwME1fTVRfR0VUX1RMU19PUEVSQVRJT05fUkVTVUxUID0gMHg2MjAxLAotIEkyNDAwTV9NVF9TRVRfRUFQX1NVQ0NFU1MgPSAweDY0MDIsCi0gSTI0MDBNX01UX1NFVF9FQVBfRkFJTCA9IDB4NjQwMywKKyAgSTI0MDBNX01UX0NNRF9FTlRFUl9QT1dFUlNBVkUgPSAweDU2MDYsCisgIEkyNDAwTV9NVF9HRVRfVExTX09QRVJBVElPTl9SRVNVTFQgPSAweDYyMDEsCisgIEkyNDAwTV9NVF9TRVRfRUFQX1NVQ0NFU1MgPSAweDY0MDIsCisgIEkyNDAwTV9NVF9TRVRfRUFQX0ZBSUwgPSAweDY0MDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9TRVRfRUFQX0tFWSA9IDB4NjQwNCwKLSBJMjQwME1fTVRfQ01EX1NFTkRfRUFQX1JFU1BPTlNFID0gMHg2NjAyLAotIEkyNDAwTV9NVF9SRVBPUlRfU0NBTl9SRVNVTFQgPSAweGMwMDIsCi0gSTI0MDBNX01UX1JFUE9SVF9TVEFURSA9IDB4ZDAwMiwKKyAgSTI0MDBNX01UX1NFVF9FQVBfS0VZID0gMHg2NDA0LAorICBJMjQwME1fTVRfQ01EX1NFTkRfRUFQX1JFU1BPTlNFID0gMHg2NjAyLAorICBJMjQwME1fTVRfUkVQT1JUX1NDQU5fUkVTVUxUID0gMHhjMDAyLAorICBJMjQwME1fTVRfUkVQT1JUX1NUQVRFID0gMHhkMDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfUkVQT1JUX1BPV0VSU0FWRV9SRUFEWSA9IDB4ZDAwNSwKLSBJMjQwME1fTVRfUkVQT1JUX0VBUF9SRVFVRVNUID0gMHhlMDAyLAotIEkyNDAwTV9NVF9SRVBPUlRfRUFQX1JFU1RBUlQgPSAweGUwMDMsCi0gSTI0MDBNX01UX1JFUE9SVF9BTFRfQUNDRVBUID0gMHhlMDA0LAorICBJMjQwME1fTVRfUkVQT1JUX1BPV0VSU0FWRV9SRUFEWSA9IDB4ZDAwNSwKKyAgSTI0MDBNX01UX1JFUE9SVF9FQVBfUkVRVUVTVCA9IDB4ZTAwMiwKKyAgSTI0MDBNX01UX1JFUE9SVF9FQVBfUkVTVEFSVCA9IDB4ZTAwMywKKyAgSTI0MDBNX01UX1JFUE9SVF9BTFRfQUNDRVBUID0gMHhlMDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfUkVQT1JUX0tFWV9SRVFVRVNUID0gMHhlMDA1LAorICBJMjQwME1fTVRfUkVQT1JUX0tFWV9SRVFVRVNUID0gMHhlMDA1LAogfTsKIGVudW0gaTI0MDBtX21zIHsKLSBJMjQwME1fTVNfRE9ORV9PSyA9IDAsCisgIEkyNDAwTV9NU19ET05FX09LID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01TX0RPTkVfSU5fUFJPR1JFU1MgPSAxLAotIEkyNDAwTV9NU19JTlZBTElEX09QID0gMiwKLSBJMjQwME1fTVNfQkFEX1NUQVRFID0gMywKLSBJMjQwME1fTVNfSUxMRUdBTF9WQUxVRSA9IDQsCisgIEkyNDAwTV9NU19ET05FX0lOX1BST0dSRVNTID0gMSwKKyAgSTI0MDBNX01TX0lOVkFMSURfT1AgPSAyLAorICBJMjQwME1fTVNfQkFEX1NUQVRFID0gMywKKyAgSTI0MDBNX01TX0lMTEVHQUxfVkFMVUUgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVNfTUlTU0lOR19QQVJBTVMgPSA1LAotIEkyNDAwTV9NU19WRVJTSU9OX0VSUk9SID0gNiwKLSBJMjQwME1fTVNfQUNDRVNTSUJJTElUWV9FUlJPUiA9IDcsCi0gSTI0MDBNX01TX0JVU1kgPSA4LAorICBJMjQwME1fTVNfTUlTU0lOR19QQVJBTVMgPSA1LAorICBJMjQwME1fTVNfVkVSU0lPTl9FUlJPUiA9IDYsCisgIEkyNDAwTV9NU19BQ0NFU1NJQklMSVRZX0VSUk9SID0gNywKKyAgSTI0MDBNX01TX0JVU1kgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVNfQ09SUlVQVEVEX1RMViA9IDksCi0gSTI0MDBNX01TX1VOSU5JVElBTElaRUQgPSAxMCwKLSBJMjQwME1fTVNfVU5LTk9XTl9FUlJPUiA9IDExLAotIEkyNDAwTV9NU19QUk9EVUNUSU9OX0VSUk9SID0gMTIsCisgIEkyNDAwTV9NU19DT1JSVVBURURfVExWID0gOSwKKyAgSTI0MDBNX01TX1VOSU5JVElBTElaRUQgPSAxMCwKKyAgSTI0MDBNX01TX1VOS05PV05fRVJST1IgPSAxMSwKKyAgSTI0MDBNX01TX1BST0RVQ1RJT05fRVJST1IgPSAxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01TX05PX1JGID0gMTMsCi0gSTI0MDBNX01TX05PVF9SRUFEWV9GT1JfUE9XRVJTQVZFID0gMTQsCi0gSTI0MDBNX01TX1RIRVJNQUxfQ1JJVElDQUwgPSAxNSwKLSBJMjQwME1fTVNfTUFYCisgIEkyNDAwTV9NU19OT19SRiA9IDEzLAorICBJMjQwME1fTVNfTk9UX1JFQURZX0ZPUl9QT1dFUlNBVkUgPSAxNCwKKyAgSTI0MDBNX01TX1RIRVJNQUxfQ1JJVElDQUwgPSAxNSwKKyAgSTI0MDBNX01TX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGkyNDAwbV90bHYgewotIEkyNDAwTV9UTFZfTDRfTUVTU0FHRV9WRVJTSU9OUyA9IDEyOSwKLSBJMjQwME1fVExWX1NZU1RFTV9TVEFURSA9IDE0MSwKKyAgSTI0MDBNX1RMVl9MNF9NRVNTQUdFX1ZFUlNJT05TID0gMTI5LAorICBJMjQwME1fVExWX1NZU1RFTV9TVEFURSA9IDE0MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1RMVl9NRURJQV9TVEFUVVMgPSAxNjEsCi0gSTI0MDBNX1RMVl9SRl9PUEVSQVRJT04gPSAxNjIsCi0gSTI0MDBNX1RMVl9SRl9TVEFUVVMgPSAxNjMsCi0gSTI0MDBNX1RMVl9ERVZJQ0VfUkVTRVRfVFlQRSA9IDEzMiwKKyAgSTI0MDBNX1RMVl9NRURJQV9TVEFUVVMgPSAxNjEsCisgIEkyNDAwTV9UTFZfUkZfT1BFUkFUSU9OID0gMTYyLAorICBJMjQwME1fVExWX1JGX1NUQVRVUyA9IDE2MywKKyAgSTI0MDBNX1RMVl9ERVZJQ0VfUkVTRVRfVFlQRSA9IDEzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1RMVl9DT05GSUdfSURMRV9QQVJBTUVURVJTID0gNjAxLAotIEkyNDAwTV9UTFZfQ09ORklHX0lETEVfVElNRU9VVCA9IDYxMSwKLSBJMjQwME1fVExWX0NPTkZJR19EMkhfREFUQV9GT1JNQVQgPSA2MTQsCi0gSTI0MDBNX1RMVl9DT05GSUdfRExfSE9TVF9SRU9SREVSID0gNjE1LAorICBJMjQwME1fVExWX0NPTkZJR19JRExFX1BBUkFNRVRFUlMgPSA2MDEsCisgIEkyNDAwTV9UTFZfQ09ORklHX0lETEVfVElNRU9VVCA9IDYxMSwKKyAgSTI0MDBNX1RMVl9DT05GSUdfRDJIX0RBVEFfRk9STUFUID0gNjE0LAorICBJMjQwME1fVExWX0NPTkZJR19ETF9IT1NUX1JFT1JERVIgPSA2MTUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpMjQwMG1fdGx2X2hkciB7Ci0gX19sZTE2IHR5cGU7Ci0gX19sZTE2IGxlbmd0aDsKKyAgX19sZTE2IHR5cGU7CisgIF9fbGUxNiBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGxbMF07CisgIF9fdTggcGxbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGkyNDAwbV9sM2w0X2hkciB7Ci0gX19sZTE2IHR5cGU7CisgIF9fbGUxNiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgbGVuZ3RoOwotIF9fbGUxNiB2ZXJzaW9uOwotIF9fbGUxNiByZXN2MTsKLSBfX2xlMTYgc3RhdHVzOworICBfX2xlMTYgbGVuZ3RoOworICBfX2xlMTYgdmVyc2lvbjsKKyAgX19sZTE2IHJlc3YxOworICBfX2xlMTYgc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgcmVzdjI7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIHBsWzBdOworICBfX2xlMTYgcmVzdjI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBwbFswXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIGkyNDAwbV9zeXN0ZW1fc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU1NfVU5JTklUSUFMSVpFRCA9IDEsCi0gSTI0MDBNX1NTX0lOSVQsCi0gSTI0MDBNX1NTX1JFQURZLAotIEkyNDAwTV9TU19TQ0FOLAorICBJMjQwME1fU1NfVU5JTklUSUFMSVpFRCA9IDEsCisgIEkyNDAwTV9TU19JTklULAorICBJMjQwME1fU1NfUkVBRFksCisgIEkyNDAwTV9TU19TQ0FOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU1NfU1RBTkRCWSwKLSBJMjQwME1fU1NfQ09OTkVDVElORywKLSBJMjQwME1fU1NfV0lNQVhfQ09OTkVDVEVELAotIEkyNDAwTV9TU19EQVRBX1BBVEhfQ09OTkVDVEVELAorICBJMjQwME1fU1NfU1RBTkRCWSwKKyAgSTI0MDBNX1NTX0NPTk5FQ1RJTkcsCisgIEkyNDAwTV9TU19XSU1BWF9DT05ORUNURUQsCisgIEkyNDAwTV9TU19EQVRBX1BBVEhfQ09OTkVDVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU1NfSURMRSwKLSBJMjQwME1fU1NfRElTQ09OTkVDVElORywKLSBJMjQwME1fU1NfT1VUX09GX1pPTkUsCi0gSTI0MDBNX1NTX1NMRUVQQUNUSVZFLAorICBJMjQwME1fU1NfSURMRSwKKyAgSTI0MDBNX1NTX0RJU0NPTk5FQ1RJTkcsCisgIEkyNDAwTV9TU19PVVRfT0ZfWk9ORSwKKyAgSTI0MDBNX1NTX1NMRUVQQUNUSVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU1NfUFJPRFVDVElPTiwKLSBJMjQwME1fU1NfQ09ORklHLAotIEkyNDAwTV9TU19SRl9PRkYsCi0gSTI0MDBNX1NTX1JGX1NIVVRET1dOLAorICBJMjQwME1fU1NfUFJPRFVDVElPTiwKKyAgSTI0MDBNX1NTX0NPTkZJRywKKyAgSTI0MDBNX1NTX1JGX09GRiwKKyAgSTI0MDBNX1NTX1JGX1NIVVRET1dOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU1NfREVWSUNFX0RJU0NPTk5FQ1QsCi0gSTI0MDBNX1NTX01BWCwKKyAgSTI0MDBNX1NTX0RFVklDRV9ESVNDT05ORUNULAorICBJMjQwME1fU1NfTUFYLAogfTsKIHN0cnVjdCBpMjQwMG1fdGx2X3N5c3RlbV9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX19sZTMyIHN0YXRlOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX2xlMzIgc3RhdGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGkyNDAwbV90bHZfbDRfbWVzc2FnZV92ZXJzaW9ucyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX19sZTE2IG1ham9yOwotIF9fbGUxNiBtaW5vcjsKLSBfX2xlMTYgYnJhbmNoOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX2xlMTYgbWFqb3I7CisgIF9fbGUxNiBtaW5vcjsKKyAgX19sZTE2IGJyYW5jaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHJlc2VydmVkOworICBfX2xlMTYgcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGkyNDAwbV90bHZfZGV0YWlsZWRfZGV2aWNlX2luZm8gewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQxWzQwMF07Ci0gX191OCBtYWNfYWRkcmVzc1tFVEhfQUxFTl07Ci0gX191OCByZXNlcnZlZDJbMl07CisgIF9fdTggcmVzZXJ2ZWQxWzQwMF07CisgIF9fdTggbWFjX2FkZHJlc3NbRVRIX0FMRU5dOworICBfX3U4IHJlc2VydmVkMlsyXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpMjQwMG1fcmZfc3dpdGNoX3N0YXR1cyB7Ci0gSTI0MDBNX1JGX1NXSVRDSF9PTiA9IDEsCi0gSTI0MDBNX1JGX1NXSVRDSF9PRkYgPSAyLAorICBJMjQwME1fUkZfU1dJVENIX09OID0gMSwKKyAgSTI0MDBNX1JGX1NXSVRDSF9PRkYgPSAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaTI0MDBtX3Rsdl9yZl9zd2l0Y2hlc19zdGF0dXMgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX191OCBzd19yZl9zd2l0Y2g7Ci0gX191OCBod19yZl9zd2l0Y2g7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIF9fdTggc3dfcmZfc3dpdGNoOworICBfX3U4IGh3X3JmX3N3aXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZFsyXTsKKyAgX191OCByZXNlcnZlZFsyXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIHsKLSBpMjQwMG1fcmZfb3BlcmF0aW9uX29uID0gMSwKKyAgaTI0MDBtX3JmX29wZXJhdGlvbl9vbiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGkyNDAwbV9yZl9vcGVyYXRpb25fb2ZmID0gMgorICBpMjQwMG1fcmZfb3BlcmF0aW9uX29mZiA9IDIKIH07CiBzdHJ1Y3QgaTI0MDBtX3Rsdl9yZl9vcGVyYXRpb24gewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBzdGF0dXM7CisgIF9fbGUzMiBzdGF0dXM7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSBpMjQwMG1fdGx2X3Jlc2V0X3R5cGUgewotIEkyNDAwTV9SRVNFVF9UWVBFX0NPTEQgPSAxLAorICBJMjQwME1fUkVTRVRfVFlQRV9DT0xEID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1JFU0VUX1RZUEVfV0FSTQorICBJMjQwME1fUkVTRVRfVFlQRV9XQVJNCiB9Owogc3RydWN0IGkyNDAwbV90bHZfZGV2aWNlX3Jlc2V0X3R5cGUgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiByZXNldF90eXBlOworICBfX2xlMzIgcmVzZXRfdHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaTI0MDBtX3Rsdl9jb25maWdfaWRsZV9wYXJhbWV0ZXJzIHsKLSBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgaWRsZV90aW1lb3V0OwotIF9fbGUzMiBpZGxlX3BhZ2luZ19pbnRlcnZhbDsKKyAgX19sZTMyIGlkbGVfdGltZW91dDsKKyAgX19sZTMyIGlkbGVfcGFnaW5nX2ludGVydmFsOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gaTI0MDBtX21lZGlhX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NRURJQV9TVEFUVVNfTElOS19VUCA9IDEsCi0gSTI0MDBNX01FRElBX1NUQVRVU19MSU5LX0RPV04sCi0gSTI0MDBNX01FRElBX1NUQVRVU19MSU5LX1JFTkVXLAorICBJMjQwME1fTUVESUFfU1RBVFVTX0xJTktfVVAgPSAxLAorICBJMjQwME1fTUVESUFfU1RBVFVTX0xJTktfRE9XTiwKKyAgSTI0MDBNX01FRElBX1NUQVRVU19MSU5LX1JFTkVXLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaTI0MDBtX3Rsdl9tZWRpYV9zdGF0dXMgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX19sZTMyIG1lZGlhX3N0YXR1czsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgX19sZTMyIG1lZGlhX3N0YXR1czsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyNDAwbV90bHZfY29uZmlnX2lkbGVfdGltZW91dCB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX2xlMzIgdGltZW91dDsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgX19sZTMyIHRpbWVvdXQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMjQwMG1fdGx2X2NvbmZpZ19kMmhfZGF0YV9mb3JtYXQgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX191OCBmb3JtYXQ7Ci0gX191OCByZXNlcnZlZFszXTsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgX191OCBmb3JtYXQ7CisgIF9fdTggcmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpMjQwMG1fdGx2X2NvbmZpZ19kbF9ob3N0X3Jlb3JkZXIgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7Ci0gX191OCByZW9yZGVyOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX3U4IHJlb3JkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWRbM107CisgIF9fdTggcmVzZXJ2ZWRbM107CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpcmVsZXNzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpcmVsZXNzLmgKaW5kZXggZGNiOWYxZi4uZDAxODA1MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aXJlbGVzcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2lyZWxlc3MuaApAQCAtOTMsOCArOTMsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lPQ0lXTEFTVCBTSU9DSVdMQVNUUFJJVgogI2RlZmluZSBJV19JT0NUTF9JRFgoY21kKSAoKGNtZCkgLSBTSU9DSVdGSVJTVCkKLSNkZWZpbmUgSVdfSEFORExFUihpZCwgZnVuYykgICBbSVdfSU9DVExfSURYKGlkKV0gPSBmdW5jCi0jZGVmaW5lIElXX0lTX1NFVChjbWQpICghKChjbWQpICYgMHgxKSkKKyNkZWZpbmUgSVdfSEFORExFUihpZCxmdW5jKSBbSVdfSU9DVExfSURYKGlkKV0gPSBmdW5jCisjZGVmaW5lIElXX0lTX1NFVChjbWQpICghICgoY21kKSAmIDB4MSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJV19JU19HRVQoY21kKSAoKGNtZCkgJiAweDEpCiAjZGVmaW5lIElXRVZUWERST1AgMHg4QzAwCkBAIC0zMDcsMjUzICszMDcsMjI4IEBACiAjZGVmaW5lIElXX0VOQ19DQVBBX0NJUEhFUl9DQ01QIDB4MDAwMDAwMDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElXX0VOQ19DQVBBXzRXQVlfSEFORFNIQUtFIDB4MDAwMDAwMTAKLSNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9CQVNFKGNtZCkgKChjbWQgPj0gU0lPQ0lXRklSU1RQUklWKSA/ICAgKGNtZCAtIFNJT0NJV0ZJUlNUUFJJViArIDB4NjApIDogICAoY21kIC0gU0lPQ0lXRklSU1QpKQorI2RlZmluZSBJV19FVkVOVF9DQVBBX0JBU0UoY21kKSAoKGNtZCA+PSBTSU9DSVdGSVJTVFBSSVYpID8gKGNtZCAtIFNJT0NJV0ZJUlNUUFJJViArIDB4NjApIDogKGNtZCAtIFNJT0NJV0ZJUlNUKSkKICNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9JTkRFWChjbWQpIChJV19FVkVOVF9DQVBBX0JBU0UoY21kKSA+PiA1KQogI2RlZmluZSBJV19FVkVOVF9DQVBBX01BU0soY21kKSAoMSA8PCAoSVdfRVZFTlRfQ0FQQV9CQVNFKGNtZCkgJiAweDFGKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElXX0VWRU5UX0NBUEFfS18wIChJV19FVkVOVF9DQVBBX01BU0soMHg4QjA0KSB8ICAgSVdfRVZFTlRfQ0FQQV9NQVNLKDB4OEIwNikgfCAgIElXX0VWRU5UX0NBUEFfTUFTSygweDhCMUEpKQorI2RlZmluZSBJV19FVkVOVF9DQVBBX0tfMCAoSVdfRVZFTlRfQ0FQQV9NQVNLKDB4OEIwNCkgfCBJV19FVkVOVF9DQVBBX01BU0soMHg4QjA2KSB8IElXX0VWRU5UX0NBUEFfTUFTSygweDhCMUEpKQogI2RlZmluZSBJV19FVkVOVF9DQVBBX0tfMSAoSVdfRVZFTlRfQ0FQQV9NQVNLKDB4OEIyQSkpCi0jZGVmaW5lIElXX0VWRU5UX0NBUEFfU0VUKGV2ZW50X2NhcGEsIGNtZCkgKGV2ZW50X2NhcGFbSVdfRVZFTlRfQ0FQQV9JTkRFWChjbWQpXSB8PSBJV19FVkVOVF9DQVBBX01BU0soY21kKSkKLSNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9TRVRfS0VSTkVMKGV2ZW50X2NhcGEpIHtldmVudF9jYXBhWzBdIHw9IElXX0VWRU5UX0NBUEFfS18wOyBldmVudF9jYXBhWzFdIHw9IElXX0VWRU5UX0NBUEFfS18xOyB9CisjZGVmaW5lIElXX0VWRU5UX0NBUEFfU0VUKGV2ZW50X2NhcGEsY21kKSAoZXZlbnRfY2FwYVtJV19FVkVOVF9DQVBBX0lOREVYKGNtZCldIHw9IElXX0VWRU5UX0NBUEFfTUFTSyhjbWQpKQorI2RlZmluZSBJV19FVkVOVF9DQVBBX1NFVF9LRVJORUwoZXZlbnRfY2FwYSkgeyBldmVudF9jYXBhWzBdIHw9IElXX0VWRU5UX0NBUEFfS18wOyBldmVudF9jYXBhWzFdIHw9IElXX0VWRU5UX0NBUEFfS18xOyB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGl3X3BhcmFtCi17Ci0gX19zMzIgdmFsdWU7Ci0gX191OCBmaXhlZDsKK3N0cnVjdCBpd19wYXJhbSB7CisgIF9fczMyIHZhbHVlOworICBfX3U4IGZpeGVkOworICBfX3U4IGRpc2FibGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRpc2FibGVkOwotIF9fdTE2IGZsYWdzOworICBfX3UxNiBmbGFnczsKIH07Ci1zdHJ1Y3QgaXdfcG9pbnQKK3N0cnVjdCBpd19wb2ludCB7CisgIHZvaWQgX191c2VyICogcG9pbnRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gdm9pZCBfX3VzZXIgKnBvaW50ZXI7Ci0gX191MTYgbGVuZ3RoOwotIF9fdTE2IGZsYWdzOworICBfX3UxNiBsZW5ndGg7CisgIF9fdTE2IGZsYWdzOworfTsKK3N0cnVjdCBpd19mcmVxIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczMyIG07CisgIF9fczE2IGU7CisgIF9fdTggaTsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owotc3RydWN0IGl3X2ZyZXEKLXsKLSBfX3MzMiBtOworc3RydWN0IGl3X3F1YWxpdHkgeworICBfX3U4IHF1YWw7CisgIF9fdTggbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczE2IGU7Ci0gX191OCBpOwotIF9fdTggZmxhZ3M7CisgIF9fdTggbm9pc2U7CisgIF9fdTggdXBkYXRlZDsKK307CitzdHJ1Y3QgaXdfZGlzY2FyZGVkIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG53aWQ7CisgIF9fdTMyIGNvZGU7CisgIF9fdTMyIGZyYWdtZW50OworICBfX3UzMiByZXRyaWVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbWlzYzsKK307CitzdHJ1Y3QgaXdfbWlzc2VkIHsKKyAgX191MzIgYmVhY29uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgaXdfdGhyc3B5IHsKKyAgc3RydWN0IHNvY2thZGRyIGFkZHI7CisgIHN0cnVjdCBpd19xdWFsaXR5IHF1YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaXdfcXVhbGl0eSBsb3c7CisgIHN0cnVjdCBpd19xdWFsaXR5IGhpZ2g7Cit9Oworc3RydWN0IGl3X3NjYW5fcmVxIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc2Nhbl90eXBlOworICBfX3U4IGVzc2lkX2xlbjsKKyAgX191OCBudW1fY2hhbm5lbHM7CisgIF9fdTggZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc29ja2FkZHIgYnNzaWQ7CisgIF9fdTggZXNzaWRbSVdfRVNTSURfTUFYX1NJWkVdOworICBfX3UzMiBtaW5fY2hhbm5lbF90aW1lOworICBfX3UzMiBtYXhfY2hhbm5lbF90aW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGl3X2ZyZXEgY2hhbm5lbF9saXN0W0lXX01BWF9GUkVRVUVOQ0lFU107Cit9Oworc3RydWN0IGl3X2VuY29kZV9leHQgeworICBfX3UzMiBleHRfZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHR4X3NlcVtJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKKyAgX191OCByeF9zZXFbSVdfRU5DT0RFX1NFUV9NQVhfU0laRV07CisgIHN0cnVjdCBzb2NrYWRkciBhZGRyOworICBfX3UxNiBhbGc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBrZXlfbGVuOworICBfX3U4IGtleVswXTsKK307CitzdHJ1Y3QgaXdfbWxtZSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBjbWQ7CisgIF9fdTE2IHJlYXNvbl9jb2RlOworICBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGl3X3F1YWxpdHkKLXsKLSBfX3U4IHF1YWw7Ci0gX191OCBsZXZlbDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBub2lzZTsKLSBfX3U4IHVwZGF0ZWQ7Ci19Owotc3RydWN0IGl3X2Rpc2NhcmRlZAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3UzMiBud2lkOwotIF9fdTMyIGNvZGU7Ci0gX191MzIgZnJhZ21lbnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldHJpZXM7Ci0gX191MzIgbWlzYzsKLX07Ci1zdHJ1Y3QgaXdfbWlzc2VkCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIF9fdTMyIGJlYWNvbjsKLX07Ci1zdHJ1Y3QgaXdfdGhyc3B5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIHN0cnVjdCBzb2NrYWRkciBhZGRyOwotIHN0cnVjdCBpd19xdWFsaXR5IHF1YWw7Ci0gc3RydWN0IGl3X3F1YWxpdHkgbG93OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcXVhbGl0eSBoaWdoOwotfTsKLXN0cnVjdCBpd19zY2FuX3JlcQotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNjYW5fdHlwZTsKLSBfX3U4IGVzc2lkX2xlbjsKLSBfX3U4IG51bV9jaGFubmVsczsKLSBfX3U4IGZsYWdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgYnNzaWQ7Ci0gX191OCBlc3NpZFtJV19FU1NJRF9NQVhfU0laRV07Ci0gX191MzIgbWluX2NoYW5uZWxfdGltZTsKLSBfX3UzMiBtYXhfY2hhbm5lbF90aW1lOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfZnJlcSBjaGFubmVsX2xpc3RbSVdfTUFYX0ZSRVFVRU5DSUVTXTsKLX07Ci1zdHJ1Y3QgaXdfZW5jb2RlX2V4dAotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBleHRfZmxhZ3M7Ci0gX191OCB0eF9zZXFbSVdfRU5DT0RFX1NFUV9NQVhfU0laRV07Ci0gX191OCByeF9zZXFbSVdfRU5DT0RFX1NFUV9NQVhfU0laRV07Ci0gc3RydWN0IHNvY2thZGRyIGFkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGFsZzsKLSBfX3UxNiBrZXlfbGVuOwotIF9fdTgga2V5WzBdOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXdfbWxtZQotewotIF9fdTE2IGNtZDsKLSBfX3UxNiByZWFzb25fY29kZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyIGFkZHI7Ci19OwogI2RlZmluZSBJV19QTUtTQV9BREQgMQogI2RlZmluZSBJV19QTUtTQV9SRU1PVkUgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVdfUE1LU0FfRkxVU0ggMwogI2RlZmluZSBJV19QTUtJRF9MRU4gMTYKLXN0cnVjdCBpd19wbWtzYQotewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gc3RydWN0IHNvY2thZGRyIGJzc2lkOwotIF9fdTggcG1raWRbSVdfUE1LSURfTEVOXTsKK3N0cnVjdCBpd19wbWtzYSB7CisgIF9fdTMyIGNtZDsKKyAgc3RydWN0IHNvY2thZGRyIGJzc2lkOworICBfX3U4IHBta2lkW0lXX1BNS0lEX0xFTl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKK3N0cnVjdCBpd19taWNoYWVsbWljZmFpbHVyZSB7CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3Qgc29ja2FkZHIgc3JjX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGl3X21pY2hhZWxtaWNmYWlsdXJlCi17Ci0gX191MzIgZmxhZ3M7Ci0gc3RydWN0IHNvY2thZGRyIHNyY19hZGRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRzY1tJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKKyAgX191OCB0c2NbSVdfRU5DT0RFX1NFUV9NQVhfU0laRV07CiB9OwogI2RlZmluZSBJV19QTUtJRF9DQU5EX1BSRUFVVEggMHgwMDAwMDAwMQotc3RydWN0IGl3X3Bta2lkX2NhbmQKK3N0cnVjdCBpd19wbWtpZF9jYW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgaW5kZXg7Ci0gc3RydWN0IHNvY2thZGRyIGJzc2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1zdHJ1Y3QgaXdfc3RhdGlzdGljcwotewotIF9fdTE2IHN0YXR1czsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGl3X3F1YWxpdHkgcXVhbDsKLSBzdHJ1Y3QgaXdfZGlzY2FyZGVkIGRpc2NhcmQ7Ci0gc3RydWN0IGl3X21pc3NlZCBtaXNzOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgaW5kZXg7CisgIHN0cnVjdCBzb2NrYWRkciBic3NpZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdW5pb24gaXdyZXFfZGF0YQotewotIGNoYXIgbmFtZVtJRk5BTVNJWl07Ci0gc3RydWN0IGl3X3BvaW50IGVzc2lkOworc3RydWN0IGl3X3N0YXRpc3RpY3MgeworICBfX3UxNiBzdGF0dXM7CisgIHN0cnVjdCBpd19xdWFsaXR5IHF1YWw7CisgIHN0cnVjdCBpd19kaXNjYXJkZWQgZGlzY2FyZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGl3X3BhcmFtIG53aWQ7Ci0gc3RydWN0IGl3X2ZyZXEgZnJlcTsKLSBzdHJ1Y3QgaXdfcGFyYW0gc2VuczsKLSBzdHJ1Y3QgaXdfcGFyYW0gYml0cmF0ZTsKKyAgc3RydWN0IGl3X21pc3NlZCBtaXNzOworfTsKK3VuaW9uIGl3cmVxX2RhdGEgeworICBjaGFyIG5hbWVbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcGFyYW0gdHhwb3dlcjsKLSBzdHJ1Y3QgaXdfcGFyYW0gcnRzOwotIHN0cnVjdCBpd19wYXJhbSBmcmFnOwotIF9fdTMyIG1vZGU7CisgIHN0cnVjdCBpd19wb2ludCBlc3NpZDsKKyAgc3RydWN0IGl3X3BhcmFtIG53aWQ7CisgIHN0cnVjdCBpd19mcmVxIGZyZXE7CisgIHN0cnVjdCBpd19wYXJhbSBzZW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcGFyYW0gcmV0cnk7Ci0gc3RydWN0IGl3X3BvaW50IGVuY29kaW5nOwotIHN0cnVjdCBpd19wYXJhbSBwb3dlcjsKLSBzdHJ1Y3QgaXdfcXVhbGl0eSBxdWFsOworICBzdHJ1Y3QgaXdfcGFyYW0gYml0cmF0ZTsKKyAgc3RydWN0IGl3X3BhcmFtIHR4cG93ZXI7CisgIHN0cnVjdCBpd19wYXJhbSBydHM7CisgIHN0cnVjdCBpd19wYXJhbSBmcmFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgYXBfYWRkcjsKLSBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKLSBzdHJ1Y3QgaXdfcGFyYW0gcGFyYW07Ci0gc3RydWN0IGl3X3BvaW50IGRhdGE7CisgIF9fdTMyIG1vZGU7CisgIHN0cnVjdCBpd19wYXJhbSByZXRyeTsKKyAgc3RydWN0IGl3X3BvaW50IGVuY29kaW5nOworICBzdHJ1Y3QgaXdfcGFyYW0gcG93ZXI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaXdfcXVhbGl0eSBxdWFsOworICBzdHJ1Y3Qgc29ja2FkZHIgYXBfYWRkcjsKKyAgc3RydWN0IHNvY2thZGRyIGFkZHI7CisgIHN0cnVjdCBpd19wYXJhbSBwYXJhbTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBpd19wb2ludCBkYXRhOworfTsKK3N0cnVjdCBpd3JlcSB7CisgIHVuaW9uIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgY2hhciBpZnJuX25hbWVbSUZOQU1TSVpdOworICB9IGlmcl9pZnJuOworICB1bmlvbiBpd3JlcV9kYXRhIHU7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBpd19yYW5nZSB7CisgIF9fdTMyIHRocm91Z2hwdXQ7CisgIF9fdTMyIG1pbl9ud2lkOworICBfX3UzMiBtYXhfbndpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IG9sZF9udW1fY2hhbm5lbHM7CisgIF9fdTggb2xkX251bV9mcmVxdWVuY3k7CisgIF9fdTggc2Nhbl9jYXBhOworICBfX3UzMiBldmVudF9jYXBhWzZdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zMzIgc2Vuc2l0aXZpdHk7CisgIHN0cnVjdCBpd19xdWFsaXR5IG1heF9xdWFsOworICBzdHJ1Y3QgaXdfcXVhbGl0eSBhdmdfcXVhbDsKKyAgX191OCBudW1fYml0cmF0ZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiBiaXRyYXRlW0lXX01BWF9CSVRSQVRFU107CisgIF9fczMyIG1pbl9ydHM7CisgIF9fczMyIG1heF9ydHM7CisgIF9fczMyIG1pbl9mcmFnOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zMzIgbWF4X2ZyYWc7CisgIF9fczMyIG1pbl9wbXA7CisgIF9fczMyIG1heF9wbXA7CisgIF9fczMyIG1pbl9wbXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiBtYXhfcG10OworICBfX3UxNiBwbXBfZmxhZ3M7CisgIF9fdTE2IHBtdF9mbGFnczsKKyAgX191MTYgcG1fY2FwYTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGVuY29kaW5nX3NpemVbSVdfTUFYX0VOQ09ESU5HX1NJWkVTXTsKKyAgX191OCBudW1fZW5jb2Rpbmdfc2l6ZXM7CisgIF9fdTggbWF4X2VuY29kaW5nX3Rva2VuczsKKyAgX191OCBlbmNvZGluZ19sb2dpbl9pbmRleDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHR4cG93ZXJfY2FwYTsKKyAgX191OCBudW1fdHhwb3dlcjsKKyAgX19zMzIgdHhwb3dlcltJV19NQVhfVFhQT1dFUl07CisgIF9fdTggd2VfdmVyc2lvbl9jb21waWxlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggd2VfdmVyc2lvbl9zb3VyY2U7CisgIF9fdTE2IHJldHJ5X2NhcGE7CisgIF9fdTE2IHJldHJ5X2ZsYWdzOworICBfX3UxNiByX3RpbWVfZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiBtaW5fcmV0cnk7CisgIF9fczMyIG1heF9yZXRyeTsKKyAgX19zMzIgbWluX3JfdGltZTsKKyAgX19zMzIgbWF4X3JfdGltZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IG51bV9jaGFubmVsczsKKyAgX191OCBudW1fZnJlcXVlbmN5OworICBzdHJ1Y3QgaXdfZnJlcSBmcmVxW0lXX01BWF9GUkVRVUVOQ0lFU107CisgIF9fdTMyIGVuY19jYXBhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgaXdyZXEKLXsKLSB1bmlvbgorc3RydWN0IGl3X3ByaXZfYXJncyB7CisgIF9fdTMyIGNtZDsKKyAgX191MTYgc2V0X2FyZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHsKLSBjaGFyIGlmcm5fbmFtZVtJRk5BTVNJWl07Ci0gfSBpZnJfaWZybjsKLSB1bmlvbiBpd3JlcV9kYXRhIHU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBnZXRfYXJnczsKKyAgY2hhciBuYW1lW0lGTkFNU0laXTsKIH07Ci1zdHJ1Y3QgaXdfcmFuZ2UKLXsKLSBfX3UzMiB0aHJvdWdocHV0Oworc3RydWN0IGl3X2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWluX253aWQ7Ci0gX191MzIgbWF4X253aWQ7Ci0gX191MTYgb2xkX251bV9jaGFubmVsczsKLSBfX3U4IG9sZF9udW1fZnJlcXVlbmN5OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNjYW5fY2FwYTsKLSBfX3UzMiBldmVudF9jYXBhWzZdOwotIF9fczMyIHNlbnNpdGl2aXR5OwotIHN0cnVjdCBpd19xdWFsaXR5IG1heF9xdWFsOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcXVhbGl0eSBhdmdfcXVhbDsKLSBfX3U4IG51bV9iaXRyYXRlczsKLSBfX3MzMiBiaXRyYXRlW0lXX01BWF9CSVRSQVRFU107Ci0gX19zMzIgbWluX3J0czsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgbWF4X3J0czsKLSBfX3MzMiBtaW5fZnJhZzsKLSBfX3MzMiBtYXhfZnJhZzsKLSBfX3MzMiBtaW5fcG1wOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBtYXhfcG1wOwotIF9fczMyIG1pbl9wbXQ7Ci0gX19zMzIgbWF4X3BtdDsKLSBfX3UxNiBwbXBfZmxhZ3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBtdF9mbGFnczsKLSBfX3UxNiBwbV9jYXBhOwotIF9fdTE2IGVuY29kaW5nX3NpemVbSVdfTUFYX0VOQ09ESU5HX1NJWkVTXTsKLSBfX3U4IG51bV9lbmNvZGluZ19zaXplczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtYXhfZW5jb2RpbmdfdG9rZW5zOwotIF9fdTggZW5jb2RpbmdfbG9naW5faW5kZXg7Ci0gX191MTYgdHhwb3dlcl9jYXBhOwotIF9fdTggbnVtX3R4cG93ZXI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHR4cG93ZXJbSVdfTUFYX1RYUE9XRVJdOwotIF9fdTggd2VfdmVyc2lvbl9jb21waWxlZDsKLSBfX3U4IHdlX3ZlcnNpb25fc291cmNlOwotIF9fdTE2IHJldHJ5X2NhcGE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHJldHJ5X2ZsYWdzOwotIF9fdTE2IHJfdGltZV9mbGFnczsKLSBfX3MzMiBtaW5fcmV0cnk7Ci0gX19zMzIgbWF4X3JldHJ5OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBtaW5fcl90aW1lOwotIF9fczMyIG1heF9yX3RpbWU7Ci0gX191MTYgbnVtX2NoYW5uZWxzOwotIF9fdTggbnVtX2ZyZXF1ZW5jeTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGl3X2ZyZXEgZnJlcVtJV19NQVhfRlJFUVVFTkNJRVNdOwotIF9fdTMyIGVuY19jYXBhOwotfTsKLXN0cnVjdCBpd19wcml2X2FyZ3MKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX191MzIgY21kOwotIF9fdTE2IHNldF9hcmdzOwotIF9fdTE2IGdldF9hcmdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbSUZOQU1TSVpdOwotfTsKLXN0cnVjdCBpd19ldmVudAotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBsZW47Ci0gX191MTYgY21kOwotIHVuaW9uIGl3cmVxX2RhdGEgdTsKKyAgX191MTYgbGVuOworICBfX3UxNiBjbWQ7CisgIHVuaW9uIGl3cmVxX2RhdGEgdTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJV19FVl9MQ1BfTEVOIChzaXplb2Yoc3RydWN0IGl3X2V2ZW50KSAtIHNpemVvZih1bmlvbiBpd3JlcV9kYXRhKSkKQEAgLTU2NCw5ICs1MzksOSBAQAogI2RlZmluZSBJV19FVl9QQVJBTV9MRU4gKElXX0VWX0xDUF9MRU4gKyBzaXplb2Yoc3RydWN0IGl3X3BhcmFtKSkKICNkZWZpbmUgSVdfRVZfQUREUl9MRU4gKElXX0VWX0xDUF9MRU4gKyBzaXplb2Yoc3RydWN0IHNvY2thZGRyKSkKICNkZWZpbmUgSVdfRVZfUVVBTF9MRU4gKElXX0VWX0xDUF9MRU4gKyBzaXplb2Yoc3RydWN0IGl3X3F1YWxpdHkpKQotI2RlZmluZSBJV19FVl9QT0lOVF9PRkYgKCgoY2hhciAqKSAmKCgoc3RydWN0IGl3X3BvaW50ICopIE5VTEwpLT5sZW5ndGgpKSAtICAgKGNoYXIgKikgTlVMTCkKKyNkZWZpbmUgSVdfRVZfUE9JTlRfT0ZGICgoKGNoYXIgKikgJiAoKChzdHJ1Y3QgaXdfcG9pbnQgKikgTlVMTCktPmxlbmd0aCkpIC0gKGNoYXIgKikgTlVMTCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElXX0VWX1BPSU5UX0xFTiAoSVdfRVZfTENQX0xFTiArIHNpemVvZihzdHJ1Y3QgaXdfcG9pbnQpIC0gICBJV19FVl9QT0lOVF9PRkYpCisjZGVmaW5lIElXX0VWX1BPSU5UX0xFTiAoSVdfRVZfTENQX0xFTiArIHNpemVvZihzdHJ1Y3QgaXdfcG9pbnQpIC0gSVdfRVZfUE9JTlRfT0ZGKQogI2RlZmluZSBJV19FVl9MQ1BfUEtfTEVOICg0KQogI2RlZmluZSBJV19FVl9DSEFSX1BLX0xFTiAoSVdfRVZfTENQX1BLX0xFTiArIElGTkFNU0laKQogI2RlZmluZSBJV19FVl9VSU5UX1BLX0xFTiAoSVdfRVZfTENQX1BLX0xFTiArIHNpemVvZihfX3UzMikpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3gyNS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC94MjUuaAppbmRleCBlOThkMTIzLi43MTRjMjJhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3gyNS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgveDI1LmgKQEAgLTUxLDE4ICs1MSwxOCBAQAogI2RlZmluZSBYMjVfUFM0MDk2IDEyCiBzdHJ1Y3QgeDI1X2FkZHJlc3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHgyNV9hZGRyWzE2XTsKKyAgY2hhciB4MjVfYWRkclsxNl07CiB9Owogc3RydWN0IHNvY2thZGRyX3gyNSB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3gyNV9mYW1pbHk7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHN4MjVfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeDI1X2FkZHJlc3Mgc3gyNV9hZGRyOworICBzdHJ1Y3QgeDI1X2FkZHJlc3Mgc3gyNV9hZGRyOwogfTsKIHN0cnVjdCB4MjVfc3Vic2NyaXBfc3RydWN0IHsKLSBjaGFyIGRldmljZVsyMDAtc2l6ZW9mKHVuc2lnbmVkIGxvbmcpXTsKKyAgY2hhciBkZXZpY2VbMjAwIC0gc2l6ZW9mKHVuc2lnbmVkIGxvbmcpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBnbG9iYWxfZmFjaWxfbWFzazsKLSB1bnNpZ25lZCBpbnQgZXh0ZW5kZWQ7CisgIHVuc2lnbmVkIGxvbmcgZ2xvYmFsX2ZhY2lsX21hc2s7CisgIHVuc2lnbmVkIGludCBleHRlbmRlZDsKIH07CiAjZGVmaW5lIFgyNV9NQVNLX1JFVkVSU0UgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTczLDQ0ICs3Myw0NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWDI1X01BU0tfQ0FMTEVEX0FFIDB4MjAKIHN0cnVjdCB4MjVfcm91dGVfc3RydWN0IHsKLSBzdHJ1Y3QgeDI1X2FkZHJlc3MgYWRkcmVzczsKLSB1bnNpZ25lZCBpbnQgc2lnZGlnaXRzOworICBzdHJ1Y3QgeDI1X2FkZHJlc3MgYWRkcmVzczsKKyAgdW5zaWduZWQgaW50IHNpZ2RpZ2l0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkZXZpY2VbMjAwXTsKKyAgY2hhciBkZXZpY2VbMjAwXTsKIH07CiBzdHJ1Y3QgeDI1X2ZhY2lsaXRpZXMgewotIHVuc2lnbmVkIGludCB3aW5zaXplX2luLCB3aW5zaXplX291dDsKKyAgdW5zaWduZWQgaW50IHdpbnNpemVfaW4sIHdpbnNpemVfb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGFjc2l6ZV9pbiwgcGFjc2l6ZV9vdXQ7Ci0gdW5zaWduZWQgaW50IHRocm91Z2hwdXQ7Ci0gdW5zaWduZWQgaW50IHJldmVyc2U7CisgIHVuc2lnbmVkIGludCBwYWNzaXplX2luLCBwYWNzaXplX291dDsKKyAgdW5zaWduZWQgaW50IHRocm91Z2hwdXQ7CisgIHVuc2lnbmVkIGludCByZXZlcnNlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeDI1X2R0ZV9mYWNpbGl0aWVzIHsKLSBfX3UxNiBkZWxheV9jdW11bDsKLSBfX3UxNiBkZWxheV90YXJnZXQ7Ci0gX191MTYgZGVsYXlfbWF4OworICBfX3UxNiBkZWxheV9jdW11bDsKKyAgX191MTYgZGVsYXlfdGFyZ2V0OworICBfX3UxNiBkZWxheV9tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWluX3Rocm91Z2hwdXQ7Ci0gX191OCBleHBlZGl0ZWQ7Ci0gX191OCBjYWxsaW5nX2xlbjsKLSBfX3U4IGNhbGxlZF9sZW47CisgIF9fdTggbWluX3Rocm91Z2hwdXQ7CisgIF9fdTggZXhwZWRpdGVkOworICBfX3U4IGNhbGxpbmdfbGVuOworICBfX3U4IGNhbGxlZF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2FsbGluZ19hZVsyMF07Ci0gX191OCBjYWxsZWRfYWVbMjBdOworICBfX3U4IGNhbGxpbmdfYWVbMjBdOworICBfX3U4IGNhbGxlZF9hZVsyMF07CiB9Owogc3RydWN0IHgyNV9jYWxsdXNlcmRhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY3VkbGVuZ3RoOwotIHVuc2lnbmVkIGNoYXIgY3VkZGF0YVsxMjhdOworICB1bnNpZ25lZCBpbnQgY3VkbGVuZ3RoOworICB1bnNpZ25lZCBjaGFyIGN1ZGRhdGFbMTI4XTsKIH07CiBzdHJ1Y3QgeDI1X2NhdXNlZGlhZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY2F1c2U7Ci0gdW5zaWduZWQgY2hhciBkaWFnbm9zdGljOworICB1bnNpZ25lZCBjaGFyIGNhdXNlOworICB1bnNpZ25lZCBjaGFyIGRpYWdub3N0aWM7CiB9Owogc3RydWN0IHgyNV9zdWJhZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGN1ZG1hdGNobGVuZ3RoOworICB1bnNpZ25lZCBpbnQgY3VkbWF0Y2hsZW5ndGg7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hhdHRyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hhdHRyLmgKaW5kZXggZWNhZGM2YS4uYTNiYmE3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC94YXR0ci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgveGF0dHIuaApAQCAtMTYsMTAgKzE2LDE1IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaW5jbHVkZSA8bGludXgvbGliYy1jb21wYXQuaD4KICNpZm5kZWYgX1VBUElfTElOVVhfWEFUVFJfSAogI2RlZmluZSBfVUFQSV9MSU5VWF9YQVRUUl9ICisjaWYgX19VQVBJX0RFRl9YQVRUUgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19VU0VfS0VSTkVMX1hBVFRSX0RFRlMKICNkZWZpbmUgWEFUVFJfQ1JFQVRFIDB4MQogI2RlZmluZSBYQVRUUl9SRVBMQUNFIDB4MgorI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYQVRUUl9PUzJfUFJFRklYICJvczIuIgogI2RlZmluZSBYQVRUUl9PUzJfUFJFRklYX0xFTiAoc2l6ZW9mKFhBVFRSX09TMl9QUkVGSVgpIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgveGZybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC94ZnJtLmgKaW5kZXggNGIwOWVlOC4uM2FiMTczYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC94ZnJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC94ZnJtLmgKQEAgLTIxLDIzICsyMSwyMyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiB0eXBlZGVmIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGE0OwotIF9fYmUzMiBhNls0XTsKKyAgX19iZTMyIGE0OworICBfX2JlMzIgYTZbNF07CiB9IHhmcm1fYWRkcmVzc190Owogc3RydWN0IHhmcm1faWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB4ZnJtX2FkZHJlc3NfdCBkYWRkcjsKLSBfX2JlMzIgc3BpOwotIF9fdTggcHJvdG87CisgIHhmcm1fYWRkcmVzc190IGRhZGRyOworICBfX2JlMzIgc3BpOworICBfX3U4IHByb3RvOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV9zZWNfY3R4IHsKLSBfX3U4IGN0eF9kb2k7Ci0gX191OCBjdHhfYWxnOwotIF9fdTE2IGN0eF9sZW47CisgIF9fdTggY3R4X2RvaTsKKyAgX191OCBjdHhfYWxnOworICBfX3UxNiBjdHhfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjdHhfc2lkOwotIGNoYXIgY3R4X3N0clswXTsKKyAgX191MzIgY3R4X3NpZDsKKyAgY2hhciBjdHhfc3RyWzBdOwogfTsKICNkZWZpbmUgWEZSTV9TQ19ET0lfUkVTRVJWRUQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTQ2LDExMiArNDYsMTEyIEBACiAjZGVmaW5lIFhGUk1fU0NfQUxHX1NFTElOVVggMQogc3RydWN0IHhmcm1fc2VsZWN0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB4ZnJtX2FkZHJlc3NfdCBkYWRkcjsKLSB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKLSBfX2JlMTYgZHBvcnQ7Ci0gX19iZTE2IGRwb3J0X21hc2s7CisgIHhmcm1fYWRkcmVzc190IGRhZGRyOworICB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKKyAgX19iZTE2IGRwb3J0OworICBfX2JlMTYgZHBvcnRfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHNwb3J0OwotIF9fYmUxNiBzcG9ydF9tYXNrOwotIF9fdTE2IGZhbWlseTsKLSBfX3U4IHByZWZpeGxlbl9kOworICBfX2JlMTYgc3BvcnQ7CisgIF9fYmUxNiBzcG9ydF9tYXNrOworICBfX3UxNiBmYW1pbHk7CisgIF9fdTggcHJlZml4bGVuX2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJlZml4bGVuX3M7Ci0gX191OCBwcm90bzsKLSBpbnQgaWZpbmRleDsKLSBfX2tlcm5lbF91aWQzMl90IHVzZXI7CisgIF9fdTggcHJlZml4bGVuX3M7CisgIF9fdTggcHJvdG87CisgIGludCBpZmluZGV4OworICBfX2tlcm5lbF91aWQzMl90IHVzZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgWEZSTV9JTkYgKH4oX191NjQpMCkKKyNkZWZpbmUgWEZSTV9JTkYgKH4oX191NjQpIDApCiBzdHJ1Y3QgeGZybV9saWZldGltZV9jZmcgewotIF9fdTY0IHNvZnRfYnl0ZV9saW1pdDsKKyAgX191NjQgc29mdF9ieXRlX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBoYXJkX2J5dGVfbGltaXQ7Ci0gX191NjQgc29mdF9wYWNrZXRfbGltaXQ7Ci0gX191NjQgaGFyZF9wYWNrZXRfbGltaXQ7Ci0gX191NjQgc29mdF9hZGRfZXhwaXJlc19zZWNvbmRzOworICBfX3U2NCBoYXJkX2J5dGVfbGltaXQ7CisgIF9fdTY0IHNvZnRfcGFja2V0X2xpbWl0OworICBfX3U2NCBoYXJkX3BhY2tldF9saW1pdDsKKyAgX191NjQgc29mdF9hZGRfZXhwaXJlc19zZWNvbmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBoYXJkX2FkZF9leHBpcmVzX3NlY29uZHM7Ci0gX191NjQgc29mdF91c2VfZXhwaXJlc19zZWNvbmRzOwotIF9fdTY0IGhhcmRfdXNlX2V4cGlyZXNfc2Vjb25kczsKKyAgX191NjQgaGFyZF9hZGRfZXhwaXJlc19zZWNvbmRzOworICBfX3U2NCBzb2Z0X3VzZV9leHBpcmVzX3NlY29uZHM7CisgIF9fdTY0IGhhcmRfdXNlX2V4cGlyZXNfc2Vjb25kczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fbGlmZXRpbWVfY3VyIHsKLSBfX3U2NCBieXRlczsKLSBfX3U2NCBwYWNrZXRzOwotIF9fdTY0IGFkZF90aW1lOworICBfX3U2NCBieXRlczsKKyAgX191NjQgcGFja2V0czsKKyAgX191NjQgYWRkX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVzZV90aW1lOworICBfX3U2NCB1c2VfdGltZTsKIH07CiBzdHJ1Y3QgeGZybV9yZXBsYXlfc3RhdGUgewotIF9fdTMyIG9zZXE7CisgIF9fdTMyIG9zZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNlcTsKLSBfX3UzMiBiaXRtYXA7CisgIF9fdTMyIHNlcTsKKyAgX191MzIgYml0bWFwOwogfTsKICNkZWZpbmUgWEZSTUFfUkVQTEFZX0VTTl9NQVggNDA5NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3JlcGxheV9zdGF0ZV9lc24gewotIHVuc2lnbmVkIGludCBibXBfbGVuOwotIF9fdTMyIG9zZXE7Ci0gX191MzIgc2VxOworICB1bnNpZ25lZCBpbnQgYm1wX2xlbjsKKyAgX191MzIgb3NlcTsKKyAgX191MzIgc2VxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvc2VxX2hpOwotIF9fdTMyIHNlcV9oaTsKLSBfX3UzMiByZXBsYXlfd2luZG93OwotIF9fdTMyIGJtcFswXTsKKyAgX191MzIgb3NlcV9oaTsKKyAgX191MzIgc2VxX2hpOworICBfX3UzMiByZXBsYXlfd2luZG93OworICBfX3UzMiBibXBbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4ZnJtX2FsZ28gewotIGNoYXIgYWxnX25hbWVbNjRdOwotIHVuc2lnbmVkIGludCBhbGdfa2V5X2xlbjsKKyAgY2hhciBhbGdfbmFtZVs2NF07CisgIHVuc2lnbmVkIGludCBhbGdfa2V5X2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhbGdfa2V5WzBdOworICBjaGFyIGFsZ19rZXlbMF07CiB9Owogc3RydWN0IHhmcm1fYWxnb19hdXRoIHsKLSBjaGFyIGFsZ19uYW1lWzY0XTsKKyAgY2hhciBhbGdfbmFtZVs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhbGdfa2V5X2xlbjsKLSB1bnNpZ25lZCBpbnQgYWxnX3RydW5jX2xlbjsKLSBjaGFyIGFsZ19rZXlbMF07CisgIHVuc2lnbmVkIGludCBhbGdfa2V5X2xlbjsKKyAgdW5zaWduZWQgaW50IGFsZ190cnVuY19sZW47CisgIGNoYXIgYWxnX2tleVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fYWxnb19hZWFkIHsKLSBjaGFyIGFsZ19uYW1lWzY0XTsKLSB1bnNpZ25lZCBpbnQgYWxnX2tleV9sZW47Ci0gdW5zaWduZWQgaW50IGFsZ19pY3ZfbGVuOworICBjaGFyIGFsZ19uYW1lWzY0XTsKKyAgdW5zaWduZWQgaW50IGFsZ19rZXlfbGVuOworICB1bnNpZ25lZCBpbnQgYWxnX2ljdl9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYWxnX2tleVswXTsKKyAgY2hhciBhbGdfa2V5WzBdOwogfTsKIHN0cnVjdCB4ZnJtX3N0YXRzIHsKLSBfX3UzMiByZXBsYXlfd2luZG93OworICBfX3UzMiByZXBsYXlfd2luZG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXBsYXk7Ci0gX191MzIgaW50ZWdyaXR5X2ZhaWxlZDsKKyAgX191MzIgcmVwbGF5OworICBfX3UzMiBpbnRlZ3JpdHlfZmFpbGVkOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX1BPTElDWV9UWVBFX01BSU4gPSAwLAotIFhGUk1fUE9MSUNZX1RZUEVfU1VCID0gMSwKLSBYRlJNX1BPTElDWV9UWVBFX01BWCA9IDIsCi0gWEZSTV9QT0xJQ1lfVFlQRV9BTlkgPSAyNTUKKyAgWEZSTV9QT0xJQ1lfVFlQRV9NQUlOID0gMCwKKyAgWEZSTV9QT0xJQ1lfVFlQRV9TVUIgPSAxLAorICBYRlJNX1BPTElDWV9UWVBFX01BWCA9IDIsCisgIFhGUk1fUE9MSUNZX1RZUEVfQU5ZID0gMjU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFhGUk1fUE9MSUNZX0lOID0gMCwKLSBYRlJNX1BPTElDWV9PVVQgPSAxLAorICBYRlJNX1BPTElDWV9JTiA9IDAsCisgIFhGUk1fUE9MSUNZX09VVCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fUE9MSUNZX0ZXRCA9IDIsCi0gWEZSTV9QT0xJQ1lfTUFTSyA9IDMsCi0gWEZSTV9QT0xJQ1lfTUFYID0gMworICBYRlJNX1BPTElDWV9GV0QgPSAyLAorICBYRlJNX1BPTElDWV9NQVNLID0gMywKKyAgWEZSTV9QT0xJQ1lfTUFYID0gMwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBYRlJNX1NIQVJFX0FOWSwKLSBYRlJNX1NIQVJFX1NFU1NJT04sCi0gWEZSTV9TSEFSRV9VU0VSLAorICBYRlJNX1NIQVJFX0FOWSwKKyAgWEZSTV9TSEFSRV9TRVNTSU9OLAorICBYRlJNX1NIQVJFX1VTRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fU0hBUkVfVU5JUVVFCisgIFhGUk1fU0hBUkVfVU5JUVVFCiB9OwogI2RlZmluZSBYRlJNX01PREVfVFJBTlNQT1JUIDAKICNkZWZpbmUgWEZSTV9NT0RFX1RVTk5FTCAxCkBAIC0xNjIsMjE3ICsxNjIsMjI3IEBACiAjZGVmaW5lIFhGUk1fTU9ERV9NQVggNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFhGUk1fTVNHX0JBU0UgPSAweDEwLAotIFhGUk1fTVNHX05FV1NBID0gMHgxMCwKKyAgWEZSTV9NU0dfQkFTRSA9IDB4MTAsCisgIFhGUk1fTVNHX05FV1NBID0gMHgxMCwKICNkZWZpbmUgWEZSTV9NU0dfTkVXU0EgWEZSTV9NU0dfTkVXU0EKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfREVMU0EsCisgIFhGUk1fTVNHX0RFTFNBLAogI2RlZmluZSBYRlJNX01TR19ERUxTQSBYRlJNX01TR19ERUxTQQotIFhGUk1fTVNHX0dFVFNBLAorICBYRlJNX01TR19HRVRTQSwKICNkZWZpbmUgWEZSTV9NU0dfR0VUU0EgWEZSTV9NU0dfR0VUU0EKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfTkVXUE9MSUNZLAorICBYRlJNX01TR19ORVdQT0xJQ1ksCiAjZGVmaW5lIFhGUk1fTVNHX05FV1BPTElDWSBYRlJNX01TR19ORVdQT0xJQ1kKLSBYRlJNX01TR19ERUxQT0xJQ1ksCisgIFhGUk1fTVNHX0RFTFBPTElDWSwKICNkZWZpbmUgWEZSTV9NU0dfREVMUE9MSUNZIFhGUk1fTVNHX0RFTFBPTElDWQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19HRVRQT0xJQ1ksCisgIFhGUk1fTVNHX0dFVFBPTElDWSwKICNkZWZpbmUgWEZSTV9NU0dfR0VUUE9MSUNZIFhGUk1fTVNHX0dFVFBPTElDWQotIFhGUk1fTVNHX0FMTE9DU1BJLAorICBYRlJNX01TR19BTExPQ1NQSSwKICNkZWZpbmUgWEZSTV9NU0dfQUxMT0NTUEkgWEZSTV9NU0dfQUxMT0NTUEkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfQUNRVUlSRSwKKyAgWEZSTV9NU0dfQUNRVUlSRSwKICNkZWZpbmUgWEZSTV9NU0dfQUNRVUlSRSBYRlJNX01TR19BQ1FVSVJFCi0gWEZSTV9NU0dfRVhQSVJFLAorICBYRlJNX01TR19FWFBJUkUsCiAjZGVmaW5lIFhGUk1fTVNHX0VYUElSRSBYRlJNX01TR19FWFBJUkUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfVVBEUE9MSUNZLAorICBYRlJNX01TR19VUERQT0xJQ1ksCiAjZGVmaW5lIFhGUk1fTVNHX1VQRFBPTElDWSBYRlJNX01TR19VUERQT0xJQ1kKLSBYRlJNX01TR19VUERTQSwKKyAgWEZSTV9NU0dfVVBEU0EsCiAjZGVmaW5lIFhGUk1fTVNHX1VQRFNBIFhGUk1fTVNHX1VQRFNBCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX1BPTEVYUElSRSwKKyAgWEZSTV9NU0dfUE9MRVhQSVJFLAogI2RlZmluZSBYRlJNX01TR19QT0xFWFBJUkUgWEZSTV9NU0dfUE9MRVhQSVJFCi0gWEZSTV9NU0dfRkxVU0hTQSwKKyAgWEZSTV9NU0dfRkxVU0hTQSwKICNkZWZpbmUgWEZSTV9NU0dfRkxVU0hTQSBYRlJNX01TR19GTFVTSFNBCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX0ZMVVNIUE9MSUNZLAorICBYRlJNX01TR19GTFVTSFBPTElDWSwKICNkZWZpbmUgWEZSTV9NU0dfRkxVU0hQT0xJQ1kgWEZSTV9NU0dfRkxVU0hQT0xJQ1kKLSBYRlJNX01TR19ORVdBRSwKKyAgWEZSTV9NU0dfTkVXQUUsCiAjZGVmaW5lIFhGUk1fTVNHX05FV0FFIFhGUk1fTVNHX05FV0FFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX0dFVEFFLAorICBYRlJNX01TR19HRVRBRSwKICNkZWZpbmUgWEZSTV9NU0dfR0VUQUUgWEZSTV9NU0dfR0VUQUUKLSBYRlJNX01TR19SRVBPUlQsCisgIFhGUk1fTVNHX1JFUE9SVCwKICNkZWZpbmUgWEZSTV9NU0dfUkVQT1JUIFhGUk1fTVNHX1JFUE9SVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19NSUdSQVRFLAorICBYRlJNX01TR19NSUdSQVRFLAogI2RlZmluZSBYRlJNX01TR19NSUdSQVRFIFhGUk1fTVNHX01JR1JBVEUKLSBYRlJNX01TR19ORVdTQURJTkZPLAorICBYRlJNX01TR19ORVdTQURJTkZPLAogI2RlZmluZSBYRlJNX01TR19ORVdTQURJTkZPIFhGUk1fTVNHX05FV1NBRElORk8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfR0VUU0FESU5GTywKKyAgWEZSTV9NU0dfR0VUU0FESU5GTywKICNkZWZpbmUgWEZSTV9NU0dfR0VUU0FESU5GTyBYRlJNX01TR19HRVRTQURJTkZPCi0gWEZSTV9NU0dfTkVXU1BESU5GTywKKyAgWEZSTV9NU0dfTkVXU1BESU5GTywKICNkZWZpbmUgWEZSTV9NU0dfTkVXU1BESU5GTyBYRlJNX01TR19ORVdTUERJTkZPCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX0dFVFNQRElORk8sCisgIFhGUk1fTVNHX0dFVFNQRElORk8sCiAjZGVmaW5lIFhGUk1fTVNHX0dFVFNQRElORk8gWEZSTV9NU0dfR0VUU1BESU5GTwotIFhGUk1fTVNHX01BUFBJTkcsCisgIFhGUk1fTVNHX01BUFBJTkcsCiAjZGVmaW5lIFhGUk1fTVNHX01BUFBJTkcgWEZSTV9NU0dfTUFQUElORwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1hGUk1fTVNHX01BWAorICBfX1hGUk1fTVNHX01BWAogfTsKICNkZWZpbmUgWEZSTV9NU0dfTUFYIChfX1hGUk1fTVNHX01BWCAtIDEpCiAjZGVmaW5lIFhGUk1fTlJfTVNHVFlQRVMgKFhGUk1fTVNHX01BWCArIDEgLSBYRlJNX01TR19CQVNFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3VzZXJfc2VjX2N0eCB7Ci0gX191MTYgbGVuOwotIF9fdTE2IGV4dHR5cGU7Ci0gX191OCBjdHhfYWxnOworICBfX3UxNiBsZW47CisgIF9fdTE2IGV4dHR5cGU7CisgIF9fdTggY3R4X2FsZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjdHhfZG9pOwotIF9fdTE2IGN0eF9sZW47CisgIF9fdTggY3R4X2RvaTsKKyAgX191MTYgY3R4X2xlbjsKIH07CiBzdHJ1Y3QgeGZybV91c2VyX3RtcGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeGZybV9pZCBpZDsKLSBfX3UxNiBmYW1pbHk7Ci0geGZybV9hZGRyZXNzX3Qgc2FkZHI7Ci0gX191MzIgcmVxaWQ7CisgIHN0cnVjdCB4ZnJtX2lkIGlkOworICBfX3UxNiBmYW1pbHk7CisgIHhmcm1fYWRkcmVzc190IHNhZGRyOworICBfX3UzMiByZXFpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtb2RlOwotIF9fdTggc2hhcmU7Ci0gX191OCBvcHRpb25hbDsKLSBfX3UzMiBhYWxnb3M7CisgIF9fdTggbW9kZTsKKyAgX191OCBzaGFyZTsKKyAgX191OCBvcHRpb25hbDsKKyAgX191MzIgYWFsZ29zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlYWxnb3M7Ci0gX191MzIgY2FsZ29zOworICBfX3UzMiBlYWxnb3M7CisgIF9fdTMyIGNhbGdvczsKIH07CiBzdHJ1Y3QgeGZybV9lbmNhcF90bXBsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZW5jYXBfdHlwZTsKLSBfX2JlMTYgZW5jYXBfc3BvcnQ7Ci0gX19iZTE2IGVuY2FwX2Rwb3J0OwotIHhmcm1fYWRkcmVzc190IGVuY2FwX29hOworICBfX3UxNiBlbmNhcF90eXBlOworICBfX2JlMTYgZW5jYXBfc3BvcnQ7CisgIF9fYmUxNiBlbmNhcF9kcG9ydDsKKyAgeGZybV9hZGRyZXNzX3QgZW5jYXBfb2E7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0geGZybV9hZV9mdHlwZV90IHsKLSBYRlJNX0FFX1VOU1BFQywKLSBYRlJNX0FFX1JUSFI9MSwKKyAgWEZSTV9BRV9VTlNQRUMsCisgIFhGUk1fQUVfUlRIUiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fQUVfUlZBTD0yLAotIFhGUk1fQUVfTFZBTD00LAotIFhGUk1fQUVfRVRIUj04LAotIFhGUk1fQUVfQ1I9MTYsCisgIFhGUk1fQUVfUlZBTCA9IDIsCisgIFhGUk1fQUVfTFZBTCA9IDQsCisgIFhGUk1fQUVfRVRIUiA9IDgsCisgIFhGUk1fQUVfQ1IgPSAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9BRV9DRT0zMiwKLSBYRlJNX0FFX0NVPTY0LAotIF9fWEZSTV9BRV9NQVgKKyAgWEZSTV9BRV9DRSA9IDMyLAorICBYRlJNX0FFX0NVID0gNjQsCisgIF9fWEZSTV9BRV9NQVgKICNkZWZpbmUgWEZSTV9BRV9NQVggKF9fWEZSTV9BRV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybV91c2VycG9saWN5X3R5cGUgewotIF9fdTggdHlwZTsKLSBfX3UxNiByZXNlcnZlZDE7CisgIF9fdTggdHlwZTsKKyAgX191MTYgcmVzZXJ2ZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkMjsKKyAgX191OCByZXNlcnZlZDI7CiB9OwogZW51bSB4ZnJtX2F0dHJfdHlwZV90IHsKLSBYRlJNQV9VTlNQRUMsCisgIFhGUk1BX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfQUxHX0FVVEgsCi0gWEZSTUFfQUxHX0NSWVBULAotIFhGUk1BX0FMR19DT01QLAotIFhGUk1BX0VOQ0FQLAorICBYRlJNQV9BTEdfQVVUSCwKKyAgWEZSTUFfQUxHX0NSWVBULAorICBYRlJNQV9BTEdfQ09NUCwKKyAgWEZSTUFfRU5DQVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX1RNUEwsCi0gWEZSTUFfU0EsCi0gWEZSTUFfUE9MSUNZLAotIFhGUk1BX1NFQ19DVFgsCisgIFhGUk1BX1RNUEwsCisgIFhGUk1BX1NBLAorICBYRlJNQV9QT0xJQ1ksCisgIFhGUk1BX1NFQ19DVFgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX0xUSU1FX1ZBTCwKLSBYRlJNQV9SRVBMQVlfVkFMLAotIFhGUk1BX1JFUExBWV9USFJFU0gsCi0gWEZSTUFfRVRJTUVSX1RIUkVTSCwKKyAgWEZSTUFfTFRJTUVfVkFMLAorICBYRlJNQV9SRVBMQVlfVkFMLAorICBYRlJNQV9SRVBMQVlfVEhSRVNILAorICBYRlJNQV9FVElNRVJfVEhSRVNILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNQV9TUkNBRERSLAotIFhGUk1BX0NPQUREUiwKLSBYRlJNQV9MQVNUVVNFRCwKLSBYRlJNQV9QT0xJQ1lfVFlQRSwKKyAgWEZSTUFfU1JDQUREUiwKKyAgWEZSTUFfQ09BRERSLAorICBYRlJNQV9MQVNUVVNFRCwKKyAgWEZSTUFfUE9MSUNZX1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX01JR1JBVEUsCi0gWEZSTUFfQUxHX0FFQUQsCi0gWEZSTUFfS01BRERSRVNTLAotIFhGUk1BX0FMR19BVVRIX1RSVU5DLAorICBYRlJNQV9NSUdSQVRFLAorICBYRlJNQV9BTEdfQUVBRCwKKyAgWEZSTUFfS01BRERSRVNTLAorICBYRlJNQV9BTEdfQVVUSF9UUlVOQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfTUFSSywKLSBYRlJNQV9URkNQQUQsCi0gWEZSTUFfUkVQTEFZX0VTTl9WQUwsCi0gWEZSTUFfU0FfRVhUUkFfRkxBR1MsCisgIFhGUk1BX01BUkssCisgIFhGUk1BX1RGQ1BBRCwKKyAgWEZSTUFfUkVQTEFZX0VTTl9WQUwsCisgIFhGUk1BX1NBX0VYVFJBX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1hGUk1BX01BWAorICBYRlJNQV9QUk9UTywKKyAgWEZSTUFfQUREUkVTU19GSUxURVIsCisgIF9fWEZSTUFfTUFYCiAjZGVmaW5lIFhGUk1BX01BWCAoX19YRlJNQV9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybV9tYXJrIHsKKyAgX191MzIgdjsKKyAgX191MzIgbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdjsKLSBfX3UzMiBtOwogfTsKIGVudW0geGZybV9zYWRhdHRyX3R5cGVfdCB7CisgIFhGUk1BX1NBRF9VTlNQRUMsCisgIFhGUk1BX1NBRF9DTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX1NBRF9VTlNQRUMsCi0gWEZSTUFfU0FEX0NOVCwKLSBYRlJNQV9TQURfSElORk8sCi0gX19YRlJNQV9TQURfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBYRlJNQV9TQURfSElORk8sCisgIF9fWEZSTUFfU0FEX01BWAogI2RlZmluZSBYRlJNQV9TQURfTUFYIChfX1hGUk1BX1NBRF9NQVggLSAxKQogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybXVfc2FkaGluZm8gewotIF9fdTMyIHNhZGhjbnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhZGhtY250OworICBfX3UzMiBzYWRoY250OworICBfX3UzMiBzYWRobWNudDsKIH07Ci1lbnVtIHhmcm1fc3BkYXR0cl90eXBlX3QgewotIFhGUk1BX1NQRF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX1NQRF9JTkZPLAotIFhGUk1BX1NQRF9ISU5GTywKLSBfX1hGUk1BX1NQRF9NQVgKK2VudW0geGZybV9zcGRhdHRyX3R5cGVfdCB7CisgIFhGUk1BX1NQRF9VTlNQRUMsCisgIFhGUk1BX1NQRF9JTkZPLAorICBYRlJNQV9TUERfSElORk8sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBYRlJNQV9TUERfSVBWNF9IVEhSRVNILAorICBYRlJNQV9TUERfSVBWNl9IVEhSRVNILAorICBfX1hGUk1BX1NQRF9NQVgKICNkZWZpbmUgWEZSTUFfU1BEX01BWCAoX19YRlJNQV9TUERfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHhmcm11X3NwZGluZm8gewotIF9fdTMyIGluY250OwotIF9fdTMyIG91dGNudDsKKyAgX191MzIgaW5jbnQ7CisgIF9fdTMyIG91dGNudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZndkY250OwotIF9fdTMyIGluc2NudDsKLSBfX3UzMiBvdXRzY250OwotIF9fdTMyIGZ3ZHNjbnQ7CisgIF9fdTMyIGZ3ZGNudDsKKyAgX191MzIgaW5zY250OworICBfX3UzMiBvdXRzY250OworICBfX3UzMiBmd2RzY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybXVfc3BkaGluZm8gewotIF9fdTMyIHNwZGhjbnQ7Ci0gX191MzIgc3BkaG1jbnQ7CisgIF9fdTMyIHNwZGhjbnQ7CisgIF9fdTMyIHNwZGhtY250OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgeGZybXVfc3BkaHRocmVzaCB7CisgIF9fdTggbGJpdHM7CisgIF9fdTggcmJpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJzYV9pbmZvIHsKLSBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7Ci0gc3RydWN0IHhmcm1faWQgaWQ7CisgIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKKyAgc3RydWN0IHhmcm1faWQgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHhmcm1fYWRkcmVzc190IHNhZGRyOwotIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2NmZyBsZnQ7Ci0gc3RydWN0IHhmcm1fbGlmZXRpbWVfY3VyIGN1cmxmdDsKLSBzdHJ1Y3QgeGZybV9zdGF0cyBzdGF0czsKKyAgeGZybV9hZGRyZXNzX3Qgc2FkZHI7CisgIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2NmZyBsZnQ7CisgIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2N1ciBjdXJsZnQ7CisgIHN0cnVjdCB4ZnJtX3N0YXRzIHN0YXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZXE7Ci0gX191MzIgcmVxaWQ7Ci0gX191MTYgZmFtaWx5OwotIF9fdTggbW9kZTsKKyAgX191MzIgc2VxOworICBfX3UzMiByZXFpZDsKKyAgX191MTYgZmFtaWx5OworICBfX3U4IG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVwbGF5X3dpbmRvdzsKLSBfX3U4IGZsYWdzOworICBfX3U4IHJlcGxheV93aW5kb3c7CisgIF9fdTggZmxhZ3M7CiAjZGVmaW5lIFhGUk1fU1RBVEVfTk9FQ04gMQogI2RlZmluZSBYRlJNX1NUQVRFX0RFQ0FQX0RTQ1AgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM4NywxNDcgKzM5NywxNTUgQEAKICNkZWZpbmUgWEZSTV9TQV9YRkxBR19ET05UX0VOQ0FQX0RTQ1AgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3VzZXJzYV9pZCB7Ci0geGZybV9hZGRyZXNzX3QgZGFkZHI7Ci0gX19iZTMyIHNwaTsKLSBfX3UxNiBmYW1pbHk7CisgIHhmcm1fYWRkcmVzc190IGRhZGRyOworICBfX2JlMzIgc3BpOworICBfX3UxNiBmYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJvdG87CisgIF9fdTggcHJvdG87CiB9Owogc3RydWN0IHhmcm1fYWV2ZW50X2lkIHsKLSBzdHJ1Y3QgeGZybV91c2Vyc2FfaWQgc2FfaWQ7CisgIHN0cnVjdCB4ZnJtX3VzZXJzYV9pZCBzYV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0geGZybV9hZGRyZXNzX3Qgc2FkZHI7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVxaWQ7CisgIHhmcm1fYWRkcmVzc190IHNhZGRyOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVxaWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3VzZXJzcGlfaW5mbyB7Ci0gc3RydWN0IHhmcm1fdXNlcnNhX2luZm8gaW5mbzsKLSBfX3UzMiBtaW47Ci0gX191MzIgbWF4OworICBzdHJ1Y3QgeGZybV91c2Vyc2FfaW5mbyBpbmZvOworICBfX3UzMiBtaW47CisgIF9fdTMyIG1heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHhmcm1fdXNlcnBvbGljeV9pbmZvIHsKLSBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7Ci0gc3RydWN0IHhmcm1fbGlmZXRpbWVfY2ZnIGxmdDsKKyAgc3RydWN0IHhmcm1fc2VsZWN0b3Igc2VsOworICBzdHJ1Y3QgeGZybV9saWZldGltZV9jZmcgbGZ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeGZybV9saWZldGltZV9jdXIgY3VybGZ0OwotIF9fdTMyIHByaW9yaXR5OwotIF9fdTMyIGluZGV4OwotIF9fdTggZGlyOworICBzdHJ1Y3QgeGZybV9saWZldGltZV9jdXIgY3VybGZ0OworICBfX3UzMiBwcmlvcml0eTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTggZGlyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFjdGlvbjsKKyAgX191OCBhY3Rpb247CiAjZGVmaW5lIFhGUk1fUE9MSUNZX0FMTE9XIDAKICNkZWZpbmUgWEZSTV9QT0xJQ1lfQkxPQ0sgMQotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYRlJNX1BPTElDWV9MT0NBTE9LIDEKICNkZWZpbmUgWEZSTV9QT0xJQ1lfSUNNUCAyCi0gX191OCBzaGFyZTsKKyAgX191OCBzaGFyZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fdXNlcnBvbGljeV9pZCB7Ci0gc3RydWN0IHhmcm1fc2VsZWN0b3Igc2VsOwotIF9fdTMyIGluZGV4OwotIF9fdTggZGlyOworICBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7CisgIF9fdTMyIGluZGV4OworICBfX3U4IGRpcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHhmcm1fdXNlcl9hY3F1aXJlIHsKLSBzdHJ1Y3QgeGZybV9pZCBpZDsKLSB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKKyAgc3RydWN0IHhmcm1faWQgaWQ7CisgIHhmcm1fYWRkcmVzc190IHNhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7Ci0gc3RydWN0IHhmcm1fdXNlcnBvbGljeV9pbmZvIHBvbGljeTsKLSBfX3UzMiBhYWxnb3M7Ci0gX191MzIgZWFsZ29zOworICBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7CisgIHN0cnVjdCB4ZnJtX3VzZXJwb2xpY3lfaW5mbyBwb2xpY3k7CisgIF9fdTMyIGFhbGdvczsKKyAgX191MzIgZWFsZ29zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjYWxnb3M7Ci0gX191MzIgc2VxOworICBfX3UzMiBjYWxnb3M7CisgIF9fdTMyIHNlcTsKIH07CiBzdHJ1Y3QgeGZybV91c2VyX2V4cGlyZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4ZnJtX3VzZXJzYV9pbmZvIHN0YXRlOwotIF9fdTggaGFyZDsKKyAgc3RydWN0IHhmcm1fdXNlcnNhX2luZm8gc3RhdGU7CisgIF9fdTggaGFyZDsKIH07CiBzdHJ1Y3QgeGZybV91c2VyX3BvbGV4cGlyZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4ZnJtX3VzZXJwb2xpY3lfaW5mbyBwb2w7Ci0gX191OCBoYXJkOworICBzdHJ1Y3QgeGZybV91c2VycG9saWN5X2luZm8gcG9sOworICBfX3U4IGhhcmQ7CiB9Owogc3RydWN0IHhmcm1fdXNlcnNhX2ZsdXNoIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcm90bzsKKyAgX191OCBwcm90bzsKIH07CiBzdHJ1Y3QgeGZybV91c2VyX3JlcG9ydCB7Ci0gX191OCBwcm90bzsKKyAgX191OCBwcm90bzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHhmcm1fc2VsZWN0b3Igc2VsOworICBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7CiB9Owogc3RydWN0IHhmcm1fdXNlcl9rbWFkZHJlc3MgewotIHhmcm1fYWRkcmVzc190IGxvY2FsOworICB4ZnJtX2FkZHJlc3NfdCBsb2NhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0geGZybV9hZGRyZXNzX3QgcmVtb3RlOwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTE2IGZhbWlseTsKKyAgeGZybV9hZGRyZXNzX3QgcmVtb3RlOworICBfX3UzMiByZXNlcnZlZDsKKyAgX191MTYgZmFtaWx5OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV91c2VyX21pZ3JhdGUgewotIHhmcm1fYWRkcmVzc190IG9sZF9kYWRkcjsKLSB4ZnJtX2FkZHJlc3NfdCBvbGRfc2FkZHI7Ci0geGZybV9hZGRyZXNzX3QgbmV3X2RhZGRyOworICB4ZnJtX2FkZHJlc3NfdCBvbGRfZGFkZHI7CisgIHhmcm1fYWRkcmVzc190IG9sZF9zYWRkcjsKKyAgeGZybV9hZGRyZXNzX3QgbmV3X2RhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB4ZnJtX2FkZHJlc3NfdCBuZXdfc2FkZHI7Ci0gX191OCBwcm90bzsKLSBfX3U4IG1vZGU7Ci0gX191MTYgcmVzZXJ2ZWQ7CisgIHhmcm1fYWRkcmVzc190IG5ld19zYWRkcjsKKyAgX191OCBwcm90bzsKKyAgX191OCBtb2RlOworICBfX3UxNiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVxaWQ7Ci0gX191MTYgb2xkX2ZhbWlseTsKLSBfX3UxNiBuZXdfZmFtaWx5OworICBfX3UzMiByZXFpZDsKKyAgX191MTYgb2xkX2ZhbWlseTsKKyAgX191MTYgbmV3X2ZhbWlseTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fdXNlcl9tYXBwaW5nIHsKLSBzdHJ1Y3QgeGZybV91c2Vyc2FfaWQgaWQ7Ci0gX191MzIgcmVxaWQ7Ci0geGZybV9hZGRyZXNzX3Qgb2xkX3NhZGRyOworICBzdHJ1Y3QgeGZybV91c2Vyc2FfaWQgaWQ7CisgIF9fdTMyIHJlcWlkOworICB4ZnJtX2FkZHJlc3NfdCBvbGRfc2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHhmcm1fYWRkcmVzc190IG5ld19zYWRkcjsKLSBfX2JlMTYgb2xkX3Nwb3J0OwotIF9fYmUxNiBuZXdfc3BvcnQ7CisgIHhmcm1fYWRkcmVzc190IG5ld19zYWRkcjsKKyAgX19iZTE2IG9sZF9zcG9ydDsKKyAgX19iZTE2IG5ld19zcG9ydDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHhmcm1fYWRkcmVzc19maWx0ZXIgeworICB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKKyAgeGZybV9hZGRyZXNzX3QgZGFkZHI7CisgIF9fdTE2IGZhbWlseTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc3BsZW47CisgIF9fdTggZHBsZW47Cit9OwogI2RlZmluZSBYRlJNR1JQX0FDUVVJUkUgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWEZSTUdSUF9FWFBJUkUgMgogI2RlZmluZSBYRlJNR1JQX1NBIDQKICNkZWZpbmUgWEZSTUdSUF9QT0xJQ1kgOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWEZSTUdSUF9SRVBPUlQgMHgyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geGZybV9ubGdyb3VwcyB7Ci0gWEZSTU5MR1JQX05PTkUsCisgIFhGUk1OTEdSUF9OT05FLAogI2RlZmluZSBYRlJNTkxHUlBfTk9ORSBYRlJNTkxHUlBfTk9ORQorICBYRlJNTkxHUlBfQUNRVUlSRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTU5MR1JQX0FDUVVJUkUsCiAjZGVmaW5lIFhGUk1OTEdSUF9BQ1FVSVJFIFhGUk1OTEdSUF9BQ1FVSVJFCi0gWEZSTU5MR1JQX0VYUElSRSwKKyAgWEZSTU5MR1JQX0VYUElSRSwKICNkZWZpbmUgWEZSTU5MR1JQX0VYUElSRSBYRlJNTkxHUlBfRVhQSVJFCisgIFhGUk1OTEdSUF9TQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTU5MR1JQX1NBLAogI2RlZmluZSBYRlJNTkxHUlBfU0EgWEZSTU5MR1JQX1NBCi0gWEZSTU5MR1JQX1BPTElDWSwKKyAgWEZSTU5MR1JQX1BPTElDWSwKICNkZWZpbmUgWEZSTU5MR1JQX1BPTElDWSBYRlJNTkxHUlBfUE9MSUNZCisgIFhGUk1OTEdSUF9BRVZFTlRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNTkxHUlBfQUVWRU5UUywKICNkZWZpbmUgWEZSTU5MR1JQX0FFVkVOVFMgWEZSTU5MR1JQX0FFVkVOVFMKLSBYRlJNTkxHUlBfUkVQT1JULAorICBYRlJNTkxHUlBfUkVQT1JULAogI2RlZmluZSBYRlJNTkxHUlBfUkVQT1JUIFhGUk1OTEdSUF9SRVBPUlQKKyAgWEZSTU5MR1JQX01JR1JBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1OTEdSUF9NSUdSQVRFLAogI2RlZmluZSBYRlJNTkxHUlBfTUlHUkFURSBYRlJNTkxHUlBfTUlHUkFURQotIFhGUk1OTEdSUF9NQVBQSU5HLAorICBYRlJNTkxHUlBfTUFQUElORywKICNkZWZpbmUgWEZSTU5MR1JQX01BUFBJTkcgWEZSTU5MR1JQX01BUFBJTkcKKyAgX19YRlJNTkxHUlBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fWEZSTU5MR1JQX01BWAogfTsKICNkZWZpbmUgWEZSTU5MR1JQX01BWCAoX19YRlJNTkxHUlBfTUFYIC0gMSkKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvem9ycm8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvem9ycm8uaAppbmRleCAyMTllZjcwLi4xODFjZDhmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3pvcnJvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC96b3Jyby5oCkBAIC0yMyw3ICsyMyw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBaT1JST19QUk9EKGlkKSAoKChpZCkgPj4gOCkgJiAweGZmKQogI2RlZmluZSBaT1JST19FUEMoaWQpICgoaWQpICYgMHhmZikKLSNkZWZpbmUgWk9SUk9fSUQobWFudWYsIHByb2QsIGVwYykgICAoKFpPUlJPX01BTlVGXyMjbWFudWYgPDwgMTYpIHwgKChwcm9kKSA8PCA4KSB8IChlcGMpKQorI2RlZmluZSBaT1JST19JRChtYW51Zixwcm9kLGVwYykgKChaT1JST19NQU5VRl8gIyNtYW51ZiA8PCAxNikgfCAoKHByb2QpIDw8IDgpIHwgKGVwYykpCiB0eXBlZGVmIF9fdTMyIHpvcnJvX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC96b3Jyb19pZHMuaD4KQEAgLTMxLDM5ICszMSwzOSBAQAogI2RlZmluZSBHVlBfU0NTSUNMS01BU0sgKDB4MDEpCiBlbnVtIEdWUF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdWUF9JTyA9IDB4MDEsCi0gR1ZQX0FDQ0VMID0gMHgwMiwKLSBHVlBfU0NTSSA9IDB4MDQsCi0gR1ZQXzI0QklURE1BID0gMHgwOCwKKyAgR1ZQX0lPID0gMHgwMSwKKyAgR1ZQX0FDQ0VMID0gMHgwMiwKKyAgR1ZQX1NDU0kgPSAweDA0LAorICBHVlBfMjRCSVRETUEgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHVlBfMjVCSVRETUEgPSAweDEwLAotIEdWUF9OT0JBTksgPSAweDIwLAotIEdWUF8xNE1IWiA9IDB4NDAsCisgIEdWUF8yNUJJVERNQSA9IDB4MTAsCisgIEdWUF9OT0JBTksgPSAweDIwLAorICBHVlBfMTRNSFogPSAweDQwLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgTm9kZSB7Ci0gX19iZTMyIGxuX1N1Y2M7Ci0gX19iZTMyIGxuX1ByZWQ7Ci0gX191OCBsbl9UeXBlOworICBfX2JlMzIgbG5fU3VjYzsKKyAgX19iZTMyIGxuX1ByZWQ7CisgIF9fdTggbG5fVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zOCBsbl9Qcmk7Ci0gX19iZTMyIGxuX05hbWU7CisgIF9fczggbG5fUHJpOworICBfX2JlMzIgbG5fTmFtZTsKIH0gX19wYWNrZWQ7CiBzdHJ1Y3QgRXhwYW5zaW9uUm9tIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlcl9UeXBlOwotIF9fdTggZXJfUHJvZHVjdDsKLSBfX3U4IGVyX0ZsYWdzOwotIF9fdTggZXJfUmVzZXJ2ZWQwMzsKKyAgX191OCBlcl9UeXBlOworICBfX3U4IGVyX1Byb2R1Y3Q7CisgIF9fdTggZXJfRmxhZ3M7CisgIF9fdTggZXJfUmVzZXJ2ZWQwMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGVyX01hbnVmYWN0dXJlcjsKLSBfX2JlMzIgZXJfU2VyaWFsTnVtYmVyOwotIF9fYmUxNiBlcl9Jbml0RGlhZ1ZlYzsKLSBfX3U4IGVyX1Jlc2VydmVkMGM7CisgIF9fYmUxNiBlcl9NYW51ZmFjdHVyZXI7CisgIF9fYmUzMiBlcl9TZXJpYWxOdW1iZXI7CisgIF9fYmUxNiBlcl9Jbml0RGlhZ1ZlYzsKKyAgX191OCBlcl9SZXNlcnZlZDBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVyX1Jlc2VydmVkMGQ7Ci0gX191OCBlcl9SZXNlcnZlZDBlOwotIF9fdTggZXJfUmVzZXJ2ZWQwZjsKKyAgX191OCBlcl9SZXNlcnZlZDBkOworICBfX3U4IGVyX1Jlc2VydmVkMGU7CisgIF9fdTggZXJfUmVzZXJ2ZWQwZjsKIH0gX19wYWNrZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFUlRfVFlQRU1BU0sgMHhjMApAQCAtNzEsMjIgKzcxLDIyIEBACiAjZGVmaW5lIEVSVF9aT1JST0lJSSAweDgwCiAjZGVmaW5lIEVSVEJfTUVNTElTVCA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBFUlRGX01FTUxJU1QgKDE8PDUpCisjZGVmaW5lIEVSVEZfTUVNTElTVCAoMSA8PCA1KQogc3RydWN0IENvbmZpZ0RldiB7Ci0gc3RydWN0IE5vZGUgY2RfTm9kZTsKLSBfX3U4IGNkX0ZsYWdzOworICBzdHJ1Y3QgTm9kZSBjZF9Ob2RlOworICBfX3U4IGNkX0ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkX1BhZDsKLSBzdHJ1Y3QgRXhwYW5zaW9uUm9tIGNkX1JvbTsKLSBfX2JlMzIgY2RfQm9hcmRBZGRyOwotIF9fYmUzMiBjZF9Cb2FyZFNpemU7CisgIF9fdTggY2RfUGFkOworICBzdHJ1Y3QgRXhwYW5zaW9uUm9tIGNkX1JvbTsKKyAgX19iZTMyIGNkX0JvYXJkQWRkcjsKKyAgX19iZTMyIGNkX0JvYXJkU2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGNkX1Nsb3RBZGRyOwotIF9fYmUxNiBjZF9TbG90U2l6ZTsKLSBfX2JlMzIgY2RfRHJpdmVyOwotIF9fYmUzMiBjZF9OZXh0Q0Q7CisgIF9fYmUxNiBjZF9TbG90QWRkcjsKKyAgX19iZTE2IGNkX1Nsb3RTaXplOworICBfX2JlMzIgY2RfRHJpdmVyOworICBfX2JlMzIgY2RfTmV4dENEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgY2RfVW51c2VkWzRdOworICBfX2JlMzIgY2RfVW51c2VkWzRdOwogfSBfX3BhY2tlZDsKICNkZWZpbmUgWk9SUk9fTlVNX0FVVE8gMTYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9taXNjL2N4bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9taXNjL2N4bC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1MGEwZDkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL21pc2MvY3hsLmgKQEAgLTAsMCArMSw5NiBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9NSVNDX0NYTF9ICisjZGVmaW5lIF9VQVBJX01JU0NfQ1hMX0gKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGN4bF9pb2N0bF9zdGFydF93b3JrIHsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHdvcmtfZWxlbWVudF9kZXNjcmlwdG9yOworICBfX3U2NCBhbXI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MxNiBudW1faW50ZXJydXB0czsKKyAgX19zMTYgcmVzZXJ2ZWQxOworICBfX3MzMiByZXNlcnZlZDI7CisgIF9fdTY0IHJlc2VydmVkMzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHJlc2VydmVkNDsKKyAgX191NjQgcmVzZXJ2ZWQ1OworICBfX3U2NCByZXNlcnZlZDY7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQ1hMX1NUQVJUX1dPUktfQU1SIDB4MDAwMDAwMDAwMDAwMDAwMVVMTAorI2RlZmluZSBDWExfU1RBUlRfV09SS19OVU1fSVJRUyAweDAwMDAwMDAwMDAwMDAwMDJVTEwKKyNkZWZpbmUgQ1hMX1NUQVJUX1dPUktfQUxMIChDWExfU1RBUlRfV09SS19BTVIgfCBDWExfU1RBUlRfV09SS19OVU1fSVJRUykKKyNkZWZpbmUgQ1hMX01BR0lDIDB4Q0EKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENYTF9JT0NUTF9TVEFSVF9XT1JLIF9JT1coQ1hMX01BR0lDLCAweDAwLCBzdHJ1Y3QgY3hsX2lvY3RsX3N0YXJ0X3dvcmspCisjZGVmaW5lIENYTF9JT0NUTF9HRVRfUFJPQ0VTU19FTEVNRU5UIF9JT1IoQ1hMX01BR0lDLCAweDAxLCBfX3UzMikKKyNkZWZpbmUgQ1hMX1JFQURfTUlOX1NJWkUgMHgxMDAwCitlbnVtIGN4bF9ldmVudF90eXBlIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIENYTF9FVkVOVF9SRVNFUlZFRCA9IDAsCisgIENYTF9FVkVOVF9BRlVfSU5URVJSVVBUID0gMSwKKyAgQ1hMX0VWRU5UX0RBVEFfU1RPUkFHRSA9IDIsCisgIENYTF9FVkVOVF9BRlVfRVJST1IgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgY3hsX2V2ZW50X2hlYWRlciB7CisgIF9fdTE2IHR5cGU7CisgIF9fdTE2IHNpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBwcm9jZXNzX2VsZW1lbnQ7CisgIF9fdTE2IHJlc2VydmVkMTsKK307CitzdHJ1Y3QgY3hsX2V2ZW50X2FmdV9pbnRlcnJ1cHQgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IGlycTsKKyAgX191MzIgcmVzZXJ2ZWQxOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY3hsX2V2ZW50X2RhdGFfc3RvcmFnZSB7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiByZXNlcnZlZDE7CisgIF9fdTMyIHJlc2VydmVkMjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGFkZHI7CisgIF9fdTY0IGRzaXNyOworICBfX3U2NCByZXNlcnZlZDM7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjeGxfZXZlbnRfYWZ1X2Vycm9yIHsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHJlc2VydmVkMTsKKyAgX191MzIgcmVzZXJ2ZWQyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZXJyb3I7Cit9Oworc3RydWN0IGN4bF9ldmVudCB7CisgIHN0cnVjdCBjeGxfZXZlbnRfaGVhZGVyIGhlYWRlcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgY3hsX2V2ZW50X2FmdV9pbnRlcnJ1cHQgaXJxOworICAgIHN0cnVjdCBjeGxfZXZlbnRfZGF0YV9zdG9yYWdlIGZhdWx0OworICAgIHN0cnVjdCBjeGxfZXZlbnRfYWZ1X2Vycm9yIGFmdV9lcnJvcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH07Cit9OworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL210ZC9pbmZ0bC11c2VyLmggYi9saWJjL2tlcm5lbC91YXBpL210ZC9pbmZ0bC11c2VyLmgKaW5kZXggOTI2ZGUwMS4uODVlZjBiNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9tdGQvaW5mdGwtdXNlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbXRkL2luZnRsLXVzZXIuaApAQCAtMjQsNzIgKzI0LDcyIEBACiAjZGVmaW5lIFBFUkNFTlRVU0VEIDk4CiAjZGVmaW5lIFNFQ1RPUlNJWkUgNTEyCiBzdHJ1Y3QgaW5mdGxfYmNpIHsKLSBfX3U4IEVDQ3NpZ1s2XTsKKyAgX191OCBFQ0NzaWdbNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggU3RhdHVzOwotIF9fdTggU3RhdHVzMTsKKyAgX191OCBTdGF0dXM7CisgIF9fdTggU3RhdHVzMTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaW5mdGxfdW5pdGhlYWQxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdmlydHVhbFVuaXRObzsKLSBfX3UxNiBwcmV2VW5pdE5vOwotIF9fdTggQU5BQzsKLSBfX3U4IE5BQ3M7CisgIF9fdTE2IHZpcnR1YWxVbml0Tm87CisgIF9fdTE2IHByZXZVbml0Tm87CisgIF9fdTggQU5BQzsKKyAgX191OCBOQUNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhcml0eVBlckZpZWxkOwotIF9fdTggZGlzY2FyZGVkOworICBfX3U4IHBhcml0eVBlckZpZWxkOworICBfX3U4IGRpc2NhcmRlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaW5mdGxfdW5pdGhlYWQyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYXJpdHlQZXJGaWVsZDsKLSBfX3U4IEFOQUM7Ci0gX191MTYgcHJldlVuaXRObzsKLSBfX3UxNiB2aXJ0dWFsVW5pdE5vOworICBfX3U4IHBhcml0eVBlckZpZWxkOworICBfX3U4IEFOQUM7CisgIF9fdTE2IHByZXZVbml0Tm87CisgIF9fdTE2IHZpcnR1YWxVbml0Tm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggTkFDczsKLSBfX3U4IGRpc2NhcmRlZDsKKyAgX191OCBOQUNzOworICBfX3U4IGRpc2NhcmRlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaW5mdGxfdW5pdHRhaWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IFJlc2VydmVkWzRdOwotIF9fdTE2IEVyYXNlTWFyazsKLSBfX3UxNiBFcmFzZU1hcmsxOworICBfX3U4IFJlc2VydmVkWzRdOworICBfX3UxNiBFcmFzZU1hcms7CisgIF9fdTE2IEVyYXNlTWFyazE7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGluZnRsX3VjaSB7Ci0gc3RydWN0IGluZnRsX3VuaXRoZWFkMSBhOwotIHN0cnVjdCBpbmZ0bF91bml0aGVhZDIgYjsKLSBzdHJ1Y3QgaW5mdGxfdW5pdHRhaWwgYzsKKyAgc3RydWN0IGluZnRsX3VuaXRoZWFkMSBhOworICBzdHJ1Y3QgaW5mdGxfdW5pdGhlYWQyIGI7CisgIHN0cnVjdCBpbmZ0bF91bml0dGFpbCBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaW5mdGxfb29iIHsKLSBzdHJ1Y3QgaW5mdGxfYmNpIGI7Ci0gdW5pb24gaW5mdGxfdWNpIHU7CisgIHN0cnVjdCBpbmZ0bF9iY2kgYjsKKyAgdW5pb24gaW5mdGxfdWNpIHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBJTkZUTFBhcnRpdGlvbiB7Ci0gX191MzIgdmlydHVhbFVuaXRzOwotIF9fdTMyIGZpcnN0VW5pdDsKKyAgX191MzIgdmlydHVhbFVuaXRzOworICBfX3UzMiBmaXJzdFVuaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxhc3RVbml0OwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHNwYXJlVW5pdHM7Ci0gX191MzIgUmVzZXJ2ZWQwOworICBfX3UzMiBsYXN0VW5pdDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHNwYXJlVW5pdHM7CisgIF9fdTMyIFJlc2VydmVkMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgUmVzZXJ2ZWQxOworICBfX3UzMiBSZXNlcnZlZDE7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IElORlRMTWVkaWFIZWFkZXIgewotIGNoYXIgYm9vdFJlY29yZElEWzhdOworICBjaGFyIGJvb3RSZWNvcmRJRFs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgTm9PZkJvb3RJbWFnZUJsb2NrczsKLSBfX3UzMiBOb09mQmluYXJ5UGFydGl0aW9uczsKLSBfX3UzMiBOb09mQkRUTFBhcnRpdGlvbnM7Ci0gX191MzIgQmxvY2tNdWx0aXBsaWVyQml0czsKKyAgX191MzIgTm9PZkJvb3RJbWFnZUJsb2NrczsKKyAgX191MzIgTm9PZkJpbmFyeVBhcnRpdGlvbnM7CisgIF9fdTMyIE5vT2ZCRFRMUGFydGl0aW9uczsKKyAgX191MzIgQmxvY2tNdWx0aXBsaWVyQml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgRm9ybWF0RmxhZ3M7Ci0gX191MzIgT3Nha1ZlcnNpb247Ci0gX191MzIgUGVyY2VudFVzZWQ7Ci0gc3RydWN0IElORlRMUGFydGl0aW9uIFBhcnRpdGlvbnNbNF07CisgIF9fdTMyIEZvcm1hdEZsYWdzOworICBfX3UzMiBPc2FrVmVyc2lvbjsKKyAgX191MzIgUGVyY2VudFVzZWQ7CisgIHN0cnVjdCBJTkZUTFBhcnRpdGlvbiBQYXJ0aXRpb25zWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIElORlRMX0JJTkFSWSAweDIwMDAwMDAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL210ZC9tdGQtYWJpLmggYi9saWJjL2tlcm5lbC91YXBpL210ZC9tdGQtYWJpLmgKaW5kZXggMGJiN2M2MS4uNGZlMTk3MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9tdGQvbXRkLWFiaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbXRkL210ZC1hYmkuaApAQCAtMjEsNDQgKzIxLDQ0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBlcmFzZV9pbmZvX3VzZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGFydDsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIHN0YXJ0OworICBfX3UzMiBsZW5ndGg7CiB9Owogc3RydWN0IGVyYXNlX2luZm9fdXNlcjY0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RhcnQ7Ci0gX191NjQgbGVuZ3RoOworICBfX3U2NCBzdGFydDsKKyAgX191NjQgbGVuZ3RoOwogfTsKIHN0cnVjdCBtdGRfb29iX2J1ZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXJ0OwotIF9fdTMyIGxlbmd0aDsKLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqcHRyOworICBfX3UzMiBzdGFydDsKKyAgX191MzIgbGVuZ3RoOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIHB0cjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG10ZF9vb2JfYnVmNjQgewotIF9fdTY0IHN0YXJ0OwotIF9fdTMyIHBhZDsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTY0IHN0YXJ0OworICBfX3UzMiBwYWQ7CisgIF9fdTMyIGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNyX3B0cjsKKyAgX191NjQgdXNyX3B0cjsKIH07CiBlbnVtIHsKLSBNVERfT1BTX1BMQUNFX09PQiA9IDAsCisgIE1URF9PUFNfUExBQ0VfT09CID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTVREX09QU19BVVRPX09PQiA9IDEsCi0gTVREX09QU19SQVcgPSAyLAorICBNVERfT1BTX0FVVE9fT09CID0gMSwKKyAgTVREX09QU19SQVcgPSAyLAogfTsKIHN0cnVjdCBtdGRfd3JpdGVfcmVxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RhcnQ7Ci0gX191NjQgbGVuOwotIF9fdTY0IG9vYmxlbjsKLSBfX3U2NCB1c3JfZGF0YTsKKyAgX191NjQgc3RhcnQ7CisgIF9fdTY0IGxlbjsKKyAgX191NjQgb29ibGVuOworICBfX3U2NCB1c3JfZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNyX29vYjsKLSBfX3U4IG1vZGU7Ci0gX191OCBwYWRkaW5nWzddOworICBfX3U2NCB1c3Jfb29iOworICBfX3U4IG1vZGU7CisgIF9fdTggcGFkZGluZ1s3XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVERfQUJTRU5UIDAKQEAgLTgxLDEwNSArODEsMTA2IEBACiAjZGVmaW5lIE1URF9DQVBfTk9SRkxBU0ggKE1URF9XUklURUFCTEUgfCBNVERfQklUX1dSSVRFQUJMRSkKICNkZWZpbmUgTVREX0NBUF9OQU5ERkxBU0ggKE1URF9XUklURUFCTEUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNVERfQ0FQX05WUkFNIChNVERfV1JJVEVBQkxFIHwgTVREX0JJVF9XUklURUFCTEUgfCBNVERfTk9fRVJBU0UpCiAjZGVmaW5lIE1URF9OQU5ERUNDX09GRiAwCiAjZGVmaW5lIE1URF9OQU5ERUNDX1BMQUNFIDEKICNkZWZpbmUgTVREX05BTkRFQ0NfQVVUT1BMQUNFIDIKLSNkZWZpbmUgTVREX05BTkRFQ0NfUExBQ0VPTkxZIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1URF9OQU5ERUNDX1BMQUNFT05MWSAzCiAjZGVmaW5lIE1URF9OQU5ERUNDX0FVVE9QTF9VU1IgNAogI2RlZmluZSBNVERfT1RQX09GRiAwCiAjZGVmaW5lIE1URF9PVFBfRkFDVE9SWSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNVERfT1RQX1VTRVIgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtdGRfaW5mb191c2VyIHsKLSBfX3U4IHR5cGU7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgc2l6ZTsKKyAgX191OCB0eXBlOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXJhc2VzaXplOwotIF9fdTMyIHdyaXRlc2l6ZTsKLSBfX3UzMiBvb2JzaXplOwotIF9fdTY0IHBhZGRpbmc7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIGVyYXNlc2l6ZTsKKyAgX191MzIgd3JpdGVzaXplOworICBfX3UzMiBvb2JzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcGFkZGluZzsKIH07CiBzdHJ1Y3QgcmVnaW9uX2luZm9fdXNlciB7Ci0gX191MzIgb2Zmc2V0OwotIF9fdTMyIGVyYXNlc2l6ZTsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1ibG9ja3M7Ci0gX191MzIgcmVnaW9uaW5kZXg7CisgIF9fdTMyIGVyYXNlc2l6ZTsKKyAgX191MzIgbnVtYmxvY2tzOworICBfX3UzMiByZWdpb25pbmRleDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG90cF9pbmZvIHsKKyAgX191MzIgc3RhcnQ7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgbG9ja2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGFydDsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgbG9ja2VkOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1FTUdFVElORk8gX0lPUignTScsIDEsIHN0cnVjdCBtdGRfaW5mb191c2VyKQogI2RlZmluZSBNRU1FUkFTRSBfSU9XKCdNJywgMiwgc3RydWN0IGVyYXNlX2luZm9fdXNlcikKICNkZWZpbmUgTUVNV1JJVEVPT0IgX0lPV1IoJ00nLCAzLCBzdHJ1Y3QgbXRkX29vYl9idWYpCi0jZGVmaW5lIE1FTVJFQURPT0IgX0lPV1IoJ00nLCA0LCBzdHJ1Y3QgbXRkX29vYl9idWYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNRU1SRUFET09CIF9JT1dSKCdNJywgNCwgc3RydWN0IG10ZF9vb2JfYnVmKQogI2RlZmluZSBNRU1MT0NLIF9JT1coJ00nLCA1LCBzdHJ1Y3QgZXJhc2VfaW5mb191c2VyKQogI2RlZmluZSBNRU1VTkxPQ0sgX0lPVygnTScsIDYsIHN0cnVjdCBlcmFzZV9pbmZvX3VzZXIpCiAjZGVmaW5lIE1FTUdFVFJFR0lPTkNPVU5UIF9JT1IoJ00nLCA3LCBpbnQpCi0jZGVmaW5lIE1FTUdFVFJFR0lPTklORk8gX0lPV1IoJ00nLCA4LCBzdHJ1Y3QgcmVnaW9uX2luZm9fdXNlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1FTUdFVFJFR0lPTklORk8gX0lPV1IoJ00nLCA4LCBzdHJ1Y3QgcmVnaW9uX2luZm9fdXNlcikKICNkZWZpbmUgTUVNR0VUT09CU0VMIF9JT1IoJ00nLCAxMCwgc3RydWN0IG5hbmRfb29iaW5mbykKICNkZWZpbmUgTUVNR0VUQkFEQkxPQ0sgX0lPVygnTScsIDExLCBfX2tlcm5lbF9sb2ZmX3QpCiAjZGVmaW5lIE1FTVNFVEJBREJMT0NLIF9JT1coJ00nLCAxMiwgX19rZXJuZWxfbG9mZl90KQotI2RlZmluZSBPVFBTRUxFQ1QgX0lPUignTScsIDEzLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBPVFBTRUxFQ1QgX0lPUignTScsIDEzLCBpbnQpCiAjZGVmaW5lIE9UUEdFVFJFR0lPTkNPVU5UIF9JT1coJ00nLCAxNCwgaW50KQogI2RlZmluZSBPVFBHRVRSRUdJT05JTkZPIF9JT1coJ00nLCAxNSwgc3RydWN0IG90cF9pbmZvKQogI2RlZmluZSBPVFBMT0NLIF9JT1IoJ00nLCAxNiwgc3RydWN0IG90cF9pbmZvKQotI2RlZmluZSBFQ0NHRVRMQVlPVVQgX0lPUignTScsIDE3LCBzdHJ1Y3QgbmFuZF9lY2NsYXlvdXRfdXNlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVDQ0dFVExBWU9VVCBfSU9SKCdNJywgMTcsIHN0cnVjdCBuYW5kX2VjY2xheW91dF91c2VyKQogI2RlZmluZSBFQ0NHRVRTVEFUUyBfSU9SKCdNJywgMTgsIHN0cnVjdCBtdGRfZWNjX3N0YXRzKQogI2RlZmluZSBNVERGSUxFTU9ERSBfSU8oJ00nLCAxOSkKICNkZWZpbmUgTUVNRVJBU0U2NCBfSU9XKCdNJywgMjAsIHN0cnVjdCBlcmFzZV9pbmZvX3VzZXI2NCkKLSNkZWZpbmUgTUVNV1JJVEVPT0I2NCBfSU9XUignTScsIDIxLCBzdHJ1Y3QgbXRkX29vYl9idWY2NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1FTVdSSVRFT09CNjQgX0lPV1IoJ00nLCAyMSwgc3RydWN0IG10ZF9vb2JfYnVmNjQpCiAjZGVmaW5lIE1FTVJFQURPT0I2NCBfSU9XUignTScsIDIyLCBzdHJ1Y3QgbXRkX29vYl9idWY2NCkKICNkZWZpbmUgTUVNSVNMT0NLRUQgX0lPUignTScsIDIzLCBzdHJ1Y3QgZXJhc2VfaW5mb191c2VyKQogI2RlZmluZSBNRU1XUklURSBfSU9XUignTScsIDI0LCBzdHJ1Y3QgbXRkX3dyaXRlX3JlcSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmFuZF9vb2JpbmZvIHsKKyAgX191MzIgdXNlZWNjOworICBfX3UzMiBlY2NieXRlczsKKyAgX191MzIgb29iZnJlZVs4XVsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdXNlZWNjOwotIF9fdTMyIGVjY2J5dGVzOwotIF9fdTMyIG9vYmZyZWVbOF1bMl07Ci0gX191MzIgZWNjcG9zWzMyXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGVjY3Bvc1szMl07CiB9Owogc3RydWN0IG5hbmRfb29iZnJlZSB7Ci0gX191MzIgb2Zmc2V0OwotIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbGVuZ3RoOwogfTsKICNkZWZpbmUgTVREX01BWF9PT0JGUkVFX0VOVFJJRVMgOAogI2RlZmluZSBNVERfTUFYX0VDQ1BPU19FTlRSSUVTIDY0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5hbmRfZWNjbGF5b3V0X3VzZXIgeworICBfX3UzMiBlY2NieXRlczsKKyAgX191MzIgZWNjcG9zW01URF9NQVhfRUNDUE9TX0VOVFJJRVNdOworICBfX3UzMiBvb2JhdmFpbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWNjYnl0ZXM7Ci0gX191MzIgZWNjcG9zW01URF9NQVhfRUNDUE9TX0VOVFJJRVNdOwotIF9fdTMyIG9vYmF2YWlsOwotIHN0cnVjdCBuYW5kX29vYmZyZWUgb29iZnJlZVtNVERfTUFYX09PQkZSRUVfRU5UUklFU107Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgbmFuZF9vb2JmcmVlIG9vYmZyZWVbTVREX01BWF9PT0JGUkVFX0VOVFJJRVNdOwogfTsKIHN0cnVjdCBtdGRfZWNjX3N0YXRzIHsKLSBfX3UzMiBjb3JyZWN0ZWQ7Ci0gX191MzIgZmFpbGVkOworICBfX3UzMiBjb3JyZWN0ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJhZGJsb2NrczsKLSBfX3UzMiBiYnRibG9ja3M7CisgIF9fdTMyIGZhaWxlZDsKKyAgX191MzIgYmFkYmxvY2tzOworICBfX3UzMiBiYnRibG9ja3M7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbXRkX2ZpbGVfbW9kZXMgeworICBNVERfRklMRV9NT0RFX05PUk1BTCA9IE1URF9PVFBfT0ZGLAorICBNVERfRklMRV9NT0RFX09UUF9GQUNUT1JZID0gTVREX09UUF9GQUNUT1JZLAorICBNVERfRklMRV9NT0RFX09UUF9VU0VSID0gTVREX09UUF9VU0VSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNVERfRklMRV9NT0RFX05PUk1BTCA9IE1URF9PVFBfT0ZGLAotIE1URF9GSUxFX01PREVfT1RQX0ZBQ1RPUlkgPSBNVERfT1RQX0ZBQ1RPUlksCi0gTVREX0ZJTEVfTU9ERV9PVFBfVVNFUiA9IE1URF9PVFBfVVNFUiwKLSBNVERfRklMRV9NT0RFX1JBVywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1URF9GSUxFX01PREVfUkFXLAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9tdGQvbmZ0bC11c2VyLmggYi9saWJjL2tlcm5lbC91YXBpL210ZC9uZnRsLXVzZXIuaAppbmRleCBkYzdiODk2Li45OGE3ZThhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL210ZC9uZnRsLXVzZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL210ZC9uZnRsLXVzZXIuaApAQCAtMjEsNDkgKzIxLDQ5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBuZnRsX2JjaSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgRUNDU2lnWzZdOwotIF9fdTggU3RhdHVzOwotIF9fdTggU3RhdHVzMTsKLX1fX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyAgdW5zaWduZWQgY2hhciBFQ0NTaWdbNl07CisgIF9fdTggU3RhdHVzOworICBfX3U4IFN0YXR1czE7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZnRsX3VjaTAgewotIF9fdTE2IFZpcnRVbml0TnVtOwotIF9fdTE2IFJlcGxVbml0TnVtOwotIF9fdTE2IFNwYXJlVmlydFVuaXROdW07CisgIF9fdTE2IFZpcnRVbml0TnVtOworICBfX3UxNiBSZXBsVW5pdE51bTsKKyAgX191MTYgU3BhcmVWaXJ0VW5pdE51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgU3BhcmVSZXBsVW5pdE51bTsKKyAgX191MTYgU3BhcmVSZXBsVW5pdE51bTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgbmZ0bF91Y2kxIHsKLSBfX3UzMiBXZWFySW5mbzsKKyAgX191MzIgV2VhckluZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IEVyYXNlTWFyazsKLSBfX3UxNiBFcmFzZU1hcmsxOworICBfX3UxNiBFcmFzZU1hcms7CisgIF9fdTE2IEVyYXNlTWFyazE7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IG5mdGxfdWNpMiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IEZvbGRNYXJrOwotIF9fdTE2IEZvbGRNYXJrMTsKLSBfX3UzMiB1bnVzZWQ7CisgIF9fdTE2IEZvbGRNYXJrOworICBfX3UxNiBGb2xkTWFyazE7CisgIF9fdTMyIHVudXNlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gbmZ0bF91Y2kgewotIHN0cnVjdCBuZnRsX3VjaTAgYTsKLSBzdHJ1Y3QgbmZ0bF91Y2kxIGI7Ci0gc3RydWN0IG5mdGxfdWNpMiBjOworICBzdHJ1Y3QgbmZ0bF91Y2kwIGE7CisgIHN0cnVjdCBuZnRsX3VjaTEgYjsKKyAgc3RydWN0IG5mdGxfdWNpMiBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbmZ0bF9vb2IgewotIHN0cnVjdCBuZnRsX2JjaSBiOwotIHVuaW9uIG5mdGxfdWNpIHU7CisgIHN0cnVjdCBuZnRsX2JjaSBiOworICB1bmlvbiBuZnRsX3VjaSB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgTkZUTE1lZGlhSGVhZGVyIHsKLSBjaGFyIERhdGFPcmdJRFs2XTsKLSBfX3UxNiBOdW1FcmFzZVVuaXRzOworICBjaGFyIERhdGFPcmdJRFs2XTsKKyAgX191MTYgTnVtRXJhc2VVbml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgRmlyc3RQaHlzaWNhbEVVTjsKLSBfX3UzMiBGb3JtYXR0ZWRTaXplOwotIHVuc2lnbmVkIGNoYXIgVW5pdFNpemVGYWN0b3I7CisgIF9fdTE2IEZpcnN0UGh5c2ljYWxFVU47CisgIF9fdTMyIEZvcm1hdHRlZFNpemU7CisgIHVuc2lnbmVkIGNoYXIgVW5pdFNpemVGYWN0b3I7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFYX0VSQVNFX1pPTkVTICg4MTkyIC0gNTEyKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9tdGQvdWJpLXVzZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbXRkL3ViaS11c2VyLmgKaW5kZXggZmE2YmUzMi4uZTA1NTE3MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9tdGQvdWJpLXVzZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL210ZC91YmktdXNlci5oCkBAIC0xOSw5ICsxOSw5IEBACiAjaWZuZGVmIF9fVUJJX1VTRVJfSF9fCiAjZGVmaW5lIF9fVUJJX1VTRVJfSF9fCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNkZWZpbmUgVUJJX1ZPTF9OVU1fQVVUTyAoLTEpCisjZGVmaW5lIFVCSV9WT0xfTlVNX0FVVE8gKC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFVCSV9ERVZfTlVNX0FVVE8gKC0xKQorI2RlZmluZSBVQklfREVWX05VTV9BVVRPICgtIDEpCiAjZGVmaW5lIFVCSV9NQVhfVk9MVU1FX05BTUUgMTI3CiAjZGVmaW5lIFVCSV9JT0NfTUFHSUMgJ28nCiAjZGVmaW5lIFVCSV9JT0NNS1ZPTCBfSU9XKFVCSV9JT0NfTUFHSUMsIDAsIHN0cnVjdCB1YmlfbWt2b2xfcmVxKQpAQCAtNDIsNzUgKzQyLDgyIEBACiAjZGVmaW5lIFVCSV9JT0NFQlVOTUFQIF9JT1coVUJJX1ZPTF9JT0NfTUFHSUMsIDQsIF9fczMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUJJX0lPQ0VCSVNNQVAgX0lPUihVQklfVk9MX0lPQ19NQUdJQywgNSwgX19zMzIpCi0jZGVmaW5lIFVCSV9JT0NTRVRWT0xQUk9QIF9JT1coVUJJX1ZPTF9JT0NfTUFHSUMsIDYsICAgc3RydWN0IHViaV9zZXRfdm9sX3Byb3BfcmVxKQorI2RlZmluZSBVQklfSU9DU0VUVk9MUFJPUCBfSU9XKFVCSV9WT0xfSU9DX01BR0lDLCA2LCBzdHJ1Y3QgdWJpX3NldF92b2xfcHJvcF9yZXEpCisjZGVmaW5lIFVCSV9JT0NWT0xDUkJMSyBfSU9XKFVCSV9WT0xfSU9DX01BR0lDLCA3LCBzdHJ1Y3QgdWJpX2Jsa2NyZWF0ZV9yZXEpCisjZGVmaW5lIFVCSV9JT0NWT0xSTUJMSyBfSU8oVUJJX1ZPTF9JT0NfTUFHSUMsIDgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNQVhfVUJJX01URF9OQU1FX0xFTiAxMjcKICNkZWZpbmUgVUJJX01BWF9STlZPTCAzMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFVCSV9EWU5BTUlDX1ZPTFVNRSA9IDMsCi0gVUJJX1NUQVRJQ19WT0xVTUUgPSA0LAorICBVQklfRFlOQU1JQ19WT0xVTUUgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVUJJX1NUQVRJQ19WT0xVTUUgPSA0LAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBVQklfVk9MX1BST1BfRElSRUNUX1dSSVRFID0gMSwKKyAgVUJJX1ZPTF9QUk9QX0RJUkVDVF9XUklURSA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB1YmlfYXR0YWNoX3JlcSB7CisgIF9fczMyIHViaV9udW07CisgIF9fczMyIG10ZF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHViaV9udW07Ci0gX19zMzIgbXRkX251bTsKLSBfX3MzMiB2aWRfaGRyX29mZnNldDsKLSBfX3MxNiBtYXhfYmViX3BlcjEwMjQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczggcGFkZGluZ1sxMF07CisgIF9fczMyIHZpZF9oZHJfb2Zmc2V0OworICBfX3MxNiBtYXhfYmViX3BlcjEwMjQ7CisgIF9fczggcGFkZGluZ1sxMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YmlfbWt2b2xfcmVxIHsKLSBfX3MzMiB2b2xfaWQ7CisgIF9fczMyIHZvbF9pZDsKKyAgX19zMzIgYWxpZ25tZW50OworICBfX3M2NCBieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgYWxpZ25tZW50OwotIF9fczY0IGJ5dGVzOwotIF9fczggdm9sX3R5cGU7Ci0gX19zOCBwYWRkaW5nMTsKKyAgX19zOCB2b2xfdHlwZTsKKyAgX19zOCBwYWRkaW5nMTsKKyAgX19zMTYgbmFtZV9sZW47CisgIF9fczggcGFkZGluZzJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczE2IG5hbWVfbGVuOwotIF9fczggcGFkZGluZzJbNF07Ci0gY2hhciBuYW1lW1VCSV9NQVhfVk9MVU1FX05BTUUgKyAxXTsKKyAgY2hhciBuYW1lW1VCSV9NQVhfVk9MVU1FX05BTUUgKyAxXTsKIH0gX19wYWNrZWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHViaV9yc3ZvbF9yZXEgewotIF9fczY0IGJ5dGVzOwotIF9fczMyIHZvbF9pZDsKLX0gX19wYWNrZWQ7CisgIF9fczY0IGJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zMzIgdm9sX2lkOworfSBfX3BhY2tlZDsKIHN0cnVjdCB1Ymlfcm52b2xfcmVxIHsKLSBfX3MzMiBjb3VudDsKLSBfX3M4IHBhZGRpbmcxWzEyXTsKLSBzdHJ1Y3QgeworICBfX3MzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgdm9sX2lkOwotIF9fczE2IG5hbWVfbGVuOwotIF9fczggcGFkZGluZzJbMl07Ci0gY2hhciBuYW1lW1VCSV9NQVhfVk9MVU1FX05BTUUgKyAxXTsKKyAgX19zOCBwYWRkaW5nMVsxMl07CisgIHN0cnVjdCB7CisgICAgX19zMzIgdm9sX2lkOworICAgIF9fczE2IG5hbWVfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGVudHNbVUJJX01BWF9STlZPTF07CisgICAgX19zOCBwYWRkaW5nMlsyXTsKKyAgICBjaGFyIG5hbWVbVUJJX01BWF9WT0xVTUVfTkFNRSArIDFdOworICB9IGVudHNbVUJJX01BWF9STlZPTF07CiB9IF9fcGFja2VkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YmlfbGViX2NoYW5nZV9yZXEgewotIF9fczMyIGxudW07CisgIF9fczMyIGxudW07CisgIF9fczMyIGJ5dGVzOworICBfX3M4IGR0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBieXRlczsKLSBfX3M4IGR0eXBlOwotIF9fczggcGFkZGluZ1s3XTsKKyAgX19zOCBwYWRkaW5nWzddOwogfSBfX3BhY2tlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWJpX21hcF9yZXEgewotIF9fczMyIGxudW07Ci0gX19zOCBkdHlwZTsKLSBfX3M4IHBhZGRpbmdbM107CisgIF9fczMyIGxudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3M4IGR0eXBlOworICBfX3M4IHBhZGRpbmdbM107CiB9IF9fcGFja2VkOwogc3RydWN0IHViaV9zZXRfdm9sX3Byb3BfcmVxIHsKLSBfX3U4IHByb3BlcnR5OwotIF9fdTggcGFkZGluZ1s3XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdmFsdWU7CisgIF9fdTggcHJvcGVydHk7CisgIF9fdTggcGFkZGluZ1s3XTsKKyAgX191NjQgdmFsdWU7Cit9IF9fcGFja2VkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCB1YmlfYmxrY3JlYXRlX3JlcSB7CisgIF9fczggcGFkZGluZ1sxMjhdOwogfSBfX3BhY2tlZDsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX2NtLmggYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9jbS5oCmluZGV4IDBhOWZmMjYuLmM0NzVmZmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX2NtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfY20uaApAQCAtMjMsMjc3ICsyMywyNzcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElCX1VTRVJfQ01fQUJJX1ZFUlNJT04gNQogZW51bSB7Ci0gSUJfVVNFUl9DTV9DTURfQ1JFQVRFX0lELAotIElCX1VTRVJfQ01fQ01EX0RFU1RST1lfSUQsCisgIElCX1VTRVJfQ01fQ01EX0NSRUFURV9JRCwKKyAgSUJfVVNFUl9DTV9DTURfREVTVFJPWV9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9DTV9DTURfQVRUUl9JRCwKLSBJQl9VU0VSX0NNX0NNRF9MSVNURU4sCi0gSUJfVVNFUl9DTV9DTURfTk9USUZZLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfUkVRLAorICBJQl9VU0VSX0NNX0NNRF9BVFRSX0lELAorICBJQl9VU0VSX0NNX0NNRF9MSVNURU4sCisgIElCX1VTRVJfQ01fQ01EX05PVElGWSwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9SRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfQ01fQ01EX1NFTkRfUkVQLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfUlRVLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfRFJFUSwKLSBJQl9VU0VSX0NNX0NNRF9TRU5EX0RSRVAsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfUkVQLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX1JUVSwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9EUkVRLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX0RSRVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfQ01fQ01EX1NFTkRfUkVKLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfTVJBLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfTEFQLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfQVBSLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX1JFSiwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9NUkEsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfTEFQLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX0FQUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9DTV9DTURfU0VORF9TSURSX1JFUSwKLSBJQl9VU0VSX0NNX0NNRF9TRU5EX1NJRFJfUkVQLAotIElCX1VTRVJfQ01fQ01EX0VWRU5ULAotIElCX1VTRVJfQ01fQ01EX0lOSVRfUVBfQVRUUiwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9TSURSX1JFUSwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9TSURSX1JFUCwKKyAgSUJfVVNFUl9DTV9DTURfRVZFTlQsCisgIElCX1VTRVJfQ01fQ01EX0lOSVRfUVBfQVRUUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3VjbV9jbWRfaGRyIHsKLSBfX3UzMiBjbWQ7Ci0gX191MTYgaW47CisgIF9fdTMyIGNtZDsKKyAgX191MTYgaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG91dDsKKyAgX191MTYgb3V0OwogfTsKIHN0cnVjdCBpYl91Y21fY3JlYXRlX2lkIHsKLSBfX3U2NCB1aWQ7CisgIF9fdTY0IHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOwogfTsKIHN0cnVjdCBpYl91Y21fY3JlYXRlX2lkX3Jlc3AgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3VjbV9kZXN0cm95X2lkIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBpZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IGliX3VjbV9kZXN0cm95X2lkX3Jlc3AgewotIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKKyAgX191MzIgZXZlbnRzX3JlcG9ydGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX2F0dHJfaWQgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGlkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgaWJfdWNtX2F0dHJfaWRfcmVzcCB7Ci0gX19iZTY0IHNlcnZpY2VfaWQ7CisgIF9fYmU2NCBzZXJ2aWNlX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgc2VydmljZV9tYXNrOwotIF9fYmUzMiBsb2NhbF9pZDsKLSBfX2JlMzIgcmVtb3RlX2lkOworICBfX2JlNjQgc2VydmljZV9tYXNrOworICBfX2JlMzIgbG9jYWxfaWQ7CisgIF9fYmUzMiByZW1vdGVfaWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91Y21faW5pdF9xcF9hdHRyIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBpZDsKLSBfX3UzMiBxcF9zdGF0ZTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGlkOworICBfX3UzMiBxcF9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3VjbV9saXN0ZW4gewotIF9fYmU2NCBzZXJ2aWNlX2lkOwotIF9fYmU2NCBzZXJ2aWNlX21hc2s7CisgIF9fYmU2NCBzZXJ2aWNlX2lkOworICBfX2JlNjQgc2VydmljZV9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHJlc2VydmVkOwogfTsKIHN0cnVjdCBpYl91Y21fbm90aWZ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgZXZlbnQ7CisgIF9fdTMyIGlkOworICBfX3UzMiBldmVudDsKIH07CiBzdHJ1Y3QgaWJfdWNtX3ByaXZhdGVfZGF0YSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGE7Ci0gX191MzIgaWQ7Ci0gX191OCBsZW47Ci0gX191OCByZXNlcnZlZFszXTsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgaWQ7CisgIF9fdTggbGVuOworICBfX3U4IHJlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX3JlcSB7Ci0gX191MzIgaWQ7Ci0gX191MzIgcXBuOworICBfX3UzMiBpZDsKKyAgX191MzIgcXBuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcF90eXBlOwotIF9fdTMyIHBzbjsKLSBfX2JlNjQgc2lkOwotIF9fdTY0IGRhdGE7CisgIF9fdTMyIHFwX3R5cGU7CisgIF9fdTMyIHBzbjsKKyAgX19iZTY0IHNpZDsKKyAgX191NjQgZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcHJpbWFyeV9wYXRoOwotIF9fdTY0IGFsdGVybmF0ZV9wYXRoOwotIF9fdTggbGVuOwotIF9fdTggcGVlcl90b19wZWVyOworICBfX3U2NCBwcmltYXJ5X3BhdGg7CisgIF9fdTY0IGFsdGVybmF0ZV9wYXRoOworICBfX3U4IGxlbjsKKyAgX191OCBwZWVyX3RvX3BlZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKLSBfX3U4IGluaXRpYXRvcl9kZXB0aDsKLSBfX3U4IHJlbW90ZV9jbV9yZXNwb25zZV90aW1lb3V0OwotIF9fdTggZmxvd19jb250cm9sOworICBfX3U4IHJlc3BvbmRlcl9yZXNvdXJjZXM7CisgIF9fdTggaW5pdGlhdG9yX2RlcHRoOworICBfX3U4IHJlbW90ZV9jbV9yZXNwb25zZV90aW1lb3V0OworICBfX3U4IGZsb3dfY29udHJvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsb2NhbF9jbV9yZXNwb25zZV90aW1lb3V0OwotIF9fdTggcmV0cnlfY291bnQ7Ci0gX191OCBybnJfcmV0cnlfY291bnQ7Ci0gX191OCBtYXhfY21fcmV0cmllczsKKyAgX191OCBsb2NhbF9jbV9yZXNwb25zZV90aW1lb3V0OworICBfX3U4IHJldHJ5X2NvdW50OworICBfX3U4IHJucl9yZXRyeV9jb3VudDsKKyAgX191OCBtYXhfY21fcmV0cmllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcnE7Ci0gX191OCByZXNlcnZlZFs1XTsKKyAgX191OCBzcnE7CisgIF9fdTggcmVzZXJ2ZWRbNV07CiB9Owogc3RydWN0IGliX3VjbV9yZXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1aWQ7Ci0gX191NjQgZGF0YTsKLSBfX3UzMiBpZDsKLSBfX3UzMiBxcG47CisgIF9fdTY0IHVpZDsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHFwbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHNuOwotIF9fdTggbGVuOwotIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKLSBfX3U4IGluaXRpYXRvcl9kZXB0aDsKKyAgX191MzIgcHNuOworICBfX3U4IGxlbjsKKyAgX191OCByZXNwb25kZXJfcmVzb3VyY2VzOworICBfX3U4IGluaXRpYXRvcl9kZXB0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0YXJnZXRfYWNrX2RlbGF5OwotIF9fdTggZmFpbG92ZXJfYWNjZXB0ZWQ7Ci0gX191OCBmbG93X2NvbnRyb2w7Ci0gX191OCBybnJfcmV0cnlfY291bnQ7CisgIF9fdTggdGFyZ2V0X2Fja19kZWxheTsKKyAgX191OCBmYWlsb3Zlcl9hY2NlcHRlZDsKKyAgX191OCBmbG93X2NvbnRyb2w7CisgIF9fdTggcm5yX3JldHJ5X2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNycTsKLSBfX3U4IHJlc2VydmVkWzRdOworICBfX3U4IHNycTsKKyAgX191OCByZXNlcnZlZFs0XTsKIH07CiBzdHJ1Y3QgaWJfdWNtX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBzdGF0dXM7Ci0gX191NjQgaW5mbzsKLSBfX3U2NCBkYXRhOworICBfX3UzMiBpZDsKKyAgX191MzIgc3RhdHVzOworICBfX3U2NCBpbmZvOworICBfX3U2NCBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGluZm9fbGVuOwotIF9fdTggZGF0YV9sZW47Ci0gX191OCByZXNlcnZlZFs2XTsKKyAgX191OCBpbmZvX2xlbjsKKyAgX191OCBkYXRhX2xlbjsKKyAgX191OCByZXNlcnZlZFs2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3VjbV9tcmEgewotIF9fdTY0IGRhdGE7Ci0gX191MzIgaWQ7Ci0gX191OCBsZW47CisgIF9fdTY0IGRhdGE7CisgIF9fdTMyIGlkOworICBfX3U4IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0aW1lb3V0OwotIF9fdTggcmVzZXJ2ZWRbMl07CisgIF9fdTggdGltZW91dDsKKyAgX191OCByZXNlcnZlZFsyXTsKIH07CiBzdHJ1Y3QgaWJfdWNtX2xhcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBhdGg7Ci0gX191NjQgZGF0YTsKLSBfX3UzMiBpZDsKLSBfX3U4IGxlbjsKKyAgX191NjQgcGF0aDsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgaWQ7CisgIF9fdTggbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzNdOworICBfX3U4IHJlc2VydmVkWzNdOwogfTsKIHN0cnVjdCBpYl91Y21fc2lkcl9yZXEgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGltZW91dDsKLSBfX2JlNjQgc2lkOwotIF9fdTY0IGRhdGE7Ci0gX191NjQgcGF0aDsKKyAgX191MzIgdGltZW91dDsKKyAgX19iZTY0IHNpZDsKKyAgX191NjQgZGF0YTsKKyAgX191NjQgcGF0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmVzZXJ2ZWRfcGtleTsKLSBfX3U4IGxlbjsKLSBfX3U4IG1heF9jbV9yZXRyaWVzOwotIF9fdTggcmVzZXJ2ZWRbNF07CisgIF9fdTE2IHJlc2VydmVkX3BrZXk7CisgIF9fdTggbGVuOworICBfX3U4IG1heF9jbV9yZXRyaWVzOworICBfX3U4IHJlc2VydmVkWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX3NpZHJfcmVwIHsKLSBfX3UzMiBpZDsKLSBfX3UzMiBxcG47CisgIF9fdTMyIGlkOworICBfX3UzMiBxcG47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFrZXk7Ci0gX191MzIgc3RhdHVzOwotIF9fdTY0IGluZm87Ci0gX191NjQgZGF0YTsKKyAgX191MzIgcWtleTsKKyAgX191MzIgc3RhdHVzOworICBfX3U2NCBpbmZvOworICBfX3U2NCBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGluZm9fbGVuOwotIF9fdTggZGF0YV9sZW47Ci0gX191OCByZXNlcnZlZFs2XTsKKyAgX191OCBpbmZvX2xlbjsKKyAgX191OCBkYXRhX2xlbjsKKyAgX191OCByZXNlcnZlZFs2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3VjbV9ldmVudF9nZXQgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IGRhdGE7Ci0gX191NjQgaW5mbzsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IGRhdGE7CisgIF9fdTY0IGluZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YV9sZW47Ci0gX191OCBpbmZvX2xlbjsKLSBfX3U4IHJlc2VydmVkWzZdOworICBfX3U4IGRhdGFfbGVuOworICBfX3U4IGluZm9fbGVuOworICBfX3U4IHJlc2VydmVkWzZdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX3JlcV9ldmVudF9yZXNwIHsKLSBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBwcmltYXJ5X3BhdGg7Ci0gc3RydWN0IGliX3VzZXJfcGF0aF9yZWMgYWx0ZXJuYXRlX3BhdGg7Ci0gX19iZTY0IHJlbW90ZV9jYV9ndWlkOworICBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBwcmltYXJ5X3BhdGg7CisgIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIGFsdGVybmF0ZV9wYXRoOworICBfX2JlNjQgcmVtb3RlX2NhX2d1aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlbW90ZV9xa2V5OwotIF9fdTMyIHJlbW90ZV9xcG47Ci0gX191MzIgcXBfdHlwZTsKLSBfX3UzMiBzdGFydGluZ19wc247CisgIF9fdTMyIHJlbW90ZV9xa2V5OworICBfX3UzMiByZW1vdGVfcXBuOworICBfX3UzMiBxcF90eXBlOworICBfX3UzMiBzdGFydGluZ19wc247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKLSBfX3U4IGluaXRpYXRvcl9kZXB0aDsKLSBfX3U4IGxvY2FsX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7Ci0gX191OCBmbG93X2NvbnRyb2w7CisgIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKKyAgX191OCBpbml0aWF0b3JfZGVwdGg7CisgIF9fdTggbG9jYWxfY21fcmVzcG9uc2VfdGltZW91dDsKKyAgX191OCBmbG93X2NvbnRyb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVtb3RlX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7Ci0gX191OCByZXRyeV9jb3VudDsKLSBfX3U4IHJucl9yZXRyeV9jb3VudDsKLSBfX3U4IHNycTsKKyAgX191OCByZW1vdGVfY21fcmVzcG9uc2VfdGltZW91dDsKKyAgX191OCByZXRyeV9jb3VudDsKKyAgX191OCBybnJfcmV0cnlfY291bnQ7CisgIF9fdTggc3JxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvcnQ7Ci0gX191OCByZXNlcnZlZFs3XTsKKyAgX191OCBwb3J0OworICBfX3U4IHJlc2VydmVkWzddOwogfTsKIHN0cnVjdCBpYl91Y21fcmVwX2V2ZW50X3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgcmVtb3RlX2NhX2d1aWQ7Ci0gX191MzIgcmVtb3RlX3FrZXk7Ci0gX191MzIgcmVtb3RlX3FwbjsKLSBfX3UzMiBzdGFydGluZ19wc247CisgIF9fYmU2NCByZW1vdGVfY2FfZ3VpZDsKKyAgX191MzIgcmVtb3RlX3FrZXk7CisgIF9fdTMyIHJlbW90ZV9xcG47CisgIF9fdTMyIHN0YXJ0aW5nX3BzbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwotIF9fdTggaW5pdGlhdG9yX2RlcHRoOwotIF9fdTggdGFyZ2V0X2Fja19kZWxheTsKLSBfX3U4IGZhaWxvdmVyX2FjY2VwdGVkOworICBfX3U4IHJlc3BvbmRlcl9yZXNvdXJjZXM7CisgIF9fdTggaW5pdGlhdG9yX2RlcHRoOworICBfX3U4IHRhcmdldF9hY2tfZGVsYXk7CisgIF9fdTggZmFpbG92ZXJfYWNjZXB0ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxvd19jb250cm9sOwotIF9fdTggcm5yX3JldHJ5X2NvdW50OwotIF9fdTggc3JxOwotIF9fdTggcmVzZXJ2ZWRbNV07CisgIF9fdTggZmxvd19jb250cm9sOworICBfX3U4IHJucl9yZXRyeV9jb3VudDsKKyAgX191OCBzcnE7CisgIF9fdTggcmVzZXJ2ZWRbNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91Y21fcmVqX2V2ZW50X3Jlc3AgewotIF9fdTMyIHJlYXNvbjsKKyAgX191MzIgcmVhc29uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX21yYV9ldmVudF9yZXNwIHsKLSBfX3U4IHRpbWVvdXQ7Ci0gX191OCByZXNlcnZlZFszXTsKKyAgX191OCB0aW1lb3V0OworICBfX3U4IHJlc2VydmVkWzNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX2xhcF9ldmVudF9yZXNwIHsKLSBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBwYXRoOworICBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBwYXRoOwogfTsKIHN0cnVjdCBpYl91Y21fYXByX2V2ZW50X3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIHN0YXR1czsKIH07CiBzdHJ1Y3QgaWJfdWNtX3NpZHJfcmVxX2V2ZW50X3Jlc3AgewotIF9fdTE2IHBrZXk7CisgIF9fdTE2IHBrZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG9ydDsKLSBfX3U4IHJlc2VydmVkOworICBfX3U4IHBvcnQ7CisgIF9fdTggcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IGliX3VjbV9zaWRyX3JlcF9ldmVudF9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3RhdHVzOwotIF9fdTMyIHFrZXk7Ci0gX191MzIgcXBuOworICBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIHFrZXk7CisgIF9fdTMyIHFwbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJQl9VQ01fUFJFU19EQVRBIDB4MDEKQEAgLTMwMiwyNSArMzAyLDI1IEBACiAjZGVmaW5lIElCX1VDTV9QUkVTX0FMVEVSTkFURSAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3VjbV9ldmVudF9yZXNwIHsKLSBfX3U2NCB1aWQ7Ci0gX191MzIgaWQ7Ci0gX191MzIgZXZlbnQ7CisgIF9fdTY0IHVpZDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIGV2ZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcmVzZW50OwotIF9fdTMyIHJlc2VydmVkOwotIHVuaW9uIHsKLSBzdHJ1Y3QgaWJfdWNtX3JlcV9ldmVudF9yZXNwIHJlcV9yZXNwOworICBfX3UzMiBwcmVzZW50OworICBfX3UzMiByZXNlcnZlZDsKKyAgdW5pb24geworICAgIHN0cnVjdCBpYl91Y21fcmVxX2V2ZW50X3Jlc3AgcmVxX3Jlc3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpYl91Y21fcmVwX2V2ZW50X3Jlc3AgcmVwX3Jlc3A7Ci0gc3RydWN0IGliX3VjbV9yZWpfZXZlbnRfcmVzcCByZWpfcmVzcDsKLSBzdHJ1Y3QgaWJfdWNtX21yYV9ldmVudF9yZXNwIG1yYV9yZXNwOwotIHN0cnVjdCBpYl91Y21fbGFwX2V2ZW50X3Jlc3AgbGFwX3Jlc3A7CisgICAgc3RydWN0IGliX3VjbV9yZXBfZXZlbnRfcmVzcCByZXBfcmVzcDsKKyAgICBzdHJ1Y3QgaWJfdWNtX3Jlal9ldmVudF9yZXNwIHJlal9yZXNwOworICAgIHN0cnVjdCBpYl91Y21fbXJhX2V2ZW50X3Jlc3AgbXJhX3Jlc3A7CisgICAgc3RydWN0IGliX3VjbV9sYXBfZXZlbnRfcmVzcCBsYXBfcmVzcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGliX3VjbV9hcHJfZXZlbnRfcmVzcCBhcHJfcmVzcDsKLSBzdHJ1Y3QgaWJfdWNtX3NpZHJfcmVxX2V2ZW50X3Jlc3Agc2lkcl9yZXFfcmVzcDsKLSBzdHJ1Y3QgaWJfdWNtX3NpZHJfcmVwX2V2ZW50X3Jlc3Agc2lkcl9yZXBfcmVzcDsKLSBfX3UzMiBzZW5kX3N0YXR1czsKKyAgICBzdHJ1Y3QgaWJfdWNtX2Fwcl9ldmVudF9yZXNwIGFwcl9yZXNwOworICAgIHN0cnVjdCBpYl91Y21fc2lkcl9yZXFfZXZlbnRfcmVzcCBzaWRyX3JlcV9yZXNwOworICAgIHN0cnVjdCBpYl91Y21fc2lkcl9yZXBfZXZlbnRfcmVzcCBzaWRyX3JlcF9yZXNwOworICAgIF9fdTMyIHNlbmRfc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHU7CisgIH0gdTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX21hZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfbWFkLmgKaW5kZXggZGU1YTNmOS4uMzExNzg4OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfbWFkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfbWFkLmgKQEAgLTIzLDc0ICsyMyw5NiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUJfVVNFUl9NQURfQUJJX1ZFUlNJT04gNQogc3RydWN0IGliX3VzZXJfbWFkX2hkcl9vbGQgewotIF9fdTMyIGlkOwotIF9fdTMyIHN0YXR1czsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHN0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGltZW91dF9tczsKLSBfX3UzMiByZXRyaWVzOwotIF9fdTMyIGxlbmd0aDsKLSBfX2JlMzIgcXBuOworICBfX3UzMiB0aW1lb3V0X21zOworICBfX3UzMiByZXRyaWVzOworICBfX3UzMiBsZW5ndGg7CisgIF9fYmUzMiBxcG47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBxa2V5OwotIF9fYmUxNiBsaWQ7Ci0gX191OCBzbDsKLSBfX3U4IHBhdGhfYml0czsKKyAgX19iZTMyIHFrZXk7CisgIF9fYmUxNiBsaWQ7CisgIF9fdTggc2w7CisgIF9fdTggcGF0aF9iaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGdyaF9wcmVzZW50OwotIF9fdTggZ2lkX2luZGV4OwotIF9fdTggaG9wX2xpbWl0OwotIF9fdTggdHJhZmZpY19jbGFzczsKKyAgX191OCBncmhfcHJlc2VudDsKKyAgX191OCBnaWRfaW5kZXg7CisgIF9fdTggaG9wX2xpbWl0OworICBfX3U4IHRyYWZmaWNfY2xhc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ2lkWzE2XTsKLSBfX2JlMzIgZmxvd19sYWJlbDsKKyAgX191OCBnaWRbMTZdOworICBfX2JlMzIgZmxvd19sYWJlbDsKIH07CiBzdHJ1Y3QgaWJfdXNlcl9tYWRfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgc3RhdHVzOwotIF9fdTMyIHRpbWVvdXRfbXM7Ci0gX191MzIgcmV0cmllczsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHN0YXR1czsKKyAgX191MzIgdGltZW91dF9tczsKKyAgX191MzIgcmV0cmllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuZ3RoOwotIF9fYmUzMiBxcG47Ci0gX19iZTMyIHFrZXk7Ci0gX19iZTE2IGxpZDsKKyAgX191MzIgbGVuZ3RoOworICBfX2JlMzIgcXBuOworICBfX2JlMzIgcWtleTsKKyAgX19iZTE2IGxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzbDsKLSBfX3U4IHBhdGhfYml0czsKLSBfX3U4IGdyaF9wcmVzZW50OwotIF9fdTggZ2lkX2luZGV4OworICBfX3U4IHNsOworICBfX3U4IHBhdGhfYml0czsKKyAgX191OCBncmhfcHJlc2VudDsKKyAgX191OCBnaWRfaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaG9wX2xpbWl0OwotIF9fdTggdHJhZmZpY19jbGFzczsKLSBfX3U4IGdpZFsxNl07Ci0gX19iZTMyIGZsb3dfbGFiZWw7CisgIF9fdTggaG9wX2xpbWl0OworICBfX3U4IHRyYWZmaWNfY2xhc3M7CisgIF9fdTggZ2lkWzE2XTsKKyAgX19iZTMyIGZsb3dfbGFiZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBrZXlfaW5kZXg7Ci0gX191OCByZXNlcnZlZFs2XTsKKyAgX191MTYgcGtleV9pbmRleDsKKyAgX191OCByZXNlcnZlZFs2XTsKIH07CiBzdHJ1Y3QgaWJfdXNlcl9tYWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWJfdXNlcl9tYWRfaGRyIGhkcjsKLSBfX3U2NCBkYXRhWzBdOworICBzdHJ1Y3QgaWJfdXNlcl9tYWRfaGRyIGhkcjsKKyAgX191NjQgZGF0YVswXTsKIH07CiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg0KSkpIHBhY2tlZF91bG9uZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElCX1VTRVJfTUFEX0xPTkdTX1BFUl9NRVRIT0RfTUFTSyAoMTI4IC8gKDggKiBzaXplb2YgKGxvbmcpKSkKKyNkZWZpbmUgSUJfVVNFUl9NQURfTE9OR1NfUEVSX01FVEhPRF9NQVNLICgxMjggLyAoOCAqIHNpemVvZihsb25nKSkpCiBzdHJ1Y3QgaWJfdXNlcl9tYWRfcmVnX3JlcSB7Ci0gX191MzIgaWQ7Ci0gcGFja2VkX3Vsb25nIG1ldGhvZF9tYXNrW0lCX1VTRVJfTUFEX0xPTkdTX1BFUl9NRVRIT0RfTUFTS107CisgIF9fdTMyIGlkOworICBwYWNrZWRfdWxvbmcgbWV0aG9kX21hc2tbSUJfVVNFUl9NQURfTE9OR1NfUEVSX01FVEhPRF9NQVNLXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBxcG47Ci0gX191OCBtZ210X2NsYXNzOwotIF9fdTggbWdtdF9jbGFzc192ZXJzaW9uOwotIF9fdTggb3VpWzNdOworICBfX3U4IHFwbjsKKyAgX191OCBtZ210X2NsYXNzOworICBfX3U4IG1nbXRfY2xhc3NfdmVyc2lvbjsKKyAgX191OCBvdWlbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcm1wcF92ZXJzaW9uOworICBfX3U4IHJtcHBfdmVyc2lvbjsKK307CitlbnVtIHsKKyAgSUJfVVNFUl9NQURfVVNFUl9STVBQID0gKDEgPDwgMCksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgSUJfVVNFUl9NQURfUkVHX0ZMQUdTX0NBUCAoSUJfVVNFUl9NQURfVVNFUl9STVBQKQorc3RydWN0IGliX3VzZXJfbWFkX3JlZ19yZXEyIHsKKyAgX191MzIgaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBxcG47CisgIF9fdTggbWdtdF9jbGFzczsKKyAgX191OCBtZ210X2NsYXNzX3ZlcnNpb247CisgIF9fdTE2IHJlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBtZXRob2RfbWFza1syXTsKKyAgX191MzIgb3VpOworICBfX3U4IHJtcHBfdmVyc2lvbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWRbM107CiB9OwogI2RlZmluZSBJQl9JT0NUTF9NQUdJQyAweDFiCi0jZGVmaW5lIElCX1VTRVJfTUFEX1JFR0lTVEVSX0FHRU5UIF9JT1dSKElCX0lPQ1RMX01BR0lDLCAxLCAgIHN0cnVjdCBpYl91c2VyX21hZF9yZWdfcmVxKQorI2RlZmluZSBJQl9VU0VSX01BRF9SRUdJU1RFUl9BR0VOVCBfSU9XUihJQl9JT0NUTF9NQUdJQywgMSwgc3RydWN0IGliX3VzZXJfbWFkX3JlZ19yZXEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJQl9VU0VSX01BRF9VTlJFR0lTVEVSX0FHRU5UIF9JT1coSUJfSU9DVExfTUFHSUMsIDIsIF9fdTMyKQogI2RlZmluZSBJQl9VU0VSX01BRF9FTkFCTEVfUEtFWSBfSU8oSUJfSU9DVExfTUFHSUMsIDMpCisjZGVmaW5lIElCX1VTRVJfTUFEX1JFR0lTVEVSX0FHRU5UMiBfSU9XUihJQl9JT0NUTF9NQUdJQywgNCwgc3RydWN0IGliX3VzZXJfbWFkX3JlZ19yZXEyKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfc2EuaCBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX3NhLmgKaW5kZXggZGU1ZGY4OS4uMzZmNGE4MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfc2EuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9zYS5oCkBAIC0yMSw0NiArMjEsNDYgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1BBVEhfR01QID0gMSwKLSBJQl9QQVRIX1BSSU1BUlkgPSAoMTw8MSksCi0gSUJfUEFUSF9BTFRFUk5BVEUgPSAoMTw8MiksCi0gSUJfUEFUSF9PVVRCT1VORCA9ICgxPDwzKSwKKyAgSUJfUEFUSF9HTVAgPSAxLAorICBJQl9QQVRIX1BSSU1BUlkgPSAoMSA8PCAxKSwKKyAgSUJfUEFUSF9BTFRFUk5BVEUgPSAoMSA8PCAyKSwKKyAgSUJfUEFUSF9PVVRCT1VORCA9ICgxIDw8IDMpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9QQVRIX0lOQk9VTkQgPSAoMTw8NCksCi0gSUJfUEFUSF9JTkJPVU5EX1JFVkVSU0UgPSAoMTw8NSksCi0gSUJfUEFUSF9CSURJUkVDVElPTkFMID0gSUJfUEFUSF9PVVRCT1VORCB8IElCX1BBVEhfSU5CT1VORF9SRVZFUlNFCisgIElCX1BBVEhfSU5CT1VORCA9ICgxIDw8IDQpLAorICBJQl9QQVRIX0lOQk9VTkRfUkVWRVJTRSA9ICgxIDw8IDUpLAorICBJQl9QQVRIX0JJRElSRUNUSU9OQUwgPSBJQl9QQVRIX09VVEJPVU5EIHwgSUJfUEFUSF9JTkJPVU5EX1JFVkVSU0UKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3BhdGhfcmVjX2RhdGEgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTMyIHBhdGhfcmVjWzE2XTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBwYXRoX3JlY1sxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIHsKLSBfX3U4IGRnaWRbMTZdOwotIF9fdTggc2dpZFsxNl07CisgIF9fdTggZGdpZFsxNl07CisgIF9fdTggc2dpZFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBkbGlkOwotIF9fYmUxNiBzbGlkOwotIF9fdTMyIHJhd190cmFmZmljOwotIF9fYmUzMiBmbG93X2xhYmVsOworICBfX2JlMTYgZGxpZDsKKyAgX19iZTE2IHNsaWQ7CisgIF9fdTMyIHJhd190cmFmZmljOworICBfX2JlMzIgZmxvd19sYWJlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmV2ZXJzaWJsZTsKLSBfX3UzMiBtdHU7Ci0gX19iZTE2IHBrZXk7Ci0gX191OCBob3BfbGltaXQ7CisgIF9fdTMyIHJldmVyc2libGU7CisgIF9fdTMyIG10dTsKKyAgX19iZTE2IHBrZXk7CisgIF9fdTggaG9wX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRyYWZmaWNfY2xhc3M7Ci0gX191OCBudW1iX3BhdGg7Ci0gX191OCBzbDsKLSBfX3U4IG10dV9zZWxlY3RvcjsKKyAgX191OCB0cmFmZmljX2NsYXNzOworICBfX3U4IG51bWJfcGF0aDsKKyAgX191OCBzbDsKKyAgX191OCBtdHVfc2VsZWN0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmF0ZV9zZWxlY3RvcjsKLSBfX3U4IHJhdGU7Ci0gX191OCBwYWNrZXRfbGlmZV90aW1lX3NlbGVjdG9yOwotIF9fdTggcGFja2V0X2xpZmVfdGltZTsKKyAgX191OCByYXRlX3NlbGVjdG9yOworICBfX3U4IHJhdGU7CisgIF9fdTggcGFja2V0X2xpZmVfdGltZV9zZWxlY3RvcjsKKyAgX191OCBwYWNrZXRfbGlmZV90aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByZWZlcmVuY2U7CisgIF9fdTggcHJlZmVyZW5jZTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX3ZlcmJzLmggYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl92ZXJicy5oCmluZGV4IGRkOTMxZDguLjljMjNhYzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX3ZlcmJzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfdmVyYnMuaApAQCAtMjMsNzIgKzIzLDcyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJQl9VU0VSX1ZFUkJTX0NNRF9USFJFU0hPTEQgNTAKIGVudW0gewotIElCX1VTRVJfVkVSQlNfQ01EX0dFVF9DT05URVhULAotIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX0RFVklDRSwKKyAgSUJfVVNFUl9WRVJCU19DTURfR0VUX0NPTlRFWFQsCisgIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX0RFVklDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfUE9SVCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9BTExPQ19QRCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERUFMTE9DX1BELAotIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9BSCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUVVFUllfUE9SVCwKKyAgSUJfVVNFUl9WRVJCU19DTURfQUxMT0NfUEQsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFQUxMT0NfUEQsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9BSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfTU9ESUZZX0FILAotIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX0FILAotIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfQUgsCi0gSUJfVVNFUl9WRVJCU19DTURfUkVHX01SLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9NT0RJRllfQUgsCisgIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX0FILAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX0FILAorICBJQl9VU0VSX1ZFUkJTX0NNRF9SRUdfTVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX1JFR19TTVIsCi0gSUJfVVNFUl9WRVJCU19DTURfUkVSRUdfTVIsCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfTVIsCi0gSUJfVVNFUl9WRVJCU19DTURfREVSRUdfTVIsCisgIElCX1VTRVJfVkVSQlNfQ01EX1JFR19TTVIsCisgIElCX1VTRVJfVkVSQlNfQ01EX1JFUkVHX01SLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9RVUVSWV9NUiwKKyAgSUJfVVNFUl9WRVJCU19DTURfREVSRUdfTVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX0FMTE9DX01XLAotIElCX1VTRVJfVkVSQlNfQ01EX0JJTkRfTVcsCi0gSUJfVVNFUl9WRVJCU19DTURfREVBTExPQ19NVywKLSBJQl9VU0VSX1ZFUkJTX0NNRF9DUkVBVEVfQ09NUF9DSEFOTkVMLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9BTExPQ19NVywKKyAgSUJfVVNFUl9WRVJCU19DTURfQklORF9NVywKKyAgSUJfVVNFUl9WRVJCU19DTURfREVBTExPQ19NVywKKyAgSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX0NPTVBfQ0hBTk5FTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX0NRLAotIElCX1VTRVJfVkVSQlNfQ01EX1JFU0laRV9DUSwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX0NRLAotIElCX1VTRVJfVkVSQlNfQ01EX1BPTExfQ1EsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9DUSwKKyAgSUJfVVNFUl9WRVJCU19DTURfUkVTSVpFX0NRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX0NRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9QT0xMX0NRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9QRUVLX0NRLAotIElCX1VTRVJfVkVSQlNfQ01EX1JFUV9OT1RJRllfQ1EsCi0gSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX1FQLAotIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX1FQLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9QRUVLX0NRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9SRVFfTk9USUZZX0NRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9DUkVBVEVfUVAsCisgIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX1FQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9NT0RJRllfUVAsCi0gSUJfVVNFUl9WRVJCU19DTURfREVTVFJPWV9RUCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9QT1NUX1NFTkQsCi0gSUJfVVNFUl9WRVJCU19DTURfUE9TVF9SRUNWLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9NT0RJRllfUVAsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfUVAsCisgIElCX1VTRVJfVkVSQlNfQ01EX1BPU1RfU0VORCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUE9TVF9SRUNWLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9BVFRBQ0hfTUNBU1QsCi0gSUJfVVNFUl9WRVJCU19DTURfREVUQUNIX01DQVNULAotIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9TUlEsCi0gSUJfVVNFUl9WRVJCU19DTURfTU9ESUZZX1NSUSwKKyAgSUJfVVNFUl9WRVJCU19DTURfQVRUQUNIX01DQVNULAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERVRBQ0hfTUNBU1QsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9TUlEsCisgIElCX1VTRVJfVkVSQlNfQ01EX01PRElGWV9TUlEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX1NSUSwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX1NSUSwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9QT1NUX1NSUV9SRUNWLAotIElCX1VTRVJfVkVSQlNfQ01EX09QRU5fWFJDRCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUVVFUllfU1JRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX1NSUSwKKyAgSUJfVVNFUl9WRVJCU19DTURfUE9TVF9TUlFfUkVDViwKKyAgSUJfVVNFUl9WRVJCU19DTURfT1BFTl9YUkNELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9DTE9TRV9YUkNELAotIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9YU1JRLAotIElCX1VTRVJfVkVSQlNfQ01EX09QRU5fUVAsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NMT1NFX1hSQ0QsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9YU1JRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9PUEVOX1FQLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJQl9VU0VSX1ZFUkJTX0VYX0NNRF9DUkVBVEVfRkxPVyA9IElCX1VTRVJfVkVSQlNfQ01EX1RIUkVTSE9MRCwKLSBJQl9VU0VSX1ZFUkJTX0VYX0NNRF9ERVNUUk9ZX0ZMT1cKKyAgSUJfVVNFUl9WRVJCU19FWF9DTURfQ1JFQVRFX0ZMT1cgPSBJQl9VU0VSX1ZFUkJTX0NNRF9USFJFU0hPTEQsCisgIElCX1VTRVJfVkVSQlNfRVhfQ01EX0RFU1RST1lfRkxPVwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2FzeW5jX2V2ZW50X2Rlc2MgewotIF9fdTY0IGVsZW1lbnQ7Ci0gX191MzIgZXZlbnRfdHlwZTsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgZWxlbWVudDsKKyAgX191MzIgZXZlbnRfdHlwZTsKKyAgX191MzIgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY29tcF9ldmVudF9kZXNjIHsKLSBfX3U2NCBjcV9oYW5kbGU7CisgIF9fdTY0IGNxX2hhbmRsZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJQl9VU0VSX1ZFUkJTX0NNRF9DT01NQU5EX01BU0sgMHhmZgpAQCAtOTcsNzk1ICs5Nyw4MTMgQEAKICNkZWZpbmUgSUJfVVNFUl9WRVJCU19DTURfRkxBR19FWFRFTkRFRCAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19jbWRfaGRyIHsKLSBfX3UzMiBjb21tYW5kOwotIF9fdTE2IGluX3dvcmRzOwotIF9fdTE2IG91dF93b3JkczsKKyAgX191MzIgY29tbWFuZDsKKyAgX191MTYgaW5fd29yZHM7CisgIF9fdTE2IG91dF93b3JkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19leF9jbWRfaGRyIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UxNiBwcm92aWRlcl9pbl93b3JkczsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTE2IHByb3ZpZGVyX2luX3dvcmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwcm92aWRlcl9vdXRfd29yZHM7Ci0gX191MzIgY21kX2hkcl9yZXNlcnZlZDsKKyAgX191MTYgcHJvdmlkZXJfb3V0X3dvcmRzOworICBfX3UzMiBjbWRfaGRyX3Jlc2VydmVkOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZ2V0X2NvbnRleHQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZ2V0X2NvbnRleHRfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFzeW5jX2ZkOwotIF9fdTMyIG51bV9jb21wX3ZlY3RvcnM7CisgIF9fdTMyIGFzeW5jX2ZkOworICBfX3UzMiBudW1fY29tcF92ZWN0b3JzOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfZGV2aWNlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X2RldmljZV9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZndfdmVyOwotIF9fYmU2NCBub2RlX2d1aWQ7Ci0gX19iZTY0IHN5c19pbWFnZV9ndWlkOwotIF9fdTY0IG1heF9tcl9zaXplOworICBfX3U2NCBmd192ZXI7CisgIF9fYmU2NCBub2RlX2d1aWQ7CisgIF9fYmU2NCBzeXNfaW1hZ2VfZ3VpZDsKKyAgX191NjQgbWF4X21yX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBhZ2Vfc2l6ZV9jYXA7Ci0gX191MzIgdmVuZG9yX2lkOwotIF9fdTMyIHZlbmRvcl9wYXJ0X2lkOwotIF9fdTMyIGh3X3ZlcjsKKyAgX191NjQgcGFnZV9zaXplX2NhcDsKKyAgX191MzIgdmVuZG9yX2lkOworICBfX3UzMiB2ZW5kb3JfcGFydF9pZDsKKyAgX191MzIgaHdfdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcXA7Ci0gX191MzIgbWF4X3FwX3dyOwotIF9fdTMyIGRldmljZV9jYXBfZmxhZ3M7Ci0gX191MzIgbWF4X3NnZTsKKyAgX191MzIgbWF4X3FwOworICBfX3UzMiBtYXhfcXBfd3I7CisgIF9fdTMyIGRldmljZV9jYXBfZmxhZ3M7CisgIF9fdTMyIG1heF9zZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9zZ2VfcmQ7Ci0gX191MzIgbWF4X2NxOwotIF9fdTMyIG1heF9jcWU7Ci0gX191MzIgbWF4X21yOworICBfX3UzMiBtYXhfc2dlX3JkOworICBfX3UzMiBtYXhfY3E7CisgIF9fdTMyIG1heF9jcWU7CisgIF9fdTMyIG1heF9tcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3BkOwotIF9fdTMyIG1heF9xcF9yZF9hdG9tOwotIF9fdTMyIG1heF9lZV9yZF9hdG9tOwotIF9fdTMyIG1heF9yZXNfcmRfYXRvbTsKKyAgX191MzIgbWF4X3BkOworICBfX3UzMiBtYXhfcXBfcmRfYXRvbTsKKyAgX191MzIgbWF4X2VlX3JkX2F0b207CisgIF9fdTMyIG1heF9yZXNfcmRfYXRvbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3FwX2luaXRfcmRfYXRvbTsKLSBfX3UzMiBtYXhfZWVfaW5pdF9yZF9hdG9tOwotIF9fdTMyIGF0b21pY19jYXA7Ci0gX191MzIgbWF4X2VlOworICBfX3UzMiBtYXhfcXBfaW5pdF9yZF9hdG9tOworICBfX3UzMiBtYXhfZWVfaW5pdF9yZF9hdG9tOworICBfX3UzMiBhdG9taWNfY2FwOworICBfX3UzMiBtYXhfZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9yZGQ7Ci0gX191MzIgbWF4X213OwotIF9fdTMyIG1heF9yYXdfaXB2Nl9xcDsKLSBfX3UzMiBtYXhfcmF3X2V0aHlfcXA7CisgIF9fdTMyIG1heF9yZGQ7CisgIF9fdTMyIG1heF9tdzsKKyAgX191MzIgbWF4X3Jhd19pcHY2X3FwOworICBfX3UzMiBtYXhfcmF3X2V0aHlfcXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9tY2FzdF9ncnA7Ci0gX191MzIgbWF4X21jYXN0X3FwX2F0dGFjaDsKLSBfX3UzMiBtYXhfdG90YWxfbWNhc3RfcXBfYXR0YWNoOwotIF9fdTMyIG1heF9haDsKKyAgX191MzIgbWF4X21jYXN0X2dycDsKKyAgX191MzIgbWF4X21jYXN0X3FwX2F0dGFjaDsKKyAgX191MzIgbWF4X3RvdGFsX21jYXN0X3FwX2F0dGFjaDsKKyAgX191MzIgbWF4X2FoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfZm1yOwotIF9fdTMyIG1heF9tYXBfcGVyX2ZtcjsKLSBfX3UzMiBtYXhfc3JxOwotIF9fdTMyIG1heF9zcnFfd3I7CisgIF9fdTMyIG1heF9mbXI7CisgIF9fdTMyIG1heF9tYXBfcGVyX2ZtcjsKKyAgX191MzIgbWF4X3NycTsKKyAgX191MzIgbWF4X3NycV93cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3NycV9zZ2U7Ci0gX191MTYgbWF4X3BrZXlzOwotIF9fdTggbG9jYWxfY2FfYWNrX2RlbGF5OwotIF9fdTggcGh5c19wb3J0X2NudDsKKyAgX191MzIgbWF4X3NycV9zZ2U7CisgIF9fdTE2IG1heF9wa2V5czsKKyAgX191OCBsb2NhbF9jYV9hY2tfZGVsYXk7CisgIF9fdTggcGh5c19wb3J0X2NudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZFs0XTsKKyAgX191OCByZXNlcnZlZFs0XTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X3BvcnQgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwb3J0X251bTsKLSBfX3U4IHJlc2VydmVkWzddOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U4IHBvcnRfbnVtOworICBfX3U4IHJlc2VydmVkWzddOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19xdWVyeV9wb3J0X3Jlc3AgewotIF9fdTMyIHBvcnRfY2FwX2ZsYWdzOwotIF9fdTMyIG1heF9tc2dfc3o7Ci0gX191MzIgYmFkX3BrZXlfY250cjsKKyAgX191MzIgcG9ydF9jYXBfZmxhZ3M7CisgIF9fdTMyIG1heF9tc2dfc3o7CisgIF9fdTMyIGJhZF9wa2V5X2NudHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFrZXlfdmlvbF9jbnRyOwotIF9fdTMyIGdpZF90YmxfbGVuOwotIF9fdTE2IHBrZXlfdGJsX2xlbjsKLSBfX3UxNiBsaWQ7CisgIF9fdTMyIHFrZXlfdmlvbF9jbnRyOworICBfX3UzMiBnaWRfdGJsX2xlbjsKKyAgX191MTYgcGtleV90YmxfbGVuOworICBfX3UxNiBsaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNtX2xpZDsKLSBfX3U4IHN0YXRlOwotIF9fdTggbWF4X210dTsKLSBfX3U4IGFjdGl2ZV9tdHU7CisgIF9fdTE2IHNtX2xpZDsKKyAgX191OCBzdGF0ZTsKKyAgX191OCBtYXhfbXR1OworICBfX3U4IGFjdGl2ZV9tdHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbG1jOwotIF9fdTggbWF4X3ZsX251bTsKLSBfX3U4IHNtX3NsOwotIF9fdTggc3VibmV0X3RpbWVvdXQ7CisgIF9fdTggbG1jOworICBfX3U4IG1heF92bF9udW07CisgIF9fdTggc21fc2w7CisgIF9fdTggc3VibmV0X3RpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW5pdF90eXBlX3JlcGx5OwotIF9fdTggYWN0aXZlX3dpZHRoOwotIF9fdTggYWN0aXZlX3NwZWVkOwotIF9fdTggcGh5c19zdGF0ZTsKKyAgX191OCBpbml0X3R5cGVfcmVwbHk7CisgIF9fdTggYWN0aXZlX3dpZHRoOworICBfX3U4IGFjdGl2ZV9zcGVlZDsKKyAgX191OCBwaHlzX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxpbmtfbGF5ZXI7Ci0gX191OCByZXNlcnZlZFsyXTsKKyAgX191OCBsaW5rX2xheWVyOworICBfX3U4IHJlc2VydmVkWzJdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfYWxsb2NfcGQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfYWxsb2NfcGRfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkX2hhbmRsZTsKKyAgX191MzIgcGRfaGFuZGxlOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZGVhbGxvY19wZCB7Ci0gX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBwZF9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfb3Blbl94cmNkIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBmZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGZkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvZmxhZ3M7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTMyIG9mbGFnczsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19vcGVuX3hyY2RfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHhyY2RfaGFuZGxlOworICBfX3UzMiB4cmNkX2hhbmRsZTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2Nsb3NlX3hyY2QgewotIF9fdTMyIHhyY2RfaGFuZGxlOworICBfX3UzMiB4cmNkX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19yZWdfbXIgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHN0YXJ0OworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGxlbmd0aDsKLSBfX3U2NCBoY2FfdmE7Ci0gX191MzIgcGRfaGFuZGxlOwotIF9fdTMyIGFjY2Vzc19mbGFnczsKKyAgX191NjQgbGVuZ3RoOworICBfX3U2NCBoY2FfdmE7CisgIF9fdTMyIHBkX2hhbmRsZTsKKyAgX191MzIgYWNjZXNzX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19yZWdfbXJfcmVzcCB7Ci0gX191MzIgbXJfaGFuZGxlOworICBfX3UzMiBtcl9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxrZXk7Ci0gX191MzIgcmtleTsKKyAgX191MzIgbGtleTsKKyAgX191MzIgcmtleTsKK307CitzdHJ1Y3QgaWJfdXZlcmJzX3JlcmVnX21yIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBtcl9oYW5kbGU7CisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBzdGFydDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGxlbmd0aDsKKyAgX191NjQgaGNhX3ZhOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIGFjY2Vzc19mbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IGliX3V2ZXJic19yZXJlZ19tcl9yZXNwIHsKKyAgX191MzIgbGtleTsKKyAgX191MzIgcmtleTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19kZXJlZ19tciB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1yX2hhbmRsZTsKKyAgX191MzIgbXJfaGFuZGxlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2FsbG9jX213IHsKLSBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIHBkX2hhbmRsZTsKKyAgX191OCBtd190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZF9oYW5kbGU7Ci0gX191OCBtd190eXBlOwotIF9fdTggcmVzZXJ2ZWRbM107CisgIF9fdTggcmVzZXJ2ZWRbM107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfYWxsb2NfbXdfcmVzcCB7Ci0gX191MzIgbXdfaGFuZGxlOwotIF9fdTMyIHJrZXk7Ci19OworICBfX3UzMiBtd19oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBya2V5OworfTsKIHN0cnVjdCBpYl91dmVyYnNfZGVhbGxvY19tdyB7Ci0gX191MzIgbXdfaGFuZGxlOworICBfX3UzMiBtd19oYW5kbGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2NvbXBfY2hhbm5lbCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKIH07Ci1zdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9jb21wX2NoYW5uZWxfcmVzcCB7Ci0gX191MzIgZmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGliX3V2ZXJic19jcmVhdGVfY29tcF9jaGFubmVsX3Jlc3AgeworICBfX3UzMiBmZDsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9jcSB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgdXNlcl9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNxZTsKLSBfX3UzMiBjb21wX3ZlY3RvcjsKLSBfX3MzMiBjb21wX2NoYW5uZWw7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCB1c2VyX2hhbmRsZTsKKyAgX191MzIgY3FlOworICBfX3UzMiBjb21wX3ZlY3RvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fczMyIGNvbXBfY2hhbm5lbDsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9jcV9yZXNwIHsKLSBfX3UzMiBjcV9oYW5kbGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNxZTsKKyAgX191MzIgY3FfaGFuZGxlOworICBfX3UzMiBjcWU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcmVzaXplX2NxIHsKLSBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGNxX2hhbmRsZTsKKyAgX191MzIgY3FlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcV9oYW5kbGU7Ci0gX191MzIgY3FlOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19yZXNpemVfY3FfcmVzcCB7Ci0gX191MzIgY3FlOwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3UzMiBjcWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19wb2xsX2NxIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBjcV9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5lOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgY3FfaGFuZGxlOworICBfX3UzMiBuZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic193YyB7Ci0gX191NjQgd3JfaWQ7CisgIF9fdTY0IHdyX2lkOworICBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3RhdHVzOwotIF9fdTMyIG9wY29kZTsKLSBfX3UzMiB2ZW5kb3JfZXJyOwotIF9fdTMyIGJ5dGVfbGVuOworICBfX3UzMiB2ZW5kb3JfZXJyOworICBfX3UzMiBieXRlX2xlbjsKKyAgdW5pb24geworICAgIF9fdTMyIGltbV9kYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX191MzIgaW1tX2RhdGE7Ci0gX191MzIgaW52YWxpZGF0ZV9ya2V5OwotIH0gZXg7CisgICAgX191MzIgaW52YWxpZGF0ZV9ya2V5OworICB9IGV4OworICBfX3UzMiBxcF9udW07CisgIF9fdTMyIHNyY19xcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfbnVtOwotIF9fdTMyIHNyY19xcDsKLSBfX3UzMiB3Y19mbGFnczsKLSBfX3UxNiBwa2V5X2luZGV4OworICBfX3UzMiB3Y19mbGFnczsKKyAgX191MTYgcGtleV9pbmRleDsKKyAgX191MTYgc2xpZDsKKyAgX191OCBzbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2xpZDsKLSBfX3U4IHNsOwotIF9fdTggZGxpZF9wYXRoX2JpdHM7Ci0gX191OCBwb3J0X251bTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDsKKyAgX191OCBkbGlkX3BhdGhfYml0czsKKyAgX191OCBwb3J0X251bTsKKyAgX191OCByZXNlcnZlZDsKIH07Ci1zdHJ1Y3QgaWJfdXZlcmJzX3BvbGxfY3FfcmVzcCB7Ci0gX191MzIgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOwotIHN0cnVjdCBpYl91dmVyYnNfd2Mgd2NbMF07CitzdHJ1Y3QgaWJfdXZlcmJzX3BvbGxfY3FfcmVzcCB7CisgIF9fdTMyIGNvdW50OworICBfX3UzMiByZXNlcnZlZDsKKyAgc3RydWN0IGliX3V2ZXJic193YyB3Y1swXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19yZXFfbm90aWZ5X2NxIHsKKyAgX191MzIgY3FfaGFuZGxlOworICBfX3UzMiBzb2xpY2l0ZWRfb25seTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3FfaGFuZGxlOwotIF9fdTMyIHNvbGljaXRlZF9vbmx5OwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9jcSB7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBjcV9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGNxX2hhbmRsZTsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9jcV9yZXNwIHsKLSBfX3UzMiBjb21wX2V2ZW50c19yZXBvcnRlZDsKLSBfX3UzMiBhc3luY19ldmVudHNfcmVwb3J0ZWQ7Ci19OworICBfX3UzMiBjb21wX2V2ZW50c19yZXBvcnRlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGFzeW5jX2V2ZW50c19yZXBvcnRlZDsKK307CiBzdHJ1Y3QgaWJfdXZlcmJzX2dsb2JhbF9yb3V0ZSB7Ci0gX191OCBkZ2lkWzE2XTsKLSBfX3UzMiBmbG93X2xhYmVsOwotIF9fdTggc2dpZF9pbmRleDsKKyAgX191OCBkZ2lkWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBob3BfbGltaXQ7Ci0gX191OCB0cmFmZmljX2NsYXNzOwotIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTMyIGZsb3dfbGFiZWw7CisgIF9fdTggc2dpZF9pbmRleDsKKyAgX191OCBob3BfbGltaXQ7CisgIF9fdTggdHJhZmZpY19jbGFzczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfYWhfYXR0ciB7Ci0gc3RydWN0IGliX3V2ZXJic19nbG9iYWxfcm91dGUgZ3JoOwotIF9fdTE2IGRsaWQ7Ci0gX191OCBzbDsKKyAgc3RydWN0IGliX3V2ZXJic19nbG9iYWxfcm91dGUgZ3JoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNyY19wYXRoX2JpdHM7Ci0gX191OCBzdGF0aWNfcmF0ZTsKLSBfX3U4IGlzX2dsb2JhbDsKLSBfX3U4IHBvcnRfbnVtOworICBfX3UxNiBkbGlkOworICBfX3U4IHNsOworICBfX3U4IHNyY19wYXRoX2JpdHM7CisgIF9fdTggc3RhdGljX3JhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTggaXNfZ2xvYmFsOworICBfX3U4IHBvcnRfbnVtOworICBfX3U4IHJlc2VydmVkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2F0dHIgewotIF9fdTMyIHFwX2F0dHJfbWFzazsKKyAgX191MzIgcXBfYXR0cl9tYXNrOworICBfX3UzMiBxcF9zdGF0ZTsKKyAgX191MzIgY3VyX3FwX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcF9zdGF0ZTsKLSBfX3UzMiBjdXJfcXBfc3RhdGU7Ci0gX191MzIgcGF0aF9tdHU7Ci0gX191MzIgcGF0aF9taWdfc3RhdGU7CisgIF9fdTMyIHBhdGhfbXR1OworICBfX3UzMiBwYXRoX21pZ19zdGF0ZTsKKyAgX191MzIgcWtleTsKKyAgX191MzIgcnFfcHNuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxa2V5OwotIF9fdTMyIHJxX3BzbjsKLSBfX3UzMiBzcV9wc247Ci0gX191MzIgZGVzdF9xcF9udW07CisgIF9fdTMyIHNxX3BzbjsKKyAgX191MzIgZGVzdF9xcF9udW07CisgIF9fdTMyIHFwX2FjY2Vzc19mbGFnczsKKyAgc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGFoX2F0dHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2FjY2Vzc19mbGFnczsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYWhfYXR0cjsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYWx0X2FoX2F0dHI7Ci0gX191MzIgbWF4X3NlbmRfd3I7CisgIHN0cnVjdCBpYl91dmVyYnNfYWhfYXR0ciBhbHRfYWhfYXR0cjsKKyAgX191MzIgbWF4X3NlbmRfd3I7CisgIF9fdTMyIG1heF9yZWN2X3dyOworICBfX3UzMiBtYXhfc2VuZF9zZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9yZWN2X3dyOwotIF9fdTMyIG1heF9zZW5kX3NnZTsKLSBfX3UzMiBtYXhfcmVjdl9zZ2U7Ci0gX191MzIgbWF4X2lubGluZV9kYXRhOworICBfX3UzMiBtYXhfcmVjdl9zZ2U7CisgIF9fdTMyIG1heF9pbmxpbmVfZGF0YTsKKyAgX191MTYgcGtleV9pbmRleDsKKyAgX191MTYgYWx0X3BrZXlfaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBrZXlfaW5kZXg7Ci0gX191MTYgYWx0X3BrZXlfaW5kZXg7Ci0gX191OCBlbl9zcWRfYXN5bmNfbm90aWZ5OwotIF9fdTggc3FfZHJhaW5pbmc7CisgIF9fdTggZW5fc3FkX2FzeW5jX25vdGlmeTsKKyAgX191OCBzcV9kcmFpbmluZzsKKyAgX191OCBtYXhfcmRfYXRvbWljOworICBfX3U4IG1heF9kZXN0X3JkX2F0b21pYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtYXhfcmRfYXRvbWljOwotIF9fdTggbWF4X2Rlc3RfcmRfYXRvbWljOwotIF9fdTggbWluX3Jucl90aW1lcjsKLSBfX3U4IHBvcnRfbnVtOworICBfX3U4IG1pbl9ybnJfdGltZXI7CisgIF9fdTggcG9ydF9udW07CisgIF9fdTggdGltZW91dDsKKyAgX191OCByZXRyeV9jbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGltZW91dDsKLSBfX3U4IHJldHJ5X2NudDsKLSBfX3U4IHJucl9yZXRyeTsKLSBfX3U4IGFsdF9wb3J0X251bTsKKyAgX191OCBybnJfcmV0cnk7CisgIF9fdTggYWx0X3BvcnRfbnVtOworICBfX3U4IGFsdF90aW1lb3V0OworICBfX3U4IHJlc2VydmVkWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFsdF90aW1lb3V0OwotIF9fdTggcmVzZXJ2ZWRbNV07CiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfcXAgeworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgdXNlcl9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHVzZXJfaGFuZGxlOwotIF9fdTMyIHBkX2hhbmRsZTsKLSBfX3UzMiBzZW5kX2NxX2hhbmRsZTsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBzZW5kX2NxX2hhbmRsZTsKKyAgX191MzIgcmVjdl9jcV9oYW5kbGU7CisgIF9fdTMyIHNycV9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlY3ZfY3FfaGFuZGxlOwotIF9fdTMyIHNycV9oYW5kbGU7Ci0gX191MzIgbWF4X3NlbmRfd3I7Ci0gX191MzIgbWF4X3JlY3Zfd3I7CisgIF9fdTMyIG1heF9zZW5kX3dyOworICBfX3UzMiBtYXhfcmVjdl93cjsKKyAgX191MzIgbWF4X3NlbmRfc2dlOworICBfX3UzMiBtYXhfcmVjdl9zZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9zZW5kX3NnZTsKLSBfX3UzMiBtYXhfcmVjdl9zZ2U7Ci0gX191MzIgbWF4X2lubGluZV9kYXRhOwotIF9fdTggc3Ffc2lnX2FsbDsKKyAgX191MzIgbWF4X2lubGluZV9kYXRhOworICBfX3U4IHNxX3NpZ19hbGw7CisgIF9fdTggcXBfdHlwZTsKKyAgX191OCBpc19zcnE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcXBfdHlwZTsKLSBfX3U4IGlzX3NycTsKLSBfX3U4IHJlc2VydmVkOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19vcGVuX3FwIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCB1c2VyX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRfaGFuZGxlOwotIF9fdTMyIHFwbjsKLSBfX3U4IHFwX3R5cGU7Ci0gX191OCByZXNlcnZlZFs3XTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHVzZXJfaGFuZGxlOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIHFwbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTggcXBfdHlwZTsKKyAgX191OCByZXNlcnZlZFs3XTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX3FwX3Jlc3AgewotIF9fdTMyIHFwX2hhbmRsZTsKKyAgX191MzIgcXBfaGFuZGxlOworICBfX3UzMiBxcG47CisgIF9fdTMyIG1heF9zZW5kX3dyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcG47Ci0gX191MzIgbWF4X3NlbmRfd3I7Ci0gX191MzIgbWF4X3JlY3Zfd3I7Ci0gX191MzIgbWF4X3NlbmRfc2dlOworICBfX3UzMiBtYXhfcmVjdl93cjsKKyAgX191MzIgbWF4X3NlbmRfc2dlOworICBfX3UzMiBtYXhfcmVjdl9zZ2U7CisgIF9fdTMyIG1heF9pbmxpbmVfZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3JlY3Zfc2dlOwotIF9fdTMyIG1heF9pbmxpbmVfZGF0YTsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcXBfZGVzdCB7Ci0gX191OCBkZ2lkWzE2XTsKLSBfX3UzMiBmbG93X2xhYmVsOwotIF9fdTE2IGRsaWQ7CisgIF9fdTggZGdpZFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTggc2dpZF9pbmRleDsKLSBfX3U4IGhvcF9saW1pdDsKLSBfX3U4IHRyYWZmaWNfY2xhc3M7CisgIF9fdTMyIGZsb3dfbGFiZWw7CisgIF9fdTE2IGRsaWQ7CisgIF9fdTE2IHJlc2VydmVkOworICBfX3U4IHNnaWRfaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2w7Ci0gX191OCBzcmNfcGF0aF9iaXRzOwotIF9fdTggc3RhdGljX3JhdGU7Ci0gX191OCBpc19nbG9iYWw7CisgIF9fdTggaG9wX2xpbWl0OworICBfX3U4IHRyYWZmaWNfY2xhc3M7CisgIF9fdTggc2w7CisgIF9fdTggc3JjX3BhdGhfYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwb3J0X251bTsKKyAgX191OCBzdGF0aWNfcmF0ZTsKKyAgX191OCBpc19nbG9iYWw7CisgIF9fdTggcG9ydF9udW07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfcXAgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgcXBfaGFuZGxlOworICBfX3UzMiBhdHRyX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2hhbmRsZTsKLSBfX3UzMiBhdHRyX21hc2s7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X3FwX3Jlc3AgewotIHN0cnVjdCBpYl91dmVyYnNfcXBfZGVzdCBkZXN0OwotIHN0cnVjdCBpYl91dmVyYnNfcXBfZGVzdCBhbHRfZGVzdDsKLSBfX3UzMiBtYXhfc2VuZF93cjsKKyAgc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGRlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9yZWN2X3dyOwotIF9fdTMyIG1heF9zZW5kX3NnZTsKLSBfX3UzMiBtYXhfcmVjdl9zZ2U7Ci0gX191MzIgbWF4X2lubGluZV9kYXRhOworICBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgYWx0X2Rlc3Q7CisgIF9fdTMyIG1heF9zZW5kX3dyOworICBfX3UzMiBtYXhfcmVjdl93cjsKKyAgX191MzIgbWF4X3NlbmRfc2dlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxa2V5OwotIF9fdTMyIHJxX3BzbjsKLSBfX3UzMiBzcV9wc247Ci0gX191MzIgZGVzdF9xcF9udW07CisgIF9fdTMyIG1heF9yZWN2X3NnZTsKKyAgX191MzIgbWF4X2lubGluZV9kYXRhOworICBfX3UzMiBxa2V5OworICBfX3UzMiBycV9wc247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2FjY2Vzc19mbGFnczsKLSBfX3UxNiBwa2V5X2luZGV4OwotIF9fdTE2IGFsdF9wa2V5X2luZGV4OwotIF9fdTggcXBfc3RhdGU7CisgIF9fdTMyIHNxX3BzbjsKKyAgX191MzIgZGVzdF9xcF9udW07CisgIF9fdTMyIHFwX2FjY2Vzc19mbGFnczsKKyAgX191MTYgcGtleV9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjdXJfcXBfc3RhdGU7Ci0gX191OCBwYXRoX210dTsKLSBfX3U4IHBhdGhfbWlnX3N0YXRlOwotIF9fdTggc3FfZHJhaW5pbmc7CisgIF9fdTE2IGFsdF9wa2V5X2luZGV4OworICBfX3U4IHFwX3N0YXRlOworICBfX3U4IGN1cl9xcF9zdGF0ZTsKKyAgX191OCBwYXRoX210dTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtYXhfcmRfYXRvbWljOwotIF9fdTggbWF4X2Rlc3RfcmRfYXRvbWljOwotIF9fdTggbWluX3Jucl90aW1lcjsKLSBfX3U4IHBvcnRfbnVtOworICBfX3U4IHBhdGhfbWlnX3N0YXRlOworICBfX3U4IHNxX2RyYWluaW5nOworICBfX3U4IG1heF9yZF9hdG9taWM7CisgIF9fdTggbWF4X2Rlc3RfcmRfYXRvbWljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRpbWVvdXQ7Ci0gX191OCByZXRyeV9jbnQ7Ci0gX191OCBybnJfcmV0cnk7Ci0gX191OCBhbHRfcG9ydF9udW07CisgIF9fdTggbWluX3Jucl90aW1lcjsKKyAgX191OCBwb3J0X251bTsKKyAgX191OCB0aW1lb3V0OworICBfX3U4IHJldHJ5X2NudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhbHRfdGltZW91dDsKLSBfX3U4IHNxX3NpZ19hbGw7Ci0gX191OCByZXNlcnZlZFs1XTsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191OCBybnJfcmV0cnk7CisgIF9fdTggYWx0X3BvcnRfbnVtOworICBfX3U4IGFsdF90aW1lb3V0OworICBfX3U4IHNxX3NpZ19hbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkWzVdOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX21vZGlmeV9xcCB7Ci0gc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGRlc3Q7Ci0gc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGFsdF9kZXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcF9oYW5kbGU7Ci0gX191MzIgYXR0cl9tYXNrOwotIF9fdTMyIHFrZXk7Ci0gX191MzIgcnFfcHNuOworICBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgZGVzdDsKKyAgc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGFsdF9kZXN0OworICBfX3UzMiBxcF9oYW5kbGU7CisgIF9fdTMyIGF0dHJfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3FfcHNuOwotIF9fdTMyIGRlc3RfcXBfbnVtOwotIF9fdTMyIHFwX2FjY2Vzc19mbGFnczsKLSBfX3UxNiBwa2V5X2luZGV4OworICBfX3UzMiBxa2V5OworICBfX3UzMiBycV9wc247CisgIF9fdTMyIHNxX3BzbjsKKyAgX191MzIgZGVzdF9xcF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGFsdF9wa2V5X2luZGV4OwotIF9fdTggcXBfc3RhdGU7Ci0gX191OCBjdXJfcXBfc3RhdGU7Ci0gX191OCBwYXRoX210dTsKKyAgX191MzIgcXBfYWNjZXNzX2ZsYWdzOworICBfX3UxNiBwa2V5X2luZGV4OworICBfX3UxNiBhbHRfcGtleV9pbmRleDsKKyAgX191OCBxcF9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYXRoX21pZ19zdGF0ZTsKLSBfX3U4IGVuX3NxZF9hc3luY19ub3RpZnk7Ci0gX191OCBtYXhfcmRfYXRvbWljOwotIF9fdTggbWF4X2Rlc3RfcmRfYXRvbWljOworICBfX3U4IGN1cl9xcF9zdGF0ZTsKKyAgX191OCBwYXRoX210dTsKKyAgX191OCBwYXRoX21pZ19zdGF0ZTsKKyAgX191OCBlbl9zcWRfYXN5bmNfbm90aWZ5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1pbl9ybnJfdGltZXI7Ci0gX191OCBwb3J0X251bTsKLSBfX3U4IHRpbWVvdXQ7Ci0gX191OCByZXRyeV9jbnQ7CisgIF9fdTggbWF4X3JkX2F0b21pYzsKKyAgX191OCBtYXhfZGVzdF9yZF9hdG9taWM7CisgIF9fdTggbWluX3Jucl90aW1lcjsKKyAgX191OCBwb3J0X251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBybnJfcmV0cnk7Ci0gX191OCBhbHRfcG9ydF9udW07Ci0gX191OCBhbHRfdGltZW91dDsKLSBfX3U4IHJlc2VydmVkWzJdOworICBfX3U4IHRpbWVvdXQ7CisgIF9fdTggcmV0cnlfY250OworICBfX3U4IHJucl9yZXRyeTsKKyAgX191OCBhbHRfcG9ydF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U4IGFsdF90aW1lb3V0OworICBfX3U4IHJlc2VydmVkWzJdOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19tb2RpZnlfcXBfcmVzcCB7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9xcCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgcXBfaGFuZGxlOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHFwX2hhbmRsZTsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X3FwX3Jlc3AgewotIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19zZ2UgewotIF9fdTY0IGFkZHI7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGxrZXk7CisgIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGxrZXk7CiB9Owogc3RydWN0IGliX3V2ZXJic19zZW5kX3dyIHsKLSBfX3U2NCB3cl9pZDsKLSBfX3UzMiBudW1fc2dlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvcGNvZGU7Ci0gX191MzIgc2VuZF9mbGFnczsKLSB1bmlvbiB7Ci0gX191MzIgaW1tX2RhdGE7CisgIF9fdTY0IHdyX2lkOworICBfX3UzMiBudW1fc2dlOworICBfX3UzMiBvcGNvZGU7CisgIF9fdTMyIHNlbmRfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGludmFsaWRhdGVfcmtleTsKLSB9IGV4OwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CisgICAgX191MzIgaW1tX2RhdGE7CisgICAgX191MzIgaW52YWxpZGF0ZV9ya2V5OworICB9IGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZW1vdGVfYWRkcjsKLSBfX3UzMiBya2V5OwotIF9fdTMyIHJlc2VydmVkOwotIH0gcmRtYTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZW1vdGVfYWRkcjsKKyAgICAgIF9fdTMyIHJrZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191NjQgcmVtb3RlX2FkZHI7Ci0gX191NjQgY29tcGFyZV9hZGQ7Ci0gX191NjQgc3dhcDsKKyAgICAgIF9fdTMyIHJlc2VydmVkOworICAgIH0gcmRtYTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcmVtb3RlX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJrZXk7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gfSBhdG9taWM7Ci0gc3RydWN0IHsKKyAgICAgIF9fdTY0IGNvbXBhcmVfYWRkOworICAgICAgX191NjQgc3dhcDsKKyAgICAgIF9fdTMyIHJrZXk7CisgICAgICBfX3UzMiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWg7Ci0gX191MzIgcmVtb3RlX3FwbjsKLSBfX3UzMiByZW1vdGVfcWtleTsKLSBfX3UzMiByZXNlcnZlZDsKKyAgICB9IGF0b21pYzsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgYWg7CisgICAgICBfX3UzMiByZW1vdGVfcXBuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHVkOwotIH0gd3I7CisgICAgICBfX3UzMiByZW1vdGVfcWtleTsKKyAgICAgIF9fdTMyIHJlc2VydmVkOworICAgIH0gdWQ7CisgIH0gd3I7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcG9zdF9zZW5kIHsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIHFwX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgcXBfaGFuZGxlOwotIF9fdTMyIHdyX2NvdW50OwotIF9fdTMyIHNnZV9jb3VudDsKKyAgX191MzIgd3JfY291bnQ7CisgIF9fdTMyIHNnZV9jb3VudDsKKyAgX191MzIgd3FlX3NpemU7CisgIHN0cnVjdCBpYl91dmVyYnNfc2VuZF93ciBzZW5kX3dyWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3cWVfc2l6ZTsKLSBzdHJ1Y3QgaWJfdXZlcmJzX3NlbmRfd3Igc2VuZF93clswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3Bvc3Rfc2VuZF9yZXNwIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmFkX3dyOworICBfX3UzMiBiYWRfd3I7CiB9Owotc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHsKLSBfX3U2NCB3cl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3NnZTsKLSBfX3UzMiByZXNlcnZlZDsKK3N0cnVjdCBpYl91dmVyYnNfcmVjdl93ciB7CisgIF9fdTY0IHdyX2lkOworICBfX3UzMiBudW1fc2dlOworICBfX3UzMiByZXNlcnZlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19wb3N0X3JlY3YgeworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgcXBfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBxcF9oYW5kbGU7Ci0gX191MzIgd3JfY291bnQ7Ci0gX191MzIgc2dlX2NvdW50OworICBfX3UzMiB3cl9jb3VudDsKKyAgX191MzIgc2dlX2NvdW50OworICBfX3UzMiB3cWVfc2l6ZTsKKyAgc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHJlY3Zfd3JbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdxZV9zaXplOwotIHN0cnVjdCBpYl91dmVyYnNfcmVjdl93ciByZWN2X3dyWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcG9zdF9yZWN2X3Jlc3AgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBiYWRfd3I7CisgIF9fdTMyIGJhZF93cjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19wb3N0X3NycV9yZWN2IHsKLSBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIHNycV9oYW5kbGU7CisgIF9fdTMyIHdyX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcnFfaGFuZGxlOwotIF9fdTMyIHdyX2NvdW50OwotIF9fdTMyIHNnZV9jb3VudDsKLSBfX3UzMiB3cWVfc2l6ZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHJlY3ZbMF07CisgIF9fdTMyIHNnZV9jb3VudDsKKyAgX191MzIgd3FlX3NpemU7CisgIHN0cnVjdCBpYl91dmVyYnNfcmVjdl93ciByZWN2WzBdOwogfTsKLXN0cnVjdCBpYl91dmVyYnNfcG9zdF9zcnFfcmVjdl9yZXNwIHsKLSBfX3UzMiBiYWRfd3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGliX3V2ZXJic19wb3N0X3NycV9yZWN2X3Jlc3AgeworICBfX3UzMiBiYWRfd3I7CiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfYWggewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHVzZXJfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZF9oYW5kbGU7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGF0dHI7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCB1c2VyX2hhbmRsZTsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3UzMiByZXNlcnZlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBpYl91dmVyYnNfYWhfYXR0ciBhdHRyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9haF9yZXNwIHsKLSBfX3UzMiBhaF9oYW5kbGU7CisgIF9fdTMyIGFoX2hhbmRsZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X2FoIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWhfaGFuZGxlOworICBfX3UzMiBhaF9oYW5kbGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfYXR0YWNoX21jYXN0IHsKLSBfX3U4IGdpZFsxNl07CisgIF9fdTggZ2lkWzE2XTsKKyAgX191MzIgcXBfaGFuZGxlOworICBfX3UxNiBtbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcF9oYW5kbGU7Ci0gX191MTYgbWxpZDsKLSBfX3UxNiByZXNlcnZlZDsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHJlc2VydmVkOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2RldGFjaF9tY2FzdCB7Ci0gX191OCBnaWRbMTZdOwotIF9fdTMyIHFwX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWxpZDsKLSBfX3UxNiByZXNlcnZlZDsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191OCBnaWRbMTZdOworICBfX3UzMiBxcF9oYW5kbGU7CisgIF9fdTE2IG1saWQ7CisgIF9fdTE2IHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciB7Ci0gX191MzIgdHlwZTsKLSBfX3UxNiBzaXplOwotIF9fdTE2IHJlc2VydmVkOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmbG93X3NwZWNfZGF0YVswXTsKKyAgX191MTYgc2l6ZTsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTY0IGZsb3dfc3BlY19kYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfZXRoX2ZpbHRlciB7Ci0gX191OCBkc3RfbWFjWzZdOworICBfX3U4IGRzdF9tYWNbNl07CisgIF9fdTggc3JjX21hY1s2XTsKKyAgX19iZTE2IGV0aGVyX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3JjX21hY1s2XTsKLSBfX2JlMTYgZXRoZXJfdHlwZTsKLSBfX2JlMTYgdmxhbl90YWc7CisgIF9fYmUxNiB2bGFuX3RhZzsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfZXRoIHsKLSB1bmlvbiB7Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MTYgc2l6ZTsKLSBfX3UxNiByZXNlcnZlZDsKLSB9OworICAgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciBoZHI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIHR5cGU7CisgICAgICBfX3UxNiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd19ldGhfZmlsdGVyIHZhbDsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfZXRoX2ZpbHRlciBtYXNrOworICAgICAgX191MTYgcmVzZXJ2ZWQ7CisgICAgfTsKKyAgfTsKKyAgc3RydWN0IGliX3V2ZXJic19mbG93X2V0aF9maWx0ZXIgdmFsOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGliX3V2ZXJic19mbG93X2V0aF9maWx0ZXIgbWFzazsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19mbG93X2lwdjRfZmlsdGVyIHsKLSBfX2JlMzIgc3JjX2lwOwotIF9fYmUzMiBkc3RfaXA7Ci19OworICBfX2JlMzIgc3JjX2lwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTMyIGRzdF9pcDsKK307CiBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19pcHY0IHsKLSB1bmlvbiB7Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MTYgc2l6ZTsKLSBfX3UxNiByZXNlcnZlZDsKLSB9OworICAgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciBoZHI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIHR5cGU7CisgICAgICBfX3UxNiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd19pcHY0X2ZpbHRlciB2YWw7Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X2lwdjRfZmlsdGVyIG1hc2s7CisgICAgICBfX3UxNiByZXNlcnZlZDsKKyAgICB9OworICB9OworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfaXB2NF9maWx0ZXIgdmFsOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGliX3V2ZXJic19mbG93X2lwdjRfZmlsdGVyIG1hc2s7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZmxvd190Y3BfdWRwX2ZpbHRlciB7Ci0gX19iZTE2IGRzdF9wb3J0OwotIF9fYmUxNiBzcmNfcG9ydDsKLX07CisgIF9fYmUxNiBkc3RfcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUxNiBzcmNfcG9ydDsKK307CiBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY190Y3BfdWRwIHsKLSB1bmlvbiB7Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKLSBzdHJ1Y3QgeworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MTYgc2l6ZTsKLSBfX3UxNiByZXNlcnZlZDsKLSB9OworICAgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciBoZHI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIHR5cGU7CisgICAgICBfX3UxNiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd190Y3BfdWRwX2ZpbHRlciB2YWw7Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X3RjcF91ZHBfZmlsdGVyIG1hc2s7CisgICAgICBfX3UxNiByZXNlcnZlZDsKKyAgICB9OworICB9OworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfdGNwX3VkcF9maWx0ZXIgdmFsOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGliX3V2ZXJic19mbG93X3RjcF91ZHBfZmlsdGVyIG1hc2s7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZmxvd19hdHRyIHsKLSBfX3UzMiB0eXBlOwotIF9fdTE2IHNpemU7Ci0gX191MTYgcHJpb3JpdHk7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnVtX29mX3NwZWNzOwotIF9fdTggcmVzZXJ2ZWRbMl07Ci0gX191OCBwb3J0OwotIF9fdTMyIGZsYWdzOworICBfX3UxNiBzaXplOworICBfX3UxNiBwcmlvcml0eTsKKyAgX191OCBudW1fb2Zfc3BlY3M7CisgIF9fdTggcmVzZXJ2ZWRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciBmbG93X3NwZWNzWzBdOworICBfX3U4IHBvcnQ7CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19oZHIgZmxvd19zcGVjc1swXTsKIH07Ci1zdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9mbG93IHsKLSBfX3UzMiBjb21wX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2hhbmRsZTsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfYXR0ciBmbG93X2F0dHI7CitzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9mbG93IHsKKyAgX191MzIgY29tcF9tYXNrOworICBfX3UzMiBxcF9oYW5kbGU7CisgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19hdHRyIGZsb3dfYXR0cjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfZmxvd19yZXNwIHsKKyAgX191MzIgY29tcF9tYXNrOworICBfX3UzMiBmbG93X2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY29tcF9tYXNrOwotIF9fdTMyIGZsb3dfaGFuZGxlOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9mbG93IHsKKyAgX191MzIgY29tcF9tYXNrOworICBfX3UzMiBmbG93X2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY29tcF9tYXNrOwotIF9fdTMyIGZsb3dfaGFuZGxlOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX3NycSB7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCB1c2VyX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgdXNlcl9oYW5kbGU7Ci0gX191MzIgcGRfaGFuZGxlOwotIF9fdTMyIG1heF93cjsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBtYXhfd3I7CisgIF9fdTMyIG1heF9zZ2U7CisgIF9fdTMyIHNycV9saW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3NnZTsKLSBfX3UzMiBzcnFfbGltaXQ7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV94c3JxIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCB1c2VyX2hhbmRsZTsKLSBfX3UzMiBzcnFfdHlwZTsKKyAgX191NjQgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkX2hhbmRsZTsKLSBfX3UzMiBtYXhfd3I7Ci0gX191MzIgbWF4X3NnZTsKLSBfX3UzMiBzcnFfbGltaXQ7CisgIF9fdTY0IHVzZXJfaGFuZGxlOworICBfX3UzMiBzcnFfdHlwZTsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBtYXhfd3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTMyIHhyY2RfaGFuZGxlOwotIF9fdTMyIGNxX2hhbmRsZTsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191MzIgbWF4X3NnZTsKKyAgX191MzIgc3JxX2xpbWl0OworICBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgeHJjZF9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBjcV9oYW5kbGU7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX3NycV9yZXNwIHsKLSBfX3UzMiBzcnFfaGFuZGxlOwotIF9fdTMyIG1heF93cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3NnZTsKLSBfX3UzMiBzcnFuOworICBfX3UzMiBzcnFfaGFuZGxlOworICBfX3UzMiBtYXhfd3I7CisgIF9fdTMyIG1heF9zZ2U7CisgIF9fdTMyIHNycW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfbW9kaWZ5X3NycSB7CisgIF9fdTMyIHNycV9oYW5kbGU7CisgIF9fdTMyIGF0dHJfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JxX2hhbmRsZTsKLSBfX3UzMiBhdHRyX21hc2s7Ci0gX191MzIgbWF4X3dyOwotIF9fdTMyIHNycV9saW1pdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTMyIG1heF93cjsKKyAgX191MzIgc3JxX2xpbWl0OworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19xdWVyeV9zcnEgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgc3JxX2hhbmRsZTsKKyAgX191MzIgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNycV9oYW5kbGU7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X3NycV9yZXNwIHsKLSBfX3UzMiBtYXhfd3I7Ci0gX191MzIgbWF4X3NnZTsKLSBfX3UzMiBzcnFfbGltaXQ7CisgIF9fdTMyIG1heF93cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIG1heF9zZ2U7CisgIF9fdTMyIHNycV9saW1pdDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9Owotc3RydWN0IGliX3V2ZXJic19kZXN0cm95X3NycSB7Ci0gX191NjQgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNycV9oYW5kbGU7Ci0gX191MzIgcmVzZXJ2ZWQ7CitzdHJ1Y3QgaWJfdXZlcmJzX2Rlc3Ryb3lfc3JxIHsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIHNycV9oYW5kbGU7CisgIF9fdTMyIHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2Rlc3Ryb3lfc3JxX3Jlc3AgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBldmVudHNfcmVwb3J0ZWQ7CisgIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvcmRtYV9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvcmRtYV9uZXRsaW5rLmgKaW5kZXggMTk1YjdmMS4uZTQ5YmZmZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL3JkbWFfbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX25ldGxpbmsuaApAQCAtMjEsMzQgKzIxLDEzNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkRNQV9OTF9SRE1BX0NNID0gMQorICBSRE1BX05MX1JETUFfQ00gPSAxLAorICBSRE1BX05MX05FUywKKyAgUkRNQV9OTF9DNElXLAorICBSRE1BX05MX05VTV9DTElFTlRTCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBSRE1BX05MX0dST1VQX0NNID0gMSwKKyAgUkRNQV9OTF9HUk9VUF9JV1BNLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUkRNQV9OTF9OVU1fR1JPVVBTCiB9OwogI2RlZmluZSBSRE1BX05MX0dFVF9DTElFTlQodHlwZSkgKCh0eXBlICYgKCgoMSA8PCA2KSAtIDEpIDw8IDEwKSkgPj4gMTApCiAjZGVmaW5lIFJETUFfTkxfR0VUX09QKHR5cGUpICh0eXBlICYgKCgxIDw8IDEwKSAtIDEpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUkRNQV9OTF9HRVRfVFlQRShjbGllbnQsIG9wKSAoKGNsaWVudCA8PCAxMCkgKyBvcCkKKyNkZWZpbmUgUkRNQV9OTF9HRVRfVFlQRShjbGllbnQsb3ApICgoY2xpZW50IDw8IDEwKSArIG9wKQogZW51bSB7Ci0gUkRNQV9OTF9SRE1BX0NNX0lEX1NUQVRTID0gMCwKLSBSRE1BX05MX1JETUFfQ01fTlVNX09QUworICBSRE1BX05MX1JETUFfQ01fSURfU1RBVFMgPSAwLAorICBSRE1BX05MX1JETUFfQ01fTlVNX09QUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBSRE1BX05MX1JETUFfQ01fQVRUUl9TUkNfQUREUiA9IDEsCi0gUkRNQV9OTF9SRE1BX0NNX0FUVFJfRFNUX0FERFIsCisgIFJETUFfTkxfUkRNQV9DTV9BVFRSX1NSQ19BRERSID0gMSwKKyAgUkRNQV9OTF9SRE1BX0NNX0FUVFJfRFNUX0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfTkxfUkRNQV9DTV9OVU1fQVRUUiwKKyAgUkRNQV9OTF9SRE1BX0NNX05VTV9BVFRSLAogfTsKK2VudW0geworICBSRE1BX05MX0lXUE1fUkVHX1BJRCA9IDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSRE1BX05MX0lXUE1fQUREX01BUFBJTkcsCisgIFJETUFfTkxfSVdQTV9RVUVSWV9NQVBQSU5HLAorICBSRE1BX05MX0lXUE1fUkVNT1ZFX01BUFBJTkcsCisgIFJETUFfTkxfSVdQTV9IQU5ETEVfRVJSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUkRNQV9OTF9JV1BNX01BUElORk8sCisgIFJETUFfTkxfSVdQTV9NQVBJTkZPX05VTSwKKyAgUkRNQV9OTF9JV1BNX05VTV9PUFMKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfY21faWRfc3RhdHMgewotIF9fdTMyIHFwX251bTsKKyAgX191MzIgcXBfbnVtOworICBfX3UzMiBib3VuZF9kZXZfaWY7CisgIF9fdTMyIHBvcnRfc3BhY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJvdW5kX2Rldl9pZjsKLSBfX3UzMiBwb3J0X3NwYWNlOwotIF9fczMyIHBpZDsKLSBfX3U4IGNtX3N0YXRlOworICBfX3MzMiBwaWQ7CisgIF9fdTggY21fc3RhdGU7CisgIF9fdTggbm9kZV90eXBlOworICBfX3U4IHBvcnRfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5vZGVfdHlwZTsKLSBfX3U4IHBvcnRfbnVtOwotIF9fdTggcXBfdHlwZTsKKyAgX191OCBxcF90eXBlOworfTsKK2VudW0geworICBJV1BNX05MQV9SRUdfUElEX1VOU1BFQyA9IDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9SRUdfUElEX1NFUSwKKyAgSVdQTV9OTEFfUkVHX0lGX05BTUUsCisgIElXUE1fTkxBX1JFR19JQkRFVl9OQU1FLAorICBJV1BNX05MQV9SRUdfVUxJQl9OQU1FLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUkVHX1BJRF9NQVgKK307CitlbnVtIHsKKyAgSVdQTV9OTEFfUlJFR19QSURfVU5TUEVDID0gMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX1JSRUdfUElEX1NFUSwKKyAgSVdQTV9OTEFfUlJFR19JQkRFVl9OQU1FLAorICBJV1BNX05MQV9SUkVHX1VMSUJfTkFNRSwKKyAgSVdQTV9OTEFfUlJFR19VTElCX1ZFUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX1JSRUdfUElEX0VSUiwKKyAgSVdQTV9OTEFfUlJFR19QSURfTUFYCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9NQU5BR0VfTUFQUElOR19VTlNQRUMgPSAwLAorICBJV1BNX05MQV9NQU5BR0VfTUFQUElOR19TRVEsCisgIElXUE1fTkxBX01BTkFHRV9BRERSLAorICBJV1BNX05MQV9NQU5BR0VfTUFQUEVEX0xPQ19BRERSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUk1BTkFHRV9NQVBQSU5HX0VSUiwKKyAgSVdQTV9OTEFfUk1BTkFHRV9NQVBQSU5HX01BWAorfTsKKyNkZWZpbmUgSVdQTV9OTEFfTUFOQUdFX01BUFBJTkdfTUFYIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElXUE1fTkxBX1FVRVJZX01BUFBJTkdfTUFYIDQKKyNkZWZpbmUgSVdQTV9OTEFfTUFQSU5GT19TRU5EX01BWCAzCitlbnVtIHsKKyAgSVdQTV9OTEFfUVVFUllfTUFQUElOR19VTlNQRUMgPSAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUVVFUllfTUFQUElOR19TRVEsCisgIElXUE1fTkxBX1FVRVJZX0xPQ0FMX0FERFIsCisgIElXUE1fTkxBX1FVRVJZX1JFTU9URV9BRERSLAorICBJV1BNX05MQV9SUVVFUllfTUFQUEVEX0xPQ19BRERSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUlFVRVJZX01BUFBFRF9SRU1fQUREUiwKKyAgSVdQTV9OTEFfUlFVRVJZX01BUFBJTkdfRVJSLAorICBJV1BNX05MQV9SUVVFUllfTUFQUElOR19NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIElXUE1fTkxBX01BUElORk9fUkVRX1VOU1BFQyA9IDAsCisgIElXUE1fTkxBX01BUElORk9fVUxJQl9OQU1FLAorICBJV1BNX05MQV9NQVBJTkZPX1VMSUJfVkVSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfTUFQSU5GT19SRVFfTUFYCit9OworZW51bSB7CisgIElXUE1fTkxBX01BUElORk9fVU5TUEVDID0gMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX01BUElORk9fTE9DQUxfQUREUiwKKyAgSVdQTV9OTEFfTUFQSU5GT19NQVBQRURfQUREUiwKKyAgSVdQTV9OTEFfTUFQSU5GT19NQVgKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIElXUE1fTkxBX01BUElORk9fTlVNX1VOU1BFQyA9IDAsCisgIElXUE1fTkxBX01BUElORk9fU0VRLAorICBJV1BNX05MQV9NQVBJTkZPX1NFTkRfTlVNLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfTUFQSU5GT19BQ0tfTlVNLAorICBJV1BNX05MQV9NQVBJTkZPX05VTV9NQVgKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX0VSUl9VTlNQRUMgPSAwLAorICBJV1BNX05MQV9FUlJfU0VRLAorICBJV1BNX05MQV9FUlJfQ09ERSwKKyAgSVdQTV9OTEFfRVJSX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX3VzZXJfY20uaCBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX3VzZXJfY20uaAppbmRleCA3NGU1YTA1Li5mMjQ0OTI2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvcmRtYV91c2VyX2NtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL3JkbWFfdXNlcl9jbS5oCkBAIC0xOSwyODMgKzE5LDI4NSBAQAogI2lmbmRlZiBSRE1BX1VTRVJfQ01fSAogI2RlZmluZSBSRE1BX1VTRVJfQ01fSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jaW5jbHVkZSA8bGludXgvaW42Lmg+CisjaW5jbHVkZSA8bGludXgvc29ja2V0Lmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2luY2x1ZGUgPGxpbnV4L2luNi5oPgogI2luY2x1ZGUgPHJkbWEvaWJfdXNlcl92ZXJicy5oPgogI2luY2x1ZGUgPHJkbWEvaWJfdXNlcl9zYS5oPgogI2RlZmluZSBSRE1BX1VTRVJfQ01fQUJJX1ZFUlNJT04gNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkRNQV9NQVhfUFJJVkFURV9EQVRBIDI1NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFJETUFfVVNFUl9DTV9DTURfQ1JFQVRFX0lELAotIFJETUFfVVNFUl9DTV9DTURfREVTVFJPWV9JRCwKLSBSRE1BX1VTRVJfQ01fQ01EX0JJTkRfSVAsCisgIFJETUFfVVNFUl9DTV9DTURfQ1JFQVRFX0lELAorICBSRE1BX1VTRVJfQ01fQ01EX0RFU1RST1lfSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfVVNFUl9DTV9DTURfUkVTT0xWRV9JUCwKLSBSRE1BX1VTRVJfQ01fQ01EX1JFU09MVkVfUk9VVEUsCi0gUkRNQV9VU0VSX0NNX0NNRF9RVUVSWV9ST1VURSwKLSBSRE1BX1VTRVJfQ01fQ01EX0NPTk5FQ1QsCisgIFJETUFfVVNFUl9DTV9DTURfQklORF9JUCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9SRVNPTFZFX0lQLAorICBSRE1BX1VTRVJfQ01fQ01EX1JFU09MVkVfUk9VVEUsCisgIFJETUFfVVNFUl9DTV9DTURfUVVFUllfUk9VVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfVVNFUl9DTV9DTURfTElTVEVOLAotIFJETUFfVVNFUl9DTV9DTURfQUNDRVBULAotIFJETUFfVVNFUl9DTV9DTURfUkVKRUNULAotIFJETUFfVVNFUl9DTV9DTURfRElTQ09OTkVDVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9DT05ORUNULAorICBSRE1BX1VTRVJfQ01fQ01EX0xJU1RFTiwKKyAgUkRNQV9VU0VSX0NNX0NNRF9BQ0NFUFQsCisgIFJETUFfVVNFUl9DTV9DTURfUkVKRUNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX1VTRVJfQ01fQ01EX0lOSVRfUVBfQVRUUiwKLSBSRE1BX1VTRVJfQ01fQ01EX0dFVF9FVkVOVCwKLSBSRE1BX1VTRVJfQ01fQ01EX0dFVF9PUFRJT04sCi0gUkRNQV9VU0VSX0NNX0NNRF9TRVRfT1BUSU9OLAorICBSRE1BX1VTRVJfQ01fQ01EX0RJU0NPTk5FQ1QsCisgIFJETUFfVVNFUl9DTV9DTURfSU5JVF9RUF9BVFRSLAorICBSRE1BX1VTRVJfQ01fQ01EX0dFVF9FVkVOVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9HRVRfT1BUSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX1VTRVJfQ01fQ01EX05PVElGWSwKLSBSRE1BX1VTRVJfQ01fQ01EX0pPSU5fSVBfTUNBU1QsCi0gUkRNQV9VU0VSX0NNX0NNRF9MRUFWRV9NQ0FTVCwKLSBSRE1BX1VTRVJfQ01fQ01EX01JR1JBVEVfSUQsCisgIFJETUFfVVNFUl9DTV9DTURfU0VUX09QVElPTiwKKyAgUkRNQV9VU0VSX0NNX0NNRF9OT1RJRlksCisgIFJETUFfVVNFUl9DTV9DTURfSk9JTl9JUF9NQ0FTVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9MRUFWRV9NQ0FTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkRNQV9VU0VSX0NNX0NNRF9RVUVSWSwKLSBSRE1BX1VTRVJfQ01fQ01EX0JJTkQsCi0gUkRNQV9VU0VSX0NNX0NNRF9SRVNPTFZFX0FERFIsCi0gUkRNQV9VU0VSX0NNX0NNRF9KT0lOX01DQVNUCisgIFJETUFfVVNFUl9DTV9DTURfTUlHUkFURV9JRCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9RVUVSWSwKKyAgUkRNQV9VU0VSX0NNX0NNRF9CSU5ELAorICBSRE1BX1VTRVJfQ01fQ01EX1JFU09MVkVfQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFJETUFfVVNFUl9DTV9DTURfSk9JTl9NQ0FTVAogfTsKIHN0cnVjdCByZG1hX3VjbV9jbWRfaGRyIHsKLSBfX3UzMiBjbWQ7Ci0gX191MTYgaW47CisgIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3V0OworICBfX3UxNiBpbjsKKyAgX191MTYgb3V0OwogfTsKIHN0cnVjdCByZG1hX3VjbV9jcmVhdGVfaWQgewotIF9fdTY0IHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191MTYgcHM7Ci0gX191OCBxcF90eXBlOwotIF9fdTggcmVzZXJ2ZWRbNV07CisgIF9fdTY0IHVpZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTE2IHBzOworICBfX3U4IHFwX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkWzVdOwogfTsKIHN0cnVjdCByZG1hX3VjbV9jcmVhdGVfaWRfcmVzcCB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX2Rlc3Ryb3lfaWQgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGlkOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fZGVzdHJveV9pZF9yZXNwIHsKLSBfX3UzMiBldmVudHNfcmVwb3J0ZWQ7CisgIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9iaW5kX2lwIHsKLSBfX3U2NCByZXNwb25zZTsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7Ci0gX191MzIgaWQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZDsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fYmluZCB7Ci0gX191MzIgaWQ7Ci0gX191MTYgYWRkcl9zaXplOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmVzZXJ2ZWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgYWRkcjsKKyAgX191MTYgYWRkcl9zaXplOworICBfX3UxNiByZXNlcnZlZDsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgYWRkcjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX3Jlc29sdmVfaXAgeworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IHNyY19hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGRzdF9hZGRyOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2luNiBzcmNfYWRkcjsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGRzdF9hZGRyOwotIF9fdTMyIGlkOwotIF9fdTMyIHRpbWVvdXRfbXM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0aW1lb3V0X21zOwogfTsKIHN0cnVjdCByZG1hX3VjbV9yZXNvbHZlX2FkZHIgewotIF9fdTMyIGlkOwotIF9fdTMyIHRpbWVvdXRfbXM7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzcmNfc2l6ZTsKLSBfX3UxNiBkc3Rfc2l6ZTsKLSBfX3UzMiByZXNlcnZlZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcmNfYWRkcjsKKyAgX191MzIgdGltZW91dF9tczsKKyAgX191MTYgc3JjX3NpemU7CisgIF9fdTE2IGRzdF9zaXplOworICBfX3UzMiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgZHN0X2FkZHI7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNyY19hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBkc3RfYWRkcjsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fcmVzb2x2ZV9yb3V0ZSB7Ci0gX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRpbWVvdXRfbXM7CisgIF9fdTMyIGlkOworICBfX3UzMiB0aW1lb3V0X21zOwogfTsKIGVudW0gewotIFJETUFfVVNFUl9DTV9RVUVSWV9BRERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX1VTRVJfQ01fUVVFUllfUEFUSCwKLSBSRE1BX1VTRVJfQ01fUVVFUllfR0lECisgIFJETUFfVVNFUl9DTV9RVUVSWV9BRERSLAorICBSRE1BX1VTRVJfQ01fUVVFUllfUEFUSCwKKyAgUkRNQV9VU0VSX0NNX1FVRVJZX0dJRAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fcXVlcnkgeworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CisgIF9fdTMyIG9wdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgaWQ7Ci0gX191MzIgb3B0aW9uOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fcXVlcnlfcm91dGVfcmVzcCB7Ci0gX191NjQgbm9kZV9ndWlkOwotIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIGliX3JvdXRlWzJdOwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgc3JjX2FkZHI7CisgIF9fdTY0IG5vZGVfZ3VpZDsKKyAgc3RydWN0IGliX3VzZXJfcGF0aF9yZWMgaWJfcm91dGVbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgZHN0X2FkZHI7Ci0gX191MzIgbnVtX3BhdGhzOwotIF9fdTggcG9ydF9udW07Ci0gX191OCByZXNlcnZlZFszXTsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBzcmNfYWRkcjsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBkc3RfYWRkcjsKKyAgX191MzIgbnVtX3BhdGhzOworICBfX3U4IHBvcnRfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZFszXTsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fcXVlcnlfYWRkcl9yZXNwIHsKLSBfX3U2NCBub2RlX2d1aWQ7Ci0gX191OCBwb3J0X251bTsKKyAgX191NjQgbm9kZV9ndWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkOwotIF9fdTE2IHBrZXk7Ci0gX191MTYgc3JjX3NpemU7Ci0gX191MTYgZHN0X3NpemU7CisgIF9fdTggcG9ydF9udW07CisgIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTE2IHBrZXk7CisgIF9fdTE2IHNyY19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcmNfYWRkcjsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBkc3RfYWRkcjsKKyAgX191MTYgZHN0X3NpemU7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNyY19hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBkc3RfYWRkcjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX3F1ZXJ5X3BhdGhfcmVzcCB7CisgIF9fdTMyIG51bV9wYXRoczsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBpYl9wYXRoX3JlY19kYXRhIHBhdGhfZGF0YVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3BhdGhzOwotIF9fdTMyIHJlc2VydmVkOwotIHN0cnVjdCBpYl9wYXRoX3JlY19kYXRhIHBhdGhfZGF0YVswXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX2Nvbm5fcGFyYW0gewotIF9fdTMyIHFwX251bTsKLSBfX3UzMiBxa2V5OwotIF9fdTggcHJpdmF0ZV9kYXRhW1JETUFfTUFYX1BSSVZBVEVfREFUQV07CisgIF9fdTMyIHFwX251bTsKKyAgX191MzIgcWtleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcml2YXRlX2RhdGFfbGVuOwotIF9fdTggc3JxOwotIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKLSBfX3U4IGluaXRpYXRvcl9kZXB0aDsKKyAgX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKKyAgX191OCBwcml2YXRlX2RhdGFfbGVuOworICBfX3U4IHNycTsKKyAgX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsb3dfY29udHJvbDsKLSBfX3U4IHJldHJ5X2NvdW50OwotIF9fdTggcm5yX3JldHJ5X2NvdW50OwotIF9fdTggdmFsaWQ7CisgIF9fdTggaW5pdGlhdG9yX2RlcHRoOworICBfX3U4IGZsb3dfY29udHJvbDsKKyAgX191OCByZXRyeV9jb3VudDsKKyAgX191OCBybnJfcmV0cnlfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHZhbGlkOwogfTsKIHN0cnVjdCByZG1hX3VjbV91ZF9wYXJhbSB7Ci0gX191MzIgcXBfbnVtOwotIF9fdTMyIHFrZXk7CisgIF9fdTMyIHFwX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGFoX2F0dHI7Ci0gX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKLSBfX3U4IHByaXZhdGVfZGF0YV9sZW47Ci0gX191OCByZXNlcnZlZFs3XTsKKyAgX191MzIgcWtleTsKKyAgc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGFoX2F0dHI7CisgIF9fdTggcHJpdmF0ZV9kYXRhW1JETUFfTUFYX1BSSVZBVEVfREFUQV07CisgIF9fdTggcHJpdmF0ZV9kYXRhX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWRbN107CiB9Owogc3RydWN0IHJkbWFfdWNtX2Nvbm5lY3QgewotIHN0cnVjdCByZG1hX3VjbV9jb25uX3BhcmFtIGNvbm5fcGFyYW07Ci0gX191MzIgaWQ7CisgIHN0cnVjdCByZG1hX3VjbV9jb25uX3BhcmFtIGNvbm5fcGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBpZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IHJkbWFfdWNtX2xpc3RlbiB7Ci0gX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJhY2tsb2c7CisgIF9fdTMyIGlkOworICBfX3UzMiBiYWNrbG9nOwogfTsKIHN0cnVjdCByZG1hX3VjbV9hY2NlcHQgewotIF9fdTY0IHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHJkbWFfdWNtX2Nvbm5fcGFyYW0gY29ubl9wYXJhbTsKLSBfX3UzMiBpZDsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgdWlkOworICBzdHJ1Y3QgcmRtYV91Y21fY29ubl9wYXJhbSBjb25uX3BhcmFtOworICBfX3UzMiBpZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fcmVqZWN0IHsKLSBfX3UzMiBpZDsKLSBfX3U4IHByaXZhdGVfZGF0YV9sZW47Ci0gX191OCByZXNlcnZlZFszXTsKKyAgX191MzIgaWQ7CisgIF9fdTggcHJpdmF0ZV9kYXRhX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKKyAgX191OCByZXNlcnZlZFszXTsKKyAgX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fZGlzY29ubmVjdCB7Ci0gX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZDsKIH07CiBzdHJ1Y3QgcmRtYV91Y21faW5pdF9xcF9hdHRyIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBpZDsKKyAgX191NjQgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX3N0YXRlOworICBfX3UzMiBpZDsKKyAgX191MzIgcXBfc3RhdGU7CiB9Owogc3RydWN0IHJkbWFfdWNtX25vdGlmeSB7Ci0gX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV2ZW50OworICBfX3UzMiBpZDsKKyAgX191MzIgZXZlbnQ7CiB9Owogc3RydWN0IHJkbWFfdWNtX2pvaW5faXBfbWNhc3QgewotIF9fdTY0IHJlc3BvbnNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1aWQ7Ci0gc3RydWN0IHNvY2thZGRyX2luNiBhZGRyOwotIF9fdTMyIGlkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgdWlkOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7CisgIF9fdTMyIGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX2pvaW5fbWNhc3QgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHVpZDsKLSBfX3UzMiBpZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYWRkcl9zaXplOwotIF9fdTE2IHJlc2VydmVkOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGFkZHI7CisgIF9fdTMyIGlkOworICBfX3UxNiBhZGRyX3NpemU7CisgIF9fdTE2IHJlc2VydmVkOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBhZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX2dldF9ldmVudCB7Ci0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fZXZlbnRfcmVzcCB7CisgIF9fdTY0IHVpZDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIGV2ZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1aWQ7Ci0gX191MzIgaWQ7Ci0gX191MzIgZXZlbnQ7Ci0gX191MzIgc3RhdHVzOworICBfX3UzMiBzdGF0dXM7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgcmRtYV91Y21fY29ubl9wYXJhbSBjb25uOworICAgIHN0cnVjdCByZG1hX3VjbV91ZF9wYXJhbSB1ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCByZG1hX3VjbV9jb25uX3BhcmFtIGNvbm47Ci0gc3RydWN0IHJkbWFfdWNtX3VkX3BhcmFtIHVkOwotIH0gcGFyYW07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9IHBhcmFtOwogfTsKIGVudW0gewotIFJETUFfT1BUSU9OX0lEID0gMCwKLSBSRE1BX09QVElPTl9JQiA9IDEKKyAgUkRNQV9PUFRJT05fSUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUkRNQV9PUFRJT05fSUIgPSAxCiB9OwogZW51bSB7Ci0gUkRNQV9PUFRJT05fSURfVE9TID0gMCwKLSBSRE1BX09QVElPTl9JRF9SRVVTRUFERFIgPSAxLAorICBSRE1BX09QVElPTl9JRF9UT1MgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX09QVElPTl9JRF9BRk9OTFkgPSAyLAotIFJETUFfT1BUSU9OX0lCX1BBVEggPSAxCisgIFJETUFfT1BUSU9OX0lEX1JFVVNFQUREUiA9IDEsCisgIFJETUFfT1BUSU9OX0lEX0FGT05MWSA9IDIsCisgIFJETUFfT1BUSU9OX0lCX1BBVEggPSAxCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9zZXRfb3B0aW9uIHsKKyAgX191NjQgb3B0dmFsOworICBfX3UzMiBpZDsKKyAgX191MzIgbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9wdHZhbDsKLSBfX3UzMiBpZDsKLSBfX3UzMiBsZXZlbDsKLSBfX3UzMiBvcHRuYW1lOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvcHRsZW47CisgIF9fdTMyIG9wdG5hbWU7CisgIF9fdTMyIG9wdGxlbjsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fbWlncmF0ZV9pZCB7Ci0gX191NjQgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIGZkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CisgIF9fdTMyIGZkOwogfTsKLXN0cnVjdCByZG1hX3VjbV9taWdyYXRlX3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBldmVudHNfcmVwb3J0ZWQ7CitzdHJ1Y3QgcmRtYV91Y21fbWlncmF0ZV9yZXNwIHsKKyAgX191MzIgZXZlbnRzX3JlcG9ydGVkOwogfTsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19lbHMuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19lbHMuaAppbmRleCA0ZTJhOTIwLi5jMWY5ZTk0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZWxzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2Vscy5oCkBAIC0yMSwxNTIgKzIxLDE1MyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIGZjX2Vsc19jbWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfTFNfUkpUID0gMHgwMSwKLSBFTFNfTFNfQUNDID0gMHgwMiwKLSBFTFNfUExPR0kgPSAweDAzLAotIEVMU19GTE9HSSA9IDB4MDQsCisgIEVMU19MU19SSlQgPSAweDAxLAorICBFTFNfTFNfQUNDID0gMHgwMiwKKyAgRUxTX1BMT0dJID0gMHgwMywKKyAgRUxTX0ZMT0dJID0gMHgwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0xPR08gPSAweDA1LAotIEVMU19BQlRYID0gMHgwNiwKLSBFTFNfUkNTID0gMHgwNywKLSBFTFNfUkVTID0gMHgwOCwKKyAgRUxTX0xPR08gPSAweDA1LAorICBFTFNfQUJUWCA9IDB4MDYsCisgIEVMU19SQ1MgPSAweDA3LAorICBFTFNfUkVTID0gMHgwOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JTUyA9IDB4MDksCi0gRUxTX1JTSSA9IDB4MGEsCi0gRUxTX0VTVFMgPSAweDBiLAotIEVMU19FU1RDID0gMHgwYywKKyAgRUxTX1JTUyA9IDB4MDksCisgIEVMU19SU0kgPSAweDBhLAorICBFTFNfRVNUUyA9IDB4MGIsCisgIEVMU19FU1RDID0gMHgwYywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0FEVkMgPSAweDBkLAotIEVMU19SVFYgPSAweDBlLAotIEVMU19STFMgPSAweDBmLAotIEVMU19FQ0hPID0gMHgxMCwKKyAgRUxTX0FEVkMgPSAweDBkLAorICBFTFNfUlRWID0gMHgwZSwKKyAgRUxTX1JMUyA9IDB4MGYsCisgIEVMU19FQ0hPID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1RFU1QgPSAweDExLAotIEVMU19SUlEgPSAweDEyLAotIEVMU19SRUMgPSAweDEzLAotIEVMU19TUlIgPSAweDE0LAorICBFTFNfVEVTVCA9IDB4MTEsCisgIEVMU19SUlEgPSAweDEyLAorICBFTFNfUkVDID0gMHgxMywKKyAgRUxTX1NSUiA9IDB4MTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19QUkxJID0gMHgyMCwKLSBFTFNfUFJMTyA9IDB4MjEsCi0gRUxTX1NDTiA9IDB4MjIsCi0gRUxTX1RQTFMgPSAweDIzLAorICBFTFNfUFJMSSA9IDB4MjAsCisgIEVMU19QUkxPID0gMHgyMSwKKyAgRUxTX1NDTiA9IDB4MjIsCisgIEVMU19UUExTID0gMHgyMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1RQUkxPID0gMHgyNCwKLSBFTFNfTENMTSA9IDB4MjUsCi0gRUxTX0dBSUQgPSAweDMwLAotIEVMU19GQUNUID0gMHgzMSwKKyAgRUxTX1RQUkxPID0gMHgyNCwKKyAgRUxTX0xDTE0gPSAweDI1LAorICBFTFNfR0FJRCA9IDB4MzAsCisgIEVMU19GQUNUID0gMHgzMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0ZEQUNEVCA9IDB4MzIsCi0gRUxTX05BQ1QgPSAweDMzLAotIEVMU19OREFDVCA9IDB4MzQsCi0gRUxTX1FPU1IgPSAweDQwLAorICBFTFNfRkRBQ0RUID0gMHgzMiwKKyAgRUxTX05BQ1QgPSAweDMzLAorICBFTFNfTkRBQ1QgPSAweDM0LAorICBFTFNfUU9TUiA9IDB4NDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19SVkNTID0gMHg0MSwKLSBFTFNfUERJU0MgPSAweDUwLAotIEVMU19GRElTQyA9IDB4NTEsCi0gRUxTX0FESVNDID0gMHg1MiwKKyAgRUxTX1JWQ1MgPSAweDQxLAorICBFTFNfUERJU0MgPSAweDUwLAorICBFTFNfRkRJU0MgPSAweDUxLAorICBFTFNfQURJU0MgPSAweDUyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5DID0gMHg1MywKLSBFTFNfRkFSUF9SRVEgPSAweDU0LAotIEVMU19GQVJQX1JFUEwgPSAweDU1LAotIEVMU19SUFMgPSAweDU2LAorICBFTFNfUk5DID0gMHg1MywKKyAgRUxTX0ZBUlBfUkVRID0gMHg1NCwKKyAgRUxTX0ZBUlBfUkVQTCA9IDB4NTUsCisgIEVMU19SUFMgPSAweDU2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUlBMID0gMHg1NywKLSBFTFNfUlBCQyA9IDB4NTgsCi0gRUxTX0ZBTiA9IDB4NjAsCi0gRUxTX1JTQ04gPSAweDYxLAorICBFTFNfUlBMID0gMHg1NywKKyAgRUxTX1JQQkMgPSAweDU4LAorICBFTFNfRkFOID0gMHg2MCwKKyAgRUxTX1JTQ04gPSAweDYxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfU0NSID0gMHg2MiwKLSBFTFNfUk5GVCA9IDB4NjMsCi0gRUxTX0NTUiA9IDB4NjgsCi0gRUxTX0NTVSA9IDB4NjksCisgIEVMU19TQ1IgPSAweDYyLAorICBFTFNfUk5GVCA9IDB4NjMsCisgIEVMU19DU1IgPSAweDY4LAorICBFTFNfQ1NVID0gMHg2OSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0xJTklUID0gMHg3MCwKLSBFTFNfTFNUUyA9IDB4NzIsCi0gRUxTX1JOSUQgPSAweDc4LAotIEVMU19STElSID0gMHg3OSwKKyAgRUxTX0xJTklUID0gMHg3MCwKKyAgRUxTX0xTVFMgPSAweDcyLAorICBFTFNfUk5JRCA9IDB4NzgsCisgIEVMU19STElSID0gMHg3OSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0xJUlIgPSAweDdhLAotIEVMU19TUkwgPSAweDdiLAotIEVMU19TQlJQID0gMHg3YywKLSBFTFNfUlBTQyA9IDB4N2QsCisgIEVMU19MSVJSID0gMHg3YSwKKyAgRUxTX1NSTCA9IDB4N2IsCisgIEVMU19TQlJQID0gMHg3YywKKyAgRUxTX1JQU0MgPSAweDdkLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUVNBID0gMHg3ZSwKLSBFTFNfRVZGUCA9IDB4N2YsCi0gRUxTX0xLQSA9IDB4ODAsCi0gRUxTX0FVVEhfRUxTID0gMHg5MCwKKyAgRUxTX1FTQSA9IDB4N2UsCisgIEVMU19FVkZQID0gMHg3ZiwKKyAgRUxTX0xLQSA9IDB4ODAsCisgIEVMU19BVVRIX0VMUyA9IDB4OTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgRkNfRUxTX0NNRFNfSU5JVCB7ICAgW0VMU19MU19SSlRdID0gIkxTX1JKVCIsICAgW0VMU19MU19BQ0NdID0gIkxTX0FDQyIsICAgW0VMU19QTE9HSV0gPSAiUExPR0kiLCAgIFtFTFNfRkxPR0ldID0gIkZMT0dJIiwgICBbRUxTX0xPR09dID0gIkxPR08iLCAgIFtFTFNfQUJUWF0gPSAiQUJUWCIsICAgW0VMU19SQ1NdID0gIlJDUyIsICAgW0VMU19SRVNdID0gIlJFUyIsICAgW0VMU19SU1NdID0gIlJTUyIsICAgW0VMU19SU0ldID0gIlJTSSIsICAgW0VMU19FU1RTXSA9ICJFU1RTIiwgICBbRUxTX0VTVENdID0gIkVTVEMiLCAgIFtFTFNfQURWQ10gPSAiQURWQyIsICAgW0VMU19SVFZdID0gIlJUViIsICAgW0VMU19STFNdID0gIlJMUyIsICAgW0VMU19FQ0hPXSA9ICJFQ0hPIiwgICBbRUxTX1RFU1RdID0gIlRFU1QiLCAgIFtFTFNfUlJRXSA9ICJSUlEiLCAgIFtFTFNfUkVDXSA9ICJSRUMiLCAgIFtFTFNfU1JSXSA9ICJTUlIiLCAgIFtFTFNfUFJMSV0gPSAiUFJMSSIsICAgW0VMU19QUkxPXSA9ICJQUkxPIiwgICBbRUxTX1NDTl0gPSAiU0NOIiwgICBbRUxTX1RQTFNdID0gIlRQTFMiLCAgIFtFTFNfVFBSTE9dID0gIlRQUkxPIiwgICBbRUxTX0xDTE1dID0gIkxDTE0iLCAgIFtFTFNfR0FJRF0gPSAiR0FJRCIsICAgW0VMU19GQUNUXSA9ICJGQUNUIiwgICBbRUxTX0ZEQUNEVF0gPSAiRkRBQ0RUIiwgICBbRUxTX05BQ1RdID0gIk5BQ1QiLCAgIFtFTFNfTkRBQ1RdID0gIk5EQUNUIiwgICBbRUxTX1FPU1JdID0gIlFPU1IiLCAgIFtFTFNfUlZDU10gPSAiUlZDUyIsICAgW0VMU19QRElTQ10gPSAiUERJU0MiLCAgIFtFTFNfRkRJU0NdID0gIkZESVNDIiwgICBbRUxTX0FESVNDXSA9ICJBRElTQyIsICAgW0VMU19STkNdID0gIlJOQyIsICAgW0VMU19GQVJQX1JFUV0gPSAiRkFSUF9SRVEiLCAgIFtFTFNfRkFSUF9SRVBMXSA9ICJGQVJQX1JFUEwiLCAgIFtFTFNfUlBTXSA9ICJSUFMiLCAgIFtFTFNfUlBMXSA9ICJSUEwiLCAgIFtFTFNfUlBCQ10gPSAiUlBCQyIsICAgW0VMU19GQU5dID0gIkZBTiIsICAgW0VMU19SU0NOXSA9ICJSU0NOIiwgICBbRUxTX1NDUl0gPSAiU0NSIiwgICBbRUxTX1JORlRdID0gIlJORlQiLCAgIFtFTFNfQ1NSXSA9ICJDU1IiLCAgIFtFTFNfQ1NVXSA9ICJDU1UiLCAgIFtFTFNfTElOSVRdID0gIkxJTklUIiwgICBbRUxTX0xTVFNdID0gIkxTVFMiLCAgIFtFTFNfUk5JRF0gPSAiUk5JRCIsICAgW0VMU19STElSXSA9ICJSTElSIiwgICBbRUxTX0xJUlJdID0gIkxJUlIiLCAgIFtFTFNfU1JMXSA9ICJTUkwiLCAgIFtFTFNfU0JSUF0gPSAiU0JSUCIsICAgW0VMU19SUFNDXSA9ICJSUFNDIiwgICBbRUxTX1FTQV0gPSAiUVNBIiwgICBbRUxTX0VWRlBdID0gIkVWRlAiLCAgIFtFTFNfTEtBXSA9ICJMS0EiLCAgIFtFTFNfQVVUSF9FTFNdID0gIkFVVEhfRUxTIiwgIH0KKyNkZWZpbmUgRkNfRUxTX0NNRFNfSU5JVCB7W0VMU19MU19SSlRdID0gIkxTX1JKVCIsW0VMU19MU19BQ0NdID0gIkxTX0FDQyIsW0VMU19QTE9HSV0gPSAiUExPR0kiLFtFTFNfRkxPR0ldID0gIkZMT0dJIixbRUxTX0xPR09dID0gIkxPR08iLFtFTFNfQUJUWF0gPSAiQUJUWCIsW0VMU19SQ1NdID0gIlJDUyIsW0VMU19SRVNdID0gIlJFUyIsW0VMU19SU1NdID0gIlJTUyIsW0VMU19SU0ldID0gIlJTSSIsW0VMU19FU1RTXSA9ICJFU1RTIixbRUxTX0VTVENdID0gIkVTVEMiLFtFTFNfQURWQ10gPSAiQURWQyIsW0VMU19SVFZdID0gIlJUViIsW0VMU19STFNdID0gIlJMUyIsW0VMU19FQ0hPXSA9ICJFQ0hPIixbRUxTX1RFU1RdID0gIlRFU1QiLFtFTFNfUlJRXSA9ICJSUlEiLFtFTFNfUkVDXSA9ICJSRUMiLFtFTFNfU1JSXSA9ICJTUlIiLFtFTFNfUFJMSV0gPSAiUFJMSSIsW0VMU19QUkxPXSA9ICJQUkxPIixbRUxTX1NDTl0gPSAiU0NOIixbRUxTX1RQTFNdID0gIlRQTFMiLFtFTFNfVFBSTE9dID0gIlRQUkxPIixbRUxTX0xDTE1dID0gIkxDTE0iLFtFTFNfR0FJRF0gPSAiR0FJRCIsW0VMU19GQUNUXSA9ICJGQUNUIixbRUxTX0ZEQUNEVF0gPSAiRkRBQ0RUIixbRUxTX05BQ1RdID0gIk5BQ1QiLFtFTFNfTkRBQ1RdID0gIk5EQUNUIixbRUxTX1FPU1JdID0gIlFPU1IiLFtFTFNfUlZDU10gPSAiUlZDUyIsW0VMU19QRElTQ10gPSAiUERJU0MiLFtFTFNfRkRJU0NdID0gIkZESVNDIixbRUxTX0FESVNDXSA9ICJBRElTQyIsW0VMU19STkNdID0gIlJOQyIsW0VMU19GQVJQX1JFUV0gPSAiRkFSUF9SRVEiLFtFTFNfRkFSUF9SRVBMXSA9ICJGQVJQX1JFUEwiLFtFTFNfUlBTXSA9ICJSUFMiLFtFTFNfUlBMXSA9ICJSUEwiLFtFTFNfUlBCQ10gPSAiUlBCQyIsW0VMU19GQU5dID0gIkZBTiIsW0VMU19SU0NOXSA9ICJSU0NOIixbRUxTX1NDUl0gPSAiU0NSIixbRUxTX1JORlRdID0gIlJORlQiLFtFTFNfQ1NSXSA9ICJDU1IiLFtFTFNfQ1NVXSA9ICJDU1UiLFtFTFNfTElOSVRdID0gIkxJTklUIixbRUxTX0xTVFNdID0gIkxTVFMiLFtFTFNfUk5JRF0gPSAiUk5JRCIsW0VMU19STElSXSA9ICJSTElSIixbRUxTX0xJUlJdID0gIkxJUlIiLFtFTFNfU1JMXSA9ICJTUkwiLFtFTFNfU0JSUF0gPSAiU0JSUCIsW0VMU19SUFNDXSA9ICJSUFNDIixbRUxTX1FTQV0gPSAiUVNBIixbRUxTX0VWRlBdID0gIkVWRlAiLFtFTFNfTEtBXSA9ICJMS0EiLFtFTFNfQVVUSF9FTFNdID0gIkFVVEhfRUxTIiwgXAorfQogc3RydWN0IGZjX2Vsc19sc19hY2MgewotIF9fdTggbGFfY21kOworICBfX3U4IGxhX2NtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsYV9yZXN2WzNdOworICBfX3U4IGxhX3Jlc3ZbM107CiB9Owogc3RydWN0IGZjX2Vsc19sc19yanQgewotIF9fdTggZXJfY21kOworICBfX3U4IGVyX2NtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlcl9yZXN2WzRdOwotIF9fdTggZXJfcmVhc29uOwotIF9fdTggZXJfZXhwbGFuOwotIF9fdTggZXJfdmVuZG9yOworICBfX3U4IGVyX3Jlc3ZbNF07CisgIF9fdTggZXJfcmVhc29uOworICBfX3U4IGVyX2V4cGxhbjsKKyAgX191OCBlcl92ZW5kb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX3JqdF9yZWFzb24gewotIEVMU19SSlRfTk9ORSA9IDAsCi0gRUxTX1JKVF9JTlZBTCA9IDB4MDEsCisgIEVMU19SSlRfTk9ORSA9IDAsCisgIEVMU19SSlRfSU5WQUwgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUkpUX0xPR0lDID0gMHgwMywKLSBFTFNfUkpUX0JVU1kgPSAweDA1LAotIEVMU19SSlRfUFJPVCA9IDB4MDcsCi0gRUxTX1JKVF9VTkFCID0gMHgwOSwKKyAgRUxTX1JKVF9MT0dJQyA9IDB4MDMsCisgIEVMU19SSlRfQlVTWSA9IDB4MDUsCisgIEVMU19SSlRfUFJPVCA9IDB4MDcsCisgIEVMU19SSlRfVU5BQiA9IDB4MDksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19SSlRfVU5TVVAgPSAweDBiLAotIEVMU19SSlRfSU5QUk9HID0gMHgwZSwKLSBFTFNfUkpUX0ZJUCA9IDB4MjAsCi0gRUxTX1JKVF9WRU5ET1IgPSAweGZmLAorICBFTFNfUkpUX1VOU1VQID0gMHgwYiwKKyAgRUxTX1JKVF9JTlBST0cgPSAweDBlLAorICBFTFNfUkpUX0ZJUCA9IDB4MjAsCisgIEVMU19SSlRfVkVORE9SID0gMHhmZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBmY19lbHNfcmp0X2V4cGxhbiB7Ci0gRUxTX0VYUExfTk9ORSA9IDB4MDAsCi0gRUxTX0VYUExfU1BQX09QVF9FUlIgPSAweDAxLAorICBFTFNfRVhQTF9OT05FID0gMHgwMCwKKyAgRUxTX0VYUExfU1BQX09QVF9FUlIgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfRVhQTF9TUFBfSUNUTF9FUlIgPSAweDAzLAotIEVMU19FWFBMX0FIID0gMHgxMSwKLSBFTFNfRVhQTF9BSF9SRVEgPSAweDEzLAotIEVMU19FWFBMX1NJRCA9IDB4MTUsCisgIEVMU19FWFBMX1NQUF9JQ1RMX0VSUiA9IDB4MDMsCisgIEVMU19FWFBMX0FIID0gMHgxMSwKKyAgRUxTX0VYUExfQUhfUkVRID0gMHgxMywKKyAgRUxTX0VYUExfU0lEID0gMHgxNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0VYUExfT1hJRF9SWElEID0gMHgxNywKLSBFTFNfRVhQTF9JTlBST0cgPSAweDE5LAotIEVMU19FWFBMX1BMT0dJX1JFUUQgPSAweDFlLAotIEVMU19FWFBMX0lOU1VGX1JFUyA9IDB4MjksCisgIEVMU19FWFBMX09YSURfUlhJRCA9IDB4MTcsCisgIEVMU19FWFBMX0lOUFJPRyA9IDB4MTksCisgIEVMU19FWFBMX1BMT0dJX1JFUUQgPSAweDFlLAorICBFTFNfRVhQTF9JTlNVRl9SRVMgPSAweDI5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfRVhQTF9VTkFCX0RBVEEgPSAweDJhLAotIEVMU19FWFBMX1VOU1VQUiA9IDB4MmMsCi0gRUxTX0VYUExfSU5WX0xFTiA9IDB4MmQsCi0gRUxTX0VYUExfTk9UX05FSUdIQk9SID0gMHg2MiwKKyAgRUxTX0VYUExfVU5BQl9EQVRBID0gMHgyYSwKKyAgRUxTX0VYUExfVU5TVVBSID0gMHgyYywKKyAgRUxTX0VYUExfSU5WX0xFTiA9IDB4MmQsCisgIEVMU19FWFBMX05PVF9ORUlHSEJPUiA9IDB4NjIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19lbHNfY3NwIHsKLSBfX3U4IHNwX2hpX3ZlcjsKLSBfX3U4IHNwX2xvX3ZlcjsKKyAgX191OCBzcF9oaV92ZXI7CisgIF9fdTggc3BfbG9fdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgc3BfYmJfY3JlZDsKLSBfX2JlMTYgc3BfZmVhdHVyZXM7Ci0gX19iZTE2IHNwX2JiX2RhdGE7Ci0gdW5pb24geworICBfX2JlMTYgc3BfYmJfY3JlZDsKKyAgX19iZTE2IHNwX2ZlYXR1cmVzOworICBfX2JlMTYgc3BfYmJfZGF0YTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fYmUxNiBfc3BfdG90X3NlcTsKLSBfX2JlMTYgX3NwX3JlbF9vZmY7Ci0gfSBzcF9wbG9naTsKKyAgICBzdHJ1Y3QgeworICAgICAgX19iZTE2IF9zcF90b3Rfc2VxOworICAgICAgX19iZTE2IF9zcF9yZWxfb2ZmOworICAgIH0gc3BfcGxvZ2k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX19iZTMyIF9zcF9yX2FfdG92OwotIH0gc3BfZmxvZ2lfYWNjOwotIH0gc3BfdTsKKyAgICBzdHJ1Y3QgeworICAgICAgX19iZTMyIF9zcF9yX2FfdG92OworICAgIH0gc3BfZmxvZ2lfYWNjOworICB9IHNwX3U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzcF9lX2RfdG92OworICBfX2JlMzIgc3BfZV9kX3RvdjsKIH07CiAjZGVmaW5lIHNwX3RvdF9zZXEgc3BfdS5zcF9wbG9naS5fc3BfdG90X3NlcQogI2RlZmluZSBzcF9yZWxfb2ZmIHNwX3Uuc3BfcGxvZ2kuX3NwX3JlbF9vZmYKQEAgLTIwMSwxNyArMjAyLDE3IEBACiAjZGVmaW5lIEZDX1NQX0ZUX1BBWUwgMHgwMDAxCiBzdHJ1Y3QgZmNfZWxzX2Nzc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgY3BfY2xhc3M7Ci0gX19iZTE2IGNwX2luaXQ7Ci0gX19iZTE2IGNwX3JlY2lwOwotIF9fYmUxNiBjcF9yZGZzOworICBfX2JlMTYgY3BfY2xhc3M7CisgIF9fYmUxNiBjcF9pbml0OworICBfX2JlMTYgY3BfcmVjaXA7CisgIF9fYmUxNiBjcF9yZGZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgY3BfY29uX3NlcTsKLSBfX2JlMTYgY3BfZWVfY3JlZDsKLSBfX3U4IGNwX3Jlc3YxOwotIF9fdTggY3Bfb3Blbl9zZXE7CisgIF9fYmUxNiBjcF9jb25fc2VxOworICBfX2JlMTYgY3BfZWVfY3JlZDsKKyAgX191OCBjcF9yZXN2MTsKKyAgX191OCBjcF9vcGVuX3NlcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfY3BfcmVzdjJbMl07CisgIF9fdTggX2NwX3Jlc3YyWzJdOwogfTsKICNkZWZpbmUgRkNfQ1BDX1ZBTElEIDB4ODAwMAogI2RlZmluZSBGQ19DUENfSU1JWCAweDQwMDAKQEAgLTIyMywyNiArMjI0LDI2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQ19DUFJfQ1NZTiAweDAwMDgKIHN0cnVjdCBmY19lbHNfZmxvZ2kgewotIF9fdTggZmxfY21kOwotIF9fdTggX2ZsX3Jlc3ZkWzNdOworICBfX3U4IGZsX2NtZDsKKyAgX191OCBfZmxfcmVzdmRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmY19lbHNfY3NwIGZsX2NzcDsKLSBfX2JlNjQgZmxfd3dwbjsKLSBfX2JlNjQgZmxfd3dubjsKLSBzdHJ1Y3QgZmNfZWxzX2Nzc3AgZmxfY3NzcFs0XTsKKyAgc3RydWN0IGZjX2Vsc19jc3AgZmxfY3NwOworICBfX2JlNjQgZmxfd3dwbjsKKyAgX19iZTY0IGZsX3d3bm47CisgIHN0cnVjdCBmY19lbHNfY3NzcCBmbF9jc3NwWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsX3ZlbmRbMTZdOworICBfX3U4IGZsX3ZlbmRbMTZdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiBzdHJ1Y3QgZmNfZWxzX3NwcCB7Ci0gX191OCBzcHBfdHlwZTsKKyAgX191OCBzcHBfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcHBfdHlwZV9leHQ7Ci0gX191OCBzcHBfZmxhZ3M7Ci0gX191OCBfc3BwX3Jlc3ZkOwotIF9fYmUzMiBzcHBfb3JpZ19wYTsKKyAgX191OCBzcHBfdHlwZV9leHQ7CisgIF9fdTggc3BwX2ZsYWdzOworICBfX3U4IF9zcHBfcmVzdmQ7CisgIF9fYmUzMiBzcHBfb3JpZ19wYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNwcF9yZXNwX3BhOwotIF9fYmUzMiBzcHBfcGFyYW1zOworICBfX2JlMzIgc3BwX3Jlc3BfcGE7CisgIF9fYmUzMiBzcHBfcGFyYW1zOwogfTsKICNkZWZpbmUgRkNfU1BQX09QQV9WQUwgMHg4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTI1MSwxMjUgKzI1MiwxMjUgQEAKICNkZWZpbmUgRkNfU1BQX1JFU1BfTUFTSyAweDBmCiBlbnVtIGZjX2Vsc19zcHBfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1NQUF9SRVNQX0FDSyA9IDEsCi0gRkNfU1BQX1JFU1BfUkVTID0gMiwKLSBGQ19TUFBfUkVTUF9JTklUID0gMywKLSBGQ19TUFBfUkVTUF9OT19QQSA9IDQsCisgIEZDX1NQUF9SRVNQX0FDSyA9IDEsCisgIEZDX1NQUF9SRVNQX1JFUyA9IDIsCisgIEZDX1NQUF9SRVNQX0lOSVQgPSAzLAorICBGQ19TUFBfUkVTUF9OT19QQSA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1NQUF9SRVNQX0NPTkYgPSA1LAotIEZDX1NQUF9SRVNQX0NPTkQgPSA2LAotIEZDX1NQUF9SRVNQX01VTFQgPSA3LAotIEZDX1NQUF9SRVNQX0lOVkwgPSA4LAorICBGQ19TUFBfUkVTUF9DT05GID0gNSwKKyAgRkNfU1BQX1JFU1BfQ09ORCA9IDYsCisgIEZDX1NQUF9SRVNQX01VTFQgPSA3LAorICBGQ19TUFBfUkVTUF9JTlZMID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19ycnEgewotIF9fdTggcnJxX2NtZDsKLSBfX3U4IHJycV96ZXJvWzNdOworICBfX3U4IHJycV9jbWQ7CisgIF9fdTggcnJxX3plcm9bM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnJxX3Jlc3ZkOwotIF9fdTggcnJxX3NfaWRbM107Ci0gX19iZTE2IHJycV9veF9pZDsKLSBfX2JlMTYgcnJxX3J4X2lkOworICBfX3U4IHJycV9yZXN2ZDsKKyAgX191OCBycnFfc19pZFszXTsKKyAgX19iZTE2IHJycV9veF9pZDsKKyAgX19iZTE2IHJycV9yeF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19yZWMgewotIF9fdTggcmVjX2NtZDsKLSBfX3U4IHJlY196ZXJvWzNdOworICBfX3U4IHJlY19jbWQ7CisgIF9fdTggcmVjX3plcm9bM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVjX3Jlc3ZkOwotIF9fdTggcmVjX3NfaWRbM107Ci0gX19iZTE2IHJlY19veF9pZDsKLSBfX2JlMTYgcmVjX3J4X2lkOworICBfX3U4IHJlY19yZXN2ZDsKKyAgX191OCByZWNfc19pZFszXTsKKyAgX19iZTE2IHJlY19veF9pZDsKKyAgX19iZTE2IHJlY19yeF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19yZWNfYWNjIHsKLSBfX3U4IHJlY2FfY21kOwotIF9fdTggcmVjYV96ZXJvWzNdOworICBfX3U4IHJlY2FfY21kOworICBfX3U4IHJlY2FfemVyb1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHJlY2Ffb3hfaWQ7Ci0gX19iZTE2IHJlY2FfcnhfaWQ7Ci0gX191OCByZWNhX3Jlc3ZkMTsKLSBfX3U4IHJlY2Ffb2ZpZFszXTsKKyAgX19iZTE2IHJlY2Ffb3hfaWQ7CisgIF9fYmUxNiByZWNhX3J4X2lkOworICBfX3U4IHJlY2FfcmVzdmQxOworICBfX3U4IHJlY2Ffb2ZpZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZWNhX3Jlc3ZkMjsKLSBfX3U4IHJlY2FfcmZpZFszXTsKLSBfX2JlMzIgcmVjYV9mYzR2YWx1ZTsKLSBfX2JlMzIgcmVjYV9lX3N0YXQ7CisgIF9fdTggcmVjYV9yZXN2ZDI7CisgIF9fdTggcmVjYV9yZmlkWzNdOworICBfX2JlMzIgcmVjYV9mYzR2YWx1ZTsKKyAgX19iZTMyIHJlY2FfZV9zdGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3BybGkgewotIF9fdTggcHJsaV9jbWQ7Ci0gX191OCBwcmxpX3NwcF9sZW47CisgIF9fdTggcHJsaV9jbWQ7CisgIF9fdTggcHJsaV9zcHBfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgcHJsaV9sZW47CisgIF9fYmUxNiBwcmxpX2xlbjsKIH07CiBzdHJ1Y3QgZmNfZWxzX3BybG8gewotIF9fdTggcHJsb19jbWQ7CisgIF9fdTggcHJsb19jbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJsb19vYnM7Ci0gX19iZTE2IHBybG9fbGVuOworICBfX3U4IHBybG9fb2JzOworICBfX2JlMTYgcHJsb19sZW47CiB9Owogc3RydWN0IGZjX2Vsc19hZGlzYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWRpc2NfY21kOwotIF9fdTggYWRpc2NfcmVzdlszXTsKLSBfX3U4IGFkaXNjX3Jlc3YxOwotIF9fdTggYWRpc2NfaGFyZF9hZGRyWzNdOworICBfX3U4IGFkaXNjX2NtZDsKKyAgX191OCBhZGlzY19yZXN2WzNdOworICBfX3U4IGFkaXNjX3Jlc3YxOworICBfX3U4IGFkaXNjX2hhcmRfYWRkclszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IGFkaXNjX3d3cG47Ci0gX19iZTY0IGFkaXNjX3d3bm47Ci0gX191OCBhZGlzY19yZXN2MjsKLSBfX3U4IGFkaXNjX3BvcnRfaWRbM107CisgIF9fYmU2NCBhZGlzY193d3BuOworICBfX2JlNjQgYWRpc2Nfd3dubjsKKyAgX191OCBhZGlzY19yZXN2MjsKKyAgX191OCBhZGlzY19wb3J0X2lkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IGZjX2Vsc19sb2dvIHsKLSBfX3U4IGZsX2NtZDsKLSBfX3U4IGZsX3plcm9bM107CisgIF9fdTggZmxfY21kOworICBfX3U4IGZsX3plcm9bM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxfcmVzdmQ7Ci0gX191OCBmbF9uX3BvcnRfaWRbM107Ci0gX19iZTY0IGZsX25fcG9ydF93d247CisgIF9fdTggZmxfcmVzdmQ7CisgIF9fdTggZmxfbl9wb3J0X2lkWzNdOworICBfX2JlNjQgZmxfbl9wb3J0X3d3bjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjX2Vsc19ydHYgewotIF9fdTggcnR2X2NtZDsKLSBfX3U4IHJ0dl96ZXJvWzNdOworICBfX3U4IHJ0dl9jbWQ7CisgIF9fdTggcnR2X3plcm9bM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19lbHNfcnR2X2FjYyB7Ci0gX191OCBydHZfY21kOwotIF9fdTggcnR2X3plcm9bM107Ci0gX19iZTMyIHJ0dl9yX2FfdG92OworICBfX3U4IHJ0dl9jbWQ7CisgIF9fdTggcnR2X3plcm9bM107CisgIF9fYmUzMiBydHZfcl9hX3RvdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHJ0dl9lX2RfdG92OwotIF9fYmUzMiBydHZfdG9xOworICBfX2JlMzIgcnR2X2VfZF90b3Y7CisgIF9fYmUzMiBydHZfdG9xOwogfTsKICNkZWZpbmUgRkNfRUxTX1JUVl9FRFJFUyAoMSA8PCAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX0VMU19SVFZfUlRUT1YgKDEgPDwgMTkpCiBzdHJ1Y3QgZmNfZWxzX3NjciB7Ci0gX191OCBzY3JfY21kOwotIF9fdTggc2NyX3Jlc3ZbNl07CisgIF9fdTggc2NyX2NtZDsKKyAgX191OCBzY3JfcmVzdls2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzY3JfcmVnX2Z1bmM7CisgIF9fdTggc2NyX3JlZ19mdW5jOwogfTsKIGVudW0gZmNfZWxzX3Njcl9mdW5jIHsKLSBFTFNfU0NSRl9GQUIgPSAxLAorICBFTFNfU0NSRl9GQUIgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfU0NSRl9OUE9SVCA9IDIsCi0gRUxTX1NDUkZfRlVMTCA9IDMsCi0gRUxTX1NDUkZfQ0xFQVIgPSAyNTUsCisgIEVMU19TQ1JGX05QT1JUID0gMiwKKyAgRUxTX1NDUkZfRlVMTCA9IDMsCisgIEVMU19TQ1JGX0NMRUFSID0gMjU1LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfZWxzX3JzY24gewotIF9fdTggcnNjbl9jbWQ7Ci0gX191OCByc2NuX3BhZ2VfbGVuOwotIF9fYmUxNiByc2NuX3BsZW47CisgIF9fdTggcnNjbl9jbWQ7CisgIF9fdTggcnNjbl9wYWdlX2xlbjsKKyAgX19iZTE2IHJzY25fcGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19yc2NuX3BhZ2UgewotIF9fdTggcnNjbl9wYWdlX2ZsYWdzOwotIF9fdTggcnNjbl9maWRbM107CisgIF9fdTggcnNjbl9wYWdlX2ZsYWdzOworICBfX3U4IHJzY25fZmlkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEVMU19SU0NOX0VWX1FVQUxfQklUIDIKQEAgLTM3OCwyOTggKzM3OSwyOTggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVMU19SU0NOX0FERFJfRk1UX01BU0sgMHgzCiBlbnVtIGZjX2Vsc19yc2NuX2V2X3F1YWwgewotIEVMU19FVl9RVUFMX05PTkUgPSAwLAotIEVMU19FVl9RVUFMX05TX09CSiA9IDEsCisgIEVMU19FVl9RVUFMX05PTkUgPSAwLAorICBFTFNfRVZfUVVBTF9OU19PQkogPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfRVZfUVVBTF9QT1JUX0FUVFIgPSAyLAotIEVMU19FVl9RVUFMX1NFUlZfT0JKID0gMywKLSBFTFNfRVZfUVVBTF9TV19DT05GSUcgPSA0LAotIEVMU19FVl9RVUFMX1JFTV9PQkogPSA1LAorICBFTFNfRVZfUVVBTF9QT1JUX0FUVFIgPSAyLAorICBFTFNfRVZfUVVBTF9TRVJWX09CSiA9IDMsCisgIEVMU19FVl9RVUFMX1NXX0NPTkZJRyA9IDQsCisgIEVMU19FVl9RVUFMX1JFTV9PQkogPSA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2Vsc19yc2NuX2FkZHJfZm10IHsKLSBFTFNfQUREUl9GTVRfUE9SVCA9IDAsCi0gRUxTX0FERFJfRk1UX0FSRUEgPSAxLAorICBFTFNfQUREUl9GTVRfUE9SVCA9IDAsCisgIEVMU19BRERSX0ZNVF9BUkVBID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0FERFJfRk1UX0RPTSA9IDIsCi0gRUxTX0FERFJfRk1UX0ZBQiA9IDMsCisgIEVMU19BRERSX0ZNVF9ET00gPSAyLAorICBFTFNfQUREUl9GTVRfRkFCID0gMywKIH07CiBzdHJ1Y3QgZmNfZWxzX3JuaWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJuaWRfY21kOwotIF9fdTggcm5pZF9yZXN2WzNdOwotIF9fdTggcm5pZF9mbXQ7Ci0gX191OCBybmlkX3Jlc3YyWzNdOworICBfX3U4IHJuaWRfY21kOworICBfX3U4IHJuaWRfcmVzdlszXTsKKyAgX191OCBybmlkX2ZtdDsKKyAgX191OCBybmlkX3Jlc3YyWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2Vsc19ybmlkX2ZtdCB7Ci0gRUxTX1JOSURGX05PTkUgPSAwLAotIEVMU19STklERl9HRU4gPSAweGRmLAorICBFTFNfUk5JREZfTk9ORSA9IDAsCisgIEVMU19STklERl9HRU4gPSAweGRmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JuaWRfcmVzcCB7Ci0gX191OCBybmlkX2NtZDsKLSBfX3U4IHJuaWRfcmVzdlszXTsKKyAgX191OCBybmlkX2NtZDsKKyAgX191OCBybmlkX3Jlc3ZbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcm5pZF9mbXQ7Ci0gX191OCBybmlkX2NpZF9sZW47Ci0gX191OCBybmlkX3Jlc3YyOwotIF9fdTggcm5pZF9zaWRfbGVuOworICBfX3U4IHJuaWRfZm10OworICBfX3U4IHJuaWRfY2lkX2xlbjsKKyAgX191OCBybmlkX3Jlc3YyOworICBfX3U4IHJuaWRfc2lkX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19ybmlkX2NpZCB7Ci0gX19iZTY0IHJuaWRfd3dwbjsKLSBfX2JlNjQgcm5pZF93d25uOworICBfX2JlNjQgcm5pZF93d3BuOworICBfX2JlNjQgcm5pZF93d25uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JuaWRfZ2VuIHsKLSBfX3U4IHJuaWRfdmVuZF9pZFsxNl07Ci0gX19iZTMyIHJuaWRfYXR5cGU7CisgIF9fdTggcm5pZF92ZW5kX2lkWzE2XTsKKyAgX19iZTMyIHJuaWRfYXR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBybmlkX3BoeXNfcG9ydDsKLSBfX2JlMzIgcm5pZF9hdHRfbm9kZXM7Ci0gX191OCBybmlkX25vZGVfbWdtdDsKLSBfX3U4IHJuaWRfaXBfdmVyOworICBfX2JlMzIgcm5pZF9waHlzX3BvcnQ7CisgIF9fYmUzMiBybmlkX2F0dF9ub2RlczsKKyAgX191OCBybmlkX25vZGVfbWdtdDsKKyAgX191OCBybmlkX2lwX3ZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHJuaWRfcHJvdF9wb3J0OwotIF9fYmUzMiBybmlkX2lwX2FkZHJbNF07Ci0gX191OCBybmlkX3Jlc3ZkWzJdOwotIF9fYmUxNiBybmlkX3ZlbmRfc3BlYzsKKyAgX19iZTE2IHJuaWRfcHJvdF9wb3J0OworICBfX2JlMzIgcm5pZF9pcF9hZGRyWzRdOworICBfX3U4IHJuaWRfcmVzdmRbMl07CisgIF9fYmUxNiBybmlkX3ZlbmRfc3BlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBmY19lbHNfcm5pZF9hdHlwZSB7Ci0gRUxTX1JOSURBX1VOSyA9IDB4MDEsCi0gRUxTX1JOSURBX09USEVSID0gMHgwMiwKKyAgRUxTX1JOSURBX1VOSyA9IDB4MDEsCisgIEVMU19STklEQV9PVEhFUiA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9IVUIgPSAweDAzLAotIEVMU19STklEQV9TV0lUQ0ggPSAweDA0LAotIEVMU19STklEQV9HQVRFV0FZID0gMHgwNSwKLSBFTFNfUk5JREFfQ09OViA9IDB4MDYsCisgIEVMU19STklEQV9IVUIgPSAweDAzLAorICBFTFNfUk5JREFfU1dJVENIID0gMHgwNCwKKyAgRUxTX1JOSURBX0dBVEVXQVkgPSAweDA1LAorICBFTFNfUk5JREFfQ09OViA9IDB4MDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9IQkEgPSAweDA3LAotIEVMU19STklEQV9QUk9YWSA9IDB4MDgsCi0gRUxTX1JOSURBX1NUT1JBR0UgPSAweDA5LAotIEVMU19STklEQV9IT1NUID0gMHgwYSwKKyAgRUxTX1JOSURBX0hCQSA9IDB4MDcsCisgIEVMU19STklEQV9QUk9YWSA9IDB4MDgsCisgIEVMU19STklEQV9TVE9SQUdFID0gMHgwOSwKKyAgRUxTX1JOSURBX0hPU1QgPSAweDBhLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5JREFfU1VCU1lTID0gMHgwYiwKLSBFTFNfUk5JREFfQUNDRVNTID0gMHgwZSwKLSBFTFNfUk5JREFfTkFTID0gMHgxMSwKLSBFTFNfUk5JREFfQlJJREdFID0gMHgxMiwKKyAgRUxTX1JOSURBX1NVQlNZUyA9IDB4MGIsCisgIEVMU19STklEQV9BQ0NFU1MgPSAweDBlLAorICBFTFNfUk5JREFfTkFTID0gMHgxMSwKKyAgRUxTX1JOSURBX0JSSURHRSA9IDB4MTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9WSVJUID0gMHgxMywKLSBFTFNfUk5JREFfTUYgPSAweGZmLAotIEVMU19STklEQV9NRl9IVUIgPSAxVUwgPDwgMzEsCi0gRUxTX1JOSURBX01GX1NXID0gMVVMIDw8IDMwLAorICBFTFNfUk5JREFfVklSVCA9IDB4MTMsCisgIEVMU19STklEQV9NRiA9IDB4ZmYsCisgIEVMU19STklEQV9NRl9IVUIgPSAxVUwgPDwgMzEsCisgIEVMU19STklEQV9NRl9TVyA9IDFVTCA8PCAzMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURBX01GX0dXID0gMVVMIDw8IDI5LAotIEVMU19STklEQV9NRl9TVCA9IDFVTCA8PCAyOCwKLSBFTFNfUk5JREFfTUZfSE9TVCA9IDFVTCA8PCAyNywKLSBFTFNfUk5JREFfTUZfU1VCID0gMVVMIDw8IDI2LAorICBFTFNfUk5JREFfTUZfR1cgPSAxVUwgPDwgMjksCisgIEVMU19STklEQV9NRl9TVCA9IDFVTCA8PCAyOCwKKyAgRUxTX1JOSURBX01GX0hPU1QgPSAxVUwgPDwgMjcsCisgIEVMU19STklEQV9NRl9TVUIgPSAxVUwgPDwgMjYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9NRl9BQ0MgPSAxVUwgPDwgMjUsCi0gRUxTX1JOSURBX01GX1dETSA9IDFVTCA8PCAyNCwKLSBFTFNfUk5JREFfTUZfTkFTID0gMVVMIDw8IDIzLAotIEVMU19STklEQV9NRl9CUiA9IDFVTCA8PCAyMiwKKyAgRUxTX1JOSURBX01GX0FDQyA9IDFVTCA8PCAyNSwKKyAgRUxTX1JOSURBX01GX1dETSA9IDFVTCA8PCAyNCwKKyAgRUxTX1JOSURBX01GX05BUyA9IDFVTCA8PCAyMywKKyAgRUxTX1JOSURBX01GX0JSID0gMVVMIDw8IDIyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5JREFfTUZfVklSVCA9IDFVTCA8PCAyMSwKKyAgRUxTX1JOSURBX01GX1ZJUlQgPSAxVUwgPDwgMjEsCiB9OwogZW51bSBmY19lbHNfcm5pZF9tZ210IHsKLSBFTFNfUk5JRE1fU05NUCA9IDAsCisgIEVMU19STklETV9TTk1QID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURNX1RFTE5FVCA9IDEsCi0gRUxTX1JOSURNX0hUVFAgPSAyLAotIEVMU19STklETV9IVFRQUyA9IDMsCi0gRUxTX1JOSURNX1hNTCA9IDQsCisgIEVMU19STklETV9URUxORVQgPSAxLAorICBFTFNfUk5JRE1fSFRUUCA9IDIsCisgIEVMU19STklETV9IVFRQUyA9IDMsCisgIEVMU19STklETV9YTUwgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2Vsc19ybmlkX2lwdmVyIHsKLSBFTFNfUk5JRElQX05PTkUgPSAwLAotIEVMU19STklESVBfVjQgPSAxLAorICBFTFNfUk5JRElQX05PTkUgPSAwLAorICBFTFNfUk5JRElQX1Y0ID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURJUF9WNiA9IDIsCisgIEVMU19STklESVBfVjYgPSAyLAogfTsKIHN0cnVjdCBmY19lbHNfcnBsIHsKLSBfX3U4IHJwbF9jbWQ7CisgIF9fdTggcnBsX2NtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBycGxfcmVzdls1XTsKLSBfX2JlMTYgcnBsX21heF9zaXplOwotIF9fdTggcnBsX3Jlc3YxOwotIF9fdTggcnBsX2luZGV4WzNdOworICBfX3U4IHJwbF9yZXN2WzVdOworICBfX2JlMTYgcnBsX21heF9zaXplOworICBfX3U4IHJwbF9yZXN2MTsKKyAgX191OCBycGxfaW5kZXhbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19lbHNfcG5iIHsKLSBfX2JlMzIgcG5iX3BoeXNfcG47Ci0gX191OCBwbmJfcmVzdjsKKyAgX19iZTMyIHBuYl9waHlzX3BuOworICBfX3U4IHBuYl9yZXN2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBuYl9wb3J0X2lkWzNdOwotIF9fYmU2NCBwbmJfd3dwbjsKKyAgX191OCBwbmJfcG9ydF9pZFszXTsKKyAgX19iZTY0IHBuYl93d3BuOwogfTsKIHN0cnVjdCBmY19lbHNfcnBsX3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJwbF9jbWQ7Ci0gX191OCBycGxfcmVzdjE7Ci0gX19iZTE2IHJwbF9wbGVuOwotIF9fdTggcnBsX3Jlc3YyOworICBfX3U4IHJwbF9jbWQ7CisgIF9fdTggcnBsX3Jlc3YxOworICBfX2JlMTYgcnBsX3BsZW47CisgIF9fdTggcnBsX3Jlc3YyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJwbF9sbGVuWzNdOwotIF9fdTggcnBsX3Jlc3YzOwotIF9fdTggcnBsX2luZGV4WzNdOwotIHN0cnVjdCBmY19lbHNfcG5iIHJwbF9wbmJbMV07CisgIF9fdTggcnBsX2xsZW5bM107CisgIF9fdTggcnBsX3Jlc3YzOworICBfX3U4IHJwbF9pbmRleFszXTsKKyAgc3RydWN0IGZjX2Vsc19wbmIgcnBsX3BuYlsxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19sZXNiIHsKLSBfX2JlMzIgbGVzYl9saW5rX2ZhaWw7Ci0gX19iZTMyIGxlc2Jfc3luY19sb3NzOworICBfX2JlMzIgbGVzYl9saW5rX2ZhaWw7CisgIF9fYmUzMiBsZXNiX3N5bmNfbG9zczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGxlc2Jfc2lnX2xvc3M7Ci0gX19iZTMyIGxlc2JfcHJpbV9lcnI7Ci0gX19iZTMyIGxlc2JfaW52X3dvcmQ7Ci0gX19iZTMyIGxlc2JfaW52X2NyYzsKKyAgX19iZTMyIGxlc2Jfc2lnX2xvc3M7CisgIF9fYmUzMiBsZXNiX3ByaW1fZXJyOworICBfX2JlMzIgbGVzYl9pbnZfd29yZDsKKyAgX19iZTMyIGxlc2JfaW52X2NyYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19ycHMgewotIF9fdTggcnBzX2NtZDsKLSBfX3U4IHJwc19yZXN2WzJdOworICBfX3U4IHJwc19jbWQ7CisgIF9fdTggcnBzX3Jlc3ZbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnBzX2ZsYWc7Ci0gX19iZTY0IHJwc19wb3J0X3NwZWM7CisgIF9fdTggcnBzX2ZsYWc7CisgIF9fYmU2NCBycHNfcG9ydF9zcGVjOwogfTsKIGVudW0gZmNfZWxzX3Jwc19mbGFnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRUxTX1JQU19ESUQgPSAweDAwLAotIEZDX0VMU19SUFNfUFBOID0gMHgwMSwKLSBGQ19FTFNfUlBTX1dXUE4gPSAweDAyLAorICBGQ19FTFNfUlBTX0RJRCA9IDB4MDAsCisgIEZDX0VMU19SUFNfUFBOID0gMHgwMSwKKyAgRkNfRUxTX1JQU19XV1BOID0gMHgwMiwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjX2Vsc19ycHNfcmVzcCB7Ci0gX191OCBycHNfY21kOwotIF9fdTggcnBzX3Jlc3ZbMl07Ci0gX191OCBycHNfZmxhZzsKKyAgX191OCBycHNfY21kOworICBfX3U4IHJwc19yZXN2WzJdOworICBfX3U4IHJwc19mbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJwc19yZXN2MlsyXTsKLSBfX2JlMTYgcnBzX3N0YXR1czsKLSBzdHJ1Y3QgZmNfZWxzX2xlc2IgcnBzX2xlc2I7CisgIF9fdTggcnBzX3Jlc3YyWzJdOworICBfX2JlMTYgcnBzX3N0YXR1czsKKyAgc3RydWN0IGZjX2Vsc19sZXNiIHJwc19sZXNiOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGZjX2Vsc19ycHNfcmVzcF9mbGFnIHsKLSBGQ19FTFNfUlBTX0xQRVYgPSAweDAxLAorICBGQ19FTFNfUlBTX0xQRVYgPSAweDAxLAogfTsKIGVudW0gZmNfZWxzX3Jwc19yZXNwX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0VMU19SUFNfUFRQID0gMSA8PCA1LAotIEZDX0VMU19SUFNfTE9PUCA9IDEgPDwgNCwKLSBGQ19FTFNfUlBTX0ZBQiA9IDEgPDwgMywKLSBGQ19FTFNfUlBTX05PX1NJRyA9IDEgPDwgMiwKKyAgRkNfRUxTX1JQU19QVFAgPSAxIDw8IDUsCisgIEZDX0VMU19SUFNfTE9PUCA9IDEgPDwgNCwKKyAgRkNfRUxTX1JQU19GQUIgPSAxIDw8IDMsCisgIEZDX0VMU19SUFNfTk9fU0lHID0gMSA8PCAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19FTFNfUlBTX05PX1NZTkMgPSAxIDw8IDEsCi0gRkNfRUxTX1JQU19SRVNFVCA9IDEgPDwgMCwKKyAgRkNfRUxTX1JQU19OT19TWU5DID0gMSA8PCAxLAorICBGQ19FTFNfUlBTX1JFU0VUID0gMSA8PCAwLAogfTsKIHN0cnVjdCBmY19lbHNfbGlyciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGlycl9jbWQ7Ci0gX191OCBsaXJyX3Jlc3ZbM107Ci0gX191OCBsaXJyX2Z1bmM7Ci0gX191OCBsaXJyX2ZtdDsKKyAgX191OCBsaXJyX2NtZDsKKyAgX191OCBsaXJyX3Jlc3ZbM107CisgIF9fdTggbGlycl9mdW5jOworICBfX3U4IGxpcnJfZm10OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxpcnJfcmVzdjJbMl07CisgIF9fdTggbGlycl9yZXN2MlsyXTsKIH07CiBlbnVtIGZjX2Vsc19saXJyX2Z1bmMgewotIEVMU19MSVJSX1NFVF9DT05EID0gMHgwMSwKKyAgRUxTX0xJUlJfU0VUX0NPTkQgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfTElSUl9TRVRfVU5DT05EID0gMHgwMiwKLSBFTFNfTElSUl9DTEVBUiA9IDB4ZmYKKyAgRUxTX0xJUlJfU0VUX1VOQ09ORCA9IDB4MDIsCisgIEVMU19MSVJSX0NMRUFSID0gMHhmZgogfTsKIHN0cnVjdCBmY19lbHNfc3JsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcmxfY21kOwotIF9fdTggc3JsX3Jlc3ZbM107Ci0gX191OCBzcmxfZmxhZzsKLSBfX3U4IHNybF9mbGFnX3BhcmFtWzNdOworICBfX3U4IHNybF9jbWQ7CisgIF9fdTggc3JsX3Jlc3ZbM107CisgIF9fdTggc3JsX2ZsYWc7CisgIF9fdTggc3JsX2ZsYWdfcGFyYW1bM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX3NybF9mbGFnIHsKLSBGQ19FTFNfU1JMX0FMTCA9IDB4MDAsCi0gRkNfRUxTX1NSTF9PTkUgPSAweDAxLAorICBGQ19FTFNfU1JMX0FMTCA9IDB4MDAsCisgIEZDX0VMU19TUkxfT05FID0gMHgwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRUxTX1NSTF9FTl9QRVIgPSAweDAyLAotIEZDX0VMU19TUkxfRElTX1BFUiA9IDB4MDMsCisgIEZDX0VMU19TUkxfRU5fUEVSID0gMHgwMiwKKyAgRkNfRUxTX1NSTF9ESVNfUEVSID0gMHgwMywKIH07CiBzdHJ1Y3QgZmNfZWxzX3JscyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmxzX2NtZDsKLSBfX3U4IHJsc19yZXN2WzRdOwotIF9fdTggcmxzX3BvcnRfaWRbM107CisgIF9fdTggcmxzX2NtZDsKKyAgX191OCBybHNfcmVzdls0XTsKKyAgX191OCBybHNfcG9ydF9pZFszXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjX2Vsc19ybHNfcmVzcCB7Ci0gX191OCBybHNfY21kOwotIF9fdTggcmxzX3Jlc3ZbM107Ci0gc3RydWN0IGZjX2Vsc19sZXNiIHJsc19sZXNiOworICBfX3U4IHJsc19jbWQ7CisgIF9fdTggcmxzX3Jlc3ZbM107CisgIHN0cnVjdCBmY19lbHNfbGVzYiBybHNfbGVzYjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19ybGlyIHsKLSBfX3U4IHJsaXJfY21kOwotIF9fdTggcmxpcl9yZXN2WzNdOworICBfX3U4IHJsaXJfY21kOworICBfX3U4IHJsaXJfcmVzdlszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBybGlyX2ZtdDsKLSBfX3U4IHJsaXJfY2xyX2xlbjsKLSBfX3U4IHJsaXJfY2xkX2xlbjsKLSBfX3U4IHJsaXJfc2xyX2xlbjsKKyAgX191OCBybGlyX2ZtdDsKKyAgX191OCBybGlyX2Nscl9sZW47CisgIF9fdTggcmxpcl9jbGRfbGVuOworICBfX3U4IHJsaXJfc2xyX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19jbGlyIHsKLSBfX2JlNjQgY2xpcl93d3BuOwotIF9fYmU2NCBjbGlyX3d3bm47CisgIF9fYmU2NCBjbGlyX3d3cG47CisgIF9fYmU2NCBjbGlyX3d3bm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2xpcl9wb3J0X3R5cGU7Ci0gX191OCBjbGlyX3BvcnRfaWRbM107Ci0gX19iZTY0IGNsaXJfY29ubl93d3BuOwotIF9fYmU2NCBjbGlyX2Nvbm5fd3dubjsKKyAgX191OCBjbGlyX3BvcnRfdHlwZTsKKyAgX191OCBjbGlyX3BvcnRfaWRbM107CisgIF9fYmU2NCBjbGlyX2Nvbm5fd3dwbjsKKyAgX19iZTY0IGNsaXJfY29ubl93d25uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgY2xpcl9mYWJfbmFtZTsKLSBfX2JlMzIgY2xpcl9waHlzX3BvcnQ7Ci0gX19iZTMyIGNsaXJfdHJhbnNfaWQ7Ci0gX191OCBjbGlyX3Jlc3ZbM107CisgIF9fYmU2NCBjbGlyX2ZhYl9uYW1lOworICBfX2JlMzIgY2xpcl9waHlzX3BvcnQ7CisgIF9fYmUzMiBjbGlyX3RyYW5zX2lkOworICBfX3U4IGNsaXJfcmVzdlszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjbGlyX3RzX2ZtdDsKLSBfX2JlNjQgY2xpcl90aW1lc3RhbXA7CisgIF9fdTggY2xpcl90c19mbXQ7CisgIF9fYmU2NCBjbGlyX3RpbWVzdGFtcDsKIH07CiBlbnVtIGZjX2Vsc19jbGlyX3RzX2ZtdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19DTElSX1RTX1VOS05PV04gPSAwLAotIEVMU19DTElSX1RTX1NFQ19GUkFDID0gMSwKLSBFTFNfQ0xJUl9UU19DU1UgPSAyLAorICBFTFNfQ0xJUl9UU19VTktOT1dOID0gMCwKKyAgRUxTX0NMSVJfVFNfU0VDX0ZSQUMgPSAxLAorICBFTFNfQ0xJUl9UU19DU1UgPSAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfZWxzX2NsaWQgewotIF9fdTggY2xpZF9pcTsKLSBfX3U4IGNsaWRfaWM7Ci0gX19iZTE2IGNsaWRfZXBhaTsKKyAgX191OCBjbGlkX2lxOworICBfX3U4IGNsaWRfaWM7CisgIF9fYmUxNiBjbGlkX2VwYWk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX2NsaWRfaXEgewotIEVMU19DTElEX1NXSVRDSCA9IDB4MjAsCi0gRUxTX0NMSURfRV9QT1JUID0gMHgxMCwKKyAgRUxTX0NMSURfU1dJVENIID0gMHgyMCwKKyAgRUxTX0NMSURfRV9QT1JUID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0NMSURfU0VWX01BU0sgPSAweDBjLAotIEVMU19DTElEX1NFVl9JTkZPID0gMHgwMCwKLSBFTFNfQ0xJRF9TRVZfSU5PUCA9IDB4MDgsCi0gRUxTX0NMSURfU0VWX0RFRyA9IDB4MDQsCisgIEVMU19DTElEX1NFVl9NQVNLID0gMHgwYywKKyAgRUxTX0NMSURfU0VWX0lORk8gPSAweDAwLAorICBFTFNfQ0xJRF9TRVZfSU5PUCA9IDB4MDgsCisgIEVMU19DTElEX1NFVl9ERUcgPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfQ0xJRF9MQVNFUiA9IDB4MDIsCi0gRUxTX0NMSURfRlJVID0gMHgwMSwKKyAgRUxTX0NMSURfTEFTRVIgPSAweDAyLAorICBFTFNfQ0xJRF9GUlUgPSAweDAxLAogfTsKIGVudW0gZmNfZWxzX2NsaWRfaWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfQ0xJRF9JQ19JTVBMID0gMSwKLSBFTFNfQ0xJRF9JQ19CRVIgPSAyLAotIEVMU19DTElEX0lDX0xPUyA9IDMsCi0gRUxTX0NMSURfSUNfTk9TID0gNCwKKyAgRUxTX0NMSURfSUNfSU1QTCA9IDEsCisgIEVMU19DTElEX0lDX0JFUiA9IDIsCisgIEVMU19DTElEX0lDX0xPUyA9IDMsCisgIEVMU19DTElEX0lDX05PUyA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19DTElEX0lDX1BTVCA9IDUsCi0gRUxTX0NMSURfSUNfSU5WQUwgPSA2LAotIEVMU19DTElEX0lDX0xPT1BfVE8gPSA3LAotIEVMU19DTElEX0lDX0xJUCA9IDgsCisgIEVMU19DTElEX0lDX1BTVCA9IDUsCisgIEVMU19DTElEX0lDX0lOVkFMID0gNiwKKyAgRUxTX0NMSURfSUNfTE9PUF9UTyA9IDcsCisgIEVMU19DTElEX0lDX0xJUCA9IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZnMuaAppbmRleCA2MmI3ZjRhLi5iZGM2MTdlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZnMuaApAQCAtMjEsMjAgKzIxLDIwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBmY19mcmFtZV9oZWFkZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZoX3JfY3RsOwotIF9fdTggZmhfZF9pZFszXTsKLSBfX3U4IGZoX2NzX2N0bDsKLSBfX3U4IGZoX3NfaWRbM107CisgIF9fdTggZmhfcl9jdGw7CisgIF9fdTggZmhfZF9pZFszXTsKKyAgX191OCBmaF9jc19jdGw7CisgIF9fdTggZmhfc19pZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmaF90eXBlOwotIF9fdTggZmhfZl9jdGxbM107Ci0gX191OCBmaF9zZXFfaWQ7Ci0gX191OCBmaF9kZl9jdGw7CisgIF9fdTggZmhfdHlwZTsKKyAgX191OCBmaF9mX2N0bFszXTsKKyAgX191OCBmaF9zZXFfaWQ7CisgIF9fdTggZmhfZGZfY3RsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZmhfc2VxX2NudDsKLSBfX2JlMTYgZmhfb3hfaWQ7Ci0gX19iZTE2IGZoX3J4X2lkOwotIF9fYmUzMiBmaF9wYXJtX29mZnNldDsKKyAgX19iZTE2IGZoX3NlcV9jbnQ7CisgIF9fYmUxNiBmaF9veF9pZDsKKyAgX19iZTE2IGZoX3J4X2lkOworICBfX2JlMzIgZmhfcGFybV9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRkNfRlJBTUVfSEVBREVSX0xFTiAyNApAQCAtNDQsNjUgKzQ0LDY2IEBACiAjZGVmaW5lIEZDX01BWF9GUkFNRSAoRkNfTUFYX1BBWUxPQUQgKyBGQ19GUkFNRV9IRUFERVJfTEVOKQogI2RlZmluZSBGQ19NSU5fTUFYX0ZSQU1FIChGQ19NSU5fTUFYX1BBWUxPQUQgKyBGQ19GUkFNRV9IRUFERVJfTEVOKQogZW51bSBmY19yY3RsIHsKLSBGQ19SQ1RMX0REX1VOQ0FUID0gMHgwMCwKKyAgRkNfUkNUTF9ERF9VTkNBVCA9IDB4MDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JDVExfRERfU09MX0RBVEEgPSAweDAxLAotIEZDX1JDVExfRERfVU5TT0xfQ1RMID0gMHgwMiwKLSBGQ19SQ1RMX0REX1NPTF9DVEwgPSAweDAzLAotIEZDX1JDVExfRERfVU5TT0xfREFUQSA9IDB4MDQsCisgIEZDX1JDVExfRERfU09MX0RBVEEgPSAweDAxLAorICBGQ19SQ1RMX0REX1VOU09MX0NUTCA9IDB4MDIsCisgIEZDX1JDVExfRERfU09MX0NUTCA9IDB4MDMsCisgIEZDX1JDVExfRERfVU5TT0xfREFUQSA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JDVExfRERfREFUQV9ERVNDID0gMHgwNSwKLSBGQ19SQ1RMX0REX1VOU09MX0NNRCA9IDB4MDYsCi0gRkNfUkNUTF9ERF9DTURfU1RBVFVTID0gMHgwNywKKyAgRkNfUkNUTF9ERF9EQVRBX0RFU0MgPSAweDA1LAorICBGQ19SQ1RMX0REX1VOU09MX0NNRCA9IDB4MDYsCisgIEZDX1JDVExfRERfQ01EX1NUQVRVUyA9IDB4MDcsCiAjZGVmaW5lIEZDX1JDVExfSUxTX1JFUSBGQ19SQ1RMX0REX1VOU09MX0NUTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkNfUkNUTF9JTFNfUkVQIEZDX1JDVExfRERfU09MX0NUTAotIEZDX1JDVExfRUxTX1JFUSA9IDB4MjIsCi0gRkNfUkNUTF9FTFNfUkVQID0gMHgyMywKLSBGQ19SQ1RMX0VMUzRfUkVRID0gMHgzMiwKKyAgRkNfUkNUTF9FTFNfUkVRID0gMHgyMiwKKyAgRkNfUkNUTF9FTFNfUkVQID0gMHgyMywKKyAgRkNfUkNUTF9FTFM0X1JFUSA9IDB4MzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JDVExfRUxTNF9SRVAgPSAweDMzLAotIEZDX1JDVExfVkZUSCA9IDB4NTAsCi0gRkNfUkNUTF9JRlJIID0gMHg1MSwKLSBGQ19SQ1RMX0VOQ0ggPSAweDUyLAorICBGQ19SQ1RMX0VMUzRfUkVQID0gMHgzMywKKyAgRkNfUkNUTF9WRlRIID0gMHg1MCwKKyAgRkNfUkNUTF9JRlJIID0gMHg1MSwKKyAgRkNfUkNUTF9FTkNIID0gMHg1MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9CQV9OT1AgPSAweDgwLAotIEZDX1JDVExfQkFfQUJUUyA9IDB4ODEsCi0gRkNfUkNUTF9CQV9STUMgPSAweDgyLAotIEZDX1JDVExfQkFfQUNDID0gMHg4NCwKKyAgRkNfUkNUTF9CQV9OT1AgPSAweDgwLAorICBGQ19SQ1RMX0JBX0FCVFMgPSAweDgxLAorICBGQ19SQ1RMX0JBX1JNQyA9IDB4ODIsCisgIEZDX1JDVExfQkFfQUNDID0gMHg4NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9CQV9SSlQgPSAweDg1LAotIEZDX1JDVExfQkFfUFJNVCA9IDB4ODYsCi0gRkNfUkNUTF9BQ0tfMSA9IDB4YzAsCi0gRkNfUkNUTF9BQ0tfMCA9IDB4YzEsCisgIEZDX1JDVExfQkFfUkpUID0gMHg4NSwKKyAgRkNfUkNUTF9CQV9QUk1UID0gMHg4NiwKKyAgRkNfUkNUTF9BQ0tfMSA9IDB4YzAsCisgIEZDX1JDVExfQUNLXzAgPSAweGMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SQ1RMX1BfUkpUID0gMHhjMiwKLSBGQ19SQ1RMX0ZfUkpUID0gMHhjMywKLSBGQ19SQ1RMX1BfQlNZID0gMHhjNCwKLSBGQ19SQ1RMX0ZfQlNZID0gMHhjNSwKKyAgRkNfUkNUTF9QX1JKVCA9IDB4YzIsCisgIEZDX1JDVExfRl9SSlQgPSAweGMzLAorICBGQ19SQ1RMX1BfQlNZID0gMHhjNCwKKyAgRkNfUkNUTF9GX0JTWSA9IDB4YzUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JDVExfRl9CU1lMID0gMHhjNiwKLSBGQ19SQ1RMX0xDUiA9IDB4YzcsCi0gRkNfUkNUTF9FTkQgPSAweGM5LAorICBGQ19SQ1RMX0ZfQlNZTCA9IDB4YzYsCisgIEZDX1JDVExfTENSID0gMHhjNywKKyAgRkNfUkNUTF9FTkQgPSAweGM5LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZDX1JDVExfTkFNRVNfSU5JVCB7ICAgW0ZDX1JDVExfRERfVU5DQVRdID0gInVuY2F0IiwgICBbRkNfUkNUTF9ERF9TT0xfREFUQV0gPSAic29sIGRhdGEiLCAgIFtGQ19SQ1RMX0REX1VOU09MX0NUTF0gPSAidW5zb2wgY3RsIiwgICBbRkNfUkNUTF9ERF9TT0xfQ1RMXSA9ICJzb2wgY3RsL3JlcGx5IiwgICBbRkNfUkNUTF9ERF9VTlNPTF9EQVRBXSA9ICJ1bnNvbCBkYXRhIiwgICBbRkNfUkNUTF9ERF9EQVRBX0RFU0NdID0gImRhdGEgZGVzYyIsICAgW0ZDX1JDVExfRERfVU5TT0xfQ01EXSA9ICJ1bnNvbCBjbWQiLCAgIFtGQ19SQ1RMX0REX0NNRF9TVEFUVVNdID0gImNtZCBzdGF0dXMiLCAgIFtGQ19SQ1RMX0VMU19SRVFdID0gIkVMUyByZXEiLCAgIFtGQ19SQ1RMX0VMU19SRVBdID0gIkVMUyByZXAiLCAgIFtGQ19SQ1RMX0VMUzRfUkVRXSA9ICJGQy00IEVMUyByZXEiLCAgIFtGQ19SQ1RMX0VMUzRfUkVQXSA9ICJGQy00IEVMUyByZXAiLCAgIFtGQ19SQ1RMX0JBX05PUF0gPSAiQkxTIE5PUCIsICAgW0ZDX1JDVExfQkFfQUJUU10gPSAiQkxTIGFib3J0IiwgICBbRkNfUkNUTF9CQV9STUNdID0gIkJMUyByZW1vdmUgY29ubmVjdGlvbiIsICAgW0ZDX1JDVExfQkFfQUNDXSA9ICJCTFMgYWNjZXB0IiwgICBbRkNfUkNUTF9CQV9SSlRdID0gIkJMUyByZWplY3QiLCAgIFtGQ19SQ1RMX0JBX1BSTVRdID0gIkJMUyBkZWRpY2F0ZWQgY29ubmVjdGlvbiBwcmVlbXB0ZWQiLCAgIFtGQ19SQ1RMX0FDS18xXSA9ICJMQyBBQ0tfMSIsICAgW0ZDX1JDVExfQUNLXzBdID0gIkxDIEFDS18wIiwgICBbRkNfUkNUTF9QX1JKVF0gPSAiTEMgcG9ydCByZWplY3QiLCAgIFtGQ19SQ1RMX0ZfUkpUXSA9ICJMQyBmYWJyaWMgcmVqZWN0IiwgICBbRkNfUkNUTF9QX0JTWV0gPSAiTEMgcG9ydCBidXN5IiwgICBbRkNfUkNUTF9GX0JTWV0gPSAiTEMgZmFicmljIGJ1c3kgdG8gZGF0YSBmcmFtZSIsICAgW0ZDX1JDVExfRl9CU1lMXSA9ICJMQyBmYWJyaWMgYnVzeSB0byBsaW5rIGNvbnRyb2wgZnJhbWUiLCAgW0ZDX1JDVExfTENSXSA9ICJMQyBsaW5rIGNyZWRpdCByZXNldCIsICAgW0ZDX1JDVExfRU5EXSA9ICJMQyBlbmQiLCAgfQorI2RlZmluZSBGQ19SQ1RMX05BTUVTX0lOSVQge1tGQ19SQ1RMX0REX1VOQ0FUXSA9ICJ1bmNhdCIsW0ZDX1JDVExfRERfU09MX0RBVEFdID0gInNvbCBkYXRhIixbRkNfUkNUTF9ERF9VTlNPTF9DVExdID0gInVuc29sIGN0bCIsW0ZDX1JDVExfRERfU09MX0NUTF0gPSAic29sIGN0bC9yZXBseSIsW0ZDX1JDVExfRERfVU5TT0xfREFUQV0gPSAidW5zb2wgZGF0YSIsW0ZDX1JDVExfRERfREFUQV9ERVNDXSA9ICJkYXRhIGRlc2MiLFtGQ19SQ1RMX0REX1VOU09MX0NNRF0gPSAidW5zb2wgY21kIixbRkNfUkNUTF9ERF9DTURfU1RBVFVTXSA9ICJjbWQgc3RhdHVzIixbRkNfUkNUTF9FTFNfUkVRXSA9ICJFTFMgcmVxIixbRkNfUkNUTF9FTFNfUkVQXSA9ICJFTFMgcmVwIixbRkNfUkNUTF9FTFM0X1JFUV0gPSAiRkMtNCBFTFMgcmVxIixbRkNfUkNUTF9FTFM0X1JFUF0gPSAiRkMtNCBFTFMgcmVwIixbRkNfUkNUTF9CQV9OT1BdID0gIkJMUyBOT1AiLFtGQ19SQ1RMX0JBX0FCVFNdID0gIkJMUyBhYm9ydCIsW0ZDX1JDVExfQkFfUk1DXSA9ICJCTFMgcmVtb3ZlIGNvbm5lY3Rpb24iLFtGQ19SQ1RMX0JBX0FDQ10gPSAiQkxTIGFjY2VwdCIsW0ZDX1JDVExfQkFfUkpUXSA9ICJCTFMgcmVqZWN0IixbRkNfUkNUTF9CQV9QUk1UXSA9ICJCTFMgZGVkaWNhdGVkIGNvbm5lY3Rpb24gcHJlZW1wdGVkIixbRkNfUkNUTF9BQ0tfMV0gPSAiTEMgQUNLXzEiLFtGQ19SQ1RMX0FDS18wXSA9ICJMQyBBQ0tfMCIsW0ZDX1JDVExfUF9SSlRdID0gIkxDIHBvcnQgcmVqZWN0IixbRkNfUkNUTF9GX1JKVF0gPSAiTEMgZmFicmljIHJlamVjdCIsW0ZDX1JDVExfUF9CU1ldID0gIkxDIHBvcnQgYnVzeSIsW0ZDX1JDVExfRl9CU1ldID0gIkxDIGZhYnJpYyBidXN5IHRvIGRhdGEgZnJhbWUiLFtGQ19SQ1RMX0ZfQlNZTF0gPSAiTEMgZmFicmljIGJ1c3kgdG8gbGluayBjb250cm9sIGZyYW1lIixbRkNfUkNUTF9MQ1JdID0gIkxDIGxpbmsgY3JlZGl0IHJlc2V0IixbRkNfUkNUTF9FTkRdID0gIkxDIGVuZCIsIFwKK30KIGVudW0gZmNfd2VsbF9rbm93bl9maWQgewotIEZDX0ZJRF9OT05FID0gMHgwMDAwMDAsCi0gRkNfRklEX0JDQVNUID0gMHhmZmZmZmYsCisgIEZDX0ZJRF9OT05FID0gMHgwMDAwMDAsCisgIEZDX0ZJRF9CQ0FTVCA9IDB4ZmZmZmZmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GSURfRkxPR0kgPSAweGZmZmZmZSwKLSBGQ19GSURfRkNUUkwgPSAweGZmZmZmZCwKLSBGQ19GSURfRElSX1NFUlYgPSAweGZmZmZmYywKLSBGQ19GSURfVElNRV9TRVJWID0gMHhmZmZmZmIsCisgIEZDX0ZJRF9GTE9HSSA9IDB4ZmZmZmZlLAorICBGQ19GSURfRkNUUkwgPSAweGZmZmZmZCwKKyAgRkNfRklEX0RJUl9TRVJWID0gMHhmZmZmZmMsCisgIEZDX0ZJRF9USU1FX1NFUlYgPSAweGZmZmZmYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRklEX01HTVRfU0VSViA9IDB4ZmZmZmZhLAotIEZDX0ZJRF9RT1MgPSAweGZmZmZmOSwKLSBGQ19GSURfQUxJQVNFUyA9IDB4ZmZmZmY4LAotIEZDX0ZJRF9TRUNfS0VZID0gMHhmZmZmZjcsCisgIEZDX0ZJRF9NR01UX1NFUlYgPSAweGZmZmZmYSwKKyAgRkNfRklEX1FPUyA9IDB4ZmZmZmY5LAorICBGQ19GSURfQUxJQVNFUyA9IDB4ZmZmZmY4LAorICBGQ19GSURfU0VDX0tFWSA9IDB4ZmZmZmY3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GSURfQ0xPQ0sgPSAweGZmZmZmNiwKLSBGQ19GSURfTUNBU1RfU0VSViA9IDB4ZmZmZmY1LAorICBGQ19GSURfQ0xPQ0sgPSAweGZmZmZmNiwKKyAgRkNfRklEX01DQVNUX1NFUlYgPSAweGZmZmZmNSwKIH07CiAjZGVmaW5lIEZDX0ZJRF9XRUxMX0tOT1dOX01BWCAweGZmZmZmZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTExMywxNiArMTE0LDE3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQ19GSURfTElOSyAyCiBlbnVtIGZjX2ZoX3R5cGUgewotIEZDX1RZUEVfQkxTID0gMHgwMCwKLSBGQ19UWVBFX0VMUyA9IDB4MDEsCisgIEZDX1RZUEVfQkxTID0gMHgwMCwKKyAgRkNfVFlQRV9FTFMgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19UWVBFX0lQID0gMHgwNSwKLSBGQ19UWVBFX0ZDUCA9IDB4MDgsCi0gRkNfVFlQRV9DVCA9IDB4MjAsCi0gRkNfVFlQRV9JTFMgPSAweDIyLAorICBGQ19UWVBFX0lQID0gMHgwNSwKKyAgRkNfVFlQRV9GQ1AgPSAweDA4LAorICBGQ19UWVBFX0NUID0gMHgyMCwKKyAgRkNfVFlQRV9JTFMgPSAweDIyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIEZDX1RZUEVfTkFNRVNfSU5JVCB7ICAgW0ZDX1RZUEVfQkxTXSA9ICJCTFMiLCAgIFtGQ19UWVBFX0VMU10gPSAiRUxTIiwgICBbRkNfVFlQRV9JUF0gPSAiSVAiLCAgIFtGQ19UWVBFX0ZDUF0gPSAiRkNQIiwgICBbRkNfVFlQRV9DVF0gPSAiQ1QiLCAgIFtGQ19UWVBFX0lMU10gPSAiSUxTIiwgIH0KKyNkZWZpbmUgRkNfVFlQRV9OQU1FU19JTklUIHtbRkNfVFlQRV9CTFNdID0gIkJMUyIsW0ZDX1RZUEVfRUxTXSA9ICJFTFMiLFtGQ19UWVBFX0lQXSA9ICJJUCIsW0ZDX1RZUEVfRkNQXSA9ICJGQ1AiLFtGQ19UWVBFX0NUXSA9ICJDVCIsW0ZDX1RZUEVfSUxTXSA9ICJJTFMiLCBcCit9CiAjZGVmaW5lIEZDX1hJRF9VTktOT1dOIDB4ZmZmZgogI2RlZmluZSBGQ19YSURfTUlOIDB4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE1Niw5NyArMTU4LDk3IEBACiAjZGVmaW5lIEZDX0ZDX0ZJTEwoaSkgKChpKSAmIDMpCiBzdHJ1Y3QgZmNfYmFfYWNjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiYV9zZXFfaWRfdmFsOworICBfX3U4IGJhX3NlcV9pZF92YWw7CiAjZGVmaW5lIEZDX0JBX1NFUV9JRF9WQUwgMHg4MAotIF9fdTggYmFfc2VxX2lkOwotIF9fdTggYmFfcmVzdmRbMl07CisgIF9fdTggYmFfc2VxX2lkOworICBfX3U4IGJhX3Jlc3ZkWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgYmFfb3hfaWQ7Ci0gX19iZTE2IGJhX3J4X2lkOwotIF9fYmUxNiBiYV9sb3dfc2VxX2NudDsKLSBfX2JlMTYgYmFfaGlnaF9zZXFfY250OworICBfX2JlMTYgYmFfb3hfaWQ7CisgIF9fYmUxNiBiYV9yeF9pZDsKKyAgX19iZTE2IGJhX2xvd19zZXFfY250OworICBfX2JlMTYgYmFfaGlnaF9zZXFfY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfYmFfcmp0IHsKLSBfX3U4IGJyX3Jlc3ZkOwotIF9fdTggYnJfcmVhc29uOworICBfX3U4IGJyX3Jlc3ZkOworICBfX3U4IGJyX3JlYXNvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBicl9leHBsYW47Ci0gX191OCBicl92ZW5kb3I7CisgIF9fdTggYnJfZXhwbGFuOworICBfX3U4IGJyX3ZlbmRvcjsKIH07CiBlbnVtIGZjX2JhX3JqdF9yZWFzb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19CQV9SSlRfTk9ORSA9IDAsCi0gRkNfQkFfUkpUX0lOVkxfQ01EID0gMHgwMSwKLSBGQ19CQV9SSlRfTE9HX0VSUiA9IDB4MDMsCi0gRkNfQkFfUkpUX0xPR19CVVNZID0gMHgwNSwKKyAgRkNfQkFfUkpUX05PTkUgPSAwLAorICBGQ19CQV9SSlRfSU5WTF9DTUQgPSAweDAxLAorICBGQ19CQV9SSlRfTE9HX0VSUiA9IDB4MDMsCisgIEZDX0JBX1JKVF9MT0dfQlVTWSA9IDB4MDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0JBX1JKVF9QUk9UT19FUlIgPSAweDA3LAotIEZDX0JBX1JKVF9VTkFCTEUgPSAweDA5LAotIEZDX0JBX1JKVF9WRU5ET1IgPSAweGZmLAorICBGQ19CQV9SSlRfUFJPVE9fRVJSID0gMHgwNywKKyAgRkNfQkFfUkpUX1VOQUJMRSA9IDB4MDksCisgIEZDX0JBX1JKVF9WRU5ET1IgPSAweGZmLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGZjX2JhX3JqdF9leHBsYW4gewotIEZDX0JBX1JKVF9FWFBfTk9ORSA9IDB4MDAsCi0gRkNfQkFfUkpUX0lOVl9YSUQgPSAweDAzLAotIEZDX0JBX1JKVF9BQlQgPSAweDA1LAorICBGQ19CQV9SSlRfRVhQX05PTkUgPSAweDAwLAorICBGQ19CQV9SSlRfSU5WX1hJRCA9IDB4MDMsCisgIEZDX0JBX1JKVF9BQlQgPSAweDA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfcGZfcmp0IHsKLSBfX3U4IHJqX2FjdGlvbjsKLSBfX3U4IHJqX3JlYXNvbjsKKyAgX191OCByal9hY3Rpb247CisgIF9fdTggcmpfcmVhc29uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJqX3Jlc3ZkOwotIF9fdTggcmpfdmVuZG9yOworICBfX3U4IHJqX3Jlc3ZkOworICBfX3U4IHJqX3ZlbmRvcjsKIH07CiBlbnVtIGZjX3BmX3JqdF9yZWFzb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfTk9ORSA9IDAsCi0gRkNfUkpUX0lOVkxfRElEID0gMHgwMSwKLSBGQ19SSlRfSU5WTF9TSUQgPSAweDAyLAotIEZDX1JKVF9QX1VOQVZfVCA9IDB4MDMsCisgIEZDX1JKVF9OT05FID0gMCwKKyAgRkNfUkpUX0lOVkxfRElEID0gMHgwMSwKKyAgRkNfUkpUX0lOVkxfU0lEID0gMHgwMiwKKyAgRkNfUkpUX1BfVU5BVl9UID0gMHgwMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX1BfVU5BViA9IDB4MDQsCi0gRkNfUkpUX0NMU19VTlNVUCA9IDB4MDUsCi0gRkNfUkpUX0RFTF9VU0FHRSA9IDB4MDYsCi0gRkNfUkpUX1RZUEVfVU5TVVAgPSAweDA3LAorICBGQ19SSlRfUF9VTkFWID0gMHgwNCwKKyAgRkNfUkpUX0NMU19VTlNVUCA9IDB4MDUsCisgIEZDX1JKVF9ERUxfVVNBR0UgPSAweDA2LAorICBGQ19SSlRfVFlQRV9VTlNVUCA9IDB4MDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9MSU5LX0NUTCA9IDB4MDgsCi0gRkNfUkpUX1JfQ1RMID0gMHgwOSwKLSBGQ19SSlRfRl9DVEwgPSAweDBhLAotIEZDX1JKVF9PWF9JRCA9IDB4MGIsCisgIEZDX1JKVF9MSU5LX0NUTCA9IDB4MDgsCisgIEZDX1JKVF9SX0NUTCA9IDB4MDksCisgIEZDX1JKVF9GX0NUTCA9IDB4MGEsCisgIEZDX1JKVF9PWF9JRCA9IDB4MGIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9SWF9JRCA9IDB4MGMsCi0gRkNfUkpUX1NFUV9JRCA9IDB4MGQsCi0gRkNfUkpUX0RGX0NUTCA9IDB4MGUsCi0gRkNfUkpUX1NFUV9DTlQgPSAweDBmLAorICBGQ19SSlRfUlhfSUQgPSAweDBjLAorICBGQ19SSlRfU0VRX0lEID0gMHgwZCwKKyAgRkNfUkpUX0RGX0NUTCA9IDB4MGUsCisgIEZDX1JKVF9TRVFfQ05UID0gMHgwZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX1BBUkFNID0gMHgxMCwKLSBGQ19SSlRfRVhDSF9FUlIgPSAweDExLAotIEZDX1JKVF9QUk9UTyA9IDB4MTIsCi0gRkNfUkpUX0xFTiA9IDB4MTMsCisgIEZDX1JKVF9QQVJBTSA9IDB4MTAsCisgIEZDX1JKVF9FWENIX0VSUiA9IDB4MTEsCisgIEZDX1JKVF9QUk9UTyA9IDB4MTIsCisgIEZDX1JKVF9MRU4gPSAweDEzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfVU5FWFBfQUNLID0gMHgxNCwKLSBGQ19SSlRfRkFCX0NMQVNTID0gMHgxNSwKLSBGQ19SSlRfTE9HSV9SRVEgPSAweDE2LAotIEZDX1JKVF9TRVFfWFMgPSAweDE3LAorICBGQ19SSlRfVU5FWFBfQUNLID0gMHgxNCwKKyAgRkNfUkpUX0ZBQl9DTEFTUyA9IDB4MTUsCisgIEZDX1JKVF9MT0dJX1JFUSA9IDB4MTYsCisgIEZDX1JKVF9TRVFfWFMgPSAweDE3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfRVhDSF9FU1QgPSAweDE4LAotIEZDX1JKVF9GQUJfVU5BViA9IDB4MWEsCi0gRkNfUkpUX1ZDX0lEID0gMHgxYiwKLSBGQ19SSlRfQ1NfQ1RMID0gMHgxYywKKyAgRkNfUkpUX0VYQ0hfRVNUID0gMHgxOCwKKyAgRkNfUkpUX0ZBQl9VTkFWID0gMHgxYSwKKyAgRkNfUkpUX1ZDX0lEID0gMHgxYiwKKyAgRkNfUkpUX0NTX0NUTCA9IDB4MWMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9JTlNVRl9SRVMgPSAweDFkLAotIEZDX1JKVF9JTlZMX0NMUyA9IDB4MWYsCi0gRkNfUkpUX1BSRUVNVF9SSlQgPSAweDIwLAotIEZDX1JKVF9QUkVFTVRfRElTID0gMHgyMSwKKyAgRkNfUkpUX0lOU1VGX1JFUyA9IDB4MWQsCisgIEZDX1JKVF9JTlZMX0NMUyA9IDB4MWYsCisgIEZDX1JKVF9QUkVFTVRfUkpUID0gMHgyMCwKKyAgRkNfUkpUX1BSRUVNVF9ESVMgPSAweDIxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfTUNBU1RfRVJSID0gMHgyMiwKLSBGQ19SSlRfTUNBU1RfRVQgPSAweDIzLAotIEZDX1JKVF9QUkxJX1JFUSA9IDB4MjQsCi0gRkNfUkpUX0lOVkxfQVRUID0gMHgyNSwKKyAgRkNfUkpUX01DQVNUX0VSUiA9IDB4MjIsCisgIEZDX1JKVF9NQ0FTVF9FVCA9IDB4MjMsCisgIEZDX1JKVF9QUkxJX1JFUSA9IDB4MjQsCisgIEZDX1JKVF9JTlZMX0FUVCA9IDB4MjUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9WRU5ET1IgPSAweGZmLAorICBGQ19SSlRfVkVORE9SID0gMHhmZiwKIH07CiAjZGVmaW5lIEZDX0RFRl9FX0RfVE9WIDIwMDBVTAogI2RlZmluZSBGQ19ERUZfUl9BX1RPViAxMDAwMFVMCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ncy5oCmluZGV4IGI0MWZjNTYuLjA1YjZjNTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ncy5oCkBAIC0yMSw2MCArMjEsNjAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGZjX2N0X2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY3RfcmV2OwotIF9fdTggY3RfaW5faWRbM107Ci0gX191OCBjdF9mc190eXBlOwotIF9fdTggY3RfZnNfc3VidHlwZTsKKyAgX191OCBjdF9yZXY7CisgIF9fdTggY3RfaW5faWRbM107CisgIF9fdTggY3RfZnNfdHlwZTsKKyAgX191OCBjdF9mc19zdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGN0X29wdGlvbnM7Ci0gX191OCBfY3RfcmVzdmQxOwotIF9fYmUxNiBjdF9jbWQ7Ci0gX19iZTE2IGN0X21yX3NpemU7CisgIF9fdTggY3Rfb3B0aW9uczsKKyAgX191OCBfY3RfcmVzdmQxOworICBfX2JlMTYgY3RfY21kOworICBfX2JlMTYgY3RfbXJfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfY3RfcmVzdmQyOwotIF9fdTggY3RfcmVhc29uOwotIF9fdTggY3RfZXhwbGFuOwotIF9fdTggY3RfdmVuZG9yOworICBfX3U4IF9jdF9yZXN2ZDI7CisgIF9fdTggY3RfcmVhc29uOworICBfX3U4IGN0X2V4cGxhbjsKKyAgX191OCBjdF92ZW5kb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRkNfQ1RfSERSX0xFTiAxNgogZW51bSBmY19jdF9yZXYgewotIEZDX0NUX1JFViA9IDEKKyAgRkNfQ1RfUkVWID0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2N0X2ZzX3R5cGUgewotIEZDX0ZTVF9BTElBUyA9IDB4ZjgsCi0gRkNfRlNUX01HTVQgPSAweGZhLAorICBGQ19GU1RfQUxJQVMgPSAweGY4LAorICBGQ19GU1RfTUdNVCA9IDB4ZmEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0ZTVF9USU1FID0gMHhmYiwKLSBGQ19GU1RfRElSID0gMHhmYywKKyAgRkNfRlNUX1RJTUUgPSAweGZiLAorICBGQ19GU1RfRElSID0gMHhmYywKIH07CiBlbnVtIGZjX2N0X2NtZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0ZTX1JKVCA9IDB4ODAwMSwKLSBGQ19GU19BQ0MgPSAweDgwMDIsCisgIEZDX0ZTX1JKVCA9IDB4ODAwMSwKKyAgRkNfRlNfQUNDID0gMHg4MDAyLAogfTsKIGVudW0gZmNfY3RfcmVhc29uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRlNfUkpUX0NNRCA9IDB4MDEsCi0gRkNfRlNfUkpUX1ZFUiA9IDB4MDIsCi0gRkNfRlNfUkpUX0xPRyA9IDB4MDMsCi0gRkNfRlNfUkpUX0lVU0laID0gMHgwNCwKKyAgRkNfRlNfUkpUX0NNRCA9IDB4MDEsCisgIEZDX0ZTX1JKVF9WRVIgPSAweDAyLAorICBGQ19GU19SSlRfTE9HID0gMHgwMywKKyAgRkNfRlNfUkpUX0lVU0laID0gMHgwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRlNfUkpUX0JTWSA9IDB4MDUsCi0gRkNfRlNfUkpUX1BST1RPID0gMHgwNywKLSBGQ19GU19SSlRfVU5BQkwgPSAweDA5LAotIEZDX0ZTX1JKVF9VTlNVUCA9IDB4MGIsCisgIEZDX0ZTX1JKVF9CU1kgPSAweDA1LAorICBGQ19GU19SSlRfUFJPVE8gPSAweDA3LAorICBGQ19GU19SSlRfVU5BQkwgPSAweDA5LAorICBGQ19GU19SSlRfVU5TVVAgPSAweDBiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2N0X2V4cGxhbiB7Ci0gRkNfRlNfRVhQX05PTkUgPSAweDAwLAotIEZDX0ZTX0VYUF9QSUQgPSAweDAxLAorICBGQ19GU19FWFBfTk9ORSA9IDB4MDAsCisgIEZDX0ZTX0VYUF9QSUQgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GU19FWFBfUE5BTSA9IDB4MDIsCi0gRkNfRlNfRVhQX05OQU0gPSAweDAzLAotIEZDX0ZTX0VYUF9DT1MgPSAweDA0LAotIEZDX0ZTX0VYUF9GVE5SID0gMHgwNywKKyAgRkNfRlNfRVhQX1BOQU0gPSAweDAyLAorICBGQ19GU19FWFBfTk5BTSA9IDB4MDMsCisgIEZDX0ZTX0VYUF9DT1MgPSAweDA0LAorICBGQ19GU19FWFBfRlROUiA9IDB4MDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX25zLmggYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfbnMuaAppbmRleCA2MjdjZDQ2Li5jZDAyOGYzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfbnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfbnMuaApAQCAtMjIsNDggKzIyLDQ4IEBACiAjZGVmaW5lIEZDX05TX1NVQlRZUEUgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZmNfbnNfcmVxIHsKLSBGQ19OU19HQV9OWFQgPSAweDAxMDAsCi0gRkNfTlNfR0lfQSA9IDB4MDEwMSwKLSBGQ19OU19HUE5fSUQgPSAweDAxMTIsCisgIEZDX05TX0dBX05YVCA9IDB4MDEwMCwKKyAgRkNfTlNfR0lfQSA9IDB4MDEwMSwKKyAgRkNfTlNfR1BOX0lEID0gMHgwMTEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19OU19HTk5fSUQgPSAweDAxMTMsCi0gRkNfTlNfR1NQTl9JRCA9IDB4MDExOCwKLSBGQ19OU19HSURfUE4gPSAweDAxMjEsCi0gRkNfTlNfR0lEX05OID0gMHgwMTMxLAorICBGQ19OU19HTk5fSUQgPSAweDAxMTMsCisgIEZDX05TX0dTUE5fSUQgPSAweDAxMTgsCisgIEZDX05TX0dJRF9QTiA9IDB4MDEyMSwKKyAgRkNfTlNfR0lEX05OID0gMHgwMTMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19OU19HSURfRlQgPSAweDAxNzEsCi0gRkNfTlNfR1BOX0ZUID0gMHgwMTcyLAotIEZDX05TX0dJRF9QVCA9IDB4MDFhMSwKLSBGQ19OU19SUE5fSUQgPSAweDAyMTIsCisgIEZDX05TX0dJRF9GVCA9IDB4MDE3MSwKKyAgRkNfTlNfR1BOX0ZUID0gMHgwMTcyLAorICBGQ19OU19HSURfUFQgPSAweDAxYTEsCisgIEZDX05TX1JQTl9JRCA9IDB4MDIxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfTlNfUk5OX0lEID0gMHgwMjEzLAotIEZDX05TX1JGVF9JRCA9IDB4MDIxNywKLSBGQ19OU19SU1BOX0lEID0gMHgwMjE4LAotIEZDX05TX1JGRl9JRCA9IDB4MDIxZiwKKyAgRkNfTlNfUk5OX0lEID0gMHgwMjEzLAorICBGQ19OU19SRlRfSUQgPSAweDAyMTcsCisgIEZDX05TX1JTUE5fSUQgPSAweDAyMTgsCisgIEZDX05TX1JGRl9JRCA9IDB4MDIxZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfTlNfUlNOTl9OTiA9IDB4MDIzOSwKKyAgRkNfTlNfUlNOTl9OTiA9IDB4MDIzOSwKIH07CiBlbnVtIGZjX25zX3B0IHsKLSBGQ19OU19VTklEX1BPUlQgPSAweDAwLAorICBGQ19OU19VTklEX1BPUlQgPSAweDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19OU19OX1BPUlQgPSAweDAxLAotIEZDX05TX05MX1BPUlQgPSAweDAyLAotIEZDX05TX0ZOTF9QT1JUID0gMHgwMywKLSBGQ19OU19OWF9QT1JUID0gMHg3ZiwKKyAgRkNfTlNfTl9QT1JUID0gMHgwMSwKKyAgRkNfTlNfTkxfUE9SVCA9IDB4MDIsCisgIEZDX05TX0ZOTF9QT1JUID0gMHgwMywKKyAgRkNfTlNfTlhfUE9SVCA9IDB4N2YsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX05TX0ZfUE9SVCA9IDB4ODEsCi0gRkNfTlNfRkxfUE9SVCA9IDB4ODIsCi0gRkNfTlNfRV9QT1JUID0gMHg4NCwKLSBGQ19OU19CX1BPUlQgPSAweDg1LAorICBGQ19OU19GX1BPUlQgPSAweDgxLAorICBGQ19OU19GTF9QT1JUID0gMHg4MiwKKyAgRkNfTlNfRV9QT1JUID0gMHg4NCwKKyAgRkNfTlNfQl9QT1JUID0gMHg4NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX25zX3B0X29iaiB7Ci0gX191OCBwdF90eXBlOworICBfX3U4IHB0X3R5cGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19uc19maWQgewotIF9fdTggZnBfZmxhZ3M7Ci0gX191OCBmcF9maWRbM107CisgIF9fdTggZnBfZmxhZ3M7CisgIF9fdTggZnBfZmlkWzNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX05TX0ZJRF9MQVNUIDB4ODAKQEAgLTcxLDc2ICs3MSw3NiBAQAogI2RlZmluZSBGQ19OU19CUFcgMzIKIHN0cnVjdCBmY19uc19mdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZmZfdHlwZV9tYXBbRkNfTlNfVFlQRVMgLyBGQ19OU19CUFddOworICBfX2JlMzIgZmZfdHlwZV9tYXBbRkNfTlNfVFlQRVMgLyBGQ19OU19CUFddOwogfTsKIHN0cnVjdCBmY19uc19mZiB7Ci0gX19iZTMyIGZkX2ZlYXRbRkNfTlNfVFlQRVMgKiA0IC8gRkNfTlNfQlBXXTsKKyAgX19iZTMyIGZkX2ZlYXRbRkNfTlNfVFlQRVMgKiA0IC8gRkNfTlNfQlBXXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX25zX2dpZF9wdCB7Ci0gX191OCBmbl9wdF90eXBlOwotIF9fdTggZm5fZG9tYWluX2lkX3Njb3BlOworICBfX3U4IGZuX3B0X3R5cGU7CisgIF9fdTggZm5fZG9tYWluX2lkX3Njb3BlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZuX2FyZWFfaWRfc2NvcGU7Ci0gX191OCBmbl9yZXN2ZDsKKyAgX191OCBmbl9hcmVhX2lkX3Njb3BlOworICBfX3U4IGZuX3Jlc3ZkOwogfTsKIHN0cnVjdCBmY19uc19naWRfZnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZuX3Jlc3ZkOwotIF9fdTggZm5fZG9tYWluX2lkX3Njb3BlOwotIF9fdTggZm5fYXJlYV9pZF9zY29wZTsKLSBfX3U4IGZuX2ZjNF90eXBlOworICBfX3U4IGZuX3Jlc3ZkOworICBfX3U4IGZuX2RvbWFpbl9pZF9zY29wZTsKKyAgX191OCBmbl9hcmVhX2lkX3Njb3BlOworICBfX3U4IGZuX2ZjNF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZ3BuX2Z0X3Jlc3AgewotIF9fdTggZnBfZmxhZ3M7Ci0gX191OCBmcF9maWRbM107CisgIF9fdTggZnBfZmxhZ3M7CisgIF9fdTggZnBfZmlkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZnBfcmVzdmQ7Ci0gX19iZTY0IGZwX3d3cG47CisgIF9fYmUzMiBmcF9yZXN2ZDsKKyAgX19iZTY0IGZwX3d3cG47CiB9Owogc3RydWN0IGZjX25zX2dpZF9wbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBmbl93d3BuOworICBfX2JlNjQgZm5fd3dwbjsKIH07CiBzdHJ1Y3QgZmNfZ2lkX3BuX3Jlc3AgewotIF9fdTggZnBfcmVzdmQ7CisgIF9fdTggZnBfcmVzdmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZnBfZmlkWzNdOworICBfX3U4IGZwX2ZpZFszXTsKIH07CiBzdHJ1Y3QgZmNfZ3Nwbl9yZXNwIHsKLSBfX3U4IGZwX25hbWVfbGVuOworICBfX3U4IGZwX25hbWVfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZwX25hbWVbXTsKKyAgY2hhciBmcF9uYW1lW107CiB9Owogc3RydWN0IGZjX25zX3JmdF9pZCB7Ci0gc3RydWN0IGZjX25zX2ZpZCBmcl9maWQ7CisgIHN0cnVjdCBmY19uc19maWQgZnJfZmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmNfbnNfZnRzIGZyX2Z0czsKKyAgc3RydWN0IGZjX25zX2Z0cyBmcl9mdHM7CiB9Owogc3RydWN0IGZjX25zX3JuX2lkIHsKLSBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKKyAgc3RydWN0IGZjX25zX2ZpZCBmcl9maWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBmcl93d247CisgIF9fYmU2NCBmcl93d247CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIHN0cnVjdCBmY19uc19yc25uIHsKLSBfX2JlNjQgZnJfd3duOworICBfX2JlNjQgZnJfd3duOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZyX25hbWVfbGVuOwotIGNoYXIgZnJfbmFtZVtdOworICBfX3U4IGZyX25hbWVfbGVuOworICBjaGFyIGZyX25hbWVbXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IGZjX25zX3JzcG4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKLSBfX3U4IGZyX25hbWVfbGVuOwotIGNoYXIgZnJfbmFtZVtdOworICBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKKyAgX191OCBmcl9uYW1lX2xlbjsKKyAgY2hhciBmcl9uYW1lW107CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfbnNfcmZmX2lkIHsKLSBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKLSBfX3U4IGZyX3Jlc3ZkWzJdOwotIF9fdTggZnJfZmVhdDsKKyAgc3RydWN0IGZjX25zX2ZpZCBmcl9maWQ7CisgIF9fdTggZnJfcmVzdmRbMl07CisgIF9fdTggZnJfZmVhdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmcl90eXBlOworICBfX3U4IGZyX3R5cGU7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfYnNnX2ZjLmggYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9ic2dfZmMuaAppbmRleCBhY2Q5ODc0Li44ZTk4ZmU2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9ic2dfZmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9ic2dfZmMuaApAQCAtMzMsMTggKzMzLDE4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQ19CU0dfUlBUX0NUIChGQ19CU0dfUlBUX01BU0sgfCAweDAwMDAwMDAyKQogc3RydWN0IGZjX2JzZ19ob3N0X2FkZF9ycG9ydCB7Ci0gdWludDhfdCByZXNlcnZlZDsKLSB1aW50OF90IHBvcnRfaWRbM107CisgIHVpbnQ4X3QgcmVzZXJ2ZWQ7CisgIHVpbnQ4X3QgcG9ydF9pZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2JzZ19ob3N0X2RlbF9ycG9ydCB7Ci0gdWludDhfdCByZXNlcnZlZDsKLSB1aW50OF90IHBvcnRfaWRbM107CisgIHVpbnQ4X3QgcmVzZXJ2ZWQ7CisgIHVpbnQ4X3QgcG9ydF9pZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2JzZ19ob3N0X2VscyB7Ci0gdWludDhfdCBjb21tYW5kX2NvZGU7Ci0gdWludDhfdCBwb3J0X2lkWzNdOworICB1aW50OF90IGNvbW1hbmRfY29kZTsKKyAgdWludDhfdCBwb3J0X2lkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEZDX0NURUxTX1NUQVRVU19PSyAweDAwMDAwMDAwCkBAIC01Niw2NiArNTYsNjYgQEAKICNkZWZpbmUgRkNfQ1RFTFNfU1RBVFVTX0ZfQlNZIDB4MDAwMDAwMDYKIHN0cnVjdCBmY19ic2dfY3RlbHNfcmVwbHkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzdGF0dXM7Ci0gc3RydWN0IHsKLSB1aW50OF90IGFjdGlvbjsKLSB1aW50OF90IHJlYXNvbl9jb2RlOworICB1aW50MzJfdCBzdGF0dXM7CisgIHN0cnVjdCB7CisgICAgdWludDhfdCBhY3Rpb247CisgICAgdWludDhfdCByZWFzb25fY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDhfdCByZWFzb25fZXhwbGFuYXRpb247Ci0gdWludDhfdCB2ZW5kb3JfdW5pcXVlOwotIH0gcmp0X2RhdGE7CisgICAgdWludDhfdCByZWFzb25fZXhwbGFuYXRpb247CisgICAgdWludDhfdCB2ZW5kb3JfdW5pcXVlOworICB9IHJqdF9kYXRhOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfYnNnX2hvc3RfY3QgewotIHVpbnQ4X3QgcmVzZXJ2ZWQ7Ci0gdWludDhfdCBwb3J0X2lkWzNdOwotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQwOworICB1aW50OF90IHJlc2VydmVkOworICB1aW50OF90IHBvcnRfaWRbM107CisgIHVpbnQzMl90IHByZWFtYmxlX3dvcmQwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwcmVhbWJsZV93b3JkMTsKLSB1aW50MzJfdCBwcmVhbWJsZV93b3JkMjsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDE7CisgIHVpbnQzMl90IHByZWFtYmxlX3dvcmQyOwogfTsKIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCB2ZW5kb3JfaWQ7Ci0gdWludDMyX3QgdmVuZG9yX2NtZFswXTsKKyAgdWludDY0X3QgdmVuZG9yX2lkOworICB1aW50MzJfdCB2ZW5kb3JfY21kWzBdOwogfTsKIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3JfcmVwbHkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB2ZW5kb3JfcnNwWzBdOworICB1aW50MzJfdCB2ZW5kb3JfcnNwWzBdOwogfTsKIHN0cnVjdCBmY19ic2dfcnBvcnRfZWxzIHsKLSB1aW50OF90IGVsc19jb2RlOworICB1aW50OF90IGVsc19jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfYnNnX3Jwb3J0X2N0IHsKLSB1aW50MzJfdCBwcmVhbWJsZV93b3JkMDsKLSB1aW50MzJfdCBwcmVhbWJsZV93b3JkMTsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDA7CisgIHVpbnQzMl90IHByZWFtYmxlX3dvcmQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwcmVhbWJsZV93b3JkMjsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDI7CiB9Owogc3RydWN0IGZjX2JzZ19yZXF1ZXN0IHsKLSB1aW50MzJfdCBtc2djb2RlOworICB1aW50MzJfdCBtc2djb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGZjX2JzZ19ob3N0X2FkZF9ycG9ydCBoX2FkZHJwb3J0OwotIHN0cnVjdCBmY19ic2dfaG9zdF9kZWxfcnBvcnQgaF9kZWxycG9ydDsKLSBzdHJ1Y3QgZmNfYnNnX2hvc3RfZWxzIGhfZWxzOworICB1bmlvbiB7CisgICAgc3RydWN0IGZjX2JzZ19ob3N0X2FkZF9ycG9ydCBoX2FkZHJwb3J0OworICAgIHN0cnVjdCBmY19ic2dfaG9zdF9kZWxfcnBvcnQgaF9kZWxycG9ydDsKKyAgICBzdHJ1Y3QgZmNfYnNnX2hvc3RfZWxzIGhfZWxzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmNfYnNnX2hvc3RfY3QgaF9jdDsKLSBzdHJ1Y3QgZmNfYnNnX2hvc3RfdmVuZG9yIGhfdmVuZG9yOwotIHN0cnVjdCBmY19ic2dfcnBvcnRfZWxzIHJfZWxzOwotIHN0cnVjdCBmY19ic2dfcnBvcnRfY3Qgcl9jdDsKKyAgICBzdHJ1Y3QgZmNfYnNnX2hvc3RfY3QgaF9jdDsKKyAgICBzdHJ1Y3QgZmNfYnNnX2hvc3RfdmVuZG9yIGhfdmVuZG9yOworICAgIHN0cnVjdCBmY19ic2dfcnBvcnRfZWxzIHJfZWxzOworICAgIHN0cnVjdCBmY19ic2dfcnBvcnRfY3Qgcl9jdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBycXN0X2RhdGE7CisgIH0gcnFzdF9kYXRhOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBmY19ic2dfcmVwbHkgewotIHVpbnQzMl90IHJlc3VsdDsKKyAgdWludDMyX3QgcmVzdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCByZXBseV9wYXlsb2FkX3Jjdl9sZW47Ci0gdW5pb24gewotIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3JfcmVwbHkgdmVuZG9yX3JlcGx5OwotIHN0cnVjdCBmY19ic2dfY3RlbHNfcmVwbHkgY3RlbHNfcmVwbHk7CisgIHVpbnQzMl90IHJlcGx5X3BheWxvYWRfcmN2X2xlbjsKKyAgdW5pb24geworICAgIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3JfcmVwbHkgdmVuZG9yX3JlcGx5OworICAgIHN0cnVjdCBmY19ic2dfY3RlbHNfcmVwbHkgY3RlbHNfcmVwbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gcmVwbHlfZGF0YTsKKyAgfSByZXBseV9kYXRhOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGluay5oIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGluay5oCmluZGV4IGIwNGY0NjQuLmRiYzNjOTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX25ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9uZXRsaW5rLmgKQEAgLTIyLDE2ICsyMiwxNiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ1NJX1RSQU5TUE9SVF9NU0cgTkxNU0dfTUlOX1RZUEUgKyAxCi0jZGVmaW5lIFNDU0lfTkxfR1JQX0ZDX0VWRU5UUyAoMTw8MikKKyNkZWZpbmUgU0NTSV9OTF9HUlBfRkNfRVZFTlRTICgxIDw8IDIpCiAjZGVmaW5lIFNDU0lfTkxfR1JQX0NOVCAzCiBzdHJ1Y3Qgc2NzaV9ubF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IHZlcnNpb247Ci0gdWludDhfdCB0cmFuc3BvcnQ7Ci0gdWludDE2X3QgbWFnaWM7Ci0gdWludDE2X3QgbXNndHlwZTsKKyAgdWludDhfdCB2ZXJzaW9uOworICB1aW50OF90IHRyYW5zcG9ydDsKKyAgdWludDE2X3QgbWFnaWM7CisgIHVpbnQxNl90IG1zZ3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQxNl90IG1zZ2xlbjsKKyAgdWludDE2X3QgbXNnbGVuOwogfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKHNpemVvZih1aW50NjRfdCkpKSk7CiAjZGVmaW5lIFNDU0lfTkxfVkVSU0lPTiAxCiAjZGVmaW5lIFNDU0lfTkxfTUFHSUMgMHhBMUIyCkBAIC00MywxNyArNDMsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDU0lfTkxfTVNHQUxJR04obGVuKSAoKChsZW4pICsgNykgJiB+NykKIHN0cnVjdCBzY3NpX25sX2hvc3RfdmVuZG9yX21zZyB7Ci0gc3RydWN0IHNjc2lfbmxfaGRyIHNubGg7Ci0gdWludDY0X3QgdmVuZG9yX2lkOworICBzdHJ1Y3Qgc2NzaV9ubF9oZHIgc25saDsKKyAgdWludDY0X3QgdmVuZG9yX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MTZfdCBob3N0X25vOwotIHVpbnQxNl90IHZtc2dfZGF0YWxlbjsKKyAgdWludDE2X3QgaG9zdF9ubzsKKyAgdWludDE2X3Qgdm1zZ19kYXRhbGVuOwogfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKHNpemVvZih1aW50NjRfdCkpKSk7CiAjZGVmaW5lIFNDU0lfTkxfVklEX1RZUEVfU0hJRlQgNTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNDU0lfTkxfVklEX1RZUEVfTUFTSyAoKF9fdTY0KTB4RkYgPDwgU0NTSV9OTF9WSURfVFlQRV9TSElGVCkKLSNkZWZpbmUgU0NTSV9OTF9WSURfVFlQRV9QQ0kgKChfX3U2NCkweDAxIDw8IFNDU0lfTkxfVklEX1RZUEVfU0hJRlQpCi0jZGVmaW5lIFNDU0lfTkxfVklEX0lEX01BU0sgKH4gU0NTSV9OTF9WSURfVFlQRV9NQVNLKQotI2RlZmluZSBJTklUX1NDU0lfTkxfSERSKGhkciwgdCwgbXR5cGUsIG1sZW4pICAgeyAgIChoZHIpLT52ZXJzaW9uID0gU0NTSV9OTF9WRVJTSU9OOyAgIChoZHIpLT50cmFuc3BvcnQgPSB0OyAgIChoZHIpLT5tYWdpYyA9IFNDU0lfTkxfTUFHSUM7ICAgKGhkciktPm1zZ3R5cGUgPSBtdHlwZTsgICAoaGRyKS0+bXNnbGVuID0gbWxlbjsgICB9CisjZGVmaW5lIFNDU0lfTkxfVklEX1RZUEVfTUFTSyAoKF9fdTY0KSAweEZGIDw8IFNDU0lfTkxfVklEX1RZUEVfU0hJRlQpCisjZGVmaW5lIFNDU0lfTkxfVklEX1RZUEVfUENJICgoX191NjQpIDB4MDEgPDwgU0NTSV9OTF9WSURfVFlQRV9TSElGVCkKKyNkZWZpbmUgU0NTSV9OTF9WSURfSURfTUFTSyAoflNDU0lfTkxfVklEX1RZUEVfTUFTSykKKyNkZWZpbmUgSU5JVF9TQ1NJX05MX0hEUihoZHIsdCxtdHlwZSxtbGVuKSB7IChoZHIpLT52ZXJzaW9uID0gU0NTSV9OTF9WRVJTSU9OOyAoaGRyKS0+dHJhbnNwb3J0ID0gdDsgKGhkciktPm1hZ2ljID0gU0NTSV9OTF9NQUdJQzsgKGhkciktPm1zZ3R5cGUgPSBtdHlwZTsgKGhkciktPm1zZ2xlbiA9IG1sZW47IH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX25ldGxpbmtfZmMuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX25ldGxpbmtfZmMuaAppbmRleCBjNDc1MTk5Li5kZDRlODM3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9uZXRsaW5rX2ZjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGlua19mYy5oCkBAIC0yMywxNiArMjMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX05MX01TR0FMSUdOKGxlbikgKCgobGVuKSArIDcpICYgfjcpCiBzdHJ1Y3QgZmNfbmxfZXZlbnQgewotIHN0cnVjdCBzY3NpX25sX2hkciBzbmxoOwotIHVpbnQ2NF90IHNlY29uZHM7CisgIHN0cnVjdCBzY3NpX25sX2hkciBzbmxoOworICB1aW50NjRfdCBzZWNvbmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCB2ZW5kb3JfaWQ7Ci0gdWludDE2X3QgaG9zdF9ubzsKLSB1aW50MTZfdCBldmVudF9kYXRhbGVuOwotIHVpbnQzMl90IGV2ZW50X251bTsKKyAgdWludDY0X3QgdmVuZG9yX2lkOworICB1aW50MTZfdCBob3N0X25vOworICB1aW50MTZfdCBldmVudF9kYXRhbGVuOworICB1aW50MzJfdCBldmVudF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGV2ZW50X2NvZGU7Ci0gdWludDMyX3QgZXZlbnRfZGF0YTsKKyAgdWludDMyX3QgZXZlbnRfY29kZTsKKyAgdWludDMyX3QgZXZlbnRfZGF0YTsKIH0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChzaXplb2YodWludDY0X3QpKSkpOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc2VxdWVuY2VyLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2FzZXF1ZW5jZXIuaAppbmRleCBkNWE0Y2Y2Li5mYjU4OTkxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2FzZXF1ZW5jZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2FzZXF1ZW5jZXIuaApAQCAtMTgsNyArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX19TT1VORF9BU0VRVUVOQ0VSX0gKICNkZWZpbmUgX1VBUElfX1NPVU5EX0FTRVFVRU5DRVJfSAotI2RlZmluZSBTTkRSVl9TRVFfVkVSU0lPTiBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OICgxLCAwLCAxKQorI2RlZmluZSBTTkRSVl9TRVFfVkVSU0lPTiBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OKDEsIDAsIDEpCiAjZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9TWVNURU0gMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX1JFU1VMVCAxCkBAIC05NywxMyArOTcsMTMgQEAKIHR5cGVkZWYgdW5zaWduZWQgY2hhciBzbmRfc2VxX2V2ZW50X3R5cGVfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3NlcV9hZGRyIHsKLSB1bnNpZ25lZCBjaGFyIGNsaWVudDsKLSB1bnNpZ25lZCBjaGFyIHBvcnQ7CisgIHVuc2lnbmVkIGNoYXIgY2xpZW50OworICB1bnNpZ25lZCBjaGFyIHBvcnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX2Nvbm5lY3QgewotIHN0cnVjdCBzbmRfc2VxX2FkZHIgc2VuZGVyOwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgZGVzdDsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBzZW5kZXI7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgZGVzdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfQUREUkVTU19VTktOT1dOIDI1MwpAQCAtMTExLDE0NCArMTExLDE0NCBAQAogI2RlZmluZSBTTkRSVl9TRVFfQUREUkVTU19CUk9BRENBU1QgMjU1CiAjZGVmaW5lIFNORFJWX1NFUV9RVUVVRV9ESVJFQ1QgMjUzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfVElNRV9TVEFNUF9USUNLICgwPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfVElNRV9TVEFNUF9SRUFMICgxPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfVElNRV9TVEFNUF9NQVNLICgxPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfVElNRV9NT0RFX0FCUyAoMDw8MSkKKyNkZWZpbmUgU05EUlZfU0VRX1RJTUVfU1RBTVBfVElDSyAoMCA8PCAwKQorI2RlZmluZSBTTkRSVl9TRVFfVElNRV9TVEFNUF9SRUFMICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9USU1FX1NUQU1QX01BU0sgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfU0VRX1RJTUVfTU9ERV9BQlMgKDAgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX01PREVfUkVMICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfVElNRV9NT0RFX01BU0sgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfRklYRUQgKDA8PDIpCi0jZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfVkFSSUFCTEUgKDE8PDIpCisjZGVmaW5lIFNORFJWX1NFUV9USU1FX01PREVfUkVMICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9USU1FX01PREVfTUFTSyAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9TRVFfRVZFTlRfTEVOR1RIX0ZJWEVEICgwIDw8IDIpCisjZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfVkFSSUFCTEUgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfVkFSVVNSICgyPDwyKQotI2RlZmluZSBTTkRSVl9TRVFfRVZFTlRfTEVOR1RIX01BU0sgKDM8PDIpCi0jZGVmaW5lIFNORFJWX1NFUV9QUklPUklUWV9OT1JNQUwgKDA8PDQpCi0jZGVmaW5lIFNORFJWX1NFUV9QUklPUklUWV9ISUdIICgxPDw0KQorI2RlZmluZSBTTkRSVl9TRVFfRVZFTlRfTEVOR1RIX1ZBUlVTUiAoMiA8PCAyKQorI2RlZmluZSBTTkRSVl9TRVFfRVZFTlRfTEVOR1RIX01BU0sgKDMgPDwgMikKKyNkZWZpbmUgU05EUlZfU0VRX1BSSU9SSVRZX05PUk1BTCAoMCA8PCA0KQorI2RlZmluZSBTTkRSVl9TRVFfUFJJT1JJVFlfSElHSCAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BSSU9SSVRZX01BU0sgKDE8PDQpCisjZGVmaW5lIFNORFJWX1NFUV9QUklPUklUWV9NQVNLICgxIDw8IDQpCiBzdHJ1Y3Qgc25kX3NlcV9ldl9ub3RlIHsKLSB1bnNpZ25lZCBjaGFyIGNoYW5uZWw7Ci0gdW5zaWduZWQgY2hhciBub3RlOworICB1bnNpZ25lZCBjaGFyIGNoYW5uZWw7CisgIHVuc2lnbmVkIGNoYXIgbm90ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2ZWxvY2l0eTsKLSB1bnNpZ25lZCBjaGFyIG9mZl92ZWxvY2l0eTsKLSB1bnNpZ25lZCBpbnQgZHVyYXRpb247CisgIHVuc2lnbmVkIGNoYXIgdmVsb2NpdHk7CisgIHVuc2lnbmVkIGNoYXIgb2ZmX3ZlbG9jaXR5OworICB1bnNpZ25lZCBpbnQgZHVyYXRpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX2V2X2N0cmwgewotIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKLSB1bnNpZ25lZCBjaGFyIHVudXNlZDEsIHVudXNlZDIsIHVudXNlZDM7Ci0gdW5zaWduZWQgaW50IHBhcmFtOworICB1bnNpZ25lZCBjaGFyIGNoYW5uZWw7CisgIHVuc2lnbmVkIGNoYXIgdW51c2VkMSwgdW51c2VkMiwgdW51c2VkMzsKKyAgdW5zaWduZWQgaW50IHBhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaWduZWQgaW50IHZhbHVlOworICBzaWduZWQgaW50IHZhbHVlOwogfTsKIHN0cnVjdCBzbmRfc2VxX2V2X3JhdzggewotIHVuc2lnbmVkIGNoYXIgZFsxMl07CisgIHVuc2lnbmVkIGNoYXIgZFsxMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2VxX2V2X3JhdzMyIHsKLSB1bnNpZ25lZCBpbnQgZFszXTsKKyAgdW5zaWduZWQgaW50IGRbM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX2V2X2V4dCB7Ci0gdW5zaWduZWQgaW50IGxlbjsKLSB2b2lkICpwdHI7CisgIHVuc2lnbmVkIGludCBsZW47CisgIHZvaWQgKiBwdHI7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX3Jlc3VsdCB7Ci0gaW50IGV2ZW50OwotIGludCByZXN1bHQ7CisgIGludCBldmVudDsKKyAgaW50IHJlc3VsdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfcmVhbF90aW1lIHsKLSB1bnNpZ25lZCBpbnQgdHZfc2VjOwotIHVuc2lnbmVkIGludCB0dl9uc2VjOworICB1bnNpZ25lZCBpbnQgdHZfc2VjOworICB1bnNpZ25lZCBpbnQgdHZfbnNlYzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bnNpZ25lZCBpbnQgc25kX3NlcV90aWNrX3RpbWVfdDsKIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHsKLSBzbmRfc2VxX3RpY2tfdGltZV90IHRpY2s7Ci0gc3RydWN0IHNuZF9zZXFfcmVhbF90aW1lIHRpbWU7CisgIHNuZF9zZXFfdGlja190aW1lX3QgdGljazsKKyAgc3RydWN0IHNuZF9zZXFfcmVhbF90aW1lIHRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3NrZXcgewotIHVuc2lnbmVkIGludCB2YWx1ZTsKLSB1bnNpZ25lZCBpbnQgYmFzZTsKKyAgdW5zaWduZWQgaW50IHZhbHVlOworICB1bnNpZ25lZCBpbnQgYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zZXFfZXZfcXVldWVfY29udHJvbCB7Ci0gdW5zaWduZWQgY2hhciBxdWV1ZTsKLSB1bnNpZ25lZCBjaGFyIHBhZFszXTsKKyAgdW5zaWduZWQgY2hhciBxdWV1ZTsKKyAgdW5zaWduZWQgY2hhciBwYWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzaWduZWQgaW50IHZhbHVlOwotIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHRpbWU7Ci0gdW5zaWduZWQgaW50IHBvc2l0aW9uOworICB1bmlvbiB7CisgICAgc2lnbmVkIGludCB2YWx1ZTsKKyAgICB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOworICAgIHVuc2lnbmVkIGludCBwb3NpdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfcXVldWVfc2tldyBza2V3OwotIHVuc2lnbmVkIGludCBkMzJbMl07Ci0gdW5zaWduZWQgY2hhciBkOFs4XTsKLSB9IHBhcmFtOworICAgIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3NrZXcgc2tldzsKKyAgICB1bnNpZ25lZCBpbnQgZDMyWzJdOworICAgIHVuc2lnbmVkIGNoYXIgZDhbOF07CisgIH0gcGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2VxX2V2X3F1b3RlIHsKLSBzdHJ1Y3Qgc25kX3NlcV9hZGRyIG9yaWdpbjsKLSB1bnNpZ25lZCBzaG9ydCB2YWx1ZTsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBvcmlnaW47CisgIHVuc2lnbmVkIHNob3J0IHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3NlcV9ldmVudCAqZXZlbnQ7CisgIHN0cnVjdCBzbmRfc2VxX2V2ZW50ICogZXZlbnQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNuZF9zZXFfZXZlbnQgewotIHNuZF9zZXFfZXZlbnRfdHlwZV90IHR5cGU7CisgIHNuZF9zZXFfZXZlbnRfdHlwZV90IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7Ci0gY2hhciB0YWc7Ci0gdW5zaWduZWQgY2hhciBxdWV1ZTsKLSB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOworICBjaGFyIHRhZzsKKyAgdW5zaWduZWQgY2hhciBxdWV1ZTsKKyAgdW5pb24gc25kX3NlcV90aW1lc3RhbXAgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfYWRkciBzb3VyY2U7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OwotIHVuaW9uIHsKLSBzdHJ1Y3Qgc25kX3NlcV9ldl9ub3RlIG5vdGU7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgc291cmNlOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGRlc3Q7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9ldl9ub3RlIG5vdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX2V2X2N0cmwgY29udHJvbDsKLSBzdHJ1Y3Qgc25kX3NlcV9ldl9yYXc4IHJhdzg7Ci0gc3RydWN0IHNuZF9zZXFfZXZfcmF3MzIgcmF3MzI7Ci0gc3RydWN0IHNuZF9zZXFfZXZfZXh0IGV4dDsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9ldl9jdHJsIGNvbnRyb2w7CisgICAgc3RydWN0IHNuZF9zZXFfZXZfcmF3OCByYXc4OworICAgIHN0cnVjdCBzbmRfc2VxX2V2X3JhdzMyIHJhdzMyOworICAgIHN0cnVjdCBzbmRfc2VxX2V2X2V4dCBleHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX2V2X3F1ZXVlX2NvbnRyb2wgcXVldWU7Ci0gdW5pb24gc25kX3NlcV90aW1lc3RhbXAgdGltZTsKLSBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGFkZHI7Ci0gc3RydWN0IHNuZF9zZXFfY29ubmVjdCBjb25uZWN0OworICAgIHN0cnVjdCBzbmRfc2VxX2V2X3F1ZXVlX2NvbnRyb2wgcXVldWU7CisgICAgdW5pb24gc25kX3NlcV90aW1lc3RhbXAgdGltZTsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGFkZHI7CisgICAgc3RydWN0IHNuZF9zZXFfY29ubmVjdCBjb25uZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3NlcV9yZXN1bHQgcmVzdWx0OwotIHN0cnVjdCBzbmRfc2VxX2V2X3F1b3RlIHF1b3RlOwotIH0gZGF0YTsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9yZXN1bHQgcmVzdWx0OworICAgIHN0cnVjdCBzbmRfc2VxX2V2X3F1b3RlIHF1b3RlOworICB9IGRhdGE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX2V2ZW50X2JvdW5jZSB7Ci0gaW50IGVycjsKLSBzdHJ1Y3Qgc25kX3NlcV9ldmVudCBldmVudDsKKyAgaW50IGVycjsKKyAgc3RydWN0IHNuZF9zZXFfZXZlbnQgZXZlbnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX3N5c3RlbV9pbmZvIHsKLSBpbnQgcXVldWVzOwotIGludCBjbGllbnRzOwotIGludCBwb3J0czsKKyAgaW50IHF1ZXVlczsKKyAgaW50IGNsaWVudHM7CisgIGludCBwb3J0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNoYW5uZWxzOwotIGludCBjdXJfY2xpZW50czsKLSBpbnQgY3VyX3F1ZXVlczsKLSBjaGFyIHJlc2VydmVkWzI0XTsKKyAgaW50IGNoYW5uZWxzOworICBpbnQgY3VyX2NsaWVudHM7CisgIGludCBjdXJfcXVldWVzOworICBjaGFyIHJlc2VydmVkWzI0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zZXFfcnVubmluZ19pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIGNsaWVudDsKLSB1bnNpZ25lZCBjaGFyIGJpZ19lbmRpYW47CisgIHVuc2lnbmVkIGNoYXIgY2xpZW50OworICB1bnNpZ25lZCBjaGFyIGJpZ19lbmRpYW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY3B1X21vZGU7Ci0gdW5zaWduZWQgY2hhciBwYWQ7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFsxMl07CisgIHVuc2lnbmVkIGNoYXIgY3B1X21vZGU7CisgIHVuc2lnbmVkIGNoYXIgcGFkOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzEyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfQ0xJRU5UX1NZU1RFTSAwCkBAIC0yNTksMTQ2ICsyNTksMTQ2IEBACiAjZGVmaW5lIE5PX0NMSUVOVCAoKF9fZm9yY2Ugc25kX3NlcV9jbGllbnRfdHlwZV90KSAwKQogI2RlZmluZSBVU0VSX0NMSUVOVCAoKF9fZm9yY2Ugc25kX3NlcV9jbGllbnRfdHlwZV90KSAxKQogI2RlZmluZSBLRVJORUxfQ0xJRU5UICgoX19mb3JjZSBzbmRfc2VxX2NsaWVudF90eXBlX3QpIDIpCi0jZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfQlJPQURDQVNUICgxPDwwKQorI2RlZmluZSBTTkRSVl9TRVFfRklMVEVSX0JST0FEQ0FTVCAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9NVUxUSUNBU1QgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfQk9VTkNFICgxPDwyKQotI2RlZmluZSBTTkRSVl9TRVFfRklMVEVSX1VTRV9FVkVOVCAoMTw8MzEpCisjZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfTVVMVElDQVNUICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfQk9VTkNFICgxIDw8IDIpCisjZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfVVNFX0VWRU5UICgxIDw8IDMxKQogc3RydWN0IHNuZF9zZXFfY2xpZW50X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2xpZW50OwotIHNuZF9zZXFfY2xpZW50X3R5cGVfdCB0eXBlOwotIGNoYXIgbmFtZVs2NF07Ci0gdW5zaWduZWQgaW50IGZpbHRlcjsKKyAgaW50IGNsaWVudDsKKyAgc25kX3NlcV9jbGllbnRfdHlwZV90IHR5cGU7CisgIGNoYXIgbmFtZVs2NF07CisgIHVuc2lnbmVkIGludCBmaWx0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbXVsdGljYXN0X2ZpbHRlcls4XTsKLSB1bnNpZ25lZCBjaGFyIGV2ZW50X2ZpbHRlclszMl07Ci0gaW50IG51bV9wb3J0czsKLSBpbnQgZXZlbnRfbG9zdDsKKyAgdW5zaWduZWQgY2hhciBtdWx0aWNhc3RfZmlsdGVyWzhdOworICB1bnNpZ25lZCBjaGFyIGV2ZW50X2ZpbHRlclszMl07CisgIGludCBudW1fcG9ydHM7CisgIGludCBldmVudF9sb3N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHJlc2VydmVkWzY0XTsKKyAgY2hhciByZXNlcnZlZFs2NF07CiB9Owogc3RydWN0IHNuZF9zZXFfY2xpZW50X3Bvb2wgewotIGludCBjbGllbnQ7CisgIGludCBjbGllbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBvdXRwdXRfcG9vbDsKLSBpbnQgaW5wdXRfcG9vbDsKLSBpbnQgb3V0cHV0X3Jvb207Ci0gaW50IG91dHB1dF9mcmVlOworICBpbnQgb3V0cHV0X3Bvb2w7CisgIGludCBpbnB1dF9wb29sOworICBpbnQgb3V0cHV0X3Jvb207CisgIGludCBvdXRwdXRfZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlucHV0X2ZyZWU7Ci0gY2hhciByZXNlcnZlZFs2NF07CisgIGludCBpbnB1dF9mcmVlOworICBjaGFyIHJlc2VydmVkWzY0XTsKIH07Ci0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfSU5QVVQgKDE8PDApCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfSU5QVVQgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfT1VUUFVUICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0RFU1QgKDE8PDIpCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfREVTVF9DSEFOTkVMICgxPDwzKQotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RJTUVfQkVGT1JFICgxPDw0KQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX09VVFBVVCAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0RFU1QgKDEgPDwgMikKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9ERVNUX0NIQU5ORUwgKDEgPDwgMykKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9USU1FX0JFRk9SRSAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9USU1FX0FGVEVSICgxPDw1KQotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RJTUVfVElDSyAoMTw8NikKLSNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9FVkVOVF9UWVBFICgxPDw3KQotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0lHTk9SRV9PRkYgKDE8PDgpCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfVElNRV9BRlRFUiAoMSA8PCA1KQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RJTUVfVElDSyAoMSA8PCA2KQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0VWRU5UX1RZUEUgKDEgPDwgNykKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9JR05PUkVfT0ZGICgxIDw8IDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RBR19NQVRDSCAoMTw8OSkKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9UQUdfTUFUQ0ggKDEgPDwgOSkKIHN0cnVjdCBzbmRfc2VxX3JlbW92ZV9ldmVudHMgewotIHVuc2lnbmVkIGludCByZW1vdmVfbW9kZTsKLSB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOworICB1bnNpZ25lZCBpbnQgcmVtb3ZlX21vZGU7CisgIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcXVldWU7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OwotIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKLSBpbnQgdHlwZTsKKyAgdW5zaWduZWQgY2hhciBxdWV1ZTsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OworICB1bnNpZ25lZCBjaGFyIGNoYW5uZWw7CisgIGludCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHRhZzsKLSBpbnQgcmVzZXJ2ZWRbMTBdOworICBjaGFyIHRhZzsKKyAgaW50IHJlc2VydmVkWzEwXTsKIH07CiAjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NZU1RFTV9USU1FUiAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9TWVNURU1fQU5OT1VOQ0UgMQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfUkVBRCAoMTw8MCkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1dSSVRFICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfU1lOQ19SRUFEICgxPDwyKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfUkVBRCAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfV1JJVEUgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NZTkNfUkVBRCAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NZTkNfV1JJVEUgKDE8PDMpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9EVVBMRVggKDE8PDQpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9TVUJTX1JFQUQgKDE8PDUpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9TVUJTX1dSSVRFICgxPDw2KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfU1lOQ19XUklURSAoMSA8PCAzKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfRFVQTEVYICgxIDw8IDQpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9TVUJTX1JFQUQgKDEgPDwgNSkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NVQlNfV1JJVEUgKDEgPDwgNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9OT19FWFBPUlQgKDE8PDcpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU1BFQ0lGSUMgKDE8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HRU5FUklDICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR00gKDE8PDIpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9OT19FWFBPUlQgKDEgPDwgNykKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TUEVDSUZJQyAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR0VORVJJQyAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR00gKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HUyAoMTw8MykKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX1hHICgxPDw0KQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfTVQzMiAoMTw8NSkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX0dNMiAoMTw8NikKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX0dTICgxIDw8IDMpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9YRyAoMSA8PCA0KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfTVQzMiAoMSA8PCA1KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR00yICgxIDw8IDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NZTlRIICgxPDwxMCkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9ESVJFQ1RfU0FNUExFICgxPDwxMSkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TQU1QTEUgKDE8PDEyKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0hBUkRXQVJFICgxPDwxNikKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TWU5USCAoMSA8PCAxMCkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9ESVJFQ1RfU0FNUExFICgxIDw8IDExKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NBTVBMRSAoMSA8PCAxMikKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9IQVJEV0FSRSAoMSA8PCAxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU09GVFdBUkUgKDE8PDE3KQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NZTlRIRVNJWkVSICgxPDwxOCkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9QT1JUICgxPDwxOSkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9BUFBMSUNBVElPTiAoMTw8MjApCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU09GVFdBUkUgKDEgPDwgMTcpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU1lOVEhFU0laRVIgKDEgPDwgMTgpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfUE9SVCAoMSA8PCAxOSkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9BUFBMSUNBVElPTiAoMSA8PCAyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19HSVZFTl9QT1JUICgxPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9GTEdfVElNRVNUQU1QICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9GTEdfVElNRV9SRUFMICgxPDwyKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9GTEdfR0lWRU5fUE9SVCAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9GTEdfVElNRVNUQU1QICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19USU1FX1JFQUwgKDEgPDwgMikKIHN0cnVjdCBzbmRfc2VxX3BvcnRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKLSBjaGFyIG5hbWVbNjRdOwotIHVuc2lnbmVkIGludCBjYXBhYmlsaXR5OwotIHVuc2lnbmVkIGludCB0eXBlOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGFkZHI7CisgIGNoYXIgbmFtZVs2NF07CisgIHVuc2lnbmVkIGludCBjYXBhYmlsaXR5OworICB1bnNpZ25lZCBpbnQgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1pZGlfY2hhbm5lbHM7Ci0gaW50IG1pZGlfdm9pY2VzOwotIGludCBzeW50aF92b2ljZXM7Ci0gaW50IHJlYWRfdXNlOworICBpbnQgbWlkaV9jaGFubmVsczsKKyAgaW50IG1pZGlfdm9pY2VzOworICBpbnQgc3ludGhfdm9pY2VzOworICBpbnQgcmVhZF91c2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB3cml0ZV91c2U7Ci0gdm9pZCAqa2VybmVsOwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBjaGFyIHRpbWVfcXVldWU7CisgIGludCB3cml0ZV91c2U7CisgIHZvaWQgKiBrZXJuZWw7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgY2hhciB0aW1lX3F1ZXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHJlc2VydmVkWzU5XTsKKyAgY2hhciByZXNlcnZlZFs1OV07CiB9OwotI2RlZmluZSBTTkRSVl9TRVFfUVVFVUVfRkxHX1NZTkMgKDE8PDApCisjZGVmaW5lIFNORFJWX1NFUV9RVUVVRV9GTEdfU1lOQyAoMSA8PCAwKQogc3RydWN0IHNuZF9zZXFfcXVldWVfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBxdWV1ZTsKLSBpbnQgb3duZXI7Ci0gdW5zaWduZWQgbG9ja2VkOjE7Ci0gY2hhciBuYW1lWzY0XTsKKyAgaW50IHF1ZXVlOworICBpbnQgb3duZXI7CisgIHVuc2lnbmVkIGxvY2tlZCA6IDE7CisgIGNoYXIgbmFtZVs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmbGFnczsKLSBjaGFyIHJlc2VydmVkWzYwXTsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICBjaGFyIHJlc2VydmVkWzYwXTsKIH07CiBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcXVldWU7Ci0gaW50IGV2ZW50czsKLSBzbmRfc2VxX3RpY2tfdGltZV90IHRpY2s7Ci0gc3RydWN0IHNuZF9zZXFfcmVhbF90aW1lIHRpbWU7CisgIGludCBxdWV1ZTsKKyAgaW50IGV2ZW50czsKKyAgc25kX3NlcV90aWNrX3RpbWVfdCB0aWNrOworICBzdHJ1Y3Qgc25kX3NlcV9yZWFsX3RpbWUgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJ1bm5pbmc7Ci0gaW50IGZsYWdzOwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICBpbnQgcnVubmluZzsKKyAgaW50IGZsYWdzOworICBjaGFyIHJlc2VydmVkWzY0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfcXVldWVfdGVtcG8gewotIGludCBxdWV1ZTsKLSB1bnNpZ25lZCBpbnQgdGVtcG87Ci0gaW50IHBwcTsKKyAgaW50IHF1ZXVlOworICB1bnNpZ25lZCBpbnQgdGVtcG87CisgIGludCBwcHE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBza2V3X3ZhbHVlOwotIHVuc2lnbmVkIGludCBza2V3X2Jhc2U7Ci0gY2hhciByZXNlcnZlZFsyNF07CisgIHVuc2lnbmVkIGludCBza2V3X3ZhbHVlOworICB1bnNpZ25lZCBpbnQgc2tld19iYXNlOworICBjaGFyIHJlc2VydmVkWzI0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfVElNRVJfQUxTQSAwCkBAIC00MDYsOTIgKzQwNiw5MiBAQAogI2RlZmluZSBTTkRSVl9TRVFfVElNRVJfTUlESV9USUNLIDIKIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3RpbWVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHF1ZXVlOwotIGludCB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICBpbnQgcXVldWU7CisgIGludCB0eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF90aW1lcl9pZCBpZDsKLSB1bnNpZ25lZCBpbnQgcmVzb2x1dGlvbjsKLSB9IGFsc2E7Ci0gfSB1OworICAgICAgc3RydWN0IHNuZF90aW1lcl9pZCBpZDsKKyAgICAgIHVuc2lnbmVkIGludCByZXNvbHV0aW9uOworICAgIH0gYWxzYTsKKyAgfSB1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHJlc2VydmVkWzY0XTsKKyAgY2hhciByZXNlcnZlZFs2NF07CiB9Owogc3RydWN0IHNuZF9zZXFfcXVldWVfY2xpZW50IHsKLSBpbnQgcXVldWU7CisgIGludCBxdWV1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNsaWVudDsKLSBpbnQgdXNlZDsKLSBjaGFyIHJlc2VydmVkWzY0XTsKKyAgaW50IGNsaWVudDsKKyAgaW50IHVzZWQ7CisgIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NVQlNfRVhDTFVTSVZFICgxPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9TVUJTX1RJTUVTVEFNUCAoMTw8MSkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1VCU19USU1FX1JFQUwgKDE8PDIpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NVQlNfRVhDTFVTSVZFICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NVQlNfVElNRVNUQU1QICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NVQlNfVElNRV9SRUFMICgxIDw8IDIpCiBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgc2VuZGVyOwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgZGVzdDsKLSB1bnNpZ25lZCBpbnQgdm9pY2VzOwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBzZW5kZXI7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgZGVzdDsKKyAgdW5zaWduZWQgaW50IHZvaWNlczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHF1ZXVlOwotIHVuc2lnbmVkIGNoYXIgcGFkWzNdOwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICB1bnNpZ25lZCBjaGFyIHF1ZXVlOworICB1bnNpZ25lZCBjaGFyIHBhZFszXTsKKyAgY2hhciByZXNlcnZlZFs2NF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX1FVRVJZX1NVQlNfUkVBRCAwCiAjZGVmaW5lIFNORFJWX1NFUV9RVUVSWV9TVUJTX1dSSVRFIDEKIHN0cnVjdCBzbmRfc2VxX3F1ZXJ5X3N1YnMgewotIHN0cnVjdCBzbmRfc2VxX2FkZHIgcm9vdDsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciByb290OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHlwZTsKLSBpbnQgaW5kZXg7Ci0gaW50IG51bV9zdWJzOwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKKyAgaW50IHR5cGU7CisgIGludCBpbmRleDsKKyAgaW50IG51bV9zdWJzOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcXVldWU7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICB1bnNpZ25lZCBjaGFyIHF1ZXVlOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9QVkVSU0lPTiBfSU9SICgnUycsIDB4MDAsIGludCkKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0NMSUVOVF9JRCBfSU9SICgnUycsIDB4MDEsIGludCkKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ1MnLCAweDAwLCBpbnQpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9DTElFTlRfSUQgX0lPUignUycsIDB4MDEsIGludCkKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NZU1RFTV9JTkZPIF9JT1dSKCdTJywgMHgwMiwgc3RydWN0IHNuZF9zZXFfc3lzdGVtX2luZm8pCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9SVU5OSU5HX01PREUgX0lPV1IoJ1MnLCAweDAzLCBzdHJ1Y3Qgc25kX3NlcV9ydW5uaW5nX2luZm8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX0NMSUVOVF9JTkZPIF9JT1dSKCdTJywgMHgxMCwgc3RydWN0IHNuZF9zZXFfY2xpZW50X2luZm8pCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfQ0xJRU5UX0lORk8gX0lPVyAoJ1MnLCAweDExLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfaW5mbykKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9DTElFTlRfSU5GTyBfSU9XKCdTJywgMHgxMSwgc3RydWN0IHNuZF9zZXFfY2xpZW50X2luZm8pCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9DUkVBVEVfUE9SVCBfSU9XUignUycsIDB4MjAsIHN0cnVjdCBzbmRfc2VxX3BvcnRfaW5mbykKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0RFTEVURV9QT1JUIF9JT1cgKCdTJywgMHgyMSwgc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfREVMRVRFX1BPUlQgX0lPVygnUycsIDB4MjEsIHN0cnVjdCBzbmRfc2VxX3BvcnRfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfUE9SVF9JTkZPIF9JT1dSKCdTJywgMHgyMiwgc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1BPUlRfSU5GTyBfSU9XICgnUycsIDB4MjMsIHN0cnVjdCBzbmRfc2VxX3BvcnRfaW5mbykKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NVQlNDUklCRV9QT1JUIF9JT1cgKCdTJywgMHgzMCwgc3RydWN0IHNuZF9zZXFfcG9ydF9zdWJzY3JpYmUpCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9VTlNVQlNDUklCRV9QT1JUIF9JT1cgKCdTJywgMHgzMSwgc3RydWN0IHNuZF9zZXFfcG9ydF9zdWJzY3JpYmUpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUE9SVF9JTkZPIF9JT1coJ1MnLCAweDIzLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X2luZm8pCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TVUJTQ1JJQkVfUE9SVCBfSU9XKCdTJywgMHgzMCwgc3RydWN0IHNuZF9zZXFfcG9ydF9zdWJzY3JpYmUpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9VTlNVQlNDUklCRV9QT1JUIF9JT1coJ1MnLCAweDMxLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9DUkVBVEVfUVVFVUUgX0lPV1IoJ1MnLCAweDMyLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfREVMRVRFX1FVRVVFIF9JT1cgKCdTJywgMHgzMywgc3RydWN0IHNuZF9zZXFfcXVldWVfaW5mbykKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0RFTEVURV9RVUVVRSBfSU9XKCdTJywgMHgzMywgc3RydWN0IHNuZF9zZXFfcXVldWVfaW5mbykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9RVUVVRV9JTkZPIF9JT1dSKCdTJywgMHgzNCwgc3RydWN0IHNuZF9zZXFfcXVldWVfaW5mbykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9JTkZPIF9JT1dSKCdTJywgMHgzNSwgc3RydWN0IHNuZF9zZXFfcXVldWVfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfTkFNRURfUVVFVUUgX0lPV1IoJ1MnLCAweDM2LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX1NUQVRVUyBfSU9XUignUycsIDB4NDAsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3N0YXR1cykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9RVUVVRV9URU1QTyBfSU9XUignUycsIDB4NDEsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3RlbXBvKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1FVRVVFX1RFTVBPIF9JT1cgKCdTJywgMHg0Miwgc3RydWN0IHNuZF9zZXFfcXVldWVfdGVtcG8pCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfVEVNUE8gX0lPVygnUycsIDB4NDIsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3RlbXBvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9RVUVVRV9PV05FUiBfSU9XUignUycsIDB4NDMsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX293bmVyKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1FVRVVFX09XTkVSIF9JT1cgKCdTJywgMHg0NCwgc3RydWN0IHNuZF9zZXFfcXVldWVfb3duZXIpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfT1dORVIgX0lPVygnUycsIDB4NDQsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX293bmVyKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX1RJTUVSIF9JT1dSKCdTJywgMHg0NSwgc3RydWN0IHNuZF9zZXFfcXVldWVfdGltZXIpCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfVElNRVIgX0lPVyAoJ1MnLCAweDQ2LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV90aW1lcikKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9USU1FUiBfSU9XKCdTJywgMHg0Niwgc3RydWN0IHNuZF9zZXFfcXVldWVfdGltZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX0NMSUVOVCBfSU9XUignUycsIDB4NDksIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX2NsaWVudCkKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9DTElFTlQgX0lPVyAoJ1MnLCAweDRhLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9jbGllbnQpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfQ0xJRU5UIF9JT1coJ1MnLCAweDRhLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9jbGllbnQpCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfQ0xJRU5UX1BPT0wgX0lPV1IoJ1MnLCAweDRiLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfcG9vbCkKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9DTElFTlRfUE9PTCBfSU9XICgnUycsIDB4NGMsIHN0cnVjdCBzbmRfc2VxX2NsaWVudF9wb29sKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX0NMSUVOVF9QT09MIF9JT1coJ1MnLCAweDRjLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfcG9vbCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9SRU1PVkVfRVZFTlRTIF9JT1cgKCdTJywgMHg0ZSwgc3RydWN0IHNuZF9zZXFfcmVtb3ZlX2V2ZW50cykKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1JFTU9WRV9FVkVOVFMgX0lPVygnUycsIDB4NGUsIHN0cnVjdCBzbmRfc2VxX3JlbW92ZV9ldmVudHMpCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9RVUVSWV9TVUJTIF9JT1dSKCdTJywgMHg0Ziwgc3RydWN0IHNuZF9zZXFfcXVlcnlfc3VicykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9TVUJTQ1JJUFRJT04gX0lPV1IoJ1MnLCAweDUwLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSkKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1FVRVJZX05FWFRfQ0xJRU5UIF9JT1dSKCdTJywgMHg1MSwgc3RydWN0IHNuZF9zZXFfY2xpZW50X2luZm8pCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc291bmQuaAppbmRleCA5ZDE4N2FhLi4xNDE5ZmU4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNvdW5kLmgKQEAgLTE5LDk3MyArMTksOTc3IEBACiAjaWZuZGVmIF9VQVBJX19TT1VORF9BU09VTkRfSAogI2RlZmluZSBfVUFQSV9fU09VTkRfQVNPVU5EX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OKG1ham9yLCBtaW5vciwgc3VibWlub3IpICgoKG1ham9yKTw8MTYpfCgobWlub3IpPDw4KXwoc3VibWlub3IpKQorI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OKG1ham9yLG1pbm9yLHN1Ym1pbm9yKSAoKChtYWpvcikgPDwgMTYpIHwgKChtaW5vcikgPDwgOCkgfCAoc3VibWlub3IpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfUFJPVE9DT0xfTUFKT1IodmVyc2lvbikgKCgodmVyc2lvbik+PjE2KSYweGZmZmYpCi0jZGVmaW5lIFNORFJWX1BST1RPQ09MX01JTk9SKHZlcnNpb24pICgoKHZlcnNpb24pPj44KSYweGZmKQotI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9NSUNSTyh2ZXJzaW9uKSAoKHZlcnNpb24pJjB4ZmYpCi0jZGVmaW5lIFNORFJWX1BST1RPQ09MX0lOQ09NUEFUSUJMRShrdmVyc2lvbiwgdXZlcnNpb24pICAgKFNORFJWX1BST1RPQ09MX01BSk9SKGt2ZXJzaW9uKSAhPSBTTkRSVl9QUk9UT0NPTF9NQUpPUih1dmVyc2lvbikgfHwgICAoU05EUlZfUFJPVE9DT0xfTUFKT1Ioa3ZlcnNpb24pID09IFNORFJWX1BST1RPQ09MX01BSk9SKHV2ZXJzaW9uKSAmJiAgIFNORFJWX1BST1RPQ09MX01JTk9SKGt2ZXJzaW9uKSAhPSBTTkRSVl9QUk9UT0NPTF9NSU5PUih1dmVyc2lvbikpKQorI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9NQUpPUih2ZXJzaW9uKSAoKCh2ZXJzaW9uKSA+PiAxNikgJiAweGZmZmYpCisjZGVmaW5lIFNORFJWX1BST1RPQ09MX01JTk9SKHZlcnNpb24pICgoKHZlcnNpb24pID4+IDgpICYgMHhmZikKKyNkZWZpbmUgU05EUlZfUFJPVE9DT0xfTUlDUk8odmVyc2lvbikgKCh2ZXJzaW9uKSAmIDB4ZmYpCisjZGVmaW5lIFNORFJWX1BST1RPQ09MX0lOQ09NUEFUSUJMRShrdmVyc2lvbix1dmVyc2lvbikgKFNORFJWX1BST1RPQ09MX01BSk9SKGt2ZXJzaW9uKSAhPSBTTkRSVl9QUk9UT0NPTF9NQUpPUih1dmVyc2lvbikgfHwgKFNORFJWX1BST1RPQ09MX01BSk9SKGt2ZXJzaW9uKSA9PSBTTkRSVl9QUk9UT0NPTF9NQUpPUih1dmVyc2lvbikgJiYgU05EUlZfUFJPVE9DT0xfTUlOT1Ioa3ZlcnNpb24pICE9IFNORFJWX1BST1RPQ09MX01JTk9SKHV2ZXJzaW9uKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9hZXNfaWVjOTU4IHsKLSB1bnNpZ25lZCBjaGFyIHN0YXR1c1syNF07Ci0gdW5zaWduZWQgY2hhciBzdWJjb2RlWzE0N107Ci0gdW5zaWduZWQgY2hhciBwYWQ7CisgIHVuc2lnbmVkIGNoYXIgc3RhdHVzWzI0XTsKKyAgdW5zaWduZWQgY2hhciBzdWJjb2RlWzE0N107CisgIHVuc2lnbmVkIGNoYXIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRpZ19zdWJmcmFtZVs0XTsKKyAgdW5zaWduZWQgY2hhciBkaWdfc3ViZnJhbWVbNF07CiB9Owogc3RydWN0IHNuZF9jZWFfODYxX2F1ZF9pZiB7Ci0gdW5zaWduZWQgY2hhciBkYjFfY3RfY2M7CisgIHVuc2lnbmVkIGNoYXIgZGIxX2N0X2NjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRiMl9zZl9zczsKLSB1bnNpZ25lZCBjaGFyIGRiMzsKLSB1bnNpZ25lZCBjaGFyIGRiNF9jYTsKLSB1bnNpZ25lZCBjaGFyIGRiNV9kbWluaF9sc3Y7CisgIHVuc2lnbmVkIGNoYXIgZGIyX3NmX3NzOworICB1bnNpZ25lZCBjaGFyIGRiMzsKKyAgdW5zaWduZWQgY2hhciBkYjRfY2E7CisgIHVuc2lnbmVkIGNoYXIgZGI1X2RtaW5oX2xzdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTTkRSVl9IV0RFUF9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMSwgMCwgMSkKIGVudW0gewotIFNORFJWX0hXREVQX0lGQUNFX09QTDIgPSAwLAorICBTTkRSVl9IV0RFUF9JRkFDRV9PUEwyID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfSFdERVBfSUZBQ0VfT1BMMywKLSBTTkRSVl9IV0RFUF9JRkFDRV9PUEw0LAotIFNORFJWX0hXREVQX0lGQUNFX1NCMTZDU1AsCi0gU05EUlZfSFdERVBfSUZBQ0VfRU1VMTBLMSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfT1BMMywKKyAgU05EUlZfSFdERVBfSUZBQ0VfT1BMNCwKKyAgU05EUlZfSFdERVBfSUZBQ0VfU0IxNkNTUCwKKyAgU05EUlZfSFdERVBfSUZBQ0VfRU1VMTBLMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfSFdERVBfSUZBQ0VfWVNTMjI1LAotIFNORFJWX0hXREVQX0lGQUNFX0lDUzIxMTUsCi0gU05EUlZfSFdERVBfSUZBQ0VfU1NDQVBFLAotIFNORFJWX0hXREVQX0lGQUNFX1ZYLAorICBTTkRSVl9IV0RFUF9JRkFDRV9ZU1MyMjUsCisgIFNORFJWX0hXREVQX0lGQUNFX0lDUzIxMTUsCisgIFNORFJWX0hXREVQX0lGQUNFX1NTQ0FQRSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfVlgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0hXREVQX0lGQUNFX01JWEFSVCwKLSBTTkRSVl9IV0RFUF9JRkFDRV9VU1gyWSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9FTVVYX1dBVkVUQUJMRSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9CTFVFVE9PVEgsCisgIFNORFJWX0hXREVQX0lGQUNFX01JWEFSVCwKKyAgU05EUlZfSFdERVBfSUZBQ0VfVVNYMlksCisgIFNORFJWX0hXREVQX0lGQUNFX0VNVVhfV0FWRVRBQkxFLAorICBTTkRSVl9IV0RFUF9JRkFDRV9CTFVFVE9PVEgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0hXREVQX0lGQUNFX1VTWDJZX1BDTSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9QQ1hIUiwKLSBTTkRSVl9IV0RFUF9JRkFDRV9TQl9SQywKLSBTTkRSVl9IV0RFUF9JRkFDRV9IREEsCisgIFNORFJWX0hXREVQX0lGQUNFX1VTWDJZX1BDTSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfUENYSFIsCisgIFNORFJWX0hXREVQX0lGQUNFX1NCX1JDLAorICBTTkRSVl9IV0RFUF9JRkFDRV9IREEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0hXREVQX0lGQUNFX1VTQl9TVFJFQU0sCi0gU05EUlZfSFdERVBfSUZBQ0VfRldfRElDRSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9MQVNUID0gU05EUlZfSFdERVBfSUZBQ0VfRldfRElDRQorICBTTkRSVl9IV0RFUF9JRkFDRV9VU0JfU1RSRUFNLAorICBTTkRSVl9IV0RFUF9JRkFDRV9GV19ESUNFLAorICBTTkRSVl9IV0RFUF9JRkFDRV9GV19GSVJFV09SS1MsCisgIFNORFJWX0hXREVQX0lGQUNFX0ZXX0JFQk9CLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfSFdERVBfSUZBQ0VfTEFTVCA9IFNORFJWX0hXREVQX0lGQUNFX0ZXX0JFQk9CCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfaHdkZXBfaW5mbyB7Ci0gdW5zaWduZWQgaW50IGRldmljZTsKLSBpbnQgY2FyZDsKLSB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKKyAgdW5zaWduZWQgaW50IGRldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKLSBpbnQgaWZhY2U7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CisgIGludCBjYXJkOworICB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKKyAgaW50IGlmYWNlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfaHdkZXBfZHNwX3N0YXR1cyB7Ci0gdW5zaWduZWQgaW50IHZlcnNpb247Ci0gdW5zaWduZWQgY2hhciBpZFszMl07Ci0gdW5zaWduZWQgaW50IG51bV9kc3BzOworICB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRzcF9sb2FkZWQ7Ci0gdW5zaWduZWQgaW50IGNoaXBfcmVhZHk7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFsxNl07CisgIHVuc2lnbmVkIGNoYXIgaWRbMzJdOworICB1bnNpZ25lZCBpbnQgbnVtX2RzcHM7CisgIHVuc2lnbmVkIGludCBkc3BfbG9hZGVkOworICB1bnNpZ25lZCBpbnQgY2hpcF9yZWFkeTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTZdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2h3ZGVwX2RzcF9pbWFnZSB7Ci0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGNoYXIgbmFtZVs2NF07Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmltYWdlOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBsZW5ndGg7Ci0gdW5zaWduZWQgbG9uZyBkcml2ZXJfZGF0YTsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzY0XTsKKyAgdW5zaWduZWQgY2hhciBfX3VzZXIgKiBpbWFnZTsKKyAgc2l6ZV90IGxlbmd0aDsKKyAgdW5zaWduZWQgbG9uZyBkcml2ZXJfZGF0YTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBTTkRSVl9IV0RFUF9JT0NUTF9QVkVSU0lPTiBfSU9SICgnSCcsIDB4MDAsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX0lORk8gX0lPUiAoJ0gnLCAweDAxLCBzdHJ1Y3Qgc25kX2h3ZGVwX2luZm8pCisjZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ0gnLCAweDAwLCBpbnQpCisjZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX0lORk8gX0lPUignSCcsIDB4MDEsIHN0cnVjdCBzbmRfaHdkZXBfaW5mbykKICNkZWZpbmUgU05EUlZfSFdERVBfSU9DVExfRFNQX1NUQVRVUyBfSU9SKCdIJywgMHgwMiwgc3RydWN0IHNuZF9od2RlcF9kc3Bfc3RhdHVzKQotI2RlZmluZSBTTkRSVl9IV0RFUF9JT0NUTF9EU1BfTE9BRCBfSU9XKCdIJywgMHgwMywgc3RydWN0IHNuZF9od2RlcF9kc3BfaW1hZ2UpCi0jZGVmaW5lIFNORFJWX1BDTV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMiwgMCwgMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9IV0RFUF9JT0NUTF9EU1BfTE9BRCBfSU9XKCdIJywgMHgwMywgc3RydWN0IHNuZF9od2RlcF9kc3BfaW1hZ2UpCisjZGVmaW5lIFNORFJWX1BDTV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMiwgMCwgMTIpCiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgc25kX3BjbV91ZnJhbWVzX3Q7CiB0eXBlZGVmIHNpZ25lZCBsb25nIHNuZF9wY21fc2ZyYW1lc190OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFNORFJWX1BDTV9DTEFTU19HRU5FUklDID0gMCwKKyAgU05EUlZfUENNX0NMQVNTX0dFTkVSSUMgPSAwLAorICBTTkRSVl9QQ01fQ0xBU1NfTVVMVEksCisgIFNORFJWX1BDTV9DTEFTU19NT0RFTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfUENNX0NMQVNTX01VTFRJLAotIFNORFJWX1BDTV9DTEFTU19NT0RFTSwKLSBTTkRSVl9QQ01fQ0xBU1NfRElHSVRJWkVSLAotIFNORFJWX1BDTV9DTEFTU19MQVNUID0gU05EUlZfUENNX0NMQVNTX0RJR0lUSVpFUiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX1BDTV9DTEFTU19ESUdJVElaRVIsCisgIFNORFJWX1BDTV9DTEFTU19MQVNUID0gU05EUlZfUENNX0NMQVNTX0RJR0lUSVpFUiwKIH07CiBlbnVtIHsKLSBTTkRSVl9QQ01fU1VCQ0xBU1NfR0VORVJJQ19NSVggPSAwLAotIFNORFJWX1BDTV9TVUJDTEFTU19NVUxUSV9NSVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1BDTV9TVUJDTEFTU19MQVNUID0gU05EUlZfUENNX1NVQkNMQVNTX01VTFRJX01JWCwKKyAgU05EUlZfUENNX1NVQkNMQVNTX0dFTkVSSUNfTUlYID0gMCwKKyAgU05EUlZfUENNX1NVQkNMQVNTX01VTFRJX01JWCwKKyAgU05EUlZfUENNX1NVQkNMQVNTX0xBU1QgPSBTTkRSVl9QQ01fU1VCQ0xBU1NfTVVMVElfTUlYLAogfTsKLWVudW0gewotIFNORFJWX1BDTV9TVFJFQU1fUExBWUJBQ0sgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9QQ01fU1RSRUFNX0NBUFRVUkUsCi0gU05EUlZfUENNX1NUUkVBTV9MQVNUID0gU05EUlZfUENNX1NUUkVBTV9DQVBUVVJFLAorZW51bSB7CisgIFNORFJWX1BDTV9TVFJFQU1fUExBWUJBQ0sgPSAwLAorICBTTkRSVl9QQ01fU1RSRUFNX0NBUFRVUkUsCisgIFNORFJWX1BDTV9TVFJFQU1fTEFTVCA9IFNORFJWX1BDTV9TVFJFQU1fQ0FQVFVSRSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdHlwZWRlZiBpbnQgX19iaXR3aXNlIHNuZF9wY21fYWNjZXNzX3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fQUNDRVNTX01NQVBfSU5URVJMRUFWRUQgKChfX2ZvcmNlIHNuZF9wY21fYWNjZXNzX3QpIDApCiAjZGVmaW5lIFNORFJWX1BDTV9BQ0NFU1NfTU1BUF9OT05JTlRFUkxFQVZFRCAoKF9fZm9yY2Ugc25kX3BjbV9hY2Nlc3NfdCkgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9BQ0NFU1NfTU1BUF9DT01QTEVYICgoX19mb3JjZSBzbmRfcGNtX2FjY2Vzc190KSAyKQogI2RlZmluZSBTTkRSVl9QQ01fQUNDRVNTX1JXX0lOVEVSTEVBVkVEICgoX19mb3JjZSBzbmRfcGNtX2FjY2Vzc190KSAzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0FDQ0VTU19SV19OT05JTlRFUkxFQVZFRCAoKF9fZm9yY2Ugc25kX3BjbV9hY2Nlc3NfdCkgNCkKICNkZWZpbmUgU05EUlZfUENNX0FDQ0VTU19MQVNUIFNORFJWX1BDTV9BQ0NFU1NfUldfTk9OSU5URVJMRUFWRUQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGludCBfX2JpdHdpc2Ugc25kX3BjbV9mb3JtYXRfdDsKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TOCAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTggKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDEpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzE2X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMTZfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDMpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTE2X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMTZfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDUpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzI0X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjRfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDcpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTI0X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjRfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDkpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzMyX0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAxMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzMyX0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAxMSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMzJfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDEyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMzJfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDEzKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUX0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAxNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRkxPQVRfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE1KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUNjRfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0X0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAxNykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9JRUM5NThfU1VCRlJBTUVfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9JRUM5NThfU1VCRlJBTUVfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE5KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX01VX0xBVyAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMjApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0FfTEFXICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAyMSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9JTUFfQURQQ00gKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDIyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9NUEVHICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAyMykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9HU00gKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDI0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TUEVDSUFMICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzMSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjRfM0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzI0XzNCRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMzMpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTI0XzNMRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UyNF8zQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDM1KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyMF8zTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDM2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjBfM0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzNykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjBfM0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTIwXzNCRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMzkpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzE4XzNMRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MxOF8zQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQxKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UxOF8zTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMThfM0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0MykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9HNzIzXzI0ICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRzcyM18yNF8xQiAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDUpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRzcyM180MCAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0c3MjNfNDBfMUIgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQ3KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0RTRF9VOCAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDgpCi0jZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UxNl9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDkpCi0jZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfTEFTVCBTTkRSVl9QQ01fRk9STUFUX0RTRF9VMTZfTEUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UxNl9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDkpCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UzMl9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNTApCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UxNl9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNTEpCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UzMl9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0xBU1QgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTMyX0JFCiAjaWZkZWYgU05EUlZfTElUVExFX0VORElBTgogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MxNiBTTkRSVl9QQ01fRk9STUFUX1MxNl9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UxNiBTTkRSVl9QQ01fRk9STUFUX1UxNl9MRQotI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyNCBTTkRSVl9QQ01fRk9STUFUX1MyNF9MRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjQgU05EUlZfUENNX0ZPUk1BVF9TMjRfTEUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjQgU05EUlZfUENNX0ZPUk1BVF9VMjRfTEUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMzIgU05EUlZfUENNX0ZPUk1BVF9TMzJfTEUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMzIgU05EUlZfUENNX0ZPUk1BVF9VMzJfTEUKLSNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVCBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUX0xFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUIFNORFJWX1BDTV9GT1JNQVRfRkxPQVRfTEUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0IFNORFJWX1BDTV9GT1JNQVRfRkxPQVQ2NF9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9MRQogI2VuZGlmCi0jaWZkZWYgU05EUlZfQklHX0VORElBTgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZmRlZiBTTkRSVl9CSUdfRU5ESUFOCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzE2IFNORFJWX1BDTV9GT1JNQVRfUzE2X0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTE2IFNORFJWX1BDTV9GT1JNQVRfVTE2X0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzI0IFNORFJWX1BDTV9GT1JNQVRfUzI0X0JFCi0jZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTI0IFNORFJWX1BDTV9GT1JNQVRfVTI0X0JFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UyNCBTTkRSVl9QQ01fRk9STUFUX1UyNF9CRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MzMiBTTkRSVl9QQ01fRk9STUFUX1MzMl9CRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UzMiBTTkRSVl9QQ01fRk9STUFUX1UzMl9CRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUIFNORFJWX1BDTV9GT1JNQVRfRkxPQVRfQkUKLSNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0IFNORFJWX1BDTV9GT1JNQVRfRkxPQVQ2NF9CRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0IFNORFJWX1BDTV9GT1JNQVRfRkxPQVQ2NF9CRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9CRQogI2VuZGlmCiB0eXBlZGVmIGludCBfX2JpdHdpc2Ugc25kX3BjbV9zdWJmb3JtYXRfdDsKLSNkZWZpbmUgU05EUlZfUENNX1NVQkZPUk1BVF9TVEQgKChfX2ZvcmNlIHNuZF9wY21fc3ViZm9ybWF0X3QpIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fU1VCRk9STUFUX1NURCAoKF9fZm9yY2Ugc25kX3BjbV9zdWJmb3JtYXRfdCkgMCkKICNkZWZpbmUgU05EUlZfUENNX1NVQkZPUk1BVF9MQVNUIFNORFJWX1BDTV9TVUJGT1JNQVRfU1RECiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX01NQVAgMHgwMDAwMDAwMQogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19NTUFQX1ZBTElEIDB4MDAwMDAwMDIKLSNkZWZpbmUgU05EUlZfUENNX0lORk9fRE9VQkxFIDB4MDAwMDAwMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0RPVUJMRSAweDAwMDAwMDA0CiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0JBVENIIDB4MDAwMDAwMTAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fSU5URVJMRUFWRUQgMHgwMDAwMDEwMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19OT05JTlRFUkxFQVZFRCAweDAwMDAwMjAwCi0jZGVmaW5lIFNORFJWX1BDTV9JTkZPX0NPTVBMRVggMHgwMDAwMDQwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0lORk9fQ09NUExFWCAweDAwMDAwNDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0JMT0NLX1RSQU5TRkVSIDB4MDAwMTAwMDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fT1ZFUlJBTkdFIDB4MDAwMjAwMDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fUkVTVU1FIDB4MDAwNDAwMDAKLSNkZWZpbmUgU05EUlZfUENNX0lORk9fUEFVU0UgMHgwMDA4MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0lORk9fUEFVU0UgMHgwMDA4MDAwMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19IQUxGX0RVUExFWCAweDAwMTAwMDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0pPSU5UX0RVUExFWCAweDAwMjAwMDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX1NZTkNfU1RBUlQgMHgwMDQwMDAwMAotI2RlZmluZSBTTkRSVl9QQ01fSU5GT19OT19QRVJJT0RfV0FLRVVQIDB4MDA4MDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9JTkZPX05PX1BFUklPRF9XQUtFVVAgMHgwMDgwMDAwMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19IQVNfV0FMTF9DTE9DSyAweDAxMDAwMDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0ZJRk9fSU5fRlJBTUVTIDB4ODAwMDAwMDAKIHR5cGVkZWYgaW50IF9fYml0d2lzZSBzbmRfcGNtX3N0YXRlX3Q7Ci0jZGVmaW5lIFNORFJWX1BDTV9TVEFURV9PUEVOICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfT1BFTiAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSAwKQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfU0VUVVAgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgMSkKICNkZWZpbmUgU05EUlZfUENNX1NUQVRFX1BSRVBBUkVEICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDIpCiAjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9SVU5OSU5HICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDMpCi0jZGVmaW5lIFNORFJWX1BDTV9TVEFURV9YUlVOICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfWFJVTiAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSA0KQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfRFJBSU5JTkcgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgNSkKICNkZWZpbmUgU05EUlZfUENNX1NUQVRFX1BBVVNFRCAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSA2KQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfU1VTUEVOREVEICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDcpCi0jZGVmaW5lIFNORFJWX1BDTV9TVEFURV9ESVNDT05ORUNURUQgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9ESVNDT05ORUNURUQgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgOCkKICNkZWZpbmUgU05EUlZfUENNX1NUQVRFX0xBU1QgU05EUlZfUENNX1NUQVRFX0RJU0NPTk5FQ1RFRAogZW51bSB7Ci0gU05EUlZfUENNX01NQVBfT0ZGU0VUX0RBVEEgPSAweDAwMDAwMDAwLAotIFNORFJWX1BDTV9NTUFQX09GRlNFVF9TVEFUVVMgPSAweDgwMDAwMDAwLAorICBTTkRSVl9QQ01fTU1BUF9PRkZTRVRfREFUQSA9IDB4MDAwMDAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1BDTV9NTUFQX09GRlNFVF9DT05UUk9MID0gMHg4MTAwMDAwMCwKKyAgU05EUlZfUENNX01NQVBfT0ZGU0VUX1NUQVRVUyA9IDB4ODAwMDAwMDAsCisgIFNORFJWX1BDTV9NTUFQX09GRlNFVF9DT05UUk9MID0gMHg4MTAwMDAwMCwKIH07CiB1bmlvbiBzbmRfcGNtX3N5bmNfaWQgewotIHVuc2lnbmVkIGNoYXIgaWRbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBpZDE2WzhdOwotIHVuc2lnbmVkIGludCBpZDMyWzRdOworICB1bnNpZ25lZCBjaGFyIGlkWzE2XTsKKyAgdW5zaWduZWQgc2hvcnQgaWQxNls4XTsKKyAgdW5zaWduZWQgaW50IGlkMzJbNF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfcGNtX2luZm8geworICB1bnNpZ25lZCBpbnQgZGV2aWNlOworICB1bnNpZ25lZCBpbnQgc3ViZGV2aWNlOworICBpbnQgc3RyZWFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGV2aWNlOwotIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7Ci0gaW50IHN0cmVhbTsKLSBpbnQgY2FyZDsKKyAgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGNoYXIgaWRbNjRdOworICB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOworICB1bnNpZ25lZCBjaGFyIHN1Ym5hbWVbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKLSB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwotIHVuc2lnbmVkIGNoYXIgc3VibmFtZVszMl07Ci0gaW50IGRldl9jbGFzczsKKyAgaW50IGRldl9jbGFzczsKKyAgaW50IGRldl9zdWJjbGFzczsKKyAgdW5zaWduZWQgaW50IHN1YmRldmljZXNfY291bnQ7CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2VzX2F2YWlsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGV2X3N1YmNsYXNzOwotIHVuc2lnbmVkIGludCBzdWJkZXZpY2VzX2NvdW50OwotIHVuc2lnbmVkIGludCBzdWJkZXZpY2VzX2F2YWlsOwotIHVuaW9uIHNuZF9wY21fc3luY19pZCBzeW5jOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgdW5pb24gc25kX3BjbV9zeW5jX2lkIHN5bmM7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKIHR5cGVkZWYgaW50IHNuZF9wY21faHdfcGFyYW1fdDsKLSNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0FDQ0VTUyAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fQUNDRVNTIDAKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0ZPUk1BVCAxCiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9TVUJGT1JNQVQgMgogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fRklSU1RfTUFTSyBTTkRSVl9QQ01fSFdfUEFSQU1fQUNDRVNTCi0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9MQVNUX01BU0sgU05EUlZfUENNX0hXX1BBUkFNX1NVQkZPUk1BVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0xBU1RfTUFTSyBTTkRSVl9QQ01fSFdfUEFSQU1fU1VCRk9STUFUCiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9TQU1QTEVfQklUUyA4CiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9GUkFNRV9CSVRTIDkKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0NIQU5ORUxTIDEwCi0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9SQVRFIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fUkFURSAxMQogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fUEVSSU9EX1RJTUUgMTIKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1BFUklPRF9TSVpFIDEzCiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9QRVJJT0RfQllURVMgMTQKLSNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1BFUklPRFMgMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9QRVJJT0RTIDE1CiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9CVUZGRVJfVElNRSAxNgogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fQlVGRkVSX1NJWkUgMTcKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0JVRkZFUl9CWVRFUyAxOAotI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fVElDS19USU1FIDE5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fVElDS19USU1FIDE5CiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9GSVJTVF9JTlRFUlZBTCBTTkRSVl9QQ01fSFdfUEFSQU1fU0FNUExFX0JJVFMKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0xBU1RfSU5URVJWQUwgU05EUlZfUENNX0hXX1BBUkFNX1RJQ0tfVElNRQotI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1TX05PUkVTQU1QTEUgKDE8PDApCi0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTVNfRVhQT1JUX0JVRkZFUiAoMTw8MSkKKyNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNU19OT1JFU0FNUExFICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1TX05PX1BFUklPRF9XQUtFVVAgKDE8PDIpCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTVNfRVhQT1JUX0JVRkZFUiAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1TX05PX1BFUklPRF9XQUtFVVAgKDEgPDwgMikKIHN0cnVjdCBzbmRfaW50ZXJ2YWwgewotIHVuc2lnbmVkIGludCBtaW4sIG1heDsKLSB1bnNpZ25lZCBpbnQgb3Blbm1pbjoxLAorICB1bnNpZ25lZCBpbnQgbWluLCBtYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG9wZW5tYXg6MSwKLSBpbnRlZ2VyOjEsCi0gZW1wdHk6MTsKKyAgdW5zaWduZWQgaW50IG9wZW5taW4gOiAxLCBvcGVubWF4IDogMSwgaW50ZWdlciA6IDEsIGVtcHR5IDogMTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9NQVNLX01BWCAyNTYKIHN0cnVjdCBzbmRfbWFzayB7Ci0gX191MzIgYml0c1soU05EUlZfTUFTS19NQVgrMzEpLzMyXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJpdHNbKFNORFJWX01BU0tfTUFYICsgMzEpIC8gMzJdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3BjbV9od19wYXJhbXMgewotIHVuc2lnbmVkIGludCBmbGFnczsKLSBzdHJ1Y3Qgc25kX21hc2sgbWFza3NbU05EUlZfUENNX0hXX1BBUkFNX0xBU1RfTUFTSyAtCi0gU05EUlZfUENNX0hXX1BBUkFNX0ZJUlNUX01BU0sgKyAxXTsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX21hc2sgbXJlc1s1XTsKLSBzdHJ1Y3Qgc25kX2ludGVydmFsIGludGVydmFsc1tTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9JTlRFUlZBTCAtCi0gU05EUlZfUENNX0hXX1BBUkFNX0ZJUlNUX0lOVEVSVkFMICsgMV07Ci0gc3RydWN0IHNuZF9pbnRlcnZhbCBpcmVzWzldOworICBzdHJ1Y3Qgc25kX21hc2sgbWFza3NbU05EUlZfUENNX0hXX1BBUkFNX0xBU1RfTUFTSyAtIFNORFJWX1BDTV9IV19QQVJBTV9GSVJTVF9NQVNLICsgMV07CisgIHN0cnVjdCBzbmRfbWFzayBtcmVzWzVdOworICBzdHJ1Y3Qgc25kX2ludGVydmFsIGludGVydmFsc1tTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9JTlRFUlZBTCAtIFNORFJWX1BDTV9IV19QQVJBTV9GSVJTVF9JTlRFUlZBTCArIDFdOworICBzdHJ1Y3Qgc25kX2ludGVydmFsIGlyZXNbOV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBybWFzazsKLSB1bnNpZ25lZCBpbnQgY21hc2s7Ci0gdW5zaWduZWQgaW50IGluZm87Ci0gdW5zaWduZWQgaW50IG1zYml0czsKKyAgdW5zaWduZWQgaW50IHJtYXNrOworICB1bnNpZ25lZCBpbnQgY21hc2s7CisgIHVuc2lnbmVkIGludCBpbmZvOworICB1bnNpZ25lZCBpbnQgbXNiaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmF0ZV9udW07Ci0gdW5zaWduZWQgaW50IHJhdGVfZGVuOwotIHNuZF9wY21fdWZyYW1lc190IGZpZm9fc2l6ZTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgdW5zaWduZWQgaW50IHJhdGVfbnVtOworICB1bnNpZ25lZCBpbnQgcmF0ZV9kZW47CisgIHNuZF9wY21fdWZyYW1lc190IGZpZm9fc2l6ZTsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFNORFJWX1BDTV9UU1RBTVBfTk9ORSA9IDAsCi0gU05EUlZfUENNX1RTVEFNUF9FTkFCTEUsCisgIFNORFJWX1BDTV9UU1RBTVBfTk9ORSA9IDAsCisgIFNORFJWX1BDTV9UU1RBTVBfRU5BQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9QQ01fVFNUQU1QX0xBU1QgPSBTTkRSVl9QQ01fVFNUQU1QX0VOQUJMRSwKKyAgU05EUlZfUENNX1RTVEFNUF9MQVNUID0gU05EUlZfUENNX1RTVEFNUF9FTkFCTEUsCiB9Owogc3RydWN0IHNuZF9wY21fc3dfcGFyYW1zIHsKLSBpbnQgdHN0YW1wX21vZGU7CisgIGludCB0c3RhbXBfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBlcmlvZF9zdGVwOwotIHVuc2lnbmVkIGludCBzbGVlcF9taW47Ci0gc25kX3BjbV91ZnJhbWVzX3QgYXZhaWxfbWluOwotIHNuZF9wY21fdWZyYW1lc190IHhmZXJfYWxpZ247CisgIHVuc2lnbmVkIGludCBwZXJpb2Rfc3RlcDsKKyAgdW5zaWduZWQgaW50IHNsZWVwX21pbjsKKyAgc25kX3BjbV91ZnJhbWVzX3QgYXZhaWxfbWluOworICBzbmRfcGNtX3VmcmFtZXNfdCB4ZmVyX2FsaWduOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzbmRfcGNtX3VmcmFtZXNfdCBzdGFydF90aHJlc2hvbGQ7Ci0gc25kX3BjbV91ZnJhbWVzX3Qgc3RvcF90aHJlc2hvbGQ7Ci0gc25kX3BjbV91ZnJhbWVzX3Qgc2lsZW5jZV90aHJlc2hvbGQ7Ci0gc25kX3BjbV91ZnJhbWVzX3Qgc2lsZW5jZV9zaXplOworICBzbmRfcGNtX3VmcmFtZXNfdCBzdGFydF90aHJlc2hvbGQ7CisgIHNuZF9wY21fdWZyYW1lc190IHN0b3BfdGhyZXNob2xkOworICBzbmRfcGNtX3VmcmFtZXNfdCBzaWxlbmNlX3RocmVzaG9sZDsKKyAgc25kX3BjbV91ZnJhbWVzX3Qgc2lsZW5jZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzbmRfcGNtX3VmcmFtZXNfdCBib3VuZGFyeTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgc25kX3BjbV91ZnJhbWVzX3QgYm91bmRhcnk7CisgIHVuc2lnbmVkIGludCBwcm90bzsKKyAgdW5zaWduZWQgaW50IHRzdGFtcF90eXBlOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzU2XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9wY21fY2hhbm5lbF9pbmZvIHsKKyAgdW5zaWduZWQgaW50IGNoYW5uZWw7CisgIF9fa2VybmVsX29mZl90IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNoYW5uZWw7Ci0gX19rZXJuZWxfb2ZmX3Qgb2Zmc2V0OwotIHVuc2lnbmVkIGludCBmaXJzdDsKLSB1bnNpZ25lZCBpbnQgc3RlcDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBmaXJzdDsKKyAgdW5zaWduZWQgaW50IHN0ZXA7CiB9Owogc3RydWN0IHNuZF9wY21fc3RhdHVzIHsKLSBzbmRfcGNtX3N0YXRlX3Qgc3RhdGU7Ci0gc3RydWN0IHRpbWVzcGVjIHRyaWdnZXJfdHN0YW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwotIHNuZF9wY21fdWZyYW1lc190IGFwcGxfcHRyOwotIHNuZF9wY21fdWZyYW1lc190IGh3X3B0cjsKLSBzbmRfcGNtX3NmcmFtZXNfdCBkZWxheTsKKyAgc25kX3BjbV9zdGF0ZV90IHN0YXRlOworICBzdHJ1Y3QgdGltZXNwZWMgdHJpZ2dlcl90c3RhbXA7CisgIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7CisgIHNuZF9wY21fdWZyYW1lc190IGFwcGxfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbDsKLSBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9tYXg7Ci0gc25kX3BjbV91ZnJhbWVzX3Qgb3ZlcnJhbmdlOwotIHNuZF9wY21fc3RhdGVfdCBzdXNwZW5kZWRfc3RhdGU7CisgIHNuZF9wY21fdWZyYW1lc190IGh3X3B0cjsKKyAgc25kX3BjbV9zZnJhbWVzX3QgZGVsYXk7CisgIHNuZF9wY21fdWZyYW1lc190IGF2YWlsOworICBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkX2FsaWdubWVudDsKLSBzdHJ1Y3QgdGltZXNwZWMgYXVkaW9fdHN0YW1wOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNTYtc2l6ZW9mKHN0cnVjdCB0aW1lc3BlYyldOworICBzbmRfcGNtX3VmcmFtZXNfdCBvdmVycmFuZ2U7CisgIHNuZF9wY21fc3RhdGVfdCBzdXNwZW5kZWRfc3RhdGU7CisgIF9fdTMyIHJlc2VydmVkX2FsaWdubWVudDsKKyAgc3RydWN0IHRpbWVzcGVjIGF1ZGlvX3RzdGFtcDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNTYgLSBzaXplb2Yoc3RydWN0IHRpbWVzcGVjKV07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfcGNtX21tYXBfc3RhdHVzIHsKLSBzbmRfcGNtX3N0YXRlX3Qgc3RhdGU7Ci0gaW50IHBhZDE7Ci0gc25kX3BjbV91ZnJhbWVzX3QgaHdfcHRyOworICBzbmRfcGNtX3N0YXRlX3Qgc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7Ci0gc25kX3BjbV9zdGF0ZV90IHN1c3BlbmRlZF9zdGF0ZTsKLSBzdHJ1Y3QgdGltZXNwZWMgYXVkaW9fdHN0YW1wOworICBpbnQgcGFkMTsKKyAgc25kX3BjbV91ZnJhbWVzX3QgaHdfcHRyOworICBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOworICBzbmRfcGNtX3N0YXRlX3Qgc3VzcGVuZGVkX3N0YXRlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHRpbWVzcGVjIGF1ZGlvX3RzdGFtcDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9wY21fbW1hcF9jb250cm9sIHsKLSBzbmRfcGNtX3VmcmFtZXNfdCBhcHBsX3B0cjsKLSBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9taW47Ci19OworICBzbmRfcGNtX3VmcmFtZXNfdCBhcHBsX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9IV1NZTkMgKDE8PDApCi0jZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9BUFBMICgxPDwxKQotI2RlZmluZSBTTkRSVl9QQ01fU1lOQ19QVFJfQVZBSUxfTUlOICgxPDwyKQorICBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9taW47Cit9OworI2RlZmluZSBTTkRSVl9QQ01fU1lOQ19QVFJfSFdTWU5DICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9BUFBMICgxIDw8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fU1lOQ19QVFJfQVZBSUxfTUlOICgxIDw8IDIpCiBzdHJ1Y3Qgc25kX3BjbV9zeW5jX3B0ciB7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5pb24gewotIHN0cnVjdCBzbmRfcGNtX21tYXBfc3RhdHVzIHN0YXR1czsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgICBzdHJ1Y3Qgc25kX3BjbV9tbWFwX3N0YXR1cyBzdGF0dXM7CisgICAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CisgIH0gczsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHM7Ci0gdW5pb24gewotIHN0cnVjdCBzbmRfcGNtX21tYXBfY29udHJvbCBjb250cm9sOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGM7CisgICAgc3RydWN0IHNuZF9wY21fbW1hcF9jb250cm9sIGNvbnRyb2w7CisgICAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CisgIH0gYzsKIH07Ci1zdHJ1Y3Qgc25kX3hmZXJpIHsKLSBzbmRfcGNtX3NmcmFtZXNfdCByZXN1bHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpidWY7Ci0gc25kX3BjbV91ZnJhbWVzX3QgZnJhbWVzOworc3RydWN0IHNuZF94ZmVyaSB7CisgIHNuZF9wY21fc2ZyYW1lc190IHJlc3VsdDsKKyAgdm9pZCBfX3VzZXIgKiBidWY7CisgIHNuZF9wY21fdWZyYW1lc190IGZyYW1lczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF94ZmVybiB7CisgIHNuZF9wY21fc2ZyYW1lc190IHJlc3VsdDsKKyAgdm9pZCBfX3VzZXIgKiBfX3VzZXIgKiBidWZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzbmRfcGNtX3NmcmFtZXNfdCByZXN1bHQ7Ci0gdm9pZCBfX3VzZXIgKiBfX3VzZXIgKmJ1ZnM7Ci0gc25kX3BjbV91ZnJhbWVzX3QgZnJhbWVzOworICBzbmRfcGNtX3VmcmFtZXNfdCBmcmFtZXM7Cit9OworZW51bSB7CisgIFNORFJWX1BDTV9UU1RBTVBfVFlQRV9HRVRUSU1FT0ZEQVkgPSAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfUENNX1RTVEFNUF9UWVBFX01PTk9UT05JQywKKyAgU05EUlZfUENNX1RTVEFNUF9UWVBFX01PTk9UT05JQ19SQVcsCisgIFNORFJWX1BDTV9UU1RBTVBfVFlQRV9MQVNUID0gU05EUlZfUENNX1RTVEFNUF9UWVBFX01PTk9UT05JQ19SQVcsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFNORFJWX1BDTV9UU1RBTVBfVFlQRV9HRVRUSU1FT0ZEQVkgPSAwLAotIFNORFJWX1BDTV9UU1RBTVBfVFlQRV9NT05PVE9OSUMsCi0gU05EUlZfUENNX1RTVEFNUF9UWVBFX0xBU1QgPSBTTkRSVl9QQ01fVFNUQU1QX1RZUEVfTU9OT1RPTklDLAorICBTTkRSVl9DSE1BUF9VTktOT1dOID0gMCwKKyAgU05EUlZfQ0hNQVBfTkEsCisgIFNORFJWX0NITUFQX01PTk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9GTCwKKyAgU05EUlZfQ0hNQVBfRlIsCisgIFNORFJWX0NITUFQX1JMLAorICBTTkRSVl9DSE1BUF9SUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX0ZDLAorICBTTkRSVl9DSE1BUF9MRkUsCisgIFNORFJWX0NITUFQX1NMLAorICBTTkRSVl9DSE1BUF9TUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX1JDLAorICBTTkRSVl9DSE1BUF9GTEMsCisgIFNORFJWX0NITUFQX0ZSQywKKyAgU05EUlZfQ0hNQVBfUkxDLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfQ0hNQVBfUlJDLAorICBTTkRSVl9DSE1BUF9GTFcsCisgIFNORFJWX0NITUFQX0ZSVywKKyAgU05EUlZfQ0hNQVBfRkxILAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfQ0hNQVBfRkNILAorICBTTkRSVl9DSE1BUF9GUkgsCisgIFNORFJWX0NITUFQX1RDLAorICBTTkRSVl9DSE1BUF9URkwsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9URlIsCisgIFNORFJWX0NITUFQX1RGQywKKyAgU05EUlZfQ0hNQVBfVFJMLAorICBTTkRSVl9DSE1BUF9UUlIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9UUkMsCisgIFNORFJWX0NITUFQX1RGTEMsCisgIFNORFJWX0NITUFQX1RGUkMsCisgIFNORFJWX0NITUFQX1RTTCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX1RTUiwKKyAgU05EUlZfQ0hNQVBfTExGRSwKKyAgU05EUlZfQ0hNQVBfUkxGRSwKKyAgU05EUlZfQ0hNQVBfQkMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9CTEMsCisgIFNORFJWX0NITUFQX0JSQywKKyAgU05EUlZfQ0hNQVBfTEFTVCA9IFNORFJWX0NITUFQX0JSQywKIH07Ci1lbnVtIHsKLSBTTkRSVl9DSE1BUF9VTktOT1dOID0gMCwKLSBTTkRSVl9DSE1BUF9OQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ0hNQVBfTU9OTywKLSBTTkRSVl9DSE1BUF9GTCwKLSBTTkRSVl9DSE1BUF9GUiwKLSBTTkRSVl9DSE1BUF9STCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ0hNQVBfUlIsCi0gU05EUlZfQ0hNQVBfRkMsCi0gU05EUlZfQ0hNQVBfTEZFLAotIFNORFJWX0NITUFQX1NMLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9TUiwKLSBTTkRSVl9DSE1BUF9SQywKLSBTTkRSVl9DSE1BUF9GTEMsCi0gU05EUlZfQ0hNQVBfRlJDLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9STEMsCi0gU05EUlZfQ0hNQVBfUlJDLAotIFNORFJWX0NITUFQX0ZMVywKLSBTTkRSVl9DSE1BUF9GUlcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX0ZMSCwKLSBTTkRSVl9DSE1BUF9GQ0gsCi0gU05EUlZfQ0hNQVBfRlJILAotIFNORFJWX0NITUFQX1RDLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9URkwsCi0gU05EUlZfQ0hNQVBfVEZSLAotIFNORFJWX0NITUFQX1RGQywKLSBTTkRSVl9DSE1BUF9UUkwsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX1RSUiwKLSBTTkRSVl9DSE1BUF9UUkMsCi0gU05EUlZfQ0hNQVBfVEZMQywKLSBTTkRSVl9DSE1BUF9URlJDLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9UU0wsCi0gU05EUlZfQ0hNQVBfVFNSLAotIFNORFJWX0NITUFQX0xMRkUsCi0gU05EUlZfQ0hNQVBfUkxGRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ0hNQVBfQkMsCi0gU05EUlZfQ0hNQVBfQkxDLAotIFNORFJWX0NITUFQX0JSQywKLSBTTkRSVl9DSE1BUF9MQVNUID0gU05EUlZfQ0hNQVBfQlJDLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07CiAjZGVmaW5lIFNORFJWX0NITUFQX1BPU0lUSU9OX01BU0sgMHhmZmZmCiAjZGVmaW5lIFNORFJWX0NITUFQX1BIQVNFX0lOVkVSU0UgKDB4MDEgPDwgMTYpCiAjZGVmaW5lIFNORFJWX0NITUFQX0RSSVZFUl9TUEVDICgweDAyIDw8IDE2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ0EnLCAweDAwLCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfSU5GTyBfSU9SKCdBJywgMHgwMSwgc3RydWN0IHNuZF9wY21faW5mbykKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1RTVEFNUCBfSU9XKCdBJywgMHgwMiwgaW50KQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfVFRTVEFNUCBfSU9XKCdBJywgMHgwMywgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0hXX1JFRklORSBfSU9XUignQScsIDB4MTAsIHN0cnVjdCBzbmRfcGNtX2h3X3BhcmFtcykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9IV19QQVJBTVMgX0lPV1IoJ0EnLCAweDExLCBzdHJ1Y3Qgc25kX3BjbV9od19wYXJhbXMpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9IV19GUkVFIF9JTygnQScsIDB4MTIpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9TV19QQVJBTVMgX0lPV1IoJ0EnLCAweDEzLCBzdHJ1Y3Qgc25kX3BjbV9zd19wYXJhbXMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfU1RBVFVTIF9JT1IoJ0EnLCAweDIwLCBzdHJ1Y3Qgc25kX3BjbV9zdGF0dXMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfREVMQVkgX0lPUignQScsIDB4MjEsIHNuZF9wY21fc2ZyYW1lc190KQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfSFdTWU5DIF9JTygnQScsIDB4MjIpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9TWU5DX1BUUiBfSU9XUignQScsIDB4MjMsIHN0cnVjdCBzbmRfcGNtX3N5bmNfcHRyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0NIQU5ORUxfSU5GTyBfSU9SKCdBJywgMHgzMiwgc3RydWN0IHNuZF9wY21fY2hhbm5lbF9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1BSRVBBUkUgX0lPKCdBJywgMHg0MCkKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1JFU0VUIF9JTygnQScsIDB4NDEpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9TVEFSVCBfSU8oJ0EnLCAweDQyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0RST1AgX0lPKCdBJywgMHg0MykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9EUkFJTiBfSU8oJ0EnLCAweDQ0KQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUEFVU0UgX0lPVygnQScsIDB4NDUsIGludCkKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1JFV0lORCBfSU9XKCdBJywgMHg0Niwgc25kX3BjbV91ZnJhbWVzX3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUkVTVU1FIF9JTygnQScsIDB4NDcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfWFJVTiBfSU8oJ0EnLCAweDQ4KQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfRk9SV0FSRCBfSU9XKCdBJywgMHg0OSwgc25kX3BjbV91ZnJhbWVzX3QpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9XUklURUlfRlJBTUVTIF9JT1coJ0EnLCAweDUwLCBzdHJ1Y3Qgc25kX3hmZXJpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1JFQURJX0ZSQU1FUyBfSU9SKCdBJywgMHg1MSwgc3RydWN0IHNuZF94ZmVyaSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9XUklURU5fRlJBTUVTIF9JT1coJ0EnLCAweDUyLCBzdHJ1Y3Qgc25kX3hmZXJuKQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUkVBRE5fRlJBTUVTIF9JT1IoJ0EnLCAweDUzLCBzdHJ1Y3Qgc25kX3hmZXJuKQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfTElOSyBfSU9XKCdBJywgMHg2MCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1VOTElOSyBfSU8oJ0EnLCAweDYxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMiwgMCwgMCkKIGVudW0gewotIFNORFJWX1JBV01JRElfU1RSRUFNX09VVFBVVCA9IDAsCisgIFNORFJWX1JBV01JRElfU1RSRUFNX09VVFBVVCA9IDAsCisgIFNORFJWX1JBV01JRElfU1RSRUFNX0lOUFVULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9SQVdNSURJX1NUUkVBTV9JTlBVVCwKLSBTTkRSVl9SQVdNSURJX1NUUkVBTV9MQVNUID0gU05EUlZfUkFXTUlESV9TVFJFQU1fSU5QVVQsCisgIFNORFJWX1JBV01JRElfU1RSRUFNX0xBU1QgPSBTTkRSVl9SQVdNSURJX1NUUkVBTV9JTlBVVCwKIH07CiAjZGVmaW5lIFNORFJWX1JBV01JRElfSU5GT19PVVRQVVQgMHgwMDAwMDAwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9JTkZPX0lOUFVUIDB4MDAwMDAwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1JBV01JRElfSU5GT19EVVBMRVggMHgwMDAwMDAwNAogc3RydWN0IHNuZF9yYXdtaWRpX2luZm8gewotIHVuc2lnbmVkIGludCBkZXZpY2U7CisgIHVuc2lnbmVkIGludCBkZXZpY2U7CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7Ci0gaW50IHN0cmVhbTsKLSBpbnQgY2FyZDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGludCBzdHJlYW07CisgIGludCBjYXJkOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgaWRbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKLSB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwotIHVuc2lnbmVkIGNoYXIgc3VibmFtZVszMl07Ci0gdW5zaWduZWQgaW50IHN1YmRldmljZXNfY291bnQ7CisgIHVuc2lnbmVkIGNoYXIgbmFtZVs4MF07CisgIHVuc2lnbmVkIGNoYXIgc3VibmFtZVszMl07CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2VzX2NvdW50OworICB1bnNpZ25lZCBpbnQgc3ViZGV2aWNlc19hdmFpbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN1YmRldmljZXNfYXZhaWw7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKIHN0cnVjdCBzbmRfcmF3bWlkaV9wYXJhbXMgeworICBpbnQgc3RyZWFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RyZWFtOwotIHNpemVfdCBidWZmZXJfc2l6ZTsKLSBzaXplX3QgYXZhaWxfbWluOwotIHVuc2lnbmVkIGludCBub19hY3RpdmVfc2Vuc2luZzogMTsKKyAgc2l6ZV90IGJ1ZmZlcl9zaXplOworICBzaXplX3QgYXZhaWxfbWluOworICB1bnNpZ25lZCBpbnQgbm9fYWN0aXZlX3NlbnNpbmcgOiAxOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciByZXNlcnZlZFsxNl07CiB9Owogc3RydWN0IHNuZF9yYXdtaWRpX3N0YXR1cyB7Ci0gaW50IHN0cmVhbTsKKyAgaW50IHN0cmVhbTsKKyAgc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKLSBzaXplX3QgYXZhaWw7Ci0gc2l6ZV90IHhydW5zOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTZdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2l6ZV90IGF2YWlsOworICBzaXplX3QgeHJ1bnM7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTZdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1JBV01JRElfSU9DVExfUFZFUlNJT04gX0lPUignVycsIDB4MDAsIGludCkKICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9JTkZPIF9JT1IoJ1cnLCAweDAxLCBzdHJ1Y3Qgc25kX3Jhd21pZGlfaW5mbykKICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9QQVJBTVMgX0lPV1IoJ1cnLCAweDEwLCBzdHJ1Y3Qgc25kX3Jhd21pZGlfcGFyYW1zKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9TVEFUVVMgX0lPV1IoJ1cnLCAweDIwLCBzdHJ1Y3Qgc25kX3Jhd21pZGlfc3RhdHVzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9EUk9QIF9JT1coJ1cnLCAweDMwLCBpbnQpCiAjZGVmaW5lIFNORFJWX1JBV01JRElfSU9DVExfRFJBSU4gX0lPVygnVycsIDB4MzEsIGludCkKICNkZWZpbmUgU05EUlZfVElNRVJfVkVSU0lPTiBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OKDIsIDAsIDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gU05EUlZfVElNRVJfQ0xBU1NfTk9ORSA9IC0xLAotIFNORFJWX1RJTUVSX0NMQVNTX1NMQVZFID0gMCwKLSBTTkRSVl9USU1FUl9DTEFTU19HTE9CQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1RJTUVSX0NMQVNTX0NBUkQsCi0gU05EUlZfVElNRVJfQ0xBU1NfUENNLAotIFNORFJWX1RJTUVSX0NMQVNTX0xBU1QgPSBTTkRSVl9USU1FUl9DTEFTU19QQ00sCisgIFNORFJWX1RJTUVSX0NMQVNTX05PTkUgPSAtIDEsCisgIFNORFJWX1RJTUVSX0NMQVNTX1NMQVZFID0gMCwKKyAgU05EUlZfVElNRVJfQ0xBU1NfR0xPQkFMLAorICBTTkRSVl9USU1FUl9DTEFTU19DQVJELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfVElNRVJfQ0xBU1NfUENNLAorICBTTkRSVl9USU1FUl9DTEFTU19MQVNUID0gU05EUlZfVElNRVJfQ0xBU1NfUENNLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBTTkRSVl9USU1FUl9TQ0xBU1NfTk9ORSA9IDAsCi0gU05EUlZfVElNRVJfU0NMQVNTX0FQUExJQ0FUSU9OLAotIFNORFJWX1RJTUVSX1NDTEFTU19TRVFVRU5DRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1RJTUVSX1NDTEFTU19PU1NfU0VRVUVOQ0VSLAotIFNORFJWX1RJTUVSX1NDTEFTU19MQVNUID0gU05EUlZfVElNRVJfU0NMQVNTX09TU19TRVFVRU5DRVIsCisgIFNORFJWX1RJTUVSX1NDTEFTU19OT05FID0gMCwKKyAgU05EUlZfVElNRVJfU0NMQVNTX0FQUExJQ0FUSU9OLAorICBTTkRSVl9USU1FUl9TQ0xBU1NfU0VRVUVOQ0VSLAorICBTTkRSVl9USU1FUl9TQ0xBU1NfT1NTX1NFUVVFTkNFUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX1RJTUVSX1NDTEFTU19MQVNUID0gU05EUlZfVElNRVJfU0NMQVNTX09TU19TRVFVRU5DRVIsCiB9OwogI2RlZmluZSBTTkRSVl9USU1FUl9HTE9CQUxfU1lTVEVNIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0dMT0JBTF9SVEMgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfR0xPQkFMX0hQRVQgMgogI2RlZmluZSBTTkRSVl9USU1FUl9HTE9CQUxfSFJUSU1FUiAzCi0jZGVmaW5lIFNORFJWX1RJTUVSX0ZMR19TTEFWRSAoMTw8MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1RJTUVSX0ZMR19TTEFWRSAoMSA8PCAwKQogc3RydWN0IHNuZF90aW1lcl9pZCB7Ci0gaW50IGRldl9jbGFzczsKLSBpbnQgZGV2X3NjbGFzczsKLSBpbnQgY2FyZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRldmljZTsKLSBpbnQgc3ViZGV2aWNlOworICBpbnQgZGV2X2NsYXNzOworICBpbnQgZGV2X3NjbGFzczsKKyAgaW50IGNhcmQ7CisgIGludCBkZXZpY2U7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgc3ViZGV2aWNlOwogfTsKIHN0cnVjdCBzbmRfdGltZXJfZ2luZm8geworICBzdHJ1Y3Qgc25kX3RpbWVyX2lkIHRpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF90aW1lcl9pZCB0aWQ7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIGludCBjYXJkOwotIHVuc2lnbmVkIGNoYXIgaWRbNjRdOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGludCBjYXJkOworICB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKLSB1bnNpZ25lZCBsb25nIHJlc2VydmVkMDsKLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb247Ci0gdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX21pbjsKKyAgdW5zaWduZWQgbG9uZyByZXNlcnZlZDA7CisgIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbjsKKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX21pbjsKKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX21heDsKLSB1bnNpZ25lZCBpbnQgY2xpZW50czsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzMyXTsKKyAgdW5zaWduZWQgaW50IGNsaWVudHM7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3RpbWVyX2dwYXJhbXMgewotIHN0cnVjdCBzbmRfdGltZXJfaWQgdGlkOwotIHVuc2lnbmVkIGxvbmcgcGVyaW9kX251bTsKLSB1bnNpZ25lZCBsb25nIHBlcmlvZF9kZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOworICBzdHJ1Y3Qgc25kX3RpbWVyX2lkIHRpZDsKKyAgdW5zaWduZWQgbG9uZyBwZXJpb2RfbnVtOworICB1bnNpZ25lZCBsb25nIHBlcmlvZF9kZW47CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3RpbWVyX2dzdGF0dXMgewotIHN0cnVjdCBzbmRfdGltZXJfaWQgdGlkOworICBzdHJ1Y3Qgc25kX3RpbWVyX2lkIHRpZDsKKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb247Ci0gdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX251bTsKLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fZGVuOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX251bTsKKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uX2RlbjsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfdGltZXJfc2VsZWN0IHsKLSBzdHJ1Y3Qgc25kX3RpbWVyX2lkIGlkOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNuZF90aW1lcl9pZCBpZDsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfdGltZXJfaW5mbyB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIGludCBjYXJkOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGludCBjYXJkOworICB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBpZFs2NF07Ci0gdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKLSB1bnNpZ25lZCBsb25nIHJlc2VydmVkMDsKLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb247CisgIHVuc2lnbmVkIGNoYXIgbmFtZVs4MF07CisgIHVuc2lnbmVkIGxvbmcgcmVzZXJ2ZWQwOworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb247CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKIH07Ci0jZGVmaW5lIFNORFJWX1RJTUVSX1BTRkxHX0FVVE8gKDE8PDApCi0jZGVmaW5lIFNORFJWX1RJTUVSX1BTRkxHX0VYQ0xVU0lWRSAoMTw8MSkKKyNkZWZpbmUgU05EUlZfVElNRVJfUFNGTEdfQVVUTyAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9USU1FUl9QU0ZMR19FWENMVVNJVkUgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfVElNRVJfUFNGTEdfRUFSTFlfRVZFTlQgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1RJTUVSX1BTRkxHX0VBUkxZX0VWRU5UICgxPDwyKQogc3RydWN0IHNuZF90aW1lcl9wYXJhbXMgewotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgdGlja3M7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IHRpY2tzOworICB1bnNpZ25lZCBpbnQgcXVldWVfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHF1ZXVlX3NpemU7Ci0gdW5zaWduZWQgaW50IHJlc2VydmVkMDsKLSB1bnNpZ25lZCBpbnQgZmlsdGVyOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IHJlc2VydmVkMDsKKyAgdW5zaWduZWQgaW50IGZpbHRlcjsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2MF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfdGltZXJfc3RhdHVzIHsKLSBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwotIHVuc2lnbmVkIGludCByZXNvbHV0aW9uOworICBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOworICB1bnNpZ25lZCBpbnQgcmVzb2x1dGlvbjsKKyAgdW5zaWduZWQgaW50IGxvc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsb3N0OwotIHVuc2lnbmVkIGludCBvdmVycnVuOwotIHVuc2lnbmVkIGludCBxdWV1ZTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBvdmVycnVuOworICB1bnNpZ25lZCBpbnQgcXVldWU7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ1QnLCAweDAwLCBpbnQpCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX05FWFRfREVWSUNFIF9JT1dSKCdUJywgMHgwMSwgc3RydWN0IHNuZF90aW1lcl9pZCkKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfVFJFQUQgX0lPVygnVCcsIDB4MDIsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX0dJTkZPIF9JT1dSKCdUJywgMHgwMywgc3RydWN0IHNuZF90aW1lcl9naW5mbykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX0dQQVJBTVMgX0lPVygnVCcsIDB4MDQsIHN0cnVjdCBzbmRfdGltZXJfZ3BhcmFtcykKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfR1NUQVRVUyBfSU9XUignVCcsIDB4MDUsIHN0cnVjdCBzbmRfdGltZXJfZ3N0YXR1cykKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfU0VMRUNUIF9JT1coJ1QnLCAweDEwLCBzdHJ1Y3Qgc25kX3RpbWVyX3NlbGVjdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX0lORk8gX0lPUignVCcsIDB4MTEsIHN0cnVjdCBzbmRfdGltZXJfaW5mbykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1BBUkFNUyBfSU9XKCdUJywgMHgxMiwgc3RydWN0IHNuZF90aW1lcl9wYXJhbXMpCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1NUQVRVUyBfSU9SKCdUJywgMHgxNCwgc3RydWN0IHNuZF90aW1lcl9zdGF0dXMpCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1NUQVJUIF9JTygnVCcsIDB4YTApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9TVE9QIF9JTygnVCcsIDB4YTEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9DT05USU5VRSBfSU8oJ1QnLCAweGEyKQogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9QQVVTRSBfSU8oJ1QnLCAweGEzKQogc3RydWN0IHNuZF90aW1lcl9yZWFkIHsKKyAgdW5zaWduZWQgaW50IHJlc29sdXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByZXNvbHV0aW9uOwotIHVuc2lnbmVkIGludCB0aWNrczsKKyAgdW5zaWduZWQgaW50IHRpY2tzOwogfTsKIGVudW0geworICBTTkRSVl9USU1FUl9FVkVOVF9SRVNPTFVUSU9OID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfVElNRVJfRVZFTlRfUkVTT0xVVElPTiA9IDAsCi0gU05EUlZfVElNRVJfRVZFTlRfVElDSywKLSBTTkRSVl9USU1FUl9FVkVOVF9TVEFSVCwKLSBTTkRSVl9USU1FUl9FVkVOVF9TVE9QLAorICBTTkRSVl9USU1FUl9FVkVOVF9USUNLLAorICBTTkRSVl9USU1FUl9FVkVOVF9TVEFSVCwKKyAgU05EUlZfVElNRVJfRVZFTlRfU1RPUCwKKyAgU05EUlZfVElNRVJfRVZFTlRfQ09OVElOVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1RJTUVSX0VWRU5UX0NPTlRJTlVFLAotIFNORFJWX1RJTUVSX0VWRU5UX1BBVVNFLAotIFNORFJWX1RJTUVSX0VWRU5UX0VBUkxZLAotIFNORFJWX1RJTUVSX0VWRU5UX1NVU1BFTkQsCisgIFNORFJWX1RJTUVSX0VWRU5UX1BBVVNFLAorICBTTkRSVl9USU1FUl9FVkVOVF9FQVJMWSwKKyAgU05EUlZfVElNRVJfRVZFTlRfU1VTUEVORCwKKyAgU05EUlZfVElNRVJfRVZFTlRfUkVTVU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9USU1FUl9FVkVOVF9SRVNVTUUsCi0gU05EUlZfVElNRVJfRVZFTlRfTVNUQVJUID0gU05EUlZfVElNRVJfRVZFTlRfU1RBUlQgKyAxMCwKLSBTTkRSVl9USU1FUl9FVkVOVF9NU1RPUCA9IFNORFJWX1RJTUVSX0VWRU5UX1NUT1AgKyAxMCwKLSBTTkRSVl9USU1FUl9FVkVOVF9NQ09OVElOVUUgPSBTTkRSVl9USU1FUl9FVkVOVF9DT05USU5VRSArIDEwLAorICBTTkRSVl9USU1FUl9FVkVOVF9NU1RBUlQgPSBTTkRSVl9USU1FUl9FVkVOVF9TVEFSVCArIDEwLAorICBTTkRSVl9USU1FUl9FVkVOVF9NU1RPUCA9IFNORFJWX1RJTUVSX0VWRU5UX1NUT1AgKyAxMCwKKyAgU05EUlZfVElNRVJfRVZFTlRfTUNPTlRJTlVFID0gU05EUlZfVElNRVJfRVZFTlRfQ09OVElOVUUgKyAxMCwKKyAgU05EUlZfVElNRVJfRVZFTlRfTVBBVVNFID0gU05EUlZfVElNRVJfRVZFTlRfUEFVU0UgKyAxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfVElNRVJfRVZFTlRfTVBBVVNFID0gU05EUlZfVElNRVJfRVZFTlRfUEFVU0UgKyAxMCwKLSBTTkRSVl9USU1FUl9FVkVOVF9NU1VTUEVORCA9IFNORFJWX1RJTUVSX0VWRU5UX1NVU1BFTkQgKyAxMCwKLSBTTkRSVl9USU1FUl9FVkVOVF9NUkVTVU1FID0gU05EUlZfVElNRVJfRVZFTlRfUkVTVU1FICsgMTAsCisgIFNORFJWX1RJTUVSX0VWRU5UX01TVVNQRU5EID0gU05EUlZfVElNRVJfRVZFTlRfU1VTUEVORCArIDEwLAorICBTTkRSVl9USU1FUl9FVkVOVF9NUkVTVU1FID0gU05EUlZfVElNRVJfRVZFTlRfUkVTVU1FICsgMTAsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfdGltZXJfdHJlYWQgewotIGludCBldmVudDsKLSBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwotIHVuc2lnbmVkIGludCB2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgZXZlbnQ7CisgIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7CisgIHVuc2lnbmVkIGludCB2YWw7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigyLCAwLCA3KQogc3RydWN0IHNuZF9jdGxfY2FyZF9pbmZvIHsKLSBpbnQgY2FyZDsKKyAgaW50IGNhcmQ7CisgIGludCBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwYWQ7Ci0gdW5zaWduZWQgY2hhciBpZFsxNl07Ci0gdW5zaWduZWQgY2hhciBkcml2ZXJbMTZdOwotIHVuc2lnbmVkIGNoYXIgbmFtZVszMl07CisgIHVuc2lnbmVkIGNoYXIgaWRbMTZdOworICB1bnNpZ25lZCBjaGFyIGRyaXZlclsxNl07CisgIHVuc2lnbmVkIGNoYXIgbmFtZVszMl07CisgIHVuc2lnbmVkIGNoYXIgbG9uZ25hbWVbODBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGxvbmduYW1lWzgwXTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkX1sxNl07Ci0gdW5zaWduZWQgY2hhciBtaXhlcm5hbWVbODBdOwotIHVuc2lnbmVkIGNoYXIgY29tcG9uZW50c1sxMjhdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZF9bMTZdOworICB1bnNpZ25lZCBjaGFyIG1peGVybmFtZVs4MF07CisgIHVuc2lnbmVkIGNoYXIgY29tcG9uZW50c1sxMjhdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGludCBfX2JpdHdpc2Ugc25kX2N0bF9lbGVtX3R5cGVfdDsKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fVFlQRV9OT05FICgoX19mb3JjZSBzbmRfY3RsX2VsZW1fdHlwZV90KSAwKQogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX0JPT0xFQU4gKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX0lOVEVHRVIgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX0VOVU1FUkFURUQgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDMpCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfQllURVMgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDQpCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfSUVDOTU4ICgoX19mb3JjZSBzbmRfY3RsX2VsZW1fdHlwZV90KSA1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fVFlQRV9JTlRFR0VSNjQgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX0xBU1QgU05EUlZfQ1RMX0VMRU1fVFlQRV9JTlRFR0VSNjQKIHR5cGVkZWYgaW50IF9fYml0d2lzZSBzbmRfY3RsX2VsZW1faWZhY2VfdDsKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfQ0FSRCAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9IV0RFUCAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9NSVhFUiAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDIpCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0lGQUNFX1BDTSAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDMpCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0lGQUNFX1JBV01JREkgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV9pZmFjZV90KSA0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfVElNRVIgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV9pZmFjZV90KSA1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfU0VRVUVOQ0VSICgoX19mb3JjZSBzbmRfY3RsX2VsZW1faWZhY2VfdCkgNikKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfTEFTVCBTTkRSVl9DVExfRUxFTV9JRkFDRV9TRVFVRU5DRVIKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1JFQUQgKDE8PDApCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19SRUFEICgxIDw8IDApCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19XUklURSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1dSSVRFICgxPDwxKQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfUkVBRFdSSVRFIChTTkRSVl9DVExfRUxFTV9BQ0NFU1NfUkVBRHxTTkRSVl9DVExfRUxFTV9BQ0NFU1NfV1JJVEUpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19WT0xBVElMRSAoMTw8MikKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RJTUVTVEFNUCAoMTw8MykKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1JFQURXUklURSAoU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1JFQUQgfCBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfV1JJVEUpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19WT0xBVElMRSAoMSA8PCAyKQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVElNRVNUQU1QICgxIDw8IDMpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfUkVBRCAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9SRUFEICgxPDw0KQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1dSSVRFICgxPDw1KQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1JFQURXUklURSAoU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9SRUFEfFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfV1JJVEUpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfQ09NTUFORCAoMTw8NikKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9XUklURSAoMSA8PCA1KQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1JFQURXUklURSAoU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9SRUFEIHwgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9XUklURSkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9DT01NQU5EICgxIDw8IDYpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19JTkFDVElWRSAoMSA8PCA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX0lOQUNUSVZFICgxPDw4KQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfTE9DSyAoMTw8OSkKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX09XTkVSICgxPDwxMCkKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9DQUxMQkFDSyAoMTw8MjgpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19MT0NLICgxIDw8IDkpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19PV05FUiAoMSA8PCAxMCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9DQUxMQkFDSyAoMSA8PCAyOCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1VTRVIgKDEgPDwgMjkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVVNFUiAoMTw8MjkpCiAjZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EMCAweDAwMDAKICNkZWZpbmUgU05EUlZfQ1RMX1BPV0VSX0QxIDB4MDEwMAogI2RlZmluZSBTTkRSVl9DVExfUE9XRVJfRDIgMHgwMjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfUE9XRVJfRDMgMHgwMzAwCi0jZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EM2hvdCAoU05EUlZfQ1RMX1BPV0VSX0QzfDB4MDAwMCkKLSNkZWZpbmUgU05EUlZfQ1RMX1BPV0VSX0QzY29sZCAoU05EUlZfQ1RMX1BPV0VSX0QzfDB4MDAwMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EM2hvdCAoU05EUlZfQ1RMX1BPV0VSX0QzIHwgMHgwMDAwKQorI2RlZmluZSBTTkRSVl9DVExfUE9XRVJfRDNjb2xkIChTTkRSVl9DVExfUE9XRVJfRDMgfCAweDAwMDEpCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0lEX05BTUVfTUFYTEVOIDQ0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jdGxfZWxlbV9pZCB7Ci0gdW5zaWduZWQgaW50IG51bWlkOwotIHNuZF9jdGxfZWxlbV9pZmFjZV90IGlmYWNlOwotIHVuc2lnbmVkIGludCBkZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7Ci0gdW5zaWduZWQgY2hhciBuYW1lWzQ0XTsKLSB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBudW1pZDsKKyAgc25kX2N0bF9lbGVtX2lmYWNlX3QgaWZhY2U7CisgIHVuc2lnbmVkIGludCBkZXZpY2U7CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIG5hbWVbNDRdOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfY3RsX2VsZW1fbGlzdCB7Ci0gdW5zaWduZWQgaW50IG9mZnNldDsKLSB1bnNpZ25lZCBpbnQgc3BhY2U7Ci0gdW5zaWduZWQgaW50IHVzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjb3VudDsKLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIF9fdXNlciAqcGlkczsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzUwXTsKKyAgdW5zaWduZWQgaW50IG9mZnNldDsKKyAgdW5zaWduZWQgaW50IHNwYWNlOworICB1bnNpZ25lZCBpbnQgdXNlZDsKKyAgdW5zaWduZWQgaW50IGNvdW50OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBfX3VzZXIgKiBwaWRzOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzUwXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jdGxfZWxlbV9pbmZvIHsKLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIGlkOwotIHNuZF9jdGxfZWxlbV90eXBlX3QgdHlwZTsKLSB1bnNpZ25lZCBpbnQgYWNjZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY291bnQ7Ci0gX19rZXJuZWxfcGlkX3Qgb3duZXI7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CisgIHNuZF9jdGxfZWxlbV90eXBlX3QgdHlwZTsKKyAgdW5zaWduZWQgaW50IGFjY2VzczsKKyAgdW5zaWduZWQgaW50IGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIG1pbjsKLSBsb25nIG1heDsKLSBsb25nIHN0ZXA7Ci0gfSBpbnRlZ2VyOworICBfX2tlcm5lbF9waWRfdCBvd25lcjsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBsb25nIG1pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBsb25nIGxvbmcgbWluOwotIGxvbmcgbG9uZyBtYXg7Ci0gbG9uZyBsb25nIHN0ZXA7CisgICAgICBsb25nIG1heDsKKyAgICAgIGxvbmcgc3RlcDsKKyAgICB9IGludGVnZXI7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBpbnRlZ2VyNjQ7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgaXRlbXM7Ci0gdW5zaWduZWQgaW50IGl0ZW07CisgICAgICBsb25nIGxvbmcgbWluOworICAgICAgbG9uZyBsb25nIG1heDsKKyAgICAgIGxvbmcgbG9uZyBzdGVwOworICAgIH0gaW50ZWdlcjY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbNjRdOwotIF9fdTY0IG5hbWVzX3B0cjsKLSB1bnNpZ25lZCBpbnQgbmFtZXNfbGVuZ3RoOwotIH0gZW51bWVyYXRlZDsKKyAgICBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgaW50IGl0ZW1zOworICAgICAgdW5zaWduZWQgaW50IGl0ZW07CisgICAgICBjaGFyIG5hbWVbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzEyOF07Ci0gfSB2YWx1ZTsKLSB1bmlvbiB7Ci0gdW5zaWduZWQgc2hvcnQgZFs0XTsKKyAgICAgIF9fdTY0IG5hbWVzX3B0cjsKKyAgICAgIHVuc2lnbmVkIGludCBuYW1lc19sZW5ndGg7CisgICAgfSBlbnVtZXJhdGVkOworICAgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTI4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgKmRfcHRyOwotIH0gZGltZW47Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NC00KnNpemVvZih1bnNpZ25lZCBzaG9ydCldOworICB9IHZhbHVlOworICB1bmlvbiB7CisgICAgdW5zaWduZWQgc2hvcnQgZFs0XTsKKyAgICB1bnNpZ25lZCBzaG9ydCAqIGRfcHRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfSBkaW1lbjsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NCAtIDQgKiBzaXplb2YodW5zaWduZWQgc2hvcnQpXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jdGxfZWxlbV92YWx1ZSB7Ci0gc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKLSB1bnNpZ25lZCBpbnQgaW5kaXJlY3Q6IDE7Ci0gdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gbG9uZyB2YWx1ZVsxMjhdOwotIGxvbmcgKnZhbHVlX3B0cjsKLSB9IGludGVnZXI7CisgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CisgIHVuc2lnbmVkIGludCBpbmRpcmVjdCA6IDE7CisgIHVuaW9uIHsKKyAgICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBsb25nIGxvbmcgdmFsdWVbNjRdOwotIGxvbmcgbG9uZyAqdmFsdWVfcHRyOwotIH0gaW50ZWdlcjY0OworICAgICAgbG9uZyB2YWx1ZVsxMjhdOworICAgICAgbG9uZyAqIHZhbHVlX3B0cjsKKyAgICB9IGludGVnZXI7CisgICAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gdW5zaWduZWQgaW50IGl0ZW1bMTI4XTsKLSB1bnNpZ25lZCBpbnQgKml0ZW1fcHRyOwotIH0gZW51bWVyYXRlZDsKKyAgICAgIGxvbmcgbG9uZyB2YWx1ZVs2NF07CisgICAgICBsb25nIGxvbmcgKiB2YWx1ZV9wdHI7CisgICAgfSBpbnRlZ2VyNjQ7CisgICAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gdW5zaWduZWQgY2hhciBkYXRhWzUxMl07Ci0gdW5zaWduZWQgY2hhciAqZGF0YV9wdHI7Ci0gfSBieXRlczsKKyAgICAgIHVuc2lnbmVkIGludCBpdGVtWzEyOF07CisgICAgICB1bnNpZ25lZCBpbnQgKiBpdGVtX3B0cjsKKyAgICB9IGVudW1lcmF0ZWQ7CisgICAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX2Flc19pZWM5NTggaWVjOTU4OwotIH0gdmFsdWU7Ci0gc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzEyOC1zaXplb2Yoc3RydWN0IHRpbWVzcGVjKV07CisgICAgICB1bnNpZ25lZCBjaGFyIGRhdGFbNTEyXTsKKyAgICAgIHVuc2lnbmVkIGNoYXIgKiBkYXRhX3B0cjsKKyAgICB9IGJ5dGVzOworICAgIHN0cnVjdCBzbmRfYWVzX2llYzk1OCBpZWM5NTg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9IHZhbHVlOworICBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzEyOCAtIHNpemVvZihzdHJ1Y3QgdGltZXNwZWMpXTsKIH07Ci1zdHJ1Y3Qgc25kX2N0bF90bHYgewotIHVuc2lnbmVkIGludCBudW1pZDsKLSB1bnNpZ25lZCBpbnQgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGx2WzBdOworc3RydWN0IHNuZF9jdGxfdGx2IHsKKyAgdW5zaWduZWQgaW50IG51bWlkOworICB1bnNpZ25lZCBpbnQgbGVuZ3RoOworICB1bnNpZ25lZCBpbnQgdGx2WzBdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9QVkVSU0lPTiBfSU9SKCdVJywgMHgwMCwgaW50KQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfQ0FSRF9JTkZPIF9JT1IoJ1UnLCAweDAxLCBzdHJ1Y3Qgc25kX2N0bF9jYXJkX2luZm8pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9MSVNUIF9JT1dSKCdVJywgMHgxMCwgc3RydWN0IHNuZF9jdGxfZWxlbV9saXN0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0VMRU1fSU5GTyBfSU9XUignVScsIDB4MTEsIHN0cnVjdCBzbmRfY3RsX2VsZW1faW5mbykKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0VMRU1fUkVBRCBfSU9XUignVScsIDB4MTIsIHN0cnVjdCBzbmRfY3RsX2VsZW1fdmFsdWUpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX1dSSVRFIF9JT1dSKCdVJywgMHgxMywgc3RydWN0IHNuZF9jdGxfZWxlbV92YWx1ZSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX0xPQ0sgX0lPVygnVScsIDB4MTQsIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9VTkxPQ0sgX0lPVygnVScsIDB4MTUsIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9TVUJTQ1JJQkVfRVZFTlRTIF9JT1dSKCdVJywgMHgxNiwgaW50KQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9BREQgX0lPV1IoJ1UnLCAweDE3LCBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2luZm8pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9SRVBMQUNFIF9JT1dSKCdVJywgMHgxOCwgc3RydWN0IHNuZF9jdGxfZWxlbV9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0VMRU1fUkVNT1ZFIF9JT1dSKCdVJywgMHgxOSwgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCkKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1RMVl9SRUFEIF9JT1dSKCdVJywgMHgxYSwgc3RydWN0IHNuZF9jdGxfdGx2KQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfVExWX1dSSVRFIF9JT1dSKCdVJywgMHgxYiwgc3RydWN0IHNuZF9jdGxfdGx2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1RMVl9DT01NQU5EIF9JT1dSKCdVJywgMHgxYywgc3RydWN0IHNuZF9jdGxfdGx2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0hXREVQX05FWFRfREVWSUNFIF9JT1dSKCdVJywgMHgyMCwgaW50KQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfSFdERVBfSU5GTyBfSU9SKCdVJywgMHgyMSwgc3RydWN0IHNuZF9od2RlcF9pbmZvKQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUENNX05FWFRfREVWSUNFIF9JT1IoJ1UnLCAweDMwLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUENNX0lORk8gX0lPV1IoJ1UnLCAweDMxLCBzdHJ1Y3Qgc25kX3BjbV9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1BDTV9QUkVGRVJfU1VCREVWSUNFIF9JT1coJ1UnLCAweDMyLCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9SQVdNSURJX05FWFRfREVWSUNFIF9JT1dSKCdVJywgMHg0MCwgaW50KQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUkFXTUlESV9JTkZPIF9JT1dSKCdVJywgMHg0MSwgc3RydWN0IHNuZF9yYXdtaWRpX2luZm8pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUkFXTUlESV9QUkVGRVJfU1VCREVWSUNFIF9JT1coJ1UnLCAweDQyLCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUE9XRVIgX0lPV1IoJ1UnLCAweGQwLCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9QT1dFUl9TVEFURSBfSU9SKCdVJywgMHhkMSwgaW50KQogZW51bSBzbmRydl9jdGxfZXZlbnRfdHlwZSB7CisgIFNORFJWX0NUTF9FVkVOVF9FTEVNID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ1RMX0VWRU5UX0VMRU0gPSAwLAotIFNORFJWX0NUTF9FVkVOVF9MQVNUID0gU05EUlZfQ1RMX0VWRU5UX0VMRU0sCisgIFNORFJWX0NUTF9FVkVOVF9MQVNUID0gU05EUlZfQ1RMX0VWRU5UX0VMRU0sCiB9OwotI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19WQUxVRSAoMTw8MCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfVkFMVUUgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfSU5GTyAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfSU5GTyAoMTw8MSkKLSNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfQUREICgxPDwyKQotI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19UTFYgKDE8PDMpCisjZGVmaW5lIFNORFJWX0NUTF9FVkVOVF9NQVNLX0FERCAoMSA8PCAyKQorI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19UTFYgKDEgPDwgMykKICNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfUkVNT1ZFICh+MFUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jdGxfZXZlbnQgewotIGludCB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbWFzazsKLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIGlkOwotIH0gZWxlbTsKLSB1bnNpZ25lZCBjaGFyIGRhdGE4WzYwXTsKKyAgaW50IHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgaW50IG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZGF0YTsKKyAgICAgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CisgICAgfSBlbGVtOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YThbNjBdOworICB9IGRhdGE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfTk9ORSAiIgogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9QTEFZQkFDSyAiUGxheWJhY2sgIgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfQ0FQVFVSRSAiQ2FwdHVyZSAiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9JRUM5NThfTk9ORSAiIgogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9JRUM5NThfU1dJVENIICJTd2l0Y2giCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9WT0xVTUUgIlZvbHVtZSIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9ERUZBVUxUICJEZWZhdWx0IgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4X01BU0sgIk1hc2siCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9DT05fTUFTSyAiQ29uIE1hc2siCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9QUk9fTUFTSyAiUHJvIE1hc2siCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9JRUM5NThfUENNX1NUUkVBTSAiUENNIFN0cmVhbSIKLSNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4KGV4cGwsZGlyZWN0aW9uLHdoYXQpICJJRUM5NTggIiBleHBsIFNORFJWX0NUTF9OQU1FXyMjZGlyZWN0aW9uIFNORFJWX0NUTF9OQU1FX0lFQzk1OF8jI3doYXQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OChleHBsLGRpcmVjdGlvbix3aGF0KSAiSUVDOTU4ICIgZXhwbCBTTkRSVl9DVExfTkFNRV8gIyNkaXJlY3Rpb24gU05EUlZfQ1RMX05BTUVfSUVDOTU4XyAjI3doYXQKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc291bmRfZm0uaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNvdW5kX2ZtLmgKaW5kZXggNTFhMDNmMS4uMDgxOWVmZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc291bmRfZm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZF9mbS5oCkBAIC0yMiw1OCArMjIsNTggQEAKICNkZWZpbmUgU05EUlZfRE1fRk1fTU9ERV9PUEwzIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2RtX2ZtX2luZm8gewotIHVuc2lnbmVkIGNoYXIgZm1fbW9kZTsKLSB1bnNpZ25lZCBjaGFyIHJoeXRobTsKKyAgdW5zaWduZWQgY2hhciBmbV9tb2RlOworICB1bnNpZ25lZCBjaGFyIHJoeXRobTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9kbV9mbV92b2ljZSB7Ci0gdW5zaWduZWQgY2hhciBvcDsKLSB1bnNpZ25lZCBjaGFyIHZvaWNlOwotIHVuc2lnbmVkIGNoYXIgYW07CisgIHVuc2lnbmVkIGNoYXIgb3A7CisgIHVuc2lnbmVkIGNoYXIgdm9pY2U7CisgIHVuc2lnbmVkIGNoYXIgYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdmlicmF0bzsKLSB1bnNpZ25lZCBjaGFyIGRvX3N1c3RhaW47Ci0gdW5zaWduZWQgY2hhciBrYmRfc2NhbGU7Ci0gdW5zaWduZWQgY2hhciBoYXJtb25pYzsKKyAgdW5zaWduZWQgY2hhciB2aWJyYXRvOworICB1bnNpZ25lZCBjaGFyIGRvX3N1c3RhaW47CisgIHVuc2lnbmVkIGNoYXIga2JkX3NjYWxlOworICB1bnNpZ25lZCBjaGFyIGhhcm1vbmljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHNjYWxlX2xldmVsOwotIHVuc2lnbmVkIGNoYXIgdm9sdW1lOwotIHVuc2lnbmVkIGNoYXIgYXR0YWNrOwotIHVuc2lnbmVkIGNoYXIgZGVjYXk7CisgIHVuc2lnbmVkIGNoYXIgc2NhbGVfbGV2ZWw7CisgIHVuc2lnbmVkIGNoYXIgdm9sdW1lOworICB1bnNpZ25lZCBjaGFyIGF0dGFjazsKKyAgdW5zaWduZWQgY2hhciBkZWNheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzdXN0YWluOwotIHVuc2lnbmVkIGNoYXIgcmVsZWFzZTsKLSB1bnNpZ25lZCBjaGFyIGZlZWRiYWNrOwotIHVuc2lnbmVkIGNoYXIgY29ubmVjdGlvbjsKKyAgdW5zaWduZWQgY2hhciBzdXN0YWluOworICB1bnNpZ25lZCBjaGFyIHJlbGVhc2U7CisgIHVuc2lnbmVkIGNoYXIgZmVlZGJhY2s7CisgIHVuc2lnbmVkIGNoYXIgY29ubmVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBsZWZ0OwotIHVuc2lnbmVkIGNoYXIgcmlnaHQ7Ci0gdW5zaWduZWQgY2hhciB3YXZlZm9ybTsKKyAgdW5zaWduZWQgY2hhciBsZWZ0OworICB1bnNpZ25lZCBjaGFyIHJpZ2h0OworICB1bnNpZ25lZCBjaGFyIHdhdmVmb3JtOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2RtX2ZtX25vdGUgewotIHVuc2lnbmVkIGNoYXIgdm9pY2U7Ci0gdW5zaWduZWQgY2hhciBvY3RhdmU7Ci0gdW5zaWduZWQgaW50IGZudW07CisgIHVuc2lnbmVkIGNoYXIgdm9pY2U7CisgIHVuc2lnbmVkIGNoYXIgb2N0YXZlOworICB1bnNpZ25lZCBpbnQgZm51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBrZXlfb247CisgIHVuc2lnbmVkIGNoYXIga2V5X29uOwogfTsKIHN0cnVjdCBzbmRfZG1fZm1fcGFyYW1zIHsKLSB1bnNpZ25lZCBjaGFyIGFtX2RlcHRoOworICB1bnNpZ25lZCBjaGFyIGFtX2RlcHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHZpYl9kZXB0aDsKLSB1bnNpZ25lZCBjaGFyIGtiZF9zcGxpdDsKLSB1bnNpZ25lZCBjaGFyIHJoeXRobTsKLSB1bnNpZ25lZCBjaGFyIGJhc3M7CisgIHVuc2lnbmVkIGNoYXIgdmliX2RlcHRoOworICB1bnNpZ25lZCBjaGFyIGtiZF9zcGxpdDsKKyAgdW5zaWduZWQgY2hhciByaHl0aG07CisgIHVuc2lnbmVkIGNoYXIgYmFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzbmFyZTsKLSB1bnNpZ25lZCBjaGFyIHRvbXRvbTsKLSB1bnNpZ25lZCBjaGFyIGN5bWJhbDsKLSB1bnNpZ25lZCBjaGFyIGhpaGF0OworICB1bnNpZ25lZCBjaGFyIHNuYXJlOworICB1bnNpZ25lZCBjaGFyIHRvbXRvbTsKKyAgdW5zaWduZWQgY2hhciBjeW1iYWw7CisgIHVuc2lnbmVkIGNoYXIgaGloYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU05EUlZfRE1fRk1fSU9DVExfSU5GTyBfSU9SKCdIJywgMHgyMCwgc3RydWN0IHNuZF9kbV9mbV9pbmZvKQotI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9SRVNFVCBfSU8gKCdIJywgMHgyMSkKKyNkZWZpbmUgU05EUlZfRE1fRk1fSU9DVExfUkVTRVQgX0lPKCdIJywgMHgyMSkKICNkZWZpbmUgU05EUlZfRE1fRk1fSU9DVExfUExBWV9OT1RFIF9JT1coJ0gnLCAweDIyLCBzdHJ1Y3Qgc25kX2RtX2ZtX25vdGUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9TRVRfVk9JQ0UgX0lPVygnSCcsIDB4MjMsIHN0cnVjdCBzbmRfZG1fZm1fdm9pY2UpCkBAIC04MSw3ICs4MSw3IEBACiAjZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX1NFVF9NT0RFIF9JT1coJ0gnLCAweDI1LCBpbnQpCiAjZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX1NFVF9DT05ORUNUSU9OIF9JT1coJ0gnLCAweDI2LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9DTEVBUl9QQVRDSEVTIF9JTyAoJ0gnLCAweDQwKQorI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9DTEVBUl9QQVRDSEVTIF9JTygnSCcsIDB4NDApCiAjZGVmaW5lIFNORFJWX0RNX0ZNX09TU19JT0NUTF9SRVNFVCAweDIwCiAjZGVmaW5lIFNORFJWX0RNX0ZNX09TU19JT0NUTF9QTEFZX05PVEUgMHgyMQogI2RlZmluZSBTTkRSVl9ETV9GTV9PU1NfSU9DVExfU0VUX1ZPSUNFIDB4MjIKQEAgLTk0LDEzICs5NCwxMyBAQAogI2RlZmluZSBGTV9LRVlfMk9QICIyT1BcMDMyIgogI2RlZmluZSBGTV9LRVlfNE9QICI0T1BcMDMyIgogc3RydWN0IHNiaV9wYXRjaCB7Ci0gdW5zaWduZWQgY2hhciBwcm9nOworICB1bnNpZ25lZCBjaGFyIHByb2c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYmFuazsKLSBjaGFyIGtleVs0XTsKLSBjaGFyIG5hbWVbMjVdOwotIGNoYXIgZXh0ZW5zaW9uWzddOworICB1bnNpZ25lZCBjaGFyIGJhbms7CisgIGNoYXIga2V5WzRdOworICBjaGFyIG5hbWVbMjVdOworICBjaGFyIGV4dGVuc2lvbls3XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkYXRhWzMyXTsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzMyXTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvY29tcHJlc3Nfb2ZmbG9hZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19vZmZsb2FkLmgKaW5kZXggNWIwNjc0MS4uODkyOGNiZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19vZmZsb2FkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19vZmZsb2FkLmgKQEAgLTI0LDcyICsyNCw3MiBAQAogI2luY2x1ZGUgPHNvdW5kL2NvbXByZXNzX3BhcmFtcy5oPgogI2RlZmluZSBTTkRSVl9DT01QUkVTU19WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMCwgMSwgMikKIHN0cnVjdCBzbmRfY29tcHJlc3NlZF9idWZmZXIgewotIF9fdTMyIGZyYWdtZW50X3NpemU7CisgIF9fdTMyIGZyYWdtZW50X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZyYWdtZW50czsKLX07CisgIF9fdTMyIGZyYWdtZW50czsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2NvbXByX3BhcmFtcyB7Ci0gc3RydWN0IHNuZF9jb21wcmVzc2VkX2J1ZmZlciBidWZmZXI7CisgIHN0cnVjdCBzbmRfY29tcHJlc3NlZF9idWZmZXIgYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX2NvZGVjIGNvZGVjOwotIF9fdTggbm9fd2FrZV9tb2RlOwotfTsKKyAgc3RydWN0IHNuZF9jb2RlYyBjb2RlYzsKKyAgX191OCBub193YWtlX21vZGU7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogc3RydWN0IHNuZF9jb21wcl90c3RhbXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBieXRlX29mZnNldDsKLSBfX3UzMiBjb3BpZWRfdG90YWw7Ci0gX191MzIgcGNtX2ZyYW1lczsKLSBfX3UzMiBwY21faW9fZnJhbWVzOworICBfX3UzMiBieXRlX29mZnNldDsKKyAgX191MzIgY29waWVkX3RvdGFsOworICBfX3UzMiBwY21fZnJhbWVzOworICBfX3UzMiBwY21faW9fZnJhbWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYW1wbGluZ19yYXRlOwotfTsKKyAgX191MzIgc2FtcGxpbmdfcmF0ZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2NvbXByX2F2YWlsIHsKLSBfX3U2NCBhdmFpbDsKKyAgX191NjQgYXZhaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfY29tcHJfdHN0YW1wIHRzdGFtcDsKLX07CisgIHN0cnVjdCBzbmRfY29tcHJfdHN0YW1wIHRzdGFtcDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBlbnVtIHNuZF9jb21wcl9kaXJlY3Rpb24gewotIFNORF9DT01QUkVTU19QTEFZQkFDSyA9IDAsCisgIFNORF9DT01QUkVTU19QTEFZQkFDSyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORF9DT01QUkVTU19DQVBUVVJFCisgIFNORF9DT01QUkVTU19DQVBUVVJFCiB9Owogc3RydWN0IHNuZF9jb21wcl9jYXBzIHsKLSBfX3UzMiBudW1fY29kZWNzOworICBfX3UzMiBudW1fY29kZWNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkaXJlY3Rpb247Ci0gX191MzIgbWluX2ZyYWdtZW50X3NpemU7Ci0gX191MzIgbWF4X2ZyYWdtZW50X3NpemU7Ci0gX191MzIgbWluX2ZyYWdtZW50czsKKyAgX191MzIgZGlyZWN0aW9uOworICBfX3UzMiBtaW5fZnJhZ21lbnRfc2l6ZTsKKyAgX191MzIgbWF4X2ZyYWdtZW50X3NpemU7CisgIF9fdTMyIG1pbl9mcmFnbWVudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9mcmFnbWVudHM7Ci0gX191MzIgY29kZWNzW01BWF9OVU1fQ09ERUNTXTsKLSBfX3UzMiByZXNlcnZlZFsxMV07Ci19OworICBfX3UzMiBtYXhfZnJhZ21lbnRzOworICBfX3UzMiBjb2RlY3NbTUFYX05VTV9DT0RFQ1NdOworICBfX3UzMiByZXNlcnZlZFsxMV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfY29tcHJfY29kZWNfY2FwcyB7Ci0gX191MzIgY29kZWM7Ci0gX191MzIgbnVtX2Rlc2NyaXB0b3JzOwotIHN0cnVjdCBzbmRfY29kZWNfZGVzYyBkZXNjcmlwdG9yW01BWF9OVU1fQ09ERUNfREVTQ1JJUFRPUlNdOworICBfX3UzMiBjb2RlYzsKKyAgX191MzIgbnVtX2Rlc2NyaXB0b3JzOworICBzdHJ1Y3Qgc25kX2NvZGVjX2Rlc2MgZGVzY3JpcHRvcltNQVhfTlVNX0NPREVDX0RFU0NSSVBUT1JTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIGVudW0gewotIFNORFJWX0NPTVBSRVNTX0VOQ09ERVJfUEFERElORyA9IDEsCi0gU05EUlZfQ09NUFJFU1NfRU5DT0RFUl9ERUxBWSA9IDIsCisgIFNORFJWX0NPTVBSRVNTX0VOQ09ERVJfUEFERElORyA9IDEsCisgIFNORFJWX0NPTVBSRVNTX0VOQ09ERVJfREVMQVkgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX2NvbXByX21ldGFkYXRhIHsKLSBfX3UzMiBrZXk7Ci0gX191MzIgdmFsdWVbOF07CisgIF9fdTMyIGtleTsKKyAgX191MzIgdmFsdWVbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiAjZGVmaW5lIFNORFJWX0NPTVBSRVNTX0lPQ1RMX1ZFUlNJT04gX0lPUignQycsIDB4MDAsIGludCkKICNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX0NBUFMgX0lPV1IoJ0MnLCAweDEwLCBzdHJ1Y3Qgc25kX2NvbXByX2NhcHMpCi0jZGVmaW5lIFNORFJWX0NPTVBSRVNTX0dFVF9DT0RFQ19DQVBTIF9JT1dSKCdDJywgMHgxMSwgIHN0cnVjdCBzbmRfY29tcHJfY29kZWNfY2FwcykKKyNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX0NPREVDX0NBUFMgX0lPV1IoJ0MnLCAweDExLCBzdHJ1Y3Qgc25kX2NvbXByX2NvZGVjX2NhcHMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DT01QUkVTU19TRVRfUEFSQU1TIF9JT1coJ0MnLCAweDEyLCBzdHJ1Y3Qgc25kX2NvbXByX3BhcmFtcykKICNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX1BBUkFNUyBfSU9SKCdDJywgMHgxMywgc3RydWN0IHNuZF9jb2RlYykKLSNkZWZpbmUgU05EUlZfQ09NUFJFU1NfU0VUX01FVEFEQVRBIF9JT1coJ0MnLCAweDE0LCAgc3RydWN0IHNuZF9jb21wcl9tZXRhZGF0YSkKLSNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX01FVEFEQVRBIF9JT1dSKCdDJywgMHgxNSwgIHN0cnVjdCBzbmRfY29tcHJfbWV0YWRhdGEpCisjZGVmaW5lIFNORFJWX0NPTVBSRVNTX1NFVF9NRVRBREFUQSBfSU9XKCdDJywgMHgxNCwgc3RydWN0IHNuZF9jb21wcl9tZXRhZGF0YSkKKyNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX01FVEFEQVRBIF9JT1dSKCdDJywgMHgxNSwgc3RydWN0IHNuZF9jb21wcl9tZXRhZGF0YSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NPTVBSRVNTX1RTVEFNUCBfSU9SKCdDJywgMHgyMCwgc3RydWN0IHNuZF9jb21wcl90c3RhbXApCiAjZGVmaW5lIFNORFJWX0NPTVBSRVNTX0FWQUlMIF9JT1IoJ0MnLCAweDIxLCBzdHJ1Y3Qgc25kX2NvbXByX2F2YWlsKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19wYXJhbXMuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvY29tcHJlc3NfcGFyYW1zLmgKaW5kZXggOGFhMGJmZS4uYjE3MDNkYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19wYXJhbXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX3BhcmFtcy5oCkBAIC0xNzEsNzUgKzE3MSw3NSBAQAogI2RlZmluZSBTTkRfUkFURUNPTlRST0xNT0RFX1ZBUklBQkxFQklUUkFURSAoKF9fdTMyKSAweDAwMDAwMDAyKQogc3RydWN0IHNuZF9lbmNfd21hIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3VwZXJfYmxvY2tfYWxpZ247CisgIF9fdTMyIHN1cGVyX2Jsb2NrX2FsaWduOwogfTsKIHN0cnVjdCBzbmRfZW5jX3ZvcmJpcyB7Ci0gX19zMzIgcXVhbGl0eTsKKyAgX19zMzIgcXVhbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFuYWdlZDsKLSBfX3UzMiBtYXhfYml0X3JhdGU7Ci0gX191MzIgbWluX2JpdF9yYXRlOwotIF9fdTMyIGRvd25taXg7CisgIF9fdTMyIG1hbmFnZWQ7CisgIF9fdTMyIG1heF9iaXRfcmF0ZTsKKyAgX191MzIgbWluX2JpdF9yYXRlOworICBfX3UzMiBkb3dubWl4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogc3RydWN0IHNuZF9lbmNfcmVhbCB7Ci0gX191MzIgcXVhbnRfYml0czsKLSBfX3UzMiBzdGFydF9yZWdpb247CisgIF9fdTMyIHF1YW50X2JpdHM7CisgIF9fdTMyIHN0YXJ0X3JlZ2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3JlZ2lvbnM7Ci19OworICBfX3UzMiBudW1fcmVnaW9uczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2VuY19mbGFjIHsKLSBfX3UzMiBudW07CisgIF9fdTMyIG51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2FpbjsKLX07CisgIF9fdTMyIGdhaW47Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogc3RydWN0IHNuZF9lbmNfZ2VuZXJpYyB7Ci0gX191MzIgYnc7CisgIF9fdTMyIGJ3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiByZXNlcnZlZFsxNV07Ci19OworICBfX3MzMiByZXNlcnZlZFsxNV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogdW5pb24gc25kX2NvZGVjX29wdGlvbnMgewotIHN0cnVjdCBzbmRfZW5jX3dtYSB3bWE7CisgIHN0cnVjdCBzbmRfZW5jX3dtYSB3bWE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfZW5jX3ZvcmJpcyB2b3JiaXM7Ci0gc3RydWN0IHNuZF9lbmNfcmVhbCByZWFsOwotIHN0cnVjdCBzbmRfZW5jX2ZsYWMgZmxhYzsKLSBzdHJ1Y3Qgc25kX2VuY19nZW5lcmljIGdlbmVyaWM7CisgIHN0cnVjdCBzbmRfZW5jX3ZvcmJpcyB2b3JiaXM7CisgIHN0cnVjdCBzbmRfZW5jX3JlYWwgcmVhbDsKKyAgc3RydWN0IHNuZF9lbmNfZmxhYyBmbGFjOworICBzdHJ1Y3Qgc25kX2VuY19nZW5lcmljIGdlbmVyaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2NvZGVjX2Rlc2MgewotIF9fdTMyIG1heF9jaDsKLSBfX3UzMiBzYW1wbGVfcmF0ZXNbTUFYX05VTV9TQU1QTEVfUkFURVNdOworICBfX3UzMiBtYXhfY2g7CisgIF9fdTMyIHNhbXBsZV9yYXRlc1tNQVhfTlVNX1NBTVBMRV9SQVRFU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bV9zYW1wbGVfcmF0ZXM7Ci0gX191MzIgYml0X3JhdGVbTUFYX05VTV9CSVRSQVRFU107Ci0gX191MzIgbnVtX2JpdHJhdGVzOwotIF9fdTMyIHJhdGVfY29udHJvbDsKKyAgX191MzIgbnVtX3NhbXBsZV9yYXRlczsKKyAgX191MzIgYml0X3JhdGVbTUFYX05VTV9CSVRSQVRFU107CisgIF9fdTMyIG51bV9iaXRyYXRlczsKKyAgX191MzIgcmF0ZV9jb250cm9sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcm9maWxlczsKLSBfX3UzMiBtb2RlczsKLSBfX3UzMiBmb3JtYXRzOwotIF9fdTMyIG1pbl9idWZmZXI7CisgIF9fdTMyIHByb2ZpbGVzOworICBfX3UzMiBtb2RlczsKKyAgX191MzIgZm9ybWF0czsKKyAgX191MzIgbWluX2J1ZmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbMTVdOwotfTsKKyAgX191MzIgcmVzZXJ2ZWRbMTVdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIHN0cnVjdCBzbmRfY29kZWMgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2hfaW47Ci0gX191MzIgY2hfb3V0OwotIF9fdTMyIHNhbXBsZV9yYXRlOwotIF9fdTMyIGJpdF9yYXRlOworICBfX3UzMiBjaF9pbjsKKyAgX191MzIgY2hfb3V0OworICBfX3UzMiBzYW1wbGVfcmF0ZTsKKyAgX191MzIgYml0X3JhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhdGVfY29udHJvbDsKLSBfX3UzMiBwcm9maWxlOwotIF9fdTMyIGxldmVsOwotIF9fdTMyIGNoX21vZGU7CisgIF9fdTMyIHJhdGVfY29udHJvbDsKKyAgX191MzIgcHJvZmlsZTsKKyAgX191MzIgbGV2ZWw7CisgIF9fdTMyIGNoX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZvcm1hdDsKLSBfX3UzMiBhbGlnbjsKLSB1bmlvbiBzbmRfY29kZWNfb3B0aW9ucyBvcHRpb25zOwotIF9fdTMyIHJlc2VydmVkWzNdOworICBfX3UzMiBmb3JtYXQ7CisgIF9fdTMyIGFsaWduOworICB1bmlvbiBzbmRfY29kZWNfb3B0aW9ucyBvcHRpb25zOworICBfX3UzMiByZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9lbXUxMGsxLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2VtdTEwazEuaAppbmRleCBjYmZjOWY5Li45NzAxMjI3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2VtdTEwazEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2VtdTEwazEuaApAQCAtMjY5LDE0ICsyNjksMTQgQEAKICNkZWZpbmUgVEFOS01FTUFERFJSRUdfV1JJVEUgMHgwMDIwMDAwMAogI2RlZmluZSBUQU5LTUVNQUREUlJFR19SRUFEIDB4MDAxMDAwMDAKIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfaW5mbyB7Ci0gdW5zaWduZWQgaW50IGludGVybmFsX3RyYW1fc2l6ZTsKKyAgdW5zaWduZWQgaW50IGludGVybmFsX3RyYW1fc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGV4dGVybmFsX3RyYW1fc2l6ZTsKLSBjaGFyIGZ4YnVzX25hbWVzWzE2XVszMl07Ci0gY2hhciBleHRpbl9uYW1lc1sxNl1bMzJdOwotIGNoYXIgZXh0b3V0X25hbWVzWzMyXVszMl07CisgIHVuc2lnbmVkIGludCBleHRlcm5hbF90cmFtX3NpemU7CisgIGNoYXIgZnhidXNfbmFtZXNbMTZdWzMyXTsKKyAgY2hhciBleHRpbl9uYW1lc1sxNl1bMzJdOworICBjaGFyIGV4dG91dF9uYW1lc1szMl1bMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZ3ByX2NvbnRyb2xzOworICB1bnNpZ25lZCBpbnQgZ3ByX2NvbnRyb2xzOwogfTsKICNkZWZpbmUgRU1VMTBLMV9HUFJfVFJBTlNMQVRJT05fTk9ORSAwCiAjZGVmaW5lIEVNVTEwSzFfR1BSX1RSQU5TTEFUSU9OX1RBQkxFMTAwIDEKQEAgLTI4Niw5NyArMjg2LDk3IEBACiAjZGVmaW5lIEVNVTEwSzFfR1BSX1RSQU5TTEFUSU9OX09OT0ZGIDQKIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29udHJvbF9ncHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIGlkOwotIHVuc2lnbmVkIGludCB2Y291bnQ7Ci0gdW5zaWduZWQgaW50IGNvdW50OwotIHVuc2lnbmVkIHNob3J0IGdwclszMl07CisgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CisgIHVuc2lnbmVkIGludCB2Y291bnQ7CisgIHVuc2lnbmVkIGludCBjb3VudDsKKyAgdW5zaWduZWQgc2hvcnQgZ3ByWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZhbHVlWzMyXTsKLSB1bnNpZ25lZCBpbnQgbWluOwotIHVuc2lnbmVkIGludCBtYXg7Ci0gdW5zaWduZWQgaW50IHRyYW5zbGF0aW9uOworICB1bnNpZ25lZCBpbnQgdmFsdWVbMzJdOworICB1bnNpZ25lZCBpbnQgbWluOworICB1bnNpZ25lZCBpbnQgbWF4OworICB1bnNpZ25lZCBpbnQgdHJhbnNsYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbnN0IHVuc2lnbmVkIGludCAqdGx2OworICBjb25zdCB1bnNpZ25lZCBpbnQgKiB0bHY7CiB9Owogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX29sZF9ncHIgewotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CisgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2Y291bnQ7Ci0gdW5zaWduZWQgaW50IGNvdW50OwotIHVuc2lnbmVkIHNob3J0IGdwclszMl07Ci0gdW5zaWduZWQgaW50IHZhbHVlWzMyXTsKKyAgdW5zaWduZWQgaW50IHZjb3VudDsKKyAgdW5zaWduZWQgaW50IGNvdW50OworICB1bnNpZ25lZCBzaG9ydCBncHJbMzJdOworICB1bnNpZ25lZCBpbnQgdmFsdWVbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbWluOwotIHVuc2lnbmVkIGludCBtYXg7Ci0gdW5zaWduZWQgaW50IHRyYW5zbGF0aW9uOworICB1bnNpZ25lZCBpbnQgbWluOworICB1bnNpZ25lZCBpbnQgbWF4OworICB1bnNpZ25lZCBpbnQgdHJhbnNsYXRpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29kZSB7Ci0gY2hhciBuYW1lWzEyOF07Ci0gREVDTEFSRV9CSVRNQVAoZ3ByX3ZhbGlkLCAweDIwMCk7Ci0gX191MzIgX191c2VyICpncHJfbWFwOworICBjaGFyIG5hbWVbMTI4XTsKKyAgREVDTEFSRV9CSVRNQVAoZ3ByX3ZhbGlkLCAweDIwMCk7CisgIF9fdTMyIF9fdXNlciAqIGdwcl9tYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBncHJfYWRkX2NvbnRyb2xfY291bnQ7Ci0gc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX2dwciBfX3VzZXIgKmdwcl9hZGRfY29udHJvbHM7Ci0gdW5zaWduZWQgaW50IGdwcl9kZWxfY29udHJvbF9jb3VudDsKLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIF9fdXNlciAqZ3ByX2RlbF9jb250cm9sczsKKyAgdW5zaWduZWQgaW50IGdwcl9hZGRfY29udHJvbF9jb3VudDsKKyAgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX2dwciBfX3VzZXIgKiBncHJfYWRkX2NvbnRyb2xzOworICB1bnNpZ25lZCBpbnQgZ3ByX2RlbF9jb250cm9sX2NvdW50OworICBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIF9fdXNlciAqIGdwcl9kZWxfY29udHJvbHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBncHJfbGlzdF9jb250cm9sX2NvdW50OwotIHVuc2lnbmVkIGludCBncHJfbGlzdF9jb250cm9sX3RvdGFsOwotIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29udHJvbF9ncHIgX191c2VyICpncHJfbGlzdF9jb250cm9sczsKLSBERUNMQVJFX0JJVE1BUCh0cmFtX3ZhbGlkLCAweDEwMCk7CisgIHVuc2lnbmVkIGludCBncHJfbGlzdF9jb250cm9sX2NvdW50OworICB1bnNpZ25lZCBpbnQgZ3ByX2xpc3RfY29udHJvbF90b3RhbDsKKyAgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX2dwciBfX3VzZXIgKiBncHJfbGlzdF9jb250cm9sczsKKyAgREVDTEFSRV9CSVRNQVAodHJhbV92YWxpZCwgMHgxMDApOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX3VzZXIgKnRyYW1fZGF0YV9tYXA7Ci0gX191MzIgX191c2VyICp0cmFtX2FkZHJfbWFwOwotIERFQ0xBUkVfQklUTUFQKGNvZGVfdmFsaWQsIDEwMjQpOwotIF9fdTMyIF9fdXNlciAqY29kZTsKKyAgX191MzIgX191c2VyICogdHJhbV9kYXRhX21hcDsKKyAgX191MzIgX191c2VyICogdHJhbV9hZGRyX21hcDsKKyAgREVDTEFSRV9CSVRNQVAoY29kZV92YWxpZCwgMTAyNCk7CisgIF9fdTMyIF9fdXNlciAqIGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfdHJhbSB7Ci0gdW5zaWduZWQgaW50IGFkZHJlc3M7Ci0gdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBhZGRyZXNzOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50ICpzYW1wbGVzOworICB1bnNpZ25lZCBpbnQgKiBzYW1wbGVzOwogfTsKIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfcGNtX3JlYyB7Ci0gdW5zaWduZWQgaW50IHN1YnN0cmVhbTsKKyAgdW5zaWduZWQgaW50IHN1YnN0cmVhbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlczE7Ci0gdW5zaWduZWQgaW50IGNoYW5uZWxzOwotIHVuc2lnbmVkIGludCB0cmFtX3N0YXJ0OwotIHVuc2lnbmVkIGludCBidWZmZXJfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHJlczE7CisgIHVuc2lnbmVkIGludCBjaGFubmVsczsKKyAgdW5zaWduZWQgaW50IHRyYW1fc3RhcnQ7CisgIHVuc2lnbmVkIGludCBidWZmZXJfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZ3ByX3NpemU7Ci0gdW5zaWduZWQgc2hvcnQgZ3ByX3B0cjsKLSB1bnNpZ25lZCBzaG9ydCBncHJfY291bnQ7Ci0gdW5zaWduZWQgc2hvcnQgZ3ByX3RtcGNvdW50OworICB1bnNpZ25lZCBzaG9ydCBncHJfc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgZ3ByX3B0cjsKKyAgdW5zaWduZWQgc2hvcnQgZ3ByX2NvdW50OworICB1bnNpZ25lZCBzaG9ydCBncHJfdG1wY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGdwcl90cmlnZ2VyOwotIHVuc2lnbmVkIHNob3J0IGdwcl9ydW5uaW5nOwotIHVuc2lnbmVkIGNoYXIgcGFkOwotIHVuc2lnbmVkIGNoYXIgZXRyYW1bMzJdOworICB1bnNpZ25lZCBzaG9ydCBncHJfdHJpZ2dlcjsKKyAgdW5zaWduZWQgc2hvcnQgZ3ByX3J1bm5pbmc7CisgIHVuc2lnbmVkIGNoYXIgcGFkOworICB1bnNpZ25lZCBjaGFyIGV0cmFtWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlczI7CisgIHVuc2lnbmVkIGludCByZXMyOwogfTsKICNkZWZpbmUgU05EUlZfRU1VMTBLMV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMSwgMCwgMSkKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9JTkZPIF9JT1IgKCdIJywgMHgxMCwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9pbmZvKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0lORk8gX0lPUignSCcsIDB4MTAsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfQ09ERV9QT0tFIF9JT1cgKCdIJywgMHgxMSwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb2RlKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0NPREVfUE9LRSBfSU9XKCdIJywgMHgxMSwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb2RlKQogI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0NPREVfUEVFSyBfSU9XUignSCcsIDB4MTIsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29kZSkKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9UUkFNX1NFVFVQIF9JT1cgKCdIJywgMHgyMCwgaW50KQotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1RSQU1fUE9LRSBfSU9XICgnSCcsIDB4MjEsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfdHJhbSkKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9UUkFNX1NFVFVQIF9JT1coJ0gnLCAweDIwLCBpbnQpCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfVFJBTV9QT0tFIF9JT1coJ0gnLCAweDIxLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX3RyYW0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1RSQU1fUEVFSyBfSU9XUignSCcsIDB4MjIsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfdHJhbSkKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9QQ01fUE9LRSBfSU9XICgnSCcsIDB4MzAsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfcGNtX3JlYykKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9QQ01fUE9LRSBfSU9XKCdIJywgMHgzMCwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9wY21fcmVjKQogI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1BDTV9QRUVLIF9JT1dSKCdIJywgMHgzMSwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9wY21fcmVjKQotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1BWRVJTSU9OIF9JT1IgKCdIJywgMHg0MCwgaW50KQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ0gnLCAweDQwLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1NUT1AgX0lPICgnSCcsIDB4ODApCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfQ09OVElOVUUgX0lPICgnSCcsIDB4ODEpCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfWkVST19UUkFNX0NPVU5URVIgX0lPICgnSCcsIDB4ODIpCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfU0lOR0xFX1NURVAgX0lPVyAoJ0gnLCAweDgzLCBpbnQpCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfU1RPUCBfSU8oJ0gnLCAweDgwKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0NPTlRJTlVFIF9JTygnSCcsIDB4ODEpCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfWkVST19UUkFNX0NPVU5URVIgX0lPKCdIJywgMHg4MikKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9TSU5HTEVfU1RFUCBfSU9XKCdIJywgMHg4MywgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9EQkdfUkVBRCBfSU9SICgnSCcsIDB4ODQsIGludCkKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9EQkdfUkVBRCBfSU9SKCdIJywgMHg4NCwgaW50KQogdHlwZWRlZiBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2luZm8gZW11MTBrMV9meDgwMTBfaW5mb190OwogdHlwZWRlZiBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvbnRyb2xfZ3ByIGVtdTEwazFfZng4MDEwX2NvbnRyb2xfZ3ByX3Q7CiB0eXBlZGVmIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29kZSBlbXUxMGsxX2Z4ODAxMF9jb2RlX3Q7CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2ZpcmV3aXJlLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2ZpcmV3aXJlLmgKaW5kZXggNWQwZmQxNC4uNzk2NWZjNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9maXJld2lyZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvZmlyZXdpcmUuaApAQCAtMTksNDAgKzE5LDYzIEBACiAjaWZuZGVmIF9VQVBJX1NPVU5EX0ZJUkVXSVJFX0hfSU5DTFVERUQKICNkZWZpbmUgX1VBUElfU09VTkRfRklSRVdJUkVfSF9JTkNMVURFRAogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX0VWRU5UX0xPQ0tfU1RBVFVTIDB4MDAwMDEwY2MKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX0VWRU5UX0RJQ0VfTk9USUZJQ0FUSU9OIDB4ZDFjZTAwNGUKKyNkZWZpbmUgU05EUlZfRklSRVdJUkVfRVZFTlRfRUZXX1JFU1BPTlNFIDB4NGU2MTc0NzUKIHN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfY29tbW9uIHsKLSB1bnNpZ25lZCBpbnQgdHlwZTsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgdHlwZTsKK307CiBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2xvY2tfc3RhdHVzIHsKLSB1bnNpZ25lZCBpbnQgdHlwZTsKLSB1bnNpZ25lZCBpbnQgc3RhdHVzOworICB1bnNpZ25lZCBpbnQgdHlwZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBzdGF0dXM7Cit9Oworc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9kaWNlX25vdGlmaWNhdGlvbiB7CisgIHVuc2lnbmVkIGludCB0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IG5vdGlmaWNhdGlvbjsKK307CisjZGVmaW5lIFNORF9FRldfVFJBTlNBQ1RJT05fVVNFUl9TRVFOVU1fTUFYICgoX191MzIpICgoX191MTYpIH4wKSAtIDEpCitzdHJ1Y3Qgc25kX2Vmd190cmFuc2FjdGlvbiB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMzIgbGVuZ3RoOworICBfX2JlMzIgdmVyc2lvbjsKKyAgX19iZTMyIHNlcW51bTsKKyAgX19iZTMyIGNhdGVnb3J5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTMyIGNvbW1hbmQ7CisgIF9fYmUzMiBzdGF0dXM7CisgIF9fYmUzMiBwYXJhbXNbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfZGljZV9ub3RpZmljYXRpb24gewotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBub3RpZmljYXRpb247CitzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2Vmd19yZXNwb25zZSB7CisgIHVuc2lnbmVkIGludCB0eXBlOworICBfX2JlMzIgcmVzcG9uc2VbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIHNuZF9maXJld2lyZV9ldmVudCB7Ci0gc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9jb21tb24gY29tbW9uOwotIHN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfbG9ja19zdGF0dXMgbG9ja19zdGF0dXM7Ci0gc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9kaWNlX25vdGlmaWNhdGlvbiBkaWNlX25vdGlmaWNhdGlvbjsKKyAgc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9jb21tb24gY29tbW9uOworICBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2xvY2tfc3RhdHVzIGxvY2tfc3RhdHVzOworICBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2RpY2Vfbm90aWZpY2F0aW9uIGRpY2Vfbm90aWZpY2F0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9lZndfcmVzcG9uc2UgZWZ3X3Jlc3BvbnNlOwogfTsKICNkZWZpbmUgU05EUlZfRklSRVdJUkVfSU9DVExfR0VUX0lORk8gX0lPUignSCcsIDB4ZjgsIHN0cnVjdCBzbmRfZmlyZXdpcmVfZ2V0X2luZm8pCiAjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX0lPQ1RMX0xPQ0sgX0lPKCdIJywgMHhmOSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX0lPQ1RMX1VOTE9DSyBfSU8oJ0gnLCAweGZhKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfRklSRVdJUkVfVFlQRV9ESUNFIDEKLXN0cnVjdCBzbmRfZmlyZXdpcmVfZ2V0X2luZm8gewotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBjYXJkOworI2RlZmluZSBTTkRSVl9GSVJFV0lSRV9UWVBFX0ZJUkVXT1JLUyAyCisjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX1RZUEVfQkVCT0IgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGd1aWRbOF07Ci0gY2hhciBkZXZpY2VfbmFtZVsxNl07CitzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2dldF9pbmZvIHsKKyAgdW5zaWduZWQgaW50IHR5cGU7CisgIHVuc2lnbmVkIGludCBjYXJkOworICB1bnNpZ25lZCBjaGFyIGd1aWRbOF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIGRldmljZV9uYW1lWzE2XTsKIH07CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2hkc3AuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcC5oCmluZGV4IDgxODU1YjcuLmQyMTU1ZTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcC5oCkBAIC0yMiw3OCArMjIsNzggQEAKICNkZWZpbmUgSERTUF9NQVRSSVhfTUlYRVJfU0laRSAyMDQ4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBIRFNQX0lPX1R5cGUgewotIERpZ2lmYWNlLAotIE11bHRpZmFjZSwKLSBIOTY1MiwKKyAgRGlnaWZhY2UsCisgIE11bHRpZmFjZSwKKyAgSDk2NTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEg5NjMyLAotIFJQTSwKLSBVbmRlZmluZWQsCisgIEg5NjMyLAorICBSUE0sCisgIFVuZGVmaW5lZCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkc3BfcGVha19ybXMgewotIF9fdTMyIGlucHV0X3BlYWtzWzI2XTsKLSBfX3UzMiBwbGF5YmFja19wZWFrc1syNl07Ci0gX191MzIgb3V0cHV0X3BlYWtzWzI4XTsKKyAgX191MzIgaW5wdXRfcGVha3NbMjZdOworICBfX3UzMiBwbGF5YmFja19wZWFrc1syNl07CisgIF9fdTMyIG91dHB1dF9wZWFrc1syOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGlucHV0X3Jtc1syNl07Ci0gX191NjQgcGxheWJhY2tfcm1zWzI2XTsKLSBfX3U2NCBvdXRwdXRfcm1zWzI2XTsKKyAgX191NjQgaW5wdXRfcm1zWzI2XTsKKyAgX191NjQgcGxheWJhY2tfcm1zWzI2XTsKKyAgX191NjQgb3V0cHV0X3Jtc1syNl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfSERTUF9JT0NUTF9HRVRfUEVBS19STVMgX0lPUignSCcsIDB4NDAsIHN0cnVjdCBoZHNwX3BlYWtfcm1zKQogc3RydWN0IGhkc3BfY29uZmlnX2luZm8gewotIHVuc2lnbmVkIGNoYXIgcHJlZl9zeW5jX3JlZjsKLSB1bnNpZ25lZCBjaGFyIHdvcmRjbG9ja19zeW5jX2NoZWNrOworICB1bnNpZ25lZCBjaGFyIHByZWZfc3luY19yZWY7CisgIHVuc2lnbmVkIGNoYXIgd29yZGNsb2NrX3N5bmNfY2hlY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3BkaWZfc3luY19jaGVjazsKLSB1bnNpZ25lZCBjaGFyIGFkYXRzeW5jX3N5bmNfY2hlY2s7Ci0gdW5zaWduZWQgY2hhciBhZGF0X3N5bmNfY2hlY2tbM107Ci0gdW5zaWduZWQgY2hhciBzcGRpZl9pbjsKKyAgdW5zaWduZWQgY2hhciBzcGRpZl9zeW5jX2NoZWNrOworICB1bnNpZ25lZCBjaGFyIGFkYXRzeW5jX3N5bmNfY2hlY2s7CisgIHVuc2lnbmVkIGNoYXIgYWRhdF9zeW5jX2NoZWNrWzNdOworICB1bnNpZ25lZCBjaGFyIHNwZGlmX2luOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHNwZGlmX291dDsKLSB1bnNpZ25lZCBjaGFyIHNwZGlmX3Byb2Zlc3Npb25hbDsKLSB1bnNpZ25lZCBjaGFyIHNwZGlmX2VtcGhhc2lzOwotIHVuc2lnbmVkIGNoYXIgc3BkaWZfbm9uYXVkaW87CisgIHVuc2lnbmVkIGNoYXIgc3BkaWZfb3V0OworICB1bnNpZ25lZCBjaGFyIHNwZGlmX3Byb2Zlc3Npb25hbDsKKyAgdW5zaWduZWQgY2hhciBzcGRpZl9lbXBoYXNpczsKKyAgdW5zaWduZWQgY2hhciBzcGRpZl9ub25hdWRpbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNwZGlmX3NhbXBsZV9yYXRlOwotIHVuc2lnbmVkIGludCBzeXN0ZW1fc2FtcGxlX3JhdGU7Ci0gdW5zaWduZWQgaW50IGF1dG9zeW5jX3NhbXBsZV9yYXRlOwotIHVuc2lnbmVkIGNoYXIgc3lzdGVtX2Nsb2NrX21vZGU7CisgIHVuc2lnbmVkIGludCBzcGRpZl9zYW1wbGVfcmF0ZTsKKyAgdW5zaWduZWQgaW50IHN5c3RlbV9zYW1wbGVfcmF0ZTsKKyAgdW5zaWduZWQgaW50IGF1dG9zeW5jX3NhbXBsZV9yYXRlOworICB1bnNpZ25lZCBjaGFyIHN5c3RlbV9jbG9ja19tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNsb2NrX3NvdXJjZTsKLSB1bnNpZ25lZCBjaGFyIGF1dG9zeW5jX3JlZjsKLSB1bnNpZ25lZCBjaGFyIGxpbmVfb3V0OwotIHVuc2lnbmVkIGNoYXIgcGFzc3RocnU7CisgIHVuc2lnbmVkIGNoYXIgY2xvY2tfc291cmNlOworICB1bnNpZ25lZCBjaGFyIGF1dG9zeW5jX3JlZjsKKyAgdW5zaWduZWQgY2hhciBsaW5lX291dDsKKyAgdW5zaWduZWQgY2hhciBwYXNzdGhydTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkYV9nYWluOwotIHVuc2lnbmVkIGNoYXIgYWRfZ2FpbjsKLSB1bnNpZ25lZCBjaGFyIHBob25lX2dhaW47Ci0gdW5zaWduZWQgY2hhciB4bHJfYnJlYWtvdXRfY2FibGU7CisgIHVuc2lnbmVkIGNoYXIgZGFfZ2FpbjsKKyAgdW5zaWduZWQgY2hhciBhZF9nYWluOworICB1bnNpZ25lZCBjaGFyIHBob25lX2dhaW47CisgIHVuc2lnbmVkIGNoYXIgeGxyX2JyZWFrb3V0X2NhYmxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGFuYWxvZ19leHRlbnNpb25fYm9hcmQ7CisgIHVuc2lnbmVkIGNoYXIgYW5hbG9nX2V4dGVuc2lvbl9ib2FyZDsKIH07CiAjZGVmaW5lIFNORFJWX0hEU1BfSU9DVExfR0VUX0NPTkZJR19JTkZPIF9JT1IoJ0gnLCAweDQxLCBzdHJ1Y3QgaGRzcF9jb25maWdfaW5mbykKIHN0cnVjdCBoZHNwX2Zpcm13YXJlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKmZpcm13YXJlX2RhdGE7CisgIHZvaWQgX191c2VyICogZmlybXdhcmVfZGF0YTsKIH07CiAjZGVmaW5lIFNORFJWX0hEU1BfSU9DVExfVVBMT0FEX0ZJUk1XQVJFIF9JT1coJ0gnLCAweDQyLCBzdHJ1Y3QgaGRzcF9maXJtd2FyZSkKIHN0cnVjdCBoZHNwX3ZlcnNpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIEhEU1BfSU9fVHlwZSBpb190eXBlOwotIHVuc2lnbmVkIHNob3J0IGZpcm13YXJlX3JldjsKKyAgZW51bSBIRFNQX0lPX1R5cGUgaW9fdHlwZTsKKyAgdW5zaWduZWQgc2hvcnQgZmlybXdhcmVfcmV2OwogfTsKICNkZWZpbmUgU05EUlZfSERTUF9JT0NUTF9HRVRfVkVSU0lPTiBfSU9SKCdIJywgMHg0Mywgc3RydWN0IGhkc3BfdmVyc2lvbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGRzcF9taXhlciB7Ci0gdW5zaWduZWQgc2hvcnQgbWF0cml4W0hEU1BfTUFUUklYX01JWEVSX1NJWkVdOworICB1bnNpZ25lZCBzaG9ydCBtYXRyaXhbSERTUF9NQVRSSVhfTUlYRVJfU0laRV07CiB9OwogI2RlZmluZSBTTkRSVl9IRFNQX0lPQ1RMX0dFVF9NSVhFUiBfSU9SKCdIJywgMHg0NCwgc3RydWN0IGhkc3BfbWl4ZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkc3BfOTYzMl9hZWIgewotIGludCBhZWJpOwotIGludCBhZWJvOworICBpbnQgYWViaTsKKyAgaW50IGFlYm87CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfSERTUF9JT0NUTF9HRVRfOTYzMl9BRUIgX0lPUignSCcsIDB4NDUsIHN0cnVjdCBoZHNwXzk2MzJfYWViKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwbS5oCmluZGV4IDhiMzY4OGYuLjE2ZDAzYmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2hkc3BtLmgKQEAgLTIxLDE1NyArMjEsMTU3IEBACiAjZGVmaW5lIEhEU1BNX01BWF9DSEFOTkVMUyA2NAogZW51bSBoZHNwbV9pb190eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUFESSwKLSBNQURJZmFjZSwKLSBBSU8sCi0gQUVTMzIsCisgIE1BREksCisgIE1BRElmYWNlLAorICBBSU8sCisgIEFFUzMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSYXlEQVQKKyAgUmF5REFUCiB9OwogZW51bSBoZHNwbV9zcGVlZCB7Ci0gc3MsCisgIHNzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcywKLSBxcworICBkcywKKyAgcXMKIH07CiBzdHJ1Y3QgaGRzcG1fcGVha19ybXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBpbnB1dF9wZWFrc1s2NF07Ci0gdWludDMyX3QgcGxheWJhY2tfcGVha3NbNjRdOwotIHVpbnQzMl90IG91dHB1dF9wZWFrc1s2NF07Ci0gdWludDY0X3QgaW5wdXRfcm1zWzY0XTsKKyAgdWludDMyX3QgaW5wdXRfcGVha3NbNjRdOworICB1aW50MzJfdCBwbGF5YmFja19wZWFrc1s2NF07CisgIHVpbnQzMl90IG91dHB1dF9wZWFrc1s2NF07CisgIHVpbnQ2NF90IGlucHV0X3Jtc1s2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHBsYXliYWNrX3Jtc1s2NF07Ci0gdWludDY0X3Qgb3V0cHV0X3Jtc1s2NF07Ci0gdWludDhfdCBzcGVlZDsKLSBpbnQgc3RhdHVzMjsKKyAgdWludDY0X3QgcGxheWJhY2tfcm1zWzY0XTsKKyAgdWludDY0X3Qgb3V0cHV0X3Jtc1s2NF07CisgIHVpbnQ4X3Qgc3BlZWQ7CisgIGludCBzdGF0dXMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9QRUFLX1JNUyAgIF9JT1IoJ0gnLCAweDQyLCBzdHJ1Y3QgaGRzcG1fcGVha19ybXMpCisjZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9QRUFLX1JNUyBfSU9SKCdIJywgMHg0Miwgc3RydWN0IGhkc3BtX3BlYWtfcm1zKQogc3RydWN0IGhkc3BtX2NvbmZpZyB7Ci0gdW5zaWduZWQgY2hhciBwcmVmX3N5bmNfcmVmOworICB1bnNpZ25lZCBjaGFyIHByZWZfc3luY19yZWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgd29yZGNsb2NrX3N5bmNfY2hlY2s7Ci0gdW5zaWduZWQgY2hhciBtYWRpX3N5bmNfY2hlY2s7Ci0gdW5zaWduZWQgaW50IHN5c3RlbV9zYW1wbGVfcmF0ZTsKLSB1bnNpZ25lZCBpbnQgYXV0b3N5bmNfc2FtcGxlX3JhdGU7CisgIHVuc2lnbmVkIGNoYXIgd29yZGNsb2NrX3N5bmNfY2hlY2s7CisgIHVuc2lnbmVkIGNoYXIgbWFkaV9zeW5jX2NoZWNrOworICB1bnNpZ25lZCBpbnQgc3lzdGVtX3NhbXBsZV9yYXRlOworICB1bnNpZ25lZCBpbnQgYXV0b3N5bmNfc2FtcGxlX3JhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3lzdGVtX2Nsb2NrX21vZGU7Ci0gdW5zaWduZWQgY2hhciBjbG9ja19zb3VyY2U7Ci0gdW5zaWduZWQgY2hhciBhdXRvc3luY19yZWY7Ci0gdW5zaWduZWQgY2hhciBsaW5lX291dDsKKyAgdW5zaWduZWQgY2hhciBzeXN0ZW1fY2xvY2tfbW9kZTsKKyAgdW5zaWduZWQgY2hhciBjbG9ja19zb3VyY2U7CisgIHVuc2lnbmVkIGNoYXIgYXV0b3N5bmNfcmVmOworICB1bnNpZ25lZCBjaGFyIGxpbmVfb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGFzc3RocnU7Ci0gdW5zaWduZWQgaW50IGFuYWxvZ19vdXQ7CisgIHVuc2lnbmVkIGludCBwYXNzdGhydTsKKyAgdW5zaWduZWQgaW50IGFuYWxvZ19vdXQ7CiB9OwotI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfQ09ORklHICAgX0lPUignSCcsIDB4NDEsIHN0cnVjdCBoZHNwbV9jb25maWcpCisjZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9DT05GSUcgX0lPUignSCcsIDB4NDEsIHN0cnVjdCBoZHNwbV9jb25maWcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBoZHNwbV9sdGNfZm9ybWF0IHsKLSBmb3JtYXRfaW52YWxpZCwKLSBmcHNfMjQsCi0gZnBzXzI1LAorICBmb3JtYXRfaW52YWxpZCwKKyAgZnBzXzI0LAorICBmcHNfMjUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZwc18yOTk3LAotIGZwc18zMAorICBmcHNfMjk5NywKKyAgZnBzXzMwCiB9OwogZW51bSBoZHNwbV9sdGNfZnJhbWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmcmFtZV9pbnZhbGlkLAotIGRyb3BfZnJhbWUsCi0gZnVsbF9mcmFtZQorICBmcmFtZV9pbnZhbGlkLAorICBkcm9wX2ZyYW1lLAorICBmdWxsX2ZyYW1lCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gaGRzcG1fbHRjX2lucHV0X2Zvcm1hdCB7Ci0gbnRzYywKLSBwYWwsCi0gbm9fdmlkZW8KKyAgbnRzYywKKyAgcGFsLAorICBub192aWRlbwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaGRzcG1fbHRjIHsKLSB1bnNpZ25lZCBpbnQgbHRjOwotIGVudW0gaGRzcG1fbHRjX2Zvcm1hdCBmb3JtYXQ7CisgIHVuc2lnbmVkIGludCBsdGM7CisgIGVudW0gaGRzcG1fbHRjX2Zvcm1hdCBmb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gaGRzcG1fbHRjX2ZyYW1lIGZyYW1lOwotIGVudW0gaGRzcG1fbHRjX2lucHV0X2Zvcm1hdCBpbnB1dF9mb3JtYXQ7CisgIGVudW0gaGRzcG1fbHRjX2ZyYW1lIGZyYW1lOworICBlbnVtIGhkc3BtX2x0Y19pbnB1dF9mb3JtYXQgaW5wdXRfZm9ybWF0OwogfTsKICNkZWZpbmUgU05EUlZfSERTUE1fSU9DVExfR0VUX0xUQyBfSU9SKCdIJywgMHg0Niwgc3RydWN0IGhkc3BtX2x0YykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGhkc3BtX3N5bmMgewotIGhkc3BtX3N5bmNfbm9fbG9jayA9IDAsCi0gaGRzcG1fc3luY19sb2NrID0gMSwKLSBoZHNwbV9zeW5jX3N5bmMgPSAyCisgIGhkc3BtX3N5bmNfbm9fbG9jayA9IDAsCisgIGhkc3BtX3N5bmNfbG9jayA9IDEsCisgIGhkc3BtX3N5bmNfc3luYyA9IDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBoZHNwbV9tYWRpX2lucHV0IHsKLSBoZHNwbV9pbnB1dF9vcHRpY2FsID0gMCwKLSBoZHNwbV9pbnB1dF9jb2F4ID0gMQorICBoZHNwbV9pbnB1dF9vcHRpY2FsID0gMCwKKyAgaGRzcG1faW5wdXRfY29heCA9IDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBoZHNwbV9tYWRpX2NoYW5uZWxfZm9ybWF0IHsKLSBoZHNwbV9mb3JtYXRfY2hfNjQgPSAwLAotIGhkc3BtX2Zvcm1hdF9jaF81NiA9IDEKKyAgaGRzcG1fZm9ybWF0X2NoXzY0ID0gMCwKKyAgaGRzcG1fZm9ybWF0X2NoXzU2ID0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGhkc3BtX21hZGlfZnJhbWVfZm9ybWF0IHsKLSBoZHNwbV9mcmFtZV80OCA9IDAsCi0gaGRzcG1fZnJhbWVfOTYgPSAxCisgIGhkc3BtX2ZyYW1lXzQ4ID0gMCwKKyAgaGRzcG1fZnJhbWVfOTYgPSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gaGRzcG1fc3luY3NvdXJjZSB7Ci0gc3luY3NvdXJjZV93YyA9IDAsCi0gc3luY3NvdXJjZV9tYWRpID0gMSwKKyAgc3luY3NvdXJjZV93YyA9IDAsCisgIHN5bmNzb3VyY2VfbWFkaSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN5bmNzb3VyY2VfdGNvID0gMiwKLSBzeW5jc291cmNlX3N5bmMgPSAzLAotIHN5bmNzb3VyY2Vfbm9uZSA9IDQKKyAgc3luY3NvdXJjZV90Y28gPSAyLAorICBzeW5jc291cmNlX3N5bmMgPSAzLAorICBzeW5jc291cmNlX25vbmUgPSA0CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoZHNwbV9zdGF0dXMgewotIHVpbnQ4X3QgY2FyZF90eXBlOwotIGVudW0gaGRzcG1fc3luY3NvdXJjZSBhdXRvc3luY19zb3VyY2U7Ci0gdWludDY0X3QgY2FyZF9jbG9jazsKKyAgdWludDhfdCBjYXJkX3R5cGU7CisgIGVudW0gaGRzcG1fc3luY3NvdXJjZSBhdXRvc3luY19zb3VyY2U7CisgIHVpbnQ2NF90IGNhcmRfY2xvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG1hc3Rlcl9wZXJpb2Q7Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gdWludDhfdCBzeW5jX3djOworICB1aW50MzJfdCBtYXN0ZXJfcGVyaW9kOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ4X3Qgc3luY193YzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDhfdCBzeW5jX21hZGk7Ci0gdWludDhfdCBzeW5jX3RjbzsKLSB1aW50OF90IHN5bmNfaW47Ci0gdWludDhfdCBtYWRpX2lucHV0OworICAgICAgdWludDhfdCBzeW5jX21hZGk7CisgICAgICB1aW50OF90IHN5bmNfdGNvOworICAgICAgdWludDhfdCBzeW5jX2luOworICAgICAgdWludDhfdCBtYWRpX2lucHV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IGNoYW5uZWxfZm9ybWF0OwotIHVpbnQ4X3QgZnJhbWVfZm9ybWF0OwotIH0gbWFkaTsKLSB9IGNhcmRfc3BlY2lmaWM7CisgICAgICB1aW50OF90IGNoYW5uZWxfZm9ybWF0OworICAgICAgdWludDhfdCBmcmFtZV9mb3JtYXQ7CisgICAgfSBtYWRpOworICB9IGNhcmRfc3BlY2lmaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgU05EUlZfSERTUE1fSU9DVExfR0VUX1NUQVRVUyAgIF9JT1IoJ0gnLCAweDQ3LCBzdHJ1Y3QgaGRzcG1fc3RhdHVzKQorI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfU1RBVFVTIF9JT1IoJ0gnLCAweDQ3LCBzdHJ1Y3QgaGRzcG1fc3RhdHVzKQogI2RlZmluZSBIRFNQTV9BRERPTl9UQ08gMQogc3RydWN0IGhkc3BtX3ZlcnNpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IGNhcmRfdHlwZTsKLSBjaGFyIGNhcmRuYW1lWzIwXTsKLSB1bnNpZ25lZCBpbnQgc2VyaWFsOwotIHVuc2lnbmVkIHNob3J0IGZpcm13YXJlX3JldjsKKyAgdWludDhfdCBjYXJkX3R5cGU7CisgIGNoYXIgY2FyZG5hbWVbMjBdOworICB1bnNpZ25lZCBpbnQgc2VyaWFsOworICB1bnNpZ25lZCBzaG9ydCBmaXJtd2FyZV9yZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhZGRvbnM7CisgIGludCBhZGRvbnM7CiB9OwogI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfVkVSU0lPTiBfSU9SKCdIJywgMHg0OCwgc3RydWN0IGhkc3BtX3ZlcnNpb24pCiAjZGVmaW5lIEhEU1BNX01JWEVSX0NIQU5ORUxTIEhEU1BNX01BWF9DSEFOTkVMUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoZHNwbV9jaGFubmVsZmFkZXIgewotIHVuc2lnbmVkIGludCBpbltIRFNQTV9NSVhFUl9DSEFOTkVMU107Ci0gdW5zaWduZWQgaW50IHBiW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKKyAgdW5zaWduZWQgaW50IGluW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKKyAgdW5zaWduZWQgaW50IHBiW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkc3BtX21peGVyIHsKLSBzdHJ1Y3QgaGRzcG1fY2hhbm5lbGZhZGVyIGNoW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKKyAgc3RydWN0IGhkc3BtX2NoYW5uZWxmYWRlciBjaFtIRFNQTV9NSVhFUl9DSEFOTkVMU107CiB9Owogc3RydWN0IGhkc3BtX21peGVyX2lvY3RsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGhkc3BtX21peGVyICptaXhlcjsKKyAgc3RydWN0IGhkc3BtX21peGVyICogbWl4ZXI7CiB9OwogI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfTUlYRVIgX0lPUignSCcsIDB4NDQsIHN0cnVjdCBoZHNwbV9taXhlcl9pb2N0bCkKIHR5cGVkZWYgc3RydWN0IGhkc3BtX3BlYWtfcm1zIGhkc3BtX3BlYWtfcm1zX3Q7CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NiMTZfY3NwLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NiMTZfY3NwLmgKaW5kZXggMjljMWEwMS4uYTAyZTZiYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9zYjE2X2NzcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvc2IxNl9jc3AuaApAQCAtNDgsMzggKzQ4LDM4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TQl9DU1BfTUFYX01JQ1JPQ09ERV9GSUxFX1NJWkUgMHgzMDAwCiBzdHJ1Y3Qgc25kX3NiX2NzcF9tY19oZWFkZXIgewotIGNoYXIgY29kZWNfbmFtZVsxNl07Ci0gdW5zaWduZWQgc2hvcnQgZnVuY19yZXE7CisgIGNoYXIgY29kZWNfbmFtZVsxNl07CisgIHVuc2lnbmVkIHNob3J0IGZ1bmNfcmVxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3NiX2NzcF9taWNyb2NvZGUgewotIHN0cnVjdCBzbmRfc2JfY3NwX21jX2hlYWRlciBpbmZvOwotIHVuc2lnbmVkIGNoYXIgZGF0YVtTTkRSVl9TQl9DU1BfTUFYX01JQ1JPQ09ERV9GSUxFX1NJWkVdOworICBzdHJ1Y3Qgc25kX3NiX2NzcF9tY19oZWFkZXIgaW5mbzsKKyAgdW5zaWduZWQgY2hhciBkYXRhW1NORFJWX1NCX0NTUF9NQVhfTUlDUk9DT0RFX0ZJTEVfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2JfY3NwX3N0YXJ0IHsKLSBpbnQgc2FtcGxlX3dpZHRoOwotIGludCBjaGFubmVsczsKKyAgaW50IHNhbXBsZV93aWR0aDsKKyAgaW50IGNoYW5uZWxzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3NiX2NzcF9pbmZvIHsKLSBjaGFyIGNvZGVjX25hbWVbMTZdOwotIHVuc2lnbmVkIHNob3J0IGZ1bmNfbnI7CisgIGNoYXIgY29kZWNfbmFtZVsxNl07CisgIHVuc2lnbmVkIHNob3J0IGZ1bmNfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhY2NfZm9ybWF0OwotIHVuc2lnbmVkIHNob3J0IGFjY19jaGFubmVsczsKLSB1bnNpZ25lZCBzaG9ydCBhY2Nfd2lkdGg7Ci0gdW5zaWduZWQgc2hvcnQgYWNjX3JhdGVzOworICB1bnNpZ25lZCBpbnQgYWNjX2Zvcm1hdDsKKyAgdW5zaWduZWQgc2hvcnQgYWNjX2NoYW5uZWxzOworICB1bnNpZ25lZCBzaG9ydCBhY2Nfd2lkdGg7CisgIHVuc2lnbmVkIHNob3J0IGFjY19yYXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgY3NwX21vZGU7Ci0gdW5zaWduZWQgc2hvcnQgcnVuX2NoYW5uZWxzOwotIHVuc2lnbmVkIHNob3J0IHJ1bl93aWR0aDsKLSB1bnNpZ25lZCBzaG9ydCB2ZXJzaW9uOworICB1bnNpZ25lZCBzaG9ydCBjc3BfbW9kZTsKKyAgdW5zaWduZWQgc2hvcnQgcnVuX2NoYW5uZWxzOworICB1bnNpZ25lZCBzaG9ydCBydW5fd2lkdGg7CisgIHVuc2lnbmVkIHNob3J0IHZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN0YXRlOworICB1bnNpZ25lZCBzaG9ydCBzdGF0ZTsKIH07CiAjZGVmaW5lIFNORFJWX1NCX0NTUF9JT0NUTF9JTkZPIF9JT1IoJ0gnLCAweDEwLCBzdHJ1Y3Qgc25kX3NiX2NzcF9pbmZvKQotI2RlZmluZSBTTkRSVl9TQl9DU1BfSU9DVExfTE9BRF9DT0RFICAgX0lPQyhfSU9DX1dSSVRFLCAnSCcsIDB4MTEsIHNpemVvZihzdHJ1Y3Qgc25kX3NiX2NzcF9taWNyb2NvZGUpKQorI2RlZmluZSBTTkRSVl9TQl9DU1BfSU9DVExfTE9BRF9DT0RFIF9JT0MoX0lPQ19XUklURSwgJ0gnLCAweDExLCBzaXplb2Yoc3RydWN0IHNuZF9zYl9jc3BfbWljcm9jb2RlKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NCX0NTUF9JT0NUTF9VTkxPQURfQ09ERSBfSU8oJ0gnLCAweDEyKQogI2RlZmluZSBTTkRSVl9TQl9DU1BfSU9DVExfU1RBUlQgX0lPVygnSCcsIDB4MTMsIHN0cnVjdCBzbmRfc2JfY3NwX3N0YXJ0KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9zZm50X2luZm8uaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvc2ZudF9pbmZvLmgKaW5kZXggYWJlNmE1NS4uZTRkMzFjOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9zZm50X2luZm8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NmbnRfaW5mby5oCkBAIC0yMSwyMCArMjEsMjAgQEAKICNpbmNsdWRlIDxzb3VuZC9hc291bmQuaD4KICNpZmRlZiBTTkRSVl9CSUdfRU5ESUFOCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9PU1NfUEFUQ0hLRVkoaWQpICgweGZkMDB8aWQpCisjZGVmaW5lIFNORFJWX09TU19QQVRDSEtFWShpZCkgKDB4ZmQwMCB8IGlkKQogI2Vsc2UKLSNkZWZpbmUgU05EUlZfT1NTX1BBVENIS0VZKGlkKSAoKGlkPDw4KXwweGZkKQorI2RlZmluZSBTTkRSVl9PU1NfUEFUQ0hLRVkoaWQpICgoaWQgPDwgOCkgfCAweGZkKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvdW5kZm9udF9wYXRjaF9pbmZvIHsKLSB1bnNpZ25lZCBzaG9ydCBrZXk7CisgIHVuc2lnbmVkIHNob3J0IGtleTsKICNkZWZpbmUgU05EUlZfT1NTX1NPVU5ERk9OVF9QQVRDSCBTTkRSVl9PU1NfUEFUQ0hLRVkoMHgwNykKLSBzaG9ydCBkZXZpY2Vfbm87CisgIHNob3J0IGRldmljZV9ubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc2ZfaWQ7Ci0gc2hvcnQgb3B0YXJnOwotIGludCBsZW47Ci0gc2hvcnQgdHlwZTsKKyAgdW5zaWduZWQgc2hvcnQgc2ZfaWQ7CisgIHNob3J0IG9wdGFyZzsKKyAgaW50IGxlbjsKKyAgc2hvcnQgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NGTlRfTE9BRF9JTkZPIDAKICNkZWZpbmUgU05EUlZfU0ZOVF9MT0FEX0RBVEEgMQpAQCAtNDYsNTkgKzQ2LDU5IEBACiAjZGVmaW5lIFNORFJWX1NGTlRfUFJPQkVfREFUQSA4CiAjZGVmaW5lIFNORFJWX1NGTlRfUkVNT1ZFX0lORk8gOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCByZXNlcnZlZDsKKyAgc2hvcnQgcmVzZXJ2ZWQ7CiB9OwogI2RlZmluZSBTTkRSVl9TRk5UX1BBVENIX05BTUVfTEVOIDMyCiBzdHJ1Y3Qgc291bmRmb250X29wZW5fcGFybSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHR5cGU7CisgIHVuc2lnbmVkIHNob3J0IHR5cGU7CiAjZGVmaW5lIFNORFJWX1NGTlRfUEFUX1RZUEVfTUlTQyAwCiAjZGVmaW5lIFNORFJWX1NGTlRfUEFUX1RZUEVfR1VTIDYKICNkZWZpbmUgU05EUlZfU0ZOVF9QQVRfVFlQRV9NQVAgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0ZOVF9QQVRfTE9DS0VEIDB4MTAwCiAjZGVmaW5lIFNORFJWX1NGTlRfUEFUX1NIQVJFRCAweDIwMAotIHNob3J0IHJlc2VydmVkOwotIGNoYXIgbmFtZVtTTkRSVl9TRk5UX1BBVENIX05BTUVfTEVOXTsKKyAgc2hvcnQgcmVzZXJ2ZWQ7CisgIGNoYXIgbmFtZVtTTkRSVl9TRk5UX1BBVENIX05BTUVfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNvdW5kZm9udF92b2ljZV9wYXJtIHsKLSB1bnNpZ25lZCBzaG9ydCBtb2RkZWxheTsKLSB1bnNpZ25lZCBzaG9ydCBtb2RhdGtobGQ7CisgIHVuc2lnbmVkIHNob3J0IG1vZGRlbGF5OworICB1bnNpZ25lZCBzaG9ydCBtb2RhdGtobGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IG1vZGRjeXN1czsKLSB1bnNpZ25lZCBzaG9ydCBtb2RyZWxlYXNlOwotIHNob3J0IG1vZGtleWhvbGQsIG1vZGtleWRlY2F5OwotIHVuc2lnbmVkIHNob3J0IHZvbGRlbGF5OworICB1bnNpZ25lZCBzaG9ydCBtb2RkY3lzdXM7CisgIHVuc2lnbmVkIHNob3J0IG1vZHJlbGVhc2U7CisgIHNob3J0IG1vZGtleWhvbGQsIG1vZGtleWRlY2F5OworICB1bnNpZ25lZCBzaG9ydCB2b2xkZWxheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgdm9sYXRraGxkOwotIHVuc2lnbmVkIHNob3J0IHZvbGRjeXN1czsKLSB1bnNpZ25lZCBzaG9ydCB2b2xyZWxlYXNlOwotIHNob3J0IHZvbGtleWhvbGQsIHZvbGtleWRlY2F5OworICB1bnNpZ25lZCBzaG9ydCB2b2xhdGtobGQ7CisgIHVuc2lnbmVkIHNob3J0IHZvbGRjeXN1czsKKyAgdW5zaWduZWQgc2hvcnQgdm9scmVsZWFzZTsKKyAgc2hvcnQgdm9sa2V5aG9sZCwgdm9sa2V5ZGVjYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGxmbzFkZWxheTsKLSB1bnNpZ25lZCBzaG9ydCBsZm8yZGVsYXk7Ci0gdW5zaWduZWQgc2hvcnQgcGVmZTsKLSB1bnNpZ25lZCBzaG9ydCBmbW1vZDsKKyAgdW5zaWduZWQgc2hvcnQgbGZvMWRlbGF5OworICB1bnNpZ25lZCBzaG9ydCBsZm8yZGVsYXk7CisgIHVuc2lnbmVkIHNob3J0IHBlZmU7CisgIHVuc2lnbmVkIHNob3J0IGZtbW9kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB0cmVtZnJxOwotIHVuc2lnbmVkIHNob3J0IGZtMmZycTI7Ci0gdW5zaWduZWQgY2hhciBjdXRvZmY7Ci0gdW5zaWduZWQgY2hhciBmaWx0ZXJROworICB1bnNpZ25lZCBzaG9ydCB0cmVtZnJxOworICB1bnNpZ25lZCBzaG9ydCBmbTJmcnEyOworICB1bnNpZ25lZCBjaGFyIGN1dG9mZjsKKyAgdW5zaWduZWQgY2hhciBmaWx0ZXJROwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNob3J1czsKLSB1bnNpZ25lZCBjaGFyIHJldmVyYjsKLSB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZFs0XTsKKyAgdW5zaWduZWQgY2hhciBjaG9ydXM7CisgIHVuc2lnbmVkIGNoYXIgcmV2ZXJiOworICB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZFs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvdW5kZm9udF92b2ljZV9pbmZvIHsKLSB1bnNpZ25lZCBzaG9ydCBzZl9pZDsKLSB1bnNpZ25lZCBzaG9ydCBzYW1wbGU7Ci0gaW50IHN0YXJ0LCBlbmQ7CisgIHVuc2lnbmVkIHNob3J0IHNmX2lkOworICB1bnNpZ25lZCBzaG9ydCBzYW1wbGU7CisgIGludCBzdGFydCwgZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbG9vcHN0YXJ0LCBsb29wZW5kOwotIHNob3J0IHJhdGVfb2Zmc2V0OwotIHVuc2lnbmVkIHNob3J0IG1vZGU7CisgIGludCBsb29wc3RhcnQsIGxvb3BlbmQ7CisgIHNob3J0IHJhdGVfb2Zmc2V0OworICB1bnNpZ25lZCBzaG9ydCBtb2RlOwogI2RlZmluZSBTTkRSVl9TRk5UX01PREVfUk9NU09VTkQgMHg4MDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRk5UX01PREVfU1RFUkVPIDEKQEAgLTEwNiw0MyArMTA2LDQzIEBACiAjZGVmaW5lIFNORFJWX1NGTlRfTU9ERV9OT1JFTEVBU0UgNAogI2RlZmluZSBTTkRSVl9TRk5UX01PREVfSU5JVF9QQVJNIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgcm9vdDsKLSBzaG9ydCB0dW5lOwotIHVuc2lnbmVkIGNoYXIgbG93LCBoaWdoOwotIHVuc2lnbmVkIGNoYXIgdmVsbG93LCB2ZWxoaWdoOworICBzaG9ydCByb290OworICBzaG9ydCB0dW5lOworICB1bnNpZ25lZCBjaGFyIGxvdywgaGlnaDsKKyAgdW5zaWduZWQgY2hhciB2ZWxsb3csIHZlbGhpZ2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpZ25lZCBjaGFyIGZpeGtleSwgZml4dmVsOwotIHNpZ25lZCBjaGFyIHBhbiwgZml4cGFuOwotIHNob3J0IGV4Y2x1c2l2ZUNsYXNzOwotIHVuc2lnbmVkIGNoYXIgYW1wbGl0dWRlOworICBzaWduZWQgY2hhciBmaXhrZXksIGZpeHZlbDsKKyAgc2lnbmVkIGNoYXIgcGFuLCBmaXhwYW47CisgIHNob3J0IGV4Y2x1c2l2ZUNsYXNzOworICB1bnNpZ25lZCBjaGFyIGFtcGxpdHVkZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBhdHRlbnVhdGlvbjsKLSBzaG9ydCBzY2FsZVR1bmluZzsKLSBzdHJ1Y3Qgc291bmRmb250X3ZvaWNlX3Bhcm0gcGFybTsKLSB1bnNpZ25lZCBzaG9ydCBzYW1wbGVfbW9kZTsKKyAgdW5zaWduZWQgY2hhciBhdHRlbnVhdGlvbjsKKyAgc2hvcnQgc2NhbGVUdW5pbmc7CisgIHN0cnVjdCBzb3VuZGZvbnRfdm9pY2VfcGFybSBwYXJtOworICB1bnNpZ25lZCBzaG9ydCBzYW1wbGVfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNvdW5kZm9udF92b2ljZV9yZWNfaGRyIHsKLSB1bnNpZ25lZCBjaGFyIGJhbms7Ci0gdW5zaWduZWQgY2hhciBpbnN0cjsKKyAgdW5zaWduZWQgY2hhciBiYW5rOworICB1bnNpZ25lZCBjaGFyIGluc3RyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG52b2ljZXM7Ci0gY2hhciB3cml0ZV9tb2RlOworICBjaGFyIG52b2ljZXM7CisgIGNoYXIgd3JpdGVfbW9kZTsKICNkZWZpbmUgU05EUlZfU0ZOVF9XUl9BUFBFTkQgMAogI2RlZmluZSBTTkRSVl9TRk5UX1dSX0VYQ0xVU0lWRSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRk5UX1dSX1JFUExBQ0UgMgogfTsKIHN0cnVjdCBzb3VuZGZvbnRfc2FtcGxlX2luZm8gewotIHVuc2lnbmVkIHNob3J0IHNmX2lkOworICB1bnNpZ25lZCBzaG9ydCBzZl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc2FtcGxlOwotIGludCBzdGFydCwgZW5kOwotIGludCBsb29wc3RhcnQsIGxvb3BlbmQ7Ci0gaW50IHNpemU7CisgIHVuc2lnbmVkIHNob3J0IHNhbXBsZTsKKyAgaW50IHN0YXJ0LCBlbmQ7CisgIGludCBsb29wc3RhcnQsIGxvb3BlbmQ7CisgIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBkdW1teTsKLSB1bnNpZ25lZCBzaG9ydCBtb2RlX2ZsYWdzOworICBzaG9ydCBkdW1teTsKKyAgdW5zaWduZWQgc2hvcnQgbW9kZV9mbGFnczsKICNkZWZpbmUgU05EUlZfU0ZOVF9TQU1QTEVfOEJJVFMgMQogI2RlZmluZSBTTkRSVl9TRk5UX1NBTVBMRV9VTlNJR05FRCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTUzLDIyICsxNTMsMjIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NGTlRfU0FNUExFX1NURVJFT19SSUdIVCA2NAogI2RlZmluZSBTTkRSVl9TRk5UX1NBTVBMRV9SRVZFUlNFX0xPT1AgMTI4Ci0gdW5zaWduZWQgaW50IHRydWVzaXplOworICB1bnNpZ25lZCBpbnQgdHJ1ZXNpemU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb3VuZGZvbnRfdm9pY2VfbWFwIHsKLSBpbnQgbWFwX2JhbmssIG1hcF9pbnN0ciwgbWFwX2tleTsKLSBpbnQgc3JjX2JhbmssIHNyY19pbnN0ciwgc3JjX2tleTsKKyAgaW50IG1hcF9iYW5rLCBtYXBfaW5zdHIsIG1hcF9rZXk7CisgIGludCBzcmNfYmFuaywgc3JjX2luc3RyLCBzcmNfa2V5OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0VNVVhfSFdERVBfTkFNRSAiRW11eCBXYXZlVGFibGUiCiAjZGVmaW5lIFNORFJWX0VNVVhfVkVSU0lPTiAoKDEgPDwgMTYpIHwgKDAgPDwgOCkgfCAwKQogc3RydWN0IHNuZF9lbXV4X21pc2NfbW9kZSB7Ci0gaW50IHBvcnQ7CisgIGludCBwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbW9kZTsKLSBpbnQgdmFsdWU7Ci0gaW50IHZhbHVlMjsKKyAgaW50IG1vZGU7CisgIGludCB2YWx1ZTsKKyAgaW50IHZhbHVlMjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9FTVVYX0lPQ1RMX1ZFUlNJT04gX0lPUignSCcsIDB4ODAsIHVuc2lnbmVkIGludCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vYWRmLmggYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL2FkZi5oCmluZGV4IGZlMjNlMDEuLjc3MjAzYTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vYWRmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby9hZGYuaApAQCAtMjcsMTM3ICsyNywxMzcgQEAKICNkZWZpbmUgQURGX01BWF9DVVNUT01fREFUQV9TSVpFIDQwOTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGFkZl9pbnRlcmZhY2VfdHlwZSB7Ci0gQURGX0lOVEZfRFNJID0gMCwKLSBBREZfSU5URl9lRFAgPSAxLAotIEFERl9JTlRGX0RQSSA9IDIsCisgIEFERl9JTlRGX0RTSSA9IDAsCisgIEFERl9JTlRGX2VEUCA9IDEsCisgIEFERl9JTlRGX0RQSSA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFERl9JTlRGX1ZHQSA9IDMsCi0gQURGX0lOVEZfRFZJID0gNCwKLSBBREZfSU5URl9IRE1JID0gNSwKLSBBREZfSU5URl9NRU1PUlkgPSA2LAorICBBREZfSU5URl9WR0EgPSAzLAorICBBREZfSU5URl9EVkkgPSA0LAorICBBREZfSU5URl9IRE1JID0gNSwKKyAgQURGX0lOVEZfTUVNT1JZID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQURGX0lOVEZfVFlQRV9ERVZJQ0VfQ1VTVE9NID0gMTI4LAotIEFERl9JTlRGX1RZUEVfTUFYID0gKH4oX191MzIpMCksCisgIEFERl9JTlRGX1RZUEVfREVWSUNFX0NVU1RPTSA9IDEyOCwKKyAgQURGX0lOVEZfVFlQRV9NQVggPSAofihfX3UzMikgMCksCiB9OwogI2RlZmluZSBBREZfSU5URl9GTEFHX1BSSU1BUlkgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFERl9JTlRGX0ZMQUdfRVhURVJOQUwgKDEgPDwgMSkKIGVudW0gYWRmX2V2ZW50X3R5cGUgewotIEFERl9FVkVOVF9WU1lOQyA9IDAsCi0gQURGX0VWRU5UX0hPVFBMVUcgPSAxLAorICBBREZfRVZFTlRfVlNZTkMgPSAwLAorICBBREZfRVZFTlRfSE9UUExVRyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFERl9FVkVOVF9ERVZJQ0VfQ1VTVE9NID0gMTI4LAotIEFERl9FVkVOVF9UWVBFX01BWCA9IDI1NSwKKyAgQURGX0VWRU5UX0RFVklDRV9DVVNUT00gPSAxMjgsCisgIEFERl9FVkVOVF9UWVBFX01BWCA9IDI1NSwKIH07CiBzdHJ1Y3QgYWRmX3NldF9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IGVuYWJsZWQ7CisgIF9fdTggdHlwZTsKKyAgX191OCBlbmFibGVkOwogfTsKIHN0cnVjdCBhZGZfZXZlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gX191MzIgbGVuZ3RoOworICBfX3U4IHR5cGU7CisgIF9fdTMyIGxlbmd0aDsKIH07CiBzdHJ1Y3QgYWRmX3ZzeW5jX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGFkZl9ldmVudCBiYXNlOwotIF9fYWxpZ25lZF91NjQgdGltZXN0YW1wOworICBzdHJ1Y3QgYWRmX2V2ZW50IGJhc2U7CisgIF9fYWxpZ25lZF91NjQgdGltZXN0YW1wOwogfTsKIHN0cnVjdCBhZGZfaG90cGx1Z19ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhZGZfZXZlbnQgYmFzZTsKLSBfX3U4IGNvbm5lY3RlZDsKKyAgc3RydWN0IGFkZl9ldmVudCBiYXNlOworICBfX3U4IGNvbm5lY3RlZDsKIH07CiAjZGVmaW5lIEFERl9NQVhfUExBTkVTIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYWRmX2J1ZmZlcl9jb25maWcgewotIF9fdTMyIG92ZXJsYXlfZW5naW5lOwotIF9fdTMyIHc7Ci0gX191MzIgaDsKKyAgX191MzIgb3ZlcmxheV9lbmdpbmU7CisgIF9fdTMyIHc7CisgIF9fdTMyIGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZvcm1hdDsKLSBfX3MzMiBmZFtBREZfTUFYX1BMQU5FU107Ci0gX191MzIgb2Zmc2V0W0FERl9NQVhfUExBTkVTXTsKLSBfX3UzMiBwaXRjaFtBREZfTUFYX1BMQU5FU107CisgIF9fdTMyIGZvcm1hdDsKKyAgX19zMzIgZmRbQURGX01BWF9QTEFORVNdOworICBfX3UzMiBvZmZzZXRbQURGX01BWF9QTEFORVNdOworICBfX3UzMiBwaXRjaFtBREZfTUFYX1BMQU5FU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbl9wbGFuZXM7Ci0gX19zMzIgYWNxdWlyZV9mZW5jZTsKKyAgX191OCBuX3BsYW5lczsKKyAgX19zMzIgYWNxdWlyZV9mZW5jZTsKIH07CiAjZGVmaW5lIEFERl9NQVhfQlVGRkVSUyAoNDA5NiAvIHNpemVvZihzdHJ1Y3QgYWRmX2J1ZmZlcl9jb25maWcpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhZGZfcG9zdF9jb25maWcgewotIHNpemVfdCBuX2ludGVyZmFjZXM7Ci0gX191MzIgX191c2VyICppbnRlcmZhY2VzOwotIHNpemVfdCBuX2J1ZnM7CisgIHNpemVfdCBuX2ludGVyZmFjZXM7CisgIF9fdTMyIF9fdXNlciAqIGludGVyZmFjZXM7CisgIHNpemVfdCBuX2J1ZnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZyBfX3VzZXIgKmJ1ZnM7Ci0gc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7Ci0gdm9pZCBfX3VzZXIgKmN1c3RvbV9kYXRhOwotIF9fczMyIGNvbXBsZXRlX2ZlbmNlOworICBzdHJ1Y3QgYWRmX2J1ZmZlcl9jb25maWcgX191c2VyICogYnVmczsKKyAgc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7CisgIHZvaWQgX191c2VyICogY3VzdG9tX2RhdGE7CisgIF9fczMyIGNvbXBsZXRlX2ZlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFERl9NQVhfSU5URVJGQUNFUyAoNDA5NiAvIHNpemVvZihfX3UzMikpCiBzdHJ1Y3QgYWRmX3NpbXBsZV9idWZmZXJfYWxsb2MgewotIF9fdTE2IHc7CisgIF9fdTE2IHc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGg7Ci0gX191MzIgZm9ybWF0OwotIF9fczMyIGZkOwotIF9fdTMyIG9mZnNldDsKKyAgX191MTYgaDsKKyAgX191MzIgZm9ybWF0OworICBfX3MzMiBmZDsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwaXRjaDsKKyAgX191MzIgcGl0Y2g7CiB9Owogc3RydWN0IGFkZl9zaW1wbGVfcG9zdF9jb25maWcgewotIHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZyBidWY7CisgIHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZyBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGNvbXBsZXRlX2ZlbmNlOworICBfX3MzMiBjb21wbGV0ZV9mZW5jZTsKIH07CiBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnIHsKLSBfX3UzMiBvdmVybGF5X2VuZ2luZTsKKyAgX191MzIgb3ZlcmxheV9lbmdpbmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGludGVyZmFjZTsKKyAgX191MzIgaW50ZXJmYWNlOwogfTsKIHN0cnVjdCBhZGZfZGV2aWNlX2RhdGEgewotIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOworICBjaGFyIG5hbWVbQURGX05BTUVfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IG5fYXR0YWNobWVudHM7Ci0gc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZyBfX3VzZXIgKmF0dGFjaG1lbnRzOwotIHNpemVfdCBuX2FsbG93ZWRfYXR0YWNobWVudHM7Ci0gc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZyBfX3VzZXIgKmFsbG93ZWRfYXR0YWNobWVudHM7CisgIHNpemVfdCBuX2F0dGFjaG1lbnRzOworICBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnIF9fdXNlciAqIGF0dGFjaG1lbnRzOworICBzaXplX3Qgbl9hbGxvd2VkX2F0dGFjaG1lbnRzOworICBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnIF9fdXNlciAqIGFsbG93ZWRfYXR0YWNobWVudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBjdXN0b21fZGF0YV9zaXplOwotIHZvaWQgX191c2VyICpjdXN0b21fZGF0YTsKKyAgc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7CisgIHZvaWQgX191c2VyICogY3VzdG9tX2RhdGE7CiB9OwogI2RlZmluZSBBREZfTUFYX0FUVEFDSE1FTlRTICg0MDk2IC8gc2l6ZW9mKHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhZGZfaW50ZXJmYWNlX2RhdGEgewotIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgaWQ7CisgIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOworICBfX3UzMiB0eXBlOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191OCBkcG1zX3N0YXRlOwotIF9fdTggaG90cGx1Z19kZXRlY3Q7Ci0gX191MTYgd2lkdGhfbW07CisgIF9fdTMyIGZsYWdzOworICBfX3U4IGRwbXNfc3RhdGU7CisgIF9fdTggaG90cGx1Z19kZXRlY3Q7CisgIF9fdTE2IHdpZHRoX21tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBoZWlnaHRfbW07Ci0gc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIGN1cnJlbnRfbW9kZTsKLSBzaXplX3Qgbl9hdmFpbGFibGVfbW9kZXM7Ci0gc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIF9fdXNlciAqYXZhaWxhYmxlX21vZGVzOworICBfX3UxNiBoZWlnaHRfbW07CisgIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbyBjdXJyZW50X21vZGU7CisgIHNpemVfdCBuX2F2YWlsYWJsZV9tb2RlczsKKyAgc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIF9fdXNlciAqIGF2YWlsYWJsZV9tb2RlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7Ci0gdm9pZCBfX3VzZXIgKmN1c3RvbV9kYXRhOworICBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBjdXN0b21fZGF0YTsKIH07CiAjZGVmaW5lIEFERl9NQVhfTU9ERVMgKDQwOTYgLyBzaXplb2Yoc3RydWN0IGRybV9tb2RlX21vZGVpbmZvKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYWRmX292ZXJsYXlfZW5naW5lX2RhdGEgewotIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOwotIHNpemVfdCBuX3N1cHBvcnRlZF9mb3JtYXRzOwotIF9fdTMyIF9fdXNlciAqc3VwcG9ydGVkX2Zvcm1hdHM7CisgIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOworICBzaXplX3Qgbl9zdXBwb3J0ZWRfZm9ybWF0czsKKyAgX191MzIgX191c2VyICogc3VwcG9ydGVkX2Zvcm1hdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBjdXN0b21fZGF0YV9zaXplOwotIHZvaWQgX191c2VyICpjdXN0b21fZGF0YTsKKyAgc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7CisgIHZvaWQgX191c2VyICogY3VzdG9tX2RhdGE7CiB9OwogI2RlZmluZSBBREZfTUFYX1NVUFBPUlRFRF9GT1JNQVRTICg0MDk2IC8gc2l6ZW9mKF9fdTMyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNjcsMTQgKzE2NywxNCBAQAogI2RlZmluZSBBREZfQkxBTksgX0lPVyhBREZfSU9DVExfVFlQRSwgMSwgX191OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFERl9QT1NUX0NPTkZJRyBfSU9XKEFERl9JT0NUTF9UWVBFLCAyLCBzdHJ1Y3QgYWRmX3Bvc3RfY29uZmlnKQotI2RlZmluZSBBREZfU0VUX01PREUgX0lPVyhBREZfSU9DVExfVFlQRSwgMywgICBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8pCisjZGVmaW5lIEFERl9TRVRfTU9ERSBfSU9XKEFERl9JT0NUTF9UWVBFLCAzLCBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8pCiAjZGVmaW5lIEFERl9HRVRfREVWSUNFX0RBVEEgX0lPUihBREZfSU9DVExfVFlQRSwgNCwgc3RydWN0IGFkZl9kZXZpY2VfZGF0YSkKLSNkZWZpbmUgQURGX0dFVF9JTlRFUkZBQ0VfREFUQSBfSU9SKEFERl9JT0NUTF9UWVBFLCA1LCAgIHN0cnVjdCBhZGZfaW50ZXJmYWNlX2RhdGEpCisjZGVmaW5lIEFERl9HRVRfSU5URVJGQUNFX0RBVEEgX0lPUihBREZfSU9DVExfVFlQRSwgNSwgc3RydWN0IGFkZl9pbnRlcmZhY2VfZGF0YSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFERl9HRVRfT1ZFUkxBWV9FTkdJTkVfREFUQSAgIF9JT1IoQURGX0lPQ1RMX1RZUEUsIDYsICAgc3RydWN0IGFkZl9vdmVybGF5X2VuZ2luZV9kYXRhKQotI2RlZmluZSBBREZfU0lNUExFX1BPU1RfQ09ORklHIF9JT1coQURGX0lPQ1RMX1RZUEUsIDcsICAgc3RydWN0IGFkZl9zaW1wbGVfcG9zdF9jb25maWcpCi0jZGVmaW5lIEFERl9TSU1QTEVfQlVGRkVSX0FMTE9DIF9JT1coQURGX0lPQ1RMX1RZUEUsIDgsICAgc3RydWN0IGFkZl9zaW1wbGVfYnVmZmVyX2FsbG9jKQotI2RlZmluZSBBREZfQVRUQUNIIF9JT1coQURGX0lPQ1RMX1RZUEUsIDksICAgc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZykKKyNkZWZpbmUgQURGX0dFVF9PVkVSTEFZX0VOR0lORV9EQVRBIF9JT1IoQURGX0lPQ1RMX1RZUEUsIDYsIHN0cnVjdCBhZGZfb3ZlcmxheV9lbmdpbmVfZGF0YSkKKyNkZWZpbmUgQURGX1NJTVBMRV9QT1NUX0NPTkZJRyBfSU9XKEFERl9JT0NUTF9UWVBFLCA3LCBzdHJ1Y3QgYWRmX3NpbXBsZV9wb3N0X2NvbmZpZykKKyNkZWZpbmUgQURGX1NJTVBMRV9CVUZGRVJfQUxMT0MgX0lPVyhBREZfSU9DVExfVFlQRSwgOCwgc3RydWN0IGFkZl9zaW1wbGVfYnVmZmVyX2FsbG9jKQorI2RlZmluZSBBREZfQVRUQUNIIF9JT1coQURGX0lPQ1RMX1RZUEUsIDksIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBREZfREVUQUNIIF9JT1coQURGX0lPQ1RMX1RZUEUsIDEwLCAgIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcpCisjZGVmaW5lIEFERl9ERVRBQ0ggX0lPVyhBREZfSU9DVExfVFlQRSwgMTAsIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vZWRpZC5oIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby9lZGlkLmgKaW5kZXggNjg1NWM1ZS4uMmFiMmI2MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9lZGlkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby9lZGlkLmgKQEAgLTE5LDcgKzE5LDcgQEAKICNpZm5kZWYgX1VBUElfX2xpbnV4X3ZpZGVvX2VkaWRfaF9fCiAjZGVmaW5lIF9VQVBJX19saW51eF92aWRlb19lZGlkX2hfXwogc3RydWN0IGVkaWRfaW5mbyB7Ci0gdW5zaWduZWQgY2hhciBkdW1teVsxMjhdOworICB1bnNpZ25lZCBjaGFyIGR1bW15WzEyOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9zaXNmYi5oIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby9zaXNmYi5oCmluZGV4IGE0NjQ1MzAuLjI5Y2RhZTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vc2lzZmIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3Npc2ZiLmgKQEAgLTUyLDcgKzUyLDcgQEAKICNkZWZpbmUgQ1JUMl9FTkFCTEUgKENSVDJfTENEIHwgQ1JUMl9UViB8IENSVDJfVkdBKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVFZfU1RBTkRBUkQgKFRWX05UU0MgfCBUVl9QQUwgfCBUVl9QQUxNIHwgVFZfUEFMTiB8IFRWX05UU0NKKQotI2RlZmluZSBUVl9JTlRFUkZBQ0UgKFRWX0FWSURFT3xUVl9TVklERU98VFZfU0NBUlR8VFZfSElWSVNJT058VFZfWVBCUFJ8VFZfQ0hTQ0FSVHxUVl9DSFlQQlBSNTI1SSkKKyNkZWZpbmUgVFZfSU5URVJGQUNFIChUVl9BVklERU8gfCBUVl9TVklERU8gfCBUVl9TQ0FSVCB8IFRWX0hJVklTSU9OIHwgVFZfWVBCUFIgfCBUVl9DSFNDQVJUIHwgVFZfQ0hZUEJQUjUyNUkpCiAjZGVmaW5lIFRWX1lQQlBSNTI1SSBUVl9OVFNDCiAjZGVmaW5lIFRWX1lQQlBSNTI1UCBUVl9QQUwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC02OSw1MiArNjksNTIgQEAKICNkZWZpbmUgVkJfRElTUE1PREVfRFVBTCBWQl9EVUFMVklFV19NT0RFCiAjZGVmaW5lIFZCX0RJU1BMQVlfTU9ERSAoU0lOR0xFX01PREUgfCBNSVJST1JfTU9ERSB8IERVQUxWSUVXX01PREUpCiBzdHJ1Y3Qgc2lzZmJfaW5mbyB7Ci0gX191MzIgc2lzZmJfaWQ7CisgIF9fdTMyIHNpc2ZiX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgU0lTRkJfSUQKICNkZWZpbmUgU0lTRkJfSUQgMHg1MzQ5NTM0NgogI2VuZGlmCi0gX191MzIgY2hpcF9pZDsKKyAgX191MzIgY2hpcF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWVtb3J5OwotIF9fdTMyIGhlYXBzdGFydDsKLSBfX3U4IGZidmlkbW9kZTsKLSBfX3U4IHNpc2ZiX3ZlcnNpb247CisgIF9fdTMyIG1lbW9yeTsKKyAgX191MzIgaGVhcHN0YXJ0OworICBfX3U4IGZidmlkbW9kZTsKKyAgX191OCBzaXNmYl92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNpc2ZiX3JldmlzaW9uOwotIF9fdTggc2lzZmJfcGF0Y2hsZXZlbDsKLSBfX3U4IHNpc2ZiX2NhcHM7Ci0gX191MzIgc2lzZmJfdHFsZW47CisgIF9fdTggc2lzZmJfcmV2aXNpb247CisgIF9fdTggc2lzZmJfcGF0Y2hsZXZlbDsKKyAgX191OCBzaXNmYl9jYXBzOworICBfX3UzMiBzaXNmYl90cWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2lzZmJfcGNpYnVzOwotIF9fdTMyIHNpc2ZiX3BjaXNsb3Q7Ci0gX191MzIgc2lzZmJfcGNpZnVuYzsKLSBfX3U4IHNpc2ZiX2xjZHBkYzsKKyAgX191MzIgc2lzZmJfcGNpYnVzOworICBfX3UzMiBzaXNmYl9wY2lzbG90OworICBfX3UzMiBzaXNmYl9wY2lmdW5jOworICBfX3U4IHNpc2ZiX2xjZHBkYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaXNmYl9sY2RhOwotIF9fdTMyIHNpc2ZiX3ZiZmxhZ3M7Ci0gX191MzIgc2lzZmJfY3VycmVudHZiZmxhZ3M7Ci0gX191MzIgc2lzZmJfc2NhbGVsY2Q7CisgIF9fdTggc2lzZmJfbGNkYTsKKyAgX191MzIgc2lzZmJfdmJmbGFnczsKKyAgX191MzIgc2lzZmJfY3VycmVudHZiZmxhZ3M7CisgIF9fdTMyIHNpc2ZiX3NjYWxlbGNkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXNmYl9zcGVjaWFsdGltaW5nOwotIF9fdTggc2lzZmJfaGF2ZWVtaTsKLSBfX3U4IHNpc2ZiX2VtaTMwLHNpc2ZiX2VtaTMxLHNpc2ZiX2VtaTMyLHNpc2ZiX2VtaTMzOwotIF9fdTggc2lzZmJfaGF2ZWVtaWxjZDsKKyAgX191MzIgc2lzZmJfc3BlY2lhbHRpbWluZzsKKyAgX191OCBzaXNmYl9oYXZlZW1pOworICBfX3U4IHNpc2ZiX2VtaTMwLCBzaXNmYl9lbWkzMSwgc2lzZmJfZW1pMzIsIHNpc2ZiX2VtaTMzOworICBfX3U4IHNpc2ZiX2hhdmVlbWlsY2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lzZmJfbGNkcGRjYTsKLSBfX3UxNiBzaXNmYl90dnhwb3MsIHNpc2ZiX3R2eXBvczsKLSBfX3UzMiBzaXNmYl9oZWFwc2l6ZTsKLSBfX3UzMiBzaXNmYl92aWRlb29mZnNldDsKKyAgX191OCBzaXNmYl9sY2RwZGNhOworICBfX3UxNiBzaXNmYl90dnhwb3MsIHNpc2ZiX3R2eXBvczsKKyAgX191MzIgc2lzZmJfaGVhcHNpemU7CisgIF9fdTMyIHNpc2ZiX3ZpZGVvb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXNmYl9jdXJmc3RuOwotIF9fdTMyIHNpc2ZiX2N1cmRzdG47Ci0gX191MTYgc2lzZmJfcGNpX3ZlbmRvcjsKLSBfX3UzMiBzaXNmYl92YmZsYWdzMjsKKyAgX191MzIgc2lzZmJfY3VyZnN0bjsKKyAgX191MzIgc2lzZmJfY3VyZHN0bjsKKyAgX191MTYgc2lzZmJfcGNpX3ZlbmRvcjsKKyAgX191MzIgc2lzZmJfdmJmbGFnczI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lzZmJfY2FuX3Bvc3Q7Ci0gX191OCBzaXNmYl9jYXJkX3Bvc3RlZDsKLSBfX3U4IHNpc2ZiX3dhc19ib290X2RldmljZTsKLSBfX3U4IHJlc2VydmVkWzE4M107CisgIF9fdTggc2lzZmJfY2FuX3Bvc3Q7CisgIF9fdTggc2lzZmJfY2FyZF9wb3N0ZWQ7CisgIF9fdTggc2lzZmJfd2FzX2Jvb3RfZGV2aWNlOworICBfX3U4IHJlc2VydmVkWzE4M107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU0lTRkJfQ01EX0dFVFZCRkxBR1MgMHg1NUFBMDAwMQpAQCAtMTI5LDMxICsxMjksMzEgQEAKICNkZWZpbmUgU0lTRkJfQ01EX0VSUl9VTktOT1dOIDB4ODAwMGZmZmYKICNkZWZpbmUgU0lTRkJfQ01EX0VSUl9PVEhFUiAweDgwMDEwMDAwCiBzdHJ1Y3Qgc2lzZmJfY21kIHsKLSBfX3UzMiBzaXNmYl9jbWQ7CisgIF9fdTMyIHNpc2ZiX2NtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2lzZmJfYXJnWzE2XTsKLSBfX3UzMiBzaXNmYl9yZXN1bHRbNF07CisgIF9fdTMyIHNpc2ZiX2FyZ1sxNl07CisgIF9fdTMyIHNpc2ZiX3Jlc3VsdFs0XTsKIH07Ci0jZGVmaW5lIFNJU0ZCX0dFVF9JTkZPX1NJWkUgX0lPUigweEYzLDB4MDAsX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9JTkZPX1NJWkUgX0lPUigweEYzLCAweDAwLCBfX3UzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJU0ZCX0dFVF9JTkZPIF9JT1IoMHhGMywweDAxLHN0cnVjdCBzaXNmYl9pbmZvKQotI2RlZmluZSBTSVNGQl9HRVRfVkJSU1RBVFVTIF9JT1IoMHhGMywweDAyLF9fdTMyKQotI2RlZmluZSBTSVNGQl9HRVRfQVVUT01BWElNSVpFIF9JT1IoMHhGMywweDAzLF9fdTMyKQotI2RlZmluZSBTSVNGQl9TRVRfQVVUT01BWElNSVpFIF9JT1coMHhGMywweDAzLF9fdTMyKQorI2RlZmluZSBTSVNGQl9HRVRfSU5GTyBfSU9SKDB4RjMsIDB4MDEsIHN0cnVjdCBzaXNmYl9pbmZvKQorI2RlZmluZSBTSVNGQl9HRVRfVkJSU1RBVFVTIF9JT1IoMHhGMywgMHgwMiwgX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9BVVRPTUFYSU1JWkUgX0lPUigweEYzLCAweDAzLCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfU0VUX0FVVE9NQVhJTUlaRSBfSU9XKDB4RjMsIDB4MDMsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lTRkJfR0VUX1RWUE9TT0ZGU0VUIF9JT1IoMHhGMywweDA0LF9fdTMyKQotI2RlZmluZSBTSVNGQl9TRVRfVFZQT1NPRkZTRVQgX0lPVygweEYzLDB4MDQsX191MzIpCi0jZGVmaW5lIFNJU0ZCX0NPTU1BTkQgX0lPV1IoMHhGMywweDA1LHN0cnVjdCBzaXNmYl9jbWQpCi0jZGVmaW5lIFNJU0ZCX1NFVF9MT0NLIF9JT1coMHhGMywweDA2LF9fdTMyKQorI2RlZmluZSBTSVNGQl9HRVRfVFZQT1NPRkZTRVQgX0lPUigweEYzLCAweDA0LCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfU0VUX1RWUE9TT0ZGU0VUIF9JT1coMHhGMywgMHgwNCwgX191MzIpCisjZGVmaW5lIFNJU0ZCX0NPTU1BTkQgX0lPV1IoMHhGMywgMHgwNSwgc3RydWN0IHNpc2ZiX2NtZCkKKyNkZWZpbmUgU0lTRkJfU0VUX0xPQ0sgX0lPVygweEYzLCAweDA2LCBfX3UzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJU0ZCX0dFVF9JTkZPX09MRCBfSU9SKCduJywweEY4LF9fdTMyKQotI2RlZmluZSBTSVNGQl9HRVRfVkJSU1RBVFVTX09MRCBfSU9SKCduJywweEY5LF9fdTMyKQotI2RlZmluZSBTSVNGQl9HRVRfQVVUT01BWElNSVpFX09MRCBfSU9SKCduJywweEZBLF9fdTMyKQotI2RlZmluZSBTSVNGQl9TRVRfQVVUT01BWElNSVpFX09MRCBfSU9XKCduJywweEZBLF9fdTMyKQorI2RlZmluZSBTSVNGQl9HRVRfSU5GT19PTEQgX0lPUignbicsIDB4RjgsIF9fdTMyKQorI2RlZmluZSBTSVNGQl9HRVRfVkJSU1RBVFVTX09MRCBfSU9SKCduJywgMHhGOSwgX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9BVVRPTUFYSU1JWkVfT0xEIF9JT1IoJ24nLCAweEZBLCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfU0VUX0FVVE9NQVhJTUlaRV9PTEQgX0lPVygnbicsIDB4RkEsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaXNfbWVtcmVxIHsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgb2Zmc2V0OworICBfX3UzMiBzaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vdXZlc2FmYi5oIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby91dmVzYWZiLmgKaW5kZXggYWMzMzA2NC4uMjI0MDc4NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby91dmVzYWZiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS92aWRlby91dmVzYWZiLmgKQEAgLTIxLDI1ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qgdjg2X3JlZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlYng7Ci0gX191MzIgZWN4OwotIF9fdTMyIGVkeDsKLSBfX3UzMiBlc2k7CisgIF9fdTMyIGVieDsKKyAgX191MzIgZWN4OworICBfX3UzMiBlZHg7CisgIF9fdTMyIGVzaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWRpOwotIF9fdTMyIGVicDsKLSBfX3UzMiBlYXg7Ci0gX191MzIgZWlwOworICBfX3UzMiBlZGk7CisgIF9fdTMyIGVicDsKKyAgX191MzIgZWF4OworICBfX3UzMiBlaXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVmbGFnczsKLSBfX3UzMiBlc3A7Ci0gX191MTYgY3M7Ci0gX191MTYgc3M7CisgIF9fdTMyIGVmbGFnczsKKyAgX191MzIgZXNwOworICBfX3UxNiBjczsKKyAgX191MTYgc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGVzOwotIF9fdTE2IGRzOwotIF9fdTE2IGZzOwotIF9fdTE2IGdzOworICBfX3UxNiBlczsKKyAgX191MTYgZHM7CisgIF9fdTE2IGZzOworICBfX3UxNiBnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBURl9WQkVJQiAweDAxCkBAIC00OSwzMSArNDksMzEgQEAKICNkZWZpbmUgVEZfQlVGX1JFVCAweDA4CiAjZGVmaW5lIFRGX0VYSVQgMHgxMAogc3RydWN0IHV2ZXNhZmJfdGFzayB7Ci0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGJ1Zl9sZW47Ci0gc3RydWN0IHY4Nl9yZWdzIHJlZ3M7CisgIGludCBidWZfbGVuOworICBzdHJ1Y3Qgdjg2X3JlZ3MgcmVnczsKIH07CiAjZGVmaW5lIFZCRV9DQVBfQ0FOX1NXSVRDSF9EQUMgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkJFX0NBUF9WR0FDT01QQVQgMHgwMgogc3RydWN0IHZiZV9pYiB7Ci0gY2hhciB2YmVfc2lnbmF0dXJlWzRdOwotIF9fdTE2IHZiZV92ZXJzaW9uOworICBjaGFyIHZiZV9zaWduYXR1cmVbNF07CisgIF9fdTE2IHZiZV92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvZW1fc3RyaW5nX3B0cjsKLSBfX3UzMiBjYXBhYmlsaXRpZXM7Ci0gX191MzIgbW9kZV9saXN0X3B0cjsKLSBfX3UxNiB0b3RhbF9tZW1vcnk7CisgIF9fdTMyIG9lbV9zdHJpbmdfcHRyOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIG1vZGVfbGlzdF9wdHI7CisgIF9fdTE2IHRvdGFsX21lbW9yeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb2VtX3NvZnR3YXJlX3JldjsKLSBfX3UzMiBvZW1fdmVuZG9yX25hbWVfcHRyOwotIF9fdTMyIG9lbV9wcm9kdWN0X25hbWVfcHRyOwotIF9fdTMyIG9lbV9wcm9kdWN0X3Jldl9wdHI7CisgIF9fdTE2IG9lbV9zb2Z0d2FyZV9yZXY7CisgIF9fdTMyIG9lbV92ZW5kb3JfbmFtZV9wdHI7CisgIF9fdTMyIG9lbV9wcm9kdWN0X25hbWVfcHRyOworICBfX3UzMiBvZW1fcHJvZHVjdF9yZXZfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzIyMl07Ci0gY2hhciBvZW1fZGF0YVsyNTZdOwotIGNoYXIgbWlzY19kYXRhWzUxMl07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCByZXNlcnZlZFsyMjJdOworICBjaGFyIG9lbV9kYXRhWzI1Nl07CisgIGNoYXIgbWlzY19kYXRhWzUxMl07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS94ZW4vZXZ0Y2huLmggYi9saWJjL2tlcm5lbC91YXBpL3hlbi9ldnRjaG4uaAppbmRleCBkMjM1ZjZhLi4yZGQyM2JlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3hlbi9ldnRjaG4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3hlbi9ldnRjaG4uaApAQCAtMTgsMzEgKzE4LDMxIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX19MSU5VWF9QVUJMSUNfRVZUQ0hOX0hfXwogI2RlZmluZSBfX0xJTlVYX1BVQkxJQ19FVlRDSE5fSF9fCi0jZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX1ZJUlEgICBfSU9DKF9JT0NfTk9ORSwgJ0UnLCAwLCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl9iaW5kX3ZpcnEpKQorI2RlZmluZSBJT0NUTF9FVlRDSE5fQklORF9WSVJRIF9JT0MoX0lPQ19OT05FLCAnRScsIDAsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdmlycSkpCiBzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdmlycSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2aXJxOworICB1bnNpZ25lZCBpbnQgdmlycTsKIH07Ci0jZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX0lOVEVSRE9NQUlOICAgX0lPQyhfSU9DX05PTkUsICdFJywgMSwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fYmluZF9pbnRlcmRvbWFpbikpCisjZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX0lOVEVSRE9NQUlOIF9JT0MoX0lPQ19OT05FLCAnRScsIDEsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfaW50ZXJkb21haW4pKQogc3RydWN0IGlvY3RsX2V2dGNobl9iaW5kX2ludGVyZG9tYWluIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlbW90ZV9kb21haW4sIHJlbW90ZV9wb3J0OworICB1bnNpZ25lZCBpbnQgcmVtb3RlX2RvbWFpbiwgcmVtb3RlX3BvcnQ7CiB9OwotI2RlZmluZSBJT0NUTF9FVlRDSE5fQklORF9VTkJPVU5EX1BPUlQgICBfSU9DKF9JT0NfTk9ORSwgJ0UnLCAyLCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl9iaW5kX3VuYm91bmRfcG9ydCkpCisjZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX1VOQk9VTkRfUE9SVCBfSU9DKF9JT0NfTk9ORSwgJ0UnLCAyLCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl9iaW5kX3VuYm91bmRfcG9ydCkpCiBzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdW5ib3VuZF9wb3J0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlbW90ZV9kb21haW47CisgIHVuc2lnbmVkIGludCByZW1vdGVfZG9tYWluOwogfTsKLSNkZWZpbmUgSU9DVExfRVZUQ0hOX1VOQklORCAgIF9JT0MoX0lPQ19OT05FLCAnRScsIDMsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX3VuYmluZCkpCisjZGVmaW5lIElPQ1RMX0VWVENITl9VTkJJTkQgX0lPQyhfSU9DX05PTkUsICdFJywgMywgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fdW5iaW5kKSkKIHN0cnVjdCBpb2N0bF9ldnRjaG5fdW5iaW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBvcnQ7CisgIHVuc2lnbmVkIGludCBwb3J0OwogfTsKLSNkZWZpbmUgSU9DVExfRVZUQ0hOX05PVElGWSAgIF9JT0MoX0lPQ19OT05FLCAnRScsIDQsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX25vdGlmeSkpCisjZGVmaW5lIElPQ1RMX0VWVENITl9OT1RJRlkgX0lPQyhfSU9DX05PTkUsICdFJywgNCwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fbm90aWZ5KSkKIHN0cnVjdCBpb2N0bF9ldnRjaG5fbm90aWZ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBvcnQ7CisgIHVuc2lnbmVkIGludCBwb3J0OwogfTsKLSNkZWZpbmUgSU9DVExfRVZUQ0hOX1JFU0VUICAgX0lPQyhfSU9DX05PTkUsICdFJywgNSwgMCkKKyNkZWZpbmUgSU9DVExfRVZUQ0hOX1JFU0VUIF9JT0MoX0lPQ19OT05FLCAnRScsIDUsIDApCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRhbGxvYy5oIGIvbGliYy9rZXJuZWwvdWFwaS94ZW4vZ250YWxsb2MuaAppbmRleCAyMDc2ODQzLi4xNzEwZjRhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRhbGxvYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGFsbG9jLmgKQEAgLTE4LDMwICsxOCwzMCBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9fTElOVVhfUFVCTElDX0dOVEFMTE9DX0hfXwogI2RlZmluZSBfX0xJTlVYX1BVQkxJQ19HTlRBTExPQ19IX18KLSNkZWZpbmUgSU9DVExfR05UQUxMT0NfQUxMT0NfR1JFRiAgX0lPQyhfSU9DX05PTkUsICdHJywgNSwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRhbGxvY19hbGxvY19ncmVmKSkKKyNkZWZpbmUgSU9DVExfR05UQUxMT0NfQUxMT0NfR1JFRiBfSU9DKF9JT0NfTk9ORSwgJ0cnLCA1LCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGFsbG9jX2FsbG9jX2dyZWYpKQogc3RydWN0IGlvY3RsX2dudGFsbG9jX2FsbG9jX2dyZWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MTZfdCBkb21pZDsKLSB1aW50MTZfdCBmbGFnczsKLSB1aW50MzJfdCBjb3VudDsKLSB1aW50NjRfdCBpbmRleDsKKyAgdWludDE2X3QgZG9taWQ7CisgIHVpbnQxNl90IGZsYWdzOworICB1aW50MzJfdCBjb3VudDsKKyAgdWludDY0X3QgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGdyZWZfaWRzWzFdOworICB1aW50MzJfdCBncmVmX2lkc1sxXTsKIH07CiAjZGVmaW5lIEdOVEFMTE9DX0ZMQUdfV1JJVEFCTEUgMQotI2RlZmluZSBJT0NUTF9HTlRBTExPQ19ERUFMTE9DX0dSRUYgIF9JT0MoX0lPQ19OT05FLCAnRycsIDYsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfZGVhbGxvY19ncmVmKSkKKyNkZWZpbmUgSU9DVExfR05UQUxMT0NfREVBTExPQ19HUkVGIF9JT0MoX0lPQ19OT05FLCAnRycsIDYsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfZGVhbGxvY19ncmVmKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfZGVhbGxvY19ncmVmIHsKLSB1aW50NjRfdCBpbmRleDsKLSB1aW50MzJfdCBjb3VudDsKKyAgdWludDY0X3QgaW5kZXg7CisgIHVpbnQzMl90IGNvdW50OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElPQ1RMX0dOVEFMTE9DX1NFVF9VTk1BUF9OT1RJRlkgIF9JT0MoX0lPQ19OT05FLCAnRycsIDcsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfdW5tYXBfbm90aWZ5KSkKKyNkZWZpbmUgSU9DVExfR05UQUxMT0NfU0VUX1VOTUFQX05PVElGWSBfSU9DKF9JT0NfTk9ORSwgJ0cnLCA3LCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGFsbG9jX3VubWFwX25vdGlmeSkpCiBzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfdW5tYXBfbm90aWZ5IHsKLSB1aW50NjRfdCBpbmRleDsKLSB1aW50MzJfdCBhY3Rpb247CisgIHVpbnQ2NF90IGluZGV4OworICB1aW50MzJfdCBhY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGV2ZW50X2NoYW5uZWxfcG9ydDsKKyAgdWludDMyX3QgZXZlbnRfY2hhbm5lbF9wb3J0OwogfTsKICNkZWZpbmUgVU5NQVBfTk9USUZZX0NMRUFSX0JZVEUgMHgxCiAjZGVmaW5lIFVOTUFQX05PVElGWV9TRU5EX0VWRU5UIDB4MgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS94ZW4vZ250ZGV2LmggYi9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRkZXYuaAppbmRleCAyOGEyYTNhLi5jMDBlNWFiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRkZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRkZXYuaApAQCAtMTksNDYgKzE5LDQ2IEBACiAjaWZuZGVmIF9fTElOVVhfUFVCTElDX0dOVERFVl9IX18KICNkZWZpbmUgX19MSU5VWF9QVUJMSUNfR05UREVWX0hfXwogc3RydWN0IGlvY3RsX2dudGRldl9ncmFudF9yZWYgewotIHVpbnQzMl90IGRvbWlkOworICB1aW50MzJfdCBkb21pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcmVmOworICB1aW50MzJfdCByZWY7CiB9OwotI2RlZmluZSBJT0NUTF9HTlRERVZfTUFQX0dSQU5UX1JFRiAgX0lPQyhfSU9DX05PTkUsICdHJywgMCwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfbWFwX2dyYW50X3JlZikpCisjZGVmaW5lIElPQ1RMX0dOVERFVl9NQVBfR1JBTlRfUkVGIF9JT0MoX0lPQ19OT05FLCAnRycsIDAsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X21hcF9ncmFudF9yZWYpKQogc3RydWN0IGlvY3RsX2dudGRldl9tYXBfZ3JhbnRfcmVmIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY291bnQ7Ci0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IGluZGV4OwotIHN0cnVjdCBpb2N0bF9nbnRkZXZfZ3JhbnRfcmVmIHJlZnNbMV07CisgIHVpbnQzMl90IGNvdW50OworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQ2NF90IGluZGV4OworICBzdHJ1Y3QgaW9jdGxfZ250ZGV2X2dyYW50X3JlZiByZWZzWzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIElPQ1RMX0dOVERFVl9VTk1BUF9HUkFOVF9SRUYgIF9JT0MoX0lPQ19OT05FLCAnRycsIDEsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X3VubWFwX2dyYW50X3JlZikpCisjZGVmaW5lIElPQ1RMX0dOVERFVl9VTk1BUF9HUkFOVF9SRUYgX0lPQyhfSU9DX05PTkUsICdHJywgMSwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfZ3JhbnRfcmVmKSkKIHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfZ3JhbnRfcmVmIHsKLSB1aW50NjRfdCBpbmRleDsKKyAgdWludDY0X3QgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGNvdW50OwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgY291bnQ7CisgIHVpbnQzMl90IHBhZDsKIH07Ci0jZGVmaW5lIElPQ1RMX0dOVERFVl9HRVRfT0ZGU0VUX0ZPUl9WQUREUiAgX0lPQyhfSU9DX05PTkUsICdHJywgMiwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfZ2V0X29mZnNldF9mb3JfdmFkZHIpKQorI2RlZmluZSBJT0NUTF9HTlRERVZfR0VUX09GRlNFVF9GT1JfVkFERFIgX0lPQyhfSU9DX05PTkUsICdHJywgMiwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfZ2V0X29mZnNldF9mb3JfdmFkZHIpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpb2N0bF9nbnRkZXZfZ2V0X29mZnNldF9mb3JfdmFkZHIgewotIHVpbnQ2NF90IHZhZGRyOwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50MzJfdCBjb3VudDsKKyAgdWludDY0X3QgdmFkZHI7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3QgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgcGFkOwogfTsKLSNkZWZpbmUgSU9DVExfR05UREVWX1NFVF9NQVhfR1JBTlRTICBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAzLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9zZXRfbWF4X2dyYW50cykpCisjZGVmaW5lIElPQ1RMX0dOVERFVl9TRVRfTUFYX0dSQU5UUyBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAzLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9zZXRfbWF4X2dyYW50cykpCiBzdHJ1Y3QgaW9jdGxfZ250ZGV2X3NldF9tYXhfZ3JhbnRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY291bnQ7CisgIHVpbnQzMl90IGNvdW50OwogfTsKLSNkZWZpbmUgSU9DVExfR05UREVWX1NFVF9VTk1BUF9OT1RJRlkgIF9JT0MoX0lPQ19OT05FLCAnRycsIDcsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X3VubWFwX25vdGlmeSkpCisjZGVmaW5lIElPQ1RMX0dOVERFVl9TRVRfVU5NQVBfTk9USUZZIF9JT0MoX0lPQ19OT05FLCAnRycsIDcsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X3VubWFwX25vdGlmeSkpCiBzdHJ1Y3QgaW9jdGxfZ250ZGV2X3VubWFwX25vdGlmeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGluZGV4OwotIHVpbnQzMl90IGFjdGlvbjsKLSB1aW50MzJfdCBldmVudF9jaGFubmVsX3BvcnQ7CisgIHVpbnQ2NF90IGluZGV4OworICB1aW50MzJfdCBhY3Rpb247CisgIHVpbnQzMl90IGV2ZW50X2NoYW5uZWxfcG9ydDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVTk1BUF9OT1RJRllfQ0xFQVJfQllURSAweDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkveGVuL3ByaXZjbWQuaCBiL2xpYmMva2VybmVsL3VhcGkveGVuL3ByaXZjbWQuaAppbmRleCBlZTIwNTQ0Li4xMGMwYzQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3hlbi9wcml2Y21kLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS94ZW4vcHJpdmNtZC5oCkBAIC0yMyw0NCArMjMsNDQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8eGVuL2ludGVyZmFjZS94ZW4uaD4KIHN0cnVjdCBwcml2Y21kX2h5cGVyY2FsbCB7Ci0gX191NjQgb3A7Ci0gX191NjQgYXJnWzVdOworICBfX3U2NCBvcDsKKyAgX191NjQgYXJnWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcHJpdmNtZF9tbWFwX2VudHJ5IHsKLSBfX3U2NCB2YTsKLSBfX3U2NCBtZm47CisgIF9fdTY0IHZhOworICBfX3U2NCBtZm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG5wYWdlczsKKyAgX191NjQgbnBhZ2VzOwogfTsKIHN0cnVjdCBwcml2Y21kX21tYXAgewotIGludCBudW07CisgIGludCBudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRvbWlkX3QgZG9tOwotIHN0cnVjdCBwcml2Y21kX21tYXBfZW50cnkgX191c2VyICplbnRyeTsKKyAgZG9taWRfdCBkb207CisgIHN0cnVjdCBwcml2Y21kX21tYXBfZW50cnkgX191c2VyICogZW50cnk7CiB9Owogc3RydWN0IHByaXZjbWRfbW1hcGJhdGNoIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG51bTsKLSBkb21pZF90IGRvbTsKLSBfX3U2NCBhZGRyOwotIHhlbl9wZm5fdCBfX3VzZXIgKmFycjsKKyAgaW50IG51bTsKKyAgZG9taWRfdCBkb207CisgIF9fdTY0IGFkZHI7CisgIHhlbl9wZm5fdCBfX3VzZXIgKiBhcnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUFJJVkNNRF9NTUFQQkFUQ0hfTUZOX0VSUk9SIDB4ZjAwMDAwMDBVCiAjZGVmaW5lIFBSSVZDTURfTU1BUEJBVENIX1BBR0VEX0VSUk9SIDB4ODAwMDAwMDBVCiBzdHJ1Y3QgcHJpdmNtZF9tbWFwYmF0Y2hfdjIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbnVtOwotIGRvbWlkX3QgZG9tOwotIF9fdTY0IGFkZHI7Ci0gY29uc3QgeGVuX3Bmbl90IF9fdXNlciAqYXJyOworICB1bnNpZ25lZCBpbnQgbnVtOworICBkb21pZF90IGRvbTsKKyAgX191NjQgYWRkcjsKKyAgY29uc3QgeGVuX3Bmbl90IF9fdXNlciAqIGFycjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IF9fdXNlciAqZXJyOworICBpbnQgX191c2VyICogZXJyOwogfTsKLSNkZWZpbmUgSU9DVExfUFJJVkNNRF9IWVBFUkNBTEwgICBfSU9DKF9JT0NfTk9ORSwgJ1AnLCAwLCBzaXplb2Yoc3RydWN0IHByaXZjbWRfaHlwZXJjYWxsKSkKLSNkZWZpbmUgSU9DVExfUFJJVkNNRF9NTUFQICAgX0lPQyhfSU9DX05PTkUsICdQJywgMiwgc2l6ZW9mKHN0cnVjdCBwcml2Y21kX21tYXApKQorI2RlZmluZSBJT0NUTF9QUklWQ01EX0hZUEVSQ0FMTCBfSU9DKF9JT0NfTk9ORSwgJ1AnLCAwLCBzaXplb2Yoc3RydWN0IHByaXZjbWRfaHlwZXJjYWxsKSkKKyNkZWZpbmUgSU9DVExfUFJJVkNNRF9NTUFQIF9JT0MoX0lPQ19OT05FLCAnUCcsIDIsIHNpemVvZihzdHJ1Y3QgcHJpdmNtZF9tbWFwKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElPQ1RMX1BSSVZDTURfTU1BUEJBVENIICAgX0lPQyhfSU9DX05PTkUsICdQJywgMywgc2l6ZW9mKHN0cnVjdCBwcml2Y21kX21tYXBiYXRjaCkpCi0jZGVmaW5lIElPQ1RMX1BSSVZDTURfTU1BUEJBVENIX1YyICAgX0lPQyhfSU9DX05PTkUsICdQJywgNCwgc2l6ZW9mKHN0cnVjdCBwcml2Y21kX21tYXBiYXRjaF92MikpCisjZGVmaW5lIElPQ1RMX1BSSVZDTURfTU1BUEJBVENIIF9JT0MoX0lPQ19OT05FLCAnUCcsIDMsIHNpemVvZihzdHJ1Y3QgcHJpdmNtZF9tbWFwYmF0Y2gpKQorI2RlZmluZSBJT0NUTF9QUklWQ01EX01NQVBCQVRDSF9WMiBfSU9DKF9JT0NfTk9ORSwgJ1AnLCA0LCBzaXplb2Yoc3RydWN0IHByaXZjbWRfbW1hcGJhdGNoX3YyKSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL1RocmVhZExvY2FsQnVmZmVyLmggYi9saWJjL3ByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaAppbmRleCBlNWJkMjhjLi41ZTQzNjY1IDEwMDY0NAotLS0gYS9saWJjL3ByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaAorKysgYi9saWJjL3ByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaApAQCAtMzIsMzAgKzMyLDMwIEBACiAjaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8cHRocmVhZC5oPgogCi0vLyBsaWJzdGRjKysgY3VycmVudGx5IGNvbnRhaW5zIF9fY3hhX2d1YXJkX2FjcXVpcmUgYW5kIF9fY3hhX2d1YXJkX3JlbGVhc2UsCi0vLyBzbyB3ZSBtYWtlIGRvIHdpdGggbWFjcm9zIGluc3RlYWQgb2YgYSBDKysgY2xhc3MuCi0vLyBUT0RPOiBtb3ZlIF9fY3hhX2d1YXJkX2FjcXVpcmUgYW5kIF9fY3hhX2d1YXJkX3JlbGVhc2UgaW50byBsaWJjLgorLy8gVE9ETzogdXNlIF9fdGhyZWFkIGluc3RlYWQ/CiAKLS8vIFdlIHVzZWQgdG8gdXNlIHB0aHJlYWRfb25jZSB0byBpbml0aWFsaXplIHRoZSBrZXlzLCBidXQgbGlmZSBpcyBtb3JlIHByZWRpY3RhYmxlCi0vLyBpZiB3ZSBhbGxvY2F0ZSB0aGVtIGFsbCB1cCBmcm9udCB3aGVuIHRoZSBDIGxpYnJhcnkgc3RhcnRzIHVwLCB2aWEgX19jb25zdHJ1Y3Rvcl9fLgotCi0jZGVmaW5lIEdMT0JBTF9JTklUX1RIUkVBRF9MT0NBTF9CVUZGRVIobmFtZSkgXAotICBzdGF0aWMgcHRocmVhZF9rZXlfdCBfX2Jpb25pY190bHNfICMjIG5hbWUgIyMgX2tleTsgXAotICBzdGF0aWMgdm9pZCBfX2Jpb25pY190bHNfICMjIG5hbWUgIyMgX2tleV9kZXN0cm95KHZvaWQqIGJ1ZmZlcikgeyBcCi0gICAgZnJlZShidWZmZXIpOyBcCi0gIH0gXAotICBfX2F0dHJpYnV0ZV9fKChjb25zdHJ1Y3RvcikpIHN0YXRpYyB2b2lkIF9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5X2luaXQoKSB7IFwKLSAgICBwdGhyZWFkX2tleV9jcmVhdGUoJl9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5LCBfX2Jpb25pY190bHNfICMjIG5hbWUgIyMgX2tleV9kZXN0cm95KTsgXAordGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNpemVfdCBTaXplID0gc2l6ZW9mKFQpPgorY2xhc3MgVGhyZWFkTG9jYWxCdWZmZXIgeworIHB1YmxpYzoKKyAgVGhyZWFkTG9jYWxCdWZmZXIoKSB7CisgICAgLy8gV2UgdXNlZCB0byB1c2UgcHRocmVhZF9vbmNlIHRvIGluaXRpYWxpemUgdGhlIGtleXMsIGJ1dCBsaWZlIGlzIG1vcmUgcHJlZGljdGFibGUKKyAgICAvLyBpZiB3ZSBhbGxvY2F0ZSB0aGVtIGFsbCB1cCBmcm9udCB3aGVuIHRoZSBDIGxpYnJhcnkgc3RhcnRzIHVwLCB2aWEgX19jb25zdHJ1Y3Rvcl9fLgorICAgIHB0aHJlYWRfa2V5X2NyZWF0ZSgma2V5XywgZnJlZSk7CiAgIH0KIAotLy8gTGVhdmVzICJuYW1lX3Rsc19idWZmZXIiIGFuZCAibmFtZV90bHNfYnVmZmVyX3NpemUiIGRlZmluZWQgYW5kIGluaXRpYWxpemVkLgotI2RlZmluZSBMT0NBTF9JTklUX1RIUkVBRF9MT0NBTF9CVUZGRVIodHlwZSwgbmFtZSwgYnl0ZV9jb3VudCkgXAotICB0eXBlIG5hbWUgIyMgX3Rsc19idWZmZXIgPSBcCi0gICAgICByZWludGVycHJldF9jYXN0PHR5cGU+KHB0aHJlYWRfZ2V0c3BlY2lmaWMoX19iaW9uaWNfdGxzXyAjIyBuYW1lICMjIF9rZXkpKTsgXAotICBpZiAobmFtZSAjIyBfdGxzX2J1ZmZlciA9PSBOVUxMKSB7IFwKLSAgICBuYW1lICMjIF90bHNfYnVmZmVyID0gcmVpbnRlcnByZXRfY2FzdDx0eXBlPihjYWxsb2MoMSwgYnl0ZV9jb3VudCkpOyBcCi0gICAgcHRocmVhZF9zZXRzcGVjaWZpYyhfX2Jpb25pY190bHNfICMjIG5hbWUgIyMgX2tleSwgbmFtZSAjIyBfdGxzX2J1ZmZlcik7IFwKLSAgfSBcCi0gIGNvbnN0IHNpemVfdCBuYW1lICMjIF90bHNfYnVmZmVyX3NpemUgX19hdHRyaWJ1dGVfXygodW51c2VkKSkgPSBieXRlX2NvdW50CisgIFQqIGdldCgpIHsKKyAgICBUKiByZXN1bHQgPSByZWludGVycHJldF9jYXN0PFQqPihwdGhyZWFkX2dldHNwZWNpZmljKGtleV8pKTsKKyAgICBpZiAocmVzdWx0ID09IG51bGxwdHIpIHsKKyAgICAgIHJlc3VsdCA9IHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KGNhbGxvYygxLCBTaXplKSk7CisgICAgICBwdGhyZWFkX3NldHNwZWNpZmljKGtleV8sIHJlc3VsdCk7CisgICAgfQorICAgIHJldHVybiByZXN1bHQ7CisgIH0KKworICBzaXplX3Qgc2l6ZSgpIHsgcmV0dXJuIFNpemU7IH0KKworIHByaXZhdGU6CisgIHB0aHJlYWRfa2V5X3Qga2V5XzsKK307CiAKICNlbmRpZiAvLyBfQklPTklDX1RIUkVBRF9MT0NBTF9CVUZGRVJfSF9pbmNsdWRlZApkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19hc20uaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXNtLmgKaW5kZXggN2MyNjg2Zi4uNWZjYTIyMiAxMDA2NDQKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19hc20uaAorKysgYi9saWJjL3ByaXZhdGUvYmlvbmljX2FzbS5oCkBAIC00MSw3ICs0MSw3IEBACiAjZGVmaW5lIEVOVFJZKGYpIFwKICAgICAudGV4dDsgXAogICAgIC5nbG9ibCBmOyBcCi0gICAgX0FMSUdOX1RFWFQ7IFwKKyAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduOyBcCiAgICAgLnR5cGUgZiwgX19iaW9uaWNfYXNtX2Z1bmN0aW9uX3R5cGU7IFwKICAgICBmOiBcCiAgICAgX19iaW9uaWNfYXNtX2N1c3RvbV9lbnRyeShmKTsgXApAQCAtNTcsNCArNTcsOCBAQAogICAgIEVOVFJZKGYpOyBcCiAgICAgLmhpZGRlbiBmIFwKIAorI2RlZmluZSBBTElBU19TWU1CT0woYWxpYXMsIG9yaWdpbmFsKSBcCisgICAgLmdsb2JsIGFsaWFzOyBcCisgICAgLmVxdSBhbGlhcywgb3JpZ2luYWwKKwogI2VuZGlmIC8qIF9QUklWQVRFX0JJT05JQ19BU01fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2FybS5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfYXJtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIxNTZlNmEuLjAwMDAwMDAKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfYXJtLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLSNpZm5kZWYgQklPTklDX0FUT01JQ19BUk1fSAotI2RlZmluZSBCSU9OSUNfQVRPTUlDX0FSTV9ICi0KLV9fQVRPTUlDX0lOTElORV9fIHZvaWQgX19iaW9uaWNfbWVtb3J5X2JhcnJpZXIoKSB7Ci0jaWYgZGVmaW5lZChBTkRST0lEX1NNUCkgJiYgQU5EUk9JRF9TTVAgPT0gMQotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoICJkbWIgaXNoIiA6IDogOiAibWVtb3J5IiApOwotI2Vsc2UKLSAgLyogQSBzaW1wbGUgY29tcGlsZXIgYmFycmllci4gKi8KLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAiIiA6IDogOiAibWVtb3J5IiApOwotI2VuZGlmCi19Ci0KLS8qIENvbXBhcmUtYW5kLXN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbgotICogcmV0dXJucyAwIG9uIHN1Y2Nlc3MsIGFuZCAxIG9uIGZhaWx1cmUuIFRoZSBvcHBvc2l0ZSBjb252ZW50aW9uIGlzIHR5cGljYWxseQotICogdXNlZCBvbiBvdGhlciBwbGF0Zm9ybXMuCi0gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludCBfX2Jpb25pY19jbXB4Y2hnKGludDMyX3Qgb2xkX3ZhbHVlLCBpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgc3RhdHVzOwotICBkbyB7Ci0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKAotICAgICAgICAgICJsZHJleCAlMCwgWyUzXVxuIgotICAgICAgICAgICJtb3YgJTEsICMwXG4iCi0gICAgICAgICAgInRlcSAlMCwgJTRcbiIKLSNpZmRlZiBfX3RodW1iMl9fCi0gICAgICAgICAgIml0IGVxXG4iCi0jZW5kaWYKLSAgICAgICAgICAic3RyZXhlcSAlMSwgJTUsIFslM10iCi0gICAgICAgICAgOiAiPSZyIiAocHJldiksICI9JnIiIChzdGF0dXMpLCAiK20iKCpwdHIpCi0gICAgICAgICAgOiAiciIgKHB0ciksICJJciIgKG9sZF92YWx1ZSksICJyIiAobmV3X3ZhbHVlKQotICAgICAgICAgIDogImNjIik7Ci0gIH0gd2hpbGUgKF9fYnVpbHRpbl9leHBlY3Qoc3RhdHVzICE9IDAsIDApKTsKLSAgcmV0dXJuIHByZXYgIT0gb2xkX3ZhbHVlOwotfQotCi0vKiBTd2FwLCB3aXRob3V0IGFueSBleHBsaWNpdCBiYXJyaWVycy4gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfc3dhcChpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgc3RhdHVzOwotICBkbyB7Ci0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKAotICAgICAgICAgICJsZHJleCAlMCwgWyUzXVxuIgotICAgICAgICAgICJzdHJleCAlMSwgJTQsIFslM10iCi0gICAgICAgICAgOiAiPSZyIiAocHJldiksICI9JnIiIChzdGF0dXMpLCAiK20iICgqcHRyKQotICAgICAgICAgIDogInIiIChwdHIpLCAiciIgKG5ld192YWx1ZSkKLSAgICAgICAgICA6ICJjYyIpOwotICB9IHdoaWxlIChfX2J1aWx0aW5fZXhwZWN0KHN0YXR1cyAhPSAwLCAwKSk7Ci0gIHJldHVybiBwcmV2OwotfQotCi0vKiBBdG9taWMgZGVjcmVtZW50LCB3aXRob3V0IGV4cGxpY2l0IGJhcnJpZXJzLiAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19hdG9taWNfZGVjKHZvbGF0aWxlIGludDMyX3QqIHB0cikgewotICBpbnQzMl90IHByZXYsIHRtcCwgc3RhdHVzOwotICBkbyB7Ci0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKAotICAgICAgICAgICJsZHJleCAlMCwgWyU0XVxuIgotICAgICAgICAgICJzdWIgJTEsICUwLCAjMVxuIgotICAgICAgICAgICJzdHJleCAlMiwgJTEsIFslNF0iCi0gICAgICAgICAgOiAiPSZyIiAocHJldiksICI9JnIiICh0bXApLCAiPSZyIiAoc3RhdHVzKSwgIittIigqcHRyKQotICAgICAgICAgIDogInIiIChwdHIpCi0gICAgICAgICAgOiAiY2MiKTsKLSAgfSB3aGlsZSAoX19idWlsdGluX2V4cGVjdChzdGF0dXMgIT0gMCwgMCkpOwotICByZXR1cm4gcHJldjsKLX0KLQotI2VuZGlmIC8qIFNZU19BVE9NSUNTX0FSTV9IICovCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19hcm02NC5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfYXJtNjQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzNhMzRlMS4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19hcm02NC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0jaWZuZGVmIEJJT05JQ19BVE9NSUNfQUFSQ0g2NF9ICi0jZGVmaW5lIEJJT05JQ19BVE9NSUNfQUFSQ0g2NF9ICi0KLS8qIEZvciBBUk12OCwgd2UgY2FuIHVzZSB0aGUgJ2RtYicgaW5zdHJ1Y3Rpb24gZGlyZWN0bHkgKi8KLV9fQVRPTUlDX0lOTElORV9fIHZvaWQgX19iaW9uaWNfbWVtb3J5X2JhcnJpZXIoKSB7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICggImRtYiBpc2giIDogOiA6ICJtZW1vcnkiICk7Ci19Ci0KLS8qIENvbXBhcmUtYW5kLXN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbgotICogcmV0dXJucyAwIG9uIHN1Y2Nlc3MsIGFuZCAxIG9uIGZhaWx1cmUuIFRoZSBvcHBvc2l0ZSBjb252ZW50aW9uIGlzIHR5cGljYWxseQotICogdXNlZCBvbiBvdGhlciBwbGF0Zm9ybXMuCi0gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludCBfX2Jpb25pY19jbXB4Y2hnKGludDMyX3Qgb2xkX3ZhbHVlLCBpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgdG1wLCBvbGR2YWw7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgKLSAgICAgICIvLyBhdG9taWNfY21weGNoZ1xuIgotICAgICAgIjE6ICBsZHhyICV3MSwgWyUzXVxuIgotICAgICAgIiAgICBjbXAgJXcxLCAldzRcbiIKLSAgICAgICIgICAgYi5uZSAyZlxuIgotICAgICAgIiAgICBzdHhyICV3MCwgJXc1LCBbJTNdXG4iCi0gICAgICAiICAgIGNibnogICV3MCwgMWJcbiIKLSAgICAgICIyOiIKLSAgICAgIDogIj0mciIgKHRtcCksICI9JnIiIChvbGR2YWwpLCAiK28iKCpwdHIpCi0gICAgICA6ICJyIiAocHRyKSwgIklyIiAob2xkX3ZhbHVlKSwgInIiIChuZXdfdmFsdWUpCi0gICAgICA6ICJjYyIsICJtZW1vcnkiKTsKLSAgcmV0dXJuIG9sZHZhbCAhPSBvbGRfdmFsdWU7Ci19Ci0KLS8qIFN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiAgKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfc3dhcChpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgc3RhdHVzOwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoCi0gICAgICAiLy8gYXRvbWljX3N3YXBcbiIKLSAgICAgICIxOiAgbGR4ciAldzAsIFslM11cbiIKLSAgICAgICIgICAgc3R4ciAldzEsICV3NCwgWyUzXVxuIgotICAgICAgIiAgICBjYm56ICV3MSwgMWJcbiIKLSAgICAgIDogIj0mciIgKHByZXYpLCAiPSZyIiAoc3RhdHVzKSwgIitvIiAoKnB0cikKLSAgICAgIDogInIiIChwdHIpLCAiciIgKG5ld192YWx1ZSkKLSAgICAgIDogImNjIiwgIm1lbW9yeSIpOwotICByZXR1cm4gcHJldjsKLX0KLQotLyogQXRvbWljIGRlY3JlbWVudCwgd2l0aG91dCBleHBsaWNpdCBiYXJyaWVycy4gICovCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQzMl90IF9fYmlvbmljX2F0b21pY19kZWModm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgdG1wLCBzdGF0dXM7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgKLSAgICAgICIxOiAgbGR4ciAldzAsIFslNF1cbiIKLSAgICAgICIgICAgc3ViICV3MSwgJXcwLCAjMVxuIgotICAgICAgIiAgICBzdHhyICV3MiwgJXcxLCBbJTRdXG4iCi0gICAgICAiICAgIGNibnogJXcyLCAxYiIKLSAgICAgIDogIj0mciIgKHByZXYpLCAiPSZyIiAodG1wKSwgIj0mciIgKHN0YXR1cyksICIrbSIoKnB0cikKLSAgICAgIDogInIiIChwdHIpCi0gICAgICA6ICJjYyIsICJtZW1vcnkiKTsKLSAgcmV0dXJuIHByZXY7Ci19Ci0KLSNlbmRpZiAvKiBCSU9OSUNfQVRPTUlDU19BQVJDSDY0X0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2djY19idWlsdGluLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19nY2NfYnVpbHRpbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MGViODYxLi4wMDAwMDAwCi0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2djY19idWlsdGluLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLSNpZm5kZWYgQklPTklDX0FUT01JQ19HQ0NfQlVJTFRJTl9ICi0jZGVmaW5lIEJJT05JQ19BVE9NSUNfR0NDX0JVSUxUSU5fSAotCi0vKgotICogVGhpcyBoZWFkZXIgZmlsZSBpcyB1c2VkIGJ5IGRlZmF1bHQgaWYgd2UgZG9uJ3QgaGF2ZSBvcHRpbWl6ZWQgYXRvbWljCi0gKiByb3V0aW5lcyBmb3IgYSBnaXZlbiBwbGF0Zm9ybS4gU2VlIGJpb25pY19hdG9taWNfYXJtLmggYW5kCi0gKiBiaW9uaWNfYXRvbWljX3g4Ni5oIGZvciBleGFtcGxlcy4KLSAqCi0gKiBOb3RlIHRoYXQgdGhlIEdDQyBidWlsdGlucyBpbmNsdWRlIGJhcnJpZXJzIHRoYXQgYXJlbid0IHByZXNlbnQgaW4KLSAqIHRoZSBhcmNoaXRlY3R1cmUtc3BlY2lmaWMgYXNzZW1ibGVyIHZlcnNpb25zLgotICovCi0KLV9fQVRPTUlDX0lOTElORV9fIHZvaWQgX19iaW9uaWNfbWVtb3J5X2JhcnJpZXIoKSB7Ci0gIF9fc3luY19zeW5jaHJvbml6ZSgpOwotfQotCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQgX19iaW9uaWNfY21weGNoZyhpbnQzMl90IG9sZF92YWx1ZSwgaW50MzJfdCBuZXdfdmFsdWUsIHZvbGF0aWxlIGludDMyX3QqIHB0cikgewotICAvKiBXZSBtdXN0IHJldHVybiAwIG9uIHN1Y2Nlc3MuICovCi0gIHJldHVybiBfX3N5bmNfdmFsX2NvbXBhcmVfYW5kX3N3YXAocHRyLCBvbGRfdmFsdWUsIG5ld192YWx1ZSkgIT0gb2xkX3ZhbHVlOwotfQotCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQzMl90IF9fYmlvbmljX3N3YXAoaW50MzJfdCBuZXdfdmFsdWUsIHZvbGF0aWxlIGludDMyX3QqIHB0cikgewotICBpbnQzMl90IG9sZF92YWx1ZTsKLSAgZG8gewotICAgIG9sZF92YWx1ZSA9ICpwdHI7Ci0gIH0gd2hpbGUgKF9fc3luY192YWxfY29tcGFyZV9hbmRfc3dhcChwdHIsIG9sZF92YWx1ZSwgbmV3X3ZhbHVlKSAhPSBvbGRfdmFsdWUpOwotICByZXR1cm4gb2xkX3ZhbHVlOwotfQotCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQzMl90IF9fYmlvbmljX2F0b21pY19kZWModm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIC8qIFdlIG11c3QgcmV0dXJuIHRoZSBvbGQgdmFsdWUuICovCi0gIHJldHVybiBfX3N5bmNfZmV0Y2hfYW5kX2FkZChwdHIsIC0xKTsKLX0KLQotI2VuZGlmIC8qIEJJT05JQ19BVE9NSUNfR0NDX0JVSUxUSU5fSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfaW5saW5lLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjgzNGEyNy4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotCi0jaWZuZGVmIEJJT05JQ19BVE9NSUNfSU5MSU5FX0gKLSNkZWZpbmUgQklPTklDX0FUT01JQ19JTkxJTkVfSAotCi0vKgotICogSW5saW5lIGRlY2xhcmF0aW9ucyBhbmQgbWFjcm9zIGZvciBzb21lIHNwZWNpYWwtcHVycG9zZSBhdG9taWMKLSAqIG9wZXJhdGlvbnMuICBUaGVzZSBhcmUgaW50ZW5kZWQgZm9yIHJhcmUgY2lyY3Vtc3RhbmNlcyB3aGVyZSBhCi0gKiBtZW1vcnkgYmFycmllciBuZWVkcyB0byBiZSBpc3N1ZWQgaW5saW5lIHJhdGhlciB0aGFuIGFzIGEgZnVuY3Rpb24KLSAqIGNhbGwuCi0gKgotICogTWFjcm9zIGRlZmluZWQgaW4gdGhpcyBoZWFkZXI6Ci0gKgotICogdm9pZCBBTkRST0lEX01FTUJBUl9GVUxMKCkKLSAqICAgRnVsbCBtZW1vcnkgYmFycmllci4gIFByb3ZpZGVzIGEgY29tcGlsZXIgcmVvcmRlcmluZyBiYXJyaWVyLCBhbmQKLSAqICAgb24gU01QIHN5c3RlbXMgZW1pdHMgYW4gYXBwcm9wcmlhdGUgaW5zdHJ1Y3Rpb24uCi0gKi8KLQotI2lmICFkZWZpbmVkKEFORFJPSURfU01QKQotIyBlcnJvciAiTXVzdCBkZWZpbmUgQU5EUk9JRF9TTVAgYmVmb3JlIGluY2x1ZGluZyBhdG9taWMtaW5saW5lLmgiCi0jZW5kaWYKLQotI2lmZGVmIF9fY3BsdXNwbHVzCi1leHRlcm4gIkMiIHsKLSNlbmRpZgotCi0vKiBEZWZpbmUgX19BVE9NSUNfSU5MSU5FX18gdG8gY29udHJvbCB0aGUgaW5saW5pbmcgb2YgYWxsIGF0b21pY3MKLSAqIGZ1bmN0aW9ucyBkZWNsYXJlZCBoZXJlLiBGb3IgYSBzbGlnaHQgcGVyZm9ybWFuY2UgYm9vc3QsIHdlIHdhbnQKLSAqIGFsbCBvZiB0aGVtIHRvIGJlIGFsd2F5c19pbmxpbmUKLSAqLwotI2RlZmluZSAgX19BVE9NSUNfSU5MSU5FX18gIHN0YXRpYyBfX2lubGluZV9fIF9fYXR0cmlidXRlX18oKGFsd2F5c19pbmxpbmUpKQotCi0jaWYgZGVmaW5lZChfX2FybV9fKQotIyAgaW5jbHVkZSAiYmlvbmljX2F0b21pY19hcm0uaCIKLSNlbGlmIGRlZmluZWQoX19hYXJjaDY0X18pCi0jICBpbmNsdWRlICJiaW9uaWNfYXRvbWljX2FybTY0LmgiCi0jZWxpZiBkZWZpbmVkKF9faTM4Nl9fKQotIyAgaW5jbHVkZSAiYmlvbmljX2F0b21pY194ODYuaCIKLSNlbGlmIGRlZmluZWQoX19taXBzX18pCi0jICBpbmNsdWRlICJiaW9uaWNfYXRvbWljX21pcHMuaCIKLSNlbHNlCi0jICBpbmNsdWRlICJiaW9uaWNfYXRvbWljX2djY19idWlsdGluLmgiCi0jZW5kaWYKLQotI2RlZmluZSBBTkRST0lEX01FTUJBUl9GVUxMICBfX2Jpb25pY19tZW1vcnlfYmFycmllcgotCi0jaWZkZWYgX19jcGx1c3BsdXMKLX0gLy8gZXh0ZXJuICJDIgotI2VuZGlmCi0KLSNlbmRpZiAvLyBCSU9OSUNfQVRPTUlDX0lOTElORV9ICmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19taXBzLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19taXBzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlMDgxMTYuLjAwMDAwMDAKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfbWlwcy5oCisrKyAvZGV2L251bGwKQEAgLTEsNzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0jaWZuZGVmIEJJT05JQ19BVE9NSUNfTUlQU19ICi0jZGVmaW5lIEJJT05JQ19BVE9NSUNfTUlQU19ICi0KLS8qIERlZmluZSBhIGZ1bGwgbWVtb3J5IGJhcnJpZXIsIHRoaXMgaXMgb25seSBuZWVkZWQgaWYgd2UgYnVpbGQgdGhlCi0gKiBwbGF0Zm9ybSBmb3IgYSBtdWx0aS1jb3JlIGRldmljZS4KLSAqLwotCi1fX0FUT01JQ19JTkxJTkVfXyB2b2lkIF9fYmlvbmljX21lbW9yeV9iYXJyaWVyKCkgewotI2lmIGRlZmluZWQoQU5EUk9JRF9TTVApICYmIEFORFJPSURfU01QID09IDEKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAic3luYyIgOiA6IDogIm1lbW9yeSIgKTsKLSNlbHNlCi0gIC8qIEEgc2ltcGxlIGNvbXBpbGVyIGJhcnJpZXIuICovCi0gIF9fYXNtX18gX192b2xhdGlsZV9fICggIiIgOiA6IDogIm1lbW9yeSIgKTsKLSNlbmRpZgotfQotCi0vKiBDb21wYXJlLWFuZC1zd2FwLCB3aXRob3V0IGFueSBleHBsaWNpdCBiYXJyaWVycy4gTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24KLSAqIHJldHVybnMgMCBvbiBzdWNjZXNzLCBhbmQgMSBvbiBmYWlsdXJlLiBUaGUgb3Bwb3NpdGUgY29udmVudGlvbiBpcyB0eXBpY2FsbHkKLSAqIHVzZWQgb24gb3RoZXIgcGxhdGZvcm1zLgotICovCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQgX19iaW9uaWNfY21weGNoZyhpbnQzMl90IG9sZF92YWx1ZSwgaW50MzJfdCBuZXdfdmFsdWUsIHZvbGF0aWxlIGludDMyX3QqIHB0cikgewotICBpbnQzMl90IHByZXYsIHN0YXR1czsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCIxOiBtb3ZlICVbc3RhdHVzXSwgJVtuZXdfdmFsdWVdICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICBsbCAlW3ByZXZdLCAwKCVbcHRyXSkgICAgICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICBibmUgJVtvbGRfdmFsdWVdLCAlW3ByZXZdLCAyZiBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICBzYyAgICVbc3RhdHVzXSwgMCglW3B0cl0pICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICBiZXF6ICVbc3RhdHVzXSwgMWIgICAgICAgICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgIDogW3ByZXZdIj0mciIocHJldiksIFtzdGF0dXNdIj0mciIoc3RhdHVzKSwgIittIigqcHRyKQotICAgICAgICAgICAgICAgICAgICAgICAgOiBbbmV3X3ZhbHVlXSJyIihuZXdfdmFsdWUpLCBbb2xkX3ZhbHVlXSJyIihvbGRfdmFsdWUpLCBbcHRyXSJyIihwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsKLSAgcmV0dXJuIHByZXYgIT0gb2xkX3ZhbHVlOwotfQotCi0vKiBTd2FwLCB3aXRob3V0IGFueSBleHBsaWNpdCBiYXJyaWVycy4gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfc3dhcChpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgc3RhdHVzOwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIjE6ICBtb3ZlICVbc3RhdHVzXSwgJVtuZXdfdmFsdWVdIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgICBsbCAlW3ByZXZdLCAwKCVbcHRyXSkgICAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgICBzYyAlW3N0YXR1c10sIDAoJVtwdHJdKSAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgICBiZXF6ICVbc3RhdHVzXSwgMWIgICAgICAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgOiBbcHJldl0iPSZyIihwcmV2KSwgW3N0YXR1c10iPSZyIihzdGF0dXMpLCAiK20iKCpwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6IFtwdHJdInIiKHB0ciksIFtuZXdfdmFsdWVdInIiKG5ld192YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgICAgIDogIm1lbW9yeSIpOwotICByZXR1cm4gcHJldjsKLX0KLQotLyogQXRvbWljIGRlY3JlbWVudCwgd2l0aG91dCBleHBsaWNpdCBiYXJyaWVycy4gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfYXRvbWljX2RlYyh2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCBzdGF0dXM7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgiMTogIGxsICVbcHJldl0sIDAoJVtwdHJdKSAgICAgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIGFkZGl1ICVbc3RhdHVzXSwgJVtwcmV2XSwgLTEgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIHNjICAgJVtzdGF0dXNdLCAwKCVbcHRyXSkgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIGJlcXogJVtzdGF0dXNdLCAxYiAgICAgICAgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICA6IFtwcmV2XSI9JnIiIChwcmV2KSwgW3N0YXR1c10iPSZyIihzdGF0dXMpLCAiK20iICgqcHRyKQotICAgICAgICAgICAgICAgICAgICAgICAgOiBbcHRyXSJyIihwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsKLSAgcmV0dXJuIHByZXY7Ci19Ci0KLSNlbmRpZiAvKiBCSU9OSUNfQVRPTUlDX01JUFNfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfeDg2LmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY194ODYuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODk2MzljOC4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY194ODYuaAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotI2lmbmRlZiBCSU9OSUNfQVRPTUlDX1g4Nl9ICi0jZGVmaW5lIEJJT05JQ19BVE9NSUNfWDg2X0gKLQotLyogRGVmaW5lIGEgZnVsbCBtZW1vcnkgYmFycmllciwgdGhpcyBpcyBvbmx5IG5lZWRlZCBpZiB3ZSBidWlsZCB0aGUKLSAqIHBsYXRmb3JtIGZvciBhIG11bHRpLWNvcmUgZGV2aWNlLgotICovCi1fX0FUT01JQ19JTkxJTkVfXyB2b2lkIF9fYmlvbmljX21lbW9yeV9iYXJyaWVyKCkgewotI2lmIGRlZmluZWQoQU5EUk9JRF9TTVApICYmIEFORFJPSURfU01QID09IDEKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAibWZlbmNlIiA6IDogOiAibWVtb3J5IiApOwotI2Vsc2UKLSAgLyogQSBzaW1wbGUgY29tcGlsZXIgYmFycmllci4gKi8KLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAiIiA6IDogOiAibWVtb3J5IiApOwotI2VuZGlmCi19Ci0KLS8qIENvbXBhcmUtYW5kLXN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbgotICogcmV0dXJucyAwIG9uIHN1Y2Nlc3MsIGFuZCAxIG9uIGZhaWx1cmUuIFRoZSBvcHBvc2l0ZSBjb252ZW50aW9uIGlzIHR5cGljYWxseQotICogdXNlZCBvbiBvdGhlciBwbGF0Zm9ybXMuCi0gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludCBfX2Jpb25pY19jbXB4Y2hnKGludDMyX3Qgb2xkX3ZhbHVlLCBpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gICAgaW50MzJfdCBwcmV2OwotICAgIF9fYXNtX18gX192b2xhdGlsZV9fICgibG9jazsgY21weGNoZ2wgJTEsICUyIgotICAgICAgICAgICAgICAgICAgICAgICAgICA6ICI9YSIgKHByZXYpCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDogInEiIChuZXdfdmFsdWUpLCAibSIgKCpwdHIpLCAiMCIgKG9sZF92YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7Ci0gICAgcmV0dXJuIHByZXYgIT0gb2xkX3ZhbHVlOwotfQotCi0vKiBTd2FwLCB3aXRob3V0IGFueSBleHBsaWNpdCBiYXJyaWVycy4gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfc3dhcChpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCAqcHRyKSB7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgieGNoZ2wgJTEsICUwIgotICAgICAgICAgICAgICAgICAgICAgICAgOiAiPXIiIChuZXdfdmFsdWUpCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICJtIiAoKnB0ciksICIwIiAobmV3X3ZhbHVlKQotICAgICAgICAgICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7Ci0gIHJldHVybiBuZXdfdmFsdWU7Ci19Ci0KLS8qIEF0b21pYyBkZWNyZW1lbnQsIHdpdGhvdXQgZXhwbGljaXQgYmFycmllcnMuICovCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQzMl90IF9fYmlvbmljX2F0b21pY19kZWModm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludCBpbmNyZW1lbnQgPSAtMTsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJsb2NrOyB4YWRkbCAlMCwgJTEiCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICIrciIgKGluY3JlbWVudCksICIrbSIgKCpwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6IDogIm1lbW9yeSIpOwotICAvKiBpbmNyZW1lbnQgbm93IGhvbGRzIHRoZSBvbGQgdmFsdWUgb2YgKnB0ciAqLwotICByZXR1cm4gaW5jcmVtZW50OwotfQotCi0jZW5kaWYgLyogQklPTklDX0FUT01JQ19YODZfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19jb25zdGFudHMuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWFlMWM4ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgKQEAgLTAsMCArMSwyMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgX0JJT05JQ19DT05TVEFOVFNfSF8KKyNkZWZpbmUgX0JJT05JQ19DT05TVEFOVFNfSF8KKworI2RlZmluZSBOU19QRVJfUyAxMDAwMDAwMDAwCisKKyNlbmRpZiAvLyBfQklPTklDX0NPTlNUQU5UU19IXwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19mdXRleC5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19mdXRleC5oCmluZGV4IGJkMmJkMzYuLjQwMTU3N2EgMTAwNjQ0Ci0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfZnV0ZXguaAorKysgYi9saWJjL3ByaXZhdGUvYmlvbmljX2Z1dGV4LmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlIDxzdGRkZWYuaD4KICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzeXMvc3lzY2FsbC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfbG9jay5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19sb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmEwZmQwNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfbG9jay5oCkBAIC0wLDAgKzEsNzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKyNpZm5kZWYgX0JJT05JQ19MT0NLX0gKKyNkZWZpbmUgX0JJT05JQ19MT0NLX0gKKworI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgorI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2Z1dGV4LmgiCisKK2NsYXNzIExvY2sgeworIHByaXZhdGU6CisgIGVudW0gTG9ja1N0YXRlIHsKKyAgICBVbmxvY2tlZCA9IDAsCisgICAgTG9ja2VkV2l0aG91dFdhaXRlciwKKyAgICBMb2NrZWRXaXRoV2FpdGVyLAorICB9OworICBfQXRvbWljKExvY2tTdGF0ZSkgc3RhdGU7CisgIGJvb2wgcHJvY2Vzc19zaGFyZWQ7CisKKyBwdWJsaWM6CisgIExvY2soYm9vbCBwcm9jZXNzX3NoYXJlZCA9IGZhbHNlKSB7CisgICAgaW5pdChwcm9jZXNzX3NoYXJlZCk7CisgIH0KKworICB2b2lkIGluaXQoYm9vbCBwcm9jZXNzX3NoYXJlZCkgeworICAgIGF0b21pY19pbml0KCZzdGF0ZSwgVW5sb2NrZWQpOworICAgIHRoaXMtPnByb2Nlc3Nfc2hhcmVkID0gcHJvY2Vzc19zaGFyZWQ7CisgIH0KKworICB2b2lkIGxvY2soKSB7CisgICAgTG9ja1N0YXRlIG9sZF9zdGF0ZSA9IFVubG9ja2VkOworICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShhdG9taWNfY29tcGFyZV9leGNoYW5nZV9zdHJvbmdfZXhwbGljaXQoJnN0YXRlLCAmb2xkX3N0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgIExvY2tlZFdpdGhvdXRXYWl0ZXIsIG1lbW9yeV9vcmRlcl9hY3F1aXJlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpKSB7CisgICAgICByZXR1cm47CisgICAgfQorICAgIHdoaWxlIChhdG9taWNfZXhjaGFuZ2VfZXhwbGljaXQoJnN0YXRlLCBMb2NrZWRXaXRoV2FpdGVyLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSkgIT0gVW5sb2NrZWQpIHsKKyAgICAgIC8vIFRPRE86IEFzIHRoZSBjcml0aWNhbCBzZWN0aW9uIGlzIGJyaWVmLCBpdCBpcyBhIGJldHRlciBjaG9pY2UgdG8gc3BpbiBhIGZldyB0aW1lcyBiZWZvciBzbGVlcGluZy4KKyAgICAgIF9fZnV0ZXhfd2FpdF9leCgmc3RhdGUsIHByb2Nlc3Nfc2hhcmVkLCBMb2NrZWRXaXRoV2FpdGVyLCBOVUxMKTsKKyAgICB9CisgICAgcmV0dXJuOworICB9CisKKyAgdm9pZCB1bmxvY2soKSB7CisgICAgaWYgKGF0b21pY19leGNoYW5nZV9leHBsaWNpdCgmc3RhdGUsIFVubG9ja2VkLCBtZW1vcnlfb3JkZXJfcmVsZWFzZSkgPT0gTG9ja2VkV2l0aFdhaXRlcikgeworICAgICAgX19mdXRleF93YWtlX2V4KCZzdGF0ZSwgcHJvY2Vzc19zaGFyZWQsIDEpOworICAgIH0KKyAgfQorfTsKKworI2VuZGlmICAvLyBfQklPTklDX0xPQ0tfSApkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19tYWNyb3MuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfbWFjcm9zLmgKaW5kZXggNDkxYjNhYy4uNGYzY2Y4OSAxMDA2NDQKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19tYWNyb3MuaAorKysgYi9saWJjL3ByaXZhdGUvYmlvbmljX21hY3Jvcy5oCkBAIC0xNywxMSArMTcsMTYgQEAKICNpZm5kZWYgX0JJT05JQ19NQUNST1NfSF8KICNkZWZpbmUgX0JJT05JQ19NQUNST1NfSF8KIAorLy8gRnJhbWV3b3JrcyBPcGVuR0wgY29kZSBjdXJyZW50bHkgbGVha3MgdGhpcyBoZWFkZXIgYW5kIGFsbG93cworLy8gY29sbGlzaW9ucyB3aXRoIG90aGVyIGRlY2xhcmF0aW9ucywgZS5nLiwgZnJvbSBsaWJuYXRpdmVoZWxwZXIuCisvLyBUT0RPOiBSZW1vdmUgb25jZSBjbGVhbmVkIHVwLiBiLzE4MzM0NTE2CisjaWYgIWRlZmluZWQoRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKQogLy8gRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOIGRpc2FsbG93cyB0aGUgY29weSBhbmQgb3BlcmF0b3I9IGZ1bmN0aW9ucy4KIC8vIEl0IGdvZXMgaW4gdGhlIHByaXZhdGU6IGRlY2xhcmF0aW9ucyBpbiBhIGNsYXNzLgogI2RlZmluZSBESVNBTExPV19DT1BZX0FORF9BU1NJR04oVHlwZU5hbWUpIFwKICAgVHlwZU5hbWUoY29uc3QgVHlwZU5hbWUmKSA9IGRlbGV0ZTsgICAgICBcCiAgIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFR5cGVOYW1lJikgPSBkZWxldGUKKyNlbmRpZiAgLy8gIWRlZmluZWQoRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKQogCiAvLyBBIG1hY3JvIHRvIGRpc2FsbG93IGFsbCB0aGUgaW1wbGljaXQgY29uc3RydWN0b3JzLCBuYW1lbHkgdGhlCiAvLyBkZWZhdWx0IGNvbnN0cnVjdG9yLCBjb3B5IGNvbnN0cnVjdG9yIGFuZCBvcGVyYXRvcj0gZnVuY3Rpb25zLgpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19wdGhyZWFkLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX3B0aHJlYWQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDdiY2JkNC4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX3B0aHJlYWQuaAorKysgL2Rldi9udWxsCkBAIC0xLDQxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfQklPTklDX1BUSFJFQURfSAotI2RlZmluZSBfQklPTklDX1BUSFJFQURfSAotCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0KLV9fQkVHSU5fREVDTFMKLQotLyogSW50ZXJuYWwsIG5vdCBhbiBOREsgQVBJICovCi1leHRlcm4gcGlkX3QgX19wdGhyZWFkX2dldHRpZChwdGhyZWFkX3QgdGhpZCk7Ci0KLV9fRU5EX0RFQ0xTCi0KLSNlbmRpZiAvKiBfQklPTklDX1BUSFJFQURfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19zeXN0cmFjZS5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19zeXN0cmFjZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBiNDU2MGYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3ByaXZhdGUvYmlvbmljX3N5c3RyYWNlLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgQklPTklDX1NZU1RSQUNFX0gKKyNkZWZpbmUgQklPTklDX1NZU1RSQUNFX0gKKworI2luY2x1ZGUgImJpb25pY19tYWNyb3MuaCIKKworLy8gVHJhY2luZyBjbGFzcyBmb3IgYmlvbmljLiBUbyBiZWdpbiBhIHRyYWNlIGF0IGEgc3BlY2lmaWVkIHBvaW50OgorLy8gICBTY29wZWRUcmFjZSgiVHJhY2UgbWVzc2FnZSIpOworLy8gVGhlIHRyYWNlIHdpbGwgZW5kIHdoZW4gdGhlIGNvbnRydWN0b3IgZ29lcyBvdXQgb2Ygc2NvcGUuCisKK2NsYXNzIF9fTElCQ19ISURERU5fXyBTY29wZWRUcmFjZSB7CisgcHVibGljOgorICBleHBsaWNpdCBTY29wZWRUcmFjZShjb25zdCBjaGFyKiBtZXNzYWdlKTsKKyAgflNjb3BlZFRyYWNlKCk7CisKKyBwcml2YXRlOgorICBESVNBTExPV19DT1BZX0FORF9BU1NJR04oU2NvcGVkVHJhY2UpOworfTsKKworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5oCmluZGV4IDUxZjU0M2YuLmNmMDA0NmEgMTAwNjQ0Ci0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5oCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5oCkBAIC0zOSw2ICszOSw4IEBACiAKIF9fTElCQ19ISURERU5fXyB2b2lkIHRpbWV2YWxfZnJvbV90aW1lc3BlYyh0aW1ldmFsJiB0diwgY29uc3QgdGltZXNwZWMmIHRzKTsKIAorX19MSUJDX0hJRERFTl9fIGJvb2wgdGltZXNwZWNfZnJvbV9hYnNvbHV0ZV90aW1lc3BlYyh0aW1lc3BlYyYgdHMsIGNvbnN0IHRpbWVzcGVjJiBhYnNfdHMsIGNsb2NraWRfdCBjbG9jayk7CisKIF9fRU5EX0RFQ0xTCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY190bHMuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGxzLmgKaW5kZXggNTZhNjFiZS4uMzBkYzBlYiAxMDA2NDQKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY190bHMuaAorKysgYi9saWJjL3ByaXZhdGUvYmlvbmljX3Rscy5oCkBAIC02NywzMCArNjcsNDggQEAKICAgVExTX1NMT1RfU1RBQ0tfR1VBUkQgPSA1LCAvLyBHQ0MgcmVxdWlyZXMgdGhpcyBzcGVjaWZpYyBzbG90IGZvciB4ODYuCiAgIFRMU19TTE9UX0RMRVJST1IsCiAKLSAgVExTX1NMT1RfRklSU1RfVVNFUl9TTE9UIC8vIE11c3QgY29tZSBsYXN0IQorICBCSU9OSUNfVExTX1NMT1RTIC8vIE11c3QgY29tZSBsYXN0IQogfTsKIAogLyoKLSAqIFRoZXJlIGFyZSB0d28ga2luZHMgb2Ygc2xvdCB1c2VkIGludGVybmFsbHkgYnkgYmlvbmljIC0tLSB0aGVyZSBhcmUgdGhlIHdlbGwta25vd24gc2xvdHMKLSAqIGVudW1lcmF0ZWQgYWJvdmUsIGFuZCB0aGVuIHRoZXJlIGFyZSB0aG9zZSB0aGF0IGFyZSBhbGxvY2F0ZWQgZHVyaW5nIHN0YXJ0dXAgYnkgY2FsbHMgdG8KLSAqIHB0aHJlYWRfa2V5X2NyZWF0ZTsgZ3JlcCBmb3IgR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUiB0byBmaW5kIHRob3NlLiBXZSBuZWVkIHRvIG1hbnVhbGx5Ci0gKiBtYWludGFpbiB0aGF0IHNlY29uZCBudW1iZXIsIGJ1dCBwdGhyZWFkX3Rlc3Qgd2lsbCBmYWlsIGlmIHdlIGZvcmdldC4KKyAqIEJpb25pYyB1c2VzIHNvbWUgcHRocmVhZCBrZXlzIGludGVybmFsbHkuIEFsbCBwdGhyZWFkIGtleXMgdXNlZCBpbnRlcm5hbGx5CisgKiBzaG91bGQgYmUgY3JlYXRlZCBpbiBjb25zdHJ1Y3RvcnMsIGV4Y2VwdCBmb3Iga2V5cyB0aGF0IG1heSBiZSB1c2VkIGluIG9yCisgKiBiZWZvcmUgY29uc3RydWN0b3JzLgorICoKKyAqIFdlIG5lZWQgdG8gbWFudWFsbHkgbWFpbnRhaW4gdGhlIGNvdW50IG9mIHB0aHJlYWQga2V5cyB1c2VkIGludGVybmFsbHksIGJ1dAorICogcHRocmVhZF90ZXN0IHNob3VsZCBmYWlsIGlmIHdlIGZvcmdldC4KKyAqCisgKiBUaGVzZSBhcmUgdGhlIHB0aHJlYWQga2V5cyBjdXJyZW50bHkgdXNlZCBpbnRlcm5hbGx5IGJ5IGxpYmM6CisgKgorICogIGJhc2VuYW1lICAgICAgICAgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgZGlybmFtZSAgICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICB1c2Vsb2NhbGUgICAgICAgICAgICAgIGxpYmMgKGNhbiBiZSB1c2VkIGluIGNvbnN0cnVjdG9ycykKKyAqICBnZXRtbnRlbnRfbW50ZW50ICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIGdldG1udGVudF9zdHJpbmdzICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgcHRzbmFtZSAgICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICB0dHluYW1lICAgICAgICAgICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIHN0cmVycm9yICAgICAgICAgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgc3Ryc2lnbmFsICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICBwYXNzd2QgICAgICAgICAgICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIGdyb3VwICAgICAgICAgICAgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgX3Jlc19rZXkgICAgICAgICAgICAgICBsaWJjIChjb25zdHJ1Y3RvciBpbiBCU0QgY29kZSkKICAqLwotI2RlZmluZSBHTE9CQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSX0NPVU5UIDUKKworI2RlZmluZSBMSUJDX1BUSFJFQURfS0VZX1JFU0VSVkVEX0NPVU5UIDEyCiAKICNpZiBkZWZpbmVkKFVTRV9KRU1BTExPQykKLS8qIGplbWFsbG9jIHVzZXMgNSBrZXlzIGZvciBpdHNlbGYuICovCi0jZGVmaW5lIEJJT05JQ19UTFNfUkVTRVJWRURfU0xPVFMgKEdMT0JBTF9JTklUX1RIUkVBRF9MT0NBTF9CVUZGRVJfQ09VTlQgKyA1KQorLyogSW50ZXJuYWxseSwgamVtYWxsb2MgdXNlcyBhIHNpbmdsZSBrZXkgZm9yIHBlciB0aHJlYWQgZGF0YS4gKi8KKyNkZWZpbmUgSkVNQUxMT0NfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgMQorI2RlZmluZSBCSU9OSUNfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgKExJQkNfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgKyBKRU1BTExPQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCkKICNlbHNlCi0jZGVmaW5lIEJJT05JQ19UTFNfUkVTRVJWRURfU0xPVFMgR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUl9DT1VOVAorI2RlZmluZSBCSU9OSUNfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgTElCQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVAogI2VuZGlmCiAKIC8qCi0gKiBNYXhpbXVtIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgVExTIGFycmF5LgotICogVGhpcyBpbmNsdWRlcyBzcGFjZSBmb3IgcHRocmVhZCBrZXlzIGFuZCBvdXIgb3duIGludGVybmFsIHNsb3RzLgotICogV2UgbmVlZCB0byByb3VuZCB1cCB0byBtYWludGFpbiBzdGFjayBhbGlnbm1lbnQuCisgKiBNYXhpbXVtIG51bWJlciBvZiBwdGhyZWFkIGtleXMgYWxsb2NhdGVkLgorICogVGhpcyBpbmNsdWRlcyBwdGhyZWFkIGtleXMgdXNlZCBpbnRlcm5hbGx5IGFuZCBleHRlcm5hbGx5LgogICovCi0jZGVmaW5lIEJJT05JQ19UTFNfU0xPVFMgQklPTklDX0FMSUdOKFBUSFJFQURfS0VZU19NQVggKyBUTFNfU0xPVF9GSVJTVF9VU0VSX1NMT1QgKyBCSU9OSUNfVExTX1JFU0VSVkVEX1NMT1RTLCA0KQorI2RlZmluZSBCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlQgKEJJT05JQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCArIFBUSFJFQURfS0VZU19NQVgpCiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9rZXJuZWxfc2lnc2V0X3QuaCBiL2xpYmMvcHJpdmF0ZS9rZXJuZWxfc2lnc2V0X3QuaAppbmRleCBiMmQ2Mzg2Li45NDE1ZmNmIDEwMDY0NAotLS0gYS9saWJjL3ByaXZhdGUva2VybmVsX3NpZ3NldF90LmgKKysrIGIvbGliYy9wcml2YXRlL2tlcm5lbF9zaWdzZXRfdC5oCkBAIC0xNyw2ICsxNyw4IEBACiAjaWZuZGVmIExJQkNfUFJJVkFURV9LRVJORUxfU0lHU0VUX1RfSF8KICNkZWZpbmUgTElCQ19QUklWQVRFX0tFUk5FTF9TSUdTRVRfVF9IXwogCisjaW5jbHVkZSA8c2lnbmFsLmg+CisKIC8vIE91ciBzaWdzZXRfdCBpcyB3cm9uZyBmb3IgQVJNIGFuZCB4ODYuIEl0J3MgMzItYml0IGJ1dCB0aGUga2VybmVsIGV4cGVjdHMgNjQgYml0cy4KIC8vIFRoaXMgbWVhbnMgd2UgY2FuJ3Qgc3VwcG9ydCByZWFsLXRpbWUgc2lnbmFscyBjb3JyZWN0bHkgdW50aWwgd2UgY2FuIGNoYW5nZSB0aGUgQUJJLgogLy8gSW4gdGhlIG1lYW50aW1lLCB3ZSBjYW4gdXNlIHRoaXMgdW5pb24gdG8gcGFzcyBhbiBhcHByb3ByaWF0ZWx5LXNpemVkIGJsb2NrIG9mIG1lbW9yeQpkaWZmIC0tZ2l0IGEvbGliYy9zdGRpby9maWxlZXh0LmggYi9saWJjL3N0ZGlvL2ZpbGVleHQuaAppbmRleCBjMDc0YjRiLi42Y2FjYzBmIDEwMDY0NAotLS0gYS9saWJjL3N0ZGlvL2ZpbGVleHQuaAorKysgYi9saWJjL3N0ZGlvL2ZpbGVleHQuaApAQCAtMzMsNiArMzMsNyBAQAogI2RlZmluZSBfRklMRUVYVF9IXwogCiAjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KIAogX19CRUdJTl9ERUNMUwogCkBAIC00MCwxNCArNDEsMTggQEAKICAqIGZpbGUgZXh0ZW5zaW9uCiAgKi8KIHN0cnVjdCBfX3NmaWxlZXh0IHsKLQlzdHJ1Y3QJX19zYnVmIF91YjsgLyogdW5nZXRjIGJ1ZmZlciAqLworCXN0cnVjdAlfX3NidWYgX3ViOwkJLyogdW5nZXRjIGJ1ZmZlciAqLwogCXN0cnVjdCB3Y2hhcl9pb19kYXRhIF93Y2lvOwkvKiB3aWRlIGNoYXIgaW8gc3RhdHVzICovCi0JcHRocmVhZF9tdXRleF90IF9sb2NrOyAvKiBmaWxlIGxvY2sgKi8KKwlwdGhyZWFkX211dGV4X3QgX2xvY2s7CQkvKiBmaWxlIGxvY2sgKi8KKwlib29sIF9zdGRpb19oYW5kbGVzX2xvY2tpbmc7CS8qIF9fZnNldGxvY2tpbmcgc3VwcG9ydCAqLwogfTsKIAotI2RlZmluZSBfRklMRUVYVF9JTklUSUFMSVpFUiAge3tOVUxMLDB9LHswfSxQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUn0KLQorI2lmIGRlZmluZWQoX19jcGx1c3BsdXMpCisjZGVmaW5lIF9FWFQoZnApIHJlaW50ZXJwcmV0X2Nhc3Q8X19zZmlsZWV4dCo+KChmcCktPl9leHQuX2Jhc2UpCisjZWxzZQogI2RlZmluZSBfRVhUKGZwKSAoKHN0cnVjdCBfX3NmaWxlZXh0ICopKChmcCktPl9leHQuX2Jhc2UpKQorI2VuZGlmCisKICNkZWZpbmUgX1VCKGZwKSBfRVhUKGZwKS0+X3ViCiAjZGVmaW5lIF9GTE9DSyhmcCkgIF9FWFQoZnApLT5fbG9jawogCkBAIC01Niw3ICs2MSwxMiBAQAogCV9VQihmcCkuX2Jhc2UgPSBOVUxMOyBcCiAJX1VCKGZwKS5fc2l6ZSA9IDA7IFwKIAlXQ0lPX0lOSVQoZnApOyBcCi0gICAgICAgIF9GTE9DSyhmcCkudmFsdWUgPSBfX1BUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRfVkFMVUU7IFwKKwlwdGhyZWFkX211dGV4YXR0cl90IGF0dHI7IFwKKwlwdGhyZWFkX211dGV4YXR0cl9pbml0KCZhdHRyKTsgXAorCXB0aHJlYWRfbXV0ZXhhdHRyX3NldHR5cGUoJmF0dHIsIFBUSFJFQURfTVVURVhfUkVDVVJTSVZFKTsgXAorCXB0aHJlYWRfbXV0ZXhfaW5pdCgmX0ZMT0NLKGZwKSwgJmF0dHIpOyBcCisJcHRocmVhZF9tdXRleGF0dHJfZGVzdHJveSgmYXR0cik7IFwKKwlfRVhUKGZwKS0+X3N0ZGlvX2hhbmRsZXNfbG9ja2luZyA9IHRydWU7IFwKIH0gd2hpbGUgKDApCiAKICNkZWZpbmUgX0ZJTEVFWFRfU0VUVVAoZiwgZmV4dCkgXApkaWZmIC0tZ2l0IGEvbGliYy9zdGRpby9maW5kZnAuYyBiL2xpYmMvc3RkaW8vZmluZGZwLmMKaW5kZXggY2ZiYjY2Yi4uNWU1MTE5OCAxMDA2NDQKLS0tIGEvbGliYy9zdGRpby9maW5kZnAuYworKysgYi9saWJjL3N0ZGlvL2ZpbmRmcC5jCkBAIC00NCwxNyArNDQsMTMgQEAKICNkZWZpbmUgQUxJR05CWVRFUyAoc2l6ZW9mKHVpbnRwdHJfdCkgLSAxKQogI2RlZmluZSBBTElHTihwKSAoKCh1aW50cHRyX3QpKHApICsgQUxJR05CWVRFUykgJn4gQUxJR05CWVRFUykKIAotI3VuZGVmIHN0ZGluCi0jdW5kZWYgc3Rkb3V0Ci0jdW5kZWYgc3RkZXJyCi0KIGludAlfX3NkaWRpbml0OwogCiAjZGVmaW5lCU5EWU5BTUlDIDEwCQkvKiBhZGQgdGVuIG1vcmUgd2hlbmV2ZXIgbmVjZXNzYXJ5ICovCiAKICNkZWZpbmUJc3RkKGZsYWdzLCBmaWxlKSBcCi0JezAsMCwwLGZsYWdzLGZpbGUsezB9LDAsX19zRitmaWxlLF9fc2Nsb3NlLF9fc3JlYWQsX19zc2VlayxfX3N3cml0ZSwgXAotCSAgICB7KHVuc2lnbmVkIGNoYXIgKikoX19zRmV4dCtmaWxlKSwgMH0sTlVMTCwwLHswfSx7MH0sezB9LDAsMH0KKwl7MCwwLDAsZmxhZ3MsZmlsZSx7MCwwfSwwLF9fc0YrZmlsZSxfX3NjbG9zZSxfX3NyZWFkLF9fc3NlZWssX19zd3JpdGUsIFwKKwkgICAgeyh1bnNpZ25lZCBjaGFyICopKF9fc0ZleHQrZmlsZSksIDB9LE5VTEwsMCx7MH0sezB9LHswLDB9LDAsMH0KIAogCQkJCS8qIHRoZSB1c3VhbCAtIChzdGRpbiArIHN0ZG91dCArIHN0ZGVycikgKi8KIHN0YXRpYyBGSUxFIHVzdWFsW0ZPUEVOX01BWCAtIDNdOwpkaWZmIC0tZ2l0IGEvbGliYy9zdGRpby9mcmVhZC5jIGIvbGliYy9zdGRpby9mcmVhZC5jCmluZGV4IGUwNTIxMjguLmYzZjAxMjcgMTAwNjQ0Ci0tLSBhL2xpYmMvc3RkaW8vZnJlYWQuYworKysgYi9saWJjL3N0ZGlvL2ZyZWFkLmMKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgogI2luY2x1ZGUgImxvY2FsLmgiCiAKICNkZWZpbmUgTVVMX05PX09WRVJGTE9XCSgxVUwgPDwgKHNpemVvZihzaXplX3QpICogNCkpCkBAIC00MiwxMyArNDMsOCBAQAogc2l6ZV90CiBmcmVhZCh2b2lkICpidWYsIHNpemVfdCBzaXplLCBzaXplX3QgY291bnQsIEZJTEUgKmZwKQogewotCXNpemVfdCByZXNpZDsKLQljaGFyICpwOwotCWludCByOwotCXNpemVfdCB0b3RhbDsKLQogCS8qCi0JICogRXh0ZW5zaW9uOiAgQ2F0Y2ggaW50ZWdlciBvdmVyZmxvdworCSAqIEV4dGVuc2lvbjogIENhdGNoIGludGVnZXIgb3ZlcmZsb3cuCiAJICovCiAJaWYgKChzaXplID49IE1VTF9OT19PVkVSRkxPVyB8fCBjb3VudCA+PSBNVUxfTk9fT1ZFUkZMT1cpICYmCiAJICAgIHNpemUgPiAwICYmIFNJWkVfTUFYIC8gc2l6ZSA8IGNvdW50KSB7CkBAIC01Nyw0OCArNTMsODcgQEAKIAkJcmV0dXJuICgwKTsKIAl9CiAKKwljb25zdCBzaXplX3QgZGVzaXJlZF90b3RhbCA9IGNvdW50ICogc2l6ZTsKKwlzaXplX3QgdG90YWwgPSBkZXNpcmVkX3RvdGFsOworCiAJLyoKIAkgKiBBTlNJIGFuZCBTVVN2MiByZXF1aXJlIGEgcmV0dXJuIHZhbHVlIG9mIDAgaWYgc2l6ZSBvciBjb3VudCBhcmUgMC4KIAkgKi8KLQlpZiAoKHJlc2lkID0gY291bnQgKiBzaXplKSA9PSAwKQorCWlmICh0b3RhbCA9PSAwKSB7CiAJCXJldHVybiAoMCk7CisJfQorCiAJRkxPQ0tGSUxFKGZwKTsKIAlfU0VUX09SSUVOVEFUSU9OKGZwLCAtMSk7CisKKwkvLyBUT0RPOiBob3cgY2FuIHRoaXMgZXZlciBoYXBwZW4/IQogCWlmIChmcC0+X3IgPCAwKQogCQlmcC0+X3IgPSAwOwotCXRvdGFsID0gcmVzaWQ7Ci0JcCA9IGJ1ZjsKIAotCS8vIEJFR0lOIGFuZHJvaWQtYWRkZWQKLQkvLyBBdm9pZCBwYXRob2xvZ2ljYWwgYmVoYXZpb3Igb24gdW5idWZmZXJlZCBmaWxlcy4gT3BlbkJTRAotCS8vIHdpbGwgbG9vcCByZWFkaW5nIG9uZSBieXRlIHRoZW4gbWVtY3B5aW5nIG9uZSBieXRlIQotCWlmICgoZnAtPl9mbGFncyAmIF9fU05CRikgIT0gMCkgewotCQkvLyBXZSBrbm93IGlmIHdlJ3JlIHVuYnVmZmVyZWQgdGhhdCBvdXIgYnVmZmVyIGlzIGVtcHR5LCBzbwotCQkvLyB3ZSBjYW4ganVzdCByZWFkIGRpcmVjdGx5LgotCQl3aGlsZSAocmVzaWQgPiAwICYmIChyID0gKCpmcC0+X3JlYWQpKGZwLT5fY29va2llLCBwLCByZXNpZCkpID4gMCkgewotCQkJcCArPSByOwotCQkJcmVzaWQgLT0gcjsKLQkJfQotCQlGVU5MT0NLRklMRShmcCk7Ci0JCXJldHVybiAoKHRvdGFsIC0gcmVzaWQpIC8gc2l6ZSk7CisJLyoKKwkgKiBFbnN1cmUgX2JmLl9zaXplIGlzIHZhbGlkLgorCSAqLworCWlmIChmcC0+X2JmLl9iYXNlID09IE5VTEwpIHsKKwkJX19zbWFrZWJ1ZihmcCk7CiAJfQotCS8vIEVORCBhbmRyb2lkLWFkZGVkCiAKLQl3aGlsZSAocmVzaWQgPiAoc2l6ZV90KShyID0gZnAtPl9yKSkgewotCQkodm9pZCltZW1jcHkoKHZvaWQgKilwLCAodm9pZCAqKWZwLT5fcCwgKHNpemVfdClyKTsKLQkJZnAtPl9wICs9IHI7Ci0JCS8qIGZwLT5fciA9IDAgLi4uIGRvbmUgaW4gX19zcmVmaWxsICovCi0JCXAgKz0gcjsKLQkJcmVzaWQgLT0gcjsKKwljaGFyKiBkc3QgPSBidWY7CisKKwl3aGlsZSAodG90YWwgPiAwKSB7CisJCS8qCisJCSAqIENvcHkgZGF0YSBvdXQgb2YgdGhlIGJ1ZmZlci4KKwkJICovCisJCXNpemVfdCBidWZmZXJlZF9ieXRlcyA9IE1JTigoc2l6ZV90KSBmcC0+X3IsIHRvdGFsKTsKKwkJbWVtY3B5KGRzdCwgZnAtPl9wLCBidWZmZXJlZF9ieXRlcyk7CisJCWZwLT5fcCArPSBidWZmZXJlZF9ieXRlczsKKwkJZnAtPl9yIC09IGJ1ZmZlcmVkX2J5dGVzOworCQlkc3QgKz0gYnVmZmVyZWRfYnl0ZXM7CisJCXRvdGFsIC09IGJ1ZmZlcmVkX2J5dGVzOworCisJCS8qCisJCSAqIEFyZSB3ZSBkb25lPworCQkgKi8KKwkJaWYgKHRvdGFsID09IDApIHsKKwkJCWdvdG8gb3V0OworCQl9CisKKwkJLyoKKwkJICogRG8gd2UgaGF2ZSBzbyBtdWNoIG1vcmUgdG8gcmVhZCB0aGF0IHdlIHNob3VsZAorCQkgKiBhdm9pZCBjb3B5aW5nIGl0IHRocm91Z2ggdGhlIGJ1ZmZlcj8KKwkJICovCisJCWlmICh0b3RhbCA+IChzaXplX3QpIGZwLT5fYmYuX3NpemUpIHsKKwkJCS8qCisJCQkgKiBNYWtlIHN1cmUgdGhhdCBmc2VlayBkb2Vzbid0IHRoaW5rIGl0IGNhbgorCQkJICogcmV1c2UgdGhlIGJ1ZmZlciBzaW5jZSB3ZSBhcmUgZ29pbmcgdG8gcmVhZAorCQkJICogZGlyZWN0bHkgZnJvbSB0aGUgZmlsZSBkZXNjcmlwdG9yLgorCQkJICovCisJCQlmcC0+X2ZsYWdzIHw9IF9fU01PRDsKKwkJCWJyZWFrOworCQl9CisKKwkJLyoKKwkJICogTGVzcyB0aGFuIGEgYnVmZmVyIHRvIGdvLCBzbyByZWZpbGwgdGhlIGJ1ZmZlciBhbmQKKwkJICogZ28gYXJvdW5kIHRoZSBsb29wIGFnYWluLgorCQkgKi8KIAkJaWYgKF9fc3JlZmlsbChmcCkpIHsKLQkJCS8qIG5vIG1vcmUgaW5wdXQ6IHJldHVybiBwYXJ0aWFsIHJlc3VsdCAqLwotCQkJRlVOTE9DS0ZJTEUoZnApOwotCQkJcmV0dXJuICgodG90YWwgLSByZXNpZCkgLyBzaXplKTsKKwkJCWdvdG8gb3V0OwogCQl9CiAJfQotCSh2b2lkKW1lbWNweSgodm9pZCAqKXAsICh2b2lkICopZnAtPl9wLCByZXNpZCk7Ci0JZnAtPl9yIC09IHJlc2lkOwotCWZwLT5fcCArPSByZXNpZDsKKworCS8qCisJICogUmVhZCBkaXJlY3RseSBpbnRvIHRoZSBjYWxsZXIncyBidWZmZXIuCisJICovCisJd2hpbGUgKHRvdGFsID4gMCkgeworCQlzc2l6ZV90IGJ5dGVzX3JlYWQgPSAoKmZwLT5fcmVhZCkoZnAtPl9jb29raWUsIGRzdCwgdG90YWwpOworCQlpZiAoYnl0ZXNfcmVhZCA8PSAwKSB7CisJCQlmcC0+X2ZsYWdzIHw9IChieXRlc19yZWFkID09IDApID8gX19TRU9GIDogX19TRVJSOworCQkJYnJlYWs7CisJCX0KKwkJZHN0ICs9IGJ5dGVzX3JlYWQ7CisJCXRvdGFsIC09IGJ5dGVzX3JlYWQ7CisJfQorCitvdXQ6CiAJRlVOTE9DS0ZJTEUoZnApOwotCXJldHVybiAoY291bnQpOworCXJldHVybiAoKGRlc2lyZWRfdG90YWwgLSB0b3RhbCkgLyBzaXplKTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvc3RkaW8vbG9jYWwuaCBiL2xpYmMvc3RkaW8vbG9jYWwuaAppbmRleCA0NmIxMWYxLi5jZTA0MTQxIDEwMDY0NAotLS0gYS9saWJjL3N0ZGlvL2xvY2FsLmgKKysrIGIvbGliYy9zdGRpby9sb2NhbC5oCkBAIC0xMTEsOCArMTExLDggQEAKIAkoZnApLT5fbGIuX2Jhc2UgPSBOVUxMOyBcCiB9CiAKLSNkZWZpbmUgRkxPQ0tGSUxFKGZwKSAgIGZsb2NrZmlsZShmcCkKLSNkZWZpbmUgRlVOTE9DS0ZJTEUoZnApIGZ1bmxvY2tmaWxlKGZwKQorI2RlZmluZSBGTE9DS0ZJTEUoZnApICAgaWYgKF9FWFQoZnApLT5fc3RkaW9faGFuZGxlc19sb2NraW5nKSBmbG9ja2ZpbGUoZnApCisjZGVmaW5lIEZVTkxPQ0tGSUxFKGZwKSBpZiAoX0VYVChmcCktPl9zdGRpb19oYW5kbGVzX2xvY2tpbmcpIGZ1bmxvY2tmaWxlKGZwKQogCiAjZGVmaW5lIEZMT0FUSU5HX1BPSU5UCiAjZGVmaW5lIFBSSU5URl9XSURFX0NIQVIKQEAgLTEyNCw2ICsxMjQsNyBAQAogI2RlZmluZSBfX3NmZXJyb3IocCkgICAoKChwKS0+X2ZsYWdzICYgX19TRVJSKSAhPSAwKQogI2RlZmluZSBfX3NjbGVhcmVycihwKSAoKHZvaWQpKChwKS0+X2ZsYWdzICY9IH4oX19TRVJSfF9fU0VPRikpKQogI2RlZmluZSBfX3NmaWxlbm8ocCkgICAoKHApLT5fZmlsZSkKKyNpZiAhZGVmaW5lZChfX2NwbHVzcGx1cykKICNkZWZpbmUgX19zZ2V0YyhwKSAoLS0ocCktPl9yIDwgMCA/IF9fc3JnZXQocCkgOiAoaW50KSgqKHApLT5fcCsrKSkKIHN0YXRpYyBfX2lubGluZSBpbnQgX19zcHV0YyhpbnQgX2MsIEZJTEUqIF9wKSB7CiAgIGlmICgtLV9wLT5fdyA+PSAwIHx8IChfcC0+X3cgPj0gX3AtPl9sYmZzaXplICYmIChjaGFyKV9jICE9ICdcbicpKSB7CkBAIC0xMzIsNiArMTMzLDcgQEAKICAgICByZXR1cm4gKF9fc3didWYoX2MsIF9wKSk7CiAgIH0KIH0KKyNlbmRpZgogCiAvKiBPcGVuQlNEIGRlY2xhcmVzIHRoZXNlIGluIGZ2d3JpdGUuaCBidXQgd2Ugd2FudCB0byBlbnN1cmUgdGhleSdyZSBoaWRkZW4uICovCiBzdHJ1Y3QgX19zdWlvOwpkaWZmIC0tZ2l0IGEvbGliYy9zdGRpby9zdGRpby5jIGIvbGliYy9zdGRpby9zdGRpby5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzYjk4ODcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3N0ZGlvL3N0ZGlvLmMKQEAgLTAsMCArMSw5MCBAQAorLyoJJE9wZW5CU0Q6IHN0ZGlvLmMsdiAxLjkgMjAwNS8wOC8wOCAwODowNTozNiBlc3BpZSBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSAibG9jYWwuaCIKKworLyoKKyAqIFNtYWxsIHN0YW5kYXJkIEkvTy9zZWVrL2Nsb3NlIGZ1bmN0aW9ucy4KKyAqIFRoZXNlIG1haW50YWluIHRoZSBga25vd24gc2VlayBvZmZzZXQnIGZvciBzZWVrIG9wdGltaXNhdGlvbi4KKyAqLworaW50CitfX3NyZWFkKHZvaWQgKmNvb2tpZSwgY2hhciAqYnVmLCBpbnQgbikKK3sKKwlGSUxFICpmcCA9IGNvb2tpZTsKKwlpbnQgcmV0OworCQorCXJldCA9IFRFTVBfRkFJTFVSRV9SRVRSWShyZWFkKGZwLT5fZmlsZSwgYnVmLCBuKSk7CisJLyogaWYgdGhlIHJlYWQgc3VjY2VlZGVkLCB1cGRhdGUgdGhlIGN1cnJlbnQgb2Zmc2V0ICovCisJaWYgKHJldCA+PSAwKQorCQlmcC0+X29mZnNldCArPSByZXQ7CisJZWxzZQorCQlmcC0+X2ZsYWdzICY9IH5fX1NPRkY7CS8qIHBhcmFub2lhICovCisJcmV0dXJuIChyZXQpOworfQorCitpbnQKK19fc3dyaXRlKHZvaWQgKmNvb2tpZSwgY29uc3QgY2hhciAqYnVmLCBpbnQgbikKK3sKKwlGSUxFICpmcCA9IGNvb2tpZTsKKworCWlmIChmcC0+X2ZsYWdzICYgX19TQVBQKQorCQkodm9pZCkgVEVNUF9GQUlMVVJFX1JFVFJZKGxzZWVrKGZwLT5fZmlsZSwgKG9mZl90KTAsIFNFRUtfRU5EKSk7CisJZnAtPl9mbGFncyAmPSB+X19TT0ZGOwkvKiBpbiBjYXNlIEZBUFBFTkQgbW9kZSBpcyBzZXQgKi8KKwlyZXR1cm4gVEVNUF9GQUlMVVJFX1JFVFJZKHdyaXRlKGZwLT5fZmlsZSwgYnVmLCBuKSk7Cit9CisKK2Zwb3NfdAorX19zc2Vlayh2b2lkICpjb29raWUsIGZwb3NfdCBvZmZzZXQsIGludCB3aGVuY2UpCit7CisJRklMRSAqZnAgPSBjb29raWU7CisJb2ZmX3QgcmV0OworCQorCXJldCA9IFRFTVBfRkFJTFVSRV9SRVRSWShsc2VlayhmcC0+X2ZpbGUsIChvZmZfdClvZmZzZXQsIHdoZW5jZSkpOworCWlmIChyZXQgPT0gKG9mZl90KS0xKQorCQlmcC0+X2ZsYWdzICY9IH5fX1NPRkY7CisJZWxzZSB7CisJCWZwLT5fZmxhZ3MgfD0gX19TT0ZGOworCQlmcC0+X29mZnNldCA9IHJldDsKKwl9CisJcmV0dXJuIChyZXQpOworfQorCitpbnQKK19fc2Nsb3NlKHZvaWQgKmNvb2tpZSkKK3sKKwlyZXR1cm4gVEVNUF9GQUlMVVJFX1JFVFJZKGNsb3NlKCgoRklMRSAqKWNvb2tpZSktPl9maWxlKSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3N0ZGlvL3N0ZGlvX2V4dC5jcHAgYi9saWJjL3N0ZGlvL3N0ZGlvX2V4dC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmVhNDRmNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvc3RkaW8vc3RkaW9fZXh0LmNwcApAQCAtMCwwICsxLDEwMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3RkaW9fZXh0Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlICJsb2NhbC5oIgorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKK3NpemVfdCBfX2ZidWZzaXplKEZJTEUqIGZwKSB7CisgIHJldHVybiBmcC0+X2JmLl9zaXplOworfQorCisvKiBGb3IgYSBfU1JXIHN0cmVhbSwgd2UgZG9uJ3Qga25vdyB3aGV0aGVyIHdlIGxhc3QgcmVhZCBvciB3cm90ZS4KK2ludCBfX2ZyZWFkaW5nKEZJTEUqIGZwKSB7CisgIHJldHVybiAoZnAtPl9mbGFncyAmIF9TUkQpICE9IDAgfHwgLi4uOworfQorKi8KKworLyogRm9yIGEgX1NSVyBzdHJlYW0sIHdlIGRvbid0IGtub3cgd2hldGhlciB3ZSBsYXN0IHJlYWQgb3Igd3JvdGUuCitpbnQgX19md3JpdGluZyhGSUxFKikgeworICByZXR1cm4gKGZwLT5fZmxhZ3MgJiBfU1dSKSAhPSAwIHx8IC4uLjsKK30KKyovCisKK2ludCBfX2ZyZWFkYWJsZShGSUxFKiBmcCkgeworICByZXR1cm4gKGZwLT5fZmxhZ3MgJiAoX19TUkR8X19TUlcpKSAhPSAwOworfQorCitpbnQgX19md3JpdGFibGUoRklMRSogZnApIHsKKyAgcmV0dXJuIChmcC0+X2ZsYWdzICYgKF9fU1dSfF9fU1JXKSkgIT0gMDsKK30KKworaW50IF9fZmxiZihGSUxFKiBmcCkgeworICByZXR1cm4gKGZwLT5fZmxhZ3MgJiBfX1NMQkYpICE9IDA7Cit9CisKK3ZvaWQgX19mcHVyZ2UoRklMRSogZnApIHsKKyAgZnB1cmdlKGZwKTsKK30KKworc2l6ZV90IF9fZnBlbmRpbmcoRklMRSogZnApIHsKKyAgcmV0dXJuIGZwLT5fcCAtIGZwLT5fYmYuX2Jhc2U7Cit9CisKK3ZvaWQgX2ZsdXNobGJmKCkgeworICAvLyBJZiB3ZSBmbHVzaCBhbGwgc3RyZWFtcywgd2Uga25vdyB3ZSd2ZSBmbHVzaGVkIGFsbCB0aGUgbGluZS1idWZmZXJlZCBzdHJlYW1zLgorICBmZmx1c2goTlVMTCk7Cit9CisKK2ludCBfX2ZzZXRsb2NraW5nKEZJTEUqIGZwLCBpbnQgdHlwZSkgeworICBpbnQgb2xkX3N0YXRlID0gX0VYVChmcCktPl9zdGRpb19oYW5kbGVzX2xvY2tpbmcgPyBGU0VUTE9DS0lOR19JTlRFUk5BTCA6IEZTRVRMT0NLSU5HX0JZQ0FMTEVSOworICBpZiAodHlwZSA9PSBGU0VUTE9DS0lOR19RVUVSWSkgeworICAgIHJldHVybiBvbGRfc3RhdGU7CisgIH0KKworICBpZiAodHlwZSAhPSBGU0VUTE9DS0lOR19JTlRFUk5BTCAmJiB0eXBlICE9IEZTRVRMT0NLSU5HX0JZQ0FMTEVSKSB7CisgICAgLy8gVGhlIEFQSSBkb2Vzbid0IGxldCB1cyByZXBvcnQgYW4gZXJyb3IsIHNvIGJsb3cgdXAuCisgICAgX19saWJjX2ZhdGFsKCJCYWQgdHlwZSAoJWQpIHBhc3NlZCB0byBfX2ZzZXRsb2NraW5nIiwgdHlwZSk7CisgIH0KKworICBfRVhUKGZwKS0+X3N0ZGlvX2hhbmRsZXNfbG9ja2luZyA9ICh0eXBlID09IEZTRVRMT0NLSU5HX0lOVEVSTkFMKTsKKyAgcmV0dXJuIG9sZF9zdGF0ZTsKK30KKwordm9pZCBjbGVhcmVycl91bmxvY2tlZChGSUxFKiBmcCkgeworICByZXR1cm4gX19zY2xlYXJlcnIoZnApOworfQorCitpbnQgZmVvZl91bmxvY2tlZChGSUxFKiBmcCkgeworICByZXR1cm4gX19zZmVvZihmcCk7Cit9CisKK2ludCBmZXJyb3JfdW5sb2NrZWQoRklMRSogZnApIHsKKyAgcmV0dXJuIF9fc2ZlcnJvcihmcCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3N0ZGxpYi9hdGV4aXQuYyBiL2xpYmMvc3RkbGliL2F0ZXhpdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmMmIxYjUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3N0ZGxpYi9hdGV4aXQuYwpAQCAtMCwwICsxLDIxMiBAQAorLyoJJE9wZW5CU0Q6IGF0ZXhpdC5jLHYgMS4yMCAyMDE0LzA3LzExIDA5OjUxOjM3IGtldHRlbmlzIEV4cCAkICovCisvKgorICogQ29weXJpZ2h0IChjKSAyMDAyIERhbmllbCBIYXJ0bWVpZXIKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCisgKiAgICAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgSE9MREVSUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOCisgKiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlICJhdGV4aXQuaCIKKyNpbmNsdWRlICJwcml2YXRlL3RocmVhZF9wcml2YXRlLmgiCisKK3N0cnVjdCBhdGV4aXQgKl9fYXRleGl0Oworc3RhdGljIGludCByZXN0YXJ0bG9vcDsKKworLyogQkVHSU4gYW5kcm9pZC1jaGFuZ2VkOiBfX3VucmVnaXN0ZXJfYXRmb3JrIGlzIHVzZWQgYnkgX19jeGFfZmluYWxpemUgKi8KK2V4dGVybiB2b2lkIF9fdW5yZWdpc3Rlcl9hdGZvcmsodm9pZCogZHNvKTsKKy8qIEVORCBhbmRyb2lkLWNoYW5nZWQgKi8KKworLyoKKyAqIEZ1bmN0aW9uIHBvaW50ZXJzIGFyZSBzdG9yZWQgaW4gYSBsaW5rZWQgbGlzdCBvZiBwYWdlcy4gVGhlIGxpc3QKKyAqIGlzIGluaXRpYWxseSBlbXB0eSwgYW5kIHBhZ2VzIGFyZSBhbGxvY2F0ZWQgb24gZGVtYW5kLiBUaGUgZmlyc3QKKyAqIGZ1bmN0aW9uIHBvaW50ZXIgaW4gdGhlIGZpcnN0IGFsbG9jYXRlZCBwYWdlICh0aGUgbGFzdCBvbmUgaW4KKyAqIHRoZSBsaW5rZWQgbGlzdCkgaXMgcmVzZXJ2ZWQgZm9yIHRoZSBjbGVhbnVwIGZ1bmN0aW9uLgorICoKKyAqIE91dHNpZGUgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMsIGFsbCBwYWdlcyBhcmUgbXByb3RlY3QoKSdlZAorICogdG8gcHJldmVudCB1bmludGVudGlvbmFsL21hbGljaW91cyBjb3JydXB0aW9uLgorICovCisKKy8qCisgKiBSZWdpc3RlciBhIGZ1bmN0aW9uIHRvIGJlIHBlcmZvcm1lZCBhdCBleGl0IG9yIHdoZW4gYSBzaGFyZWQgb2JqZWN0CisgKiB3aXRoIHRoZSBnaXZlbiBkc28gaGFuZGxlIGlzIHVubG9hZGVkIGR5bmFtaWNhbGx5LiAgQWxzbyB1c2VkIGFzCisgKiB0aGUgYmFja2VuZCBmb3IgYXRleGl0KCkuICBGb3IgbW9yZSBpbmZvIG9uIHRoaXMgQVBJLCBzZWU6CisgKgorICoJaHR0cDovL3d3dy5jb2Rlc291cmNlcnkuY29tL2N4eC1hYmkvYWJpLmh0bWwjZHNvLWR0b3IKKyAqLworaW50CitfX2N4YV9hdGV4aXQodm9pZCAoKmZ1bmMpKHZvaWQgKiksIHZvaWQgKmFyZywgdm9pZCAqZHNvKQoreworCXN0cnVjdCBhdGV4aXQgKnAgPSBfX2F0ZXhpdDsKKwlzdHJ1Y3QgYXRleGl0X2ZuICpmbnA7CisJc2l6ZV90IHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7CisJaW50IHJldCA9IC0xOworCisJaWYgKHBnc2l6ZSA8IHNpemVvZigqcCkpCisJCXJldHVybiAoLTEpOworCV9BVEVYSVRfTE9DSygpOworCXAgPSBfX2F0ZXhpdDsKKwlpZiAocCAhPSBOVUxMKSB7CisJCWlmIChwLT5pbmQgKyAxID49IHAtPm1heCkKKwkJCXAgPSBOVUxMOworCQllbHNlIGlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUpKQorCQkJZ290byB1bmxvY2s7CisJfQorCWlmIChwID09IE5VTEwpIHsKKwkJcCA9IG1tYXAoTlVMTCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLAorCQkgICAgTUFQX0FOT04gfCBNQVBfUFJJVkFURSwgLTEsIDApOworCQlpZiAocCA9PSBNQVBfRkFJTEVEKQorCQkJZ290byB1bmxvY2s7CisJCWlmIChfX2F0ZXhpdCA9PSBOVUxMKSB7CisJCQltZW1zZXQoJnAtPmZuc1swXSwgMCwgc2l6ZW9mKHAtPmZuc1swXSkpOworCQkJcC0+aW5kID0gMTsKKwkJfSBlbHNlCisJCQlwLT5pbmQgPSAwOworCQlwLT5tYXggPSAocGdzaXplIC0gKChjaGFyICopJnAtPmZuc1swXSAtIChjaGFyICopcCkpIC8KKwkJICAgIHNpemVvZihwLT5mbnNbMF0pOworCQlwLT5uZXh0ID0gX19hdGV4aXQ7CisJCV9fYXRleGl0ID0gcDsKKwl9CisJZm5wID0gJnAtPmZuc1twLT5pbmQrK107CisJZm5wLT5mbl9wdHIgPSBmdW5jOworCWZucC0+Zm5fYXJnID0gYXJnOworCWZucC0+Zm5fZHNvID0gZHNvOworCWlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCkpCisJCWdvdG8gdW5sb2NrOworCXJlc3RhcnRsb29wID0gMTsKKwlyZXQgPSAwOwordW5sb2NrOgorCV9BVEVYSVRfVU5MT0NLKCk7CisJcmV0dXJuIChyZXQpOworfQorCisvKgorICogQ2FsbCBhbGwgaGFuZGxlcnMgcmVnaXN0ZXJlZCB3aXRoIF9fY3hhX2F0ZXhpdCgpIGZvciB0aGUgc2hhcmVkCisgKiBvYmplY3Qgb3duaW5nICdkc28nLgorICogTm90ZTogaWYgJ2RzbycgaXMgTlVMTCwgdGhlbiBhbGwgcmVtYWluaW5nIGhhbmRsZXJzIGFyZSBjYWxsZWQuCisgKi8KK3ZvaWQKK19fY3hhX2ZpbmFsaXplKHZvaWQgKmRzbykKK3sKKwlzdHJ1Y3QgYXRleGl0ICpwLCAqcTsKKwlzdHJ1Y3QgYXRleGl0X2ZuIGZuOworCWludCBuLCBwZ3NpemUgPSBnZXRwYWdlc2l6ZSgpOworCXN0YXRpYyBpbnQgY2FsbF9kZXB0aDsKKworCV9BVEVYSVRfTE9DSygpOworCWNhbGxfZGVwdGgrKzsKKworcmVzdGFydDoKKwlyZXN0YXJ0bG9vcCA9IDA7CisJZm9yIChwID0gX19hdGV4aXQ7IHAgIT0gTlVMTDsgcCA9IHAtPm5leHQpIHsKKwkJZm9yIChuID0gcC0+aW5kOyAtLW4gPj0gMDspIHsKKwkJCWlmIChwLT5mbnNbbl0uZm5fcHRyID09IE5VTEwpCisJCQkJY29udGludWU7CS8qIGFscmVhZHkgY2FsbGVkICovCisJCQlpZiAoZHNvICE9IE5VTEwgJiYgZHNvICE9IHAtPmZuc1tuXS5mbl9kc28pCisJCQkJY29udGludWU7CS8qIHdyb25nIERTTyAqLworCisJCQkvKgorCQkJICogTWFyayBoYW5kbGVyIGFzIGhhdmluZyBiZWVuIGFscmVhZHkgY2FsbGVkIHRvIGF2b2lkCisJCQkgKiBkdXBlcyBhbmQgbG9vcHMsIHRoZW4gY2FsbCB0aGUgYXBwcm9wcmlhdGUgZnVuY3Rpb24uCisJCQkgKi8KKwkJCWZuID0gcC0+Zm5zW25dOworCQkJaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSkgPT0gMCkgeworCQkJCXAtPmZuc1tuXS5mbl9wdHIgPSBOVUxMOworCQkJCW1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKTsKKwkJCX0KKwkJCV9BVEVYSVRfVU5MT0NLKCk7CisJCQkoKmZuLmZuX3B0cikoZm4uZm5fYXJnKTsKKwkJCV9BVEVYSVRfTE9DSygpOworCQkJaWYgKHJlc3RhcnRsb29wKQorCQkJCWdvdG8gcmVzdGFydDsKKwkJfQorCX0KKworCWNhbGxfZGVwdGgtLTsKKworCS8qCisJICogSWYgY2FsbGVkIHZpYSBleGl0KCksIHVubWFwIHRoZSBwYWdlcyBzaW5jZSB3ZSBoYXZlIG5vdyBydW4KKwkgKiBhbGwgdGhlIGhhbmRsZXJzLiAgV2UgZGVmZXIgdGhpcyB1bnRpbCBjYWxsZGVwdGggPT0gMCBzbyB0aGF0CisJICogd2UgZG9uJ3QgdW5tYXAgdGhpbmdzIHByZW1hdHVyZWx5IGlmIGNhbGxlZCByZWN1cnNpdmVseS4KKwkgKi8KKwlpZiAoZHNvID09IE5VTEwgJiYgY2FsbF9kZXB0aCA9PSAwKSB7CisJCWZvciAocCA9IF9fYXRleGl0OyBwICE9IE5VTEw7ICkgeworCQkJcSA9IHA7CisJCQlwID0gcC0+bmV4dDsKKwkJCW11bm1hcChxLCBwZ3NpemUpOworCQl9CisJCV9fYXRleGl0ID0gTlVMTDsKKwl9CisJX0FURVhJVF9VTkxPQ0soKTsKKworICAvKiBCRUdJTiBhbmRyb2lkLWNoYW5nZWQ6IGNhbGwgX191bnJlZ2lzdGVyX2F0Zm9yayBpZiBkc28gaXMgbm90IG51bGwgKi8KKyAgaWYgKGRzbyAhPSBOVUxMKSB7CisgICAgX191bnJlZ2lzdGVyX2F0Zm9yayhkc28pOworICB9CisgIC8qIEVORCBhbmRyb2lkLWNoYW5nZWQgKi8KK30KKworLyoKKyAqIFJlZ2lzdGVyIHRoZSBjbGVhbnVwIGZ1bmN0aW9uCisgKi8KK3ZvaWQKK19fYXRleGl0X3JlZ2lzdGVyX2NsZWFudXAodm9pZCAoKmZ1bmMpKHZvaWQpKQoreworCXN0cnVjdCBhdGV4aXQgKnA7CisJc2l6ZV90IHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7CisKKwlpZiAocGdzaXplIDwgc2l6ZW9mKCpwKSkKKwkJcmV0dXJuOworCV9BVEVYSVRfTE9DSygpOworCXAgPSBfX2F0ZXhpdDsKKwl3aGlsZSAocCAhPSBOVUxMICYmIHAtPm5leHQgIT0gTlVMTCkKKwkJcCA9IHAtPm5leHQ7CisJaWYgKHAgPT0gTlVMTCkgeworCQlwID0gbW1hcChOVUxMLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCisJCSAgICBNQVBfQU5PTiB8IE1BUF9QUklWQVRFLCAtMSwgMCk7CisJCWlmIChwID09IE1BUF9GQUlMRUQpCisJCQlnb3RvIHVubG9jazsKKwkJcC0+aW5kID0gMTsKKwkJcC0+bWF4ID0gKHBnc2l6ZSAtICgoY2hhciAqKSZwLT5mbnNbMF0gLSAoY2hhciAqKXApKSAvCisJCSAgICBzaXplb2YocC0+Zm5zWzBdKTsKKwkJcC0+bmV4dCA9IE5VTEw7CisJCV9fYXRleGl0ID0gcDsKKwl9IGVsc2UgeworCQlpZiAobXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKSkKKwkJCWdvdG8gdW5sb2NrOworCX0KKwlwLT5mbnNbMF0uZm5fcHRyID0gKHZvaWQgKCopKHZvaWQgKikpZnVuYzsKKwlwLT5mbnNbMF0uZm5fYXJnID0gTlVMTDsKKwlwLT5mbnNbMF0uZm5fZHNvID0gTlVMTDsKKwltcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCk7CisJcmVzdGFydGxvb3AgPSAxOwordW5sb2NrOgorCV9BVEVYSVRfVU5MT0NLKCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2F0ZXhpdC5oIGIvbGliYy9zdGRsaWIvYXRleGl0LmgKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIGxpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvYXRleGl0LmgKcmVuYW1lIHRvIGxpYmMvc3RkbGliL2F0ZXhpdC5oCmRpZmYgLS1naXQgYS9saWJjL3N0ZGxpYi9leGl0LmMgYi9saWJjL3N0ZGxpYi9leGl0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTBjZTY3NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvc3RkbGliL2V4aXQuYwpAQCAtMCwwICsxLDY2IEBACisvKgkkT3BlbkJTRDogZXhpdC5jLHYgMS4xMiAyMDA3LzA5LzAzIDE0OjQwOjE2IG1pbGxlcnQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworLyoKKyAqIFRoaXMgdmFyaWFibGUgaXMgemVybyB1bnRpbCBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgYSB0aHJlYWQuCisgKiBJdCBpcyB1c2VkIHRvIGF2b2lkIGNhbGxpbmcgbG9ja2luZyBmdW5jdGlvbnMgaW4gbGliYyB3aGVuIHRoZXkKKyAqIGFyZSBub3QgcmVxdWlyZWQuIEJ5IGRlZmF1bHQsIGxpYmMgaXMgaW50ZW5kZWQgdG8gYmUoY29tZSkKKyAqIHRocmVhZC1zYWZlLCBidXQgd2l0aG91dCBhIChzaWduaWZpY2FudCkgcGVuYWx0eSB0byBub24tdGhyZWFkZWQKKyAqIHByb2Nlc3Nlcy4KKyAqLworaW50ICAgICBfX2lzdGhyZWFkZWQgICAgPSAwOworCisvKiBCRUdJTiBhbmRyb2lkLWFkZGVkOiB1c2luZyBfX2N4YV9maW5hbGl6ZSBhbmQgX19jeGFfdGhyZWFkX2ZpbmFsaXplICovCitleHRlcm4gdm9pZCBfX2N4YV9maW5hbGl6ZSh2b2lkKiBkc29faGFuZGxlKTsKK2V4dGVybiB2b2lkIF9fY3hhX3RocmVhZF9maW5hbGl6ZSgpOworLyogRU5EIGFuZHJvaWQtYWRkZWQgKi8KKworLyoKKyAqIEV4aXQsIGZsdXNoaW5nIHN0ZGlvIGJ1ZmZlcnMgaWYgbmVjZXNzYXJ5LgorICovCit2b2lkCitleGl0KGludCBzdGF0dXMpCit7CisgIC8qIEJFR0lOIGFuZHJvaWQtYWRkZWQ6IGNhbGwgdGhyZWFkX2xvY2FsIGQtdG9ycyAqLworICBfX2N4YV90aHJlYWRfZmluYWxpemUoKTsKKyAgLyogRU5EIGFuZHJvaWQtYWRkZWQgKi8KKworCS8qCisJICogQ2FsbCBmdW5jdGlvbnMgcmVnaXN0ZXJlZCBieSBhdGV4aXQoKSBvciBfY3hhX2F0ZXhpdCgpCisJICogKGluY2x1ZGluZyB0aGUgc3RkaW8gY2xlYW51cCByb3V0aW5lKSBhbmQgdGhlbiBfZXhpdCgpLgorCSAqLworCV9fY3hhX2ZpbmFsaXplKE5VTEwpOworCV9leGl0KHN0YXR1cyk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Rvb2xzL2Jpb25pY191dGlscy5weSBiL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMzhlZmI1Li4wMDAwMDAwCi0tLSBhL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTY1ICswLDAgQEAKLSMgY29tbW9uIHB5dGhvbiB1dGlsaXR5IHJvdXRpbmVzIGZvciB0aGUgQmlvbmljIHRvb2wgc2NyaXB0cwotCi1pbXBvcnQgc3lzLCBvcywgY29tbWFuZHMsIHN0cmluZwotCi1hbGxfYXJjaGVzID0gWyAiYXJtIiwgImFybTY0IiwgIm1pcHMiLCAibWlwczY0IiwgIng4NiIsICJ4ODZfNjQiIF0KLQotIyBiYXNpYyBkZWJ1Z2dpbmcgdHJhY2Ugc3VwcG9ydAotIyBjYWxsIERfc2V0bGV2ZWwgdG8gc2V0IHRoZSB2ZXJib3NpdHkgbGV2ZWwKLSMgYW5kIEQoKSwgRDIoKSwgRDMoKSwgRDQoKSB0byBhZGQgdHJhY2VzCi0jCi12ZXJib3NlID0gMAotCi1kZWYgRChtc2cpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgaWYgdmVyYm9zZSA+IDA6Ci0gICAgICAgIHByaW50IG1zZwotCi1kZWYgRDIobXNnKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIGlmIHZlcmJvc2UgPj0gMjoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBEMyhtc2cpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgaWYgdmVyYm9zZSA+PSAzOgotICAgICAgICBwcmludCBtc2cKLQotZGVmIEQ0KG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID49IDQ6Ci0gICAgICAgIHByaW50IG1zZwotCi1kZWYgRF9zZXRsZXZlbChsZXZlbCk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICB2ZXJib3NlID0gbGV2ZWwKLQotCi0jIHBhcnNlciBmb3IgdGhlIFNZU0NBTExTLlRYVCBmaWxlCi0jCi1jbGFzcyBTeXNDYWxsc1R4dFBhcnNlcjoKLSAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIHNlbGYuc3lzY2FsbHMgPSBbXQotICAgICAgICBzZWxmLmxpbmVubyAgID0gMAotCi0gICAgZGVmIEUoc2VsZiwgbXNnKToKLSAgICAgICAgcHJpbnQgIiVkOiAlcyIgJSAoc2VsZi5saW5lbm8sIG1zZykKLQotICAgIGRlZiBwYXJzZV9saW5lKHNlbGYsIGxpbmUpOgotICAgICAgICAiIiIgcGFyc2UgYSBzeXNjYWxsIHNwZWMgbGluZS4KLQotICAgICAgICBsaW5lIHByb2Nlc3NpbmcsIGZvcm1hdCBpcwotICAgICAgICAgICByZXR1cm4gdHlwZSAgICBmdW5jX25hbWVbfGFsaWFzX2xpc3RdWzpzeXNjYWxsX25hbWVbOnNvY2tldGNhbGxfaWRdXSAoIFtwYXJhbWxpc3RdICkgYXJjaGl0ZWN0dXJlX2xpc3QKLSAgICAgICAgIiIiCi0gICAgICAgIHBvc19scGFyZW4gPSBsaW5lLmZpbmQoJygnKQotICAgICAgICBFICAgICAgICAgID0gc2VsZi5FCi0gICAgICAgIGlmIHBvc19scGFyZW4gPCAwOgotICAgICAgICAgICAgRSgibWlzc2luZyBsZWZ0IHBhcmVudGhlc2lzIGluICclcyciICUgbGluZSkKLSAgICAgICAgICAgIHJldHVybgotCi0gICAgICAgIHBvc19ycGFyZW4gPSBsaW5lLnJmaW5kKCcpJykKLSAgICAgICAgaWYgcG9zX3JwYXJlbiA8IDAgb3IgcG9zX3JwYXJlbiA8PSBwb3NfbHBhcmVuOgotICAgICAgICAgICAgRSgibWlzc2luZyBvciBtaXNwbGFjZWQgcmlnaHQgcGFyZW50aGVzaXMgaW4gJyVzJyIgJSBsaW5lKQotICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgcmV0dXJuX3R5cGUgPSBsaW5lWzpwb3NfbHBhcmVuXS5zdHJpcCgpLnNwbGl0KCkKLSAgICAgICAgaWYgbGVuKHJldHVybl90eXBlKSA8IDI6Ci0gICAgICAgICAgICBFKCJtaXNzaW5nIHJldHVybiB0eXBlIGluICclcyciICUgbGluZSkKLSAgICAgICAgICAgIHJldHVybgotCi0gICAgICAgIHN5c2NhbGxfZnVuYyA9IHJldHVybl90eXBlWy0xXQotICAgICAgICByZXR1cm5fdHlwZSAgPSBzdHJpbmcuam9pbihyZXR1cm5fdHlwZVs6LTFdLCcgJykKLSAgICAgICAgc29ja2V0Y2FsbF9pZCA9IC0xCi0KLSAgICAgICAgcG9zX2NvbG9uID0gc3lzY2FsbF9mdW5jLmZpbmQoJzonKQotICAgICAgICBpZiBwb3NfY29sb24gPCAwOgotICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBpZiBwb3NfY29sb24gPT0gMCBvciBwb3NfY29sb24rMSA+PSBsZW4oc3lzY2FsbF9mdW5jKToKLSAgICAgICAgICAgICAgICBFKCJtaXNwbGFjZWQgY29sb24gaW4gJyVzJyIgJSBsaW5lKQotICAgICAgICAgICAgICAgIHJldHVybgotCi0gICAgICAgICAgICAjIG5vdyBmaW5kIGlmIHRoZXJlIGlzIGEgc29ja2V0Y2FsbF9pZCBmb3IgYSBkaXNwYXRjaC10eXBlIHN5c2NhbGwKLSAgICAgICAgICAgICMgYWZ0ZXIgdGhlIG9wdGlvbmFsIDJuZCBjb2xvbgotICAgICAgICAgICAgcG9zX2NvbG9uMiA9IHN5c2NhbGxfZnVuYy5maW5kKCc6JywgcG9zX2NvbG9uICsgMSkKLSAgICAgICAgICAgIGlmIHBvc19jb2xvbjIgPCAwOgotICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfZnVuY1twb3NfY29sb24rMTpdCi0gICAgICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzpwb3NfY29sb25dCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGlmIHBvc19jb2xvbjIrMSA+PSBsZW4oc3lzY2FsbF9mdW5jKToKLSAgICAgICAgICAgICAgICAgICAgRSgibWlzcGxhY2VkIGNvbG9uMiBpbiAnJXMnIiAlIGxpbmUpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfZnVuY1socG9zX2NvbG9uKzEpOnBvc19jb2xvbjJdCi0gICAgICAgICAgICAgICAgc29ja2V0Y2FsbF9pZCA9IGludChzeXNjYWxsX2Z1bmNbcG9zX2NvbG9uMisxOl0pCi0gICAgICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzpwb3NfY29sb25dCi0KLSAgICAgICAgYWxpYXNfZGVsaW0gPSBzeXNjYWxsX2Z1bmMuZmluZCgnfCcpCi0gICAgICAgIGlmIGFsaWFzX2RlbGltID4gMDoKLSAgICAgICAgICAgIGFsaWFzX2xpc3QgPSBzeXNjYWxsX2Z1bmNbYWxpYXNfZGVsaW0rMTpdLnN0cmlwKCkKLSAgICAgICAgICAgIHN5c2NhbGxfZnVuYyA9IHN5c2NhbGxfZnVuY1s6YWxpYXNfZGVsaW1dCi0gICAgICAgICAgICBhbGlhc19kZWxpbSA9IHN5c2NhbGxfbmFtZS5maW5kKCd8JykKLSAgICAgICAgICAgIGlmIGFsaWFzX2RlbGltID4gMDoKLSAgICAgICAgICAgICAgICBzeXNjYWxsX25hbWUgPSBzeXNjYWxsX25hbWVbOmFsaWFzX2RlbGltXQotICAgICAgICAgICAgc3lzY2FsbF9hbGlhc2VzID0gc3RyaW5nLnNwbGl0KGFsaWFzX2xpc3QsICcsJykKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHN5c2NhbGxfYWxpYXNlcyA9IFtdCi0KLSAgICAgICAgaWYgcG9zX3JwYXJlbiA+IHBvc19scGFyZW4rMToKLSAgICAgICAgICAgIHN5c2NhbGxfcGFyYW1zID0gbGluZVtwb3NfbHBhcmVuKzE6cG9zX3JwYXJlbl0uc3BsaXQoJywnKQotICAgICAgICAgICAgcGFyYW1zICAgICAgICAgPSBzdHJpbmcuam9pbihzeXNjYWxsX3BhcmFtcywnLCcpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzeXNjYWxsX3BhcmFtcyA9IFtdCi0gICAgICAgICAgICBwYXJhbXMgICAgICAgICA9ICJ2b2lkIgotCi0gICAgICAgIHQgPSB7Ci0gICAgICAgICAgICAgICJuYW1lIiAgICA6IHN5c2NhbGxfbmFtZSwKLSAgICAgICAgICAgICAgImZ1bmMiICAgIDogc3lzY2FsbF9mdW5jLAotICAgICAgICAgICAgICAiYWxpYXNlcyIgOiBzeXNjYWxsX2FsaWFzZXMsCi0gICAgICAgICAgICAgICJwYXJhbXMiICA6IHN5c2NhbGxfcGFyYW1zLAotICAgICAgICAgICAgICAiZGVjbCIgICAgOiAiJS0xNXMgICVzICglcyk7IiAlIChyZXR1cm5fdHlwZSwgc3lzY2FsbF9mdW5jLCBwYXJhbXMpLAotICAgICAgICAgICAgICAic29ja2V0Y2FsbF9pZCIgOiBzb2NrZXRjYWxsX2lkCi0gICAgICAgIH0KLQotICAgICAgICAjIFBhcnNlIHRoZSBhcmNoaXRlY3R1cmUgbGlzdC4KLSAgICAgICAgYXJjaF9saXN0ID0gbGluZVtwb3NfcnBhcmVuKzE6XS5zdHJpcCgpCi0gICAgICAgIGlmIGFyY2hfbGlzdCA9PSAiYWxsIjoKLSAgICAgICAgICAgIGZvciBhcmNoIGluIGFsbF9hcmNoZXM6Ci0gICAgICAgICAgICAgICAgdFthcmNoXSA9IFRydWUKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGZvciBhcmNoIGluIHN0cmluZy5zcGxpdChhcmNoX2xpc3QsICcsJyk6Ci0gICAgICAgICAgICAgICAgaWYgYXJjaCBpbiBhbGxfYXJjaGVzOgotICAgICAgICAgICAgICAgICAgICB0W2FyY2hdID0gVHJ1ZQotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIEUoImludmFsaWQgc3lzY2FsbCBhcmNoaXRlY3R1cmUgJyVzJyBpbiAnJXMnIiAlIChhcmNoLCBsaW5lKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgc2VsZi5zeXNjYWxscy5hcHBlbmQodCkKLQotICAgICAgICBnbG9iYWwgdmVyYm9zZQotICAgICAgICBpZiB2ZXJib3NlID49IDI6Ci0gICAgICAgICAgICBwcmludCB0Ci0KLQotICAgIGRlZiBwYXJzZV9maWxlKHNlbGYsIGZpbGVfcGF0aCk6Ci0gICAgICAgIEQyKCJwYXJzZV9maWxlOiAlcyIgJSBmaWxlX3BhdGgpCi0gICAgICAgIGZwID0gb3BlbihmaWxlX3BhdGgpCi0gICAgICAgIGZvciBsaW5lIGluIGZwLnhyZWFkbGluZXMoKToKLSAgICAgICAgICAgIHNlbGYubGluZW5vICs9IDEKLSAgICAgICAgICAgIGxpbmUgPSBsaW5lLnN0cmlwKCkKLSAgICAgICAgICAgIGlmIG5vdCBsaW5lOiBjb250aW51ZQotICAgICAgICAgICAgaWYgbGluZVswXSA9PSAnIyc6IGNvbnRpbnVlCi0gICAgICAgICAgICBzZWxmLnBhcnNlX2xpbmUobGluZSkKLQotICAgICAgICBmcC5jbG9zZSgpCi0KLQotY2xhc3MgU3RyaW5nT3V0cHV0OgotICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgc2VsZi5saW5lID0gIiIKLQotICAgIGRlZiB3cml0ZShzZWxmLG1zZyk6Ci0gICAgICAgIHNlbGYubGluZSArPSBtc2cKLSAgICAgICAgRDIoIndyaXRlICclcyciICUgbXNnKQotCi0gICAgZGVmIGdldChzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYubGluZQpkaWZmIC0tZ2l0IGEvbGliYy90b29scy9jaGVjay1zeW1ib2xzLWdsaWJjLnB5IGIvbGliYy90b29scy9jaGVjay1zeW1ib2xzLWdsaWJjLnB5CmluZGV4IDU4YTEwZTAuLjJjMzUyYjIgMTAwNzU1Ci0tLSBhL2xpYmMvdG9vbHMvY2hlY2stc3ltYm9scy1nbGliYy5weQorKysgYi9saWJjL3Rvb2xzL2NoZWNrLXN5bWJvbHMtZ2xpYmMucHkKQEAgLTEsNjYgKzEsNzMgQEAKLSMhL3Vzci9iaW4vcHl0aG9uCi0KKyMhL3Vzci9iaW4vZW52IHB5dGhvbjIKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisjIHB5bGludDogZGlzYWJsZT1iYWQtaW5kZW50YXRpb24sYmFkLWNvbnRpbnVhdGlvbgogaW1wb3J0IGdsb2IKIGltcG9ydCBvcwogaW1wb3J0IHJlCi1pbXBvcnQgc3RyaW5nCi1pbXBvcnQgc3VicHJvY2VzcwogaW1wb3J0IHN5cwogCitpbXBvcnQgc3ltYm9scworCitvbmx5X3Vud2FudGVkID0gRmFsc2UKK2lmIGxlbihzeXMuYXJndikgPiAxOgorICBpZiBzeXMuYXJndlsxXSBpbiAoJy11JywgJy0tdW53YW50ZWQnKToKKyAgICBvbmx5X3Vud2FudGVkID0gVHJ1ZQorCiB0b29sY2hhaW4gPSBvcy5lbnZpcm9uWydBTkRST0lEX1RPT0xDSEFJTiddCiBhcmNoID0gcmUuc3ViKHInLiovbGludXgteDg2LyhbXi9dKykvLionLCByJ1wxJywgdG9vbGNoYWluKQotCi1kZWYgR2V0U3ltYm9sc0Zyb21Tbyhzb19maWxlKToKLSAgIyBFeGFtcGxlIHJlYWRlbGYgb3V0cHV0OgotICAjICAgMjY0OiAwMDAxNjIzYyAgICAgNCBGVU5DICAgIEdMT0JBTCBERUZBVUxUICAgIDggY2Fic2YKLSAgIyAgIDI2NjogMDAwMTYyNDQgICAgIDQgRlVOQyAgICBHTE9CQUwgREVGQVVMVCAgICA4IGRyZW1mCi0gICMgICAyNjc6IDAwMDE5MDE4ICAgICA0IE9CSkVDVCAgR0xPQkFMIERFRkFVTFQgICAxMSBfX2ZlX2RmbF9lbnYKLSAgIyAgIDI2ODogMDAwMDAwMDAgICAgIDAgRlVOQyAgICBHTE9CQUwgREVGQVVMVCAgVU5EIF9fYWVhYmlfZGNtcGx0Ci0KLSAgciA9IHJlLmNvbXBpbGUocicgK1xkKzogWzAtOWEtZl0rICtcZCsgKEk/RlVOQ3xPQkpFQ1QpICtcUysgK1xTKyArXGQrIChcUyspJykKLQotICBzeW1ib2xzID0gc2V0KCkKLQotICBmb3IgbGluZSBpbiBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChbJ3JlYWRlbGYnLCAnLS1keW4tc3ltcycsICctVycsIHNvX2ZpbGVdKS5zcGxpdCgnXG4nKToKLSAgICBpZiAnIEhJRERFTiAnIGluIGxpbmUgb3IgJyBVTkQgJyBpbiBsaW5lOgotICAgICAgY29udGludWUKLSAgICBtID0gci5tYXRjaChsaW5lKQotICAgIGlmIG06Ci0gICAgICBzeW1ib2wgPSBtLmdyb3VwKDIpCi0gICAgICBzeW1ib2wgPSByZS5zdWIoJ0AuKicsICcnLCBzeW1ib2wpCi0gICAgICBzeW1ib2xzLmFkZChzeW1ib2wpCi0KLSAgcmV0dXJuIHN5bWJvbHMKLQotZGVmIEdldFN5bWJvbHNGcm9tQW5kcm9pZFNvKCpmaWxlcyk6Ci0gIHN5bWJvbHMgPSBzZXQoKQotICBmb3IgZiBpbiBmaWxlczoKLSAgICBzeW1ib2xzID0gc3ltYm9scyB8IEdldFN5bWJvbHNGcm9tU28oJyVzL3N5c3RlbS9saWI2NC8lcycgJSAob3MuZW52aXJvblsnQU5EUk9JRF9QUk9EVUNUX09VVCddLCBmKSkKLSAgcmV0dXJuIHN5bWJvbHMKLQotZGVmIEdldFN5bWJvbHNGcm9tU3lzdGVtU28oKmZpbGVzKToKLSAgc3ltYm9scyA9IHNldCgpCi0gIGZvciBmIGluIGZpbGVzOgotICAgIGYgPSBnbG9iLmdsb2IoJy9saWIveDg2XzY0LWxpbnV4LWdudS8lcycgJSBmKVstMV0KLSAgICBzeW1ib2xzID0gc3ltYm9scyB8IEdldFN5bWJvbHNGcm9tU28oZikKLSAgcmV0dXJuIHN5bWJvbHMKK2lmIGFyY2ggPT0gJ2FhcmNoNjQnOgorICBhcmNoID0gJ2FybTY0JwogCiBkZWYgTWFuZ2xlR2xpYmNOYW1lVG9CaW9uaWMobmFtZSk6CiAgIGlmIG5hbWUgaW4gZ2xpYmNfdG9fYmlvbmljX25hbWVzOgogICAgIHJldHVybiBnbGliY190b19iaW9uaWNfbmFtZXNbbmFtZV0KICAgcmV0dXJuIG5hbWUKIAorZGVmIEdldE5ka0lnbm9yZWQoYXJjaCk6ICAjIHB5bGludDogZGlzYWJsZT1yZWRlZmluZWQtb3V0ZXItbmFtZQorICBpZ25vcmVkX3N5bWJvbHMgPSBzZXQoKQorICBmaWxlcyA9IGdsb2IuZ2xvYignJXMvbmRrL2J1aWxkL3Rvb2xzL3Vud2FudGVkLXN5bWJvbHMvJXMvKicgJQorICAgICAgICAgICAgICAgICAgICAob3MuZ2V0ZW52KCdBTkRST0lEX0JVSUxEX1RPUCcpLCBhcmNoKSkKKyAgZm9yIGYgaW4gZmlsZXM6CisgICAgaWdub3JlZF9zeW1ib2xzIHw9IHNldChvcGVuKGYsICdyJykucmVhZCgpLnNwbGl0bGluZXMoKSkKKyAgcmV0dXJuIGlnbm9yZWRfc3ltYm9scworCiBnbGliY190b19iaW9uaWNfbmFtZXMgPSB7CiAgICdfX3Jlc19pbml0JzogJ3Jlc19pbml0JywKICAgJ19fcmVzX21rcXVlcnknOiAncmVzX21rcXVlcnknLAogICAnX19yZXNfcXVlcnknOiAncmVzX3F1ZXJ5JywKICAgJ19fcmVzX3NlYXJjaCc6ICdyZXNfc2VhcmNoJywKKyAgJ19feHBnX2Jhc2VuYW1lJzogJ19fZ251X2Jhc2VuYW1lJywKIH0KIAotZ2xpYmMgPSBHZXRTeW1ib2xzRnJvbVN5c3RlbVNvKCdsaWJjLnNvLionLCAnbGlicnQuc28uKicsICdsaWJwdGhyZWFkLnNvLionLCAnbGlicmVzb2x2LnNvLionLCAnbGlibS5zby4qJykKLWJpb25pYyA9IEdldFN5bWJvbHNGcm9tQW5kcm9pZFNvKCdsaWJjLnNvJywgJ2xpYm0uc28nKQorZ2xpYmMgPSBzeW1ib2xzLkdldEZyb21TeXN0ZW1TbyhbCisgICAgJ2xpYmMuc28uKicsCisgICAgJ2xpYnJ0LnNvLionLAorICAgICdsaWJwdGhyZWFkLnNvLionLAorICAgICdsaWJyZXNvbHYuc28uKicsCisgICAgJ2xpYm0uc28uKicsCisgICAgJ2xpYnV0aWwuc28uKicsCitdKQogCi1nbGliYyA9IG1hcChNYW5nbGVHbGliY05hbWVUb0Jpb25pYywgZ2xpYmMpCitiaW9uaWMgPSBzeW1ib2xzLkdldEZyb21BbmRyb2lkU28oWydsaWJjLnNvJywgJ2xpYm0uc28nXSkKK3RoaXNfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGgucmVhbHBhdGgoX19maWxlX18pKQorcG9zaXggPSBzeW1ib2xzLkdldEZyb21UeHQob3MucGF0aC5qb2luKHRoaXNfZGlyLCAncG9zaXgtMjAxMy50eHQnKSkKK25ka19pZ25vcmVkID0gR2V0TmRrSWdub3JlZChhcmNoKQorCitnbGliYyA9IHNldChtYXAoTWFuZ2xlR2xpYmNOYW1lVG9CaW9uaWMsIGdsaWJjKSkKIAogIyBiaW9uaWMgaW5jbHVkZXMgdmFyaW91cyBCU0Qgc3ltYm9scyB0byBlYXNlIHBvcnRpbmcgb3RoZXIgQlNELWxpY2Vuc2VkIGNvZGUuCiBic2Rfc3R1ZmYgPSBzZXQoWwpAQCAtMTAwLDYgKzEwNywxNiBAQAogICAnX19lcnJubycsCiAgICdfX2ZlX2RmbF9lbnYnLAogICAnX19nZXRfaF9lcnJubycsCisgICdfX2ZwY2xhc3NpZnlkJywKKyAgJ19faXNmaW5pdGUnLAorICAnX19pc2Zpbml0ZWYnLAorICAnX19pc2Zpbml0ZWwnLAorICAnX19pc25vcm1hbCcsCisgICdfX2lzbm9ybWFsZicsCisgICdfX2lzbm9ybWFsbCcsCisgICdfX3NGJywKKyAgJ19fcHRocmVhZF9jbGVhbnVwX3BvcCcsCisgICdfX3B0aHJlYWRfY2xlYW51cF9wdXNoJywKIF0pCiAjIGJpb25pYyBleHBvc2VzIHZhcmlvdXMgTGludXggZmVhdHVyZXMgdGhhdCBnbGliYyBkb2Vzbid0LgogbGludXhfc3R1ZmYgPSBzZXQoWwpAQCAtMTMzLDIxICsxNTAsNTMgQEAKICAgJ21rbm9kYXQnLAogICAnc3RhdCcsCiAgICdzdGF0NjQnLAorICAnb3B0cmVzZXQnLAorICAnc2lnc2V0am1wJywKK10pCisjIFRoZXNlIGV4aXN0IGluIGdsaWJjLCBidXQgdW5kZXIgc2xpZ2h0bHkgZGlmZmVyZW50IG5hbWVzIChnZW5lcmFsbHkgb25lIGV4dHJhCisjIG9yIG9uZSBmZXdlciBfKS4gVE9ETzogY2hlY2sgYWdhaW5zdCBnbGliYyBuYW1lcy4KK2xpYnJlc29sdl9zdHVmZiA9IHNldChbCisgICdfX3Jlc19zZW5kX3NldHFob29rJywKKyAgJ19fcmVzX3NlbmRfc2V0cmhvb2snLAorICAnX3Jlc29sdl9mbHVzaF9jYWNoZV9mb3JfbmV0JywKKyAgJ19yZXNvbHZfc2V0X25hbWVzZXJ2ZXJzX2Zvcl9uZXQnLAorICAnZG5fZXhwYW5kJywKKyAgJ25zZGlzcGF0Y2gnLAorXSkKKyMgSW1wbGVtZW50YXRpb24gZGV0YWlscyB3ZSBrbm93IHdlIGV4cG9ydCAoYW5kIGNhbid0IGdldCBhd2F5IGZyb20pLgora25vd24gPSBzZXQoWworICAnX2N0eXBlXycsCisgICdfX2xpYmNfaW5pdCcsCiBdKQogCi1wcmludCAnZ2xpYmM6JwotZm9yIHN5bWJvbCBpbiBzb3J0ZWQoZ2xpYmMpOgotICBwcmludCBzeW1ib2wKK2lmIG5vdCBvbmx5X3Vud2FudGVkOgorICAjcHJpbnQgJ2dsaWJjOicKKyAgI2ZvciBzeW1ib2wgaW4gc29ydGVkKGdsaWJjKToKKyAgIyAgcHJpbnQgc3ltYm9sCisgICNwcmludAogCi1wcmludAotcHJpbnQgJ2Jpb25pYzonCi1mb3Igc3ltYm9sIGluIHNvcnRlZChiaW9uaWMpOgotICBwcmludCBzeW1ib2wKKyAgI3ByaW50ICdiaW9uaWM6JworICAjZm9yIHN5bWJvbCBpbiBzb3J0ZWQoYmlvbmljKToKKyAgIyAgcHJpbnQgc3ltYm9sCisgICNwcmludAogCi1wcmludAotcHJpbnQgJ2luIGJpb25pYyBidXQgbm90IGdsaWJjOicKLWFsbG93ZWRfc3R1ZmYgPSAoYnNkX3N0dWZmIHwgRk9SVElGWV9zdHVmZiB8IGxpbnV4X3N0dWZmIHwgbWFjcm9fc3R1ZmYgfCBzdGRfc3R1ZmYgfCB3ZWlyZF9zdHVmZikKKyAgcHJpbnQgJ2luIGdsaWJjIChidXQgbm90IHBvc2l4KSBidXQgbm90IGJpb25pYzonCisgIGZvciBzeW1ib2wgaW4gc29ydGVkKChnbGliYyAtIHBvc2l4KS5kaWZmZXJlbmNlKGJpb25pYykpOgorICAgIHByaW50IHN5bWJvbAorICBwcmludAorCisgIHByaW50ICdpbiBwb3NpeCAoYW5kIGltcGxlbWVudGVkIGluIGdsaWJjKSBidXQgbm90IGJpb25pYzonCisgIGZvciBzeW1ib2wgaW4gc29ydGVkKChwb3NpeC5pbnRlcnNlY3Rpb24oZ2xpYmMpKS5kaWZmZXJlbmNlKGJpb25pYykpOgorICAgIHByaW50IHN5bWJvbAorICBwcmludAorCisgIHByaW50ICdpbiBiaW9uaWMgYnV0IG5vdCBnbGliYzonCisKK2FsbG93ZWRfc3R1ZmYgPSAoYnNkX3N0dWZmIHwgRk9SVElGWV9zdHVmZiB8IGxpbnV4X3N0dWZmIHwgbWFjcm9fc3R1ZmYgfAorICAgICAgICAgICAgICAgICBzdGRfc3R1ZmYgfCB3ZWlyZF9zdHVmZiB8IGxpYnJlc29sdl9zdHVmZiB8IGtub3duKQogZm9yIHN5bWJvbCBpbiBzb3J0ZWQoKGJpb25pYyAtIGFsbG93ZWRfc3R1ZmYpLmRpZmZlcmVuY2UoZ2xpYmMpKToKKyAgaWYgc3ltYm9sIGluIG5ka19pZ25vcmVkOgorICAgIHN5bWJvbCArPSAnKicKICAgcHJpbnQgc3ltYm9sCiAKIHN5cy5leGl0KDApCmRpZmYgLS1naXQgYS9saWJjL3Rvb2xzL2dlbmVyYXRlLU5PVElDRS5weSBiL2xpYmMvdG9vbHMvZ2VuZXJhdGUtTk9USUNFLnB5CmluZGV4IDhjZDc1YTMuLjc5YjRlYTkgMTAwNzU1Ci0tLSBhL2xpYmMvdG9vbHMvZ2VuZXJhdGUtTk9USUNFLnB5CisrKyBiL2xpYmMvdG9vbHMvZ2VuZXJhdGUtTk9USUNFLnB5CkBAIC0xLDcgKzEsNyBAQAogIyEvdXNyL2Jpbi9weXRob24KICMgUnVuIHdpdGggZGlyZWN0b3J5IGFyZ3VtZW50cyBmcm9tIGFueSBkaXJlY3RvcnksIHdpdGggbm8gc3BlY2lhbCBzZXR1cCByZXF1aXJlZC4KICMgT3I6Ci0jIGZvciBpIGluIGxpYmMgbGliZGwgbGlibSBsaW5rZXIgbGlic3RkYysrIGxpYnRocmVhZF9kYiA7IGRvIC4vbGliYy90b29scy9nZW5lcmF0ZS1OT1RJQ0UucHkgJGkgPiAkaS9OT1RJQ0UgOyBkb25lCisjIGZvciBpIGluIGxpYmMgbGliZGwgbGlibSBsaW5rZXIgbGlic3RkYysrIDsgZG8gLi9saWJjL3Rvb2xzL2dlbmVyYXRlLU5PVElDRS5weSAkaSA+ICRpL05PVElDRSA7IGRvbmUKIAogaW1wb3J0IGZ0cGxpYgogaW1wb3J0IGhhc2hsaWIKQEAgLTEyMSw3ICsxMjEsNiBAQAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBvcGVuKHBhdGgsICdyJykucmVhZCgpLmRlY29kZSgndXRmLTgnKQogICAgICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgICAgICMgVE9ETzogdXBkYXRlIGhhc2guaCwgbWQ1LmMsIGFuZCBtZDUuaDsgdXBzdHJlYW0gaXMgcHJvYmFibHkgVVRGLTggYWxyZWFkeS4KICAgICAgICAgICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCd3YXJuaW5nOiBiYWQgVVRGLTggaW4gJXNcbicgJSBwYXRoKQogICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBvcGVuKHBhdGgsICdyJykucmVhZCgpLmRlY29kZSgnaXNvLTg4NTktMScpCiAKZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvZ2Vuc3lzY2FsbHMucHkgYi9saWJjL3Rvb2xzL2dlbnN5c2NhbGxzLnB5CmluZGV4IGU4ZWM2MzYuLjRkMGFmZTIgMTAwNzU1Ci0tLSBhL2xpYmMvdG9vbHMvZ2Vuc3lzY2FsbHMucHkKKysrIGIvbGliYy90b29scy9nZW5zeXNjYWxscy5weQpAQCAtNCwyMSArNCwyOSBAQAogIyB0aGUgaGVhZGVyIGZpbGVzIGxpc3RpbmcgYWxsIGF2YWlsYWJsZSBzeXN0ZW0gY2FsbHMsIGFuZCB0aGUKICMgbWFrZWZpbGVzIHVzZWQgdG8gYnVpbGQgYWxsIHRoZSBzdHVicy4KIAoraW1wb3J0IGF0ZXhpdAogaW1wb3J0IGNvbW1hbmRzCiBpbXBvcnQgZmlsZWNtcAogaW1wb3J0IGdsb2IKK2ltcG9ydCBsb2dnaW5nCiBpbXBvcnQgb3MucGF0aAogaW1wb3J0IHJlCiBpbXBvcnQgc2h1dGlsCiBpbXBvcnQgc3RhdAoraW1wb3J0IHN0cmluZwogaW1wb3J0IHN5cworaW1wb3J0IHRlbXBmaWxlCiAKLWZyb20gYmlvbmljX3V0aWxzIGltcG9ydCAqCiAKLWJpb25pY19saWJjX3Jvb3QgPSBvcy5lbnZpcm9uWyJBTkRST0lEX0JVSUxEX1RPUCJdICsgIi9iaW9uaWMvbGliYy8iCithbGxfYXJjaGVzID0gWyAiYXJtIiwgImFybTY0IiwgIm1pcHMiLCAibWlwczY0IiwgIng4NiIsICJ4ODZfNjQiIF0KKwogCiAjIHRlbXAgZGlyZWN0b3J5IHdoZXJlIHdlIHN0b3JlIGFsbCBpbnRlcm1lZGlhdGUgZmlsZXMKLWJpb25pY190ZW1wID0gIi90bXAvYmlvbmljX2dlbnN5c2NhbGxzLyIKK2Jpb25pY190ZW1wID0gdGVtcGZpbGUubWtkdGVtcChwcmVmaXg9ImJpb25pY19nZW5zeXNjYWxscyIpOworIyBNYWtlIHN1cmUgdGhlIGRpcmVjdG9yeSBpcyBkZWxldGVkIHdoZW4gdGhlIHNjcmlwdCBleGl0cy4KK2F0ZXhpdC5yZWdpc3RlcihzaHV0aWwucm10cmVlLCBiaW9uaWNfdGVtcCkKKworYmlvbmljX2xpYmNfcm9vdCA9IG9zLnBhdGguam9pbihvcy5lbnZpcm9uWyJBTkRST0lEX0JVSUxEX1RPUCJdLCAiYmlvbmljL2xpYmMiKQogCiB3YXJuaW5nID0gIkdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuIgogCkBAIC0zNCw5ICs0MiwxMCBAQAogCiAKIGRlZiBjcmVhdGVfZmlsZShyZWxwYXRoKToKLSAgICBkaXIgPSBvcy5wYXRoLmRpcm5hbWUoYmlvbmljX3RlbXAgKyByZWxwYXRoKQorICAgIGZ1bGxfcGF0aCA9IG9zLnBhdGguam9pbihiaW9uaWNfdGVtcCwgcmVscGF0aCkKKyAgICBkaXIgPSBvcy5wYXRoLmRpcm5hbWUoZnVsbF9wYXRoKQogICAgIG1ha2VfZGlyKGRpcikKLSAgICByZXR1cm4gb3BlbihiaW9uaWNfdGVtcCArIHJlbHBhdGgsICJ3IikKKyAgICByZXR1cm4gb3BlbihmdWxsX3BhdGgsICJ3IikKIAogCiBzeXNjYWxsX3N0dWJfaGVhZGVyID0gIi8qICIgKyB3YXJuaW5nICsgIiAqL1xuIiArIFwKQEAgLTQ3LDEyICs1Niw2IEBACiAiIiIKIAogCi1mdW5jdGlvbl9hbGlhcyA9ICIiIgotICAgIC5nbG9ibCAlKGFsaWFzKXMKLSAgICAuZXF1ICUoYWxpYXMpcywgJShmdW5jKXMKLSIiIgotCi0KICMKICMgQVJNIGFzc2VtYmxlciB0ZW1wbGF0ZXMgZm9yIGVhY2ggc3lzY2FsbCBzdHViCiAjCkBAIC0yNjUsNyArMjY4LDcgQEAKICMgVGhpcyBsZXRzIHVzIHN1cHBvcnQgcmVndWxhciBzeXN0ZW0gY2FsbHMgbGlrZSBfX05SX3dyaXRlIGFuZCBhbHNvIHdlaXJkCiAjIG9uZXMgbGlrZSBfX0FSTV9OUl9jYWNoZWZsdXNoLCB3aGVyZSB0aGUgTlIgZG9lc24ndCBjb21lIGF0IHRoZSBzdGFydC4KIGRlZiBtYWtlX19OUl9uYW1lKG5hbWUpOgotICAgIGlmIG5hbWUuc3RhcnRzd2l0aCgiX18iKToKKyAgICBpZiBuYW1lLnN0YXJ0c3dpdGgoIl9fQVJNX05SXyIpOgogICAgICAgICByZXR1cm4gbmFtZQogICAgIGVsc2U6CiAgICAgICAgIHJldHVybiAiX19OUl8lcyIgJSAobmFtZSkKQEAgLTI3NSwxMCArMjc4LDExIEBACiAgICAgIyBBZGQgYW55IGFsaWFzZXMgZm9yIHRoaXMgc3lzY2FsbC4KICAgICBhbGlhc2VzID0gc3lzY2FsbFsiYWxpYXNlcyJdCiAgICAgZm9yIGFsaWFzIGluIGFsaWFzZXM6Ci0gICAgICAgIHN0dWIgKz0gZnVuY3Rpb25fYWxpYXMgJSB7ICJmdW5jIiA6IHN5c2NhbGxbImZ1bmMiXSwgImFsaWFzIiA6IGFsaWFzIH0KKyAgICAgICAgc3R1YiArPSAiXG5BTElBU19TWU1CT0woJXMsICVzKVxuIiAlIChhbGlhcywgc3lzY2FsbFsiZnVuYyJdKQogCi0gICAgIyBVc2UgaGlkZGVuIHZpc2liaWxpdHkgZm9yIGFueSBmdW5jdGlvbnMgYmVnaW5uaW5nIHdpdGggdW5kZXJzY29yZXMuCi0gICAgaWYgcG9pbnRlcl9sZW5ndGggPT0gNjQgYW5kIHN5c2NhbGxbImZ1bmMiXS5zdGFydHN3aXRoKCJfXyIpOgorICAgICMgVXNlIGhpZGRlbiB2aXNpYmlsaXR5IG9uIExQNjQgZm9yIGFueSBmdW5jdGlvbnMgYmVnaW5uaW5nIHdpdGggdW5kZXJzY29yZXMuCisgICAgIyBGb3JjZSBoaWRkZW4gdmlzaWJpbGl0eSBmb3IgYW55IGZ1bmN0aW9ucyB3aGljaCBiZWdpbiB3aXRoIDMgdW5kZXJzY29yZXMKKyAgICBpZiAocG9pbnRlcl9sZW5ndGggPT0gNjQgYW5kIHN5c2NhbGxbImZ1bmMiXS5zdGFydHN3aXRoKCJfXyIpKSBvciBzeXNjYWxsWyJmdW5jIl0uc3RhcnRzd2l0aCgiX19fIik6CiAgICAgICAgIHN0dWIgKz0gJy5oaWRkZW4gJyArIHN5c2NhbGxbImZ1bmMiXSArICdcbicKIAogICAgIHJldHVybiBzdHViCkBAIC0zODAsNiArMzg0LDEyMCBAQAogICAgIHJldHVybiByZXN1bHQKIAogCitjbGFzcyBTeXNDYWxsc1R4dFBhcnNlcjoKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYuc3lzY2FsbHMgPSBbXQorICAgICAgICBzZWxmLmxpbmVubyAgID0gMAorCisgICAgZGVmIEUoc2VsZiwgbXNnKToKKyAgICAgICAgcHJpbnQgIiVkOiAlcyIgJSAoc2VsZi5saW5lbm8sIG1zZykKKworICAgIGRlZiBwYXJzZV9saW5lKHNlbGYsIGxpbmUpOgorICAgICAgICAiIiIgcGFyc2UgYSBzeXNjYWxsIHNwZWMgbGluZS4KKworICAgICAgICBsaW5lIHByb2Nlc3NpbmcsIGZvcm1hdCBpcworICAgICAgICAgICByZXR1cm4gdHlwZSAgICBmdW5jX25hbWVbfGFsaWFzX2xpc3RdWzpzeXNjYWxsX25hbWVbOnNvY2tldGNhbGxfaWRdXSAoIFtwYXJhbWxpc3RdICkgYXJjaGl0ZWN0dXJlX2xpc3QKKyAgICAgICAgIiIiCisgICAgICAgIHBvc19scGFyZW4gPSBsaW5lLmZpbmQoJygnKQorICAgICAgICBFICAgICAgICAgID0gc2VsZi5FCisgICAgICAgIGlmIHBvc19scGFyZW4gPCAwOgorICAgICAgICAgICAgRSgibWlzc2luZyBsZWZ0IHBhcmVudGhlc2lzIGluICclcyciICUgbGluZSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHBvc19ycGFyZW4gPSBsaW5lLnJmaW5kKCcpJykKKyAgICAgICAgaWYgcG9zX3JwYXJlbiA8IDAgb3IgcG9zX3JwYXJlbiA8PSBwb3NfbHBhcmVuOgorICAgICAgICAgICAgRSgibWlzc2luZyBvciBtaXNwbGFjZWQgcmlnaHQgcGFyZW50aGVzaXMgaW4gJyVzJyIgJSBsaW5lKQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgcmV0dXJuX3R5cGUgPSBsaW5lWzpwb3NfbHBhcmVuXS5zdHJpcCgpLnNwbGl0KCkKKyAgICAgICAgaWYgbGVuKHJldHVybl90eXBlKSA8IDI6CisgICAgICAgICAgICBFKCJtaXNzaW5nIHJldHVybiB0eXBlIGluICclcyciICUgbGluZSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHN5c2NhbGxfZnVuYyA9IHJldHVybl90eXBlWy0xXQorICAgICAgICByZXR1cm5fdHlwZSAgPSBzdHJpbmcuam9pbihyZXR1cm5fdHlwZVs6LTFdLCcgJykKKyAgICAgICAgc29ja2V0Y2FsbF9pZCA9IC0xCisKKyAgICAgICAgcG9zX2NvbG9uID0gc3lzY2FsbF9mdW5jLmZpbmQoJzonKQorICAgICAgICBpZiBwb3NfY29sb24gPCAwOgorICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBwb3NfY29sb24gPT0gMCBvciBwb3NfY29sb24rMSA+PSBsZW4oc3lzY2FsbF9mdW5jKToKKyAgICAgICAgICAgICAgICBFKCJtaXNwbGFjZWQgY29sb24gaW4gJyVzJyIgJSBsaW5lKQorICAgICAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICAgICAjIG5vdyBmaW5kIGlmIHRoZXJlIGlzIGEgc29ja2V0Y2FsbF9pZCBmb3IgYSBkaXNwYXRjaC10eXBlIHN5c2NhbGwKKyAgICAgICAgICAgICMgYWZ0ZXIgdGhlIG9wdGlvbmFsIDJuZCBjb2xvbgorICAgICAgICAgICAgcG9zX2NvbG9uMiA9IHN5c2NhbGxfZnVuYy5maW5kKCc6JywgcG9zX2NvbG9uICsgMSkKKyAgICAgICAgICAgIGlmIHBvc19jb2xvbjIgPCAwOgorICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfZnVuY1twb3NfY29sb24rMTpdCisgICAgICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzpwb3NfY29sb25dCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIHBvc19jb2xvbjIrMSA+PSBsZW4oc3lzY2FsbF9mdW5jKToKKyAgICAgICAgICAgICAgICAgICAgRSgibWlzcGxhY2VkIGNvbG9uMiBpbiAnJXMnIiAlIGxpbmUpCisgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfZnVuY1socG9zX2NvbG9uKzEpOnBvc19jb2xvbjJdCisgICAgICAgICAgICAgICAgc29ja2V0Y2FsbF9pZCA9IGludChzeXNjYWxsX2Z1bmNbcG9zX2NvbG9uMisxOl0pCisgICAgICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzpwb3NfY29sb25dCisKKyAgICAgICAgYWxpYXNfZGVsaW0gPSBzeXNjYWxsX2Z1bmMuZmluZCgnfCcpCisgICAgICAgIGlmIGFsaWFzX2RlbGltID4gMDoKKyAgICAgICAgICAgIGFsaWFzX2xpc3QgPSBzeXNjYWxsX2Z1bmNbYWxpYXNfZGVsaW0rMTpdLnN0cmlwKCkKKyAgICAgICAgICAgIHN5c2NhbGxfZnVuYyA9IHN5c2NhbGxfZnVuY1s6YWxpYXNfZGVsaW1dCisgICAgICAgICAgICBhbGlhc19kZWxpbSA9IHN5c2NhbGxfbmFtZS5maW5kKCd8JykKKyAgICAgICAgICAgIGlmIGFsaWFzX2RlbGltID4gMDoKKyAgICAgICAgICAgICAgICBzeXNjYWxsX25hbWUgPSBzeXNjYWxsX25hbWVbOmFsaWFzX2RlbGltXQorICAgICAgICAgICAgc3lzY2FsbF9hbGlhc2VzID0gc3RyaW5nLnNwbGl0KGFsaWFzX2xpc3QsICcsJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN5c2NhbGxfYWxpYXNlcyA9IFtdCisKKyAgICAgICAgaWYgcG9zX3JwYXJlbiA+IHBvc19scGFyZW4rMToKKyAgICAgICAgICAgIHN5c2NhbGxfcGFyYW1zID0gbGluZVtwb3NfbHBhcmVuKzE6cG9zX3JwYXJlbl0uc3BsaXQoJywnKQorICAgICAgICAgICAgcGFyYW1zICAgICAgICAgPSBzdHJpbmcuam9pbihzeXNjYWxsX3BhcmFtcywnLCcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzeXNjYWxsX3BhcmFtcyA9IFtdCisgICAgICAgICAgICBwYXJhbXMgICAgICAgICA9ICJ2b2lkIgorCisgICAgICAgIHQgPSB7CisgICAgICAgICAgICAgICJuYW1lIiAgICA6IHN5c2NhbGxfbmFtZSwKKyAgICAgICAgICAgICAgImZ1bmMiICAgIDogc3lzY2FsbF9mdW5jLAorICAgICAgICAgICAgICAiYWxpYXNlcyIgOiBzeXNjYWxsX2FsaWFzZXMsCisgICAgICAgICAgICAgICJwYXJhbXMiICA6IHN5c2NhbGxfcGFyYW1zLAorICAgICAgICAgICAgICAiZGVjbCIgICAgOiAiJS0xNXMgICVzICglcyk7IiAlIChyZXR1cm5fdHlwZSwgc3lzY2FsbF9mdW5jLCBwYXJhbXMpLAorICAgICAgICAgICAgICAic29ja2V0Y2FsbF9pZCIgOiBzb2NrZXRjYWxsX2lkCisgICAgICAgIH0KKworICAgICAgICAjIFBhcnNlIHRoZSBhcmNoaXRlY3R1cmUgbGlzdC4KKyAgICAgICAgYXJjaF9saXN0ID0gbGluZVtwb3NfcnBhcmVuKzE6XS5zdHJpcCgpCisgICAgICAgIGlmIGFyY2hfbGlzdCA9PSAiYWxsIjoKKyAgICAgICAgICAgIGZvciBhcmNoIGluIGFsbF9hcmNoZXM6CisgICAgICAgICAgICAgICAgdFthcmNoXSA9IFRydWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGZvciBhcmNoIGluIHN0cmluZy5zcGxpdChhcmNoX2xpc3QsICcsJyk6CisgICAgICAgICAgICAgICAgaWYgYXJjaCBpbiBhbGxfYXJjaGVzOgorICAgICAgICAgICAgICAgICAgICB0W2FyY2hdID0gVHJ1ZQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIEUoImludmFsaWQgc3lzY2FsbCBhcmNoaXRlY3R1cmUgJyVzJyBpbiAnJXMnIiAlIChhcmNoLCBsaW5lKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgc2VsZi5zeXNjYWxscy5hcHBlbmQodCkKKworICAgICAgICBsb2dnaW5nLmRlYnVnKHQpCisKKworICAgIGRlZiBwYXJzZV9maWxlKHNlbGYsIGZpbGVfcGF0aCk6CisgICAgICAgIGxvZ2dpbmcuZGVidWcoInBhcnNlX2ZpbGU6ICVzIiAlIGZpbGVfcGF0aCkKKyAgICAgICAgZnAgPSBvcGVuKGZpbGVfcGF0aCkKKyAgICAgICAgZm9yIGxpbmUgaW4gZnAueHJlYWRsaW5lcygpOgorICAgICAgICAgICAgc2VsZi5saW5lbm8gKz0gMQorICAgICAgICAgICAgbGluZSA9IGxpbmUuc3RyaXAoKQorICAgICAgICAgICAgaWYgbm90IGxpbmU6IGNvbnRpbnVlCisgICAgICAgICAgICBpZiBsaW5lWzBdID09ICcjJzogY29udGludWUKKyAgICAgICAgICAgIHNlbGYucGFyc2VfbGluZShsaW5lKQorCisgICAgICAgIGZwLmNsb3NlKCkKKworCiBjbGFzcyBTdGF0ZToKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYub2xkX3N0dWJzID0gW10KQEAgLTQzNywyMiArNTU1LDIyIEBACiAgICAgZGVmIGdlbl9nbGliY19zeXNjYWxsc19oKHNlbGYpOgogICAgICAgICAjIFRPRE86IGdlbmVyYXRlIGEgc2VwYXJhdGUgZmlsZSBmb3IgZWFjaCBhcmNoaXRlY3R1cmUsIGxpa2UgZ2xpYmMncyBiaXRzL3N5c2NhbGwuaC4KICAgICAgICAgZ2xpYmNfc3lzY2FsbHNfaF9wYXRoID0gImluY2x1ZGUvc3lzL2dsaWJjLXN5c2NhbGxzLmgiCi0gICAgICAgIEQoImdlbmVyYXRpbmcgIiArIGdsaWJjX3N5c2NhbGxzX2hfcGF0aCkKKyAgICAgICAgbG9nZ2luZy5pbmZvKCJnZW5lcmF0aW5nICIgKyBnbGliY19zeXNjYWxsc19oX3BhdGgpCiAgICAgICAgIGdsaWJjX2ZwID0gY3JlYXRlX2ZpbGUoZ2xpYmNfc3lzY2FsbHNfaF9wYXRoKQogICAgICAgICBnbGliY19mcC53cml0ZSgiLyogJXMgKi9cbiIgJSB3YXJuaW5nKQogICAgICAgICBnbGliY19mcC53cml0ZSgiI2lmbmRlZiBfQklPTklDX0dMSUJDX1NZU0NBTExTX0hfXG4iKQogICAgICAgICBnbGliY19mcC53cml0ZSgiI2RlZmluZSBfQklPTklDX0dMSUJDX1NZU0NBTExTX0hfXG4iKQogCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIjaWYgZGVmaW5lZChfX2FhcmNoNjRfXylcbiIpCi0gICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgYmlvbmljX2xpYmNfcm9vdCArICIva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdW5pc3RkLmgiKQorICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCAia2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdW5pc3RkLmgiKSkKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbGlmIGRlZmluZWQoX19hcm1fXylcbiIpCi0gICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgYmlvbmljX2xpYmNfcm9vdCArICIva2VybmVsL3VhcGkvYXNtLWFybS9hc20vdW5pc3RkLmgiKQorICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCAia2VybmVsL3VhcGkvYXNtLWFybS9hc20vdW5pc3RkLmgiKSkKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbGlmIGRlZmluZWQoX19taXBzX18pXG4iKQotICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIGJpb25pY19saWJjX3Jvb3QgKyAiL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS91bmlzdGQuaCIpCisgICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgb3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsICJrZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdW5pc3RkLmgiKSkKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbGlmIGRlZmluZWQoX19pMzg2X18pXG4iKQotICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIGJpb25pY19saWJjX3Jvb3QgKyAiL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF8zMi5oIikKKyAgICAgICAgc2VsZi5zY2FuX2xpbnV4X3VuaXN0ZF9oKGdsaWJjX2ZwLCBvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgImtlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF8zMi5oIikpCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIjZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pXG4iKQotICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIGJpb25pY19saWJjX3Jvb3QgKyAiL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF82NC5oIikKKyAgICAgICAgc2VsZi5zY2FuX2xpbnV4X3VuaXN0ZF9oKGdsaWJjX2ZwLCBvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgImtlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF82NC5oIikpCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIjZW5kaWZcbiIpCiAKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbmRpZiAvKiBfQklPTklDX0dMSUJDX1NZU0NBTExTX0hfICovXG4iKQpAQCAtNDY2LDcgKzU4NCw3IEBACiAgICAgICAgICAgICBmb3IgYXJjaCBpbiBhbGxfYXJjaGVzOgogICAgICAgICAgICAgICAgIGlmIHN5c2NhbGwuaGFzX2tleSgiYXNtLSVzIiAlIGFyY2gpOgogICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSA9ICJhcmNoLSVzL3N5c2NhbGxzLyVzLlMiICUgKGFyY2gsIHN5c2NhbGxbImZ1bmMiXSkKLSAgICAgICAgICAgICAgICAgICAgRDIoIj4+PiBnZW5lcmF0aW5nICIgKyBmaWxlbmFtZSkKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCI+Pj4gZ2VuZXJhdGluZyAiICsgZmlsZW5hbWUpCiAgICAgICAgICAgICAgICAgICAgIGZwID0gY3JlYXRlX2ZpbGUoZmlsZW5hbWUpCiAgICAgICAgICAgICAgICAgICAgIGZwLndyaXRlKHN5c2NhbGxbImFzbS0lcyIgJSBhcmNoXSkKICAgICAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQpAQCAtNDc0LDQ4ICs1OTIsNDkgQEAKIAogCiAgICAgZGVmIHJlZ2VuZXJhdGUoc2VsZik6Ci0gICAgICAgIEQoInNjYW5uaW5nIGZvciBleGlzdGluZyBhcmNoaXRlY3R1cmUtc3BlY2lmaWMgc3R1YiBmaWxlcy4uLiIpCi0KLSAgICAgICAgYmlvbmljX2xpYmNfcm9vdF9sZW4gPSBsZW4oYmlvbmljX2xpYmNfcm9vdCkKKyAgICAgICAgbG9nZ2luZy5pbmZvKCJzY2FubmluZyBmb3IgZXhpc3RpbmcgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIHN0dWIgZmlsZXMuLi4iKQogCiAgICAgICAgIGZvciBhcmNoIGluIGFsbF9hcmNoZXM6Ci0gICAgICAgICAgICBhcmNoX3BhdGggPSBiaW9uaWNfbGliY19yb290ICsgImFyY2gtIiArIGFyY2gKLSAgICAgICAgICAgIEQoInNjYW5uaW5nICIgKyBhcmNoX3BhdGgpCi0gICAgICAgICAgICBmaWxlcyA9IGdsb2IuZ2xvYihhcmNoX3BhdGggKyAiL3N5c2NhbGxzLyouUyIpCi0gICAgICAgICAgICBmb3IgZiBpbiBmaWxlczoKLSAgICAgICAgICAgICAgICBzZWxmLm9sZF9zdHVicy5hcHBlbmQoZltiaW9uaWNfbGliY19yb290X2xlbjpdKQorICAgICAgICAgICAgYXJjaF9kaXIgPSAiYXJjaC0iICsgYXJjaAorICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCJzY2FubmluZyAiICsgb3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsIGFyY2hfZGlyKSkKKyAgICAgICAgICAgIHJlbF9wYXRoID0gb3MucGF0aC5qb2luKGFyY2hfZGlyLCAic3lzY2FsbHMiKQorICAgICAgICAgICAgZm9yIGZpbGUgaW4gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgcmVsX3BhdGgpKToKKyAgICAgICAgICAgICAgICBpZiBmaWxlLmVuZHN3aXRoKCIuUyIpOgorICAgICAgICAgICAgICAgICAgc2VsZi5vbGRfc3R1YnMuYXBwZW5kKG9zLnBhdGguam9pbihyZWxfcGF0aCwgZmlsZSkpCiAKLSAgICAgICAgRCgiZm91bmQgJWQgc3R1YiBmaWxlcyIgJSBsZW4oc2VsZi5vbGRfc3R1YnMpKQorICAgICAgICBsb2dnaW5nLmluZm8oImZvdW5kICVkIHN0dWIgZmlsZXMiICUgbGVuKHNlbGYub2xkX3N0dWJzKSkKIAogICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoYmlvbmljX3RlbXApOgotICAgICAgICAgICAgRCgiY3JlYXRpbmcgJXMuLi4iICUgYmlvbmljX3RlbXApCisgICAgICAgICAgICBsb2dnaW5nLmluZm8oImNyZWF0aW5nICVzLi4uIiAlIGJpb25pY190ZW1wKQogICAgICAgICAgICAgbWFrZV9kaXIoYmlvbmljX3RlbXApCiAKLSAgICAgICAgRCgicmUtZ2VuZXJhdGluZyBzdHVicyBhbmQgc3VwcG9ydCBmaWxlcy4uLiIpCisgICAgICAgIGxvZ2dpbmcuaW5mbygicmUtZ2VuZXJhdGluZyBzdHVicyBhbmQgc3VwcG9ydCBmaWxlcy4uLiIpCiAKICAgICAgICAgc2VsZi5nZW5fZ2xpYmNfc3lzY2FsbHNfaCgpCiAgICAgICAgIHNlbGYuZ2VuX3N5c2NhbGxfc3R1YnMoKQogCi0gICAgICAgIEQoImNvbXBhcmluZyBmaWxlcy4uLiIpCisgICAgICAgIGxvZ2dpbmcuaW5mbygiY29tcGFyaW5nIGZpbGVzLi4uIikKICAgICAgICAgYWRkcyAgICA9IFtdCiAgICAgICAgIGVkaXRzICAgPSBbXQogCiAgICAgICAgIGZvciBzdHViIGluIHNlbGYubmV3X3N0dWJzICsgc2VsZi5vdGhlcl9maWxlczoKLSAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhiaW9uaWNfbGliY19yb290ICsgc3R1Yik6CisgICAgICAgICAgICB0bXBfZmlsZSA9IG9zLnBhdGguam9pbihiaW9uaWNfdGVtcCwgc3R1YikKKyAgICAgICAgICAgIGxpYmNfZmlsZSA9IG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCBzdHViKQorICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGxpYmNfZmlsZSk6CiAgICAgICAgICAgICAgICAgIyBuZXcgZmlsZSwgZ2l0IGFkZCBpdAotICAgICAgICAgICAgICAgIEQoIm5ldyBmaWxlOiAgICAgIiArIHN0dWIpCi0gICAgICAgICAgICAgICAgYWRkcy5hcHBlbmQoYmlvbmljX2xpYmNfcm9vdCArIHN0dWIpCi0gICAgICAgICAgICAgICAgc2h1dGlsLmNvcHlmaWxlKGJpb25pY190ZW1wICsgc3R1YiwgYmlvbmljX2xpYmNfcm9vdCArIHN0dWIpCisgICAgICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCJuZXcgZmlsZTogICAgICIgKyBzdHViKQorICAgICAgICAgICAgICAgIGFkZHMuYXBwZW5kKGxpYmNfZmlsZSkKKyAgICAgICAgICAgICAgICBzaHV0aWwuY29weWZpbGUodG1wX2ZpbGUsIGxpYmNfZmlsZSkKIAotICAgICAgICAgICAgZWxpZiBub3QgZmlsZWNtcC5jbXAoYmlvbmljX3RlbXAgKyBzdHViLCBiaW9uaWNfbGliY19yb290ICsgc3R1Yik6Ci0gICAgICAgICAgICAgICAgRCgiY2hhbmdlZCBmaWxlOiAiICsgc3R1YikKKyAgICAgICAgICAgIGVsaWYgbm90IGZpbGVjbXAuY21wKHRtcF9maWxlLCBsaWJjX2ZpbGUpOgorICAgICAgICAgICAgICAgIGxvZ2dpbmcuaW5mbygiY2hhbmdlZCBmaWxlOiAiICsgc3R1YikKICAgICAgICAgICAgICAgICBlZGl0cy5hcHBlbmQoc3R1YikKIAogICAgICAgICBkZWxldGVzID0gW10KICAgICAgICAgZm9yIHN0dWIgaW4gc2VsZi5vbGRfc3R1YnM6CiAgICAgICAgICAgICBpZiBub3Qgc3R1YiBpbiBzZWxmLm5ld19zdHViczoKLSAgICAgICAgICAgICAgICBEKCJkZWxldGVkIGZpbGU6ICIgKyBzdHViKQotICAgICAgICAgICAgICAgIGRlbGV0ZXMuYXBwZW5kKGJpb25pY19saWJjX3Jvb3QgKyBzdHViKQorICAgICAgICAgICAgICAgIGxvZ2dpbmcuaW5mbygiZGVsZXRlZCBmaWxlOiAiICsgc3R1YikKKyAgICAgICAgICAgICAgICBkZWxldGVzLmFwcGVuZChvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgc3R1YikpCiAKICAgICAgICAgaWYgbm90IERSWV9SVU46CiAgICAgICAgICAgICBpZiBhZGRzOgpAQCAtNTI0LDE4ICs2NDMsMTkgQEAKICAgICAgICAgICAgICAgICBjb21tYW5kcy5nZXRvdXRwdXQoImdpdCBybSAiICsgIiAiLmpvaW4oZGVsZXRlcykpCiAgICAgICAgICAgICBpZiBlZGl0czoKICAgICAgICAgICAgICAgICBmb3IgZmlsZSBpbiBlZGl0czoKLSAgICAgICAgICAgICAgICAgICAgc2h1dGlsLmNvcHlmaWxlKGJpb25pY190ZW1wICsgZmlsZSwgYmlvbmljX2xpYmNfcm9vdCArIGZpbGUpCi0gICAgICAgICAgICAgICAgY29tbWFuZHMuZ2V0b3V0cHV0KCJnaXQgYWRkICIgKyAiICIuam9pbigoYmlvbmljX2xpYmNfcm9vdCArIGZpbGUpIGZvciBmaWxlIGluIGVkaXRzKSkKKyAgICAgICAgICAgICAgICAgICAgc2h1dGlsLmNvcHlmaWxlKG9zLnBhdGguam9pbihiaW9uaWNfdGVtcCwgZmlsZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgZmlsZSkpCisgICAgICAgICAgICAgICAgY29tbWFuZHMuZ2V0b3V0cHV0KCJnaXQgYWRkICIgKyAiICIuam9pbigob3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsIGZpbGUpKSBmb3IgZmlsZSBpbiBlZGl0cykpCiAKLSAgICAgICAgICAgIGNvbW1hbmRzLmdldG91dHB1dCgiZ2l0IGFkZCAlcyVzIiAlIChiaW9uaWNfbGliY19yb290LCJTWVNDQUxMUy5UWFQiKSkKKyAgICAgICAgICAgIGNvbW1hbmRzLmdldG91dHB1dCgiZ2l0IGFkZCAlcyIgJSAob3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsICJTWVNDQUxMUy5UWFQiKSkpCiAKICAgICAgICAgaWYgKG5vdCBhZGRzKSBhbmQgKG5vdCBkZWxldGVzKSBhbmQgKG5vdCBlZGl0cyk6Ci0gICAgICAgICAgICBEKCJubyBjaGFuZ2VzIGRldGVjdGVkISIpCisgICAgICAgICAgICBsb2dnaW5nLmluZm8oIm5vIGNoYW5nZXMgZGV0ZWN0ZWQhIikKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIEQoInJlYWR5IHRvIGdvISEiKQorICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCJyZWFkeSB0byBnbyEhIikKIAotRF9zZXRsZXZlbCgxKQorbG9nZ2luZy5iYXNpY0NvbmZpZyhsZXZlbD1sb2dnaW5nLklORk8pCiAKIHN0YXRlID0gU3RhdGUoKQotc3RhdGUucHJvY2Vzc19maWxlKGJpb25pY19saWJjX3Jvb3QrIlNZU0NBTExTLlRYVCIpCitzdGF0ZS5wcm9jZXNzX2ZpbGUob3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsICJTWVNDQUxMUy5UWFQiKSkKIHN0YXRlLnJlZ2VuZXJhdGUoKQpkaWZmIC0tZ2l0IGEvbGliYy90b29scy9uZGtfbWlzc2luZ19zeW1ib2xzLnB5IGIvbGliYy90b29scy9uZGtfbWlzc2luZ19zeW1ib2xzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmE5ZjkyYjEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Rvb2xzL25ka19taXNzaW5nX3N5bWJvbHMucHkKQEAgLTAsMCArMSw0OCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMgorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2ltcG9ydCBvcworaW1wb3J0IHN1YnByb2Nlc3MKK2ltcG9ydCB0ZW1wZmlsZQorCitpbXBvcnQgc3ltYm9scworCisKK2RlZiBhZGJfcHVsbChzcmMsIGRzdCk6CisgICAgd2l0aCBvcGVuKG9zLmRldm51bGwsICd3JykgYXMgZGV2bnVsbDoKKyAgICAgICAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFsnYWRiJywgJ3B1bGwnLCBzcmMsIGRzdF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9ZGV2bnVsbCwgc3RkZXJyPWRldm51bGwpCisKKworZGVmIG1haW4oKToKKyAgICB0bXBfZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgYWRiX3B1bGwoJy9zeXN0ZW0vbGliL2xpYmMuc28nLCB0bXBfZGlyKQorICAgIGFkYl9wdWxsKCcvc3lzdGVtL2xpYi9saWJtLnNvJywgdG1wX2RpcikKKworICAgIGN1cnJlbnQgPSBzeW1ib2xzLkdldEZyb21BbmRyb2lkU28oWydsaWJjLnNvJywgJ2xpYm0uc28nXSkKKyAgICBkZXZpY2UgPSAoc3ltYm9scy5HZXRGcm9tRWxmKG9zLnBhdGguam9pbih0bXBfZGlyLCAnbGliYy5zbycpKSB8CisgICAgICAgICAgICAgIHN5bWJvbHMuR2V0RnJvbUVsZihvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2xpYm0uc28nKSkpCisgICAgY29tcGF0X2xpYiA9IHN5bWJvbHMuR2V0RnJvbUFuZHJvaWRTdGF0aWNMaWIoWydsaWJjX25kay5hJ10pCisKKyAgICBtaXNzaW5nX3N5bWJvbHMgPSBjdXJyZW50IC0gZGV2aWNlCisgICAgY29tcGF0X25vdF9jb3ZlcmVkID0gbWlzc2luZ19zeW1ib2xzIC0gY29tcGF0X2xpYgorCisgICAgZm9yIHN5bWJvbCBpbiBzb3J0ZWQoY29tcGF0X25vdF9jb3ZlcmVkKToKKyAgICAgICAgcHJpbnQgc3ltYm9sCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICBtYWluKCkKZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvcG9zaXgtMjAxMy50eHQgYi9saWJjL3Rvb2xzL3Bvc2l4LTIwMTMudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY5NzJjODEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Rvb2xzL3Bvc2l4LTIwMTMudHh0CkBAIC0wLDAgKzEsMTE5MSBAQAorRkRfQ0xSCitGRF9JU1NFVAorRkRfU0VUCitGRF9aRVJPCitfRXhpdAorX2V4aXQKK19sb25nam1wCitfc2V0am1wCitfdG9sb3dlcgorX3RvdXBwZXIKK2E2NGwKK2Fib3J0CithYnMKK2FjY2VwdAorYWNjZXNzCithY29zZgorYWNvc2hmCithY29zaAorYWNvc2hsCithY29zCithY29zbAorYWlvX2NhbmNlbAorYWlvX2Vycm9yCithaW9fZnN5bmMKK2Fpb19yZWFkCithaW9fcmV0dXJuCithaW9fc3VzcGVuZAorYWlvX3dyaXRlCithbGFybQorYWxwaGFzb3J0Cithc2N0aW1lCithc2N0aW1lX3IKK2FzaW5mCithc2luaGYKK2FzaW5oCithc2luaGwKK2FzaW4KK2FzaW5sCithc3NlcnQKK2F0YW4yZgorYXRhbjIKK2F0YW4ybAorYXRhbmYKK2F0YW5oZgorYXRhbmgKK2F0YW5obAorYXRhbgorYXRhbmwKK2F0ZXhpdAorYXRvZgorYXRvaQorYXRvbAorYXRvbGwKK2Jhc2VuYW1lCitiaW5kCitic2VhcmNoCitidG93YworY2Fic2YKK2NhYnMKK2NhYnNsCitjYWNvc2YKK2NhY29zaGYKK2NhY29zaAorY2Fjb3NobAorY2Fjb3MKK2NhY29zbAorY2FsbG9jCitjYXJnZgorY2FyZworY2FyZ2wKK2Nhc2luZgorY2FzaW5oZgorY2FzaW5oCitjYXNpbmhsCitjYXNpbgorY2FzaW5sCitjYXRhbmYKK2NhdGFuaGYKK2NhdGFuaAorY2F0YW5obAorY2F0YW4KK2NhdGFubAorY2F0Y2xvc2UKK2NhdGdldHMKK2NhdG9wZW4KK2NicnRmCitjYnJ0CitjYnJ0bAorY2Nvc2YKK2Njb3NoZgorY2Nvc2gKK2Njb3NobAorY2NvcworY2Nvc2wKK2NlaWxmCitjZWlsCitjZWlsbAorY2V4cGYKK2NleHAKK2NleHBsCitjZmdldGlzcGVlZAorY2ZnZXRvc3BlZWQKK2Nmc2V0aXNwZWVkCitjZnNldG9zcGVlZAorY2hkaXIKK2NobW9kCitjaG93bgorY2ltYWdmCitjaW1hZworY2ltYWdsCitjbGVhcmVycgorY2xvY2tfZ2V0Y3B1Y2xvY2tpZAorY2xvY2tfZ2V0cmVzCitjbG9ja19nZXR0aW1lCitjbG9jaworY2xvY2tfbmFub3NsZWVwCitjbG9ja19zZXR0aW1lCitjbG9nZgorY2xvZworY2xvZ2wKK2Nsb3NlZGlyCitjbG9zZQorY2xvc2Vsb2cKK2NvbmZzdHIKK2NvbmpmCitjb25qCitjb25qbAorY29ubmVjdAorY29weXNpZ25mCitjb3B5c2lnbgorY29weXNpZ25sCitjb3NmCitjb3NoZgorY29zaAorY29zaGwKK2NvcworY29zbAorY3Bvd2YKK2Nwb3cKK2Nwb3dsCitjcHJvamYKK2Nwcm9qCitjcHJvamwKK2NyZWFsZgorY3JlYWwKK2NyZWFsbAorY3JlYXQKK2NyeXB0Citjc2luZgorY3NpbmhmCitjc2luaAorY3NpbmhsCitjc2luCitjc2lubAorY3NxcnRmCitjc3FydAorY3NxcnRsCitjdGFuZgorY3RhbmhmCitjdGFuaAorY3RhbmhsCitjdGFuCitjdGFubAorY3Rlcm1pZAorY3RpbWUKK2N0aW1lX3IKK2RheWxpZ2h0CitkYm1fY2xlYXJlcnIKK2RibV9jbG9zZQorZGJtX2RlbGV0ZQorZGJtX2Vycm9yCitkYm1fZmV0Y2gKK2RibV9maXJzdGtleQorZGJtX25leHRrZXkKK2RibV9vcGVuCitkYm1fc3RvcmUKK2RpZmZ0aW1lCitkaXJmZAorZGlybmFtZQorZGl2CitkbGNsb3NlCitkbGVycm9yCitkbG9wZW4KK2Rsc3ltCitkcHJpbnRmCitkcmFuZDQ4CitkdXAyCitkdXAKK2R1cGxvY2FsZQorZW5jcnlwdAorZW5kZ3JlbnQKK2VuZGhvc3RlbnQKK2VuZG5ldGVudAorZW5kcHJvdG9lbnQKK2VuZHB3ZW50CitlbmRzZXJ2ZW50CitlbmR1dHhlbnQKK2Vudmlyb24KK2VyYW5kNDgKK2VyZmNmCitlcmZjCitlcmZjbAorZXJmZgorZXJmCitlcmZsCitlcnJubworZXhlY2xlCitleGVjbAorZXhlY2xwCitleGVjdmUKK2V4ZWN2CitleGVjdnAKK2V4aXQKK2V4cDJmCitleHAyCitleHAybAorZXhwZgorZXhwCitleHBsCitleHBtMWYKK2V4cG0xCitleHBtMWwKK2ZhYnNmCitmYWJzCitmYWJzbAorZmFjY2Vzc2F0CitmYXR0YWNoCitmY2hkaXIKK2ZjaG1vZGF0CitmY2htb2QKK2ZjaG93bmF0CitmY2hvd24KK2ZjbG9zZQorZmNudGwKK2ZkYXRhc3luYworZmRldGFjaAorZmRpbWYKK2ZkaW0KK2ZkaW1sCitmZG9wZW5kaXIKK2Zkb3BlbgorZmVjbGVhcmV4Y2VwdAorZmVnZXRlbnYKK2ZlZ2V0ZXhjZXB0ZmxhZworZmVnZXRyb3VuZAorZmVob2xkZXhjZXB0CitmZW9mCitmZXJhaXNlZXhjZXB0CitmZXJyb3IKK2Zlc2V0ZW52CitmZXNldGV4Y2VwdGZsYWcKK2Zlc2V0cm91bmQKK2ZldGVzdGV4Y2VwdAorZmV1cGRhdGVlbnYKK2ZleGVjdmUKK2ZmbHVzaAorZmZzCitmZ2V0YworZmdldHBvcworZmdldHMKK2ZnZXR3YworZmdldHdzCitmaWxlbm8KK2Zsb2NrZmlsZQorZmxvb3JmCitmbG9vcgorZmxvb3JsCitmbWFmCitmbWEKK2ZtYWwKK2ZtYXhmCitmbWF4CitmbWF4bAorZm1lbW9wZW4KK2ZtaW5mCitmbWluCitmbWlubAorZm1vZGYKK2Ztb2QKK2Ztb2RsCitmbXRtc2cKK2ZubWF0Y2gKK2ZvcGVuCitmb3JrCitmcGF0aGNvbmYKK2ZwY2xhc3NpZnkKK2ZwcmludGYKK2ZwdXRjCitmcHV0cworZnB1dHdjCitmcHV0d3MKK2ZyZWFkCitmcmVlYWRkcmluZm8KK2ZyZWUKK2ZyZWVsb2NhbGUKK2ZyZW9wZW4KK2ZyZXhwZgorZnJleHAKK2ZyZXhwbAorZnNjYW5mCitmc2VlaworZnNlZWtvCitmc2V0cG9zCitmc3RhdGF0Citmc3RhdAorZnN0YXR2ZnMKK2ZzeW5jCitmdGVsbAorZnRlbGxvCitmdG9rCitmdHJ1bmNhdGUKK2Z0cnlsb2NrZmlsZQorZnR3CitmdW5sb2NrZmlsZQorZnV0aW1lbnMKK2Z3aWRlCitmd3ByaW50ZgorZndyaXRlCitmd3NjYW5mCitnYWlfc3RyZXJyb3IKK2dldGFkZHJpbmZvCitnZXRjaGFyCitnZXRjaGFyX3VubG9ja2VkCitnZXRjCitnZXRjX3VubG9ja2VkCitnZXRjd2QKK2dldGRhdGVfZXJyCitnZXRkYXRlCitnZXRkZWxpbQorZ2V0ZWdpZAorZ2V0ZW52CitnZXRldWlkCitnZXRnaWQKK2dldGdyZW50CitnZXRncmdpZAorZ2V0Z3JnaWRfcgorZ2V0Z3JuYW0KK2dldGdybmFtX3IKK2dldGdyb3VwcworZ2V0aG9zdGVudAorZ2V0aG9zdGlkCitnZXRob3N0bmFtZQorZ2V0aXRpbWVyCitnZXRsaW5lCitnZXRsb2dpbgorZ2V0bG9naW5fcgorZ2V0bXNnCitnZXRuYW1laW5mbworZ2V0bmV0YnlhZGRyCitnZXRuZXRieW5hbWUKK2dldG5ldGVudAorZ2V0b3B0CitnZXRwZWVybmFtZQorZ2V0cGdpZAorZ2V0cGdycAorZ2V0cGlkCitnZXRwbXNnCitnZXRwcGlkCitnZXRwcmlvcml0eQorZ2V0cHJvdG9ieW5hbWUKK2dldHByb3RvYnludW1iZXIKK2dldHByb3RvZW50CitnZXRwd2VudAorZ2V0cHduYW0KK2dldHB3bmFtX3IKK2dldHB3dWlkCitnZXRwd3VpZF9yCitnZXRybGltaXQKK2dldHJ1c2FnZQorZ2V0c2VydmJ5bmFtZQorZ2V0c2VydmJ5cG9ydAorZ2V0c2VydmVudAorZ2V0cworZ2V0c2lkCitnZXRzb2NrbmFtZQorZ2V0c29ja29wdAorZ2V0c3Vib3B0CitnZXR0aW1lb2ZkYXkKK2dldHVpZAorZ2V0dXR4ZW50CitnZXR1dHhpZAorZ2V0dXR4bGluZQorZ2V0d2NoYXIKK2dldHdjCitnbG9iZnJlZQorZ2xvYgorZ210aW1lCitnbXRpbWVfcgorZ3JhbnRwdAoraGNyZWF0ZQoraGRlc3Ryb3kKK2hzZWFyY2gKK2h0b25sCitodG9ucworaHlwb3RmCitoeXBvdAoraHlwb3RsCitpY29udl9jbG9zZQoraWNvbnYKK2ljb252X29wZW4KK2lmX2ZyZWVuYW1laW5kZXgKK2lmX2luZGV4dG9uYW1lCitpZl9uYW1laW5kZXgKK2lmX25hbWV0b2luZGV4CitpbG9nYmYKK2lsb2diCitpbG9nYmwKK2ltYXhhYnMKK2ltYXhkaXYKK2luZXRfYWRkcgoraW5ldF9udG9hCitpbmV0X250b3AKK2luZXRfcHRvbgoraW5pdHN0YXRlCitpbnNxdWUKK2lvY3RsCitpc2FsbnVtCitpc2FsbnVtX2wKK2lzYWxwaGEKK2lzYWxwaGFfbAoraXNhc2NpaQoraXNhc3RyZWFtCitpc2F0dHkKK2lzYmxhbmsKK2lzYmxhbmtfbAoraXNjbnRybAoraXNjbnRybF9sCitpc2RpZ2l0Citpc2RpZ2l0X2wKK2lzZmluaXRlCitpc2dyYXBoCitpc2dyYXBoX2wKK2lzZ3JlYXRlcmVxdWFsCitpc2dyZWF0ZXIKK2lzaW5mCitpc2xlc3NlcXVhbAoraXNsZXNzZ3JlYXRlcgoraXNsZXNzCitpc2xvd2VyCitpc2xvd2VyX2wKK2lzbmFuCitpc25vcm1hbAoraXNwcmludAoraXNwcmludF9sCitpc3B1bmN0Citpc3B1bmN0X2wKK2lzc3BhY2UKK2lzc3BhY2VfbAoraXN1bm9yZGVyZWQKK2lzdXBwZXIKK2lzdXBwZXJfbAoraXN3YWxudW0KK2lzd2FsbnVtX2wKK2lzd2FscGhhCitpc3dhbHBoYV9sCitpc3dibGFuaworaXN3YmxhbmtfbAoraXN3Y250cmwKK2lzd2NudHJsX2wKK2lzd2N0eXBlCitpc3djdHlwZV9sCitpc3dkaWdpdAoraXN3ZGlnaXRfbAoraXN3Z3JhcGgKK2lzd2dyYXBoX2wKK2lzd2xvd2VyCitpc3dsb3dlcl9sCitpc3dwcmludAoraXN3cHJpbnRfbAoraXN3cHVuY3QKK2lzd3B1bmN0X2wKK2lzd3NwYWNlCitpc3dzcGFjZV9sCitpc3d1cHBlcgoraXN3dXBwZXJfbAoraXN3eGRpZ2l0Citpc3d4ZGlnaXRfbAoraXN4ZGlnaXQKK2lzeGRpZ2l0X2wKK2owCitqMQoram4KK2pyYW5kNDgKK2tpbGwKK2tpbGxwZworbDY0YQorbGFicworbGNob3duCitsY29uZzQ4CitsZGV4cGYKK2xkZXhwCitsZGV4cGwKK2xkaXYKK2xmaW5kCitsZ2FtbWFmCitsZ2FtbWEKK2xnYW1tYWwKK2xpbmthdAorbGluaworbGlvX2xpc3RpbworbGlzdGVuCitsbGFicworbGxkaXYKK2xscmludGYKK2xscmludAorbGxyaW50bAorbGxyb3VuZGYKK2xscm91bmQKK2xscm91bmRsCitsb2NhbGVjb252Citsb2NhbHRpbWUKK2xvY2FsdGltZV9yCitsb2NrZgorbG9nMTBmCitsb2cxMAorbG9nMTBsCitsb2cxcGYKK2xvZzFwCitsb2cxcGwKK2xvZzJmCitsb2cyCitsb2cybAorbG9nYmYKK2xvZ2IKK2xvZ2JsCitsb2dmCitsb2cKK2xvZ2wKK2xvbmdqbXAKK2xyYW5kNDgKK2xyaW50ZgorbHJpbnQKK2xyaW50bAorbHJvdW5kZgorbHJvdW5kCitscm91bmRsCitsc2VhcmNoCitsc2VlaworbHN0YXQKK21hbGxvYworbWJsZW4KK21icmxlbgorbWJydG93YworbWJzaW5pdAorbWJzbnJ0b3djcworbWJzcnRvd2NzCittYnN0b3djcworbWJ0b3djCittZW1jY3B5CittZW1jaHIKK21lbWNtcAorbWVtY3B5CittZW1tb3ZlCittZW1zZXQKK21rZGlyYXQKK21rZGlyCitta2R0ZW1wCitta2ZpZm9hdAorbWtmaWZvCitta25vZGF0Citta25vZAorbWtzdGVtcAorbWt0aW1lCittbG9ja2FsbAorbWxvY2sKK21tYXAKK21vZGZmCittb2RmCittb2RmbAorbXByb3RlY3QKK21xX2Nsb3NlCittcV9nZXRhdHRyCittcV9ub3RpZnkKK21xX29wZW4KK21xX3JlY2VpdmUKK21xX3NlbmQKK21xX3NldGF0dHIKK21xX3RpbWVkcmVjZWl2ZQorbXFfdGltZWRzZW5kCittcV91bmxpbmsKK21yYW5kNDgKK21zZ2N0bAorbXNnZ2V0Cittc2dyY3YKK21zZ3NuZAorbXN5bmMKK211bmxvY2thbGwKK211bmxvY2sKK211bm1hcAorbmFuZgorbmFuCituYW5sCituYW5vc2xlZXAKK25lYXJieWludGYKK25lYXJieWludAorbmVhcmJ5aW50bAorbmV3bG9jYWxlCituZXh0YWZ0ZXJmCituZXh0YWZ0ZXIKK25leHRhZnRlcmwKK25leHR0b3dhcmRmCituZXh0dG93YXJkCituZXh0dG93YXJkbAorbmZ0dworbmljZQorbmxfbGFuZ2luZm8KK25sX2xhbmdpbmZvX2wKK25yYW5kNDgKK250b2hsCitudG9ocworb3BlbmF0CitvcGVuZGlyCitvcGVuCitvcGVubG9nCitvcGVuX21lbXN0cmVhbQorb3Blbl93bWVtc3RyZWFtCitvcHRhcmcKK29wdGVycgorb3B0aW5kCitvcHRvcHQKK3BhdGhjb25mCitwYXVzZQorcGNsb3NlCitwZXJyb3IKK3BpcGUKK3BvbGwKK3BvcGVuCitwb3NpeF9mYWR2aXNlCitwb3NpeF9mYWxsb2NhdGUKK3Bvc2l4X21hZHZpc2UKK3Bvc2l4X21lbWFsaWduCitwb3NpeF9tZW1fb2Zmc2V0Citwb3NpeF9vcGVucHQKK3Bvc2l4X3NwYXduYXR0cl9kZXN0cm95Citwb3NpeF9zcGF3bmF0dHJfZ2V0ZmxhZ3MKK3Bvc2l4X3NwYXduYXR0cl9nZXRwZ3JvdXAKK3Bvc2l4X3NwYXduYXR0cl9nZXRzY2hlZHBhcmFtCitwb3NpeF9zcGF3bmF0dHJfZ2V0c2NoZWRwb2xpY3kKK3Bvc2l4X3NwYXduYXR0cl9nZXRzaWdkZWZhdWx0Citwb3NpeF9zcGF3bmF0dHJfZ2V0c2lnbWFzaworcG9zaXhfc3Bhd25hdHRyX2luaXQKK3Bvc2l4X3NwYXduYXR0cl9zZXRmbGFncworcG9zaXhfc3Bhd25hdHRyX3NldHBncm91cAorcG9zaXhfc3Bhd25hdHRyX3NldHNjaGVkcGFyYW0KK3Bvc2l4X3NwYXduYXR0cl9zZXRzY2hlZHBvbGljeQorcG9zaXhfc3Bhd25hdHRyX3NldHNpZ2RlZmF1bHQKK3Bvc2l4X3NwYXduYXR0cl9zZXRzaWdtYXNrCitwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2xvc2UKK3Bvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRkdXAyCitwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkb3BlbgorcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2Rlc3Ryb3kKK3Bvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19pbml0Citwb3NpeF9zcGF3bgorcG9zaXhfc3Bhd25wCitwb3NpeF90cmFjZV9hdHRyX2Rlc3Ryb3kKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0Y2xvY2tyZXMKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0Y3JlYXRldGltZQorcG9zaXhfdHJhY2VfYXR0cl9nZXRnZW52ZXJzaW9uCitwb3NpeF90cmFjZV9hdHRyX2dldGluaGVyaXRlZAorcG9zaXhfdHJhY2VfYXR0cl9nZXRsb2dmdWxscG9saWN5Citwb3NpeF90cmFjZV9hdHRyX2dldGxvZ3NpemUKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0bWF4ZGF0YXNpemUKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0bWF4c3lzdGVtZXZlbnRzaXplCitwb3NpeF90cmFjZV9hdHRyX2dldG1heHVzZXJldmVudHNpemUKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0bmFtZQorcG9zaXhfdHJhY2VfYXR0cl9nZXRzdHJlYW1mdWxscG9saWN5Citwb3NpeF90cmFjZV9hdHRyX2dldHN0cmVhbXNpemUKK3Bvc2l4X3RyYWNlX2F0dHJfaW5pdAorcG9zaXhfdHJhY2VfYXR0cl9zZXRpbmhlcml0ZWQKK3Bvc2l4X3RyYWNlX2F0dHJfc2V0bG9nZnVsbHBvbGljeQorcG9zaXhfdHJhY2VfYXR0cl9zZXRsb2dzaXplCitwb3NpeF90cmFjZV9hdHRyX3NldG1heGRhdGFzaXplCitwb3NpeF90cmFjZV9hdHRyX3NldG5hbWUKK3Bvc2l4X3RyYWNlX2F0dHJfc2V0c3RyZWFtZnVsbHBvbGljeQorcG9zaXhfdHJhY2VfYXR0cl9zZXRzdHJlYW1zaXplCitwb3NpeF90cmFjZV9jbGVhcgorcG9zaXhfdHJhY2VfY2xvc2UKK3Bvc2l4X3RyYWNlX2NyZWF0ZQorcG9zaXhfdHJhY2VfY3JlYXRlX3dpdGhsb2cKK3Bvc2l4X3RyYWNlX2V2ZW50Citwb3NpeF90cmFjZV9ldmVudGlkX2VxdWFsCitwb3NpeF90cmFjZV9ldmVudGlkX2dldF9uYW1lCitwb3NpeF90cmFjZV9ldmVudGlkX29wZW4KK3Bvc2l4X3RyYWNlX2V2ZW50c2V0X2FkZAorcG9zaXhfdHJhY2VfZXZlbnRzZXRfZGVsCitwb3NpeF90cmFjZV9ldmVudHNldF9lbXB0eQorcG9zaXhfdHJhY2VfZXZlbnRzZXRfZmlsbAorcG9zaXhfdHJhY2VfZXZlbnRzZXRfaXNtZW1iZXIKK3Bvc2l4X3RyYWNlX2V2ZW50dHlwZWxpc3RfZ2V0bmV4dF9pZAorcG9zaXhfdHJhY2VfZXZlbnR0eXBlbGlzdF9yZXdpbmQKK3Bvc2l4X3RyYWNlX2ZsdXNoCitwb3NpeF90cmFjZV9nZXRfYXR0cgorcG9zaXhfdHJhY2VfZ2V0X2ZpbHRlcgorcG9zaXhfdHJhY2VfZ2V0bmV4dF9ldmVudAorcG9zaXhfdHJhY2VfZ2V0X3N0YXR1cworcG9zaXhfdHJhY2Vfb3BlbgorcG9zaXhfdHJhY2VfcmV3aW5kCitwb3NpeF90cmFjZV9zZXRfZmlsdGVyCitwb3NpeF90cmFjZV9zaHV0ZG93bgorcG9zaXhfdHJhY2Vfc3RhcnQKK3Bvc2l4X3RyYWNlX3N0b3AKK3Bvc2l4X3RyYWNlX3RpbWVkZ2V0bmV4dF9ldmVudAorcG9zaXhfdHJhY2VfdHJpZF9ldmVudGlkX29wZW4KK3Bvc2l4X3RyYWNlX3RyeWdldG5leHRfZXZlbnQKK3Bvc2l4X3R5cGVkX21lbV9nZXRfaW5mbworcG9zaXhfdHlwZWRfbWVtX29wZW4KK3Bvd2YKK3BvdworcG93bAorcHJlYWQKK3ByaW50ZgorcHNlbGVjdAorcHNpZ2luZm8KK3BzaWduYWwKK3B0aHJlYWRfYXRmb3JrCitwdGhyZWFkX2F0dHJfZGVzdHJveQorcHRocmVhZF9hdHRyX2dldGRldGFjaHN0YXRlCitwdGhyZWFkX2F0dHJfZ2V0Z3VhcmRzaXplCitwdGhyZWFkX2F0dHJfZ2V0aW5oZXJpdHNjaGVkCitwdGhyZWFkX2F0dHJfZ2V0c2NoZWRwYXJhbQorcHRocmVhZF9hdHRyX2dldHNjaGVkcG9saWN5CitwdGhyZWFkX2F0dHJfZ2V0c2NvcGUKK3B0aHJlYWRfYXR0cl9nZXRzdGFjaworcHRocmVhZF9hdHRyX2dldHN0YWNrc2l6ZQorcHRocmVhZF9hdHRyX2luaXQKK3B0aHJlYWRfYXR0cl9zZXRkZXRhY2hzdGF0ZQorcHRocmVhZF9hdHRyX3NldGd1YXJkc2l6ZQorcHRocmVhZF9hdHRyX3NldGluaGVyaXRzY2hlZAorcHRocmVhZF9hdHRyX3NldHNjaGVkcGFyYW0KK3B0aHJlYWRfYXR0cl9zZXRzY2hlZHBvbGljeQorcHRocmVhZF9hdHRyX3NldHNjb3BlCitwdGhyZWFkX2F0dHJfc2V0c3RhY2sKK3B0aHJlYWRfYXR0cl9zZXRzdGFja3NpemUKK3B0aHJlYWRfYmFycmllcmF0dHJfZGVzdHJveQorcHRocmVhZF9iYXJyaWVyYXR0cl9nZXRwc2hhcmVkCitwdGhyZWFkX2JhcnJpZXJhdHRyX2luaXQKK3B0aHJlYWRfYmFycmllcmF0dHJfc2V0cHNoYXJlZAorcHRocmVhZF9iYXJyaWVyX2Rlc3Ryb3kKK3B0aHJlYWRfYmFycmllcl9pbml0CitwdGhyZWFkX2JhcnJpZXJfd2FpdAorcHRocmVhZF9jYW5jZWwKK3B0aHJlYWRfY2xlYW51cF9wb3AKK3B0aHJlYWRfY2xlYW51cF9wdXNoCitwdGhyZWFkX2NvbmRhdHRyX2Rlc3Ryb3kKK3B0aHJlYWRfY29uZGF0dHJfZ2V0Y2xvY2sKK3B0aHJlYWRfY29uZGF0dHJfZ2V0cHNoYXJlZAorcHRocmVhZF9jb25kYXR0cl9pbml0CitwdGhyZWFkX2NvbmRhdHRyX3NldGNsb2NrCitwdGhyZWFkX2NvbmRhdHRyX3NldHBzaGFyZWQKK3B0aHJlYWRfY29uZF9icm9hZGNhc3QKK3B0aHJlYWRfY29uZF9kZXN0cm95CitwdGhyZWFkX2NvbmRfaW5pdAorcHRocmVhZF9jb25kX3NpZ25hbAorcHRocmVhZF9jb25kX3RpbWVkd2FpdAorcHRocmVhZF9jb25kX3dhaXQKK3B0aHJlYWRfY3JlYXRlCitwdGhyZWFkX2RldGFjaAorcHRocmVhZF9lcXVhbAorcHRocmVhZF9leGl0CitwdGhyZWFkX2dldGNvbmN1cnJlbmN5CitwdGhyZWFkX2dldGNwdWNsb2NraWQKK3B0aHJlYWRfZ2V0c2NoZWRwYXJhbQorcHRocmVhZF9nZXRzcGVjaWZpYworcHRocmVhZF9qb2luCitwdGhyZWFkX2tleV9jcmVhdGUKK3B0aHJlYWRfa2V5X2RlbGV0ZQorcHRocmVhZF9raWxsCitwdGhyZWFkX211dGV4YXR0cl9kZXN0cm95CitwdGhyZWFkX211dGV4YXR0cl9nZXRwcmlvY2VpbGluZworcHRocmVhZF9tdXRleGF0dHJfZ2V0cHJvdG9jb2wKK3B0aHJlYWRfbXV0ZXhhdHRyX2dldHBzaGFyZWQKK3B0aHJlYWRfbXV0ZXhhdHRyX2dldHJvYnVzdAorcHRocmVhZF9tdXRleGF0dHJfZ2V0dHlwZQorcHRocmVhZF9tdXRleGF0dHJfaW5pdAorcHRocmVhZF9tdXRleGF0dHJfc2V0cHJpb2NlaWxpbmcKK3B0aHJlYWRfbXV0ZXhhdHRyX3NldHByb3RvY29sCitwdGhyZWFkX211dGV4YXR0cl9zZXRwc2hhcmVkCitwdGhyZWFkX211dGV4YXR0cl9zZXRyb2J1c3QKK3B0aHJlYWRfbXV0ZXhhdHRyX3NldHR5cGUKK3B0aHJlYWRfbXV0ZXhfY29uc2lzdGVudAorcHRocmVhZF9tdXRleF9kZXN0cm95CitwdGhyZWFkX211dGV4X2dldHByaW9jZWlsaW5nCitwdGhyZWFkX211dGV4X2luaXQKK3B0aHJlYWRfbXV0ZXhfbG9jaworcHRocmVhZF9tdXRleF9zZXRwcmlvY2VpbGluZworcHRocmVhZF9tdXRleF90aW1lZGxvY2sKK3B0aHJlYWRfbXV0ZXhfdHJ5bG9jaworcHRocmVhZF9tdXRleF91bmxvY2sKK3B0aHJlYWRfb25jZQorcHRocmVhZF9yd2xvY2thdHRyX2Rlc3Ryb3kKK3B0aHJlYWRfcndsb2NrYXR0cl9nZXRwc2hhcmVkCitwdGhyZWFkX3J3bG9ja2F0dHJfaW5pdAorcHRocmVhZF9yd2xvY2thdHRyX3NldHBzaGFyZWQKK3B0aHJlYWRfcndsb2NrX2Rlc3Ryb3kKK3B0aHJlYWRfcndsb2NrX2luaXQKK3B0aHJlYWRfcndsb2NrX3JkbG9jaworcHRocmVhZF9yd2xvY2tfdGltZWRyZGxvY2sKK3B0aHJlYWRfcndsb2NrX3RpbWVkd3Jsb2NrCitwdGhyZWFkX3J3bG9ja190cnlyZGxvY2sKK3B0aHJlYWRfcndsb2NrX3RyeXdybG9jaworcHRocmVhZF9yd2xvY2tfdW5sb2NrCitwdGhyZWFkX3J3bG9ja193cmxvY2sKK3B0aHJlYWRfc2VsZgorcHRocmVhZF9zZXRjYW5jZWxzdGF0ZQorcHRocmVhZF9zZXRjYW5jZWx0eXBlCitwdGhyZWFkX3NldGNvbmN1cnJlbmN5CitwdGhyZWFkX3NldHNjaGVkcGFyYW0KK3B0aHJlYWRfc2V0c2NoZWRwcmlvCitwdGhyZWFkX3NldHNwZWNpZmljCitwdGhyZWFkX3NpZ21hc2sKK3B0aHJlYWRfc3Bpbl9kZXN0cm95CitwdGhyZWFkX3NwaW5faW5pdAorcHRocmVhZF9zcGluX2xvY2sKK3B0aHJlYWRfc3Bpbl90cnlsb2NrCitwdGhyZWFkX3NwaW5fdW5sb2NrCitwdGhyZWFkX3Rlc3RjYW5jZWwKK3B0c25hbWUKK3B1dGNoYXIKK3B1dGNoYXJfdW5sb2NrZWQKK3B1dGMKK3B1dGNfdW5sb2NrZWQKK3B1dGVudgorcHV0bXNnCitwdXRwbXNnCitwdXRzCitwdXR1dHhsaW5lCitwdXR3Y2hhcgorcHV0d2MKK3B3cml0ZQorcXNvcnQKK3JhaXNlCityYW5kCityYW5kb20KK3JhbmRfcgorcmVhZGRpcgorcmVhZGRpcl9yCityZWFkCityZWFkbGlua2F0CityZWFkbGluaworcmVhZHYKK3JlYWxsb2MKK3JlYWxwYXRoCityZWN2ZnJvbQorcmVjdgorcmVjdm1zZworcmVnY29tcAorcmVnZXJyb3IKK3JlZ2V4ZWMKK3JlZ2ZyZWUKK3JlbWFpbmRlcmYKK3JlbWFpbmRlcgorcmVtYWluZGVybAorcmVtb3ZlCityZW1xdWUKK3JlbXF1b2YKK3JlbXF1bworcmVtcXVvbAorcmVuYW1lYXQKK3JlbmFtZQorcmV3aW5kZGlyCityZXdpbmQKK3JpbnRmCityaW50CityaW50bAorcm1kaXIKK3JvdW5kZgorcm91bmQKK3JvdW5kbAorc2NhbGJsbmYKK3NjYWxibG4KK3NjYWxibG5sCitzY2FsYm5mCitzY2FsYm4KK3NjYWxibmwKK3NjYW5kaXIKK3NjYW5mCitzY2hlZF9nZXRwYXJhbQorc2NoZWRfZ2V0X3ByaW9yaXR5X21heAorc2NoZWRfZ2V0X3ByaW9yaXR5X21pbgorc2NoZWRfZ2V0c2NoZWR1bGVyCitzY2hlZF9ycl9nZXRfaW50ZXJ2YWwKK3NjaGVkX3NldHBhcmFtCitzY2hlZF9zZXRzY2hlZHVsZXIKK3NjaGVkX3lpZWxkCitzZWVkNDgKK3NlZWtkaXIKK3NlbGVjdAorc2VtX2Nsb3NlCitzZW1jdGwKK3NlbV9kZXN0cm95CitzZW1nZXQKK3NlbV9nZXR2YWx1ZQorc2VtX2luaXQKK3NlbV9vcGVuCitzZW1vcAorc2VtX3Bvc3QKK3NlbV90aW1lZHdhaXQKK3NlbV90cnl3YWl0CitzZW1fdW5saW5rCitzZW1fd2FpdAorc2VuZAorc2VuZG1zZworc2VuZHRvCitzZXRidWYKK3NldGVnaWQKK3NldGVudgorc2V0ZXVpZAorc2V0Z2lkCitzZXRncmVudAorc2V0aG9zdGVudAorc2V0aXRpbWVyCitzZXRqbXAKK3NldGtleQorc2V0bG9jYWxlCitzZXRsb2dtYXNrCitzZXRuZXRlbnQKK3NldHBnaWQKK3NldHBncnAKK3NldHByaW9yaXR5CitzZXRwcm90b2VudAorc2V0cHdlbnQKK3NldHJlZ2lkCitzZXRyZXVpZAorc2V0cmxpbWl0CitzZXRzZXJ2ZW50CitzZXRzaWQKK3NldHNvY2tvcHQKK3NldHN0YXRlCitzZXR1aWQKK3NldHV0eGVudAorc2V0dmJ1Zgorc2htYXQKK3NobWN0bAorc2htZHQKK3NobWdldAorc2htX29wZW4KK3NobV91bmxpbmsKK3NodXRkb3duCitzaWdhY3Rpb24KK3NpZ2FkZHNldAorc2lnYWx0c3RhY2sKK3NpZ2RlbHNldAorc2lnZW1wdHlzZXQKK3NpZ2ZpbGxzZXQKK3NpZ2hvbGQKK3NpZ2lnbm9yZQorc2lnaW50ZXJydXB0CitzaWdpc21lbWJlcgorc2lnbG9uZ2ptcAorc2lnbmFsCitzaWduYml0CitzaWduZ2FtCitzaWdwYXVzZQorc2lncGVuZGluZworc2lncHJvY21hc2sKK3NpZ3F1ZXVlCitzaWdyZWxzZQorc2lnc2V0CitzaWdzZXRqbXAKK3NpZ3N1c3BlbmQKK3NpZ3RpbWVkd2FpdAorc2lnd2FpdAorc2lnd2FpdGluZm8KK3NpbmYKK3NpbmhmCitzaW5oCitzaW5obAorc2luCitzaW5sCitzbGVlcAorc25wcmludGYKK3NvY2thdG1hcmsKK3NvY2tldAorc29ja2V0cGFpcgorc3ByaW50Zgorc3FydGYKK3NxcnQKK3NxcnRsCitzcmFuZDQ4CitzcmFuZAorc3JhbmRvbQorc3NjYW5mCitzdGF0CitzdGF0dmZzCitzdGRlcnIKK3N0ZGluCitzdGRvdXQKK3N0cGNweQorc3RwbmNweQorc3RyY2FzZWNtcAorc3RyY2FzZWNtcF9sCitzdHJjYXQKK3N0cmNocgorc3RyY21wCitzdHJjb2xsCitzdHJjb2xsX2wKK3N0cmNweQorc3RyY3Nwbgorc3RyZHVwCitzdHJlcnJvcgorc3RyZXJyb3JfbAorc3RyZXJyb3Jfcgorc3RyZm1vbgorc3RyZm1vbl9sCitzdHJmdGltZQorc3RyZnRpbWVfbAorc3RybGVuCitzdHJuY2FzZWNtcAorc3RybmNhc2VjbXBfbAorc3RybmNhdAorc3RybmNtcAorc3RybmNweQorc3RybmR1cAorc3Rybmxlbgorc3RycGJyaworc3RycHRpbWUKK3N0cnJjaHIKK3N0cnNpZ25hbAorc3Ryc3BuCitzdHJzdHIKK3N0cnRvZAorc3RydG9mCitzdHJ0b2ltYXgKK3N0cnRvaworc3RydG9rX3IKK3N0cnRvbGQKK3N0cnRvbAorc3RydG9sbAorc3RydG91bAorc3RydG91bGwKK3N0cnRvdW1heAorc3RyeGZybQorc3RyeGZybV9sCitzd2FiCitzd3ByaW50Zgorc3dzY2FuZgorc3ltbGlua2F0CitzeW1saW5rCitzeW5jCitzeXNjb25mCitzeXNsb2cKK3N5c3RlbQordGFuZgordGFuaGYKK3RhbmgKK3RhbmhsCit0YW4KK3RhbmwKK3RjZHJhaW4KK3RjZmxvdwordGNmbHVzaAordGNnZXRhdHRyCit0Y2dldHBncnAKK3RjZ2V0c2lkCit0Y3NlbmRicmVhawordGNzZXRhdHRyCit0Y3NldHBncnAKK3RkZWxldGUKK3RlbGxkaXIKK3RlbXBuYW0KK3RmaW5kCit0Z2FtbWFmCit0Z2FtbWEKK3RnYW1tYWwKK3RpbWUKK3RpbWVyX2NyZWF0ZQordGltZXJfZGVsZXRlCit0aW1lcl9nZXRvdmVycnVuCit0aW1lcl9nZXR0aW1lCit0aW1lcl9zZXR0aW1lCit0aW1lcwordGltZXpvbmUKK3RtcGZpbGUKK3RtcG5hbQordG9hc2NpaQordG9sb3dlcgordG9sb3dlcl9sCit0b3VwcGVyCit0b3VwcGVyX2wKK3Rvd2N0cmFucwordG93Y3RyYW5zX2wKK3Rvd2xvd2VyCit0b3dsb3dlcl9sCit0b3d1cHBlcgordG93dXBwZXJfbAordHJ1bmNhdGUKK3RydW5jZgordHJ1bmMKK3RydW5jbAordHNlYXJjaAordHR5bmFtZQordHR5bmFtZV9yCit0d2FsawordHpuYW1lCit0enNldAordWxpbWl0Cit1bWFzawordW5hbWUKK3VuZ2V0YwordW5nZXR3YwordW5saW5rYXQKK3VubGluawordW5sb2NrcHQKK3Vuc2V0ZW52Cit1c2Vsb2NhbGUKK3V0aW1lCit1dGltZW5zYXQKK3V0aW1lcwordmFfYXJnCit2YV9jb3B5Cit2YV9lbmQKK3ZhX3N0YXJ0Cit2ZHByaW50ZgordmZwcmludGYKK3Zmc2NhbmYKK3Zmd3ByaW50ZgordmZ3c2NhbmYKK3ZwcmludGYKK3ZzY2FuZgordnNucHJpbnRmCit2c3ByaW50ZgordnNzY2FuZgordnN3cHJpbnRmCit2c3dzY2FuZgordndwcmludGYKK3Z3c2NhbmYKK3dhaXQKK3dhaXRpZAord2FpdHBpZAord2NwY3B5Cit3Y3BuY3B5Cit3Y3J0b21iCit3Y3NjYXNlY21wCit3Y3NjYXNlY21wX2wKK3djc2NhdAord2NzY2hyCit3Y3NjbXAKK3djc2NvbGwKK3djc2NvbGxfbAord2NzY3B5Cit3Y3Njc3BuCit3Y3NkdXAKK3djc2Z0aW1lCit3Y3NsZW4KK3djc25jYXNlY21wCit3Y3NuY2FzZWNtcF9sCit3Y3NuY2F0Cit3Y3NuY21wCit3Y3NuY3B5Cit3Y3NubGVuCit3Y3NucnRvbWJzCit3Y3NwYnJrCit3Y3NyY2hyCit3Y3NydG9tYnMKK3djc3Nwbgord2Nzc3RyCit3Y3N0b2QKK3djc3RvZgord2NzdG9pbWF4Cit3Y3N0b2sKK3djc3RvbGQKK3djc3RvbAord2NzdG9sbAord2NzdG9tYnMKK3djc3RvdWwKK3djc3RvdWxsCit3Y3N0b3VtYXgKK3djc3dpZHRoCit3Y3N4ZnJtCit3Y3N4ZnJtX2wKK3djdG9iCit3Y3RvbWIKK3djdHJhbnMKK3djdHJhbnNfbAord2N0eXBlCit3Y3R5cGVfbAord2N3aWR0aAord21lbWNocgord21lbWNtcAord21lbWNweQord21lbW1vdmUKK3dtZW1zZXQKK3dvcmRleHAKK3dvcmRmcmVlCit3cHJpbnRmCit3cml0ZQord3JpdGV2Cit3c2NhbmYKK3kwCit5MQoreW4KZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvc3ltYm9scy5weSBiL2xpYmMvdG9vbHMvc3ltYm9scy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZjQwYWFkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy90b29scy9zeW1ib2xzLnB5CkBAIC0wLDAgKzEsOTAgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCitpbXBvcnQgZ2xvYgoraW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzdWJwcm9jZXNzCisKKworZGVmIEdldEZyb21UeHQodHh0X2ZpbGUpOgorICAgIHN5bWJvbHMgPSBzZXQoKQorICAgIGYgPSBvcGVuKHR4dF9maWxlLCAncicpCisgICAgZm9yIGxpbmUgaW4gZi5yZWFkKCkuc3BsaXRsaW5lcygpOgorICAgICAgICBzeW1ib2xzLmFkZChsaW5lKQorICAgIGYuY2xvc2UoKQorICAgIHJldHVybiBzeW1ib2xzCisKKworZGVmIEdldEZyb21FbGYoZWxmX2ZpbGUsIHN5bV90eXBlPSctLWR5bi1zeW1zJyk6CisgICAgIyBweWxpbnQ6IGRpc2FibGU9bGluZS10b28tbG9uZworICAgICMgRXhhbXBsZSByZWFkZWxmIG91dHB1dDoKKyAgICAjICAgICAyNjQ6IDAwMDE2MjNjICAgICAgICAgNCBGVU5DICAgICAgICBHTE9CQUwgREVGQVVMVCAgICAgICAgOCBjYWJzZgorICAgICMgICAgIDI2NjogMDAwMTYyNDQgICAgICAgICA0IEZVTkMgICAgICAgIEdMT0JBTCBERUZBVUxUICAgICAgICA4IGRyZW1mCisgICAgIyAgICAgMjY3OiAwMDAxOTAxOCAgICAgICAgIDQgT0JKRUNUICAgIEdMT0JBTCBERUZBVUxUICAgICAxMSBfX2ZlX2RmbF9lbnYKKyAgICAjICAgICAyNjg6IDAwMDAwMDAwICAgICAgICAgMCBGVU5DICAgICAgICBHTE9CQUwgREVGQVVMVCAgICBVTkQgX19hZWFiaV9kY21wbHQKKworICAgIHIgPSByZS5jb21waWxlKAorICAgICAgICByJyArXGQrOiBbMC05YS1mXSsgK1xkKyAoST9GVU5DfE9CSkVDVCkgK1xTKyArXFMrICtcZCsgKFxTKyknKQorCisgICAgc3ltYm9scyA9IHNldCgpCisKKyAgICBvdXRwdXQgPSBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChbJ3JlYWRlbGYnLCBzeW1fdHlwZSwgJy1XJywgZWxmX2ZpbGVdKQorICAgIGZvciBsaW5lIGluIG91dHB1dC5zcGxpdCgnXG4nKToKKyAgICAgICAgaWYgJyBISURERU4gJyBpbiBsaW5lIG9yICcgVU5EICcgaW4gbGluZToKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIG0gPSByLm1hdGNoKGxpbmUpCisgICAgICAgIGlmIG06CisgICAgICAgICAgICBzeW1ib2wgPSBtLmdyb3VwKDIpCisgICAgICAgICAgICBzeW1ib2wgPSByZS5zdWIoJ0AuKicsICcnLCBzeW1ib2wpCisgICAgICAgICAgICBzeW1ib2xzLmFkZChzeW1ib2wpCisKKyAgICByZXR1cm4gc3ltYm9scworCisKK2RlZiBHZXRGcm9tQW5kcm9pZFN0YXRpY0xpYihmaWxlcyk6CisgICAgb3V0X2RpciA9IG9zLmVudmlyb25bJ0FORFJPSURfUFJPRFVDVF9PVVQnXQorICAgIGxpYl9kaXIgPSBvcy5wYXRoLmpvaW4ob3V0X2RpciwgJ29iaicpCisKKyAgICByZXN1bHRzID0gc2V0KCkKKyAgICBmb3IgZiBpbiBmaWxlczoKKyAgICAgICAgc3RhdGljX2xpYl9kaXIgPSBvcy5wYXRoLmpvaW4oCisgICAgICAgICAgICBsaWJfZGlyLAorICAgICAgICAgICAgJ1NUQVRJQ19MSUJSQVJJRVMnLAorICAgICAgICAgICAgJ3t9X2ludGVybWVkaWF0ZXMnLmZvcm1hdChvcy5wYXRoLnNwbGl0ZXh0KGYpWzBdKSkKKyAgICAgICAgcmVzdWx0cyB8PSBHZXRGcm9tRWxmKAorICAgICAgICAgICAgb3MucGF0aC5qb2luKHN0YXRpY19saWJfZGlyLCBmKSwKKyAgICAgICAgICAgIHN5bV90eXBlPSctLXN5bXMnKQorICAgIHJldHVybiByZXN1bHRzCisKKworZGVmIEdldEZyb21BbmRyb2lkU28oZmlsZXMpOgorICAgIG91dF9kaXIgPSBvcy5lbnZpcm9uWydBTkRST0lEX1BST0RVQ1RfT1VUJ10KKyAgICBsaWJfZGlyID0gb3MucGF0aC5qb2luKG91dF9kaXIsICdzeXN0ZW0vbGliNjQnKQorICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKGxpYl9kaXIpOgorICAgICAgICBsaWJfZGlyID0gb3MucGF0aC5qb2luKG91dF9kaXIsICdzeXN0ZW0vbGliJykKKworICAgIHJlc3VsdHMgPSBzZXQoKQorICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICByZXN1bHRzIHw9IEdldEZyb21FbGYob3MucGF0aC5qb2luKGxpYl9kaXIsIGYpKQorICAgIHJldHVybiByZXN1bHRzCisKKworZGVmIEdldEZyb21TeXN0ZW1TbyhmaWxlcyk6CisgICAgbGliX2RpciA9ICcvbGliL3g4Nl82NC1saW51eC1nbnUnCisgICAgcmVzdWx0cyA9IHNldCgpCisgICAgZm9yIGYgaW4gZmlsZXM6CisgICAgICAgIHJlc3VsdHMgfD0gR2V0RnJvbUVsZihnbG9iLmdsb2Iob3MucGF0aC5qb2luKGxpYl9kaXIsIGYpKVstMV0pCisgICAgcmV0dXJuIHJlc3VsdHMKZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvem9uZWluZm8vdXBkYXRlLXR6ZGF0YS5weSBiL2xpYmMvdG9vbHMvem9uZWluZm8vdXBkYXRlLXR6ZGF0YS5weQppbmRleCA0ODQ3MzU2Li42OGE1ZmY1IDEwMDc1NQotLS0gYS9saWJjL3Rvb2xzL3pvbmVpbmZvL3VwZGF0ZS10emRhdGEucHkKKysrIGIvbGliYy90b29scy96b25laW5mby91cGRhdGUtdHpkYXRhLnB5CkBAIC0zMyw5ICszMywxMiBAQAogQ2hlY2tEaXJFeGlzdHMoYmlvbmljX2xpYmNfdG9vbHNfem9uZWluZm9fZGlyLCAnYmlvbmljL2xpYmMvdG9vbHMvem9uZWluZm8nKQogcHJpbnQgJ0ZvdW5kIGJpb25pYyBpbiAlcyAuLi4nICUgYmlvbmljX2RpcgogCi0jIEZpbmQgdGhlIGljdTRjIGRpcmVjdG9yeS4KLWljdV9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKCclcy8uLi9leHRlcm5hbC9pY3UvaWN1NGMvc291cmNlJyAlIGJpb25pY19kaXIpCi1DaGVja0RpckV4aXN0cyhpY3VfZGlyLCAnZXh0ZXJuYWwvaWN1L2ljdTRjL3NvdXJjZScpCisjIEZpbmQgdGhlIGljdSBkaXJlY3RvcnkuCitpY3VfZGlyID0gb3MucGF0aC5yZWFscGF0aCgnJXMvLi4vZXh0ZXJuYWwvaWN1JyAlIGJpb25pY19kaXIpCitpY3U0Y19kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKCclcy9pY3U0Yy9zb3VyY2UnICUgaWN1X2RpcikKK2ljdTRqX2RpciA9IG9zLnBhdGgucmVhbHBhdGgoJyVzL2ljdTRqJyAlIGljdV9kaXIpCitDaGVja0RpckV4aXN0cyhpY3U0Y19kaXIsICdleHRlcm5hbC9pY3UvaWN1NGMvc291cmNlJykKK0NoZWNrRGlyRXhpc3RzKGljdTRqX2RpciwgJ2V4dGVybmFsL2ljdS9pY3U0aicpCiBwcmludCAnRm91bmQgaWN1IGluICVzIC4uLicgJSBpY3VfZGlyCiAKIApAQCAtMTE2LDE0ICsxMTksMTQgQEAKIAogICAjIEJ1aWxkIHRoZSBJQ1UgdG9vbHMuCiAgIHByaW50ICdDb25maWd1cmluZyBJQ1UgdG9vbHMuLi4nCi0gIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChbJyVzL3J1bkNvbmZpZ3VyZUlDVScgJSBpY3VfZGlyLCAnTGludXgnXSkKKyAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFsnJXMvcnVuQ29uZmlndXJlSUNVJyAlIGljdTRjX2RpciwgJ0xpbnV4J10pCiAKICAgIyBSdW4gdGhlIElDVSB0b29scy4KICAgb3MuY2hkaXIoJ3Rvb2xzL3R6Y29kZScpCiAKICAgIyBUaGUgdHoyaWN1IHRvb2wgb25seSBwaWNrcyB1cCBpY3VyZWdpb25zIGFuZCBpY3V6b25lcyBpbiB0aGV5IGFyZSBpbiB0aGUgQ1dECiAgIGZvciBpY3VfZGF0YV9maWxlIGluIFsgJ2ljdXJlZ2lvbnMnLCAnaWN1em9uZXMnXToKLSAgICBpY3VfZGF0YV9maWxlX3NvdXJjZSA9ICclcy90b29scy90emNvZGUvJXMnICUgKGljdV9kaXIsIGljdV9kYXRhX2ZpbGUpCisgICAgaWN1X2RhdGFfZmlsZV9zb3VyY2UgPSAnJXMvdG9vbHMvdHpjb2RlLyVzJyAlIChpY3U0Y19kaXIsIGljdV9kYXRhX2ZpbGUpCiAgICAgaWN1X2RhdGFfZmlsZV9zeW1saW5rID0gJy4vJXMnICUgaWN1X2RhdGFfZmlsZQogICAgIG9zLnN5bWxpbmsoaWN1X2RhdGFfZmlsZV9zb3VyY2UsIGljdV9kYXRhX2ZpbGVfc3ltbGluaykKIApAQCAtMTM0LDE2ICsxMzcsMTYgQEAKICAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFsnbWFrZSddKQogCiAgICMgQ29weSB0aGUgc291cmNlIGZpbGUgdG8gaXRzIHVsdGltYXRlIGRlc3RpbmF0aW9uLgotICBpY3VfdHh0X2RhdGFfZGlyID0gJyVzL2RhdGEvbWlzYycgJSBpY3VfZGlyCisgIGljdV90eHRfZGF0YV9kaXIgPSAnJXMvZGF0YS9taXNjJyAlIGljdTRjX2RpcgogICBwcmludCAnQ29weWluZyB6b25laW5mbzY0LnR4dCB0byAlcyAuLi4nICUgaWN1X3R4dF9kYXRhX2RpcgogICBzaHV0aWwuY29weSgnem9uZWluZm82NC50eHQnLCBpY3VfdHh0X2RhdGFfZGlyKQogCiAgICMgUmVnZW5lcmF0ZSB0aGUgLmRhdCBmaWxlLgogICBvcy5jaGRpcihpY3Vfd29ya2luZ19kaXIpCi0gIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChbJ21ha2UnLCAnLWozMiddKQorICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydtYWtlJywgJ0lOQ0xVREVfVU5JX0NPUkVfREFUQT0xJywgJy1qMzInXSkKIAogICAjIENvcHkgdGhlIC5kYXQgZmlsZSB0byBpdHMgdWx0aW1hdGUgZGVzdGluYXRpb24uCi0gIGljdV9kYXRfZGF0YV9kaXIgPSAnJXMvc3R1YmRhdGEnICUgaWN1X2RpcgorICBpY3VfZGF0X2RhdGFfZGlyID0gJyVzL3N0dWJkYXRhJyAlIGljdTRjX2RpcgogICBkYXRmaWxlcyA9IGdsb2IuZ2xvYignZGF0YS9vdXQvdG1wL2ljdWR0Pz9sLmRhdCcpCiAgIGlmIGxlbihkYXRmaWxlcykgIT0gMToKICAgICBwcmludCAnRVJST1I6IFVuZXhwZWN0ZWRseSBmb3VuZCAlZCAuZGF0IGZpbGVzICglcykuIEhhbHRpbmcuJyAlIChsZW4oZGF0ZmlsZXMpLCBkYXRmaWxlcykKQEAgLTE1Miw2ICsxNTUsMjAgQEAKICAgcHJpbnQgJ0NvcHlpbmcgJXMgdG8gJXMgLi4uJyAlIChkYXRmaWxlLCBpY3VfZGF0X2RhdGFfZGlyKQogICBzaHV0aWwuY29weShkYXRmaWxlLCBpY3VfZGF0X2RhdGFfZGlyKQogCisgICMgR2VuZXJhdGUgdGhlIElDVTRKIC5qYXIgZmlsZXMKKyAgb3MuY2hkaXIoJyVzL2RhdGEnICUgaWN1X3dvcmtpbmdfZGlyKQorICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydtYWtlJywgJ2ljdTRqLWRhdGEnXSkKKworICAjIENvcHkgdGhlIElDVTRKIC5qYXIgZmlsZXMgdG8gdGhlaXIgdWx0aW1hdGUgZGVzdGluYXRpb24uCisgIGljdV9qYXJfZGF0YV9kaXIgPSAnJXMvbWFpbi9zaGFyZWQvZGF0YScgJSBpY3U0al9kaXIKKyAgamFyZmlsZXMgPSBnbG9iLmdsb2IoJ291dC9pY3U0ai8qLmphcicpCisgIGlmIGxlbihqYXJmaWxlcykgIT0gMjoKKyAgICBwcmludCAnRVJST1I6IFVuZXhwZWN0ZWRseSBmb3VuZCAlZCAuamFyIGZpbGVzICglcykuIEhhbHRpbmcuJyAlIChsZW4oamFyZmlsZXMpLCBqYXJmaWxlcykKKyAgICBzeXMuZXhpdCgxKQorICBmb3IgamFyZmlsZSBpbiBqYXJmaWxlczoKKyAgICBwcmludCAnQ29weWluZyAlcyB0byAlcyAuLi4nICUgKGphcmZpbGUsIGljdV9qYXJfZGF0YV9kaXIpCisgICAgc2h1dGlsLmNvcHkoamFyZmlsZSwgaWN1X2phcl9kYXRhX2RpcikKKwogICAjIFN3aXRjaCBiYWNrIHRvIHRoZSBvcmlnaW5hbCB3b3JraW5nIGN3ZC4KICAgb3MuY2hkaXIob3JpZ2luYWxfd29ya2luZ19kaXIpCiAKZGlmZiAtLWdpdCBhL2xpYmMvdHpjb2RlL2FzY3RpbWUuYyBiL2xpYmMvdHpjb2RlL2FzY3RpbWUuYwppbmRleCAxNTJiMGRiLi5mZWEyNGU0IDEwMDY0NAotLS0gYS9saWJjL3R6Y29kZS9hc2N0aW1lLmMKKysrIGIvbGliYy90emNvZGUvYXNjdGltZS5jCkBAIC0xMDMsNyArMTAzLDcgQEAKIAkvKgogCSoqIFdlIGF2b2lkIHVzaW5nIHNucHJpbnRmIHNpbmNlIGl0J3Mgbm90IGF2YWlsYWJsZSBvbiBhbGwgc3lzdGVtcy4KIAkqLwotCSh2b2lkKSBzcHJpbnRmKHJlc3VsdCwKKwkodm9pZCkgc25wcmludGYocmVzdWx0LCBzaXplb2YocmVzdWx0KSwgLyogQW5kcm9pZCBjaGFuZ2U6IHVzZSBzbnByaW50Zi4gKi8KIAkJKChzdHJsZW4oeWVhcikgPD0gNCkgPyBBU0NUSU1FX0ZNVCA6IEFTQ1RJTUVfRk1UX0IpLAogCQl3biwgbW4sCiAJCXRpbWVwdHItPnRtX21kYXksIHRpbWVwdHItPnRtX2hvdXIsCmRpZmYgLS1naXQgYS9saWJjL3R6Y29kZS9sb2NhbHRpbWUuYyBiL2xpYmMvdHpjb2RlL2xvY2FsdGltZS5jCmluZGV4IDI4ZDEzZjQuLmJmMDljNWUgMTAwNjQ0Ci0tLSBhL2xpYmMvdHpjb2RlL2xvY2FsdGltZS5jCisrKyBiL2xpYmMvdHpjb2RlL2xvY2FsdGltZS5jCkBAIC0xMjU3LDYgKzEyNTcsNyBAQAogICAgICAgICBsY2xwdHItPnR0aXNbMF0udHRfZ210b2ZmID0gMDsKICAgICAgICAgbGNscHRyLT50dGlzWzBdLnR0X2FiYnJpbmQgPSAwOwogICAgICAgICAodm9pZCkgc3RyY3B5KGxjbHB0ci0+Y2hhcnMsIGdtdCk7CisgICAgICAgIGxjbHB0ci0+ZGVmYXVsdHR5cGUgPSAwOwogICAgIH0gZWxzZSBpZiAodHpsb2FkKG5hbWUsIGxjbHB0ciwgVFJVRSkgIT0gMCkKICAgICAgICAgaWYgKG5hbWVbMF0gPT0gJzonIHx8IHR6cGFyc2UobmFtZSwgbGNscHRyLCBGQUxTRSkgIT0gMCkKICAgICAgICAgICAgICh2b2lkKSBnbXRsb2FkKGxjbHB0cik7CkBAIC0yMjUyLDExICsyMjUzLDE0IEBACiB9CiAKIHN0YXRpYyBpbnQgX19iaW9uaWNfb3Blbl90emRhdGEoY29uc3QgY2hhciogb2xzb25faWQsIGludCogZGF0YV9zaXplKSB7Ci0gIGludCBmZCA9IF9fYmlvbmljX29wZW5fdHpkYXRhX3BhdGgoIkFORFJPSURfUk9PVCIsICIvdXNyL3NoYXJlL3pvbmVpbmZvL3R6ZGF0YSIsIG9sc29uX2lkLCBkYXRhX3NpemUpOwotICBpZiAoZmQgPT0gLTIpIHsKLSAgICAvLyBUaGUgZmlyc3QgdGhpbmcgdGhhdCAncmVjb3ZlcnknIGRvZXMgaXMgdHJ5IHRvIGZvcm1hdCB0aGUgY3VycmVudCB0aW1lLiBJdCBkb2Vzbid0IGhhdmUKLSAgICAvLyBhbnkgdHpkYXRhIGF2YWlsYWJsZSwgc28gd2UgbXVzdCBub3QgYWJvcnQgaGVyZSAtLS0gZG9pbmcgc28gYnJlYWtzIHRoZSByZWNvdmVyeSBpbWFnZSEKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjb3VsZG4ndCBmaW5kIGFueSB0emRhdGEgd2hlbiBsb29raW5nIGZvciAlcyFcbiIsIF9fRlVOQ1RJT05fXywgb2xzb25faWQpOworICBpbnQgZmQgPSBfX2Jpb25pY19vcGVuX3R6ZGF0YV9wYXRoKCJBTkRST0lEX0RBVEEiLCAiL21pc2Mvem9uZWluZm8vY3VycmVudC90emRhdGEiLCBvbHNvbl9pZCwgZGF0YV9zaXplKTsKKyAgaWYgKGZkIDwgMCkgeworICAgIGZkID0gX19iaW9uaWNfb3Blbl90emRhdGFfcGF0aCgiQU5EUk9JRF9ST09UIiwgIi91c3Ivc2hhcmUvem9uZWluZm8vdHpkYXRhIiwgb2xzb25faWQsIGRhdGFfc2l6ZSk7CisgICAgaWYgKGZkID09IC0yKSB7CisgICAgICAvLyBUaGUgZmlyc3QgdGhpbmcgdGhhdCAncmVjb3ZlcnknIGRvZXMgaXMgdHJ5IHRvIGZvcm1hdCB0aGUgY3VycmVudCB0aW1lLiBJdCBkb2Vzbid0IGhhdmUKKyAgICAgIC8vIGFueSB0emRhdGEgYXZhaWxhYmxlLCBzbyB3ZSBtdXN0IG5vdCBhYm9ydCBoZXJlIC0tLSBkb2luZyBzbyBicmVha3MgdGhlIHJlY292ZXJ5IGltYWdlIQorICAgICAgZnByaW50ZihzdGRlcnIsICIlczogY291bGRuJ3QgZmluZCBhbnkgdHpkYXRhIHdoZW4gbG9va2luZyBmb3IgJXMhXG4iLCBfX0ZVTkNUSU9OX18sIG9sc29uX2lkKTsKKyAgICB9CiAgIH0KICAgcmV0dXJuIGZkOwogfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZS9mcmVlYnNkLWNvbXBhdC5oIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZS9mcmVlYnNkLWNvbXBhdC5oCmluZGV4IGQ1ZjE0MjUuLjdhY2RmN2MgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9hbmRyb2lkL2luY2x1ZGUvZnJlZWJzZC1jb21wYXQuaAorKysgYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2ZyZWVic2QtY29tcGF0LmgKQEAgLTE3LDcgKzE3LDcgQEAKICNpZm5kZWYgX0JJT05JQ19GUkVFQlNEX0NPTVBBVF9IX2luY2x1ZGVkCiAjZGVmaW5lIF9CSU9OSUNfRlJFRUJTRF9DT01QQVRfSF9pbmNsdWRlZAogCi0jZGVmaW5lIF9fVVNFX0JTRAorI2RlZmluZSBfQlNEX1NPVVJDRQogI2RlZmluZSBSRVBMQUNFX0dFVE9QVAogCiAvKgpAQCAtMzgsMTcgKzM4LDYgQEAKICNkZWZpbmUgX191c2xlZXAgdXNsZWVwCiAKIC8qIFJlZGlyZWN0IGludGVybmFsIEMgbGlicmFyeSBjYWxscyB0byB0aGUgcHVibGljIGZ1bmN0aW9uLiAqLwotI2RlZmluZSBfY2xvc2UgY2xvc2UKLSNkZWZpbmUgX2ZjbnRsIGZjbnRsCi0jZGVmaW5lIF9mc3RhdCBmc3RhdAogI2RlZmluZSBfbmFub3NsZWVwIG5hbm9zbGVlcAotI2RlZmluZSBfb3BlbiBvcGVuCi0KLS8qIFRoaXMgb25lIGlzIG9ubHkgbmVlZGVkIGFzIGxvbmcgYXMgd2UgaGF2ZSBhIG1peCBvZiBPcGVuQlNEIGFuZCBGcmVlQlNEIHN0ZGlvLiAqLwotI2RlZmluZSBfc3NlZWsgX19zc2VlawotCi0vKiBUaGlzIGlzIGluIEJTRCdzIDxzdGRsaWIuaD4uICovCi0jaW5jbHVkZSA8c3RkaW50Lmg+Ci1leHRlcm4gdWludDMyX3QgYXJjNHJhbmRvbV91bmlmb3JtKHVpbnQzMl90IHVwcGVyX2JvdW5kKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2xpYmNfcHJpdmF0ZS5oIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZS9saWJjX3ByaXZhdGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzZhNjQzMy4uMDAwMDAwMAotLS0gYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2xpYmNfcHJpdmF0ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpZm5kZWYgX0JJT05JQ19GUkVFQlNEX0xJQkNfUFJJVkFURV9IX2luY2x1ZGVkCi0jZGVmaW5lIF9CSU9OSUNfRlJFRUJTRF9MSUJDX1BSSVZBVEVfSF9pbmNsdWRlZAotCi0jZGVmaW5lIFNURElPX1RIUkVBRF9MT0NLKCkgICAvKiBUT0RPOiB1bnRpbCB3ZSBoYXZlIHRoZSBGcmVlQlNEIGZpbmRmcC5jLCB0aGlzIGlzIHVzZWxlc3MuICovCi0jZGVmaW5lIFNURElPX1RIUkVBRF9VTkxPQ0soKSAvKiBUT0RPOiB1bnRpbCB3ZSBoYXZlIHRoZSBGcmVlQlNEIGZpbmRmcC5jLCB0aGlzIGlzIHVzZWxlc3MuICovCi0KLSNkZWZpbmUgT1JJRU5UKGZwLCBvKSAvKiBPbmx5IG5lZWRlZCBmb3Igd2lkZS1jaGFyYWN0ZXIgc3RyZWFtIHN1cHBvcnQuICovCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS5jIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZWQ4YjJjLi4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mY2xvc2UuYworKysgL2Rldi9udWxsCkBAIC0xLDg1ICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBDaHJpcyBUb3Jlay4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQotc3RhdGljIGNoYXIgc2Njc2lkW10gPSAiQCgjKWZjbG9zZS5jCTguMSAoQmVya2VsZXkpIDYvNC85MyI7Ci0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotX19GQlNESUQoIiRGcmVlQlNEJCIpOwotCi0jaW5jbHVkZSAibmFtZXNwYWNlLmgiCi0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgInVuLW5hbWVzcGFjZS5oIgotI2luY2x1ZGUgPHNwaW5sb2NrLmg+Ci0jaW5jbHVkZSAibGliY19wcml2YXRlLmgiCi0jaW5jbHVkZSAibG9jYWwuaCIKLQotaW50Ci1mY2xvc2UoRklMRSAqZnApCi17Ci0JaW50IHI7Ci0KLQlpZiAoZnAtPl9mbGFncyA9PSAwKSB7CS8qIG5vdCBvcGVuISAqLwotCQllcnJubyA9IEVCQURGOwotCQlyZXR1cm4gKEVPRik7Ci0JfQotCUZMT0NLRklMRShmcCk7Ci0JciA9IGZwLT5fZmxhZ3MgJiBfX1NXUiA/IF9fc2ZsdXNoKGZwKSA6IDA7Ci0JaWYgKGZwLT5fY2xvc2UgIT0gTlVMTCAmJiAoKmZwLT5fY2xvc2UpKGZwLT5fY29va2llKSA8IDApCi0JCXIgPSBFT0Y7Ci0JaWYgKGZwLT5fZmxhZ3MgJiBfX1NNQkYpCi0JCWZyZWUoKGNoYXIgKilmcC0+X2JmLl9iYXNlKTsKLQlpZiAoSEFTVUIoZnApKQotCQlGUkVFVUIoZnApOwotCWlmIChIQVNMQihmcCkpCi0JCUZSRUVMQihmcCk7Ci0JZnAtPl9maWxlID0gLTE7Ci0JZnAtPl9yID0gZnAtPl93ID0gMDsJLyogTWVzcyB1cCBpZiByZWFjY2Vzc2VkLiAqLwotCi0JLyoKLQkgKiBMb2NrIHRoZSBzcGlubG9jayB1c2VkIHRvIHByb3RlY3QgX19zZ2x1ZSBsaXN0IHdhbGsgaW4KLQkgKiBfX3NmcCgpLiAgVGhlIF9fc2ZwKCkgdXNlcyBmcC0+X2ZsYWdzID09IDAgdGVzdCBhcyBhbgotCSAqIGluZGljYXRpb24gb2YgdGhlIHVudXNlZCBGSUxFLgotCSAqCi0JICogVGFraW5nIHRoZSBsb2NrIHByZXZlbnRzIHBvc3NpYmxlIGNvbXBpbGVyIG9yIHByb2Nlc3NvcgotCSAqIHJlb3JkZXJpbmcgb2YgdGhlIHdyaXRlcyBwZXJmb3JtZWQgYmVmb3JlIHRoZSBmaW5hbCBfZmxhZ3MKLQkgKiBjbGVhbnVwLCBtYWtpbmcgc3VyZSB0aGF0IHdlIGFyZSBkb25lIHdpdGggdGhlIEZJTEUgYmVmb3JlCi0JICogaXQgaXMgY29uc2lkZXJlZCBhdmFpbGFibGUuCi0JICovCi0JU1RESU9fVEhSRUFEX0xPQ0soKTsKLQlmcC0+X2ZsYWdzID0gMDsJCS8qIFJlbGVhc2UgdGhpcyBGSUxFIGZvciByZXVzZS4gKi8KLQlTVERJT19USFJFQURfVU5MT0NLKCk7Ci0JRlVOTE9DS0ZJTEUoZnApOwotCXJldHVybiAocik7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mbGFncy5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxODc4YzJmLi4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mbGFncy5jCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBDaHJpcyBUb3Jlay4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQotc3RhdGljIGNoYXIgc2Njc2lkW10gPSAiQCgjKWZsYWdzLmMJOC4xIChCZXJrZWxleSkgNi80LzkzIjsKLSNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci1fX0ZCU0RJRCgiJEZyZWVCU0QkIik7Ci0KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZmlsZS5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLQotI2luY2x1ZGUgImxvY2FsLmgiCi0KLS8qCi0gKiBSZXR1cm4gdGhlIChzdGRpbykgZmxhZ3MgZm9yIGEgZ2l2ZW4gbW9kZS4gIFN0b3JlIHRoZSBmbGFncwotICogdG8gYmUgcGFzc2VkIHRvIGFuIF9vcGVuKCkgc3lzY2FsbCB0aHJvdWdoICpvcHRyLgotICogUmV0dXJuIDAgb24gZXJyb3IuCi0gKi8KLWludAotX19zZmxhZ3MoY29uc3QgY2hhciAqbW9kZSwgaW50ICpvcHRyKQotewotCWludCByZXQsIG0sIG87Ci0KLQlzd2l0Y2ggKCptb2RlKyspIHsKLQotCWNhc2UgJ3InOgkvKiBvcGVuIGZvciByZWFkaW5nICovCi0JCXJldCA9IF9fU1JEOwotCQltID0gT19SRE9OTFk7Ci0JCW8gPSAwOwotCQlicmVhazsKLQotCWNhc2UgJ3cnOgkvKiBvcGVuIGZvciB3cml0aW5nICovCi0JCXJldCA9IF9fU1dSOwotCQltID0gT19XUk9OTFk7Ci0JCW8gPSBPX0NSRUFUIHwgT19UUlVOQzsKLQkJYnJlYWs7Ci0KLQljYXNlICdhJzoJLyogb3BlbiBmb3IgYXBwZW5kaW5nICovCi0JCXJldCA9IF9fU1dSOwotCQltID0gT19XUk9OTFk7Ci0JCW8gPSBPX0NSRUFUIHwgT19BUFBFTkQ7Ci0JCWJyZWFrOwotCi0JZGVmYXVsdDoJLyogaWxsZWdhbCBtb2RlICovCi0JCWVycm5vID0gRUlOVkFMOwotCQlyZXR1cm4gKDApOwotCX0KLQotCS8qICdiJyAoYmluYXJ5KSBpcyBpZ25vcmVkICovCi0JaWYgKCptb2RlID09ICdiJykKLQkJbW9kZSsrOwotCi0JLyogW3J3YV1bYl1cKyBtZWFucyByZWFkIGFuZCB3cml0ZSAqLwotCWlmICgqbW9kZSA9PSAnKycpIHsKLQkJbW9kZSsrOwotCQlyZXQgPSBfX1NSVzsKLQkJbSA9IE9fUkRXUjsKLQl9Ci0KLQkvKiAnYicgKGJpbmFyeSkgY2FuIGFwcGVhciBoZXJlLCB0b28gLS0gYW5kIGlzIGlnbm9yZWQgYWdhaW4gKi8KLQlpZiAoKm1vZGUgPT0gJ2InKQotCQltb2RlKys7Ci0KLQkvKiAneCcgbWVhbnMgZXhjbHVzaXZlIChmYWlsIGlmIHRoZSBmaWxlIGV4aXN0cykgKi8KLQlpZiAoKm1vZGUgPT0gJ3gnKSB7Ci0JCW1vZGUrKzsKLQkJaWYgKG0gPT0gT19SRE9OTFkpIHsKLQkJCWVycm5vID0gRUlOVkFMOwotCQkJcmV0dXJuICgwKTsKLQkJfQotCQlvIHw9IE9fRVhDTDsKLQl9Ci0KLQkvKiBzZXQgY2xvc2Utb24tZXhlYyAqLwotCWlmICgqbW9kZSA9PSAnZScpCi0JCW8gfD0gT19DTE9FWEVDOwotCi0JKm9wdHIgPSBtIHwgbzsKLQlyZXR1cm4gKHJldCk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZm9wZW4uYyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMDhlMzM2Li4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jCisrKyAvZGV2L251bGwKQEAgLTEsOTcgKzAsMCBAQAotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIENocmlzIFRvcmVrLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCi1zdGF0aWMgY2hhciBzY2NzaWRbXSA9ICJAKCMpZm9wZW4uYwk4LjEgKEJlcmtlbGV5KSA2LzQvOTMiOwotI2VuZGlmIC8qIExJQkNfU0NDUyBhbmQgbm90IGxpbnQgKi8KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLV9fRkJTRElEKCIkRnJlZUJTRCQiKTsKLQotI2luY2x1ZGUgIm5hbWVzcGFjZS5oIgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9zdGF0Lmg+Ci0jaW5jbHVkZSA8ZmNudGwuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8bGltaXRzLmg+Ci0jaW5jbHVkZSAidW4tbmFtZXNwYWNlLmgiCi0KLSNpbmNsdWRlICJsb2NhbC5oIgotCi1GSUxFICoKLWZvcGVuKGNvbnN0IGNoYXIgKiBfX3Jlc3RyaWN0IGZpbGUsIGNvbnN0IGNoYXIgKiBfX3Jlc3RyaWN0IG1vZGUpCi17Ci0JRklMRSAqZnA7Ci0JaW50IGY7Ci0JaW50IGZsYWdzLCBvZmxhZ3M7Ci0KLQlpZiAoKGZsYWdzID0gX19zZmxhZ3MobW9kZSwgJm9mbGFncykpID09IDApCi0JCXJldHVybiAoTlVMTCk7Ci0JaWYgKChmcCA9IF9fc2ZwKCkpID09IE5VTEwpCi0JCXJldHVybiAoTlVMTCk7Ci0JaWYgKChmID0gX29wZW4oZmlsZSwgb2ZsYWdzLCBERUZGSUxFTU9ERSkpIDwgMCkgewotCQlmcC0+X2ZsYWdzID0gMDsJCQkvKiByZWxlYXNlICovCi0JCXJldHVybiAoTlVMTCk7Ci0JfQotCS8qCi0JICogRmlsZSBkZXNjcmlwdG9ycyBhcmUgYSBmdWxsIGludCwgYnV0IF9maWxlIGlzIG9ubHkgYSBzaG9ydC4KLQkgKiBJZiB3ZSBnZXQgYSB2YWxpZCBmaWxlIGRlc2NyaXB0b3IgdGhhdCBpcyBncmVhdGVyIHRoYW4KLQkgKiBTSFJUX01BWCwgdGhlbiB0aGUgZmQgd2lsbCBnZXQgc2lnbi1leHRlbmRlZCBpbnRvIGFuCi0JICogaW52YWxpZCBmaWxlIGRlc2NyaXB0b3IuICBIYW5kbGUgdGhpcyBjYXNlIGJ5IGZhaWxpbmcgdGhlCi0JICogb3Blbi4KLQkgKi8KLQlpZiAoZiA+IFNIUlRfTUFYKSB7Ci0JCWZwLT5fZmxhZ3MgPSAwOwkJCS8qIHJlbGVhc2UgKi8KLQkJX2Nsb3NlKGYpOwotCQllcnJubyA9IEVNRklMRTsKLQkJcmV0dXJuIChOVUxMKTsKLQl9Ci0JZnAtPl9maWxlID0gZjsKLQlmcC0+X2ZsYWdzID0gZmxhZ3M7Ci0JZnAtPl9jb29raWUgPSBmcDsKLQlmcC0+X3JlYWQgPSBfX3NyZWFkOwotCWZwLT5fd3JpdGUgPSBfX3N3cml0ZTsKLQlmcC0+X3NlZWsgPSBfX3NzZWVrOwotCWZwLT5fY2xvc2UgPSBfX3NjbG9zZTsKLQkvKgotCSAqIFdoZW4gb3BlbmluZyBpbiBhcHBlbmQgbW9kZSwgZXZlbiB0aG91Z2ggd2UgdXNlIE9fQVBQRU5ELAotCSAqIHdlIG5lZWQgdG8gc2VlayB0byB0aGUgZW5kIHNvIHRoYXQgZnRlbGwoKSBnZXRzIHRoZSByaWdodAotCSAqIGFuc3dlci4gIElmIHRoZSB1c2VyIHRoZW4gYWx0ZXJzIHRoZSBzZWVrIHBvaW50ZXIsIG9yCi0JICogdGhlIGZpbGUgZXh0ZW5kcywgdGhpcyB3aWxsIGZhaWwsIGJ1dCB0aGVyZSBpcyBub3QgbXVjaAotCSAqIHdlIGNhbiBkbyBhYm91dCB0aGlzLiAgKFdlIGNvdWxkIHNldCBfX1NBUFAgYW5kIGNoZWNrIGluCi0JICogZnNlZWsgYW5kIGZ0ZWxsLikKLQkgKi8KLQlpZiAob2ZsYWdzICYgT19BUFBFTkQpCi0JCSh2b2lkKV9zc2VlayhmcCwgKGZwb3NfdCkwLCBTRUVLX0VORCk7Ci0JcmV0dXJuIChmcCk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL2dldG9wdF9sb25nLmMgYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL2dldG9wdF9sb25nLmMKaW5kZXggOWY3ZjZkNS4uOTUzNGEyYSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9nZXRvcHRfbG9uZy5jCisrKyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvZ2V0b3B0X2xvbmcuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBnZXRvcHRfbG9uZy5jLHYgMS4yMiAyMDA2LzEwLzA0IDIxOjI5OjA0IGptYyBFeHAgJAkqLworLyoJJE9wZW5CU0Q6IGdldG9wdF9sb25nLmMsdiAxLjI2IDIwMTMvMDYvMDggMjI6NDc6NTYgbWlsbGVydCBFeHAgJAkqLwogLyoJJE5ldEJTRDogZ2V0b3B0X2xvbmcuYyx2IDEuMTUgMjAwMi8wMS8zMSAyMjo0Mzo0MCB0diBFeHAgJAkqLwogCiAvKgpAQCAtMjQ4LDcgKzI0OCw3IEBACiAJCWlmIChzaG9ydF90b28gJiYgY3VycmVudF9hcmd2X2xlbiA9PSAxKQogCQkJY29udGludWU7CiAKLQkJaWYgKG1hdGNoID09IC0xKSAgICAgICAgLyogZmlyc3QgcGFydGlhbCBtYXRjaCAqLworCQlpZiAobWF0Y2ggPT0gLTEpCS8qIGZpcnN0IHBhcnRpYWwgbWF0Y2ggKi8KIAkJCW1hdGNoID0gaTsKIAkJZWxzZSBpZiAoKGZsYWdzICYgRkxBR19MT05HT05MWSkgfHwKIAkJCSBsb25nX29wdGlvbnNbaV0uaGFzX2FyZyAhPQpAQCAtMzU5LDM3ICszNTksMzEgQEAKIHsKIAljaGFyICpvbGk7CQkJCS8qIG9wdGlvbiBsZXR0ZXIgbGlzdCBpbmRleCAqLwogCWludCBvcHRjaGFyLCBzaG9ydF90b287Ci0JaW50IHBvc2l4bHlfY29ycmVjdDsJLyogbm8gc3RhdGljLCBjYW4gYmUgY2hhbmdlZCBvbiB0aGUgZmx5ICovCisJc3RhdGljIGludCBwb3NpeGx5X2NvcnJlY3QgPSAtMTsKIAogCWlmIChvcHRpb25zID09IE5VTEwpCiAJCXJldHVybiAoLTEpOwogCiAJLyoKLQkgKiBEaXNhYmxlIEdOVSBleHRlbnNpb25zIGlmIFBPU0lYTFlfQ09SUkVDVCBpcyBzZXQgb3Igb3B0aW9ucwotCSAqIHN0cmluZyBiZWdpbnMgd2l0aCBhICcrJy4KLQkgKi8KLQlwb3NpeGx5X2NvcnJlY3QgPSAoZ2V0ZW52KCJQT1NJWExZX0NPUlJFQ1QiKSAhPSBOVUxMKTsKLSNpZmRlZiBHTlVfQ09NUEFUSUJMRQotCWlmICgqb3B0aW9ucyA9PSAnLScpCi0JCWZsYWdzIHw9IEZMQUdfQUxMQVJHUzsKLQllbHNlIGlmIChwb3NpeGx5X2NvcnJlY3QgfHwgKm9wdGlvbnMgPT0gJysnKQotCQlmbGFncyAmPSB+RkxBR19QRVJNVVRFOwotI2Vsc2UKLQlpZiAocG9zaXhseV9jb3JyZWN0IHx8ICpvcHRpb25zID09ICcrJykKLQkJZmxhZ3MgJj0gfkZMQUdfUEVSTVVURTsKLQllbHNlIGlmICgqb3B0aW9ucyA9PSAnLScpCi0JCWZsYWdzIHw9IEZMQUdfQUxMQVJHUzsKLSNlbmRpZgotCWlmICgqb3B0aW9ucyA9PSAnKycgfHwgKm9wdGlvbnMgPT0gJy0nKQotCQlvcHRpb25zKys7Ci0KLQkvKgogCSAqIFhYWCBTb21lIEdOVSBwcm9ncmFtcyAobGlrZSBjdnMpIHNldCBvcHRpbmQgdG8gMCBpbnN0ZWFkIG9mCiAJICogWFhYIHVzaW5nIG9wdHJlc2V0LiAgV29yayBhcm91bmQgdGhpcyBicmFpbmRhbWFnZS4KIAkgKi8KIAlpZiAob3B0aW5kID09IDApCiAJCW9wdGluZCA9IG9wdHJlc2V0ID0gMTsKIAorCS8qCisJICogRGlzYWJsZSBHTlUgZXh0ZW5zaW9ucyBpZiBQT1NJWExZX0NPUlJFQ1QgaXMgc2V0IG9yIG9wdGlvbnMKKwkgKiBzdHJpbmcgYmVnaW5zIHdpdGggYSAnKycuCisJICovCisJaWYgKHBvc2l4bHlfY29ycmVjdCA9PSAtMSB8fCBvcHRyZXNldCkKKwkJcG9zaXhseV9jb3JyZWN0ID0gKGdldGVudigiUE9TSVhMWV9DT1JSRUNUIikgIT0gTlVMTCk7CisJaWYgKCpvcHRpb25zID09ICctJykKKwkJZmxhZ3MgfD0gRkxBR19BTExBUkdTOworCWVsc2UgaWYgKHBvc2l4bHlfY29ycmVjdCB8fCAqb3B0aW9ucyA9PSAnKycpCisJCWZsYWdzICY9IH5GTEFHX1BFUk1VVEU7CisJaWYgKCpvcHRpb25zID09ICcrJyB8fCAqb3B0aW9ucyA9PSAnLScpCisJCW9wdGlvbnMrKzsKKwogCW9wdGFyZyA9IE5VTEw7CiAJaWYgKG9wdHJlc2V0KQogCQlub25vcHRfc3RhcnQgPSBub25vcHRfZW5kID0gLTE7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL3JlYWxwYXRoLmMgYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL3JlYWxwYXRoLmMKaW5kZXggOGZkNTQ1Ny4uYzRiZDk1MyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9yZWFscGF0aC5jCisrKyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvcmVhbHBhdGguYwpAQCAtMTMyLDI2ICsxMzIsNyBAQAogCQkJcmVzb2x2ZWRbcmVzb2x2ZWRfbGVuXSA9ICdcMCc7CiAJCX0KIAkJaWYgKG5leHRfdG9rZW5bMF0gPT0gJ1wwJykgewotCQkJLyoKLQkJCSAqIEhhbmRsZSBjb25zZXF1ZW50aWFsIHNsYXNoZXMuICBUaGUgcGF0aAotCQkJICogYmVmb3JlIHNsYXNoIHNoYWxsIHBvaW50IHRvIGEgZGlyZWN0b3J5LgotCQkJICoKLQkJCSAqIE9ubHkgdGhlIHRyYWlsaW5nIHNsYXNoZXMgYXJlIG5vdCBjb3ZlcmVkCi0JCQkgKiBieSBvdGhlciBjaGVja3MgaW4gdGhlIGxvb3AsIGJ1dCB3ZSB2ZXJpZnkKLQkJCSAqIHRoZSBwcmVmaXggZm9yIGFueSAocmFyZSkgIi8vIiBvciAiL1wwIgotCQkJICogb2NjdXJlbmNlIHRvIG5vdCBpbXBsZW1lbnQgbG9va2FoZWFkLgotCQkJICovCi0JCQlpZiAobHN0YXQocmVzb2x2ZWQsICZzYikgIT0gMCkgewotCQkJCWlmIChtKQotCQkJCQlmcmVlKHJlc29sdmVkKTsKLQkJCQlyZXR1cm4gKE5VTEwpOwotCQkJfQotCQkJaWYgKCFTX0lTRElSKHNiLnN0X21vZGUpKSB7Ci0JCQkJaWYgKG0pCi0JCQkJCWZyZWUocmVzb2x2ZWQpOwotCQkJCWVycm5vID0gRU5PVERJUjsKLQkJCQlyZXR1cm4gKE5VTEwpOwotCQkJfQorCQkJLyogSGFuZGxlIGNvbnNlcXVlbnRpYWwgc2xhc2hlcy4gKi8KIAkJCWNvbnRpbnVlOwogCQl9CiAJCWVsc2UgaWYgKHN0cmNtcChuZXh0X3Rva2VuLCAiLiIpID09IDApCkBAIC0yMzYsNiArMjE3LDExIEBACiAJCQkJfQogCQkJfQogCQkJbGVmdF9sZW4gPSBzdHJsY3B5KGxlZnQsIHN5bWxpbmssIHNpemVvZihsZWZ0KSk7CisJCX0gZWxzZSBpZiAoIVNfSVNESVIoc2Iuc3RfbW9kZSkgJiYgcCAhPSBOVUxMKSB7CisJCQlpZiAobSkKKwkJCQlmcmVlKHJlc29sdmVkKTsKKwkJCWVycm5vID0gRU5PVERJUjsKKwkJCXJldHVybiAoTlVMTCk7CiAJCX0KIAl9CiAKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNweS5jIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMxMDc3MGMuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMKKysrIC9kZXYvbnVsbApAQCAtMSw0NCArMCwwIEBACi0vKi0KLSAqIENvcHlyaWdodCAoYykxOTk5IENpdHJ1cyBQcm9qZWN0LAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKgljaXRydXMgSWQ6IHdtZW1jcHkuYyx2IDEuMiAyMDAwLzEyLzIwIDE0OjA4OjMxIGl0b2p1biBFeHAKLSAqLwotCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0jaWYgMAotI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQotX19SQ1NJRCgiJE5ldEJTRDogd21lbWNweS5jLHYgMS4xIDIwMDAvMTIvMjMgMjM6MTQ6MzcgaXRvanVuIEV4cCAkIik7Ci0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotI2VuZGlmCi1fX0ZCU0RJRCgiJEZyZWVCU0QkIik7Ci0KLSNpbmNsdWRlIDxzdHJpbmcuaD4KLSNpbmNsdWRlIDx3Y2hhci5oPgotCi13Y2hhcl90ICoKLXdtZW1jcHkod2NoYXJfdCAqIF9fcmVzdHJpY3QgZCwgY29uc3Qgd2NoYXJfdCAqIF9fcmVzdHJpY3Qgcywgc2l6ZV90IG4pCi17Ci0JcmV0dXJuICh3Y2hhcl90ICopbWVtY3B5KGQsIHMsIG4gKiBzaXplb2Yod2NoYXJfdCkpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL2ZkX3NldHNpemUuaCBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9mZF9zZXRzaXplLmgKaW5kZXggZTY5ZGUyOS4uNDFiZmNiNyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL2ZkX3NldHNpemUuaAorKysgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvZmRfc2V0c2l6ZS5oCkBAIC0wLDAgKzEgQEAKKyNpbmNsdWRlIDxzeXMvc2VsZWN0Lmg+CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmFtZXNwYWNlLmggYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmFtZXNwYWNlLmgKaW5kZXggNWRmNTQzYy4uNjMwZWE5YiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL25hbWVzcGFjZS5oCisrKyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uYW1lc3BhY2UuaApAQCAtMTcsMTEgKzE3LDYgQEAKICNpZm5kZWYgX0JJT05JQ19ORVRCU0RfTkFNRVNQQUNFX0hfaW5jbHVkZWQKICNkZWZpbmUgX0JJT05JQ19ORVRCU0RfTkFNRVNQQUNFX0hfaW5jbHVkZWQKIAotLy8gTmV0QlNEIHVzZXMgX193ZWFrX2FsaWFzIG9uIGEgbG90IG9mIGZ1bmN0aW9ucy4gV2UgZG9uJ3Qgd2FudCB0aGF0LgotI2lmIGRlZmluZWQoX193ZWFrX2FsaWFzKQotI3VuZGVmIF9fd2Vha19hbGlhcwotI2VuZGlmCi0KIF9fTElCQ19ISURERU5fXyBpbnQgX19yZXNfZW5hYmxlX210KHZvaWQpOwogX19MSUJDX0hJRERFTl9fIGludCBfX3Jlc19kaXNhYmxlX210KHZvaWQpOwogCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmV0YnNkLWNvbXBhdC5oIGIvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL25ldGJzZC1jb21wYXQuaAppbmRleCA4NGJlOTMxLi4wNGJjNzI4IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmV0YnNkLWNvbXBhdC5oCisrKyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uZXRic2QtY29tcGF0LmgKQEAgLTE3LDYgKzE3LDkgQEAKICNpZm5kZWYgX0JJT05JQ19ORVRCU0RfQ09NUEFUX0hfaW5jbHVkZWQKICNkZWZpbmUgX0JJT05JQ19ORVRCU0RfQ09NUEFUX0hfaW5jbHVkZWQKIAorI2RlZmluZSBfQlNEX1NPVVJDRQorI2RlZmluZSBfR05VX1NPVVJDRQorCiAvLyBOZXRCU0QgdXNlcyBfRElBR0FTU0VSVCB0byBudWxsLWNoZWNrIGFyZ3VtZW50cyBhbmQgdGhlIGxpa2UuCiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAjZGVmaW5lIF9ESUFHQVNTRVJUKGUpICgoZSkgPyAodm9pZCkgMCA6IF9fYXNzZXJ0MihfX0ZJTEVfXywgX19MSU5FX18sIF9fZnVuY19fLCAjZSkpCkBAIC0yNCw5ICsyNyw2IEBACiAvLyBUT0RPOiB1cGRhdGUgb3VyIDxzeXMvY2RlZnMuaD4gdG8gc3VwcG9ydCB0aGlzIHByb3Blcmx5LgogI2RlZmluZSBfX3R5cGVfZml0KHQsIGEpICgwID09IDApCiAKLSNkZWZpbmUgX0dOVV9TT1VSQ0UKLSNkZWZpbmUgX19VU0VfQlNECi0KIC8vIFRPRE86IHdlIGRvbid0IHlldCBoYXZlIHRocmVhZC1zYWZlIGVudmlyb25tZW50IHZhcmlhYmxlcy4KICNkZWZpbmUgX19yZWFkbG9ja2VudigpIDAKICNkZWZpbmUgX191bmxvY2tlbnYoKSAwCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA5MDIwYWUuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2luc3F1ZS5jCisrKyAvZGV2L251bGwKQEAgLTEsNTggKzAsMCBAQAotLyoKLSAqICBDb3B5cmlnaHQgKGMpIDE5OTMgSm9obiBCcmV6YWsKLSAqICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqICBhcmUgbWV0OgotICogIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAgMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAqICAgICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULAotICogSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKLSAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOCi0gKiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpZiBkZWZpbmVkKExJQkNfU0NDUykgJiYgIWRlZmluZWQobGludCkKLV9fUkNTSUQoIiROZXRCU0Q6IGluc3F1ZS5jLHYgMS4zIDIwMTIvMDYvMjUgMjI6MzI6NDUgYWJzIEV4cCAkIik7Ci0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotCi0jaW5jbHVkZSA8YXNzZXJ0Lmg+Ci0jaW5jbHVkZSA8c2VhcmNoLmg+Ci0KLXN0cnVjdCBxZWxlbSB7Ci0gICAgICAgIHN0cnVjdCBxZWxlbSAqcV9mb3J3OwotICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfYmFjazsKLX07Ci0KLXZvaWQKLWluc3F1ZSh2b2lkICplbnRyeSwgdm9pZCAqcHJlZCkKLXsKLQlzdHJ1Y3QgcWVsZW0gKmUgPSAoc3RydWN0IHFlbGVtICopIGVudHJ5OwotCXN0cnVjdCBxZWxlbSAqcCA9IChzdHJ1Y3QgcWVsZW0gKikgcHJlZDsKLQotCV9ESUFHQVNTRVJUKGUgIT0gMCk7Ci0KLQllLT5xX2JhY2sgPSBwOwotCWlmIChwKSB7Ci0JCWUtPnFfZm9ydyA9IHAtPnFfZm9ydzsKLQkJaWYgKHAtPnFfZm9ydykKLQkJCXAtPnFfZm9ydy0+cV9iYWNrID0gZTsKLQkJcC0+cV9mb3J3ID0gZTsKLQl9IGVsc2UKLQkJZS0+cV9mb3J3ID0gMDsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9sY29uZzQ4LmMgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvbGNvbmc0OC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyY2U5NzkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvbGNvbmc0OC5jCkBAIC0wLDAgKzEsNDMgQEAKKy8qCSROZXRCU0Q6IGxjb25nNDguYyx2IDEuOCAyMDA1LzA2LzEyIDA1OjIxOjI4IGx1a2VtIEV4cCAkCSovCisKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMgTWFydGluIEJpcmdtZWllcgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBZb3UgbWF5IHJlZGlzdHJpYnV0ZSB1bm1vZGlmaWVkIG9yIG1vZGlmaWVkIHZlcnNpb25zIG9mIHRoaXMgc291cmNlCisgKiBjb2RlIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgYW5kIHRoZQorICogZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIHJldGFpbmVkLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYGBhcyBpcycnLCBhbmQgY29tZXMgd2l0aCBubyB3YXJyYW50aWVzCisgKiBvZiBhbnkga2luZC4gSSBzaGFsbCBpbiBubyBldmVudCBiZSBsaWFibGUgZm9yIGFueXRoaW5nIHRoYXQgaGFwcGVucworICogdG8gYW55b25lL2FueXRoaW5nIHdoZW4gdXNpbmcgdGhpcyBzb2Z0d2FyZS4KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCitfX1JDU0lEKCIkTmV0QlNEOiBsY29uZzQ4LmMsdiAxLjggMjAwNS8wNi8xMiAwNToyMToyOCBsdWtlbSBFeHAgJCIpOworI2VuZGlmIC8qIExJQkNfU0NDUyBhbmQgbm90IGxpbnQgKi8KKworI2luY2x1ZGUgIm5hbWVzcGFjZS5oIgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisKKyNpbmNsdWRlICJyYW5kNDguaCIKKworI2lmZGVmIF9fd2Vha19hbGlhcworX193ZWFrX2FsaWFzKGxjb25nNDgsX2xjb25nNDgpCisjZW5kaWYKKwordm9pZAorbGNvbmc0OCh1bnNpZ25lZCBzaG9ydCBwWzddKQoreworCV9ESUFHQVNTRVJUKHAgIT0gTlVMTCk7CisKKwlfX3JhbmQ0OF9zZWVkWzBdID0gcFswXTsKKwlfX3JhbmQ0OF9zZWVkWzFdID0gcFsxXTsKKwlfX3JhbmQ0OF9zZWVkWzJdID0gcFsyXTsKKwlfX3JhbmQ0OF9tdWx0WzBdID0gcFszXTsKKwlfX3JhbmQ0OF9tdWx0WzFdID0gcFs0XTsKKwlfX3JhbmQ0OF9tdWx0WzJdID0gcFs1XTsKKwlfX3JhbmQ0OF9hZGQgPSBwWzZdOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL3JlbXF1ZS5jIGIvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL3JlbXF1ZS5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MDYwYWQ4Li4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYworKysgL2Rldi9udWxsCkBAIC0xLDUzICswLDAgQEAKLS8qCi0gKiAgQ29weXJpZ2h0IChjKSAxOTkzIEpvaG4gQnJlemFrCi0gKiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiAgYXJlIG1ldDoKLSAqICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogIDMuIFRoZSBuYW1lIG9mIHRoZSBhdXRob3IgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzCi0gKiAgICAgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwKLSAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCi0gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKLSAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTgotICogQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi0gKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0jaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCi1fX1JDU0lEKCIkTmV0QlNEOiByZW1xdWUuYyx2IDEuMyAyMDEyLzA2LzI1IDIyOjMyOjQ1IGFicyBFeHAgJCIpOwotI2VuZGlmIC8qIExJQkNfU0NDUyBhbmQgbm90IGxpbnQgKi8KLQotI2luY2x1ZGUgPGFzc2VydC5oPgotI2luY2x1ZGUgPHNlYXJjaC5oPgotCi1zdHJ1Y3QgcWVsZW0gewotICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfZm9ydzsKLSAgICAgICAgc3RydWN0IHFlbGVtICpxX2JhY2s7Ci19OwotCi12b2lkCi1yZW1xdWUodm9pZCAqZWxlbWVudCkKLXsKLQlzdHJ1Y3QgcWVsZW0gKmUgPSAoc3RydWN0IHFlbGVtICopIGVsZW1lbnQ7Ci0KLQlfRElBR0FTU0VSVChlICE9IDApOwotCi0JaWYgKGUtPnFfZm9ydykKLQkJZS0+cV9mb3J3LT5xX2JhY2sgPSBlLT5xX2JhY2s7Ci0JaWYgKGUtPnFfYmFjaykKLQkJZS0+cV9iYWNrLT5xX2ZvcncgPSBlLT5xX2Zvcnc7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy91bmlzdGQva2lsbHBnLmMgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy91bmlzdGQva2lsbHBnLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlYWMzZjQuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvdW5pc3RkL2tpbGxwZy5jCisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotLyoJJE5ldEJTRDoga2lsbHBnLmMsdiAxLjggMjAwMy8wOC8wNyAxNjo0MjozOSBhZ2MgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk4OSwgMTk5MwotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpZiBkZWZpbmVkKExJQkNfU0NDUykgJiYgIWRlZmluZWQobGludCkKLSNpZiAwCi1zdGF0aWMgY2hhciBzY2NzaWRbXSA9ICJAKCMpa2lsbHBnLmMJOC4xIChCZXJrZWxleSkgNi8yLzkzIjsKLSNlbHNlCi1fX1JDU0lEKCIkTmV0QlNEOiBraWxscGcuYyx2IDEuOCAyMDAzLzA4LzA3IDE2OjQyOjM5IGFnYyBFeHAgJCIpOwotI2VuZGlmCi0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c2lnbmFsLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLQotLyoKLSAqIEJhY2t3YXJkcy1jb21wYXRpYmxlIGtpbGxwZygpLgotICovCi1pbnQKLWtpbGxwZyhwaWRfdCBwZ2lkLCBpbnQgc2lnKQotewotCWlmIChwZ2lkID09IDEpIHsKLQkJZXJybm8gPSBFU1JDSDsKLQkJcmV0dXJuICgtMSk7Ci0JfQotCXJldHVybiAoa2lsbCgtcGdpZCwgc2lnKSk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9pbmNsdWRlL29wZW5ic2QtY29tcGF0LmggYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9pbmNsdWRlL29wZW5ic2QtY29tcGF0LmgKaW5kZXggMzRhZDJjNS4uOGY1NWEyNiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZS9vcGVuYnNkLWNvbXBhdC5oCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUvb3BlbmJzZC1jb21wYXQuaApAQCAtMTcsMTAgKzE3LDI2IEBACiAjaWZuZGVmIF9CSU9OSUNfT1BFTkJTRF9DT01QQVRfSF9pbmNsdWRlZAogI2RlZmluZSBfQklPTklDX09QRU5CU0RfQ09NUEFUX0hfaW5jbHVkZWQKIAorI2RlZmluZSBfQlNEX1NPVVJDRQorCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3RkZGVmLmg+IC8vIEZvciBzaXplX3QuCiAKLSNkZWZpbmUgX19VU0VfQlNECisvKiBSZWRpcmVjdCBpbnRlcm5hbCBDIGxpYnJhcnkgY2FsbHMgdG8gdGhlIHB1YmxpYyBmdW5jdGlvbi4gKi8KKyNkZWZpbmUgX2VyciBlcnIKKyNkZWZpbmUgX2VycnggZXJyeAorI2RlZmluZSBfdmVyciB2ZXJyCisjZGVmaW5lIF92ZXJyeCB2ZXJyeAorI2RlZmluZSBfdndhcm4gdndhcm4KKyNkZWZpbmUgX3Z3YXJueCB2d2FybngKKyNkZWZpbmUgX3dhcm4gd2FybgorI2RlZmluZSBfd2Fybnggd2FybngKKworLyogSWdub3JlIGFsbCBfX3dlYWtfYWxpYXMgaW4gT3BlbkJTRC4gKi8KKyNkZWZpbmUgX193ZWFrX2FsaWFzKGFsaWFzLHN5bSkKKworLyogSWdub3JlIGFsbCBfX3dhcm5fcmVmZXJlbmNlcyBpbiBPcGVuQlNELiAqLworI2RlZmluZSBfX3dhcm5fcmVmZXJlbmNlcyhzeW0sbXNnKQogCiAvKiBPcGVuQlNEJ3MgPGN0eXBlLmg+IHVzZXMgdGhlc2UgbmFtZXMsIHdoaWNoIGNvbmZsaWN0ZWQgd2l0aCBzdGxwb3J0LgogICogQWRkaXRpb25hbGx5LCB3ZSBjaGFuZ2VkIHRoZSBudW1lcmljL2RpZ2l0IHR5cGUgZnJvbSBOIHRvIEQgZm9yIGxpYmN4eC4KQEAgLTM5LDkgKzU1LDIxIEBACiAKICNkZWZpbmUgZXhwbGljaXRfYnplcm8ocCwgcykgbWVtc2V0KHAsIDAsIHMpCiAKKy8qIE9wZW5CU0QgaGFzIHRoZXNlIGluIDxzeXMvcGFyYW0uaD4sIGJ1dCAiQUxJR04iIGlzbid0IHNvbWV0aGluZyB3ZSB3YW50IHRvIHJlc2VydmUuICovCisjZGVmaW5lIEFMSUdOQllURVMgKHNpemVvZih1aW50cHRyX3QpIC0gMSkKKyNkZWZpbmUgQUxJR04ocCkgKCgodWludHB0cl90KShwKSArIEFMSUdOQllURVMpICZ+IEFMSUdOQllURVMpCisKKy8qIE9wZW5CU0QgaGFzIHRoaXMgaW4gcGF0aHMuaC4gQnV0IHRoaXMgZGlyZWN0b3J5IGRvZXNuJ3Qgbm9ybWFsbHkgZXhpc3QuCisgKiBFdmVuIHdoZW4gaXQgZG9lcyBleGlzdCwgb25seSB0aGUgJ3NoZWxsJyB1c2VyIGhhcyBwZXJtaXNzaW9ucy4KKyAqLworI2RlZmluZSBfUEFUSF9UTVAgIi9kYXRhL2xvY2FsL3RtcC8iCisKIC8qIFdlIGhhdmUgT3BlbkJTRCdzIGdldGVudHJvcHlfbGludXguYywgYnV0IHdlIGRvbid0IG1lbnRpb24gZ2V0ZW50cm9weSBpbiBhbnkgaGVhZGVyLiAqLwogX19MSUJDX0hJRERFTl9fIGV4dGVybiBpbnQgZ2V0ZW50cm9weSh2b2lkKiwgc2l6ZV90KTsKIAorLyogT3BlbkJTRCBoYXMgdGhpcyBhcyBBUEksIGJ1dCB3ZSBqdXN0IHVzZSBpdCBpbnRlcm5hbGx5LiAqLworX19MSUJDX0hJRERFTl9fIHZvaWQqIHJlYWxsb2NhcnJheSh2b2lkKiwgc2l6ZV90LCBzaXplX3QpOworCiAvKiBMUDMyIE5ESyBjdHlwZS5oIGNvbnRhaW5lZCByZWZlcmVuY2VzIHRvIHRoZXNlLiAqLwogX19MSUJDNjRfSElEREVOX18gZXh0ZXJuIGNvbnN0IHNob3J0KiBfdG9sb3dlcl90YWJfOwogX19MSUJDNjRfSElEREVOX18gZXh0ZXJuIGNvbnN0IHNob3J0KiBfdG91cHBlcl90YWJfOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2NvbXBhdC00My9raWxscGcuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jb21wYXQtNDMva2lsbHBnLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzViMWFkOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jb21wYXQtNDMva2lsbHBnLmMKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMTk4OSBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisKKy8qCisgKiBCYWNrd2FyZHMtY29tcGF0aWJsZSBraWxscGcoKS4KKyAqLworaW50CitraWxscGcocGlkX3QgcGdpZCwgaW50IHNpZykKK3sKKwlpZiAocGdpZCA9PSAxKSB7CisJCWVycm5vID0gRVNSQ0g7CisJCXJldHVybiAoLTEpOworCX0KKwlyZXR1cm4gKGtpbGwoLXBnaWQsIHNpZykpOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dkdG9hL2xkdG9hLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvbGR0b2EuYwppbmRleCA3OTNkNzFjLi4xNmY2ZjljIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvbGR0b2EuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvbGR0b2EuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBsZHRvYS5jLHYgMS4xIDIwMDgvMDkvMDcgMjA6MzY6MDggbWFydHluYXMgRXhwICQJKi8KKy8qCSRPcGVuQlNEOiBsZHRvYS5jLHYgMS4yIDIwMTQvMDgvMTAgMDI6MTU6MTggZ3VlbnRoZXIgRXhwICQJKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAyMDAzIERhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9SRz4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC0zMCw3ICszMCw3IEBACiAjaW5jbHVkZSA8bWFjaGluZS9pZWVlLmg+CiAjZW5kaWYgLyogIV9fdmF4X18gKi8KICNpbmNsdWRlIDxmbG9hdC5oPgotI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9kYWVtb24uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZGFlbW9uLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzlmNDI2NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZGFlbW9uLmMKQEAgLTAsMCArMSw2NCBAQAorLyoJJE9wZW5CU0Q6IGRhZW1vbi5jLHYgMS43IDIwMTAvMDcvMjcgMjI6Mjk6MDkgbWFyY28gRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8cGF0aHMuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworaW50CitkYWVtb24oaW50IG5vY2hkaXIsIGludCBub2Nsb3NlKQoreworCWludCBmZDsKKworCXN3aXRjaCAoZm9yaygpKSB7CisJY2FzZSAtMToKKwkJcmV0dXJuICgtMSk7CisJY2FzZSAwOgorCQlicmVhazsKKwlkZWZhdWx0OgorCQlfZXhpdCgwKTsKKwl9CisKKwlpZiAoc2V0c2lkKCkgPT0gLTEpCisJCXJldHVybiAoLTEpOworCisJaWYgKCFub2NoZGlyKQorCQkodm9pZCljaGRpcigiLyIpOworCisJaWYgKCFub2Nsb3NlICYmIChmZCA9IG9wZW4oX1BBVEhfREVWTlVMTCwgT19SRFdSLCAwKSkgIT0gLTEpIHsKKwkJKHZvaWQpZHVwMihmZCwgU1RESU5fRklMRU5PKTsKKwkJKHZvaWQpZHVwMihmZCwgU1RET1VUX0ZJTEVOTyk7CisJCSh2b2lkKWR1cDIoZmQsIFNUREVSUl9GSUxFTk8pOworCQlpZiAoZmQgPiAyKQorCQkJKHZvaWQpY2xvc2UoZmQpOworCX0KKwlyZXR1cm4gKDApOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnIuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTdlYzI5ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyLmMKQEAgLTAsMCArMSw0NyBAQAorLyoJJE9wZW5CU0Q6IGVyci5jLHYgMS4xMSAyMDEyLzEyLzA1IDIzOjE5OjU5IGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorCisvKiBQUklOVEZMSUtFMiAqLworX19kZWFkIHZvaWQKK19lcnIoaW50IGV2YWwsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm10KTsKKwlfdmVycihldmFsLCBmbXQsIGFwKTsKKwl2YV9lbmQoYXApOworfQorCisvKiBQUklOVEZMSUtFMiAqLworX193ZWFrX2FsaWFzKGVyciwgX2Vycik7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyeC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnJ4LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDIxMzQzNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyeC5jCkBAIC0wLDAgKzEsNDcgQEAKKy8qCSRPcGVuQlNEOiBlcnJ4LmMsdiAxLjEwIDIwMTIvMTIvMDUgMjM6MTk6NTkgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKy8qIFBSSU5URkxJS0UyICovCitfX2RlYWQgdm9pZAorX2VycngoaW50IGV2YWwsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm10KTsKKwlfdmVycngoZXZhbCwgZm10LCBhcCk7CisJdmFfZW5kKGFwKTsKK30KKworLyogUFJJTlRGTElLRTIgKi8KK19fd2Vha19hbGlhcyhlcnJ4LCBfZXJyeCk7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdmVyci5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGNkOGVkYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdmVyci5jCkBAIC0wLDAgKzEsNTYgQEAKKy8qCSRPcGVuQlNEOiB2ZXJyLmMsdiAxLjkgMjAxMi8xMi8wNSAyMzoyMDowMCBkZXJhYWR0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnIuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKK2V4dGVybiBjaGFyICpfX3Byb2duYW1lOwkJLyogUHJvZ3JhbSBuYW1lLCBmcm9tIGNydDAuICovCisKK19fZGVhZCB2b2lkCitfdmVycihpbnQgZXZhbCwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCWludCBzdmVycm5vOworCisJc3ZlcnJubyA9IGVycm5vOworCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXM6ICIsIF9fcHJvZ25hbWUpOworCWlmIChmbXQgIT0gTlVMTCkgeworCQkodm9pZCl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXApOworCQkodm9pZClmcHJpbnRmKHN0ZGVyciwgIjogIik7CisJfQorCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXNcbiIsIHN0cmVycm9yKHN2ZXJybm8pKTsKKwlleGl0KGV2YWwpOworfQorCitfX3dlYWtfYWxpYXModmVyciwgX3ZlcnIpOworCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3ZlcnJ4LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3ZlcnJ4LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjBkYTA2MgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdmVycnguYwpAQCAtMCwwICsxLDQ5IEBACisvKgkkT3BlbkJTRDogdmVycnguYyx2IDEuOSAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKK2V4dGVybiBjaGFyICpfX3Byb2duYW1lOwkJLyogUHJvZ3JhbSBuYW1lLCBmcm9tIGNydDAuICovCisKK19fZGVhZCB2b2lkCitfdmVycngoaW50IGV2YWwsIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCkKK3sKKwkodm9pZClmcHJpbnRmKHN0ZGVyciwgIiVzOiAiLCBfX3Byb2duYW1lKTsKKwlpZiAoZm10ICE9IE5VTEwpCisJCSh2b2lkKXZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcCk7CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICJcbiIpOworCWV4aXQoZXZhbCk7Cit9CisKK19fd2Vha19hbGlhcyh2ZXJyeCwgX3ZlcnJ4KTsKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92d2Fybi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92d2Fybi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2YjYwZjMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJuLmMKQEAgLTAsMCArMSw1NCBAQAorLyoJJE9wZW5CU0Q6IHZ3YXJuLmMsdiAxLjkgMjAxMi8xMi8wNSAyMzoyMDowMCBkZXJhYWR0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnIuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKK2V4dGVybiBjaGFyICpfX3Byb2duYW1lOwkJLyogUHJvZ3JhbSBuYW1lLCBmcm9tIGNydDAuICovCisKK3ZvaWQKK192d2Fybihjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJaW50IHN2ZXJybm87CisKKwlzdmVycm5vID0gZXJybm87CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICIlczogIiwgX19wcm9nbmFtZSk7CisJaWYgKGZtdCAhPSBOVUxMKSB7CisJCSh2b2lkKXZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcCk7CisJCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiOiAiKTsKKwl9CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICIlc1xuIiwgc3RyZXJyb3Ioc3ZlcnJubykpOworfQorCitfX3dlYWtfYWxpYXModndhcm4sIF92d2Fybik7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdndhcm54LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJueC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU2YjE5NTcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJueC5jCkBAIC0wLDAgKzEsNDcgQEAKKy8qCSRPcGVuQlNEOiB2d2FybnguYyx2IDEuOSAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKK2V4dGVybiBjaGFyICpfX3Byb2duYW1lOwkJLyogUHJvZ3JhbSBuYW1lLCBmcm9tIGNydDAuICovCisKK3ZvaWQKK192d2FybngoY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXM6ICIsIF9fcHJvZ25hbWUpOworCWlmIChmbXQgIT0gTlVMTCkKKwkJKHZvaWQpdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKKwkodm9pZClmcHJpbnRmKHN0ZGVyciwgIlxuIik7Cit9CisKK19fd2Vha19hbGlhcyh2d2FybngsIF92d2FybngpOworCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm4uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vd2Fybi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMxYjQ3YTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm4uYwpAQCAtMCwwICsxLDQ3IEBACisvKgkkT3BlbkJTRDogd2Fybi5jLHYgMS4xMCAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorCisvKiBQUklOVEZMSUtFMSAqLwordm9pZAorX3dhcm4oY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCV92d2FybihmbXQsIGFwKTsKKwl2YV9lbmQoYXApOworfQorCisvKiBQUklOVEZMSUtFMSAqLworX193ZWFrX2FsaWFzKHdhcm4sIF93YXJuKTsKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi93YXJueC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi93YXJueC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmMmFiNjYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm54LmMKQEAgLTAsMCArMSw0NyBAQAorLyoJJE9wZW5CU0Q6IHdhcm54LmMsdiAxLjkgMjAxMi8xMi8wNSAyMzoyMDowMCBkZXJhYWR0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnIuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworLyogUFJJTlRGTElLRTEgKi8KK3ZvaWQKK193YXJueChjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFwOworCisJdmFfc3RhcnQoYXAsIGZtdCk7CisJX3Z3YXJueChmbXQsIGFwKTsKKwl2YV9lbmQoYXApOworfQorCisvKiBQUklOVEZMSUtFMSAqLworX193ZWFrX2FsaWFzKHdhcm54LCBfd2FybngpOworCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25sLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25sLmMKaW5kZXggNWFiNDE4OS4uNmVlNmU3ZSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9odG9ubC5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvaHRvbmwuYwpAQCAtMSwxMSArMSwxMSBAQAotLyoJJE9wZW5CU0Q6IGh0b25sLmMsdiAxLjYgMjAwNS8wOC8wNiAyMDozMDowMyBlc3BpZSBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IGh0b25sLmMsdiAxLjcgMjAxNC8wNy8yMSAwMTo1MToxMCBndWVudGhlciBFeHAgJCAqLwogLyoKICAqIFdyaXR0ZW4gYnkgSi5ULiBDb25rbGluIDxqdGNAbmV0YnNkLm9yZz4uCiAgKiBQdWJsaWMgZG9tYWluLgogICovCiAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxtYWNoaW5lL2VuZGlhbi5oPgorI2luY2x1ZGUgPGVuZGlhbi5oPgogCiAjdW5kZWYgaHRvbmwKIApkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9odG9ucy5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9odG9ucy5jCmluZGV4IGM4YjczZmQuLmY0OGQ5MWUgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvaHRvbnMuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25zLmMKQEAgLTEsMTEgKzEsMTEgQEAKLS8qCSRPcGVuQlNEOiBodG9ucy5jLHYgMS44IDIwMDUvMDgvMDYgMjA6MzA6MDMgZXNwaWUgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBodG9ucy5jLHYgMS45IDIwMTQvMDcvMjEgMDE6NTE6MTAgZ3VlbnRoZXIgRXhwICQgKi8KIC8qCiAgKiBXcml0dGVuIGJ5IEouVC4gQ29ua2xpbiA8anRjQG5ldGJzZC5vcmc+LgogICogUHVibGljIGRvbWFpbi4KICAqLwogCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9lbmRpYW4uaD4KKyNpbmNsdWRlIDxlbmRpYW4uaD4KIAogI3VuZGVmIGh0b25zCiAKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaGwuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaGwuYwppbmRleCAzNjQxNGI3Li4wZDA1YmFjIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L250b2hsLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9udG9obC5jCkBAIC0xLDExICsxLDExIEBACi0vKgkkT3BlbkJTRDogbnRvaGwuYyx2IDEuNiAyMDA1LzA4LzA2IDIwOjMwOjAzIGVzcGllIEV4cCAkICovCisvKgkkT3BlbkJTRDogbnRvaGwuYyx2IDEuNyAyMDE0LzA3LzIxIDAxOjUxOjEwIGd1ZW50aGVyIEV4cCAkICovCiAvKgogICogV3JpdHRlbiBieSBKLlQuIENvbmtsaW4gPGp0Y0BuZXRic2Qub3JnPi4KICAqIFB1YmxpYyBkb21haW4uCiAgKi8KIAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+CisjaW5jbHVkZSA8ZW5kaWFuLmg+CiAKICN1bmRlZiBudG9obAogCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L250b2hzLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L250b2hzLmMKaW5kZXggOGYzNDVlOC4uYjVlYTM2MSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9udG9ocy5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaHMuYwpAQCAtMSwxMSArMSwxMSBAQAotLyoJJE9wZW5CU0Q6IG50b2hzLmMsdiAxLjggMjAwNS8wOC8wNiAyMDozMDowMyBlc3BpZSBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IG50b2hzLmMsdiAxLjkgMjAxNC8wNy8yMSAwMTo1MToxMCBndWVudGhlciBFeHAgJCAqLwogLyoKICAqIFdyaXR0ZW4gYnkgSi5ULiBDb25rbGluIDxqdGNAbmV0YnNkLm9yZz4uCiAgKiBQdWJsaWMgZG9tYWluLgogICovCiAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxtYWNoaW5lL2VuZGlhbi5oPgorI2luY2x1ZGUgPGVuZGlhbi5oPgogCiAjdW5kZWYgbnRvaHMKIApkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9yZXNfcmFuZG9tLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L3Jlc19yYW5kb20uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjg2OTJmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9yZXNfcmFuZG9tLmMKQEAgLTAsMCArMSwyNzUgQEAKKy8qICRPcGVuQlNEOiByZXNfcmFuZG9tLmMsdiAxLjIxIDIwMTQvMDcvMjAgMDQ6MjI6MzQgZ3VlbnRoZXIgRXhwICQgKi8KKworLyoKKyAqIENvcHlyaWdodCAxOTk3IE5pZWxzIFByb3ZvcyA8cHJvdm9zQHBoeXNuZXQudW5pLWhhbWJ1cmcuZGU+CisgKiBDb3B5cmlnaHQgMjAwOCBEYW1pZW4gTWlsbGVyIDxkam1Ab3BlbmJzZC5vcmc+CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoZW8gZGUgUmFhZHQgPGRlcmFhZHRAb3BlbmJzZC5vcmc+IGNhbWUgdXAgd2l0aCB0aGUgaWRlYSBvZiB1c2luZworICogc3VjaCBhIG1hdGhlbWF0aWNhbCBzeXN0ZW0gdG8gZ2VuZXJhdGUgbW9yZSByYW5kb20gKHlldCBub24tcmVwZWF0aW5nKQorICogaWRzIHRvIHNvbHZlIHRoZSByZXNvbHZlci9uYW1lZCBwcm9ibGVtLiAgQnV0IE5pZWxzIGRlc2lnbmVkIHRoZQorICogYWN0dWFsIHN5c3RlbSBiYXNlZCBvbiB0aGUgY29uc3RyYWludHMuCisgKgorICogTGF0ZXIgbW9kaWZpZWQgYnkgRGFtaWVuIE1pbGxlciB0byB3cmFwIHRoZSBMQ0cgb3V0cHV0IGluIGEgMTUtYml0CisgKiBwZXJtdXRhdGlvbiBnZW5lcmF0b3IgYmFzZWQgb24gYSBMdWJ5LVJhY2tvZmYgYmxvY2sgY2lwaGVyLiBUaGlzCisgKiBlbnN1cmVzIHRoZSBvdXRwdXQgaXMgbm9uLXJlcGVhdGluZyBhbmQgcHJlc2VydmVzIHRoZSBNU0IgdHdpZGRsZQorICogdHJpY2ssIGJ1dCBtYWtlcyBpdCBtb3JlIHJlc2lzdGFudCB0byBMQ0cgcHJlZGljdGlvbi4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgorICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUworICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KKyAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAorICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLyogCisgKiBzZWVkID0gcmFuZG9tIDE1Yml0CisgKiBuID0gcHJpbWUsIGcwID0gZ2VuZXJhdG9yIHRvIG4sCisgKiBqID0gcmFuZG9tIHNvIHRoYXQgZ2NkKGosbi0xKSA9PSAxCisgKiBnID0gZzBeaiBtb2QgbiB3aWxsIGJlIGEgZ2VuZXJhdG9yIGFnYWluLgorICoKKyAqIFhbMF0gPSByYW5kb20gc2VlZC4KKyAqIFhbbl0gPSBhKlhbbi0xXStiIG1vZCBtIGlzIGEgTGluZWFyIENvbmdydWVudGlhbCBHZW5lcmF0b3IKKyAqIHdpdGggYSA9IDdeKGV2ZW4gcmFuZG9tKSBtb2QgbSwgCisgKiAgICAgIGIgPSByYW5kb20gd2l0aCBnY2QoYixtKSA9PSAxCisgKiAgICAgIG0gPSAzMTEwNCBhbmQgYSBtYXhpbWFsIHBlcmlvZCBvZiBtLTEuCisgKgorICogVGhlIHRyYW5zYWN0aW9uIGlkIGlzIGRldGVybWluZWQgYnk6CisgKiBpZFtuXSA9IHNlZWQgeG9yIChnXlhbbl0gbW9kIG4pCisgKgorICogRWZmZWN0aXZseSB0aGUgaWQgaXMgcmVzdHJpY3RlZCB0byB0aGUgbG93ZXIgMTUgYml0cywgdGh1cworICogeWllbGRpbmcgdHdvIGRpZmZlcmVudCBjeWNsZXMgYnkgdG9nZ2xpbmcgdGhlIG1zYiBvbiBhbmQgb2ZmLgorICogVGhpcyBhdm9pZHMgcmV1c2UgaXNzdWVzIGNhdXNlZCBieSByZXNlZWRpbmcuCisgKgorICogVGhlIG91dHB1dCBvZiB0aGlzIGdlbmVyYXRvciBpcyB0aGVuIHJhbmRvbWx5IHBlcm11dGVkIHRob3VnaCBhCisgKiBjdXN0b20gMTUgYml0IEx1YnktUmFja29mZiBibG9jayBjaXBoZXIuCisgKi8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNpbmNsdWRlIDxzeXMvdGltZS5oPgorI2luY2x1ZGUgPHJlc29sdi5oPgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlICJ0aHJlYWRfcHJpdmF0ZS5oIgorCisjZGVmaW5lIFJVX09VVCAgCTE4MAkvKiBUaW1lIGFmdGVyIHdpY2ggd2lsbCBiZSByZXNlZWRlZCAqLworI2RlZmluZSBSVV9NQVgJCTMwMDAwCS8qIFVuaXEgY3ljbGUsIGF2b2lkIGJsYWNramFjayBwcmVkaWN0aW9uICovCisjZGVmaW5lIFJVX0dFTgkJMgkvKiBTdGFydGluZyBnZW5lcmF0b3IgKi8KKyNkZWZpbmUgUlVfTgkJMzI3NDkJLyogUlVfTi0xID0gMioyKjMqMjcyOSAqLworI2RlZmluZSBSVV9BR0VOCQk3CS8qIGRldGVybWluZSBydV9hIGFzIFJVX0FHRU5eKDIqcmFuZCkgKi8KKyNkZWZpbmUgUlVfTQkJMzExMDQJLyogUlVfTSA9IDJeNyozXjUgLSBkb24ndCBjaGFuZ2UgKi8KKyNkZWZpbmUgUlVfUk9VTkRTCTExCS8qIE51bWJlciBvZiByb3VuZHMgZm9yIHBlcm11dGUgKG9kZCkgKi8KKworc3RydWN0IHByZl9jdHggeworCS8qIFBSRiBsb29rdXAgdGFibGUgZm9yIG9kZCByb3VuZHMgKDcgYml0cyBpbnB1dCB0byA4IGJpdHMgb3V0cHV0KSAqLworCXVfY2hhciBwcmY3WyhSVV9ST1VORFMgLyAyKSAqICgxIDw8IDcpXTsKKworCS8qIFBSRiBsb29rdXAgdGFibGUgZm9yIGV2ZW4gcm91bmRzICg4IGJpdHMgaW5wdXQgdG8gNyBiaXRzIG91dHB1dCkgKi8KKwl1X2NoYXIgcHJmOFsoKFJVX1JPVU5EUyArIDEpIC8gMikgKiAoMSA8PCA4KV07Cit9OworCisjZGVmaW5lIFBGQUNfTiAzCitzdGF0aWMgY29uc3QgdV9pbnQxNl90IHBmYWN0c1tQRkFDX05dID0geworCTIsIAorCTMsCisJMjcyOQorfTsKKworc3RhdGljIHVfaW50MTZfdCBydV94Oworc3RhdGljIHVfaW50MTZfdCBydV9zZWVkLCBydV9zZWVkMjsKK3N0YXRpYyB1X2ludDE2X3QgcnVfYSwgcnVfYjsKK3N0YXRpYyB1X2ludDE2X3QgcnVfZzsKK3N0YXRpYyB1X2ludDE2X3QgcnVfY291bnRlciA9IDA7CitzdGF0aWMgdV9pbnQxNl90IHJ1X21zYiA9IDA7CitzdGF0aWMgc3RydWN0IHByZl9jdHggKnJ1X3ByZiA9IE5VTEw7CitzdGF0aWMgdGltZV90IHJ1X3Jlc2VlZDsKKworc3RhdGljIHVfaW50MTZfdCBwbW9kKHVfaW50MTZfdCwgdV9pbnQxNl90LCB1X2ludDE2X3QpOworc3RhdGljIHZvaWQgcmVzX2luaXRpZCh2b2lkKTsKKworLyoKKyAqIERvIGEgZmFzdCBtb2R1bGFyIGV4cG9uYXRpb24sIHJldHVybmVkIHZhbHVlIHdpbGwgYmUgaW4gdGhlIHJhbmdlCisgKiBvZiAwIC0gKG1vZC0xKQorICovCitzdGF0aWMgdV9pbnQxNl90CitwbW9kKHVfaW50MTZfdCBnZW4sIHVfaW50MTZfdCBleHAsIHVfaW50MTZfdCBtb2QpCit7CisJdV9pbnQxNl90IHMsIHQsIHU7CisKKwlzID0gMTsKKwl0ID0gZ2VuOworCXUgPSBleHA7CisKKwl3aGlsZSAodSkgeworCQlpZiAodSAmIDEpCisJCQlzID0gKHMgKiB0KSAlIG1vZDsKKwkJdSA+Pj0gMTsKKwkJdCA9ICh0ICogdCkgJSBtb2Q7CisJfQorCXJldHVybiAocyk7Cit9CisKKy8qCisgKiAxNS1iaXQgcGVybXV0YXRpb24gYmFzZWQgb24gTHVieS1SYWNrb2ZmIGJsb2NrIGNpcGhlcgorICovCitzdGF0aWMgdV9pbnQKK3Blcm11dGUxNSh1X2ludCBpbikKK3sKKwlpbnQgaTsKKwl1X2ludCBsZWZ0LCByaWdodCwgdG1wOworCisJaWYgKHJ1X3ByZiA9PSBOVUxMKQorCQlyZXR1cm4gaW47CisKKwlsZWZ0ID0gKGluID4+IDgpICYgMHg3ZjsKKwlyaWdodCA9IGluICYgMHhmZjsKKworCS8qCisJICogRWFjaCByb3VuZCBzd2FwcyB0aGUgd2lkdGggb2YgbGVmdCBhbmQgcmlnaHQuIEV2ZW4gcm91bmRzIGhhdmUKKwkgKiBhIDctYml0IGxlZnQsIG9kZCByb3VuZHMgaGF2ZSBhbiA4LWJpdCBsZWZ0LglTaW5jZSB0aGlzIHVzZXMgYW4KKwkgKiBvZGQgbnVtYmVyIG9mIHJvdW5kcywgbGVmdCBpcyBhbHdheXMgOCBiaXRzIHdpZGUgYXQgdGhlIGVuZC4KKwkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgUlVfUk9VTkRTOyBpKyspIHsKKwkJaWYgKChpICYgMSkgPT0gMCkKKwkJCXRtcCA9IHJ1X3ByZi0+cHJmOFsoaSA8PCAoOCAtIDEpKSB8IHJpZ2h0XSAmIDB4N2Y7CisJCWVsc2UKKwkJCXRtcCA9IHJ1X3ByZi0+cHJmN1soKGkgLSAxKSA8PCAoNyAtIDEpKSB8IHJpZ2h0XTsKKwkJdG1wIF49IGxlZnQ7CisJCWxlZnQgPSByaWdodDsKKwkJcmlnaHQgPSB0bXA7CisJfQorCisJcmV0dXJuIChyaWdodCA8PCA4KSB8IGxlZnQ7Cit9CisKKy8qIAorICogSW5pdGlhbGl6ZXMgdGhlIHNlZWQgYW5kIGNob29zZXMgYSBzdWl0YWJsZSBnZW5lcmF0b3IuIEFsc28gdG9nZ2xlcyAKKyAqIHRoZSBtc2IgZmxhZy4gVGhlIG1zYiBmbGFnIGlzIHVzZWQgdG8gZ2VuZXJhdGUgdHdvIGRpc3RpbmN0CisgKiBjeWNsZXMgb2YgcmFuZG9tIG51bWJlcnMgYW5kIHRodXMgYXZvaWRpbmcgcmV1c2Ugb2YgaWRzLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGZyb20gcmVzX3JhbmRvbWlkKCkgd2hlbiBuZWVkZWQsIGFuIAorICogYXBwbGljYXRpb24gZG9lcyBub3QgaGF2ZSB0byB3b3JyeSBhYm91dCBpdC4KKyAqLworc3RhdGljIHZvaWQgCityZXNfaW5pdGlkKHZvaWQpCit7CisJdV9pbnQxNl90IGosIGk7CisJdV9pbnQzMl90IHRtcDsKKwlpbnQgbm9wcmltZSA9IDE7CisJc3RydWN0IHRpbWVzcGVjIHRzOworCisJcnVfeCA9IGFyYzRyYW5kb21fdW5pZm9ybShSVV9NKTsKKworCS8qIDE1IGJpdHMgb2YgcmFuZG9tIHNlZWQgKi8KKwl0bXAgPSBhcmM0cmFuZG9tKCk7CisJcnVfc2VlZCA9ICh0bXAgPj4gMTYpICYgMHg3RkZGOworCXJ1X3NlZWQyID0gdG1wICYgMHg3RkZGOworCisJLyogRGV0ZXJtaW5lIHRoZSBMQ0cgd2UgdXNlICovCisJdG1wID0gYXJjNHJhbmRvbSgpOworCXJ1X2IgPSAodG1wICYgMHhmZmZlKSB8IDE7CisJcnVfYSA9IHBtb2QoUlVfQUdFTiwgKHRtcCA+PiAxNikgJiAweGZmZmUsIFJVX00pOworCXdoaWxlIChydV9iICUgMyA9PSAwKQorCQlydV9iICs9IDI7CisJCisJaiA9IGFyYzRyYW5kb21fdW5pZm9ybShSVV9OKTsKKworCS8qIAorCSAqIERvIGEgZmFzdCBnY2QoaixSVV9OLTEpLCBzbyB3ZSBjYW4gZmluZCBhIGogd2l0aAorCSAqIGdjZChqLCBSVV9OLTEpID09IDEsIGdpdmluZyBhIG5ldyBnZW5lcmF0b3IgZm9yCisJICogUlVfR0VOXmogbW9kIFJVX04KKwkgKi8KKworCXdoaWxlIChub3ByaW1lKSB7CisJCWZvciAoaSA9IDA7IGkgPCBQRkFDX047IGkrKykKKwkJCWlmIChqICUgcGZhY3RzW2ldID09IDApCisJCQkJYnJlYWs7CisKKwkJaWYgKGkgPj0gUEZBQ19OKQorCQkJbm9wcmltZSA9IDA7CisJCWVsc2UgCisJCQlqID0gKGogKyAxKSAlIFJVX047CisJfQorCisJcnVfZyA9IHBtb2QoUlVfR0VOLCBqLCBSVV9OKTsKKwlydV9jb3VudGVyID0gMDsKKworCS8qIEluaXRpYWxpc2UgUFJGIGZvciBMdWJ5LVJhY2tvZmYgcGVybXV0YXRpb24gKi8KKwlpZiAocnVfcHJmID09IE5VTEwpCisJCXJ1X3ByZiA9IG1hbGxvYyhzaXplb2YoKnJ1X3ByZikpOworCWlmIChydV9wcmYgIT0gTlVMTCkKKwkJYXJjNHJhbmRvbV9idWYocnVfcHJmLCBzaXplb2YoKnJ1X3ByZikpOworCisJY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMsICZ0cyk7CisJcnVfcmVzZWVkID0gdHMudHZfc2VjICsgUlVfT1VUOworCXJ1X21zYiA9IHJ1X21zYiA9PSAweDgwMDAgPyAwIDogMHg4MDAwOyAKK30KKwordV9pbnQKK3Jlc19yYW5kb21pZCh2b2lkKQoreworCXN0cnVjdCB0aW1lc3BlYyB0czsKKwl1X2ludCByOworCV9USFJFQURfUFJJVkFURV9NVVRFWChyYW5kb20pOworCisJY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMsICZ0cyk7CisKKwlfVEhSRUFEX1BSSVZBVEVfTVVURVhfTE9DSyhyYW5kb20pOworCisJaWYgKHJ1X2NvdW50ZXIgPj0gUlVfTUFYIHx8IHRzLnR2X3NlYyA+IHJ1X3Jlc2VlZCkKKwkJcmVzX2luaXRpZCgpOworCisJLyogTGluZWFyIENvbmdydWVudGlhbCBHZW5lcmF0b3IgKi8KKwlydV94ID0gKHJ1X2EgKiBydV94ICsgcnVfYikgJSBSVV9NOworCXJ1X2NvdW50ZXIrKzsKKworCXIgPSBwZXJtdXRlMTUocnVfc2VlZCBeIHBtb2QocnVfZywgcnVfc2VlZDIgKyBydV94LCBSVV9OKSkgfCBydV9tc2I7CisKKwlfVEhSRUFEX1BSSVZBVEVfTVVURVhfVU5MT0NLKHJhbmRvbSk7CisKKwlyZXR1cm4gKHIpOworfQorCisjaWYgMAoraW50CittYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKwlpbnQgaSwgbjsKKwl1X2ludDE2X3Qgd2VydDsKKworCXJlc19pbml0aWQoKTsKKworCXByaW50ZigiR2VuZXJhdG9yOiAldVxuIiwgcnVfZyk7CisJcHJpbnRmKCJTZWVkOiAldVxuIiwgcnVfc2VlZCk7CisJcHJpbnRmKCJSZXNlZWQgYXQgJWxkXG4iLCBydV9yZXNlZWQpOworCXByaW50ZigiUnVfWDogJXVcbiIsIHJ1X3gpOworCXByaW50ZigiUnVfQTogJXVcbiIsIHJ1X2EpOworCXByaW50ZigiUnVfQjogJXVcbiIsIHJ1X2IpOworCisJbiA9IGFyZ2MgPiAxID8gYXRvaShhcmd2WzFdKSA6IDYwMDAxOworCWZvciAoaT0wO2k8bjtpKyspIHsKKwkJd2VydCA9IHJlc19yYW5kb21pZCgpOworCQlwcmludGYoIiV1XG4iLCB3ZXJ0KTsKKwl9CisJcmV0dXJuIDA7Cit9CisjZW5kaWYKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3MmFmNTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMKQEAgLTAsMCArMSw2MyBAQAorLyoJJE9wZW5CU0Q6IGZjbG9zZS5jLHYgMS45IDIwMDkvMTEvMDkgMDA6MTg6Mjcga3VydCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgImxvY2FsLmgiCisKK2ludAorZmNsb3NlKEZJTEUgKmZwKQoreworCWludCByOworCisJaWYgKGZwLT5fZmxhZ3MgPT0gMCkgewkvKiBub3Qgb3BlbiEgKi8KKwkJZXJybm8gPSBFQkFERjsKKwkJcmV0dXJuIChFT0YpOworCX0KKwlGTE9DS0ZJTEUoZnApOworCVdDSU9fRlJFRShmcCk7CisJciA9IGZwLT5fZmxhZ3MgJiBfX1NXUiA/IF9fc2ZsdXNoKGZwKSA6IDA7CisJaWYgKGZwLT5fY2xvc2UgIT0gTlVMTCAmJiAoKmZwLT5fY2xvc2UpKGZwLT5fY29va2llKSA8IDApCisJCXIgPSBFT0Y7CisJaWYgKGZwLT5fZmxhZ3MgJiBfX1NNQkYpCisJCWZyZWUoKGNoYXIgKilmcC0+X2JmLl9iYXNlKTsKKwlpZiAoSEFTVUIoZnApKQorCQlGUkVFVUIoZnApOworCWlmIChIQVNMQihmcCkpCisJCUZSRUVMQihmcCk7CisJZnAtPl9yID0gZnAtPl93ID0gMDsJLyogTWVzcyB1cCBpZiByZWFjY2Vzc2VkLiAqLworCWZwLT5fZmxhZ3MgPSAwOwkJLyogUmVsZWFzZSB0aGlzIEZJTEUgZm9yIHJldXNlLiAqLworCUZVTkxPQ0tGSUxFKGZwKTsKKwlyZXR1cm4gKHIpOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2Zkb3Blbi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2Zkb3Blbi5jCmluZGV4IDNlNDdmMmMuLjFjMGM4MTMgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mZG9wZW4uYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmRvcGVuLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogZmRvcGVuLmMsdiAxLjYgMjAwOC8wNC8yMSAxMjoyODozNSBvdHRvIEV4cCAkICovCisvKgkkT3BlbkJTRDogZmRvcGVuLmMsdiAxLjcgMjAxNC8wOC8zMSAwMjoyMToxOCBndWVudGhlciBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNjYsNiArNjYsNyBAQAogCWlmICgoZnAgPSBfX3NmcCgpKSA9PSBOVUxMKQogCQlyZXR1cm4gKE5VTEwpOwogCWZwLT5fZmxhZ3MgPSBmbGFnczsKKwogCS8qCiAJICogSWYgb3BlbmVkIGZvciBhcHBlbmRpbmcsIGJ1dCB1bmRlcmx5aW5nIGRlc2NyaXB0b3IgZG9lcyBub3QgaGF2ZQogCSAqIE9fQVBQRU5EIGJpdCBzZXQsIGFzc2VydCBfX1NBUFAgc28gdGhhdCBfX3N3cml0ZSgpIHdpbGwgbHNlZWsgdG8KQEAgLTczLDYgKzc0LDEzIEBACiAJICovCiAJaWYgKChvZmxhZ3MgJiBPX0FQUEVORCkgJiYgIShmZGZsYWdzICYgT19BUFBFTkQpKQogCQlmcC0+X2ZsYWdzIHw9IF9fU0FQUDsKKworCS8qCisJICogSWYgY2xvc2Utb24tZXhlYyB3YXMgcmVxdWVzdGVkLCB0aGVuIHR1cm4gaXQgb24gaWYgbm90IGFscmVhZHkKKwkgKi8KKwlpZiAoKG9mbGFncyAmIE9fQ0xPRVhFQykgJiYgISgodG1wID0gZmNudGwoZmQsIEZfR0VURkQpKSAmIEZEX0NMT0VYRUMpKQorCQlmY250bChmZCwgRl9TRVRGRCwgdG1wIHwgRkRfQ0xPRVhFQyk7CisKIAlmcC0+X2ZpbGUgPSBmZDsKIAlmcC0+X2Nvb2tpZSA9IGZwOwogCWZwLT5fcmVhZCA9IF9fc3JlYWQ7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldGxuLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldGxuLmMKaW5kZXggZDBjMDgwOS4uMTEwOWNmMiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZnZXRsbi5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mZ2V0bG4uYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBmZ2V0bG4uYyx2IDEuMTIgMjAxMy8xMS8xMiAwNzowNDowNiBkZXJhYWR0IEV4cCAkICovCisvKgkkT3BlbkJTRDogZmdldGxuLmMsdiAxLjEzIDIwMTUvMDEvMDUgMjE6NTg6NTIgbWlsbGVydCBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzgsMTkgKzM4LDEyIEBACiAKIC8qCiAgKiBFeHBhbmQgdGhlIGxpbmUgYnVmZmVyLiAgUmV0dXJuIC0xIG9uIGVycm9yLgotI2lmZGVmIG5vdGRlZgotICogVGhlIGBuZXcgc2l6ZScgZG9lcyBub3QgYWNjb3VudCBmb3IgYSB0ZXJtaW5hdGluZyAnXDAnLAotICogc28gd2UgYWRkIDEgaGVyZS4KLSNlbmRpZgogICovCiBzdGF0aWMgaW50CiBfX3NsYmV4cGFuZChGSUxFICpmcCwgc2l6ZV90IG5ld3NpemUpCiB7CiAJdm9pZCAqcDsKIAotI2lmZGVmIG5vdGRlZgotCSsrbmV3c2l6ZTsKLSNlbmRpZgogCWlmIChmcC0+X2xiLl9zaXplID49IG5ld3NpemUpCiAJCXJldHVybiAoMCk7CiAJaWYgKChwID0gcmVhbGxvYyhmcC0+X2xiLl9iYXNlLCBuZXdzaXplKSkgPT0gTlVMTCkKQEAgLTE0MSwxNCArMTM0LDExIEBACiAJfQogCSpsZW5wID0gbGVuOwogCXJldCA9IChjaGFyICopZnAtPl9sYi5fYmFzZTsKLSNpZmRlZiBub3RkZWYKLQlyZXRbbGVuXSA9ICdcMCc7Ci0jZW5kaWYKIAlGVU5MT0NLRklMRShmcCk7CiAJcmV0dXJuIChyZXQpOwogCiBlcnJvcjoKLQkqbGVucCA9IDA7CQkvKiA/Pz8gKi8KIAlGVU5MT0NLRklMRShmcCk7Ci0JcmV0dXJuIChOVUxMKTsJCS8qID8/PyAqLworCSpsZW5wID0gMDsKKwlyZXR1cm4gKE5VTEwpOwogfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZsYWdzLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNmRmNmRhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZsYWdzLmMKQEAgLTAsMCArMSwxMDUgQEAKKy8qCSRPcGVuQlNEOiBmbGFncy5jLHYgMS44IDIwMTQvMDgvMzEgMDI6MjE6MTggZ3VlbnRoZXIgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5CisgKiBDaHJpcyBUb3Jlay4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9maWxlLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgImxvY2FsLmgiCisKKy8qCisgKiBSZXR1cm4gdGhlIChzdGRpbykgZmxhZ3MgZm9yIGEgZ2l2ZW4gbW9kZS4gIFN0b3JlIHRoZSBmbGFncworICogdG8gYmUgcGFzc2VkIHRvIGFuIG9wZW4oKSBzeXNjYWxsIHRocm91Z2ggKm9wdHIuCisgKiBSZXR1cm4gMCBvbiBlcnJvci4KKyAqLworaW50CitfX3NmbGFncyhjb25zdCBjaGFyICptb2RlLCBpbnQgKm9wdHIpCit7CisJaW50IHJldCwgbSwgbzsKKworCXN3aXRjaCAoKm1vZGUrKykgeworCisJY2FzZSAncic6CS8qIG9wZW4gZm9yIHJlYWRpbmcgKi8KKwkJcmV0ID0gX19TUkQ7CisJCW0gPSBPX1JET05MWTsKKwkJbyA9IDA7CisJCWJyZWFrOworCisJY2FzZSAndyc6CS8qIG9wZW4gZm9yIHdyaXRpbmcgKi8KKwkJcmV0ID0gX19TV1I7CisJCW0gPSBPX1dST05MWTsKKwkJbyA9IE9fQ1JFQVQgfCBPX1RSVU5DOworCQlicmVhazsKKworCWNhc2UgJ2EnOgkvKiBvcGVuIGZvciBhcHBlbmRpbmcgKi8KKwkJcmV0ID0gX19TV1I7CisJCW0gPSBPX1dST05MWTsKKwkJbyA9IE9fQ1JFQVQgfCBPX0FQUEVORDsKKwkJYnJlYWs7CisKKwlkZWZhdWx0OgkvKiBpbGxlZ2FsIG1vZGUgKi8KKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoMCk7CisJfQorCisJd2hpbGUgKCptb2RlICE9ICdcMCcpIAorCQlzd2l0Y2ggKCptb2RlKyspIHsKKwkJY2FzZSAnYic6CisJCQlicmVhazsKKwkJY2FzZSAnKyc6CisJCQlyZXQgPSBfX1NSVzsKKwkJCW0gPSBPX1JEV1I7CisJCQlicmVhazsKKwkJY2FzZSAnZSc6CisJCQlvIHw9IE9fQ0xPRVhFQzsKKwkJCWJyZWFrOworCQljYXNlICd4JzoKKwkJCWlmIChvICYgT19DUkVBVCkKKwkJCQlvIHw9IE9fRVhDTDsKKwkJCWJyZWFrOworCQlkZWZhdWx0OgorCQkJLyoKKwkJCSAqIExvdHMgb2Ygc29mdHdhcmUgcGFzc2VzIG90aGVyIGV4dGVuc2lvbiBtb2RlCisJCQkgKiBsZXR0ZXJzLCBsaWtlIFdpbmRvdydzICd0JworCQkJICovCisjaWYgMAorCQkJZXJybm8gPSBFSU5WQUw7CisJCQlyZXR1cm4gKDApOworI2Vsc2UKKwkJCWJyZWFrOworI2VuZGlmCisJCX0KKworCSpvcHRyID0gbSB8IG87CisJcmV0dXJuIChyZXQpOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZtZW1vcGVuLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZm1lbW9wZW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Y2RhMDQ3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZtZW1vcGVuLmMKQEAgLTAsMCArMSwxODMgQEAKKy8qCSRPcGVuQlNEOiBmbWVtb3Blbi5jLHYgMS4yIDIwMTMvMDMvMjcgMTU6MDY6MjUgbXBpIEV4cCAkCSovCisKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMTEgTWFydGluIFBpZXVjaG90IDxtcGlAb3BlbmJzZC5vcmc+CisgKiBDb3B5cmlnaHQgKGMpIDIwMDkgVGVkIFVuYW5nc3QKKyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKKyAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCisgKiBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorICogQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworICogV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCisgKiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorICogT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKyAqLworCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSAibG9jYWwuaCIKKworc3RydWN0IHN0YXRlIHsKKwljaGFyCQkqc3RyaW5nOwkvKiBhY3R1YWwgc3RyZWFtICovCisJc2l6ZV90CQkgcG9zOwkJLyogY3VycmVudCBwb3NpdGlvbiAqLworCXNpemVfdAkJIHNpemU7CQkvKiBhbGxvY2F0ZWQgc2l6ZSAqLworCXNpemVfdAkJIGxlbjsJCS8qIGxlbmd0aCBvZiB0aGUgZGF0YSAqLworCWludAkJIHVwZGF0ZTsJLyogb3BlbiBmb3IgdXBkYXRlICovCit9OworCitzdGF0aWMgaW50CitmbWVtb3Blbl9yZWFkKHZvaWQgKnYsIGNoYXIgKmIsIGludCBsKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCWludAkJIGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgbCAmJiBpICsgc3QtPnBvcyA8IHN0LT5sZW47IGkrKykKKwkJYltpXSA9IHN0LT5zdHJpbmdbc3QtPnBvcyArIGldOworCXN0LT5wb3MgKz0gaTsKKworCXJldHVybiAoaSk7Cit9CisKK3N0YXRpYyBpbnQKK2ZtZW1vcGVuX3dyaXRlKHZvaWQgKnYsIGNvbnN0IGNoYXIgKmIsIGludCBsKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCWludAkJaTsKKworCWZvciAoaSA9IDA7IGkgPCBsICYmIGkgKyBzdC0+cG9zIDwgc3QtPnNpemU7IGkrKykKKwkJc3QtPnN0cmluZ1tzdC0+cG9zICsgaV0gPSBiW2ldOworCXN0LT5wb3MgKz0gaTsKKworCWlmIChzdC0+cG9zID49IHN0LT5sZW4pIHsKKwkJc3QtPmxlbiA9IHN0LT5wb3M7CisKKwkJaWYgKHN0LT5sZW4gPCBzdC0+c2l6ZSkKKwkJCXN0LT5zdHJpbmdbc3QtPmxlbl0gPSAnXDAnOworCQllbHNlIGlmICghc3QtPnVwZGF0ZSkKKwkJCXN0LT5zdHJpbmdbc3QtPnNpemUgLSAxXSA9ICdcMCc7CisJfQorCisJcmV0dXJuIChpKTsKK30KKworc3RhdGljIGZwb3NfdAorZm1lbW9wZW5fc2Vlayh2b2lkICp2LCBmcG9zX3Qgb2ZmLCBpbnQgd2hlbmNlKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCXNzaXplX3QJCSBiYXNlID0gMDsKKworCXN3aXRjaCAod2hlbmNlKSB7CisJY2FzZSBTRUVLX1NFVDoKKwkJYnJlYWs7CisJY2FzZSBTRUVLX0NVUjoKKwkJYmFzZSA9IHN0LT5wb3M7CisJCWJyZWFrOworCWNhc2UgU0VFS19FTkQ6CisJCWJhc2UgPSBzdC0+bGVuOworCQlicmVhazsKKwl9CisKKwlpZiAob2ZmID4gc3QtPnNpemUgLSBiYXNlIHx8IG9mZiA8IC1iYXNlKSB7CisJCWVycm5vID0gRU9WRVJGTE9XOworCQlyZXR1cm4gKC0xKTsKKwl9CisKKwlzdC0+cG9zID0gYmFzZSArIG9mZjsKKworCXJldHVybiAoc3QtPnBvcyk7Cit9CisKK3N0YXRpYyBpbnQKK2ZtZW1vcGVuX2Nsb3NlKHZvaWQgKnYpCit7CisJZnJlZSh2KTsKKworCXJldHVybiAoMCk7Cit9CisKK3N0YXRpYyBpbnQKK2ZtZW1vcGVuX2Nsb3NlX2ZyZWUodm9pZCAqdikKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0ID0gdjsKKworCWZyZWUoc3QtPnN0cmluZyk7CisJZnJlZShzdCk7CisKKwlyZXR1cm4gKDApOworfQorCitGSUxFICoKK2ZtZW1vcGVuKHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKm1vZGUpCit7CisJc3RydWN0IHN0YXRlCSpzdDsKKwlGSUxFCQkqZnA7CisJaW50CQkgZmxhZ3MsIG9mbGFnczsKKworCWlmIChzaXplID09IDApIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJaWYgKChmbGFncyA9IF9fc2ZsYWdzKG1vZGUsICZvZmxhZ3MpKSA9PSAwKSB7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCWlmIChidWYgPT0gTlVMTCAmJiAoKG9mbGFncyAmIE9fUkRXUikgPT0gMCkpIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJaWYgKChzdCA9IG1hbGxvYyhzaXplb2YoKnN0KSkpID09IE5VTEwpCisJCXJldHVybiAoTlVMTCk7CisKKwlpZiAoKGZwID0gX19zZnAoKSkgPT0gTlVMTCkgeworCQlmcmVlKHN0KTsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwlzdC0+cG9zID0gMDsKKwlzdC0+bGVuID0gKG9mbGFncyAmIE9fV1JPTkxZKSA/IDAgOiBzaXplOworCXN0LT5zaXplID0gc2l6ZTsKKwlzdC0+dXBkYXRlID0gb2ZsYWdzICYgT19SRFdSOworCisJaWYgKGJ1ZiA9PSBOVUxMKSB7CisJCWlmICgoc3QtPnN0cmluZyA9IG1hbGxvYyhzaXplKSkgPT0gTlVMTCkgeworCQkJZnJlZShzdCk7CisJCQlmcC0+X2ZsYWdzID0gMDsKKwkJCXJldHVybiAoTlVMTCk7CisJCX0KKwkJKnN0LT5zdHJpbmcgPSAnXDAnOworCX0gZWxzZSB7CisJCXN0LT5zdHJpbmcgPSAoY2hhciAqKWJ1ZjsKKworCQlpZiAob2ZsYWdzICYgT19UUlVOQykKKwkJCSpzdC0+c3RyaW5nID0gJ1wwJzsKKworCQlpZiAob2ZsYWdzICYgT19BUFBFTkQpIHsKKwkJCWNoYXIJKnA7CisKKwkJCWlmICgocCA9IG1lbWNocihzdC0+c3RyaW5nLCAnXDAnLCBzaXplKSkgIT0gTlVMTCkKKwkJCQlzdC0+cG9zID0gc3QtPmxlbiA9IChwIC0gc3QtPnN0cmluZyk7CisJCQllbHNlCisJCQkJc3QtPnBvcyA9IHN0LT5sZW4gPSBzaXplOworCQl9CisJfQorCisJZnAtPl9mbGFncyA9IChzaG9ydClmbGFnczsKKwlmcC0+X2ZpbGUgPSAtMTsKKwlmcC0+X2Nvb2tpZSA9ICh2b2lkICopc3Q7CisJZnAtPl9yZWFkID0gKGZsYWdzICYgX19TV1IpID8gTlVMTCA6IGZtZW1vcGVuX3JlYWQ7CisJZnAtPl93cml0ZSA9IChmbGFncyAmIF9fU1JEKSA/IE5VTEwgOiBmbWVtb3Blbl93cml0ZTsKKwlmcC0+X3NlZWsgPSBmbWVtb3Blbl9zZWVrOworCWZwLT5fY2xvc2UgPSAoYnVmID09IE5VTEwpID8gZm1lbW9wZW5fY2xvc2VfZnJlZSA6IGZtZW1vcGVuX2Nsb3NlOworCisJcmV0dXJuIChmcCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZm9wZW4uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0NjUwNTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZm9wZW4uYwpAQCAtMCwwICsxLDg2IEBACisvKgkkT3BlbkJTRDogZm9wZW4uYyx2IDEuNyAyMDA4LzA1LzAzIDE4OjQ2OjQxIGNobCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlICJsb2NhbC5oIgorCitGSUxFICoKK2ZvcGVuKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKm1vZGUpCit7CisJRklMRSAqZnA7CisJaW50IGY7CisJaW50IGZsYWdzLCBvZmxhZ3M7CisKKwlpZiAoKGZsYWdzID0gX19zZmxhZ3MobW9kZSwgJm9mbGFncykpID09IDApCisJCXJldHVybiAoTlVMTCk7CisJaWYgKChmcCA9IF9fc2ZwKCkpID09IE5VTEwpCisJCXJldHVybiAoTlVMTCk7CisJaWYgKChmID0gb3BlbihmaWxlLCBvZmxhZ3MsIERFRkZJTEVNT0RFKSkgPCAwKSB7CisJCWZwLT5fZmxhZ3MgPSAwOwkJCS8qIHJlbGVhc2UgKi8KKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwkvKiBfZmlsZSBpcyBvbmx5IGEgc2hvcnQgKi8KKwlpZiAoZiA+IFNIUlRfTUFYKSB7CisJCWZwLT5fZmxhZ3MgPSAwOwkJCS8qIHJlbGVhc2UgKi8KKwkJY2xvc2UoZik7CisJCWVycm5vID0gRU1GSUxFOworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCWZwLT5fZmlsZSA9IGY7CisJZnAtPl9mbGFncyA9IGZsYWdzOworCWZwLT5fY29va2llID0gZnA7CisJZnAtPl9yZWFkID0gX19zcmVhZDsKKwlmcC0+X3dyaXRlID0gX19zd3JpdGU7CisJZnAtPl9zZWVrID0gX19zc2VlazsKKwlmcC0+X2Nsb3NlID0gX19zY2xvc2U7CisKKwkvKgorCSAqIFdoZW4gb3BlbmluZyBpbiBhcHBlbmQgbW9kZSwgZXZlbiB0aG91Z2ggd2UgdXNlIE9fQVBQRU5ELAorCSAqIHdlIG5lZWQgdG8gc2VlayB0byB0aGUgZW5kIHNvIHRoYXQgZnRlbGwoKSBnZXRzIHRoZSByaWdodAorCSAqIGFuc3dlci4gIElmIHRoZSB1c2VyIHRoZW4gYWx0ZXJzIHRoZSBzZWVrIHBvaW50ZXIsIG9yCisJICogdGhlIGZpbGUgZXh0ZW5kcywgdGhpcyB3aWxsIGZhaWwsIGJ1dCB0aGVyZSBpcyBub3QgbXVjaAorCSAqIHdlIGNhbiBkbyBhYm91dCB0aGlzLiAgKFdlIGNvdWxkIHNldCBfX1NBUFAgYW5kIGNoZWNrIGluCisJICogZnNlZWsgYW5kIGZ0ZWxsLikKKwkgKi8KKwlpZiAob2ZsYWdzICYgT19BUFBFTkQpCisJCSh2b2lkKSBfX3NzZWVrKCh2b2lkICopZnAsIChmcG9zX3QpMCwgU0VFS19FTkQpOworCXJldHVybiAoZnApOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZyZW9wZW4uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mcmVvcGVuLmMKaW5kZXggMzE1OGZiMS4uODI3MTdiMSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZyZW9wZW4uYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZnJlb3Blbi5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGZyZW9wZW4uYyx2IDEuMTMgMjAwOS8xMS8wOSAwMDoxODoyNyBrdXJ0IEV4cCAkICovCisvKgkkT3BlbkJTRDogZnJlb3Blbi5jLHYgMS4xNCAyMDE0LzA4LzMxIDAyOjIxOjE4IGd1ZW50aGVyIEV4cCAkICovCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MwogICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC0xMzQsNyArMTM0LDcgQEAKIAkgKiBhc3N1bWUgc3RkZXJyIGlzIGFsd2F5cyBmZCBTVERFUlJfRklMRU5PLCBldmVuIGlmIGJlaW5nIGZyZW9wZW4nZC4KIAkgKi8KIAlpZiAod2FudGZkID49IDAgJiYgZiAhPSB3YW50ZmQpIHsKLQkJaWYgKGR1cDIoZiwgd2FudGZkKSA+PSAwKSB7CisJCWlmIChkdXAzKGYsIHdhbnRmZCwgb2ZsYWdzICYgT19DTE9FWEVDKSA+PSAwKSB7CiAJCQkodm9pZCkgY2xvc2UoZik7CiAJCQlmID0gd2FudGZkOwogCQl9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZ2V0ZGVsaW0uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXRkZWxpbS5jCmluZGV4IGRjZGUwYzMuLjVlNTgzY2IgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXRkZWxpbS5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXRkZWxpbS5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGdldGRlbGltLmMsdiAxLjEgMjAxMi8wMy8yMSAyMzo0NDozNSBmZ3NjaCBFeHAgJAkqLworLyoJJE9wZW5CU0Q6IGdldGRlbGltLmMsdiAxLjIgMjAxNC8xMC8xNiAxNzozMTo1MSBtaWxsZXJ0IEV4cCAkCSovCiAvKiAkTmV0QlNEOiBnZXRkZWxpbS5jLHYgMS4xMyAyMDExLzA3LzIyIDIzOjEyOjMwIGpvZXJnIEV4cCAkICovCiAKIC8qCkBAIC03OCwxMyArNzgsMTIgQEAKIAkJZWxzZQogCQkJbGVuID0gKHAgLSBmcC0+X3ApICsgMTsKIAotCQluZXdsZW4gPSBvZmYgKyBsZW47CiAJCS8qIEVuc3VyZSB3ZSBjYW4gaGFuZGxlIGl0ICovCi0JCWlmIChuZXdsZW4gPCBvZmYgfHwgbmV3bGVuID4gU1NJWkVfTUFYKSB7CisJCWlmIChvZmYgPiBTU0laRV9NQVggfHwgbGVuICsgMSA+IFNTSVpFX01BWCAtIG9mZikgewogCQkJZXJybm8gPSBFT1ZFUkZMT1c7CiAJCQlnb3RvIGVycm9yOwogCQl9Ci0JCW5ld2xlbisrOyAvKiByZXNlcnZlIHNwYWNlIGZvciB0aGUgTlVMTCB0ZXJtaW5hdG9yICovCisJCW5ld2xlbiA9IG9mZiArIGxlbiArIDE7IC8qIHJlc2VydmUgc3BhY2UgZm9yIE5VTCB0ZXJtaW5hdG9yICovCiAJCWlmIChuZXdsZW4gPiAqYnVmbGVuKSB7CiAJCQlpZiAobmV3bGVuIDwgTUlOQlVGKQogCQkJCW5ld2xlbiA9IE1JTkJVRjsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9tYWtlYnVmLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vbWFrZWJ1Zi5jCmluZGV4IGQ0N2UyN2MuLjU2ZTVmMjEgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9tYWtlYnVmLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21ha2VidWYuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBtYWtlYnVmLmMsdiAxLjggMjAwNS8xMi8yOCAxODo1MDoyMiBtaWxsZXJ0IEV4cCAkICovCisvKgkkT3BlbkJTRDogbWFrZWJ1Zi5jLHYgMS45IDIwMTUvMDEvMTMgMDc6MTg6MjEgZ3VlbnRoZXIgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCiAgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTY1LDcgKzY1LDYgQEAKIAkJZnAtPl9iZi5fc2l6ZSA9IDE7CiAJCXJldHVybjsKIAl9Ci0JX19hdGV4aXRfcmVnaXN0ZXJfY2xlYW51cChfY2xlYW51cCk7CiAJZmxhZ3MgfD0gX19TTUJGOwogCWZwLT5fYmYuX2Jhc2UgPSBmcC0+X3AgPSBwOwogCWZwLT5fYmYuX3NpemUgPSBzaXplOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21rdGVtcC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21rdGVtcC5jCmluZGV4IGNiMTU0YzQuLjk1NjYwOGMgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9ta3RlbXAuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vbWt0ZW1wLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogbWt0ZW1wLmMsdiAxLjMzIDIwMTQvMDUvMDYgMjI6NTU6MjcgbWlsbGVydCBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IG1rdGVtcC5jLHYgMS4zNSAyMDE0LzEwLzMxIDE1OjU0OjE0IG1pbGxlcnQgRXhwICQgKi8KIC8qCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTYtMTk5OCwgMjAwOCBUaGVvIGRlIFJhYWR0CiAgKiBDb3B5cmlnaHQgKGMpIDE5OTcsIDIwMDgtMjAwOSBUb2RkIEMuIE1pbGxlcgpAQCAtMzUsMTUgKzM1LDE3IEBACiAjZGVmaW5lIE5VTV9DSEFSUwkoc2l6ZW9mKFRFTVBDSEFSUykgLSAxKQogI2RlZmluZSBNSU5fWAkJNgogCisjZGVmaW5lIE1LT1RFTVBfRkxBR1MJKE9fQVBQRU5EIHwgT19DTE9FWEVDIHwgT19EU1lOQyB8IE9fUlNZTkMgfCBPX1NZTkMpCisKICNpZm5kZWYgbml0ZW1zCiAjZGVmaW5lIG5pdGVtcyhfYSkJKHNpemVvZigoX2EpKSAvIHNpemVvZigoX2EpWzBdKSkKICNlbmRpZgogCiBzdGF0aWMgaW50Ci1ta3RlbXBfaW50ZXJuYWwoY2hhciAqcGF0aCwgaW50IHNsZW4sIGludCBtb2RlKQorbWt0ZW1wX2ludGVybmFsKGNoYXIgKnBhdGgsIGludCBzbGVuLCBpbnQgbW9kZSwgaW50IGZsYWdzKQogewogCWNoYXIgKnN0YXJ0LCAqY3AsICplcDsKLQljb25zdCBjaGFyICp0ZW1wY2hhcnMgPSBURU1QQ0hBUlM7CisJY29uc3QgY2hhciB0ZW1wY2hhcnNbXSA9IFRFTVBDSEFSUzsKIAl1bnNpZ25lZCBpbnQgdHJpZXM7CiAJc3RydWN0IHN0YXQgc2I7CiAJc2l6ZV90IGxlbjsKQEAgLTYzLDYgKzY1LDEyIEBACiAJCXJldHVybigtMSk7CiAJfQogCisJaWYgKGZsYWdzICYgfk1LT1RFTVBfRkxBR1MpIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybigtMSk7CisJfQorCWZsYWdzIHw9IE9fQ1JFQVQgfCBPX0VYQ0wgfCBPX1JEV1I7CisKIAl0cmllcyA9IElOVF9NQVg7CiAJZG8gewogCQljcCA9IHN0YXJ0OwpAQCAtODUsNyArOTMsNyBAQAogCQkJCXJldHVybihlcnJubyA9PSBFTk9FTlQgPyAwIDogLTEpOwogCQkJYnJlYWs7CiAJCWNhc2UgTUtURU1QX0ZJTEU6Ci0JCQlmZCA9IG9wZW4ocGF0aCwgT19DUkVBVHxPX0VYQ0x8T19SRFdSLCBTX0lSVVNSfFNfSVdVU1IpOworCQkJZmQgPSBvcGVuKHBhdGgsIGZsYWdzLCBTX0lSVVNSfFNfSVdVU1IpOwogCQkJaWYgKGZkICE9IC0xIHx8IGVycm5vICE9IEVFWElTVCkKIAkJCQlyZXR1cm4oZmQpOwogCQkJYnJlYWs7CkBAIC0xMDcsNyArMTE1LDcgQEAKIGNoYXIgKgogX21rdGVtcChjaGFyICpwYXRoKQogewotCWlmIChta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX05BTUUpID09IC0xKQorCWlmIChta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX05BTUUsIDApID09IC0xKQogCQlyZXR1cm4oTlVMTCk7CiAJcmV0dXJuKHBhdGgpOwogfQpAQCAtMTIyLDE1ICsxMzAsMjcgQEAKIH0KIAogaW50Citta29zdGVtcHMoY2hhciAqcGF0aCwgaW50IHNsZW4sIGludCBmbGFncykKK3sKKwlyZXR1cm4obWt0ZW1wX2ludGVybmFsKHBhdGgsIHNsZW4sIE1LVEVNUF9GSUxFLCBmbGFncykpOworfQorCitpbnQKIG1rc3RlbXAoY2hhciAqcGF0aCkKIHsKLQlyZXR1cm4obWt0ZW1wX2ludGVybmFsKHBhdGgsIDAsIE1LVEVNUF9GSUxFKSk7CisJcmV0dXJuKG1rdGVtcF9pbnRlcm5hbChwYXRoLCAwLCBNS1RFTVBfRklMRSwgMCkpOworfQorCitpbnQKK21rb3N0ZW1wKGNoYXIgKnBhdGgsIGludCBmbGFncykKK3sKKwlyZXR1cm4obWt0ZW1wX2ludGVybmFsKHBhdGgsIDAsIE1LVEVNUF9GSUxFLCBmbGFncykpOwogfQogCiBpbnQKIG1rc3RlbXBzKGNoYXIgKnBhdGgsIGludCBzbGVuKQogewotCXJldHVybihta3RlbXBfaW50ZXJuYWwocGF0aCwgc2xlbiwgTUtURU1QX0ZJTEUpKTsKKwlyZXR1cm4obWt0ZW1wX2ludGVybmFsKHBhdGgsIHNsZW4sIE1LVEVNUF9GSUxFLCAwKSk7CiB9CiAKIGNoYXIgKgpAQCAtMTM4LDYgKzE1OCw2IEBACiB7CiAJaW50IGVycm9yOwogCi0JZXJyb3IgPSBta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX0RJUik7CisJZXJyb3IgPSBta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX0RJUiwgMCk7CiAJcmV0dXJuKGVycm9yID8gTlVMTCA6IHBhdGgpOwogfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL29wZW5fbWVtc3RyZWFtLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vb3Blbl9tZW1zdHJlYW0uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NjEwNTM1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL29wZW5fbWVtc3RyZWFtLmMKQEAgLTAsMCArMSwxNTggQEAKKy8qCSRPcGVuQlNEOiBvcGVuX21lbXN0cmVhbS5jLHYgMS4zIDIwMTMvMDQvMDMgMDM6MTE6NTMgZ3VlbnRoZXIgRXhwICQJKi8KKworLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMSBNYXJ0aW4gUGlldWNob3QgPG1waUBvcGVuYnNkLm9yZz4KKyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKKyAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCisgKiBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorICogQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworICogV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCisgKiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorICogT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlICJsb2NhbC5oIgorCitzdHJ1Y3Qgc3RhdGUgeworCWNoYXIJCSAqc3RyaW5nOwkvKiBhY3R1YWwgc3RyZWFtICovCisJY2hhcgkJKipwYnVmOwkJLyogcG9pbnQgdG8gdGhlIHN0cmVhbSAqLworCXNpemVfdAkJICpwc2l6ZTsJLyogcG9pbnQgdG8gbWluKHBvcywgbGVuKSAqLworCXNpemVfdAkJICBwb3M7CQkvKiBjdXJyZW50IHBvc2l0aW9uICovCisJc2l6ZV90CQkgIHNpemU7CQkvKiBudW1iZXIgb2YgYWxsb2NhdGVkIGNoYXIgKi8KKwlzaXplX3QJCSAgbGVuOwkJLyogbGVuZ3RoIG9mIHRoZSBkYXRhICovCit9OworCitzdGF0aWMgaW50CittZW1zdHJlYW1fd3JpdGUodm9pZCAqdiwgY29uc3QgY2hhciAqYiwgaW50IGwpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisJY2hhcgkJKnA7CisJc2l6ZV90CQkgaSwgZW5kOworCisJZW5kID0gKHN0LT5wb3MgKyBsKTsKKworCWlmIChlbmQgPj0gc3QtPnNpemUpIHsKKwkJLyogMS42IGlzICh2ZXJ5KSBjbG9zZSB0byB0aGUgZ29sZGVuIHJhdGlvLiAqLworCQlzaXplX3QJc3ogPSBzdC0+c2l6ZSAqIDggLyA1OworCisJCWlmIChzeiA8IGVuZCArIDEpCisJCQlzeiA9IGVuZCArIDE7CisJCXAgPSByZWFsbG9jKHN0LT5zdHJpbmcsIHN6KTsKKwkJaWYgKCFwKQorCQkJcmV0dXJuICgtMSk7CisJCWJ6ZXJvKHAgKyBzdC0+c2l6ZSwgc3ogLSBzdC0+c2l6ZSk7CisJCSpzdC0+cGJ1ZiA9IHN0LT5zdHJpbmcgPSBwOworCQlzdC0+c2l6ZSA9IHN6OworCX0KKworCWZvciAoaSA9IDA7IGkgPCBsOyBpKyspCisJCXN0LT5zdHJpbmdbc3QtPnBvcyArIGldID0gYltpXTsKKwlzdC0+cG9zICs9IGw7CisKKwlpZiAoc3QtPnBvcyA+IHN0LT5sZW4pIHsKKwkJc3QtPmxlbiA9IHN0LT5wb3M7CisJCXN0LT5zdHJpbmdbc3QtPmxlbl0gPSAnXDAnOworCX0KKworCSpzdC0+cHNpemUgPSBzdC0+cG9zOworCisJcmV0dXJuIChpKTsKK30KKworc3RhdGljIGZwb3NfdAorbWVtc3RyZWFtX3NlZWsodm9pZCAqdiwgZnBvc190IG9mZiwgaW50IHdoZW5jZSkKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0ID0gdjsKKwlzc2l6ZV90CQkgYmFzZSA9IDA7CisKKwlzd2l0Y2ggKHdoZW5jZSkgeworCWNhc2UgU0VFS19TRVQ6CisJCWJyZWFrOworCWNhc2UgU0VFS19DVVI6CisJCWJhc2UgPSBzdC0+cG9zOworCQlicmVhazsKKwljYXNlIFNFRUtfRU5EOgorCQliYXNlID0gc3QtPmxlbjsKKwkJYnJlYWs7CisJfQorCisJaWYgKG9mZiA+IFNJWkVfTUFYIC0gYmFzZSB8fCBvZmYgPCAtYmFzZSkgeworCQllcnJubyA9IEVPVkVSRkxPVzsKKwkJcmV0dXJuICgtMSk7CisJfQorCisJc3QtPnBvcyA9IGJhc2UgKyBvZmY7CisJKnN0LT5wc2l6ZSA9IE1JTihzdC0+cG9zLCBzdC0+bGVuKTsKKworCXJldHVybiAoc3QtPnBvcyk7Cit9CisKK3N0YXRpYyBpbnQKK21lbXN0cmVhbV9jbG9zZSh2b2lkICp2KQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCisJZnJlZShzdCk7CisKKwlyZXR1cm4gKDApOworfQorCitGSUxFICoKK29wZW5fbWVtc3RyZWFtKGNoYXIgKipwYnVmLCBzaXplX3QgKnBzaXplKQoreworCXN0cnVjdCBzdGF0ZQkqc3Q7CisJRklMRQkJKmZwOworCisJaWYgKHBidWYgPT0gTlVMTCB8fCBwc2l6ZSA9PSBOVUxMKSB7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCWlmICgoc3QgPSBtYWxsb2Moc2l6ZW9mKCpzdCkpKSA9PSBOVUxMKQorCQlyZXR1cm4gKE5VTEwpOworCisJaWYgKChmcCA9IF9fc2ZwKCkpID09IE5VTEwpIHsKKwkJZnJlZShzdCk7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJc3QtPnNpemUgPSBCVUZTSVo7CisJaWYgKChzdC0+c3RyaW5nID0gY2FsbG9jKDEsIHN0LT5zaXplKSkgPT0gTlVMTCkgeworCQlmcmVlKHN0KTsKKwkJZnAtPl9mbGFncyA9IDA7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJKnN0LT5zdHJpbmcgPSAnXDAnOworCXN0LT5wb3MgPSAwOworCXN0LT5sZW4gPSAwOworCXN0LT5wYnVmID0gcGJ1ZjsKKwlzdC0+cHNpemUgPSBwc2l6ZTsKKworCSpwYnVmID0gc3QtPnN0cmluZzsKKwkqcHNpemUgPSBzdC0+bGVuOworCisJZnAtPl9mbGFncyA9IF9fU1dSOworCWZwLT5fZmlsZSA9IC0xOworCWZwLT5fY29va2llID0gc3Q7CisJZnAtPl9yZWFkID0gTlVMTDsKKwlmcC0+X3dyaXRlID0gbWVtc3RyZWFtX3dyaXRlOworCWZwLT5fc2VlayA9IG1lbXN0cmVhbV9zZWVrOworCWZwLT5fY2xvc2UgPSBtZW1zdHJlYW1fY2xvc2U7CisJX1NFVF9PUklFTlRBVElPTihmcCwgLTEpOworCisJcmV0dXJuIChmcCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vb3Blbl93bWVtc3RyZWFtLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vb3Blbl93bWVtc3RyZWFtLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzkxYTk0NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX3dtZW1zdHJlYW0uYwpAQCAtMCwwICsxLDE2OSBAQAorLyoJJE9wZW5CU0Q6IG9wZW5fd21lbXN0cmVhbS5jLHYgMS40IDIwMTQvMTAvMDggMDU6Mjg6MTkgZGVyYWFkdCBFeHAgJAkqLworCisvKgorICogQ29weXJpZ2h0IChjKSAyMDExIE1hcnRpbiBQaWV1Y2hvdCA8bXBpQG9wZW5ic2Qub3JnPgorICoKKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorICogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcy4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMKKyAqIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKKyAqIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SCisgKiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTCisgKiBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4KKyAqIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GCisgKiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHdjaGFyLmg+CisjaW5jbHVkZSAibG9jYWwuaCIKKworc3RydWN0IHN0YXRlIHsKKwl3Y2hhcl90CQkgKnN0cmluZzsJLyogYWN0dWFsIHN0cmVhbSAqLworCXdjaGFyX3QJCSoqcGJ1ZjsJCS8qIHBvaW50IHRvIHRoZSBzdHJlYW0gKi8KKwlzaXplX3QJCSAqcHNpemU7CS8qIHBvaW50IHRvIG1pbihwb3MsIGxlbikgKi8KKwlzaXplX3QJCSAgcG9zOwkJLyogY3VycmVudCBwb3NpdGlvbiAqLworCXNpemVfdAkJICBzaXplOwkJLyogbnVtYmVyIG9mIGFsbG9jYXRlZCB3Y2hhcl90ICovCisJc2l6ZV90CQkgIGxlbjsJCS8qIGxlbmd0aCBvZiB0aGUgZGF0YSAqLworCW1ic3RhdGVfdAkgIG1iczsJCS8qIGNvbnZlcnNpb24gc3RhdGUgb2YgdGhlIHN0cmVhbSAqLworfTsKKworc3RhdGljIGludAord21lbXN0cmVhbV93cml0ZSh2b2lkICp2LCBjb25zdCBjaGFyICpiLCBpbnQgbCkKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0ID0gdjsKKwl3Y2hhcl90CQkqcDsKKwlzaXplX3QJCSBubWMsIGxlbiwgZW5kOworCisJZW5kID0gKHN0LT5wb3MgKyBsKTsKKworCWlmIChlbmQgPj0gc3QtPnNpemUpIHsKKwkJLyogMS42IGlzICh2ZXJ5KSBjbG9zZSB0byB0aGUgZ29sZGVuIHJhdGlvLiAqLworCQlzaXplX3QJc3ogPSBzdC0+c2l6ZSAqIDggLyA1OworCisJCWlmIChzeiA8IGVuZCArIDEpCisJCQlzeiA9IGVuZCArIDE7CisJCXAgPSByZWFsbG9jYXJyYXkoc3QtPnN0cmluZywgc3osIHNpemVvZih3Y2hhcl90KSk7CisJCWlmICghcCkKKwkJCXJldHVybiAoLTEpOworCQliemVybyhwICsgc3QtPnNpemUsIChzeiAtIHN0LT5zaXplKSAqIHNpemVvZih3Y2hhcl90KSk7CisJCSpzdC0+cGJ1ZiA9IHN0LT5zdHJpbmcgPSBwOworCQlzdC0+c2l6ZSA9IHN6OworCX0KKworCW5tYyA9IChzdC0+c2l6ZSAtIHN0LT5wb3MpICogc2l6ZW9mKHdjaGFyX3QpOworCWxlbiA9IG1ic25ydG93Y3Moc3QtPnN0cmluZyArIHN0LT5wb3MsICZiLCBubWMsIGwsICZzdC0+bWJzKTsKKwlpZiAobGVuID09IChzaXplX3QpLTEpCisJCXJldHVybiAoLTEpOworCXN0LT5wb3MgKz0gbGVuOworCisJaWYgKHN0LT5wb3MgPiBzdC0+bGVuKSB7CisJCXN0LT5sZW4gPSBzdC0+cG9zOworCQlzdC0+c3RyaW5nW3N0LT5sZW5dID0gTCdcMCc7CisJfQorCisJKnN0LT5wc2l6ZSA9IHN0LT5wb3M7CisKKwlyZXR1cm4gKGxlbik7Cit9CisKK3N0YXRpYyBmcG9zX3QKK3dtZW1zdHJlYW1fc2Vlayh2b2lkICp2LCBmcG9zX3Qgb2ZmLCBpbnQgd2hlbmNlKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCXNzaXplX3QJCSBiYXNlID0gMDsKKworCXN3aXRjaCAod2hlbmNlKSB7CisJY2FzZSBTRUVLX1NFVDoKKwkJYnJlYWs7CisJY2FzZSBTRUVLX0NVUjoKKwkJYmFzZSA9IHN0LT5wb3M7CisJCWJyZWFrOworCWNhc2UgU0VFS19FTkQ6CisJCWJhc2UgPSBzdC0+bGVuOworCQlicmVhazsKKwl9CisKKwlpZiAob2ZmID4gKFNJWkVfTUFYIC8gc2l6ZW9mKHdjaGFyX3QpKSAtIGJhc2UgfHwgb2ZmIDwgLWJhc2UpIHsKKwkJZXJybm8gPSBFT1ZFUkZMT1c7CisJCXJldHVybiAoLTEpOworCX0KKworCS8qCisJICogWFhYIENsZWFyaW5nIG1icyBoZXJlIGludmFsaWRhdGVzIHNoaWZ0IHN0YXRlIGZvciBzdGF0ZS0KKwkgKiBkZXBlbmRlbnQgZW5jb2RpbmdzLCBidXQgdGhleSBhcmUgbm90ICh5ZXQpIHN1cHBvcnRlZC4KKwkgKi8KKwliemVybygmc3QtPm1icywgc2l6ZW9mKHN0LT5tYnMpKTsKKworCXN0LT5wb3MgPSBiYXNlICsgb2ZmOworCSpzdC0+cHNpemUgPSBNSU4oc3QtPnBvcywgc3QtPmxlbik7CisKKwlyZXR1cm4gKHN0LT5wb3MpOworfQorCitzdGF0aWMgaW50Cit3bWVtc3RyZWFtX2Nsb3NlKHZvaWQgKnYpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisKKwlmcmVlKHN0KTsKKworCXJldHVybiAoMCk7Cit9CisKK0ZJTEUgKgorb3Blbl93bWVtc3RyZWFtKHdjaGFyX3QgKipwYnVmLCBzaXplX3QgKnBzaXplKQoreworCXN0cnVjdCBzdGF0ZQkqc3Q7CisJRklMRQkJKmZwOworCisJaWYgKHBidWYgPT0gTlVMTCB8fCBwc2l6ZSA9PSBOVUxMKSB7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCWlmICgoc3QgPSBtYWxsb2Moc2l6ZW9mKCpzdCkpKSA9PSBOVUxMKQorCQlyZXR1cm4gKE5VTEwpOworCisJaWYgKChmcCA9IF9fc2ZwKCkpID09IE5VTEwpIHsKKwkJZnJlZShzdCk7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJc3QtPnNpemUgPSBCVUZTSVogKiBzaXplb2Yod2NoYXJfdCk7CisJaWYgKChzdC0+c3RyaW5nID0gY2FsbG9jKDEsIHN0LT5zaXplKSkgPT0gTlVMTCkgeworCQlmcmVlKHN0KTsKKwkJZnAtPl9mbGFncyA9IDA7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJKnN0LT5zdHJpbmcgPSBMJ1wwJzsKKwlzdC0+cG9zID0gMDsKKwlzdC0+bGVuID0gMDsKKwlzdC0+cGJ1ZiA9IHBidWY7CisJc3QtPnBzaXplID0gcHNpemU7CisJYnplcm8oJnN0LT5tYnMsIHNpemVvZihzdC0+bWJzKSk7CisKKwkqcGJ1ZiA9IHN0LT5zdHJpbmc7CisJKnBzaXplID0gc3QtPmxlbjsKKworCWZwLT5fZmxhZ3MgPSBfX1NXUjsKKwlmcC0+X2ZpbGUgPSAtMTsKKwlmcC0+X2Nvb2tpZSA9IHN0OworCWZwLT5fcmVhZCA9IE5VTEw7CisJZnAtPl93cml0ZSA9IHdtZW1zdHJlYW1fd3JpdGU7CisJZnAtPl9zZWVrID0gd21lbXN0cmVhbV9zZWVrOworCWZwLT5fY2xvc2UgPSB3bWVtc3RyZWFtX2Nsb3NlOworCV9TRVRfT1JJRU5UQVRJT04oZnAsIDEpOworCisJcmV0dXJuIChmcCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc2V0dmJ1Zi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldHZidWYuYwppbmRleCA2YzQ5ZjdhLi45YjJhYjU3IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc2V0dmJ1Zi5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zZXR2YnVmLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogc2V0dmJ1Zi5jLHYgMS4xMSAyMDA5LzExLzA5IDAwOjE4OjI3IGt1cnQgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBzZXR2YnVmLmMsdiAxLjEyIDIwMTUvMDEvMTMgMDc6MTg6MjEgZ3VlbnRoZXIgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCiAgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTExNSw2ICsxMTUsMTMgQEAKIAl9CiAKIAkvKgorCSAqIFdlJ3JlIGNvbW1pdHRlZCB0byBidWZmZXJpbmcgZnJvbSBoZXJlLCBzbyBtYWtlIHN1cmUgd2UndmUKKwkgKiByZWdpc3RlcmVkIHRvIGZsdXNoIGJ1ZmZlcnMgb24gZXhpdC4KKwkgKi8KKwlpZiAoIV9fc2RpZGluaXQpCisJCV9fc2luaXQoKTsKKworCS8qCiAJICogS2lsbCBhbnkgc2VlayBvcHRpbWl6YXRpb24gaWYgdGhlIGJ1ZmZlciBpcyBub3QgdGhlCiAJICogcmlnaHQgc2l6ZS4KIAkgKgpAQCAtMTI0LDggKzEzMSw3IEBACiAJCWZsYWdzIHw9IF9fU05QVDsKIAogCS8qCi0JICogRml4IHVwIHRoZSBGSUxFIGZpZWxkcywgYW5kIHNldCBfX2NsZWFudXAgZm9yIG91dHB1dCBmbHVzaCBvbgotCSAqIGV4aXQgKHNpbmNlIHdlIGFyZSBidWZmZXJlZCBpbiBzb21lIHdheSkuCisJICogRml4IHVwIHRoZSBGSUxFIGZpZWxkcy4KIAkgKi8KIAlpZiAobW9kZSA9PSBfSU9MQkYpCiAJCWZsYWdzIHw9IF9fU0xCRjsKQEAgLTE0OCw3ICsxNTQsNiBAQAogCQlmcC0+X3cgPSAwOwogCX0KIAlGVU5MT0NLRklMRShmcCk7Ci0JX19hdGV4aXRfcmVnaXN0ZXJfY2xlYW51cChfY2xlYW51cCk7CiAKIAlyZXR1cm4gKHJldCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc3RkaW8uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zdGRpby5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNGEyN2I1Li4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zdGRpby5jCisrKyAvZGV2L251bGwKQEAgLTEsODkgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHN0ZGlvLmMsdiAxLjkgMjAwNS8wOC8wOCAwODowNTozNiBlc3BpZSBFeHAgJCAqLwotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIENocmlzIFRvcmVrLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8ZmNudGwuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgImxvY2FsLmgiCi0KLS8qCi0gKiBTbWFsbCBzdGFuZGFyZCBJL08vc2Vlay9jbG9zZSBmdW5jdGlvbnMuCi0gKiBUaGVzZSBtYWludGFpbiB0aGUgYGtub3duIHNlZWsgb2Zmc2V0JyBmb3Igc2VlayBvcHRpbWlzYXRpb24uCi0gKi8KLWludAotX19zcmVhZCh2b2lkICpjb29raWUsIGNoYXIgKmJ1ZiwgaW50IG4pCi17Ci0JRklMRSAqZnAgPSBjb29raWU7Ci0JaW50IHJldDsKLQkKLQlyZXQgPSByZWFkKGZwLT5fZmlsZSwgYnVmLCBuKTsKLQkvKiBpZiB0aGUgcmVhZCBzdWNjZWVkZWQsIHVwZGF0ZSB0aGUgY3VycmVudCBvZmZzZXQgKi8KLQlpZiAocmV0ID49IDApCi0JCWZwLT5fb2Zmc2V0ICs9IHJldDsKLQllbHNlCi0JCWZwLT5fZmxhZ3MgJj0gfl9fU09GRjsJLyogcGFyYW5vaWEgKi8KLQlyZXR1cm4gKHJldCk7Ci19Ci0KLWludAotX19zd3JpdGUodm9pZCAqY29va2llLCBjb25zdCBjaGFyICpidWYsIGludCBuKQotewotCUZJTEUgKmZwID0gY29va2llOwotCi0JaWYgKGZwLT5fZmxhZ3MgJiBfX1NBUFApCi0JCSh2b2lkKSBsc2VlayhmcC0+X2ZpbGUsIChvZmZfdCkwLCBTRUVLX0VORCk7Ci0JZnAtPl9mbGFncyAmPSB+X19TT0ZGOwkvKiBpbiBjYXNlIEZBUFBFTkQgbW9kZSBpcyBzZXQgKi8KLQlyZXR1cm4gKHdyaXRlKGZwLT5fZmlsZSwgYnVmLCBuKSk7Ci19Ci0KLWZwb3NfdAotX19zc2Vlayh2b2lkICpjb29raWUsIGZwb3NfdCBvZmZzZXQsIGludCB3aGVuY2UpCi17Ci0JRklMRSAqZnAgPSBjb29raWU7Ci0Jb2ZmX3QgcmV0OwotCQotCXJldCA9IGxzZWVrKGZwLT5fZmlsZSwgKG9mZl90KW9mZnNldCwgd2hlbmNlKTsKLQlpZiAocmV0ID09IChvZmZfdCktMSkKLQkJZnAtPl9mbGFncyAmPSB+X19TT0ZGOwotCWVsc2UgewotCQlmcC0+X2ZsYWdzIHw9IF9fU09GRjsKLQkJZnAtPl9vZmZzZXQgPSByZXQ7Ci0JfQotCXJldHVybiAocmV0KTsKLX0KLQotaW50Ci1fX3NjbG9zZSh2b2lkICpjb29raWUpCi17Ci0JcmV0dXJuIChjbG9zZSgoKEZJTEUgKiljb29raWUpLT5fZmlsZSkpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3VuZ2V0Yy5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3VuZ2V0Yy5jCmluZGV4IDY3NTczM2EuLmVjOThmMjYgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby91bmdldGMuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdW5nZXRjLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogdW5nZXRjLmMsdiAxLjEyIDIwMDkvMTEvMDkgMDA6MTg6Mjcga3VydCBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IHVuZ2V0Yy5jLHYgMS4xMyAyMDE0LzEwLzExIDA0OjA1OjEwIGRlcmFhZHQgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCiAgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTY0LDE0ICs2NCwxNCBAQAogCQlyZXR1cm4gKDApOwogCX0KIAlpID0gX1VCKGZwKS5fc2l6ZTsKLQlwID0gcmVhbGxvYyhfVUIoZnApLl9iYXNlLCBpIDw8IDEpOworCXAgPSByZWFsbG9jYXJyYXkoX1VCKGZwKS5fYmFzZSwgaSwgMik7CiAJaWYgKHAgPT0gTlVMTCkKIAkJcmV0dXJuIChFT0YpOwogCS8qIG5vIG92ZXJsYXAgKGhlbmNlIGNhbiB1c2UgbWVtY3B5KSBiZWNhdXNlIHdlIGRvdWJsZWQgdGhlIHNpemUgKi8KIAkodm9pZCltZW1jcHkoKHZvaWQgKikocCArIGkpLCAodm9pZCAqKXAsIChzaXplX3QpaSk7CiAJZnAtPl9wID0gcCArIGk7CiAJX1VCKGZwKS5fYmFzZSA9IHA7Ci0JX1VCKGZwKS5fc2l6ZSA9IGkgPDwgMTsKKwlfVUIoZnApLl9zaXplID0gaSAqIDI7CiAJcmV0dXJuICgwKTsKIH0KIApkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3ZmcHJpbnRmLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZwcmludGYuYwppbmRleCA3ZjhmZjMxLi41ZjRmYjdmIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZwcmludGYuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZwcmludGYuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiB2ZnByaW50Zi5jLHYgMS42NiAyMDE0LzA1LzAzIDEyOjM2OjQ1IGRlcmFhZHQgRXhwICQJKi8KKy8qCSRPcGVuQlNEOiB2ZnByaW50Zi5jLHYgMS42NyAyMDE0LzEyLzIxIDAwOjIzOjMwIGRhbmllbCBFeHAgJAkqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC03NTMsMTAgKzc1Myw5IEBACiAJCQlpZiAoc2lnbmZsYWcpCiAJCQkJc2lnbiA9ICctJzsKIAkJCWlmIChleHB0ID09IElOVF9NQVgpIHsJLyogaW5mIG9yIG5hbiAqLwotCQkJCWlmICgqY3AgPT0gJ04nKSB7CisJCQkJaWYgKCpjcCA9PSAnTicpCiAJCQkJCWNwID0gKGNoID49ICdhJykgPyAibmFuIiA6ICJOQU4iOwotCQkJCQlzaWduID0gJ1wwJzsKLQkJCQl9IGVsc2UKKwkJCQllbHNlCiAJCQkJCWNwID0gKGNoID49ICdhJykgPyAiaW5mIiA6ICJJTkYiOwogIAkJCQlzaXplID0gMzsKIAkJCQlmbGFncyAmPSB+WkVST1BBRDsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZndwcmludGYuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZndwcmludGYuYwppbmRleCBlZjBjYTQzLi5hNmY0MTIzIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZ3cHJpbnRmLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3Zmd3ByaW50Zi5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IHZmd3ByaW50Zi5jLHYgMS4xMSAyMDE0LzA2LzA0IDA3OjQ1OjI1IHN0c3AgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiB2ZndwcmludGYuYyx2IDEuMTIgMjAxNC8xMi8yMSAwMDoyMzozMCBkYW5pZWwgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNzMxLDEwICs3MzEsOSBAQAogCQkJaWYgKHNpZ25mbGFnKQogCQkJCXNpZ24gPSAnLSc7CiAJCQlpZiAoZXhwdCA9PSBJTlRfTUFYKSB7CS8qIGluZiBvciBuYW4gKi8KLQkJCQlpZiAoKmNwID09ICdOJykgeworCQkJCWlmICgqY3AgPT0gJ04nKQogCQkJCQljcCA9IChjaCA+PSAnYScpID8gTCJuYW4iIDogTCJOQU4iOwotCQkJCQlzaWduID0gJ1wwJzsKLQkJCQl9IGVsc2UKKwkJCQllbHNlCiAJCQkJCWNwID0gKGNoID49ICdhJykgPyBMImluZiIgOiBMIklORiI7CiAgCQkJCXNpemUgPSAzOwogCQkJCWZsYWdzICY9IH5aRVJPUEFEOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvYXRleGl0LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY1MzJiMzguLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuYworKysgL2Rldi9udWxsCkBAIC0xLDIwMiArMCwwIEBACi0vKgkkT3BlbkJTRDogYXRleGl0LmMsdiAxLjIwIDIwMTQvMDcvMTEgMDk6NTE6Mzcga2V0dGVuaXMgRXhwICQgKi8KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDIgRGFuaWVsIEhhcnRtZWllcgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKLSAqICAgICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBIT0xERVJTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKLSAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KLSAqIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvbW1hbi5oPgotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2luY2x1ZGUgImF0ZXhpdC5oIgotI2luY2x1ZGUgInRocmVhZF9wcml2YXRlLmgiCi0KLXN0cnVjdCBhdGV4aXQgKl9fYXRleGl0Owotc3RhdGljIGludCByZXN0YXJ0bG9vcDsKLQotLyoKLSAqIEZ1bmN0aW9uIHBvaW50ZXJzIGFyZSBzdG9yZWQgaW4gYSBsaW5rZWQgbGlzdCBvZiBwYWdlcy4gVGhlIGxpc3QKLSAqIGlzIGluaXRpYWxseSBlbXB0eSwgYW5kIHBhZ2VzIGFyZSBhbGxvY2F0ZWQgb24gZGVtYW5kLiBUaGUgZmlyc3QKLSAqIGZ1bmN0aW9uIHBvaW50ZXIgaW4gdGhlIGZpcnN0IGFsbG9jYXRlZCBwYWdlICh0aGUgbGFzdCBvbmUgaW4KLSAqIHRoZSBsaW5rZWQgbGlzdCkgaXMgcmVzZXJ2ZWQgZm9yIHRoZSBjbGVhbnVwIGZ1bmN0aW9uLgotICoKLSAqIE91dHNpZGUgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMsIGFsbCBwYWdlcyBhcmUgbXByb3RlY3QoKSdlZAotICogdG8gcHJldmVudCB1bmludGVudGlvbmFsL21hbGljaW91cyBjb3JydXB0aW9uLgotICovCi0KLS8qCi0gKiBSZWdpc3RlciBhIGZ1bmN0aW9uIHRvIGJlIHBlcmZvcm1lZCBhdCBleGl0IG9yIHdoZW4gYSBzaGFyZWQgb2JqZWN0Ci0gKiB3aXRoIHRoZSBnaXZlbiBkc28gaGFuZGxlIGlzIHVubG9hZGVkIGR5bmFtaWNhbGx5LiAgQWxzbyB1c2VkIGFzCi0gKiB0aGUgYmFja2VuZCBmb3IgYXRleGl0KCkuICBGb3IgbW9yZSBpbmZvIG9uIHRoaXMgQVBJLCBzZWU6Ci0gKgotICoJaHR0cDovL3d3dy5jb2Rlc291cmNlcnkuY29tL2N4eC1hYmkvYWJpLmh0bWwjZHNvLWR0b3IKLSAqLwotaW50Ci1fX2N4YV9hdGV4aXQodm9pZCAoKmZ1bmMpKHZvaWQgKiksIHZvaWQgKmFyZywgdm9pZCAqZHNvKQotewotCXN0cnVjdCBhdGV4aXQgKnAgPSBfX2F0ZXhpdDsKLQlzdHJ1Y3QgYXRleGl0X2ZuICpmbnA7Ci0JaW50IHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7Ci0JaW50IHJldCA9IC0xOwotCi0JaWYgKHBnc2l6ZSA8IHNpemVvZigqcCkpCi0JCXJldHVybiAoLTEpOwotCV9BVEVYSVRfTE9DSygpOwotCXAgPSBfX2F0ZXhpdDsKLQlpZiAocCAhPSBOVUxMKSB7Ci0JCWlmIChwLT5pbmQgKyAxID49IHAtPm1heCkKLQkJCXAgPSBOVUxMOwotCQllbHNlIGlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUpKQotCQkJZ290byB1bmxvY2s7Ci0JfQotCWlmIChwID09IE5VTEwpIHsKLQkJcCA9IG1tYXAoTlVMTCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLAotCQkgICAgTUFQX0FOT04gfCBNQVBfUFJJVkFURSwgLTEsIDApOwotCQlpZiAocCA9PSBNQVBfRkFJTEVEKQotCQkJZ290byB1bmxvY2s7Ci0JCWlmIChfX2F0ZXhpdCA9PSBOVUxMKSB7Ci0JCQltZW1zZXQoJnAtPmZuc1swXSwgMCwgc2l6ZW9mKHAtPmZuc1swXSkpOwotCQkJcC0+aW5kID0gMTsKLQkJfSBlbHNlCi0JCQlwLT5pbmQgPSAwOwotCQlwLT5tYXggPSAocGdzaXplIC0gKChjaGFyICopJnAtPmZuc1swXSAtIChjaGFyICopcCkpIC8KLQkJICAgIHNpemVvZihwLT5mbnNbMF0pOwotCQlwLT5uZXh0ID0gX19hdGV4aXQ7Ci0JCV9fYXRleGl0ID0gcDsKLQl9Ci0JZm5wID0gJnAtPmZuc1twLT5pbmQrK107Ci0JZm5wLT5mbl9wdHIgPSBmdW5jOwotCWZucC0+Zm5fYXJnID0gYXJnOwotCWZucC0+Zm5fZHNvID0gZHNvOwotCWlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCkpCi0JCWdvdG8gdW5sb2NrOwotCXJlc3RhcnRsb29wID0gMTsKLQlyZXQgPSAwOwotdW5sb2NrOgotCV9BVEVYSVRfVU5MT0NLKCk7Ci0JcmV0dXJuIChyZXQpOwotfQotCi0vKgotICogQ2FsbCBhbGwgaGFuZGxlcnMgcmVnaXN0ZXJlZCB3aXRoIF9fY3hhX2F0ZXhpdCgpIGZvciB0aGUgc2hhcmVkCi0gKiBvYmplY3Qgb3duaW5nICdkc28nLgotICogTm90ZTogaWYgJ2RzbycgaXMgTlVMTCwgdGhlbiBhbGwgcmVtYWluaW5nIGhhbmRsZXJzIGFyZSBjYWxsZWQuCi0gKi8KLXZvaWQKLV9fY3hhX2ZpbmFsaXplKHZvaWQgKmRzbykKLXsKLQlzdHJ1Y3QgYXRleGl0ICpwLCAqcTsKLQlzdHJ1Y3QgYXRleGl0X2ZuIGZuOwotCWludCBuLCBwZ3NpemUgPSBnZXRwYWdlc2l6ZSgpOwotCXN0YXRpYyBpbnQgY2FsbF9kZXB0aDsKLQotCV9BVEVYSVRfTE9DSygpOwotCWNhbGxfZGVwdGgrKzsKLQotcmVzdGFydDoKLQlyZXN0YXJ0bG9vcCA9IDA7Ci0JZm9yIChwID0gX19hdGV4aXQ7IHAgIT0gTlVMTDsgcCA9IHAtPm5leHQpIHsKLQkJZm9yIChuID0gcC0+aW5kOyAtLW4gPj0gMDspIHsKLQkJCWlmIChwLT5mbnNbbl0uZm5fcHRyID09IE5VTEwpCi0JCQkJY29udGludWU7CS8qIGFscmVhZHkgY2FsbGVkICovCi0JCQlpZiAoZHNvICE9IE5VTEwgJiYgZHNvICE9IHAtPmZuc1tuXS5mbl9kc28pCi0JCQkJY29udGludWU7CS8qIHdyb25nIERTTyAqLwotCi0JCQkvKgotCQkJICogTWFyayBoYW5kbGVyIGFzIGhhdmluZyBiZWVuIGFscmVhZHkgY2FsbGVkIHRvIGF2b2lkCi0JCQkgKiBkdXBlcyBhbmQgbG9vcHMsIHRoZW4gY2FsbCB0aGUgYXBwcm9wcmlhdGUgZnVuY3Rpb24uCi0JCQkgKi8KLQkJCWZuID0gcC0+Zm5zW25dOwotCQkJaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSkgPT0gMCkgewotCQkJCXAtPmZuc1tuXS5mbl9wdHIgPSBOVUxMOwotCQkJCW1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKTsKLQkJCX0KLQkJCV9BVEVYSVRfVU5MT0NLKCk7Ci0JCQkoKmZuLmZuX3B0cikoZm4uZm5fYXJnKTsKLQkJCV9BVEVYSVRfTE9DSygpOwotCQkJaWYgKHJlc3RhcnRsb29wKQotCQkJCWdvdG8gcmVzdGFydDsKLQkJfQotCX0KLQotCWNhbGxfZGVwdGgtLTsKLQotCS8qCi0JICogSWYgY2FsbGVkIHZpYSBleGl0KCksIHVubWFwIHRoZSBwYWdlcyBzaW5jZSB3ZSBoYXZlIG5vdyBydW4KLQkgKiBhbGwgdGhlIGhhbmRsZXJzLiAgV2UgZGVmZXIgdGhpcyB1bnRpbCBjYWxsZGVwdGggPT0gMCBzbyB0aGF0Ci0JICogd2UgZG9uJ3QgdW5tYXAgdGhpbmdzIHByZW1hdHVyZWx5IGlmIGNhbGxlZCByZWN1cnNpdmVseS4KLQkgKi8KLQlpZiAoZHNvID09IE5VTEwgJiYgY2FsbF9kZXB0aCA9PSAwKSB7Ci0JCWZvciAocCA9IF9fYXRleGl0OyBwICE9IE5VTEw7ICkgewotCQkJcSA9IHA7Ci0JCQlwID0gcC0+bmV4dDsKLQkJCW11bm1hcChxLCBwZ3NpemUpOwotCQl9Ci0JCV9fYXRleGl0ID0gTlVMTDsKLQl9Ci0JX0FURVhJVF9VTkxPQ0soKTsKLX0KLQotLyoKLSAqIFJlZ2lzdGVyIHRoZSBjbGVhbnVwIGZ1bmN0aW9uCi0gKi8KLXZvaWQKLV9fYXRleGl0X3JlZ2lzdGVyX2NsZWFudXAodm9pZCAoKmZ1bmMpKHZvaWQpKQotewotCXN0cnVjdCBhdGV4aXQgKnA7Ci0JaW50IHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7Ci0KLQlpZiAocGdzaXplIDwgc2l6ZW9mKCpwKSkKLQkJcmV0dXJuOwotCV9BVEVYSVRfTE9DSygpOwotCXAgPSBfX2F0ZXhpdDsKLQl3aGlsZSAocCAhPSBOVUxMICYmIHAtPm5leHQgIT0gTlVMTCkKLQkJcCA9IHAtPm5leHQ7Ci0JaWYgKHAgPT0gTlVMTCkgewotCQlwID0gbW1hcChOVUxMLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCi0JCSAgICBNQVBfQU5PTiB8IE1BUF9QUklWQVRFLCAtMSwgMCk7Ci0JCWlmIChwID09IE1BUF9GQUlMRUQpCi0JCQlnb3RvIHVubG9jazsKLQkJcC0+aW5kID0gMTsKLQkJcC0+bWF4ID0gKHBnc2l6ZSAtICgoY2hhciAqKSZwLT5mbnNbMF0gLSAoY2hhciAqKXApKSAvCi0JCSAgICBzaXplb2YocC0+Zm5zWzBdKTsKLQkJcC0+bmV4dCA9IE5VTEw7Ci0JCV9fYXRleGl0ID0gcDsKLQl9IGVsc2UgewotCQlpZiAobXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKSkKLQkJCWdvdG8gdW5sb2NrOwotCX0KLQlwLT5mbnNbMF0uZm5fcHRyID0gKHZvaWQgKCopKHZvaWQgKikpZnVuYzsKLQlwLT5mbnNbMF0uZm5fYXJnID0gTlVMTDsKLQlwLT5mbnNbMF0uZm5fZHNvID0gTlVMTDsKLQltcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCk7Ci0JcmVzdGFydGxvb3AgPSAxOwotdW5sb2NrOgotCV9BVEVYSVRfVU5MT0NLKCk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2V4aXQuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvZXhpdC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4M2ZlM2QyLi4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvZXhpdC5jCisrKyAvZGV2L251bGwKQEAgLTEsNTkgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4aXQuYyx2IDEuMTIgMjAwNy8wOS8wMyAxNDo0MDoxNiBtaWxsZXJ0IEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9tbWFuLmg+Ci0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSAiYXRleGl0LmgiCi0jaW5jbHVkZSAidGhyZWFkX3ByaXZhdGUuaCIKLQotLyoKLSAqIFRoaXMgdmFyaWFibGUgaXMgemVybyB1bnRpbCBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgYSB0aHJlYWQuCi0gKiBJdCBpcyB1c2VkIHRvIGF2b2lkIGNhbGxpbmcgbG9ja2luZyBmdW5jdGlvbnMgaW4gbGliYyB3aGVuIHRoZXkKLSAqIGFyZSBub3QgcmVxdWlyZWQuIEJ5IGRlZmF1bHQsIGxpYmMgaXMgaW50ZW5kZWQgdG8gYmUoY29tZSkKLSAqIHRocmVhZC1zYWZlLCBidXQgd2l0aG91dCBhIChzaWduaWZpY2FudCkgcGVuYWx0eSB0byBub24tdGhyZWFkZWQKLSAqIHByb2Nlc3Nlcy4KLSAqLwotaW50ICAgICBfX2lzdGhyZWFkZWQgICAgPSAwOwotCi0vKgotICogRXhpdCwgZmx1c2hpbmcgc3RkaW8gYnVmZmVycyBpZiBuZWNlc3NhcnkuCi0gKi8KLXZvaWQKLWV4aXQoaW50IHN0YXR1cykKLXsKLQkvKgotCSAqIENhbGwgZnVuY3Rpb25zIHJlZ2lzdGVyZWQgYnkgYXRleGl0KCkgb3IgX2N4YV9hdGV4aXQoKQotCSAqIChpbmNsdWRpbmcgdGhlIHN0ZGlvIGNsZWFudXAgcm91dGluZSkgYW5kIHRoZW4gX2V4aXQoKS4KLQkgKi8KLQlfX2N4YV9maW5hbGl6ZShOVUxMKTsKLQlfZXhpdChzdGF0dXMpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9pbnNxdWUuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTkwZmY4MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMKQEAgLTAsMCArMSw1NCBAQAorLyoJJE9wZW5CU0Q6IGluc3F1ZS5jLHYgMS4zIDIwMTQvMDgvMTUgMDQ6MTQ6MzYgZ3VlbnRoZXIgRXhwICQJKi8KKworLyoKKyAqICBDb3B5cmlnaHQgKGMpIDE5OTMgSm9obiBCcmV6YWsKKyAqICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogCisgKiAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiAgYXJlIG1ldDoKKyAqICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogIDMuIFRoZSBuYW1lIG9mIHRoZSBhdXRob3IgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzCisgKiAgICAgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKiAKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKKyAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsCisgKiBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCisgKiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KKyAqIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHNlYXJjaC5oPgorCitzdHJ1Y3QgcWVsZW0geworICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfZm9ydzsKKyAgICAgICAgc3RydWN0IHFlbGVtICpxX2JhY2s7Cit9OworCit2b2lkCitpbnNxdWUodm9pZCAqZW50cnksIHZvaWQgKnByZWQpCit7CisJc3RydWN0IHFlbGVtICplID0gZW50cnk7CisJc3RydWN0IHFlbGVtICpwID0gcHJlZDsKKworCWlmIChwID09IE5VTEwpCisJCWUtPnFfZm9ydyA9IGUtPnFfYmFjayA9IE5VTEw7CisJZWxzZSB7CisJCWUtPnFfZm9ydyA9IHAtPnFfZm9ydzsKKwkJZS0+cV9iYWNrID0gcDsKKwkJaWYgKHAtPnFfZm9ydyAhPSBOVUxMKQorCQkJcC0+cV9mb3J3LT5xX2JhY2sgPSBlOworCQlwLT5xX2ZvcncgPSBlOworCX0KK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvcmVhbGxvY2FycmF5LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3JlYWxsb2NhcnJheS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhY2NkOTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3JlYWxsb2NhcnJheS5jCkBAIC0wLDAgKzEsMzggQEAKKy8qCSRPcGVuQlNEOiByZWFsbG9jYXJyYXkuYyx2IDEuMSAyMDE0LzA1LzA4IDIxOjQzOjQ5IGRlcmFhZHQgRXhwICQJKi8KKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMDggT3R0byBNb2VyYmVlayA8b3R0b0BkcmlqZi5uZXQ+CisgKgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55CisgKiBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworICogV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKKyAqIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKKyAqIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorICogQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKKyAqIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKy8qCisgKiBUaGlzIGlzIHNxcnQoU0laRV9NQVgrMSksIGFzIHMxKnMyIDw9IFNJWkVfTUFYCisgKiBpZiBib3RoIHMxIDwgTVVMX05PX09WRVJGTE9XIGFuZCBzMiA8IE1VTF9OT19PVkVSRkxPVworICovCisjZGVmaW5lIE1VTF9OT19PVkVSRkxPVwkoMVVMIDw8IChzaXplb2Yoc2l6ZV90KSAqIDQpKQorCit2b2lkICoKK3JlYWxsb2NhcnJheSh2b2lkICpvcHRyLCBzaXplX3Qgbm1lbWIsIHNpemVfdCBzaXplKQoreworCWlmICgobm1lbWIgPj0gTVVMX05PX09WRVJGTE9XIHx8IHNpemUgPj0gTVVMX05PX09WRVJGTE9XKSAmJgorCSAgICBubWVtYiA+IDAgJiYgU0laRV9NQVggLyBubWVtYiA8IHNpemUpIHsKKwkJZXJybm8gPSBFTk9NRU07CisJCXJldHVybiBOVUxMOworCX0KKwlyZXR1cm4gcmVhbGxvYyhvcHRyLCBzaXplICogbm1lbWIpOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzFiNzRiMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMKQEAgLTAsMCArMSw0OCBAQAorLyoJJE9wZW5CU0Q6IHJlbXF1ZS5jLHYgMS4zIDIwMTQvMDgvMTUgMDQ6MTQ6MzYgZ3VlbnRoZXIgRXhwICQJKi8KKworLyoKKyAqICBDb3B5cmlnaHQgKGMpIDE5OTMgSm9obiBCcmV6YWsKKyAqICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogCisgKiAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiAgYXJlIG1ldDoKKyAqICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogIDMuIFRoZSBuYW1lIG9mIHRoZSBhdXRob3IgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzCisgKiAgICAgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKiAKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKKyAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsCisgKiBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCisgKiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KKyAqIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHNlYXJjaC5oPgorCitzdHJ1Y3QgcWVsZW0geworICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfZm9ydzsKKyAgICAgICAgc3RydWN0IHFlbGVtICpxX2JhY2s7Cit9OworCit2b2lkCityZW1xdWUodm9pZCAqZWxlbWVudCkKK3sKKwlzdHJ1Y3QgcWVsZW0gKmUgPSBlbGVtZW50OworCisJaWYgKGUtPnFfZm9ydyAhPSBOVUxMKQorCQllLT5xX2ZvcnctPnFfYmFjayA9IGUtPnFfYmFjazsKKwlpZiAoZS0+cV9iYWNrICE9IE5VTEwpCisJCWUtPnFfYmFjay0+cV9mb3J3ID0gZS0+cV9mb3J3OworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2ltYXguYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9pbWF4LmMKaW5kZXggMmM3N2Y0MS4uMmZjMDRlNCAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2ltYXguYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvaW1heC5jCkBAIC0xLDYgKzEsNSBAQAotLyoJJE9wZW5CU0Q6IHN0cnRvaW1heC5jLHYgMS4xIDIwMDYvMDEvMTMgMTc6NTg6MDkgbWlsbGVydCBFeHAgJAkqLwotCi0vKi0KKy8qCSRPcGVuQlNEOiBzdHJ0b2ltYXguYyx2IDEuMiAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkCSovCisvKgogICogQ29weXJpZ2h0IChjKSAxOTkyIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTQ4LDYgKzQ3LDE3IEBACiAJaW50IG5lZywgYW55LCBjdXRsaW07CiAKIAkvKgorCSAqIEVuc3VyZSB0aGF0IGJhc2UgaXMgYmV0d2VlbiAyIGFuZCAzNiBpbmNsdXNpdmUsIG9yIHRoZSBzcGVjaWFsCisJICogdmFsdWUgb2YgMC4KKwkgKi8KKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgeworCQlpZiAoZW5kcHRyICE9IDApCisJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIDA7CisJfQorCisJLyoKIAkgKiBTa2lwIHdoaXRlIHNwYWNlIGFuZCBwaWNrIHVwIGxlYWRpbmcgKy8tIHNpZ24gaWYgYW55LgogCSAqIElmIGJhc2UgaXMgMCwgYWxsb3cgMHggZm9yIGhleCBhbmQgMCBmb3Igb2N0YWwsIGVsc2UKIAkgKiBhc3N1bWUgZGVjaW1hbDsgaWYgYmFzZSBpcyBhbHJlYWR5IDE2LCBhbGxvdyAweC4KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9sLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvbC5jCmluZGV4IGRjMmNmODguLjg2Y2VjMzUgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9sLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2wuYwpAQCAtMSw1ICsxLDUgQEAKLS8qCSRPcGVuQlNEOiBzdHJ0b2wuYyx2IDEuOSAyMDEzLzA0LzE3IDE3OjQwOjM1IHRlZHUgRXhwICQgKi8KLS8qLQorLyoJJE9wZW5CU0Q6IHN0cnRvbC5jLHYgMS4xMCAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkICovCisvKgogICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTMzLDcgKzMzLDYgQEAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KIAotCiAvKgogICogQ29udmVydCBhIHN0cmluZyB0byBhIGxvbmcgaW50ZWdlci4KICAqCkBAIC01Miw3ICs1MSw3IEBACiAJICogRW5zdXJlIHRoYXQgYmFzZSBpcyBiZXR3ZWVuIDIgYW5kIDM2IGluY2x1c2l2ZSwgb3IgdGhlIHNwZWNpYWwKIAkgKiB2YWx1ZSBvZiAwLgogCSAqLwotCWlmIChiYXNlICE9IDAgJiYgKGJhc2UgPCAyIHx8IGJhc2UgPiAzNikpIHsKKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgewogCQlpZiAoZW5kcHRyICE9IDApCiAJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOwogCQllcnJubyA9IEVJTlZBTDsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9sbC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2xsLmMKaW5kZXggNGJjYzU1Ni4uY2Y4MmM4ZSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2xsLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2xsLmMKQEAgLTEsNSArMSw1IEBACi0vKiAkT3BlbkJTRDogc3RydG9sbC5jLHYgMS43IDIwMTMvMDMvMjggMTg6MDk6MzggbWFydHluYXMgRXhwICQgKi8KLS8qLQorLyoJJE9wZW5CU0Q6IHN0cnRvbGwuYyx2IDEuOCAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkICovCisvKgogICogQ29weXJpZ2h0IChjKSAxOTkyIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTUwLDYgKzUwLDE3IEBACiAJaW50IG5lZywgYW55LCBjdXRsaW07CiAKIAkvKgorCSAqIEVuc3VyZSB0aGF0IGJhc2UgaXMgYmV0d2VlbiAyIGFuZCAzNiBpbmNsdXNpdmUsIG9yIHRoZSBzcGVjaWFsCisJICogdmFsdWUgb2YgMC4KKwkgKi8KKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgeworCQlpZiAoZW5kcHRyICE9IDApCisJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIDA7CisJfQorCisJLyoKIAkgKiBTa2lwIHdoaXRlIHNwYWNlIGFuZCBwaWNrIHVwIGxlYWRpbmcgKy8tIHNpZ24gaWYgYW55LgogCSAqIElmIGJhc2UgaXMgMCwgYWxsb3cgMHggZm9yIGhleCBhbmQgMCBmb3Igb2N0YWwsIGVsc2UKIAkgKiBhc3N1bWUgZGVjaW1hbDsgaWYgYmFzZSBpcyBhbHJlYWR5IDE2LCBhbGxvdyAweC4KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsLmMKaW5kZXggYTIzNjM2NS4uMmFhNDFiNyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsLmMKQEAgLTEsNiArMSw2IEBACi0vKgkkT3BlbkJTRDogc3RydG91bC5jLHYgMS44IDIwMTMvMDQvMTcgMTc6NDA6MzUgdGVkdSBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IHN0cnRvdWwuYyx2IDEuOSAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkICovCiAvKgotICogQ29weXJpZ2h0IChjKSAxOTkwIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KKyAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTUwLDYgKzUwLDEzIEBACiAJLyoKIAkgKiBTZWUgc3RydG9sIGZvciBjb21tZW50cyBhcyB0byB0aGUgbG9naWMgdXNlZC4KIAkgKi8KKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgeworCQlpZiAoZW5kcHRyICE9IDApCisJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIDA7CisJfQorCiAJcyA9IG5wdHI7CiAJZG8gewogCQljID0gKHVuc2lnbmVkIGNoYXIpICpzKys7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWxsLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWxsLmMKaW5kZXggMjhmNjEzYS4uODQ2NDE3NiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsbC5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bGwuYwpAQCAtMSw1ICsxLDUgQEAKLS8qCSRPcGVuQlNEOiBzdHJ0b3VsbC5jLHYgMS42IDIwMTMvMDMvMjggMTg6MDk6MzggbWFydHluYXMgRXhwICQgKi8KLS8qLQorLyoJJE9wZW5CU0Q6IHN0cnRvdWxsLmMsdiAxLjcgMjAxNC8wOS8xMyAyMDoxMDoxMiBzY2h3YXJ6ZSBFeHAgJCAqLworLyoKICAqIENvcHlyaWdodCAoYykgMTk5MiBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC01MCw4ICs1MCwxNSBAQAogCWludCBuZWcsIGFueSwgY3V0bGltOwogCiAJLyoKLQkgKiBTZWUgc3RydG9xIGZvciBjb21tZW50cyBhcyB0byB0aGUgbG9naWMgdXNlZC4KKwkgKiBTZWUgc3RydG9sbCBmb3IgY29tbWVudHMgYXMgdG8gdGhlIGxvZ2ljIHVzZWQuCiAJICovCisJaWYgKGJhc2UgPCAwIHx8IGJhc2UgPT0gMSB8fCBiYXNlID4gMzYpIHsKKwkJaWYgKGVuZHB0ciAhPSAwKQorCQkJKmVuZHB0ciA9IChjaGFyICopbnB0cjsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAwOworCX0KKwogCXMgPSBucHRyOwogCWRvIHsKIAkJYyA9ICh1bnNpZ25lZCBjaGFyKSAqcysrOwpAQCAtNTksNyArNjYsNyBAQAogCWlmIChjID09ICctJykgewogCQluZWcgPSAxOwogCQljID0gKnMrKzsKLQl9IGVsc2UgeyAKKwl9IGVsc2UgewogCQluZWcgPSAwOwogCQlpZiAoYyA9PSAnKycpCiAJCQljID0gKnMrKzsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bWF4LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdW1heC5jCmluZGV4IGNlNmUyYzAuLmM3M2Y3ZTUgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bWF4LmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VtYXguYwpAQCAtMSw2ICsxLDUgQEAKLS8qCSRPcGVuQlNEOiBzdHJ0b3VtYXguYyx2IDEuMSAyMDA2LzAxLzEzIDE3OjU4OjA5IG1pbGxlcnQgRXhwICQJKi8KLQotLyotCisvKgkkT3BlbkJTRDogc3RydG91bWF4LmMsdiAxLjIgMjAxNC8wOS8xMyAyMDoxMDoxMiBzY2h3YXJ6ZSBFeHAgJAkqLworLyoKICAqIENvcHlyaWdodCAoYykgMTk5MiBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC00OCw4ICs0NywxNSBAQAogCWludCBuZWcsIGFueSwgY3V0bGltOwogCiAJLyoKLQkgKiBTZWUgc3RydG9xIGZvciBjb21tZW50cyBhcyB0byB0aGUgbG9naWMgdXNlZC4KKwkgKiBTZWUgc3RydG9pbWF4IGZvciBjb21tZW50cyBhcyB0byB0aGUgbG9naWMgdXNlZC4KIAkgKi8KKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgeworCQlpZiAoZW5kcHRyICE9IDApCisJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIDA7CisJfQorCiAJcyA9IG5wdHI7CiAJZG8gewogCQljID0gKHVuc2lnbmVkIGNoYXIpICpzKys7CkBAIC01Nyw3ICs2Myw3IEBACiAJaWYgKGMgPT0gJy0nKSB7CiAJCW5lZyA9IDE7CiAJCWMgPSAqcysrOwotCX0gZWxzZSB7IAorCX0gZWxzZSB7CiAJCW5lZyA9IDA7CiAJCWlmIChjID09ICcrJykKIAkJCWMgPSAqcysrOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9iY29weS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9iY29weS5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MzA4YzY0Li4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvYmNvcHkuYworKysgL2Rldi9udWxsCkBAIC0xLDEyOCArMCwwIEBACi0vKgkkT3BlbkJTRDogYmNvcHkuYyx2IDEuNSAyMDA1LzA4LzA4IDA4OjA1OjM3IGVzcGllIEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBDaHJpcyBUb3Jlay4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN0cmluZy5oPgotCi0vKgotICogc2l6ZW9mKHdvcmQpIE1VU1QgQkUgQSBQT1dFUiBPRiBUV08KLSAqIFNPIFRIQVQgd21hc2sgQkVMT1cgSVMgQUxMIE9ORVMKLSAqLwotdHlwZWRlZglsb25nIHdvcmQ7CQkvKiAid29yZCIgdXNlZCBmb3Igb3B0aW1hbCBjb3B5IHNwZWVkICovCi0KLSNkZWZpbmUJd3NpemUJc2l6ZW9mKHdvcmQpCi0jZGVmaW5lCXdtYXNrCSh3c2l6ZSAtIDEpCi0KLS8qCi0gKiBDb3B5IGEgYmxvY2sgb2YgbWVtb3J5LCBoYW5kbGluZyBvdmVybGFwLgotICogVGhpcyBpcyB0aGUgcm91dGluZSB0aGF0IGFjdHVhbGx5IGltcGxlbWVudHMKLSAqICh0aGUgcG9ydGFibGUgdmVyc2lvbnMgb2YpIGJjb3B5LCBtZW1jcHksIGFuZCBtZW1tb3ZlLgotICovCi0jaWZkZWYgTUVNQ09QWQotdm9pZCAqCi1tZW1jcHkodm9pZCAqZHN0MCwgY29uc3Qgdm9pZCAqc3JjMCwgc2l6ZV90IGxlbmd0aCkKLSNlbHNlCi0jaWZkZWYgTUVNTU9WRQotdm9pZCAqCi1tZW1tb3ZlKHZvaWQgKmRzdDAsIGNvbnN0IHZvaWQgKnNyYzAsIHNpemVfdCBsZW5ndGgpCi0jZWxzZQotdm9pZAotYmNvcHkoY29uc3Qgdm9pZCAqc3JjMCwgdm9pZCAqZHN0MCwgc2l6ZV90IGxlbmd0aCkKLSNlbmRpZgotI2VuZGlmCi17Ci0JY2hhciAqZHN0ID0gZHN0MDsKLQljb25zdCBjaGFyICpzcmMgPSBzcmMwOwotCXNpemVfdCB0OwotCi0JaWYgKGxlbmd0aCA9PSAwIHx8IGRzdCA9PSBzcmMpCQkvKiBub3RoaW5nIHRvIGRvICovCi0JCWdvdG8gZG9uZTsKLQotCS8qCi0JICogTWFjcm9zOiBsb29wLXQtdGltZXM7IGFuZCBsb29wLXQtdGltZXMsIHQ+MAotCSAqLwotI2RlZmluZQlUTE9PUChzKSBpZiAodCkgVExPT1AxKHMpCi0jZGVmaW5lCVRMT09QMShzKSBkbyB7IHM7IH0gd2hpbGUgKC0tdCkKLQotCWlmICgodW5zaWduZWQgbG9uZylkc3QgPCAodW5zaWduZWQgbG9uZylzcmMpIHsKLQkJLyoKLQkJICogQ29weSBmb3J3YXJkLgotCQkgKi8KLQkJdCA9IChsb25nKXNyYzsJLyogb25seSBuZWVkIGxvdyBiaXRzICovCi0JCWlmICgodCB8IChsb25nKWRzdCkgJiB3bWFzaykgewotCQkJLyoKLQkJCSAqIFRyeSB0byBhbGlnbiBvcGVyYW5kcy4gIFRoaXMgY2Fubm90IGJlIGRvbmUKLQkJCSAqIHVubGVzcyB0aGUgbG93IGJpdHMgbWF0Y2guCi0JCQkgKi8KLQkJCWlmICgodCBeIChsb25nKWRzdCkgJiB3bWFzayB8fCBsZW5ndGggPCB3c2l6ZSkKLQkJCQl0ID0gbGVuZ3RoOwotCQkJZWxzZQotCQkJCXQgPSB3c2l6ZSAtICh0ICYgd21hc2spOwotCQkJbGVuZ3RoIC09IHQ7Ci0JCQlUTE9PUDEoKmRzdCsrID0gKnNyYysrKTsKLQkJfQotCQkvKgotCQkgKiBDb3B5IHdob2xlIHdvcmRzLCB0aGVuIG1vcCB1cCBhbnkgdHJhaWxpbmcgYnl0ZXMuCi0JCSAqLwotCQl0ID0gbGVuZ3RoIC8gd3NpemU7Ci0JCVRMT09QKCood29yZCAqKWRzdCA9ICood29yZCAqKXNyYzsgc3JjICs9IHdzaXplOyBkc3QgKz0gd3NpemUpOwotCQl0ID0gbGVuZ3RoICYgd21hc2s7Ci0JCVRMT09QKCpkc3QrKyA9ICpzcmMrKyk7Ci0JfSBlbHNlIHsKLQkJLyoKLQkJICogQ29weSBiYWNrd2FyZHMuICBPdGhlcndpc2UgZXNzZW50aWFsbHkgdGhlIHNhbWUuCi0JCSAqIEFsaWdubWVudCB3b3JrcyBhcyBiZWZvcmUsIGV4Y2VwdCB0aGF0IGl0IHRha2VzCi0JCSAqICh0JndtYXNrKSBieXRlcyB0byBhbGlnbiwgbm90IHdzaXplLSh0JndtYXNrKS4KLQkJICovCi0JCXNyYyArPSBsZW5ndGg7Ci0JCWRzdCArPSBsZW5ndGg7Ci0JCXQgPSAobG9uZylzcmM7Ci0JCWlmICgodCB8IChsb25nKWRzdCkgJiB3bWFzaykgewotCQkJaWYgKCh0IF4gKGxvbmcpZHN0KSAmIHdtYXNrIHx8IGxlbmd0aCA8PSB3c2l6ZSkKLQkJCQl0ID0gbGVuZ3RoOwotCQkJZWxzZQotCQkJCXQgJj0gd21hc2s7Ci0JCQlsZW5ndGggLT0gdDsKLQkJCVRMT09QMSgqLS1kc3QgPSAqLS1zcmMpOwotCQl9Ci0JCXQgPSBsZW5ndGggLyB3c2l6ZTsKLQkJVExPT1Aoc3JjIC09IHdzaXplOyBkc3QgLT0gd3NpemU7ICood29yZCAqKWRzdCA9ICood29yZCAqKXNyYyk7Ci0JCXQgPSBsZW5ndGggJiB3bWFzazsKLQkJVExPT1AoKi0tZHN0ID0gKi0tc3JjKTsKLQl9Ci1kb25lOgotI2lmIGRlZmluZWQoTUVNQ09QWSkgfHwgZGVmaW5lZChNRU1NT1ZFKQotCXJldHVybiAoZHN0MCk7Ci0jZWxzZQotCXJldHVybjsKLSNlbmRpZgotfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtY2hyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDU3M2UzYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtY2hyLmMKQEAgLTAsMCArMSw0OCBAQAorLyoJJE9wZW5CU0Q6IG1lbWNoci5jLHYgMS43IDIwMDUvMDgvMDggMDg6MDU6MzcgZXNwaWUgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK3ZvaWQgKgorbWVtY2hyKGNvbnN0IHZvaWQgKnMsIGludCBjLCBzaXplX3QgbikKK3sKKwlpZiAobiAhPSAwKSB7CisJCWNvbnN0IHVuc2lnbmVkIGNoYXIgKnAgPSBzOworCisJCWRvIHsKKwkJCWlmICgqcCsrID09ICh1bnNpZ25lZCBjaGFyKWMpCisJCQkJcmV0dXJuICgodm9pZCAqKShwIC0gMSkpOworCQl9IHdoaWxlICgtLW4gIT0gMCk7CisJfQorCXJldHVybiAoTlVMTCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbW1vdmUuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFiYWFkNTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbW1vdmUuYwpAQCAtMCwwICsxLDExMiBAQAorLyoJJE9wZW5CU0Q6IG1lbW1vdmUuYyx2IDEuMSAyMDE0LzExLzMwIDE5OjQzOjU2IGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKy8qCisgKiBzaXplb2Yod29yZCkgTVVTVCBCRSBBIFBPV0VSIE9GIFRXTworICogU08gVEhBVCB3bWFzayBCRUxPVyBJUyBBTEwgT05FUworICovCit0eXBlZGVmCWxvbmcgd29yZDsJCS8qICJ3b3JkIiB1c2VkIGZvciBvcHRpbWFsIGNvcHkgc3BlZWQgKi8KKworI2RlZmluZQl3c2l6ZQlzaXplb2Yod29yZCkKKyNkZWZpbmUJd21hc2sJKHdzaXplIC0gMSkKKworLyoKKyAqIENvcHkgYSBibG9jayBvZiBtZW1vcnksIGhhbmRsaW5nIG92ZXJsYXAuCisgKi8KK3ZvaWQgKgorbWVtbW92ZSh2b2lkICpkc3QwLCBjb25zdCB2b2lkICpzcmMwLCBzaXplX3QgbGVuZ3RoKQoreworCWNoYXIgKmRzdCA9IGRzdDA7CisJY29uc3QgY2hhciAqc3JjID0gc3JjMDsKKwlzaXplX3QgdDsKKworCWlmIChsZW5ndGggPT0gMCB8fCBkc3QgPT0gc3JjKQkJLyogbm90aGluZyB0byBkbyAqLworCQlnb3RvIGRvbmU7CisKKwkvKgorCSAqIE1hY3JvczogbG9vcC10LXRpbWVzOyBhbmQgbG9vcC10LXRpbWVzLCB0PjAKKwkgKi8KKyNkZWZpbmUJVExPT1AocykgaWYgKHQpIFRMT09QMShzKQorI2RlZmluZQlUTE9PUDEocykgZG8geyBzOyB9IHdoaWxlICgtLXQpCisKKwlpZiAoKHVuc2lnbmVkIGxvbmcpZHN0IDwgKHVuc2lnbmVkIGxvbmcpc3JjKSB7CisJCS8qCisJCSAqIENvcHkgZm9yd2FyZC4KKwkJICovCisJCXQgPSAobG9uZylzcmM7CS8qIG9ubHkgbmVlZCBsb3cgYml0cyAqLworCQlpZiAoKHQgfCAobG9uZylkc3QpICYgd21hc2spIHsKKwkJCS8qCisJCQkgKiBUcnkgdG8gYWxpZ24gb3BlcmFuZHMuICBUaGlzIGNhbm5vdCBiZSBkb25lCisJCQkgKiB1bmxlc3MgdGhlIGxvdyBiaXRzIG1hdGNoLgorCQkJICovCisJCQlpZiAoKHQgXiAobG9uZylkc3QpICYgd21hc2sgfHwgbGVuZ3RoIDwgd3NpemUpCisJCQkJdCA9IGxlbmd0aDsKKwkJCWVsc2UKKwkJCQl0ID0gd3NpemUgLSAodCAmIHdtYXNrKTsKKwkJCWxlbmd0aCAtPSB0OworCQkJVExPT1AxKCpkc3QrKyA9ICpzcmMrKyk7CisJCX0KKwkJLyoKKwkJICogQ29weSB3aG9sZSB3b3JkcywgdGhlbiBtb3AgdXAgYW55IHRyYWlsaW5nIGJ5dGVzLgorCQkgKi8KKwkJdCA9IGxlbmd0aCAvIHdzaXplOworCQlUTE9PUCgqKHdvcmQgKilkc3QgPSAqKHdvcmQgKilzcmM7IHNyYyArPSB3c2l6ZTsgZHN0ICs9IHdzaXplKTsKKwkJdCA9IGxlbmd0aCAmIHdtYXNrOworCQlUTE9PUCgqZHN0KysgPSAqc3JjKyspOworCX0gZWxzZSB7CisJCS8qCisJCSAqIENvcHkgYmFja3dhcmRzLiAgT3RoZXJ3aXNlIGVzc2VudGlhbGx5IHRoZSBzYW1lLgorCQkgKiBBbGlnbm1lbnQgd29ya3MgYXMgYmVmb3JlLCBleGNlcHQgdGhhdCBpdCB0YWtlcworCQkgKiAodCZ3bWFzaykgYnl0ZXMgdG8gYWxpZ24sIG5vdCB3c2l6ZS0odCZ3bWFzaykuCisJCSAqLworCQlzcmMgKz0gbGVuZ3RoOworCQlkc3QgKz0gbGVuZ3RoOworCQl0ID0gKGxvbmcpc3JjOworCQlpZiAoKHQgfCAobG9uZylkc3QpICYgd21hc2spIHsKKwkJCWlmICgodCBeIChsb25nKWRzdCkgJiB3bWFzayB8fCBsZW5ndGggPD0gd3NpemUpCisJCQkJdCA9IGxlbmd0aDsKKwkJCWVsc2UKKwkJCQl0ICY9IHdtYXNrOworCQkJbGVuZ3RoIC09IHQ7CisJCQlUTE9PUDEoKi0tZHN0ID0gKi0tc3JjKTsKKwkJfQorCQl0ID0gbGVuZ3RoIC8gd3NpemU7CisJCVRMT09QKHNyYyAtPSB3c2l6ZTsgZHN0IC09IHdzaXplOyAqKHdvcmQgKilkc3QgPSAqKHdvcmQgKilzcmMpOworCQl0ID0gbGVuZ3RoICYgd21hc2s7CisJCVRMT09QKCotLWRzdCA9ICotLXNyYyk7CisJfQorZG9uZToKKwlyZXR1cm4gKGRzdDApOworfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1yY2hyLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbXJjaHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZDI3ZWJjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1yY2hyLmMKQEAgLTAsMCArMSwzOCBAQAorLyoJJE9wZW5CU0Q6IG1lbXJjaHIuYyx2IDEuMiAyMDA3LzExLzI3IDE2OjIyOjEyIG1hcnR5bmFzIEV4cCAkCSovCisKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMDcgVG9kZCBDLiBNaWxsZXIgPFRvZGQuTWlsbGVyQGNvdXJ0ZXNhbi5jb20+CisgKgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55CisgKiBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworICogV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKKyAqIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKKyAqIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorICogQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKKyAqIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8KKworI2luY2x1ZGUgPHN0cmluZy5oPgorCisvKgorICogUmV2ZXJzZSBtZW1jaHIoKQorICogRmluZCB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mICdjJyBpbiB0aGUgYnVmZmVyICdzJyBvZiBzaXplICduJy4KKyAqLwordm9pZCAqCittZW1yY2hyKGNvbnN0IHZvaWQgKnMsIGludCBjLCBzaXplX3QgbikKK3sKKwljb25zdCB1bnNpZ25lZCBjaGFyICpjcDsKKworCWlmIChuICE9IDApIHsKKwkJY3AgPSAodW5zaWduZWQgY2hhciAqKXMgKyBuOworCQlkbyB7CisJCQlpZiAoKigtLWNwKSA9PSAodW5zaWduZWQgY2hhciljKQorCQkJCXJldHVybigodm9pZCAqKWNwKTsKKwkJfSB3aGlsZSAoLS1uICE9IDApOworCX0KKwlyZXR1cm4oTlVMTCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNweS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYmQ4MzYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYwpAQCAtMCwwICsxLDQwIEBACisvKgkkT3BlbkJTRDogd21lbWNweS5jLHYgMS4zIDIwMDUvMDgvMDggMDg6MDU6MzcgZXNwaWUgRXhwICQJKi8KKy8qCSROZXRCU0Q6IHdtZW1jcHkuYyx2IDEuMiAyMDAxLzAxLzAzIDE0OjI5OjM3IGx1a2VtIEV4cCAkCSovCisKKy8qLQorICogQ29weXJpZ2h0IChjKTE5OTkgQ2l0cnVzIFByb2plY3QsCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICoKKyAqCWNpdHJ1cyBJZDogd21lbWNweS5jLHYgMS4yIDIwMDAvMTIvMjAgMTQ6MDg6MzEgaXRvanVuIEV4cAorICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx3Y2hhci5oPgorCit3Y2hhcl90ICoKK3dtZW1jcHkod2NoYXJfdCAqZCwgY29uc3Qgd2NoYXJfdCAqcywgc2l6ZV90IG4pCit7CisKKwlyZXR1cm4gKHdjaGFyX3QgKiltZW1jcHkoZCwgcywgbiAqIHNpemVvZih3Y2hhcl90KSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3ZlcnNpb25fc2NyaXB0LnR4dCBiL2xpYmMvdmVyc2lvbl9zY3JpcHQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM0OWEyZmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3ZlcnNpb25fc2NyaXB0LnR4dApAQCAtMCwwICsxLDE3IEBACitMSUJDIHsKKyAgZ2xvYmFsOgorICAgIC8qIFdvcmstYXJvdW5kIGZvciBodHRwOi8vYi8yMDA2NTc3NC4gKi8KKyAgICBfX2NsZWFyX2NhY2hlOworICAgIF9VbndpbmRfQmFja3RyYWNlOworICAgIF9VbndpbmRfR2V0SVA7CisgIGxvY2FsOgorICAgIF9aU3Q3bm90aHJvdzsKKyAgICBfWmRhUHY7CisgICAgX1pkYVB2UktTdDlub3Rocm93X3Q7CisgICAgX1pkbFB2OworICAgIF9aZGxQdlJLU3Q5bm90aHJvd190OworICAgIF9abmFqOworICAgIF9abmFqUktTdDlub3Rocm93X3Q7CisgICAgX1pud2o7CisgICAgX1pud2pSS1N0OW5vdGhyb3dfdDsKK307CmRpZmYgLS1naXQgYS9saWJjL3pvbmVpbmZvL3R6ZGF0YSBiL2xpYmMvem9uZWluZm8vdHpkYXRhCmluZGV4IGI5YTY2MjEuLjM2NjFiNjggMTAwNjQ0Ci0tLSBhL2xpYmMvem9uZWluZm8vdHpkYXRhCisrKyBiL2xpYmMvem9uZWluZm8vdHpkYXRhCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2xpYmRsL0FuZHJvaWQubWsgYi9saWJkbC9BbmRyb2lkLm1rCmluZGV4IGNiMWNiN2QuLjJhMDcyNGEgMTAwNjQ0Ci0tLSBhL2xpYmRsL0FuZHJvaWQubWsKKysrIGIvbGliZGwvQW5kcm9pZC5tawpAQCAtMjMsNiArMjMsNyBAQAogCiBMT0NBTF9TUkNfRklMRVM6PSBsaWJkbC5jCiBMT0NBTF9DRkxBR1MgOj0gLVdhbGwgLVdleHRyYSAtV3VudXNlZCAtV2Vycm9yCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIAogTE9DQUxfTU9EVUxFIDo9IGxpYmRsCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKQEAgLTM1LDQgKzM2LDE4IEBACiBMT0NBTF9BTExPV19VTkRFRklORURfU1lNQk9MUyA6PSB0cnVlCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogCitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQogaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQorCisjIEEgZHVtbXkgbGliZGwuYS4gTmVlZCBmb3Igc3RhdGljIGV4ZWN1dGFibGVzIHVzaW5nIHRoZSBMTFZNIHVud2luZGVyLiBNb3N0CisjIGZ1bmN0aW9ucyBkZWZhdWx0IHRvIGZhaWx1cmUsIG90aGVycyB1c2UgYSBzZW5zaWJsZSBkZWZhdWx0IChkbF9pdGVyYXRlX3BoZHIoKQorIyByZXR1cm5zIDAsIGFzIHdvdWxkIGhhcHBlbiBpZiB0aGUgdXNlciBpdGVyYXRlZCBvdmVyIGV2ZXJ5IHBoZHIpLgoraW5jbHVkZSAkKENMRUFSX1ZBUlMpCitMT0NBTF9TUkNfRklMRVM6PSBsaWJkbC5jCitMT0NBTF9DRkxBR1MgOj0gLVdhbGwgLVdleHRyYSAtV3VudXNlZCAtV2Vycm9yCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKKworTE9DQUxfTU9EVUxFIDo9IGxpYmRsCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCmRpZmYgLS1naXQgYS9saWJtL0FuZHJvaWQubWsgYi9saWJtL0FuZHJvaWQubWsKaW5kZXggOTk0Y2FhMC4uNjQ3MmExNSAxMDA2NDQKLS0tIGEvbGlibS9BbmRyb2lkLm1rCisrKyBiL2xpYm0vQW5kcm9pZC5tawpAQCAtMSwzNCArMSwzNCBAQAogaWZuZXEgKCQoVEFSR0VUX1VTRV9QUklWQVRFX0xJQk0pLHRydWUpCiBMT0NBTF9QQVRIOj0gJChjYWxsIG15LWRpcikKIAotIyBUT0RPOiB0aGlzIGNvbWVzIGZyb20gZnJvbSB1cHN0cmVhbSdzIGxpYmMsIG5vdCBsaWJtLCBidXQgaXQncyBhbgotIyBpbXBsZW1lbnRhdGlvbiBkZXRhaWwgdGhhdCBzaG91bGQgaGF2ZSBoaWRkZW4gdmlzaWJpbGl0eSwgc28gaXQgbmVlZHMKLSMgdG8gYmUgaW4gd2hhdGV2ZXIgbGlicmFyeSB0aGUgbWF0aCBjb2RlIGlzIGluLgotbGlibV9jb21tb25fc3JjX2ZpbGVzIDo9IFwKLSAgICBkaWdpdHRvaW50LmMgIFwKK2Jpb25pY19jb3ZlcmFnZSA6PSBmYWxzZQogCi0jIFRPRE86IHRoaXMgaXMgbm90IGluIHRoZSBCU0RzLgotbGlibV9jb21tb25fc3JjX2ZpbGVzICs9IFwKLSAgICBzaWduaWZpY2FuZGwuYyBcCi0gICAgc2luY29zLmMgXAoraWZuZXEgKCwkKGZpbHRlciAkKFRBUkdFVF9BUkNIKSx4ODYgeDg2XzY0KSkKKyMgQ2xhbmcgaGFzIHdyb25nIGxvbmcgZG91YmxlIHNpemVzIGZvciB4ODYuCitsaWJtX2NsYW5nIDo9IGZhbHNlCitlbmRpZgogCi1saWJtX2NvbW1vbl9zcmNfZmlsZXMgKz0gXAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBsaWJtLmEKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9NT0RVTEUgOj0gbGlibQorCitMT0NBTF9TUkNfRklMRVMgOj0gXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vYnNkc3JjL2JfZXhwLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vYnNkc3JjL2JfbG9nLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vYnNkc3JjL2JfdGdhbW1hLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWcuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvY2F0cmlnZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3NmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2guYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2luLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXNpbmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuMi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW4yZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmhmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2hmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZXhwLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZXhwZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Ztb2QuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9mbW9kZi5jIFwKQEAgLTM2LDcgKzM2LDYgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2dhbW1hZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2dhbW1hZl9yLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZ2FtbWFfci5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2h5cG90LmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfaHlwb3RmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfajAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9qMGYuYyBcCkBAIC00OCwxMyArNDcsMTAgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFmX3IuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFfci5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZzEwLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nMTBmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nMi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZzJmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvd2YuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9yZW1haW5kZXIuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9yZW1haW5kZXJmLmMgXApAQCAtNjIsMTAgKzU4LDcgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3JlbV9waW8yZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NjYWxiLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2NhbGJmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmhmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydC5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NxcnRmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2ltcHJlY2lzZS5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9rX2Nvcy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9rX2Nvc2YuYyBcCkBAIC03OCw1MSArNzEsNDcgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9rX3RhbmYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hc2luaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2FzaW5oZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2F0YW4uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hdGFuZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NhcmcuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jYXJnZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NicnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jYXJnbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NicnRmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2Nvc2guYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jY29zaGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZXhwLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2V4cGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jaW1hZy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NpbWFnZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NpbWFnbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NvbmouYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb25qZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NvbmpsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29weXNpZ24uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3B5c2lnbmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3MuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3NmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3Byb2ouYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jcHJvamYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jcHJvamwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jcmVhbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NyZWFsZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NyZWFsbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NzaW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3NpbmhmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3NxcnQuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jc3FydGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jc3FydGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jdGFuaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2N0YW5oZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZmYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19leHAyLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXhwMmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19leHBtMS5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cG0xZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZhYnMuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mYWJzZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZkaW0uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19maW5pdGUuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19maW5pdGVmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmxvb3IuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWEuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWFmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1heC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYXhmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1pbi5jIFwKQEAgLTEzMSwxNiArMTIwLDExIEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mcmV4cGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19pbG9nYi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2lsb2diZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludC5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sbHJvdW5kLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyb3VuZGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sb2cxcC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZzFwZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZ2IuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sb2diZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50LmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnRmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJvdW5kLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJvdW5kZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX21vZGYuYyBcCkBAIC0xNTEsOCArMTM1LDYgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX25leHRhZnRlcmYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yZW1xdW8uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yZW1xdW9mLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludC5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmQuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zY2FsYmxuLmMgXApAQCAtMTYxLDI1ICsxNDMsMjAgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3NpZ25nYW0uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zaWduaWZpY2FuZC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3NpZ25pZmljYW5kZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3Npbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3NpbmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW4uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5mLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGdhbW1hZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmNmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3dfY2Ficy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy93X2NhYnNmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3dfY2Fic2wuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvd19kcmVtLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3dfZHJlbWYuYyBcCiAKLWxpYm1fY29tbW9uX3NyY19maWxlcyArPSBcCitMT0NBTF9TUkNfRklMRVNfMzIgKz0gXAogICAgIGZha2VfbG9uZ19kb3VibGUuYyBcCi0gICAgc2lnbmJpdC5jIFwKIAotbGlibV9sZF9zcmNfZmlsZXMgPSBcCitMT0NBTF9TUkNfRklMRVNfNjQgOj0gXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2wuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2lubC5jIFwKQEAgLTE4Nyw2ICsxNjQsNyBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmhsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZm1vZGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9oeXBvdGwuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcmVtYWluZGVybC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NxcnRsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfYXNpbmhsLmMgXApAQCAtMTk0LDYgKzE3Miw3IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jYnJ0bC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWxsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29weXNpZ25sLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3NsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmFic2wuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmwuYyBcCkBAIC0yMTUsMjUgKzE5NCwyOTQgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2NhbGJubC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmhsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2lubC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFubC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jbC5jIFwKIAotbGlibV9sZF9zcmNfZmlsZXMgKz0gXAorTE9DQUxfU1JDX0ZJTEVTXzY0ICs9IFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2ludnRyaWcuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX2xnYW1tYWxfci5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfY29zbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfc2lubC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfdGFubC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXJmbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwMmwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2xvZ2wuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX25hbmwuYyBcCiAKLSMgVE9ETzogcmUtZW5hYmxlIGkzODcvZV9zcXJ0Zi5TIGZvciB4ODYsIGFuZCBtYXliZSBvdGhlcnMuCisjIFRPRE86IHRoaXMgY29tZXMgZnJvbSBmcm9tIHVwc3RyZWFtJ3MgbGliYywgbm90IGxpYm0sIGJ1dCBpdCdzIGFuCisjIGltcGxlbWVudGF0aW9uIGRldGFpbCB0aGF0IHNob3VsZCBoYXZlIGhpZGRlbiB2aXNpYmlsaXR5LCBzbyBpdCBuZWVkcworIyB0byBiZSBpbiB3aGF0ZXZlciBsaWJyYXJ5IHRoZSBtYXRoIGNvZGUgaXMgaW4uCitMT0NBTF9TUkNfRklMRVMgKz0gXAorICAgIGRpZ2l0dG9pbnQuYyAgXAogCi1saWJtX2NvbW1vbl9jZmxhZ3MgOj0gXAorIyBGdW5jdGlvbmFsaXR5IG5vdCBpbiB0aGUgQlNEcy4KK0xPQ0FMX1NSQ19GSUxFUyArPSBcCisgICAgc2lnbmlmaWNhbmRsLmMgXAorICAgIHNpbmNvcy5jIFwKKworIyBNb2RpZmllZCB2ZXJzaW9ucyBvZiBCU0QgY29kZS4KK0xPQ0FMX1NSQ19GSUxFUyArPSBcCisgICAgc2lnbmJpdC5jIFwKKworIyBBcmNoIHNwZWNpZmljIG9wdGltaXphdGlvbnMuCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgYXJtCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitMT0NBTF9TUkNfRklMRVNfYXJtICs9IFwKKyAgICBhcm0vZmVudi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3MuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2luLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbjIuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZXhwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfaHlwb3QuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cxMC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hdGFuLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2JydC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWwuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYS5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYWYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19leHBtMS5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sb2cxcC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2luLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmNmLmMgXAorCisjIHNfZmxvb3IuUyByZXF1aXJlcyBuZW9uIGluc3RydWN0aW9ucy4KK2lmZGVmIFRBUkdFVF8yTkRfQVJDSAorYXJjaF92YXJpYW50IDo9ICQoVEFSR0VUXzJORF9BUkNIX1ZBUklBTlQpCitlbHNlCithcmNoX3ZhcmlhbnQgOj0gJChUQVJHRVRfQVJDSF9WQVJJQU5UKQorZW5kaWYKKworIyBVc2UgdGhlIEMgdmVyc2lvbiBvbiBhcm12Ny1hIHNpbmNlIGl0IGRvZXNuJ3Qgc3VwcG9ydCBuZW9uIGluc3RydWN0aW9ucy4KK2lmZXEgKCQoYXJjaF92YXJpYW50KSxhcm12Ny1hKQorTE9DQUxfU1JDX0ZJTEVTX2FybSArPSBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zcXJ0LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vci5jIFwKKworZWxzZQorTE9DQUxfU1JDX0ZJTEVTX2FybSArPSBcCisgICAgYXJtL2Vfc3FydC5TIFwKKyAgICBhcm0vZV9zcXJ0Zi5TIFwKKyAgICBhcm0vc19mbG9vci5TIFwKKworZW5kaWYKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBhcm02NAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorTE9DQUxfU1JDX0ZJTEVTX2FybTY0ICs9IFwKKyAgICBhcm02NC9jZWlsLlMgXAorICAgIGFybTY0L2ZlbnYuYyBcCisgICAgYXJtNjQvZm1hLlMgXAorICAgIGFybTY0L2Zsb29yLlMgXAorICAgIGFybTY0L2xyaW50LlMgXAorICAgIGFybTY0L3JpbnQuUyBcCisgICAgYXJtNjQvc3FydC5TIFwKKyAgICBhcm02NC90cnVuYy5TIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3MuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2luLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbjIuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZXhwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfaHlwb3QuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cxMC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hdGFuLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2JydC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cG0xLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbG9nMXAuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zaW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMgXAorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIG1pcHMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYm1fbWlwc19hcmNoX2ZpbGVzIDo9IFwKKyAgICBtaXBzL2ZlbnYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXNpbi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW4yLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2V4cC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2h5cG90LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nMTAuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9wb3cuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5oLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NxcnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfYXRhbi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NicnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3MuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWEuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWFmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmxvb3IuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19leHBtMS5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sb2cxcC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2luLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmNmLmMgXAorCitMT0NBTF9TUkNfRklMRVNfbWlwcyArPSAkKGxpYm1fbWlwc19hcmNoX2ZpbGVzKQorTE9DQUxfU1JDX0ZJTEVTX21pcHM2NCArPSAkKGxpYm1fbWlwc19hcmNoX2ZpbGVzKQorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIHg4NgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorTE9DQUxfU1JDX0ZJTEVTX3g4NiArPSBcCisgICAgaTM4Ny9mZW52LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1hLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1hZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50Zi5jIFwKKyAgICB4ODYvc3FydC5TIFwKKyAgICB4ODYvc3FydGYuUyBcCisgICAgeDg2L2VfYWNvcy5TIFwKKyAgICB4ODYvZV9hc2luLlMgXAorICAgIHg4Ni9lX2F0YW4yLlMgXAorICAgIHg4Ni9lX2Nvc2guUyBcCisgICAgeDg2L2VfZXhwLlMgXAorICAgIHg4Ni9lX2h5cG90LlMgXAorICAgIHg4Ni9lX2xvZzEwLlMgXAorICAgIHg4Ni9lX2xvZy5TIFwKKyAgICB4ODYvZV9wb3cuUyBcCisgICAgeDg2L2Vfc2luaC5TIFwKKyAgICB4ODYvbGlibV9yZWR1Y2VfcGkwNGwuUyBcCisgICAgeDg2L2xpYm1fc2luY29zX2h1Z2UuUyBcCisgICAgeDg2L2xpYm1fdGFuY290X2h1Z2UuUyBcCisgICAgeDg2L3NfYXRhbi5TIFwKKyAgICB4ODYvc19jYnJ0LlMgXAorICAgIHg4Ni9zX2Nvcy5TIFwKKyAgICB4ODYvc19leHBtMS5TIFwKKyAgICB4ODYvc19sb2cxcC5TIFwKKyAgICB4ODYvc19zaW4uUyBcCisgICAgeDg2L3NfdGFuaC5TIFwKKyAgICB4ODYvc190YW4uUyBcCisKK2lmZXEgKCQoQVJDSF9YODZfSEFWRV9TU0U0XzEpLHRydWUpCitMT0NBTF9TUkNfRklMRVNfeDg2ICs9IFwKKyAgICB4ODYvY2VpbC5TIFwKKyAgICB4ODYvY2VpbGYuUyBcCisgICAgeDg2L2Zsb29yLlMgXAorICAgIHg4Ni9mbG9vcmYuUyBcCisgICAgeDg2L3RydW5jLlMgXAorICAgIHg4Ni90cnVuY2YuUyBcCisKK2Vsc2UKK0xPQ0FMX1NSQ19GSUxFU194ODYgKz0gXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWxmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmxvb3IuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuYy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jZi5jIFwKKworZW5kaWYKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyB4ODZfNjQKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xPQ0FMX1NSQ19GSUxFU194ODZfNjQgKz0gXAorICAgIGFtZDY0L2ZlbnYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWEuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWFmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRmLmMgXAorICAgIHg4Nl82NC9zcXJ0LlMgXAorICAgIHg4Nl82NC9zcXJ0Zi5TIFwKKyAgICB4ODZfNjQvZV9hY29zLlMgXAorICAgIHg4Nl82NC9lX2FzaW4uUyBcCisgICAgeDg2XzY0L2VfYXRhbjIuUyBcCisgICAgeDg2XzY0L2VfY29zaC5TIFwKKyAgICB4ODZfNjQvZV9leHAuUyBcCisgICAgeDg2XzY0L2VfaHlwb3QuUyBcCisgICAgeDg2XzY0L2VfbG9nMTAuUyBcCisgICAgeDg2XzY0L2VfbG9nLlMgXAorICAgIHg4Nl82NC9lX3Bvdy5TIFwKKyAgICB4ODZfNjQvZV9zaW5oLlMgXAorICAgIHg4Nl82NC9zX2F0YW4uUyBcCisgICAgeDg2XzY0L3NfY2JydC5TIFwKKyAgICB4ODZfNjQvc19jb3MuUyBcCisgICAgeDg2XzY0L3NfZXhwbTEuUyBcCisgICAgeDg2XzY0L3NfbG9nMXAuUyBcCisgICAgeDg2XzY0L3Nfc2luLlMgXAorICAgIHg4Nl82NC9zX3RhbmguUyBcCisgICAgeDg2XzY0L3NfdGFuLlMgXAorCitpZmVxICgkKEFSQ0hfWDg2X0hBVkVfU1NFNF8xKSx0cnVlKQorTE9DQUxfU1JDX0ZJTEVTX3g4Nl82NCArPSBcCisgICAgeDg2XzY0L2NlaWwuUyBcCisgICAgeDg2XzY0L2NlaWxmLlMgXAorICAgIHg4Nl82NC9mbG9vci5TIFwKKyAgICB4ODZfNjQvZmxvb3JmLlMgXAorICAgIHg4Nl82NC90cnVuYy5TIFwKKyAgICB4ODZfNjQvdHJ1bmNmLlMgXAorCitlbHNlCitMT0NBTF9TUkNfRklMRVNfeDg2XzY0ICs9IFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWwuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmxvb3JmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmMuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuY2YuYyBcCisKK2VuZGlmCisKK0xPQ0FMX0NfSU5DTFVERVNfeDg2ICs9ICQoTE9DQUxfUEFUSCkvaTM4NworCitMT0NBTF9DX0lOQ0xVREVTICs9ICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvCitMT0NBTF9DX0lOQ0xVREVTXzY0ICs9ICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC8KKworTE9DQUxfQ0xBTkcgOj0gJChsaWJtX2NsYW5nKQorTE9DQUxfQVJNX01PREUgOj0gYXJtCitMT0NBTF9DRkxBR1MgOj0gXAogICAgIC1ERkxUX0VWQUxfTUVUSE9EPTAgXAotICAgIC1zdGQ9Yzk5IFwKICAgICAtaW5jbHVkZSAkKExPQ0FMX1BBVEgpL2ZyZWVic2QtY29tcGF0LmggXAogICAgIC1Xbm8tbWlzc2luZy1icmFjZXMgXAogICAgIC1Xbm8tcGFyZW50aGVzZXMgXApAQCAtMjQyLDYxICs0OTAsNDYgQEAKICAgICAtV25vLXVua25vd24tcHJhZ21hcyBcCiAgICAgLWZ2aXNpYmlsaXR5PWhpZGRlbiBcCiAKK0xPQ0FMX0FTRkxBR1MgOj0gXAorICAgIC1JYmlvbmljL2xpYmMgXAorCiAjIFdvcmthcm91bmQgdGhlIEdDQyAiKGxvbmcpZm4gLT4gbGZuIiBvcHRpbWl6YXRpb24gYnVnIHdoaWNoIHdpbGwgcmVzdWx0IGluCiAjIHNlbGYgcmVjdXJzaW9ucyBmb3IgbHJpbnQsIGxyaW50ZiwgYW5kIGxyaW50bC4KICMgQlVHOiAxNDIyNTk2OAotbGlibV9jb21tb25fY2ZsYWdzICs9IC1mbm8tYnVpbHRpbi1yaW50IC1mbm8tYnVpbHRpbi1yaW50ZiAtZm5vLWJ1aWx0aW4tcmludGwKK0xPQ0FMX0NGTEFHUyArPSBcCisgICAgLWZuby1idWlsdGluLXJpbnQgXAorICAgIC1mbm8tYnVpbHRpbi1yaW50ZiBcCisgICAgLWZuby1idWlsdGluLXJpbnRsIFwKIAotbGlibV9jb21tb25faW5jbHVkZXMgOj0gJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy8KK0xPQ0FMX0NPTkxZX0ZMQUdTIDo9IFwKKyAgICAtc3RkPWM5OSBcCiAKLWxpYm1fbGRfaW5jbHVkZXMgOj0gJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4LwotCi0jCi0jIGxpYm0uYSBmb3IgdGFyZ2V0LgotIwotaW5jbHVkZSAkKENMRUFSX1ZBUlMpCi1MT0NBTF9NT0RVTEU6PSBsaWJtCi1MT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKLUxPQ0FMX0FSTV9NT0RFIDo9IGFybQotTE9DQUxfQ0ZMQUdTIDo9ICQobGlibV9jb21tb25fY2ZsYWdzKQotTE9DQUxfQ19JTkNMVURFUyArPSAkKGxpYm1fY29tbW9uX2luY2x1ZGVzKQotTE9DQUxfU1JDX0ZJTEVTIDo9ICQobGlibV9jb21tb25fc3JjX2ZpbGVzKQotTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliYwotCi0jIGFyY2gtc3BlY2lmaWMgc2V0dGluZ3MKLUxPQ0FMX0NfSU5DTFVERVNfYXJtIDo9ICQoTE9DQUxfUEFUSCkvYXJtCi1MT0NBTF9TUkNfRklMRVNfYXJtIDo9IGFybS9mZW52LmMKLQotTE9DQUxfQ19JTkNMVURFU19hcm02NCA6PSAkKGxpYm1fbGRfaW5jbHVkZXMpCi1MT0NBTF9TUkNfRklMRVNfYXJtNjQgOj0gYXJtNjQvZmVudi5jICQobGlibV9sZF9zcmNfZmlsZXMpCi0KLUxPQ0FMX0NfSU5DTFVERVNfeDg2IDo9ICQoTE9DQUxfUEFUSCkvaTM4NwotTE9DQUxfU1JDX0ZJTEVTX3g4NiA6PSBpMzg3L2ZlbnYuYwotCi1MT0NBTF9DX0lOQ0xVREVTX3g4Nl82NCA6PSAkKGxpYm1fbGRfaW5jbHVkZXMpCi1MT0NBTF9TUkNfRklMRVNfeDg2XzY0IDo9IGFtZDY0L2ZlbnYuYyAkKGxpYm1fbGRfc3JjX2ZpbGVzKQotCi1MT0NBTF9TUkNfRklMRVNfbWlwcyA6PSBtaXBzL2ZlbnYuYwotCi1MT0NBTF9DX0lOQ0xVREVTX21pcHM2NCA6PSAkKGxpYm1fbGRfaW5jbHVkZXMpCi1MT0NBTF9TUkNfRklMRVNfbWlwczY0IDo9IG1pcHMvZmVudi5jICQobGlibV9sZF9zcmNfZmlsZXMpCi0KK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKLSMKLSMgbGlibS5zbyBmb3IgdGFyZ2V0LgotIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBsaWJtLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlICQoQ0xFQVJfVkFSUykKLUxPQ0FMX01PRFVMRTo9IGxpYm0KLUxPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5taworCisjIFRPRE86IFRoaXMgaXMgdG8gd29yayBhcm91bmQgYi8xOTA1OTg4NS4gUmVtb3ZlIGFmdGVyIHJvb3QgY2F1c2UgaXMgZml4ZWQKK0xPQ0FMX0xERkxBR1NfYXJtIDo9IC1XbCwtLWhhc2gtc3R5bGU9c3lzdgorCitMT0NBTF9NT0RVTEUgOj0gbGlibQorTE9DQUxfQ0xBTkcgOj0gJChsaWJtX2NsYW5nKQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliYwogTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJtCiAKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCisKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorCiAjIFdlJ2QgcmVhbGx5IGxpa2UgdG8gZG8gdGhpcyBmb3IgYWxsIGFyY2hpdGVjdHVyZXMsIGJ1dCBzaW5jZSB0aGlzIHdhc24ndCBkb25lCiAjIGJlZm9yZSwgdGhlc2Ugc3ltYm9scyBtdXN0IGNvbnRpbnVlIHRvIGJlIGV4cG9ydGVkIG9uIExQMzIgZm9yIGJpbmFyeQogIyBjb21wYXRpYmlsaXR5LgotTE9DQUxfTERGTEFHU19hcm02NCA6PSAtV2wsLS1leGNsdWRlLWxpYnMsbGliZ2NjLmEKLUxPQ0FMX0xERkxBR1NfbWlwczY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQotTE9DQUxfTERGTEFHU194ODZfNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCitMT0NBTF9MREZMQUdTXzY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQorCiBpbmNsdWRlICQoQlVJTERfU0hBUkVEX0xJQlJBUlkpCiBlbmRpZgpkaWZmIC0tZ2l0IGEvbGlibS9OT1RJQ0UgYi9saWJtL05PVElDRQppbmRleCA1YmU2MGRiLi43MGYyZjQ2IDEwMDY0NAotLS0gYS9saWJtL05PVElDRQorKysgYi9saWJtL05PVElDRQpAQCAtNTQ5LDMyICs1NDksNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMjAwNC0yMDExIERhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9SRz4KLUFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi1BTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLURBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi1PUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLUhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi1MSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi1PVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi1TVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCiBDb3B5cmlnaHQgKGMpIDIwMDUgQnJ1Y2UgRC4gRXZhbnMgYW5kIFN0ZXZlbiBHLiBLYXJnbAogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIApAQCAtOTc2LDYgKzk1MCwzMiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKK0NvcHlyaWdodCAoYykgMjAxMiBTdGVwaGVuIE1vbnRnb21lcnktU21pdGggPHN0ZXBoZW5ARnJlZUJTRC5PUkc+CitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKzEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKK0ZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCitEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCitIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorU1VDSCBEQU1BR0UuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogQ29weXJpZ2h0IChjKSAyMDEzIERhdmlkIENoaXNuYWxsCiBBbGwgcmlnaHRzIHJlc2VydmVkLgogCmRpZmYgLS1naXQgYS9saWJtL2FybS9lX3NxcnQuUyBiL2xpYm0vYXJtL2Vfc3FydC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3MzEyZjUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL2FybS9lX3NxcnQuUwpAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChjKSAyMDEzLTIwMTQsIE5WSURJQSBDb3Jwb3JhdGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBKb2hubnkgUWl1IDxqb3FpdUBudmlkaWEuY29tPgorICogU2h1IFpoYW5nIDxjaGF6aGFuZ0BudmlkaWEuY29tPgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKKyAqICAgICAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgVGhlIExpbnV4IEZvdW5kYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorICogV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKKyAqIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTi1JTkZSSU5HRU1FTlQKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IKKyAqIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLAorICogV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UKKyAqIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4KKyAqIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxmbG9hdC5oPgorI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0KQorICAgIHZtb3YuZjY0ICAgIGQwLCByMCwgcjEKKyAgICB2c3FydC5mNjQgICBkMCwgZDAKKyAgICB2bW92LmY2NCAgICByMCwgcjEsIGQwCisgICAgYnggICAgICAgICAgbHIKK0VORChzcXJ0KQorCitBTElBU19TWU1CT0woc3FydGwsIHNxcnQpOwpkaWZmIC0tZ2l0IGEvbGlibS9hcm0vZV9zcXJ0Zi5TIGIvbGlibS9hcm0vZV9zcXJ0Zi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkZWZiMjIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL2FybS9lX3NxcnRmLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMy0yMDE0LCBOVklESUEgQ29ycG9yYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogSm9oaG5ueSBRaXUgPGpvcWl1QG52aWRpYS5jb20+CisgKiBTaHUgWmhhbmcgPGNoYXpoYW5nQG52aWRpYS5jb20+CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAorICogICAgICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBUaGUgTGludXggRm91bmRhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgKiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OLUlORlJJTkdFTUVOVAorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgorICogQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCisgKiBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRQorICogT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTgorICogSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0ZikKKyAgICB2bW92LmYzMiAgICBzMCwgcjAKKyAgICB2c3FydC5mMzIgICBzMCwgczAKKyAgICB2bW92LmYzMiAgICByMCwgczAKKyAgICBieCAgICAgICAgICBscgorRU5EKHNxcnRmKQpkaWZmIC0tZ2l0IGEvbGlibS9hcm0vc19mbG9vci5TIGIvbGlibS9hcm0vc19mbG9vci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhZjhmNzYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL2FybS9zX2Zsb29yLlMKQEAgLTAsMCArMSwxMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMtMjAxNCwgTlZJRElBIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIEpvaG5ueSBRaXUgPGpvcWl1QG52aWRpYS5jb20+CisgKiBTaHUgWmhhbmcgPGNoYXpoYW5nQG52aWRpYS5jb20+CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAorICogICAgICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBUaGUgTGludXggRm91bmRhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgKiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OLUlORlJJTkdFTUVOVAorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgorICogQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCisgKiBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRQorICogT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTgorICogSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGZsb2F0Lmg+CisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZsb29yKSAgICAvKiB4IGluIHIwLCByMSAqLworCisgICAgICAgIGFuZCAgICAgICAgICAgICByMywgcjEsICMweDgwMDAwMDAwICAgICAvKiBzaWduKHgpICovCisgICAgICAgIGJpYyAgICAgICAgICAgICByMSwgcjEsICMweDgwMDAwMDAwICAgICAvKiB4ID0gYWJzKHgpICovCisKKyAgICAgICAgLyogZXh0cmFjdCBleHAgb2YgeCAqLworICAgICAgICBsc3IgICAgICAgICAgICAgcjIsIHIxLCAjMjAKKyAgICAgICAgc3ViICAgICAgICAgICAgIHIyLCByMiwgIzB4M2ZjCisgICAgICAgIHN1YnMgICAgICAgICAgICByMiwgcjIsICMweDMgICAgICAgICAgICAvKiByMiA8LSBleHAgKi8KKworICAgICAgICAvKiB8eHwgPCAxLjA/ICovCisgICAgICAgIGJsdCAgICAgICAgICAgICAuTHhfbHRfb25lCisKKyAgICAgICAgLyogeCA8IDA/ICovCisgICAgICAgIGNtcCAgICAgICAgICAgICByMywgIzAKKyAgICAgICAgYm5lICAgICAgICAgICAgIC5MY2xyX2ZyYWNfbmVnCisKKyAgICAgICAgLyogfHh8IDw9IDJeMjA/ICovCisgICAgICAgIGNtcCAgICAgICAgICAgICByMiwgIzIwCisgICAgICAgIGJsZSAgICAgICAgICAgICAuTGNscl9mcmFjX3IxCisKKyAgICAgICAgLyogfHh8IDwgMl41Mj8gKi8KKyAgICAgICAgY21wICAgICAgICAgICAgIHIyLCAjNTIKKyAgICAgICAgYmx0ICAgICAgICAgICAgIC5MY2xyX2ZyYWNfcjAKKworICAgICAgICAvKiByZXR1cm4geCAqLworICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworLkxjbHJfZnJhY19yMToKKyAgICAgICAgcnNiICAgICAgICAgICAgIHIyLCByMiwgIzIwCisgICAgICAgIGxzciAgICAgICAgICAgICByMSwgcjEsIHIyCisgICAgICAgIGxzbCAgICAgICAgICAgICByMSwgcjEsIHIyCisgICAgICAgIG1vdiAgICAgICAgICAgICByMCwgIzAKKyAgICAgICAgYnggICAgICAgICAgICAgIGxyCisKKy5MY2xyX2ZyYWNfcjA6CisgICAgICAgIHJzYiAgICAgICAgICAgICByMiwgcjIsICM1MgorICAgICAgICBsc3IgICAgICAgICAgICAgcjAsIHIwLCByMgorICAgICAgICBsc2wgICAgICAgICAgICAgcjAsIHIwLCByMgorICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworLkxjbHJfZnJhY19uZWc6CisgICAgICAgIC8qIHx4fCA8PSAyXjIwPyAqLworICAgICAgICBjbXAgICAgICAgICAgICAgcjIsICMyMAorICAgICAgICBibGUgICAgICAgICAgICAgLkxjbHJfZnJhY19yMV9uZWcKKworICAgICAgICAvKiB8eHwgPCAyXjUyPyAqLworICAgICAgICBjbXAgICAgICAgICAgICAgcjIsICM1MgorICAgICAgICBibHQgICAgICAgICAgICAgLkxjbHJfZnJhY19yMF9uZWcKKworICAgICAgICAvKiByZXR1cm4geCAqLworICAgICAgICBvcnIgICAgICAgICAgICAgcjEsIHIxLCAjMHg4MDAwMDAwMAorICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworLkxjbHJfZnJhY19yMV9uZWc6CisgICAgICAgIHJzYiAgICAgICAgICAgICByMiwgcjIsICMyMAorICAgICAgICBtb3YgICAgICAgICAgICAgcjMsICMxCisgICAgICAgIGxzbCAgICAgICAgICAgICByMywgcjMsIHIyCisgICAgICAgIHN1YiAgICAgICAgICAgICByMywgcjMsICMxCisgICAgICAgIGFuZCAgICAgICAgICAgICByMywgcjEsIHIzCisgICAgICAgIG9yciAgICAgICAgICAgICByMywgcjMsIHIwCisgICAgICAgIGxzciAgICAgICAgICAgICByMSwgcjEsIHIyCisgICAgICAgIGxzbCAgICAgICAgICAgICByMSwgcjEsIHIyCisgICAgICAgIG1vdiAgICAgICAgICAgICByMCwgIzAKKyAgICAgICAgYiAgICAgICAgICAgICAgIC5McmV0dXJuX3hfbmVnCisKKy5MY2xyX2ZyYWNfcjBfbmVnOgorICAgICAgICByc2IgICAgICAgICAgICAgcjIsIHIyLCAjNTIKKyAgICAgICAgbW92ICAgICAgICAgICAgIHIzLCAjMQorICAgICAgICBsc2wgICAgICAgICAgICAgcjMsIHIzLCByMgorICAgICAgICBzdWIgICAgICAgICAgICAgcjMsIHIzLCAjMQorICAgICAgICBhbmQgICAgICAgICAgICAgcjMsIHIwLCByMworICAgICAgICBsc3IgICAgICAgICAgICAgcjAsIHIwLCByMgorICAgICAgICBsc2wgICAgICAgICAgICAgcjAsIHIwLCByMgorICAgICAgICBiICAgICAgICAgICAgICAgLkxyZXR1cm5feF9uZWcKKworLkx4X2x0X29uZToKKyAgICAgICAgLyogeCA9PSArLTA/ICovCisgICAgICAgIGNtcCAgICAgICAgICAgICByMCwgIzAKKyAgICAgICAgY21wZXEgICAgICAgICAgIHIxLCAjMAorICAgICAgICBvcnJlcSAgICAgICAgICAgcjEsIHIxLCByMworICAgICAgICBieGVxICAgICAgICAgICAgbHIKKworICAgICAgICAvKiAoeCA+IDApID8gMCA6IC0xICovCisgICAgICAgIG1vdiAgICAgICAgICAgICByMSwgIzB4MDAxMDAwMDAKKyAgICAgICAgbW92ICAgICAgICAgICAgIHIwLCAjMAorICAgICAgICBjbXAgICAgICAgICAgICAgcjMsICMwCisgICAgICAgIG1vdm5lICAgICAgICAgICByMSwgIzB4YzAwMDAwMDAKKyAgICAgICAgc3ViICAgICAgICAgICAgIHIxLCByMSwgIzB4MDAxMDAwMDAKKyAgICAgICAgYnggICAgICAgICAgICAgIGxyCisKKy5McmV0dXJuX3hfbmVnOgorICAgICAgICBjbXAgICAgICAgICAgICAgcjMsICMwCisgICAgICAgIG9yciAgICAgICAgICAgICByMSwgcjEsICMweDgwMDAwMDAwCisgICAgICAgIGJ4ZXEgICAgICAgICAgICBscgorCisgICAgICAgIHZtb3YgICAgICAgICAgICBkMTYsIHIwLCByMQorICAgICAgICB2bW92LmY2NCAgICAgICAgZDE4LCAjMS4wCisgICAgICAgIHZzdWIuZjY0ICAgICAgICBkMTYsIGQxNiwgZDE4CisgICAgICAgIHZtb3YgICAgICAgICAgICByMCwgcjEsIGQxNgorICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworRU5EKGZsb29yKQorCitBTElBU19TWU1CT0woZmxvb3JsLCBmbG9vcik7CmRpZmYgLS1naXQgYS9saWJtL2FybTY0L2NlaWwuUyBiL2xpYm0vYXJtNjQvY2VpbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwNmM5ODgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL2FybTY0L2NlaWwuUwpAQCAtMCwwICsxLDI3IEBACisvKgorICogQ29weXJpZ2h0IDIwMTUsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGNlaWwpCisgIGZyaW50UCBkMCwgZDAKKyAgcmV0CitFTkQoY2VpbCkKKworRU5UUlkoY2VpbGYpCisgIGZyaW50UCBzMCwgczAKKyAgcmV0CitFTkQoY2VpbGYpCmRpZmYgLS1naXQgYS9saWJtL2FybTY0L2Zsb29yLlMgYi9saWJtL2FybTY0L2Zsb29yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmQ3OTJlNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvZmxvb3IuUwpAQCAtMCwwICsxLDI3IEBACisvKgorICogQ29weXJpZ2h0IDIwMTUsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZsb29yKQorICBmcmludE0gZDAsIGQwCisgIHJldAorRU5EKGZsb29yKQorCitFTlRSWShmbG9vcmYpCisgIGZyaW50TSBzMCwgczAKKyAgcmV0CitFTkQoZmxvb3JmKQpkaWZmIC0tZ2l0IGEvbGlibS9hcm02NC9mbWEuUyBiL2xpYm0vYXJtNjQvZm1hLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY0ZTgwNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvZm1hLlMKQEAgLTAsMCArMSwyNyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE1LCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShmbWEpCisgIGZtYWRkIGQwLCBkMCwgZDEsIGQyCisgIHJldAorRU5EKGZtYSkKKworRU5UUlkoZm1hZikKKyAgZm1hZGQgczAsIHMwLCBzMSwgczIKKyAgcmV0CitFTkQoZm1hZikKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvbHJpbnQuUyBiL2xpYm0vYXJtNjQvbHJpbnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNjQyNzU5Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC9scmludC5TCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkobHJpbnQpCisgIGZyaW50WCBkMCwgZDAKKyAgZmN2dHpzIHgwLCBkMAorICByZXQKK0VORChscmludCkKKworRU5UUlkobHJpbnRmKQorICBmcmludFggczAsIHMwCisgIGZjdnR6cyB4MCwgczAKKyAgcmV0CitFTkQobHJpbnRmKQorCisvLyBzaXplb2YobG9uZykgYW5kIHNpemVvZihsb25nIGxvbmcpIGFyZSB0aGUgc2FtZSBmb3IgYWFyY2g2NAorQUxJQVNfU1lNQk9MKGxscmludCwgbHJpbnQpOworCitBTElBU19TWU1CT0wobGxyaW50ZiwgbHJpbnRmKTsKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvcmludC5TIGIvbGlibS9hcm02NC9yaW50LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDgyMGMyMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvcmludC5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkocmludCkKKyAgZnJpbnRYIGQwLCBkMAorICByZXQKK0VORChyaW50KQorCitFTlRSWShyaW50ZikKKyAgZnJpbnRYIHMwLCBzMAorICByZXQKK0VORChyaW50ZikKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvc3FydC5TIGIvbGlibS9hcm02NC9zcXJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmUwMDIwYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvc3FydC5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc3FydCkKKyAgZnNxcnQgZDAsIGQwCisgIHJldAorRU5EKHNxcnQpCisKK0VOVFJZKHNxcnRmKQorICBmc3FydCBzMCwgczAKKyAgcmV0CitFTkQoc3FydGYpCmRpZmYgLS1naXQgYS9saWJtL2FybTY0L3RydW5jLlMgYi9saWJtL2FybTY0L3RydW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzI5YzA4ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvdHJ1bmMuUwpAQCAtMCwwICsxLDI3IEBACisvKgorICogQ29weXJpZ2h0IDIwMTUsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHRydW5jKQorICBmcmludFogZDAsIGQwCisgIHJldAorRU5EKHRydW5jKQorCitFTlRSWSh0cnVuY2YpCisgIGZyaW50WiBzMCwgczAKKyAgcmV0CitFTkQodHJ1bmNmKQpkaWZmIC0tZ2l0IGEvbGlibS9mcmVlYnNkLWNvbXBhdC5oIGIvbGlibS9mcmVlYnNkLWNvbXBhdC5oCmluZGV4IDE0ODFjYzIuLmE0ZGQ2YzIgMTAwNjQ0Ci0tLSBhL2xpYm0vZnJlZWJzZC1jb21wYXQuaAorKysgYi9saWJtL2ZyZWVic2QtY29tcGF0LmgKQEAgLTI2LDYgKzI2LDggQEAKICNkZWZpbmUgX19zdHJvbmdfcmVmZXJlbmNlKHN5bSxhbGlhc3N5bSkgXAogICAgIGV4dGVybiBfX3R5cGVvZiAoc3ltKSBhbGlhc3N5bSBfX2F0dHJpYnV0ZV9fICgoX19hbGlhc19fICgjc3ltKSkpCiAKKyNkZWZpbmUgX193YXJuX3JlZmVyZW5jZXMoc3ltLG1zZykgLyogaWdub3JlZCAqLworCiAvKiBkaWdpdHRvaW50IGlzIGluIEJTRCdzIDxjdHlwZS5oPi4gKi8KIGludCBkaWdpdHRvaW50KGNoYXIgY2gpOwogCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9mcHUuaCBiL2xpYm0vaW5jbHVkZS9hbWQ2NC9tYWNoaW5lL2ZwdS5oCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBsaWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9mcHUuaApyZW5hbWUgdG8gbGlibS9pbmNsdWRlL2FtZDY0L21hY2hpbmUvZnB1LmgKZGlmZiAtLWdpdCBhL2xpYm0vaW5jbHVkZS9jb21wbGV4LmggYi9saWJtL2luY2x1ZGUvY29tcGxleC5oCmluZGV4IDA3MDI1NDEuLmZmNmIxNjYgMTAwNjQ0Ci0tLSBhL2xpYm0vaW5jbHVkZS9jb21wbGV4LmgKKysrIGIvbGlibS9pbmNsdWRlL2NvbXBsZXguaApAQCAtNDYsMTQgKzQ2LDM5IEBACiAjZGVmaW5lCWNvbXBsZXgJCV9Db21wbGV4CiAjZGVmaW5lCUkJCV9Db21wbGV4X0kKIAorI2lmIF9fSVNPX0NfVklTSUJMRSA+PSAyMDExCisjaWZkZWYgX19jbGFuZ19fCisjZGVmaW5lCUNNUExYKHgsIHkpCSgoZG91YmxlIGNvbXBsZXgpeyB4LCB5IH0pCisjZGVmaW5lCUNNUExYRih4LCB5KQkoKGZsb2F0IGNvbXBsZXgpeyB4LCB5IH0pCisjZGVmaW5lCUNNUExYTCh4LCB5KQkoKGxvbmcgZG91YmxlIGNvbXBsZXgpeyB4LCB5IH0pCisjZWxpZiBfX0dOVUNfUFJFUkVRX18oNCwgNykKKyNkZWZpbmUJQ01QTFgoeCwgeSkJX19idWlsdGluX2NvbXBsZXgoKGRvdWJsZSkoeCksIChkb3VibGUpKHkpKQorI2RlZmluZQlDTVBMWEYoeCwgeSkJX19idWlsdGluX2NvbXBsZXgoKGZsb2F0KSh4KSwgKGZsb2F0KSh5KSkKKyNkZWZpbmUJQ01QTFhMKHgsIHkpCV9fYnVpbHRpbl9jb21wbGV4KChsb25nIGRvdWJsZSkoeCksIChsb25nIGRvdWJsZSkoeSkpCisjZW5kaWYKKyNlbmRpZiAvKiBfX0lTT19DX1ZJU0lCTEUgPj0gMjAxMSAqLworCiBfX0JFR0lOX0RFQ0xTCisjcHJhZ21hIEdDQyB2aXNpYmlsaXR5IHB1c2goZGVmYXVsdCkKIAogZG91YmxlCQljYWJzKGRvdWJsZSBjb21wbGV4KTsKIGZsb2F0CQljYWJzZihmbG9hdCBjb21wbGV4KTsKIGxvbmcgZG91YmxlCWNhYnNsKGxvbmcgZG91YmxlIGNvbXBsZXgpOworZG91YmxlIGNvbXBsZXgJY2Fjb3MoZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYWNvc2YoZmxvYXQgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYWNvc2goZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYWNvc2hmKGZsb2F0IGNvbXBsZXgpOwogZG91YmxlCQljYXJnKGRvdWJsZSBjb21wbGV4KTsKIGZsb2F0CQljYXJnZihmbG9hdCBjb21wbGV4KTsKIGxvbmcgZG91YmxlCWNhcmdsKGxvbmcgZG91YmxlIGNvbXBsZXgpOworZG91YmxlIGNvbXBsZXgJY2FzaW4oZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYXNpbmYoZmxvYXQgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYXNpbmgoZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYXNpbmhmKGZsb2F0IGNvbXBsZXgpOworZG91YmxlIGNvbXBsZXgJY2F0YW4oZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYXRhbmYoZmxvYXQgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYXRhbmgoZG91YmxlIGNvbXBsZXgpOworZmxvYXQgY29tcGxleAljYXRhbmhmKGZsb2F0IGNvbXBsZXgpOwogZG91YmxlIGNvbXBsZXgJY2Nvcyhkb3VibGUgY29tcGxleCk7CiBmbG9hdCBjb21wbGV4CWNjb3NmKGZsb2F0IGNvbXBsZXgpOwogZG91YmxlIGNvbXBsZXgJY2Nvc2goZG91YmxlIGNvbXBsZXgpOwpAQCAtODcsNiArMTEyLDcgQEAKIGRvdWJsZSBjb21wbGV4CWN0YW5oKGRvdWJsZSBjb21wbGV4KTsKIGZsb2F0IGNvbXBsZXgJY3RhbmhmKGZsb2F0IGNvbXBsZXgpOwogCisjcHJhZ21hIEdDQyB2aXNpYmlsaXR5IHBvcAogX19FTkRfREVDTFMKIAogI2VuZGlmIC8qIF9DT01QTEVYX0ggKi8KZGlmZiAtLWdpdCBhL2xpYm0vaW5jbHVkZS9tYXRoLmggYi9saWJtL2luY2x1ZGUvbWF0aC5oCmluZGV4IDNlY2ExNDAuLjE1NDIzNzQgMTAwNjQ0Ci0tLSBhL2xpYm0vaW5jbHVkZS9tYXRoLmgKKysrIGIvbGlibS9pbmNsdWRlL21hdGguaApAQCAtNDU5LDE0ICs0NTksMTcgQEAKIGxvbmcgZG91YmxlCXRhbmwobG9uZyBkb3VibGUpOwogbG9uZyBkb3VibGUJdGdhbW1hbChsb25nIGRvdWJsZSk7CiBsb25nIGRvdWJsZQl0cnVuY2wobG9uZyBkb3VibGUpOwotCiAjZW5kaWYgLyogX19JU09fQ19WSVNJQkxFID49IDE5OTkgKi8KIAotI2lmIGRlZmluZWQoX0dOVV9TT1VSQ0UpCisjaWYgX19CU0RfVklTSUJMRQorbG9uZyBkb3VibGUJbGdhbW1hbF9yKGxvbmcgZG91YmxlLCBpbnQgKik7CisjZW5kaWYKKworI2lmIGRlZmluZWQoX19VU0VfR05VKQogdm9pZCBzaW5jb3MoZG91YmxlLCBkb3VibGUqLCBkb3VibGUqKTsKIHZvaWQgc2luY29zZihmbG9hdCwgZmxvYXQqLCBmbG9hdCopOwogdm9pZCBzaW5jb3NsKGxvbmcgZG91YmxlLCBsb25nIGRvdWJsZSosIGxvbmcgZG91YmxlKik7Ci0jZW5kaWYgLyogX0dOVV9TT1VSQ0UgKi8KKyNlbmRpZiAvKiBfX1VTRV9HTlUgKi8KIAogI3ByYWdtYSBHQ0MgdmlzaWJpbGl0eSBwb3AKIF9fRU5EX0RFQ0xTCmRpZmYgLS1naXQgYS9saWJtL3NpbmNvcy5jIGIvbGlibS9zaW5jb3MuYwppbmRleCBhZDc1NTQ5Li5hNTYwOGNmIDEwMDY0NAotLS0gYS9saWJtL3NpbmNvcy5jCisrKyBiL2xpYm0vc2luY29zLmMKQEAgLTIyLDggKzIyLDggQEAKICAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKICAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgotICoKICAqLworCiAjZGVmaW5lIF9HTlVfU09VUkNFIDEKICNpbmNsdWRlIDxtYXRoLmg+CiAKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX2xnYW1tYWxfci5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfbGdhbW1hbF9yLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTNkM2FmMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX2xnYW1tYWxfci5jCkBAIC0wLDAgKzEsMzMwIEBACisvKiBAKCMpZV9sZ2FtbWFfci5jIDEuMyA5NS8wMS8xOCAqLworLyoKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqIENvcHlyaWdodCAoQykgMTk5MyBieSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBpcyBwcmVzZXJ2ZWQuCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisvKgorICogU2VlIGVfbGdhbW1hX3IuYyBmb3IgY29tcGxldGUgY29tbWVudHMuCisgKgorICogQ29udmVydGVkIHRvIGxvbmcgZG91YmxlIGJ5IFN0ZXZlbiBHLiBLYXJnbC4KKyAqLworCisjaW5jbHVkZSAiZnBtYXRoLmgiCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgorCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlIHZ6ZXJvID0gMDsKKworc3RhdGljIGNvbnN0IGRvdWJsZQoremVybz0gIDAsCitoYWxmPSAgMC41LAorb25lID0gIDE7CisKK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorcGkgID0gIDMuMTQxNTkyNjUzNTg5NzkzMjM4NDYyNjQzMzgzMjc5NTAyODhlKzAwTDsKKy8qCisgKiBEb21haW4geSBpbiBbMHgxcC0xMTksIDAuMjhdLCByYW5nZSB+Wy0xLjQwNjVlLTM2LCAxLjQwNjVlLTM2XToKKyAqIHwobGdhbW1hKDIgLSB5KSArIHkgLyAyKSAvIHkgLSBhKHkpfCA8IDIqKi0xMTkuMQorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK2EwICA9ICA3LjcyMTU2NjQ5MDE1MzI4NjA2MDY1MTIwOTAwODI0MDI0Mjk2ZS0wMkwsCithMSAgPSAgMy4yMjQ2NzAzMzQyNDExMzIxODIzNjIwNzU4MzMyMzAxODQ5OGUtMDFMLAorYTIgID0gIDYuNzM1MjMwMTA1MzE5ODA5NTEzMzI0NjA1MzgzMzAyODIyMTdlLTAyTCwKK2EzICA9ICAyLjA1ODA4MDg0Mjc3ODQ1NDc4NzkwMDA5MjUyODAzNDYzMTI5ZS0wMkwsCithNCAgPSAgNy4zODU1NTEwMjg2NzM5ODUyNjYyNzI5MjgzOTI5NjAwMTYyNmUtMDNMLAorYTUgID0gIDIuODkwNTEwMzMwNzQxNTIzMjg1NzY4Mjk1MDk1MjI0ODM0NjhlLTAzTCwKK2E2ICA9ICAxLjE5Mjc1MzkxMTcwMzI2MDk3NjE4MzU3MzQ5ODgxODQyOTEzZS0wM0wsCithNyAgPSAgNS4wOTY2OTUyNDc0MzA0MjQ2MjUxNTI1NjM0MDIwNjIwMzAxOWUtMDRMLAorYTggID0gIDIuMjMxNTQ3NTg0NTM1NzgwOTYxNDM2MDkyNTU1NTk1NzYwMTdlLTA0TCwKK2E5ICA9ICA5Ljk0NTc1MTI3ODE4Mzk3NjMyMTI2OTc4NzMxNTQyNzU1MTI5ZS0wNUwsCithMTAgPSAgNC40OTI2MjM2NzM3NTQyMDQ3MTI4NzU0NTg5NTAyNzA5ODE0NWUtMDVMLAorYTExID0gIDIuMDUwNzIxMjc4NDUxMTc5OTU0MjY1MTk2NzE0ODE2Mjg4NDllLTA1TCwKK2ExMiA9ICA5LjQzOTQ4ODE2OTU5MDk2NzQ4NDU0MDg3MTQxNDQ3OTM5NTEzZS0wNkwsCithMTMgPSAgNC4zNzQ4Njc4MDY5NzM1OTMzMDMwMzg1MjA1MDcxODI4NzQxOWUtMDZMLAorYTE0ID0gIDIuMDM5MjA3ODM4OTIzNjI1NTgyNzYwMzczNjM4NDc2NTE4MDllLTA2TCwKK2ExNSA9ICA5LjU1MTkxMDcwMDU3OTY3Mjg3ODc3OTIzMDczMjAwMzI0NjQ5ZS0wN0wsCithMTYgPSAgNC40ODk5MzI4NjE4NTc0MDg1MzE3MDY1NzEzOTQ4NzYyMDU2MGUtMDdMLAorYTE3ID0gIDIuMTMxMDc1NDM1OTc2MjA5MTE2NzUzMTY3MjgxNzk1NjM1MjJlLTA3TCwKK2ExOCA9ICA5LjcwNzQ1Mzc5ODU1MzA0NDk5ODY3NTQ2NTQ5NTUxMDIzNDczZS0wOEwsCithMTkgPSAgNS42MTg4OTk3MDM5MDI5MDI1NzkyNjQ4NzczNDY5NTQwMjA3NWUtMDhMLAorYTIwID0gIDYuNDI3Mzk2NTMwMjQxMzAwNzE4NjY2ODQzNTg5NjA5NjA5NTFlLTA5TCwKK2EyMSA9ICAzLjM0NDkxMDYyMTQzNjQ5MjkxNzQ2MTk1NjEyOTkxODcwMTE5ZS0wOEwsCithMjIgPSAtMS41NzA2ODU0NzM5NDMxNTIyMzkzNDY1MzAxMTQ0MDY0MTQ3MmUtMDhMLAorYTIzID0gIDEuMzA4MTI4MjU0MjI0MTU4NDEyMTM3MzM0ODc3NDUyMDA2MzJlLTA4TDsKKy8qCisgKiBEb21haW4geCBpbiBbdGMtMC4yNCwgdGMrMC4yOF0sIHJhbmdlIH5bLTYuMzIwMWUtMzcsIDYuMzIwMWUtMzddOgorICogfChsZ2FtbWEoeCkgLSB0ZikgLSB0KHggLSB0Yyl8IDwgMioqLTEyMC4zLgorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3RjICA9ICAxLjQ2MTYzMjE0NDk2ODM2MjM0MTI2MjY1OTU0MjMyNTcyMTMzZSswMEwsCit0ZiAgPSAtMS4yMTQ4NjI5MDUzNTg0OTYwODA5NTUxNDU1NzE3NzY5MTU4NGUtMDFMLAordHQgID0gIDEuNTcwNjE3Mzk5NDUwNzc2NzU0ODQyMzc4Mzc5OTI5NTE3MDRlLTM2TCwKK3QwICA9IC0xLjk5MjM4MzI5NDk5MzE0NjkyNzI4NjU1NjIzNzY3MDE5MjQwZS0zNkwsCit0MSAgPSAtNi4wODQ1MzQzMDcxMTcxMTQwNDExNjg4NzQ1NzY2MzI4MTQxNmUtMzVMLAordDIgID0gIDQuODM4MzYxMjI3MjM4MTA1ODUyMTM3MjIzODA4NTQ4Mjg5MDRlLTAxTCwKK3QzICA9IC0xLjQ3NTg3NzIyOTk0NTMwNzAyMDMwOTU1MDkzOTUwNjY4Mjc1ZS0wMUwsCit0NCAgPSAgNi40NjI0OTQwMjM4OTEyNzUyNjU2MTAwMzQ2NDIwMjY3MTkyM2UtMDJMLAordDUgID0gLTMuMjc4ODU0MTA4ODQ4MTMwNTUwMDg1MDI1ODY4NjM3NDgwNjNlLTAyTCwKK3Q2ICA9ICAxLjc5NzA2NzUxMTUyMTAzOTQyOTI4NjM4Mjc2MDY3MTY0OTM1ZS0wMkwsCit0NyAgPSAtMS4wMzE0MjIzMDM2NjM2Mzg3Mjc1MTYwMjAyOTY3Mjc2Nzk3OGUtMDJMLAordDggID0gIDYuMTAwNTM2MDIwNTE3ODg4NDAzMTM1NzMxNTA3ODUwODA5NThlLTAzTCwKK3Q5ICA9IC0zLjY4NDU2OTYwODMxNjM3MzI1NDcwNjQxMDIxODkyOTY4OTU0ZS0wM0wsCit0MTAgPSAgMi4yNTk3NjQ4MjMyMjE4MTA0NjYxMTQ0MDg1NTM0MDk2ODU2MGUtMDNMLAordDExID0gLTEuNDAyMjUxNDQ1OTA0NDUwODI5MzM0OTAzOTU5NTA2NjQ5NjFlLTAzTCwKK3QxMiA9ICA4Ljc4MjMyNjM0NzE3NjgxMjY0MDM1MDE0ODc4MTcyNDg1NTc1ZS0wNEwsCit0MTMgPSAtNS41NDE5NDk1Mjc5NjY4MjMwMTIyMDY4NDc2MDU5MTQwMzg5OWUtMDRMLAordDE0ID0gIDMuNTE5MTI5NTY4Mzc4NDgyMDkyMjA0MjEyMTM5NzUwMDAyOThlLTA0TCwKK3QxNSA9IC0yLjI0NjUzNDQzNjk1OTQ3NDU2NTQyNjY5Mjg5MzY3MDU1NTQyZS0wNEwsCit0MTYgPSAgMS40NDA3MDM5NTQyMDg0MDczNzY5NTYxMTkyOTY4MDUxMTgyM2UtMDRMLAordDE3ID0gLTkuMjc2MDk4NjU1NTAzOTQxNDAwNjcwNTk0ODc1MTg4NjI1MTJlLTA1TCwKK3QxOCA9ICA1Ljk5MzQ3MzM0NDM4NDM3MDgxNDEyOTQ1NDI4MzY1NDMzMDczZS0wNUwsCit0MTkgPSAtMy44ODQ1ODM4ODg1NDU3MjgyNTYwMzk2NDI3NDEzNDgwMTAwOWUtMDVMLAordDIwID0gIDIuNTI0NzY2MzE2MTAzMjgxMjkyMTc4OTY0MzYxODY1NTEwNDNlLTA1TCwKK3QyMSA9IC0xLjY0NTA4NTg0OTgxNjU4NjkyNTU2OTk0MjEyNDU3NTE4NTM2ZS0wNUwsCit0MjIgPSAgMS4wNzQzNDU4MzQ3NTk4NzAwNzQ5NTUyMzM0MDI5NjE3MzgzOWUtMDVMLAordDIzID0gLTcuMDMwNzA0MDc1MTkzOTcyNjA5Mjk0ODI1NTA0NDg4NzgzOTllLTA2TCwKK3QyNCA9ICA0LjYwOTY4NTkwNjkzNzUzNTc5NjQ4Mzg1NjI5MDAzMTAwNDY5ZS0wNkwsCit0MjUgPSAtMy4wMjc2NTQ3Mzc3ODgzMjAzNjAxODQzODY3Njk0NTUxMjY2MWUtMDZMLAordDI2ID0gIDEuOTkyMzg3NzE1NDU1MDM4MTk5NzI3NDEyODg1MTEzMDM0MDFlLTA2TCwKK3QyNyA9IC0xLjMxMjgxMjk5ODIyNjE0MDg0ODYxODY4ODE3OTUxNzg4NTc5ZS0wNkwsCit0MjggPSAgOC42MDg0NDQzMjI2NzM5OTY1NTA1NTU3NDY0MjA1MjM3MDIyM2UtMDdMLAordDI5ID0gLTUuNjQ1MzU0ODY0MzIzOTc0MTMyNzMyNDgzNjM1NTA1MzYzNzRlLTA3TCwKK3QzMCA9ICAzLjk5MzU3NzgzNjc2Mjc1NjYwOTM0OTAzMTM5NTkyNzI3NzM3ZS0wN0wsCit0MzEgPSAtMi45NTg0OTAyOTE5MzQzMzEyMTc5NTQ5NTIxNTg2OTMxMTYxMGUtMDdMLAordDMyID0gIDEuMzc3OTAxNDQ0MzUwNzMxMjQ5NzY2OTYyNTA4MDQ5NDAzODRlLTA3TDsKKy8qCisgKiBEb21haW4geSBpbiBbLTAuMSwgMC4yMzJdLCByYW5nZSB+Wy0xLjQwNDZlLTM3LCAxLjQxODFlLTM3XToKKyAqIHwobGdhbW1hKDEgKyB5KSArIDAuNSAqIHkpIC8geSAtIHUoeSkgLyB2KHkpfCA8IDIqKi0xMjIuOAorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3UwICA9IC03LjcyMTU2NjQ5MDE1MzI4NjA2MDY1MTIwOTAwODI0MDI0MzExZS0wMkwsCit1MSAgPSAgNC4yNDA4Mjc3MjI3MTkzODE2NzQzMDk4MzExMzI0MjQ4MjY1NmUtMDFMLAordTIgID0gIDIuOTYxOTQwMDM0ODE0NTcxMDEwNTgzMjE5Nzc0MTMzMzIxNzFlKzAwTCwKK3UzICA9ICA2LjQ5NTAzMjY3NzExMjU4MDQzOTk3NzkwOTgzMDcxNTQzNzEwZSswMEwsCit1NCAgPSAgNy40MDA5MDA1MTI4ODE1MDE3NzE1MjgzNTY5ODk0ODY0NDQ4M2UrMDBMLAordTUgID0gIDQuOTQ2OTgwMzYyOTY3NTYwNDQ2MTA4MDU5MDAzNDA3MjM0NjRlKzAwTCwKK3U2ICA9ICAyLjAwMTk0MjI0NjEwNzk2Mjk0NzYyNDY5NTUwNjg0OTQ3NzY4ZSswMEwsCit1NyAgPSAgNC44MjA3MzA4Nzc1MDYwODg5NTk5NjkxNTA1MTU2ODgzNDk0OWUtMDFMLAordTggID0gIDYuNDY2OTQwNTIyODA1MDY1NjgxOTIzMzM4NDg0Mzc1ODU0MjdlLTAyTCwKK3U5ICA9ICA0LjE3Njg1NTI2NzU1MTAwMjU5MzE2NjI1MzQ4OTMzMTA4ODEwZS0wM0wsCit1MTAgPSAgOS4wNjM2MTAwMzU1MDMxNDMyNzE0NDExOTMwNzgxMDA1MzQxMGUtMDVMLAordjEgID0gIDUuMTU5MzcwOTg1OTI4ODcyNzU5OTQzMjA0OTY5OTk5NTE5NDdlKzAwTCwKK3YyICA9ICAxLjE0MDY4NDE4NzY2MjUxNDg2Nzc3NjA0NDAzMzA0NzE3NTU4ZSswMUwsCit2MyAgPSAgMS40MTE2NDgzOTQzNzUyNDc0NDA1NTcyMzg3MTgzOTc0ODQ4OWUrMDFMLAordjQgID0gIDEuMDcxNzA3MDI2NTYxNzk1ODI4MDU3OTEwNjMyNzc5NjA1MzJlKzAxTCwKK3Y1ICA9ICA1LjE0NDQ4Njk0MTc5MDQ3ODc5OTE1MDQyOTk4NDUzNjMyNDM0ZSswMEwsCit2NiAgPSAgMS41NTIxMDA4ODA5NDU4NTU0MDYzNzQ5MzgyNjQzMTE3MDI4OWUrMDBMLAordjcgID0gIDIuODI5NzU3MzI4NDk0MjQ1NjI3MTk4OTM2NTc0MTYzNjU2NzNlLTAxTCwKK3Y4ICA9ICAyLjg2NDI0NjIyNzU0NzUzMTk4MDEwNTI1Nzg2MDA1NDQzNTM5ZS0wMkwsCit2OSAgPSAgMS4zNTM2NDI1MzU3MDQwMzc3MTAwNTkyMjQ0MTQ0MjY4ODk3OGUtMDNMLAordjEwID0gIDEuOTE1MTQxNzM3MDIzOTgzNzUzNDY2NTg5NDM3NDk1ODA2NjZlLTA1TCwKK3YxMSA9IC0zLjI1MzY0Njg2ODkwMjQyMzI3OTQ0NTg0NjkxNDY2MDM0MjY4ZS0wOEw7CisvKgorICogRG9tYWluIHggaW4gKDIsIDNdLCByYW5nZSB+Wy0xLjMzNDFlLTM2LCAxLjM1MzZlLTM2XToKKyAqIHwobGdhbW1hKHkrMikgLSAwLjUgKiB5KSAvIHkgLSBzKHkpL3IoeSl8IDwgMioqLTEyMC4xCisgKiB3aXRoIHkgPSB4IC0gMi4KKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCitzMCAgPSAtNy43MjE1NjY0OTAxNTMyODYwNjA2NTEyMDkwMDgyNDAyNDI5N2UtMDJMLAorczEgID0gIDEuMjMyMjE2ODc4NTA5MTY0NDg5MDM5MTQxNzA4MDU4NTIyNTNlLTAxTCwKK3MyICA9ICA1LjQzNjczMTg4Njk5OTM3MjM5ODA4MjU1Mzc4MjkzODIwMDIwZS0wMUwsCitzMyAgPSAgNi4zMTk5ODEzNzExOTAwNTIzMzM4MzY2Njc5MTE3NjMwMTgwMGUtMDFMLAorczQgID0gIDMuNzU4ODUzNDAxNzk0Nzk4NTA5OTM4MTE1MDE1OTYyMTM3NjNlLTAxTCwKK3M1ICA9ICAxLjMxNTcyOTA4NzQzMjc1MDUyNjIzNDEwMTk1MDExMjYxNTc1ZS0wMUwsCitzNiAgPSAgMi44MjUyODQ1MzI5OTEzODY4NTUwNzE4NjI4NzE0OTY5OTc0OWUtMDJMLAorczcgID0gIDMuNzAyNjIwMjE1NTAzNDA4MTc4Njc2ODg3MTQ4ODA3OTcwMTllLTAzTCwKK3M4ICA9ICAyLjgzMzc0MDAwMzEyMzcxMTk5NjI1Nzc0MTI5MjkwOTczNjQ4ZS0wNEwsCitzOSAgPSAgMS4xNTA5MTgzMDIzOTE0ODI5MDc1ODg4MzUwNTU4MjM0MzY5MWUtMDVMLAorczEwID0gIDIuMDQyMDM0NzQyODE0OTM5NzEzMjY1MDYzODQ2NDY2OTI0NDZlLTA3TCwKK3MxMSA9ICA5Ljc5NTQ0MTk4MDc4OTkyMDU4NTQ4NjA3NDA3NjM1NjQ1NzYzZS0xMEwsCityMSAgPSAgMi41ODAzNzQ2NjY1NTYwNTI4NTkzNzExMjgzMjAzOTUzNzQ5MmUrMDBMLAorcjIgID0gIDIuODYyODk0MTMzOTI3NzYzOTkyNjI1MTM4NDk5MTE1MzExODBlKzAwTCwKK3IzICA9ICAxLjc4NjkxMDQ0NzM1MjY3NDk3NDUyODQ3ODI5NTc5NTE0MzY3ZSswMEwsCityNCAgPSAgNi44OTQwMDM4MTQ0NjcyNTM0Mjg0Njg1NDIxNTYwMDAwODA1NWUtMDFMLAorcjUgID0gIDEuNzAxMzU4NjU0NjI1Njc5NTU4NjcxMzQxOTc1OTUzNjUzNDNlLTAxTCwKK3I2ICA9ICAyLjY4Nzk0ODE2MTgzOTY0NDIwMzc1NDk4OTg2MTUyNzY2NzYzZS0wMkwsCityNyAgPSAgMi42NDYxNzIzNDI0NDg2MTgzMjg3MDA4ODg5MzMzMjAwNjY3OWUtMDNMLAorcjggID0gIDEuNTI4ODE3NjEyMzkxODA4MDA2NDAwNjgxMjg2ODE3MjU3MDJlLTA0TCwKK3I5ICA9ICA0LjYzMjY0ODEzNzYyMjk2MDI5ODI0ODUxMzUxMjU3NjM4NTU4ZS0wNkwsCityMTAgPSAgNS44OTQ2MTUxOTE0Njk1NzM0MzA4Mzg0ODk2NzMzMzY3MTE0MmUtMDhMLAorcjExID0gIDEuNzkwMjc2NzgxNzY1ODI1Mjc3OTgzMjc0NDE2MzY1NTI5NjhlLTEwTDsKKy8qCisgKiBEb21haW4geiBpbiBbOCwgMHgxcDcwXSwgcmFuZ2UgflstOS44MjE0ZS0zNSwgOS44MjE0ZS0zNV06CisgKiB8bGdhbW1hKHgpIC0gKHggLSAwLjUpICogKGxvZyh4KSAtIDEpIC0gdygxL3gpfCA8IDIqKi0xMTMuMAorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3cwICA9ICA0LjE4OTM4NTMzMjA0NjcyNzQxNzgwMzI5NzM2NDA1NjE3NzM4ZS0wMUwsCit3MSAgPSAgOC4zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMjg1MjAyNmUtMDJMLAordzIgID0gLTIuNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Mjc4MTAxMjM1MjhlLTAzTCwKK3czICA9ICA3LjkzNjUwNzkzNjUwNzkzNjUwNzkxNzA4OTM5NDkzOTA3MzgwZS0wNEwsCit3NCAgPSAtNS45NTIzODA5NTIzODA5NTIzNDM5MDQ1MDAwNDQ0NDM3MDk1OWUtMDRMLAordzUgID0gIDguNDE3NTA4NDE3NTA4Mzc2MzM4ODc4MTc2NTg4NDg4NDU2OTVlLTA0TCwKK3c2ICA9IC0xLjkxNzUyNjkxNzUyMzk2ODQ5OTQzMTcyMzM3MzQ3MjU5NzQzZS0wM0wsCit3NyAgPSAgNi40MTAyNTY0MDg4MDMzMzA2OTQyOTEwNjU0MTQ1OTAxNTU1N2UtMDNMLAordzggID0gLTIuOTU1MDY1MzA4MDE3MzIxMzM0Mzc5OTA0MzMwODAzMjcwNzRlLTAyTCwKK3c5ICA9ICAxLjc5NjQ0MjM3MzI4NDQ0MTAxNTk2NzY2NTg2OTc5NTc2OTI3ZS0wMUwsCit3MTAgPSAtMS4zOTI0MDUzOTEwODM2NzY0MTkyMDE3MjY0OTI1OTczNjM5NGUrMDBMLAordzExID0gIDEuMzM5ODc3MDE0NzkwMDcyMzMzMjUyODg4NTc3NTg2NDE3NjFlKzAxTCwKK3cxMiA9IC0xLjU2MzYzNTk2NDMxMDg0Mjc5NzgwOTY2NTkwMTE2MDA2MjU1ZSswMkwsCit3MTMgPSAgMi4xNDgzMDk3ODA0NDQxMDI2NzIwMTE3MjMzMjk1MjA0MDc3N2UrMDNMLAordzE0ID0gLTMuMjg2MzYwNjc0NzQyMjczNzgzNTI3NjE1MTY1ODkwOTIzMzRlKzA0TCwKK3cxNSA9ICA1LjA2MjAxMjU3NzQ3ODY1MTM4NDMyNjYzNTc0MjUxNDYyNDg1ZSswNUwsCit3MTYgPSAtNi43OTcyMDEyMzM1MjAyMzYzNjcwNjI0NzU5OTcyODA0ODM0NGUrMDZMLAordzE3ID0gIDYuNTc1NTY2MDE3MDU0NzIxMDY5ODk0OTcyODk0NjU5NDkyNTVlKzA3TCwKK3cxOCA9IC0zLjI2MjI5MDU4MTQxMTgxNzgzNTM0MjU3NjMyMzg5NDE1NTgwZSswOEw7CisKK3N0YXRpYyBsb25nIGRvdWJsZQorc2luX3BpbChsb25nIGRvdWJsZSB4KQoreworCXZvbGF0aWxlIGxvbmcgZG91YmxlIHZ6OworCWxvbmcgZG91YmxlIHksejsKKwl1aW50NjRfdCBseCwgbjsKKwl1aW50MTZfdCBoeDsKKworCXkgPSAteDsKKworCXZ6ID0geSsweDEucDExMjsKKwl6ID0gdnotMHgxLnAxMTI7CisJaWYgKHogPT0geSkKKwkgICAgcmV0dXJuIHplcm87CisKKwl2eiA9IHkrMHgxLnAxMTA7CisJRVhUUkFDVF9MREJMMTI4X1dPUkRTKGh4LGx4LG4sdnopOworCXogPSB2ei0weDEucDExMDsKKwlpZiAoeiA+IHkpIHsKKwkgICAgeiAtPSAwLjI1OworCSAgICBuLS07CisJfQorCW4gJj0gNzsKKwl5ID0geSAtIHogKyBuICogMC4yNTsKKworCXN3aXRjaCAobikgeworCSAgICBjYXNlIDA6ICAgeSA9ICBfX2tlcm5lbF9zaW5sKHBpKnksemVybywwKTsgYnJlYWs7CisJICAgIGNhc2UgMToKKwkgICAgY2FzZSAyOiAgIHkgPSAgX19rZXJuZWxfY29zbChwaSooMC41LXkpLHplcm8pOyBicmVhazsKKwkgICAgY2FzZSAzOgorCSAgICBjYXNlIDQ6ICAgeSA9ICBfX2tlcm5lbF9zaW5sKHBpKihvbmUteSksemVybywwKTsgYnJlYWs7CisJICAgIGNhc2UgNToKKwkgICAgY2FzZSA2OiAgIHkgPSAtX19rZXJuZWxfY29zbChwaSooeS0xLjUpLHplcm8pOyBicmVhazsKKwkgICAgZGVmYXVsdDogIHkgPSAgX19rZXJuZWxfc2lubChwaSooeS0yLjApLHplcm8sMCk7IGJyZWFrOworCSAgICB9CisJcmV0dXJuIC15OworfQorCitsb25nIGRvdWJsZQorbGdhbW1hbF9yKGxvbmcgZG91YmxlIHgsIGludCAqc2lnbmdhbXApCit7CisJbG9uZyBkb3VibGUgbmFkaixwLHAxLHAyLHAzLHEscix0LHcseSx6OworCXVpbnQ2NF90IGxseCxseDsKKwlpbnQgaTsKKwl1aW50MTZfdCBoeCxpeDsKKworCUVYVFJBQ1RfTERCTDEyOF9XT1JEUyhoeCxseCxsbHgseCk7CisKKyAgICAvKiBwdXJnZSArLUluZiBhbmQgTmFOcyAqLworCSpzaWduZ2FtcCA9IDE7CisJaXggPSBoeCYweDdmZmY7CisJaWYoaXg9PTB4N2ZmZikgcmV0dXJuIHgqeDsKKworICAgLyogcHVyZ2UgKy0wIGFuZCB0aW55IGFyZ3VtZW50cyAqLworCSpzaWduZ2FtcCA9IDEtMiooaHg+PjE1KTsKKwlpZihpeDwweDNmZmYtMTE2KSB7CQkvKiB8eHw8MioqLShwKzMpLCByZXR1cm4gLWxvZyh8eHwpICovCisJICAgIGlmKChpeHxseHxsbHgpPT0wKQorCQlyZXR1cm4gb25lL3Z6ZXJvOworCSAgICByZXR1cm4gLWxvZ2woZmFic2woeCkpOworCX0KKworICAgIC8qIHB1cmdlIG5lZ2F0aXZlIGludGVnZXJzIGFuZCBzdGFydCBldmFsdWF0aW9uIGZvciBvdGhlciB4IDwgMCAqLworCWlmKGh4JjB4ODAwMCkgeworCSAgICAqc2lnbmdhbXAgPSAxOworCSAgICBpZihpeD49MHgzZmZmKzExMikgCQkvKiB8eHw+PTIqKihwLTEpLCBtdXN0IGJlIC1pbnRlZ2VyICovCisJCXJldHVybiBvbmUvdnplcm87CisJICAgIHQgPSBzaW5fcGlsKHgpOworCSAgICBpZih0PT16ZXJvKSByZXR1cm4gb25lL3Z6ZXJvOworCSAgICBuYWRqID0gbG9nbChwaS9mYWJzbCh0KngpKTsKKwkgICAgaWYodDx6ZXJvKSAqc2lnbmdhbXAgPSAtMTsKKwkgICAgeCA9IC14OworCX0KKworICAgIC8qIHB1cmdlIDEgYW5kIDIgKi8KKwlpZigoaXg9PTB4M2ZmZiB8fCBpeD09MHg0MDAwKSAmJiAobHh8bGx4KT09MCkgciA9IDA7CisgICAgLyogZm9yIHggPCAyLjAgKi8KKwllbHNlIGlmKGl4PDB4NDAwMCkgeworCSAgICBpZih4PD04Ljk5OTk5NjE4NTMwMjczNDRlLTAxKSB7CisJCXIgPSAtbG9nbCh4KTsKKwkJaWYoeD49Ny4zMTU5OTgwNzczOTI1NzgxZS0wMSkge3kgPSAxLXg7IGk9IDA7fQorCQllbHNlIGlmKHg+PTIuMzE2Mzk5ODEyNjk4MzY0M2UtMDEpIHt5PSB4LSh0Yy0xKTsgaT0xO30KKwkgIAllbHNlIHt5ID0geDsgaT0yO30KKwkgICAgfSBlbHNlIHsKKwkJciA9IDA7CisJICAgICAgICBpZih4Pj0xLjczMTYzMTI3ODk5MTY5OTJlKzAwKSB7eT0yLXg7aT0wO30KKwkgICAgICAgIGVsc2UgaWYoeD49MS4yMzE2MzIyMzI2NjYwMTU2ZSswMCkge3k9eC10YztpPTE7fQorCQllbHNlIHt5PXgtMTtpPTI7fQorCSAgICB9CisJICAgIHN3aXRjaChpKSB7CisJICAgICAgY2FzZSAwOgorCQl6ID0geSp5OworCQlwMSA9IGEwK3oqKGEyK3oqKGE0K3oqKGE2K3oqKGE4K3oqKGExMCt6KihhMTIreiooYTE0K3oqKGExNisKKwkJICAgIHoqKGExOCt6KihhMjAreiphMjIpKSkpKSkpKSkpOworCQlwMiA9IHoqKGExK3oqKGEzK3oqKGE1K3oqKGE3K3oqKGE5K3oqKGExMSt6KihhMTMreiooYTE1KworCQkgICAgeiooYTE3K3oqKGExOSt6KihhMjEreiphMjMpKSkpKSkpKSkpKTsKKwkJcCAgPSB5KnAxK3AyOworCQlyICArPSBwLXkvMjsgYnJlYWs7CisJICAgICAgY2FzZSAxOgorCQlwID0gdDAreSp0MSt0dCt5KnkqKHQyK3kqKHQzK3kqKHQ0K3kqKHQ1K3kqKHQ2K3kqKHQ3K3kqKHQ4KworCQkgICAgeSoodDkreSoodDEwK3kqKHQxMSt5Kih0MTIreSoodDEzK3kqKHQxNCt5Kih0MTUreSoodDE2KworCQkgICAgeSoodDE3K3kqKHQxOCt5Kih0MTkreSoodDIwK3kqKHQyMSt5Kih0MjIreSoodDIzKworCQkgICAgeSoodDI0K3kqKHQyNSt5Kih0MjYreSoodDI3K3kqKHQyOCt5Kih0MjkreSoodDMwKworCQkgICAgeSoodDMxK3kqdDMyKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpOworCQlyICs9IHRmICsgcDsgYnJlYWs7CisJICAgICAgY2FzZSAyOgorCQlwMSA9IHkqKHUwK3kqKHUxK3kqKHUyK3kqKHUzK3kqKHU0K3kqKHU1K3kqKHU2K3kqKHU3KworCQkgICAgeSoodTgreSoodTkreSp1MTApKSkpKSkpKSkpOworCQlwMiA9IG9uZSt5Kih2MSt5Kih2Mit5Kih2Myt5Kih2NCt5Kih2NSt5Kih2Nit5Kih2NysKKwkJICAgIHkqKHY4K3kqKHY5K3kqKHYxMCt5KnYxMSkpKSkpKSkpKSk7CisJCXIgKz0gcDEvcDIteS8yOworCSAgICB9CisJfQorICAgIC8qIHggPCA4LjAgKi8KKwllbHNlIGlmKGl4PDB4NDAwMikgeworCSAgICBpID0geDsKKwkgICAgeSA9IHgtaTsKKwkgICAgcCA9IHkqKHMwK3kqKHMxK3kqKHMyK3kqKHMzK3kqKHM0K3kqKHM1K3kqKHM2K3kqKHM3K3kqKHM4KworCQl5KihzOSt5KihzMTAreSpzMTEpKSkpKSkpKSkpKTsKKwkgICAgcSA9IG9uZSt5KihyMSt5KihyMit5KihyMyt5KihyNCt5KihyNSt5KihyNit5KihyNyt5KihyOCsKKwkJeSoocjkreSoocjEwK3kqcjExKSkpKSkpKSkpKTsKKwkgICAgciA9IHkvMitwL3E7CisJICAgIHogPSAxOwkvKiBsZ2FtbWEoMStzKSA9IGxvZyhzKSArIGxnYW1tYShzKSAqLworCSAgICBzd2l0Y2goaSkgeworCSAgICBjYXNlIDc6IHogKj0gKHkrNik7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDY6IHogKj0gKHkrNSk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDU6IHogKj0gKHkrNCk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDQ6IHogKj0gKHkrMyk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDM6IHogKj0gKHkrMik7CQkvKiBGQUxMVEhSVSAqLworCQkgICAgciArPSBsb2dsKHopOyBicmVhazsKKwkgICAgfQorICAgIC8qIDguMCA8PSB4IDwgMioqKHArMykgKi8KKwl9IGVsc2UgaWYgKGl4PDB4M2ZmZisxMTYpIHsKKwkgICAgdCA9IGxvZ2woeCk7CisJICAgIHogPSBvbmUveDsKKwkgICAgeSA9IHoqejsKKwkgICAgdyA9IHcwK3oqKHcxK3kqKHcyK3kqKHczK3kqKHc0K3kqKHc1K3kqKHc2K3kqKHc3K3kqKHc4KworCQl5Kih3OSt5Kih3MTAreSoodzExK3kqKHcxMit5Kih3MTMreSoodzE0K3kqKHcxNSt5Kih3MTYrCisJCXkqKHcxNyt5KncxOCkpKSkpKSkpKSkpKSkpKSkpOworCSAgICByID0gKHgtaGFsZikqKHQtb25lKSt3OworICAgIC8qIDIqKihwKzMpIDw9IHggPD0gaW5mICovCisJfSBlbHNlIAorCSAgICByID0gIHgqKGxvZ2woeCktMSk7CisJaWYoaHgmMHg4MDAwKSByID0gbmFkaiAtIHI7CisJcmV0dXJuIHI7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvZV9yZW1fcGlvMmwuaCBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX3JlbV9waW8ybC5oCmluZGV4IDA3OGQwYzMuLjVkNzhjNGQgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX3JlbV9waW8ybC5oCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX3JlbV9waW8ybC5oCkBAIC02LDcgKzYsNyBAQAogICoKICAqIERldmVsb3BlZCBhdCBTdW5Tb2Z0LCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCiAgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCi0gKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UgCiAgKiBpcyBwcmVzZXJ2ZWQuCiAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgKgpAQCAtMTcsOCArMTcsOCBAQAogX19GQlNESUQoIiRGcmVlQlNEJCIpOwogCiAvKiBsZDEyOCB2ZXJzaW9uIG9mIF9faWVlZTc1NF9yZW1fcGlvMmwoeCx5KQotICoKLSAqIHJldHVybiB0aGUgcmVtYWluZGVyIG9mIHggcmVtIHBpLzIgaW4geVswXSt5WzFdCisgKiAKKyAqIHJldHVybiB0aGUgcmVtYWluZGVyIG9mIHggcmVtIHBpLzIgaW4geVswXSt5WzFdIAogICogdXNlIF9fa2VybmVsX3JlbV9waW8yKCkKICAqLwogCkBAIC04OCwyNCArODgsMjQgQEAKIAkJdW5pb24gSUVFRWwyYml0cyB1MjsKIAkgICAgICAgIGludCBleDE7CiAJICAgICAgICBqICA9IGV4OwotCSAgICAgICAgeVswXSA9IHItdzsKKwkgICAgICAgIHlbMF0gPSByLXc7IAogCQl1Mi5lID0geVswXTsKIAkJZXgxID0gdTIueGJpdHMuZXhwc2lnbiAmIDB4N2ZmZjsKIAkgICAgICAgIGkgPSBqLWV4MTsKIAkgICAgICAgIGlmKGk+NTEpIHsgIC8qIDJuZCBpdGVyYXRpb24gbmVlZGVkLCBnb29kIHRvIDI0OCAqLwogCQkgICAgdCAgPSByOwotCQkgICAgdyAgPSBmbipwaW8yXzI7CisJCSAgICB3ICA9IGZuKnBpbzJfMjsJCiAJCSAgICByICA9IHQtdzsKLQkJICAgIHcgID0gZm4qcGlvMl8ydC0oKHQtciktdyk7CisJCSAgICB3ICA9IGZuKnBpbzJfMnQtKCh0LXIpLXcpOwkKIAkJICAgIHlbMF0gPSByLXc7CiAJCSAgICB1Mi5lID0geVswXTsKIAkJICAgIGV4MSA9IHUyLnhiaXRzLmV4cHNpZ24gJiAweDdmZmY7CiAJCSAgICBpID0gai1leDE7CiAJCSAgICBpZihpPjExOSkgewkvKiAzcmQgaXRlcmF0aW9uIG5lZWQsIDMxNiBiaXRzIGFjYyAqLwogCQkgICAgCXQgID0gcjsJLyogd2lsbCBjb3ZlciBhbGwgcG9zc2libGUgY2FzZXMgKi8KLQkJICAgIAl3ICA9IGZuKnBpbzJfMzsKKwkJICAgIAl3ICA9IGZuKnBpbzJfMzsJCiAJCSAgICAJciAgPSB0LXc7Ci0JCSAgICAJdyAgPSBmbipwaW8yXzN0LSgodC1yKS13KTsKKwkJICAgIAl3ICA9IGZuKnBpbzJfM3QtKCh0LXIpLXcpOwkKIAkJICAgIAl5WzBdID0gci13OwogCQkgICAgfQogCQl9CkBAIC0xMTMsNyArMTEzLDcgQEAKIAkgICAgeVsxXSA9IChyLXlbMF0pLXc7CiAJICAgIHJldHVybiBuOwogCX0KLSAgICAvKgorICAgIC8qIAogICAgICAqIGFsbCBvdGhlciAobGFyZ2UpIGFyZ3VtZW50cwogICAgICAqLwogCWlmKGV4PT0weDdmZmYpIHsJCS8qIHggaXMgaW5mIG9yIE5hTiAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2ludnRyaWcuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9pbnZ0cmlnLmMKaW5kZXggZGY2N2QxNi4uNGNlY2E4YSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2ludnRyaWcuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvaW52dHJpZy5jCkBAIC01OCw4ICs1OCw4IEBACiAgKi8KIGNvbnN0IGxvbmcgZG91YmxlIGF0YW5oaVtdID0gewogCSA0LjYzNjQ3NjA5MDAwODA2MTE2MjE0MjU2MjMxNDYxMjE0Mzk3ZS0wMUwsCi0JIDcuODUzOTgxNjMzOTc0NDgzMDk2MTU2NjA4NDU4MTk4NzU2OTllLTAxTCwKLQkgOS44Mjc5MzcyMzI0NzMyOTA2Nzk4NTcxMDYxMTAxNDY2NjAzOGUtMDFMLAorCSA3Ljg1Mzk4MTYzMzk3NDQ4MzA5NjE1NjYwODQ1ODE5ODc1Njk5ZS0wMUwsICAgICAgIAorCSA5LjgyNzkzNzIzMjQ3MzI5MDY3OTg1NzEwNjExMDE0NjY2MDM4ZS0wMUwsICAgICAgIAogCSAxLjU3MDc5NjMyNjc5NDg5NjYxOTIzMTMyMTY5MTYzOTc1MTQwZSswMEwsCiB9OwogCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19jb3NsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19jb3NsLmMKaW5kZXggNWY0YWEzNy4uZmU1Nzc3MyAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfY29zbC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2Nvc2wuYwpAQCAtNiw3ICs2LDcgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19leHBsLmggYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19leHBsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTU2NjhmZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2V4cGwuaApAQCAtMCwwICsxLDMyOCBAQAorLyogZnJvbTogRnJlZUJTRDogaGVhZC9saWIvbXN1bi9sZDEyOC9zX2V4cGwuYyAyNTEzNDUgMjAxMy0wNi0wMyAyMDowOToyMloga2FyZ2wgKi8KKworLyotCisgKiBDb3B5cmlnaHQgKGMpIDIwMDktMjAxMyBTdGV2ZW4gRy4gS2FyZ2wKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlIHVubW9kaWZpZWQsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zLCBhbmQgdGhlIGZvbGxvd2luZworICogICAgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCisgKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgorICogSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCisgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBPcHRpbWl6ZWQgYnkgQnJ1Y2UgRC4gRXZhbnMuCisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisvKgorICogbGQxMjggdmVyc2lvbiBvZiBrX2V4cGwuaC4gIFNlZSAuLi9sZDgwL3NfZXhwbC5jIGZvciBtb3N0IGNvbW1lbnRzLgorICoKKyAqIFNlZSAuLi9zcmMvZV9leHAuYyBhbmQgLi4vc3JjL2tfZXhwLmggZm9yIHByZWNpc2lvbi1pbmRlcGVuZGVudCBjb21tZW50cworICogYWJvdXQgdGhlIHNlY29uZGFyeSBrZXJuZWxzLgorICovCisKKyNkZWZpbmUJSU5URVJWQUxTCTEyOAorI2RlZmluZQlMT0cyX0lOVEVSVkFMUwk3CisjZGVmaW5lCUJJQVMJKExEQkxfTUFYX0VYUCAtIDEpCisKK3N0YXRpYyBjb25zdCBkb3VibGUKKy8qCisgKiBsbjIvSU5URVJWQUxTID0gTDErTDIgKGhpK2xvIGRlY29tcG9zaXRpb24gZm9yIG11bHRpcGxpY2F0aW9uKS4gIEwxIG11c3QKKyAqIGhhdmUgYXQgbGVhc3QgMjIgKD0gbG9nMih8TERCTF9NSU5fRVhQLWV4dHJhc3wpICsgbG9nMihJTlRFUlZBTFMpKSBsb3dlc3QKKyAqIGJpdHMgemVybyBzbyB0aGF0IG11bHRpcGxpY2F0aW9uIG9mIGl0IGJ5IG4gaXMgZXhhY3QuCisgKi8KK0lOVl9MID0gMS44NDY2NDk2NTIzMzc4NzMxZSsyLAkJLyogIDB4MTcxNTQ3NjUyYjgyZmUuMHAtNDUgKi8KK0wyID0gLTEuMDI1MzY3MDYzODg5NDczMWUtMjk7CQkvKiAtMHgxLjlmZjAzNDI1NDJmYzNwLTk3ICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKKy8qIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY4MDAwMDAwcC04ICovCitMMSA9ICA1LjQxNTIxMjM0ODEyNDU3MjcyOTgyMjEyNTk1OTE0NTY3NTA4ZS0zTDsKKworLyoKKyAqIFhYWCB2YWx1ZXMgaW4gaGV4IGluIGNvbW1lbnRzIGhhdmUgYmVlbiBsb3N0IChvciB3ZXJlIG5ldmVyIHByZXNlbnQpCisgKiBmcm9tIGhlcmUuCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorLyoKKyAqIERvbWFpbiBbLTAuMDAyNzA4LCAwLjAwMjcwOF0sIHJhbmdlIH5bLTIuNDAyMWUtMzgsIDIuNDIzNGUtMzhdOgorICogfGV4cCh4KSAtIHAoeCl8IDwgMioqLTEyNC45CisgKiAoMC4wMDI3MDggaXMgbG4yLygyKklOVEVSVkFMUykgcm91bmRlZCB1cCBhIGxpdHRsZSkuCisgKgorICogWFhYIHRoZSBjb2VmZnMgYXJlbid0IHZlcnkgY2FyZWZ1bGx5IHJvdW5kZWQsIGFuZCBJIGdldCAzLjYgbW9yZSBiaXRzLgorICovCitBMiAgPSAgMC41LAorQTMgID0gIDEuNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NTEwODU1MDBlLTFMLAorQTQgID0gIDQuMTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY0MjU4ODUzMjBlLTJMLAorQTUgID0gIDguMzMzMzMzMzMzMzMzMzMzMzMzMzQ1MjI4NzcxNjAxNzU4NDJlLTNMLAorQTYgID0gIDEuMzg4ODg4ODg4ODg4ODg4ODg4ODk5NzExMzk3NTE1OTY4MzZlLTNMOworCitzdGF0aWMgY29uc3QgZG91YmxlCitBNyAgPSAgMS45ODQxMjY5ODQxMjY5NDcwZS00LAkJLyogIDB4MS5hMDFhMDFhMDE5ZjkxcC0xMyAqLworQTggID0gIDIuNDgwMTU4NzMwMTU4NTI4NmUtNSwJCS8qICAweDEuNzFkZTNlYzc1YTk2N3AtMTkgKi8KK0E5ICA9ICAyLjc1NTczMjQyNzc0MTEyMzVlLTYsCQkvKiAgMHgxLjcxZGUzZWM3NWE5NjdwLTE5ICovCitBMTAgPSAgMi43NTU3MzMzNzIyMzc1MDY5ZS03OwkJLyogIDB4MS4yN2U1MDVhYjU2MjU5cC0yMiAqLworCitzdGF0aWMgY29uc3Qgc3RydWN0IHsKKwkvKgorCSAqIGhpIG11c3QgYmUgcm91bmRlZCB0byBhdCBtb3N0IDEwNiBiaXRzIHNvIHRoYXQgbXVsdGlwbGljYXRpb24KKwkgKiBieSByMSBpbiBleHBtMWwoKSBpcyBleGFjdCwgYnV0IGl0IGlzIHJvdW5kZWQgdG8gODggYml0cyBkdWUgdG8KKwkgKiBoaXN0b3JpY2FsIGFjY2lkZW50cy4KKwkgKgorCSAqIFhYWCBpdCBpcyB3YXN0ZWZ1bCB0byB1c2UgbG9uZyBkb3VibGUgZm9yIGJvdGggaGkgYW5kIGxvLiAgbGQxMjgKKwkgKiBleHAybCgpIHVzZXMgb25seSBmbG9hdCBmb3IgbG8gKGluIGEgdmVyeSBkaWZmZXJlbnRseSBvcmdhbml6ZWQKKwkgKiB0YWJsZTsgbGQ4MCBleHAybCgpIGlzIGRpZmZlcmVudCBhZ2Fpbi4gIEl0IHVzZXMgMiBkb3VibGVzIGluIGEKKwkgKiB0YWJsZSBvcmdhbml6ZWQgbGlrZSB0aGlzIG9uZS4gIDEgZG91YmxlIGFuZCAxIGZsb2F0IHdvdWxkCisJICogc3VmZmljZSkuICBUaGVyZSBhcmUgZGlmZmVyZW50IHBhY2tpbmcvbG9jYWxpdHkvYWxpZ25tZW50L2NhY2hpbmcKKwkgKiBwcm9ibGVtcyB3aXRoIHRoZXNlIG1ldGhvZHMuCisJICoKKwkgKiBYWFggQydzIGJhZCAlYSBmb3JtYXQgbWFrZXMgdGhlIGJpdHMgdW5yZWFkYWJsZS4gIFRoZXkgaGFwcGVuCisJICogdG8gYWxsIGxpbmUgdXAgZm9yIHRoZSBoaSB2YWx1ZXMgMSBiZWZvcmUgdGhlIHBvaW50IGFuZCA4OAorCSAqIGluIDIyIG55YmJsZXMsIGJ1dCBmb3IgdGhlIGxvdyB2YWx1ZXMgdGhlIG55YmJsZXMgYXJlIHNoaWZ0ZWQKKwkgKiByYW5kb21seS4KKwkgKi8KKwlsb25nIGRvdWJsZQloaTsKKwlsb25nIGRvdWJsZQlsbzsKK30gdGJsW0lOVEVSVkFMU10gPSB7CisJMHgxcDBMLCAweDBwMEwsCisJMHgxLjAxNjNkYTlmYjMzMzU2ZDg0YTY2YWVwMEwsIDB4My4zNmRjZGZhNDAwM2VjMDRjMzYwYmUyNDA0MDc4cC05MkwsCisJMHgxLjAyYzlhM2U3NzgwNjBlZTZmN2NhY2FwMEwsIDB4NC5mN2EyOWJkZTkzZDcwYTJjYWJjNWNiODliYTEwcC05MkwsCisJMHgxLjA0MzE1ZTg2ZTdmODRiZDczOGY5YTJwMEwsIDB4ZC5hNDdlNmVkMDQwYmI0YmZjMDVhZjY0NTVlOWI4cC05NkwsCisJMHgxLjA1OWIwZDMxNTg1NzQzYWU3YzU0OGVwMEwsIDB4Yi42OGNhNDE3ZmU1M2UzNDk1ZjdkZjRiYWY4NGEwcC05MkwsCisJMHgxLjA3MDZiMjlkZGY2ZGRjNmRjNDAzYThwMEwsIDB4MS5kODdiMjdlZDA3Y2I4YjA5MmFjNzVlMzExNzUzcC04OEwsCisJMHgxLjA4NzQ1MTg3NTliYzgwOGMzNWYyNWNwMEwsIDB4MS45NDI3ZmEyYjA0MWIyZDY4MjlkODk5M2EwZDAxcC04OEwsCisJMHgxLjA5ZTNlY2FjNmYzODM0NTIxZTA2MGNwMEwsIDB4NS44NGQ2Yjc0YmEyZTAyM2RhNzMwZTdmY2NiNzU4cC05MkwsCisJMHgxLjBiNTU4NmNmOTg5MGY2Mjk4YjkyYjZwMEwsIDB4MS4xODQyYTk4MzY0MjkxNDA4YjNjZWIwYTJhMmJicC04OEwsCisJMHgxLjBjYzkyMmI3MjQ3Zjc0MDdiNzA1YjhwMEwsIDB4OS4zZGM1ZThhYWM1NjRlNmZlMmVmMWQ0MzFmZDk4cC05MkwsCisJMHgxLjBlM2VjMzJkM2QxYTIwMjA3NDJlNGVwMEwsIDB4MS44YWY2YTU1MmFjNGIzNThiMTEyOWU5Zjk2NmE0cC04OEwsCisJMHgxLjBmYjY2YWZmZWQzMWFmMjMyMDkxZGNwMEwsIDB4MS44YTE0MjY1MTRlMGI2MjdiZGE2OTRhNDAwYTI3cC04OEwsCisJMHgxLjExMzAxZDAxMjViNTBhNGViYmYxYWVwMEwsIDB4ZC45MzE4Y2VhYzVjYzQ3YWIxNjZlZTU3NDI3MTc4cC05MkwsCisJMHgxLjEyYWJkYzA2YzMxY2JmYjkyYmFkMzJwMEwsIDB4NC5kNjhlMmY3MjcwYmRmN2NlZGY5NGViMWNiODE4cC05MkwsCisJMHgxLjE0MjlhYWVhOTJkZGZiMzQxMDE5NDJwMEwsIDB4MS5iMjU4NmQwMTg0NGIzODliZWE3YWVkZDIyMWQ0cC04OEwsCisJMHgxLjE1YTk4YzhhNThlNTEyNDgwZDU3M2NwMEwsIDB4MS5kNTYxM2JmOTJhMmI2MThlZTMxYjM3NmMyNjg5cC04OEwsCisJMHgxLjE3MmI4M2M3ZDUxN2FkY2RmN2M4YzRwMEwsIDB4MS4wZWIxNGE3OTIwMzU1MDlmZjdkNzU4NjkzZjI0cC04OEwsCisJMHgxLjE4YWY5Mzg4YzhkZTliYmJmNzBiOWFwMEwsIDB4My5jMjUwNWM5N2MwMTAyZTVmMTIxMTk0MWQyODQwcC05MkwsCisJMHgxLjFhMzViZWI2ZmNiNzUzY2I2OThmNjhwMEwsIDB4MS4yZDFjODM1YTZjMzA3MjRkNWNmYWUzMWI4NGU1cC04OEwsCisJMHgxLjFiYmUwODQwNDVjZDM5YWIxZTcyYjRwMEwsIDB4NC4yN2UzNWY5YWNiNTdlNDczOTE1NTE5YTFiNDQ4cC05MkwsCisJMHgxLjFkNDg3MzE2OGI5YWE3ODA1YjgwMjhwMEwsIDB4OS45MGYwN2E5OGI0MjIwNmU0NjE2NmNmMDUxZDcwcC05MkwsCisJMHgxLjFlZDUwMjJmY2Q5MWNiODgxOWZmNjBwMEwsIDB4MS4xMjFkMWU1MDRkMzZjNDc0NzRjOWI3ZGU2MDY3cC04OEwsCisJMHgxLjIwNjNiODg2MjhjZDYzYjhlZWIwMjhwMEwsIDB4MS41MDkyOWQwZmM0ODdkMjFjMmI4NDAwNDI2NGRlcC04OEwsCisJMHgxLjIxZjQ5OTE3ZGRjOTYyNTUyZmQyOTJwMEwsIDB4OS40YmRiNGI2MWVhNjI0NzdjYWExZGNlODIzYmEwcC05MkwsCisJMHgxLjIzODdhNmU3NTYyMzg2NmMxZmFkYjBwMEwsIDB4MS5jMTVjYjU5M2IwMzI4NTY2OTAyZGY2OWU0ZGUycC04OEwsCisJMHgxLjI1MWNlNGZiMmE2M2YzNTgyYWI3ZGVwMEwsIDB4OS5lOTQ4MTFhOWM4YWZkY2Y3OTY5MzRiYzY1MmQwcC05MkwsCisJMHgxLjI2YjQ1NjVlMjdjZGQyNTdhNjczMjhwMEwsIDB4MS5kM2IyNDlkY2U0ZTkxODZkZGQ1ZmY0NGU2YjA4cC05MkwsCisJMHgxLjI4NGRmZTFmNTYzODA5NmNmMTVjZjBwMEwsIDB4My5jYTA5NjdmZGFhMmU1MmQ3YzgxMDZmMmUyNjJjcC05MkwsCisJMHgxLjI5ZTlkZjUxZmRlZTEyYzI1ZDE1ZjRwMEwsIDB4MS5hMjRhYTNiY2E4OTBhYzA4ZDIwM2ZlZDgwYTA3cC04OEwsCisJMHgxLjJiODdmZDBkYWQ5OGZmZGRlYTQ2NTJwMEwsIDB4MS44ZmNhYjg4NDQyZmRjM2NiNmRlNDUxOTE2NWVkcC04OEwsCisJMHgxLjJkMjg1YTZlNDAzMGI0MDA5MWQ1MzZwMEwsIDB4ZC4wNzUzODQ1ODljMWNkMWIzZTQwMThhNmIxMzQ4cC05MkwsCisJMHgxLjJlY2FmYTkzZTJmNTYxMWNhMGY0NWNwMEwsIDB4MS41MjM4MzNhZjYxMWJkY2RhMjUzYzU1NGNmMjc4cC04OEwsCisJMHgxLjMwNmZlMGEzMWI3MTUyZGU4ZDVhNDZwMEwsIDB4My4wNWM4NWVkZWNiYzI3MzQzNjI5ZjUwMmYxYWYycC05MkwsCisJMHgxLjMyMTcwZmM0Y2Q4MzEzNTM5Y2YxYzJwMEwsIDB4MS4wMDhmODZkZGUzMjIwYWUxN2EwMDViNjQxMmJlcC04OEwsCisJMHgxLjMzYzA4YjI2NDE2ZmY0YzljODYxMGNwMEwsIDB4MS45NjY5NmJmOTVkMTU5MzAzOTUzOWQ5NGQ2NjJicC04OEwsCisJMHgxLjM1NmM1NWY5MjlmZjBjOTQ2MjM0NzZwMEwsIDB4My43M2FmMzhkNmQ4ZDZmOTUwNmM5YmJjOTNjYmMwcC05MkwsCisJMHgxLjM3MWE3MzczYWE5Y2FhNzE0NTUwMmVwMEwsIDB4MS40NTQ3OTg3ZTNlMTI1MTZiZjljNjk5YmU0MzJmcC04OEwsCisJMHgxLjM4Y2FlNmQwNWQ4NjU4NWE5Y2IwZDhwMEwsIDB4MS5iZWQwYzg1M2JkMzBhMDI3OTA5MzFlYjJlOGYwcC04OEwsCisJMHgxLjNhN2RiMzRlNTlmZjZlYTFiYzkyOThwMEwsIDB4MS5lMGExZDMzNjE2M2ZlMmY4NTJjZWViMTM0MDY3cC04OEwsCisJMHgxLjNjMzJkYzMxM2E4ZTQ4NDAwMWYyMjhwMEwsIDB4Yi41OGYzNzc1ZTA2YWI2NjM1MzAwMWZhZTlmY2EwcC05MkwsCisJMHgxLjNkZWE2NGMxMjM0MjIzNWI0MTIyM2VwMEwsIDB4MS4zZDc3M2ZiYTJjYjgyYjgyNDQyNjdjNTQ0NDNmcC05MkwsCisJMHgxLjNmYTQ1MDRhYzgwMWJhMGJmNzAxYWFwMEwsIDB4NC4xODMyZmI4YzFjOGRiZGZmMmM0OTkwOWU2YzYwcC05MkwsCisJMHgxLjQxNjBhMjFmNzJlMjlmODQzMjViOGVwMEwsIDB4MS4zZGI2MWZiMzUyZjA1NDBlNmJhMDU2MzQ0MTNlcC04OEwsCisJMHgxLjQzMWY1ZDk1MGE4OTZkYzcwNDQzOTRwMEwsIDB4MS4wY2NlYzgxZTI0YjBjYWZmNzU4MWVmNDEyN2Y3cC05MkwsCisJMHgxLjQ0ZTA4NjA2MTg5MmQwMzEzNmY0MDhwMEwsIDB4MS5kZjAxOWZiZDRmM2I0ODcwOWI3ODU5MWQ1Y2I1cC04OEwsCisJMHgxLjQ2YTQxZWQxZDAwNTc3MjUxMmY0NThwMEwsIDB4MS4yMjlkOTdkZjQwNGZmMjFmMzljMWI1OTRkM2E4cC04OEwsCisJMHgxLjQ4NmEyYjVjMTNjZDAxM2MxYTNiNjhwMEwsIDB4MS4wNjJmMDNjM2RkNzVjZTg3NTdmNzgwZTZlYzk5cC04OEwsCisJMHgxLjRhMzJhZjBkN2QzZGU2NzJkOGJjZjRwMEwsIDB4Ni5mOTU4NjQ2MWRiMWQ4NzhiMWQxNDhiZDNjY2I4cC05MkwsCisJMHgxLjRiZmRhZDUzNjJhMjcxZDQzOTdhZmVwMEwsIDB4Yy40MmUyMGUwMzYzYmEyZTE1OWM1NzlmODJlNGIwcC05MkwsCisJMHgxLjRkY2IyOTlmZGRkMGQ2M2IzNmVmMWFwMEwsIDB4OS5lMGNjNDg0YjI1YTU1NjZkMGJkNWY1OGFkMjM4cC05MkwsCisJMHgxLjRmOWIyNzY5ZDJjYTZhZDMzZDhiNjhwMEwsIDB4MS5hYTA3M2VlNTVlMDI4NDk3YTMyOWE3MzMzZGJhcC04OEwsCisJMHgxLjUxNmRhYTJjZjY2NDFjMTEyZjUyYzhwMEwsIDB4NC5kODIyMTkwZTcxODIyNjE3N2Q3NjA4ZDIwMDM4cC05MkwsCisJMHgxLjUzNDJiNTY5ZDRmODFkZjBhODNjNDhwMEwsIDB4MS5kODZhNjNmNGU2NzJhM2U0Mjk4MDViMDQ5NDY1cC04OEwsCisJMHgxLjU1MWE0Y2E1ZDkyMGVjNTJlYzYyMDJwMEwsIDB4NC4zNGNhNjcyNjQ1ZGM2YzEyNGQ2NjE5YTg3NTc0cC05MkwsCisJMHgxLjU2ZjQ3MzZiNTI3ZGE2NmVjYjAwNDZwMEwsIDB4MS42NGViM2MwMGYyZjVhYjNkODAxZDdjYzcyNzJkcC04OEwsCisJMHgxLjU4ZDEyZDQ5N2M3ZmQyNTJiYzJiNzJwMEwsIDB4MS40M2JjZjJlYzkzNmE5NzBkOWNjMjY2ZjAwNzJmcC04OEwsCisJMHgxLjVhYjA3ZGQ0ODU0Mjk1OGM5MzAxNTBwMEwsIDB4MS45MWViMzQ1ZDg4ZDdjODEyODBlMDY5ZmJkYjYzcC04OEwsCisJMHgxLjVjOTI2OGE1OTQ2YjcwMWM0YjFiODBwMEwsIDB4MS42OTg2YTIwM2Q4NGU2YTRhOTJmMTc5ZTcxODg5cC04OEwsCisJMHgxLjVlNzZmMTVhZDIxNDg2ZTliZTRjMjBwMEwsIDB4My45OTc2NmEwNjU0OGEwNTgyOWU4NTNiZGIyYjUycC05MkwsCisJMHgxLjYwNWUxYjk3NmRjMDhiMDc2ZjU5MmFwMEwsIDB4NC44NmUzYjM0ZWFkMWI0NzY5ZGY4NjdiOWM4OWNjcC05MkwsCisJMHgxLjYyNDdlYjAzYTU1ODRiMWYwZmEwNmVwMEwsIDB4MS5kMmRhNDJiYjFjZWFmOWY3MzIyNzViOGFlZjMwcC04OEwsCisJMHgxLjY0MzQ2MzRjY2MzMWZjNzZmODcxNGNwMEwsIDB4NC5lZDlhNGU0MTAwMDMwNzEwM2ExOGNmN2E2ZTA4cC05MkwsCisJMHgxLjY2MjM4ODI1NTIyMjQ5MTI3ZDllMjhwMEwsIDB4MS5iOGYzMTRhMzM3ZjRkYzBhM2FkZjE3ODdmZjc0cC04OEwsCisJMHgxLjY4MTU1ZDQ0Y2E5NzMwODFjNTcyMjZwMEwsIDB4MS5iOWYzMjcwNmJmZTRlNjI3ZDgwOWE4NWRjYzY2cC04OEwsCisJMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTJwMEwsIDB4MS42NmVhOTU3ZDNlM2FkZWMxNzUxMjc3NTA5OWRhcC04OEwsCisJMHgxLjZjMDEyNzUwYmRhYmVlZDc2YTk5ODBwMEwsIDB4Zi40ZjMzZmRlYjhiMGVjZDgzMTEwNmY1N2IzZDAwcC05NkwsCisJMHgxLjZkZmIyM2M2NTFhMmVmMjIwZTJjYmVwMEwsIDB4MS5iYmFhODM0YjNmMTE1NzdjZWVmYmU2YzFjNDExcC05MkwsCisJMHgxLjZmZjdkZjk1MTk0ODNjZjg3ZTFiNGVwMEwsIDB4MS4zZTIxM2JmZjliNzAyZDVhYTQ3N2MxMjUyM2NlcC04OEwsCisJMHgxLjcxZjc1ZThlYzVmNzNkZDIzNzBmMmVwMEwsIDB4Zi4wYWNkNmNiNDM0YjU2MmQ5ZThhMjBhZGRhNjQ4cC05MkwsCisJMHgxLjczZjlhNDhhNTgxNzNiZDVjOWE0ZTZwMEwsIDB4OC5hYjExODJhZTIxN2YzYTc2ODE3NTk1NTNlODQwcC05MkwsCisJMHgxLjc1ZmViNTY0MjY3YzhiZjZlOWFhMzJwMEwsIDB4MS5hNDhiMjcwNzE4MDVlNjFhMTdiOTU0YTJkYWQ4cC04OEwsCisJMHgxLjc4MDY5NGZkZTVkM2Y2MTlhZTAyODBwMEwsIDB4OC41OGIyYmIyYmRjZjg2Y2QwOGUzNWZiMDRjMGYwcC05MkwsCisJMHgxLjdhMTE0NzNlYjAxODZkN2Q1MTAyM2VwMEwsIDB4MS42Y2RhMWY1ZWY0MmI2Njk3Nzk2MDUzMWU4MjFicC04OEwsCisJMHgxLjdjMWVkMDEzMGMxMzI3YzQ5MzM0NDRwMEwsIDB4MS45Mzc1NjJiMmRjOTMzZDQ0ZmM4MjhlZmQ0YzljcC04OEwsCisJMHgxLjdlMmYzMzZjZjRlNjIxMDVkMDJiYTBwMEwsIDB4MS41Nzk3ZTE3MGExNDI3ZjhmY2RmNWYzOTA2MTA4cC04OEwsCisJMHgxLjgwNDI3NTQzZTFhMTFiNjBkZTY3NjRwMEwsIDB4OS5hMzU0ZWE3MDZiOGU0ZDhiNzE4YTY3MmJmN2M4cC05MkwsCisJMHgxLjgyNTg5OTk0Y2NlMTI4YWNmODhhZmFwMEwsIDB4Yi4zNGEwMTBmNmFkNjVjYmJhYzBmNTMyZDM5YmUwcC05MkwsCisJMHgxLjg0NzFhNDYyM2M3YWNjZTUyZjZiOTZwMEwsIDB4MS5jNjQwOTUzNzBmNTFmNDg4MTc5MTRkZDc4NjY1cC04OEwsCisJMHgxLjg2OGQ5OWI0NDkyZWM4MGU0MWQ5MGFwMEwsIDB4Yy4yNTE3MDc0ODRkNzNmMTM2ZmI1Nzc5NjU2YjcwcC05MkwsCisJMHgxLjg4YWM3ZDk4YTY2OTk2NjUzMGJjZGVwMEwsIDB4MS4yZDRlOWQ2MTI4M2VmMzg1ZGUxNzBhYjIwZjk2cC04OEwsCisJMHgxLjhhY2U1NDIyYWEwZGI1YmE3YzU1YTBwMEwsIDB4MS45MmM5YmIzZTZlZDYxZjI3MzMzMDRhMzQ2ZDhmcC04OEwsCisJMHgxLjhjZjMyMTZiNTQ0OGJlZjJhYTFjZDBwMEwsIDB4MS42MWM1NWQ4NGE5ODQ4ZjhjNDUzYjNjYThjOTQ2cC04OEwsCisJMHgxLjhmMWFlOTkxNTc3MzYyYjk4Mjc0NWNwMEwsIDB4Ny4yZWQ4MDRlZmM5YjRhZTE0NThhZTk0NjA5OWQ0cC05MkwsCisJMHgxLjkxNDViMGI5MWZmYzU4OGE2MWI0NjhwMEwsIDB4MS5mNmI3MGUwMWMyYTkwMjI5YTRjNDMwOWVhNzE5cC04OEwsCisJMHgxLjkzNzM3YjBjZGM1ZTRmNDUwMWMzZjJwMEwsIDB4NS40MGEyMmQyZmM0YWY1ODFiNjNlODMyNmVmZTljcC05MkwsCisJMHgxLjk1YTQ0Y2JjODUyMGVlOWI0ODM2OTRwMEwsIDB4MS5hMGZjNmY3YzdkNjFiMmIzYTIyYTBlYWIyY2FkcC04OEwsCisJMHgxLjk3ZDgyOWZkZTRlNGY4YjllOTIwZjhwMEwsIDB4MS4xZThiZDdlZGI5ZDcxNDRiNmY2ODE4MDg0Y2M3cC04OEwsCisJMHgxLjlhMGYxNzBjYTA3YjliYTMxMDliOGNwMEwsIDB4NC42NzM3YmViMTllMWVhZGE2ODI1ZDNjNTU3NDI4cC05MkwsCisJMHgxLjljNDkxODJhM2YwOTAxYzdjNDZiMDZwMEwsIDB4MS4xZjJiZTU4ZGRhZGU1MGMyMTcxODZjOTBiNDU3cC04OEwsCisJMHgxLjllODYzMTllMzIzMjMxODI0Y2E3OGVwMEwsIDB4Ni40YzZlMDEwZjkyYzA4MmJiYWRmYWY2MDVjZmQ0cC05MkwsCisJMHgxLmEwYzY2N2I1ZGU1NjRiMjlhZGE4YjhwMEwsIDB4Yy5hYjM0OWFhMDQyMmE4ZGE3ZDQ1MTJlZGFjNTQ4cC05MkwsCisJMHgxLmEzMDliZWM0YTJkMzM1OGMxNzFmNzZwMEwsIDB4MS4wZGFhZDU0N2ZhMjJjMjZkMTY4ZWE3NjJkODU0cC04OEwsCisJMHgxLmE1NTAzYjIzZTI1NWM4YjQyNDQ5MWNwMEwsIDB4YS5mODdiYzgwNTBhNDA1MzgxNzAzZWY3Y2FmZjUwcC05MkwsCisJMHgxLmE3OTllMTMzMGIzNTg2ZjJkZmIyYjBwMEwsIDB4MS41OGYxYTk4Nzk2Y2U4OTA4YWU4NTIyMzZjYTk0cC04OEwsCisJMHgxLmE5ZTZiNTU3OWZkYmY0M2ViMjQzYmNwMEwsIDB4MS5mZjRjNGM1OGI1NzFjZjQ2NWNhZjA3YjRiOWY1cC04OEwsCisJMHgxLmFjMzZiYmZkM2YzNzljMGRiOTY2YTJwMEwsIDB4MS4xMjY1ZmM3M2U0ODA3MTJkMjBmODU5N2E4ZTdicC04OEwsCisJMHgxLmFlODlmOTk1YWQzYWQ1ZTg3MzRkMTZwMEwsIDB4MS43MzIwNWE3ZmJjM2FlNjc1ZWE0NDBiMTYyZDZjcC04OEwsCisJMHgxLmIwZTA3Mjk4ZGI2NjU5MDg0MmFjZGVwMEwsIDB4MS5jNmY2Y2EwZTVkY2FlMmFhZmZmYTdhMDU1NGNicC04OEwsCisJMHgxLmIzM2EyYjg0ZjE1ZmFmNmJmZDBlN2FwMEwsIDB4MS5kOTQ3YzI1NzU3ODFkYmI0OWIxMjM3Yzg3YjZlcC04OEwsCisJMHgxLmI1OTcyOGRlNTU5Mzk4ZTM4ODExMTBwMEwsIDB4MS42NDg3M2M3MTcxZmVmYzQxMDQxNmJlMGE2NTI1cC04OEwsCisJMHgxLmI3Zjc2ZjJmYjVlNDZlYWE3YjA4MWFwMEwsIDB4Yi41M2M1MzU0Yzg5MDNjMzU2ZTRiNjI1YWFjYzI4cC05MkwsCisJMHgxLmJhNWIwMzBhMTA2NDk4NDBjYjNjNmFwMEwsIDB4Zi41YjQ3ZjI5NzIwMzc1N2UxY2M2ZWFkYzhiYWQwcC05MkwsCisJMHgxLmJjYzFlOTA0YmMxZDIyNDdiYTBmNDRwMEwsIDB4MS5iM2QwOGNkMGIyMDI4NzA5MmJkNTliZTRhZDk4cC04OEwsCisJMHgxLmJmMmMyNWJkNzFlMDg4NDA4ZDcwMjRwMEwsIDB4MS4xOGUzNDQ5ZmEwNzNiMzU2NzY2ZGZiNTY4ZmY0cC04OEwsCisJMHgxLmMxOTliZGQ4NTUyOWMyMjIwY2IxMmFwMEwsIDB4OS4xYmE2Njc5NDQ0OTY0YTM2NjYxMjQwMDQzOTcwcC05NkwsCisJMHgxLmM0MGFiNWZmZmQwN2E2ZDE0ZGY4MjBwMEwsIDB4Zi4xODI4YTUzNjZmZDM4N2E3YmRkNTRjZGY3MzAwcC05MkwsCisJMHgxLmM2N2YxMmU1N2QxNGI0YTIxMzdmZDJwMEwsIDB4Zi4yYjMwMWRkOWU2YjE1MWE2ZDFmOWQ1ZDVmNTIwcC05NkwsCisJMHgxLmM4ZjZkOTQwNmU3YjUxMWFjYmM0ODhwMEwsIDB4NS5jNDQyZGRiNTU4MjAxNzFmMzE5ZDllNTA3NmE4cC05NkwsCisJMHgxLmNiNzIwZGNlZjkwNjkxNTAzY2JkMWVwMEwsIDB4OS40OWRiNzYxZDk1NTlhYzBjYjZkZDNlZDU5OWUwcC05MkwsCisJMHgxLmNkZjBiNTU1ZGMzZjljNDRmODk1OGVwMEwsIDB4MS5hYzUxYmU1MTVmOGM1OGJkZmI2ZjU3NDBhM2E0cC04OEwsCisJMHgxLmQwNzJkNGEwNzg5N2I4ZDBmMjJmMjBwMEwsIDB4MS5hMTU4ZTE4ZmJiZmM2MjVmMDlmNGNjYTQwODc0cC04OEwsCisJMHgxLmQyZjg3MDgwZDg5ZjE4YWRlMTIzOThwMEwsIDB4OS5lYTIwMjViNGM1NjU1M2Y1Y2RlZTRjOTI0NzI4cC05MkwsCisJMHgxLmQ1ODE4ZGNmYmE0ODcyNWRhMDVhZWFwMEwsIDB4MS42NmUwZGNhOWY1ODlmNTU5YzA4NzZmZjIzODMwcC04OEwsCisJMHgxLmQ4MGUzMTZjOTgzOTdiYjg0ZjlkMDRwMEwsIDB4OC44MDVmODRiZWM2MTRkZTI2OTkwMGRkZjk4ZDI4cC05MkwsCisJMHgxLmRhOWU2MDNkYjMyODU3MDhjMDFhNWFwMEwsIDB4MS42ZDRjOTdmNjI0NmYwZWM2MTRlYzk1Yzk5MzkycC04OEwsCisJMHgxLmRkMzIxZjMwMWI0NjA0YjY5NWRlM2NwMEwsIDB4Ni4zMGEzOTMyMTUyOTllMzBkNGZiNzM1MDNjMzQ4cC05NkwsCisJMHgxLmRmYzk3MzM3YjliNWViOTY4Y2FjMzhwMEwsIDB4MS5lZDI5MWI3MjI1YTk0NGVmZDViYjU1MjRiOTI3cC04OEwsCisJMHgxLmUyNjQ2MTRmNWExMjhhMTI3NjFmYTBwMEwsIDB4MS43YWRhNjQ2N2U3N2Y3M2JmNjVlMDRjOTVlMjlkcC04OEwsCisJMHgxLmU1MDJlZTc4YjNmZjYyNzNkMTMwMTRwMEwsIDB4MS4zOTkxZThmNDk2NTllMTY5M2JlMTdhZTFkMmY5cC04OEwsCisJMHgxLmU3YTUxZmJjNzRjODM0YjU0OGIyODJwMEwsIDB4MS4yMzc4Njc1OGE4NGY0OTU2MzU0NjM0YTQxNmNlcC04OEwsCisJMHgxLmVhNGFmYTJhNDkwZDk4NThmNzNhMThwMEwsIDB4Zi41ZGIzMDFmODZkZWEyMDYxMGNlZWUxM2ViN2I4cC05MkwsCisJMHgxLmVjZjQ4MmQ4ZTY3ZjA4ZGIwMzEyZmFwMEwsIDB4MS45NDljZWY0NjIwMTBiYjRiYzRjZTcyYTkwMGRmcC04OEwsCisJMHgxLmVmYTFiZWU2MTVhMjc3NzFmZDIxYThwMEwsIDB4MS4yZGFjMWY2ZGQ1ZDIyOWZmNjhlNDZmMjdlM2RmcC04OEwsCisJMHgxLmYyNTJiMzc2YmJhOTc0ZTg2OTZmYzJwMEwsIDB4MS42MzkwZDRjNmFkNTQ3NmI1MTYyZjQwZTFkOWE5cC04OEwsCisJMHgxLmY1MDc2NWI2ZTQ1NDA2NzRmODRiNzZwMEwsIDB4Mi44NjJiYWZmOTkwMDBkZmM0MzUyYmEyOWI4OTA4cC05MkwsCisJMHgxLmY3YmZkYWQ5Y2JlMTM4OTEzYjRiZmVwMEwsIDB4Ny4yYmQ5NWM1Y2U3MjgwZmE0ZDIzNDRhM2Y1NjE4cC05MkwsCisJMHgxLmZhN2MxODE5ZTkwZDgyZTkwYTdlNzRwMEwsIDB4Yi4yNjNjMWRjMDYwYzM2Zjc2NTBiNGMwZjIzM2E4cC05MkwsCisJMHgxLmZkM2MyMmI4ZjcxZjEwOTc1YmE0YjJwMEwsIDB4MS4yYmNmM2E1ZTEyZDI2OWQ4YWQ3YzFhNGE4ODc1cC04OEwKK307CisKKy8qCisgKiBLZXJuZWwgZm9yIGV4cGwoeCkuICB4IG11c3QgYmUgZmluaXRlIGFuZCBub3QgdGlueSBvciBodWdlLgorICogInRpbnkiIGlzIGFueXRoaW5nIHRoYXQgd291bGQgbWFrZSB1cyB1bmRlcmZsb3cgKHxBNip4XjZ8IDwgfkxEQkxfTUlOKS4KKyAqICJodWdlIiBpcyBhbnl0aGluZyB0aGF0IHdvdWxkIG1ha2UgZm4qTDEgaW5leGFjdCAofHh8ID4gfjIqKjE3KmxuMikuCisgKi8KK3N0YXRpYyBpbmxpbmUgdm9pZAorX19rX2V4cGwobG9uZyBkb3VibGUgeCwgbG9uZyBkb3VibGUgKmhpcCwgbG9uZyBkb3VibGUgKmxvcCwgaW50ICprcCkKK3sKKwlsb25nIGRvdWJsZSBxLCByLCByMSwgdDsKKwlkb3VibGUgZHIsIGZuLCByMjsKKwlpbnQgbiwgbjI7CisKKwkvKiBSZWR1Y2UgeCB0byAoaypsbjIgKyBlbmRwb2ludFtuMl0gKyByMSArIHIyKS4gKi8KKwkvKiBVc2UgYSBzcGVjaWFsaXplZCByaW50KCkgdG8gZ2V0IGZuLiAgQXNzdW1lIHJvdW5kLXRvLW5lYXJlc3QuICovCisJLyogWFhYIGFzc3VtZSBubyBleHRyYSBwcmVjaXNpb24gZm9yIHRoZSBhZGRpdGlvbnMsIGFzIGZvciB0cmlnIGZucy4gKi8KKwkvKiBYWFggdGhpcyBzZXQgb2YgY29tbWVudHMgaXMgbm93IHF1YWRydXBsaWNhdGVkLiAqLworCS8qIFhYWCBidXQgc2VlIC4uL3NyYy9lX2V4cC5jIGZvciBhIGZpeCB1c2luZyBkb3VibGVfdC4gKi8KKwlmbiA9IChkb3VibGUpeCAqIElOVl9MICsgMHgxLjhwNTIgLSAweDEuOHA1MjsKKyNpZiBkZWZpbmVkKEhBVkVfRUZGSUNJRU5UX0lSSU5UKQorCW4gPSBpcmludChmbik7CisjZWxzZQorCW4gPSAoaW50KWZuOworI2VuZGlmCisJbjIgPSAodW5zaWduZWQpbiAlIElOVEVSVkFMUzsKKwkvKiBEZXBlbmQgb24gdGhlIHNpZ24gYml0IGJlaW5nIHByb3BhZ2F0ZWQ6ICovCisJKmtwID0gbiA+PiBMT0cyX0lOVEVSVkFMUzsKKwlyMSA9IHggLSBmbiAqIEwxOworCXIyID0gZm4gKiAtTDI7CisJciA9IHIxICsgcjI7CisKKwkvKiBFdmFsdWF0ZSBleHBsKGVuZHBvaW50W24yXSArIHIxICsgcjIpID0gdGJsW24yXSAqIGV4cGwocjEgKyByMikuICovCisJZHIgPSByOworCXEgPSByMiArIHIgKiByICogKEEyICsgciAqIChBMyArIHIgKiAoQTQgKyByICogKEE1ICsgciAqIChBNiArCisJICAgIGRyICogKEE3ICsgZHIgKiAoQTggKyBkciAqIChBOSArIGRyICogQTEwKSkpKSkpKSk7CisJdCA9IHRibFtuMl0ubG8gKyB0YmxbbjJdLmhpOworCSpoaXAgPSB0YmxbbjJdLmhpOworCSpsb3AgPSB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpOworfQorCisvKgorICogWFhYOiB0aGUgcmVzdCBvZiB0aGUgZnVuY3Rpb25zIGFyZSBpZGVudGljYWwgZm9yIGxkODAgYW5kIGxkMTI4LgorICogSG93ZXZlciwgd2Ugc2hvdWxkIHVzZSBzY2FsYm5sKCkgZm9yIGxkMTI4LCBzaW5jZSBsb25nIGRvdWJsZQorICogbXVsdGlwbGljYXRpb24gaXMgdmVyeSBzbG93IG9uIHRoZSBvbmx5IHN1cHBvcnRlZCBsZDEyOCBhcmNoIChzcGFyYzY0KS4KKyAqLworCitzdGF0aWMgaW5saW5lIHZvaWQKK2tfaGV4cGwobG9uZyBkb3VibGUgeCwgbG9uZyBkb3VibGUgKmhpcCwgbG9uZyBkb3VibGUgKmxvcCkKK3sKKwlmbG9hdCB0d29wa20xOworCWludCBrOworCisJX19rX2V4cGwoeCwgaGlwLCBsb3AsICZrKTsKKwlTRVRfRkxPQVRfV09SRCh0d29wa20xLCAweDNmODAwMDAwICsgKChrIC0gMSkgPDwgMjMpKTsKKwkqaGlwICo9IHR3b3BrbTE7CisJKmxvcCAqPSB0d29wa20xOworfQorCitzdGF0aWMgaW5saW5lIGxvbmcgZG91YmxlCitoZXhwbChsb25nIGRvdWJsZSB4KQoreworCWxvbmcgZG91YmxlIGhpLCBsbywgdHdvcGttMjsKKwlpbnQgazsKKworCXR3b3BrbTIgPSAxOworCV9fa19leHBsKHgsICZoaSwgJmxvLCAmayk7CisJU0VUX0xEQkxfRVhQU0lHTih0d29wa20yLCBCSUFTICsgayAtIDIpOworCXJldHVybiAobG8gKyBoaSkgKiAyICogdHdvcGttMjsKK30KKworI2lmZGVmIF9DT01QTEVYX0gKKy8qCisgKiBTZWUgLi4vc3JjL2tfZXhwLmMgZm9yIGRldGFpbHMuCisgKi8KK3N0YXRpYyBpbmxpbmUgbG9uZyBkb3VibGUgY29tcGxleAorX19sZGV4cF9jZXhwbChsb25nIGRvdWJsZSBjb21wbGV4IHosIGludCBleHB0KQoreworCWxvbmcgZG91YmxlIGV4cF94LCBoaSwgbG87CisJbG9uZyBkb3VibGUgeCwgeSwgc2NhbGUxLCBzY2FsZTI7CisJaW50IGhhbGZfZXhwdCwgazsKKworCXggPSBjcmVhbGwoeik7CisJeSA9IGNpbWFnbCh6KTsKKwlfX2tfZXhwbCh4LCAmaGksICZsbywgJmspOworCisJZXhwX3ggPSAobG8gKyBoaSkgKiAweDFwMTYzODI7CisJZXhwdCArPSBrIC0gMTYzODI7CisKKwlzY2FsZTEgPSAxOworCWhhbGZfZXhwdCA9IGV4cHQgLyAyOworCVNFVF9MREJMX0VYUFNJR04oc2NhbGUxLCBCSUFTICsgaGFsZl9leHB0KTsKKwlzY2FsZTIgPSAxOworCVNFVF9MREJMX0VYUFNJR04oc2NhbGUxLCBCSUFTICsgZXhwdCAtIGhhbGZfZXhwdCk7CisKKwlyZXR1cm4gKGNwYWNrbChjb3MoeSkgKiBleHBfeCAqIHNjYWxlMSAqIHNjYWxlMiwKKwkgICAgc2lubCh5KSAqIGV4cF94ICogc2NhbGUxICogc2NhbGUyKSk7Cit9CisjZW5kaWYgLyogX0NPTVBMRVhfSCAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfc2lubC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfc2lubC5jCmluZGV4IGJkNDE1YzAuLjA5NDcyZDYgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX3NpbmwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19zaW5sLmMKQEAgLTYsNyArNiw3IEBACiAgKgogICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KICAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKLSAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZSAKICAqIGlzIHByZXNlcnZlZC4KICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXJmbC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXJmbC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyOWM5NjkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19lcmZsLmMKQEAgLTAsMCArMSwzMjkgQEAKKy8qIEAoIylzX2VyZi5jIDUuMSA5My8wOS8yNCAqLworLyoKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqIENvcHlyaWdodCAoQykgMTk5MyBieSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogRGV2ZWxvcGVkIGF0IFN1blBybywgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcworICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIGlzIHByZXNlcnZlZC4KKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKy8qCisgKiBTZWUgc19lcmYuYyBmb3IgY29tcGxldGUgY29tbWVudHMuCisgKgorICogQ29udmVydGVkIHRvIGxvbmcgZG91YmxlIGJ5IFN0ZXZlbiBHLiBLYXJnbC4KKyAqLworI2luY2x1ZGUgPGZsb2F0Lmg+CisKKyNpbmNsdWRlICJmcG1hdGguaCIKKyNpbmNsdWRlICJtYXRoLmgiCisjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCisKKy8qIFhYWCBQcmV2ZW50IGNvbXBpbGVycyBmcm9tIGVycm9uZW91c2x5IGNvbnN0YW50IGZvbGRpbmcgdGhlc2U6ICovCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgbG9uZyBkb3VibGUgdGlueSA9IDB4MXAtMTAwMDBMOworCitzdGF0aWMgY29uc3QgZG91YmxlCitoYWxmPSAwLjUsCitvbmUgPSAxLAordHdvID0gMjsKKy8qCisgKiBJbiB0aGUgZG9tYWluIFswLCAyKiotNDBdLCBvbmx5IHRoZSBmaXJzdCB0ZXJtIGluIHRoZSBwb3dlciBzZXJpZXMKKyAqIGV4cGFuc2lvbiBvZiBlcmYoeCkgaXMgdXNlZC4gIFRoZSBtYWduaXR1ZGUgb2YgdGhlIGZpcnN0IG5lZ2xlY3RlZAorICogdGVybXMgaXMgbGVzcyB0aGFuIDIqKi0xMjAuCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorZWZ4ICA9ICAxLjI4Mzc5MTY3MDk1NTEyNTczODk2MTU4OTAzMTIxNTQ1MTY3ZS0wMUwsCS8qIDB4ZWNiZmY2YTcsIDB4NDgxZGQ3ODgsIDB4YjY0ZDIxYTgsIDB4ZWIwNmZjM2YgKi8KK2VmeDggPSAgMS4wMjcwMzMzMzY3NjQxMDA1OTExNjkyNzEyMjQ5NzIzNjEzM2UrMDBMLAkvKiAweGVjYmZmNmE3LCAweDQ4MWRkNzg4LCAweGI2NGQyMWE4LCAweGViMDZmZjNmICovCisvKgorICogRG9tYWluIFswLCAwLjg0Mzc1XSwgcmFuZ2UgflstMS45MTllLTM4LCAxLjkxOWUtMzhdOgorICogfChlcmYoeCkgLSB4KS94IC0gcHAoeCkvcXEoeCl8IDwgMioqLTEyNS4yOQorICovCitwcDAgID0gIDEuMjgzNzkxNjcwOTU1MTI1NzM4OTYxNTg5MDMxMjE1NDUxNjdlLTAxTCwJLyogMHgzZmZjMDZlYiwgMHhhODIxNGRiNiwgMHg4OGQ3MWQ0OCwgMHhhN2Y2YmZlYyAqLworcHAxICA9IC0zLjE0OTMxNTU0Mzk2NTY4NTczODAyMDQ2OTMxMTU5NjgzNDA0ZS0wMUwsCS8qIDB4YmZmZDQyN2QsIDB4NmFkYTcyNjMsIDB4NTQ3ZWIwOTYsIDB4OTVmMzc0NjMgKi8KK3BwMiAgPSAtNS4yNzUxNDkyMDI4MjE4MzQ4NzEwMzU3Njk1Njk1NjcyNTMwOWUtMDJMLAkvKiAweGJmZmFiMDIzLCAweGU1YTI3MWUzLCAweGIwZTc5YjAxLCAweDJmN2FjOTYyICovCitwcDMgID0gLTEuMTMyMDI4Mjg1MDkwMDUyODEzNTU2MDk0OTU1MjM0NTI3MTNlLTAyTCwJLyogMHhiZmY4NzJmMSwgMHg2YTUwMjNhMSwgMHhlMDhiMzg4NCwgMHgzMjZhZjIwZiAqLworcHA0ICA9IC05LjE4NjI2MTU1ODcyNTIyNDUzODY1OTk4MzkxMjA2MDQ4NTA2ZS0wNEwsCS8qIDB4YmZmNGUxOWYsIDB4ZWE1ZmIwMjQsIDB4NDMyNDdhMzcsIDB4ZTQzMGIwNmMgKi8KK3BwNSAgPSAtNy44NzUxODg2MjQwNjE3NjI3NDkyMjUwNjQ0NzE1NzI4NDIzMGUtMDVMLAkvKiAweGJmZjE0YTRmLCAweDMxYTg1ZmUwLCAweDdmZmYyMjA0LCAweDA5YzQ5YjM3ICovCitwcDYgID0gLTMuNDIzNTc5NDQ0NzIyNDA0MzY1NDgxMTUzMzEwOTA1NjA4ODFlLTA2TCwJLyogMHhiZmVjY2I4MSwgMHg0YjQzYzMzNiwgMHhjZDJlYjZjMiwgMHg5MDNmMmQ4NyAqLworcHA3ICA9IC0xLjM3MzE3NDMyNTczODkwNDEyNjM0NzE3ODkwNzI2NzQ1NDI4ZS0wN0wsCS8qIDB4YmZlODI2ZTMsIDB4MGU5MTVlYjYsIDB4NDJhZWU0MTQsIDB4ZjdlMzY4MDUgKi8KK3BwOCAgPSAtMi43MTExNTE3MDExMzg2MTc1NTg1NTA0OTAwODczMjExMzcyNmUtMDlMLAkvKiAweGJmZTI3NDllLCAweDJiOTRmZDAwLCAweGVjYjRkMTY2LCAweDBlZmI5MWY4ICovCitwcDkgID0gLTMuMzc5MjU3NTYxOTY1NTU5NTk0NTQwMTgxODk3MTgxMTc4NjRlLTExTCwJLyogMHhiZmRjMjkzZSwgMHgxZDkwNjBjYiwgMHhkMDQzMjA0YSwgMHgzMTRjZDdmMCAqLworcXExICA9ICA0Ljc2NjcyNjI1NDcxNTUxMTcwNDg5OTc4NTU1MTgyNDQ5NDUwZS0wMUwsCS8qIDB4M2ZmZGU4MWMsIDB4ZGU2NTMxZjAsIDB4NzY4MDNiZWUsIDB4NTI2ZTI5ZTkgKi8KK3FxMiAgPSAgMS4wNjcxMzE0NDY3MjI4MTUwMjA1ODgwNzUyNTg1MDczMjI0MGUtMDFMLAkvKiAweDNmZmJiNTE4LCAweGQ3YTZiYjc0LCAweGNkOWJkZDMzLCAweDc2MDFlZWU1ICovCitxcTMgID0gIDEuNDc3NDc2MTMxMjc1MTM3NjExMDIxODkyMDE5MjMxNDc0OTBlLTAyTCwJLyogMHgzZmY4ZTQyMywgMHhhZTUyN2UxOCwgMHhmMTJjYjQ0NywgMHg3MjNiNDc0OSAqLworcXE0ICA9ICAxLjM5OTM5Mzc3NjcyMDI4NjcxODkxMTQ4NzcwOTA4ODc0ODE2ZS0wM0wsCS8qIDB4M2ZmNTZlZDcsIDB4YmEwNTVkODQsIDB4YzIxYjQ1YzQsIDB4Mzg4ZDE4MTIgKi8KK3FxNSAgPSAgOS40NDMwMjkzOTM1OTQ1NTI0MTI3MTk4MzMwOTM3ODczODI3NmUtMDVMLAkvKiAweDNmZjE4YzExLCAweGMxOGM5OWE0LCAweDg2ZDBmZTA5LCAweDQ2Mzg3YjRjICovCitxcTYgID0gIDQuNTYxOTkzNDIzMTI1MjI4NDIxNjEzMDE2NzE3NDUzNjU2NTBlLTA2TCwJLyogMHgzZmVkMzIyNiwgMHg3MzQyMWQwNSwgMHgwODg3NTMwMCwgMHgzMmZhMTQzMiAqLworcXE3ICA9ICAxLjUzMDE5MjYwNDgzNzY0NzczODQ1Mjk0NjAwMDkyMzYxMTk3ZS0wN0wsCS8qIDB4M2ZlODQ4OWIsIDB4M2E2M2Y2MjcsIDB4MmI5YWQyY2UsIDB4MjY1MTZlNTcgKi8KK3FxOCAgPSAgMy4yNTU0MjY5MTEyMTMyNDgwNTA5NDc3NzkwMTI1MDAwNTUwOGUtMDlMLAkvKiAweDNmZTJiZjZjLCAweDI2ZDkzYTI5LCAweDkxNDJiZTdjLCAweDlmMWRkMDQzICovCitxcTkgID0gIDMuMzc0MDU1ODE5NjQ0NzgwNjA0MzQ0MTAxNjcyNjI2ODQ5NzllLTExTDsJLyogMHgzZmRjMjhjOCwgMHhmYjhmYTFiZSwgMHgxMGU1N2VlYywgMHhhYTE5ZTQ5ZiAqLworCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK2VyeCAgPSAgOC40MjcwMDc5Mjk0OTcxNDg5NDE0MjIzMjQyNDIwMTIxMDk2MWUtMDFMLAkvKiAweDNmZmVhZjc2LCAweDdhNzQxMDg4LCAweGIwMDAwMDAwLCAweDAwMDAwMDAwICovCisvKgorICogRG9tYWluIFswLjg0Mzc1LCAxLjI1XSwgcmFuZ2UgflstMi41MjFlLTM2LCAyLjUyM2UtMzZdOgorICogfChlcmYoeCkgLSBlcngpIC0gcGEoeCkvcWEoeCl8IDwgMioqLTEyMC4xNQorICovCitwYTAgID0gLTIuNDgwMTAxMTc4OTExODYwMTcwMjQ0MzgyMzMzMjM3OTU4OTdlLTE3TCwJLyogMHhiZmM3Yzk3ZiwgMHg3NzgxMjI3OSwgMHg2Yzg3N2YyMiwgMHhlZjRiZmIyZSAqLworcGExICA9ICA0LjE1MTA3NDk3NDIwNTk0NjgwODk0MzI3OTY5NTA0NTI2NDg5ZS0wMUwsCS8qIDB4M2ZmZGE5MTEsIDB4ZjA5NmZiYzIsIDB4NTU2NjIwMDUsIDB4MjMzN2ZhNjQgKi8KK3BhMiAgPSAtMy45NDE4MDYyODA4NzA4NDg0NjcyNDQ0ODUxNTg1MTg5MjYwOWUtMDJMLAkvKiAweGJmZmE0MmU5LCAweGFiNTQ1MjhjLCAweGFkNTI5ZGExLCAweDZlZmMyYWYzICovCitwYTMgID0gIDQuNDg4OTc1OTk2MjUxOTIxMDcyOTU5NTQ3OTA2ODE2Nzc0NjJlLTAyTCwJLyogMHgzZmZhNmZiYywgMHhhNjVlZGJhMSwgMHgwZTRjYmNlYSwgMHg3M2VmOWEzMSAqLworcGE0ICA9ICA4LjAyMDY5MjUyMTQzMDE2NjAwMTEwOTcyMDE5MjMyOTk1NTI4ZS0wMkwsCS8qIDB4M2ZmYjQ4ODcsIDB4MGU4YjU0OGUsIDB4MzIzMGI0MTcsIDB4MTFiNTUzYjMgKi8KK3BhNSAgPSAtMS4wMjcyOTgxNjUzMzQzNTI3OTQ0MzYyMTEyMDI0MjM5MTI5NWUtMDJMLAkvKiAweGJmZjg1MGEwLCAweDA0MWRlM2VlLCAweGQ1YmNhNmM5LCAweDRlZjVmOWYyICovCitwYTYgID0gIDUuNzA3Nzc2OTQ1MzA3NTU2MzQ4NjQ4MjEwOTQ0MTk5ODIwOTVlLTAzTCwJLyogMHgzZmY3NzYxMCwgMHg5YjUwMWUxMCwgMHg0Yzk3ODM4MiwgMHg3NDJkZjY4ZiAqLworcGE3ICA9ICAxLjIyNjM1MTUwMjMzMDc1NTIxMDE4MjMxNzc5MjY3MDc3MDcxZS0wM0wsCS8qIDB4M2ZmNTQxN2IsIDB4MGU2MjM2ODIsIDB4NjAzMjdkYTAsIDB4OTZiOTIxOWUgKi8KK3BhOCAgPSAgNS4zNjEwMDIzNDgyMDIwNDU2OTQyODQxMjU0Mjg1NjY2NjUwM2UtMDRMLAkvKiAweDNmZjQxOTEyLCAweDI3Y2ViNGMxLCAweDFkMzI5OGVjLCAweDg0Y2VkNjI3ICovCitwYTkgID0gLTEuOTc3NTM1NzE4NDYzNjUxNjcxNzcxODc4NTg2Njc1ODMxNjVlLTA0TCwJLyogMHhiZmYyOWViOCwgMHgyM2Y1YmNmMywgMHgxNWM4M2M0NiwgMHhlNGZkYTk4YiAqLworcGExMCA9ICA2LjE5MzMzMDM5OTAwODQ2OTcwNjc0Nzk0Nzg5NTY4NDE1MTA1ZS0wNUwsCS8qIDB4M2ZmMTAzYzQsIDB4NjBmODhlNDYsIDB4YzBjOWZiMDIsIDB4MTNjYzdmYzEgKi8KK3BhMTEgPSAtNS40MDUzMTQwMDQzNjY0NTg2MTQ5MjI5MDI3MDMxMTc1MTM0OWUtMDZMLAkvKiAweGJmZWQ2YWJlLCAweDk2NjVmOGE4LCAweGRkMGFkM2JhLCAweGU1ZGMwZWUzICovCitxYTEgID0gIDkuMDUwNDEzMTMyNjU0OTA0ODc3OTMyMzE4MTAyOTE5MDc4NTFlLTAxTCwJLyogMHgzZmZlY2Y2MSwgMHg5MzM0MDIyMiwgMHhlOTkzMDYyMCwgMHhjNGU2MTE2OCAqLworcWEyICA9ICA2Ljc5ODQ4MDY0NzA4ODg2ODY0NzY3MjQwODgwODM0ODY4MDkyZS0wMUwsCS8qIDB4M2ZmZTVjMTUsIDB4MGJhODU4ZGMsIDB4Zjc5MDBhZTksIDB4ZmVhMWUwOWEgKi8KK3FhMyAgPSAgNC4wNDcyMDYwOTkyNjQ3MTY3NzU4MTA2NjY4OTMxNjUxNjQ0NWUtMDFMLAkvKiAweDNmZmQ5ZTZmLCAweDE0NWU5YjAwLCAweDZkOGMxNzQ5LCAweGQyOTI4NjIzICovCitxYTQgID0gIDEuNjkxODMyNzM4OTgzNjk5OTYzNjQ2NjEwNzU2NjQzMDIyMjVlLTAxTCwJLyogMHgzZmZjNWE3YywgMHhjMmEzNjNjMSwgMHhkNmMxOTA5NywgMHhlZjliNDA2MyAqLworcWE1ICA9ICA3LjQ0NDc2MTg1OTg4MDY3OTkyMzQyNDc5NzUwNDg2NzY0MjQ4ZS0wMkwsCS8qIDB4M2ZmYjMwZWYsIDB4ZmM3MjU5ZWYsIDB4MWJjYmIwODksIDB4Njg2ZGQ2MmQgKi8KK3FhNiAgPSAgMi4wMjk4MTE3MjcyNTg5MjQwNzIwMDQyMDM4OTYwNDc4ODU3M2UtMDJMLAkvKiAweDNmZjk0YzkwLCAweDc5NzZjYjBlLCAweDIxZTFkMzZiLCAweDBmMDljYTJiICovCitxYTcgID0gIDYuOTQyODE4NjYyNzE2MDc2NjgyNjgyNjk0MDMxMDIyNzcyMzRlLTAzTCwJLyogMHgzZmY3YzcwMSwgMHgyYjE5MzI1MCwgMHhjNWQ0NmVjYywgMHgzNzQ4NDNkOCAqLworcWE4ICA9ICAxLjEyOTUyMjc1NDY5MTcxNTU5NjExNjUxNTk0NzA2ODIwMDM0ZS0wM0wsCS8qIDB4M2ZmNTI4MTgsIDB4ZmQyYTdjMDYsIDB4ZDEzZTM4ZmQsIDB4ZGE0YjM0ZjUgKi8KK3FhOSAgPSAgMy4xMzczNjY4MzI0MTk5MjczNzE5NzIyNjU3ODU5NzcxMDE3OWUtMDRMLAkvKiAweDNmZjM0OGZhLCAweDBjYjQ4ZDE4LCAweDA1MWY4NDliLCAweDEzNWNjZjc0ICovCitxYTEwID0gIDEuMTcwMzc2NzUyMDQwMzMyMjU0NzAxMjExMzQwODc3NzE0MTBlLTA1TCwJLyogMHgzZmVlODhiNiwgMHg5OGY0NzcwNCwgMHhhNWQ4ZjhmMiwgMHhjNjQyMmUxMSAqLworcWExMSA9ICA0LjYxMzEyNTE4MjkzODUzOTkxNDM5MzYyODA2ODgwOTczNTkyZS0wNkwsCS8qIDB4M2ZlZDM1OTQsIDB4ZTMxZGI5NGYsIDB4MzU5MmI2OTMsIDB4ZWQ0Mzg2YjQgKi8KK3FhMTIgPSAtMS4wMjE1ODU3MjAzNzQ1Njg5MzY4NzczNzU1MzY1NzQzMTc3MWUtMDZMOwkvKiAweGJmZWIxMjNhLCAweGQ2MGQ5YjFlLCAweDFmNmZkZWI5LCAweDdkYzg0MTBhICovCisvKgorICogRG9tYWluIFsxLjI1LDIuODU3MTVdLCByYW5nZSB+Wy0yLjkyMmUtMzcsMi45MjJlLTM3XToKKyAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByYSh4KS9zYSh4KXwgPCAyKiotMTIxLjM2CisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorcmEwICA9IC05Ljg2NDk0MjkyNDcwMDY5MDA5NTU1NzA2OTk0NDI2MDE0NDYxZS0wM0wsCS8qIDB4YmZmODQzNDEsIDB4MjM5ZTg3MDksIDB4ZTk0MWIwNmEsIDB4Y2I0YjZlYzUgKi8KK3JhMSAgPSAtMS4xMzU4MDQzNjk5MjU2NTY0MDQ1NzU3OTA0MDExNzU2ODg3MGUrMDBMLAkvKiAweGJmZmYyMmM0LCAweDEzM2Y3YzBkLCAweDcyZDVlMjMxLCAweDJlYjFlZTNmICovCityYTIgID0gLTQuODk3NDQzMzAyOTUyOTE5NTA2NjExODU3MDcwNjY5MjE3NTVlKzAxTCwJLyogMHhjMDA0ODdjYiwgMHhhMzhiNGZjMiwgMHhjMTM2Njk1YiwgMHhjMWRmODA0NyAqLworcmEzICA9IC0xLjEwNzY2MTQ5MzAwMjE1OTM3MTczNzY4MDcyNzE1MzUyMTQwZSswM0wsCS8qIDB4YzAwOTE0ZWEsIDB4NTVlNmJlYjMsIDB4YWJjNTBlMDcsIDB4YjZlNTY2NGQgKi8KK3JhNCAgPSAtMS40OTk5MTAzMTIzMjE3MDkzNDk2NzY0Mjc5NTYwMTk1MjEwMGUrMDRMLAkvKiAweGMwMGNkNGI4LCAweGQzMzI0M2U2LCAweGZmYmY2NTQ1LCAweDNjNTdlZjZlICovCityYTUgID0gLTEuMjk4MDU3NDk3MzgzMTg0NjI4ODI1MjQxODE1NTY5OTY2OTJlKzA1TCwJLyogMHhjMDBmZmIwZCwgMHhiZmVlZDliNiwgMHg1YjJhM2ZmNCwgMHhlMjQ1YmQzYyAqLworcmE2ICA9IC03LjQyODI4NDk3MDQ0OTQwMDY1ODI4ODcxOTc2NjQ0NjQ3ODUwZSswNUwsCS8qIDB4YzAxMjZhYjUsIDB4OGZlN2NhY2EsIDB4NDczMzUyZDksIDB4Y2Q0ZTBjOTAgKi8KK3JhNyAgPSAtMi44NTYzNzI5OTU4MTg5MDczNDI4Nzk5NTE3MTI0MjQyMTEwNmUrMDZMLAkvKiAweGMwMTQ1Y2FkLCAweGE3Zjc2ZmU3LCAweDNlMzU4MDUxLCAweDE3OTlmOTI3ICovCityYTggID0gLTcuNDA2NzQ3OTcxMjk4MjQ5OTkzODM3NDg4NjU1NzEwMjYwODRlKzA2TCwJLyogMHhjMDE1YzQxMiwgMHg2ZmUyOWMwMiwgMHgyOThhZDE1OCwgMHg3ZDI0ZTQ1YyAqLworcmE5ICA9IC0xLjI4NjUzNDIwOTExOTMwOTczOTE0MDc4NzI0MjA0MTUxNzU5ZSswN0wsCS8qIDB4YzAxNjg4OWUsIDB4N2MyZWIwZGMsIDB4OTVkNTg2M2IsIDB4MGFhMzRkYzMgKi8KK3JhMTAgPSAtMS40NzE5ODE2MzU5OTMzMDE3OTU1MjkzMjQ4OTEwOTQ1MjYzOGUrMDdMLAkvKiAweGMwMTZjMTM2LCAweDkwYjg0OTIzLCAweGY5YmNiNDk3LCAweDE5YmJkMGY1ICovCityYTExID0gLTEuMDc4MTI5OTIyNTgzODI4MDAzMTg2NjUyNDgzMTE1MjI2MjRlKzA3TCwJLyogMHhjMDE2NDkwNCwgMHhlNjczYTExMywgMHgzNWQ3ZjA3OSwgMHhlMTM3MDFmMyAqLworcmExMiA9IC00LjgzNTQ1NTY1NjgxNzA4NjQyNjMwNDE5OTA1NTM3NzU2MDc2ZSswNkwsCS8qIDB4YzAxNTI3MjEsIDB4ZmVhMDk0YTgsIDB4ODY5ZWIzOWQsIDB4NDEzZDZmMTMgKi8KK3JhMTMgPSAtMS4yMzk1NjUyMTIwMTY3Mzk2NDgyMjk3NjkxNzM1NjY4NTI4NmUrMDZMLAkvKiAweGMwMTMyZWEwLCAweGQzNjQ2YmFhLCAweDJmZTYyYjBkLCAweGJhZTVjZTg1ICovCityYTE0ID0gLTEuNjIyODkzMzM1NTM2NTI0MTc1OTEyNzUzMzMyNDAzNzE4MTJlKzA1TCwJLyogMHhjMDEwM2NmOCwgMHhhYWIxZTJkNiwgMHg0YzI1ZTAxNCwgMHgyNDhkNzZhYiAqLworcmExNSA9IC04LjgyODkwMzkyNjAxMTc2OTY5NzI5MTY4ODk0Mzg5ODMzMTEwZSswM0wsCS8qIDB4YzAwYzEzZTcsIDB4M2IzZDhmOTQsIDB4NmZiZGE2ZjYsIDB4ZTcwNDlhODIgKi8KK3JhMTYgPSAtMS4yMjU5MTg2NjMzNzI2MTcyMDAyMzY4MTUzNTU2ODMzNDYxOWUrMDJMLAkvKiAweGMwMDVlYTVlLCAweDEyMzU4ODkxLCAweGNmYTcxMmM1LCAweDc3ZjA1MGQ0ICovCitzYTEgID0gIDYuNDQ1MDg5MTg4ODQ3MTA4MjkzNzE4NTI3MjMzNTM3OTQwNDdlKzAxTCwJLyogMHg0MDA1MDFjZCwgMHhiNjlhNmMwZiwgMHg1NzE2ZGUxNCwgMHg0NzE2MWFmNiAqLworc2EyICA9ICAxLjc2MTE4NDc1NDczMTcxNDgxNTIzNzA0ODI0MzI3MzU4NTM0ZSswM0wsCS8qIDB4NDAwOWI4NGIsIDB4ZDMwNTgyOWYsIDB4YzRjNzcxYjAsIDB4YmYxZjdmOWIgKi8KK3NhMyAgPSAgMi42OTQ0ODM0Njk2OTQ4ODM3NDg1NzA4NzY0NjEzMTk1MDE4OGUrMDRMLAkvKiAweDQwMGRhNTAzLCAweDU2YmFjYzA1LCAweDRmZGJhNjhkLCAweDJjY2EyN2U2ICovCitzYTQgID0gIDIuNTY4MjY2MzMzNjk5NDE0NTY3NzgzMjY0OTczODQ1NDM3NjNlKzA1TCwJLyogMHg0MDEwZjU5ZCwgMHg1MTEyNDQyOCwgMHg2OWM0MWRlNiwgMHhiZDBkNTc1MyAqLworc2E1ICA9ICAxLjYwNjQ3NDEzMDkyMjU3MjA2ODQ3NzAwMDU0NjQ1OTA1ODU5ZSswNkwsCS8qIDB4NDAxMzg4MzQsIDB4YTIxODQyNDQsIDB4NTU3YTFiZWQsIDB4NjhjOWQ1NTYgKi8KK3NhNiAgPSAgNi43Njk2MzA3NTE2NTA5OTcxODU3NDc1MzQ0NzEyMjM5Mzc5N2UrMDZMLAkvKiAweDQwMTU5ZDJmLCAweDdiMDFiMGNjLCAweDhiYWM5ZTk1LCAweDVkMzVkNTZlICovCitzYTcgID0gIDEuOTQyOTU2OTA5MDUzNjE4ODQyOTA5ODY5MzI0OTM2NDc3NDFlKzA3TCwJLyogMHg0MDE3Mjg3OCwgMHhjMTE3MmQ2MSwgMHgzMDY4NTAxZSwgMHgyZjNjNzFkYSAqLworc2E4ICA9ICAzLjc5Nzc0NzgxMDE3NzU5MTQ5MDYwODM5MjU1NTQ3MDczNTQxZSswN0wsCS8qIDB4NDAxODIxYmUsIDB4YzMwZDA2ZmUsIDB4NDEwNTYzZDcsIDB4MDMyMTExZmQgKi8KK3NhOSAgPSAgNS4wMDY1OTgzMTg0NjAyOTQ4NDI0ODMwMjIzNjQ1NzcyNzM5N2UrMDdMLAkvKiAweDQwMTg3ZGY5LCAweDFmOTdhMTExLCAweGM1MWQ2YWMyLCAweDRiMzg5NzkzICovCitzYTEwID0gIDQuMzY0ODYyODc2MjA1MDY0ODQyNzYxMzA1MjU5NDE5NzI1NDFlKzA3TCwJLyogMHg0MDE4NGQwMywgMHgzYTYxOGFlMCwgMHgyYTcyMzM1NywgMHhmYTQ1YzYwYSAqLworc2ExMSA9ICAyLjQzNzc5Njc4NzkxMzMzODk0MjU1NTEwNTA4MjUzOTUxOTM0ZSswN0wsCS8qIDB4NDAxNzczZmEsIDB4NmZlMTBlZTIsIDB4YzQ2Nzg1MGQsIDB4YzZiN2ZmMzAgKi8KK3NhMTIgPSAgOC4zMDczMjM2MDM4NDQ0MzIwMjAzOTM3MjM3MjIxMjk2NjU0MmUrMDZMLAkvKiAweDQwMTVmYjA5LCAweGVlNmE1NjMxLCAweGRkOThkZTdlLCAweDhiMDA0NjFhICovCitzYTEzID0gIDEuNjAxNjA4NDY5NDIwNTA1MTU3MzQxOTIzOTc0OTUxMDU2OTNlKzA2TCwJLyogMHg0MDEzODcwNCwgMHg4NzgyYmYxMywgMHg1YjhmYjMxNSwgMHhhODk4YWJlNSAqLworc2ExNCA9ICAxLjU0MjU1NTA1MjQyNTMzMjkxMDE0NTU1MTUzNzU3MDAxODI1ZSswNUwsCS8qIDB4NDAxMDJkNDcsIDB4YzBhYmM5OGUsIDB4ODQzYzk0OTAsIDB4YjQzNTI0NDAgKi8KK3NhMTUgPSAgNS44Nzk0OTIyMDAwMjM3NTU0NzU2MTQ2NzI3NTQ5Mzg4ODgyNGUrMDNMLAkvKiAweDQwMGI2Zjc3LCAweGUwMGQyMWQxLCAweGVjNGQ0MWU4LCAweDJmOGUxNjczICovCitzYTE2ID0gIDQuOTcyNzI5NzYzNDY3OTMxOTM4NjAzODU5ODMzNzIyMzc3MTBlKzAxTDsJLyogMHg0MDA0OGRkMSwgMHg4MTZjMWIzZiwgMHgyNGY1NDBhNiwgMHg0Y2ZlMDNjYyAqLworLyoKKyAqIERvbWFpbiBbMi44NTcxNSw5XSwgcmFuZ2UgflstNy44ODZlLTM3LDcuOTE4ZS0zN106CisgKiB8bG9nKHgqZXJmYyh4KSkgKyB4KioyICsgMC41NjI1IC0gcmIoeCkvc2IoeCl8IDwgMioqLTEyMAorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3JiMCAgPSAtOS44NjQ5NDI5MjQ3MDAwODcwNzE3MTM3MTk5NDQ3OTE2MjM2OWUtM0wsIC8qIDB4YmZmODQzNDEsIDB4MjM5ZTg2ZjQsIDB4MmY1N2U1NjEsIDB4ZjQ0NjkzNjAgKi8KK3JiMSAgPSAtMS41NzA0NzMyNjYyNDExMDcyNzk4NjMyNjUwMzcyOTQ0MjgzMEwsICAgIC8qIDB4YmZmZjkyMGEsIDB4ODkzNWJmNzMsIDB4ODgwM2I4OTQsIDB4NDY1NjQ4MmQgKi8KK3JiMiAgPSAtMS4wMzIyODE5NjM2NDg4NTQ3NDM0MjEzMjI1NTQ0MDMxNzA2NWUyTCwgIC8qIDB4YzAwNTljZTksIDB4YWM0ZWQwZmYsIDB4MmNmZjBmZjcsIDB4NWU3MGQxYWIgKi8KK3JiMyAgPSAtMy43NDAwMDU3MDY1MzQxODIyNzE3OTM1ODcxMDg2NTIyNDM3NmUzTCwgIC8qIDB4YzAwYWQzODAsIDB4MmViZjc4MzUsIDB4ZjZiMDdlZDIsIDB4ODYxMjQyZjcgKi8KK3JiNCAgPSAtOC4zNTQzNTQ3NzczOTA5ODA0NDE5MDg2MDM5MDYzMjgxMzk1NmU0TCwgIC8qIDB4YzAwZjQ2NTcsIDB4OGMzYWU5MzQsIDB4MzY0N2Q3YjMsIDB4ODBlNzZmYjcgKi8KK3JiNSAgPSAtMS4yMTM5ODY3MjA1NTIyMzY0MjExODcxNjY0MDIxNjc0NzE1MmU2TCwgIC8qIDB4YzAxMzI4NjIsIDB4MmI4NzYxYzgsIDB4MjdkMThjMGYsIDB4MTM3Yzk0NjMgKi8KK3JiNiAgPSAtMS4xNzY2OTE3NTg3NzI0ODc5NjEwMTY2NTM0NDg3MzI3Mzk3MGU3TCwgIC8qIDB4YzAxNjY3MTksIDB4MGIyY2VhNDYsIDB4ODFmMTQxNzQsIDB4MTE2MDJlYTUgKi8KK3JiNyAgPSAtNy42NjEwODAwNjA4Njk5ODI1MzYwNjc3MzA2NDI2NDU5OTYxNWU3TCwgIC8qIDB4YzAxOTI0M2YsIDB4M2MyNmY0ZjAsIDB4MWNjMDUyNDEsIDB4M2I5NTM3MjggKi8KK3JiOCAgPSAtMy4zMjU0NzExNzU1ODE0MTg0NTk2ODcwNDcyNTM1MzEzMDgwNGU4TCwgIC8qIDB4YzAxYjNkMjQsIDB4NDJkOGVlMjYsIDB4MjRlZjZmM2IsIDB4NjA0YThjNjUgKi8KK3JiOSAgPSAtOS40MTU2MTI1MjQyNjM1MDY5NjgwMjE2NzcxMTIyMTczOTc0NmU4TCwgIC8qIDB4YzAxY2MwZjgsIDB4YWQyMzY5MmEsIDB4OGRkYjIzMTAsIDB4ZTk5MzcxNDUgKi8KK3JiMTAgPSAtMS42NzE1NzExMDgwNTM5MDk0NDU0OTQyNzMyOTYyNjI4MTA2M2U5TCwgIC8qIDB4YzAxZDhlODgsIDB4OWE5MDM3MzQsIDB4MDlhNTVmYTMsIDB4ZDIwNWM5MDMgKi8KK3JiMTEgPSAtMS43NDMzOTYzMTAwNDQxMDg0MTMzNzY0NTkzMTQyMTQyNzM3M2U5TCwgIC8qIDB4YzAxZDlmYTgsIDB4Nzc1ODJkMmEsIDB4YzE4M2I4YWIsIDB4N2UwMGNiMDUgKi8KK3JiMTIgPSAtOS41NzY1NTIzMzU5NjkzNDkxNTcyNzU3MzE0MTM1NzQ3MTcwM2U4TCwgIC8qIDB4YzAxY2M4YTUsIDB4NDYwY2M2ODUsIDB4ZDAyNzFmYTAsIDB4NmE3MGUzZGEgKi8KK3JiMTMgPSAtMi4yNjMyMDA2MjczMTMzOTM1MzAzNTI1NDcwNDA4MjQ5NTA2NmU4TCwgIC8qIDB4YzAxYWFmYWIsIDB4ZDdkNzY3MjEsIDB4Yzk3MjBlMTEsIDB4NmE4YmQ0ODkgKi8KK3JiMTQgPSAtMS40Mjc3NzMwMjk5NjI2MzI1NjY4NjAwMjk3Mzg1MTgzNzAzOWU3TCwgIC8qIDB4YzAxNmIzYjgsIDB4YzQ5OTY4OWYsIDB4MmI4OGQ5NjUsIDB4YzMyNDE0ZjkgKi8KK3NiMSAgPSAgMS4wODUxMjg2OTcwNTU5NDU0MDIxMTAzMzczMzk3NjM0ODUwNmUyTCwgIC8qIDB4NDAwNWIyMGQsIDB4MmRiNzUyOGQsIDB4MDBkMjBkY2IsIDB4ODU4ZjYxOTEgKi8KK3NiMiAgPSAgNS4wMjc1NzcxMzc2MTM5MDQ2MDUzNDQ5NDUzMDUzNzU3MjgzNGUzTCwgIC8qIDB4NDAwYjNhMzksIDB4M2JmNGE2OTAsIDB4MzAyNWQyOGQsIDB4ZmQ0MGE4OTEgKi8KK3NiMyAgPSAgMS4zMTAxOTEwNzIwNTQxMjg3MDA1OTMzMTY0NzA3ODMyODQzMGU1TCwgIC8qIDB4NDAwZmZmY2IsIDB4MWI3MWQwNWUsIDB4M2IyODM2MWQsIDB4MmEzYzM2OTAgKi8KK3NiNCAgPSAgMi4xMzAyMTU1NTE1MjI5Njg0NjE2NjczNjc1NzQ1NTAxODAzMGU2TCwgIC8qIDB4NDAxNDA0MDksIDB4M2M2OTg0ZGYsIDB4YzQ0OTFkN2MsIDB4YjA0YWEwOGQgKi8KK3NiNSAgPSAgMi4yNjY0OTEwNTI4MTgyMDg2MTk1Mzg2ODU2ODYxOTc2ODI4NmU3TCwgIC8qIDB4NDAxNzU5ZDYsIDB4Y2U4NzM2ZjAsIDB4ZjI4YWQwMzcsIDB4MmE5MDFlMGMgKi8KK3NiNiAgPSAgMS42MTA3MTkzOTQ5MDg3NTkyMTgxMjMxODY4NDE0MzA3NjA4MWU4TCwgIC8qIDB4NDAxYTMzMzgsIDB4Njg2ZmI1NDEsIDB4NmJkMjdkMDYsIDB4NGY5NWM5YWMgKi8KK3NiNyAgPSAgNy42Njg5NTY3Mzg0NDMwMTg1MjY3NjA1Njc1MDQ5Nzk5MTk2NmU4TCwgIC8qIDB4NDAxYzZkYWYsIDB4MzFjZWMxMjEsIDB4NTQ2OTkxMjYsIDB4NGJkOWJmOWUgKi8KK3NiOCAgPSAgMi40MTg4NDQ1MDQzNjEwMTkzNjQzNjAyMzA1ODE5NjA0MjUyNmU5TCwgIC8qIDB4NDAxZTIwNTksIDB4NDZiMGI4ZDcsIDB4ODdiNjRjYmYsIDB4NzhiYzI5NmQgKi8KK3NiOSAgPSAgNC45MjQwMzA1NTg4NDA3MTY5NTA5MzMwNTI5MTUzNTEwNzY2NmU5TCwgIC8qIDB4NDAxZjI1N2UsIDB4YmU1ZWQ3MzksIDB4MzllMTczNDYsIDB4Y2FkZDJlNTUgKi8KK3NiMTAgPSAgNi4xODYyNzc4NjM2NTU4NzQ4NjQ1OTYzMzYxNTU3Mzc4NjQxNmU5TCwgIC8qIDB4NDAxZjcwYmIsIDB4MWJlN2E3ZTcsIDB4NmE0NWI1YWUsIDB4NjA3YzcwZjAgKi8KK3NiMTEgPSAgNC40NTg5ODAxMzQyNjUwMTM3ODA5NzQzMDIyNjMyNDc0MzE5OWU5TCwgIC8qIDB4NDAxZjA5YzYsIDB4YTMyNjQzZDcsIDB4ZjE3MjQ2MjAsIDB4OWVhNDZjMzIgKi8KK3NiMTIgPSAgMS42MzAwNjExNTc2MzMyOTg0ODExNzE2MDM0NDg1NDIyNDk3NWU5TCwgIC8qIDB4NDAxZDg0YTMsIDB4MDk5Njg4N2YsIDB4NjVhNGY0M2IsIDB4OTc4YzFkNzQgKi8KK3NiMTMgPSAgMi4zOTIxNjcxNzAxMjQyMTY5NzQ0NjMwNDAxNTg0NzU2NzcyMWU4TCwgIC8qIDB4NDAxYWM4NDUsIDB4MDlhMDY1YzIsIDB4MzAwOTVkYTcsIDB4OWQ3MmQ2YWUgKi8KK3NiMTQgPSAgNy44NDgzNzMyOTAwOTI3ODY5NDkzNzI1MDM1ODgxMDIyNTYwOWU2TDsgIC8qIDB4NDAxNWRmMDYsIDB4ZDUyOTBlMTUsIDB4NjMwMzFmYWMsIDB4NGQ5Yzg5NGMgKi8KKy8qCisgKiBEb21haW4gWzksMTA4XSwgcmFuZ2UgflstNS4zMjRlLTM4LDUuMzQwZS0zOF06CisgKiB8bG9nKHgqZXJmYyh4KSkgKyB4KioyICsgMC41NjI1IC0gcih4KS9zKHgpfCA8IDIqKi0xMjQKKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCityYzAgID0gLTkuODY0OTQyOTI0NzAwMDg3MDcxNzEzNjc1Njc2NTI5MzU2NzNlLTNMLCAvKiAweGJmZjg0MzQxLCAweDIzOWU4NmY0LCAweDJmNTdlNTViLCAweDFhYTEwZmQzICovCityYzEgID0gLTEuMjYyMjk0NDc3NDczMTUwOTY0MDY1MTg4NDY0MTE1NjIyNjZMLCAgICAvKiAweGJmZmY0MzI1LCAweGJiMWFhYjI4LCAweGRhMzk1Y2Q5LCAweGZiODYxYzE1ICovCityYzIgID0gLTYuMTM3NDI2MzQ0Mzg5MjI1OTE3ODA3NDI2Mzc3Mjg2NjYxNjJlMUwsICAvKiAweGMwMDRlYWZlLCAweDdkZDUxY2Q4LCAweDNjN2M1OTI4LCAweDc1MWU1MGNmICovCityYzMgID0gLTEuNTA0NTU4MzU0Nzg5MDgyODA0MDI5MTI4NTQzMzg0MjE1MTdlM0wsICAvKiAweGMwMDk3ODIzLCAweGJjMTViOWFiLCAweDNkNjA3NDVjLCAweDUyM2U4MGE1ICovCityYzQgID0gLTIuMDQ0MTU2MzE4NjU4NjE1NDk5MjAxODQwMzk5MDI5NDU2ODVlNEwsICAvKiAweGMwMGQzZjY2LCAweDQwYjNmYzA0LCAweDUzODhmMmVjLCAweGIwMDllMWYwICovCityYzUgID0gLTEuNTc2MjU2NjI5ODE3MTQ1ODI3NTM0OTA2MTA1NjAwMzc2MzhlNUwsICAvKiAweGMwMTAzM2RjLCAweGQ0ZGM5NWI2LCAweGZkNGRhOTNiLCAweGYzNTViNGE5ICovCityYzYgID0gLTYuNzM0NzM0NTE2MTY3NTI1Mjg0MDI5MTc1MzgwMzMyODM3OTRlNUwsICAvKiAweGMwMTI0OGQ4LCAweDJlNzNhNGY5LCAweGNkZWQ0OWM1LCAweGZhM2JmZWI3ICovCityYzcgID0gLTEuNDc0MzMxNjU0MjEzODc0ODMxNjcxODY2ODM3NjQzNjQ4NTdlNkwsICAvKiAweGMwMTM2N2YxLCAweGJhNzdhOGY3LCAweGNmZGQwZGJiLCAweDI1ZDU1NGIzICovCityYzggID0gLTEuMzg4MTE5ODE4MDc4Njg4Mjg1NjM3OTQ5Mjk5OTc3NDQxMzllNkwsICAvKiAweGMwMTM1MmU1LCAweDdkMTZkOWFkLCAweGJiZGNiZjM4LCAweDM4ZmJjNWVhICovCityYzkgID0gLTMuNTk2NTk3MDA1MzA4MzE4MjU2NDA3NjY0Nzk2OTgxNTUwNjBlNUwsICAvKiAweGMwMTE1ZjNhLCAweGVjZDU3ZjQ1LCAweDIxZjhhZDZjLCAweDkxMGE1OTU4ICovCitzYzEgID0gIDcuNzI3MzA3NTMwMjI5MDgyOTg2Mzc1MDg5OTgwNzI2MzU2OTZlMUwsICAvKiAweDQwMDUzNTE3LCAweGExMGQ1MmJjLCAweGRhYmI1NWI2LCAweGJkMDMyOGNkICovCitzYzIgID0gIDIuMzY4MjU3NTczNDE2OTQwNTA1MDAzMzMyNjE3NjkwODIxODJlM0wsICAvKiAweDQwMGEyODA4LCAweDNlMGE5YjQyLCAweDgyOTc3ODQyLCAweDljNWRlMjllICovCitzYzMgID0gIDMuNzIyMTA1NDAxNzMwMzQ3MzUzNTI4ODg4NDcxMzQwNzMwOTllNEwsICAvKiAweDQwMGUyMmNhLCAweDFiYTgyN2VmLCAweGFjODM5MGQ3LCAweDFmYzM5YTQxICovCitzYzQgID0gIDMuMjQxMzYwMzI2NDY0MTgzMzY3MTI0NjEwMzM1OTEzOTM0MTJlNUwsICAvKiAweDQwMTEzYzhhLCAweDAyMTZlMTAwLCAweGM1OWQxZTQ0LCAweGYwZTY4ZDlkICovCitzYzUgID0gIDEuNTc4MzYxMzU4NTExMzQzOTM4MDI1MDU4MjMzNzAwMDkxNzVlNkwsICAvKiAweDQwMTM4MTU3LCAweDk1YmM3NjY0LCAweDE3NTc1OTYxLCAweGRiZTU4ZWViICovCitzYzYgID0gIDQuMTI4ODE5ODEzOTIwNjM3MzgwMjY2NzkwODk3MTQxODIzNTVlNkwsICAvKiAweDQwMTRmODAxLCAweDllODJlOGQyLCAweGI4YjNhNzBlLCAweGZkODQxODVkICovCitzYzcgID0gIDUuMjQ0Mzg0MjcyODkyMTM0ODg0MTA1OTYzOTUzNjE1NDQxNDJlNkwsICAvKiAweDQwMTU0MDE3LCAweDgxMTc3MTA5LCAweDJhYTZjM2IwLCAweDFmMTA2NjI1ICovCitzYzggID0gIDIuNTk5MDk1NDQ1NjM2MTYxMjE3MzU5NjM0Mjk3MTAzODIxNDllNkwsICAvKiAweDQwMTQzZDQ1LCAweGJiOTBhOWIxLCAweDEyYmY5MzkwLCAweGE4MjdhNzAwICovCitzYzkgID0gIDIuODA5MzA2NjUxNjkyODI1MDE2Mzk2NTE5OTUwODIzMzU2OTNlNUw7ICAvKiAweDQwMTExMjU4LCAweGFhOTIyMjJlLCAweGE5N2UzMjE2LCAweGEyMzdmYTZjICovCisKK2xvbmcgZG91YmxlCitlcmZsKGxvbmcgZG91YmxlIHgpCit7CisJbG9uZyBkb3VibGUgYXgsUixTLFAsUSxzLHkseixyOworCXVpbnQ2NF90IGx4LCBsbHg7CisJaW50MzJfdCBpOworCXVpbnQxNl90IGh4OworCisJRVhUUkFDVF9MREJMMTI4X1dPUkRTKGh4LCBseCwgbGx4LCB4KTsKKworCWlmKChoeCAmIDB4N2ZmZikgPT0gMHg3ZmZmKSB7CS8qIGVyZmwobmFuKT1uYW4gKi8KKwkJaSA9IChoeD4+MTUpPDwxOworCQlyZXR1cm4gKDEtaSkrb25lL3g7CS8qIGVyZmwoKy1pbmYpPSstMSAqLworCX0KKworCWF4ID0gZmFic2woeCk7CisJaWYoYXggPCAwLjg0Mzc1KSB7CisJICAgIGlmKGF4IDwgMHgxcC00MEwpIHsKKwkgICAgICAgIGlmKGF4IDwgMHgxcC0xNjM3M0wpCQorCQkgICAgcmV0dXJuICg4KngrZWZ4OCp4KS84OwkvKiBhdm9pZCBzcHVyaW91cyB1bmRlcmZsb3cgKi8KKwkJcmV0dXJuIHggKyBlZngqeDsKKwkgICAgfQorCSAgICB6ID0geCp4OworCSAgICByID0gcHAwK3oqKHBwMSt6KihwcDIreioocHAzK3oqKHBwNCt6KihwcDUreioocHA2K3oqKHBwNysKKwkJeioocHA4K3oqcHA5KSkpKSkpKSk7CisJICAgIHMgPSBvbmUreioocXExK3oqKHFxMit6KihxcTMreioocXE0K3oqKHFxNSt6KihxcTYreioocXE3KworCQl6KihxcTgreipxcTkpKSkpKSkpKTsKKwkgICAgeSA9IHIvczsKKwkgICAgcmV0dXJuIHggKyB4Knk7CisJfQorCWlmKGF4IDwgMS4yNSkgeworCSAgICBzID0gYXgtb25lOworCSAgICBQID0gcGEwK3MqKHBhMStzKihwYTIrcyoocGEzK3MqKHBhNCtzKihwYTUrcyoocGE2K3MqKHBhNysKKwkJcyoocGE4K3MqKHBhOStzKihwYTEwK3MqcGExMSkpKSkpKSkpKSk7CisJICAgIFEgPSBvbmUrcyoocWExK3MqKHFhMitzKihxYTMrcyoocWE0K3MqKHFhNStzKihxYTYrcyoocWE3KworCQlzKihxYTgrcyoocWE5K3MqKHFhMTArcyoocWExMStzKnFhMTIpKSkpKSkpKSkpKTsKKwkgICAgaWYoeD49MCkgcmV0dXJuIChlcnggKyBQL1EpOyBlbHNlIHJldHVybiAoLWVyeCAtIFAvUSk7CisJfQorCWlmIChheCA+PSA5KSB7CQkJLyogaW5mPnx4fD49IDkgKi8KKwkgICAgaWYoeD49MCkgcmV0dXJuIChvbmUtdGlueSk7IGVsc2UgcmV0dXJuICh0aW55LW9uZSk7CisJfQorCXMgPSBvbmUvKGF4KmF4KTsKKwlpZihheCA8IDIuODU3MTUpIHsJLyogfHh8IDwgMi44NTcxNSAqLworCSAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyoocmE1K3MqKHJhNitzKihyYTcrCisJCXMqKHJhOCtzKihyYTkrcyoocmExMCtzKihyYTExK3MqKHJhMTIrcyoocmExMytzKihyYTE0KworCQlzKihyYTE1K3MqcmExNikpKSkpKSkpKSkpKSkpKTsKKwkgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcyooc2E0K3MqKHNhNStzKihzYTYrcyooc2E3KworCQlzKihzYTgrcyooc2E5K3MqKHNhMTArcyooc2ExMStzKihzYTEyK3MqKHNhMTMrcyooc2ExNCsKKwkJcyooc2ExNStzKnNhMTYpKSkpKSkpKSkpKSkpKSk7CisJfSBlbHNlIHsJLyogfHh8ID49IDIuODU3MTUgKi8KKwkgICAgUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcyoocmI0K3MqKHJiNStzKihyYjYrcyoocmI3KworCQlzKihyYjgrcyoocmI5K3MqKHJiMTArcyoocmIxMStzKihyYjEyK3MqKHJiMTMrCisJCXMqcmIxNCkpKSkpKSkpKSkpKSk7CisJICAgIFM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3MqKHNiNCtzKihzYjUrcyooc2I2K3MqKHNiNysKKwkJcyooc2I4K3MqKHNiOStzKihzYjEwK3MqKHNiMTErcyooc2IxMitzKihzYjEzKworCQlzKnNiMTQpKSkpKSkpKSkpKSkpOworCX0KKwl6ID0gKGZsb2F0KWF4OworCXIgPSBleHBsKC16KnotMC41NjI1KSpleHBsKCh6LWF4KSooeitheCkrUi9TKTsKKwlpZih4Pj0wKSByZXR1cm4gKG9uZS1yL2F4KTsgZWxzZSByZXR1cm4gKHIvYXgtb25lKTsKK30KKworbG9uZyBkb3VibGUKK2VyZmNsKGxvbmcgZG91YmxlIHgpCit7CisJbG9uZyBkb3VibGUgYXgsUixTLFAsUSxzLHkseixyOworCXVpbnQ2NF90IGx4LCBsbHg7CisJdWludDE2X3QgaHg7CisKKwlFWFRSQUNUX0xEQkwxMjhfV09SRFMoaHgsIGx4LCBsbHgsIHgpOworCisJaWYoKGh4ICYgMHg3ZmZmKSA9PSAweDdmZmYpIHsJLyogZXJmY2wobmFuKT1uYW4gKi8KKwkJCQkJLyogZXJmY2woKy1pbmYpPTAsMiAqLworCSAgICByZXR1cm4gKChoeD4+MTUpPDwxKStvbmUveDsKKwl9CisKKwlheCA9IGZhYnNsKHgpOworCWlmKGF4IDwgMC44NDM3NUwpIHsKKwkgICAgaWYoYXggPCAweDFwLTM0TCkKKwkJcmV0dXJuIG9uZS14OworCSAgICB6ID0geCp4OworCSAgICByID0gcHAwK3oqKHBwMSt6KihwcDIreioocHAzK3oqKHBwNCt6KihwcDUreioocHA2K3oqKHBwNysKKwkJeioocHA4K3oqcHA5KSkpKSkpKSk7CisJICAgIHMgPSBvbmUreioocXExK3oqKHFxMit6KihxcTMreioocXE0K3oqKHFxNSt6KihxcTYreioocXE3KworCQl6KihxcTgreipxcTkpKSkpKSkpKTsKKwkgICAgeSA9IHIvczsKKwkgICAgaWYoYXggPCAwLjI1TCkgeyAgCS8qIHg8MS80ICovCisJCXJldHVybiBvbmUtKHgreCp5KTsKKwkgICAgfSBlbHNlIHsKKwkJciA9IHgqeTsKKwkJciArPSAoeC1oYWxmKTsKKwkgICAgICAgcmV0dXJuIGhhbGYgLSByOworCSAgICB9CisJfQorCWlmKGF4IDwgMS4yNUwpIHsKKwkgICAgcyA9IGF4LW9uZTsKKwkgICAgUCA9IHBhMCtzKihwYTErcyoocGEyK3MqKHBhMytzKihwYTQrcyoocGE1K3MqKHBhNitzKihwYTcrCisJCSAgICBzKihwYTgrcyoocGE5K3MqKHBhMTArcypwYTExKSkpKSkpKSkpKTsKKwkgICAgUSA9IG9uZStzKihxYTErcyoocWEyK3MqKHFhMytzKihxYTQrcyoocWE1K3MqKHFhNitzKihxYTcrCisJCSAgICBzKihxYTgrcyoocWE5K3MqKHFhMTArcyoocWExMStzKnFhMTIpKSkpKSkpKSkpKTsKKwkgICAgaWYoeD49MCkgeworCSAgICAgICAgeiAgPSBvbmUtZXJ4OyByZXR1cm4geiAtIFAvUTsKKwkgICAgfSBlbHNlIHsKKwkJeiA9IGVyeCtQL1E7IHJldHVybiBvbmUrejsKKwkgICAgfQorCX0KKworCWlmKGF4IDwgMTA4KSB7CQkJLyogfHh8IDwgMTA4ICovCisgCSAgICBzID0gb25lLyhheCpheCk7CisJICAgIGlmKGF4IDwgMi44NTcxNSkgewkJLyogfHh8IDwgMi44NTcxNSAqLworCSAgICAgICAgUj1yYTArcyoocmExK3MqKHJhMitzKihyYTMrcyoocmE0K3MqKHJhNStzKihyYTYrcyoocmE3KworCQkgICAgcyoocmE4K3MqKHJhOStzKihyYTEwK3MqKHJhMTErcyoocmExMitzKihyYTEzK3MqKHJhMTQrCisJCSAgICBzKihyYTE1K3MqcmExNikpKSkpKSkpKSkpKSkpKTsKKwkgICAgICAgIFM9b25lK3MqKHNhMStzKihzYTIrcyooc2EzK3MqKHNhNCtzKihzYTUrcyooc2E2K3MqKHNhNysKKwkJICAgIHMqKHNhOCtzKihzYTkrcyooc2ExMCtzKihzYTExK3MqKHNhMTIrcyooc2ExMytzKihzYTE0KworCQkgICAgcyooc2ExNStzKnNhMTYpKSkpKSkpKSkpKSkpKSk7CisJICAgIH0gZWxzZSBpZihheCA8IDkpIHsKKwkJUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcyoocmI0K3MqKHJiNStzKihyYjYrcyoocmI3KworCQkgICAgcyoocmI4K3MqKHJiOStzKihyYjEwK3MqKHJiMTErcyoocmIxMitzKihyYjEzKworCQkgICAgcypyYjE0KSkpKSkpKSkpKSkpKTsKKwkJUz1vbmUrcyooc2IxK3MqKHNiMitzKihzYjMrcyooc2I0K3MqKHNiNStzKihzYjYrcyooc2I3KworCQkgICAgcyooc2I4K3MqKHNiOStzKihzYjEwK3MqKHNiMTErcyooc2IxMitzKihzYjEzKworCQkgICAgcypzYjE0KSkpKSkpKSkpKSkpKTsKKwkgICAgfSBlbHNlIHsKKwkJaWYoeCA8IC05KSByZXR1cm4gdHdvLXRpbnk7CS8qIHggPCAtOSAqLworCQlSPXJjMCtzKihyYzErcyoocmMyK3MqKHJjMytzKihyYzQrcyoocmM1K3MqKHJjNitzKihyYzcrCisJCSAgICBzKihyYzgrcypyYzkpKSkpKSkpKTsKKwkJUz1vbmUrcyooc2MxK3MqKHNjMitzKihzYzMrcyooc2M0K3MqKHNjNStzKihzYzYrcyooc2M3KworCQkgICAgcyooc2M4K3Mqc2M5KSkpKSkpKSk7CisJICAgIH0KKwkgICAgeiA9IChmbG9hdClheDsKKwkgICAgciA9IGV4cGwoLXoqei0wLjU2MjUpKmV4cGwoKHotYXgpKih6K2F4KStSL1MpOworCSAgICBpZih4PjApIHJldHVybiByL2F4OyBlbHNlIHJldHVybiB0d28tci9heDsKKwl9IGVsc2UgeworCSAgICBpZih4PjApIHJldHVybiB0aW55KnRpbnk7IGVsc2UgcmV0dXJuIHR3by10aW55OworCX0KK30KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cDJsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19leHAybC5jCmluZGV4IDVlZDUxNGMuLjVhZmEzN2UgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cDJsLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwMmwuYwpAQCAtMzY5LDcgKzM2OSw3IEBACiAJCQkgICAgfHwgdS54Yml0cy5tYW5sICE9IDAKIAkJCSAgICB8fCAoaHggJiAweDgwMDApID09IDApCiAJCQkJcmV0dXJuICh4ICsgeCk7CS8qIHggaXMgTmFOIG9yICtJbmYgKi8KLQkJCWVsc2UKKwkJCWVsc2UgCiAJCQkJcmV0dXJuICgwLjApOwkvKiB4IGlzIC1JbmYgKi8KIAkJfQogCQlpZiAoeCA+PSAxNjM4NCkKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cGwuYwppbmRleCAxNzZjOTMyLi5hNmE5Njc2IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19leHBsLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwbC5jCkBAIC0zOCwxNiArMzgsMTUgQEAKICNpbmNsdWRlICJmcG1hdGguaCIKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCisjaW5jbHVkZSAia19leHBsLmgiCiAKLSNkZWZpbmUJSU5URVJWQUxTCTEyOAotI2RlZmluZQlMT0cyX0lOVEVSVkFMUwk3Ci0jZGVmaW5lCUJJQVMJKExEQkxfTUFYX0VYUCAtIDEpCisvKiBYWFggUHJldmVudCBjb21waWxlcnMgZnJvbSBlcnJvbmVvdXNseSBjb25zdGFudCBmb2xkaW5nIHRoZXNlOiAqLworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGxvbmcgZG91YmxlCitodWdlID0gMHgxcDEwMDAwTCwKK3RpbnkgPSAweDFwLTEwMDAwTDsKIAogc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCi1odWdlID0gMHgxcDEwMDAwTCwKIHR3b20xMDAwMCA9IDB4MXAtMTAwMDBMOwotLyogWFhYIFByZXZlbnQgZ2NjIGZyb20gZXJyb25lb3VzbHkgY29uc3RhbnQgZm9sZGluZyB0aGlzOiAqLwotc3RhdGljIHZvbGF0aWxlIGNvbnN0IGxvbmcgZG91YmxlIHRpbnkgPSAweDFwLTEwMDAwTDsKIAogc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCiAvKiBsb2coMioqMTYzODQgLSAwLjUpIHJvdW5kZWQgdG93YXJkcyB6ZXJvOiAqLwpAQCAtNTYsMTg0ICs1NSwxNiBAQAogLyogbG9nKDIqKigtMTYzODEtNjQtMSkpIHJvdW5kZWQgdG93YXJkcyB6ZXJvOiAqLwogdV90aHJlc2hvbGQgPSAtMTE0MzMuNDYyNzQzMzM2Mjk3ODc4ODM3MjQzODQzNDUyNjIxNTAzTDsKIAotc3RhdGljIGNvbnN0IGRvdWJsZQotLyoKLSAqIGxuMi9JTlRFUlZBTFMgPSBMMStMMiAoaGkrbG8gZGVjb21wb3NpdGlvbiBmb3IgbXVsdGlwbGljYXRpb24pLiAgTDEgbXVzdAotICogaGF2ZSBhdCBsZWFzdCAyMiAoPSBsb2cyKHxMREJMX01JTl9FWFAtZXh0cmFzfCkgKyBsb2cyKElOVEVSVkFMUykpIGxvd2VzdAotICogYml0cyB6ZXJvIHNvIHRoYXQgbXVsdGlwbGljYXRpb24gb2YgaXQgYnkgbiBpcyBleGFjdC4KLSAqLwotSU5WX0wgPSAxLjg0NjY0OTY1MjMzNzg3MzFlKzIsCQkvKiAgMHgxNzE1NDc2NTJiODJmZS4wcC00NSAqLwotTDIgPSAtMS4wMjUzNjcwNjM4ODk0NzMxZS0yOTsJCS8qIC0weDEuOWZmMDM0MjU0MmZjM3AtOTcgKi8KLXN0YXRpYyBjb25zdCBsb25nIGRvdWJsZQotLyogMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjgwMDAwMDBwLTggKi8KLUwxID0gIDUuNDE1MjEyMzQ4MTI0NTcyNzI5ODIyMTI1OTU5MTQ1Njc1MDhlLTNMOwotCi1zdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKLS8qCi0gKiBEb21haW4gWy0wLjAwMjcwOCwgMC4wMDI3MDhdLCByYW5nZSB+Wy0yLjQwMjFlLTM4LCAyLjQyMzRlLTM4XToKLSAqIHxleHAoeCkgLSBwKHgpfCA8IDIqKi0xMjQuOQotICogKDAuMDAyNzA4IGlzIGxuMi8oMipJTlRFUlZBTFMpIHJvdW5kZWQgdXAgYSBsaXR0bGUpLgotICovCi1BMiAgPSAgMC41LAotQTMgID0gIDEuNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NTEwODU1MDBlLTFMLAotQTQgID0gIDQuMTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY0MjU4ODUzMjBlLTJMLAotQTUgID0gIDguMzMzMzMzMzMzMzMzMzMzMzMzMzQ1MjI4NzcxNjAxNzU4NDJlLTNMLAotQTYgID0gIDEuMzg4ODg4ODg4ODg4ODg4ODg4ODk5NzExMzk3NTE1OTY4MzZlLTNMOwotCi1zdGF0aWMgY29uc3QgZG91YmxlCi1BNyAgPSAgMS45ODQxMjY5ODQxMjY5NDcxZS00LAotQTggID0gIDIuNDgwMTU4NzMwMTU4NTI4NGUtNSwKLUE5ICA9ICAyLjc1NTczMjQyNzc0MTEyMzRlLTYsCi1BMTAgPSAgMi43NTU3MzMzNzIyMzc1MDcyZS03OwotCi1zdGF0aWMgY29uc3Qgc3RydWN0IHsKLQkvKgotCSAqIGhpIG11c3QgYmUgcm91bmRlZCB0byBhdCBtb3N0IDEwNiBiaXRzIHNvIHRoYXQgbXVsdGlwbGljYXRpb24KLQkgKiBieSByMSBpbiBleHBtMWwoKSBpcyBleGFjdCwgYnV0IGl0IGlzIHJvdW5kZWQgdG8gODggYml0cyBkdWUgdG8KLQkgKiBoaXN0b3JpY2FsIGFjY2lkZW50cy4KLQkgKi8KLQlsb25nIGRvdWJsZQloaTsKLQlsb25nIGRvdWJsZQlsbzsKLX0gdGJsW0lOVEVSVkFMU10gPSB7Ci0JMHgxcDBMLCAweDBwMEwsCi0JMHgxLjAxNjNkYTlmYjMzMzU2ZDg0YTY2YWVwMEwsIDB4My4zNmRjZGZhNDAwM2VjMDRjMzYwYmUyNDA0MDc4cC05MkwsCi0JMHgxLjAyYzlhM2U3NzgwNjBlZTZmN2NhY2FwMEwsIDB4NC5mN2EyOWJkZTkzZDcwYTJjYWJjNWNiODliYTEwcC05MkwsCi0JMHgxLjA0MzE1ZTg2ZTdmODRiZDczOGY5YTJwMEwsIDB4ZC5hNDdlNmVkMDQwYmI0YmZjMDVhZjY0NTVlOWI4cC05NkwsCi0JMHgxLjA1OWIwZDMxNTg1NzQzYWU3YzU0OGVwMEwsIDB4Yi42OGNhNDE3ZmU1M2UzNDk1ZjdkZjRiYWY4NGEwcC05MkwsCi0JMHgxLjA3MDZiMjlkZGY2ZGRjNmRjNDAzYThwMEwsIDB4MS5kODdiMjdlZDA3Y2I4YjA5MmFjNzVlMzExNzUzcC04OEwsCi0JMHgxLjA4NzQ1MTg3NTliYzgwOGMzNWYyNWNwMEwsIDB4MS45NDI3ZmEyYjA0MWIyZDY4MjlkODk5M2EwZDAxcC04OEwsCi0JMHgxLjA5ZTNlY2FjNmYzODM0NTIxZTA2MGNwMEwsIDB4NS44NGQ2Yjc0YmEyZTAyM2RhNzMwZTdmY2NiNzU4cC05MkwsCi0JMHgxLjBiNTU4NmNmOTg5MGY2Mjk4YjkyYjZwMEwsIDB4MS4xODQyYTk4MzY0MjkxNDA4YjNjZWIwYTJhMmJicC04OEwsCi0JMHgxLjBjYzkyMmI3MjQ3Zjc0MDdiNzA1YjhwMEwsIDB4OS4zZGM1ZThhYWM1NjRlNmZlMmVmMWQ0MzFmZDk4cC05MkwsCi0JMHgxLjBlM2VjMzJkM2QxYTIwMjA3NDJlNGVwMEwsIDB4MS44YWY2YTU1MmFjNGIzNThiMTEyOWU5Zjk2NmE0cC04OEwsCi0JMHgxLjBmYjY2YWZmZWQzMWFmMjMyMDkxZGNwMEwsIDB4MS44YTE0MjY1MTRlMGI2MjdiZGE2OTRhNDAwYTI3cC04OEwsCi0JMHgxLjExMzAxZDAxMjViNTBhNGViYmYxYWVwMEwsIDB4ZC45MzE4Y2VhYzVjYzQ3YWIxNjZlZTU3NDI3MTc4cC05MkwsCi0JMHgxLjEyYWJkYzA2YzMxY2JmYjkyYmFkMzJwMEwsIDB4NC5kNjhlMmY3MjcwYmRmN2NlZGY5NGViMWNiODE4cC05MkwsCi0JMHgxLjE0MjlhYWVhOTJkZGZiMzQxMDE5NDJwMEwsIDB4MS5iMjU4NmQwMTg0NGIzODliZWE3YWVkZDIyMWQ0cC04OEwsCi0JMHgxLjE1YTk4YzhhNThlNTEyNDgwZDU3M2NwMEwsIDB4MS5kNTYxM2JmOTJhMmI2MThlZTMxYjM3NmMyNjg5cC04OEwsCi0JMHgxLjE3MmI4M2M3ZDUxN2FkY2RmN2M4YzRwMEwsIDB4MS4wZWIxNGE3OTIwMzU1MDlmZjdkNzU4NjkzZjI0cC04OEwsCi0JMHgxLjE4YWY5Mzg4YzhkZTliYmJmNzBiOWFwMEwsIDB4My5jMjUwNWM5N2MwMTAyZTVmMTIxMTk0MWQyODQwcC05MkwsCi0JMHgxLjFhMzViZWI2ZmNiNzUzY2I2OThmNjhwMEwsIDB4MS4yZDFjODM1YTZjMzA3MjRkNWNmYWUzMWI4NGU1cC04OEwsCi0JMHgxLjFiYmUwODQwNDVjZDM5YWIxZTcyYjRwMEwsIDB4NC4yN2UzNWY5YWNiNTdlNDczOTE1NTE5YTFiNDQ4cC05MkwsCi0JMHgxLjFkNDg3MzE2OGI5YWE3ODA1YjgwMjhwMEwsIDB4OS45MGYwN2E5OGI0MjIwNmU0NjE2NmNmMDUxZDcwcC05MkwsCi0JMHgxLjFlZDUwMjJmY2Q5MWNiODgxOWZmNjBwMEwsIDB4MS4xMjFkMWU1MDRkMzZjNDc0NzRjOWI3ZGU2MDY3cC04OEwsCi0JMHgxLjIwNjNiODg2MjhjZDYzYjhlZWIwMjhwMEwsIDB4MS41MDkyOWQwZmM0ODdkMjFjMmI4NDAwNDI2NGRlcC04OEwsCi0JMHgxLjIxZjQ5OTE3ZGRjOTYyNTUyZmQyOTJwMEwsIDB4OS40YmRiNGI2MWVhNjI0NzdjYWExZGNlODIzYmEwcC05MkwsCi0JMHgxLjIzODdhNmU3NTYyMzg2NmMxZmFkYjBwMEwsIDB4MS5jMTVjYjU5M2IwMzI4NTY2OTAyZGY2OWU0ZGUycC04OEwsCi0JMHgxLjI1MWNlNGZiMmE2M2YzNTgyYWI3ZGVwMEwsIDB4OS5lOTQ4MTFhOWM4YWZkY2Y3OTY5MzRiYzY1MmQwcC05MkwsCi0JMHgxLjI2YjQ1NjVlMjdjZGQyNTdhNjczMjhwMEwsIDB4MS5kM2IyNDlkY2U0ZTkxODZkZGQ1ZmY0NGU2YjA4cC05MkwsCi0JMHgxLjI4NGRmZTFmNTYzODA5NmNmMTVjZjBwMEwsIDB4My5jYTA5NjdmZGFhMmU1MmQ3YzgxMDZmMmUyNjJjcC05MkwsCi0JMHgxLjI5ZTlkZjUxZmRlZTEyYzI1ZDE1ZjRwMEwsIDB4MS5hMjRhYTNiY2E4OTBhYzA4ZDIwM2ZlZDgwYTA3cC04OEwsCi0JMHgxLjJiODdmZDBkYWQ5OGZmZGRlYTQ2NTJwMEwsIDB4MS44ZmNhYjg4NDQyZmRjM2NiNmRlNDUxOTE2NWVkcC04OEwsCi0JMHgxLjJkMjg1YTZlNDAzMGI0MDA5MWQ1MzZwMEwsIDB4ZC4wNzUzODQ1ODljMWNkMWIzZTQwMThhNmIxMzQ4cC05MkwsCi0JMHgxLjJlY2FmYTkzZTJmNTYxMWNhMGY0NWNwMEwsIDB4MS41MjM4MzNhZjYxMWJkY2RhMjUzYzU1NGNmMjc4cC04OEwsCi0JMHgxLjMwNmZlMGEzMWI3MTUyZGU4ZDVhNDZwMEwsIDB4My4wNWM4NWVkZWNiYzI3MzQzNjI5ZjUwMmYxYWYycC05MkwsCi0JMHgxLjMyMTcwZmM0Y2Q4MzEzNTM5Y2YxYzJwMEwsIDB4MS4wMDhmODZkZGUzMjIwYWUxN2EwMDViNjQxMmJlcC04OEwsCi0JMHgxLjMzYzA4YjI2NDE2ZmY0YzljODYxMGNwMEwsIDB4MS45NjY5NmJmOTVkMTU5MzAzOTUzOWQ5NGQ2NjJicC04OEwsCi0JMHgxLjM1NmM1NWY5MjlmZjBjOTQ2MjM0NzZwMEwsIDB4My43M2FmMzhkNmQ4ZDZmOTUwNmM5YmJjOTNjYmMwcC05MkwsCi0JMHgxLjM3MWE3MzczYWE5Y2FhNzE0NTUwMmVwMEwsIDB4MS40NTQ3OTg3ZTNlMTI1MTZiZjljNjk5YmU0MzJmcC04OEwsCi0JMHgxLjM4Y2FlNmQwNWQ4NjU4NWE5Y2IwZDhwMEwsIDB4MS5iZWQwYzg1M2JkMzBhMDI3OTA5MzFlYjJlOGYwcC04OEwsCi0JMHgxLjNhN2RiMzRlNTlmZjZlYTFiYzkyOThwMEwsIDB4MS5lMGExZDMzNjE2M2ZlMmY4NTJjZWViMTM0MDY3cC04OEwsCi0JMHgxLjNjMzJkYzMxM2E4ZTQ4NDAwMWYyMjhwMEwsIDB4Yi41OGYzNzc1ZTA2YWI2NjM1MzAwMWZhZTlmY2EwcC05MkwsCi0JMHgxLjNkZWE2NGMxMjM0MjIzNWI0MTIyM2VwMEwsIDB4MS4zZDc3M2ZiYTJjYjgyYjgyNDQyNjdjNTQ0NDNmcC05MkwsCi0JMHgxLjNmYTQ1MDRhYzgwMWJhMGJmNzAxYWFwMEwsIDB4NC4xODMyZmI4YzFjOGRiZGZmMmM0OTkwOWU2YzYwcC05MkwsCi0JMHgxLjQxNjBhMjFmNzJlMjlmODQzMjViOGVwMEwsIDB4MS4zZGI2MWZiMzUyZjA1NDBlNmJhMDU2MzQ0MTNlcC04OEwsCi0JMHgxLjQzMWY1ZDk1MGE4OTZkYzcwNDQzOTRwMEwsIDB4MS4wY2NlYzgxZTI0YjBjYWZmNzU4MWVmNDEyN2Y3cC05MkwsCi0JMHgxLjQ0ZTA4NjA2MTg5MmQwMzEzNmY0MDhwMEwsIDB4MS5kZjAxOWZiZDRmM2I0ODcwOWI3ODU5MWQ1Y2I1cC04OEwsCi0JMHgxLjQ2YTQxZWQxZDAwNTc3MjUxMmY0NThwMEwsIDB4MS4yMjlkOTdkZjQwNGZmMjFmMzljMWI1OTRkM2E4cC04OEwsCi0JMHgxLjQ4NmEyYjVjMTNjZDAxM2MxYTNiNjhwMEwsIDB4MS4wNjJmMDNjM2RkNzVjZTg3NTdmNzgwZTZlYzk5cC04OEwsCi0JMHgxLjRhMzJhZjBkN2QzZGU2NzJkOGJjZjRwMEwsIDB4Ni5mOTU4NjQ2MWRiMWQ4NzhiMWQxNDhiZDNjY2I4cC05MkwsCi0JMHgxLjRiZmRhZDUzNjJhMjcxZDQzOTdhZmVwMEwsIDB4Yy40MmUyMGUwMzYzYmEyZTE1OWM1NzlmODJlNGIwcC05MkwsCi0JMHgxLjRkY2IyOTlmZGRkMGQ2M2IzNmVmMWFwMEwsIDB4OS5lMGNjNDg0YjI1YTU1NjZkMGJkNWY1OGFkMjM4cC05MkwsCi0JMHgxLjRmOWIyNzY5ZDJjYTZhZDMzZDhiNjhwMEwsIDB4MS5hYTA3M2VlNTVlMDI4NDk3YTMyOWE3MzMzZGJhcC04OEwsCi0JMHgxLjUxNmRhYTJjZjY2NDFjMTEyZjUyYzhwMEwsIDB4NC5kODIyMTkwZTcxODIyNjE3N2Q3NjA4ZDIwMDM4cC05MkwsCi0JMHgxLjUzNDJiNTY5ZDRmODFkZjBhODNjNDhwMEwsIDB4MS5kODZhNjNmNGU2NzJhM2U0Mjk4MDViMDQ5NDY1cC04OEwsCi0JMHgxLjU1MWE0Y2E1ZDkyMGVjNTJlYzYyMDJwMEwsIDB4NC4zNGNhNjcyNjQ1ZGM2YzEyNGQ2NjE5YTg3NTc0cC05MkwsCi0JMHgxLjU2ZjQ3MzZiNTI3ZGE2NmVjYjAwNDZwMEwsIDB4MS42NGViM2MwMGYyZjVhYjNkODAxZDdjYzcyNzJkcC04OEwsCi0JMHgxLjU4ZDEyZDQ5N2M3ZmQyNTJiYzJiNzJwMEwsIDB4MS40M2JjZjJlYzkzNmE5NzBkOWNjMjY2ZjAwNzJmcC04OEwsCi0JMHgxLjVhYjA3ZGQ0ODU0Mjk1OGM5MzAxNTBwMEwsIDB4MS45MWViMzQ1ZDg4ZDdjODEyODBlMDY5ZmJkYjYzcC04OEwsCi0JMHgxLjVjOTI2OGE1OTQ2YjcwMWM0YjFiODBwMEwsIDB4MS42OTg2YTIwM2Q4NGU2YTRhOTJmMTc5ZTcxODg5cC04OEwsCi0JMHgxLjVlNzZmMTVhZDIxNDg2ZTliZTRjMjBwMEwsIDB4My45OTc2NmEwNjU0OGEwNTgyOWU4NTNiZGIyYjUycC05MkwsCi0JMHgxLjYwNWUxYjk3NmRjMDhiMDc2ZjU5MmFwMEwsIDB4NC44NmUzYjM0ZWFkMWI0NzY5ZGY4NjdiOWM4OWNjcC05MkwsCi0JMHgxLjYyNDdlYjAzYTU1ODRiMWYwZmEwNmVwMEwsIDB4MS5kMmRhNDJiYjFjZWFmOWY3MzIyNzViOGFlZjMwcC04OEwsCi0JMHgxLjY0MzQ2MzRjY2MzMWZjNzZmODcxNGNwMEwsIDB4NC5lZDlhNGU0MTAwMDMwNzEwM2ExOGNmN2E2ZTA4cC05MkwsCi0JMHgxLjY2MjM4ODI1NTIyMjQ5MTI3ZDllMjhwMEwsIDB4MS5iOGYzMTRhMzM3ZjRkYzBhM2FkZjE3ODdmZjc0cC04OEwsCi0JMHgxLjY4MTU1ZDQ0Y2E5NzMwODFjNTcyMjZwMEwsIDB4MS5iOWYzMjcwNmJmZTRlNjI3ZDgwOWE4NWRjYzY2cC04OEwsCi0JMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTJwMEwsIDB4MS42NmVhOTU3ZDNlM2FkZWMxNzUxMjc3NTA5OWRhcC04OEwsCi0JMHgxLjZjMDEyNzUwYmRhYmVlZDc2YTk5ODBwMEwsIDB4Zi40ZjMzZmRlYjhiMGVjZDgzMTEwNmY1N2IzZDAwcC05NkwsCi0JMHgxLjZkZmIyM2M2NTFhMmVmMjIwZTJjYmVwMEwsIDB4MS5iYmFhODM0YjNmMTE1NzdjZWVmYmU2YzFjNDExcC05MkwsCi0JMHgxLjZmZjdkZjk1MTk0ODNjZjg3ZTFiNGVwMEwsIDB4MS4zZTIxM2JmZjliNzAyZDVhYTQ3N2MxMjUyM2NlcC04OEwsCi0JMHgxLjcxZjc1ZThlYzVmNzNkZDIzNzBmMmVwMEwsIDB4Zi4wYWNkNmNiNDM0YjU2MmQ5ZThhMjBhZGRhNjQ4cC05MkwsCi0JMHgxLjczZjlhNDhhNTgxNzNiZDVjOWE0ZTZwMEwsIDB4OC5hYjExODJhZTIxN2YzYTc2ODE3NTk1NTNlODQwcC05MkwsCi0JMHgxLjc1ZmViNTY0MjY3YzhiZjZlOWFhMzJwMEwsIDB4MS5hNDhiMjcwNzE4MDVlNjFhMTdiOTU0YTJkYWQ4cC04OEwsCi0JMHgxLjc4MDY5NGZkZTVkM2Y2MTlhZTAyODBwMEwsIDB4OC41OGIyYmIyYmRjZjg2Y2QwOGUzNWZiMDRjMGYwcC05MkwsCi0JMHgxLjdhMTE0NzNlYjAxODZkN2Q1MTAyM2VwMEwsIDB4MS42Y2RhMWY1ZWY0MmI2Njk3Nzk2MDUzMWU4MjFicC04OEwsCi0JMHgxLjdjMWVkMDEzMGMxMzI3YzQ5MzM0NDRwMEwsIDB4MS45Mzc1NjJiMmRjOTMzZDQ0ZmM4MjhlZmQ0YzljcC04OEwsCi0JMHgxLjdlMmYzMzZjZjRlNjIxMDVkMDJiYTBwMEwsIDB4MS41Nzk3ZTE3MGExNDI3ZjhmY2RmNWYzOTA2MTA4cC04OEwsCi0JMHgxLjgwNDI3NTQzZTFhMTFiNjBkZTY3NjRwMEwsIDB4OS5hMzU0ZWE3MDZiOGU0ZDhiNzE4YTY3MmJmN2M4cC05MkwsCi0JMHgxLjgyNTg5OTk0Y2NlMTI4YWNmODhhZmFwMEwsIDB4Yi4zNGEwMTBmNmFkNjVjYmJhYzBmNTMyZDM5YmUwcC05MkwsCi0JMHgxLjg0NzFhNDYyM2M3YWNjZTUyZjZiOTZwMEwsIDB4MS5jNjQwOTUzNzBmNTFmNDg4MTc5MTRkZDc4NjY1cC04OEwsCi0JMHgxLjg2OGQ5OWI0NDkyZWM4MGU0MWQ5MGFwMEwsIDB4Yy4yNTE3MDc0ODRkNzNmMTM2ZmI1Nzc5NjU2YjcwcC05MkwsCi0JMHgxLjg4YWM3ZDk4YTY2OTk2NjUzMGJjZGVwMEwsIDB4MS4yZDRlOWQ2MTI4M2VmMzg1ZGUxNzBhYjIwZjk2cC04OEwsCi0JMHgxLjhhY2U1NDIyYWEwZGI1YmE3YzU1YTBwMEwsIDB4MS45MmM5YmIzZTZlZDYxZjI3MzMzMDRhMzQ2ZDhmcC04OEwsCi0JMHgxLjhjZjMyMTZiNTQ0OGJlZjJhYTFjZDBwMEwsIDB4MS42MWM1NWQ4NGE5ODQ4ZjhjNDUzYjNjYThjOTQ2cC04OEwsCi0JMHgxLjhmMWFlOTkxNTc3MzYyYjk4Mjc0NWNwMEwsIDB4Ny4yZWQ4MDRlZmM5YjRhZTE0NThhZTk0NjA5OWQ0cC05MkwsCi0JMHgxLjkxNDViMGI5MWZmYzU4OGE2MWI0NjhwMEwsIDB4MS5mNmI3MGUwMWMyYTkwMjI5YTRjNDMwOWVhNzE5cC04OEwsCi0JMHgxLjkzNzM3YjBjZGM1ZTRmNDUwMWMzZjJwMEwsIDB4NS40MGEyMmQyZmM0YWY1ODFiNjNlODMyNmVmZTljcC05MkwsCi0JMHgxLjk1YTQ0Y2JjODUyMGVlOWI0ODM2OTRwMEwsIDB4MS5hMGZjNmY3YzdkNjFiMmIzYTIyYTBlYWIyY2FkcC04OEwsCi0JMHgxLjk3ZDgyOWZkZTRlNGY4YjllOTIwZjhwMEwsIDB4MS4xZThiZDdlZGI5ZDcxNDRiNmY2ODE4MDg0Y2M3cC04OEwsCi0JMHgxLjlhMGYxNzBjYTA3YjliYTMxMDliOGNwMEwsIDB4NC42NzM3YmViMTllMWVhZGE2ODI1ZDNjNTU3NDI4cC05MkwsCi0JMHgxLjljNDkxODJhM2YwOTAxYzdjNDZiMDZwMEwsIDB4MS4xZjJiZTU4ZGRhZGU1MGMyMTcxODZjOTBiNDU3cC04OEwsCi0JMHgxLjllODYzMTllMzIzMjMxODI0Y2E3OGVwMEwsIDB4Ni40YzZlMDEwZjkyYzA4MmJiYWRmYWY2MDVjZmQ0cC05MkwsCi0JMHgxLmEwYzY2N2I1ZGU1NjRiMjlhZGE4YjhwMEwsIDB4Yy5hYjM0OWFhMDQyMmE4ZGE3ZDQ1MTJlZGFjNTQ4cC05MkwsCi0JMHgxLmEzMDliZWM0YTJkMzM1OGMxNzFmNzZwMEwsIDB4MS4wZGFhZDU0N2ZhMjJjMjZkMTY4ZWE3NjJkODU0cC04OEwsCi0JMHgxLmE1NTAzYjIzZTI1NWM4YjQyNDQ5MWNwMEwsIDB4YS5mODdiYzgwNTBhNDA1MzgxNzAzZWY3Y2FmZjUwcC05MkwsCi0JMHgxLmE3OTllMTMzMGIzNTg2ZjJkZmIyYjBwMEwsIDB4MS41OGYxYTk4Nzk2Y2U4OTA4YWU4NTIyMzZjYTk0cC04OEwsCi0JMHgxLmE5ZTZiNTU3OWZkYmY0M2ViMjQzYmNwMEwsIDB4MS5mZjRjNGM1OGI1NzFjZjQ2NWNhZjA3YjRiOWY1cC04OEwsCi0JMHgxLmFjMzZiYmZkM2YzNzljMGRiOTY2YTJwMEwsIDB4MS4xMjY1ZmM3M2U0ODA3MTJkMjBmODU5N2E4ZTdicC04OEwsCi0JMHgxLmFlODlmOTk1YWQzYWQ1ZTg3MzRkMTZwMEwsIDB4MS43MzIwNWE3ZmJjM2FlNjc1ZWE0NDBiMTYyZDZjcC04OEwsCi0JMHgxLmIwZTA3Mjk4ZGI2NjU5MDg0MmFjZGVwMEwsIDB4MS5jNmY2Y2EwZTVkY2FlMmFhZmZmYTdhMDU1NGNicC04OEwsCi0JMHgxLmIzM2EyYjg0ZjE1ZmFmNmJmZDBlN2FwMEwsIDB4MS5kOTQ3YzI1NzU3ODFkYmI0OWIxMjM3Yzg3YjZlcC04OEwsCi0JMHgxLmI1OTcyOGRlNTU5Mzk4ZTM4ODExMTBwMEwsIDB4MS42NDg3M2M3MTcxZmVmYzQxMDQxNmJlMGE2NTI1cC04OEwsCi0JMHgxLmI3Zjc2ZjJmYjVlNDZlYWE3YjA4MWFwMEwsIDB4Yi41M2M1MzU0Yzg5MDNjMzU2ZTRiNjI1YWFjYzI4cC05MkwsCi0JMHgxLmJhNWIwMzBhMTA2NDk4NDBjYjNjNmFwMEwsIDB4Zi41YjQ3ZjI5NzIwMzc1N2UxY2M2ZWFkYzhiYWQwcC05MkwsCi0JMHgxLmJjYzFlOTA0YmMxZDIyNDdiYTBmNDRwMEwsIDB4MS5iM2QwOGNkMGIyMDI4NzA5MmJkNTliZTRhZDk4cC04OEwsCi0JMHgxLmJmMmMyNWJkNzFlMDg4NDA4ZDcwMjRwMEwsIDB4MS4xOGUzNDQ5ZmEwNzNiMzU2NzY2ZGZiNTY4ZmY0cC04OEwsCi0JMHgxLmMxOTliZGQ4NTUyOWMyMjIwY2IxMmFwMEwsIDB4OS4xYmE2Njc5NDQ0OTY0YTM2NjYxMjQwMDQzOTcwcC05NkwsCi0JMHgxLmM0MGFiNWZmZmQwN2E2ZDE0ZGY4MjBwMEwsIDB4Zi4xODI4YTUzNjZmZDM4N2E3YmRkNTRjZGY3MzAwcC05MkwsCi0JMHgxLmM2N2YxMmU1N2QxNGI0YTIxMzdmZDJwMEwsIDB4Zi4yYjMwMWRkOWU2YjE1MWE2ZDFmOWQ1ZDVmNTIwcC05NkwsCi0JMHgxLmM4ZjZkOTQwNmU3YjUxMWFjYmM0ODhwMEwsIDB4NS5jNDQyZGRiNTU4MjAxNzFmMzE5ZDllNTA3NmE4cC05NkwsCi0JMHgxLmNiNzIwZGNlZjkwNjkxNTAzY2JkMWVwMEwsIDB4OS40OWRiNzYxZDk1NTlhYzBjYjZkZDNlZDU5OWUwcC05MkwsCi0JMHgxLmNkZjBiNTU1ZGMzZjljNDRmODk1OGVwMEwsIDB4MS5hYzUxYmU1MTVmOGM1OGJkZmI2ZjU3NDBhM2E0cC04OEwsCi0JMHgxLmQwNzJkNGEwNzg5N2I4ZDBmMjJmMjBwMEwsIDB4MS5hMTU4ZTE4ZmJiZmM2MjVmMDlmNGNjYTQwODc0cC04OEwsCi0JMHgxLmQyZjg3MDgwZDg5ZjE4YWRlMTIzOThwMEwsIDB4OS5lYTIwMjViNGM1NjU1M2Y1Y2RlZTRjOTI0NzI4cC05MkwsCi0JMHgxLmQ1ODE4ZGNmYmE0ODcyNWRhMDVhZWFwMEwsIDB4MS42NmUwZGNhOWY1ODlmNTU5YzA4NzZmZjIzODMwcC04OEwsCi0JMHgxLmQ4MGUzMTZjOTgzOTdiYjg0ZjlkMDRwMEwsIDB4OC44MDVmODRiZWM2MTRkZTI2OTkwMGRkZjk4ZDI4cC05MkwsCi0JMHgxLmRhOWU2MDNkYjMyODU3MDhjMDFhNWFwMEwsIDB4MS42ZDRjOTdmNjI0NmYwZWM2MTRlYzk1Yzk5MzkycC04OEwsCi0JMHgxLmRkMzIxZjMwMWI0NjA0YjY5NWRlM2NwMEwsIDB4Ni4zMGEzOTMyMTUyOTllMzBkNGZiNzM1MDNjMzQ4cC05NkwsCi0JMHgxLmRmYzk3MzM3YjliNWViOTY4Y2FjMzhwMEwsIDB4MS5lZDI5MWI3MjI1YTk0NGVmZDViYjU1MjRiOTI3cC04OEwsCi0JMHgxLmUyNjQ2MTRmNWExMjhhMTI3NjFmYTBwMEwsIDB4MS43YWRhNjQ2N2U3N2Y3M2JmNjVlMDRjOTVlMjlkcC04OEwsCi0JMHgxLmU1MDJlZTc4YjNmZjYyNzNkMTMwMTRwMEwsIDB4MS4zOTkxZThmNDk2NTllMTY5M2JlMTdhZTFkMmY5cC04OEwsCi0JMHgxLmU3YTUxZmJjNzRjODM0YjU0OGIyODJwMEwsIDB4MS4yMzc4Njc1OGE4NGY0OTU2MzU0NjM0YTQxNmNlcC04OEwsCi0JMHgxLmVhNGFmYTJhNDkwZDk4NThmNzNhMThwMEwsIDB4Zi41ZGIzMDFmODZkZWEyMDYxMGNlZWUxM2ViN2I4cC05MkwsCi0JMHgxLmVjZjQ4MmQ4ZTY3ZjA4ZGIwMzEyZmFwMEwsIDB4MS45NDljZWY0NjIwMTBiYjRiYzRjZTcyYTkwMGRmcC04OEwsCi0JMHgxLmVmYTFiZWU2MTVhMjc3NzFmZDIxYThwMEwsIDB4MS4yZGFjMWY2ZGQ1ZDIyOWZmNjhlNDZmMjdlM2RmcC04OEwsCi0JMHgxLmYyNTJiMzc2YmJhOTc0ZTg2OTZmYzJwMEwsIDB4MS42MzkwZDRjNmFkNTQ3NmI1MTYyZjQwZTFkOWE5cC04OEwsCi0JMHgxLmY1MDc2NWI2ZTQ1NDA2NzRmODRiNzZwMEwsIDB4Mi44NjJiYWZmOTkwMDBkZmM0MzUyYmEyOWI4OTA4cC05MkwsCi0JMHgxLmY3YmZkYWQ5Y2JlMTM4OTEzYjRiZmVwMEwsIDB4Ny4yYmQ5NWM1Y2U3MjgwZmE0ZDIzNDRhM2Y1NjE4cC05MkwsCi0JMHgxLmZhN2MxODE5ZTkwZDgyZTkwYTdlNzRwMEwsIDB4Yi4yNjNjMWRjMDYwYzM2Zjc2NTBiNGMwZjIzM2E4cC05MkwsCi0JMHgxLmZkM2MyMmI4ZjcxZjEwOTc1YmE0YjJwMEwsIDB4MS4yYmNmM2E1ZTEyZDI2OWQ4YWQ3YzFhNGE4ODc1cC04OEwKLX07Ci0KIGxvbmcgZG91YmxlCiBleHBsKGxvbmcgZG91YmxlIHgpCiB7Ci0JdW5pb24gSUVFRWwyYml0cyB1LCB2OwotCWxvbmcgZG91YmxlIHEsIHIsIHIxLCB0LCB0d29waywgdHdvcGtwMTAwMDA7Ci0JZG91YmxlIGRyLCBmbiwgcjI7Ci0JaW50IGssIG4sIG4yOworCXVuaW9uIElFRUVsMmJpdHMgdTsKKwlsb25nIGRvdWJsZSBoaSwgbG8sIHQsIHR3b3BrOworCWludCBrOwogCXVpbnQxNl90IGh4LCBpeDsKIAorCURPUFJJTlRfU1RBUlQoJngpOworCiAJLyogRmlsdGVyIG91dCBleGNlcHRpb25hbCBjYXNlcy4gKi8KIAl1LmUgPSB4OwogCWh4ID0gdS54Yml0cy5leHBzaWduOwpAQCAtMjQxLDYwICs3MiwzMyBAQAogCWlmIChpeCA+PSBCSUFTICsgMTMpIHsJCS8qIHx4fCA+PSA4MTkyIG9yIHggaXMgTmFOICovCiAJCWlmIChpeCA9PSBCSUFTICsgTERCTF9NQVhfRVhQKSB7CiAJCQlpZiAoaHggJiAweDgwMDApICAvKiB4IGlzIC1JbmYgb3IgLU5hTiAqLwotCQkJCXJldHVybiAoLTEgLyB4KTsKLQkJCXJldHVybiAoeCArIHgpOwkvKiB4IGlzICtJbmYgb3IgK05hTiAqLworCQkJCVJFVFVSTlAoLTEgLyB4KTsKKwkJCVJFVFVSTlAoeCArIHgpOwkvKiB4IGlzICtJbmYgb3IgK05hTiAqLwogCQl9CiAJCWlmICh4ID4gb190aHJlc2hvbGQpCi0JCQlyZXR1cm4gKGh1Z2UgKiBodWdlKTsKKwkJCVJFVFVSTlAoaHVnZSAqIGh1Z2UpOwogCQlpZiAoeCA8IHVfdGhyZXNob2xkKQotCQkJcmV0dXJuICh0aW55ICogdGlueSk7CisJCQlSRVRVUk5QKHRpbnkgKiB0aW55KTsKIAl9IGVsc2UgaWYgKGl4IDwgQklBUyAtIDExNCkgewkvKiB8eHwgPCAweDFwLTExNCAqLwotCQlyZXR1cm4gKDEgKyB4KTsJCS8qIDEgd2l0aCBpbmV4YWN0IGlmZiB4ICE9IDAgKi8KKwkJUkVUVVJOMlAoMSwgeCk7CQkvKiAxIHdpdGggaW5leGFjdCBpZmYgeCAhPSAwICovCiAJfQogCiAJRU5URVJJKCk7CiAKLQkvKiBSZWR1Y2UgeCB0byAoaypsbjIgKyBlbmRwb2ludFtuMl0gKyByMSArIHIyKS4gKi8KLQkvKiBVc2UgYSBzcGVjaWFsaXplZCByaW50KCkgdG8gZ2V0IGZuLiAgQXNzdW1lIHJvdW5kLXRvLW5lYXJlc3QuICovCi0JLyogWFhYIGFzc3VtZSBubyBleHRyYSBwcmVjaXNpb24gZm9yIHRoZSBhZGRpdGlvbnMsIGFzIGZvciB0cmlnIGZucy4gKi8KLQkvKiBYWFggdGhpcyBzZXQgb2YgY29tbWVudHMgaXMgbm93IHF1YWRydXBsaWNhdGVkLiAqLwotCWZuID0gKGRvdWJsZSl4ICogSU5WX0wgKyAweDEuOHA1MiAtIDB4MS44cDUyOwotI2lmIGRlZmluZWQoSEFWRV9FRkZJQ0lFTlRfSVJJTlQpCi0JbiA9IGlyaW50KGZuKTsKLSNlbHNlCi0JbiA9IChpbnQpZm47Ci0jZW5kaWYKLQluMiA9ICh1bnNpZ25lZCluICUgSU5URVJWQUxTOwotCWsgPSBuID4+IExPRzJfSU5URVJWQUxTOwotCXIxID0geCAtIGZuICogTDE7Ci0JcjIgPSBmbiAqIC1MMjsKLQlyID0gcjEgKyByMjsKLQotCS8qIFByZXBhcmUgc2NhbGUgZmFjdG9ycy4gKi8KLQkvKiBYWFggc3BhcmM2NCBtdWx0aXBsaWNhdGlvbiBpcyBzbyBzbG93IHRoYXQgc2NhbGJubCgpIGlzIGZhc3Rlci4gKi8KLQl2LmUgPSAxOwotCWlmIChrID49IExEQkxfTUlOX0VYUCkgewotCQl2LnhiaXRzLmV4cHNpZ24gPSBCSUFTICsgazsKLQkJdHdvcGsgPSB2LmU7Ci0JfSBlbHNlIHsKLQkJdi54Yml0cy5leHBzaWduID0gQklBUyArIGsgKyAxMDAwMDsKLQkJdHdvcGtwMTAwMDAgPSB2LmU7Ci0JfQotCi0JLyogRXZhbHVhdGUgZXhwbChlbmRwb2ludFtuMl0gKyByMSArIHIyKSA9IHRibFtuMl0gKiBleHBsKHIxICsgcjIpLiAqLwotCWRyID0gcjsKLQlxID0gcjIgKyByICogciAqIChBMiArIHIgKiAoQTMgKyByICogKEE0ICsgciAqIChBNSArIHIgKiAoQTYgKwotCSAgICBkciAqIChBNyArIGRyICogKEE4ICsgZHIgKiAoQTkgKyBkciAqIEExMCkpKSkpKSkpOwotCXQgPSB0YmxbbjJdLmxvICsgdGJsW24yXS5oaTsKLQl0ID0gdGJsW24yXS5sbyArIHQgKiAocSArIHIxKSArIHRibFtuMl0uaGk7CisJdHdvcGsgPSAxOworCV9fa19leHBsKHgsICZoaSwgJmxvLCAmayk7CisJdCA9IFNVTTJQKGhpLCBsbyk7CiAKIAkvKiBTY2FsZSBieSAyKiprLiAqLworCS8qIFhYWCBzcGFyYzY0IG11bHRpcGxpY2F0aW9uIGlzIHNvIHNsb3cgdGhhdCBzY2FsYm5sKCkgaXMgZmFzdGVyLiAqLwogCWlmIChrID49IExEQkxfTUlOX0VYUCkgewogCQlpZiAoayA9PSBMREJMX01BWF9FWFApCiAJCQlSRVRVUk5JKHQgKiAyICogMHgxcDE2MzgzTCk7CisJCVNFVF9MREJMX0VYUFNJR04odHdvcGssIEJJQVMgKyBrKTsKIAkJUkVUVVJOSSh0ICogdHdvcGspOwogCX0gZWxzZSB7Ci0JCVJFVFVSTkkodCAqIHR3b3BrcDEwMDAwICogdHdvbTEwMDAwKTsKKwkJU0VUX0xEQkxfRVhQU0lHTih0d29waywgQklBUyArIGsgKyAxMDAwMCk7CisJCVJFVFVSTkkodCAqIHR3b3BrICogdHdvbTEwMDAwKTsKIAl9CiB9CiAKQEAgLTMxMiw2ICsxMTYsMTIgQEAKICAqIFNldHRpbmcgVDMgdG8gMCB3b3VsZCByZXF1aXJlIHRoZSB8eHwgPCAweDFwLTExMyBjb25kaXRpb24gdG8gYXBwZWFyCiAgKiBpbiBib3RoIHN1YmludGVydmFscywgc28gc2V0IFQzID0gMioqLTUsIHdoaWNoIHBsYWNlcyB0aGUgY29uZGl0aW9uCiAgKiBpbnRvIHRoZSBbVDEsIFQzXSBpbnRlcnZhbC4KKyAqCisgKiBYWFggd2Ugbm93IGRvIHRoaXMgbW9yZSB0byAocGFydGlhbGx5KSBiYWxhbmNlIHRoZSBudW1iZXIgb2YgdGVybXMKKyAqIGluIHRoZSBDIGFuZCBEIHBvbHlzIHRoYW4gdG8gYXZvaWQgY2hlY2tpbmcgdGhlIGNvbmRpdGlvbiBpbiBib3RoCisgKiBpbnRlcnZhbHMuCisgKgorICogWFhYIHRoZXNlIG1pY3JvLW9wdGltaXphdGlvbnMgYXJlIGV4Y2Vzc2l2ZS4KICAqLwogc3RhdGljIGNvbnN0IGRvdWJsZQogVDEgPSAtMC4xNjU5LAkJCQkvKiB+LTMwLjYyNS8xMjggKiBsb2coMikgKi8KQEAgLTMyMSw2ICsxMzEsMTIgQEAKIC8qCiAgKiBEb21haW4gWy0wLjE2NTksIDAuMDMxMjVdLCByYW5nZSB+WzIuOTEzNGUtNDQsIDEuODQwNGUtMzddOgogICogfChleHAoeCktMS14LXgqKjIvMikveCAtIHAoeCl8IDwgMioqLTEyMi4wMworICoKKyAqIFhYWCBub25lIG9mIHRoZSBsb25nIGRvdWJsZSBDIG9yIEQgY29lZmZzIGV4Y2VwdCBDMTAgaXMgY29ycmVjdGx5IHByaW50ZWQuCisgKiBJZiB5b3UgcmUtcHJpbnQgdGhlaXIgdmFsdWVzIGluICUuMzVMZSBmb3JtYXQsIHRoZSByZXN1bHQgaXMgYWx3YXlzCisgKiBkaWZmZXJlbnQuICBGb3IgZXhhbXBsZSwgdGhlIGxhc3QgMiBkaWdpdHMgaW4gQzMgc2hvdWxkIGJlIDU5LCBub3QgNjcuCisgKiA2NyBpcyBhcHBhcmVudGx5IGZyb20gcm91bmRpbmcgYW4gZXh0cmEtcHJlY2lzaW9uIHZhbHVlIHRvIDM2IGRlY2ltYWwKKyAqIHBsYWNlcy4KICAqLwogc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCiBDMyAgPSAgMS42NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2N2UtMUwsCkBAIC0zMzUsNiArMTUxLDEzIEBACiBDMTIgPSAgMi4wODc2NzU2OTg3ODY3OTU3NjQ1NzI3MjI4MjU2NjUyMDY0OWUtOUwsCiBDMTMgPSAgMS42MDU5MDQzODM2NzI1MjQ3MTc4MzU0ODc0ODgyNDI1NTcwN2UtMTBMOwogCisvKgorICogWFhYIHRoaXMgaGFzIDEgbW9yZSBjb2VmZiB0aGFuIG5lZWRlZC4KKyAqIFhYWCBjYW4gc3RhcnQgdGhlIGRvdWJsZSBjb2VmZnMgYnV0IG5vdCB0aGUgZG91YmxlIG11bHRzIGF0IEMxMC4KKyAqIFdpdGggbXkgY29lZmZzIChDMTAtQzE3IGRvdWJsZTsgcyA9IGJlc3Rfcyk6CisgKiBEb21haW4gWy0wLjE2NTksIDAuMDMxMjVdLCByYW5nZSB+Wy0xLjE5NzZlLTM3LCAxLjE5NzZlLTM3XToKKyAqIHwoZXhwKHgpLTEteC14KioyLzIpL3ggLSBwKHgpfCB+PCAyKiotMTIyLjY1CisgKi8KIHN0YXRpYyBjb25zdCBkb3VibGUKIEMxNCA9ICAxLjE0NzA3NDU1ODA0OTE5MzJlLTExLAkJLyogIDB4MS45Mzk3NGE4MWRhZTMwcC0zNyAqLwogQzE1ID0gIDcuNjQ3MTYyMDE4MTA5MDQ2OGUtMTMsCQkvKiAgMHgxLmFlN2YzODIwYWRhYjFwLTQxICovCkBAIC0zNTksNiArMTgyLDEzIEBACiBEMTIgPSAgMi4wODc2NzU2OTgxOTczODUyNDQ4ODY4NjMxODAyNDg1NDk0MmUtOUwsCiBEMTMgPSAgMS42MDU5MDQ0MjI5NzAwODQ5NTMwMTkyNzQ0ODEyMjQ5OTMxM2UtMTBMOwogCisvKgorICogWFhYIHRoaXMgaGFzIDEgbW9yZSBjb2VmZiB0aGFuIG5lZWRlZC4KKyAqIFhYWCBjYW4gc3RhcnQgdGhlIGRvdWJsZSBjb2VmZnMgYnV0IG5vdCB0aGUgZG91YmxlIG11bHRzIGF0IEQxMS4KKyAqIFdpdGggbXkgY29lZmZzIChEMTEtRDE2IGRvdWJsZSk6CisgKiBEb21haW4gWzAuMDMxMjUsIDAuMTY1OV0sIHJhbmdlIH5bLTEuMTk4MGUtMzcsIDEuMTk4MGUtMzddOgorICogfChleHAoeCktMS14LXgqKjIvMikveCAtIHAoeCl8IH48IDIqKi0xMjIuNjUKKyAqLwogc3RhdGljIGNvbnN0IGRvdWJsZQogRDE0ID0gIDEuMTQ3MDcyNjE3NjIwNDMzNmUtMTEsCQkvKiAgMHgxLjkzOTcxZGMzOTVkOWVwLTM3ICovCiBEMTUgPSAgNy42NDc4NTMyMjQ5NTgxNjg2ZS0xMywJCS8qICAweDEuYWU4OTJlM0QxNmZjZXAtNDEgKi8KQEAgLTM3NSw2ICsyMDUsOCBAQAogCWludCBrLCBuLCBuMjsKIAl1aW50MTZfdCBoeCwgaXg7CiAKKwlET1BSSU5UX1NUQVJUKCZ4KTsKKwogCS8qIEZpbHRlciBvdXQgZXhjZXB0aW9uYWwgY2FzZXMuICovCiAJdS5lID0geDsKIAloeCA9IHUueGJpdHMuZXhwc2lnbjsKQEAgLTM4MiwxMSArMjE0LDExIEBACiAJaWYgKGl4ID49IEJJQVMgKyA3KSB7CQkvKiB8eHwgPj0gMTI4IG9yIHggaXMgTmFOICovCiAJCWlmIChpeCA9PSBCSUFTICsgTERCTF9NQVhfRVhQKSB7CiAJCQlpZiAoaHggJiAweDgwMDApICAvKiB4IGlzIC1JbmYgb3IgLU5hTiAqLwotCQkJCXJldHVybiAoLTEgLyB4IC0gMSk7Ci0JCQlyZXR1cm4gKHggKyB4KTsJLyogeCBpcyArSW5mIG9yICtOYU4gKi8KKwkJCQlSRVRVUk5QKC0xIC8geCAtIDEpOworCQkJUkVUVVJOUCh4ICsgeCk7CS8qIHggaXMgK0luZiBvciArTmFOICovCiAJCX0KIAkJaWYgKHggPiBvX3RocmVzaG9sZCkKLQkJCXJldHVybiAoaHVnZSAqIGh1Z2UpOworCQkJUkVUVVJOUChodWdlICogaHVnZSk7CiAJCS8qCiAJCSAqIGV4cG0xbCgpIG5ldmVyIHVuZGVyZmxvd3MsIGJ1dCBpdCBtdXN0IGF2b2lkCiAJCSAqIHVucmVwcmVzZW50YWJsZSBsYXJnZSBuZWdhdGl2ZSBleHBvbmVudHMuICBXZSB1c2VkIGEKQEAgLTM5NSw3ICsyMjcsNyBAQAogCQkgKiBpbiB0aGUgc2FtZSB3YXkgYXMgbGFyZ2Ugb25lcyBoZXJlLgogCQkgKi8KIAkJaWYgKGh4ICYgMHg4MDAwKQkvKiB4IDw9IC0xMjggKi8KLQkJCXJldHVybiAodGlueSAtIDEpOwkvKiBnb29kIGZvciB4IDwgLTExNGxuMiAtIGVwcyAqLworCQkJUkVUVVJOMlAodGlueSwgLTEpOwkvKiBnb29kIGZvciB4IDwgLTExNGxuMiAtIGVwcyAqLwogCX0KIAogCUVOVEVSSSgpOwpAQCAtNDA3LDcgKzIzOSw3IEBACiAJCWlmICh4IDwgVDMpIHsKIAkJCWlmIChpeCA8IEJJQVMgLSAxMTMpIHsJLyogfHh8IDwgMHgxcC0xMTMgKi8KIAkJCQkvKiB4IChyb3VuZGVkKSB3aXRoIGluZXhhY3QgaWYgeCAhPSAwOiAqLwotCQkJCVJFVFVSTkkoeCA9PSAwID8geCA6CisJCQkJUkVUVVJOUEkoeCA9PSAwID8geCA6CiAJCQkJICAgICgweDFwMjAwICogeCArIGZhYnNsKHgpKSAqIDB4MXAtMjAwKTsKIAkJCX0KIAkJCXEgPSB4ICogeDIgKiBDMyArIHgyICogeDIgKiAoQzQgKyB4ICogKEM1ICsgeCAqIChDNiArCkBAIC00MjgsOSArMjYwLDkgQEAKIAkJaHgyX2hpID0geF9oaSAqIHhfaGkgLyAyOwogCQloeDJfbG8gPSB4X2xvICogKHggKyB4X2hpKSAvIDI7CiAJCWlmIChpeCA+PSBCSUFTIC0gNykKLQkJCVJFVFVSTkkoaHgyX2xvICsgeF9sbyArIHEgKyAoaHgyX2hpICsgeF9oaSkpOworCQkJUkVUVVJOMlBJKGh4Ml9oaSArIHhfaGksIGh4Ml9sbyArIHhfbG8gKyBxKTsKIAkJZWxzZQotCQkJUkVUVVJOSShoeDJfbG8gKyBxICsgaHgyX2hpICsgeCk7CisJCQlSRVRVUk4yUEkoeCwgaHgyX2xvICsgcSArIGh4Ml9oaSk7CiAJfQogCiAJLyogUmVkdWNlIHggdG8gKGsqbG4yICsgZW5kcG9pbnRbbjJdICsgcjEgKyByMikuICovCkBAIC00NjMsMjEgKzI5NSwyMSBAQAogCXQgPSB0YmxbbjJdLmxvICsgdGJsW24yXS5oaTsKIAogCWlmIChrID09IDApIHsKLQkJdCA9IHRibFtuMl0ubG8gKiAocjEgKyAxKSArIHQgKiBxICsgdGJsW24yXS5oaSAqIHIxICsKLQkJICAgICh0YmxbbjJdLmhpIC0gMSk7CisJCXQgPSBTVU0yUCh0YmxbbjJdLmhpIC0gMSwgdGJsW24yXS5sbyAqIChyMSArIDEpICsgdCAqIHEgKworCQkgICAgdGJsW24yXS5oaSAqIHIxKTsKIAkJUkVUVVJOSSh0KTsKIAl9CiAJaWYgKGsgPT0gLTEpIHsKLQkJdCA9IHRibFtuMl0ubG8gKiAocjEgKyAxKSArIHQgKiBxICsgdGJsW24yXS5oaSAqIHIxICsgCi0JCSAgICAodGJsW24yXS5oaSAtIDIpOworCQl0ID0gU1VNMlAodGJsW24yXS5oaSAtIDIsIHRibFtuMl0ubG8gKiAocjEgKyAxKSArIHQgKiBxICsKKwkJICAgIHRibFtuMl0uaGkgKiByMSk7CiAJCVJFVFVSTkkodCAvIDIpOwogCX0KIAlpZiAoayA8IC03KSB7Ci0JCXQgPSB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpICsgdGJsW24yXS5oaTsKKwkJdCA9IFNVTTJQKHRibFtuMl0uaGksIHRibFtuMl0ubG8gKyB0ICogKHEgKyByMSkpOwogCQlSRVRVUk5JKHQgKiB0d29wayAtIDEpOwogCX0KIAlpZiAoayA+IDIgKiBMREJMX01BTlRfRElHIC0gMSkgewotCQl0ID0gdGJsW24yXS5sbyArIHQgKiAocSArIHIxKSArIHRibFtuMl0uaGk7CisJCXQgPSBTVU0yUCh0YmxbbjJdLmhpLCB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpKTsKIAkJaWYgKGsgPT0gTERCTF9NQVhfRVhQKQogCQkJUkVUVVJOSSh0ICogMiAqIDB4MXAxNjM4M0wgLSAxKTsKIAkJUkVUVVJOSSh0ICogdHdvcGsgLSAxKTsKQEAgLTQ4Nyw4ICszMTksOCBAQAogCXR3b21rID0gdi5lOwogCiAJaWYgKGsgPiBMREJMX01BTlRfRElHIC0gMSkKLQkJdCA9IHRibFtuMl0ubG8gLSB0d29tayArIHQgKiAocSArIHIxKSArIHRibFtuMl0uaGk7CisJCXQgPSBTVU0yUCh0YmxbbjJdLmhpLCB0YmxbbjJdLmxvIC0gdHdvbWsgKyB0ICogKHEgKyByMSkpOwogCWVsc2UKLQkJdCA9IHRibFtuMl0ubG8gKyB0ICogKHEgKyByMSkgKyAodGJsW24yXS5oaSAtIHR3b21rKTsKKwkJdCA9IFNVTTJQKHRibFtuMl0uaGkgLSB0d29taywgdGJsW24yXS5sbyArIHQgKiAocSArIHIxKSk7CiAJUkVUVVJOSSh0ICogdHdvcGspOwogfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWcuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvY2F0cmlnLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAwOTc3YwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvY2F0cmlnLmMKQEAgLTAsMCArMSw2MzkgQEAKKy8qLQorICogQ29weXJpZ2h0IChjKSAyMDEyIFN0ZXBoZW4gTW9udGdvbWVyeS1TbWl0aCA8c3RlcGhlbkBGcmVlQlNELk9SRz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisjaW5jbHVkZSA8Y29tcGxleC5oPgorI2luY2x1ZGUgPGZsb2F0Lmg+CisKKyNpbmNsdWRlICJtYXRoLmgiCisjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCisKKyN1bmRlZiBpc2luZgorI2RlZmluZSBpc2luZih4KQkoZmFicyh4KSA9PSBJTkZJTklUWSkKKyN1bmRlZiBpc25hbgorI2RlZmluZSBpc25hbih4KQkoKHgpICE9ICh4KSkKKyNkZWZpbmUJcmFpc2VfaW5leGFjdCgpCWRvIHsgdm9sYXRpbGUgZmxvYXQganVuayA9IDEgKyB0aW55OyB9IHdoaWxlKDApCisjdW5kZWYgc2lnbmJpdAorI2RlZmluZSBzaWduYml0KHgpCShfX2J1aWx0aW5fc2lnbmJpdCh4KSkKKworLyogV2UgbmVlZCB0aGF0IERCTF9FUFNJTE9OXjIvMTI4IGlzIGxhcmdlciB0aGFuIEZPVVJfU1FSVF9NSU4uICovCitzdGF0aWMgY29uc3QgZG91YmxlCitBX2Nyb3Nzb3ZlciA9CQkxMCwgLyogSHVsbCBldCBhbCBzdWdnZXN0IDEuNSwgYnV0IDEwIHdvcmtzIGJldHRlciAqLworQl9jcm9zc292ZXIgPQkJMC42NDE3LAkJCS8qIHN1Z2dlc3RlZCBieSBIdWxsIGV0IGFsICovCitGT1VSX1NRUlRfTUlOID0JCTB4MXAtNTA5LAkJLyogPj0gNCAqIHNxcnQoREJMX01JTikgKi8KK1FVQVJURVJfU1FSVF9NQVggPQkweDFwNTA5LAkJLyogPD0gc3FydChEQkxfTUFYKSAvIDQgKi8KK21fZSA9CQkJMi43MTgyODE4Mjg0NTkwNDUyZTAsCS8qICAweDE1YmYwYThiMTQ1NzY5LjBwLTUxICovCittX2xuMiA9CQkJNi45MzE0NzE4MDU1OTk0NTMxZS0xLAkvKiAgMHgxNjJlNDJmZWZhMzllZi4wcC01MyAqLworcGlvMl9oaSA9CQkxLjU3MDc5NjMyNjc5NDg5NjZlMCwJLyogIDB4MTkyMWZiNTQ0NDJkMTguMHAtNTIgKi8KK1JFQ0lQX0VQU0lMT04gPQkJMSAvIERCTF9FUFNJTE9OLAorU1FSVF8zX0VQU0lMT04gPQkyLjU4MDk1NjgyNzk1MTc4NDllLTgsCS8qICAweDFiYjY3YWU4NTg0Y2FhLjBwLTc4ICovCitTUVJUXzZfRVBTSUxPTiA9CTMuNjUwMDI0MTQ5OTg4ODU3MWUtOCwJLyogIDB4MTM5ODhlMTQwOTIxMmUuMHAtNzcgKi8KK1NRUlRfTUlOID0JCTB4MXAtNTExOwkJLyogPj0gc3FydChEQkxfTUlOKSAqLworCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlCitwaW8yX2xvID0JCTYuMTIzMjMzOTk1NzM2NzY1OWUtMTc7CS8qICAweDExYTYyNjMzMTQ1YzA3LjBwLTEwNiAqLworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGZsb2F0Cit0aW55ID0JCQkweDFwLTEwMDsgCisKK3N0YXRpYyBkb3VibGUgY29tcGxleCBjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoZG91YmxlIGNvbXBsZXggeik7CisKKy8qCisgKiBUZXN0aW5nIGluZGljYXRlcyB0aGF0IGFsbCB0aGVzZSBmdW5jdGlvbnMgYXJlIGFjY3VyYXRlIHVwIHRvIDQgVUxQLgorICogVGhlIGZ1bmN0aW9ucyBjYXNpbihoKSBhbmQgY2Fjb3MoaCkgYXJlIGFib3V0IDIuNSB0aW1lcyBzbG93ZXIgdGhhbiBhc2luaC4KKyAqIFRoZSBmdW5jdGlvbnMgY2F0YW4oaCkgYXJlIGEgbGl0dGxlIHVuZGVyIDIgdGltZXMgc2xvd2VyIHRoYW4gYXRhbmguCisgKgorICogVGhlIGNvZGUgZm9yIGNhc2luaCwgY2FzaW4sIGNhY29zLCBhbmQgY2Fjb3NoIGNvbWVzIGZpcnN0LiAgVGhlIGNvZGUgaXMKKyAqIHJhdGhlciBjb21wbGljYXRlZCwgYW5kIHRoZSBmb3VyIGZ1bmN0aW9ucyBhcmUgaGlnaGx5IGludGVyZGVwZW5kZW50LgorICoKKyAqIFRoZSBjb2RlIGZvciBjYXRhbmggYW5kIGNhdGFuIGNvbWVzIGF0IHRoZSBlbmQuICBJdCBpcyBtdWNoIHNpbXBsZXIgdGhhbgorICogdGhlIG90aGVyIGZ1bmN0aW9ucywgYW5kIHRoZSBjb2RlIGZvciB0aGVzZSBjYW4gYmUgZGlzY29ubmVjdGVkIGZyb20gdGhlCisgKiByZXN0IG9mIHRoZSBjb2RlLgorICovCisKKy8qCisgKgkJCT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKgkJCXwgY2FzaW5oLCBjYXNpbiwgY2Fjb3MsIGNhY29zaCB8CisgKgkJCT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKi8KKworLyoKKyAqIFRoZSBhbGdvcml0aG0gaXMgdmVyeSBjbG9zZSB0byB0aGF0IGluICJJbXBsZW1lbnRpbmcgdGhlIGNvbXBsZXggYXJjc2luZQorICogYW5kIGFyY2Nvc2luZSBmdW5jdGlvbnMgdXNpbmcgZXhjZXB0aW9uIGhhbmRsaW5nIiBieSBULiBFLiBIdWxsLCBUaG9tYXMgRi4KKyAqIEZhaXJncmlldmUsIGFuZCBQaW5nIFRhayBQZXRlciBUYW5nLCBwdWJsaXNoZWQgaW4gQUNNIFRyYW5zYWN0aW9ucyBvbgorICogTWF0aGVtYXRpY2FsIFNvZnR3YXJlLCBWb2x1bWUgMjMgSXNzdWUgMywgMTk5NywgUGFnZXMgMjk5LTMzNSwKKyAqIGh0dHA6Ly9kbC5hY20ub3JnL2NpdGF0aW9uLmNmbT9pZD0yNzUzMjQuCisgKgorICogVGhyb3VnaG91dCB3ZSB1c2UgdGhlIGNvbnZlbnRpb24geiA9IHggKyBJKnkuCisgKgorICogY2FzaW5oKHopID0gc2lnbih4KSpsb2coQStzcXJ0KEEqQS0xKSkgKyBJKmFzaW4oQikKKyAqIHdoZXJlCisgKiBBID0gKHx6K0l8ICsgfHotSXwpIC8gMgorICogQiA9ICh8eitJfCAtIHx6LUl8KSAvIDIgPSB5L0EKKyAqCisgKiBUaGVzZSBmb3JtdWxhcyBiZWNvbWUgbnVtZXJpY2FsbHkgdW5zdGFibGU6CisgKiAgIChhKSBmb3IgUmUoY2FzaW5oKHopKSB3aGVuIHogaXMgY2xvc2UgdG8gdGhlIGxpbmUgc2VnbWVudCBbLUksIEldICh0aGF0CisgKiAgICAgICBpcywgUmUoY2FzaW5oKHopKSBpcyBjbG9zZSB0byAwKTsKKyAqICAgKGIpIGZvciBJbShjYXNpbmgoeikpIHdoZW4geiBpcyBjbG9zZSB0byBlaXRoZXIgb2YgdGhlIGludGVydmFscworICogICAgICAgW0ksIEkqaW5maW5pdHkpIG9yICgtSSppbmZpbml0eSwgLUldICh0aGF0IGlzLCB8SW0oY2FzaW5oKHopKXwgaXMKKyAqICAgICAgIGNsb3NlIHRvIFBJLzIpLgorICoKKyAqIFRoZXNlIG51bWVyaWNhbCBwcm9ibGVtcyBhcmUgb3ZlcmNvbWUgYnkgZGVmaW5pbmcKKyAqIGYoYSwgYikgPSAoaHlwb3QoYSwgYikgLSBiKSAvIDIgPSBhKmEgLyAoaHlwb3QoYSwgYikgKyBiKSAvIDIKKyAqIFRoZW4gaWYgQSA8IEFfY3Jvc3NvdmVyLCB3ZSB1c2UKKyAqICAgbG9nKEEgKyBzcXJ0KEEqQS0xKSkgPSBsb2cxcCgoQS0xKSArIHNxcnQoKEEtMSkqKEErMSkpKQorICogICBBLTEgPSBmKHgsIDEreSkgKyBmKHgsIDEteSkKKyAqIGFuZCBpZiBCID4gQl9jcm9zc292ZXIsIHdlIHVzZQorICogICBhc2luKEIpID0gYXRhbjIoeSwgc3FydChBKkEgLSB5KnkpKSA9IGF0YW4yKHksIHNxcnQoKEEreSkqKEEteSkpKQorICogICBBLXkgPSBmKHgsIHkrMSkgKyBmKHgsIHktMSkKKyAqIHdoZXJlIHdpdGhvdXQgbG9zcyBvZiBnZW5lcmFsaXR5IHdlIGhhdmUgYXNzdW1lZCB0aGF0IHggYW5kIHkgYXJlCisgKiBub24tbmVnYXRpdmUuCisgKgorICogTXVjaCBvZiB0aGUgZGlmZmljdWx0eSBjb21lcyBiZWNhdXNlIHRoZSBpbnRlcm1lZGlhdGUgY29tcHV0YXRpb25zIG1heQorICogcHJvZHVjZSBvdmVyZmxvd3Mgb3IgdW5kZXJmbG93cy4gIFRoaXMgaXMgZGVhbHQgd2l0aCBpbiB0aGUgcGFwZXIgYnkgSHVsbAorICogZXQgYWwgYnkgdXNpbmcgZXhjZXB0aW9uIGhhbmRsaW5nLiAgV2UgZG8gdGhpcyBieSBkZXRlY3Rpbmcgd2hlbgorICogY29tcHV0YXRpb25zIHJpc2sgdW5kZXJmbG93IG9yIG92ZXJmbG93LiAgVGhlIGhhcmRlc3QgcGFydCBpcyBoYW5kbGluZyB0aGUKKyAqIHVuZGVyZmxvd3Mgd2hlbiBjb21wdXRpbmcgZihhLCBiKS4KKyAqCisgKiBOb3RlIHRoYXQgdGhlIGZ1bmN0aW9uIGYoYSwgYikgZG9lcyBub3QgYXBwZWFyIGV4cGxpY2l0bHkgaW4gdGhlIHBhcGVyIGJ5CisgKiBIdWxsIGV0IGFsLCBidXQgdGhlIGlkZWEgbWF5IGJlIGZvdW5kIG9uIHBhZ2VzIDMwOCBhbmQgMzA5LiAgSW50cm9kdWNpbmcgdGhlCisgKiBmdW5jdGlvbiBmKGEsIGIpIGFsbG93cyB1cyB0byBjb25jZW50cmF0ZSBtYW55IG9mIHRoZSBjbGV2ZXIgdHJpY2tzIGluIHRoaXMKKyAqIHBhcGVyIGludG8gb25lIGZ1bmN0aW9uLgorICovCisKKy8qCisgKiBGdW5jdGlvbiBmKGEsIGIsIGh5cG90X2FfYikgPSAoaHlwb3QoYSwgYikgLSBiKSAvIDIuCisgKiBQYXNzIGh5cG90KGEsIGIpIGFzIHRoZSB0aGlyZCBhcmd1bWVudC4KKyAqLworc3RhdGljIGlubGluZSBkb3VibGUKK2YoZG91YmxlIGEsIGRvdWJsZSBiLCBkb3VibGUgaHlwb3RfYV9iKQoreworCWlmIChiIDwgMCkKKwkJcmV0dXJuICgoaHlwb3RfYV9iIC0gYikgLyAyKTsKKwlpZiAoYiA9PSAwKQorCQlyZXR1cm4gKGEgLyAyKTsKKwlyZXR1cm4gKGEgKiBhIC8gKGh5cG90X2FfYiArIGIpIC8gMik7Cit9CisKKy8qCisgKiBBbGwgdGhlIGhhcmQgd29yayBpcyBjb250YWluZWQgaW4gdGhpcyBmdW5jdGlvbi4KKyAqIHggYW5kIHkgYXJlIGFzc3VtZWQgcG9zaXRpdmUgb3IgemVybywgYW5kIGxlc3MgdGhhbiBSRUNJUF9FUFNJTE9OLgorICogVXBvbiByZXR1cm46CisgKiByeCA9IFJlKGNhc2luaCh6KSkgPSAtSW0oY2Fjb3MoeSArIEkqeCkpLgorICogQl9pc191c2FibGUgaXMgc2V0IHRvIDEgaWYgdGhlIHZhbHVlIG9mIEIgaXMgdXNhYmxlLgorICogSWYgQl9pc191c2FibGUgaXMgc2V0IHRvIDAsIHNxcnRfQTJteTIgPSBzcXJ0KEEqQSAtIHkqeSksIGFuZCBuZXdfeSA9IHkuCisgKiBJZiByZXR1cm5pbmcgc3FydF9BMm15MiBoYXMgcG90ZW50aWFsIHRvIHJlc3VsdCBpbiBhbiB1bmRlcmZsb3csIGl0IGlzCisgKiByZXNjYWxlZCwgYW5kIG5ld195IGlzIHNpbWlsYXJseSByZXNjYWxlZC4KKyAqLworc3RhdGljIGlubGluZSB2b2lkCitkb19oYXJkX3dvcmsoZG91YmxlIHgsIGRvdWJsZSB5LCBkb3VibGUgKnJ4LCBpbnQgKkJfaXNfdXNhYmxlLCBkb3VibGUgKkIsCisgICAgZG91YmxlICpzcXJ0X0EybXkyLCBkb3VibGUgKm5ld195KQoreworCWRvdWJsZSBSLCBTLCBBOyAvKiBBLCBCLCBSLCBhbmQgUyBhcmUgYXMgaW4gSHVsbCBldCBhbC4gKi8KKwlkb3VibGUgQW0xLCBBbXk7IC8qIEEtMSwgQS15LiAqLworCisJUiA9IGh5cG90KHgsIHkgKyAxKTsJCS8qIHx6K0l8ICovCisJUyA9IGh5cG90KHgsIHkgLSAxKTsJCS8qIHx6LUl8ICovCisKKwkvKiBBID0gKHx6K0l8ICsgfHotSXwpIC8gMiAqLworCUEgPSAoUiArIFMpIC8gMjsKKwkvKgorCSAqIE1hdGhlbWF0aWNhbGx5IEEgPj0gMS4gIFRoZXJlIGlzIGEgc21hbGwgY2hhbmNlIHRoYXQgdGhpcyB3aWxsIG5vdAorCSAqIGJlIHNvIGJlY2F1c2Ugb2Ygcm91bmRpbmcgZXJyb3JzLiAgU28gd2Ugd2lsbCBtYWtlIGNlcnRhaW4gaXQgaXMKKwkgKiBzby4KKwkgKi8KKwlpZiAoQSA8IDEpCisJCUEgPSAxOworCisJaWYgKEEgPCBBX2Nyb3Nzb3ZlcikgeworCQkvKgorCQkgKiBBbTEgPSBmcCArIGZtLCB3aGVyZSBmcCA9IGYoeCwgMSt5KSwgYW5kIGZtID0gZih4LCAxLXkpLgorCQkgKiByeCA9IGxvZzFwKEFtMSArIHNxcnQoQW0xKihBKzEpKSkKKwkJICovCisJCWlmICh5ID09IDEgJiYgeCA8IERCTF9FUFNJTE9OICogREJMX0VQU0lMT04gLyAxMjgpIHsKKwkJCS8qCisJCQkgKiBmcCBpcyBvZiBvcmRlciB4XjIsIGFuZCBmbSA9IHgvMi4KKwkJCSAqIEEgPSAxIChpbmV4YWN0bHkpLgorCQkJICovCisJCQkqcnggPSBzcXJ0KHgpOworCQl9IGVsc2UgaWYgKHggPj0gREJMX0VQU0lMT04gKiBmYWJzKHkgLSAxKSkgeworCQkJLyoKKwkJCSAqIFVuZGVyZmxvdyB3aWxsIG5vdCBvY2N1ciBiZWNhdXNlCisJCQkgKiB4ID49IERCTF9FUFNJTE9OXjIvMTI4ID49IEZPVVJfU1FSVF9NSU4KKwkJCSAqLworCQkJQW0xID0gZih4LCAxICsgeSwgUikgKyBmKHgsIDEgLSB5LCBTKTsKKwkJCSpyeCA9IGxvZzFwKEFtMSArIHNxcnQoQW0xICogKEEgKyAxKSkpOworCQl9IGVsc2UgaWYgKHkgPCAxKSB7CisJCQkvKgorCQkJICogZnAgPSB4KngvKDEreSkvNCwgZm0gPSB4KngvKDEteSkvNCwgYW5kCisJCQkgKiBBID0gMSAoaW5leGFjdGx5KS4KKwkJCSAqLworCQkJKnJ4ID0geCAvIHNxcnQoKDEgLSB5KSAqICgxICsgeSkpOworCQl9IGVsc2UgewkJLyogaWYgKHkgPiAxKSAqLworCQkJLyoKKwkJCSAqIEEtMSA9IHktMSAoaW5leGFjdGx5KS4KKwkJCSAqLworCQkJKnJ4ID0gbG9nMXAoKHkgLSAxKSArIHNxcnQoKHkgLSAxKSAqICh5ICsgMSkpKTsKKwkJfQorCX0gZWxzZSB7CisJCSpyeCA9IGxvZyhBICsgc3FydChBICogQSAtIDEpKTsKKwl9CisKKwkqbmV3X3kgPSB5OworCisJaWYgKHkgPCBGT1VSX1NRUlRfTUlOKSB7CisJCS8qCisJCSAqIEF2b2lkIGEgcG9zc2libGUgdW5kZXJmbG93IGNhdXNlZCBieSB5L0EuICBGb3IgY2FzaW5oIHRoaXMKKwkJICogd291bGQgYmUgbGVnaXRpbWF0ZSwgYnV0IHdpbGwgYmUgcGlja2VkIHVwIGJ5IGludm9raW5nIGF0YW4yCisJCSAqIGxhdGVyIG9uLiAgRm9yIGNhY29zIHRoaXMgd291bGQgbm90IGJlIGxlZ2l0aW1hdGUuCisJCSAqLworCQkqQl9pc191c2FibGUgPSAwOworCQkqc3FydF9BMm15MiA9IEEgKiAoMiAvIERCTF9FUFNJTE9OKTsKKwkJKm5ld195ID0geSAqICgyIC8gREJMX0VQU0lMT04pOworCQlyZXR1cm47CisJfQorCisJLyogQiA9ICh8eitJfCAtIHx6LUl8KSAvIDIgPSB5L0EgKi8KKwkqQiA9IHkgLyBBOworCSpCX2lzX3VzYWJsZSA9IDE7CisKKwlpZiAoKkIgPiBCX2Nyb3Nzb3ZlcikgeworCQkqQl9pc191c2FibGUgPSAwOworCQkvKgorCQkgKiBBbXkgPSBmcCArIGZtLCB3aGVyZSBmcCA9IGYoeCwgeSsxKSwgYW5kIGZtID0gZih4LCB5LTEpLgorCQkgKiBzcXJ0X0EybXkyID0gc3FydChBbXkqKEEreSkpCisJCSAqLworCQlpZiAoeSA9PSAxICYmIHggPCBEQkxfRVBTSUxPTiAvIDEyOCkgeworCQkJLyoKKwkJCSAqIGZwIGlzIG9mIG9yZGVyIHheMiwgYW5kIGZtID0geC8yLgorCQkJICogQSA9IDEgKGluZXhhY3RseSkuCisJCQkgKi8KKwkJCSpzcXJ0X0EybXkyID0gc3FydCh4KSAqIHNxcnQoKEEgKyB5KSAvIDIpOworCQl9IGVsc2UgaWYgKHggPj0gREJMX0VQU0lMT04gKiBmYWJzKHkgLSAxKSkgeworCQkJLyoKKwkJCSAqIFVuZGVyZmxvdyB3aWxsIG5vdCBvY2N1ciBiZWNhdXNlCisJCQkgKiB4ID49IERCTF9FUFNJTE9OLzEyOCA+PSBGT1VSX1NRUlRfTUlOCisJCQkgKiBhbmQKKwkJCSAqIHggPj0gREJMX0VQU0lMT05eMiA+PSBGT1VSX1NRUlRfTUlOCisJCQkgKi8KKwkJCUFteSA9IGYoeCwgeSArIDEsIFIpICsgZih4LCB5IC0gMSwgUyk7CisJCQkqc3FydF9BMm15MiA9IHNxcnQoQW15ICogKEEgKyB5KSk7CisJCX0gZWxzZSBpZiAoeSA+IDEpIHsKKwkJCS8qCisJCQkgKiBmcCA9IHgqeC8oeSsxKS80LCBmbSA9IHgqeC8oeS0xKS80LCBhbmQKKwkJCSAqIEEgPSB5IChpbmV4YWN0bHkpLgorCQkJICoKKwkJCSAqIHkgPCBSRUNJUF9FUFNJTE9OLiAgU28gdGhlIGZvbGxvd2luZworCQkJICogc2NhbGluZyBzaG91bGQgYXZvaWQgYW55IHVuZGVyZmxvdyBwcm9ibGVtcy4KKwkJCSAqLworCQkJKnNxcnRfQTJteTIgPSB4ICogKDQgLyBEQkxfRVBTSUxPTiAvIERCTF9FUFNJTE9OKSAqIHkgLworCQkJICAgIHNxcnQoKHkgKyAxKSAqICh5IC0gMSkpOworCQkJKm5ld195ID0geSAqICg0IC8gREJMX0VQU0lMT04gLyBEQkxfRVBTSUxPTik7CisJCX0gZWxzZSB7CQkvKiBpZiAoeSA8IDEpICovCisJCQkvKgorCQkJICogZm0gPSAxLXkgPj0gREJMX0VQU0lMT04sIGZwIGlzIG9mIG9yZGVyIHheMiwgYW5kCisJCQkgKiBBID0gMSAoaW5leGFjdGx5KS4KKwkJCSAqLworCQkJKnNxcnRfQTJteTIgPSBzcXJ0KCgxIC0geSkgKiAoMSArIHkpKTsKKwkJfQorCX0KK30KKworLyoKKyAqIGNhc2luaCh6KSA9IHogKyBPKHpeMykgICBhcyB6IC0+IDAKKyAqCisgKiBjYXNpbmgoeikgPSBzaWduKHgpKmNsb2coc2lnbih4KSp6KSArIE8oMS96XjIpICAgYXMgeiAtPiBpbmZpbml0eQorICogVGhlIGFib3ZlIGZvcm11bGEgd29ya3MgZm9yIHRoZSBpbWFnaW5hcnkgcGFydCBhcyB3ZWxsLCBiZWNhdXNlCisgKiBJbShjYXNpbmgoeikpID0gc2lnbih4KSphdGFuMihzaWduKHgpKnksIGZhYnMoeCkpICsgTyh5L3peMykKKyAqICAgIGFzIHogLT4gaW5maW5pdHksIHVuaWZvcm1seSBpbiB5CisgKi8KK2RvdWJsZSBjb21wbGV4CitjYXNpbmgoZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgeCwgeSwgYXgsIGF5LCByeCwgcnksIEIsIHNxcnRfQTJteTIsIG5ld195OworCWludCBCX2lzX3VzYWJsZTsKKwlkb3VibGUgY29tcGxleCB3OworCisJeCA9IGNyZWFsKHopOworCXkgPSBjaW1hZyh6KTsKKwlheCA9IGZhYnMoeCk7CisJYXkgPSBmYWJzKHkpOworCisJaWYgKGlzbmFuKHgpIHx8IGlzbmFuKHkpKSB7CisJCS8qIGNhc2luaCgrLUluZiArIEkqTmFOKSA9ICstSW5mICsgSSpOYU4gKi8KKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFjayh4LCB5ICsgeSkpOworCQkvKiBjYXNpbmgoTmFOICsgSSorLUluZikgPSBvcHQoKy0pSW5mICsgSSpOYU4gKi8KKwkJaWYgKGlzaW5mKHkpKQorCQkJcmV0dXJuIChjcGFjayh5LCB4ICsgeCkpOworCQkvKiBjYXNpbmgoTmFOICsgSSowKSA9IE5hTiArIEkqMCAqLworCQlpZiAoeSA9PSAwKQorCQkJcmV0dXJuIChjcGFjayh4ICsgeCwgeSkpOworCQkvKgorCQkgKiBBbGwgb3RoZXIgY2FzZXMgaW52b2x2aW5nIE5hTiByZXR1cm4gTmFOICsgSSpOYU4uCisJCSAqIEM5OSBsZWF2ZXMgaXQgb3B0aW9uYWwgd2hldGhlciB0byByYWlzZSBpbnZhbGlkIGlmIG9uZSBvZgorCQkgKiB0aGUgYXJndW1lbnRzIGlzIG5vdCBOYU4sIHNvIHdlIG9wdCBub3QgdG8gcmFpc2UgaXQuCisJCSAqLworCQlyZXR1cm4gKGNwYWNrKHggKyAwLjBMICsgKHkgKyAwKSwgeCArIDAuMEwgKyAoeSArIDApKSk7CisJfQorCisJaWYgKGF4ID4gUkVDSVBfRVBTSUxPTiB8fCBheSA+IFJFQ0lQX0VQU0lMT04pIHsKKwkJLyogY2xvZy4uLigpIHdpbGwgcmFpc2UgaW5leGFjdCB1bmxlc3MgeCBvciB5IGlzIGluZmluaXRlLiAqLworCQlpZiAoc2lnbmJpdCh4KSA9PSAwKQorCQkJdyA9IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyh6KSArIG1fbG4yOworCQllbHNlCisJCQl3ID0gY2xvZ19mb3JfbGFyZ2VfdmFsdWVzKC16KSArIG1fbG4yOworCQlyZXR1cm4gKGNwYWNrKGNvcHlzaWduKGNyZWFsKHcpLCB4KSwgY29weXNpZ24oY2ltYWcodyksIHkpKSk7CisJfQorCisJLyogQXZvaWQgc3B1cmlvdXNseSByYWlzaW5nIGluZXhhY3QgZm9yIHogPSAwLiAqLworCWlmICh4ID09IDAgJiYgeSA9PSAwKQorCQlyZXR1cm4gKHopOworCisJLyogQWxsIHJlbWFpbmluZyBjYXNlcyBhcmUgaW5leGFjdC4gKi8KKwlyYWlzZV9pbmV4YWN0KCk7CisKKwlpZiAoYXggPCBTUVJUXzZfRVBTSUxPTiAvIDQgJiYgYXkgPCBTUVJUXzZfRVBTSUxPTiAvIDQpCisJCXJldHVybiAoeik7CisKKwlkb19oYXJkX3dvcmsoYXgsIGF5LCAmcngsICZCX2lzX3VzYWJsZSwgJkIsICZzcXJ0X0EybXkyLCAmbmV3X3kpOworCWlmIChCX2lzX3VzYWJsZSkKKwkJcnkgPSBhc2luKEIpOworCWVsc2UKKwkJcnkgPSBhdGFuMihuZXdfeSwgc3FydF9BMm15Mik7CisJcmV0dXJuIChjcGFjayhjb3B5c2lnbihyeCwgeCksIGNvcHlzaWduKHJ5LCB5KSkpOworfQorCisvKgorICogY2FzaW4oeikgPSByZXZlcnNlKGNhc2luaChyZXZlcnNlKHopKSkKKyAqIHdoZXJlIHJldmVyc2UoeCArIEkqeSkgPSB5ICsgSSp4ID0gSSpjb25qKHopLgorICovCitkb3VibGUgY29tcGxleAorY2FzaW4oZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgY29tcGxleCB3ID0gY2FzaW5oKGNwYWNrKGNpbWFnKHopLCBjcmVhbCh6KSkpOworCisJcmV0dXJuIChjcGFjayhjaW1hZyh3KSwgY3JlYWwodykpKTsKK30KKworLyoKKyAqIGNhY29zKHopID0gUEkvMiAtIGNhc2luKHopCisgKiBidXQgZG8gdGhlIGNvbXB1dGF0aW9uIGNhcmVmdWxseSBzbyBjYWNvcyh6KSBpcyBhY2N1cmF0ZSB3aGVuIHogaXMKKyAqIGNsb3NlIHRvIDEuCisgKgorICogY2Fjb3MoeikgPSBQSS8yIC0geiArIE8oel4zKSAgIGFzIHogLT4gMAorICoKKyAqIGNhY29zKHopID0gLXNpZ24oeSkqSSpjbG9nKHopICsgTygxL3peMikgICBhcyB6IC0+IGluZmluaXR5CisgKiBUaGUgYWJvdmUgZm9ybXVsYSB3b3JrcyBmb3IgdGhlIHJlYWwgcGFydCBhcyB3ZWxsLCBiZWNhdXNlCisgKiBSZShjYWNvcyh6KSkgPSBhdGFuMihmYWJzKHkpLCB4KSArIE8oeS96XjMpCisgKiAgICBhcyB6IC0+IGluZmluaXR5LCB1bmlmb3JtbHkgaW4geQorICovCitkb3VibGUgY29tcGxleAorY2Fjb3MoZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgeCwgeSwgYXgsIGF5LCByeCwgcnksIEIsIHNxcnRfQTJteDIsIG5ld194OworCWludCBzeCwgc3k7CisJaW50IEJfaXNfdXNhYmxlOworCWRvdWJsZSBjb21wbGV4IHc7CisKKwl4ID0gY3JlYWwoeik7CisJeSA9IGNpbWFnKHopOworCXN4ID0gc2lnbmJpdCh4KTsKKwlzeSA9IHNpZ25iaXQoeSk7CisJYXggPSBmYWJzKHgpOworCWF5ID0gZmFicyh5KTsKKworCWlmIChpc25hbih4KSB8fCBpc25hbih5KSkgeworCQkvKiBjYWNvcygrLUluZiArIEkqTmFOKSA9IE5hTiArIEkqb3B0KC0pSW5mICovCisJCWlmIChpc2luZih4KSkKKwkJCXJldHVybiAoY3BhY2soeSArIHksIC1JTkZJTklUWSkpOworCQkvKiBjYWNvcyhOYU4gKyBJKistSW5mKSA9IE5hTiArIEkqLStJbmYgKi8KKwkJaWYgKGlzaW5mKHkpKQorCQkJcmV0dXJuIChjcGFjayh4ICsgeCwgLXkpKTsKKwkJLyogY2Fjb3MoMCArIEkqTmFOKSA9IFBJLzIgKyBJKk5hTiB3aXRoIGluZXhhY3QgKi8KKwkJaWYgKHggPT0gMCkKKwkJCXJldHVybiAoY3BhY2socGlvMl9oaSArIHBpbzJfbG8sIHkgKyB5KSk7CisJCS8qCisJCSAqIEFsbCBvdGhlciBjYXNlcyBpbnZvbHZpbmcgTmFOIHJldHVybiBOYU4gKyBJKk5hTi4KKwkJICogQzk5IGxlYXZlcyBpdCBvcHRpb25hbCB3aGV0aGVyIHRvIHJhaXNlIGludmFsaWQgaWYgb25lIG9mCisJCSAqIHRoZSBhcmd1bWVudHMgaXMgbm90IE5hTiwgc28gd2Ugb3B0IG5vdCB0byByYWlzZSBpdC4KKwkJICovCisJCXJldHVybiAoY3BhY2soeCArIDAuMEwgKyAoeSArIDApLCB4ICsgMC4wTCArICh5ICsgMCkpKTsKKwl9CisKKwlpZiAoYXggPiBSRUNJUF9FUFNJTE9OIHx8IGF5ID4gUkVDSVBfRVBTSUxPTikgeworCQkvKiBjbG9nLi4uKCkgd2lsbCByYWlzZSBpbmV4YWN0IHVubGVzcyB4IG9yIHkgaXMgaW5maW5pdGUuICovCisJCXcgPSBjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoeik7CisJCXJ4ID0gZmFicyhjaW1hZyh3KSk7CisJCXJ5ID0gY3JlYWwodykgKyBtX2xuMjsKKwkJaWYgKHN5ID09IDApCisJCQlyeSA9IC1yeTsKKwkJcmV0dXJuIChjcGFjayhyeCwgcnkpKTsKKwl9CisKKwkvKiBBdm9pZCBzcHVyaW91c2x5IHJhaXNpbmcgaW5leGFjdCBmb3IgeiA9IDEuICovCisJaWYgKHggPT0gMSAmJiB5ID09IDApCisJCXJldHVybiAoY3BhY2soMCwgLXkpKTsKKworCS8qIEFsbCByZW1haW5pbmcgY2FzZXMgYXJlIGluZXhhY3QuICovCisJcmFpc2VfaW5leGFjdCgpOworCisJaWYgKGF4IDwgU1FSVF82X0VQU0lMT04gLyA0ICYmIGF5IDwgU1FSVF82X0VQU0lMT04gLyA0KQorCQlyZXR1cm4gKGNwYWNrKHBpbzJfaGkgLSAoeCAtIHBpbzJfbG8pLCAteSkpOworCisJZG9faGFyZF93b3JrKGF5LCBheCwgJnJ5LCAmQl9pc191c2FibGUsICZCLCAmc3FydF9BMm14MiwgJm5ld194KTsKKwlpZiAoQl9pc191c2FibGUpIHsKKwkJaWYgKHN4ID09IDApCisJCQlyeCA9IGFjb3MoQik7CisJCWVsc2UKKwkJCXJ4ID0gYWNvcygtQik7CisJfSBlbHNlIHsKKwkJaWYgKHN4ID09IDApCisJCQlyeCA9IGF0YW4yKHNxcnRfQTJteDIsIG5ld194KTsKKwkJZWxzZQorCQkJcnggPSBhdGFuMihzcXJ0X0EybXgyLCAtbmV3X3gpOworCX0KKwlpZiAoc3kgPT0gMCkKKwkJcnkgPSAtcnk7CisJcmV0dXJuIChjcGFjayhyeCwgcnkpKTsKK30KKworLyoKKyAqIGNhY29zaCh6KSA9IEkqY2Fjb3Moeikgb3IgLUkqY2Fjb3MoeikKKyAqIHdoZXJlIHRoZSBzaWduIGlzIGNob3NlbiBzbyBSZShjYWNvc2goeikpID49IDAuCisgKi8KK2RvdWJsZSBjb21wbGV4CitjYWNvc2goZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgY29tcGxleCB3OworCWRvdWJsZSByeCwgcnk7CisKKwl3ID0gY2Fjb3Moeik7CisJcnggPSBjcmVhbCh3KTsKKwlyeSA9IGNpbWFnKHcpOworCS8qIGNhY29zaChOYU4gKyBJKk5hTikgPSBOYU4gKyBJKk5hTiAqLworCWlmIChpc25hbihyeCkgJiYgaXNuYW4ocnkpKQorCQlyZXR1cm4gKGNwYWNrKHJ5LCByeCkpOworCS8qIGNhY29zaChOYU4gKyBJKistSW5mKSA9ICtJbmYgKyBJKk5hTiAqLworCS8qIGNhY29zaCgrLUluZiArIEkqTmFOKSA9ICtJbmYgKyBJKk5hTiAqLworCWlmIChpc25hbihyeCkpCisJCXJldHVybiAoY3BhY2soZmFicyhyeSksIHJ4KSk7CisJLyogY2Fjb3NoKDAgKyBJKk5hTikgPSBOYU4gKyBJKk5hTiAqLworCWlmIChpc25hbihyeSkpCisJCXJldHVybiAoY3BhY2socnksIHJ5KSk7CisJcmV0dXJuIChjcGFjayhmYWJzKHJ5KSwgY29weXNpZ24ocngsIGNpbWFnKHopKSkpOworfQorCisvKgorICogT3B0aW1pemVkIHZlcnNpb24gb2YgY2xvZygpIGZvciB8enwgZmluaXRlIGFuZCBsYXJnZXIgdGhhbiB+UkVDSVBfRVBTSUxPTi4KKyAqLworc3RhdGljIGRvdWJsZSBjb21wbGV4CitjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgeCwgeTsKKwlkb3VibGUgYXgsIGF5LCB0OworCisJeCA9IGNyZWFsKHopOworCXkgPSBjaW1hZyh6KTsKKwlheCA9IGZhYnMoeCk7CisJYXkgPSBmYWJzKHkpOworCWlmIChheCA8IGF5KSB7CisJCXQgPSBheDsKKwkJYXggPSBheTsKKwkJYXkgPSB0OworCX0KKworCS8qCisJICogQXZvaWQgb3ZlcmZsb3cgaW4gaHlwb3QoKSB3aGVuIHggYW5kIHkgYXJlIGJvdGggdmVyeSBsYXJnZS4KKwkgKiBEaXZpZGUgeCBhbmQgeSBieSBFLCBhbmQgdGhlbiBhZGQgMSB0byB0aGUgbG9nYXJpdGhtLiAgVGhpcyBkZXBlbmRzCisJICogb24gRSBiZWluZyBsYXJnZXIgdGhhbiBzcXJ0KDIpLgorCSAqIERpdmlkaW5nIGJ5IEUgY2F1c2VzIGFuIGluc2lnbmlmaWNhbnQgbG9zcyBvZiBhY2N1cmFjeTsgaG93ZXZlcgorCSAqIHRoaXMgbWV0aG9kIGlzIHN0aWxsIHBvb3Igc2luY2UgaXQgaXMgdW5lY2Nlc3NhcmlseSBzbG93LgorCSAqLworCWlmIChheCA+IERCTF9NQVggLyAyKQorCQlyZXR1cm4gKGNwYWNrKGxvZyhoeXBvdCh4IC8gbV9lLCB5IC8gbV9lKSkgKyAxLCBhdGFuMih5LCB4KSkpOworCisJLyoKKwkgKiBBdm9pZCBvdmVyZmxvdyB3aGVuIHggb3IgeSBpcyBsYXJnZS4gIEF2b2lkIHVuZGVyZmxvdyB3aGVuIHggb3IKKwkgKiB5IGlzIHNtYWxsLgorCSAqLworCWlmIChheCA+IFFVQVJURVJfU1FSVF9NQVggfHwgYXkgPCBTUVJUX01JTikKKwkJcmV0dXJuIChjcGFjayhsb2coaHlwb3QoeCwgeSkpLCBhdGFuMih5LCB4KSkpOworCisJcmV0dXJuIChjcGFjayhsb2coYXggKiBheCArIGF5ICogYXkpIC8gMiwgYXRhbjIoeSwgeCkpKTsKK30KKworLyoKKyAqCQkJCT09PT09PT09PT09PT09PT09CisgKgkJCQl8IGNhdGFuaCwgY2F0YW4gfAorICoJCQkJPT09PT09PT09PT09PT09PT0KKyAqLworCisvKgorICogc3VtX3NxdWFyZXMoeCx5KSA9IHgqeCArIHkqeSAob3IganVzdCB4KnggaWYgeSp5IHdvdWxkIHVuZGVyZmxvdykuCisgKiBBc3N1bWVzIHgqeCBhbmQgeSp5IHdpbGwgbm90IG92ZXJmbG93LgorICogQXNzdW1lcyB4IGFuZCB5IGFyZSBmaW5pdGUuCisgKiBBc3N1bWVzIHkgaXMgbm9uLW5lZ2F0aXZlLgorICogQXNzdW1lcyBmYWJzKHgpID49IERCTF9FUFNJTE9OLgorICovCitzdGF0aWMgaW5saW5lIGRvdWJsZQorc3VtX3NxdWFyZXMoZG91YmxlIHgsIGRvdWJsZSB5KQoreworCisJLyogQXZvaWQgdW5kZXJmbG93IHdoZW4geSBpcyBzbWFsbC4gKi8KKwlpZiAoeSA8IFNRUlRfTUlOKQorCQlyZXR1cm4gKHggKiB4KTsKKworCXJldHVybiAoeCAqIHggKyB5ICogeSk7Cit9CisKKy8qCisgKiByZWFsX3BhcnRfcmVjaXByb2NhbCh4LCB5KSA9IFJlKDEvKHgrSSp5KSkgPSB4Lyh4KnggKyB5KnkpLgorICogQXNzdW1lcyB4IGFuZCB5IGFyZSBub3QgTmFOLCBhbmQgb25lIG9mIHggYW5kIHkgaXMgbGFyZ2VyIHRoYW4KKyAqIFJFQ0lQX0VQU0lMT04uICBXZSBhdm9pZCB1bndhcnJhbnRlZCB1bmRlcmZsb3cuICBJdCBpcyBpbXBvcnRhbnQgdG8gbm90IHVzZQorICogdGhlIGNvZGUgY3JlYWwoMS96KSwgYmVjYXVzZSB0aGUgaW1hZ2luYXJ5IHBhcnQgbWF5IHByb2R1Y2UgYW4gdW53YW50ZWQKKyAqIHVuZGVyZmxvdy4KKyAqIFRoaXMgaXMgb25seSBjYWxsZWQgaW4gYSBjb250ZXh0IHdoZXJlIGluZXhhY3QgaXMgYWx3YXlzIHJhaXNlZCBiZWZvcmUKKyAqIHRoZSBjYWxsLCBzbyBubyBlZmZvcnQgaXMgbWFkZSB0byBhdm9pZCBvciBmb3JjZSBpbmV4YWN0LgorICovCitzdGF0aWMgaW5saW5lIGRvdWJsZQorcmVhbF9wYXJ0X3JlY2lwcm9jYWwoZG91YmxlIHgsIGRvdWJsZSB5KQoreworCWRvdWJsZSBzY2FsZTsKKwl1aW50MzJfdCBoeCwgaHk7CisJaW50MzJfdCBpeCwgaXk7CisKKwkvKgorCSAqIFRoaXMgY29kZSBpcyBpbnNwaXJlZCBieSB0aGUgQzk5IGRvY3VtZW50IG4xMTI0LnBkZiwgU2VjdGlvbiBHLjUuMSwKKwkgKiBleGFtcGxlIDIuCisJICovCisJR0VUX0hJR0hfV09SRChoeCwgeCk7CisJaXggPSBoeCAmIDB4N2ZmMDAwMDA7CisJR0VUX0hJR0hfV09SRChoeSwgeSk7CisJaXkgPSBoeSAmIDB4N2ZmMDAwMDA7CisjZGVmaW5lCUJJQVMJKERCTF9NQVhfRVhQIC0gMSkKKy8qIFhYWCBtb3JlIGd1YXJkIGRpZ2l0cyBhcmUgdXNlZnVsIGlmZiB0aGVyZSBpcyBleHRyYSBwcmVjaXNpb24uICovCisjZGVmaW5lCUNVVE9GRgkoREJMX01BTlRfRElHIC8gMiArIDEpCS8qIGp1c3QgaGFsZiBvciAxIGd1YXJkIGRpZ2l0ICovCisJaWYgKGl4IC0gaXkgPj0gQ1VUT0ZGIDw8IDIwIHx8IGlzaW5mKHgpKQorCQlyZXR1cm4gKDEgLyB4KTsJCS8qICstSW5mIC0+ICstMCBpcyBzcGVjaWFsICovCisJaWYgKGl5IC0gaXggPj0gQ1VUT0ZGIDw8IDIwKQorCQlyZXR1cm4gKHggLyB5IC8geSk7CS8qIHNob3VsZCBhdm9pZCBkb3VibGUgZGl2LCBidXQgaGFyZCAqLworCWlmIChpeCA8PSAoQklBUyArIERCTF9NQVhfRVhQIC8gMiAtIENVVE9GRikgPDwgMjApCisJCXJldHVybiAoeCAvICh4ICogeCArIHkgKiB5KSk7CisJc2NhbGUgPSAxOworCVNFVF9ISUdIX1dPUkQoc2NhbGUsIDB4N2ZmMDAwMDAgLSBpeCk7CS8qIDIqKigxLWlsb2diKHgpKSAqLworCXggKj0gc2NhbGU7CisJeSAqPSBzY2FsZTsKKwlyZXR1cm4gKHggLyAoeCAqIHggKyB5ICogeSkgKiBzY2FsZSk7Cit9CisKKy8qCisgKiBjYXRhbmgoeikgPSBsb2coKDEreikvKDEteikpIC8gMgorICogICAgICAgICAgID0gbG9nMXAoNCp4IC8gfHotMXxeMikgLyA0CisgKiAgICAgICAgICAgICArIEkgKiBhdGFuMigyKnksICgxLXgpKigxK3gpLXkqeSkgLyAyCisgKgorICogY2F0YW5oKHopID0geiArIE8oel4zKSAgIGFzIHogLT4gMAorICoKKyAqIGNhdGFuaCh6KSA9IDEveiArIHNpZ24oeSkqSSpQSS8yICsgTygxL3peMykgICBhcyB6IC0+IGluZmluaXR5CisgKiBUaGUgYWJvdmUgZm9ybXVsYSB3b3JrcyBmb3IgdGhlIHJlYWwgcGFydCBhcyB3ZWxsLCBiZWNhdXNlCisgKiBSZShjYXRhbmgoeikpID0geC98enxeMiArIE8oeC96XjQpCisgKiAgICBhcyB6IC0+IGluZmluaXR5LCB1bmlmb3JtbHkgaW4geAorICovCitkb3VibGUgY29tcGxleAorY2F0YW5oKGRvdWJsZSBjb21wbGV4IHopCit7CisJZG91YmxlIHgsIHksIGF4LCBheSwgcngsIHJ5OworCisJeCA9IGNyZWFsKHopOworCXkgPSBjaW1hZyh6KTsKKwlheCA9IGZhYnMoeCk7CisJYXkgPSBmYWJzKHkpOworCisJLyogVGhpcyBoZWxwcyBoYW5kbGUgbWFueSBjYXNlcy4gKi8KKwlpZiAoeSA9PSAwICYmIGF4IDw9IDEpCisJCXJldHVybiAoY3BhY2soYXRhbmgoeCksIHkpKTsKKworCS8qIFRvIGVuc3VyZSB0aGUgc2FtZSBhY2N1cmFjeSBhcyBhdGFuKCksIGFuZCB0byBmaWx0ZXIgb3V0IHogPSAwLiAqLworCWlmICh4ID09IDApCisJCXJldHVybiAoY3BhY2soeCwgYXRhbih5KSkpOworCisJaWYgKGlzbmFuKHgpIHx8IGlzbmFuKHkpKSB7CisJCS8qIGNhdGFuaCgrLUluZiArIEkqTmFOKSA9ICstMCArIEkqTmFOICovCisJCWlmIChpc2luZih4KSkKKwkJCXJldHVybiAoY3BhY2soY29weXNpZ24oMCwgeCksIHkgKyB5KSk7CisJCS8qIGNhdGFuaChOYU4gKyBJKistSW5mKSA9IHNpZ24oTmFOKTAgKyBJKistUEkvMiAqLworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrKGNvcHlzaWduKDAsIHgpLAorCQkJICAgIGNvcHlzaWduKHBpbzJfaGkgKyBwaW8yX2xvLCB5KSkpOworCQkvKgorCQkgKiBBbGwgb3RoZXIgY2FzZXMgaW52b2x2aW5nIE5hTiByZXR1cm4gTmFOICsgSSpOYU4uCisJCSAqIEM5OSBsZWF2ZXMgaXQgb3B0aW9uYWwgd2hldGhlciB0byByYWlzZSBpbnZhbGlkIGlmIG9uZSBvZgorCQkgKiB0aGUgYXJndW1lbnRzIGlzIG5vdCBOYU4sIHNvIHdlIG9wdCBub3QgdG8gcmFpc2UgaXQuCisJCSAqLworCQlyZXR1cm4gKGNwYWNrKHggKyAwLjBMICsgKHkgKyAwKSwgeCArIDAuMEwgKyAoeSArIDApKSk7CisJfQorCisJaWYgKGF4ID4gUkVDSVBfRVBTSUxPTiB8fCBheSA+IFJFQ0lQX0VQU0lMT04pCisJCXJldHVybiAoY3BhY2socmVhbF9wYXJ0X3JlY2lwcm9jYWwoeCwgeSksCisJCSAgICBjb3B5c2lnbihwaW8yX2hpICsgcGlvMl9sbywgeSkpKTsKKworCWlmIChheCA8IFNRUlRfM19FUFNJTE9OIC8gMiAmJiBheSA8IFNRUlRfM19FUFNJTE9OIC8gMikgeworCQkvKgorCQkgKiB6ID0gMCB3YXMgZmlsdGVyZWQgb3V0IGFib3ZlLiAgQWxsIG90aGVyIGNhc2VzIG11c3QgcmFpc2UKKwkJICogaW5leGFjdCwgYnV0IHRoaXMgaXMgdGhlIG9ubHkgb25seSB0aGF0IG5lZWRzIHRvIGRvIGl0CisJCSAqIGV4cGxpY2l0bHkuCisJCSAqLworCQlyYWlzZV9pbmV4YWN0KCk7CisJCXJldHVybiAoeik7CisJfQorCisJaWYgKGF4ID09IDEgJiYgYXkgPCBEQkxfRVBTSUxPTikKKwkJcnggPSAobV9sbjIgLSBsb2coYXkpKSAvIDI7CisJZWxzZQorCQlyeCA9IGxvZzFwKDQgKiBheCAvIHN1bV9zcXVhcmVzKGF4IC0gMSwgYXkpKSAvIDQ7CisKKwlpZiAoYXggPT0gMSkKKwkJcnkgPSBhdGFuMigyLCAtYXkpIC8gMjsKKwllbHNlIGlmIChheSA8IERCTF9FUFNJTE9OKQorCQlyeSA9IGF0YW4yKDIgKiBheSwgKDEgLSBheCkgKiAoMSArIGF4KSkgLyAyOworCWVsc2UKKwkJcnkgPSBhdGFuMigyICogYXksICgxIC0gYXgpICogKDEgKyBheCkgLSBheSAqIGF5KSAvIDI7CisKKwlyZXR1cm4gKGNwYWNrKGNvcHlzaWduKHJ4LCB4KSwgY29weXNpZ24ocnksIHkpKSk7Cit9CisKKy8qCisgKiBjYXRhbih6KSA9IHJldmVyc2UoY2F0YW5oKHJldmVyc2UoeikpKQorICogd2hlcmUgcmV2ZXJzZSh4ICsgSSp5KSA9IHkgKyBJKnggPSBJKmNvbmooeikuCisgKi8KK2RvdWJsZSBjb21wbGV4CitjYXRhbihkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSBjb21wbGV4IHcgPSBjYXRhbmgoY3BhY2soY2ltYWcoeiksIGNyZWFsKHopKSk7CisKKwlyZXR1cm4gKGNwYWNrKGNpbWFnKHcpLCBjcmVhbCh3KSkpOworfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWdmLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2NhdHJpZ2YuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOGViZWY3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWdmLmMKQEAgLTAsMCArMSwzOTMgQEAKKy8qLQorICogQ29weXJpZ2h0IChjKSAyMDEyIFN0ZXBoZW4gTW9udGdvbWVyeS1TbWl0aCA8c3RlcGhlbkBGcmVlQlNELk9SRz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworLyoKKyAqIFRoZSBhbGdvcml0aG0gaXMgdmVyeSBjbG9zZSB0byB0aGF0IGluICJJbXBsZW1lbnRpbmcgdGhlIGNvbXBsZXggYXJjc2luZQorICogYW5kIGFyY2Nvc2luZSBmdW5jdGlvbnMgdXNpbmcgZXhjZXB0aW9uIGhhbmRsaW5nIiBieSBULiBFLiBIdWxsLCBUaG9tYXMgRi4KKyAqIEZhaXJncmlldmUsIGFuZCBQaW5nIFRhayBQZXRlciBUYW5nLCBwdWJsaXNoZWQgaW4gQUNNIFRyYW5zYWN0aW9ucyBvbgorICogTWF0aGVtYXRpY2FsIFNvZnR3YXJlLCBWb2x1bWUgMjMgSXNzdWUgMywgMTk5NywgUGFnZXMgMjk5LTMzNSwKKyAqIGh0dHA6Ly9kbC5hY20ub3JnL2NpdGF0aW9uLmNmbT9pZD0yNzUzMjQuCisgKgorICogU2VlIGNhdHJpZy5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBYWFggY29tbWVudHMgd2VyZSByZW1vdmVkIGF1dG9tYXRpY2FsbHksIGFuZCBldmVuIHNob3J0IG9uZXMgb24gdGhlIHJpZ2h0CisgKiBvZiBzdGF0ZW1lbnRzIHdlcmUgcmVtb3ZlZCAoYWxsIG9mIHRoZW0pLCBjb250cmFyeSB0byBub3JtYWwgc3R5bGUuICBPbmx5CisgKiBhIGZldyBjb21tZW50cyBvbiB0aGUgcmlnaHQgb2YgZGVjbGFyYXRpb25zIHJlbWFpbi4KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKyNpbmNsdWRlIDxjb21wbGV4Lmg+CisjaW5jbHVkZSA8ZmxvYXQuaD4KKworI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKworI3VuZGVmIGlzaW5mCisjZGVmaW5lIGlzaW5mKHgpCShmYWJzZih4KSA9PSBJTkZJTklUWSkKKyN1bmRlZiBpc25hbgorI2RlZmluZSBpc25hbih4KQkoKHgpICE9ICh4KSkKKyNkZWZpbmUJcmFpc2VfaW5leGFjdCgpCWRvIHsgdm9sYXRpbGUgZmxvYXQganVuayA9IDEgKyB0aW55OyB9IHdoaWxlKDApCisjdW5kZWYgc2lnbmJpdAorI2RlZmluZSBzaWduYml0KHgpCShfX2J1aWx0aW5fc2lnbmJpdGYoeCkpCisKK3N0YXRpYyBjb25zdCBmbG9hdAorQV9jcm9zc292ZXIgPQkJMTAsCitCX2Nyb3Nzb3ZlciA9CQkwLjY0MTcsCitGT1VSX1NRUlRfTUlOID0JCTB4MXAtNjEsCitRVUFSVEVSX1NRUlRfTUFYID0JMHgxcDYxLAorbV9lID0JCQkyLjcxODI4MTgyODVlMCwJCS8qICAweGFkZjg1NC4wcC0yMiAqLworbV9sbjIgPQkJCTYuOTMxNDcxODA1NmUtMSwJLyogIDB4YjE3MjE4LjBwLTI0ICovCitwaW8yX2hpID0JCTEuNTcwNzk2MjUxM2UwLAkJLyogIDB4YzkwZmRhLjBwLTIzICovCitSRUNJUF9FUFNJTE9OID0JCTEgLyBGTFRfRVBTSUxPTiwKK1NRUlRfM19FUFNJTE9OID0JNS45ODAxOTk1NjczZS00LAkvKiAgMHg5Y2M0NzEuMHAtMzQgKi8KK1NRUlRfNl9FUFNJTE9OID0JOC40NTcyNzkzMzM4ZS00LAkvKiAgMHhkZGIzZDcuMHAtMzQgKi8KK1NRUlRfTUlOID0JCTB4MXAtNjM7CisKK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBmbG9hdAorcGlvMl9sbyA9CQk3LjU0OTc4OTk1NDllLTgsCS8qICAweGEyMjE2OS4wcC00NyAqLwordGlueSA9CQkJMHgxcC0xMDA7CisKK3N0YXRpYyBmbG9hdCBjb21wbGV4IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyhmbG9hdCBjb21wbGV4IHopOworCitzdGF0aWMgaW5saW5lIGZsb2F0CitmKGZsb2F0IGEsIGZsb2F0IGIsIGZsb2F0IGh5cG90X2FfYikKK3sKKwlpZiAoYiA8IDApCisJCXJldHVybiAoKGh5cG90X2FfYiAtIGIpIC8gMik7CisJaWYgKGIgPT0gMCkKKwkJcmV0dXJuIChhIC8gMik7CisJcmV0dXJuIChhICogYSAvIChoeXBvdF9hX2IgKyBiKSAvIDIpOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2RvX2hhcmRfd29yayhmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCAqcngsIGludCAqQl9pc191c2FibGUsIGZsb2F0ICpCLAorICAgIGZsb2F0ICpzcXJ0X0EybXkyLCBmbG9hdCAqbmV3X3kpCit7CisJZmxvYXQgUiwgUywgQTsKKwlmbG9hdCBBbTEsIEFteTsKKworCVIgPSBoeXBvdGYoeCwgeSArIDEpOworCVMgPSBoeXBvdGYoeCwgeSAtIDEpOworCisJQSA9IChSICsgUykgLyAyOworCWlmIChBIDwgMSkKKwkJQSA9IDE7CisKKwlpZiAoQSA8IEFfY3Jvc3NvdmVyKSB7CisJCWlmICh5ID09IDEgJiYgeCA8IEZMVF9FUFNJTE9OICogRkxUX0VQU0lMT04gLyAxMjgpIHsKKwkJCSpyeCA9IHNxcnRmKHgpOworCQl9IGVsc2UgaWYgKHggPj0gRkxUX0VQU0lMT04gKiBmYWJzZih5IC0gMSkpIHsKKwkJCUFtMSA9IGYoeCwgMSArIHksIFIpICsgZih4LCAxIC0geSwgUyk7CisJCQkqcnggPSBsb2cxcGYoQW0xICsgc3FydGYoQW0xICogKEEgKyAxKSkpOworCQl9IGVsc2UgaWYgKHkgPCAxKSB7CisJCQkqcnggPSB4IC8gc3FydGYoKDEgLSB5KSAqICgxICsgeSkpOworCQl9IGVsc2UgeworCQkJKnJ4ID0gbG9nMXBmKCh5IC0gMSkgKyBzcXJ0ZigoeSAtIDEpICogKHkgKyAxKSkpOworCQl9CisJfSBlbHNlIHsKKwkJKnJ4ID0gbG9nZihBICsgc3FydGYoQSAqIEEgLSAxKSk7CisJfQorCisJKm5ld195ID0geTsKKworCWlmICh5IDwgRk9VUl9TUVJUX01JTikgeworCQkqQl9pc191c2FibGUgPSAwOworCQkqc3FydF9BMm15MiA9IEEgKiAoMiAvIEZMVF9FUFNJTE9OKTsKKwkJKm5ld195ID0geSAqICgyIC8gRkxUX0VQU0lMT04pOworCQlyZXR1cm47CisJfQorCisJKkIgPSB5IC8gQTsKKwkqQl9pc191c2FibGUgPSAxOworCisJaWYgKCpCID4gQl9jcm9zc292ZXIpIHsKKwkJKkJfaXNfdXNhYmxlID0gMDsKKwkJaWYgKHkgPT0gMSAmJiB4IDwgRkxUX0VQU0lMT04gLyAxMjgpIHsKKwkJCSpzcXJ0X0EybXkyID0gc3FydGYoeCkgKiBzcXJ0ZigoQSArIHkpIC8gMik7CisJCX0gZWxzZSBpZiAoeCA+PSBGTFRfRVBTSUxPTiAqIGZhYnNmKHkgLSAxKSkgeworCQkJQW15ID0gZih4LCB5ICsgMSwgUikgKyBmKHgsIHkgLSAxLCBTKTsKKwkJCSpzcXJ0X0EybXkyID0gc3FydGYoQW15ICogKEEgKyB5KSk7CisJCX0gZWxzZSBpZiAoeSA+IDEpIHsKKwkJCSpzcXJ0X0EybXkyID0geCAqICg0IC8gRkxUX0VQU0lMT04gLyBGTFRfRVBTSUxPTikgKiB5IC8KKwkJCSAgICBzcXJ0ZigoeSArIDEpICogKHkgLSAxKSk7CisJCQkqbmV3X3kgPSB5ICogKDQgLyBGTFRfRVBTSUxPTiAvIEZMVF9FUFNJTE9OKTsKKwkJfSBlbHNlIHsKKwkJCSpzcXJ0X0EybXkyID0gc3FydGYoKDEgLSB5KSAqICgxICsgeSkpOworCQl9CisJfQorfQorCitmbG9hdCBjb21wbGV4CitjYXNpbmhmKGZsb2F0IGNvbXBsZXggeikKK3sKKwlmbG9hdCB4LCB5LCBheCwgYXksIHJ4LCByeSwgQiwgc3FydF9BMm15MiwgbmV3X3k7CisJaW50IEJfaXNfdXNhYmxlOworCWZsb2F0IGNvbXBsZXggdzsKKworCXggPSBjcmVhbGYoeik7CisJeSA9IGNpbWFnZih6KTsKKwlheCA9IGZhYnNmKHgpOworCWF5ID0gZmFic2YoeSk7CisKKwlpZiAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpIHsKKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFja2YoeCwgeSArIHkpKTsKKwkJaWYgKGlzaW5mKHkpKQorCQkJcmV0dXJuIChjcGFja2YoeSwgeCArIHgpKTsKKwkJaWYgKHkgPT0gMCkKKwkJCXJldHVybiAoY3BhY2tmKHggKyB4LCB5KSk7CisJCXJldHVybiAoY3BhY2tmKHggKyAwLjBMICsgKHkgKyAwKSwgeCArIDAuMEwgKyAoeSArIDApKSk7CisJfQorCisJaWYgKGF4ID4gUkVDSVBfRVBTSUxPTiB8fCBheSA+IFJFQ0lQX0VQU0lMT04pIHsKKwkJaWYgKHNpZ25iaXQoeCkgPT0gMCkKKwkJCXcgPSBjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoeikgKyBtX2xuMjsKKwkJZWxzZQorCQkJdyA9IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcygteikgKyBtX2xuMjsKKwkJcmV0dXJuIChjcGFja2YoY29weXNpZ25mKGNyZWFsZih3KSwgeCksCisJCSAgICBjb3B5c2lnbmYoY2ltYWdmKHcpLCB5KSkpOworCX0KKworCWlmICh4ID09IDAgJiYgeSA9PSAwKQorCQlyZXR1cm4gKHopOworCisJcmFpc2VfaW5leGFjdCgpOworCisJaWYgKGF4IDwgU1FSVF82X0VQU0lMT04gLyA0ICYmIGF5IDwgU1FSVF82X0VQU0lMT04gLyA0KQorCQlyZXR1cm4gKHopOworCisJZG9faGFyZF93b3JrKGF4LCBheSwgJnJ4LCAmQl9pc191c2FibGUsICZCLCAmc3FydF9BMm15MiwgJm5ld195KTsKKwlpZiAoQl9pc191c2FibGUpCisJCXJ5ID0gYXNpbmYoQik7CisJZWxzZQorCQlyeSA9IGF0YW4yZihuZXdfeSwgc3FydF9BMm15Mik7CisJcmV0dXJuIChjcGFja2YoY29weXNpZ25mKHJ4LCB4KSwgY29weXNpZ25mKHJ5LCB5KSkpOworfQorCitmbG9hdCBjb21wbGV4CitjYXNpbmYoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IGNvbXBsZXggdyA9IGNhc2luaGYoY3BhY2tmKGNpbWFnZih6KSwgY3JlYWxmKHopKSk7CisKKwlyZXR1cm4gKGNwYWNrZihjaW1hZ2YodyksIGNyZWFsZih3KSkpOworfQorCitmbG9hdCBjb21wbGV4CitjYWNvc2YoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IHgsIHksIGF4LCBheSwgcngsIHJ5LCBCLCBzcXJ0X0EybXgyLCBuZXdfeDsKKwlpbnQgc3gsIHN5OworCWludCBCX2lzX3VzYWJsZTsKKwlmbG9hdCBjb21wbGV4IHc7CisKKwl4ID0gY3JlYWxmKHopOworCXkgPSBjaW1hZ2Yoeik7CisJc3ggPSBzaWduYml0KHgpOworCXN5ID0gc2lnbmJpdCh5KTsKKwlheCA9IGZhYnNmKHgpOworCWF5ID0gZmFic2YoeSk7CisKKwlpZiAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpIHsKKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFja2YoeSArIHksIC1JTkZJTklUWSkpOworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrZih4ICsgeCwgLXkpKTsKKwkJaWYgKHggPT0gMCkKKwkJCXJldHVybiAoY3BhY2tmKHBpbzJfaGkgKyBwaW8yX2xvLCB5ICsgeSkpOworCQlyZXR1cm4gKGNwYWNrZih4ICsgMC4wTCArICh5ICsgMCksIHggKyAwLjBMICsgKHkgKyAwKSkpOworCX0KKworCWlmIChheCA+IFJFQ0lQX0VQU0lMT04gfHwgYXkgPiBSRUNJUF9FUFNJTE9OKSB7CisJCXcgPSBjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoeik7CisJCXJ4ID0gZmFic2YoY2ltYWdmKHcpKTsKKwkJcnkgPSBjcmVhbGYodykgKyBtX2xuMjsKKwkJaWYgKHN5ID09IDApCisJCQlyeSA9IC1yeTsKKwkJcmV0dXJuIChjcGFja2YocngsIHJ5KSk7CisJfQorCisJaWYgKHggPT0gMSAmJiB5ID09IDApCisJCXJldHVybiAoY3BhY2tmKDAsIC15KSk7CisKKwlyYWlzZV9pbmV4YWN0KCk7CisKKwlpZiAoYXggPCBTUVJUXzZfRVBTSUxPTiAvIDQgJiYgYXkgPCBTUVJUXzZfRVBTSUxPTiAvIDQpCisJCXJldHVybiAoY3BhY2tmKHBpbzJfaGkgLSAoeCAtIHBpbzJfbG8pLCAteSkpOworCisJZG9faGFyZF93b3JrKGF5LCBheCwgJnJ5LCAmQl9pc191c2FibGUsICZCLCAmc3FydF9BMm14MiwgJm5ld194KTsKKwlpZiAoQl9pc191c2FibGUpIHsKKwkJaWYgKHN4ID09IDApCisJCQlyeCA9IGFjb3NmKEIpOworCQllbHNlCisJCQlyeCA9IGFjb3NmKC1CKTsKKwl9IGVsc2UgeworCQlpZiAoc3ggPT0gMCkKKwkJCXJ4ID0gYXRhbjJmKHNxcnRfQTJteDIsIG5ld194KTsKKwkJZWxzZQorCQkJcnggPSBhdGFuMmYoc3FydF9BMm14MiwgLW5ld194KTsKKwl9CisJaWYgKHN5ID09IDApCisJCXJ5ID0gLXJ5OworCXJldHVybiAoY3BhY2tmKHJ4LCByeSkpOworfQorCitmbG9hdCBjb21wbGV4CitjYWNvc2hmKGZsb2F0IGNvbXBsZXggeikKK3sKKwlmbG9hdCBjb21wbGV4IHc7CisJZmxvYXQgcngsIHJ5OworCisJdyA9IGNhY29zZih6KTsKKwlyeCA9IGNyZWFsZih3KTsKKwlyeSA9IGNpbWFnZih3KTsKKwlpZiAoaXNuYW4ocngpICYmIGlzbmFuKHJ5KSkKKwkJcmV0dXJuIChjcGFja2YocnksIHJ4KSk7CisJaWYgKGlzbmFuKHJ4KSkKKwkJcmV0dXJuIChjcGFja2YoZmFic2YocnkpLCByeCkpOworCWlmIChpc25hbihyeSkpCisJCXJldHVybiAoY3BhY2tmKHJ5LCByeSkpOworCXJldHVybiAoY3BhY2tmKGZhYnNmKHJ5KSwgY29weXNpZ25mKHJ4LCBjaW1hZ2YoeikpKSk7Cit9CisKK3N0YXRpYyBmbG9hdCBjb21wbGV4CitjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IHgsIHk7CisJZmxvYXQgYXgsIGF5LCB0OworCisJeCA9IGNyZWFsZih6KTsKKwl5ID0gY2ltYWdmKHopOworCWF4ID0gZmFic2YoeCk7CisJYXkgPSBmYWJzZih5KTsKKwlpZiAoYXggPCBheSkgeworCQl0ID0gYXg7CisJCWF4ID0gYXk7CisJCWF5ID0gdDsKKwl9CisKKwlpZiAoYXggPiBGTFRfTUFYIC8gMikKKwkJcmV0dXJuIChjcGFja2YobG9nZihoeXBvdGYoeCAvIG1fZSwgeSAvIG1fZSkpICsgMSwKKwkJICAgIGF0YW4yZih5LCB4KSkpOworCisJaWYgKGF4ID4gUVVBUlRFUl9TUVJUX01BWCB8fCBheSA8IFNRUlRfTUlOKQorCQlyZXR1cm4gKGNwYWNrZihsb2dmKGh5cG90Zih4LCB5KSksIGF0YW4yZih5LCB4KSkpOworCisJcmV0dXJuIChjcGFja2YobG9nZihheCAqIGF4ICsgYXkgKiBheSkgLyAyLCBhdGFuMmYoeSwgeCkpKTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdAorc3VtX3NxdWFyZXMoZmxvYXQgeCwgZmxvYXQgeSkKK3sKKworCWlmICh5IDwgU1FSVF9NSU4pCisJCXJldHVybiAoeCAqIHgpOworCisJcmV0dXJuICh4ICogeCArIHkgKiB5KTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdAorcmVhbF9wYXJ0X3JlY2lwcm9jYWwoZmxvYXQgeCwgZmxvYXQgeSkKK3sKKwlmbG9hdCBzY2FsZTsKKwl1aW50MzJfdCBoeCwgaHk7CisJaW50MzJfdCBpeCwgaXk7CisKKwlHRVRfRkxPQVRfV09SRChoeCwgeCk7CisJaXggPSBoeCAmIDB4N2Y4MDAwMDA7CisJR0VUX0ZMT0FUX1dPUkQoaHksIHkpOworCWl5ID0gaHkgJiAweDdmODAwMDAwOworI2RlZmluZQlCSUFTCShGTFRfTUFYX0VYUCAtIDEpCisjZGVmaW5lCUNVVE9GRgkoRkxUX01BTlRfRElHIC8gMiArIDEpCisJaWYgKGl4IC0gaXkgPj0gQ1VUT0ZGIDw8IDIzIHx8IGlzaW5mKHgpKQorCQlyZXR1cm4gKDEgLyB4KTsKKwlpZiAoaXkgLSBpeCA+PSBDVVRPRkYgPDwgMjMpCisJCXJldHVybiAoeCAvIHkgLyB5KTsKKwlpZiAoaXggPD0gKEJJQVMgKyBGTFRfTUFYX0VYUCAvIDIgLSBDVVRPRkYpIDw8IDIzKQorCQlyZXR1cm4gKHggLyAoeCAqIHggKyB5ICogeSkpOworCVNFVF9GTE9BVF9XT1JEKHNjYWxlLCAweDdmODAwMDAwIC0gaXgpOworCXggKj0gc2NhbGU7CisJeSAqPSBzY2FsZTsKKwlyZXR1cm4gKHggLyAoeCAqIHggKyB5ICogeSkgKiBzY2FsZSk7Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2NhdGFuaGYoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IHgsIHksIGF4LCBheSwgcngsIHJ5OworCisJeCA9IGNyZWFsZih6KTsKKwl5ID0gY2ltYWdmKHopOworCWF4ID0gZmFic2YoeCk7CisJYXkgPSBmYWJzZih5KTsKKworCWlmICh5ID09IDAgJiYgYXggPD0gMSkKKwkJcmV0dXJuIChjcGFja2YoYXRhbmhmKHgpLCB5KSk7CisKKwlpZiAoeCA9PSAwKQorCQlyZXR1cm4gKGNwYWNrZih4LCBhdGFuZih5KSkpOworCisJaWYgKGlzbmFuKHgpIHx8IGlzbmFuKHkpKSB7CisJCWlmIChpc2luZih4KSkKKwkJCXJldHVybiAoY3BhY2tmKGNvcHlzaWduZigwLCB4KSwgeSArIHkpKTsKKwkJaWYgKGlzaW5mKHkpKQorCQkJcmV0dXJuIChjcGFja2YoY29weXNpZ25mKDAsIHgpLAorCQkJICAgIGNvcHlzaWduZihwaW8yX2hpICsgcGlvMl9sbywgeSkpKTsKKwkJcmV0dXJuIChjcGFja2YoeCArIDAuMEwgKyAoeSArIDApLCB4ICsgMC4wTCArICh5ICsgMCkpKTsKKwl9CisKKwlpZiAoYXggPiBSRUNJUF9FUFNJTE9OIHx8IGF5ID4gUkVDSVBfRVBTSUxPTikKKwkJcmV0dXJuIChjcGFja2YocmVhbF9wYXJ0X3JlY2lwcm9jYWwoeCwgeSksCisJCSAgICBjb3B5c2lnbmYocGlvMl9oaSArIHBpbzJfbG8sIHkpKSk7CisKKwlpZiAoYXggPCBTUVJUXzNfRVBTSUxPTiAvIDIgJiYgYXkgPCBTUVJUXzNfRVBTSUxPTiAvIDIpIHsKKwkJcmFpc2VfaW5leGFjdCgpOworCQlyZXR1cm4gKHopOworCX0KKworCWlmIChheCA9PSAxICYmIGF5IDwgRkxUX0VQU0lMT04pCisJCXJ4ID0gKG1fbG4yIC0gbG9nZihheSkpIC8gMjsKKwllbHNlCisJCXJ4ID0gbG9nMXBmKDQgKiBheCAvIHN1bV9zcXVhcmVzKGF4IC0gMSwgYXkpKSAvIDQ7CisKKwlpZiAoYXggPT0gMSkKKwkJcnkgPSBhdGFuMmYoMiwgLWF5KSAvIDI7CisJZWxzZSBpZiAoYXkgPCBGTFRfRVBTSUxPTikKKwkJcnkgPSBhdGFuMmYoMiAqIGF5LCAoMSAtIGF4KSAqICgxICsgYXgpKSAvIDI7CisJZWxzZQorCQlyeSA9IGF0YW4yZigyICogYXksICgxIC0gYXgpICogKDEgKyBheCkgLSBheSAqIGF5KSAvIDI7CisKKwlyZXR1cm4gKGNwYWNrZihjb3B5c2lnbmYocngsIHgpLCBjb3B5c2lnbmYocnksIHkpKSk7Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2NhdGFuZihmbG9hdCBjb21wbGV4IHopCit7CisJZmxvYXQgY29tcGxleCB3ID0gY2F0YW5oZihjcGFja2YoY2ltYWdmKHopLCBjcmVhbGYoeikpKTsKKworCXJldHVybiAoY3BhY2tmKGNpbWFnZih3KSwgY3JlYWxmKHcpKSk7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2hsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2hsLmMKaW5kZXggNTlmYWViMC4uYjlmM2FlZCAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3NobC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaGwuYwpAQCAtNyw3ICs3LDcgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICoKQEAgLTc1LDcgKzc1LDcgQEAKIAl9IGVsc2UgaWYgKGh4ID49IEJJQVMgKyBFWFBfTEFSR0UpIHsgLyogeCA+PSBMQVJHRSAqLwogCSAgICBpZiAoaHggPj0gMHg3ZmZmKSB7CQkvKiB4IGlzIGluZiwgTmFOIG9yIG1pc25vcm1hbCAqLwogCSAgICAgICAgUkVUVVJOSSh4K3gpOwotCSAgICB9IGVsc2UKKwkgICAgfSBlbHNlIAogCQlSRVRVUk5JKGxvZ2woeCkrbG4yKTsJLyogYWNvc2goaHVnZSk9bG9nKDJ4KSwgb3IgbWlzbm9ybWFsICovCiAJfSBlbHNlIGlmIChoeCA9PSAweDNmZmYgJiYgeCA9PSAxKSB7CiAJICAgIFJFVFVSTkkoMC4wKTsJCS8qIGFjb3NoKDEpID0gMCAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW5obC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW5obC5jCmluZGV4IGE4ODg0MjYuLjExZDU2ZWEgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuaGwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmhsLmMKQEAgLTcsNyArNyw3IEBACiAgKgogICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KICAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKLSAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZSAKICAqIGlzIHByZXNlcnZlZC4KICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAqCkBAIC02OCw3ICs2OCw3IEBACiAJaWYgKGl4IDwgMHgzZmZlKSB7CQkvKiB8eHwgPCAwLjUsIG9yIG1pc25vcm1hbCAqLwogCSAgICB0ID0geCt4OwogCSAgICB0ID0gMC41KmxvZzFwbCh0K3QqeC8ob25lLXgpKTsKLQl9IGVsc2UKKwl9IGVsc2UgCiAJICAgIHQgPSAwLjUqbG9nMXBsKCh4K3gpLyhvbmUteCkpOwogCVJFVFVSTkkoKGh4ICYgMHg4MDAwKSA9PSAwID8gdCA6IC10KTsKIH0KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaC5jCmluZGV4IGEzNjM2OTUuLjI0NmI1ZmIgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2guYwpAQCAtMzUsNiArMzUsOCBAQAogICoJb25seSBjb3NoKDApPTEgaXMgZXhhY3QgZm9yIGZpbml0ZSB4LgogICovCiAKKyNpbmNsdWRlIDxmbG9hdC5oPgorCiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCkBAIC03NywzICs3OSw3IEBACiAgICAgLyogfHh8ID4gb3ZlcmZsb3d0aHJlc29sZCwgY29zaCh4KSBvdmVyZmxvdyAqLwogCXJldHVybiBodWdlKmh1Z2U7CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2UoY29zaCwgY29zaGwpOworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NobC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhMjEyNzcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaGwuYwpAQCAtMCwwICsxLDEzMCBAQAorLyogZnJvbTogRnJlZUJTRDogaGVhZC9saWIvbXN1bi9zcmMvZV9jb3NobC5jIFhYWCAqLworCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuUHJvLCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogaXMgcHJlc2VydmVkLgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworLyoKKyAqIFNlZSBlX2Nvc2guYyBmb3IgY29tcGxldGUgY29tbWVudHMuCisgKgorICogQ29udmVydGVkIHRvIGxvbmcgZG91YmxlIGJ5IEJydWNlIEQuIEV2YW5zLgorICovCisKKyNpbmNsdWRlIDxmbG9hdC5oPgorI2lmZGVmIF9faTM4Nl9fCisjaW5jbHVkZSA8aWVlZWZwLmg+CisjZW5kaWYKKworI2luY2x1ZGUgImZwbWF0aC5oIgorI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKyNpbmNsdWRlICJrX2V4cGwuaCIKKworI2lmIExEQkxfTUFYX0VYUCAhPSAweDQwMDAKKy8qIFdlIGFsc28gcmVxdWlyZSB0aGUgdXN1YWwgZXhwc2lnbiBlbmNvZGluZy4gKi8KKyNlcnJvciAiVW5zdXBwb3J0ZWQgbG9uZyBkb3VibGUgZm9ybWF0IgorI2VuZGlmCisKKyNkZWZpbmUJQklBUwkoTERCTF9NQVhfRVhQIC0gMSkKKworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGxvbmcgZG91YmxlIGh1Z2UgPSAweDFwMTAwMDBMLCB0aW55ID0gMHgxcC0xMDAwMEw7CisjaWYgTERCTF9NQU5UX0RJRyA9PSA2NAorLyoKKyAqIERvbWFpbiBbLTEsIDFdLCByYW5nZSB+Wy0xLjgyMTFlLTIxLCAxLjgyMTFlLTIxXToKKyAqIHxjb3NoKHgpIC0gYyh4KXwgPCAyKiotNjguOAorICovCitzdGF0aWMgY29uc3QgdW5pb24gSUVFRWwyYml0cworQzR1ID0gTEQ4MEMoMHhhYWFhYWFhYWFhYWFhYzc4LCAtNSwgIDQuMTY2NjY2NjY2NjY2NjY2ODIyOTdlLTJMKTsKKyNkZWZpbmUJQzQJQzR1LmUKK3N0YXRpYyBjb25zdCBkb3VibGUKK0MyICA9ICAwLjUsCitDNiAgPSAgMS4zODg4ODg4ODg4ODg4NjE2ZS0zLAkJLyogIDB4MTZjMTZjMTZjMTZiOTkuMHAtNjIgKi8KK0M4ICA9ICAyLjQ4MDE1ODczMDE3Njc5NTNlLTUsCQkvKiAgMHgxYTAxYTAxYTAyNzA2MS4wcC02OCAqLworQzEwID0gIDIuNzU1NzMxOTE2MzMwMDM5OGUtNywJCS8qICAweDEyN2U0ZmI2YzliNTVmLjBwLTc0ICovCitDMTIgPSAgMi4wODc2NzY4MzcxMzkzMDc1ZS05LAkJLyogIDB4MTFlZWQ5OTQwNmEzZjQuMHAtODEgKi8KK0MxNCA9ICAxLjE0Njk1MzcwMzkzNzQ0ODBlLTExLAkJLyogIDB4MTkzOGM2N2NkMThjNDguMHAtODkgKi8KK0MxNiA9ICA0Ljg0NzM0OTA4OTY4NTIwNDFlLTE0OwkJLyogIDB4MWI0OWM0Mjk3MDFlNDUuMHAtOTcgKi8KKyNlbGlmIExEQkxfTUFOVF9ESUcgPT0gMTEzCisvKgorICogRG9tYWluIFstMSwgMV0sIHJhbmdlIH5bLTIuMzE5NGUtMzcsIDIuMzE5NGUtMzddOgorICogfGNvc2goeCkgLSBjKHgpfCA8IDIqKi0xMjEuNjkKKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCitDNCAgPSAgNC4xNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjIyNWUtMkwsCS8qICAweDE1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTRlLjBwLTExN0wgKi8KK0M2ICA9ICAxLjM4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg5NDM0ODMxZS0zTCwJLyogIDB4MTZjMTZjMTZjMTZjMTZjMTZjMTZjMTZjMWRkN2EuMHAtMTIyTCAqLworQzggID0gIDIuNDgwMTU4NzMwMTU4NzMwMTU4NzMwMTU4NzE4NzA5NjIwODllLTVMLAkvKiAgMHgxYTAxYTAxYTAxYTAxYTAxYTAxYTAxN2FmMjc1Ni4wcC0xMjhMICovCitDMTAgPSAgMi43NTU3MzE5MjIzOTg1ODkwNjUyNTU3NDMxODYwMDgwMDIwMWUtN0wsCS8qICAweDEyN2U0ZmI3Nzg5ZjVjNzJlZjAxYzhhMDQwNjQwLjBwLTEzNEwgKi8KK0MxMiA9ICAyLjA4NzY3NTY5ODc4NjgwOTg5NzkxNDQ0NjkxNzU1NDY4MjY5ZS05TCwJLyogIDB4MTFlZWQ4ZWZmOGQ4OTdiNTQzZDA2Nzk2MDczOTkuMHAtMTQxTCAqLworQzE0PSAgMS4xNDcwNzQ1NTk3NzI5NzI0NzM4NzgwMTE4OTY1MDQ5NTM1MWUtMTFMLAkvKiAgMHgxOTM5NzRhOGMwN2M5ZDI0YWUxNjlhN2ZhOWI1NC4wcC0xNDlMICovCitDMTYgPSAgNC43Nzk0NzczMzIzODczNzg4MzYyNjQxNjg3NjQ4NjI3OTk4NWUtMTRMOwkvKiAgMHgxYWU3ZjNlNzMzYjgxNGQ0ZTFiOTBmNTcyN2ZlNC4wcC0xNTdMICovCitzdGF0aWMgY29uc3QgZG91YmxlCitDMiAgPSAgMC41LAorQzE4ID0gIDEuNTYxOTIwNjk2ODU5Nzg3MWUtMTYsCQkvKiAgMHgxNjgyNzg2M2I5OTAwYi4wcC0xMDUgKi8KK0MyMCA9ICA0LjExMDMxNzYyMTg1MjgwNDllLTE5LAkJLyogIDB4MWU1NDJiYTNkM2MyNjkuMHAtMTE0ICovCitDMjIgPSAgOC44OTY3OTI2NDAxNjQxNzAxZS0yMiwJCS8qICAweDEwY2UzOTk1NDJhMDE0LjBwLTEyMiAqLworQzI0ID0gIDEuNjExNjY4MTYyNjUyMzkwNGUtMjQsCQkvKiAgMHgxZjJjOTgxZDFmMGNiNy4wcC0xMzIgKi8KK0MyNiA9ICAyLjUwMjIzNzQ3MzI4MDQ2MzJlLTI3OwkJLyogIDB4MThjN2VjZjhiMmM0YTAuMHAtMTQxICovCisjZWxzZQorI2Vycm9yICJVbnN1cHBvcnRlZCBsb25nIGRvdWJsZSBmb3JtYXQiCisjZW5kaWYgLyogTERCTF9NQU5UX0RJRyA9PSA2NCAqLworCisvKiBsb2coMioqMTYzODUgLSAwLjUpIHJvdW5kZWQgdXA6ICovCitzdGF0aWMgY29uc3QgZmxvYXQKK29fdGhyZXNob2xkID0gIDEuMTM1NzIxNjhlNDsJCS8qICAweGIxNzRkZS4wcC0xMCAqLworCitsb25nIGRvdWJsZQorY29zaGwobG9uZyBkb3VibGUgeCkKK3sKKwlsb25nIGRvdWJsZSBoaSxsbyx4Mix4NDsKKwlkb3VibGUgZHgyOworCXVpbnQxNl90IGl4OworCisJR0VUX0xEQkxfRVhQU0lHTihpeCx4KTsKKwlpeCAmPSAweDdmZmY7CisKKyAgICAvKiB4IGlzIElORiBvciBOYU4gKi8KKwlpZihpeD49MHg3ZmZmKSByZXR1cm4geCp4OworCisJRU5URVJJKCk7CisKKyAgICAvKiB8eHwgPCAxLCByZXR1cm4gMSBvciBjKHgpICovCisJaWYoaXg8MHgzZmZmKSB7CisJICAgIGlmIChpeDxCSUFTLShMREJMX01BTlRfRElHKzEpLzIpIAkvKiB8eHwgPCBUSU5ZICovCisJCVJFVFVSTkkoMSt0aW55KTsJLyogY29zaCh0aW55KSA9IDEoKykgd2l0aCBpbmV4YWN0ICovCisJICAgIHgyID0geCp4OworI2lmIExEQkxfTUFOVF9ESUcgPT0gNjQKKwkgICAgeDQgPSB4Mip4MjsKKwkgICAgUkVUVVJOSSgoKEMxNip4MiArIEMxNCkqeDQgKyAoQzEyKngyICsgQzEwKSkqKHg0Kng0KngyKSArCisJCSgoQzgqeDIgKyBDNikqeDIgKyBDNCkqeDQgKyBDMip4MiArIDEpOworI2VsaWYgTERCTF9NQU5UX0RJRyA9PSAxMTMKKwkgICAgZHgyID0geDI7CisJICAgIFJFVFVSTkkoKCgoKCgoKCgoKChDMjYqZHgyICsgQzI0KSpkeDIgKyBDMjIpKmR4MiArCisJCUMyMCkqeDIgKyBDMTgpKngyICsKKwkJQzE2KSp4MiArIEMxNCkqeDIgKyBDMTIpKngyICsgQzEwKSp4MiArIEM4KSp4MiArIEM2KSp4MiArCisJCUM0KSooeDIqeDIpICsgQzIqeDIgKyAxKTsKKyNlbmRpZgorCX0KKworICAgIC8qIHx4fCBpbiBbMSwgNjQpLCByZXR1cm4gYWNjdXJhdGUgZXhwKHx4fCkvMisxL2V4cCh8eHwpLzIgKi8KKwlpZiAoaXggPCAweDQwMDUpIHsKKwkgICAga19oZXhwbChmYWJzbCh4KSwgJmhpLCAmbG8pOworCSAgICBSRVRVUk5JKGxvICsgMC4yNS8oaGkgKyBsbykgKyBoaSk7CisJfQorCisgICAgLyogfHh8IGluIFs2NCwgb190aHJlc2hvbGRdLCByZXR1cm4gY29ycmVjdGx5LW92ZXJmbG93aW5nIGV4cCh8eHwpLzIgKi8KKwlpZiAoZmFic2woeCkgPD0gb190aHJlc2hvbGQpCisJICAgIFJFVFVSTkkoaGV4cGwoZmFic2woeCkpKTsKKworICAgIC8qIHx4fCA+IG9fdGhyZXNob2xkLCBjb3NoKHgpIG92ZXJmbG93ICovCisJUkVUVVJOSShodWdlKmh1Z2UpOworfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYS5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYS5jCmluZGV4IDQ2NzRkOWIuLjQzZjUxNzUgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWEuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hLmMKQEAgLTIxLDYgKzIxLDggQEAKICAqIE1ldGhvZDogY2FsbCBfX2llZWU3NTRfbGdhbW1hX3IKICAqLwogCisjaW5jbHVkZSA8ZmxvYXQuaD4KKwogI2luY2x1ZGUgIm1hdGguaCIKICNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIApAQCAtMzEsMyArMzMsNyBAQAogewogCXJldHVybiBfX2llZWU3NTRfbGdhbW1hX3IoeCwmc2lnbmdhbSk7CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2UobGdhbW1hLCBsZ2FtbWFsKTsKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYV9yLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hX3IuYwppbmRleCAxY2ZmNTkyLi5iZTcwNzY3IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hX3IuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hX3IuYwpAQCAtMSw0ICsxLDMgQEAKLQogLyogQCgjKWVfbGdhbW1hX3IuYyAxLjMgOTUvMDEvMTggKi8KIC8qCiAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC02LDIyICs1LDIxIEBACiAgKgogICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KICAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKLSAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAorICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKICAqIGlzIHByZXNlcnZlZC4KICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSAqCiAgKi8KIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogX19GQlNESUQoIiRGcmVlQlNEJCIpOwogCiAvKiBfX2llZWU3NTRfbGdhbW1hX3IoeCwgc2lnbmdhbXApCi0gKiBSZWVudHJhbnQgdmVyc2lvbiBvZiB0aGUgbG9nYXJpdGhtIG9mIHRoZSBHYW1tYSBmdW5jdGlvbiAKLSAqIHdpdGggdXNlciBwcm92aWRlIHBvaW50ZXIgZm9yIHRoZSBzaWduIG9mIEdhbW1hKHgpLiAKKyAqIFJlZW50cmFudCB2ZXJzaW9uIG9mIHRoZSBsb2dhcml0aG0gb2YgdGhlIEdhbW1hIGZ1bmN0aW9uCisgKiB3aXRoIHVzZXIgcHJvdmlkZSBwb2ludGVyIGZvciB0aGUgc2lnbiBvZiBHYW1tYSh4KS4KICAqCiAgKiBNZXRob2Q6CiAgKiAgIDEuIEFyZ3VtZW50IFJlZHVjdGlvbiBmb3IgMCA8IHggPD0gOAotICogCVNpbmNlIGdhbW1hKDErcyk9cypnYW1tYShzKSwgZm9yIHggaW4gWzAsOF0sIHdlIG1heSAKKyAqIAlTaW5jZSBnYW1tYSgxK3MpPXMqZ2FtbWEocyksIGZvciB4IGluIFswLDhdLCB3ZSBtYXkKICAqIAlyZWR1Y2UgeCB0byBhIG51bWJlciBpbiBbMS41LDIuNV0gYnkKICAqIAkJbGdhbW1hKDErcykgPSBsb2cocykgKyBsZ2FtbWEocykKICAqCWZvciBleGFtcGxlLApAQCAtNTksMjAgKzU3LDIwIEBACiAgKglieQogICoJICAJCQkgICAgMyAgICAgICA1ICAgICAgICAgICAgIDExCiAgKgkJdyA9IHcwICsgdzEqeiArIHcyKnogICsgdzMqeiAgKyAuLi4gKyB3Nip6Ci0gKgl3aGVyZSAKKyAqCXdoZXJlCiAgKgkJfHcgLSBmKHopfCA8IDIqKi01OC43NAotICoJCQorICoKICAqICAgNC4gRm9yIG5lZ2F0aXZlIHgsIHNpbmNlIChHIGlzIGdhbW1hIGZ1bmN0aW9uKQogICoJCS14KkcoLXgpKkcoeCkgPSBwaS9zaW4ocGkqeCksCiAgKiAJd2UgaGF2ZQogICogCQlHKHgpID0gcGkvKHNpbihwaSp4KSooLXgpKkcoLXgpKQogICoJc2luY2UgRygteCkgaXMgcG9zaXRpdmUsIHNpZ24oRyh4KSkgPSBzaWduKHNpbihwaSp4KSkgZm9yIHg8MAotICoJSGVuY2UsIGZvciB4PDAsIHNpZ25nYW0gPSBzaWduKHNpbihwaSp4KSkgYW5kIAorICoJSGVuY2UsIGZvciB4PDAsIHNpZ25nYW0gPSBzaWduKHNpbihwaSp4KSkgYW5kCiAgKgkJbGdhbW1hKHgpID0gbG9nKHxHYW1tYSh4KXwpCiAgKgkJCSAgPSBsb2cocGkvKHx4KnNpbihwaSp4KXwpKSAtIGxnYW1tYSgteCk7Ci0gKglOb3RlOiBvbmUgc2hvdWxkIGF2b2lkIGNvbXB1dGUgcGkqKC14KSBkaXJlY3RseSBpbiB0aGUgCisgKglOb3RlOiBvbmUgc2hvdWxkIGF2b2lkIGNvbXB1dGUgcGkqKC14KSBkaXJlY3RseSBpbiB0aGUKICAqCSAgICAgIGNvbXB1dGF0aW9uIG9mIHNpbihwaSooLXgpKS4KLSAqCQkKKyAqCiAgKiAgIDUuIFNwZWNpYWwgQ2FzZXMKICAqCQlsZ2FtbWEoMitzKSB+IHMqKDEtRXVsZXIpIGZvciB0aW55IHMKICAqCQlsZ2FtbWEoMSkgPSBsZ2FtbWEoMikgPSAwCkBAIC04MCwxNCArNzgsMTcgQEAKICAqCQlsZ2FtbWEoMCkgPSBsZ2FtbWEobmVnLmludGVnZXIpID0gaW5mIGFuZCByYWlzZSBkaXZpZGUtYnktemVybwogICoJCWxnYW1tYShpbmYpID0gaW5mCiAgKgkJbGdhbW1hKC1pbmYpID0gaW5mIChidWcgZm9yIGJ1ZyBjb21wYXRpYmxlIHdpdGggQzk5IT8pCi0gKgkKICAqLwogCisjaW5jbHVkZSA8ZmxvYXQuaD4KKwogI2luY2x1ZGUgIm1hdGguaCIKICNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIAorc3RhdGljIGNvbnN0IHZvbGF0aWxlIGRvdWJsZSB2emVybyA9IDA7CisKIHN0YXRpYyBjb25zdCBkb3VibGUKLXR3bzUyPSAgNC41MDM1OTk2MjczNzA0OTYwMDAwMGUrMTUsIC8qIDB4NDMzMDAwMDAsIDB4MDAwMDAwMDAgKi8KK3plcm89ICAwLjAwMDAwMDAwMDAwMDAwMDAwMDAwZSswMCwKIGhhbGY9ICA1LjAwMDAwMDAwMDAwMDAwMDAwMDAwZS0wMSwgLyogMHgzRkUwMDAwMCwgMHgwMDAwMDAwMCAqLwogb25lID0gIDEuMDAwMDAwMDAwMDAwMDAwMDAwMDBlKzAwLCAvKiAweDNGRjAwMDAwLCAweDAwMDAwMDAwICovCiBwaSAgPSAgMy4xNDE1OTI2NTM1ODk3OTMxMTYwMGUrMDAsIC8qIDB4NDAwOTIxRkIsIDB4NTQ0NDJEMTggKi8KQEAgLTE1NCw0NCArMTU1LDQwIEBACiB3NSAgPSAgOC4zNjMzOTkxODk5NjI4MjEzOTEyNmUtMDQsIC8qIDB4M0Y0QjY3QkEsIDB4NENEQUQ1RDEgKi8KIHc2ICA9IC0xLjYzMDkyOTM0MDk2NTc1MjczOTg5ZS0wMzsgLyogMHhCRjVBQjg5RCwgMHgwQjlFNDNFNCAqLwogCi1zdGF0aWMgY29uc3QgZG91YmxlIHplcm89ICAwLjAwMDAwMDAwMDAwMDAwMDAwMDAwZSswMDsKLQotCXN0YXRpYyBkb3VibGUgc2luX3BpKGRvdWJsZSB4KQorLyoKKyAqIENvbXB1dGUgc2luKHBpKngpIHdpdGhvdXQgYWN0dWFsbHkgZG9pbmcgdGhlIHBpKnggbXVsdGlwbGljYXRpb24uCisgKiBzaW5fcGkoeCkgaXMgb25seSBjYWxsZWQgZm9yIHggPCAwIGFuZCB8eHwgPCAyKioocC0xKSB3aGVyZSBwIGlzCisgKiB0aGUgcHJlY2lzaW9uIG9mIHguCisgKi8KK3N0YXRpYyBkb3VibGUKK3Npbl9waShkb3VibGUgeCkKIHsKKwl2b2xhdGlsZSBkb3VibGUgdno7CiAJZG91YmxlIHksejsKLQlpbnQgbixpeDsKKwlpbnQgbjsKIAotCUdFVF9ISUdIX1dPUkQoaXgseCk7Ci0JaXggJj0gMHg3ZmZmZmZmZjsKKwl5ID0gLXg7CiAKLQlpZihpeDwweDNmZDAwMDAwKSByZXR1cm4gX19rZXJuZWxfc2luKHBpKngsemVybywwKTsKLQl5ID0gLXg7CQkvKiB4IGlzIGFzc3VtZSBuZWdhdGl2ZSAqLworCXZ6ID0geSsweDFwNTI7CQkJLyogZGVwZW5kIG9uIDAgPD0geSA8IDB4MXA1MiAqLworCXogPSB2ei0weDFwNTI7CQkJLyogcmludCh5KSBmb3IgdGhlIGFib3ZlIHJhbmdlICovCisJaWYgKHogPT0geSkKKwkgICAgcmV0dXJuIHplcm87CiAKLSAgICAvKgotICAgICAqIGFyZ3VtZW50IHJlZHVjdGlvbiwgbWFrZSBzdXJlIGluZXhhY3QgZmxhZyBub3QgcmFpc2VkIGlmIGlucHV0Ci0gICAgICogaXMgYW4gaW50ZWdlcgotICAgICAqLwotCXogPSBmbG9vcih5KTsKLQlpZih6IT15KSB7CQkJCS8qIGluZXhhY3QgYW55d2F5ICovCi0JICAgIHkgICo9IDAuNTsKLQkgICAgeSAgID0gMi4wKih5IC0gZmxvb3IoeSkpOwkJLyogeSA9IHx4fCBtb2QgMi4wICovCi0JICAgIG4gICA9IChpbnQpICh5KjQuMCk7Ci0JfSBlbHNlIHsKLSAgICAgICAgICAgIGlmKGl4Pj0weDQzNDAwMDAwKSB7Ci0gICAgICAgICAgICAgICAgeSA9IHplcm87IG4gPSAwOyAgICAgICAgICAgICAgICAgLyogeSBtdXN0IGJlIGV2ZW4gKi8KLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYoaXg8MHg0MzMwMDAwMCkgeiA9IHkrdHdvNTI7CS8qIGV4YWN0ICovCi0JCUdFVF9MT1dfV09SRChuLHopOwotCQluICY9IDE7Ci0gICAgICAgICAgICAgICAgeSAgPSBuOwotICAgICAgICAgICAgICAgIG48PD0gMjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQorCXZ6ID0geSsweDFwNTA7CisJR0VUX0xPV19XT1JEKG4sdnopOwkJLyogYml0cyBmb3Igcm91bmRlZCB5ICh1bml0cyAwLjI1KSAqLworCXogPSB2ei0weDFwNTA7CQkJLyogeSByb3VuZGVkIHRvIGEgbXVsdGlwbGUgb2YgMC4yNSAqLworCWlmICh6ID4geSkgeworCSAgICB6IC09IDAuMjU7CQkJLyogYWRqdXN0IHRvIHJvdW5kIGRvd24gKi8KKwkgICAgbi0tOworCX0KKwluICY9IDc7CQkJCS8qIG9jdGFudCBvZiB5IG1vZCAyICovCisJeSA9IHkgLSB6ICsgbiAqIDAuMjU7CQkvKiB5IG1vZCAyICovCisKIAlzd2l0Y2ggKG4pIHsKIAkgICAgY2FzZSAwOiAgIHkgPSAgX19rZXJuZWxfc2luKHBpKnksemVybywwKTsgYnJlYWs7Ci0JICAgIGNhc2UgMTogICAKKwkgICAgY2FzZSAxOgogCSAgICBjYXNlIDI6ICAgeSA9ICBfX2tlcm5lbF9jb3MocGkqKDAuNS15KSx6ZXJvKTsgYnJlYWs7Ci0JICAgIGNhc2UgMzogIAorCSAgICBjYXNlIDM6CiAJICAgIGNhc2UgNDogICB5ID0gIF9fa2VybmVsX3NpbihwaSoob25lLXkpLHplcm8sMCk7IGJyZWFrOwogCSAgICBjYXNlIDU6CiAJICAgIGNhc2UgNjogICB5ID0gLV9fa2VybmVsX2NvcyhwaSooeS0xLjUpLHplcm8pOyBicmVhazsKQEAgLTIwNCwzNCArMjAxLDM4IEBACiBkb3VibGUKIF9faWVlZTc1NF9sZ2FtbWFfcihkb3VibGUgeCwgaW50ICpzaWduZ2FtcCkKIHsKLQlkb3VibGUgdCx5LHosbmFkaixwLHAxLHAyLHAzLHEscix3OworCWRvdWJsZSBuYWRqLHAscDEscDIscDMscSxyLHQsdyx5LHo7CiAJaW50MzJfdCBoeDsKLQlpbnQgaSxseCxpeDsKKwlpbnQgaSxpeCxseDsKIAogCUVYVFJBQ1RfV09SRFMoaHgsbHgseCk7CiAKLSAgICAvKiBwdXJnZSBvZmYgKy1pbmYsIE5hTiwgKy0wLCB0aW55IGFuZCBuZWdhdGl2ZSBhcmd1bWVudHMgKi8KKyAgICAvKiBwdXJnZSArLUluZiBhbmQgTmFOcyAqLwogCSpzaWduZ2FtcCA9IDE7CiAJaXggPSBoeCYweDdmZmZmZmZmOwogCWlmKGl4Pj0weDdmZjAwMDAwKSByZXR1cm4geCp4OwotCWlmKChpeHxseCk9PTApIHJldHVybiBvbmUvemVybzsKLQlpZihpeDwweDNiOTAwMDAwKSB7CS8qIHx4fDwyKiotNzAsIHJldHVybiAtbG9nKHx4fCkgKi8KLQkgICAgaWYoaHg8MCkgewotCSAgICAgICAgKnNpZ25nYW1wID0gLTE7Ci0JICAgICAgICByZXR1cm4gLV9faWVlZTc1NF9sb2coLXgpOwotCSAgICB9IGVsc2UgcmV0dXJuIC1fX2llZWU3NTRfbG9nKHgpOworCisgICAgLyogcHVyZ2UgKy0wIGFuZCB0aW55IGFyZ3VtZW50cyAqLworCSpzaWduZ2FtcCA9IDEtMiooKHVpbnQzMl90KWh4Pj4zMSk7CisJaWYoaXg8MHgzYzcwMDAwMCkgewkvKiB8eHw8MioqLTU2LCByZXR1cm4gLWxvZyh8eHwpICovCisJICAgIGlmKChpeHxseCk9PTApCisJICAgICAgICByZXR1cm4gb25lL3Z6ZXJvOworCSAgICByZXR1cm4gLV9faWVlZTc1NF9sb2coZmFicyh4KSk7CiAJfQorCisgICAgLyogcHVyZ2UgbmVnYXRpdmUgaW50ZWdlcnMgYW5kIHN0YXJ0IGV2YWx1YXRpb24gZm9yIG90aGVyIHggPCAwICovCiAJaWYoaHg8MCkgeworCSAgICAqc2lnbmdhbXAgPSAxOwogCSAgICBpZihpeD49MHg0MzMwMDAwMCkgCS8qIHx4fD49MioqNTIsIG11c3QgYmUgLWludGVnZXIgKi8KLQkJcmV0dXJuIG9uZS96ZXJvOworCQlyZXR1cm4gb25lL3Z6ZXJvOwogCSAgICB0ID0gc2luX3BpKHgpOwotCSAgICBpZih0PT16ZXJvKSByZXR1cm4gb25lL3plcm87IC8qIC1pbnRlZ2VyICovCisJICAgIGlmKHQ9PXplcm8pIHJldHVybiBvbmUvdnplcm87IC8qIC1pbnRlZ2VyICovCiAJICAgIG5hZGogPSBfX2llZWU3NTRfbG9nKHBpL2ZhYnModCp4KSk7CiAJICAgIGlmKHQ8emVybykgKnNpZ25nYW1wID0gLTE7CiAJICAgIHggPSAteDsKIAl9CiAKLSAgICAvKiBwdXJnZSBvZmYgMSBhbmQgMiAqLworICAgIC8qIHB1cmdlIDEgYW5kIDIgKi8KIAlpZigoKChpeC0weDNmZjAwMDAwKXxseCk9PTApfHwoKChpeC0weDQwMDAwMDAwKXxseCk9PTApKSByID0gMDsKICAgICAvKiBmb3IgeCA8IDIuMCAqLwogCWVsc2UgaWYoaXg8MHg0MDAwMDAwMCkgewpAQCAtMjUyLDcgKzI1Myw3IEBACiAJCXAxID0gYTAreiooYTIreiooYTQreiooYTYreiooYTgreiphMTApKSkpOwogCQlwMiA9IHoqKGExK3oqKGEzK3oqKGE1K3oqKGE3K3oqKGE5K3oqYTExKSkpKSk7CiAJCXAgID0geSpwMStwMjsKLQkJciAgKz0gKHAtMC41KnkpOyBicmVhazsKKwkJciAgKz0gcC15LzI7IGJyZWFrOwogCSAgICAgIGNhc2UgMToKIAkJeiA9IHkqeTsKIAkJdyA9IHoqeTsKQEAgLTI2MCwzOCArMjYxLDQzIEBACiAJCXAyID0gdDErdyoodDQrdyoodDcrdyoodDEwK3cqdDEzKSkpOwogCQlwMyA9IHQyK3cqKHQ1K3cqKHQ4K3cqKHQxMSt3KnQxNCkpKTsKIAkJcCAgPSB6KnAxLSh0dC13KihwMit5KnAzKSk7Ci0JCXIgKz0gKHRmICsgcCk7IGJyZWFrOwotCSAgICAgIGNhc2UgMjoJCisJCXIgKz0gdGYgKyBwOyBicmVhazsKKwkgICAgICBjYXNlIDI6CiAJCXAxID0geSoodTAreSoodTEreSoodTIreSoodTMreSoodTQreSp1NSkpKSkpOwogCQlwMiA9IG9uZSt5Kih2MSt5Kih2Mit5Kih2Myt5Kih2NCt5KnY1KSkpKTsKLQkJciArPSAoLTAuNSp5ICsgcDEvcDIpOworCQlyICs9IHAxL3AyLXkvMjsKIAkgICAgfQogCX0KLQllbHNlIGlmKGl4PDB4NDAyMDAwMDApIHsgCQkJLyogeCA8IDguMCAqLwotCSAgICBpID0gKGludCl4OwotCSAgICB5ID0geC0oZG91YmxlKWk7CisgICAgLyogeCA8IDguMCAqLworCWVsc2UgaWYoaXg8MHg0MDIwMDAwMCkgeworCSAgICBpID0geDsKKwkgICAgeSA9IHgtaTsKIAkgICAgcCA9IHkqKHMwK3kqKHMxK3kqKHMyK3kqKHMzK3kqKHM0K3kqKHM1K3kqczYpKSkpKSk7CiAJICAgIHEgPSBvbmUreSoocjEreSoocjIreSoocjMreSoocjQreSoocjUreSpyNikpKSkpOwotCSAgICByID0gaGFsZip5K3AvcTsKKwkgICAgciA9IHkvMitwL3E7CiAJICAgIHogPSBvbmU7CS8qIGxnYW1tYSgxK3MpID0gbG9nKHMpICsgbGdhbW1hKHMpICovCiAJICAgIHN3aXRjaChpKSB7Ci0JICAgIGNhc2UgNzogeiAqPSAoeSs2LjApOwkvKiBGQUxMVEhSVSAqLwotCSAgICBjYXNlIDY6IHogKj0gKHkrNS4wKTsJLyogRkFMTFRIUlUgKi8KLQkgICAgY2FzZSA1OiB6ICo9ICh5KzQuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgNDogeiAqPSAoeSszLjApOwkvKiBGQUxMVEhSVSAqLwotCSAgICBjYXNlIDM6IHogKj0gKHkrMi4wKTsJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA3OiB6ICo9ICh5KzYpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA2OiB6ICo9ICh5KzUpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA1OiB6ICo9ICh5KzQpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA0OiB6ICo9ICh5KzMpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSAzOiB6ICo9ICh5KzIpOwkJLyogRkFMTFRIUlUgKi8KIAkJICAgIHIgKz0gX19pZWVlNzU0X2xvZyh6KTsgYnJlYWs7CiAJICAgIH0KLSAgICAvKiA4LjAgPD0geCA8IDIqKjU4ICovCi0JfSBlbHNlIGlmIChpeCA8IDB4NDM5MDAwMDApIHsKKyAgICAvKiA4LjAgPD0geCA8IDIqKjU2ICovCisJfSBlbHNlIGlmIChpeCA8IDB4NDM3MDAwMDApIHsKIAkgICAgdCA9IF9faWVlZTc1NF9sb2coeCk7CiAJICAgIHogPSBvbmUveDsKIAkgICAgeSA9IHoqejsKIAkgICAgdyA9IHcwK3oqKHcxK3kqKHcyK3kqKHczK3kqKHc0K3kqKHc1K3kqdzYpKSkpKTsKIAkgICAgciA9ICh4LWhhbGYpKih0LW9uZSkrdzsKLQl9IGVsc2UgCi0gICAgLyogMioqNTggPD0geCA8PSBpbmYgKi8KKwl9IGVsc2UKKyAgICAvKiAyKio1NiA8PSB4IDw9IGluZiAqLwogCSAgICByID0gIHgqKF9faWVlZTc1NF9sb2coeCktb25lKTsKIAlpZihoeDwwKSByID0gbmFkaiAtIHI7CiAJcmV0dXJuIHI7CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2UobGdhbW1hX3IsIGxnYW1tYWxfcik7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFmX3IuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFmX3IuYwppbmRleCBlMmQ5MGVmLi45MDg0ZTE4IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hZl9yLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWZfci5jCkBAIC0xLDUgKzEsNiBAQAogLyogZV9sZ2FtbWFmX3IuYyAtLSBmbG9hdCB2ZXJzaW9uIG9mIGVfbGdhbW1hX3IuYy4KICAqIENvbnZlcnNpb24gdG8gZmxvYXQgYnkgSWFuIExhbmNlIFRheWxvciwgQ3lnbnVzIFN1cHBvcnQsIGlhbkBjeWdudXMuY29tLgorICogQ29udmVyc2lvbiB0byBmbG9hdCBmaXhlZCBCeSBTdGV2ZW4gRy4gS2FyZ2wuCiAgKi8KIAogLyoKQEAgLTE5LDEwNyArMjAsOTEgQEAKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBmbG9hdCB2emVybyA9IDA7CisKIHN0YXRpYyBjb25zdCBmbG9hdAotdHdvMjM9ICA4LjM4ODYwODAwMDBlKzA2LCAvKiAweDRiMDAwMDAwICovCi1oYWxmPSAgNS4wMDAwMDAwMDAwZS0wMSwgLyogMHgzZjAwMDAwMCAqLwotb25lID0gIDEuMDAwMDAwMDAwMGUrMDAsIC8qIDB4M2Y4MDAwMDAgKi8KK3plcm89ICAwLAoraGFsZj0gIDAuNSwKK29uZSA9ICAxLAogcGkgID0gIDMuMTQxNTkyNzQxMGUrMDAsIC8qIDB4NDA0OTBmZGIgKi8KLWEwICA9ICA3LjcyMTU2NjQwODllLTAyLCAvKiAweDNkOWUyMzNmICovCi1hMSAgPSAgMy4yMjQ2NzAyOTA5ZS0wMSwgLyogMHgzZWE1MWE2NiAqLwotYTIgID0gIDYuNzM1MjMwMjM3MmUtMDIsIC8qIDB4M2Q4OWYwMDEgKi8KLWEzICA9ICAyLjA1ODA4MDc3MDFlLTAyLCAvKiAweDNjYTg5OTE1ICovCi1hNCAgPSAgNy4zODU1NTA5OTgyZS0wMywgLyogMHgzYmYyMDI3ZSAqLwotYTUgID0gIDIuODkwNTEzNzQ0MmUtMDMsIC8qIDB4M2IzZDZlYzYgKi8KLWE2ICA9ICAxLjE5MjcwNzY4NDhlLTAzLCAvKiAweDNhOWM1NGExICovCi1hNyAgPSAgNS4xMDA2OTc3NDQ2ZS0wNCwgLyogMHgzYTA1YjYzNCAqLwotYTggID0gIDIuMjA4NjI3ODQ3N2UtMDQsIC8qIDB4Mzk2Nzk3NjcgKi8KLWE5ICA9ICAxLjA4MDExNTY4OTVlLTA0LCAvKiAweDM4ZTI4NDQ1ICovCi1hMTAgPSAgMi41MjE0NDU2NDAwZS0wNSwgLyogMHgzN2QzODNhMiAqLwotYTExID0gIDQuNDg2NDA5NjcwOGUtMDUsIC8qIDB4MzgzYzJjNzUgKi8KLXRjICA9ICAxLjQ2MTYzMjEzMjVlKzAwLCAvKiAweDNmYmIxNmMzICovCi10ZiAgPSAtMS4yMTQ4NjI4Mzg0ZS0wMSwgLyogMHhiZGY4Y2RjZCAqLwotLyogdHQgPSAtKHRhaWwgb2YgdGYpICovCi10dCAgPSAgNi42OTcxMDA2NTE4ZS0wOSwgLyogMHgzMWU2MWM1MiAqLwotdDAgID0gIDQuODM4MzYxMTQ0MWUtMDEsIC8qIDB4M2VmN2I5NWUgKi8KLXQxICA9IC0xLjQ3NTg3NzE2NThlLTAxLCAvKiAweGJlMTcyMTNjICovCi10MiAgPSAgNi40NjI0OTQyODM5ZS0wMiwgLyogMHgzZDg0NWExNSAqLwotdDMgID0gLTMuMjc4ODU0MTE2OGUtMDIsIC8qIDB4YmQwNjRkNDcgKi8KLXQ0ICA9ICAxLjc5NzA2NzU2MDNlLTAyLCAvKiAweDNjOTMzNzNkICovCi10NSAgPSAtMS4wMzE0MjI0Mjg4ZS0wMiwgLyogMHhiYzI4ZmNmZSAqLwotdDYgID0gIDYuMTAwNTM4NjUyNGUtMDMsIC8qIDB4M2JjN2U3MDcgKi8KLXQ3ICA9IC0zLjY4NDUyMDI1NThlLTAzLCAvKiAweGJiNzE3N2ZlICovCi10OCAgPSAgMi4yNTk2NDc3MDY1ZS0wMywgLyogMHgzYjE0MTY5OSAqLwotdDkgID0gLTEuNDAzNDY0NzAyOWUtMDMsIC8qIDB4YmFiN2Y0NzYgKi8KLXQxMCA9ICA4LjgxMDgxODU0NDZlLTA0LCAvKiAweDNhNjZmODY3ICovCi10MTEgPSAtNS4zODU5NTMxMTgxZS0wNCwgLyogMHhiYTBkMzA4NSAqLwotdDEyID0gIDMuMTU2MzIwNTk5NGUtMDQsIC8qIDB4MzlhNTdiNmIgKi8KLXQxMyA9IC0zLjEyNzU0MTU2NzdlLTA0LCAvKiAweGI5YTNmOTI3ICovCi10MTQgPSAgMy4zNTUyOTE4NDY3ZS0wNCwgLyogMHgzOWFmZTlmNyAqLwotdTAgID0gLTcuNzIxNTY2NDA4OWUtMDIsIC8qIDB4YmQ5ZTIzM2YgKi8KLXUxICA9ICA2LjMyODI3MDQzNTNlLTAxLCAvKiAweDNmMjIwMGY0ICovCi11MiAgPSAgMS40NTQ5MjI1NTY5ZSswMCwgLyogMHgzZmJhM2FlNyAqLwotdTMgID0gIDkuNzc3MTc1MTg4MWUtMDEsIC8qIDB4M2Y3YTRiYjIgKi8KLXU0ICA9ICAyLjI4OTYzNzMyNzJlLTAxLCAvKiAweDNlNmE3NTc4ICovCi11NSAgPSAgMS4zMzgxMDkxODc4ZS0wMiwgLyogMHgzYzViM2M1ZSAqLwotdjEgID0gIDIuNDU1OTc3OTE2N2UrMDAsIC8qIDB4NDAxZDJlYmUgKi8KLXYyICA9ICAyLjEyODQ4OTczMjdlKzAwLCAvKiAweDQwMDgzOTJkICovCi12MyAgPSAgNy42OTI4NTE0MjQyZS0wMSwgLyogMHgzZjQ0ZWZkZiAqLwotdjQgID0gIDEuMDQyMjI2NDc4NWUtMDEsIC8qIDB4M2RkNTcyYWYgKi8KLXY1ICA9ICAzLjIxNzA5MjQ4MjRlLTAzLCAvKiAweDNiNTJkNWRiICovCi1zMCAgPSAtNy43MjE1NjY0MDg5ZS0wMiwgLyogMHhiZDllMjMzZiAqLwotczEgID0gIDIuMTQ5ODI0MjAyMWUtMDEsIC8qIDB4M2U1YzI0NWEgKi8KLXMyICA9ICAzLjI1Nzc4NzgyMzdlLTAxLCAvKiAweDNlYTZjYzdhICovCi1zMyAgPSAgMS40NjM1MDQ3MzE3ZS0wMSwgLyogMHgzZTE1ZGNlNiAqLwotczQgID0gIDIuNjY0MjI3MDM4NmUtMDIsIC8qIDB4M2NkYTQwZTQgKi8KLXM1ICA9ICAxLjg0MDI4NDU1OTllLTAzLCAvKiAweDNhZjEzNWI0ICovCi1zNiAgPSAgMy4xOTQ3NTMyOTg5ZS0wNSwgLyogMHgzODA1ZmY2NyAqLwotcjEgID0gIDEuMzkyMDA1MzI0NGUrMDAsIC8qIDB4M2ZiMjJkM2IgKi8KLXIyICA9ICA3LjIxOTM1NTcwMjRlLTAxLCAvKiAweDNmMzhkMGM1ICovCi1yMyAgPSAgMS43MTkzMzg1OTU5ZS0wMSwgLyogMHgzZTMwMGY2ZSAqLwotcjQgID0gIDEuODY0NTkxOTg1OWUtMDIsIC8qIDB4M2M5OGJmNTQgKi8KLXI1ICA9ICA3Ljc3OTQyNDc3NzNlLTA0LCAvKiAweDNhNGJlZWQ2ICovCi1yNiAgPSAgNy4zMjY2ODQyMjY0ZS0wNiwgLyogMHgzNmY1ZDdiZCAqLwotdzAgID0gIDQuMTg5Mzg1NDczN2UtMDEsIC8qIDB4M2VkNjdmMWQgKi8KLXcxICA9ICA4LjMzMzMzMzU4MTdlLTAyLCAvKiAweDNkYWFhYWFiICovCi13MiAgPSAtMi43Nzc3Nzc4NDUwZS0wMywgLyogMHhiYjM2MGI2MSAqLwotdzMgID0gIDcuOTM2NTA1NzE3MmUtMDQsIC8qIDB4M2E1MDBjZmQgKi8KLXc0ICA9IC01Ljk1MTg3NTM1NTFlLTA0LCAvKiAweGJhMWMwNjVjICovCi13NSAgPSAgOC4zNjMzOTg5NTYxZS0wNCwgLyogMHgzYTViM2RkMiAqLwotdzYgID0gLTEuNjMwOTI5Mjk4N2UtMDM7IC8qIDB4YmFkNWM0ZTggKi8KKy8qCisgKiBEb21haW4geSBpbiBbMHgxcC0yNywgMC4yN10sIHJhbmdlIH5bLTMuNDU5OWUtMTAsIDMuNDU5MGUtMTBdOgorICogfChsZ2FtbWEoMiAtIHkpICsgMC41ICogeSkgLyB5IC0gYSh5KXwgPCAyKiotMzEuNAorICovCithMCAgPSAgNy43MjE1NjY0MWUtMDIsIC8qIDB4M2Q5ZTIzM2YgKi8KK2ExICA9ICAzLjIyNDY3MTE5ZS0wMSwgLyogMHgzZWE1MWE2OSAqLworYTIgID0gIDYuNzM0ODQ4MDJlLTAyLCAvKiAweDNkODllZTAwICovCithMyAgPSAgMi4wNjM5NTY2N2UtMDIsIC8qIDB4M2NhOTE0NGYgKi8KK2E0ICA9ICA2Ljk4Mjc1NjMxZS0wMywgLyogMHgzYmU0Y2Y5YiAqLworYTUgID0gIDQuMTE3Njg0NDRlLTAzLCAvKiAweDNiODZlZGE0ICovCisvKgorICogRG9tYWluIHggaW4gW3RjLTAuMjQsIHRjKzAuMjhdLCByYW5nZSB+Wy01LjY1NzdlLTEwLCA1LjU2NzdlLTEwXToKKyAqIHwobGdhbW1hKHgpIC0gdGYpIC0gdCh4IC0gdGMpfCA8IDIqKi0zMC44LgorICovCit0YyAgPSAgMS40NjE2MzIxM2UrMDAsIC8qIDB4M2ZiYjE2YzMgKi8KK3RmICA9IC0xLjIxNDg2MjkxZS0wMSwgLyogMHhiZGY4Y2RjZSAqLwordDAgID0gLTIuOTQwNjQ0NjBlLTExLCAvKiAweGFlMDE1NGI3ICovCit0MSAgPSAtMi4zNTkzOTgzN2UtMDgsIC8qIDB4YjJjYWFiYjggKi8KK3QyICA9ICA0LjgzODM2NDEyZS0wMSwgLyogMHgzZWY3Yjk2OCAqLwordDMgID0gLTEuNDc1ODYyMTJlLTAxLCAvKiAweGJlMTcyMGQ3ICovCit0NCAgPSAgNi40NjAxMzA5NmUtMDIsIC8qIDB4M2Q4NDRkYjEgKi8KK3Q1ICA9IC0zLjI4NDUwMzUyZS0wMiwgLyogMHhiZDA2ODg4NCAqLwordDYgID0gIDEuODY0ODM3NDhlLTAyLCAvKiAweDNjOThjNDdhICovCit0NyAgPSAtOS44OTIwNjIyOGUtMDMsIC8qIDB4YmMyMjEyNTEgKi8KKy8qCisgKiBEb21haW4geSBpbiBbLTAuMSwgMC4yMzJdLCByYW5nZSB+Wy04LjQ5MzFlLTEwLCA4Ljc3OTRlLTEwXToKKyAqIHwobGdhbW1hKDEgKyB5KSArIDAuNSAqIHkpIC8geSAtIHUoeSkgLyB2KHkpfCA8IDIqKi0zMS4yCisgKi8KK3UwICA9IC03LjcyMTU2NjQxZS0wMiwgLyogMHhiZDllMjMzZiAqLwordTEgID0gIDcuMzY3ODk3MDNlLTAxLCAvKiAweDNmM2M5ZTQwICovCit1MiAgPSAgNC45NTY0OTA0MGUtMDEsIC8qIDB4M2VmZGM1YjYgKi8KK3YxICA9ICAxLjEwOTU4NDIxZSswMCwgLyogMHgzZjhlMDZkYiAqLwordjIgID0gIDIuMTA1OTgxMTFlLTAxLCAvKiAweDNlNTdhNzA4ICovCit2MyAgPSAtMS4wMjk5NTQ5NGUtMDIsIC8qIDB4YmMyOGJmNzEgKi8KKy8qCisgKiBEb21haW4geCBpbiAoMiwgM10sIHJhbmdlIH5bLTUuNTE4OWUtMTEsIDUuMjMxN2UtMTFdOgorICogfChsZ2FtbWEoeSsyKSAtIDAuNSAqIHkpIC8geSAtIHMoeSkvcih5KXwgPCAyKiotMzUuMAorICogd2l0aCB5ID0geCAtIDIuCisgKi8KK3MwID0gLTcuNzIxNTY2NDFlLTAyLCAvKiAweGJkOWUyMzNmICovCitzMSA9ICAyLjY5OTg3NDA0ZS0wMSwgLyogMHgzZThhM2JjYSAqLworczIgPSAgMS40Mjg1MTAxMGUtMDEsIC8qIDB4M2UxMjQ3ODkgKi8KK3MzID0gIDEuMTkzODk1MTllLTAyLCAvKiAweDNjNDM5Yjk4ICovCityMSA9ICA2Ljc5NjUwMDY4ZS0wMSwgLyogMHgzZjJkZmQ4YyAqLworcjIgPSAgMS4xNjA1ODczMGUtMDEsIC8qIDB4M2RlZGIwMzMgKi8KK3IzID0gIDMuNzU2NzM2ODdlLTAzLCAvKiAweDNiNzYzMzk2ICovCisvKgorICogRG9tYWluIHogaW4gWzgsIDB4MXAyNF0sIHJhbmdlIH5bLTEuMjY0MGUtMDksIDEuMjY0MGUtMDldOgorICogfGxnYW1tYSh4KSAtICh4IC0gMC41KSAqIChsb2coeCkgLSAxKSAtIHcoMS94KXwgPCAyKiotMjkuNi4KKyAqLwordzAgPSAgNC4xODkzODU0N2UtMDEsIC8qIDB4M2VkNjdmMWQgKi8KK3cxID0gIDguMzMzMzI0NjRlLTAyLCAvKiAweDNkYWFhYTlmICovCit3MiA9IC0yLjc2MTI5MDg3ZS0wMzsgLyogMHhiYjM0ZjZjNiAqLwogCi1zdGF0aWMgY29uc3QgZmxvYXQgemVybz0gIDAuMDAwMDAwMDAwMGUrMDA7Ci0KLQlzdGF0aWMgZmxvYXQgc2luX3BpZihmbG9hdCB4KQorc3RhdGljIGZsb2F0CitzaW5fcGlmKGZsb2F0IHgpCiB7CisJdm9sYXRpbGUgZmxvYXQgdno7CiAJZmxvYXQgeSx6OwotCWludCBuLGl4OworCWludCBuOwogCi0JR0VUX0ZMT0FUX1dPUkQoaXgseCk7Ci0JaXggJj0gMHg3ZmZmZmZmZjsKKwl5ID0gLXg7CiAKLQlpZihpeDwweDNlODAwMDAwKSByZXR1cm4gX19rZXJuZWxfc2luZGYocGkqeCk7Ci0JeSA9IC14OwkJLyogeCBpcyBhc3N1bWUgbmVnYXRpdmUgKi8KKwl2eiA9IHkrMHgxcDIzRjsJCQkvKiBkZXBlbmQgb24gMCA8PSB5IDwgMHgxcDIzICovCisJeiA9IHZ6LTB4MXAyM0Y7CQkJLyogcmludGYoeSkgZm9yIHRoZSBhYm92ZSByYW5nZSAqLworCWlmICh6ID09IHkpCisJICAgIHJldHVybiB6ZXJvOwogCi0gICAgLyoKLSAgICAgKiBhcmd1bWVudCByZWR1Y3Rpb24sIG1ha2Ugc3VyZSBpbmV4YWN0IGZsYWcgbm90IHJhaXNlZCBpZiBpbnB1dAotICAgICAqIGlzIGFuIGludGVnZXIKLSAgICAgKi8KLQl6ID0gZmxvb3JmKHkpOwotCWlmKHohPXkpIHsJCQkJLyogaW5leGFjdCBhbnl3YXkgKi8KLQkgICAgeSAgKj0gKGZsb2F0KTAuNTsKLQkgICAgeSAgID0gKGZsb2F0KTIuMCooeSAtIGZsb29yZih5KSk7CS8qIHkgPSB8eHwgbW9kIDIuMCAqLwotCSAgICBuICAgPSAoaW50KSAoeSooZmxvYXQpNC4wKTsKLQl9IGVsc2UgewotICAgICAgICAgICAgaWYoaXg+PTB4NGI4MDAwMDApIHsKLSAgICAgICAgICAgICAgICB5ID0gemVybzsgbiA9IDA7ICAgICAgICAgICAgICAgICAvKiB5IG11c3QgYmUgZXZlbiAqLwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBpZihpeDwweDRiMDAwMDAwKSB6ID0geSt0d28yMzsJLyogZXhhY3QgKi8KLQkJR0VUX0ZMT0FUX1dPUkQobix6KTsKLQkJbiAmPSAxOwotICAgICAgICAgICAgICAgIHkgID0gbjsKLSAgICAgICAgICAgICAgICBuPDw9IDI7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KKwl2eiA9IHkrMHgxcDIxRjsKKwlHRVRfRkxPQVRfV09SRChuLHZ6KTsJCS8qIGJpdHMgZm9yIHJvdW5kZWQgeSAodW5pdHMgMC4yNSkgKi8KKwl6ID0gdnotMHgxcDIxRjsJCQkvKiB5IHJvdW5kZWQgdG8gYSBtdWx0aXBsZSBvZiAwLjI1ICovCisJaWYgKHogPiB5KSB7CisJICAgIHogLT0gMC4yNUY7CQkJLyogYWRqdXN0IHRvIHJvdW5kIGRvd24gKi8KKwkgICAgbi0tOworCX0KKwluICY9IDc7CQkJCS8qIG9jdGFudCBvZiB5IG1vZCAyICovCisJeSA9IHkgLSB6ICsgbiAqIDAuMjVGOwkJLyogeSBtb2QgMiAqLworCiAJc3dpdGNoIChuKSB7CiAJICAgIGNhc2UgMDogICB5ID0gIF9fa2VybmVsX3NpbmRmKHBpKnkpOyBicmVhazsKIAkgICAgY2FzZSAxOgpAQCAtMTM3LDM0ICsxMjIsMzggQEAKIGZsb2F0CiBfX2llZWU3NTRfbGdhbW1hZl9yKGZsb2F0IHgsIGludCAqc2lnbmdhbXApCiB7Ci0JZmxvYXQgdCx5LHosbmFkaixwLHAxLHAyLHAzLHEscix3OworCWZsb2F0IG5hZGoscCxwMSxwMixwMyxxLHIsdCx3LHksejsKIAlpbnQzMl90IGh4OwogCWludCBpLGl4OwogCiAJR0VUX0ZMT0FUX1dPUkQoaHgseCk7CiAKLSAgICAvKiBwdXJnZSBvZmYgKy1pbmYsIE5hTiwgKy0wLCB0aW55IGFuZCBuZWdhdGl2ZSBhcmd1bWVudHMgKi8KKyAgICAvKiBwdXJnZSArLUluZiBhbmQgTmFOcyAqLwogCSpzaWduZ2FtcCA9IDE7CiAJaXggPSBoeCYweDdmZmZmZmZmOwogCWlmKGl4Pj0weDdmODAwMDAwKSByZXR1cm4geCp4OwotCWlmKGl4PT0wKSByZXR1cm4gb25lL3plcm87Ci0JaWYoaXg8MHgzNTAwMDAwMCkgewkvKiB8eHw8MioqLTIxLCByZXR1cm4gLWxvZyh8eHwpICovCi0JICAgIGlmKGh4PDApIHsKLQkgICAgICAgICpzaWduZ2FtcCA9IC0xOwotCSAgICAgICAgcmV0dXJuIC1fX2llZWU3NTRfbG9nZigteCk7Ci0JICAgIH0gZWxzZSByZXR1cm4gLV9faWVlZTc1NF9sb2dmKHgpOworCisgICAgLyogcHVyZ2UgKy0wIGFuZCB0aW55IGFyZ3VtZW50cyAqLworCSpzaWduZ2FtcCA9IDEtMiooKHVpbnQzMl90KWh4Pj4zMSk7CisJaWYoaXg8MHgzMjAwMDAwMCkgewkJLyogfHh8PDIqKi0yNywgcmV0dXJuIC1sb2cofHh8KSAqLworCSAgICBpZihpeD09MCkKKwkgICAgICAgIHJldHVybiBvbmUvdnplcm87CisJICAgIHJldHVybiAtX19pZWVlNzU0X2xvZ2YoZmFic2YoeCkpOwogCX0KKworICAgIC8qIHB1cmdlIG5lZ2F0aXZlIGludGVnZXJzIGFuZCBzdGFydCBldmFsdWF0aW9uIGZvciBvdGhlciB4IDwgMCAqLwogCWlmKGh4PDApIHsKLQkgICAgaWYoaXg+PTB4NGIwMDAwMDApIAkvKiB8eHw+PTIqKjIzLCBtdXN0IGJlIC1pbnRlZ2VyICovCi0JCXJldHVybiBvbmUvemVybzsKKwkgICAgKnNpZ25nYW1wID0gMTsKKwkgICAgaWYoaXg+PTB4NGIwMDAwMDApIAkJLyogfHh8Pj0yKioyMywgbXVzdCBiZSAtaW50ZWdlciAqLworCQlyZXR1cm4gb25lL3Z6ZXJvOwogCSAgICB0ID0gc2luX3BpZih4KTsKLQkgICAgaWYodD09emVybykgcmV0dXJuIG9uZS96ZXJvOyAvKiAtaW50ZWdlciAqLworCSAgICBpZih0PT16ZXJvKSByZXR1cm4gb25lL3Z6ZXJvOyAvKiAtaW50ZWdlciAqLwogCSAgICBuYWRqID0gX19pZWVlNzU0X2xvZ2YocGkvZmFic2YodCp4KSk7CiAJICAgIGlmKHQ8emVybykgKnNpZ25nYW1wID0gLTE7CiAJICAgIHggPSAteDsKIAl9CiAKLSAgICAvKiBwdXJnZSBvZmYgMSBhbmQgMiAqLworICAgIC8qIHB1cmdlIDEgYW5kIDIgKi8KIAlpZiAoaXg9PTB4M2Y4MDAwMDB8fGl4PT0weDQwMDAwMDAwKSByID0gMDsKICAgICAvKiBmb3IgeCA8IDIuMCAqLwogCWVsc2UgaWYoaXg8MHg0MDAwMDAwMCkgewpAQCAtMTc1LDU1ICsxNjQsNTEgQEAKIAkgIAllbHNlIHt5ID0geDsgaT0yO30KIAkgICAgfSBlbHNlIHsKIAkgIAlyID0gemVybzsKLQkgICAgICAgIGlmKGl4Pj0weDNmZGRhNjE4KSB7eT0oZmxvYXQpMi4wLXg7aT0wO30gLyogWzEuNzMxNiwyXSAqLworCSAgICAgICAgaWYoaXg+PTB4M2ZkZGE2MTgpIHt5PTIteDtpPTA7fSAvKiBbMS43MzE2LDJdICovCiAJICAgICAgICBlbHNlIGlmKGl4Pj0weDNGOWRhNjIwKSB7eT14LXRjO2k9MTt9IC8qIFsxLjIzLDEuNzNdICovCiAJCWVsc2Uge3k9eC1vbmU7aT0yO30KIAkgICAgfQogCSAgICBzd2l0Y2goaSkgewogCSAgICAgIGNhc2UgMDoKIAkJeiA9IHkqeTsKLQkJcDEgPSBhMCt6KihhMit6KihhNCt6KihhNit6KihhOCt6KmExMCkpKSk7Ci0JCXAyID0geiooYTEreiooYTMreiooYTUreiooYTcreiooYTkreiphMTEpKSkpKTsKKwkJcDEgPSBhMCt6KihhMit6KmE0KTsKKwkJcDIgPSB6KihhMSt6KihhMyt6KmE1KSk7CiAJCXAgID0geSpwMStwMjsKLQkJciAgKz0gKHAtKGZsb2F0KTAuNSp5KTsgYnJlYWs7CisJCXIgICs9IHAteS8yOyBicmVhazsKIAkgICAgICBjYXNlIDE6Ci0JCXogPSB5Knk7Ci0JCXcgPSB6Knk7Ci0JCXAxID0gdDArdyoodDMrdyoodDYrdyoodDkgK3cqdDEyKSkpOwkvKiBwYXJhbGxlbCBjb21wICovCi0JCXAyID0gdDErdyoodDQrdyoodDcrdyoodDEwK3cqdDEzKSkpOwotCQlwMyA9IHQyK3cqKHQ1K3cqKHQ4K3cqKHQxMSt3KnQxNCkpKTsKLQkJcCAgPSB6KnAxLSh0dC13KihwMit5KnAzKSk7Ci0JCXIgKz0gKHRmICsgcCk7IGJyZWFrOworCQlwID0gdDAreSp0MSt5KnkqKHQyK3kqKHQzK3kqKHQ0K3kqKHQ1K3kqKHQ2K3kqdDcpKSkpKTsKKwkJciArPSB0ZiArIHA7IGJyZWFrOwogCSAgICAgIGNhc2UgMjoKLQkJcDEgPSB5Kih1MCt5Kih1MSt5Kih1Mit5Kih1Myt5Kih1NCt5KnU1KSkpKSk7Ci0JCXAyID0gb25lK3kqKHYxK3kqKHYyK3kqKHYzK3kqKHY0K3kqdjUpKSkpOwotCQlyICs9ICgtKGZsb2F0KTAuNSp5ICsgcDEvcDIpOworCQlwMSA9IHkqKHUwK3kqKHUxK3kqdTIpKTsKKwkJcDIgPSBvbmUreSoodjEreSoodjIreSp2MykpOworCQlyICs9IHAxL3AyLXkvMjsKIAkgICAgfQogCX0KLQllbHNlIGlmKGl4PDB4NDEwMDAwMDApIHsgCQkJLyogeCA8IDguMCAqLwotCSAgICBpID0gKGludCl4OwotCSAgICB5ID0geC0oZmxvYXQpaTsKLQkgICAgcCA9IHkqKHMwK3kqKHMxK3kqKHMyK3kqKHMzK3kqKHM0K3kqKHM1K3kqczYpKSkpKSk7Ci0JICAgIHEgPSBvbmUreSoocjEreSoocjIreSoocjMreSoocjQreSoocjUreSpyNikpKSkpOwotCSAgICByID0gaGFsZip5K3AvcTsKKyAgICAvKiB4IDwgOC4wICovCisJZWxzZSBpZihpeDwweDQxMDAwMDAwKSB7CisJICAgIGkgPSB4OworCSAgICB5ID0geC1pOworCSAgICBwID0geSooczAreSooczEreSooczIreSpzMykpKTsKKwkgICAgcSA9IG9uZSt5KihyMSt5KihyMit5KnIzKSk7CisJICAgIHIgPSB5LzIrcC9xOwogCSAgICB6ID0gb25lOwkvKiBsZ2FtbWEoMStzKSA9IGxvZyhzKSArIGxnYW1tYShzKSAqLwogCSAgICBzd2l0Y2goaSkgewotCSAgICBjYXNlIDc6IHogKj0gKHkrKGZsb2F0KTYuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgNjogeiAqPSAoeSsoZmxvYXQpNS4wKTsJLyogRkFMTFRIUlUgKi8KLQkgICAgY2FzZSA1OiB6ICo9ICh5KyhmbG9hdCk0LjApOwkvKiBGQUxMVEhSVSAqLwotCSAgICBjYXNlIDQ6IHogKj0gKHkrKGZsb2F0KTMuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgMzogeiAqPSAoeSsoZmxvYXQpMi4wKTsJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA3OiB6ICo9ICh5KzYpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA2OiB6ICo9ICh5KzUpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA1OiB6ICo9ICh5KzQpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSA0OiB6ICo9ICh5KzMpOwkJLyogRkFMTFRIUlUgKi8KKwkgICAgY2FzZSAzOiB6ICo9ICh5KzIpOwkJLyogRkFMTFRIUlUgKi8KIAkJICAgIHIgKz0gX19pZWVlNzU0X2xvZ2Yoeik7IGJyZWFrOwogCSAgICB9Ci0gICAgLyogOC4wIDw9IHggPCAyKio1OCAqLwotCX0gZWxzZSBpZiAoaXggPCAweDVjODAwMDAwKSB7CisgICAgLyogOC4wIDw9IHggPCAyKioyNyAqLworCX0gZWxzZSBpZiAoaXggPCAweDRkMDAwMDAwKSB7CiAJICAgIHQgPSBfX2llZWU3NTRfbG9nZih4KTsKIAkgICAgeiA9IG9uZS94OwogCSAgICB5ID0geip6OwotCSAgICB3ID0gdzAreioodzEreSoodzIreSoodzMreSoodzQreSoodzUreSp3NikpKSkpOworCSAgICB3ID0gdzAreioodzEreSp3Mik7CiAJICAgIHIgPSAoeC1oYWxmKSoodC1vbmUpK3c7CiAJfSBlbHNlCi0gICAgLyogMioqNTggPD0geCA8PSBpbmYgKi8KKyAgICAvKiAyKioyNyA8PSB4IDw9IGluZiAqLwogCSAgICByID0gIHgqKF9faWVlZTc1NF9sb2dmKHgpLW9uZSk7CiAJaWYoaHg8MCkgciA9IG5hZGogLSByOwogCXJldHVybiByOwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWJjMmZjNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFsLmMKQEAgLTAsMCArMSwyNSBAQAorLyogQCgjKWVfbGdhbW1hLmMgMS4zIDk1LzAxLzE4ICovCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcworICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIGlzIHByZXNlcnZlZC4KKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKyNpbmNsdWRlICJtYXRoLmgiCisjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCisKK2V4dGVybiBpbnQgc2lnbmdhbTsKKworbG9uZyBkb3VibGUKK2xnYW1tYWwobG9uZyBkb3VibGUgeCkKK3sKKwlyZXR1cm4gbGdhbW1hbF9yKHgsJnNpZ25nYW0pOworfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jCmluZGV4IDc2MDdhNGEuLmQ1NGFmOWQgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9wb3cuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMKQEAgLTE5LDIwICsxOSwyMCBAQAogICoJMS4gQ29tcHV0ZSBhbmQgcmV0dXJuIGxvZzIoeCkgaW4gdHdvIHBpZWNlczoKICAqCQlsb2cyKHgpID0gdzEgKyB3MiwKICAqCSAgIHdoZXJlIHcxIGhhcyA1My0yNCA9IDI5IGJpdCB0cmFpbGluZyB6ZXJvcy4KLSAqCTIuIFBlcmZvcm0geSpsb2cyKHgpID0gbit5JyBieSBzaW11bGF0aW5nIG11dGktcHJlY2lzaW9uIAorICoJMi4gUGVyZm9ybSB5KmxvZzIoeCkgPSBuK3knIGJ5IHNpbXVsYXRpbmcgbXVsdGktcHJlY2lzaW9uIAogICoJICAgYXJpdGhtZXRpYywgd2hlcmUgfHknfDw9MC41LgogICoJMy4gUmV0dXJuIHgqKnkgPSAyKipuKmV4cCh5Jypsb2cyKQogICoKICAqIFNwZWNpYWwgY2FzZXM6CiAgKgkxLiAgKGFueXRoaW5nKSAqKiAwICBpcyAxCiAgKgkyLiAgKGFueXRoaW5nKSAqKiAxICBpcyBpdHNlbGYKLSAqCTMuICAoYW55dGhpbmcpICoqIE5BTiBpcyBOQU4KKyAqCTMuICAoYW55dGhpbmcpICoqIE5BTiBpcyBOQU4gZXhjZXB0IDEgKiogTkFOID0gMQogICoJNC4gIE5BTiAqKiAoYW55dGhpbmcgZXhjZXB0IDApIGlzIE5BTgogICoJNS4gICstKHx4fCA+IDEpICoqICArSU5GIGlzICtJTkYKICAqCTYuICArLSh8eHwgPiAxKSAqKiAgLUlORiBpcyArMAogICoJNy4gICstKHx4fCA8IDEpICoqICArSU5GIGlzICswCiAgKgk4LiAgKy0ofHh8IDwgMSkgKiogIC1JTkYgaXMgK0lORgotICoJOS4gICstMSAgICAgICAgICoqICstSU5GIGlzIE5BTgorICoJOS4gICstMSAgICAgICAgICoqICstSU5GIGlzIDEKICAqCTEwLiArMCAqKiAoK2FueXRoaW5nIGV4Y2VwdCAwLCBOQU4pICAgICAgICAgICAgICAgaXMgKzAKICAqCTExLiAtMCAqKiAoK2FueXRoaW5nIGV4Y2VwdCAwLCBOQU4sIG9kZCBpbnRlZ2VyKSAgaXMgKzAKICAqCTEyLiArMCAqKiAoLWFueXRoaW5nIGV4Y2VwdCAwLCBOQU4pICAgICAgICAgICAgICAgaXMgK0lORgpAQCAtMTQxLDcgKzE0MSw3IEBACiAJaWYobHk9PTApIHsgCQogCSAgICBpZiAoaXk9PTB4N2ZmMDAwMDApIHsJLyogeSBpcyArLWluZiAqLwogCSAgICAgICAgaWYoKChpeC0weDNmZjAwMDAwKXxseCk9PTApCi0JCSAgICByZXR1cm4gIG9uZTsJLyogKC0xKSoqKy1pbmYgaXMgTmFOICovCisJCSAgICByZXR1cm4gIG9uZTsJLyogKC0xKSoqKy1pbmYgaXMgMSAqLwogCSAgICAgICAgZWxzZSBpZiAoaXggPj0gMHgzZmYwMDAwMCkvKiAofHh8PjEpKiorLWluZiA9IGluZiwwICovCiAJCSAgICByZXR1cm4gKGh5Pj0wKT8geTogemVybzsKIAkgICAgICAgIGVsc2UJCQkvKiAofHh8PDEpKiotLCtpbmYgPSBpbmYsMCAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5oLmMKaW5kZXggMTc0NDJkMC4uNmMwMWY0YSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jCkBAIC0zMiw2ICszMiw4IEBACiAgKglvbmx5IHNpbmgoMCk9MCBpcyBleGFjdCBmb3IgZmluaXRlIHguCiAgKi8KIAorI2luY2x1ZGUgPGZsb2F0Lmg+CisKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKQEAgLTcxLDMgKzczLDcgQEAKICAgICAvKiB8eHwgPiBvdmVyZmxvd3RocmVzb2xkLCBzaW5oKHgpIG92ZXJmbG93ICovCiAJcmV0dXJuIHgqc2h1Z2U7CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2Uoc2luaCwgc2luaGwpOworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5obC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNlN2UzMzMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaGwuYwpAQCAtMCwwICsxLDEzMSBAQAorLyogZnJvbTogRnJlZUJTRDogaGVhZC9saWIvbXN1bi9zcmMvZV9zaW5obC5jIFhYWCAqLworCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuUHJvLCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogaXMgcHJlc2VydmVkLgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworLyoKKyAqIFNlZSBlX3NpbmguYyBmb3IgY29tcGxldGUgY29tbWVudHMuCisgKgorICogQ29udmVydGVkIHRvIGxvbmcgZG91YmxlIGJ5IEJydWNlIEQuIEV2YW5zLgorICovCisKKyNpbmNsdWRlIDxmbG9hdC5oPgorI2lmZGVmIF9faTM4Nl9fCisjaW5jbHVkZSA8aWVlZWZwLmg+CisjZW5kaWYKKworI2luY2x1ZGUgImZwbWF0aC5oIgorI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKyNpbmNsdWRlICJrX2V4cGwuaCIKKworI2lmIExEQkxfTUFYX0VYUCAhPSAweDQwMDAKKy8qIFdlIGFsc28gcmVxdWlyZSB0aGUgdXN1YWwgZXhwc2lnbiBlbmNvZGluZy4gKi8KKyNlcnJvciAiVW5zdXBwb3J0ZWQgbG9uZyBkb3VibGUgZm9ybWF0IgorI2VuZGlmCisKKyNkZWZpbmUJQklBUwkoTERCTF9NQVhfRVhQIC0gMSkKKworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlIHNodWdlID0gMHgxcDE2MzgzTDsKKyNpZiBMREJMX01BTlRfRElHID09IDY0CisvKgorICogRG9tYWluIFstMSwgMV0sIHJhbmdlIH5bLTYuNjc0OWUtMjIsIDYuNjc0OWUtMjJdOgorICogfHNpbmgoeCkveCAtIHMoeCl8IDwgMioqLTcwLjMKKyAqLworc3RhdGljIGNvbnN0IHVuaW9uIElFRUVsMmJpdHMKK1MzdSA9IExEODBDKDB4YWFhYWFhYWFhYWFhYWFhYSwgLTMsICAxLjY2NjY2NjY2NjY2NjY2NjY2NjU4ZS0xTCk7CisjZGVmaW5lCVMzCVMzdS5lCitzdGF0aWMgY29uc3QgZG91YmxlCitTNSAgPSAgOC4zMzMzMzMzMzMzMzMzMzMyZS0zLAkJLyogIDB4MTExMTExMTExMTExMTEuMHAtNTkgKi8KK1M3ICA9ICAxLjk4NDEyNjk4NDEyNzAwNzRlLTQsCQkvKiAgMHgxYTAxYTAxYTAxYTA3MC4wcC02NSAqLworUzkgID0gIDIuNzU1NzMxOTIyMzg3Mzg4OWUtNiwJCS8qICAweDE3MWRlM2E1NTY1ZmU2LjBwLTcxICovCitTMTEgPSAgMi41MDUyMTA4NDA2NzA0MDg0ZS04LAkJLyogIDB4MWFlNjQ1Njg1NzUzMGYuMHAtNzggKi8KK1MxMyA9ICAxLjYwNTkwNDI3NDg2NTUyOTdlLTEwLAkJLyogIDB4MTYxMjQ1ZmE5MTA2OTcuMHAtODUgKi8KK1MxNSA9ICA3LjY0NzAwMDY5MTQzOTY5MjBlLTEzLAkJLyogIDB4MWFlN2NlNGVmZjI3OTIuMHAtOTMgKi8KK1MxNyA9ICAyLjgzNDYxNDIzMDg0MjQyNjdlLTE1OwkJLyogIDB4MTk4ODJjZTc4OWZmYzYuMHAtMTAxICovCisjZWxpZiBMREJMX01BTlRfRElHID09IDExMworLyoKKyAqIERvbWFpbiBbLTEsIDFdLCByYW5nZSB+Wy0yLjk2NzNlLTM2LCAyLjk2NzNlLTM2XToKKyAqIHxzaW5oKHgpL3ggLSBzKHgpfCA8IDIqKi0xMTguMAorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK1MzICA9ICAxLjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MDMzZS0xTCwJLyogIDB4MTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1M2IuMHAtMTE1TCAqLworUzUgID0gIDguMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzc2NDMxOTNlLTNMLAkvKiAgMHgxMTExMTExMTExMTExMTExMTExMTExMTExODBmNS4wcC0xMTlMICovCitTNyAgPSAgMS45ODQxMjY5ODQxMjY5ODQxMjY5ODQxMjY5NzM5MTI2MzE5OWUtNEwsCS8qICAweDFhMDFhMDFhMDFhMDFhMDFhMDFhMDE3NmFhZDExLjBwLTEyNUwgKi8KK1M5ICA9ICAyLjc1NTczMTkyMjM5ODU4OTA2NTI1NTc0NDA2MjA1NDY0MjE4ZS02TCwJLyogIDB4MTcxZGUzYTU1NmM3MzM4ZmFhYzI0M2FhYTk1OTIuMHAtMTMxTCAqLworUzExID0gIDIuNTA1MjEwODM4NTQ0MTcxODc3NDk2NzU2Mzc0NjA5Nzc5OTdlLThMLAkvKiAgMHgxYWU2NDU2N2Y1NDRlMzhmZTU5YjMzODBkNzQxMy4wcC0xMzhMICovCitTMTMgPSAgMS42MDU5MDQzODM2ODIxNjE0NjM2ODczNzc2MjQzMTU1MjcwMmUtMTBMLAkvKiAgMHgxNjEyNDYxM2E4NmQwOTgwNTljNzYyMDg1MGZjMi4wcC0xNDVMICovCitTMTUgPSAgNy42NDcxNjM3MzE4MTk4MDUzOTc4NjgwMjQ3MDk2OTA5NjQ0MGUtMTNMLAkvKiAgMHgxYWU3ZjNlNzMzYjgxNDE5M2FmMDljZTcyMzA0My4wcC0xNTNMICovCitTMTcgPSAgMi44MTE0NTcyNTQzNDc3NTQwOTg3MDU4NDI4MDcyMjcwMTU3NGUtMTVMOwkvKiAgMHgxOTUyYzc3MDMwYzM2ODk4YzNmZDBiNmRmYzU2Mi4wcC0xNjFMICovCitzdGF0aWMgY29uc3QgZG91YmxlCitTMTk9ICA4LjIyMDYzNTI0MzU0MTEwMDVlLTE4LAkJLyogIDB4MTJmNDliNDY2MmI4NmQuMHAtMTA5ICovCitTMjE9ICAxLjk1NzI5NDM5MzE0MTg4OTFlLTIwLAkJLyogIDB4MTcxYjhmMmZhYjk2MjguMHAtMTE4ICovCitTMjMgPSAgMy44Njc5OTgzNTMwNjY2OTM5ZS0yMywJCS8qICAweDE3NjE3MDAyYjczYWZjLjBwLTEyNyAqLworUzI1ID0gIDYuNTA2Nzg2NzkxMTUxMjc0OWUtMjY7CQkvKiAgMHgxNDIzMzUyNjI2MDQ4YS4wcC0xMzYgKi8KKyNlbHNlCisjZXJyb3IgIlVuc3VwcG9ydGVkIGxvbmcgZG91YmxlIGZvcm1hdCIKKyNlbmRpZiAvKiBMREJMX01BTlRfRElHID09IDY0ICovCisKKy8qIGxvZygyKioxNjM4NSAtIDAuNSkgcm91bmRlZCB1cDogKi8KK3N0YXRpYyBjb25zdCBmbG9hdAorb190aHJlc2hvbGQgPSAgMS4xMzU3MjE2OGU0OwkJLyogIDB4YjE3NGRlLjBwLTEwICovCisKK2xvbmcgZG91YmxlCitzaW5obChsb25nIGRvdWJsZSB4KQoreworCWxvbmcgZG91YmxlIGhpLGxvLHgyLHg0OworCWRvdWJsZSBkeDIsczsKKwlpbnQxNl90IGl4LGp4OworCisJR0VUX0xEQkxfRVhQU0lHTihqeCx4KTsKKwlpeCA9IGp4JjB4N2ZmZjsKKworICAgIC8qIHggaXMgSU5GIG9yIE5hTiAqLworCWlmKGl4Pj0weDdmZmYpIHJldHVybiB4K3g7CisKKwlFTlRFUkkoKTsKKworCXMgPSAxOworCWlmIChqeDwwKSBzID0gLTE7CisKKyAgICAvKiB8eHwgPCA2NCwgcmV0dXJuIHgsIHMoeCksIG9yIGFjY3VyYXRlIHMqKGV4cCh8eHwpLzItMS9leHAofHh8KS8yKSAqLworCWlmIChpeDwweDQwMDUpIHsJCS8qIHx4fDw2NCAqLworCSAgICBpZiAoaXg8QklBUy0oTERCTF9NQU5UX0RJRysxKS8yKSAJLyogfHh8PFRJTlkgKi8KKwkJaWYoc2h1Z2UreD4xKSBSRVRVUk5JKHgpOyAgLyogc2luaCh0aW55KSA9IHRpbnkgd2l0aCBpbmV4YWN0ICovCisJICAgIGlmIChpeDwweDNmZmYpIHsJCS8qIHx4fDwxICovCisJCXgyID0geCp4OworI2lmIExEQkxfTUFOVF9ESUcgPT0gNjQKKwkJeDQgPSB4Mip4MjsKKwkJUkVUVVJOSSgoKFMxNyp4MiArIFMxNSkqeDQgKyAoUzEzKngyICsgUzExKSkqKHgyKngqeDQqeDQpICsKKwkJICAgICgoUzkqeDIgKyBTNykqeDIgKyBTNSkqKHgyKngqeDIpICsgUzMqKHgyKngpICsgeCk7CisjZWxpZiBMREJMX01BTlRfRElHID09IDExMworCQlkeDIgPSB4MjsKKwkJUkVUVVJOSSgoKCgoKCgoKCgoUzI1KmR4MiArIFMyMykqZHgyICsKKwkJICAgIFMyMSkqeDIgKyBTMTkpKngyICsKKwkJICAgIFMxNykqeDIgKyBTMTUpKngyICsgUzEzKSp4MiArIFMxMSkqeDIgKyBTOSkqeDIgKyBTNykqeDIgKworCQkgICAgUzUpKiAoeDIqeCp4MikgKworCQkgICAgUzMqKHgyKngpICsgeCk7CisjZW5kaWYKKwkgICAgfQorCSAgICBrX2hleHBsKGZhYnNsKHgpLCAmaGksICZsbyk7CisJICAgIFJFVFVSTkkocyoobG8gLSAwLjI1LyhoaSArIGxvKSArIGhpKSk7CisJfQorCisgICAgLyogfHh8IGluIFs2NCwgb190aHJlc2hvbGRdLCByZXR1cm4gY29ycmVjdGx5LW92ZXJmbG93aW5nIHMqZXhwKHx4fCkvMiAqLworCWlmIChmYWJzbCh4KSA8PSBvX3RocmVzaG9sZCkKKwkgICAgUkVUVVJOSShzKmhleHBsKGZhYnNsKHgpKSk7CisKKyAgICAvKiB8eHwgPiBvX3RocmVzaG9sZCwgc2luaCh4KSBvdmVyZmxvdyAqLworCXJldHVybiB4KnNodWdlOworfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9mZW52LXNvZnRmbG9hdC5oIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9mZW52LXNvZnRmbG9hdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMmQyYTJjLi4wMDAwMDAwCi0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZmVudi1zb2Z0ZmxvYXQuaAorKysgL2Rldi9udWxsCkBAIC0xLDE4NCArMCwwIEBACi0vKi0KLSAqIENvcHlyaWdodCAoYykgMjAwNC0yMDExIERhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9SRz4KLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICogJEZyZWVCU0QkCi0gKi8KLQotI2lmbmRlZglfRkVOVl9IXwotI2Vycm9yICJUaGlzIGZpbGUgaXMgbWVhbnQgdG8gYmUgaW5jbHVkZWQgb25seSBieSA8ZmVudi5oPi4iCi0jZW5kaWYKLQotLyoKLSAqIFRoaXMgZmlsZSBpbXBsZW1lbnRzIHRoZSBmdW5jdGlvbmFsaXR5IG9mIDxmZW52Lmg+IG9uIHBsYXRmb3JtcyB0aGF0Ci0gKiBsYWNrIGFuIEZQVSBhbmQgdXNlIHNvZnRmbG9hdCBpbiBsaWJjIGZvciBmbG9hdGluZyBwb2ludC4gIFRvIHVzZSBpdCwKLSAqIHlvdSBtdXN0IHdyaXRlIGFuIDxmZW52Lmg+IHRoYXQgcHJvdmlkZXMgdGhlIGZvbGxvd2luZzoKLSAqCi0gKiAgIC0gYSB0eXBlZGVmIGZvciBmZW52X3QsIHdoaWNoIG1heSBiZSBhbiBpbnRlZ2VyIG9yIHN0cnVjdCB0eXBlCi0gKiAgIC0gYSB0eXBlZGVmIGZvciBmZXhjZXB0X3QgKFhYWCBUaGlzIGZpbGUgYXNzdW1lcyBmZXhjZXB0X3QgaXMgYQotICogICAgIHNpbXBsZSBpbnRlZ2VyIHR5cGUgY29udGFpbmluZyB0aGUgZXhjZXB0aW9uIG1hc2suKQotICogICAtIGRlZmluaXRpb25zIG9mIEZFXyogY29uc3RhbnRzIGZvciB0aGUgZml2ZSBleGNlcHRpb25zIGFuZCBmb3VyCi0gKiAgICAgcm91bmRpbmcgbW9kZXMgaW4gSUVFRSA3NTQsIGFzIGRlc2NyaWJlZCBpbiBmZW52KDMpCi0gKiAgIC0gYSBkZWZpbml0aW9uLCBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZXh0ZXJuYWwgc3ltYm9sLCBmb3IgRkVfREZMX0VOVgotICogICAtIGEgbWFjcm8gX19zZXRfZW52KGVudiwgZmxhZ3MsIG1hc2ssIHJuZCksIHdoaWNoIHNldHMgdGhlIGdpdmVuIGZlbnZfdAotICogICAgIGZyb20gdGhlIGV4Y2VwdGlvbiBmbGFncywgbWFzaywgYW5kIHJvdW5kaW5nIG1vZGUKLSAqICAgLSBtYWNyb3MgX19lbnZfZmxhZ3MoZW52KSwgX19lbnZfbWFzayhlbnYpLCBhbmQgX19lbnZfcm91bmQoZW52KSwgd2hpY2gKLSAqICAgICBleHRyYWN0IGZpZWxkcyBmcm9tIGFuIGZlbnZfdAotICogICAtIGEgZGVmaW5pdGlvbiBvZiBfX2ZlbnZfc3RhdGljCi0gKgotICogSWYgdGhlIGFyY2hpdGVjdHVyZSBzdXBwb3J0cyBhbiBvcHRpb25hbCBGUFUsIGl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UKLSAqIGRlZmluZSBmZW52X3QgYW5kIGZleGNlcHRfdCB0byBtYXRjaCB0aGUgaGFyZHdhcmUgQUJJLiAgT3RoZXJ3aXNlLCBpdAotICogZG9lc24ndCBtYXR0ZXIgaG93IHlvdSBkZWZpbmUgdGhlbS4KLSAqLwotCi1leHRlcm4gaW50IF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9mbGFnczsKLWV4dGVybiBpbnQgX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2s7Ci1leHRlcm4gaW50IF9fc29mdGZsb2F0X2Zsb2F0X3JvdW5kaW5nX21vZGU7Ci12b2lkIF9fc29mdGZsb2F0X2Zsb2F0X3JhaXNlKGludCk7Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVjbGVhcmV4Y2VwdChpbnQgX19leGNlcHRzKQotewotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzICY9IH5fX2V4Y2VwdHM7Ci0JcmV0dXJuICgwKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZWdldGV4Y2VwdGZsYWcoZmV4Y2VwdF90ICpfX2ZsYWdwLCBpbnQgX19leGNlcHRzKQotewotCi0JKl9fZmxhZ3AgPSBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgJiBfX2V4Y2VwdHM7Ci0JcmV0dXJuICgwKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZXNldGV4Y2VwdGZsYWcoY29uc3QgZmV4Y2VwdF90ICpfX2ZsYWdwLCBpbnQgX19leGNlcHRzKQotewotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzICY9IH5fX2V4Y2VwdHM7Ci0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzIHw9ICpfX2ZsYWdwICYgX19leGNlcHRzOwotCXJldHVybiAoMCk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVyYWlzZWV4Y2VwdChpbnQgX19leGNlcHRzKQotewotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfcmFpc2UoX19leGNlcHRzKTsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZldGVzdGV4Y2VwdChpbnQgX19leGNlcHRzKQotewotCi0JcmV0dXJuIChfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgJiBfX2V4Y2VwdHMpOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZlZ2V0cm91bmQodm9pZCkKLXsKLQotCXJldHVybiAoX19zb2Z0ZmxvYXRfZmxvYXRfcm91bmRpbmdfbW9kZSk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVzZXRyb3VuZChpbnQgX19yb3VuZCkKLXsKLQotCV9fc29mdGZsb2F0X2Zsb2F0X3JvdW5kaW5nX21vZGUgPSBfX3JvdW5kOwotCXJldHVybiAoMCk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVnZXRlbnYoZmVudl90ICpfX2VudnApCi17Ci0KLQlfX3NldF9lbnYoKl9fZW52cCwgX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzLAotCSAgICBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fbWFzaywgX19zb2Z0ZmxvYXRfZmxvYXRfcm91bmRpbmdfbW9kZSk7Ci0JcmV0dXJuICgwKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZWhvbGRleGNlcHQoZmVudl90ICpfX2VudnApCi17Ci0JZmVudl90IF9fZW52OwotCi0JZmVnZXRlbnYoX19lbnZwKTsKLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgPSAwOwotCV9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrID0gMDsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZlc2V0ZW52KGNvbnN0IGZlbnZfdCAqX19lbnZwKQotewotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzID0gX19lbnZfZmxhZ3MoKl9fZW52cCk7Ci0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2sgPSBfX2Vudl9tYXNrKCpfX2VudnApOwotCV9fc29mdGZsb2F0X2Zsb2F0X3JvdW5kaW5nX21vZGUgPSBfX2Vudl9yb3VuZCgqX19lbnZwKTsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZldXBkYXRlZW52KGNvbnN0IGZlbnZfdCAqX19lbnZwKQotewotCWludCBfX29mbGFncyA9IF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9mbGFnczsKLQotCWZlc2V0ZW52KF9fZW52cCk7Ci0JZmVyYWlzZWV4Y2VwdChfX29mbGFncyk7Ci0JcmV0dXJuICgwKTsKLX0KLQotI2lmIF9fQlNEX1ZJU0lCTEUKLQotLyogV2UgY3VycmVudGx5IHByb3ZpZGUgbm8gZXh0ZXJuYWwgZGVmaW5pdGlvbnMgb2YgdGhlIGZ1bmN0aW9ucyBiZWxvdy4gKi8KLQotc3RhdGljIGlubGluZSBpbnQKLWZlZW5hYmxlZXhjZXB0KGludCBfX21hc2spCi17Ci0JaW50IF9fb21hc2sgPSBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fbWFzazsKLQotCV9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrIHw9IF9fbWFzazsKLQlyZXR1cm4gKF9fb21hc2spOwotfQotCi1zdGF0aWMgaW5saW5lIGludAotZmVkaXNhYmxlZXhjZXB0KGludCBfX21hc2spCi17Ci0JaW50IF9fb21hc2sgPSBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fbWFzazsKLQotCV9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrICY9IH5fX21hc2s7Ci0JcmV0dXJuIChfX29tYXNrKTsKLX0KLQotc3RhdGljIGlubGluZSBpbnQKLWZlZ2V0ZXhjZXB0KHZvaWQpCi17Ci0KLQlyZXR1cm4gKF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrKTsKLX0KLQotI2VuZGlmIC8qIF9fQlNEX1ZJU0lCTEUgKi8KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvaW1wcmVjaXNlLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2ltcHJlY2lzZS5jCmluZGV4IGE3NTAzYmYuLjA4Y2QyMzkgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvaW1wcmVjaXNlLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9pbXByZWNpc2UuYwpAQCAtNjAsMTAgKzYwLDQgQEAKIAlsb25nIGRvdWJsZSBpbXByZWNpc2VfICMjIGYgIyMgbChsb25nIGRvdWJsZSB2KSB7IHJldHVybiBmKHYpOyB9XAogCURFQ0xBUkVfV0VBSyhmICMjIGwpCiAKLURFQ0xBUkVfSU1QUkVDSVNFKGNvc2gpOwotREVDTEFSRV9JTVBSRUNJU0UoZXJmYyk7Ci1ERUNMQVJFX0lNUFJFQ0lTRShlcmYpOwotREVDTEFSRV9JTVBSRUNJU0UobGdhbW1hKTsKLURFQ0xBUkVfSU1QUkVDSVNFKHNpbmgpOwotREVDTEFSRV9JTVBSRUNJU0UodGFuaCk7CiBERUNMQVJFX0lNUFJFQ0lTRSh0Z2FtbWEpOwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZi5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZi5jCmluZGV4IDA4ODZlNWUuLmUxZDYzYmMgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19lcmYuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmLmMKQEAgLTExMSwxOCArMTExLDI1IEBACiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCisvKiBYWFggUHJldmVudCBjb21waWxlcnMgZnJvbSBlcnJvbmVvdXNseSBjb25zdGFudCBmb2xkaW5nOiAqLworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGRvdWJsZSB0aW55PSAxZS0zMDA7CisKIHN0YXRpYyBjb25zdCBkb3VibGUKLXRpbnkJICAgID0gMWUtMzAwLAotaGFsZj0gIDUuMDAwMDAwMDAwMDAwMDAwMDAwMDBlLTAxLCAvKiAweDNGRTAwMDAwLCAweDAwMDAwMDAwICovCi1vbmUgPSAgMS4wMDAwMDAwMDAwMDAwMDAwMDAwMGUrMDAsIC8qIDB4M0ZGMDAwMDAsIDB4MDAwMDAwMDAgKi8KLXR3byA9ICAyLjAwMDAwMDAwMDAwMDAwMDAwMDAwZSswMCwgLyogMHg0MDAwMDAwMCwgMHgwMDAwMDAwMCAqLwotCS8qIGMgPSAoZmxvYXQpMC44NDUwNjI5MTE1MSAqLworaGFsZj0gMC41LAorb25lID0gMSwKK3R3byA9IDIsCisvKiBjID0gKGZsb2F0KTAuODQ1MDYyOTExNTEgKi8KIGVyeCA9ICA4LjQ1MDYyOTExNTEwNDY3NTI5Mjk3ZS0wMSwgLyogMHgzRkVCMEFDMSwgMHg2MDAwMDAwMCAqLwogLyoKLSAqIENvZWZmaWNpZW50cyBmb3IgYXBwcm94aW1hdGlvbiB0byAgZXJmIG9uIFswLDAuODQzNzVdCisgKiBJbiB0aGUgZG9tYWluIFswLCAyKiotMjhdLCBvbmx5IHRoZSBmaXJzdCB0ZXJtIGluIHRoZSBwb3dlciBzZXJpZXMKKyAqIGV4cGFuc2lvbiBvZiBlcmYoeCkgaXMgdXNlZC4gIFRoZSBtYWduaXR1ZGUgb2YgdGhlIGZpcnN0IG5lZ2xlY3RlZAorICogdGVybXMgaXMgbGVzcyB0aGFuIDIqKi04NC4KICAqLwogZWZ4ID0gIDEuMjgzNzkxNjcwOTU1MTI1ODYzMTZlLTAxLCAvKiAweDNGQzA2RUJBLCAweDgyMTREQjY5ICovCiBlZng4PSAgMS4wMjcwMzMzMzY3NjQxMDA2OTA1M2UrMDAsIC8qIDB4M0ZGMDZFQkEsIDB4ODIxNERCNjkgKi8KKy8qCisgKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gZXJmIG9uIFswLDAuODQzNzVdCisgKi8KIHBwMCAgPSAgMS4yODM3OTE2NzA5NTUxMjU1ODU2MWUtMDEsIC8qIDB4M0ZDMDZFQkEsIDB4ODIxNERCNjggKi8KIHBwMSAgPSAtMy4yNTA0MjEwNzI0NzAwMTQ5OTM3MGUtMDEsIC8qIDB4QkZENENEN0QsIDB4NjkxQ0I5MTMgKi8KIHBwMiAgPSAtMi44NDgxNzQ5NTc1NTk4NTEwNDc2NmUtMDIsIC8qIDB4QkY5RDJBNTEsIDB4REJENzE5NEYgKi8KQEAgLTEzNCw3ICsxNDEsNyBAQAogcXE0ICA9ICAxLjMyNDk0NzM4MDA0MzIxNjQ0NTI2ZS0wNCwgLyogMHgzRjIxNURDOSwgMHgyMjFDMUExMCAqLwogcXE1ICA9IC0zLjk2MDIyODI3ODc3NTM2ODEyMzIwZS0wNiwgLyogMHhCRUQwOUM0MywgMHg0MkEyNjEyMCAqLwogLyoKLSAqIENvZWZmaWNpZW50cyBmb3IgYXBwcm94aW1hdGlvbiB0byAgZXJmICBpbiBbMC44NDM3NSwxLjI1XQorICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvIGVyZiBpbiBbMC44NDM3NSwxLjI1XQogICovCiBwYTAgID0gLTIuMzYyMTE4NTYwNzUyNjU5NDQwNzdlLTAzLCAvKiAweEJGNjM1OUI4LCAweEJFRjc3NTM4ICovCiBwYTEgID0gIDQuMTQ4NTYxMTg2ODM3NDgzMzE2NjZlLTAxLCAvKiAweDNGREE4RDAwLCAweEFEOTJCMzREICovCkBAIC0xNTAsNyArMTU3LDcgQEAKIHFhNSAgPSAgMS4zNjM3MDgzOTEyMDI5MDUwNzM2MmUtMDIsIC8qIDB4M0Y4QkVEQzIsIDB4NkI1MUREMUMgKi8KIHFhNiAgPSAgMS4xOTg0NDk5ODQ2Nzk5MTA3NDE3MGUtMDIsIC8qIDB4M0Y4ODhCNTQsIDB4NTczNTE1MUQgKi8KIC8qCi0gKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gIGVyZmMgaW4gWzEuMjUsMS8wLjM1XQorICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvIGVyZmMgaW4gWzEuMjUsMS8wLjM1XQogICovCiByYTAgID0gLTkuODY0OTQ0MDM0ODQ3MTQ4MjI3MDVlLTAzLCAvKiAweEJGODQzNDEyLCAweDYwMEQ2NDM1ICovCiByYTEgID0gLTYuOTM4NTg1NzI3MDcxODE3NjQzNzJlLTAxLCAvKiAweEJGRTYzNDE2LCAweEU0QkE3MzYwICovCkBAIC0xNjksNyArMTc2LDcgQEAKIHNhNyAgPSAgNi41NzAyNDk3NzAzMTkyODE3MDEzNWUrMDAsIC8qIDB4NDAxQTQ3RUYsIDB4OEU0ODRBOTMgKi8KIHNhOCAgPSAtNi4wNDI0NDE1MjE0ODU4MDk4NzQzOGUtMDIsIC8qIDB4QkZBRUVGRjIsIDB4RUU3NDlBNjIgKi8KIC8qCi0gKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gIGVyZmMgaW4gWzEvLjM1LDI4XQorICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvIGVyZmMgaW4gWzEvLjM1LDI4XQogICovCiByYjAgID0gLTkuODY0OTQyOTI0NzAwMDk5Mjg1OTdlLTAzLCAvKiAweEJGODQzNDEyLCAweDM5RTg2RjRBICovCiByYjEgID0gLTcuOTkyODMyMzc2ODA1MjMwMDY1NzRlLTAxLCAvKiAweEJGRTk5M0JBLCAweDcwQzI4NURFICovCkBAIC0yMDEsNyArMjA4LDcgQEAKIAlpZihpeCA8IDB4M2ZlYjAwMDApIHsJCS8qIHx4fDwwLjg0Mzc1ICovCiAJICAgIGlmKGl4IDwgMHgzZTMwMDAwMCkgeyAJLyogfHh8PDIqKi0yOCAqLwogCSAgICAgICAgaWYgKGl4IDwgMHgwMDgwMDAwMCkKLQkJICAgIHJldHVybiAwLjEyNSooOC4wKngrZWZ4OCp4KTsgIC8qYXZvaWQgdW5kZXJmbG93ICovCisJCSAgICByZXR1cm4gKDgqeCtlZng4KngpLzg7CS8qIGF2b2lkIHNwdXJpb3VzIHVuZGVyZmxvdyAqLwogCQlyZXR1cm4geCArIGVmeCp4OwogCSAgICB9CiAJICAgIHogPSB4Kng7CkBAIC0yMjIsMTUgKzIyOSwxMiBAQAogCXggPSBmYWJzKHgpOwogIAlzID0gb25lLyh4KngpOwogCWlmKGl4PCAweDQwMDZEQjZFKSB7CS8qIHx4fCA8IDEvMC4zNSAqLwotCSAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyooCi0JCQkJcmE1K3MqKHJhNitzKnJhNykpKSkpKTsKLQkgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcyooc2E0K3MqKAotCQkJCXNhNStzKihzYTYrcyooc2E3K3Mqc2E4KSkpKSkpKTsKKwkgICAgUj1yYTArcyoocmExK3MqKHJhMitzKihyYTMrcyoocmE0K3MqKHJhNStzKihyYTYrcypyYTcpKSkpKSk7CisJICAgIFM9b25lK3MqKHNhMStzKihzYTIrcyooc2EzK3MqKHNhNCtzKihzYTUrcyooc2E2K3MqKHNhNysKKwkJcypzYTgpKSkpKSkpOwogCX0gZWxzZSB7CS8qIHx4fCA+PSAxLzAuMzUgKi8KLQkgICAgUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcyoocmI0K3MqKAotCQkJCXJiNStzKnJiNikpKSkpOwotCSAgICBTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKihzYjQrcyooCi0JCQkJc2I1K3MqKHNiNitzKnNiNykpKSkpKTsKKwkgICAgUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcyoocmI0K3MqKHJiNStzKnJiNikpKSkpOworCSAgICBTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKihzYjQrcyooc2I1K3MqKHNiNitzKnNiNykpKSkpKTsKIAl9CiAJeiAgPSB4OwogCVNFVF9MT1dfV09SRCh6LDApOwpAQCAtMjM4LDYgKzI0MiwxMCBAQAogCWlmKGh4Pj0wKSByZXR1cm4gb25lLXIveDsgZWxzZSByZXR1cm4gIHIveC1vbmU7CiB9CiAKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2UoZXJmLCBlcmZsKTsKKyNlbmRpZgorCiBkb3VibGUKIGVyZmMoZG91YmxlIHgpCiB7CkBAIC0yNzksMjMgKzI4NywyMyBAQAogCSAgICB4ID0gZmFicyh4KTsKICAJICAgIHMgPSBvbmUvKHgqeCk7CiAJICAgIGlmKGl4PCAweDQwMDZEQjZEKSB7CS8qIHx4fCA8IDEvLjM1IH4gMi44NTcxNDMqLwotCSAgICAgICAgUj1yYTArcyoocmExK3MqKHJhMitzKihyYTMrcyoocmE0K3MqKAotCQkJCXJhNStzKihyYTYrcypyYTcpKSkpKSk7Ci0JICAgICAgICBTPW9uZStzKihzYTErcyooc2EyK3MqKHNhMytzKihzYTQrcyooCi0JCQkJc2E1K3MqKHNhNitzKihzYTcrcypzYTgpKSkpKSkpOworCQlSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyoocmE1K3MqKHJhNitzKnJhNykpKSkpKTsKKwkJUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcyooc2E0K3MqKHNhNStzKihzYTYrcyooc2E3KworCQkgICAgcypzYTgpKSkpKSkpOwogCSAgICB9IGVsc2UgewkJCS8qIHx4fCA+PSAxLy4zNSB+IDIuODU3MTQzICovCiAJCWlmKGh4PDAmJml4Pj0weDQwMTgwMDAwKSByZXR1cm4gdHdvLXRpbnk7LyogeCA8IC02ICovCi0JICAgICAgICBSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyooCi0JCQkJcmI1K3MqcmI2KSkpKSk7Ci0JICAgICAgICBTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKihzYjQrcyooCi0JCQkJc2I1K3MqKHNiNitzKnNiNykpKSkpKTsKKwkJUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcyoocmI0K3MqKHJiNStzKnJiNikpKSkpOworCQlTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKihzYjQrcyooc2I1K3MqKHNiNitzKnNiNykpKSkpKTsKIAkgICAgfQogCSAgICB6ICA9IHg7CiAJICAgIFNFVF9MT1dfV09SRCh6LDApOwotCSAgICByICA9ICBfX2llZWU3NTRfZXhwKC16KnotMC41NjI1KSoKLQkJCV9faWVlZTc1NF9leHAoKHoteCkqKHoreCkrUi9TKTsKKwkgICAgciAgPSAgX19pZWVlNzU0X2V4cCgteip6LTAuNTYyNSkqX19pZWVlNzU0X2V4cCgoei14KSooeit4KStSL1MpOwogCSAgICBpZihoeD4wKSByZXR1cm4gci94OyBlbHNlIHJldHVybiB0d28tci94OwogCX0gZWxzZSB7CiAJICAgIGlmKGh4PjApIHJldHVybiB0aW55KnRpbnk7IGVsc2UgcmV0dXJuIHR3by10aW55OwogCX0KIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShlcmZjLCBlcmZjbCk7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19lcmZmLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmZi5jCmluZGV4IGEzNTc5ZjEuLmQ2Y2ZiZDIgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19lcmZmLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZmYuYwpAQCAtMTksNjQgKzE5LDYzIEBACiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCisvKiBYWFggUHJldmVudCBjb21waWxlcnMgZnJvbSBlcnJvbmVvdXNseSBjb25zdGFudCBmb2xkaW5nOiAqLworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGZsb2F0IHRpbnkgPSAxZS0zMDsKKwogc3RhdGljIGNvbnN0IGZsb2F0Ci10aW55CSAgICA9IDFlLTMwLAotaGFsZj0gIDUuMDAwMDAwMDAwMGUtMDEsIC8qIDB4M0YwMDAwMDAgKi8KLW9uZSA9ICAxLjAwMDAwMDAwMDBlKzAwLCAvKiAweDNGODAwMDAwICovCi10d28gPSAgMi4wMDAwMDAwMDAwZSswMCwgLyogMHg0MDAwMDAwMCAqLworaGFsZj0gMC41LAorb25lID0gMSwKK3R3byA9IDIsCitlcnggPSA4LjQyNjk3MTQ0ZS0wMSwJCQkvKiAweDNmNTdiYjAwICovCiAvKgotICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvICBlcmYgb24gWzAsMC44NDM3NV0KKyAqIEluIHRoZSBkb21haW4gWzAsIDIqKi0xNF0sIG9ubHkgdGhlIGZpcnN0IHRlcm0gaW4gdGhlIHBvd2VyIHNlcmllcworICogZXhwYW5zaW9uIG9mIGVyZih4KSBpcyB1c2VkLiAgVGhlIG1hZ25pdHVkZSBvZiB0aGUgZmlyc3QgbmVnbGVjdGVkCisgKiB0ZXJtcyBpcyBsZXNzIHRoYW4gMioqLTQyLgogICovCi1lZnggPSAgMS4yODM3OTE2NjEzZS0wMSwgLyogMHgzZTAzNzVkNCAqLwotZWZ4OD0gIDEuMDI3MDMzMzI5MGUrMDAsIC8qIDB4M2Y4Mzc1ZDQgKi8KK2VmeCA9IDEuMjgzNzkxNjZlLTAxLCAvKiAweDNlMDM3NWQ0ICovCitlZng4PSAxLjAyNzAzMzMzZSswMCwgLyogMHgzZjgzNzVkNCAqLwogLyoKLSAqICBEb21haW4gWzAsIDAuODQzNzVdLCByYW5nZSB+Wy01LjQ0NDZlLTEwLDUuNTE5N2UtMTBdOgotICogIHwoZXJmKHgpIC0geCkveCAtIHAoeCkvcSh4KXwgPCAyKiotMzEuCisgKiBEb21haW4gWzAsIDAuODQzNzVdLCByYW5nZSB+Wy01LjQ0MTllLTEwLCA1LjUxNzllLTEwXToKKyAqIHwoZXJmKHgpIC0geCkveCAtIHBwKHgpL3FxKHgpfCA8IDIqKi0zMQogICovCi1wcDAgID0gIDEuMjgzNzkxNjZlLTAxRiwgLyogIDB4MS4wNmViYThwLTMgKi8KLXBwMSAgPSAtMy4zNjAzMDM5NGUtMDFGLCAvKiAtMHgxLjU4MTg1YXAtMiAqLwotcHAyICA9IC0xLjg2MjYwMjE5ZS0wM0YsIC8qIC0weDEuZTg0NTFlcC0xMCAqLwotcXExICA9ICAzLjEyMzI0Mjg2ZS0wMUYsIC8qICAweDEuM2ZkMWYwcC0yICovCi1xcTIgID0gIDIuMTYwNzAzMDJlLTAyRiwgLyogIDB4MS42MjAyNzRwLTYgKi8KLXFxMyAgPSAtMS45ODg1OTQxOWUtMDNGLCAvKiAtMHgxLjA0YTYyNnAtOSAqLworcHAwICA9ICAxLjI4Mzc5MTY2ZS0wMSwgLyogMHgzZTAzNzVkNCAqLworcHAxICA9IC0zLjM2MDMwMzk0ZS0wMSwgLyogMHhiZWFjMGMyZCAqLworcHAyICA9IC0xLjg2MjYxMzk1ZS0wMywgLyogMHhiYWY0MjJmNCAqLworcXExICA9ICAzLjEyMzI0MzE1ZS0wMSwgLyogMHgzZTlmZThmOSAqLworcXEyICA9ICAyLjE2MDcwNDE0ZS0wMiwgLyogMHgzY2IxMDE0MCAqLworcXEzICA9IC0xLjk4ODU5MzcyZS0wMywgLyogMHhiYjAyNTMxMSAqLwogLyoKLSAqIERvbWFpbiBbMC44NDM3NSwgMS4yNV0sIHJhbmdlIH5bLTEuOTUzZS0xMSwxLjk0MGUtMTFdOgotICogfChlcmYoeCkgLSBlcngpIC0gcCh4KS9xKHgpfCA8IDIqKi0zNi4KKyAqIERvbWFpbiBbMC44NDM3NSwgMS4yNV0sIHJhbmdlIH5bLTEuMDIzZS05LCAxLjAyM2UtOV06CisgKiB8KGVyZih4KSAtIGVyeCkgLSBwYSh4KS9xYSh4KXwgPCAyKiotMzEKICAqLwotZXJ4ICA9ICA4LjQyNjk3MTQ0ZS0wMUYsIC8qICAweDEuYWY3NjAwcC0xLiAgZXJmKDEpIHJvdW5kZWQgdG8gMTYgYml0cy4gKi8KLXBhMCAgPSAgMy42NDkzOTEzN2UtMDZGLCAvKiAgMHgxLmU5ZDAyMnAtMTkgKi8KLXBhMSAgPSAgNC4xNTEwOTY5NGUtMDFGLCAvKiAgMHgxLmE5MTI4NHAtMiAqLwotcGEyICA9IC0xLjY1MTc5OTM4ZS0wMUYsIC8qIC0weDEuNTI0OWRjcC0zICovCi1wYTMgID0gIDEuMTA5MTQ0OTFlLTAxRiwgLyogIDB4MS5jNjRlNDZwLTQgKi8KLXFhMSAgPSAgNi4wMjA3NDM4NWUtMDFGLCAvKiAgMHgxLjM0NDMxOHAtMSAqLwotcWEyICA9ICA1LjM1OTM0Njg3ZS0wMUYsIC8qICAweDEuMTI2NjA4cC0xICovCi1xYTMgID0gIDEuNjg1NzYxMDZlLTAxRiwgLyogIDB4MS41OTNlNmVwLTMgKi8KLXFhNCAgPSAgNS42MjE4MTIxMmUtMDJGLCAvKiAgMHgxLmNjODlmMnAtNSAqLworcGEwICA9ICAzLjY1MDQxMDQ2ZS0wNiwgLyogMHgzNjc0Zjk5MyAqLworcGExICA9ICA0LjE1MTA5MzA3ZS0wMSwgLyogMHgzZWQ0ODkzNSAqLworcGEyICA9IC0yLjA5Mzk1NzIyZS0wMSwgLyogMHhiZTU2NmJkNSAqLworcGEzICA9ICA4LjY3Njc3NTU0ZS0wMiwgLyogMHgzZGIxYjM0YiAqLworcWExICA9ICA0Ljk1NTYwOTc0ZS0wMSwgLyogMHgzZWZkYmEyYiAqLworcWEyICA9ICAzLjcxMjQ4NTEzZS0wMSwgLyogMHgzZWJlMTQ0OSAqLworcWEzICA9ICAzLjkyNDc4OTY1ZS0wMiwgLyogMHgzZDIwYzI2NyAqLwogLyoKLSAqIERvbWFpbiBbMS4yNSwxLzAuMzVdLCByYW5nZSB+Wy03LjA0M2UtMTAsNy40NTdlLTEwXToKLSAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByKHgpL3MoeCl8IDwgMioqLTMwCisgKiBEb21haW4gWzEuMjUsMS8wLjM1XSwgcmFuZ2UgflstNC44MjFlLTksIDQuOTI3ZS05XToKKyAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByYSh4KS9zYSh4KXwgPCAyKiotMjgKICAqLwotcmEwICA9IC05Ljg3MTMyNzMyZS0wM0YsIC8qIC0weDEuNDM3NmIycC03ICovCi1yYTEgID0gLTUuNTM2MDU5MTRlLTAxRiwgLyogLTB4MS4xYjcyM2NwLTEgKi8KLXJhMiAgPSAtMi4xNzU4OTE4OGUrMDBGLCAvKiAtMHgxLjE2ODNhMHArMSAqLwotcmEzICA9IC0xLjQzMjY4MDg1ZSswMEYsIC8qIC0weDEuNmVjNDJjcCswICovCi1zYTEgID0gIDUuNDU5OTU0MjZlKzAwRiwgLyogIDB4MS41ZDZmZTRwKzIgKi8KLXNhMiAgPSAgNi42OTc5ODA4OGUrMDBGLCAvKiAgMHgxLmFjYWJiOHArMiAqLwotc2EzICA9ICAxLjQzMTEzMDg5ZSswMEYsIC8qICAweDEuNmU1ZTk4cCswICovCi1zYTQgID0gLTUuNzczOTc0OTZlLTAyRiwgLyogLTB4MS5kOTAxMDhwLTUgKi8KK3JhMCAgPSAtOS44ODE1NjcyMWUtMDMsIC8qIDB4YmMyMWU2NGMgKi8KK3JhMSAgPSAtNS40MzY1ODM3NmUtMDEsIC8qIDB4YmYwYjJkMzIgKi8KK3JhMiAgPSAtMS42NjgyODMxMGUrMDAsIC8qIDB4YmZkNThhNGQgKi8KK3JhMyAgPSAtNi45MTU1NDE4OWUtMDEsIC8qIDB4YmYzMTA5YjIgKi8KK3NhMSAgPSAgNC40ODU4MTU1M2UrMDAsIC8qIDB4NDA4ZjhiY2QgKi8KK3NhMiAgPSAgNC4xMDc5OTE3MGUrMDAsIC8qIDB4NDA4Mzc0YWIgKi8KK3NhMyAgPSAgNS41Mzg1NTE4MWUtMDEsIC8qIDB4M2YwZGM5NzQgKi8KIC8qCi0gKiBEb21haW4gWzEvMC4zNSwgMTFdLCByYW5nZSB+Wy0yLjI2NGUtMTMsMi4zMzZlLTEzXToKLSAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByKHgpL3MoeCl8IDwgMioqLTQyCisgKiBEb21haW4gWzIuODU3MTUsIDExXSwgcmFuZ2UgflstMS40ODRlLTksIDEuNTA1ZS05XToKKyAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByYih4KS9zYih4KXwgPCAyKiotMzAKICAqLwotcmIwICA9IC05Ljg2NDk0MzEwZS0wM0YsIC8qIC0weDEuNDM0MTI0cC03ICovCi1yYjEgID0gLTYuMjUxNzEyNDRlLTAxRiwgLyogLTB4MS40MDE2NzJwLTEgKi8KLXJiMiAgPSAtNi4xNjQ5ODMyN2UrMDBGLCAvKiAtMHgxLjhhOGYxNnArMiAqLwotcmIzICA9IC0xLjY2Njk2ODczZSswMUYsIC8qIC0weDEuMGFiNzBhcCs0ICovCi1yYjQgID0gLTkuNTM3NjQzNDNlKzAwRiwgLyogLTB4MS4zMTM0NjBwKzMgKi8KLXNiMSAgPSAgMS4yNjg4NDg5OWUrMDFGLCAvKiAgMHgxLjk2MDgxY3ArMyAqLwotc2IyICA9ICA0LjUxODM5NTIzZSswMUYsIC8qICAweDEuNjk3OGJjcCs1ICovCi1zYjMgID0gIDQuNzI4MTAyMTFlKzAxRiwgLyogIDB4MS43YTNmODhwKzUgKi8KLXNiNCAgPSAgOC45MzAzMzMxNGUrMDBGOyAvKiAgMHgxLjFkYzU0YXArMyAqLworcmIwICA9IC05Ljg2NDk2OTE4ZS0wMywgLyogMHhiYzIxYTBhZSAqLworcmIxICA9IC01LjQ4MDQ5ODA4ZS0wMSwgLyogMHhiZjBjNGNmZSAqLworcmIyICA9IC0xLjg0MTE1Njg0ZSswMCwgLyogMHhiZmViYWIwNyAqLworc2IxICA9ICA0Ljg3MTMyNzQwZSswMCwgLyogMHg0MDliZTFlYSAqLworc2IyICA9ICAzLjA0OTgyNzEwZSswMCwgLyogMHg0MDQzMzA1ZSAqLworc2IzICA9IC03LjYxOTAwNjYzZS0wMTsgLyogMHhiZjQzMGJlYyAqLwogCiBmbG9hdAogZXJmZihmbG9hdCB4KQpAQCAtODUsOSArODQsOSBAQAogCWZsb2F0IFIsUyxQLFEscyx5LHoscjsKIAlHRVRfRkxPQVRfV09SRChoeCx4KTsKIAlpeCA9IGh4JjB4N2ZmZmZmZmY7Ci0JaWYoaXg+PTB4N2Y4MDAwMDApIHsJCS8qIGVyZihuYW4pPW5hbiAqLworCWlmKGl4Pj0weDdmODAwMDAwKSB7CQkvKiBlcmZmKG5hbik9bmFuICovCiAJICAgIGkgPSAoKHVfaW50MzJfdCloeD4+MzEpPDwxOwotCSAgICByZXR1cm4gKGZsb2F0KSgxLWkpK29uZS94OwkvKiBlcmYoKy1pbmYpPSstMSAqLworCSAgICByZXR1cm4gKGZsb2F0KSgxLWkpK29uZS94OwkvKiBlcmZmKCstaW5mKT0rLTEgKi8KIAl9CiAKIAlpZihpeCA8IDB4M2Y1ODAwMDApIHsJCS8qIHx4fDwwLjg0Mzc1ICovCkBAIC0xMDUsNyArMTA0LDcgQEAKIAlpZihpeCA8IDB4M2ZhMDAwMDApIHsJCS8qIDAuODQzNzUgPD0gfHh8IDwgMS4yNSAqLwogCSAgICBzID0gZmFic2YoeCktb25lOwogCSAgICBQID0gcGEwK3MqKHBhMStzKihwYTIrcypwYTMpKTsKLQkgICAgUSA9IG9uZStzKihxYTErcyoocWEyK3MqKHFhMytzKnFhNCkpKTsKKwkgICAgUSA9IG9uZStzKihxYTErcyoocWEyK3MqcWEzKSk7CiAJICAgIGlmKGh4Pj0wKSByZXR1cm4gZXJ4ICsgUC9ROyBlbHNlIHJldHVybiAtZXJ4IC0gUC9ROwogCX0KIAlpZiAoaXggPj0gMHg0MDgwMDAwMCkgewkJLyogaW5mPnx4fD49NCAqLwpAQCAtMTEzLDEyICsxMTIsMTIgQEAKIAl9CiAJeCA9IGZhYnNmKHgpOwogIAlzID0gb25lLyh4KngpOwotCWlmKGl4PCAweDQwMzZEQjZFKSB7CS8qIHx4fCA8IDEvMC4zNSAqLworCWlmKGl4PCAweDQwMzZkYjhjKSB7CS8qIHx4fCA8IDIuODU3MTUgfiAxLzAuMzUgKi8KIAkgICAgUj1yYTArcyoocmExK3MqKHJhMitzKnJhMykpOwotCSAgICBTPW9uZStzKihzYTErcyooc2EyK3MqKHNhMytzKnNhNCkpKTsKLQl9IGVsc2UgewkvKiB8eHwgPj0gMS8wLjM1ICovCi0JICAgIFI9cmIwK3MqKHJiMStzKihyYjIrcyoocmIzK3MqcmI0KSkpOwotCSAgICBTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKnNiNCkpKTsKKwkgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKnNhMykpOworCX0gZWxzZSB7CS8qIHx4fCA+PSAyLjg1NzE1IH4gMS8wLjM1ICovCisJICAgIFI9cmIwK3MqKHJiMStzKnJiMik7CisJICAgIFM9b25lK3MqKHNiMStzKihzYjIrcypzYjMpKTsKIAl9CiAJU0VUX0ZMT0FUX1dPUkQoeixoeCYweGZmZmZlMDAwKTsKIAlyICA9IGV4cGYoLXoqei0wLjU2MjVGKSpleHBmKCh6LXgpKih6K3gpK1IvUyk7CkBAIC0xMzIsOCArMTMxLDggQEAKIAlmbG9hdCBSLFMsUCxRLHMseSx6LHI7CiAJR0VUX0ZMT0FUX1dPUkQoaHgseCk7CiAJaXggPSBoeCYweDdmZmZmZmZmOwotCWlmKGl4Pj0weDdmODAwMDAwKSB7CQkJLyogZXJmYyhuYW4pPW5hbiAqLwotCQkJCQkJLyogZXJmYygrLWluZik9MCwyICovCisJaWYoaXg+PTB4N2Y4MDAwMDApIHsJCQkvKiBlcmZjZihuYW4pPW5hbiAqLworCQkJCQkJLyogZXJmY2YoKy1pbmYpPTAsMiAqLwogCSAgICByZXR1cm4gKGZsb2F0KSgoKHVfaW50MzJfdCloeD4+MzEpPDwxKStvbmUveDsKIAl9CiAKQEAgLTE1NSw3ICsxNTQsNyBAQAogCWlmKGl4IDwgMHgzZmEwMDAwMCkgewkJLyogMC44NDM3NSA8PSB8eHwgPCAxLjI1ICovCiAJICAgIHMgPSBmYWJzZih4KS1vbmU7CiAJICAgIFAgPSBwYTArcyoocGExK3MqKHBhMitzKnBhMykpOwotCSAgICBRID0gb25lK3MqKHFhMStzKihxYTIrcyoocWEzK3MqcWE0KSkpOworCSAgICBRID0gb25lK3MqKHFhMStzKihxYTIrcypxYTMpKTsKIAkgICAgaWYoaHg+PTApIHsKIAkgICAgICAgIHogID0gb25lLWVyeDsgcmV0dXJuIHogLSBQL1E7CiAJICAgIH0gZWxzZSB7CkBAIC0xNjUsMTMgKzE2NCwxMyBAQAogCWlmIChpeCA8IDB4NDEzMDAwMDApIHsJCS8qIHx4fDwxMSAqLwogCSAgICB4ID0gZmFic2YoeCk7CiAgCSAgICBzID0gb25lLyh4KngpOwotCSAgICBpZihpeDwgMHg0MDM2REI2RCkgewkvKiB8eHwgPCAxLy4zNSB+IDIuODU3MTQzKi8KLQkgICAgICAgIFI9cmEwK3MqKHJhMStzKihyYTIrcypyYTMpKTsKLQkgICAgICAgIFM9b25lK3MqKHNhMStzKihzYTIrcyooc2EzK3Mqc2E0KSkpOwotCSAgICB9IGVsc2UgewkJCS8qIHx4fCA+PSAxLy4zNSB+IDIuODU3MTQzICovCisJICAgIGlmKGl4PCAweDQwMzZkYjhjKSB7CS8qIHx4fCA8IDIuODU3MTUgfiAxLy4zNSAqLworCQlSPXJhMCtzKihyYTErcyoocmEyK3MqcmEzKSk7CisJCVM9b25lK3MqKHNhMStzKihzYTIrcypzYTMpKTsKKwkgICAgfSBlbHNlIHsJCQkvKiB8eHwgPj0gMi44NTcxNSB+IDEvLjM1ICovCiAJCWlmKGh4PDAmJml4Pj0weDQwYTAwMDAwKSByZXR1cm4gdHdvLXRpbnk7LyogeCA8IC01ICovCi0JICAgICAgICBSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKnJiNCkpKTsKLQkJUz1vbmUrcyooc2IxK3MqKHNiMitzKihzYjMrcypzYjQpKSk7CisJCVI9cmIwK3MqKHJiMStzKnJiMik7CisJCVM9b25lK3MqKHNiMStzKihzYjIrcypzYjMpKTsKIAkgICAgfQogCSAgICBTRVRfRkxPQVRfV09SRCh6LGh4JjB4ZmZmZmUwMDApOwogCSAgICByICA9IGV4cGYoLXoqei0wLjU2MjVGKSpleHBmKCh6LXgpKih6K3gpK1IvUyk7CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmVtcXVvbC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JlbXF1b2wuYwppbmRleCA4ODk5MjkzLi43MTI2NTFjIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmVtcXVvbC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yZW1xdW9sLmMKQEAgLTUsNyArNSw3IEBACiAgKgogICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KICAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKLSAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZSAKICAqIGlzIHByZXNlcnZlZC4KICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGwuYwppbmRleCBlNTViNDBlLi5iNDNkZjg5IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGwuYwpAQCAtMjksNyArMjksNiBAQAogCiAjaW5jbHVkZSA8ZmxvYXQuaD4KICNpbmNsdWRlIDxtYXRoLmg+Ci0jaW5jbHVkZSA8c3RkaW50Lmg+CiAKICNpbmNsdWRlICJmcG1hdGguaCIKIApkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmQuYwppbmRleCA2NWRlMzFiLi5mYWIzMDE5IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmQuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmQuYwpAQCAtMjcsMjUgKzI3LDM0IEBACiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiBfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CiAKLSNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8ZmxvYXQuaD4KKworI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIAogZG91YmxlCiByb3VuZChkb3VibGUgeCkKIHsKIAlkb3VibGUgdDsKKwl1aW50MzJfdCBoeDsKIAotCWlmICghaXNmaW5pdGUoeCkpCi0JCXJldHVybiAoeCk7CisJR0VUX0hJR0hfV09SRChoeCwgeCk7CisJaWYgKChoeCAmIDB4N2ZmZmZmZmYpID09IDB4N2ZmMDAwMDApCisJCXJldHVybiAoeCArIHgpOwogCi0JaWYgKHggPj0gMC4wKSB7CisJaWYgKCEoaHggJiAweDgwMDAwMDAwKSkgewogCQl0ID0gZmxvb3IoeCk7CiAJCWlmICh0IC0geCA8PSAtMC41KQotCQkJdCArPSAxLjA7CisJCQl0ICs9IDE7CiAJCXJldHVybiAodCk7CiAJfSBlbHNlIHsKIAkJdCA9IGZsb29yKC14KTsKIAkJaWYgKHQgKyB4IDw9IC0wLjUpCi0JCQl0ICs9IDEuMDsKKwkJCXQgKz0gMTsKIAkJcmV0dXJuICgtdCk7CiAJfQogfQorCisjaWYgKExEQkxfTUFOVF9ESUcgPT0gNTMpCitfX3dlYWtfcmVmZXJlbmNlKHJvdW5kLCByb3VuZGwpOworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRmLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRmLmMKaW5kZXggOTUyZThlNy4uZTdlMmViOSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kZi5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGYuYwpAQCAtMjcsMjUgKzI3LDI4IEBACiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiBfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CiAKLSNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCiBmbG9hdAogcm91bmRmKGZsb2F0IHgpCiB7CiAJZmxvYXQgdDsKKwl1aW50MzJfdCBoeDsKIAotCWlmICghaXNmaW5pdGUoeCkpCi0JCXJldHVybiAoeCk7CisJR0VUX0ZMT0FUX1dPUkQoaHgsIHgpOworCWlmICgoaHggJiAweDdmZmZmZmZmKSA9PSAweDdmODAwMDAwKQorCQlyZXR1cm4gKHggKyB4KTsKIAotCWlmICh4ID49IDAuMCkgeworCWlmICghKGh4ICYgMHg4MDAwMDAwMCkpIHsKIAkJdCA9IGZsb29yZih4KTsKLQkJaWYgKHQgLSB4IDw9IC0wLjUpCi0JCQl0ICs9IDEuMDsKKwkJaWYgKHQgLSB4IDw9IC0wLjVGKQorCQkJdCArPSAxOwogCQlyZXR1cm4gKHQpOwogCX0gZWxzZSB7CiAJCXQgPSBmbG9vcmYoLXgpOwotCQlpZiAodCArIHggPD0gLTAuNSkKLQkJCXQgKz0gMS4wOworCQlpZiAodCArIHggPD0gLTAuNUYpCisJCQl0ICs9IDE7CiAJCXJldHVybiAoLXQpOwogCX0KIH0KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGwuYwppbmRleCBhNzBiNjE3Li4yZDE1ZTEzIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRsLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kbC5jCkBAIC0yNywyNSArMjcsMzYgQEAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIF9fRkJTRElEKCIkRnJlZUJTRCQiKTsKIAotI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxmbG9hdC5oPgorI2lmZGVmIF9faTM4Nl9fCisjaW5jbHVkZSA8aWVlZWZwLmg+CisjZW5kaWYKKworI2luY2x1ZGUgImZwbWF0aC5oIgorI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIAogbG9uZyBkb3VibGUKIHJvdW5kbChsb25nIGRvdWJsZSB4KQogewogCWxvbmcgZG91YmxlIHQ7CisJdWludDE2X3QgaHg7CiAKLQlpZiAoIWlzZmluaXRlKHgpKQotCQlyZXR1cm4gKHgpOworCUdFVF9MREJMX0VYUFNJR04oaHgsIHgpOworCWlmICgoaHggJiAweDdmZmYpID09IDB4N2ZmZikKKwkJcmV0dXJuICh4ICsgeCk7CiAKLQlpZiAoeCA+PSAwLjApIHsKKwlFTlRFUkkoKTsKKworCWlmICghKGh4ICYgMHg4MDAwKSkgewogCQl0ID0gZmxvb3JsKHgpOwotCQlpZiAodCAtIHggPD0gLTAuNSkKLQkJCXQgKz0gMS4wOwotCQlyZXR1cm4gKHQpOworCQlpZiAodCAtIHggPD0gLTAuNUwpCisJCQl0ICs9IDE7CisJCVJFVFVSTkkodCk7CiAJfSBlbHNlIHsKIAkJdCA9IGZsb29ybCgteCk7Ci0JCWlmICh0ICsgeCA8PSAtMC41KQotCQkJdCArPSAxLjA7Ci0JCXJldHVybiAoLXQpOworCQlpZiAodCArIHggPD0gLTAuNUwpCisJCQl0ICs9IDE7CisJCVJFVFVSTkkoLXQpOwogCX0KIH0KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaC5jCmluZGV4IDk2ZTM1NjUuLjZkMjZjNjkgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmguYwpAQCAtMzcsMTAgKzM3LDEzIEBACiAgKglvbmx5IHRhbmgoMCk9MCBpcyBleGFjdCBmb3IgZmluaXRlIGFyZ3VtZW50LgogICovCiAKKyNpbmNsdWRlIDxmbG9hdC5oPgorCiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCi1zdGF0aWMgY29uc3QgZG91YmxlIG9uZSA9IDEuMCwgdHdvID0gMi4wLCB0aW55ID0gMS4wZS0zMDAsIGh1Z2UgPSAxLjBlMzAwOworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGRvdWJsZSB0aW55ID0gMS4wZS0zMDA7CitzdGF0aWMgY29uc3QgZG91YmxlIG9uZSA9IDEuMCwgdHdvID0gMi4wLCBodWdlID0gMS4wZTMwMDsKIAogZG91YmxlCiB0YW5oKGRvdWJsZSB4KQpAQCAtNzUsMyArNzgsNyBAQAogCX0KIAlyZXR1cm4gKGp4Pj0wKT8gejogLXo7CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2UodGFuaCwgdGFuaGwpOworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaGYuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oZi5jCmluZGV4IDA0ZjA5YzYuLmY1MzdiZTQgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oZi5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oZi5jCkBAIC0xOSw3ICsxOSw5IEBACiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCi1zdGF0aWMgY29uc3QgZmxvYXQgb25lPTEuMCwgdHdvPTIuMCwgdGlueSA9IDEuMGUtMzAsIGh1Z2UgPSAxLjBlMzA7CitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZmxvYXQgdGlueSA9IDEuMGUtMzA7CitzdGF0aWMgY29uc3QgZmxvYXQgb25lPTEuMCwgdHdvPTIuMCwgaHVnZSA9IDEuMGUzMDsKKwogZmxvYXQKIHRhbmhmKGZsb2F0IHgpCiB7CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5obC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4NjE1OGIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaGwuYwpAQCAtMCwwICsxLDE3MiBAQAorLyogZnJvbTogRnJlZUJTRDogaGVhZC9saWIvbXN1bi9zcmMvc190YW5obC5jIFhYWCAqLworCisvKiBAKCMpc190YW5oLmMgNS4xIDkzLzA5LzI0ICovCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuUHJvLCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogaXMgcHJlc2VydmVkLgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworLyoKKyAqIFNlZSBzX3RhbmguYyBmb3IgY29tcGxldGUgY29tbWVudHMuCisgKgorICogQ29udmVydGVkIHRvIGxvbmcgZG91YmxlIGJ5IEJydWNlIEQuIEV2YW5zLgorICovCisKKyNpbmNsdWRlIDxmbG9hdC5oPgorI2lmZGVmIF9faTM4Nl9fCisjaW5jbHVkZSA8aWVlZWZwLmg+CisjZW5kaWYKKworI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKyNpbmNsdWRlICJmcG1hdGguaCIKKyNpbmNsdWRlICJrX2V4cGwuaCIKKworI2lmIExEQkxfTUFYX0VYUCAhPSAweDQwMDAKKy8qIFdlIGFsc28gcmVxdWlyZSB0aGUgdXN1YWwgZXhwc2lnbiBlbmNvZGluZy4gKi8KKyNlcnJvciAiVW5zdXBwb3J0ZWQgbG9uZyBkb3VibGUgZm9ybWF0IgorI2VuZGlmCisKKyNkZWZpbmUJQklBUwkoTERCTF9NQVhfRVhQIC0gMSkKKworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGRvdWJsZSB0aW55ID0gMS4wZS0zMDA7CitzdGF0aWMgY29uc3QgZG91YmxlIG9uZSA9IDEuMDsKKyNpZiBMREJMX01BTlRfRElHID09IDY0CisvKgorICogRG9tYWluIFstMC4yNSwgMC4yNV0sIHJhbmdlIH5bLTEuNjMwNGUtMjIsIDEuNjMwNGUtMjJdOgorICogfHRhbmgoeCkveCAtIHQoeCl8IDwgMioqLTcyLjMKKyAqLworc3RhdGljIGNvbnN0IHVuaW9uIElFRUVsMmJpdHMKK1QzdSA9IExEODBDKDB4YWFhYWFhYWFhYWFhYWE5ZiwgLTIsIC0zLjMzMzMzMzMzMzMzMzMzMzMzMDE3ZS0xTCk7CisjZGVmaW5lCVQzCVQzdS5lCitzdGF0aWMgY29uc3QgZG91YmxlCitUNSAgPSAgMS4zMzMzMzMzMzMzMzMzMzE0ZS0xLAkJLyogIDB4MTExMTExMTExMTExMGEuMHAtNTUgKi8KK1Q3ICA9IC01LjM5NjgyNTM5NjgyMTA0ODVlLTIsCQkvKiAtMHgxYmExYmExYmExYTFhMS4wcC01NyAqLworVDkgID0gIDIuMTg2OTQ4ODUzMTM5MzgxN2UtMiwJCS8qICAweDE2NjRmNDg4MTcyMDIyLjBwLTU4ICovCitUMTEgPSAtOC44NjMyMzUyMzQ1OTY0NTkxZS0zLAkJLyogLTB4MTIyNmUzNGJjMTM4ZDUuMHAtNTkgKi8KK1QxMyA9ICAzLjU5MjExNjk3MDk5OTM3NzFlLTMsCQkvKiAgMHgxZDZkMzcxZDNlNDAwZi4wcC02MSAqLworVDE1ID0gLTEuNDU1NTc4NjQxNTc1NjAwMWUtMywJCS8qIC0weDE3ZDkyM2FhNjM4MTRkLjBwLTYyICovCitUMTcgPSAgNS44NjQ1MjY3ODc2Mjk2NzkzZS00LAkJLyogIDB4MTMzNzg1ODliODVhYTcuMHAtNjMgKi8KK1QxOSA9IC0yLjExMjEwMzM1NzEzOTIyMjRlLTQ7CQkvKiAtMHgxYmFmMGFmODBjNDA5MC4wcC02NSAqLworI2VsaWYgTERCTF9NQU5UX0RJRyA9PSAxMTMKKy8qCisgKiBEb21haW4gWy0wLjI1LCAwLjI1XSwgcmFuZ2UgflstMi40MjExZS0zNywgMi40MjExZS0zN106CisgKiB8dGFuaCh4KS94IC0gdCh4KXwgPCAyKioxMjEuNgorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK1QzID0gLTMuMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzI5ODBlLTFMLAkvKiAtMHgxNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU0ZS4wcC0xMTRMICovCitUNSAgPSAgMS4zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMjcwNzI2MGUtMUwsCS8qICAweDExMTExMTExMTExMTExMTExMTExMTExMTBhYjdiLjBwLTExNUwgKi8KK1Q3ICA9IC01LjM5NjgyNTM5NjgyNTM5NjgyNTM5NjgyNTM1NzIzNDgyMzE0ZS0yTCwJLyogLTB4MWJhMWJhMWJhMWJhMWJhMWJhMWJhMTdiNWZjOTguMHAtMTE3TCAqLworVDkgID0gIDIuMTg2OTQ4ODUzNjE1NTIwMjgyMTg2OTM1OTExNDkwNjE3MTdlLTJMLAkvKiAgMHgxNjY0ZjQ4ODJjMTBmOWYzMmQ2YjFhMTJhMjVlNS4wcC0xMThMICovCitUMTEgPSAtOC44NjMyMzU1Mjk5MDIxOTY1Njg4Mzc2MjM0NzczNjM4MTg1MWUtM0wsCS8qIC0weDEyMjZlMzU1ZTZjMjNjOGY1YTVhMGYzODZjYjRkLjBwLTExOUwgKi8KK1QxMyA9ICAzLjU5MjEyODAzNjU3MjQ4MTAxMzU4MzE0Mzk4MjIwODIyNzIyZS0zTCwJLyogIDB4MWQ2ZDNkMGUxNTdkZGZiNDAzYWQzNjM3NDQyYzYuMHAtMTIxTCAqLworVDE1ID0gLTEuNDU1ODM0Mzg3MDUxMzE3OTY1MTI1NjgwMTAzNDg4NzQ2NjJlLTNMOwkvKiAtMHgxN2RhMzY0NTJiNzVlMTUwYzQ0Y2MzNDI1M2IzNC4wcC0xMjJMICovCitzdGF0aWMgY29uc3QgZG91YmxlCitUMTcgPSAgNS45MDAyNzQ0MDk0NTU2NjIxZS00LAkJLyogIDB4MTM1NTgyNDgwMzY2OGUuMHAtNjMgKi8KK1QxOSA9IC0yLjM5MTI5MTE0MjQyNjA1MTZlLTQsCQkvKiAtMHgxZjU3ZDc3MzRjOGRkZS4wcC02NSAqLworVDIxID0gIDkuNjkxNTM3OTUzNTUxMjg5OGUtNSwJCS8qICAweDE5NjdlMThhZDZhNmNhLjBwLTY2ICovCitUMjMgPSAtMy45Mjc4MzIyOTgzMTU2MzUzZS01LAkJLyogLTB4MTQ5N2Q4ZTZiNzU3MjkuMHAtNjcgKi8KK1QyNSA9ICAxLjU5MTg4ODcyMjAxNDM4NjllLTUsCQkvKiAgMHgxMGIxMzE5OTk4Y2FmYS4wcC02OCAqLworVDI3ID0gLTYuNDUxNDI5NTIzMTYzMDk1NmUtNiwJCS8qIC0weDFiMGYyYjcxYjIxOGViLjBwLTcwICovCitUMjkgPSAgMi42MTIwNzU0MDQzOTY0MzY1ZS02LAkJLyogIDB4MTVlOTYzYTNjZjNhMzkuMHAtNzEgKi8KK1QzMSA9IC0xLjA0MDc1NjcyMzEwMDMzMTRlLTYsCQkvKiAtMHgxMTc2MDQxZTY1Njg2OS4wcC03MiAqLworVDMzID0gIDMuNDc0NDExNzU1NDA2MzU3NGUtNzsJCS8qICAweDE3NTBmZTczMmNhYjljLjBwLTc0ICovCisjZW5kaWYgLyogTERCTF9NQU5UX0RJRyA9PSA2NCAqLworCitzdGF0aWMgaW5saW5lIGxvbmcgZG91YmxlCitkaXZsKGxvbmcgZG91YmxlIGEsIGxvbmcgZG91YmxlIGIsIGxvbmcgZG91YmxlIGMsIGxvbmcgZG91YmxlIGQsCisgICAgbG9uZyBkb3VibGUgZSwgbG9uZyBkb3VibGUgZikKK3sKKwlsb25nIGRvdWJsZSBpbnYsIHI7CisJZmxvYXQgZnIsIGZ3OworCisJXzJzdW1GKGEsIGMpOworCWIgPSBiICsgYzsKKwlfMnN1bUYoZCwgZik7CisJZSA9IGUgKyBmOworCisJaW52ID0gMSAvIChkICsgZSk7CisKKwlyID0gKGEgKyBiKSAqIGludjsKKwlmciA9IHI7CisJciA9IGZyOworCisJZncgPSBkICsgZTsKKwllID0gZCAtIGZ3ICsgZTsKKwlkID0gZnc7CisKKwlyID0gciArIChhIC0gZCAqIHIgKyBiIC0gZSAqIHIpICogaW52OworCisJcmV0dXJuIHI7Cit9CisKK2xvbmcgZG91YmxlCit0YW5obChsb25nIGRvdWJsZSB4KQoreworCWxvbmcgZG91YmxlIGhpLGxvLHMseDIseDQsejsKKwlkb3VibGUgZHgyOworCWludDE2X3QgangsaXg7CisKKwlHRVRfTERCTF9FWFBTSUdOKGp4LHgpOworCWl4ID0gangmMHg3ZmZmOworCisgICAgLyogeCBpcyBJTkYgb3IgTmFOICovCisJaWYoaXg+PTB4N2ZmZikgeworCSAgICBpZiAoang+PTApIHJldHVybiBvbmUveCtvbmU7ICAgIC8qIHRhbmgoKy1pbmYpPSstMSAqLworCSAgICBlbHNlICAgICAgIHJldHVybiBvbmUveC1vbmU7ICAgIC8qIHRhbmgoTmFOKSA9IE5hTiAqLworCX0KKworCUVOVEVSSSgpOworCisgICAgLyogfHh8IDwgNDAgKi8KKwlpZiAoaXggPCAweDQwMDQgfHwgZmFic2woeCkgPCA0MCkgewkvKiB8eHw8NDAgKi8KKwkgICAgaWYgKF9fcHJlZGljdF9mYWxzZShpeDxCSUFTLShMREJMX01BTlRfRElHKzEpLzIpKSB7CS8qIHx4fDxUSU5ZICovCisJCS8qIHRhbmgoKy0wKSA9ICswOyB0YW5oKHRpbnkpID0gdGlueSgtKykgd2l0aCBpbmV4YWN0OiAqLworCQlyZXR1cm4gKHggPT0gMCA/IHggOiAoMHgxcDIwMCAqIHggLSB4KSAqIDB4MXAtMjAwKTsKKwkgICAgfQorCSAgICBpZiAoaXg8MHgzZmZkKSB7CQkvKiB8eHw8MC4yNSAqLworCQl4MiA9IHgqeDsKKyNpZiBMREJMX01BTlRfRElHID09IDY0CisJCXg0ID0geDIqeDI7CisJCVJFVFVSTkkoKChUMTkqeDIgKyBUMTcpKng0ICsgKFQxNSp4MiArIFQxMykpKih4Mip4KngyKng0Kng0KSArCisJCSAgICAoKFQxMSp4MiArIFQ5KSp4NCArIChUNyp4MiArIFQ1KSkqKHgyKngqeDIpICsKKwkJICAgIFQzKih4Mip4KSArIHgpOworI2VsaWYgTERCTF9NQU5UX0RJRyA9PSAxMTMKKwkJZHgyID0geDI7CisjaWYgMAorCQlSRVRVUk5JKCgoKCgoKCgoKCgoKCgoVDMzKmR4MiArIFQzMSkqZHgyICsgVDI5KSpkeDIgKyBUMjcpKmR4MiArCisJCSAgICBUMjUpKngyICsgVDIzKSp4MiArIFQyMSkqeDIgKyBUMTkpKngyICsgVDE3KSp4MiArCisJCSAgICBUMTUpKngyICsgVDEzKSp4MiArIFQxMSkqeDIgKyBUOSkqeDIgKyBUNykqeDIgKyBUNSkqCisJCSAgICAoeDIqeCp4MikgKworCQkgICAgVDMqKHgyKngpICsgeCk7CisjZWxzZQorCQlsb25nIGRvdWJsZSBxID0gKCgoKCgoKCgoKCgoKChUMzMqZHgyICsgVDMxKSpkeDIgKyBUMjkpKmR4MiArIFQyNykqZHgyICsKKwkJICAgIFQyNSkqeDIgKyBUMjMpKngyICsgVDIxKSp4MiArIFQxOSkqeDIgKyBUMTcpKngyICsKKwkJICAgIFQxNSkqeDIgKyBUMTMpKngyICsgVDExKSp4MiArIFQ5KSp4MiArIFQ3KSp4MiArIFQ1KSoKKwkJICAgICh4Mip4KngyKTsKKwkJUkVUVVJOSShxICsgVDMqKHgyKngpICsgeCk7CisjZW5kaWYKKyNlbmRpZgorCSAgICB9CisJICAgIGtfaGV4cGwoMipmYWJzbCh4KSwgJmhpLCAmbG8pOworCSAgICBpZiAoaXg8MHg0MDAxICYmIGZhYnNsKHgpIDwgMS41KQkvKiB8eHw8MS41ICovCisJCXogPSBkaXZsKGhpLCBsbywgLTAuNSwgaGksIGxvLCAwLjUpOworCSAgICBlbHNlCisJCXogPSBvbmUgLSBvbmUvKGxvKzAuNStoaSk7CisgICAgLyogfHh8ID49IDQwLCByZXR1cm4gKy0xICovCisJfSBlbHNlIHsKKwkgICAgeiA9IG9uZSAtIHRpbnk7CQkvKiByYWlzZSBpbmV4YWN0IGZsYWcgKi8KKwl9CisJcyA9IDE7CisJaWYgKGp4PDApIHMgPSAtMTsKKwlSRVRVUk5JKHMqeik7Cit9CmRpZmYgLS1naXQgYS9saWJtL3g4Ni9jZWlsLlMgYi9saWJtL3g4Ni9jZWlsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjMwMjAzNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2NlaWwuUwpAQCAtMCwwICsxLDQzIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGNlaWwpCisJbW92ICAgICVlc3AsJWVheAorCWFuZCAgICAkMHhmZmZmZmZmOCwlZWF4CisJbW92c2QgIDB4NCglZXNwKSwleG1tMAorCXJvdW5kc2QgJDB4MiwleG1tMCwleG1tMAorCW1vdmxwZCAleG1tMCwtMHg4KCVlYXgpCisJZmxkbCAgIC0weDgoJWVheCkKKwlyZXQKK0VORChjZWlsKQorCitBTElBU19TWU1CT0woY2VpbGwsIGNlaWwpOwpkaWZmIC0tZ2l0IGEvbGlibS94ODYvY2VpbGYuUyBiL2xpYm0veDg2L2NlaWxmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTFlYjQ0MAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2NlaWxmLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShjZWlsZikKKwltb3ZzcyAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzcyAkMHgyLCV4bW0wLCV4bW0wCisJbW92c3MgICV4bW0wLC0weDQoJWVzcCkKKwlmbGRzICAgLTB4NCglZXNwKQorCXJldAorRU5EKGNlaWxmKQpkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9hY29zLlMgYi9saWJtL3g4Ni9lX2Fjb3MuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYTYxODUzCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9hY29zLlMKQEAgLTAsMCArMSwxOTI5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIFRvIGNvbXB1dGUgYWNvcyhzKSwgc2VwYXJhdGUgc2NoZW1lcyBhcmUgdXNlZCB3aGVuIHMgaXMgaW4gZGlmZmVyZW50CisvLyAgaW50ZXJ2YWxzLgorLy8KKy8vICB8c3wgaW4gWzJeey00fSwgc3FydCgzKS8yKToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzPTJeayoxLmIxIGIyIC4uIGI1MgorLy8gICAgICAgYWNvcyhzKT1waS8yLWFzaW4odCktYXNpbihyKSwgd2hlcmUgcj1zKnNxcnQoMS10XjIpLXQqc3FydCgxLXNeMikKKy8vICAgICAgIGFzaW4ociktciBldmFsdWF0ZWQgYXMgNy1kZWdyZWUgcG9seW5vbWlhbCAoYzMqcl4zK2M1KnJeNStjNypyXjcpCisvLyAgICAgICBGb3IgdGhlIGZpcnN0IGRlZ3JlZSB0ZXJtLCByIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgUj0oc14yLXReMikvKHNxcnQoMS10XjIpKnMrc3FydCgxLXNeMikqdCkKKy8vICAgICAgIChzcXJ0KDEtdF4yKSByZWFkIGZyb20gdGFibGUpCisvLyAgVGhlIG1haW4gc291cmNlIG9mIGVycm9yIGlzIHN0aWxsIFIgKG1heSBzdGlsbCBiZSBhZmZlY3RlZCBieSB1cCB0byAzIHVscHMKKy8vICBvZiByb3VuZGluZyBlcnJvcikuIFRoZSB0YWJsZSBzaXplIG11c3QgYmUgc3VmZmljaWVudGx5IGxhcmdlLCB0byBtaW5pbWl6ZQorLy8gIHRoaXMgZWZmZWN0LgorLy8KKy8vICB8c3wgaW4gW3NxcnQoMykvMiwgMjU1LzI1Nik6CisvLyAgICAgICBMZXQgdD0yXmsqMS5iMSBiMi4uYjYgMSwgd2hlcmUgc3FydCgxLXNeMik9Ml5rKjEuYjEgYjIgLi4gYjUyIChyb3VuZGVkKQorLy8gICAgICAgYWNvcyh8c3wpPWFzaW4odCktYXNpbihyKSwgcj1zKnQtc3FydCgxLXNeMikqc3FydCgxLXReMikKKy8vICAgYWNvcygtfHN8KT1waS1hY29zKHxzfCkKKy8vICAgICAgIChUaGUgLVBJIGNvbnN0YW50LCBvciAwLCBpcyBhZGRlZCB0byB0aGUgcmVzdWx0LiBUaGUgc2lnbiBpcyBzZXQgYXQKKy8vICAgICAgICB0aGUgZW5kKQorLy8gICAgICAgYXNpbihyKSBldmFsdWF0ZWQgYXMgYSBwb2x5bm9taWFsIChzYW1lIGFzIGFib3ZlKQorLy8gICAgICAgVGhlIGZpcnN0IGRlZ3JlZSB0ZXJtIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgICAgICAgICByPShzXjIrdF4yLTEpLyhzKnQrc3FydCgxLXNeMikqc3FydCgxLXReMikpCisvLworLy8gIHxzfDwyXnstNH06IGFjb3Mocyk9cGkvMi1hc2luKHMpCisvLyAgICAgICAgICAgICAgZXZhbHVhdGUgYXNpbihzKSBhcyAxMy1kZWdyZWUgcG9seW5vbWlhbAorLy8KKy8vICB8c3wgaW4gWzI1NS8yNTYsMSk6IGFjb3MofHN8KT0yKmFzaW4ocSksIHdoZXJlIHE9c3FydCgoMS18c3wpLzIpCisvLyAgYXNpbihxKSBpcyBldmFsdWF0ZWQgYXMgMTMtZGVncmVlIHBvbHlub21pYWwKKy8vICAgICAgcV4yPSgxLXxzfCkvMiBpcyBvYnRhaW5lZCBpbiBhZHZhbmNlCisvLyAgICAgICAgIDIqcSplcHMgfiAoKDEtfHN8KS8yLXFeMikvcSB1c2VkIGZvciBmaXJzdCB0ZXJtCisvLyAgIGFjb3MoLXxzfCk9cGktYWNvcyh8c3wpCisvLyAgICAgICAoVGhlIC1QSSBjb25zdGFudCwgb3IgMCwgaXMgYWRkZWQgdG8gdGhlIHJlc3VsdC4gVGhlIHNpZ24gaXMgc2V0IGF0CisvLyAgICAgICAgdGhlIGVuZCkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGFjb3MoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgYWNvcyhJTkYpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhY29zKHgpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24sIGZvciB8eHw+MS4wCisvLyAgYWNvcygxKSA9ICswCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCQorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0ICAgICAgIAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBhY29zCitFTlRSWShhY29zKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQ4KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgNjA0OCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDYwODAoJWVieCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDYwNjQoJWVieCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDIsICVlY3gsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ1MjQyODcsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQyNjA4NjQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQ2NTUzNSwgJWVkeAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRsICAgICAgJC00LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkNjQyNTYsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDM4NDAoJWVieCwlZWR4LDIpLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAoJWVieCwlZWR4LDQpLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgZGl2c2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNTk3NiglZWJ4KSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDU5NjAoJWVieCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMworICAgICAgICBwc2xscSAgICAgJDYzLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgNTk2OCglZWJ4KSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgNTg4OCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ2NSwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgcHNybHEgICAgICQzOCwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQzOCwgJXhtbTcKKyAgICAgICAgcG1vdm1za2IgICV4bW0wLCAlZWF4CisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBhbmRsICAgICAgJDEyOCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDcsICVlYXgKKyAgICAgICAgbmVnbCAgICAgICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzbGxxICAgICAkMiwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMywgJWVkeAorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDAsICV4bW0zLCAleG1tMworICAgICAgICBzdWJsICAgICAgJDY1MjE2LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG11bHNkICAgICAzODQwKCVlYngsJWVkeCw0KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhbmRwZCAgICAgNTkwNCglZWJ4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDU5NjAoJWVieCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNTk3NiglZWJ4KSwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNTk2OCglZWJ4KSwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICglZWJ4LCVlZHgsOCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNTI5MSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE0MzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICA1OTg0KCVlYngpLCAleG1tNgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA2MDAwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNjAxNiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgNTg4OCglZWJ4KSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNTM1NiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDQsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgYW5kcGQgICAgIDYwNDgoJWVieCksICV4bW03CisgICAgICAgIG1vdnNkICAgICA2MDk2KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNTk4NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgNjAwMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNjAxNiglZWJ4KSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW03CisgICAgICAgIHNxcnRzZCAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNywgJXhtbTUKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDU5MzYoJWVieCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgY21wc2QgICAgICQxLCAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFuZHBkICAgICA1OTA0KCVlYngpLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBkaXZzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQyNjE4ODQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyNjE4ODgsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVjeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tNworICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkMTA3MjY5MzI0OCwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIG1vdnEgICAgICA4KCVlc3ApLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDEsICVlZHgKKyAgICAgICAgc2JibCAgICAgICQyMTQ2NDM1MDcyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZ2UgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQxLCAleG1tNywgJWVkeAorICAgICAgICBzaHJsICAgICAgJDE1LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDAsICV4bW03LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNTkyMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDU5MjgoJWVieCksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDU4ODgoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICA1ODk2KCVlYngpLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgNDgoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGFjb3MpCisjIC0tIEVuZCAgYWNvcworCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woYWNvc2wsIGFjb3MpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkzODIyOTUyNzkyCisJLmxvbmcJMTAyMTYzOTM3MgorCS5sb25nCTE4Mjc5MjQ0OAorCS5sb25nCTEwNjg1MDc4MzYKKwkubG9uZwkyMjY0MjEzMjcxCisJLmxvbmcJMTAxOTU1ODkwOAorCS5sb25nCTY0OTA1MjkyOAorCS5sb25nCTEwNjg1MjQyNTMKKwkubG9uZwkxNzk3MTM5NjA5CisJLmxvbmcJMTAyMjI5NTE0MworCS5sb25nCTEyNDMwOTUyOTYKKwkubG9uZwkxMDY4NTQwNjcxCisJLmxvbmcJMTQxNTkzODc1NgorCS5sb25nCTEwMjE0Mzk1MzcKKwkubG9uZwkyMDMzMjk0NTkyCisJLmxvbmcJMTA2ODU1NzA5MAorCS5sb25nCTIzNTY4MDk5NzgKKwkubG9uZwkxMDIxNzc3OTE2CisJLmxvbmcJMzA4ODA2Mzc0NAorCS5sb25nCTEwNjg1NzM1MTAKKwkubG9uZwkyNjY5MDU1MzE4CisJLmxvbmcJMTAyMjEyNDQ4MgorCS5sb25nCTE4MDg4ODU3NgorCS5sb25nCTEwNjg1ODk5MzIKKwkubG9uZwkzNTY2NDQ1MzI1CisJLmxvbmcJMTAyMTM1ODcxMgorCS5sb25nCTE5NzAxOTY5OTIKKwkubG9uZwkxMDY4NjA2MzU0CisJLmxvbmcJODk2OTgwMzIzCisJLmxvbmcJMTAyMTMxOTY1OQorCS5sb25nCTQyMjk1NTU0NTYKKwkubG9uZwkxMDY4NjIyNzc3CisJLmxvbmcJNDM2MDQ5NzEyCisJLmxvbmcJMTAyMTMxOTc1OAorCS5sb25nCTI3MzI1NzIxNjAKKwkubG9uZwkxMDY4NjM5MjAyCisJLmxvbmcJNTgzMTIzMjA5CisJLmxvbmcJMTAyMDc5Nzk2MAorCS5sb25nCTE4NDI4MzE4NzIKKwkubG9uZwkxMDY4NjU1NjI4CisJLmxvbmcJMTM3MDQ0OTgwNAorCS5sb25nCTEwMjE0MjkyNzAKKwkubG9uZwkxNjI4OTk0NTYwCisJLmxvbmcJMTA2ODY3MjA1NQorCS5sb25nCTI0MTEzOTE0NjQKKwkubG9uZwkxMDIxMDU3OTgwCisJLmxvbmcJMjE1OTc2MzcxMgorCS5sb25nCTEwNjg2ODg0ODMKKwkubG9uZwkxMjA4NjkyNzQ5CisJLmxvbmcJMTAyMTk0MzkwMworCS5sb25nCTM1MDM4ODYzMzYKKwkubG9uZwkxMDY4NzA0OTEyCisJLmxvbmcJNTM4NzkzMzA5CisJLmxvbmcJMTAxOTc0NDA2MworCS5sb25nCTE0MzUxODcyMDAKKwkubG9uZwkxMDY4NzIxMzQzCisJLmxvbmcJNDA4NTA4NzYxMgorCS5sb25nCTEwMjA2MDg0MTkKKwkubG9uZwkzMTc0Njk5NTIKKwkubG9uZwkxMDY4NzM3Nzc1CisJLmxvbmcJMTQ0Mzg2OTQyCisJLmxvbmcJMTAyMTQ0MDczMgorCS5sb25nCTIxOTYxNzI4MAorCS5sb25nCTEwNjg3NTQyMDgKKwkubG9uZwkyOTQwMDg4MzYxCisJLmxvbmcJMTAxOTk4MTEyMgorCS5sb25nCTEyMTA1NTgyMDgKKwkubG9uZwkxMDY4NzcwNjQyCisJLmxvbmcJMjE3Njg1MDM0NworCS5sb25nCTEwMTgzNzM3MDUKKwkubG9uZwkzMzU5MjY4MzUyCisJLmxvbmcJMTA2ODc4NzA3NworCS5sb25nCTIzOTU2MTE0NTQKKwkubG9uZwkxMDIxODg5MDQyCisJLmxvbmcJMjQzOTgwMzY0OAorCS5sb25nCTEwNjg4MDM1MTQKKwkubG9uZwkxNjUwNzA1MjUzCisJLmxvbmcJMTAyMDIyNzk2NgorCS5sb25nCTI4MTYyMDM1MjAKKwkubG9uZwkxMDY4ODE5OTUyCisJLmxvbmcJMzcwMjE2NjM4NgorCS5sb25nCTEwMTkzNzk5MTQKKwkubG9uZwkyNjI2MjA2NzIKKwkubG9uZwkxMDY4ODM2MzkyCisJLmxvbmcJMTg1NTY0OTM3MAorCS5sb25nCTEwMjA0NTMxMjQKKwkubG9uZwkzNDM4MTU5NjE2CisJLmxvbmcJMTA2ODg1MjgzMgorCS5sb25nCTkyMzA2Mzg2MAorCS5sb25nCTEwMTkyNzM4MzQKKwkubG9uZwkzODIyMTA1ODU2CisJLmxvbmcJMTA2ODg2OTI3NAorCS5sb25nCTQyODk5NDc5NDcKKwkubG9uZwkxMDE5NDM0MjQ5CisJLmxvbmcJMTQ4MzcyOTkyMAorCS5sb25nCTEwNjg4ODU3MTgKKwkubG9uZwk3ODc0NTU4MTQKKwkubG9uZwkxMDIwNzM4Mzc5CisJLmxvbmcJNzg3MzIxMDg4CisJLmxvbmcJMTA2ODkwMjE2MworCS5sb25nCTMzMjE2NTMzMzcKKwkubG9uZwkxMDIxODQyNTY5CisJLmxvbmcJMTgwMjI1MzMxMgorCS5sb25nCTEwNjg5MTg2MDkKKwkubG9uZwkyNjUzNjMzNTI2CisJLmxvbmcJMTAyMTgyMTUyNQorCS5sb25nCTMwMjk4NTk4NAorCS5sb25nCTEwNjg5MzUwNTcKKwkubG9uZwkxNjEyNzIwMjgKKwkubG9uZwkxMDIxNjU1MTQ5CisJLmxvbmcJNjUzOTY2MDgwCisJLmxvbmcJMTA2ODk1MTUwNgorCS5sb25nCTI1NjYwOTg2NjcKKwkubG9uZwkxMDIwMDY2MjE5CisJLmxvbmcJMjkyNDcyNzI5NgorCS5sb25nCTEwNjg5Njc5NTYKKwkubG9uZwkzNjQ2NDkzNzIyCisJLmxvbmcJMTAxNDI5MjI4NQorCS5sb25nCTI4ODk4OTAzMDQKKwkubG9uZwkxMDY4OTg0NDA4CisJLmxvbmcJMTA4MTAwOTE5NgorCS5sb25nCTEwMjIxODk2MjAKKwkubG9uZwk2MTkwOTgxMTIKKwkubG9uZwkxMDY5MDAwODYyCisJLmxvbmcJNDAxMTY0MzM1NQorCS5sb25nCTEwMjE3NzMyOTcKKwkubG9uZwk0NzcwMTc2MDAKKwkubG9uZwkxMDY5MDE3MzE3CisJLmxvbmcJNDAzMDMwNTUzNAorCS5sb25nCTEwMjEyOTIyNTIKKwkubG9uZwkyNTMzNDAzOTA0CisJLmxvbmcJMTA2OTAzMzc3MworCS5sb25nCTI2NDUxODc1OTEKKwkubG9uZwkxMDE5NTI3MDk5CisJLmxvbmcJMjU2MzEwMjIwOAorCS5sb25nCTEwNjkwNTAyMzEKKwkubG9uZwkzODU3MjkzNzkyCisJLmxvbmcJMTAyMjMxMTY5NworCS5sb25nCTYzNTk4MjMzNgorCS5sb25nCTEwNjkwNjY2OTEKKwkubG9uZwkzNjI1OTM2NjM3CisJLmxvbmcJMTAxNzUxMTc0NAorCS5sb25nCTExMTY5NDA4MDAKKwkubG9uZwkxMDY5MDgzMTUyCisJLmxvbmcJMzY1Mzg3Mjk5MworCS5sb25nCTEwMjIwMTY2MzEKKwkubG9uZwk0MDc1OTY0MTYwCisJLmxvbmcJMTA2OTA5OTYxNAorCS5sb25nCTI0Njg5MDAyNzEKKwkubG9uZwkxMDIxNzY5NTMyCisJLmxvbmcJOTkzMTY1NTY4CisJLmxvbmcJMTA2OTExNjA3OQorCS5sb25nCTEzNTgxMDQyMjQKKwkubG9uZwkxMDIxMTk5Nzc2CisJLmxvbmcJNTI4NTg2NzUyCisJLmxvbmcJMTA2OTEzMjU0NQorCS5sb25nCTIyMDA5NTAzMzIKKwkubG9uZwkxMDIyMDI0ODcyCisJLmxvbmcJMjc1MjM5NTc3NgorCS5sb25nCTEwNjkxNDkwMTIKKwkubG9uZwkzMTk3MDcyNDU0CisJLmxvbmcJMTAxNzc1MTMxOQorCS5sb25nCTM0Mzk4NTU2MTYKKwkubG9uZwkxMDY5MTY1NDgxCisJLmxvbmcJMTY1MTA4MTgwNgorCS5sb25nCTEwMjA4MDkzMzgKKwkubG9uZwkyNjYxMjU3NzI4CisJLmxvbmcJMTA2OTE4MTk1MgorCS5sb25nCTUzOTAzMjc1MgorCS5sb25nCTEwMjE3Mjg4MDUKKwkubG9uZwk0ODY5NTczMTIKKwkubG9uZwkxMDY5MTk4NDI1CisJLmxvbmcJMzEzNjA0NTE0OQorCS5sb25nCTEwMTY4ODg2NzEKKwkubG9uZwkxMjgyMzQwMzUyCisJLmxvbmcJMTA2OTIxNDg5OQorCS5sb25nCTI1OTM5NjMyNTkKKwkubG9uZwkxMDE4OTU2MTAzCisJLmxvbmcJODIyOTIxNzI4CisJLmxvbmcJMTA2OTIzMTM3NQorCS5sb25nCTIxNDYwMzI3MzcKKwkubG9uZwkxMDIyMzA2NDY1CisJLmxvbmcJMzQ3NDIxNjE5MgorCS5sb25nCTEwNjkyNDc4NTIKKwkubG9uZwkzOTc2ODExNjI1CisJLmxvbmcJMTAyMTM1MDIwNworCS5sb25nCTcxNjkwMjY1NgorCS5sb25nCTEwNjkyNjQzMzIKKwkubG9uZwk3MTgyNjcyMjIKKwkubG9uZwkxMDE4NjI0NzI3CisJLmxvbmcJMTIxMTU5NDQ5NgorCS5sb25nCTEwNjkyODA4MTMKKwkubG9uZwkxNDg1NjQxMzg5CisJLmxvbmcJMTAxODQ0NzQ1MQorCS5sb25nCTczNDA3MDI3MgorCS5sb25nCTEwNjkyOTcyOTYKKwkubG9uZwkzNTQ0NTUxMjgKKwkubG9uZwkxMDIxMzQxMjkxCisJLmxvbmcJMzY1MDExMDcyMAorCS5sb25nCTEwNjkzMTM3ODAKKwkubG9uZwk2ODIxODU5NDcKKwkubG9uZwkxMDIxNjUxODUzCisJLmxvbmcJMTQ0MDY2MzA0MAorCS5sb25nCTEwNjkzMzAyNjcKKwkubG9uZwkzNTU4NTc0NTUwCisJLmxvbmcJMTAyMTYxNTExMAorCS5sb25nCTI3NjY2MTIyMjQKKwkubG9uZwkxMDY5MzQ2NzU1CisJLmxvbmcJODc0NjA3OTc4CisJLmxvbmcJMTAxNzc0Njg3MgorCS5sb25nCTM0MDQwMTEwMDgKKwkubG9uZwkxMDY5MzYzMjQ1CisJLmxvbmcJNDE1NDk4ODUwMgorCS5sb25nCTEwMjE0Mzk5MDYKKwkubG9uZwkzNDIzOTQ5MDU2CisJLmxvbmcJMTA2OTM3OTczNworCS5sb25nCTIyNjMyMDIzMDkKKwkubG9uZwkxMDIxNDc5NjE1CisJLmxvbmcJMjg5NzU4NzcxMgorCS5sb25nCTEwNjkzOTYyMzEKKwkubG9uZwkyNTYyMDY1MDMxCisJLmxvbmcJMTAyMjA5MDM2MworCS5sb25nCTE4OTYxNTkyMzIKKwkubG9uZwkxMDY5NDEyNzI3CisJLmxvbmcJMzgzNjIzNzY2MworCS5sb25nCTEwMTk4NjcyODgKKwkubG9uZwk0OTA5Njg1NzYKKwkubG9uZwkxMDY5NDI5MjI1CisJLmxvbmcJMzMyMjA1Njc0MworCS5sb25nCTEwMDY3NTI3NjIKKwkubG9uZwkzMDQ4MzYwMTkyCisJLmxvbmcJMTA2OTQ0NTcyNAorCS5sb25nCTExNTIzMTQ4MzMKKwkubG9uZwkxMDEzMTIyMjUyCisJLmxvbmcJMTA0OTg1MDYyNAorCS5sb25nCTEwNjk0NjIyMjYKKwkubG9uZwkzNjAxNTkwNzI3CisJLmxvbmcJMTAyMjIxNDYxMAorCS5sb25nCTMxNTY4OTk1ODQKKwkubG9uZwkxMDY5NDc4NzI5CisJLmxvbmcJMTg1NTE2OTk3MAorCS5sb25nCTEwMTk0ODcyNzEKKwkubG9uZwk4NTExNzMzNzYKKwkubG9uZwkxMDY5NDk1MjM1CisJLmxvbmcJMzEyNjQ5NTk0CisJLmxvbmcJMTAyMDg2ODYwNAorCS5sb25nCTI3OTQyODE3MjgKKwkubG9uZwkxMDY5NTExNzQyCisJLmxvbmcJMTA5MzQ5MDE4MQorCS5sb25nCTEwMjA3Nzc1NzcKKwkubG9uZwk0NjgwNDI0OTYKKwkubG9uZwkxMDY5NTI4MjUyCisJLmxvbmcJMTE1MjU0MDY3OQorCS5sb25nCTEwMjE0MDM3MzIKKwkubG9uZwkyNTM0MjE5MjY0CisJLmxvbmcJMTA2OTU0NDc2MworCS5sb25nCTIyOTIxMjYwMzUKKwkubG9uZwkxMDIxODcyNDMwCisJLmxvbmcJMTM3NjE0NjQzMgorCS5sb25nCTEwNjk1NTg1MjcKKwkubG9uZwkzMjkzNzUzNjQxCisJLmxvbmcJMTAyMDUwMDQ1NAorCS5sb25nCTQxNzU0NDI0MzIKKwkubG9uZwkxMDY5NTc1MDQ0CisJLmxvbmcJMzYyNjM0NzU2NAorCS5sb25nCTEwMjE2MTA5NjkKKwkubG9uZwkzNTIzMTEzNDcyCisJLmxvbmcJMTA2OTU5MTU2NgorCS5sb25nCTMzOTk1NjUwMAorCS5sb25nCTEwMjExMTkwMzkKKwkubG9uZwk0MDAzMzUwNTI4CisJLmxvbmcJMTA2OTYwODA5MgorCS5sb25nCTM0MjkzMzMwODIKKwkubG9uZwkxMDIyODEzNTQyCisJLmxvbmcJMTYxMTA2NzM5MgorCS5sb25nCTEwNjk2MjQ2MjMKKwkubG9uZwkyMjk4MDE3NTQ0CisJLmxvbmcJMTAyMTk3NzU4NworCS5sb25nCTkzMTc4MjE0NAorCS5sb25nCTEwNjk2NDExNTgKKwkubG9uZwkyMTY0Njg0NzQzCisJLmxvbmcJMTAyMTI1MDk4OAorCS5sb25nCTIyNTY3MjU1MDQKKwkubG9uZwkxMDY5NjU3Njk3CisJLmxvbmcJMTEzODc2MjMzNQorCS5sb25nCTEwMjE0NDM3NzYKKwkubG9uZwkxNTgyODUzMTIwCisJLmxvbmcJMTA2OTY3NDI0MQorCS5sb25nCTEwODQwMTAzODIKKwkubG9uZwkxMDIyOTk0NjkzCisJLmxvbmcJMzQ5Nzc1ODcyMAorCS5sb25nCTEwNjk2OTA3ODkKKwkubG9uZwk0MDYzNjYyNDQKKwkubG9uZwkxMDIyNzEzNTg2CisJLmxvbmcJMzk5OTgxNjk2MAorCS5sb25nCTEwNjk3MDczNDIKKwkubG9uZwkxNDg4NzIzMDQyCisJLmxvbmcJMTAyMzM4MTI5MAorCS5sb25nCTMzODMwOTYwNjQKKwkubG9uZwkxMDY5NzIzOTAwCisJLmxvbmcJMjU0MTU1ODk1MworCS5sb25nCTEwMTkxMzc4ODcKKwkubG9uZwkxOTQyNDAzNTg0CisJLmxvbmcJMTA2OTc0MDQ2MworCS5sb25nCTE4Nzk2MjAzNDMKKwkubG9uZwkxMDIyNjUzNjQyCisJLmxvbmcJNDI2ODI2MzY4MAorCS5sb25nCTEwNjk3NTcwMzAKKwkubG9uZwkzMDM5MDc3MDQ3CisJLmxvbmcJMTAyMjI1MjU0NQorCS5sb25nCTIwNjcwNjIyNzIKKwkubG9uZwkxMDY5NzczNjAzCisJLmxvbmcJNDE5MDY3MDY3NworCS5sb25nCTEwMjA3MjU4NjMKKwkubG9uZwk0MjI1ODI4MDk2CisJLmxvbmcJMTA2OTc5MDE4MAorCS5sb25nCTE5OTg1NjczMjEKKwkubG9uZwkxMDIyMDE0Mzg1CisJLmxvbmcJMjQ1MjUwNzEzNgorCS5sb25nCTEwNjk4MDY3NjMKKwkubG9uZwkxNTExNjI4ODczCisJLmxvbmcJMTAyMTkwMDMwMAorCS5sb25nCTEzNDA3NDYyNDAKKwkubG9uZwkxMDY5ODIzMzUxCisJLmxvbmcJNzg4MzY3MzQxCisJLmxvbmcJMTAyMjcyNjIwOAorCS5sb25nCTExOTAwMzU0NTYKKwkubG9uZwkxMDY5ODM5OTQ0CisJLmxvbmcJMzg1NjMzNzIzMAorCS5sb25nCTEwMjE4MzQxMTgKKwkubG9uZwkyMzAwNjg4Mzg0CisJLmxvbmcJMTA2OTg1NjU0MgorCS5sb25nCTMyMTEzOTY1NzkKKwkubG9uZwkxMDIyNjIxMzY1CisJLmxvbmcJNjc4ODg2NDAwCisJLmxvbmcJMTA2OTg3MzE0NgorCS5sb25nCTQwMDEwMTE4ODcKKwkubG9uZwkxMDIyMDQyNjQ2CisJLmxvbmcJOTIxNTk0MTEyCisJLmxvbmcJMTA2OTg4OTc1NQorCS5sb25nCTU1NzgxMTk2OAorCS5sb25nCTEwMjMwNjU1MzMKKwkubG9uZwkzMzMxNjY4OTkyCisJLmxvbmcJMTA2OTkwNjM2OQorCS5sb25nCTE4NzcwNjA2NzkKKwkubG9uZwkxMDIyNDE5NzQyCisJLmxvbmcJMzkxNzg3NTIwMAorCS5sb25nCTEwNjk5MjI5ODkKKwkubG9uZwkxMTgxMDU1MTcxCisJLmxvbmcJMTAyMjc1MjcxMgorCS5sb25nCTI5ODQ4Mjk2OTYKKwkubG9uZwkxMDY5OTM5NjE1CisJLmxvbmcJNDI5NDUyNjkzMgorCS5sb25nCTEwMjE0OTk5ODgKKwkubG9uZwk4MzgwNDkwMjQKKwkubG9uZwkxMDY5OTU2MjQ3CisJLmxvbmcJMzY1ODA4MTg3OAorCS5sb25nCTEwMjI5NTc5NTIKKwkubG9uZwkyMDc4OTI4Mzg0CisJLmxvbmcJMTA2OTk3Mjg4NAorCS5sb25nCTgyMDM1MzcwMQorCS5sb25nCTEwMTkzOTExMDcKKwkubG9uZwkyNzE5ODU0MzM2CisJLmxvbmcJMTA2OTk4OTUyNworCS5sb25nCTE2NDQwMjI0ODkKKwkubG9uZwkxMDIzMzc4MjQwCisJLmxvbmcJMzA2OTExNzY5NgorCS5sb25nCTEwNzAwMDYxNzYKKwkubG9uZwkyNzcxMzkzNzAyCisJLmxvbmcJMTAxOTMxOTk1NAorCS5sb25nCTM0MzU5NjIzNjgKKwkubG9uZwkxMDcwMDIyODMxCisJLmxvbmcJMzg3NjM5NDE0NQorCS5sb25nCTEwMjMwMjQ0MzMKKwkubG9uZwk0MTMwNTk1MzI4CisJLmxvbmcJMTA3MDAzOTQ5MgorCS5sb25nCTE2MzA0NDc3NDgKKwkubG9uZwkxMDIxNDY1ODgyCisJLmxvbmcJMTE2OTIzNjIyNAorCS5sb25nCTEwNzAwNTYxNjAKKwkubG9uZwkyODI4MzU1OTk3CisJLmxvbmcJMTAyMDQ1ODEyMAorCS5sb25nCTM0NTM5OTczMTIKKwkubG9uZwkxMDcwMDcyODMzCisJLmxvbmcJMTY0MDkxNjQxCisJLmxvbmcJMTAyMDM4ODI3OQorCS5sb25nCTI3MDgxMjc3NDQKKwkubG9uZwkxMDcwMDg5NTEzCisJLmxvbmcJMzAzNjU1MDIyMworCS5sb25nCTEwMjMzMjg2ODQKKwkubG9uZwkzNTQwNzk3Njk2CisJLmxvbmcJMTA3MDEwNjE5OQorCS5sb25nCTM3MTA5NDk0NjMKKwkubG9uZwkxMDIyNTY4ODA1CisJLmxvbmcJMTk3MjI3NjczNgorCS5sb25nCTEwNzAxMjI4OTIKKwkubG9uZwkzODg1Mjc3OTUwCisJLmxvbmcJMTAxOTc2MTY3NAorCS5sb25nCTI2MTM4MTU1NTIKKwkubG9uZwkxMDcwMTM5NTkxCisJLmxvbmcJMjc2NDE2NTA3NworCS5sb25nCTEwMjI5MjEwMjMKKwkubG9uZwkxNDg3NzkxNjE2CisJLmxvbmcJMTA3MDE1NjI5NworCS5sb25nCTEzMzA2NDQ3NjkKKwkubG9uZwkxMDIzMTYyNjc5CisJLmxvbmcJMzIwNzU5MzQ3MgorCS5sb25nCTEwNzAxNzMwMDkKKwkubG9uZwkzOTExMDA3MjIxCisJLmxvbmcJMTAyMjk5MzQ5NgorCS5sb25nCTM3OTc3NjQ2MDgKKwkubG9uZwkxMDcwMTg5NzI4CisJLmxvbmcJOTc5NzEyNTk4CisJLmxvbmcJMTAyMjU1NDU4MAorCS5sb25nCTM1Nzg5MjA0NDgKKwkubG9uZwkxMDcwMjA2NDU0CisJLmxvbmcJMjgyNTczODIyMworCS5sb25nCTEwMjAyMjM3MDgKKwkubG9uZwkyODcyNzk1NjQ4CisJLmxvbmcJMTA3MDIyMzE4NworCS5sb25nCTM5MjQ1MTEyNAorCS5sb25nCTEwMjI2NjYyNzkKKwkubG9uZwkyMDAyMjU4NDMyCisJLmxvbmcJMTA3MDIzOTkyNworCS5sb25nCTM3MzA0MDc2MzIKKwkubG9uZwkxMDIzMTQ4MjkxCisJLmxvbmcJMTI5MTMyNjQ2NAorCS5sb25nCTEwNzAyNTY2NzQKKwkubG9uZwkzNzIzODAyOTgwCisJLmxvbmcJMTAyMjUxNDA4OQorCS5sb25nCTEwNjUxODA5MjgKKwkubG9uZwkxMDcwMjczNDI4CisJLmxvbmcJMjYzNTYxNzQ2MworCS5sb25nCTEwMjI2NTQ0NzAKKwkubG9uZwkxNjUwMTgxNjMyCisJLmxvbmcJMTA3MDI5MDE4OQorCS5sb25nCTIwNjE5ODI4ODMKKwkubG9uZwkxMDIyODUzNDExCisJLmxvbmcJMzM3Mzg4Mjg4MAorCS5sb25nCTEwNzAzMDY5NTcKKwkubG9uZwkzMTk3MzI3ODUKKwkubG9uZwkxMDIyMDE3MTc1CisJLmxvbmcJMjI3MDA4MTI4MAorCS5sb25nCTEwNzAzMjM3MzMKKwkubG9uZwkyMjM3NzU3NDExCisJLmxvbmcJMTAyMzA2NDA4NworCS5sb25nCTI5NjM3MzI3MzYKKwkubG9uZwkxMDcwMzQwNTE2CisJLmxvbmcJNDY4ODM5MTY1CisJLmxvbmcJMTAyMzI5Mzc3NAorCS5sb25nCTE0OTEwOTk5MDQKKwkubG9uZwkxMDcwMzU3MzA3CisJLmxvbmcJMTUwMjY1Nzk0NgorCS5sb25nCTEwMjE1MzM0NzkKKwkubG9uZwkyNDc5NjM2NDgwCisJLmxvbmcJMTA3MDM3NDEwNQorCS5sb25nCTQ4MjkxMzU2MgorCS5sb25nCTEwMjE5ODYyODYKKwkubG9uZwkxOTY4MTMzNjMyCisJLmxvbmcJMTA3MDM5MDkxMQorCS5sb25nCTMyODE0NzQzMzcKKwkubG9uZwkxMDIyNjQ2NDAwCisJLmxvbmcJMjkxNjM5MDQwCisJLmxvbmcJMTA3MDQwNzcyNQorCS5sb25nCTI0NTMzMjAyNTkKKwkubG9uZwkxMDIyODEyNDIzCisJLmxvbmcJMjA4MTQ3MjUxMgorCS5sb25nCTEwNzA0MjQ1NDYKKwkubG9uZwkyOTM5OTg5NTcwCisJLmxvbmcJMTAyMzA5MTg4OAorCS5sb25nCTMzODAzNDA0ODAKKwkubG9uZwkxMDcwNDQxMzc1CisJLmxvbmcJMjg1MDcwNzQ5OQorCS5sb25nCTEwMjE5MjExMDkKKwkubG9uZwkyMzIyODc0ODgKKwkubG9uZwkxMDcwNDU4MjEzCisJLmxvbmcJMzY3NDYyNTM0MgorCS5sb25nCTEwMjA3MjUxMzAKKwkubG9uZwkxNTY3NjE0MjA4CisJLmxvbmcJMTA3MDQ3NTA1OAorCS5sb25nCTkzNDczMzQKKwkubG9uZwkxMDIyMDI0MDA5CisJLmxvbmcJMzQzMzA5MTA3MgorCS5sb25nCTEwNzA0OTE5MTEKKwkubG9uZwkyODI1MjQ5OTkKKwkubG9uZwkxMDIxNDMzNTIzCisJLmxvbmcJMTg3Njg3NzMxMgorCS5sb25nCTEwNzA1MDg3NzMKKwkubG9uZwkzNDcwNDQ5NDQwCisJLmxvbmcJMTAxOTMwOTcyMQorCS5sb25nCTE1Mzg0NzIxOTIKKwkubG9uZwkxMDcwNTI1NjQzCisJLmxvbmcJMjA4OTQ4NjgyNQorCS5sb25nCTEwMTk2OTg5MTYKKwkubG9uZwkyNzYzODMwNzg0CisJLmxvbmcJMTA3MDU0MjUyMQorCS5sb25nCTQ0MzQ5ODExNQorCS5sb25nCTEwMjA1MDUxOTQKKwkubG9uZwkxNjA1MzgxNjMyCisJLmxvbmcJMTA3MDU1OTQwOAorCS5sb25nCTMwMTg4NzE2MDEKKwkubG9uZwkxMDIyODY5OTEzCisJLmxvbmcJMjcwNjk0NjA0OAorCS5sb25nCTEwNzA1NzYzMDMKKwkubG9uZwkzOTM2MjYwODkyCisJLmxvbmcJMTAyMzE3NTg3NQorCS5sb25nCTIxMjM4ODczNjAKKwkubG9uZwkxMDcwNTkzMjA3CisJLmxvbmcJMjk5NDIyMDY1NQorCS5sb25nCTEwMjI4MjU5NDgKKwkubG9uZwkxMDQwMTUxMDQKKwkubG9uZwkxMDcwNjAzMTA4CisJLmxvbmcJMzM1MDU0NDkzCisJLmxvbmcJMTAyMzQ0MTg1MworCS5sb25nCTI5MDQ1Njg4MzIKKwkubG9uZwkxMDcwNjE1ODAwCisJLmxvbmcJMTQ1MTIxNTYzMworCS5sb25nCTEwMjM4NTM4NTcKKwkubG9uZwkzNDU2MTk3MTIwCisJLmxvbmcJMTA3MDYzMjczOQorCS5sb25nCTQzNjMzNDczMworCS5sb25nCTEwMjQwMjY0MzIKKwkubG9uZwkyNTI0NTIzNTIKKwkubG9uZwkxMDcwNjQ5Njk3CisJLmxvbmcJMzQ1OTYxNjcKKwkubG9uZwkxMDI0MDMxMzk2CisJLmxvbmcJMzMyODAxODQzMgorCS5sb25nCTEwNzA2NjY2NzIKKwkubG9uZwkyNjQ0NTQ3MDczCisJLmxvbmcJMTAyNDI5Njc1OAorCS5sb25nCTEyNTU4MjkyNDgKKwkubG9uZwkxMDcwNjgzNjY3CisJLmxvbmcJNTUyODMyNTg2CisJLmxvbmcJMTAyMzc2MzEyMgorCS5sb25nCTQwOTcwNTg1NjAKKwkubG9uZwkxMDcwNzAwNjgwCisJLmxvbmcJMTk1NTY0MDYyMworCS5sb25nCTEwMjEzOTQ2NTQKKwkubG9uZwk0NTE3NzAxMTIKKwkubG9uZwkxMDcwNzE3NzE0CisJLmxvbmcJMzQyODkwMzc3NworCS5sb25nCTEwMjI5NDExNDIKKwkubG9uZwk0MDg5MjA4MzIKKwkubG9uZwkxMDcwNzM0NzY3CisJLmxvbmcJMTY1NTAzMjYzCisJLmxvbmcJMTAyMzg5NDk1OAorCS5sb25nCTExODY5NjA2NDAKKwkubG9uZwkxMDcwNzUxODQwCisJLmxvbmcJNDM1ODI2NDUwCisJLmxvbmcJMTAyNDAyNjEzNAorCS5sb25nCTE5MDc4NjU2CisJLmxvbmcJMTA3MDc2ODkzNAorCS5sb25nCTE4MzQxNjk3NDkKKwkubG9uZwkxMDIyODk5Mjg0CisJLmxvbmcJMjc0MzQ5MDMwNAorCS5sb25nCTEwNzA3ODYwNDgKKwkubG9uZwk0OTQ1ODEwNzQKKwkubG9uZwkxMDE4ODE4NDc5CisJLmxvbmcJMjMyODk2MTAyNAorCS5sb25nCTEwNzA4MDMxODQKKwkubG9uZwkyOTg3OTA4ODM0CisJLmxvbmcJMTAyMjU4MTExMAorCS5sb25nCTM1MDAxMTM5MgorCS5sb25nCTEwNzA4MjAzNDIKKwkubG9uZwkyNDA3NzExODQKKwkubG9uZwkxMDI0MTQzMDgzCisJLmxvbmcJMjY5MjMyNjkxMgorCS5sb25nCTEwNzA4Mzc1MjEKKwkubG9uZwk2NjYwNTY4MzcKKwkubG9uZwkxMDIyMzk0Nzc2CisJLmxvbmcJMjM3MzI3NDM2OAorCS5sb25nCTEwNzA4NTQ3MjMKKwkubG9uZwkyNDg0MzM3NzcwCisJLmxvbmcJMTAyNDIyODE1NgorCS5sb25nCTEwMTcxMzE1MjAKKwkubG9uZwkxMDcwODcxOTQ4CisJLmxvbmcJMzI4NTY0ODI3OQorCS5sb25nCTEwMjQwMjU3ODkKKwkubG9uZwkyNjU1NTgyNzIKKwkubG9uZwkxMDcwODg5MTk2CisJLmxvbmcJMzkyMjQxODk2CisJLmxvbmcJMTAyNDI1MjgwOQorCS5sb25nCTE3NzgwMDgwNjQKKwkubG9uZwkxMDcwOTA2NDY3CisJLmxvbmcJMTUzNjEwNzk0MworCS5sb25nCTEwMjM5NDkzMDAKKwkubG9uZwkyOTM3MTg0NzY4CisJLmxvbmcJMTA3MDkyMzc2MgorCS5sb25nCTM1NDEwNjIyNTEKKwkubG9uZwkxMDE5NDQ4NjQ2CisJLmxvbmcJMTE0NDQ0Mjg4MAorCS5sb25nCTEwNzA5NDEwODIKKwkubG9uZwkzNjkxNjgzNzgxCisJLmxvbmcJMTAyMjEyMzk0OAorCS5sb25nCTI0MTAxNjU1MDQKKwkubG9uZwkxMDcwOTU4NDI2CisJLmxvbmcJMTgwNDE4MTk2MAorCS5sb25nCTEwMjM5NDUyMjEKKwkubG9uZwk0MTc0MzUwODQ4CisJLmxvbmcJMTA3MDk3NTc5NQorCS5sb25nCTIwMTYwOTQ4NjEKKwkubG9uZwkxMDIxNzE2NTg1CisJLmxvbmcJMzg5NzAxMjQ4MAorCS5sb25nCTEwNzA5OTMxOTAKKwkubG9uZwkxNzUyOTQ0MTAKKwkubG9uZwkxMDIzNzAzNDA0CisJLmxvbmcJMzM1MzYyMzA0MAorCS5sb25nCTEwNzEwMTA2MTEKKwkubG9uZwkxNjc5NzMyNDIKKwkubG9uZwkxMDIzMjQwODM5CisJLmxvbmcJNDU2NzExNjgKKwkubG9uZwkxMDcxMDI4MDU5CisJLmxvbmcJMjE2Njg1NjExMworCS5sb25nCTEwMjE1NjU0MTMKKwkubG9uZwk4NjA2Mzg3MgorCS5sb25nCTEwNzEwNDU1MzMKKwkubG9uZwkyNjc2MjU0NzI3CisJLmxvbmcJMTAyMzk4NTI5OQorCS5sb25nCTEwMTk3NzI2NzIKKwkubG9uZwkxMDcxMDYzMDM0CisJLmxvbmcJOTg5MDQzNTkzCisJLmxvbmcJMTAyMTU0OTU4NworCS5sb25nCTQxNDI5NzM0NAorCS5sb25nCTEwNzEwODA1NjMKKwkubG9uZwkzOTYwOTcyMDQ2CisJLmxvbmcJMTAyNDMwNzI1MQorCS5sb25nCTE1NTE3MzEyMAorCS5sb25nCTEwNzEwOTgxMjAKKwkubG9uZwkxODMwOTE5MjkxCisJLmxvbmcJMTAyMTU5MjI1MQorCS5sb25nCTIxNTE1NjIyNDAKKwkubG9uZwkxMDcxMTE1NzA1CisJLmxvbmcJNDA1NDA4NjY2CisJLmxvbmcJMTAyMzQyMzEyOAorCS5sb25nCTQwNDE4NTQ3MjAKKwkubG9uZwkxMDcxMTMzMzE5CisJLmxvbmcJMjA0MzQ5NzgyNworCS5sb25nCTEwMjQ0MTE1MDMKKwkubG9uZwkzNDg5MjI0MTkyCisJLmxvbmcJMTA3MTE1MDk2MworCS5sb25nCTMwNzIyMTU4NjQKKwkubG9uZwkxMDIyNjk4NjM1CisJLmxvbmcJMjQ3NzE5NjI4OAorCS5sb25nCTEwNzExNjg2MzcKKwkubG9uZwkxODEyMTk1MTM5CisJLmxvbmcJMTAyMjY4OTE5MgorCS5sb25nCTMwMTUyOTg4MTYKKwkubG9uZwkxMDcxMTg2MzQxCisJLmxvbmcJNzY0ODQxOTY5CisJLmxvbmcJMTAyMTAyNzMzMQorCS5sb25nCTI4NDQ3MzExMzYKKwkubG9uZwkxMDcxMjA0MDc2CisJLmxvbmcJMjg3ODExNzMyMQorCS5sb25nCTEwMTkxMTY1MTMKKwkubG9uZwk0MDI4OTUwNTI4CisJLmxvbmcJMTA3MTIyMTg0MgorCS5sb25nCTY5ODkxMTQ1MgorCS5sb25nCTEwMjMyNjU2MDIKKwkubG9uZwk2OTQ0MTUzNgorCS5sb25nCTEwNzEyMzk2NDEKKwkubG9uZwkzMjUzNDY3ODQ3CisJLmxvbmcJMTAyMDc5NTA3NQorCS5sb25nCTE2NzYyMDk5MjAKKwkubG9uZwkxMDcxMjU3NDcxCisJLmxvbmcJNDI3MjQzMTE2NworCS5sb25nCTEwMjI4NzM5ODIKKwkubG9uZwkyNDA4NzUyMzg0CisJLmxvbmcJMTA3MTI3NTMzNAorCS5sb25nCTY0ODUxOTEwMAorCS5sb25nCTEwMjQzODU3MTcKKwkubG9uZwkxNTE2MjM2ODAKKwkubG9uZwkxMDcxMjkzMjMxCisJLmxvbmcJMzQ1MjU3MDE3CisJLmxvbmcJMTAxOTU2MTQwOAorCS5sb25nCTE0MTAxNTQyNDAKKwkubG9uZwkxMDcxMzExMTYxCisJLmxvbmcJMTk3ODYzOTkzCisJLmxvbmcJMTAyMzIyNDIwNworCS5sb25nCTQxMzEzNTE1NTIKKwkubG9uZwkxMDcxMzI5MTI1CisJLmxvbmcJMjYyMDgwMTc4OQorCS5sb25nCTEwMjQ0MTExNjkKKwkubG9uZwkxOTk5NjY0Mzg0CisJLmxvbmcJMTA3MTM0NzEyNQorCS5sb25nCTM5NTI2OTI2MTYKKwkubG9uZwkxMDI0MTY4MDg2CisJLmxvbmcJMTYxNzY2ODg2NAorCS5sb25nCTEwNzEzNjUxNjAKKwkubG9uZwkzMDE5ODg5ODA5CisJLmxvbmcJMTAyMTkwNzY5MgorCS5sb25nCTEwMzIwNzQyNDAKKwkubG9uZwkxMDcxMzgzMjMxCisJLmxvbmcJNTk0Njk4OTkKKwkubG9uZwkxMDIzNjU2MTk0CisJLmxvbmcJMjYxOTQ5MjA5NgorCS5sb25nCTEwNzE0MDEzMzgKKwkubG9uZwkxNDE3NTI2ODIwCisJLmxvbmcJMTAyMTQ1Nzc4MworCS5sb25nCTIwMjQyOTQ0MAorCS5sb25nCTEwNzE0MTk0ODMKKwkubG9uZwkyOTI3NjY3OTM1CisJLmxvbmcJMTAxOTE3NTQ0NworCS5sb25nCTUyNTA0NDIyNAorCS5sb25nCTEwNzE0Mzc2NjUKKwkubG9uZwkzODE2NjgxMQorCS5sb25nCTEwMjM5ODE4NzkKKwkubG9uZwkxNzc5MjU4ODgwCisJLmxvbmcJMTA3MTQ1NTg4NQorCS5sb25nCTQ4MTI1MjUwMAorCS5sb25nCTEwMjMzMTAyMzQKKwkubG9uZwkyMTk1NjczNjAwCisJLmxvbmcJMTA3MTQ3NDE0NAorCS5sb25nCTM5NjIzOTU5ODEKKwkubG9uZwkxMDIxMzM5MDg4CisJLmxvbmcJNDQ1NzM2OTYKKwkubG9uZwkxMDcxNDkyNDQzCisJLmxvbmcJMzkzNjI4MTM5NQorCS5sb25nCTEwMjMwMTQ4MjkKKwkubG9uZwkyMjI2OTA1MzQ0CisJLmxvbmcJMTA3MTUxMDc4MQorCS5sb25nCTE1MTUzMjA0NzYKKwkubG9uZwkxMDI0MzIwNjIzCisJLmxvbmcJMjgwMDUxMjUxMgorCS5sb25nCTEwNzE1MjkxNjAKKwkubG9uZwkxMjI1NDAzNjk3CisJLmxvbmcJMTAyMTA4MTg0NgorCS5sb25nCTE2MTExMzYwMAorCS5sb25nCTEwNzE1NDc1ODEKKwkubG9uZwkzMDY0ODA5NzMzCisJLmxvbmcJMTAyNDE3MzkxNworCS5sb25nCTEzMzg0MTAyNDAKKwkubG9uZwkxMDcxNTY2MDQzCisJLmxvbmcJMjAyNzYwNDk3MworCS5sb25nCTEwMjQzNjI1MjYKKwkubG9uZwk1MjI0MzMyODAKKwkubG9uZwkxMDcxNTg0NTQ4CisJLmxvbmcJMjA1NTE3MTcyMworCS5sb25nCTEwMjM4NTg4MjUKKwkubG9uZwk1Mzk1OTU3NzYKKwkubG9uZwkxMDcxNjAzMDk2CisJLmxvbmcJMzg2ODgyMDEzNQorCS5sb25nCTEwMjI5MzY0MjQKKwkubG9uZwk0MjY0MDE3NjY0CisJLmxvbmcJMTA3MTYyMTY4NworCS5sb25nCTMyMjgwNjUxNDUKKwkubG9uZwkxMDIzNDc5NTc4CisJLmxvbmcJMTczMzkyNDA5NgorCS5sb25nCTEwNzE2NDAzMjQKKwkubG9uZwkzNTExOTM0NDc1CisJLmxvbmcJMTAyMjQ5NjM1NQorCS5sb25nCTEwODg4MDM4NAorCS5sb25nCTEwNzE2NTE4MzkKKwkubG9uZwk2MTU4ODA5NjcKKwkubG9uZwkxMDIzNTE5NzA2CisJLmxvbmcJMzUxNzg1NjUxMgorCS5sb25nCTEwNzE2NjEyMDIKKwkubG9uZwkzMTEzMTA4NTU5CisJLmxvbmcJMTAyNTE5MDI4OQorCS5sb25nCTQwNDMxNTMxNTIKKwkubG9uZwkxMDcxNjcwNTg5CisJLmxvbmcJMTU3MTgzNjIxOAorCS5sb25nCTEwMjMxMDYxMTYKKwkubG9uZwkzMjUxMjk5MDcyCisJLmxvbmcJMTA3MTY4MDAwMAorCS5sb25nCTM0NDQwNzYxMDIKKwkubG9uZwkxMDIyMTg3ODQxCisJLmxvbmcJMjczNjkyMTYwMAorCS5sb25nCTEwNzE2ODk0MzUKKwkubG9uZwkyNzI3NzE0ODMKKwkubG9uZwkxMDI1MDk1MjgwCisJLmxvbmcJMzg5NzY5ODU2MAorCS5sb25nCTEwNzE3MDM2MzMKKwkubG9uZwkyMDc1MzkwMTg4CisJLmxvbmcJMTAyMjQ4OTAyMgorCS5sb25nCTMyMDk0ODUwNTYKKwkubG9uZwkxMDcxNzIyNjUyCisJLmxvbmcJMTQzODA5NDA2NQorCS5sb25nCTEwMjE4NDQ5NDQKKwkubG9uZwkzNzgxNDMyMDY0CisJLmxvbmcJMTA3MTc0MTc3NAorCS5sb25nCTE2NzUwMTcxNDUKKwkubG9uZwkxMDI0MTQzODI4CisJLmxvbmcJMjY4NDE4NDA2NAorCS5sb25nCTEwNzE3NjEwMDMKKwkubG9uZwkyMjU5OTYzNzUzCisJLmxvbmcJMTAyNDczMTM5MworCS5sb25nCTE4NDA0ODk3MjgKKwkubG9uZwkxMDcxNzgwMzQyCisJLmxvbmcJMzM3Mjg4MzU5NworCS5sb25nCTEwMjM0MzE0MDgKKwkubG9uZwkzNzY0MDg3ODA4CisJLmxvbmcJMTA3MTc5OTc5NAorCS5sb25nCTMzMDc1MjMxMDIKKwkubG9uZwkxMDI0NDg1Nzg4CisJLmxvbmcJMzAwNjIzMjMyMAorCS5sb25nCTEwNzE4MTkzNjQKKwkubG9uZwkzMDg4OTcxOTY2CisJLmxvbmcJMTAyNTIxMzI1MQorCS5sb25nCTMzNzQ4ODEyODAKKwkubG9uZwkxMDcxODM5MDU1CisJLmxvbmcJODM0NDM3NzQ5CisJLmxvbmcJMTAyNTIzNjQ1MgorCS5sb25nCTc5NzI4NDg2NAorCS5sb25nCTEwNzE4NTg4NzIKKwkubG9uZwkzMTIyNjYzOTQxCisJLmxvbmcJMTAyNTMyMDQ3MworCS5sb25nCTU0NTc2NTEyMAorCS5sb25nCTEwNzE4Nzg4MTgKKwkubG9uZwk4MjY1Mzk2MjUKKwkubG9uZwkxMDIyNDUwOTU1CisJLmxvbmcJMTA3NTYyMjQwCisJLmxvbmcJMTA3MTg5ODg5OAorCS5sb25nCTMzOTU4NDYwMAorCS5sb25nCTEwMjI0ODEyNTUKKwkubG9uZwkyMTIzNjQ5MDI0CisJLmxvbmcJMTA3MTkxOTExNgorCS5sb25nCTM5MTI5NTk4MzMKKwkubG9uZwkxMDI0MzIxMDA5CisJLmxvbmcJMTU2MjM4NTY2NAorCS5sb25nCTEwNzE5Mzk0NzgKKwkubG9uZwkyODQ2MDY3MjMwCisJLmxvbmcJMTAyMzM0Mzk4MQorCS5sb25nCTI5NjMwODU4MjQKKwkubG9uZwkxMDcxOTU5OTg4CisJLmxvbmcJOTU0NTQ4NjI3CisJLmxvbmcJMTAyMTQ3NTIxMQorCS5sb25nCTMzMjU1NTA1OTIKKwkubG9uZwkxMDcxOTgwNjUyCisJLmxvbmcJMzQ1OTY1MTE1NQorCS5sb25nCTEwMjUzMDU1NzMKKwkubG9uZwk3NzU3NTI0NDgKKwkubG9uZwkxMDcyMDAxNDc2CisJLmxvbmcJMzU4Mjc0NjY2NworCS5sb25nCTEwMjM4NTk0NjAKKwkubG9uZwkzMjM4NTkwNzIwCisJLmxvbmcJMTA3MjAyMjQ2NAorCS5sb25nCTYzNDYzNjE2MgorCS5sb25nCTEwMjQ0NzIzNTMKKwkubG9uZwkyNzU4ODAxOTIwCisJLmxvbmcJMTA3MjA0MzYyNAorCS5sb25nCTMwNzgyMTYzMTkKKwkubG9uZwkxMDI1MzA0NTE2CisJLmxvbmcJMTM3MDMxOTEwNAorCS5sb25nCTEwNzIwNjQ5NjIKKwkubG9uZwkyNTcwNTY5MDc4CisJLmxvbmcJMTAyNTA5OTQ0MgorCS5sb25nCTI2MTU4MDUxODQKKwkubG9uZwkxMDcyMDg2NDg0CisJLmxvbmcJMzcyOTkzMzQxMgorCS5sb25nCTEwMjQ2MDUxMTIKKwkubG9uZwkzMDc3MzM2NTc2CisJLmxvbmcJMTA3MjEwODE5OAorCS5sb25nCTE5NDg5MTYwNjYKKwkubG9uZwkxMDI0NzgxNjAzCisJLmxvbmcJMTA5OTUyODE5MgorCS5sb25nCTEwNzIxMzAxMTIKKwkubG9uZwkzMTM5MTQzMTU3CisJLmxvbmcJMTAyMzcyOTM2MAorCS5sb25nCTEyMzE5MDMyMzIKKwkubG9uZwkxMDcyMTUyMjMzCisJLmxvbmcJMTM0OTUxMzQ3NworCS5sb25nCTEwMjQ3Mzc1MTUKKwkubG9uZwkxNTA3NTA0MTI4CisJLmxvbmcJMTA3MjE3NDU3MAorCS5sb25nCTM0ODQ1MTYzMjIKKwkubG9uZwkxMDI0MDAwOTU5CisJLmxvbmcJMjIxNDY1OTg0MAorCS5sb25nCTEwNzIxOTcxMzIKKwkubG9uZwkyNTYzODIwOTE3CisJLmxvbmcJMTAyNTIyNTUzNQorCS5sb25nCTE4MDQ3Mzk4NDAKKwkubG9uZwkxMDcyMjE5OTI5CisJLmxvbmcJNzYwMDM4NzQ2CisJLmxvbmcJMTAyNDQ4Mjg1NQorCS5sb25nCTE0MTM3NDY2ODgKKwkubG9uZwkxMDcyMjQyOTcxCisJLmxvbmcJMzQwMTczNDcxNAorCS5sb25nCTEwMjUxMjk4MzgKKwkubG9uZwk4MjE0MDk1MzYKKwkubG9uZwkxMDcyMjY2MjY5CisJLmxvbmcJMzcyOTc3MjU1MQorCS5sb25nCTEwMjU0ODQ3OTYKKwkubG9uZwkzMDMxODI1NjY0CisJLmxvbmcJMTA3MjI4OTgzNAorCS5sb25nCTEyMjI1Njc0OQorCS5sb25nCTEwMjQ3NTI1OTQKKwkubG9uZwkxNzEwNzg0MjU2CisJLmxvbmcJMTA3MjMxMzY4MAorCS5sb25nCTE1MTgyMDU0ODMKKwkubG9uZwkxMDI0NzI0ODA5CisJLmxvbmcJMzAyNTI2NTE1MgorCS5sb25nCTEwNzIzMzc4MTkKKwkubG9uZwk0MDk5NTE5ODkKKwkubG9uZwkxMDIyODM1NTU1CisJLmxvbmcJMjg3NzY5MDg4CisJLmxvbmcJMTA3MjM2MjI2NworCS5sb25nCTgwMDM1NTU5NAorCS5sb25nCTEwMjI0ODQ4NTAKKwkubG9uZwkxOTgxNzk4NDAKKwkubG9uZwkxMDcyMzg3MDM4CisJLmxvbmcJMzUwMjkyNjIxMworCS5sb25nCTEwMjQyMDkzNzMKKwkubG9uZwkxOTA5MTMwNDk2CisJLmxvbmcJMTA3MjQxMjE0OQorCS5sb25nCTMwNjQ2OTQzMTkKKwkubG9uZwkxMDI1MzgwODIzCisJLmxvbmcJMTk0MTczMjA5NgorCS5sb25nCTEwNzI0Mzc2MTkKKwkubG9uZwk0MTEyOTMwMzkwCisJLmxvbmcJMTAyNDI5NDY3OQorCS5sb25nCTM0OTIwMTA0OTYKKwkubG9uZwkxMDcyNDYzNDY3CisJLmxvbmcJMjY4NDkxODEwNworCS5sb25nCTEwMjMyMjAyMzMKKwkubG9uZwk4MTk1OTY4MAorCS5sb25nCTEwNzI0ODk3MTYKKwkubG9uZwkyMjAwMjEzNjYKKwkubG9uZwkxMDIwNjM1MTMxCisJLmxvbmcJMjI5NzgzNzA1NgorCS5sb25nCTEwNzI1MTYzODcKKwkubG9uZwk0MDI3NjgzODI2CisJLmxvbmcJMTAyMTA0MTE4NQorCS5sb25nCTI3MDQwNDA5NgorCS5sb25nCTEwNzI1NDM1MDgKKwkubG9uZwkyMDEyNzY2MDY1CisJLmxvbmcJMTAyMTc4MDc1MworCS5sb25nCTM2NjczNzY4OTYKKwkubG9uZwkxMDcyNTcxMTA1CisJLmxvbmcJMjcyNzk4MTUyMgorCS5sb25nCTEwMjMwMDk4NzQKKwkubG9uZwkzMzA0MDAyNTYKKwkubG9uZwkxMDcyNTk5MjEyCisJLmxvbmcJMjk0MDAxNzAwMworCS5sb25nCTEwMjUzOTM0MzkKKwkubG9uZwkxMTE5MjkzOTUyCisJLmxvbmcJMTA3MjYyNzg2MQorCS5sb25nCTE2MDg1NTA0MTYKKwkubG9uZwkxMDIyNjc1NjEyCisJLmxvbmcJMzUzNjE1NTkwNAorCS5sb25nCTEwNzI2NTcwOTEKKwkubG9uZwkzNDk2NjU3NzgKKwkubG9uZwkxMDI1MTU2NzUxCisJLmxvbmcJMzA3ODA0NjcyMAorCS5sb25nCTEwNzI2ODY5NDYKKwkubG9uZwkyMDE2MTU5OTk2CisJLmxvbmcJMTAyMjE5MzE2OQorCS5sb25nCTQ1NTIyODQxNgorCS5sb25nCTEwNzI3MDUzNjEKKwkubG9uZwkxOTA4NTM5MzI4CisJLmxvbmcJMTAyNjEyNjMzMgorCS5sb25nCTE4NzE1MDU2NjQKKwkubG9uZwkxMDcyNzIwOTg4CisJLmxvbmcJMjc4NDcwMDg5NAorCS5sb25nCTEwMjU5MjIyNzcKKwkubG9uZwkxNjMwOTk0NDMyCisJLmxvbmcJMTA3MjczNzAxMAorCS5sb25nCTM2MTEwNzY3OAorCS5sb25nCTEwMjI4ODcyNDQKKwkubG9uZwkyMDg0NTU4MzM2CisJLmxvbmcJMTA3Mjc1MzQ2MgorCS5sb25nCTI2NDI3ODQ1MDkKKwkubG9uZwkxMDcyNjg5MDgzCisJLmxvbmcJMTUxNDQ0MjUzMQorCS5sb25nCTEwNzI2ODg5NTMKKwkubG9uZwkzMzMxMDg5MzMKKwkubG9uZwkxMDcyNjg4ODIxCisJLmxvbmcJMzM5MjExMjAyNAorCS5sb25nCTEwNzI2ODg2ODYKKwkubG9uZwkyMDk5ODUyODYyCisJLmxvbmcJMTA3MjY4ODU1MAorCS5sb25nCTc0OTYwOTAwNAorCS5sb25nCTEwNzI2ODg0MTIKKwkubG9uZwkzNjM0NjMyNTk2CisJLmxvbmcJMTA3MjY4ODI3MQorCS5sb25nCTIxNjMyNDg0NjEKKwkubG9uZwkxMDcyNjg4MTI5CisJLmxvbmcJNjI4NjU3ODQ2CisJLmxvbmcJMTA3MjY4Nzk4NQorCS5sb25nCTMzMjQwMzY1MTEKKwkubG9uZwkxMDcyNjg3ODM4CisJLmxvbmcJMTY1NzYzMjgxNQorCS5sb25nCTEwNzI2ODc2OTAKKwkubG9uZwk0MjE3NTM4NzYwCisJLmxvbmcJMTA3MjY4NzUzOQorCS5sb25nCTI0MTE5NTE1OTcKKwkubG9uZwkxMDcyNjg3Mzg3CisJLmxvbmcJNTMzOTQ0ODcyCisJLmxvbmcJMTA3MjY4NzIzMworCS5sb25nCTI4NzY1NjY1MDgKKwkubG9uZwkxMDcyNjg3MDc2CisJLmxvbmcJODQ3OTM2ODkxCisJLmxvbmcJMTA3MjY4NjkxOAorCS5sb25nCTMwMzYwMTk5MTMKKwkubG9uZwkxMDcyNjg2NzU3CisJLmxvbmcJODQ4ODg0NTc1CisJLmxvbmcJMTA3MjY4NjU5NQorCS5sb25nCTI4NzQ0NDMzMjYKKwkubG9uZwkxMDcyNjg2NDMwCisJLmxvbmcJNTIwNzEzNjY2CisJLmxvbmcJMTA3MjY4NjI2NAorCS5sb25nCTIzNzU1NTY0ODEKKwkubG9uZwkxMDcyNjg2MDk1CisJLmxvbmcJNDE0MTkwNDk0OAorCS5sb25nCTEwNzI2ODU5MjQKKwkubG9uZwkxNTIyNjY2MzgyCisJLmxvbmcJMTA3MjY4NTc1MgorCS5sb25nCTMxMDU2MjQxMDQKKwkubG9uZwkxMDcyNjg1NTc3CisJLmxvbmcJMjk4NjY2MzI3CisJLmxvbmcJMTA3MjY4NTQwMQorCS5sb25nCTE2ODk1MjQ1MDAKKwkubG9uZwkxMDcyNjg1MjIyCisJLmxvbmcJMjk4MTAwMjIwMAorCS5sb25nCTEwNzI2ODUwNDEKKwkubG9uZwk0MTcwODQ0Mjg0CisJLmxvbmcJMTA3MjY4NDg1OAorCS5sb25nCTk2MTgwMjI2MworCS5sb25nCTEwNzI2ODQ2NzQKKwkubG9uZwkxOTQxNTAzNDU0CisJLmxvbmcJMTA3MjY4NDQ4NworCS5sb25nCTI4MTI2NDcxNzAKKwkubG9uZwkxMDcyNjg0Mjk4CisJLmxvbmcJMzU3Mjg3Mzg2OQorCS5sb25nCTEwNzI2ODQxMDcKKwkubG9uZwk0MjE5Nzk3ODIzCisJLmxvbmcJMTA3MjY4MzkxNAorCS5sb25nCTQ1NjAzOTc4OAorCS5sb25nCTEwNzI2ODM3MjAKKwkubG9uZwk4NjkwOTYxNTEKKwkubG9uZwkxMDcyNjgzNTIzCisJLmxvbmcJMTE2MTUzNTExOQorCS5sb25nCTEwNzI2ODMzMjQKKwkubG9uZwkxMzMwODY1ODY2CisJLmxvbmcJMTA3MjY4MzEyMworCS5sb25nCTEzNzQ1NzEyMDQKKwkubG9uZwkxMDcyNjgyOTIwCisJLmxvbmcJMTI5MDEwNzUzOAorCS5sb25nCTEwNzI2ODI3MTUKKwkubG9uZwkxMDc0OTA0ODM2CisJLmxvbmcJMTA3MjY4MjUwOAorCS5sb25nCTcyNjM2NjU4NworCS5sb25nCTEwNzI2ODIyOTkKKwkubG9uZwkyNDE4Njk3NjMKKwkubG9uZwkxMDcyNjgyMDg4CisJLmxvbmcJMzkxMzczMjA3OQorCS5sb25nCTEwNzI2ODE4NzQKKwkubG9uZwkzMTQ5MzQyNzY1CisJLmxvbmcJMTA3MjY4MTY1OQorCS5sb25nCTIyNDA5NjYzMDYKKwkubG9uZwkxMDcyNjgxNDQyCisJLmxvbmcJMTE4NTg3MzIxNgorCS5sb25nCTEwNzI2ODEyMjMKKwkubG9uZwk0Mjc2Mjc0NTkxCisJLmxvbmcJMTA3MjY4MTAwMQorCS5sb25nCTI5MTk0NTI4ODMKKwkubG9uZwkxMDcyNjgwNzc4CisJLmxvbmcJMTQwNzU2NTYzNQorCS5sb25nCTEwNzI2ODA1NTMKKwkubG9uZwk0MDMyNzQzNTUxCisJLmxvbmcJMTA3MjY4MDMyNQorCS5sb25nCTIyMDIxODg1NjUKKwkubG9uZwkxMDcyNjgwMDk2CisJLmxvbmcJMjA3OTc3NTc3CisJLmxvbmcJMTA3MjY3OTg2NQorCS5sb25nCTIzNDIxNjA1MTgKKwkubG9uZwkxMDcyNjc5NjMxCisJLmxvbmcJMTE4NTg0MjMKKwkubG9uZwkxMDcyNjc5Mzk2CisJLmxvbmcJMTgwNDAzNDQ1MworCS5sb25nCTEwNzI2NzkxNTgKKwkubG9uZwkzNDIwNzIyNzg3CisJLmxvbmcJMTA3MjY3ODkxOAorCS5sb25nCTU2MzkzMDQ1NgorCS5sb25nCTEwNzI2Nzg2NzcKKwkubG9uZwkxODIwNTM5MTkyCisJLmxvbmcJMTA3MjY3ODQzMworCS5sb25nCTI4OTI1MDE2MDYKKwkubG9uZwkxMDcyNjc4MTg3CisJLmxvbmcJMzc3NjcxMDMyMAorCS5sb25nCTEwNzI2Nzc5MzkKKwkubG9uZwkxNzUwNjMzMzcKKwkubG9uZwkxMDcyNjc3NjkwCisJLmxvbmcJNjc0MzMzMTcxCisJLmxvbmcJMTA3MjY3NzQzOAorCS5sb25nCTk3NjM2MzAyNgorCS5sb25nCTEwNzI2NzcxODQKKwkubG9uZwkxMDc3OTM1OTM0CisJLmxvbmcJMTA3MjY3NjkyOAorCS5sb25nCTE5MjEwNzU0OTAKKwkubG9uZwkxMDcyNjc2NTQwCisJLmxvbmcJODgxNDkzMzAyCisJLmxvbmcJMTA3MjY3NjAxNgorCS5sb25nCTMyNzU3NTI0MzkKKwkubG9uZwkxMDcyNjc1NDgzCisJLmxvbmcJNDg2ODU1NTg4CisJLmxvbmcJMTA3MjY3NDk0MworCS5sb25nCTEwNzcyMjkxMTEKKwkubG9uZwkxMDcyNjc0Mzk0CisJLmxvbmcJNzIzOTUwMzA4CisJLmxvbmcJMTA3MjY3MzgzNworCS5sb25nCTM2OTM1ODIxOTkKKwkubG9uZwkxMDcyNjczMjcxCisJLmxvbmcJMTM2NzMzNTMxNgorCS5sb25nCTEwNzI2NzI2OTgKKwkubG9uZwkyMzA1ODM3MDIwCisJLmxvbmcJMTA3MjY3MjExNgorCS5sb25nCTIxODQzNTg2NDEKKwkubG9uZwkxMDcyNjcxNTI2CisJLmxvbmcJOTcyNjgyODQwCisJLmxvbmcJMTA3MjY3MDkyOAorCS5sb25nCTI5MzUxMDE3NjIKKwkubG9uZwkxMDcyNjcwMzIxCisJLmxvbmcJMzc0NTUxMzI2MworCS5sb25nCTEwNzI2Njk3MDYKKwkubG9uZwkzMzcyMzIwODg2CisJLmxvbmcJMTA3MjY2OTA4MworCS5sb25nCTE3ODM0NjQ2MjAKKwkubG9uZwkxMDcyNjY4NDUyCisJLmxvbmcJMzI0MTM4NjIxNQorCS5sb25nCTEwNzI2Njc4MTIKKwkubG9uZwkzNDE4MTI1Mjg0CisJLmxvbmcJMTA3MjY2NzE2NAorCS5sb25nCTIyODAyMTkxNDgKKwkubG9uZwkxMDcyNjY2NTA4CisJLmxvbmcJNDA4ODcwMDc1OAorCS5sb25nCTEwNzI2NjU4NDMKKwkubG9uZwkyMTkyMjc0MDAKKwkubG9uZwkxMDcyNjY1MTcxCisJLmxvbmcJMzUyMTgxNjkxOAorCS5sb25nCTEwNzI2NjQ0ODkKKwkubG9uZwkxMDc2MjA1Mjc5CisJLmxvbmcJMTA3MjY2MzgwMAorCS5sb25nCTE0MzY0ODQ2MTYKKwkubG9uZwkxMDcyNjYzMTAyCisJLmxvbmcJMjcxMzYyNjEwCisJLmxvbmcJMTA3MjY2MjM5NgorCS5sb25nCTE4Mzg5OTY2ODgKKwkubG9uZwkxMDcyNjYxNjgxCisJLmxvbmcJMTgwNzEyMjUxOAorCS5sb25nCTEwNzI2NjA5NTgKKwkubG9uZwkxMzc5NTM1NDIKKwkubG9uZwkxMDcyNjYwMjI3CisJLmxvbmcJMTA4ODE3ODU4NAorCS5sb25nCTEwNzI2NTk0ODcKKwkubG9uZwkzMjQwNTc1MzcKKwkubG9uZwkxMDcyNjU4NzM5CisJLmxvbmcJMjEwMTI4ODA3NgorCS5sb25nCTEwNzI2NTc5ODIKKwkubG9uZwkyMDg1MTMzOTc0CisJLmxvbmcJMTA3MjY1NzIxNworCS5sb25nCTIzNTMyNDQ1MQorCS5sb25nCTEwNzI2NTY0NDQKKwkubG9uZwk4MDYwNTE1OTIKKwkubG9uZwkxMDcyNjU1NjYyCisJLmxvbmcJMzc1NjAzMzE0MAorCS5sb25nCTEwNzI2NTQ4NzEKKwkubG9uZwk0NTM1NDI1NDMKKwkubG9uZwkxMDcyNjU0MDczCisJLmxvbmcJMzc0MTE3NzMyNworCS5sb25nCTEwNzI2NTMyNjUKKwkubG9uZwk2OTEyMTYxMDkKKwkubG9uZwkxMDcyNjUyNDUwCisJLmxvbmcJNDE0NTIyMzM3MgorCS5sb25nCTEwNzI2NTE2MjUKKwkubG9uZwkxMTc0NDM5MDkxCisJLmxvbmcJMTA3MjY1MDc5MworCS5sb25nCTMyNDQxNjEzOQorCS5sb25nCTEwNzI2NDk5NTIKKwkubG9uZwkxNTUwMjQ2MzEwCisJLmxvbmcJMTA3MjY0OTEwMgorCS5sb25nCTUxMTUyNDY3NAorCS5sb25nCTEwNzI2NDgyNDQKKwkubG9uZwkxNDU3MjQ4NDgyCisJLmxvbmcJMTA3MjY0NzM3NworCS5sb25nCTQ1OTQ0OTU1CisJLmxvbmcJMTA3MjY0NjUwMgorCS5sb25nCTUyNTUzNzM5NworCS5sb25nCTEwNzI2NDU2MTgKKwkubG9uZwkyODQ4NDQwMTg4CisJLmxvbmcJMTA3MjY0NDcyNQorCS5sb25nCTI2NzE1NTU2MzMKKwkubG9uZwkxMDcyNjQzODI0CisJLmxvbmcJNDI0MTE3MjYzNworCS5sb25nCTEwNzI2NDI5MTQKKwkubG9uZwkzMjEzMDk0Mjc4CisJLmxvbmcJMTA3MjY0MTk5NgorCS5sb25nCTM4MzI1MDM2ODgKKwkubG9uZwkxMDcyNjQxMDY5CisJLmxvbmcJMTc1NDA5MTUzNAorCS5sb25nCTEwNzI2NDAxMzQKKwkubG9uZwkxMjIxOTIxODA0CisJLmxvbmcJMTA3MjYzOTE5MAorCS5sb25nCTIxODQ1MjY0ODkKKwkubG9uZwkxMDcyNjM4MjM3CisJLmxvbmcJMjk0OTAyMDg5CisJLmxvbmcJMTA3MjYzNzI3NgorCS5sb25nCTQwOTAzNzUyNzAKKwkubG9uZwkxMDcyNjM2MzA1CisJLmxvbmcJNjMyODYwOTA2CisJLmxvbmcJMTA3MjYzNTMyNworCS5sb25nCTI3NTM0OTg3MDIKKwkubG9uZwkxMDcyNjM0MzM5CisJLmxvbmcJMTgwODAwOTI1MgorCS5sb25nCTEwNzI2MzMzNDMKKwkubG9uZwkyMDM2NDI4NjcyCisJLmxvbmcJMTA3MjYzMjMzOAorCS5sb25nCTMzODMyMzU2MjYKKwkubG9uZwkxMDcyNjMxMzI0CisJLmxvbmcJMTQ5NzM0NzQ4NAorCS5sb25nCTEwNzI2MzAzMDIKKwkubG9uZwk2MTcwMTgzMTcKKwkubG9uZwkxMDcyNjI5MjcxCisJLmxvbmcJNjg0OTMzMDU4CisJLmxvbmcJMTA3MjYyODIzMQorCS5sb25nCTE2NDMxNzA3OTgKKwkubG9uZwkxMDcyNjI3MTgyCisJLmxvbmcJMzAxMTA2NjM2MAorCS5sb25nCTEwNzI2MjU1OTIKKwkubG9uZwk5NTcxNTg3MTMKKwkubG9uZwkxMDcyNjIzNDQyCisJLmxvbmcJMTM5MDkwNzk0MQorCS5sb25nCTEwNzI2MjEyNTYKKwkubG9uZwkzODE5MTU1MjcwCisJLmxvbmcJMTA3MjYxOTAzNAorCS5sb25nCTM0NDM1NzExOTYKKwkubG9uZwkxMDcyNjE2Nzc3CisJLmxvbmcJNDA0NTQxMjQ1OAorCS5sb25nCTEwNzI2MTQ0ODQKKwkubG9uZwk4MDU1MDM5MjMKKwkubG9uZwkxMDcyNjEyMTU2CisJLmxvbmcJMTc3ODkyMjAxNQorCS5sb25nCTEwNzI2MDk3OTEKKwkubG9uZwkyMTI1MDMzNjY1CisJLmxvbmcJMTA3MjYwNzM5MAorCS5sb25nCTEyODcyMDM4NjMKKwkubG9uZwkxMDcyNjA0OTUzCisJLmxvbmcJMjk5MjYyOTU2OAorCS5sb25nCTEwNzI2MDI0NzkKKwkubG9uZwkyMzY3MjY3MTI3CisJLmxvbmcJMTA3MjU5OTk2OQorCS5sb25nCTMxMTU1MjYwNDcKKwkubG9uZwkxMDcyNTk3NDIyCisJLmxvbmcJMzQwMjE5NTM5CisJLmxvbmcJMTA3MjU5NDgzOQorCS5sb25nCTIwMTcyMTU3MTkKKwkubG9uZwkxMDcyNTkyMjE4CisJLmxvbmcJMzIyNTQ0MzQyNAorCS5sb25nCTEwNzI1ODk1NjAKKwkubG9uZwkzMzI2NTY1NjczCisJLmxvbmcJMTA3MjU4Njg2NQorCS5sb25nCTE2Njk4MTEyMTEKKwkubG9uZwkxMDcyNTg0MTMzCisJLmxvbmcJMTg4NjczNTAyMgorCS5sb25nCTEwNzI1ODEzNjMKKwkubG9uZwkzMzAxMDcxMTcxCisJLmxvbmcJMTA3MjU3ODU1NQorCS5sb25nCTkyODUxNDI4MworCS5sb25nCTEwNzI1NzU3MTAKKwkubG9uZwkyNjU2MzY0MDU5CisJLmxvbmcJMTA3MjU3MjgyNgorCS5sb25nCTM0NzM0OTA1MDcKKwkubG9uZwkxMDcyNTY5OTA0CisJLmxvbmcJMjY0OTk2NTYwNgorCS5sb25nCTEwNzI1NjY5NDQKKwkubG9uZwkzNzM2ODE5MDUyCisJLmxvbmcJMTA3MjU2Mzk0NQorCS5sb25nCTE2ODA4ODUxNzUKKwkubG9uZwkxMDcyNTYwOTA4CisJLmxvbmcJNDQxMzc3MQorCS5sb25nCTEwNzI1NTc4MzIKKwkubG9uZwkyMjE0ODY5NzUzCisJLmxvbmcJMTA3MjU1NDcxNgorCS5sb25nCTMyMTQ3MjUxODQKKwkubG9uZwkxMDcyNTUxNTYxCisJLmxvbmcJMjE4NjA3OTkwMworCS5sb25nCTEwNzI1NDgzNjcKKwkubG9uZwkyNTkwMzcyMTMxCisJLmxvbmcJMTA3MjU0NTEzMworCS5sb25nCTM1NzgxNDYwNzkKKwkubG9uZwkxMDcyNTQxODU5CisJLmxvbmcJNDI4MzcxMjc1NQorCS5sb25nCTEwNzI1Mzg1NDUKKwkubG9uZwkzODI0ODM0NTEwCisJLmxvbmcJMTA3MjUzNTE5MQorCS5sb25nCTEzMDI0MDAyOTgKKwkubG9uZwkxMDcyNTMxNzk3CisJLmxvbmcJOTUwNTg2MzYKKwkubG9uZwkxMDcyNTI4MzYyCisJLmxvbmcJMzU2MzkwNjA2MworCS5sb25nCTEwNzI1MjQ4ODUKKwkubG9uZwkyMTY3MjMwNzMwCisJLmxvbmcJMTA3MjUyMTM2OAorCS5sb25nCTM1MjQ5MTgzMzQKKwkubG9uZwkxMDcyNTE3ODA5CisJLmxvbmcJMjM1MzMwNDkxOAorCS5sb25nCTEwNzI1MTQyMDkKKwkubG9uZwkxOTM5NjI1ODM5CisJLmxvbmcJMTA3MjUxMDU2NworCS5sb25nCTEyNTY3MTQ1ODEKKwkubG9uZwkxMDcyNTA2ODgzCisJLmxvbmcJMzU1MjUyNTg0OAorCS5sb25nCTEwNzI1MDMxNTYKKwkubG9uZwkzNDY0ODA5NTIyCisJLmxvbmcJMTA3MjQ5OTM4NworCS5sb25nCTQyMDA1NDI1OTMKKwkubG9uZwkxMDcyNDk1NTc1CisJLmxvbmcJMzU1NjA5MTI0CisJLmxvbmcJMTA3MjQ5MTcyMQorCS5sb25nCTM2ODQxMzkwOTkKKwkubG9uZwkxMDcyNDg3ODIyCisJLmxvbmcJMTQ4MzU1OTE4CisJLmxvbmcJMTA3MjQ4Mzg4MQorCS5sb25nCTE0NTc2ODkyNDIKKwkubG9uZwkxMDcyNDc5ODk1CisJLmxvbmcJMjExODU5MTU5NgorCS5sb25nCTEwNzI0NzU4NjUKKwkubG9uZwk5MDg4NDgwODkKKwkubG9uZwkxMDcyNDcxNzkxCisJLmxvbmcJODc3MDMyNjg5CisJLmxvbmcJMTA3MjQ2NzY3MgorCS5sb25nCTc1MjAxMjMwNAorCS5sb25nCTEwNzI0NjM1MDgKKwkubG9uZwkzNTMyMzAxNzQ5CisJLmxvbmcJMTA3MjQ1OTI5OAorCS5sb25nCTM2MDA1NjMyMjEKKwkubG9uZwkxMDcyNDU1MDQzCisJLmxvbmcJMzkwMjg1NzA4NAorCS5sb25nCTEwNzI0NTA3NDIKKwkubG9uZwkzMDYzMTAxMDM2CisJLmxvbmcJMTA3MjQ0NjM5NQorCS5sb25nCTM5NzIzNDQzNzQKKwkubG9uZwkxMDcyNDQyMDAxCisJLmxvbmcJOTAzMTgzNTQ5CisJLmxvbmcJMTA3MjQzNzU2MQorCS5sb25nCTk4Mzg5MjkzOAorCS5sb25nCTEwNzI0MzMwNzMKKwkubG9uZwkyNzIyODU4NTY4CisJLmxvbmcJMTA3MjQyODUzNworCS5sb25nCTMwMjc5MDUxNQorCS5sb25nCTEwNzI0MjM5NTQKKwkubG9uZwk3NTk4MTEwNTcKKwkubG9uZwkxMDcyNDE5MzIyCisJLmxvbmcJMjUwNzgwOTkyMgorCS5sb25nCTEwNzI0MTQ2NDEKKwkubG9uZwkyMzg4NDA4ODEzCisJLmxvbmcJMTA3MjQwNzUyOAorCS5sb25nCTIwODQ0OTI5NDIKKwkubG9uZwkxMDcyMzk3ODcwCisJLmxvbmcJMjQzNTcwMzMwMQorCS5sb25nCTEwNzIzODgwMTAKKwkubG9uZwkxOTM1NDMzMzYwCisJLmxvbmcJMTA3MjM3Nzk0NQorCS5sb25nCTI3NDIwNDcyOTAKKwkubG9uZwkxMDcyMzY3NjcxCisJLmxvbmcJMjA1MzI4NDIwNQorCS5sb25nCTEwNzIzNTcxODUKKwkubG9uZwk2NTc3ODMzNjcKKwkubG9uZwkxMDcyMzQ2NDgzCisJLmxvbmcJMjg5MzY2NDg0MQorCS5sb25nCTEwNzIzMzU1NjAKKwkubG9uZwkzNzE4OTA2NDA1CisJLmxvbmcJMTA3MjMyNDQxMworCS5sb25nCTE1NDc4OTYzMDMKKwkubG9uZwkxMDcyMzEzMDM4CisJLmxvbmcJMjQ5NDA1ODQ0MAorCS5sb25nCTEwNzIzMDE0MjkKKwkubG9uZwkzMTMzMjM4NzQyCisJLmxvbmcJMTA3MjI4OTU4MgorCS5sb25nCTMzMjcwMDAwODYKKwkubG9uZwkxMDcyMjc3NDkyCisJLmxvbmcJMTg2MDY2NzI3NAorCS5sb25nCTEwNzIyNjUxNTQKKwkubG9uZwk2NjUzNDA3NDcKKwkubG9uZwkxMDcyMjUyNTYyCisJLmxvbmcJNDQzMzQ3ODQxCisJLmxvbmcJMTA3MjIzOTcxMAorCS5sb25nCTU4MTI4MjYxOAorCS5sb25nCTEwNzIyMjY1OTIKKwkubG9uZwkzMzQ5NzgwNDY1CisJLmxvbmcJMTA3MjIxMzIwMQorCS5sb25nCTkxNDIxNzYwNgorCS5sb25nCTEwNzIxOTk1MzIKKwkubG9uZwk5ODk3OTc2NjEKKwkubG9uZwkxMDcyMTg1NTc2CisJLmxvbmcJOTQ1NDM2NDE2CisJLmxvbmcJMTA3MjE3MTMyNgorCS5sb25nCTU0OTI5MTMwMAorCS5sb25nCTEwNzIxNTY3NzQKKwkubG9uZwkxODE0NjM2Mzg5CisJLmxvbmcJMTA3MjE0MTkxMQorCS5sb25nCTIzOTA5Mjg1OAorCS5sb25nCTEwNzIxMjY3MjkKKwkubG9uZwkxNzk0NjgwNzI0CisJLmxvbmcJMTA3MjExMTIxNworCS5sb25nCTEyNDE1MzQ2NzgKKwkubG9uZwkxMDcyMDk1MzY2CisJLmxvbmcJMzM2NjU2NjIxNAorCS5sb25nCTEwNzIwNzkxNjQKKwkubG9uZwkxMjQ0MDkwODI4CisJLmxvbmcJMTA3MjA2MjYwMQorCS5sb25nCTE3MDg0NDgxMjAKKwkubG9uZwkxMDcyMDQ1NjYzCisJLmxvbmcJMzU0NDI2MDY1MAorCS5sb25nCTEwNzIwMjgzMzcKKwkubG9uZwkxNDAyNzQxNDAzCisJLmxvbmcJMTA3MjAxMDYxMAorCS5sb25nCTI1NTE5MzY4ODgKKwkubG9uZwkxMDcxOTkyNDY1CisJLmxvbmcJNjE3NjY5NzM5CisJLmxvbmcJMTA3MTk3Mzg4NworCS5sb25nCTc5NDAwMjE4NgorCS5sb25nCTEwNzE5NTQ4NTcKKwkubG9uZwkyMDIxMjM3NjkzCisJLmxvbmcJMTA3MTkzNTM1NgorCS5sb25nCTU0MDQ1MDM4NAorCS5sb25nCTEwNzE5MTUzNjQKKwkubG9uZwkxOTIwNTU1NTM3CisJLmxvbmcJMTA3MTg5NDg1NworCS5sb25nCTI4Nzk1ODUyMDYKKwkubG9uZwkxMDcxODczODExCisJLmxvbmcJMzAwMDIzNzQ1NQorCS5sb25nCTEwNzE4NTIxOTkKKwkubG9uZwkzMzUyOTc0MzQ2CisJLmxvbmcJMTA3MTgyOTk5MQorCS5sb25nCTU2OTYyOTkzNworCS5sb25nCTEwNzE4MDcxNTUKKwkubG9uZwkyMDc3MjM3MjA4CisJLmxvbmcJMTA3MTc4MzY1MworCS5sb25nCTIyODQ4OTE4MDUKKwkubG9uZwkxMDcxNzU5NDQ2CisJLmxvbmcJMTIyNjY1MTc4NAorCS5sb25nCTEwNzE3MzQ0ODkKKwkubG9uZwkxMTAyMDQ3NDA1CisJLmxvbmcJMTA3MTcwODczMQorCS5sb25nCTIwMDk4OTYzODQKKwkubG9uZwkxMDcxNjgyMTE1CisJLmxvbmcJOTI3NDE5MDgyCisJLmxvbmcJMTA3MTY1NDU3NworCS5sb25nCTg1MDEwMzY2CisJLmxvbmcJMTA3MTYwNzQxMworCS5sb25nCTY5NjQzMTAyNQorCS5sb25nCTEwNzE1NDgxODAKKwkubG9uZwkyNjExNDEwNTQxCisJLmxvbmcJMTA3MTQ4NjU4NQorCS5sb25nCTI2MTI1OTM2NTgKKwkubG9uZwkxMDcxNDIyMzk2CisJLmxvbmcJMzU0ODE1NTMwNgorCS5sb25nCTEwNzEzNTUzMzYKKwkubG9uZwkzODg3OTk3NDg0CisJLmxvbmcJMTA3MTI4NTA3MworCS5sb25nCTI0NDg1NDc2MworCS5sb25nCTEwNzEyMTEyMDIKKwkubG9uZwk0MjE0NDQ1NjQ4CisJLmxvbmcJMTA3MTEzMzIxNgorCS5sb25nCTIzMDM5NjY3MjcKKwkubG9uZwkxMDcxMDUwNDc4CisJLmxvbmcJMzk5MTA0MDAxMworCS5sb25nCTEwNzA5NjIxNTIKKwkubG9uZwkzMTI2OTUyMjc4CisJLmxvbmcJMTA3MDg2NzExOAorCS5sb25nCTE4MTc0NDgzNzgKKwkubG9uZwkxMDcwNzYzODA0CisJLmxvbmcJMTc5MzgxNDg2NAorCS5sb25nCTEwNzA2NDk4ODQKKwkubG9uZwkzNTA3MjI0MDcyCisJLmxvbmcJMTA3MDQ0NzE5MworCS5sb25nCTQwMjc2MDkxMDUKKwkubG9uZwkxMDcwMTQ4NzcyCisJLmxvbmcJNTc3NTA3OTkzCisJLmxvbmcJMTA2OTc3OTQxNAorCS5sb25nCTIzMTAyMzI0MTkKKwkubG9uZwkxMDY4OTMxODI5CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMzE2NDcxMDQzOAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkzMjIxODIzOTk1CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNzIyNjc5MAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDc0MzQwMzQ3CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTczODA2OTMKKwkubG9uZwk4NTg5OTM0NTkKKwkubG9uZwkzMjE2MTkyMzA3CisJLmxvbmcJMzA2NzgzMzc4MworCS5sb25nCTMyMTUzODM0MDUKKwkubG9uZwk3ODA5MDMxNDUKKwkubG9uZwkxMDY2ODU0NTg2CisJLmxvbmcJODU4OTkzNDU5CisJLmxvbmcJMTA2ODcwODY1OQorCS5sb25nCTMzNDA1MzAxMTkKKwkubG9uZwkxMDY3MzkyMTEzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxMzIxNTI4Mzk5CisJLmxvbmcJMTA2NjUxNzc0MAorCS5sb25nCTMwNjc4MzM3ODMKKwkubG9uZwkxMDY3ODk5NzU3CisJLmxvbmcJMjAyMTE1OTQ2MAorCS5sb25nCTEwNjU4NTUwOTYKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA2NjE3ODk2OQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk1MDkxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSw2MTEyCisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9hc2luLlMgYi9saWJtL3g4Ni9lX2FzaW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDdmMzMxCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9hc2luLlMKQEAgLTAsMCArMSwyMDAzIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIFRvIGNvbXB1dGUgYXNpbihzKSwgc2VwYXJhdGUgc2NoZW1lcyBhcmUgdXNlZCB3aGVuIHMgaXMgaW4gZGlmZmVyZW50CisvLyAgaW50ZXJ2YWxzLgorLy8KKy8vICB8c3wgaW4gWzJeey00fSwgc3FydCgzKS8yKToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzPTJeayoxLmIxIGIyIC4uIGI1MgorLy8gICAgICAgYXNpbihzKT1hc2luKHQpK2FzaW4ociksIHdoZXJlIHI9cypzcXJ0KDEtdF4yKS10KnNxcnQoMS1zXjIpCisvLyAgICAgICBhc2luKHIpLXIgZXZhbHVhdGVkIGFzIDctZGVncmVlIHBvbHlub21pYWwgKGMzKnJeMytjNSpyXjUrYzcqcl43KQorLy8gICAgICAgRm9yIHRoZSBmaXJzdCBkZWdyZWUgdGVybSwgciBpcyBldmFsdWF0ZWQgYXMKKy8vICAgICAgICAgICAgICAgIFI9KHNeMi10XjIpLyhzcXJ0KDEtdF4yKSpzK3NxcnQoMS1zXjIpKnQpCisvLyAgICAgICAoc3FydCgxLXReMikgcmVhZCBmcm9tIHRhYmxlKQorLy8gIFRoZSBtYWluIHNvdXJjZSBvZiBlcnJvciBpcyBzdGlsbCBSIChtYXkgc3RpbGwgYmUgYWZmZWN0ZWQgYnkgdXAgdG8gMyB1bHBzCisvLyAgb2Ygcm91bmRpbmcgZXJyb3IpLiBUaGUgdGFibGUgc2l6ZSBtdXN0IGJlIHN1ZmZpY2llbnRseSBsYXJnZSwgdG8gbWluaW1pemUKKy8vICB0aGlzIGVmZmVjdC4KKy8vCisvLyAgfHN8IGluIFtzcXJ0KDMpLzIsIDI1NS8yNTYpOgorLy8gICAgICAgTGV0IHQ9Ml5rKjEuYjEgYjIuLmI2IDEsIHdoZXJlIHNxcnQoMS1zXjIpPTJeayoxLmIxIGIyIC4uIGI1MiAocm91bmRlZCkKKy8vICAgICAgIGFzaW4ofHN8KT1waS8yLWFzaW4odCkrYXNpbihyKSwgcj1zKnQtc3FydCgxLXNeMikqc3FydCgxLXReMikKKy8vICAgICAgIGFzaW4ocikgZXZhbHVhdGVkIGFzIHBvbHlub21pYWwgKHNhbWUgYXMgYWJvdmUpCisvLyAgICAgICBUaGUgZmlyc3QgZGVncmVlIHRlcm0gaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICAgICAgICAgIHI9KHNeMit0XjItMSkvKHMqdCtzcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKSkKKy8vCisvLyAgfHN8PDJeey00fTogZXZhbHVhdGUgYXMgMTMtZGVncmVlIHBvbHlub21pYWwKKy8vCisvLyAgfHN8IGluIFsyNTUvMjU2LDEpOiBhc2luKHxzfCk9cGkvMi1hc2luKHNxcnQoMS1zXjIpKQorLy8gICAgICAgICB1c2UgMTctZGVncmVlIHBvbHlub21pYWwsIGdldCBlcnJvciB0ZXJtCisvLyAgICAgICAgIFEqZXBzIH4gKDEtc14yLVFeMikvKDIqUSkgZm9yIGZpcnN0IHRlcm0KKy8vICAgICAgICAgICAgICAgICAoIFEoMStlcHMpPXNxcnQoMS1zXjIpICkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGFzaW4oTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgYXNpbihJTkYpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhc2luKHgpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24sIGZvciB8eHw+MS4wCisvLyAgYXNpbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBhc2luCitFTlRSWShhc2luKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMjAsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDY0KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBzdG14Y3NyICAgMTYoJWVzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAlZWR4LCAxNiglZXNwKQorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgNTk4NCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDYwMTYoJWVieCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDYwMDAoJWVieCksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDIsICVlY3gsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDIsICVlY3gsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ1MjQyODcsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQyNjA4NjQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQ2NTUzNSwgJWVkeAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRsICAgICAgJC00LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkNjQyNTYsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDM5MzYoJWVieCwlZWR4LDIpLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA5NiglZWJ4LCVlZHgsNCksICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDY0KCVlYngpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFuZHBkICAgICA2MDY0KCVlYngpLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDcyKCVlYngpLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBzdG14Y3NyICAgMjQoJWVzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDI0KCVlc3ApCisgICAgICAgIGxkbXhjc3IgICAyNCglZXNwKQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBzdWJsICAgICAgJDk1NSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDY3LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRwZCAgICAgNTk4NCglZWJ4KSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgIDYwNDgoJWVieCksICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDYwMTYoJWVieCksICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2xscSAgICAgJDIsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlZHgKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMgorICAgICAgICBzdWJsICAgICAgJDY1MjE2LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG11bHNkICAgICAzOTM2KCVlYngsJWVkeCw0KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgNjA4MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDY0KCVlYngpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDgwKCVlYngpLCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG1vdnNkICAgICA3MiglZWJ4KSwgJXhtbTIKKyAgICAgICAgc3VicGQgICAgIDk2KCVlYngsJWVkeCw4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFuZGwgICAgICAkNTI0Mjg4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIHN0bXhjc3IgICAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MjkxLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTQzMzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIHVucGNrbHBkICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICglZWJ4KSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMTYoJWVieCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAzMiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICBzdG14Y3NyICAgMjQoJWVzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDI0KCVlc3ApCisgICAgICAgIGxkbXhjc3IgICAyNCglZXNwKQorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE1MzU4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kcGQgICAgIDYwMzIoJWVieCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tNQorICAgICAgICBhbmRwZCAgICAgNjAzMiglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNjAxNiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgKCVlYngpLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTYKKyAgICAgICAgZGl2c2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNDgoJWVieCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAxNiglZWJ4KSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDMyKCVlYngpLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG1vdmFwZCAgICA2MDgwKCVlYngpLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tMgorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIHN0bXhjc3IgICAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQyNjE4ODYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyNjE4ODgsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVkeAorICAgICAgICBtb3ZsICAgICAgJDEwNzI2OTMyNDgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgbW92cSAgICAgIDgoJWVzcCksICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMSwgJWVkeAorICAgICAgICBzYmJsICAgICAgJDIxNDY0MzUwNzIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpnZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZzZCAgICAgNTk4NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDYwODAoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICA2MDg4KCVlYngpLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKyAgICAgICAgc3RteGNzciAgIDI0KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyNCglZXNwKQorICAgICAgICBsZG14Y3NyICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgYW5kbnBkICAgICV4bW03LCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW03CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE1LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG9ycGQgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNworLkxfMlRBR19QQUNLRVRfMTUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVkeAorICAgICAgICBjbXBsICAgICAgMTYoJWVzcCksICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIHN0bXhjc3IgICAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDY0KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChhc2luKQorIyAtLSBFbmQgIGFzaW4KKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGFzaW5sLCBhc2luKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJNzgwOTAzMTQ1CisJLmxvbmcJMTA2Njg1NDU4NgorCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTEwNjg3MDg2NTkKKwkubG9uZwkzMzQwNTMwMTE5CisJLmxvbmcJMTA2NzM5MjExMworCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTMyMTUyODM5OQorCS5sb25nCTEwNjY1MTc3NDAKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMTA2Nzg5OTc1NworCS5sb25nCTIwMjExNTk0NjAKKwkubG9uZwkxMDY1ODU1MDk2CisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNjYxNzg5NjkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTEwNjg3MDg2NTkKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMTA2Nzg5OTc1NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzgyMjk1Mjc5MgorCS5sb25nCTEwMjE2MzkzNzIKKwkubG9uZwkxODI3OTI0NDgKKwkubG9uZwkxMDY4NTA3ODM2CisJLmxvbmcJMjI2NDIxMzI3MQorCS5sb25nCTEwMTk1NTg5MDgKKwkubG9uZwk2NDkwNTI5MjgKKwkubG9uZwkxMDY4NTI0MjUzCisJLmxvbmcJMTc5NzEzOTYwOQorCS5sb25nCTEwMjIyOTUxNDMKKwkubG9uZwkxMjQzMDk1Mjk2CisJLmxvbmcJMTA2ODU0MDY3MQorCS5sb25nCTE0MTU5Mzg3NTYKKwkubG9uZwkxMDIxNDM5NTM3CisJLmxvbmcJMjAzMzI5NDU5MgorCS5sb25nCTEwNjg1NTcwOTAKKwkubG9uZwkyMzU2ODA5OTc4CisJLmxvbmcJMTAyMTc3NzkxNgorCS5sb25nCTMwODgwNjM3NDQKKwkubG9uZwkxMDY4NTczNTEwCisJLmxvbmcJMjY2OTA1NTMxOAorCS5sb25nCTEwMjIxMjQ0ODIKKwkubG9uZwkxODA4ODg1NzYKKwkubG9uZwkxMDY4NTg5OTMyCisJLmxvbmcJMzU2NjQ0NTMyNQorCS5sb25nCTEwMjEzNTg3MTIKKwkubG9uZwkxOTcwMTk2OTkyCisJLmxvbmcJMTA2ODYwNjM1NAorCS5sb25nCTg5Njk4MDMyMworCS5sb25nCTEwMjEzMTk2NTkKKwkubG9uZwk0MjI5NTU1NDU2CisJLmxvbmcJMTA2ODYyMjc3NworCS5sb25nCTQzNjA0OTcxMgorCS5sb25nCTEwMjEzMTk3NTgKKwkubG9uZwkyNzMyNTcyMTYwCisJLmxvbmcJMTA2ODYzOTIwMgorCS5sb25nCTU4MzEyMzIwOQorCS5sb25nCTEwMjA3OTc5NjAKKwkubG9uZwkxODQyODMxODcyCisJLmxvbmcJMTA2ODY1NTYyOAorCS5sb25nCTEzNzA0NDk4MDQKKwkubG9uZwkxMDIxNDI5MjcwCisJLmxvbmcJMTYyODk5NDU2MAorCS5sb25nCTEwNjg2NzIwNTUKKwkubG9uZwkyNDExMzkxNDY0CisJLmxvbmcJMTAyMTA1Nzk4MAorCS5sb25nCTIxNTk3NjM3MTIKKwkubG9uZwkxMDY4Njg4NDgzCisJLmxvbmcJMTIwODY5Mjc0OQorCS5sb25nCTEwMjE5NDM5MDMKKwkubG9uZwkzNTAzODg2MzM2CisJLmxvbmcJMTA2ODcwNDkxMgorCS5sb25nCTUzODc5MzMwOQorCS5sb25nCTEwMTk3NDQwNjMKKwkubG9uZwkxNDM1MTg3MjAwCisJLmxvbmcJMTA2ODcyMTM0MworCS5sb25nCTQwODUwODc2MTIKKwkubG9uZwkxMDIwNjA4NDE5CisJLmxvbmcJMzE3NDY5OTUyCisJLmxvbmcJMTA2ODczNzc3NQorCS5sb25nCTE0NDM4Njk0MgorCS5sb25nCTEwMjE0NDA3MzIKKwkubG9uZwkyMTk2MTcyODAKKwkubG9uZwkxMDY4NzU0MjA4CisJLmxvbmcJMjk0MDA4ODM2MQorCS5sb25nCTEwMTk5ODExMjIKKwkubG9uZwkxMjEwNTU4MjA4CisJLmxvbmcJMTA2ODc3MDY0MgorCS5sb25nCTIxNzY4NTAzNDcKKwkubG9uZwkxMDE4MzczNzA1CisJLmxvbmcJMzM1OTI2ODM1MgorCS5sb25nCTEwNjg3ODcwNzcKKwkubG9uZwkyMzk1NjExNDU0CisJLmxvbmcJMTAyMTg4OTA0MgorCS5sb25nCTI0Mzk4MDM2NDgKKwkubG9uZwkxMDY4ODAzNTE0CisJLmxvbmcJMTY1MDcwNTI1MworCS5sb25nCTEwMjAyMjc5NjYKKwkubG9uZwkyODE2MjAzNTIwCisJLmxvbmcJMTA2ODgxOTk1MgorCS5sb25nCTM3MDIxNjYzODYKKwkubG9uZwkxMDE5Mzc5OTE0CisJLmxvbmcJMjYyNjIwNjcyCisJLmxvbmcJMTA2ODgzNjM5MgorCS5sb25nCTE4NTU2NDkzNzAKKwkubG9uZwkxMDIwNDUzMTI0CisJLmxvbmcJMzQzODE1OTYxNgorCS5sb25nCTEwNjg4NTI4MzIKKwkubG9uZwk5MjMwNjM4NjAKKwkubG9uZwkxMDE5MjczODM0CisJLmxvbmcJMzgyMjEwNTg1NgorCS5sb25nCTEwNjg4NjkyNzQKKwkubG9uZwk0Mjg5OTQ3OTQ3CisJLmxvbmcJMTAxOTQzNDI0OQorCS5sb25nCTE0ODM3Mjk5MjAKKwkubG9uZwkxMDY4ODg1NzE4CisJLmxvbmcJNzg3NDU1ODE0CisJLmxvbmcJMTAyMDczODM3OQorCS5sb25nCTc4NzMyMTA4OAorCS5sb25nCTEwNjg5MDIxNjMKKwkubG9uZwkzMzIxNjUzMzM3CisJLmxvbmcJMTAyMTg0MjU2OQorCS5sb25nCTE4MDIyNTMzMTIKKwkubG9uZwkxMDY4OTE4NjA5CisJLmxvbmcJMjY1MzYzMzUyNgorCS5sb25nCTEwMjE4MjE1MjUKKwkubG9uZwkzMDI5ODU5ODQKKwkubG9uZwkxMDY4OTM1MDU3CisJLmxvbmcJMTYxMjcyMDI4CisJLmxvbmcJMTAyMTY1NTE0OQorCS5sb25nCTY1Mzk2NjA4MAorCS5sb25nCTEwNjg5NTE1MDYKKwkubG9uZwkyNTY2MDk4NjY3CisJLmxvbmcJMTAyMDA2NjIxOQorCS5sb25nCTI5MjQ3MjcyOTYKKwkubG9uZwkxMDY4OTY3OTU2CisJLmxvbmcJMzY0NjQ5MzcyMgorCS5sb25nCTEwMTQyOTIyODUKKwkubG9uZwkyODg5ODkwMzA0CisJLmxvbmcJMTA2ODk4NDQwOAorCS5sb25nCTEwODEwMDkxOTYKKwkubG9uZwkxMDIyMTg5NjIwCisJLmxvbmcJNjE5MDk4MTEyCisJLmxvbmcJMTA2OTAwMDg2MgorCS5sb25nCTQwMTE2NDMzNTUKKwkubG9uZwkxMDIxNzczMjk3CisJLmxvbmcJNDc3MDE3NjAwCisJLmxvbmcJMTA2OTAxNzMxNworCS5sb25nCTQwMzAzMDU1MzQKKwkubG9uZwkxMDIxMjkyMjUyCisJLmxvbmcJMjUzMzQwMzkwNAorCS5sb25nCTEwNjkwMzM3NzMKKwkubG9uZwkyNjQ1MTg3NTkxCisJLmxvbmcJMTAxOTUyNzA5OQorCS5sb25nCTI1NjMxMDIyMDgKKwkubG9uZwkxMDY5MDUwMjMxCisJLmxvbmcJMzg1NzI5Mzc5MgorCS5sb25nCTEwMjIzMTE2OTcKKwkubG9uZwk2MzU5ODIzMzYKKwkubG9uZwkxMDY5MDY2NjkxCisJLmxvbmcJMzYyNTkzNjYzNworCS5sb25nCTEwMTc1MTE3NDQKKwkubG9uZwkxMTE2OTQwODAwCisJLmxvbmcJMTA2OTA4MzE1MgorCS5sb25nCTM2NTM4NzI5OTMKKwkubG9uZwkxMDIyMDE2NjMxCisJLmxvbmcJNDA3NTk2NDE2MAorCS5sb25nCTEwNjkwOTk2MTQKKwkubG9uZwkyNDY4OTAwMjcxCisJLmxvbmcJMTAyMTc2OTUzMgorCS5sb25nCTk5MzE2NTU2OAorCS5sb25nCTEwNjkxMTYwNzkKKwkubG9uZwkxMzU4MTA0MjI0CisJLmxvbmcJMTAyMTE5OTc3NgorCS5sb25nCTUyODU4Njc1MgorCS5sb25nCTEwNjkxMzI1NDUKKwkubG9uZwkyMjAwOTUwMzMyCisJLmxvbmcJMTAyMjAyNDg3MgorCS5sb25nCTI3NTIzOTU3NzYKKwkubG9uZwkxMDY5MTQ5MDEyCisJLmxvbmcJMzE5NzA3MjQ1NAorCS5sb25nCTEwMTc3NTEzMTkKKwkubG9uZwkzNDM5ODU1NjE2CisJLmxvbmcJMTA2OTE2NTQ4MQorCS5sb25nCTE2NTEwODE4MDYKKwkubG9uZwkxMDIwODA5MzM4CisJLmxvbmcJMjY2MTI1NzcyOAorCS5sb25nCTEwNjkxODE5NTIKKwkubG9uZwk1MzkwMzI3NTIKKwkubG9uZwkxMDIxNzI4ODA1CisJLmxvbmcJNDg2OTU3MzEyCisJLmxvbmcJMTA2OTE5ODQyNQorCS5sb25nCTMxMzYwNDUxNDkKKwkubG9uZwkxMDE2ODg4NjcxCisJLmxvbmcJMTI4MjM0MDM1MgorCS5sb25nCTEwNjkyMTQ4OTkKKwkubG9uZwkyNTkzOTYzMjU5CisJLmxvbmcJMTAxODk1NjEwMworCS5sb25nCTgyMjkyMTcyOAorCS5sb25nCTEwNjkyMzEzNzUKKwkubG9uZwkyMTQ2MDMyNzM3CisJLmxvbmcJMTAyMjMwNjQ2NQorCS5sb25nCTM0NzQyMTYxOTIKKwkubG9uZwkxMDY5MjQ3ODUyCisJLmxvbmcJMzk3NjgxMTYyNQorCS5sb25nCTEwMjEzNTAyMDcKKwkubG9uZwk3MTY5MDI2NTYKKwkubG9uZwkxMDY5MjY0MzMyCisJLmxvbmcJNzE4MjY3MjIyCisJLmxvbmcJMTAxODYyNDcyNworCS5sb25nCTEyMTE1OTQ0OTYKKwkubG9uZwkxMDY5MjgwODEzCisJLmxvbmcJMTQ4NTY0MTM4OQorCS5sb25nCTEwMTg0NDc0NTEKKwkubG9uZwk3MzQwNzAyNzIKKwkubG9uZwkxMDY5Mjk3Mjk2CisJLmxvbmcJMzU0NDU1MTI4CisJLmxvbmcJMTAyMTM0MTI5MQorCS5sb25nCTM2NTAxMTA3MjAKKwkubG9uZwkxMDY5MzEzNzgwCisJLmxvbmcJNjgyMTg1OTQ3CisJLmxvbmcJMTAyMTY1MTg1MworCS5sb25nCTE0NDA2NjMwNDAKKwkubG9uZwkxMDY5MzMwMjY3CisJLmxvbmcJMzU1ODU3NDU1MAorCS5sb25nCTEwMjE2MTUxMTAKKwkubG9uZwkyNzY2NjEyMjI0CisJLmxvbmcJMTA2OTM0Njc1NQorCS5sb25nCTg3NDYwNzk3OAorCS5sb25nCTEwMTc3NDY4NzIKKwkubG9uZwkzNDA0MDExMDA4CisJLmxvbmcJMTA2OTM2MzI0NQorCS5sb25nCTQxNTQ5ODg1MDIKKwkubG9uZwkxMDIxNDM5OTA2CisJLmxvbmcJMzQyMzk0OTA1NgorCS5sb25nCTEwNjkzNzk3MzcKKwkubG9uZwkyMjYzMjAyMzA5CisJLmxvbmcJMTAyMTQ3OTYxNQorCS5sb25nCTI4OTc1ODc3MTIKKwkubG9uZwkxMDY5Mzk2MjMxCisJLmxvbmcJMjU2MjA2NTAzMQorCS5sb25nCTEwMjIwOTAzNjMKKwkubG9uZwkxODk2MTU5MjMyCisJLmxvbmcJMTA2OTQxMjcyNworCS5sb25nCTM4MzYyMzc2NjMKKwkubG9uZwkxMDE5ODY3Mjg4CisJLmxvbmcJNDkwOTY4NTc2CisJLmxvbmcJMTA2OTQyOTIyNQorCS5sb25nCTMzMjIwNTY3NDMKKwkubG9uZwkxMDA2NzUyNzYyCisJLmxvbmcJMzA0ODM2MDE5MgorCS5sb25nCTEwNjk0NDU3MjQKKwkubG9uZwkxMTUyMzE0ODMzCisJLmxvbmcJMTAxMzEyMjI1MgorCS5sb25nCTEwNDk4NTA2MjQKKwkubG9uZwkxMDY5NDYyMjI2CisJLmxvbmcJMzYwMTU5MDcyNworCS5sb25nCTEwMjIyMTQ2MTAKKwkubG9uZwkzMTU2ODk5NTg0CisJLmxvbmcJMTA2OTQ3ODcyOQorCS5sb25nCTE4NTUxNjk5NzAKKwkubG9uZwkxMDE5NDg3MjcxCisJLmxvbmcJODUxMTczMzc2CisJLmxvbmcJMTA2OTQ5NTIzNQorCS5sb25nCTMxMjY0OTU5NAorCS5sb25nCTEwMjA4Njg2MDQKKwkubG9uZwkyNzk0MjgxNzI4CisJLmxvbmcJMTA2OTUxMTc0MgorCS5sb25nCTEwOTM0OTAxODEKKwkubG9uZwkxMDIwNzc3NTc3CisJLmxvbmcJNDY4MDQyNDk2CisJLmxvbmcJMTA2OTUyODI1MgorCS5sb25nCTExNTI1NDA2NzkKKwkubG9uZwkxMDIxNDAzNzMyCisJLmxvbmcJMjUzNDIxOTI2NAorCS5sb25nCTEwNjk1NDQ3NjMKKwkubG9uZwkyMjkyMTI2MDM1CisJLmxvbmcJMTAyMTg3MjQzMAorCS5sb25nCTEzNzYxNDY0MzIKKwkubG9uZwkxMDY5NTU4NTI3CisJLmxvbmcJMzI5Mzc1MzY0MQorCS5sb25nCTEwMjA1MDA0NTQKKwkubG9uZwk0MTc1NDQyNDMyCisJLmxvbmcJMTA2OTU3NTA0NAorCS5sb25nCTM2MjYzNDc1NjQKKwkubG9uZwkxMDIxNjEwOTY5CisJLmxvbmcJMzUyMzExMzQ3MgorCS5sb25nCTEwNjk1OTE1NjYKKwkubG9uZwkzMzk5NTY1MDAKKwkubG9uZwkxMDIxMTE5MDM5CisJLmxvbmcJNDAwMzM1MDUyOAorCS5sb25nCTEwNjk2MDgwOTIKKwkubG9uZwkzNDI5MzMzMDgyCisJLmxvbmcJMTAyMjgxMzU0MgorCS5sb25nCTE2MTEwNjczOTIKKwkubG9uZwkxMDY5NjI0NjIzCisJLmxvbmcJMjI5ODAxNzU0NAorCS5sb25nCTEwMjE5Nzc1ODcKKwkubG9uZwk5MzE3ODIxNDQKKwkubG9uZwkxMDY5NjQxMTU4CisJLmxvbmcJMjE2NDY4NDc0MworCS5sb25nCTEwMjEyNTA5ODgKKwkubG9uZwkyMjU2NzI1NTA0CisJLmxvbmcJMTA2OTY1NzY5NworCS5sb25nCTExMzg3NjIzMzUKKwkubG9uZwkxMDIxNDQzNzc2CisJLmxvbmcJMTU4Mjg1MzEyMAorCS5sb25nCTEwNjk2NzQyNDEKKwkubG9uZwkxMDg0MDEwMzgyCisJLmxvbmcJMTAyMjk5NDY5MworCS5sb25nCTM0OTc3NTg3MjAKKwkubG9uZwkxMDY5NjkwNzg5CisJLmxvbmcJNDA2MzY2MjQ0CisJLmxvbmcJMTAyMjcxMzU4NgorCS5sb25nCTM5OTk4MTY5NjAKKwkubG9uZwkxMDY5NzA3MzQyCisJLmxvbmcJMTQ4ODcyMzA0MgorCS5sb25nCTEwMjMzODEyOTAKKwkubG9uZwkzMzgzMDk2MDY0CisJLmxvbmcJMTA2OTcyMzkwMAorCS5sb25nCTI1NDE1NTg5NTMKKwkubG9uZwkxMDE5MTM3ODg3CisJLmxvbmcJMTk0MjQwMzU4NAorCS5sb25nCTEwNjk3NDA0NjMKKwkubG9uZwkxODc5NjIwMzQzCisJLmxvbmcJMTAyMjY1MzY0MgorCS5sb25nCTQyNjgyNjM2ODAKKwkubG9uZwkxMDY5NzU3MDMwCisJLmxvbmcJMzAzOTA3NzA0NworCS5sb25nCTEwMjIyNTI1NDUKKwkubG9uZwkyMDY3MDYyMjcyCisJLmxvbmcJMTA2OTc3MzYwMworCS5sb25nCTQxOTA2NzA2NzcKKwkubG9uZwkxMDIwNzI1ODYzCisJLmxvbmcJNDIyNTgyODA5NgorCS5sb25nCTEwNjk3OTAxODAKKwkubG9uZwkxOTk4NTY3MzIxCisJLmxvbmcJMTAyMjAxNDM4NQorCS5sb25nCTI0NTI1MDcxMzYKKwkubG9uZwkxMDY5ODA2NzYzCisJLmxvbmcJMTUxMTYyODg3MworCS5sb25nCTEwMjE5MDAzMDAKKwkubG9uZwkxMzQwNzQ2MjQwCisJLmxvbmcJMTA2OTgyMzM1MQorCS5sb25nCTc4ODM2NzM0MQorCS5sb25nCTEwMjI3MjYyMDgKKwkubG9uZwkxMTkwMDM1NDU2CisJLmxvbmcJMTA2OTgzOTk0NAorCS5sb25nCTM4NTYzMzcyMzAKKwkubG9uZwkxMDIxODM0MTE4CisJLmxvbmcJMjMwMDY4ODM4NAorCS5sb25nCTEwNjk4NTY1NDIKKwkubG9uZwkzMjExMzk2NTc5CisJLmxvbmcJMTAyMjYyMTM2NQorCS5sb25nCTY3ODg4NjQwMAorCS5sb25nCTEwNjk4NzMxNDYKKwkubG9uZwk0MDAxMDExODg3CisJLmxvbmcJMTAyMjA0MjY0NgorCS5sb25nCTkyMTU5NDExMgorCS5sb25nCTEwNjk4ODk3NTUKKwkubG9uZwk1NTc4MTE5NjgKKwkubG9uZwkxMDIzMDY1NTMzCisJLmxvbmcJMzMzMTY2ODk5MgorCS5sb25nCTEwNjk5MDYzNjkKKwkubG9uZwkxODc3MDYwNjc5CisJLmxvbmcJMTAyMjQxOTc0MgorCS5sb25nCTM5MTc4NzUyMDAKKwkubG9uZwkxMDY5OTIyOTg5CisJLmxvbmcJMTE4MTA1NTE3MQorCS5sb25nCTEwMjI3NTI3MTIKKwkubG9uZwkyOTg0ODI5Njk2CisJLmxvbmcJMTA2OTkzOTYxNQorCS5sb25nCTQyOTQ1MjY5MzIKKwkubG9uZwkxMDIxNDk5OTg4CisJLmxvbmcJODM4MDQ5MDI0CisJLmxvbmcJMTA2OTk1NjI0NworCS5sb25nCTM2NTgwODE4NzgKKwkubG9uZwkxMDIyOTU3OTUyCisJLmxvbmcJMjA3ODkyODM4NAorCS5sb25nCTEwNjk5NzI4ODQKKwkubG9uZwk4MjAzNTM3MDEKKwkubG9uZwkxMDE5MzkxMTA3CisJLmxvbmcJMjcxOTg1NDMzNgorCS5sb25nCTEwNjk5ODk1MjcKKwkubG9uZwkxNjQ0MDIyNDg5CisJLmxvbmcJMTAyMzM3ODI0MAorCS5sb25nCTMwNjkxMTc2OTYKKwkubG9uZwkxMDcwMDA2MTc2CisJLmxvbmcJMjc3MTM5MzcwMgorCS5sb25nCTEwMTkzMTk5NTQKKwkubG9uZwkzNDM1OTYyMzY4CisJLmxvbmcJMTA3MDAyMjgzMQorCS5sb25nCTM4NzYzOTQxNDUKKwkubG9uZwkxMDIzMDI0NDMzCisJLmxvbmcJNDEzMDU5NTMyOAorCS5sb25nCTEwNzAwMzk0OTIKKwkubG9uZwkxNjMwNDQ3NzQ4CisJLmxvbmcJMTAyMTQ2NTg4MgorCS5sb25nCTExNjkyMzYyMjQKKwkubG9uZwkxMDcwMDU2MTYwCisJLmxvbmcJMjgyODM1NTk5NworCS5sb25nCTEwMjA0NTgxMjAKKwkubG9uZwkzNDUzOTk3MzEyCisJLmxvbmcJMTA3MDA3MjgzMworCS5sb25nCTE2NDA5MTY0MQorCS5sb25nCTEwMjAzODgyNzkKKwkubG9uZwkyNzA4MTI3NzQ0CisJLmxvbmcJMTA3MDA4OTUxMworCS5sb25nCTMwMzY1NTAyMjMKKwkubG9uZwkxMDIzMzI4Njg0CisJLmxvbmcJMzU0MDc5NzY5NgorCS5sb25nCTEwNzAxMDYxOTkKKwkubG9uZwkzNzEwOTQ5NDYzCisJLmxvbmcJMTAyMjU2ODgwNQorCS5sb25nCTE5NzIyNzY3MzYKKwkubG9uZwkxMDcwMTIyODkyCisJLmxvbmcJMzg4NTI3Nzk1MAorCS5sb25nCTEwMTk3NjE2NzQKKwkubG9uZwkyNjEzODE1NTUyCisJLmxvbmcJMTA3MDEzOTU5MQorCS5sb25nCTI3NjQxNjUwNzcKKwkubG9uZwkxMDIyOTIxMDIzCisJLmxvbmcJMTQ4Nzc5MTYxNgorCS5sb25nCTEwNzAxNTYyOTcKKwkubG9uZwkxMzMwNjQ0NzY5CisJLmxvbmcJMTAyMzE2MjY3OQorCS5sb25nCTMyMDc1OTM0NzIKKwkubG9uZwkxMDcwMTczMDA5CisJLmxvbmcJMzkxMTAwNzIyMQorCS5sb25nCTEwMjI5OTM0OTYKKwkubG9uZwkzNzk3NzY0NjA4CisJLmxvbmcJMTA3MDE4OTcyOAorCS5sb25nCTk3OTcxMjU5OAorCS5sb25nCTEwMjI1NTQ1ODAKKwkubG9uZwkzNTc4OTIwNDQ4CisJLmxvbmcJMTA3MDIwNjQ1NAorCS5sb25nCTI4MjU3MzgyMjMKKwkubG9uZwkxMDIwMjIzNzA4CisJLmxvbmcJMjg3Mjc5NTY0OAorCS5sb25nCTEwNzAyMjMxODcKKwkubG9uZwkzOTI0NTExMjQKKwkubG9uZwkxMDIyNjY2Mjc5CisJLmxvbmcJMjAwMjI1ODQzMgorCS5sb25nCTEwNzAyMzk5MjcKKwkubG9uZwkzNzMwNDA3NjMyCisJLmxvbmcJMTAyMzE0ODI5MQorCS5sb25nCTEyOTEzMjY0NjQKKwkubG9uZwkxMDcwMjU2Njc0CisJLmxvbmcJMzcyMzgwMjk4MAorCS5sb25nCTEwMjI1MTQwODkKKwkubG9uZwkxMDY1MTgwOTI4CisJLmxvbmcJMTA3MDI3MzQyOAorCS5sb25nCTI2MzU2MTc0NjMKKwkubG9uZwkxMDIyNjU0NDcwCisJLmxvbmcJMTY1MDE4MTYzMgorCS5sb25nCTEwNzAyOTAxODkKKwkubG9uZwkyMDYxOTgyODgzCisJLmxvbmcJMTAyMjg1MzQxMQorCS5sb25nCTMzNzM4ODI4ODAKKwkubG9uZwkxMDcwMzA2OTU3CisJLmxvbmcJMzE5NzMyNzg1CisJLmxvbmcJMTAyMjAxNzE3NQorCS5sb25nCTIyNzAwODEyODAKKwkubG9uZwkxMDcwMzIzNzMzCisJLmxvbmcJMjIzNzc1NzQxMQorCS5sb25nCTEwMjMwNjQwODcKKwkubG9uZwkyOTYzNzMyNzM2CisJLmxvbmcJMTA3MDM0MDUxNgorCS5sb25nCTQ2ODgzOTE2NQorCS5sb25nCTEwMjMyOTM3NzQKKwkubG9uZwkxNDkxMDk5OTA0CisJLmxvbmcJMTA3MDM1NzMwNworCS5sb25nCTE1MDI2NTc5NDYKKwkubG9uZwkxMDIxNTMzNDc5CisJLmxvbmcJMjQ3OTYzNjQ4MAorCS5sb25nCTEwNzAzNzQxMDUKKwkubG9uZwk0ODI5MTM1NjIKKwkubG9uZwkxMDIxOTg2Mjg2CisJLmxvbmcJMTk2ODEzMzYzMgorCS5sb25nCTEwNzAzOTA5MTEKKwkubG9uZwkzMjgxNDc0MzM3CisJLmxvbmcJMTAyMjY0NjQwMAorCS5sb25nCTI5MTYzOTA0MAorCS5sb25nCTEwNzA0MDc3MjUKKwkubG9uZwkyNDUzMzIwMjU5CisJLmxvbmcJMTAyMjgxMjQyMworCS5sb25nCTIwODE0NzI1MTIKKwkubG9uZwkxMDcwNDI0NTQ2CisJLmxvbmcJMjkzOTk4OTU3MAorCS5sb25nCTEwMjMwOTE4ODgKKwkubG9uZwkzMzgwMzQwNDgwCisJLmxvbmcJMTA3MDQ0MTM3NQorCS5sb25nCTI4NTA3MDc0OTkKKwkubG9uZwkxMDIxOTIxMTA5CisJLmxvbmcJMjMyMjg3NDg4CisJLmxvbmcJMTA3MDQ1ODIxMworCS5sb25nCTM2NzQ2MjUzNDIKKwkubG9uZwkxMDIwNzI1MTMwCisJLmxvbmcJMTU2NzYxNDIwOAorCS5sb25nCTEwNzA0NzUwNTgKKwkubG9uZwk5MzQ3MzM0CisJLmxvbmcJMTAyMjAyNDAwOQorCS5sb25nCTM0MzMwOTEwNzIKKwkubG9uZwkxMDcwNDkxOTExCisJLmxvbmcJMjgyNTI0OTk5CisJLmxvbmcJMTAyMTQzMzUyMworCS5sb25nCTE4NzY4NzczMTIKKwkubG9uZwkxMDcwNTA4NzczCisJLmxvbmcJMzQ3MDQ0OTQ0MAorCS5sb25nCTEwMTkzMDk3MjEKKwkubG9uZwkxNTM4NDcyMTkyCisJLmxvbmcJMTA3MDUyNTY0MworCS5sb25nCTIwODk0ODY4MjUKKwkubG9uZwkxMDE5Njk4OTE2CisJLmxvbmcJMjc2MzgzMDc4NAorCS5sb25nCTEwNzA1NDI1MjEKKwkubG9uZwk0NDM0OTgxMTUKKwkubG9uZwkxMDIwNTA1MTk0CisJLmxvbmcJMTYwNTM4MTYzMgorCS5sb25nCTEwNzA1NTk0MDgKKwkubG9uZwkzMDE4ODcxNjAxCisJLmxvbmcJMTAyMjg2OTkxMworCS5sb25nCTI3MDY5NDYwNDgKKwkubG9uZwkxMDcwNTc2MzAzCisJLmxvbmcJMzkzNjI2MDg5MgorCS5sb25nCTEwMjMxNzU4NzUKKwkubG9uZwkyMTIzODg3MzYwCisJLmxvbmcJMTA3MDU5MzIwNworCS5sb25nCTI5OTQyMjA2NTUKKwkubG9uZwkxMDIyODI1OTQ4CisJLmxvbmcJMTA0MDE1MTA0CisJLmxvbmcJMTA3MDYwMzEwOAorCS5sb25nCTMzNTA1NDQ5MworCS5sb25nCTEwMjM0NDE4NTMKKwkubG9uZwkyOTA0NTY4ODMyCisJLmxvbmcJMTA3MDYxNTgwMAorCS5sb25nCTE0NTEyMTU2MzMKKwkubG9uZwkxMDIzODUzODU3CisJLmxvbmcJMzQ1NjE5NzEyMAorCS5sb25nCTEwNzA2MzI3MzkKKwkubG9uZwk0MzYzMzQ3MzMKKwkubG9uZwkxMDI0MDI2NDMyCisJLmxvbmcJMjUyNDUyMzUyCisJLmxvbmcJMTA3MDY0OTY5NworCS5sb25nCTM0NTk2MTY3CisJLmxvbmcJMTAyNDAzMTM5NgorCS5sb25nCTMzMjgwMTg0MzIKKwkubG9uZwkxMDcwNjY2NjcyCisJLmxvbmcJMjY0NDU0NzA3MworCS5sb25nCTEwMjQyOTY3NTgKKwkubG9uZwkxMjU1ODI5MjQ4CisJLmxvbmcJMTA3MDY4MzY2NworCS5sb25nCTU1MjgzMjU4NgorCS5sb25nCTEwMjM3NjMxMjIKKwkubG9uZwk0MDk3MDU4NTYwCisJLmxvbmcJMTA3MDcwMDY4MAorCS5sb25nCTE5NTU2NDA2MjMKKwkubG9uZwkxMDIxMzk0NjU0CisJLmxvbmcJNDUxNzcwMTEyCisJLmxvbmcJMTA3MDcxNzcxNAorCS5sb25nCTM0Mjg5MDM3NzcKKwkubG9uZwkxMDIyOTQxMTQyCisJLmxvbmcJNDA4OTIwODMyCisJLmxvbmcJMTA3MDczNDc2NworCS5sb25nCTE2NTUwMzI2MworCS5sb25nCTEwMjM4OTQ5NTgKKwkubG9uZwkxMTg2OTYwNjQwCisJLmxvbmcJMTA3MDc1MTg0MAorCS5sb25nCTQzNTgyNjQ1MAorCS5sb25nCTEwMjQwMjYxMzQKKwkubG9uZwkxOTA3ODY1NgorCS5sb25nCTEwNzA3Njg5MzQKKwkubG9uZwkxODM0MTY5NzQ5CisJLmxvbmcJMTAyMjg5OTI4NAorCS5sb25nCTI3NDM0OTAzMDQKKwkubG9uZwkxMDcwNzg2MDQ4CisJLmxvbmcJNDk0NTgxMDc0CisJLmxvbmcJMTAxODgxODQ3OQorCS5sb25nCTIzMjg5NjEwMjQKKwkubG9uZwkxMDcwODAzMTg0CisJLmxvbmcJMjk4NzkwODgzNAorCS5sb25nCTEwMjI1ODExMTAKKwkubG9uZwkzNTAwMTEzOTIKKwkubG9uZwkxMDcwODIwMzQyCisJLmxvbmcJMjQwNzcxMTg0CisJLmxvbmcJMTAyNDE0MzA4MworCS5sb25nCTI2OTIzMjY5MTIKKwkubG9uZwkxMDcwODM3NTIxCisJLmxvbmcJNjY2MDU2ODM3CisJLmxvbmcJMTAyMjM5NDc3NgorCS5sb25nCTIzNzMyNzQzNjgKKwkubG9uZwkxMDcwODU0NzIzCisJLmxvbmcJMjQ4NDMzNzc3MAorCS5sb25nCTEwMjQyMjgxNTYKKwkubG9uZwkxMDE3MTMxNTIwCisJLmxvbmcJMTA3MDg3MTk0OAorCS5sb25nCTMyODU2NDgyNzkKKwkubG9uZwkxMDI0MDI1Nzg5CisJLmxvbmcJMjY1NTU4MjcyCisJLmxvbmcJMTA3MDg4OTE5NgorCS5sb25nCTM5MjI0MTg5NgorCS5sb25nCTEwMjQyNTI4MDkKKwkubG9uZwkxNzc4MDA4MDY0CisJLmxvbmcJMTA3MDkwNjQ2NworCS5sb25nCTE1MzYxMDc5NDMKKwkubG9uZwkxMDIzOTQ5MzAwCisJLmxvbmcJMjkzNzE4NDc2OAorCS5sb25nCTEwNzA5MjM3NjIKKwkubG9uZwkzNTQxMDYyMjUxCisJLmxvbmcJMTAxOTQ0ODY0NgorCS5sb25nCTExNDQ0NDI4ODAKKwkubG9uZwkxMDcwOTQxMDgyCisJLmxvbmcJMzY5MTY4Mzc4MQorCS5sb25nCTEwMjIxMjM5NDgKKwkubG9uZwkyNDEwMTY1NTA0CisJLmxvbmcJMTA3MDk1ODQyNgorCS5sb25nCTE4MDQxODE5NjAKKwkubG9uZwkxMDIzOTQ1MjIxCisJLmxvbmcJNDE3NDM1MDg0OAorCS5sb25nCTEwNzA5NzU3OTUKKwkubG9uZwkyMDE2MDk0ODYxCisJLmxvbmcJMTAyMTcxNjU4NQorCS5sb25nCTM4OTcwMTI0ODAKKwkubG9uZwkxMDcwOTkzMTkwCisJLmxvbmcJMTc1Mjk0NDEwCisJLmxvbmcJMTAyMzcwMzQwNAorCS5sb25nCTMzNTM2MjMwNDAKKwkubG9uZwkxMDcxMDEwNjExCisJLmxvbmcJMTY3OTczMjQyCisJLmxvbmcJMTAyMzI0MDgzOQorCS5sb25nCTQ1NjcxMTY4CisJLmxvbmcJMTA3MTAyODA1OQorCS5sb25nCTIxNjY4NTYxMTMKKwkubG9uZwkxMDIxNTY1NDEzCisJLmxvbmcJODYwNjM4NzIKKwkubG9uZwkxMDcxMDQ1NTMzCisJLmxvbmcJMjY3NjI1NDcyNworCS5sb25nCTEwMjM5ODUyOTkKKwkubG9uZwkxMDE5NzcyNjcyCisJLmxvbmcJMTA3MTA2MzAzNAorCS5sb25nCTk4OTA0MzU5MworCS5sb25nCTEwMjE1NDk1ODcKKwkubG9uZwk0MTQyOTczNDQKKwkubG9uZwkxMDcxMDgwNTYzCisJLmxvbmcJMzk2MDk3MjA0NgorCS5sb25nCTEwMjQzMDcyNTEKKwkubG9uZwkxNTUxNzMxMjAKKwkubG9uZwkxMDcxMDk4MTIwCisJLmxvbmcJMTgzMDkxOTI5MQorCS5sb25nCTEwMjE1OTIyNTEKKwkubG9uZwkyMTUxNTYyMjQwCisJLmxvbmcJMTA3MTExNTcwNQorCS5sb25nCTQwNTQwODY2NgorCS5sb25nCTEwMjM0MjMxMjgKKwkubG9uZwk0MDQxODU0NzIwCisJLmxvbmcJMTA3MTEzMzMxOQorCS5sb25nCTIwNDM0OTc4MjcKKwkubG9uZwkxMDI0NDExNTAzCisJLmxvbmcJMzQ4OTIyNDE5MgorCS5sb25nCTEwNzExNTA5NjMKKwkubG9uZwkzMDcyMjE1ODY0CisJLmxvbmcJMTAyMjY5ODYzNQorCS5sb25nCTI0NzcxOTYyODgKKwkubG9uZwkxMDcxMTY4NjM3CisJLmxvbmcJMTgxMjE5NTEzOQorCS5sb25nCTEwMjI2ODkxOTIKKwkubG9uZwkzMDE1Mjk4ODE2CisJLmxvbmcJMTA3MTE4NjM0MQorCS5sb25nCTc2NDg0MTk2OQorCS5sb25nCTEwMjEwMjczMzEKKwkubG9uZwkyODQ0NzMxMTM2CisJLmxvbmcJMTA3MTIwNDA3NgorCS5sb25nCTI4NzgxMTczMjEKKwkubG9uZwkxMDE5MTE2NTEzCisJLmxvbmcJNDAyODk1MDUyOAorCS5sb25nCTEwNzEyMjE4NDIKKwkubG9uZwk2OTg5MTE0NTIKKwkubG9uZwkxMDIzMjY1NjAyCisJLmxvbmcJNjk0NDE1MzYKKwkubG9uZwkxMDcxMjM5NjQxCisJLmxvbmcJMzI1MzQ2Nzg0NworCS5sb25nCTEwMjA3OTUwNzUKKwkubG9uZwkxNjc2MjA5OTIwCisJLmxvbmcJMTA3MTI1NzQ3MQorCS5sb25nCTQyNzI0MzExNjcKKwkubG9uZwkxMDIyODczOTgyCisJLmxvbmcJMjQwODc1MjM4NAorCS5sb25nCTEwNzEyNzUzMzQKKwkubG9uZwk2NDg1MTkxMDAKKwkubG9uZwkxMDI0Mzg1NzE3CisJLmxvbmcJMTUxNjIzNjgwCisJLmxvbmcJMTA3MTI5MzIzMQorCS5sb25nCTM0NTI1NzAxNworCS5sb25nCTEwMTk1NjE0MDgKKwkubG9uZwkxNDEwMTU0MjQwCisJLmxvbmcJMTA3MTMxMTE2MQorCS5sb25nCTE5Nzg2Mzk5MworCS5sb25nCTEwMjMyMjQyMDcKKwkubG9uZwk0MTMxMzUxNTUyCisJLmxvbmcJMTA3MTMyOTEyNQorCS5sb25nCTI2MjA4MDE3ODkKKwkubG9uZwkxMDI0NDExMTY5CisJLmxvbmcJMTk5OTY2NDM4NAorCS5sb25nCTEwNzEzNDcxMjUKKwkubG9uZwkzOTUyNjkyNjE2CisJLmxvbmcJMTAyNDE2ODA4NgorCS5sb25nCTE2MTc2Njg4NjQKKwkubG9uZwkxMDcxMzY1MTYwCisJLmxvbmcJMzAxOTg4OTgwOQorCS5sb25nCTEwMjE5MDc2OTIKKwkubG9uZwkxMDMyMDc0MjQwCisJLmxvbmcJMTA3MTM4MzIzMQorCS5sb25nCTU5NDY5ODk5CisJLmxvbmcJMTAyMzY1NjE5NAorCS5sb25nCTI2MTk0OTIwOTYKKwkubG9uZwkxMDcxNDAxMzM4CisJLmxvbmcJMTQxNzUyNjgyMAorCS5sb25nCTEwMjE0NTc3ODMKKwkubG9uZwkyMDI0Mjk0NDAKKwkubG9uZwkxMDcxNDE5NDgzCisJLmxvbmcJMjkyNzY2NzkzNQorCS5sb25nCTEwMTkxNzU0NDcKKwkubG9uZwk1MjUwNDQyMjQKKwkubG9uZwkxMDcxNDM3NjY1CisJLmxvbmcJMzgxNjY4MTEKKwkubG9uZwkxMDIzOTgxODc5CisJLmxvbmcJMTc3OTI1ODg4MAorCS5sb25nCTEwNzE0NTU4ODUKKwkubG9uZwk0ODEyNTI1MDAKKwkubG9uZwkxMDIzMzEwMjM0CisJLmxvbmcJMjE5NTY3MzYwMAorCS5sb25nCTEwNzE0NzQxNDQKKwkubG9uZwkzOTYyMzk1OTgxCisJLmxvbmcJMTAyMTMzOTA4OAorCS5sb25nCTQ0NTczNjk2CisJLmxvbmcJMTA3MTQ5MjQ0MworCS5sb25nCTM5MzYyODEzOTUKKwkubG9uZwkxMDIzMDE0ODI5CisJLmxvbmcJMjIyNjkwNTM0NAorCS5sb25nCTEwNzE1MTA3ODEKKwkubG9uZwkxNTE1MzIwNDc2CisJLmxvbmcJMTAyNDMyMDYyMworCS5sb25nCTI4MDA1MTI1MTIKKwkubG9uZwkxMDcxNTI5MTYwCisJLmxvbmcJMTIyNTQwMzY5NworCS5sb25nCTEwMjEwODE4NDYKKwkubG9uZwkxNjExMTM2MDAKKwkubG9uZwkxMDcxNTQ3NTgxCisJLmxvbmcJMzA2NDgwOTczMworCS5sb25nCTEwMjQxNzM5MTcKKwkubG9uZwkxMzM4NDEwMjQwCisJLmxvbmcJMTA3MTU2NjA0MworCS5sb25nCTIwMjc2MDQ5NzMKKwkubG9uZwkxMDI0MzYyNTI2CisJLmxvbmcJNTIyNDMzMjgwCisJLmxvbmcJMTA3MTU4NDU0OAorCS5sb25nCTIwNTUxNzE3MjMKKwkubG9uZwkxMDIzODU4ODI1CisJLmxvbmcJNTM5NTk1Nzc2CisJLmxvbmcJMTA3MTYwMzA5NgorCS5sb25nCTM4Njg4MjAxMzUKKwkubG9uZwkxMDIyOTM2NDI0CisJLmxvbmcJNDI2NDAxNzY2NAorCS5sb25nCTEwNzE2MjE2ODcKKwkubG9uZwkzMjI4MDY1MTQ1CisJLmxvbmcJMTAyMzQ3OTU3OAorCS5sb25nCTE3MzM5MjQwOTYKKwkubG9uZwkxMDcxNjQwMzI0CisJLmxvbmcJMzUxMTkzNDQ3NQorCS5sb25nCTEwMjI0OTYzNTUKKwkubG9uZwkxMDg4ODAzODQKKwkubG9uZwkxMDcxNjUxODM5CisJLmxvbmcJNjE1ODgwOTY3CisJLmxvbmcJMTAyMzUxOTcwNgorCS5sb25nCTM1MTc4NTY1MTIKKwkubG9uZwkxMDcxNjYxMjAyCisJLmxvbmcJMzExMzEwODU1OQorCS5sb25nCTEwMjUxOTAyODkKKwkubG9uZwk0MDQzMTUzMTUyCisJLmxvbmcJMTA3MTY3MDU4OQorCS5sb25nCTE1NzE4MzYyMTgKKwkubG9uZwkxMDIzMTA2MTE2CisJLmxvbmcJMzI1MTI5OTA3MgorCS5sb25nCTEwNzE2ODAwMDAKKwkubG9uZwkzNDQ0MDc2MTAyCisJLmxvbmcJMTAyMjE4Nzg0MQorCS5sb25nCTI3MzY5MjE2MDAKKwkubG9uZwkxMDcxNjg5NDM1CisJLmxvbmcJMjcyNzcxNDgzCisJLmxvbmcJMTAyNTA5NTI4MAorCS5sb25nCTM4OTc2OTg1NjAKKwkubG9uZwkxMDcxNzAzNjMzCisJLmxvbmcJMjA3NTM5MDE4OAorCS5sb25nCTEwMjI0ODkwMjIKKwkubG9uZwkzMjA5NDg1MDU2CisJLmxvbmcJMTA3MTcyMjY1MgorCS5sb25nCTE0MzgwOTQwNjUKKwkubG9uZwkxMDIxODQ0OTQ0CisJLmxvbmcJMzc4MTQzMjA2NAorCS5sb25nCTEwNzE3NDE3NzQKKwkubG9uZwkxNjc1MDE3MTQ1CisJLmxvbmcJMTAyNDE0MzgyOAorCS5sb25nCTI2ODQxODQwNjQKKwkubG9uZwkxMDcxNzYxMDAzCisJLmxvbmcJMjI1OTk2Mzc1MworCS5sb25nCTEwMjQ3MzEzOTMKKwkubG9uZwkxODQwNDg5NzI4CisJLmxvbmcJMTA3MTc4MDM0MgorCS5sb25nCTMzNzI4ODM1OTcKKwkubG9uZwkxMDIzNDMxNDA4CisJLmxvbmcJMzc2NDA4NzgwOAorCS5sb25nCTEwNzE3OTk3OTQKKwkubG9uZwkzMzA3NTIzMTAyCisJLmxvbmcJMTAyNDQ4NTc4OAorCS5sb25nCTMwMDYyMzIzMjAKKwkubG9uZwkxMDcxODE5MzY0CisJLmxvbmcJMzA4ODk3MTk2NgorCS5sb25nCTEwMjUyMTMyNTEKKwkubG9uZwkzMzc0ODgxMjgwCisJLmxvbmcJMTA3MTgzOTA1NQorCS5sb25nCTgzNDQzNzc0OQorCS5sb25nCTEwMjUyMzY0NTIKKwkubG9uZwk3OTcyODQ4NjQKKwkubG9uZwkxMDcxODU4ODcyCisJLmxvbmcJMzEyMjY2Mzk0MQorCS5sb25nCTEwMjUzMjA0NzMKKwkubG9uZwk1NDU3NjUxMjAKKwkubG9uZwkxMDcxODc4ODE4CisJLmxvbmcJODI2NTM5NjI1CisJLmxvbmcJMTAyMjQ1MDk1NQorCS5sb25nCTEwNzU2MjI0MAorCS5sb25nCTEwNzE4OTg4OTgKKwkubG9uZwkzMzk1ODQ2MDAKKwkubG9uZwkxMDIyNDgxMjU1CisJLmxvbmcJMjEyMzY0OTAyNAorCS5sb25nCTEwNzE5MTkxMTYKKwkubG9uZwkzOTEyOTU5ODMzCisJLmxvbmcJMTAyNDMyMTAwOQorCS5sb25nCTE1NjIzODU2NjQKKwkubG9uZwkxMDcxOTM5NDc4CisJLmxvbmcJMjg0NjA2NzIzMAorCS5sb25nCTEwMjMzNDM5ODEKKwkubG9uZwkyOTYzMDg1ODI0CisJLmxvbmcJMTA3MTk1OTk4OAorCS5sb25nCTk1NDU0ODYyNworCS5sb25nCTEwMjE0NzUyMTEKKwkubG9uZwkzMzI1NTUwNTkyCisJLmxvbmcJMTA3MTk4MDY1MgorCS5sb25nCTM0NTk2NTExNTUKKwkubG9uZwkxMDI1MzA1NTczCisJLmxvbmcJNzc1NzUyNDQ4CisJLmxvbmcJMTA3MjAwMTQ3NgorCS5sb25nCTM1ODI3NDY2NjcKKwkubG9uZwkxMDIzODU5NDYwCisJLmxvbmcJMzIzODU5MDcyMAorCS5sb25nCTEwNzIwMjI0NjQKKwkubG9uZwk2MzQ2MzYxNjIKKwkubG9uZwkxMDI0NDcyMzUzCisJLmxvbmcJMjc1ODgwMTkyMAorCS5sb25nCTEwNzIwNDM2MjQKKwkubG9uZwkzMDc4MjE2MzE5CisJLmxvbmcJMTAyNTMwNDUxNgorCS5sb25nCTEzNzAzMTkxMDQKKwkubG9uZwkxMDcyMDY0OTYyCisJLmxvbmcJMjU3MDU2OTA3OAorCS5sb25nCTEwMjUwOTk0NDIKKwkubG9uZwkyNjE1ODA1MTg0CisJLmxvbmcJMTA3MjA4NjQ4NAorCS5sb25nCTM3Mjk5MzM0MTIKKwkubG9uZwkxMDI0NjA1MTEyCisJLmxvbmcJMzA3NzMzNjU3NgorCS5sb25nCTEwNzIxMDgxOTgKKwkubG9uZwkxOTQ4OTE2MDY2CisJLmxvbmcJMTAyNDc4MTYwMworCS5sb25nCTEwOTk1MjgxOTIKKwkubG9uZwkxMDcyMTMwMTEyCisJLmxvbmcJMzEzOTE0MzE1NworCS5sb25nCTEwMjM3MjkzNjAKKwkubG9uZwkxMjMxOTAzMjMyCisJLmxvbmcJMTA3MjE1MjIzMworCS5sb25nCTEzNDk1MTM0NzcKKwkubG9uZwkxMDI0NzM3NTE1CisJLmxvbmcJMTUwNzUwNDEyOAorCS5sb25nCTEwNzIxNzQ1NzAKKwkubG9uZwkzNDg0NTE2MzIyCisJLmxvbmcJMTAyNDAwMDk1OQorCS5sb25nCTIyMTQ2NTk4NDAKKwkubG9uZwkxMDcyMTk3MTMyCisJLmxvbmcJMjU2MzgyMDkxNworCS5sb25nCTEwMjUyMjU1MzUKKwkubG9uZwkxODA0NzM5ODQwCisJLmxvbmcJMTA3MjIxOTkyOQorCS5sb25nCTc2MDAzODc0NgorCS5sb25nCTEwMjQ0ODI4NTUKKwkubG9uZwkxNDEzNzQ2Njg4CisJLmxvbmcJMTA3MjI0Mjk3MQorCS5sb25nCTM0MDE3MzQ3MTQKKwkubG9uZwkxMDI1MTI5ODM4CisJLmxvbmcJODIxNDA5NTM2CisJLmxvbmcJMTA3MjI2NjI2OQorCS5sb25nCTM3Mjk3NzI1NTEKKwkubG9uZwkxMDI1NDg0Nzk2CisJLmxvbmcJMzAzMTgyNTY2NAorCS5sb25nCTEwNzIyODk4MzQKKwkubG9uZwkxMjIyNTY3NDkKKwkubG9uZwkxMDI0NzUyNTk0CisJLmxvbmcJMTcxMDc4NDI1NgorCS5sb25nCTEwNzIzMTM2ODAKKwkubG9uZwkxNTE4MjA1NDgzCisJLmxvbmcJMTAyNDcyNDgwOQorCS5sb25nCTMwMjUyNjUxNTIKKwkubG9uZwkxMDcyMzM3ODE5CisJLmxvbmcJNDA5OTUxOTg5CisJLmxvbmcJMTAyMjgzNTU1NQorCS5sb25nCTI4Nzc2OTA4OAorCS5sb25nCTEwNzIzNjIyNjcKKwkubG9uZwk4MDAzNTU1OTQKKwkubG9uZwkxMDIyNDg0ODUwCisJLmxvbmcJMTk4MTc5ODQwCisJLmxvbmcJMTA3MjM4NzAzOAorCS5sb25nCTM1MDI5MjYyMTMKKwkubG9uZwkxMDI0MjA5MzczCisJLmxvbmcJMTkwOTEzMDQ5NgorCS5sb25nCTEwNzI0MTIxNDkKKwkubG9uZwkzMDY0Njk0MzE5CisJLmxvbmcJMTAyNTM4MDgyMworCS5sb25nCTE5NDE3MzIwOTYKKwkubG9uZwkxMDcyNDM3NjE5CisJLmxvbmcJNDExMjkzMDM5MAorCS5sb25nCTEwMjQyOTQ2NzkKKwkubG9uZwkzNDkyMDEwNDk2CisJLmxvbmcJMTA3MjQ2MzQ2NworCS5sb25nCTI2ODQ5MTgxMDcKKwkubG9uZwkxMDIzMjIwMjMzCisJLmxvbmcJODE5NTk2ODAKKwkubG9uZwkxMDcyNDg5NzE2CisJLmxvbmcJMjIwMDIxMzY2CisJLmxvbmcJMTAyMDYzNTEzMQorCS5sb25nCTIyOTc4MzcwNTYKKwkubG9uZwkxMDcyNTE2Mzg3CisJLmxvbmcJNDAyNzY4MzgyNgorCS5sb25nCTEwMjEwNDExODUKKwkubG9uZwkyNzA0MDQwOTYKKwkubG9uZwkxMDcyNTQzNTA4CisJLmxvbmcJMjAxMjc2NjA2NQorCS5sb25nCTEwMjE3ODA3NTMKKwkubG9uZwkzNjY3Mzc2ODk2CisJLmxvbmcJMTA3MjU3MTEwNQorCS5sb25nCTI3Mjc5ODE1MjIKKwkubG9uZwkxMDIzMDA5ODc0CisJLmxvbmcJMzMwNDAwMjU2CisJLmxvbmcJMTA3MjU5OTIxMgorCS5sb25nCTI5NDAwMTcwMDMKKwkubG9uZwkxMDI1MzkzNDM5CisJLmxvbmcJMTExOTI5Mzk1MgorCS5sb25nCTEwNzI2Mjc4NjEKKwkubG9uZwkxNjA4NTUwNDE2CisJLmxvbmcJMTAyMjY3NTYxMgorCS5sb25nCTM1MzYxNTU5MDQKKwkubG9uZwkxMDcyNjU3MDkxCisJLmxvbmcJMzQ5NjY1Nzc4CisJLmxvbmcJMTAyNTE1Njc1MQorCS5sb25nCTMwNzgwNDY3MjAKKwkubG9uZwkxMDcyNjg2OTQ2CisJLmxvbmcJMjAxNjE1OTk5NgorCS5sb25nCTEwMjIxOTMxNjkKKwkubG9uZwk0NTUyMjg0MTYKKwkubG9uZwkxMDcyNzA1MzYxCisJLmxvbmcJMTkwODUzOTMyOAorCS5sb25nCTEwMjYxMjYzMzIKKwkubG9uZwkxODcxNTA1NjY0CisJLmxvbmcJMTA3MjcyMDk4OAorCS5sb25nCTI3ODQ3MDA4OTQKKwkubG9uZwkxMDI1OTIyMjc3CisJLmxvbmcJMTYzMDk5NDQzMgorCS5sb25nCTEwNzI3MzcwMTAKKwkubG9uZwkzNjExMDc2NzgKKwkubG9uZwkxMDIyODg3MjQ0CisJLmxvbmcJMjA4NDU1ODMzNgorCS5sb25nCTEwNzI3NTM0NjIKKwkubG9uZwkyNjQyNzg0NTA5CisJLmxvbmcJMTA3MjY4OTA4MworCS5sb25nCTE1MTQ0NDI1MzEKKwkubG9uZwkxMDcyNjg4OTUzCisJLmxvbmcJMzMzMTA4OTMzCisJLmxvbmcJMTA3MjY4ODgyMQorCS5sb25nCTMzOTIxMTIwMjQKKwkubG9uZwkxMDcyNjg4Njg2CisJLmxvbmcJMjA5OTg1Mjg2MgorCS5sb25nCTEwNzI2ODg1NTAKKwkubG9uZwk3NDk2MDkwMDQKKwkubG9uZwkxMDcyNjg4NDEyCisJLmxvbmcJMzYzNDYzMjU5NgorCS5sb25nCTEwNzI2ODgyNzEKKwkubG9uZwkyMTYzMjQ4NDYxCisJLmxvbmcJMTA3MjY4ODEyOQorCS5sb25nCTYyODY1Nzg0NgorCS5sb25nCTEwNzI2ODc5ODUKKwkubG9uZwkzMzI0MDM2NTExCisJLmxvbmcJMTA3MjY4NzgzOAorCS5sb25nCTE2NTc2MzI4MTUKKwkubG9uZwkxMDcyNjg3NjkwCisJLmxvbmcJNDIxNzUzODc2MAorCS5sb25nCTEwNzI2ODc1MzkKKwkubG9uZwkyNDExOTUxNTk3CisJLmxvbmcJMTA3MjY4NzM4NworCS5sb25nCTUzMzk0NDg3MgorCS5sb25nCTEwNzI2ODcyMzMKKwkubG9uZwkyODc2NTY2NTA4CisJLmxvbmcJMTA3MjY4NzA3NgorCS5sb25nCTg0NzkzNjg5MQorCS5sb25nCTEwNzI2ODY5MTgKKwkubG9uZwkzMDM2MDE5OTEzCisJLmxvbmcJMTA3MjY4Njc1NworCS5sb25nCTg0ODg4NDU3NQorCS5sb25nCTEwNzI2ODY1OTUKKwkubG9uZwkyODc0NDQzMzI2CisJLmxvbmcJMTA3MjY4NjQzMAorCS5sb25nCTUyMDcxMzY2NgorCS5sb25nCTEwNzI2ODYyNjQKKwkubG9uZwkyMzc1NTU2NDgxCisJLmxvbmcJMTA3MjY4NjA5NQorCS5sb25nCTQxNDE5MDQ5NDgKKwkubG9uZwkxMDcyNjg1OTI0CisJLmxvbmcJMTUyMjY2NjM4MgorCS5sb25nCTEwNzI2ODU3NTIKKwkubG9uZwkzMTA1NjI0MTA0CisJLmxvbmcJMTA3MjY4NTU3NworCS5sb25nCTI5ODY2NjMyNworCS5sb25nCTEwNzI2ODU0MDEKKwkubG9uZwkxNjg5NTI0NTAwCisJLmxvbmcJMTA3MjY4NTIyMgorCS5sb25nCTI5ODEwMDIyMDAKKwkubG9uZwkxMDcyNjg1MDQxCisJLmxvbmcJNDE3MDg0NDI4NAorCS5sb25nCTEwNzI2ODQ4NTgKKwkubG9uZwk5NjE4MDIyNjMKKwkubG9uZwkxMDcyNjg0Njc0CisJLmxvbmcJMTk0MTUwMzQ1NAorCS5sb25nCTEwNzI2ODQ0ODcKKwkubG9uZwkyODEyNjQ3MTcwCisJLmxvbmcJMTA3MjY4NDI5OAorCS5sb25nCTM1NzI4NzM4NjkKKwkubG9uZwkxMDcyNjg0MTA3CisJLmxvbmcJNDIxOTc5NzgyMworCS5sb25nCTEwNzI2ODM5MTQKKwkubG9uZwk0NTYwMzk3ODgKKwkubG9uZwkxMDcyNjgzNzIwCisJLmxvbmcJODY5MDk2MTUxCisJLmxvbmcJMTA3MjY4MzUyMworCS5sb25nCTExNjE1MzUxMTkKKwkubG9uZwkxMDcyNjgzMzI0CisJLmxvbmcJMTMzMDg2NTg2NgorCS5sb25nCTEwNzI2ODMxMjMKKwkubG9uZwkxMzc0NTcxMjA0CisJLmxvbmcJMTA3MjY4MjkyMAorCS5sb25nCTEyOTAxMDc1MzgKKwkubG9uZwkxMDcyNjgyNzE1CisJLmxvbmcJMTA3NDkwNDgzNgorCS5sb25nCTEwNzI2ODI1MDgKKwkubG9uZwk3MjYzNjY1ODcKKwkubG9uZwkxMDcyNjgyMjk5CisJLmxvbmcJMjQxODY5NzYzCisJLmxvbmcJMTA3MjY4MjA4OAorCS5sb25nCTM5MTM3MzIwNzkKKwkubG9uZwkxMDcyNjgxODc0CisJLmxvbmcJMzE0OTM0Mjc2NQorCS5sb25nCTEwNzI2ODE2NTkKKwkubG9uZwkyMjQwOTY2MzA2CisJLmxvbmcJMTA3MjY4MTQ0MgorCS5sb25nCTExODU4NzMyMTYKKwkubG9uZwkxMDcyNjgxMjIzCisJLmxvbmcJNDI3NjI3NDU5MQorCS5sb25nCTEwNzI2ODEwMDEKKwkubG9uZwkyOTE5NDUyODgzCisJLmxvbmcJMTA3MjY4MDc3OAorCS5sb25nCTE0MDc1NjU2MzUKKwkubG9uZwkxMDcyNjgwNTUzCisJLmxvbmcJNDAzMjc0MzU1MQorCS5sb25nCTEwNzI2ODAzMjUKKwkubG9uZwkyMjAyMTg4NTY1CisJLmxvbmcJMTA3MjY4MDA5NgorCS5sb25nCTIwNzk3NzU3NworCS5sb25nCTEwNzI2Nzk4NjUKKwkubG9uZwkyMzQyMTYwNTE4CisJLmxvbmcJMTA3MjY3OTYzMQorCS5sb25nCTExODU4NDIzCisJLmxvbmcJMTA3MjY3OTM5NgorCS5sb25nCTE4MDQwMzQ0NTMKKwkubG9uZwkxMDcyNjc5MTU4CisJLmxvbmcJMzQyMDcyMjc4NworCS5sb25nCTEwNzI2Nzg5MTgKKwkubG9uZwk1NjM5MzA0NTYKKwkubG9uZwkxMDcyNjc4Njc3CisJLmxvbmcJMTgyMDUzOTE5MgorCS5sb25nCTEwNzI2Nzg0MzMKKwkubG9uZwkyODkyNTAxNjA2CisJLmxvbmcJMTA3MjY3ODE4NworCS5sb25nCTM3NzY3MTAzMjAKKwkubG9uZwkxMDcyNjc3OTM5CisJLmxvbmcJMTc1MDYzMzM3CisJLmxvbmcJMTA3MjY3NzY5MAorCS5sb25nCTY3NDMzMzE3MQorCS5sb25nCTEwNzI2Nzc0MzgKKwkubG9uZwk5NzYzNjMwMjYKKwkubG9uZwkxMDcyNjc3MTg0CisJLmxvbmcJMTA3NzkzNTkzNAorCS5sb25nCTEwNzI2NzY5MjgKKwkubG9uZwkxOTIxMDc1NDkwCisJLmxvbmcJMTA3MjY3NjU0MAorCS5sb25nCTg4MTQ5MzMwMgorCS5sb25nCTEwNzI2NzYwMTYKKwkubG9uZwkzMjc1NzUyNDM5CisJLmxvbmcJMTA3MjY3NTQ4MworCS5sb25nCTQ4Njg1NTU4OAorCS5sb25nCTEwNzI2NzQ5NDMKKwkubG9uZwkxMDc3MjI5MTExCisJLmxvbmcJMTA3MjY3NDM5NAorCS5sb25nCTcyMzk1MDMwOAorCS5sb25nCTEwNzI2NzM4MzcKKwkubG9uZwkzNjkzNTgyMTk5CisJLmxvbmcJMTA3MjY3MzI3MQorCS5sb25nCTEzNjczMzUzMTYKKwkubG9uZwkxMDcyNjcyNjk4CisJLmxvbmcJMjMwNTgzNzAyMAorCS5sb25nCTEwNzI2NzIxMTYKKwkubG9uZwkyMTg0MzU4NjQxCisJLmxvbmcJMTA3MjY3MTUyNgorCS5sb25nCTk3MjY4Mjg0MAorCS5sb25nCTEwNzI2NzA5MjgKKwkubG9uZwkyOTM1MTAxNzYyCisJLmxvbmcJMTA3MjY3MDMyMQorCS5sb25nCTM3NDU1MTMyNjMKKwkubG9uZwkxMDcyNjY5NzA2CisJLmxvbmcJMzM3MjMyMDg4NgorCS5sb25nCTEwNzI2NjkwODMKKwkubG9uZwkxNzgzNDY0NjIwCisJLmxvbmcJMTA3MjY2ODQ1MgorCS5sb25nCTMyNDEzODYyMTUKKwkubG9uZwkxMDcyNjY3ODEyCisJLmxvbmcJMzQxODEyNTI4NAorCS5sb25nCTEwNzI2NjcxNjQKKwkubG9uZwkyMjgwMjE5MTQ4CisJLmxvbmcJMTA3MjY2NjUwOAorCS5sb25nCTQwODg3MDA3NTgKKwkubG9uZwkxMDcyNjY1ODQzCisJLmxvbmcJMjE5MjI3NDAwCisJLmxvbmcJMTA3MjY2NTE3MQorCS5sb25nCTM1MjE4MTY5MTgKKwkubG9uZwkxMDcyNjY0NDg5CisJLmxvbmcJMTA3NjIwNTI3OQorCS5sb25nCTEwNzI2NjM4MDAKKwkubG9uZwkxNDM2NDg0NjE2CisJLmxvbmcJMTA3MjY2MzEwMgorCS5sb25nCTI3MTM2MjYxMAorCS5sb25nCTEwNzI2NjIzOTYKKwkubG9uZwkxODM4OTk2Njg4CisJLmxvbmcJMTA3MjY2MTY4MQorCS5sb25nCTE4MDcxMjI1MTgKKwkubG9uZwkxMDcyNjYwOTU4CisJLmxvbmcJMTM3OTUzNTQyCisJLmxvbmcJMTA3MjY2MDIyNworCS5sb25nCTEwODgxNzg1ODQKKwkubG9uZwkxMDcyNjU5NDg3CisJLmxvbmcJMzI0MDU3NTM3CisJLmxvbmcJMTA3MjY1ODczOQorCS5sb25nCTIxMDEyODgwNzYKKwkubG9uZwkxMDcyNjU3OTgyCisJLmxvbmcJMjA4NTEzMzk3NAorCS5sb25nCTEwNzI2NTcyMTcKKwkubG9uZwkyMzUzMjQ0NTEKKwkubG9uZwkxMDcyNjU2NDQ0CisJLmxvbmcJODA2MDUxNTkyCisJLmxvbmcJMTA3MjY1NTY2MgorCS5sb25nCTM3NTYwMzMxNDAKKwkubG9uZwkxMDcyNjU0ODcxCisJLmxvbmcJNDUzNTQyNTQzCisJLmxvbmcJMTA3MjY1NDA3MworCS5sb25nCTM3NDExNzczMjcKKwkubG9uZwkxMDcyNjUzMjY1CisJLmxvbmcJNjkxMjE2MTA5CisJLmxvbmcJMTA3MjY1MjQ1MAorCS5sb25nCTQxNDUyMjMzNzIKKwkubG9uZwkxMDcyNjUxNjI1CisJLmxvbmcJMTE3NDQzOTA5MQorCS5sb25nCTEwNzI2NTA3OTMKKwkubG9uZwkzMjQ0MTYxMzkKKwkubG9uZwkxMDcyNjQ5OTUyCisJLmxvbmcJMTU1MDI0NjMxMAorCS5sb25nCTEwNzI2NDkxMDIKKwkubG9uZwk1MTE1MjQ2NzQKKwkubG9uZwkxMDcyNjQ4MjQ0CisJLmxvbmcJMTQ1NzI0ODQ4MgorCS5sb25nCTEwNzI2NDczNzcKKwkubG9uZwk0NTk0NDk1NQorCS5sb25nCTEwNzI2NDY1MDIKKwkubG9uZwk1MjU1MzczOTcKKwkubG9uZwkxMDcyNjQ1NjE4CisJLmxvbmcJMjg0ODQ0MDE4OAorCS5sb25nCTEwNzI2NDQ3MjUKKwkubG9uZwkyNjcxNTU1NjMzCisJLmxvbmcJMTA3MjY0MzgyNAorCS5sb25nCTQyNDExNzI2MzcKKwkubG9uZwkxMDcyNjQyOTE0CisJLmxvbmcJMzIxMzA5NDI3OAorCS5sb25nCTEwNzI2NDE5OTYKKwkubG9uZwkzODMyNTAzNjg4CisJLmxvbmcJMTA3MjY0MTA2OQorCS5sb25nCTE3NTQwOTE1MzQKKwkubG9uZwkxMDcyNjQwMTM0CisJLmxvbmcJMTIyMTkyMTgwNAorCS5sb25nCTEwNzI2MzkxOTAKKwkubG9uZwkyMTg0NTI2NDg5CisJLmxvbmcJMTA3MjYzODIzNworCS5sb25nCTI5NDkwMjA4OQorCS5sb25nCTEwNzI2MzcyNzYKKwkubG9uZwk0MDkwMzc1MjcwCisJLmxvbmcJMTA3MjYzNjMwNQorCS5sb25nCTYzMjg2MDkwNgorCS5sb25nCTEwNzI2MzUzMjcKKwkubG9uZwkyNzUzNDk4NzAyCisJLmxvbmcJMTA3MjYzNDMzOQorCS5sb25nCTE4MDgwMDkyNTIKKwkubG9uZwkxMDcyNjMzMzQzCisJLmxvbmcJMjAzNjQyODY3MgorCS5sb25nCTEwNzI2MzIzMzgKKwkubG9uZwkzMzgzMjM1NjI2CisJLmxvbmcJMTA3MjYzMTMyNAorCS5sb25nCTE0OTczNDc0ODQKKwkubG9uZwkxMDcyNjMwMzAyCisJLmxvbmcJNjE3MDE4MzE3CisJLmxvbmcJMTA3MjYyOTI3MQorCS5sb25nCTY4NDkzMzA1OAorCS5sb25nCTEwNzI2MjgyMzEKKwkubG9uZwkxNjQzMTcwNzk4CisJLmxvbmcJMTA3MjYyNzE4MgorCS5sb25nCTMwMTEwNjYzNjAKKwkubG9uZwkxMDcyNjI1NTkyCisJLmxvbmcJOTU3MTU4NzEzCisJLmxvbmcJMTA3MjYyMzQ0MgorCS5sb25nCTEzOTA5MDc5NDEKKwkubG9uZwkxMDcyNjIxMjU2CisJLmxvbmcJMzgxOTE1NTI3MAorCS5sb25nCTEwNzI2MTkwMzQKKwkubG9uZwkzNDQzNTcxMTk2CisJLmxvbmcJMTA3MjYxNjc3NworCS5sb25nCTQwNDU0MTI0NTgKKwkubG9uZwkxMDcyNjE0NDg0CisJLmxvbmcJODA1NTAzOTIzCisJLmxvbmcJMTA3MjYxMjE1NgorCS5sb25nCTE3Nzg5MjIwMTUKKwkubG9uZwkxMDcyNjA5NzkxCisJLmxvbmcJMjEyNTAzMzY2NQorCS5sb25nCTEwNzI2MDczOTAKKwkubG9uZwkxMjg3MjAzODYzCisJLmxvbmcJMTA3MjYwNDk1MworCS5sb25nCTI5OTI2Mjk1NjgKKwkubG9uZwkxMDcyNjAyNDc5CisJLmxvbmcJMjM2NzI2NzEyNworCS5sb25nCTEwNzI1OTk5NjkKKwkubG9uZwkzMTE1NTI2MDQ3CisJLmxvbmcJMTA3MjU5NzQyMgorCS5sb25nCTM0MDIxOTUzOQorCS5sb25nCTEwNzI1OTQ4MzkKKwkubG9uZwkyMDE3MjE1NzE5CisJLmxvbmcJMTA3MjU5MjIxOAorCS5sb25nCTMyMjU0NDM0MjQKKwkubG9uZwkxMDcyNTg5NTYwCisJLmxvbmcJMzMyNjU2NTY3MworCS5sb25nCTEwNzI1ODY4NjUKKwkubG9uZwkxNjY5ODExMjExCisJLmxvbmcJMTA3MjU4NDEzMworCS5sb25nCTE4ODY3MzUwMjIKKwkubG9uZwkxMDcyNTgxMzYzCisJLmxvbmcJMzMwMTA3MTE3MQorCS5sb25nCTEwNzI1Nzg1NTUKKwkubG9uZwk5Mjg1MTQyODMKKwkubG9uZwkxMDcyNTc1NzEwCisJLmxvbmcJMjY1NjM2NDA1OQorCS5sb25nCTEwNzI1NzI4MjYKKwkubG9uZwkzNDczNDkwNTA3CisJLmxvbmcJMTA3MjU2OTkwNAorCS5sb25nCTI2NDk5NjU2MDYKKwkubG9uZwkxMDcyNTY2OTQ0CisJLmxvbmcJMzczNjgxOTA1MgorCS5sb25nCTEwNzI1NjM5NDUKKwkubG9uZwkxNjgwODg1MTc1CisJLmxvbmcJMTA3MjU2MDkwOAorCS5sb25nCTQ0MTM3NzEKKwkubG9uZwkxMDcyNTU3ODMyCisJLmxvbmcJMjIxNDg2OTc1MworCS5sb25nCTEwNzI1NTQ3MTYKKwkubG9uZwkzMjE0NzI1MTg0CisJLmxvbmcJMTA3MjU1MTU2MQorCS5sb25nCTIxODYwNzk5MDMKKwkubG9uZwkxMDcyNTQ4MzY3CisJLmxvbmcJMjU5MDM3MjEzMQorCS5sb25nCTEwNzI1NDUxMzMKKwkubG9uZwkzNTc4MTQ2MDc5CisJLmxvbmcJMTA3MjU0MTg1OQorCS5sb25nCTQyODM3MTI3NTUKKwkubG9uZwkxMDcyNTM4NTQ1CisJLmxvbmcJMzgyNDgzNDUxMAorCS5sb25nCTEwNzI1MzUxOTEKKwkubG9uZwkxMzAyNDAwMjk4CisJLmxvbmcJMTA3MjUzMTc5NworCS5sb25nCTk1MDU4NjM2CisJLmxvbmcJMTA3MjUyODM2MgorCS5sb25nCTM1NjM5MDYwNjMKKwkubG9uZwkxMDcyNTI0ODg1CisJLmxvbmcJMjE2NzIzMDczMAorCS5sb25nCTEwNzI1MjEzNjgKKwkubG9uZwkzNTI0OTE4MzM0CisJLmxvbmcJMTA3MjUxNzgwOQorCS5sb25nCTIzNTMzMDQ5MTgKKwkubG9uZwkxMDcyNTE0MjA5CisJLmxvbmcJMTkzOTYyNTgzOQorCS5sb25nCTEwNzI1MTA1NjcKKwkubG9uZwkxMjU2NzE0NTgxCisJLmxvbmcJMTA3MjUwNjg4MworCS5sb25nCTM1NTI1MjU4NDgKKwkubG9uZwkxMDcyNTAzMTU2CisJLmxvbmcJMzQ2NDgwOTUyMgorCS5sb25nCTEwNzI0OTkzODcKKwkubG9uZwk0MjAwNTQyNTkzCisJLmxvbmcJMTA3MjQ5NTU3NQorCS5sb25nCTM1NTYwOTEyNAorCS5sb25nCTEwNzI0OTE3MjEKKwkubG9uZwkzNjg0MTM5MDk5CisJLmxvbmcJMTA3MjQ4NzgyMgorCS5sb25nCTE0ODM1NTkxOAorCS5sb25nCTEwNzI0ODM4ODEKKwkubG9uZwkxNDU3Njg5MjQyCisJLmxvbmcJMTA3MjQ3OTg5NQorCS5sb25nCTIxMTg1OTE1OTYKKwkubG9uZwkxMDcyNDc1ODY1CisJLmxvbmcJOTA4ODQ4MDg5CisJLmxvbmcJMTA3MjQ3MTc5MQorCS5sb25nCTg3NzAzMjY4OQorCS5sb25nCTEwNzI0Njc2NzIKKwkubG9uZwk3NTIwMTIzMDQKKwkubG9uZwkxMDcyNDYzNTA4CisJLmxvbmcJMzUzMjMwMTc0OQorCS5sb25nCTEwNzI0NTkyOTgKKwkubG9uZwkzNjAwNTYzMjIxCisJLmxvbmcJMTA3MjQ1NTA0MworCS5sb25nCTM5MDI4NTcwODQKKwkubG9uZwkxMDcyNDUwNzQyCisJLmxvbmcJMzA2MzEwMTAzNgorCS5sb25nCTEwNzI0NDYzOTUKKwkubG9uZwkzOTcyMzQ0Mzc0CisJLmxvbmcJMTA3MjQ0MjAwMQorCS5sb25nCTkwMzE4MzU0OQorCS5sb25nCTEwNzI0Mzc1NjEKKwkubG9uZwk5ODM4OTI5MzgKKwkubG9uZwkxMDcyNDMzMDczCisJLmxvbmcJMjcyMjg1ODU2OAorCS5sb25nCTEwNzI0Mjg1MzcKKwkubG9uZwkzMDI3OTA1MTUKKwkubG9uZwkxMDcyNDIzOTU0CisJLmxvbmcJNzU5ODExMDU3CisJLmxvbmcJMTA3MjQxOTMyMgorCS5sb25nCTI1MDc4MDk5MjIKKwkubG9uZwkxMDcyNDE0NjQxCisJLmxvbmcJMjM4ODQwODgxMworCS5sb25nCTEwNzI0MDc1MjgKKwkubG9uZwkyMDg0NDkyOTQyCisJLmxvbmcJMTA3MjM5Nzg3MAorCS5sb25nCTI0MzU3MDMzMDEKKwkubG9uZwkxMDcyMzg4MDEwCisJLmxvbmcJMTkzNTQzMzM2MAorCS5sb25nCTEwNzIzNzc5NDUKKwkubG9uZwkyNzQyMDQ3MjkwCisJLmxvbmcJMTA3MjM2NzY3MQorCS5sb25nCTIwNTMyODQyMDUKKwkubG9uZwkxMDcyMzU3MTg1CisJLmxvbmcJNjU3NzgzMzY3CisJLmxvbmcJMTA3MjM0NjQ4MworCS5sb25nCTI4OTM2NjQ4NDEKKwkubG9uZwkxMDcyMzM1NTYwCisJLmxvbmcJMzcxODkwNjQwNQorCS5sb25nCTEwNzIzMjQ0MTMKKwkubG9uZwkxNTQ3ODk2MzAzCisJLmxvbmcJMTA3MjMxMzAzOAorCS5sb25nCTI0OTQwNTg0NDAKKwkubG9uZwkxMDcyMzAxNDI5CisJLmxvbmcJMzEzMzIzODc0MgorCS5sb25nCTEwNzIyODk1ODIKKwkubG9uZwkzMzI3MDAwMDg2CisJLmxvbmcJMTA3MjI3NzQ5MgorCS5sb25nCTE4NjA2NjcyNzQKKwkubG9uZwkxMDcyMjY1MTU0CisJLmxvbmcJNjY1MzQwNzQ3CisJLmxvbmcJMTA3MjI1MjU2MgorCS5sb25nCTQ0MzM0Nzg0MQorCS5sb25nCTEwNzIyMzk3MTAKKwkubG9uZwk1ODEyODI2MTgKKwkubG9uZwkxMDcyMjI2NTkyCisJLmxvbmcJMzM0OTc4MDQ2NQorCS5sb25nCTEwNzIyMTMyMDEKKwkubG9uZwk5MTQyMTc2MDYKKwkubG9uZwkxMDcyMTk5NTMyCisJLmxvbmcJOTg5Nzk3NjYxCisJLmxvbmcJMTA3MjE4NTU3NgorCS5sb25nCTk0NTQzNjQxNgorCS5sb25nCTEwNzIxNzEzMjYKKwkubG9uZwk1NDkyOTEzMDAKKwkubG9uZwkxMDcyMTU2Nzc0CisJLmxvbmcJMTgxNDYzNjM4OQorCS5sb25nCTEwNzIxNDE5MTEKKwkubG9uZwkyMzkwOTI4NTgKKwkubG9uZwkxMDcyMTI2NzI5CisJLmxvbmcJMTc5NDY4MDcyNAorCS5sb25nCTEwNzIxMTEyMTcKKwkubG9uZwkxMjQxNTM0Njc4CisJLmxvbmcJMTA3MjA5NTM2NgorCS5sb25nCTMzNjY1NjYyMTQKKwkubG9uZwkxMDcyMDc5MTY0CisJLmxvbmcJMTI0NDA5MDgyOAorCS5sb25nCTEwNzIwNjI2MDEKKwkubG9uZwkxNzA4NDQ4MTIwCisJLmxvbmcJMTA3MjA0NTY2MworCS5sb25nCTM1NDQyNjA2NTAKKwkubG9uZwkxMDcyMDI4MzM3CisJLmxvbmcJMTQwMjc0MTQwMworCS5sb25nCTEwNzIwMTA2MTAKKwkubG9uZwkyNTUxOTM2ODg4CisJLmxvbmcJMTA3MTk5MjQ2NQorCS5sb25nCTYxNzY2OTczOQorCS5sb25nCTEwNzE5NzM4ODcKKwkubG9uZwk3OTQwMDIxODYKKwkubG9uZwkxMDcxOTU0ODU3CisJLmxvbmcJMjAyMTIzNzY5MworCS5sb25nCTEwNzE5MzUzNTYKKwkubG9uZwk1NDA0NTAzODQKKwkubG9uZwkxMDcxOTE1MzY0CisJLmxvbmcJMTkyMDU1NTUzNworCS5sb25nCTEwNzE4OTQ4NTcKKwkubG9uZwkyODc5NTg1MjA2CisJLmxvbmcJMTA3MTg3MzgxMQorCS5sb25nCTMwMDAyMzc0NTUKKwkubG9uZwkxMDcxODUyMTk5CisJLmxvbmcJMzM1Mjk3NDM0NgorCS5sb25nCTEwNzE4Mjk5OTEKKwkubG9uZwk1Njk2Mjk5MzcKKwkubG9uZwkxMDcxODA3MTU1CisJLmxvbmcJMjA3NzIzNzIwOAorCS5sb25nCTEwNzE3ODM2NTMKKwkubG9uZwkyMjg0ODkxODA1CisJLmxvbmcJMTA3MTc1OTQ0NgorCS5sb25nCTEyMjY2NTE3ODQKKwkubG9uZwkxMDcxNzM0NDg5CisJLmxvbmcJMTEwMjA0NzQwNQorCS5sb25nCTEwNzE3MDg3MzEKKwkubG9uZwkyMDA5ODk2Mzg0CisJLmxvbmcJMTA3MTY4MjExNQorCS5sb25nCTkyNzQxOTA4MgorCS5sb25nCTEwNzE2NTQ1NzcKKwkubG9uZwk4NTAxMDM2NgorCS5sb25nCTEwNzE2MDc0MTMKKwkubG9uZwk2OTY0MzEwMjUKKwkubG9uZwkxMDcxNTQ4MTgwCisJLmxvbmcJMjYxMTQxMDU0MQorCS5sb25nCTEwNzE0ODY1ODUKKwkubG9uZwkyNjEyNTkzNjU4CisJLmxvbmcJMTA3MTQyMjM5NgorCS5sb25nCTM1NDgxNTUzMDYKKwkubG9uZwkxMDcxMzU1MzM2CisJLmxvbmcJMzg4Nzk5NzQ4NAorCS5sb25nCTEwNzEyODUwNzMKKwkubG9uZwkyNDQ4NTQ3NjMKKwkubG9uZwkxMDcxMjExMjAyCisJLmxvbmcJNDIxNDQ0NTY0OAorCS5sb25nCTEwNzExMzMyMTYKKwkubG9uZwkyMzAzOTY2NzI3CisJLmxvbmcJMTA3MTA1MDQ3OAorCS5sb25nCTM5OTEwNDAwMTMKKwkubG9uZwkxMDcwOTYyMTUyCisJLmxvbmcJMzEyNjk1MjI3OAorCS5sb25nCTEwNzA4NjcxMTgKKwkubG9uZwkxODE3NDQ4Mzc4CisJLmxvbmcJMTA3MDc2MzgwNAorCS5sb25nCTE3OTM4MTQ4NjQKKwkubG9uZwkxMDcwNjQ5ODg0CisJLmxvbmcJMzUwNzIyNDA3MgorCS5sb25nCTEwNzA0NDcxOTMKKwkubG9uZwk0MDI3NjA5MTA1CisJLmxvbmcJMTA3MDE0ODc3MgorCS5sb25nCTU3NzUwNzk5MworCS5sb25nCTEwNjk3Nzk0MTQKKwkubG9uZwkyMzEwMjMyNDE5CisJLmxvbmcJMTA2ODkzMTgyOQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk1MDkxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzU4NAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDYwOTYKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2F0YW4yLlMgYi9saWJtL3g4Ni9lX2F0YW4yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWVmZGY2NQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2VfYXRhbjIuUwpAQCAtMCwwICsxLDEyMjEgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLworLy8xLiBUaGUgbWV0aG9kIGlzIGJhc2VkIG9uIHRoZSByZWxhdGlvbnNoaXAgb2YgYXRhbjIoWSxYKSB0byBhdGFuKHxZL1h8KQorLy8gICBhcyBmb2xsb3dzLgorLy8gICAgICAgICAgICAgICAgICAgLyAgc2lnbihZKSBhdGFuKHxZL1h8KSAgICAgICAgICAgICAgICBpZiBYID4gMAorLy8gICAgICAgYXRhbjIoWSxYKSA9CisvLyAgICAgICAgICAgICAgICAgICBcICBzaWduKFkpKnBpICAtIHNpZ24oWSkqYXRhbih8WS9YfCkgIGlmIFggPCAwCisvLworLy8gICBUaHVzLCBhdGFuMihZLFgpIGlzIG9mIHRoZSBmb3JtICBhdGFuMihZLFgpID0gUEkgKyBzZ24qYXRhbih8WS9YfCkKKy8vICAgd2hlcmUgUEkgYW5kIHNnbiBjYW4gYmUgZGV0ZXJtaW5lZCBieSB0aGUgZm91ciBwb3NzaWJsZSBjb21iaW5hdGlvbnMgb2YKKy8vICAgb2YgdGhlIHBhaXIgKHNpZ24oWCksc2lnbihZKSkuIFdlIGNvbmNlbnRyYXRlIG9uIHRoZSBudW1lcmljYWwgbWV0aG9kCisvLyAgIGZvciBhdGFuKHxZL1h8KS4KKy8vCisvLzIuIEZvciB8WS9YfCA8IDJeKC02NCksIGF0YW4ofFkvWHwpIH49fiB8WS9YfC4gSGVuY2UsIGF0YW4yKFksWCkgaXMgIFkvWAorLy8gICBpZiBYID4gMCwgYW5kIHNpZ24oWSkqcGkgb3RoZXJ3aXNlLgorLy8zLiBGb3IgfFkvWHwgPj0gMl4oNjUpLCBhdGFuKHxZL1h8KSB+PX4gcGkvMi4gSGVuY2UgYXRhbjIoWSxYKSBpcyBzaWduKFkpcGkvMi4KKy8vNC4gRm9yIDJeKC02NCkgPD0gfFkvWHwgPCAyXigtNSksIGF0YW4ofFkvWHwpIGlzIGFwcHJveGltYXRlZCBieSBhIHBvbHlub21pYWwKKy8vICAgb2YgdGhlIGZvcm0gIFogKyBaKkUqcG9seW5vbWlhbChFKSwgd2hlcmUgWiA9IHxZL1h8IGFuZCBFID0gWipaLgorLy81LiBGb3IgfFkvWHwgPiAyXig1KSwgYXRhbih8WS9YfCkgPSBwaS8yICsgYXRhbigtfFgvWXwpLCBhbmQgYXRhbigtfFgvWXwpIGlzCisvLyAgIGNhbGN1bGF0ZWQgdXNpbmcgdGhlIHBvbHlub21pYWwgaW4gNCBhYm92ZS4KKy8vNi4gRm9yIDJeKC01KSA8PSB8WS9YfCA8PSAyXig1KSwgd2UgZW1wbG95IGEgdGFibGUgbG9va3VwIG1ldGhvZC4gRmlyc3QsCisvLyAgIHdlIG9idGFpbiBCID0gMl5rICogMS5iMSBiMiBiMyBiNCA9IDJeayAqICgxK2svMTYpIHRoYXQgYXBwcm94aW1hdGUKKy8vICAgfFkvWHwgdG8gYXBwcm94aW1hdGVseSA1IHNpZ25pZmljYW50IGJpdHMuIEhlbmNlLCBhdGFuKHxZL1h8KSBpcworLy8KKy8vICAgICAgYXRhbih8WS9YfCkgID0gIGF0YW4oQikgKyBhdGFuKFopLCB3aGVyZSAgWiA9ICh8WXwtQnxYfCkvKHxYfCtCfFl8KS4KKy8vICAgICAgICAgICAgICAgICAgfj1+ICAgdGF1ICAgKyBaICsgWipFKnBvbHlub21pYWwoRSksIHdoZXJlIEUgPSBaKlouCisvLworLy8gICBCIGhhcyB0aGUgcmFuZ2UgZnJvbSAyXigtNikqKDErMTQvMTYpIHRvIDJeNSA9IDJeKDUpKigxKzAvMTYpLCB0b3RhbGx5CisvLyAgIDE2MyBwb3NzaWJsZSB2YWx1ZXMuIFRoZXNlIHZhbHVlcyBhcmUgY2FsY3VsYXRlZCBiZWZvcmVoYW5kIGFuZCBzdG9yZWQKKy8vICAgaW4gYSB0YWJsZS4gVGhlIHBvbHlub21pYWwgaXMgdGhlIG9uZSB1c2VkIGluIDQuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBhdGFuMigrLTAsICswKSA9ICstMAorLy8gIGF0YW4yKCstMCwgLTApID0gKy1waQorLy8gIGF0YW4yKCstMCwgeCkgPSArLTAsIGZvciB4ID4gMCwgYW5kICstcGksIGZvciB4IDwgMAorLy8gIGF0YW4yKHksICstMCkgPSArcGkvMiBmb3IgeSA+IDAsIGFuZCAtcGkvMiBmb3IgeSA8IDAKKy8vICBhdGFuMigrLXksICtJTkYpID0gKy0wLCBmb3IgZmluaXRlIHkgPiAwCisvLyAgYXRhbjIoKy15LCAtSU5GKSA9ICstcGksIGZvciBmaW5pdGUgeSA+IDAKKy8vICBhdGFuMigrLUlORiwgeCkgPSArLXBpLzIsIGZvciBmaW5pdGUgeAorLy8gIGF0YW4yKCstSU5GLCArSU5GKSA9ICstcGkvNAorLy8gIGF0YW4yKCstSU5GLCAtSU5GKSA9ICstMypwaS80CisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgYXRhbjIKK0VOVFJZKGF0YW4yKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKyMgcGFyYW1ldGVyIDI6IDE2ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNjQoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMzYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAxNiglZXNwKQorICAgICAgICBzdWJsICAgICAgJDE0NDQ4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzg0MCwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTQ0NDgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzODQwLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHVucGNrbHBkICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMjA0OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIHBhZGR3ICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgcHNybHEgICAgICQyOSwgJXhtbTUKKyAgICAgICAgcmNwc3MgICAgICV4bW01LCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkMTQzMzYsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMworICAgICAgICBwYWRkdyAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDIsICVlYXgsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkMTY0NDgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMgorICAgICAgICBtaW5zZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdm1za3BkICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDEsICV4bW0wCisgICAgICAgIHBzcmxxICAgICAkMSwgJXhtbTAKKyAgICAgICAgY21wc2QgICAgICQyLCAleG1tMiwgJXhtbTUKKyAgICAgICAgcHNsbHEgICAgICQxLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDEsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDAsICVlY3gsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2Mjg2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTEyMSwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgZGl2c2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWN4CisgICAgICAgIG1vdnNkICAgICAyOTQ0KCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMjk2MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQwLCAleG1tNSwgJWVheAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgMjY4OCglZWJ4LCVlZHgsOCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICAyNzUyKCVlYngsJWVkeCw4KSwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNjI4NiwgJWVjeAorICAgICAgICBub3RsICAgICAgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92YXBkICAgICglZWJ4LCVlY3gsOCksICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTUsICV4bW02CisgICAgICAgIHVucGNraHBkICAleG1tNSwgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAyOTUyKCVlYngpLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAyOTY4KCVlYngpLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZGwgICAgICAkOTQyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkOTQyLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAyNzUyKCVlYngsJWVkeCw4KSwgJXhtbTYKKyAgICAgICAgdW5wY2tscGQgICV4bW0zLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgMjgxNiglZWJ4LCVlZHgsOCksICV4bW03CisgICAgICAgIG1vdnNkICAgICAyOTQ0KCVlYngpLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgMjk2MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgYW5kcGQgICAgIDI4ODAoJWVieCwlZWR4LDgpLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICAyOTUyKCVlYngpLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAyOTY4KCVlYngpLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIG1vdnNkICAgICAleG1tNSwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJWVheCwgJWVjeAorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzY3LCAlZWN4CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgYW5kcGQgICAgIDI2NzIoJWVieCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyNjQwKCVlYngpLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgYW5kcGQgICAgIDI2NzIoJWVieCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyNjI0KCVlYngpLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdnNkICAgICAyOTkyKCVlYngpLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDEwMjQsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDI5NzYoJWVieCksICV4bW00CisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDMwMDgoJWVieCksICV4bW03CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjA0OCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgYWRkbCAgICAgICQxNTM0NCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW02CisgICAgICAgIGFuZHBkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIHN1YmwgICAgICAkODgwLCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQ4ODAsICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDEwNDg1NzUsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNi4wLjIKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisgICAgICAgIG1vdmFwZCAgICAyNjI0KCVlYngpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTguMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTYuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzE3LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTkuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjAuMC4yCisgICAgICAgIG1vdmFwZCAgICAyNjU2KCVlYngpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTkuMC4yOgorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8yMC4wLjI6CisgICAgICAgIG1vdmFwZCAgICAyNjU2KCVlYngpLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMjYyNCglZWJ4KSwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW02CisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMTA0ODU3NSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVheCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzE5LjAuMgorICAgICAgICBwc3JscSAgICAgJDYzLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDYzLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMjEuMC4yOgorICAgICAgICBtb3ZhcGQgICAgMjY0MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjIuMC4yCisgICAgICAgIG1vdmFwZCAgICAyNjQwKCVlYngpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgY29taXNkICAgICV4bW0wLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzI0LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIzLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIyLjAuMjoKKyAgICAgICAgY29taXNkICAgICV4bW0wLCAleG1tMQorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjMuMC4yCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzE1LjAuMjoKKyAgICAgICAgbW92YXBkICAgIDI2MjQoJWVieCksICV4bW01CisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZsICAgICAgNjQoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGF0YW4yKQorIyAtLSBFbmQgIGF0YW4yCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChhdGFuMmwsIGF0YW4yKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMzM5MDg4MTI4MAorCS5sb25nCTEwNjczMTg3MzMKKwkubG9uZwkxNDExMTE2Nzc5CisJLmxvbmcJMTAxODk1MDA2MworCS5sb25nCTI5ODU5ODc4NDAKKwkubG9uZwkxMDY3Mzg0MjExCisJLmxvbmcJMjA4ODkwMzY5NQorCS5sb25nCTEwMTgwODYwMjcKKwkubG9uZwkzMTQ4NDQ1MTg0CisJLmxvbmcJMTA2NzQ0OTY4NQorCS5sb25nCTIwNDQxNjM4MDYKKwkubG9uZwkxMDE3MjcxMzM1CisJLmxvbmcJMzY2NzYyOTE4NAorCS5sb25nCTEwNjc1MTU0OTQKKwkubG9uZwkyMzUzMDkyNzc1CisJLmxvbmcJMTAxOTk2NzMwOQorCS5sb25nCTE1NDY1Njg4MzIKKwkubG9uZwkxMDY3NTgwOTU0CisJLmxvbmcJNjExOTkxMzE1CisJLmxvbmcJMTAxNzYwMjU4NAorCS5sb25nCTM4MTU5OTY4MDAKKwkubG9uZwkxMDY3NjQ2NDA0CisJLmxvbmcJNDY2MDM4NTk4CisJLmxvbmcJMTAxOTY4NjQyNgorCS5sb25nCTQwNTAyNDE5MjAKKwkubG9uZwkxMDY3NzExODQ1CisJLmxvbmcJMzI2NTAyNjMyOAorCS5sb25nCTEwMTk2MjY5NTIKKwkubG9uZwkxMjA0NTQ5MTIKKwkubG9uZwkxMDY3Nzc3Mjc3CisJLmxvbmcJMTU0MjIwNzY5NgorCS5sb25nCTEwMjAxNTU2MDgKKwkubG9uZwkyNzg0NjM5NzQ0CisJLmxvbmcJMTA2Nzg0MjY5NworCS5sb25nCTM4ODM4MzQ2MjMKKwkubG9uZwkxMDE4NjAyODcwCisJLmxvbmcJMTMyODAxMDYyNAorCS5sb25nCTEwNjc5MDgxMDcKKwkubG9uZwkxNzkxMDk3NDU2CisJLmxvbmcJMTAxOTA1MzEyNgorCS5sb25nCTIyMTc3OTQwNDgKKwkubG9uZwkxMDY3OTczNTA1CisJLmxvbmcJNTUxNjE5OTM4CisJLmxvbmcJMTAxODQ5NDE5NAorCS5sb25nCTMzMzM1MjAwMDAKKwkubG9uZwkxMDY4MDM4ODkxCisJLmxvbmcJMjM5MDMzMTgyMworCS5sb25nCTEwMTkwMzMwMjIKKwkubG9uZwkyNTU3MDUyMDMyCisJLmxvbmcJMTA2ODEwNDI2NQorCS5sb25nCTI0MjM5NzYxMDgKKwkubG9uZwkxMDE5NzI4Njc0CisJLmxvbmcJMjA2NzY0OTUzNgorCS5sb25nCTEwNjgxNjk2MjYKKwkubG9uZwkzNzU3Mzk3NzQ1CisJLmxvbmcJMTAxODY3MjM2MgorCS5sb25nCTQwNDcwOTQ3ODQKKwkubG9uZwkxMDY4MjM0OTczCisJLmxvbmcJNDgxNjEzMTg0CisJLmxvbmcJMTAxOTI3NTEwNAorCS5sb25nCTIwODk4NTMxODQKKwkubG9uZwkxMDY4MzAwMzA3CisJLmxvbmcJMTczMzkxNDM3NAorCS5sb25nCTEwMjAxMjQ2NzcKKwkubG9uZwkyNjc4MDAzODQwCisJLmxvbmcJMTA2ODM2NTYyNgorCS5sb25nCTEzNzM2MDAyODIKKwkubG9uZwkxMDEzOTM1NDc0CisJLmxvbmcJMzcwNjQ5NjEyOAorCS5sb25nCTEwNjg0MzA5MzAKKwkubG9uZwkxMDAwNjEwOTAyCisJLmxvbmcJMTAxOTY3MzI4NQorCS5sb25nCTMwNzMxNzkwMDgKKwkubG9uZwkxMDY4NDk2MjE5CisJLmxvbmcJMTQ5NzE0MzAwOAorCS5sb25nCTEwMTk5MDAzNDIKKwkubG9uZwkyODAzNzE2NzM2CisJLmxvbmcJMTA2ODU2Mjg0NgorCS5sb25nCTE0NzY2Nzc0MTYKKwkubG9uZwkxMDE5NDQ0MDk0CisJLmxvbmcJMzIwNDk4NDEyOAorCS5sb25nCTEwNjg2MjgwNzcKKwkubG9uZwkxMTkyMzM1OTA1CisJLmxvbmcJMTAxODc0ODYyOAorCS5sb25nCTgzMTE0NjYyNAorCS5sb25nCTEwNjg2OTMyNzMKKwkubG9uZwkyNzMzNTg2MjI0CisJLmxvbmcJMTAxODgyMzI5NQorCS5sb25nCTI0MzAyOTM3NgorCS5sb25nCTEwNjg3NTg0MzEKKwkubG9uZwk5NTAxMDYwODEKKwkubG9uZwkxMDE5MDQ2Njc1CisJLmxvbmcJMTczNTU2MTkyMAorCS5sb25nCTEwNjg4MjM1NDkKKwkubG9uZwkzNTQ2NDQwODU2CisJLmxvbmcJMTAyMDEwNDcxMgorCS5sb25nCTEzMzkyMTc3OTIKKwkubG9uZwkxMDY4ODg4NjI2CisJLmxvbmcJMzAyODgxMjM4NworCS5sb25nCTEwMTk4MTgzMjEKKwkubG9uZwkzNzA2MzQyMTQ0CisJLmxvbmcJMTA2ODk1MzY1OQorCS5sb25nCTM4MTQ1NjQwMjkKKwkubG9uZwkxMDE3NzYzODcxCisJLmxvbmcJNjM3NzI2OTc2CisJLmxvbmcJMTA2OTAxODY0OAorCS5sb25nCTM1ODQwMDc2OTkKKwkubG9uZwkxMDE3OTc2ODY4CisJLmxvbmcJMTE0ODc3OTI2NAorCS5sb25nCTEwNjkwODM1ODkKKwkubG9uZwkyMjgyNTMyMTMzCisJLmxvbmcJMTAxOTQ4Mzk1NAorCS5sb25nCTE0MDYxMzEzOTIKKwkubG9uZwkxMDY5MTQ4NDgxCisJLmxvbmcJMTU0NzM1OTExMworCS5sb25nCTEwMTk3ODYzNDIKKwkubG9uZwkxOTA4ODc1OTA0CisJLmxvbmcJMTA2OTIxMzMyMgorCS5sb25nCTEzMTU1MDg0MTAKKwkubG9uZwkxMDIwMDA5NDczCisJLmxvbmcJMzE5NDk0NzUyMAorCS5sb25nCTEwNjkyNzgxMTAKKwkubG9uZwkzODQ1MzkzMjAxCisJLmxvbmcJMTAxNTgwMzc2MQorCS5sb25nCTE1NDc0ODc3NDQKKwkubG9uZwkxMDY5MzQyODQ0CisJLmxvbmcJMzg2MzEwNzg2NQorCS5sb25nCTEwMTk4MTAxMDQKKwkubG9uZwkxODgxMDYxOTUyCisJLmxvbmcJMTA2OTQwNzUyMQorCS5sb25nCTQyODgzNDM1NDgKKwkubG9uZwkxMDE5Njg3NTgxCisJLmxvbmcJNTYzMDg2MzM2CisJLmxvbmcJMTA2OTQ3MjE0MAorCS5sb25nCTI1ODIyMzAyNDEKKwkubG9uZwkxMDIwMDk5MzUwCisJLmxvbmcJMjU5NDk3NTU1MgorCS5sb25nCTEwNjk1MzY2OTgKKwkubG9uZwkyMzA2NDQzNzY0CisJLmxvbmcJMTAxOTY2NzI0NAorCS5sb25nCTM0Mzg1NDUwMjQKKwkubG9uZwkxMDY5NjA2NTczCisJLmxvbmcJOTU3NDU1NTQ5CisJLmxvbmcJMTAxNTU4NzczNQorCS5sb25nCTQyMTEzNTc0NzIKKwkubG9uZwkxMDY5NjcwOTA2CisJLmxvbmcJMjYxMTc3ODc1NAorCS5sb25nCTEwMTc4NzcyMTQKKwkubG9uZwkzMDAyODM1NDI0CisJLmxvbmcJMTA2OTczNTEwMQorCS5sb25nCTIzNTU4MDQ1OAorCS5sb25nCTEwMjAyMTE2ODUKKwkubG9uZwkzOTA1MzE1NDI0CisJLmxvbmcJMTA2OTc5OTE1MAorCS5sb25nCTM2MzA2NDc2MTcKKwkubG9uZwkxMDE4NzM2ODQ5CisJLmxvbmcJMjg0OTY1NjU3NgorCS5sb25nCTEwNjk4NjMwNDcKKwkubG9uZwkyNDEyMTY1MDYyCisJLmxvbmcJMTAxOTY5MzAwNAorCS5sb25nCTUwNzQyOTQ3MgorCS5sb25nCTEwNjk5MjY3ODUKKwkubG9uZwkxMzk3NzUwNzIzCisJLmxvbmcJMTAxODQxMjcxNworCS5sb25nCTIzMDc0NzAyNzIKKwkubG9uZwkxMDY5OTkwMzU2CisJLmxvbmcJMTc5NjQ3MDkwNAorCS5sb25nCTEwMTk3OTYxODEKKwkubG9uZwkxMjcxODE0OTEyCisJLmxvbmcJMTA3MDA1Mzc1NQorCS5sb25nCTE4OTc2MTU2NQorCS5sb25nCTEwMTYxNDkxMTUKKwkubG9uZwkzODAwNTM4MTQ0CisJLmxvbmcJMTA3MDExNjk3NAorCS5sb25nCTI1MjQ4NzE1ODIKKwkubG9uZwkxMDE4MjYzMzUzCisJLmxvbmcJMzkxNjIwMzU1MgorCS5sb25nCTEwNzAxODAwMDgKKwkubG9uZwkxMjc4NDg2NTgKKwkubG9uZwkxMDE3NjcyNjY0CisJLmxvbmcJNDU3MTkyMDMyCisJLmxvbmcJMTA3MDI0Mjg1MQorCS5sb25nCTQwMjA0MDA5MzgKKwkubG9uZwkxMDE5ODIzMDEwCisJLmxvbmcJMTM4NTMyNDcwNAorCS5sb25nCTEwNzAzMDU0OTUKKwkubG9uZwk1NjQ1MTExNzkKKwkubG9uZwkxMDE2MDc5MDk0CisJLmxvbmcJMjMyMjg2OTg1NgorCS5sb25nCTEwNzAzNjc5MzUKKwkubG9uZwkyMzQ3MTAzMzE5CisJLmxvbmcJMTAxODkyNzc2MAorCS5sb25nCTM3NDM0Mzg2MjQKKwkubG9uZwkxMDcwNDMwMTY1CisJLmxvbmcJODc3OTczODYyCisJLmxvbmcJMTAxOTYzODE2MgorCS5sb25nCTIzOTIyNTU1NTIKKwkubG9uZwkxMDcwNDkyMTgwCisJLmxvbmcJMjQzMjc4MjI2NworCS5sb25nCTEwMTg4NzI2MjkKKwkubG9uZwk0MTgwNDQzMzI4CisJLmxvbmcJMTA3MDU1Mzk3MworCS5sb25nCTMxMDI5OTAwMTUKKwkubG9uZwkxMDIwMDkzMTAxCisJLmxvbmcJMjU0NzU0MDgzMgorCS5sb25nCTEwNzA2MzY0ODUKKwkubG9uZwkzODc3NzM4MjUzCisJLmxvbmcJMTAxNzMwMDQyNAorCS5sb25nCTI3MzU0Njg5MTIKKwkubG9uZwkxMDcwNjk3NDYxCisJLmxvbmcJMjQ0NjQ3MDI1NgorCS5sb25nCTEwMTkyMzUzNzgKKwkubG9uZwk1NDI2MzM3OTIKKwkubG9uZwkxMDcwNzU3OTQzCisJLmxvbmcJNTgzNjA2MzI4CisJLmxvbmcJMTAxODYyNDEzMQorCS5sb25nCTkyMzI2NTk4NAorCS5sb25nCTEwNzA4MTc5MTEKKwkubG9uZwkxNzkzOTI2NzA4CisJLmxvbmcJMTAxOTcxNDE2MQorCS5sb25nCTkxODcyODQ0OAorCS5sb25nCTEwNzA4NzczNDgKKwkubG9uZwkzNzI2NDYzNTg2CisJLmxvbmcJMTAxOTQzMzI5NgorCS5sb25nCTI1NzIyNzUwMDgKKwkubG9uZwkxMDcwOTM2MjM3CisJLmxvbmcJMTg0NTM1NDIzOAorCS5sb25nCTEwMTk0NTkyMzgKKwkubG9uZwk1MDk3NDY4OAorCS5sb25nCTEwNzA5OTQ1NjQKKwkubG9uZwk5ODM4MDgwNjQKKwkubG9uZwkxMDE2Njg1NDE4CisJLmxvbmcJMTEwNTUxODMyMAorCS5sb25nCTEwNzEwNTIzMTMKKwkubG9uZwkyMzU3NDk2NjkyCisJLmxvbmcJMTAxNTEzOTg4MgorCS5sb25nCTEyNjQ4MjUzMjgKKwkubG9uZwkxMDcxMTA5NDcyCisJLmxvbmcJMjI0NDEyOTM1NAorCS5sb25nCTEwMTkwNDYzNDQKKwkubG9uZwk5NjExNTc5MjAKKwkubG9uZwkxMDcxMTY2MDI5CisJLmxvbmcJMzEyNDE4NTMzOQorCS5sb25nCTEwMTg1NDE3NzYKKwkubG9uZwkxMTYyNzAxNTg0CisJLmxvbmcJMTA3MTIyMTk3MworCS5sb25nCTEyNzk3ODA5NDgKKwkubG9uZwkxMDE5MjY4OTE4CisJLmxvbmcJMzI4NDkzNTY2NAorCS5sb25nCTEwNzEyNzcyOTQKKwkubG9uZwkyNjcwMDMzNDcyCisJLmxvbmcJMTAxOTgzMzc0NAorCS5sb25nCTQ5NzQ0MTg4OAorCS5sb25nCTEwNzEzMzE5ODUKKwkubG9uZwkxMDMyNzM3NDEwCisJLmxvbmcJMTAxOTc5NTIxMgorCS5sb25nCTMzNzczODM5MDQKKwkubG9uZwkxMDcxMzg2MDM2CisJLmxvbmcJMjM1Njg5NzE4MgorCS5sb25nCTEwMjAyMDU1NTMKKwkubG9uZwkxMTI2OTYyMDAwCisJLmxvbmcJMTA3MTQzOTQ0MworCS5sb25nCTM3MjM3MjQ1ODYKKwkubG9uZwkxMDE1MjEyNDE4CisJLmxvbmcJOTAyOTEwMDgKKwkubG9uZwkxMDcxNDkyMTk5CisJLmxvbmcJNDE3ODY3MjQzMQorCS5sb25nCTEwMjAxODY5NzEKKwkubG9uZwkxOTAwNTk1MzYKKwkubG9uZwkxMDcxNTk1NzQxCisJLmxvbmcJMTc2MzU4OTgwNworCS5sb25nCTEwMTkxNjIxNjMKKwkubG9uZwkyNDk3MzkyODQwCisJLmxvbmcJMTA3MTY3MDY1NAorCS5sb25nCTMwMzY5OTcwNDEKKwkubG9uZwkxMDIwMjA0MzI1CisJLmxvbmcJMjYxNjk3MTk0NAorCS5sb25nCTEwNzE3MTk3NzMKKwkubG9uZwkzMDAxNTEwNjkKKwkubG9uZwkxMDE3MDQxOTU3CisJLmxvbmcJMjg4MzUxODEyOAorCS5sb25nCTEwNzE3Njc1NjMKKwkubG9uZwkyMjAzOTgxNDE0CisJLmxvbmcJMTAxOTE5MDEwOAorCS5sb25nCTE0OTYzNTQzNTIKKwkubG9uZwkxMDcxODE0MDMwCisJLmxvbmcJMzMyMjg3OTY2CisJLmxvbmcJMTAxNjg0NjQzNQorCS5sb25nCTQ4MzI3NjcyOAorCS5sb25nCTEwNzE4NTkxODQKKwkubG9uZwk2NTM4NDUwMjQKKwkubG9uZwkxMDE4ODMwOTE0CisJLmxvbmcJMzA5NzQwMTA3MgorCS5sb25nCTEwNzE5MDMwMzkKKwkubG9uZwkxNTE0NzQ2NDA4CisJLmxvbmcJMTAxOTI3ODk3MgorCS5sb25nCTI3MzcyMTcyNDgKKwkubG9uZwkxMDcxOTQ1NjE1CisJLmxvbmcJMTM1ODg0NTA2NworCS5sb25nCTEwMTcyNjgyNzUKKwkubG9uZwkyMDcyNTc3NTYwCisJLmxvbmcJMTA3MTk4NjkzMworCS5sb25nCTMwNDEwMjQ3MzUKKwkubG9uZwkxMDE5OTI5NjcyCisJLmxvbmcJMjI2NjQwNTY1NgorCS5sb25nCTEwNzIwMjcwMTcKKwkubG9uZwkxMjcxMjYxMTMwCisJLmxvbmcJMTAxMjkyNTA3MAorCS5sb25nCTk1ODY1MjU0NAorCS5sb25nCTEwNzIwNjU4OTQKKwkubG9uZwkyMTU4MDE3MDU4CisJLmxvbmcJMTAxOTk1NTM3MgorCS5sb25nCTMzMTI5OTM4NDAKKwkubG9uZwkxMDcyMTAzNTkxCisJLmxvbmcJNzY1ODA5MTY5CisJLmxvbmcJMTAxOTExNDQ0MworCS5sb25nCTMxNzcwMDEzMDQKKwkubG9uZwkxMDcyMTQwMTM5CisJLmxvbmcJMTQ0MTgwMDg0CisJLmxvbmcJMTAxOTgyMjE4NgorCS5sb25nCTMwNzE2NDIxODQKKwkubG9uZwkxMDcyMTc1NTY4CisJLmxvbmcJNDAwNDYwMjQyNAorCS5sb25nCTEwMTk0MjA3NDAKKwkubG9uZwk0MjgzOTUzNjQ4CisJLmxvbmcJMTA3MjIwOTkwOQorCS5sb25nCTE1MTE5NTA0MzAKKwkubG9uZwkxMDIwMTc2OTY2CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE1MTI5NjM4CisJLmxvbmcJNDA3MzIwMjk0NAorCS5sb25nCTEwNzIzMDY3MjUKKwkubG9uZwk0MDY4MTk0ODA0CisJLmxvbmcJMTAxOTcxNDg2MAorCS5sb25nCTk0NjExNzc2MAorCS5sb25nCTEwNzIzNjY0MTUKKwkubG9uZwk2OTQ5ODA3MzMKKwkubG9uZwkxMDIwMTUwMTM1CisJLmxvbmcJMzk4MDYzMjAzMgorCS5sb25nCTEwNzI0MjI1MTIKKwkubG9uZwkxMzEzMjUxMjgwCisJLmxvbmcJMTAxOTk0ODcwOQorCS5sb25nCTE0NjgyOTcxMTIKKwkubG9uZwkxMDcyNDc1MjYwCisJLmxvbmcJMzMwMTExMTQzCisJLmxvbmcJMTAxOTgwOTE5OAorCS5sb25nCTM0NzgwNjM4MTYKKwkubG9uZwkxMDcyNTI0ODg3CisJLmxvbmcJMjkzMDA2NzA0NAorCS5sb25nCTEwMTc3ODQwODEKKwkubG9uZwkxMTUzOTc5ODU2CisJLmxvbmcJMTA3MjU3MTYxMworCS5sb25nCTIyMjU3ODYxMDIKKwkubG9uZwkxMDE3NjM0NDgxCisJLmxvbmcJMjA4OTgyODgwOAorCS5sb25nCTEwNzI2MTU2NDEKKwkubG9uZwk0NzQ2MjEzNjcKKwkubG9uZwkxMDE3MDQzNDE0CisJLmxvbmcJMzUzMTczMjYzMgorCS5sb25nCTEwNzI2NTcxNjMKKwkubG9uZwkyMjc2Mzk2MjIwCisJLmxvbmcJMTAxODc1NzI0MAorCS5sb25nCTc3NTIxNDYxMgorCS5sb25nCTEwNzI2OTQ4MDMKKwkubG9uZwkzMjA5NzQ0ODE4CisJLmxvbmcJMTAxOTk2MzAxNQorCS5sb25nCTY2MjMwNzI4NAorCS5sb25nCTEwNzI3MTMzMTkKKwkubG9uZwkxMzgxNjk2NzYzCisJLmxvbmcJMTAxOTc2Mzc4MQorCS5sb25nCTExOTI3NzY2NTIKKwkubG9uZwkxMDcyNzMwODMwCisJLmxvbmcJMzAxNzkzMjk5NAorCS5sb25nCTEwMTUxNzk3NjkKKwkubG9uZwk3NDQyMDIzOTYKKwkubG9uZwkxMDcyNzQ3NDA3CisJLmxvbmcJMjA3Mzg1NDAzNAorCS5sb25nCTEwMTk1MTIyOTIKKwkubG9uZwk4MzM3OTA4CisJLmxvbmcJMTA3Mjc2MzExNQorCS5sb25nCTE2MDA0NDQ4CisJLmxvbmcJMTAxOTU5OTUxNAorCS5sb25nCTM1ODk4Njg3NjgKKwkubG9uZwkxMDcyNzc4MDEzCisJLmxvbmcJMTM3NDM2OTgwNAorCS5sb25nCTEwMTgwMTkyMzcKKwkubG9uZwkxMjE2NDczMjAKKwkubG9uZwkxMDcyNzkyMTU5CisJLmxvbmcJMTI4NDgxNjM0CisJLmxvbmcJMTAxODExNTQzOAorCS5sb25nCTI0NjQ5MjMyMDQKKwkubG9uZwkxMDcyODA1NjAxCisJLmxvbmcJMTc4NzMzMTIxNAorCS5sb25nCTEwMTY3OTgwMjIKKwkubG9uZwk0MDkzMzA0MzcyCisJLmxvbmcJMTA3MjgzMDU2MgorCS5sb25nCTMzMDY4Njg5NjkKKwkubG9uZwkxMDE5Mzg0MDc4CisJLmxvbmcJMTQzNjg5MTY4NAorCS5sb25nCTEwNzI4NTMyMzEKKwkubG9uZwk2NzYzNDcyNjYKKwkubG9uZwkxMDE3MzAyMTgzCisJLmxvbmcJMTEwNDU3MTg0MAorCS5sb25nCTEwNzI4NzM4OTAKKwkubG9uZwkyODcwNDAwMjg1CisJLmxvbmcJMTAxOTkzODE0OQorCS5sb25nCTIwMzcwMDk4MzIKKwkubG9uZwkxMDcyODkyNzgxCisJLmxvbmcJMjk1NjcwMjEwNQorCS5sb25nCTEwMTY0NzI5MDgKKwkubG9uZwkzMTM5MDM3OTYwCisJLmxvbmcJMTA3MjkxMDExMQorCS5sb25nCTkxNjA1NzE0NworCS5sb25nCTEwMTgzNjQzMzUKKwkubG9uZwkxODI2Njk4MDY0CisJLmxvbmcJMTA3MjkyNjA1OAorCS5sb25nCTIxNzE5NjEwOTgKKwkubG9uZwkxMDE5NjY5ODE2CisJLmxvbmcJMTM1Mzk0MTA2MAorCS5sb25nCTEwNzI5NDA3NzQKKwkubG9uZwkxNzIyOTI4NzgyCisJLmxvbmcJMTAxOTkyNjIxNQorCS5sb25nCTE4MDMxOTE2NDQKKwkubG9uZwkxMDcyOTU0MzkxCisJLmxvbmcJMTU0Nzg3ODYzOQorCS5sb25nCTEwMjAyNTkyNjIKKwkubG9uZwkxMDkyNTkxMjk2CisJLmxvbmcJMTA3Mjk2NzAyNAorCS5sb25nCTMwNzAxMDc5MjMKKwkubG9uZwkxMDE4MzIwNDAxCisJLmxvbmcJMjIwNTM3MjgzMgorCS5sb25nCTEwNzI5Nzg3NzIKKwkubG9uZwk3ODczMjgxOTYKKwkubG9uZwkxMDE0NjIxMzUxCisJLmxvbmcJMTI5MTU3NzEwMAorCS5sb25nCTEwNzI5ODk3MjMKKwkubG9uZwkyOTY0NzU3MzAxCisJLmxvbmcJMTAyMDI0MjUyOAorCS5sb25nCTQyMzQ1MTI4MDQKKwkubG9uZwkxMDcyOTk5OTUyCisJLmxvbmcJMzEzNjAzMDAzOAorCS5sb25nCTEwMTc1MjIxNDQKKwkubG9uZwkzMjQ4MDY5MTMyCisJLmxvbmcJMTA3MzAwOTUyOAorCS5sb25nCTE1MDYxOTIzNTUKKwkubG9uZwkxMDE4MDUwNDcyCisJLmxvbmcJMzkzMjYyODUwMAorCS5sb25nCTEwNzMwMTg1MDkKKwkubG9uZwkxMDQ1ODIzNTU0CisJLmxvbmcJMTAxOTk0NjY1NQorCS5sb25nCTQxOTU2OTc4NDgKKwkubG9uZwkxMDczMDI2OTQ4CisJLmxvbmcJMjMzNDQzMzIyCisJLmxvbmcJMTAxODkxNzQ0NworCS5sb25nCTI1MDE4MTE0NTIKKwkubG9uZwkxMDczMDM0ODkyCisJLmxvbmcJOTAxNDI3OTc2CisJLmxvbmcJMTAxNzMzMzg1MgorCS5sb25nCTg2NjM3OTQyOAorCS5sb25nCTEwNzMwNDk0NTUKKwkubG9uZwkyNDM3NDQzNzQyCisJLmxvbmcJMTAxOTY3ODc5MgorCS5sb25nCTEzNzY4NjU4ODgKKwkubG9uZwkxMDczMDYyNDgwCisJLmxvbmcJMzM2NTc5MDIzMgorCS5sb25nCTEwMTQ1NDcxNTIKKwkubG9uZwkzMjkwMDk0MjY4CisJLmxvbmcJMTA3MzA3NDE5NQorCS5sb25nCTM4OTg5NDc0MTUKKwkubG9uZwkxMDE4NjgzNTY2CisJLmxvbmcJMzU0NzY0ODg0CisJLmxvbmcJMTA3MzA4NDc4NworCS5sb25nCTM4NTQzMjI0MDQKKwkubG9uZwkxMDE5NjYyMDU4CisJLmxvbmcJMzMzMjk3NTQ5NgorCS5sb25nCTEwNzMwOTQ0MDYKKwkubG9uZwkzMTcxNzAxNjU1CisJLmxvbmcJMTAxNzgzMDkyMgorCS5sb25nCTExNDE0NjAwODgKKwkubG9uZwkxMDczMTAzMTgxCisJLmxvbmcJMzk0NjA4MjcwMQorCS5sb25nCTEwMjAwMzIwMTkKKwkubG9uZwk3NDU3NjEyODQKKwkubG9uZwkxMDczMTExMjE2CisJLmxvbmcJMTM0NzIxMDU5MQorCS5sb25nCTEwMTkxMDYxMjEKKwkubG9uZwkxNjczMzA0NTA4CisJLmxvbmcJMTA3MzExODYwMAorCS5sb25nCTE3NjA2MDY2NDIKKwkubG9uZwkxMDE3MzI0NTc3CisJLmxvbmcJOTgzMzg4MjQwCisJLmxvbmcJMTA3MzEyNTQwOQorCS5sb25nCTM3NDA2NTEyMDQKKwkubG9uZwkxMDE5NTE0MTA0CisJLmxvbmcJMzg5NTUwOTEwMAorCS5sb25nCTEwNzMxMzE3MDYKKwkubG9uZwkyNDA5NjI5OTgzCisJLmxvbmcJMTAyMDA2OTMyMgorCS5sb25nCTIxMjg1MjM2NjgKKwkubG9uZwkxMDczMTM3NTQ4CisJLmxvbmcJMzA0NTYwNTM2OAorCS5sb25nCTEwMTg1NzkxNzQKKwkubG9uZwkyMDc1NDg1NjkyCisJLmxvbmcJMTA3MzE0Mjk4MQorCS5sb25nCTM3MjA1NzE3ODkKKwkubG9uZwkxMDE3NTU3NDM2CisJLmxvbmcJMTIxODU1OTc2CisJLmxvbmcJMTA3MzE0ODA0NworCS5sb25nCTIzOTE3NDQ3NjcKKwkubG9uZwkxMDIwMTYwNjQ1CisJLmxvbmcJNDE4MTczMzc4MAorCS5sb25nCTEwNzMxNTI3ODAKKwkubG9uZwk5OTUwMjg4MTYKKwkubG9uZwkxMDE5NjgxMjk1CisJLmxvbmcJMjg4NzgxMzI4MAorCS5sb25nCTEwNzMxNTcyMTQKKwkubG9uZwkyMTg3MzMyNDcKKwkubG9uZwkxMDIwMDAzNTA5CisJLmxvbmcJMjg2MjE4MDg5NgorCS5sb25nCTEwNzMxNjEzNzUKKwkubG9uZwkyMDQzODA2NDkwCisJLmxvbmcJMTAxODYwMjI4OAorCS5sb25nCTM5MDkzNzUxODQKKwkubG9uZwkxMDczMTY4OTczCisJLmxvbmcJMTU1OTkwMzQxMgorCS5sb25nCTEwMjAxMDM0NDQKKwkubG9uZwkzNTMzOTY2MjkyCisJLmxvbmcJMTA3MzE3NTczOAorCS5sb25nCTczNDg4NDE0OQorCS5sb25nCTEwMTg0NjI5NjIKKwkubG9uZwkzODE1MDQ0NjA4CisJLmxvbmcJMTA3MzE4MTc5OQorCS5sb25nCTM2MzA1MjM0MjgKKwkubG9uZwkxMDE3MjUwMDkzCisJLmxvbmcJNzM5NjM5Mzc2CisJLmxvbmcJMTA3MzE4NzI2MQorCS5sb25nCTQxNjc0NzY2NjEKKwkubG9uZwkxMDIwMDA4Mjc3CisJLmxvbmcJMTA2ODMwOTY0OAorCS5sb25nCTEwNzMxOTIyMDcKKwkubG9uZwkyMTEwMDYxNDM3CisJLmxvbmcJMTAxOTI5NTg1OAorCS5sb25nCTIzNTA1NjYzNTIKKwkubG9uZwkxMDczMTk2NzA3CisJLmxvbmcJNTgyNTk2NTE2CisJLmxvbmcJMTAxODU2ODgyMQorCS5sb25nCTI1Mjk1MjAwMjQKKwkubG9uZwkxMDczMjAwODE5CisJLmxvbmcJNzQ1NTUyNzg3CisJLmxvbmcJMTAxOTA1MzE2NQorCS5sb25nCTE4NDE2Njc1MDgKKwkubG9uZwkxMDczMjA0NTkxCisJLmxvbmcJMzk4MjU2ODcwMAorCS5sb25nCTEwMTY1MDMzMjcKKwkubG9uZwkyMjQyMjYxMDgwCisJLmxvbmcJMTA3MzIwODA2MworCS5sb25nCTM0MzM1ODIyNTgKKwkubG9uZwkxMDE2MTk2NzYzCisJLmxvbmcJNzE1MTM0MzI4CisJLmxvbmcJMTA3MzIxMTI3MAorCS5sb25nCTM1NTkwMTM1OAorCS5sb25nCTEwMjAwODc5MTYKKwkubG9uZwkyNzAwNzM1ODc2CisJLmxvbmcJMTA3MzIxNDI0MAorCS5sb25nCTM2NDA5NTc3MzYKKwkubG9uZwkxMDE5NzgwMjA1CisJLmxvbmcJMTQxNjA3NTgwCisJLmxvbmcJMTA3MzIxNzAwMAorCS5sb25nCTI0ODgyNDUwNTEKKwkubG9uZwkxMDIwMjYyMzk1CisJLmxvbmcJMjg3OTM0NDA0CisJLmxvbmcJMTA3MzIxOTU3MAorCS5sb25nCTIzOTI2OTEwODUKKwkubG9uZwkxMDE5ODgzMjkyCisJLmxvbmcJMjM2MzM3Mzk4OAorCS5sb25nCTEwNzMyMjE5NjkKKwkubG9uZwk0MTk0NTYxNzM3CisJLmxvbmcJMTAxOTIzNzQ0NworCS5sb25nCTM4MjkzNDA0MjQKKwkubG9uZwkxMDczMjI0MjE0CisJLmxvbmcJNDI5NDU1NTI2CisJLmxvbmcJMTAxOTQ5MDk3NQorCS5sb25nCTE5ODg4MDU5MjgKKwkubG9uZwkxMDczMjI2MzIwCisJLmxvbmcJMzAyOTg0ODcwNgorCS5sb25nCTEwMTgxMDQ4ODkKKwkubG9uZwkxNjQ3NTcyMzIwCisJLmxvbmcJMTA3MzIzMDE2MQorCS5sb25nCTEwMjg5OTM4CisJLmxvbmcJMTAxNzM5NDg4MAorCS5sb25nCTM5ODgwMDA2MjQKKwkubG9uZwkxMDczMjMzNTc2CisJLmxvbmcJMTk1NzU1OTE2OQorCS5sb25nCTEwMTk0MzQ4MTYKKwkubG9uZwk0MjYzODQzOTQ0CisJLmxvbmcJMTA3MzIzNjYzMworCS5sb25nCTIwNDcxMDI2NAorCS5sb25nCTEwMTk5MDg3NjEKKwkubG9uZwk2NjMxOTc3MjQKKwkubG9uZwkxMDczMjM5Mzg2CisJLmxvbmcJMTkyMTc1NzU3OAorCS5sb25nCTEwMTk3Nzg5NDgKKwkubG9uZwkzNTYwODAwNzAwCisJLmxvbmcJMTA3MzI0MTg3NgorCS5sb25nCTM5OTQzNDg4OTYKKwkubG9uZwkxMDE5MjMwMTkyCisJLmxvbmcJMjQ0MTc4NTY1NgorCS5sb25nCTEwNzMyNDQxNDEKKwkubG9uZwk4NzE0Njg2MTEKKwkubG9uZwkxMDE0ODAwNTA1CisJLmxvbmcJMzI3NzQwMDI3MgorCS5sb25nCTEwNzMyNDYyMDkKKwkubG9uZwk0MDkyMjE4MTM5CisJLmxvbmcJMTAyMDA0MDg0MgorCS5sb25nCTM5NTE5OTAxMjAKKwkubG9uZwkxMDczMjQ4MTA1CisJLmxvbmcJNDI3NjU0NjQ3OAorCS5sb25nCTEwMTk3NjM2NzcKKwkubG9uZwkyNzM3MzM4NTQwCisJLmxvbmcJMTA3MzI0OTg1MAorCS5sb25nCTI1Mjc3NjAxMgorCS5sb25nCTEwMTg3OTQ5NTEKKwkubG9uZwkxNTExMzYxMzE2CisJLmxvbmcJMTA3MzI1MTQ2MQorCS5sb25nCTMxMTk2NTM5OTkKKwkubG9uZwkxMDE4NTE0ODAzCisJLmxvbmcJMzk2OTE2MjUxNgorCS5sb25nCTEwNzMyNTI5NTIKKwkubG9uZwkxMDM3MDY5MDE2CisJLmxvbmcJMTAxNjc5MjkwMAorCS5sb25nCTQxMzk4NTI0MAorCS5sb25nCTEwNzMyNTQzMzgKKwkubG9uZwk0MTEwMTcxNDMyCisJLmxvbmcJMTAyMDAwMTM0NQorCS5sb25nCTM2ODEyODM1NzYKKwkubG9uZwkxMDczMjU1NjI3CisJLmxvbmcJMTQ2MzA5MjgxOAorCS5sb25nCTEwMjAyNjAzNTQKKwkubG9uZwkzMTQ2NDU1NDg4CisJLmxvbmcJMTA3MzI1NjgzMQorCS5sb25nCTEwMzEyMDkxMjMKKwkubG9uZwkxMDE2NTU0Nzk5CisJLmxvbmcJOTUyMTQ1MTIKKwkubG9uZwkxMDczMjU3OTU4CisJLmxvbmcJMTM3MzgwODYzMgorCS5sb25nCTEwMTk0OTMwMzEKKwkubG9uZwk0MjUwMjQwODI4CisJLmxvbmcJMTA3MzI1OTAxMworCS5sb25nCTM4OTEwNDc4ODIKKwkubG9uZwkxMDIwMTA4NzMwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE1MTI5NjM4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTMyMjE4MjM5OTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkzMTY0NzEwNDM4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNzIyNjc5MAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDc0MzQwMzQ3CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMzE2NDcxMDQzOAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkzMjIxODIzOTk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIwMDYyNjI5ODUKKwkubG9uZwkxMDY5MzEwODYzCisJLmxvbmcJMjM1ODQ0OTQ3MQorCS5sb25nCTMyMTczNDIxMzEKKwkubG9uZwkzODQ1NDU0MzUyCisJLmxvbmcJMTA2OTk1MjI5NworCS5sb25nCTI4Mjk2NzkxNDkKKwkubG9uZwkxMDczNzcxNTY1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDg1MzIyMjMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTMwMzY0OTI4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMzAyNAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfY29zaC5TIGIvbGlibS94ODYvZV9jb3NoLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWNlYThmNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2VfY29zaC5TCkBAIC0wLDAgKzEsMTM0OSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICBjb3NoKHgpPShleHAoeCkrZXhwKC14KSkvMgorLy8KKy8vICBMZXQgfHh8PXhIK3hMICh1cHBlciAyNiBiaXRzLCBsb3dlciAyNyBiaXRzKQorLy8gIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vICBMZXQgeEgqTDJFSD1rK2YrcmAsIHdoZXJlIChrK2YpKjJeNz1pbnQoeEgqTDJFSCoyXjcpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI3LCBrIGludGVnZXIKKy8vICAyXmYgaXMgYXBwcm94aW1hdGVkIGFzIFRwW2ZdK0RwW2ZdLCBhbmQgMl57LWZ9IGFzIFRuW2ZdK0RuW2ZdCisvLyAgVHAgc3RvcmVzIGhpZ2hlciA1MyBiaXRzLCBEcCBzdG9yZXMgKDJeZi1UcFtmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIGVefHh8PTJee2srZn0qMl5yLCByPXJgK3hMKkwyRUgrfHh8KkwyRUwsIHxyfDwyXnstOH0rMl57LTE0fSwKKy8vICAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsxLzgsMyoyXjgpCisvLyAgZV57LXx4fH09Ml57LWstZn0qMl57LXJ9CisvLworLy8gIGVefHh8IGlzIGFwcHJveGltYXRlZCBhcyAyXmsqVHArMl5rKlRwKmMxKnIoMStjMipyKy4uK2M1KnJeNCkrMl5rKkRwPQorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICA9Ml5rKlRwKzJeaypUcCpQMTUrMl5rKkRwCisvLyAgZV57LXx4fH0gYXBwcm94aW1hdGVkIGFzIDJeey1rfSpUbi0yXnsta30qVG4qYzEqcigxLWMyKnIrLi4rYzUqcl40KQorLy8KKy8vICBGb3IgfHh8IGluIFsxLzgsIDMqMl43KSwgY29zaCh4KSBpcyBmb3JtZWQgYXMKKy8vICAgUk4oMl5rKlRwKzJeey1rfSpUbikrMl5rKlRwKlAxNSsyXnsta30qVG4qUGAxNSsyXnsta30qVG5MKzJeey1rfSpEbisyXmsqRHAKKy8vCisvLyAgRm9yIHx4fCBpbiBbMyoyXjcsIDMqMl44KSwgKGVefHh8KS8yIGlzIHJldHVybmVkLCBhbmQKKy8vICB0aGUgcmVzdWx0IGlzIGNoZWNrZWQgZm9yIG92ZXJmbG93LgorLy8KKy8vICBGb3IgfHh8PDEvOCwgYSBUYXlsb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgdXNlZCAoZGVncmVlIDEwKQorLy8gIChlcnJvciBib3VuZCBmb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgYmVsb3cgMC41MDEgdWxwKQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY29zaChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjb3NoKElORikgPSB0aGF0IElORgorLy8gIGNvc2goMCk9MQorLy8gIGZvciBmaW5pdGUgYXJndW1lbnQsIG9ubHkgY29zaCgwKT0xIGlzIGV4YWN0CisvLyAgRm9yIElFRUUgZG91YmxlCisvLyAgY29zaCh4KSBvdmVyZmxvd3MKKy8vICBmb3IgeCA+IDcxMC40NzU4NjAwNzM5NDM4NjM0MjYzOTMzNjM2MjQ4MTExNzI0ODUzNTE1NjI1MCA9IE1BWExPRytsb2coMikKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBjb3NoCitFTlRSWShjb3NoKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQwKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgNDI0MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNDE5MiglZWJ4KSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDQyMDAoJWVieCksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNDA5NiglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjMyMCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDIwMCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNDExMiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNDEyOCglZWJ4KSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDMyNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDQxNDQoJWVieCksICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxMjcsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQzLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMTg0LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNSwgJXhtbTUKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgcHN1YncgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgKCVlYngsJWVkeCw4KSwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIDIwNDgoJWVieCwlZWR4LDgpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDQxNjAoJWVieCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgNDE3NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaHVmcGQgICAgJDAsICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYzMjAsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjMyMCwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNTk1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgNDI0OCglZWJ4KSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICglZWJ4LCVlZHgsOCksICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgNDE2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIDQxNzYoJWVieCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkNjQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92YXBkICAgIDQyMDgoJWVieCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDQyMjQoJWVieCksICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdnNkICAgICA0MjQ4KCVlYngpLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDY0LCAlZWR4CisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMjQoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChjb3NoKQorIyAtLSBFbmQgIGNvc2gKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGNvc2hsLCBjb3NoKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MjcwNDY2NgorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYxNTU5MTcxCisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzI3MTA0MjEKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYzNTk1NTQ4CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzI3MTYyMDgKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNTkwMzIwMgorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzI3MjIwMjcKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MzMyODk5MQorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzI3Mjc4NzcKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMzAyNDQ0NgorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcyNzM5NjcyCisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTY2MzY5NzQKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcyNzQ1NjE4CisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNjA3ODA0NAorCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzI3NTE1OTYKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDEwODQyMTM1CisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzI3NTc2MDYKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MTE2ODg3NworCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcyNzYzNjQ5CisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mzk5NzQ1NgorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcyNzY5NzI1CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTk0NzEzODAKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3Mjc3NTgzNAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYzNzYyNjIzCisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzI3ODE5NzYKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNTE2OTEzMAorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcyNzk0MzYxCisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjM2MjM0NTkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MjgwMDYwMworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE1OTYyNDQ0CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MjgxMzE5MQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNjk4ODAxNAorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzI4MTk1MzYKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjM2NzY1NjgKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MjgyNTkxNQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE1OTI0NTk3CisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzI4MzIzMjkKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNTE5NjAzMAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcyODM4Nzc4CisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTY3MDUxNTAKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzI4NTE3ODEKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNTIwMTA3NQorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3Mjg5MTY0NgorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE1NDc3MzU0CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzI4OTg0MTYKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNTcxNzA5NQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MjkxMjA2OQorCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYzMjQ5OTAyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MjkxODk1MQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYzOTYyMDkwCisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzI5MjU4NzAKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2NDUwOTU4MQorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzI5MzI4MjcKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MTg0Mjc0MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcyOTQ2ODU0CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNTczMjc0NQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3Mjk1MzkyNQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTY0MDY1ODI3CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzI5NzUzNjgKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTEzOTEzNTQKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3Mjk4MjU5MworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE2ODk0NTM5CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcyOTk3MTYyCisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTY3MTIwMzQKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MzAwNDUwNgorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDE0ODQyMjYzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MzAyNjc3OAorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYzNTE4NTk3CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzMwMzQyODMKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYyNTM2NjM4CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzMwNDE4MjgKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MzM4Mzk2NAorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzMwNDk0MTUKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTY3MDc4ODQKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MzA3MjQyMgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDEwNTg0MzQ3CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MzA4MDE3NQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTY4MzM3ODUKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MzA4Nzk2OQorCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYzODA4MzIyCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDczMTExNjA4CisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjQzMjEyODkKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MzExOTU3MworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDEyOTM4OTI2CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDczMTQzNzMwCisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjExNzc2NTgKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MzE1MTg2OQorCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjMwNDQ4NzkKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDczMjEwMDk5CisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTM5OTY4MDIKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MzIxODU5OQorCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYzNzE2NzQyCisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzMyMjcxNDUKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2NDQyNTI0NQorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDczMjM1NzM4CisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjMwODQ0MjAKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MzI0NDM3NworCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTY0NTg3NzY4CisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzMyNTMwNjMKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNjY5ODA1MAorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDczMjcwNTc4CisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MTUxMTI2MgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDczMjc5NDA2CisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTU0MDE0OTEKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDczMjk3MjA3CisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNjA4OTEzMzUKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MzMwNjE4MAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYxODY5MTgwCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzMzMTUyMDIKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2NDQxMTk5NQorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MzMzMzM5MworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDE0NzkxMjM4CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MzM0MjU2MworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDE0NTA2Njk4CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzMzNTE3ODIKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2Mzc3MzI1NworCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MzM3MDM3MQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTY0NDE3OTAyCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MzM3OTc0MgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE2ODQzMTM0CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzMzODkxNjMKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE2MTM0MzQ1CisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzMzOTg2MzUKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MzUyNTY4NAorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDczNDA4MTU5CisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNjU3MDMxNworCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzM0MTc3MzUKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2NDMzMTc2NQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MzQ1NjU2MAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjQ1MzYwMTkKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MzQ2NjM5OAorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE1MTY4NDY0CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDczNDg2MjM1CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTUwOTEzMDEKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MzQ5NjIzNQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE2ODA4NzU5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MzUwNjI4OQorCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE2MjM2MTA5CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzM1MTYzOTcKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxNDA4Mjc0OAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzM1NDcwNTMKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2NDM4ODQwNworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDczNTY3NzY4CisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTUyMTMzMTQKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDczNTc4MjExCisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjM2MjcyMDEKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDczNTk5MjY1CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTYyNTcxMTEKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDczNjA5ODc5CisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjM2NjE3NzMKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MzYzMTI3OAorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE1MjU4NzYxCisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzM2NDIwNjUKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNjI1NTc3OAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDczNjc0Nzc5CisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTY5NzMzMDAKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDczNjg1ODAzCisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTYzMDgxMzMKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MzY5Njg4NgorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTY3MTQyMDkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MzcwODAyOQorCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTY0NDUzNjUwCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzM3MTkyMzMKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNTQ5ODgzNQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDcyNjgxOTIyCisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTIwNjcxODgKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MjY3MDY1NworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE0NDUwMjU5CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzI2MzcyMjcKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNTI1OTU1NworCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDcyNjI2MjAzCisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTU5MjQ3MjQKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDcyNjE1MjQwCisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjMzMjk1MjMKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MjYwNDMzNQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjM0NjI2OTEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzI1NzE5NzQKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2MzAxMDU5OQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDcyNTUwNjg5CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTUyMDg1MzUKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzI1NDAxMzQKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNTgxNjk2MAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDcyNTE5MTkyCisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTQxNjQ3MzgKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDcyNTA4ODA3CisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjMzNzU3MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MjQ5ODQ3NworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTYzMzM5ODMxCisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzI0ODgyMDMKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MjM2Mzk2MworCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDcyNDc3OTg0CisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTMyNTMwNjcKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MjQ1NzcxMworCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE1MTg3NTMzCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzI0NDc2NTkKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNTc2MDE4MworCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDcyNDM3NjU5CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTQwNDI3MjUKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MjQyNzcxNAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTYzNDg3NjkwCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzI0MDc5ODQKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTYzNDg3NDQzCisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzIzOTgxOTgKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MDc1ODM1MQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDcyMzg4NDY2CisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjMzMjA3OTkKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MjM3ODc4NgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNTk1MjM0MjIKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MjMzMTE2NgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE1Nzk0NTU4CisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzIzMjE3OTUKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2MzM2OTMyNgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDcyMzEyNDc1CisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTU0MjcxNjQKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MjI5Mzk4NworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDEzNDU4MTIyCisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzIyODQ4MTcKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxMzc0MjY2MgorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDcyMjc1Njk3CisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjI2MDAzODEKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzIyNTc2MDQKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MDgyMDYwNAorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDcyMjQ4NjMxCisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNTk4NDI3NTkKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDcyMjM5NzA3CisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2MzQxMjA4OQorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDcyMjIyMDAyCisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MDQ2MjY4NgorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDcyMjEzMjIxCisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTU0NzQ2NzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzIxOTU4MDEKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2MzUzOTE5MgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDcyMTg3MTYyCisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjIwMzU4NDQKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzIxNjE1MjMKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMjk0ODIyNgorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MjE1MzA2OQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE2MDA5MjkyCisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzIxNDQ2NjAKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2MTcyNDI3OQorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDcyMTM2Mjk3CisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNTU3MjE1MgorCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDcyMTI3OTc5CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjI1MTQ1MjEKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MjExOTcwNgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYyNTQ4NDQxCisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzIxMTE0NzcKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MTU1MDQwNworCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDcyMDk1MTU0CisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjAxMjkwODIKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MjA4NzA1OAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYwNTc0Mjk0CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDcyMDYzMDMyCisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjMyNzI3MTMKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDcyMDU1MTEwCisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjIyNjE1NjQKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MjA0NzIzMAorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYyNzM1NTUzCisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzIwMjM4NDYKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAwOTUzNTc3MQorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDcyMDE2MTM1CisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE1NDI3NjYwCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzIwMDg0NjYKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNDE0MjQzMworCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzE5NzgyMDIKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MjQ3MDAyMQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDcxOTcwNzM4CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjI4MTMxOTMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MTk2MzMxNAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE1NjA2NDkxCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcxOTQ4NTg2CisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTU2NjM0NTgKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3MTk0MTI4MgorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDEzMTcwNTk1CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcxOTI2NzkyCisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDEwMzQyNzc4CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzE5MTk2MDUKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MTU3MzM0MQorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzE5MTI0NTgKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTU5MjkwNzI5CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3MTg5ODI3OAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTQ2ODQxNjkKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MTg5MTI0NQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjM0ODgyNDgKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzE4NjM0OTMKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MjIwMTMyNgorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcxODU2NjQ4CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTUyMjgxOTMKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3MTg0MzA3MAorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE0NDI4Nzc4CisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzE4MzYzMzUKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxMzA0MTY3OQorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcxODI5NjM3CisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTUwMjIxNTEKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3MTgyMjk3NQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU3MzMwNjUyCisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzE4MTYzNDkKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNDM3MTA0OAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcxODA5NzU5CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjMxODAwOTAKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3MTgwMzIwNQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE0MTUyNDk5CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzE3OTY2ODYKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNDY3Nzg0NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MTc4Mzc1MworCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE0MTQ3NDU0CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzE3NzA5NjAKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjI2Mjc5OTIKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcxNzY0NjE1CisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE1OTM5NDM4CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzE3NTgzMDQKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTYzMTE2NDIyCisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzE3NDU3ODUKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MjU3NDg4MworCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcxNzM5NTc2CisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjE1NTkxMDUKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3MTcxNTA3MworCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjI5NDg4ODAKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3MTcwMzAyMAorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMDk3OTM1NTkKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcxNjk3MDQyCisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNTAyOTQ2OAorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcxNjkxMDk2CisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTU1ODgzOTgKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MTY4NTE4MgorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTUxMDU2NTYKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcxNjUwMzY1CisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTU3NjczMzcKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkzMjc1MjI3MTM2CisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTEwNDQxNDY5NTIKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMzE5MTYzMDYwMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDYzNjYxMTIyCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTExNDQ3NzAKKwkubG9uZwkyMTQwMTc1NzU1CisJLmxvbmcJMTAzMzg2NDI2MQorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJNDI4OTQ5NTk4OAorCS5sb25nCTEwNTQxMTM3NDcKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDY0NzA5Njk4CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTIxOTMzNDYKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA4MDQ5NzQ3OQorCS5sb25nCTQxNjY5MDE1NzIKKwkubG9uZwkxMDUzMDc3MDAzCisJLmxvbmcJMzA3ODEzNTY0NAorCS5sb25nCTEwNDk3ODc5ODMKKwkubG9uZwkzODE3NzQ4NzAKKwkubG9uZwkxMDYyNjUwMjIwCisJLmxvbmcJNDM2MzE0MTM3CisJLmxvbmcJMTA1NjU3MTgwOAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDQyNTYKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2V4cC5TIGIvbGlibS94ODYvZV9leHAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYWI2MTlkCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9leHAuUwpAQCAtMCwwICsxLDU3NiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIERlc2NyaXB0aW9uOgorLy8gIExldCBLID0gNjQgKHRhYmxlIHNpemUpLgorLy8gICAgICAgIHggICAgeC9sb2coMikgICAgIG4KKy8vICAgICAgIGUgID0gMiAgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKQorLy8gIHdoZXJlCisvLyAgICAgICB4ID0gbSpsb2coMikvSyArIHksICAgIHkgaW4gWy1sb2coMikvSy4ubG9nKDIpL0tdCisvLyAgICAgICBtID0gbipLICsgaiwgICAgICAgICAgIG0sbixqIC0gc2lnbmVkIGludGVnZXIsIGogaW4gWy1LLzIuLksvMl0KKy8vICAgICAgICAgICAgICAgICAgai9LCisvLyAgICAgICB2YWx1ZXMgb2YgMiAgIGFyZSB0YWJ1bGF0ZWQgYXMgVFtqXSA9IFRfaGlbal0gKCAxICsgVF9sb1tqXSkuCisvLworLy8gICAgICAgUCh5KSBpcyBhIG1pbmltYXggcG9seW5vbWlhbCBhcHByb3hpbWF0aW9uIG9mIGV4cCh4KS0xCisvLyAgICAgICBvbiBzbWFsbCBpbnRlcnZhbCBbLWxvZygyKS9LLi5sb2coMikvS10gKHdlcmUgY2FsY3VsYXRlZCBieSBNYXBsZSBWKS4KKy8vCisvLyAgVG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBhcml0aG1ldGljIG92ZXJmbG93IGFuZCB1bmRlcmZsb3csCisvLyAgICAgICAgICAgIG4gICAgICAgICAgICAgICAgICAgICAgICBuMSAgbjIKKy8vICB2YWx1ZSBvZiAyICBpcyBzYWZlbHkgY29tcHV0ZWQgYXMgMiAqIDIgd2hlcmUgbjEgaW4gWy1CSUFTLzIuLkJJQVMvMl0KKy8vICB3aGVyZSBCSUFTIGlzIGEgdmFsdWUgb2YgZXhwb25lbnQgYmlhcy4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGV4cChOYU4pID0gTmFOCisvLyAgZXhwKCtJTkYpID0gK0lORgorLy8gIGV4cCgtSU5GKSA9IDAKKy8vICBleHAoeCkgPSAxIGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBleHAoMCk9MSBpcyBleGFjdAorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgaWYgeCA+ICA3MDkuNzgyNzEyODkzMzgzOTczMDk2IHRoZW4gZXhwKHgpIG92ZXJmbG93CisvLyAgICBpZiB4IDwgLTc0NS4xMzMyMTkxMDE5NDExMDg0MjAgdGhlbiBleHAoeCkgdW5kZXJmbG93CisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgZXhwCitFTlRSWShleHApCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNjQoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDY0KCVlYngpLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgNDgoJWVieCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICA4MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDk2KCVlYngpLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxNjUyNywgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE1NTA0LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTI4KCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAxNDQoJWVieCksICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkcWEgICAgMTYoJWVieCksICV4bW02CisgICAgICAgIHBhbmQgICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92ZHFhICAgIDMyKCVlYngpLCAleG1tNgorICAgICAgICBwYWRkcSAgICAgJXhtbTYsICV4bW03CisgICAgICAgIHBzbGxxICAgICAkNDYsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2MCglZWJ4LCVlY3gpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHBkICAgICAxMTIoJWVieCksICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW0yLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW03LCAleG1tMgorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRsICAgICAgJDg5NCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE5MTYsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBmc3RjdyAgICAgMjQoJWVzcCkKKyAgICAgICAgbW92endsICAgIDI0KCVlc3ApLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAkNzY4LCAlZWR4CisgICAgICAgIG1vdncgICAgICAlZHgsIDI4KCVlc3ApCisgICAgICAgIGZsZGN3ICAgICAyOCglZXNwKQorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzYXJsICAgICAgJDEsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgbW92ZHFhICAgICglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGFuZG4gICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW0zCisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkbCAgICAgICQxMDIzLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBwc2xscSAgICAgJDUyLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDgoJWVzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW02LCAxNiglZXNwKQorICAgICAgICBmbGRsICAgICAgMTYoJWVzcCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTQsIDgoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDgoJWVzcCkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICA4KCVlc3ApCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBmbGRjdyAgICAgMjQoJWVzcCkKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGNtcGwgICAgICAkLTEwNjQ5NTA5OTcsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtb3ZsICAgICAgMTI4KCVlc3ApLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkLTE3MTU1NjAxLCAlZWR4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDE0LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMTUsICVlZHgKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgbW92bCAgICAgIDEzMiglZXNwKSwgJWVheAorICAgICAgICBjbXBsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorICAgICAgICBtb3ZzZCAgICAgMTIwOCglZWJ4KSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE0LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMjE2KCVlYngpLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTUsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDEyOCglZXNwKSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdnNkICAgICAxMTkyKCVlYngpLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzExLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDEyMDAoJWVieCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdmwgICAgICAxMzIoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTA4MzE3OTAwOCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgIDExODQoJWVieCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgNDgoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDQ4KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDY0KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChleHApCisjIC0tIEVuZCAgZXhwCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChleHBsLCBleHApOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLmxvbmcJNDI5NDk2NzIzMgorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjMyCisJLmxvbmcJMAorCS5sb25nCTY1NDcyCisJLmxvbmcJMAorCS5sb25nCTY1NDcyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTE2OTczNTAzOTgKKwkubG9uZwkxMDc5NDQ4OTAzCisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwk0Mjc3Nzk2ODY0CisJLmxvbmcJMTA2NTc1ODI3NAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJMzE2NDQ4NjQ1OAorCS5sb25nCTEwMjUzMDg1NzAKKwkubG9uZwk0Mjk0OTY3Mjk0CisJLmxvbmcJMTA3MTY0NDY3MQorCS5sb25nCTQyOTQ5NjcyOTQKKwkubG9uZwkxMDcxNjQ0NjcxCisJLmxvbmcJMzgxMTA4ODQ4MAorCS5sb25nCTEwNjI2NTAyMDQKKwkubG9uZwkxNDMyMDY3NjIxCisJLmxvbmcJMTA2Nzc5OTg5MworCS5sb25nCTMyMzA3MTU2NjMKKwkubG9uZwkxMDY1NDIzMTI1CisJLmxvbmcJMTQzMTYwNDEyOQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjM1MTA3NjYxCisJLmxvbmcJMTAxODAwMjM2NworCS5sb25nCTEwNDgwMTkwNDAKKwkubG9uZwkxMTQxOAorCS5sb25nCTg5NjAwNTY1MQorCS5sb25nCTEwMTU4NjE4NDIKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMjI5NjAKKwkubG9uZwkxNjQyNTE0NTI5CisJLmxvbmcJMTAxMjk4NzcyNgorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTM0NjI5CisJLmxvbmcJMTU2ODg5NzkwMAorCS5sb25nCTEwMTY1Njg0ODYKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJNDY0MjQKKwkubG9uZwkxODgyMTY4NTI5CisJLmxvbmcJMTAxMDc0NDg5MworCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTU4MzQ4CisJLmxvbmcJNTA5ODUyODg4CisJLmxvbmcJMTAxNzMzNjE3NAorCS5sb25nCTM0OTA4NjM5NTIKKwkubG9uZwk3MDQwMQorCS5sb25nCTY1MzI3NzMwNworCS5sb25nCTEwMTc0MzEzODAKKwkubG9uZwkyOTMwMzIyOTExCisJLmxvbmcJODI1ODYKKwkubG9uZwkxNjQ5NTU3NDMwCisJLmxvbmcJMTAxNzcyOTM2MworCS5sb25nCTEwMTQ4NDU4MTgKKwkubG9uZwk5NDkwNAorCS5sb25nCTEwNTgyMzEyMzEKKwkubG9uZwkxMDE1Nzc3Njc2CisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzM1NQorCS5sb25nCTEwNDQwMDA2MDcKKwkubG9uZwkxMDE2Nzg2MTY3CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTE5OTQzCisJLmxvbmcJMTE1MTc3OTcyNQorCS5sb25nCTEwMTU3MDU0MDkKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTMyNjY3CisJLmxvbmcJMzgxOTQ4MTIzNgorCS5sb25nCTEwMTY0OTk5NjUKKwkubG9uZwkxODUzMTg2NjE2CisJLmxvbmcJMTQ1NTMwCisJLmxvbmcJMjU1MjIyNzgyNgorCS5sb25nCTEwMTUwMzk3ODcKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTU4NTMzCisJLmxvbmcJMTgyOTM1MDE5MworCS5sb25nCTEwMTUyMTYwOTcKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTcxNjc3CisJLmxvbmcJMTkxMzM5MTc5NQorCS5sb25nCTEwMTU3NTY2NzQKKwkubG9uZwkyNzk5OTYwODQzCisJLmxvbmcJMTg0OTY1CisJLmxvbmcJMTMwMzQyMzkyNgorCS5sb25nCTEwMTUyMzgwMDUKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxOTgzOTgKKwkubG9uZwkxNTc0MTcyNzQ2CisJLmxvbmcJMTAxNjA2MTI0MQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkyMTE5NzYKKwkubG9uZwkzNDI0MTU2OTY5CisJLmxvbmcJMTAxNzE5NjQyOAorCS5sb25nCTkyNjU5MTQzNAorCS5sb25nCTIyNTcwMworCS5sb25nCTE5Mzg1MTM1NDcKKwkubG9uZwkxMDE3NjMxMjczCisJLmxvbmcJODg3NDYzOTI2CisJLmxvbmcJMjM5NTc5CisJLmxvbmcJMjgwNDU2NzE0OQorCS5sb25nCTEwMTUzOTAwMjQKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMjUzNjA2CisJLmxvbmcJNjMxMDgzNTI1CisJLmxvbmcJMTAxNzY5MDE4MgorCS5sb25nCTU2OTg0NzMzNworCS5sb25nCTI2Nzc4NgorCS5sb25nCTE2MjMzNzA3NzAKKwkubG9uZwkxMDExMDQ5NDUzCisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTI4MjEyMAorCS5sb25nCTM2Njc5ODUyNzMKKwkubG9uZwkxMDEzODk0MzY5CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTI5NjYxMAorCS5sb25nCTMxNDUzNzk3NjAKKwkubG9uZwkxMDE0NDAzMjc4CisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTMxMTI1OAorCS5sb25nCTI2MDMxMDA2ODEKKwkubG9uZwkxMDE3MTUyNDYwCisJLmxvbmcJMTk5MDAxMjA3MAorCS5sb25nCTMyNjA2NgorCS5sb25nCTMyNDkyMDI5NTEKKwkubG9uZwkxMDE3NDQ4ODgwCisJLmxvbmcJMTQ1MzE1MDA4MQorCS5sb25nCTM0MTAzNQorCS5sb25nCTQxOTI4ODk3NAorCS5sb25nCTEwMTYyODAzMjUKKwkubG9uZwk5MTc4NDE4ODIKKwkubG9uZwkzNTYxNjcKKwkubG9uZwkzNzkzNTA3MzM3CisJLmxvbmcJMTAxNjA5NTcxMworCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkzNzE0NjMKKwkubG9uZwk3MjgwMjMwOTMKKwkubG9uZwkxMDE2MzQ1MzE4CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMzg2OTI3CisJLmxvbmcJMjU4MjY3ODUzOAorCS5sb25nCTEwMTcxMjM0NjAKKwkubG9uZwkyOTU2NjEyOTk2CisJLmxvbmcJNDAyNTU4CisJLmxvbmcJNzU5Mjk2NgorCS5sb25nCTEwMTY3MjE1NDMKKwkubG9uZwkyMTg2NjE3MzgwCisJLmxvbmcJNDE4MzYwCisJLmxvbmcJMjI4NjExNDQxCisJLmxvbmcJMTAxNjY5NjE0MQorCS5sb25nCTE3MTk2MTQ0MTIKKwkubG9uZwk0MzQzMzQKKwkubG9uZwkyMjYxNjY1NjcwCisJLmxvbmcJMTAxNzQ1NzU5MworCS5sb25nCTEwMTMyNTg3OTgKKwkubG9uZwk0NTA0ODIKKwkubG9uZwk1NDQxNDg5MDcKKwkubG9uZwkxMDE3MzIzNjY2CisJLmxvbmcJMzkwNzgwNTA0MworCS5sb25nCTQ2NjgwNQorCS5sb25nCTIzODM5MTQ5MTgKKwkubG9uZwkxMDE3MTQzNTg2CisJLmxvbmcJMTQ0NzE5MjUyMAorCS5sb25nCTQ4MzMwNworCS5sb25nCTExNzY0MTIwMzgKKwkubG9uZwkxMDE3MjY3MzcyCisJLmxvbmcJMTk0NDc4MTE5MAorCS5sb25nCTQ5OTk4OAorCS5sb25nCTI4ODI5NTYzNzMKKwkubG9uZwkxMDEzMzEyNDgxCisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJNTE2ODUxCisJLmxvbmcJMzE1NDA3NzY0OAorCS5sb25nCTEwMTY1Mjg1NDMKKwkubG9uZwkyNTcxOTQ3NTM4CisJLmxvbmcJNTMzODk3CisJLmxvbmcJMzQ4NjUxOTk5CisJLmxvbmcJMTAxNjQwNTc4MAorCS5sb25nCTI2MDQ5NjI1NDAKKwkubG9uZwk1NTExMjkKKwkubG9uZwkzMjUzNzkxNDEyCisJLmxvbmcJMTAxNTkyMDQzMQorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwk1Njg1NDkKKwkubG9uZwkxNTA5MTIxODYwCisJLmxvbmcJMTAxNDc1Njk5NQorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwk1ODYxNTgKKwkubG9uZwkyNjE3NjQ5MjEyCisJLmxvbmcJMTAxNzM0MDA5MAorCS5sb25nCTI5NjYyNzU1NTYKKwkubG9uZwk2MDM5NTkKKwkubG9uZwk1NTMyMTQ2MzQKKwkubG9uZwkxMDE2NDU3NDI1CisJLmxvbmcJMjY4MjE0NjM4MworCS5sb25nCTYyMTk1NAorCS5sb25nCTczMDk3NTc4MworCS5sb25nCTEwMTQwODM1ODAKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJNjQwMTQ1CisJLmxvbmcJMTQ4NjQ5OTUxNworCS5sb25nCTEwMTY4MTg5OTYKKwkubG9uZwkyMDY5NzUxMTQwCisJLmxvbmcJNjU4NTM0CisJLmxvbmcJMjU5NTc4ODkyOAorCS5sb25nCTEwMTY0MDc5MzIKKwkubG9uZwkyOTkwNDE3MjQ0CisJLmxvbmcJNjc3MTIzCisJLmxvbmcJMTg1MzA1MzYxOQorCS5sb25nCTEwMTUzMTA3MjQKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJNjk1OTE1CisJLmxvbmcJMjQ2Mjc5MDUzNQorCS5sb25nCTEwMTU4MTQ3NzUKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJNzE0OTExCisJLmxvbmcJMzY5Mzk0NDIxNAorCS5sb25nCTEwMTcyNTkxMTAKKwkubG9uZwkzMDkyMTkwNzE0CisJLmxvbmcJNzM0MTE0CisJLmxvbmcJMjk3OTMzMzU1MAorCS5sb25nCTEwMTcxODg2NTQKKwkubG9uZwk0MDc2NTU5OTQyCisJLmxvbmcJNzUzNTI2CisJLmxvbmcJMTc0MDU0ODYxCisJLmxvbmcJMTAxNDMwMDYzMQorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwk3NzMxNTAKKwkubG9uZwk4MTY3Nzg0MTkKKwkubG9uZwkxMDE0MTk3OTM0CisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTc5Mjk4NworCS5sb25nCTM1MDcwNTA5MjQKKwkubG9uZwkxMDE1MzQxMTk5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJODEzMDQxCisJLmxvbmcJMTgyMTUxNDA4OAorCS5sb25nCTEwMTM0MTA2MDQKKwkubG9uZwkzNzA2Njg3NTkzCisJLmxvbmcJODMzMzEyCisJLmxvbmcJOTIwNjIzNTM5CisJLmxvbmcJMTAxNjI5NTQzMworCS5sb25nCTEyNDIwMDc5MzEKKwkubG9uZwk4NTM4MDUKKwkubG9uZwkyNzg5MDE3NTExCisJLmxvbmcJMTAxNDI3Njk5NworCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwk4NzQ1MjAKKwkubG9uZwkzNTg2MjMzMDA0CisJLmxvbmcJMTAxNTk2MjE5MgorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJODk1NDYyCisJLmxvbmcJNDc0NjUwNTE0CisJLmxvbmcJMTAxNjY0MjQxOQorCS5sb25nCTg2MzczODcxOAorCS5sb25nCTkxNjYzMQorCS5sb25nCTE2MTQ0NDg4NTEKKwkubG9uZwkxMDE0MjgxNzMyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTkzODAzMAorCS5sb25nCTI0NTAwODIwODYKKwkubG9uZwkxMDE2MTY0MTM1CisJLmxvbmcJMjcyODY5Mzk3NworCS5sb25nCTk1OTY2MworCS5sb25nCTExMDE2NjgzNjAKKwkubG9uZwkxMDE1OTg5MTgwCisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTk4MTUzMQorCS5sb25nCTgzNTgxNDg5NAorCS5sb25nCTEwMTU3MDI2OTcKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTAwMzYzOAorCS5sb25nCTEzMDE0MDA5ODkKKwkubG9uZwkxMDE0NDY2ODc1CisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwMjU5ODUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NjQzNTA3MQorCS5sb25nCTAKKwkubG9uZwkxMDQ4NTc2CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMTIyNAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfaHlwb3QuUyBiL2xpYm0veDg2L2VfaHlwb3QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTE0M2U1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9oeXBvdC5TCkBAIC0wLDAgKzEsMjIwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gWDg3IHZlcnNpb246CisvLyBVc2UgODAtYml0IEZQVSBwcmVjaXNpb24gZm11bCwgZnNxcnQgdG8gY29tcHV0ZSBzcXVhcmUgYW5kIHNxcnQuCisvLworLy8gU1NFIHZlcnNpb246CisvLyBTd2FwIHgsIHkgaWYgfHh8PHx5fAorLy8gRm9yIHg9Ml5rKngsIGdldCB5PXkqMl4oLWspCisvLyBHZXQgUyB+IHNxcnQoeF4yK3leMikgIChsZWFkaW5nIDEgKyBsZWFkaW5nIDI1IG1hbnRpc3NhIGJpdHMpCisvLworLy8gR2V0IEQgPSAoIFJOKHheMit5XjIpIC0gU14yICkgKyAoIHheMiAtIFJOKHheMikgKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArICggeV4yIC0gKChSTih4XjIreV4yKS1STih4XjIpKSApCisvLworLy8gUmVzdWx0IGlzIDJeayooUyArIFNlKSwgIHdoZXJlIFNlID0gUyplCisvLyAgICAgICAgUyplIGlzIGFwcHJveGltYXRlZCBhcyAoRC8yUykqKCAxIC0gKEQvMlMpXjIqMS4wL1MgKQorLy8KKy8vIFJldHVybiAyXmsqKFMrU2UpCisvLworLy8gRm9yIHx5L3h8PDJeKC02NCksIHJldHVybiB4CisvLworLy8gRm9yIGNhc2VzIHdoZXJlIG1heGltdW0gYmlhc2VkIGV4cG9uZW50IGlzIGVpdGhlciBncmVhdGVyIHRoYW4gN2ZkaCBvcgorLy8gYmVsb3cgMzIsIHRha2UgYSBzcGVjaWFsIHBhdGggdG8gY2hlY2sgZm9yIHNwZWNpYWwgY2FzZXMgKDAsIE5hTiwgSW5mKSwKKy8vIHBvc3NpYmxlIG92ZXJmbG93LCBhbmQgbW9yZSBhY2N1cmF0ZSBjb21wdXRhdGlvbiBmb3IgZGVub3JtYWwgcmVzdWx0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgaHlwb3QoeCx5KSwgaHlwb3QoeSx4KSwgYW5kIGh5cG90KHgsLXkpIGFyZSBlcXVpdmFsZW50CisvLyAgaHlwb3QoeCwrLTApIGlzIGVxdWl2YWxlbnQgdG8gZmFicyh4KQorLy8gIGh5cG90KHgseSkgPSB5IGlmICh4PT1OYU4gb3IgeD09SU5GKSBhbmQgeT09SU5GCisvLyAgaHlwb3QoeCx5KSA9IHggaWYgKHg9PU5hTiBvciB4PT1JTkYpIGFuZCB5IT1JTkYgKGV2ZW4gaWYgeT09TmFOISkKKy8vICBoeXBvdCh4LHkpID0geSBpZiAoeCE9TmFOIGFuZCB4IT1JTkYpIGFuZCAoeT09TmFOIG9yIHk9PUlORikKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBoeXBvdAorRU5UUlkoaHlwb3QpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorIyBwYXJhbWV0ZXIgMjogMTYgKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTUyLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA5NiglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92YXBkICAgICglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgIDE2MCglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDE2OCglZXNwKSwgJXhtbTEKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDI0NTI4LCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBjbXBsICAgICAgJDI0NTI4LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIGZsZGwgICAgICAxNjAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDE2OCglZXNwKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMCksICVzdAorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIG5vcCAgICAgICAKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3FydCAgICAgCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGFkZGwgICAgICAkOTI4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTg1NiwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgY21wbCAgICAgICQ0OTA1NiwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgZmxkbCAgICAgIDE2MCglZXNwKQorICAgICAgICBmbGRsICAgICAgMTY4KCVlc3ApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgbm9wICAgICAgIAorICAgICAgICBmbXVsICAgICAgJXN0KDApLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzcXJ0ICAgICAKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBmc3RsICAgICAgKCVlc3ApCisgICAgICAgIGZzdHB0ICAgICAxNiglZXNwKQorICAgICAgICB4b3JsICAgICAgJWVheCwgJWVheAorICAgICAgICBtb3Z3ICAgICAgMjQoJWVzcCksICVheAorICAgICAgICBjbXBsICAgICAgJDE3NDA3LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMzIoJWVzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA0MCglZXNwKQorICAgICAgICBmbGRsICAgICAgMzIoJWVzcCkKKyAgICAgICAgZmFkZGwgICAgIDQwKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG1vdmwgICAgICAkNDYsICVlZHgKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYwKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTY4KCVlc3ApLCAleG1tMQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIHNodWZwZCAgICAkMCwgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmRxYSAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZHFhICAgIDE2KCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDMyKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgNDAoJWVzcCkKKyAgICAgICAgY21wcGQgICAgICQzLCAleG1tMCwgJXhtbTIKKyAgICAgICAgY21wcGQgICAgICQwLCAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92bXNrcGQgICV4bW0yLCAlZWR4CisgICAgICAgIG1vdm1za3BkICAleG1tMywgJWVheAorICAgICAgICB0ZXN0bCAgICAgJWVkeCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgZmxkbCAgICAgIDMyKCVlc3ApCisgICAgICAgIGZtdWxsICAgICA0MCglZXNwKQorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICB0ZXN0bCAgICAgJDIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBmbGRsICAgICAgMzIoJWVzcCkKKyAgICAgICAgZmFkZGwgICAgIDQwKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBmc3RwbCAgICAgNDAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDMyKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBmc3RwbCAgICAgMzIoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDQwKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDk2KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChoeXBvdCkKKyMgLS0gRW5kICBoeXBvdAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woaHlwb3RsLCBoeXBvdCk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMzIKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2xvZy5TIGIvbGlibS94ODYvZV9sb2cuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNjE4MWNhCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9sb2cuUwpAQCAtMCwwICsxLDc4MCBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIHg9Ml5rICogbXgsIG14IGluIFsxLDIpCisvLworLy8gICAgR2V0IEJ+MS9teCBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHJjcHNzIGluc3RydWN0aW9uIChCMCkKKy8vICAgIEIgPSBpbnQoKEIwKjJeNyswLjUpKS8yXjcKKy8vCisvLyAgICBSZWR1Y2VkIGFyZ3VtZW50OiByPUIqbXgtMS4wIChjb21wdXRlZCBhY2N1cmF0ZWx5IGluIGhpZ2ggYW5kIGxvdyBwYXJ0cykKKy8vCisvLyAgICBSZXN1bHQ6ICBrKmxvZygyKSAtIGxvZyhCKSArIHAocikgaWYgfHgtMXwgPj0gc21hbGwgdmFsdWUgKDJeLTYpICBhbmQKKy8vICAgICAgICAgICAgIHAocikgaXMgYSBkZWdyZWUgNyBwb2x5bm9taWFsCisvLyAgICAgICAgICAgICAtbG9nKEIpIHJlYWQgZnJvbSBkYXRhIHRhYmxlIChoaWdoLCBsb3cgcGFydHMpCisvLyAgICAgICAgICAgICBSZXN1bHQgaXMgZm9ybWVkIGZyb20gaGlnaCBhbmQgbG93IHBhcnRzCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBsb2coTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgbG9nKCtJTkYpID0gdGhhdCBJTkYKKy8vICBsb2coMCkgPSAtSU5GIHdpdGggZGl2aWRlLWJ5LXplcm8gZXhjZXB0aW9uIHJhaXNlZAorLy8gIGxvZygxKSA9ICswCisvLyAgbG9nKHgpID0gTmFOIHdpdGggaW52YWxpZCBleGNlcHRpb24gcmFpc2VkIGlmIHggPCAtMCwgaW5jbHVkaW5nIC1JTkYKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBsb2cKK0VOVFJZKGxvZykKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTA0LCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA0MCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlZWN4LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMjEyOCglZWJ4KSwgJXhtbTUKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDM0LCAleG1tMAorICAgICAgICByY3BzcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyMDY0KCVlYngpLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMjA4MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDE2NzExNjgwLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTIsICVlZHgKKyAgICAgICAgbW92YXBkICAgICglZWJ4LCVlZHgpLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMjA5NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMjExMiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgIDIwNzIoJWVieCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJC0yMDk3MTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMsICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDIsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMzQsICV4bW0wCisgICAgICAgIHJjcHNzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDI0KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAyNCglZXNwKQorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGxvZykKKyMgLS0gRW5kICBsb2cKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGxvZ2wsIGxvZyk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjY0ODcxMjcKKwkubG9uZwkyODU0NDkyMTYwCisJLmxvbmcJMTA3MjAzMzQxMAorCS5sb25nCTIxNTYzMTU1MAorCS5sb25nCTEwMjU2Mzg5NjgKKwkubG9uZwkxNTQ3MDYxMjQ4CisJLmxvbmcJMTA3MjAxNzIxNgorCS5sb25nCTI4ODY3ODE0MzUKKwkubG9uZwkxMDI2NDIzMzk1CisJLmxvbmcJNjQ5ODI1MjgwCisJLmxvbmcJMTA3MjAwMTE0NgorCS5sb25nCTQyODE1MzM0MDUKKwkubG9uZwkxMDI0MDM4OTIzCisJLmxvbmcJNjQ2MzQ2NzUyCisJLmxvbmcJMTA3MTk4NTE5OAorCS5sb25nCTE1NjI3MzU5MjEKKwkubG9uZwkxMDIzNzkwMjc2CisJLmxvbmcJMjIwMzczNDAxNgorCS5sb25nCTEwNzE5NjkzNzAKKwkubG9uZwkxODM4Mzk3NjkxCisJLmxvbmcJMzE3MzkzNjIwOQorCS5sb25nCTE4NzIxNjk5ODQKKwkubG9uZwkxMDcxOTUzNjYxCisJLmxvbmcJMzk4MTIwMjQ2MAorCS5sb25nCTEwMjIzMjUwMTMKKwkubG9uZwk2Njk1NTc3NjAKKwkubG9uZwkxMDcxOTM4MDY5CisJLmxvbmcJNDE4MjU5NzgwMgorCS5sb25nCTMxNzMxNzQxMjIKKwkubG9uZwk0MDc2NDEzOTUyCisJLmxvbmcJMTA3MTkyMjU5MQorCS5sb25nCTEyMDkwMjkxMTEKKwkubG9uZwkzMTcwNzM2MjA3CisJLmxvbmcJNTU2MTI1MTg0CisJLmxvbmcJMTA3MTkwNzIyOAorCS5sb25nCTgyMTA4NjAyOAorCS5sb25nCTMxNzM0MzcwNDkKKwkubG9uZwkyMDQ5MTQ2ODgKKwkubG9uZwkxMDcxODkxOTc2CisJLmxvbmcJMjA5NzAyNTk4NgorCS5sb25nCTMxNzEwNzE3OTgKKwkubG9uZwkzODc1NDUwODgKKwkubG9uZwkxMDcxODc2ODM0CisJLmxvbmcJMzE0MjkzNjk5NgorCS5sb25nCTMxNzMwOTIyMTgKKwkubG9uZwkyOTEyNzgzMzYwCisJLmxvbmcJMTA3MTg2MTgwMAorCS5sb25nCTI1MDI0MjAxNDAKKwkubG9uZwkxMDI0NTA1OTE5CisJLmxvbmcJMTE0NDI2MDYwOAorCS5sb25nCTEwNzE4NDY4NzQKKwkubG9uZwkzMzE1NjU4MTQwCisJLmxvbmcJMzE3MzQ2OTg0MworCS5sb25nCTE0NzEyMDk0NzIKKwkubG9uZwkxMDcxODMyMDUzCisJLmxvbmcJMTI5NjIxMDA5CisJLmxvbmcJMzE3MjQ0Mzg3NworCS5sb25nCTE4Mjk2ODMyMDAKKwkubG9uZwkxMDcxODE3MzM2CisJLmxvbmcJMzg4NTQ2NzY5MworCS5sb25nCTEwMjU1MzUyNzUKKwkubG9uZwkyODg2NzY4NjQKKwkubG9uZwkxMDcxODAyNzIyCisJLmxvbmcJODYxMzk0NzIKKwkubG9uZwkzMTcxNjM5NzkzCisJLmxvbmcJMzYzNjM3ODYyNAorCS5sb25nCTEwNzE3ODgyMDgKKwkubG9uZwkxODUwMjM4NTg3CisJLmxvbmcJMTAyNDY1NDM0MgorCS5sb25nCTE2MDY4MTc3OTIKKwkubG9uZwkxMDcxNzczNzk1CisJLmxvbmcJMzM4ODg5OTc5NQorCS5sb25nCTMxNzM2NzU1ODYKKwkubG9uZwkxMjM2MTY0NjA4CisJLmxvbmcJMTA3MTc1OTQ4MAorCS5sb25nCTM5ODM1OTkyMDcKKwkubG9uZwkxMDIwMDQ2NTU4CisJLmxvbmcJMTA4OTYxNjg5NgorCS5sb25nCTEwNzE3NDUyNjIKKwkubG9uZwk0MTcxOTc0MjI0CisJLmxvbmcJMTAyNDc3MzE5OAorCS5sb25nCTQxNDMwOTM3NjAKKwkubG9uZwkxMDcxNzMxMTM5CisJLmxvbmcJMjcyNzU4NzQwMQorCS5sb25nCTMxNzM5NjUyMDcKKwkubG9uZwk2MDAyNjc3NzYKKwkubG9uZwkxMDcxNzE3MTEyCisJLmxvbmcJMzE0NzY4NTA0MgorCS5sb25nCTMxNzMzNTMwMzEKKwkubG9uZwkyMjQ5MzEzMjgwCisJLmxvbmcJMTA3MTcwMzE3NworCS5sb25nCTEyNTgzNTA3NAorCS5sb25nCTEwMjUyNTU4MzIKKwkubG9uZwkzODA1MzAzODA4CisJLmxvbmcJMTA3MTY4OTMzNAorCS5sb25nCTIyODk5OTEyMDcKKwkubG9uZwkxMDI1NDYwMzMxCisJLmxvbmcJODcyNzg1OTIKKwkubG9uZwkxMDcxNjc1NTgzCisJLmxvbmcJMTEwNjExNDA0NQorCS5sb25nCTEwMjU5MzM2MDIKKwkubG9uZwkzMTk1NDA1MzEyCisJLmxvbmcJMTA3MTY2MTkyMAorCS5sb25nCTM4ODUzMTY1NzYKKwkubG9uZwkzMTcxMjA2MjM5CisJLmxvbmcJMzg1MzY0OTkyMAorCS5sb25nCTEwNzE2NDgzNDYKKwkubG9uZwkyOTc3MDY5ODUyCisJLmxvbmcJMzE3MTIzNjc3MQorCS5sb25nCTI5NDQwMjY2MjQKKwkubG9uZwkxMDcxNjI1MDQ4CisJLmxvbmcJMTAwODA5MzQ5MworCS5sb25nCTEwMjM0NDQ0NzQKKwkubG9uZwkzOTkzMTgwMTYwCisJLmxvbmcJMTA3MTU5ODI0NworCS5sb25nCTE4NjIzNTU1OTUKKwkubG9uZwkxMDI0NjQyNTMzCisJLmxvbmcJMTQ1NDY0MTE1MgorCS5sb25nCTEwNzE1NzE2MTcKKwkubG9uZwkxNTE0NjAzMDg5CisJLmxvbmcJMTAyNjUwMDU5NgorCS5sb25nCTMyODYwODU2MzIKKwkubG9uZwkxMDcxNTQ1MTU0CisJLmxvbmcJMTQwMDAyODQyNAorCS5sb25nCTMxNzMyNzkwNTYKKwkubG9uZwk0Mzg3NzM3NjAKKwkubG9uZwkxMDcxNTE4ODU4CisJLmxvbmcJMTIwNzI3ODY0CisJLmxvbmcJMzE3MjE0ODkxNAorCS5sb25nCTEyMTI5NzkyMDAKKwkubG9uZwkxMDcxNDkyNzI1CisJLmxvbmcJMTYyNTA1NTU5NAorCS5sb25nCTMxNzI5MDE5MzMKKwkubG9uZwkxMTg5MDE3NjAwCisJLmxvbmcJMTA3MTQ2Njc1NAorCS5sb25nCTM5MjAwNjIzNzYKKwkubG9uZwkxMDI1NzI3NDA3CisJLmxvbmcJNDAzMDY0ODMyCisJLmxvbmcJMTA3MTQ0MDk0MworCS5sb25nCTEwNTMyNzE3MjgKKwkubG9uZwkzMTcxMzkxNDI3CisJLmxvbmcJMzM0MzIxMDQ5NgorCS5sb25nCTEwNzE0MTUyODkKKwkubG9uZwkzMjQzMzk1NTAyCisJLmxvbmcJMzE3MzYyNzYxMworCS5sb25nCTE3NjU3Nzc0MDgKKwkubG9uZwkxMDcxMzg5NzkyCisJLmxvbmcJMjE0NTk2ODUxMgorCS5sb25nCTEwMjYzNTQzMDQKKwkubG9uZwk0NjE0MzA3ODQKKwkubG9uZwkxMDcxMzY0NDQ5CisJLmxvbmcJNDA5NDMyMjI4NQorCS5sb25nCTEwMjYwMjE0NjcKKwkubG9uZwk3MTcwNjYyNAorCS5sb25nCTEwNzEzMzkyNTgKKwkubG9uZwk3NjM2MzIwMjEKKwkubG9uZwkxMDI0NDk2OTMzCisJLmxvbmcJMTM4MDUwMzU1MgorCS5sb25nCTEwNzEzMTQyMTcKKwkubG9uZwkxMzgzNTQ3OTkyCisJLmxvbmcJMzE3MzA4ODQ1MworCS5sb25nCTEwMTU3MzIyMjQKKwkubG9uZwkxMDcxMjg5MzI1CisJLmxvbmcJMzE5ODY0Njg3NworCS5sb25nCTEwMjUzOTAzMjIKKwkubG9uZwkzNTk3NzIxNgorCS5sb25nCTEwNzEyNjQ1ODAKKwkubG9uZwkyMTQxMDI2ODA1CisJLmxvbmcJMTAyNTc1NDY5MworCS5sb25nCTM5MjczMDYyNDAKKwkubG9uZwkxMDcxMjM5OTc5CisJLmxvbmcJMjgyMTE2MjcyCisJLmxvbmcJMzE3MzM5NDMzNAorCS5sb25nCTExMjUzNDExODQKKwkubG9uZwkxMDcxMjE1NTIzCisJLmxvbmcJMjc2ODQyNzUwNAorCS5sb25nCTMxNzIyNzkwNTkKKwkubG9uZwkxNjY2OTcxNjQ4CisJLmxvbmcJMTA3MTE5MTIwOAorCS5sb25nCTc4NjgzNzYyOQorCS5sb25nCTMxNzI0Mjc0NDUKKwkubG9uZwkyODI3Njk0MDgwCisJLmxvbmcJMTA3MTE2NzAzMworCS5sb25nCTM4NTcxMjI0MTYKKwkubG9uZwkzMTczMDE0MjQxCisJLmxvbmcJMjAwMzY4MzMyOAorCS5sb25nCTEwNzExNDI5OTcKKwkubG9uZwk4NTkwMTA5NTQKKwkubG9uZwkxMDI2NTQ1MDA3CisJLmxvbmcJMTAwNDAxNzY2NAorCS5sb25nCTEwNzExMTkwOTgKKwkubG9uZwkzMzU2NjQ0OTcwCisJLmxvbmcJMzE3MzQ1ODA2NAorCS5sb25nCTE3NTMwMjA0MTYKKwkubG9uZwkxMDcxMDk1MzM0CisJLmxvbmcJNzg4MzM4NTUyCisJLmxvbmcJMTAyNjE1NzY5MworCS5sb25nCTE5OTI3MTgzMzYKKwkubG9uZwkxMDcxMDcxNzA0CisJLmxvbmcJMTIzOTE3OTQ0MworCS5sb25nCTEwMjYzOTQ4ODkKKwkubG9uZwkzODcwMjM0NjI0CisJLmxvbmcJMTA3MTA0ODIwNgorCS5sb25nCTIwODI2MTQ2NjMKKwkubG9uZwkxMDI0OTI2MDUzCisJLmxvbmcJMTA1MDQzNzYzMgorCS5sb25nCTEwNzEwMjQ4NDAKKwkubG9uZwk2NjAwMDc4NDAKKwkubG9uZwkxMDI1NTQ4NDk5CisJLmxvbmcJMTg4Mzk1NTIwCisJLmxvbmcJMTA3MTAwMTYwMworCS5sb25nCTM4Nzg3OTI3MDQKKwkubG9uZwkzMTczODg5NTcxCisJLmxvbmcJMzc0NzE3NjQ0OAorCS5sb25nCTEwNzA5Nzg0OTMKKwkubG9uZwkxNDQ5OTE3MDgKKwkubG9uZwkzMTcxNTUyMDQyCisJLmxvbmcJMTQwNTY2OTM3NgorCS5sb25nCTEwNzA5NTU1MTEKKwkubG9uZwkzOTk5MDg4ODc5CisJLmxvbmcJMTAyNTQ4NjMxNworCS5sb25nCTEyMTE1MTQ4OAorCS5sb25nCTEwNzA5MzI2NTQKKwkubG9uZwkyMTcwODY1NDk3CisJLmxvbmcJMTAyNjQ3MzU4NAorCS5sb25nCTI2NTIzMTk3NDQKKwkubG9uZwkxMDcwOTA5OTIwCisJLmxvbmcJNDUzNjk1NjUyCisJLmxvbmcJMzE3MzkxNjgwOQorCS5sb25nCTMyNjIyMzY2NzIKKwkubG9uZwkxMDcwODg3MzA5CisJLmxvbmcJMTU3ODAwMDUzCisJLmxvbmcJMzE3Mzk4NDIwNgorCS5sb25nCTYwMTIyMTEyMAorCS5sb25nCTEwNzA4NjQ4MjAKKwkubG9uZwkzOTY4OTE3NjYxCisJLmxvbmcJMTAyMzk5Mjg4NgorCS5sb25nCTE5OTk4NDMzMjgKKwkubG9uZwkxMDcwODQyNDUwCisJLmxvbmcJMzA1Mzg5NTAwNAorCS5sb25nCTEwMjQ5OTgyMjgKKwkubG9uZwkxOTkyMTY3NDI0CisJLmxvbmcJMTA3MDgyMDE5OQorCS5sb25nCTI5Njg2MTQ4NTYKKwkubG9uZwkxMDI0NTUyNjUzCisJLmxvbmcJMzc4ODcyNjI3MgorCS5sb25nCTEwNzA3OTgwNjUKKwkubG9uZwkzNTQyMTcwODA4CisJLmxvbmcJMzE3MzU3MzI0MgorCS5sb25nCTIwOTQ4Mjk1NjgKKwkubG9uZwkxMDcwNzc2MDQ4CisJLmxvbmcJMTI0Njc1ODEzMgorCS5sb25nCTEwMjYyMDI4NzQKKwkubG9uZwkyODg2NzU4NDAKKwkubG9uZwkxMDcwNzU0MTQ2CisJLmxvbmcJMzc0NzMyODk1MAorCS5sb25nCTEwMjYzMzE1ODUKKwkubG9uZwkxODI5NjgxMTUyCisJLmxvbmcJMTA3MDczMjM1NworCS5sb25nCTMxMjUxOTc1NDYKKwkubG9uZwkxMDI0MTAwMzE4CisJLmxvbmcJMTY2Njg2OTI0OAorCS5sb25nCTEwNzA3MTA2ODEKKwkubG9uZwkxMzYzNjU2MTE5CisJLmxvbmcJMTAyNjMzNjQ5MworCS5sb25nCTM0MTcxMTA1MjgKKwkubG9uZwkxMDcwNjg5MTE2CisJLmxvbmcJNDE1NDc5MTU1MworCS5sb25nCTEwMjYyNjc4NTMKKwkubG9uZwkyMTgzNjUzMzc2CisJLmxvbmcJMTA3MDY2NzY2MgorCS5sb25nCTE2NzE4MTkyOTIKKwkubG9uZwkzMTczNzg1ODcwCisJLmxvbmcJMTczNDQzNDgxNgorCS5sb25nCTEwNzA2NDYzMTcKKwkubG9uZwkzNzMwOTEwNDkKKwkubG9uZwkxMDI1OTcyMzYzCisJLmxvbmcJMTYxNTY4MTUzNgorCS5sb25nCTEwNzA2MjUwODAKKwkubG9uZwkzODQ2NTA4OTcKKwkubG9uZwkxMDIyOTI2MDQzCisJLmxvbmcJMTQ0NTM4MjE0NAorCS5sb25nCTEwNzA2MDM5NTAKKwkubG9uZwkzNDQzMjAzMzAKKwkubG9uZwkzMTcyMzk3MTk2CisJLmxvbmcJMTgyMzcxNTMyOAorCS5sb25nCTEwNzA1Njk3NTYKKwkubG9uZwkzMzg5ODQxMjAwCisJLmxvbmcJMTAyNTIzMTg1MgorCS5sb25nCTM4Mzk2ODg3MDQKKwkubG9uZwkxMDcwNTI3OTE3CisJLmxvbmcJMTcwNjc5MDQxNworCS5sb25nCTMxNjczNjMzNDkKKwkubG9uZwk0MjkzMzMyOTkyCisJLmxvbmcJMTA3MDQ4NjI4NgorCS5sb25nCTE2MTQ5MzUwODgKKwkubG9uZwkxMDE5MzUxNTkxCisJLmxvbmcJMjk2NjcyMDUxMgorCS5sb25nCTEwNzA0NDQ4NjEKKwkubG9uZwk0MTQ1MzkzNzE3CisJLmxvbmcJMzE3MzcxMTY1OAorCS5sb25nCTQwNjY3Mjk5ODQKKwkubG9uZwkxMDcwNDAzNjM5CisJLmxvbmcJMTk3NDkyNTAyOAorCS5sb25nCTMxNzE0MzcxODIKKwkubG9uZwkzMzM3NjIxNTA0CisJLmxvbmcJMTA3MDM2MjYxOQorCS5sb25nCTMzMTQ5NTMxNzAKKwkubG9uZwkzMTY5OTcxMzE0CisJLmxvbmcJOTQzNDQ4MDY0CisJLmxvbmcJMTA3MDMyMTc5OQorCS5sb25nCTE0OTg2ODIwMzgKKwkubG9uZwkzMTczODYyMzQwCisJLmxvbmcJMTQ2NTYzNDgxNgorCS5sb25nCTEwNzAyODExNzYKKwkubG9uZwkxMzE5OTUyODEwCisJLmxvbmcJMzE3MTY5Mzk2NQorCS5sb25nCTEwMTU3MzQyNzIKKwkubG9uZwkxMDcwMjQwNzQ5CisJLmxvbmcJMTM0NzgyMTkyOQorCS5sb25nCTMxNzM1NDQ1MTUKKwkubG9uZwkxMTgwMDE2NjQKKwkubG9uZwkxMDcwMjAwNTE2CisJLmxvbmcJMTc1MTQ4Mjc0NgorCS5sb25nCTEwMjYxMzQwOTMKKwkubG9uZwkzNzA3MTc0OTEyCisJLmxvbmcJMTA3MDE2MDQ3NAorCS5sb25nCTE0ODY5NDYxNTkKKwkubG9uZwkxMDIzOTMwOTIwCisJLmxvbmcJMzk0NjM4MTMxMgorCS5sb25nCTEwNzAxMjA2MjMKKwkubG9uZwkyODY3NDA4MDgxCisJLmxvbmcJMzE3MTM2ODI3NgorCS5sb25nCTE2OTk4NDgxOTIKKwkubG9uZwkxMDcwMDgwOTYxCisJLmxvbmcJMjU5MDE4NzEzOQorCS5sb25nCTEwMjUzNzk4MDMKKwkubG9uZwkyMjM1ODQ2NjU2CisJLmxvbmcJMTA3MDA0MTQ4NQorCS5sb25nCTE4ODg1NjgwNjkKKwkubG9uZwkzMTcyNzU0OTYwCisJLmxvbmcJMjMzOTcyOTQwOAorCS5sb25nCTEwNzAwMDIxOTQKKwkubG9uZwkzODUyMjE0NzUzCisJLmxvbmcJMzE3MzMyMzE0OQorCS5sb25nCTMxOTY4NTAxNzYKKwkubG9uZwkxMDY5OTYzMDg2CisJLmxvbmcJNzQyMTQxNTYwCisJLmxvbmcJMTAyNTEwMTcwNworCS5sb25nCTE4MDA2ODM1MjAKKwkubG9uZwkxMDY5OTI0MTYwCisJLmxvbmcJMzk0OTUwMDQ0NAorCS5sb25nCTMxNzIxMDIxNzkKKwkubG9uZwkzODM1ODAxNjAwCisJLmxvbmcJMTA2OTg4NTQxMworCS5sb25nCTM4NDg4OTU5NDMKKwkubG9uZwkxMDI1OTEzODMyCisJLmxvbmcJMjIwMTIwMjY4OAorCS5sb25nCTEwNjk4NDY4NDUKKwkubG9uZwkxNDI1OTEzNDY0CisJLmxvbmcJMTAyNTg2ODY2NQorCS5sb25nCTI3NzgyNzk5MzYKKwkubG9uZwkxMDY5ODA4NDUzCisJLmxvbmcJMjEyMDg4OTY3NworCS5sb25nCTMxNzM4MzExMjgKKwkubG9uZwkyOTU0MjAzMTM2CisJLmxvbmcJMTA2OTc3MDIzNgorCS5sb25nCTU5MjE0NzA4MQorCS5sb25nCTEwMTk2MjEyODgKKwkubG9uZwkyMTAxNDExODQKKwkubG9uZwkxMDY5NzMyMTkzCisJLmxvbmcJMzQxNDI3NTIzMworCS5sb25nCTEwMjM2NDcwODQKKwkubG9uZwk3MDk0NzYzNTIKKwkubG9uZwkxMDY5Njk0MzIxCisJLmxvbmcJMjQxMzAyNzE2NAorCS5sb25nCTEwMjQ0NjIxMTUKKwkubG9uZwkyMTE2Mjg0NDE2CisJLmxvbmcJMTA2OTY1NjYxOQorCS5sb25nCTExNDQ1NTk5MjQKKwkubG9uZwkxMDI2MzM2NjU0CisJLmxvbmcJMjE4MzY1MTMyOAorCS5sb25nCTEwNjk2MTkwODYKKwkubG9uZwkzNDU5MDU3NjUwCisJLmxvbmcJMTAyNTYzNDE2OAorCS5sb25nCTMwNDcwNDcxNjgKKwkubG9uZwkxMDY5NTgxNzIwCisJLmxvbmcJMTg3OTY3NDkyNAorCS5sb25nCTMxNzM1MDg1NzMKKwkubG9uZwk5NzA3MTEwNDAKKwkubG9uZwkxMDY5NTQxNTIxCisJLmxvbmcJMTMzNTk1NDE3MworCS5sb25nCTMxNzMzMzIxODIKKwkubG9uZwkyMTk4NDc4ODQ4CisJLmxvbmcJMTA2OTQ2NzQ0OQorCS5sb25nCTI5NTExMDM5NjgKKwkubG9uZwkzMTczODkyMjAwCisJLmxvbmcJMTY2OTYxMTUyMAorCS5sb25nCTEwNjkzOTM3MDMKKwkubG9uZwk1MzEwNDQxNDcKKwkubG9uZwkxMDI1MTQ5MjQ4CisJLmxvbmcJMjkxMTQzNjgKKwkubG9uZwkxMDY5MzIwMjgwCisJLmxvbmcJMzMyNzgzMTI1MQorCS5sb25nCTEwMjU5MTg2NzMKKwkubG9uZwkyMzc2OTQ5NzYwCisJLmxvbmcJMTA2OTI0NzE3NgorCS5sb25nCTczNzYzNDUzMworCS5sb25nCTMxNzIxNzYwMDAKKwkubG9uZwkxMDg1MzkwODQ4CisJLmxvbmcJMTA2OTE3NDM5MAorCS5sb25nCTMxMDgyNDM0MDAKKwkubG9uZwkzMTcxODI4NDA2CisJLmxvbmcJMTU2NjEzMDE3NgorCS5sb25nCTEwNjkxMDE5MTgKKwkubG9uZwk5ODU0ODMyMjYKKwkubG9uZwkxMDI1NzA4MzgwCisJLmxvbmcJNzkyNzgwODAwCisJLmxvbmcJMTA2OTAyOTc1OAorCS5sb25nCTQxODQ4NjYyOTUKKwkubG9uZwkxMDI0NDI2MjA0CisJLmxvbmcJMTgzMTU2NzM2CisJLmxvbmcJMTA2ODk1NzkwNworCS5sb25nCTI4NDU2OTkzNzgKKwkubG9uZwkxMDIyMTA3Mjc3CisJLmxvbmcJMTMwMTc4MjUyOAorCS5sb25nCTEwNjg4ODYzNjIKKwkubG9uZwkxMDEyNzM1MjYyCisJLmxvbmcJMzE3MzgwNDI5NAorCS5sb25nCTE1NjI0MTEwMDgKKwkubG9uZwkxMDY4ODE1MTIxCisJLmxvbmcJMjE5NzA4NjcwMworCS5sb25nCTMxNzAxODc4MTMKKwkubG9uZwkyODE1NTQ5NDQwCisJLmxvbmcJMTA2ODc0NDE4MQorCS5sb25nCTI3ODI2MTMyMDcKKwkubG9uZwkxMDI2MzQ1MDU0CisJLmxvbmcJMjc1NjEyNDY3MgorCS5sb25nCTEwNjg2NzM1NDAKKwkubG9uZwkyOTI5NDg2MjA1CisJLmxvbmcJMzE3MzAzNzgwMAorCS5sb25nCTM1MTEwNTAyNDAKKwkubG9uZwkxMDY4NjAzMTk1CisJLmxvbmcJMTQ0MzczMzE0NworCS5sb25nCTMxNzMzMzE1NDkKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2ODUzMzE0NAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTcyNDU5OTk3CisJLmxvbmcJMzIyMTY2Nzg0MAorCS5sb25nCTEwNjg0Mjc4MjUKKwkubG9uZwkxMzM4NTg4MDI3CisJLmxvbmcJMzE3MTgxNTc0MgorCS5sb25nCTM0NTM4NjE4ODgKKwkubG9uZwkxMDY4Mjg4ODgzCisJLmxvbmcJMTIwNTM0ODM1OQorCS5sb25nCTMxNzI2MjQ2MjYKKwkubG9uZwkzNTA2MTEwNDY0CisJLmxvbmcJMTA2ODE1MDUxNAorCS5sb25nCTg5MzEwNTE5OAorCS5sb25nCTEwMjU1NzE4NjYKKwkubG9uZwkzNDYwMTM2OTYKKwkubG9uZwkxMDY4MDEyNzE0CisJLmxvbmcJMzQ5NTU2OTAyMQorCS5sb25nCTMxNzI1NjMzNDkKKwkubG9uZwk0MDc0MDI5MDU2CisJLmxvbmcJMTA2Nzg3NTQ3NgorCS5sb25nCTM5NjExMDYzMzgKKwkubG9uZwkzMTcxMDY1NTk1CisJLmxvbmcJMzU1OTc4NDQ0OAorCS5sb25nCTEwNjc3Mzg3OTgKKwkubG9uZwkxOTc1Mzg1Mzg0CisJLmxvbmcJMzE3Mzc4MzE1NQorCS5sb25nCTc5Nzc2OTcyOAorCS5sb25nCTEwNjc2MDI2NzUKKwkubG9uZwkzNzYwMzA1Nzg3CisJLmxvbmcJMTAyNjA0NzY0MgorCS5sb25nCTIzMTM2MzM3OTIKKwkubG9uZwkxMDY3NDY3MTAxCisJLmxvbmcJMTU1OTM1MzE3MQorCS5sb25nCTEwMjM0ODAyNTYKKwkubG9uZwkzOTYwNzY2NDY0CisJLmxvbmcJMTA2NzIxMzc3OAorCS5sb25nCTEwNjczNjUxMDcKKwkubG9uZwkxMDI1ODY1OTI2CisJLmxvbmcJNjg0MjYxMzc2CisJLmxvbmcJMTA2Njk0NDgwNQorCS5sb25nCTg0NDc2MjE2NAorCS5sb25nCTMxNzM2ODc0ODIKKwkubG9uZwk2MzA3MTg0NjQKKwkubG9uZwkxMDY2Njc2OTA1CisJLmxvbmcJMjQ1ODI2OTY5NAorCS5sb25nCTEwMjQwMzMwODEKKwkubG9uZwkxNDg2MDYxNTY4CisJLmxvbmcJMTA2NjQxMDA3MAorCS5sb25nCTExNTUzNzg3NAorCS5sb25nCTMxNzMyNDM5OTUKKwkubG9uZwkyNzQzNjY0NjQwCisJLmxvbmcJMTA2NTg4Njc5MgorCS5sb25nCTM2NjUwOTgzMDQKKwkubG9uZwkzMTczNDcxNjA3CisJLmxvbmcJMTk3MTkxMjcwNAorCS5sb25nCTEwNjUzNTczMzMKKwkubG9uZwkyNTc3MjE0NDQwCisJLmxvbmcJMzE3MTk5MzQ1MQorCS5sb25nCTE0OTg5MzkzOTIKKwkubG9uZwkxMDY0MzA2NjkzCisJLmxvbmcJMzQwOTAzNjkyMworCS5sb25nCTEwMjU1OTkxNTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJNDI3NzgxMTIwMAorCS5sb25nCTEwNjc4NTU0MjYKKwkubG9uZwkyNDc5MzE4ODMyCisJLmxvbmcJMTAyMjI5MjgyMworCS5sb25nCTI0NTQyNjcwMjYKKwkubG9uZwkxMDY5Njk3MzE2CisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxMDMwNzMwMTAxCisJLmxvbmcJMzIxNzM4MDcwMgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNzAxNzY2NjUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTU5MTA0CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTkxMDQKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwyMTQ0CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9sb2cxMC5TIGIvbGlibS94ODYvZV9sb2cxMC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5YjI5NTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2xvZzEwLlMKQEAgLTAsMCArMSw3OTUgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICBMZXQgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBHZXQgQn4xL214IGJhc2VkIG9uIHRoZSBvdXRwdXQgb2YgcmNwc3MgaW5zdHJ1Y3Rpb24gKEIwKQorLy8gICAgQiA9IGludCgoQjAqTEgqMl43KzAuNSkpLzJeNworLy8gICAgTEggaXMgYSBzaG9ydCBhcHByb3hpbWF0aW9uIGZvciBsb2cxMChlKQorLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQ6IHI9QipteC1MSCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgUmVzdWx0OiAgaypsb2cxMCgyKSAtIGxvZyhCKSArIHAocikKKy8vICAgICAgICAgICAgIHAocikgaXMgYSBkZWdyZWUgNyBwb2x5bm9taWFsCisvLyAgICAgICAgICAgICAtbG9nKEIpIHJlYWQgZnJvbSBkYXRhIHRhYmxlIChoaWdoLCBsb3cgcGFydHMpCisvLyAgICAgICAgICAgICBSZXN1bHQgaXMgZm9ybWVkIGZyb20gaGlnaCBhbmQgbG93IHBhcnRzCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBsb2cxMCgwKSA9IC1JTkYgd2l0aCBkaXZpZGUtYnktemVybyBleGNlcHRpb24gcmFpc2VkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLy8gIGxvZzEwKDEpID0gKzAKKy8vICBsb2cxMCh4KSA9IE5hTiB3aXRoIGludmFsaWQgZXhjZXB0aW9uIHJhaXNlZCBpZiB4IDwgLTAsIGluY2x1ZGluZyAtSU5GCisvLyAgbG9nMTAoK0lORikgPSArSU5GCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgbG9nMTAKK0VOVFJZKGxvZzEwKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQwKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEwNTQ3MzYzODQsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW03CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQzMDcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0zCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIDIxMjgoJWVieCksICV4bW01CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzUyLCAlZWN4CisgICAgICAgIHBzbGxxICAgICAkNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDIxNDQoJWVieCksICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzQsICV4bW0wCisgICAgICAgIHJjcHNzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ3OCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHN1YmwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBjdnRzaTJzZGwgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyMDY0KCVlYngpLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMjA4MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDE2NzExNjgwLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTIsICVlZHgKKyAgICAgICAgbW92YXBkICAgIC0xNTA0KCVlYngsJWVkeCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAyMDk2KCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAyMTEyKCVlYngpLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgMjA3MiglZWJ4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDIxNTIoJWVieCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQtMjA5NzE1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQ5LCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ4LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlY3gKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMjE0NCglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDc4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAyNCglZXNwKQorICAgICAgICBmbGRsICAgICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChsb2cxMCkKKyMgLS0gRW5kICBsb2cxMAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0wobG9nMTBsLCBsb2cxMCk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTEzNTI2MjgyMjQKKwkubG9uZwkxMDcwODEwMTMxCisJLmxvbmcJNTIxMzE5MjU2CisJLmxvbmcJMTAyNTUwMzAyNQorCS5sb25nCTIxNTA4MzkyOTYKKwkubG9uZwkxMDcwODAxOTQ0CisJLmxvbmcJMzMyOTM1MDA5NgorCS5sb25nCTMxNzAxOTAwMTUKKwkubG9uZwkxMzYwNjEzMzc2CisJLmxvbmcJMTA3MDc5Mzc5NAorCS5sb25nCTIwMjQwNTkwNzUKKwkubG9uZwkxMDI0OTkxNTk0CisJLmxvbmcJMTg3NTM1MDUyOAorCS5sb25nCTEwNzA3ODU2ODAKKwkubG9uZwkyMTYzODgyMTQxCisJLmxvbmcJMzE2MzU2NDEzNworCS5sb25nCTIzMTIxMjY0NjQKKwkubG9uZwkxMDcwNzc3NjAyCisJLmxvbmcJMTk3NTcxMTA3NgorCS5sb25nCTEwMjM2NzQxOTYKKwkubG9uZwkxMzA2MzM2MjU2CisJLmxvbmcJMTA3MDc2OTU2MAorCS5sb25nCTM1MjQ4OTk1MjMKKwkubG9uZwkzMTcwNTA4MTY0CisJLmxvbmcJMTgwNjMzNDk3NgorCS5sb25nCTEwNzA3NjE1NTMKKwkubG9uZwk0MjU0Nzc3MDI1CisJLmxvbmcJMTAyNTIzODczOQorCS5sb25nCTI0ODMxOTM4NTYKKwkubG9uZwkxMDcwNzUzNTgxCisJLmxvbmcJMzgwMDY3MTMxNworCS5sb25nCTMxNzI5MTY4MzAKKwkubG9uZwkyMDI1MzUwMTQ0CisJLmxvbmcJMTA3MDc0NTY0NAorCS5sb25nCTE3MzE1MTQ3NDUKKwkubG9uZwkxMDI1NTAxMDgzCisJLmxvbmcJMzQzMzI4NTYzMgorCS5sb25nCTEwNzA3Mzc3NDEKKwkubG9uZwkyNTUxODU3MzM2CisJLmxvbmcJMzE2OTY2MjE4NgorCS5sb25nCTExMzQzMTc1NjgKKwkubG9uZwkxMDcwNzI5ODczCisJLmxvbmcJMzQyNjI5NzY1NQorCS5sb25nCTMxNzI2Mzc4OTEKKwkubG9uZwkyNDU3MTUyNTEyCisJLmxvbmcJMTA3MDcyMjAzOAorCS5sb25nCTYzNTQ5NDE1CisJLmxvbmcJMTAyNTQxNTQxNgorCS5sb25nCTE4NjE4MDMwMDgKKwkubG9uZwkxMDcwNzE0MjM3CisJLmxvbmcJMTkxMDE3MTYzNgorCS5sb25nCTEwMjM5Nzc1ODAKKwkubG9uZwkyNDE0MTQwNDE2CisJLmxvbmcJMTA3MDcwNjQ2OQorCS5sb25nCTQwMDI1MTQzMzcKKwkubG9uZwkzMTcwODQxNjE4CisJLmxvbmcJMjkwMDcyNjc4NAorCS5sb25nCTEwNzA2OTg3MzQKKwkubG9uZwkzMjY4MDY0MDgzCisJLmxvbmcJMTAyMjQ1OTYwOQorCS5sb25nCTIxMjM1MTc5NTIKKwkubG9uZwkxMDcwNjkxMDMyCisJLmxvbmcJMTc2NzAzMTIxOAorCS5sb25nCTEwMjI0NDgxNTYKKwkubG9uZwkzMTk0NTY5NzI4CisJLmxvbmcJMTA3MDY4MzM2MgorCS5sb25nCTM0MDIzMzI2MTgKKwkubG9uZwkzMTcxNjcxMTYwCisJLmxvbmcJNjUwODgyMDQ4CisJLmxvbmcJMTA3MDY3NTcyNQorCS5sb25nCTQxNDYwMjM5MDUKKwkubG9uZwkzMTcxMDIzMDM4CisJLmxvbmcJMTkyODk4ODY3MgorCS5sb25nCTEwNzA2NjgxMTkKKwkubG9uZwkxNDM4NjE3ODY3CisJLmxvbmcJMTAxNjM2MDQ5MQorCS5sb25nCTE1OTQ5MDg2NzIKKwkubG9uZwkxMDcwNjYwNTQ1CisJLmxvbmcJOTcxMzg5Mzc3CisJLmxvbmcJMTAyNDc2Mzk3OQorCS5sb25nCTI4MTg3NDYzNjgKKwkubG9uZwkxMDcwNjUzMDAyCisJLmxvbmcJMzU1NTkyNTM0MQorCS5sb25nCTMxNzI0MzQ4MjEKKwkubG9uZwkxOTQ1ODQ1NzYKKwkubG9uZwkxMDcwNjQ1NDkxCisJLmxvbmcJOTQzOTE5MjE1CisJLmxvbmcJMzE3Mjk1MDA2MworCS5sb25nCTEyMTUwOTY4MzIKKwkubG9uZwkxMDcwNjM4MDEwCisJLmxvbmcJMjI4MzM1ODU4OAorCS5sb25nCTEwMjIzMzUwOTgKKwkubG9uZwk1MDE1MTkzNjAKKwkubG9uZwkxMDcwNjMwNTYwCisJLmxvbmcJNDgwOTA0Mjk1CisJLmxvbmcJMTAyNDQzNzk1OQorCS5sb25nCTEyNzgyNjYzNjgKKwkubG9uZwkxMDcwNjIzMTQwCisJLmxvbmcJMjc1NTgwNjA2NgorCS5sb25nCTMxNzIzNDIwMTIKKwkubG9uZwkyNDg3ODEyMDk2CisJLmxvbmcJMTA3MDYxNTc1MAorCS5sb25nCTI0ODk2NTMyMDIKKwkubG9uZwkzMTcyNDgxMDk5CisJLmxvbmcJMzA4NTQ1MTI2NAorCS5sb25nCTEwNzA2MDgzOTAKKwkubG9uZwkzNzU5MTg0OTUxCisJLmxvbmcJMzE3MjU3NDg5MgorCS5sb25nCTIwMzkwOTAxNzYKKwkubG9uZwkxMDcwNjAxMDYwCisJLmxvbmcJMTM2MTE3NjY3NgorCS5sb25nCTMxNzIzNTUzMTkKKwkubG9uZwk5NTMwNTcyODAKKwkubG9uZwkxMDcwNTkxNDIzCisJLmxvbmcJMTE3NjU4NzU0NgorCS5sb25nCTMxNjY0MjIwMTgKKwkubG9uZwkzMzcwNTI0NjcyCisJLmxvbmcJMTA3MDU3Njg3OQorCS5sb25nCTM2Njk1NzAwNTEKKwkubG9uZwkxMDI1Mzc2NjMwCisJLmxvbmcJNzQ5NzQyMDgwCisJLmxvbmcJMTA3MDU2MjM5NAorCS5sb25nCTcwNzcwMDk2NAorCS5sb25nCTMxNzA4MTQwNTgKKwkubG9uZwk0MDA4MzUzNzkyCisJLmxvbmcJMTA3MDU0Nzk2NQorCS5sb25nCTMyNDczMjc2NTIKKwkubG9uZwkxMDIyNDMxNDAwCisJLmxvbmcJMjYxMjQ1NTQyNAorCS5sb25nCTEwNzA1MzM1OTQKKwkubG9uZwkyNDUzNDU3MzQ0CisJLmxvbmcJMzE3MjMyMjk2OQorCS5sb25nCTMyMzA5MjA3MDQKKwkubG9uZwkxMDcwNTE5Mjc5CisJLmxvbmcJMTI5Njc4MTgwMQorCS5sb25nCTEwMjUxMTUzMzUKKwkubG9uZwkzOTY1MjUzNjMyCisJLmxvbmcJMTA3MDUwNTAyMAorCS5sb25nCTM3MzA3NTI4OQorCS5sb25nCTEwMTc5Mzg1MjgKKwkubG9uZwkyNTkzMTU3MTIwCisJLmxvbmcJMTA3MDQ3NjY2OQorCS5sb25nCTEwNjgwNTQwODYKKwkubG9uZwkxMDIxNjE2NTc2CisJLmxvbmcJOTI1OTYyMjQwCisJLmxvbmcJMTA3MDQ0ODUzNworCS5sb25nCTg1MDEyMTIxMworCS5sb25nCTEwMjM5Mjg5ODkKKwkubG9uZwkxNzMyNTU2ODAwCisJLmxvbmcJMTA3MDQyMDYyMAorCS5sb25nCTEzMDUyMDY3NDAKKwkubG9uZwkzMTcyNjY1NTcwCisJLmxvbmcJMzgxNTYzMDg0OAorCS5sb25nCTEwNzAzOTI5MTUKKwkubG9uZwkxOTI2NDI5NDMKKwkubG9uZwkzMTcyNjk5OTA3CisJLmxvbmcJMjAwMTc1ODIwOAorCS5sb25nCTEwNzAzNjU0MjAKKwkubG9uZwkyODIwNzg2NjgzCisJLmxvbmcJMTAyNDcwNDg2NworCS5sb25nCTE2NzQ2NDk2CisJLmxvbmcJMTA3MDMzODEzMQorCS5sb25nCTEzOTk1NzMxMTAKKwkubG9uZwkzMTcxMzcyNzczCisJLmxvbmcJMTg4NjQ5MjY3MgorCS5sb25nCTEwNzAzMTEwNDQKKwkubG9uZwkzNjIxNDI4MDc1CisJLmxvbmcJMzE3Mjk3NDM1OAorCS5sb25nCTMzMzgxOTY5OTIKKwkubG9uZwkxMDcwMjg0MTU3CisJLmxvbmcJMzc5Mzg4MjAzNQorCS5sb25nCTEwMjUxMjQ3MDEKKwkubG9uZwkzODE3Njk3MjgKKwkubG9uZwkxMDcwMjU3NDY4CisJLmxvbmcJMzg3NzkzMzM0MgorCS5sb25nCTMxNzAxOTU0OTAKKwkubG9uZwkyMTg2NDkxOTA0CisJLmxvbmcJMTA3MDIzMDk3MgorCS5sb25nCTE4Mzg2ODcwODkKKwkubG9uZwkxMDE3OTI3MjkyCisJLmxvbmcJMTAwODMzMDc1MgorCS5sb25nCTEwNzAyMDQ2NjgKKwkubG9uZwkyMjI4MzIxNjY0CisJLmxvbmcJMTAyNTM1MjE5NgorCS5sb25nCTIyNDcwNjU2MDAKKwkubG9uZwkxMDcwMTc4NTUyCisJLmxvbmcJMTQxMzkwMDkwNgorCS5sb25nCTMxNzA5MDI1MzIKKwkubG9uZwkyOTY0MDcwNDAwCisJLmxvbmcJMTA3MDE1MjYyMgorCS5sb25nCTM1OTA0NTQ2MjkKKwkubG9uZwkxMDI1MDE2ODQ0CisJLmxvbmcJNDY1MTU0MDQ4CisJLmxvbmcJMTA3MDEyNjg3NgorCS5sb25nCTIwNzk2ODg1NTAKKwkubG9uZwkzMTcyMjY4MTgzCisJLmxvbmcJODgzNjE1NzQ0CisJLmxvbmcJMTA3MDEwMTMxMAorCS5sb25nCTk4OTI0NDQ1MgorCS5sb25nCTMxNzE5MDA0ODUKKwkubG9uZwkxOTkzNzY4OTYwCisJLmxvbmcJMTA3MDA3NTkyMgorCS5sb25nCTExMjQzMjc4NDEKKwkubG9uZwkzMTcyOTY0OTkyCisJLmxvbmcJMTc5NDQ3MTkzNgorCS5sb25nCTEwNzAwNTA3MTAKKwkubG9uZwkxMTQwNTc1MDQ2CisJLmxvbmcJMTAyMjY3MzcyNgorCS5sb25nCTI3OTc5MzI1NDQKKwkubG9uZwkxMDcwMDI1NjcxCisJLmxvbmcJMTg5NDgzNjkzMworCS5sb25nCTMxNzI1NDQwNTkKKwkubG9uZwkzNDMzNzk3NjMyCisJLmxvbmcJMTA3MDAwMDgwMworCS5sb25nCTMyMjE4MzExNjYKKwkubG9uZwkzMTcxOTIxNjg1CisJLmxvbmcJMjMzODM3MTU4NAorCS5sb25nCTEwNjk5NzYxMDQKKwkubG9uZwkzNzMyNDYxMDUzCisJLmxvbmcJMzE2NDUxMzUxOAorCS5sb25nCTI2NDQwMTMwNTYKKwkubG9uZwkxMDY5OTUxNTcxCisJLmxvbmcJMjUxOTQ2MDQ2MgorCS5sb25nCTMxNzI1NDg3NDAKKwkubG9uZwkzMzgzODE0MTQ0CisJLmxvbmcJMTA2OTkyNzIwMgorCS5sb25nCTIyOTA5OTc2NTcKKwkubG9uZwkxMDI1NDk5NjQ5CisJLmxvbmcJMzc4MTM4MDA5NgorCS5sb25nCTEwNjk5MDI5OTUKKwkubG9uZwkzODA0Nzk0MDUKKwkubG9uZwkxMDI1MTg0MTM2CisJLmxvbmcJMzI0NTc4NTA4OAorCS5sb25nCTEwNjk4Nzg5NDgKKwkubG9uZwkxMDk2Mzk4MjYxCisJLmxvbmcJMzE2OTg4NTE5MgorCS5sb25nCTEzNjY3MTIzMjAKKwkubG9uZwkxMDY5ODU1MDU5CisJLmxvbmcJMjIxODM0MzcxNQorCS5sb25nCTMxNzAyODE2MjgKKwkubG9uZwkyMjA0NzE3MDU2CisJLmxvbmcJMTA2OTgzMTMyNQorCS5sb25nCTI2NjgzMzQwMTEKKwkubG9uZwkxMDI1MjY0NTI0CisJLmxvbmcJMTQwMTc3MjAzMgorCS5sb25nCTEwNjk4MDc3NDUKKwkubG9uZwk0MTAzOTkzMTU5CisJLmxvbmcJMTAyMjkyNTcyMQorCS5sb25nCTMzNTY3MjExNTIKKwkubG9uZwkxMDY5Nzg0MzE2CisJLmxvbmcJMzU3Mzc5MDc3MgorCS5sb25nCTMxNzIxODY1MjcKKwkubG9uZwk0MDQxMTQ4NDE2CisJLmxvbmcJMTA2OTc2MTAzNworCS5sb25nCTQwMjc2OTE5MTAKKwkubG9uZwkzMTcxMjc2OTkwCisJLmxvbmcJMzg4MDE1MTA0MAorCS5sb25nCTEwNjk3Mzc5MDYKKwkubG9uZwk0MDg3MTE4Nzg2CisJLmxvbmcJMzE3MjcxMDczNAorCS5sb25nCTM0NTMzNjQyMjQKKwkubG9uZwkxMDY5NzE0OTIxCisJLmxvbmcJOTkwMTQyOTkKKwkubG9uZwkzMTcyMDAzMDc3CisJLmxvbmcJMzQ5MTA5MjQ4MAorCS5sb25nCTEwNjk2OTIwODAKKwkubG9uZwkzODAxODM2NzAxCisJLmxvbmcJMzE3Mjk4OTI4NworCS5sb25nCTU3NTU4MDE2MAorCS5sb25nCTEwNjk2NjkzODIKKwkubG9uZwkxOTIwNDA2MDEyCisJLmxvbmcJMzE3MDg3NDEyNQorCS5sb25nCTIyMjgyMjQwCisJLmxvbmcJMTA2OTY0NjgyNAorCS5sb25nCTk2NDE5MzM3MAorCS5sb25nCTEwMTkzNjMxNTkKKwkubG9uZwkyOTkxNDI5NjMyCisJLmxvbmcJMTA2OTYyNDQwNAorCS5sb25nCTMzNzI1ODk4OTAKKwkubG9uZwkxMDIzNDI1MDUzCisJLmxvbmcJMjE4OTY0NTgyNAorCS5sb25nCTEwNjk2MDIxMjIKKwkubG9uZwkyNjEwNTAzODcyCisJLmxvbmcJMTAyMzY1MjQ0MgorCS5sb25nCTMzNDE0Njc2NDgKKwkubG9uZwkxMDY5NTc5OTc1CisJLmxvbmcJMTE5MDI5MjAwNAorCS5sb25nCTEwMjI0MjU2NjUKKwkubG9uZwkzNzExMjkzNDQwCisJLmxvbmcJMTA2OTU1Nzk2MgorCS5sb25nCTExMDQ3OTUzNTYKKwkubG9uZwkxMDIzNjI1ODI5CisJLmxvbmcJMTM4MDQwMTE1MgorCS5sb25nCTEwNjk1MjQ2NDQKKwkubG9uZwkxMTU2OTk4MjE3CisJLmxvbmcJMTAyNTEwMDQ5OQorCS5sb25nCTc2NTcxMDMzNgorCS5sb25nCTEwNjk0ODExNDQKKwkubG9uZwkxNzM2NjQ5MTEzCisJLmxvbmcJMTAyNDk5OTQzOQorCS5sb25nCTg0OTQxMjA5NgorCS5sb25nCTEwNjk0Mzc5MDIKKwkubG9uZwkyNjE4MTc4MzMwCisJLmxvbmcJMzE3MDg1MzYyOQorCS5sb25nCTE0MzMxMDQzODQKKwkubG9uZwkxMDY5Mzk0OTE1CisJLmxvbmcJNDM0NzcyNjcKKwkubG9uZwkzMTcwMzc4ODExCisJLmxvbmcJMjU0ODU5NjczNgorCS5sb25nCTEwNjkzNTIxODAKKwkubG9uZwkzOTY3MzY3MDYzCisJLmxvbmcJMTAyNTI0NjU4NAorCS5sb25nCTE1NzU3NzIxNgorCS5sb25nCTEwNjkzMDk2OTUKKwkubG9uZwkxMDA0MDI1MzMKKwkubG9uZwkzMTcyODI1NTAyCisJLmxvbmcJMzMyNjIzODcyMAorCS5sb25nCTEwNjkyNjc0NTUKKwkubG9uZwkxMTc2ODkyOTA5CisJLmxvbmcJMTAyNTQ2NDA5OQorCS5sb25nCTQxNTU0OTQ0MDAKKwkubG9uZwkxMDY5MjI1NDU5CisJLmxvbmcJMzcxMzcwNzYxNworCS5sb25nCTMxNzI2MzAwNDYKKwkubG9uZwkzNTQ1ODA0ODAwCisJLmxvbmcJMTA2OTE4MzcwNAorCS5sb25nCTg1NzAwNzMxNQorCS5sb25nCTEwMjQ5NjU3NzcKKwkubG9uZwkyNjAyNTIwNTc2CisJLmxvbmcJMTA2OTE0MjE4NworCS5sb25nCTI1ODg3NTgzNDcKKwkubG9uZwkxMDIyNDYzMTMxCisJLmxvbmcJMjYzMTE5NjY3MgorCS5sb25nCTEwNjkxMDA5MDUKKwkubG9uZwkyMTE4NDI0MjM1CisJLmxvbmcJMTAyMjQ5MDk4OQorCS5sb25nCTgzODEzNTgwOAorCS5sb25nCTEwNjkwNTk4NTYKKwkubG9uZwk0MTE3MDAyNzI3CisJLmxvbmcJMTAyNDg3NDUyMAorCS5sb25nCTMyMTA5MDM1NTIKKwkubG9uZwkxMDY5MDE5MDM2CisJLmxvbmcJNjUwMDcwMTI1CisJLmxvbmcJMzE3MjAxMjk2NgorCS5sb25nCTMwMzkyMTE1MjAKKwkubG9uZwkxMDY4OTc4NDQ0CisJLmxvbmcJNDM4MDU1ODEyCisJLmxvbmcJMTAxNzc0Mzc1NworCS5sb25nCTIzODU2MzMyODAKKwkubG9uZwkxMDY4OTM4MDc3CisJLmxvbmcJMzAxMTk5MDM2OQorCS5sb25nCTMxNzEzMTIwNDQKKwkubG9uZwkzNDkxNjE4ODE2CisJLmxvbmcJMTA2ODg5NzkzMgorCS5sb25nCTcxMjgxMzgxOAorCS5sb25nCTMxNzI3MjA0MDAKKwkubG9uZwkxODM2NDQxNjAKKwkubG9uZwkxMDY4ODU4MDA4CisJLmxvbmcJNDI4NzAwNjc0MgorCS5sb25nCTEwMjIzNzk3MjgKKwkubG9uZwkzNjM5MjE0MDgwCisJLmxvbmcJMTA2ODgxODMwMAorCS5sb25nCTM1Mzc2MjI3OQorCS5sb25nCTMxNzI5ODAwMDkKKwkubG9uZwkzNzI4NDE2NzY4CisJLmxvbmcJMTA2ODc3ODgwOAorCS5sb25nCTE4NTEzNjc3MzAKKwkubG9uZwkxMDI1NDg2NTc0CisJLmxvbmcJMzM3MDA5NDU5MgorCS5sb25nCTEwNjg3Mzk1MjkKKwkubG9uZwk0MDQ2NTk0OTEzCisJLmxvbmcJMzE3MjU2NzA0NworCS5sb25nCTEzNDg0MDcyOTYKKwkubG9uZwkxMDY4NzAwNDYxCisJLmxvbmcJMTQzMTg5Njc1CisJLmxvbmcJMTAyNTM5NzYzMgorCS5sb25nCTg5OTQwMzc3NgorCS5sb25nCTEwNjg2NjE2MDEKKwkubG9uZwkzNzUzNjg3ODQyCisJLmxvbmcJMzE3MDc3Mjc3MgorCS5sb25nCTExMTc3MDgyODgKKwkubG9uZwkxMDY4NjIyOTQ3CisJLmxvbmcJMTg1NzM0MDgxMgorCS5sb25nCTMxNzA3ODI2NzgKKwkubG9uZwkxMjQ4Mjc2NDgwCisJLmxvbmcJMTA2ODU4NDQ5NworCS5sb25nCTEyODk4NTgyMDMKKwkubG9uZwkxMDI1MjIyMjg5CisJLmxvbmcJNjgzMjM3Mzc2CisJLmxvbmcJMTA2ODU0NjI0OQorCS5sb25nCTIzNTY2Nzk2MDgKKwkubG9uZwkzMTcxNjI5MTcwCisJLmxvbmcJMzI1Mzc2NDA5NgorCS5sb25nCTEwNjg1MDgyMDAKKwkubG9uZwkzMjY3MTM2NTU2CisJLmxvbmcJMTAxODU1NDk4NworCS5sb25nCTk0NDc4MzM2CisJLmxvbmcJMTA2ODQ0MTc1NgorCS5sb25nCTE5Mjc4Njg4MTQKKwkubG9uZwkzMTY5Mzc4MTgwCisJLmxvbmcJMzIzMzE0NDgzMgorCS5sb25nCTEwNjgzNjY0NDUKKwkubG9uZwkyNjgyMTg4ODU0CisJLmxvbmcJMTAyMzk2NDAwNAorCS5sb25nCTI5NDAyOTcyMTYKKwkubG9uZwkxMDY4MjkxNTIyCisJLmxvbmcJMjc1MzAxMjg5CisJLmxvbmcJMTAyMzk0NDY3OQorCS5sb25nCTM2Nzc3MDgyODgKKwkubG9uZwkxMDY4MjE2OTgyCisJLmxvbmcJMzAyNjU4NzcxCisJLmxvbmcJMTAyNDQ2NTU2NworCS5sb25nCTE1NzY5NjgxOTIKKwkubG9uZwkxMDY4MTQyODIyCisJLmxvbmcJMzY3MjAzNTk0MAorCS5sb25nCTMxNzIyNTQ2MTAKKwkubG9uZwkxNjE0MDY5NzYwCisJLmxvbmcJMTA2ODA2OTAzNworCS5sb25nCTQ4MDA1MjkwNQorCS5sb25nCTMxNzI2OTIwNjIKKwkubG9uZwk0MjQ0MzU3MTIKKwkubG9uZwkxMDY3OTk1NjI0CisJLmxvbmcJMjIwNzg2OTY1NworCS5sb25nCTMxNzA5NjU0MzYKKwkubG9uZwkzNDc3NzgyNTI4CisJLmxvbmcJMTA2NzkyMjU3OAorCS5sb25nCTI5ODA2NjE4NTgKKwkubG9uZwkzMTY0OTkwMDE4CisJLmxvbmcJMzU5ODQwMTUzNgorCS5sb25nCTEwNjc4NDk4OTcKKwkubG9uZwkxOTc0MzkzMDM0CisJLmxvbmcJMzE3MTM1NzA4MworCS5sb25nCTI0MzUyMzU4NDAKKwkubG9uZwkxMDY3Nzc3NTc3CisJLmxvbmcJMTM4NTI4OTAxMQorCS5sb25nCTEwMjQ2MTU4MjMKKwkubG9uZwkxODY3MzMzNjMyCisJLmxvbmcJMTA2NzcwNTYxNAorCS5sb25nCTM0NDIyMzY2MzMKKwkubG9uZwkxMDI1MzM0Mzg0CisJLmxvbmcJMzk5OTMwMTYzMgorCS5sb25nCTEwNjc2MzQwMDQKKwkubG9uZwkzNTA2NDcyMDczCisJLmxvbmcJMTAyNTEzMjU0NgorCS5sb25nCTI1NjY5NzEzOTIKKwkubG9uZwkxMDY3NTYyNzQ1CisJLmxvbmcJMTQyNTc1NzU5MgorCS5sb25nCTMxNzIzNTg0NjMKKwkubG9uZwkxMTI5NDMxMDQKKwkubG9uZwkxMDY3NDkxODMzCisJLmxvbmcJMTY5MzQwNzE1NgorCS5sb25nCTMxNzI0MjY2MDMKKwkubG9uZwkzMDc5OTI5ODU2CisJLmxvbmcJMTA2NzM5MjE1OQorCS5sb25nCTM5OTk5NDI0NTUKKwkubG9uZwkxMDE4NTQ5MzY5CisJLmxvbmcJMjQ0MzgzNzQ0MAorCS5sb25nCTEwNjcyNTE3MDEKKwkubG9uZwk5NzQ1MzQ0NjAKKwkubG9uZwkxMDIzOTYzNDEyCisJLmxvbmcJMzU5MzY2NjU2CisJLmxvbmcJMTA2NzExMTkxNworCS5sb25nCTIyMDQ5MTUwMTgKKwkubG9uZwkxMDEzNTE0NDE2CisJLmxvbmcJMzU2NDUxOTQyNAorCS5sb25nCTEwNjY5NzI3OTkKKwkubG9uZwkzOTc3NDQxNjU5CisJLmxvbmcJMzE3MDg3OTg2MAorCS5sb25nCTIwMTEwODY4NDgKKwkubG9uZwkxMDY2ODM0MzQzCisJLmxvbmcJNTkwMTQ1NTE0CisJLmxvbmcJMTAyNTM5MDAxMQorCS5sb25nCTMyMTY5ODIwMTYKKwkubG9uZwkxMDY2Njk2NTQxCisJLmxvbmcJMzYyOTEyMDExMAorCS5sb25nCTEwMjQzMzAzMTMKKwkubG9uZwkyMTk0MTI4ODk2CisJLmxvbmcJMTA2NjU1OTM4OAorCS5sb25nCTIzNjcwOTg1MTIKKwkubG9uZwkzMTcyMjYwMzM4CisJLmxvbmcJMjkxNjIyMDkyOAorCS5sb25nCTEwNjY0MjI4NzcKKwkubG9uZwkyMjYyNDMxODg2CisJLmxvbmcJMTAyMTIyOTQ0NgorCS5sb25nCTIyNjM5NDExMjAKKwkubG9uZwkxMDY2MTcyMjE0CisJLmxvbmcJMzExODUwNzI4NworCS5sb25nCTEwMjE0ODQ5NzAKKwkubG9uZwkzMDc2MjkyNjA4CisJLmxvbmcJMTA2NTkwMTcyNgorCS5sb25nCTE0MTE3Mzc4MDMKKwkubG9uZwkzMTcyOTU3MTQ3CisJLmxvbmcJMTE4NjEzNjA2NAorCS5sb25nCTEwNjU2MzI0ODgKKwkubG9uZwkzMTA5MzQ5MzM3CisJLmxvbmcJMTAyNTM5NzM4MworCS5sb25nCTMwODUzMDM4MDgKKwkubG9uZwkxMDY1MzY0NDg3CisJLmxvbmcJNTg0NzE1MDMxCisJLmxvbmcJMzE3MjU5NjUxOQorCS5sb25nCTE4MjEwNDg4MzIKKwkubG9uZwkxMDY0ODQyMjExCisJLmxvbmcJMjE4MjI0Njg5NQorCS5sb25nCTMxNzI1MzYyMTQKKwkubG9uZwk2OTczNjg1NzYKKwkubG9uZwkxMDY0MzExMDk0CisJLmxvbmcJMzE1NzU2MTc2NQorCS5sb25nCTMxNzI3MTYzNTcKKwkubG9uZwk4OTQwNDIxMTIKKwkubG9uZwkxMDYzMjYwMTMxCisJLmxvbmcJMzIzNzk1ODE1NAorCS5sb25nCTMxNzI1ODcyOTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTM1MjYyODIyNAorCS5sb25nCTEwNjY2MTU4MjcKKwkubG9uZwk1MjEzMTkyNTYKKwkubG9uZwkxMDIxMzA4NzIxCisJLmxvbmcJMzI0ODg3Nzg3MAorCS5sb25nCTEwNzcyNTAxNjQKKwkubG9uZwkxNjkxNjc2NDI5CisJLmxvbmcJMzIyMTc4NzQwMQorCS5sb25nCTk0NTEzMjQ2NQorCS5sb25nCTMyMjM3MDE3ODMKKwkubG9uZwkzNzAwODMxMzM1CisJLmxvbmcJMTA3MzUwNjgxOAorCS5sb25nCTIxNDEwMTA1OTMKKwkubG9uZwkxMDc1MjI3NTUxCisJLmxvbmcJMzY5ODgzMTYzNworCS5sb25nCTMyMjAzMzk0NDIKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTU5MTA0CisJLmxvbmcJMAorCS5sb25nCTEwNzEzNjYxNDQKKwkubG9uZwkzMjA3NDc5NTYwCisJLmxvbmcJMTA2Mjg5NDE4OAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDIxNjAKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX3Bvdy5TIGIvbGlibS94ODYvZV9wb3cuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2UzMGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9wb3cuUwpAQCAtMCwwICsxLDQyNzcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICBMZXQgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBsb2cyKHgpIGNhbGN1bGF0aW9uOgorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BwcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCpMSCoyXjkrMC41KSkvMl45CisvLyAgICBMSCBpcyBhIHNob3J0IGFwcHJveGltYXRpb24gZm9yIGxvZzIoZSkKKy8vCisvLyAgICBSZWR1Y2VkIGFyZ3VtZW50LCBzY2FsZWQgYnkgTEg6CisvLyAgICAgICAgICAgICAgICByPUIqbXgtTEggKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIGxvZzIoeCkgcmVzdWx0OiAgayAtIGxvZzIoQikgKyBwKHIpCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDggcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZzIoQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIGxvZzIoeCkgaXMgZm9ybWVkIGZyb20gaGlnaCBhbmQgbG93IHBhcnRzCisvLyAgICBGb3IgfHh8IGluIFsxLTEvMzIsIDErMS8xNiksIGEgc2xvd2VyIGJ1dCBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9uCisvLyAgICBiYXNlZCBvbSB0aGUgc2FtZSB0YWJsZSBkZXNpZ24gaXMgcGVyZm9ybWVkLgorLy8KKy8vICAgTWFpbiBwYXRoIGlzIHRha2VuIGlmIHwgZmxvb3IobG9nMih8bG9nMih8eHwpfCkgKyBmbG9vcihsb2cyfHl8KSB8IDwgOCwKKy8vICAgdG8gZmlsdGVyIG91dCBhbGwgcG90ZW50aWFsIE9GL1VGIGNhc2VzLgorLy8gICBleHAyKHkqbG9nMih4KSkgaXMgY29tcHV0ZWQgdXNpbmcgYW4gOC1iaXQgaW5kZXggdGFibGUgYW5kIGEgZGVncmVlIDUKKy8vICAgcG9seW5vbWlhbAorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgcG93KC0wLHkpID0gLUlORiBhbmQgcmFpc2VzIHRoZSBkaXZpZGUtYnktemVybyBleGNlcHRpb24gZm9yIHkgYW4gb2RkIAorLy8gIGludGVnZXIgPCAwLgorLy8gIHBvdygtMCx5KSA9ICtJTkYgYW5kIHJhaXNlcyB0aGUgZGl2aWRlLWJ5LXplcm8gZXhjZXB0aW9uIGZvciB5IDwgMCBhbmQgCisvLyAgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtMCx5KSA9IC0wIGZvciB5IGFuIG9kZCBpbnRlZ2VyID4gMC4KKy8vICBwb3coLTAseSkgPSArMCBmb3IgeSA+IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coLTEsLUlORikgPSAxLgorLy8gIHBvdygrMSx5KSA9IDEgZm9yIGFueSB5LCBldmVuIGEgTmFOLgorLy8gIHBvdyh4LC0wKSA9IDEgZm9yIGFueSB4LCBldmVuIGEgTmFOLgorLy8gIHBvdyh4LHkpID0gYSBOYU4gYW5kIHJhaXNlcyB0aGUgaW52YWxpZCBleGNlcHRpb24gZm9yIGZpbml0ZSB4IDwgMCBhbmQKKy8vICBmaW5pdGUgbm9uLWludGVnZXIgeS4KKy8vICBwb3coeCwtSU5GKSA9ICtJTkYgZm9yIHx4fDwxLgorLy8gIHBvdyh4LC1JTkYpID0gKzAgZm9yIHx4fD4xLgorLy8gIHBvdyh4LCtJTkYpID0gKzAgZm9yIHx4fDwxLgorLy8gIHBvdyh4LCtJTkYpID0gK0lORiBmb3IgfHh8PjEuCisvLyAgcG93KC1JTkYseSkgPSAtMCBmb3IgeSBhbiBvZGQgaW50ZWdlciA8IDAuCisvLyAgcG93KC1JTkYseSkgPSArMCBmb3IgeSA8IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coLUlORix5KSA9IC1JTkYgZm9yIHkgYW4gb2RkIGludGVnZXIgPiAwLgorLy8gIHBvdygtSU5GLHkpID0gK0lORiBmb3IgeSA+IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coK0lORix5KSA9ICswIGZvciB5IDwwLgorLy8gIHBvdygrSU5GLHkpID0gK0lORiBmb3IgeSA+MC4KKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBwb3cKK0VOVFJZKHBvdykKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisjIHBhcmFtZXRlciAyOiAxNiArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMjAsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDY0KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTM2KCVlc3ApLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEwNjkwODg3NjgsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW03CisgICAgICAgIG1vdnNkICAgICAleG1tMSwgMTYoJWVzcCkKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgODI0MCglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDgyNTYoJWVieCksICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzQsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHJjcHNzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVjeAorICAgICAgICBic3IgICAgICAgJWVjeCwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJWVzaSwgMjQoJWVzcCkKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtb3ZsICAgICAgJDAsICVlc2kKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkLTEsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQ0LCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3VibCAgICAgICQxNjM1MSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDEsICVlYXgKKyAgICAgICAgamJlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTUKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTUKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgc3VibCAgICAgICQxLCAlZWF4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVheAorICAgICAgICBjdnRzaTJzZGwgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDgyNzIoJWVieCksICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDgyODgoJWVieCksICV4bW00CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQxLCAlZWF4CisgICAgICAgIGJzciAgICAgICAlZWF4LCAlZWF4CisgICAgICAgIHVucGNrbHBkICAleG1tMywgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDgzMDQoJWVieCksICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYW5kbCAgICAgICQxNjc2MDgzMiwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEwLCAlZWR4CisgICAgICAgIGFkZHBkICAgICAtMzYxNiglZWJ4LCVlZHgpLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgODMyMCglZWJ4KSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdnp3bCAgICAyMiglZXNwKSwgJWVjeAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW03CisgICAgICAgIG1vdnNkICAgICA4MzY4KCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHNobGwgICAgICAkNCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE1ODcyLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tMworICAgICAgICBjbXBsICAgICAgJDYyNCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJDE3MDgwLCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW02LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyNTUsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDgzODQoJWVieCwlZWR4LDgpLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDEyNDgwKCVlYngpLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTI0OTYoJWVieCksICV4bW0zCisgICAgICAgIHNobGwgICAgICAkMTIsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlc2ksICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQtMTA0ODU3NiwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMTI1MTIoJWVieCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDE3LCAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDEzNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgdGVzdGwgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWN4CisgICAgICAgIGNtb3ZuZSAgICAlZWN4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAyMCglZXNwKSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDEwNzI2OTMyNDgsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlY3gKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgODI1NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgODI0MCglZWJ4KSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgbXVsc3MgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJC0xMDI0LCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTUKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQwLCAlZXNpCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgdGVzdGwgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWN4CisgICAgICAgIGNtb3ZuZSAgICAlZWN4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAyMCglZXNwKSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDEwNzI2OTMyNDgsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlY3gKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgODI1NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgODI0MCglZWJ4KSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgbXVsc3MgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJC0xMDI0LCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTUKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVzaQorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVheAorICAgICAgICBjdnRzaTJzZGwgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBjbXBsICAgICAgJDczNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDEyNTQ0KCVlYngpLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQxNzA4MCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYW5kcGQgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgbW92ZCAgICAgICV4bW02LCAlZWF4CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTI0ODAoJWVieCksICV4bW03CisgICAgICAgIG1vdmFwZCAgICAxMjQ5NiglZWJ4KSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW02LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjU1LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWF4CisgICAgICAgIG1vdmFwZCAgICA4Mzg0KCVlYngsJWVheCw4KSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBzYXJsICAgICAgJDgsICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlc2ksICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW02CisgICAgICAgIG1vdnNkICAgICAxMjUxMiglZWJ4KSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE2NTI5LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQxNywgJXhtbTYsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwYWRkZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBzaGxsICAgICAgJDQsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBhZGRsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE2LjAuMgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzE4LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE5LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIwLjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8yMC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjksICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorLkxfMlRBR19QQUNLRVRfMjIuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMTkuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIzLjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0yLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjQuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIyLjAuMgorLkxfMlRBR19QQUNLRVRfMjQuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI1LjAuMgorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNi4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMjcuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI4LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI5LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisuTF8yVEFHX1BBQ0tFVF8yNS4wLjI6CisgICAgICAgIHNocmwgICAgICAkMjAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMDQ3LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTA3NSwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMC4wLjIKKyAgICAgICAgY21wbCAgICAgICQxMDc0LCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNy4wLjIKKyAgICAgICAgY21wbCAgICAgICQxMDIzLCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOC4wLjIKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE3MjA4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI4LjAuMgorLkxfMlRBR19QQUNLRVRfMjkuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzI4LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI2LjAuMgorLkxfMlRBR19QQUNLRVRfMzEuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8zMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMyLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzMuMC4yCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8zMy4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzM0LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMzQuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8zNS4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE3MTg0LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNi4wLjIKKyAgICAgICAgdGVzdGwgICAgICQxLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNy4wLjIKKyAgICAgICAgdGVzdGwgICAgICQyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzM5LjAuMgorLkxfMlRBR19QQUNLRVRfMzYuMC4yOgorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM4LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMzkuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMxLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80MC4wLjIKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNzIwMCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzguMC4yCisgICAgICAgIGNtcGwgICAgICAkMTcxODQsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzM1LjAuMgorICAgICAgICBjbXBsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNy4wLjIKKyAgICAgICAgbW92bCAgICAgICQxNzIwOCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzM3LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzM5LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgyNTYoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW00LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVjeAorICAgICAgICBic3IgICAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZXNpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQyOCwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zOC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMDcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG1vdnNkICAgICA4MjU2KCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgYnNyICAgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQwLCAlZXNpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMjMuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8yNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorICAgICAgICBhZGRsICAgICAgJDM4NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQxLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQzMSwgJWVzaQorICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMTI1MjgoJWVieCwlZXNpLDgpLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBzaGxsICAgICAgJDE1LCAlZXNpCisgICAgICAgIG9ybCAgICAgICAlZXNpLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzQxLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDI0KCVlc3ApLCAlZXNpCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzQwLjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNDIuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDI2LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzExLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80My4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjIuMC4yCisuTF8yVEFHX1BBQ0tFVF80My4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQyLjAuMgorICAgICAgICBzaHJsICAgICAgJDIxLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTA3NSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDQuMC4yCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80NS4wLjIKKyAgICAgICAgY21wbCAgICAgICQxMDIzLCAlZWR4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80NC4wLjIKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE3MjA4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDQuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ0LjAuMgorLkxfMlRBR19QQUNLRVRfNDYuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDcuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzQ1LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQxLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80Ni4wLjIKKy5MXzJUQUdfUEFDS0VUXzQ0LjAuMjoKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjYuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzQ3LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgZGl2c2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjcsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0yLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTYsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80OC4wLjIKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHhvcmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ5LjAuMgorLkxfMlRBR19QQUNLRVRfNTAuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQxNiwgJWVzaQorICAgICAgICBvcmwgICAgICAgJWVzaSwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8xNy4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMjQsICVlZHgKKy5MXzJUQUdfUEFDS0VUXzIxLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzQ5LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVzaQorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNTEuMC4yCisgICAgICAgIG1vdnNkICAgICAxMjU2MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNTEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKyAgICAgICAgbW92bCAgICAgICQyNSwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNi4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTUsICVlY3gKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJC0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkLTMxLCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBqbGUgICAgICAgLkxfMlRBR19QQUNLRVRfNTIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUzLjAuMgorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWF4CisuTF8yVEFHX1BBQ0tFVF81Mi4wLjI6CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorLkxfMlRBR19QQUNLRVRfNTMuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDI1LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3Z6d2wgICAgMjIoJWVzcCksICVlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMzIsICV4bW01CisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBwYWRkcSAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2NTYwLCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MSwgJWVheAorICAgICAgICBzaHJsICAgICAgJDQsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxMDIyLCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdnNkICAgICAoJWVieCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgICglZWJ4KSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgOCglZWJ4KSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0yCisgICAgICAgIHVucGNrbHBkICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtb3ZzZCAgICAgOCglZWJ4KSwgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQxNjc2MDgzMiwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEwLCAlZWR4CisgICAgICAgIGFkZHBkICAgICAtMzYxNiglZWJ4LCVlZHgpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgODI3MiglZWJ4KSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICA4MzM2KCVlYngpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTcsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDgzNTIoJWVieCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDgzMDQoJWVieCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMTYoJWVieCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3Z6d2wgICAgMjIoJWVzcCksICVlY3gKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW03LCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgODM3NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80OC4wLjIKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjU3NiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNTQuMC4yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTcwODAsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAxMjQ4MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbW92ZCAgICAgICV4bW02LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDEyNDk2KCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMTI1MTIoJWVieCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyNTUsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDgzODQoJWVieCwlZWR4LDgpLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTYsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQ4LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMSwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBzaGxsICAgICAgJDIwLCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlZWN4LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDE3LCAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTY1MjksICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICQxMDIzLCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMjAsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlc2ksICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMzIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTYuMC4yCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfNTUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfNDguMC4yOgorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKy5MXzJUQUdfUEFDS0VUXzU2LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81Ny4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzU3LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNTQuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNTAuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80OS4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtb3ZsICAgICAgNjQoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKHBvdykKKyMgLS0gRW5kICBwb3cKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMzIxODQ3OTYxNgorCS5sb25nCTAKKwkubG9uZwkzMjEwNTg3MTA1CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NTI0OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNjg5MTYyCisJLmxvbmcJMjUyMzAxMzAxMworCS5sb25nCTEwNDYxNTczOTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjY4NTA4MQorCS5sb25nCTM4NTE1MTM3NTgKKwkubG9uZwkzMTkwOTY4OTUyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2ODEwMDcKKwkubG9uZwkyMjQxNDY2NDY2CisJLmxvbmcJMTA0NjA0NDU5OQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNjc2OTM3CisJLmxvbmcJMjk5MDkyODI3MQorCS5sb25nCTMxOTMwODQ5ODQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjY3Mjg3MworCS5sb25nCTI5MDUxMTI3NDMKKwkubG9uZwkzMTkyOTE4NTc2CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI2Njg4MTUKKwkubG9uZwkzMzcwNTkxMjY0CisJLmxvbmcJMTA0NjA1MTc5MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNjY0NzYyCisJLmxvbmcJMzI3MjM2MTIxNgorCS5sb25nCTMxOTM3OTM2NTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjY2MDcxNAorCS5sb25nCTQ2NTQ2NzU1CisJLmxvbmcJMTA0MzIwNjkzNgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNjU2NjcyCisJLmxvbmcJMzAxNzA2NzcyNAorCS5sb25nCTMxOTIxNzc5NjIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY1MjYzNgorCS5sb25nCTM2ODg0MzY2MzEKKwkubG9uZwkzMTkyODE0OTU2CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2NDg2MDQKKwkubG9uZwkxNzA3NDYxOTkyCisJLmxvbmcJMzE5MzA1NjcxMgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNjQ0NTc4CisJLmxvbmcJMTE4ODExNDU0MAorCS5sb25nCTMxOTM2MDMwODYKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjY0MDU1NworCS5sb25nCTM1MzMxODA1NjQKKwkubG9uZwkxMDQ1NDU5Mzc1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2MzY1NDIKKwkubG9uZwkyMDAwMzM3NjMwCisJLmxvbmcJMzE5MzQ3NTU1NworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNjMyNTMyCisJLmxvbmcJMzY5ODA2MjQ0MworCS5sb25nCTMxOTM3NTI3NjYKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjYyODUyNworCS5sb25nCTMxNjE2MDYxMzgKKwkubG9uZwkzMTkwNTMyOTk1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2MjQ1MjgKKwkubG9uZwkzMTY1MjY1NDc4CisJLmxvbmcJMzE5MzE1ODQ1OQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNjIwNTM0CisJLmxvbmcJMTYwMDk0MDA3NworCS5sb25nCTMxOTMyMjY3NzcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjYxNjU0NQorCS5sb25nCTEzNjMyNzI1NTIKKwkubG9uZwkzMTkyNjE0Mjc4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2MTI1NjEKKwkubG9uZwkzOTY2MjA5OTEwCisJLmxvbmcJMzE5MTI0OTY1NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNjA4NTgzCisJLmxvbmcJMTA5MzY3Mjc4OQorCS5sb25nCTMxOTA2MzczMzAKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjYwNDYxMAorCS5sb25nCTE3MzUyMzkzNTcKKwkubG9uZwkzMTkyNzUzNjE2CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI2MDA2NDIKKwkubG9uZwkxNDcwNjY1MTU2CisJLmxvbmcJMTA0NTU1OTY5NworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNTk2Njc5CisJLmxvbmcJMzg0MDYyNDkyNgorCS5sb25nCTEwNDU5Mjg5NTMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNTkyNzIyCisJLmxvbmcJNDI1OTA3MjU1NgorCS5sb25nCTMxOTEwMzU2MjIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjU4ODc2OQorCS5sb25nCTM2MTMwODg3NTMKKwkubG9uZwkzMTkyMTY1NjgxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1ODQ4MjIKKwkubG9uZwkzMTc1MjM0NDQ2CisJLmxvbmcJMTAzOTQ4Njk0OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNTgwODgwCisJLmxvbmcJODU2NTc2NDQxCisJLmxvbmcJMTA0NTcwMjgxMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTc2OTQzCisJLmxvbmcJMjI1MzQ5ODcxOQorCS5sb25nCTMxOTMyODUzMzQKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjU3MzAxMQorCS5sb25nCTE1ODcwNzA3MjgKKwkubG9uZwkzMTkwODAxNTc3CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI1NjkwODQKKwkubG9uZwkxNTk5ODYzMTcKKwkubG9uZwkxMDQyNTE5NDM2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1NjUxNjMKKwkubG9uZwkzOTk5NTQxOTQ5CisJLmxvbmcJMzE5MjAyMDQ0MAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNTYxMjQ2CisJLmxvbmcJMzI4MTMxMDI2MgorCS5sb25nCTEwNDU1ODY3ODYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNTU3MzM1CisJLmxvbmcJMzc3NTE3OTQwNgorCS5sb25nCTEwNDUyMjYwNTUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjU1MzQyOAorCS5sb25nCTY0MzQ3MjM1NgorCS5sb25nCTMxOTM2ODE3ODYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjU0OTUyNworCS5sb25nCTI0ODE2OTc3NQorCS5sb25nCTEwNDUwNjg5NzcKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjU0NTYzMAorCS5sb25nCTMwNzAxNjYzMgorCS5sb25nCTEwNDI2NDA5MzIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjU0MTczOQorCS5sb25nCTM4NzI3MTg1MjYKKwkubG9uZwkzMTg5NzgxNDg2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjUzNzg1MworCS5sb25nCTk2OTcxMTYzMAorCS5sb25nCTMxOTE3MjQ3MzIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjUzMzk3MQorCS5sb25nCTQwMTg4MjAzOTQKKwkubG9uZwkzMTkzMTg5MjY0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1MzAwOTUKKwkubG9uZwkzMTAyMjMzMDkyCisJLmxvbmcJMTA0NTUxMDIyNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNTI2MjIzCisJLmxvbmcJMTAyOTMwNzkxMgorCS5sb25nCTMxOTM4MTI3NzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjUyMjM1NworCS5sb25nCTk4NDA4MzE1MworCS5sb25nCTEwNDU5ODc0MDMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjUxODQ5NQorCS5sb25nCTQxNzE0NTU0MDEKKwkubG9uZwkzMTkzMDg0MDgwCisJLmxvbmcJMAorCS5sb25nCTEwNzI1MTQ2MzkKKwkubG9uZwkyNTkyNjYwNzU3CisJLmxvbmcJMTA0NjEyMTY5MQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTEwNzg3CisJLmxvbmcJMjk2NDM2NTcxMgorCS5sb25nCTEwNDYwNTQ0NTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjUwNjk0MAorCS5sb25nCTM3OTI3Nzc4NzcKKwkubG9uZwkzMTkzNzA0NzI5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1MDMwOTgKKwkubG9uZwkyOTQ4NTM2MTA0CisJLmxvbmcJMzE5MjQ2NzEwMAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDk5MjYxCisJLmxvbmcJMzgzNjAwNTYxOQorCS5sb25nCTEwNDE4NzMxNjYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNDk1NDI5CisJLmxvbmcJMzEyNDU0MzE2MAorCS5sb25nCTEwNDQ0MDkxNjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjQ5MTYwMQorCS5sb25nCTI4NjIyNzkzMworCS5sb25nCTEwNDEwNjU5OTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjQ4Nzc3OQorCS5sb25nCTIxMTEyOTY3NzYKKwkubG9uZwkzMTkzNjA0NDE5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0ODM5NjEKKwkubG9uZwkyNjA2ODIyMDAxCisJLmxvbmcJMzE5Mjk0MDM5NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDgwMTQ4CisJLmxvbmcJMTk0Njk2ODAwCisJLmxvbmcJMTA0NjAyNjA2MworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDc2MzQwCisJLmxvbmcJODUzNTQ1MgorCS5sb25nCTEwNDYyMDAxNzgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNDcyNTM3CisJLmxvbmcJOTUwNDYzNjI1CisJLmxvbmcJMzE5MjczMTg5NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDY4NzM4CisJLmxvbmcJOTczODMxNTY2CisJLmxvbmcJMTA0NTY4MzE5NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDY0OTQ0CisJLmxvbmcJMzMzMDQzNTg5MgorCS5sb25nCTMxOTAyNzc1NzcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjQ2MTE1NQorCS5sb25nCTIwODY5MjA5NworCS5sb25nCTMxOTM1MTc2NTEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQ1NzM3MQorCS5sb25nCTIxMTMwOTc0MTUKKwkubG9uZwkxMDQ0NzgxNzQ5CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI0NTM1OTEKKwkubG9uZwkxMDg4ODA4OTM2CisJLmxvbmcJMzE5MzcxNjE0MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNDQ5ODE3CisJLmxvbmcJMTQ0MzAwMjEyNworCS5sb25nCTMxOTMyNTAyMDUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjQ0NjA0NgorCS5sb25nCTM5NjczNTc0MTkKKwkubG9uZwkxMDQ2MTA5NDc3CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0NDIyODEKKwkubG9uZwkzMDEzNTE3ODYxCisJLmxvbmcJMzE5MzE1OTY5MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDM4NTIwCisJLmxvbmcJMjUyNDU4NjI4NgorCS5sb25nCTEwNDYxMjE5NTEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQzNDc2NAorCS5sb25nCTE0NzY4OTI4NjEKKwkubG9uZwkxMDQ2NDM0NzMxCisJLmxvbmcJMAorCS5sb25nCTEwNzI0MzEwMTMKKwkubG9uZwkzMDg5NjQwOTUwCisJLmxvbmcJMzE5MjMwNTc4MAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0MjcyNjYKKwkubG9uZwkzODEyMjU1NTI5CisJLmxvbmcJMTA0NTczMDg3OQorCS5sb25nCTAKKwkubG9uZwkxMDcyNDIzNTI0CisJLmxvbmcJOTk1MzU0NzYyCisJLmxvbmcJMzE5MTUyODY3MworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDE5Nzg2CisJLmxvbmcJMzI2MDU2NzY4NAorCS5sb25nCTEwNDYyNzM2OTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQxNjA1MworCS5sb25nCTI3MzgyMTAyODYKKwkubG9uZwkzMTkxNDcxNTE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjQxMjMyNQorCS5sb25nCTE5MzE4NDk4MDUKKwkubG9uZwkxMDQ0NTYwNDA1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0MDg2MDEKKwkubG9uZwkzNTg4OTY2NTUKKwkubG9uZwkxMDQ0MDI5MjM3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI0MDQ4ODIKKwkubG9uZwkyMjE0NTg5ODQyCisJLmxvbmcJMzE5MzIwMjEyNgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNDAxMTY3CisJLmxvbmcJMzExODA5NzM2MworCS5sb25nCTMxOTI1OTI5MDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjM5NzQ1NworCS5sb25nCTE4MzU5OTg4ODQKKwkubG9uZwkxMDQ1Nzg4MjQ3CisJLmxvbmcJMAorCS5sb25nCTEwNzIzOTM3NTIKKwkubG9uZwkxNTg1NDg4MzE5CisJLmxvbmcJMTA0NTI4OTkxMAorCS5sb25nCTAKKwkubG9uZwkxMDcyMzkwMDUxCisJLmxvbmcJNDgwMTYwOTQ5CisJLmxvbmcJMTA0NjAzMDQ1NQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMzg2MzU0CisJLmxvbmcJMTgzMjk1OTY2NworCS5sb25nCTMxOTMwMTM2NDQKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjM4MjY2MgorCS5sb25nCTM2MTEzNDY1NTUKKwkubG9uZwkxMDQ0NTQ0MjEwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzNzg5NzUKKwkubG9uZwkyNzQ5NDE4NzM0CisJLmxvbmcJMzE5MzcxMjU4MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzc1MjkyCisJLmxvbmcJMjM5MDA0MzQ3MgorCS5sb25nCTMxOTE3MTA2NTgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjM3MTYxMworCS5sb25nCTI4MjgxOTk5MDIKKwkubG9uZwkxMDQyMjY1MjE3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIzNjc5MzkKKwkubG9uZwk1NjkyMDkzMjEKKwkubG9uZwkzMTkxMjMwOTgyCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjM2NDI3MAorCS5sb25nCTIzNjE1OTEzOQorCS5sb25nCTEwNDYyNDAxMjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzYwNjA1CisJLmxvbmcJMTAxMDY1NjI3MAorCS5sb25nCTMxOTM4MTM5NjgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjM1Njk0NAorCS5sb25nCTI0MDkwODA1OTcKKwkubG9uZwkxMDQ0MDI1MDI5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjM1MzI4OAorCS5sb25nCTU5ODQxOTUxMworCS5sb25nCTEwNDMzMjczNzAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjM0OTYzNgorCS5sb25nCTQxMDU5NTA0NzkKKwkubG9uZwkxMDQ1NzQ3OTU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIzNDU5ODgKKwkubG9uZwkzNDMyNDM4NTMKKwkubG9uZwkzMTkyNDIwMTcyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIzNDIzNDUKKwkubG9uZwkyMDg4NDM5NTMwCisJLmxvbmcJMTA0NjE3MjA5MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzMzg3MDcKKwkubG9uZwk0MTE3NzIxMTA3CisJLmxvbmcJMTA0Mzg4MjQ5NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMzM1MDcyCisJLmxvbmcJMzE5MjAzMjk1OAorCS5sb25nCTMxOTI5OTg2NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjMzMTQ0MgorCS5sb25nCTIzNjY1MjI1MTgKKwkubG9uZwkxMDQ1NDAxOTU3CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIzMjc4MTcKKwkubG9uZwkzNjg1NTMzMTQxCisJLmxvbmcJMzE5MzcwMTk0NworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzMjQxOTYKKwkubG9uZwkxMDU4NjU4NjcyCisJLmxvbmcJMzE5MzU3MjQ5MgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzMjA1NzkKKwkubG9uZwkxNjYzNDYzNDcKKwkubG9uZwkxMDQ1NDU2MzQ4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIzMTY5NjYKKwkubG9uZwkyMDI3ODg5NzcyCisJLmxvbmcJMTA0NjM0OTMwMgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzEzMzU4CisJLmxvbmcJMTA3OTQ5Nzg4OAorCS5sb25nCTEwNDQ1ODUyNTkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjMwOTc1NAorCS5sb25nCTIxODk4NTE1NzMKKwkubG9uZwkxMDQ1MTMyOTkwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIzMDYxNTQKKwkubG9uZwkyNDg2NjI5Mzg2CisJLmxvbmcJMzE5MzYxMzYyNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzMDI1NTkKKwkubG9uZwkxMjYzNjg2NTc5CisJLmxvbmcJMTA0NDc4OTI1OQorCS5sb25nCTAKKwkubG9uZwkxMDcyMjk4OTY4CisJLmxvbmcJMjQxMjA2MTc5OAorCS5sb25nCTMxOTEzNjk2MjcKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMjk1MzgxCisJLmxvbmcJNTg0MzE1NzE2CisJLmxvbmcJMzE5MzE0NDEzNQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMjkxNzk4CisJLmxvbmcJNDQ5MDAwNzM4CisJLmxvbmcJMTA0NjMzMDQ1MQorCS5sb25nCTAKKwkubG9uZwkxMDcyMjg4MjIwCisJLmxvbmcJMzkzODMyMDE1NworCS5sb25nCTEwNDQ0NDYyMjAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI4NDY0NQorCS5sb25nCTI5NDk4NDQ1OTUKKwkubG9uZwkzMTkzNDYyMzcxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyODEwNzUKKwkubG9uZwkyNzcxMzI5NjQyCisJLmxvbmcJMzE5MjEyMTU5MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyNzc1MTAKKwkubG9uZwkzOTcxNTA4NjIxCisJLmxvbmcJMzE5MzAwMjgwNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMjczOTQ4CisJLmxvbmcJNDA3MTk0MjMwMQorCS5sb25nCTEwNDQ5NTI2MTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMjcwMzkxCisJLmxvbmcJMjA5MDUwMjM5NQorCS5sb25nCTEwNDQ2NjA1NTYKKwkubG9uZwkwCisJLmxvbmcJMTA3MjI2NjgzOAorCS5sb25nCTM2NTc1MjA5NjEKKwkubG9uZwkzMTkzNzcwOTM4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyNjMyODgKKwkubG9uZwkxNjA4MTc1MTEwCisJLmxvbmcJMTA0NTU0MzIzOQorCS5sb25nCTAKKwkubG9uZwkxMDcyMjU5NzQ0CisJLmxvbmcJMjUwNjkyNDE4MAorCS5sb25nCTEwNDU1MzA1MDEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjI1NjIwMworCS5sb25nCTE4MjM4NDkzCisJLmxvbmcJMTA0NjMwNTYyMworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMjUyNjY2CisJLmxvbmcJMzg2MjY0MDQ4NworCS5sb25nCTMxOTI4ODI0MDcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjI0OTEzNAorCS5sb25nCTM4NTAxNTg3NjEKKwkubG9uZwkxMDQzNjU2MDk5CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyNDU2MDUKKwkubG9uZwkyMzU2NTI0MzU2CisJLmxvbmcJMTA0NTkxNTI5NgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMjQyMDgxCisJLmxvbmcJOTM2NDk3Mjg3CisJLmxvbmcJMzE5Mzg0MjM1MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMjM4NTYxCisJLmxvbmcJMjg0MDg0NTM0NAorCS5sb25nCTEwNDY0NTQ3NzEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjIzNTA0NQorCS5sb25nCTM2ODgxMDA3MTMKKwkubG9uZwkxMDQ0ODk1NDUxCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIyMzE1MzMKKwkubG9uZwk0Nzk5Nzk5MTMKKwkubG9uZwkzMTkzODQyNDQyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIyMjgwMjUKKwkubG9uZwkxMDE2MzIxODk4CisJLmxvbmcJMTA0NjI1MTAzMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjI0NTIxCisJLmxvbmcJNTYyMjMyNDc0CisJLmxvbmcJMzE5MTk3NDU1OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyMjEwMjIKKwkubG9uZwkzODcwNTEyMDI5CisJLmxvbmcJMzE5MzExMzg4MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMjE3NTI2CisJLmxvbmcJMTIzOTc4MDU0NworCS5sb25nCTMxOTE1ODM2MDQKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjIxNDAzNAorCS5sb25nCTI4MTU0MjEzMjcKKwkubG9uZwkxMDQ1ODczNjgyCisJLmxvbmcJMAorCS5sb25nCTEwNzIyMTA1NDcKKwkubG9uZwkyMzcxMDA5NTYxCisJLmxvbmcJMTA0MTUwODc5MgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMjA3MDYzCisJLmxvbmcJMTMwNDYzNjUyNAorCS5sb25nCTMxOTI0MTQyODQKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjIwMzU4MworCS5sb25nCTIxMDE0NDg1NAorCS5sb25nCTMxOTMzMjczMzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjIwMDEwOAorCS5sb25nCTE0NTQzMDMyNzIKKwkubG9uZwkxMDQ2MzYwMDI0CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIxOTY2MzYKKwkubG9uZwkyMDk1NzU3NTQ4CisJLmxvbmcJMTA0NDk4NDY3NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTkzMTY4CisJLmxvbmcJMjAyNzIxNTU4MAorCS5sb25nCTMxOTI4ODA5MzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjE4OTcwNQorCS5sb25nCTIxNDc5NDg4MAorCS5sb25nCTEwNDM0NTc5NTQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjE4NjI0NQorCS5sb25nCTg4NDYyNDkxNworCS5sb25nCTEwNDM0OTcwNzkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjE4Mjc4OQorCS5sb25nCTI3OTIzOTY2MzQKKwkubG9uZwkzMTkzMTcxNjg1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxNzkzMzcKKwkubG9uZwk0MTI4OTk1MjUwCisJLmxvbmcJMzE5MjEwMzQzNAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTc1ODg5CisJLmxvbmcJMzMzODY2MDQzCisJLmxvbmcJMTA0NjM3MjMyNQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTcyNDQ1CisJLmxvbmcJMjE5NDQ0NTU0NAorCS5sb25nCTMxOTM5NTg5MDUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjE2OTAwNQorCS5sb25nCTIzMTYwODIyNjkKKwkubG9uZwkzMTkyMDQxNzAzCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIxNjU1NjkKKwkubG9uZwk1ODEwMDUwNTcKKwkubG9uZwkxMDQ2MzIyODQ4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjE2MjEzNworCS5sb25nCTMyODA3ODY1MTMKKwkubG9uZwkxMDQ1NDU3MjUxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxNTg3MDgKKwkubG9uZwkyNTY3MDkzMzYxCisJLmxvbmcJMTA0NDcxMDM1OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMTU1Mjg0CisJLmxvbmcJMzc0MDQ0MzU4NAorCS5sb25nCTEwNDQyMjQyMzcKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjE1MTg2MworCS5sb25nCTM5ODEwMjgyNzIKKwkubG9uZwkxMDQyNTk2MzUxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxNDg0NDYKKwkubG9uZwkzODIwMDExMTIwCisJLmxvbmcJMzE5MTkxNTYyMworCS5sb25nCTAKKwkubG9uZwkxMDcyMTQ1MDM0CisJLmxvbmcJMjk0NjQzOTQ4NAorCS5sb25nCTMxOTM4MzEyNzYKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjE0MTYyNAorCS5sb25nCTMwNzUyNzQ0MjIKKwkubG9uZwkzMTkwMTMyNDMyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxMzgyMTkKKwkubG9uZwk0OTYwNTIxNjcKKwkubG9uZwkxMDQzNjE5NzYwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIxMzQ4MTgKKwkubG9uZwkyNzExMDY1ODkKKwkubG9uZwkzMTkyMjY1MTQ5CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxMzE0MjAKKwkubG9uZwkyMDkxOTU1Njg0CisJLmxvbmcJMTA0NDQ0MzU1NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTI4MDI2CisJLmxvbmcJNzIzMjQwMTA5CisJLmxvbmcJMzE5MTAwNzQxOQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTI0NjM2CisJLmxvbmcJMTc0ODYyOTA3MAorCS5sb25nCTEwNDQ1MTAwNzUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjEyMTI1MAorCS5sb25nCTMyODk1MjIwNDYKKwkubG9uZwkzMTkzMDk1MTc4CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIxMTc4NjgKKwkubG9uZwkzNTk5MDUyMTQ2CisJLmxvbmcJMzE5MzcyMDQyNworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTE0NDg5CisJLmxvbmcJMjQ0Njc1ODEzNQorCS5sb25nCTMxOTM0MzYzMDMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjExMTExNAorCS5sb25nCTE2NTIxNzEwOTcKKwkubG9uZwkzMTkyMTM3MTczCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxMDc3NDMKKwkubG9uZwkxMzUzMDA3MTU1CisJLmxvbmcJMTA0NDUyMzkwMgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMTA0Mzc2CisJLmxvbmcJOTkwNjAxMTA1CisJLmxvbmcJMTA0NjI5NjY2MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTAxMDEyCisJLmxvbmcJMjIyODYyNzYxOAorCS5sb25nCTMxOTMwNDEwNDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA5NzY1MworCS5sb25nCTgxMjQ4NDc1NgorCS5sb25nCTMxOTE5NTA3MjMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjA5NDI5NgorCS5sb25nCTgxNzgzMzEzMAorCS5sb25nCTMxOTIyNzkyNDIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjA5MDk0NAorCS5sb25nCTM1NjMyMjg1MjEKKwkubG9uZwkzMTkzODEwOTUxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwODc1OTUKKwkubG9uZwkyNzI5MTA4ODU5CisJLmxvbmcJMzE5MDkzNjE4NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMDg0MjUwCisJLmxvbmcJMjI0OTEyMTY2MgorCS5sb25nCTMxOTA2Mzk2OTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjA4MDkwOQorCS5sb25nCTQwODI0NzE3NDUKKwkubG9uZwkzMTkzOTI5MzY4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwNzc1NzEKKwkubG9uZwkyODI3MzIzODA2CisJLmxvbmcJMzE5MzcwODU2MQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMDc0MjM3CisJLmxvbmcJNzM1ODY2MTY3CisJLmxvbmcJMTA0MjQzNDY5MAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDcwOTA3CisJLmxvbmcJMzI0MDgwODg4OQorCS5sb25nCTMxOTE5MTg0MjIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA2NzU4MQorCS5sb25nCTQ2NjQ4Mjc3NworCS5sb25nCTMxODY5NjIyMjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA2NDI1OAorCS5sb25nCTE1NzYwNzYyOTYKKwkubG9uZwkxMDQ1ODQ5MDU2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwNjA5MzgKKwkubG9uZwkyNzUxOTIzNTYwCisJLmxvbmcJMzE5MTkxMDcwMworCS5sb25nCTAKKwkubG9uZwkxMDcyMDU3NjIzCisJLmxvbmcJMTkwODc1NTUyNworCS5sb25nCTEwNDY0Mzc1MTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA1NDMxMQorCS5sb25nCTMxNzU4NDE0MTEKKwkubG9uZwkxMDQ0NTcyODg2CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwNTEwMDIKKwkubG9uZwkxNjMzMjU4NDUwCisJLmxvbmcJMzE5MjY3MDQyMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMDQ3Njk3CisJLmxvbmcJMTg2Nzc0NjY1NworCS5sb25nCTEwNDU3MjYyMDkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjA0NDM5NgorCS5sb25nCTMzODk2ODg2NAorCS5sb25nCTMxOTMwODQ2NjIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA0MTA5OQorCS5sb25nCTE1MDE3NDI0NzEKKwkubG9uZwkzMTkxNzQyMDMxCisJLmxvbmcJMAorCS5sb25nCTEwNzIwMzc4MDUKKwkubG9uZwk0MjY2Nzc1Nzg2CisJLmxvbmcJMzE5MjY4Njk3MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDM0NTE0CisJLmxvbmcJNDI0OTI4MzU1MworCS5sb25nCTEwNDU3Njk3MjgKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjAzMTIyNworCS5sb25nCTI3NTgzNjY4NzMKKwkubG9uZwkxMDQ2NDAyMTYxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIwMjc5NDQKKwkubG9uZwkyMTYxMTg2OTkwCisJLmxvbmcJMTA0NDczNjg2NQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDI0NjY0CisJLmxvbmcJODEwMzAwMTcxCisJLmxvbmcJMTA0NTc0ODc3NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDIxMzg4CisJLmxvbmcJMTgzNjg4OTI3CisJLmxvbmcJMzE5MTUxNTU4MQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMDE4MTE1CisJLmxvbmcJMzY4ODc0MDcyCisJLmxvbmcJMzE5MjM2MzU3NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMDE0ODQ2CisJLmxvbmcJMjQ1OTA5Mjk3MAorCS5sb25nCTEwNDE3OTQ2NDAKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMDExNTgxCisJLmxvbmcJODY3NDg4NjQwCisJLmxvbmcJMTA0NjMxMDI5MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIwMDgzMTkKKwkubG9uZwk1MDE0MDg3MQorCS5sb25nCTEwNDMzMjczMjkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjAwNTA2MAorCS5sb25nCTEyNDE5MDI1MTgKKwkubG9uZwkzMTkyNzM5MjUyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwMDE4MDUKKwkubG9uZwkxMDI3ODgxNjU5CisJLmxvbmcJMzE5Mzg1ODM4OAorCS5sb25nCTAKKwkubG9uZwkxMDcxOTk4NTU0CisJLmxvbmcJMzg0NTczMjIKKwkubG9uZwkxMDQ1NDg5MTc5CisJLmxvbmcJMAorCS5sb25nCTEwNzE5OTUzMDYKKwkubG9uZwkzNDMyOTYzMzM3CisJLmxvbmcJMzE5MDk2OTM0NworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxOTkyMDYxCisJLmxvbmcJNTM0OTMxNzkyCisJLmxvbmcJMTA0NjMwMjczNAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxOTg4ODIwCisJLmxvbmcJMTgxNzg5NTI2OAorCS5sb25nCTMxOTI1NTE4NjAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTk4NTU4MgorCS5sb25nCTM1NzIzNzM4MworCS5sb25nCTMxOTE4NzA4MzMKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTk4MjM0OAorCS5sb25nCTEwODI2MjQwMQorCS5sb25nCTMxOTMzNjU4NjcKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTk3OTExNworCS5sb25nCTE5NjQ3MjkyNDQKKwkubG9uZwkxMDQyNTAyMjQ5CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE5NzU4OTAKKwkubG9uZwkyMDg4NDQ2OTU3CisJLmxvbmcJMTAzODAxMDUwMworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTcyNjY2CisJLmxvbmcJMjk0NzIzOTQ0NworCS5sb25nCTEwNDYzNzc4NDUKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTk2OTQ0NgorCS5sb25nCTc3NDkzMjA3MgorCS5sb25nCTEwNDYwNjQ4NTQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTk2NjIyOQorCS5sb25nCTQwODA5Mzc1OTAKKwkubG9uZwkzMTkzMDQxMjg0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE5NjMwMTUKKwkubG9uZwkyMjA4MjUxNDU0CisJLmxvbmcJMTA0NTk0NTA4OQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTU5ODA1CisJLmxvbmcJMjg1MDkyNDQ3NQorCS5sb25nCTEwNDU2NTA5NTkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk1NjU5OQorCS5sb25nCTcxNDA0MDk5NworCS5sb25nCTEwNDYyNzUxNTMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTk1MzM5NQorCS5sb25nCTg1NTMzNzgyCisJLmxvbmcJMzE5MjgxNjkyMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTUwMTk1CisJLmxvbmcJMTI1MjUxMTAwNQorCS5sb25nCTEwNDQ4MDU3MDYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTk0Njk5OQorCS5sb25nCTIzODQ2NTkwMzgKKwkubG9uZwkzMTkzMzkxNjAyCisJLmxvbmcJMAorCS5sb25nCTEwNzE5NDM4MDYKKwkubG9uZwk0MTY0ODE4MTMKKwkubG9uZwkxMDQzNzMwMjMzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTk0MDYxNgorCS5sb25nCTE2NzU0MjQ0OTkKKwkubG9uZwkxMDQ2MzQ4MDMwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5Mzc0MjkKKwkubG9uZwkxMTc1OTg5NTEzCisJLmxvbmcJMzE5MzAwOTExMworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxOTM0MjQ2CisJLmxvbmcJMjQwMDA4NDY1MAorCS5sb25nCTMxOTI0NTE3MTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTkzMTA2NgorCS5sb25nCTE0NjczMzU2OTIKKwkubG9uZwkzMTkzMzUwODY4CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5Mjc4OTAKKwkubG9uZwkyNjY0OTM4MDEKKwkubG9uZwkxMDQ0OTU0NDgxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE5MjQ3MTcKKwkubG9uZwkzOTE5MDkzNDQ1CisJLmxvbmcJMTA0NjAyMzU3NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxOTIxNTQ3CisJLmxvbmcJMzAxNzQwODQ4MworCS5sb25nCTEwNDQ4ODA4MjgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxOTE4MzgxCisJLmxvbmcJOTQ4ODQ5OTY2CisJLmxvbmcJMzE5Mzg5MjIyNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTE1MjE3CisJLmxvbmcJMTg3MDIzMjYwMAorCS5sb25nCTEwNDU3NzcyMjgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxOTEyMDU4CisJLmxvbmcJODIyMzgxNDkyCisJLmxvbmcJMzE5MzYzOTE4NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxOTA4OTAxCisJLmxvbmcJNzg4MjQzNzA1CisJLmxvbmcJMTA0NDk2NjM0MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTA1NzQ4CisJLmxvbmcJMTM0NDI3ODgwOQorCS5sb25nCTEwNDQ0Mjg1NDUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTkwMjU5OAorCS5sb25nCTE3Mjg2NDMwMAorCS5sb25nCTEwNDU3NjU2MDgKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTg5OTQ1MQorCS5sb25nCTIxMTU1NTQ2NworCS5sb25nCTMxOTI5NjM1NzQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxODk2MzA4CisJLmxvbmcJMzM3MzQzODAyMworCS5sb25nCTEwNDU2NDMxNjgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTg5MzE2OAorCS5sb25nCTI4NjcxODA5NjAKKwkubG9uZwkzMTg5OTQ1OTk4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTg5MDAzMQorCS5sb25nCTM2NzI0MzYyCisJLmxvbmcJMzE5MzI0MDU4NAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxODg2ODk3CisJLmxvbmcJMjE0MDE3Njk4NAorCS5sb25nCTEwNDU5NDUzNDkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTg4Mzc2NworCS5sb25nCTQzNjg0MjM2MAorCS5sb25nCTEwNDA3MTI1ODcKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTg4MDYzOQorCS5sb25nCTEyMjUxNDczMjkKKwkubG9uZwkzMTkzODE0NTk0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE4Nzc1MTUKKwkubG9uZwkxNTg2MTU3MzQ4CisJLmxvbmcJMzE5MTYxNDMyMgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE4NzQzOTUKKwkubG9uZwkzMzI5MzMyOTE4CisJLmxvbmcJMTA0MTY5OTc5MQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODcxMjc3CisJLmxvbmcJMTYzNTk2ODA0MQorCS5sb25nCTMxOTE3ODM3NTYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTg2ODE2MworCS5sb25nCTI4NzYxNTgzODIKKwkubG9uZwkxMDQ2MDk3MDkzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4NjUwNTIKKwkubG9uZwk0MjY3NTU2OTY0CisJLmxvbmcJMzE5MzcyMzAwMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODYxOTQ0CisJLmxvbmcJMTk1NDc1OTQwCisJLmxvbmcJMTA0NTUyMDc5NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODU4ODM5CisJLmxvbmcJMjIzOTE5MzUxNAorCS5sb25nCTEwNDY0Nzg2NzUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTg1NTczOAorCS5sb25nCTQxNjgyNzU1OTYKKwkubG9uZwkxMDQ0OTI2Mjg1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4NTI2MzkKKwkubG9uZwkxNDI1MTQxMTQKKwkubG9uZwkxMDQ1NTk1MTgyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4NDk1NDQKKwkubG9uZwkxOTQzNDU3OTg0CisJLmxvbmcJMzE5MjkzMDAxNQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODQ2NDUyCisJLmxvbmcJMjAyNjU5NDg5CisJLmxvbmcJMzE5MzkyNjMxNworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODQzMzYzCisJLmxvbmcJMjIwODQwODc4OQorCS5sb25nCTMxOTM4NTc0ODQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTg0MDI3NworCS5sb25nCTIyMzcyOTc1NTIKKwkubG9uZwkzMTkyOTM5NTc2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4MzcxOTUKKwkubG9uZwkyNzI2OTIwODM5CisJLmxvbmcJMTA0NDE5Mzk1NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODM0MTE1CisJLmxvbmcJMjMzNzczMjIwNworCS5sb25nCTMxOTM2MTE3NzMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTgzMTAzOQorCS5sb25nCTEzOTAwODg2MDIKKwkubG9uZwkxMDQ0MDAwMzE3CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE4Mjc5NjYKKwkubG9uZwkzODA2MTg4NzM2CisJLmxvbmcJMzE5MzQ2MzkxMworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODI0ODk2CisJLmxvbmcJMTc5NTI3NjU2MAorCS5sb25nCTEwNDM2NzE5NjUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTgyMTgyOQorCS5sb25nCTI5NjA3OTI3OTkKKwkubG9uZwkxMDQ2MjQwNDc0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4MTg3NjUKKwkubG9uZwkzMzUwNTkxNTkyCisJLmxvbmcJMzE5MzMzMzkzOQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxODE1NzA0CisJLmxvbmcJNDA4ODcwNzU0CisJLmxvbmcJMzE5MzMyMjg1NAorCS5sb25nCTAKKwkubG9uZwkxMDcxODEyNjQ3CisJLmxvbmcJNDE0NjcxNzEzMgorCS5sb25nCTEwNDYwNjM1MjAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTgwOTU5MgorCS5sb25nCTE2ODExMTQ5MTkKKwkubG9uZwkzMTkyMTE0MzEzCisJLmxvbmcJMAorCS5sb25nCTEwNzE4MDY1NDEKKwkubG9uZwkxMDk4MzkzMTM3CisJLmxvbmcJMzE5MDg0NjczMgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODAzNDkyCisJLmxvbmcJMjQzNzQ4NDk4MworCS5sb25nCTMxOTM0NDg3MTgKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTgwMDQ0NworCS5sb25nCTEwMzY4MDkxODUKKwkubG9uZwkzMTkyMDIzNTAxCisJLmxvbmcJMAorCS5sb25nCTEwNzE3OTc0MDUKKwkubG9uZwk2NTk2Njg4NDgKKwkubG9uZwkzMTkzNTk2MzEyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3OTQzNjUKKwkubG9uZwkxMTEyMDYyNDU5CisJLmxvbmcJMzE5Mjc3MzM3NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNzkxMzI5CisJLmxvbmcJNDA4Mjk1NjMzNQorCS5sb25nCTEwNDU4MzA1MTMKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTc4ODI5NgorCS5sb25nCTIzODcwODk5NjUKKwkubG9uZwkxMDQ1NTMyNjAxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE3ODUyNjYKKwkubG9uZwkxNTIyMTAxOTgwCisJLmxvbmcJMzE5Mzk0MTk1NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzgyMjM5CisJLmxvbmcJMjE1NzE5NzU4NQorCS5sb25nCTMxODgxOTMzMDUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc3OTIxNQorCS5sb25nCTk0NjgxMDIyMAorCS5sb25nCTMxOTMyMjM4MTkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc3NjE5NAorCS5sb25nCTQwNjk5NDI0NDQKKwkubG9uZwkzMTkzODc4NTQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc3MzE3NgorCS5sb25nCTE2OTM0NjM0NDAKKwkubG9uZwkxMDQ2MzYwNTg4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc3MDE2MQorCS5sb25nCTE5NTQ1NDMyNTQKKwkubG9uZwkxMDQ2NDA5MzgxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3NjcxNDkKKwkubG9uZwkxMDUwNDcxMjQ5CisJLmxvbmcJMzE5MzkzMzA5NQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NjQxNDAKKwkubG9uZwkxMjU2MjQwNDc4CisJLmxvbmcJMTA0NjQ1Njg2NQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NjExMzQKKwkubG9uZwk2NzY3NjQyNTQKKwkubG9uZwkxMDQ2MDU1NTAzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc1ODEzMQorCS5sb25nCTE0MjEwMzI5NjcKKwkubG9uZwkxMDQ0Nzc5Nzg2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc1NTEzMQorCS5sb25nCTM4NzM1OTkyCisJLmxvbmcJMzE5Mjc2NjM1NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNzUyMTM0CisJLmxvbmcJMjk2MDY2OTY5MAorCS5sb25nCTEwNDQ0ODQ2ODAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTc0OTEzOQorCS5sb25nCTc4ODcwNzM4MgorCS5sb25nCTEwNDUyOTk4OTUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTc0NjE0OAorCS5sb25nCTY4NTY4OTMwMAorCS5sb25nCTEwNDA3Nzg4MzEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTc0MzE2MAorCS5sb25nCTExNzA5OTQxODIKKwkubG9uZwkxMDQ2MTU5MTc0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3NDAxNzUKKwkubG9uZwk2NDU5MTQzNgorCS5sb25nCTEwNDYxNTM4NDkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTczNzE5MworCS5sb25nCTIzMzgwMzE2NTkKKwkubG9uZwkzMTg5OTk3NzAyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE3MzQyMTMKKwkubG9uZwkxOTQxNjI0NTY4CisJLmxvbmcJMzE4Njc1MjY3NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3MzEyMzcKKwkubG9uZwkxNDAxMjU1NTgwCisJLmxvbmcJMTA0NjM4Mzk5MAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNzI4MjYzCisJLmxvbmcJMzc2ODg4NDI3CisJLmxvbmcJMTA0NTg5NjQ1NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3MjUyOTMKKwkubG9uZwkyODMxNDI0NjM5CisJLmxvbmcJMzE5MzUzOTEwOQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxNzIyMzI1CisJLmxvbmcJMzMwMzEyMzY5NgorCS5sb25nCTEwNDQ1OTk0MTUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTcxOTM2MAorCS5sb25nCTEwNzcyOTUzMjkKKwkubG9uZwkzMTg5ODc3MzcyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3MTYzOTgKKwkubG9uZwkxNDM0MDYxMDk5CisJLmxvbmcJMzE4NDUyOTc3MQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzEzNDM5CisJLmxvbmcJMjEwNDk5MTU5MAorCS5sb25nCTEwNDUwNjIwNzQKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTcxMDQ4MworCS5sb25nCTcyMjA2MDg2OQorCS5sb25nCTMxOTM3ODg1MjYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzA0NTgwCisJLmxvbmcJMzkyODc5NjQ4NgorCS5sb25nCTEwNDYxMjkwMjAKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNjk4Njg4CisJLmxvbmcJNTg4ODQ0NjI4CisJLmxvbmcJMTA0NTQ5MjEzNQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNjkyODA3CisJLmxvbmcJMzI2NzM5MzY2CisJLmxvbmcJMzE5MzAwNDQ0NQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxNjg2OTM4CisJLmxvbmcJMjQ1NjQzNjA0MgorCS5sb25nCTEwNDYyNzgxNjkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTY4MTA4MAorCS5sb25nCTI4MzEzMDM1MTIKKwkubG9uZwkxMDQzNjcwMDQ2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTY3NTIzNAorCS5sb25nCTYwNzIyMzQxOAorCS5sb25nCTEwNDU1MDczMjIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY2OTM5OQorCS5sb25nCTQyNTQ5MjEzMzIKKwkubG9uZwkzMTkzMjkwNDgzCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NjM1NzUKKwkubG9uZwk5MTQ5OTQzMzMKKwkubG9uZwkzMTkxMjYzODUzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2NTc3NjIKKwkubG9uZwk0MTQ3MDUwMTgwCisJLmxvbmcJMzE5MzIyODU1MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNjUxOTYwCisJLmxvbmcJNTk0NTU0MTU3CisJLmxvbmcJMzE5MzUwMzkzNQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ2MTcwCisJLmxvbmcJMTA2Mjg0Njc5NgorCS5sb25nCTEwNDU5NDQzMzEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTYzNjEwOQorCS5sb25nCTI5MDkyMzg4OTMKKwkubG9uZwkzMTkzNDM2ODg0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2MjQ1NzIKKwkubG9uZwkxNjgyOTE4MTE5CisJLmxvbmcJMTA0MjIxMTg5OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjEzMDU3CisJLmxvbmcJMjQxOTIwOTQyNgorCS5sb25nCTEwNDU0MzcwNjIKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTYwMTU2NAorCS5sb25nCTI5NTEzNDEzMjEKKwkubG9uZwkzMTkwMTkzMjE0CisJLmxvbmcJMAorCS5sb25nCTEwNzE1OTAwOTMKKwkubG9uZwkzMDg0OTAwODc1CisJLmxvbmcJMzE5MjM5NDkwNworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNTc4NjQzCisJLmxvbmcJOTk5NTY3NDU0CisJLmxvbmcJMTA0NjQzMzQ0NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNTY3MjE1CisJLmxvbmcJMTU3MDEwMTg1NworCS5sb25nCTMxOTMyOTExNjAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTU1NTgwOQorCS5sb25nCTEwODA2NDc4ODEKKwkubG9uZwkzMTg1MTU0NTg1CisJLmxvbmcJMAorCS5sb25nCTEwNzE1NDQ0MjQKKwkubG9uZwkzNTI2MzA5MTc3CisJLmxvbmcJMTA0NDg0MzY0MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNTMzMDYwCisJLmxvbmcJMjIxMzQ2MzM0OQorCS5sb25nCTMxOTE3Mzg5MzAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTUyMTcxOAorCS5sb25nCTEwMzk5MjUxOTUKKwkubG9uZwkzMTkyNjE4MzUzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE1MTAzOTcKKwkubG9uZwkyMTE1NzU3MjgwCisJLmxvbmcJMzE5MzY3MTU2NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNDk5MDk3CisJLmxvbmcJMTE4ODc1MTQ5NQorCS5sb25nCTMxOTExNDU1NjAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ4NzgxOAorCS5sb25nCTM5ODM0NjE0NDkKKwkubG9uZwkzMTkzODk3MDI5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE0NzY1NjAKKwkubG9uZwk3ODIxNDE1MDAKKwkubG9uZwkxMDQyODc5OTYyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE0NjUzMjMKKwkubG9uZwk0MDM4OTA0NjI2CisJLmxvbmcJMTA0NTA2Mzg4MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNDU0MTA3CisJLmxvbmcJMjYxMzAzNjkyMQorCS5sb25nCTMxOTMyMTc2NDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTQ0MjkxMgorCS5sb25nCTIwOTU3MjM0MzUKKwkubG9uZwkxMDQ0NjI5MTc1CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE0MzE3MzcKKwkubG9uZwkzODc5Nzk1OTc0CisJLmxvbmcJMTA0NTc2Nzg3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNDIwNTgzCisJLmxvbmcJMjY2MjE5ODA0MgorCS5sb25nCTMxOTE0MzQ2MzcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTQwOTQ0OQorCS5sb25nCTQwMzc2MDU3MjIKKwkubG9uZwkzMTkzNzAzMDkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEzOTgzMzYKKwkubG9uZwkxODYwMzMxODM1CisJLmxvbmcJMTA0MDgxNDgyMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMzg3MjQzCisJLmxvbmcJMTUyMjk3MjAzMworCS5sb25nCTMxOTAzMDU5NzQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTM3NjE3MQorCS5sb25nCTIzNjE1MzQyMDcKKwkubG9uZwkxMDQzNjk5MzY2CisJLmxvbmcJMAorCS5sb25nCTEwNzEzNjUxMTkKKwkubG9uZwk0MTgwMzA5MTc5CisJLmxvbmcJMTA0NDE0MjA5OQorCS5sb25nCTAKKwkubG9uZwkxMDcxMzU0MDg3CisJLmxvbmcJMTIwMTAzODUyOAorCS5sb25nCTMxOTI5Njg3NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTM0MzA3NQorCS5sb25nCTEzNDI0NzgxNzEKKwkubG9uZwkzMTkzMjUxMjE1CisJLmxvbmcJMAorCS5sb25nCTEwNzEzMzIwODMKKwkubG9uZwkzODM2ODgzMzQ4CisJLmxvbmcJMzE5MzQ3MjAwNworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMzIxMTEwCisJLmxvbmcJMzg2NDg3NDI1MAorCS5sb25nCTEwNDU1OTMxMjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTMxMDE1OAorCS5sb25nCTIxNjk0OTQ5OTgKKwkubG9uZwkxMDQ2MDQ1MzQ2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEyOTkyMjYKKwkubG9uZwkzNzg1MTY1MDc1CisJLmxvbmcJMzE5MzMxOTI0NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMjg4MzEzCisJLmxvbmcJMTEzNzY5MjY3OAorCS5sb25nCTMxOTI3MTY3NzkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTI3NzQyMAorCS5sb25nCTE3NTIxMDc1OTgKKwkubG9uZwkxMDQ2MzY2MTIwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEyNjY1NDYKKwkubG9uZwkxOTEyNjU2OTEyCisJLmxvbmcJMTA0NjM1MjI4MQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMjU1NjkyCisJLmxvbmcJMjg4MjY3NjMzNAorCS5sb25nCTEwNDY0MDYzNTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTI0NDg1OAorCS5sb25nCTk2MzYxMjQ2MAorCS5sb25nCTEwNDUyODI4MTEKKwkubG9uZwkwCisJLmxvbmcJMTA3MTIzNDA0MworCS5sb25nCTM4MTEyNTU3NzMKKwkubG9uZwkxMDQ2MjMxNjM2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEyMjMyNDcKKwkubG9uZwkxMTI2MDU1OTg5CisJLmxvbmcJMzE5MjIyNDAzNworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMjEyNDcwCisJLmxvbmcJMjA3OTE0NTQyNworCS5sb25nCTEwNDQ0MzI0MTMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTIwMTcxMworCS5sb25nCTM2MTE1OTU2MjEKKwkubG9uZwkxMDQzMzU4NzQ1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzExOTA5NzQKKwkubG9uZwkzOTA1MjI3NjkKKwkubG9uZwkxMDQ1ODg4MjUyCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzExODAyNTUKKwkubG9uZwk0MDg3OTM5NzIzCisJLmxvbmcJMzE5MjkzMDc0NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMTY5NTU0CisJLmxvbmcJMTQ1MTQ5NDQ4MAorCS5sb25nCTMxOTAyMTkyNzQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTE1ODg3MworCS5sb25nCTQyNzE3NjE5NAorCS5sb25nCTMxOTMwNDIwMjIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTE0ODIxMAorCS5sb25nCTE4ODIzODE5NDgKKwkubG9uZwkzMTkyNzI3OTQ2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzExMzc1NjYKKwkubG9uZwkzNzM2MzEzNzcxCisJLmxvbmcJMzE5MjA4NzAxOQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMTI2OTQxCisJLmxvbmcJMTU2MDM5ODgxNgorCS5sb25nCTMxOTMxODU3MTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTExNjMzNAorCS5sb25nCTEwMjE5NDI0NDEKKwkubG9uZwkxMDQxNTI2Njk2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzExMDU3NDYKKwkubG9uZwkzNTE3MDgwMjQ5CisJLmxvbmcJMzE5MzU3NjA0MQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMDk1MTc2CisJLmxvbmcJMjI0ODU4OTg3OAorCS5sb25nCTEwNDQ1Mjc2MjQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTA4NDYyNQorCS5sb25nCTI0MTI4OTY2OTUKKwkubG9uZwkxMDQ2MTEyODY3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEwNzQwOTIKKwkubG9uZwkzODM0NzI1NzM4CisJLmxvbmcJMTA0NDU2MjM3OAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMDYzNTc4CisJLmxvbmcJMTE1MDkyMDQwNworCS5sb25nCTEwNDM3Njg5ODYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTA1MzA4MgorCS5sb25nCTEzNzkzOTM0MjgKKwkubG9uZwkzMTg4NjkwNjkwCisJLmxvbmcJMAorCS5sb25nCTEwNzEwNDI2MDQKKwkubG9uZwkzMDU4MTgzMjc4CisJLmxvbmcJMzE5MzYxNzY1NQorCS5sb25nCTAKKwkubG9uZwkxMDcxMDMyMTQ0CisJLmxvbmcJNDIxMTMzNjY1CisJLmxvbmcJMzE5MzQxNzE4NgorCS5sb25nCTAKKwkubG9uZwkxMDcxMDIxNzAyCisJLmxvbmcJMjg2MDE2MTM1NworCS5sb25nCTMxOTE4MTYxMjUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTAxMTI3OAorCS5sb25nCTE3NDI0MDU5NjQKKwkubG9uZwkxMDQzNTgwMjQwCisJLmxvbmcJMAorCS5sb25nCTEwNzEwMDA4NzIKKwkubG9uZwkyODIxMjE1OTI3CisJLmxvbmcJMzE4ODk4NDI3MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwOTkwNDgzCisJLmxvbmcJNTEwMjc1NTk3CisJLmxvbmcJMTA0NTgxMzQwMQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwOTgwMTEzCisJLmxvbmcJMzA0MjY2NTg4CisJLmxvbmcJMzE5MTE5MzUzNgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwOTY5NzYwCisJLmxvbmcJMTg1NDc4NDIxMQorCS5sb25nCTEwNDYzMDIwNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDk1OTQyNgorCS5sb25nCTM3NzMwODI4NTQKKwkubG9uZwkzMTkzMDA4ODk5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5NDkxMDgKKwkubG9uZwkzMDAzNTcyMzkyCisJLmxvbmcJMTA0NjQwNDg3OQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwOTM4ODA4CisJLmxvbmcJMTcwMjE0OTIwNAorCS5sb25nCTEwNDY0MDcyNTcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDkyODUyNgorCS5sb25nCTM5MzUzMTQ0MzkKKwkubG9uZwkxMDQ2NDM4MjgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5MTgyNjEKKwkubG9uZwkyNjc3MDg3NjA5CisJLmxvbmcJMTA0NTUwMTc0OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwOTA4MDE0CisJLmxvbmcJNDE5MDU5ODAzOQorCS5sb25nCTMxOTM2NDA1MTUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDg5Nzc4NAorCS5sb25nCTM2ODg3NDA3MgorCS5sb25nCTEwNDQ4Nzk5MjcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDg4NzU3MQorCS5sb25nCTM1ODQwNTI2OTcKKwkubG9uZwkzMTkyMDI0NjYyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA4NzczNzUKKwkubG9uZwkzNzYyMzA3ODI5CisJLmxvbmcJMTA0NTg4NjkxOAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODY3MTk3CisJLmxvbmcJNDk1NzEwOTIwCisJLmxvbmcJMTA0NjMxNzA3MgorCS5sb25nCTAKKwkubG9uZwkxMDcwODU3MDM2CisJLmxvbmcJMjI5Mjc2ODIzOAorCS5sb25nCTMxOTA4ODc1MDgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDg0Njg5MQorCS5sb25nCTEwNDQwNzgxNTEKKwkubG9uZwkzMTkzNzcyOTE0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA4MzY3NjQKKwkubG9uZwkzMjY2MDEwNDU3CisJLmxvbmcJMTA0MzQ0Mzc1NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwODI2NjUzCisJLmxvbmcJMzU3MTY2NTgyMgorCS5sb25nCTEwNDU1NDc4MjMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDgxNjU2MAorCS5sb25nCTM5MzM0ODM0NworCS5sb25nCTMxOTA1MjUxNDMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDgwNjQ4MworCS5sb25nCTQyNDE3MjI0OTgKKwkubG9uZwkzMTkyMDg0MTkzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA3OTY0MjMKKwkubG9uZwkxNjkzNzk3MDY4CisJLmxvbmcJMzE5MjgwNzk3MgorCS5sb25nCTAKKwkubG9uZwkxMDcwNzg2MzgwCisJLmxvbmcJMjg2MDA4Njc0NQorCS5sb25nCTEwNDYzMzE2NDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDc3NjM1MworCS5sb25nCTEzNjYxNDE3NTkKKwkubG9uZwkzMTkyOTc5MzYzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA3NjYzNDMKKwkubG9uZwk3Mzc4OTkyODMKKwkubG9uZwkxMDQ1ODUzMzQ2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA3NTYzNDkKKwkubG9uZwk4ODczNDg3MworCS5sb25nCTEwNDM4ODEyNTcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDc0NjM3MgorCS5sb25nCTE0MzgwMDMzMTUKKwkubG9uZwkzMTkyOTE3MTAxCisJLmxvbmcJMAorCS5sb25nCTEwNzA3MzY0MTIKKwkubG9uZwkxMDY2NTA1NTMwCisJLmxvbmcJMTA0Mzg5NjY5NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzI2NDY3CisJLmxvbmcJMjcwNjY1MzA0MQorCS5sb25nCTMxOTExMTM2NDMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDcxNjUzOQorCS5sb25nCTEzMjE3NjQ0NzYKKwkubG9uZwkxMDM5NTczNzI0CisJLmxvbmcJMAorCS5sb25nCTEwNzA3MDY2MjgKKwkubG9uZwkxMTI2NzUzMjExCisJLmxvbmcJMTA0NDUwMjk3NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNjk2NzMyCisJLmxvbmcJNzczNjQyODg0CisJLmxvbmcJMTA0NDExMDcyNworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwNjg2ODUzCisJLmxvbmcJMTI2Mzc0MzQwNgorCS5sb25nCTMxOTMxMTUyNzgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDY3Njk5MAorCS5sb25nCTMxMTUyMzc3MzIKKwkubG9uZwkzMTkzMDg5MTc2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA2NjcxNDIKKwkubG9uZwkzNjQyNjI2ODM4CisJLmxvbmcJMzE5MTE0NjAzMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNjU3MzExCisJLmxvbmcJMjA5MTY5NjQyOAorCS5sb25nCTEwNDQzMzcxNzcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDY0NzQ5NgorCS5sb25nCTMxNjg5NTgzOTEKKwkubG9uZwkxMDQ0MTk3NTY4CisJLmxvbmcJMAorCS5sb25nCTEwNzA2Mzc2OTcKKwkubG9uZwk3MTExNDg2NjkKKwkubG9uZwkzMTkzMTgxMDQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA2Mjc5MTMKKwkubG9uZwk0MjA3MTgyNzczCisJLmxvbmcJMzE5MzQwMjA5MgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNjE4MTQ1CisJLmxvbmcJOTE4MDcwNjQwCisJLmxvbmcJMzE5MjkwMjg0NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNjA4MzkzCisJLmxvbmcJMzEzNTU3MTQ0NworCS5sb25nCTMxOTIxOTM5MjgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDU5ODY1NworCS5sb25nCTEwNDM3MDU1MTcKKwkubG9uZwkzMTkzMTg4NjA0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1ODE3NzcKKwkubG9uZwkxODg2NjgwNDkyCisJLmxvbmcJMTA0Mzg5MDI4NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTYyMzY3CisJLmxvbmcJMzM3Mzc5OTQyMAorCS5sb25nCTMxOTE5MTc4MDIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDU0Mjk4OAorCS5sb25nCTI5MTk2MTgwMjUKKwkubG9uZwkzMTkyNDYxNzUyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1MjM2NDAKKwkubG9uZwkyOTI2MzY1MTU4CisJLmxvbmcJMzE5MzExMzQ5MgorCS5sb25nCTAKKwkubG9uZwkxMDcwNTA0MzIzCisJLmxvbmcJNTE5OTc4NjM4CisJLmxvbmcJMTA0NTkxODg0NgorCS5sb25nCTAKKwkubG9uZwkxMDcwNDg1MDM3CisJLmxvbmcJMzY2NTM1MzE1MQorCS5sb25nCTMxOTM1NDYyNDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDQ2NTc4MQorCS5sb25nCTIzMjc3MTg5NTgKKwkubG9uZwkxMDQ1MDUwNzk3CisJLmxvbmcJMAorCS5sb25nCTEwNzA0NDY1NTYKKwkubG9uZwkzNDUzMjY4NjEKKwkubG9uZwkzMTg4MjI0NzE2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA0MjczNjEKKwkubG9uZwkyMjYzNzQ3NDg4CisJLmxvbmcJMzE5Mjg3MTMyOAorCS5sb25nCTAKKwkubG9uZwkxMDcwNDA4MTk3CisJLmxvbmcJMzg5NDE5MjI2NAorCS5sb25nCTEwNDU2OTMxMjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDM4OTA2MworCS5sb25nCTk5NDMyMTU5MworCS5sb25nCTEwNDYzNDcyMDMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDM2OTk1OQorCS5sb25nCTM1NDAzNjY3MDAKKwkubG9uZwkxMDQyMjk2MjMwCisJLmxvbmcJMAorCS5sb25nCTEwNzAzNTA4ODYKKwkubG9uZwk5NjY0MjA3NTIKKwkubG9uZwkzMTkyNDAwNDEyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAzMzE4NDIKKwkubG9uZwkxOTU0NTExMTYwCisJLmxvbmcJMzE5MzQ2Nzc2MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMzEyODI4CisJLmxvbmcJMTg3NTAwMzA0MAorCS5sb25nCTEwNDU0ODU2MjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MDI5Mzg0NQorCS5sb25nCTQwMDMzNzIwMDUKKwkubG9uZwkzMTkzNzE0MTA5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAyNzQ4OTAKKwkubG9uZwkyMjE2MDgzNjQ0CisJLmxvbmcJMTA0NTcyMDM5OQorCS5sb25nCTAKKwkubG9uZwkxMDcwMjU1OTY2CisJLmxvbmcJMTI0MDk4NTc0MworCS5sb25nCTEwNDU4Nzk0MTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MDIzNzA3MQorCS5sb25nCTE1NzMwNjQxNjIKKwkubG9uZwkxMDQ2NDI3OTE2CisJLmxvbmcJMAorCS5sb25nCTEwNzAyMTgyMDYKKwkubG9uZwkyNTAwMTY2NTgyCisJLmxvbmcJMzE5Mzg0ODE2OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMTk5MzY5CisJLmxvbmcJODYyMTMxNTM5CisJLmxvbmcJMTA0NTYwNjA2NQorCS5sb25nCTAKKwkubG9uZwkxMDcwMTgwNTYzCisJLmxvbmcJMzczMzQyNzYyMgorCS5sb25nCTMxOTM1NDU5ODgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDE2MTc4NQorCS5sb25nCTEyNDUxNTM1OAorCS5sb25nCTEwNDU1MDQ3NjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDE0MzAzNgorCS5sb25nCTY4OTIyODAwNworCS5sb25nCTEwNDQyMzg0MzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MDEyNDMxNworCS5sb25nCTk3NjI4NDgzNQorCS5sb25nCTMxODk4Nzk5NzgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDEwNTYyNgorCS5sb25nCTI5OTc0NDYyMjQKKwkubG9uZwkzMTkzMzk0MjQ0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAwODY5NjQKKwkubG9uZwk1OTQ5ODUxNjMKKwkubG9uZwkzMTkwNDUzNDQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAwNjgzMzEKKwkubG9uZwkzNjM0NDExMDkxCisJLmxvbmcJMzE5MzAxMjY2MgorCS5sb25nCTAKKwkubG9uZwkxMDcwMDQ5NzI3CisJLmxvbmcJODQxMzE2NDgyCisJLmxvbmcJMzE5MjU1MTYwNAorCS5sb25nCTAKKwkubG9uZwkxMDcwMDMxMTUxCisJLmxvbmcJNTE4OTQ5ODQ5CisJLmxvbmcJMzE4OTUwNTY5MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMDEyNjAzCisJLmxvbmcJMjA3NjMzNjA0CisJLmxvbmcJMTA0Mzc5MTMwNQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5OTk0MDg0CisJLmxvbmcJOTI1NDE1NjMxCisJLmxvbmcJMzE4OTY1ODY3MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5OTc1NTkzCisJLmxvbmcJMzM0ODc3NTAxNQorCS5sb25nCTEwNDYyMzEwNTUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTk1NzEzMQorCS5sb25nCTQxMzc1OTM5NjEKKwkubG9uZwkxMDQ1NzYwNjQ0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5Mzg2OTYKKwkubG9uZwkzMDgxMjA3OTcyCisJLmxvbmcJMTA0NjMxOTY1MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5OTIwMjkwCisJLmxvbmcJMjkxMjgxMTgwNgorCS5sb25nCTMxOTMyNTA4NjMKKwkubG9uZwkwCisJLmxvbmcJMTA2OTkwMTkxMgorCS5sb25nCTE3MDQ2NjMyMzAKKwkubG9uZwkzMTkyNjUxMTcxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk4ODM1NjEKKwkubG9uZwkxNzI2ODg3NDczCisJLmxvbmcJMzE5MzQyNzgxNworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5ODY1MjM4CisJLmxvbmcJNTE2MzAyODczCisJLmxvbmcJMTA0MjU1NjkxOQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5ODQ2OTQzCisJLmxvbmcJMzczNzI3NzI4OQorCS5sb25nCTMxOTIwODM1MDUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTgyODY3NgorCS5sb25nCTI4Mjk5MDkwNjcKKwkubG9uZwkzMTkxNjI4NTIwCisJLmxvbmcJMAorCS5sb25nCTEwNjk4MTA0MzYKKwkubG9uZwkzNDc0ODAwMjk5CisJLmxvbmcJMzE4NzM4NDk5MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NzkyMjIzCisJLmxvbmcJMjA0MTI5MTc1NAorCS5sb25nCTMxODY3MzUwNDgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTc3NDAzOAorCS5sb25nCTMxMDA3MzkyOTAKKwkubG9uZwkzMTkyOTkxOTUxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk3NTU4ODAKKwkubG9uZwkyNjQxNjg2ODY2CisJLmxvbmcJMTA0MjQ0OTg0NgorCS5sb25nCTAKKwkubG9uZwkxMDY5NzM3NzUwCisJLmxvbmcJMTM1MzYxMjQ1NworCS5sb25nCTMxOTI5Mjg1NDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTcxOTY0NgorCS5sb25nCTE4MjMzOTgxOTAKKwkubG9uZwkzMTkzMTI1MTU2CisJLmxvbmcJMAorCS5sb25nCTEwNjk3MDE1NzAKKwkubG9uZwkyNjI5MTA4NTU4CisJLmxvbmcJMzE5Mjk4MzA4OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NjgzNTIwCisJLmxvbmcJMzE0ODg5MDgwCisJLmxvbmcJMzE5MzE3ODk0NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NjY1NDk3CisJLmxvbmcJMzQyNjg0NjQ3MAorCS5sb25nCTEwNDYwNTUwMzQKKwkubG9uZwkwCisJLmxvbmcJMTA2OTY0NzUwMgorCS5sb25nCTI0NTE1MjE3OTgKKwkubG9uZwkzMTkzMDgxNDQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk2Mjk1MzIKKwkubG9uZwk5NjMyMDAwMzAKKwkubG9uZwkxMDQ2MzE1MDg5CisJLmxvbmcJMAorCS5sb25nCTEwNjk2MTE1OTAKKwkubG9uZwkzNjQ0OTc2OTg3CisJLmxvbmcJMTA0NjQ1MDI5NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NTkzNjc0CisJLmxvbmcJMTUxNDA0NTg3NAorCS5sb25nCTMxOTMzMzc0ODkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU3NTc4NQorCS5sb25nCTI2NDA3NTI2MTUKKwkubG9uZwkzMTkyNzM0NzE1CisJLmxvbmcJMAorCS5sb25nCTEwNjk1NTc5MjIKKwkubG9uZwkxNzczODE3MzAKKwkubG9uZwkzMTkzMTA3MzQ4CisJLmxvbmcJMAorCS5sb25nCTEwNjk1MzI2NTAKKwkubG9uZwk1NDY4NzEyNjkKKwkubG9uZwkxMDQ1NjAxODQ3CisJLmxvbmcJMAorCS5sb25nCTEwNjk0OTcwMjkKKwkubG9uZwkyMjIwNDA4MTg3CisJLmxvbmcJMTA0NTk2NDg0OQorCS5sb25nCTAKKwkubG9uZwkxMDY5NDYxNDYxCisJLmxvbmcJMzEwMTIwOTc4NAorCS5sb25nCTMxOTI0MTcwOTgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTQyNTk0NAorCS5sb25nCTM3Njg4MjU3ODIKKwkubG9uZwkxMDQ2MTk2MTc4CisJLmxvbmcJMAorCS5sb25nCTEwNjkzOTA0ODAKKwkubG9uZwk3MzczMDg5NDIKKwkubG9uZwkxMDQzODcyNTU1CisJLmxvbmcJMAorCS5sb25nCTEwNjkzNTUwNjgKKwkubG9uZwkxOTQ0ODA4MTE5CisJLmxvbmcJMzE5MzM2MjMxNworCS5sb25nCTAKKwkubG9uZwkxMDY5MzE5NzA3CisJLmxvbmcJODUyNDA2MjYxCisJLmxvbmcJMzE5MTAwNDI1MAorCS5sb25nCTAKKwkubG9uZwkxMDY5Mjg0Mzk4CisJLmxvbmcJMzIwMjM3MDc0MworCS5sb25nCTMxOTI1NDk3OTYKKwkubG9uZwkwCisJLmxvbmcJMTA2OTI0OTE0MAorCS5sb25nCTkwMDYzMzk3NQorCS5sb25nCTEwNDM4NjI1NzUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTIxMzkzNAorCS5sb25nCTM0MTcxNjg1NjQKKwkubG9uZwkzMTkzMjEzMTY4CisJLmxvbmcJMAorCS5sb25nCTEwNjkxNzg3NzgKKwkubG9uZwkyNTEzMzA5OTcyCisJLmxvbmcJMTA0NjA1MTk1MworCS5sb25nCTAKKwkubG9uZwkxMDY5MTQzNjc0CisJLmxvbmcJMTgzNjg0Njk2OAorCS5sb25nCTEwNDQwMzY2NTMKKwkubG9uZwkwCisJLmxvbmcJMTA2OTEwODYyMQorCS5sb25nCTY3NTM5MTM2MgorCS5sb25nCTMxOTMzMzQ5NzIKKwkubG9uZwkwCisJLmxvbmcJMTA2OTA3MzYxOAorCS5sb25nCTE4NTkzOTgwODYKKwkubG9uZwkzMTkxNjY4NzI5CisJLmxvbmcJMAorCS5sb25nCTEwNjkwMzg2NjYKKwkubG9uZwkzODM1OTk0MDQzCisJLmxvbmcJMzE5MzI1MjE5NgorCS5sb25nCTAKKwkubG9uZwkxMDY5MDAzNzY0CisJLmxvbmcJNTYzMzM3MjQ2CisJLmxvbmcJMzE5MjA2MDUzMAorCS5sb25nCTAKKwkubG9uZwkxMDY4OTY4OTEyCisJLmxvbmcJMzcxNTE1NDIxMAorCS5sb25nCTEwNDU1OTI3MTYKKwkubG9uZwkwCisJLmxvbmcJMTA2ODkzNDExMQorCS5sb25nCTUxNDE1NjM2CisJLmxvbmcJMzE5MjE5MzkzOQorCS5sb25nCTAKKwkubG9uZwkxMDY4ODk5MzU5CisJLmxvbmcJODIyMDQ5MTA4CisJLmxvbmcJMTA0NTg0NjA4MAorCS5sb25nCTAKKwkubG9uZwkxMDY4ODY0NjU4CisJLmxvbmcJMzczOTA0MzM0MAorCS5sb25nCTMxOTMxODQ5NDkKKwkubG9uZwkwCisJLmxvbmcJMTA2ODgzMDAwNgorCS5sb25nCTI1MDA4Mjg5OTcKKwkubG9uZwkzMTkzMTE1NjM4CisJLmxvbmcJMAorCS5sb25nCTEwNjg3OTU0MDMKKwkubG9uZwkxNDc5MzM1MDg5CisJLmxvbmcJMTA0NTQ1ODIzMworCS5sb25nCTAKKwkubG9uZwkxMDY4NzYwODUwCisJLmxvbmcJMTkxNDA5ODU5OAorCS5sb25nCTEwNDUwNzk4MzMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODcyNjM0NgorCS5sb25nCTE0NzAzNzQ5MDkKKwkubG9uZwkxMDQ2MTI1NDcxCisJLmxvbmcJMAorCS5sb25nCTEwNjg2OTE4OTIKKwkubG9uZwkyMDQ4MTAxMTg1CisJLmxvbmcJMzE5Mjk2MDAyNAorCS5sb25nCTAKKwkubG9uZwkxMDY4NjU3NDg2CisJLmxvbmcJODAxMTAxODAyCisJLmxvbmcJMTA0MjUyMzQ1NAorCS5sb25nCTAKKwkubG9uZwkxMDY4NjIzMTI5CisJLmxvbmcJNDEyMTcxNDY3CisJLmxvbmcJMTA0NDc5OTQyNQorCS5sb25nCTAKKwkubG9uZwkxMDY4NTg4ODIxCisJLmxvbmcJMjEyNDU2NjA0OQorCS5sb25nCTEwNDA0NTk4NDMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODU1NDU2MQorCS5sb25nCTIwODc1NTgyNjMKKwkubG9uZwkxMDQ2MDgzMTAyCisJLmxvbmcJMAorCS5sb25nCTEwNjg1MjAzNTAKKwkubG9uZwkyOTAzODkzMTYKKwkubG9uZwkxMDQ1MjIwMDIzCisJLmxvbmcJMAorCS5sb25nCTEwNjg0NzM0MzAKKwkubG9uZwkzOTM3Mzc4MTUKKwkubG9uZwkxMDQ1NzcwMDg1CisJLmxvbmcJMAorCS5sb25nCTEwNjg0MDUyMDIKKwkubG9uZwkzMjczMTExNjU4CisJLmxvbmcJMzE5MzU5NDMzNgorCS5sb25nCTAKKwkubG9uZwkxMDY4MzM3MDY4CisJLmxvbmcJMzA3NjkzNTQxOQorCS5sb25nCTMxOTE5OTM5MzQKKwkubG9uZwkwCisJLmxvbmcJMTA2ODI2OTAzMAorCS5sb25nCTE1NjQyNzk3MjEKKwkubG9uZwkxMDQwNzEzNjMyCisJLmxvbmcJMAorCS5sb25nCTEwNjgyMDEwODgKKwkubG9uZwkxOTUwMTAzNzg3CisJLmxvbmcJMzE5MTI4NTQ3MworCS5sb25nCTAKKwkubG9uZwkxMDY4MTMzMjQwCisJLmxvbmcJMTExMzAxNjE3CisJLmxvbmcJMTA0NjE0MDQ3MAorCS5sb25nCTAKKwkubG9uZwkxMDY4MDY1NDg4CisJLmxvbmcJMjc0MDkzMzY1OQorCS5sb25nCTEwNDYwOTE4OTgKKwkubG9uZwkwCisJLmxvbmcJMTA2Nzk5NzgzMgorCS5sb25nCTEyNjcxMzE0NjIKKwkubG9uZwkzMTkyOTQ3MDI0CisJLmxvbmcJMAorCS5sb25nCTEwNjc5MzAyNjgKKwkubG9uZwk2Mjk3ODczNDMKKwkubG9uZwkxMDQ1NTk5MTE0CisJLmxvbmcJMAorCS5sb25nCTEwNjc4NjI4MDAKKwkubG9uZwkyOTQzMDI5NzQ2CisJLmxvbmcJMzE5MTEwMDYyMQorCS5sb25nCTAKKwkubG9uZwkxMDY3Nzk1NDI2CisJLmxvbmcJMjUzODYzMTE1MQorCS5sb25nCTMxOTM5NTM5ODkKKwkubG9uZwkwCisJLmxvbmcJMTA2NzcyODE0NAorCS5sb25nCTM4ODE3OTUwMzMKKwkubG9uZwkzMTkxMzc3MzYzCisJLmxvbmcJMAorCS5sb25nCTEwNjc2NjA5NTYKKwkubG9uZwkyNzUyNzQ3MDU4CisJLmxvbmcJMzE4NjI1MDEwMworCS5sb25nCTAKKwkubG9uZwkxMDY3NTkzODYyCisJLmxvbmcJODkyMTcwMDE0CisJLmxvbmcJMzE5MzMzMDM5MAorCS5sb25nCTAKKwkubG9uZwkxMDY3NTI2ODYwCisJLmxvbmcJMjAwMDk4NTc4MworCS5sb25nCTMxOTI5Njg2NDcKKwkubG9uZwkwCisJLmxvbmcJMTA2NzQ1OTk1MAorCS5sb25nCTE5NTQwNzczMDQKKwkubG9uZwkxMDQ0Mzk5OTA4CisJLmxvbmcJMAorCS5sb25nCTEwNjczMzU5MDAKKwkubG9uZwk0MTIwNzAyODQ3CisJLmxvbmcJMzE5MzE1MDczMAorCS5sb25nCTAKKwkubG9uZwkxMDY3MjAyNDQ4CisJLmxvbmcJMzUzNDg5OTgwCisJLmxvbmcJMTA0NTY3Njc0NAorCS5sb25nCTAKKwkubG9uZwkxMDY3MDY5MTg0CisJLmxvbmcJMjYwOTY0MzMyNAorCS5sb25nCTMxOTIxMDgwMDEKKwkubG9uZwkwCisJLmxvbmcJMTA2NjkzNjEwMAorCS5sb25nCTI5MDQ0MzMzMTcKKwkubG9uZwkxMDQ0ODM2NTQxCisJLmxvbmcJMAorCS5sb25nCTEwNjY4MDMyMDAKKwkubG9uZwkzMTk2NTY3OTAKKwkubG9uZwkxMDQ0ODYzOTA0CisJLmxvbmcJMAorCS5sb25nCTEwNjY2NzA0ODQKKwkubG9uZwkyNDA3OTg3MzMxCisJLmxvbmcJMzE5Mjk5NTA4MworCS5sb25nCTAKKwkubG9uZwkxMDY2NTM3OTQ4CisJLmxvbmcJMjQzNzc0NjEyMAorCS5sb25nCTMxOTMxMjc3MzMKKwkubG9uZwkwCisJLmxvbmcJMTA2NjQwNTU5MgorCS5sb25nCTc2MjU3MDIxNQorCS5sb25nCTMxODk5NDY5OTcKKwkubG9uZwkwCisJLmxvbmcJMTA2NjE0NTA0MAorCS5sb25nCTMzMTcxNTk2OTQKKwkubG9uZwkxMDQ2MDYwMTI1CisJLmxvbmcJMAorCS5sb25nCTEwNjU4ODEwNTYKKwkubG9uZwkyMzE3ODQ1ODg2CisJLmxvbmcJMzE5MTY3OTE3NgorCS5sb25nCTAKKwkubG9uZwkxMDY1NjE3NDI0CisJLmxvbmcJMzY2NTE5NTgxNgorCS5sb25nCTEwNDU2MzM4NTMKKwkubG9uZwkwCisJLmxvbmcJMTA2NTM1NDE2MAorCS5sb25nCTIwMDg3MzAzNTUKKwkubG9uZwkzMTkzODk4MjExCisJLmxvbmcJMAorCS5sb25nCTEwNjQ4MjkyNjQKKwkubG9uZwkzNzQ2MjM2MTkyCisJLmxvbmcJMTA0NjEyMTQ3MQorCS5sb25nCTAKKwkubG9uZwkxMDY0MzAzNjgwCisJLmxvbmcJODg1Mjk2NzUzCisJLmxvbmcJMzE5MTg1MjQ0MQorCS5sb25nCTAKKwkubG9uZwkxMDYzMjUzNjk2CisJLmxvbmcJNDQ5OTc2NDk1CisJLmxvbmcJMzE5MjY4MjY2MworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NTI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY1MjQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzMxNjAxOTIKKwkubG9uZwkzNzA5MTM4NTcKKwkubG9uZwkzMjEwNTg3MTA1CisJLmxvbmcJMTg0MTkxNDEzMAorCS5sb25nCTMyMTMwNTk0NDgKKwkubG9uZwkzOTk1MzQxOTM4CisJLmxvbmcJMzIxNDYwNzEwNQorCS5sb25nCTI2NzczODEyMTAKKwkubG9uZwkzMjE2MzIwNzMxCisJLmxvbmcJMzAxMTc3OTg4MgorCS5sb25nCTMyMTg0Nzk1NDIKKwkubG9uZwkxMzY3ODMyMDM1CisJLmxvbmcJMTA2NjQwMzA1OAorCS5sb25nCTI4OTQyODUyNDMKKwkubG9uZwkxMDY3OTM2OTIzCisJLmxvbmcJMTIxNTIyMTQ1MgorCS5sb25nCTEwNjk4MzUxMDIKKwkubG9uZwkzNzA5MTM4NTcKKwkubG9uZwkzMjEwNTg3MTA1CisJLmxvbmcJMjY3NzM4MTIxMAorCS5sb25nCTMyMTYzMjA3MzEKKwkubG9uZwk0MTcyNjQyNDI5CisJLmxvbmcJMTA1NjA2ODM4MgorCS5sb25nCTEyMTUyMjE0NTEKKwkubG9uZwkxMDY5ODM1MTAyCisJLmxvbmcJMTA5MjYzODE1NgorCS5sb25nCTMxODQ5MjU2MTgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJOTk3MTk1Nzc2CisJLmxvbmcJNDIwMDI1MDU1OQorCS5sb25nCTEwNzI2OTYwOTAKKwkubG9uZwkyODA4MTI3MzQ1CisJLmxvbmcJMzE2MjgzMDUxNAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkzMzk0MTE1ODUKKwkubG9uZwkxMDcyNzAxODAwCisJLmxvbmcJMjY0NTg4OTgyCisJLmxvbmcJMzE2MjY4NTIzMworCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcyNzA0NjY2CisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjE1NTkxNzEKKwkubG9uZwk3NzI5MTQxMjQKKwkubG9uZwkxMDcyNzA3NTQwCisJLmxvbmcJNDAwNDM3Mjc2MgorCS5sb25nCTEwMTMyNzg3MzcKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MjcxMDQyMQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjM1OTU1NDgKKwkubG9uZwkxOTI4NzQ2MTYxCisJLmxvbmcJMTA3MjcxMzMxMQorCS5sb25nCTk4MzYxNzY3NgorCS5sb25nCTEwMTUzMzM3NTMKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MjcxNjIwOAorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE1OTAzMjAyCisJLmxvbmcJMjM4ODIxMjU3CisJLmxvbmcJMTA3MjcxOTExNAorCS5sb25nCTE0Njk2OTQ4NzEKKwkubG9uZwkzMTYzOTMzNTYzCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MjcyMjAyNworCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYzMzI4OTkxCisJLmxvbmcJNzI4OTM0NDU0CisJLmxvbmcJMTA3MjcyNDk0OAorCS5sb25nCTE0MTM4NDI2ODgKKwkubG9uZwkxMDE1MjI3MTg4CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MjcyNzg3NworCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDEzMDI0NDQ2CisJLmxvbmcJNDEzMzg4MTgyNAorCS5sb25nCTEwNzI3MzA4MTMKKwkubG9uZwkyMTQ4MTU1MzQ1CisJLmxvbmcJMzE2Mzk3OTg3NQorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTI2MDI1MTQ3MTMKKwkubG9uZwkxMDcyNzM2NzExCisJLmxvbmcJMjI2ODkyOTMzNgorCS5sb25nCTEwMTU0MDI4NjAKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MjczOTY3MgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE2NjM2OTc0CisJLmxvbmcJMTE3MjU5Nzg5MworCS5sb25nCTEwNzI3NDI2NDEKKwkubG9uZwkxMTQ0MzMyNjMKKwkubG9uZwkxMDE2Mzk2MTY5CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3Mjc0NTYxOAorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTYwNzgwNDQKKwkubG9uZwk1OTA5NjIxNTYKKwkubG9uZwkxMDcyNzQ4NjAzCisJLmxvbmcJMzgyOTM0NjY2NgorCS5sb25nCTMxNjQzMjQxNzMKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcyNzUxNTk2CisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAxMDg0MjEzNQorCS5sb25nCTE2MDg0OTM1MDkKKwkubG9uZwkxMDcyNzU0NTk3CisJLmxvbmcJMzE1OTYyMjE3MQorCS5sb25nCTMxNjM4NTYzMTMKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3Mjc1NzYwNgorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYxMTY4ODc3CisJLmxvbmcJNjg1MTg3OTAyCisJLmxvbmcJMTA3Mjc2MDYyNAorCS5sb25nCTM3ODczMTk4OQorCS5sb25nCTEwMTU4OTE2OTEKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3Mjc2MzY0OQorCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjM5OTc0NTYKKwkubG9uZwkyODc1MDc1MjU0CisJLmxvbmcJMTA3Mjc2NjY4MworCS5sb25nCTQxNDQyMzMzMzAKKwkubG9uZwkzMTY0MzgyMjkyCisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzI3Njk3MjUKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1OTQ3MTM4MAorCS5sb25nCTM1MTQwNTIyNworCS5sb25nCTEwNzI3NzI3NzYKKwkubG9uZwkzMTI1MzM3MzI4CisJLmxvbmcJMzE2MDg3MTA1NQorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcyNzc1ODM0CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjM3NjI2MjMKKwkubG9uZwkyNDcxNDQwNjg2CisJLmxvbmcJMTA3Mjc3ODkwMQorCS5sb25nCTk2ODgzNjI2NworCS5sb25nCTMxNjMyNjM0NjQKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3Mjc4MTk3NgorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE1MTY5MTMwCisJLmxvbmcJMTQxNjc0MTgyNgorCS5sb25nCTEwNzI3ODUwNjAKKwkubG9uZwkyMTk2MzgwMjEwCisJLmxvbmcJMTAxMjQ2MjEzOQorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwkyMjU3OTU5ODcyCisJLmxvbmcJMTA3Mjc5MTI1MgorCS5sb25nCTM4MDI5NDYxNDgKKwkubG9uZwkxMDE0MDEzNTAzCisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3Mjc5NDM2MQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYzNjIzNDU5CisJLmxvbmcJMTQ4MDAyMzM0MworCS5sb25nCTEwNzI3OTc0NzgKKwkubG9uZwkyMjQ3MTk2MTY4CisJLmxvbmcJMTAxNjM3NjAyOQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcyODAwNjAzCisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTU5NjI0NDQKKwkubG9uZwk0MTYyMDMwMTA4CisJLmxvbmcJMTA3MjgwMzczNworCS5sb25nCTI3NjM0Mjg0ODAKKwkubG9uZwkxMDE2NTc3OTI1CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJMjUwMjQzMzg5OQorCS5sb25nCTEwNzI4MTAwMzEKKwkubG9uZwkyMTQ4NTk1OTEzCisJLmxvbmcJMTAxNjA3MjU2NworCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzI4MTMxOTEKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTY5ODgwMTQKKwkubG9uZwkxNTg4ODcxMjA3CisJLmxvbmcJMTA3MjgxNjM1OQorCS5sb25nCTE0MzQzOTU4MgorCS5sb25nCTMxNjQwMTE5OTIKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcyODE5NTM2CisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYzNjc2NTY4CisJLmxvbmcJMjIxODMxNTM0MQorCS5sb25nCTEwNzI4MjI3MjEKKwkubG9uZwkyNjk0Mjk1Mzg4CisJLmxvbmcJMzE2NDMzNzQ0NAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcyODI1OTE1CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTU5MjQ1OTcKKwkubG9uZwk4OTcwOTk4MDEKKwkubG9uZwkxMDcyODI5MTE4CisJLmxvbmcJNzU0NzU2Mjk3CisJLmxvbmcJMTAxNjI4OTU4MQorCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcyODMyMzI5CisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTUxOTYwMzAKKwkubG9uZwkyNzI1ODQzNjY1CisJLmxvbmcJMTA3MjgzNTU0OQorCS5sb25nCTE0MzM5MTcwODcKKwkubG9uZwkxMDE1ODg3MDk5CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzI4Mzg3NzgKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNjcwNTE1MAorCS5sb25nCTQyMTk2MDYwMjYKKwkubG9uZwkxMDcyODQyMDE1CisJLmxvbmcJMjQzNDU3NDc0MgorCS5sb25nCTEwMTU3MzAxMjQKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTg5Nzg0NDM0MQorCS5sb25nCTEwNzI4NDg1MTcKKwkubG9uZwkxMjU0MzAwNDYwCisJLmxvbmcJMTAxNjMyNDUxNAorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcyODUxNzgxCisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTUyMDEwNzUKKwkubG9uZwk4NzQzNzI5MDUKKwkubG9uZwkxMDcyODU1MDU0CisJLmxvbmcJMTAwMjYzNzg4CisJLmxvbmcJMTAxNjk4OTMwOAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwkxOTcyNDg0OTc2CisJLmxvbmcJMTA3Mjg2MTYyNgorCS5sb25nCTY3NTI5MDMwMQorCS5sb25nCTMxNjI2ODg2MjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMTcyNDk3NjkxNQorCS5sb25nCTEwNzI4NjgyMzQKKwkubG9uZwk0MjA5MDkyMjMKKwkubG9uZwkzMTY0MTY1OTU1CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTk2NDEwNzA1NQorCS5sb25nCTEwNzI4NzQ4NzgKKwkubG9uZwkyODAwNDM5NTg4CisJLmxvbmcJMzE2Mzg4MTc5NworCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwk1MjY2NTI4MDkKKwkubG9uZwkxMDcyODgxNTU4CisJLmxvbmcJNDIyMzQ1OTczNgorCS5sb25nCTEwMTY5Mjc5NTEKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTI1MzkzNTIxMQorCS5sb25nCTEwNzI4ODgyNzQKKwkubG9uZwkxMzk1MzgyOTMxCisJLmxvbmcJMzE2MDc1MTE4OQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzI4OTE2NDYKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNTQ3NzM1NAorCS5sb25nCTM5OTE4NDM1ODEKKwkubG9uZwkxMDcyODk1MDI2CisJLmxvbmcJNDA5Mjg1MzQ1NworCS5sb25nCTEwMTU2MzQzMzkKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3Mjg5ODQxNgorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE1NzE3MDk1CisJLmxvbmcJMTAwMDkyNTc0NgorCS5sb25nCTEwNzI5MDE4MTYKKwkubG9uZwkxMDE4NDkxNjcyCisJLmxvbmcJMzE2NDM1ODEyMAorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNzI2MjE2NzQ5CisJLmxvbmcJMTA3MjkwODY0MgorCS5sb25nCTI0NjY4MDgyMjgKKwkubG9uZwkzMTYyNzI0OTgxCisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzI5MTIwNjkKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MzI0OTkwMgorCS5sb25nCTI3MzI0OTI4NTkKKwkubG9uZwkxMDcyOTE1NTA1CisJLmxvbmcJMjY5MTQ3OTY0NgorCS5sb25nCTMxNjMzMDQyNjAKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcyOTE4OTUxCisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjM5NjIwOTAKKwkubG9uZwk1ODkxOTg2NjYKKwkubG9uZwkxMDcyOTIyNDA2CisJLmxvbmcJMjY2NDM0NjE3MgorCS5sb25nCTMxNjQyMDY1MzgKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MjkyNTg3MAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTY0NTA5NTgxCisJLmxvbmcJNDYwNDA3MDIzCisJLmxvbmcJMTA3MjkyOTM0NAorCS5sb25nCTQyMzcxNzUwOTIKKwkubG9uZwkzMTY0MTg3MDQ1CisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MjkzMjgyNworCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYxODQyNzQyCisJLmxvbmcJMzIxOTk0MjY0NAorCS5sb25nCTEwNzI5MzYzMTkKKwkubG9uZwkzNzk4OTkwNjE2CisJLmxvbmcJMTAxNjQxNzM4MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTExNTY0NDA0MzUKKwkubG9uZwkxMDcyOTQzMzMzCisJLmxvbmcJMjM1MTQ1MTI0OQorCS5sb25nCTEwMTUwMTU2MzIKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3Mjk0Njg1NAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTU3MzI3NDUKKwkubG9uZwkzNzQzMTc1MDI5CisJLmxvbmcJMTA3Mjk1MDM4NAorCS5sb25nCTIwNzI4MTI0OTAKKwkubG9uZwkzMTYzMjIzNjUxCisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcyOTUzOTI1CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjQwNjU4MjcKKwkubG9uZwkzMjc4MzQ4MzI0CisJLmxvbmcJMTA3Mjk1NzQ3NAorCS5sb25nCTMwNjk0OTc0MTYKKwkubG9uZwkxMDE1Nzk5Mjg4CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwk2NTQ5MTkzMDYKKwkubG9uZwkxMDcyOTY0NjAzCisJLmxvbmcJMzIzMjk2MTc1NworCS5sb25nCTMxNjQwOTYwNDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTA2NTY2MjkzMgorCS5sb25nCTEwNzI5NzE3NzAKKwkubG9uZwkyNTMzNjcwOTE1CisJLmxvbmcJMTAxNTU3ODgxNAorCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcyOTc1MzY4CisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDExMzkxMzU0CisJLmxvbmcJMTExODI5NDU3OAorCS5sb25nCTEwNzI5Nzg5NzYKKwkubG9uZwkyMTk3NDk1Njk0CisJLmxvbmcJMzE2MDk1Nzk3NworCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcyOTgyNTkzCisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTY4OTQ1MzkKKwkubG9uZwkxNzIwMzk4MzkxCisJLmxvbmcJMTA3Mjk4NjIyMQorCS5sb25nCTM5ODA2Nzg5NjMKKwkubG9uZwkzMTY0MzQ4NjU2CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTM3ODQ0ODY2MTAKKwkubG9uZwkxMDcyOTkzNTA1CisJLmxvbmcJMTU4MTg4MzA0MAorCS5sb25nCTMxNjI3NDc1MjkKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3Mjk5NzE2MgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE2NzEyMDM0CisJLmxvbmcJMzkzMzA1OTAzMQorCS5sb25nCTEwNzMwMDA4MjkKKwkubG9uZwkyMTMzMzY2NzY4CisJLmxvbmcJMzE2MjU4MDQwOAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDczMDA0NTA2CisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTQ4NDIyNjMKKwkubG9uZwkzMDg4NTY0NTAwCisJLmxvbmcJMTA3MzAwODE5MworCS5sb25nCTE3NjIzMTE1MTcKKwkubG9uZwkxMDE2MDk0MjQ5CisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTIxNzg0NjA2NzEKKwkubG9uZwkxMDczMDE1NTk3CisJLmxvbmcJNzc3ODc4MDk4CisJLmxvbmcJMzE2Mzg5MTA2OQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyMTM1MjQxMTk4CisJLmxvbmcJMTA3MzAyMzA0MQorCS5sb25nCTEyMzY3NDc4NzEKKwkubG9uZwkxMDE0NjM3NzIzCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzMwMjY3NzgKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MzUxODU5NworCS5sb25nCTM4OTY0NjMwODcKKwkubG9uZwkxMDczMDMwNTI1CisJLmxvbmcJMTEzOTc5Nzg3MworCS5sb25nCTMxNjIyODIzODEKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MzAzNDI4MworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjI1MzY2MzgKKwkubG9uZwk0MTA5ODA2ODg3CisJLmxvbmcJMTA3MzAzODA1MAorCS5sb25nCTQyMjQwMzk2NgorCS5sb25nCTEwMTU1MTc4MDUKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MzA0MTgyOAorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYzMzgzOTY0CisJLmxvbmcJMzcyMzAzODkzMAorCS5sb25nCTEwNzMwNDU2MTYKKwkubG9uZwkzNzg0NjUyNjQKKwkubG9uZwkzMTYzNjE4MTU4CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MzA0OTQxNQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNjcwNzg4NAorCS5sb25nCTM2ODkwNzE4MjMKKwkubG9uZwkxMDczMDUzMjIzCisJLmxvbmcJMjMyMTAwNDk5NgorCS5sb25nCTMxNjM2MDEyOTIKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJNjcxMDI1MTAwCisJLmxvbmcJMTA3MzA2MDg3MgorCS5sb25nCTM4MzIwMTQzNTEKKwkubG9uZwkzMTY0MDcwNjA2CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwk0MjIyMTIyNDk5CisJLmxvbmcJMTA3MzA2ODU2MQorCS5sb25nCTEyNzczNzgwNzQKKwkubG9uZwkzMTY0MzA1MzEzCisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzMwNzI0MjIKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAxMDU4NDM0NworCS5sb25nCTI0MjU5ODE4NDMKKwkubG9uZwkxMDczMDc2MjkzCisJLmxvbmcJMjgzMDM5MDg1MQorCS5sb25nCTMxNjQzOTUxNzUKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDczMDgwMTc1CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNjgzMzc4NQorCS5sb25nCTU1MTM0OTEwNQorCS5sb25nCTEwNzMwODQwNjcKKwkubG9uZwkzODIxOTE2MDUwCisJLmxvbmcJMzE2MzE1NTE2NQorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDczMDg3OTY5CisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjM4MDgzMjIKKwkubG9uZwkzODcyMjU3NzgwCisJLmxvbmcJMTA3MzA5MTg4MgorCS5sb25nCTEyNTM1OTIxMDMKKwkubG9uZwkxMDE3MDA2OTEwCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTQ4ODE4ODQxMworCS5sb25nCTEwNzMwOTk3NDEKKwkubG9uZwkzMTk5ODIxMDI5CisJLmxvbmcJMTAxNjYxMjYyNAorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTQyNzM3NzA0MjMKKwkubG9uZwkxMDczMTA3NjQxCisJLmxvbmcJMzM4MzE4MDgwOQorCS5sb25nCTMxNjQyNjc0NzcKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MzExMTYwOAorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTY0MzIxMjg5CisJLmxvbmcJMzMzOTIwMzU3NAorCS5sb25nCTEwNzMxMTU1ODUKKwkubG9uZwkxNDgzNDk3NzgwCisJLmxvbmcJMzE2MzQ1NzMzMAorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDczMTE5NTczCisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTI5Mzg5MjYKKwkubG9uZwkyOTc5OTYwMTIwCisJLmxvbmcJMTA3MzEyMzU3MgorCS5sb25nCTI1OTkxMDk3MjUKKwkubG9uZwkxMDE1NTQ3MDY5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJNDIwMTk3NzY2MgorCS5sb25nCTEwNzMxMzE2MDIKKwkubG9uZwk3NDgzMzAyNTQKKwkubG9uZwkxMDE0NjQyOTMzCisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTM3MjE2ODg2NDUKKwkubG9uZwkxMDczMTM5Njc2CisJLmxvbmcJMzA2OTI3NjkzNworCS5sb25nCTEwMTY4ODc5NzcKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MzE0MzczMAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYxMTc3NjU4CisJLmxvbmcJMjU1NTk4NDYxMworCS5sb25nCTEwNzMxNDc3OTQKKwkubG9uZwkyNjUyNTU1NDQyCisJLmxvbmcJMzE2MzYwMTI2OAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDczMTUxODY5CisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MzA0NDg3OQorCS5sb25nCTE3MjcyNzg3MjcKKwkubG9uZwkxMDczMTU1OTU2CisJLmxvbmcJMzU2MjcxMDYyMworCS5sb25nCTEwMTI1MjA1MTYKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMjI2MzUzNTc1NAorCS5sb25nCTEwNzMxNjQxNjIKKwkubG9uZwk3NTIyMzM1ODYKKwkubG9uZwkzMTYzNjg3NTg0CisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTkwMzMzNDkwOQorCS5sb25nCTEwNzMxNzI0MTMKKwkubG9uZwkxNjM2NDYyMTA4CisJLmxvbmcJMTAxNjA4ODU3MworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkyOTgwODAyMDU3CisJLmxvbmcJMTA3MzE4MDcwOAorCS5sb25nCTM3ODYxOTg5NgorCS5sb25nCTEwMTY4MjE4NzkKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwk5NTA4MDM3MDIKKwkubG9uZwkxMDczMTg5MDQ5CisJLmxvbmcJMTY1NTM2NDkyNgorCS5sb25nCTEwMTYyODU2MDgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTU4NzgxNDAzCisJLmxvbmcJMTA3MzE5NzQzNQorCS5sb25nCTIyMjE0NjQ3MTIKKwkubG9uZwkzMTY0MzM1MDI5CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwkxNjYwOTEzMzkyCisJLmxvbmcJMTA3MzIwNTg2NgorCS5sb25nCTQyMTg1OTk2MDQKKwkubG9uZwkxMDE2MTg0MjgzCisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MzIxMDA5OQorCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEzOTk2ODAyCisJLmxvbmcJMjIyNDE0NTU1MworCS5sb25nCTEwNzMyMTQzNDMKKwkubG9uZwkzNDgyNTIyMDMwCisJLmxvbmcJMzE2MjUzNzc0NQorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDczMjE4NTk5CisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjM3MTY3NDIKKwkubG9uZwkyOTE2MTU3MTQ1CisJLmxvbmcJMTA3MzIyMjg2NgorCS5sb25nCTIxOTQ4NzU2NQorCS5sb25nCTEwMTYzNTc5NDMKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MzIyNzE0NQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTY0NDI1MjQ1CisJLmxvbmcJNTE1NDU3NTI3CisJLmxvbmcJMTA3MzIzMTQzNgorCS5sb25nCTgzNjcwOTMzMworCS5sb25nCTEwMTY2OTk4MDIKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MzIzNTczOAorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYzMDg0NDIwCisJLmxvbmcJMzk2MzE5NTIxCisJLmxvbmcJMTA3MzI0MDA1MgorCS5sb25nCTQxNzI0MjA4MTYKKwkubG9uZwkzMTYwMTIzMjA4CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzMyNDQzNzcKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2NDU4Nzc2OAorCS5sb25nCTM2NDM5MDkxNzQKKwkubG9uZwkxMDczMjQ4NzE0CisJLmxvbmcJMzUzNzU4NjEwOQorCS5sb25nCTEwMTU0MDMyMjMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MzI1MzA2MworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE2Njk4MDUwCisJLmxvbmcJMjc1OTM1MDI4NworCS5sb25nCTEwNzMyNTc0MjQKKwkubG9uZwkxMTQ4NTI2NjM0CisJLmxvbmcJMTAxNjk0MzUwOQorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzMTM0NTkyODg4CisJLmxvbmcJMTA3MzI2NjE4MQorCS5sb25nCTQyMzIyNjY4NjIKKwkubG9uZwkxMDE3MDM5NzEwCisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MzI3MDU3OAorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjE1MTEyNjIKKwkubG9uZwkxNTc3NjA4OTIxCisJLmxvbmcJMTA3MzI3NDk4NgorCS5sb25nCTE4NzU0ODk1MTAKKwkubG9uZwkzMTY0MDE2OTcwCisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzMyNzk0MDYKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNTQwMTQ5MQorCS5sb25nCTM0OTIyOTM3NzAKKwkubG9uZwkxMDczMjgzODM4CisJLmxvbmcJMjI0ODAzMjIxMAorCS5sb25nCTEwMTY0MzU0MDIKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTE0MDM2NjIzMDYKKwkubG9uZwkxMDczMjkyNzM5CisJLmxvbmcJMjc4ODgwOTU5OQorCS5sb25nCTMxNjI3MTk1ODMKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MzI5NzIwNworCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTYwODkxMzM1CisJLmxvbmcJNzI3Njg1MzQ5CisJLmxvbmcJMTA3MzMwMTY4OAorCS5sb25nCTIwMzgyNDY4MDkKKwkubG9uZwkzMTYzNDA3MzE4CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzMzMDYxODAKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MTg2OTE4MAorCS5sb25nCTI1OTE0NTMzNjMKKwkubG9uZwkxMDczMzEwNjg1CisJLmxvbmcJMjEzMjM5NjE4MgorCS5sb25nCTMxNjAxMjI3NzQKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MzMxNTIwMgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTY0NDExOTk1CisJLmxvbmcJMzgzMzIwOTUwNgorCS5sb25nCTEwNzMzMTk3MzEKKwkubG9uZwkyNzIyOTIwNjg0CisJLmxvbmcJMTAxNDgwMzQxOAorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkxMjk3MzUwMTU3CisJLmxvbmcJMTA3MzMyODgyNworCS5sb25nCTEzMDgwMjIwNDAKKwkubG9uZwkzMTY0NDYxMTM0CisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzMzMzMzOTMKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxNDc5MTIzOAorCS5sb25nCTQyNDM5MjkxNworCS5sb25nCTEwNzMzMzc5NzIKKwkubG9uZwkyNzQ5MjAyOTk1CisJLmxvbmcJMzE2Mzg4NzI5NAorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzMzNDI1NjMKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxNDUwNjY5OAorCS5sb25nCTIzNjYxMDgzMTgKKwkubG9uZwkxMDczMzQ3MTY2CisJLmxvbmcJMjg2Nzk4NTEwMgorCS5sb25nCTMxNjI4MTA4MzAKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MzM1MTc4MgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYzNzczMjU3CisJLmxvbmcJMzk4NTU1MzU5NQorCS5sb25nCTEwNzMzNTY0MTAKKwkubG9uZwk0MDAyMTQ2MDYyCisJLmxvbmcJMTAxNjg4MjcxMgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyMTUyMDczOTQ0CisJLmxvbmcJMTA3MzM2NTcwNQorCS5sb25nCTE0ODY4NjA1NzYKKwkubG9uZwkzMTY0MjUyMDMyCisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzMzNzAzNzEKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2NDQxNzkwMgorCS5sb25nCTIzMzEyNzEyNTAKKwkubG9uZwkxMDczMzc1MDUwCisJLmxvbmcJODEyMDU3NDQ2CisJLmxvbmcJMTAxMzI1NjAyMgorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzMzNzk3NDIKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNjg0MzEzNAorCS5sb25nCTE0MDUxNjkyNDEKKwkubG9uZwkxMDczMzg0NDQ2CisJLmxvbmcJMjk5ODUzOTY4OQorCS5sb25nCTMxNjM4Nzk1MjcKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MzM4OTE2MworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTYxMzQzNDUKKwkubG9uZwk1NTcxNDk4ODIKKwkubG9uZwkxMDczMzkzODkzCisJLmxvbmcJMzY3MjcyMDcwOQorCS5sb25nCTEwMTU1ODU4NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MzM5ODYzNQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYzNTI1Njg0CisJLmxvbmcJOTc3MDIwNzg4CisJLmxvbmcJMTA3MzQwMzM5MQorCS5sb25nCTMwNjUxMDA1MTcKKwkubG9uZwkxMDE2NTkwMTM5CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzM0MDgxNTkKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE2NTcwMzE3CisJLmxvbmcJMzg2MTA1MDExMQorCS5sb25nCTEwNzM0MTI5NDAKKwkubG9uZwkyNTQ4OTM3NzMKKwkubG9uZwkzMTYzODYxNzU2CisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MzQxNzczNQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTY0MzMxNzY1CisJLmxvbmcJMTgyMjA2NzAyNgorCS5sb25nCTEwNzM0MjI1NDIKKwkubG9uZwkxMjQxOTk0OTU2CisJLmxvbmcJMTAxNjM4ODg2NgorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTM2NDMzMzQ4OQorCS5sb25nCTEwNzM0MzIxOTYKKwkubG9uZwkzOTIzNzM3NzQ0CisJLmxvbmcJMzE2MjQ2OTk0OQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk3MDM3MTA1MDYKKwkubG9uZwkxMDczNDQxOTAyCisJLmxvbmcJMTM4NDY2MDg0NgorCS5sb25nCTEwMTYyNDQ0NjcKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJNDA2MjY2MTA5MgorCS5sb25nCTEwNzM0NTE2NjAKKwkubG9uZwkxNDIyNjE2MDA2CisJLmxvbmcJMzE2NDMwMzg5NAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzM0NTY1NjAKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTY0NTM2MDE5CisJLmxvbmcJMzA4MDM1MTUxOQorCS5sb25nCTEwNzM0NjE0NzIKKwkubG9uZwkzMzc5MTI2Nzg5CisJLmxvbmcJMzE1ODI2NjU3NworCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDczNDY2Mzk4CisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTUxNjg0NjQKKwkubG9uZwkzMjg3NTIzODQ3CisJLmxvbmcJMTA3MzQ3MTMzNworCS5sb25nCTE2MjU5NzE1MzkKKwkubG9uZwkzMTU4MDU4NTMxCisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTE2MzE2OTU2NzcKKwkubG9uZwkxMDczNDgxMjU2CisJLmxvbmcJMjcxNzYzMzA3NgorCS5sb25nCTMxNjMzOTI2MDIKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MzQ4NjIzNQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE1MDkxMzAxCisJLmxvbmcJMzY1NzA2NTc3MgorCS5sb25nCTEwNzM0OTEyMjgKKwkubG9uZwkzOTkwMjU2MjMKKwkubG9uZwkzMTY0MDA1NjU0CisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzM0OTYyMzUKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNjgwODc1OQorCS5sb25nCTIwMjk3MTQyMTAKKwkubG9uZwkxMDczNTAxMjU1CisJLmxvbmcJNjEzNjYwMDc5CisJLmxvbmcJMTAxNjE0NzcxOQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzM1MDYyODkKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNjIzNjEwOQorCS5sb25nCTIzMDc0NDI5OTUKKwkubG9uZwkxMDczNTExMzM2CisJLmxvbmcJMzE5MDExNzcyMQorCS5sb25nCTMxNjM0NTMxMTUKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MzUxNjM5NworCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDE0MDgyNzQ4CisJLmxvbmcJMTQ2NDk3NjYwMworCS5sb25nCTEwNzM1MjE0NzIKKwkubG9uZwkzNTA3MjkyNDA1CisJLmxvbmcJMzE2MzAyNjExMAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjkzOQorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwk3Nzg5MDExMDkKKwkubG9uZwkxMDczNTMxNjYzCisJLmxvbmcJMjI0ODE4Mzk1NAorCS5sb25nCTMxNjIzMTczMjcKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTUzMjczNDMyNAorCS5sb25nCTEwNzM1NDE5MDkKKwkubG9uZwkzMDk0MjE2NTM1CisJLmxvbmcJMzE2NDIxMTQzMworCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDczNTQ3MDUzCisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjQzODg0MDcKKwkubG9uZwk3MjE5OTYxMzYKKwkubG9uZwkxMDczNTUyMjExCisJLmxvbmcJNTYzNzU0NzM0CisJLmxvbmcJMTAxNjQxOTg5NAorCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM5MzkxNDgyNDYKKwkubG9uZwkxMDczNTYyNTY4CisJLmxvbmcJMzIxMDM1MjE0OAorCS5sb25nCTEwMTYzMjI4OTkKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MzU2Nzc2OAorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE1MjEzMzE0CisJLmxvbmcJMzg5ODc5NTczMQorCS5sb25nCTEwNzM1NzI5ODIKKwkubG9uZwkxMjQ5OTk0MTQ0CisJLmxvbmcJMTAxMjkxODM5NAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzM1NzgyMTEKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MzYyNzIwMQorCS5sb25nCTE5MTI1NjE3ODEKKwkubG9uZwkxMDczNTgzNDUzCisJLmxvbmcJMzE0NzQ5NTEwMgorCS5sb25nCTEwMTY3MjY4MjkKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTM1OTQxNTg4NjkKKwkubG9uZwkxMDczNTkzOTgwCisJLmxvbmcJMjQ1NjUyMTcwMAorCS5sb25nCTMxNjQzMDUxMzcKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MzU5OTI2NQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE2MjU3MTExCisJLmxvbmcJMTY3OTU1ODIzMgorCS5sb25nCTEwNzM2MDQ1NjUKKwkubG9uZwkyMzkwMzQyMjg3CisJLmxvbmcJMzE2NDM4MjU0NgorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzM2MDk4NzkKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MzY2MTc3MworCS5sb25nCTE3OTY4MzI1MzUKKwkubG9uZwkxMDczNjE1MjA3CisJLmxvbmcJMzE3Njk1NTcxNgorCS5sb25nCTMxNjE2MzQwODkKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwk5OTEzNTg0ODIKKwkubG9uZwkxMDczNjI1OTA3CisJLmxvbmcJODM4NzE1MDE5CisJLmxvbmcJMzE2NDIwNjI0NAorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDczNjMxMjc4CisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTUyNTg3NjEKKwkubG9uZwk2MTA3NTgwMDYKKwkubG9uZwkxMDczNjM2NjY1CisJLmxvbmcJMTk2NTIwOTM5NworCS5sb25nCTMxNjI5MTQ4MDgKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MzY0MjA2NQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE2MjU1Nzc4CisJLmxvbmcJMjAwOTk3MDQ5NgorCS5sb25nCTEwNzM2NDc0ODEKKwkubG9uZwkyMTU5MDM5NjY1CisJLmxvbmcJMzE2MzYyMTUyNAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTIyNTYzMjUyMzAKKwkubG9uZwkxMDczNjU4MzU2CisJLmxvbmcJNTgwMTE3NzQ2CisJLmxvbmcJMTAxNjM2NTg3MQorCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTI3MTk1MTU5MjAKKwkubG9uZwkxMDczNjY5MjkwCisJLmxvbmcJMjc2MDMzMjk0MQorCS5sb25nCTEwMTYxODY1MDkKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MzY3NDc3OQorCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE2OTczMzAwCisJLmxvbmcJNDgxNzA2MjgyCisJLmxvbmcJMTA3MzY4MDI4NAorCS5sb25nCTE2OTYwNzkxNzMKKwkubG9uZwkzMTYzNzU5MTA0CisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MzY4NTgwMworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE2MzA4MTMzCisJLmxvbmcJMTIyMjQ3MjMwOAorCS5sb25nCTEwNzM2OTEzMzcKKwkubG9uZwkxMDU0MzU3NDcwCisJLmxvbmcJMzE2MjA2OTU5NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDczNjk2ODg2CisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNjcxNDIwOQorCS5sb25nCTIwMzg5NzM2ODgKKwkubG9uZwkxMDczNzAyNDUwCisJLmxvbmcJODkyOTQxMzc0CisJLmxvbmcJMTAxNzA5NTAzNQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDczNzA4MDI5CisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjQ0NTM2NTAKKwkubG9uZwkzNTkyOTIyNQorCS5sb25nCTEwNzM3MTM2MjQKKwkubG9uZwkyODA5Nzg4MDQxCisJLmxvbmcJMzE2MDQ4NTU0NAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDczNzE5MjMzCisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTU0OTg4MzUKKwkubG9uZwk5MTU1OTI0NjgKKwkubG9uZwkxMDczNzI0ODU4CisJLmxvbmcJMzUyOTQ3ODk0CisJLmxvbmcJMzE2MjA3Mjk0NworCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS5sb25nCTE3OTc5MjM4MDEKKwkubG9uZwkxMDczNzM2MTUzCisJLmxvbmcJMTk1MDU0NzQyNworCS5sb25nCTEwMTQyNzc2MzUKKwkubG9uZwkzODg0NjA3MjgxCisJLmxvbmcJMTA2MjU5MDU5MQorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkxMDY4MjY0MjAwCisJLmxvbmcJMTg3NDQ4MDc1OQorCS5sb25nCTEwNjU1OTU1NjMKKwkubG9uZwk0Mjg2NzYwMzM1CisJLmxvbmcJMTA3MDUxNDEwOQorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA3MjA0OTczMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjE5NTMzMzc4CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwxMjU3NgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2Vfc2luaC5TIGIvbGlibS94ODYvZV9zaW5oLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDZiMDRiNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2Vfc2luaC5TCkBAIC0wLDAgKzEsMTQwNyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgc2luaCh4KT0oZXhwKHgpLWV4cCgteCkpLzIKKy8vCisvLyAgTGV0IHx4fD14SCt4TCAodXBwZXIgMjYgYml0cywgbG93ZXIgMjcgYml0cykKKy8vICBsb2cyKGUpIHJvdW5kZWQgdG8gMjYgYml0cyAoaGlnaCBwYXJ0KSBwbHVzIGEgZG91YmxlIHByZWNpc2lvbiBsb3cgcGFydCBpcworLy8gICAgICAgICAgTDJFSCtMMkVMICh1cHBlciAyNiwgbG93ZXIgNTMgYml0cykKKy8vCisvLyAgTGV0IHhIKkwyRUg9aytmK3JgLCB3aGVyZSAoaytmKSoyXjc9aW50KHhIKkwyRUgqMl43KSwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZj0wLmIxIGIyIC4uLiBiNywgayBpbnRlZ2VyCisvLyAgMl5mIGlzIGFwcHJveGltYXRlZCBhcyBUcFtmXStEcFtmXSwgYW5kIDJeey1mfSBhcyBUbltmXStEbltmXQorLy8gIFRwIHN0b3JlcyB0aGUgaGlnaCA1MyBiaXRzLCBEcCBzdG9yZXMgKDJeZi1UcFtmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIGVefHh8PTJee2srZn0qMl5yLCByPXJgK3hMKkwyRUgrfHh8KkwyRUwsIHxyfDwyXnstOH0rMl57LTE0fSwKKy8vICAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsyMy82NCwzKjJeNykKKy8vICBlXnstfHh8fT0yXnstay1mfSoyXnstcn0KKy8vCisvLyAgZV58eHwgaXMgYXBwcm94aW1hdGVkIGFzIDJeaypUcCsyXmsqVHAqYzEqcigxK2MyKnIrLi4rYzUqcl40KSsyXmsqRHA9CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgID0yXmsqVHArMl5rKlRwKlAxNSsyXmsqRHAKKy8vICBlXnstfHh8fSBhcHByb3hpbWF0ZWQgYXMgMl57LWt9KlRuLTJeey1rfSpUbipjMSpyKDEtYzIqcisuLitjNSpyXjQpKzJeey1rfSpEbgorLy8KKy8vICBGb3IgfHh8IGluIFsxLzgsIDMqMl43KSwgc2luaCh4KSBpcyBmb3JtZWQgYXMKKy8vICAgICAgUk4oMl5rKlRwLTJeey1rfSpUbikrMl5rKlRwKlAxNS0yXnsta30qVG4qUGAxNS0yXnsta30qVG5MLTJeey1rfSpEbisyXmsqRHAKKy8vCisvLyAgRm9yIHggaW4gKDMqMl43LCAzKjJeOCksIHNpZ24oeCkqKGVefHh8KS8yIGlzIHJldHVybmVkLCBhbmQKKy8vICB0aGUgcmVzdWx0IGlzIGNoZWNrZWQgZm9yIG92ZXJmbG93LgorLy8KKy8vICBGb3IgfHh8PDIzLzY0LCBhIFRheWxvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyB1c2VkIChkZWdyZWUgMTMpCisvLyAgVG8gcmVkdWNlIHJvdW5kaW5nIGVycm9ycywgdGhlIHAzKnheMyB0ZXJtIGlzIGNvbXB1dGVkIGFzCisvLyAgICAgKHAzKnhoXjMpX2hpZ2grWyhwMyp4bCooMyp4KnhoK3hsXjIpKSsocDMqeGheMylfbG93XSwKKy8vICB3aGVyZSB4PXhoK3hsLCAoeGggYXJlIHRoZSBsZWFkaW5nIDE3IGJpdHMgb2YgeCksIGFuZAorLy8gICAgIChwMyp4aF4zKV9oaWdoPVJOKHgrcDMqeGheMykteAorLy8gIChlcnJvciBib3VuZCBmb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgYmVsb3cgMC41MSB1bHApCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBzaW5oKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHNpbmgoKy8tSU5GKSA9ICsvLUlORgorLy8gIHNpbmgoeCkgPSB4IGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBzaW5oKDApPTAgaXMgZXhhY3QKKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICAgIHNpbmgoeCkgb3ZlcmZsb3dzICBmb3IgeCA+IAorLy8gICAgNzEwLjQ3NTg2MDA3Mzk0Mzg2MzQyNjM5MzM2MzYyNDgxMTE3MjQ4NTM1MTU2MjUwID0gTUFYTE9HK2xvZygyKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIHNpbmgKK0VOVFJZKHNpbmgpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDAoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA0MjcyKCVlYngpLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MTkyKCVlYngpLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNDIwMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MDk2KCVlYngpLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYzNDMsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNzcsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGN2dHNkMnNpICAleG1tMywgJWVheAorICAgICAgICBzaGxsICAgICAgJDMsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA0MTEyKCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0MTI4KCVlYngpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkMzI3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgNDE0NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEyNywgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDMsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ2NTUyMCwgJWVheAorICAgICAgICBhZGRsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQxNjEsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW01LCAleG1tNQorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBwc3VidyAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAoJWVieCwlZWR4LDgpLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgMjA0OCglZWJ4LCVlZHgsOCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNDE2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICA0MTc2KCVlYngpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHNodWZwZCAgICAkMCwgJXhtbTUsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICglZWJ4LCVlZHgsOCksICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgNDE2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIDQxNzYoJWVieCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkMTI3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYzNDMsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNTg1NiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgbW92YXBkICAgIDQyMDgoJWVieCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmFwZCAgICA0MjI0KCVlYngpLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDQyNDAoJWVieCksICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgNDI1NiglZWJ4KSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW02LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNzM5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxNTM0NCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDEyNywgJWVkeAorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMjQoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChzaW5oKQorIyAtLSBFbmQgIHNpbmgKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKHNpbmhsLCBzaW5oKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MjcwNDY2NgorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYxNTU5MTcxCisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzI3MTA0MjEKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYzNTk1NTQ4CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzI3MTYyMDgKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNTkwMzIwMgorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzI3MjIwMjcKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MzMyODk5MQorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzI3Mjc4NzcKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMzAyNDQ0NgorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcyNzM5NjcyCisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTY2MzY5NzQKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcyNzQ1NjE4CisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNjA3ODA0NAorCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzI3NTE1OTYKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDEwODQyMTM1CisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzI3NTc2MDYKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MTE2ODg3NworCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcyNzYzNjQ5CisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mzk5NzQ1NgorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcyNzY5NzI1CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTk0NzEzODAKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3Mjc3NTgzNAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYzNzYyNjIzCisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzI3ODE5NzYKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNTE2OTEzMAorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcyNzk0MzYxCisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjM2MjM0NTkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MjgwMDYwMworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE1OTYyNDQ0CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MjgxMzE5MQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNjk4ODAxNAorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzI4MTk1MzYKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjM2NzY1NjgKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MjgyNTkxNQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE1OTI0NTk3CisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzI4MzIzMjkKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNTE5NjAzMAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcyODM4Nzc4CisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTY3MDUxNTAKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzI4NTE3ODEKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNTIwMTA3NQorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3Mjg5MTY0NgorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE1NDc3MzU0CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzI4OTg0MTYKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNTcxNzA5NQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MjkxMjA2OQorCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYzMjQ5OTAyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MjkxODk1MQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYzOTYyMDkwCisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzI5MjU4NzAKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2NDUwOTU4MQorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzI5MzI4MjcKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MTg0Mjc0MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcyOTQ2ODU0CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNTczMjc0NQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3Mjk1MzkyNQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTY0MDY1ODI3CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzI5NzUzNjgKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTEzOTEzNTQKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3Mjk4MjU5MworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE2ODk0NTM5CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcyOTk3MTYyCisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTY3MTIwMzQKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MzAwNDUwNgorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDE0ODQyMjYzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MzAyNjc3OAorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYzNTE4NTk3CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzMwMzQyODMKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYyNTM2NjM4CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzMwNDE4MjgKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MzM4Mzk2NAorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzMwNDk0MTUKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTY3MDc4ODQKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MzA3MjQyMgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDEwNTg0MzQ3CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MzA4MDE3NQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTY4MzM3ODUKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MzA4Nzk2OQorCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYzODA4MzIyCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDczMTExNjA4CisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjQzMjEyODkKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MzExOTU3MworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDEyOTM4OTI2CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDczMTQzNzMwCisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjExNzc2NTgKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MzE1MTg2OQorCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjMwNDQ4NzkKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDczMjEwMDk5CisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTM5OTY4MDIKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MzIxODU5OQorCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYzNzE2NzQyCisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzMyMjcxNDUKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2NDQyNTI0NQorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDczMjM1NzM4CisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjMwODQ0MjAKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MzI0NDM3NworCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTY0NTg3NzY4CisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzMyNTMwNjMKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNjY5ODA1MAorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDczMjcwNTc4CisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MTUxMTI2MgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDczMjc5NDA2CisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTU0MDE0OTEKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDczMjk3MjA3CisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNjA4OTEzMzUKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MzMwNjE4MAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYxODY5MTgwCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzMzMTUyMDIKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2NDQxMTk5NQorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MzMzMzM5MworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDE0NzkxMjM4CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MzM0MjU2MworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDE0NTA2Njk4CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzMzNTE3ODIKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2Mzc3MzI1NworCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MzM3MDM3MQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTY0NDE3OTAyCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MzM3OTc0MgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE2ODQzMTM0CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzMzODkxNjMKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE2MTM0MzQ1CisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzMzOTg2MzUKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MzUyNTY4NAorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDczNDA4MTU5CisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNjU3MDMxNworCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzM0MTc3MzUKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2NDMzMTc2NQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MzQ1NjU2MAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjQ1MzYwMTkKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MzQ2NjM5OAorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE1MTY4NDY0CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDczNDg2MjM1CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTUwOTEzMDEKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MzQ5NjIzNQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE2ODA4NzU5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MzUwNjI4OQorCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE2MjM2MTA5CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzM1MTYzOTcKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxNDA4Mjc0OAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzM1NDcwNTMKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2NDM4ODQwNworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDczNTY3NzY4CisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTUyMTMzMTQKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDczNTc4MjExCisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjM2MjcyMDEKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDczNTk5MjY1CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTYyNTcxMTEKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDczNjA5ODc5CisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjM2NjE3NzMKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MzYzMTI3OAorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE1MjU4NzYxCisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzM2NDIwNjUKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNjI1NTc3OAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDczNjc0Nzc5CisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTY5NzMzMDAKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDczNjg1ODAzCisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTYzMDgxMzMKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MzY5Njg4NgorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTY3MTQyMDkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MzcwODAyOQorCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTY0NDUzNjUwCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzM3MTkyMzMKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNTQ5ODgzNQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDcyNjgxOTIyCisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTIwNjcxODgKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MjY3MDY1NworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE0NDUwMjU5CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzI2MzcyMjcKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNTI1OTU1NworCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDcyNjI2MjAzCisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTU5MjQ3MjQKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDcyNjE1MjQwCisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjMzMjk1MjMKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MjYwNDMzNQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjM0NjI2OTEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzI1NzE5NzQKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2MzAxMDU5OQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDcyNTUwNjg5CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTUyMDg1MzUKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzI1NDAxMzQKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNTgxNjk2MAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDcyNTE5MTkyCisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTQxNjQ3MzgKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDcyNTA4ODA3CisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjMzNzU3MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MjQ5ODQ3NworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTYzMzM5ODMxCisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzI0ODgyMDMKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MjM2Mzk2MworCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDcyNDc3OTg0CisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTMyNTMwNjcKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MjQ1NzcxMworCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE1MTg3NTMzCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzI0NDc2NTkKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNTc2MDE4MworCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDcyNDM3NjU5CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTQwNDI3MjUKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MjQyNzcxNAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTYzNDg3NjkwCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzI0MDc5ODQKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTYzNDg3NDQzCisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzIzOTgxOTgKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MDc1ODM1MQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDcyMzg4NDY2CisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjMzMjA3OTkKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MjM3ODc4NgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNTk1MjM0MjIKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MjMzMTE2NgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE1Nzk0NTU4CisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzIzMjE3OTUKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2MzM2OTMyNgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDcyMzEyNDc1CisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTU0MjcxNjQKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MjI5Mzk4NworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDEzNDU4MTIyCisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzIyODQ4MTcKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxMzc0MjY2MgorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDcyMjc1Njk3CisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjI2MDAzODEKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzIyNTc2MDQKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MDgyMDYwNAorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDcyMjQ4NjMxCisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNTk4NDI3NTkKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDcyMjM5NzA3CisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2MzQxMjA4OQorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDcyMjIyMDAyCisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MDQ2MjY4NgorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDcyMjEzMjIxCisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTU0NzQ2NzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzIxOTU4MDEKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2MzUzOTE5MgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDcyMTg3MTYyCisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjIwMzU4NDQKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzIxNjE1MjMKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMjk0ODIyNgorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MjE1MzA2OQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE2MDA5MjkyCisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzIxNDQ2NjAKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2MTcyNDI3OQorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDcyMTM2Mjk3CisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNTU3MjE1MgorCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDcyMTI3OTc5CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjI1MTQ1MjEKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MjExOTcwNgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYyNTQ4NDQxCisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzIxMTE0NzcKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MTU1MDQwNworCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDcyMDk1MTU0CisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjAxMjkwODIKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MjA4NzA1OAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYwNTc0Mjk0CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDcyMDYzMDMyCisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjMyNzI3MTMKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDcyMDU1MTEwCisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjIyNjE1NjQKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MjA0NzIzMAorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYyNzM1NTUzCisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzIwMjM4NDYKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAwOTUzNTc3MQorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDcyMDE2MTM1CisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE1NDI3NjYwCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzIwMDg0NjYKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNDE0MjQzMworCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzE5NzgyMDIKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MjQ3MDAyMQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDcxOTcwNzM4CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjI4MTMxOTMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MTk2MzMxNAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE1NjA2NDkxCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcxOTQ4NTg2CisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTU2NjM0NTgKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3MTk0MTI4MgorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDEzMTcwNTk1CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcxOTI2NzkyCisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDEwMzQyNzc4CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzE5MTk2MDUKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MTU3MzM0MQorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzE5MTI0NTgKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTU5MjkwNzI5CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3MTg5ODI3OAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTQ2ODQxNjkKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MTg5MTI0NQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjM0ODgyNDgKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzE4NjM0OTMKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MjIwMTMyNgorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcxODU2NjQ4CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTUyMjgxOTMKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3MTg0MzA3MAorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE0NDI4Nzc4CisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzE4MzYzMzUKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxMzA0MTY3OQorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcxODI5NjM3CisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTUwMjIxNTEKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3MTgyMjk3NQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU3MzMwNjUyCisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzE4MTYzNDkKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNDM3MTA0OAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcxODA5NzU5CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjMxODAwOTAKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3MTgwMzIwNQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE0MTUyNDk5CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzE3OTY2ODYKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNDY3Nzg0NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MTc4Mzc1MworCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE0MTQ3NDU0CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzE3NzA5NjAKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjI2Mjc5OTIKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcxNzY0NjE1CisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE1OTM5NDM4CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzE3NTgzMDQKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTYzMTE2NDIyCisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzE3NDU3ODUKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MjU3NDg4MworCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcxNzM5NTc2CisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjE1NTkxMDUKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3MTcxNTA3MworCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjI5NDg4ODAKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3MTcwMzAyMAorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMDk3OTM1NTkKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcxNjk3MDQyCisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNTAyOTQ2OAorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcxNjkxMDk2CisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTU1ODgzOTgKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MTY4NTE4MgorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTUxMDU2NTYKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcxNjUwMzY1CisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTU3NjczMzcKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkzMjc1MjI3MTM2CisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTEwNDQxNDY5NTIKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMzE5MTYzMDYwMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDYzNjYxMTIyCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTExNDQ3NzAKKwkubG9uZwkyMTQwMTc1NzU1CisJLmxvbmcJMTAzMzg2NDI2MQorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJNDI4OTQ5NTk4OAorCS5sb25nCTEwNTQxMTM3NDcKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDY0NzA5Njk4CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjQ3MDk2OTgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA4MDQ5NzQ3OQorCS5sb25nCTQxNjY5MDE1NzIKKwkubG9uZwkxMDUzMDc3MDAzCisJLmxvbmcJMzI5ODA1MDY0CisJLmxvbmcJMTAzODQ4ODEzNAorCS5sb25nCTI3NzM5Mjc3MzAKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTc0NDEyNzIwMQorCS5sb25nCTEwNDYxNDQ1ODEKKwkubG9uZwk0MzYzMTQxMzcKKwkubG9uZwkxMDU5NzE3NTM2CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4MAorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsNDI4MAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2Zsb29yLlMgYi9saWJtL3g4Ni9mbG9vci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4NTk3MzYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9mbG9vci5TCkBAIC0wLDAgKzEsNDMgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoZmxvb3IpCisJbW92ICAgICVlc3AsJWVheAorCWFuZCAgICAkMHhmZmZmZmZmOCwlZWF4CisJbW92c2QgIDB4NCglZXNwKSwleG1tMAorCXJvdW5kc2QgJDB4MSwleG1tMCwleG1tMAorCW1vdmxwZCAleG1tMCwtMHg4KCVlYXgpCisJZmxkbCAgIC0weDgoJWVheCkKKwlyZXQKK0VORChmbG9vcikKKworQUxJQVNfU1lNQk9MKGZsb29ybCwgZmxvb3IpOwpkaWZmIC0tZ2l0IGEvbGlibS94ODYvZmxvb3JmLlMgYi9saWJtL3g4Ni9mbG9vcmYuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWI5MDczCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZmxvb3JmLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShmbG9vcmYpCisJbW92c3MgIDB4NCglZXNwKSwleG1tMAorCXJvdW5kc3MgJDB4MSwleG1tMCwleG1tMAorCW1vdnNzICAleG1tMCwtMHg0KCVlc3ApCisJZmxkcyAgIC0weDQoJWVzcCkKKwlyZXQKK0VORChmbG9vcmYpCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9saWJtX3JlZHVjZV9waTA0bC5TIGIvbGlibS94ODYvbGlibV9yZWR1Y2VfcGkwNGwuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZjZhN2QwCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvbGlibV9yZWR1Y2VfcGkwNGwuUwpAQCAtMCwwICsxLDM3MTggQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyMgLS0gQmVnaW4gIF9fbGlibV9yZWR1Y2VfcGkwNGwKKwkudGV4dAorICAgICAgIC5hbGlnbiAgICAxNiwweDkwCisJLmhpZGRlbiBfX2xpYm1fcmVkdWNlX3BpMDRsCisJLmdsb2JsIF9fbGlibV9yZWR1Y2VfcGkwNGwKK19fbGlibV9yZWR1Y2VfcGkwNGw6CisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorIyBwYXJhbWV0ZXIgMjogMjAgKyAlZWJwCisjIHBhcmFtZXRlciAzOiAyNCArICVlYnAKKy4uQjEuMToKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgYW5kbCAgICAgICQtMTYsICVlc3AKKyAgICAgICAgcHVzaGwgICAgICVlc2kKKyAgICAgICAgcHVzaGwgICAgICVlZGkKKyAgICAgICAgcHVzaGwgICAgICVlYngKKyAgICAgICAgc3VibCAgICAgICQyMCwgJWVzcAorICAgICAgICBtb3Z6d2wgICAgMTYoJWVicCksICVlYngKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVieAorICAgICAgICBtb3ZsICAgICAgMjAoJWVicCksICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxNjQxMywgJWVieAorICAgICAgICBtb3ZsICAgICAgMjQoJWVicCksICVlc2kKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWRpKSwgJWVkaQorICAgICAgICBtb3ZsICAgICAgJWVheCwgNCglZXNwKQorICAgICAgICBqZ2UgICAgICAgLi5CMS44CisuLkIxLjI6CisgICAgICAgIGZsZHQgICAgICA4KCVlYnApCisgICAgICAgIGZsZGwgICAgICBfXzRvbnBpX2RAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3RwdCAgICAgOCglZXNwKQorICAgICAgICBtb3Z6d2wgICAgMTYoJWVzcCksICVlY3gKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQzMCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgMTIoJWVzcCksICVlYXgKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsIDQoJWVzcCkKKyAgICAgICAgam5lICAgICAgIC4uQjEuNAorLi5CMS4zOgorICAgICAgICBsZWEgICAgICAgMSglZWF4KSwgJWVjeAorICAgICAgICBhbmRsICAgICAgJC0yLCAlZWN4CisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy4uQjEuNDoKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgIDQoJWVzcCksICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisuLkIxLjU6CisgICAgICAgIGZsZGwgICAgICBfVFdPXzMySEBHT1RPRkYoJWVkaSkKKyAgICAgICAgY21wbCAgICAgICQxNjQwMCwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgKCVlc3ApCisgICAgICAgIGZpbGRsICAgICAoJWVzcCkKKyAgICAgICAgamdlICAgICAgIC4uQjEuNworLi5CMS42OgorICAgICAgICBmbGRsICAgICAgX3BpMDRfM2RAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZnN1YnAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkbCAgICAgIDgrX3BpMDRfM2RAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3ViICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGRsICAgICAgMTYrX3BpMDRfM2RAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZzdWJyICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTUKKy4uQjEuNzoKKyAgICAgICAgZmxkbCAgICAgIF9waTA0XzVkQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZnN1YnJwICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMikKKyAgICAgICAgZmFkZCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdWJwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZGwgICAgICA4K19waTA0XzVkQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZnN1YiAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkbCAgICAgIDE2K19waTA0XzVkQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmc3ViciAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZnN1YnJwICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZGwgICAgICAyNCtfcGkwNF81ZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZnN1YnIgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGRsICAgICAgMzIrX3BpMDRfNWRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZzdWJyICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTUKKy4uQjEuODoKKyAgICAgICAgZmxkdCAgICAgIDgoJWVicCkKKyAgICAgICAgYWRkbCAgICAgICQtMTY0MTcsICVlYngKKyAgICAgICAgZm11bGwgICAgIF9TQ0FMRUBHT1RPRkYoJWVkaSkKKyAgICAgICAgbW92bCAgICAgICQtMjA3ODIwOTk4MSwgJWVheAorICAgICAgICBpbXVsbCAgICAgJWVieAorICAgICAgICBhZGRsICAgICAgJWVieCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDQsICVlZHgKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBzaGxsICAgICAgJDUsICVlYXgKKyAgICAgICAgZnN0cHQgICAgIDgoJWVicCkKKyAgICAgICAgZmxkdCAgICAgIDgoJWVicCkKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQwLCA4KCVlYnApCisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIGZsZHQgICAgICA4KCVlYnApCisgICAgICAgIGNtcGwgICAgICAkMTcsICVlYngKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGpsICAgICAgICAuLkIxLjEwCisuLkIxLjk6CisgICAgICAgIGxlYSAgICAgICAoLCVlZHgsOCksICVlYXgKKyAgICAgICAgbGVhICAgICAgICglZWF4LCVlZHgsNCksICVlY3gKKyAgICAgICAgaW5jbCAgICAgICVlZHgKKyAgICAgICAgZmxkdCAgICAgIF9fNG9ucGlfMzFsQEdPVE9GRiglZWN4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX180b25waV8zMWxAR09UT0ZGKCVlZGksJWVjeCkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZhZGQgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3RwdCAgICAgOCglZXNwKQorICAgICAgICBhbmRsICAgICAgJC0xNjc3NzIxNiwgOCglZXNwKQorICAgICAgICBmbGR0ICAgICAgOCglZXNwKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTEKKy4uQjEuMTA6CisgICAgICAgIGZsZGwgICAgICBfemVyb3NAR09UT0ZGKCVlZGkpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKy4uQjEuMTE6CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgbGVhICAgICAgICgsJWVkeCw4KSwgJWVheAorICAgICAgICBmbGQgICAgICAgJXN0KDMpCisgICAgICAgIGxlYSAgICAgICAoJWVheCwlZWR4LDQpLCAlZWR4CisgICAgICAgIGZsZHQgICAgICBfXzRvbnBpXzMxbEBHT1RPRkYoJWVkeCwlZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDYpLCAlc3QKKyAgICAgICAgbW92bCAgICAgICVlZHgsICglZXNwKQorICAgICAgICBmYWRkICAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkdCAgICAgIDEyK19fNG9ucGlfMzFsQEdPVE9GRiglZWR4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZhZGQgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZnN1YiAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmNocyAgICAgIAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDUpLCAlc3QKKyAgICAgICAgZmFkZCAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoNCkKKyAgICAgICAgZmxkdCAgICAgIDI0K19fNG9ucGlfMzFsQEdPVE9GRiglZWR4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGQgICAgICAlc3QsICVzdCg0KQorICAgICAgICBmeGNoICAgICAgJXN0KDQpCisgICAgICAgIGZzdHB0ICAgICA4KCVlc3ApCisgICAgICAgIG1vdnp3bCAgICAxNiglZXNwKSwgJWVieAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWJ4CisgICAgICAgIGNtcGwgICAgICAkMTY0MTUsICVlYngKKyAgICAgICAgamdlICAgICAgIC4uQjEuMTMKKy4uQjEuMTI6CisgICAgICAgIG5lZ2wgICAgICAlZWJ4CisgICAgICAgIGFkZGwgICAgICAkMzAsICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYngsICVlY3gKKyAgICAgICAgbW92bCAgICAgIDEyKCVlc3ApLCAlZWF4CisgICAgICAgIHNocmwgICAgICAlY2wsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgMTIoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICQwLCA4KCVlc3ApCisgICAgICAgIHNocmwgICAgICAlY2wsICVlYXgKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTQKKy4uQjEuMTM6CisgICAgICAgIG5lZ2wgICAgICAlZWJ4CisgICAgICAgIGFkZGwgICAgICAkMzAsICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYngsICVlY3gKKyAgICAgICAgbW92bCAgICAgIDgoJWVzcCksICVlZHgKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVkeAorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIG1vdmwgICAgICAxMiglZXNwKSwgJWVheAorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCA4KCVlc3ApCisgICAgICAgIHNocmwgICAgICAlY2wsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKy4uQjEuMTQ6CisgICAgICAgIGZsZHQgICAgICA4KCVlc3ApCisgICAgICAgIGFkZGwgICAgICA0KCVlc3ApLCAlZWF4CisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgzKQorICAgICAgICBmbXVsICAgICAgJXN0KDYpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCg0KQorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDEsICVlZHgKKyAgICAgICAgZmFkZCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIG1vdmwgICAgICAoJWVzcCksICVlY3gKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDUpCisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkbCAgICAgemVyb19ub25lQEdPVE9GRiglZWRpLCVlZHgsOCkKKyAgICAgICAgZmFkZCAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZzdWIgICAgICAlc3QoMyksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgZmxkICAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZsZHQgICAgICAzNitfXzRvbnBpXzMxbEBHT1RPRkYoJWVjeCwlZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmYWRkICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZsZHQgICAgICA0OCtfXzRvbnBpXzMxbEBHT1RPRkYoJWVjeCwlZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmYWRkICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZCAgICAgICAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDUpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19fNG9ucGlfMzFsQEdPVE9GRiglZWN4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDMpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZhZGQgICAgICAlc3QoMiksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkICAgICAgICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QoNSksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX180b25waV8zMWxAR09UT0ZGKCVlY3gsJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCg0KQorICAgICAgICBmbGR0ICAgICAgODQrX180b25waV8zMWxAR09UT0ZGKCVlZGksJWVjeCkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZCAgICAgICAlc3QoMikKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZGwgICAgICBfVFdPXzMySEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGQgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGRsICAgICAgX3BpMDRfMmRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZmFkZCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZtdWxsICAgICA4K19waTA0XzJkQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKy4uQjEuMTU6CisgICAgICAgIGZsZGwgICAgICBfVFdPXzEySEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmxkICAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHB0ICAgICA4KCVlc3ApCisgICAgICAgIGZsZHQgICAgICA4KCVlc3ApCisgICAgICAgIGZhZGQgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3VicCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0bCAgICAgICglZXNpKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICA4KCVlc2kpCisgICAgICAgIGFkZGwgICAgICAkMjAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorICAgICAgICAuYWxpZ24gICAgMTYsMHg5MAorCS50eXBlCV9fbGlibV9yZWR1Y2VfcGkwNGwsQGZ1bmN0aW9uCisJLnNpemUJX19saWJtX3JlZHVjZV9waTA0bCwuLV9fbGlibV9yZWR1Y2VfcGkwNGwKKwkuZGF0YQorIyAtLSBFbmQgIF9fbGlibV9yZWR1Y2VfcGkwNGwKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gOAorCS5hbGlnbiA4Cit6ZXJvX25vbmU6CisJLmxvbmcJMHgwMDAwMDAwMCwweDAwMDAwMDAwCisJLmxvbmcJMHgwMDAwMDAwMCwweGJmZjAwMDAwCisJLnR5cGUJemVyb19ub25lLEBvYmplY3QKKwkuc2l6ZQl6ZXJvX25vbmUsMTYKKwkuYWxpZ24gNAorX180b25waV9kOgorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDcyOTc5NzYwCisJLnR5cGUJX180b25waV9kLEBvYmplY3QKKwkuc2l6ZQlfXzRvbnBpX2QsOAorCS5hbGlnbiA0CitfVFdPXzMySDoKKwkubG9uZwkwCisJLmxvbmcJMTEwNjc3MTk2OAorCS50eXBlCV9UV09fMzJILEBvYmplY3QKKwkuc2l6ZQlfVFdPXzMySCw4CisJLmFsaWduIDQKK19waTA0XzNkOgorCS5sb25nCTE0MTM3NTQxMTIKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJMjU2MzUyNzA0MAorCS5sb25nCTEwMjE4NTUzODQKKwkubG9uZwkzNDE3Njg1ODY4CisJLmxvbmcJMzExODQ1MDkzNgorCS50eXBlCV9waTA0XzNkLEBvYmplY3QKKwkuc2l6ZQlfcGkwNF8zZCwyNAorCS5hbGlnbiA0CitfcGkwNF81ZDoKKwkubG9uZwkxNDEzNDgwNDQ4CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzYwMzkyNjUKKwkubG9uZwk3NzE3NTE5MzYKKwkubG9uZwk5OTk0OTYwNzQKKwkubG9uZwk2MjI4NTQxNDQKKwkubG9uZwk5NjMzNDczNTQKKwkubG9uZwkxMzk2NTk3NjY0CisJLmxvbmcJOTIyOTA2NjkyCisJLnR5cGUJX3BpMDRfNWQsQG9iamVjdAorCS5zaXplCV9waTA0XzVkLDQwCisJLmFsaWduIDQKK19TQ0FMRToKKwkubG9uZwkwCisJLmxvbmcJODQ1MTUyMjU2CisJLnR5cGUJX1NDQUxFLEBvYmplY3QKKwkuc2l6ZQlfU0NBTEUsOAorCS5hbGlnbiA0CitfemVyb3M6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCV96ZXJvcyxAb2JqZWN0CisJLnNpemUJX3plcm9zLDE2CisJLmFsaWduIDQKK19waTA0XzJkOgorCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJNDQyNjU1NTM3CisJLmxvbmcJMTAzNjAzOTI2NQorCS50eXBlCV9waTA0XzJkLEBvYmplY3QKKwkuc2l6ZQlfcGkwNF8yZCwxNgorCS5hbGlnbiA0CitfVFdPXzEySDoKKwkubG9uZwkwCisJLmxvbmcJMTA4NTgwMDQ0OAorCS50eXBlCV9UV09fMTJILEBvYmplY3QKKwkuc2l6ZQlfVFdPXzEySCw4CisJLmFsaWduIDIKK19fNG9ucGlfMzFsOgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzM2NDYKKwkud29yZAk0MTcyMQorCS53b3JkCTE2NjAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTA4MzIKKwkud29yZAk0MDA3MgorCS53b3JkCTE2NTY3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQwMDgKKwkud29yZAk2NTA0MworCS53b3JkCTE2NTM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgzODQKKwkud29yZAk2NDE1NAorCS53b3JkCTE2NTA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzgyNzIKKwkud29yZAk1NjE2MgorCS53b3JkCTE2NDcyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzI5OAorCS53b3JkCTUxNjgyCisJLndvcmQJMTY0NDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NTUwNAorCS53b3JkCTY1MzIwCisJLndvcmQJMTY0MDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTIwNAorCS53b3JkCTQ0OTIyCisJLndvcmQJMTYzODIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxODY1MgorCS53b3JkCTUwMDMwCisJLndvcmQJMTYzNTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDE0NAorCS53b3JkCTU5NjU3CisJLndvcmQJMTYzMTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzQ1MAorCS53b3JkCTQ3MTA1CisJLndvcmQJMTYyOTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDg5OAorCS53b3JkCTU2NjQxCisJLndvcmQJMTYyNTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDY4MAorCS53b3JkCTM0NjIzCisJLndvcmQJMTYyMjYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzYwCisJLndvcmQJNDU1MTUKKwkud29yZAkxNjE5NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxNDgwCisJLndvcmQJNDAxODcKKwkud29yZAkxNjE2NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3ODUyCisJLndvcmQJNTUyNTIKKwkud29yZAkxNjEzNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0MDcyCisJLndvcmQJMzUwODEKKwkud29yZAkxNjEwMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2ODA4CisJLndvcmQJNTc0MjEKKwkud29yZAkxNjA3MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMDY4CisJLndvcmQJNTcyMzIKKwkud29yZAkxNjA0MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NTc2CisJLndvcmQJNjAxODgKKwkud29yZAkxNjAwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEwMDE2CisJLndvcmQJNTI4NjEKKwkud29yZAkxNTk3OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwNjQ4CisJLndvcmQJMzU4MjUKKwkud29yZAkxNTk0NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYwNTQyCisJLndvcmQJNTg1MjgKKwkud29yZAkxNTkxOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY1NDY4CisJLndvcmQJNjE3NDMKKwkud29yZAkxNTg4NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0OTYwCisJLndvcmQJNDU4MjUKKwkud29yZAkxNTg1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUwNjA0CisJLndvcmQJMzg3OTIKKwkud29yZAkxNTgyNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE4Mzk0CisJLndvcmQJMzM0MzUKKwkud29yZAkxNTc5NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1NzgwCisJLndvcmQJNDI3MDMKKwkud29yZAkxNTc2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0MDU2CisJLndvcmQJNjM4NDEKKwkud29yZAkxNTczMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzMDgwCisJLndvcmQJNjI1NjMKKwkud29yZAkxNTcwMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwODQwCisJLndvcmQJNjIyMDcKKwkud29yZAkxNTY2OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMDk0CisJLndvcmQJNTk5ODMKKwkud29yZAkxNTYzOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxODE4CisJLndvcmQJNjAzODkKKwkud29yZAkxNTYwOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwMTg2CisJLndvcmQJNDA1NzkKKwkud29yZAkxNTU3NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyMTcwCisJLndvcmQJNTgwMDQKKwkud29yZAkxNTU0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1Mjc2CisJLndvcmQJMzk2NzgKKwkud29yZAkxNTUxNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0NjcyCisJLndvcmQJMzY4MDYKKwkud29yZAkxNTQ4MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEzMDYwCisJLndvcmQJMzQxNDQKKwkud29yZAkxNTQ1MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4MDE2CisJLndvcmQJNTcyMzEKKwkud29yZAkxNTQxOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2MTEyCisJLndvcmQJNDQ5OTUKKwkud29yZAkxNTM5MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUzNDY0CisJLndvcmQJMzMzODcKKwkud29yZAkxNTM1OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTcyOTYKKwkud29yZAk2MDc1MQorCS53b3JkCTE1MzI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjk0NTIKKwkud29yZAk0NTIzMQorCS53b3JkCTE1Mjk3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjYyMDgKKwkud29yZAk0OTY4OQorCS53b3JkCTE1MjY2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc5MDAKKwkud29yZAk0NDAwMgorCS53b3JkCTE1MjM1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTczNDAKKwkud29yZAkzMzgwMAorCS53b3JkCTE1MjA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc1NDQKKwkud29yZAk1MDE3OAorCS53b3JkCTE1MTczCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjE2OAorCS53b3JkCTQwMTMyCisJLndvcmQJMTUxNDIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTM5MgorCS53b3JkCTQzNzAyCisJLndvcmQJMTUxMDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NTE2OAorCS53b3JkCTU0MzcyCisJLndvcmQJMTUwODEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4OTg2CisJLndvcmQJNDA2ODgKKwkud29yZAkxNTA1MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2NDgKKwkud29yZAk1Mzc0NQorCS53b3JkCTE1MDE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzA1MjAKKwkud29yZAk1NTc5NQorCS53b3JkCTE0OTg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDMwNjAKKwkud29yZAkzMjkxNAorCS53b3JkCTE0OTU2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDYxNzIKKwkud29yZAk1Mjc3MQorCS53b3JkCTE0OTI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQwNTYKKwkud29yZAk0NTI4NQorCS53b3JkCTE0ODkzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTM1OTAKKwkud29yZAk0NDg2OAorCS53b3JkCTE0ODY0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDA3ODYKKwkud29yZAkzNTk3MAorCS53b3JkCTE0ODMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzM0MzYKKwkud29yZAk2NTQxMQorCS53b3JkCTE0ODAxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzIwMDYKKwkud29yZAk2MTM4MgorCS53b3JkCTE0NzcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc4NTYKKwkud29yZAk0NTIzOQorCS53b3JkCTE0NzM4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA4OTQKKwkud29yZAk0OTU1NQorCS53b3JkCTE0NzA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDgwNjQKKwkud29yZAk1MzA2NQorCS53b3JkCTE0Njc0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDg2MjQKKwkud29yZAk1NDg0NAorCS53b3JkCTE0NjQ3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzk4OAorCS53b3JkCTQwNzYyCisJLndvcmQJMTQ2MTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjI3MAorCS53b3JkCTU4NzQ1CisJLndvcmQJMTQ1ODUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzA2NAorCS53b3JkCTUwMTY4CisJLndvcmQJMTQ1NTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxODYyNAorCS53b3JkCTYzNzM2CisJLndvcmQJMTQ1MTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDc1OAorCS53b3JkCTQ0OTY2CisJLndvcmQJMTQ0OTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzMwNAorCS53b3JkCTQ3NDY1CisJLndvcmQJMTQ0NjEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MjI2CisJLndvcmQJNjA1MDMKKwkud29yZAkxNDQzMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2MzgwCisJLndvcmQJNTQ5MDAKKwkud29yZAkxNDM5OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0MzUyCisJLndvcmQJNDk4NjAKKwkud29yZAkxNDM2OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExOTA0CisJLndvcmQJNDI2NDYKKwkud29yZAkxNDMzNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1Mjk2CisJLndvcmQJNTAyNzkKKwkud29yZAkxNDMwMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1NDc0CisJLndvcmQJNTA2MDYKKwkud29yZAkxNDI3NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1MDYyCisJLndvcmQJNDQxMzcKKwkud29yZAkxNDI0NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEzNDcyCisJLndvcmQJMzYwNjMKKwkud29yZAkxNDIxMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwNjU4CisJLndvcmQJNTM4NTQKKwkud29yZAkxNDE4MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4NjUyCisJLndvcmQJNDM2OTAKKwkud29yZAkxNDE1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0NjQwCisJLndvcmQJNjQzNDgKKwkud29yZAkxNDExOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMjg0CisJLndvcmQJNDE5ODAKKwkud29yZAkxNDA4OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1NjUyCisJLndvcmQJMzgyMjIKKwkud29yZAkxNDA1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1OTAwCisJLndvcmQJNjI5NDAKKwkud29yZAkxNDAyNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxNDk0CisJLndvcmQJNTA3NDEKKwkud29yZAkxMzk5NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQzMTk0CisJLndvcmQJNTUwOTYKKwkud29yZAkxMzk2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3NDAKKwkud29yZAk0NTY0NgorCS53b3JkCTEzOTMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjg5MzYKKwkud29yZAk0NDE1MAorCS53b3JkCTEzOTAzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJODk5NgorCS53b3JkCTQyOTU1CisJLndvcmQJMTM4NzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDA5NgorCS53b3JkCTYxMjA1CisJLndvcmQJMTM4MzkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDYxNAorCS53b3JkCTU0NTUwCisJLndvcmQJMTM4MTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDkyNgorCS53b3JkCTU3MzQ3CisJLndvcmQJMTM3NzkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzEyCisJLndvcmQJNjE0MTUKKwkud29yZAkxMzc0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MzM2CisJLndvcmQJNjM4ODQKKwkud29yZAkxMzcxNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3NDgKKwkud29yZAk2MjI1OQorCS53b3JkCTEzNjg1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY2NzIKKwkud29yZAk1MTc3NQorCS53b3JkCTEzNjUzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzI0MzgKKwkud29yZAk1NTQyMworCS53b3JkCTEzNjI0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc2NTIKKwkud29yZAk0NTcxMworCS53b3JkCTEzNTkzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjU0MDgKKwkud29yZAk1MTU4NgorCS53b3JkCTEzNTU4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDA0MTYKKwkud29yZAk1NTczNgorCS53b3JkCTEzNTMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTI1NDYKKwkud29yZAkzNzczNAorCS53b3JkCTEzNTAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDg4ODAKKwkud29yZAk2NDIzOAorCS53b3JkCTEzNDY5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTYwMDQKKwkud29yZAk0NjgzMworCS53b3JkCTEzNDM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjE3NjAKKwkud29yZAkzODExMAorCS53b3JkCTEzNDA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDE0OTYKKwkud29yZAkzNTY1OQorCS53b3JkCTEzMzc0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU0NzIKKwkud29yZAk0MTI2OQorCS53b3JkCTEzMzQyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU0NDQKKwkud29yZAkzNjAxOAorCS53b3JkCTEzMzE0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjUxMAorCS53b3JkCTU2NDE3CisJLndvcmQJMTMyODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMDcyCisJLndvcmQJNTY4MzcKKwkud29yZAkxMzI1MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxMzM4CisJLndvcmQJNDg0NDAKKwkud29yZAkxMzIyMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NTY4CisJLndvcmQJNTcwODgKKwkud29yZAkxMzE4OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyNDAKKwkud29yZAkzOTI4MworCS53b3JkCTEzMTU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTg1NjIKKwkud29yZAkzMzUzNworCS53b3JkCTEzMTI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE0MjIKKwkud29yZAk0NDQ4NworCS53b3JkCTEzMDk3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE5MzAKKwkud29yZAk2MDQ1OQorCS53b3JkCTEzMDY2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDIyNzIKKwkud29yZAkzNjY0MQorCS53b3JkCTEzMDMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjg5NDAKKwkud29yZAkzNjE1MAorCS53b3JkCTEzMDA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjEwMTAKKwkud29yZAk1MDkyNQorCS53b3JkCTEyOTczCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjk0NDgKKwkud29yZAk2NDg4NgorCS53b3JkCTEyOTQxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA1MDAKKwkud29yZAk1NDYwMAorCS53b3JkCTEyOTExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQyNTgKKwkud29yZAk0NjIzMworCS53b3JkCTEyODgwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzI2MjgKKwkud29yZAk0MjUwMgorCS53b3JkCTEyODQ4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjE2MDgKKwkud29yZAk1NTA3MgorCS53b3JkCTEyODE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjIzNgorCS53b3JkCTU3ODcxCisJLndvcmQJMTI3ODYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MjQwOAorCS53b3JkCTM0NjE2CisJLndvcmQJMTI3NTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NjY5MgorCS53b3JkCTUxOTYzCisJLndvcmQJMTI3MjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTA5NAorCS53b3JkCTQ4NTI2CisJLndvcmQJMTI2OTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1OTg3MAorCS53b3JkCTM4NzgzCisJLndvcmQJMTI2NjMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNjU2MAorCS53b3JkCTMzMTY1CisJLndvcmQJMTI2MzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1ODY2NgorCS53b3JkCTM3NjY2CisJLndvcmQJMTI2MDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1ODcyOAorCS53b3JkCTM5Nzg4CisJLndvcmQJMTI1NjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5MDQ4CisJLndvcmQJNDM1MzAKKwkud29yZAkxMjUzOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU4NDk2CisJLndvcmQJNTc2NTkKKwkud29yZAkxMjUwNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyMzI0CisJLndvcmQJMzcwMjUKKwkud29yZAkxMjQ3NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM4NDMyCisJLndvcmQJNTU4NTYKKwkud29yZAkxMjQ0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM1MjEwCisJLndvcmQJNDU5NjAKKwkud29yZAkxMjQxNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1NjQ0CisJLndvcmQJNTEzNDUKKwkud29yZAkxMjM4NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMyODU0CisJLndvcmQJNjM4ODMKKwkud29yZAkxMjM1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI5MzQ4CisJLndvcmQJNDE0NTAKKwkud29yZAkxMjMyMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3Mzg0CisJLndvcmQJMzgwMjQKKwkud29yZAkxMjI4OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU3MzU2CisJLndvcmQJNTcyOTEKKwkud29yZAkxMjI2MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxMTY0CisJLndvcmQJNTE1MjEKKwkud29yZAkxMjIyOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIxNDcyCisJLndvcmQJNTkxNTEKKwkud29yZAkxMjE5NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM2NzA0CisJLndvcmQJMzk5NDMKKwkud29yZAkxMjE2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1ODY0CisJLndvcmQJNTAxNTEKKwkud29yZAkxMjEzNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3ODkyCisJLndvcmQJNjM2ODcKKwkud29yZAkxMjEwNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0NTYwCisJLndvcmQJNTE2MTUKKwkud29yZAkxMjA3MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM4Nzc2CisJLndvcmQJNTU2ODQKKwkud29yZAkxMjA0MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5MTM2CisJLndvcmQJNTM1NzAKKwkud29yZAkxMjAxMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1NTU2CisJLndvcmQJMzc5NTUKKwkud29yZAkxMTk4MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0NDU4CisJLndvcmQJNDQ2NzAKKwkud29yZAkxMTk1MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM2NDQ2CisJLndvcmQJMzQwODQKKwkud29yZAkxMTkxOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ2NDE2CisJLndvcmQJNTE2OTMKKwkud29yZAkxMTg4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIxNDMyCisJLndvcmQJMzQzNzYKKwkud29yZAkxMTg1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2MDM2CisJLndvcmQJMzQ4MDkKKwkud29yZAkxMTgyNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEwNTYyCisJLndvcmQJNTU2NTQKKwkud29yZAkxMTc5NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMjY0CisJLndvcmQJNTMwNTIKKwkud29yZAkxMTc2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MDY0CisJLndvcmQJNTA0MTUKKwkud29yZAkxMTcyOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3NDQ0CisJLndvcmQJNDgyOTUKKwkud29yZAkxMTcwMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExODc0CisJLndvcmQJNTI2NzcKKwkud29yZAkxMTY3MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYwODA4CisJLndvcmQJMzkyNzUKKwkud29yZAkxMTY0MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxNzkyCisJLndvcmQJNTU2NzcKKwkud29yZAkxMTYwNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYwNzEwCisJLndvcmQJNDkwMDYKKwkud29yZAkxMTU3OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEwNTIwCisJLndvcmQJMzc0MDMKKwkud29yZAkxMTU0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMDA0CisJLndvcmQJNTk0NzAKKwkud29yZAkxMTUxNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4MDk2CisJLndvcmQJMzc2MTIKKwkud29yZAkxMTQ4NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMjY4CisJLndvcmQJNDQyODAKKwkud29yZAkxMTQ1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUwNzQwCisJLndvcmQJNjE1ODgKKwkud29yZAkxMTQyMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2NDMyCisJLndvcmQJNTg4MzUKKwkud29yZAkxMTM5MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTg1NzYKKwkud29yZAk0MjQ5NgorCS53b3JkCTExMzU1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzM5MjAKKwkud29yZAk1NDkxMgorCS53b3JkCTExMzI0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzU2MjAKKwkud29yZAk1NDg0MworCS53b3JkCTExMjk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzM2CisJLndvcmQJNDM1OTEKKwkud29yZAkxMTI2NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5NjMyCisJLndvcmQJNjEwNjAKKwkud29yZAkxMTIzNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzNDUyCisJLndvcmQJNjMxMjkKKwkud29yZAkxMTIwNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2Nzk4CisJLndvcmQJNTg1MTIKKwkud29yZAkxMTE3NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEzNDcyCisJLndvcmQJNDYzMzMKKwkud29yZAkxMTE0MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3MzAwCisJLndvcmQJMzY1OTgKKwkud29yZAkxMTExMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxOTUyCisJLndvcmQJNDE2MzkKKwkud29yZAkxMTA3OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyNDUyCisJLndvcmQJMzM0NTkKKwkud29yZAkxMTA1MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU4NTU4CisJLndvcmQJMzMyODcKKwkud29yZAkxMTAyMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTc1NzAKKwkud29yZAk0Mzg0MworCS53b3JkCTEwOTg5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTk0MTYKKwkud29yZAk2Mzk5MAorCS53b3JkCTEwOTU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjUyOTgKKwkud29yZAk0Nzc0NAorCS53b3JkCTEwOTI3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjEwNzYKKwkud29yZAkzNDA4OQorCS53b3JkCTEwODk2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzA0OAorCS53b3JkCTU3Mzk0CisJLndvcmQJMTA4NjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjg3MgorCS53b3JkCTU1NDA1CisJLndvcmQJMTA4MzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjYwOAorCS53b3JkCTUxNjY5CisJLndvcmQJMTA3OTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MzUwCisJLndvcmQJNDg0NTUKKwkud29yZAkxMDc3MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzNTY4CisJLndvcmQJNTg2OTIKKwkud29yZAkxMDc0MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwNzg0CisJLndvcmQJMzcwNDYKKwkud29yZAkxMDcwOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM4OTkyCisJLndvcmQJNDM4NjEKKwkud29yZAkxMDY3OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEwMDY0CisJLndvcmQJNDAxOTkKKwkud29yZAkxMDY0OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2MzY4CisJLndvcmQJMzU3NzEKKwkud29yZAkxMDYxMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzOTk0CisJLndvcmQJNjA3MjEKKwkud29yZAkxMDU4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1MDUyCisJLndvcmQJMzQzMDIKKwkud29yZAkxMDU1NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5ODQyCisJLndvcmQJNTQ5NjQKKwkud29yZAkxMDUyNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExNTY4CisJLndvcmQJNTgyNzcKKwkud29yZAkxMDQ5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2MTYwCisJLndvcmQJNDY0MzgKKwkud29yZAkxMDQ2MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzMjUyCisJLndvcmQJNDMwNDkKKwkud29yZAkxMDQzMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM1Mjg4CisJLndvcmQJNTgwMDAKKwkud29yZAkxMDQwMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0NjE0CisJLndvcmQJNTAyMTYKKwkud29yZAkxMDM2OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExNjgKKwkud29yZAk0ODgwNAorCS53b3JkCTEwMzM2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA5MzQKKwkud29yZAkzMzAwNgorCS53b3JkCTEwMzA3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQ1MTIKKwkud29yZAk2MjI0NworCS53b3JkCTEwMjcyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTk5NjgKKwkud29yZAk0MzEyMQorCS53b3JkCTEwMjQwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU1NjAKKwkud29yZAkzOTk3NAorCS53b3JkCTEwMjEyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTk3OAorCS53b3JkCTQ5MzUzCisJLndvcmQJMTAxODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjI5MAorCS53b3JkCTM4ODA3CisJLndvcmQJMTAxNTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4NjQ2CisJLndvcmQJNjUyMjYKKwkud29yZAkxMDEyMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2ODk2CisJLndvcmQJMzQzMTcKKwkud29yZAkxMDA4OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwMTM2CisJLndvcmQJMzkxMTgKKwkud29yZAkxMDA1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0MjAwCisJLndvcmQJNDE3NTYKKwkud29yZAkxMDAyNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5MjU2CisJLndvcmQJNjMyMDIKKwkud29yZAk5OTk1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjI5NjgKKwkud29yZAk2MzU1MworCS53b3JkCTk5NjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3MzYKKwkud29yZAk0NDI5MgorCS53b3JkCTk5MzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMzE4NgorCS53b3JkCTM3NzYwCisJLndvcmQJOTkwNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUxMDA4CisJLndvcmQJMzQ5NTAKKwkud29yZAk5ODY5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTY2NAorCS53b3JkCTY0MjQ4CisJLndvcmQJOTgzNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MzUyCisJLndvcmQJMzUxOTkKKwkud29yZAk5ODExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzQ2NTYKKwkud29yZAk2Mzc0NworCS53b3JkCTk3ODAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDMzMAorCS53b3JkCTQ5ODY0CisJLndvcmQJOTc0OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExNjU0CisJLndvcmQJMzU1NjcKKwkud29yZAk5NzE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzkyNAorCS53b3JkCTU4OTE5CisJLndvcmQJOTY4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1MzIKKwkud29yZAkzMjgwMAorCS53b3JkCTk2NTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMDAyNAorCS53b3JkCTUzNzk5CisJLndvcmQJOTYyNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMTcyCisJLndvcmQJNjQzNDcKKwkud29yZAk5NTkzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjAwMzYKKwkud29yZAk1MTM4MgorCS53b3JkCTk1NjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1ODU3NgorCS53b3JkCTMzMDkzCisJLndvcmQJOTUzMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEzODg4CisJLndvcmQJMzg3NjAKKwkud29yZAk5NTAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTMyMgorCS53b3JkCTUyNDYwCisJLndvcmQJOTQ3MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwOTQ0CisJLndvcmQJNDEwNzcKKwkud29yZAk5NDM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc5NzYKKwkud29yZAk0MTg2MQorCS53b3JkCTk0MDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NTE3NgorCS53b3JkCTU1MTU4CisJLndvcmQJOTM3NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NzYKKwkud29yZAkzNTIyMworCS53b3JkCTkzNDYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3ODE2CisJLndvcmQJMzk3ODMKKwkud29yZAk5MzE0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc2NTYKKwkud29yZAk1NTY2OQorCS53b3JkCTkyODQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NDk0NAorCS53b3JkCTUzMTg0CisJLndvcmQJOTI1MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNTQ0CisJLndvcmQJNDkxOTAKKwkud29yZAk5MjIyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTA2MTIKKwkud29yZAk0NDY0NAorCS53b3JkCTkxOTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4ODMyCisJLndvcmQJNjMxMTEKKwkud29yZAk5MTU1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE3NDQKKwkud29yZAkzNjg3MAorCS53b3JkCTkxMjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5NDA0CisJLndvcmQJNjMwMjUKKwkud29yZAk5MDk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDczMTYKKwkud29yZAk0MzM4MQorCS53b3JkCTkwNjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NTcxNgorCS53b3JkCTQ3NDMzCisJLndvcmQJOTAzNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ2NDE0CisJLndvcmQJNDg0NDEKKwkud29yZAk5MDA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTkxMTYKKwkud29yZAkzOTUwNgorCS53b3JkCTg5NzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODA2MAorCS53b3JkCTUzMzgxCisJLndvcmQJODk0MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU3MTEyCisJLndvcmQJNTA3MzkKKwkud29yZAk4OTExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTg0MAorCS53b3JkCTYwNTgxCisJLndvcmQJODg3OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYyMTEyCisJLndvcmQJNTcxOTkKKwkud29yZAk4ODQ2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzU5MDgKKwkud29yZAk1OTQ5OQorCS53b3JkCTg4MTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMzc2MAorCS53b3JkCTQ4MTE2CisJLndvcmQJODc4NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxMzYKKwkud29yZAk1NjA1OQorCS53b3JkCTg3NTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzU5NgorCS53b3JkCTM5MjIxCisJLndvcmQJODcyNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMyMzIKKwkud29yZAk0ODU1MAorCS53b3JkCTg2OTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMjg3MgorCS53b3JkCTQyNzQ5CisJLndvcmQJODY2MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxOTQ4CisJLndvcmQJNDAzMTkKKwkud29yZAk4NjMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzExOTYKKwkud29yZAk2NDY5MworCS53b3JkCTg2MDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MjA1MgorCS53b3JkCTUyOTIzCisJLndvcmQJODU3MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3NTAKKwkud29yZAkzMzU0NAorCS53b3JkCTg1NDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjQ2MgorCS53b3JkCTQ2MTc5CisJLndvcmQJODUwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1MTI4CisJLndvcmQJNDUxMjAKKwkud29yZAk4NDc2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTE2MzQKKwkud29yZAk2MjUyMworCS53b3JkCTg0NDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNTc1OAorCS53b3JkCTQyMTYzCisJLndvcmQJODQxNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0MDIyCisJLndvcmQJMzYyNjcKKwkud29yZAk4Mzg1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDEyNTIKKwkud29yZAkzOTc5NgorCS53b3JkCTgzNTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0OTc4MgorCS53b3JkCTU0NDIzCisJLndvcmQJODMyMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1NDI4CisJLndvcmQJNDIwODYKKwkud29yZAk4MjkxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzQzODgKKwkud29yZAk0NDgxMAorCS53b3JkCTgyNjAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3NDU2CisJLndvcmQJNjQwOTIKKwkud29yZAk4MjI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDgzMzYKKwkud29yZAk2MjQ0OAorCS53b3JkCTgxOTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDkxMgorCS53b3JkCTYxNjIyCisJLndvcmQJODE2NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3ODUyCisJLndvcmQJMzcyNTAKKwkud29yZAk4MTM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc5NDAKKwkud29yZAk1NjQ1MworCS53b3JkCTgxMDYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzI1NgorCS53b3JkCTU5ODI1CisJLndvcmQJODA3NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3NzQKKwkud29yZAk1OTEyMAorCS53b3JkCTgwNDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MzQ0OAorCS53b3JkCTYyODUyCisJLndvcmQJODAxMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ4NDAKKwkud29yZAk1NzE5NQorCS53b3JkCTc5ODIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MDg2MgorCS53b3JkCTUyNTY1CisJLndvcmQJNzk1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0NDAKKwkud29yZAk2MDQ3NAorCS53b3JkCTc5MTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NTUyMAorCS53b3JkCTM4NjQ4CisJLndvcmQJNzg4OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1MzE2CisJLndvcmQJNTI0MjIKKwkud29yZAk3ODU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTg3MDQKKwkud29yZAk0NzIyNworCS53b3JkCTc4MjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODg5MgorCS53b3JkCTU0MjgzCisJLndvcmQJNzc5NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNjcwCisJLndvcmQJNDE5OTAKKwkud29yZAk3NzY1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc1NzAKKwkud29yZAk0OTg0MgorCS53b3JkCTc3MzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzIzMAorCS53b3JkCTQ3OTkyCisJLndvcmQJNzcwMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxMDIwCisJLndvcmQJNTYyNTMKKwkud29yZAk3NjcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjM0MDQKKwkud29yZAk1ODMxMgorCS53b3JkCTc2NDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTE3NgorCS53b3JkCTUxODU0CisJLndvcmQJNzYxMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5MTg4CisJLndvcmQJNTkwNTEKKwkud29yZAk3NTc4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTY2NTYKKwkud29yZAk1NDUwNworCS53b3JkCTc1NDYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MTMyMAorCS53b3JkCTQ4NTY1CisJLndvcmQJNzUxNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMgorCS53b3JkCTQyNDkwCisJLndvcmQJNzQ4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2NjgwCisJLndvcmQJMzk5NjcKKwkud29yZAk3NDU0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDEzMDQKKwkud29yZAk0MzYzOAorCS53b3JkCTc0MjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMzE0CisJLndvcmQJNDg1MzMKKwkud29yZAk3MzkzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjMyOTQKKwkud29yZAkzNTY5MworCS53b3JkCTczNjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDUzOAorCS53b3JkCTQ4MzE5CisJLndvcmQJNzMzMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2Mjk2CisJLndvcmQJNDcyNjMKKwkud29yZAk3MzAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgyMzYKKwkud29yZAkzODU5OQorCS53b3JkCTcyNjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTk0CisJLndvcmQJNjIxMTYKKwkud29yZAk3MjM4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDcxMDQKKwkud29yZAk2MzU3MworCS53b3JkCTcxOTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDgxMgorCS53b3JkCTM0MzAzCisJLndvcmQJNzE3NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUxNDQKKwkud29yZAkzMzY5NQorCS53b3JkCTcxNDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDk2NgorCS53b3JkCTU1NzY4CisJLndvcmQJNzExNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYyNzIwCisJLndvcmQJNDM5NDYKKwkud29yZAk3MDc4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE1NDIKKwkud29yZAk1NjA2MgorCS53b3JkCTcwNTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MjM1NgorCS53b3JkCTU5MDk2CisJLndvcmQJNzAyMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4NDEyCisJLndvcmQJNDA1MzMKKwkud29yZAk2OTkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQwODAKKwkud29yZAk1MDQ2NworCS53b3JkCTY5NTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzI5NgorCS53b3JkCTQ2ODQxCisJLndvcmQJNjkyNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5NjAwCisJLndvcmQJMzg2MjcKKwkud29yZAk2ODk3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQ0MzYKKwkud29yZAkzNzYwNworCS53b3JkCTY4NjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTAzMgorCS53b3JkCTU2NDIxCisJLndvcmQJNjgzMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MDMyCisJLndvcmQJNTQ5ODcKKwkud29yZAk2ODA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc2NDgKKwkud29yZAk0MjIxMgorCS53b3JkCTY3NjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0Mzg0MAorCS53b3JkCTQ2MTA3CisJLndvcmQJNjczOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3MzE2CisJLndvcmQJMzY1NzQKKwkud29yZAk2NzExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJODkyOAorCS53b3JkCTM3NjUyCisJLndvcmQJNjY3NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0OTQ0CisJLndvcmQJNDc0MzMKKwkud29yZAk2NjQ4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjczOTIKKwkud29yZAk1NzQzMAorCS53b3JkCTY2MTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTg0OAorCS53b3JkCTQzMzQwCisJLndvcmQJNjU4NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MTYwCisJLndvcmQJNDM1NDIKKwkud29yZAk2NTU1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzUyMjYKKwkud29yZAk2MzAxNQorCS53b3JkCTY1MjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MDczNgorCS53b3JkCTY0MzY4CisJLndvcmQJNjQ5MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyMTY4CisJLndvcmQJNDk1MjYKKwkud29yZAk2NDYyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU1OTYKKwkud29yZAkzNDI0MworCS53b3JkCTY0MzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDY5MAorCS53b3JkCTM5NzA1CisJLndvcmQJNjQwMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0NDQ4CisJLndvcmQJNDY4NTYKKwkud29yZAk2MzY4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQzOTIKKwkud29yZAk2MjczNgorCS53b3JkCTYzMzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjc4MAorCS53b3JkCTU2NDYxCisJLndvcmQJNjMwNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1MzYwCisJLndvcmQJNDkxNDUKKwkud29yZAk2Mjc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA1MTIKKwkud29yZAk0OTkzMQorCS53b3JkCTYyNDIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NDUxMgorCS53b3JkCTU1ODIwCisJLndvcmQJNjIxMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTg0MDIKKwkud29yZAkzOTMzMworCS53b3JkCTYxODQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDA5NAorCS53b3JkCTUzNTkzCisJLndvcmQJNjE1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxOTYwCisJLndvcmQJMzg4MTcKKwkud29yZAk2MTIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTY5NTQKKwkud29yZAkzOTI5MQorCS53b3JkCTYwOTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0OTYwMAorCS53b3JkCTQ4NzY1CisJLndvcmQJNjA1NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5NTgwCisJLndvcmQJNTY1NDEKKwkud29yZAk2MDI5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzU2MjQKKwkud29yZAk0NDU1MAorCS53b3JkCTU5OTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MTQyCisJLndvcmQJNDczMTYKKwkud29yZAk1OTY3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDM1MjAKKwkud29yZAk0MzYxMgorCS53b3JkCTU5MzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDk3NgorCS53b3JkCTQwODk2CisJLndvcmQJNTkwMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzNTc2CisJLndvcmQJNTc3MjkKKwkud29yZAk1ODc0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzcyODgKKwkud29yZAkzMzEyMgorCS53b3JkCTU4NDMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDM4NAorCS53b3JkCTUyMDc5CisJLndvcmQJNTgwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3OTUyCisJLndvcmQJNTg3MTkKKwkud29yZAk1Nzc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQyNDIKKwkud29yZAk1NTQ0NQorCS53b3JkCTU3NTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTIzMgorCS53b3JkCTM4ODQ3CisJLndvcmQJNTcxNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzMjMyCisJLndvcmQJNDYwMzkKKwkud29yZAk1NjgzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTMzOTYKKwkud29yZAk0MjkzMworCS53b3JkCTU2NTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzM5MgorCS53b3JkCTQzMzA1CisJLndvcmQJNTYyMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwNzA4CisJLndvcmQJMzUzMTkKKwkud29yZAk1NTk1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQ0MDgKKwkud29yZAk1NTY4NQorCS53b3JkCTU1NjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MjA5MAorCS53b3JkCTQ0NjA3CisJLndvcmQJNTUzMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1NTA0CisJLndvcmQJNTM0NjYKKwkud29yZAk1NTAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQyMDgKKwkud29yZAkzMzE0OQorCS53b3JkCTU0NzAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MjY4CisJLndvcmQJNDUzNzUKKwkud29yZAk1NDQwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQ0CisJLndvcmQJNDAwMDAKKwkud29yZAk1NDA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY2ODgKKwkud29yZAk1MjM1OAorCS53b3JkCTUzNzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNTg0OAorCS53b3JkCTU2MTc1CisJLndvcmQJNTM0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU3OTAwCisJLndvcmQJNDQwNTUKKwkud29yZAk1MzE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQ4MDAKKwkud29yZAk0MzQzNworCS53b3JkCTUyODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzk4NAorCS53b3JkCTU0ODcyCisJLndvcmQJNTI0OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1NzQ0CisJLndvcmQJNDEzNDUKKwkud29yZAk1MjIzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzY2OAorCS53b3JkCTQzNjgyCisJLndvcmQJNTE5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3NDM0CisJLndvcmQJMzY3MDUKKwkud29yZAk1MTYxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA4ODgKKwkud29yZAk0MDMyMworCS53b3JkCTUxMjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTYyCisJLndvcmQJNDMwMzIKKwkud29yZAk1MDk5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTAyNzAKKwkud29yZAk0OTI2MAorCS53b3JkCTUwNjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDE2MAorCS53b3JkCTY0MDQxCisJLndvcmQJNTAzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1NjI0CisJLndvcmQJMzYwMTMKKwkud29yZAk1MDA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDgzMjgKKwkud29yZAk1OTM0NQorCS53b3JkCTQ5NzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MTUwOAorCS53b3JkCTYzOTIwCisJLndvcmQJNDk0MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3ODcyCisJLndvcmQJMzkxMzUKKwkud29yZAk0OTEzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTM1OTAKKwkud29yZAk1ODg1NworCS53b3JkCTQ4ODIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MDg4MAorCS53b3JkCTYxMzIzCisJLndvcmQJNDg0NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0ODAyCisJLndvcmQJMzcxODEKKwkud29yZAk0ODIwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTM4MDgKKwkud29yZAk1NzgxMworCS53b3JkCTQ3ODkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NDQyNAorCS53b3JkCTQ5NzE0CisJLndvcmQJNDc1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxNjUyCisJLndvcmQJNDQwMTEKKwkud29yZAk0NzI3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgyNTIKKwkud29yZAk1MDgzNAorCS53b3JkCTQ2OTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMDM3MAorCS53b3JkCTM4NzQyCisJLndvcmQJNDY2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU3NzI4CisJLndvcmQJNTg0MDMKKwkud29yZAk0NjI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzU5MDAKKwkud29yZAkzNzExMgorCS53b3JkCTQ2MDMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MDc2NAorCS53b3JkCTQwOTE0CisJLndvcmQJNDU3MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIxNDcyCisJLndvcmQJNDY5MTAKKwkud29yZAk0NTQxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc4NTQKKwkud29yZAkzNTAzMAorCS53b3JkCTQ1MTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0Mzc4CisJLndvcmQJMzU3NzYKKwkud29yZAk0NDc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc5NjIKKwkud29yZAk1NTI5NQorCS53b3JkCTQ0NDgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NDM1MgorCS53b3JkCTU2NzE3CisJLndvcmQJNDQxNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3NzQ0CisJLndvcmQJNDk0MTYKKwkud29yZAk0Mzg0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzg0ODQKKwkud29yZAkzNTc1OQorCS53b3JkCTQzNTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NTAyMAorCS53b3JkCTU0OTY5CisJLndvcmQJNDMyNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTkxODgKKwkud29yZAk1NTIyMworCS53b3JkCTQyOTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2ODIyCisJLndvcmQJNDMwNzkKKwkud29yZAk0MjYyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDg4NzAKKwkud29yZAk0MDk0MworCS53b3JkCTQyMzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5OTM2CisJLndvcmQJNDI3MzEKKwkud29yZAk0MTk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjM0MzAKKwkud29yZAk0MzEzNgorCS53b3JkCTQxNjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzAwCisJLndvcmQJNTU2NjUKKwkud29yZAk0MTM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJODA1NgorCS53b3JkCTQwMjE2CisJLndvcmQJNDEwNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3MTYKKwkud29yZAk0NTQwMworCS53b3JkCTQwNzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MzQ0MAorCS53b3JkCTQ5NDg4CisJLndvcmQJNDA0NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxNzc2CisJLndvcmQJNTAxODgKKwkud29yZAk0MDEzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA5OTQKKwkud29yZAk2NDU1NgorCS53b3JkCTM5ODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjI1MgorCS53b3JkCTYwNjYxCisJLndvcmQJMzk1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxMjUyCisJLndvcmQJNjUwMjEKKwkud29yZAkzOTIwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTYyMzYKKwkud29yZAk0MzgwMworCS53b3JkCTM4ODkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MzA2NAorCS53b3JkCTM1MzA4CisJLndvcmQJMzg1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5MDk2CisJLndvcmQJMzk4NDgKKwkud29yZAkzODI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTU2ODAKKwkud29yZAk0ODY3MworCS53b3JkCTM3OTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODA2OAorCS53b3JkCTUwOTU3CisJLndvcmQJMzc2NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwODI0CisJLndvcmQJNTYwODYKKwkud29yZAkzNzM0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDY1MDQKKwkud29yZAk0MzIyNAorCS53b3JkCTM3MDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MjQyOAorCS53b3JkCTQ2MDk0CisJLndvcmQJMzY3MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3NTQ4CisJLndvcmQJNTIwNjYKKwkud29yZAkzNjQyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjE3MzgKKwkud29yZAkzNTU2NQorCS53b3JkCTM2MTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMTE4NAorCS53b3JkCTUwNTg4CisJLndvcmQJMzU3OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3MTYKKwkud29yZAk1MjY4MQorCS53b3JkCTM1NDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDY1NgorCS53b3JkCTQzMzg1CisJLndvcmQJMzUxOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNjY4CisJLndvcmQJNDMyNTkKKwkud29yZAkzNDg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQ1NDQKKwkud29yZAkzNTQwOAorCS53b3JkCTM0NTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODg1NAorCS53b3JkCTY1MDE4CisJLndvcmQJMzQyNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2OTYKKwkud29yZAk0MDM5MQorCS53b3JkCTMzOTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTU4MAorCS53b3JkCTU2NDAwCisJLndvcmQJMzM2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwNDI4CisJLndvcmQJMzk1NzkKKwkud29yZAkzMzMyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzIzMjgKKwkud29yZAkzNjcyNworCS53b3JkCTMzMDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDAyMAorCS53b3JkCTU0NDU3CisJLndvcmQJMzI3MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0MDE2CisJLndvcmQJNDg0MDAKKwkud29yZAkzMjM4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjkyMgorCS53b3JkCTUxNDE3CisJLndvcmQJMzIwOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3MjA4CisJLndvcmQJNjQ2NDEKKwkud29yZAkzMTc2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTgwMgorCS53b3JkCTQ4ODg2CisJLndvcmQJMzE0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM1NDQwCisJLndvcmQJNjE1OTAKKwkud29yZAkzMTE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA2MTAKKwkud29yZAk1MTYwNAorCS53b3JkCTMwODQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NDQwCisJLndvcmQJMzgxOTkKKwkud29yZAkzMDUwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjkxNAorCS53b3JkCTQzODY3CisJLndvcmQJMzAyMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0MDAwCisJLndvcmQJNDUyNTYKKwkud29yZAkyOTg5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTE0OTYKKwkud29yZAk1NzM5NgorCS53b3JkCTI5NTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTUzOAorCS53b3JkCTQ2MjU2CisJLndvcmQJMjkyOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM2ODAyCisJLndvcmQJNDgwMjAKKwkud29yZAkyODk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc5MTAKKwkud29yZAk1NzkwMworCS53b3JkCTI4NjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzQ4NAorCS53b3JkCTQ4Nzk4CisJLndvcmQJMjgzNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU3NzY2CisJLndvcmQJNTc3MDkKKwkud29yZAkyODA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQwNjQKKwkud29yZAk0Nzg1NgorCS53b3JkCTI3NzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0OTM0MAorCS53b3JkCTQ4MDgwCisJLndvcmQJMjc0MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM2NDU0CisJLndvcmQJNTY3MzEKKwkud29yZAkyNzEyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTE1NDgKKwkud29yZAk2MzM4NQorCS53b3JkCTI2ODEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NjAwMAorCS53b3JkCTQ4NzE2CisJLndvcmQJMjY0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0OTkyCisJLndvcmQJNTAwNDAKKwkud29yZAkyNjE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDMxMzYKKwkud29yZAk1ODE3NworCS53b3JkCTI1ODUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0OTczMAorCS53b3JkCTMzMjcwCisJLndvcmQJMjU1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI5ODA4CisJLndvcmQJNTEwNjMKKwkud29yZAkyNTI2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjUyNzYKKwkud29yZAk0NjcyNAorCS53b3JkCTI0OTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzMyNAorCS53b3JkCTM1OTI4CisJLndvcmQJMjQ2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyMjg0CisJLndvcmQJNjM5MTYKKwkud29yZAkyNDMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQxNAorCS53b3JkCTQ2NzA0CisJLndvcmQJMjQwMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUxNzEwCisJLndvcmQJNTcxNjgKKwkud29yZAkyMzcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjczNjYKKwkud29yZAk0OTI1MworCS53b3JkCTIzNDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NTMzMgorCS53b3JkCTUzMDMzCisJLndvcmQJMjMwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0MTUyCisJLndvcmQJMzc0MTgKKwkud29yZAkyMjc2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTMwNzYKKwkud29yZAk0NzM5OAorCS53b3JkCTIyNDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDM3NAorCS53b3JkCTU5NDc3CisJLndvcmQJMjIxNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5MzM2CisJLndvcmQJMzM0MzUKKwkud29yZAkyMTg0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE2MTIKKwkud29yZAk0MzI2NworCS53b3JkCTIxNTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDY2NAorCS53b3JkCTM5MzcyCisJLndvcmQJMjEyMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3MgorCS53b3JkCTYyNzYxCisJLndvcmQJMjA5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTk4MTYKKwkud29yZAk0MDcxNQorCS53b3JkCTIwNjAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTExNgorCS53b3JkCTQwNDgxCisJLndvcmQJMjAzMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4MDY2CisJLndvcmQJMzkxODQKKwkud29yZAkxOTk5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc0MDgKKwkud29yZAk2MzkyMworCS53b3JkCTE5NjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNTc2MAorCS53b3JkCTQyMzA1CisJLndvcmQJMTkzNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4MjM2CisJLndvcmQJNTkzNDAKKwkud29yZAkxOTA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDMyNTgKKwkud29yZAk1OTQwMgorCS53b3JkCTE4NzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxOTk4OAorCS53b3JkCTUwMDg3CisJLndvcmQJMTg0NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzNDU2CisJLndvcmQJNDc4MzMKKwkud29yZAkxODEwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjUxODQKKwkud29yZAk2MTQyNgorCS53b3JkCTE3ODEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1Mjk4MgorCS53b3JkCTQ4NDU2CisJLndvcmQJMTc1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMDIwCisJLndvcmQJNjI4MDkKKwkud29yZAkxNzE5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTA5NgorCS53b3JkCTYzMDYxCisJLndvcmQJMTY4OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5NjQ4CisJLndvcmQJNDQzNzQKKwkud29yZAkxNjU0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE0NTYKKwkud29yZAkzMzg0NworCS53b3JkCTE2MjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjM5MgorCS53b3JkCTUwNTAwCisJLndvcmQJMTU5NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2NDMyCisJLndvcmQJNTkxOTYKKwkud29yZAkxNTYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjEwMDgKKwkud29yZAk0MDI2NQorCS53b3JkCTE1MzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzg0MgorCS53b3JkCTMzMjcwCisJLndvcmQJMTUwMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3OTE2CisJLndvcmQJNDQ1NDMKKwkud29yZAkxNDcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE0OTAKKwkud29yZAkzNjQyMQorCS53b3JkCTE0NDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxOTA0MAorCS53b3JkCTM4Mzk3CisJLndvcmQJMTQwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxMjI0CisJLndvcmQJNDcxNjIKKwkud29yZAkxMzc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTIwNTYKKwkud29yZAk0MTQ2MQorCS53b3JkCTEzNDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMDgxMAorCS53b3JkCTU2Mzc0CisJLndvcmQJMTMxNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUzNTgKKwkud29yZAkzNTA4NgorCS53b3JkCTEyODYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNjY0MAorCS53b3JkCTUwMjI2CisJLndvcmQJMTI1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMzODU2CisJLndvcmQJNDU1OTcKKwkud29yZAkxMjIyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE1NTIKKwkud29yZAk2MzEyOAorCS53b3JkCTExOTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTk4CisJLndvcmQJMzU2MTYKKwkud29yZAkxMTYyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTIzMgorCS53b3JkCTU5NTA2CisJLndvcmQJMTEzMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUxMDg2CisJLndvcmQJMzQ5NjMKKwkud29yZAkxMTAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzk2MAorCS53b3JkCTM5MDYxCisJLndvcmQJMTA2NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1NjQKKwkud29yZAk1NzEzNAorCS53b3JkCTEwMzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1OTQ2OAorCS53b3JkCTM1Mjg1CisJLndvcmQJMTAwNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzNDIyCisJLndvcmQJMzU0MzEKKwkud29yZAk5NzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzODM1MgorCS53b3JkCTUxNDYyCisJLndvcmQJOTQ1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU4MDYKKwkud29yZAk1NTY2MAorCS53b3JkCTkxNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM4ODQyCisJLndvcmQJNDEzMjcKKwkud29yZAk4ODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzk4MAorCS53b3JkCTUwNDU4CisJLndvcmQJODUyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjExOTQKKwkud29yZAk1OTcxMAorCS53b3JkCTgyMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIxMDk4CisJLndvcmQJNDIwODYKKwkud29yZAk3OTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjcwNAorCS53b3JkCTQzMzQxCisJLndvcmQJNzU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDYzMTYKKwkud29yZAk1Mjg0MAorCS53b3JkCTcyOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMzg2CisJLndvcmQJMzM5MzYKKwkud29yZAk2OTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDA2NAorCS53b3JkCTUxODY0CisJLndvcmQJNjY0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjI2OAorCS53b3JkCTU3NTAwCisJLndvcmQJNjM0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTExNTIKKwkud29yZAk1MTE3MQorCS53b3JkCTYwNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzMTY0CisJLndvcmQJNjM3MjcKKwkud29yZAk1NzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDUxNAorCS53b3JkCTQwMjgwCisJLndvcmQJNTQyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE4MTgKKwkud29yZAk1NzkyMgorCS53b3JkCTUxMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMyMzY2CisJLndvcmQJNDY0MTMKKwkud29yZAk0ODAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1Mzk3MgorCS53b3JkCTQzMTQ4CisJLndvcmQJNDQ5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAxMzQKKwkud29yZAk2NTEzMworCS53b3JkCTQxOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1MjgyCisJLndvcmQJNjE1MTYKKwkud29yZAkzODcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0OTg3MgorCS53b3JkCTQ5MjIyCisJLndvcmQJMzU1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTQ4NAorCS53b3JkCTYzOTU4CisJLndvcmQJMzI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDcwMjgKKwkud29yZAkzNTM0MQorCS53b3JkCTI5NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY3NzAKKwkud29yZAk1ODYxMworCS53b3JkCTI2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMzMzcyCisJLndvcmQJNDM0NDgKKwkud29yZAkyMzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzc5MgorCS53b3JkCTUxNjI5CisJLndvcmQJMTk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTk3MTIKKwkud29yZAk1MzY5MQorCS53b3JkCTE3MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyMTQ0CisJLndvcmQJNjA5MjkKKwkud29yZAkxMzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTI0MAorCS53b3JkCTQ4Nzk5CisJLndvcmQJMTA3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTEwCisJLndvcmQJNTEyMTIKKwkud29yZAk3NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY1MDYyCisJLndvcmQJMzM2NjgKKwkud29yZAk0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyNjI0CisJLndvcmQJNTE3OTkKKwkud29yZAkxNAorCS53b3JkCTAKKwkudHlwZQlfXzRvbnBpXzMxbCxAb2JqZWN0CisJLnNpemUJX180b25waV8zMWwsNjQ0NAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2xpYm1fc2luY29zX2h1Z2UuUyBiL2xpYm0veDg2L2xpYm1fc2luY29zX2h1Z2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDNkMTkzCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvbGlibV9zaW5jb3NfaHVnZS5TCkBAIC0wLDAgKzEsNjY4IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjIC0tIEJlZ2luICBfX2xpYm1fc2luY29zX2h1Z2UKKwkudGV4dAorICAgICAgIC5hbGlnbiAgICAxNiwweDkwCisJLmhpZGRlbiBfX2xpYm1fc2luY29zX2h1Z2UKKwkuZ2xvYmwgX19saWJtX3NpbmNvc19odWdlCitfX2xpYm1fc2luY29zX2h1Z2U6CisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorIyBwYXJhbWV0ZXIgMjogMTYgKyAlZWJwCisjIHBhcmFtZXRlciAzOiAyMCArICVlYnAKKy4uQjEuMToKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgYW5kbCAgICAgICQtNjQsICVlc3AKKyAgICAgICAgcHVzaGwgICAgICVlc2kKKyAgICAgICAgcHVzaGwgICAgICVlZGkKKyAgICAgICAgcHVzaGwgICAgICVlYngKKyAgICAgICAgc3VibCAgICAgICQ1MiwgJWVzcAorICAgICAgICBtb3ZsICAgICAgMTYoJWVicCksICVlYXgKKyAgICAgICAgbW92bCAgICAgIDIwKCVlYnApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAzMiglZXNwKQorICAgICAgICBtb3ZsICAgICAgJWVkeCwgMzYoJWVzcCkKKy4uQjEuMjoKKyAgICAgICAgZm5zdGN3ICAgIDMwKCVlc3ApCisuLkIxLjM6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVkaSksICVlZGkKKyAgICAgICAgbW92c2QgICAgIDgoJWVicCksICV4bW0xCisgICAgICAgIG1vdmwgICAgICAxMiglZWJwKSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlYXgKKyAgICAgICAgYW5kcHMgICAgIC5MXzJpbDBmbG9hdHBhY2tldC4wQEdPVE9GRiglZWRpKSwgJXhtbTEKKyAgICAgICAgc2hybCAgICAgICQzMSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVheCwgNDAoJWVzcCkKKyAgICAgICAgY21wbCAgICAgICQxMTA0MTUwNTI4LCAlZWF4CisgICAgICAgIG1vdnNkICAgICAleG1tMSwgOCglZWJwKQorICAgICAgICBqYWUgICAgICAgLi5CMS4xMQorLi5CMS40OgorICAgICAgICBtb3ZzZCAgICAgX1BpNEludkBHT1RPRkYoJWVkaSksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92endsICAgIDMwKCVlc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGNtcGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuLkIxLjQyCisuLkIxLjU6CisgICAgICAgIG9ybCAgICAgICAkLTY0NzY4LCAlZWR4CisgICAgICAgIG1vdncgICAgICAlZHgsIDI4KCVlc3ApCisuLkIxLjY6CisgICAgICAgIGZsZGN3ICAgICAyOCglZXNwKQorLi5CMS43OgorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWJ4CisuLkIxLjg6CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAxMiglZXNwKQorICAgICAgICBtb3ZsICAgICAgNCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgOCglZXNwKQorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVzaQorICAgICAgICBzaHJsICAgICAgJDIwLCAlZXNpCisgICAgICAgIGFuZGwgICAgICAkMTA0ODU3NSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJDEwNDg1NzYsICVlYXgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICQxOSwgJWVjeAorICAgICAgICBhZGRsICAgICAgJDEzLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWN4LCAyNCglZXNwKQorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVlYXgKKyAgICAgICAgbW92bCAgICAgIDI0KCVlc3ApLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAoJWVzcCksICVlc2kKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVzaQorICAgICAgICBvcmwgICAgICAgJWVzaSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDEwOTQ3MTMzNDQsICVlYngKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCAxNiglZXNwKQorICAgICAgICBmbGRsICAgICAgMTYoJWVzcCkKKyAgICAgICAgY21vdmIgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92bCAgICAgIDgoJWVzcCksICVlc2kKKyAgICAgICAgbGVhICAgICAgIDEoJWVheCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYngKKyAgICAgICAgYW5kbCAgICAgICQtMiwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVieCwgMTYoJWVzcCkKKyAgICAgICAgZmlsZGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAxMiglZXNwKSwgJWVieAorICAgICAgICBjbXBsICAgICAgJDEwOTQ3MTMzNDQsIDQwKCVlc3ApCisgICAgICAgIGphZSAgICAgICAuLkIxLjEwCisuLkIxLjk6CisgICAgICAgIGZsZGwgICAgICBfUGk0eDNAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDgrX1BpNHgzQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICAxNitfUGk0eDNAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTcKKy4uQjEuMTA6CisgICAgICAgIGZsZGwgICAgICBfUGk0eDRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDgrX1BpNHg0QEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICAxNitfUGk0eDRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDI0K19QaTR4NEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xNworLi5CMS4xMToKKyAgICAgICAgbW92endsICAgIDMwKCVlc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuLkIxLjQzCisuLkIxLjEyOgorICAgICAgICBvcmwgICAgICAgJC02NDc2OCwgJWVkeAorICAgICAgICBtb3Z3ICAgICAgJWR4LCAyOCglZXNwKQorLi5CMS4xMzoKKyAgICAgICAgZmxkY3cgICAgIDI4KCVlc3ApCisuLkIxLjE0OgorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWJ4CisuLkIxLjE1OgorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDE2KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBhZGRsICAgICAgJC0zMiwgJWVzcAorICAgICAgICBsZWEgICAgICAgMzIoJWVzcCksICVlYXgKKyAgICAgICAgZnN0cHQgICAgICglZXNwKQorICAgICAgICBtb3ZsICAgICAgJDAsIDEyKCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAxNiglZXNwKQorICAgICAgICBjYWxsICAgICAgX19saWJtX3JlZHVjZV9waTA0bAorLi5CMS40NjoKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVzcAorLi5CMS4xNjoKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBsZWEgICAgICAgMSglZWF4KSwgJWVkeAorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKy4uQjEuMTc6CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMywgJWVheAorICAgICAgICBzaHJsICAgICAgJDIsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWN4CisgICAgICAgIHNocmwgICAgICAkMiwgJWVheAorICAgICAgICB4b3JsICAgICAgJWVjeCwgJWVzaQorICAgICAgICBtb3ZsICAgICAgMzYoJWVzcCksICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMsICVlY3gKKyAgICAgICAgam5lICAgICAgIC4uQjEuMjUKKy4uQjEuMTg6CisgICAgICAgIGZsZHQgICAgICA4NCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgNzIrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICA2MCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDQ4K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgMzYrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICAyNCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDEyK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICA4NCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZXNpLDgpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZWF4LDgpCisgICAgICAgIGplICAgICAgICAuLkIxLjIyCisuLkIxLjE5OgorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgdGVzdGwgICAgICVlYngsICVlYngKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgbW92bCAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZzdHBsICAgICAoJWVheCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgOCglZWF4KQorICAgICAgICBqZSAgICAgICAgLi5CMS4yMQorLi5CMS4yMDoKKyAgICAgICAgZmxkY3cgICAgIDMwKCVlc3ApCisuLkIxLjIxOgorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMjI6CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDQpCisgICAgICAgIHRlc3RsICAgICAlZWJ4LCAlZWJ4CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIG1vdmwgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmc3RwbCAgICAgOCglZWF4KQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAoJWVheCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMjQKKy4uQjEuMjM6CisgICAgICAgIGZsZGN3ICAgICAzMCglZXNwKQorLi5CMS4yNDoKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjI1OgorICAgICAgICB0ZXN0YiAgICAgJDIsIDM2KCVlc3ApCisgICAgICAgIGplICAgICAgICAuLkIxLjMzCisuLkIxLjI2OgorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBqZSAgICAgICAgLi5CMS4zMAorLi5CMS4yNzoKKyAgICAgICAgZnN0cCAgICAgICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgODQrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICB0ZXN0bCAgICAgJWVieCwgJWVieAorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDcyK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIG1vdmwgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZHQgICAgICBfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZXNpLDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDgoJWVheCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMjkKKy4uQjEuMjg6CisgICAgICAgIGZsZGN3ICAgICAzMCglZXNwKQorLi5CMS4yOToKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjMwOgorICAgICAgICBmbGR0ICAgICAgODQrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICB0ZXN0bCAgICAgJWVieCwgJWVieAorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDcyK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIG1vdmwgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZHQgICAgICBfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZXNpLDgpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICA4KCVlYXgpCisgICAgICAgIGplICAgICAgICAuLkIxLjMyCisuLkIxLjMxOgorICAgICAgICBmbGRjdyAgICAgMzAoJWVzcCkKKy4uQjEuMzI6CisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zMzoKKyAgICAgICAgdGVzdGIgICAgICQxLCAzNiglZXNwKQorICAgICAgICBqZSAgICAgICAgLi5CMS40MQorLi5CMS4zNDoKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICB0ZXN0YiAgICAgJDIsICVkbAorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzgKKy4uQjEuMzU6CisgICAgICAgIGZsZHQgICAgICA4NCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIHRlc3RsICAgICAlZWJ4LCAlZWJ4CisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA0OCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlZGksJWVheCw4KQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIG1vdmwgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgICglZWF4KQorICAgICAgICBqZSAgICAgICAgLi5CMS4zNworLi5CMS4zNjoKKyAgICAgICAgZmxkY3cgICAgIDMwKCVlc3ApCisuLkIxLjM3OgorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMzg6CisgICAgICAgIGZzdHAgICAgICAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDg0K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgdGVzdGwgICAgICVlYngsICVlYngKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZHQgICAgICBfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBtb3ZsICAgICAgMzIoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAoJWVheCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuNDAKKy4uQjEuMzk6CisgICAgICAgIGZsZGN3ICAgICAzMCglZXNwKQorLi5CMS40MDoKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjQxOgorICAgICAgICBmc3RwICAgICAgJXN0KDApCisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS40MjoKKyAgICAgICAgeG9ybCAgICAgICVlYngsICVlYngKKyAgICAgICAgam1wICAgICAgIC4uQjEuOAorLi5CMS40MzoKKyAgICAgICAgeG9ybCAgICAgICVlYngsICVlYngKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTUKKyAgICAgICAgLmFsaWduICAgIDE2LDB4OTAKKwkudHlwZQlfX2xpYm1fc2luY29zX2h1Z2UsQGZ1bmN0aW9uCisJLnNpemUJX19saWJtX3NpbmNvc19odWdlLC4tX19saWJtX3NpbmNvc19odWdlCisJLmRhdGEKKyMgLS0gRW5kICBfX2xpYm1fc2luY29zX2h1Z2UKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKKy5MXzJpbDBmbG9hdHBhY2tldC4wOgorCS5sb25nCTB4ZmZmZmZmZmYsMHg3ZmZmZmZmZiwweDAwMDAwMDAwLDB4MDAwMDAwMDAKKwkudHlwZQkuTF8yaWwwZmxvYXRwYWNrZXQuMCxAb2JqZWN0CisJLnNpemUJLkxfMmlsMGZsb2F0cGFja2V0LjAsMTYKKwkuYWxpZ24gMTYKK19QaTRJbnY6CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzI5Nzk3NjAKKwkudHlwZQlfUGk0SW52LEBvYmplY3QKKwkuc2l6ZQlfUGk0SW52LDgKKwkuc3BhY2UgOCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK19QaTR4MzoKKwkubG9uZwkxNDEzNzU0ODgwCisJLmxvbmcJMzIxOTcyNjg0MworCS5sb25nCTk5MzYzMjI1NgorCS5sb25nCTEwMjcwMzA0NzUKKwkubG9uZwkzNzczMjA0ODA4CisJLmxvbmcJMzEyOTIzNjQ4NgorCS50eXBlCV9QaTR4MyxAb2JqZWN0CisJLnNpemUJX1BpNHgzLDI0CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitfUGk0eDQ6CisJLmxvbmcJMTQxMzQ4MDQ0OAorCS5sb25nCTMyMTk3MjY4NDMKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkzMTgzNTIyOTEzCisJLmxvbmcJNzcxNzUxOTM2CisJLmxvbmcJMzE0Njk3OTcyMgorCS5sb25nCTYyMjg3MzAyNQorCS5sb25nCTMxMTA4MzEwMDIKKwkudHlwZQlfUGk0eDQsQG9iamVjdAorCS5zaXplCV9QaTR4NCwzMgorCS5hbGlnbiAxNgorX1NQOgorCS53b3JkCTQzNjkxCisJLndvcmQJNDM2OTAKKwkud29yZAk0MzY5MAorCS53b3JkCTQzNjkwCisJLndvcmQJNDkxNDgKKwkud29yZAkwCisJLndvcmQJMzQ5NTEKKwkud29yZAkzNDk1MgorCS53b3JkCTM0OTUyCisJLndvcmQJMzQ5NTIKKwkud29yZAkxNjM3NgorCS53b3JkCTAKKwkud29yZAk1MDQ3MQorCS53b3JkCTMzMjgKKwkud29yZAkyMDgKKwkud29yZAk1MzI2MQorCS53b3JkCTQ5MTM4CisJLndvcmQJMAorCS53b3JkCTE3OTEwCisJLndvcmQJNDY2MTQKKwkud29yZAk3NDY2CisJLndvcmQJNDczNDMKKwkud29yZAkxNjM2NAorCS53b3JkCTAKKwkud29yZAkzMzM3MQorCS53b3JkCTE0NzQzCisJLndvcmQJMTEwNzEKKwkud29yZAk1NTA5MAorCS53b3JkCTQ5MTI1CisJLndvcmQJMAorCS53b3JkCTQ4OTQ3CisJLndvcmQJMzU3NjQKKwkud29yZAkxMjI1MAorCS53b3JkCTQ1MjAyCisJLndvcmQJMTYzNTAKKwkud29yZAkwCisJLndvcmQJMTc1NzQKKwkud29yZAk2MDY5OAorCS53b3JkCTEwNzM1CisJLndvcmQJNTUxMDIKKwkud29yZAk0OTExMAorCS53b3JkCTAKKwkud29yZAkzNDMyMAorCS53b3JkCTEyNDE1CisJLndvcmQJMjUyNDkKKwkud29yZAk1MTQ4OQorCS53b3JkCTE2MzM0CisJLndvcmQJMAorCS50eXBlCV9TUCxAb2JqZWN0CisJLnNpemUJX1NQLDk2CisJLmFsaWduIDE2CitfQ1A6CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzI3NjgKKwkud29yZAk0OTE1MAorCS53b3JkCTAKKwkud29yZAk0MzY4NQorCS53b3JkCTQzNjkwCisJLndvcmQJNDM2OTAKKwkud29yZAk0MzY5MAorCS53b3JkCTE2Mzc4CisJLndvcmQJMAorCS53b3JkCTM5OTgzCisJLndvcmQJMjkxMgorCS53b3JkCTI0NzU4CisJLndvcmQJNDY2MDMKKwkud29yZAk0OTE0MQorCS53b3JkCTAKKwkud29yZAk2MTQ3NgorCS53b3JkCTMyNDQKKwkud29yZAkyMDgKKwkud29yZAk1MzI2MQorCS53b3JkCTE2MzY3CisJLndvcmQJMAorCS53b3JkCTEwMjIKKwkud29yZAkxNjIyOQorCS53b3JkCTMyMTg3CisJLndvcmQJMzc4NzQKKwkud29yZAk0OTEyOQorCS53b3JkCTAKKwkud29yZAk1NTM3MworCS53b3JkCTQ0NTI2CisJLndvcmQJNTA4NDAKKwkud29yZAkzNjcyNgorCS53b3JkCTE2MzU0CisJLndvcmQJMAorCS53b3JkCTU1OTk0CisJLndvcmQJNjUxNDUKKwkud29yZAk1OTk1OAorCS53b3JkCTUxNjU3CisJLndvcmQJNDkxMTQKKwkud29yZAkwCisJLndvcmQJMTUwNDYKKwkud29yZAkyOTc2CisJLndvcmQJMTk5OAorCS53b3JkCTU0NjYxCisJLndvcmQJMTYzMzgKKwkud29yZAkwCisJLnR5cGUJX0NQLEBvYmplY3QKKwkuc2l6ZQlfQ1AsOTYKKwkuYWxpZ24gMTYKK19vbmVzOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkudHlwZQlfb25lcyxAb2JqZWN0CisJLnNpemUJX29uZXMsMTYKKwkuZGF0YQorCS5oaWRkZW4gX19saWJtX3JlZHVjZV9waTA0bAorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9saWJtX3RhbmNvdF9odWdlLlMgYi9saWJtL3g4Ni9saWJtX3RhbmNvdF9odWdlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODBmMTZkNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2xpYm1fdGFuY290X2h1Z2UuUwpAQCAtMCwwICsxLDc1MCBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworIyAtLSBCZWdpbiAgX19saWJtX3RhbmNvdF9odWdlCisJLnRleHQKKyAgICAgICAuYWxpZ24gICAgMTYsMHg5MAorCS5oaWRkZW4gX19saWJtX3RhbmNvdF9odWdlCisJLmdsb2JsIF9fbGlibV90YW5jb3RfaHVnZQorX19saWJtX3RhbmNvdF9odWdlOgorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKyMgcGFyYW1ldGVyIDI6IDE2ICsgJWVicAorIyBwYXJhbWV0ZXIgMzogMjAgKyAlZWJwCisuLkIxLjE6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIGFuZGwgICAgICAkLTY0LCAlZXNwCisgICAgICAgIHB1c2hsICAgICAlZXNpCisgICAgICAgIHB1c2hsICAgICAlZWRpCisgICAgICAgIHB1c2hsICAgICAlZWJ4CisgICAgICAgIHN1YmwgICAgICAkNTIsICVlc3AKKyAgICAgICAgbW92bCAgICAgIDE2KCVlYnApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAyMCglZWJwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVheCwgNDAoJWVzcCkKKy4uQjEuMjoKKyAgICAgICAgZm5zdGN3ICAgIDM4KCVlc3ApCisuLkIxLjM6CisgICAgICAgIG1vdmwgICAgICAxMiglZWJwKSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQzMSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgNDQoJWVzcCkKKyAgICAgICAgY21wbCAgICAgICQxMTA0MTUwNTI4LCAlZWF4CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVzaSksICVlc2kKKyAgICAgICAgamFlICAgICAgIC4uQjEuMTEKKy4uQjEuNDoKKyAgICAgICAgbW92c2QgICAgIDgoJWVicCksICV4bW0xCisgICAgICAgIG1vdnp3bCAgICAzOCglZXNwKSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDc2OCwgJWVkeAorICAgICAgICBhbmRwcyAgICAgLkxfMmlsMGZsb2F0cGFja2V0LjBAR09UT0ZGKCVlc2kpLCAleG1tMQorICAgICAgICBjbXBsICAgICAgJDc2OCwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgX1BpNEludkBHT1RPRkYoJWVzaSksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA4KCVlYnApCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGplICAgICAgICAuLkIxLjM5CisuLkIxLjU6CisgICAgICAgIG9ybCAgICAgICAkLTY0NzY4LCAlZWN4CisgICAgICAgIG1vdncgICAgICAlY3gsIDM2KCVlc3ApCisuLkIxLjY6CisgICAgICAgIGZsZGN3ICAgICAzNiglZXNwKQorLi5CMS43OgorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWRpCisuLkIxLjg6CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAxMiglZXNwKQorICAgICAgICBtb3ZsICAgICAgNCglZXNwKSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkaSwgMjQoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVlZGkKKyAgICAgICAgc2hybCAgICAgICQyMCwgJWVkaQorICAgICAgICBhbmRsICAgICAgJDEwNDg1NzUsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZGksICVlY3gKKyAgICAgICAgb3JsICAgICAgICQxMDQ4NTc2LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTMsICVlZGkKKyAgICAgICAgbW92bCAgICAgICVlYngsIDgoJWVzcCkKKyAgICAgICAgYWRkbCAgICAgICQxOSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgMjgoJWVzcCkKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJWVjeAorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAyOCglZXNwKSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgKCVlc3ApLCAlZWRpCisgICAgICAgIHNocmwgICAgICAlY2wsICVlZGkKKyAgICAgICAgb3JsICAgICAgICVlZGksICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxMDk0NzEzMzQ0LCAlZXNpCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgMTYoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlc3ApCisgICAgICAgIGNtb3ZiICAgICAlZWJ4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVkaQorICAgICAgICBtb3ZsICAgICAgMTIoJWVzcCksICVlc2kKKyAgICAgICAgbGVhICAgICAgIDEoJWVkeCksICVlYngKKyAgICAgICAgYW5kbCAgICAgICQtMiwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVieCwgMTYoJWVzcCkKKyAgICAgICAgY21wbCAgICAgICQxMDk0NzEzMzQ0LCAlZWF4CisgICAgICAgIGZpbGRsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZsICAgICAgOCglZXNwKSwgJWVieAorICAgICAgICBqYWUgICAgICAgLi5CMS4xMAorLi5CMS45OgorICAgICAgICBmbGRsICAgICAgX1BpNHgzQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICA4K19QaTR4M0BHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGRsICAgICAgMTYrX1BpNHgzQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGptcCAgICAgICAuLkIxLjE3CisuLkIxLjEwOgorICAgICAgICBmbGRsICAgICAgX1BpNHg0QEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICA4K19QaTR4NEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGRsICAgICAgMTYrX1BpNHg0QEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICAyNCtfUGk0eDRAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTcKKy4uQjEuMTE6CisgICAgICAgIG1vdnp3bCAgICAzOCglZXNwKSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDc2OCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLi5CMS40MAorLi5CMS4xMjoKKyAgICAgICAgb3JsICAgICAgICQtNjQ3NjgsICVlZHgKKyAgICAgICAgbW92dyAgICAgICVkeCwgMzYoJWVzcCkKKy4uQjEuMTM6CisgICAgICAgIGZsZGN3ICAgICAzNiglZXNwKQorLi5CMS4xNDoKKyAgICAgICAgbW92bCAgICAgICQxLCAlZWRpCisuLkIxLjE1OgorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTAKKyAgICAgICAgYWRkbCAgICAgICQtMzIsICVlc3AKKyAgICAgICAgYW5kcHMgICAgIC5MXzJpbDBmbG9hdHBhY2tldC4wQEdPVE9GRiglZXNpKSwgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMTYoJWVheCkKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlYXgpCisgICAgICAgIGZzdHB0ICAgICAoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICQwLCAxMiglZXNwKQorICAgICAgICBtb3ZsICAgICAgJWVheCwgMTYoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIF9fbGlibV9yZWR1Y2VfcGkwNGwKKy4uQjEuNDM6CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMzIsICVlc3AKKy4uQjEuMTY6CisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDgoJWVzcCkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisuLkIxLjE3OgorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuLkIxLjI0CisuLkIxLjE4OgorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlc2kpCisgICAgICAgIGluY2wgICAgICAlZWR4CisgICAgICAgIGZkaXYgICAgICAlc3QoMSksICVzdAorICAgICAgICB0ZXN0YiAgICAgJDIsICVkbAorICAgICAgICBmc3RwdCAgICAgMjQoJWVzcCkKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDEzMitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIwK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMDgrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDk2K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZHQgICAgICA4NCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZHQgICAgICA0OCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDQpCisgICAgICAgIGZsZHQgICAgICAxMitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZm11bCAgICAgICVzdCg1KSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCg0KQorICAgICAgICBmeGNoICAgICAgJXN0KDMpCisgICAgICAgIGZtdWwgICAgICAlc3QoNSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgamUgICAgICAgIC4uQjEuMjAKKy4uQjEuMTk6CisgICAgICAgIGZsZHQgICAgICAyNCglZXNwKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZkaXZycCAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgzKQorICAgICAgICBtb3ZsICAgICAgNDQoJWVzcCksICVlYXgKKyAgICAgICAgeG9ybCAgICAgICQxLCAlZWF4CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgMTYoJWVzcCkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIGptcCAgICAgICAuLkIxLjIxCisuLkIxLjIwOgorICAgICAgICBmZGl2cnAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIG1vdmwgICAgICA0NCglZXNwKSwgJWVheAorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlc2ksJWVheCw4KQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0KCVlc3ApCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0wCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgMTYoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorLi5CMS4yMToKKyAgICAgICAgdGVzdGwgICAgICVlZGksICVlZGkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMjMKKy4uQjEuMjI6CisgICAgICAgIGZsZGN3ICAgICAzOCglZXNwKQorLi5CMS4yMzoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlYXgpCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgOCglZWF4KQorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMjQ6CisgICAgICAgIHRlc3RiICAgICAkMiwgJWJsCisgICAgICAgIGplICAgICAgICAuLkIxLjMxCisuLkIxLjI1OgorICAgICAgICBpbmNsICAgICAgJWVkeAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICB0ZXN0YiAgICAgJDIsICVkbAorICAgICAgICBqZSAgICAgICAgLi5CMS4yNworLi5CMS4yNjoKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpKQorICAgICAgICBmZGl2ICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEzMitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIwK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMDgrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBtb3ZsICAgICAgNDQoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIHhvcmwgICAgICAkMSwgJWVheAorICAgICAgICBmbGR0ICAgICAgOTYrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDg0K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDEyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGR0ICAgICAgX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjI4CisuLkIxLjI3OgorICAgICAgICBmbGR0ICAgICAgMzYrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgbW92bCAgICAgIDQ0KCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDEyK19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmZGl2cCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlc2ksJWVheCw4KQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgMTYoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMAorLi5CMS4yODoKKyAgICAgICAgdGVzdGwgICAgICVlZGksICVlZGkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzAKKy4uQjEuMjk6CisgICAgICAgIGZsZGN3ICAgICAzOCglZXNwKQorLi5CMS4zMDoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlYXgpCisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zMToKKyAgICAgICAgdGVzdGIgICAgICQxLCAlYmwKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzgKKy4uQjEuMzI6CisgICAgICAgIGluY2wgICAgICAlZWR4CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGplICAgICAgICAuLkIxLjM0CisuLkIxLjMzOgorICAgICAgICBmbGR0ICAgICAgMzYrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgbW92bCAgICAgIDQ0KCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgeG9ybCAgICAgICQxLCAlZWF4CisgICAgICAgIGZsZHQgICAgICAzNitfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMitfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIF9UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICAxMitfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmRpdnAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpLCVlYXgsOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuMzUKKy4uQjEuMzQ6CisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSkKKyAgICAgICAgZmRpdiAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMzIrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyMCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTA4K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgbW92bCAgICAgIDQ0KCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgOTYrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDg0K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDEyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGR0ICAgICAgX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0wCisuLkIxLjM1OgorICAgICAgICB0ZXN0bCAgICAgJWVkaSwgJWVkaQorICAgICAgICBqZSAgICAgICAgLi5CMS4zNworLi5CMS4zNjoKKyAgICAgICAgZmxkY3cgICAgIDM4KCVlc3ApCisuLkIxLjM3OgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlYXgpCisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zODoKKyAgICAgICAgZnN0cCAgICAgICVzdCgwKQorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMzk6CisgICAgICAgIHhvcmwgICAgICAlZWRpLCAlZWRpCisgICAgICAgIGptcCAgICAgICAuLkIxLjgKKy4uQjEuNDA6CisgICAgICAgIHhvcmwgICAgICAlZWRpLCAlZWRpCisgICAgICAgIGptcCAgICAgICAuLkIxLjE1CisgICAgICAgIC5hbGlnbiAgICAxNiwweDkwCisJLnR5cGUJX19saWJtX3RhbmNvdF9odWdlLEBmdW5jdGlvbgorCS5zaXplCV9fbGlibV90YW5jb3RfaHVnZSwuLV9fbGlibV90YW5jb3RfaHVnZQorCS5kYXRhCisjIC0tIEVuZCAgX19saWJtX3RhbmNvdF9odWdlCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CisuTF8yaWwwZmxvYXRwYWNrZXQuMDoKKwkubG9uZwkweGZmZmZmZmZmLDB4N2ZmZmZmZmYsMHgwMDAwMDAwMCwweDAwMDAwMDAwCisJLnR5cGUJLkxfMmlsMGZsb2F0cGFja2V0LjAsQG9iamVjdAorCS5zaXplCS5MXzJpbDBmbG9hdHBhY2tldC4wLDE2CisJLmFsaWduIDE2CitfUGk0SW52OgorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDcyOTc5NzYwCisJLnR5cGUJX1BpNEludixAb2JqZWN0CisJLnNpemUJX1BpNEludiw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitfUGk0eDM6CisJLmxvbmcJMTQxMzc1NDg4MAorCS5sb25nCTMyMTk3MjY4NDMKKwkubG9uZwk5OTM2MzIyNTYKKwkubG9uZwkxMDI3MDMwNDc1CisJLmxvbmcJMzc3MzIwNDgwOAorCS5sb25nCTMxMjkyMzY0ODYKKwkudHlwZQlfUGk0eDMsQG9iamVjdAorCS5zaXplCV9QaTR4MywyNAorCS5zcGFjZSA4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorX1BpNHg0OgorCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkzMjE5NzI2ODQzCisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMzE4MzUyMjkxMworCS5sb25nCTc3MTc1MTkzNgorCS5sb25nCTMxNDY5Nzk3MjIKKwkubG9uZwk2MjI4NzMwMjUKKwkubG9uZwkzMTEwODMxMDAyCisJLnR5cGUJX1BpNHg0LEBvYmplY3QKKwkuc2l6ZQlfUGk0eDQsMzIKKwkuYWxpZ24gMTYKK19vbmVzOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkudHlwZQlfb25lcyxAb2JqZWN0CisJLnNpemUJX29uZXMsMTYKKwkuYWxpZ24gMTYKK19UUDoKKwkud29yZAkxOTY3MAorCS53b3JkCTQ0OTA4CisJLndvcmQJNTA5NjAKKwkud29yZAk1MDc4NgorCS53b3JkCTQ5MTQ5CisJLndvcmQJMAorCS53b3JkCTE5MjA2CisJLndvcmQJNDUyMjgKKwkud29yZAk1NDE5NAorCS53b3JkCTUyMjY4CisJLndvcmQJMTYzNzcKKwkud29yZAkwCisJLndvcmQJMjI3CisJLndvcmQJNTEyODAKKwkud29yZAk0MzU2MAorCS53b3JkCTM4MTk1CisJLndvcmQJNDkxMzkKKwkud29yZAkwCisJLndvcmQJMTIyNzIKKwkud29yZAkxODAyOQorCS53b3JkCTY3MTUKKwkud29yZAk0NTY3MAorCS53b3JkCTE2MzU3CisJLndvcmQJMAorCS50eXBlCV9UUCxAb2JqZWN0CisJLnNpemUJX1RQLDQ4CisJLmFsaWduIDE2CitfVFE6CisJLndvcmQJMTQ3NDgKKwkud29yZAkzMzY4MQorCS53b3JkCTU0NTIKKwkud29yZAkzODA5MAorCS53b3JkCTQ5MTUxCisJLndvcmQJMAorCS53b3JkCTQ2NzU1CisJLndvcmQJNTAwMjYKKwkud29yZAkxNzYzNAorCS53b3JkCTM1MzcyCisJLndvcmQJMTYzODIKKwkud29yZAkwCisJLndvcmQJNDY4NjMKKwkud29yZAk1MzM1MgorCS53b3JkCTQyNzAyCisJLndvcmQJNTk4NjkKKwkud29yZAk0OTE0NQorCS53b3JkCTAKKwkud29yZAkzMzI5NQorCS53b3JkCTIwOTQyCisJLndvcmQJMzIxMTgKKwkud29yZAkzOTkzNQorCS53b3JkCTE2MzcxCisJLndvcmQJMAorCS50eXBlCV9UUSxAb2JqZWN0CisJLnNpemUJX1RRLDQ4CisJLmFsaWduIDE2CitfR1A6CisJLndvcmQJNDM2OTEKKwkud29yZAk0MzY5MAorCS53b3JkCTQzNjkwCisJLndvcmQJNDM2OTAKKwkud29yZAk0OTE0OQorCS53b3JkCTAKKwkud29yZAk0NjYzOQorCS53b3JkCTI5MTIKKwkud29yZAkyNDc1OAorCS53b3JkCTQ2NjAzCisJLndvcmQJNDkxNDUKKwkud29yZAkwCisJLndvcmQJNTcyNTUKKwkud29yZAkyMjE4CisJLndvcmQJMjE5ODQKKwkud29yZAkzNTUwNworCS53b3JkCTQ5MTQyCisJLndvcmQJMAorCS53b3JkCTM0MjA4CisJLndvcmQJNDMwMzMKKwkud29yZAk0ODI4MQorCS53b3JkCTU2ODExCisJLndvcmQJNDkxMzgKKwkud29yZAkwCisJLndvcmQJMjg3NzMKKwkud29yZAkyNzE5MQorCS53b3JkCTMxMDcxCisJLndvcmQJNDU5MDgKKwkud29yZAk0OTEzNQorCS53b3JkCTAKKwkud29yZAk0MzI1NworCS53b3JkCTMzNzc3CisJLndvcmQJMTE5NzYKKwkud29yZAkzNzE4NAorCS53b3JkCTQ5MTMyCisJLndvcmQJMAorCS53b3JkCTYyNDEwCisJLndvcmQJMzU5OTAKKwkud29yZAkzNjM2MworCS53b3JkCTYwMjY5CisJLndvcmQJNDkxMjgKKwkud29yZAkwCisJLndvcmQJMTM2NTkKKwkud29yZAk1NTU2OAorCS53b3JkCTI2NTY5CisJLndvcmQJNDg4NTEKKwkud29yZAk0OTEyNQorCS53b3JkCTAKKwkud29yZAkxMDM0NworCS53b3JkCTQ2MjM4CisJLndvcmQJNDcxODgKKwkud29yZAkzOTU3NgorCS53b3JkCTQ5MTIyCisJLndvcmQJMAorCS53b3JkCTIxNjEKKwkud29yZAk2NzAzCisJLndvcmQJMjU3MTkKKwkud29yZAk2NDcwOAorCS53b3JkCTQ5MTE4CisJLndvcmQJMAorCS53b3JkCTQyMzI5CisJLndvcmQJNzU5MworCS53b3JkCTQ0NzU0CisJLndvcmQJNDc3MzQKKwkud29yZAk0OTExNQorCS53b3JkCTAKKwkud29yZAkxNjMKKwkud29yZAkzMjc0NgorCS53b3JkCTM5ODc1CisJLndvcmQJNjE5NTcKKwkud29yZAk0OTExMgorCS53b3JkCTAKKwkudHlwZQlfR1AsQG9iamVjdAorCS5zaXplCV9HUCwxNDQKKwkuZGF0YQorCS5oaWRkZW4gX19saWJtX3JlZHVjZV9waTA0bAorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9zX2F0YW4uUyBiL2xpYm0veDg2L3NfYXRhbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0NDEzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zX2F0YW4uUwpAQCAtMCwwICsxLDkzNCBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIFRoaXMgaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgbWFpbiBwYXRoIGZvciB8eHwgaW4gWzJeey01fSwyXjY1KS4KKy8vIEZvciB8eHwgaW4gWzJeey02NH0sMl57LTV9KSwgYSBzZWNvbmRhcnkgcGF0aCBpcyB1c2VkLgorLy8gRm9yIHRoZSBiaWFzZWQgZXhwb25lbnQgb2YgWCB3aXRoaW4gM0ZGSC02NCBhbmQgM0ZGKzY0LCB3ZSB1c2Ugb25lIGJyYW5jaC4KKy8vIFdlIHVzZSB0aGUgZm9sbG93aW5nIGRlZmluaXRpb24gb2YgQiBhbmQgWGAgc28gdGhhdCB0aGUgZm9ybXVsYQorLy8gYXRhbihYKSA9IFRhdSArIGF0YW4oIChYYC1CKSAvIChPbmUgKyBCWCkgKSBpcyBjb3JyZWN0CisvLworLy8gWCA9ICgtMSlecyAqIDJeayAqIDEuIHgxIHgyIC4uLiB4NTIKKy8vCisvLyBEZWZpbmUgWGAgID0gMCBpZiBrID49IDU7IGFuZCBYYCAgPSB8WHwgb3RoZXJ3aXNlCisvLyBEZWZpbmUgT25lID0gMCBpZiBrID49IDU7IGFuZCBPbmUgPSAxIG90aGVyd2lzZQorLy8gRGVmaW5lIEIgID0gMCBpZiBrIDw9IC02OyBCID0gIDJeayAqIDEueDEgeDIgeDMgeDQgMSAgaWYgLTUgPD0gayA8PSA0CisvLyBEZWZpbmUgQiAgPSAgMl41ICogMS4wIDAgLi4uIDAgICBpZiAgayA+PSA1CisvLworLy8gVGF1IGlzIDAgaWYgayA8PSAtNjsKKy8vIFRhdSBpcyBhdGFuKCBCICkgIGlmIC01IDw9IGsgPD0gNAorLy8gVGF1IGlzIHBpLzIgaWYgayA+PSA1CisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBhdGFuKE5hTikgPSBxdWlldCBOYU4KKy8vICBhdGFuKCsvLUlORikgPSArLy1QaS8yCisvLyAgYXRhbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBhdGFuCitFTlRSWShhdGFuKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQ4KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMjY0MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgIDI2MjQoJWVieCksICV4bW01CisgICAgICAgIG1vdnNkICAgICAyNjU2KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVkeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjI4OCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE1OSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRsICAgICAgJDEsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDI2NzIoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICAyNjg4KCVlYngpLCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNworICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgKCVlYngsJWVkeCw4KSwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDgoJWVieCwlZWR4LDgpLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDI2ODAoJWVieCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgMjY5NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkOTQ0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTEwMywgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgbW92c2QgICAgIDI2NzIoJWVieCksICV4bW00CisgICAgICAgIG1vdnNkICAgICAyNjg4KCVlYngpLCAleG1tNworICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgMjY4MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDI2OTYoJWVieCksICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTEKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQxNzM5MiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTEKKyAgICAgICAgZGl2c2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgMjY3MiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDI2ODgoJWVieCksICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG1vdnNkICAgICAyNTkyKCVlYngpLCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgMjYwMCglZWJ4KSwgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdnNkICAgICAyNjgwKCVlYngpLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIDI2OTYoJWVieCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDI2MDgoJWVieCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyNTkyKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMjYwMCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIGFuZG5wZCAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBvcnBkICAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBzdWJsICAgICAgJDIxNDY0MzUwNzIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdmwgICAgICA0OCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQoYXRhbikKKyMgLS0gRW5kICBhdGFuCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChhdGFubCwgYXRhbik7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODE5Njk1NzQyCisJLmxvbmcJMTA2NzQ4Mjc2MQorCS5sb25nCTIzOTg2ODAzNTUKKwkubG9uZwkzMTU1NDYyMDc0CisJLmxvbmcJMjk5ODc5MTAwOQorCS5sb25nCTEwNjc1NDgyMjUKKwkubG9uZwkzODY4NDY1MjQ4CisJLmxvbmcJMzE1NzE4MjQ3MgorCS5sb25nCTMzMzk0MjQ5OTEKKwkubG9uZwkxMDY3NjEzNjgwCisJLmxvbmcJMzI5NjY3MDM2MAorCS5sb25nCTEwMTA3NTI1NDMKKwkubG9uZwkyNzEwMDAyMjU2CisJLmxvbmcJMTA2NzY3OTEyNgorCS5sb25nCTM0MDM4OTYwMDcKKwkubG9uZwkxMDEwOTEwNzY4CisJLmxvbmcJMzI3NTcwMTQyOAorCS5sb25nCTEwNjc3NDQ1NjIKKwkubG9uZwkxMTk5NTk5MzMKKwkubG9uZwkxMDExNDgyODQzCisJLmxvbmcJMjkwODYzNjg4MQorCS5sb25nCTEwNjc4MDk5ODgKKwkubG9uZwkyNDY0NDg5NjEyCisJLmxvbmcJMTAxMTU0NTUyNgorCS5sb25nCTM3Nzc4ODkzOTgKKwkubG9uZwkxMDY3ODc1NDAzCisJLmxvbmcJMzI2MjY4MjE2NQorCS5sb25nCTEwMDk3MDM5MTkKKwkubG9uZwkzNzU5NjY3NDE5CisJLmxvbmcJMTA2Nzk0MDgwNworCS5sb25nCTE4MzgxMzA4NTEKKwkubG9uZwkzMTU3MzczNTU2CisJLmxvbmcJNzMyMzY5OTQwCisJLmxvbmcJMTA2ODAwNjIwMAorCS5sb25nCTEyMDM0MjgzMTMKKwkubG9uZwkxMDEwMDU1MzcxCisJLmxvbmcJMTE2NjYxNjQ2MQorCS5sb25nCTEwNjgwNzE1ODAKKwkubG9uZwkyOTAxMjc0MDUxCisJLmxvbmcJMzE1ODU0OTk3NworCS5sb25nCTI5NDU0NzI4OTIKKwkubG9uZwkxMDY4MTM2OTQ3CisJLmxvbmcJMzcyNjEyMDY1OAorCS5sb25nCTEwMDk3NjI3MTUKKwkubG9uZwkzOTU0NDgwOTc2CisJLmxvbmcJMTA2ODIwMjMwMQorCS5sb25nCTEyODkxNzM0NTcKKwkubG9uZwkxMDA5NDI5ODYxCisJLmxvbmcJMjA4MTc1MjgyOQorCS5sb25nCTEwNjgyNjc2NDIKKwkubG9uZwkxODM2OTA5ODc0CisJLmxvbmcJMTAwNjIxMjA5NQorCS5sb25nCTM4MDc5OTk3ODgKKwkubG9uZwkxMDY4MzMyOTY4CisJLmxvbmcJMjE3MjQ1OTk0MAorCS5sb25nCTMxNTYxNjIwNzgKKwkubG9uZwkyNzMxNzg5ODg0CisJLmxvbmcJMTA2ODM5ODI4MAorCS5sb25nCTM0NTA3MTgzOTIKKwkubG9uZwkzMTU5MjE2NTQ3CisJLmxvbmcJMTA0NDQ3Nzk2MQorCS5sb25nCTEwNjg0NjM1NzcKKwkubG9uZwkyMjMwNTUzMjI5CisJLmxvbmcJMTAxMTQyNDMzOQorCS5sb25nCTE0ODY5MzAyODcKKwkubG9uZwkxMDY4NTMwMjE4CisJLmxvbmcJMjg2MTU0NzQ3NAorCS5sb25nCTEwMTIwNDEzNzYKKwkubG9uZwkyMjkzMDE2ODgxCisJLmxvbmcJMTA2ODU5NTQ2NgorCS5sb25nCTEzNjg0MzI3MgorCS5sb25nCTEwMTI2ODQ3OTcKKwkubG9uZwkyMDE1MTgxNTcKKwkubG9uZwkxMDY4NjYwNjgwCisJLmxvbmcJNjMyMzE5ODQKKwkubG9uZwkxMDEyNDI3MTk4CisJLmxvbmcJNDA1NDIzNDU4NAorCS5sb25nCTEwNjg3MjU4NTYKKwkubG9uZwkzOTI3MDA2OTYwCisJLmxvbmcJMTAxMTg3ODk1NQorCS5sb25nCTEyNDY0NzcyMTMKKwkubG9uZwkxMDY4NzkwOTk1CisJLmxvbmcJMTQ5NDI2NTY1MgorCS5sb25nCTMxNTUyMTkzNTAKKwkubG9uZwk2NzgxODY2OTkKKwkubG9uZwkxMDY4ODU2MDkzCisJLmxvbmcJMTI2NDM2MTQyNAorCS5sb25nCTMxNTkyNTY2OTMKKwkubG9uZwkyNjkwNTk0OTk1CisJLmxvbmcJMTA2ODkyMTE0OAorCS5sb25nCTM5MDY5OTYzNzkKKwkubG9uZwkxMDA5Mjg4MjY3CisJLmxvbmcJMzM2MjYxMTUxNworCS5sb25nCTEwNjg5ODYxNTkKKwkubG9uZwkxNjUwOTcwMDQxCisJLmxvbmcJMzE1ODMzMTc3MQorCS5sb25nCTMxMDIxNjIxMTEKKwkubG9uZwkxMDY5MDUxMTI0CisJLmxvbmcJMzY1OTE3MDM1CisJLmxvbmcJMzE2MDI2NDE1MworCS5sb25nCTIzNTI2MTEwNjcKKwkubG9uZwkxMDY5MTE2MDQxCisJLmxvbmcJNDAwODk3MDE5MAorCS5sb25nCTMxNTk0NzgxODIKKwkubG9uZwkxNTk0MTM0Nzk0CisJLmxvbmcJMTA2OTE4MDkwOAorCS5sb25nCTQ2NjY5MDE3OAorCS5sb25nCTEwMTI1MjY1MDEKKwkubG9uZwkxMzQ1MDc5MzA2CisJLmxvbmcJMTA2OTI0NTcyMworCS5sb25nCTIyNjgyNzM1NjgKKwkubG9uZwkzMTYwMTY0MDkyCisJLmxvbmcJMjE2MzMwMDk3MAorCS5sb25nCTEwNjkzMTA0ODQKKwkubG9uZwkyNzUwODM0ODAwCisJLmxvbmcJMzE1ODExMzQ4MgorCS5sb25nCTM1MjUyMjcxNgorCS5sb25nCTEwNjkzNzUxOTAKKwkubG9uZwkxNzUwNDExMzcyCisJLmxvbmcJMTAxMTc5MDg0NQorCS5sb25nCTg0ODU0MTY0NworCS5sb25nCTEwNjk0Mzk4MzgKKwkubG9uZwkyMTY0MjA3NTczCisJLmxvbmcJMTAxMTY5ODM1MAorCS5sb25nCTQwNjQ3MzEyCisJLmxvbmcJMTA2OTUwNDQyNworCS5sb25nCTI5NDkxNjU0MzQKKwkubG9uZwkzMTU5MTA3MjY3CisJLmxvbmcJMjIxNjc2NjI3MAorCS5sb25nCTEwNjk1NzQzNTcKKwkubG9uZwkyMTk3OTIwNzY1CisJLmxvbmcJMzE2MTA1NTk1NAorCS5sb25nCTEwOTA5MTQzODQKKwkubG9uZwkxMDY5NjM4NzU3CisJLmxvbmcJMjMzMDQ1NDY3NAorCS5sb25nCTEwMTMzNjU5OTgKKwkubG9uZwkzODc2MDEyNDQKKwkubG9uZwkxMDY5NzAzMDIyCisJLmxvbmcJMzE4NTY4MTE2OAorCS5sb25nCTEwMTM0MzQwNzEKKwkubG9uZwkzOTkxNjQwNDg0CisJLmxvbmcJMTA2OTc2NzE0NAorCS5sb25nCTEzMTMyMTE1OTAKKwkubG9uZwkzMTYxMDg3OTU5CisJLmxvbmcJMzMyMjQ4OTUwMgorCS5sb25nCTEwNjk4MzExMTgKKwkubG9uZwkzMDEzOTc3OTk1CisJLmxvbmcJMTAxMzA1MzAxMQorCS5sb25nCTMxMjE2OTg1NzAKKwkubG9uZwkxMDY5ODk0OTM2CisJLmxvbmcJNDA2OTAxNTY2NworCS5sb25nCTEwMTMwMjMzNjIKKwkubG9uZwk0Mjg5OTY0NjYwCisJLmxvbmcJMTA2OTk1ODU5MQorCS5sb25nCTE3MzYxOTExNTYKKwkubG9uZwkzMTU4MjY2NzMxCisJLmxvbmcJMzkwMzMxMjM4NgorCS5sb25nCTEwNzAwMjIwNzcKKwkubG9uZwkxODMzNTkyNDEzCisJLmxvbmcJMzE1OTczMTQ3MQorCS5sb25nCTM4MTg0NDk4NjQKKwkubG9uZwkxMDcwMDg1Mzg3CisJLmxvbmcJODUxMDM2NDI5CisJLmxvbmcJMzE1OTczMDQ1MQorCS5sb25nCTIwOTc0ODAzMDYKKwkubG9uZwkxMDcwMTQ4NTE1CisJLmxvbmcJMzUwNjM5MDg4NAorCS5sb25nCTMxNjA0NjIzMDIKKwkubG9uZwkxNjExNjk0NTAyCisJLmxvbmcJMTA3MDIxMTQ1NAorCS5sb25nCTI3ODU3MzU1NDAKKwkubG9uZwkzMTYwNDY1MTQ0CisJLmxvbmcJMTQ2NDY5NDc5NgorCS5sb25nCTEwNzAyNzQxOTgKKwkubG9uZwk0MjI5Mjc3Mjk5CisJLmxvbmcJMzE1OTkwNzAwMAorCS5sb25nCTEyOTk2MTI3NzUKKwkubG9uZwkxMDcwMzM2NzQxCisJLmxvbmcJNDExNjY1Mzc4OAorCS5sb25nCTMxNjA0Mjc3MzkKKwkubG9uZwkxMzEwNTQ0Nzg5CisJLmxvbmcJMTA3MDM5OTA3NworCS5sb25nCTEwNjQ0MzAzMzEKKwkubG9uZwkxMDEzMjE4MjAyCisJLmxvbmcJMjI1MzE2ODAzMAorCS5sb25nCTEwNzA0NjEyMDAKKwkubG9uZwkxNDA1MDQ0NjA5CisJLmxvbmcJMzE1NzYyMzE3OQorCS5sb25nCTExNTk1NjczNzMKKwkubG9uZwkxMDcwNTIzMTA1CisJLmxvbmcJMjM1MzQ0NTUyMQorCS5sb25nCTMxNTk5OTIxNzYKKwkubG9uZwkxMzU5MzczNzUwCisJLmxvbmcJMTA3MDYwNTgxOAorCS5sb25nCTE3NDgxNzEzMzYKKwkubG9uZwkzMTYxODc5MjYzCisJLmxvbmcJOTA4MzQxNzA2CisJLmxvbmcJMTA3MDY2NzAzNAorCS5sb25nCTMzNzI3MTA4MTUKKwkubG9uZwkzMTYxNzc1MjQ1CisJLmxvbmcJMTc0MzAyNzM1MAorCS5sb25nCTEwNzA3Mjc3NjUKKwkubG9uZwk2ODcwODk5MzQKKwkubG9uZwkzMTYwNTA3MTcxCisJLmxvbmcJMjA1NTM1NTY0NgorCS5sb25nCTEwNzA3ODc5OTIKKwkubG9uZwkyMzkyODU1MjQyCisJLmxvbmcJMTAxMzY4MjQ2OQorCS5sb25nCTY5MDQyNjE2NAorCS5sb25nCTEwNzA4NDc2OTcKKwkubG9uZwkxMTAzOTI2NjY2CisJLmxvbmcJMTAxNDA1MjgxMAorCS5sb25nCTE0ODMyNDc4NDcKKwkubG9uZwkxMDcwOTA2ODYyCisJLmxvbmcJMjA4MjY0NTg0NworCS5sb25nCTMxNjEzNDU0NzkKKwkubG9uZwkzOTIwNDAyNzAKKwkubG9uZwkxMDcwOTY1NDcyCisJLmxvbmcJMjQwNzcyMDAyMworCS5sb25nCTEwMTQwNTM3NTQKKwkubG9uZwkyNjczODQ2MDE0CisJLmxvbmcJMTA3MTAyMzUxMQorCS5sb25nCTEyOTM2MDU1MzIKKwkubG9uZwkzMTU4NDY0Mzg1CisJLmxvbmcJMTM4NDIxNTgxMAorCS5sb25nCTEwNzEwODA5NjcKKwkubG9uZwkyNDQ2MDk1ODcyCisJLmxvbmcJMzE1OTIxNjQwNworCS5sb25nCTMxMDE2NjA2MzEKKwkubG9uZwkxMDcxMTM3ODI2CisJLmxvbmcJNjk4MDQwNzU4CisJLmxvbmcJMTAxNDg1NTMyOAorCS5sb25nCTIwOTQwNTcwNTgKKwkubG9uZwkxMDcxMTk0MDc4CisJLmxvbmcJMjI4MjA0ODMzOQorCS5sb25nCTEwMTQwNDAzODUKKwkubG9uZwkxNzEyNzUwNTk0CisJLmxvbmcJMTA3MTI0OTcxMgorCS5sb25nCTEyMDQzNzIzNzgKKwkubG9uZwkzMTYyMjc2NDY0CisJLmxvbmcJMTQxMTUxNTc4NworCS5sb25nCTEwNzEzMDQ3MTkKKwkubG9uZwk5NDkwODA4MDgKKwkubG9uZwkxMDE1MDA2NDAzCisJLmxvbmcJOTMxNTM4MDg1CisJLmxvbmcJMTA3MTM1OTA5MQorCS5sb25nCTMwMjcxMjcwMzkKKwkubG9uZwkxMDE0MzA3MjMzCisJLmxvbmcJMTc5MTM5MDY1CisJLmxvbmcJMTA3MTQxMjgyMQorCS5sb25nCTQyODU1NDc0OTIKKwkubG9uZwkzMTYxOTM0NzMxCisJLmxvbmcJMzM4NzcyMTI1OQorCS5sb25nCTEwNzE0NjU5MDIKKwkubG9uZwkzNzMyMjU3NzMKKwkubG9uZwkxMDEzNDg2NjI1CisJLmxvbmcJMjEzMjIzNjg1MgorCS5sb25nCTEwNzE1NDQyOTkKKwkubG9uZwkzMjUwNTMzNDI5CisJLmxvbmcJMTAxNDAzMTY3NworCS5sb25nCTE5NDIwNzAyODQKKwkubG9uZwkxMDcxNjQ1NTk2CisJLmxvbmcJMTIzNzk2NDE3OQorCS5sb25nCTMxNjMyMzkxMTMKKwkubG9uZwkxNTMyNzA3ODAyCisJLmxvbmcJMTA3MTY5NTM4MAorCS5sb25nCTMzMDY0NTU4MworCS5sb25nCTEwMTI0OTU2MTAKKwkubG9uZwkyMjk0MTg0OTc5CisJLmxvbmcJMTA3MTc0MzgzNAorCS5sb25nCTM5NTk0NzI4OTcKKwkubG9uZwkxMDE1ODMzMTE2CisJLmxvbmcJMzgwNTA2MDcxNAorCS5sb25nCTEwNzE3OTA5NjEKKwkubG9uZwkyNjcxMjU2MTQyCisJLmxvbmcJMTAxMzcyNzc3MgorCS5sb25nCTIyMTUwMzc4OTgKKwkubG9uZwkxMDcxODM2NzcwCisJLmxvbmcJMjY4MzM1OTExNworCS5sb25nCTEwMTU4MzE5MDIKKwkubG9uZwk0ODM2NjE1OTQKKwkubG9uZwkxMDcxODgxMjczCisJLmxvbmcJODM2Mjg4MzI2CisJLmxvbmcJMzE2MjY0ODY0MworCS5sb25nCTE1MzQ2Nzk4OTQKKwkubG9uZwkxMDcxOTI0NDg2CisJLmxvbmcJMzczMjU4Njk2CisJLmxvbmcJMzE2MjQ3MDA5NgorCS5sb25nCTE1Mzg3MTQ2MjgKKwkubG9uZwkxMDcxOTY2NDMwCisJLmxvbmcJMzE5OTQzMzA2OAorCS5sb25nCTEwMTUzMjU1MDEKKwkubG9uZwk1Mjc2NDI1NTUKKwkubG9uZwkxMDcyMDA3MTI4CisJLmxvbmcJMzYzNjgzMjU5MgorCS5sb25nCTMxNjE4NDMxNDUKKwkubG9uZwkyOTEzMzkxNTAKKwkubG9uZwkxMDcyMDQ2NjA1CisJLmxvbmcJODkwMTY5NTM3CisJLmxvbmcJMzE2MDU4NjExNworCS5sb25nCTI0NTAyMTAyMDEKKwkubG9uZwkxMDcyMDg0ODg4CisJLmxvbmcJMTYzNjM1MzI5NAorCS5sb25nCTMxNjMxOTM0MDAKKwkubG9uZwkyNDExMzY3OTUxCisJLmxvbmcJMTA3MjEyMjAwNworCS5sb25nCTM3NDg5OTg3MworCS5sb25nCTEwMTEzMzE3NTAKKwkubG9uZwk2ODE1NDk5NzEKKwkubG9uZwkxMDcyMTU3OTkyCisJLmxvbmcJNTA2NDExNjg5CisJLmxvbmcJMTAxNTM3Mzk1NAorCS5sb25nCTE0NjY3NDU1NDEKKwkubG9uZwkxMDcyMTkyODczCisJLmxvbmcJMjE0Mzg2MDkzMQorCS5sb25nCTEwMTMzNjQzMzQKKwkubG9uZwkyODQ1NjIyMzY2CisJLmxvbmcJMTA3MjIyNjY4MgorCS5sb25nCTI4NjkxNzgyMDkKKwkubG9uZwkzMTYyNDIzNjgyCisJLmxvbmcJMjgzODg3MTQzOAorCS5sb25nCTEwNzIyNzU0NTYKKwkubG9uZwkzNzQyMjIzNTk5CisJLmxvbmcJMTAxNDMzODU3NworCS5sb25nCTQyMDAyNzUyNzQKKwkubG9uZwkxMDcyMzM3MDM0CisJLmxvbmcJMTU2NjUzOTkxNQorCS5sb25nCTMxNjE4Mzk1NTAKKwkubG9uZwkzMDM0NzMzNTMwCisJLmxvbmcJMTA3MjM5NDg5NworCS5sb25nCTY1MjYyMTQwOAorCS5sb25nCTMxNjIyNjE5NjQKKwkubG9uZwkzMjA3NDEyOTkzCisJLmxvbmcJMTA3MjQ0OTI5MAorCS5sb25nCTMyMDYxMjQ2NjUKKwkubG9uZwkxMDE0NDA4NzMzCisJLmxvbmcJNjI0NDYxNDc4CisJLmxvbmcJMTA3MjUwMDQ1MAorCS5sb25nCTkzMjQzNzQ4NQorCS5sb25nCTEwMTUyMDQzNDMKKwkubG9uZwk3Njc2NjU5MDgKKwkubG9uZwkxMDcyNTQ4NjAwCisJLmxvbmcJMTAzNzkxMTk1MgorCS5sb25nCTMxNjM1Mjc2MjcKKwkubG9uZwkxMTEwNzczNjM5CisJLmxvbmcJMTA3MjU5Mzk1MgorCS5sb25nCTIzNzE1MTc5MTIKKwkubG9uZwkzMTYwNDY1NzQxCisJLmxvbmcJMTk0MDgyODUzMAorCS5sb25nCTEwNzI2MzY3MDQKKwkubG9uZwkyNzMxNDA4NDI4CisJLmxvbmcJMzE2Mjg5NTc5NQorCS5sb25nCTE5MTEzMjkzODgKKwkubG9uZwkxMDcyNjc3MDQxCisJLmxvbmcJMTc3MzA4OTYxNQorCS5sb25nCTMxNTk1NjkyNjcKKwkubG9uZwkxNzY0NzE1Nzg4CisJLmxvbmcJMTA3MjcwNDE5MQorCS5sb25nCTY5MTM0Njk0OQorCS5sb25nCTMxNjQwNjk5NDYKKwkubG9uZwkzMzMyOTc5MjMzCisJLmxvbmcJMTA3MjcyMjE5NQorCS5sb25nCTM1NTA3MzM5ODMKKwkubG9uZwkxMDE0NzcwNjI4CisJLmxvbmcJMTMyMTg3MDI1NAorCS5sb25nCTEwNzI3MzkyMzEKKwkubG9uZwkxNDE1MzE1ODIwCisJLmxvbmcJMTAxNjIyNDA1MgorCS5sb25nCTM2NTc0MjkwMzAKKwkubG9uZwkxMDcyNzU1MzY1CisJLmxvbmcJMzkxMDUzOTAzMworCS5sb25nCTEwMTU5NjY0MDIKKwkubG9uZwk0MTk3NjI0NTU3CisJLmxvbmcJMTA3Mjc3MDY2MQorCS5sb25nCTIzMzMzOTkyNTQKKwkubG9uZwkzMTY0NTQ2NDgwCisJLmxvbmcJMTUxMjA1OTQ5MworCS5sb25nCTEwNzI3ODUxNzcKKwkubG9uZwkyNzAxNTEwMzE4CisJLmxvbmcJMTAxNjE3ODA5MgorCS5sb25nCTQ1MzM3OTAzNworCS5sb25nCTEwNzI3OTg5NjUKKwkubG9uZwk0MDQ2MzQ0MjUzCisJLmxvbmcJMzE2MjgxNDM2NAorCS5sb25nCTE5NDIzNDUxNjIKKwkubG9uZwkxMDcyODE4Mzg4CisJLmxvbmcJNjIxMTM0MTQ3CisJLmxvbmcJMTAxNjMzNTE5NQorCS5sb25nCTQyMTAxNzYyNzMKKwkubG9uZwkxMDcyODQyMTY0CisJLmxvbmcJMjcwMTAxMzM4NworCS5sb25nCTMxNjQzMjY2MTkKKwkubG9uZwk0MTg1NjQ0MDEwCisJLmxvbmcJMTA3Mjg2Mzc5NQorCS5sb25nCTQxNjM2OTkzNDEKKwkubG9uZwkxMDE2MjAzMTEyCisJLmxvbmcJNjc5Njg4Nzg4CisJLmxvbmcJMTA3Mjg4MzU0MworCS5sb25nCTQxNDcyNzY3NjIKKwkubG9uZwkxMDE0MDY2NzUwCisJLmxvbmcJMjk0MzI4NjUKKwkubG9uZwkxMDcyOTAxNjMwCisJLmxvbmcJOTcwNDE1Nzk3CisJLmxvbmcJMTAxNjkwMjA2MworCS5sb25nCTQwNzA3MjEwOTIKKwkubG9uZwkxMDcyOTE4MjQ3CisJLmxvbmcJMjUzOTAwNDQxMQorCS5sb25nCTMxNjM3MzYwOTYKKwkubG9uZwkyMjUyNDY4ODQzCisJLmxvbmcJMTA3MjkzMzU2MQorCS5sb25nCTM0MjQwODI4ODcKKwkubG9uZwkzMTYzNDA3MTc3CisJLmxvbmcJMjkyOTcyNDgyNQorCS5sb25nCTEwNzI5NDc3MTIKKwkubG9uZwkzNjYxNDgyMjM1CisJLmxvbmcJMzE2Mzg0Njk4OQorCS5sb25nCTEzNzc1MTMzNjgKKwkubG9uZwkxMDcyOTYwODI0CisJLmxvbmcJMzk4NzkyNjY4MAorCS5sb25nCTEwMTM2NDc5MDgKKwkubG9uZwkxMDMxNjMyOTA4CisJLmxvbmcJMTA3Mjk3MzAwMworCS5sb25nCTM2NzIyMTcxNTEKKwkubG9uZwkxMDE2NjE0NjE5CisJLmxvbmcJMjUxNjUwODEzMAorCS5sb25nCTEwNzI5ODQzNDIKKwkubG9uZwk1NDU4NTUwMjAKKwkubG9uZwkzMTYyNzI4OTMwCisJLmxvbmcJMzc5MjQ1MjE3OAorCS5sb25nCTEwNzI5OTQ5MjMKKwkubG9uZwkzNDIwMTE5NDY3CisJLmxvbmcJMTAxNjQ3MTQzMAorCS5sb25nCTMxNDc3OTE0NTkKKwkubG9uZwkxMDczMDA0ODE4CisJLmxvbmcJMTM0MjIwNDk3OQorCS5sb25nCTEwMTM5MzcyNTQKKwkubG9uZwk5OTkxODk3NTIKKwkubG9uZwkxMDczMDE0MDkwCisJLmxvbmcJMTAwNjMzNTQ3MgorCS5sb25nCTMxNjI4NTA5MTkKKwkubG9uZwk3MTEwMTEwMTEKKwkubG9uZwkxMDczMDIyNzk0CisJLmxvbmcJNDYzMzQ4OAorCS5sb25nCTMxNjI5NjY4OTUKKwkubG9uZwkxNTY0MDM2MworCS5sb25nCTEwNzMwMzA5ODAKKwkubG9uZwkxNjg2Mzg5NTYwCisJLmxvbmcJMzE2NDM3NjIyNgorCS5sb25nCTEyMTg0NjM1ODkKKwkubG9uZwkxMDczMDQyMzgyCisJLmxvbmcJMTUyNjgzNzExMAorCS5sb25nCTMxNjM1MzM5ODUKKwkubG9uZwkyNTM4NDcwNTU1CisJLmxvbmcJMTA3MzA1NjE0NAorCS5sb25nCTIyNzMzMDQ0MDYKKwkubG9uZwkzMTYzNzg0OTk2CisJLmxvbmcJMTIyOTcyMDk0NworCS5sb25nCTEwNzMwNjg0ODkKKwkubG9uZwkyOTcxNjI4MjA2CisJLmxvbmcJMzE2MjM1NjU0MAorCS5sb25nCTMxMTU0MjcwMTYKKwkubG9uZwkxMDczMDc5NjIxCisJLmxvbmcJNDIxNTEzMjk1NworCS5sb25nCTMxNjQyODI3NjIKKwkubG9uZwk0MDMwNjEyNTU3CisJLmxvbmcJMTA3MzA4OTcwOQorCS5sb25nCTE5MTMyNTE2OTEKKwkubG9uZwkzMTYzNjcxMjkyCisJLmxvbmcJMjcyODUyMTI1NworCS5sb25nCTEwNzMwOTg4OTIKKwkubG9uZwkyODYxMDg5NTAwCisJLmxvbmcJMTAxNTQ1NDQ1OQorCS5sb25nCTExMTg2OTYyODMKKwkubG9uZwkxMDczMTA3Mjg1CisJLmxvbmcJMTYyODk0ODA1MworCS5sb25nCTEwMTYxNzk2NTgKKwkubG9uZwkyNjgyNzExMjU1CisJLmxvbmcJMTA3MzExNDk4NAorCS5sb25nCTI5MDYzMDYyNjYKKwkubG9uZwkxMDE0MTQyNjQzCisJLmxvbmcJMjA3Mzg5ODA4MQorCS5sb25nCTEwNzMxMjIwNzIKKwkubG9uZwkxMzIyNzQwNDU0CisJLmxvbmcJMzE2NDQ5NzIxNworCS5sb25nCTE0MDM3MDAyOTcKKwkubG9uZwkxMDczMTI4NjE4CisJLmxvbmcJNDE2MTM3ODk1CisJLmxvbmcJMzE2Mjc4MTQ2NgorCS5sb25nCTI1MDI2ODU2MTcKKwkubG9uZwkxMDczMTM0NjgxCisJLmxvbmcJMzI0MjAwODczMgorCS5sb25nCTEwMTQ1OTM0OTUKKwkubG9uZwkxNTMxOTI2ODUxCisJLmxvbmcJMTA3MzE0MDMxMworCS5sb25nCTEzNjI3MDgwOTQKKwkubG9uZwkxMDE2NTE3NjA0CisJLmxvbmcJMzU3MjgxNDQxMQorCS5sb25nCTEwNzMxNDU1NTcKKwkubG9uZwkzNzA5NzkwNTI3CisJLmxvbmcJMTAxMjY0Njg3NAorCS5sb25nCTE2OTU1MzYxMTEKKwkubG9uZwkxMDczMTUwNDUzCisJLmxvbmcJMzk4MDM0NjM0MAorCS5sb25nCTEwMTY3MDUxMzYKKwkubG9uZwkyMzYzMDU3MjAzCisJLmxvbmcJMTA3MzE1NTAzMworCS5sb25nCTI1NTExOTQ3OTIKKwkubG9uZwkxMDEyNTY5Njk1CisJLmxvbmcJMjg3MzM2NTY4MgorCS5sb25nCTEwNzMxNTkzMjcKKwkubG9uZwkzMTgxMTU0NzQ4CisJLmxvbmcJMTAxNzA0MTQ1MAorCS5sb25nCTEwNTMzODQ2OTEKKwkubG9uZwkxMDczMTY1Mjg4CisJLmxvbmcJMzA3NDUzNjg3OQorCS5sb25nCTEwMTY5NjU2NjAKKwkubG9uZwkzMjcwNTQyNzEyCisJLmxvbmcJMTA3MzE3MjQ1MQorCS5sb25nCTI1MzUzMTk0MTUKKwkubG9uZwkzMTYzMDUxNzc4CisJLmxvbmcJMTM1MzYzMTQ4NAorCS5sb25nCTEwNzMxNzg4NTAKKwkubG9uZwkxMTczODMzNzU1CisJLmxvbmcJMTAxNTUzNDUzNworCS5sb25nCTM1MTEyMTg0NjAKKwkubG9uZwkxMDczMTg0NTk5CisJLmxvbmcJMTI0MzYwODEwOQorCS5sb25nCTMxNjE1OTIxMjIKKwkubG9uZwk0MTIxMjU5Mjg0CisJLmxvbmcJMTA3MzE4OTc5MworCS5sb25nCTM5ODU4NDkxMgorCS5sb25nCTMxNjM4Mjk5MjMKKwkubG9uZwkxMTkzODYyMTA2CisJLmxvbmcJMTA3MzE5NDUwOQorCS5sb25nCTE4NzM3NDU1MzkKKwkubG9uZwkzMTYzODAyODE5CisJLmxvbmcJMzg2MTk0OTc5MAorCS5sb25nCTEwNzMxOTg4MDgKKwkubG9uZwkzODQxMjYxMTQ3CisJLmxvbmcJMTAxNTU4NzI0OAorCS5sb25nCTE0ODY5MDQ1NzgKKwkubG9uZwkxMDczMjAyNzQ1CisJLmxvbmcJMTYzNDcyNjc3NgorCS5sb25nCTMxNjM4NDc4ODYKKwkubG9uZwkyODc5MTUzNzE1CisJLmxvbmcJMTA3MzIwNjM2MgorCS5sb25nCTIwMDQ1NjI0MgorCS5sb25nCTMxNjQxMzg2NTcKKwkubG9uZwkzODUzNTMyNTMKKwkubG9uZwkxMDczMjA5Njk4CisJLmxvbmcJMTE4NjM1NTUxNworCS5sb25nCTEwMTQ4ODcxNTUKKwkubG9uZwkxMTI1ODY1ODM5CisJLmxvbmcJMTA3MzIxMjc4MworCS5sb25nCTIwMzU2MTI2MgorCS5sb25nCTMxNjEyNDQ5MjcKKwkubG9uZwkxMjIxMzYxNDc1CisJLmxvbmcJMTA3MzIxNTY0NQorCS5sb25nCTMzODI0NzY1NjMKKwkubG9uZwkxMDE0OTM2MTM4CisJLmxvbmcJMjA3NzMyMzU3MworCS5sb25nCTEwNzMyMTgzMDcKKwkubG9uZwkxMDA1MTIxMDA1CisJLmxvbmcJMzE2NDQzMDc1MgorCS5sb25nCTIxNTYxMTM3MworCS5sb25nCTEwNzMyMjA3OTAKKwkubG9uZwkzNTMxOTg3NjQKKwkubG9uZwkzMTY0NDg1MTM3CisJLmxvbmcJMjM0NzQxOTI2NQorCS5sb25nCTEwNzMyMjMxMTAKKwkubG9uZwkxMTAzMTQzMzYwCisJLmxvbmcJMTAxNjU0MjEzNworCS5sb25nCTEzNzkxMTI3NjUKKwkubG9uZwkxMDczMjI1Mjg0CisJLmxvbmcJMzgxNTgzNTMzCisJLmxvbmcJMzE2Mjg3MDgzMworCS5sb25nCTM4OTExOTg0NjMKKwkubG9uZwkxMDczMjI4Mjk4CisJLmxvbmcJMTc3MTI3NTc1NAorCS5sb25nCTEwMTQ2NTQ2ODEKKwkubG9uZwkzMzk1OTE0MDUxCisJLmxvbmcJMTA3MzIzMTkxNworCS5sb25nCTIzNTA5MDA5MTQKKwkubG9uZwkzMTY0MDEzOTc4CisJLmxvbmcJMjc5OTkxOTQ3OAorCS5sb25nCTEwNzMyMzUxNDYKKwkubG9uZwkyODkzOTUwMTY0CisJLmxvbmcJMzE2MzI2MDkwMQorCS5sb25nCTExMzg2NzM0NzYKKwkubG9uZwkxMDczMjM4MDQ1CisJLmxvbmcJMjYyMjIwNDc4NQorCS5sb25nCTMxNjQxNzQzODgKKwkubG9uZwkzNDA4ODU1OTQwCisJLmxvbmcJMTA3MzI0MDY2MQorCS5sb25nCTI4MDA4ODE2NTAKKwkubG9uZwkxMDE2MDA4NjI0CisJLmxvbmcJMjA0NDg1ODczOAorCS5sb25nCTEwNzMyNDMwMzUKKwkubG9uZwk2MDQ1NDQ3ODUKKwkubG9uZwkxMDE3MDIyOTAxCisJLmxvbmcJMjU3ODc5NTE3NgorCS5sb25nCTEwNzMyNDUxOTgKKwkubG9uZwkyNTU3MzMyOTI1CisJLmxvbmcJMTAxNjEzNTE2NQorCS5sb25nCTQxOTYyODUzMTQKKwkubG9uZwkxMDczMjQ3MTc3CisJLmxvbmcJMjAzMjM2NTMwNworCS5sb25nCTEwMTYxOTQ3MzUKKwkubG9uZwkyMjQ4Nzc3NDcKKwkubG9uZwkxMDczMjQ4OTk2CisJLmxvbmcJNDk3OTI2OTE2CisJLmxvbmcJMTAxNjk0NzExMQorCS5sb25nCTMyNzEzODY0OTAKKwkubG9uZwkxMDczMjUwNjcxCisJLmxvbmcJMjY4OTk5NDg0NgorCS5sb25nCTEwMTY2MzE1MTMKKwkubG9uZwk4MTM2MzU5ODkKKwkubG9uZwkxMDczMjUyMjIxCisJLmxvbmcJNzQ3MDM1Mjc3CisJLmxvbmcJMzE2NDUzMDEzNgorCS5sb25nCTM2OTgyOTUxOQorCS5sb25nCTEwNzMyNTM2NTgKKwkubG9uZwkyMTgyMDMzODU4CisJLmxvbmcJMzE2MzE5MDM0MAorCS5sb25nCTExODc2NzkwNTIKKwkubG9uZwkxMDczMjU0OTk0CisJLmxvbmcJNjczOTU0NDQzCisJLmxvbmcJMTAxNjE0OTgyMQorCS5sb25nCTQyMzI1ODYwOTgKKwkubG9uZwkxMDczMjU2MjM5CisJLmxvbmcJNDk3Nzc1MjAwCisJLmxvbmcJMzE2MjE3OTAxNQorCS5sb25nCTQyNjY5MDU1OAorCS5sb25nCTEwNzMyNTc0MDQKKwkubG9uZwkzMDYzMzQzMjQ3CisJLmxvbmcJMTAxNjg2NTU3OAorCS5sb25nCTE2MjQwNjU5MDIKKwkubG9uZwkxMDczMjU4NDk0CisJLmxvbmcJMTM1NDIyNDk5NgorCS5sb25nCTMxNjM1MDM3NzgKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NzQ4MzY0NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTAxNzYwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzI3NjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIwMDYyNjI5ODUKKwkubG9uZwkxMDY5MzEwODYzCisJLmxvbmcJMjM1ODQ0OTQ3MQorCS5sb25nCTMyMTczNDIxMzEKKwkubG9uZwkzODQ1NDU0MzUyCisJLmxvbmcJMTA2OTk1MjI5NworCS5sb25nCTI4Mjk2NzkxNDkKKwkubG9uZwkxMDczNzcxNTY1CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjcwNAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NfY2JydC5TIGIvbGlibS94ODYvc19jYnJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGM5OGM5OQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfY2JydC5TCkBAIC0wLDAgKzEsNzM4IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICBBc3N1bWUgeD0yXnszKmsran0gKiAxLmIxIGIyIC4uLiBiNSBiNiAuLi4gYjUyLCB3aGVyZSBqID0gMCwxLDIuCisvLyAgIExldCByPSh4KjJeey0zay1qfSAtIDEuYjEgYjIgLi4uIGI1IDEpKiByY3BbYjEgYjIgLi5iNV0sCisvLyAgIHdoZXJlIHJjcFtiMSBiMiAuLiBiNV09MS8oMS5iMSBiMiBiMyBiNCBiNSAxKSBpbiBkb3VibGUgcHJlY2lzaW9uCisvLyAgIGNicnQoMl5qICogMS4gYjEgYjIgLi4gYjUgMSkgaXMgYXBwcm94aW1hdGVkIGFzIFRbal1bYjEuLmI1XStEW2pdW2IxLi5iNV0KKy8vICAgKFQgc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIEQgc3RvcmVzIHRoZSBsb3cgb3JkZXIgYml0cykKKy8vICAgUmVzdWx0PTJeaypUKygyXmsqVCpyKSpQKzJeaypECisvLyAgIHdoZXJlIFA9cDErcDIqcisuLitwOCpyXjcKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGNicnQoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgY2JydChJTkYpID0gdGhhdCBJTkYKKy8vICBjYnJ0KCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGNicnQKK0VOVFJZKGNicnQpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgNTIoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZXNpCisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAkNTI0MDMyLCAlZWR4CisgICAgICAgIG1vdnNkICAgICA2NCglZXNpKSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDgwKCVlc2kpLCAleG1tMworICAgICAgICBwc3JscSAgICAgJDQ0LCAleG1tNworICAgICAgICBwZXh0cncgICAgJDAsICV4bW03LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVheAorICAgICAgICBtb3ZzZCAgICAgOTYoJWVzaSksICV4bW0xCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzaSksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAxNiglZXNwKQorICAgICAgICBhbmRsICAgICAgJDI0OCwgJWVjeAorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlY3gsJWVzaSksICV4bW00CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgY21wbCAgICAgICQ1MjQwMzIsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIHNocmwgICAgICAkOCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDgsICVlYngKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgb3JwZCAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgKCVlc2kpLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDU0NjIsICVlYXgKKyAgICAgICAgbW92YXBkICAgIDE2KCVlc2kpLCAleG1tNgorICAgICAgICBtdWxsICAgICAgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDIwNDcsICVlYngKKyAgICAgICAgc2hybCAgICAgICQxNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIwNDgsICVlZHgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlYngKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlYngKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlYngKKyAgICAgICAgc2hsbCAgICAgICQ4LCAlZWJ4CisgICAgICAgIGFkZGwgICAgICAkNjgyLCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tNworICAgICAgICBhZGRsICAgICAgJWVieCwgJWVjeAorICAgICAgICBwc2xscSAgICAgJDUyLCAleG1tNworLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdmFwZCAgICAzMiglZXNpKSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDQ4KCVlc2kpLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgIDM4NCglZWN4LCVlc2kpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHNkICAgICAxMTUyKCVlY3gsJWVzaSksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYngKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtdWxzZCAgICAgMTk4NCglZXNpKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDUyNDAzMiwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDQ0LCAleG1tNworICAgICAgICBwZXh0cncgICAgJDAsICV4bW03LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0OCwgJWVjeAorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlY3gsJWVzaSksICV4bW00CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkOCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDgsICVlYngKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAoJWVzaSksICV4bW01CisgICAgICAgIG1vdmwgICAgICAkNTQ2MiwgJWVheAorICAgICAgICBtb3ZhcGQgICAgMTYoJWVzaSksICV4bW02CisgICAgICAgIG11bGwgICAgICAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjA0NywgJWVieAorICAgICAgICBzaHJsICAgICAgJDE0LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjA0OCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzaGxsICAgICAgJDgsICVlYngKKyAgICAgICAgYWRkbCAgICAgICQ2NjEsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW03CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVieAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgICAgIGZsZGwgICAgICAxOTUyKCVlc2kpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVieAorICAgICAgICBmbGRsICAgICAgMTk2OCglZXNpKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgIDEzMiglZXNwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgMTI4KCVlc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBmbGRsICAgICAgMTkyMCglZXNpKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBmbGRsICAgICAgMTkzNiglZXNpKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDUyKCVlc3ApLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChjYnJ0KQorIyAtLSBFbmQgIGNicnQKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGNicnRsLCBjYnJ0KTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMTU1Mzc3ODkxOQorCS5sb25nCTMyMTM4OTk0ODYKKwkubG9uZwkzNTM0OTUyNTA3CisJLmxvbmcJMzIxNTI2NjI4MAorCS5sb25nCTE2NDYzNzEzOTkKKwkubG9uZwkzMjE0NDEyMDQ1CisJLmxvbmcJNDc3MjE4NTg4CisJLmxvbmcJMzIxNjc5ODE1MQorCS5sb25nCTM1ODI1MjE2MjEKKwkubG9uZwkxMDY2NjI4MzYyCisJLmxvbmcJMTAwNzQ2MTQ2NAorCS5sb25nCTEwNjg0NzMwNTMKKwkubG9uZwk4ODk2Mjk3MTQKKwkubG9uZwkxMDY3Mzc4NDQ5CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMTA0ODU3NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxOTMyODAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAzMjE5MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTI4NjExMzYwCisJLmxvbmcJMzIyMDE0NDYzMgorCS5sb25nCTI4ODQ2Nzk1MjcKKwkubG9uZwkzMjIwMDgyOTkzCisJLmxvbmcJMTk5MTg2ODg5MQorCS5sb25nCTMyMjAwMjQ5MjgKKwkubG9uZwkyMjk4NzE0ODkxCisJLmxvbmcJMzIxOTk3MDEzNAorCS5sb25nCTU4ODM1MTY4CisJLmxvbmcJMzIxOTkxODM0MworCS5sb25nCTMwMzUxMTAyMjMKKwkubG9uZwkzMjE5ODY5MzEzCisJLmxvbmcJMTYxNzU4NTA4NgorCS5sb25nCTMyMTk4MjI4MzEKKwkubG9uZwkyNTAwODY3MDMzCisJLmxvbmcJMzIxOTc3ODcwMgorCS5sb25nCTQyNDE5NDMwMDgKKwkubG9uZwkzMjE5NzM2NzUyCisJLmxvbmcJMjU4NzMyOTcwCisJLmxvbmcJMzIxOTY5NjgyNQorCS5sb25nCTQwNDIzMjIxNgorCS5sb25nCTMyMTk2NTg3NzYKKwkubG9uZwkyMTcyMTY3MzY4CisJLmxvbmcJMzIxOTYyMjQ3NgorCS5sb25nCTE1NDQyNTc5MDQKKwkubG9uZwkzMjE5NTg3ODA4CisJLmxvbmcJMzc3NTc5NTQzCisJLmxvbmcJMzIxOTU1NDY2NAorCS5sb25nCTE2MTYzODU1NDIKKwkubG9uZwkzMjE5NTIyOTQ1CisJLmxvbmcJODEzNzgzMjc3CisJLmxvbmcJMzIxOTQ5MjU2MgorCS5sb25nCTM5NDA3NDMxODkKKwkubG9uZwkzMjE5NDYzNDMxCisJLmxvbmcJMjY4OTc3NzQ5OQorCS5sb25nCTMyMTk0MzU0NzgKKwkubG9uZwkxNzAwOTc3MTQ3CisJLmxvbmcJMzIxOTQwODYzMgorCS5sb25nCTMxNjkxMDIwODIKKwkubG9uZwkzMjE5MzgyODI4CisJLmxvbmcJMzI3MjM1NjA0CisJLmxvbmcJMzIxOTM1ODAwOAorCS5sb25nCTEyNDQzMzYzMTkKKwkubG9uZwkzMjE5MzM0MTE1CisJLmxvbmcJMTMwMDMxMTIwMAorCS5sb25nCTMyMTkzMTEwOTkKKwkubG9uZwkzMDk1NDcxOTI1CisJLmxvbmcJMzIxOTI4ODkxMgorCS5sb25nCTIxNjY0ODc5MjgKKwkubG9uZwkzMjE5MjY3NTExCisJLmxvbmcJMjkxMzEwODI1MworCS5sb25nCTMyMTkyNDY4NTQKKwkubG9uZwkyOTM2NzI5NzgKKwkubG9uZwkzMjE5MjI2OTA0CisJLmxvbmcJMjg4NzM3Mjk3CisJLmxvbmcJMzIxOTIwNzYyNAorCS5sb25nCTE4MTAyNzU0NzIKKwkubG9uZwkzMjE5MTg4OTgxCisJLmxvbmcJMTc0NTkyMTY3CisJLmxvbmcJMzIxOTE3MDk0NQorCS5sb25nCTM1MzkwNTMwNTIKKwkubG9uZwkzMjE5MTUzNDg1CisJLmxvbmcJMjE2NDM5Mjk2OAorCS5sb25nCTMyMTkxMzY1NzYKKwkubG9uZwk1NzIzNDU0OTUKKwkubG9uZwkxMDcyNjk4NjgxCisJLmxvbmcJMTk5ODIwNDQ2NworCS5sb25nCTEwNzI3MDkzODIKKwkubG9uZwkzODYxNTAxNTUzCisJLmxvbmcJMTA3MjcxOTg3MgorCS5sb25nCTIyNjgxOTI0MzQKKwkubG9uZwkxMDcyNzMwMTYyCisJLmxvbmcJMjk4MTk3OTMwOAorCS5sb25nCTEwNzI3NDAyNjAKKwkubG9uZwkyNzA4NTkxNDMKKwkubG9uZwkxMDcyNzUwMTc2CisJLmxvbmcJMjk1ODY1MTM5MgorCS5sb25nCTEwNzI3NTk5MTYKKwkubG9uZwkzMTMxMTMyNDMKKwkubG9uZwkxMDcyNzY5NDkwCisJLmxvbmcJOTE5NDQ5NDAwCisJLmxvbmcJMTA3Mjc3ODkwMworCS5sb25nCTI4MDkzMjg5MDMKKwkubG9uZwkxMDcyNzg4MTYyCisJLmxvbmcJMjIyMjk4MTU4NworCS5sb25nCTEwNzI3OTcyNzQKKwkubG9uZwkyMzUyNTMwNzgxCisJLmxvbmcJMTA3MjgwNjI0NAorCS5sb25nCTU5NDE1MjUxNworCS5sb25nCTEwNzI4MTUwNzgKKwkubG9uZwkxNTU1NzY3MTk5CisJLmxvbmcJMTA3MjgyMzc4MAorCS5sb25nCTQyODI0MjEzMTQKKwkubG9uZwkxMDcyODMyMzU1CisJLmxvbmcJMjM1NTU3ODU5NworCS5sb25nCTEwNzI4NDA4MDkKKwkubG9uZwkxMTYyNTkwNjE5CisJLmxvbmcJMTA3Mjg0OTE0NQorCS5sb25nCTc5Nzg2NDA1MQorCS5sb25nCTEwNzI4NTczNjcKKwkubG9uZwk0MzEyNzM2ODAKKwkubG9uZwkxMDcyODY1NDc5CisJLmxvbmcJMjY2OTgzMTE0OAorCS5sb25nCTEwNzI4NzM0ODQKKwkubG9uZwk3MzM0Nzc3NTIKKwkubG9uZwkxMDcyODgxMzg3CisJLmxvbmcJNDI4MDIyMDYwNAorCS5sb25nCTEwNzI4ODkxODkKKwkubG9uZwk4MDE5NjE2MzQKKwkubG9uZwkxMDcyODk2ODk2CisJLmxvbmcJMjkxNTM3MDc2MAorCS5sb25nCTEwNzI5MDQ1MDgKKwkubG9uZwkxMTU5NjEzNDgyCisJLmxvbmcJMTA3MjkxMjAzMAorCS5sb25nCTI2ODk5NDQ3OTgKKwkubG9uZwkxMDcyOTE5NDYzCisJLmxvbmcJMTI0ODY4NzgyMgorCS5sb25nCTEwNzI5MjY4MTEKKwkubG9uZwkyOTY3OTUxMDMwCisJLmxvbmcJMTA3MjkzNDA3NQorCS5sb25nCTYzMDE3MDQzMgorCS5sb25nCTEwNzI5NDEyNTkKKwkubG9uZwkzNzYwODk4MjU0CisJLmxvbmcJMTA3Mjk0ODM2MworCS5sb25nCTAKKwkubG9uZwkxMDcyOTU1MzkyCisJLmxvbmcJMjM3MDI3MzI5NAorCS5sb25nCTEwNzI5NjIzNDUKKwkubG9uZwkxMjYxNzU0ODAyCisJLmxvbmcJMTA3Mjk3MjY0MAorCS5sb25nCTU0NjMzNDA2NQorCS5sb25nCTEwNzI5ODYxMjMKKwkubG9uZwkxMDU0ODkzODMwCisJLmxvbmcJMTA3Mjk5OTM0MAorCS5sb25nCTE1NzExODc1OTcKKwkubG9uZwkxMDczMDEyMzA0CisJLmxvbmcJMTEwNzk3NTE3NQorCS5sb25nCTEwNzMwMjUwMjcKKwkubG9uZwkzNjA2OTA5Mzc3CisJLmxvbmcJMTA3MzAzNzUxOQorCS5sb25nCTExMTM2MTY3NDcKKwkubG9uZwkxMDczMDQ5NzkyCisJLmxvbmcJNDE1NDc0NDYzMgorCS5sb25nCTEwNzMwNjE4NTMKKwkubG9uZwkzMzU4OTMxNDIzCisJLmxvbmcJMTA3MzA3MzcxMworCS5sb25nCTQwNjA3MDIzNzIKKwkubG9uZwkxMDczMDg1Mzc5CisJLmxvbmcJNzQ3NTc2MTc2CisJLmxvbmcJMTA3MzA5Njg2MAorCS5sb25nCTMwMjMxMzgyNTUKKwkubG9uZwkxMDczMTA4MTYxCisJLmxvbmcJMTQxOTk4ODU0OAorCS5sb25nCTEwNzMxMTkyOTEKKwkubG9uZwkxOTE0MTg1MzA1CisJLmxvbmcJMTA3MzEzMDI1NQorCS5sb25nCTI5NDM4OTk0OAorCS5sb25nCTEwNzMxNDEwNjAKKwkubG9uZwkzNzYxODAyNTcwCisJLmxvbmcJMTA3MzE1MTcxMAorCS5sb25nCTk3ODI4MTU2NgorCS5sb25nCTEwNzMxNjIyMTMKKwkubG9uZwk4MjMxNDg4MjAKKwkubG9uZwkxMDczMTcyNTcyCisJLmxvbmcJMjQyMDk1NDQ0MQorCS5sb25nCTEwNzMxODI3OTIKKwkubG9uZwkzODE1NDQ5OTA4CisJLmxvbmcJMTA3MzE5Mjg3OAorCS5sb25nCTIwNDYwNTg1ODcKKwkubG9uZwkxMDczMjAyODM1CisJLmxvbmcJMTgwNzUyNDc1MworCS5sb25nCTEwNzMyMTI2NjYKKwkubG9uZwkyNjI4NjgxNDAxCisJLmxvbmcJMTA3MzIyMjM3NQorCS5sb25nCTMyMjU2NjczNTcKKwkubG9uZwkxMDczMjMxOTY2CisJLmxvbmcJMTU1NTMwNzQyMQorCS5sb25nCTEwNzMyNDE0NDMKKwkubG9uZwkzNDU0MDQzMDk5CisJLmxvbmcJMTA3MzI1MDgwOAorCS5sb25nCTEyMDgxMzc4OTYKKwkubG9uZwkxMDczMjYwMDY2CisJLmxvbmcJMzY1OTkxNjc3MgorCS5sb25nCTEwNzMyNjkyMTgKKwkubG9uZwkxODg2MjYxMjY0CisJLmxvbmcJMTA3MzI3ODI2OQorCS5sb25nCTM1OTM2NDc4MzkKKwkubG9uZwkxMDczMjg3MjIwCisJLmxvbmcJMzA4NjAxMjIwNQorCS5sb25nCTEwNzMyOTYwNzUKKwkubG9uZwkyNzY5Nzk2OTIyCisJLmxvbmcJMTA3MzMwNDgzNgorCS5sb25nCTg4ODcxNjA1NworCS5sb25nCTEwNzMzMTc4MDcKKwkubG9uZwkyMjAxNDY1NjIzCisJLmxvbmcJMTA3MzMzNDc5NAorCS5sb25nCTE2NDM2OTM2NQorCS5sb25nCTEwNzMzNTE0NDcKKwkubG9uZwkzNDYyNjY2NzMzCisJLmxvbmcJMTA3MzM2Nzc4MAorCS5sb25nCTI3NzM5MDU0NTcKKwkubG9uZwkxMDczMzgzODEwCisJLmxvbmcJMTM0Mjg3OTA4OAorCS5sb25nCTEwNzMzOTk1NTAKKwkubG9uZwkyNTQzOTMzOTc1CisJLmxvbmcJMTA3MzQxNTAxMgorCS5sb25nCTE2ODQ0Nzc3ODEKKwkubG9uZwkxMDczNDMwMjA5CisJLmxvbmcJMzUzMjE3ODU0MworCS5sb25nCTEwNzM0NDUxNTEKKwkubG9uZwkxMTQ3NzQ3MzAwCisJLmxvbmcJMTA3MzQ1OTg1MAorCS5sb25nCTE5MjgwMzE3OTMKKwkubG9uZwkxMDczNDc0MzE0CisJLmxvbmcJMjA3OTcxNzAxNQorCS5sb25nCTEwNzM0ODg1NTMKKwkubG9uZwk0MDE2NzY1MzE1CisJLmxvbmcJMTA3MzUwMjU3NQorCS5sb25nCTM2NzA0MzExMzkKKwkubG9uZwkxMDczNTE2Mzg5CisJLmxvbmcJMzU0OTIyNzIyNQorCS5sb25nCTEwNzM1MzAwMDIKKwkubG9uZwkxMTYzNzYwNworCS5sb25nCTEwNzM1NDM0MjIKKwkubG9uZwk1ODgyMjAxNjkKKwkubG9uZwkxMDczNTU2NjU0CisJLmxvbmcJMjYzNTQwNzUwMworCS5sb25nCTEwNzM1Njk3MDUKKwkubG9uZwkyMDQyMDI5MzE3CisJLmxvbmcJMTA3MzU4MjU4MgorCS5sb25nCTE5MjUxMjg5NjIKKwkubG9uZwkxMDczNTk1MjkwCisJLmxvbmcJNDEzNjM3NTY2NAorCS5sb25nCTEwNzM2MDc4MzQKKwkubG9uZwk3NTk5NjQ2MDAKKwkubG9uZwkxMDczNjIwMjIxCisJLmxvbmcJNDI1NzYwNjc3MQorCS5sb25nCTEwNzM2MzI0NTMKKwkubG9uZwkyOTcyNzg5MDcKKwkubG9uZwkxMDczNjQ0NTM4CisJLmxvbmcJMzY1NTA1MzA5MworCS5sb25nCTEwNzM2NTY0NzcKKwkubG9uZwkyNDQyMjUzMTcyCisJLmxvbmcJMTA3MzY2ODI3NworCS5sb25nCTExMTE4NzY3OTkKKwkubG9uZwkxMDczNjc5OTQxCisJLmxvbmcJMzMzMDk3MzEzOQorCS5sb25nCTEwNzM2OTE0NzIKKwkubG9uZwkzNDM4ODc5NDUyCisJLmxvbmcJMTA3MzcwMjg3NQorCS5sb25nCTM2NzE1NjU0NzgKKwkubG9uZwkxMDczNzE0MTUzCisJLmxvbmcJMTMxNzg0OTU0NworCS5sb25nCTEwNzM3MjUzMTAKKwkubG9uZwkxNjQyMzY0MTE1CisJLmxvbmcJMTA3MzczNjM0OAorCS5sb25nCTQwNTA5MDA0NzQKKwkubG9uZwkxMDE0NDI3MTkwCisJLmxvbmcJMTE1Nzk3Nzg2MAorCS5sb25nCTEwMTY0NDQ0NjEKKwkubG9uZwkxMzc0NTY4MTk5CisJLmxvbmcJMTAxNzI3MTM4NworCS5sb25nCTI4MDkxNjMyODgKKwkubG9uZwkxMDE2ODgyNjc2CisJLmxvbmcJMzc0MjM3NzM3NworCS5sb25nCTEwMTMxNjgxOTEKKwkubG9uZwkzMTAxNjA2NTk3CisJLmxvbmcJMTAxNzU0MTY3MgorCS5sb25nCTY1MjI0MzU4CisJLmxvbmcJMTAxNzIxNzU5NworCS5sb25nCTI2OTE1OTEyNTAKKwkubG9uZwkxMDE3MjY2NjQzCisJLmxvbmcJNDAyMDc1ODU0OQorCS5sb25nCTEwMTc2ODkzMTMKKwkubG9uZwkxMzE2MzEwOTkyCisJLmxvbmcJMTAxODAzMDc4OAorCS5sb25nCTEwMzE1Mzc4NTYKKwkubG9uZwkxMDE0MDkwODgyCisJLmxvbmcJMzI2MTM5NTIzOQorCS5sb25nCTEwMTY0MTM2NDEKKwkubG9uZwk4ODY0MjQ5OTkKKwkubG9uZwkxMDE2MzEzMzM1CisJLmxvbmcJMzExNDc3NjgzNAorCS5sb25nCTEwMTQxOTU4NzUKKwkubG9uZwkxNjgxMTIwNjIwCisJLmxvbmcJMTAxNzgyNTQxNgorCS5sb25nCTEzMjk2MDAyNzMKKwkubG9uZwkxMDE2NjI1NzQwCisJLmxvbmcJNDY1NDc0NjIzCisJLmxvbmcJMTAxNzA5NzExOQorCS5sb25nCTQyNTE2MzM5ODAKKwkubG9uZwkxMDE3MTY5MDc3CisJLmxvbmcJMTk4Njk5MDEzMworCS5sb25nCTEwMTc3MTA2NDUKKwkubG9uZwk3NTI5NTg2MTMKKwkubG9uZwkxMDE3MTU5NjQxCisJLmxvbmcJMjIxNjIxNjc5MgorCS5sb25nCTEwMTgwMjAxNjMKKwkubG9uZwk0MjgyODYwMTI5CisJLmxvbmcJMTAxNTkyNDg2MQorCS5sb25nCTE1NTc2Mjc4NTkKKwkubG9uZwkxMDE2MDM5NTM4CisJLmxvbmcJMzg4OTIxOTc1NAorCS5sb25nCTEwMTgwODYyMzcKKwkubG9uZwkzNjg0OTk2NDA4CisJLmxvbmcJMTAxNzM1MzI3NQorCS5sb25nCTcyMzUzMjEwMworCS5sb25nCTEwMTc3MTcxNDEKKwkubG9uZwkyOTUxMTQ5Njc2CisJLmxvbmcJMTAxMjUyODQ3MAorCS5sb25nCTgzMTg5MDkzNworCS5sb25nCTEwMTc4MzA1NTMKKwkubG9uZwkxMDMxMjEyNjQ1CisJLmxvbmcJMTAxNzM4NzMzMQorCS5sb25nCTI3NDE3Mzc0NTAKKwkubG9uZwkxMDE3NjA0OTc0CisJLmxvbmcJMjg2MzMxMTUzMQorCS5sb25nCTEwMDM3NzY2ODIKKwkubG9uZwk0Mjc2NzM2MDk5CisJLmxvbmcJMTAxMzE1MzA4OAorCS5sb25nCTQxMTE3NzgzODIKKwkubG9uZwkxMDE1NjczNjg2CisJLmxvbmcJMTcyODA2NTc2OQorCS5sb25nCTEwMTY0MTM5ODYKKwkubG9uZwkyNzA4NzE4MDMxCisJLmxvbmcJMTAxODA3ODgzMworCS5sb25nCTEwNjkzMzUwMDUKKwkubG9uZwkxMDE1MjkxMjI0CisJLmxvbmcJNzAwMDM3MTQ0CisJLmxvbmcJMTAxNjQ4MjAzMgorCS5sb25nCTI5MDQ1NjY0NTIKKwkubG9uZwkxMDE3MjI2ODYxCisJLmxvbmcJNDA3NDE1NjY0OQorCS5sb25nCTEwMTc2MjI2NTEKKwkubG9uZwkyNTAxOTU2NQorCS5sb25nCTEwMTUyNDUzNjYKKwkubG9uZwkzNjAxOTUyNjA4CisJLmxvbmcJMTAxNTc3MTc1NQorCS5sb25nCTMyNjcxMjkzNzMKKwkubG9uZwkxMDE3OTA0NjY0CisJLmxvbmcJNTAzMjAzMTAzCisJLmxvbmcJMTAxNDkyMTYyOQorCS5sb25nCTIxMjIwMTE3MzAKKwkubG9uZwkxMDE4MDI3ODY2CisJLmxvbmcJMzkyNzI5NTQ2MQorCS5sb25nCTEwMTQxODk0NTYKKwkubG9uZwkyNzkwNjI1MTQ3CisJLmxvbmcJMTAxNjAyNDI1MQorCS5sb25nCTEzMzA0NjAxODYKKwkubG9uZwkxMDE2OTQwMzQ2CisJLmxvbmcJNDAzMzU2ODQ2MworCS5sb25nCTEwMTU1MzgzOTAKKwkubG9uZwkzNjk1ODE4MjI3CisJLmxvbmcJMTAxNzUwOTYyMQorCS5sb25nCTI1NzU3MzM2MQorCS5sb25nCTEwMTcyMDg4NjgKKwkubG9uZwkzMjI3Njk3ODUyCisJLmxvbmcJMTAxNzMzNzk2NAorCS5sb25nCTIzNDExODU0OAorCS5sb25nCTEwMTcxNjk1NzcKKwkubG9uZwk0MDA5MDI1ODAzCisJLmxvbmcJMTAxNzI3ODUyNAorCS5sb25nCTE5NDgzNDMzOTQKKwkubG9uZwkxMDE3NzQ5MzEwCisJLmxvbmcJNjc4Mzk4MTYyCisJLmxvbmcJMTAxODE0NDIzOQorCS5sb25nCTMwODM4NjQ4NjMKKwkubG9uZwkxMDE2NjY5MDg2CisJLmxvbmcJMjQxNTQ1MzQ1MgorCS5sb25nCTEwMTc4OTAzNzAKKwkubG9uZwkxNzU0NjczNDQKKwkubG9uZwkxMDE3MzMwMDMzCisJLmxvbmcJMzE5NzM1OTU4MAorCS5sb25nCTEwMTAzMzk5MjgKKwkubG9uZwkyMDcxMjc2OTUxCisJLmxvbmcJMTAxNTk0MTM1OAorCS5sb25nCTI2ODM3MjU0MworCS5sb25nCTEwMTY3Mzc3NzMKKwkubG9uZwk5MzgxMzI5NTkKKwkubG9uZwkxMDE3Mzg5MTA4CisJLmxvbmcJMTgxNjc1MDU1OQorCS5sb25nCTEwMTczMzc0NDgKKwkubG9uZwk0MTE5MjAzNzQ5CisJLmxvbmcJMTAxNzE1MjE3NAorCS5sb25nCTI1Nzg2NTM4NzgKKwkubG9uZwkxMDEzMTA4NDk3CisJLmxvbmcJMjQ3MDMzMTA5NgorCS5sb25nCTEwMTQ2Nzg2MDYKKwkubG9uZwkxMjM4NTU3MzUKKwkubG9uZwkxMDE2NTUzMzIwCisJLmxvbmcJMTI2NTY1MDg4OQorCS5sb25nCTEwMTQ3ODI2ODcKKwkubG9uZwkzNDE0Mzk4MTcyCisJLmxvbmcJMTAxNzE4MjYzOAorCS5sb25nCTEwNDA3NzMzNjkKKwkubG9uZwkxMDE2MTU4NDAxCisJLmxvbmcJMzQ4MzYyODg4NgorCS5sb25nCTEwMTY4ODY1NTAKKwkubG9uZwk0MTQwNDk5NDA1CisJLmxvbmcJMTAxNjE5MTQyNQorCS5sb25nCTM4OTM0Nzc4NTAKKwkubG9uZwkxMDE2OTY0NDk1CisJLmxvbmcJMzkzNTMxOTc3MQorCS5sb25nCTEwMDk2MzQ3MTcKKwkubG9uZwkyOTc4OTgyNjYwCisJLmxvbmcJMTAxNTAyNzExMgorCS5sb25nCTI0NTI3MDk5MjMKKwkubG9uZwkxMDE3OTkwMjI5CisJLmxvbmcJMzE5MDM2NTcxMgorCS5sb25nCTEwMTU4MzUxNDkKKwkubG9uZwk0MjM3NTg4MTM5CisJLmxvbmcJMTAxNTgzMjkyNQorCS5sb25nCTI2MTA2NzgzODkKKwkubG9uZwkxMDE3OTYyNzExCisJLmxvbmcJMjEyNzMxNjc3NAorCS5sb25nCTEwMTc0MDU3NzAKKwkubG9uZwk4MjQyNjc1MDIKKwkubG9uZwkxMDE3OTU5NDYzCisJLmxvbmcJMjE2NTkyNDA0MgorCS5sb25nCTEwMTc5MTIyMjUKKwkubG9uZwkyNzc0MDA3MDc2CisJLmxvbmcJMTAxMzI1NzQxOAorCS5sb25nCTQxMjM5MTYzMjYKKwkubG9uZwkxMDE3NTgyMjg0CisJLmxvbmcJMTk3NjQxNzk1OAorCS5sb25nCTEwMTY5NTk5MDkKKwkubG9uZwk0MDkyODA2NDEyCisJLmxvbmcJMTAxNzcxMTI3OQorCS5sb25nCTExOTI1MTgxNworCS5sb25nCTEwMTUzNjM2MzEKKwkubG9uZwkzNDc1NDE4NzY4CisJLmxvbmcJMTAxNzY3NTQxNQorCS5sb25nCTE5NzI1ODA1MDMKKwkubG9uZwkxMDE1NDcwNjg0CisJLmxvbmcJODE1NTQxMDE3CisJLmxvbmcJMTAxNzUxNzk2OQorCS5sb25nCTI0Mjk5MTc0NTEKKwkubG9uZwkxMDE3Mzk3Nzc2CisJLmxvbmcJNDA2Mjg4ODQ4MgorCS5sb25nCTEwMTY3NDk4OTcKKwkubG9uZwk2ODI4NDE1MworCS5sb25nCTEwMTc5MjU2NzgKKwkubG9uZwkyMjA3Nzc5MjQ2CisJLmxvbmcJMTAxNjMyMDI5OAorCS5sb25nCTExODM0NjY1MjAKKwkubG9uZwkxMDE3NDA4NjU3CisJLmxvbmcJMTQzMzI2NDI3CisJLmxvbmcJMTAxNzA2MDQwMworCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEzODc1MzUzNgorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjAwMAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NfY29zLlMgYi9saWJtL3g4Ni9zX2Nvcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZkNWVmNWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zX2Nvcy5TCkBAIC0wLDAgKzEsODkyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgIDEuIFJBTkdFIFJFRFVDVElPTgorLy8KKy8vICAgICBXZSBwZXJmb3JtIGFuIGluaXRpYWwgcmFuZ2UgcmVkdWN0aW9uIGZyb20gWCB0byByIHdpdGgKKy8vCisvLyAgICAgICAgICBYID1+PSBOICogcGkvMzIgKyByCisvLworLy8gICAgIHNvIHRoYXQgfHJ8IDw9IHBpLzY0ICsgZXBzaWxvbi4gV2UgcmVzdHJpY3QgaW5wdXRzIHRvIHRob3NlCisvLyAgICAgd2hlcmUgfE58IDw9IDkzMjU2MC4gQmV5b25kIHRoaXMsIHRoZSByYW5nZSByZWR1Y3Rpb24gaXMKKy8vICAgICBpbnN1ZmZpY2llbnRseSBhY2N1cmF0ZS4gRm9yIGV4dHJlbWVseSBzbWFsbCBpbnB1dHMsIAorLy8gICAgIGRlbm9ybWFsaXphdGlvbiBjYW4gb2NjdXIgaW50ZXJuYWxseSwgaW1wYWN0aW5nIHBlcmZvcm1hbmNlLgorLy8gICAgIFRoaXMgbWVhbnMgdGhhdCB0aGUgbWFpbiBwYXRoIGlzIGFjdHVhbGx5IG9ubHkgdGFrZW4gZm9yCisvLyAgICAgMl4tMjUyIDw9IHxYfCA8IDkwMTEyLgorLy8KKy8vICAgICBUbyBhdm9pZCBicmFuY2hlcywgd2UgcGVyZm9ybSB0aGUgcmFuZ2UgcmVkdWN0aW9uIHRvIGZ1bGwKKy8vICAgICBhY2N1cmFjeSBlYWNoIHRpbWUuCisvLworLy8gICAgICAgICAgWCAtIE4gKiAoUF8xICsgUF8yICsgUF8zKQorLy8KKy8vICAgICB3aGVyZSBQXzEgYW5kIFBfMiBhcmUgMzItYml0IG51bWJlcnMgKHNvIG11bHRpcGxpY2F0aW9uIGJ5IE4KKy8vICAgICBpcyBleGFjdCkgYW5kIFBfMyBpcyBhIDUzLWJpdCBudW1iZXIuIFRvZ2V0aGVyLCB0aGVzZQorLy8gICAgIGFwcHJveGltYXRlIHBpIHdlbGwgZW5vdWdoIGZvciBhbGwgY2FzZXMgaW4gdGhlIHJlc3RyaWN0ZWQKKy8vICAgICByYW5nZS4KKy8vCisvLyAgICAgVGhlIG1haW4gcmVkdWN0aW9uIHNlcXVlbmNlIGlzOgorLy8KKy8vICAgICAgICAgICAgIHkgPSAzMi9waSAqIHgKKy8vICAgICAgICAgICAgIE4gPSBpbnRlZ2VyKHkpCisvLyAgICAgKGNvbXB1dGVkIGJ5IGFkZGluZyBhbmQgc3VidHJhY3Rpbmcgb2ZmIFNISUZURVIpCisvLworLy8gICAgICAgICAgICAgbV8xID0gTiAqIFBfMQorLy8gICAgICAgICAgICAgbV8yID0gTiAqIFBfMgorLy8gICAgICAgICAgICAgcl8xID0geCAtIG1fMQorLy8gICAgICAgICAgICAgciA9IHJfMSAtIG1fMgorLy8gICAgICh0aGlzIHIgY2FuIGJlIHVzZWQgZm9yIG1vc3Qgb2YgdGhlIGNhbGN1bGF0aW9uKQorLy8KKy8vICAgICAgICAgICAgIGNfMSA9IHJfMSAtIHIKKy8vICAgICAgICAgICAgIG1fMyA9IE4gKiBQXzMKKy8vICAgICAgICAgICAgIGNfMiA9IGNfMSAtIG1fMgorLy8gICAgICAgICAgICAgYyA9IGNfMiAtIG1fMworLy8KKy8vICAgICAyLiBNQUlOIEFMR09SSVRITQorLy8KKy8vICAgICBUaGUgYWxnb3JpdGhtIHVzZXMgYSB0YWJsZSBsb29rdXAgYmFzZWQgb24gQiA9IE0gKiBwaSAvIDMyCisvLyAgICAgd2hlcmUgTSA9IE4gbW9kIDY0LiBUaGUgc3RvcmVkIHZhbHVlcyBhcmU6CisvLyAgICAgICBzaWdtYSAgICAgICAgICAgICBjbG9zZXN0IHBvd2VyIG9mIDIgdG8gY29zKEIpCisvLyAgICAgICBDX2hsICAgICAgICAgICAgICA1My1iaXQgY29zKEIpIC0gc2lnbWEKKy8vICAgICAgIFNfaGkgKyBTX2xvICAgICAgIDIgKiA1My1iaXQgc2luKEIpCisvLworLy8gICAgIFRoZSBjb21wdXRhdGlvbiBpcyBvcmdhbml6ZWQgYXMgZm9sbG93czoKKy8vCisvLyAgICAgICAgICBzaW4oQiArIHIgKyBjKSA9IFtzaW4oQikgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgciAqIChjb3MoQikgLSBzaWdtYSkgKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBzaW4oQikgKiBbY29zKHIgKyBjKSAtIDFdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgY29zKEIpICogW3NpbihyICsgYykgLSByXQorLy8KKy8vICAgICB3aGljaCBpcyBhcHByb3hpbWF0ZWx5OgorLy8KKy8vICAgICAgICAgIFtTX2hpICsgc2lnbWEgKiByXSArCisvLyAgICAgICAgICBDX2hsICogciArCisvLyAgICAgICAgICBTX2xvICsgU19oaSAqIFsoY29zKHIpIC0gMSkgLSByICogY10gKworLy8gICAgICAgICAgKENfaGwgKyBzaWdtYSkgKiBbKHNpbihyKSAtIHIpICsgY10KKy8vCisvLyAgICAgYW5kIHRoaXMgaXMgd2hhdCBpcyBhY3R1YWxseSBjb21wdXRlZC4gV2Ugc2VwYXJhdGUgdGhpcyBzdW0KKy8vICAgICBpbnRvIGZvdXIgcGFydHM6CisvLworLy8gICAgICAgICAgaGkgKyBtZWQgKyBwb2xzICsgY29ycgorLy8KKy8vICAgICB3aGVyZQorLy8KKy8vICAgICAgICAgIGhpICAgICAgID0gU19oaSArIHNpZ21hIHIKKy8vICAgICAgICAgIG1lZCAgICAgID0gQ19obCAqIHIKKy8vICAgICAgICAgIHBvbHMgICAgID0gU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICogKHNpbihyKSAtIHIpCisvLyAgICAgICAgICBjb3JyICAgICA9IFNfbG8gKyBjICogKChDX2hsICsgc2lnbWEpIC0gU19oaSAqIHIpCisvLworLy8gICAgIDMuIFBPTFlOT01JQUwKKy8vCisvLyAgICAgVGhlIHBvbHlub21pYWwgU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICoKKy8vICAgICAoc2luKHIpIC0gcikgY2FuIGJlIHJlYXJyYW5nZWQgZnJlZWx5LCBzaW5jZSBpdCBpcyBxdWl0ZQorLy8gICAgIHNtYWxsLCBzbyB3ZSBleHBsb2l0IHBhcmFsbGVsaXNtIHRvIHRoZSBmdWxsZXN0LgorLy8KKy8vICAgICAgICAgIHBzYzQgICAgICAgPSAgIFNDXzQgKiByXzEKKy8vICAgICAgICAgIG1zYzQgICAgICAgPSAgIHBzYzQgKiByCisvLyAgICAgICAgICByMiAgICAgICAgID0gICByICogcgorLy8gICAgICAgICAgbXNjMiAgICAgICA9ICAgU0NfMiAqIHIyCisvLyAgICAgICAgICByNCAgICAgICAgID0gICByMiAqIHIyCisvLyAgICAgICAgICBwc2MzICAgICAgID0gICBTQ18zICsgbXNjNAorLy8gICAgICAgICAgcHNjMSAgICAgICA9ICAgU0NfMSArIG1zYzIKKy8vICAgICAgICAgIG1zYzMgICAgICAgPSAgIHI0ICogcHNjMworLy8gICAgICAgICAgc2luY29zcG9scyA9ICAgcHNjMSArIG1zYzMKKy8vICAgICAgICAgIHBvbHMgICAgICAgPSAgIHNpbmNvc3BvbHMgKgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgPFNfaGkgKiByXjIgfCAoQ19obCArIHNpZ21hKSAqIHJeMz4KKy8vCisvLyAgICAgNC4gQ09SUkVDVElPTiBURVJNCisvLworLy8gICAgIFRoaXMgaXMgd2hlcmUgdGhlICJjIiBjb21wb25lbnQgb2YgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIHRha2VuIGludG8gYWNjb3VudDsgcmVjYWxsIHRoYXQganVzdCAiciIgaXMgdXNlZCBmb3IgbW9zdCBvZgorLy8gICAgIHRoZSBjYWxjdWxhdGlvbi4KKy8vCisvLyAgICAgICAgICAtYyAgID0gbV8zIC0gY18yCisvLyAgICAgICAgICAtZCAgID0gU19oaSAqIHIgLSAoQ19obCArIHNpZ21hKQorLy8gICAgICAgICAgY29yciA9IC1jICogLWQgKyBTX2xvCisvLworLy8gICAgIDUuIENPTVBFTlNBVEVEIFNVTU1BVElPTlMKKy8vCisvLyAgICAgVGhlIHR3byBzdWNjZXNzaXZlIGNvbXBlbnNhdGVkIHN1bW1hdGlvbnMgYWRkIHVwIHRoZSBoaWdoCisvLyAgICAgYW5kIG1lZGl1bSBwYXJ0cywgbGVhdmluZyBqdXN0IHRoZSBsb3cgcGFydHMgdG8gYWRkIHVwIGF0CisvLyAgICAgdGhlIGVuZC4KKy8vCisvLyAgICAgICAgICBycyAgICAgICAgPSAgc2lnbWEgKiByCisvLyAgICAgICAgICByZXNfaW50ICAgPSAgU19oaSArIHJzCisvLyAgICAgICAgICBrXzAgICAgICAgPSAgU19oaSAtIHJlc19pbnQKKy8vICAgICAgICAgIGtfMiAgICAgICA9ICBrXzAgKyBycworLy8gICAgICAgICAgbWVkICAgICAgID0gIENfaGwgKiByCisvLyAgICAgICAgICByZXNfaGkgICAgPSAgcmVzX2ludCArIG1lZAorLy8gICAgICAgICAga18xICAgICAgID0gIHJlc19pbnQgLSByZXNfaGkKKy8vICAgICAgICAgIGtfMyAgICAgICA9ICBrXzEgKyBtZWQKKy8vCisvLyAgICAgNi4gRklOQUwgU1VNTUFUSU9OCisvLworLy8gICAgIFdlIG5vdyBhZGQgdXAgYWxsIHRoZSBzbWFsbCBwYXJ0czoKKy8vCisvLyAgICAgICAgICByZXNfbG8gPSBwb2xzKGhpKSArIHBvbHMobG8pICsgY29yciArIGtfMSArIGtfMworLy8KKy8vICAgICBOb3cgdGhlIG92ZXJhbGwgcmVzdWx0IGlzIGp1c3Q6CisvLworLy8gICAgICAgICAgcmVzX2hpICsgcmVzX2xvCisvLworLy8gICAgIDcuIFNNQUxMIEFSR1VNRU5UUworLy8KKy8vICAgICBJbnB1dHMgd2l0aCB8WHwgPCAyXi0yNTIgYXJlIHRyZWF0ZWQgc3BlY2lhbGx5IGFzCisvLyAgICAgMSAtIHx4fC4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGNvcyhOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjb3MoSU5GKSA9IE5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjb3MoMCkgPSAxCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgY29zCitFTlRSWShjb3MpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNTYoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDEyMzM2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNDI5MywgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbW92c2QgICAgIDIxNjAoJWVieCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDIyNDAoJWVieCksICV4bW01CisgICAgICAgIG1vdnNkICAgICAyMjI0KCVlYngpLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG9ycHMgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDIxMjgoJWVieCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAyMTEyKCVlYngpLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJWVkeAorICAgICAgICBjdnRzaTJzZGwgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZGwgICAgICAkMTg2NTIzMiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDIwOTYoJWVieCksICV4bW01CisgICAgICAgIGxlYSAgICAgICAoJWVieCksICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQ1LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgMjE0NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgOCglZWF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAyMDY0KCVlYngpLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICglZWF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgMjQoJWVheCksICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgIDIwODAoJWVieCksICV4bW01CisgICAgICAgIG11bHNkICAgICAoJWVheCksICV4bW00CisgICAgICAgIGFkZHBkICAgICAyMDQ4KCVlYngpLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgIDgoJWVheCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDgoJWVheCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBhZGRzZCAgICAgMTYoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHVucGNraHBkICAleG1tNiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdnNkICAgICAleG1tNCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyMTkyKCVlYngpLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDEzMiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBzdWJsICAgICAgJDMyLCAlZXNwCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGxlYSAgICAgICA0MCglZXNwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgOCglZXNwKQorICAgICAgICBtb3ZsICAgICAgJDEsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsIDEyKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBfX2xpYm1fc2luY29zX2h1Z2UKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVzcAorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBmbGRsICAgICAgMTI4KCVlc3ApCisgICAgICAgIGZtdWxsICAgICAyMjA4KCVlYngpCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDU2KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChjb3MpCisjIC0tIEVuZCAgY29zCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChjb3NsLCBjb3MpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxODExNTA2NworCS5sb25nCTMyMTQxMjYzNDIKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMTA3MDEzNTQ4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkzMTYwNTY3MDY1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMzIxNjkxNTA0OAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTEwNzE1MjQ3MDEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEyNzk2ODA5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMzIxNzM5NjMyNworCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTEwNzE3NjEyMTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1NzUyMTU3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMzIxNzg4NjcxOAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTEwNzE5MjY1MTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEzNDUwNjAyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTEwNjk2MjYzMTYKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMTA3MjIxNzIxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjI2ODY5NDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkxMDY4MjQ0MjU1CisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTEwNzI2NTI5NTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MzI1NzgzCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTc3MTk5MjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkxMDY4NzI3NDU3CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTEwNzExNTI2MTAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2MDg3ODMxNworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTEwNjc4NDY2MzQKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkxMDcwNzY1MDYyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTMxNjE4MzgyMjEKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxODExNTA2NworCS5sb25nCTEwNjY2NDI2OTQKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMzIxNzYxOTEyOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDEzMDgzNDE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMTA2OTQzMTQwMAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTMyMTkwMDgzNDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwMjgwNDU3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMTA2OTkxMjY3OQorCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTMyMTkyNDQ4NTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjM1ODA1CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMTA3MDQwMzA3MAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTMyMTk0MTAxNjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwOTM0MjUwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTMyMTcxMDk5NjQKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMzIxOTcwMDg2NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTUyMDMyOTcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkzMjE1NzI3OTAzCisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTMyMjAxMzY1OTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxODA5NDMxCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzAyMzYyODEKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMzIxOTU2MjY1NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3OTkwOTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkzMjE2MjExMTA1CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTMyMTg2MzYyNTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMzM5NDY2OQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTMyMTUzMzAyODIKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkzMjE4MjQ4NzEwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwMTQzNTQ1NzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMzIwNzIwMTE4NAorCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTMyMTAxMzM4NjgKKwkubG9uZwkyNzczOTI3NzMyCisJLmxvbmcJMTA1MzIzNjcwNworCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTEwNTY1NzE4MDgKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzMjg5MzUzNworCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDY5MDk3NDY3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3NzE5NzczMzEKKwkubG9uZwk5OTYzNTAzNDYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDc2MTI1NDg4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDIyNTYKKwkuZGF0YQorCS5oaWRkZW4gX19saWJtX3NpbmNvc19odWdlCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NfZXhwbTEuUyBiL2xpYm0veDg2L3NfZXhwbTEuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjllODdiCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvc19leHBtMS5TCkBAIC0wLDAgKzEsNzAyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gRGVzY3JpcHRpb246CisvLyAgTGV0IEsgPSA2NCAodGFibGUgc2l6ZSkuCisvLworLy8gIEZvdXIgc3ViLWRvbWFpbnM6CisvLyAgICAxLiB8eHwgPCAxLygyKkspCisvLyAgICAgIGV4cG0xKHgpIH4gUCh4KQorLy8gICAgMi4gMS8oMipLKSA8PSB8eHwgPD0gNTYqbG9nKDIpCisvLyAgICAgICB4ICAgICAgIHgvbG9nKDIpICAgIG4KKy8vICAgICAgZSAtIDEgPSAyICAgICAgICAgPSAyICogVFtqXSAqICgxICsgUCh5KSkgLSAxCisvLyAgICAzLiA1Nipsb2coMikgPCB4IDwgTUFYX0xPRworLy8gICAgICAgeCAgICAgICB4ICAgeC9sb2coMikgICAgbgorLy8gICAgICBlIC0gMSB+IGUgPSAyICAgICAgICAgPSAyICogVFtqXSAqICgxICsgUCh5KSkKKy8vICAgIDQuIHggPCAtNTYqbG9nKDIpCisvLyAgICAgICB4ICAgICAgICAgICAgeAorLy8gICAgICBlIC0gMSA9IC0xICsgZSB+IC0xCisvLyAgICB3aGVyZQorLy8gICAgICAgeCA9IG0qbG9nKDIpL0sgKyB5LCAgICB5IGluIFstbG9nKDIpL0suLmxvZygyKS9LXQorLy8gICAgICAgbSA9IG4qSyArIGosICAgICAgICAgICBtLG4saiAtIHNpZ25lZCBpbnRlZ2VyLCBqIGluIFstSy8yLi5LLzJdCisvLyAgICAgICAgICAgICAgICAgIGovSworLy8gICAgICAgdmFsdWVzIG9mIDIgICBhcmUgdGFidWxhdGVkIGFzIFRbal0gPSBUX2hpW2pdICggMSArIFRfbG9bal0pLgorLy8KKy8vICAgICAgIFAoeSkgaXMgYSBtaW5pbWF4IHBvbHlub21pYWwgYXBwcm94aW1hdGlvbiBvZiBleHAoeCktMQorLy8gICAgICAgb24gc21hbGwgaW50ZXJ2YWwgWy1sb2coMikvSy4ubG9nKDIpL0tdICh3ZXJlIGNhbGN1bGF0ZWQgYnkgTWFwbGUgVikuCisvLworLy8gICAgSW4gY2FzZSAzLCB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIGFyaXRobWV0aWMgb3ZlcmZsb3cgYW5kIHVuZGVyZmxvdywKKy8vICAgICAgICAgICAgICBuICAgICAgICAgICAgICAgICAgICAgICAgbjEgIG4yCisvLyAgICB2YWx1ZSBvZiAyICBpcyBzYWZlbHkgY29tcHV0ZWQgYXMgMiAqIDIgd2hlcmUgbjEgaW4gWy1CSUFTLzIuLkJJQVMvMl0KKy8vICAgIGFuZCBCSUFTIGlzIGEgdmFsdWUgb2YgZXhwb25lbnQgYmlhcy4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGV4cG0xKE5hTikgaXMgTmFOCisvLyAgZXhwbTEoK0lORikgaXMgK0lORgorLy8gIGV4cG0xKC1JTkYpIGlzIC0xCisvLyAgZXhwbTEoeCkgaXMgeCBmb3Igc3Vibm9ybWFscworLy8gIGZvciBmaW5pdGUgYXJndW1lbnQsIG9ubHkgZXhwbTEoMCk9MCBpcyBleGFjdC4KKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICAgIGlmIHggPiA3MDkuNzgyNzEyODkzMzgzOTczMDk2IHRoZW4gZXhwbTEoeCkgb3ZlcmZsb3cKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBleHBtMQorRU5UUlkoZXhwbTEpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNjQoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDY0KCVlYngpLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgNDgoJWVieCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICA4MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDk2KCVlYngpLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxNjUyNywgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzA0LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTEyKCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAxMjgoJWVieCksICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzdWJwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAxNjAoJWVieCwlZWN4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDE0NCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNAorICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmRxYSAgICAxNiglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGFuZCAgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZkcWEgICAgMzIoJWVieCksICV4bW02CisgICAgICAgIHBhZGRxICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQ0NiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkODk0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTkxNiwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlZHgKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNQorICAgICAgICBwc3JscSAgICAgJDM4LCAleG1tMworICAgICAgICBwc2xscSAgICAgJDM4LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNzE4NCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MjU2LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDEzMiglZXNwKSwgJWVjeAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGZzdGN3ICAgICAyNCglZXNwKQorICAgICAgICBtb3Z6d2wgICAgMjQoJWVzcCksICVlZHgKKyAgICAgICAgb3JsICAgICAgICQ3NjgsICVlZHgKKyAgICAgICAgbW92dyAgICAgICVkeCwgMjgoJWVzcCkKKyAgICAgICAgZmxkY3cgICAgIDI4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNhcmwgICAgICAkMSwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkcWEgICAgKCVlYngpLCAleG1tNgorICAgICAgICBwYW5kbiAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZGwgICAgICAkMTAyMywgJWVheAorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTMKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTMKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgOCglZXNwKQorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTYsIDE2KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTQsIDE2KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW00CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIG1vdnNkICAgICAleG1tNCwgOCglZXNwKQorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDgoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGN3ICAgICAyNCglZXNwKQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIG1vdmwgICAgICAkNDEsICVlZHgKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZzZCAgICAgMTI3MiglZWJ4KSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQxLCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAxMjgoJWVzcCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisgICAgICAgIG1vdnNkICAgICAxMjU2KCVlYngpLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEzLjAuMjoKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYzMDQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxNTUwNCwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTUuMC4yCisgICAgICAgIG1vdmFwZCAgICAxMTg0KCVlYngpLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDEyMDAoJWVieCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAxMjE2KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMTIzMiglZWJ4KSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQyNywgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDEyODgoJWVieCksICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTUuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMxLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdmwgICAgICAkMTYsICVlZHgKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQ0MiwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTA4MzE3OTAwOCwgJWVheAorICAgICAgICBqZ2UgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIGNtcGwgICAgICAkLTEwNDg1NzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgNDgoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDQ4KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDY0KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChleHBtMSkKKyMgLS0gRW5kICBleHBtMQorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woZXhwbTFsLCBleHBtMSk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLmxvbmcJMAorCS5sb25nCTQyOTM5MTg3MjAKKwkubG9uZwk0Mjk0OTY3MjMyCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTE2OTczNTAzOTgKKwkubG9uZwkxMDc5NDQ4OTAzCisJLmxvbmcJMTY5NzM1MDM5OAorCS5sb25nCTEwNzk0NDg5MDMKKwkubG9uZwk0Mjc3Nzk2ODY0CisJLmxvbmcJMTA2NTc1ODI3NAorCS5sb25nCTQyNzc3OTY4NjQKKwkubG9uZwkxMDY1NzU4Mjc0CisJLmxvbmcJMzE2NDQ4NjQ1OAorCS5sb25nCTEwMjUzMDg1NzAKKwkubG9uZwkzMTY0NDg2NDU4CisJLmxvbmcJMTAyNTMwODU3MAorCS5sb25nCTE5NjMzNTg2OTQKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2Nzc5OTg5MworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2MjY1MDIyMAorCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTEwNjI2NTAyMjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAwMDA3MDk1NQorCS5sb25nCTEwNDIxNDUzMDQKKwkubG9uZwkxMDQwMTg3MzkyCisJLmxvbmcJMTE0MTgKKwkubG9uZwk5ODgyNjc4NDkKKwkubG9uZwkxMDM5NTAwNjYwCisJLmxvbmcJMzUzOTk5MjU3NgorCS5sb25nCTIyOTYwCisJLmxvbmcJMzY3NTU0MDEKKwkubG9uZwkxMDQyMTE0MjkwCisJLmxvbmcJNDAyNjUzMTg0CisJLmxvbmcJMzQ2MjkKKwkubG9uZwkzNjM0NzY5NDgzCisJLmxvbmcJMTA0MjE3ODYyNworCS5sb25nCTE4MjAzMjc5MzYKKwkubG9uZwk0NjQyNAorCS5sb25nCTIxNTU5OTEyMjUKKwkubG9uZwkxMDQxNTYwNjgwCisJLmxvbmcJODQ3MjQ5NDA4CisJLmxvbmcJNTgzNDgKKwkubG9uZwkyNzY2OTEzMzA3CisJLmxvbmcJMTAzOTI5MzI2NAorCS5sb25nCTM0ODk2NjA5MjgKKwkubG9uZwk3MDQwMQorCS5sb25nCTM2NTExNzQ2MDIKKwkubG9uZwkxMDQwNDg4MTc1CisJLmxvbmcJMjkyNzYyNDE5MgorCS5sb25nCTgyNTg2CisJLmxvbmcJMzA3Mzg5MjEzMQorCS5sb25nCTEwNDIyNDA2MDYKKwkubG9uZwkxMDA2NjMyOTYwCisJLmxvbmcJOTQ5MDQKKwkubG9uZwkxMzI4MzkxNzQyCisJLmxvbmcJMTA0MjAxOTAzNworCS5sb25nCTM5NDI2NDU3NjAKKwkubG9uZwkxMDczNTUKKwkubG9uZwkyNjUwODkzODI1CisJLmxvbmcJMTA0MTkwMzIxMAorCS5sb25nCTgyMjA4MzU4NAorCS5sb25nCTExOTk0MworCS5sb25nCTIzOTcyODkxNTMKKwkubG9uZwkxMDQxODAyMDM3CisJLmxvbmcJMjI4MTcwMTM3NgorCS5sb25nCTEzMjY2NworCS5sb25nCTQzMDk5NzE3NQorCS5sb25nCTEwNDIxMTA2MDYKKwkubG9uZwkxODQ1NDkzNzYwCisJLmxvbmcJMTQ1NTMwCisJLmxvbmcJMTIzMDkzNjUyNQorCS5sb25nCTEwNDE4MDEwMTUKKwkubG9uZwkxNzAyODg3NDI0CisJLmxvbmcJMTU4NTMzCisJLmxvbmcJNzQwNjc1OTM1CisJLmxvbmcJMTA0MDE3ODkxMworCS5sb25nCTQxMTA0MTc5MjAKKwkubG9uZwkxNzE2NzcKKwkubG9uZwkzNDg5ODEwMjYxCisJLmxvbmcJMTA0MTgyNTk4NgorCS5sb25nCTI3OTM0MDY0NjQKKwkubG9uZwkxODQ5NjUKKwkubG9uZwkyNTMyNjAwNTMwCisJLmxvbmcJMTA0MDc2Nzg4MgorCS5sb25nCTE2Nzc3MjE2MAorCS5sb25nCTE5ODM5OAorCS5sb25nCTM1NDI1NTcwNjAKKwkubG9uZwkxMDQxODI3MjYzCisJLmxvbmcJMjk4NjM0NDQ0OAorCS5sb25nCTIxMTk3NgorCS5sb25nCTE0MDE1NjM3NzcKKwkubG9uZwkxMDQxMDYxMDkzCisJLmxvbmcJOTIyNzQ2ODgwCisJLmxvbmcJMjI1NzAzCisJLmxvbmcJMzEyOTQwNjAyNgorCS5sb25nCTEwNDE4NTI0MTMKKwkubG9uZwk4ODA4MDM4NDAKKwkubG9uZwkyMzk1NzkKKwkubG9uZwk5MDA5OTM1NzIKKwkubG9uZwkxMDM5MjgzMjM0CisJLmxvbmcJMTI3NTA2ODQxNgorCS5sb25nCTI1MzYwNgorCS5sb25nCTIxMTUwMjkzNTgKKwkubG9uZwkxMDQyMTQwMDQyCisJLmxvbmcJNTYyMDM2NzM2CisJLmxvbmcJMjY3Nzg2CisJLmxvbmcJMTA4NjY0MzE1MgorCS5sb25nCTEwNDE3ODU0MTkKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMjgyMTIwCisJLmxvbmcJODI4NjQzNjYKKwkubG9uZwkxMDQxMjU2MjQ0CisJLmxvbmcJMzA0NTA2NDcwNAorCS5sb25nCTI5NjYxMAorCS5sb25nCTIzOTI5NjgxNTIKKwkubG9uZwkxMDQwOTEzNjgzCisJLmxvbmcJMzU3MzU0NzAwOAorCS5sb25nCTMxMTI1OAorCS5sb25nCTI5MDU4NTYxODMKKwkubG9uZwkxMDQwMDAyMjE0CisJLmxvbmcJMTk4ODEwMDA5NgorCS5sb25nCTMyNjA2NgorCS5sb25nCTM3NDIwMDgyNjEKKwkubG9uZwkxMDQwMDExMTM3CisJLmxvbmcJMTQ1MTIyOTE4NAorCS5sb25nCTM0MTAzNQorCS5sb25nCTg2MzM5Mzc5NAorCS5sb25nCTEwNDA4ODA2MjEKKwkubG9uZwk5MTQzNTgyNzIKKwkubG9uZwkzNTYxNjcKKwkubG9uZwkxNDQ2MTM2ODM3CisJLmxvbmcJMTA0MTM3MjQyNgorCS5sb25nCTM3MDc3NjQ3MzYKKwkubG9uZwkzNzE0NjMKKwkubG9uZwk5Mjc4NTUyMDEKKwkubG9uZwkxMDQwNjE3NjM2CisJLmxvbmcJMzYwNzEwMTQ0CisJLmxvbmcJMzg2OTI3CisJLmxvbmcJMTQ5MjY3OTkzOQorCS5sb25nCTEwNDEwNTAzMDYKKwkubG9uZwkyOTUyNzkwMDE2CisJLmxvbmcJNDAyNTU4CisJLmxvbmcJNjA4ODI3MDAxCisJLmxvbmcJMTA0MTU4MjIxNworCS5sb25nCTIxODEwMzgwODAKKwkubG9uZwk0MTgzNjAKKwkubG9uZwk2MDYyNjAyMDQKKwkubG9uZwkxMDQyMjcxOTg3CisJLmxvbmcJMTcxMTI3NjAzMgorCS5sb25nCTQzNDMzNAorCS5sb25nCTMxNjMwNDQwMTkKKwkubG9uZwkxMDQxODQzODUxCisJLmxvbmcJMTAwNjYzMjk2MAorCS5sb25nCTQ1MDQ4MgorCS5sb25nCTQxNDg3NDczMjUKKwkubG9uZwkxMDQxOTYyOTcyCisJLmxvbmcJMzkwMDcwMjcyMAorCS5sb25nCTQ2NjgwNQorCS5sb25nCTgwMjkyNDIwMQorCS5sb25nCTEwNDEyNzUzNzgKKwkubG9uZwkxNDQyODQwNTc2CisJLmxvbmcJNDgzMzA3CisJLmxvbmcJMzA1Mjc0OTgzMworCS5sb25nCTEwNDE5NDA1NzcKKwkubG9uZwkxOTM3NzY4NDQ4CisJLmxvbmcJNDk5OTg4CisJLmxvbmcJMjIxNjExNjM5OQorCS5sb25nCTEwNDE0ODY3NDQKKwkubG9uZwk5MTQzNTgyNzIKKwkubG9uZwk1MTY4NTEKKwkubG9uZwkyNzI5Njk3ODM2CisJLmxvbmcJMTA0MTQ0NTc2NAorCS5sb25nCTI1NjY5MTQwNDgKKwkubG9uZwk1MzM4OTcKKwkubG9uZwk1NDA2MDgzNTYKKwkubG9uZwkxMDQxMzEwOTA3CisJLmxvbmcJMjYwMDQ2ODQ4MAorCS5sb25nCTU1MTEyOQorCS5sb25nCTI5MTYzNDQ0OTMKKwkubG9uZwkxMDQwNTM1NjYxCisJLmxvbmcJMTEwNzI5NjI1NgorCS5sb25nCTU2ODU0OQorCS5sb25nCTczMTM5MTgxNAorCS5sb25nCTEwMzk0OTcwMTQKKwkubG9uZwkyNTY2OTE0MDQ4CisJLmxvbmcJNTg2MTU4CisJLmxvbmcJMTAyNDcyMjcwNAorCS5sb25nCTEwNDE0NjE2MjUKKwkubG9uZwkyOTYxMTc4NjI0CisJLmxvbmcJNjAzOTU5CisJLmxvbmcJMzgwNjgzMTc0OAorCS5sb25nCTEwNDE3MzI0OTkKKwkubG9uZwkyNjc1OTY1OTUyCisJLmxvbmcJNjIxOTU0CisJLmxvbmcJMjM4OTUzMzA0CisJLmxvbmcJMTA0MDMxNjQ4OAorCS5sb25nCTIxODk0MjY2ODgKKwkubG9uZwk2NDAxNDUKKwkubG9uZwk3NDkxMjMyMzUKKwkubG9uZwkxMDQxNzI1Nzg1CisJLmxvbmcJMjA2MzU5NzU2OAorCS5sb25nCTY1ODUzNAorCS5sb25nCTExNjgxODc5NzcKKwkubG9uZwkxMDQxMTc1MjE0CisJLmxvbmcJMjk4NjM0NDQ0OAorCS5sb25nCTY3NzEyMworCS5sb25nCTM1MDYwOTYzOTkKKwkubG9uZwkxMDQyMTg2MDk1CisJLmxvbmcJMTQyNjA2MzM2MAorCS5sb25nCTY5NTkxNQorCS5sb25nCTE0NzAyMjE2MjAKKwkubG9uZwkxMDQxNjc1NDk5CisJLmxvbmcJMjU2NjkxNDA0OAorCS5sb25nCTcxNDkxMQorCS5sb25nCTMxODI0MjUxNDYKKwkubG9uZwkxMDQxNDgzMTM0CisJLmxvbmcJMzA4NzAwNzc0NAorCS5sb25nCTczNDExNAorCS5sb25nCTMxMzE2OTgyMDgKKwkubG9uZwkxMDQyMjA4NjU3CisJLmxvbmcJNDA2ODQ3NDg4MAorCS5sb25nCTc1MzUyNgorCS5sb25nCTIzMDA1MDQxMjUKKwkubG9uZwkxMDQxNDI4NTk2CisJLmxvbmcJMjQxNTkxOTEwNAorCS5sb25nCTc3MzE1MAorCS5sb25nCTIyOTAyOTc5MzEKKwkubG9uZwkxMDM3Mzg4NDAwCisJLmxvbmcJMzcxNjE1MzM0NAorCS5sb25nCTc5Mjk4NworCS5sb25nCTM1MzIxNDgyMjMKKwkubG9uZwkxMDQxNjI2MTk0CisJLmxvbmcJNzcxNzUxOTM2CisJLmxvbmcJODEzMDQxCisJLmxvbmcJMTE2MTg4NDQwNAorCS5sb25nCTEwNDIwMTUyNTgKKwkubG9uZwkzNjk5Mzc2MTI4CisJLmxvbmcJODMzMzEyCisJLmxvbmcJODc2MzgzMTc2CisJLmxvbmcJMTAzNzk2ODg3OAorCS5sb25nCTEyNDE1MTM5ODQKKwkubG9uZwk4NTM4MDUKKwkubG9uZwkzMzc5OTg2Nzk2CisJLmxvbmcJMTA0MjIxMzE1MworCS5sb25nCTM2OTkzNzYxMjgKKwkubG9uZwk4NzQ1MjAKKwkubG9uZwkxNTQ1Nzk3NzM3CisJLmxvbmcJMTA0MTY4MTU2OQorCS5sb25nCTU4NzIwMjU2CisJLmxvbmcJODk1NDYyCisJLmxvbmcJMjkyNTE0NjgwMQorCS5sb25nCTEwNDIyMTI1NjcKKwkubG9uZwk4NTU2MzgwMTYKKwkubG9uZwk5MTY2MzEKKwkubG9uZwkxMzE2NjI3OTcxCisJLmxvbmcJMTAzODUxNjIwNAorCS5sb25nCTM4ODM5MjU1MDQKKwkubG9uZwk5MzgwMzAKKwkubG9uZwkzMjY3ODY5MTM3CisJLmxvbmcJMTA0MDMzNzAwNAorCS5sb25nCTI3MjYyOTc2MDAKKwkubG9uZwk5NTk2NjMKKwkubG9uZwkzNzIwODY4OTk5CisJLmxvbmcJMTA0MTc4MjQwOQorCS5sb25nCTM5OTI5Nzc0MDgKKwkubG9uZwk5ODE1MzEKKwkubG9uZwk0MzMzMTYxNDIKKwkubG9uZwkxMDQxOTk0MDY0CisJLmxvbmcJMTUyNjcyNjY1NgorCS5sb25nCTEwMDM2MzgKKwkubG9uZwk3ODEyMzIxMDMKKwkubG9uZwkxMDQwMDkzNDAwCisJLmxvbmcJMjE3MjY0OTQ3MgorCS5sb25nCTEwMjU5ODUKKwkubG9uZwkyNzczOTI3NzMyCisJLmxvbmcJMTA1MzIzNjcwNworCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTEwNjI2NTAyMjAKKwkubG9uZwkzNzk2NTM4OTkKKwkubG9uZwkxMDU2NTcxODQ1CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTEwNTk3MTc1MzYKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2Nzc5OTg5MworCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NjQzNTA3MQorCS5sb25nCTAKKwkubG9uZwkxMDQ4NTc2CisJLmxvbmcJNDIyNzg1ODQzMgorCS5sb25nCTQyOTQ5NjcyOTUKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwxMjk2CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc19sb2cxcC5TIGIvbGlibS94ODYvc19sb2cxcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhNmQ4NDUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zX2xvZzFwLlMKQEAgLTAsMCArMSw4MjcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICBMZXQgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBHZXQgQn4xL214IGJhc2VkIG9uIHRoZSBvdXRwdXQgb2YgcmNwcHMgaW5zdHJ1Y3Rpb24gKEIwKQorLy8gICAgQiA9IGludCgoQjAqMl43KzAuNSkpLzJeNworLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQ6IHI9QipteC0xLjAgKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIFJlc3VsdDogIGsqbG9nKDIpIC0gbG9nKEIpICsgcChyKQorLy8gICAgICAgICAgICAgcChyKSBpcyBhIGRlZ3JlZSA3IHBvbHlub21pYWwKKy8vICAgICAgICAgICAgIC1sb2coQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIFJlc3VsdCBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gICBsb2cxcChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICAgbG9nMXAoK0lORikgPSB0aGF0IElORgorLy8gICBsb2cxcCh4KSA9IE5hTiBpZiB4IDwgLTEgb3IgeCA9IC1JTkYsIGFuZCByYWlzZXMgaW52YWxpZCBleGNlcHRpb24KKy8vICAgbG9nMXAoLTEpID0gLUlORiwgYW5kIHJhaXNlcyBkaXZpZGUtYnktemVybyBleGNlcHRpb24KKy8vICAgbG9nMXAoKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgbG9nMXAKK0VOVFJZKGxvZzFwKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQwKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW00CisgICAgICAgIG1vdnNkICAgICAyMTI4KCVlYngpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDUsICV4bW0wCisgICAgICAgIHBzcmxxICAgICAkMzQsICV4bW0wCisgICAgICAgIHN1YmwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICByY3BzcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2MjU2LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkMzI3MjAsICVlY3gKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMworLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkMTQzMzYsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBjdnRzaTJzZGwgJWVheCwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyMDY0KCVlYngpLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMjA4MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDE2NzExNjgwLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTIsICVlZHgKKyAgICAgICAgbW92YXBkICAgICglZWJ4LCVlZHgpLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMjA5NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIDIwNzIoJWVieCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgMjExMiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkLTIwOTcxNTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTQxLCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNDAsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQxNTUwNCwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdmFwZCAgICAyMTQ0KCVlYngpLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDIxNjAoJWVieCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgMjE3NiglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJDQ5MTIwLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMjoKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMjQoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdmwgICAgICA0MCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQobG9nMXApCisjIC0tIEVuZCAgbG9nMXAKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGxvZzFwbCwgbG9nMXApOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwk0Mjc3ODExMjAwCisJLmxvbmcJMTA3MjA0OTczMAorCS5sb25nCTI0NzkzMTg4MzIKKwkubG9uZwkxMDI2NDg3MTI3CisJLmxvbmcJMjg1NDQ5MjE2MAorCS5sb25nCTEwNzIwMzM0MTAKKwkubG9uZwkyMTU2MzE1NTAKKwkubG9uZwkxMDI1NjM4OTY4CisJLmxvbmcJMTU0NzA2MTI0OAorCS5sb25nCTEwNzIwMTcyMTYKKwkubG9uZwkyODg2NzgxNDM1CisJLmxvbmcJMTAyNjQyMzM5NQorCS5sb25nCTY0OTgyNTI4MAorCS5sb25nCTEwNzIwMDExNDYKKwkubG9uZwk0MjgxNTMzNDA1CisJLmxvbmcJMTAyNDAzODkyMworCS5sb25nCTY0NjM0Njc1MgorCS5sb25nCTEwNzE5ODUxOTgKKwkubG9uZwkxNTYyNzM1OTIxCisJLmxvbmcJMTAyMzc5MDI3NgorCS5sb25nCTIyMDM3MzQwMTYKKwkubG9uZwkxMDcxOTY5MzcwCisJLmxvbmcJMTgzODM5NzY5MQorCS5sb25nCTMxNzM5MzYyMDkKKwkubG9uZwkxODcyMTY5OTg0CisJLmxvbmcJMTA3MTk1MzY2MQorCS5sb25nCTM5ODEyMDI0NjAKKwkubG9uZwkxMDIyMzI1MDEzCisJLmxvbmcJNjY5NTU3NzYwCisJLmxvbmcJMTA3MTkzODA2OQorCS5sb25nCTQxODI1OTc4MDIKKwkubG9uZwkzMTczMTc0MTIyCisJLmxvbmcJNDA3NjQxMzk1MgorCS5sb25nCTEwNzE5MjI1OTEKKwkubG9uZwkxMjA5MDI5MTExCisJLmxvbmcJMzE3MDczNjIwNworCS5sb25nCTU1NjEyNTE4NAorCS5sb25nCTEwNzE5MDcyMjgKKwkubG9uZwk4MjEwODYwMjgKKwkubG9uZwkzMTczNDM3MDQ5CisJLmxvbmcJMjA0OTE0Njg4CisJLmxvbmcJMTA3MTg5MTk3NgorCS5sb25nCTIwOTcwMjU5ODYKKwkubG9uZwkzMTcxMDcxNzk4CisJLmxvbmcJMzg3NTQ1MDg4CisJLmxvbmcJMTA3MTg3NjgzNAorCS5sb25nCTMxNDI5MzY5OTYKKwkubG9uZwkzMTczMDkyMjE4CisJLmxvbmcJMjkxMjc4MzM2MAorCS5sb25nCTEwNzE4NjE4MDAKKwkubG9uZwkyNTAyNDIwMTQwCisJLmxvbmcJMTAyNDUwNTkxOQorCS5sb25nCTExNDQyNjA2MDgKKwkubG9uZwkxMDcxODQ2ODc0CisJLmxvbmcJMzMxNTY1ODE0MAorCS5sb25nCTMxNzM0Njk4NDMKKwkubG9uZwkxNDcxMjA5NDcyCisJLmxvbmcJMTA3MTgzMjA1MworCS5sb25nCTEyOTYyMTAwOQorCS5sb25nCTMxNzI0NDM4NzcKKwkubG9uZwkxODI5NjgzMjAwCisJLmxvbmcJMTA3MTgxNzMzNgorCS5sb25nCTM4ODU0Njc2OTMKKwkubG9uZwkxMDI1NTM1Mjc1CisJLmxvbmcJMjg4Njc2ODY0CisJLmxvbmcJMTA3MTgwMjcyMgorCS5sb25nCTg2MTM5NDcyCisJLmxvbmcJMzE3MTYzOTc5MworCS5sb25nCTM2MzYzNzg2MjQKKwkubG9uZwkxMDcxNzg4MjA4CisJLmxvbmcJMTg1MDIzODU4NworCS5sb25nCTEwMjQ2NTQzNDIKKwkubG9uZwkxNjA2ODE3NzkyCisJLmxvbmcJMTA3MTc3Mzc5NQorCS5sb25nCTMzODg4OTk3OTUKKwkubG9uZwkzMTczNjc1NTg2CisJLmxvbmcJMTIzNjE2NDYwOAorCS5sb25nCTEwNzE3NTk0ODAKKwkubG9uZwkzOTgzNTk5MjA3CisJLmxvbmcJMTAyMDA0NjU1OAorCS5sb25nCTEwODk2MTY4OTYKKwkubG9uZwkxMDcxNzQ1MjYyCisJLmxvbmcJNDE3MTk3NDIyNAorCS5sb25nCTEwMjQ3NzMxOTgKKwkubG9uZwk0MTQzMDkzNzYwCisJLmxvbmcJMTA3MTczMTEzOQorCS5sb25nCTI3Mjc1ODc0MDEKKwkubG9uZwkzMTczOTY1MjA3CisJLmxvbmcJNjAwMjY3Nzc2CisJLmxvbmcJMTA3MTcxNzExMgorCS5sb25nCTMxNDc2ODUwNDIKKwkubG9uZwkzMTczMzUzMDMxCisJLmxvbmcJMjI0OTMxMzI4MAorCS5sb25nCTEwNzE3MDMxNzcKKwkubG9uZwkxMjU4MzUwNzQKKwkubG9uZwkxMDI1MjU1ODMyCisJLmxvbmcJMzgwNTMwMzgwOAorCS5sb25nCTEwNzE2ODkzMzQKKwkubG9uZwkyMjg5OTkxMjA3CisJLmxvbmcJMTAyNTQ2MDMzMQorCS5sb25nCTg3Mjc4NTkyCisJLmxvbmcJMTA3MTY3NTU4MworCS5sb25nCTExMDYxMTQwNDUKKwkubG9uZwkxMDI1OTMzNjAyCisJLmxvbmcJMzE5NTQwNTMxMgorCS5sb25nCTEwNzE2NjE5MjAKKwkubG9uZwkzODg1MzE2NTc2CisJLmxvbmcJMzE3MTIwNjIzOQorCS5sb25nCTM4NTM2NDk5MjAKKwkubG9uZwkxMDcxNjQ4MzQ2CisJLmxvbmcJMjk3NzA2OTg1MgorCS5sb25nCTMxNzEyMzY3NzEKKwkubG9uZwkyOTQ0MDI2NjI0CisJLmxvbmcJMTA3MTYyNTA0OAorCS5sb25nCTEwMDgwOTM0OTMKKwkubG9uZwkxMDIzNDQ0NDc0CisJLmxvbmcJMzk5MzE4MDE2MAorCS5sb25nCTEwNzE1OTgyNDcKKwkubG9uZwkxODYyMzU1NTk1CisJLmxvbmcJMTAyNDY0MjUzMworCS5sb25nCTE0NTQ2NDExNTIKKwkubG9uZwkxMDcxNTcxNjE3CisJLmxvbmcJMTUxNDYwMzA4OQorCS5sb25nCTEwMjY1MDA1OTYKKwkubG9uZwkzMjg2MDg1NjMyCisJLmxvbmcJMTA3MTU0NTE1NAorCS5sb25nCTE0MDAwMjg0MjQKKwkubG9uZwkzMTczMjc5MDU2CisJLmxvbmcJNDM4NzczNzYwCisJLmxvbmcJMTA3MTUxODg1OAorCS5sb25nCTEyMDcyNzg2NAorCS5sb25nCTMxNzIxNDg5MTQKKwkubG9uZwkxMjEyOTc5MjAwCisJLmxvbmcJMTA3MTQ5MjcyNQorCS5sb25nCTE2MjUwNTU1OTQKKwkubG9uZwkzMTcyOTAxOTMzCisJLmxvbmcJMTE4OTAxNzYwMAorCS5sb25nCTEwNzE0NjY3NTQKKwkubG9uZwkzOTIwMDYyMzc2CisJLmxvbmcJMTAyNTcyNzQwNworCS5sb25nCTQwMzA2NDgzMgorCS5sb25nCTEwNzE0NDA5NDMKKwkubG9uZwkxMDUzMjcxNzI4CisJLmxvbmcJMzE3MTM5MTQyNworCS5sb25nCTMzNDMyMTA0OTYKKwkubG9uZwkxMDcxNDE1Mjg5CisJLmxvbmcJMzI0MzM5NTUwMgorCS5sb25nCTMxNzM2Mjc2MTMKKwkubG9uZwkxNzY1Nzc3NDA4CisJLmxvbmcJMTA3MTM4OTc5MgorCS5sb25nCTIxNDU5Njg1MTIKKwkubG9uZwkxMDI2MzU0MzA0CisJLmxvbmcJNDYxNDMwNzg0CisJLmxvbmcJMTA3MTM2NDQ0OQorCS5sb25nCTQwOTQzMjIyODUKKwkubG9uZwkxMDI2MDIxNDY3CisJLmxvbmcJNzE3MDY2MjQKKwkubG9uZwkxMDcxMzM5MjU4CisJLmxvbmcJNzYzNjMyMDIxCisJLmxvbmcJMTAyNDQ5NjkzMworCS5sb25nCTEzODA1MDM1NTIKKwkubG9uZwkxMDcxMzE0MjE3CisJLmxvbmcJMTM4MzU0Nzk5MgorCS5sb25nCTMxNzMwODg0NTMKKwkubG9uZwkxMDE1NzMyMjI0CisJLmxvbmcJMTA3MTI4OTMyNQorCS5sb25nCTMxOTg2NDY4NzcKKwkubG9uZwkxMDI1MzkwMzIyCisJLmxvbmcJMzU5NzcyMTYKKwkubG9uZwkxMDcxMjY0NTgwCisJLmxvbmcJMjE0MTAyNjgwNQorCS5sb25nCTEwMjU3NTQ2OTMKKwkubG9uZwkzOTI3MzA2MjQwCisJLmxvbmcJMTA3MTIzOTk3OQorCS5sb25nCTI4MjExNjI3MgorCS5sb25nCTMxNzMzOTQzMzQKKwkubG9uZwkxMTI1MzQxMTg0CisJLmxvbmcJMTA3MTIxNTUyMworCS5sb25nCTI3Njg0Mjc1MDQKKwkubG9uZwkzMTcyMjc5MDU5CisJLmxvbmcJMTY2Njk3MTY0OAorCS5sb25nCTEwNzExOTEyMDgKKwkubG9uZwk3ODY4Mzc2MjkKKwkubG9uZwkzMTcyNDI3NDQ1CisJLmxvbmcJMjgyNzY5NDA4MAorCS5sb25nCTEwNzExNjcwMzMKKwkubG9uZwkzODU3MTIyNDE2CisJLmxvbmcJMzE3MzAxNDI0MQorCS5sb25nCTIwMDM2ODMzMjgKKwkubG9uZwkxMDcxMTQyOTk3CisJLmxvbmcJODU5MDEwOTU0CisJLmxvbmcJMTAyNjU0NTAwNworCS5sb25nCTEwMDQwMTc2NjQKKwkubG9uZwkxMDcxMTE5MDk4CisJLmxvbmcJMzM1NjY0NDk3MAorCS5sb25nCTMxNzM0NTgwNjQKKwkubG9uZwkxNzUzMDIwNDE2CisJLmxvbmcJMTA3MTA5NTMzNAorCS5sb25nCTc4ODMzODU1MgorCS5sb25nCTEwMjYxNTc2OTMKKwkubG9uZwkxOTkyNzE4MzM2CisJLmxvbmcJMTA3MTA3MTcwNAorCS5sb25nCTEyMzkxNzk0NDMKKwkubG9uZwkxMDI2Mzk0ODg5CisJLmxvbmcJMzg3MDIzNDYyNAorCS5sb25nCTEwNzEwNDgyMDYKKwkubG9uZwkyMDgyNjE0NjYzCisJLmxvbmcJMTAyNDkyNjA1MworCS5sb25nCTEwNTA0Mzc2MzIKKwkubG9uZwkxMDcxMDI0ODQwCisJLmxvbmcJNjYwMDA3ODQwCisJLmxvbmcJMTAyNTU0ODQ5OQorCS5sb25nCTE4ODM5NTUyMAorCS5sb25nCTEwNzEwMDE2MDMKKwkubG9uZwkzODc4NzkyNzA0CisJLmxvbmcJMzE3Mzg4OTU3MQorCS5sb25nCTM3NDcxNzY0NDgKKwkubG9uZwkxMDcwOTc4NDkzCisJLmxvbmcJMTQ0OTkxNzA4CisJLmxvbmcJMzE3MTU1MjA0MgorCS5sb25nCTE0MDU2NjkzNzYKKwkubG9uZwkxMDcwOTU1NTExCisJLmxvbmcJMzk5OTA4ODg3OQorCS5sb25nCTEwMjU0ODYzMTcKKwkubG9uZwkxMjExNTE0ODgKKwkubG9uZwkxMDcwOTMyNjU0CisJLmxvbmcJMjE3MDg2NTQ5NworCS5sb25nCTEwMjY0NzM1ODQKKwkubG9uZwkyNjUyMzE5NzQ0CisJLmxvbmcJMTA3MDkwOTkyMAorCS5sb25nCTQ1MzY5NTY1MgorCS5sb25nCTMxNzM5MTY4MDkKKwkubG9uZwkzMjYyMjM2NjcyCisJLmxvbmcJMTA3MDg4NzMwOQorCS5sb25nCTE1NzgwMDA1MworCS5sb25nCTMxNzM5ODQyMDYKKwkubG9uZwk2MDEyMjExMjAKKwkubG9uZwkxMDcwODY0ODIwCisJLmxvbmcJMzk2ODkxNzY2MQorCS5sb25nCTEwMjM5OTI4ODYKKwkubG9uZwkxOTk5ODQzMzI4CisJLmxvbmcJMTA3MDg0MjQ1MAorCS5sb25nCTMwNTM4OTUwMDQKKwkubG9uZwkxMDI0OTk4MjI4CisJLmxvbmcJMTk5MjE2NzQyNAorCS5sb25nCTEwNzA4MjAxOTkKKwkubG9uZwkyOTY4NjE0ODU2CisJLmxvbmcJMTAyNDU1MjY1MworCS5sb25nCTM3ODg3MjYyNzIKKwkubG9uZwkxMDcwNzk4MDY1CisJLmxvbmcJMzU0MjE3MDgwOAorCS5sb25nCTMxNzM1NzMyNDIKKwkubG9uZwkyMDk0ODI5NTY4CisJLmxvbmcJMTA3MDc3NjA0OAorCS5sb25nCTEyNDY3NTgxMzIKKwkubG9uZwkxMDI2MjAyODc0CisJLmxvbmcJMjg4Njc1ODQwCisJLmxvbmcJMTA3MDc1NDE0NgorCS5sb25nCTM3NDczMjg5NTAKKwkubG9uZwkxMDI2MzMxNTg1CisJLmxvbmcJMTgyOTY4MTE1MgorCS5sb25nCTEwNzA3MzIzNTcKKwkubG9uZwkzMTI1MTk3NTQ2CisJLmxvbmcJMTAyNDEwMDMxOAorCS5sb25nCTE2NjY4NjkyNDgKKwkubG9uZwkxMDcwNzEwNjgxCisJLmxvbmcJMTM2MzY1NjExOQorCS5sb25nCTEwMjYzMzY0OTMKKwkubG9uZwkzNDE3MTEwNTI4CisJLmxvbmcJMTA3MDY4OTExNgorCS5sb25nCTQxNTQ3OTE1NTMKKwkubG9uZwkxMDI2MjY3ODUzCisJLmxvbmcJMjE4MzY1MzM3NgorCS5sb25nCTEwNzA2Njc2NjIKKwkubG9uZwkxNjcxODE5MjkyCisJLmxvbmcJMzE3Mzc4NTg3MAorCS5sb25nCTE3MzQ0MzQ4MTYKKwkubG9uZwkxMDcwNjQ2MzE3CisJLmxvbmcJMzczMDkxMDQ5CisJLmxvbmcJMTAyNTk3MjM2MworCS5sb25nCTE2MTU2ODE1MzYKKwkubG9uZwkxMDcwNjI1MDgwCisJLmxvbmcJMzg0NjUwODk3CisJLmxvbmcJMTAyMjkyNjA0MworCS5sb25nCTE0NDUzODIxNDQKKwkubG9uZwkxMDcwNjAzOTUwCisJLmxvbmcJMzQ0MzIwMzMwCisJLmxvbmcJMzE3MjM5NzE5NgorCS5sb25nCTE4MjM3MTUzMjgKKwkubG9uZwkxMDcwNTY5NzU2CisJLmxvbmcJMzM4OTg0MTIwMAorCS5sb25nCTEwMjUyMzE4NTIKKwkubG9uZwkzODM5Njg4NzA0CisJLmxvbmcJMTA3MDUyNzkxNworCS5sb25nCTE3MDY3OTA0MTcKKwkubG9uZwkzMTY3MzYzMzQ5CisJLmxvbmcJNDI5MzMzMjk5MgorCS5sb25nCTEwNzA0ODYyODYKKwkubG9uZwkxNjE0OTM1MDg4CisJLmxvbmcJMTAxOTM1MTU5MQorCS5sb25nCTI5NjY3MjA1MTIKKwkubG9uZwkxMDcwNDQ0ODYxCisJLmxvbmcJNDE0NTM5MzcxNworCS5sb25nCTMxNzM3MTE2NTgKKwkubG9uZwk0MDY2NzI5OTg0CisJLmxvbmcJMTA3MDQwMzYzOQorCS5sb25nCTE5NzQ5MjUwMjgKKwkubG9uZwkzMTcxNDM3MTgyCisJLmxvbmcJMzMzNzYyMTUwNAorCS5sb25nCTEwNzAzNjI2MTkKKwkubG9uZwkzMzE0OTUzMTcwCisJLmxvbmcJMzE2OTk3MTMxNAorCS5sb25nCTk0MzQ0ODA2NAorCS5sb25nCTEwNzAzMjE3OTkKKwkubG9uZwkxNDk4NjgyMDM4CisJLmxvbmcJMzE3Mzg2MjM0MAorCS5sb25nCTE0NjU2MzQ4MTYKKwkubG9uZwkxMDcwMjgxMTc2CisJLmxvbmcJMTMxOTk1MjgxMAorCS5sb25nCTMxNzE2OTM5NjUKKwkubG9uZwkxMDE1NzM0MjcyCisJLmxvbmcJMTA3MDI0MDc0OQorCS5sb25nCTEzNDc4MjE5MjkKKwkubG9uZwkzMTczNTQ0NTE1CisJLmxvbmcJMTE4MDAxNjY0CisJLmxvbmcJMTA3MDIwMDUxNgorCS5sb25nCTE3NTE0ODI3NDYKKwkubG9uZwkxMDI2MTM0MDkzCisJLmxvbmcJMzcwNzE3NDkxMgorCS5sb25nCTEwNzAxNjA0NzQKKwkubG9uZwkxNDg2OTQ2MTU5CisJLmxvbmcJMTAyMzkzMDkyMAorCS5sb25nCTM5NDYzODEzMTIKKwkubG9uZwkxMDcwMTIwNjIzCisJLmxvbmcJMjg2NzQwODA4MQorCS5sb25nCTMxNzEzNjgyNzYKKwkubG9uZwkxNjk5ODQ4MTkyCisJLmxvbmcJMTA3MDA4MDk2MQorCS5sb25nCTI1OTAxODcxMzkKKwkubG9uZwkxMDI1Mzc5ODAzCisJLmxvbmcJMjIzNTg0NjY1NgorCS5sb25nCTEwNzAwNDE0ODUKKwkubG9uZwkxODg4NTY4MDY5CisJLmxvbmcJMzE3Mjc1NDk2MAorCS5sb25nCTIzMzk3Mjk0MDgKKwkubG9uZwkxMDcwMDAyMTk0CisJLmxvbmcJMzg1MjIxNDc1MworCS5sb25nCTMxNzMzMjMxNDkKKwkubG9uZwkzMTk2ODUwMTc2CisJLmxvbmcJMTA2OTk2MzA4NgorCS5sb25nCTc0MjE0MTU2MAorCS5sb25nCTEwMjUxMDE3MDcKKwkubG9uZwkxODAwNjgzNTIwCisJLmxvbmcJMTA2OTkyNDE2MAorCS5sb25nCTM5NDk1MDA0NDQKKwkubG9uZwkzMTcyMTAyMTc5CisJLmxvbmcJMzgzNTgwMTYwMAorCS5sb25nCTEwNjk4ODU0MTMKKwkubG9uZwkzODQ4ODk1OTQzCisJLmxvbmcJMTAyNTkxMzgzMgorCS5sb25nCTIyMDEyMDI2ODgKKwkubG9uZwkxMDY5ODQ2ODQ1CisJLmxvbmcJMTQyNTkxMzQ2NAorCS5sb25nCTEwMjU4Njg2NjUKKwkubG9uZwkyNzc4Mjc5OTM2CisJLmxvbmcJMTA2OTgwODQ1MworCS5sb25nCTIxMjA4ODk2NzcKKwkubG9uZwkzMTczODMxMTI4CisJLmxvbmcJMjk1NDIwMzEzNgorCS5sb25nCTEwNjk3NzAyMzYKKwkubG9uZwk1OTIxNDcwODEKKwkubG9uZwkxMDE5NjIxMjg4CisJLmxvbmcJMjEwMTQxMTg0CisJLmxvbmcJMTA2OTczMjE5MworCS5sb25nCTM0MTQyNzUyMzMKKwkubG9uZwkxMDIzNjQ3MDg0CisJLmxvbmcJNzA5NDc2MzUyCisJLmxvbmcJMTA2OTY5NDMyMQorCS5sb25nCTI0MTMwMjcxNjQKKwkubG9uZwkxMDI0NDYyMTE1CisJLmxvbmcJMjExNjI4NDQxNgorCS5sb25nCTEwNjk2NTY2MTkKKwkubG9uZwkxMTQ0NTU5OTI0CisJLmxvbmcJMTAyNjMzNjY1NAorCS5sb25nCTIxODM2NTEzMjgKKwkubG9uZwkxMDY5NjE5MDg2CisJLmxvbmcJMzQ1OTA1NzY1MAorCS5sb25nCTEwMjU2MzQxNjgKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2OTU4MTcyMAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTczNTA4NTczCisJLmxvbmcJOTcwNzExMDQwCisJLmxvbmcJMTA2OTU0MTUyMQorCS5sb25nCTEzMzU5NTQxNzMKKwkubG9uZwkzMTczMzMyMTgyCisJLmxvbmcJMjE5ODQ3ODg0OAorCS5sb25nCTEwNjk0Njc0NDkKKwkubG9uZwkyOTUxMTAzOTY4CisJLmxvbmcJMzE3Mzg5MjIwMAorCS5sb25nCTE2Njk2MTE1MjAKKwkubG9uZwkxMDY5MzkzNzAzCisJLmxvbmcJNTMxMDQ0MTQ3CisJLmxvbmcJMTAyNTE0OTI0OAorCS5sb25nCTI5MTE0MzY4CisJLmxvbmcJMTA2OTMyMDI4MAorCS5sb25nCTMzMjc4MzEyNTEKKwkubG9uZwkxMDI1OTE4NjczCisJLmxvbmcJMjM3Njk0OTc2MAorCS5sb25nCTEwNjkyNDcxNzYKKwkubG9uZwk3Mzc2MzQ1MzMKKwkubG9uZwkzMTcyMTc2MDAwCisJLmxvbmcJMTA4NTM5MDg0OAorCS5sb25nCTEwNjkxNzQzOTAKKwkubG9uZwkzMTA4MjQzNDAwCisJLmxvbmcJMzE3MTgyODQwNgorCS5sb25nCTE1NjYxMzAxNzYKKwkubG9uZwkxMDY5MTAxOTE4CisJLmxvbmcJOTg1NDgzMjI2CisJLmxvbmcJMTAyNTcwODM4MAorCS5sb25nCTc5Mjc4MDgwMAorCS5sb25nCTEwNjkwMjk3NTgKKwkubG9uZwk0MTg0ODY2Mjk1CisJLmxvbmcJMTAyNDQyNjIwNAorCS5sb25nCTE4MzE1NjczNgorCS5sb25nCTEwNjg5NTc5MDcKKwkubG9uZwkyODQ1Njk5Mzc4CisJLmxvbmcJMTAyMjEwNzI3NworCS5sb25nCTEzMDE3ODI1MjgKKwkubG9uZwkxMDY4ODg2MzYyCisJLmxvbmcJMTAxMjczNTI2MgorCS5sb25nCTMxNzM4MDQyOTQKKwkubG9uZwkxNTYyNDExMDA4CisJLmxvbmcJMTA2ODgxNTEyMQorCS5sb25nCTIxOTcwODY3MDMKKwkubG9uZwkzMTcwMTg3ODEzCisJLmxvbmcJMjgxNTU0OTQ0MAorCS5sb25nCTEwNjg3NDQxODEKKwkubG9uZwkyNzgyNjEzMjA3CisJLmxvbmcJMTAyNjM0NTA1NAorCS5sb25nCTI3NTYxMjQ2NzIKKwkubG9uZwkxMDY4NjczNTQwCisJLmxvbmcJMjkyOTQ4NjIwNQorCS5sb25nCTMxNzMwMzc4MDAKKwkubG9uZwkzNTExMDUwMjQwCisJLmxvbmcJMTA2ODYwMzE5NQorCS5sb25nCTE0NDM3MzMxNDcKKwkubG9uZwkzMTczMzMxNTQ5CisJLmxvbmcJMzA0NzA0NzE2OAorCS5sb25nCTEwNjg1MzMxNDQKKwkubG9uZwkxODc5Njc0OTI0CisJLmxvbmcJMzE3MjQ1OTk5NworCS5sb25nCTMyMjE2Njc4NDAKKwkubG9uZwkxMDY4NDI3ODI1CisJLmxvbmcJMTMzODU4ODAyNworCS5sb25nCTMxNzE4MTU3NDIKKwkubG9uZwkzNDUzODYxODg4CisJLmxvbmcJMTA2ODI4ODg4MworCS5sb25nCTEyMDUzNDgzNTkKKwkubG9uZwkzMTcyNjI0NjI2CisJLmxvbmcJMzUwNjExMDQ2NAorCS5sb25nCTEwNjgxNTA1MTQKKwkubG9uZwk4OTMxMDUxOTgKKwkubG9uZwkxMDI1NTcxODY2CisJLmxvbmcJMzQ2MDEzNjk2CisJLmxvbmcJMTA2ODAxMjcxNAorCS5sb25nCTM0OTU1NjkwMjEKKwkubG9uZwkzMTcyNTYzMzQ5CisJLmxvbmcJNDA3NDAyOTA1NgorCS5sb25nCTEwNjc4NzU0NzYKKwkubG9uZwkzOTYxMTA2MzM4CisJLmxvbmcJMzE3MTA2NTU5NQorCS5sb25nCTM1NTk3ODQ0NDgKKwkubG9uZwkxMDY3NzM4Nzk4CisJLmxvbmcJMTk3NTM4NTM4NAorCS5sb25nCTMxNzM3ODMxNTUKKwkubG9uZwk3OTc3Njk3MjgKKwkubG9uZwkxMDY3NjAyNjc1CisJLmxvbmcJMzc2MDMwNTc4NworCS5sb25nCTEwMjYwNDc2NDIKKwkubG9uZwkyMzEzNjMzNzkyCisJLmxvbmcJMTA2NzQ2NzEwMQorCS5sb25nCTE1NTkzNTMxNzEKKwkubG9uZwkxMDIzNDgwMjU2CisJLmxvbmcJMzk2MDc2NjQ2NAorCS5sb25nCTEwNjcyMTM3NzgKKwkubG9uZwkxMDY3MzY1MTA3CisJLmxvbmcJMTAyNTg2NTkyNgorCS5sb25nCTY4NDI2MTM3NgorCS5sb25nCTEwNjY5NDQ4MDUKKwkubG9uZwk4NDQ3NjIxNjQKKwkubG9uZwkzMTczNjg3NDgyCisJLmxvbmcJNjMwNzE4NDY0CisJLmxvbmcJMTA2NjY3NjkwNQorCS5sb25nCTI0NTgyNjk2OTQKKwkubG9uZwkxMDI0MDMzMDgxCisJLmxvbmcJMTQ4NjA2MTU2OAorCS5sb25nCTEwNjY0MTAwNzAKKwkubG9uZwkxMTU1Mzc4NzQKKwkubG9uZwkzMTczMjQzOTk1CisJLmxvbmcJMjc0MzY2NDY0MAorCS5sb25nCTEwNjU4ODY3OTIKKwkubG9uZwkzNjY1MDk4MzA0CisJLmxvbmcJMzE3MzQ3MTYwNworCS5sb25nCTE5NzE5MTI3MDQKKwkubG9uZwkxMDY1MzU3MzMzCisJLmxvbmcJMjU3NzIxNDQ0MAorCS5sb25nCTMxNzE5OTM0NTEKKwkubG9uZwkxNDk4OTM5MzkyCisJLmxvbmcJMTA2NDMwNjY5MworCS5sb25nCTM0MDkwMzY5MjMKKwkubG9uZwkxMDI1NTk5MTUxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDY3ODU1NDI2CisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjIyOTI4MjMKKwkubG9uZwkyNDU0MjY3MDI2CisJLmxvbmcJMTA2OTY5NzMxNgorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTAzMDczMDEwMQorCS5sb25nCTMyMTczODA3MDIKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDcwMTc2NjY1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk1OTEwNAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTU5MTA0CisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA3MDE3NjY2NQorCS5sb25nCTI0NTQyNjcwMjYKKwkubG9uZwkxMDY5Njk3MzE2CisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjE5MgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3Nfc2luLlMgYi9saWJtL3g4Ni9zX3Npbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFlNmNiZDQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zX3Npbi5TCkBAIC0wLDAgKzEsOTA3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgIDEuIFJBTkdFIFJFRFVDVElPTgorLy8KKy8vICAgICBXZSBwZXJmb3JtIGFuIGluaXRpYWwgcmFuZ2UgcmVkdWN0aW9uIGZyb20gWCB0byByIHdpdGgKKy8vCisvLyAgICAgICAgICBYID1+PSBOICogcGkvMzIgKyByCisvLworLy8gICAgIHNvIHRoYXQgfHJ8IDw9IHBpLzY0ICsgZXBzaWxvbi4gV2UgcmVzdHJpY3QgaW5wdXRzIHRvIHRob3NlCisvLyAgICAgd2hlcmUgfE58IDw9IDkzMjU2MC4gQmV5b25kIHRoaXMsIHRoZSByYW5nZSByZWR1Y3Rpb24gaXMKKy8vICAgICBpbnN1ZmZpY2llbnRseSBhY2N1cmF0ZS4gRm9yIGV4dHJlbWVseSBzbWFsbCBpbnB1dHMsIAorLy8gICAgIGRlbm9ybWFsaXphdGlvbiBjYW4gb2NjdXIgaW50ZXJuYWxseSwgaW1wYWN0aW5nIHBlcmZvcm1hbmNlLgorLy8gICAgIFRoaXMgbWVhbnMgdGhhdCB0aGUgbWFpbiBwYXRoIGlzIGFjdHVhbGx5IG9ubHkgdGFrZW4gZm9yCisvLyAgICAgMl4tMjUyIDw9IHxYfCA8IDkwMTEyLgorLy8KKy8vICAgICBUbyBhdm9pZCBicmFuY2hlcywgd2UgcGVyZm9ybSB0aGUgcmFuZ2UgcmVkdWN0aW9uIHRvIGZ1bGwKKy8vICAgICBhY2N1cmFjeSBlYWNoIHRpbWUuCisvLworLy8gICAgICAgICAgWCAtIE4gKiAoUF8xICsgUF8yICsgUF8zKQorLy8KKy8vICAgICB3aGVyZSBQXzEgYW5kIFBfMiBhcmUgMzItYml0IG51bWJlcnMgKHNvIG11bHRpcGxpY2F0aW9uIGJ5IE4KKy8vICAgICBpcyBleGFjdCkgYW5kIFBfMyBpcyBhIDUzLWJpdCBudW1iZXIuIFRvZ2V0aGVyLCB0aGVzZQorLy8gICAgIGFwcHJveGltYXRlIHBpIHdlbGwgZW5vdWdoIGZvciBhbGwgY2FzZXMgaW4gdGhlIHJlc3RyaWN0ZWQKKy8vICAgICByYW5nZS4KKy8vCisvLyAgICAgVGhlIG1haW4gcmVkdWN0aW9uIHNlcXVlbmNlIGlzOgorLy8KKy8vICAgICAgICAgICAgIHkgPSAzMi9waSAqIHgKKy8vICAgICAgICAgICAgIE4gPSBpbnRlZ2VyKHkpCisvLyAgICAgKGNvbXB1dGVkIGJ5IGFkZGluZyBhbmQgc3VidHJhY3Rpbmcgb2ZmIFNISUZURVIpCisvLworLy8gICAgICAgICAgICAgbV8xID0gTiAqIFBfMQorLy8gICAgICAgICAgICAgbV8yID0gTiAqIFBfMgorLy8gICAgICAgICAgICAgcl8xID0geCAtIG1fMQorLy8gICAgICAgICAgICAgciA9IHJfMSAtIG1fMgorLy8gICAgICh0aGlzIHIgY2FuIGJlIHVzZWQgZm9yIG1vc3Qgb2YgdGhlIGNhbGN1bGF0aW9uKQorLy8KKy8vICAgICAgICAgICAgIGNfMSA9IHJfMSAtIHIKKy8vICAgICAgICAgICAgIG1fMyA9IE4gKiBQXzMKKy8vICAgICAgICAgICAgIGNfMiA9IGNfMSAtIG1fMgorLy8gICAgICAgICAgICAgYyA9IGNfMiAtIG1fMworLy8KKy8vICAgICAyLiBNQUlOIEFMR09SSVRITQorLy8KKy8vICAgICBUaGUgYWxnb3JpdGhtIHVzZXMgYSB0YWJsZSBsb29rdXAgYmFzZWQgb24gQiA9IE0gKiBwaSAvIDMyCisvLyAgICAgd2hlcmUgTSA9IE4gbW9kIDY0LiBUaGUgc3RvcmVkIHZhbHVlcyBhcmU6CisvLyAgICAgICBzaWdtYSAgICAgICAgICAgICBjbG9zZXN0IHBvd2VyIG9mIDIgdG8gY29zKEIpCisvLyAgICAgICBDX2hsICAgICAgICAgICAgICA1My1iaXQgY29zKEIpIC0gc2lnbWEKKy8vICAgICAgIFNfaGkgKyBTX2xvICAgICAgIDIgKiA1My1iaXQgc2luKEIpCisvLworLy8gICAgIFRoZSBjb21wdXRhdGlvbiBpcyBvcmdhbml6ZWQgYXMgZm9sbG93czoKKy8vCisvLyAgICAgICAgICBzaW4oQiArIHIgKyBjKSA9IFtzaW4oQikgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgciAqIChjb3MoQikgLSBzaWdtYSkgKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBzaW4oQikgKiBbY29zKHIgKyBjKSAtIDFdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgY29zKEIpICogW3NpbihyICsgYykgLSByXQorLy8KKy8vICAgICB3aGljaCBpcyBhcHByb3hpbWF0ZWx5OgorLy8KKy8vICAgICAgICAgIFtTX2hpICsgc2lnbWEgKiByXSArCisvLyAgICAgICAgICBDX2hsICogciArCisvLyAgICAgICAgICBTX2xvICsgU19oaSAqIFsoY29zKHIpIC0gMSkgLSByICogY10gKworLy8gICAgICAgICAgKENfaGwgKyBzaWdtYSkgKiBbKHNpbihyKSAtIHIpICsgY10KKy8vCisvLyAgICAgYW5kIHRoaXMgaXMgd2hhdCBpcyBhY3R1YWxseSBjb21wdXRlZC4gV2Ugc2VwYXJhdGUgdGhpcyBzdW0KKy8vICAgICBpbnRvIGZvdXIgcGFydHM6CisvLworLy8gICAgICAgICAgaGkgKyBtZWQgKyBwb2xzICsgY29ycgorLy8KKy8vICAgICB3aGVyZQorLy8KKy8vICAgICAgICAgIGhpICAgICAgID0gU19oaSArIHNpZ21hIHIKKy8vICAgICAgICAgIG1lZCAgICAgID0gQ19obCAqIHIKKy8vICAgICAgICAgIHBvbHMgICAgID0gU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICogKHNpbihyKSAtIHIpCisvLyAgICAgICAgICBjb3JyICAgICA9IFNfbG8gKyBjICogKChDX2hsICsgc2lnbWEpIC0gU19oaSAqIHIpCisvLworLy8gICAgIDMuIFBPTFlOT01JQUwKKy8vCisvLyAgICAgVGhlIHBvbHlub21pYWwgU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICoKKy8vICAgICAoc2luKHIpIC0gcikgY2FuIGJlIHJlYXJyYW5nZWQgZnJlZWx5LCBzaW5jZSBpdCBpcyBxdWl0ZQorLy8gICAgIHNtYWxsLCBzbyB3ZSBleHBsb2l0IHBhcmFsbGVsaXNtIHRvIHRoZSBmdWxsZXN0LgorLy8KKy8vICAgICAgICAgIHBzYzQgICAgICAgPSAgIFNDXzQgKiByXzEKKy8vICAgICAgICAgIG1zYzQgICAgICAgPSAgIHBzYzQgKiByCisvLyAgICAgICAgICByMiAgICAgICAgID0gICByICogcgorLy8gICAgICAgICAgbXNjMiAgICAgICA9ICAgU0NfMiAqIHIyCisvLyAgICAgICAgICByNCAgICAgICAgID0gICByMiAqIHIyCisvLyAgICAgICAgICBwc2MzICAgICAgID0gICBTQ18zICsgbXNjNAorLy8gICAgICAgICAgcHNjMSAgICAgICA9ICAgU0NfMSArIG1zYzIKKy8vICAgICAgICAgIG1zYzMgICAgICAgPSAgIHI0ICogcHNjMworLy8gICAgICAgICAgc2luY29zcG9scyA9ICAgcHNjMSArIG1zYzMKKy8vICAgICAgICAgIHBvbHMgICAgICAgPSAgIHNpbmNvc3BvbHMgKgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgPFNfaGkgKiByXjIgfCAoQ19obCArIHNpZ21hKSAqIHJeMz4KKy8vCisvLyAgICAgNC4gQ09SUkVDVElPTiBURVJNCisvLworLy8gICAgIFRoaXMgaXMgd2hlcmUgdGhlICJjIiBjb21wb25lbnQgb2YgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIHRha2VuIGludG8gYWNjb3VudDsgcmVjYWxsIHRoYXQganVzdCAiciIgaXMgdXNlZCBmb3IgbW9zdCBvZgorLy8gICAgIHRoZSBjYWxjdWxhdGlvbi4KKy8vCisvLyAgICAgICAgICAtYyAgID0gbV8zIC0gY18yCisvLyAgICAgICAgICAtZCAgID0gU19oaSAqIHIgLSAoQ19obCArIHNpZ21hKQorLy8gICAgICAgICAgY29yciA9IC1jICogLWQgKyBTX2xvCisvLworLy8gICAgIDUuIENPTVBFTlNBVEVEIFNVTU1BVElPTlMKKy8vCisvLyAgICAgVGhlIHR3byBzdWNjZXNzaXZlIGNvbXBlbnNhdGVkIHN1bW1hdGlvbnMgYWRkIHVwIHRoZSBoaWdoCisvLyAgICAgYW5kIG1lZGl1bSBwYXJ0cywgbGVhdmluZyBqdXN0IHRoZSBsb3cgcGFydHMgdG8gYWRkIHVwIGF0CisvLyAgICAgdGhlIGVuZC4KKy8vCisvLyAgICAgICAgICBycyAgICAgICAgPSAgc2lnbWEgKiByCisvLyAgICAgICAgICByZXNfaW50ICAgPSAgU19oaSArIHJzCisvLyAgICAgICAgICBrXzAgICAgICAgPSAgU19oaSAtIHJlc19pbnQKKy8vICAgICAgICAgIGtfMiAgICAgICA9ICBrXzAgKyBycworLy8gICAgICAgICAgbWVkICAgICAgID0gIENfaGwgKiByCisvLyAgICAgICAgICByZXNfaGkgICAgPSAgcmVzX2ludCArIG1lZAorLy8gICAgICAgICAga18xICAgICAgID0gIHJlc19pbnQgLSByZXNfaGkKKy8vICAgICAgICAgIGtfMyAgICAgICA9ICBrXzEgKyBtZWQKKy8vCisvLyAgICAgNi4gRklOQUwgU1VNTUFUSU9OCisvLworLy8gICAgIFdlIG5vdyBhZGQgdXAgYWxsIHRoZSBzbWFsbCBwYXJ0czoKKy8vCisvLyAgICAgICAgICByZXNfbG8gPSBwb2xzKGhpKSArIHBvbHMobG8pICsgY29yciArIGtfMSArIGtfMworLy8KKy8vICAgICBOb3cgdGhlIG92ZXJhbGwgcmVzdWx0IGlzIGp1c3Q6CisvLworLy8gICAgICAgICAgcmVzX2hpICsgcmVzX2xvCisvLworLy8gICAgIDcuIFNNQUxMIEFSR1VNRU5UUworLy8KKy8vICAgICBJZiB8eHwgPCBTTk4gKFNOTiBtZWFuaW5nIHRoZSBzbWFsbGVzdCBub3JtYWwgbnVtYmVyKSwgd2UKKy8vICAgICBzaW1wbHkgcGVyZm9ybSAwLjExMTExMTEgY2RvdHMgMTExMSAqIHguIEZvciBTTk4gPD0gfHh8LCB3ZQorLy8gICAgIGRvIDJeLTU1ICogKDJeNTUgKiB4IC0geCkuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBzaW4oTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luKElORikgPSBOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIHNpbgorRU5UUlkoc2luKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMjAsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDU2KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxMjMzNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDQyOTMsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG1vdnNkICAgICAyMTYwKCVlYngpLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyMjcyKCVlYngpLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMjI1NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBvcnBzICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG1vdnNkICAgICAyMTI4KCVlYngpLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgMjExMiglZWJ4KSwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBjdnR0c2Qyc2kgJXhtbTEsICVlZHgKKyAgICAgICAgY3Z0c2kyc2RsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRsICAgICAgJDE4NjUyMTYsICVlZHgKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDYzLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAyMDk2KCVlYngpLCAleG1tNQorICAgICAgICBsZWEgICAgICAgKCVlYngpLCAlZWF4CisgICAgICAgIHNobGwgICAgICAkNSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVheAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIDIxNDQoJWVieCksICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDgoJWVheCksICV4bW03CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgc3VicGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMjA2NCglZWJ4KSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAoJWVheCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDI0KCVlYXgpLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAyMDgwKCVlYngpLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgKCVlYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgMjA0OCglZWJ4KSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICA4KCVlYXgpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG1vdnNkICAgICA4KCVlYXgpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgIDE2KCVlYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTYsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgJXhtbTQsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBzaHJsICAgICAgJDQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyNjg0MzQ2ODUsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDIxOTIoJWVieCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgMjIwOCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIHN1YmwgICAgICAkMzIsICVlc3AKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbGVhICAgICAgIDQwKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCA4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAkMiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgMTIoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIF9fbGlibV9zaW5jb3NfaHVnZQorICAgICAgICBhZGRsICAgICAgJDMyLCAlZXNwCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBmbGRsICAgICAgMTI4KCVlc3ApCisgICAgICAgIGZtdWxsICAgICAyMjQwKCVlYngpCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDU2KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChzaW4pCisjIC0tIEVuZCAgc2luCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChzaW5sLCBzaW4pOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxODExNTA2NworCS5sb25nCTMyMTQxMjYzNDIKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMTA3MDEzNTQ4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkzMTYwNTY3MDY1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMzIxNjkxNTA0OAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTEwNzE1MjQ3MDEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEyNzk2ODA5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMzIxNzM5NjMyNworCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTEwNzE3NjEyMTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1NzUyMTU3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMzIxNzg4NjcxOAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTEwNzE5MjY1MTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEzNDUwNjAyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTEwNjk2MjYzMTYKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMTA3MjIxNzIxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjI2ODY5NDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkxMDY4MjQ0MjU1CisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTEwNzI2NTI5NTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MzI1NzgzCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTc3MTk5MjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkxMDY4NzI3NDU3CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTEwNzExNTI2MTAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2MDg3ODMxNworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTEwNjc4NDY2MzQKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkxMDcwNzY1MDYyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTMxNjE4MzgyMjEKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxODExNTA2NworCS5sb25nCTEwNjY2NDI2OTQKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMzIxNzYxOTEyOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDEzMDgzNDE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMTA2OTQzMTQwMAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTMyMTkwMDgzNDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwMjgwNDU3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMTA2OTkxMjY3OQorCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTMyMTkyNDQ4NTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjM1ODA1CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMTA3MDQwMzA3MAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTMyMTk0MTAxNjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwOTM0MjUwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTMyMTcxMDk5NjQKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMzIxOTcwMDg2NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTUyMDMyOTcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkzMjE1NzI3OTAzCisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTMyMjAxMzY1OTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxODA5NDMxCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzAyMzYyODEKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMzIxOTU2MjY1NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3OTkwOTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkzMjE2MjExMTA1CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTMyMTg2MzYyNTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMzM5NDY2OQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTMyMTUzMzAyODIKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkzMjE4MjQ4NzEwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwMTQzNTQ1NzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMzIwNzIwMTE4NAorCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTMyMTAxMzM4NjgKKwkubG9uZwkyNzczOTI3NzMyCisJLmxvbmcJMTA1MzIzNjcwNworCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTEwNTY1NzE4MDgKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzMjg5MzUzNworCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDY5MDk3NDY3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3NzE5NzczMzEKKwkubG9uZwk5OTYzNTAzNDYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDc2MTI1NDg4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAzNjQ5MjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDE1MDIxNTY4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMTA3MjY5MzI0NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjI4OAorCS5kYXRhCisJLmhpZGRlbiBfX2xpYm1fc2luY29zX2h1Z2UKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc190YW4uUyBiL2xpYm0veDg2L3NfdGFuLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2VlMjEwNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfdGFuLlMKQEAgLTAsMCArMSwxNzY2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gUG9seW5vbWlhbHMgY29lZmZpY2llbnRzIGFuZCBvdGhlciBjb25zdGFudHMuCisvLworLy8gTm90ZSB0aGF0IGluIHRoaXMgYWxnb3JpdGhtLCB0aGVyZSBpcyBhIGRpZmZlcmVudCBwb2x5bm9taWFsIGZvcgorLy8gZWFjaCBicmVha3BvaW50LCBzbyB0aGVyZSBhcmUgMzIgc2V0cyBvZiBwb2x5bm9taWFsIGNvZWZmaWNpZW50cworLy8gYXMgd2VsbCBhcyAzMiBpbnN0YW5jZXMgb2YgdGhlIG90aGVyIGNvbnN0YW50cy4KKy8vCisvLyBUaGUgcG9seW5vbWlhbCBjb2VmZmljaWVudHMgYW5kIGNvbnN0YW50cyBhcmUgb2Zmc2V0IGZyb20gdGhlIHN0YXJ0CisvLyBvZiB0aGUgbWFpbiBibG9jayBhcyBmb2xsb3dzOgorLy8KKy8vICAgMDogIGM4IHwgYzAKKy8vICAxNjogIGM5IHwgYzEKKy8vICAzMjogYzEwIHwgYzIKKy8vICA0ODogYzExIHwgYzMKKy8vICA2NDogYzEyIHwgYzQKKy8vICA4MDogYzEzIHwgYzUKKy8vICA5NjogYzE0IHwgYzYKKy8vIDExMjogYzE1IHwgYzcKKy8vIDEyODogVF9oaQorLy8gMTM2OiBUX2xvCisvLyAxNDQ6IFNpZ21hCisvLyAxNTI6IFRfaGwKKy8vIDE2MDogVGF1CisvLyAxNjg6IE1hc2sKKy8vIDE3NjogKGVuZCBvZiBibG9jaykKKy8vCisvLyBUaGUgdG90YWwgdGFibGUgc2l6ZSBpcyB0aGVyZWZvcmUgNTYzMiBieXRlcy4KKy8vCisvLyBOb3RlIHRoYXQgYzAgYW5kIGMxIGFyZSBhbHdheXMgemVyby4gV2UgY291bGQgdHJ5IHN0b3JpbmcKKy8vIG90aGVyIGNvbnN0YW50cyBoZXJlLCBhbmQganVzdCBsb2FkaW5nIHRoZSBsb3cgcGFydCBvZiB0aGUKKy8vIFNJTUQgcmVnaXN0ZXIgaW4gdGhlc2UgY2FzZXMsIGFmdGVyIGVuc3VyaW5nIHRoZSBoaWdoIHBhcnQKKy8vIGlzIHplcm8uCisvLworLy8gVGhlIGhpZ2hlciB0ZXJtcyBvZiB0aGUgcG9seW5vbWlhbCBhcmUgY29tcHV0ZWQgaW4gdGhlICpsb3cqCisvLyBwYXJ0IG9mIHRoZSBTSU1EIHJlZ2lzdGVyLiBUaGlzIGlzIHNvIHdlIGNhbiBvdmVybGFwIHRoZQorLy8gbXVsdGlwbGljYXRpb24gYnkgcl44IGFuZCB0aGUgdW5wYWNraW5nIG9mIHRoZSBvdGhlciBwYXJ0LgorLy8KKy8vIFRoZSBjb25zdGFudHMgYXJlOgorLy8gVF9oaSArIFRfbG8gPSBhY2N1cmF0ZSBjb25zdGFudCB0ZXJtIGluIHBvd2VyIHNlcmllcworLy8gU2lnbWEgKyBUX2hsID0gYWNjdXJhdGUgY29lZmZpY2llbnQgb2YgciBpbiBwb3dlciBzZXJpZXMgKFNpZ21hPTEgYml0KQorLy8gVGF1ID0gbXVsdGlwbGllciBmb3IgdGhlIHJlY2lwcm9jYWwsIGFsd2F5cyAtMSBvciAwCisvLworLy8gVGhlIGJhc2ljIHJlY29uc3RydWN0aW9uIGZvcm11bGEgdXNpbmcgdGhlc2UgY29uc3RhbnRzIGlzOgorLy8KKy8vIEhpZ2ggPSB0YXUgKiByZWNpcF9oaSArIHRfaGkKKy8vIE1lZCA9IChzZ24gKiByICsgdF9obCAqIHIpX2hpCisvLyBMb3cgPSAoc2duICogciArIHRfaGwgKiByKV9sbyArCisvLyAgICAgICB0YXUgKiByZWNpcF9sbyArIFRfbG8gKyAoVF9obCArIHNpZ21hKSAqIGMgKyBwb2wKKy8vCisvLyB3aGVyZSBwb2wgPSBjMCArIGMxICogciArIGMyICogcl4yICsgLi4uICsgYzE1ICogcl4xNQorLy8KKy8vIChjMCA9IGMxID0gMCwgYnV0IHVzaW5nIHRoZW0ga2VlcHMgU0lNRCByZWd1bGFyaXR5KQorLy8KKy8vIFdlIHRoZW4gZG8gYSBjb21wZW5zYXRlZCBzdW0gSGlnaCArIE1lZCwgYWRkIHRoZSBsb3cgcGFydHMgdG9nZXRoZXIKKy8vIGFuZCB0aGVuIGRvIHRoZSBmaW5hbCBzdW0uCisvLworLy8gSGVyZSByZWNpcF9oaSArIHJlY2lwX2xvIGlzIGFuIGFjY3VyYXRlIHJlY2lwcm9jYWwgb2YgdGhlIHJlbWFpbmRlcgorLy8gbW9kdWxvIHBpLzIKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHRhbihOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICB0YW4oSU5GKSA9IE5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICB0YW4oKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgdGFuCitFTlRSWSh0YW4pCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNTYoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE0MzY4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjIxNiwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbW92YXBkICAgIDU4NDAoJWVieCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICA1ODU2KCVlYngpLCAleG1tNgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICA1NzEyKCVlYngpLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA1NjMyKCVlYngpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIHVucGNraHBkICAleG1tNywgJXhtbTcKKyAgICAgICAgY3Z0dHNkMnNpICV4bW03LCAlZWR4CisgICAgICAgIGN2dHRwZDJkcSAleG1tMSwgJXhtbTEKKyAgICAgICAgY3Z0ZHEycGQgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA1NjY0KCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgNTcyOCglZWJ4KSwgJXhtbTUKKyAgICAgICAgYWRkbCAgICAgICQ0NjkyNDgsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDU2ODAoJWVieCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYW5kbCAgICAgICQzMSwgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2hsbCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YnBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIDU2OTYoJWVieCksICV4bW0xCisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIHNobGwgICAgICAkMiwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgc3VicGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgNTc0NCglZWJ4KSwgJXhtbTYKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWR4CisgICAgICAgIGxlYSAgICAgICAoJWVieCksICVlYXgKKyAgICAgICAgYW5kcGQgICAgIDU3NzYoJWVieCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgc3VicGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgc3VicGQgICAgICV4bW00LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTYoJWVheCksICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNworICAgICAgICBzdWJwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0OCglZWF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgOTYoJWVheCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICglZWF4KSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgIDMyKCVlYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHBkICAgICA4MCglZWF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTEyKCVlYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNjQoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgMTQ0KCVlYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHVucGNraHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMTQ0KCVlYXgpLCAleG1tNworICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAxNTIoJWVheCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgIDEzNiglZWF4KSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA1NzQ0KCVlYngpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIG1vdnNkICAgICAxNjgoJWVheCksICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgMTYwKCVlYXgpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIHN1YnNkICAgICAxMjgoJWVheCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2ODQzNDU1OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgNTgwOCglZWJ4KSwgJXhtbTMKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBtb3ZzZCAgICAgNTc5MiglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICA1ODA4KCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgJXhtbTMsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnEgICAgICA1NzEyKCVlYngpLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgdWNvbWlzZCAgIDU3NjAoJWVieCksICV4bW03CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBzdWJsICAgICAgJDMyLCAlZXNwCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGxlYSAgICAgICA0MCglZXNwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgOCglZXNwKQorICAgICAgICBtb3ZsICAgICAgJDIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsIDEyKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBfX2xpYm1fdGFuY290X2h1Z2UKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVzcAorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGZzdWJsICAgICAoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgNTYoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKHRhbikKKyMgLS0gRW5kICB0YW4KKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKHRhbmwsIHRhbik7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjg0NTg5MzA2CisJLmxvbmcJMTA2NjgyMDg1MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkxMDY1NDk0MjQzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjM2Mjg5NTA0CisJLmxvbmcJMTA2NDEzNTk5NworCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNjk2MTc0MjUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTE2MDQ3NjEzMQorCS5sb25nCTEwNjI3MjIxMDIKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkxMDY4MjEyNjY2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTMxMzAzODIzNQorCS5sb25nCTEwNjY3NDU3MzEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMTM4NzgzNDIKKwkubG9uZwkxMDY3MTUyNjE4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNjYzNDI2ODMzCisJLmxvbmcJMTA2NTcyNTI4MworCS5sb25nCTM2OTMyODQyNTEKKwkubG9uZwkxMDY5MTE4ODA4CisJLmxvbmcJNjUwODUyMjMyCisJLmxvbmcJMTA2NTg4MjM3NgorCS5sb25nCTE5OTYyNDUzODEKKwkubG9uZwkxMDcxMDAwMjY1CisJLmxvbmcJMjAwODc0NjE3MAorCS5sb25nCTEwNjQ2NjQxOTcKKwkubG9uZwkzMDU1ODQyNTkzCisJLmxvbmcJMTA2ODU3ODg0NgorCS5sb25nCTE0OTU0MDYzNDgKKwkubG9uZwkxMDY0NjUyNDM3CisJLmxvbmcJMjI2OTUzMDE1NworCS5sb25nCTEwNjk3MTEyMzUKKwkubG9uZwkyODU1NjM2OTYKKwkubG9uZwkxMDYzNTc2NDY1CisJLmxvbmcJMTA0Njg5NzQ0MAorCS5sb25nCTEwNjc3MDU4NjUKKwkubG9uZwkyMzM0Mjk3MzEKKwkubG9uZwkxMDYzNDUzMTUxCisJLmxvbmcJNTIyMDQ1OTU4CisJLmxvbmcJMTA2ODQ3NjU5MAorCS5sb25nCTIzNTQ3ODU2OTgKKwkubG9uZwkxMDY5MTAyNzc5CisJLmxvbmcJMTMxNzU5OTE0MQorCS5sb25nCTEwMTI0MzIxMzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI4MjgyMzAxMDUKKwkubG9uZwkxMDY1NjA2NjI2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE1MTI1NDU5NTUKKwkubG9uZwkxMDY4MTE5MDQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3MDQ4Njk4CisJLmxvbmcJMTA2NzkwOTQ1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjMwMDIwMDQ1MAorCS5sb25nCTEwNjcyNTQ3NjcKKwkubG9uZwkzNTkzMjUwMjk2CisJLmxvbmcJMTA3MDIzMzU2MQorCS5sb25nCTMwMDkzNjU1NDQKKwkubG9uZwkxMDY2OTAyMTE3CisJLmxvbmcJMTEyNzM3MzA1MAorCS5sb25nCTEwNzExNzM0NTcKKwkubG9uZwkzMDQ2MTAzMzA1CisJLmxvbmcJMTA2NjM3MTI5OQorCS5sb25nCTI0NTgzNDAyCisJLmxvbmcJMTA2OTcyMzk4OAorCS5sb25nCTQwODI1MTE3NTgKKwkubG9uZwkxMDY1OTE0MTk5CisJLmxvbmcJMzIyMzg4OTY5OQorCS5sb25nCTEwNzAwMjAzNjcKKwkubG9uZwk1NDg5Mjc5ODQKKwkubG9uZwkxMDY1NDE1NzU2CisJLmxvbmcJNTU4MDY1ODk3CisJLmxvbmcJMTA2ODk0OTQxOAorCS5sb25nCTY4MDA3MzMxNQorCS5sb25nCTEwNjQ5NDA3MjYKKwkubG9uZwkzODg4NzMyMDAKKwkubG9uZwkxMDY4OTQ0MjcwCisJLmxvbmcJMzc2MzY3OTU3NgorCS5sb25nCTEwNzAxNjc1NDEKKwkubG9uZwkxNDk3MzYwNDA0CisJLmxvbmcJMTAwOTcxMDU0NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNjQ5MzExNTIKKwkubG9uZwkxMDY3NzI5NDExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0Njc1ODI3ODIKKwkubG9uZwkxMDY5MjU2Mzg5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNjIxNTAwOTYKKwkubG9uZwkxMDY4OTQ2NDIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNzAyNzk0MjM3CisJLmxvbmcJMTA2ODU3OTE1MgorCS5sb25nCTM2MzE5MTkyOTEKKwkubG9uZwkxMDcwOTM2OTI2CisJLmxvbmcJMzQ1NjgyMTQxMworCS5sb25nCTEwNjgyMTcyMTgKKwkubG9uZwkyMDMxMzY2NDM4CisJLmxvbmcJMTA3MTQ5NTc0NQorCS5sb25nCTE1OTY2NjQwMjAKKwkubG9uZwkxMDY3Nzk5MjgxCisJLmxvbmcJMTUwOTAzODcwMQorCS5sb25nCTEwNzA2MDE2NDMKKwkubG9uZwk1ODMxNzE0NzcKKwkubG9uZwkxMDY3NTEwMTQ4CisJLmxvbmcJMzc4NTM0NDY4MgorCS5sb25nCTEwNzA2MTg0NzYKKwkubG9uZwkyNDAyMDM2MDQ4CisJLmxvbmcJMTA2NzA3NTczNgorCS5sb25nCTMyMzMwMTg0MTIKKwkubG9uZwkxMDY5OTEzMTg2CisJLmxvbmcJNDExMjgwNTY4CisJLmxvbmcJMTA2NjcxMDU1NgorCS5sb25nCTEwNjU1ODQxOTIKKwkubG9uZwkxMDY5NzQ3ODk2CisJLmxvbmcJODk1MjQ3MzI0CisJLmxvbmcJMTA3MDgxOTg0OAorCS5sb25nCTUwMDA3ODkwOQorCS5sb25nCTMxNjEyODg3ODEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTcyOTk4Mzg0MworCS5sb25nCTEwNjg5OTQxOTQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQ1ODc5NDU2MgorCS5sb25nCTEwNzAzOTg1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTc3Nzc0ODkKKwkubG9uZwkxMDcwMTM3NjM3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDI0MzU5NTE3CisJLmxvbmcJMTA2OTg3NjUzMQorCS5sb25nCTI2MTYwNDAyMzgKKwkubG9uZwkxMDcxNTgyOTM3CisJLmxvbmcJMTYwOTAyNDYzNgorCS5sb25nCTEwNjk2NzUwODgKKwkubG9uZwkyNTI5MjQwNTQ5CisJLmxvbmcJMTA3MTgzNjYzMworCS5sb25nCTE1MTAxMjg2MDAKKwkubG9uZwkxMDY5NDQwMTEzCisJLmxvbmcJMjI1MTY5NzE4NAorCS5sb25nCTEwNzEyNTM2ODcKKwkubG9uZwkxMjYyNzYxNDUzCisJLmxvbmcJMTA2OTE0Mjg1MAorCS5sb25nCTEyNjMwOTE4NTcKKwkubG9uZwkxMDcxMTkwNDYxCisJLmxvbmcJMzA0MzM4MzQ4NgorCS5sb25nCTEwNjg4ODUxOTEKKwkubG9uZwkyNDc2OTMyNDcwCisJLmxvbmcJMTA3MDg0MjAwMgorCS5sb25nCTM2NTk5OTUwMjgKKwkubG9uZwkxMDY4NjY5MjAwCisJLmxvbmcJODU1ODkxNzU1CisJLmxvbmcJMTA3MDY5Njg5NAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcxMjg0ODU3CisJLmxvbmcJMzA2MjYzMzU3NQorCS5sb25nCTEwMTQwMDg2MjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI1NTA5NDA0NzEKKwkubG9uZwkxMDY5OTM4MjAxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0MjI4MDcyOTcKKwkubG9uZwkxMDcxNjQwODQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTUxNjU4MDUzCisJLmxvbmcJMTA3MTQ5NDcxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJOTI5NjA3MDcxCisJLmxvbmcJMTA3MTM0NjM0MAorCS5sb25nCTEwMzcwNDkwMzQKKwkubG9uZwkxMDcyMDM3MzA1CisJLmxvbmcJMjc4NjkyODY1NworCS5sb25nCTEwNzEyMTUyODIKKwkubG9uZwkxNDQ3NDA2ODU5CisJLmxvbmcJMTA3MjI2NTIwOQorCS5sb25nCTM0OTA5NTIxMDcKKwkubG9uZwkxMDcxMDkwODUxCisJLmxvbmcJMzIwNTIzMjkxNgorCS5sb25nCTEwNzE5Njg2NTgKKwkubG9uZwkxMjk3MzQ0MzA0CisJLmxvbmcJMTA3MDk3NzEyMAorCS5sb25nCTEwNjYxMTA5NzYKKwkubG9uZwkxMDcxOTQ2MDM1CisJLmxvbmcJMzgwMzcyMTQ4MAorCS5sb25nCTEwNzA4NzEwODIKKwkubG9uZwkxNDk2NzU0MjI5CisJLmxvbmcJMTA3MTgwNzIwMQorCS5sb25nCTI5ODI1NTA2ODMKKwkubG9uZwkxMDcwNzczMjQzCisJLmxvbmcJNDAxNDQ0MTk4OQorCS5sb25nCTEwNzE3MzYyMjIKKwkubG9uZwk0MTk5NjgyMzYKKwkubG9uZwkxMDcxNzE3MDQ3CisJLmxvbmcJMzQ1MTI2NjUzOAorCS5sb25nCTMxNjM0NDQ4MTEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI5NjAyNjcyMzUKKwkubG9uZwkxMDcwNzQ1ODQxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTcyNDMyMjc2OAorCS5sb25nCTEwNzI4ODEzMDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTY0MzE1MzA0OAorCS5sb25nCTEwNzI5MDU4MTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyODUwNzk0NTgKKwkubG9uZwkxMDcyOTI4NTU4CisJLmxvbmcJMzkxMjUyNDczMworCS5sb25nCTEwNzI2MjI5ODMKKwkubG9uZwkxMTgzNjIyNzIKKwkubG9uZwkxMDcyOTUyNzU0CisJLmxvbmcJNDEwNzc2Nzk3MgorCS5sb25nCTEwNzI4Mjc0MDgKKwkubG9uZwkyNjg5NTAyODgzCisJLmxvbmcJMTA3Mjk3NjkyMgorCS5sb25nCTk0NjUyMzM0NworCS5sb25nCTEwNzI3NzI3NjYKKwkubG9uZwk1NzMyMDQxODkKKwkubG9uZwkxMDczMDAxNzYxCisJLmxvbmcJNTgxNTMxNTE4CisJLmxvbmcJMTA3MjgyNjM5MQorCS5sb25nCTEzODYyMzY1MjYKKwkubG9uZwkxMDczMDI2OTU5CisJLmxvbmcJMzcxODkwNTkwNQorCS5sb25nCTEwNzI4MzI4MjMKKwkubG9uZwkxMTQ1NTU4MTQwCisJLmxvbmcJMTA3MzA1MjY3MworCS5sb25nCTUxMzU3MjYzNworCS5sb25nCTEwNzI4NjE5NjkKKwkubG9uZwk3MTY3MDAwNDgKKwkubG9uZwkxMDcxOTk3MzY4CisJLmxvbmcJNTQ3MTI2NzY5CisJLmxvbmcJMTAxNTUyMzUyNQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTA5NzkwNzM5OAorCS5sb25nCTEwNzE0MjAxMjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzM0OTg5MjQ0MgorCS5sb25nCTEwNzQyOTAyMTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM5MTMxOTc0MDUKKwkubG9uZwkxMDc0NTAxMTgxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNDk0MDM0NTIyCisJLmxvbmcJMTA3NDczOTE3MAorCS5sb25nCTEyNjQ3Mzg3NjMKKwkubG9uZwkxMDczMDg0ODA0CisJLmxvbmcJMTUyMDI5MzkwNgorCS5sb25nCTEwNzQ4OTk2MzIKKwkubG9uZwkxOTU4OTM2NjAwCisJLmxvbmcJMTA3MzQxMTQ5MworCS5sb25nCTIxMzM2NDk2MzUKKwkubG9uZwkxMDc1MDUyMTcxCisJLmxvbmcJNDI3MDc0MDczMAorCS5sb25nCTEwNzM1NzQ3MDgKKwkubG9uZwkxNzI4OTMwMTg5CisJLmxvbmcJMTA3NTIyNDg0NAorCS5sb25nCTEzMDM5OTg1NTIKKwkubG9uZwkxMDczNzk5MTg2CisJLmxvbmcJNjE4NjExOTMzCisJLmxvbmcJMTA3NTQyMDI1NQorCS5sb25nCTE3Njk4MjgwNDYKKwkubG9uZwkxMDczOTM4NTQyCisJLmxvbmcJMjIwMDUzNzk4NgorCS5sb25nCTEwNzU2NDE0MjEKKwkubG9uZwk0MzMzNjExMTAKKwkubG9uZwkxMDc0MTA1MzY5CisJLmxvbmcJNzE5NTk1NjAwCisJLmxvbmcJMTA3MjMxNzE4NAorCS5sb25nCTI5NDUyNzIwNgorCS5sb25nCTMxNjIxNDAwODgKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTM4MTE3ODgyMTYKKwkubG9uZwkzMjE4NDAwNTUwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE3MDQzNTIxMDIKKwkubG9uZwkxMDc1OTQzMDAxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjg0NTg5MzA2CisJLmxvbmcJMTA3NjI1ODAzNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjIxMTI2NDI5MQorCS5sb25nCTEwNzY2NTkwMTAKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkxMDc3MDI4NTc5CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzQwOTEzNDkKKwkubG9uZwk4NzY5NDM2NzMKKwkubG9uZwkxMDc3MzUzNjIyCisJLmxvbmcJMjg2MzMxMTUzMQorCS5sb25nCTEwNzQ0NDA4NzQKKwkubG9uZwkyMzYyODk1MDQKKwkubG9uZwkxMDc3NzY3NDg1CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA3NDg2MDMwNQorCS5sb25nCTI4MDU0NzMzMTEKKwkubG9uZwkxMDc4MTE1Mjc4CisJLmxvbmcJOTU0NDM3MTgKKwkubG9uZwkxMDc1MTYzMjI3CisJLmxvbmcJMTE2MDQ3NjEzMQorCS5sb25nCTEwNzg0NTA3NDIKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkxMDc1NTUyNjk4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTMzMDE2NTk3MQorCS5sb25nCTMyMDc4NTA3NDUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNzUzNjYyMworCS5sb25nCTEwNTkxMDkwOTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0OTIxMjA4NDkKKwkubG9uZwkzMjA1MTUxNDc1CisJLmxvbmcJNjAyMTg1NzA1CisJLmxvbmcJMzIxNTY3ODA5MgorCS5sb25nCTc2MDQyMjk1OAorCS5sb25nCTEwNTYzMTI1OTcKKwkubG9uZwk1NTUxMjc4ODkKKwkubG9uZwkxMDY3NTQ1MjY2CisJLmxvbmcJMzEzOTc4NDEyNAorCS5sb25nCTMyMDI0NzA4MzcKKwkubG9uZwkzNjkwNTQ0MDE0CisJLmxvbmcJMzIxMzE1MDE3MQorCS5sb25nCTk1NzA3OTE1CisJLmxvbmcJMTA1MzYzNTQyOAorCS5sb25nCTQwMDMxMTQ0MDcKKwkubG9uZwkxMDY0NTgxNDEyCisJLmxvbmcJMjAzNDkyNjIzMQorCS5sb25nCTMxOTk3MTExNjEKKwkubG9uZwkzNzU5NTM2MDIzCisJLmxvbmcJMzIxMDU1OTk4OQorCS5sb25nCTM4MjY5MjgyMTQKKwkubG9uZwkxMDUwODkzODE5CisJLmxvbmcJMzgzNzk2MDc4NQorCS5sb25nCTEwNjE3OTAzNzkKKwkubG9uZwkxNTI2MzI1MjQ4CisJLmxvbmcJMzIxNzk2NzU2NgorCS5sb25nCTIzNTY0MjY1MjEKKwkubG9uZwkxMDI1NDIzNDU2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0NTc3Mjg5NzUKKwkubG9uZwkxMDcxMDg4Mjc2CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzOTg0NjI2MDgKKwkubG9uZwkzMjA3MzAzOTY4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjIwNTk4MworCS5sb25nCTEwNTg0NjEyMTMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTU2MjI2MjM4CisJLmxvbmcJMzIwNDUyODYxMgorCS5sb25nCTI3NTQ3MDY1NDEKKwkubG9uZwkzMjE1MzU5NTExCisJLmxvbmcJMjE4Nzc5OTgyMworCS5sb25nCTEwNTU2MzQ0MzcKKwkubG9uZwk3OTAzMjM3NDIKKwkubG9uZwkxMDY3NDAyNTg3CisJLmxvbmcJMTM3MjM4NTg0OAorCS5sb25nCTMyMDE2NTE0NzkKKwkubG9uZwk0MDk3MjkyNzE2CisJLmxvbmcJMzIxMjg1NjMwMgorCS5sb25nCTMzNDgyMTAzNTcKKwkubG9uZwkxMDUyODMwMDk5CisJLmxvbmcJMjQ0Mjc5NjQ2NgorCS5sb25nCTEwNjQzMzc2MDIKKwkubG9uZwk4NjI2MDgxNDIKKwkubG9uZwkzMTk4ODMwNzU0CisJLmxvbmcJMTcwMjk2MTUyCisJLmxvbmcJMzIxMDA2MDg2NworCS5sb25nCTM3NTU1NzE0MjgKKwkubG9uZwkxMDQ5OTMzMzQzCisJLmxvbmcJMzYxNDg2NjAwOAorCS5sb25nCTEwNjEzNjE2NzAKKwkubG9uZwk3MTk5Nzg0OTYKKwkubG9uZwkzMjE3NjY5MDk2CisJLmxvbmcJMTk5ODg0MjQ2NQorCS5sb25nCTMxNzQ3MDM5NzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3NDkxNTY2MDcKKwkubG9uZwkxMDcxMDQ4MjU4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTMxMjA0OTg2MzgKKwkubG9uZwkzMjA2NzQ5MzA0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNzczNTc4MTE0CisJLmxvbmcJMTA1ODAwOTMxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjAzMDc4MzY3NgorCS5sb25nCTMyMDM4MTc4NzMKKwkubG9uZwkyMjIzNjU0NTk4CisJLmxvbmcJMzIxNTA3MTkzNgorCS5sb25nCTI5NzYxMzQ2NTAKKwkubG9uZwkxMDU0OTg3MjQ0CisJLmxvbmcJNzA2MzkwMDY2CisJLmxvbmcJMTA2NzIxNzM4NgorCS5sb25nCTQyNTg0Mzc2MTUKKwkubG9uZwkzMjAwOTAwMzc4CisJLmxvbmcJMTA2NjI1Mjk3NQorCS5sb25nCTMyMTIzOTEyNjcKKwkubG9uZwk4MTU3Nzc1MTQKKwkubG9uZwkxMDUxOTg5NDYyCisJLmxvbmcJMzIwMjc0NTQ1NworCS5sb25nCTEwNjQwMTA2ODIKKwkubG9uZwkyNDkzNTU2Mzc1CisJLmxvbmcJMzE5ODAwNDc1MworCS5sb25nCTEwNDYyNDMyNTEKKwkubG9uZwkzMjA5Njc4OTcxCisJLmxvbmcJMjU5MzA3ODg0NgorCS5sb25nCTEwNDkwMTc3MTcKKwkubG9uZwkyNzYzOTYyMjc2CisJLmxvbmcJMTA2MDk3MDE2MQorCS5sb25nCTcwMTQ4MDk2MAorCS5sb25nCTMyMTczNzc3NDIKKwkubG9uZwkzMjA1ODYyMjMyCisJLmxvbmcJMzE3NDY2MDkxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI2NzAxNjgxMgorCS5sb25nCTEwNzEwMTU2NjQKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMjEwNzE1NTc5OAorCS5sb25nCTMyMDYxNjY4NzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NDI5OTIxMjkKKwkubG9uZwkxMDU3NDI0NTc4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxOTM2OTkyODExCisJLmxvbmcJMzIwMzIwNDQyNgorCS5sb25nCTE0ODUwNjM1NTkKKwkubG9uZwkzMjE0NjgyNjQzCisJLmxvbmcJMTQzMjkxNDU1MworCS5sb25nCTEwNTQzMTkzOTgKKwkubG9uZwkzOTk2MzgxNjU0CisJLmxvbmcJMTA2NzA3NTgyOAorCS5sb25nCTI4MzMwMjkyNTYKKwkubG9uZwkzMjAwMjIzNTQ1CisJLmxvbmcJMjg2NjA2Njg3MgorCS5sb25nCTMyMTE5ODI2NjIKKwkubG9uZwkyNDMyODg4NzM3CisJLmxvbmcJMTA1MTIzNDE3OAorCS5sb25nCTM2Njk3NjQ1NTkKKwkubG9uZwkxMDYzNzQ4MTM2CisJLmxvbmcJMjQ1ODQ5Njk1MgorCS5sb25nCTMxOTcxNzA3NzQKKwkubG9uZwkxOTQ4MjM0OTg5CisJLmxvbmcJMzIwOTA5ODE0NworCS5sb25nCTI4NDM2OTg3ODcKKwkubG9uZwkxMDQ4MTYzNTE5CisJLmxvbmcJMzM5ODA0MTQwNworCS5sb25nCTEwNjA1NTk3MjgKKwkubG9uZwkyODI5MjMwMDgwCisJLmxvbmcJMzIxNzA5MjExNQorCS5sb25nCTEwMzQwNDY0MzMKKwkubG9uZwkzMTc0MjcxOTAzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyOTg2NzUzMDUKKwkubG9uZwkxMDcwOTg5ODIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTQzNzYwMzIyMworCS5sb25nCTMyMDU1ODk3NjEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTc1OTMzMDM1MgorCS5sb25nCTEwNTcwNDg1MTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMxMDc0NjMzNjgKKwkubG9uZwkzMjAyNTA3OTg4CisJLmxvbmcJMzE0NDQ2NTE3NgorCS5sb25nCTMyMTQxOTE1MDAKKwkubG9uZwkyMjkwOTYxODEwCisJLmxvbmcJMTA1Mzg0MTAzNQorCS5sb25nCTE2MTgxNTMzNDAKKwkubG9uZwkxMDY2OTcxNTQ3CisJLmxvbmcJMzgzNjg2OTM5MworCS5sb25nCTMxOTk0MDAyNzIKKwkubG9uZwk1ODQwMzIxMTYKKwkubG9uZwkzMjExNDY5MjYxCisJLmxvbmcJMTI0NTcwNDM1OAorCS5sb25nCTEwNTA2MjY0NjIKKwkubG9uZwk0MjQ3NDg3NDM4CisJLmxvbmcJMTA2MzU2MTk0MworCS5sb25nCTE2NjkwMzQ5MjcKKwkubG9uZwkzMTk2Mjc0ODEyCisJLmxvbmcJMzg0NDIzMzQ5OAorCS5sb25nCTMyMDg2MjYzMjIKKwkubG9uZwkyNzA2OTU4NTI0CisJLmxvbmcJMTA0NzQxMTM3NAorCS5sb25nCTM4NTcxOTkwOTgKKwkubG9uZwkxMDYwMjgxNjQ3CisJLmxvbmcJMzU5MzkwNDEyOAorCS5sb25nCTMyMTY1OTA3MTkKKwkubG9uZwkzMjY3NTQ3ODM2CisJLmxvbmcJMzE3MjE2MzMyMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDA3NjcxMjIyNworCS5sb25nCTEwNzA5NzAyMTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzI5MDA5MDM0MAorCS5sb25nCTMyMDQ3OTM0ODUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2ODU3NjAzNjcKKwkubG9uZwkxMDU2NjY4MzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjU1MTYzOTQ5CisJLmxvbmcJMzIwMTY3NDkxNworCS5sb25nCTYyODc1MDU3NQorCS5sb25nCTMyMTM1NjY4NzIKKwkubG9uZwk2ODAxNDA1MDUKKwkubG9uZwkxMDUzMjk5Nzc3CisJLmxvbmcJMjk1NDQ2NDcwOQorCS5sb25nCTEwNjY5MDAwMjYKKwkubG9uZwk4MDMyMDE2MTkKKwkubG9uZwkzMTk4NTE2NDM1CisJLmxvbmcJMTQ2NjMxNTYzMQorCS5sb25nCTMyMTA4MzcxNjIKKwkubG9uZwkxNjExMjIwMTYzCisJLmxvbmcJMTA0OTk3MjQzOAorCS5sb25nCTI3NjYxODcyNTYKKwkubG9uZwkxMDYzNDM3ODk0CisJLmxvbmcJMTgwNDU3OTQ4NAorCS5sb25nCTMxOTUzMzE0OTEKKwkubG9uZwkzNjk1OTY5Mjg5CisJLmxvbmcJMzIwNzg1NDQxOAorCS5sb25nCTI2MTcyMzgzNzMKKwkubG9uZwkxMDQ2Njc1OTQ4CisJLmxvbmcJMzA5NTgzMDA4NAorCS5sb25nCTEwNjAwOTUzMzQKKwkubG9uZwkzNzg5NTcwMDQ4CisJLmxvbmcJMzIxNjAzNDkxNAorCS5sb25nCTIzODI2NTU5CisJLmxvbmcJMzE3MjA0ODA2MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzg3MDkzOTM4NgorCS5sb25nCTEwNzA5NTY0NjcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTU3MTc1ODc1OAorCS5sb25nCTMyMDM2NzI1MzUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAyNjM3MworCS5sb25nCTEwNTY0MTYzODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MTM3NjYyOTgKKwkubG9uZwkzMjAwNTIzMzI2CisJLmxvbmcJMjUwNzA2ODczNAorCS5sb25nCTMyMTI1MDIwMDQKKwkubG9uZwk0MDAwNjQ4ODE4CisJLmxvbmcJMTA1MzAwMzgwMworCS5sb25nCTI0NDY2MDczNDkKKwkubG9uZwkxMDY2ODU4MjU5CisJLmxvbmcJOTEyNjYyMTI0CisJLmxvbmcJMzE5NzMzMzAwMQorCS5sb25nCTEzNDk0ODk1MzcKKwkubG9uZwkzMjA5NzY1NjA4CisJLmxvbmcJMzQxMjk3MjYwNworCS5sb25nCTEwNDk2NDE0MDEKKwkubG9uZwkxNzIxMjgzMzI3CisJLmxvbmcJMTA2MzM2Njg1NQorCS5sb25nCTE0NjY2OTE4ODMKKwkubG9uZwkzMTk0MTE2NzQ2CisJLmxvbmcJMzg1MjUyODA5MgorCS5sb25nCTMyMDY3NjA4NjEKKwkubG9uZwkyODU0NDMyOTMKKwkubG9uZwkxMDQ2MTU4MzgwCisJLmxvbmcJMTc1ODczOTg5NAorCS5sb25nCTEwNTk4OTU0NDkKKwkubG9uZwkxODU4NzgxMTg0CisJLmxvbmcJMzIxNDk4NDIxMgorCS5sb25nCTM0NDc1NzU5NDgKKwkubG9uZwkxMDI0Njc1ODU1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjQyMDM4MDExCisJLmxvbmcJMTA3MDk0ODMyMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzM3NjExNDU0CisJLmxvbmcJMTA1NjMzNjUyNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM1OTQ3OTA1MjcKKwkubG9uZwkxMDUyOTExNjIxCisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2Njg0NDUyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzAzMDUxNjE4CisJLmxvbmcJMTA0OTQ1NjA1MAorCS5sb25nCTMxNTQxODc2MjMKKwkubG9uZwkxMDYzMzQzNzIyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTUyODA2MTc4OAorCS5sb25nCTEwNDU5NDQ5MTAKKwkubG9uZwkyNDY5NzE5ODE5CisJLmxvbmcJMTA1OTgzMTE1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTE1NzE3NTg3NTgKKwkubG9uZwkxMDU2MTg4ODg3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTMwMjYzNzMKKwkubG9uZwkxMDU2NDE2MzgxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxOTEzNzY2Mjk4CisJLmxvbmcJMTA1MzAzOTY3OAorCS5sb25nCTI1MDcwNjg3MzQKKwkubG9uZwkxMDY1MDE4MzU2CisJLmxvbmcJNDAwMDY0ODgxOAorCS5sb25nCTEwNTMwMDM4MDMKKwkubG9uZwkyNDQ2NjA3MzQ5CisJLmxvbmcJMTA2Njg1ODI1OQorCS5sb25nCTkxMjY2MjEyNAorCS5sb25nCTEwNDk4NDkzNTMKKwkubG9uZwkxMzQ5NDg5NTM3CisJLmxvbmcJMTA2MjI4MTk2MAorCS5sb25nCTM0MTI5NzI2MDcKKwkubG9uZwkxMDQ5NjQxNDAxCisJLmxvbmcJMTcyMTI4MzMyNworCS5sb25nCTEwNjMzNjY4NTUKKwkubG9uZwkxNDY2NjkxODgzCisJLmxvbmcJMTA0NjYzMzA5OAorCS5sb25nCTM4NTI1MjgwOTIKKwkubG9uZwkxMDU5Mjc3MjEzCisJLmxvbmcJMjg1NDQzMjkzCisJLmxvbmcJMTA0NjE1ODM4MAorCS5sb25nCTE3NTg3Mzk4OTQKKwkubG9uZwkxMDU5ODk1NDQ5CisJLmxvbmcJMTg1ODc4MTE4NAorCS5sb25nCTEwNjc1MDA1NjQKKwkubG9uZwkzNDQ3NTc1OTQ4CisJLmxvbmcJMzE3MjE1OTUwMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI0MjAzODAxMQorCS5sb25nCTEwNzA5NDgzMjAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzI5MDA5MDM0MAorCS5sb25nCTEwNTczMDk4MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2ODU3NjAzNjcKKwkubG9uZwkxMDU2NjY4MzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjU1MTYzOTQ5CisJLmxvbmcJMTA1NDE5MTI2OQorCS5sb25nCTYyODc1MDU3NQorCS5sb25nCTEwNjYwODMyMjQKKwkubG9uZwk2ODAxNDA1MDUKKwkubG9uZwkxMDUzMjk5Nzc3CisJLmxvbmcJMjk1NDQ2NDcwOQorCS5sb25nCTEwNjY5MDAwMjYKKwkubG9uZwk4MDMyMDE2MTkKKwkubG9uZwkxMDUxMDMyNzg3CisJLmxvbmcJMTQ2NjMxNTYzMQorCS5sb25nCTEwNjMzNTM1MTQKKwkubG9uZwkxNjExMjIwMTYzCisJLmxvbmcJMTA0OTk3MjQzOAorCS5sb25nCTI3NjYxODcyNTYKKwkubG9uZwkxMDYzNDM3ODk0CisJLmxvbmcJMTgwNDU3OTQ4NAorCS5sb25nCTEwNDc4NDc4NDMKKwkubG9uZwkzNjk1OTY5Mjg5CisJLmxvbmcJMTA2MDM3MDc3MAorCS5sb25nCTI2MTcyMzgzNzMKKwkubG9uZwkxMDQ2Njc1OTQ4CisJLmxvbmcJMzA5NTgzMDA4NAorCS5sb25nCTEwNjAwOTUzMzQKKwkubG9uZwkzNzg5NTcwMDQ4CisJLmxvbmcJMTA2ODU1MTI2NgorCS5sb25nCTIzODI2NTU5CisJLmxvbmcJMTAyNDU2NDQxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzg3MDkzOTM4NgorCS5sb25nCTEwNzA5NTY0NjcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJNDM3NjAzMjIzCisJLmxvbmcJMTA1ODEwNjExMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzU5MzMwMzUyCisJLmxvbmcJMTA1NzA0ODUxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzEwNzQ2MzM2OAorCS5sb25nCTEwNTUwMjQzNDAKKwkubG9uZwkzMTQ0NDY1MTc2CisJLmxvbmcJMTA2NjcwNzg1MgorCS5sb25nCTIyOTA5NjE4MTAKKwkubG9uZwkxMDUzODQxMDM1CisJLmxvbmcJMTYxODE1MzM0MAorCS5sb25nCTEwNjY5NzE1NDcKKwkubG9uZwkzODM2ODY5MzkzCisJLmxvbmcJMTA1MTkxNjYyNAorCS5sb25nCTU4NDAzMjExNgorCS5sb25nCTEwNjM5ODU2MTMKKwkubG9uZwkxMjQ1NzA0MzU4CisJLmxvbmcJMTA1MDYyNjQ2MgorCS5sb25nCTQyNDc0ODc0MzgKKwkubG9uZwkxMDYzNTYxOTQzCisJLmxvbmcJMTY2OTAzNDkyNworCS5sb25nCTEwNDg3OTExNjQKKwkubG9uZwkzODQ0MjMzNDk4CisJLmxvbmcJMTA2MTE0MjY3NAorCS5sb25nCTI3MDY5NTg1MjQKKwkubG9uZwkxMDQ3NDExMzc0CisJLmxvbmcJMzg1NzE5OTA5OAorCS5sb25nCTEwNjAyODE2NDcKKwkubG9uZwkzNTkzOTA0MTI4CisJLmxvbmcJMTA2OTEwNzA3MQorCS5sb25nCTMyNjc1NDc4MzYKKwkubG9uZwkxMDI0Njc5NjczCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0MDc2NzEyMjI3CisJLmxvbmcJMTA3MDk3MDIxNAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkyMTA3MTU1Nzk4CisJLmxvbmcJMTA1ODY4MzIyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjY0Mjk5MjEyOQorCS5sb25nCTEwNTc0MjQ1NzgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MzY5OTI4MTEKKwkubG9uZwkxMDU1NzIwNzc4CisJLmxvbmcJMTQ4NTA2MzU1OQorCS5sb25nCTEwNjcxOTg5OTUKKwkubG9uZwkxNDMyOTE0NTUzCisJLmxvbmcJMTA1NDMxOTM5OAorCS5sb25nCTM5OTYzODE2NTQKKwkubG9uZwkxMDY3MDc1ODI4CisJLmxvbmcJMjgzMzAyOTI1NgorCS5sb25nCTEwNTI3Mzk4OTcKKwkubG9uZwkyODY2MDY2ODcyCisJLmxvbmcJMTA2NDQ5OTAxNAorCS5sb25nCTI0MzI4ODg3MzcKKwkubG9uZwkxMDUxMjM0MTc4CisJLmxvbmcJMzY2OTc2NDU1OQorCS5sb25nCTEwNjM3NDgxMzYKKwkubG9uZwkyNDU4NDk2OTUyCisJLmxvbmcJMTA0OTY4NzEyNgorCS5sb25nCTE5NDgyMzQ5ODkKKwkubG9uZwkxMDYxNjE0NDk5CisJLmxvbmcJMjg0MzY5ODc4NworCS5sb25nCTEwNDgxNjM1MTkKKwkubG9uZwkzMzk4MDQxNDA3CisJLmxvbmcJMTA2MDU1OTcyOAorCS5sb25nCTI4MjkyMzAwODAKKwkubG9uZwkxMDY5NjA4NDY3CisJLmxvbmcJMTAzNDA0NjQzMworCS5sb25nCTEwMjY3ODgyNTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI5ODY3NTMwNQorCS5sb25nCTEwNzA5ODk4MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzEyMDQ5ODYzOAorCS5sb25nCTEwNTkyNjU2NTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3NzM1NzgxMTQKKwkubG9uZwkxMDU4MDA5MzEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMDMwNzgzNjc2CisJLmxvbmcJMTA1NjMzNDIyNQorCS5sb25nCTIyMjM2NTQ1OTgKKwkubG9uZwkxMDY3NTg4Mjg4CisJLmxvbmcJMjk3NjEzNDY1MAorCS5sb25nCTEwNTQ5ODcyNDQKKwkubG9uZwk3MDYzOTAwNjYKKwkubG9uZwkxMDY3MjE3Mzg2CisJLmxvbmcJNDI1ODQzNzYxNQorCS5sb25nCTEwNTM0MTY3MzAKKwkubG9uZwkxMDY2MjUyOTc1CisJLmxvbmcJMTA2NDkwNzYxOQorCS5sb25nCTgxNTc3NzUxNAorCS5sb25nCTEwNTE5ODk0NjIKKwkubG9uZwkzMjAyNzQ1NDU3CisJLmxvbmcJMTA2NDAxMDY4MgorCS5sb25nCTI0OTM1NTYzNzUKKwkubG9uZwkxMDUwNTIxMTA1CisJLmxvbmcJMTA0NjI0MzI1MQorCS5sb25nCTEwNjIxOTUzMjMKKwkubG9uZwkyNTkzMDc4ODQ2CisJLmxvbmcJMTA0OTAxNzcxNworCS5sb25nCTI3NjM5NjIyNzYKKwkubG9uZwkxMDYwOTcwMTYxCisJLmxvbmcJNzAxNDgwOTYwCisJLmxvbmcJMTA2OTg5NDA5NAorCS5sb25nCTMyMDU4NjIyMzIKKwkubG9uZwkxMDI3MTc3MjY3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjY3MDE2ODEyCisJLmxvbmcJMTA3MTAxNTY2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxMzk4NDYyNjA4CisJLmxvbmcJMTA1OTgyMDMyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjYyMDU5ODMKKwkubG9uZwkxMDU4NDYxMjEzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk1NjIyNjIzOAorCS5sb25nCTEwNTcwNDQ5NjQKKwkubG9uZwkyNzU0NzA2NTQxCisJLmxvbmcJMTA2Nzg3NTg2MworCS5sb25nCTIxODc3OTk4MjMKKwkubG9uZwkxMDU1NjM0NDM3CisJLmxvbmcJNzkwMzIzNzQyCisJLmxvbmcJMTA2NzQwMjU4NworCS5sb25nCTEzNzIzODU4NDgKKwkubG9uZwkxMDU0MTY3ODMxCisJLmxvbmcJNDA5NzI5MjcxNgorCS5sb25nCTEwNjUzNzI2NTQKKwkubG9uZwkzMzQ4MjEwMzU3CisJLmxvbmcJMTA1MjgzMDA5OQorCS5sb25nCTI0NDI3OTY0NjYKKwkubG9uZwkxMDY0MzM3NjAyCisJLmxvbmcJODYyNjA4MTQyCisJLmxvbmcJMTA1MTM0NzEwNgorCS5sb25nCTE3MDI5NjE1MgorCS5sb25nCTEwNjI1NzcyMTkKKwkubG9uZwkzNzU1NTcxNDI4CisJLmxvbmcJMTA0OTkzMzM0MworCS5sb25nCTM2MTQ4NjYwMDgKKwkubG9uZwkxMDYxMzYxNjcwCisJLmxvbmcJNzE5OTc4NDk2CisJLmxvbmcJMTA3MDE4NTQ0OAorCS5sb25nCTE5OTg4NDI0NjUKKwkubG9uZwkxMDI3MjIwMzI5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNzQ5MTU2NjA3CisJLmxvbmcJMTA3MTA0ODI1OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxMzMwMTY1OTcxCisJLmxvbmcJMTA2MDM2NzA5NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE3NTM2NjIzCisJLmxvbmcJMTA1OTEwOTA5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQ5MjEyMDg0OQorCS5sb25nCTEwNTc2Njc4MjcKKwkubG9uZwk2MDIxODU3MDUKKwkubG9uZwkxMDY4MTk0NDQ0CisJLmxvbmcJNzYwNDIyOTU4CisJLmxvbmcJMTA1NjMxMjU5NworCS5sb25nCTU1NTEyNzg4OQorCS5sb25nCTEwNjc1NDUyNjYKKwkubG9uZwkzMTM5Nzg0MTI0CisJLmxvbmcJMTA1NDk4NzE4OQorCS5sb25nCTM2OTA1NDQwMTQKKwkubG9uZwkxMDY1NjY2NTIzCisJLmxvbmcJOTU3MDc5MTUKKwkubG9uZwkxMDUzNjM1NDI4CisJLmxvbmcJNDAwMzExNDQwNworCS5sb25nCTEwNjQ1ODE0MTIKKwkubG9uZwkyMDM0OTI2MjMxCisJLmxvbmcJMTA1MjIyNzUxMworCS5sb25nCTM3NTk1MzYwMjMKKwkubG9uZwkxMDYzMDc2MzQxCisJLmxvbmcJMzgyNjkyODIxNAorCS5sb25nCTEwNTA4OTM4MTkKKwkubG9uZwkzODM3OTYwNzg1CisJLmxvbmcJMTA2MTc5MDM3OQorCS5sb25nCTE1MjYzMjUyNDgKKwkubG9uZwkxMDcwNDgzOTE4CisJLmxvbmcJMjM1NjQyNjUyMQorCS5sb25nCTMxNzI5MDcxMDQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQ1NzcyODk3NQorCS5sb25nCTEwNzEwODgyNzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTcwNDM1MjEwMgorCS5sb25nCTMyMjM0MjY2NDkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDc2MjU4MDM2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjExMjY0MjkxCisJLmxvbmcJMzIyNDE0MjY1OAorCS5sb25nCTAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNzcwMjg1NzkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3NDA5MTM0OQorCS5sb25nCTg3Njk0MzY3MworCS5sb25nCTMyMjQ4MzcyNzAKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMzIyMTkyNDUyMgorCS5sb25nCTIzNjI4OTUwNAorCS5sb25nCTEwNzc3Njc0ODUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDc0ODYwMzA1CisJLmxvbmcJMjgwNTQ3MzMxMQorCS5sb25nCTMyMjU1OTg5MjYKKwkubG9uZwk5NTQ0MzcxOAorCS5sb25nCTMyMjI2NDY4NzUKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA3ODQ1MDc0MgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNzU1NTI2OTgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzQ5ODkyNDQyCisJLmxvbmcJMzIyMTc3Mzg2MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzkxMzE5NzQwNQorCS5sb25nCTEwNzQ1MDExODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0OTQwMzQ1MjIKKwkubG9uZwkzMjIyMjIyODE4CisJLmxvbmcJMTI2NDczODc2MworCS5sb25nCTMyMjA1Njg0NTIKKwkubG9uZwkxNTIwMjkzOTA2CisJLmxvbmcJMTA3NDg5OTYzMgorCS5sb25nCTE5NTg5MzY2MDAKKwkubG9uZwkxMDczNDExNDkzCisJLmxvbmcJMjEzMzY0OTYzNQorCS5sb25nCTMyMjI1MzU4MTkKKwkubG9uZwk0MjcwNzQwNzMwCisJLmxvbmcJMzIyMTA1ODM1NgorCS5sb25nCTE3Mjg5MzAxODkKKwkubG9uZwkxMDc1MjI0ODQ0CisJLmxvbmcJMTMwMzk5ODU1MgorCS5sb25nCTEwNzM3OTkxODYKKwkubG9uZwk2MTg2MTE5MzMKKwkubG9uZwkzMjIyOTAzOTAzCisJLmxvbmcJMTc2OTgyODA0NgorCS5sb25nCTMyMjE0MjIxOTAKKwkubG9uZwkyMjAwNTM3OTg2CisJLmxvbmcJMTA3NTY0MTQyMQorCS5sb25nCTQzMzM2MTExMAorCS5sb25nCTEwNzQxMDUzNjkKKwkubG9uZwk3MTk1OTU2MDAKKwkubG9uZwkzMjE5ODAwODMyCisJLmxvbmcJMjk0NTI3MjA2CisJLmxvbmcJMTAxNDY1NjQ0MAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzgxMTc4ODIxNgorCS5sb25nCTMyMTg0MDA1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzI0MzIyNzY4CisJLmxvbmcJMzIyMDM2NDk1NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNjQzMTUzMDQ4CisJLmxvbmcJMTA3MjkwNTgxNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI4NTA3OTQ1OAorCS5sb25nCTMyMjA0MTIyMDYKKwkubG9uZwkzOTEyNTI0NzMzCisJLmxvbmcJMzIyMDEwNjYzMQorCS5sb25nCTExODM2MjI3MgorCS5sb25nCTEwNzI5NTI3NTQKKwkubG9uZwk0MTA3NzY3OTcyCisJLmxvbmcJMTA3MjgyNzQwOAorCS5sb25nCTI2ODk1MDI4ODMKKwkubG9uZwkzMjIwNDYwNTcwCisJLmxvbmcJOTQ2NTIzMzQ3CisJLmxvbmcJMzIyMDI1NjQxNAorCS5sb25nCTU3MzIwNDE4OQorCS5sb25nCTEwNzMwMDE3NjEKKwkubG9uZwk1ODE1MzE1MTgKKwkubG9uZwkxMDcyODI2MzkxCisJLmxvbmcJMTM4NjIzNjUyNgorCS5sb25nCTMyMjA1MTA2MDcKKwkubG9uZwkzNzE4OTA1OTA1CisJLmxvbmcJMzIyMDMxNjQ3MQorCS5sb25nCTExNDU1NTgxNDAKKwkubG9uZwkxMDczMDUyNjczCisJLmxvbmcJNTEzNTcyNjM3CisJLmxvbmcJMTA3Mjg2MTk2OQorCS5sb25nCTcxNjcwMDA0OAorCS5sb25nCTMyMTk0ODEwMTYKKwkubG9uZwk1NDcxMjY3NjkKKwkubG9uZwkzMTYzMDA3MTczCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxMDk3OTA3Mzk4CisJLmxvbmcJMTA3MTQyMDEyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNDIyODA3Mjk3CisJLmxvbmcJMzIxOTEyNDQ5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTE1MTY1ODA1MworCS5sb25nCTEwNzE0OTQ3MTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTkyOTYwNzA3MQorCS5sb25nCTMyMTg4Mjk5ODgKKwkubG9uZwkxMDM3MDQ5MDM0CisJLmxvbmcJMzIxOTUyMDk1MworCS5sb25nCTI3ODY5Mjg2NTcKKwkubG9uZwkxMDcxMjE1MjgyCisJLmxvbmcJMTQ0NzQwNjg1OQorCS5sb25nCTEwNzIyNjUyMDkKKwkubG9uZwkzNDkwOTUyMTA3CisJLmxvbmcJMzIxODU3NDQ5OQorCS5sb25nCTMyMDUyMzI5MTYKKwkubG9uZwkzMjE5NDUyMzA2CisJLmxvbmcJMTI5NzM0NDMwNAorCS5sb25nCTEwNzA5NzcxMjAKKwkubG9uZwkxMDY2MTEwOTc2CisJLmxvbmcJMTA3MTk0NjAzNQorCS5sb25nCTM4MDM3MjE0ODAKKwkubG9uZwkzMjE4MzU0NzMwCisJLmxvbmcJMTQ5Njc1NDIyOQorCS5sb25nCTMyMTkyOTA4NDkKKwkubG9uZwkyOTgyNTUwNjgzCisJLmxvbmcJMTA3MDc3MzI0MworCS5sb25nCTQwMTQ0NDE5ODkKKwkubG9uZwkxMDcxNzM2MjIyCisJLmxvbmcJNDE5OTY4MjM2CisJLmxvbmcJMzIxOTIwMDY5NQorCS5sb25nCTM0NTEyNjY1MzgKKwkubG9uZwkxMDE1OTYxMTYzCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyOTYwMjY3MjM1CisJLmxvbmcJMTA3MDc0NTg0MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDU4Nzk0NTYyCisJLmxvbmcJMzIxNzg4MjE5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1Nzc3NzQ4OQorCS5sb25nCTEwNzAxMzc2MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMjQzNTk1MTcKKwkubG9uZwkzMjE3MzYwMTc5CisJLmxvbmcJMjYxNjA0MDIzOAorCS5sb25nCTMyMTkwNjY1ODUKKwkubG9uZwkxNjA5MDI0NjM2CisJLmxvbmcJMTA2OTY3NTA4OAorCS5sb25nCTI1MjkyNDA1NDkKKwkubG9uZwkxMDcxODM2NjMzCisJLmxvbmcJMTUxMDEyODYwMAorCS5sb25nCTMyMTY5MjM3NjEKKwkubG9uZwkyMjUxNjk3MTg0CisJLmxvbmcJMzIxODczNzMzNQorCS5sb25nCTEyNjI3NjE0NTMKKwkubG9uZwkxMDY5MTQyODUwCisJLmxvbmcJMTI2MzA5MTg1NworCS5sb25nCTEwNzExOTA0NjEKKwkubG9uZwkzMDQzMzgzNDg2CisJLmxvbmcJMzIxNjM2ODgzOQorCS5sb25nCTI0NzY5MzI0NzAKKwkubG9uZwkzMjE4MzI1NjUwCisJLmxvbmcJMzY1OTk5NTAyOAorCS5sb25nCTEwNjg2NjkyMDAKKwkubG9uZwk4NTU4OTE3NTUKKwkubG9uZwkxMDcwNjk2ODk0CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTg3Njg1MDUKKwkubG9uZwkzMDYyNjMzNTc1CisJLmxvbmcJMzE2MTQ5MjI3MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU1MDk0MDQ3MQorCS5sb25nCTEwNjk5MzgyMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ2NzU4Mjc4MgorCS5sb25nCTMyMTY3NDAwMzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE2MjE1MDA5NgorCS5sb25nCTEwNjg5NDY0MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3MDI3OTQyMzcKKwkubG9uZwkzMjE2MDYyODAwCisJLmxvbmcJMzYzMTkxOTI5MQorCS5sb25nCTMyMTg0MjA1NzQKKwkubG9uZwkzNDU2ODIxNDEzCisJLmxvbmcJMTA2ODIxNzIxOAorCS5sb25nCTIwMzEzNjY0MzgKKwkubG9uZwkxMDcxNDk1NzQ1CisJLmxvbmcJMTU5NjY2NDAyMAorCS5sb25nCTMyMTUyODI5MjkKKwkubG9uZwkxNTA5MDM4NzAxCisJLmxvbmcJMzIxODA4NTI5MQorCS5sb25nCTU4MzE3MTQ3NworCS5sb25nCTEwNjc1MTAxNDgKKwkubG9uZwkzNzg1MzQ0NjgyCisJLmxvbmcJMTA3MDYxODQ3NgorCS5sb25nCTI0MDIwMzYwNDgKKwkubG9uZwkzMjE0NTU5Mzg0CisJLmxvbmcJMzIzMzAxODQxMgorCS5sb25nCTMyMTczOTY4MzQKKwkubG9uZwk0MTEyODA1NjgKKwkubG9uZwkxMDY2NzEwNTU2CisJLmxvbmcJMTA2NTU4NDE5MgorCS5sb25nCTEwNjk3NDc4OTYKKwkubG9uZwk4OTUyNDczMjQKKwkubG9uZwkzMjE4MzAzNDk2CisJLmxvbmcJNTAwMDc4OTA5CisJLmxvbmcJMTAxMzgwNTEzMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNzI5OTgzODQzCisJLmxvbmcJMTA2ODk5NDE5NAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNTEyNTQ1OTU1CisJLmxvbmcJMzIxNTYwMjY5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEyNzA0ODY5OAorCS5sb25nCTEwNjc5MDk0NTkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIzMDAyMDA0NTAKKwkubG9uZwkzMjE0NzM4NDE1CisJLmxvbmcJMzU5MzI1MDI5NgorCS5sb25nCTMyMTc3MTcyMDkKKwkubG9uZwkzMDA5MzY1NTQ0CisJLmxvbmcJMTA2NjkwMjExNworCS5sb25nCTExMjczNzMwNTAKKwkubG9uZwkxMDcxMTczNDU3CisJLmxvbmcJMzA0NjEwMzMwNQorCS5sb25nCTMyMTM4NTQ5NDcKKwkubG9uZwkyNDU4MzQwMgorCS5sb25nCTMyMTcyMDc2MzYKKwkubG9uZwk0MDgyNTExNzU4CisJLmxvbmcJMTA2NTkxNDE5OQorCS5sb25nCTMyMjM4ODk2OTkKKwkubG9uZwkxMDcwMDIwMzY3CisJLmxvbmcJNTQ4OTI3OTg0CisJLmxvbmcJMzIxMjg5OTQwNAorCS5sb25nCTU1ODA2NTg5NworCS5sb25nCTMyMTY0MzMwNjYKKwkubG9uZwk2ODAwNzMzMTUKKwkubG9uZwkxMDY0OTQwNzI2CisJLmxvbmcJMzg4ODczMjAwCisJLmxvbmcJMTA2ODk0NDI3MAorCS5sb25nCTM3NjM2Nzk1NzYKKwkubG9uZwkzMjE3NjUxMTg5CisJLmxvbmcJMTQ5NzM2MDQwNAorCS5sb25nCTMxNTcxOTQxOTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTY0OTMxMTUyCisJLmxvbmcJMTA2NzcyOTQxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzEzMDM4MjM1CisJLmxvbmcJMzIxNDIyOTM3OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAxMzg3ODM0MgorCS5sb25nCTEwNjcxNTI2MTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2NjM0MjY4MzMKKwkubG9uZwkzMjEzMjA4OTMxCisJLmxvbmcJMzY5MzI4NDI1MQorCS5sb25nCTMyMTY2MDI0NTYKKwkubG9uZwk2NTA4NTIyMzIKKwkubG9uZwkxMDY1ODgyMzc2CisJLmxvbmcJMTk5NjI0NTM4MQorCS5sb25nCTEwNzEwMDAyNjUKKwkubG9uZwkyMDA4NzQ2MTcwCisJLmxvbmcJMzIxMjE0Nzg0NQorCS5sb25nCTMwNTU4NDI1OTMKKwkubG9uZwkzMjE2MDYyNDk0CisJLmxvbmcJMTQ5NTQwNjM0OAorCS5sb25nCTEwNjQ2NTI0MzcKKwkubG9uZwkyMjY5NTMwMTU3CisJLmxvbmcJMTA2OTcxMTIzNQorCS5sb25nCTI4NTU2MzY5NgorCS5sb25nCTMyMTEwNjAxMTMKKwkubG9uZwkxMDQ2ODk3NDQwCisJLmxvbmcJMzIxNTE4OTUxMworCS5sb25nCTIzMzQyOTczMQorCS5sb25nCTEwNjM0NTMxNTEKKwkubG9uZwk1MjIwNDU5NTgKKwkubG9uZwkxMDY4NDc2NTkwCisJLmxvbmcJMjM1NDc4NTY5OAorCS5sb25nCTMyMTY1ODY0MjcKKwkubG9uZwkxMzE3NTk5MTQxCisJLmxvbmcJMzE1OTkxNTc4MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjgyODIzMDEwNQorCS5sb25nCTEwNjU2MDY2MjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzE5MzExODQKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3NjEyNTQ4OAorCS5sb25nCTAKKwkubG9uZwkxMTMxOTM3NzkyCisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkxNDEzNzU4OTc2CisJLmxvbmcJMTA2OTA5NzQ2NworCS5sb25nCTE0MTM3NDI1OTIKKwkubG9uZwkxMDY5MDk3NDY3CisJLmxvbmcJMTczNDgxOTg0MAorCS5sb25nCTMxNzQyMjk5NDUKKwkubG9uZwkxMjgwMDQ5MTUyCisJLmxvbmcJMTAyODAzMzU3MQorCS5sb25nCTkyMzIxOTAxOAorCS5sb25nCTk4NDEzMDI3MgorCS5sb25nCTU3NzAxMTg5CisJLmxvbmcJOTg4MzgzNzkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTE3MzQ4MTY2ODcKKwkubG9uZwkxMDI2NzQ2Mjk3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ3MDUxNTIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEzMDM2NDkyOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMTUwMjE1NjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDE3MTE4NzIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzY4ODc1NTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDU4NzIKKwkuZGF0YQorCS5oaWRkZW4gX19saWJtX3RhbmNvdF9odWdlCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NfdGFuaC5TIGIvbGlibS94ODYvc190YW5oLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzM3YmNiYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfdGFuaC5TCkBAIC0wLDAgKzEsMTM2MSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIHRhbmgoeCk9KGV4cCh4KS1leHAoLXgpKS8oZXhwKHgpK2V4cCgteCkpPSgxLWV4cCgtMip4KSkvKDErZXhwKC0yKngpKQorLy8KKy8vIExldCB8eHw9eEgreEwgKHVwcGVyIDI2IGJpdHMsIGxvd2VyIDI3IGJpdHMpCisvLyBsb2cyKGUpIHJvdW5kZWQgdG8gMjYgYml0cyAoaGlnaCBwYXJ0KSBwbHVzIGEgZG91YmxlIHByZWNpc2lvbiBsb3cgcGFydCBpcworLy8gICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vIExldCB4SCpMMkVIPWsrZityYCwgd2hlcmUgKGsrZikqMl44KjI9aW50KHhIKkwyRUgqMl45KSwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI4LCBrIGludGVnZXIKKy8vIDJeey1mfSBpcyBhcHByb3hpbWF0ZWQgYXMgVG5bZl0rRG5bZl0KKy8vIFRuIHN0b3JlcyB0aGUgaGlnaCA1MyBiaXRzLCBEbiBzdG9yZXMgKDJeey1mfS1UbltmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey05fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgZm9yIHx4fCBpbiBbMjMvNjQsMyoyXjcpCisvLyBlXnstMip8eHx9PTJeey1rLWZ9KjJeey1yfSB+IDJeey1rfSooVG4rRG4pKigxK3ApPShUMCtEMCkqKDErcCkKKy8vCisvLyBGb3IgfHh8IGluIFsyXnstNH0sMl41KToKKy8vICAgICAgICAgMl57LXJ9LTEgfiBwPWMxKnIrYzIqcl4yKy4uK2M1KnJeNQorLy8gICAgICBMZXQgUj0xLygxK1QwK3AqVDApLCB0cnVuY2F0ZWQgdG8gMzUgc2lnbmlmaWNhbnQgYml0cworLy8gIFI9MS8oMStUMCtEMCtwKihUMCtEMCkpKigxK2VwcyksIHxlcHN8PDJeey0zM30KKy8vICAxK1QwK0QwK3AqKFQwK0QwKT1LSCtLTCwgd2hlcmUKKy8vICAgICAgIEtIPSgxK1QwK2MxKnIqVDApX2hpZ2ggKGxlYWRpbmcgMTcgYml0cykKKy8vICAgICAgIEtMPVQwX2xvdytEMCsoYzEqcipUMClfbG93K2MxKnIqRDArKGMyKnJeMisuLmM1KnJeNSkqVDAKKy8vICBlcHMgfiAoUipLSC0xKStSKktMCisvLyAgMS8oMStUMCtEMCtwKihUMCtEMCkpIH4gUi1SKmVwcworLy8gIFRoZSByZXN1bHQgaXMgYXBwcm94aW1hdGVkIGFzICgxLVQwLUQwLShUMCtEMCkqcCkqKFItUiplcHMpCisvLyAgMS1UMC1EMC0oVDArRDApKnA9LSgoS0gtMikrS0wpCisvLyAgICBUaGUgcmVzdWx0IGlzIGZvcm1lZCBhcworLy8gICAgKEtILTIpKlIrKC0oS0gtMikqUiplcHMrKEtMKlItS0wqUiplcHMpKSwgd2l0aCB0aGUgY29ycmVjdCBzaWduCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0IGF0IHRoZSBlbmQKKy8vCisvLyBGb3IgfHh8IGluIFsyXnstNjR9LDJeey00fSk6CisvLyAgQSBUYXlsb3Igc2VyaWVzIGV4cGFuc2lvbiBpcyB1c2VkICAoeCtwMyp4XjMrLi4rcDEzKnheezEzfSkKKy8vCisvLyBGb3IgfHh8PDJeey02NH06ICB4IGlzIHJldHVybmVkCisvLworLy8gRm9yIHx4fD49Ml4zMjogcmV0dXJuICsvLTEKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHRhbmgoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgdGFuaChJTkYpID0gdGhhdCBJTkYKKy8vICB0YW5oKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIHRhbmgKK0VOVFJZKHRhbmgpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDAoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA0MjU2KCVlYngpLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MTEyKCVlYngpLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNDEyMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MDk2KCVlYngpLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYzMDQsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNDQsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGN2dHNkMnNpICAleG1tMywgJWVheAorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNDI2NCglZWJ4KSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgNDEyOCglZWJ4KSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDI1NSwgJWVjeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZhcGQgICAgKCVlYngsJWVjeCw4KSwgJXhtbTUKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBuZWdsICAgICAgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICA0MTQ0KCVlYngpLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgNDE2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDQyNjQoJWVieCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ3OCwgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBhbmRwZCAgICAgNDIyNCglZWJ4KSwgJXhtbTQKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNDI0MCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBhbmRwZCAgICAgNDIyNCglZWJ4KSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgNDI2NCglZWJ4KSwgJXhtbTcKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICA0MjcyKCVlYngpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIHhvcmwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkOTYwLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTEwNCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgbW92YXBkICAgIDQxNzYoJWVieCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgNDE5MiglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgNDIwOCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTY0NDgsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNzM5MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE1MzQ0LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0yLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG9ybCAgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMjQoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORCh0YW5oKQorIyAtLSBFbmQgIHRhbmgKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKHRhbmhsLCB0YW5oKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE3OTc5MjM4MDEKKwkubG9uZwkxMDcyNjg3NTc3CisJLmxvbmcJMTk1MDU0NzQyNworCS5sb25nCTEwMTMyMjkwNTkKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDcyNjgxOTIyCisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTIwNjcxODgKKwkubG9uZwk5MTU1OTI0NjgKKwkubG9uZwkxMDcyNjc2MjgyCisJLmxvbmcJMzUyOTQ3ODk0CisJLmxvbmcJMzE2MTAyNDM3MQorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDcyNjcwNjU3CisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTQ0NTAyNTkKKwkubG9uZwkzNTkyOTIyNQorCS5sb25nCTEwNzI2NjUwNDgKKwkubG9uZwkyODA5Nzg4MDQxCisJLmxvbmcJMzE1OTQzNjk2OAorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDcyNjU5NDUzCisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjM0MDUwNzQKKwkubG9uZwkyMDM4OTczNjg4CisJLmxvbmcJMTA3MjY1Mzg3NAorCS5sb25nCTg5Mjk0MTM3NAorCS5sb25nCTEwMTYwNDY0NTkKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MjY0ODMxMAorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTU2NjU2MzMKKwkubG9uZwkxMjIyNDcyMzA4CisJLmxvbmcJMTA3MjY0Mjc2MQorCS5sb25nCTEwNTQzNTc0NzAKKwkubG9uZwkzMTYxMDIxMDE4CisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MjYzNzIyNworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE1MjU5NTU3CisJLmxvbmcJNDgxNzA2MjgyCisJLmxvbmcJMTA3MjYzMTcwOAorCS5sb25nCTE2OTYwNzkxNzMKKwkubG9uZwkzMTYyNzEwNTI4CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzI2MjYyMDMKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNTkyNDcyNAorCS5sb25nCTI3MTk1MTU5MjAKKwkubG9uZwkxMDcyNjIwNzE0CisJLmxvbmcJMjc2MDMzMjk0MQorCS5sb25nCTEwMTUxMzc5MzMKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDcyNjE1MjQwCisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjMzMjk1MjMKKwkubG9uZwkyMjU2MzI1MjMwCisJLmxvbmcJMTA3MjYwOTc4MAorCS5sb25nCTU4MDExNzc0NgorCS5sb25nCTEwMTUzMTcyOTUKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MjYwNDMzNQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjM0NjI2OTEKKwkubG9uZwkyMDA5OTcwNDk2CisJLmxvbmcJMTA3MjU5ODkwNQorCS5sb25nCTIxNTkwMzk2NjUKKwkubG9uZwkzMTYyNTcyOTQ4CisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzI1OTM0ODkKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNTIwNzIwMgorCS5sb25nCTYxMDc1ODAwNgorCS5sb25nCTEwNzI1ODgwODkKKwkubG9uZwkxOTY1MjA5Mzk3CisJLmxvbmcJMzE2MTg2NjIzMgorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDcyNTgyNzAyCisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTQyMTAxODUKKwkubG9uZwk5OTEzNTg0ODIKKwkubG9uZwkxMDcyNTc3MzMxCisJLmxvbmcJODM4NzE1MDE5CisJLmxvbmcJMzE2MzE1NzY2OAorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzI1NzE5NzQKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2MzAxMDU5OQorCS5sb25nCTE3OTY4MzI1MzUKKwkubG9uZwkxMDcyNTY2NjMxCisJLmxvbmcJMzE3Njk1NTcxNgorCS5sb25nCTMxNjA1ODU1MTMKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDcyNTYxMzAzCisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjI2MTMxOTcKKwkubG9uZwkxNjc5NTU4MjMyCisJLmxvbmcJMTA3MjU1NTk4OQorCS5sb25nCTIzOTAzNDIyODcKKwkubG9uZwkzMTYzMzMzOTcwCisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzI1NTA2ODkKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNTIwODUzNQorCS5sb25nCTM1OTQxNTg4NjkKKwkubG9uZwkxMDcyNTQ1NDA0CisJLmxvbmcJMjQ1NjUyMTcwMAorCS5sb25nCTMxNjMyNTY1NjEKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzI1NDAxMzQKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNTgxNjk2MAorCS5sb25nCTE5MTI1NjE3ODEKKwkubG9uZwkxMDcyNTM0ODc3CisJLmxvbmcJMzE0NzQ5NTEwMgorCS5sb25nCTEwMTU2NzgyNTMKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDcyNTI5NjM1CisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjI1Nzg2MjUKKwkubG9uZwkzODk4Nzk1NzMxCisJLmxvbmcJMTA3MjUyNDQwNgorCS5sb25nCTEyNDk5OTQxNDQKKwkubG9uZwkxMDExODY5ODE4CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzI1MTkxOTIKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNDE2NDczOAorCS5sb25nCTM5MzkxNDgyNDYKKwkubG9uZwkxMDcyNTEzOTkyCisJLmxvbmcJMzIxMDM1MjE0OAorCS5sb25nCTEwMTUyNzQzMjMKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDcyNTA4ODA3CisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjMzNzU3MzkKKwkubG9uZwk3MjE5OTYxMzYKKwkubG9uZwkxMDcyNTAzNjM1CisJLmxvbmcJNTYzNzU0NzM0CisJLmxvbmcJMTAxNTM3MTMxOAorCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDcyNDk4NDc3CisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjMzMzk4MzEKKwkubG9uZwkxNTMyNzM0MzI0CisJLmxvbmcJMTA3MjQ5MzMzMworCS5sb25nCTMwOTQyMTY1MzUKKwkubG9uZwkzMTYzMTYyODU3CisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzI0ODgyMDMKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MjM2Mzk2MworCS5sb25nCTc3ODkwMTEwOQorCS5sb25nCTEwNzI0ODMwODcKKwkubG9uZwkyMjQ4MTgzOTU1CisJLmxvbmcJMzE2MTI2ODc1MQorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDcyNDc3OTg0CisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTMyNTMwNjcKKwkubG9uZwkxNDY0OTc2NjAzCisJLmxvbmcJMTA3MjQ3Mjg5NgorCS5sb25nCTM1MDcyOTI0MDUKKwkubG9uZwkzMTYxOTc3NTM0CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzI0Njc4MjEKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxMzAzNDE3MgorCS5sb25nCTIzMDc0NDI5OTUKKwkubG9uZwkxMDcyNDYyNzYwCisJLmxvbmcJMzE5MDExNzcyMQorCS5sb25nCTMxNjI0MDQ1MzkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDcyNDU3NzEzCisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTUxODc1MzMKKwkubG9uZwkyMDI5NzE0MjEwCisJLmxvbmcJMTA3MjQ1MjY3OQorCS5sb25nCTYxMzY2MDA3OQorCS5sb25nCTEwMTUwOTkxNDMKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MjQ0NzY1OQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE1NzYwMTgzCisJLmxvbmcJMzY1NzA2NTc3MgorCS5sb25nCTEwNzI0NDI2NTIKKwkubG9uZwkzOTkwMjU2MjMKKwkubG9uZwkzMTYyOTU3MDc4CisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzI0Mzc2NTkKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNDA0MjcyNQorCS5sb25nCTE2MzE2OTU2NzcKKwkubG9uZwkxMDcyNDMyNjgwCisJLmxvbmcJMjcxNzYzMzA3NgorCS5sb25nCTMxNjIzNDQwMjYKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MjQyNzcxNAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTYzNDg3NjkwCisJLmxvbmcJMzI4NzUyMzg0NworCS5sb25nCTEwNzI0MjI3NjEKKwkubG9uZwkxNjI1OTcxNTM5CisJLmxvbmcJMzE1NzAwOTk1NQorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDcyNDE3ODIyCisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTQxMTk4ODgKKwkubG9uZwkzMDgwMzUxNTE5CisJLmxvbmcJMTA3MjQxMjg5NgorCS5sb25nCTMzNzkxMjY3ODgKKwkubG9uZwkzMTU3MjE4MDAxCisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MjQwNzk4NAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjM0ODc0NDMKKwkubG9uZwk0MDYyNjYxMDkyCisJLmxvbmcJMTA3MjQwMzA4NAorCS5sb25nCTE0MjI2MTYwMDYKKwkubG9uZwkzMTYzMjU1MzE4CisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzIzOTgxOTgKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MDc1ODM1MQorCS5sb25nCTcwMzcxMDUwNgorCS5sb25nCTEwNzIzOTMzMjYKKwkubG9uZwkxMzg0NjYwODQ2CisJLmxvbmcJMTAxNTE5NTg5MQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDcyMzg4NDY2CisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjMzMjA3OTkKKwkubG9uZwkzNjQzMzM0ODkKKwkubG9uZwkxMDcyMzgzNjIwCisJLmxvbmcJMzkyMzczNzc0NAorCS5sb25nCTMxNjE0MjEzNzMKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MjM3ODc4NgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNTk1MjM0MjIKKwkubG9uZwkxODIyMDY3MDI2CisJLmxvbmcJMTA3MjM3Mzk2NgorCS5sb25nCTEyNDE5OTQ5NTYKKwkubG9uZwkxMDE1MzQwMjkwCisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MjM2OTE1OQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTYzMjgzMTg5CisJLmxvbmcJMzg2MTA1MDExMQorCS5sb25nCTEwNzIzNjQzNjQKKwkubG9uZwkyNTQ4OTM3NzMKKwkubG9uZwkzMTYyODEzMTgwCisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzIzNTk1ODMKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE1NTIxNzQxCisJLmxvbmcJOTc3MDIwNzg4CisJLmxvbmcJMTA3MjM1NDgxNQorCS5sb25nCTMwNjUxMDA1MTcKKwkubG9uZwkxMDE1NTQxNTYzCisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzIzNTAwNTkKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MjQ3NzEwOAorCS5sb25nCTU1NzE0OTg4MgorCS5sb25nCTEwNzIzNDUzMTcKKwkubG9uZwkzNjcyNzIwNzA5CisJLmxvbmcJMTAxNDUzNzI2NQorCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwkxMDcyMzQwNTg3CisJLmxvbmcJMjUxMTMzMjMzCisJLmxvbmcJMTAxNTA4NTc2OQorCS5sb25nCTE0MDUxNjkyNDEKKwkubG9uZwkxMDcyMzM1ODcwCisJLmxvbmcJMjk5ODUzOTY4OQorCS5sb25nCTMxNjI4MzA5NTEKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDcyMzMxMTY2CisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTU3OTQ1NTgKKwkubG9uZwkyMzMxMjcxMjUwCisJLmxvbmcJMTA3MjMyNjQ3NAorCS5sb25nCTgxMjA1NzQ0NgorCS5sb25nCTEwMTIyMDc0NDYKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MjMyMTc5NQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTYzMzY5MzI2CisJLmxvbmcJMjE1MjA3Mzk0NAorCS5sb25nCTEwNzIzMTcxMjkKKwkubG9uZwkxNDg2ODYwNTc2CisJLmxvbmcJMzE2MzIwMzQ1NgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDcyMzEyNDc1CisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTU0MjcxNjQKKwkubG9uZwkzOTg1NTUzNTk1CisJLmxvbmcJMTA3MjMwNzgzNAorCS5sb25nCTQwMDIxNDYwNjIKKwkubG9uZwkxMDE1ODM0MTM2CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzIzMDMyMDYKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2MjcyNDY4MQorCS5sb25nCTIzNjYxMDgzMTgKKwkubG9uZwkxMDcyMjk4NTkwCisJLmxvbmcJMjg2Nzk4NTEwMgorCS5sb25nCTMxNjE3NjIyNTQKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDcyMjkzOTg3CisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTM0NTgxMjIKKwkubG9uZwk0MjQzOTI5MTcKKwkubG9uZwkxMDcyMjg5Mzk2CisJLmxvbmcJMjc0OTIwMjk5NQorCS5sb25nCTMxNjI4Mzg3MTgKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MjI4NDgxNworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDEzNzQyNjYyCisJLmxvbmcJMTI5NzM1MDE1NworCS5sb25nCTEwNzIyODAyNTEKKwkubG9uZwkxMzA4MDIyMDQwCisJLmxvbmcJMzE2MzQxMjU1OAorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDcyMjc1Njk3CisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjI2MDAzODEKKwkubG9uZwkzODMzMjA5NTA2CisJLmxvbmcJMTA3MjI3MTE1NQorCS5sb25nCTI3MjI5MjA2ODQKKwkubG9uZwkxMDEzNzU0ODQyCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzIyNjY2MjYKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2MzM2MzQxOQorCS5sb25nCTI1OTE0NTMzNjMKKwkubG9uZwkxMDcyMjYyMTA5CisJLmxvbmcJMjEzMjM5NjE4MgorCS5sb25nCTMxNTkwNzQxOTgKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MjI1NzYwNAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYwODIwNjA0CisJLmxvbmcJNzI3Njg1MzQ5CisJLmxvbmcJMTA3MjI1MzExMgorCS5sb25nCTIwMzgyNDY4MDkKKwkubG9uZwkzMTYyMzU4NzQyCisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzIyNDg2MzEKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE1OTg0Mjc1OQorCS5sb25nCTE0MDM2NjIzMDYKKwkubG9uZwkxMDcyMjQ0MTYzCisJLmxvbmcJMjc4ODgwOTU5OQorCS5sb25nCTMxNjE2NzEwMDcKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDcyMjM5NzA3CisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2MzQxMjA4OQorCS5sb25nCTM0OTIyOTM3NzAKKwkubG9uZwkxMDcyMjM1MjYyCisJLmxvbmcJMjI0ODAzMjIxMAorCS5sb25nCTEwMTUzODY4MjYKKwkubG9uZwkyNTY4MzIwODIyCisJLmxvbmcJMTA3MjIzMDgzMAorCS5sb25nCTI3MzI4MjQ0MjgKKwkubG9uZwkxMDE0MzUyOTE1CisJLmxvbmcJMTU3NzYwODkyMQorCS5sb25nCTEwNzIyMjY0MTAKKwkubG9uZwkxODc1NDg5NTEwCisJLmxvbmcJMzE2Mjk2ODM5NAorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzIyMjIwMDIKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYwNDYyNjg2CisJLmxvbmcJMzEzNDU5Mjg4OAorCS5sb25nCTEwNzIyMTc2MDUKKwkubG9uZwk0MjMyMjY2ODYyCisJLmxvbmcJMTAxNTk5MTEzNAorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDcyMjEzMjIxCisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTU0NzQ2NzMKKwkubG9uZwkyNzU5MzUwMjg3CisJLmxvbmcJMTA3MjIwODg0OAorCS5sb25nCTExNDg1MjY2MzQKKwkubG9uZwkxMDE1ODk0OTMzCisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzIyMDQ0ODcKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNTY0OTQ3NAorCS5sb25nCTM2NDM5MDkxNzQKKwkubG9uZwkxMDcyMjAwMTM4CisJLmxvbmcJMzUzNzU4NjEwOQorCS5sb25nCTEwMTQzNTQ2NDcKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MjE5NTgwMQorCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTYzNTM5MTkyCisJLmxvbmcJMzk2MzE5NTIxCisJLmxvbmcJMTA3MjE5MTQ3NgorCS5sb25nCTQxNzI0MjA4MTYKKwkubG9uZwkzMTU5MDc0NjMyCisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzIxODcxNjIKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MjAzNTg0NAorCS5sb25nCTUxNTQ1NzUyNworCS5sb25nCTEwNzIxODI4NjAKKwkubG9uZwk4MzY3MDkzMzMKKwkubG9uZwkxMDE1NjUxMjI2CisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzIxNzg1NjkKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2MzM3NjY2OQorCS5sb25nCTI5MTYxNTcxNDUKKwkubG9uZwkxMDcyMTc0MjkwCisJLmxvbmcJMjE5NDg3NTY1CisJLmxvbmcJMTAxNTMwOTM2NworCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDcyMTcwMDIzCisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjI2NjgxNjYKKwkubG9uZwkyMjI0MTQ1NTUzCisJLmxvbmcJMTA3MjE2NTc2NworCS5sb25nCTM0ODI1MjIwMzAKKwkubG9uZwkzMTYxNDg5MTY5CisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MjE2MTUyMworCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEyOTQ4MjI2CisJLmxvbmcJMTY2MDkxMzM5MgorCS5sb25nCTEwNzIxNTcyOTAKKwkubG9uZwk0MjE4NTk5NjA0CisJLmxvbmcJMTAxNTEzNTcwNworCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MjE1MzA2OQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE2MDA5MjkyCisJLmxvbmcJMTU4NzgxNDAzCisJLmxvbmcJMTA3MjE0ODg1OQorCS5sb25nCTIyMjE0NjQ3MTIKKwkubG9uZwkzMTYzMjg2NDUzCisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzIxNDQ2NjAKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2MTcyNDI3OQorCS5sb25nCTk1MDgwMzcwMgorCS5sb25nCTEwNzIxNDA0NzMKKwkubG9uZwkxNjU1MzY0OTI2CisJLmxvbmcJMTAxNTIzNzAzMgorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDcyMTM2Mjk3CisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNTU3MjE1MgorCS5sb25nCTI5ODA4MDIwNTcKKwkubG9uZwkxMDcyMTMyMTMyCisJLmxvbmcJMzc4NjE5ODk2CisJLmxvbmcJMTAxNTc3MzMwMworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDcyMTI3OTc5CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjI1MTQ1MjEKKwkubG9uZwk5MDMzMzQ5MDkKKwkubG9uZwkxMDcyMTIzODM3CisJLmxvbmcJMTYzNjQ2MjEwOAorCS5sb25nCTEwMTUwMzk5OTcKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MjExOTcwNgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYyNTQ4NDQxCisJLmxvbmcJMjI2MzUzNTc1NAorCS5sb25nCTEwNzIxMTU1ODYKKwkubG9uZwk3NTIyMzM1ODYKKwkubG9uZwkzMTYyNjM5MDA4CisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzIxMTE0NzcKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MTU1MDQwNworCS5sb25nCTE3MjcyNzg3MjcKKwkubG9uZwkxMDcyMTA3MzgwCisJLmxvbmcJMzU2MjcxMDYyMworCS5sb25nCTEwMTE0NzE5NDAKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MjEwMzI5MworCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjE5OTYzMDMKKwkubG9uZwkyNTU1OTg0NjEzCisJLmxvbmcJMTA3MjA5OTIxOAorCS5sb25nCTI2NTI1NTU0NDIKKwkubG9uZwkzMTYyNTUyNjkyCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzIwOTUxNTQKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MDEyOTA4MgorCS5sb25nCTM3MjE2ODg2NDUKKwkubG9uZwkxMDcyMDkxMTAwCisJLmxvbmcJMzA2OTI3NjkzNworCS5sb25nCTEwMTU4Mzk0MDEKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MjA4NzA1OAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYwNTc0Mjk0CisJLmxvbmcJNDIwMTk3NzY2MgorCS5sb25nCTEwNzIwODMwMjYKKwkubG9uZwk3NDgzMzAyNTQKKwkubG9uZwkxMDEzNTk0MzU3CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMjk3OTk2MDEyMAorCS5sb25nCTEwNzIwNzQ5OTYKKwkubG9uZwkyNTk5MTA5NzI1CisJLmxvbmcJMTAxNDQ5ODQ5MworCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDcyMDcwOTk3CisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTE4OTAzNTAKKwkubG9uZwkzMzM5MjAzNTc0CisJLmxvbmcJMTA3MjA2NzAwOQorCS5sb25nCTE0ODM0OTc3ODAKKwkubG9uZwkzMTYyNDA4NzU0CisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzIwNjMwMzIKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2MzI3MjcxMworCS5sb25nCTQyNzM3NzA0MjMKKwkubG9uZwkxMDcyMDU5MDY1CisJLmxvbmcJMzM4MzE4MDgwOQorCS5sb25nCTMxNjMyMTg5MDEKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDcyMDU1MTEwCisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjIyNjE1NjQKKwkubG9uZwk0ODgxODg0MTMKKwkubG9uZwkxMDcyMDUxMTY1CisJLmxvbmcJMzE5OTgyMTAyOQorCS5sb25nCTEwMTU1NjQwNDgKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MjA0NzIzMAorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYyNzM1NTUzCisJLmxvbmcJMzg3MjI1Nzc4MAorCS5sb25nCTEwNzIwNDMzMDYKKwkubG9uZwkxMjUzNTkyMTAzCisJLmxvbmcJMTAxNTk1ODMzNAorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDcyMDM5MzkzCisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjI3NTk3NDYKKwkubG9uZwk1NTEzNDkxMDUKKwkubG9uZwkxMDcyMDM1NDkxCisJLmxvbmcJMzgyMTkxNjA1MAorCS5sb25nCTMxNjIxMDY1ODkKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDcyMDMxNTk5CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNTc4NTIwOQorCS5sb25nCTI0MjU5ODE4NDMKKwkubG9uZwkxMDcyMDI3NzE3CisJLmxvbmcJMjgzMDM5MDg1MQorCS5sb25nCTMxNjMzNDY1OTkKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MjAyMzg0NgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDA5NTM1NzcxCisJLmxvbmcJNDIyMjEyMjQ5OQorCS5sb25nCTEwNzIwMTk5ODUKKwkubG9uZwkxMjc3Mzc4MDc0CisJLmxvbmcJMzE2MzI1NjczNworCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDcyMDE2MTM1CisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE1NDI3NjYwCisJLmxvbmcJNjcxMDI1MTAwCisJLmxvbmcJMTA3MjAxMjI5NgorCS5sb25nCTM4MzIwMTQzNTEKKwkubG9uZwkzMTYzMDIyMDMwCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzIwMDg0NjYKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNDE0MjQzMworCS5sb25nCTM2ODkwNzE4MjMKKwkubG9uZwkxMDcyMDA0NjQ3CisJLmxvbmcJMjMyMTAwNDk5NgorCS5sb25nCTMxNjI1NTI3MTYKKwkubG9uZwk5MTc4NDE4ODIKKwkubG9uZwkxMDcyMDAwODM5CisJLmxvbmcJMTg3MTU1NjUKKwkubG9uZwkxMDE1NjU5MzA4CisJLmxvbmcJMzcyMzAzODkzMAorCS5sb25nCTEwNzE5OTcwNDAKKwkubG9uZwkzNzg0NjUyNjQKKwkubG9uZwkzMTYyNTY5NTgyCisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzE5OTMyNTIKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MjMzNTM4OAorCS5sb25nCTQxMDk4MDY4ODcKKwkubG9uZwkxMDcxOTg5NDc0CisJLmxvbmcJNDIyNDAzOTY2CisJLmxvbmcJMTAxNDQ2OTIyOQorCS5sb25nCTE0NTMxNTAwODIKKwkubG9uZwkxMDcxOTg1NzA3CisJLmxvbmcJNDk4MTU0NjY5CisJLmxvbmcJMzE2MTQ4ODA2MgorCS5sb25nCTM4OTY0NjMwODcKKwkubG9uZwkxMDcxOTgxOTQ5CisJLmxvbmcJMTEzOTc5Nzg3MworCS5sb25nCTMxNjEyMzM4MDUKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MTk3ODIwMgorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYyNDcwMDIxCisJLmxvbmcJMjEzNTI0MTE5OAorCS5sb25nCTEwNzE5NzQ0NjUKKwkubG9uZwkxMjM2NzQ3ODcxCisJLmxvbmcJMTAxMzU4OTE0NworCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDcxOTcwNzM4CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjI4MTMxOTMKKwkubG9uZwkyMTc4NDYwNjcxCisJLmxvbmcJMTA3MTk2NzAyMQorCS5sb25nCTc3Nzg3ODA5OAorCS5sb25nCTMxNjI4NDI0OTMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MTk2MzMxNAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE1NjA2NDkxCisJLmxvbmcJMzA4ODU2NDUwMAorCS5sb25nCTEwNzE5NTk2MTcKKwkubG9uZwkxNzYyMzExNTE3CisJLmxvbmcJMTAxNTA0NTY3MworCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDcxOTU1OTMwCisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTM3OTM2ODcKKwkubG9uZwkzOTMzMDU5MDMxCisJLmxvbmcJMTA3MTk1MjI1MworCS5sb25nCTIxMzMzNjY3NjgKKwkubG9uZwkzMTYxNTMxODMyCisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzE5NDg1ODYKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNTY2MzQ1OAorCS5sb25nCTM3ODQ0ODY2MTAKKwkubG9uZwkxMDcxOTQ0OTI5CisJLmxvbmcJMTU4MTg4MzA0MAorCS5sb25nCTMxNjE2OTg5NTMKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3MTk0MTI4MgorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDEzMTcwNTk1CisJLmxvbmcJMTcyMDM5ODM5MQorCS5sb25nCTEwNzE5Mzc2NDUKKwkubG9uZwkzOTgwNjc4OTYzCisJLmxvbmcJMzE2MzMwMDA4MAorCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcxOTM0MDE3CisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTU4NDU5NjMKKwkubG9uZwkxMTE4Mjk0NTc4CisJLmxvbmcJMTA3MTkzMDQwMAorCS5sb25nCTIxOTc0OTU2OTQKKwkubG9uZwkzMTU5OTA5NDAxCisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzE5MjY3OTIKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTAzNDI3NzgKKwkubG9uZwkxMDY1NjYyOTMyCisJLmxvbmcJMTA3MTkyMzE5NAorCS5sb25nCTI1MzM2NzA5MTUKKwkubG9uZwkxMDE0NTMwMjM4CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzE5MTk2MDUKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MTU3MzM0MQorCS5sb25nCTY1NDkxOTMwNgorCS5sb25nCTEwNzE5MTYwMjcKKwkubG9uZwkzMjMyOTYxNzU3CisJLmxvbmcJMzE2MzA0NzQ2OQorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzE5MTI0NTgKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTU5MjkwNzI5CisJLmxvbmcJMzI3ODM0ODMyNAorCS5sb25nCTEwNzE5MDg4OTgKKwkubG9uZwkzMDY5NDk3NDE2CisJLmxvbmcJMTAxNDc1MDcxMgorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3MTkwNTM0OQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTYzMDE3MjUxCisJLmxvbmcJMzc0MzE3NTAyOQorCS5sb25nCTEwNzE5MDE4MDgKKwkubG9uZwkyMDcyODEyNDkwCisJLmxvbmcJMzE2MjE3NTA3NQorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcxODk4Mjc4CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNDY4NDE2OQorCS5sb25nCTExNTY0NDA0MzUKKwkubG9uZwkxMDcxODk0NzU3CisJLmxvbmcJMjM1MTQ1MTI0OQorCS5sb25nCTEwMTM5NjcwNTYKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MTg5MTI0NQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjM0ODgyNDgKKwkubG9uZwkzMjE5OTQyNjQ0CisJLmxvbmcJMTA3MTg4Nzc0MworCS5sb25nCTM3OTg5OTA2MTYKKwkubG9uZwkxMDE1MzY4ODA2CisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MTg4NDI1MQorCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYwNzk0MTY2CisJLmxvbmcJNDYwNDA3MDIzCisJLmxvbmcJMTA3MTg4MDc2OAorCS5sb25nCTQyMzcxNzUwOTIKKwkubG9uZwkzMTYzMTM4NDY5CisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzE4NzcyOTQKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2MzQ2MTAwNQorCS5sb25nCTU4OTE5ODY2NgorCS5sb25nCTEwNzE4NzM4MzAKKwkubG9uZwkyNjY0MzQ2MTcyCisJLmxvbmcJMzE2MzE1Nzk2MgorCS5sb25nCTkyNjU5MTQzNQorCS5sb25nCTEwNzE4NzAzNzUKKwkubG9uZwkzMjA4ODMzNzYyCisJLmxvbmcJMzE2MjkxMzUxNAorCS5sb25nCTI3MzI0OTI4NTkKKwkubG9uZwkxMDcxODY2OTI5CisJLmxvbmcJMjY5MTQ3OTY0NgorCS5sb25nCTMxNjIyNTU2ODQKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MTg2MzQ5MworCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYyMjAxMzI2CisJLmxvbmcJMTcyNjIxNjc0OQorCS5sb25nCTEwNzE4NjAwNjYKKwkubG9uZwkyNDY2ODA4MjI4CisJLmxvbmcJMzE2MTY3NjQwNQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcxODU2NjQ4CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTUyMjgxOTMKKwkubG9uZwkxMDAwOTI1NzQ2CisJLmxvbmcJMTA3MTg1MzI0MAorCS5sb25nCTEwMTg0OTE2NzIKKwkubG9uZwkzMTYzMzA5NTQ0CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzE4NDk4NDAKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNDY2ODUxOQorCS5sb25nCTM5OTE4NDM1ODEKKwkubG9uZwkxMDcxODQ2NDUwCisJLmxvbmcJNDA5Mjg1MzQ1NworCS5sb25nCTEwMTQ1ODU3NjMKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcxODQzMDcwCisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTQ0Mjg3NzgKKwkubG9uZwkxMjUzOTM1MjExCisJLmxvbmcJMTA3MTgzOTY5OAorCS5sb25nCTEzOTUzODI5MzEKKwkubG9uZwkzMTU5NzAyNjEzCisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzE4MzYzMzUKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxMzA0MTY3OQorCS5sb25nCTUyNjY1MjgwOQorCS5sb25nCTEwNzE4MzI5ODIKKwkubG9uZwk0MjIzNDU5NzM2CisJLmxvbmcJMTAxNTg3OTM3NQorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcxODI5NjM3CisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTUwMjIxNTEKKwkubG9uZwk5NjQxMDcwNTUKKwkubG9uZwkxMDcxODI2MzAyCisJLmxvbmcJMjgwMDQzOTU4OAorCS5sb25nCTMxNjI4MzMyMjEKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3MTgyMjk3NQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU3MzMwNjUyCisJLmxvbmcJMTcyNDk3NjkxNQorCS5sb25nCTEwNzE4MTk2NTgKKwkubG9uZwk0MjA5MDkyMjMKKwkubG9uZwkzMTYzMTE3Mzc5CisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzE4MTYzNDkKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNDM3MTA0OAorCS5sb25nCTE5NzI0ODQ5NzYKKwkubG9uZwkxMDcxODEzMDUwCisJLmxvbmcJNjc1MjkwMzAxCisJLmxvbmcJMzE2MTY0MDA1MAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcxODA5NzU5CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjMxODAwOTAKKwkubG9uZwk4NzQzNzI5MDUKKwkubG9uZwkxMDcxODA2NDc4CisJLmxvbmcJMTAwMjYzNzg4CisJLmxvbmcJMTAxNTk0MDczMgorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcxODAzMjA1CisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTQxNTI0OTkKKwkubG9uZwkxODk3ODQ0MzQxCisJLmxvbmcJMTA3MTc5OTk0MQorCS5sb25nCTEyNTQzMDA0NjAKKwkubG9uZwkxMDE1Mjc1OTM4CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzE3OTY2ODYKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNDY3Nzg0NQorCS5sb25nCTQyMTk2MDYwMjYKKwkubG9uZwkxMDcxNzkzNDM5CisJLmxvbmcJMjQzNDU3NDc0MgorCS5sb25nCTEwMTQ2ODE1NDgKKwkubG9uZwkxODUzMTg2NjE2CisJLmxvbmcJMTA3MTc5MDIwMgorCS5sb25nCTMwNjY0OTYzNzEKKwkubG9uZwkxMDE1NjU2NTc0CisJLmxvbmcJMjcyNTg0MzY2NQorCS5sb25nCTEwNzE3ODY5NzMKKwkubG9uZwkxNDMzOTE3MDg3CisJLmxvbmcJMTAxNDgzODUyMworCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcxNzgzNzUzCisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTQxNDc0NTQKKwkubG9uZwk4OTcwOTk4MDEKKwkubG9uZwkxMDcxNzgwNTQyCisJLmxvbmcJNzU0NzU2Mjk3CisJLmxvbmcJMTAxNTI0MTAwNQorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcxNzc3MzM5CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTQ4NzYwMjEKKwkubG9uZwkyMjE4MzE1MzQxCisJLmxvbmcJMTA3MTc3NDE0NQorCS5sb25nCTI2OTQyOTUzODgKKwkubG9uZwkzMTYzMjg4ODY4CisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MTc3MDk2MAorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MjYyNzk5MgorCS5sb25nCTE1ODg4NzEyMDcKKwkubG9uZwkxMDcxNzY3NzgzCisJLmxvbmcJMTQzNDM5NTgyCisJLmxvbmcJMzE2Mjk2MzQxNgorCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzE3NjQ2MTUKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTU5Mzk0MzgKKwkubG9uZwkyNTAyNDMzODk5CisJLmxvbmcJMTA3MTc2MTQ1NQorCS5sb25nCTIxNDg1OTU5MTMKKwkubG9uZwkxMDE1MDIzOTkxCisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzE3NTgzMDQKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTYzMTE2NDIyCisJLmxvbmcJNDE2MjAzMDEwOAorCS5sb25nCTEwNzE3NTUxNjEKKwkubG9uZwkyNzYzNDI4NDgwCisJLmxvbmcJMTAxNTUyOTM0OQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcxNzUyMDI3CisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTQ5MTM4NjgKKwkubG9uZwkxNDgwMDIzMzQzCisJLmxvbmcJMTA3MTc0ODkwMgorCS5sb25nCTIyNDcxOTYxNjgKKwkubG9uZwkxMDE1MzI3NDUzCisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3MTc0NTc4NQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYyNTc0ODgzCisJLmxvbmcJMjI1Nzk1OTg3MgorCS5sb25nCTEwNzE3NDI2NzYKKwkubG9uZwkzODAyOTQ2MTQ4CisJLmxvbmcJMTAxMjk2NDkyNworCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcxNzM5NTc2CisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjE1NTkxMDUKKwkubG9uZwkxNDE2NzQxODI2CisJLmxvbmcJMTA3MTczNjQ4NAorCS5sb25nCTIxOTYzODAyMTAKKwkubG9uZwkxMDExNDEzNTYzCisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzE3MzM0MDAKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNDEyMDU1NAorCS5sb25nCTI0NzE0NDA2ODYKKwkubG9uZwkxMDcxNzMwMzI1CisJLmxvbmcJOTY4ODM2MjY3CisJLmxvbmcJMzE2MjIxNDg4OAorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcxNzI3MjU4CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjI3MTQwNDcKKwkubG9uZwkzNTE0MDUyMjcKKwkubG9uZwkxMDcxNzI0MjAwCisJLmxvbmcJMzEyNTMzNzMyOAorCS5sb25nCTMxNTk4MjI0NzkKKwkubG9uZwkzMjI4MzE2MTA4CisJLmxvbmcJMTA3MTcyMTE0OQorCS5sb25nCTMwMTAyNDE5OTEKKwkubG9uZwkzMTU4NDIyODA0CisJLmxvbmcJMjg3NTA3NTI1NAorCS5sb25nCTEwNzE3MTgxMDcKKwkubG9uZwk0MTQ0MjMzMzMwCisJLmxvbmcJMzE2MzMzMzcxNgorCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcxNzE1MDczCisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mjk0ODg4MAorCS5sb25nCTY4NTE4NzkwMgorCS5sb25nCTEwNzE3MTIwNDgKKwkubG9uZwkzNzg3MzE5ODkKKwkubG9uZwkxMDE0ODQzMTE1CisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzE3MDkwMzAKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MDEyMDMwMQorCS5sb25nCTE2MDg0OTM1MDkKKwkubG9uZwkxMDcxNzA2MDIxCisJLmxvbmcJMzE1OTYyMjE3MQorCS5sb25nCTMxNjI4MDc3MzcKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcxNzAzMDIwCisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAwOTc5MzU1OQorCS5sb25nCTU5MDk2MjE1NgorCS5sb25nCTEwNzE3MDAwMjcKKwkubG9uZwkzODI5MzQ2NjY2CisJLmxvbmcJMzE2MzI3NTU5NworCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzE2OTcwNDIKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE1MDI5NDY4CisJLmxvbmcJMTE3MjU5Nzg5MworCS5sb25nCTEwNzE2OTQwNjUKKwkubG9uZwkxMTQ0MzMyNjMKKwkubG9uZwkxMDE1MzQ3NTkzCisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzE2OTEwOTYKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNTU4ODM5OAorCS5sb25nCTI2MDI1MTQ3MTMKKwkubG9uZwkxMDcxNjg4MTM1CisJLmxvbmcJMjI2ODkyOTMzNgorCS5sb25nCTEwMTQzNTQyODQKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MTY4NTE4MgorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTUxMDU2NTYKKwkubG9uZwk0MTMzODgxODI0CisJLmxvbmcJMTA3MTY4MjIzNworCS5sb25nCTIxNDgxNTUzNDUKKwkubG9uZwkzMTYyOTMxMjk5CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MTY3OTMwMQorCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDExOTc1ODcwCisJLmxvbmcJNzI4OTM0NDU0CisJLmxvbmcJMTA3MTY3NjM3MgorCS5sb25nCTE0MTM4NDI2ODgKKwkubG9uZwkxMDE0MTc4NjEyCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MTY3MzQ1MQorCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYyMjgwNDE1CisJLmxvbmcJMjM4ODIxMjU3CisJLmxvbmcJMTA3MTY3MDUzOAorCS5sb25nCTE0Njk2OTQ4NzEKKwkubG9uZwkzMTYyODg0OTg3CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzE2Njc2MzIKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNDg1NDYyNgorCS5sb25nCTE5Mjg3NDYxNjEKKwkubG9uZwkxMDcxNjY0NzM1CisJLmxvbmcJOTgzNjE3Njc2CisJLmxvbmcJMTAxNDI4NTE3NworCS5sb25nCTM4OTk1NTU3MTcKKwkubG9uZwkxMDcxNjYxODQ1CisJLmxvbmcJNDI3MjgwNzUwCisJLmxvbmcJMzE2MjU0Njk3MgorCS5sb25nCTc3MjkxNDEyNAorCS5sb25nCTEwNzE2NTg5NjQKKwkubG9uZwk0MDA0MzcyNzYyCisJLmxvbmcJMTAxMjIzMDE2MQorCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcxNjU2MDkwCisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjA1MTA1OTUKKwkubG9uZwkzMzk0MTE1ODUKKwkubG9uZwkxMDcxNjUzMjI0CisJLmxvbmcJMjY0NTg4OTgyCisJLmxvbmcJMzE2MTYzNjY1NworCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcxNjUwMzY1CisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTU3NjczMzcKKwkubG9uZwk0MjAwMjUwNTU5CisJLmxvbmcJMTA3MTY0NzUxNAorCS5sb25nCTI4MDgxMjczNDUKKwkubG9uZwkzMTYxNzgxOTM4CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMzI3NTIyNzEzNgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDgyNTk0NjMxCisJLmxvbmcJNDE2NjkwMTU3MgorCS5sb25nCTEwNTUxNzQxNTUKKwkubG9uZwkzODg0NjA3MjgxCisJLmxvbmcJMzE2ODEzMTE5OQorCS5sb25nCTM2MDc0MDQ3MzUKKwkubG9uZwkzMTkwNTgyMDI0CisJLmxvbmcJMTg3NDQ4MDc1OQorCS5sb25nCTEwMzIwNDExMzEKKwkubG9uZwk0Mjg2NzYwMzM0CisJLmxvbmcJMTA1MzczNjg5MworCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjExMTQ0NzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzYyODk1MDMKKwkubG9uZwkxMDY0MTM1OTk3CisJLmxvbmcJNDYzNTgzNzcyCisJLmxvbmcJMzIxNTY5NjMxNAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkzMjEyOTc3ODkxCisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2OTYxNzQyNQorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDY2ODIwODUyCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTg0MjkyNjkKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4MAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLmxvbmcJNDI5NDcwNTE1MgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0NzA1MTUyCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDQyODAKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9zcXJ0LlMgYi9saWJtL3g4Ni9zcXJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzlkNDM0ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NxcnQuUwpAQCAtMCwwICsxLDQzIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNxcnQpCisJbW92CQklZXNwLCVlYXgKKwlhbmQJCSQweGZmZmZmZmY4LCVlYXgKKwltb3ZzZAkweDQoJWVzcCksJXhtbTAKKwlzcXJ0c2QJJXhtbTAsJXhtbTAKKwltb3ZscGQJJXhtbTAsLTB4OCglZWF4KQorCWZsZGwgICAtMHg4KCVlYXgpCisJcmV0CitFTkQoc3FydCkKKworQUxJQVNfU1lNQk9MKHNxcnRsLCBzcXJ0KTsKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NxcnRmLlMgYi9saWJtL3g4Ni9zcXJ0Zi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4YzE4M2IKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zcXJ0Zi5TCkBAIC0wLDAgKzEsMzkgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc3FydGYpCisJbW92c3MgIDB4NCglZXNwKSwleG1tMAorCXNxcnRzcyAleG1tMCwleG1tMAorCW1vdnNzICAleG1tMCwtMHg0KCVlc3ApCisJZmxkcyAgIC0weDQoJWVzcCkKKwlyZXQKK0VORChzcXJ0ZikKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3RydW5jLlMgYi9saWJtL3g4Ni90cnVuYy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRhOWQ1ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni90cnVuYy5TCkBAIC0wLDAgKzEsNDMgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkodHJ1bmMpCisJbW92ICAgICVlc3AsJWVheAorCWFuZCAgICAkMHhmZmZmZmZmOCwlZWF4CisJbW92c2QgIDB4NCglZXNwKSwleG1tMAorCXJvdW5kc2QgJDB4MywleG1tMCwleG1tMAorCW1vdmxwZCAleG1tMCwtMHg4KCVlYXgpCisJZmxkbCAgIC0weDgoJWVheCkKKwlyZXQKK0VORCh0cnVuYykKKworQUxJQVNfU1lNQk9MKHRydW5jbCwgdHJ1bmMpOwpkaWZmIC0tZ2l0IGEvbGlibS94ODYvdHJ1bmNmLlMgYi9saWJtL3g4Ni90cnVuY2YuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kM2UzZjRhCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvdHJ1bmNmLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWSh0cnVuY2YpCisJbW92c3MgIDB4NCglZXNwKSwleG1tMAorCXJvdW5kc3MgJDB4MywleG1tMCwleG1tMAorCW1vdnNzICAleG1tMCwtMHg0KCVlc3ApCisJZmxkcyAgIC0weDQoJWVzcCkKKwlyZXQKK0VORCh0cnVuY2YpCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9jZWlsLlMgYi9saWJtL3g4Nl82NC9jZWlsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQ0OTJjNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2NlaWwuUwpAQCAtMCwwICsxLDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGNlaWwpCityb3VuZHNkICQweDIsJXhtbTAsJXhtbTAKK3JldHEKK0VORChjZWlsKQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvY2VpbGYuUyBiL2xpYm0veDg2XzY0L2NlaWxmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGUxY2E5NQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2NlaWxmLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShjZWlsZikKK3JvdW5kc3MgJDB4MiwleG1tMCwleG1tMAorcmV0cQorRU5EKGNlaWxmKQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9hY29zLlMgYi9saWJtL3g4Nl82NC9lX2Fjb3MuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODNjNjZiCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9hY29zLlMKQEAgLTAsMCArMSwxOTU3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIFRvIGNvbXB1dGUgYWNvcyhzKSwgc2VwYXJhdGUgc2NoZW1lcyBhcmUgdXNlZCB3aGVuIHMgaXMgaW4gZGlmZmVyZW50CisvLyAgaW50ZXJ2YWxzLgorLy8KKy8vICB8c3wgaW4gWzJeey00fSwgc3FydCgzKS8yKToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzPTJeayoxLmIxIGIyIC4uIGI1MgorLy8gICAgICAgYWNvcyhzKT1waS8yLWFzaW4odCktYXNpbihyKSwgd2hlcmUgcj1zKnNxcnQoMS10XjIpLXQqc3FydCgxLXNeMikKKy8vICAgICAgIGFzaW4ociktciBldmFsdWF0ZWQgYXMgNy1kZWdyZWUgcG9seW5vbWlhbCAoYzMqcl4zK2M1KnJeNStjNypyXjcpCisvLyAgICAgICBGb3IgdGhlIGZpcnN0IGRlZ3JlZSB0ZXJtLCByIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgUj0oc14yLXReMikvKHNxcnQoMS10XjIpKnMrc3FydCgxLXNeMikqdCkKKy8vICAgICAgIChzcXJ0KDEtdF4yKSByZWFkIGZyb20gdGFibGUpCisvLyAgVGhlIG1haW4gc291cmNlIG9mIGVycm9yIGlzIHN0aWxsIFIgKG1heSBzdGlsbCBiZSBhZmZlY3RlZCBieSB1cCB0byAzIHVscHMKKy8vICBvZiByb3VuZGluZyBlcnJvcikuIFRoZSB0YWJsZSBzaXplIG11c3QgYmUgc3VmZmljaWVudGx5IGxhcmdlLCB0byBtaW5pbWl6ZQorLy8gIHRoaXMgZWZmZWN0LgorLy8KKy8vICB8c3wgaW4gW3NxcnQoMykvMiwgMjU1LzI1Nik6CisvLyAgICAgICBMZXQgdD0yXmsqMS5iMSBiMi4uYjYgMSwgd2hlcmUgc3FydCgxLXNeMik9Ml5rKjEuYjEgYjIgLi4gYjUyIChyb3VuZGVkKQorLy8gICAgICAgYWNvcyh8c3wpPWFzaW4odCktYXNpbihyKSwgcj1zKnQtc3FydCgxLXNeMikqc3FydCgxLXReMikKKy8vICAgYWNvcygtfHN8KT1waS1hY29zKHxzfCkKKy8vICAgICAgIChUaGUgLVBJIGNvbnN0YW50LCBvciAwLCBpcyBhZGRlZCB0byB0aGUgcmVzdWx0LiBUaGUgc2lnbiBpcyBzZXQgYXQKKy8vICAgICAgICB0aGUgZW5kKQorLy8gICAgICAgYXNpbihyKSBldmFsdWF0ZWQgYXMgYSBwb2x5bm9taWFsIChzYW1lIGFzIGFib3ZlKQorLy8gICAgICAgVGhlIGZpcnN0IGRlZ3JlZSB0ZXJtIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgICAgICAgICByPShzXjIrdF4yLTEpLyhzKnQrc3FydCgxLXNeMikqc3FydCgxLXReMikpCisvLworLy8gIHxzfDwyXnstNH06IGFjb3Mocyk9cGkvMi1hc2luKHMpCisvLyAgICAgICAgICAgICAgZXZhbHVhdGUgYXNpbihzKSBhcyAxMy1kZWdyZWUgcG9seW5vbWlhbAorLy8KKy8vICB8c3wgaW4gWzI1NS8yNTYsMSk6IGFjb3MofHN8KT0yKmFzaW4ocSksIHdoZXJlIHE9c3FydCgoMS18c3wpLzIpCisvLyAgYXNpbihxKSBpcyBldmFsdWF0ZWQgYXMgMTMtZGVncmVlIHBvbHlub21pYWwKKy8vICAgICAgcV4yPSgxLXxzfCkvMiBpcyBvYnRhaW5lZCBpbiBhZHZhbmNlCisvLyAgICAgICAgIDIqcSplcHMgfiAoKDEtfHN8KS8yLXFeMikvcSB1c2VkIGZvciBmaXJzdCB0ZXJtCisvLyAgIGFjb3MoLXxzfCk9cGktYWNvcyh8c3wpCisvLyAgICAgICAoVGhlIC1QSSBjb25zdGFudCwgb3IgMCwgaXMgYWRkZWQgdG8gdGhlIHJlc3VsdC4gVGhlIHNpZ24gaXMgc2V0IGF0CisvLyAgICAgICAgdGhlIGVuZCkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGFjb3MoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgYWNvcyhJTkYpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhY29zKHgpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24sIGZvciB8eHw+MS4wCisvLyAgYWNvcygxKSA9ICswCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgYWNvcworRU5UUlkoYWNvcykKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9hY29zLjE6CisgICAgICAgIHN1YnEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2Fjb3MuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92c2QgICAgIEFCU1ZBTE1BU0soJXJpcCksICV4bW00CisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdnNkICAgICBUTUFTSyglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDQ0LCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQyLCAlZWN4LCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNTI0Mjg3LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMjYwODY0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkOTU1LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkNjU1MzUsICVlZHgKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQtNCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDY0MjU2LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBUX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbW92c2QgICAgICglcjgsJXJkeCwyKSwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMgorICAgICAgICBsZWEgICAgICAgVGJsX2FkZHIoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyOCwlcmR4LDQpLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgZGl2c2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgMjQrY3YoJXJpcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4K2N2KCVyaXApLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcHNsbHEgICAgICQ2MywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDE2K2N2KCVyaXApLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnBkICAgICBQSV9CWV8yKCVyaXApLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIHN1YmwgICAgICAkOTU1LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNjUsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIHBzcmxxICAgICAkMzgsICV4bW03CisgICAgICAgIHBzbGxxICAgICAkMzgsICV4bW03CisgICAgICAgIHBtb3Ztc2tiICAleG1tMCwgJWVheAorICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW00LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYW5kbCAgICAgICQxMjgsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQ3LCAlZWF4CisgICAgICAgIG5lZ2wgICAgICAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2xscSAgICAgJDIsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlZHgKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQwLCAleG1tMywgJXhtbTMKKyAgICAgICAgc3VibCAgICAgICQ2NTIxNiwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBsZWEgICAgICAgVF90YWJsZSglcmlwKSwgJXI4CisgICAgICAgIG11bHNkICAgICAoJXI4LCVyZHgsNCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYW5kcGQgICAgIE5FR19QSSglcmlwKSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDgrY3YoJXJpcCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgMjQrY3YoJXJpcCksICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDE2K2N2KCVyaXApLCAleG1tMgorICAgICAgICBsZWEgICAgICAgVGJsX2FkZHIoJXJpcCksICVyOAorICAgICAgICBhZGRwZCAgICAgKCVyOCwlcmR4LDgpLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHB4b3IgICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNTI5MSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE0MzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBjdjIoJXJpcCksICV4bW02CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDE2K2N2MiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDMyK2N2MiglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgUElfQllfMiglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE1MzU2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBhbmRwZCAgICAgQUJTVkFMTUFTSyglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIE9ORV9CWV8yKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgY3YyKCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAxNitjdjIoJXJpcCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIDMyK2N2MiglcmlwKSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW03CisgICAgICAgIHNxcnRzZCAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNywgJXhtbTUKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIEhBTEZNQVNLKCVyaXApLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGNtcHNkICAgICAkMSwgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRwZCAgICAgTkVHX1BJKCVyaXApLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBkaXZzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBhZGRsICAgICAgJDI2MTg4NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2MTg4OCwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW03CisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVkeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQxMDcyNjkzMjQ4LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgbW92c2QgICAgICglcnNwKSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxLCAlZWR4CisgICAgICAgIHNiYmwgICAgICAkMjE0NjQzNTA3MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamdlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBwZXh0cncgICAgJDEsICV4bW03LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTUsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMCwgJXhtbTcsICV4bW03CisgICAgICAgIG1vdnNkICAgICBQSSglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDgrUEkoJXJpcCksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZzZCAgICAgUElfQllfMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDgrUElfQllfMiglcmlwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKy4uQjEuNToKKyAgICAgICAgYWRkcSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfYWNvcy40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9hY29zLjU6CitFTkQoYWNvcykKKyMgLS0gRW5kICBhY29zCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitBQlNWQUxNQVNLOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlBQlNWQUxNQVNLLEBvYmplY3QKKwkuc2l6ZQlBQlNWQUxNQVNLLDE2CisJLmFsaWduIDE2CitUX3RhYmxlOgorCS5sb25nCTI2NDI3ODQ1MDkKKwkubG9uZwkxMDcyNjg5MDgzCisJLmxvbmcJMTUxNDQ0MjUzMQorCS5sb25nCTEwNzI2ODg5NTMKKwkubG9uZwkzMzMxMDg5MzMKKwkubG9uZwkxMDcyNjg4ODIxCisJLmxvbmcJMzM5MjExMjAyNAorCS5sb25nCTEwNzI2ODg2ODYKKwkubG9uZwkyMDk5ODUyODYyCisJLmxvbmcJMTA3MjY4ODU1MAorCS5sb25nCTc0OTYwOTAwNAorCS5sb25nCTEwNzI2ODg0MTIKKwkubG9uZwkzNjM0NjMyNTk2CisJLmxvbmcJMTA3MjY4ODI3MQorCS5sb25nCTIxNjMyNDg0NjEKKwkubG9uZwkxMDcyNjg4MTI5CisJLmxvbmcJNjI4NjU3ODQ2CisJLmxvbmcJMTA3MjY4Nzk4NQorCS5sb25nCTMzMjQwMzY1MTEKKwkubG9uZwkxMDcyNjg3ODM4CisJLmxvbmcJMTY1NzYzMjgxNQorCS5sb25nCTEwNzI2ODc2OTAKKwkubG9uZwk0MjE3NTM4NzYwCisJLmxvbmcJMTA3MjY4NzUzOQorCS5sb25nCTI0MTE5NTE1OTcKKwkubG9uZwkxMDcyNjg3Mzg3CisJLmxvbmcJNTMzOTQ0ODcyCisJLmxvbmcJMTA3MjY4NzIzMworCS5sb25nCTI4NzY1NjY1MDgKKwkubG9uZwkxMDcyNjg3MDc2CisJLmxvbmcJODQ3OTM2ODkxCisJLmxvbmcJMTA3MjY4NjkxOAorCS5sb25nCTMwMzYwMTk5MTMKKwkubG9uZwkxMDcyNjg2NzU3CisJLmxvbmcJODQ4ODg0NTc1CisJLmxvbmcJMTA3MjY4NjU5NQorCS5sb25nCTI4NzQ0NDMzMjYKKwkubG9uZwkxMDcyNjg2NDMwCisJLmxvbmcJNTIwNzEzNjY2CisJLmxvbmcJMTA3MjY4NjI2NAorCS5sb25nCTIzNzU1NTY0ODEKKwkubG9uZwkxMDcyNjg2MDk1CisJLmxvbmcJNDE0MTkwNDk0OAorCS5sb25nCTEwNzI2ODU5MjQKKwkubG9uZwkxNTIyNjY2MzgyCisJLmxvbmcJMTA3MjY4NTc1MgorCS5sb25nCTMxMDU2MjQxMDQKKwkubG9uZwkxMDcyNjg1NTc3CisJLmxvbmcJMjk4NjY2MzI3CisJLmxvbmcJMTA3MjY4NTQwMQorCS5sb25nCTE2ODk1MjQ1MDAKKwkubG9uZwkxMDcyNjg1MjIyCisJLmxvbmcJMjk4MTAwMjIwMAorCS5sb25nCTEwNzI2ODUwNDEKKwkubG9uZwk0MTcwODQ0Mjg0CisJLmxvbmcJMTA3MjY4NDg1OAorCS5sb25nCTk2MTgwMjI2MworCS5sb25nCTEwNzI2ODQ2NzQKKwkubG9uZwkxOTQxNTAzNDU0CisJLmxvbmcJMTA3MjY4NDQ4NworCS5sb25nCTI4MTI2NDcxNzAKKwkubG9uZwkxMDcyNjg0Mjk4CisJLmxvbmcJMzU3Mjg3Mzg2OQorCS5sb25nCTEwNzI2ODQxMDcKKwkubG9uZwk0MjE5Nzk3ODIzCisJLmxvbmcJMTA3MjY4MzkxNAorCS5sb25nCTQ1NjAzOTc4OAorCS5sb25nCTEwNzI2ODM3MjAKKwkubG9uZwk4NjkwOTYxNTEKKwkubG9uZwkxMDcyNjgzNTIzCisJLmxvbmcJMTE2MTUzNTExOQorCS5sb25nCTEwNzI2ODMzMjQKKwkubG9uZwkxMzMwODY1ODY2CisJLmxvbmcJMTA3MjY4MzEyMworCS5sb25nCTEzNzQ1NzEyMDQKKwkubG9uZwkxMDcyNjgyOTIwCisJLmxvbmcJMTI5MDEwNzUzOAorCS5sb25nCTEwNzI2ODI3MTUKKwkubG9uZwkxMDc0OTA0ODM2CisJLmxvbmcJMTA3MjY4MjUwOAorCS5sb25nCTcyNjM2NjU4NworCS5sb25nCTEwNzI2ODIyOTkKKwkubG9uZwkyNDE4Njk3NjMKKwkubG9uZwkxMDcyNjgyMDg4CisJLmxvbmcJMzkxMzczMjA3OQorCS5sb25nCTEwNzI2ODE4NzQKKwkubG9uZwkzMTQ5MzQyNzY1CisJLmxvbmcJMTA3MjY4MTY1OQorCS5sb25nCTIyNDA5NjYzMDYKKwkubG9uZwkxMDcyNjgxNDQyCisJLmxvbmcJMTE4NTg3MzIxNgorCS5sb25nCTEwNzI2ODEyMjMKKwkubG9uZwk0Mjc2Mjc0NTkxCisJLmxvbmcJMTA3MjY4MTAwMQorCS5sb25nCTI5MTk0NTI4ODMKKwkubG9uZwkxMDcyNjgwNzc4CisJLmxvbmcJMTQwNzU2NTYzNQorCS5sb25nCTEwNzI2ODA1NTMKKwkubG9uZwk0MDMyNzQzNTUxCisJLmxvbmcJMTA3MjY4MDMyNQorCS5sb25nCTIyMDIxODg1NjUKKwkubG9uZwkxMDcyNjgwMDk2CisJLmxvbmcJMjA3OTc3NTc3CisJLmxvbmcJMTA3MjY3OTg2NQorCS5sb25nCTIzNDIxNjA1MTgKKwkubG9uZwkxMDcyNjc5NjMxCisJLmxvbmcJMTE4NTg0MjMKKwkubG9uZwkxMDcyNjc5Mzk2CisJLmxvbmcJMTgwNDAzNDQ1MworCS5sb25nCTEwNzI2NzkxNTgKKwkubG9uZwkzNDIwNzIyNzg3CisJLmxvbmcJMTA3MjY3ODkxOAorCS5sb25nCTU2MzkzMDQ1NgorCS5sb25nCTEwNzI2Nzg2NzcKKwkubG9uZwkxODIwNTM5MTkyCisJLmxvbmcJMTA3MjY3ODQzMworCS5sb25nCTI4OTI1MDE2MDYKKwkubG9uZwkxMDcyNjc4MTg3CisJLmxvbmcJMzc3NjcxMDMyMAorCS5sb25nCTEwNzI2Nzc5MzkKKwkubG9uZwkxNzUwNjMzMzcKKwkubG9uZwkxMDcyNjc3NjkwCisJLmxvbmcJNjc0MzMzMTcxCisJLmxvbmcJMTA3MjY3NzQzOAorCS5sb25nCTk3NjM2MzAyNgorCS5sb25nCTEwNzI2NzcxODQKKwkubG9uZwkxMDc3OTM1OTM0CisJLmxvbmcJMTA3MjY3NjkyOAorCS5sb25nCTE5MjEwNzU0OTAKKwkubG9uZwkxMDcyNjc2NTQwCisJLmxvbmcJODgxNDkzMzAyCisJLmxvbmcJMTA3MjY3NjAxNgorCS5sb25nCTMyNzU3NTI0MzkKKwkubG9uZwkxMDcyNjc1NDgzCisJLmxvbmcJNDg2ODU1NTg4CisJLmxvbmcJMTA3MjY3NDk0MworCS5sb25nCTEwNzcyMjkxMTEKKwkubG9uZwkxMDcyNjc0Mzk0CisJLmxvbmcJNzIzOTUwMzA4CisJLmxvbmcJMTA3MjY3MzgzNworCS5sb25nCTM2OTM1ODIxOTkKKwkubG9uZwkxMDcyNjczMjcxCisJLmxvbmcJMTM2NzMzNTMxNgorCS5sb25nCTEwNzI2NzI2OTgKKwkubG9uZwkyMzA1ODM3MDIwCisJLmxvbmcJMTA3MjY3MjExNgorCS5sb25nCTIxODQzNTg2NDEKKwkubG9uZwkxMDcyNjcxNTI2CisJLmxvbmcJOTcyNjgyODQwCisJLmxvbmcJMTA3MjY3MDkyOAorCS5sb25nCTI5MzUxMDE3NjIKKwkubG9uZwkxMDcyNjcwMzIxCisJLmxvbmcJMzc0NTUxMzI2MworCS5sb25nCTEwNzI2Njk3MDYKKwkubG9uZwkzMzcyMzIwODg2CisJLmxvbmcJMTA3MjY2OTA4MworCS5sb25nCTE3ODM0NjQ2MjAKKwkubG9uZwkxMDcyNjY4NDUyCisJLmxvbmcJMzI0MTM4NjIxNQorCS5sb25nCTEwNzI2Njc4MTIKKwkubG9uZwkzNDE4MTI1Mjg0CisJLmxvbmcJMTA3MjY2NzE2NAorCS5sb25nCTIyODAyMTkxNDgKKwkubG9uZwkxMDcyNjY2NTA4CisJLmxvbmcJNDA4ODcwMDc1OAorCS5sb25nCTEwNzI2NjU4NDMKKwkubG9uZwkyMTkyMjc0MDAKKwkubG9uZwkxMDcyNjY1MTcxCisJLmxvbmcJMzUyMTgxNjkxOAorCS5sb25nCTEwNzI2NjQ0ODkKKwkubG9uZwkxMDc2MjA1Mjc5CisJLmxvbmcJMTA3MjY2MzgwMAorCS5sb25nCTE0MzY0ODQ2MTYKKwkubG9uZwkxMDcyNjYzMTAyCisJLmxvbmcJMjcxMzYyNjEwCisJLmxvbmcJMTA3MjY2MjM5NgorCS5sb25nCTE4Mzg5OTY2ODgKKwkubG9uZwkxMDcyNjYxNjgxCisJLmxvbmcJMTgwNzEyMjUxOAorCS5sb25nCTEwNzI2NjA5NTgKKwkubG9uZwkxMzc5NTM1NDIKKwkubG9uZwkxMDcyNjYwMjI3CisJLmxvbmcJMTA4ODE3ODU4NAorCS5sb25nCTEwNzI2NTk0ODcKKwkubG9uZwkzMjQwNTc1MzcKKwkubG9uZwkxMDcyNjU4NzM5CisJLmxvbmcJMjEwMTI4ODA3NgorCS5sb25nCTEwNzI2NTc5ODIKKwkubG9uZwkyMDg1MTMzOTc0CisJLmxvbmcJMTA3MjY1NzIxNworCS5sb25nCTIzNTMyNDQ1MQorCS5sb25nCTEwNzI2NTY0NDQKKwkubG9uZwk4MDYwNTE1OTIKKwkubG9uZwkxMDcyNjU1NjYyCisJLmxvbmcJMzc1NjAzMzE0MAorCS5sb25nCTEwNzI2NTQ4NzEKKwkubG9uZwk0NTM1NDI1NDMKKwkubG9uZwkxMDcyNjU0MDczCisJLmxvbmcJMzc0MTE3NzMyNworCS5sb25nCTEwNzI2NTMyNjUKKwkubG9uZwk2OTEyMTYxMDkKKwkubG9uZwkxMDcyNjUyNDUwCisJLmxvbmcJNDE0NTIyMzM3MgorCS5sb25nCTEwNzI2NTE2MjUKKwkubG9uZwkxMTc0NDM5MDkxCisJLmxvbmcJMTA3MjY1MDc5MworCS5sb25nCTMyNDQxNjEzOQorCS5sb25nCTEwNzI2NDk5NTIKKwkubG9uZwkxNTUwMjQ2MzEwCisJLmxvbmcJMTA3MjY0OTEwMgorCS5sb25nCTUxMTUyNDY3NAorCS5sb25nCTEwNzI2NDgyNDQKKwkubG9uZwkxNDU3MjQ4NDgyCisJLmxvbmcJMTA3MjY0NzM3NworCS5sb25nCTQ1OTQ0OTU1CisJLmxvbmcJMTA3MjY0NjUwMgorCS5sb25nCTUyNTUzNzM5NworCS5sb25nCTEwNzI2NDU2MTgKKwkubG9uZwkyODQ4NDQwMTg4CisJLmxvbmcJMTA3MjY0NDcyNQorCS5sb25nCTI2NzE1NTU2MzMKKwkubG9uZwkxMDcyNjQzODI0CisJLmxvbmcJNDI0MTE3MjYzNworCS5sb25nCTEwNzI2NDI5MTQKKwkubG9uZwkzMjEzMDk0Mjc4CisJLmxvbmcJMTA3MjY0MTk5NgorCS5sb25nCTM4MzI1MDM2ODgKKwkubG9uZwkxMDcyNjQxMDY5CisJLmxvbmcJMTc1NDA5MTUzNAorCS5sb25nCTEwNzI2NDAxMzQKKwkubG9uZwkxMjIxOTIxODA0CisJLmxvbmcJMTA3MjYzOTE5MAorCS5sb25nCTIxODQ1MjY0ODkKKwkubG9uZwkxMDcyNjM4MjM3CisJLmxvbmcJMjk0OTAyMDg5CisJLmxvbmcJMTA3MjYzNzI3NgorCS5sb25nCTQwOTAzNzUyNzAKKwkubG9uZwkxMDcyNjM2MzA1CisJLmxvbmcJNjMyODYwOTA2CisJLmxvbmcJMTA3MjYzNTMyNworCS5sb25nCTI3NTM0OTg3MDIKKwkubG9uZwkxMDcyNjM0MzM5CisJLmxvbmcJMTgwODAwOTI1MgorCS5sb25nCTEwNzI2MzMzNDMKKwkubG9uZwkyMDM2NDI4NjcyCisJLmxvbmcJMTA3MjYzMjMzOAorCS5sb25nCTMzODMyMzU2MjYKKwkubG9uZwkxMDcyNjMxMzI0CisJLmxvbmcJMTQ5NzM0NzQ4NAorCS5sb25nCTEwNzI2MzAzMDIKKwkubG9uZwk2MTcwMTgzMTcKKwkubG9uZwkxMDcyNjI5MjcxCisJLmxvbmcJNjg0OTMzMDU4CisJLmxvbmcJMTA3MjYyODIzMQorCS5sb25nCTE2NDMxNzA3OTgKKwkubG9uZwkxMDcyNjI3MTgyCisJLmxvbmcJMzAxMTA2NjM2MAorCS5sb25nCTEwNzI2MjU1OTIKKwkubG9uZwk5NTcxNTg3MTMKKwkubG9uZwkxMDcyNjIzNDQyCisJLmxvbmcJMTM5MDkwNzk0MQorCS5sb25nCTEwNzI2MjEyNTYKKwkubG9uZwkzODE5MTU1MjcwCisJLmxvbmcJMTA3MjYxOTAzNAorCS5sb25nCTM0NDM1NzExOTYKKwkubG9uZwkxMDcyNjE2Nzc3CisJLmxvbmcJNDA0NTQxMjQ1OAorCS5sb25nCTEwNzI2MTQ0ODQKKwkubG9uZwk4MDU1MDM5MjMKKwkubG9uZwkxMDcyNjEyMTU2CisJLmxvbmcJMTc3ODkyMjAxNQorCS5sb25nCTEwNzI2MDk3OTEKKwkubG9uZwkyMTI1MDMzNjY1CisJLmxvbmcJMTA3MjYwNzM5MAorCS5sb25nCTEyODcyMDM4NjMKKwkubG9uZwkxMDcyNjA0OTUzCisJLmxvbmcJMjk5MjYyOTU2OAorCS5sb25nCTEwNzI2MDI0NzkKKwkubG9uZwkyMzY3MjY3MTI3CisJLmxvbmcJMTA3MjU5OTk2OQorCS5sb25nCTMxMTU1MjYwNDcKKwkubG9uZwkxMDcyNTk3NDIyCisJLmxvbmcJMzQwMjE5NTM5CisJLmxvbmcJMTA3MjU5NDgzOQorCS5sb25nCTIwMTcyMTU3MTkKKwkubG9uZwkxMDcyNTkyMjE4CisJLmxvbmcJMzIyNTQ0MzQyNAorCS5sb25nCTEwNzI1ODk1NjAKKwkubG9uZwkzMzI2NTY1NjczCisJLmxvbmcJMTA3MjU4Njg2NQorCS5sb25nCTE2Njk4MTEyMTEKKwkubG9uZwkxMDcyNTg0MTMzCisJLmxvbmcJMTg4NjczNTAyMgorCS5sb25nCTEwNzI1ODEzNjMKKwkubG9uZwkzMzAxMDcxMTcxCisJLmxvbmcJMTA3MjU3ODU1NQorCS5sb25nCTkyODUxNDI4MworCS5sb25nCTEwNzI1NzU3MTAKKwkubG9uZwkyNjU2MzY0MDU5CisJLmxvbmcJMTA3MjU3MjgyNgorCS5sb25nCTM0NzM0OTA1MDcKKwkubG9uZwkxMDcyNTY5OTA0CisJLmxvbmcJMjY0OTk2NTYwNgorCS5sb25nCTEwNzI1NjY5NDQKKwkubG9uZwkzNzM2ODE5MDUyCisJLmxvbmcJMTA3MjU2Mzk0NQorCS5sb25nCTE2ODA4ODUxNzUKKwkubG9uZwkxMDcyNTYwOTA4CisJLmxvbmcJNDQxMzc3MQorCS5sb25nCTEwNzI1NTc4MzIKKwkubG9uZwkyMjE0ODY5NzUzCisJLmxvbmcJMTA3MjU1NDcxNgorCS5sb25nCTMyMTQ3MjUxODQKKwkubG9uZwkxMDcyNTUxNTYxCisJLmxvbmcJMjE4NjA3OTkwMworCS5sb25nCTEwNzI1NDgzNjcKKwkubG9uZwkyNTkwMzcyMTMxCisJLmxvbmcJMTA3MjU0NTEzMworCS5sb25nCTM1NzgxNDYwNzkKKwkubG9uZwkxMDcyNTQxODU5CisJLmxvbmcJNDI4MzcxMjc1NQorCS5sb25nCTEwNzI1Mzg1NDUKKwkubG9uZwkzODI0ODM0NTEwCisJLmxvbmcJMTA3MjUzNTE5MQorCS5sb25nCTEzMDI0MDAyOTgKKwkubG9uZwkxMDcyNTMxNzk3CisJLmxvbmcJOTUwNTg2MzYKKwkubG9uZwkxMDcyNTI4MzYyCisJLmxvbmcJMzU2MzkwNjA2MworCS5sb25nCTEwNzI1MjQ4ODUKKwkubG9uZwkyMTY3MjMwNzMwCisJLmxvbmcJMTA3MjUyMTM2OAorCS5sb25nCTM1MjQ5MTgzMzQKKwkubG9uZwkxMDcyNTE3ODA5CisJLmxvbmcJMjM1MzMwNDkxOAorCS5sb25nCTEwNzI1MTQyMDkKKwkubG9uZwkxOTM5NjI1ODM5CisJLmxvbmcJMTA3MjUxMDU2NworCS5sb25nCTEyNTY3MTQ1ODEKKwkubG9uZwkxMDcyNTA2ODgzCisJLmxvbmcJMzU1MjUyNTg0OAorCS5sb25nCTEwNzI1MDMxNTYKKwkubG9uZwkzNDY0ODA5NTIyCisJLmxvbmcJMTA3MjQ5OTM4NworCS5sb25nCTQyMDA1NDI1OTMKKwkubG9uZwkxMDcyNDk1NTc1CisJLmxvbmcJMzU1NjA5MTI0CisJLmxvbmcJMTA3MjQ5MTcyMQorCS5sb25nCTM2ODQxMzkwOTkKKwkubG9uZwkxMDcyNDg3ODIyCisJLmxvbmcJMTQ4MzU1OTE4CisJLmxvbmcJMTA3MjQ4Mzg4MQorCS5sb25nCTE0NTc2ODkyNDIKKwkubG9uZwkxMDcyNDc5ODk1CisJLmxvbmcJMjExODU5MTU5NgorCS5sb25nCTEwNzI0NzU4NjUKKwkubG9uZwk5MDg4NDgwODkKKwkubG9uZwkxMDcyNDcxNzkxCisJLmxvbmcJODc3MDMyNjg5CisJLmxvbmcJMTA3MjQ2NzY3MgorCS5sb25nCTc1MjAxMjMwNAorCS5sb25nCTEwNzI0NjM1MDgKKwkubG9uZwkzNTMyMzAxNzQ5CisJLmxvbmcJMTA3MjQ1OTI5OAorCS5sb25nCTM2MDA1NjMyMjEKKwkubG9uZwkxMDcyNDU1MDQzCisJLmxvbmcJMzkwMjg1NzA4NAorCS5sb25nCTEwNzI0NTA3NDIKKwkubG9uZwkzMDYzMTAxMDM2CisJLmxvbmcJMTA3MjQ0NjM5NQorCS5sb25nCTM5NzIzNDQzNzQKKwkubG9uZwkxMDcyNDQyMDAxCisJLmxvbmcJOTAzMTgzNTQ5CisJLmxvbmcJMTA3MjQzNzU2MQorCS5sb25nCTk4Mzg5MjkzOAorCS5sb25nCTEwNzI0MzMwNzMKKwkubG9uZwkyNzIyODU4NTY4CisJLmxvbmcJMTA3MjQyODUzNworCS5sb25nCTMwMjc5MDUxNQorCS5sb25nCTEwNzI0MjM5NTQKKwkubG9uZwk3NTk4MTEwNTcKKwkubG9uZwkxMDcyNDE5MzIyCisJLmxvbmcJMjUwNzgwOTkyMgorCS5sb25nCTEwNzI0MTQ2NDEKKwkubG9uZwkyMzg4NDA4ODEzCisJLmxvbmcJMTA3MjQwNzUyOAorCS5sb25nCTIwODQ0OTI5NDIKKwkubG9uZwkxMDcyMzk3ODcwCisJLmxvbmcJMjQzNTcwMzMwMQorCS5sb25nCTEwNzIzODgwMTAKKwkubG9uZwkxOTM1NDMzMzYwCisJLmxvbmcJMTA3MjM3Nzk0NQorCS5sb25nCTI3NDIwNDcyOTAKKwkubG9uZwkxMDcyMzY3NjcxCisJLmxvbmcJMjA1MzI4NDIwNQorCS5sb25nCTEwNzIzNTcxODUKKwkubG9uZwk2NTc3ODMzNjcKKwkubG9uZwkxMDcyMzQ2NDgzCisJLmxvbmcJMjg5MzY2NDg0MQorCS5sb25nCTEwNzIzMzU1NjAKKwkubG9uZwkzNzE4OTA2NDA1CisJLmxvbmcJMTA3MjMyNDQxMworCS5sb25nCTE1NDc4OTYzMDMKKwkubG9uZwkxMDcyMzEzMDM4CisJLmxvbmcJMjQ5NDA1ODQ0MAorCS5sb25nCTEwNzIzMDE0MjkKKwkubG9uZwkzMTMzMjM4NzQyCisJLmxvbmcJMTA3MjI4OTU4MgorCS5sb25nCTMzMjcwMDAwODYKKwkubG9uZwkxMDcyMjc3NDkyCisJLmxvbmcJMTg2MDY2NzI3NAorCS5sb25nCTEwNzIyNjUxNTQKKwkubG9uZwk2NjUzNDA3NDcKKwkubG9uZwkxMDcyMjUyNTYyCisJLmxvbmcJNDQzMzQ3ODQxCisJLmxvbmcJMTA3MjIzOTcxMAorCS5sb25nCTU4MTI4MjYxOAorCS5sb25nCTEwNzIyMjY1OTIKKwkubG9uZwkzMzQ5NzgwNDY1CisJLmxvbmcJMTA3MjIxMzIwMQorCS5sb25nCTkxNDIxNzYwNgorCS5sb25nCTEwNzIxOTk1MzIKKwkubG9uZwk5ODk3OTc2NjEKKwkubG9uZwkxMDcyMTg1NTc2CisJLmxvbmcJOTQ1NDM2NDE2CisJLmxvbmcJMTA3MjE3MTMyNgorCS5sb25nCTU0OTI5MTMwMAorCS5sb25nCTEwNzIxNTY3NzQKKwkubG9uZwkxODE0NjM2Mzg5CisJLmxvbmcJMTA3MjE0MTkxMQorCS5sb25nCTIzOTA5Mjg1OAorCS5sb25nCTEwNzIxMjY3MjkKKwkubG9uZwkxNzk0NjgwNzI0CisJLmxvbmcJMTA3MjExMTIxNworCS5sb25nCTEyNDE1MzQ2NzgKKwkubG9uZwkxMDcyMDk1MzY2CisJLmxvbmcJMzM2NjU2NjIxNAorCS5sb25nCTEwNzIwNzkxNjQKKwkubG9uZwkxMjQ0MDkwODI4CisJLmxvbmcJMTA3MjA2MjYwMQorCS5sb25nCTE3MDg0NDgxMjAKKwkubG9uZwkxMDcyMDQ1NjYzCisJLmxvbmcJMzU0NDI2MDY1MAorCS5sb25nCTEwNzIwMjgzMzcKKwkubG9uZwkxNDAyNzQxNDAzCisJLmxvbmcJMTA3MjAxMDYxMAorCS5sb25nCTI1NTE5MzY4ODgKKwkubG9uZwkxMDcxOTkyNDY1CisJLmxvbmcJNjE3NjY5NzM5CisJLmxvbmcJMTA3MTk3Mzg4NworCS5sb25nCTc5NDAwMjE4NgorCS5sb25nCTEwNzE5NTQ4NTcKKwkubG9uZwkyMDIxMjM3NjkzCisJLmxvbmcJMTA3MTkzNTM1NgorCS5sb25nCTU0MDQ1MDM4NAorCS5sb25nCTEwNzE5MTUzNjQKKwkubG9uZwkxOTIwNTU1NTM3CisJLmxvbmcJMTA3MTg5NDg1NworCS5sb25nCTI4Nzk1ODUyMDYKKwkubG9uZwkxMDcxODczODExCisJLmxvbmcJMzAwMDIzNzQ1NQorCS5sb25nCTEwNzE4NTIxOTkKKwkubG9uZwkzMzUyOTc0MzQ2CisJLmxvbmcJMTA3MTgyOTk5MQorCS5sb25nCTU2OTYyOTkzNworCS5sb25nCTEwNzE4MDcxNTUKKwkubG9uZwkyMDc3MjM3MjA4CisJLmxvbmcJMTA3MTc4MzY1MworCS5sb25nCTIyODQ4OTE4MDUKKwkubG9uZwkxMDcxNzU5NDQ2CisJLmxvbmcJMTIyNjY1MTc4NAorCS5sb25nCTEwNzE3MzQ0ODkKKwkubG9uZwkxMTAyMDQ3NDA1CisJLmxvbmcJMTA3MTcwODczMQorCS5sb25nCTIwMDk4OTYzODQKKwkubG9uZwkxMDcxNjgyMTE1CisJLmxvbmcJOTI3NDE5MDgyCisJLmxvbmcJMTA3MTY1NDU3NworCS5sb25nCTg1MDEwMzY2CisJLmxvbmcJMTA3MTYwNzQxMworCS5sb25nCTY5NjQzMTAyNQorCS5sb25nCTEwNzE1NDgxODAKKwkubG9uZwkyNjExNDEwNTQxCisJLmxvbmcJMTA3MTQ4NjU4NQorCS5sb25nCTI2MTI1OTM2NTgKKwkubG9uZwkxMDcxNDIyMzk2CisJLmxvbmcJMzU0ODE1NTMwNgorCS5sb25nCTEwNzEzNTUzMzYKKwkubG9uZwkzODg3OTk3NDg0CisJLmxvbmcJMTA3MTI4NTA3MworCS5sb25nCTI0NDg1NDc2MworCS5sb25nCTEwNzEyMTEyMDIKKwkubG9uZwk0MjE0NDQ1NjQ4CisJLmxvbmcJMTA3MTEzMzIxNgorCS5sb25nCTIzMDM5NjY3MjcKKwkubG9uZwkxMDcxMDUwNDc4CisJLmxvbmcJMzk5MTA0MDAxMworCS5sb25nCTEwNzA5NjIxNTIKKwkubG9uZwkzMTI2OTUyMjc4CisJLmxvbmcJMTA3MDg2NzExOAorCS5sb25nCTE4MTc0NDgzNzgKKwkubG9uZwkxMDcwNzYzODA0CisJLmxvbmcJMTc5MzgxNDg2NAorCS5sb25nCTEwNzA2NDk4ODQKKwkubG9uZwkzNTA3MjI0MDcyCisJLmxvbmcJMTA3MDQ0NzE5MworCS5sb25nCTQwMjc2MDkxMDUKKwkubG9uZwkxMDcwMTQ4NzcyCisJLmxvbmcJNTc3NTA3OTkzCisJLmxvbmcJMTA2OTc3OTQxNAorCS5sb25nCTIzMTAyMzI0MTkKKwkubG9uZwkxMDY4OTMxODI5CisJLnR5cGUJVF90YWJsZSxAb2JqZWN0CisJLnNpemUJVF90YWJsZSwyMDQ4CisJLmFsaWduIDE2CitUYmxfYWRkcjoKKwkubG9uZwkzODIyOTUyNzkyCisJLmxvbmcJMTAyMTYzOTM3MgorCS5sb25nCTE4Mjc5MjQ0OAorCS5sb25nCTEwNjg1MDc4MzYKKwkubG9uZwkyMjY0MjEzMjcxCisJLmxvbmcJMTAxOTU1ODkwOAorCS5sb25nCTY0OTA1MjkyOAorCS5sb25nCTEwNjg1MjQyNTMKKwkubG9uZwkxNzk3MTM5NjA5CisJLmxvbmcJMTAyMjI5NTE0MworCS5sb25nCTEyNDMwOTUyOTYKKwkubG9uZwkxMDY4NTQwNjcxCisJLmxvbmcJMTQxNTkzODc1NgorCS5sb25nCTEwMjE0Mzk1MzcKKwkubG9uZwkyMDMzMjk0NTkyCisJLmxvbmcJMTA2ODU1NzA5MAorCS5sb25nCTIzNTY4MDk5NzgKKwkubG9uZwkxMDIxNzc3OTE2CisJLmxvbmcJMzA4ODA2Mzc0NAorCS5sb25nCTEwNjg1NzM1MTAKKwkubG9uZwkyNjY5MDU1MzE4CisJLmxvbmcJMTAyMjEyNDQ4MgorCS5sb25nCTE4MDg4ODU3NgorCS5sb25nCTEwNjg1ODk5MzIKKwkubG9uZwkzNTY2NDQ1MzI1CisJLmxvbmcJMTAyMTM1ODcxMgorCS5sb25nCTE5NzAxOTY5OTIKKwkubG9uZwkxMDY4NjA2MzU0CisJLmxvbmcJODk2OTgwMzIzCisJLmxvbmcJMTAyMTMxOTY1OQorCS5sb25nCTQyMjk1NTU0NTYKKwkubG9uZwkxMDY4NjIyNzc3CisJLmxvbmcJNDM2MDQ5NzEyCisJLmxvbmcJMTAyMTMxOTc1OAorCS5sb25nCTI3MzI1NzIxNjAKKwkubG9uZwkxMDY4NjM5MjAyCisJLmxvbmcJNTgzMTIzMjA5CisJLmxvbmcJMTAyMDc5Nzk2MAorCS5sb25nCTE4NDI4MzE4NzIKKwkubG9uZwkxMDY4NjU1NjI4CisJLmxvbmcJMTM3MDQ0OTgwNAorCS5sb25nCTEwMjE0MjkyNzAKKwkubG9uZwkxNjI4OTk0NTYwCisJLmxvbmcJMTA2ODY3MjA1NQorCS5sb25nCTI0MTEzOTE0NjQKKwkubG9uZwkxMDIxMDU3OTgwCisJLmxvbmcJMjE1OTc2MzcxMgorCS5sb25nCTEwNjg2ODg0ODMKKwkubG9uZwkxMjA4NjkyNzQ5CisJLmxvbmcJMTAyMTk0MzkwMworCS5sb25nCTM1MDM4ODYzMzYKKwkubG9uZwkxMDY4NzA0OTEyCisJLmxvbmcJNTM4NzkzMzA5CisJLmxvbmcJMTAxOTc0NDA2MworCS5sb25nCTE0MzUxODcyMDAKKwkubG9uZwkxMDY4NzIxMzQzCisJLmxvbmcJNDA4NTA4NzYxMgorCS5sb25nCTEwMjA2MDg0MTkKKwkubG9uZwkzMTc0Njk5NTIKKwkubG9uZwkxMDY4NzM3Nzc1CisJLmxvbmcJMTQ0Mzg2OTQyCisJLmxvbmcJMTAyMTQ0MDczMgorCS5sb25nCTIxOTYxNzI4MAorCS5sb25nCTEwNjg3NTQyMDgKKwkubG9uZwkyOTQwMDg4MzYxCisJLmxvbmcJMTAxOTk4MTEyMgorCS5sb25nCTEyMTA1NTgyMDgKKwkubG9uZwkxMDY4NzcwNjQyCisJLmxvbmcJMjE3Njg1MDM0NworCS5sb25nCTEwMTgzNzM3MDUKKwkubG9uZwkzMzU5MjY4MzUyCisJLmxvbmcJMTA2ODc4NzA3NworCS5sb25nCTIzOTU2MTE0NTQKKwkubG9uZwkxMDIxODg5MDQyCisJLmxvbmcJMjQzOTgwMzY0OAorCS5sb25nCTEwNjg4MDM1MTQKKwkubG9uZwkxNjUwNzA1MjUzCisJLmxvbmcJMTAyMDIyNzk2NgorCS5sb25nCTI4MTYyMDM1MjAKKwkubG9uZwkxMDY4ODE5OTUyCisJLmxvbmcJMzcwMjE2NjM4NgorCS5sb25nCTEwMTkzNzk5MTQKKwkubG9uZwkyNjI2MjA2NzIKKwkubG9uZwkxMDY4ODM2MzkyCisJLmxvbmcJMTg1NTY0OTM3MAorCS5sb25nCTEwMjA0NTMxMjQKKwkubG9uZwkzNDM4MTU5NjE2CisJLmxvbmcJMTA2ODg1MjgzMgorCS5sb25nCTkyMzA2Mzg2MAorCS5sb25nCTEwMTkyNzM4MzQKKwkubG9uZwkzODIyMTA1ODU2CisJLmxvbmcJMTA2ODg2OTI3NAorCS5sb25nCTQyODk5NDc5NDcKKwkubG9uZwkxMDE5NDM0MjQ5CisJLmxvbmcJMTQ4MzcyOTkyMAorCS5sb25nCTEwNjg4ODU3MTgKKwkubG9uZwk3ODc0NTU4MTQKKwkubG9uZwkxMDIwNzM4Mzc5CisJLmxvbmcJNzg3MzIxMDg4CisJLmxvbmcJMTA2ODkwMjE2MworCS5sb25nCTMzMjE2NTMzMzcKKwkubG9uZwkxMDIxODQyNTY5CisJLmxvbmcJMTgwMjI1MzMxMgorCS5sb25nCTEwNjg5MTg2MDkKKwkubG9uZwkyNjUzNjMzNTI2CisJLmxvbmcJMTAyMTgyMTUyNQorCS5sb25nCTMwMjk4NTk4NAorCS5sb25nCTEwNjg5MzUwNTcKKwkubG9uZwkxNjEyNzIwMjgKKwkubG9uZwkxMDIxNjU1MTQ5CisJLmxvbmcJNjUzOTY2MDgwCisJLmxvbmcJMTA2ODk1MTUwNgorCS5sb25nCTI1NjYwOTg2NjcKKwkubG9uZwkxMDIwMDY2MjE5CisJLmxvbmcJMjkyNDcyNzI5NgorCS5sb25nCTEwNjg5Njc5NTYKKwkubG9uZwkzNjQ2NDkzNzIyCisJLmxvbmcJMTAxNDI5MjI4NQorCS5sb25nCTI4ODk4OTAzMDQKKwkubG9uZwkxMDY4OTg0NDA4CisJLmxvbmcJMTA4MTAwOTE5NgorCS5sb25nCTEwMjIxODk2MjAKKwkubG9uZwk2MTkwOTgxMTIKKwkubG9uZwkxMDY5MDAwODYyCisJLmxvbmcJNDAxMTY0MzM1NQorCS5sb25nCTEwMjE3NzMyOTcKKwkubG9uZwk0NzcwMTc2MDAKKwkubG9uZwkxMDY5MDE3MzE3CisJLmxvbmcJNDAzMDMwNTUzNAorCS5sb25nCTEwMjEyOTIyNTIKKwkubG9uZwkyNTMzNDAzOTA0CisJLmxvbmcJMTA2OTAzMzc3MworCS5sb25nCTI2NDUxODc1OTEKKwkubG9uZwkxMDE5NTI3MDk5CisJLmxvbmcJMjU2MzEwMjIwOAorCS5sb25nCTEwNjkwNTAyMzEKKwkubG9uZwkzODU3MjkzNzkyCisJLmxvbmcJMTAyMjMxMTY5NworCS5sb25nCTYzNTk4MjMzNgorCS5sb25nCTEwNjkwNjY2OTEKKwkubG9uZwkzNjI1OTM2NjM3CisJLmxvbmcJMTAxNzUxMTc0NAorCS5sb25nCTExMTY5NDA4MDAKKwkubG9uZwkxMDY5MDgzMTUyCisJLmxvbmcJMzY1Mzg3Mjk5MworCS5sb25nCTEwMjIwMTY2MzEKKwkubG9uZwk0MDc1OTY0MTYwCisJLmxvbmcJMTA2OTA5OTYxNAorCS5sb25nCTI0Njg5MDAyNzEKKwkubG9uZwkxMDIxNzY5NTMyCisJLmxvbmcJOTkzMTY1NTY4CisJLmxvbmcJMTA2OTExNjA3OQorCS5sb25nCTEzNTgxMDQyMjQKKwkubG9uZwkxMDIxMTk5Nzc2CisJLmxvbmcJNTI4NTg2NzUyCisJLmxvbmcJMTA2OTEzMjU0NQorCS5sb25nCTIyMDA5NTAzMzIKKwkubG9uZwkxMDIyMDI0ODcyCisJLmxvbmcJMjc1MjM5NTc3NgorCS5sb25nCTEwNjkxNDkwMTIKKwkubG9uZwkzMTk3MDcyNDU0CisJLmxvbmcJMTAxNzc1MTMxOQorCS5sb25nCTM0Mzk4NTU2MTYKKwkubG9uZwkxMDY5MTY1NDgxCisJLmxvbmcJMTY1MTA4MTgwNgorCS5sb25nCTEwMjA4MDkzMzgKKwkubG9uZwkyNjYxMjU3NzI4CisJLmxvbmcJMTA2OTE4MTk1MgorCS5sb25nCTUzOTAzMjc1MgorCS5sb25nCTEwMjE3Mjg4MDUKKwkubG9uZwk0ODY5NTczMTIKKwkubG9uZwkxMDY5MTk4NDI1CisJLmxvbmcJMzEzNjA0NTE0OQorCS5sb25nCTEwMTY4ODg2NzEKKwkubG9uZwkxMjgyMzQwMzUyCisJLmxvbmcJMTA2OTIxNDg5OQorCS5sb25nCTI1OTM5NjMyNTkKKwkubG9uZwkxMDE4OTU2MTAzCisJLmxvbmcJODIyOTIxNzI4CisJLmxvbmcJMTA2OTIzMTM3NQorCS5sb25nCTIxNDYwMzI3MzcKKwkubG9uZwkxMDIyMzA2NDY1CisJLmxvbmcJMzQ3NDIxNjE5MgorCS5sb25nCTEwNjkyNDc4NTIKKwkubG9uZwkzOTc2ODExNjI1CisJLmxvbmcJMTAyMTM1MDIwNworCS5sb25nCTcxNjkwMjY1NgorCS5sb25nCTEwNjkyNjQzMzIKKwkubG9uZwk3MTgyNjcyMjIKKwkubG9uZwkxMDE4NjI0NzI3CisJLmxvbmcJMTIxMTU5NDQ5NgorCS5sb25nCTEwNjkyODA4MTMKKwkubG9uZwkxNDg1NjQxMzg5CisJLmxvbmcJMTAxODQ0NzQ1MQorCS5sb25nCTczNDA3MDI3MgorCS5sb25nCTEwNjkyOTcyOTYKKwkubG9uZwkzNTQ0NTUxMjgKKwkubG9uZwkxMDIxMzQxMjkxCisJLmxvbmcJMzY1MDExMDcyMAorCS5sb25nCTEwNjkzMTM3ODAKKwkubG9uZwk2ODIxODU5NDcKKwkubG9uZwkxMDIxNjUxODUzCisJLmxvbmcJMTQ0MDY2MzA0MAorCS5sb25nCTEwNjkzMzAyNjcKKwkubG9uZwkzNTU4NTc0NTUwCisJLmxvbmcJMTAyMTYxNTExMAorCS5sb25nCTI3NjY2MTIyMjQKKwkubG9uZwkxMDY5MzQ2NzU1CisJLmxvbmcJODc0NjA3OTc4CisJLmxvbmcJMTAxNzc0Njg3MgorCS5sb25nCTM0MDQwMTEwMDgKKwkubG9uZwkxMDY5MzYzMjQ1CisJLmxvbmcJNDE1NDk4ODUwMgorCS5sb25nCTEwMjE0Mzk5MDYKKwkubG9uZwkzNDIzOTQ5MDU2CisJLmxvbmcJMTA2OTM3OTczNworCS5sb25nCTIyNjMyMDIzMDkKKwkubG9uZwkxMDIxNDc5NjE1CisJLmxvbmcJMjg5NzU4NzcxMgorCS5sb25nCTEwNjkzOTYyMzEKKwkubG9uZwkyNTYyMDY1MDMxCisJLmxvbmcJMTAyMjA5MDM2MworCS5sb25nCTE4OTYxNTkyMzIKKwkubG9uZwkxMDY5NDEyNzI3CisJLmxvbmcJMzgzNjIzNzY2MworCS5sb25nCTEwMTk4NjcyODgKKwkubG9uZwk0OTA5Njg1NzYKKwkubG9uZwkxMDY5NDI5MjI1CisJLmxvbmcJMzMyMjA1Njc0MworCS5sb25nCTEwMDY3NTI3NjIKKwkubG9uZwkzMDQ4MzYwMTkyCisJLmxvbmcJMTA2OTQ0NTcyNAorCS5sb25nCTExNTIzMTQ4MzMKKwkubG9uZwkxMDEzMTIyMjUyCisJLmxvbmcJMTA0OTg1MDYyNAorCS5sb25nCTEwNjk0NjIyMjYKKwkubG9uZwkzNjAxNTkwNzI3CisJLmxvbmcJMTAyMjIxNDYxMAorCS5sb25nCTMxNTY4OTk1ODQKKwkubG9uZwkxMDY5NDc4NzI5CisJLmxvbmcJMTg1NTE2OTk3MAorCS5sb25nCTEwMTk0ODcyNzEKKwkubG9uZwk4NTExNzMzNzYKKwkubG9uZwkxMDY5NDk1MjM1CisJLmxvbmcJMzEyNjQ5NTk0CisJLmxvbmcJMTAyMDg2ODYwNAorCS5sb25nCTI3OTQyODE3MjgKKwkubG9uZwkxMDY5NTExNzQyCisJLmxvbmcJMTA5MzQ5MDE4MQorCS5sb25nCTEwMjA3Nzc1NzcKKwkubG9uZwk0NjgwNDI0OTYKKwkubG9uZwkxMDY5NTI4MjUyCisJLmxvbmcJMTE1MjU0MDY3OQorCS5sb25nCTEwMjE0MDM3MzIKKwkubG9uZwkyNTM0MjE5MjY0CisJLmxvbmcJMTA2OTU0NDc2MworCS5sb25nCTIyOTIxMjYwMzUKKwkubG9uZwkxMDIxODcyNDMwCisJLmxvbmcJMTM3NjE0NjQzMgorCS5sb25nCTEwNjk1NTg1MjcKKwkubG9uZwkzMjkzNzUzNjQxCisJLmxvbmcJMTAyMDUwMDQ1NAorCS5sb25nCTQxNzU0NDI0MzIKKwkubG9uZwkxMDY5NTc1MDQ0CisJLmxvbmcJMzYyNjM0NzU2NAorCS5sb25nCTEwMjE2MTA5NjkKKwkubG9uZwkzNTIzMTEzNDcyCisJLmxvbmcJMTA2OTU5MTU2NgorCS5sb25nCTMzOTk1NjUwMAorCS5sb25nCTEwMjExMTkwMzkKKwkubG9uZwk0MDAzMzUwNTI4CisJLmxvbmcJMTA2OTYwODA5MgorCS5sb25nCTM0MjkzMzMwODIKKwkubG9uZwkxMDIyODEzNTQyCisJLmxvbmcJMTYxMTA2NzM5MgorCS5sb25nCTEwNjk2MjQ2MjMKKwkubG9uZwkyMjk4MDE3NTQ0CisJLmxvbmcJMTAyMTk3NzU4NworCS5sb25nCTkzMTc4MjE0NAorCS5sb25nCTEwNjk2NDExNTgKKwkubG9uZwkyMTY0Njg0NzQzCisJLmxvbmcJMTAyMTI1MDk4OAorCS5sb25nCTIyNTY3MjU1MDQKKwkubG9uZwkxMDY5NjU3Njk3CisJLmxvbmcJMTEzODc2MjMzNQorCS5sb25nCTEwMjE0NDM3NzYKKwkubG9uZwkxNTgyODUzMTIwCisJLmxvbmcJMTA2OTY3NDI0MQorCS5sb25nCTEwODQwMTAzODIKKwkubG9uZwkxMDIyOTk0NjkzCisJLmxvbmcJMzQ5Nzc1ODcyMAorCS5sb25nCTEwNjk2OTA3ODkKKwkubG9uZwk0MDYzNjYyNDQKKwkubG9uZwkxMDIyNzEzNTg2CisJLmxvbmcJMzk5OTgxNjk2MAorCS5sb25nCTEwNjk3MDczNDIKKwkubG9uZwkxNDg4NzIzMDQyCisJLmxvbmcJMTAyMzM4MTI5MAorCS5sb25nCTMzODMwOTYwNjQKKwkubG9uZwkxMDY5NzIzOTAwCisJLmxvbmcJMjU0MTU1ODk1MworCS5sb25nCTEwMTkxMzc4ODcKKwkubG9uZwkxOTQyNDAzNTg0CisJLmxvbmcJMTA2OTc0MDQ2MworCS5sb25nCTE4Nzk2MjAzNDMKKwkubG9uZwkxMDIyNjUzNjQyCisJLmxvbmcJNDI2ODI2MzY4MAorCS5sb25nCTEwNjk3NTcwMzAKKwkubG9uZwkzMDM5MDc3MDQ3CisJLmxvbmcJMTAyMjI1MjU0NQorCS5sb25nCTIwNjcwNjIyNzIKKwkubG9uZwkxMDY5NzczNjAzCisJLmxvbmcJNDE5MDY3MDY3NworCS5sb25nCTEwMjA3MjU4NjMKKwkubG9uZwk0MjI1ODI4MDk2CisJLmxvbmcJMTA2OTc5MDE4MAorCS5sb25nCTE5OTg1NjczMjEKKwkubG9uZwkxMDIyMDE0Mzg1CisJLmxvbmcJMjQ1MjUwNzEzNgorCS5sb25nCTEwNjk4MDY3NjMKKwkubG9uZwkxNTExNjI4ODczCisJLmxvbmcJMTAyMTkwMDMwMAorCS5sb25nCTEzNDA3NDYyNDAKKwkubG9uZwkxMDY5ODIzMzUxCisJLmxvbmcJNzg4MzY3MzQxCisJLmxvbmcJMTAyMjcyNjIwOAorCS5sb25nCTExOTAwMzU0NTYKKwkubG9uZwkxMDY5ODM5OTQ0CisJLmxvbmcJMzg1NjMzNzIzMAorCS5sb25nCTEwMjE4MzQxMTgKKwkubG9uZwkyMzAwNjg4Mzg0CisJLmxvbmcJMTA2OTg1NjU0MgorCS5sb25nCTMyMTEzOTY1NzkKKwkubG9uZwkxMDIyNjIxMzY1CisJLmxvbmcJNjc4ODg2NDAwCisJLmxvbmcJMTA2OTg3MzE0NgorCS5sb25nCTQwMDEwMTE4ODcKKwkubG9uZwkxMDIyMDQyNjQ2CisJLmxvbmcJOTIxNTk0MTEyCisJLmxvbmcJMTA2OTg4OTc1NQorCS5sb25nCTU1NzgxMTk2OAorCS5sb25nCTEwMjMwNjU1MzMKKwkubG9uZwkzMzMxNjY4OTkyCisJLmxvbmcJMTA2OTkwNjM2OQorCS5sb25nCTE4NzcwNjA2NzkKKwkubG9uZwkxMDIyNDE5NzQyCisJLmxvbmcJMzkxNzg3NTIwMAorCS5sb25nCTEwNjk5MjI5ODkKKwkubG9uZwkxMTgxMDU1MTcxCisJLmxvbmcJMTAyMjc1MjcxMgorCS5sb25nCTI5ODQ4Mjk2OTYKKwkubG9uZwkxMDY5OTM5NjE1CisJLmxvbmcJNDI5NDUyNjkzMgorCS5sb25nCTEwMjE0OTk5ODgKKwkubG9uZwk4MzgwNDkwMjQKKwkubG9uZwkxMDY5OTU2MjQ3CisJLmxvbmcJMzY1ODA4MTg3OAorCS5sb25nCTEwMjI5NTc5NTIKKwkubG9uZwkyMDc4OTI4Mzg0CisJLmxvbmcJMTA2OTk3Mjg4NAorCS5sb25nCTgyMDM1MzcwMQorCS5sb25nCTEwMTkzOTExMDcKKwkubG9uZwkyNzE5ODU0MzM2CisJLmxvbmcJMTA2OTk4OTUyNworCS5sb25nCTE2NDQwMjI0ODkKKwkubG9uZwkxMDIzMzc4MjQwCisJLmxvbmcJMzA2OTExNzY5NgorCS5sb25nCTEwNzAwMDYxNzYKKwkubG9uZwkyNzcxMzkzNzAyCisJLmxvbmcJMTAxOTMxOTk1NAorCS5sb25nCTM0MzU5NjIzNjgKKwkubG9uZwkxMDcwMDIyODMxCisJLmxvbmcJMzg3NjM5NDE0NQorCS5sb25nCTEwMjMwMjQ0MzMKKwkubG9uZwk0MTMwNTk1MzI4CisJLmxvbmcJMTA3MDAzOTQ5MgorCS5sb25nCTE2MzA0NDc3NDgKKwkubG9uZwkxMDIxNDY1ODgyCisJLmxvbmcJMTE2OTIzNjIyNAorCS5sb25nCTEwNzAwNTYxNjAKKwkubG9uZwkyODI4MzU1OTk3CisJLmxvbmcJMTAyMDQ1ODEyMAorCS5sb25nCTM0NTM5OTczMTIKKwkubG9uZwkxMDcwMDcyODMzCisJLmxvbmcJMTY0MDkxNjQxCisJLmxvbmcJMTAyMDM4ODI3OQorCS5sb25nCTI3MDgxMjc3NDQKKwkubG9uZwkxMDcwMDg5NTEzCisJLmxvbmcJMzAzNjU1MDIyMworCS5sb25nCTEwMjMzMjg2ODQKKwkubG9uZwkzNTQwNzk3Njk2CisJLmxvbmcJMTA3MDEwNjE5OQorCS5sb25nCTM3MTA5NDk0NjMKKwkubG9uZwkxMDIyNTY4ODA1CisJLmxvbmcJMTk3MjI3NjczNgorCS5sb25nCTEwNzAxMjI4OTIKKwkubG9uZwkzODg1Mjc3OTUwCisJLmxvbmcJMTAxOTc2MTY3NAorCS5sb25nCTI2MTM4MTU1NTIKKwkubG9uZwkxMDcwMTM5NTkxCisJLmxvbmcJMjc2NDE2NTA3NworCS5sb25nCTEwMjI5MjEwMjMKKwkubG9uZwkxNDg3NzkxNjE2CisJLmxvbmcJMTA3MDE1NjI5NworCS5sb25nCTEzMzA2NDQ3NjkKKwkubG9uZwkxMDIzMTYyNjc5CisJLmxvbmcJMzIwNzU5MzQ3MgorCS5sb25nCTEwNzAxNzMwMDkKKwkubG9uZwkzOTExMDA3MjIxCisJLmxvbmcJMTAyMjk5MzQ5NgorCS5sb25nCTM3OTc3NjQ2MDgKKwkubG9uZwkxMDcwMTg5NzI4CisJLmxvbmcJOTc5NzEyNTk4CisJLmxvbmcJMTAyMjU1NDU4MAorCS5sb25nCTM1Nzg5MjA0NDgKKwkubG9uZwkxMDcwMjA2NDU0CisJLmxvbmcJMjgyNTczODIyMworCS5sb25nCTEwMjAyMjM3MDgKKwkubG9uZwkyODcyNzk1NjQ4CisJLmxvbmcJMTA3MDIyMzE4NworCS5sb25nCTM5MjQ1MTEyNAorCS5sb25nCTEwMjI2NjYyNzkKKwkubG9uZwkyMDAyMjU4NDMyCisJLmxvbmcJMTA3MDIzOTkyNworCS5sb25nCTM3MzA0MDc2MzIKKwkubG9uZwkxMDIzMTQ4MjkxCisJLmxvbmcJMTI5MTMyNjQ2NAorCS5sb25nCTEwNzAyNTY2NzQKKwkubG9uZwkzNzIzODAyOTgwCisJLmxvbmcJMTAyMjUxNDA4OQorCS5sb25nCTEwNjUxODA5MjgKKwkubG9uZwkxMDcwMjczNDI4CisJLmxvbmcJMjYzNTYxNzQ2MworCS5sb25nCTEwMjI2NTQ0NzAKKwkubG9uZwkxNjUwMTgxNjMyCisJLmxvbmcJMTA3MDI5MDE4OQorCS5sb25nCTIwNjE5ODI4ODMKKwkubG9uZwkxMDIyODUzNDExCisJLmxvbmcJMzM3Mzg4Mjg4MAorCS5sb25nCTEwNzAzMDY5NTcKKwkubG9uZwkzMTk3MzI3ODUKKwkubG9uZwkxMDIyMDE3MTc1CisJLmxvbmcJMjI3MDA4MTI4MAorCS5sb25nCTEwNzAzMjM3MzMKKwkubG9uZwkyMjM3NzU3NDExCisJLmxvbmcJMTAyMzA2NDA4NworCS5sb25nCTI5NjM3MzI3MzYKKwkubG9uZwkxMDcwMzQwNTE2CisJLmxvbmcJNDY4ODM5MTY1CisJLmxvbmcJMTAyMzI5Mzc3NAorCS5sb25nCTE0OTEwOTk5MDQKKwkubG9uZwkxMDcwMzU3MzA3CisJLmxvbmcJMTUwMjY1Nzk0NgorCS5sb25nCTEwMjE1MzM0NzkKKwkubG9uZwkyNDc5NjM2NDgwCisJLmxvbmcJMTA3MDM3NDEwNQorCS5sb25nCTQ4MjkxMzU2MgorCS5sb25nCTEwMjE5ODYyODYKKwkubG9uZwkxOTY4MTMzNjMyCisJLmxvbmcJMTA3MDM5MDkxMQorCS5sb25nCTMyODE0NzQzMzcKKwkubG9uZwkxMDIyNjQ2NDAwCisJLmxvbmcJMjkxNjM5MDQwCisJLmxvbmcJMTA3MDQwNzcyNQorCS5sb25nCTI0NTMzMjAyNTkKKwkubG9uZwkxMDIyODEyNDIzCisJLmxvbmcJMjA4MTQ3MjUxMgorCS5sb25nCTEwNzA0MjQ1NDYKKwkubG9uZwkyOTM5OTg5NTcwCisJLmxvbmcJMTAyMzA5MTg4OAorCS5sb25nCTMzODAzNDA0ODAKKwkubG9uZwkxMDcwNDQxMzc1CisJLmxvbmcJMjg1MDcwNzQ5OQorCS5sb25nCTEwMjE5MjExMDkKKwkubG9uZwkyMzIyODc0ODgKKwkubG9uZwkxMDcwNDU4MjEzCisJLmxvbmcJMzY3NDYyNTM0MgorCS5sb25nCTEwMjA3MjUxMzAKKwkubG9uZwkxNTY3NjE0MjA4CisJLmxvbmcJMTA3MDQ3NTA1OAorCS5sb25nCTkzNDczMzQKKwkubG9uZwkxMDIyMDI0MDA5CisJLmxvbmcJMzQzMzA5MTA3MgorCS5sb25nCTEwNzA0OTE5MTEKKwkubG9uZwkyODI1MjQ5OTkKKwkubG9uZwkxMDIxNDMzNTIzCisJLmxvbmcJMTg3Njg3NzMxMgorCS5sb25nCTEwNzA1MDg3NzMKKwkubG9uZwkzNDcwNDQ5NDQwCisJLmxvbmcJMTAxOTMwOTcyMQorCS5sb25nCTE1Mzg0NzIxOTIKKwkubG9uZwkxMDcwNTI1NjQzCisJLmxvbmcJMjA4OTQ4NjgyNQorCS5sb25nCTEwMTk2OTg5MTYKKwkubG9uZwkyNzYzODMwNzg0CisJLmxvbmcJMTA3MDU0MjUyMQorCS5sb25nCTQ0MzQ5ODExNQorCS5sb25nCTEwMjA1MDUxOTQKKwkubG9uZwkxNjA1MzgxNjMyCisJLmxvbmcJMTA3MDU1OTQwOAorCS5sb25nCTMwMTg4NzE2MDEKKwkubG9uZwkxMDIyODY5OTEzCisJLmxvbmcJMjcwNjk0NjA0OAorCS5sb25nCTEwNzA1NzYzMDMKKwkubG9uZwkzOTM2MjYwODkyCisJLmxvbmcJMTAyMzE3NTg3NQorCS5sb25nCTIxMjM4ODczNjAKKwkubG9uZwkxMDcwNTkzMjA3CisJLmxvbmcJMjk5NDIyMDY1NQorCS5sb25nCTEwMjI4MjU5NDgKKwkubG9uZwkxMDQwMTUxMDQKKwkubG9uZwkxMDcwNjAzMTA4CisJLmxvbmcJMzM1MDU0NDkzCisJLmxvbmcJMTAyMzQ0MTg1MworCS5sb25nCTI5MDQ1Njg4MzIKKwkubG9uZwkxMDcwNjE1ODAwCisJLmxvbmcJMTQ1MTIxNTYzMworCS5sb25nCTEwMjM4NTM4NTcKKwkubG9uZwkzNDU2MTk3MTIwCisJLmxvbmcJMTA3MDYzMjczOQorCS5sb25nCTQzNjMzNDczMworCS5sb25nCTEwMjQwMjY0MzIKKwkubG9uZwkyNTI0NTIzNTIKKwkubG9uZwkxMDcwNjQ5Njk3CisJLmxvbmcJMzQ1OTYxNjcKKwkubG9uZwkxMDI0MDMxMzk2CisJLmxvbmcJMzMyODAxODQzMgorCS5sb25nCTEwNzA2NjY2NzIKKwkubG9uZwkyNjQ0NTQ3MDczCisJLmxvbmcJMTAyNDI5Njc1OAorCS5sb25nCTEyNTU4MjkyNDgKKwkubG9uZwkxMDcwNjgzNjY3CisJLmxvbmcJNTUyODMyNTg2CisJLmxvbmcJMTAyMzc2MzEyMgorCS5sb25nCTQwOTcwNTg1NjAKKwkubG9uZwkxMDcwNzAwNjgwCisJLmxvbmcJMTk1NTY0MDYyMworCS5sb25nCTEwMjEzOTQ2NTQKKwkubG9uZwk0NTE3NzAxMTIKKwkubG9uZwkxMDcwNzE3NzE0CisJLmxvbmcJMzQyODkwMzc3NworCS5sb25nCTEwMjI5NDExNDIKKwkubG9uZwk0MDg5MjA4MzIKKwkubG9uZwkxMDcwNzM0NzY3CisJLmxvbmcJMTY1NTAzMjYzCisJLmxvbmcJMTAyMzg5NDk1OAorCS5sb25nCTExODY5NjA2NDAKKwkubG9uZwkxMDcwNzUxODQwCisJLmxvbmcJNDM1ODI2NDUwCisJLmxvbmcJMTAyNDAyNjEzNAorCS5sb25nCTE5MDc4NjU2CisJLmxvbmcJMTA3MDc2ODkzNAorCS5sb25nCTE4MzQxNjk3NDkKKwkubG9uZwkxMDIyODk5Mjg0CisJLmxvbmcJMjc0MzQ5MDMwNAorCS5sb25nCTEwNzA3ODYwNDgKKwkubG9uZwk0OTQ1ODEwNzQKKwkubG9uZwkxMDE4ODE4NDc5CisJLmxvbmcJMjMyODk2MTAyNAorCS5sb25nCTEwNzA4MDMxODQKKwkubG9uZwkyOTg3OTA4ODM0CisJLmxvbmcJMTAyMjU4MTExMAorCS5sb25nCTM1MDAxMTM5MgorCS5sb25nCTEwNzA4MjAzNDIKKwkubG9uZwkyNDA3NzExODQKKwkubG9uZwkxMDI0MTQzMDgzCisJLmxvbmcJMjY5MjMyNjkxMgorCS5sb25nCTEwNzA4Mzc1MjEKKwkubG9uZwk2NjYwNTY4MzcKKwkubG9uZwkxMDIyMzk0Nzc2CisJLmxvbmcJMjM3MzI3NDM2OAorCS5sb25nCTEwNzA4NTQ3MjMKKwkubG9uZwkyNDg0MzM3NzcwCisJLmxvbmcJMTAyNDIyODE1NgorCS5sb25nCTEwMTcxMzE1MjAKKwkubG9uZwkxMDcwODcxOTQ4CisJLmxvbmcJMzI4NTY0ODI3OQorCS5sb25nCTEwMjQwMjU3ODkKKwkubG9uZwkyNjU1NTgyNzIKKwkubG9uZwkxMDcwODg5MTk2CisJLmxvbmcJMzkyMjQxODk2CisJLmxvbmcJMTAyNDI1MjgwOQorCS5sb25nCTE3NzgwMDgwNjQKKwkubG9uZwkxMDcwOTA2NDY3CisJLmxvbmcJMTUzNjEwNzk0MworCS5sb25nCTEwMjM5NDkzMDAKKwkubG9uZwkyOTM3MTg0NzY4CisJLmxvbmcJMTA3MDkyMzc2MgorCS5sb25nCTM1NDEwNjIyNTEKKwkubG9uZwkxMDE5NDQ4NjQ2CisJLmxvbmcJMTE0NDQ0Mjg4MAorCS5sb25nCTEwNzA5NDEwODIKKwkubG9uZwkzNjkxNjgzNzgxCisJLmxvbmcJMTAyMjEyMzk0OAorCS5sb25nCTI0MTAxNjU1MDQKKwkubG9uZwkxMDcwOTU4NDI2CisJLmxvbmcJMTgwNDE4MTk2MAorCS5sb25nCTEwMjM5NDUyMjEKKwkubG9uZwk0MTc0MzUwODQ4CisJLmxvbmcJMTA3MDk3NTc5NQorCS5sb25nCTIwMTYwOTQ4NjEKKwkubG9uZwkxMDIxNzE2NTg1CisJLmxvbmcJMzg5NzAxMjQ4MAorCS5sb25nCTEwNzA5OTMxOTAKKwkubG9uZwkxNzUyOTQ0MTAKKwkubG9uZwkxMDIzNzAzNDA0CisJLmxvbmcJMzM1MzYyMzA0MAorCS5sb25nCTEwNzEwMTA2MTEKKwkubG9uZwkxNjc5NzMyNDIKKwkubG9uZwkxMDIzMjQwODM5CisJLmxvbmcJNDU2NzExNjgKKwkubG9uZwkxMDcxMDI4MDU5CisJLmxvbmcJMjE2Njg1NjExMworCS5sb25nCTEwMjE1NjU0MTMKKwkubG9uZwk4NjA2Mzg3MgorCS5sb25nCTEwNzEwNDU1MzMKKwkubG9uZwkyNjc2MjU0NzI3CisJLmxvbmcJMTAyMzk4NTI5OQorCS5sb25nCTEwMTk3NzI2NzIKKwkubG9uZwkxMDcxMDYzMDM0CisJLmxvbmcJOTg5MDQzNTkzCisJLmxvbmcJMTAyMTU0OTU4NworCS5sb25nCTQxNDI5NzM0NAorCS5sb25nCTEwNzEwODA1NjMKKwkubG9uZwkzOTYwOTcyMDQ2CisJLmxvbmcJMTAyNDMwNzI1MQorCS5sb25nCTE1NTE3MzEyMAorCS5sb25nCTEwNzEwOTgxMjAKKwkubG9uZwkxODMwOTE5MjkxCisJLmxvbmcJMTAyMTU5MjI1MQorCS5sb25nCTIxNTE1NjIyNDAKKwkubG9uZwkxMDcxMTE1NzA1CisJLmxvbmcJNDA1NDA4NjY2CisJLmxvbmcJMTAyMzQyMzEyOAorCS5sb25nCTQwNDE4NTQ3MjAKKwkubG9uZwkxMDcxMTMzMzE5CisJLmxvbmcJMjA0MzQ5NzgyNworCS5sb25nCTEwMjQ0MTE1MDMKKwkubG9uZwkzNDg5MjI0MTkyCisJLmxvbmcJMTA3MTE1MDk2MworCS5sb25nCTMwNzIyMTU4NjQKKwkubG9uZwkxMDIyNjk4NjM1CisJLmxvbmcJMjQ3NzE5NjI4OAorCS5sb25nCTEwNzExNjg2MzcKKwkubG9uZwkxODEyMTk1MTM5CisJLmxvbmcJMTAyMjY4OTE5MgorCS5sb25nCTMwMTUyOTg4MTYKKwkubG9uZwkxMDcxMTg2MzQxCisJLmxvbmcJNzY0ODQxOTY5CisJLmxvbmcJMTAyMTAyNzMzMQorCS5sb25nCTI4NDQ3MzExMzYKKwkubG9uZwkxMDcxMjA0MDc2CisJLmxvbmcJMjg3ODExNzMyMQorCS5sb25nCTEwMTkxMTY1MTMKKwkubG9uZwk0MDI4OTUwNTI4CisJLmxvbmcJMTA3MTIyMTg0MgorCS5sb25nCTY5ODkxMTQ1MgorCS5sb25nCTEwMjMyNjU2MDIKKwkubG9uZwk2OTQ0MTUzNgorCS5sb25nCTEwNzEyMzk2NDEKKwkubG9uZwkzMjUzNDY3ODQ3CisJLmxvbmcJMTAyMDc5NTA3NQorCS5sb25nCTE2NzYyMDk5MjAKKwkubG9uZwkxMDcxMjU3NDcxCisJLmxvbmcJNDI3MjQzMTE2NworCS5sb25nCTEwMjI4NzM5ODIKKwkubG9uZwkyNDA4NzUyMzg0CisJLmxvbmcJMTA3MTI3NTMzNAorCS5sb25nCTY0ODUxOTEwMAorCS5sb25nCTEwMjQzODU3MTcKKwkubG9uZwkxNTE2MjM2ODAKKwkubG9uZwkxMDcxMjkzMjMxCisJLmxvbmcJMzQ1MjU3MDE3CisJLmxvbmcJMTAxOTU2MTQwOAorCS5sb25nCTE0MTAxNTQyNDAKKwkubG9uZwkxMDcxMzExMTYxCisJLmxvbmcJMTk3ODYzOTkzCisJLmxvbmcJMTAyMzIyNDIwNworCS5sb25nCTQxMzEzNTE1NTIKKwkubG9uZwkxMDcxMzI5MTI1CisJLmxvbmcJMjYyMDgwMTc4OQorCS5sb25nCTEwMjQ0MTExNjkKKwkubG9uZwkxOTk5NjY0Mzg0CisJLmxvbmcJMTA3MTM0NzEyNQorCS5sb25nCTM5NTI2OTI2MTYKKwkubG9uZwkxMDI0MTY4MDg2CisJLmxvbmcJMTYxNzY2ODg2NAorCS5sb25nCTEwNzEzNjUxNjAKKwkubG9uZwkzMDE5ODg5ODA5CisJLmxvbmcJMTAyMTkwNzY5MgorCS5sb25nCTEwMzIwNzQyNDAKKwkubG9uZwkxMDcxMzgzMjMxCisJLmxvbmcJNTk0Njk4OTkKKwkubG9uZwkxMDIzNjU2MTk0CisJLmxvbmcJMjYxOTQ5MjA5NgorCS5sb25nCTEwNzE0MDEzMzgKKwkubG9uZwkxNDE3NTI2ODIwCisJLmxvbmcJMTAyMTQ1Nzc4MworCS5sb25nCTIwMjQyOTQ0MAorCS5sb25nCTEwNzE0MTk0ODMKKwkubG9uZwkyOTI3NjY3OTM1CisJLmxvbmcJMTAxOTE3NTQ0NworCS5sb25nCTUyNTA0NDIyNAorCS5sb25nCTEwNzE0Mzc2NjUKKwkubG9uZwkzODE2NjgxMQorCS5sb25nCTEwMjM5ODE4NzkKKwkubG9uZwkxNzc5MjU4ODgwCisJLmxvbmcJMTA3MTQ1NTg4NQorCS5sb25nCTQ4MTI1MjUwMAorCS5sb25nCTEwMjMzMTAyMzQKKwkubG9uZwkyMTk1NjczNjAwCisJLmxvbmcJMTA3MTQ3NDE0NAorCS5sb25nCTM5NjIzOTU5ODEKKwkubG9uZwkxMDIxMzM5MDg4CisJLmxvbmcJNDQ1NzM2OTYKKwkubG9uZwkxMDcxNDkyNDQzCisJLmxvbmcJMzkzNjI4MTM5NQorCS5sb25nCTEwMjMwMTQ4MjkKKwkubG9uZwkyMjI2OTA1MzQ0CisJLmxvbmcJMTA3MTUxMDc4MQorCS5sb25nCTE1MTUzMjA0NzYKKwkubG9uZwkxMDI0MzIwNjIzCisJLmxvbmcJMjgwMDUxMjUxMgorCS5sb25nCTEwNzE1MjkxNjAKKwkubG9uZwkxMjI1NDAzNjk3CisJLmxvbmcJMTAyMTA4MTg0NgorCS5sb25nCTE2MTExMzYwMAorCS5sb25nCTEwNzE1NDc1ODEKKwkubG9uZwkzMDY0ODA5NzMzCisJLmxvbmcJMTAyNDE3MzkxNworCS5sb25nCTEzMzg0MTAyNDAKKwkubG9uZwkxMDcxNTY2MDQzCisJLmxvbmcJMjAyNzYwNDk3MworCS5sb25nCTEwMjQzNjI1MjYKKwkubG9uZwk1MjI0MzMyODAKKwkubG9uZwkxMDcxNTg0NTQ4CisJLmxvbmcJMjA1NTE3MTcyMworCS5sb25nCTEwMjM4NTg4MjUKKwkubG9uZwk1Mzk1OTU3NzYKKwkubG9uZwkxMDcxNjAzMDk2CisJLmxvbmcJMzg2ODgyMDEzNQorCS5sb25nCTEwMjI5MzY0MjQKKwkubG9uZwk0MjY0MDE3NjY0CisJLmxvbmcJMTA3MTYyMTY4NworCS5sb25nCTMyMjgwNjUxNDUKKwkubG9uZwkxMDIzNDc5NTc4CisJLmxvbmcJMTczMzkyNDA5NgorCS5sb25nCTEwNzE2NDAzMjQKKwkubG9uZwkzNTExOTM0NDc1CisJLmxvbmcJMTAyMjQ5NjM1NQorCS5sb25nCTEwODg4MDM4NAorCS5sb25nCTEwNzE2NTE4MzkKKwkubG9uZwk2MTU4ODA5NjcKKwkubG9uZwkxMDIzNTE5NzA2CisJLmxvbmcJMzUxNzg1NjUxMgorCS5sb25nCTEwNzE2NjEyMDIKKwkubG9uZwkzMTEzMTA4NTU5CisJLmxvbmcJMTAyNTE5MDI4OQorCS5sb25nCTQwNDMxNTMxNTIKKwkubG9uZwkxMDcxNjcwNTg5CisJLmxvbmcJMTU3MTgzNjIxOAorCS5sb25nCTEwMjMxMDYxMTYKKwkubG9uZwkzMjUxMjk5MDcyCisJLmxvbmcJMTA3MTY4MDAwMAorCS5sb25nCTM0NDQwNzYxMDIKKwkubG9uZwkxMDIyMTg3ODQxCisJLmxvbmcJMjczNjkyMTYwMAorCS5sb25nCTEwNzE2ODk0MzUKKwkubG9uZwkyNzI3NzE0ODMKKwkubG9uZwkxMDI1MDk1MjgwCisJLmxvbmcJMzg5NzY5ODU2MAorCS5sb25nCTEwNzE3MDM2MzMKKwkubG9uZwkyMDc1MzkwMTg4CisJLmxvbmcJMTAyMjQ4OTAyMgorCS5sb25nCTMyMDk0ODUwNTYKKwkubG9uZwkxMDcxNzIyNjUyCisJLmxvbmcJMTQzODA5NDA2NQorCS5sb25nCTEwMjE4NDQ5NDQKKwkubG9uZwkzNzgxNDMyMDY0CisJLmxvbmcJMTA3MTc0MTc3NAorCS5sb25nCTE2NzUwMTcxNDUKKwkubG9uZwkxMDI0MTQzODI4CisJLmxvbmcJMjY4NDE4NDA2NAorCS5sb25nCTEwNzE3NjEwMDMKKwkubG9uZwkyMjU5OTYzNzUzCisJLmxvbmcJMTAyNDczMTM5MworCS5sb25nCTE4NDA0ODk3MjgKKwkubG9uZwkxMDcxNzgwMzQyCisJLmxvbmcJMzM3Mjg4MzU5NworCS5sb25nCTEwMjM0MzE0MDgKKwkubG9uZwkzNzY0MDg3ODA4CisJLmxvbmcJMTA3MTc5OTc5NAorCS5sb25nCTMzMDc1MjMxMDIKKwkubG9uZwkxMDI0NDg1Nzg4CisJLmxvbmcJMzAwNjIzMjMyMAorCS5sb25nCTEwNzE4MTkzNjQKKwkubG9uZwkzMDg4OTcxOTY2CisJLmxvbmcJMTAyNTIxMzI1MQorCS5sb25nCTMzNzQ4ODEyODAKKwkubG9uZwkxMDcxODM5MDU1CisJLmxvbmcJODM0NDM3NzQ5CisJLmxvbmcJMTAyNTIzNjQ1MgorCS5sb25nCTc5NzI4NDg2NAorCS5sb25nCTEwNzE4NTg4NzIKKwkubG9uZwkzMTIyNjYzOTQxCisJLmxvbmcJMTAyNTMyMDQ3MworCS5sb25nCTU0NTc2NTEyMAorCS5sb25nCTEwNzE4Nzg4MTgKKwkubG9uZwk4MjY1Mzk2MjUKKwkubG9uZwkxMDIyNDUwOTU1CisJLmxvbmcJMTA3NTYyMjQwCisJLmxvbmcJMTA3MTg5ODg5OAorCS5sb25nCTMzOTU4NDYwMAorCS5sb25nCTEwMjI0ODEyNTUKKwkubG9uZwkyMTIzNjQ5MDI0CisJLmxvbmcJMTA3MTkxOTExNgorCS5sb25nCTM5MTI5NTk4MzMKKwkubG9uZwkxMDI0MzIxMDA5CisJLmxvbmcJMTU2MjM4NTY2NAorCS5sb25nCTEwNzE5Mzk0NzgKKwkubG9uZwkyODQ2MDY3MjMwCisJLmxvbmcJMTAyMzM0Mzk4MQorCS5sb25nCTI5NjMwODU4MjQKKwkubG9uZwkxMDcxOTU5OTg4CisJLmxvbmcJOTU0NTQ4NjI3CisJLmxvbmcJMTAyMTQ3NTIxMQorCS5sb25nCTMzMjU1NTA1OTIKKwkubG9uZwkxMDcxOTgwNjUyCisJLmxvbmcJMzQ1OTY1MTE1NQorCS5sb25nCTEwMjUzMDU1NzMKKwkubG9uZwk3NzU3NTI0NDgKKwkubG9uZwkxMDcyMDAxNDc2CisJLmxvbmcJMzU4Mjc0NjY2NworCS5sb25nCTEwMjM4NTk0NjAKKwkubG9uZwkzMjM4NTkwNzIwCisJLmxvbmcJMTA3MjAyMjQ2NAorCS5sb25nCTYzNDYzNjE2MgorCS5sb25nCTEwMjQ0NzIzNTMKKwkubG9uZwkyNzU4ODAxOTIwCisJLmxvbmcJMTA3MjA0MzYyNAorCS5sb25nCTMwNzgyMTYzMTkKKwkubG9uZwkxMDI1MzA0NTE2CisJLmxvbmcJMTM3MDMxOTEwNAorCS5sb25nCTEwNzIwNjQ5NjIKKwkubG9uZwkyNTcwNTY5MDc4CisJLmxvbmcJMTAyNTA5OTQ0MgorCS5sb25nCTI2MTU4MDUxODQKKwkubG9uZwkxMDcyMDg2NDg0CisJLmxvbmcJMzcyOTkzMzQxMgorCS5sb25nCTEwMjQ2MDUxMTIKKwkubG9uZwkzMDc3MzM2NTc2CisJLmxvbmcJMTA3MjEwODE5OAorCS5sb25nCTE5NDg5MTYwNjYKKwkubG9uZwkxMDI0NzgxNjAzCisJLmxvbmcJMTA5OTUyODE5MgorCS5sb25nCTEwNzIxMzAxMTIKKwkubG9uZwkzMTM5MTQzMTU3CisJLmxvbmcJMTAyMzcyOTM2MAorCS5sb25nCTEyMzE5MDMyMzIKKwkubG9uZwkxMDcyMTUyMjMzCisJLmxvbmcJMTM0OTUxMzQ3NworCS5sb25nCTEwMjQ3Mzc1MTUKKwkubG9uZwkxNTA3NTA0MTI4CisJLmxvbmcJMTA3MjE3NDU3MAorCS5sb25nCTM0ODQ1MTYzMjIKKwkubG9uZwkxMDI0MDAwOTU5CisJLmxvbmcJMjIxNDY1OTg0MAorCS5sb25nCTEwNzIxOTcxMzIKKwkubG9uZwkyNTYzODIwOTE3CisJLmxvbmcJMTAyNTIyNTUzNQorCS5sb25nCTE4MDQ3Mzk4NDAKKwkubG9uZwkxMDcyMjE5OTI5CisJLmxvbmcJNzYwMDM4NzQ2CisJLmxvbmcJMTAyNDQ4Mjg1NQorCS5sb25nCTE0MTM3NDY2ODgKKwkubG9uZwkxMDcyMjQyOTcxCisJLmxvbmcJMzQwMTczNDcxNAorCS5sb25nCTEwMjUxMjk4MzgKKwkubG9uZwk4MjE0MDk1MzYKKwkubG9uZwkxMDcyMjY2MjY5CisJLmxvbmcJMzcyOTc3MjU1MQorCS5sb25nCTEwMjU0ODQ3OTYKKwkubG9uZwkzMDMxODI1NjY0CisJLmxvbmcJMTA3MjI4OTgzNAorCS5sb25nCTEyMjI1Njc0OQorCS5sb25nCTEwMjQ3NTI1OTQKKwkubG9uZwkxNzEwNzg0MjU2CisJLmxvbmcJMTA3MjMxMzY4MAorCS5sb25nCTE1MTgyMDU0ODMKKwkubG9uZwkxMDI0NzI0ODA5CisJLmxvbmcJMzAyNTI2NTE1MgorCS5sb25nCTEwNzIzMzc4MTkKKwkubG9uZwk0MDk5NTE5ODkKKwkubG9uZwkxMDIyODM1NTU1CisJLmxvbmcJMjg3NzY5MDg4CisJLmxvbmcJMTA3MjM2MjI2NworCS5sb25nCTgwMDM1NTU5NAorCS5sb25nCTEwMjI0ODQ4NTAKKwkubG9uZwkxOTgxNzk4NDAKKwkubG9uZwkxMDcyMzg3MDM4CisJLmxvbmcJMzUwMjkyNjIxMworCS5sb25nCTEwMjQyMDkzNzMKKwkubG9uZwkxOTA5MTMwNDk2CisJLmxvbmcJMTA3MjQxMjE0OQorCS5sb25nCTMwNjQ2OTQzMTkKKwkubG9uZwkxMDI1MzgwODIzCisJLmxvbmcJMTk0MTczMjA5NgorCS5sb25nCTEwNzI0Mzc2MTkKKwkubG9uZwk0MTEyOTMwMzkwCisJLmxvbmcJMTAyNDI5NDY3OQorCS5sb25nCTM0OTIwMTA0OTYKKwkubG9uZwkxMDcyNDYzNDY3CisJLmxvbmcJMjY4NDkxODEwNworCS5sb25nCTEwMjMyMjAyMzMKKwkubG9uZwk4MTk1OTY4MAorCS5sb25nCTEwNzI0ODk3MTYKKwkubG9uZwkyMjAwMjEzNjYKKwkubG9uZwkxMDIwNjM1MTMxCisJLmxvbmcJMjI5NzgzNzA1NgorCS5sb25nCTEwNzI1MTYzODcKKwkubG9uZwk0MDI3NjgzODI2CisJLmxvbmcJMTAyMTA0MTE4NQorCS5sb25nCTI3MDQwNDA5NgorCS5sb25nCTEwNzI1NDM1MDgKKwkubG9uZwkyMDEyNzY2MDY1CisJLmxvbmcJMTAyMTc4MDc1MworCS5sb25nCTM2NjczNzY4OTYKKwkubG9uZwkxMDcyNTcxMTA1CisJLmxvbmcJMjcyNzk4MTUyMgorCS5sb25nCTEwMjMwMDk4NzQKKwkubG9uZwkzMzA0MDAyNTYKKwkubG9uZwkxMDcyNTk5MjEyCisJLmxvbmcJMjk0MDAxNzAwMworCS5sb25nCTEwMjUzOTM0MzkKKwkubG9uZwkxMTE5MjkzOTUyCisJLmxvbmcJMTA3MjYyNzg2MQorCS5sb25nCTE2MDg1NTA0MTYKKwkubG9uZwkxMDIyNjc1NjEyCisJLmxvbmcJMzUzNjE1NTkwNAorCS5sb25nCTEwNzI2NTcwOTEKKwkubG9uZwkzNDk2NjU3NzgKKwkubG9uZwkxMDI1MTU2NzUxCisJLmxvbmcJMzA3ODA0NjcyMAorCS5sb25nCTEwNzI2ODY5NDYKKwkubG9uZwkyMDE2MTU5OTk2CisJLmxvbmcJMTAyMjE5MzE2OQorCS5sb25nCTQ1NTIyODQxNgorCS5sb25nCTEwNzI3MDUzNjEKKwkubG9uZwkxOTA4NTM5MzI4CisJLmxvbmcJMTAyNjEyNjMzMgorCS5sb25nCTE4NzE1MDU2NjQKKwkubG9uZwkxMDcyNzIwOTg4CisJLmxvbmcJMjc4NDcwMDg5NAorCS5sb25nCTEwMjU5MjIyNzcKKwkubG9uZwkxNjMwOTk0NDMyCisJLmxvbmcJMTA3MjczNzAxMAorCS5sb25nCTM2MTEwNzY3OAorCS5sb25nCTEwMjI4ODcyNDQKKwkubG9uZwkyMDg0NTU4MzM2CisJLmxvbmcJMTA3Mjc1MzQ2MgorCS50eXBlCVRibF9hZGRyLEBvYmplY3QKKwkuc2l6ZQlUYmxfYWRkciwzODQwCisJLnNwYWNlIDc2OCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK2N2OgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTczODA2OTMKKwkubG9uZwk4NTg5OTM0NTkKKwkubG9uZwkzMjE2MTkyMzA3CisJLmxvbmcJMzA2NzgzMzc4MworCS5sb25nCTMyMTUzODM0MDUKKwkudHlwZQljdixAb2JqZWN0CisJLnNpemUJY3YsMzIKKwkuYWxpZ24gMTYKK1BJX0JZXzI6CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLnR5cGUJUElfQllfMixAb2JqZWN0CisJLnNpemUJUElfQllfMiwxNgorCS5hbGlnbiAxNgorTkVHX1BJOgorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTMxNjQ3MTA0MzgKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMzIyMTgyMzk5NQorCS50eXBlCU5FR19QSSxAb2JqZWN0CisJLnNpemUJTkVHX1BJLDE2CisJLmFsaWduIDE2CitjdjI6CisJLmxvbmcJNzgwOTAzMTQ1CisJLmxvbmcJMTA2Njg1NDU4NgorCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTEwNjg3MDg2NTkKKwkubG9uZwkzMzQwNTMwMTE5CisJLmxvbmcJMTA2NzM5MjExMworCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTMyMTUyODM5OQorCS5sb25nCTEwNjY1MTc3NDAKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMTA2Nzg5OTc1NworCS5sb25nCTIwMjExNTk0NjAKKwkubG9uZwkxMDY1ODU1MDk2CisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNjYxNzg5NjkKKwkudHlwZQljdjIsQG9iamVjdAorCS5zaXplCWN2Miw2NAorCS5hbGlnbiAxNgorSEFMRk1BU0s6CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUhBTEZNQVNLLEBvYmplY3QKKwkuc2l6ZQlIQUxGTUFTSywxNgorCS5hbGlnbiAxNgorUEk6CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNzIyNjc5MAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDc0MzQwMzQ3CisJLnR5cGUJUEksQG9iamVjdAorCS5zaXplCVBJLDE2CisJLmFsaWduIDQKK09ORU1BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkVNQVNLLEBvYmplY3QKKwkuc2l6ZQlPTkVNQVNLLDgKKwkuYWxpZ24gNAorVE1BU0s6CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTA5MTIKKwkudHlwZQlUTUFTSyxAb2JqZWN0CisJLnNpemUJVE1BU0ssOAorCS5hbGlnbiA0CitPTkVfQllfMjoKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS50eXBlCU9ORV9CWV8yLEBvYmplY3QKKwkuc2l6ZQlPTkVfQllfMiw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYWNvcy4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYWNvcy41LS4uX19fdGFnX3ZhbHVlX2Fjb3MuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYWNvcy4zLS4uX19fdGFnX3ZhbHVlX2Fjb3MuMQorCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Fjb3MuNC0uLl9fX3RhZ192YWx1ZV9hY29zLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfYXNpbi5TIGIvbGlibS94ODZfNjQvZV9hc2luLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWY0MWM3YwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfYXNpbi5TCkBAIC0wLDAgKzEsMjAzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICBUbyBjb21wdXRlIGFzaW4ocyksIHNlcGFyYXRlIHNjaGVtZXMgYXJlIHVzZWQgd2hlbiBzIGlzIGluIGRpZmZlcmVudAorLy8gIGludGVydmFscy4KKy8vCisvLyAgfHN8IGluIFsyXnstNH0sIHNxcnQoMykvMik6CisvLyAgICAgICBMZXQgdD0yXmsqMS5iMSBiMi4uYjYgMSwgd2hlcmUgcz0yXmsqMS5iMSBiMiAuLiBiNTIKKy8vICAgICAgIGFzaW4ocyk9YXNpbih0KSthc2luKHIpLCB3aGVyZSByPXMqc3FydCgxLXReMiktdCpzcXJ0KDEtc14yKQorLy8gICAgICAgYXNpbihyKS1yIGV2YWx1YXRlZCBhcyA3LWRlZ3JlZSBwb2x5bm9taWFsIChjMypyXjMrYzUqcl41K2M3KnJeNykKKy8vICAgICAgIEZvciB0aGUgZmlyc3QgZGVncmVlIHRlcm0sIHIgaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICBSPShzXjItdF4yKS8oc3FydCgxLXReMikqcytzcXJ0KDEtc14yKSp0KQorLy8gICAgICAgKHNxcnQoMS10XjIpIHJlYWQgZnJvbSB0YWJsZSkKKy8vICBUaGUgbWFpbiBzb3VyY2Ugb2YgZXJyb3IgaXMgc3RpbGwgUiAobWF5IHN0aWxsIGJlIGFmZmVjdGVkIGJ5IHVwIHRvIDMgdWxwcworLy8gIG9mIHJvdW5kaW5nIGVycm9yKS4gVGhlIHRhYmxlIHNpemUgbXVzdCBiZSBzdWZmaWNpZW50bHkgbGFyZ2UsIHRvIG1pbmltaXplCisvLyAgdGhpcyBlZmZlY3QuCisvLworLy8gIHxzfCBpbiBbc3FydCgzKS8yLCAyNTUvMjU2KToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzcXJ0KDEtc14yKT0yXmsqMS5iMSBiMiAuLiBiNTIgKHJvdW5kZWQpCisvLyAgICAgICBhc2luKHxzfCk9cGkvMi1hc2luKHQpK2FzaW4ociksIHI9cyp0LXNxcnQoMS1zXjIpKnNxcnQoMS10XjIpCisvLyAgICAgICBhc2luKHIpIGV2YWx1YXRlZCBhcyBwb2x5bm9taWFsIChzYW1lIGFzIGFib3ZlKQorLy8gICAgICAgVGhlIGZpcnN0IGRlZ3JlZSB0ZXJtIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgICAgICAgICByPShzXjIrdF4yLTEpLyhzKnQrc3FydCgxLXNeMikqc3FydCgxLXReMikpCisvLworLy8gIHxzfDwyXnstNH06IGV2YWx1YXRlIGFzIDEzLWRlZ3JlZSBwb2x5bm9taWFsCisvLworLy8gIHxzfCBpbiBbMjU1LzI1NiwxKTogYXNpbih8c3wpPXBpLzItYXNpbihzcXJ0KDEtc14yKSkKKy8vICAgICAgICAgdXNlIDE3LWRlZ3JlZSBwb2x5bm9taWFsLCBnZXQgZXJyb3IgdGVybQorLy8gICAgICAgICBRKmVwcyB+ICgxLXNeMi1RXjIpLygyKlEpIGZvciBmaXJzdCB0ZXJtCisvLyAgICAgICAgICAgICAgICAgKCBRKDErZXBzKT1zcXJ0KDEtc14yKSApCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBhc2luKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGFzaW4oSU5GKSA9IFFOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgYXNpbih4KSA9IFFOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uLCBmb3IgfHh8PjEuMAorLy8gIGFzaW4oKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgYXNpbgorRU5UUlkoYXNpbikKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9hc2luLjE6CisgICAgICAgIHN1YnEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2FzaW4uMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgc3RteGNzciAgIDE2KCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92c2QgICAgIEFCU1ZBTE1BU0soJXJpcCksICV4bW00CisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdnNkICAgICBUTUFTSyglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVjeCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDQ0LCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQyLCAlZWN4LCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNTI0Mjg3LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMjYwODY0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkOTU1LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkNjU1MzUsICVlZHgKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQtNCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDY0MjU2LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBUX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbW92c2QgICAgICglcjgsJXJkeCwyKSwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMgorICAgICAgICBsZWEgICAgICAgVGJsX2FkZHIoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyOCwlcmR4LDQpLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgZGl2c2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTYrY3YoJXJpcCksICV4bW03CisgICAgICAgIG1vdnNkICAgICBjdiglcmlwKSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhbmRwZCAgICAgU0lHTk1BU0soJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgOCtjdiglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgc3RteGNzciAgIDIwKCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBzdWJsICAgICAgJDk1NSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDY3LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRwZCAgICAgQUJTVkFMTUFTSyglcmlwKSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgIEhBTEZNQVNLMiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgT05FTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzbGxxICAgICAkMiwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMywgJWVkeAorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHN1YmwgICAgICAkNjUyMTYsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbGVhICAgICAgIFRfdGFibGUoJXJpcCksICVyOAorICAgICAgICBtdWxzZCAgICAgKCVyOCwlcmR4LDQpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG1vdmFwZCAgICBQSV9CWV8yKCVyaXApLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgY3YoJXJpcCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgMTYrY3YoJXJpcCksICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDgrY3YoJXJpcCksICV4bW0yCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXI4CisgICAgICAgIHN1YnBkICAgICAoJXI4LCVyZHgsOCksICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBhbmRsICAgICAgJDUyNDI4OCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDQsICVlYXgKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHB4b3IgICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MjkxLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTQzMzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIHVucGNrbHBkICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIGN2MiglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMTYrY3YyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMzIrY3YyKCVyaXApLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIHN0bXhjc3IgICAyMCglcnNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjAoJXJzcCkKKyAgICAgICAgbGRteGNzciAgIDIwKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNTM1OCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDIsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZHBkICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW01CisgICAgICAgIGFuZHBkICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgT05FTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgY3YyKCVyaXApLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTYKKyAgICAgICAgZGl2c2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNDgrY3YyKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMTYrY3YyKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMzIrY3YyKCVyaXApLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG1vdmFwZCAgICBQSV9CWV8yKCVyaXApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgc3RteGNzciAgIDIwKCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQyNjE4ODYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyNjE4ODgsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVkeAorICAgICAgICBtb3ZsICAgICAgJDEwNzI2OTMyNDgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgbW92c2QgICAgICglcnNwKSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxLCAlZWR4CisgICAgICAgIHNiYmwgICAgICAkMjE0NjQzNTA3MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamdlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgQUJTVkFMTUFTSyglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIFBJX0JZXzIoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICA4K1BJX0JZXzIoJXJpcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYW5kbnBkICAgICV4bW03LCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAoJXJzcCksICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKyAgICAgICAgc3RteGNzciAgIDIwKCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjczNiwgJWVkeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTUuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgb3JwZCAgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtb3ZsICAgICAgJWVheCwgMjAoJXJzcCkKKyAgICAgICAgbGRteGNzciAgIDIwKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNi4wLjIKKyAgICAgICAgc3RteGNzciAgIDIwKCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzE2LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTcuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9hc2luLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2FzaW4uNToKK0VORChhc2luKQorIyAtLSBFbmQgIGFzaW4KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0FCU1ZBTE1BU0s6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCUFCU1ZBTE1BU0ssQG9iamVjdAorCS5zaXplCUFCU1ZBTE1BU0ssMTYKKwkuYWxpZ24gMTYKK1RfdGFibGU6CisJLmxvbmcJMjY0Mjc4NDUwOQorCS5sb25nCTEwNzI2ODkwODMKKwkubG9uZwkxNTE0NDQyNTMxCisJLmxvbmcJMTA3MjY4ODk1MworCS5sb25nCTMzMzEwODkzMworCS5sb25nCTEwNzI2ODg4MjEKKwkubG9uZwkzMzkyMTEyMDI0CisJLmxvbmcJMTA3MjY4ODY4NgorCS5sb25nCTIwOTk4NTI4NjIKKwkubG9uZwkxMDcyNjg4NTUwCisJLmxvbmcJNzQ5NjA5MDA0CisJLmxvbmcJMTA3MjY4ODQxMgorCS5sb25nCTM2MzQ2MzI1OTYKKwkubG9uZwkxMDcyNjg4MjcxCisJLmxvbmcJMjE2MzI0ODQ2MQorCS5sb25nCTEwNzI2ODgxMjkKKwkubG9uZwk2Mjg2NTc4NDYKKwkubG9uZwkxMDcyNjg3OTg1CisJLmxvbmcJMzMyNDAzNjUxMQorCS5sb25nCTEwNzI2ODc4MzgKKwkubG9uZwkxNjU3NjMyODE1CisJLmxvbmcJMTA3MjY4NzY5MAorCS5sb25nCTQyMTc1Mzg3NjAKKwkubG9uZwkxMDcyNjg3NTM5CisJLmxvbmcJMjQxMTk1MTU5NworCS5sb25nCTEwNzI2ODczODcKKwkubG9uZwk1MzM5NDQ4NzIKKwkubG9uZwkxMDcyNjg3MjMzCisJLmxvbmcJMjg3NjU2NjUwOAorCS5sb25nCTEwNzI2ODcwNzYKKwkubG9uZwk4NDc5MzY4OTEKKwkubG9uZwkxMDcyNjg2OTE4CisJLmxvbmcJMzAzNjAxOTkxMworCS5sb25nCTEwNzI2ODY3NTcKKwkubG9uZwk4NDg4ODQ1NzUKKwkubG9uZwkxMDcyNjg2NTk1CisJLmxvbmcJMjg3NDQ0MzMyNgorCS5sb25nCTEwNzI2ODY0MzAKKwkubG9uZwk1MjA3MTM2NjYKKwkubG9uZwkxMDcyNjg2MjY0CisJLmxvbmcJMjM3NTU1NjQ4MQorCS5sb25nCTEwNzI2ODYwOTUKKwkubG9uZwk0MTQxOTA0OTQ4CisJLmxvbmcJMTA3MjY4NTkyNAorCS5sb25nCTE1MjI2NjYzODIKKwkubG9uZwkxMDcyNjg1NzUyCisJLmxvbmcJMzEwNTYyNDEwNAorCS5sb25nCTEwNzI2ODU1NzcKKwkubG9uZwkyOTg2NjYzMjcKKwkubG9uZwkxMDcyNjg1NDAxCisJLmxvbmcJMTY4OTUyNDUwMAorCS5sb25nCTEwNzI2ODUyMjIKKwkubG9uZwkyOTgxMDAyMjAwCisJLmxvbmcJMTA3MjY4NTA0MQorCS5sb25nCTQxNzA4NDQyODQKKwkubG9uZwkxMDcyNjg0ODU4CisJLmxvbmcJOTYxODAyMjYzCisJLmxvbmcJMTA3MjY4NDY3NAorCS5sb25nCTE5NDE1MDM0NTQKKwkubG9uZwkxMDcyNjg0NDg3CisJLmxvbmcJMjgxMjY0NzE3MAorCS5sb25nCTEwNzI2ODQyOTgKKwkubG9uZwkzNTcyODczODY5CisJLmxvbmcJMTA3MjY4NDEwNworCS5sb25nCTQyMTk3OTc4MjMKKwkubG9uZwkxMDcyNjgzOTE0CisJLmxvbmcJNDU2MDM5Nzg4CisJLmxvbmcJMTA3MjY4MzcyMAorCS5sb25nCTg2OTA5NjE1MQorCS5sb25nCTEwNzI2ODM1MjMKKwkubG9uZwkxMTYxNTM1MTE5CisJLmxvbmcJMTA3MjY4MzMyNAorCS5sb25nCTEzMzA4NjU4NjYKKwkubG9uZwkxMDcyNjgzMTIzCisJLmxvbmcJMTM3NDU3MTIwNAorCS5sb25nCTEwNzI2ODI5MjAKKwkubG9uZwkxMjkwMTA3NTM4CisJLmxvbmcJMTA3MjY4MjcxNQorCS5sb25nCTEwNzQ5MDQ4MzYKKwkubG9uZwkxMDcyNjgyNTA4CisJLmxvbmcJNzI2MzY2NTg3CisJLmxvbmcJMTA3MjY4MjI5OQorCS5sb25nCTI0MTg2OTc2MworCS5sb25nCTEwNzI2ODIwODgKKwkubG9uZwkzOTEzNzMyMDc5CisJLmxvbmcJMTA3MjY4MTg3NAorCS5sb25nCTMxNDkzNDI3NjUKKwkubG9uZwkxMDcyNjgxNjU5CisJLmxvbmcJMjI0MDk2NjMwNgorCS5sb25nCTEwNzI2ODE0NDIKKwkubG9uZwkxMTg1ODczMjE2CisJLmxvbmcJMTA3MjY4MTIyMworCS5sb25nCTQyNzYyNzQ1OTEKKwkubG9uZwkxMDcyNjgxMDAxCisJLmxvbmcJMjkxOTQ1Mjg4MworCS5sb25nCTEwNzI2ODA3NzgKKwkubG9uZwkxNDA3NTY1NjM1CisJLmxvbmcJMTA3MjY4MDU1MworCS5sb25nCTQwMzI3NDM1NTEKKwkubG9uZwkxMDcyNjgwMzI1CisJLmxvbmcJMjIwMjE4ODU2NQorCS5sb25nCTEwNzI2ODAwOTYKKwkubG9uZwkyMDc5Nzc1NzcKKwkubG9uZwkxMDcyNjc5ODY1CisJLmxvbmcJMjM0MjE2MDUxOAorCS5sb25nCTEwNzI2Nzk2MzEKKwkubG9uZwkxMTg1ODQyMworCS5sb25nCTEwNzI2NzkzOTYKKwkubG9uZwkxODA0MDM0NDUzCisJLmxvbmcJMTA3MjY3OTE1OAorCS5sb25nCTM0MjA3MjI3ODcKKwkubG9uZwkxMDcyNjc4OTE4CisJLmxvbmcJNTYzOTMwNDU2CisJLmxvbmcJMTA3MjY3ODY3NworCS5sb25nCTE4MjA1MzkxOTIKKwkubG9uZwkxMDcyNjc4NDMzCisJLmxvbmcJMjg5MjUwMTYwNgorCS5sb25nCTEwNzI2NzgxODcKKwkubG9uZwkzNzc2NzEwMzIwCisJLmxvbmcJMTA3MjY3NzkzOQorCS5sb25nCTE3NTA2MzMzNworCS5sb25nCTEwNzI2Nzc2OTAKKwkubG9uZwk2NzQzMzMxNzEKKwkubG9uZwkxMDcyNjc3NDM4CisJLmxvbmcJOTc2MzYzMDI2CisJLmxvbmcJMTA3MjY3NzE4NAorCS5sb25nCTEwNzc5MzU5MzQKKwkubG9uZwkxMDcyNjc2OTI4CisJLmxvbmcJMTkyMTA3NTQ5MAorCS5sb25nCTEwNzI2NzY1NDAKKwkubG9uZwk4ODE0OTMzMDIKKwkubG9uZwkxMDcyNjc2MDE2CisJLmxvbmcJMzI3NTc1MjQzOQorCS5sb25nCTEwNzI2NzU0ODMKKwkubG9uZwk0ODY4NTU1ODgKKwkubG9uZwkxMDcyNjc0OTQzCisJLmxvbmcJMTA3NzIyOTExMQorCS5sb25nCTEwNzI2NzQzOTQKKwkubG9uZwk3MjM5NTAzMDgKKwkubG9uZwkxMDcyNjczODM3CisJLmxvbmcJMzY5MzU4MjE5OQorCS5sb25nCTEwNzI2NzMyNzEKKwkubG9uZwkxMzY3MzM1MzE2CisJLmxvbmcJMTA3MjY3MjY5OAorCS5sb25nCTIzMDU4MzcwMjAKKwkubG9uZwkxMDcyNjcyMTE2CisJLmxvbmcJMjE4NDM1ODY0MQorCS5sb25nCTEwNzI2NzE1MjYKKwkubG9uZwk5NzI2ODI4NDAKKwkubG9uZwkxMDcyNjcwOTI4CisJLmxvbmcJMjkzNTEwMTc2MgorCS5sb25nCTEwNzI2NzAzMjEKKwkubG9uZwkzNzQ1NTEzMjYzCisJLmxvbmcJMTA3MjY2OTcwNgorCS5sb25nCTMzNzIzMjA4ODYKKwkubG9uZwkxMDcyNjY5MDgzCisJLmxvbmcJMTc4MzQ2NDYyMAorCS5sb25nCTEwNzI2Njg0NTIKKwkubG9uZwkzMjQxMzg2MjE1CisJLmxvbmcJMTA3MjY2NzgxMgorCS5sb25nCTM0MTgxMjUyODQKKwkubG9uZwkxMDcyNjY3MTY0CisJLmxvbmcJMjI4MDIxOTE0OAorCS5sb25nCTEwNzI2NjY1MDgKKwkubG9uZwk0MDg4NzAwNzU4CisJLmxvbmcJMTA3MjY2NTg0MworCS5sb25nCTIxOTIyNzQwMAorCS5sb25nCTEwNzI2NjUxNzEKKwkubG9uZwkzNTIxODE2OTE4CisJLmxvbmcJMTA3MjY2NDQ4OQorCS5sb25nCTEwNzYyMDUyNzkKKwkubG9uZwkxMDcyNjYzODAwCisJLmxvbmcJMTQzNjQ4NDYxNgorCS5sb25nCTEwNzI2NjMxMDIKKwkubG9uZwkyNzEzNjI2MTAKKwkubG9uZwkxMDcyNjYyMzk2CisJLmxvbmcJMTgzODk5NjY4OAorCS5sb25nCTEwNzI2NjE2ODEKKwkubG9uZwkxODA3MTIyNTE4CisJLmxvbmcJMTA3MjY2MDk1OAorCS5sb25nCTEzNzk1MzU0MgorCS5sb25nCTEwNzI2NjAyMjcKKwkubG9uZwkxMDg4MTc4NTg0CisJLmxvbmcJMTA3MjY1OTQ4NworCS5sb25nCTMyNDA1NzUzNworCS5sb25nCTEwNzI2NTg3MzkKKwkubG9uZwkyMTAxMjg4MDc2CisJLmxvbmcJMTA3MjY1Nzk4MgorCS5sb25nCTIwODUxMzM5NzQKKwkubG9uZwkxMDcyNjU3MjE3CisJLmxvbmcJMjM1MzI0NDUxCisJLmxvbmcJMTA3MjY1NjQ0NAorCS5sb25nCTgwNjA1MTU5MgorCS5sb25nCTEwNzI2NTU2NjIKKwkubG9uZwkzNzU2MDMzMTQwCisJLmxvbmcJMTA3MjY1NDg3MQorCS5sb25nCTQ1MzU0MjU0MworCS5sb25nCTEwNzI2NTQwNzMKKwkubG9uZwkzNzQxMTc3MzI3CisJLmxvbmcJMTA3MjY1MzI2NQorCS5sb25nCTY5MTIxNjEwOQorCS5sb25nCTEwNzI2NTI0NTAKKwkubG9uZwk0MTQ1MjIzMzcyCisJLmxvbmcJMTA3MjY1MTYyNQorCS5sb25nCTExNzQ0MzkwOTEKKwkubG9uZwkxMDcyNjUwNzkzCisJLmxvbmcJMzI0NDE2MTM5CisJLmxvbmcJMTA3MjY0OTk1MgorCS5sb25nCTE1NTAyNDYzMTAKKwkubG9uZwkxMDcyNjQ5MTAyCisJLmxvbmcJNTExNTI0Njc0CisJLmxvbmcJMTA3MjY0ODI0NAorCS5sb25nCTE0NTcyNDg0ODIKKwkubG9uZwkxMDcyNjQ3Mzc3CisJLmxvbmcJNDU5NDQ5NTUKKwkubG9uZwkxMDcyNjQ2NTAyCisJLmxvbmcJNTI1NTM3Mzk3CisJLmxvbmcJMTA3MjY0NTYxOAorCS5sb25nCTI4NDg0NDAxODgKKwkubG9uZwkxMDcyNjQ0NzI1CisJLmxvbmcJMjY3MTU1NTYzMworCS5sb25nCTEwNzI2NDM4MjQKKwkubG9uZwk0MjQxMTcyNjM3CisJLmxvbmcJMTA3MjY0MjkxNAorCS5sb25nCTMyMTMwOTQyNzgKKwkubG9uZwkxMDcyNjQxOTk2CisJLmxvbmcJMzgzMjUwMzY4OAorCS5sb25nCTEwNzI2NDEwNjkKKwkubG9uZwkxNzU0MDkxNTM0CisJLmxvbmcJMTA3MjY0MDEzNAorCS5sb25nCTEyMjE5MjE4MDQKKwkubG9uZwkxMDcyNjM5MTkwCisJLmxvbmcJMjE4NDUyNjQ4OQorCS5sb25nCTEwNzI2MzgyMzcKKwkubG9uZwkyOTQ5MDIwODkKKwkubG9uZwkxMDcyNjM3Mjc2CisJLmxvbmcJNDA5MDM3NTI3MAorCS5sb25nCTEwNzI2MzYzMDUKKwkubG9uZwk2MzI4NjA5MDYKKwkubG9uZwkxMDcyNjM1MzI3CisJLmxvbmcJMjc1MzQ5ODcwMgorCS5sb25nCTEwNzI2MzQzMzkKKwkubG9uZwkxODA4MDA5MjUyCisJLmxvbmcJMTA3MjYzMzM0MworCS5sb25nCTIwMzY0Mjg2NzIKKwkubG9uZwkxMDcyNjMyMzM4CisJLmxvbmcJMzM4MzIzNTYyNgorCS5sb25nCTEwNzI2MzEzMjQKKwkubG9uZwkxNDk3MzQ3NDg0CisJLmxvbmcJMTA3MjYzMDMwMgorCS5sb25nCTYxNzAxODMxNworCS5sb25nCTEwNzI2MjkyNzEKKwkubG9uZwk2ODQ5MzMwNTgKKwkubG9uZwkxMDcyNjI4MjMxCisJLmxvbmcJMTY0MzE3MDc5OAorCS5sb25nCTEwNzI2MjcxODIKKwkubG9uZwkzMDExMDY2MzYwCisJLmxvbmcJMTA3MjYyNTU5MgorCS5sb25nCTk1NzE1ODcxMworCS5sb25nCTEwNzI2MjM0NDIKKwkubG9uZwkxMzkwOTA3OTQxCisJLmxvbmcJMTA3MjYyMTI1NgorCS5sb25nCTM4MTkxNTUyNzAKKwkubG9uZwkxMDcyNjE5MDM0CisJLmxvbmcJMzQ0MzU3MTE5NgorCS5sb25nCTEwNzI2MTY3NzcKKwkubG9uZwk0MDQ1NDEyNDU4CisJLmxvbmcJMTA3MjYxNDQ4NAorCS5sb25nCTgwNTUwMzkyMworCS5sb25nCTEwNzI2MTIxNTYKKwkubG9uZwkxNzc4OTIyMDE1CisJLmxvbmcJMTA3MjYwOTc5MQorCS5sb25nCTIxMjUwMzM2NjUKKwkubG9uZwkxMDcyNjA3MzkwCisJLmxvbmcJMTI4NzIwMzg2MworCS5sb25nCTEwNzI2MDQ5NTMKKwkubG9uZwkyOTkyNjI5NTY4CisJLmxvbmcJMTA3MjYwMjQ3OQorCS5sb25nCTIzNjcyNjcxMjcKKwkubG9uZwkxMDcyNTk5OTY5CisJLmxvbmcJMzExNTUyNjA0NworCS5sb25nCTEwNzI1OTc0MjIKKwkubG9uZwkzNDAyMTk1MzkKKwkubG9uZwkxMDcyNTk0ODM5CisJLmxvbmcJMjAxNzIxNTcxOQorCS5sb25nCTEwNzI1OTIyMTgKKwkubG9uZwkzMjI1NDQzNDI0CisJLmxvbmcJMTA3MjU4OTU2MAorCS5sb25nCTMzMjY1NjU2NzMKKwkubG9uZwkxMDcyNTg2ODY1CisJLmxvbmcJMTY2OTgxMTIxMQorCS5sb25nCTEwNzI1ODQxMzMKKwkubG9uZwkxODg2NzM1MDIyCisJLmxvbmcJMTA3MjU4MTM2MworCS5sb25nCTMzMDEwNzExNzEKKwkubG9uZwkxMDcyNTc4NTU1CisJLmxvbmcJOTI4NTE0MjgzCisJLmxvbmcJMTA3MjU3NTcxMAorCS5sb25nCTI2NTYzNjQwNTkKKwkubG9uZwkxMDcyNTcyODI2CisJLmxvbmcJMzQ3MzQ5MDUwNworCS5sb25nCTEwNzI1Njk5MDQKKwkubG9uZwkyNjQ5OTY1NjA2CisJLmxvbmcJMTA3MjU2Njk0NAorCS5sb25nCTM3MzY4MTkwNTIKKwkubG9uZwkxMDcyNTYzOTQ1CisJLmxvbmcJMTY4MDg4NTE3NQorCS5sb25nCTEwNzI1NjA5MDgKKwkubG9uZwk0NDEzNzcxCisJLmxvbmcJMTA3MjU1NzgzMgorCS5sb25nCTIyMTQ4Njk3NTMKKwkubG9uZwkxMDcyNTU0NzE2CisJLmxvbmcJMzIxNDcyNTE4NAorCS5sb25nCTEwNzI1NTE1NjEKKwkubG9uZwkyMTg2MDc5OTAzCisJLmxvbmcJMTA3MjU0ODM2NworCS5sb25nCTI1OTAzNzIxMzEKKwkubG9uZwkxMDcyNTQ1MTMzCisJLmxvbmcJMzU3ODE0NjA3OQorCS5sb25nCTEwNzI1NDE4NTkKKwkubG9uZwk0MjgzNzEyNzU1CisJLmxvbmcJMTA3MjUzODU0NQorCS5sb25nCTM4MjQ4MzQ1MTAKKwkubG9uZwkxMDcyNTM1MTkxCisJLmxvbmcJMTMwMjQwMDI5OAorCS5sb25nCTEwNzI1MzE3OTcKKwkubG9uZwk5NTA1ODYzNgorCS5sb25nCTEwNzI1MjgzNjIKKwkubG9uZwkzNTYzOTA2MDYzCisJLmxvbmcJMTA3MjUyNDg4NQorCS5sb25nCTIxNjcyMzA3MzAKKwkubG9uZwkxMDcyNTIxMzY4CisJLmxvbmcJMzUyNDkxODMzNAorCS5sb25nCTEwNzI1MTc4MDkKKwkubG9uZwkyMzUzMzA0OTE4CisJLmxvbmcJMTA3MjUxNDIwOQorCS5sb25nCTE5Mzk2MjU4MzkKKwkubG9uZwkxMDcyNTEwNTY3CisJLmxvbmcJMTI1NjcxNDU4MQorCS5sb25nCTEwNzI1MDY4ODMKKwkubG9uZwkzNTUyNTI1ODQ4CisJLmxvbmcJMTA3MjUwMzE1NgorCS5sb25nCTM0NjQ4MDk1MjIKKwkubG9uZwkxMDcyNDk5Mzg3CisJLmxvbmcJNDIwMDU0MjU5MworCS5sb25nCTEwNzI0OTU1NzUKKwkubG9uZwkzNTU2MDkxMjQKKwkubG9uZwkxMDcyNDkxNzIxCisJLmxvbmcJMzY4NDEzOTA5OQorCS5sb25nCTEwNzI0ODc4MjIKKwkubG9uZwkxNDgzNTU5MTgKKwkubG9uZwkxMDcyNDgzODgxCisJLmxvbmcJMTQ1NzY4OTI0MgorCS5sb25nCTEwNzI0Nzk4OTUKKwkubG9uZwkyMTE4NTkxNTk2CisJLmxvbmcJMTA3MjQ3NTg2NQorCS5sb25nCTkwODg0ODA4OQorCS5sb25nCTEwNzI0NzE3OTEKKwkubG9uZwk4NzcwMzI2ODkKKwkubG9uZwkxMDcyNDY3NjcyCisJLmxvbmcJNzUyMDEyMzA0CisJLmxvbmcJMTA3MjQ2MzUwOAorCS5sb25nCTM1MzIzMDE3NDkKKwkubG9uZwkxMDcyNDU5Mjk4CisJLmxvbmcJMzYwMDU2MzIyMQorCS5sb25nCTEwNzI0NTUwNDMKKwkubG9uZwkzOTAyODU3MDg0CisJLmxvbmcJMTA3MjQ1MDc0MgorCS5sb25nCTMwNjMxMDEwMzYKKwkubG9uZwkxMDcyNDQ2Mzk1CisJLmxvbmcJMzk3MjM0NDM3NAorCS5sb25nCTEwNzI0NDIwMDEKKwkubG9uZwk5MDMxODM1NDkKKwkubG9uZwkxMDcyNDM3NTYxCisJLmxvbmcJOTgzODkyOTM4CisJLmxvbmcJMTA3MjQzMzA3MworCS5sb25nCTI3MjI4NTg1NjgKKwkubG9uZwkxMDcyNDI4NTM3CisJLmxvbmcJMzAyNzkwNTE1CisJLmxvbmcJMTA3MjQyMzk1NAorCS5sb25nCTc1OTgxMTA1NworCS5sb25nCTEwNzI0MTkzMjIKKwkubG9uZwkyNTA3ODA5OTIyCisJLmxvbmcJMTA3MjQxNDY0MQorCS5sb25nCTIzODg0MDg4MTMKKwkubG9uZwkxMDcyNDA3NTI4CisJLmxvbmcJMjA4NDQ5Mjk0MgorCS5sb25nCTEwNzIzOTc4NzAKKwkubG9uZwkyNDM1NzAzMzAxCisJLmxvbmcJMTA3MjM4ODAxMAorCS5sb25nCTE5MzU0MzMzNjAKKwkubG9uZwkxMDcyMzc3OTQ1CisJLmxvbmcJMjc0MjA0NzI5MAorCS5sb25nCTEwNzIzNjc2NzEKKwkubG9uZwkyMDUzMjg0MjA1CisJLmxvbmcJMTA3MjM1NzE4NQorCS5sb25nCTY1Nzc4MzM2NworCS5sb25nCTEwNzIzNDY0ODMKKwkubG9uZwkyODkzNjY0ODQxCisJLmxvbmcJMTA3MjMzNTU2MAorCS5sb25nCTM3MTg5MDY0MDUKKwkubG9uZwkxMDcyMzI0NDEzCisJLmxvbmcJMTU0Nzg5NjMwMworCS5sb25nCTEwNzIzMTMwMzgKKwkubG9uZwkyNDk0MDU4NDQwCisJLmxvbmcJMTA3MjMwMTQyOQorCS5sb25nCTMxMzMyMzg3NDIKKwkubG9uZwkxMDcyMjg5NTgyCisJLmxvbmcJMzMyNzAwMDA4NgorCS5sb25nCTEwNzIyNzc0OTIKKwkubG9uZwkxODYwNjY3Mjc0CisJLmxvbmcJMTA3MjI2NTE1NAorCS5sb25nCTY2NTM0MDc0NworCS5sb25nCTEwNzIyNTI1NjIKKwkubG9uZwk0NDMzNDc4NDEKKwkubG9uZwkxMDcyMjM5NzEwCisJLmxvbmcJNTgxMjgyNjE4CisJLmxvbmcJMTA3MjIyNjU5MgorCS5sb25nCTMzNDk3ODA0NjUKKwkubG9uZwkxMDcyMjEzMjAxCisJLmxvbmcJOTE0MjE3NjA2CisJLmxvbmcJMTA3MjE5OTUzMgorCS5sb25nCTk4OTc5NzY2MQorCS5sb25nCTEwNzIxODU1NzYKKwkubG9uZwk5NDU0MzY0MTYKKwkubG9uZwkxMDcyMTcxMzI2CisJLmxvbmcJNTQ5MjkxMzAwCisJLmxvbmcJMTA3MjE1Njc3NAorCS5sb25nCTE4MTQ2MzYzODkKKwkubG9uZwkxMDcyMTQxOTExCisJLmxvbmcJMjM5MDkyODU4CisJLmxvbmcJMTA3MjEyNjcyOQorCS5sb25nCTE3OTQ2ODA3MjQKKwkubG9uZwkxMDcyMTExMjE3CisJLmxvbmcJMTI0MTUzNDY3OAorCS5sb25nCTEwNzIwOTUzNjYKKwkubG9uZwkzMzY2NTY2MjE0CisJLmxvbmcJMTA3MjA3OTE2NAorCS5sb25nCTEyNDQwOTA4MjgKKwkubG9uZwkxMDcyMDYyNjAxCisJLmxvbmcJMTcwODQ0ODEyMAorCS5sb25nCTEwNzIwNDU2NjMKKwkubG9uZwkzNTQ0MjYwNjUwCisJLmxvbmcJMTA3MjAyODMzNworCS5sb25nCTE0MDI3NDE0MDMKKwkubG9uZwkxMDcyMDEwNjEwCisJLmxvbmcJMjU1MTkzNjg4OAorCS5sb25nCTEwNzE5OTI0NjUKKwkubG9uZwk2MTc2Njk3MzkKKwkubG9uZwkxMDcxOTczODg3CisJLmxvbmcJNzk0MDAyMTg2CisJLmxvbmcJMTA3MTk1NDg1NworCS5sb25nCTIwMjEyMzc2OTMKKwkubG9uZwkxMDcxOTM1MzU2CisJLmxvbmcJNTQwNDUwMzg0CisJLmxvbmcJMTA3MTkxNTM2NAorCS5sb25nCTE5MjA1NTU1MzcKKwkubG9uZwkxMDcxODk0ODU3CisJLmxvbmcJMjg3OTU4NTIwNgorCS5sb25nCTEwNzE4NzM4MTEKKwkubG9uZwkzMDAwMjM3NDU1CisJLmxvbmcJMTA3MTg1MjE5OQorCS5sb25nCTMzNTI5NzQzNDYKKwkubG9uZwkxMDcxODI5OTkxCisJLmxvbmcJNTY5NjI5OTM3CisJLmxvbmcJMTA3MTgwNzE1NQorCS5sb25nCTIwNzcyMzcyMDgKKwkubG9uZwkxMDcxNzgzNjUzCisJLmxvbmcJMjI4NDg5MTgwNQorCS5sb25nCTEwNzE3NTk0NDYKKwkubG9uZwkxMjI2NjUxNzg0CisJLmxvbmcJMTA3MTczNDQ4OQorCS5sb25nCTExMDIwNDc0MDUKKwkubG9uZwkxMDcxNzA4NzMxCisJLmxvbmcJMjAwOTg5NjM4NAorCS5sb25nCTEwNzE2ODIxMTUKKwkubG9uZwk5Mjc0MTkwODIKKwkubG9uZwkxMDcxNjU0NTc3CisJLmxvbmcJODUwMTAzNjYKKwkubG9uZwkxMDcxNjA3NDEzCisJLmxvbmcJNjk2NDMxMDI1CisJLmxvbmcJMTA3MTU0ODE4MAorCS5sb25nCTI2MTE0MTA1NDEKKwkubG9uZwkxMDcxNDg2NTg1CisJLmxvbmcJMjYxMjU5MzY1OAorCS5sb25nCTEwNzE0MjIzOTYKKwkubG9uZwkzNTQ4MTU1MzA2CisJLmxvbmcJMTA3MTM1NTMzNgorCS5sb25nCTM4ODc5OTc0ODQKKwkubG9uZwkxMDcxMjg1MDczCisJLmxvbmcJMjQ0ODU0NzYzCisJLmxvbmcJMTA3MTIxMTIwMgorCS5sb25nCTQyMTQ0NDU2NDgKKwkubG9uZwkxMDcxMTMzMjE2CisJLmxvbmcJMjMwMzk2NjcyNworCS5sb25nCTEwNzEwNTA0NzgKKwkubG9uZwkzOTkxMDQwMDEzCisJLmxvbmcJMTA3MDk2MjE1MgorCS5sb25nCTMxMjY5NTIyNzgKKwkubG9uZwkxMDcwODY3MTE4CisJLmxvbmcJMTgxNzQ0ODM3OAorCS5sb25nCTEwNzA3NjM4MDQKKwkubG9uZwkxNzkzODE0ODY0CisJLmxvbmcJMTA3MDY0OTg4NAorCS5sb25nCTM1MDcyMjQwNzIKKwkubG9uZwkxMDcwNDQ3MTkzCisJLmxvbmcJNDAyNzYwOTEwNQorCS5sb25nCTEwNzAxNDg3NzIKKwkubG9uZwk1Nzc1MDc5OTMKKwkubG9uZwkxMDY5Nzc5NDE0CisJLmxvbmcJMjMxMDIzMjQxOQorCS5sb25nCTEwNjg5MzE4MjkKKwkudHlwZQlUX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlUX3RhYmxlLDIwNDgKKwkuYWxpZ24gMTYKK1RibF9hZGRyOgorCS5sb25nCTM4MjI5NTI3OTIKKwkubG9uZwkxMDIxNjM5MzcyCisJLmxvbmcJMTgyNzkyNDQ4CisJLmxvbmcJMTA2ODUwNzgzNgorCS5sb25nCTIyNjQyMTMyNzEKKwkubG9uZwkxMDE5NTU4OTA4CisJLmxvbmcJNjQ5MDUyOTI4CisJLmxvbmcJMTA2ODUyNDI1MworCS5sb25nCTE3OTcxMzk2MDkKKwkubG9uZwkxMDIyMjk1MTQzCisJLmxvbmcJMTI0MzA5NTI5NgorCS5sb25nCTEwNjg1NDA2NzEKKwkubG9uZwkxNDE1OTM4NzU2CisJLmxvbmcJMTAyMTQzOTUzNworCS5sb25nCTIwMzMyOTQ1OTIKKwkubG9uZwkxMDY4NTU3MDkwCisJLmxvbmcJMjM1NjgwOTk3OAorCS5sb25nCTEwMjE3Nzc5MTYKKwkubG9uZwkzMDg4MDYzNzQ0CisJLmxvbmcJMTA2ODU3MzUxMAorCS5sb25nCTI2NjkwNTUzMTgKKwkubG9uZwkxMDIyMTI0NDgyCisJLmxvbmcJMTgwODg4NTc2CisJLmxvbmcJMTA2ODU4OTkzMgorCS5sb25nCTM1NjY0NDUzMjUKKwkubG9uZwkxMDIxMzU4NzEyCisJLmxvbmcJMTk3MDE5Njk5MgorCS5sb25nCTEwNjg2MDYzNTQKKwkubG9uZwk4OTY5ODAzMjMKKwkubG9uZwkxMDIxMzE5NjU5CisJLmxvbmcJNDIyOTU1NTQ1NgorCS5sb25nCTEwNjg2MjI3NzcKKwkubG9uZwk0MzYwNDk3MTIKKwkubG9uZwkxMDIxMzE5NzU4CisJLmxvbmcJMjczMjU3MjE2MAorCS5sb25nCTEwNjg2MzkyMDIKKwkubG9uZwk1ODMxMjMyMDkKKwkubG9uZwkxMDIwNzk3OTYwCisJLmxvbmcJMTg0MjgzMTg3MgorCS5sb25nCTEwNjg2NTU2MjgKKwkubG9uZwkxMzcwNDQ5ODA0CisJLmxvbmcJMTAyMTQyOTI3MAorCS5sb25nCTE2Mjg5OTQ1NjAKKwkubG9uZwkxMDY4NjcyMDU1CisJLmxvbmcJMjQxMTM5MTQ2NAorCS5sb25nCTEwMjEwNTc5ODAKKwkubG9uZwkyMTU5NzYzNzEyCisJLmxvbmcJMTA2ODY4ODQ4MworCS5sb25nCTEyMDg2OTI3NDkKKwkubG9uZwkxMDIxOTQzOTAzCisJLmxvbmcJMzUwMzg4NjMzNgorCS5sb25nCTEwNjg3MDQ5MTIKKwkubG9uZwk1Mzg3OTMzMDkKKwkubG9uZwkxMDE5NzQ0MDYzCisJLmxvbmcJMTQzNTE4NzIwMAorCS5sb25nCTEwNjg3MjEzNDMKKwkubG9uZwk0MDg1MDg3NjEyCisJLmxvbmcJMTAyMDYwODQxOQorCS5sb25nCTMxNzQ2OTk1MgorCS5sb25nCTEwNjg3Mzc3NzUKKwkubG9uZwkxNDQzODY5NDIKKwkubG9uZwkxMDIxNDQwNzMyCisJLmxvbmcJMjE5NjE3MjgwCisJLmxvbmcJMTA2ODc1NDIwOAorCS5sb25nCTI5NDAwODgzNjEKKwkubG9uZwkxMDE5OTgxMTIyCisJLmxvbmcJMTIxMDU1ODIwOAorCS5sb25nCTEwNjg3NzA2NDIKKwkubG9uZwkyMTc2ODUwMzQ3CisJLmxvbmcJMTAxODM3MzcwNQorCS5sb25nCTMzNTkyNjgzNTIKKwkubG9uZwkxMDY4Nzg3MDc3CisJLmxvbmcJMjM5NTYxMTQ1NAorCS5sb25nCTEwMjE4ODkwNDIKKwkubG9uZwkyNDM5ODAzNjQ4CisJLmxvbmcJMTA2ODgwMzUxNAorCS5sb25nCTE2NTA3MDUyNTMKKwkubG9uZwkxMDIwMjI3OTY2CisJLmxvbmcJMjgxNjIwMzUyMAorCS5sb25nCTEwNjg4MTk5NTIKKwkubG9uZwkzNzAyMTY2Mzg2CisJLmxvbmcJMTAxOTM3OTkxNAorCS5sb25nCTI2MjYyMDY3MgorCS5sb25nCTEwNjg4MzYzOTIKKwkubG9uZwkxODU1NjQ5MzcwCisJLmxvbmcJMTAyMDQ1MzEyNAorCS5sb25nCTM0MzgxNTk2MTYKKwkubG9uZwkxMDY4ODUyODMyCisJLmxvbmcJOTIzMDYzODYwCisJLmxvbmcJMTAxOTI3MzgzNAorCS5sb25nCTM4MjIxMDU4NTYKKwkubG9uZwkxMDY4ODY5Mjc0CisJLmxvbmcJNDI4OTk0Nzk0NworCS5sb25nCTEwMTk0MzQyNDkKKwkubG9uZwkxNDgzNzI5OTIwCisJLmxvbmcJMTA2ODg4NTcxOAorCS5sb25nCTc4NzQ1NTgxNAorCS5sb25nCTEwMjA3MzgzNzkKKwkubG9uZwk3ODczMjEwODgKKwkubG9uZwkxMDY4OTAyMTYzCisJLmxvbmcJMzMyMTY1MzMzNworCS5sb25nCTEwMjE4NDI1NjkKKwkubG9uZwkxODAyMjUzMzEyCisJLmxvbmcJMTA2ODkxODYwOQorCS5sb25nCTI2NTM2MzM1MjYKKwkubG9uZwkxMDIxODIxNTI1CisJLmxvbmcJMzAyOTg1OTg0CisJLmxvbmcJMTA2ODkzNTA1NworCS5sb25nCTE2MTI3MjAyOAorCS5sb25nCTEwMjE2NTUxNDkKKwkubG9uZwk2NTM5NjYwODAKKwkubG9uZwkxMDY4OTUxNTA2CisJLmxvbmcJMjU2NjA5ODY2NworCS5sb25nCTEwMjAwNjYyMTkKKwkubG9uZwkyOTI0NzI3Mjk2CisJLmxvbmcJMTA2ODk2Nzk1NgorCS5sb25nCTM2NDY0OTM3MjIKKwkubG9uZwkxMDE0MjkyMjg1CisJLmxvbmcJMjg4OTg5MDMwNAorCS5sb25nCTEwNjg5ODQ0MDgKKwkubG9uZwkxMDgxMDA5MTk2CisJLmxvbmcJMTAyMjE4OTYyMAorCS5sb25nCTYxOTA5ODExMgorCS5sb25nCTEwNjkwMDA4NjIKKwkubG9uZwk0MDExNjQzMzU1CisJLmxvbmcJMTAyMTc3MzI5NworCS5sb25nCTQ3NzAxNzYwMAorCS5sb25nCTEwNjkwMTczMTcKKwkubG9uZwk0MDMwMzA1NTM0CisJLmxvbmcJMTAyMTI5MjI1MgorCS5sb25nCTI1MzM0MDM5MDQKKwkubG9uZwkxMDY5MDMzNzczCisJLmxvbmcJMjY0NTE4NzU5MQorCS5sb25nCTEwMTk1MjcwOTkKKwkubG9uZwkyNTYzMTAyMjA4CisJLmxvbmcJMTA2OTA1MDIzMQorCS5sb25nCTM4NTcyOTM3OTIKKwkubG9uZwkxMDIyMzExNjk3CisJLmxvbmcJNjM1OTgyMzM2CisJLmxvbmcJMTA2OTA2NjY5MQorCS5sb25nCTM2MjU5MzY2MzcKKwkubG9uZwkxMDE3NTExNzQ0CisJLmxvbmcJMTExNjk0MDgwMAorCS5sb25nCTEwNjkwODMxNTIKKwkubG9uZwkzNjUzODcyOTkzCisJLmxvbmcJMTAyMjAxNjYzMQorCS5sb25nCTQwNzU5NjQxNjAKKwkubG9uZwkxMDY5MDk5NjE0CisJLmxvbmcJMjQ2ODkwMDI3MQorCS5sb25nCTEwMjE3Njk1MzIKKwkubG9uZwk5OTMxNjU1NjgKKwkubG9uZwkxMDY5MTE2MDc5CisJLmxvbmcJMTM1ODEwNDIyNAorCS5sb25nCTEwMjExOTk3NzYKKwkubG9uZwk1Mjg1ODY3NTIKKwkubG9uZwkxMDY5MTMyNTQ1CisJLmxvbmcJMjIwMDk1MDMzMgorCS5sb25nCTEwMjIwMjQ4NzIKKwkubG9uZwkyNzUyMzk1Nzc2CisJLmxvbmcJMTA2OTE0OTAxMgorCS5sb25nCTMxOTcwNzI0NTQKKwkubG9uZwkxMDE3NzUxMzE5CisJLmxvbmcJMzQzOTg1NTYxNgorCS5sb25nCTEwNjkxNjU0ODEKKwkubG9uZwkxNjUxMDgxODA2CisJLmxvbmcJMTAyMDgwOTMzOAorCS5sb25nCTI2NjEyNTc3MjgKKwkubG9uZwkxMDY5MTgxOTUyCisJLmxvbmcJNTM5MDMyNzUyCisJLmxvbmcJMTAyMTcyODgwNQorCS5sb25nCTQ4Njk1NzMxMgorCS5sb25nCTEwNjkxOTg0MjUKKwkubG9uZwkzMTM2MDQ1MTQ5CisJLmxvbmcJMTAxNjg4ODY3MQorCS5sb25nCTEyODIzNDAzNTIKKwkubG9uZwkxMDY5MjE0ODk5CisJLmxvbmcJMjU5Mzk2MzI1OQorCS5sb25nCTEwMTg5NTYxMDMKKwkubG9uZwk4MjI5MjE3MjgKKwkubG9uZwkxMDY5MjMxMzc1CisJLmxvbmcJMjE0NjAzMjczNworCS5sb25nCTEwMjIzMDY0NjUKKwkubG9uZwkzNDc0MjE2MTkyCisJLmxvbmcJMTA2OTI0Nzg1MgorCS5sb25nCTM5NzY4MTE2MjUKKwkubG9uZwkxMDIxMzUwMjA3CisJLmxvbmcJNzE2OTAyNjU2CisJLmxvbmcJMTA2OTI2NDMzMgorCS5sb25nCTcxODI2NzIyMgorCS5sb25nCTEwMTg2MjQ3MjcKKwkubG9uZwkxMjExNTk0NDk2CisJLmxvbmcJMTA2OTI4MDgxMworCS5sb25nCTE0ODU2NDEzODkKKwkubG9uZwkxMDE4NDQ3NDUxCisJLmxvbmcJNzM0MDcwMjcyCisJLmxvbmcJMTA2OTI5NzI5NgorCS5sb25nCTM1NDQ1NTEyOAorCS5sb25nCTEwMjEzNDEyOTEKKwkubG9uZwkzNjUwMTEwNzIwCisJLmxvbmcJMTA2OTMxMzc4MAorCS5sb25nCTY4MjE4NTk0NworCS5sb25nCTEwMjE2NTE4NTMKKwkubG9uZwkxNDQwNjYzMDQwCisJLmxvbmcJMTA2OTMzMDI2NworCS5sb25nCTM1NTg1NzQ1NTAKKwkubG9uZwkxMDIxNjE1MTEwCisJLmxvbmcJMjc2NjYxMjIyNAorCS5sb25nCTEwNjkzNDY3NTUKKwkubG9uZwk4NzQ2MDc5NzgKKwkubG9uZwkxMDE3NzQ2ODcyCisJLmxvbmcJMzQwNDAxMTAwOAorCS5sb25nCTEwNjkzNjMyNDUKKwkubG9uZwk0MTU0OTg4NTAyCisJLmxvbmcJMTAyMTQzOTkwNgorCS5sb25nCTM0MjM5NDkwNTYKKwkubG9uZwkxMDY5Mzc5NzM3CisJLmxvbmcJMjI2MzIwMjMwOQorCS5sb25nCTEwMjE0Nzk2MTUKKwkubG9uZwkyODk3NTg3NzEyCisJLmxvbmcJMTA2OTM5NjIzMQorCS5sb25nCTI1NjIwNjUwMzEKKwkubG9uZwkxMDIyMDkwMzYzCisJLmxvbmcJMTg5NjE1OTIzMgorCS5sb25nCTEwNjk0MTI3MjcKKwkubG9uZwkzODM2MjM3NjYzCisJLmxvbmcJMTAxOTg2NzI4OAorCS5sb25nCTQ5MDk2ODU3NgorCS5sb25nCTEwNjk0MjkyMjUKKwkubG9uZwkzMzIyMDU2NzQzCisJLmxvbmcJMTAwNjc1Mjc2MgorCS5sb25nCTMwNDgzNjAxOTIKKwkubG9uZwkxMDY5NDQ1NzI0CisJLmxvbmcJMTE1MjMxNDgzMworCS5sb25nCTEwMTMxMjIyNTIKKwkubG9uZwkxMDQ5ODUwNjI0CisJLmxvbmcJMTA2OTQ2MjIyNgorCS5sb25nCTM2MDE1OTA3MjcKKwkubG9uZwkxMDIyMjE0NjEwCisJLmxvbmcJMzE1Njg5OTU4NAorCS5sb25nCTEwNjk0Nzg3MjkKKwkubG9uZwkxODU1MTY5OTcwCisJLmxvbmcJMTAxOTQ4NzI3MQorCS5sb25nCTg1MTE3MzM3NgorCS5sb25nCTEwNjk0OTUyMzUKKwkubG9uZwkzMTI2NDk1OTQKKwkubG9uZwkxMDIwODY4NjA0CisJLmxvbmcJMjc5NDI4MTcyOAorCS5sb25nCTEwNjk1MTE3NDIKKwkubG9uZwkxMDkzNDkwMTgxCisJLmxvbmcJMTAyMDc3NzU3NworCS5sb25nCTQ2ODA0MjQ5NgorCS5sb25nCTEwNjk1MjgyNTIKKwkubG9uZwkxMTUyNTQwNjc5CisJLmxvbmcJMTAyMTQwMzczMgorCS5sb25nCTI1MzQyMTkyNjQKKwkubG9uZwkxMDY5NTQ0NzYzCisJLmxvbmcJMjI5MjEyNjAzNQorCS5sb25nCTEwMjE4NzI0MzAKKwkubG9uZwkxMzc2MTQ2NDMyCisJLmxvbmcJMTA2OTU1ODUyNworCS5sb25nCTMyOTM3NTM2NDEKKwkubG9uZwkxMDIwNTAwNDU0CisJLmxvbmcJNDE3NTQ0MjQzMgorCS5sb25nCTEwNjk1NzUwNDQKKwkubG9uZwkzNjI2MzQ3NTY0CisJLmxvbmcJMTAyMTYxMDk2OQorCS5sb25nCTM1MjMxMTM0NzIKKwkubG9uZwkxMDY5NTkxNTY2CisJLmxvbmcJMzM5OTU2NTAwCisJLmxvbmcJMTAyMTExOTAzOQorCS5sb25nCTQwMDMzNTA1MjgKKwkubG9uZwkxMDY5NjA4MDkyCisJLmxvbmcJMzQyOTMzMzA4MgorCS5sb25nCTEwMjI4MTM1NDIKKwkubG9uZwkxNjExMDY3MzkyCisJLmxvbmcJMTA2OTYyNDYyMworCS5sb25nCTIyOTgwMTc1NDQKKwkubG9uZwkxMDIxOTc3NTg3CisJLmxvbmcJOTMxNzgyMTQ0CisJLmxvbmcJMTA2OTY0MTE1OAorCS5sb25nCTIxNjQ2ODQ3NDMKKwkubG9uZwkxMDIxMjUwOTg4CisJLmxvbmcJMjI1NjcyNTUwNAorCS5sb25nCTEwNjk2NTc2OTcKKwkubG9uZwkxMTM4NzYyMzM1CisJLmxvbmcJMTAyMTQ0Mzc3NgorCS5sb25nCTE1ODI4NTMxMjAKKwkubG9uZwkxMDY5Njc0MjQxCisJLmxvbmcJMTA4NDAxMDM4MgorCS5sb25nCTEwMjI5OTQ2OTMKKwkubG9uZwkzNDk3NzU4NzIwCisJLmxvbmcJMTA2OTY5MDc4OQorCS5sb25nCTQwNjM2NjI0NAorCS5sb25nCTEwMjI3MTM1ODYKKwkubG9uZwkzOTk5ODE2OTYwCisJLmxvbmcJMTA2OTcwNzM0MgorCS5sb25nCTE0ODg3MjMwNDIKKwkubG9uZwkxMDIzMzgxMjkwCisJLmxvbmcJMzM4MzA5NjA2NAorCS5sb25nCTEwNjk3MjM5MDAKKwkubG9uZwkyNTQxNTU4OTUzCisJLmxvbmcJMTAxOTEzNzg4NworCS5sb25nCTE5NDI0MDM1ODQKKwkubG9uZwkxMDY5NzQwNDYzCisJLmxvbmcJMTg3OTYyMDM0MworCS5sb25nCTEwMjI2NTM2NDIKKwkubG9uZwk0MjY4MjYzNjgwCisJLmxvbmcJMTA2OTc1NzAzMAorCS5sb25nCTMwMzkwNzcwNDcKKwkubG9uZwkxMDIyMjUyNTQ1CisJLmxvbmcJMjA2NzA2MjI3MgorCS5sb25nCTEwNjk3NzM2MDMKKwkubG9uZwk0MTkwNjcwNjc3CisJLmxvbmcJMTAyMDcyNTg2MworCS5sb25nCTQyMjU4MjgwOTYKKwkubG9uZwkxMDY5NzkwMTgwCisJLmxvbmcJMTk5ODU2NzMyMQorCS5sb25nCTEwMjIwMTQzODUKKwkubG9uZwkyNDUyNTA3MTM2CisJLmxvbmcJMTA2OTgwNjc2MworCS5sb25nCTE1MTE2Mjg4NzMKKwkubG9uZwkxMDIxOTAwMzAwCisJLmxvbmcJMTM0MDc0NjI0MAorCS5sb25nCTEwNjk4MjMzNTEKKwkubG9uZwk3ODgzNjczNDEKKwkubG9uZwkxMDIyNzI2MjA4CisJLmxvbmcJMTE5MDAzNTQ1NgorCS5sb25nCTEwNjk4Mzk5NDQKKwkubG9uZwkzODU2MzM3MjMwCisJLmxvbmcJMTAyMTgzNDExOAorCS5sb25nCTIzMDA2ODgzODQKKwkubG9uZwkxMDY5ODU2NTQyCisJLmxvbmcJMzIxMTM5NjU3OQorCS5sb25nCTEwMjI2MjEzNjUKKwkubG9uZwk2Nzg4ODY0MDAKKwkubG9uZwkxMDY5ODczMTQ2CisJLmxvbmcJNDAwMTAxMTg4NworCS5sb25nCTEwMjIwNDI2NDYKKwkubG9uZwk5MjE1OTQxMTIKKwkubG9uZwkxMDY5ODg5NzU1CisJLmxvbmcJNTU3ODExOTY4CisJLmxvbmcJMTAyMzA2NTUzMworCS5sb25nCTMzMzE2Njg5OTIKKwkubG9uZwkxMDY5OTA2MzY5CisJLmxvbmcJMTg3NzA2MDY3OQorCS5sb25nCTEwMjI0MTk3NDIKKwkubG9uZwkzOTE3ODc1MjAwCisJLmxvbmcJMTA2OTkyMjk4OQorCS5sb25nCTExODEwNTUxNzEKKwkubG9uZwkxMDIyNzUyNzEyCisJLmxvbmcJMjk4NDgyOTY5NgorCS5sb25nCTEwNjk5Mzk2MTUKKwkubG9uZwk0Mjk0NTI2OTMyCisJLmxvbmcJMTAyMTQ5OTk4OAorCS5sb25nCTgzODA0OTAyNAorCS5sb25nCTEwNjk5NTYyNDcKKwkubG9uZwkzNjU4MDgxODc4CisJLmxvbmcJMTAyMjk1Nzk1MgorCS5sb25nCTIwNzg5MjgzODQKKwkubG9uZwkxMDY5OTcyODg0CisJLmxvbmcJODIwMzUzNzAxCisJLmxvbmcJMTAxOTM5MTEwNworCS5sb25nCTI3MTk4NTQzMzYKKwkubG9uZwkxMDY5OTg5NTI3CisJLmxvbmcJMTY0NDAyMjQ4OQorCS5sb25nCTEwMjMzNzgyNDAKKwkubG9uZwkzMDY5MTE3Njk2CisJLmxvbmcJMTA3MDAwNjE3NgorCS5sb25nCTI3NzEzOTM3MDIKKwkubG9uZwkxMDE5MzE5OTU0CisJLmxvbmcJMzQzNTk2MjM2OAorCS5sb25nCTEwNzAwMjI4MzEKKwkubG9uZwkzODc2Mzk0MTQ1CisJLmxvbmcJMTAyMzAyNDQzMworCS5sb25nCTQxMzA1OTUzMjgKKwkubG9uZwkxMDcwMDM5NDkyCisJLmxvbmcJMTYzMDQ0Nzc0OAorCS5sb25nCTEwMjE0NjU4ODIKKwkubG9uZwkxMTY5MjM2MjI0CisJLmxvbmcJMTA3MDA1NjE2MAorCS5sb25nCTI4MjgzNTU5OTcKKwkubG9uZwkxMDIwNDU4MTIwCisJLmxvbmcJMzQ1Mzk5NzMxMgorCS5sb25nCTEwNzAwNzI4MzMKKwkubG9uZwkxNjQwOTE2NDEKKwkubG9uZwkxMDIwMzg4Mjc5CisJLmxvbmcJMjcwODEyNzc0NAorCS5sb25nCTEwNzAwODk1MTMKKwkubG9uZwkzMDM2NTUwMjIzCisJLmxvbmcJMTAyMzMyODY4NAorCS5sb25nCTM1NDA3OTc2OTYKKwkubG9uZwkxMDcwMTA2MTk5CisJLmxvbmcJMzcxMDk0OTQ2MworCS5sb25nCTEwMjI1Njg4MDUKKwkubG9uZwkxOTcyMjc2NzM2CisJLmxvbmcJMTA3MDEyMjg5MgorCS5sb25nCTM4ODUyNzc5NTAKKwkubG9uZwkxMDE5NzYxNjc0CisJLmxvbmcJMjYxMzgxNTU1MgorCS5sb25nCTEwNzAxMzk1OTEKKwkubG9uZwkyNzY0MTY1MDc3CisJLmxvbmcJMTAyMjkyMTAyMworCS5sb25nCTE0ODc3OTE2MTYKKwkubG9uZwkxMDcwMTU2Mjk3CisJLmxvbmcJMTMzMDY0NDc2OQorCS5sb25nCTEwMjMxNjI2NzkKKwkubG9uZwkzMjA3NTkzNDcyCisJLmxvbmcJMTA3MDE3MzAwOQorCS5sb25nCTM5MTEwMDcyMjEKKwkubG9uZwkxMDIyOTkzNDk2CisJLmxvbmcJMzc5Nzc2NDYwOAorCS5sb25nCTEwNzAxODk3MjgKKwkubG9uZwk5Nzk3MTI1OTgKKwkubG9uZwkxMDIyNTU0NTgwCisJLmxvbmcJMzU3ODkyMDQ0OAorCS5sb25nCTEwNzAyMDY0NTQKKwkubG9uZwkyODI1NzM4MjIzCisJLmxvbmcJMTAyMDIyMzcwOAorCS5sb25nCTI4NzI3OTU2NDgKKwkubG9uZwkxMDcwMjIzMTg3CisJLmxvbmcJMzkyNDUxMTI0CisJLmxvbmcJMTAyMjY2NjI3OQorCS5sb25nCTIwMDIyNTg0MzIKKwkubG9uZwkxMDcwMjM5OTI3CisJLmxvbmcJMzczMDQwNzYzMgorCS5sb25nCTEwMjMxNDgyOTEKKwkubG9uZwkxMjkxMzI2NDY0CisJLmxvbmcJMTA3MDI1NjY3NAorCS5sb25nCTM3MjM4MDI5ODAKKwkubG9uZwkxMDIyNTE0MDg5CisJLmxvbmcJMTA2NTE4MDkyOAorCS5sb25nCTEwNzAyNzM0MjgKKwkubG9uZwkyNjM1NjE3NDYzCisJLmxvbmcJMTAyMjY1NDQ3MAorCS5sb25nCTE2NTAxODE2MzIKKwkubG9uZwkxMDcwMjkwMTg5CisJLmxvbmcJMjA2MTk4Mjg4MworCS5sb25nCTEwMjI4NTM0MTEKKwkubG9uZwkzMzczODgyODgwCisJLmxvbmcJMTA3MDMwNjk1NworCS5sb25nCTMxOTczMjc4NQorCS5sb25nCTEwMjIwMTcxNzUKKwkubG9uZwkyMjcwMDgxMjgwCisJLmxvbmcJMTA3MDMyMzczMworCS5sb25nCTIyMzc3NTc0MTEKKwkubG9uZwkxMDIzMDY0MDg3CisJLmxvbmcJMjk2MzczMjczNgorCS5sb25nCTEwNzAzNDA1MTYKKwkubG9uZwk0Njg4MzkxNjUKKwkubG9uZwkxMDIzMjkzNzc0CisJLmxvbmcJMTQ5MTA5OTkwNAorCS5sb25nCTEwNzAzNTczMDcKKwkubG9uZwkxNTAyNjU3OTQ2CisJLmxvbmcJMTAyMTUzMzQ3OQorCS5sb25nCTI0Nzk2MzY0ODAKKwkubG9uZwkxMDcwMzc0MTA1CisJLmxvbmcJNDgyOTEzNTYyCisJLmxvbmcJMTAyMTk4NjI4NgorCS5sb25nCTE5NjgxMzM2MzIKKwkubG9uZwkxMDcwMzkwOTExCisJLmxvbmcJMzI4MTQ3NDMzNworCS5sb25nCTEwMjI2NDY0MDAKKwkubG9uZwkyOTE2MzkwNDAKKwkubG9uZwkxMDcwNDA3NzI1CisJLmxvbmcJMjQ1MzMyMDI1OQorCS5sb25nCTEwMjI4MTI0MjMKKwkubG9uZwkyMDgxNDcyNTEyCisJLmxvbmcJMTA3MDQyNDU0NgorCS5sb25nCTI5Mzk5ODk1NzAKKwkubG9uZwkxMDIzMDkxODg4CisJLmxvbmcJMzM4MDM0MDQ4MAorCS5sb25nCTEwNzA0NDEzNzUKKwkubG9uZwkyODUwNzA3NDk5CisJLmxvbmcJMTAyMTkyMTEwOQorCS5sb25nCTIzMjI4NzQ4OAorCS5sb25nCTEwNzA0NTgyMTMKKwkubG9uZwkzNjc0NjI1MzQyCisJLmxvbmcJMTAyMDcyNTEzMAorCS5sb25nCTE1Njc2MTQyMDgKKwkubG9uZwkxMDcwNDc1MDU4CisJLmxvbmcJOTM0NzMzNAorCS5sb25nCTEwMjIwMjQwMDkKKwkubG9uZwkzNDMzMDkxMDcyCisJLmxvbmcJMTA3MDQ5MTkxMQorCS5sb25nCTI4MjUyNDk5OQorCS5sb25nCTEwMjE0MzM1MjMKKwkubG9uZwkxODc2ODc3MzEyCisJLmxvbmcJMTA3MDUwODc3MworCS5sb25nCTM0NzA0NDk0NDAKKwkubG9uZwkxMDE5MzA5NzIxCisJLmxvbmcJMTUzODQ3MjE5MgorCS5sb25nCTEwNzA1MjU2NDMKKwkubG9uZwkyMDg5NDg2ODI1CisJLmxvbmcJMTAxOTY5ODkxNgorCS5sb25nCTI3NjM4MzA3ODQKKwkubG9uZwkxMDcwNTQyNTIxCisJLmxvbmcJNDQzNDk4MTE1CisJLmxvbmcJMTAyMDUwNTE5NAorCS5sb25nCTE2MDUzODE2MzIKKwkubG9uZwkxMDcwNTU5NDA4CisJLmxvbmcJMzAxODg3MTYwMQorCS5sb25nCTEwMjI4Njk5MTMKKwkubG9uZwkyNzA2OTQ2MDQ4CisJLmxvbmcJMTA3MDU3NjMwMworCS5sb25nCTM5MzYyNjA4OTIKKwkubG9uZwkxMDIzMTc1ODc1CisJLmxvbmcJMjEyMzg4NzM2MAorCS5sb25nCTEwNzA1OTMyMDcKKwkubG9uZwkyOTk0MjIwNjU1CisJLmxvbmcJMTAyMjgyNTk0OAorCS5sb25nCTEwNDAxNTEwNAorCS5sb25nCTEwNzA2MDMxMDgKKwkubG9uZwkzMzUwNTQ0OTMKKwkubG9uZwkxMDIzNDQxODUzCisJLmxvbmcJMjkwNDU2ODgzMgorCS5sb25nCTEwNzA2MTU4MDAKKwkubG9uZwkxNDUxMjE1NjMzCisJLmxvbmcJMTAyMzg1Mzg1NworCS5sb25nCTM0NTYxOTcxMjAKKwkubG9uZwkxMDcwNjMyNzM5CisJLmxvbmcJNDM2MzM0NzMzCisJLmxvbmcJMTAyNDAyNjQzMgorCS5sb25nCTI1MjQ1MjM1MgorCS5sb25nCTEwNzA2NDk2OTcKKwkubG9uZwkzNDU5NjE2NworCS5sb25nCTEwMjQwMzEzOTYKKwkubG9uZwkzMzI4MDE4NDMyCisJLmxvbmcJMTA3MDY2NjY3MgorCS5sb25nCTI2NDQ1NDcwNzMKKwkubG9uZwkxMDI0Mjk2NzU4CisJLmxvbmcJMTI1NTgyOTI0OAorCS5sb25nCTEwNzA2ODM2NjcKKwkubG9uZwk1NTI4MzI1ODYKKwkubG9uZwkxMDIzNzYzMTIyCisJLmxvbmcJNDA5NzA1ODU2MAorCS5sb25nCTEwNzA3MDA2ODAKKwkubG9uZwkxOTU1NjQwNjIzCisJLmxvbmcJMTAyMTM5NDY1NAorCS5sb25nCTQ1MTc3MDExMgorCS5sb25nCTEwNzA3MTc3MTQKKwkubG9uZwkzNDI4OTAzNzc3CisJLmxvbmcJMTAyMjk0MTE0MgorCS5sb25nCTQwODkyMDgzMgorCS5sb25nCTEwNzA3MzQ3NjcKKwkubG9uZwkxNjU1MDMyNjMKKwkubG9uZwkxMDIzODk0OTU4CisJLmxvbmcJMTE4Njk2MDY0MAorCS5sb25nCTEwNzA3NTE4NDAKKwkubG9uZwk0MzU4MjY0NTAKKwkubG9uZwkxMDI0MDI2MTM0CisJLmxvbmcJMTkwNzg2NTYKKwkubG9uZwkxMDcwNzY4OTM0CisJLmxvbmcJMTgzNDE2OTc0OQorCS5sb25nCTEwMjI4OTkyODQKKwkubG9uZwkyNzQzNDkwMzA0CisJLmxvbmcJMTA3MDc4NjA0OAorCS5sb25nCTQ5NDU4MTA3NAorCS5sb25nCTEwMTg4MTg0NzkKKwkubG9uZwkyMzI4OTYxMDI0CisJLmxvbmcJMTA3MDgwMzE4NAorCS5sb25nCTI5ODc5MDg4MzQKKwkubG9uZwkxMDIyNTgxMTEwCisJLmxvbmcJMzUwMDExMzkyCisJLmxvbmcJMTA3MDgyMDM0MgorCS5sb25nCTI0MDc3MTE4NAorCS5sb25nCTEwMjQxNDMwODMKKwkubG9uZwkyNjkyMzI2OTEyCisJLmxvbmcJMTA3MDgzNzUyMQorCS5sb25nCTY2NjA1NjgzNworCS5sb25nCTEwMjIzOTQ3NzYKKwkubG9uZwkyMzczMjc0MzY4CisJLmxvbmcJMTA3MDg1NDcyMworCS5sb25nCTI0ODQzMzc3NzAKKwkubG9uZwkxMDI0MjI4MTU2CisJLmxvbmcJMTAxNzEzMTUyMAorCS5sb25nCTEwNzA4NzE5NDgKKwkubG9uZwkzMjg1NjQ4Mjc5CisJLmxvbmcJMTAyNDAyNTc4OQorCS5sb25nCTI2NTU1ODI3MgorCS5sb25nCTEwNzA4ODkxOTYKKwkubG9uZwkzOTIyNDE4OTYKKwkubG9uZwkxMDI0MjUyODA5CisJLmxvbmcJMTc3ODAwODA2NAorCS5sb25nCTEwNzA5MDY0NjcKKwkubG9uZwkxNTM2MTA3OTQzCisJLmxvbmcJMTAyMzk0OTMwMAorCS5sb25nCTI5MzcxODQ3NjgKKwkubG9uZwkxMDcwOTIzNzYyCisJLmxvbmcJMzU0MTA2MjI1MQorCS5sb25nCTEwMTk0NDg2NDYKKwkubG9uZwkxMTQ0NDQyODgwCisJLmxvbmcJMTA3MDk0MTA4MgorCS5sb25nCTM2OTE2ODM3ODEKKwkubG9uZwkxMDIyMTIzOTQ4CisJLmxvbmcJMjQxMDE2NTUwNAorCS5sb25nCTEwNzA5NTg0MjYKKwkubG9uZwkxODA0MTgxOTYwCisJLmxvbmcJMTAyMzk0NTIyMQorCS5sb25nCTQxNzQzNTA4NDgKKwkubG9uZwkxMDcwOTc1Nzk1CisJLmxvbmcJMjAxNjA5NDg2MQorCS5sb25nCTEwMjE3MTY1ODUKKwkubG9uZwkzODk3MDEyNDgwCisJLmxvbmcJMTA3MDk5MzE5MAorCS5sb25nCTE3NTI5NDQxMAorCS5sb25nCTEwMjM3MDM0MDQKKwkubG9uZwkzMzUzNjIzMDQwCisJLmxvbmcJMTA3MTAxMDYxMQorCS5sb25nCTE2Nzk3MzI0MgorCS5sb25nCTEwMjMyNDA4MzkKKwkubG9uZwk0NTY3MTE2OAorCS5sb25nCTEwNzEwMjgwNTkKKwkubG9uZwkyMTY2ODU2MTEzCisJLmxvbmcJMTAyMTU2NTQxMworCS5sb25nCTg2MDYzODcyCisJLmxvbmcJMTA3MTA0NTUzMworCS5sb25nCTI2NzYyNTQ3MjcKKwkubG9uZwkxMDIzOTg1Mjk5CisJLmxvbmcJMTAxOTc3MjY3MgorCS5sb25nCTEwNzEwNjMwMzQKKwkubG9uZwk5ODkwNDM1OTMKKwkubG9uZwkxMDIxNTQ5NTg3CisJLmxvbmcJNDE0Mjk3MzQ0CisJLmxvbmcJMTA3MTA4MDU2MworCS5sb25nCTM5NjA5NzIwNDYKKwkubG9uZwkxMDI0MzA3MjUxCisJLmxvbmcJMTU1MTczMTIwCisJLmxvbmcJMTA3MTA5ODEyMAorCS5sb25nCTE4MzA5MTkyOTEKKwkubG9uZwkxMDIxNTkyMjUxCisJLmxvbmcJMjE1MTU2MjI0MAorCS5sb25nCTEwNzExMTU3MDUKKwkubG9uZwk0MDU0MDg2NjYKKwkubG9uZwkxMDIzNDIzMTI4CisJLmxvbmcJNDA0MTg1NDcyMAorCS5sb25nCTEwNzExMzMzMTkKKwkubG9uZwkyMDQzNDk3ODI3CisJLmxvbmcJMTAyNDQxMTUwMworCS5sb25nCTM0ODkyMjQxOTIKKwkubG9uZwkxMDcxMTUwOTYzCisJLmxvbmcJMzA3MjIxNTg2NAorCS5sb25nCTEwMjI2OTg2MzUKKwkubG9uZwkyNDc3MTk2Mjg4CisJLmxvbmcJMTA3MTE2ODYzNworCS5sb25nCTE4MTIxOTUxMzkKKwkubG9uZwkxMDIyNjg5MTkyCisJLmxvbmcJMzAxNTI5ODgxNgorCS5sb25nCTEwNzExODYzNDEKKwkubG9uZwk3NjQ4NDE5NjkKKwkubG9uZwkxMDIxMDI3MzMxCisJLmxvbmcJMjg0NDczMTEzNgorCS5sb25nCTEwNzEyMDQwNzYKKwkubG9uZwkyODc4MTE3MzIxCisJLmxvbmcJMTAxOTExNjUxMworCS5sb25nCTQwMjg5NTA1MjgKKwkubG9uZwkxMDcxMjIxODQyCisJLmxvbmcJNjk4OTExNDUyCisJLmxvbmcJMTAyMzI2NTYwMgorCS5sb25nCTY5NDQxNTM2CisJLmxvbmcJMTA3MTIzOTY0MQorCS5sb25nCTMyNTM0Njc4NDcKKwkubG9uZwkxMDIwNzk1MDc1CisJLmxvbmcJMTY3NjIwOTkyMAorCS5sb25nCTEwNzEyNTc0NzEKKwkubG9uZwk0MjcyNDMxMTY3CisJLmxvbmcJMTAyMjg3Mzk4MgorCS5sb25nCTI0MDg3NTIzODQKKwkubG9uZwkxMDcxMjc1MzM0CisJLmxvbmcJNjQ4NTE5MTAwCisJLmxvbmcJMTAyNDM4NTcxNworCS5sb25nCTE1MTYyMzY4MAorCS5sb25nCTEwNzEyOTMyMzEKKwkubG9uZwkzNDUyNTcwMTcKKwkubG9uZwkxMDE5NTYxNDA4CisJLmxvbmcJMTQxMDE1NDI0MAorCS5sb25nCTEwNzEzMTExNjEKKwkubG9uZwkxOTc4NjM5OTMKKwkubG9uZwkxMDIzMjI0MjA3CisJLmxvbmcJNDEzMTM1MTU1MgorCS5sb25nCTEwNzEzMjkxMjUKKwkubG9uZwkyNjIwODAxNzg5CisJLmxvbmcJMTAyNDQxMTE2OQorCS5sb25nCTE5OTk2NjQzODQKKwkubG9uZwkxMDcxMzQ3MTI1CisJLmxvbmcJMzk1MjY5MjYxNgorCS5sb25nCTEwMjQxNjgwODYKKwkubG9uZwkxNjE3NjY4ODY0CisJLmxvbmcJMTA3MTM2NTE2MAorCS5sb25nCTMwMTk4ODk4MDkKKwkubG9uZwkxMDIxOTA3NjkyCisJLmxvbmcJMTAzMjA3NDI0MAorCS5sb25nCTEwNzEzODMyMzEKKwkubG9uZwk1OTQ2OTg5OQorCS5sb25nCTEwMjM2NTYxOTQKKwkubG9uZwkyNjE5NDkyMDk2CisJLmxvbmcJMTA3MTQwMTMzOAorCS5sb25nCTE0MTc1MjY4MjAKKwkubG9uZwkxMDIxNDU3NzgzCisJLmxvbmcJMjAyNDI5NDQwCisJLmxvbmcJMTA3MTQxOTQ4MworCS5sb25nCTI5Mjc2Njc5MzUKKwkubG9uZwkxMDE5MTc1NDQ3CisJLmxvbmcJNTI1MDQ0MjI0CisJLmxvbmcJMTA3MTQzNzY2NQorCS5sb25nCTM4MTY2ODExCisJLmxvbmcJMTAyMzk4MTg3OQorCS5sb25nCTE3NzkyNTg4ODAKKwkubG9uZwkxMDcxNDU1ODg1CisJLmxvbmcJNDgxMjUyNTAwCisJLmxvbmcJMTAyMzMxMDIzNAorCS5sb25nCTIxOTU2NzM2MDAKKwkubG9uZwkxMDcxNDc0MTQ0CisJLmxvbmcJMzk2MjM5NTk4MQorCS5sb25nCTEwMjEzMzkwODgKKwkubG9uZwk0NDU3MzY5NgorCS5sb25nCTEwNzE0OTI0NDMKKwkubG9uZwkzOTM2MjgxMzk1CisJLmxvbmcJMTAyMzAxNDgyOQorCS5sb25nCTIyMjY5MDUzNDQKKwkubG9uZwkxMDcxNTEwNzgxCisJLmxvbmcJMTUxNTMyMDQ3NgorCS5sb25nCTEwMjQzMjA2MjMKKwkubG9uZwkyODAwNTEyNTEyCisJLmxvbmcJMTA3MTUyOTE2MAorCS5sb25nCTEyMjU0MDM2OTcKKwkubG9uZwkxMDIxMDgxODQ2CisJLmxvbmcJMTYxMTEzNjAwCisJLmxvbmcJMTA3MTU0NzU4MQorCS5sb25nCTMwNjQ4MDk3MzMKKwkubG9uZwkxMDI0MTczOTE3CisJLmxvbmcJMTMzODQxMDI0MAorCS5sb25nCTEwNzE1NjYwNDMKKwkubG9uZwkyMDI3NjA0OTczCisJLmxvbmcJMTAyNDM2MjUyNgorCS5sb25nCTUyMjQzMzI4MAorCS5sb25nCTEwNzE1ODQ1NDgKKwkubG9uZwkyMDU1MTcxNzIzCisJLmxvbmcJMTAyMzg1ODgyNQorCS5sb25nCTUzOTU5NTc3NgorCS5sb25nCTEwNzE2MDMwOTYKKwkubG9uZwkzODY4ODIwMTM1CisJLmxvbmcJMTAyMjkzNjQyNAorCS5sb25nCTQyNjQwMTc2NjQKKwkubG9uZwkxMDcxNjIxNjg3CisJLmxvbmcJMzIyODA2NTE0NQorCS5sb25nCTEwMjM0Nzk1NzgKKwkubG9uZwkxNzMzOTI0MDk2CisJLmxvbmcJMTA3MTY0MDMyNAorCS5sb25nCTM1MTE5MzQ0NzUKKwkubG9uZwkxMDIyNDk2MzU1CisJLmxvbmcJMTA4ODgwMzg0CisJLmxvbmcJMTA3MTY1MTgzOQorCS5sb25nCTYxNTg4MDk2NworCS5sb25nCTEwMjM1MTk3MDYKKwkubG9uZwkzNTE3ODU2NTEyCisJLmxvbmcJMTA3MTY2MTIwMgorCS5sb25nCTMxMTMxMDg1NTkKKwkubG9uZwkxMDI1MTkwMjg5CisJLmxvbmcJNDA0MzE1MzE1MgorCS5sb25nCTEwNzE2NzA1ODkKKwkubG9uZwkxNTcxODM2MjE4CisJLmxvbmcJMTAyMzEwNjExNgorCS5sb25nCTMyNTEyOTkwNzIKKwkubG9uZwkxMDcxNjgwMDAwCisJLmxvbmcJMzQ0NDA3NjEwMgorCS5sb25nCTEwMjIxODc4NDEKKwkubG9uZwkyNzM2OTIxNjAwCisJLmxvbmcJMTA3MTY4OTQzNQorCS5sb25nCTI3Mjc3MTQ4MworCS5sb25nCTEwMjUwOTUyODAKKwkubG9uZwkzODk3Njk4NTYwCisJLmxvbmcJMTA3MTcwMzYzMworCS5sb25nCTIwNzUzOTAxODgKKwkubG9uZwkxMDIyNDg5MDIyCisJLmxvbmcJMzIwOTQ4NTA1NgorCS5sb25nCTEwNzE3MjI2NTIKKwkubG9uZwkxNDM4MDk0MDY1CisJLmxvbmcJMTAyMTg0NDk0NAorCS5sb25nCTM3ODE0MzIwNjQKKwkubG9uZwkxMDcxNzQxNzc0CisJLmxvbmcJMTY3NTAxNzE0NQorCS5sb25nCTEwMjQxNDM4MjgKKwkubG9uZwkyNjg0MTg0MDY0CisJLmxvbmcJMTA3MTc2MTAwMworCS5sb25nCTIyNTk5NjM3NTMKKwkubG9uZwkxMDI0NzMxMzkzCisJLmxvbmcJMTg0MDQ4OTcyOAorCS5sb25nCTEwNzE3ODAzNDIKKwkubG9uZwkzMzcyODgzNTk3CisJLmxvbmcJMTAyMzQzMTQwOAorCS5sb25nCTM3NjQwODc4MDgKKwkubG9uZwkxMDcxNzk5Nzk0CisJLmxvbmcJMzMwNzUyMzEwMgorCS5sb25nCTEwMjQ0ODU3ODgKKwkubG9uZwkzMDA2MjMyMzIwCisJLmxvbmcJMTA3MTgxOTM2NAorCS5sb25nCTMwODg5NzE5NjYKKwkubG9uZwkxMDI1MjEzMjUxCisJLmxvbmcJMzM3NDg4MTI4MAorCS5sb25nCTEwNzE4MzkwNTUKKwkubG9uZwk4MzQ0Mzc3NDkKKwkubG9uZwkxMDI1MjM2NDUyCisJLmxvbmcJNzk3Mjg0ODY0CisJLmxvbmcJMTA3MTg1ODg3MgorCS5sb25nCTMxMjI2NjM5NDEKKwkubG9uZwkxMDI1MzIwNDczCisJLmxvbmcJNTQ1NzY1MTIwCisJLmxvbmcJMTA3MTg3ODgxOAorCS5sb25nCTgyNjUzOTYyNQorCS5sb25nCTEwMjI0NTA5NTUKKwkubG9uZwkxMDc1NjIyNDAKKwkubG9uZwkxMDcxODk4ODk4CisJLmxvbmcJMzM5NTg0NjAwCisJLmxvbmcJMTAyMjQ4MTI1NQorCS5sb25nCTIxMjM2NDkwMjQKKwkubG9uZwkxMDcxOTE5MTE2CisJLmxvbmcJMzkxMjk1OTgzMworCS5sb25nCTEwMjQzMjEwMDkKKwkubG9uZwkxNTYyMzg1NjY0CisJLmxvbmcJMTA3MTkzOTQ3OAorCS5sb25nCTI4NDYwNjcyMzAKKwkubG9uZwkxMDIzMzQzOTgxCisJLmxvbmcJMjk2MzA4NTgyNAorCS5sb25nCTEwNzE5NTk5ODgKKwkubG9uZwk5NTQ1NDg2MjcKKwkubG9uZwkxMDIxNDc1MjExCisJLmxvbmcJMzMyNTU1MDU5MgorCS5sb25nCTEwNzE5ODA2NTIKKwkubG9uZwkzNDU5NjUxMTU1CisJLmxvbmcJMTAyNTMwNTU3MworCS5sb25nCTc3NTc1MjQ0OAorCS5sb25nCTEwNzIwMDE0NzYKKwkubG9uZwkzNTgyNzQ2NjY3CisJLmxvbmcJMTAyMzg1OTQ2MAorCS5sb25nCTMyMzg1OTA3MjAKKwkubG9uZwkxMDcyMDIyNDY0CisJLmxvbmcJNjM0NjM2MTYyCisJLmxvbmcJMTAyNDQ3MjM1MworCS5sb25nCTI3NTg4MDE5MjAKKwkubG9uZwkxMDcyMDQzNjI0CisJLmxvbmcJMzA3ODIxNjMxOQorCS5sb25nCTEwMjUzMDQ1MTYKKwkubG9uZwkxMzcwMzE5MTA0CisJLmxvbmcJMTA3MjA2NDk2MgorCS5sb25nCTI1NzA1NjkwNzgKKwkubG9uZwkxMDI1MDk5NDQyCisJLmxvbmcJMjYxNTgwNTE4NAorCS5sb25nCTEwNzIwODY0ODQKKwkubG9uZwkzNzI5OTMzNDEyCisJLmxvbmcJMTAyNDYwNTExMgorCS5sb25nCTMwNzczMzY1NzYKKwkubG9uZwkxMDcyMTA4MTk4CisJLmxvbmcJMTk0ODkxNjA2NgorCS5sb25nCTEwMjQ3ODE2MDMKKwkubG9uZwkxMDk5NTI4MTkyCisJLmxvbmcJMTA3MjEzMDExMgorCS5sb25nCTMxMzkxNDMxNTcKKwkubG9uZwkxMDIzNzI5MzYwCisJLmxvbmcJMTIzMTkwMzIzMgorCS5sb25nCTEwNzIxNTIyMzMKKwkubG9uZwkxMzQ5NTEzNDc3CisJLmxvbmcJMTAyNDczNzUxNQorCS5sb25nCTE1MDc1MDQxMjgKKwkubG9uZwkxMDcyMTc0NTcwCisJLmxvbmcJMzQ4NDUxNjMyMgorCS5sb25nCTEwMjQwMDA5NTkKKwkubG9uZwkyMjE0NjU5ODQwCisJLmxvbmcJMTA3MjE5NzEzMgorCS5sb25nCTI1NjM4MjA5MTcKKwkubG9uZwkxMDI1MjI1NTM1CisJLmxvbmcJMTgwNDczOTg0MAorCS5sb25nCTEwNzIyMTk5MjkKKwkubG9uZwk3NjAwMzg3NDYKKwkubG9uZwkxMDI0NDgyODU1CisJLmxvbmcJMTQxMzc0NjY4OAorCS5sb25nCTEwNzIyNDI5NzEKKwkubG9uZwkzNDAxNzM0NzE0CisJLmxvbmcJMTAyNTEyOTgzOAorCS5sb25nCTgyMTQwOTUzNgorCS5sb25nCTEwNzIyNjYyNjkKKwkubG9uZwkzNzI5NzcyNTUxCisJLmxvbmcJMTAyNTQ4NDc5NgorCS5sb25nCTMwMzE4MjU2NjQKKwkubG9uZwkxMDcyMjg5ODM0CisJLmxvbmcJMTIyMjU2NzQ5CisJLmxvbmcJMTAyNDc1MjU5NAorCS5sb25nCTE3MTA3ODQyNTYKKwkubG9uZwkxMDcyMzEzNjgwCisJLmxvbmcJMTUxODIwNTQ4MworCS5sb25nCTEwMjQ3MjQ4MDkKKwkubG9uZwkzMDI1MjY1MTUyCisJLmxvbmcJMTA3MjMzNzgxOQorCS5sb25nCTQwOTk1MTk4OQorCS5sb25nCTEwMjI4MzU1NTUKKwkubG9uZwkyODc3NjkwODgKKwkubG9uZwkxMDcyMzYyMjY3CisJLmxvbmcJODAwMzU1NTk0CisJLmxvbmcJMTAyMjQ4NDg1MAorCS5sb25nCTE5ODE3OTg0MAorCS5sb25nCTEwNzIzODcwMzgKKwkubG9uZwkzNTAyOTI2MjEzCisJLmxvbmcJMTAyNDIwOTM3MworCS5sb25nCTE5MDkxMzA0OTYKKwkubG9uZwkxMDcyNDEyMTQ5CisJLmxvbmcJMzA2NDY5NDMxOQorCS5sb25nCTEwMjUzODA4MjMKKwkubG9uZwkxOTQxNzMyMDk2CisJLmxvbmcJMTA3MjQzNzYxOQorCS5sb25nCTQxMTI5MzAzOTAKKwkubG9uZwkxMDI0Mjk0Njc5CisJLmxvbmcJMzQ5MjAxMDQ5NgorCS5sb25nCTEwNzI0NjM0NjcKKwkubG9uZwkyNjg0OTE4MTA3CisJLmxvbmcJMTAyMzIyMDIzMworCS5sb25nCTgxOTU5NjgwCisJLmxvbmcJMTA3MjQ4OTcxNgorCS5sb25nCTIyMDAyMTM2NgorCS5sb25nCTEwMjA2MzUxMzEKKwkubG9uZwkyMjk3ODM3MDU2CisJLmxvbmcJMTA3MjUxNjM4NworCS5sb25nCTQwMjc2ODM4MjYKKwkubG9uZwkxMDIxMDQxMTg1CisJLmxvbmcJMjcwNDA0MDk2CisJLmxvbmcJMTA3MjU0MzUwOAorCS5sb25nCTIwMTI3NjYwNjUKKwkubG9uZwkxMDIxNzgwNzUzCisJLmxvbmcJMzY2NzM3Njg5NgorCS5sb25nCTEwNzI1NzExMDUKKwkubG9uZwkyNzI3OTgxNTIyCisJLmxvbmcJMTAyMzAwOTg3NAorCS5sb25nCTMzMDQwMDI1NgorCS5sb25nCTEwNzI1OTkyMTIKKwkubG9uZwkyOTQwMDE3MDAzCisJLmxvbmcJMTAyNTM5MzQzOQorCS5sb25nCTExMTkyOTM5NTIKKwkubG9uZwkxMDcyNjI3ODYxCisJLmxvbmcJMTYwODU1MDQxNgorCS5sb25nCTEwMjI2NzU2MTIKKwkubG9uZwkzNTM2MTU1OTA0CisJLmxvbmcJMTA3MjY1NzA5MQorCS5sb25nCTM0OTY2NTc3OAorCS5sb25nCTEwMjUxNTY3NTEKKwkubG9uZwkzMDc4MDQ2NzIwCisJLmxvbmcJMTA3MjY4Njk0NgorCS5sb25nCTIwMTYxNTk5OTYKKwkubG9uZwkxMDIyMTkzMTY5CisJLmxvbmcJNDU1MjI4NDE2CisJLmxvbmcJMTA3MjcwNTM2MQorCS5sb25nCTE5MDg1MzkzMjgKKwkubG9uZwkxMDI2MTI2MzMyCisJLmxvbmcJMTg3MTUwNTY2NAorCS5sb25nCTEwNzI3MjA5ODgKKwkubG9uZwkyNzg0NzAwODk0CisJLmxvbmcJMTAyNTkyMjI3NworCS5sb25nCTE2MzA5OTQ0MzIKKwkubG9uZwkxMDcyNzM3MDEwCisJLmxvbmcJMzYxMTA3Njc4CisJLmxvbmcJMTAyMjg4NzI0NAorCS5sb25nCTIwODQ1NTgzMzYKKwkubG9uZwkxMDcyNzUzNDYyCisJLnR5cGUJVGJsX2FkZHIsQG9iamVjdAorCS5zaXplCVRibF9hZGRyLDM4NDAKKwkuc3BhY2UgNzY4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorU0lHTk1BU0s6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCVNJR05NQVNLLEBvYmplY3QKKwkuc2l6ZQlTSUdOTUFTSywxNgorCS5hbGlnbiAxNgorSEFMRk1BU0syOgorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNTg0CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlIQUxGTUFTSzIsQG9iamVjdAorCS5zaXplCUhBTEZNQVNLMiwxNgorCS5hbGlnbiAxNgorUElfQllfMjoKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkudHlwZQlQSV9CWV8yLEBvYmplY3QKKwkuc2l6ZQlQSV9CWV8yLDE2CisJLmFsaWduIDE2CitjdjI6CisJLmxvbmcJNzgwOTAzMTQ1CisJLmxvbmcJMTA2Njg1NDU4NgorCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTEwNjg3MDg2NTkKKwkubG9uZwkzMzQwNTMwMTE5CisJLmxvbmcJMTA2NzM5MjExMworCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTMyMTUyODM5OQorCS5sb25nCTEwNjY1MTc3NDAKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMTA2Nzg5OTc1NworCS5sb25nCTIwMjExNTk0NjAKKwkubG9uZwkxMDY1ODU1MDk2CisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNjYxNzg5NjkKKwkudHlwZQljdjIsQG9iamVjdAorCS5zaXplCWN2Miw2NAorCS5hbGlnbiAxNgorSEFMRk1BU0s6CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUhBTEZNQVNLLEBvYmplY3QKKwkuc2l6ZQlIQUxGTUFTSywxNgorCS5hbGlnbiA0CitPTkVNQVNLOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJT05FTUFTSyxAb2JqZWN0CisJLnNpemUJT05FTUFTSyw4CisJLmFsaWduIDQKK1RNQVNLOgorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTUwOTEyCisJLnR5cGUJVE1BU0ssQG9iamVjdAorCS5zaXplCVRNQVNLLDgKKwkuYWxpZ24gNAorY3Y6CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwk4NTg5OTM0NTkKKwkubG9uZwkxMDY4NzA4NjU5CisJLmxvbmcJMzA2NzgzMzc4MworCS5sb25nCTEwNjc4OTk3NTcKKwkudHlwZQljdixAb2JqZWN0CisJLnNpemUJY3YsMjQKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hc2luLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hc2luLjUtLi5fX190YWdfdmFsdWVfYXNpbi4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hc2luLjMtLi5fX190YWdfdmFsdWVfYXNpbi4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXNpbi40LS4uX19fdGFnX3ZhbHVlX2FzaW4uMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9hdGFuMi5TIGIvbGlibS94ODZfNjQvZV9hdGFuMi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY5YmFlYTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9lX2F0YW4yLlMKQEAgLTAsMCArMSwxMjQyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8KKy8vMS4gVGhlIG1ldGhvZCBpcyBiYXNlZCBvbiB0aGUgcmVsYXRpb25zaGlwIG9mIGF0YW4yKFksWCkgdG8gYXRhbih8WS9YfCkKKy8vICAgYXMgZm9sbG93cy4KKy8vICAgICAgICAgICAgICAgICAgIC8gIHNpZ24oWSkgYXRhbih8WS9YfCkgICAgICAgICAgICAgICAgaWYgWCA+IDAKKy8vICAgICAgIGF0YW4yKFksWCkgPQorLy8gICAgICAgICAgICAgICAgICAgXCAgc2lnbihZKSpwaSAgLSBzaWduKFkpKmF0YW4ofFkvWHwpICBpZiBYIDwgMAorLy8KKy8vICAgVGh1cywgYXRhbjIoWSxYKSBpcyBvZiB0aGUgZm9ybSAgYXRhbjIoWSxYKSA9IFBJICsgc2duKmF0YW4ofFkvWHwpCisvLyAgIHdoZXJlIFBJIGFuZCBzZ24gY2FuIGJlIGRldGVybWluZWQgYnkgdGhlIGZvdXIgcG9zc2libGUgY29tYmluYXRpb25zIG9mCisvLyAgIG9mIHRoZSBwYWlyIChzaWduKFgpLHNpZ24oWSkpLiBXZSBjb25jZW50cmF0ZSBvbiB0aGUgbnVtZXJpY2FsIG1ldGhvZAorLy8gICBmb3IgYXRhbih8WS9YfCkuCisvLworLy8yLiBGb3IgfFkvWHwgPCAyXigtNjQpLCBhdGFuKHxZL1h8KSB+PX4gfFkvWHwuIEhlbmNlLCBhdGFuMihZLFgpIGlzICBZL1gKKy8vICAgaWYgWCA+IDAsIGFuZCBzaWduKFkpKnBpIG90aGVyd2lzZS4KKy8vMy4gRm9yIHxZL1h8ID49IDJeKDY1KSwgYXRhbih8WS9YfCkgfj1+IHBpLzIuIEhlbmNlIGF0YW4yKFksWCkgaXMgc2lnbihZKXBpLzIuCisvLzQuIEZvciAyXigtNjQpIDw9IHxZL1h8IDwgMl4oLTUpLCBhdGFuKHxZL1h8KSBpcyBhcHByb3hpbWF0ZWQgYnkgYSBwb2x5bm9taWFsCisvLyAgIG9mIHRoZSBmb3JtICBaICsgWipFKnBvbHlub21pYWwoRSksIHdoZXJlIFogPSB8WS9YfCBhbmQgRSA9IFoqWi4KKy8vNS4gRm9yIHxZL1h8ID4gMl4oNSksIGF0YW4ofFkvWHwpID0gcGkvMiArIGF0YW4oLXxYL1l8KSwgYW5kIGF0YW4oLXxYL1l8KSBpcworLy8gICBjYWxjdWxhdGVkIHVzaW5nIHRoZSBwb2x5bm9taWFsIGluIDQgYWJvdmUuCisvLzYuIEZvciAyXigtNSkgPD0gfFkvWHwgPD0gMl4oNSksIHdlIGVtcGxveSBhIHRhYmxlIGxvb2t1cCBtZXRob2QuIEZpcnN0LAorLy8gICB3ZSBvYnRhaW4gQiA9IDJeayAqIDEuYjEgYjIgYjMgYjQgPSAyXmsgKiAoMStrLzE2KSB0aGF0IGFwcHJveGltYXRlCisvLyAgIHxZL1h8IHRvIGFwcHJveGltYXRlbHkgNSBzaWduaWZpY2FudCBiaXRzLiBIZW5jZSwgYXRhbih8WS9YfCkgaXMKKy8vCisvLyAgICAgIGF0YW4ofFkvWHwpICA9ICBhdGFuKEIpICsgYXRhbihaKSwgd2hlcmUgIFogPSAofFl8LUJ8WHwpLyh8WHwrQnxZfCkuCisvLyAgICAgICAgICAgICAgICAgIH49fiAgIHRhdSAgICsgWiArIFoqRSpwb2x5bm9taWFsKEUpLCB3aGVyZSBFID0gWipaLgorLy8KKy8vICAgQiBoYXMgdGhlIHJhbmdlIGZyb20gMl4oLTYpKigxKzE0LzE2KSB0byAyXjUgPSAyXig1KSooMSswLzE2KSwgdG90YWxseQorLy8gICAxNjMgcG9zc2libGUgdmFsdWVzLiBUaGVzZSB2YWx1ZXMgYXJlIGNhbGN1bGF0ZWQgYmVmb3JlaGFuZCBhbmQgc3RvcmVkCisvLyAgIGluIGEgdGFibGUuIFRoZSBwb2x5bm9taWFsIGlzIHRoZSBvbmUgdXNlZCBpbiA0LgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgYXRhbjIoKy0wLCArMCkgPSArLTAKKy8vICBhdGFuMigrLTAsIC0wKSA9ICstcGkKKy8vICBhdGFuMigrLTAsIHgpID0gKy0wLCBmb3IgeCA+IDAsIGFuZCArLXBpLCBmb3IgeCA8IDAKKy8vICBhdGFuMih5LCArLTApID0gK3BpLzIgZm9yIHkgPiAwLCBhbmQgLXBpLzIgZm9yIHkgPCAwCisvLyAgYXRhbjIoKy15LCArSU5GKSA9ICstMCwgZm9yIGZpbml0ZSB5ID4gMAorLy8gIGF0YW4yKCsteSwgLUlORikgPSArLXBpLCBmb3IgZmluaXRlIHkgPiAwCisvLyAgYXRhbjIoKy1JTkYsIHgpID0gKy1waS8yLCBmb3IgZmluaXRlIHgKKy8vICBhdGFuMigrLUlORiwgK0lORikgPSArLXBpLzQKKy8vICBhdGFuMigrLUlORiwgLUlORikgPSArLTMqcGkvNAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGF0YW4yCitFTlRSWShhdGFuMikKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisjIHBhcmFtZXRlciAyOiAleG1tMQorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfYXRhbjIuMToKKyAgICAgICAgc3VicSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfYXRhbjIuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA4KCVyc3ApCisuLkIxLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE0NDQ4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzg0MCwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTQ0NDgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzODQwLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHVucGNrbHBkICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMjA0OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIHBhZGR3ICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgcHNybHEgICAgICQyOSwgJXhtbTUKKyAgICAgICAgcmNwc3MgICAgICV4bW01LCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkMTQzMzYsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMworICAgICAgICBwYWRkdyAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDIsICVlYXgsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkMTY0NDgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMgorICAgICAgICBtaW5zZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdm1za3BkICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDEsICV4bW0wCisgICAgICAgIHBzcmxxICAgICAkMSwgJXhtbTAKKyAgICAgICAgY21wc2QgICAgICQyLCAleG1tMiwgJXhtbTUKKyAgICAgICAgcHNsbHEgICAgICQxLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDEsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDAsICVlY3gsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2Mjg2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTEyMSwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgZGl2c2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWN4CisgICAgICAgIG1vdnNkICAgICBhMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIGIyKCVyaXApLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDAsICV4bW01LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBQX1RCTCglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyZHgsOCksICV4bW02CisgICAgICAgIGxlYSAgICAgICBTR05fVEJMKCVyaXApLCAlcjgKKyAgICAgICAgbW92YXBkICAgICglcjgsJXJkeCw4KSwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNjI4NiwgJWVjeAorICAgICAgICBub3RsICAgICAgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgbGVhICAgICAgIEFUQU5fVEJMKCVyaXApLCAlcjgKKyAgICAgICAgbW92YXBkICAgICglcjgsJXJjeCw4KSwgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgdW5wY2tocGQgICV4bW01LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgIDgrYTIoJXJpcCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgIDgrYjIoJXJpcCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBhZGRsICAgICAgJDk0MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDk0MiwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTQKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBsZWEgICAgICAgU0dOX1RCTCglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyZHgsOCksICV4bW02CisgICAgICAgIHVucGNrbHBkICAleG1tMywgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbGVhICAgICAgIFBfVEJMMiglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyZHgsOCksICV4bW03CisgICAgICAgIG1vdnNkICAgICBhMiglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIGIyKCVyaXApLCAleG1tNQorICAgICAgICBsZWEgICAgICAgU0VMRUNUX0IoJXJpcCksICVyOAorICAgICAgICBhbmRwZCAgICAgKCVyOCwlcmR4LDgpLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICA4K2EyKCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICA4K2IyKCVyaXApLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgICglcnNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJWVheCwgJWVjeAorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzY3LCAlZWN4CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBhbmRwZCAgICAgU0dOTUFTSyglcmlwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIHBpX3RhYmxlKCVyaXApLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBhbmRwZCAgICAgU0dOTUFTSyglcmlwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIHBpMl90YWJsZSglcmlwKSwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIG1vdnNkICAgICBQT1c1NSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxMDI0LCAlZWR4CisgICAgICAgIG1vdnNkICAgICBJTlZFWFBNQVNLKCVyaXApLCAleG1tNAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdnNkICAgICBFWFBNQVNLKCVyaXApLCAleG1tNworICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjA0OCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgYWRkbCAgICAgICQxNTM0NCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW02CisgICAgICAgIGFuZHBkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgc3VibCAgICAgICQ4ODAsICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMy4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBhZGRsICAgICAgJDg4MCwgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMTA0ODU3NSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzE1LjAuMgorICAgICAgICBwc3JscSAgICAgJDYzLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDYzLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNi4wLjIKKyAgICAgICAgbW92YXBkICAgIHBpMl90YWJsZSglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTUuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE2LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisgICAgICAgIG1vdmFwZCAgICBwaTRfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE3LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE4LjAuMjoKKyAgICAgICAgbW92YXBkICAgIHBpNF90YWJsZSglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIHBpMl90YWJsZSglcmlwKSwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW02CisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTkuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE5LjAuMjoKKyAgICAgICAgbW92YXBkICAgIHBpX3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIwLjAuMgorICAgICAgICBtb3ZhcGQgICAgcGlfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBjb21pc2QgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yMC4wLjI6CisgICAgICAgIGNvbWlzZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xNC4wLjI6CisgICAgICAgIG1vdmFwZCAgICBwaTJfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIxLjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAxNiglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8yMi4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2F0YW4yLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2F0YW4yLjU6CitFTkQoYXRhbjIpCisjIC0tIEVuZCAgYXRhbjIKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK2EyOgorCS5sb25nCTIwMDYyNjI5ODUKKwkubG9uZwkxMDY5MzEwODYzCisJLmxvbmcJMjM1ODQ0OTQ3MQorCS5sb25nCTMyMTczNDIxMzEKKwkudHlwZQlhMixAb2JqZWN0CisJLnNpemUJYTIsMTYKKwkuYWxpZ24gMTYKK2IyOgorCS5sb25nCTM4NDU0NTQzNTIKKwkubG9uZwkxMDY5OTUyMjk3CisJLmxvbmcJMjgyOTY3OTE0OQorCS5sb25nCTEwNzM3NzE1NjUKKwkudHlwZQliMixAb2JqZWN0CisJLnNpemUJYjIsMTYKKwkuYWxpZ24gMTYKK1BfVEJMOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTMyMjE4MjM5OTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkzMTY0NzEwNDM4CisJLnR5cGUJUF9UQkwsQG9iamVjdAorCS5zaXplCVBfVEJMLDY0CisJLmFsaWduIDE2CitTR05fVEJMOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlTR05fVEJMLEBvYmplY3QKKwkuc2l6ZQlTR05fVEJMLDY0CisJLmFsaWduIDE2CitBVEFOX1RCTDoKKwkubG9uZwkzMzkwODgxMjgwCisJLmxvbmcJMTA2NzMxODczMworCS5sb25nCTE0MTExMTY3NzkKKwkubG9uZwkxMDE4OTUwMDYzCisJLmxvbmcJMjk4NTk4Nzg0MAorCS5sb25nCTEwNjczODQyMTEKKwkubG9uZwkyMDg4OTAzNjk1CisJLmxvbmcJMTAxODA4NjAyNworCS5sb25nCTMxNDg0NDUxODQKKwkubG9uZwkxMDY3NDQ5Njg1CisJLmxvbmcJMjA0NDE2MzgwNgorCS5sb25nCTEwMTcyNzEzMzUKKwkubG9uZwkzNjY3NjI5MTg0CisJLmxvbmcJMTA2NzUxNTQ5NAorCS5sb25nCTIzNTMwOTI3NzUKKwkubG9uZwkxMDE5OTY3MzA5CisJLmxvbmcJMTU0NjU2ODgzMgorCS5sb25nCTEwNjc1ODA5NTQKKwkubG9uZwk2MTE5OTEzMTUKKwkubG9uZwkxMDE3NjAyNTg0CisJLmxvbmcJMzgxNTk5NjgwMAorCS5sb25nCTEwNjc2NDY0MDQKKwkubG9uZwk0NjYwMzg1OTgKKwkubG9uZwkxMDE5Njg2NDI2CisJLmxvbmcJNDA1MDI0MTkyMAorCS5sb25nCTEwNjc3MTE4NDUKKwkubG9uZwkzMjY1MDI2MzI4CisJLmxvbmcJMTAxOTYyNjk1MgorCS5sb25nCTEyMDQ1NDkxMgorCS5sb25nCTEwNjc3NzcyNzcKKwkubG9uZwkxNTQyMjA3Njk2CisJLmxvbmcJMTAyMDE1NTYwOAorCS5sb25nCTI3ODQ2Mzk3NDQKKwkubG9uZwkxMDY3ODQyNjk3CisJLmxvbmcJMzg4MzgzNDYyMworCS5sb25nCTEwMTg2MDI4NzAKKwkubG9uZwkxMzI4MDEwNjI0CisJLmxvbmcJMTA2NzkwODEwNworCS5sb25nCTE3OTEwOTc0NTYKKwkubG9uZwkxMDE5MDUzMTI2CisJLmxvbmcJMjIxNzc5NDA0OAorCS5sb25nCTEwNjc5NzM1MDUKKwkubG9uZwk1NTE2MTk5MzgKKwkubG9uZwkxMDE4NDk0MTk0CisJLmxvbmcJMzMzMzUyMDAwMAorCS5sb25nCTEwNjgwMzg4OTEKKwkubG9uZwkyMzkwMzMxODIzCisJLmxvbmcJMTAxOTAzMzAyMgorCS5sb25nCTI1NTcwNTIwMzIKKwkubG9uZwkxMDY4MTA0MjY1CisJLmxvbmcJMjQyMzk3NjEwOAorCS5sb25nCTEwMTk3Mjg2NzQKKwkubG9uZwkyMDY3NjQ5NTM2CisJLmxvbmcJMTA2ODE2OTYyNgorCS5sb25nCTM3NTczOTc3NDUKKwkubG9uZwkxMDE4NjcyMzYyCisJLmxvbmcJNDA0NzA5NDc4NAorCS5sb25nCTEwNjgyMzQ5NzMKKwkubG9uZwk0ODE2MTMxODQKKwkubG9uZwkxMDE5Mjc1MTA0CisJLmxvbmcJMjA4OTg1MzE4NAorCS5sb25nCTEwNjgzMDAzMDcKKwkubG9uZwkxNzMzOTE0Mzc0CisJLmxvbmcJMTAyMDEyNDY3NworCS5sb25nCTI2NzgwMDM4NDAKKwkubG9uZwkxMDY4MzY1NjI2CisJLmxvbmcJMTM3MzYwMDI4MgorCS5sb25nCTEwMTM5MzU0NzQKKwkubG9uZwkzNzA2NDk2MTI4CisJLmxvbmcJMTA2ODQzMDkzMAorCS5sb25nCTEwMDA2MTA5MDIKKwkubG9uZwkxMDE5NjczMjg1CisJLmxvbmcJMzA3MzE3OTAwOAorCS5sb25nCTEwNjg0OTYyMTkKKwkubG9uZwkxNDk3MTQzMDA4CisJLmxvbmcJMTAxOTkwMDM0MgorCS5sb25nCTI4MDM3MTY3MzYKKwkubG9uZwkxMDY4NTYyODQ2CisJLmxvbmcJMTQ3NjY3NzQxNgorCS5sb25nCTEwMTk0NDQwOTQKKwkubG9uZwkzMjA0OTg0MTI4CisJLmxvbmcJMTA2ODYyODA3NworCS5sb25nCTExOTIzMzU5MDUKKwkubG9uZwkxMDE4NzQ4NjI4CisJLmxvbmcJODMxMTQ2NjI0CisJLmxvbmcJMTA2ODY5MzI3MworCS5sb25nCTI3MzM1ODYyMjQKKwkubG9uZwkxMDE4ODIzMjk1CisJLmxvbmcJMjQzMDI5Mzc2CisJLmxvbmcJMTA2ODc1ODQzMQorCS5sb25nCTk1MDEwNjA4MQorCS5sb25nCTEwMTkwNDY2NzUKKwkubG9uZwkxNzM1NTYxOTIwCisJLmxvbmcJMTA2ODgyMzU0OQorCS5sb25nCTM1NDY0NDA4NTYKKwkubG9uZwkxMDIwMTA0NzEyCisJLmxvbmcJMTMzOTIxNzc5MgorCS5sb25nCTEwNjg4ODg2MjYKKwkubG9uZwkzMDI4ODEyMzg3CisJLmxvbmcJMTAxOTgxODMyMQorCS5sb25nCTM3MDYzNDIxNDQKKwkubG9uZwkxMDY4OTUzNjU5CisJLmxvbmcJMzgxNDU2NDAyOQorCS5sb25nCTEwMTc3NjM4NzEKKwkubG9uZwk2Mzc3MjY5NzYKKwkubG9uZwkxMDY5MDE4NjQ4CisJLmxvbmcJMzU4NDAwNzY5OQorCS5sb25nCTEwMTc5NzY4NjgKKwkubG9uZwkxMTQ4Nzc5MjY0CisJLmxvbmcJMTA2OTA4MzU4OQorCS5sb25nCTIyODI1MzIxMzMKKwkubG9uZwkxMDE5NDgzOTU0CisJLmxvbmcJMTQwNjEzMTM5MgorCS5sb25nCTEwNjkxNDg0ODEKKwkubG9uZwkxNTQ3MzU5MTEzCisJLmxvbmcJMTAxOTc4NjM0MgorCS5sb25nCTE5MDg4NzU5MDQKKwkubG9uZwkxMDY5MjEzMzIyCisJLmxvbmcJMTMxNTUwODQxMAorCS5sb25nCTEwMjAwMDk0NzMKKwkubG9uZwkzMTk0OTQ3NTIwCisJLmxvbmcJMTA2OTI3ODExMAorCS5sb25nCTM4NDUzOTMyMDEKKwkubG9uZwkxMDE1ODAzNzYxCisJLmxvbmcJMTU0NzQ4Nzc0NAorCS5sb25nCTEwNjkzNDI4NDQKKwkubG9uZwkzODYzMTA3ODY1CisJLmxvbmcJMTAxOTgxMDEwNAorCS5sb25nCTE4ODEwNjE5NTIKKwkubG9uZwkxMDY5NDA3NTIxCisJLmxvbmcJNDI4ODM0MzU0OAorCS5sb25nCTEwMTk2ODc1ODEKKwkubG9uZwk1NjMwODYzMzYKKwkubG9uZwkxMDY5NDcyMTQwCisJLmxvbmcJMjU4MjIzMDI0MQorCS5sb25nCTEwMjAwOTkzNTAKKwkubG9uZwkyNTk0OTc1NTUyCisJLmxvbmcJMTA2OTUzNjY5OAorCS5sb25nCTIzMDY0NDM3NjQKKwkubG9uZwkxMDE5NjY3MjQ0CisJLmxvbmcJMzQzODU0NTAyNAorCS5sb25nCTEwNjk2MDY1NzMKKwkubG9uZwk5NTc0NTU1NDkKKwkubG9uZwkxMDE1NTg3NzM1CisJLmxvbmcJNDIxMTM1NzQ3MgorCS5sb25nCTEwNjk2NzA5MDYKKwkubG9uZwkyNjExNzc4NzU0CisJLmxvbmcJMTAxNzg3NzIxNAorCS5sb25nCTMwMDI4MzU0MjQKKwkubG9uZwkxMDY5NzM1MTAxCisJLmxvbmcJMjM1NTgwNDU4CisJLmxvbmcJMTAyMDIxMTY4NQorCS5sb25nCTM5MDUzMTU0MjQKKwkubG9uZwkxMDY5Nzk5MTUwCisJLmxvbmcJMzYzMDY0NzYxNworCS5sb25nCTEwMTg3MzY4NDkKKwkubG9uZwkyODQ5NjU2NTc2CisJLmxvbmcJMTA2OTg2MzA0NworCS5sb25nCTI0MTIxNjUwNjIKKwkubG9uZwkxMDE5NjkzMDA0CisJLmxvbmcJNTA3NDI5NDcyCisJLmxvbmcJMTA2OTkyNjc4NQorCS5sb25nCTEzOTc3NTA3MjMKKwkubG9uZwkxMDE4NDEyNzE3CisJLmxvbmcJMjMwNzQ3MDI3MgorCS5sb25nCTEwNjk5OTAzNTYKKwkubG9uZwkxNzk2NDcwOTA0CisJLmxvbmcJMTAxOTc5NjE4MQorCS5sb25nCTEyNzE4MTQ5MTIKKwkubG9uZwkxMDcwMDUzNzU1CisJLmxvbmcJMTg5NzYxNTY1CisJLmxvbmcJMTAxNjE0OTExNQorCS5sb25nCTM4MDA1MzgxNDQKKwkubG9uZwkxMDcwMTE2OTc0CisJLmxvbmcJMjUyNDg3MTU4MgorCS5sb25nCTEwMTgyNjMzNTMKKwkubG9uZwkzOTE2MjAzNTUyCisJLmxvbmcJMTA3MDE4MDAwOAorCS5sb25nCTEyNzg0ODY1OAorCS5sb25nCTEwMTc2NzI2NjQKKwkubG9uZwk0NTcxOTIwMzIKKwkubG9uZwkxMDcwMjQyODUxCisJLmxvbmcJNDAyMDQwMDkzOAorCS5sb25nCTEwMTk4MjMwMTAKKwkubG9uZwkxMzg1MzI0NzA0CisJLmxvbmcJMTA3MDMwNTQ5NQorCS5sb25nCTU2NDUxMTE3OQorCS5sb25nCTEwMTYwNzkwOTQKKwkubG9uZwkyMzIyODY5ODU2CisJLmxvbmcJMTA3MDM2NzkzNQorCS5sb25nCTIzNDcxMDMzMTkKKwkubG9uZwkxMDE4OTI3NzYwCisJLmxvbmcJMzc0MzQzODYyNAorCS5sb25nCTEwNzA0MzAxNjUKKwkubG9uZwk4Nzc5NzM4NjIKKwkubG9uZwkxMDE5NjM4MTYyCisJLmxvbmcJMjM5MjI1NTU1MgorCS5sb25nCTEwNzA0OTIxODAKKwkubG9uZwkyNDMyNzgyMjY3CisJLmxvbmcJMTAxODg3MjYyOQorCS5sb25nCTQxODA0NDMzMjgKKwkubG9uZwkxMDcwNTUzOTczCisJLmxvbmcJMzEwMjk5MDAxNQorCS5sb25nCTEwMjAwOTMxMDEKKwkubG9uZwkyNTQ3NTQwODMyCisJLmxvbmcJMTA3MDYzNjQ4NQorCS5sb25nCTM4Nzc3MzgyNTMKKwkubG9uZwkxMDE3MzAwNDI0CisJLmxvbmcJMjczNTQ2ODkxMgorCS5sb25nCTEwNzA2OTc0NjEKKwkubG9uZwkyNDQ2NDcwMjU2CisJLmxvbmcJMTAxOTIzNTM3OAorCS5sb25nCTU0MjYzMzc5MgorCS5sb25nCTEwNzA3NTc5NDMKKwkubG9uZwk1ODM2MDYzMjgKKwkubG9uZwkxMDE4NjI0MTMxCisJLmxvbmcJOTIzMjY1OTg0CisJLmxvbmcJMTA3MDgxNzkxMQorCS5sb25nCTE3OTM5MjY3MDgKKwkubG9uZwkxMDE5NzE0MTYxCisJLmxvbmcJOTE4NzI4NDQ4CisJLmxvbmcJMTA3MDg3NzM0OAorCS5sb25nCTM3MjY0NjM1ODYKKwkubG9uZwkxMDE5NDMzMjk2CisJLmxvbmcJMjU3MjI3NTAwOAorCS5sb25nCTEwNzA5MzYyMzcKKwkubG9uZwkxODQ1MzU0MjM4CisJLmxvbmcJMTAxOTQ1OTIzOAorCS5sb25nCTUwOTc0Njg4CisJLmxvbmcJMTA3MDk5NDU2NAorCS5sb25nCTk4MzgwODA2NAorCS5sb25nCTEwMTY2ODU0MTgKKwkubG9uZwkxMTA1NTE4MzIwCisJLmxvbmcJMTA3MTA1MjMxMworCS5sb25nCTIzNTc0OTY2OTIKKwkubG9uZwkxMDE1MTM5ODgyCisJLmxvbmcJMTI2NDgyNTMyOAorCS5sb25nCTEwNzExMDk0NzIKKwkubG9uZwkyMjQ0MTI5MzU0CisJLmxvbmcJMTAxOTA0NjM0NAorCS5sb25nCTk2MTE1NzkyMAorCS5sb25nCTEwNzExNjYwMjkKKwkubG9uZwkzMTI0MTg1MzM5CisJLmxvbmcJMTAxODU0MTc3NgorCS5sb25nCTExNjI3MDE1ODQKKwkubG9uZwkxMDcxMjIxOTczCisJLmxvbmcJMTI3OTc4MDk0OAorCS5sb25nCTEwMTkyNjg5MTgKKwkubG9uZwkzMjg0OTM1NjY0CisJLmxvbmcJMTA3MTI3NzI5NAorCS5sb25nCTI2NzAwMzM0NzIKKwkubG9uZwkxMDE5ODMzNzQ0CisJLmxvbmcJNDk3NDQxODg4CisJLmxvbmcJMTA3MTMzMTk4NQorCS5sb25nCTEwMzI3Mzc0MTAKKwkubG9uZwkxMDE5Nzk1MjEyCisJLmxvbmcJMzM3NzM4MzkwNAorCS5sb25nCTEwNzEzODYwMzYKKwkubG9uZwkyMzU2ODk3MTgyCisJLmxvbmcJMTAyMDIwNTU1MworCS5sb25nCTExMjY5NjIwMDAKKwkubG9uZwkxMDcxNDM5NDQzCisJLmxvbmcJMzcyMzcyNDU4NgorCS5sb25nCTEwMTUyMTI0MTgKKwkubG9uZwk5MDI5MTAwOAorCS5sb25nCTEwNzE0OTIxOTkKKwkubG9uZwk0MTc4NjcyNDMxCisJLmxvbmcJMTAyMDE4Njk3MQorCS5sb25nCTE5MDA1OTUzNgorCS5sb25nCTEwNzE1OTU3NDEKKwkubG9uZwkxNzYzNTg5ODA3CisJLmxvbmcJMTAxOTE2MjE2MworCS5sb25nCTI0OTczOTI4NDAKKwkubG9uZwkxMDcxNjcwNjU0CisJLmxvbmcJMzAzNjk5NzA0MQorCS5sb25nCTEwMjAyMDQzMjUKKwkubG9uZwkyNjE2OTcxOTQ0CisJLmxvbmcJMTA3MTcxOTc3MworCS5sb25nCTMwMDE1MTA2OQorCS5sb25nCTEwMTcwNDE5NTcKKwkubG9uZwkyODgzNTE4MTI4CisJLmxvbmcJMTA3MTc2NzU2MworCS5sb25nCTIyMDM5ODE0MTQKKwkubG9uZwkxMDE5MTkwMTA4CisJLmxvbmcJMTQ5NjM1NDM1MgorCS5sb25nCTEwNzE4MTQwMzAKKwkubG9uZwkzMzIyODc5NjYKKwkubG9uZwkxMDE2ODQ2NDM1CisJLmxvbmcJNDgzMjc2NzI4CisJLmxvbmcJMTA3MTg1OTE4NAorCS5sb25nCTY1Mzg0NTAyNAorCS5sb25nCTEwMTg4MzA5MTQKKwkubG9uZwkzMDk3NDAxMDcyCisJLmxvbmcJMTA3MTkwMzAzOQorCS5sb25nCTE1MTQ3NDY0MDgKKwkubG9uZwkxMDE5Mjc4OTcyCisJLmxvbmcJMjczNzIxNzI0OAorCS5sb25nCTEwNzE5NDU2MTUKKwkubG9uZwkxMzU4ODQ1MDY3CisJLmxvbmcJMTAxNzI2ODI3NQorCS5sb25nCTIwNzI1Nzc1NjAKKwkubG9uZwkxMDcxOTg2OTMzCisJLmxvbmcJMzA0MTAyNDczNQorCS5sb25nCTEwMTk5Mjk2NzIKKwkubG9uZwkyMjY2NDA1NjU2CisJLmxvbmcJMTA3MjAyNzAxNworCS5sb25nCTEyNzEyNjExMzAKKwkubG9uZwkxMDEyOTI1MDcwCisJLmxvbmcJOTU4NjUyNTQ0CisJLmxvbmcJMTA3MjA2NTg5NAorCS5sb25nCTIxNTgwMTcwNTgKKwkubG9uZwkxMDE5OTU1MzcyCisJLmxvbmcJMzMxMjk5Mzg0MAorCS5sb25nCTEwNzIxMDM1OTEKKwkubG9uZwk3NjU4MDkxNjkKKwkubG9uZwkxMDE5MTE0NDQzCisJLmxvbmcJMzE3NzAwMTMwNAorCS5sb25nCTEwNzIxNDAxMzkKKwkubG9uZwkxNDQxODAwODQKKwkubG9uZwkxMDE5ODIyMTg2CisJLmxvbmcJMzA3MTY0MjE4NAorCS5sb25nCTEwNzIxNzU1NjgKKwkubG9uZwk0MDA0NjAyNDI0CisJLmxvbmcJMTAxOTQyMDc0MAorCS5sb25nCTQyODM5NTM2NDgKKwkubG9uZwkxMDcyMjA5OTA5CisJLmxvbmcJMTUxMTk1MDQzMAorCS5sb25nCTEwMjAxNzY5NjYKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTUxMjk2MzgKKwkubG9uZwk0MDczMjAyOTQ0CisJLmxvbmcJMTA3MjMwNjcyNQorCS5sb25nCTQwNjgxOTQ4MDQKKwkubG9uZwkxMDE5NzE0ODYwCisJLmxvbmcJOTQ2MTE3NzYwCisJLmxvbmcJMTA3MjM2NjQxNQorCS5sb25nCTY5NDk4MDczMworCS5sb25nCTEwMjAxNTAxMzUKKwkubG9uZwkzOTgwNjMyMDMyCisJLmxvbmcJMTA3MjQyMjUxMgorCS5sb25nCTEzMTMyNTEyODAKKwkubG9uZwkxMDE5OTQ4NzA5CisJLmxvbmcJMTQ2ODI5NzExMgorCS5sb25nCTEwNzI0NzUyNjAKKwkubG9uZwkzMzAxMTExNDMKKwkubG9uZwkxMDE5ODA5MTk4CisJLmxvbmcJMzQ3ODA2MzgxNgorCS5sb25nCTEwNzI1MjQ4ODcKKwkubG9uZwkyOTMwMDY3MDQ0CisJLmxvbmcJMTAxNzc4NDA4MQorCS5sb25nCTExNTM5Nzk4NTYKKwkubG9uZwkxMDcyNTcxNjEzCisJLmxvbmcJMjIyNTc4NjEwMgorCS5sb25nCTEwMTc2MzQ0ODEKKwkubG9uZwkyMDg5ODI4ODA4CisJLmxvbmcJMTA3MjYxNTY0MQorCS5sb25nCTQ3NDYyMTM2NworCS5sb25nCTEwMTcwNDM0MTQKKwkubG9uZwkzNTMxNzMyNjMyCisJLmxvbmcJMTA3MjY1NzE2MworCS5sb25nCTIyNzYzOTYyMjAKKwkubG9uZwkxMDE4NzU3MjQwCisJLmxvbmcJNzc1MjE0NjEyCisJLmxvbmcJMTA3MjY5NDgwMworCS5sb25nCTMyMDk3NDQ4MTgKKwkubG9uZwkxMDE5OTYzMDE1CisJLmxvbmcJNjYyMzA3Mjg0CisJLmxvbmcJMTA3MjcxMzMxOQorCS5sb25nCTEzODE2OTY3NjMKKwkubG9uZwkxMDE5NzYzNzgxCisJLmxvbmcJMTE5Mjc3NjY1MgorCS5sb25nCTEwNzI3MzA4MzAKKwkubG9uZwkzMDE3OTMyOTk0CisJLmxvbmcJMTAxNTE3OTc2OQorCS5sb25nCTc0NDIwMjM5NgorCS5sb25nCTEwNzI3NDc0MDcKKwkubG9uZwkyMDczODU0MDM0CisJLmxvbmcJMTAxOTUxMjI5MgorCS5sb25nCTgzMzc5MDgKKwkubG9uZwkxMDcyNzYzMTE1CisJLmxvbmcJMTYwMDQ0NDgKKwkubG9uZwkxMDE5NTk5NTE0CisJLmxvbmcJMzU4OTg2ODc2OAorCS5sb25nCTEwNzI3NzgwMTMKKwkubG9uZwkxMzc0MzY5ODA0CisJLmxvbmcJMTAxODAxOTIzNworCS5sb25nCTEyMTY0NzMyMAorCS5sb25nCTEwNzI3OTIxNTkKKwkubG9uZwkxMjg0ODE2MzQKKwkubG9uZwkxMDE4MTE1NDM4CisJLmxvbmcJMjQ2NDkyMzIwNAorCS5sb25nCTEwNzI4MDU2MDEKKwkubG9uZwkxNzg3MzMxMjE0CisJLmxvbmcJMTAxNjc5ODAyMgorCS5sb25nCTQwOTMzMDQzNzIKKwkubG9uZwkxMDcyODMwNTYyCisJLmxvbmcJMzMwNjg2ODk2OQorCS5sb25nCTEwMTkzODQwNzgKKwkubG9uZwkxNDM2ODkxNjg0CisJLmxvbmcJMTA3Mjg1MzIzMQorCS5sb25nCTY3NjM0NzI2NgorCS5sb25nCTEwMTczMDIxODMKKwkubG9uZwkxMTA0NTcxODQwCisJLmxvbmcJMTA3Mjg3Mzg5MAorCS5sb25nCTI4NzA0MDAyODUKKwkubG9uZwkxMDE5OTM4MTQ5CisJLmxvbmcJMjAzNzAwOTgzMgorCS5sb25nCTEwNzI4OTI3ODEKKwkubG9uZwkyOTU2NzAyMTA1CisJLmxvbmcJMTAxNjQ3MjkwOAorCS5sb25nCTMxMzkwMzc5NjAKKwkubG9uZwkxMDcyOTEwMTExCisJLmxvbmcJOTE2MDU3MTQ3CisJLmxvbmcJMTAxODM2NDMzNQorCS5sb25nCTE4MjY2OTgwNjQKKwkubG9uZwkxMDcyOTI2MDU4CisJLmxvbmcJMjE3MTk2MTA5OAorCS5sb25nCTEwMTk2Njk4MTYKKwkubG9uZwkxMzUzOTQxMDYwCisJLmxvbmcJMTA3Mjk0MDc3NAorCS5sb25nCTE3MjI5Mjg3ODIKKwkubG9uZwkxMDE5OTI2MjE1CisJLmxvbmcJMTgwMzE5MTY0NAorCS5sb25nCTEwNzI5NTQzOTEKKwkubG9uZwkxNTQ3ODc4NjM5CisJLmxvbmcJMTAyMDI1OTI2MgorCS5sb25nCTEwOTI1OTEyOTYKKwkubG9uZwkxMDcyOTY3MDI0CisJLmxvbmcJMzA3MDEwNzkyMworCS5sb25nCTEwMTgzMjA0MDEKKwkubG9uZwkyMjA1MzcyODMyCisJLmxvbmcJMTA3Mjk3ODc3MgorCS5sb25nCTc4NzMyODE5NgorCS5sb25nCTEwMTQ2MjEzNTEKKwkubG9uZwkxMjkxNTc3MTAwCisJLmxvbmcJMTA3Mjk4OTcyMworCS5sb25nCTI5NjQ3NTczMDEKKwkubG9uZwkxMDIwMjQyNTI4CisJLmxvbmcJNDIzNDUxMjgwNAorCS5sb25nCTEwNzI5OTk5NTIKKwkubG9uZwkzMTM2MDMwMDM4CisJLmxvbmcJMTAxNzUyMjE0NAorCS5sb25nCTMyNDgwNjkxMzIKKwkubG9uZwkxMDczMDA5NTI4CisJLmxvbmcJMTUwNjE5MjM1NQorCS5sb25nCTEwMTgwNTA0NzIKKwkubG9uZwkzOTMyNjI4NTAwCisJLmxvbmcJMTA3MzAxODUwOQorCS5sb25nCTEwNDU4MjM1NTQKKwkubG9uZwkxMDE5OTQ2NjU1CisJLmxvbmcJNDE5NTY5Nzg0OAorCS5sb25nCTEwNzMwMjY5NDgKKwkubG9uZwkyMzM0NDMzMjIKKwkubG9uZwkxMDE4OTE3NDQ3CisJLmxvbmcJMjUwMTgxMTQ1MgorCS5sb25nCTEwNzMwMzQ4OTIKKwkubG9uZwk5MDE0Mjc5NzYKKwkubG9uZwkxMDE3MzMzODUyCisJLmxvbmcJODY2Mzc5NDI4CisJLmxvbmcJMTA3MzA0OTQ1NQorCS5sb25nCTI0Mzc0NDM3NDIKKwkubG9uZwkxMDE5Njc4NzkyCisJLmxvbmcJMTM3Njg2NTg4OAorCS5sb25nCTEwNzMwNjI0ODAKKwkubG9uZwkzMzY1NzkwMjMyCisJLmxvbmcJMTAxNDU0NzE1MgorCS5sb25nCTMyOTAwOTQyNjgKKwkubG9uZwkxMDczMDc0MTk1CisJLmxvbmcJMzg5ODk0NzQxNQorCS5sb25nCTEwMTg2ODM1NjYKKwkubG9uZwkzNTQ3NjQ4ODQKKwkubG9uZwkxMDczMDg0Nzg3CisJLmxvbmcJMzg1NDMyMjQwNAorCS5sb25nCTEwMTk2NjIwNTgKKwkubG9uZwkzMzMyOTc1NDk2CisJLmxvbmcJMTA3MzA5NDQwNgorCS5sb25nCTMxNzE3MDE2NTUKKwkubG9uZwkxMDE3ODMwOTIyCisJLmxvbmcJMTE0MTQ2MDA4OAorCS5sb25nCTEwNzMxMDMxODEKKwkubG9uZwkzOTQ2MDgyNzAxCisJLmxvbmcJMTAyMDAzMjAxOQorCS5sb25nCTc0NTc2MTI4NAorCS5sb25nCTEwNzMxMTEyMTYKKwkubG9uZwkxMzQ3MjEwNTkxCisJLmxvbmcJMTAxOTEwNjEyMQorCS5sb25nCTE2NzMzMDQ1MDgKKwkubG9uZwkxMDczMTE4NjAwCisJLmxvbmcJMTc2MDYwNjY0MgorCS5sb25nCTEwMTczMjQ1NzcKKwkubG9uZwk5ODMzODgyNDAKKwkubG9uZwkxMDczMTI1NDA5CisJLmxvbmcJMzc0MDY1MTIwNAorCS5sb25nCTEwMTk1MTQxMDQKKwkubG9uZwkzODk1NTA5MTAwCisJLmxvbmcJMTA3MzEzMTcwNgorCS5sb25nCTI0MDk2Mjk5ODMKKwkubG9uZwkxMDIwMDY5MzIyCisJLmxvbmcJMjEyODUyMzY2OAorCS5sb25nCTEwNzMxMzc1NDgKKwkubG9uZwkzMDQ1NjA1MzY4CisJLmxvbmcJMTAxODU3OTE3NAorCS5sb25nCTIwNzU0ODU2OTIKKwkubG9uZwkxMDczMTQyOTgxCisJLmxvbmcJMzcyMDU3MTc4OQorCS5sb25nCTEwMTc1NTc0MzYKKwkubG9uZwkxMjE4NTU5NzYKKwkubG9uZwkxMDczMTQ4MDQ3CisJLmxvbmcJMjM5MTc0NDc2NworCS5sb25nCTEwMjAxNjA2NDUKKwkubG9uZwk0MTgxNzMzNzgwCisJLmxvbmcJMTA3MzE1Mjc4MAorCS5sb25nCTk5NTAyODgxNgorCS5sb25nCTEwMTk2ODEyOTUKKwkubG9uZwkyODg3ODEzMjgwCisJLmxvbmcJMTA3MzE1NzIxNAorCS5sb25nCTIxODczMzI0NworCS5sb25nCTEwMjAwMDM1MDkKKwkubG9uZwkyODYyMTgwODk2CisJLmxvbmcJMTA3MzE2MTM3NQorCS5sb25nCTIwNDM4MDY0OTAKKwkubG9uZwkxMDE4NjAyMjg4CisJLmxvbmcJMzkwOTM3NTE4NAorCS5sb25nCTEwNzMxNjg5NzMKKwkubG9uZwkxNTU5OTAzNDEyCisJLmxvbmcJMTAyMDEwMzQ0NAorCS5sb25nCTM1MzM5NjYyOTIKKwkubG9uZwkxMDczMTc1NzM4CisJLmxvbmcJNzM0ODg0MTQ5CisJLmxvbmcJMTAxODQ2Mjk2MgorCS5sb25nCTM4MTUwNDQ2MDgKKwkubG9uZwkxMDczMTgxNzk5CisJLmxvbmcJMzYzMDUyMzQyOAorCS5sb25nCTEwMTcyNTAwOTMKKwkubG9uZwk3Mzk2MzkzNzYKKwkubG9uZwkxMDczMTg3MjYxCisJLmxvbmcJNDE2NzQ3NjY2MQorCS5sb25nCTEwMjAwMDgyNzcKKwkubG9uZwkxMDY4MzA5NjQ4CisJLmxvbmcJMTA3MzE5MjIwNworCS5sb25nCTIxMTAwNjE0MzcKKwkubG9uZwkxMDE5Mjk1ODU4CisJLmxvbmcJMjM1MDU2NjM1MgorCS5sb25nCTEwNzMxOTY3MDcKKwkubG9uZwk1ODI1OTY1MTYKKwkubG9uZwkxMDE4NTY4ODIxCisJLmxvbmcJMjUyOTUyMDAyNAorCS5sb25nCTEwNzMyMDA4MTkKKwkubG9uZwk3NDU1NTI3ODcKKwkubG9uZwkxMDE5MDUzMTY1CisJLmxvbmcJMTg0MTY2NzUwOAorCS5sb25nCTEwNzMyMDQ1OTEKKwkubG9uZwkzOTgyNTY4NzAwCisJLmxvbmcJMTAxNjUwMzMyNworCS5sb25nCTIyNDIyNjEwODAKKwkubG9uZwkxMDczMjA4MDYzCisJLmxvbmcJMzQzMzU4MjI1OAorCS5sb25nCTEwMTYxOTY3NjMKKwkubG9uZwk3MTUxMzQzMjgKKwkubG9uZwkxMDczMjExMjcwCisJLmxvbmcJMzU1OTAxMzU4CisJLmxvbmcJMTAyMDA4NzkxNgorCS5sb25nCTI3MDA3MzU4NzYKKwkubG9uZwkxMDczMjE0MjQwCisJLmxvbmcJMzY0MDk1NzczNgorCS5sb25nCTEwMTk3ODAyMDUKKwkubG9uZwkxNDE2MDc1ODAKKwkubG9uZwkxMDczMjE3MDAwCisJLmxvbmcJMjQ4ODI0NTA1MQorCS5sb25nCTEwMjAyNjIzOTUKKwkubG9uZwkyODc5MzQ0MDQKKwkubG9uZwkxMDczMjE5NTcwCisJLmxvbmcJMjM5MjY5MTA4NQorCS5sb25nCTEwMTk4ODMyOTIKKwkubG9uZwkyMzYzMzczOTg4CisJLmxvbmcJMTA3MzIyMTk2OQorCS5sb25nCTQxOTQ1NjE3MzcKKwkubG9uZwkxMDE5MjM3NDQ3CisJLmxvbmcJMzgyOTM0MDQyNAorCS5sb25nCTEwNzMyMjQyMTQKKwkubG9uZwk0Mjk0NTU1MjYKKwkubG9uZwkxMDE5NDkwOTc1CisJLmxvbmcJMTk4ODgwNTkyOAorCS5sb25nCTEwNzMyMjYzMjAKKwkubG9uZwkzMDI5ODQ4NzA2CisJLmxvbmcJMTAxODEwNDg4OQorCS5sb25nCTE2NDc1NzIzMjAKKwkubG9uZwkxMDczMjMwMTYxCisJLmxvbmcJMTAyODk5MzgKKwkubG9uZwkxMDE3Mzk0ODgwCisJLmxvbmcJMzk4ODAwMDYyNAorCS5sb25nCTEwNzMyMzM1NzYKKwkubG9uZwkxOTU3NTU5MTY5CisJLmxvbmcJMTAxOTQzNDgxNgorCS5sb25nCTQyNjM4NDM5NDQKKwkubG9uZwkxMDczMjM2NjMzCisJLmxvbmcJMjA0NzEwMjY0CisJLmxvbmcJMTAxOTkwODc2MQorCS5sb25nCTY2MzE5NzcyNAorCS5sb25nCTEwNzMyMzkzODYKKwkubG9uZwkxOTIxNzU3NTc4CisJLmxvbmcJMTAxOTc3ODk0OAorCS5sb25nCTM1NjA4MDA3MDAKKwkubG9uZwkxMDczMjQxODc2CisJLmxvbmcJMzk5NDM0ODg5NgorCS5sb25nCTEwMTkyMzAxOTIKKwkubG9uZwkyNDQxNzg1NjU2CisJLmxvbmcJMTA3MzI0NDE0MQorCS5sb25nCTg3MTQ2ODYxMQorCS5sb25nCTEwMTQ4MDA1MDUKKwkubG9uZwkzMjc3NDAwMjcyCisJLmxvbmcJMTA3MzI0NjIwOQorCS5sb25nCTQwOTIyMTgxMzkKKwkubG9uZwkxMDIwMDQwODQyCisJLmxvbmcJMzk1MTk5MDEyMAorCS5sb25nCTEwNzMyNDgxMDUKKwkubG9uZwk0Mjc2NTQ2NDc4CisJLmxvbmcJMTAxOTc2MzY3NworCS5sb25nCTI3MzczMzg1NDAKKwkubG9uZwkxMDczMjQ5ODUwCisJLmxvbmcJMjUyNzc2MDEyCisJLmxvbmcJMTAxODc5NDk1MQorCS5sb25nCTE1MTEzNjEzMTYKKwkubG9uZwkxMDczMjUxNDYxCisJLmxvbmcJMzExOTY1Mzk5OQorCS5sb25nCTEwMTg1MTQ4MDMKKwkubG9uZwkzOTY5MTYyNTE2CisJLmxvbmcJMTA3MzI1Mjk1MgorCS5sb25nCTEwMzcwNjkwMTYKKwkubG9uZwkxMDE2NzkyOTAwCisJLmxvbmcJNDEzOTg1MjQwCisJLmxvbmcJMTA3MzI1NDMzOAorCS5sb25nCTQxMTAxNzE0MzIKKwkubG9uZwkxMDIwMDAxMzQ1CisJLmxvbmcJMzY4MTI4MzU3NgorCS5sb25nCTEwNzMyNTU2MjcKKwkubG9uZwkxNDYzMDkyODE4CisJLmxvbmcJMTAyMDI2MDM1NAorCS5sb25nCTMxNDY0NTU0ODgKKwkubG9uZwkxMDczMjU2ODMxCisJLmxvbmcJMTAzMTIwOTEyMworCS5sb25nCTEwMTY1NTQ3OTkKKwkubG9uZwk5NTIxNDUxMgorCS5sb25nCTEwNzMyNTc5NTgKKwkubG9uZwkxMzczODA4NjMyCisJLmxvbmcJMTAxOTQ5MzAzMQorCS5sb25nCTQyNTAyNDA4MjgKKwkubG9uZwkxMDczMjU5MDEzCisJLmxvbmcJMzg5MTA0Nzg4MgorCS5sb25nCTEwMjAxMDg3MzAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkudHlwZQlBVEFOX1RCTCxAb2JqZWN0CisJLnNpemUJQVRBTl9UQkwsMjYyNAorCS5hbGlnbiAxNgorUF9UQkwyOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNzIyNjc5MAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDc0MzQwMzQ3CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMzE2NDcxMDQzOAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkzMjIxODIzOTk1CisJLnR5cGUJUF9UQkwyLEBvYmplY3QKKwkuc2l6ZQlQX1RCTDIsNjQKKwkuYWxpZ24gMTYKK1NFTEVDVF9COgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlTRUxFQ1RfQixAb2JqZWN0CisJLnNpemUJU0VMRUNUX0IsNjQKKwkuYWxpZ24gMTYKK1NHTk1BU0s6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCVNHTk1BU0ssQG9iamVjdAorCS5zaXplCVNHTk1BU0ssMTYKKwkuYWxpZ24gMTYKK3BpX3RhYmxlOgorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDc0MzQwMzQ3CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNzIyNjc5MAorCS50eXBlCXBpX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlwaV90YWJsZSwxNgorCS5hbGlnbiAxNgorcGkyX3RhYmxlOgorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS50eXBlCXBpMl90YWJsZSxAb2JqZWN0CisJLnNpemUJcGkyX3RhYmxlLDE2CisJLmFsaWduIDE2CitwaTRfdGFibGU6CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE1MTI5NjM4CisJLnR5cGUJcGk0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlwaTRfdGFibGUsMTYKKwkuYWxpZ24gNAorUE9XNTU6CisJLmxvbmcJMAorCS5sb25nCTExMzAzNjQ5MjgKKwkudHlwZQlQT1c1NSxAb2JqZWN0CisJLnNpemUJUE9XNTUsOAorCS5hbGlnbiA0CitJTlZFWFBNQVNLOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ4NTMyMjIzCisJLnR5cGUJSU5WRVhQTUFTSyxAb2JqZWN0CisJLnNpemUJSU5WRVhQTUFTSyw4CisJLmFsaWduIDQKK0VYUE1BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlFWFBNQVNLLEBvYmplY3QKKwkuc2l6ZQlFWFBNQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuMi4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXRhbjIuNS0uLl9fX3RhZ192YWx1ZV9hdGFuMi4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuMi4zLS4uX19fdGFnX3ZhbHVlX2F0YW4yLjEKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuMi40LS4uX19fdGFnX3ZhbHVlX2F0YW4yLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfY29zaC5TIGIvbGlibS94ODZfNjQvZV9jb3NoLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGNkYmNhNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfY29zaC5TCkBAIC0wLDAgKzEsMTM3MiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICBjb3NoKHgpPShleHAoeCkrZXhwKC14KSkvMgorLy8KKy8vICBMZXQgfHh8PXhIK3hMICh1cHBlciAyNiBiaXRzLCBsb3dlciAyNyBiaXRzKQorLy8gIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vICBMZXQgeEgqTDJFSD1rK2YrcmAsIHdoZXJlIChrK2YpKjJeNz1pbnQoeEgqTDJFSCoyXjcpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI3LCBrIGludGVnZXIKKy8vICAyXmYgaXMgYXBwcm94aW1hdGVkIGFzIFRwW2ZdK0RwW2ZdLCBhbmQgMl57LWZ9IGFzIFRuW2ZdK0RuW2ZdCisvLyAgVHAgc3RvcmVzIGhpZ2hlciA1MyBiaXRzLCBEcCBzdG9yZXMgKDJeZi1UcFtmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIGVefHh8PTJee2srZn0qMl5yLCByPXJgK3hMKkwyRUgrfHh8KkwyRUwsIHxyfDwyXnstOH0rMl57LTE0fSwKKy8vICAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsxLzgsMyoyXjgpCisvLyAgZV57LXx4fH09Ml57LWstZn0qMl57LXJ9CisvLworLy8gIGVefHh8IGlzIGFwcHJveGltYXRlZCBhcyAyXmsqVHArMl5rKlRwKmMxKnIoMStjMipyKy4uK2M1KnJeNCkrMl5rKkRwPQorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICA9Ml5rKlRwKzJeaypUcCpQMTUrMl5rKkRwCisvLyAgZV57LXx4fH0gYXBwcm94aW1hdGVkIGFzIDJeey1rfSpUbi0yXnsta30qVG4qYzEqcigxLWMyKnIrLi4rYzUqcl40KQorLy8KKy8vICBGb3IgfHh8IGluIFsxLzgsIDMqMl43KSwgY29zaCh4KSBpcyBmb3JtZWQgYXMKKy8vICAgUk4oMl5rKlRwKzJeey1rfSpUbikrMl5rKlRwKlAxNSsyXnsta30qVG4qUGAxNSsyXnsta30qVG5MKzJeey1rfSpEbisyXmsqRHAKKy8vCisvLyAgRm9yIHx4fCBpbiBbMyoyXjcsIDMqMl44KSwgKGVefHh8KS8yIGlzIHJldHVybmVkLCBhbmQKKy8vICB0aGUgcmVzdWx0IGlzIGNoZWNrZWQgZm9yIG92ZXJmbG93LgorLy8KKy8vICBGb3IgfHh8PDEvOCwgYSBUYXlsb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgdXNlZCAoZGVncmVlIDEwKQorLy8gIChlcnJvciBib3VuZCBmb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgYmVsb3cgMC41MDEgdWxwKQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY29zaChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjb3NoKElORikgPSB0aGF0IElORgorLy8gIGNvc2goMCk9MQorLy8gIGZvciBmaW5pdGUgYXJndW1lbnQsIG9ubHkgY29zaCgwKT0xIGlzIGV4YWN0CisvLyAgRm9yIElFRUUgZG91YmxlCisvLyAgY29zaCh4KSBvdmVyZmxvd3MKKy8vICBmb3IgeCA+IDcxMC40NzU4NjAwNzM5NDM4NjM0MjYzOTMzNjM2MjQ4MTExNzI0ODUzNTE1NjI1MCA9IE1BWExPRytsb2coMikKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKKyMgLS0gQmVnaW4gIGNvc2gKK0VOVFJZKGNvc2gpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfY29zaC4xOgorICAgICAgICBwdXNocSAgICAgJXJzaQorLi5fX190YWdfdmFsdWVfY29zaC4zOgorLi5CMS4yOgorICAgICAgICBtb3ZzZCAgICAgSEFMRk1BU0soJXJpcCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIEwyRSglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgrTDJFKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIFNoaWZ0ZXIoJXJpcCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYzMjAsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQyMDAsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGN2dHNkMnNpICAleG1tMywgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIGN2KCVyaXApLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxNitjdiglcmlwKSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDMyNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDMyK2N2KCVyaXApLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTI3LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDE4NCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTUsICV4bW01CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0wCisgICAgICAgIHBzdWJ3ICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbGVhICAgICAgIFQyZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0wCisgICAgICAgIGxlYSAgICAgICBUMl9uZWdfZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNDgrY3YoJXJpcCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgNjQrY3YoJXJpcCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2h1ZnBkICAgICQwLCAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjMyMCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2MzIwLCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBjbXBsICAgICAgJDE1OTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG1vdnEgICAgICBPTkVNQVNLKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIFQyZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgNDgrY3YoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICA2NCtjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdmFwZCAgICBwdiglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMTYrcHYoJXJpcCksICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorLi5CMS41OgorICAgICAgICBwb3BxICAgICAgJXJjeAorLi5fX190YWdfdmFsdWVfY29zaC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9jb3NoLjU6CitFTkQoY29zaCkKKyMgLS0gRW5kICBjb3NoCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitMMkU6CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwODA0OTc0NzkKKwkubG9uZwk0MTY2OTAxNTcyCisJLmxvbmcJMTA1MzA3NzAwMworCS50eXBlCUwyRSxAb2JqZWN0CisJLnNpemUJTDJFLDE2CisJLmFsaWduIDE2CitTaGlmdGVyOgorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTMyNzUyMjcxMzYKKwkudHlwZQlTaGlmdGVyLEBvYmplY3QKKwkuc2l6ZQlTaGlmdGVyLDE2CisJLmFsaWduIDE2CitjdjoKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMTA0NDE0Njk1MgorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkzMTkxNjMwNjAwCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjM2NjExMjIKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMTE0NDc3MAorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJMjE0MDE3NTc1NQorCS5sb25nCTEwMzM4NjQyNjEKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyODk0OTU5ODgKKwkubG9uZwkxMDU0MTEzNzQ3CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjQ3MDk2OTgKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMjE5MzM0NgorCS50eXBlCWN2LEBvYmplY3QKKwkuc2l6ZQljdiw4MAorCS5hbGlnbiAxNgorVDJmOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyODUxODEyMTQ5CisJLmxvbmcJMTA3MjY5ODk0MQorCS5sb25nCTI1OTU4MDI1NTEKKwkubG9uZwkxMDE2ODE1OTEzCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzI3MDQ2NjYKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MTU1OTE3MQorCS5sb25nCTM4OTk1NTU3MTcKKwkubG9uZwkxMDcyNzEwNDIxCisJLmxvbmcJNDI3MjgwNzUwCisJLmxvbmcJMzE2MzU5NTU0OAorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcyNzE2MjA4CisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTU5MDMyMDIKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcyNzIyMDI3CisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjMzMjg5OTEKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcyNzI3ODc3CisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTMwMjQ0NDYKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MjczMzc1OAorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTYxNTQyMzIKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MjczOTY3MgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE2NjM2OTc0CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3Mjc0NTYxOAorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTYwNzgwNDQKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcyNzUxNTk2CisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAxMDg0MjEzNQorCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcyNzU3NjA2CisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjExNjg4NzcKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3Mjc2MzY0OQorCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjM5OTc0NTYKKwkubG9uZwkzMjI4MzE2MTA4CisJLmxvbmcJMTA3Mjc2OTcyNQorCS5sb25nCTMwMTAyNDE5OTEKKwkubG9uZwkzMTU5NDcxMzgwCisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzI3NzU4MzQKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2Mzc2MjYyMworCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcyNzgxOTc2CisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTUxNjkxMzAKKwkubG9uZwkxMDE0ODQ1ODE5CisJLmxvbmcJMTA3Mjc4ODE1MgorCS5sb25nCTMxMTc5MTA2NDYKKwkubG9uZwkzMTYyNjA3NjgxCisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3Mjc5NDM2MQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYzNjIzNDU5CisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzI4MDA2MDMKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNTk2MjQ0NAorCS5sb25nCTIyMTQ4Nzg0MjAKKwkubG9uZwkxMDcyODA2ODgwCisJLmxvbmcJODkyMjcwMDg3CisJLmxvbmcJMzE2NDE2NDk5OAorCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzI4MTMxOTEKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTY5ODgwMTQKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcyODE5NTM2CisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYzNjc2NTY4CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzI4MjU5MTUKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNTkyNDU5NworCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcyODMyMzI5CisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTUxOTYwMzAKKwkubG9uZwkxODUzMTg2NjE2CisJLmxvbmcJMTA3MjgzODc3OAorCS5sb25nCTMwNjY0OTYzNzEKKwkubG9uZwkxMDE2NzA1MTUwCisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzI4NDUyNjIKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNTcyNjQyMQorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcyODUxNzgxCisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTUyMDEwNzUKKwkubG9uZwkzNzkwOTU1MzkzCisJLmxvbmcJMTA3Mjg1ODMzNQorCS5sb25nCTIzNTI5NDI0NjIKKwkubG9uZwkzMTY0MjI4NjY2CisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzI4NjQ5MjUKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNTQxOTYyNAorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcyODcxNTUxCisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTgzNzkyMjgKKwkubG9uZwkyNzk5OTYwODQzCisJLmxvbmcJMTA3Mjg3ODIxMworCS5sb25nCTE0MjM2NTUzODEKKwkubG9uZwkxMDE2MDcwNzI3CisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzI4ODQ5MTEKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxNDA5MDI1NQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzI4OTE2NDYKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNTQ3NzM1NAorCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcyODk4NDE2CisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTU3MTcwOTUKKwkubG9uZwkyOTkyOTAzOTM1CisJLmxvbmcJMTA3MjkwNTIyNAorCS5sb25nCTIyMTgxNTQ0MDYKKwkubG9uZwkxMDE2Mjc2NzY5CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzI5MTIwNjkKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MzI0OTkwMgorCS5sb25nCTkyNjU5MTQzNQorCS5sb25nCTEwNzI5MTg5NTEKKwkubG9uZwkzMjA4ODMzNzYyCisJLmxvbmcJMzE2Mzk2MjA5MAorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcyOTI1ODcwCisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjQ1MDk1ODEKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcyOTMyODI3CisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjE4NDI3NDIKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MjkzOTgyMQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjQ1MzY4MjQKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3Mjk0Njg1NAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTU3MzI3NDUKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzI5NTM5MjUKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2NDA2NTgyNworCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzI5NjEwMzQKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTYwMzM5MzA1CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzI5NjgxODEKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MjYyMTkxNworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcyOTc1MzY4CisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDExMzkxMzU0CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzI5ODI1OTMKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNjg5NDUzOQorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcyOTg5ODU4CisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTQyMTkxNzEKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3Mjk5NzE2MgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE2NzEyMDM0CisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzMwMDQ1MDYKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxNDg0MjI2MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDczMDExODkwCisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTY2NTUwNjcKKwkubG9uZwkxOTkwMDEyMDcxCisJLmxvbmcJMTA3MzAxOTMxNAorCS5sb25nCTM1MjkwNzA1NjMKKwkubG9uZwkzMTYzODYxNzY5CisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzMwMjY3NzgKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MzUxODU5NworCS5sb25nCTE0NTMxNTAwODIKKwkubG9uZwkxMDczMDM0MjgzCisJLmxvbmcJNDk4MTU0NjY5CisJLmxvbmcJMzE2MjUzNjYzOAorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDczMDQxODI4CisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjMzODM5NjQKKwkubG9uZwk5MTc4NDE4ODIKKwkubG9uZwkxMDczMDQ5NDE1CisJLmxvbmcJMTg3MTU1NjUKKwkubG9uZwkxMDE2NzA3ODg0CisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzMwNTcwNDIKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNTE5MTAwOQorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDczMDY0NzExCisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE2NDc2MjM2CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzMwNzI0MjIKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAxMDU4NDM0NworCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzMwODAxNzUKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE2ODMzNzg1CisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzMwODc5NjkKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2MzgwODMyMgorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDczMDk1ODA2CisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjM3ODQxMjkKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDczMTAzNjg2CisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjMzMTAxNDAKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MzExMTYwOAorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTY0MzIxMjg5CisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzMxMTk1NzMKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMjkzODkyNgorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDczMTI3NTgyCisJLmxvbmcJMzMwNDU4MTk4CisJLmxvbmcJMzE2NDMzMTMxNgorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDczMTM1NjM0CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjE2MjI4NzAKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MzE0MzczMAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYxMTc3NjU4CisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzMxNTE4NjkKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYzMDQ0ODc5CisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzMxNjAwNTMKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MjU5ODk4MworCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDczMTY4MjgyCisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjM1OTcwMTcKKwkubG9uZwkxNDQ3MTkyNTIxCisJLmxvbmcJMTA3MzE3NjU1NQorCS5sb25nCTE0NjI4NTcxNzEKKwkubG9uZwkzMTYzNTYzMDk3CisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzMxODQ4NzMKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE2NjIwNzI4CisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzMxOTMyMzYKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2Mjc3Mjg1NQorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MzIwMTY0NQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE3MDU3ODY4CisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MzIxMDA5OQorCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEzOTk2ODAyCisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzMyMTg1OTkKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MzcxNjc0MgorCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDczMjI3MTQ1CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjQ0MjUyNDUKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MzIzNTczOAorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYzMDg0NDIwCisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzMyNDQzNzcKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2NDU4Nzc2OAorCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDczMjUzMDYzCisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTY2OTgwNTAKKwkubG9uZwkxMTEwMDg5OTQ3CisJLmxvbmcJMTA3MzI2MTc5NworCS5sb25nCTE0NTE2NDE2MzkKKwkubG9uZwkxMDE2NTIzMjQ5CisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MzI3MDU3OAorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjE1MTEyNjIKKwkubG9uZwkyNTY4MzIwODIyCisJLmxvbmcJMTA3MzI3OTQwNgorCS5sb25nCTI3MzI4MjQ0MjgKKwkubG9uZwkxMDE1NDAxNDkxCisJLmxvbmcJMTk0MTE3NTc0CisJLmxvbmcJMTA3MzI4ODI4MworCS5sb25nCTc3NzUyODYxMgorCS5sb25nCTMxNjQ0NjA2NjUKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MzI5NzIwNworCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTYwODkxMzM1CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzMzMDYxODAKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MTg2OTE4MAorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDczMzE1MjAyCisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjQ0MTE5OTUKKwkubG9uZwkxODkyMjg4NDQyCisJLmxvbmcJMTA3MzMyNDI3MworCS5sb25nCTI0NDYyNTU2NjYKKwkubG9uZwkzMTYzNjQ4OTU3CisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzMzMzMzOTMKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxNDc5MTIzOAorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzMzNDI1NjMKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxNDUwNjY5OAorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDczMzUxNzgyCisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjM3NzMyNTcKKwkubG9uZwkzOTY0Mjg0MjExCisJLmxvbmcJMTA3MzM2MTA1MQorCS5sb25nCTIxMTE1ODM5MTUKKwkubG9uZwkxMDE2NDc1NzQwCisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzMzNzAzNzEKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2NDQxNzkwMgorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzMzNzk3NDIKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNjg0MzEzNAorCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwkxMDczMzg5MTYzCisJLmxvbmcJMjUxMTMzMjMzCisJLmxvbmcJMTAxNjEzNDM0NQorCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDczMzk4NjM1CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjM1MjU2ODQKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MzQwODE1OQorCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTY1NzAzMTcKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDczNDE3NzM1CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjQzMzE3NjUKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MzQyNzM2MgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNjA1NzE5OTgKKwkubG9uZwkyMzgwNjE4MDQyCisJLmxvbmcJMTA3MzQzNzA0MgorCS5sb25nCTMxNDk1NTcyMTkKKwkubG9uZwkzMTY0MzY5Mzc1CisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzM0NDY3NzQKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MTgwNjkyNworCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzM0NTY1NjAKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTY0NTM2MDE5CisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzM0NjYzOTgKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNTE2ODQ2NAorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDczNDc2MjkwCisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjQ1MzYyNjYKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MzQ4NjIzNQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE1MDkxMzAxCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzM0OTYyMzUKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNjgwODc1OQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzM1MDYyODkKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNjIzNjEwOQorCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDczNTE2Mzk3CisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTQwODI3NDgKKwkubG9uZwkzNzA2Njg3NTkzCisJLmxvbmcJMTA3MzUyNjU2MAorCS5sb25nCTM1MjE3MjY5NDAKKwkubG9uZwkxMDE0MzAxNjQzCisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzM1MzY3NzkKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MzQxMjUzOQorCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDczNTQ3MDUzCisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjQzODg0MDcKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDczNTU3MzgzCisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjQ0MjQzMTUKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MzU2Nzc2OAorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE1MjEzMzE0CisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MzU3ODIxMQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYzNjI3MjAxCisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwkxMDczNTg4NzEwCisJLmxvbmcJMTc2ODc5NzQ5MAorCS5sb25nCTEwMTY4NjU1MzYKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MzU5OTI2NQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE2MjU3MTExCisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MzYwOTg3OQorCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYzNjYxNzczCisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MzYyMDU1MAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTY0MDU5MTc1CisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzM2MzEyNzgKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNTI1ODc2MQorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDczNjQyMDY1CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTYyNTU3NzgKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MzY1MjkxMQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjQ1MTEyNjcKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDczNjYzODE2CisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjQzNzgwOTkKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MzY3NDc3OQorCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE2OTczMzAwCisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MzY4NTgwMworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE2MzA4MTMzCisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzM2OTY4ODYKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE2NzE0MjA5CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzM3MDgwMjkKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2NDQ1MzY1MAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDczNzE5MjMzCisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTU0OTg4MzUKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDczNzMwNDk4CisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTMxMTU3NjQKKwkudHlwZQlUMmYsQG9iamVjdAorCS5zaXplCVQyZiwyMDQ4CisJLmFsaWduIDE2CitUMl9uZWdfZjoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MjY4MTkyMgorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEyMDY3MTg4CisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzI2NzA2NTcKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNDQ1MDI1OQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDcyNjU5NDUzCisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjM0MDUwNzQKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MjY0ODMxMAorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTU2NjU2MzMKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDcyNjM3MjI3CisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTUyNTk1NTcKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MjYyNjIwMworCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE1OTI0NzI0CisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MjYxNTI0MAorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTYzMzI5NTIzCisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzI2MDQzMzUKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTYzNDYyNjkxCisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzI1OTM0ODkKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNTIwNzIwMgorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDcyNTgyNzAyCisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTQyMTAxODUKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDcyNTcxOTc0CisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjMwMTA1OTkKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDcyNTYxMzAzCisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjI2MTMxOTcKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MjU1MDY4OQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE1MjA4NTM1CisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwkxMDcyNTQwMTM0CisJLmxvbmcJMTc2ODc5NzQ5MAorCS5sb25nCTEwMTU4MTY5NjAKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDcyNTI5NjM1CisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjI1Nzg2MjUKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MjUxOTE5MgorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE0MTY0NzM4CisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MjUwODgwNworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTYzMzc1NzM5CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzI0OTg0NzcKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2MzMzOTgzMQorCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDcyNDg4MjAzCisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjIzNjM5NjMKKwkubG9uZwkzNzA2Njg3NTkzCisJLmxvbmcJMTA3MjQ3Nzk4NAorCS5sb25nCTM1MjE3MjY5NDAKKwkubG9uZwkxMDEzMjUzMDY3CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzI0Njc4MjEKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxMzAzNDE3MgorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzI0NTc3MTMKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNTE4NzUzMworCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDcyNDQ3NjU5CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTU3NjAxODMKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MjQzNzY1OQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE0MDQyNzI1CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzI0Mjc3MTQKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2MzQ4NzY5MAorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDcyNDE3ODIyCisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTQxMTk4ODgKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDcyNDA3OTg0CisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2MzQ4NzQ0MworCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDcyMzk4MTk4CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjA3NTgzNTEKKwkubG9uZwkyMzgwNjE4MDQyCisJLmxvbmcJMTA3MjM4ODQ2NgorCS5sb25nCTMxNDk1NTcyMTkKKwkubG9uZwkzMTYzMzIwNzk5CisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzIzNzg3ODYKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTU5NTIzNDIyCisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MjM2OTE1OQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTYzMjgzMTg5CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzIzNTk1ODMKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE1NTIxNzQxCisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzIzNTAwNTkKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MjQ3NzEwOAorCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwkxMDcyMzQwNTg3CisJLmxvbmcJMjUxMTMzMjMzCisJLmxvbmcJMTAxNTA4NTc2OQorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzIzMzExNjYKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNTc5NDU1OAorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDcyMzIxNzk1CisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjMzNjkzMjYKKwkubG9uZwkzOTY0Mjg0MjExCisJLmxvbmcJMTA3MjMxMjQ3NQorCS5sb25nCTIxMTE1ODM5MTUKKwkubG9uZwkxMDE1NDI3MTY0CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzIzMDMyMDYKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2MjcyNDY4MQorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzIyOTM5ODcKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxMzQ1ODEyMgorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDcyMjg0ODE3CisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTM3NDI2NjIKKwkubG9uZwkxODkyMjg4NDQyCisJLmxvbmcJMTA3MjI3NTY5NworCS5sb25nCTI0NDYyNTU2NjYKKwkubG9uZwkzMTYyNjAwMzgxCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzIyNjY2MjYKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2MzM2MzQxOQorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDcyMjU3NjA0CisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjA4MjA2MDQKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MjI0ODYzMQorCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTU5ODQyNzU5CisJLmxvbmcJMTk0MTE3NTc0CisJLmxvbmcJMTA3MjIzOTcwNworCS5sb25nCTc3NzUyODYxMgorCS5sb25nCTMxNjM0MTIwODkKKwkubG9uZwkyNTY4MzIwODIyCisJLmxvbmcJMTA3MjIzMDgzMAorCS5sb25nCTI3MzI4MjQ0MjgKKwkubG9uZwkxMDE0MzUyOTE1CisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MjIyMjAwMgorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjA0NjI2ODYKKwkubG9uZwkxMTEwMDg5OTQ3CisJLmxvbmcJMTA3MjIxMzIyMQorCS5sb25nCTE0NTE2NDE2MzkKKwkubG9uZwkxMDE1NDc0NjczCisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzIyMDQ0ODcKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNTY0OTQ3NAorCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDcyMTk1ODAxCisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjM1MzkxOTIKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MjE4NzE2MgorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYyMDM1ODQ0CisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzIxNzg1NjkKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2MzM3NjY2OQorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDcyMTcwMDIzCisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjI2NjgxNjYKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDcyMTYxNTIzCisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTI5NDgyMjYKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzIxNTMwNjkKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNjAwOTI5MgorCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDcyMTQ0NjYwCisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjE3MjQyNzkKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MjEzNjI5NworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTU1NzIxNTIKKwkubG9uZwkxNDQ3MTkyNTIxCisJLmxvbmcJMTA3MjEyNzk3OQorCS5sb25nCTE0NjI4NTcxNzEKKwkubG9uZwkzMTYyNTE0NTIxCisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzIxMTk3MDYKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MjU0ODQ0MQorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDcyMTExNDc3CisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjE1NTA0MDcKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MjEwMzI5MworCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjE5OTYzMDMKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MjA5NTE1NAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYwMTI5MDgyCisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzIwODcwNTgKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MDU3NDI5NAorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJMzMwNDU4MTk4CisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDcyMDcwOTk3CisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTE4OTAzNTAKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MjA2MzAzMgorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTYzMjcyNzEzCisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MjA1NTExMAorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYyMjYxNTY0CisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzIwNDcyMzAKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2MjczNTU1MworCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDcyMDM5MzkzCisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjI3NTk3NDYKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDcyMDMxNTk5CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNTc4NTIwOQorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDcyMDIzODQ2CisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMDk1MzU3NzEKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MjAxNjEzNQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNTQyNzY2MAorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDcyMDA4NDY2CisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTQxNDI0MzMKKwkubG9uZwk5MTc4NDE4ODIKKwkubG9uZwkxMDcyMDAwODM5CisJLmxvbmcJMTg3MTU1NjUKKwkubG9uZwkxMDE1NjU5MzA4CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzE5OTMyNTIKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MjMzNTM4OAorCS5sb25nCTE0NTMxNTAwODIKKwkubG9uZwkxMDcxOTg1NzA3CisJLmxvbmcJNDk4MTU0NjY5CisJLmxvbmcJMzE2MTQ4ODA2MgorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDcxOTc4MjAyCisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjI0NzAwMjEKKwkubG9uZwkxOTkwMDEyMDcxCisJLmxvbmcJMTA3MTk3MDczOAorCS5sb25nCTM1MjkwNzA1NjMKKwkubG9uZwkzMTYyODEzMTkzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzE5NjMzMTQKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNTYwNjQ5MQorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDcxOTU1OTMwCisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTM3OTM2ODcKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3MTk0ODU4NgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE1NjYzNDU4CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzE5NDEyODIKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxMzE3MDU5NQorCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcxOTM0MDE3CisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTU4NDU5NjMKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3MTkyNjc5MgorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMDM0Mjc3OAorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcxOTE5NjA1CisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjE1NzMzNDEKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcxOTEyNDU4CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE1OTI5MDcyOQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3MTkwNTM0OQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTYzMDE3MjUxCisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzE4OTgyNzgKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE0Njg0MTY5CisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzE4OTEyNDUKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTYzNDg4MjQ4CisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MTg4NDI1MQorCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYwNzk0MTY2CisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzE4NzcyOTQKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2MzQ2MTAwNQorCS5sb25nCTkyNjU5MTQzNQorCS5sb25nCTEwNzE4NzAzNzUKKwkubG9uZwkzMjA4ODMzNzYyCisJLmxvbmcJMzE2MjkxMzUxNAorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcxODYzNDkzCisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjIyMDEzMjYKKwkubG9uZwkyOTkyOTAzOTM1CisJLmxvbmcJMTA3MTg1NjY0OAorCS5sb25nCTIyMTgxNTQ0MDYKKwkubG9uZwkxMDE1MjI4MTkzCisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzE4NDk4NDAKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNDY2ODUxOQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzE4NDMwNzAKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNDQyODc3OAorCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcxODM2MzM1CisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTMwNDE2NzkKKwkubG9uZwkyNzk5OTYwODQzCisJLmxvbmcJMTA3MTgyOTYzNworCS5sb25nCTE0MjM2NTUzODEKKwkubG9uZwkxMDE1MDIyMTUxCisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzE4MjI5NzUKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1NzMzMDY1MgorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcxODE2MzQ5CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTQzNzEwNDgKKwkubG9uZwkzNzkwOTU1MzkzCisJLmxvbmcJMTA3MTgwOTc1OQorCS5sb25nCTIzNTI5NDI0NjIKKwkubG9uZwkzMTYzMTgwMDkwCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzE4MDMyMDUKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNDE1MjQ5OQorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcxNzk2Njg2CisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTQ2Nzc4NDUKKwkubG9uZwkxODUzMTg2NjE2CisJLmxvbmcJMTA3MTc5MDIwMgorCS5sb25nCTMwNjY0OTYzNzEKKwkubG9uZwkxMDE1NjU2NTc0CisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzE3ODM3NTMKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNDE0NzQ1NAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcxNzc3MzM5CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTQ4NzYwMjEKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcxNzcwOTYwCisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYyNjI3OTkyCisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MTc2NDYxNQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNTkzOTQzOAorCS5sb25nCTIyMTQ4Nzg0MjAKKwkubG9uZwkxMDcxNzU4MzA0CisJLmxvbmcJODkyMjcwMDg3CisJLmxvbmcJMzE2MzExNjQyMgorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcxNzUyMDI3CisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTQ5MTM4NjgKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcxNzQ1Nzg1CisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjI1NzQ4ODMKKwkubG9uZwkxMDE0ODQ1ODE5CisJLmxvbmcJMTA3MTczOTU3NgorCS5sb25nCTMxMTc5MTA2NDYKKwkubG9uZwkzMTYxNTU5MTA1CisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzE3MzM0MDAKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNDEyMDU1NAorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcxNzI3MjU4CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjI3MTQwNDcKKwkubG9uZwkzMjI4MzE2MTA4CisJLmxvbmcJMTA3MTcyMTE0OQorCS5sb25nCTMwMTAyNDE5OTEKKwkubG9uZwkzMTU4NDIyODA0CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzE3MTUwNzMKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYyOTQ4ODgwCisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzE3MDkwMzAKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MDEyMDMwMQorCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzE3MDMwMjAKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDA5NzkzNTU5CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3MTY5NzA0MgorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTUwMjk0NjgKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MTY5MTA5NgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE1NTg4Mzk4CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzE2ODUxODIKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE1MTA1NjU2CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MTY3OTMwMQorCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDExOTc1ODcwCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MTY3MzQ1MQorCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYyMjgwNDE1CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzE2Njc2MzIKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNDg1NDYyNgorCS5sb25nCTM4OTk1NTU3MTcKKwkubG9uZwkxMDcxNjYxODQ1CisJLmxvbmcJNDI3MjgwNzUwCisJLmxvbmcJMzE2MjU0Njk3MgorCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcxNjU2MDkwCisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjA1MTA1OTUKKwkubG9uZwkyODUxODEyMTQ5CisJLmxvbmcJMTA3MTY1MDM2NQorCS5sb25nCTI1OTU4MDI1NTEKKwkubG9uZwkxMDE1NzY3MzM3CisJLnR5cGUJVDJfbmVnX2YsQG9iamVjdAorCS5zaXplCVQyX25lZ19mLDIwNDgKKwkuYWxpZ24gMTYKK3B2OgorCS5sb25nCTMwNzgxMzU2NDQKKwkubG9uZwkxMDQ5Nzg3OTgzCisJLmxvbmcJMzgxNzc0ODcwCisJLmxvbmcJMTA2MjY1MDIyMAorCS5sb25nCTQzNjMxNDEzNworCS5sb25nCTEwNTY1NzE4MDgKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2Nzc5OTg5MworCS50eXBlCXB2LEBvYmplY3QKKwkuc2l6ZQlwdiwzMgorCS5hbGlnbiA0CitIQUxGTUFTSzoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJMjE0NzQ4MzY0NworCS50eXBlCUhBTEZNQVNLLEBvYmplY3QKKwkuc2l6ZQlIQUxGTUFTSyw4CisJLmFsaWduIDQKK09ORU1BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkVNQVNLLEBvYmplY3QKKwkuc2l6ZQlPTkVNQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3NoLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3NoLjUtLi5fX190YWdfdmFsdWVfY29zaC4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3NoLjMtLi5fX190YWdfdmFsdWVfY29zaC4xCisJLjJieXRlIDB4MTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY29zaC40LS4uX19fdGFnX3ZhbHVlX2Nvc2guMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9leHAuUyBiL2xpYm0veDg2XzY0L2VfZXhwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjg4MmRmYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfZXhwLlMKQEAgLTAsMCArMSw2MzYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBEZXNjcmlwdGlvbjoKKy8vICBMZXQgSyA9IDY0ICh0YWJsZSBzaXplKS4KKy8vICAgICAgICB4ICAgIHgvbG9nKDIpICAgICBuCisvLyAgICAgICBlICA9IDIgICAgICAgICAgPSAyICogVFtqXSAqICgxICsgUCh5KSkKKy8vICB3aGVyZQorLy8gICAgICAgeCA9IG0qbG9nKDIpL0sgKyB5LCAgICB5IGluIFstbG9nKDIpL0suLmxvZygyKS9LXQorLy8gICAgICAgbSA9IG4qSyArIGosICAgICAgICAgICBtLG4saiAtIHNpZ25lZCBpbnRlZ2VyLCBqIGluIFstSy8yLi5LLzJdCisvLyAgICAgICAgICAgICAgICAgIGovSworLy8gICAgICAgdmFsdWVzIG9mIDIgICBhcmUgdGFidWxhdGVkIGFzIFRbal0gPSBUX2hpW2pdICggMSArIFRfbG9bal0pLgorLy8KKy8vICAgICAgIFAoeSkgaXMgYSBtaW5pbWF4IHBvbHlub21pYWwgYXBwcm94aW1hdGlvbiBvZiBleHAoeCktMQorLy8gICAgICAgb24gc21hbGwgaW50ZXJ2YWwgWy1sb2coMikvSy4ubG9nKDIpL0tdICh3ZXJlIGNhbGN1bGF0ZWQgYnkgTWFwbGUgVikuCisvLworLy8gIFRvIGF2b2lkIHByb2JsZW1zIHdpdGggYXJpdGhtZXRpYyBvdmVyZmxvdyBhbmQgdW5kZXJmbG93LAorLy8gICAgICAgICAgICBuICAgICAgICAgICAgICAgICAgICAgICAgbjEgIG4yCisvLyAgdmFsdWUgb2YgMiAgaXMgc2FmZWx5IGNvbXB1dGVkIGFzIDIgKiAyIHdoZXJlIG4xIGluIFstQklBUy8yLi5CSUFTLzJdCisvLyAgd2hlcmUgQklBUyBpcyBhIHZhbHVlIG9mIGV4cG9uZW50IGJpYXMuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBleHAoTmFOKSA9IE5hTgorLy8gIGV4cCgrSU5GKSA9ICtJTkYKKy8vICBleHAoLUlORikgPSAwCisvLyAgZXhwKHgpID0gMSBmb3Igc3Vibm9ybWFscworLy8gIGZvciBmaW5pdGUgYXJndW1lbnQsIG9ubHkgZXhwKDApPTEgaXMgZXhhY3QKKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICAgIGlmIHggPiAgNzA5Ljc4MjcxMjg5MzM4Mzk3MzA5NiB0aGVuIGV4cCh4KSBvdmVyZmxvdworLy8gICAgaWYgeCA8IC03NDUuMTMzMjE5MTAxOTQxMTA4NDIwIHRoZW4gZXhwKHgpIHVuZGVyZmxvdworLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGV4cAorRU5UUlkoZXhwKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2V4cC4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9leHAuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjI6CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIGN2KCVyaXApLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgU2hpZnRlciglcmlwKSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDE2K2N2KCVyaXApLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMzIrY3YoJXJpcCksICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBtb3ZsICAgICAgJDE2NTI3LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTU1MDQsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA2NCtjdiglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgODArY3YoJXJpcCksICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkcWEgICAgbW1hc2soJXJpcCksICV4bW02CisgICAgICAgIHBhbmQgICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92ZHFhICAgIGJpYXMoJXJpcCksICV4bW02CisgICAgICAgIHBhZGRxICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQ0NiwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBsZWEgICAgICAgVGJsX2FkZHIoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyY3gsJXI4KSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgNDgrY3YoJXJpcCksICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW0yLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW03LCAleG1tMgorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRsICAgICAgJDg5NCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE5MTYsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgQUxMT05FUyglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQtMTAyMiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTUKKyAgICAgICAgcHNsbHEgICAgICV4bW01LCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDEsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgZWJpYXMoJXJpcCksICV4bW02CisgICAgICAgIHBzbGxxICAgICAkNCwgJXhtbTMKKyAgICAgICAgcHN1YmQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkNTIsICVlZHgKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGFuZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQxMDIzLCAlZWN4CisgICAgICAgIGpnZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW00LCAleG1tNgorICAgICAgICBwc3JhZCAgICAgJDMxLCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDg1LCAleG1tNiwgJXhtbTYKKyAgICAgICAgcHNsbHEgICAgICQxLCAleG1tMAorICAgICAgICBwc3JscSAgICAgJDEsICV4bW0wCisgICAgICAgIHB4b3IgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTYKKyAgICAgICAgcGFkZHEgICAgICV4bW02LCAleG1tMAorICAgICAgICBwYWRkcSAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTUsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqbmIgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTUsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdmwgICAgICAxMiglcnNwKSwgJWVheAorICAgICAgICBjbXBsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgbW92c2QgICAgIFhNQVgoJXJpcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDE0LCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdnNkICAgICBYTUlOKCVyaXApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTUsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZsICAgICAgOCglcnNwKSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZsICAgICAgMTIoJXJzcCksICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgbW92c2QgICAgIElORiglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZzZCAgICAgWkVSTyglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDEyKCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVheAorICAgICAgICBjbXBsICAgICAgJDEwODMxNzkwMDgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIG1vdnNkICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgT05FX3ZhbCglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgMTYoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9leHAuNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfZXhwLjU6CitFTkQoZXhwKQorIyAtLSBFbmQgIGV4cAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorY3Y6CisJLmxvbmcJMTY5NzM1MDM5OAorCS5sb25nCTEwNzk0NDg5MDMKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTQyNzc3OTY4NjQKKwkubG9uZwkxMDY1NzU4Mjc0CisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwkzMTY0NDg2NDU4CisJLmxvbmcJMTAyNTMwODU3MAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJNDI5NDk2NzI5NAorCS5sb25nCTEwNzE2NDQ2NzEKKwkubG9uZwk0Mjk0OTY3Mjk0CisJLmxvbmcJMTA3MTY0NDY3MQorCS5sb25nCTM4MTEwODg0ODAKKwkubG9uZwkxMDYyNjUwMjA0CisJLmxvbmcJMTQzMjA2NzYyMQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwkzMjMwNzE1NjYzCisJLmxvbmcJMTA2NTQyMzEyNQorCS5sb25nCTE0MzE2MDQxMjkKKwkubG9uZwkxMDY5ODk3MDQ1CisJLnR5cGUJY3YsQG9iamVjdAorCS5zaXplCWN2LDk2CisJLmFsaWduIDE2CitTaGlmdGVyOgorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkudHlwZQlTaGlmdGVyLEBvYmplY3QKKwkuc2l6ZQlTaGlmdGVyLDE2CisJLmFsaWduIDE2CittbWFzazoKKwkubG9uZwk0Mjk0OTY3MjMyCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLnR5cGUJbW1hc2ssQG9iamVjdAorCS5zaXplCW1tYXNrLDE2CisJLmFsaWduIDE2CitiaWFzOgorCS5sb25nCTY1NDcyCisJLmxvbmcJMAorCS5sb25nCTY1NDcyCisJLmxvbmcJMAorCS50eXBlCWJpYXMsQG9iamVjdAorCS5zaXplCWJpYXMsMTYKKwkuYWxpZ24gMTYKK1RibF9hZGRyOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzUxMDc2NjEKKwkubG9uZwkxMDE4MDAyMzY3CisJLmxvbmcJMTA0ODAxOTA0MAorCS5sb25nCTExNDE4CisJLmxvbmcJODk2MDA1NjUxCisJLmxvbmcJMTAxNTg2MTg0MgorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkyMjk2MAorCS5sb25nCTE2NDI1MTQ1MjkKKwkubG9uZwkxMDEyOTg3NzI2CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMzQ2MjkKKwkubG9uZwkxNTY4ODk3OTAwCisJLmxvbmcJMTAxNjU2ODQ4NgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwk0NjQyNAorCS5sb25nCTE4ODIxNjg1MjkKKwkubG9uZwkxMDEwNzQ0ODkzCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJNTgzNDgKKwkubG9uZwk1MDk4NTI4ODgKKwkubG9uZwkxMDE3MzM2MTc0CisJLmxvbmcJMzQ5MDg2Mzk1MgorCS5sb25nCTcwNDAxCisJLmxvbmcJNjUzMjc3MzA3CisJLmxvbmcJMTAxNzQzMTM4MAorCS5sb25nCTI5MzAzMjI5MTEKKwkubG9uZwk4MjU4NgorCS5sb25nCTE2NDk1NTc0MzAKKwkubG9uZwkxMDE3NzI5MzYzCisJLmxvbmcJMTAxNDg0NTgxOAorCS5sb25nCTk0OTA0CisJLmxvbmcJMTA1ODIzMTIzMQorCS5sb25nCTEwMTU3Nzc2NzYKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MzU1CisJLmxvbmcJMTA0NDAwMDYwNworCS5sb25nCTEwMTY3ODYxNjcKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMTk5NDMKKwkubG9uZwkxMTUxNzc5NzI1CisJLmxvbmcJMTAxNTcwNTQwOQorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMzI2NjcKKwkubG9uZwkzODE5NDgxMjM2CisJLmxvbmcJMTAxNjQ5OTk2NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxNDU1MzAKKwkubG9uZwkyNTUyMjI3ODI2CisJLmxvbmcJMTAxNTAzOTc4NworCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxNTg1MzMKKwkubG9uZwkxODI5MzUwMTkzCisJLmxvbmcJMTAxNTIxNjA5NworCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxNzE2NzcKKwkubG9uZwkxOTEzMzkxNzk1CisJLmxvbmcJMTAxNTc1NjY3NAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxODQ5NjUKKwkubG9uZwkxMzAzNDIzOTI2CisJLmxvbmcJMTAxNTIzODAwNQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTE5ODM5OAorCS5sb25nCTE1NzQxNzI3NDYKKwkubG9uZwkxMDE2MDYxMjQxCisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTIxMTk3NgorCS5sb25nCTM0MjQxNTY5NjkKKwkubG9uZwkxMDE3MTk2NDI4CisJLmxvbmcJOTI2NTkxNDM0CisJLmxvbmcJMjI1NzAzCisJLmxvbmcJMTkzODUxMzU0NworCS5sb25nCTEwMTc2MzEyNzMKKwkubG9uZwk4ODc0NjM5MjYKKwkubG9uZwkyMzk1NzkKKwkubG9uZwkyODA0NTY3MTQ5CisJLmxvbmcJMTAxNTM5MDAyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkyNTM2MDYKKwkubG9uZwk2MzEwODM1MjUKKwkubG9uZwkxMDE3NjkwMTgyCisJLmxvbmcJNTY5ODQ3MzM3CisJLmxvbmcJMjY3Nzg2CisJLmxvbmcJMTYyMzM3MDc3MAorCS5sb25nCTEwMTEwNDk0NTMKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMjgyMTIwCisJLmxvbmcJMzY2Nzk4NTI3MworCS5sb25nCTEwMTM4OTQzNjkKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMjk2NjEwCisJLmxvbmcJMzE0NTM3OTc2MAorCS5sb25nCTEwMTQ0MDMyNzgKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMzExMjU4CisJLmxvbmcJMjYwMzEwMDY4MQorCS5sb25nCTEwMTcxNTI0NjAKKwkubG9uZwkxOTkwMDEyMDcwCisJLmxvbmcJMzI2MDY2CisJLmxvbmcJMzI0OTIwMjk1MQorCS5sb25nCTEwMTc0NDg4ODAKKwkubG9uZwkxNDUzMTUwMDgxCisJLmxvbmcJMzQxMDM1CisJLmxvbmcJNDE5Mjg4OTc0CisJLmxvbmcJMTAxNjI4MDMyNQorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTM1NjE2NworCS5sb25nCTM3OTM1MDczMzcKKwkubG9uZwkxMDE2MDk1NzEzCisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTM3MTQ2MworCS5sb25nCTcyODAyMzA5MworCS5sb25nCTEwMTYzNDUzMTgKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkzODY5MjcKKwkubG9uZwkyNTgyNjc4NTM4CisJLmxvbmcJMTAxNzEyMzQ2MAorCS5sb25nCTI5NTY2MTI5OTYKKwkubG9uZwk0MDI1NTgKKwkubG9uZwk3NTkyOTY2CisJLmxvbmcJMTAxNjcyMTU0MworCS5sb25nCTIxODY2MTczODAKKwkubG9uZwk0MTgzNjAKKwkubG9uZwkyMjg2MTE0NDEKKwkubG9uZwkxMDE2Njk2MTQxCisJLmxvbmcJMTcxOTYxNDQxMgorCS5sb25nCTQzNDMzNAorCS5sb25nCTIyNjE2NjU2NzAKKwkubG9uZwkxMDE3NDU3NTkzCisJLmxvbmcJMTAxMzI1ODc5OAorCS5sb25nCTQ1MDQ4MgorCS5sb25nCTU0NDE0ODkwNworCS5sb25nCTEwMTczMjM2NjYKKwkubG9uZwkzOTA3ODA1MDQzCisJLmxvbmcJNDY2ODA1CisJLmxvbmcJMjM4MzkxNDkxOAorCS5sb25nCTEwMTcxNDM1ODYKKwkubG9uZwkxNDQ3MTkyNTIwCisJLmxvbmcJNDgzMzA3CisJLmxvbmcJMTE3NjQxMjAzOAorCS5sb25nCTEwMTcyNjczNzIKKwkubG9uZwkxOTQ0NzgxMTkwCisJLmxvbmcJNDk5OTg4CisJLmxvbmcJMjg4Mjk1NjM3MworCS5sb25nCTEwMTMzMTI0ODEKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwk1MTY4NTEKKwkubG9uZwkzMTU0MDc3NjQ4CisJLmxvbmcJMTAxNjUyODU0MworCS5sb25nCTI1NzE5NDc1MzgKKwkubG9uZwk1MzM4OTcKKwkubG9uZwkzNDg2NTE5OTkKKwkubG9uZwkxMDE2NDA1NzgwCisJLmxvbmcJMjYwNDk2MjU0MAorCS5sb25nCTU1MTEyOQorCS5sb25nCTMyNTM3OTE0MTIKKwkubG9uZwkxMDE1OTIwNDMxCisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTU2ODU0OQorCS5sb25nCTE1MDkxMjE4NjAKKwkubG9uZwkxMDE0NzU2OTk1CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTU4NjE1OAorCS5sb25nCTI2MTc2NDkyMTIKKwkubG9uZwkxMDE3MzQwMDkwCisJLmxvbmcJMjk2NjI3NTU1NgorCS5sb25nCTYwMzk1OQorCS5sb25nCTU1MzIxNDYzNAorCS5sb25nCTEwMTY0NTc0MjUKKwkubG9uZwkyNjgyMTQ2MzgzCisJLmxvbmcJNjIxOTU0CisJLmxvbmcJNzMwOTc1NzgzCisJLmxvbmcJMTAxNDA4MzU4MAorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwk2NDAxNDUKKwkubG9uZwkxNDg2NDk5NTE3CisJLmxvbmcJMTAxNjgxODk5NgorCS5sb25nCTIwNjk3NTExNDAKKwkubG9uZwk2NTg1MzQKKwkubG9uZwkyNTk1Nzg4OTI4CisJLmxvbmcJMTAxNjQwNzkzMgorCS5sb25nCTI5OTA0MTcyNDQKKwkubG9uZwk2NzcxMjMKKwkubG9uZwkxODUzMDUzNjE5CisJLmxvbmcJMTAxNTMxMDcyNAorCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwk2OTU5MTUKKwkubG9uZwkyNDYyNzkwNTM1CisJLmxvbmcJMTAxNTgxNDc3NQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwk3MTQ5MTEKKwkubG9uZwkzNjkzOTQ0MjE0CisJLmxvbmcJMTAxNzI1OTExMAorCS5sb25nCTMwOTIxOTA3MTQKKwkubG9uZwk3MzQxMTQKKwkubG9uZwkyOTc5MzMzNTUwCisJLmxvbmcJMTAxNzE4ODY1NAorCS5sb25nCTQwNzY1NTk5NDIKKwkubG9uZwk3NTM1MjYKKwkubG9uZwkxNzQwNTQ4NjEKKwkubG9uZwkxMDE0MzAwNjMxCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTc3MzE1MAorCS5sb25nCTgxNjc3ODQxOQorCS5sb25nCTEwMTQxOTc5MzQKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJNzkyOTg3CisJLmxvbmcJMzUwNzA1MDkyNAorCS5sb25nCTEwMTUzNDExOTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwk4MTMwNDEKKwkubG9uZwkxODIxNTE0MDg4CisJLmxvbmcJMTAxMzQxMDYwNAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwk4MzMzMTIKKwkubG9uZwk5MjA2MjM1MzkKKwkubG9uZwkxMDE2Mjk1NDMzCisJLmxvbmcJMTI0MjAwNzkzMQorCS5sb25nCTg1MzgwNQorCS5sb25nCTI3ODkwMTc1MTEKKwkubG9uZwkxMDE0Mjc2OTk3CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTg3NDUyMAorCS5sb25nCTM1ODYyMzMwMDQKKwkubG9uZwkxMDE1OTYyMTkyCisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwk4OTU0NjIKKwkubG9uZwk0NzQ2NTA1MTQKKwkubG9uZwkxMDE2NjQyNDE5CisJLmxvbmcJODYzNzM4NzE4CisJLmxvbmcJOTE2NjMxCisJLmxvbmcJMTYxNDQ0ODg1MQorCS5sb25nCTEwMTQyODE3MzIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJOTM4MDMwCisJLmxvbmcJMjQ1MDA4MjA4NgorCS5sb25nCTEwMTYxNjQxMzUKKwkubG9uZwkyNzI4NjkzOTc3CisJLmxvbmcJOTU5NjYzCisJLmxvbmcJMTEwMTY2ODM2MAorCS5sb25nCTEwMTU5ODkxODAKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJOTgxNTMxCisJLmxvbmcJODM1ODE0ODk0CisJLmxvbmcJMTAxNTcwMjY5NworCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDAzNjM4CisJLmxvbmcJMTMwMTQwMDk4OQorCS5sb25nCTEwMTQ0NjY4NzUKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTAyNTk4NQorCS50eXBlCVRibF9hZGRyLEBvYmplY3QKKwkuc2l6ZQlUYmxfYWRkciwxMDI0CisJLmFsaWduIDE2CitBTExPTkVTOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkudHlwZQlBTExPTkVTLEBvYmplY3QKKwkuc2l6ZQlBTExPTkVTLDE2CisJLmFsaWduIDE2CitlYmlhczoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJZWJpYXMsQG9iamVjdAorCS5zaXplCWViaWFzLDE2CisJLmFsaWduIDQKK1hNQVg6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDY0MzUwNzEKKwkudHlwZQlYTUFYLEBvYmplY3QKKwkuc2l6ZQlYTUFYLDgKKwkuYWxpZ24gNAorWE1JTjoKKwkubG9uZwkwCisJLmxvbmcJMTA0ODU3NgorCS50eXBlCVhNSU4sQG9iamVjdAorCS5zaXplCVhNSU4sOAorCS5hbGlnbiA0CitJTkY6CisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkudHlwZQlJTkYsQG9iamVjdAorCS5zaXplCUlORiw4CisJLmFsaWduIDQKK1pFUk86CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlaRVJPLEBvYmplY3QKKwkuc2l6ZQlaRVJPLDgKKwkuYWxpZ24gNAorT05FX3ZhbDoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCU9ORV92YWwsQG9iamVjdAorCS5zaXplCU9ORV92YWwsOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2V4cC4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwLjUtLi5fX190YWdfdmFsdWVfZXhwLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2V4cC4zLS4uX19fdGFnX3ZhbHVlX2V4cC4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwLjQtLi5fX190YWdfdmFsdWVfZXhwLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfaHlwb3QuUyBiL2xpYm0veDg2XzY0L2VfaHlwb3QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODliMmI0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9oeXBvdC5TCkBAIC0wLDAgKzEsMjEwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gWDg3IHZlcnNpb246CisvLyBVc2UgODAtYml0IEZQVSBwcmVjaXNpb24gZm11bCwgZnNxcnQgdG8gY29tcHV0ZSBzcXVhcmUgYW5kIHNxcnQuCisvLworLy8gU1NFIHZlcnNpb246CisvLyBTd2FwIHgsIHkgaWYgfHh8PHx5fAorLy8gRm9yIHg9Ml5rKngsIGdldCB5PXkqMl4oLWspCisvLyBHZXQgUyB+IHNxcnQoeF4yK3leMikgIChsZWFkaW5nIDEgKyBsZWFkaW5nIDI1IG1hbnRpc3NhIGJpdHMpCisvLworLy8gR2V0IEQgPSAoIFJOKHheMit5XjIpIC0gU14yICkgKyAoIHheMiAtIFJOKHheMikgKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArICggeV4yIC0gKChSTih4XjIreV4yKS1STih4XjIpKSApCisvLworLy8gUmVzdWx0IGlzIDJeayooUyArIFNlKSwgIHdoZXJlIFNlID0gUyplCisvLyAgICAgICAgUyplIGlzIGFwcHJveGltYXRlZCBhcyAoRC8yUykqKCAxIC0gKEQvMlMpXjIqMS4wL1MgKQorLy8KKy8vIFJldHVybiAyXmsqKFMrU2UpCisvLworLy8gRm9yIHx5L3h8PDJeKC02NCksIHJldHVybiB4CisvLworLy8gRm9yIGNhc2VzIHdoZXJlIG1heGltdW0gYmlhc2VkIGV4cG9uZW50IGlzIGVpdGhlciBncmVhdGVyIHRoYW4gN2ZkaCBvcgorLy8gYmVsb3cgMzIsIHRha2UgYSBzcGVjaWFsIHBhdGggdG8gY2hlY2sgZm9yIHNwZWNpYWwgY2FzZXMgKDAsIE5hTiwgSW5mKSwKKy8vIHBvc3NpYmxlIG92ZXJmbG93LCBhbmQgbW9yZSBhY2N1cmF0ZSBjb21wdXRhdGlvbiBmb3IgZGVub3JtYWwgcmVzdWx0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgaHlwb3QoeCx5KSwgaHlwb3QoeSx4KSwgYW5kIGh5cG90KHgsLXkpIGFyZSBlcXVpdmFsZW50CisvLyAgaHlwb3QoeCwrLTApIGlzIGVxdWl2YWxlbnQgdG8gZmFicyh4KQorLy8gIGh5cG90KHgseSkgPSB5IGlmICh4PT1OYU4gb3IgeD09SU5GKSBhbmQgeT09SU5GCisvLyAgaHlwb3QoeCx5KSA9IHggaWYgKHg9PU5hTiBvciB4PT1JTkYpIGFuZCB5IT1JTkYgKGV2ZW4gaWYgeT09TmFOISkKKy8vICBoeXBvdCh4LHkpID0geSBpZiAoeCE9TmFOIGFuZCB4IT1JTkYpIGFuZCAoeT09TmFOIG9yIHk9PUlORikKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBoeXBvdAorRU5UUlkoaHlwb3QpCisjIHBhcmFtZXRlciAxOiAleG1tMAorIyBwYXJhbWV0ZXIgMjogJXhtbTEKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2h5cG90LjE6CisuLl9fX3RhZ192YWx1ZV9oeXBvdC4zOgorLi5CMS4yOgorICAgICAgICBzdWJxICAgICAgJDY0LCAlcnNwCisgICAgICAgIG1vdmFwZCAgICBzdGF0aWNfY29uc3RfdGFibGUoJXJpcCksICV4bW0zCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgNDgoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA1NiglcnNwKQorICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjQ1MjgsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIGNtcGwgICAgICAkMjQ1MjgsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisuTF8yVEFHX1BBQ0tFVF8xLjAuMToKKyAgICAgICAgZmxkbCAgICAgIDQ4KCVyc3ApCisgICAgICAgIGZsZGwgICAgICA1NiglcnNwKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMCksICVzdAorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIG5vcCAgICAgICAKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3FydCAgICAgCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorLkxfMlRBR19QQUNLRVRfMC4wLjE6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIGFkZGwgICAgICAkOTI4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTg1NiwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjEKKyAgICAgICAgY21wbCAgICAgICQ0OTA1NiwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgZmxkbCAgICAgIDQ4KCVyc3ApCisgICAgICAgIGZsZGwgICAgICA1NiglcnNwKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMCksICVzdAorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIG5vcCAgICAgICAKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3FydCAgICAgCisuTF8yVEFHX1BBQ0tFVF81LjAuMToKKyAgICAgICAgZnN0bCAgICAgICglcnNwKQorICAgICAgICBmc3RwdCAgICAgMTYoJXJzcCkKKyAgICAgICAgeG9ybCAgICAgICVlYXgsICVlYXgKKyAgICAgICAgbW92dyAgICAgIDI0KCVyc3ApLCAlYXgKKyAgICAgICAgY21wbCAgICAgICQxNzQwNywgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjEKKyAgICAgICAgZmxkbCAgICAgICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDMyKCVyc3ApCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgNDAoJXJzcCkKKyAgICAgICAgZmxkbCAgICAgIDMyKCVyc3ApCisgICAgICAgIGZhZGRsICAgICA0MCglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorICAgICAgICBmbGRsICAgICAgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMQorLkxfMlRBR19QQUNLRVRfMy4wLjE6CisgICAgICAgIHNodWZwZCAgICAkMCwgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmRxYSAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZHFhICAgIDE2K3N0YXRpY19jb25zdF90YWJsZSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAzMiglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDQwKCVyc3ApCisgICAgICAgIGNtcHBkICAgICAkMywgJXhtbTAsICV4bW0yCisgICAgICAgIGNtcHBkICAgICAkMCwgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdm1za3BkICAleG1tMiwgJWVkeAorICAgICAgICBtb3Ztc2twZCAgJXhtbTMsICVyYXgKKyAgICAgICAgdGVzdGwgICAgICVlZHgsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4xCisgICAgICAgIGZsZGwgICAgICAzMiglcnNwKQorICAgICAgICBmbXVsbCAgICAgNDAoJXJzcCkKKyAgICAgICAgdGVzdHEgICAgICQxLCAlcmF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMQorICAgICAgICB0ZXN0cSAgICAgJDIsICVyYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjEKKy5MXzJUQUdfUEFDS0VUXzguMC4xOgorICAgICAgICBmbGRsICAgICAgMzIoJXJzcCkKKyAgICAgICAgZmFkZGwgICAgIDQwKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorLkxfMlRBR19QQUNLRVRfOS4wLjE6CisgICAgICAgIGZzdHBsICAgICA0MCglcnNwKQorICAgICAgICBmbGRsICAgICAgMzIoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjE6CisgICAgICAgIGZzdHBsICAgICAzMiglcnNwKQorICAgICAgICBmbGRsICAgICAgNDAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF8yLjAuMToKKy5MXzJUQUdfUEFDS0VUXzcuMC4xOgorICAgICAgICBmc3RwbCAgICAgMTYoJXJzcCkKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMAorICAgICAgICBhZGRxICAgICAgJDY0LCAlcnNwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMzoKKy4uX19fdGFnX3ZhbHVlX2h5cG90LjQ6CitFTkQoaHlwb3QpCisjIC0tIEVuZCAgaHlwb3QKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NzQ4MzY0NworCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDMyCisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfaHlwb3QuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2h5cG90LjQtLi5fX190YWdfdmFsdWVfaHlwb3QuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfaHlwb3QuMy0uLl9fX3RhZ192YWx1ZV9oeXBvdC4xCisJLjJieXRlIDB4MTAwZQorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfbG9nLlMgYi9saWJtL3g4Nl82NC9lX2xvZy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwY2I1ZTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9lX2xvZy5TCkBAIC0wLDAgKzEsNzc5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBHZXQgQn4xL214IGJhc2VkIG9uIHRoZSBvdXRwdXQgb2YgcmNwc3MgaW5zdHJ1Y3Rpb24gKEIwKQorLy8gICAgQiA9IGludCgoQjAqMl43KzAuNSkpLzJeNworLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQ6IHI9QipteC0xLjAgKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIFJlc3VsdDogIGsqbG9nKDIpIC0gbG9nKEIpICsgcChyKSBpZiB8eC0xfCA+PSBzbWFsbCB2YWx1ZSAoMl4tNikgIGFuZAorLy8gICAgICAgICAgICAgcChyKSBpcyBhIGRlZ3JlZSA3IHBvbHlub21pYWwKKy8vICAgICAgICAgICAgIC1sb2coQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIFJlc3VsdCBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGxvZyhOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBsb2coK0lORikgPSB0aGF0IElORgorLy8gIGxvZygwKSA9IC1JTkYgd2l0aCBkaXZpZGUtYnktemVybyBleGNlcHRpb24gcmFpc2VkCisvLyAgbG9nKDEpID0gKzAKKy8vICBsb2coeCkgPSBOYU4gd2l0aCBpbnZhbGlkIGV4Y2VwdGlvbiByYWlzZWQgaWYgeCA8IC0wLCBpbmNsdWRpbmcgLUlORgorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGxvZworRU5UUlkobG9nKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2xvZy4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9sb2cuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92cSAgICAgICQweDNmZjAwMDAwMDAwMDAwMDAsICVyYXgKKyAgICAgICAgbW92ZCAgICAgICVyYXgsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAkMHg3N2YwMDAwMDAwMDAwMDAwLCAlcmR4CisgICAgICAgIG1vdmQgICAgICAlcmR4LCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlcmN4LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJDB4ZmZmZmUwMDAwMDAwMDAwMCwgJXI4CisgICAgICAgIG1vdmQgICAgICAlcjgsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIExfdGJsKCVyaXApLCAlcjExCisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHN1YmwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgbG9nMiglcmlwKSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIGNvZWZmKCVyaXApLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMTY3MTE2ODAsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxMiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgKCVyMTEsJXJkeCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAxNitjb2VmZiglcmlwKSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMzIrY29lZmYoJXJpcCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92ZGR1cCAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgOCtsb2cyKCVyaXApLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmRkdXAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWN4CisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQtMjA5NzE1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMsIDE2KCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDIsIDE2KCVyc3ApCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2xvZy40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9sb2cuNToKK0VORChsb2cpCisjIC0tIEVuZCAgbG9nCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitMX3RibDoKKwkubG9uZwk0Mjc3ODExMjAwCisJLmxvbmcJMTA3MjA0OTczMAorCS5sb25nCTI0NzkzMTg4MzIKKwkubG9uZwkxMDI2NDg3MTI3CisJLmxvbmcJMjg1NDQ5MjE2MAorCS5sb25nCTEwNzIwMzM0MTAKKwkubG9uZwkyMTU2MzE1NTAKKwkubG9uZwkxMDI1NjM4OTY4CisJLmxvbmcJMTU0NzA2MTI0OAorCS5sb25nCTEwNzIwMTcyMTYKKwkubG9uZwkyODg2NzgxNDM1CisJLmxvbmcJMTAyNjQyMzM5NQorCS5sb25nCTY0OTgyNTI4MAorCS5sb25nCTEwNzIwMDExNDYKKwkubG9uZwk0MjgxNTMzNDA1CisJLmxvbmcJMTAyNDAzODkyMworCS5sb25nCTY0NjM0Njc1MgorCS5sb25nCTEwNzE5ODUxOTgKKwkubG9uZwkxNTYyNzM1OTIxCisJLmxvbmcJMTAyMzc5MDI3NgorCS5sb25nCTIyMDM3MzQwMTYKKwkubG9uZwkxMDcxOTY5MzcwCisJLmxvbmcJMTgzODM5NzY5MQorCS5sb25nCTMxNzM5MzYyMDkKKwkubG9uZwkxODcyMTY5OTg0CisJLmxvbmcJMTA3MTk1MzY2MQorCS5sb25nCTM5ODEyMDI0NjAKKwkubG9uZwkxMDIyMzI1MDEzCisJLmxvbmcJNjY5NTU3NzYwCisJLmxvbmcJMTA3MTkzODA2OQorCS5sb25nCTQxODI1OTc4MDIKKwkubG9uZwkzMTczMTc0MTIyCisJLmxvbmcJNDA3NjQxMzk1MgorCS5sb25nCTEwNzE5MjI1OTEKKwkubG9uZwkxMjA5MDI5MTExCisJLmxvbmcJMzE3MDczNjIwNworCS5sb25nCTU1NjEyNTE4NAorCS5sb25nCTEwNzE5MDcyMjgKKwkubG9uZwk4MjEwODYwMjgKKwkubG9uZwkzMTczNDM3MDQ5CisJLmxvbmcJMjA0OTE0Njg4CisJLmxvbmcJMTA3MTg5MTk3NgorCS5sb25nCTIwOTcwMjU5ODYKKwkubG9uZwkzMTcxMDcxNzk4CisJLmxvbmcJMzg3NTQ1MDg4CisJLmxvbmcJMTA3MTg3NjgzNAorCS5sb25nCTMxNDI5MzY5OTYKKwkubG9uZwkzMTczMDkyMjE4CisJLmxvbmcJMjkxMjc4MzM2MAorCS5sb25nCTEwNzE4NjE4MDAKKwkubG9uZwkyNTAyNDIwMTQwCisJLmxvbmcJMTAyNDUwNTkxOQorCS5sb25nCTExNDQyNjA2MDgKKwkubG9uZwkxMDcxODQ2ODc0CisJLmxvbmcJMzMxNTY1ODE0MAorCS5sb25nCTMxNzM0Njk4NDMKKwkubG9uZwkxNDcxMjA5NDcyCisJLmxvbmcJMTA3MTgzMjA1MworCS5sb25nCTEyOTYyMTAwOQorCS5sb25nCTMxNzI0NDM4NzcKKwkubG9uZwkxODI5NjgzMjAwCisJLmxvbmcJMTA3MTgxNzMzNgorCS5sb25nCTM4ODU0Njc2OTMKKwkubG9uZwkxMDI1NTM1Mjc1CisJLmxvbmcJMjg4Njc2ODY0CisJLmxvbmcJMTA3MTgwMjcyMgorCS5sb25nCTg2MTM5NDcyCisJLmxvbmcJMzE3MTYzOTc5MworCS5sb25nCTM2MzYzNzg2MjQKKwkubG9uZwkxMDcxNzg4MjA4CisJLmxvbmcJMTg1MDIzODU4NworCS5sb25nCTEwMjQ2NTQzNDIKKwkubG9uZwkxNjA2ODE3NzkyCisJLmxvbmcJMTA3MTc3Mzc5NQorCS5sb25nCTMzODg4OTk3OTUKKwkubG9uZwkzMTczNjc1NTg2CisJLmxvbmcJMTIzNjE2NDYwOAorCS5sb25nCTEwNzE3NTk0ODAKKwkubG9uZwkzOTgzNTk5MjA3CisJLmxvbmcJMTAyMDA0NjU1OAorCS5sb25nCTEwODk2MTY4OTYKKwkubG9uZwkxMDcxNzQ1MjYyCisJLmxvbmcJNDE3MTk3NDIyNAorCS5sb25nCTEwMjQ3NzMxOTgKKwkubG9uZwk0MTQzMDkzNzYwCisJLmxvbmcJMTA3MTczMTEzOQorCS5sb25nCTI3Mjc1ODc0MDEKKwkubG9uZwkzMTczOTY1MjA3CisJLmxvbmcJNjAwMjY3Nzc2CisJLmxvbmcJMTA3MTcxNzExMgorCS5sb25nCTMxNDc2ODUwNDIKKwkubG9uZwkzMTczMzUzMDMxCisJLmxvbmcJMjI0OTMxMzI4MAorCS5sb25nCTEwNzE3MDMxNzcKKwkubG9uZwkxMjU4MzUwNzQKKwkubG9uZwkxMDI1MjU1ODMyCisJLmxvbmcJMzgwNTMwMzgwOAorCS5sb25nCTEwNzE2ODkzMzQKKwkubG9uZwkyMjg5OTkxMjA3CisJLmxvbmcJMTAyNTQ2MDMzMQorCS5sb25nCTg3Mjc4NTkyCisJLmxvbmcJMTA3MTY3NTU4MworCS5sb25nCTExMDYxMTQwNDUKKwkubG9uZwkxMDI1OTMzNjAyCisJLmxvbmcJMzE5NTQwNTMxMgorCS5sb25nCTEwNzE2NjE5MjAKKwkubG9uZwkzODg1MzE2NTc2CisJLmxvbmcJMzE3MTIwNjIzOQorCS5sb25nCTM4NTM2NDk5MjAKKwkubG9uZwkxMDcxNjQ4MzQ2CisJLmxvbmcJMjk3NzA2OTg1MgorCS5sb25nCTMxNzEyMzY3NzEKKwkubG9uZwkyOTQ0MDI2NjI0CisJLmxvbmcJMTA3MTYyNTA0OAorCS5sb25nCTEwMDgwOTM0OTMKKwkubG9uZwkxMDIzNDQ0NDc0CisJLmxvbmcJMzk5MzE4MDE2MAorCS5sb25nCTEwNzE1OTgyNDcKKwkubG9uZwkxODYyMzU1NTk1CisJLmxvbmcJMTAyNDY0MjUzMworCS5sb25nCTE0NTQ2NDExNTIKKwkubG9uZwkxMDcxNTcxNjE3CisJLmxvbmcJMTUxNDYwMzA4OQorCS5sb25nCTEwMjY1MDA1OTYKKwkubG9uZwkzMjg2MDg1NjMyCisJLmxvbmcJMTA3MTU0NTE1NAorCS5sb25nCTE0MDAwMjg0MjQKKwkubG9uZwkzMTczMjc5MDU2CisJLmxvbmcJNDM4NzczNzYwCisJLmxvbmcJMTA3MTUxODg1OAorCS5sb25nCTEyMDcyNzg2NAorCS5sb25nCTMxNzIxNDg5MTQKKwkubG9uZwkxMjEyOTc5MjAwCisJLmxvbmcJMTA3MTQ5MjcyNQorCS5sb25nCTE2MjUwNTU1OTQKKwkubG9uZwkzMTcyOTAxOTMzCisJLmxvbmcJMTE4OTAxNzYwMAorCS5sb25nCTEwNzE0NjY3NTQKKwkubG9uZwkzOTIwMDYyMzc2CisJLmxvbmcJMTAyNTcyNzQwNworCS5sb25nCTQwMzA2NDgzMgorCS5sb25nCTEwNzE0NDA5NDMKKwkubG9uZwkxMDUzMjcxNzI4CisJLmxvbmcJMzE3MTM5MTQyNworCS5sb25nCTMzNDMyMTA0OTYKKwkubG9uZwkxMDcxNDE1Mjg5CisJLmxvbmcJMzI0MzM5NTUwMgorCS5sb25nCTMxNzM2Mjc2MTMKKwkubG9uZwkxNzY1Nzc3NDA4CisJLmxvbmcJMTA3MTM4OTc5MgorCS5sb25nCTIxNDU5Njg1MTIKKwkubG9uZwkxMDI2MzU0MzA0CisJLmxvbmcJNDYxNDMwNzg0CisJLmxvbmcJMTA3MTM2NDQ0OQorCS5sb25nCTQwOTQzMjIyODUKKwkubG9uZwkxMDI2MDIxNDY3CisJLmxvbmcJNzE3MDY2MjQKKwkubG9uZwkxMDcxMzM5MjU4CisJLmxvbmcJNzYzNjMyMDIxCisJLmxvbmcJMTAyNDQ5NjkzMworCS5sb25nCTEzODA1MDM1NTIKKwkubG9uZwkxMDcxMzE0MjE3CisJLmxvbmcJMTM4MzU0Nzk5MgorCS5sb25nCTMxNzMwODg0NTMKKwkubG9uZwkxMDE1NzMyMjI0CisJLmxvbmcJMTA3MTI4OTMyNQorCS5sb25nCTMxOTg2NDY4NzcKKwkubG9uZwkxMDI1MzkwMzIyCisJLmxvbmcJMzU5NzcyMTYKKwkubG9uZwkxMDcxMjY0NTgwCisJLmxvbmcJMjE0MTAyNjgwNQorCS5sb25nCTEwMjU3NTQ2OTMKKwkubG9uZwkzOTI3MzA2MjQwCisJLmxvbmcJMTA3MTIzOTk3OQorCS5sb25nCTI4MjExNjI3MgorCS5sb25nCTMxNzMzOTQzMzQKKwkubG9uZwkxMTI1MzQxMTg0CisJLmxvbmcJMTA3MTIxNTUyMworCS5sb25nCTI3Njg0Mjc1MDQKKwkubG9uZwkzMTcyMjc5MDU5CisJLmxvbmcJMTY2Njk3MTY0OAorCS5sb25nCTEwNzExOTEyMDgKKwkubG9uZwk3ODY4Mzc2MjkKKwkubG9uZwkzMTcyNDI3NDQ1CisJLmxvbmcJMjgyNzY5NDA4MAorCS5sb25nCTEwNzExNjcwMzMKKwkubG9uZwkzODU3MTIyNDE2CisJLmxvbmcJMzE3MzAxNDI0MQorCS5sb25nCTIwMDM2ODMzMjgKKwkubG9uZwkxMDcxMTQyOTk3CisJLmxvbmcJODU5MDEwOTU0CisJLmxvbmcJMTAyNjU0NTAwNworCS5sb25nCTEwMDQwMTc2NjQKKwkubG9uZwkxMDcxMTE5MDk4CisJLmxvbmcJMzM1NjY0NDk3MAorCS5sb25nCTMxNzM0NTgwNjQKKwkubG9uZwkxNzUzMDIwNDE2CisJLmxvbmcJMTA3MTA5NTMzNAorCS5sb25nCTc4ODMzODU1MgorCS5sb25nCTEwMjYxNTc2OTMKKwkubG9uZwkxOTkyNzE4MzM2CisJLmxvbmcJMTA3MTA3MTcwNAorCS5sb25nCTEyMzkxNzk0NDMKKwkubG9uZwkxMDI2Mzk0ODg5CisJLmxvbmcJMzg3MDIzNDYyNAorCS5sb25nCTEwNzEwNDgyMDYKKwkubG9uZwkyMDgyNjE0NjYzCisJLmxvbmcJMTAyNDkyNjA1MworCS5sb25nCTEwNTA0Mzc2MzIKKwkubG9uZwkxMDcxMDI0ODQwCisJLmxvbmcJNjYwMDA3ODQwCisJLmxvbmcJMTAyNTU0ODQ5OQorCS5sb25nCTE4ODM5NTUyMAorCS5sb25nCTEwNzEwMDE2MDMKKwkubG9uZwkzODc4NzkyNzA0CisJLmxvbmcJMzE3Mzg4OTU3MQorCS5sb25nCTM3NDcxNzY0NDgKKwkubG9uZwkxMDcwOTc4NDkzCisJLmxvbmcJMTQ0OTkxNzA4CisJLmxvbmcJMzE3MTU1MjA0MgorCS5sb25nCTE0MDU2NjkzNzYKKwkubG9uZwkxMDcwOTU1NTExCisJLmxvbmcJMzk5OTA4ODg3OQorCS5sb25nCTEwMjU0ODYzMTcKKwkubG9uZwkxMjExNTE0ODgKKwkubG9uZwkxMDcwOTMyNjU0CisJLmxvbmcJMjE3MDg2NTQ5NworCS5sb25nCTEwMjY0NzM1ODQKKwkubG9uZwkyNjUyMzE5NzQ0CisJLmxvbmcJMTA3MDkwOTkyMAorCS5sb25nCTQ1MzY5NTY1MgorCS5sb25nCTMxNzM5MTY4MDkKKwkubG9uZwkzMjYyMjM2NjcyCisJLmxvbmcJMTA3MDg4NzMwOQorCS5sb25nCTE1NzgwMDA1MworCS5sb25nCTMxNzM5ODQyMDYKKwkubG9uZwk2MDEyMjExMjAKKwkubG9uZwkxMDcwODY0ODIwCisJLmxvbmcJMzk2ODkxNzY2MQorCS5sb25nCTEwMjM5OTI4ODYKKwkubG9uZwkxOTk5ODQzMzI4CisJLmxvbmcJMTA3MDg0MjQ1MAorCS5sb25nCTMwNTM4OTUwMDQKKwkubG9uZwkxMDI0OTk4MjI4CisJLmxvbmcJMTk5MjE2NzQyNAorCS5sb25nCTEwNzA4MjAxOTkKKwkubG9uZwkyOTY4NjE0ODU2CisJLmxvbmcJMTAyNDU1MjY1MworCS5sb25nCTM3ODg3MjYyNzIKKwkubG9uZwkxMDcwNzk4MDY1CisJLmxvbmcJMzU0MjE3MDgwOAorCS5sb25nCTMxNzM1NzMyNDIKKwkubG9uZwkyMDk0ODI5NTY4CisJLmxvbmcJMTA3MDc3NjA0OAorCS5sb25nCTEyNDY3NTgxMzIKKwkubG9uZwkxMDI2MjAyODc0CisJLmxvbmcJMjg4Njc1ODQwCisJLmxvbmcJMTA3MDc1NDE0NgorCS5sb25nCTM3NDczMjg5NTAKKwkubG9uZwkxMDI2MzMxNTg1CisJLmxvbmcJMTgyOTY4MTE1MgorCS5sb25nCTEwNzA3MzIzNTcKKwkubG9uZwkzMTI1MTk3NTQ2CisJLmxvbmcJMTAyNDEwMDMxOAorCS5sb25nCTE2NjY4NjkyNDgKKwkubG9uZwkxMDcwNzEwNjgxCisJLmxvbmcJMTM2MzY1NjExOQorCS5sb25nCTEwMjYzMzY0OTMKKwkubG9uZwkzNDE3MTEwNTI4CisJLmxvbmcJMTA3MDY4OTExNgorCS5sb25nCTQxNTQ3OTE1NTMKKwkubG9uZwkxMDI2MjY3ODUzCisJLmxvbmcJMjE4MzY1MzM3NgorCS5sb25nCTEwNzA2Njc2NjIKKwkubG9uZwkxNjcxODE5MjkyCisJLmxvbmcJMzE3Mzc4NTg3MAorCS5sb25nCTE3MzQ0MzQ4MTYKKwkubG9uZwkxMDcwNjQ2MzE3CisJLmxvbmcJMzczMDkxMDQ5CisJLmxvbmcJMTAyNTk3MjM2MworCS5sb25nCTE2MTU2ODE1MzYKKwkubG9uZwkxMDcwNjI1MDgwCisJLmxvbmcJMzg0NjUwODk3CisJLmxvbmcJMTAyMjkyNjA0MworCS5sb25nCTE0NDUzODIxNDQKKwkubG9uZwkxMDcwNjAzOTUwCisJLmxvbmcJMzQ0MzIwMzMwCisJLmxvbmcJMzE3MjM5NzE5NgorCS5sb25nCTE4MjM3MTUzMjgKKwkubG9uZwkxMDcwNTY5NzU2CisJLmxvbmcJMzM4OTg0MTIwMAorCS5sb25nCTEwMjUyMzE4NTIKKwkubG9uZwkzODM5Njg4NzA0CisJLmxvbmcJMTA3MDUyNzkxNworCS5sb25nCTE3MDY3OTA0MTcKKwkubG9uZwkzMTY3MzYzMzQ5CisJLmxvbmcJNDI5MzMzMjk5MgorCS5sb25nCTEwNzA0ODYyODYKKwkubG9uZwkxNjE0OTM1MDg4CisJLmxvbmcJMTAxOTM1MTU5MQorCS5sb25nCTI5NjY3MjA1MTIKKwkubG9uZwkxMDcwNDQ0ODYxCisJLmxvbmcJNDE0NTM5MzcxNworCS5sb25nCTMxNzM3MTE2NTgKKwkubG9uZwk0MDY2NzI5OTg0CisJLmxvbmcJMTA3MDQwMzYzOQorCS5sb25nCTE5NzQ5MjUwMjgKKwkubG9uZwkzMTcxNDM3MTgyCisJLmxvbmcJMzMzNzYyMTUwNAorCS5sb25nCTEwNzAzNjI2MTkKKwkubG9uZwkzMzE0OTUzMTcwCisJLmxvbmcJMzE2OTk3MTMxNAorCS5sb25nCTk0MzQ0ODA2NAorCS5sb25nCTEwNzAzMjE3OTkKKwkubG9uZwkxNDk4NjgyMDM4CisJLmxvbmcJMzE3Mzg2MjM0MAorCS5sb25nCTE0NjU2MzQ4MTYKKwkubG9uZwkxMDcwMjgxMTc2CisJLmxvbmcJMTMxOTk1MjgxMAorCS5sb25nCTMxNzE2OTM5NjUKKwkubG9uZwkxMDE1NzM0MjcyCisJLmxvbmcJMTA3MDI0MDc0OQorCS5sb25nCTEzNDc4MjE5MjkKKwkubG9uZwkzMTczNTQ0NTE1CisJLmxvbmcJMTE4MDAxNjY0CisJLmxvbmcJMTA3MDIwMDUxNgorCS5sb25nCTE3NTE0ODI3NDYKKwkubG9uZwkxMDI2MTM0MDkzCisJLmxvbmcJMzcwNzE3NDkxMgorCS5sb25nCTEwNzAxNjA0NzQKKwkubG9uZwkxNDg2OTQ2MTU5CisJLmxvbmcJMTAyMzkzMDkyMAorCS5sb25nCTM5NDYzODEzMTIKKwkubG9uZwkxMDcwMTIwNjIzCisJLmxvbmcJMjg2NzQwODA4MQorCS5sb25nCTMxNzEzNjgyNzYKKwkubG9uZwkxNjk5ODQ4MTkyCisJLmxvbmcJMTA3MDA4MDk2MQorCS5sb25nCTI1OTAxODcxMzkKKwkubG9uZwkxMDI1Mzc5ODAzCisJLmxvbmcJMjIzNTg0NjY1NgorCS5sb25nCTEwNzAwNDE0ODUKKwkubG9uZwkxODg4NTY4MDY5CisJLmxvbmcJMzE3Mjc1NDk2MAorCS5sb25nCTIzMzk3Mjk0MDgKKwkubG9uZwkxMDcwMDAyMTk0CisJLmxvbmcJMzg1MjIxNDc1MworCS5sb25nCTMxNzMzMjMxNDkKKwkubG9uZwkzMTk2ODUwMTc2CisJLmxvbmcJMTA2OTk2MzA4NgorCS5sb25nCTc0MjE0MTU2MAorCS5sb25nCTEwMjUxMDE3MDcKKwkubG9uZwkxODAwNjgzNTIwCisJLmxvbmcJMTA2OTkyNDE2MAorCS5sb25nCTM5NDk1MDA0NDQKKwkubG9uZwkzMTcyMTAyMTc5CisJLmxvbmcJMzgzNTgwMTYwMAorCS5sb25nCTEwNjk4ODU0MTMKKwkubG9uZwkzODQ4ODk1OTQzCisJLmxvbmcJMTAyNTkxMzgzMgorCS5sb25nCTIyMDEyMDI2ODgKKwkubG9uZwkxMDY5ODQ2ODQ1CisJLmxvbmcJMTQyNTkxMzQ2NAorCS5sb25nCTEwMjU4Njg2NjUKKwkubG9uZwkyNzc4Mjc5OTM2CisJLmxvbmcJMTA2OTgwODQ1MworCS5sb25nCTIxMjA4ODk2NzcKKwkubG9uZwkzMTczODMxMTI4CisJLmxvbmcJMjk1NDIwMzEzNgorCS5sb25nCTEwNjk3NzAyMzYKKwkubG9uZwk1OTIxNDcwODEKKwkubG9uZwkxMDE5NjIxMjg4CisJLmxvbmcJMjEwMTQxMTg0CisJLmxvbmcJMTA2OTczMjE5MworCS5sb25nCTM0MTQyNzUyMzMKKwkubG9uZwkxMDIzNjQ3MDg0CisJLmxvbmcJNzA5NDc2MzUyCisJLmxvbmcJMTA2OTY5NDMyMQorCS5sb25nCTI0MTMwMjcxNjQKKwkubG9uZwkxMDI0NDYyMTE1CisJLmxvbmcJMjExNjI4NDQxNgorCS5sb25nCTEwNjk2NTY2MTkKKwkubG9uZwkxMTQ0NTU5OTI0CisJLmxvbmcJMTAyNjMzNjY1NAorCS5sb25nCTIxODM2NTEzMjgKKwkubG9uZwkxMDY5NjE5MDg2CisJLmxvbmcJMzQ1OTA1NzY1MAorCS5sb25nCTEwMjU2MzQxNjgKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2OTU4MTcyMAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTczNTA4NTczCisJLmxvbmcJOTcwNzExMDQwCisJLmxvbmcJMTA2OTU0MTUyMQorCS5sb25nCTEzMzU5NTQxNzMKKwkubG9uZwkzMTczMzMyMTgyCisJLmxvbmcJMjE5ODQ3ODg0OAorCS5sb25nCTEwNjk0Njc0NDkKKwkubG9uZwkyOTUxMTAzOTY4CisJLmxvbmcJMzE3Mzg5MjIwMAorCS5sb25nCTE2Njk2MTE1MjAKKwkubG9uZwkxMDY5MzkzNzAzCisJLmxvbmcJNTMxMDQ0MTQ3CisJLmxvbmcJMTAyNTE0OTI0OAorCS5sb25nCTI5MTE0MzY4CisJLmxvbmcJMTA2OTMyMDI4MAorCS5sb25nCTMzMjc4MzEyNTEKKwkubG9uZwkxMDI1OTE4NjczCisJLmxvbmcJMjM3Njk0OTc2MAorCS5sb25nCTEwNjkyNDcxNzYKKwkubG9uZwk3Mzc2MzQ1MzMKKwkubG9uZwkzMTcyMTc2MDAwCisJLmxvbmcJMTA4NTM5MDg0OAorCS5sb25nCTEwNjkxNzQzOTAKKwkubG9uZwkzMTA4MjQzNDAwCisJLmxvbmcJMzE3MTgyODQwNgorCS5sb25nCTE1NjYxMzAxNzYKKwkubG9uZwkxMDY5MTAxOTE4CisJLmxvbmcJOTg1NDgzMjI2CisJLmxvbmcJMTAyNTcwODM4MAorCS5sb25nCTc5Mjc4MDgwMAorCS5sb25nCTEwNjkwMjk3NTgKKwkubG9uZwk0MTg0ODY2Mjk1CisJLmxvbmcJMTAyNDQyNjIwNAorCS5sb25nCTE4MzE1NjczNgorCS5sb25nCTEwNjg5NTc5MDcKKwkubG9uZwkyODQ1Njk5Mzc4CisJLmxvbmcJMTAyMjEwNzI3NworCS5sb25nCTEzMDE3ODI1MjgKKwkubG9uZwkxMDY4ODg2MzYyCisJLmxvbmcJMTAxMjczNTI2MgorCS5sb25nCTMxNzM4MDQyOTQKKwkubG9uZwkxNTYyNDExMDA4CisJLmxvbmcJMTA2ODgxNTEyMQorCS5sb25nCTIxOTcwODY3MDMKKwkubG9uZwkzMTcwMTg3ODEzCisJLmxvbmcJMjgxNTU0OTQ0MAorCS5sb25nCTEwNjg3NDQxODEKKwkubG9uZwkyNzgyNjEzMjA3CisJLmxvbmcJMTAyNjM0NTA1NAorCS5sb25nCTI3NTYxMjQ2NzIKKwkubG9uZwkxMDY4NjczNTQwCisJLmxvbmcJMjkyOTQ4NjIwNQorCS5sb25nCTMxNzMwMzc4MDAKKwkubG9uZwkzNTExMDUwMjQwCisJLmxvbmcJMTA2ODYwMzE5NQorCS5sb25nCTE0NDM3MzMxNDcKKwkubG9uZwkzMTczMzMxNTQ5CisJLmxvbmcJMzA0NzA0NzE2OAorCS5sb25nCTEwNjg1MzMxNDQKKwkubG9uZwkxODc5Njc0OTI0CisJLmxvbmcJMzE3MjQ1OTk5NworCS5sb25nCTMyMjE2Njc4NDAKKwkubG9uZwkxMDY4NDI3ODI1CisJLmxvbmcJMTMzODU4ODAyNworCS5sb25nCTMxNzE4MTU3NDIKKwkubG9uZwkzNDUzODYxODg4CisJLmxvbmcJMTA2ODI4ODg4MworCS5sb25nCTEyMDUzNDgzNTkKKwkubG9uZwkzMTcyNjI0NjI2CisJLmxvbmcJMzUwNjExMDQ2NAorCS5sb25nCTEwNjgxNTA1MTQKKwkubG9uZwk4OTMxMDUxOTgKKwkubG9uZwkxMDI1NTcxODY2CisJLmxvbmcJMzQ2MDEzNjk2CisJLmxvbmcJMTA2ODAxMjcxNAorCS5sb25nCTM0OTU1NjkwMjEKKwkubG9uZwkzMTcyNTYzMzQ5CisJLmxvbmcJNDA3NDAyOTA1NgorCS5sb25nCTEwNjc4NzU0NzYKKwkubG9uZwkzOTYxMTA2MzM4CisJLmxvbmcJMzE3MTA2NTU5NQorCS5sb25nCTM1NTk3ODQ0NDgKKwkubG9uZwkxMDY3NzM4Nzk4CisJLmxvbmcJMTk3NTM4NTM4NAorCS5sb25nCTMxNzM3ODMxNTUKKwkubG9uZwk3OTc3Njk3MjgKKwkubG9uZwkxMDY3NjAyNjc1CisJLmxvbmcJMzc2MDMwNTc4NworCS5sb25nCTEwMjYwNDc2NDIKKwkubG9uZwkyMzEzNjMzNzkyCisJLmxvbmcJMTA2NzQ2NzEwMQorCS5sb25nCTE1NTkzNTMxNzEKKwkubG9uZwkxMDIzNDgwMjU2CisJLmxvbmcJMzk2MDc2NjQ2NAorCS5sb25nCTEwNjcyMTM3NzgKKwkubG9uZwkxMDY3MzY1MTA3CisJLmxvbmcJMTAyNTg2NTkyNgorCS5sb25nCTY4NDI2MTM3NgorCS5sb25nCTEwNjY5NDQ4MDUKKwkubG9uZwk4NDQ3NjIxNjQKKwkubG9uZwkzMTczNjg3NDgyCisJLmxvbmcJNjMwNzE4NDY0CisJLmxvbmcJMTA2NjY3NjkwNQorCS5sb25nCTI0NTgyNjk2OTQKKwkubG9uZwkxMDI0MDMzMDgxCisJLmxvbmcJMTQ4NjA2MTU2OAorCS5sb25nCTEwNjY0MTAwNzAKKwkubG9uZwkxMTU1Mzc4NzQKKwkubG9uZwkzMTczMjQzOTk1CisJLmxvbmcJMjc0MzY2NDY0MAorCS5sb25nCTEwNjU4ODY3OTIKKwkubG9uZwkzNjY1MDk4MzA0CisJLmxvbmcJMzE3MzQ3MTYwNworCS5sb25nCTE5NzE5MTI3MDQKKwkubG9uZwkxMDY1MzU3MzMzCisJLmxvbmcJMjU3NzIxNDQ0MAorCS5sb25nCTMxNzE5OTM0NTEKKwkubG9uZwkxNDk4OTM5MzkyCisJLmxvbmcJMTA2NDMwNjY5MworCS5sb25nCTM0MDkwMzY5MjMKKwkubG9uZwkxMDI1NTk5MTUxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCUxfdGJsLEBvYmplY3QKKwkuc2l6ZQlMX3RibCwyMDY0CisJLmFsaWduIDE2Citsb2cyOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDY3ODU1NDI2CisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjIyOTI4MjMKKwkudHlwZQlsb2cyLEBvYmplY3QKKwkuc2l6ZQlsb2cyLDE2CisJLmFsaWduIDE2Citjb2VmZjoKKwkubG9uZwkyNDU0MjY3MDI2CisJLmxvbmcJMTA2OTY5NzMxNgorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTAzMDczMDEwMQorCS5sb25nCTMyMTczODA3MDIKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDcwMTc2NjY1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkudHlwZQljb2VmZixAb2JqZWN0CisJLnNpemUJY29lZmYsNDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZy41LS4uX19fdGFnX3ZhbHVlX2xvZy4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cuMy0uLl9fX3RhZ192YWx1ZV9sb2cuMQorCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZy40LS4uX19fdGFnX3ZhbHVlX2xvZy4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9lX2xvZzEwLlMgYi9saWJtL3g4Nl82NC9lX2xvZzEwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGY0M2EzNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfbG9nMTAuUwpAQCAtMCwwICsxLDgwNyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BzcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCpMSCoyXjcrMC41KSkvMl43CisvLyAgICBMSCBpcyBhIHNob3J0IGFwcHJveGltYXRpb24gZm9yIGxvZzEwKGUpCisvLworLy8gICAgUmVkdWNlZCBhcmd1bWVudDogcj1CKm14LUxIIChjb21wdXRlZCBhY2N1cmF0ZWx5IGluIGhpZ2ggYW5kIGxvdyBwYXJ0cykKKy8vCisvLyAgICBSZXN1bHQ6ICBrKmxvZzEwKDIpIC0gbG9nKEIpICsgcChyKQorLy8gICAgICAgICAgICAgcChyKSBpcyBhIGRlZ3JlZSA3IHBvbHlub21pYWwKKy8vICAgICAgICAgICAgIC1sb2coQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIFJlc3VsdCBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGxvZzEwKDApID0gLUlORiB3aXRoIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbiByYWlzZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisvLyAgbG9nMTAoMSkgPSArMAorLy8gIGxvZzEwKHgpID0gTmFOIHdpdGggaW52YWxpZCBleGNlcHRpb24gcmFpc2VkIGlmIHggPCAtMCwgaW5jbHVkaW5nIC1JTkYKKy8vICBsb2cxMCgrSU5GKSA9ICtJTkYKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBsb2cxMAorRU5UUlkobG9nMTApCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfbG9nMTAuMToKKyAgICAgICAgc3VicSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfbG9nMTAuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxMDU0NzM2Mzg0LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlZWN4LCAleG1tNworICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzA3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIG1vdmFwZCAgICBISUdIU0lHTUFTSyglcmlwKSwgJXhtbTUKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIExPRzEwX0UoJXJpcCksICV4bW0yCisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDc4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tMQorICAgICAgICBsZWEgICAgICAgTF90YmwoJXJpcCksICVyMTEKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBsb2cyKCVyaXApLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgY29lZmYoJXJpcCksICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQxNjcxMTY4MCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEyLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAtMTUwNCglcjExLCVyZHgpLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmYoJXJpcCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDMyK2NvZWZmKCVyaXApLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgOCtsb2cyKCVyaXApLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgOCtMT0cxMF9FKCVyaXApLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0xCisgICAgICAgIGFkZGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgTE9HMTBfRSglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICByY3BwcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNzgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkLTIwOTcxNTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ5LCAxNiglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ4LCAxNiglcnNwKQorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgOCglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9sb2cxMC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9sb2cxMC41OgorRU5EKGxvZzEwKQorIyAtLSBFbmQgIGxvZzEwCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitISUdIU0lHTUFTSzoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTU5MTA0CisJLnR5cGUJSElHSFNJR01BU0ssQG9iamVjdAorCS5zaXplCUhJR0hTSUdNQVNLLDE2CisJLmFsaWduIDE2CitMT0cxMF9FOgorCS5sb25nCTAKKwkubG9uZwkxMDcxMzY2MTQ0CisJLmxvbmcJMzIwNzQ3OTU2MAorCS5sb25nCTEwNjI4OTQxODgKKwkudHlwZQlMT0cxMF9FLEBvYmplY3QKKwkuc2l6ZQlMT0cxMF9FLDE2CisJLmFsaWduIDE2CitMX3RibDoKKwkubG9uZwkxMzUyNjI4MjI0CisJLmxvbmcJMTA3MDgxMDEzMQorCS5sb25nCTUyMTMxOTI1NgorCS5sb25nCTEwMjU1MDMwMjUKKwkubG9uZwkyMTUwODM5Mjk2CisJLmxvbmcJMTA3MDgwMTk0NAorCS5sb25nCTMzMjkzNTAwOTYKKwkubG9uZwkzMTcwMTkwMDE1CisJLmxvbmcJMTM2MDYxMzM3NgorCS5sb25nCTEwNzA3OTM3OTQKKwkubG9uZwkyMDI0MDU5MDc1CisJLmxvbmcJMTAyNDk5MTU5NAorCS5sb25nCTE4NzUzNTA1MjgKKwkubG9uZwkxMDcwNzg1NjgwCisJLmxvbmcJMjE2Mzg4MjE0MQorCS5sb25nCTMxNjM1NjQxMzcKKwkubG9uZwkyMzEyMTI2NDY0CisJLmxvbmcJMTA3MDc3NzYwMgorCS5sb25nCTE5NzU3MTEwNzYKKwkubG9uZwkxMDIzNjc0MTk2CisJLmxvbmcJMTMwNjMzNjI1NgorCS5sb25nCTEwNzA3Njk1NjAKKwkubG9uZwkzNTI0ODk5NTIzCisJLmxvbmcJMzE3MDUwODE2NAorCS5sb25nCTE4MDYzMzQ5NzYKKwkubG9uZwkxMDcwNzYxNTUzCisJLmxvbmcJNDI1NDc3NzAyNQorCS5sb25nCTEwMjUyMzg3MzkKKwkubG9uZwkyNDgzMTkzODU2CisJLmxvbmcJMTA3MDc1MzU4MQorCS5sb25nCTM4MDA2NzEzMTcKKwkubG9uZwkzMTcyOTE2ODMwCisJLmxvbmcJMjAyNTM1MDE0NAorCS5sb25nCTEwNzA3NDU2NDQKKwkubG9uZwkxNzMxNTE0NzQ1CisJLmxvbmcJMTAyNTUwMTA4MworCS5sb25nCTM0MzMyODU2MzIKKwkubG9uZwkxMDcwNzM3NzQxCisJLmxvbmcJMjU1MTg1NzMzNgorCS5sb25nCTMxNjk2NjIxODYKKwkubG9uZwkxMTM0MzE3NTY4CisJLmxvbmcJMTA3MDcyOTg3MworCS5sb25nCTM0MjYyOTc2NTUKKwkubG9uZwkzMTcyNjM3ODkxCisJLmxvbmcJMjQ1NzE1MjUxMgorCS5sb25nCTEwNzA3MjIwMzgKKwkubG9uZwk2MzU0OTQxNQorCS5sb25nCTEwMjU0MTU0MTYKKwkubG9uZwkxODYxODAzMDA4CisJLmxvbmcJMTA3MDcxNDIzNworCS5sb25nCTE5MTAxNzE2MzYKKwkubG9uZwkxMDIzOTc3NTgwCisJLmxvbmcJMjQxNDE0MDQxNgorCS5sb25nCTEwNzA3MDY0NjkKKwkubG9uZwk0MDAyNTE0MzM3CisJLmxvbmcJMzE3MDg0MTYxOAorCS5sb25nCTI5MDA3MjY3ODQKKwkubG9uZwkxMDcwNjk4NzM0CisJLmxvbmcJMzI2ODA2NDA4MworCS5sb25nCTEwMjI0NTk2MDkKKwkubG9uZwkyMTIzNTE3OTUyCisJLmxvbmcJMTA3MDY5MTAzMgorCS5sb25nCTE3NjcwMzEyMTgKKwkubG9uZwkxMDIyNDQ4MTU2CisJLmxvbmcJMzE5NDU2OTcyOAorCS5sb25nCTEwNzA2ODMzNjIKKwkubG9uZwkzNDAyMzMyNjE4CisJLmxvbmcJMzE3MTY3MTE2MAorCS5sb25nCTY1MDg4MjA0OAorCS5sb25nCTEwNzA2NzU3MjUKKwkubG9uZwk0MTQ2MDIzOTA1CisJLmxvbmcJMzE3MTAyMzAzOAorCS5sb25nCTE5Mjg5ODg2NzIKKwkubG9uZwkxMDcwNjY4MTE5CisJLmxvbmcJMTQzODYxNzg2NworCS5sb25nCTEwMTYzNjA0OTEKKwkubG9uZwkxNTk0OTA4NjcyCisJLmxvbmcJMTA3MDY2MDU0NQorCS5sb25nCTk3MTM4OTM3NworCS5sb25nCTEwMjQ3NjM5NzkKKwkubG9uZwkyODE4NzQ2MzY4CisJLmxvbmcJMTA3MDY1MzAwMgorCS5sb25nCTM1NTU5MjUzNDEKKwkubG9uZwkzMTcyNDM0ODIxCisJLmxvbmcJMTk0NTg0NTc2CisJLmxvbmcJMTA3MDY0NTQ5MQorCS5sb25nCTk0MzkxOTIxNQorCS5sb25nCTMxNzI5NTAwNjMKKwkubG9uZwkxMjE1MDk2ODMyCisJLmxvbmcJMTA3MDYzODAxMAorCS5sb25nCTIyODMzNTg1ODgKKwkubG9uZwkxMDIyMzM1MDk4CisJLmxvbmcJNTAxNTE5MzYwCisJLmxvbmcJMTA3MDYzMDU2MAorCS5sb25nCTQ4MDkwNDI5NQorCS5sb25nCTEwMjQ0Mzc5NTkKKwkubG9uZwkxMjc4MjY2MzY4CisJLmxvbmcJMTA3MDYyMzE0MAorCS5sb25nCTI3NTU4MDYwNjYKKwkubG9uZwkzMTcyMzQyMDEyCisJLmxvbmcJMjQ4NzgxMjA5NgorCS5sb25nCTEwNzA2MTU3NTAKKwkubG9uZwkyNDg5NjUzMjAyCisJLmxvbmcJMzE3MjQ4MTA5OQorCS5sb25nCTMwODU0NTEyNjQKKwkubG9uZwkxMDcwNjA4MzkwCisJLmxvbmcJMzc1OTE4NDk1MQorCS5sb25nCTMxNzI1NzQ4OTIKKwkubG9uZwkyMDM5MDkwMTc2CisJLmxvbmcJMTA3MDYwMTA2MAorCS5sb25nCTEzNjExNzY2NzYKKwkubG9uZwkzMTcyMzU1MzE5CisJLmxvbmcJOTUzMDU3MjgwCisJLmxvbmcJMTA3MDU5MTQyMworCS5sb25nCTExNzY1ODc1NDYKKwkubG9uZwkzMTY2NDIyMDE4CisJLmxvbmcJMzM3MDUyNDY3MgorCS5sb25nCTEwNzA1NzY4NzkKKwkubG9uZwkzNjY5NTcwMDUxCisJLmxvbmcJMTAyNTM3NjYzMAorCS5sb25nCTc0OTc0MjA4MAorCS5sb25nCTEwNzA1NjIzOTQKKwkubG9uZwk3MDc3MDA5NjQKKwkubG9uZwkzMTcwODE0MDU4CisJLmxvbmcJNDAwODM1Mzc5MgorCS5sb25nCTEwNzA1NDc5NjUKKwkubG9uZwkzMjQ3MzI3NjUyCisJLmxvbmcJMTAyMjQzMTQwMAorCS5sb25nCTI2MTI0NTU0MjQKKwkubG9uZwkxMDcwNTMzNTk0CisJLmxvbmcJMjQ1MzQ1NzM0NAorCS5sb25nCTMxNzIzMjI5NjkKKwkubG9uZwkzMjMwOTIwNzA0CisJLmxvbmcJMTA3MDUxOTI3OQorCS5sb25nCTEyOTY3ODE4MDEKKwkubG9uZwkxMDI1MTE1MzM1CisJLmxvbmcJMzk2NTI1MzYzMgorCS5sb25nCTEwNzA1MDUwMjAKKwkubG9uZwkzNzMwNzUyODkKKwkubG9uZwkxMDE3OTM4NTI4CisJLmxvbmcJMjU5MzE1NzEyMAorCS5sb25nCTEwNzA0NzY2NjkKKwkubG9uZwkxMDY4MDU0MDg2CisJLmxvbmcJMTAyMTYxNjU3NgorCS5sb25nCTkyNTk2MjI0MAorCS5sb25nCTEwNzA0NDg1MzcKKwkubG9uZwk4NTAxMjEyMTMKKwkubG9uZwkxMDIzOTI4OTg5CisJLmxvbmcJMTczMjU1NjgwMAorCS5sb25nCTEwNzA0MjA2MjAKKwkubG9uZwkxMzA1MjA2NzQwCisJLmxvbmcJMzE3MjY2NTU3MAorCS5sb25nCTM4MTU2MzA4NDgKKwkubG9uZwkxMDcwMzkyOTE1CisJLmxvbmcJMTkyNjQyOTQzCisJLmxvbmcJMzE3MjY5OTkwNworCS5sb25nCTIwMDE3NTgyMDgKKwkubG9uZwkxMDcwMzY1NDIwCisJLmxvbmcJMjgyMDc4NjY4MworCS5sb25nCTEwMjQ3MDQ4NjcKKwkubG9uZwkxNjc0NjQ5NgorCS5sb25nCTEwNzAzMzgxMzEKKwkubG9uZwkxMzk5NTczMTEwCisJLmxvbmcJMzE3MTM3Mjc3MworCS5sb25nCTE4ODY0OTI2NzIKKwkubG9uZwkxMDcwMzExMDQ0CisJLmxvbmcJMzYyMTQyODA3NQorCS5sb25nCTMxNzI5NzQzNTgKKwkubG9uZwkzMzM4MTk2OTkyCisJLmxvbmcJMTA3MDI4NDE1NworCS5sb25nCTM3OTM4ODIwMzUKKwkubG9uZwkxMDI1MTI0NzAxCisJLmxvbmcJMzgxNzY5NzI4CisJLmxvbmcJMTA3MDI1NzQ2OAorCS5sb25nCTM4Nzc5MzMzNDIKKwkubG9uZwkzMTcwMTk1NDkwCisJLmxvbmcJMjE4NjQ5MTkwNAorCS5sb25nCTEwNzAyMzA5NzIKKwkubG9uZwkxODM4Njg3MDg5CisJLmxvbmcJMTAxNzkyNzI5MgorCS5sb25nCTEwMDgzMzA3NTIKKwkubG9uZwkxMDcwMjA0NjY4CisJLmxvbmcJMjIyODMyMTY2NAorCS5sb25nCTEwMjUzNTIxOTYKKwkubG9uZwkyMjQ3MDY1NjAwCisJLmxvbmcJMTA3MDE3ODU1MgorCS5sb25nCTE0MTM5MDA5MDYKKwkubG9uZwkzMTcwOTAyNTMyCisJLmxvbmcJMjk2NDA3MDQwMAorCS5sb25nCTEwNzAxNTI2MjIKKwkubG9uZwkzNTkwNDU0NjI5CisJLmxvbmcJMTAyNTAxNjg0NAorCS5sb25nCTQ2NTE1NDA0OAorCS5sb25nCTEwNzAxMjY4NzYKKwkubG9uZwkyMDc5Njg4NTUwCisJLmxvbmcJMzE3MjI2ODE4MworCS5sb25nCTg4MzYxNTc0NAorCS5sb25nCTEwNzAxMDEzMTAKKwkubG9uZwk5ODkyNDQ0NTIKKwkubG9uZwkzMTcxOTAwNDg1CisJLmxvbmcJMTk5Mzc2ODk2MAorCS5sb25nCTEwNzAwNzU5MjIKKwkubG9uZwkxMTI0MzI3ODQxCisJLmxvbmcJMzE3Mjk2NDk5MgorCS5sb25nCTE3OTQ0NzE5MzYKKwkubG9uZwkxMDcwMDUwNzEwCisJLmxvbmcJMTE0MDU3NTA0NgorCS5sb25nCTEwMjI2NzM3MjYKKwkubG9uZwkyNzk3OTMyNTQ0CisJLmxvbmcJMTA3MDAyNTY3MQorCS5sb25nCTE4OTQ4MzY5MzMKKwkubG9uZwkzMTcyNTQ0MDU5CisJLmxvbmcJMzQzMzc5NzYzMgorCS5sb25nCTEwNzAwMDA4MDMKKwkubG9uZwkzMjIxODMxMTY2CisJLmxvbmcJMzE3MTkyMTY4NQorCS5sb25nCTIzMzgzNzE1ODQKKwkubG9uZwkxMDY5OTc2MTA0CisJLmxvbmcJMzczMjQ2MTA1MworCS5sb25nCTMxNjQ1MTM1MTgKKwkubG9uZwkyNjQ0MDEzMDU2CisJLmxvbmcJMTA2OTk1MTU3MQorCS5sb25nCTI1MTk0NjA0NjIKKwkubG9uZwkzMTcyNTQ4NzQwCisJLmxvbmcJMzM4MzgxNDE0NAorCS5sb25nCTEwNjk5MjcyMDIKKwkubG9uZwkyMjkwOTk3NjU3CisJLmxvbmcJMTAyNTQ5OTY0OQorCS5sb25nCTM3ODEzODAwOTYKKwkubG9uZwkxMDY5OTAyOTk1CisJLmxvbmcJMzgwNDc5NDA1CisJLmxvbmcJMTAyNTE4NDEzNgorCS5sb25nCTMyNDU3ODUwODgKKwkubG9uZwkxMDY5ODc4OTQ4CisJLmxvbmcJMTA5NjM5ODI2MQorCS5sb25nCTMxNjk4ODUxOTIKKwkubG9uZwkxMzY2NzEyMzIwCisJLmxvbmcJMTA2OTg1NTA1OQorCS5sb25nCTIyMTgzNDM3MTUKKwkubG9uZwkzMTcwMjgxNjI4CisJLmxvbmcJMjIwNDcxNzA1NgorCS5sb25nCTEwNjk4MzEzMjUKKwkubG9uZwkyNjY4MzM0MDExCisJLmxvbmcJMTAyNTI2NDUyNAorCS5sb25nCTE0MDE3NzIwMzIKKwkubG9uZwkxMDY5ODA3NzQ1CisJLmxvbmcJNDEwMzk5MzE1OQorCS5sb25nCTEwMjI5MjU3MjEKKwkubG9uZwkzMzU2NzIxMTUyCisJLmxvbmcJMTA2OTc4NDMxNgorCS5sb25nCTM1NzM3OTA3NzIKKwkubG9uZwkzMTcyMTg2NTI3CisJLmxvbmcJNDA0MTE0ODQxNgorCS5sb25nCTEwNjk3NjEwMzcKKwkubG9uZwk0MDI3NjkxOTEwCisJLmxvbmcJMzE3MTI3Njk5MAorCS5sb25nCTM4ODAxNTEwNDAKKwkubG9uZwkxMDY5NzM3OTA2CisJLmxvbmcJNDA4NzExODc4NgorCS5sb25nCTMxNzI3MTA3MzQKKwkubG9uZwkzNDUzMzY0MjI0CisJLmxvbmcJMTA2OTcxNDkyMQorCS5sb25nCTk5MDE0Mjk5CisJLmxvbmcJMzE3MjAwMzA3NworCS5sb25nCTM0OTEwOTI0ODAKKwkubG9uZwkxMDY5NjkyMDgwCisJLmxvbmcJMzgwMTgzNjcwMQorCS5sb25nCTMxNzI5ODkyODcKKwkubG9uZwk1NzU1ODAxNjAKKwkubG9uZwkxMDY5NjY5MzgyCisJLmxvbmcJMTkyMDQwNjAxMgorCS5sb25nCTMxNzA4NzQxMjUKKwkubG9uZwkyMjI4MjI0MAorCS5sb25nCTEwNjk2NDY4MjQKKwkubG9uZwk5NjQxOTMzNzAKKwkubG9uZwkxMDE5MzYzMTU5CisJLmxvbmcJMjk5MTQyOTYzMgorCS5sb25nCTEwNjk2MjQ0MDQKKwkubG9uZwkzMzcyNTg5ODkwCisJLmxvbmcJMTAyMzQyNTA1MworCS5sb25nCTIxODk2NDU4MjQKKwkubG9uZwkxMDY5NjAyMTIyCisJLmxvbmcJMjYxMDUwMzg3MgorCS5sb25nCTEwMjM2NTI0NDIKKwkubG9uZwkzMzQxNDY3NjQ4CisJLmxvbmcJMTA2OTU3OTk3NQorCS5sb25nCTExOTAyOTIwMDQKKwkubG9uZwkxMDIyNDI1NjY1CisJLmxvbmcJMzcxMTI5MzQ0MAorCS5sb25nCTEwNjk1NTc5NjIKKwkubG9uZwkxMTA0Nzk1MzU2CisJLmxvbmcJMTAyMzYyNTgyOQorCS5sb25nCTEzODA0MDExNTIKKwkubG9uZwkxMDY5NTI0NjQ0CisJLmxvbmcJMTE1Njk5ODIxNworCS5sb25nCTEwMjUxMDA0OTkKKwkubG9uZwk3NjU3MTAzMzYKKwkubG9uZwkxMDY5NDgxMTQ0CisJLmxvbmcJMTczNjY0OTExMworCS5sb25nCTEwMjQ5OTk0MzkKKwkubG9uZwk4NDk0MTIwOTYKKwkubG9uZwkxMDY5NDM3OTAyCisJLmxvbmcJMjYxODE3ODMzMAorCS5sb25nCTMxNzA4NTM2MjkKKwkubG9uZwkxNDMzMTA0Mzg0CisJLmxvbmcJMTA2OTM5NDkxNQorCS5sb25nCTQzNDc3MjY3CisJLmxvbmcJMzE3MDM3ODgxMQorCS5sb25nCTI1NDg1OTY3MzYKKwkubG9uZwkxMDY5MzUyMTgwCisJLmxvbmcJMzk2NzM2NzA2MworCS5sb25nCTEwMjUyNDY1ODQKKwkubG9uZwkxNTc1NzcyMTYKKwkubG9uZwkxMDY5MzA5Njk1CisJLmxvbmcJMTAwNDAyNTMzCisJLmxvbmcJMzE3MjgyNTUwMgorCS5sb25nCTMzMjYyMzg3MjAKKwkubG9uZwkxMDY5MjY3NDU1CisJLmxvbmcJMTE3Njg5MjkwOQorCS5sb25nCTEwMjU0NjQwOTkKKwkubG9uZwk0MTU1NDk0NDAwCisJLmxvbmcJMTA2OTIyNTQ1OQorCS5sb25nCTM3MTM3MDc2MTcKKwkubG9uZwkzMTcyNjMwMDQ2CisJLmxvbmcJMzU0NTgwNDgwMAorCS5sb25nCTEwNjkxODM3MDQKKwkubG9uZwk4NTcwMDczMTUKKwkubG9uZwkxMDI0OTY1Nzc3CisJLmxvbmcJMjYwMjUyMDU3NgorCS5sb25nCTEwNjkxNDIxODcKKwkubG9uZwkyNTg4NzU4MzQ3CisJLmxvbmcJMTAyMjQ2MzEzMQorCS5sb25nCTI2MzExOTY2NzIKKwkubG9uZwkxMDY5MTAwOTA1CisJLmxvbmcJMjExODQyNDIzNQorCS5sb25nCTEwMjI0OTA5ODkKKwkubG9uZwk4MzgxMzU4MDgKKwkubG9uZwkxMDY5MDU5ODU2CisJLmxvbmcJNDExNzAwMjcyNworCS5sb25nCTEwMjQ4NzQ1MjAKKwkubG9uZwkzMjEwOTAzNTUyCisJLmxvbmcJMTA2OTAxOTAzNgorCS5sb25nCTY1MDA3MDEyNQorCS5sb25nCTMxNzIwMTI5NjYKKwkubG9uZwkzMDM5MjExNTIwCisJLmxvbmcJMTA2ODk3ODQ0NAorCS5sb25nCTQzODA1NTgxMgorCS5sb25nCTEwMTc3NDM3NTcKKwkubG9uZwkyMzg1NjMzMjgwCisJLmxvbmcJMTA2ODkzODA3NworCS5sb25nCTMwMTE5OTAzNjkKKwkubG9uZwkzMTcxMzEyMDQ0CisJLmxvbmcJMzQ5MTYxODgxNgorCS5sb25nCTEwNjg4OTc5MzIKKwkubG9uZwk3MTI4MTM4MTgKKwkubG9uZwkzMTcyNzIwNDAwCisJLmxvbmcJMTgzNjQ0MTYwCisJLmxvbmcJMTA2ODg1ODAwOAorCS5sb25nCTQyODcwMDY3NDIKKwkubG9uZwkxMDIyMzc5NzI4CisJLmxvbmcJMzYzOTIxNDA4MAorCS5sb25nCTEwNjg4MTgzMDAKKwkubG9uZwkzNTM3NjIyNzkKKwkubG9uZwkzMTcyOTgwMDA5CisJLmxvbmcJMzcyODQxNjc2OAorCS5sb25nCTEwNjg3Nzg4MDgKKwkubG9uZwkxODUxMzY3NzMwCisJLmxvbmcJMTAyNTQ4NjU3NAorCS5sb25nCTMzNzAwOTQ1OTIKKwkubG9uZwkxMDY4NzM5NTI5CisJLmxvbmcJNDA0NjU5NDkxMworCS5sb25nCTMxNzI1NjcwNDcKKwkubG9uZwkxMzQ4NDA3Mjk2CisJLmxvbmcJMTA2ODcwMDQ2MQorCS5sb25nCTE0MzE4OTY3NQorCS5sb25nCTEwMjUzOTc2MzIKKwkubG9uZwk4OTk0MDM3NzYKKwkubG9uZwkxMDY4NjYxNjAxCisJLmxvbmcJMzc1MzY4Nzg0MgorCS5sb25nCTMxNzA3NzI3NzIKKwkubG9uZwkxMTE3NzA4Mjg4CisJLmxvbmcJMTA2ODYyMjk0NworCS5sb25nCTE4NTczNDA4MTIKKwkubG9uZwkzMTcwNzgyNjc4CisJLmxvbmcJMTI0ODI3NjQ4MAorCS5sb25nCTEwNjg1ODQ0OTcKKwkubG9uZwkxMjg5ODU4MjAzCisJLmxvbmcJMTAyNTIyMjI4OQorCS5sb25nCTY4MzIzNzM3NgorCS5sb25nCTEwNjg1NDYyNDkKKwkubG9uZwkyMzU2Njc5NjA4CisJLmxvbmcJMzE3MTYyOTE3MAorCS5sb25nCTMyNTM3NjQwOTYKKwkubG9uZwkxMDY4NTA4MjAwCisJLmxvbmcJMzI2NzEzNjU1NgorCS5sb25nCTEwMTg1NTQ5ODcKKwkubG9uZwk5NDQ3ODMzNgorCS5sb25nCTEwNjg0NDE3NTYKKwkubG9uZwkxOTI3ODY4ODE0CisJLmxvbmcJMzE2OTM3ODE4MAorCS5sb25nCTMyMzMxNDQ4MzIKKwkubG9uZwkxMDY4MzY2NDQ1CisJLmxvbmcJMjY4MjE4ODg1NAorCS5sb25nCTEwMjM5NjQwMDQKKwkubG9uZwkyOTQwMjk3MjE2CisJLmxvbmcJMTA2ODI5MTUyMgorCS5sb25nCTI3NTMwMTI4OQorCS5sb25nCTEwMjM5NDQ2NzkKKwkubG9uZwkzNjc3NzA4Mjg4CisJLmxvbmcJMTA2ODIxNjk4MgorCS5sb25nCTMwMjY1ODc3MQorCS5sb25nCTEwMjQ0NjU1NjcKKwkubG9uZwkxNTc2OTY4MTkyCisJLmxvbmcJMTA2ODE0MjgyMgorCS5sb25nCTM2NzIwMzU5NDAKKwkubG9uZwkzMTcyMjU0NjEwCisJLmxvbmcJMTYxNDA2OTc2MAorCS5sb25nCTEwNjgwNjkwMzcKKwkubG9uZwk0ODAwNTI5MDUKKwkubG9uZwkzMTcyNjkyMDYyCisJLmxvbmcJNDI0NDM1NzEyCisJLmxvbmcJMTA2Nzk5NTYyNAorCS5sb25nCTIyMDc4Njk2NTcKKwkubG9uZwkzMTcwOTY1NDM2CisJLmxvbmcJMzQ3Nzc4MjUyOAorCS5sb25nCTEwNjc5MjI1NzgKKwkubG9uZwkyOTgwNjYxODU4CisJLmxvbmcJMzE2NDk5MDAxOAorCS5sb25nCTM1OTg0MDE1MzYKKwkubG9uZwkxMDY3ODQ5ODk3CisJLmxvbmcJMTk3NDM5MzAzNAorCS5sb25nCTMxNzEzNTcwODMKKwkubG9uZwkyNDM1MjM1ODQwCisJLmxvbmcJMTA2Nzc3NzU3NworCS5sb25nCTEzODUyODkwMTEKKwkubG9uZwkxMDI0NjE1ODIzCisJLmxvbmcJMTg2NzMzMzYzMgorCS5sb25nCTEwNjc3MDU2MTQKKwkubG9uZwkzNDQyMjM2NjMzCisJLmxvbmcJMTAyNTMzNDM4NAorCS5sb25nCTM5OTkzMDE2MzIKKwkubG9uZwkxMDY3NjM0MDA0CisJLmxvbmcJMzUwNjQ3MjA3MworCS5sb25nCTEwMjUxMzI1NDYKKwkubG9uZwkyNTY2OTcxMzkyCisJLmxvbmcJMTA2NzU2Mjc0NQorCS5sb25nCTE0MjU3NTc1OTIKKwkubG9uZwkzMTcyMzU4NDYzCisJLmxvbmcJMTEyOTQzMTA0CisJLmxvbmcJMTA2NzQ5MTgzMworCS5sb25nCTE2OTM0MDcxNTYKKwkubG9uZwkzMTcyNDI2NjAzCisJLmxvbmcJMzA3OTkyOTg1NgorCS5sb25nCTEwNjczOTIxNTkKKwkubG9uZwkzOTk5OTQyNDU1CisJLmxvbmcJMTAxODU0OTM2OQorCS5sb25nCTI0NDM4Mzc0NDAKKwkubG9uZwkxMDY3MjUxNzAxCisJLmxvbmcJOTc0NTM0NDYwCisJLmxvbmcJMTAyMzk2MzQxMgorCS5sb25nCTM1OTM2NjY1NgorCS5sb25nCTEwNjcxMTE5MTcKKwkubG9uZwkyMjA0OTE1MDE4CisJLmxvbmcJMTAxMzUxNDQxNgorCS5sb25nCTM1NjQ1MTk0MjQKKwkubG9uZwkxMDY2OTcyNzk5CisJLmxvbmcJMzk3NzQ0MTY1OQorCS5sb25nCTMxNzA4Nzk4NjAKKwkubG9uZwkyMDExMDg2ODQ4CisJLmxvbmcJMTA2NjgzNDM0MworCS5sb25nCTU5MDE0NTUxNAorCS5sb25nCTEwMjUzOTAwMTEKKwkubG9uZwkzMjE2OTgyMDE2CisJLmxvbmcJMTA2NjY5NjU0MQorCS5sb25nCTM2MjkxMjAxMTAKKwkubG9uZwkxMDI0MzMwMzEzCisJLmxvbmcJMjE5NDEyODg5NgorCS5sb25nCTEwNjY1NTkzODgKKwkubG9uZwkyMzY3MDk4NTEyCisJLmxvbmcJMzE3MjI2MDMzOAorCS5sb25nCTI5MTYyMjA5MjgKKwkubG9uZwkxMDY2NDIyODc3CisJLmxvbmcJMjI2MjQzMTg4NgorCS5sb25nCTEwMjEyMjk0NDYKKwkubG9uZwkyMjYzOTQxMTIwCisJLmxvbmcJMTA2NjE3MjIxNAorCS5sb25nCTMxMTg1MDcyODcKKwkubG9uZwkxMDIxNDg0OTcwCisJLmxvbmcJMzA3NjI5MjYwOAorCS5sb25nCTEwNjU5MDE3MjYKKwkubG9uZwkxNDExNzM3ODAzCisJLmxvbmcJMzE3Mjk1NzE0NworCS5sb25nCTExODYxMzYwNjQKKwkubG9uZwkxMDY1NjMyNDg4CisJLmxvbmcJMzEwOTM0OTMzNworCS5sb25nCTEwMjUzOTczODMKKwkubG9uZwkzMDg1MzAzODA4CisJLmxvbmcJMTA2NTM2NDQ4NworCS5sb25nCTU4NDcxNTAzMQorCS5sb25nCTMxNzI1OTY1MTkKKwkubG9uZwkxODIxMDQ4ODMyCisJLmxvbmcJMTA2NDg0MjIxMQorCS5sb25nCTIxODIyNDY4OTUKKwkubG9uZwkzMTcyNTM2MjE0CisJLmxvbmcJNjk3MzY4NTc2CisJLmxvbmcJMTA2NDMxMTA5NAorCS5sb25nCTMxNTc1NjE3NjUKKwkubG9uZwkzMTcyNzE2MzU3CisJLmxvbmcJODk0MDQyMTEyCisJLmxvbmcJMTA2MzI2MDEzMQorCS5sb25nCTMyMzc5NTgxNTQKKwkubG9uZwkzMTcyNTg3MjkyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCUxfdGJsLEBvYmplY3QKKwkuc2l6ZQlMX3RibCwyMDY0CisJLmFsaWduIDE2Citsb2cyOgorCS5sb25nCTEzNTI2MjgyMjQKKwkubG9uZwkxMDY2NjE1ODI3CisJLmxvbmcJNTIxMzE5MjU2CisJLmxvbmcJMTAyMTMwODcyMQorCS50eXBlCWxvZzIsQG9iamVjdAorCS5zaXplCWxvZzIsMTYKKwkuYWxpZ24gMTYKK2NvZWZmOgorCS5sb25nCTMyNDg4Nzc4NzAKKwkubG9uZwkxMDc3MjUwMTY0CisJLmxvbmcJMTY5MTY3NjQyOQorCS5sb25nCTMyMjE3ODc0MDEKKwkubG9uZwk5NDUxMzI0NjUKKwkubG9uZwkzMjIzNzAxNzgzCisJLmxvbmcJMzcwMDgzMTMzNQorCS5sb25nCTEwNzM1MDY4MTgKKwkubG9uZwkyMTQxMDEwNTkzCisJLmxvbmcJMTA3NTIyNzU1MQorCS5sb25nCTM2OTg4MzE2MzcKKwkubG9uZwkzMjIwMzM5NDQyCisJLnR5cGUJY29lZmYsQG9iamVjdAorCS5zaXplCWNvZWZmLDQ4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMTAuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZzEwLjUtLi5fX190YWdfdmFsdWVfbG9nMTAuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMTAuMy0uLl9fX3RhZ192YWx1ZV9sb2cxMC4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMTAuNC0uLl9fX3RhZ192YWx1ZV9sb2cxMC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9lX3Bvdy5TIGIvbGlibS94ODZfNjQvZV9wb3cuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZWMzODI4Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9wb3cuUwpAQCAtMCwwICsxLDQyODIgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICBMZXQgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBsb2cyKHgpIGNhbGN1bGF0aW9uOgorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BwcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCpMSCoyXjkrMC41KSkvMl45CisvLyAgICBMSCBpcyBhIHNob3J0IGFwcHJveGltYXRpb24gZm9yIGxvZzIoZSkKKy8vCisvLyAgICBSZWR1Y2VkIGFyZ3VtZW50LCBzY2FsZWQgYnkgTEg6CisvLyAgICAgICAgICAgICAgICByPUIqbXgtTEggKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIGxvZzIoeCkgcmVzdWx0OiAgayAtIGxvZzIoQikgKyBwKHIpCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDggcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZzIoQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIGxvZzIoeCkgaXMgZm9ybWVkIGZyb20gaGlnaCBhbmQgbG93IHBhcnRzCisvLyAgICBGb3IgfHh8IGluIFsxLTEvMzIsIDErMS8xNiksIGEgc2xvd2VyIGJ1dCBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9uCisvLyAgICBiYXNlZCBvbSB0aGUgc2FtZSB0YWJsZSBkZXNpZ24gaXMgcGVyZm9ybWVkLgorLy8KKy8vICAgTWFpbiBwYXRoIGlzIHRha2VuIGlmIHwgZmxvb3IobG9nMih8bG9nMih8eHwpfCkgKyBmbG9vcihsb2cyfHl8KSB8IDwgOCwKKy8vICAgdG8gZmlsdGVyIG91dCBhbGwgcG90ZW50aWFsIE9GL1VGIGNhc2VzLgorLy8gICBleHAyKHkqbG9nMih4KSkgaXMgY29tcHV0ZWQgdXNpbmcgYW4gOC1iaXQgaW5kZXggdGFibGUgYW5kIGEgZGVncmVlIDUKKy8vICAgcG9seW5vbWlhbAorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgcG93KC0wLHkpID0gLUlORiBhbmQgcmFpc2VzIHRoZSBkaXZpZGUtYnktemVybyBleGNlcHRpb24gZm9yIHkgYW4gb2RkIAorLy8gIGludGVnZXIgPCAwLgorLy8gIHBvdygtMCx5KSA9ICtJTkYgYW5kIHJhaXNlcyB0aGUgZGl2aWRlLWJ5LXplcm8gZXhjZXB0aW9uIGZvciB5IDwgMCBhbmQgCisvLyAgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtMCx5KSA9IC0wIGZvciB5IGFuIG9kZCBpbnRlZ2VyID4gMC4KKy8vICBwb3coLTAseSkgPSArMCBmb3IgeSA+IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coLTEsLUlORikgPSAxLgorLy8gIHBvdygrMSx5KSA9IDEgZm9yIGFueSB5LCBldmVuIGEgTmFOLgorLy8gIHBvdyh4LC0wKSA9IDEgZm9yIGFueSB4LCBldmVuIGEgTmFOLgorLy8gIHBvdyh4LHkpID0gYSBOYU4gYW5kIHJhaXNlcyB0aGUgaW52YWxpZCBleGNlcHRpb24gZm9yIGZpbml0ZSB4IDwgMCBhbmQKKy8vICBmaW5pdGUgbm9uLWludGVnZXIgeS4KKy8vICBwb3coeCwtSU5GKSA9ICtJTkYgZm9yIHx4fDwxLgorLy8gIHBvdyh4LC1JTkYpID0gKzAgZm9yIHx4fD4xLgorLy8gIHBvdyh4LCtJTkYpID0gKzAgZm9yIHx4fDwxLgorLy8gIHBvdyh4LCtJTkYpID0gK0lORiBmb3IgfHh8PjEuCisvLyAgcG93KC1JTkYseSkgPSAtMCBmb3IgeSBhbiBvZGQgaW50ZWdlciA8IDAuCisvLyAgcG93KC1JTkYseSkgPSArMCBmb3IgeSA8IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coLUlORix5KSA9IC1JTkYgZm9yIHkgYW4gb2RkIGludGVnZXIgPiAwLgorLy8gIHBvdygtSU5GLHkpID0gK0lORiBmb3IgeSA+IDAgYW5kIG5vdCBhbiBvZGQgaW50ZWdlci4KKy8vICBwb3coK0lORix5KSA9ICswIGZvciB5IDwwLgorLy8gIHBvdygrSU5GLHkpID0gK0lORiBmb3IgeSA+MC4KKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBwb3cKK0VOVFJZKHBvdykKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisjIHBhcmFtZXRlciAyOiAleG1tMQorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfcG93LjE6CisgICAgICAgIHN1YnEgICAgICAkNDAsICVyc3AKKy4uX19fdGFnX3ZhbHVlX3Bvdy4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCAxNiglcnNwKQorLi5CMS4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICQweDNmZjAwMDAwMDAwMDAwMDAsICVyOQorICAgICAgICBtb3ZkICAgICAgJXI5LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEwNjkwODg3NjgsICVyOGQKKyAgICAgICAgbW92ZCAgICAgICVyOCwgJXhtbTcKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJDB4NzdmMDAwMDAwMDAwMDAwMCwgJXIxMAorICAgICAgICBtb3ZkICAgICAgJXIxMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBISUdIU0lHTUFTSyglcmlwKSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIExPRzJfRSglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGJzciAgICAgICAlZWN4LCAlZWN4CisgICAgICAgIHJjcHBzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlcjExZAorICAgICAgICBtb3ZkICAgICAgJXIxMSwgJXhtbTQKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtb3ZxICAgICAgJDAsICVyOAorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQtMSwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDQsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJWVkeAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcmR4CisgICAgICAgIG1vdmQgICAgICAlcmR4LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHN1YmwgICAgICAkMTYzNTEsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxLCAlZWF4CisgICAgICAgIGpiZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YmwgICAgICAkMSwgJWVheAorICAgICAgICBzYXJsICAgICAgJDQsICVlYXgKKyAgICAgICAgY3Z0c2kyc2QgICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICBjb2VmZiglcmlwKSwgJXhtbTEKKyAgICAgICAgbGVhICAgICAgIExfdGJsKCVyaXApLCAlcjExCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMSwgJWVheAorICAgICAgICBic3IgICAgICAgJWVheCwgJWVheAorICAgICAgICB1bnBja2xwZCAgJXhtbTMsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAzMitjb2VmZiglcmlwKSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRsICAgICAgJDE2NzYwODMyLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTAsICVlZHgKKyAgICAgICAgYWRkcGQgICAgIC0zNjQ4KCVyMTEsJXJkeCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICA0OCtjb2VmZiglcmlwKSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIG1vdncgICAgICAyMiglcnNwKSwgJWN4CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgIEhJR0hNQVNLX1koJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTU4NzIsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVheAorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIGNtcGwgICAgICAkNjI0LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTcwODAsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgbGVhICAgICAgIFRfZXhwKCVyaXApLCAlcjExCisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW02LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyNTUsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92YXBkICAgICglcjExLCVyZHgsOCksICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgZV9jb2VmZiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDE2K2VfY29lZmYoJXJpcCksICV4bW0zCisgICAgICAgIHNobGwgICAgICAkMTIsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVyOGQsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQtMTA0ODU3NiwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJXJjeCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJDB4M2ZlNjJlNDJmZWZhMzllZiwgJXI5CisgICAgICAgIG1vdmQgICAgICAlcjksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDE3LCAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgTE9HMl9FKCVyaXApLCAleG1tMgorICAgICAgICBwc3JsZCAgICAgJDIsICV4bW0wCisgICAgICAgIHJjcHBzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIEhJR0hTSUdNQVNLKCVyaXApLCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkLTEwMjQsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDAsICVyOGQKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBzYXJsICAgICAgJDQsICVlYXgKKyAgICAgICAgY3Z0c2kyc2QgICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgTE9HMl9FKCVyaXApLCAleG1tMgorICAgICAgICBwc3JsZCAgICAgJDIsICV4bW0wCisgICAgICAgIHJjcHBzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIEhJR0hTSUdNQVNLKCVyaXApLCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkLTEwMjQsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlcjhkCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGN2dHNpMnNkICAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIGNtcGwgICAgICAkNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgSEFMRk1BU0soJXJpcCksICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJDE3MDgwLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW01LCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBtb3ZkICAgICAgJXhtbTYsICVlYXgKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBsZWEgICAgICAgVF9leHAoJXJpcCksICVyMTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgZV9jb2VmZiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDE2K2VfY29lZmYoJXJpcCksICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNiwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDI1NSwgJWVheAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVheAorICAgICAgICBtb3ZhcGQgICAgKCVyMTEsJXJheCw4KSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBzYXJsICAgICAgJDgsICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVyOGQsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW02CisgICAgICAgIG1vdnEgICAgICAzMitlX2NvZWZmKCVyaXApLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTY1MjksICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDE3LCAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHNobGwgICAgICAkNCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE1LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNi4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjksICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF8xOC4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTkuMC4yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8yMC4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIyLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yMy4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjQuMC4yCisgICAgICAgIHRlc3RsICAgICAkMiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjUuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIxLjAuMjoKKyAgICAgICAgc2hybCAgICAgICQyMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIwNDcsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxMDc1LCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI2LjAuMgorICAgICAgICBjbXBsICAgICAgJDEwNzQsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIzLjAuMgorICAgICAgICBjbXBsICAgICAgJDEwMjMsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTcyMDgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjQuMC4yCisuTF8yVEFHX1BBQ0tFVF8yNS4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNy4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMjcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yNC4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMi4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMjYuMC4yOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjUuMC4yCisuTF8yVEFHX1BBQ0tFVF8yOC4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI5LjAuMgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMjkuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMzAuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMwLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMxLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8zMS4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8zMi4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE3MTg0LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMy4wLjIKKyAgICAgICAgdGVzdGwgICAgICQxLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNC4wLjIKKyAgICAgICAgdGVzdGwgICAgICQyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzM2LjAuMgorLkxfMlRBR19QQUNLRVRfMzMuMC4yOgorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM1LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMzYuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMxLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM3LjAuMgorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI4LjAuMgorICAgICAgICBjbXBsICAgICAgJDE3MjAwLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNS4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNzE4NCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMzIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM0LjAuMgorICAgICAgICBtb3ZsICAgICAgJDE3MjA4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMzQuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM1LjAuMgorLkxfMlRBR19QQUNLRVRfMzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzA3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgTE9HMl9FKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgYnNyICAgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJXI4ZAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzM0LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjgsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF8zNS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMDcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBMT0cyX0UoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW00LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGJzciAgICAgICAlZWN4LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkMCwgJXI4ZAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzE5LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMjIuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzExLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQzODQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHNocmwgICAgICAkMzEsICVyOGQKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbGVhICAgICAgIGxvZzIoJXJpcCksICVyMTEKKyAgICAgICAgbW92cSAgICAgICglcjExLCVyOCw4KSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQxNSwgJXI4ZAorICAgICAgICBvcmwgICAgICAgJXI4ZCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzM4LjAuMjoKKy5MXzJUQUdfUEFDS0VUXzM3LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMzkuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDI2LCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDAuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNDAuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOS4wLjIKKyAgICAgICAgc2hybCAgICAgICQyMSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDEwNzUsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQxLjAuMgorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTAyMywgJWVkeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNDEuMC4yCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxNzIwOCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQxLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80MS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQzLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ0LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF80Mi4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDMuMC4yCisuTF8yVEFHX1BBQ0tFVF80MS4wLjI6CisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIyLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF80NC4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIGRpdnNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDI3LCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0yLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTYsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80NS4wLjIKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHhvcmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ2LjAuMgorLkxfMlRBR19QQUNLRVRfNDcuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQxNiwgJXI4ZAorICAgICAgICBvcmwgICAgICAgJXI4ZCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQyNCwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzQ2LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJXI4ZAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDguMC4yCisgICAgICAgIG1vdnEgICAgICAkMHg4MDAwMDAwMDAwMDAwMDAwLCAlcjkKKyAgICAgICAgbW92ZCAgICAgICVyOSwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNDguMC4yOgorICAgICAgICBtb3ZsICAgICAgJDI1LCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW01LCAlZWN4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTQsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQtMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJC0zMSwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDQsICVlZHgKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgamxlICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ5LjAuMgorICAgICAgICBjbXBsICAgICAgJDIwLCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81MC4wLjIKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJWVheAorLkxfMlRBR19QQUNLRVRfNDkuMC4yOgorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzUwLjAuMjoKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ4LjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdncgICAgICAyMiglcnNwKSwgJWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVyZHgsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgcGFkZHEgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFuZHcgICAgICAkMzI3NTIsICVjeAorICAgICAgICBjbXB3ICAgICAgJDE2NTYwLCAlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRsICAgICAgJDE2MzUxLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDEwMjIsICVlYXgKKyAgICAgICAgY3Z0c2kyc2QgICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbGVhICAgICAgIExfdGJsKCVyaXApLCAlcjExCisgICAgICAgIG1vdnEgICAgICBjb2VmZl9oKCVyaXApLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdnEgICAgICBjb2VmZl9oKCVyaXApLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdnEgICAgICA4K2NvZWZmX2goJXJpcCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tMgorICAgICAgICB1bnBja2xwZCAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgIDgrY29lZmZfaCglcmlwKSwgJXhtbTAKKyAgICAgICAgYW5kbCAgICAgICQxNjc2MDgzMiwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEwLCAlZWR4CisgICAgICAgIGFkZHBkICAgICAtMzY0OCglcjExLCVyZHgpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgY29lZmYoJXJpcCksICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgNjQrY29lZmYoJXJpcCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgODArY29lZmYoJXJpcCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDMyK2NvZWZmKCVyaXApLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIEhJR0hNQVNLX0xPR19YKCVyaXApLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92dyAgICAgIDIyKCVyc3ApLCAlY3gKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW03LCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgOCtISUdITUFTS19ZKCVyaXApLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ1LjAuMgorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2NTc2LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81MS4wLjIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQxNzA4MCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIGVfY29lZmYoJXJpcCksICV4bW03CisgICAgICAgIG1vdmQgICAgICAleG1tNiwgJWVkeAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIGxlYSAgICAgICBUX2V4cCglcmlwKSwgJXIxMQorICAgICAgICBtb3ZhcGQgICAgMTYrZV9jb2VmZiglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgIDMyK2VfY29lZmYoJXJpcCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyNTUsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92YXBkICAgICglcjExLCVyZHgsOCksICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNiwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDgsICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMTcsICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNjUyOSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMworICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQyMCwgJWVheAorICAgICAgICBvcmwgICAgICAgJXI4ZCwgJWVheAorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUyLjAuMjoKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNDUuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0yLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNTMuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzUzLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzU0LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNTEuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDcuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80Ni4wLjIKKy5MXzJUQUdfUEFDS0VUXzU0LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzU1LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF81NS4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xNy4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgMjQoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDI0KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNTYuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDQwLCAlcnNwCisuLl9fX3RhZ192YWx1ZV9wb3cuNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfcG93LjU6CitFTkQocG93KQorIyAtLSBFbmQgIHBvdworCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorSElHSFNJR01BU0s6CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjUyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NTI0OAorCS50eXBlCUhJR0hTSUdNQVNLLEBvYmplY3QKKwkuc2l6ZQlISUdIU0lHTUFTSywxNgorCS5hbGlnbiAxNgorTE9HMl9FOgorCS5sb25nCTAKKwkubG9uZwkxMDczMTYwMTkyCisJLmxvbmcJMzcwOTEzODU3CisJLmxvbmcJMzIxMDU4NzEwNQorCS50eXBlCUxPRzJfRSxAb2JqZWN0CisJLnNpemUJTE9HMl9FLDE2CisJLmFsaWduIDE2Citjb2VmZjoKKwkubG9uZwkxODQxOTE0MTMwCisJLmxvbmcJMzIxMzA1OTQ0OAorCS5sb25nCTM5OTUzNDE5MzgKKwkubG9uZwkzMjE0NjA3MTA1CisJLmxvbmcJMjY3NzM4MTIxMAorCS5sb25nCTMyMTYzMjA3MzEKKwkubG9uZwkzMDExNzc5ODgyCisJLmxvbmcJMzIxODQ3OTU0MgorCS5sb25nCTEzNjc4MzIwMzUKKwkubG9uZwkxMDY2NDAzMDU4CisJLmxvbmcJMjg5NDI4NTI0MworCS5sb25nCTEwNjc5MzY5MjMKKwkubG9uZwkxMjE1MjIxNDUyCisJLmxvbmcJMTA2OTgzNTEwMgorCS5sb25nCTM3MDkxMzg1NworCS5sb25nCTMyMTA1ODcxMDUKKwkubG9uZwkyNjc3MzgxMjEwCisJLmxvbmcJMzIxNjMyMDczMQorCS5sb25nCTQxNzI2NDI0MjkKKwkubG9uZwkxMDU2MDY4MzgyCisJLmxvbmcJMTIxNTIyMTQ1MQorCS5sb25nCTEwNjk4MzUxMDIKKwkubG9uZwkxMDkyNjM4MTU2CisJLmxvbmcJMzE4NDkyNTYxOAorCS50eXBlCWNvZWZmLEBvYmplY3QKKwkuc2l6ZQljb2VmZiw5NgorCS5hbGlnbiAxNgorTF90Ymw6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI2ODkxNjIKKwkubG9uZwkyNTIzMDEzMDEzCisJLmxvbmcJMTA0NjE1NzM5OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjg1MDgxCisJLmxvbmcJMzg1MTUxMzc1OAorCS5sb25nCTMxOTA5Njg5NTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY4MTAwNworCS5sb25nCTIyNDE0NjY0NjYKKwkubG9uZwkxMDQ2MDQ0NTk5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI2NzY5MzcKKwkubG9uZwkyOTkwOTI4MjcxCisJLmxvbmcJMzE5MzA4NDk4NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjcyODczCisJLmxvbmcJMjkwNTExMjc0MworCS5sb25nCTMxOTI5MTg1NzYKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjY2ODgxNQorCS5sb25nCTMzNzA1OTEyNjQKKwkubG9uZwkxMDQ2MDUxNzkzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2NjQ3NjIKKwkubG9uZwkzMjcyMzYxMjE2CisJLmxvbmcJMzE5Mzc5MzY1MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjYwNzE0CisJLmxvbmcJNDY1NDY3NTUKKwkubG9uZwkxMDQzMjA2OTM2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI2NTY2NzIKKwkubG9uZwkzMDE3MDY3NzI0CisJLmxvbmcJMzE5MjE3Nzk2MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjUyNjM2CisJLmxvbmcJMzY4ODQzNjYzMQorCS5sb25nCTMxOTI4MTQ5NTYKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjY0ODYwNAorCS5sb25nCTE3MDc0NjE5OTIKKwkubG9uZwkzMTkzMDU2NzEyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2NDQ1NzgKKwkubG9uZwkxMTg4MTE0NTQwCisJLmxvbmcJMzE5MzYwMzA4NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjQwNTU3CisJLmxvbmcJMzUzMzE4MDU2NAorCS5sb25nCTEwNDU0NTkzNzUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjYzNjU0MgorCS5sb25nCTIwMDAzMzc2MzAKKwkubG9uZwkzMTkzNDc1NTU3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2MzI1MzIKKwkubG9uZwkzNjk4MDYyNDQzCisJLmxvbmcJMzE5Mzc1Mjc2NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjI4NTI3CisJLmxvbmcJMzE2MTYwNjEzOAorCS5sb25nCTMxOTA1MzI5OTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjYyNDUyOAorCS5sb25nCTMxNjUyNjU0NzgKKwkubG9uZwkzMTkzMTU4NDU5CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI2MjA1MzQKKwkubG9uZwkxNjAwOTQwMDc3CisJLmxvbmcJMzE5MzIyNjc3NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNjE2NTQ1CisJLmxvbmcJMTM2MzI3MjU1MgorCS5sb25nCTMxOTI2MTQyNzgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjYxMjU2MQorCS5sb25nCTM5NjYyMDk5MTAKKwkubG9uZwkzMTkxMjQ5NjU0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2MDg1ODMKKwkubG9uZwkxMDkzNjcyNzg5CisJLmxvbmcJMzE5MDYzNzMzMAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNjA0NjEwCisJLmxvbmcJMTczNTIzOTM1NworCS5sb25nCTMxOTI3NTM2MTYKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjYwMDY0MgorCS5sb25nCTE0NzA2NjUxNTYKKwkubG9uZwkxMDQ1NTU5Njk3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI1OTY2NzkKKwkubG9uZwkzODQwNjI0OTI2CisJLmxvbmcJMTA0NTkyODk1MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI1OTI3MjIKKwkubG9uZwk0MjU5MDcyNTU2CisJLmxvbmcJMzE5MTAzNTYyMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTg4NzY5CisJLmxvbmcJMzYxMzA4ODc1MworCS5sb25nCTMxOTIxNjU2ODEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjU4NDgyMgorCS5sb25nCTMxNzUyMzQ0NDYKKwkubG9uZwkxMDM5NDg2OTQ4CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI1ODA4ODAKKwkubG9uZwk4NTY1NzY0NDEKKwkubG9uZwkxMDQ1NzAyODEyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1NzY5NDMKKwkubG9uZwkyMjUzNDk4NzE5CisJLmxvbmcJMzE5MzI4NTMzNAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNTczMDExCisJLmxvbmcJMTU4NzA3MDcyOAorCS5sb25nCTMxOTA4MDE1NzcKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjU2OTA4NAorCS5sb25nCTE1OTk4NjMxNworCS5sb25nCTEwNDI1MTk0MzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjU2NTE2MworCS5sb25nCTM5OTk1NDE5NDkKKwkubG9uZwkzMTkyMDIwNDQwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI1NjEyNDYKKwkubG9uZwkzMjgxMzEwMjYyCisJLmxvbmcJMTA0NTU4Njc4NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI1NTczMzUKKwkubG9uZwkzNzc1MTc5NDA2CisJLmxvbmcJMTA0NTIyNjA1NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTUzNDI4CisJLmxvbmcJNjQzNDcyMzU2CisJLmxvbmcJMzE5MzY4MTc4NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTQ5NTI3CisJLmxvbmcJMjQ4MTY5Nzc1CisJLmxvbmcJMTA0NTA2ODk3NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNTQ1NjMwCisJLmxvbmcJMzA3MDE2NjMyCisJLmxvbmcJMTA0MjY0MDkzMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTQxNzM5CisJLmxvbmcJMzg3MjcxODUyNgorCS5sb25nCTMxODk3ODE0ODYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNTM3ODUzCisJLmxvbmcJOTY5NzExNjMwCisJLmxvbmcJMzE5MTcyNDczMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTMzOTcxCisJLmxvbmcJNDAxODgyMDM5NAorCS5sb25nCTMxOTMxODkyNjQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjUzMDA5NQorCS5sb25nCTMxMDIyMzMwOTIKKwkubG9uZwkxMDQ1NTEwMjI0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI1MjYyMjMKKwkubG9uZwkxMDI5MzA3OTEyCisJLmxvbmcJMzE5MzgxMjc3NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTIyMzU3CisJLmxvbmcJOTg0MDgzMTUzCisJLmxvbmcJMTA0NTk4NzQwMworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTE4NDk1CisJLmxvbmcJNDE3MTQ1NTQwMQorCS5sb25nCTMxOTMwODQwODAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjUxNDYzOQorCS5sb25nCTI1OTI2NjA3NTcKKwkubG9uZwkxMDQ2MTIxNjkxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1MTA3ODcKKwkubG9uZwkyOTY0MzY1NzEyCisJLmxvbmcJMTA0NjA1NDQ1MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTA2OTQwCisJLmxvbmcJMzc5Mjc3Nzg3NworCS5sb25nCTMxOTM3MDQ3MjkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjUwMzA5OAorCS5sb25nCTI5NDg1MzYxMDQKKwkubG9uZwkzMTkyNDY3MTAwCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0OTkyNjEKKwkubG9uZwkzODM2MDA1NjE5CisJLmxvbmcJMTA0MTg3MzE2NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0OTU0MjkKKwkubG9uZwkzMTI0NTQzMTYwCisJLmxvbmcJMTA0NDQwOTE2OAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDkxNjAxCisJLmxvbmcJMjg2MjI3OTMzCisJLmxvbmcJMTA0MTA2NTk5MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNDg3Nzc5CisJLmxvbmcJMjExMTI5Njc3NgorCS5sb25nCTMxOTM2MDQ0MTkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQ4Mzk2MQorCS5sb25nCTI2MDY4MjIwMDEKKwkubG9uZwkzMTkyOTQwMzk0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0ODAxNDgKKwkubG9uZwkxOTQ2OTY4MDAKKwkubG9uZwkxMDQ2MDI2MDYzCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0NzYzNDAKKwkubG9uZwk4NTM1NDUyCisJLmxvbmcJMTA0NjIwMDE3OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0NzI1MzcKKwkubG9uZwk5NTA0NjM2MjUKKwkubG9uZwkzMTkyNzMxODk3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0Njg3MzgKKwkubG9uZwk5NzM4MzE1NjYKKwkubG9uZwkxMDQ1NjgzMTk3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI0NjQ5NDQKKwkubG9uZwkzMzMwNDM1ODkyCisJLmxvbmcJMzE5MDI3NzU3NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDYxMTU1CisJLmxvbmcJMjA4NjkyMDk3CisJLmxvbmcJMzE5MzUxNzY1MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDU3MzcxCisJLmxvbmcJMjExMzA5NzQxNQorCS5sb25nCTEwNDQ3ODE3NDkKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjQ1MzU5MQorCS5sb25nCTEwODg4MDg5MzYKKwkubG9uZwkzMTkzNzE2MTQyCisJLmxvbmcJMAorCS5sb25nCTEwNzI0NDk4MTcKKwkubG9uZwkxNDQzMDAyMTI3CisJLmxvbmcJMzE5MzI1MDIwNQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDQ2MDQ2CisJLmxvbmcJMzk2NzM1NzQxOQorCS5sb25nCTEwNDYxMDk0NzcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQ0MjI4MQorCS5sb25nCTMwMTM1MTc4NjEKKwkubG9uZwkzMTkzMTU5NjkxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0Mzg1MjAKKwkubG9uZwkyNTI0NTg2Mjg2CisJLmxvbmcJMTA0NjEyMTk1MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDM0NzY0CisJLmxvbmcJMTQ3Njg5Mjg2MQorCS5sb25nCTEwNDY0MzQ3MzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjQzMTAxMworCS5sb25nCTMwODk2NDA5NTAKKwkubG9uZwkzMTkyMzA1NzgwCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjQyNzI2NgorCS5sb25nCTM4MTIyNTU1MjkKKwkubG9uZwkxMDQ1NzMwODc5CisJLmxvbmcJMAorCS5sb25nCTEwNzI0MjM1MjQKKwkubG9uZwk5OTUzNTQ3NjIKKwkubG9uZwkzMTkxNTI4NjczCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0MTk3ODYKKwkubG9uZwkzMjYwNTY3Njg0CisJLmxvbmcJMTA0NjI3MzY5NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDE2MDUzCisJLmxvbmcJMjczODIxMDI4NgorCS5sb25nCTMxOTE0NzE1MTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNDEyMzI1CisJLmxvbmcJMTkzMTg0OTgwNQorCS5sb25nCTEwNDQ1NjA0MDUKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQwODYwMQorCS5sb25nCTM1ODg5NjY1NQorCS5sb25nCTEwNDQwMjkyMzcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjQwNDg4MgorCS5sb25nCTIyMTQ1ODk4NDIKKwkubG9uZwkzMTkzMjAyMTI2CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI0MDExNjcKKwkubG9uZwkzMTE4MDk3MzYzCisJLmxvbmcJMzE5MjU5MjkwNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMzk3NDU3CisJLmxvbmcJMTgzNTk5ODg4NAorCS5sb25nCTEwNDU3ODgyNDcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjM5Mzc1MgorCS5sb25nCTE1ODU0ODgzMTkKKwkubG9uZwkxMDQ1Mjg5OTEwCisJLmxvbmcJMAorCS5sb25nCTEwNzIzOTAwNTEKKwkubG9uZwk0ODAxNjA5NDkKKwkubG9uZwkxMDQ2MDMwNDU1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIzODYzNTQKKwkubG9uZwkxODMyOTU5NjY3CisJLmxvbmcJMzE5MzAxMzY0NAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMzgyNjYyCisJLmxvbmcJMzYxMTM0NjU1NQorCS5sb25nCTEwNDQ1NDQyMTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjM3ODk3NQorCS5sb25nCTI3NDk0MTg3MzQKKwkubG9uZwkzMTkzNzEyNTgwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzNzUyOTIKKwkubG9uZwkyMzkwMDQzNDcyCisJLmxvbmcJMzE5MTcxMDY1OAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMzcxNjEzCisJLmxvbmcJMjgyODE5OTkwMgorCS5sb25nCTEwNDIyNjUyMTcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjM2NzkzOQorCS5sb25nCTU2OTIwOTMyMQorCS5sb25nCTMxOTEyMzA5ODIKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzY0MjcwCisJLmxvbmcJMjM2MTU5MTM5CisJLmxvbmcJMTA0NjI0MDEyMworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzNjA2MDUKKwkubG9uZwkxMDEwNjU2MjcwCisJLmxvbmcJMzE5MzgxMzk2OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMzU2OTQ0CisJLmxvbmcJMjQwOTA4MDU5NworCS5sb25nCTEwNDQwMjUwMjkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzUzMjg4CisJLmxvbmcJNTk4NDE5NTEzCisJLmxvbmcJMTA0MzMyNzM3MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzQ5NjM2CisJLmxvbmcJNDEwNTk1MDQ3OQorCS5sb25nCTEwNDU3NDc5NTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjM0NTk4OAorCS5sb25nCTM0MzI0Mzg1MworCS5sb25nCTMxOTI0MjAxNzIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjM0MjM0NQorCS5sb25nCTIwODg0Mzk1MzAKKwkubG9uZwkxMDQ2MTcyMDkxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMzODcwNworCS5sb25nCTQxMTc3MjExMDcKKwkubG9uZwkxMDQzODgyNDk2CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIzMzUwNzIKKwkubG9uZwkzMTkyMDMyOTU4CisJLmxvbmcJMzE5Mjk5ODY0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMzMxNDQyCisJLmxvbmcJMjM2NjUyMjUxOAorCS5sb25nCTEwNDU0MDE5NTcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjMyNzgxNworCS5sb25nCTM2ODU1MzMxNDEKKwkubG9uZwkzMTkzNzAxOTQ3CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMyNDE5NgorCS5sb25nCTEwNTg2NTg2NzIKKwkubG9uZwkzMTkzNTcyNDkyCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMyMDU3OQorCS5sb25nCTE2NjM0NjM0NworCS5sb25nCTEwNDU0NTYzNDgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjMxNjk2NgorCS5sb25nCTIwMjc4ODk3NzIKKwkubG9uZwkxMDQ2MzQ5MzAyCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzMTMzNTgKKwkubG9uZwkxMDc5NDk3ODg4CisJLmxvbmcJMTA0NDU4NTI1OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzA5NzU0CisJLmxvbmcJMjE4OTg1MTU3MworCS5sb25nCTEwNDUxMzI5OTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjMwNjE1NAorCS5sb25nCTI0ODY2MjkzODYKKwkubG9uZwkzMTkzNjEzNjI1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMwMjU1OQorCS5sb25nCTEyNjM2ODY1NzkKKwkubG9uZwkxMDQ0Nzg5MjU5CisJLmxvbmcJMAorCS5sb25nCTEwNzIyOTg5NjgKKwkubG9uZwkyNDEyMDYxNzk4CisJLmxvbmcJMzE5MTM2OTYyNworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyOTUzODEKKwkubG9uZwk1ODQzMTU3MTYKKwkubG9uZwkzMTkzMTQ0MTM1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyOTE3OTgKKwkubG9uZwk0NDkwMDA3MzgKKwkubG9uZwkxMDQ2MzMwNDUxCisJLmxvbmcJMAorCS5sb25nCTEwNzIyODgyMjAKKwkubG9uZwkzOTM4MzIwMTU3CisJLmxvbmcJMTA0NDQ0NjIyMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjg0NjQ1CisJLmxvbmcJMjk0OTg0NDU5NQorCS5sb25nCTMxOTM0NjIzNzEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI4MTA3NQorCS5sb25nCTI3NzEzMjk2NDIKKwkubG9uZwkzMTkyMTIxNTkzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjI3NzUxMAorCS5sb25nCTM5NzE1MDg2MjEKKwkubG9uZwkzMTkzMDAyODA2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIyNzM5NDgKKwkubG9uZwk0MDcxOTQyMzAxCisJLmxvbmcJMTA0NDk1MjYxOQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyNzAzOTEKKwkubG9uZwkyMDkwNTAyMzk1CisJLmxvbmcJMTA0NDY2MDU1NgorCS5sb25nCTAKKwkubG9uZwkxMDcyMjY2ODM4CisJLmxvbmcJMzY1NzUyMDk2MQorCS5sb25nCTMxOTM3NzA5MzgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI2MzI4OAorCS5sb25nCTE2MDgxNzUxMTAKKwkubG9uZwkxMDQ1NTQzMjM5CisJLmxvbmcJMAorCS5sb25nCTEwNzIyNTk3NDQKKwkubG9uZwkyNTA2OTI0MTgwCisJLmxvbmcJMTA0NTUzMDUwMQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjU2MjAzCisJLmxvbmcJMTgyMzg0OTMKKwkubG9uZwkxMDQ2MzA1NjIzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIyNTI2NjYKKwkubG9uZwkzODYyNjQwNDg3CisJLmxvbmcJMzE5Mjg4MjQwNworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjQ5MTM0CisJLmxvbmcJMzg1MDE1ODc2MQorCS5sb25nCTEwNDM2NTYwOTkKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI0NTYwNQorCS5sb25nCTIzNTY1MjQzNTYKKwkubG9uZwkxMDQ1OTE1Mjk2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIyNDIwODEKKwkubG9uZwk5MzY0OTcyODcKKwkubG9uZwkzMTkzODQyMzUzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIyMzg1NjEKKwkubG9uZwkyODQwODQ1MzQ0CisJLmxvbmcJMTA0NjQ1NDc3MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMjM1MDQ1CisJLmxvbmcJMzY4ODEwMDcxMworCS5sb25nCTEwNDQ4OTU0NTEKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjIzMTUzMworCS5sb25nCTQ3OTk3OTkxMworCS5sb25nCTMxOTM4NDI0NDIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjIyODAyNQorCS5sb25nCTEwMTYzMjE4OTgKKwkubG9uZwkxMDQ2MjUxMDMyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyMjQ1MjEKKwkubG9uZwk1NjIyMzI0NzQKKwkubG9uZwkzMTkxOTc0NTU4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjIyMTAyMgorCS5sb25nCTM4NzA1MTIwMjkKKwkubG9uZwkzMTkzMTEzODgxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyMTc1MjYKKwkubG9uZwkxMjM5NzgwNTQ3CisJLmxvbmcJMzE5MTU4MzYwNAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMjE0MDM0CisJLmxvbmcJMjgxNTQyMTMyNworCS5sb25nCTEwNDU4NzM2ODIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjIxMDU0NworCS5sb25nCTIzNzEwMDk1NjEKKwkubG9uZwkxMDQxNTA4NzkyCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyMDcwNjMKKwkubG9uZwkxMzA0NjM2NTI0CisJLmxvbmcJMzE5MjQxNDI4NAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMjAzNTgzCisJLmxvbmcJMjEwMTQ0ODU0CisJLmxvbmcJMzE5MzMyNzMzMworCS5sb25nCTAKKwkubG9uZwkxMDcyMjAwMTA4CisJLmxvbmcJMTQ1NDMwMzI3MgorCS5sb25nCTEwNDYzNjAwMjQKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjE5NjYzNgorCS5sb25nCTIwOTU3NTc1NDgKKwkubG9uZwkxMDQ0OTg0Njc3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxOTMxNjgKKwkubG9uZwkyMDI3MjE1NTgwCisJLmxvbmcJMzE5Mjg4MDkzMworCS5sb25nCTAKKwkubG9uZwkxMDcyMTg5NzA1CisJLmxvbmcJMjE0Nzk0ODgwCisJLmxvbmcJMTA0MzQ1Nzk1NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMTg2MjQ1CisJLmxvbmcJODg0NjI0OTE3CisJLmxvbmcJMTA0MzQ5NzA3OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMTgyNzg5CisJLmxvbmcJMjc5MjM5NjYzNAorCS5sb25nCTMxOTMxNzE2ODUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjE3OTMzNworCS5sb25nCTQxMjg5OTUyNTAKKwkubG9uZwkzMTkyMTAzNDM0CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxNzU4ODkKKwkubG9uZwkzMzM4NjYwNDMKKwkubG9uZwkxMDQ2MzcyMzI1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxNzI0NDUKKwkubG9uZwkyMTk0NDQ1NTQ0CisJLmxvbmcJMzE5Mzk1ODkwNQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTY5MDA1CisJLmxvbmcJMjMxNjA4MjI2OQorCS5sb25nCTMxOTIwNDE3MDMKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjE2NTU2OQorCS5sb25nCTU4MTAwNTA1NworCS5sb25nCTEwNDYzMjI4NDgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMTYyMTM3CisJLmxvbmcJMzI4MDc4NjUxMworCS5sb25nCTEwNDU0NTcyNTEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjE1ODcwOAorCS5sb25nCTI1NjcwOTMzNjEKKwkubG9uZwkxMDQ0NzEwMzU5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIxNTUyODQKKwkubG9uZwkzNzQwNDQzNTg0CisJLmxvbmcJMTA0NDIyNDIzNworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTUxODYzCisJLmxvbmcJMzk4MTAyODI3MgorCS5sb25nCTEwNDI1OTYzNTEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjE0ODQ0NgorCS5sb25nCTM4MjAwMTExMjAKKwkubG9uZwkzMTkxOTE1NjIzCisJLmxvbmcJMAorCS5sb25nCTEwNzIxNDUwMzQKKwkubG9uZwkyOTQ2NDM5NDg0CisJLmxvbmcJMzE5MzgzMTI3NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTQxNjI0CisJLmxvbmcJMzA3NTI3NDQyMgorCS5sb25nCTMxOTAxMzI0MzIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjEzODIxOQorCS5sb25nCTQ5NjA1MjE2NworCS5sb25nCTEwNDM2MTk3NjAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjEzNDgxOAorCS5sb25nCTI3MTEwNjU4OQorCS5sb25nCTMxOTIyNjUxNDkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjEzMTQyMAorCS5sb25nCTIwOTE5NTU2ODQKKwkubG9uZwkxMDQ0NDQzNTU0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMjgwMjYKKwkubG9uZwk3MjMyNDAxMDkKKwkubG9uZwkzMTkxMDA3NDE5CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMjQ2MzYKKwkubG9uZwkxNzQ4NjI5MDcwCisJLmxvbmcJMTA0NDUxMDA3NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTIxMjUwCisJLmxvbmcJMzI4OTUyMjA0NgorCS5sb25nCTMxOTMwOTUxNzgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjExNzg2OAorCS5sb25nCTM1OTkwNTIxNDYKKwkubG9uZwkzMTkzNzIwNDI3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxMTQ0ODkKKwkubG9uZwkyNDQ2NzU4MTM1CisJLmxvbmcJMzE5MzQzNjMwMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTExMTE0CisJLmxvbmcJMTY1MjE3MTA5NworCS5sb25nCTMxOTIxMzcxNzMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjEwNzc0MworCS5sb25nCTEzNTMwMDcxNTUKKwkubG9uZwkxMDQ0NTIzOTAyCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIxMDQzNzYKKwkubG9uZwk5OTA2MDExMDUKKwkubG9uZwkxMDQ2Mjk2NjYzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMDEwMTIKKwkubG9uZwkyMjI4NjI3NjE4CisJLmxvbmcJMzE5MzA0MTA0MAorCS5sb25nCTAKKwkubG9uZwkxMDcyMDk3NjUzCisJLmxvbmcJODEyNDg0NzU2CisJLmxvbmcJMzE5MTk1MDcyMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMDk0Mjk2CisJLmxvbmcJODE3ODMzMTMwCisJLmxvbmcJMzE5MjI3OTI0MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDkwOTQ0CisJLmxvbmcJMzU2MzIyODUyMQorCS5sb25nCTMxOTM4MTA5NTEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA4NzU5NQorCS5sb25nCTI3MjkxMDg4NTkKKwkubG9uZwkzMTkwOTM2MTg1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwODQyNTAKKwkubG9uZwkyMjQ5MTIxNjYyCisJLmxvbmcJMzE5MDYzOTY5MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDgwOTA5CisJLmxvbmcJNDA4MjQ3MTc0NQorCS5sb25nCTMxOTM5MjkzNjgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjA3NzU3MQorCS5sb25nCTI4MjczMjM4MDYKKwkubG9uZwkzMTkzNzA4NTYxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwNzQyMzcKKwkubG9uZwk3MzU4NjYxNjcKKwkubG9uZwkxMDQyNDM0NjkwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwNzA5MDcKKwkubG9uZwkzMjQwODA4ODg5CisJLmxvbmcJMzE5MTkxODQyMgorCS5sb25nCTAKKwkubG9uZwkxMDcyMDY3NTgxCisJLmxvbmcJNDY2NDgyNzc3CisJLmxvbmcJMzE4Njk2MjIyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyMDY0MjU4CisJLmxvbmcJMTU3NjA3NjI5NgorCS5sb25nCTEwNDU4NDkwNTYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA2MDkzOAorCS5sb25nCTI3NTE5MjM1NjAKKwkubG9uZwkzMTkxOTEwNzAzCisJLmxvbmcJMAorCS5sb25nCTEwNzIwNTc2MjMKKwkubG9uZwkxOTA4NzU1NTI3CisJLmxvbmcJMTA0NjQzNzUxNQorCS5sb25nCTAKKwkubG9uZwkxMDcyMDU0MzExCisJLmxvbmcJMzE3NTg0MTQxMQorCS5sb25nCTEwNDQ1NzI4ODYKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjA1MTAwMgorCS5sb25nCTE2MzMyNTg0NTAKKwkubG9uZwkzMTkyNjcwNDIwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwNDc2OTcKKwkubG9uZwkxODY3NzQ2NjU3CisJLmxvbmcJMTA0NTcyNjIwOQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDQ0Mzk2CisJLmxvbmcJMzM4OTY4ODY0CisJLmxvbmcJMzE5MzA4NDY2MgorCS5sb25nCTAKKwkubG9uZwkxMDcyMDQxMDk5CisJLmxvbmcJMTUwMTc0MjQ3MQorCS5sb25nCTMxOTE3NDIwMzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjAzNzgwNQorCS5sb25nCTQyNjY3NzU3ODYKKwkubG9uZwkzMTkyNjg2OTcwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwMzQ1MTQKKwkubG9uZwk0MjQ5MjgzNTUzCisJLmxvbmcJMTA0NTc2OTcyOAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDMxMjI3CisJLmxvbmcJMjc1ODM2Njg3MworCS5sb25nCTEwNDY0MDIxNjEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjAyNzk0NAorCS5sb25nCTIxNjExODY5OTAKKwkubG9uZwkxMDQ0NzM2ODY1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwMjQ2NjQKKwkubG9uZwk4MTAzMDAxNzEKKwkubG9uZwkxMDQ1NzQ4Nzc3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwMjEzODgKKwkubG9uZwkxODM2ODg5MjcKKwkubG9uZwkzMTkxNTE1NTgxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwMTgxMTUKKwkubG9uZwkzNjg4NzQwNzIKKwkubG9uZwkzMTkyMzYzNTc1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwMTQ4NDYKKwkubG9uZwkyNDU5MDkyOTcwCisJLmxvbmcJMTA0MTc5NDY0MAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIwMTE1ODEKKwkubG9uZwk4Njc0ODg2NDAKKwkubG9uZwkxMDQ2MzEwMjkxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjAwODMxOQorCS5sb25nCTUwMTQwODcxCisJLmxvbmcJMTA0MzMyNzMyOQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDA1MDYwCisJLmxvbmcJMTI0MTkwMjUxOAorCS5sb25nCTMxOTI3MzkyNTIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjAwMTgwNQorCS5sb25nCTEwMjc4ODE2NTkKKwkubG9uZwkzMTkzODU4Mzg4CisJLmxvbmcJMAorCS5sb25nCTEwNzE5OTg1NTQKKwkubG9uZwkzODQ1NzMyMgorCS5sb25nCTEwNDU0ODkxNzkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk5NTMwNgorCS5sb25nCTM0MzI5NjMzMzcKKwkubG9uZwkzMTkwOTY5MzQ3CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5OTIwNjEKKwkubG9uZwk1MzQ5MzE3OTIKKwkubG9uZwkxMDQ2MzAyNzM0CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5ODg4MjAKKwkubG9uZwkxODE3ODk1MjY4CisJLmxvbmcJMzE5MjU1MTg2MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTg1NTgyCisJLmxvbmcJMzU3MjM3MzgzCisJLmxvbmcJMzE5MTg3MDgzMworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxOTgyMzQ4CisJLmxvbmcJMTA4MjYyNDAxCisJLmxvbmcJMzE5MzM2NTg2NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTc5MTE3CisJLmxvbmcJMTk2NDcyOTI0NAorCS5sb25nCTEwNDI1MDIyNDkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTk3NTg5MAorCS5sb25nCTIwODg0NDY5NTcKKwkubG9uZwkxMDM4MDEwNTAzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NzI2NjYKKwkubG9uZwkyOTQ3MjM5NDQ3CisJLmxvbmcJMTA0NjM3Nzg0NQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxOTY5NDQ2CisJLmxvbmcJNzc0OTMyMDcyCisJLmxvbmcJMTA0NjA2NDg1NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxOTY2MjI5CisJLmxvbmcJNDA4MDkzNzU5MAorCS5sb25nCTMxOTMwNDEyODQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTk2MzAxNQorCS5sb25nCTIyMDgyNTE0NTQKKwkubG9uZwkxMDQ1OTQ1MDg5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NTk4MDUKKwkubG9uZwkyODUwOTI0NDc1CisJLmxvbmcJMTA0NTY1MDk1OQorCS5sb25nCTAKKwkubG9uZwkxMDcxOTU2NTk5CisJLmxvbmcJNzE0MDQwOTk3CisJLmxvbmcJMTA0NjI3NTE1MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTUzMzk1CisJLmxvbmcJODU1MzM3ODIKKwkubG9uZwkzMTkyODE2OTIwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NTAxOTUKKwkubG9uZwkxMjUyNTExMDA1CisJLmxvbmcJMTA0NDgwNTcwNgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTQ2OTk5CisJLmxvbmcJMjM4NDY1OTAzOAorCS5sb25nCTMxOTMzOTE2MDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk0MzgwNgorCS5sb25nCTQxNjQ4MTgxMworCS5sb25nCTEwNDM3MzAyMzMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxOTQwNjE2CisJLmxvbmcJMTY3NTQyNDQ5OQorCS5sb25nCTEwNDYzNDgwMzAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTkzNzQyOQorCS5sb25nCTExNzU5ODk1MTMKKwkubG9uZwkzMTkzMDA5MTEzCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE5MzQyNDYKKwkubG9uZwkyNDAwMDg0NjUwCisJLmxvbmcJMzE5MjQ1MTcxMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTMxMDY2CisJLmxvbmcJMTQ2NzMzNTY5MgorCS5sb25nCTMxOTMzNTA4NjgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTkyNzg5MAorCS5sb25nCTI2NjQ5MzgwMQorCS5sb25nCTEwNDQ5NTQ0ODEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTkyNDcxNworCS5sb25nCTM5MTkwOTM0NDUKKwkubG9uZwkxMDQ2MDIzNTc1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE5MjE1NDcKKwkubG9uZwkzMDE3NDA4NDgzCisJLmxvbmcJMTA0NDg4MDgyOAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE5MTgzODEKKwkubG9uZwk5NDg4NDk5NjYKKwkubG9uZwkzMTkzODkyMjI0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE5MTUyMTcKKwkubG9uZwkxODcwMjMyNjAwCisJLmxvbmcJMTA0NTc3NzIyOAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE5MTIwNTgKKwkubG9uZwk4MjIzODE0OTIKKwkubG9uZwkzMTkzNjM5MTg2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE5MDg5MDEKKwkubG9uZwk3ODgyNDM3MDUKKwkubG9uZwkxMDQ0OTY2MzQzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE5MDU3NDgKKwkubG9uZwkxMzQ0Mjc4ODA5CisJLmxvbmcJMTA0NDQyODU0NQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTAyNTk4CisJLmxvbmcJMTcyODY0MzAwCisJLmxvbmcJMTA0NTc2NTYwOAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODk5NDUxCisJLmxvbmcJMjExNTU1NDY3CisJLmxvbmcJMzE5Mjk2MzU3NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE4OTYzMDgKKwkubG9uZwkzMzczNDM4MDIzCisJLmxvbmcJMTA0NTY0MzE2OAorCS5sb25nCTAKKwkubG9uZwkxMDcxODkzMTY4CisJLmxvbmcJMjg2NzE4MDk2MAorCS5sb25nCTMxODk5NDU5OTgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxODkwMDMxCisJLmxvbmcJMzY3MjQzNjIKKwkubG9uZwkzMTkzMjQwNTg0CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE4ODY4OTcKKwkubG9uZwkyMTQwMTc2OTg0CisJLmxvbmcJMTA0NTk0NTM0OQorCS5sb25nCTAKKwkubG9uZwkxMDcxODgzNzY3CisJLmxvbmcJNDM2ODQyMzYwCisJLmxvbmcJMTA0MDcxMjU4NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODgwNjM5CisJLmxvbmcJMTIyNTE0NzMyOQorCS5sb25nCTMxOTM4MTQ1OTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTg3NzUxNQorCS5sb25nCTE1ODYxNTczNDgKKwkubG9uZwkzMTkxNjE0MzIyCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTg3NDM5NQorCS5sb25nCTMzMjkzMzI5MTgKKwkubG9uZwkxMDQxNjk5NzkxCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4NzEyNzcKKwkubG9uZwkxNjM1OTY4MDQxCisJLmxvbmcJMzE5MTc4Mzc1NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODY4MTYzCisJLmxvbmcJMjg3NjE1ODM4MgorCS5sb25nCTEwNDYwOTcwOTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTg2NTA1MgorCS5sb25nCTQyNjc1NTY5NjQKKwkubG9uZwkzMTkzNzIzMDAwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4NjE5NDQKKwkubG9uZwkxOTU0NzU5NDAKKwkubG9uZwkxMDQ1NTIwNzk1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4NTg4MzkKKwkubG9uZwkyMjM5MTkzNTE0CisJLmxvbmcJMTA0NjQ3ODY3NQorCS5sb25nCTAKKwkubG9uZwkxMDcxODU1NzM4CisJLmxvbmcJNDE2ODI3NTU5NgorCS5sb25nCTEwNDQ5MjYyODUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTg1MjYzOQorCS5sb25nCTE0MjUxNDExNAorCS5sb25nCTEwNDU1OTUxODIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTg0OTU0NAorCS5sb25nCTE5NDM0NTc5ODQKKwkubG9uZwkzMTkyOTMwMDE1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4NDY0NTIKKwkubG9uZwkyMDI2NTk0ODkKKwkubG9uZwkzMTkzOTI2MzE3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4NDMzNjMKKwkubG9uZwkyMjA4NDA4Nzg5CisJLmxvbmcJMzE5Mzg1NzQ4NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODQwMjc3CisJLmxvbmcJMjIzNzI5NzU1MgorCS5sb25nCTMxOTI5Mzk1NzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTgzNzE5NQorCS5sb25nCTI3MjY5MjA4MzkKKwkubG9uZwkxMDQ0MTkzOTU0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE4MzQxMTUKKwkubG9uZwkyMzM3NzMyMjA3CisJLmxvbmcJMzE5MzYxMTc3MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODMxMDM5CisJLmxvbmcJMTM5MDA4ODYwMgorCS5sb25nCTEwNDQwMDAzMTcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTgyNzk2NgorCS5sb25nCTM4MDYxODg3MzYKKwkubG9uZwkzMTkzNDYzOTEzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4MjQ4OTYKKwkubG9uZwkxNzk1Mjc2NTYwCisJLmxvbmcJMTA0MzY3MTk2NQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODIxODI5CisJLmxvbmcJMjk2MDc5Mjc5OQorCS5sb25nCTEwNDYyNDA0NzQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTgxODc2NQorCS5sb25nCTMzNTA1OTE1OTIKKwkubG9uZwkzMTkzMzMzOTM5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE4MTU3MDQKKwkubG9uZwk0MDg4NzA3NTQKKwkubG9uZwkzMTkzMzIyODU0CisJLmxvbmcJMAorCS5sb25nCTEwNzE4MTI2NDcKKwkubG9uZwk0MTQ2NzE3MTMyCisJLmxvbmcJMTA0NjA2MzUyMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODA5NTkyCisJLmxvbmcJMTY4MTExNDkxOQorCS5sb25nCTMxOTIxMTQzMTMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTgwNjU0MQorCS5sb25nCTEwOTgzOTMxMzcKKwkubG9uZwkzMTkwODQ2NzMyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4MDM0OTIKKwkubG9uZwkyNDM3NDg0OTgzCisJLmxvbmcJMzE5MzQ0ODcxOAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODAwNDQ3CisJLmxvbmcJMTAzNjgwOTE4NQorCS5sb25nCTMxOTIwMjM1MDEKKwkubG9uZwkwCisJLmxvbmcJMTA3MTc5NzQwNQorCS5sb25nCTY1OTY2ODg0OAorCS5sb25nCTMxOTM1OTYzMTIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTc5NDM2NQorCS5sb25nCTExMTIwNjI0NTkKKwkubG9uZwkzMTkyNzczMzc2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE3OTEzMjkKKwkubG9uZwk0MDgyOTU2MzM1CisJLmxvbmcJMTA0NTgzMDUxMworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxNzg4Mjk2CisJLmxvbmcJMjM4NzA4OTk2NQorCS5sb25nCTEwNDU1MzI2MDEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTc4NTI2NgorCS5sb25nCTE1MjIxMDE5ODAKKwkubG9uZwkzMTkzOTQxOTU3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3ODIyMzkKKwkubG9uZwkyMTU3MTk3NTg1CisJLmxvbmcJMzE4ODE5MzMwNQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzc5MjE1CisJLmxvbmcJOTQ2ODEwMjIwCisJLmxvbmcJMzE5MzIyMzgxOQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzc2MTk0CisJLmxvbmcJNDA2OTk0MjQ0NAorCS5sb25nCTMxOTM4Nzg1NDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzczMTc2CisJLmxvbmcJMTY5MzQ2MzQ0MAorCS5sb25nCTEwNDYzNjA1ODgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzcwMTYxCisJLmxvbmcJMTk1NDU0MzI1NAorCS5sb25nCTEwNDY0MDkzODEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc2NzE0OQorCS5sb25nCTEwNTA0NzEyNDkKKwkubG9uZwkzMTkzOTMzMDk1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc2NDE0MAorCS5sb25nCTEyNTYyNDA0NzgKKwkubG9uZwkxMDQ2NDU2ODY1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc2MTEzNAorCS5sb25nCTY3Njc2NDI1NAorCS5sb25nCTEwNDYwNTU1MDMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzU4MTMxCisJLmxvbmcJMTQyMTAzMjk2NworCS5sb25nCTEwNDQ3Nzk3ODYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzU1MTMxCisJLmxvbmcJMzg3MzU5OTIKKwkubG9uZwkzMTkyNzY2MzU1CisJLmxvbmcJMAorCS5sb25nCTEwNzE3NTIxMzQKKwkubG9uZwkyOTYwNjY5NjkwCisJLmxvbmcJMTA0NDQ4NDY4MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxNzQ5MTM5CisJLmxvbmcJNzg4NzA3MzgyCisJLmxvbmcJMTA0NTI5OTg5NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzQ2MTQ4CisJLmxvbmcJNjg1Njg5MzAwCisJLmxvbmcJMTA0MDc3ODgzMQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNzQzMTYwCisJLmxvbmcJMTE3MDk5NDE4MgorCS5sb25nCTEwNDYxNTkxNzQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc0MDE3NQorCS5sb25nCTY0NTkxNDM2CisJLmxvbmcJMTA0NjE1Mzg0OQorCS5sb25nCTAKKwkubG9uZwkxMDcxNzM3MTkzCisJLmxvbmcJMjMzODAzMTY1OQorCS5sb25nCTMxODk5OTc3MDIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTczNDIxMworCS5sb25nCTE5NDE2MjQ1NjgKKwkubG9uZwkzMTg2NzUyNjc2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTczMTIzNworCS5sb25nCTE0MDEyNTU1ODAKKwkubG9uZwkxMDQ2MzgzOTkwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE3MjgyNjMKKwkubG9uZwkzNzY4ODg0MjcKKwkubG9uZwkxMDQ1ODk2NDU2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTcyNTI5MworCS5sb25nCTI4MzE0MjQ2MzkKKwkubG9uZwkzMTkzNTM5MTA5CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE3MjIzMjUKKwkubG9uZwkzMzAzMTIzNjk2CisJLmxvbmcJMTA0NDU5OTQxNQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNzE5MzYwCisJLmxvbmcJMTA3NzI5NTMyOQorCS5sb25nCTMxODk4NzczNzIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTcxNjM5OAorCS5sb25nCTE0MzQwNjEwOTkKKwkubG9uZwkzMTg0NTI5NzcxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3MTM0MzkKKwkubG9uZwkyMTA0OTkxNTkwCisJLmxvbmcJMTA0NTA2MjA3NAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzEwNDgzCisJLmxvbmcJNzIyMDYwODY5CisJLmxvbmcJMzE5Mzc4ODUyNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3MDQ1ODAKKwkubG9uZwkzOTI4Nzk2NDg2CisJLmxvbmcJMTA0NjEyOTAyMAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE2OTg2ODgKKwkubG9uZwk1ODg4NDQ2MjgKKwkubG9uZwkxMDQ1NDkyMTM1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE2OTI4MDcKKwkubG9uZwkzMjY3MzkzNjYKKwkubG9uZwkzMTkzMDA0NDQ1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE2ODY5MzgKKwkubG9uZwkyNDU2NDM2MDQyCisJLmxvbmcJMTA0NjI3ODE2OQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNjgxMDgwCisJLmxvbmcJMjgzMTMwMzUxMgorCS5sb25nCTEwNDM2NzAwNDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNjc1MjM0CisJLmxvbmcJNjA3MjIzNDE4CisJLmxvbmcJMTA0NTUwNzMyMgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjY5Mzk5CisJLmxvbmcJNDI1NDkyMTMzMgorCS5sb25nCTMxOTMyOTA0ODMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY2MzU3NQorCS5sb25nCTkxNDk5NDMzMworCS5sb25nCTMxOTEyNjM4NTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTY1Nzc2MgorCS5sb25nCTQxNDcwNTAxODAKKwkubG9uZwkzMTkzMjI4NTUyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE2NTE5NjAKKwkubG9uZwk1OTQ1NTQxNTcKKwkubG9uZwkzMTkzNTAzOTM1CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDYxNzAKKwkubG9uZwkxMDYyODQ2Nzk2CisJLmxvbmcJMTA0NTk0NDMzMQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjM2MTA5CisJLmxvbmcJMjkwOTIzODg5MworCS5sb25nCTMxOTM0MzY4ODQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTYyNDU3MgorCS5sb25nCTE2ODI5MTgxMTkKKwkubG9uZwkxMDQyMjExODk5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2MTMwNTcKKwkubG9uZwkyNDE5MjA5NDI2CisJLmxvbmcJMTA0NTQzNzA2MgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjAxNTY0CisJLmxvbmcJMjk1MTM0MTMyMQorCS5sb25nCTMxOTAxOTMyMTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTU5MDA5MworCS5sb25nCTMwODQ5MDA4NzUKKwkubG9uZwkzMTkyMzk0OTA3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE1Nzg2NDMKKwkubG9uZwk5OTk1Njc0NTQKKwkubG9uZwkxMDQ2NDMzNDQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE1NjcyMTUKKwkubG9uZwkxNTcwMTAxODU3CisJLmxvbmcJMzE5MzI5MTE2MAorCS5sb25nCTAKKwkubG9uZwkxMDcxNTU1ODA5CisJLmxvbmcJMTA4MDY0Nzg4MQorCS5sb25nCTMxODUxNTQ1ODUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTU0NDQyNAorCS5sb25nCTM1MjYzMDkxNzcKKwkubG9uZwkxMDQ0ODQzNjQwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE1MzMwNjAKKwkubG9uZwkyMjEzNDYzMzQ5CisJLmxvbmcJMzE5MTczODkzMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNTIxNzE4CisJLmxvbmcJMTAzOTkyNTE5NQorCS5sb25nCTMxOTI2MTgzNTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTUxMDM5NworCS5sb25nCTIxMTU3NTcyODAKKwkubG9uZwkzMTkzNjcxNTY3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE0OTkwOTcKKwkubG9uZwkxMTg4NzUxNDk1CisJLmxvbmcJMzE5MTE0NTU2MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNDg3ODE4CisJLmxvbmcJMzk4MzQ2MTQ0OQorCS5sb25nCTMxOTM4OTcwMjkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ3NjU2MAorCS5sb25nCTc4MjE0MTUwMAorCS5sb25nCTEwNDI4Nzk5NjIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ2NTMyMworCS5sb25nCTQwMzg5MDQ2MjYKKwkubG9uZwkxMDQ1MDYzODgxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE0NTQxMDcKKwkubG9uZwkyNjEzMDM2OTIxCisJLmxvbmcJMzE5MzIxNzY0MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNDQyOTEyCisJLmxvbmcJMjA5NTcyMzQzNQorCS5sb25nCTEwNDQ2MjkxNzUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTQzMTczNworCS5sb25nCTM4Nzk3OTU5NzQKKwkubG9uZwkxMDQ1NzY3ODc0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE0MjA1ODMKKwkubG9uZwkyNjYyMTk4MDQyCisJLmxvbmcJMzE5MTQzNDYzNworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNDA5NDQ5CisJLmxvbmcJNDAzNzYwNTcyMgorCS5sb25nCTMxOTM3MDMwOTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTM5ODMzNgorCS5sb25nCTE4NjAzMzE4MzUKKwkubG9uZwkxMDQwODE0ODIyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEzODcyNDMKKwkubG9uZwkxNTIyOTcyMDMzCisJLmxvbmcJMzE5MDMwNTk3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMzc2MTcxCisJLmxvbmcJMjM2MTUzNDIwNworCS5sb25nCTEwNDM2OTkzNjYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTM2NTExOQorCS5sb25nCTQxODAzMDkxNzkKKwkubG9uZwkxMDQ0MTQyMDk5CisJLmxvbmcJMAorCS5sb25nCTEwNzEzNTQwODcKKwkubG9uZwkxMjAxMDM4NTI4CisJLmxvbmcJMzE5Mjk2ODc3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxMzQzMDc1CisJLmxvbmcJMTM0MjQ3ODE3MQorCS5sb25nCTMxOTMyNTEyMTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTMzMjA4MworCS5sb25nCTM4MzY4ODMzNDgKKwkubG9uZwkzMTkzNDcyMDA3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEzMjExMTAKKwkubG9uZwkzODY0ODc0MjUwCisJLmxvbmcJMTA0NTU5MzEyNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMzEwMTU4CisJLmxvbmcJMjE2OTQ5NDk5OAorCS5sb25nCTEwNDYwNDUzNDYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTI5OTIyNgorCS5sb25nCTM3ODUxNjUwNzUKKwkubG9uZwkzMTkzMzE5MjQ2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEyODgzMTMKKwkubG9uZwkxMTM3NjkyNjc4CisJLmxvbmcJMzE5MjcxNjc3OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjc3NDIwCisJLmxvbmcJMTc1MjEwNzU5OAorCS5sb25nCTEwNDYzNjYxMjAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTI2NjU0NgorCS5sb25nCTE5MTI2NTY5MTIKKwkubG9uZwkxMDQ2MzUyMjgxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEyNTU2OTIKKwkubG9uZwkyODgyNjc2MzM0CisJLmxvbmcJMTA0NjQwNjM1MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjQ0ODU4CisJLmxvbmcJOTYzNjEyNDYwCisJLmxvbmcJMTA0NTI4MjgxMQorCS5sb25nCTAKKwkubG9uZwkxMDcxMjM0MDQzCisJLmxvbmcJMzgxMTI1NTc3MworCS5sb25nCTEwNDYyMzE2MzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTIyMzI0NworCS5sb25nCTExMjYwNTU5ODkKKwkubG9uZwkzMTkyMjI0MDM3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEyMTI0NzAKKwkubG9uZwkyMDc5MTQ1NDI3CisJLmxvbmcJMTA0NDQzMjQxMworCS5sb25nCTAKKwkubG9uZwkxMDcxMjAxNzEzCisJLmxvbmcJMzYxMTU5NTYyMQorCS5sb25nCTEwNDMzNTg3NDUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTE5MDk3NAorCS5sb25nCTM5MDUyMjc2OQorCS5sb25nCTEwNDU4ODgyNTIKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTE4MDI1NQorCS5sb25nCTQwODc5Mzk3MjMKKwkubG9uZwkzMTkyOTMwNzQ1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzExNjk1NTQKKwkubG9uZwkxNDUxNDk0NDgwCisJLmxvbmcJMzE5MDIxOTI3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMTU4ODczCisJLmxvbmcJNDI3MTc2MTk0CisJLmxvbmcJMzE5MzA0MjAyMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTQ4MjEwCisJLmxvbmcJMTg4MjM4MTk0OAorCS5sb25nCTMxOTI3Mjc5NDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTEzNzU2NgorCS5sb25nCTM3MzYzMTM3NzEKKwkubG9uZwkzMTkyMDg3MDE5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzExMjY5NDEKKwkubG9uZwkxNTYwMzk4ODE2CisJLmxvbmcJMzE5MzE4NTcxNQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTE2MzM0CisJLmxvbmcJMTAyMTk0MjQ0MQorCS5sb25nCTEwNDE1MjY2OTYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTEwNTc0NgorCS5sb25nCTM1MTcwODAyNDkKKwkubG9uZwkzMTkzNTc2MDQxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEwOTUxNzYKKwkubG9uZwkyMjQ4NTg5ODc4CisJLmxvbmcJMTA0NDUyNzYyNAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMDg0NjI1CisJLmxvbmcJMjQxMjg5NjY5NQorCS5sb25nCTEwNDYxMTI4NjcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTA3NDA5MgorCS5sb25nCTM4MzQ3MjU3MzgKKwkubG9uZwkxMDQ0NTYyMzc4CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEwNjM1NzgKKwkubG9uZwkxMTUwOTIwNDA3CisJLmxvbmcJMTA0Mzc2ODk4NgorCS5sb25nCTAKKwkubG9uZwkxMDcxMDUzMDgyCisJLmxvbmcJMTM3OTM5MzQyOAorCS5sb25nCTMxODg2OTA2OTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTA0MjYwNAorCS5sb25nCTMwNTgxODMyNzgKKwkubG9uZwkzMTkzNjE3NjU1CisJLmxvbmcJMAorCS5sb25nCTEwNzEwMzIxNDQKKwkubG9uZwk0MjExMzM2NjUKKwkubG9uZwkzMTkzNDE3MTg2CisJLmxvbmcJMAorCS5sb25nCTEwNzEwMjE3MDIKKwkubG9uZwkyODYwMTYxMzU3CisJLmxvbmcJMzE5MTgxNjEyNQorCS5sb25nCTAKKwkubG9uZwkxMDcxMDExMjc4CisJLmxvbmcJMTc0MjQwNTk2NAorCS5sb25nCTEwNDM1ODAyNDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTAwMDg3MgorCS5sb25nCTI4MjEyMTU5MjcKKwkubG9uZwkzMTg4OTg0MjczCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5OTA0ODMKKwkubG9uZwk1MTAyNzU1OTcKKwkubG9uZwkxMDQ1ODEzNDAxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5ODAxMTMKKwkubG9uZwkzMDQyNjY1ODgKKwkubG9uZwkzMTkxMTkzNTM2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5Njk3NjAKKwkubG9uZwkxODU0Nzg0MjExCisJLmxvbmcJMTA0NjMwMjA3MworCS5sb25nCTAKKwkubG9uZwkxMDcwOTU5NDI2CisJLmxvbmcJMzc3MzA4Mjg1NAorCS5sb25nCTMxOTMwMDg4OTkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDk0OTEwOAorCS5sb25nCTMwMDM1NzIzOTIKKwkubG9uZwkxMDQ2NDA0ODc5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5Mzg4MDgKKwkubG9uZwkxNzAyMTQ5MjA0CisJLmxvbmcJMTA0NjQwNzI1NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwOTI4NTI2CisJLmxvbmcJMzkzNTMxNDQzOQorCS5sb25nCTEwNDY0MzgyODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDkxODI2MQorCS5sb25nCTI2NzcwODc2MDkKKwkubG9uZwkxMDQ1NTAxNzQ5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5MDgwMTQKKwkubG9uZwk0MTkwNTk4MDM5CisJLmxvbmcJMzE5MzY0MDUxNQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODk3Nzg0CisJLmxvbmcJMzY4ODc0MDcyCisJLmxvbmcJMTA0NDg3OTkyNworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwODg3NTcxCisJLmxvbmcJMzU4NDA1MjY5NworCS5sb25nCTMxOTIwMjQ2NjIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDg3NzM3NQorCS5sb25nCTM3NjIzMDc4MjkKKwkubG9uZwkxMDQ1ODg2OTE4CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA4NjcxOTcKKwkubG9uZwk0OTU3MTA5MjAKKwkubG9uZwkxMDQ2MzE3MDcyCisJLmxvbmcJMAorCS5sb25nCTEwNzA4NTcwMzYKKwkubG9uZwkyMjkyNzY4MjM4CisJLmxvbmcJMzE5MDg4NzUwOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwODQ2ODkxCisJLmxvbmcJMTA0NDA3ODE1MQorCS5sb25nCTMxOTM3NzI5MTQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDgzNjc2NAorCS5sb25nCTMyNjYwMTA0NTcKKwkubG9uZwkxMDQzNDQzNzU1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA4MjY2NTMKKwkubG9uZwkzNTcxNjY1ODIyCisJLmxvbmcJMTA0NTU0NzgyMworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODE2NTYwCisJLmxvbmcJMzkzMzQ4MzQ3CisJLmxvbmcJMzE5MDUyNTE0MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwODA2NDgzCisJLmxvbmcJNDI0MTcyMjQ5OAorCS5sb25nCTMxOTIwODQxOTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDc5NjQyMworCS5sb25nCTE2OTM3OTcwNjgKKwkubG9uZwkzMTkyODA3OTcyCisJLmxvbmcJMAorCS5sb25nCTEwNzA3ODYzODAKKwkubG9uZwkyODYwMDg2NzQ1CisJLmxvbmcJMTA0NjMzMTY0NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNzc2MzUzCisJLmxvbmcJMTM2NjE0MTc1OQorCS5sb25nCTMxOTI5NzkzNjMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDc2NjM0MworCS5sb25nCTczNzg5OTI4MworCS5sb25nCTEwNDU4NTMzNDYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDc1NjM0OQorCS5sb25nCTg4NzM0ODczCisJLmxvbmcJMTA0Mzg4MTI1NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzQ2MzcyCisJLmxvbmcJMTQzODAwMzMxNQorCS5sb25nCTMxOTI5MTcxMDEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDczNjQxMgorCS5sb25nCTEwNjY1MDU1MzAKKwkubG9uZwkxMDQzODk2Njk1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA3MjY0NjcKKwkubG9uZwkyNzA2NjUzMDQxCisJLmxvbmcJMzE5MTExMzY0MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzE2NTM5CisJLmxvbmcJMTMyMTc2NDQ3NgorCS5sb25nCTEwMzk1NzM3MjQKKwkubG9uZwkwCisJLmxvbmcJMTA3MDcwNjYyOAorCS5sb25nCTExMjY3NTMyMTEKKwkubG9uZwkxMDQ0NTAyOTc2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA2OTY3MzIKKwkubG9uZwk3NzM2NDI4ODQKKwkubG9uZwkxMDQ0MTEwNzI3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA2ODY4NTMKKwkubG9uZwkxMjYzNzQzNDA2CisJLmxvbmcJMzE5MzExNTI3OAorCS5sb25nCTAKKwkubG9uZwkxMDcwNjc2OTkwCisJLmxvbmcJMzExNTIzNzczMgorCS5sb25nCTMxOTMwODkxNzYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDY2NzE0MgorCS5sb25nCTM2NDI2MjY4MzgKKwkubG9uZwkzMTkxMTQ2MDMyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA2NTczMTEKKwkubG9uZwkyMDkxNjk2NDI4CisJLmxvbmcJMTA0NDMzNzE3NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwNjQ3NDk2CisJLmxvbmcJMzE2ODk1ODM5MQorCS5sb25nCTEwNDQxOTc1NjgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDYzNzY5NworCS5sb25nCTcxMTE0ODY2OQorCS5sb25nCTMxOTMxODEwNDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDYyNzkxMworCS5sb25nCTQyMDcxODI3NzMKKwkubG9uZwkzMTkzNDAyMDkyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA2MTgxNDUKKwkubG9uZwk5MTgwNzA2NDAKKwkubG9uZwkzMTkyOTAyODQ1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA2MDgzOTMKKwkubG9uZwkzMTM1NTcxNDQ3CisJLmxvbmcJMzE5MjE5MzkyOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTk4NjU3CisJLmxvbmcJMTA0MzcwNTUxNworCS5sb25nCTMxOTMxODg2MDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDU4MTc3NworCS5sb25nCTE4ODY2ODA0OTIKKwkubG9uZwkxMDQzODkwMjg2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1NjIzNjcKKwkubG9uZwkzMzczNzk5NDIwCisJLmxvbmcJMzE5MTkxNzgwMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTQyOTg4CisJLmxvbmcJMjkxOTYxODAyNQorCS5sb25nCTMxOTI0NjE3NTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDUyMzY0MAorCS5sb25nCTI5MjYzNjUxNTgKKwkubG9uZwkzMTkzMTEzNDkyCisJLmxvbmcJMAorCS5sb25nCTEwNzA1MDQzMjMKKwkubG9uZwk1MTk5Nzg2MzgKKwkubG9uZwkxMDQ1OTE4ODQ2CisJLmxvbmcJMAorCS5sb25nCTEwNzA0ODUwMzcKKwkubG9uZwkzNjY1MzUzMTUxCisJLmxvbmcJMzE5MzU0NjI0OAorCS5sb25nCTAKKwkubG9uZwkxMDcwNDY1NzgxCisJLmxvbmcJMjMyNzcxODk1OAorCS5sb25nCTEwNDUwNTA3OTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MDQ0NjU1NgorCS5sb25nCTM0NTMyNjg2MQorCS5sb25nCTMxODgyMjQ3MTYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDQyNzM2MQorCS5sb25nCTIyNjM3NDc0ODgKKwkubG9uZwkzMTkyODcxMzI4CisJLmxvbmcJMAorCS5sb25nCTEwNzA0MDgxOTcKKwkubG9uZwkzODk0MTkyMjY0CisJLmxvbmcJMTA0NTY5MzEyMworCS5sb25nCTAKKwkubG9uZwkxMDcwMzg5MDYzCisJLmxvbmcJOTk0MzIxNTkzCisJLmxvbmcJMTA0NjM0NzIwMworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMzY5OTU5CisJLmxvbmcJMzU0MDM2NjcwMAorCS5sb25nCTEwNDIyOTYyMzAKKwkubG9uZwkwCisJLmxvbmcJMTA3MDM1MDg4NgorCS5sb25nCTk2NjQyMDc1MgorCS5sb25nCTMxOTI0MDA0MTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDMzMTg0MgorCS5sb25nCTE5NTQ1MTExNjAKKwkubG9uZwkzMTkzNDY3NzYyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAzMTI4MjgKKwkubG9uZwkxODc1MDAzMDQwCisJLmxvbmcJMTA0NTQ4NTYyOQorCS5sb25nCTAKKwkubG9uZwkxMDcwMjkzODQ1CisJLmxvbmcJNDAwMzM3MjAwNQorCS5sb25nCTMxOTM3MTQxMDkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDI3NDg5MAorCS5sb25nCTIyMTYwODM2NDQKKwkubG9uZwkxMDQ1NzIwMzk5CisJLmxvbmcJMAorCS5sb25nCTEwNzAyNTU5NjYKKwkubG9uZwkxMjQwOTg1NzQzCisJLmxvbmcJMTA0NTg3OTQxNAorCS5sb25nCTAKKwkubG9uZwkxMDcwMjM3MDcxCisJLmxvbmcJMTU3MzA2NDE2MgorCS5sb25nCTEwNDY0Mjc5MTYKKwkubG9uZwkwCisJLmxvbmcJMTA3MDIxODIwNgorCS5sb25nCTI1MDAxNjY1ODIKKwkubG9uZwkzMTkzODQ4MTY5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAxOTkzNjkKKwkubG9uZwk4NjIxMzE1MzkKKwkubG9uZwkxMDQ1NjA2MDY1CisJLmxvbmcJMAorCS5sb25nCTEwNzAxODA1NjMKKwkubG9uZwkzNzMzNDI3NjIyCisJLmxvbmcJMzE5MzU0NTk4OAorCS5sb25nCTAKKwkubG9uZwkxMDcwMTYxNzg1CisJLmxvbmcJMTI0NTE1MzU4CisJLmxvbmcJMTA0NTUwNDc2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMTQzMDM2CisJLmxvbmcJNjg5MjI4MDA3CisJLmxvbmcJMTA0NDIzODQzNgorCS5sb25nCTAKKwkubG9uZwkxMDcwMTI0MzE3CisJLmxvbmcJOTc2Mjg0ODM1CisJLmxvbmcJMzE4OTg3OTk3OAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMTA1NjI2CisJLmxvbmcJMjk5NzQ0NjIyNAorCS5sb25nCTMxOTMzOTQyNDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDA4Njk2NAorCS5sb25nCTU5NDk4NTE2MworCS5sb25nCTMxOTA0NTM0NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDA2ODMzMQorCS5sb25nCTM2MzQ0MTEwOTEKKwkubG9uZwkzMTkzMDEyNjYyCisJLmxvbmcJMAorCS5sb25nCTEwNzAwNDk3MjcKKwkubG9uZwk4NDEzMTY0ODIKKwkubG9uZwkzMTkyNTUxNjA0CisJLmxvbmcJMAorCS5sb25nCTEwNzAwMzExNTEKKwkubG9uZwk1MTg5NDk4NDkKKwkubG9uZwkzMTg5NTA1NjkzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAwMTI2MDMKKwkubG9uZwkyMDc2MzM2MDQKKwkubG9uZwkxMDQzNzkxMzA1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5OTQwODQKKwkubG9uZwk5MjU0MTU2MzEKKwkubG9uZwkzMTg5NjU4NjcwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5NzU1OTMKKwkubG9uZwkzMzQ4Nzc1MDE1CisJLmxvbmcJMTA0NjIzMTA1NQorCS5sb25nCTAKKwkubG9uZwkxMDY5OTU3MTMxCisJLmxvbmcJNDEzNzU5Mzk2MQorCS5sb25nCTEwNDU3NjA2NDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTkzODY5NgorCS5sb25nCTMwODEyMDc5NzIKKwkubG9uZwkxMDQ2MzE5NjUyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5MjAyOTAKKwkubG9uZwkyOTEyODExODA2CisJLmxvbmcJMzE5MzI1MDg2MworCS5sb25nCTAKKwkubG9uZwkxMDY5OTAxOTEyCisJLmxvbmcJMTcwNDY2MzIzMAorCS5sb25nCTMxOTI2NTExNzEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTg4MzU2MQorCS5sb25nCTE3MjY4ODc0NzMKKwkubG9uZwkzMTkzNDI3ODE3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk4NjUyMzgKKwkubG9uZwk1MTYzMDI4NzMKKwkubG9uZwkxMDQyNTU2OTE5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk4NDY5NDMKKwkubG9uZwkzNzM3Mjc3Mjg5CisJLmxvbmcJMzE5MjA4MzUwNQorCS5sb25nCTAKKwkubG9uZwkxMDY5ODI4Njc2CisJLmxvbmcJMjgyOTkwOTA2NworCS5sb25nCTMxOTE2Mjg1MjAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTgxMDQzNgorCS5sb25nCTM0NzQ4MDAyOTkKKwkubG9uZwkzMTg3Mzg0OTkxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk3OTIyMjMKKwkubG9uZwkyMDQxMjkxNzU0CisJLmxvbmcJMzE4NjczNTA0OAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5Nzc0MDM4CisJLmxvbmcJMzEwMDczOTI5MAorCS5sb25nCTMxOTI5OTE5NTEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTc1NTg4MAorCS5sb25nCTI2NDE2ODY4NjYKKwkubG9uZwkxMDQyNDQ5ODQ2CisJLmxvbmcJMAorCS5sb25nCTEwNjk3Mzc3NTAKKwkubG9uZwkxMzUzNjEyNDU3CisJLmxvbmcJMzE5MjkyODU0NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NzE5NjQ2CisJLmxvbmcJMTgyMzM5ODE5MAorCS5sb25nCTMxOTMxMjUxNTYKKwkubG9uZwkwCisJLmxvbmcJMTA2OTcwMTU3MAorCS5sb25nCTI2MjkxMDg1NTgKKwkubG9uZwkzMTkyOTgzMDg5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk2ODM1MjAKKwkubG9uZwkzMTQ4ODkwODAKKwkubG9uZwkzMTkzMTc4OTQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk2NjU0OTcKKwkubG9uZwkzNDI2ODQ2NDcwCisJLmxvbmcJMTA0NjA1NTAzNAorCS5sb25nCTAKKwkubG9uZwkxMDY5NjQ3NTAyCisJLmxvbmcJMjQ1MTUyMTc5OAorCS5sb25nCTMxOTMwODE0NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTYyOTUzMgorCS5sb25nCTk2MzIwMDAzMAorCS5sb25nCTEwNDYzMTUwODkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTYxMTU5MAorCS5sb25nCTM2NDQ5NzY5ODcKKwkubG9uZwkxMDQ2NDUwMjk3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk1OTM2NzQKKwkubG9uZwkxNTE0MDQ1ODc0CisJLmxvbmcJMzE5MzMzNzQ4OQorCS5sb25nCTAKKwkubG9uZwkxMDY5NTc1Nzg1CisJLmxvbmcJMjY0MDc1MjYxNQorCS5sb25nCTMxOTI3MzQ3MTUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU1NzkyMgorCS5sb25nCTE3NzM4MTczMAorCS5sb25nCTMxOTMxMDczNDgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTUzMjY1MAorCS5sb25nCTU0Njg3MTI2OQorCS5sb25nCTEwNDU2MDE4NDcKKwkubG9uZwkwCisJLmxvbmcJMTA2OTQ5NzAyOQorCS5sb25nCTIyMjA0MDgxODcKKwkubG9uZwkxMDQ1OTY0ODQ5CisJLmxvbmcJMAorCS5sb25nCTEwNjk0NjE0NjEKKwkubG9uZwkzMTAxMjA5Nzg0CisJLmxvbmcJMzE5MjQxNzA5OAorCS5sb25nCTAKKwkubG9uZwkxMDY5NDI1OTQ0CisJLmxvbmcJMzc2ODgyNTc4MgorCS5sb25nCTEwNDYxOTYxNzgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTM5MDQ4MAorCS5sb25nCTczNzMwODk0MgorCS5sb25nCTEwNDM4NzI1NTUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTM1NTA2OAorCS5sb25nCTE5NDQ4MDgxMTkKKwkubG9uZwkzMTkzMzYyMzE3CisJLmxvbmcJMAorCS5sb25nCTEwNjkzMTk3MDcKKwkubG9uZwk4NTI0MDYyNjEKKwkubG9uZwkzMTkxMDA0MjUwCisJLmxvbmcJMAorCS5sb25nCTEwNjkyODQzOTgKKwkubG9uZwkzMjAyMzcwNzQzCisJLmxvbmcJMzE5MjU0OTc5NgorCS5sb25nCTAKKwkubG9uZwkxMDY5MjQ5MTQwCisJLmxvbmcJOTAwNjMzOTc1CisJLmxvbmcJMTA0Mzg2MjU3NQorCS5sb25nCTAKKwkubG9uZwkxMDY5MjEzOTM0CisJLmxvbmcJMzQxNzE2ODU2NAorCS5sb25nCTMxOTMyMTMxNjgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTE3ODc3OAorCS5sb25nCTI1MTMzMDk5NzIKKwkubG9uZwkxMDQ2MDUxOTUzCisJLmxvbmcJMAorCS5sb25nCTEwNjkxNDM2NzQKKwkubG9uZwkxODM2ODQ2OTY4CisJLmxvbmcJMTA0NDAzNjY1MworCS5sb25nCTAKKwkubG9uZwkxMDY5MTA4NjIxCisJLmxvbmcJNjc1MzkxMzYyCisJLmxvbmcJMzE5MzMzNDk3MgorCS5sb25nCTAKKwkubG9uZwkxMDY5MDczNjE4CisJLmxvbmcJMTg1OTM5ODA4NgorCS5sb25nCTMxOTE2Njg3MjkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTAzODY2NgorCS5sb25nCTM4MzU5OTQwNDMKKwkubG9uZwkzMTkzMjUyMTk2CisJLmxvbmcJMAorCS5sb25nCTEwNjkwMDM3NjQKKwkubG9uZwk1NjMzMzcyNDYKKwkubG9uZwkzMTkyMDYwNTMwCisJLmxvbmcJMAorCS5sb25nCTEwNjg5Njg5MTIKKwkubG9uZwkzNzE1MTU0MjEwCisJLmxvbmcJMTA0NTU5MjcxNgorCS5sb25nCTAKKwkubG9uZwkxMDY4OTM0MTExCisJLmxvbmcJNTE0MTU2MzYKKwkubG9uZwkzMTkyMTkzOTM5CisJLmxvbmcJMAorCS5sb25nCTEwNjg4OTkzNTkKKwkubG9uZwk4MjIwNDkxMDgKKwkubG9uZwkxMDQ1ODQ2MDgwCisJLmxvbmcJMAorCS5sb25nCTEwNjg4NjQ2NTgKKwkubG9uZwkzNzM5MDQzMzQwCisJLmxvbmcJMzE5MzE4NDk0OQorCS5sb25nCTAKKwkubG9uZwkxMDY4ODMwMDA2CisJLmxvbmcJMjUwMDgyODk5NworCS5sb25nCTMxOTMxMTU2MzgKKwkubG9uZwkwCisJLmxvbmcJMTA2ODc5NTQwMworCS5sb25nCTE0NzkzMzUwODkKKwkubG9uZwkxMDQ1NDU4MjMzCisJLmxvbmcJMAorCS5sb25nCTEwNjg3NjA4NTAKKwkubG9uZwkxOTE0MDk4NTk4CisJLmxvbmcJMTA0NTA3OTgzMworCS5sb25nCTAKKwkubG9uZwkxMDY4NzI2MzQ2CisJLmxvbmcJMTQ3MDM3NDkwOQorCS5sb25nCTEwNDYxMjU0NzEKKwkubG9uZwkwCisJLmxvbmcJMTA2ODY5MTg5MgorCS5sb25nCTIwNDgxMDExODUKKwkubG9uZwkzMTkyOTYwMDI0CisJLmxvbmcJMAorCS5sb25nCTEwNjg2NTc0ODYKKwkubG9uZwk4MDExMDE4MDIKKwkubG9uZwkxMDQyNTIzNDU0CisJLmxvbmcJMAorCS5sb25nCTEwNjg2MjMxMjkKKwkubG9uZwk0MTIxNzE0NjcKKwkubG9uZwkxMDQ0Nzk5NDI1CisJLmxvbmcJMAorCS5sb25nCTEwNjg1ODg4MjEKKwkubG9uZwkyMTI0NTY2MDQ5CisJLmxvbmcJMTA0MDQ1OTg0MworCS5sb25nCTAKKwkubG9uZwkxMDY4NTU0NTYxCisJLmxvbmcJMjA4NzU1ODI2MworCS5sb25nCTEwNDYwODMxMDIKKwkubG9uZwkwCisJLmxvbmcJMTA2ODUyMDM1MAorCS5sb25nCTI5MDM4OTMxNgorCS5sb25nCTEwNDUyMjAwMjMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODQ3MzQzMAorCS5sb25nCTM5MzczNzgxNQorCS5sb25nCTEwNDU3NzAwODUKKwkubG9uZwkwCisJLmxvbmcJMTA2ODQwNTIwMgorCS5sb25nCTMyNzMxMTE2NTgKKwkubG9uZwkzMTkzNTk0MzM2CisJLmxvbmcJMAorCS5sb25nCTEwNjgzMzcwNjgKKwkubG9uZwkzMDc2OTM1NDE5CisJLmxvbmcJMzE5MTk5MzkzNAorCS5sb25nCTAKKwkubG9uZwkxMDY4MjY5MDMwCisJLmxvbmcJMTU2NDI3OTcyMQorCS5sb25nCTEwNDA3MTM2MzIKKwkubG9uZwkwCisJLmxvbmcJMTA2ODIwMTA4OAorCS5sb25nCTE5NTAxMDM3ODcKKwkubG9uZwkzMTkxMjg1NDczCisJLmxvbmcJMAorCS5sb25nCTEwNjgxMzMyNDAKKwkubG9uZwkxMTEzMDE2MTcKKwkubG9uZwkxMDQ2MTQwNDcwCisJLmxvbmcJMAorCS5sb25nCTEwNjgwNjU0ODgKKwkubG9uZwkyNzQwOTMzNjU5CisJLmxvbmcJMTA0NjA5MTg5OAorCS5sb25nCTAKKwkubG9uZwkxMDY3OTk3ODMyCisJLmxvbmcJMTI2NzEzMTQ2MgorCS5sb25nCTMxOTI5NDcwMjQKKwkubG9uZwkwCisJLmxvbmcJMTA2NzkzMDI2OAorCS5sb25nCTYyOTc4NzM0MworCS5sb25nCTEwNDU1OTkxMTQKKwkubG9uZwkwCisJLmxvbmcJMTA2Nzg2MjgwMAorCS5sb25nCTI5NDMwMjk3NDYKKwkubG9uZwkzMTkxMTAwNjIxCisJLmxvbmcJMAorCS5sb25nCTEwNjc3OTU0MjYKKwkubG9uZwkyNTM4NjMxMTUxCisJLmxvbmcJMzE5Mzk1Mzk4OQorCS5sb25nCTAKKwkubG9uZwkxMDY3NzI4MTQ0CisJLmxvbmcJMzg4MTc5NTAzMworCS5sb25nCTMxOTEzNzczNjMKKwkubG9uZwkwCisJLmxvbmcJMTA2NzY2MDk1NgorCS5sb25nCTI3NTI3NDcwNTgKKwkubG9uZwkzMTg2MjUwMTAzCisJLmxvbmcJMAorCS5sb25nCTEwNjc1OTM4NjIKKwkubG9uZwk4OTIxNzAwMTQKKwkubG9uZwkzMTkzMzMwMzkwCisJLmxvbmcJMAorCS5sb25nCTEwNjc1MjY4NjAKKwkubG9uZwkyMDAwOTg1NzgzCisJLmxvbmcJMzE5Mjk2ODY0NworCS5sb25nCTAKKwkubG9uZwkxMDY3NDU5OTUwCisJLmxvbmcJMTk1NDA3NzMwNAorCS5sb25nCTEwNDQzOTk5MDgKKwkubG9uZwkwCisJLmxvbmcJMTA2NzMzNTkwMAorCS5sb25nCTQxMjA3MDI4NDcKKwkubG9uZwkzMTkzMTUwNzMwCisJLmxvbmcJMAorCS5sb25nCTEwNjcyMDI0NDgKKwkubG9uZwkzNTM0ODk5ODAKKwkubG9uZwkxMDQ1Njc2NzQ0CisJLmxvbmcJMAorCS5sb25nCTEwNjcwNjkxODQKKwkubG9uZwkyNjA5NjQzMzI0CisJLmxvbmcJMzE5MjEwODAwMQorCS5sb25nCTAKKwkubG9uZwkxMDY2OTM2MTAwCisJLmxvbmcJMjkwNDQzMzMxNworCS5sb25nCTEwNDQ4MzY1NDEKKwkubG9uZwkwCisJLmxvbmcJMTA2NjgwMzIwMAorCS5sb25nCTMxOTY1Njc5MAorCS5sb25nCTEwNDQ4NjM5MDQKKwkubG9uZwkwCisJLmxvbmcJMTA2NjY3MDQ4NAorCS5sb25nCTI0MDc5ODczMzEKKwkubG9uZwkzMTkyOTk1MDgzCisJLmxvbmcJMAorCS5sb25nCTEwNjY1Mzc5NDgKKwkubG9uZwkyNDM3NzQ2MTIwCisJLmxvbmcJMzE5MzEyNzczMworCS5sb25nCTAKKwkubG9uZwkxMDY2NDA1NTkyCisJLmxvbmcJNzYyNTcwMjE1CisJLmxvbmcJMzE4OTk0Njk5NworCS5sb25nCTAKKwkubG9uZwkxMDY2MTQ1MDQwCisJLmxvbmcJMzMxNzE1OTY5NAorCS5sb25nCTEwNDYwNjAxMjUKKwkubG9uZwkwCisJLmxvbmcJMTA2NTg4MTA1NgorCS5sb25nCTIzMTc4NDU4ODYKKwkubG9uZwkzMTkxNjc5MTc2CisJLmxvbmcJMAorCS5sb25nCTEwNjU2MTc0MjQKKwkubG9uZwkzNjY1MTk1ODE2CisJLmxvbmcJMTA0NTYzMzg1MworCS5sb25nCTAKKwkubG9uZwkxMDY1MzU0MTYwCisJLmxvbmcJMjAwODczMDM1NQorCS5sb25nCTMxOTM4OTgyMTEKKwkubG9uZwkwCisJLmxvbmcJMTA2NDgyOTI2NAorCS5sb25nCTM3NDYyMzYxOTIKKwkubG9uZwkxMDQ2MTIxNDcxCisJLmxvbmcJMAorCS5sb25nCTEwNjQzMDM2ODAKKwkubG9uZwk4ODUyOTY3NTMKKwkubG9uZwkzMTkxODUyNDQxCisJLmxvbmcJMAorCS5sb25nCTEwNjMyNTM2OTYKKwkubG9uZwk0NDk5NzY0OTUKKwkubG9uZwkzMTkyNjgyNjYzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCUxfdGJsLEBvYmplY3QKKwkuc2l6ZQlMX3RibCw4MjA4CisJLnNwYWNlIDQ5NiwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK0hJR0hNQVNLX1k6CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUhJR0hNQVNLX1ksQG9iamVjdAorCS5zaXplCUhJR0hNQVNLX1ksMTYKKwkuYWxpZ24gMTYKK1RfZXhwOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTk5NzE5NTc3NgorCS5sb25nCTQyMDAyNTA1NTkKKwkubG9uZwkxMDcyNjk2MDkwCisJLmxvbmcJMjgwODEyNzM0NQorCS5sb25nCTMxNjI4MzA1MTQKKwkubG9uZwkyODUxODEyMTQ5CisJLmxvbmcJMTA3MjY5ODk0MQorCS5sb25nCTI1OTU4MDI1NTEKKwkubG9uZwkxMDE2ODE1OTEzCisJLmxvbmcJMzM5NDExNTg1CisJLmxvbmcJMTA3MjcwMTgwMAorCS5sb25nCTI2NDU4ODk4MgorCS5sb25nCTMxNjI2ODUyMzMKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MjcwNDY2NgorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYxNTU5MTcxCisJLmxvbmcJNzcyOTE0MTI0CisJLmxvbmcJMTA3MjcwNzU0MAorCS5sb25nCTQwMDQzNzI3NjIKKwkubG9uZwkxMDEzMjc4NzM3CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzI3MTA0MjEKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYzNTk1NTQ4CisJLmxvbmcJMTkyODc0NjE2MQorCS5sb25nCTEwNzI3MTMzMTEKKwkubG9uZwk5ODM2MTc2NzYKKwkubG9uZwkxMDE1MzMzNzUzCisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzI3MTYyMDgKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNTkwMzIwMgorCS5sb25nCTIzODgyMTI1NworCS5sb25nCTEwNzI3MTkxMTQKKwkubG9uZwkxNDY5Njk0ODcxCisJLmxvbmcJMzE2MzkzMzU2MworCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzI3MjIwMjcKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MzMyODk5MQorCS5sb25nCTcyODkzNDQ1NAorCS5sb25nCTEwNzI3MjQ5NDgKKwkubG9uZwkxNDEzODQyNjg4CisJLmxvbmcJMTAxNTIyNzE4OAorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzI3Mjc4NzcKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMzAyNDQ0NgorCS5sb25nCTQxMzM4ODE4MjQKKwkubG9uZwkxMDcyNzMwODEzCisJLmxvbmcJMjE0ODE1NTM0NQorCS5sb25nCTMxNjM5Nzk4NzUKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MjczMzc1OAorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTYxNTQyMzIKKwkubG9uZwkyNjAyNTE0NzEzCisJLmxvbmcJMTA3MjczNjcxMQorCS5sb25nCTIyNjg5MjkzMzYKKwkubG9uZwkxMDE1NDAyODYwCisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzI3Mzk2NzIKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNjYzNjk3NAorCS5sb25nCTExNzI1OTc4OTMKKwkubG9uZwkxMDcyNzQyNjQxCisJLmxvbmcJMTE0NDMzMjYzCisJLmxvbmcJMTAxNjM5NjE2OQorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzI3NDU2MTgKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE2MDc4MDQ0CisJLmxvbmcJNTkwOTYyMTU2CisJLmxvbmcJMTA3Mjc0ODYwMworCS5sb25nCTM4MjkzNDY2NjYKKwkubG9uZwkzMTY0MzI0MTczCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3Mjc1MTU5NgorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMTA4NDIxMzUKKwkubG9uZwkxNjA4NDkzNTA5CisJLmxvbmcJMTA3Mjc1NDU5NworCS5sb25nCTMxNTk2MjIxNzEKKwkubG9uZwkzMTYzODU2MzEzCisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzI3NTc2MDYKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MTE2ODg3NworCS5sb25nCTY4NTE4NzkwMgorCS5sb25nCTEwNzI3NjA2MjQKKwkubG9uZwkzNzg3MzE5ODkKKwkubG9uZwkxMDE1ODkxNjkxCisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzI3NjM2NDkKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYzOTk3NDU2CisJLmxvbmcJMjg3NTA3NTI1NAorCS5sb25nCTEwNzI3NjY2ODMKKwkubG9uZwk0MTQ0MjMzMzMwCisJLmxvbmcJMzE2NDM4MjI5MgorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcyNzY5NzI1CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTk0NzEzODAKKwkubG9uZwkzNTE0MDUyMjcKKwkubG9uZwkxMDcyNzcyNzc2CisJLmxvbmcJMzEyNTMzNzMyOAorCS5sb25nCTMxNjA4NzEwNTUKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3Mjc3NTgzNAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYzNzYyNjIzCisJLmxvbmcJMjQ3MTQ0MDY4NgorCS5sb25nCTEwNzI3Nzg5MDEKKwkubG9uZwk5Njg4MzYyNjcKKwkubG9uZwkzMTYzMjYzNDY0CisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzI3ODE5NzYKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNTE2OTEzMAorCS5sb25nCTE0MTY3NDE4MjYKKwkubG9uZwkxMDcyNzg1MDYwCisJLmxvbmcJMjE5NjM4MDIxMAorCS5sb25nCTEwMTI0NjIxMzkKKwkubG9uZwkxMDE0ODQ1ODE5CisJLmxvbmcJMTA3Mjc4ODE1MgorCS5sb25nCTMxMTc5MTA2NDYKKwkubG9uZwkzMTYyNjA3NjgxCisJLmxvbmcJMjI1Nzk1OTg3MgorCS5sb25nCTEwNzI3OTEyNTIKKwkubG9uZwkzODAyOTQ2MTQ4CisJLmxvbmcJMTAxNDAxMzUwMworCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzI3OTQzNjEKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MzYyMzQ1OQorCS5sb25nCTE0ODAwMjMzNDMKKwkubG9uZwkxMDcyNzk3NDc4CisJLmxvbmcJMjI0NzE5NjE2OAorCS5sb25nCTEwMTYzNzYwMjkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MjgwMDYwMworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE1OTYyNDQ0CisJLmxvbmcJNDE2MjAzMDEwOAorCS5sb25nCTEwNzI4MDM3MzcKKwkubG9uZwkyNzYzNDI4NDgwCisJLmxvbmcJMTAxNjU3NzkyNQorCS5sb25nCTIyMTQ4Nzg0MjAKKwkubG9uZwkxMDcyODA2ODgwCisJLmxvbmcJODkyMjcwMDg3CisJLmxvbmcJMzE2NDE2NDk5OAorCS5sb25nCTI1MDI0MzM4OTkKKwkubG9uZwkxMDcyODEwMDMxCisJLmxvbmcJMjE0ODU5NTkxMworCS5sb25nCTEwMTYwNzI1NjcKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcyODEzMTkxCisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE2OTg4MDE0CisJLmxvbmcJMTU4ODg3MTIwNworCS5sb25nCTEwNzI4MTYzNTkKKwkubG9uZwkxNDM0Mzk1ODIKKwkubG9uZwkzMTY0MDExOTkyCisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MjgxOTUzNgorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MzY3NjU2OAorCS5sb25nCTIyMTgzMTUzNDEKKwkubG9uZwkxMDcyODIyNzIxCisJLmxvbmcJMjY5NDI5NTM4OAorCS5sb25nCTMxNjQzMzc0NDQKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MjgyNTkxNQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE1OTI0NTk3CisJLmxvbmcJODk3MDk5ODAxCisJLmxvbmcJMTA3MjgyOTExOAorCS5sb25nCTc1NDc1NjI5NworCS5sb25nCTEwMTYyODk1ODEKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MjgzMjMyOQorCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE1MTk2MDMwCisJLmxvbmcJMjcyNTg0MzY2NQorCS5sb25nCTEwNzI4MzU1NDkKKwkubG9uZwkxNDMzOTE3MDg3CisJLmxvbmcJMTAxNTg4NzA5OQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcyODM4Nzc4CisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTY3MDUxNTAKKwkubG9uZwk0MjE5NjA2MDI2CisJLmxvbmcJMTA3Mjg0MjAxNQorCS5sb25nCTI0MzQ1NzQ3NDIKKwkubG9uZwkxMDE1NzMwMTI0CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzI4NDUyNjIKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNTcyNjQyMQorCS5sb25nCTE4OTc4NDQzNDEKKwkubG9uZwkxMDcyODQ4NTE3CisJLmxvbmcJMTI1NDMwMDQ2MAorCS5sb25nCTEwMTYzMjQ1MTQKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3Mjg1MTc4MQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE1MjAxMDc1CisJLmxvbmcJODc0MzcyOTA1CisJLmxvbmcJMTA3Mjg1NTA1NAorCS5sb25nCTEwMDI2Mzc4OAorCS5sb25nCTEwMTY5ODkzMDgKKwkubG9uZwkzNzkwOTU1MzkzCisJLmxvbmcJMTA3Mjg1ODMzNQorCS5sb25nCTIzNTI5NDI0NjIKKwkubG9uZwkzMTY0MjI4NjY2CisJLmxvbmcJMTk3MjQ4NDk3NgorCS5sb25nCTEwNzI4NjE2MjYKKwkubG9uZwk2NzUyOTAzMDEKKwkubG9uZwkzMTYyNjg4NjI2CisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzI4NjQ5MjUKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNTQxOTYyNAorCS5sb25nCTE3MjQ5NzY5MTUKKwkubG9uZwkxMDcyODY4MjM0CisJLmxvbmcJNDIwOTA5MjIzCisJLmxvbmcJMzE2NDE2NTk1NQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcyODcxNTUxCisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTgzNzkyMjgKKwkubG9uZwk5NjQxMDcwNTUKKwkubG9uZwkxMDcyODc0ODc4CisJLmxvbmcJMjgwMDQzOTU4OAorCS5sb25nCTMxNjM4ODE3OTcKKwkubG9uZwkyNzk5OTYwODQzCisJLmxvbmcJMTA3Mjg3ODIxMworCS5sb25nCTE0MjM2NTUzODEKKwkubG9uZwkxMDE2MDcwNzI3CisJLmxvbmcJNTI2NjUyODA5CisJLmxvbmcJMTA3Mjg4MTU1OAorCS5sb25nCTQyMjM0NTk3MzYKKwkubG9uZwkxMDE2OTI3OTUxCisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzI4ODQ5MTEKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxNDA5MDI1NQorCS5sb25nCTEyNTM5MzUyMTEKKwkubG9uZwkxMDcyODg4Mjc0CisJLmxvbmcJMTM5NTM4MjkzMQorCS5sb25nCTMxNjA3NTExODkKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcyODkxNjQ2CisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTU0NzczNTQKKwkubG9uZwkzOTkxODQzNTgxCisJLmxvbmcJMTA3Mjg5NTAyNgorCS5sb25nCTQwOTI4NTM0NTcKKwkubG9uZwkxMDE1NjM0MzM5CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzI4OTg0MTYKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNTcxNzA5NQorCS5sb25nCTEwMDA5MjU3NDYKKwkubG9uZwkxMDcyOTAxODE2CisJLmxvbmcJMTAxODQ5MTY3MgorCS5sb25nCTMxNjQzNTgxMjAKKwkubG9uZwkyOTkyOTAzOTM1CisJLmxvbmcJMTA3MjkwNTIyNAorCS5sb25nCTIyMTgxNTQ0MDYKKwkubG9uZwkxMDE2Mjc2NzY5CisJLmxvbmcJMTcyNjIxNjc0OQorCS5sb25nCTEwNzI5MDg2NDIKKwkubG9uZwkyNDY2ODA4MjI4CisJLmxvbmcJMzE2MjcyNDk4MQorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcyOTEyMDY5CisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjMyNDk5MDIKKwkubG9uZwkyNzMyNDkyODU5CisJLmxvbmcJMTA3MjkxNTUwNQorCS5sb25nCTI2OTE0Nzk2NDYKKwkubG9uZwkzMTYzMzA0MjYwCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MjkxODk1MQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYzOTYyMDkwCisJLmxvbmcJNTg5MTk4NjY2CisJLmxvbmcJMTA3MjkyMjQwNgorCS5sb25nCTI2NjQzNDYxNzIKKwkubG9uZwkzMTY0MjA2NTM4CisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzI5MjU4NzAKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2NDUwOTU4MQorCS5sb25nCTQ2MDQwNzAyMworCS5sb25nCTEwNzI5MjkzNDQKKwkubG9uZwk0MjM3MTc1MDkyCisJLmxvbmcJMzE2NDE4NzA0NQorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzI5MzI4MjcKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MTg0Mjc0MgorCS5sb25nCTMyMTk5NDI2NDQKKwkubG9uZwkxMDcyOTM2MzE5CisJLmxvbmcJMzc5ODk5MDYxNgorCS5sb25nCTEwMTY0MTczODIKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MjkzOTgyMQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjQ1MzY4MjQKKwkubG9uZwkxMTU2NDQwNDM1CisJLmxvbmcJMTA3Mjk0MzMzMworCS5sb25nCTIzNTE0NTEyNDkKKwkubG9uZwkxMDE1MDE1NjMyCisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzI5NDY4NTQKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE1NzMyNzQ1CisJLmxvbmcJMzc0MzE3NTAyOQorCS5sb25nCTEwNzI5NTAzODQKKwkubG9uZwkyMDcyODEyNDkwCisJLmxvbmcJMzE2MzIyMzY1MQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3Mjk1MzkyNQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTY0MDY1ODI3CisJLmxvbmcJMzI3ODM0ODMyNAorCS5sb25nCTEwNzI5NTc0NzQKKwkubG9uZwkzMDY5NDk3NDE2CisJLmxvbmcJMTAxNTc5OTI4OAorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzI5NjEwMzQKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTYwMzM5MzA1CisJLmxvbmcJNjU0OTE5MzA2CisJLmxvbmcJMTA3Mjk2NDYwMworCS5sb25nCTMyMzI5NjE3NTcKKwkubG9uZwkzMTY0MDk2MDQ1CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzI5NjgxODEKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MjYyMTkxNworCS5sb25nCTEwNjU2NjI5MzIKKwkubG9uZwkxMDcyOTcxNzcwCisJLmxvbmcJMjUzMzY3MDkxNQorCS5sb25nCTEwMTU1Nzg4MTQKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3Mjk3NTM2OAorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMTM5MTM1NAorCS5sb25nCTExMTgyOTQ1NzgKKwkubG9uZwkxMDcyOTc4OTc2CisJLmxvbmcJMjE5NzQ5NTY5NAorCS5sb25nCTMxNjA5NTc5NzcKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3Mjk4MjU5MworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE2ODk0NTM5CisJLmxvbmcJMTcyMDM5ODM5MQorCS5sb25nCTEwNzI5ODYyMjEKKwkubG9uZwkzOTgwNjc4OTYzCisJLmxvbmcJMzE2NDM0ODY1NgorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcyOTg5ODU4CisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTQyMTkxNzEKKwkubG9uZwkzNzg0NDg2NjEwCisJLmxvbmcJMTA3Mjk5MzUwNQorCS5sb25nCTE1ODE4ODMwNDAKKwkubG9uZwkzMTYyNzQ3NTI5CisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzI5OTcxNjIKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNjcxMjAzNAorCS5sb25nCTM5MzMwNTkwMzEKKwkubG9uZwkxMDczMDAwODI5CisJLmxvbmcJMjEzMzM2Njc2OAorCS5sb25nCTMxNjI1ODA0MDgKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MzAwNDUwNgorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDE0ODQyMjYzCisJLmxvbmcJMzA4ODU2NDUwMAorCS5sb25nCTEwNzMwMDgxOTMKKwkubG9uZwkxNzYyMzExNTE3CisJLmxvbmcJMTAxNjA5NDI0OQorCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDczMDExODkwCisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTY2NTUwNjcKKwkubG9uZwkyMTc4NDYwNjcxCisJLmxvbmcJMTA3MzAxNTU5NworCS5sb25nCTc3Nzg3ODA5OAorCS5sb25nCTMxNjM4OTEwNjkKKwkubG9uZwkxOTkwMDEyMDcxCisJLmxvbmcJMTA3MzAxOTMxNAorCS5sb25nCTM1MjkwNzA1NjMKKwkubG9uZwkzMTYzODYxNzY5CisJLmxvbmcJMjEzNTI0MTE5OAorCS5sb25nCTEwNzMwMjMwNDEKKwkubG9uZwkxMjM2NzQ3ODcxCisJLmxvbmcJMTAxNDYzNzcyMworCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDczMDI2Nzc4CisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjM1MTg1OTcKKwkubG9uZwkzODk2NDYzMDg3CisJLmxvbmcJMTA3MzAzMDUyNQorCS5sb25nCTExMzk3OTc4NzMKKwkubG9uZwkzMTYyMjgyMzgxCisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzMwMzQyODMKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYyNTM2NjM4CisJLmxvbmcJNDEwOTgwNjg4NworCS5sb25nCTEwNzMwMzgwNTAKKwkubG9uZwk0MjI0MDM5NjYKKwkubG9uZwkxMDE1NTE3ODA1CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzMwNDE4MjgKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MzM4Mzk2NAorCS5sb25nCTM3MjMwMzg5MzAKKwkubG9uZwkxMDczMDQ1NjE2CisJLmxvbmcJMzc4NDY1MjY0CisJLmxvbmcJMzE2MzYxODE1OAorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzMwNDk0MTUKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTY3MDc4ODQKKwkubG9uZwkzNjg5MDcxODIzCisJLmxvbmcJMTA3MzA1MzIyMworCS5sb25nCTIzMjEwMDQ5OTYKKwkubG9uZwkzMTYzNjAxMjkyCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzMwNTcwNDIKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNTE5MTAwOQorCS5sb25nCTY3MTAyNTEwMAorCS5sb25nCTEwNzMwNjA4NzIKKwkubG9uZwkzODMyMDE0MzUxCisJLmxvbmcJMzE2NDA3MDYwNgorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDczMDY0NzExCisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE2NDc2MjM2CisJLmxvbmcJNDIyMjEyMjQ5OQorCS5sb25nCTEwNzMwNjg1NjEKKwkubG9uZwkxMjc3Mzc4MDc0CisJLmxvbmcJMzE2NDMwNTMxMworCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDczMDcyNDIyCisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMTA1ODQzNDcKKwkubG9uZwkyNDI1OTgxODQzCisJLmxvbmcJMTA3MzA3NjI5MworCS5sb25nCTI4MzAzOTA4NTEKKwkubG9uZwkzMTY0Mzk1MTc1CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MzA4MDE3NQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTY4MzM3ODUKKwkubG9uZwk1NTEzNDkxMDUKKwkubG9uZwkxMDczMDg0MDY3CisJLmxvbmcJMzgyMTkxNjA1MAorCS5sb25nCTMxNjMxNTUxNjUKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MzA4Nzk2OQorCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYzODA4MzIyCisJLmxvbmcJMzg3MjI1Nzc4MAorCS5sb25nCTEwNzMwOTE4ODIKKwkubG9uZwkxMjUzNTkyMTAzCisJLmxvbmcJMTAxNzAwNjkxMAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDczMDk1ODA2CisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjM3ODQxMjkKKwkubG9uZwk0ODgxODg0MTMKKwkubG9uZwkxMDczMDk5NzQxCisJLmxvbmcJMzE5OTgyMTAyOQorCS5sb25nCTEwMTY2MTI2MjQKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDczMTAzNjg2CisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjMzMTAxNDAKKwkubG9uZwk0MjczNzcwNDIzCisJLmxvbmcJMTA3MzEwNzY0MQorCS5sb25nCTMzODMxODA4MDkKKwkubG9uZwkzMTY0MjY3NDc3CisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzMxMTE2MDgKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2NDMyMTI4OQorCS5sb25nCTMzMzkyMDM1NzQKKwkubG9uZwkxMDczMTE1NTg1CisJLmxvbmcJMTQ4MzQ5Nzc4MAorCS5sb25nCTMxNjM0NTczMzAKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MzExOTU3MworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDEyOTM4OTI2CisJLmxvbmcJMjk3OTk2MDEyMAorCS5sb25nCTEwNzMxMjM1NzIKKwkubG9uZwkyNTk5MTA5NzI1CisJLmxvbmcJMTAxNTU0NzA2OQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDczMTI3NTgyCisJLmxvbmcJMzMwNDU4MTk4CisJLmxvbmcJMzE2NDMzMTMxNgorCS5sb25nCTQyMDE5Nzc2NjIKKwkubG9uZwkxMDczMTMxNjAyCisJLmxvbmcJNzQ4MzMwMjU0CisJLmxvbmcJMTAxNDY0MjkzMworCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDczMTM1NjM0CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjE2MjI4NzAKKwkubG9uZwkzNzIxNjg4NjQ1CisJLmxvbmcJMTA3MzEzOTY3NgorCS5sb25nCTMwNjkyNzY5MzcKKwkubG9uZwkxMDE2ODg3OTc3CisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzMxNDM3MzAKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MTE3NzY1OAorCS5sb25nCTI1NTU5ODQ2MTMKKwkubG9uZwkxMDczMTQ3Nzk0CisJLmxvbmcJMjY1MjU1NTQ0MgorCS5sb25nCTMxNjM2MDEyNjgKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MzE1MTg2OQorCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjMwNDQ4NzkKKwkubG9uZwkxNzI3Mjc4NzI3CisJLmxvbmcJMTA3MzE1NTk1NgorCS5sb25nCTM1NjI3MTA2MjMKKwkubG9uZwkxMDEyNTIwNTE2CisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzMxNjAwNTMKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MjU5ODk4MworCS5sb25nCTIyNjM1MzU3NTQKKwkubG9uZwkxMDczMTY0MTYyCisJLmxvbmcJNzUyMjMzNTg2CisJLmxvbmcJMzE2MzY4NzU4NAorCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDczMTY4MjgyCisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjM1OTcwMTcKKwkubG9uZwk5MDMzMzQ5MDkKKwkubG9uZwkxMDczMTcyNDEzCisJLmxvbmcJMTYzNjQ2MjEwOAorCS5sb25nCTEwMTYwODg1NzMKKwkubG9uZwkxNDQ3MTkyNTIxCisJLmxvbmcJMTA3MzE3NjU1NQorCS5sb25nCTE0NjI4NTcxNzEKKwkubG9uZwkzMTYzNTYzMDk3CisJLmxvbmcJMjk4MDgwMjA1NworCS5sb25nCTEwNzMxODA3MDgKKwkubG9uZwkzNzg2MTk4OTYKKwkubG9uZwkxMDE2ODIxODc5CisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzMxODQ4NzMKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE2NjIwNzI4CisJLmxvbmcJOTUwODAzNzAyCisJLmxvbmcJMTA3MzE4OTA0OQorCS5sb25nCTE2NTUzNjQ5MjYKKwkubG9uZwkxMDE2Mjg1NjA4CisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzMxOTMyMzYKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2Mjc3Mjg1NQorCS5sb25nCTE1ODc4MTQwMworCS5sb25nCTEwNzMxOTc0MzUKKwkubG9uZwkyMjIxNDY0NzEyCisJLmxvbmcJMzE2NDMzNTAyOQorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MzIwMTY0NQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE3MDU3ODY4CisJLmxvbmcJMTY2MDkxMzM5MgorCS5sb25nCTEwNzMyMDU4NjYKKwkubG9uZwk0MjE4NTk5NjA0CisJLmxvbmcJMTAxNjE4NDI4MworCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzMyMTAwOTkKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMzk5NjgwMgorCS5sb25nCTIyMjQxNDU1NTMKKwkubG9uZwkxMDczMjE0MzQzCisJLmxvbmcJMzQ4MjUyMjAzMAorCS5sb25nCTMxNjI1Mzc3NDUKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MzIxODU5OQorCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYzNzE2NzQyCisJLmxvbmcJMjkxNjE1NzE0NQorCS5sb25nCTEwNzMyMjI4NjYKKwkubG9uZwkyMTk0ODc1NjUKKwkubG9uZwkxMDE2MzU3OTQzCisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzMyMjcxNDUKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2NDQyNTI0NQorCS5sb25nCTUxNTQ1NzUyNworCS5sb25nCTEwNzMyMzE0MzYKKwkubG9uZwk4MzY3MDkzMzMKKwkubG9uZwkxMDE2Njk5ODAyCisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzMyMzU3MzgKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MzA4NDQyMAorCS5sb25nCTM5NjMxOTUyMQorCS5sb25nCTEwNzMyNDAwNTIKKwkubG9uZwk0MTcyNDIwODE2CisJLmxvbmcJMzE2MDEyMzIwOAorCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDczMjQ0Mzc3CisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjQ1ODc3NjgKKwkubG9uZwkzNjQzOTA5MTc0CisJLmxvbmcJMTA3MzI0ODcxNAorCS5sb25nCTM1Mzc1ODYxMDkKKwkubG9uZwkxMDE1NDAzMjIzCisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzMyNTMwNjMKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNjY5ODA1MAorCS5sb25nCTI3NTkzNTAyODcKKwkubG9uZwkxMDczMjU3NDI0CisJLmxvbmcJMTE0ODUyNjYzNAorCS5sb25nCTEwMTY5NDM1MDkKKwkubG9uZwkxMTEwMDg5OTQ3CisJLmxvbmcJMTA3MzI2MTc5NworCS5sb25nCTE0NTE2NDE2MzkKKwkubG9uZwkxMDE2NTIzMjQ5CisJLmxvbmcJMzEzNDU5Mjg4OAorCS5sb25nCTEwNzMyNjYxODEKKwkubG9uZwk0MjMyMjY2ODYyCisJLmxvbmcJMTAxNzAzOTcxMAorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzMyNzA1NzgKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYxNTExMjYyCisJLmxvbmcJMTU3NzYwODkyMQorCS5sb25nCTEwNzMyNzQ5ODYKKwkubG9uZwkxODc1NDg5NTEwCisJLmxvbmcJMzE2NDAxNjk3MAorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDczMjc5NDA2CisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTU0MDE0OTEKKwkubG9uZwkzNDkyMjkzNzcwCisJLmxvbmcJMTA3MzI4MzgzOAorCS5sb25nCTIyNDgwMzIyMTAKKwkubG9uZwkxMDE2NDM1NDAyCisJLmxvbmcJMTk0MTE3NTc0CisJLmxvbmcJMTA3MzI4ODI4MworCS5sb25nCTc3NzUyODYxMgorCS5sb25nCTMxNjQ0NjA2NjUKKwkubG9uZwkxNDAzNjYyMzA2CisJLmxvbmcJMTA3MzI5MjczOQorCS5sb25nCTI3ODg4MDk1OTkKKwkubG9uZwkzMTYyNzE5NTgzCisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzMyOTcyMDcKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE2MDg5MTMzNQorCS5sb25nCTcyNzY4NTM0OQorCS5sb25nCTEwNzMzMDE2ODgKKwkubG9uZwkyMDM4MjQ2ODA5CisJLmxvbmcJMzE2MzQwNzMxOAorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDczMzA2MTgwCisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjE4NjkxODAKKwkubG9uZwkyNTkxNDUzMzYzCisJLmxvbmcJMTA3MzMxMDY4NQorCS5sb25nCTIxMzIzOTYxODIKKwkubG9uZwkzMTYwMTIyNzc0CisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzMzMTUyMDIKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2NDQxMTk5NQorCS5sb25nCTM4MzMyMDk1MDYKKwkubG9uZwkxMDczMzE5NzMxCisJLmxvbmcJMjcyMjkyMDY4NAorCS5sb25nCTEwMTQ4MDM0MTgKKwkubG9uZwkxODkyMjg4NDQyCisJLmxvbmcJMTA3MzMyNDI3MworCS5sb25nCTI0NDYyNTU2NjYKKwkubG9uZwkzMTYzNjQ4OTU3CisJLmxvbmcJMTI5NzM1MDE1NworCS5sb25nCTEwNzMzMjg4MjcKKwkubG9uZwkxMzA4MDIyMDQwCisJLmxvbmcJMzE2NDQ2MTEzNAorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDczMzMzMzkzCisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTQ3OTEyMzgKKwkubG9uZwk0MjQzOTI5MTcKKwkubG9uZwkxMDczMzM3OTcyCisJLmxvbmcJMjc0OTIwMjk5NQorCS5sb25nCTMxNjM4ODcyOTQKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDczMzQyNTYzCisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTQ1MDY2OTgKKwkubG9uZwkyMzY2MTA4MzE4CisJLmxvbmcJMTA3MzM0NzE2NgorCS5sb25nCTI4Njc5ODUxMDIKKwkubG9uZwkzMTYyODEwODMwCisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzMzNTE3ODIKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2Mzc3MzI1NworCS5sb25nCTM5ODU1NTM1OTUKKwkubG9uZwkxMDczMzU2NDEwCisJLmxvbmcJNDAwMjE0NjA2MgorCS5sb25nCTEwMTY4ODI3MTIKKwkubG9uZwkzOTY0Mjg0MjExCisJLmxvbmcJMTA3MzM2MTA1MQorCS5sb25nCTIxMTE1ODM5MTUKKwkubG9uZwkxMDE2NDc1NzQwCisJLmxvbmcJMjE1MjA3Mzk0NAorCS5sb25nCTEwNzMzNjU3MDUKKwkubG9uZwkxNDg2ODYwNTc2CisJLmxvbmcJMzE2NDI1MjAzMgorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDczMzcwMzcxCisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjQ0MTc5MDIKKwkubG9uZwkyMzMxMjcxMjUwCisJLmxvbmcJMTA3MzM3NTA1MAorCS5sb25nCTgxMjA1NzQ0NgorCS5sb25nCTEwMTMyNTYwMjIKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDczMzc5NzQyCisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTY4NDMxMzQKKwkubG9uZwkxNDA1MTY5MjQxCisJLmxvbmcJMTA3MzM4NDQ0NgorCS5sb25nCTI5OTg1Mzk2ODkKKwkubG9uZwkzMTYzODc5NTI3CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzMzODkxNjMKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE2MTM0MzQ1CisJLmxvbmcJNTU3MTQ5ODgyCisJLmxvbmcJMTA3MzM5Mzg5MworCS5sb25nCTM2NzI3MjA3MDkKKwkubG9uZwkxMDE1NTg1ODQxCisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzMzOTg2MzUKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MzUyNTY4NAorCS5sb25nCTk3NzAyMDc4OAorCS5sb25nCTEwNzM0MDMzOTEKKwkubG9uZwkzMDY1MTAwNTE3CisJLmxvbmcJMTAxNjU5MDEzOQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDczNDA4MTU5CisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNjU3MDMxNworCS5sb25nCTM4NjEwNTAxMTEKKwkubG9uZwkxMDczNDEyOTQwCisJLmxvbmcJMjU0ODkzNzczCisJLmxvbmcJMzE2Mzg2MTc1NgorCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzM0MTc3MzUKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2NDMzMTc2NQorCS5sb25nCTE4MjIwNjcwMjYKKwkubG9uZwkxMDczNDIyNTQyCisJLmxvbmcJMTI0MTk5NDk1NgorCS5sb25nCTEwMTYzODg4NjYKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MzQyNzM2MgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNjA1NzE5OTgKKwkubG9uZwkzNjQzMzM0ODkKKwkubG9uZwkxMDczNDMyMTk2CisJLmxvbmcJMzkyMzczNzc0NAorCS5sb25nCTMxNjI0Njk5NDkKKwkubG9uZwkyMzgwNjE4MDQyCisJLmxvbmcJMTA3MzQzNzA0MgorCS5sb25nCTMxNDk1NTcyMTkKKwkubG9uZwkzMTY0MzY5Mzc1CisJLmxvbmcJNzAzNzEwNTA2CisJLmxvbmcJMTA3MzQ0MTkwMgorCS5sb25nCTEzODQ2NjA4NDYKKwkubG9uZwkxMDE2MjQ0NDY3CisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzM0NDY3NzQKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MTgwNjkyNworCS5sb25nCTQwNjI2NjEwOTIKKwkubG9uZwkxMDczNDUxNjYwCisJLmxvbmcJMTQyMjYxNjAwNgorCS5sb25nCTMxNjQzMDM4OTQKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDczNDU2NTYwCisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2NDUzNjAxOQorCS5sb25nCTMwODAzNTE1MTkKKwkubG9uZwkxMDczNDYxNDcyCisJLmxvbmcJMzM3OTEyNjc4OQorCS5sb25nCTMxNTgyNjY1NzcKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MzQ2NjM5OAorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE1MTY4NDY0CisJLmxvbmcJMzI4NzUyMzg0NworCS5sb25nCTEwNzM0NzEzMzcKKwkubG9uZwkxNjI1OTcxNTM5CisJLmxvbmcJMzE1ODA1ODUzMQorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDczNDc2MjkwCisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjQ1MzYyNjYKKwkubG9uZwkxNjMxNjk1Njc3CisJLmxvbmcJMTA3MzQ4MTI1NgorCS5sb25nCTI3MTc2MzMwNzYKKwkubG9uZwkzMTYzMzkyNjAyCisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzM0ODYyMzUKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNTA5MTMwMQorCS5sb25nCTM2NTcwNjU3NzIKKwkubG9uZwkxMDczNDkxMjI4CisJLmxvbmcJMzk5MDI1NjIzCisJLmxvbmcJMzE2NDAwNTY1NAorCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDczNDk2MjM1CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTY4MDg3NTkKKwkubG9uZwkyMDI5NzE0MjEwCisJLmxvbmcJMTA3MzUwMTI1NQorCS5sb25nCTYxMzY2MDA3OQorCS5sb25nCTEwMTYxNDc3MTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDczNTA2Mjg5CisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTYyMzYxMDkKKwkubG9uZwkyMzA3NDQyOTk1CisJLmxvbmcJMTA3MzUxMTMzNgorCS5sb25nCTMxOTAxMTc3MjEKKwkubG9uZwkzMTYzNDUzMTE1CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzM1MTYzOTcKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxNDA4Mjc0OAorCS5sb25nCTE0NjQ5NzY2MDMKKwkubG9uZwkxMDczNTIxNDcyCisJLmxvbmcJMzUwNzI5MjQwNQorCS5sb25nCTMxNjMwMjYxMTAKKwkubG9uZwkzNzA2Njg3NTkzCisJLmxvbmcJMTA3MzUyNjU2MAorCS5sb25nCTM1MjE3MjY5MzkKKwkubG9uZwkxMDE0MzAxNjQzCisJLmxvbmcJNzc4OTAxMTA5CisJLmxvbmcJMTA3MzUzMTY2MworCS5sb25nCTIyNDgxODM5NTQKKwkubG9uZwkzMTYyMzE3MzI3CisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzM1MzY3NzkKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MzQxMjUzOQorCS5sb25nCTE1MzI3MzQzMjQKKwkubG9uZwkxMDczNTQxOTA5CisJLmxvbmcJMzA5NDIxNjUzNQorCS5sb25nCTMxNjQyMTE0MzMKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MzU0NzA1MworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTY0Mzg4NDA3CisJLmxvbmcJNzIxOTk2MTM2CisJLmxvbmcJMTA3MzU1MjIxMQorCS5sb25nCTU2Mzc1NDczNAorCS5sb25nCTEwMTY0MTk4OTQKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDczNTU3MzgzCisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjQ0MjQzMTUKKwkubG9uZwkzOTM5MTQ4MjQ2CisJLmxvbmcJMTA3MzU2MjU2OAorCS5sb25nCTMyMTAzNTIxNDgKKwkubG9uZwkxMDE2MzIyODk5CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzM1Njc3NjgKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNTIxMzMxNAorCS5sb25nCTM4OTg3OTU3MzEKKwkubG9uZwkxMDczNTcyOTgyCisJLmxvbmcJMTI0OTk5NDE0NAorCS5sb25nCTEwMTI5MTgzOTQKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDczNTc4MjExCisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjM2MjcyMDEKKwkubG9uZwkxOTEyNTYxNzgxCisJLmxvbmcJMTA3MzU4MzQ1MworCS5sb25nCTMxNDc0OTUxMDIKKwkubG9uZwkxMDE2NzI2ODI5CisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwkxMDczNTg4NzEwCisJLmxvbmcJMTc2ODc5NzQ5MAorCS5sb25nCTEwMTY4NjU1MzYKKwkubG9uZwkzNTk0MTU4ODY5CisJLmxvbmcJMTA3MzU5Mzk4MAorCS5sb25nCTI0NTY1MjE3MDAKKwkubG9uZwkzMTY0MzA1MTM3CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzM1OTkyNjUKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNjI1NzExMQorCS5sb25nCTE2Nzk1NTgyMzIKKwkubG9uZwkxMDczNjA0NTY1CisJLmxvbmcJMjM5MDM0MjI4NworCS5sb25nCTMxNjQzODI1NDYKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDczNjA5ODc5CisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjM2NjE3NzMKKwkubG9uZwkxNzk2ODMyNTM1CisJLmxvbmcJMTA3MzYxNTIwNworCS5sb25nCTMxNzY5NTU3MTYKKwkubG9uZwkzMTYxNjM0MDg5CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MzYyMDU1MAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTY0MDU5MTc1CisJLmxvbmcJOTkxMzU4NDgyCisJLmxvbmcJMTA3MzYyNTkwNworCS5sb25nCTgzODcxNTAxOQorCS5sb25nCTMxNjQyMDYyNDQKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MzYzMTI3OAorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE1MjU4NzYxCisJLmxvbmcJNjEwNzU4MDA2CisJLmxvbmcJMTA3MzYzNjY2NQorCS5sb25nCTE5NjUyMDkzOTcKKwkubG9uZwkzMTYyOTE0ODA4CisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzM2NDIwNjUKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNjI1NTc3OAorCS5sb25nCTIwMDk5NzA0OTYKKwkubG9uZwkxMDczNjQ3NDgxCisJLmxvbmcJMjE1OTAzOTY2NQorCS5sb25nCTMxNjM2MjE1MjQKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MzY1MjkxMQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjQ1MTEyNjcKKwkubG9uZwkyMjU2MzI1MjMwCisJLmxvbmcJMTA3MzY1ODM1NgorCS5sb25nCTU4MDExNzc0NgorCS5sb25nCTEwMTYzNjU4NzEKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDczNjYzODE2CisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjQzNzgwOTkKKwkubG9uZwkyNzE5NTE1OTIwCisJLmxvbmcJMTA3MzY2OTI5MAorCS5sb25nCTI3NjAzMzI5NDEKKwkubG9uZwkxMDE2MTg2NTA5CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzM2NzQ3NzkKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNjk3MzMwMAorCS5sb25nCTQ4MTcwNjI4MgorCS5sb25nCTEwNzM2ODAyODQKKwkubG9uZwkxNjk2MDc5MTczCisJLmxvbmcJMzE2Mzc1OTEwNAorCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzM2ODU4MDMKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNjMwODEzMworCS5sb25nCTEyMjI0NzIzMDgKKwkubG9uZwkxMDczNjkxMzM3CisJLmxvbmcJMTA1NDM1NzQ3MAorCS5sb25nCTMxNjIwNjk1OTQKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MzY5Njg4NgorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTY3MTQyMDkKKwkubG9uZwkyMDM4OTczNjg4CisJLmxvbmcJMTA3MzcwMjQ1MAorCS5sb25nCTg5Mjk0MTM3NAorCS5sb25nCTEwMTcwOTUwMzUKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MzcwODAyOQorCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTY0NDUzNjUwCisJLmxvbmcJMzU5MjkyMjUKKwkubG9uZwkxMDczNzEzNjI0CisJLmxvbmcJMjgwOTc4ODA0MQorCS5sb25nCTMxNjA0ODU1NDQKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MzcxOTIzMworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE1NDk4ODM1CisJLmxvbmcJOTE1NTkyNDY4CisJLmxvbmcJMTA3MzcyNDg1OAorCS5sb25nCTM1Mjk0Nzg5NAorCS5sb25nCTMxNjIwNzI5NDcKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDczNzMwNDk4CisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTMxMTU3NjQKKwkubG9uZwkxNzk3OTIzODAxCisJLmxvbmcJMTA3MzczNjE1MworCS5sb25nCTE5NTA1NDc0MjcKKwkubG9uZwkxMDE0Mjc3NjM1CisJLnR5cGUJVF9leHAsQG9iamVjdAorCS5zaXplCVRfZXhwLDQwOTYKKwkuc3BhY2UgNTEyLCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorZV9jb2VmZjoKKwkubG9uZwkzODg0NjA3MjgxCisJLmxvbmcJMTA2MjU5MDU5MQorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkxMDY4MjY0MjAwCisJLmxvbmcJMTg3NDQ4MDc1OQorCS5sb25nCTEwNjU1OTU1NjMKKwkubG9uZwk0Mjg2NzYwMzM1CisJLmxvbmcJMTA3MDUxNDEwOQorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQllX2NvZWZmLEBvYmplY3QKKwkuc2l6ZQllX2NvZWZmLDQ4CisJLmFsaWduIDE2Citjb2VmZl9oOgorCS5sb25nCTAKKwkubG9uZwkzMjE4NDc5NjE2CisJLmxvbmcJMAorCS5sb25nCTMyMTA1ODcxMDUKKwkudHlwZQljb2VmZl9oLEBvYmplY3QKKwkuc2l6ZQljb2VmZl9oLDE2CisJLmFsaWduIDE2CitISUdITUFTS19MT0dfWDoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY1MjQ4CisJLnR5cGUJSElHSE1BU0tfTE9HX1gsQG9iamVjdAorCS5zaXplCUhJR0hNQVNLX0xPR19YLDE2CisJLmFsaWduIDgKK0hBTEZNQVNLOgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkudHlwZQlIQUxGTUFTSyxAb2JqZWN0CisJLnNpemUJSEFMRk1BU0ssMTYKKwkuYWxpZ24gOAorbG9nMjoKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA3MjA0OTczMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjE5NTMzMzc4CisJLnR5cGUJbG9nMixAb2JqZWN0CisJLnNpemUJbG9nMiwxNgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Bvdy4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfcG93LjUtLi5fX190YWdfdmFsdWVfcG93LjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Bvdy4zLS4uX19fdGFnX3ZhbHVlX3Bvdy4xCisJLjJieXRlIDB4MzAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfcG93LjQtLi5fX190YWdfdmFsdWVfcG93LjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2Vfc2luaC5TIGIvbGlibS94ODZfNjQvZV9zaW5oLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGQ4ZGI2MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2Vfc2luaC5TCkBAIC0wLDAgKzEsMTQzMCBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgc2luaCh4KT0oZXhwKHgpLWV4cCgteCkpLzIKKy8vCisvLyAgTGV0IHx4fD14SCt4TCAodXBwZXIgMjYgYml0cywgbG93ZXIgMjcgYml0cykKKy8vICBsb2cyKGUpIHJvdW5kZWQgdG8gMjYgYml0cyAoaGlnaCBwYXJ0KSBwbHVzIGEgZG91YmxlIHByZWNpc2lvbiBsb3cgcGFydCBpcworLy8gICAgICAgICAgTDJFSCtMMkVMICh1cHBlciAyNiwgbG93ZXIgNTMgYml0cykKKy8vCisvLyAgTGV0IHhIKkwyRUg9aytmK3JgLCB3aGVyZSAoaytmKSoyXjc9aW50KHhIKkwyRUgqMl43KSwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZj0wLmIxIGIyIC4uLiBiNywgayBpbnRlZ2VyCisvLyAgMl5mIGlzIGFwcHJveGltYXRlZCBhcyBUcFtmXStEcFtmXSwgYW5kIDJeey1mfSBhcyBUbltmXStEbltmXQorLy8gIFRwIHN0b3JlcyB0aGUgaGlnaCA1MyBiaXRzLCBEcCBzdG9yZXMgKDJeZi1UcFtmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIGVefHh8PTJee2srZn0qMl5yLCByPXJgK3hMKkwyRUgrfHh8KkwyRUwsIHxyfDwyXnstOH0rMl57LTE0fSwKKy8vICAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsyMy82NCwzKjJeNykKKy8vICBlXnstfHh8fT0yXnstay1mfSoyXnstcn0KKy8vCisvLyAgZV58eHwgaXMgYXBwcm94aW1hdGVkIGFzIDJeaypUcCsyXmsqVHAqYzEqcigxK2MyKnIrLi4rYzUqcl40KSsyXmsqRHA9CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgID0yXmsqVHArMl5rKlRwKlAxNSsyXmsqRHAKKy8vICBlXnstfHh8fSBhcHByb3hpbWF0ZWQgYXMgMl57LWt9KlRuLTJeey1rfSpUbipjMSpyKDEtYzIqcisuLitjNSpyXjQpKzJeey1rfSpEbgorLy8KKy8vICBGb3IgfHh8IGluIFsxLzgsIDMqMl43KSwgc2luaCh4KSBpcyBmb3JtZWQgYXMKKy8vICAgICAgUk4oMl5rKlRwLTJeey1rfSpUbikrMl5rKlRwKlAxNS0yXnsta30qVG4qUGAxNS0yXnsta30qVG5MLTJeey1rfSpEbisyXmsqRHAKKy8vCisvLyAgRm9yIHggaW4gKDMqMl43LCAzKjJeOCksIHNpZ24oeCkqKGVefHh8KS8yIGlzIHJldHVybmVkLCBhbmQKKy8vICB0aGUgcmVzdWx0IGlzIGNoZWNrZWQgZm9yIG92ZXJmbG93LgorLy8KKy8vICBGb3IgfHh8PDIzLzY0LCBhIFRheWxvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyB1c2VkIChkZWdyZWUgMTMpCisvLyAgVG8gcmVkdWNlIHJvdW5kaW5nIGVycm9ycywgdGhlIHAzKnheMyB0ZXJtIGlzIGNvbXB1dGVkIGFzCisvLyAgICAgKHAzKnhoXjMpX2hpZ2grWyhwMyp4bCooMyp4KnhoK3hsXjIpKSsocDMqeGheMylfbG93XSwKKy8vICB3aGVyZSB4PXhoK3hsLCAoeGggYXJlIHRoZSBsZWFkaW5nIDE3IGJpdHMgb2YgeCksIGFuZAorLy8gICAgIChwMyp4aF4zKV9oaWdoPVJOKHgrcDMqeGheMykteAorLy8gIChlcnJvciBib3VuZCBmb3IgcG9seW5vbWlhbCBleHBhbnNpb24gaXMgYmVsb3cgMC41MSB1bHApCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBzaW5oKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHNpbmgoKy8tSU5GKSA9ICsvLUlORgorLy8gIHNpbmgoeCkgPSB4IGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBzaW5oKDApPTAgaXMgZXhhY3QKKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICAgIHNpbmgoeCkgb3ZlcmZsb3dzICBmb3IgeCA+IAorLy8gICAgNzEwLjQ3NTg2MDA3Mzk0Mzg2MzQyNjM5MzM2MzYyNDgxMTE3MjQ4NTM1MTU2MjUwID0gTUFYTE9HK2xvZygyKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHNpbmgKK0VOVFJZKHNpbmgpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfc2luaC4xOgorICAgICAgICBwdXNocSAgICAgJXJzaQorLi5fX190YWdfdmFsdWVfc2luaC4zOgorLi5CMS4yOgorICAgICAgICBtb3ZzZCAgICAgSEFMRk1BU0soJXJpcCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIEwyRSglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgrTDJFKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIFNoaWZ0ZXIoJXJpcCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE3NywgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMywgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIGN2KCVyaXApLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxNitjdiglcmlwKSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDMyNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDMyK2N2KCVyaXApLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTI3LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDE2MSwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTUsICV4bW01CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0wCisgICAgICAgIHBzdWJ3ICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbGVhICAgICAgIFQyZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0wCisgICAgICAgIGxlYSAgICAgICBUMl9uZWdfZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNDgrY3YoJXJpcCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgNjQrY3YoJXJpcCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2h1ZnBkICAgICQwLCAleG1tNSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIFQyZiglcmlwKSwgJXI4CisgICAgICAgIG11bHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgNDgrY3YoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICA2NCtjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxMjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTYzNDMsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNTg1NiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgbW92YXBkICAgIHB2KCVyaXApLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMTYrcHYoJXJpcCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMzIrcHYoJXJpcCksICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgTUFTSzMoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBzdWJwZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNzM5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxNTM0NCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgKCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisuLkIxLjU6CisgICAgICAgIHBvcHEgICAgICAlcmN4CisuLl9fX3RhZ192YWx1ZV9zaW5oLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX3NpbmguNToKK0VORChzaW5oKQorIyAtLSBFbmQgIHNpbmgKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0wyRToKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA4MDQ5NzQ3OQorCS5sb25nCTQxNjY5MDE1NzIKKwkubG9uZwkxMDUzMDc3MDAzCisJLnR5cGUJTDJFLEBvYmplY3QKKwkuc2l6ZQlMMkUsMTYKKwkuYWxpZ24gMTYKK1NoaWZ0ZXI6CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMzI3NTIyNzEzNgorCS50eXBlCVNoaWZ0ZXIsQG9iamVjdAorCS5zaXplCVNoaWZ0ZXIsMTYKKwkuYWxpZ24gMTYKK2N2OgorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkxMDQ0MTQ2OTUyCisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTMxOTE2MzA2MDAKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA2MzY2MTEyMgorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjExMTQ0NzcwCisJLmxvbmcJMjE0MDE3NTc1NQorCS5sb25nCTEwMzM4NjQyNjEKKwkubG9uZwkyMTQwMTc1NzU1CisJLmxvbmcJMTAzMzg2NDI2MQorCS5sb25nCTQyODk0OTU5ODgKKwkubG9uZwkxMDU0MTEzNzQ3CisJLmxvbmcJNDI4OTQ5NTk4OAorCS5sb25nCTEwNTQxMTM3NDcKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA2NDcwOTY5OAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDY0NzA5Njk4CisJLnR5cGUJY3YsQG9iamVjdAorCS5zaXplCWN2LDgwCisJLmFsaWduIDE2CitUMmY6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MjcwNDY2NgorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYxNTU5MTcxCisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzI3MTA0MjEKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYzNTk1NTQ4CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzI3MTYyMDgKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNTkwMzIwMgorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzI3MjIwMjcKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MzMyODk5MQorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzI3Mjc4NzcKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMzAyNDQ0NgorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcyNzM5NjcyCisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTY2MzY5NzQKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcyNzQ1NjE4CisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNjA3ODA0NAorCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzI3NTE1OTYKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDEwODQyMTM1CisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzI3NTc2MDYKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MTE2ODg3NworCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcyNzYzNjQ5CisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mzk5NzQ1NgorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcyNzY5NzI1CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTk0NzEzODAKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3Mjc3NTgzNAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYzNzYyNjIzCisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzI3ODE5NzYKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNTE2OTEzMAorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcyNzk0MzYxCisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjM2MjM0NTkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MjgwMDYwMworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE1OTYyNDQ0CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MjgxMzE5MQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNjk4ODAxNAorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzI4MTk1MzYKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjM2NzY1NjgKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MjgyNTkxNQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE1OTI0NTk3CisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzI4MzIzMjkKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNTE5NjAzMAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcyODM4Nzc4CisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTY3MDUxNTAKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzI4NTE3ODEKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNTIwMTA3NQorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3Mjg5MTY0NgorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE1NDc3MzU0CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzI4OTg0MTYKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNTcxNzA5NQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MjkxMjA2OQorCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYzMjQ5OTAyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MjkxODk1MQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYzOTYyMDkwCisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzI5MjU4NzAKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2NDUwOTU4MQorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzI5MzI4MjcKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MTg0Mjc0MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcyOTQ2ODU0CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNTczMjc0NQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3Mjk1MzkyNQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTY0MDY1ODI3CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzI5NzUzNjgKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTEzOTEzNTQKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3Mjk4MjU5MworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE2ODk0NTM5CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcyOTk3MTYyCisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTY3MTIwMzQKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MzAwNDUwNgorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDE0ODQyMjYzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MzAyNjc3OAorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYzNTE4NTk3CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzMwMzQyODMKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYyNTM2NjM4CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzMwNDE4MjgKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MzM4Mzk2NAorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzMwNDk0MTUKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTY3MDc4ODQKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MzA3MjQyMgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDEwNTg0MzQ3CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MzA4MDE3NQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTY4MzM3ODUKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MzA4Nzk2OQorCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYzODA4MzIyCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDczMTExNjA4CisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjQzMjEyODkKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MzExOTU3MworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDEyOTM4OTI2CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDczMTQzNzMwCisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjExNzc2NTgKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MzE1MTg2OQorCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjMwNDQ4NzkKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDczMjEwMDk5CisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTM5OTY4MDIKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MzIxODU5OQorCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYzNzE2NzQyCisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzMyMjcxNDUKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2NDQyNTI0NQorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDczMjM1NzM4CisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjMwODQ0MjAKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MzI0NDM3NworCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTY0NTg3NzY4CisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzMyNTMwNjMKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNjY5ODA1MAorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDczMjcwNTc4CisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MTUxMTI2MgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDczMjc5NDA2CisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTU0MDE0OTEKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDczMjk3MjA3CisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNjA4OTEzMzUKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MzMwNjE4MAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYxODY5MTgwCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzMzMTUyMDIKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2NDQxMTk5NQorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MzMzMzM5MworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDE0NzkxMjM4CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MzM0MjU2MworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDE0NTA2Njk4CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzMzNTE3ODIKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2Mzc3MzI1NworCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MzM3MDM3MQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTY0NDE3OTAyCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MzM3OTc0MgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE2ODQzMTM0CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzMzODkxNjMKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE2MTM0MzQ1CisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzMzOTg2MzUKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MzUyNTY4NAorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDczNDA4MTU5CisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNjU3MDMxNworCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzM0MTc3MzUKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2NDMzMTc2NQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MzQ1NjU2MAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjQ1MzYwMTkKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MzQ2NjM5OAorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE1MTY4NDY0CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDczNDg2MjM1CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTUwOTEzMDEKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MzQ5NjIzNQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE2ODA4NzU5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MzUwNjI4OQorCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE2MjM2MTA5CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzM1MTYzOTcKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxNDA4Mjc0OAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzM1NDcwNTMKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2NDM4ODQwNworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDczNTY3NzY4CisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTUyMTMzMTQKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDczNTc4MjExCisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjM2MjcyMDEKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDczNTk5MjY1CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTYyNTcxMTEKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDczNjA5ODc5CisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjM2NjE3NzMKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MzYzMTI3OAorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE1MjU4NzYxCisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzM2NDIwNjUKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNjI1NTc3OAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDczNjc0Nzc5CisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTY5NzMzMDAKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDczNjg1ODAzCisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTYzMDgxMzMKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MzY5Njg4NgorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTY3MTQyMDkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MzcwODAyOQorCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTY0NDUzNjUwCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzM3MTkyMzMKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNTQ5ODgzNQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS50eXBlCVQyZixAb2JqZWN0CisJLnNpemUJVDJmLDIwNDgKKwkuYWxpZ24gMTYKK1QyX25lZ19mOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDcyNjgxOTIyCisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTIwNjcxODgKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MjY3MDY1NworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE0NDUwMjU5CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzI2MzcyMjcKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNTI1OTU1NworCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDcyNjI2MjAzCisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTU5MjQ3MjQKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDcyNjE1MjQwCisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjMzMjk1MjMKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MjYwNDMzNQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjM0NjI2OTEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzI1NzE5NzQKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2MzAxMDU5OQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDcyNTUwNjg5CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTUyMDg1MzUKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzI1NDAxMzQKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNTgxNjk2MAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDcyNTE5MTkyCisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTQxNjQ3MzgKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDcyNTA4ODA3CisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjMzNzU3MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MjQ5ODQ3NworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTYzMzM5ODMxCisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzI0ODgyMDMKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MjM2Mzk2MworCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDcyNDc3OTg0CisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTMyNTMwNjcKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MjQ1NzcxMworCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE1MTg3NTMzCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzI0NDc2NTkKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNTc2MDE4MworCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDcyNDM3NjU5CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTQwNDI3MjUKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MjQyNzcxNAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTYzNDg3NjkwCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzI0MDc5ODQKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTYzNDg3NDQzCisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzIzOTgxOTgKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MDc1ODM1MQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDcyMzg4NDY2CisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjMzMjA3OTkKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MjM3ODc4NgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNTk1MjM0MjIKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MjMzMTE2NgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE1Nzk0NTU4CisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzIzMjE3OTUKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2MzM2OTMyNgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDcyMzEyNDc1CisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTU0MjcxNjQKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MjI5Mzk4NworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDEzNDU4MTIyCisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzIyODQ4MTcKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxMzc0MjY2MgorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDcyMjc1Njk3CisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjI2MDAzODEKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzIyNTc2MDQKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MDgyMDYwNAorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDcyMjQ4NjMxCisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNTk4NDI3NTkKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDcyMjM5NzA3CisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2MzQxMjA4OQorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDcyMjIyMDAyCisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MDQ2MjY4NgorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDcyMjEzMjIxCisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTU0NzQ2NzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzIxOTU4MDEKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2MzUzOTE5MgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDcyMTg3MTYyCisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjIwMzU4NDQKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzIxNjE1MjMKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMjk0ODIyNgorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MjE1MzA2OQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE2MDA5MjkyCisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzIxNDQ2NjAKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2MTcyNDI3OQorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDcyMTM2Mjk3CisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNTU3MjE1MgorCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDcyMTI3OTc5CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjI1MTQ1MjEKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MjExOTcwNgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYyNTQ4NDQxCisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzIxMTE0NzcKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MTU1MDQwNworCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDcyMDk1MTU0CisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjAxMjkwODIKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MjA4NzA1OAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYwNTc0Mjk0CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDcyMDYzMDMyCisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjMyNzI3MTMKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDcyMDU1MTEwCisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjIyNjE1NjQKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MjA0NzIzMAorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYyNzM1NTUzCisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzIwMjM4NDYKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAwOTUzNTc3MQorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDcyMDE2MTM1CisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE1NDI3NjYwCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzIwMDg0NjYKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNDE0MjQzMworCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzE5NzgyMDIKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MjQ3MDAyMQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDcxOTcwNzM4CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjI4MTMxOTMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MTk2MzMxNAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE1NjA2NDkxCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcxOTQ4NTg2CisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTU2NjM0NTgKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3MTk0MTI4MgorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDEzMTcwNTk1CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcxOTI2NzkyCisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDEwMzQyNzc4CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzE5MTk2MDUKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MTU3MzM0MQorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzE5MTI0NTgKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTU5MjkwNzI5CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3MTg5ODI3OAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTQ2ODQxNjkKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MTg5MTI0NQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjM0ODgyNDgKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzE4NjM0OTMKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MjIwMTMyNgorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcxODU2NjQ4CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTUyMjgxOTMKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3MTg0MzA3MAorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE0NDI4Nzc4CisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzE4MzYzMzUKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxMzA0MTY3OQorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcxODI5NjM3CisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTUwMjIxNTEKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3MTgyMjk3NQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU3MzMwNjUyCisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzE4MTYzNDkKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNDM3MTA0OAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcxODA5NzU5CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjMxODAwOTAKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3MTgwMzIwNQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE0MTUyNDk5CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzE3OTY2ODYKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNDY3Nzg0NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MTc4Mzc1MworCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE0MTQ3NDU0CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzE3NzA5NjAKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjI2Mjc5OTIKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcxNzY0NjE1CisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE1OTM5NDM4CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzE3NTgzMDQKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTYzMTE2NDIyCisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzE3NDU3ODUKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MjU3NDg4MworCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcxNzM5NTc2CisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjE1NTkxMDUKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3MTcxNTA3MworCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjI5NDg4ODAKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3MTcwMzAyMAorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMDk3OTM1NTkKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcxNjk3MDQyCisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNTAyOTQ2OAorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcxNjkxMDk2CisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTU1ODgzOTgKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MTY4NTE4MgorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTUxMDU2NTYKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcxNjUwMzY1CisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTU3NjczMzcKKwkudHlwZQlUMl9uZWdfZixAb2JqZWN0CisJLnNpemUJVDJfbmVnX2YsMjA0OAorCS5hbGlnbiAxNgorcHY6CisJLmxvbmcJMzI5ODA1MDY0CisJLmxvbmcJMTAzODQ4ODEzNAorCS5sb25nCTI3NzM5Mjc3MzAKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTc0NDEyNzIwMQorCS5sb25nCTEwNDYxNDQ1ODEKKwkubG9uZwk0MzYzMTQxMzcKKwkubG9uZwkxMDU5NzE3NTM2CisJLnR5cGUJcHYsQG9iamVjdAorCS5zaXplCXB2LDQ4CisJLmFsaWduIDE2CitNQVNLMzoKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4MAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLnR5cGUJTUFTSzMsQG9iamVjdAorCS5zaXplCU1BU0szLDE2CisJLmFsaWduIDgKK0hBTEZNQVNLOgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLnR5cGUJSEFMRk1BU0ssQG9iamVjdAorCS5zaXplCUhBTEZNQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW5oLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW5oLjUtLi5fX190YWdfdmFsdWVfc2luaC4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW5oLjMtLi5fX190YWdfdmFsdWVfc2luaC4xCisJLjJieXRlIDB4MTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luaC40LS4uX19fdGFnX3ZhbHVlX3NpbmguMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZmxvb3IuUyBiL2xpYm0veDg2XzY0L2Zsb29yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGM4MGU4OAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2Zsb29yLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShmbG9vcikKK3JvdW5kc2QgJDB4MSwleG1tMCwleG1tMAorcmV0cQorRU5EKGZsb29yKQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZmxvb3JmLlMgYi9saWJtL3g4Nl82NC9mbG9vcmYuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MzJmOWM1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZmxvb3JmLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShmbG9vcmYpCityb3VuZHNzICQweDEsJXhtbTAsJXhtbTAKK3JldHEKK0VORChmbG9vcmYpCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zX2F0YW4uUyBiL2xpYm0veDg2XzY0L3NfYXRhbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI0NTNlMTAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zX2F0YW4uUwpAQCAtMCwwICsxLDkyNyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIFRoaXMgaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgbWFpbiBwYXRoIGZvciB8eHwgaW4gWzJeey01fSwyXjY1KS4KKy8vIEZvciB8eHwgaW4gWzJeey02NH0sMl57LTV9KSwgYSBzZWNvbmRhcnkgcGF0aCBpcyB1c2VkLgorLy8gRm9yIHRoZSBiaWFzZWQgZXhwb25lbnQgb2YgWCB3aXRoaW4gM0ZGSC02NCBhbmQgM0ZGKzY0LCB3ZSB1c2Ugb25lIGJyYW5jaC4KKy8vIFdlIHVzZSB0aGUgZm9sbG93aW5nIGRlZmluaXRpb24gb2YgQiBhbmQgWGAgc28gdGhhdCB0aGUgZm9ybXVsYQorLy8gYXRhbihYKSA9IFRhdSArIGF0YW4oIChYYC1CKSAvIChPbmUgKyBCWCkgKSBpcyBjb3JyZWN0CisvLworLy8gWCA9ICgtMSlecyAqIDJeayAqIDEuIHgxIHgyIC4uLiB4NTIKKy8vCisvLyBEZWZpbmUgWGAgID0gMCBpZiBrID49IDU7IGFuZCBYYCAgPSB8WHwgb3RoZXJ3aXNlCisvLyBEZWZpbmUgT25lID0gMCBpZiBrID49IDU7IGFuZCBPbmUgPSAxIG90aGVyd2lzZQorLy8gRGVmaW5lIEIgID0gMCBpZiBrIDw9IC02OyBCID0gIDJeayAqIDEueDEgeDIgeDMgeDQgMSAgaWYgLTUgPD0gayA8PSA0CisvLyBEZWZpbmUgQiAgPSAgMl41ICogMS4wIDAgLi4uIDAgICBpZiAgayA+PSA1CisvLworLy8gVGF1IGlzIDAgaWYgayA8PSAtNjsKKy8vIFRhdSBpcyBhdGFuKCBCICkgIGlmIC01IDw9IGsgPD0gNAorLy8gVGF1IGlzIHBpLzIgaWYgayA+PSA1CisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBhdGFuKE5hTikgPSBxdWlldCBOYU4KKy8vICBhdGFuKCsvLUlORikgPSArLy1QaS8yCisvLyAgYXRhbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBhdGFuCitFTlRSWShhdGFuKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2F0YW4uMToKKyAgICAgICAgcHVzaHEgICAgICVyc2kKKy4uX19fdGFnX3ZhbHVlX2F0YW4uMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92cSAgICAgICQweGZmZmYwMDAwMDAwMDAwMDAsICVyOAorICAgICAgICBtb3ZkICAgICAgJXI4LCAleG1tMworICAgICAgICBtb3ZxICAgICAgT05FTUFTSyglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICQweDgwMDAwMDAwMDAwMCwgJXI5CisgICAgICAgIG1vdmQgICAgICAlcjksICV4bW00CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlZHgKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW00LCAleG1tMworICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYyODgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNTksICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkbCAgICAgICQxLCAlZWR4CisgICAgICAgIG1vdnEgICAgICBhMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIGIyKCVyaXApLCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNworICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBsZWEgICAgICAgYXRhbl90YmwoJXJpcCksICVyOAorICAgICAgICBtb3ZxICAgICAgKCVyOCwlcmR4LDgpLCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCglcjgsJXJkeCw4KSwgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdnEgICAgICA4K2EyKCVyaXApLCAleG1tNworICAgICAgICBtb3ZkZHVwICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92ZGR1cCAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCtiMiglcmlwKSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBhZGRsICAgICAgJDk0NCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDExMDMsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisgICAgICAgIG1vdnEgICAgICBhMiglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIGIyKCVyaXApLCAleG1tNworICAgICAgICBtb3ZxICAgICAgKCVyc3ApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdnEgICAgICA4K2EyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgOCtiMiglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKy5MXzJUQUdfUEFDS0VUXzIuMC4xOgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0xCisgICAgICAgIGNtcGwgICAgICAkMTYsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4xCisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgY21wbCAgICAgICQxNzM5MiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjEKKyAgICAgICAgbW92cSAgICAgICQweGJmZjAwMDAwMDAwMDAwMDAsICVyOAorICAgICAgICBtb3ZkICAgICAgJXI4LCAleG1tMQorICAgICAgICBkaXZzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBhMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIGIyKCVyaXApLCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNworICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgcGlfdGFibGUoJXJpcCksICV4bW02CisgICAgICAgIG1vdnEgICAgICA4K3BpX3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIDgrYTIoJXJpcCksICV4bW03CisgICAgICAgIG1vdmRkdXAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZkZHVwICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIGFkZHNkICAgICA4K2IyKCVyaXApLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW00CisgICAgICAgIG1vdnEgICAgICBTR05NQVNLKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgcGlfdGFibGUoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4K3BpX3RhYmxlKCVyaXApLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVkeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKyAgICAgICAgYW5kbnBkICAgICV4bW00LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKy5MXzJUQUdfUEFDS0VUXzUuMC4xOgorICAgICAgICBzdWJsICAgICAgJDIxNDY0MzUwNzIsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorLi5CMS4zOgorICAgICAgICBwb3BxICAgICAgJXJjeAorLi5fX190YWdfdmFsdWVfYXRhbi40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9hdGFuLjU6CitFTkQoYXRhbikKKyMgLS0gRW5kICBhdGFuCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDQKKwkuYWxpZ24gNAorT05FTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCU9ORU1BU0ssQG9iamVjdAorCS5zaXplCU9ORU1BU0ssOAorCS5hbGlnbiA0CithMjoKKwkubG9uZwkyMDA2MjYyOTg1CisJLmxvbmcJMTA2OTMxMDg2MworCS5sb25nCTIzNTg0NDk0NzEKKwkubG9uZwkzMjE3MzQyMTMxCisJLnR5cGUJYTIsQG9iamVjdAorCS5zaXplCWEyLDE2CisJLmFsaWduIDQKK2IyOgorCS5sb25nCTM4NDU0NTQzNTIKKwkubG9uZwkxMDY5OTUyMjk3CisJLmxvbmcJMjgyOTY3OTE0OQorCS5sb25nCTEwNzM3NzE1NjUKKwkudHlwZQliMixAb2JqZWN0CisJLnNpemUJYjIsMTYKKwkuYWxpZ24gNAorYXRhbl90Ymw6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM4MTk2OTU3NDIKKwkubG9uZwkxMDY3NDgyNzYxCisJLmxvbmcJMjM5ODY4MDM1NQorCS5sb25nCTMxNTU0NjIwNzQKKwkubG9uZwkyOTk4NzkxMDA5CisJLmxvbmcJMTA2NzU0ODIyNQorCS5sb25nCTM4Njg0NjUyNDgKKwkubG9uZwkzMTU3MTgyNDcyCisJLmxvbmcJMzMzOTQyNDk5MQorCS5sb25nCTEwNjc2MTM2ODAKKwkubG9uZwkzMjk2NjcwMzYwCisJLmxvbmcJMTAxMDc1MjU0MworCS5sb25nCTI3MTAwMDIyNTYKKwkubG9uZwkxMDY3Njc5MTI2CisJLmxvbmcJMzQwMzg5NjAwNworCS5sb25nCTEwMTA5MTA3NjgKKwkubG9uZwkzMjc1NzAxNDI4CisJLmxvbmcJMTA2Nzc0NDU2MgorCS5sb25nCTExOTk1OTkzMworCS5sb25nCTEwMTE0ODI4NDMKKwkubG9uZwkyOTA4NjM2ODgxCisJLmxvbmcJMTA2NzgwOTk4OAorCS5sb25nCTI0NjQ0ODk2MTIKKwkubG9uZwkxMDExNTQ1NTI2CisJLmxvbmcJMzc3Nzg4OTM5OAorCS5sb25nCTEwNjc4NzU0MDMKKwkubG9uZwkzMjYyNjgyMTY1CisJLmxvbmcJMTAwOTcwMzkxOQorCS5sb25nCTM3NTk2Njc0MTkKKwkubG9uZwkxMDY3OTQwODA3CisJLmxvbmcJMTgzODEzMDg1MQorCS5sb25nCTMxNTczNzM1NTYKKwkubG9uZwk3MzIzNjk5NDAKKwkubG9uZwkxMDY4MDA2MjAwCisJLmxvbmcJMTIwMzQyODMxMworCS5sb25nCTEwMTAwNTUzNzEKKwkubG9uZwkxMTY2NjE2NDYxCisJLmxvbmcJMTA2ODA3MTU4MAorCS5sb25nCTI5MDEyNzQwNTEKKwkubG9uZwkzMTU4NTQ5OTc3CisJLmxvbmcJMjk0NTQ3Mjg5MgorCS5sb25nCTEwNjgxMzY5NDcKKwkubG9uZwkzNzI2MTIwNjU4CisJLmxvbmcJMTAwOTc2MjcxNQorCS5sb25nCTM5NTQ0ODA5NzYKKwkubG9uZwkxMDY4MjAyMzAxCisJLmxvbmcJMTI4OTE3MzQ1NworCS5sb25nCTEwMDk0Mjk4NjEKKwkubG9uZwkyMDgxNzUyODI5CisJLmxvbmcJMTA2ODI2NzY0MgorCS5sb25nCTE4MzY5MDk4NzQKKwkubG9uZwkxMDA2MjEyMDk1CisJLmxvbmcJMzgwNzk5OTc4OAorCS5sb25nCTEwNjgzMzI5NjgKKwkubG9uZwkyMTcyNDU5OTQwCisJLmxvbmcJMzE1NjE2MjA3OAorCS5sb25nCTI3MzE3ODk4ODQKKwkubG9uZwkxMDY4Mzk4MjgwCisJLmxvbmcJMzQ1MDcxODM5MgorCS5sb25nCTMxNTkyMTY1NDcKKwkubG9uZwkxMDQ0NDc3OTYxCisJLmxvbmcJMTA2ODQ2MzU3NworCS5sb25nCTIyMzA1NTMyMjkKKwkubG9uZwkxMDExNDI0MzM5CisJLmxvbmcJMTQ4NjkzMDI4NworCS5sb25nCTEwNjg1MzAyMTgKKwkubG9uZwkyODYxNTQ3NDc0CisJLmxvbmcJMTAxMjA0MTM3NgorCS5sb25nCTIyOTMwMTY4ODEKKwkubG9uZwkxMDY4NTk1NDY2CisJLmxvbmcJMTM2ODQzMjcyCisJLmxvbmcJMTAxMjY4NDc5NworCS5sb25nCTIwMTUxODE1NworCS5sb25nCTEwNjg2NjA2ODAKKwkubG9uZwk2MzIzMTk4NAorCS5sb25nCTEwMTI0MjcxOTgKKwkubG9uZwk0MDU0MjM0NTg0CisJLmxvbmcJMTA2ODcyNTg1NgorCS5sb25nCTM5MjcwMDY5NjAKKwkubG9uZwkxMDExODc4OTU1CisJLmxvbmcJMTI0NjQ3NzIxMworCS5sb25nCTEwNjg3OTA5OTUKKwkubG9uZwkxNDk0MjY1NjUyCisJLmxvbmcJMzE1NTIxOTM1MAorCS5sb25nCTY3ODE4NjY5OQorCS5sb25nCTEwNjg4NTYwOTMKKwkubG9uZwkxMjY0MzYxNDI0CisJLmxvbmcJMzE1OTI1NjY5MworCS5sb25nCTI2OTA1OTQ5OTUKKwkubG9uZwkxMDY4OTIxMTQ4CisJLmxvbmcJMzkwNjk5NjM3OQorCS5sb25nCTEwMDkyODgyNjcKKwkubG9uZwkzMzYyNjExNTE3CisJLmxvbmcJMTA2ODk4NjE1OQorCS5sb25nCTE2NTA5NzAwNDEKKwkubG9uZwkzMTU4MzMxNzcxCisJLmxvbmcJMzEwMjE2MjExMQorCS5sb25nCTEwNjkwNTExMjQKKwkubG9uZwkzNjU5MTcwMzUKKwkubG9uZwkzMTYwMjY0MTUzCisJLmxvbmcJMjM1MjYxMTA2NworCS5sb25nCTEwNjkxMTYwNDEKKwkubG9uZwk0MDA4OTcwMTkwCisJLmxvbmcJMzE1OTQ3ODE4MgorCS5sb25nCTE1OTQxMzQ3OTQKKwkubG9uZwkxMDY5MTgwOTA4CisJLmxvbmcJNDY2NjkwMTc4CisJLmxvbmcJMTAxMjUyNjUwMQorCS5sb25nCTEzNDUwNzkzMDYKKwkubG9uZwkxMDY5MjQ1NzIzCisJLmxvbmcJMjI2ODI3MzU2OAorCS5sb25nCTMxNjAxNjQwOTIKKwkubG9uZwkyMTYzMzAwOTcwCisJLmxvbmcJMTA2OTMxMDQ4NAorCS5sb25nCTI3NTA4MzQ4MDAKKwkubG9uZwkzMTU4MTEzNDgyCisJLmxvbmcJMzUyNTIyNzE2CisJLmxvbmcJMTA2OTM3NTE5MAorCS5sb25nCTE3NTA0MTEzNzIKKwkubG9uZwkxMDExNzkwODQ1CisJLmxvbmcJODQ4NTQxNjQ3CisJLmxvbmcJMTA2OTQzOTgzOAorCS5sb25nCTIxNjQyMDc1NzMKKwkubG9uZwkxMDExNjk4MzUwCisJLmxvbmcJNDA2NDczMTIKKwkubG9uZwkxMDY5NTA0NDI3CisJLmxvbmcJMjk0OTE2NTQzNAorCS5sb25nCTMxNTkxMDcyNjcKKwkubG9uZwkyMjE2NzY2MjcwCisJLmxvbmcJMTA2OTU3NDM1NworCS5sb25nCTIxOTc5MjA3NjUKKwkubG9uZwkzMTYxMDU1OTU0CisJLmxvbmcJMTA5MDkxNDM4NAorCS5sb25nCTEwNjk2Mzg3NTcKKwkubG9uZwkyMzMwNDU0Njc0CisJLmxvbmcJMTAxMzM2NTk5OAorCS5sb25nCTM4NzYwMTI0NAorCS5sb25nCTEwNjk3MDMwMjIKKwkubG9uZwkzMTg1NjgxMTY4CisJLmxvbmcJMTAxMzQzNDA3MQorCS5sb25nCTM5OTE2NDA0ODQKKwkubG9uZwkxMDY5NzY3MTQ0CisJLmxvbmcJMTMxMzIxMTU5MAorCS5sb25nCTMxNjEwODc5NTkKKwkubG9uZwkzMzIyNDg5NTAyCisJLmxvbmcJMTA2OTgzMTExOAorCS5sb25nCTMwMTM5Nzc5OTUKKwkubG9uZwkxMDEzMDUzMDExCisJLmxvbmcJMzEyMTY5ODU3MAorCS5sb25nCTEwNjk4OTQ5MzYKKwkubG9uZwk0MDY5MDE1NjY3CisJLmxvbmcJMTAxMzAyMzM2MgorCS5sb25nCTQyODk5NjQ2NjAKKwkubG9uZwkxMDY5OTU4NTkxCisJLmxvbmcJMTczNjE5MTE1NgorCS5sb25nCTMxNTgyNjY3MzEKKwkubG9uZwkzOTAzMzEyMzg2CisJLmxvbmcJMTA3MDAyMjA3NworCS5sb25nCTE4MzM1OTI0MTMKKwkubG9uZwkzMTU5NzMxNDcxCisJLmxvbmcJMzgxODQ0OTg2NAorCS5sb25nCTEwNzAwODUzODcKKwkubG9uZwk4NTEwMzY0MjkKKwkubG9uZwkzMTU5NzMwNDUxCisJLmxvbmcJMjA5NzQ4MDMwNgorCS5sb25nCTEwNzAxNDg1MTUKKwkubG9uZwkzNTA2MzkwODg0CisJLmxvbmcJMzE2MDQ2MjMwMgorCS5sb25nCTE2MTE2OTQ1MDIKKwkubG9uZwkxMDcwMjExNDU0CisJLmxvbmcJMjc4NTczNTU0MAorCS5sb25nCTMxNjA0NjUxNDQKKwkubG9uZwkxNDY0Njk0Nzk2CisJLmxvbmcJMTA3MDI3NDE5OAorCS5sb25nCTQyMjkyNzcyOTkKKwkubG9uZwkzMTU5OTA3MDAwCisJLmxvbmcJMTI5OTYxMjc3NQorCS5sb25nCTEwNzAzMzY3NDEKKwkubG9uZwk0MTE2NjUzNzg4CisJLmxvbmcJMzE2MDQyNzczOQorCS5sb25nCTEzMTA1NDQ3ODkKKwkubG9uZwkxMDcwMzk5MDc3CisJLmxvbmcJMTA2NDQzMDMzMQorCS5sb25nCTEwMTMyMTgyMDIKKwkubG9uZwkyMjUzMTY4MDMwCisJLmxvbmcJMTA3MDQ2MTIwMAorCS5sb25nCTE0MDUwNDQ2MDkKKwkubG9uZwkzMTU3NjIzMTc5CisJLmxvbmcJMTE1OTU2NzM3MworCS5sb25nCTEwNzA1MjMxMDUKKwkubG9uZwkyMzUzNDQ1NTIxCisJLmxvbmcJMzE1OTk5MjE3NgorCS5sb25nCTEzNTkzNzM3NTAKKwkubG9uZwkxMDcwNjA1ODE4CisJLmxvbmcJMTc0ODE3MTMzNgorCS5sb25nCTMxNjE4NzkyNjMKKwkubG9uZwk5MDgzNDE3MDYKKwkubG9uZwkxMDcwNjY3MDM0CisJLmxvbmcJMzM3MjcxMDgxNQorCS5sb25nCTMxNjE3NzUyNDUKKwkubG9uZwkxNzQzMDI3MzUwCisJLmxvbmcJMTA3MDcyNzc2NQorCS5sb25nCTY4NzA4OTkzNAorCS5sb25nCTMxNjA1MDcxNzEKKwkubG9uZwkyMDU1MzU1NjQ2CisJLmxvbmcJMTA3MDc4Nzk5MgorCS5sb25nCTIzOTI4NTUyNDIKKwkubG9uZwkxMDEzNjgyNDY5CisJLmxvbmcJNjkwNDI2MTY0CisJLmxvbmcJMTA3MDg0NzY5NworCS5sb25nCTExMDM5MjY2NjYKKwkubG9uZwkxMDE0MDUyODEwCisJLmxvbmcJMTQ4MzI0Nzg0NworCS5sb25nCTEwNzA5MDY4NjIKKwkubG9uZwkyMDgyNjQ1ODQ3CisJLmxvbmcJMzE2MTM0NTQ3OQorCS5sb25nCTM5MjA0MDI3MAorCS5sb25nCTEwNzA5NjU0NzIKKwkubG9uZwkyNDA3NzIwMDIzCisJLmxvbmcJMTAxNDA1Mzc1NAorCS5sb25nCTI2NzM4NDYwMTQKKwkubG9uZwkxMDcxMDIzNTExCisJLmxvbmcJMTI5MzYwNTUzMgorCS5sb25nCTMxNTg0NjQzODUKKwkubG9uZwkxMzg0MjE1ODEwCisJLmxvbmcJMTA3MTA4MDk2NworCS5sb25nCTI0NDYwOTU4NzIKKwkubG9uZwkzMTU5MjE2NDA3CisJLmxvbmcJMzEwMTY2MDYzMQorCS5sb25nCTEwNzExMzc4MjYKKwkubG9uZwk2OTgwNDA3NTgKKwkubG9uZwkxMDE0ODU1MzI4CisJLmxvbmcJMjA5NDA1NzA1OAorCS5sb25nCTEwNzExOTQwNzgKKwkubG9uZwkyMjgyMDQ4MzM5CisJLmxvbmcJMTAxNDA0MDM4NQorCS5sb25nCTE3MTI3NTA1OTQKKwkubG9uZwkxMDcxMjQ5NzEyCisJLmxvbmcJMTIwNDM3MjM3OAorCS5sb25nCTMxNjIyNzY0NjQKKwkubG9uZwkxNDExNTE1Nzg3CisJLmxvbmcJMTA3MTMwNDcxOQorCS5sb25nCTk0OTA4MDgwOAorCS5sb25nCTEwMTUwMDY0MDMKKwkubG9uZwk5MzE1MzgwODUKKwkubG9uZwkxMDcxMzU5MDkxCisJLmxvbmcJMzAyNzEyNzAzOQorCS5sb25nCTEwMTQzMDcyMzMKKwkubG9uZwkxNzkxMzkwNjUKKwkubG9uZwkxMDcxNDEyODIxCisJLmxvbmcJNDI4NTU0NzQ5MgorCS5sb25nCTMxNjE5MzQ3MzEKKwkubG9uZwkzMzg3NzIxMjU5CisJLmxvbmcJMTA3MTQ2NTkwMgorCS5sb25nCTM3MzIyNTc3MworCS5sb25nCTEwMTM0ODY2MjUKKwkubG9uZwkyMTMyMjM2ODUyCisJLmxvbmcJMTA3MTU0NDI5OQorCS5sb25nCTMyNTA1MzM0MjkKKwkubG9uZwkxMDE0MDMxNjc3CisJLmxvbmcJMTk0MjA3MDI4NAorCS5sb25nCTEwNzE2NDU1OTYKKwkubG9uZwkxMjM3OTY0MTc5CisJLmxvbmcJMzE2MzIzOTExMworCS5sb25nCTE1MzI3MDc4MDIKKwkubG9uZwkxMDcxNjk1MzgwCisJLmxvbmcJMzMwNjQ1NTgzCisJLmxvbmcJMTAxMjQ5NTYxMAorCS5sb25nCTIyOTQxODQ5NzkKKwkubG9uZwkxMDcxNzQzODM0CisJLmxvbmcJMzk1OTQ3Mjg5NworCS5sb25nCTEwMTU4MzMxMTYKKwkubG9uZwkzODA1MDYwNzE0CisJLmxvbmcJMTA3MTc5MDk2MQorCS5sb25nCTI2NzEyNTYxNDIKKwkubG9uZwkxMDEzNzI3NzcyCisJLmxvbmcJMjIxNTAzNzg5OAorCS5sb25nCTEwNzE4MzY3NzAKKwkubG9uZwkyNjgzMzU5MTE3CisJLmxvbmcJMTAxNTgzMTkwMgorCS5sb25nCTQ4MzY2MTU5NAorCS5sb25nCTEwNzE4ODEyNzMKKwkubG9uZwk4MzYyODgzMjYKKwkubG9uZwkzMTYyNjQ4NjQzCisJLmxvbmcJMTUzNDY3OTg5NAorCS5sb25nCTEwNzE5MjQ0ODYKKwkubG9uZwkzNzMyNTg2OTYKKwkubG9uZwkzMTYyNDcwMDk2CisJLmxvbmcJMTUzODcxNDYyOAorCS5sb25nCTEwNzE5NjY0MzAKKwkubG9uZwkzMTk5NDMzMDY4CisJLmxvbmcJMTAxNTMyNTUwMQorCS5sb25nCTUyNzY0MjU1NQorCS5sb25nCTEwNzIwMDcxMjgKKwkubG9uZwkzNjM2ODMyNTkyCisJLmxvbmcJMzE2MTg0MzE0NQorCS5sb25nCTI5MTMzOTE1MAorCS5sb25nCTEwNzIwNDY2MDUKKwkubG9uZwk4OTAxNjk1MzcKKwkubG9uZwkzMTYwNTg2MTE3CisJLmxvbmcJMjQ1MDIxMDIwMQorCS5sb25nCTEwNzIwODQ4ODgKKwkubG9uZwkxNjM2MzUzMjk0CisJLmxvbmcJMzE2MzE5MzQwMAorCS5sb25nCTI0MTEzNjc5NTEKKwkubG9uZwkxMDcyMTIyMDA3CisJLmxvbmcJMzc0ODk5ODczCisJLmxvbmcJMTAxMTMzMTc1MAorCS5sb25nCTY4MTU0OTk3MQorCS5sb25nCTEwNzIxNTc5OTIKKwkubG9uZwk1MDY0MTE2ODkKKwkubG9uZwkxMDE1MzczOTU0CisJLmxvbmcJMTQ2Njc0NTU0MQorCS5sb25nCTEwNzIxOTI4NzMKKwkubG9uZwkyMTQzODYwOTMxCisJLmxvbmcJMTAxMzM2NDMzNAorCS5sb25nCTI4NDU2MjIzNjYKKwkubG9uZwkxMDcyMjI2NjgyCisJLmxvbmcJMjg2OTE3ODIwOQorCS5sb25nCTMxNjI0MjM2ODIKKwkubG9uZwkyODM4ODcxNDM4CisJLmxvbmcJMTA3MjI3NTQ1NgorCS5sb25nCTM3NDIyMjM1OTkKKwkubG9uZwkxMDE0MzM4NTc3CisJLmxvbmcJNDIwMDI3NTI3NAorCS5sb25nCTEwNzIzMzcwMzQKKwkubG9uZwkxNTY2NTM5OTE1CisJLmxvbmcJMzE2MTgzOTU1MAorCS5sb25nCTMwMzQ3MzM1MzAKKwkubG9uZwkxMDcyMzk0ODk3CisJLmxvbmcJNjUyNjIxNDA4CisJLmxvbmcJMzE2MjI2MTk2NAorCS5sb25nCTMyMDc0MTI5OTMKKwkubG9uZwkxMDcyNDQ5MjkwCisJLmxvbmcJMzIwNjEyNDY2NQorCS5sb25nCTEwMTQ0MDg3MzMKKwkubG9uZwk2MjQ0NjE0NzgKKwkubG9uZwkxMDcyNTAwNDUwCisJLmxvbmcJOTMyNDM3NDg1CisJLmxvbmcJMTAxNTIwNDM0MworCS5sb25nCTc2NzY2NTkwOAorCS5sb25nCTEwNzI1NDg2MDAKKwkubG9uZwkxMDM3OTExOTUyCisJLmxvbmcJMzE2MzUyNzYyNworCS5sb25nCTExMTA3NzM2MzkKKwkubG9uZwkxMDcyNTkzOTUyCisJLmxvbmcJMjM3MTUxNzkxMgorCS5sb25nCTMxNjA0NjU3NDEKKwkubG9uZwkxOTQwODI4NTMwCisJLmxvbmcJMTA3MjYzNjcwNAorCS5sb25nCTI3MzE0MDg0MjgKKwkubG9uZwkzMTYyODk1Nzk1CisJLmxvbmcJMTkxMTMyOTM4OAorCS5sb25nCTEwNzI2NzcwNDEKKwkubG9uZwkxNzczMDg5NjE1CisJLmxvbmcJMzE1OTU2OTI2NworCS5sb25nCTE3NjQ3MTU3ODgKKwkubG9uZwkxMDcyNzA0MTkxCisJLmxvbmcJNjkxMzQ2OTQ5CisJLmxvbmcJMzE2NDA2OTk0NgorCS5sb25nCTMzMzI5NzkyMzMKKwkubG9uZwkxMDcyNzIyMTk1CisJLmxvbmcJMzU1MDczMzk4MworCS5sb25nCTEwMTQ3NzA2MjgKKwkubG9uZwkxMzIxODcwMjU0CisJLmxvbmcJMTA3MjczOTIzMQorCS5sb25nCTE0MTUzMTU4MjAKKwkubG9uZwkxMDE2MjI0MDUyCisJLmxvbmcJMzY1NzQyOTAzMAorCS5sb25nCTEwNzI3NTUzNjUKKwkubG9uZwkzOTEwNTM5MDMzCisJLmxvbmcJMTAxNTk2NjQwMgorCS5sb25nCTQxOTc2MjQ1NTcKKwkubG9uZwkxMDcyNzcwNjYxCisJLmxvbmcJMjMzMzM5OTI1NAorCS5sb25nCTMxNjQ1NDY0ODAKKwkubG9uZwkxNTEyMDU5NDkzCisJLmxvbmcJMTA3Mjc4NTE3NworCS5sb25nCTI3MDE1MTAzMTgKKwkubG9uZwkxMDE2MTc4MDkyCisJLmxvbmcJNDUzMzc5MDM3CisJLmxvbmcJMTA3Mjc5ODk2NQorCS5sb25nCTQwNDYzNDQyNTMKKwkubG9uZwkzMTYyODE0MzY0CisJLmxvbmcJMTk0MjM0NTE2MgorCS5sb25nCTEwNzI4MTgzODgKKwkubG9uZwk2MjExMzQxNDcKKwkubG9uZwkxMDE2MzM1MTk1CisJLmxvbmcJNDIxMDE3NjI3MworCS5sb25nCTEwNzI4NDIxNjQKKwkubG9uZwkyNzAxMDEzMzg3CisJLmxvbmcJMzE2NDMyNjYxOQorCS5sb25nCTQxODU2NDQwMTAKKwkubG9uZwkxMDcyODYzNzk1CisJLmxvbmcJNDE2MzY5OTM0MQorCS5sb25nCTEwMTYyMDMxMTIKKwkubG9uZwk2Nzk2ODg3ODgKKwkubG9uZwkxMDcyODgzNTQzCisJLmxvbmcJNDE0NzI3Njc2MgorCS5sb25nCTEwMTQwNjY3NTAKKwkubG9uZwkyOTQzMjg2NQorCS5sb25nCTEwNzI5MDE2MzAKKwkubG9uZwk5NzA0MTU3OTcKKwkubG9uZwkxMDE2OTAyMDYzCisJLmxvbmcJNDA3MDcyMTA5MgorCS5sb25nCTEwNzI5MTgyNDcKKwkubG9uZwkyNTM5MDA0NDExCisJLmxvbmcJMzE2MzczNjA5NgorCS5sb25nCTIyNTI0Njg4NDMKKwkubG9uZwkxMDcyOTMzNTYxCisJLmxvbmcJMzQyNDA4Mjg4NworCS5sb25nCTMxNjM0MDcxNzcKKwkubG9uZwkyOTI5NzI0ODI1CisJLmxvbmcJMTA3Mjk0NzcxMgorCS5sb25nCTM2NjE0ODIyMzUKKwkubG9uZwkzMTYzODQ2OTg5CisJLmxvbmcJMTM3NzUxMzM2OAorCS5sb25nCTEwNzI5NjA4MjQKKwkubG9uZwkzOTg3OTI2NjgwCisJLmxvbmcJMTAxMzY0NzkwOAorCS5sb25nCTEwMzE2MzI5MDgKKwkubG9uZwkxMDcyOTczMDAzCisJLmxvbmcJMzY3MjIxNzE1MQorCS5sb25nCTEwMTY2MTQ2MTkKKwkubG9uZwkyNTE2NTA4MTMwCisJLmxvbmcJMTA3Mjk4NDM0MgorCS5sb25nCTU0NTg1NTAyMAorCS5sb25nCTMxNjI3Mjg5MzAKKwkubG9uZwkzNzkyNDUyMTc4CisJLmxvbmcJMTA3Mjk5NDkyMworCS5sb25nCTM0MjAxMTk0NjcKKwkubG9uZwkxMDE2NDcxNDMwCisJLmxvbmcJMzE0Nzc5MTQ1OQorCS5sb25nCTEwNzMwMDQ4MTgKKwkubG9uZwkxMzQyMjA0OTc5CisJLmxvbmcJMTAxMzkzNzI1NAorCS5sb25nCTk5OTE4OTc1MgorCS5sb25nCTEwNzMwMTQwOTAKKwkubG9uZwkxMDA2MzM1NDcyCisJLmxvbmcJMzE2Mjg1MDkxOQorCS5sb25nCTcxMTAxMTAxMQorCS5sb25nCTEwNzMwMjI3OTQKKwkubG9uZwk0NjMzNDg4CisJLmxvbmcJMzE2Mjk2Njg5NQorCS5sb25nCTE1NjQwMzYzCisJLmxvbmcJMTA3MzAzMDk4MAorCS5sb25nCTE2ODYzODk1NjAKKwkubG9uZwkzMTY0Mzc2MjI2CisJLmxvbmcJMTIxODQ2MzU4OQorCS5sb25nCTEwNzMwNDIzODIKKwkubG9uZwkxNTI2ODM3MTEwCisJLmxvbmcJMzE2MzUzMzk4NQorCS5sb25nCTI1Mzg0NzA1NTUKKwkubG9uZwkxMDczMDU2MTQ0CisJLmxvbmcJMjI3MzMwNDQwNgorCS5sb25nCTMxNjM3ODQ5OTYKKwkubG9uZwkxMjI5NzIwOTQ3CisJLmxvbmcJMTA3MzA2ODQ4OQorCS5sb25nCTI5NzE2MjgyMDYKKwkubG9uZwkzMTYyMzU2NTQwCisJLmxvbmcJMzExNTQyNzAxNgorCS5sb25nCTEwNzMwNzk2MjEKKwkubG9uZwk0MjE1MTMyOTU3CisJLmxvbmcJMzE2NDI4Mjc2MgorCS5sb25nCTQwMzA2MTI1NTcKKwkubG9uZwkxMDczMDg5NzA5CisJLmxvbmcJMTkxMzI1MTY5MQorCS5sb25nCTMxNjM2NzEyOTIKKwkubG9uZwkyNzI4NTIxMjU3CisJLmxvbmcJMTA3MzA5ODg5MgorCS5sb25nCTI4NjEwODk1MDAKKwkubG9uZwkxMDE1NDU0NDU5CisJLmxvbmcJMTExODY5NjI4MworCS5sb25nCTEwNzMxMDcyODUKKwkubG9uZwkxNjI4OTQ4MDUzCisJLmxvbmcJMTAxNjE3OTY1OAorCS5sb25nCTI2ODI3MTEyNTUKKwkubG9uZwkxMDczMTE0OTg0CisJLmxvbmcJMjkwNjMwNjI2NgorCS5sb25nCTEwMTQxNDI2NDMKKwkubG9uZwkyMDczODk4MDgxCisJLmxvbmcJMTA3MzEyMjA3MgorCS5sb25nCTEzMjI3NDA0NTQKKwkubG9uZwkzMTY0NDk3MjE3CisJLmxvbmcJMTQwMzcwMDI5NworCS5sb25nCTEwNzMxMjg2MTgKKwkubG9uZwk0MTYxMzc4OTUKKwkubG9uZwkzMTYyNzgxNDY2CisJLmxvbmcJMjUwMjY4NTYxNworCS5sb25nCTEwNzMxMzQ2ODEKKwkubG9uZwkzMjQyMDA4NzMyCisJLmxvbmcJMTAxNDU5MzQ5NQorCS5sb25nCTE1MzE5MjY4NTEKKwkubG9uZwkxMDczMTQwMzEzCisJLmxvbmcJMTM2MjcwODA5NAorCS5sb25nCTEwMTY1MTc2MDQKKwkubG9uZwkzNTcyODE0NDExCisJLmxvbmcJMTA3MzE0NTU1NworCS5sb25nCTM3MDk3OTA1MjcKKwkubG9uZwkxMDEyNjQ2ODc0CisJLmxvbmcJMTY5NTUzNjExMQorCS5sb25nCTEwNzMxNTA0NTMKKwkubG9uZwkzOTgwMzQ2MzQwCisJLmxvbmcJMTAxNjcwNTEzNgorCS5sb25nCTIzNjMwNTcyMDMKKwkubG9uZwkxMDczMTU1MDMzCisJLmxvbmcJMjU1MTE5NDc5MgorCS5sb25nCTEwMTI1Njk2OTUKKwkubG9uZwkyODczMzY1NjgyCisJLmxvbmcJMTA3MzE1OTMyNworCS5sb25nCTMxODExNTQ3NDgKKwkubG9uZwkxMDE3MDQxNDUwCisJLmxvbmcJMTA1MzM4NDY5MQorCS5sb25nCTEwNzMxNjUyODgKKwkubG9uZwkzMDc0NTM2ODc5CisJLmxvbmcJMTAxNjk2NTY2MAorCS5sb25nCTMyNzA1NDI3MTIKKwkubG9uZwkxMDczMTcyNDUxCisJLmxvbmcJMjUzNTMxOTQxNQorCS5sb25nCTMxNjMwNTE3NzgKKwkubG9uZwkxMzUzNjMxNDg0CisJLmxvbmcJMTA3MzE3ODg1MAorCS5sb25nCTExNzM4MzM3NTUKKwkubG9uZwkxMDE1NTM0NTM3CisJLmxvbmcJMzUxMTIxODQ2MAorCS5sb25nCTEwNzMxODQ1OTkKKwkubG9uZwkxMjQzNjA4MTA5CisJLmxvbmcJMzE2MTU5MjEyMgorCS5sb25nCTQxMjEyNTkyODQKKwkubG9uZwkxMDczMTg5NzkzCisJLmxvbmcJMzk4NTg0OTEyCisJLmxvbmcJMzE2MzgyOTkyMworCS5sb25nCTExOTM4NjIxMDYKKwkubG9uZwkxMDczMTk0NTA5CisJLmxvbmcJMTg3Mzc0NTUzOQorCS5sb25nCTMxNjM4MDI4MTkKKwkubG9uZwkzODYxOTQ5NzkwCisJLmxvbmcJMTA3MzE5ODgwOAorCS5sb25nCTM4NDEyNjExNDcKKwkubG9uZwkxMDE1NTg3MjQ4CisJLmxvbmcJMTQ4NjkwNDU3OAorCS5sb25nCTEwNzMyMDI3NDUKKwkubG9uZwkxNjM0NzI2Nzc2CisJLmxvbmcJMzE2Mzg0Nzg4NgorCS5sb25nCTI4NzkxNTM3MTUKKwkubG9uZwkxMDczMjA2MzYyCisJLmxvbmcJMjAwNDU2MjQyCisJLmxvbmcJMzE2NDEzODY1NworCS5sb25nCTM4NTM1MzI1MworCS5sb25nCTEwNzMyMDk2OTgKKwkubG9uZwkxMTg2MzU1NTE3CisJLmxvbmcJMTAxNDg4NzE1NQorCS5sb25nCTExMjU4NjU4MzkKKwkubG9uZwkxMDczMjEyNzgzCisJLmxvbmcJMjAzNTYxMjYyCisJLmxvbmcJMzE2MTI0NDkyNworCS5sb25nCTEyMjEzNjE0NzUKKwkubG9uZwkxMDczMjE1NjQ1CisJLmxvbmcJMzM4MjQ3NjU2MworCS5sb25nCTEwMTQ5MzYxMzgKKwkubG9uZwkyMDc3MzIzNTczCisJLmxvbmcJMTA3MzIxODMwNworCS5sb25nCTEwMDUxMjEwMDUKKwkubG9uZwkzMTY0NDMwNzUyCisJLmxvbmcJMjE1NjExMzczCisJLmxvbmcJMTA3MzIyMDc5MAorCS5sb25nCTM1MzE5ODc2NAorCS5sb25nCTMxNjQ0ODUxMzcKKwkubG9uZwkyMzQ3NDE5MjY1CisJLmxvbmcJMTA3MzIyMzExMAorCS5sb25nCTExMDMxNDMzNjAKKwkubG9uZwkxMDE2NTQyMTM3CisJLmxvbmcJMTM3OTExMjc2NQorCS5sb25nCTEwNzMyMjUyODQKKwkubG9uZwkzODE1ODM1MzMKKwkubG9uZwkzMTYyODcwODMzCisJLmxvbmcJMzg5MTE5ODQ2MworCS5sb25nCTEwNzMyMjgyOTgKKwkubG9uZwkxNzcxMjc1NzU0CisJLmxvbmcJMTAxNDY1NDY4MQorCS5sb25nCTMzOTU5MTQwNTEKKwkubG9uZwkxMDczMjMxOTE3CisJLmxvbmcJMjM1MDkwMDkxNAorCS5sb25nCTMxNjQwMTM5NzgKKwkubG9uZwkyNzk5OTE5NDc4CisJLmxvbmcJMTA3MzIzNTE0NgorCS5sb25nCTI4OTM5NTAxNjQKKwkubG9uZwkzMTYzMjYwOTAxCisJLmxvbmcJMTEzODY3MzQ3NgorCS5sb25nCTEwNzMyMzgwNDUKKwkubG9uZwkyNjIyMjA0Nzg1CisJLmxvbmcJMzE2NDE3NDM4OAorCS5sb25nCTM0MDg4NTU5NDAKKwkubG9uZwkxMDczMjQwNjYxCisJLmxvbmcJMjgwMDg4MTY1MAorCS5sb25nCTEwMTYwMDg2MjQKKwkubG9uZwkyMDQ0ODU4NzM4CisJLmxvbmcJMTA3MzI0MzAzNQorCS5sb25nCTYwNDU0NDc4NQorCS5sb25nCTEwMTcwMjI5MDEKKwkubG9uZwkyNTc4Nzk1MTc2CisJLmxvbmcJMTA3MzI0NTE5OAorCS5sb25nCTI1NTczMzI5MjUKKwkubG9uZwkxMDE2MTM1MTY1CisJLmxvbmcJNDE5NjI4NTMxNAorCS5sb25nCTEwNzMyNDcxNzcKKwkubG9uZwkyMDMyMzY1MzA3CisJLmxvbmcJMTAxNjE5NDczNQorCS5sb25nCTIyNDg3Nzc0NworCS5sb25nCTEwNzMyNDg5OTYKKwkubG9uZwk0OTc5MjY5MTYKKwkubG9uZwkxMDE2OTQ3MTExCisJLmxvbmcJMzI3MTM4NjQ5MAorCS5sb25nCTEwNzMyNTA2NzEKKwkubG9uZwkyNjg5OTk0ODQ2CisJLmxvbmcJMTAxNjYzMTUxMworCS5sb25nCTgxMzYzNTk4OQorCS5sb25nCTEwNzMyNTIyMjEKKwkubG9uZwk3NDcwMzUyNzcKKwkubG9uZwkzMTY0NTMwMTM2CisJLmxvbmcJMzY5ODI5NTE5CisJLmxvbmcJMTA3MzI1MzY1OAorCS5sb25nCTIxODIwMzM4NTgKKwkubG9uZwkzMTYzMTkwMzQwCisJLmxvbmcJMTE4NzY3OTA1MgorCS5sb25nCTEwNzMyNTQ5OTQKKwkubG9uZwk2NzM5NTQ0NDMKKwkubG9uZwkxMDE2MTQ5ODIxCisJLmxvbmcJNDIzMjU4NjA5OAorCS5sb25nCTEwNzMyNTYyMzkKKwkubG9uZwk0OTc3NzUyMDAKKwkubG9uZwkzMTYyMTc5MDE1CisJLmxvbmcJNDI2NjkwNTU4CisJLmxvbmcJMTA3MzI1NzQwNAorCS5sb25nCTMwNjMzNDMyNDcKKwkubG9uZwkxMDE2ODY1NTc4CisJLmxvbmcJMTYyNDA2NTkwMgorCS5sb25nCTEwNzMyNTg0OTQKKwkubG9uZwkxMzU0MjI0OTk2CisJLmxvbmcJMzE2MzUwMzc3OAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS50eXBlCWF0YW5fdGJsLEBvYmplY3QKKwkuc2l6ZQlhdGFuX3RibCwyNTkyCisJLmFsaWduIDQKK3BpX3RhYmxlOgorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS50eXBlCXBpX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlwaV90YWJsZSwxNgorCS5hbGlnbiA0CitTR05NQVNLOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLnR5cGUJU0dOTUFTSyxAb2JqZWN0CisJLnNpemUJU0dOTUFTSyw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXRhbi4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXRhbi41LS4uX19fdGFnX3ZhbHVlX2F0YW4uMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXRhbi4zLS4uX19fdGFnX3ZhbHVlX2F0YW4uMQorCS4yYnl0ZSAweDEwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2F0YW4uNC0uLl9fX3RhZ192YWx1ZV9hdGFuLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfY2JydC5TIGIvbGlibS94ODZfNjQvc19jYnJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGFhNDM3MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NfY2JydC5TCkBAIC0wLDAgKzEsNzU0IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICBBc3N1bWUgeD0yXnszKmsran0gKiAxLmIxIGIyIC4uLiBiNSBiNiAuLi4gYjUyLCB3aGVyZSBqID0gMCwxLDIuCisvLyAgIExldCByPSh4KjJeey0zay1qfSAtIDEuYjEgYjIgLi4uIGI1IDEpKiByY3BbYjEgYjIgLi5iNV0sCisvLyAgIHdoZXJlIHJjcFtiMSBiMiAuLiBiNV09MS8oMS5iMSBiMiBiMyBiNCBiNSAxKSBpbiBkb3VibGUgcHJlY2lzaW9uCisvLyAgIGNicnQoMl5qICogMS4gYjEgYjIgLi4gYjUgMSkgaXMgYXBwcm94aW1hdGVkIGFzIFRbal1bYjEuLmI1XStEW2pdW2IxLi5iNV0KKy8vICAgKFQgc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIEQgc3RvcmVzIHRoZSBsb3cgb3JkZXIgYml0cykKKy8vICAgUmVzdWx0PTJeaypUKygyXmsqVCpyKSpQKzJeaypECisvLyAgIHdoZXJlIFA9cDErcDIqcisuLitwOCpyXjcKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGNicnQoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgY2JydChJTkYpID0gdGhhdCBJTkYKKy8vICBjYnJ0KCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGNicnQKK0VOVFJZKGNicnQpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfY2JydC4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9jYnJ0LjM6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVyc3ApCisuLkIxLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQ1MjQwMzIsICVlZHgKKyAgICAgICAgbW92c2QgICAgIEVYUF9NU0szKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgRVhQX01TSzIoJXJpcCksICV4bW0zCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW03CisgICAgICAgIHBleHRydyAgICAkMCwgJXhtbTcsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdnNkICAgICBFWFBfTUFTSyglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIFNJR19NQVNLKCVyaXApLCAleG1tMgorICAgICAgICBhbmRsICAgICAgJDI0OCwgJWVjeAorICAgICAgICBsZWEgICAgICAgcmNwX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbW92c2QgICAgICglcmN4LCVyOCksICV4bW00CisgICAgICAgIG1vdnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMQorICAgICAgICBjbXBsICAgICAgJDUyNDAzMiwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgc2hybCAgICAgICQ4LCAlZWR4CisgICAgICAgIHNocnEgICAgICAkOCwgJXI5CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIGNvZWZmX3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDU0NjIsICVlYXgKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmX3RhYmxlKCVyaXApLCAleG1tNgorICAgICAgICBtdWxsICAgICAgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmR4CisgICAgICAgIGFuZHEgICAgICAkMjA0NywgJXI5CisgICAgICAgIHNocmwgICAgICAkMTQsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMDQ4LCAlZWR4CisgICAgICAgIHN1YnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgc3VicSAgICAgICVyYXgsICVyOQorICAgICAgICBzdWJxICAgICAgJXJheCwgJXI5CisgICAgICAgIHNobHEgICAgICAkOCwgJXI5CisgICAgICAgIGFkZGwgICAgICAkNjgyLCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tNworICAgICAgICBhZGRxICAgICAgJXI5LCAlcmN4CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW03CisuTF8yVEFHX1BBQ0tFVF8yLjAuMToKKyAgICAgICAgbW92YXBkICAgIDMyK2NvZWZmX3RhYmxlKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNDgrY29lZmZfdGFibGUoJXJpcCksICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tMworICAgICAgICBsZWEgICAgICAgY2JydF90YWJsZSglcmlwKSwgJXI4CisgICAgICAgIG11bHNkICAgICAoJXJjeCwlcjgpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIGxlYSAgICAgICBEX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbXVsc2QgICAgICglcmN4LCVyOCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8wLjAuMToKKyAgICAgICAgbXVsc2QgICAgIFNDQUxFNjMoJXJpcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQ1MjQwMzIsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQ0NCwgJXhtbTcKKyAgICAgICAgcGV4dHJ3ICAgICQwLCAleG1tNywgJWVjeAorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDgsICVlY3gKKyAgICAgICAgbGVhICAgICAgIHJjcF90YWJsZSglcmlwKSwgJXI4CisgICAgICAgIG1vdnNkICAgICAoJXJjeCwlcjgpLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXJheCwgJXI5CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkOCwgJWVkeAorICAgICAgICBzaHJxICAgICAgJDgsICVyOQorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIGNvZWZmX3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDU0NjIsICVlYXgKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmX3RhYmxlKCVyaXApLCAleG1tNgorICAgICAgICBtdWxsICAgICAgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmR4CisgICAgICAgIGFuZHEgICAgICAkMjA0NywgJXI5CisgICAgICAgIHNocmwgICAgICAkMTQsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMDQ4LCAlZWR4CisgICAgICAgIHN1YnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgc3VicSAgICAgICVyYXgsICVyOQorICAgICAgICBzdWJxICAgICAgJXJheCwgJXI5CisgICAgICAgIHNobHEgICAgICAkOCwgJXI5CisgICAgICAgIGFkZGwgICAgICAkNjYxLCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tNworICAgICAgICBhZGRxICAgICAgJXI5LCAlcmN4CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW03CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorLkxfMlRBR19QQUNLRVRfMy4wLjE6CisgICAgICAgIGNtcHEgICAgICAkMCwgJXI5CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBtb3ZzZCAgICAgWkVST04oJXJpcCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorICAgICAgICBtb3ZsICAgICAgNCglcnNwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgKCVyc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorICAgICAgICBtb3ZzZCAgICAgSU5GKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKyAgICAgICAgbW92c2QgICAgIE5FR19JTkYoJXJpcCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzUuMC4xOgorICAgICAgICBtb3ZzZCAgICAgKCVyc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgOCglcnNwKQorLkxfMlRBR19QQUNLRVRfNy4wLjE6CisuLkIxLjQ6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2NicnQuNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfY2JydC41OgorRU5EKGNicnQpCisjIC0tIEVuZCAgY2JydAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorY29lZmZfdGFibGU6CisJLmxvbmcJMTU1Mzc3ODkxOQorCS5sb25nCTMyMTM4OTk0ODYKKwkubG9uZwkzNTM0OTUyNTA3CisJLmxvbmcJMzIxNTI2NjI4MAorCS5sb25nCTE2NDYzNzEzOTkKKwkubG9uZwkzMjE0NDEyMDQ1CisJLmxvbmcJNDc3MjE4NTg4CisJLmxvbmcJMzIxNjc5ODE1MQorCS5sb25nCTM1ODI1MjE2MjEKKwkubG9uZwkxMDY2NjI4MzYyCisJLmxvbmcJMTAwNzQ2MTQ2NAorCS5sb25nCTEwNjg0NzMwNTMKKwkubG9uZwk4ODk2Mjk3MTQKKwkubG9uZwkxMDY3Mzc4NDQ5CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkudHlwZQljb2VmZl90YWJsZSxAb2JqZWN0CisJLnNpemUJY29lZmZfdGFibGUsNjQKKwkuYWxpZ24gNAorRVhQX01TSzM6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTEwNDg1NzUKKwkudHlwZQlFWFBfTVNLMyxAb2JqZWN0CisJLnNpemUJRVhQX01TSzMsOAorCS5hbGlnbiA0CitFWFBfTVNLMjoKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE5MzI4MAorCS50eXBlCUVYUF9NU0syLEBvYmplY3QKKwkuc2l6ZQlFWFBfTVNLMiw4CisJLmFsaWduIDQKK0VYUF9NQVNLOgorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLnR5cGUJRVhQX01BU0ssQG9iamVjdAorCS5zaXplCUVYUF9NQVNLLDgKKwkuYWxpZ24gNAorU0lHX01BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwMzIxOTIKKwkudHlwZQlTSUdfTUFTSyxAb2JqZWN0CisJLnNpemUJU0lHX01BU0ssOAorCS5hbGlnbiA0CityY3BfdGFibGU6CisJLmxvbmcJNTI4NjExMzYwCisJLmxvbmcJMzIyMDE0NDYzMgorCS5sb25nCTI4ODQ2Nzk1MjcKKwkubG9uZwkzMjIwMDgyOTkzCisJLmxvbmcJMTk5MTg2ODg5MQorCS5sb25nCTMyMjAwMjQ5MjgKKwkubG9uZwkyMjk4NzE0ODkxCisJLmxvbmcJMzIxOTk3MDEzNAorCS5sb25nCTU4ODM1MTY4CisJLmxvbmcJMzIxOTkxODM0MworCS5sb25nCTMwMzUxMTAyMjMKKwkubG9uZwkzMjE5ODY5MzEzCisJLmxvbmcJMTYxNzU4NTA4NgorCS5sb25nCTMyMTk4MjI4MzEKKwkubG9uZwkyNTAwODY3MDMzCisJLmxvbmcJMzIxOTc3ODcwMgorCS5sb25nCTQyNDE5NDMwMDgKKwkubG9uZwkzMjE5NzM2NzUyCisJLmxvbmcJMjU4NzMyOTcwCisJLmxvbmcJMzIxOTY5NjgyNQorCS5sb25nCTQwNDIzMjIxNgorCS5sb25nCTMyMTk2NTg3NzYKKwkubG9uZwkyMTcyMTY3MzY4CisJLmxvbmcJMzIxOTYyMjQ3NgorCS5sb25nCTE1NDQyNTc5MDQKKwkubG9uZwkzMjE5NTg3ODA4CisJLmxvbmcJMzc3NTc5NTQzCisJLmxvbmcJMzIxOTU1NDY2NAorCS5sb25nCTE2MTYzODU1NDIKKwkubG9uZwkzMjE5NTIyOTQ1CisJLmxvbmcJODEzNzgzMjc3CisJLmxvbmcJMzIxOTQ5MjU2MgorCS5sb25nCTM5NDA3NDMxODkKKwkubG9uZwkzMjE5NDYzNDMxCisJLmxvbmcJMjY4OTc3NzQ5OQorCS5sb25nCTMyMTk0MzU0NzgKKwkubG9uZwkxNzAwOTc3MTQ3CisJLmxvbmcJMzIxOTQwODYzMgorCS5sb25nCTMxNjkxMDIwODIKKwkubG9uZwkzMjE5MzgyODI4CisJLmxvbmcJMzI3MjM1NjA0CisJLmxvbmcJMzIxOTM1ODAwOAorCS5sb25nCTEyNDQzMzYzMTkKKwkubG9uZwkzMjE5MzM0MTE1CisJLmxvbmcJMTMwMDMxMTIwMAorCS5sb25nCTMyMTkzMTEwOTkKKwkubG9uZwkzMDk1NDcxOTI1CisJLmxvbmcJMzIxOTI4ODkxMgorCS5sb25nCTIxNjY0ODc5MjgKKwkubG9uZwkzMjE5MjY3NTExCisJLmxvbmcJMjkxMzEwODI1MworCS5sb25nCTMyMTkyNDY4NTQKKwkubG9uZwkyOTM2NzI5NzgKKwkubG9uZwkzMjE5MjI2OTA0CisJLmxvbmcJMjg4NzM3Mjk3CisJLmxvbmcJMzIxOTIwNzYyNAorCS5sb25nCTE4MTAyNzU0NzIKKwkubG9uZwkzMjE5MTg4OTgxCisJLmxvbmcJMTc0NTkyMTY3CisJLmxvbmcJMzIxOTE3MDk0NQorCS5sb25nCTM1MzkwNTMwNTIKKwkubG9uZwkzMjE5MTUzNDg1CisJLmxvbmcJMjE2NDM5Mjk2OAorCS5sb25nCTMyMTkxMzY1NzYKKwkudHlwZQlyY3BfdGFibGUsQG9iamVjdAorCS5zaXplCXJjcF90YWJsZSwyNTYKKwkuYWxpZ24gNAorY2JydF90YWJsZToKKwkubG9uZwk1NzIzNDU0OTUKKwkubG9uZwkxMDcyNjk4NjgxCisJLmxvbmcJMTk5ODIwNDQ2NworCS5sb25nCTEwNzI3MDkzODIKKwkubG9uZwkzODYxNTAxNTUzCisJLmxvbmcJMTA3MjcxOTg3MgorCS5sb25nCTIyNjgxOTI0MzQKKwkubG9uZwkxMDcyNzMwMTYyCisJLmxvbmcJMjk4MTk3OTMwOAorCS5sb25nCTEwNzI3NDAyNjAKKwkubG9uZwkyNzA4NTkxNDMKKwkubG9uZwkxMDcyNzUwMTc2CisJLmxvbmcJMjk1ODY1MTM5MgorCS5sb25nCTEwNzI3NTk5MTYKKwkubG9uZwkzMTMxMTMyNDMKKwkubG9uZwkxMDcyNzY5NDkwCisJLmxvbmcJOTE5NDQ5NDAwCisJLmxvbmcJMTA3Mjc3ODkwMworCS5sb25nCTI4MDkzMjg5MDMKKwkubG9uZwkxMDcyNzg4MTYyCisJLmxvbmcJMjIyMjk4MTU4NworCS5sb25nCTEwNzI3OTcyNzQKKwkubG9uZwkyMzUyNTMwNzgxCisJLmxvbmcJMTA3MjgwNjI0NAorCS5sb25nCTU5NDE1MjUxNworCS5sb25nCTEwNzI4MTUwNzgKKwkubG9uZwkxNTU1NzY3MTk5CisJLmxvbmcJMTA3MjgyMzc4MAorCS5sb25nCTQyODI0MjEzMTQKKwkubG9uZwkxMDcyODMyMzU1CisJLmxvbmcJMjM1NTU3ODU5NworCS5sb25nCTEwNzI4NDA4MDkKKwkubG9uZwkxMTYyNTkwNjE5CisJLmxvbmcJMTA3Mjg0OTE0NQorCS5sb25nCTc5Nzg2NDA1MQorCS5sb25nCTEwNzI4NTczNjcKKwkubG9uZwk0MzEyNzM2ODAKKwkubG9uZwkxMDcyODY1NDc5CisJLmxvbmcJMjY2OTgzMTE0OAorCS5sb25nCTEwNzI4NzM0ODQKKwkubG9uZwk3MzM0Nzc3NTIKKwkubG9uZwkxMDcyODgxMzg3CisJLmxvbmcJNDI4MDIyMDYwNAorCS5sb25nCTEwNzI4ODkxODkKKwkubG9uZwk4MDE5NjE2MzQKKwkubG9uZwkxMDcyODk2ODk2CisJLmxvbmcJMjkxNTM3MDc2MAorCS5sb25nCTEwNzI5MDQ1MDgKKwkubG9uZwkxMTU5NjEzNDgyCisJLmxvbmcJMTA3MjkxMjAzMAorCS5sb25nCTI2ODk5NDQ3OTgKKwkubG9uZwkxMDcyOTE5NDYzCisJLmxvbmcJMTI0ODY4NzgyMgorCS5sb25nCTEwNzI5MjY4MTEKKwkubG9uZwkyOTY3OTUxMDMwCisJLmxvbmcJMTA3MjkzNDA3NQorCS5sb25nCTYzMDE3MDQzMgorCS5sb25nCTEwNzI5NDEyNTkKKwkubG9uZwkzNzYwODk4MjU0CisJLmxvbmcJMTA3Mjk0ODM2MworCS5sb25nCTAKKwkubG9uZwkxMDcyOTU1MzkyCisJLmxvbmcJMjM3MDI3MzI5NAorCS5sb25nCTEwNzI5NjIzNDUKKwkubG9uZwkxMjYxNzU0ODAyCisJLmxvbmcJMTA3Mjk3MjY0MAorCS5sb25nCTU0NjMzNDA2NQorCS5sb25nCTEwNzI5ODYxMjMKKwkubG9uZwkxMDU0ODkzODMwCisJLmxvbmcJMTA3Mjk5OTM0MAorCS5sb25nCTE1NzExODc1OTcKKwkubG9uZwkxMDczMDEyMzA0CisJLmxvbmcJMTEwNzk3NTE3NQorCS5sb25nCTEwNzMwMjUwMjcKKwkubG9uZwkzNjA2OTA5Mzc3CisJLmxvbmcJMTA3MzAzNzUxOQorCS5sb25nCTExMTM2MTY3NDcKKwkubG9uZwkxMDczMDQ5NzkyCisJLmxvbmcJNDE1NDc0NDYzMgorCS5sb25nCTEwNzMwNjE4NTMKKwkubG9uZwkzMzU4OTMxNDIzCisJLmxvbmcJMTA3MzA3MzcxMworCS5sb25nCTQwNjA3MDIzNzIKKwkubG9uZwkxMDczMDg1Mzc5CisJLmxvbmcJNzQ3NTc2MTc2CisJLmxvbmcJMTA3MzA5Njg2MAorCS5sb25nCTMwMjMxMzgyNTUKKwkubG9uZwkxMDczMTA4MTYxCisJLmxvbmcJMTQxOTk4ODU0OAorCS5sb25nCTEwNzMxMTkyOTEKKwkubG9uZwkxOTE0MTg1MzA1CisJLmxvbmcJMTA3MzEzMDI1NQorCS5sb25nCTI5NDM4OTk0OAorCS5sb25nCTEwNzMxNDEwNjAKKwkubG9uZwkzNzYxODAyNTcwCisJLmxvbmcJMTA3MzE1MTcxMAorCS5sb25nCTk3ODI4MTU2NgorCS5sb25nCTEwNzMxNjIyMTMKKwkubG9uZwk4MjMxNDg4MjAKKwkubG9uZwkxMDczMTcyNTcyCisJLmxvbmcJMjQyMDk1NDQ0MQorCS5sb25nCTEwNzMxODI3OTIKKwkubG9uZwkzODE1NDQ5OTA4CisJLmxvbmcJMTA3MzE5Mjg3OAorCS5sb25nCTIwNDYwNTg1ODcKKwkubG9uZwkxMDczMjAyODM1CisJLmxvbmcJMTgwNzUyNDc1MworCS5sb25nCTEwNzMyMTI2NjYKKwkubG9uZwkyNjI4NjgxNDAxCisJLmxvbmcJMTA3MzIyMjM3NQorCS5sb25nCTMyMjU2NjczNTcKKwkubG9uZwkxMDczMjMxOTY2CisJLmxvbmcJMTU1NTMwNzQyMQorCS5sb25nCTEwNzMyNDE0NDMKKwkubG9uZwkzNDU0MDQzMDk5CisJLmxvbmcJMTA3MzI1MDgwOAorCS5sb25nCTEyMDgxMzc4OTYKKwkubG9uZwkxMDczMjYwMDY2CisJLmxvbmcJMzY1OTkxNjc3MgorCS5sb25nCTEwNzMyNjkyMTgKKwkubG9uZwkxODg2MjYxMjY0CisJLmxvbmcJMTA3MzI3ODI2OQorCS5sb25nCTM1OTM2NDc4MzkKKwkubG9uZwkxMDczMjg3MjIwCisJLmxvbmcJMzA4NjAxMjIwNQorCS5sb25nCTEwNzMyOTYwNzUKKwkubG9uZwkyNzY5Nzk2OTIyCisJLmxvbmcJMTA3MzMwNDgzNgorCS5sb25nCTg4ODcxNjA1NworCS5sb25nCTEwNzMzMTc4MDcKKwkubG9uZwkyMjAxNDY1NjIzCisJLmxvbmcJMTA3MzMzNDc5NAorCS5sb25nCTE2NDM2OTM2NQorCS5sb25nCTEwNzMzNTE0NDcKKwkubG9uZwkzNDYyNjY2NzMzCisJLmxvbmcJMTA3MzM2Nzc4MAorCS5sb25nCTI3NzM5MDU0NTcKKwkubG9uZwkxMDczMzgzODEwCisJLmxvbmcJMTM0Mjg3OTA4OAorCS5sb25nCTEwNzMzOTk1NTAKKwkubG9uZwkyNTQzOTMzOTc1CisJLmxvbmcJMTA3MzQxNTAxMgorCS5sb25nCTE2ODQ0Nzc3ODEKKwkubG9uZwkxMDczNDMwMjA5CisJLmxvbmcJMzUzMjE3ODU0MworCS5sb25nCTEwNzM0NDUxNTEKKwkubG9uZwkxMTQ3NzQ3MzAwCisJLmxvbmcJMTA3MzQ1OTg1MAorCS5sb25nCTE5MjgwMzE3OTMKKwkubG9uZwkxMDczNDc0MzE0CisJLmxvbmcJMjA3OTcxNzAxNQorCS5sb25nCTEwNzM0ODg1NTMKKwkubG9uZwk0MDE2NzY1MzE1CisJLmxvbmcJMTA3MzUwMjU3NQorCS5sb25nCTM2NzA0MzExMzkKKwkubG9uZwkxMDczNTE2Mzg5CisJLmxvbmcJMzU0OTIyNzIyNQorCS5sb25nCTEwNzM1MzAwMDIKKwkubG9uZwkxMTYzNzYwNworCS5sb25nCTEwNzM1NDM0MjIKKwkubG9uZwk1ODgyMjAxNjkKKwkubG9uZwkxMDczNTU2NjU0CisJLmxvbmcJMjYzNTQwNzUwMworCS5sb25nCTEwNzM1Njk3MDUKKwkubG9uZwkyMDQyMDI5MzE3CisJLmxvbmcJMTA3MzU4MjU4MgorCS5sb25nCTE5MjUxMjg5NjIKKwkubG9uZwkxMDczNTk1MjkwCisJLmxvbmcJNDEzNjM3NTY2NAorCS5sb25nCTEwNzM2MDc4MzQKKwkubG9uZwk3NTk5NjQ2MDAKKwkubG9uZwkxMDczNjIwMjIxCisJLmxvbmcJNDI1NzYwNjc3MQorCS5sb25nCTEwNzM2MzI0NTMKKwkubG9uZwkyOTcyNzg5MDcKKwkubG9uZwkxMDczNjQ0NTM4CisJLmxvbmcJMzY1NTA1MzA5MworCS5sb25nCTEwNzM2NTY0NzcKKwkubG9uZwkyNDQyMjUzMTcyCisJLmxvbmcJMTA3MzY2ODI3NworCS5sb25nCTExMTE4NzY3OTkKKwkubG9uZwkxMDczNjc5OTQxCisJLmxvbmcJMzMzMDk3MzEzOQorCS5sb25nCTEwNzM2OTE0NzIKKwkubG9uZwkzNDM4ODc5NDUyCisJLmxvbmcJMTA3MzcwMjg3NQorCS5sb25nCTM2NzE1NjU0NzgKKwkubG9uZwkxMDczNzE0MTUzCisJLmxvbmcJMTMxNzg0OTU0NworCS5sb25nCTEwNzM3MjUzMTAKKwkubG9uZwkxNjQyMzY0MTE1CisJLmxvbmcJMTA3MzczNjM0OAorCS50eXBlCWNicnRfdGFibGUsQG9iamVjdAorCS5zaXplCWNicnRfdGFibGUsNzY4CisJLmFsaWduIDQKK0RfdGFibGU6CisJLmxvbmcJNDA1MDkwMDQ3NAorCS5sb25nCTEwMTQ0MjcxOTAKKwkubG9uZwkxMTU3OTc3ODYwCisJLmxvbmcJMTAxNjQ0NDQ2MQorCS5sb25nCTEzNzQ1NjgxOTkKKwkubG9uZwkxMDE3MjcxMzg3CisJLmxvbmcJMjgwOTE2MzI4OAorCS5sb25nCTEwMTY4ODI2NzYKKwkubG9uZwkzNzQyMzc3Mzc3CisJLmxvbmcJMTAxMzE2ODE5MQorCS5sb25nCTMxMDE2MDY1OTcKKwkubG9uZwkxMDE3NTQxNjcyCisJLmxvbmcJNjUyMjQzNTgKKwkubG9uZwkxMDE3MjE3NTk3CisJLmxvbmcJMjY5MTU5MTI1MAorCS5sb25nCTEwMTcyNjY2NDMKKwkubG9uZwk0MDIwNzU4NTQ5CisJLmxvbmcJMTAxNzY4OTMxMworCS5sb25nCTEzMTYzMTA5OTIKKwkubG9uZwkxMDE4MDMwNzg4CisJLmxvbmcJMTAzMTUzNzg1NgorCS5sb25nCTEwMTQwOTA4ODIKKwkubG9uZwkzMjYxMzk1MjM5CisJLmxvbmcJMTAxNjQxMzY0MQorCS5sb25nCTg4NjQyNDk5OQorCS5sb25nCTEwMTYzMTMzMzUKKwkubG9uZwkzMTE0Nzc2ODM0CisJLmxvbmcJMTAxNDE5NTg3NQorCS5sb25nCTE2ODExMjA2MjAKKwkubG9uZwkxMDE3ODI1NDE2CisJLmxvbmcJMTMyOTYwMDI3MworCS5sb25nCTEwMTY2MjU3NDAKKwkubG9uZwk0NjU0NzQ2MjMKKwkubG9uZwkxMDE3MDk3MTE5CisJLmxvbmcJNDI1MTYzMzk4MAorCS5sb25nCTEwMTcxNjkwNzcKKwkubG9uZwkxOTg2OTkwMTMzCisJLmxvbmcJMTAxNzcxMDY0NQorCS5sb25nCTc1Mjk1ODYxMworCS5sb25nCTEwMTcxNTk2NDEKKwkubG9uZwkyMjE2MjE2NzkyCisJLmxvbmcJMTAxODAyMDE2MworCS5sb25nCTQyODI4NjAxMjkKKwkubG9uZwkxMDE1OTI0ODYxCisJLmxvbmcJMTU1NzYyNzg1OQorCS5sb25nCTEwMTYwMzk1MzgKKwkubG9uZwkzODg5MjE5NzU0CisJLmxvbmcJMTAxODA4NjIzNworCS5sb25nCTM2ODQ5OTY0MDgKKwkubG9uZwkxMDE3MzUzMjc1CisJLmxvbmcJNzIzNTMyMTAzCisJLmxvbmcJMTAxNzcxNzE0MQorCS5sb25nCTI5NTExNDk2NzYKKwkubG9uZwkxMDEyNTI4NDcwCisJLmxvbmcJODMxODkwOTM3CisJLmxvbmcJMTAxNzgzMDU1MworCS5sb25nCTEwMzEyMTI2NDUKKwkubG9uZwkxMDE3Mzg3MzMxCisJLmxvbmcJMjc0MTczNzQ1MAorCS5sb25nCTEwMTc2MDQ5NzQKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMTAwMzc3NjY4MgorCS5sb25nCTQyNzY3MzYwOTkKKwkubG9uZwkxMDEzMTUzMDg4CisJLmxvbmcJNDExMTc3ODM4MgorCS5sb25nCTEwMTU2NzM2ODYKKwkubG9uZwkxNzI4MDY1NzY5CisJLmxvbmcJMTAxNjQxMzk4NgorCS5sb25nCTI3MDg3MTgwMzEKKwkubG9uZwkxMDE4MDc4ODMzCisJLmxvbmcJMTA2OTMzNTAwNQorCS5sb25nCTEwMTUyOTEyMjQKKwkubG9uZwk3MDAwMzcxNDQKKwkubG9uZwkxMDE2NDgyMDMyCisJLmxvbmcJMjkwNDU2NjQ1MgorCS5sb25nCTEwMTcyMjY4NjEKKwkubG9uZwk0MDc0MTU2NjQ5CisJLmxvbmcJMTAxNzYyMjY1MQorCS5sb25nCTI1MDE5NTY1CisJLmxvbmcJMTAxNTI0NTM2NgorCS5sb25nCTM2MDE5NTI2MDgKKwkubG9uZwkxMDE1NzcxNzU1CisJLmxvbmcJMzI2NzEyOTM3MworCS5sb25nCTEwMTc5MDQ2NjQKKwkubG9uZwk1MDMyMDMxMDMKKwkubG9uZwkxMDE0OTIxNjI5CisJLmxvbmcJMjEyMjAxMTczMAorCS5sb25nCTEwMTgwMjc4NjYKKwkubG9uZwkzOTI3Mjk1NDYxCisJLmxvbmcJMTAxNDE4OTQ1NgorCS5sb25nCTI3OTA2MjUxNDcKKwkubG9uZwkxMDE2MDI0MjUxCisJLmxvbmcJMTMzMDQ2MDE4NgorCS5sb25nCTEwMTY5NDAzNDYKKwkubG9uZwk0MDMzNTY4NDYzCisJLmxvbmcJMTAxNTUzODM5MAorCS5sb25nCTM2OTU4MTgyMjcKKwkubG9uZwkxMDE3NTA5NjIxCisJLmxvbmcJMjU3NTczMzYxCisJLmxvbmcJMTAxNzIwODg2OAorCS5sb25nCTMyMjc2OTc4NTIKKwkubG9uZwkxMDE3MzM3OTY0CisJLmxvbmcJMjM0MTE4NTQ4CisJLmxvbmcJMTAxNzE2OTU3NworCS5sb25nCTQwMDkwMjU4MDMKKwkubG9uZwkxMDE3Mjc4NTI0CisJLmxvbmcJMTk0ODM0MzM5NAorCS5sb25nCTEwMTc3NDkzMTAKKwkubG9uZwk2NzgzOTgxNjIKKwkubG9uZwkxMDE4MTQ0MjM5CisJLmxvbmcJMzA4Mzg2NDg2MworCS5sb25nCTEwMTY2NjkwODYKKwkubG9uZwkyNDE1NDUzNDUyCisJLmxvbmcJMTAxNzg5MDM3MAorCS5sb25nCTE3NTQ2NzM0NAorCS5sb25nCTEwMTczMzAwMzMKKwkubG9uZwkzMTk3MzU5NTgwCisJLmxvbmcJMTAxMDMzOTkyOAorCS5sb25nCTIwNzEyNzY5NTEKKwkubG9uZwkxMDE1OTQxMzU4CisJLmxvbmcJMjY4MzcyNTQzCisJLmxvbmcJMTAxNjczNzc3MworCS5sb25nCTkzODEzMjk1OQorCS5sb25nCTEwMTczODkxMDgKKwkubG9uZwkxODE2NzUwNTU5CisJLmxvbmcJMTAxNzMzNzQ0OAorCS5sb25nCTQxMTkyMDM3NDkKKwkubG9uZwkxMDE3MTUyMTc0CisJLmxvbmcJMjU3ODY1Mzg3OAorCS5sb25nCTEwMTMxMDg0OTcKKwkubG9uZwkyNDcwMzMxMDk2CisJLmxvbmcJMTAxNDY3ODYwNgorCS5sb25nCTEyMzg1NTczNQorCS5sb25nCTEwMTY1NTMzMjAKKwkubG9uZwkxMjY1NjUwODg5CisJLmxvbmcJMTAxNDc4MjY4NworCS5sb25nCTM0MTQzOTgxNzIKKwkubG9uZwkxMDE3MTgyNjM4CisJLmxvbmcJMTA0MDc3MzM2OQorCS5sb25nCTEwMTYxNTg0MDEKKwkubG9uZwkzNDgzNjI4ODg2CisJLmxvbmcJMTAxNjg4NjU1MAorCS5sb25nCTQxNDA0OTk0MDUKKwkubG9uZwkxMDE2MTkxNDI1CisJLmxvbmcJMzg5MzQ3Nzg1MAorCS5sb25nCTEwMTY5NjQ0OTUKKwkubG9uZwkzOTM1MzE5NzcxCisJLmxvbmcJMTAwOTYzNDcxNworCS5sb25nCTI5Nzg5ODI2NjAKKwkubG9uZwkxMDE1MDI3MTEyCisJLmxvbmcJMjQ1MjcwOTkyMworCS5sb25nCTEwMTc5OTAyMjkKKwkubG9uZwkzMTkwMzY1NzEyCisJLmxvbmcJMTAxNTgzNTE0OQorCS5sb25nCTQyMzc1ODgxMzkKKwkubG9uZwkxMDE1ODMyOTI1CisJLmxvbmcJMjYxMDY3ODM4OQorCS5sb25nCTEwMTc5NjI3MTEKKwkubG9uZwkyMTI3MzE2Nzc0CisJLmxvbmcJMTAxNzQwNTc3MAorCS5sb25nCTgyNDI2NzUwMgorCS5sb25nCTEwMTc5NTk0NjMKKwkubG9uZwkyMTY1OTI0MDQyCisJLmxvbmcJMTAxNzkxMjIyNQorCS5sb25nCTI3NzQwMDcwNzYKKwkubG9uZwkxMDEzMjU3NDE4CisJLmxvbmcJNDEyMzkxNjMyNgorCS5sb25nCTEwMTc1ODIyODQKKwkubG9uZwkxOTc2NDE3OTU4CisJLmxvbmcJMTAxNjk1OTkwOQorCS5sb25nCTQwOTI4MDY0MTIKKwkubG9uZwkxMDE3NzExMjc5CisJLmxvbmcJMTE5MjUxODE3CisJLmxvbmcJMTAxNTM2MzYzMQorCS5sb25nCTM0NzU0MTg3NjgKKwkubG9uZwkxMDE3Njc1NDE1CisJLmxvbmcJMTk3MjU4MDUwMworCS5sb25nCTEwMTU0NzA2ODQKKwkubG9uZwk4MTU1NDEwMTcKKwkubG9uZwkxMDE3NTE3OTY5CisJLmxvbmcJMjQyOTkxNzQ1MQorCS5sb25nCTEwMTczOTc3NzYKKwkubG9uZwk0MDYyODg4NDgyCisJLmxvbmcJMTAxNjc0OTg5NworCS5sb25nCTY4Mjg0MTUzCisJLmxvbmcJMTAxNzkyNTY3OAorCS5sb25nCTIyMDc3NzkyNDYKKwkubG9uZwkxMDE2MzIwMjk4CisJLmxvbmcJMTE4MzQ2NjUyMAorCS5sb25nCTEwMTc0MDg2NTcKKwkubG9uZwkxNDMzMjY0MjcKKwkubG9uZwkxMDE3MDYwNDAzCisJLnR5cGUJRF90YWJsZSxAb2JqZWN0CisJLnNpemUJRF90YWJsZSw3NjgKKwkuYWxpZ24gNAorU0NBTEU2MzoKKwkubG9uZwkwCisJLmxvbmcJMTEzODc1MzUzNgorCS50eXBlCVNDQUxFNjMsQG9iamVjdAorCS5zaXplCVNDQUxFNjMsOAorCS5hbGlnbiA0CitaRVJPTjoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCVpFUk9OLEBvYmplY3QKKwkuc2l6ZQlaRVJPTiw4CisJLmFsaWduIDQKK0lORjoKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS50eXBlCUlORixAb2JqZWN0CisJLnNpemUJSU5GLDgKKwkuYWxpZ24gNAorTkVHX0lORjoKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS50eXBlCU5FR19JTkYsQG9iamVjdAorCS5zaXplCU5FR19JTkYsOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2NicnQuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2NicnQuNS0uLl9fX3RhZ192YWx1ZV9jYnJ0LjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2NicnQuMy0uLl9fX3RhZ192YWx1ZV9jYnJ0LjEKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jYnJ0LjQtLi5fX190YWdfdmFsdWVfY2JydC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zX2Nvcy5TIGIvbGlibS94ODZfNjQvc19jb3MuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYjVhMGUxCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc19jb3MuUwpAQCAtMCwwICsxLDEyNzUgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICAgMS4gUkFOR0UgUkVEVUNUSU9OCisvLworLy8gICAgIFdlIHBlcmZvcm0gYW4gaW5pdGlhbCByYW5nZSByZWR1Y3Rpb24gZnJvbSBYIHRvIHIgd2l0aAorLy8KKy8vICAgICAgICAgIFggPX49IE4gKiBwaS8zMiArIHIKKy8vCisvLyAgICAgc28gdGhhdCB8cnwgPD0gcGkvNjQgKyBlcHNpbG9uLiBXZSByZXN0cmljdCBpbnB1dHMgdG8gdGhvc2UKKy8vICAgICB3aGVyZSB8TnwgPD0gOTMyNTYwLiBCZXlvbmQgdGhpcywgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIGluc3VmZmljaWVudGx5IGFjY3VyYXRlLiBGb3IgZXh0cmVtZWx5IHNtYWxsIGlucHV0cywgCisvLyAgICAgZGVub3JtYWxpemF0aW9uIGNhbiBvY2N1ciBpbnRlcm5hbGx5LCBpbXBhY3RpbmcgcGVyZm9ybWFuY2UuCisvLyAgICAgVGhpcyBtZWFucyB0aGF0IHRoZSBtYWluIHBhdGggaXMgYWN0dWFsbHkgb25seSB0YWtlbiBmb3IKKy8vICAgICAyXi0yNTIgPD0gfFh8IDwgOTAxMTIuCisvLworLy8gICAgIFRvIGF2b2lkIGJyYW5jaGVzLCB3ZSBwZXJmb3JtIHRoZSByYW5nZSByZWR1Y3Rpb24gdG8gZnVsbAorLy8gICAgIGFjY3VyYWN5IGVhY2ggdGltZS4KKy8vCisvLyAgICAgICAgICBYIC0gTiAqIChQXzEgKyBQXzIgKyBQXzMpCisvLworLy8gICAgIHdoZXJlIFBfMSBhbmQgUF8yIGFyZSAzMi1iaXQgbnVtYmVycyAoc28gbXVsdGlwbGljYXRpb24gYnkgTgorLy8gICAgIGlzIGV4YWN0KSBhbmQgUF8zIGlzIGEgNTMtYml0IG51bWJlci4gVG9nZXRoZXIsIHRoZXNlCisvLyAgICAgYXBwcm94aW1hdGUgcGkgd2VsbCBlbm91Z2ggZm9yIGFsbCBjYXNlcyBpbiB0aGUgcmVzdHJpY3RlZAorLy8gICAgIHJhbmdlLgorLy8KKy8vICAgICBUaGUgbWFpbiByZWR1Y3Rpb24gc2VxdWVuY2UgaXM6CisvLworLy8gICAgICAgICAgICAgeSA9IDMyL3BpICogeAorLy8gICAgICAgICAgICAgTiA9IGludGVnZXIoeSkKKy8vICAgICAoY29tcHV0ZWQgYnkgYWRkaW5nIGFuZCBzdWJ0cmFjdGluZyBvZmYgU0hJRlRFUikKKy8vCisvLyAgICAgICAgICAgICBtXzEgPSBOICogUF8xCisvLyAgICAgICAgICAgICBtXzIgPSBOICogUF8yCisvLyAgICAgICAgICAgICByXzEgPSB4IC0gbV8xCisvLyAgICAgICAgICAgICByID0gcl8xIC0gbV8yCisvLyAgICAgKHRoaXMgciBjYW4gYmUgdXNlZCBmb3IgbW9zdCBvZiB0aGUgY2FsY3VsYXRpb24pCisvLworLy8gICAgICAgICAgICAgY18xID0gcl8xIC0gcgorLy8gICAgICAgICAgICAgbV8zID0gTiAqIFBfMworLy8gICAgICAgICAgICAgY18yID0gY18xIC0gbV8yCisvLyAgICAgICAgICAgICBjID0gY18yIC0gbV8zCisvLworLy8gICAgIDIuIE1BSU4gQUxHT1JJVEhNCisvLworLy8gICAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHRhYmxlIGxvb2t1cCBiYXNlZCBvbiBCID0gTSAqIHBpIC8gMzIKKy8vICAgICB3aGVyZSBNID0gTiBtb2QgNjQuIFRoZSBzdG9yZWQgdmFsdWVzIGFyZToKKy8vICAgICAgIHNpZ21hICAgICAgICAgICAgIGNsb3Nlc3QgcG93ZXIgb2YgMiB0byBjb3MoQikKKy8vICAgICAgIENfaGwgICAgICAgICAgICAgIDUzLWJpdCBjb3MoQikgLSBzaWdtYQorLy8gICAgICAgU19oaSArIFNfbG8gICAgICAgMiAqIDUzLWJpdCBzaW4oQikKKy8vCisvLyAgICAgVGhlIGNvbXB1dGF0aW9uIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dzOgorLy8KKy8vICAgICAgICAgIHNpbihCICsgciArIGMpID0gW3NpbihCKSArIHNpZ21hICogcl0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICByICogKGNvcyhCKSAtIHNpZ21hKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbihCKSAqIFtjb3MociArIGMpIC0gMV0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBjb3MoQikgKiBbc2luKHIgKyBjKSAtIHJdCisvLworLy8gICAgIHdoaWNoIGlzIGFwcHJveGltYXRlbHk6CisvLworLy8gICAgICAgICAgW1NfaGkgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgIENfaGwgKiByICsKKy8vICAgICAgICAgIFNfbG8gKyBTX2hpICogWyhjb3MocikgLSAxKSAtIHIgKiBjXSArCisvLyAgICAgICAgICAoQ19obCArIHNpZ21hKSAqIFsoc2luKHIpIC0gcikgKyBjXQorLy8KKy8vICAgICBhbmQgdGhpcyBpcyB3aGF0IGlzIGFjdHVhbGx5IGNvbXB1dGVkLiBXZSBzZXBhcmF0ZSB0aGlzIHN1bQorLy8gICAgIGludG8gZm91ciBwYXJ0czoKKy8vCisvLyAgICAgICAgICBoaSArIG1lZCArIHBvbHMgKyBjb3JyCisvLworLy8gICAgIHdoZXJlCisvLworLy8gICAgICAgICAgaGkgICAgICAgPSBTX2hpICsgc2lnbWEgcgorLy8gICAgICAgICAgbWVkICAgICAgPSBDX2hsICogcgorLy8gICAgICAgICAgcG9scyAgICAgPSBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKiAoc2luKHIpIC0gcikKKy8vICAgICAgICAgIGNvcnIgICAgID0gU19sbyArIGMgKiAoKENfaGwgKyBzaWdtYSkgLSBTX2hpICogcikKKy8vCisvLyAgICAgMy4gUE9MWU5PTUlBTAorLy8KKy8vICAgICBUaGUgcG9seW5vbWlhbCBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKgorLy8gICAgIChzaW4ocikgLSByKSBjYW4gYmUgcmVhcnJhbmdlZCBmcmVlbHksIHNpbmNlIGl0IGlzIHF1aXRlCisvLyAgICAgc21hbGwsIHNvIHdlIGV4cGxvaXQgcGFyYWxsZWxpc20gdG8gdGhlIGZ1bGxlc3QuCisvLworLy8gICAgICAgICAgcHNjNCAgICAgICA9ICAgU0NfNCAqIHJfMQorLy8gICAgICAgICAgbXNjNCAgICAgICA9ICAgcHNjNCAqIHIKKy8vICAgICAgICAgIHIyICAgICAgICAgPSAgIHIgKiByCisvLyAgICAgICAgICBtc2MyICAgICAgID0gICBTQ18yICogcjIKKy8vICAgICAgICAgIHI0ICAgICAgICAgPSAgIHIyICogcjIKKy8vICAgICAgICAgIHBzYzMgICAgICAgPSAgIFNDXzMgKyBtc2M0CisvLyAgICAgICAgICBwc2MxICAgICAgID0gICBTQ18xICsgbXNjMgorLy8gICAgICAgICAgbXNjMyAgICAgICA9ICAgcjQgKiBwc2MzCisvLyAgICAgICAgICBzaW5jb3Nwb2xzID0gICBwc2MxICsgbXNjMworLy8gICAgICAgICAgcG9scyAgICAgICA9ICAgc2luY29zcG9scyAqCisvLyAgICAgICAgICAgICAgICAgICAgICAgICA8U19oaSAqIHJeMiB8IChDX2hsICsgc2lnbWEpICogcl4zPgorLy8KKy8vICAgICA0LiBDT1JSRUNUSU9OIFRFUk0KKy8vCisvLyAgICAgVGhpcyBpcyB3aGVyZSB0aGUgImMiIGNvbXBvbmVudCBvZiB0aGUgcmFuZ2UgcmVkdWN0aW9uIGlzCisvLyAgICAgdGFrZW4gaW50byBhY2NvdW50OyByZWNhbGwgdGhhdCBqdXN0ICJyIiBpcyB1c2VkIGZvciBtb3N0IG9mCisvLyAgICAgdGhlIGNhbGN1bGF0aW9uLgorLy8KKy8vICAgICAgICAgIC1jICAgPSBtXzMgLSBjXzIKKy8vICAgICAgICAgIC1kICAgPSBTX2hpICogciAtIChDX2hsICsgc2lnbWEpCisvLyAgICAgICAgICBjb3JyID0gLWMgKiAtZCArIFNfbG8KKy8vCisvLyAgICAgNS4gQ09NUEVOU0FURUQgU1VNTUFUSU9OUworLy8KKy8vICAgICBUaGUgdHdvIHN1Y2Nlc3NpdmUgY29tcGVuc2F0ZWQgc3VtbWF0aW9ucyBhZGQgdXAgdGhlIGhpZ2gKKy8vICAgICBhbmQgbWVkaXVtIHBhcnRzLCBsZWF2aW5nIGp1c3QgdGhlIGxvdyBwYXJ0cyB0byBhZGQgdXAgYXQKKy8vICAgICB0aGUgZW5kLgorLy8KKy8vICAgICAgICAgIHJzICAgICAgICA9ICBzaWdtYSAqIHIKKy8vICAgICAgICAgIHJlc19pbnQgICA9ICBTX2hpICsgcnMKKy8vICAgICAgICAgIGtfMCAgICAgICA9ICBTX2hpIC0gcmVzX2ludAorLy8gICAgICAgICAga18yICAgICAgID0gIGtfMCArIHJzCisvLyAgICAgICAgICBtZWQgICAgICAgPSAgQ19obCAqIHIKKy8vICAgICAgICAgIHJlc19oaSAgICA9ICByZXNfaW50ICsgbWVkCisvLyAgICAgICAgICBrXzEgICAgICAgPSAgcmVzX2ludCAtIHJlc19oaQorLy8gICAgICAgICAga18zICAgICAgID0gIGtfMSArIG1lZAorLy8KKy8vICAgICA2LiBGSU5BTCBTVU1NQVRJT04KKy8vCisvLyAgICAgV2Ugbm93IGFkZCB1cCBhbGwgdGhlIHNtYWxsIHBhcnRzOgorLy8KKy8vICAgICAgICAgIHJlc19sbyA9IHBvbHMoaGkpICsgcG9scyhsbykgKyBjb3JyICsga18xICsga18zCisvLworLy8gICAgIE5vdyB0aGUgb3ZlcmFsbCByZXN1bHQgaXMganVzdDoKKy8vCisvLyAgICAgICAgICByZXNfaGkgKyByZXNfbG8KKy8vCisvLyAgICAgNy4gU01BTEwgQVJHVU1FTlRTCisvLworLy8gICAgIElucHV0cyB3aXRoIHxYfCA8IDJeLTI1MiBhcmUgdHJlYXRlZCBzcGVjaWFsbHkgYXMKKy8vICAgICAxIC0gfHh8LgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY29zKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvcyhJTkYpID0gTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvcygwKSA9IDEKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBjb3MKK0VOVFJZKGNvcykKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9jb3MuMToKKyAgICAgICAgcHVzaHEgICAgICVyYngKKy4uX19fdGFnX3ZhbHVlX2Nvcy4zOgorICAgICAgICBzdWJxICAgICAgJDE2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9jb3MuNToKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjI6CisgICAgICAgIG1vdmwgICAgICAxMiglcnNwKSwgJWVheAorICAgICAgICBtb3ZxICAgICAgUEkzMklOViglcmlwKSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDE4MTEyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkODA4NDUyMDk2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjgxMzQ2MDQ4LCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBPTkVIQUxGKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgU0lHTl9NQVNLKCVyaXApLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG9ycHMgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBjdnR0c2Qyc2kgJXhtbTEsICVlZHgKKyAgICAgICAgY3Z0c2kyc2QgICVlZHgsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBQXzIoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICBQXzEoJXJpcCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRxICAgICAgJDE4NjUyMzIsICVyZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhbmRxICAgICAgJDYzLCAlcmR4CisgICAgICAgIG1vdmFwZCAgICBTQ180KCVyaXApLCAleG1tNQorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIHNobHEgICAgICAkNSwgJXJkeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXJheAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBTQ18yKCVyaXApLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICglcmF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgMjQoJXJheCksICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgIFNDXzMoJXJpcCksICV4bW01CisgICAgICAgIG11bHNkICAgICAoJXJheCksICV4bW00CisgICAgICAgIGFkZHBkICAgICBTQ18xKCVyaXApLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgIDgoJXJheCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW00LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIDgoJXJheCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBhZGRzZCAgICAgMTYoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHVucGNraHBkICAleG1tNiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmR3ICAgICAgJDMyNzY3LCAlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgT05FKCVyaXApLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMS4wLjE6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjIyNCwgJWVjeAorICAgICAgICBzaHJsICAgICAgJDcsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQ2NTUzMiwgJWVjeAorICAgICAgICBsZWEgICAgICAgUElfSU5WX1RBQkxFKCVyaXApLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcmN4CisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJXJheAorICAgICAgICBtb3ZsICAgICAgMjAoJXJjeCksICVyMTBkCisgICAgICAgIG1vdmwgICAgICAyNCglcmN4KSwgJXI4ZAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzaHJxICAgICAgJDIxLCAlcmF4CisgICAgICAgIG9ybCAgICAgICAkLTIxNDc0ODM2NDgsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxMSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVyOWQKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyMTAKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyOQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI4CisgICAgICAgIG1vdmwgICAgICAxNiglcmN4KSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgMTIoJXJjeCksICVlZGkKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlcjExZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjEwCisgICAgICAgIGFkZHEgICAgICAlcjEwLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyOCwgJXIxMQorICAgICAgICBtb3ZsICAgICAgJXIxMWQsICVyOGQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXI5CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlcjEwZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJzaQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXIxMAorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJXIxMWQKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyZGkKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJzaQorICAgICAgICBhZGRxICAgICAgJXJieCwgJXI5CisgICAgICAgIG1vdmwgICAgICAlcjlkLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyOQorICAgICAgICBhZGRxICAgICAgJXJzaSwgJXIxMAorICAgICAgICBhZGRxICAgICAgJXI5LCAlcjEwCisgICAgICAgIHNobHEgICAgICAkMzIsICVyYngKKyAgICAgICAgb3JxICAgICAgICVyYngsICVyOAorICAgICAgICBpbXVscSAgICAgJXJheCwgJXIxMQorICAgICAgICBtb3ZsICAgICAgOCglcmN4KSwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgNCglcmN4KSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcmRpCisgICAgICAgIGFkZHEgICAgICAlcmJ4LCAlcjEwCisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjEwCisgICAgICAgIGFkZHEgICAgICAlcmRpLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjEwLCAlcjExCisgICAgICAgIG1vdnEgICAgICAlcjksICVyZGkKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyOQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJXI5ZCwgJXIxMGQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcjEwLCAlcjExCisgICAgICAgIG1vdmwgICAgICAlcjExZCwgJXIxMGQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXI5LCAlcmRpCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcmRpCisgICAgICAgIG1vdnEgICAgICAlcnNpLCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyc2kKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyOQorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjEwCisgICAgICAgIG9ycSAgICAgICAlcmJ4LCAlcjEwCisgICAgICAgIG1vdmwgICAgICAoJXJjeCksICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVyMTFkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyc2kKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyZGkKKyAgICAgICAgbW92bCAgICAgICVlZGksICVyMTFkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyc2ksICVyOQorICAgICAgICBhZGRxICAgICAgJXJkaSwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcmR4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYngKKyAgICAgICAgbGVhICAgICAgIFBJX0lOVl9UQUJMRSglcmlwKSwgJXJkaQorICAgICAgICBzdWJxICAgICAgJXJkaSwgJXJjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJDE5LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlc2kKKyAgICAgICAgYW5kbCAgICAgICVlYngsICVlc2kKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWJ4CisgICAgICAgIGFuZGwgICAgICAkMjA0NywgJWVieAorICAgICAgICBzdWJsICAgICAgJDEwMjMsICVlYngKKyAgICAgICAgc3VibCAgICAgICVlYngsICVlY3gKKyAgICAgICAgYWRkcSAgICAgICVyZHgsICVyOQorICAgICAgICBtb3ZsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhZGRsICAgICAgJDMyLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMSwgJWVjeAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQyOSwgJWVjeAorICAgICAgICBzaGxsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAlcjlkLCAlZWRpCisgICAgICAgIGFuZGwgICAgICAkNTM2ODcwOTExLCAlcjlkCisgICAgICAgIHRlc3RsICAgICAkMjY4NDM1NDU2LCAlcjlkCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVieAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyMTEsICVyOQorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF84LjAuMToKKyAgICAgICAgYnNyICAgICAgICVyOSwgJXIxMQorICAgICAgICBtb3ZsICAgICAgJDI5LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlcjExZCwgJWVjeAorICAgICAgICBqbGUgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjEKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjEwLCAlcmF4CisgICAgICAgIHNobHEgICAgICAlY2wsICVyMTAKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVjeAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcmF4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyOAorICAgICAgICBvcnEgICAgICAgJXJheCwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjgsICVyMTAKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMToKKyAgICAgICAgY3Z0c2kyc2RxICVyOSwgJXhtbTAKKyAgICAgICAgc2hycSAgICAgICQxLCAlcjEwCisgICAgICAgIGN2dHNpMnNkcSAlcjEwLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIHNobGwgICAgICAkNCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVkeAorICAgICAgICBhZGRsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZXNpLCAlZWR4CisgICAgICAgIHhvcmwgICAgICAlZWJ4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIFBJXzQoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4K1BJXzQoJXJpcCksICV4bW02CisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3VibCAgICAgICQxMDA4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzaGxsICAgICAgJDE2LCAlZXNpCisgICAgICAgIHNhcmwgICAgICAkMzEsICVlc2kKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQyOSwgJWVkaQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICVlc2ksICVlZGkKKyAgICAgICAgeG9ybCAgICAgICVlc2ksICVlZGkKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJWVheAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTYKKy5MXzJUQUdfUEFDS0VUXzExLjAuMToKKyAgICAgICAgbW92cSAgICAgIFBJMzJJTlYoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIE9ORUhBTEYoJXJpcCksICV4bW01CisgICAgICAgIG1vdnEgICAgICBTSUdOX01BU0soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJXJkeAorICAgICAgICBjdnRzaTJzZHEgJXJkeCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIFBfMSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIHNobGwgICAgICAkMywgJWVheAorICAgICAgICBhZGRsICAgICAgJDE4NjUyMzIsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDYzLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICBTQ180KCVyaXApLCAleG1tNQorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIHNobGwgICAgICAkNSwgJWVkeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXJheAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgKCVyYXgpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAyNCglcmF4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFNDXzIoJXJpcCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgU0NfMyglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgIFNDXzEoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCglcmF4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAxNiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF83LjAuMToKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjgKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4xCisgICAgICAgIGFkZGwgICAgICAkNjQsICVlZHgKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI4LCAlcjEwCisgICAgICAgIGNtcHEgICAgICAkMCwgJXI5CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMQorLkxfMlRBR19QQUNLRVRfOS4wLjE6CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjEKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmF4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyOQorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNobHEgICAgICAlY2wsICVyYXgKKyAgICAgICAgb3JxICAgICAgICVyYXgsICVyMTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorLkxfMlRBR19QQUNLRVRfMy4wLjE6CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAlY2wsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmRpCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMQorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMsICVyZGkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4xCisuTF8yVEFHX1BBQ0tFVF80LjAuMToKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJDUzNjg3MDkxMiwgJWVieAorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyYngKKyAgICAgICAgYWRkbCAgICAgICQ1MzY4NzA5MTIsICVlZGkKKyAgICAgICAgbW92cSAgICAgICQwLCAlcmN4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXIxMQorICAgICAgICBzdWJxICAgICAgJXI4LCAlcmN4CisgICAgICAgIHNiYnEgICAgICAlcjEwLCAlcjExCisgICAgICAgIHNiYnEgICAgICAlcjksICVyYngKKyAgICAgICAgbW92cSAgICAgICVyY3gsICVyOAorICAgICAgICBtb3ZxICAgICAgJXIxMSwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXJieCwgJXI5CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYngKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjE6CisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92cSAgICAgICQweDEwMDAwMDAwMCwgJXJieAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXJjeAorICAgICAgICBtb3ZxICAgICAgJDAsICVyMTEKKyAgICAgICAgc3VicSAgICAgICVyOCwgJXJjeAorICAgICAgICBzYmJxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBzYmJxICAgICAgJXI5LCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAlcmN4LCAlcjgKKyAgICAgICAgbW92cSAgICAgICVyMTEsICVyMTAKKyAgICAgICAgbW92cSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMywgJXJkaQorICAgICAgICBhZGRsICAgICAgJDUzNjg3MDkxMiwgJWVkaQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjEKKy5MXzJUQUdfUEFDS0VUXzIuMC4xOgorICAgICAgICBtb3ZzZCAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIE5FR19aRVJPKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglcnNwKQorLkxfMlRBR19QQUNLRVRfMTMuMC4xOgorLi5CMS40OgorICAgICAgICBhZGRxICAgICAgJDE2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9jb3MuNjoKKyAgICAgICAgcG9wcSAgICAgICVyYngKKy4uX19fdGFnX3ZhbHVlX2Nvcy44OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9jb3MuOToKK0VORChjb3MpCisjIC0tIEVuZCAgY29zCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitPTkVIQUxGOgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkudHlwZQlPTkVIQUxGLEBvYmplY3QKKwkuc2l6ZQlPTkVIQUxGLDE2CisJLmFsaWduIDE2CitQXzI6CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzMjg5MzUzNworCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzI4OTM1MzcKKwkudHlwZQlQXzIsQG9iamVjdAorCS5zaXplCVBfMiwxNgorCS5hbGlnbiAxNgorU0NfNDoKKwkubG9uZwkyNzczOTI3NzMyCisJLmxvbmcJMTA1MzIzNjcwNworCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTEwNTY1NzE4MDgKKwkudHlwZQlTQ180LEBvYmplY3QKKwkuc2l6ZQlTQ180LDE2CisJLmFsaWduIDE2CitDdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkzMjEyMDMyMzAyCisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTEwNjkwOTQ4MjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1ODE4OTg0OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkzMjE0MTI2MzQyCisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTEwNzAxMzU0ODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMzE2MDU2NzA2NQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTMyMTUzMzAyODIKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkxMDcwNzY1MDYyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTMxNjE4MzgyMjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkzMjE2MjExMTA1CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTEwNzExNTI2MTAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2MDg3ODMxNworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTMyMTY5MTUwNDgKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkxMDcxNTI0NzAxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMjc5NjgwOQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTMyMTczOTYzMjcKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkxMDcxNzYxMjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc1MjE1NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTMyMTc4ODY3MTgKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkxMDcxOTI2NTE1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMzQ1MDYwMgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzAyMzYyODEKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkxMDY5NjI2MzE2CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTEwNzIyMTcyMTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYyNjg2OTQ1CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMTA2ODI2NjQxOQorCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTEwNzIzMzk4MTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDQzMTUzNgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTMyMTQ3NTYzOTYKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMTA3MjQ0NTYxOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkzMTYxOTA3Mzc3CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMzIxNjkwMjI2MQorCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkxMDcyNTMzNjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDI1NzYzOAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTEwNjc3NTM1MjEKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMTA3MjYwMjk0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDE1NTA1MDczCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkzMjE1NzI3OTAzCisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTEwNzI2NTI5NTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MzI1NzgzCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkzMjE0NjQ3NjUzCisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTEwNzI2ODMxNDkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzE2MzA2MTc1MAorCS5sb25nCTAKKwkubG9uZwkxMDY5NTQ3NTIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkxMDY3MTY0MDA1CisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTEwNzI2ODMxNDkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzE2MzA2MTc1MAorCS5sb25nCTAKKwkubG9uZwkzMjE3MDMxMTY4CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMTA2ODI0NDI1NQorCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkxMDcyNjUyOTUxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDMyNTc4MworCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTMyMTUyMzcxNjkKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMTA3MjYwMjk0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDE1NTA1MDczCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMTA2OTQxODYxMworCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkxMDcyNTMzNjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDI1NzYzOAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTEwNjcyNzI3NDgKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMTA3MjQ0NTYxOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkzMTYxOTA3Mzc3CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMzIxNTc1MDA2NworCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTEwNzIzMzk4MTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDQzMTUzNgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTMyMTcxMDk5NjQKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMTA3MjIxNzIxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjI2ODY5NDUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkzMjE3NzE5OTI5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMTA3MDQwMzA3MAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTEwNzE5MjY1MTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEzNDUwNjAyCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMTA2OTkxMjY3OQorCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTEwNzE3NjEyMTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1NzUyMTU3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMTA2OTQzMTQwMAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTEwNzE1MjQ3MDEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEyNzk2ODA5CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMTA2ODcyNzQ1NworCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkxMDcxMTUyNjEwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjA4NzgzMTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkxMDY3ODQ2NjM0CisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMTA3MDc2NTA2MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkzMTYxODM4MjIxCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxODExNTA2NworCS5sb25nCTEwNjY2NDI2OTQKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMTA3MDEzNTQ4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkzMTYwNTY3MDY1CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkxMDY0NTQ4NjU0CisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTEwNjkwOTQ4MjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1ODE4OTg0OAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkxMDY0NTQ4NjU0CisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTMyMTY1Nzg0NzAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDcwNjIwMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkxMDY2NjQyNjk0CisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTMyMTc2MTkxMjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTAxMzA4MzQxNworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTEwNjc4NDY2MzQKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkzMjE4MjQ4NzEwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwMTQzNTQ1NzMKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkxMDY4NzI3NDU3CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTMyMTg2MzYyNTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMzM5NDY2OQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTEwNjk0MzE0MDAKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkzMjE5MDA4MzQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDI4MDQ1NworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTEwNjk5MTI2NzkKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkzMjE5MjQ0ODU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzIzNTgwNQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTEwNzA0MDMwNzAKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkzMjE5NDEwMTYzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDkzNDI1MAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTc3MTk5MjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMzIxOTU2MjY1NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3OTkwOTIKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkzMjE3MTA5OTY0CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTMyMTk3MDA4NjQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1MjAzMjk3CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMzIxNTc1MDA2NworCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTMyMTk4MjM0NjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1NzkxNTE4NAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTEwNjcyNzI3NDgKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMzIxOTkyOTI2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDE0NDIzNzI5CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMTA2OTQxODYxMworCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkzMjIwMDE3MjU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTc0MTI4NgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTMyMTUyMzcxNjkKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMzIyMDA4NjU5MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYyOTg4NzIxCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkxMDY4MjQ0MjU1CisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTMyMjAxMzY1OTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxODA5NDMxCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkxMDY3MTY0MDA1CisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTMyMjAxNjY3OTcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTAxNTU3ODEwMgorCS5sb25nCTAKKwkubG9uZwkzMjE3MDMxMTY4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkzMjE0NjQ3NjUzCisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTMyMjAxNjY3OTcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTAxNTU3ODEwMgorCS5sb25nCTAKKwkubG9uZwkxMDY5NTQ3NTIwCisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMzIxNTcyNzkwMworCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkzMjIwMTM2NTk5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTgwOTQzMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTEwNjc3NTM1MjEKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMzIyMDA4NjU5MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYyOTg4NzIxCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMzIxNjkwMjI2MQorCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkzMjIwMDE3MjU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTc0MTI4NgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTMyMTQ3NTYzOTYKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMzIxOTkyOTI2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDE0NDIzNzI5CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMTA2ODI2NjQxOQorCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTMyMTk4MjM0NjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1NzkxNTE4NAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTEwNjk2MjYzMTYKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMzIxOTcwMDg2NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTUyMDMyOTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcwMjM2MjgxCisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTMyMTk1NjI2NTQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1Nzk5MDkyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMzIxNzg4NjcxOAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTMyMTk0MTAxNjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwOTM0MjUwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMzIxNzM5NjMyNworCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTMyMTkyNDQ4NTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjM1ODA1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMzIxNjkxNTA0OAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTMyMTkwMDgzNDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwMjgwNDU3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMzIxNjIxMTEwNQorCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkzMjE4NjM2MjU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTMzOTQ2NjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkzMjE1MzMwMjgyCisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMzIxODI0ODcxMAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDE0MzU0NTczCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxODExNTA2NworCS5sb25nCTMyMTQxMjYzNDIKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMzIxNzYxOTEyOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDEzMDgzNDE3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkzMjEyMDMyMzAyCisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTMyMTY1Nzg0NzAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDcwNjIwMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJQ3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlDdGFibGUsMjA0OAorCS5hbGlnbiAxNgorU0NfMjoKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkudHlwZQlTQ18yLEBvYmplY3QKKwkuc2l6ZQlTQ18yLDE2CisJLmFsaWduIDE2CitTQ18zOgorCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTMyMDcyMDExODQKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkzMjEwMTMzODY4CisJLnR5cGUJU0NfMyxAb2JqZWN0CisJLnNpemUJU0NfMywxNgorCS5hbGlnbiAxNgorU0NfMToKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLnR5cGUJU0NfMSxAb2JqZWN0CisJLnNpemUJU0NfMSwxNgorCS5hbGlnbiAxNgorUElfSU5WX1RBQkxFOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjczNDI2MTEwMgorCS5sb25nCTEzMTMwODQ3MTMKKwkubG9uZwk0MjMwNDM2ODE3CisJLmxvbmcJNDExMzg4MjU2MAorCS5sb25nCTM2ODA2NzExMjkKKwkubG9uZwkxMDExMDYwODAxCisJLmxvbmcJNDI2Njc0Njc5NQorCS5sb25nCTM3MzY4NDc3MTMKKwkubG9uZwkzMDcyNjE4MDQyCisJLmxvbmcJMTExMjM5NjUxMgorCS5sb25nCTEwNTQ1OTQzNAorCS5sb25nCTE2NDcyOTM3MgorCS5sb25nCTQyNjMzNzM1OTYKKwkubG9uZwkyOTcyMjk3MDIyCisJLmxvbmcJMzkwMDg0NzYwNQorCS5sb25nCTc4NDAyNDcwOAorCS5sb25nCTM5MTkzNDM2NTQKKwkubG9uZwkzMDI2MTU3MTIxCisJLmxvbmcJOTY1ODU4ODczCisJLmxvbmcJMjIwMzI2OTYyMAorCS5sb25nCTI2MjU5MjA5MDcKKwkubG9uZwkzMTg3MjIyNTg3CisJLmxvbmcJNTM2Mzg1NTM1CisJLmxvbmcJMzcyNDkwODU1OQorCS5sb25nCTQwMTI4MzkzMDcKKwkubG9uZwkxNTEwNjMyNzM1CisJLmxvbmcJMTgzMjI4Nzk1MQorCS5sb25nCTY2NzYxNzcxOQorCS5sb25nCTEzMzAwMDM4MTQKKwkubG9uZwkyNjU3MDg1OTk3CisJLmxvbmcJMTk2NTUzNzk5MQorCS5sb25nCTM5NTc3MTUzMjMKKwkubG9uZwkxMDIzODgzNzY3CisJLmxvbmcJMjMyMDY2NzM3MAorCS5sb25nCTE4MTE2MzYxNDUKKwkubG9uZwk1MjkzNTgwODgKKwkubG9uZwkxNDQzMDQ5NTQyCisJLmxvbmcJNDIzNTk0NjkyMworCS5sb25nCTQwNDAxNDU5NTMKKwkudHlwZQlQSV9JTlZfVEFCTEUsQG9iamVjdAorCS5zaXplCVBJX0lOVl9UQUJMRSwxNjQKKwkuc3BhY2UgMTIsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitQSV80OgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJNDA3Mjc5NzY5CisJLmxvbmcJMTA0Njc1ODQ0NQorCS50eXBlCVBJXzQsQG9iamVjdAorCS5zaXplCVBJXzQsMTYKKwkuYWxpZ24gOAorUEkzMklOVjoKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3NjEyNTQ4OAorCS50eXBlCVBJMzJJTlYsQG9iamVjdAorCS5zaXplCVBJMzJJTlYsOAorCS5hbGlnbiA4CitTSUdOX01BU0s6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkudHlwZQlTSUdOX01BU0ssQG9iamVjdAorCS5zaXplCVNJR05fTUFTSyw4CisJLmFsaWduIDgKK1BfMToKKwkubG9uZwkxNDEzNDgwNDQ4CisJLmxvbmcJMTA2OTA5NzQ2NworCS50eXBlCVBfMSxAb2JqZWN0CisJLnNpemUJUF8xLDgKKwkuYWxpZ24gOAorUF8zOgorCS5sb25nCTc3MTk3NzMzMQorCS5sb25nCTk5NjM1MDM0NgorCS50eXBlCVBfMyxAb2JqZWN0CisJLnNpemUJUF8zLDgKKwkuYWxpZ24gOAorT05FOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJT05FLEBvYmplY3QKKwkuc2l6ZQlPTkUsOAorCS5hbGlnbiA4CitORUdfWkVSTzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCU5FR19aRVJPLEBvYmplY3QKKwkuc2l6ZQlORUdfWkVSTyw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDJjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY29zLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3MuOS0uLl9fX3RhZ192YWx1ZV9jb3MuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY29zLjMtLi5fX190YWdfdmFsdWVfY29zLjEKKwkuNGJ5dGUgMHgwMjgzMTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY29zLjUtLi5fX190YWdfdmFsdWVfY29zLjMKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3MuNi0uLl9fX3RhZ192YWx1ZV9jb3MuNQorCS40Ynl0ZSAweDA0YzMxMDBlCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvcy44LS4uX19fdGFnX3ZhbHVlX2Nvcy42CisJLjJieXRlIDB4MDgwZQorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfZXhwbTEuUyBiL2xpYm0veDg2XzY0L3NfZXhwbTEuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGExZDlkCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc19leHBtMS5TCkBAIC0wLDAgKzEsNzI3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gRGVzY3JpcHRpb246CisvLyAgTGV0IEsgPSA2NCAodGFibGUgc2l6ZSkuCisvLworLy8gIEZvdXIgc3ViLWRvbWFpbnM6CisvLyAgICAxLiB8eHwgPCAxLygyKkspCisvLyAgICAgIGV4cG0xKHgpIH4gUCh4KQorLy8gICAgMi4gMS8oMipLKSA8PSB8eHwgPD0gNTYqbG9nKDIpCisvLyAgICAgICB4ICAgICAgIHgvbG9nKDIpICAgIG4KKy8vICAgICAgZSAtIDEgPSAyICAgICAgICAgPSAyICogVFtqXSAqICgxICsgUCh5KSkgLSAxCisvLyAgICAzLiA1Nipsb2coMikgPCB4IDwgTUFYX0xPRworLy8gICAgICAgeCAgICAgICB4ICAgeC9sb2coMikgICAgbgorLy8gICAgICBlIC0gMSB+IGUgPSAyICAgICAgICAgPSAyICogVFtqXSAqICgxICsgUCh5KSkKKy8vICAgIDQuIHggPCAtNTYqbG9nKDIpCisvLyAgICAgICB4ICAgICAgICAgICAgeAorLy8gICAgICBlIC0gMSA9IC0xICsgZSB+IC0xCisvLyAgICB3aGVyZQorLy8gICAgICAgeCA9IG0qbG9nKDIpL0sgKyB5LCAgICB5IGluIFstbG9nKDIpL0suLmxvZygyKS9LXQorLy8gICAgICAgbSA9IG4qSyArIGosICAgICAgICAgICBtLG4saiAtIHNpZ25lZCBpbnRlZ2VyLCBqIGluIFstSy8yLi5LLzJdCisvLyAgICAgICAgICAgICAgICAgIGovSworLy8gICAgICAgdmFsdWVzIG9mIDIgICBhcmUgdGFidWxhdGVkIGFzIFRbal0gPSBUX2hpW2pdICggMSArIFRfbG9bal0pLgorLy8KKy8vICAgICAgIFAoeSkgaXMgYSBtaW5pbWF4IHBvbHlub21pYWwgYXBwcm94aW1hdGlvbiBvZiBleHAoeCktMQorLy8gICAgICAgb24gc21hbGwgaW50ZXJ2YWwgWy1sb2coMikvSy4ubG9nKDIpL0tdICh3ZXJlIGNhbGN1bGF0ZWQgYnkgTWFwbGUgVikuCisvLworLy8gICAgSW4gY2FzZSAzLCB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIGFyaXRobWV0aWMgb3ZlcmZsb3cgYW5kIHVuZGVyZmxvdywKKy8vICAgICAgICAgICAgICBuICAgICAgICAgICAgICAgICAgICAgICAgbjEgIG4yCisvLyAgICB2YWx1ZSBvZiAyICBpcyBzYWZlbHkgY29tcHV0ZWQgYXMgMiAqIDIgd2hlcmUgbjEgaW4gWy1CSUFTLzIuLkJJQVMvMl0KKy8vICAgIGFuZCBCSUFTIGlzIGEgdmFsdWUgb2YgZXhwb25lbnQgYmlhcy4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGV4cG0xKE5hTikgaXMgTmFOCisvLyAgZXhwbTEoK0lORikgaXMgK0lORgorLy8gIGV4cG0xKC1JTkYpIGlzIC0xCisvLyAgZXhwbTEoeCkgaXMgeCBmb3Igc3Vibm9ybWFscworLy8gIGZvciBmaW5pdGUgYXJndW1lbnQsIG9ubHkgZXhwbTEoMCk9MCBpcyBleGFjdC4KKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICAgIGlmIHggPiA3MDkuNzgyNzEyODkzMzgzOTczMDk2IHRoZW4gZXhwbTEoeCkgb3ZlcmZsb3cKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBleHBtMQorRU5UUlkoZXhwbTEpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfZXhwbTEuMToKKyAgICAgICAgc3VicSAgICAgICQ1NiwgJXJzcAorLi5fX190YWdfdmFsdWVfZXhwbTEuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAzMiglcnNwKQorLi5CMS4yOgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBjdiglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFNoaWZ0ZXIoJXJpcCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICAxNitjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDMyK2N2KCVyaXApLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxNjUyNywgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzA0LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNDgrY3YoJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDY0K2N2KCVyaXApLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDYzLCAlZWN4CisgICAgICAgIHNobGwgICAgICAkNCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDYsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBsZWEgICAgICAgVGJsX2FkZHIoJXJpcCksICVyMTEKKyAgICAgICAgbW92YXBkICAgICglcmN4LCVyMTEpLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgODArY3YoJXJpcCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgdW5wY2tocGQgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZkcWEgICAgbW1hc2soJXJpcCksICV4bW02CisgICAgICAgIHBhbmQgICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92ZHFhICAgIGJpYXMoJXJpcCksICV4bW02CisgICAgICAgIHBhZGRxICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQ0NiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkODk0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTkxNiwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlZHgKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNQorICAgICAgICBwc3JscSAgICAgJDM4LCAleG1tMworICAgICAgICBwc2xscSAgICAgJDM4LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNzE4NCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MjU2LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDM2KCVyc3ApLCAlZWN4CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgZnN0Y3cgICAgICglcnNwKQorICAgICAgICBtb3Z3ICAgICAgKCVyc3ApLCAlZHgKKyAgICAgICAgb3J3ICAgICAgICQ3NjgsICVkeAorICAgICAgICBtb3Z3ICAgICAgJWR4LCA0KCVyc3ApCisgICAgICAgIGZsZGN3ICAgICA0KCVyc3ApCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNhcmwgICAgICAkMSwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkcWEgICAgZW1hc2soJXJpcCksICV4bW02CisgICAgICAgIHBhbmRuICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkbCAgICAgICQxMDIzLCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMworICAgICAgICBwc2xscSAgICAgJDUyLCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAxNiglcnNwKQorICAgICAgICBmbGRsICAgICAgMTYoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW02LCAyNCglcnNwKQorICAgICAgICBmbGRsICAgICAgMjQoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW00LCAxNiglcnNwKQorICAgICAgICBmbGRsICAgICAgMTYoJXJzcCkKKyAgICAgICAgYWRkbCAgICAgICQxMDIzLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBwc2xscSAgICAgJDUyLCAleG1tNAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTQsIDI0KCVyc3ApCisgICAgICAgIGZsZGwgICAgICAyNCglcnNwKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVyc3ApCisgICAgICAgIG1vdnNkICAgICAxNiglcnNwKSwgJXhtbTAKKyAgICAgICAgZmxkY3cgICAgICglcnNwKQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorICAgICAgICBjbXBsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQ0MSwgOCglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdnNkICAgICBYTUFYKCVyaXApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNDEsIDgoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDM2KCVyc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAzMiglcnNwKSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgbW92cSAgICAgIElORiglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDMyKCVyc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjMwNCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE1NTA0LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMy4wLjIKKyAgICAgICAgbW92YXBkICAgIGN2bCglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAxNitjdmwoJXJpcCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAzMitjdmwoJXJpcCksICV4bW00CisgICAgICAgIG1vdnEgICAgICA0OCtjdmwoJXJpcCksICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW0xLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkMjcsICV4bW03CisgICAgICAgIHBzbGxxICAgICAkMjcsICV4bW03CisgICAgICAgIG1vdnEgICAgICBISUdITUFTSyglcmlwKSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMxLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdmwgICAgICAkMTYsICVlZHgKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQ0MiwgOCglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBtb3ZsICAgICAgMzYoJXJzcCksICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxMDgzMTc5MDA4LCAlZWF4CisgICAgICAgIGpnZSAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICBjbXBsICAgICAgJC0xMDQ4NTc2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDQwKCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICA0MCglcnNwKSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKy4uQjEuNToKKyAgICAgICAgYWRkcSAgICAgICQ1NiwgJXJzcAorLi5fX190YWdfdmFsdWVfZXhwbTEuNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfZXhwbTEuNToKK0VORChleHBtMSkKKyMgLS0gRW5kICBleHBtMQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorY3Y6CisJLmxvbmcJMTY5NzM1MDM5OAorCS5sb25nCTEwNzk0NDg5MDMKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTQyNzc3OTY4NjQKKwkubG9uZwkxMDY1NzU4Mjc0CisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwkzMTY0NDg2NDU4CisJLmxvbmcJMTAyNTMwODU3MAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJMTk2MzM1ODY5NAorCS5sb25nCTEwNjU0MjMxMjEKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDYyNjUwMjIwCisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2MjY1MDIyMAorCS50eXBlCWN2LEBvYmplY3QKKwkuc2l6ZQljdiw5NgorCS5hbGlnbiAxNgorU2hpZnRlcjoKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLnR5cGUJU2hpZnRlcixAb2JqZWN0CisJLnNpemUJU2hpZnRlciwxNgorCS5hbGlnbiAxNgorVGJsX2FkZHI6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMDAwNzA5NTUKKwkubG9uZwkxMDQyMTQ1MzA0CisJLmxvbmcJMTA0MDE4NzM5MgorCS5sb25nCTExNDE4CisJLmxvbmcJOTg4MjY3ODQ5CisJLmxvbmcJMTAzOTUwMDY2MAorCS5sb25nCTM1Mzk5OTI1NzYKKwkubG9uZwkyMjk2MAorCS5sb25nCTM2NzU1NDAxCisJLmxvbmcJMTA0MjExNDI5MAorCS5sb25nCTQwMjY1MzE4NAorCS5sb25nCTM0NjI5CisJLmxvbmcJMzYzNDc2OTQ4MworCS5sb25nCTEwNDIxNzg2MjcKKwkubG9uZwkxODIwMzI3OTM2CisJLmxvbmcJNDY0MjQKKwkubG9uZwkyMTU1OTkxMjI1CisJLmxvbmcJMTA0MTU2MDY4MAorCS5sb25nCTg0NzI0OTQwOAorCS5sb25nCTU4MzQ4CisJLmxvbmcJMjc2NjkxMzMwNworCS5sb25nCTEwMzkyOTMyNjQKKwkubG9uZwkzNDg5NjYwOTI4CisJLmxvbmcJNzA0MDEKKwkubG9uZwkzNjUxMTc0NjAyCisJLmxvbmcJMTA0MDQ4ODE3NQorCS5sb25nCTI5Mjc2MjQxOTIKKwkubG9uZwk4MjU4NgorCS5sb25nCTMwNzM4OTIxMzEKKwkubG9uZwkxMDQyMjQwNjA2CisJLmxvbmcJMTAwNjYzMjk2MAorCS5sb25nCTk0OTA0CisJLmxvbmcJMTMyODM5MTc0MgorCS5sb25nCTEwNDIwMTkwMzcKKwkubG9uZwkzOTQyNjQ1NzYwCisJLmxvbmcJMTA3MzU1CisJLmxvbmcJMjY1MDg5MzgyNQorCS5sb25nCTEwNDE5MDMyMTAKKwkubG9uZwk4MjIwODM1ODQKKwkubG9uZwkxMTk5NDMKKwkubG9uZwkyMzk3Mjg5MTUzCisJLmxvbmcJMTA0MTgwMjAzNworCS5sb25nCTIyODE3MDEzNzYKKwkubG9uZwkxMzI2NjcKKwkubG9uZwk0MzA5OTcxNzUKKwkubG9uZwkxMDQyMTEwNjA2CisJLmxvbmcJMTg0NTQ5Mzc2MAorCS5sb25nCTE0NTUzMAorCS5sb25nCTEyMzA5MzY1MjUKKwkubG9uZwkxMDQxODAxMDE1CisJLmxvbmcJMTcwMjg4NzQyNAorCS5sb25nCTE1ODUzMworCS5sb25nCTc0MDY3NTkzNQorCS5sb25nCTEwNDAxNzg5MTMKKwkubG9uZwk0MTEwNDE3OTIwCisJLmxvbmcJMTcxNjc3CisJLmxvbmcJMzQ4OTgxMDI2MQorCS5sb25nCTEwNDE4MjU5ODYKKwkubG9uZwkyNzkzNDA2NDY0CisJLmxvbmcJMTg0OTY1CisJLmxvbmcJMjUzMjYwMDUzMAorCS5sb25nCTEwNDA3Njc4ODIKKwkubG9uZwkxNjc3NzIxNjAKKwkubG9uZwkxOTgzOTgKKwkubG9uZwkzNTQyNTU3MDYwCisJLmxvbmcJMTA0MTgyNzI2MworCS5sb25nCTI5ODYzNDQ0NDgKKwkubG9uZwkyMTE5NzYKKwkubG9uZwkxNDAxNTYzNzc3CisJLmxvbmcJMTA0MTA2MTA5MworCS5sb25nCTkyMjc0Njg4MAorCS5sb25nCTIyNTcwMworCS5sb25nCTMxMjk0MDYwMjYKKwkubG9uZwkxMDQxODUyNDEzCisJLmxvbmcJODgwODAzODQwCisJLmxvbmcJMjM5NTc5CisJLmxvbmcJOTAwOTkzNTcyCisJLmxvbmcJMTAzOTI4MzIzNAorCS5sb25nCTEyNzUwNjg0MTYKKwkubG9uZwkyNTM2MDYKKwkubG9uZwkyMTE1MDI5MzU4CisJLmxvbmcJMTA0MjE0MDA0MgorCS5sb25nCTU2MjAzNjczNgorCS5sb25nCTI2Nzc4NgorCS5sb25nCTEwODY2NDMxNTIKKwkubG9uZwkxMDQxNzg1NDE5CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTI4MjEyMAorCS5sb25nCTgyODY0MzY2CisJLmxvbmcJMTA0MTI1NjI0NAorCS5sb25nCTMwNDUwNjQ3MDQKKwkubG9uZwkyOTY2MTAKKwkubG9uZwkyMzkyOTY4MTUyCisJLmxvbmcJMTA0MDkxMzY4MworCS5sb25nCTM1NzM1NDcwMDgKKwkubG9uZwkzMTEyNTgKKwkubG9uZwkyOTA1ODU2MTgzCisJLmxvbmcJMTA0MDAwMjIxNAorCS5sb25nCTE5ODgxMDAwOTYKKwkubG9uZwkzMjYwNjYKKwkubG9uZwkzNzQyMDA4MjYxCisJLmxvbmcJMTA0MDAxMTEzNworCS5sb25nCTE0NTEyMjkxODQKKwkubG9uZwkzNDEwMzUKKwkubG9uZwk4NjMzOTM3OTQKKwkubG9uZwkxMDQwODgwNjIxCisJLmxvbmcJOTE0MzU4MjcyCisJLmxvbmcJMzU2MTY3CisJLmxvbmcJMTQ0NjEzNjgzNworCS5sb25nCTEwNDEzNzI0MjYKKwkubG9uZwkzNzA3NzY0NzM2CisJLmxvbmcJMzcxNDYzCisJLmxvbmcJOTI3ODU1MjAxCisJLmxvbmcJMTA0MDYxNzYzNgorCS5sb25nCTM2MDcxMDE0NAorCS5sb25nCTM4NjkyNworCS5sb25nCTE0OTI2Nzk5MzkKKwkubG9uZwkxMDQxMDUwMzA2CisJLmxvbmcJMjk1Mjc5MDAxNgorCS5sb25nCTQwMjU1OAorCS5sb25nCTYwODgyNzAwMQorCS5sb25nCTEwNDE1ODIyMTcKKwkubG9uZwkyMTgxMDM4MDgwCisJLmxvbmcJNDE4MzYwCisJLmxvbmcJNjA2MjYwMjA0CisJLmxvbmcJMTA0MjI3MTk4NworCS5sb25nCTE3MTEyNzYwMzIKKwkubG9uZwk0MzQzMzQKKwkubG9uZwkzMTYzMDQ0MDE5CisJLmxvbmcJMTA0MTg0Mzg1MQorCS5sb25nCTEwMDY2MzI5NjAKKwkubG9uZwk0NTA0ODIKKwkubG9uZwk0MTQ4NzQ3MzI1CisJLmxvbmcJMTA0MTk2Mjk3MgorCS5sb25nCTM5MDA3MDI3MjAKKwkubG9uZwk0NjY4MDUKKwkubG9uZwk4MDI5MjQyMDEKKwkubG9uZwkxMDQxMjc1Mzc4CisJLmxvbmcJMTQ0Mjg0MDU3NgorCS5sb25nCTQ4MzMwNworCS5sb25nCTMwNTI3NDk4MzMKKwkubG9uZwkxMDQxOTQwNTc3CisJLmxvbmcJMTkzNzc2ODQ0OAorCS5sb25nCTQ5OTk4OAorCS5sb25nCTIyMTYxMTYzOTkKKwkubG9uZwkxMDQxNDg2NzQ0CisJLmxvbmcJOTE0MzU4MjcyCisJLmxvbmcJNTE2ODUxCisJLmxvbmcJMjcyOTY5NzgzNgorCS5sb25nCTEwNDE0NDU3NjQKKwkubG9uZwkyNTY2OTE0MDQ4CisJLmxvbmcJNTMzODk3CisJLmxvbmcJNTQwNjA4MzU2CisJLmxvbmcJMTA0MTMxMDkwNworCS5sb25nCTI2MDA0Njg0ODAKKwkubG9uZwk1NTExMjkKKwkubG9uZwkyOTE2MzQ0NDkzCisJLmxvbmcJMTA0MDUzNTY2MQorCS5sb25nCTExMDcyOTYyNTYKKwkubG9uZwk1Njg1NDkKKwkubG9uZwk3MzEzOTE4MTQKKwkubG9uZwkxMDM5NDk3MDE0CisJLmxvbmcJMjU2NjkxNDA0OAorCS5sb25nCTU4NjE1OAorCS5sb25nCTEwMjQ3MjI3MDQKKwkubG9uZwkxMDQxNDYxNjI1CisJLmxvbmcJMjk2MTE3ODYyNAorCS5sb25nCTYwMzk1OQorCS5sb25nCTM4MDY4MzE3NDgKKwkubG9uZwkxMDQxNzMyNDk5CisJLmxvbmcJMjY3NTk2NTk1MgorCS5sb25nCTYyMTk1NAorCS5sb25nCTIzODk1MzMwNAorCS5sb25nCTEwNDAzMTY0ODgKKwkubG9uZwkyMTg5NDI2Njg4CisJLmxvbmcJNjQwMTQ1CisJLmxvbmcJNzQ5MTIzMjM1CisJLmxvbmcJMTA0MTcyNTc4NQorCS5sb25nCTIwNjM1OTc1NjgKKwkubG9uZwk2NTg1MzQKKwkubG9uZwkxMTY4MTg3OTc3CisJLmxvbmcJMTA0MTE3NTIxNAorCS5sb25nCTI5ODYzNDQ0NDgKKwkubG9uZwk2NzcxMjMKKwkubG9uZwkzNTA2MDk2Mzk5CisJLmxvbmcJMTA0MjE4NjA5NQorCS5sb25nCTE0MjYwNjMzNjAKKwkubG9uZwk2OTU5MTUKKwkubG9uZwkxNDcwMjIxNjIwCisJLmxvbmcJMTA0MTY3NTQ5OQorCS5sb25nCTI1NjY5MTQwNDgKKwkubG9uZwk3MTQ5MTEKKwkubG9uZwkzMTgyNDI1MTQ2CisJLmxvbmcJMTA0MTQ4MzEzNAorCS5sb25nCTMwODcwMDc3NDQKKwkubG9uZwk3MzQxMTQKKwkubG9uZwkzMTMxNjk4MjA4CisJLmxvbmcJMTA0MjIwODY1NworCS5sb25nCTQwNjg0NzQ4ODAKKwkubG9uZwk3NTM1MjYKKwkubG9uZwkyMzAwNTA0MTI1CisJLmxvbmcJMTA0MTQyODU5NgorCS5sb25nCTI0MTU5MTkxMDQKKwkubG9uZwk3NzMxNTAKKwkubG9uZwkyMjkwMjk3OTMxCisJLmxvbmcJMTAzNzM4ODQwMAorCS5sb25nCTM3MTYxNTMzNDQKKwkubG9uZwk3OTI5ODcKKwkubG9uZwkzNTMyMTQ4MjIzCisJLmxvbmcJMTA0MTYyNjE5NAorCS5sb25nCTc3MTc1MTkzNgorCS5sb25nCTgxMzA0MQorCS5sb25nCTExNjE4ODQ0MDQKKwkubG9uZwkxMDQyMDE1MjU4CisJLmxvbmcJMzY5OTM3NjEyOAorCS5sb25nCTgzMzMxMgorCS5sb25nCTg3NjM4MzE3NgorCS5sb25nCTEwMzc5Njg4NzgKKwkubG9uZwkxMjQxNTEzOTg0CisJLmxvbmcJODUzODA1CisJLmxvbmcJMzM3OTk4Njc5NgorCS5sb25nCTEwNDIyMTMxNTMKKwkubG9uZwkzNjk5Mzc2MTI4CisJLmxvbmcJODc0NTIwCisJLmxvbmcJMTU0NTc5NzczNworCS5sb25nCTEwNDE2ODE1NjkKKwkubG9uZwk1ODcyMDI1NgorCS5sb25nCTg5NTQ2MgorCS5sb25nCTI5MjUxNDY4MDEKKwkubG9uZwkxMDQyMjEyNTY3CisJLmxvbmcJODU1NjM4MDE2CisJLmxvbmcJOTE2NjMxCisJLmxvbmcJMTMxNjYyNzk3MQorCS5sb25nCTEwMzg1MTYyMDQKKwkubG9uZwkzODgzOTI1NTA0CisJLmxvbmcJOTM4MDMwCisJLmxvbmcJMzI2Nzg2OTEzNworCS5sb25nCTEwNDAzMzcwMDQKKwkubG9uZwkyNzI2Mjk3NjAwCisJLmxvbmcJOTU5NjYzCisJLmxvbmcJMzcyMDg2ODk5OQorCS5sb25nCTEwNDE3ODI0MDkKKwkubG9uZwkzOTkyOTc3NDA4CisJLmxvbmcJOTgxNTMxCisJLmxvbmcJNDMzMzE2MTQyCisJLmxvbmcJMTA0MTk5NDA2NAorCS5sb25nCTE1MjY3MjY2NTYKKwkubG9uZwkxMDAzNjM4CisJLmxvbmcJNzgxMjMyMTAzCisJLmxvbmcJMTA0MDA5MzQwMAorCS5sb25nCTIxNzI2NDk0NzIKKwkubG9uZwkxMDI1OTg1CisJLnR5cGUJVGJsX2FkZHIsQG9iamVjdAorCS5zaXplCVRibF9hZGRyLDEwMjQKKwkuYWxpZ24gMTYKK21tYXNrOgorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzIzMgorCS5sb25nCTAKKwkudHlwZQltbWFzayxAb2JqZWN0CisJLnNpemUJbW1hc2ssMTYKKwkuYWxpZ24gMTYKK2JpYXM6CisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLnR5cGUJYmlhcyxAb2JqZWN0CisJLnNpemUJYmlhcywxNgorCS5hbGlnbiAxNgorZW1hc2s6CisJLmxvbmcJMAorCS5sb25nCTQyOTM5MTg3MjAKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS50eXBlCWVtYXNrLEBvYmplY3QKKwkuc2l6ZQllbWFzaywxNgorCS5hbGlnbiAxNgorY3ZsOgorCS5sb25nCTI3NzM5Mjc3MzIKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2MjY1MDIyMAorCS5sb25nCTM3OTY1Mzg5OQorCS5sb25nCTEwNTY1NzE4NDUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMTA1OTcxNzUzNgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS50eXBlCWN2bCxAb2JqZWN0CisJLnNpemUJY3ZsLDY0CisJLmFsaWduIDgKK1hNQVg6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDY0MzUwNzEKKwkudHlwZQlYTUFYLEBvYmplY3QKKwkuc2l6ZQlYTUFYLDgKKwkuYWxpZ24gOAorSU5GOgorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLnR5cGUJSU5GLEBvYmplY3QKKwkuc2l6ZQlJTkYsOAorCS5hbGlnbiA4CitISUdITUFTSzoKKwkubG9uZwk0MjI3ODU4NDMyCisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUhJR0hNQVNLLEBvYmplY3QKKwkuc2l6ZQlISUdITUFTSyw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwbTEuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2V4cG0xLjUtLi5fX190YWdfdmFsdWVfZXhwbTEuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwbTEuMy0uLl9fX3RhZ192YWx1ZV9leHBtMS4xCisJLjJieXRlIDB4NDAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwbTEuNC0uLl9fX3RhZ192YWx1ZV9leHBtMS4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zX2xvZzFwLlMgYi9saWJtL3g4Nl82NC9zX2xvZzFwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWZmMmQzOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NfbG9nMXAuUwpAQCAtMCwwICsxLDgyOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BwcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCoyXjcrMC41KSkvMl43CisvLworLy8gICAgUmVkdWNlZCBhcmd1bWVudDogcj1CKm14LTEuMCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgUmVzdWx0OiAgaypsb2coMikgLSBsb2coQikgKyBwKHIpCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDcgcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZyhCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgUmVzdWx0IGlzIGZvcm1lZCBmcm9tIGhpZ2ggYW5kIGxvdyBwYXJ0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgIGxvZzFwKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgrSU5GKSA9IHRoYXQgSU5GCisvLyAgIGxvZzFwKHgpID0gTmFOIGlmIHggPCAtMSBvciB4ID0gLUlORiwgYW5kIHJhaXNlcyBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgtMSkgPSAtSU5GLCBhbmQgcmFpc2VzIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBsb2cxcAorRU5UUlkobG9nMXApCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfbG9nMXAuMToKKyAgICAgICAgc3VicSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfbG9nMXAuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjI6CisgICAgICAgIG1vdnEgICAgICAkMHgzZmYwMDAwMDAwMDAwMDAwLCAlcmF4CisgICAgICAgIG1vdmQgICAgICAlcmF4LCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVyY3gsICV4bW00CisgICAgICAgIG1vdnEgICAgICAkMHhmZmZmZTAwMDAwMDAwMDAwLCAlcjgKKyAgICAgICAgbW92ZCAgICAgICVyOCwgJXhtbTUKKyAgICAgICAgbW92ZGR1cCAgICV4bW0wLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIExfdGJsKCVyaXApLCAlcjExCisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIHJjcHBzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTYyNTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQzMjcyMCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0zCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAkMHgzODAwMDAwMDAwMDAwMDAwLCAlcmN4CisgICAgICAgIG1vdmQgICAgICAlcmN4LCAleG1tNAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBsb2cyKCVyaXApLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgY29lZmYoJXJpcCksICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQxNjcxMTY4MCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEyLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAoJXIxMSwlcmR4KSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmKCVyaXApLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgOCtsb2cyKCVyaXApLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG1vdmRkdXAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92ZGR1cCAgICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAzMitjb2VmZiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0xCisgICAgICAgIGFkZGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQtMjA5NzE1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxNDEsICglcnNwKQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE0MCwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDE1NTA0LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorICAgICAgICBtb3ZhcGQgICAgY29lZmYyKCVyaXApLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmMiglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAzMitjb2VmZjIoJXJpcCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQ0OTEyMCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgMTYoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9sb2cxcC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9sb2cxcC41OgorRU5EKGxvZzFwKQorIyAtLSBFbmQgIGxvZzFwCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitMX3RibDoKKwkubG9uZwk0Mjc3ODExMjAwCisJLmxvbmcJMTA3MjA0OTczMAorCS5sb25nCTI0NzkzMTg4MzIKKwkubG9uZwkxMDI2NDg3MTI3CisJLmxvbmcJMjg1NDQ5MjE2MAorCS5sb25nCTEwNzIwMzM0MTAKKwkubG9uZwkyMTU2MzE1NTAKKwkubG9uZwkxMDI1NjM4OTY4CisJLmxvbmcJMTU0NzA2MTI0OAorCS5sb25nCTEwNzIwMTcyMTYKKwkubG9uZwkyODg2NzgxNDM1CisJLmxvbmcJMTAyNjQyMzM5NQorCS5sb25nCTY0OTgyNTI4MAorCS5sb25nCTEwNzIwMDExNDYKKwkubG9uZwk0MjgxNTMzNDA1CisJLmxvbmcJMTAyNDAzODkyMworCS5sb25nCTY0NjM0Njc1MgorCS5sb25nCTEwNzE5ODUxOTgKKwkubG9uZwkxNTYyNzM1OTIxCisJLmxvbmcJMTAyMzc5MDI3NgorCS5sb25nCTIyMDM3MzQwMTYKKwkubG9uZwkxMDcxOTY5MzcwCisJLmxvbmcJMTgzODM5NzY5MQorCS5sb25nCTMxNzM5MzYyMDkKKwkubG9uZwkxODcyMTY5OTg0CisJLmxvbmcJMTA3MTk1MzY2MQorCS5sb25nCTM5ODEyMDI0NjAKKwkubG9uZwkxMDIyMzI1MDEzCisJLmxvbmcJNjY5NTU3NzYwCisJLmxvbmcJMTA3MTkzODA2OQorCS5sb25nCTQxODI1OTc4MDIKKwkubG9uZwkzMTczMTc0MTIyCisJLmxvbmcJNDA3NjQxMzk1MgorCS5sb25nCTEwNzE5MjI1OTEKKwkubG9uZwkxMjA5MDI5MTExCisJLmxvbmcJMzE3MDczNjIwNworCS5sb25nCTU1NjEyNTE4NAorCS5sb25nCTEwNzE5MDcyMjgKKwkubG9uZwk4MjEwODYwMjgKKwkubG9uZwkzMTczNDM3MDQ5CisJLmxvbmcJMjA0OTE0Njg4CisJLmxvbmcJMTA3MTg5MTk3NgorCS5sb25nCTIwOTcwMjU5ODYKKwkubG9uZwkzMTcxMDcxNzk4CisJLmxvbmcJMzg3NTQ1MDg4CisJLmxvbmcJMTA3MTg3NjgzNAorCS5sb25nCTMxNDI5MzY5OTYKKwkubG9uZwkzMTczMDkyMjE4CisJLmxvbmcJMjkxMjc4MzM2MAorCS5sb25nCTEwNzE4NjE4MDAKKwkubG9uZwkyNTAyNDIwMTQwCisJLmxvbmcJMTAyNDUwNTkxOQorCS5sb25nCTExNDQyNjA2MDgKKwkubG9uZwkxMDcxODQ2ODc0CisJLmxvbmcJMzMxNTY1ODE0MAorCS5sb25nCTMxNzM0Njk4NDMKKwkubG9uZwkxNDcxMjA5NDcyCisJLmxvbmcJMTA3MTgzMjA1MworCS5sb25nCTEyOTYyMTAwOQorCS5sb25nCTMxNzI0NDM4NzcKKwkubG9uZwkxODI5NjgzMjAwCisJLmxvbmcJMTA3MTgxNzMzNgorCS5sb25nCTM4ODU0Njc2OTMKKwkubG9uZwkxMDI1NTM1Mjc1CisJLmxvbmcJMjg4Njc2ODY0CisJLmxvbmcJMTA3MTgwMjcyMgorCS5sb25nCTg2MTM5NDcyCisJLmxvbmcJMzE3MTYzOTc5MworCS5sb25nCTM2MzYzNzg2MjQKKwkubG9uZwkxMDcxNzg4MjA4CisJLmxvbmcJMTg1MDIzODU4NworCS5sb25nCTEwMjQ2NTQzNDIKKwkubG9uZwkxNjA2ODE3NzkyCisJLmxvbmcJMTA3MTc3Mzc5NQorCS5sb25nCTMzODg4OTk3OTUKKwkubG9uZwkzMTczNjc1NTg2CisJLmxvbmcJMTIzNjE2NDYwOAorCS5sb25nCTEwNzE3NTk0ODAKKwkubG9uZwkzOTgzNTk5MjA3CisJLmxvbmcJMTAyMDA0NjU1OAorCS5sb25nCTEwODk2MTY4OTYKKwkubG9uZwkxMDcxNzQ1MjYyCisJLmxvbmcJNDE3MTk3NDIyNAorCS5sb25nCTEwMjQ3NzMxOTgKKwkubG9uZwk0MTQzMDkzNzYwCisJLmxvbmcJMTA3MTczMTEzOQorCS5sb25nCTI3Mjc1ODc0MDEKKwkubG9uZwkzMTczOTY1MjA3CisJLmxvbmcJNjAwMjY3Nzc2CisJLmxvbmcJMTA3MTcxNzExMgorCS5sb25nCTMxNDc2ODUwNDIKKwkubG9uZwkzMTczMzUzMDMxCisJLmxvbmcJMjI0OTMxMzI4MAorCS5sb25nCTEwNzE3MDMxNzcKKwkubG9uZwkxMjU4MzUwNzQKKwkubG9uZwkxMDI1MjU1ODMyCisJLmxvbmcJMzgwNTMwMzgwOAorCS5sb25nCTEwNzE2ODkzMzQKKwkubG9uZwkyMjg5OTkxMjA3CisJLmxvbmcJMTAyNTQ2MDMzMQorCS5sb25nCTg3Mjc4NTkyCisJLmxvbmcJMTA3MTY3NTU4MworCS5sb25nCTExMDYxMTQwNDUKKwkubG9uZwkxMDI1OTMzNjAyCisJLmxvbmcJMzE5NTQwNTMxMgorCS5sb25nCTEwNzE2NjE5MjAKKwkubG9uZwkzODg1MzE2NTc2CisJLmxvbmcJMzE3MTIwNjIzOQorCS5sb25nCTM4NTM2NDk5MjAKKwkubG9uZwkxMDcxNjQ4MzQ2CisJLmxvbmcJMjk3NzA2OTg1MgorCS5sb25nCTMxNzEyMzY3NzEKKwkubG9uZwkyOTQ0MDI2NjI0CisJLmxvbmcJMTA3MTYyNTA0OAorCS5sb25nCTEwMDgwOTM0OTMKKwkubG9uZwkxMDIzNDQ0NDc0CisJLmxvbmcJMzk5MzE4MDE2MAorCS5sb25nCTEwNzE1OTgyNDcKKwkubG9uZwkxODYyMzU1NTk1CisJLmxvbmcJMTAyNDY0MjUzMworCS5sb25nCTE0NTQ2NDExNTIKKwkubG9uZwkxMDcxNTcxNjE3CisJLmxvbmcJMTUxNDYwMzA4OQorCS5sb25nCTEwMjY1MDA1OTYKKwkubG9uZwkzMjg2MDg1NjMyCisJLmxvbmcJMTA3MTU0NTE1NAorCS5sb25nCTE0MDAwMjg0MjQKKwkubG9uZwkzMTczMjc5MDU2CisJLmxvbmcJNDM4NzczNzYwCisJLmxvbmcJMTA3MTUxODg1OAorCS5sb25nCTEyMDcyNzg2NAorCS5sb25nCTMxNzIxNDg5MTQKKwkubG9uZwkxMjEyOTc5MjAwCisJLmxvbmcJMTA3MTQ5MjcyNQorCS5sb25nCTE2MjUwNTU1OTQKKwkubG9uZwkzMTcyOTAxOTMzCisJLmxvbmcJMTE4OTAxNzYwMAorCS5sb25nCTEwNzE0NjY3NTQKKwkubG9uZwkzOTIwMDYyMzc2CisJLmxvbmcJMTAyNTcyNzQwNworCS5sb25nCTQwMzA2NDgzMgorCS5sb25nCTEwNzE0NDA5NDMKKwkubG9uZwkxMDUzMjcxNzI4CisJLmxvbmcJMzE3MTM5MTQyNworCS5sb25nCTMzNDMyMTA0OTYKKwkubG9uZwkxMDcxNDE1Mjg5CisJLmxvbmcJMzI0MzM5NTUwMgorCS5sb25nCTMxNzM2Mjc2MTMKKwkubG9uZwkxNzY1Nzc3NDA4CisJLmxvbmcJMTA3MTM4OTc5MgorCS5sb25nCTIxNDU5Njg1MTIKKwkubG9uZwkxMDI2MzU0MzA0CisJLmxvbmcJNDYxNDMwNzg0CisJLmxvbmcJMTA3MTM2NDQ0OQorCS5sb25nCTQwOTQzMjIyODUKKwkubG9uZwkxMDI2MDIxNDY3CisJLmxvbmcJNzE3MDY2MjQKKwkubG9uZwkxMDcxMzM5MjU4CisJLmxvbmcJNzYzNjMyMDIxCisJLmxvbmcJMTAyNDQ5NjkzMworCS5sb25nCTEzODA1MDM1NTIKKwkubG9uZwkxMDcxMzE0MjE3CisJLmxvbmcJMTM4MzU0Nzk5MgorCS5sb25nCTMxNzMwODg0NTMKKwkubG9uZwkxMDE1NzMyMjI0CisJLmxvbmcJMTA3MTI4OTMyNQorCS5sb25nCTMxOTg2NDY4NzcKKwkubG9uZwkxMDI1MzkwMzIyCisJLmxvbmcJMzU5NzcyMTYKKwkubG9uZwkxMDcxMjY0NTgwCisJLmxvbmcJMjE0MTAyNjgwNQorCS5sb25nCTEwMjU3NTQ2OTMKKwkubG9uZwkzOTI3MzA2MjQwCisJLmxvbmcJMTA3MTIzOTk3OQorCS5sb25nCTI4MjExNjI3MgorCS5sb25nCTMxNzMzOTQzMzQKKwkubG9uZwkxMTI1MzQxMTg0CisJLmxvbmcJMTA3MTIxNTUyMworCS5sb25nCTI3Njg0Mjc1MDQKKwkubG9uZwkzMTcyMjc5MDU5CisJLmxvbmcJMTY2Njk3MTY0OAorCS5sb25nCTEwNzExOTEyMDgKKwkubG9uZwk3ODY4Mzc2MjkKKwkubG9uZwkzMTcyNDI3NDQ1CisJLmxvbmcJMjgyNzY5NDA4MAorCS5sb25nCTEwNzExNjcwMzMKKwkubG9uZwkzODU3MTIyNDE2CisJLmxvbmcJMzE3MzAxNDI0MQorCS5sb25nCTIwMDM2ODMzMjgKKwkubG9uZwkxMDcxMTQyOTk3CisJLmxvbmcJODU5MDEwOTU0CisJLmxvbmcJMTAyNjU0NTAwNworCS5sb25nCTEwMDQwMTc2NjQKKwkubG9uZwkxMDcxMTE5MDk4CisJLmxvbmcJMzM1NjY0NDk3MAorCS5sb25nCTMxNzM0NTgwNjQKKwkubG9uZwkxNzUzMDIwNDE2CisJLmxvbmcJMTA3MTA5NTMzNAorCS5sb25nCTc4ODMzODU1MgorCS5sb25nCTEwMjYxNTc2OTMKKwkubG9uZwkxOTkyNzE4MzM2CisJLmxvbmcJMTA3MTA3MTcwNAorCS5sb25nCTEyMzkxNzk0NDMKKwkubG9uZwkxMDI2Mzk0ODg5CisJLmxvbmcJMzg3MDIzNDYyNAorCS5sb25nCTEwNzEwNDgyMDYKKwkubG9uZwkyMDgyNjE0NjYzCisJLmxvbmcJMTAyNDkyNjA1MworCS5sb25nCTEwNTA0Mzc2MzIKKwkubG9uZwkxMDcxMDI0ODQwCisJLmxvbmcJNjYwMDA3ODQwCisJLmxvbmcJMTAyNTU0ODQ5OQorCS5sb25nCTE4ODM5NTUyMAorCS5sb25nCTEwNzEwMDE2MDMKKwkubG9uZwkzODc4NzkyNzA0CisJLmxvbmcJMzE3Mzg4OTU3MQorCS5sb25nCTM3NDcxNzY0NDgKKwkubG9uZwkxMDcwOTc4NDkzCisJLmxvbmcJMTQ0OTkxNzA4CisJLmxvbmcJMzE3MTU1MjA0MgorCS5sb25nCTE0MDU2NjkzNzYKKwkubG9uZwkxMDcwOTU1NTExCisJLmxvbmcJMzk5OTA4ODg3OQorCS5sb25nCTEwMjU0ODYzMTcKKwkubG9uZwkxMjExNTE0ODgKKwkubG9uZwkxMDcwOTMyNjU0CisJLmxvbmcJMjE3MDg2NTQ5NworCS5sb25nCTEwMjY0NzM1ODQKKwkubG9uZwkyNjUyMzE5NzQ0CisJLmxvbmcJMTA3MDkwOTkyMAorCS5sb25nCTQ1MzY5NTY1MgorCS5sb25nCTMxNzM5MTY4MDkKKwkubG9uZwkzMjYyMjM2NjcyCisJLmxvbmcJMTA3MDg4NzMwOQorCS5sb25nCTE1NzgwMDA1MworCS5sb25nCTMxNzM5ODQyMDYKKwkubG9uZwk2MDEyMjExMjAKKwkubG9uZwkxMDcwODY0ODIwCisJLmxvbmcJMzk2ODkxNzY2MQorCS5sb25nCTEwMjM5OTI4ODYKKwkubG9uZwkxOTk5ODQzMzI4CisJLmxvbmcJMTA3MDg0MjQ1MAorCS5sb25nCTMwNTM4OTUwMDQKKwkubG9uZwkxMDI0OTk4MjI4CisJLmxvbmcJMTk5MjE2NzQyNAorCS5sb25nCTEwNzA4MjAxOTkKKwkubG9uZwkyOTY4NjE0ODU2CisJLmxvbmcJMTAyNDU1MjY1MworCS5sb25nCTM3ODg3MjYyNzIKKwkubG9uZwkxMDcwNzk4MDY1CisJLmxvbmcJMzU0MjE3MDgwOAorCS5sb25nCTMxNzM1NzMyNDIKKwkubG9uZwkyMDk0ODI5NTY4CisJLmxvbmcJMTA3MDc3NjA0OAorCS5sb25nCTEyNDY3NTgxMzIKKwkubG9uZwkxMDI2MjAyODc0CisJLmxvbmcJMjg4Njc1ODQwCisJLmxvbmcJMTA3MDc1NDE0NgorCS5sb25nCTM3NDczMjg5NTAKKwkubG9uZwkxMDI2MzMxNTg1CisJLmxvbmcJMTgyOTY4MTE1MgorCS5sb25nCTEwNzA3MzIzNTcKKwkubG9uZwkzMTI1MTk3NTQ2CisJLmxvbmcJMTAyNDEwMDMxOAorCS5sb25nCTE2NjY4NjkyNDgKKwkubG9uZwkxMDcwNzEwNjgxCisJLmxvbmcJMTM2MzY1NjExOQorCS5sb25nCTEwMjYzMzY0OTMKKwkubG9uZwkzNDE3MTEwNTI4CisJLmxvbmcJMTA3MDY4OTExNgorCS5sb25nCTQxNTQ3OTE1NTMKKwkubG9uZwkxMDI2MjY3ODUzCisJLmxvbmcJMjE4MzY1MzM3NgorCS5sb25nCTEwNzA2Njc2NjIKKwkubG9uZwkxNjcxODE5MjkyCisJLmxvbmcJMzE3Mzc4NTg3MAorCS5sb25nCTE3MzQ0MzQ4MTYKKwkubG9uZwkxMDcwNjQ2MzE3CisJLmxvbmcJMzczMDkxMDQ5CisJLmxvbmcJMTAyNTk3MjM2MworCS5sb25nCTE2MTU2ODE1MzYKKwkubG9uZwkxMDcwNjI1MDgwCisJLmxvbmcJMzg0NjUwODk3CisJLmxvbmcJMTAyMjkyNjA0MworCS5sb25nCTE0NDUzODIxNDQKKwkubG9uZwkxMDcwNjAzOTUwCisJLmxvbmcJMzQ0MzIwMzMwCisJLmxvbmcJMzE3MjM5NzE5NgorCS5sb25nCTE4MjM3MTUzMjgKKwkubG9uZwkxMDcwNTY5NzU2CisJLmxvbmcJMzM4OTg0MTIwMAorCS5sb25nCTEwMjUyMzE4NTIKKwkubG9uZwkzODM5Njg4NzA0CisJLmxvbmcJMTA3MDUyNzkxNworCS5sb25nCTE3MDY3OTA0MTcKKwkubG9uZwkzMTY3MzYzMzQ5CisJLmxvbmcJNDI5MzMzMjk5MgorCS5sb25nCTEwNzA0ODYyODYKKwkubG9uZwkxNjE0OTM1MDg4CisJLmxvbmcJMTAxOTM1MTU5MQorCS5sb25nCTI5NjY3MjA1MTIKKwkubG9uZwkxMDcwNDQ0ODYxCisJLmxvbmcJNDE0NTM5MzcxNworCS5sb25nCTMxNzM3MTE2NTgKKwkubG9uZwk0MDY2NzI5OTg0CisJLmxvbmcJMTA3MDQwMzYzOQorCS5sb25nCTE5NzQ5MjUwMjgKKwkubG9uZwkzMTcxNDM3MTgyCisJLmxvbmcJMzMzNzYyMTUwNAorCS5sb25nCTEwNzAzNjI2MTkKKwkubG9uZwkzMzE0OTUzMTcwCisJLmxvbmcJMzE2OTk3MTMxNAorCS5sb25nCTk0MzQ0ODA2NAorCS5sb25nCTEwNzAzMjE3OTkKKwkubG9uZwkxNDk4NjgyMDM4CisJLmxvbmcJMzE3Mzg2MjM0MAorCS5sb25nCTE0NjU2MzQ4MTYKKwkubG9uZwkxMDcwMjgxMTc2CisJLmxvbmcJMTMxOTk1MjgxMAorCS5sb25nCTMxNzE2OTM5NjUKKwkubG9uZwkxMDE1NzM0MjcyCisJLmxvbmcJMTA3MDI0MDc0OQorCS5sb25nCTEzNDc4MjE5MjkKKwkubG9uZwkzMTczNTQ0NTE1CisJLmxvbmcJMTE4MDAxNjY0CisJLmxvbmcJMTA3MDIwMDUxNgorCS5sb25nCTE3NTE0ODI3NDYKKwkubG9uZwkxMDI2MTM0MDkzCisJLmxvbmcJMzcwNzE3NDkxMgorCS5sb25nCTEwNzAxNjA0NzQKKwkubG9uZwkxNDg2OTQ2MTU5CisJLmxvbmcJMTAyMzkzMDkyMAorCS5sb25nCTM5NDYzODEzMTIKKwkubG9uZwkxMDcwMTIwNjIzCisJLmxvbmcJMjg2NzQwODA4MQorCS5sb25nCTMxNzEzNjgyNzYKKwkubG9uZwkxNjk5ODQ4MTkyCisJLmxvbmcJMTA3MDA4MDk2MQorCS5sb25nCTI1OTAxODcxMzkKKwkubG9uZwkxMDI1Mzc5ODAzCisJLmxvbmcJMjIzNTg0NjY1NgorCS5sb25nCTEwNzAwNDE0ODUKKwkubG9uZwkxODg4NTY4MDY5CisJLmxvbmcJMzE3Mjc1NDk2MAorCS5sb25nCTIzMzk3Mjk0MDgKKwkubG9uZwkxMDcwMDAyMTk0CisJLmxvbmcJMzg1MjIxNDc1MworCS5sb25nCTMxNzMzMjMxNDkKKwkubG9uZwkzMTk2ODUwMTc2CisJLmxvbmcJMTA2OTk2MzA4NgorCS5sb25nCTc0MjE0MTU2MAorCS5sb25nCTEwMjUxMDE3MDcKKwkubG9uZwkxODAwNjgzNTIwCisJLmxvbmcJMTA2OTkyNDE2MAorCS5sb25nCTM5NDk1MDA0NDQKKwkubG9uZwkzMTcyMTAyMTc5CisJLmxvbmcJMzgzNTgwMTYwMAorCS5sb25nCTEwNjk4ODU0MTMKKwkubG9uZwkzODQ4ODk1OTQzCisJLmxvbmcJMTAyNTkxMzgzMgorCS5sb25nCTIyMDEyMDI2ODgKKwkubG9uZwkxMDY5ODQ2ODQ1CisJLmxvbmcJMTQyNTkxMzQ2NAorCS5sb25nCTEwMjU4Njg2NjUKKwkubG9uZwkyNzc4Mjc5OTM2CisJLmxvbmcJMTA2OTgwODQ1MworCS5sb25nCTIxMjA4ODk2NzcKKwkubG9uZwkzMTczODMxMTI4CisJLmxvbmcJMjk1NDIwMzEzNgorCS5sb25nCTEwNjk3NzAyMzYKKwkubG9uZwk1OTIxNDcwODEKKwkubG9uZwkxMDE5NjIxMjg4CisJLmxvbmcJMjEwMTQxMTg0CisJLmxvbmcJMTA2OTczMjE5MworCS5sb25nCTM0MTQyNzUyMzMKKwkubG9uZwkxMDIzNjQ3MDg0CisJLmxvbmcJNzA5NDc2MzUyCisJLmxvbmcJMTA2OTY5NDMyMQorCS5sb25nCTI0MTMwMjcxNjQKKwkubG9uZwkxMDI0NDYyMTE1CisJLmxvbmcJMjExNjI4NDQxNgorCS5sb25nCTEwNjk2NTY2MTkKKwkubG9uZwkxMTQ0NTU5OTI0CisJLmxvbmcJMTAyNjMzNjY1NAorCS5sb25nCTIxODM2NTEzMjgKKwkubG9uZwkxMDY5NjE5MDg2CisJLmxvbmcJMzQ1OTA1NzY1MAorCS5sb25nCTEwMjU2MzQxNjgKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2OTU4MTcyMAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTczNTA4NTczCisJLmxvbmcJOTcwNzExMDQwCisJLmxvbmcJMTA2OTU0MTUyMQorCS5sb25nCTEzMzU5NTQxNzMKKwkubG9uZwkzMTczMzMyMTgyCisJLmxvbmcJMjE5ODQ3ODg0OAorCS5sb25nCTEwNjk0Njc0NDkKKwkubG9uZwkyOTUxMTAzOTY4CisJLmxvbmcJMzE3Mzg5MjIwMAorCS5sb25nCTE2Njk2MTE1MjAKKwkubG9uZwkxMDY5MzkzNzAzCisJLmxvbmcJNTMxMDQ0MTQ3CisJLmxvbmcJMTAyNTE0OTI0OAorCS5sb25nCTI5MTE0MzY4CisJLmxvbmcJMTA2OTMyMDI4MAorCS5sb25nCTMzMjc4MzEyNTEKKwkubG9uZwkxMDI1OTE4NjczCisJLmxvbmcJMjM3Njk0OTc2MAorCS5sb25nCTEwNjkyNDcxNzYKKwkubG9uZwk3Mzc2MzQ1MzMKKwkubG9uZwkzMTcyMTc2MDAwCisJLmxvbmcJMTA4NTM5MDg0OAorCS5sb25nCTEwNjkxNzQzOTAKKwkubG9uZwkzMTA4MjQzNDAwCisJLmxvbmcJMzE3MTgyODQwNgorCS5sb25nCTE1NjYxMzAxNzYKKwkubG9uZwkxMDY5MTAxOTE4CisJLmxvbmcJOTg1NDgzMjI2CisJLmxvbmcJMTAyNTcwODM4MAorCS5sb25nCTc5Mjc4MDgwMAorCS5sb25nCTEwNjkwMjk3NTgKKwkubG9uZwk0MTg0ODY2Mjk1CisJLmxvbmcJMTAyNDQyNjIwNAorCS5sb25nCTE4MzE1NjczNgorCS5sb25nCTEwNjg5NTc5MDcKKwkubG9uZwkyODQ1Njk5Mzc4CisJLmxvbmcJMTAyMjEwNzI3NworCS5sb25nCTEzMDE3ODI1MjgKKwkubG9uZwkxMDY4ODg2MzYyCisJLmxvbmcJMTAxMjczNTI2MgorCS5sb25nCTMxNzM4MDQyOTQKKwkubG9uZwkxNTYyNDExMDA4CisJLmxvbmcJMTA2ODgxNTEyMQorCS5sb25nCTIxOTcwODY3MDMKKwkubG9uZwkzMTcwMTg3ODEzCisJLmxvbmcJMjgxNTU0OTQ0MAorCS5sb25nCTEwNjg3NDQxODEKKwkubG9uZwkyNzgyNjEzMjA3CisJLmxvbmcJMTAyNjM0NTA1NAorCS5sb25nCTI3NTYxMjQ2NzIKKwkubG9uZwkxMDY4NjczNTQwCisJLmxvbmcJMjkyOTQ4NjIwNQorCS5sb25nCTMxNzMwMzc4MDAKKwkubG9uZwkzNTExMDUwMjQwCisJLmxvbmcJMTA2ODYwMzE5NQorCS5sb25nCTE0NDM3MzMxNDcKKwkubG9uZwkzMTczMzMxNTQ5CisJLmxvbmcJMzA0NzA0NzE2OAorCS5sb25nCTEwNjg1MzMxNDQKKwkubG9uZwkxODc5Njc0OTI0CisJLmxvbmcJMzE3MjQ1OTk5NworCS5sb25nCTMyMjE2Njc4NDAKKwkubG9uZwkxMDY4NDI3ODI1CisJLmxvbmcJMTMzODU4ODAyNworCS5sb25nCTMxNzE4MTU3NDIKKwkubG9uZwkzNDUzODYxODg4CisJLmxvbmcJMTA2ODI4ODg4MworCS5sb25nCTEyMDUzNDgzNTkKKwkubG9uZwkzMTcyNjI0NjI2CisJLmxvbmcJMzUwNjExMDQ2NAorCS5sb25nCTEwNjgxNTA1MTQKKwkubG9uZwk4OTMxMDUxOTgKKwkubG9uZwkxMDI1NTcxODY2CisJLmxvbmcJMzQ2MDEzNjk2CisJLmxvbmcJMTA2ODAxMjcxNAorCS5sb25nCTM0OTU1NjkwMjEKKwkubG9uZwkzMTcyNTYzMzQ5CisJLmxvbmcJNDA3NDAyOTA1NgorCS5sb25nCTEwNjc4NzU0NzYKKwkubG9uZwkzOTYxMTA2MzM4CisJLmxvbmcJMzE3MTA2NTU5NQorCS5sb25nCTM1NTk3ODQ0NDgKKwkubG9uZwkxMDY3NzM4Nzk4CisJLmxvbmcJMTk3NTM4NTM4NAorCS5sb25nCTMxNzM3ODMxNTUKKwkubG9uZwk3OTc3Njk3MjgKKwkubG9uZwkxMDY3NjAyNjc1CisJLmxvbmcJMzc2MDMwNTc4NworCS5sb25nCTEwMjYwNDc2NDIKKwkubG9uZwkyMzEzNjMzNzkyCisJLmxvbmcJMTA2NzQ2NzEwMQorCS5sb25nCTE1NTkzNTMxNzEKKwkubG9uZwkxMDIzNDgwMjU2CisJLmxvbmcJMzk2MDc2NjQ2NAorCS5sb25nCTEwNjcyMTM3NzgKKwkubG9uZwkxMDY3MzY1MTA3CisJLmxvbmcJMTAyNTg2NTkyNgorCS5sb25nCTY4NDI2MTM3NgorCS5sb25nCTEwNjY5NDQ4MDUKKwkubG9uZwk4NDQ3NjIxNjQKKwkubG9uZwkzMTczNjg3NDgyCisJLmxvbmcJNjMwNzE4NDY0CisJLmxvbmcJMTA2NjY3NjkwNQorCS5sb25nCTI0NTgyNjk2OTQKKwkubG9uZwkxMDI0MDMzMDgxCisJLmxvbmcJMTQ4NjA2MTU2OAorCS5sb25nCTEwNjY0MTAwNzAKKwkubG9uZwkxMTU1Mzc4NzQKKwkubG9uZwkzMTczMjQzOTk1CisJLmxvbmcJMjc0MzY2NDY0MAorCS5sb25nCTEwNjU4ODY3OTIKKwkubG9uZwkzNjY1MDk4MzA0CisJLmxvbmcJMzE3MzQ3MTYwNworCS5sb25nCTE5NzE5MTI3MDQKKwkubG9uZwkxMDY1MzU3MzMzCisJLmxvbmcJMjU3NzIxNDQ0MAorCS5sb25nCTMxNzE5OTM0NTEKKwkubG9uZwkxNDk4OTM5MzkyCisJLmxvbmcJMTA2NDMwNjY5MworCS5sb25nCTM0MDkwMzY5MjMKKwkubG9uZwkxMDI1NTk5MTUxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCUxfdGJsLEBvYmplY3QKKwkuc2l6ZQlMX3RibCwyMDY0CisJLmFsaWduIDE2Citsb2cyOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDY3ODU1NDI2CisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjIyOTI4MjMKKwkudHlwZQlsb2cyLEBvYmplY3QKKwkuc2l6ZQlsb2cyLDE2CisJLmFsaWduIDE2Citjb2VmZjoKKwkubG9uZwkyNDU0MjY3MDI2CisJLmxvbmcJMTA2OTY5NzMxNgorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTAzMDczMDEwMQorCS5sb25nCTMyMTczODA3MDIKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDcwMTc2NjY1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkudHlwZQljb2VmZixAb2JqZWN0CisJLnNpemUJY29lZmYsNDgKKwkuYWxpZ24gMTYKK2NvZWZmMjoKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDcwMTc2NjY1CisJLmxvbmcJMjQ1NDI2NzAyNgorCS5sb25nCTEwNjk2OTczMTYKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkzMjE3MzgwNjkzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkudHlwZQljb2VmZjIsQG9iamVjdAorCS5zaXplCWNvZWZmMiw0OAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZzFwLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cxcC41LS4uX19fdGFnX3ZhbHVlX2xvZzFwLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZzFwLjMtLi5fX190YWdfdmFsdWVfbG9nMXAuMQorCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZzFwLjQtLi5fX190YWdfdmFsdWVfbG9nMXAuMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc19zaW4uUyBiL2xpYm0veDg2XzY0L3Nfc2luLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmY5M2EzNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3Nfc2luLlMKQEAgLTAsMCArMSwxMzAwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgIDEuIFJBTkdFIFJFRFVDVElPTgorLy8KKy8vICAgICBXZSBwZXJmb3JtIGFuIGluaXRpYWwgcmFuZ2UgcmVkdWN0aW9uIGZyb20gWCB0byByIHdpdGgKKy8vCisvLyAgICAgICAgICBYID1+PSBOICogcGkvMzIgKyByCisvLworLy8gICAgIHNvIHRoYXQgfHJ8IDw9IHBpLzY0ICsgZXBzaWxvbi4gV2UgcmVzdHJpY3QgaW5wdXRzIHRvIHRob3NlCisvLyAgICAgd2hlcmUgfE58IDw9IDkzMjU2MC4gQmV5b25kIHRoaXMsIHRoZSByYW5nZSByZWR1Y3Rpb24gaXMKKy8vICAgICBpbnN1ZmZpY2llbnRseSBhY2N1cmF0ZS4gRm9yIGV4dHJlbWVseSBzbWFsbCBpbnB1dHMsIAorLy8gICAgIGRlbm9ybWFsaXphdGlvbiBjYW4gb2NjdXIgaW50ZXJuYWxseSwgaW1wYWN0aW5nIHBlcmZvcm1hbmNlLgorLy8gICAgIFRoaXMgbWVhbnMgdGhhdCB0aGUgbWFpbiBwYXRoIGlzIGFjdHVhbGx5IG9ubHkgdGFrZW4gZm9yCisvLyAgICAgMl4tMjUyIDw9IHxYfCA8IDkwMTEyLgorLy8KKy8vICAgICBUbyBhdm9pZCBicmFuY2hlcywgd2UgcGVyZm9ybSB0aGUgcmFuZ2UgcmVkdWN0aW9uIHRvIGZ1bGwKKy8vICAgICBhY2N1cmFjeSBlYWNoIHRpbWUuCisvLworLy8gICAgICAgICAgWCAtIE4gKiAoUF8xICsgUF8yICsgUF8zKQorLy8KKy8vICAgICB3aGVyZSBQXzEgYW5kIFBfMiBhcmUgMzItYml0IG51bWJlcnMgKHNvIG11bHRpcGxpY2F0aW9uIGJ5IE4KKy8vICAgICBpcyBleGFjdCkgYW5kIFBfMyBpcyBhIDUzLWJpdCBudW1iZXIuIFRvZ2V0aGVyLCB0aGVzZQorLy8gICAgIGFwcHJveGltYXRlIHBpIHdlbGwgZW5vdWdoIGZvciBhbGwgY2FzZXMgaW4gdGhlIHJlc3RyaWN0ZWQKKy8vICAgICByYW5nZS4KKy8vCisvLyAgICAgVGhlIG1haW4gcmVkdWN0aW9uIHNlcXVlbmNlIGlzOgorLy8KKy8vICAgICAgICAgICAgIHkgPSAzMi9waSAqIHgKKy8vICAgICAgICAgICAgIE4gPSBpbnRlZ2VyKHkpCisvLyAgICAgKGNvbXB1dGVkIGJ5IGFkZGluZyBhbmQgc3VidHJhY3Rpbmcgb2ZmIFNISUZURVIpCisvLworLy8gICAgICAgICAgICAgbV8xID0gTiAqIFBfMQorLy8gICAgICAgICAgICAgbV8yID0gTiAqIFBfMgorLy8gICAgICAgICAgICAgcl8xID0geCAtIG1fMQorLy8gICAgICAgICAgICAgciA9IHJfMSAtIG1fMgorLy8gICAgICh0aGlzIHIgY2FuIGJlIHVzZWQgZm9yIG1vc3Qgb2YgdGhlIGNhbGN1bGF0aW9uKQorLy8KKy8vICAgICAgICAgICAgIGNfMSA9IHJfMSAtIHIKKy8vICAgICAgICAgICAgIG1fMyA9IE4gKiBQXzMKKy8vICAgICAgICAgICAgIGNfMiA9IGNfMSAtIG1fMgorLy8gICAgICAgICAgICAgYyA9IGNfMiAtIG1fMworLy8KKy8vICAgICAyLiBNQUlOIEFMR09SSVRITQorLy8KKy8vICAgICBUaGUgYWxnb3JpdGhtIHVzZXMgYSB0YWJsZSBsb29rdXAgYmFzZWQgb24gQiA9IE0gKiBwaSAvIDMyCisvLyAgICAgd2hlcmUgTSA9IE4gbW9kIDY0LiBUaGUgc3RvcmVkIHZhbHVlcyBhcmU6CisvLyAgICAgICBzaWdtYSAgICAgICAgICAgICBjbG9zZXN0IHBvd2VyIG9mIDIgdG8gY29zKEIpCisvLyAgICAgICBDX2hsICAgICAgICAgICAgICA1My1iaXQgY29zKEIpIC0gc2lnbWEKKy8vICAgICAgIFNfaGkgKyBTX2xvICAgICAgIDIgKiA1My1iaXQgc2luKEIpCisvLworLy8gICAgIFRoZSBjb21wdXRhdGlvbiBpcyBvcmdhbml6ZWQgYXMgZm9sbG93czoKKy8vCisvLyAgICAgICAgICBzaW4oQiArIHIgKyBjKSA9IFtzaW4oQikgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgciAqIChjb3MoQikgLSBzaWdtYSkgKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBzaW4oQikgKiBbY29zKHIgKyBjKSAtIDFdICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgY29zKEIpICogW3NpbihyICsgYykgLSByXQorLy8KKy8vICAgICB3aGljaCBpcyBhcHByb3hpbWF0ZWx5OgorLy8KKy8vICAgICAgICAgIFtTX2hpICsgc2lnbWEgKiByXSArCisvLyAgICAgICAgICBDX2hsICogciArCisvLyAgICAgICAgICBTX2xvICsgU19oaSAqIFsoY29zKHIpIC0gMSkgLSByICogY10gKworLy8gICAgICAgICAgKENfaGwgKyBzaWdtYSkgKiBbKHNpbihyKSAtIHIpICsgY10KKy8vCisvLyAgICAgYW5kIHRoaXMgaXMgd2hhdCBpcyBhY3R1YWxseSBjb21wdXRlZC4gV2Ugc2VwYXJhdGUgdGhpcyBzdW0KKy8vICAgICBpbnRvIGZvdXIgcGFydHM6CisvLworLy8gICAgICAgICAgaGkgKyBtZWQgKyBwb2xzICsgY29ycgorLy8KKy8vICAgICB3aGVyZQorLy8KKy8vICAgICAgICAgIGhpICAgICAgID0gU19oaSArIHNpZ21hIHIKKy8vICAgICAgICAgIG1lZCAgICAgID0gQ19obCAqIHIKKy8vICAgICAgICAgIHBvbHMgICAgID0gU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICogKHNpbihyKSAtIHIpCisvLyAgICAgICAgICBjb3JyICAgICA9IFNfbG8gKyBjICogKChDX2hsICsgc2lnbWEpIC0gU19oaSAqIHIpCisvLworLy8gICAgIDMuIFBPTFlOT01JQUwKKy8vCisvLyAgICAgVGhlIHBvbHlub21pYWwgU19oaSAqIChjb3MocikgLSAxKSArIChDX2hsICsgc2lnbWEpICoKKy8vICAgICAoc2luKHIpIC0gcikgY2FuIGJlIHJlYXJyYW5nZWQgZnJlZWx5LCBzaW5jZSBpdCBpcyBxdWl0ZQorLy8gICAgIHNtYWxsLCBzbyB3ZSBleHBsb2l0IHBhcmFsbGVsaXNtIHRvIHRoZSBmdWxsZXN0LgorLy8KKy8vICAgICAgICAgIHBzYzQgICAgICAgPSAgIFNDXzQgKiByXzEKKy8vICAgICAgICAgIG1zYzQgICAgICAgPSAgIHBzYzQgKiByCisvLyAgICAgICAgICByMiAgICAgICAgID0gICByICogcgorLy8gICAgICAgICAgbXNjMiAgICAgICA9ICAgU0NfMiAqIHIyCisvLyAgICAgICAgICByNCAgICAgICAgID0gICByMiAqIHIyCisvLyAgICAgICAgICBwc2MzICAgICAgID0gICBTQ18zICsgbXNjNAorLy8gICAgICAgICAgcHNjMSAgICAgICA9ICAgU0NfMSArIG1zYzIKKy8vICAgICAgICAgIG1zYzMgICAgICAgPSAgIHI0ICogcHNjMworLy8gICAgICAgICAgc2luY29zcG9scyA9ICAgcHNjMSArIG1zYzMKKy8vICAgICAgICAgIHBvbHMgICAgICAgPSAgIHNpbmNvc3BvbHMgKgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgPFNfaGkgKiByXjIgfCAoQ19obCArIHNpZ21hKSAqIHJeMz4KKy8vCisvLyAgICAgNC4gQ09SUkVDVElPTiBURVJNCisvLworLy8gICAgIFRoaXMgaXMgd2hlcmUgdGhlICJjIiBjb21wb25lbnQgb2YgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIHRha2VuIGludG8gYWNjb3VudDsgcmVjYWxsIHRoYXQganVzdCAiciIgaXMgdXNlZCBmb3IgbW9zdCBvZgorLy8gICAgIHRoZSBjYWxjdWxhdGlvbi4KKy8vCisvLyAgICAgICAgICAtYyAgID0gbV8zIC0gY18yCisvLyAgICAgICAgICAtZCAgID0gU19oaSAqIHIgLSAoQ19obCArIHNpZ21hKQorLy8gICAgICAgICAgY29yciA9IC1jICogLWQgKyBTX2xvCisvLworLy8gICAgIDUuIENPTVBFTlNBVEVEIFNVTU1BVElPTlMKKy8vCisvLyAgICAgVGhlIHR3byBzdWNjZXNzaXZlIGNvbXBlbnNhdGVkIHN1bW1hdGlvbnMgYWRkIHVwIHRoZSBoaWdoCisvLyAgICAgYW5kIG1lZGl1bSBwYXJ0cywgbGVhdmluZyBqdXN0IHRoZSBsb3cgcGFydHMgdG8gYWRkIHVwIGF0CisvLyAgICAgdGhlIGVuZC4KKy8vCisvLyAgICAgICAgICBycyAgICAgICAgPSAgc2lnbWEgKiByCisvLyAgICAgICAgICByZXNfaW50ICAgPSAgU19oaSArIHJzCisvLyAgICAgICAgICBrXzAgICAgICAgPSAgU19oaSAtIHJlc19pbnQKKy8vICAgICAgICAgIGtfMiAgICAgICA9ICBrXzAgKyBycworLy8gICAgICAgICAgbWVkICAgICAgID0gIENfaGwgKiByCisvLyAgICAgICAgICByZXNfaGkgICAgPSAgcmVzX2ludCArIG1lZAorLy8gICAgICAgICAga18xICAgICAgID0gIHJlc19pbnQgLSByZXNfaGkKKy8vICAgICAgICAgIGtfMyAgICAgICA9ICBrXzEgKyBtZWQKKy8vCisvLyAgICAgNi4gRklOQUwgU1VNTUFUSU9OCisvLworLy8gICAgIFdlIG5vdyBhZGQgdXAgYWxsIHRoZSBzbWFsbCBwYXJ0czoKKy8vCisvLyAgICAgICAgICByZXNfbG8gPSBwb2xzKGhpKSArIHBvbHMobG8pICsgY29yciArIGtfMSArIGtfMworLy8KKy8vICAgICBOb3cgdGhlIG92ZXJhbGwgcmVzdWx0IGlzIGp1c3Q6CisvLworLy8gICAgICAgICAgcmVzX2hpICsgcmVzX2xvCisvLworLy8gICAgIDcuIFNNQUxMIEFSR1VNRU5UUworLy8KKy8vICAgICBJZiB8eHwgPCBTTk4gKFNOTiBtZWFuaW5nIHRoZSBzbWFsbGVzdCBub3JtYWwgbnVtYmVyKSwgd2UKKy8vICAgICBzaW1wbHkgcGVyZm9ybSAwLjExMTExMTEgY2RvdHMgMTExMSAqIHguIEZvciBTTk4gPD0gfHh8LCB3ZQorLy8gICAgIGRvIDJeLTU1ICogKDJeNTUgKiB4IC0geCkuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBzaW4oTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luKElORikgPSBOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHNpbgorRU5UUlkoc2luKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX3Npbi4xOgorICAgICAgICBwdXNocSAgICAgJXJieAorLi5fX190YWdfdmFsdWVfc2luLjM6CisgICAgICAgIHN1YnEgICAgICAkMTYsICVyc3AKKy4uX19fdGFnX3ZhbHVlX3Npbi41OgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92bCAgICAgIDEyKCVyc3ApLCAlZWF4CisgICAgICAgIG1vdnEgICAgICBQSTMySU5WKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgU0hJRlRFUiglcmlwKSwgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDE4MTEyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkODA4NDUyMDk2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjgxMzQ2MDQ4LCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBPTkVIQUxGKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgU0lHTl9NQVNLKCVyaXApLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG9ycHMgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBjdnR0c2Qyc2kgJXhtbTEsICVlZHgKKyAgICAgICAgY3Z0c2kyc2QgICVlZHgsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBQXzIoJXJpcCksICV4bW02CisgICAgICAgIG1vdnEgICAgICAkMHgzZmI5MjFmYjU0NDAwMDAwLCAlcjgKKyAgICAgICAgbW92ZCAgICAgICVyOCwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIFNDXzQoJXJpcCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG1vdmRkdXAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQ2MywgJWVkeAorICAgICAgICBzaGxsICAgICAgJDUsICVlZHgKKyAgICAgICAgbGVhICAgICAgIEN0YWJsZSglcmlwKSwgJXJheAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXJheAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICBQXzMoJXJpcCksICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIDgoJXJheCksICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92ZGR1cCAgICV4bW00LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgKCVyYXgpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICBTQ18yKCVyaXApLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAyNCglcmF4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgU0NfMyglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgIFNDXzEoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCglcmF4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAxNiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8wLjAuMToKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4xCisgICAgICAgIHNocmwgICAgICAkMjAsICVlYXgKKyAgICAgICAgY21wdyAgICAgICQzMzI1LCAlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisgICAgICAgIG11bHNkICAgICBBTExfT05FUyglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMi4wLjE6CisgICAgICAgIG1vdnEgICAgICBUV09fUE9XXzU1KCVyaXApLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgIFRXT19QT1dfTTU1KCVyaXApLCAleG1tMworICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8xLjAuMToKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MjI0LCAlZWN4CisgICAgICAgIHNocmwgICAgICAkNywgJWVjeAorICAgICAgICBhbmRsICAgICAgJDY1NTMyLCAlZWN4CisgICAgICAgIGxlYSAgICAgICBQSV9JTlZfVEFCTEUoJXJpcCksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlcmF4CisgICAgICAgIG1vdmwgICAgICAyMCglcmN4KSwgJXIxMGQKKyAgICAgICAgbW92bCAgICAgIDI0KCVyY3gpLCAlcjhkCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNocnEgICAgICAkMjEsICVyYXgKKyAgICAgICAgb3JsICAgICAgICQtMjE0NzQ4MzY0OCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDExLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJXI5ZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXIxMAorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjgKKyAgICAgICAgbW92bCAgICAgIDE2KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAxMiglcmN4KSwgJWVkaQorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVyMTFkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyOQorICAgICAgICBhZGRxICAgICAgJXI4LCAlcjExCisgICAgICAgIG1vdmwgICAgICAlcjExZCwgJXI4ZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcjkKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVyMTBkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcnNpCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjEwCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlcjExZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcnNpCisgICAgICAgIGFkZHEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcnNpLCAlcjEwCisgICAgICAgIGFkZHEgICAgICAlcjksICVyMTAKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXJieAorICAgICAgICBvcnEgICAgICAgJXJieCwgJXI4CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjExCisgICAgICAgIG1vdmwgICAgICA4KCVyY3gpLCAlcjlkCisgICAgICAgIG1vdmwgICAgICA0KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyZGksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92cSAgICAgICVyOSwgJXJkaQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlcjlkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92bCAgICAgICVyMTFkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjksICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyZGkKKyAgICAgICAgbW92cSAgICAgICVyc2ksICVyOQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJzaQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyMTAKKyAgICAgICAgb3JxICAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICglcmN4KSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJzaQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXJzaSwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcmRpLCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyZHgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVieAorICAgICAgICBsZWEgICAgICAgUElfSU5WX1RBQkxFKCVyaXApLCAlcmRpCisgICAgICAgIHN1YnEgICAgICAlcmRpLCAlcmN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTksICVlY3gKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVzaQorICAgICAgICBhbmRsICAgICAgJWVieCwgJWVzaQorICAgICAgICBzaHJsICAgICAgJDQsICVlYngKKyAgICAgICAgYW5kbCAgICAgICQyMDQ3LCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAkMTAyMywgJWVieAorICAgICAgICBzdWJsICAgICAgJWVieCwgJWVjeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXI5CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMzIsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDI5LCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlZGkKKyAgICAgICAgYW5kbCAgICAgICQ1MzY4NzA5MTEsICVyOWQKKyAgICAgICAgdGVzdGwgICAgICQyNjg0MzU0NTYsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKy5MXzJUQUdfUEFDS0VUXzcuMC4xOgorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjEKKy5MXzJUQUdfUEFDS0VUXzkuMC4xOgorICAgICAgICBic3IgICAgICAgJXI5LCAlcjExCisgICAgICAgIG1vdmwgICAgICAkMjksICVlY3gKKyAgICAgICAgc3VibCAgICAgICVyMTFkLCAlZWN4CisgICAgICAgIGpsZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjEKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjEwLCAlcmF4CisgICAgICAgIHNobHEgICAgICAlY2wsICVyMTAKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVjeAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcmF4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyOAorICAgICAgICBvcnEgICAgICAgJXJheCwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjgsICVyMTAKKy5MXzJUQUdfUEFDS0VUXzExLjAuMToKKyAgICAgICAgY3Z0c2kyc2RxICVyOSwgJXhtbTAKKyAgICAgICAgc2hycSAgICAgICQxLCAlcjEwCisgICAgICAgIGN2dHNpMnNkcSAlcjEwLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIHNobGwgICAgICAkNCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVkeAorICAgICAgICBhZGRsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZXNpLCAlZWR4CisgICAgICAgIHhvcmwgICAgICAlZWJ4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIFBJXzQoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4K1BJXzQoJXJpcCksICV4bW02CisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3VibCAgICAgICQxMDA4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzaGxsICAgICAgJDE2LCAlZXNpCisgICAgICAgIHNhcmwgICAgICAkMzEsICVlc2kKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQyOSwgJWVkaQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICVlc2ksICVlZGkKKyAgICAgICAgeG9ybCAgICAgICVlc2ksICVlZGkKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJWVheAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTYKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMToKKyAgICAgICAgbW92cSAgICAgIFBJMzJJTlYoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIE9ORUhBTEYoJXJpcCksICV4bW01CisgICAgICAgIG1vdnEgICAgICBTSUdOX01BU0soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJWVkeAorICAgICAgICBjdnRzaTJzZCAgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIFBfMSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIHNobGwgICAgICAkMywgJWVheAorICAgICAgICBhZGRsICAgICAgJDE4NjUyMTYsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDYzLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICBTQ180KCVyaXApLCAleG1tNQorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIHNobGwgICAgICAkNSwgJWVkeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXJheAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgKCVyYXgpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAyNCglcmF4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFNDXzIoJXJpcCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgU0NfMyglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgIFNDXzEoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCglcmF4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAxNiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF84LjAuMToKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjgKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4xCisgICAgICAgIGFkZGwgICAgICAkNjQsICVlZHgKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI4LCAlcjEwCisgICAgICAgIGNtcHEgICAgICAkMCwgJXI5CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMQorLkxfMlRBR19QQUNLRVRfMTAuMC4xOgorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4xCisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyMTAKKyAgICAgICAgbW92cSAgICAgICVyOSwgJXJheAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcjkKKyAgICAgICAgc3VibCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVjeAorICAgICAgICBzaGxxICAgICAgJWNsLCAlcmF4CisgICAgICAgIG9ycSAgICAgICAlcmF4LCAlcjEwCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjEKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyMTEsICVyOQorICAgICAgICBzaGxxICAgICAgJWNsLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyOSwgJXJkaQorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlcjlkCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMy4wLjEKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJDAsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzLCAlcmRpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMQorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQ1MzY4NzA5MTIsICVlYngKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVieAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyMTEsICVyOQorICAgICAgICBzaGxxICAgICAgJDMyLCAlcmJ4CisgICAgICAgIGFkZGwgICAgICAkNTM2ODcwOTEyLCAlZWRpCisgICAgICAgIG1vdnEgICAgICAkMCwgJXJjeAorICAgICAgICBtb3ZxICAgICAgJDAsICVyMTEKKyAgICAgICAgc3VicSAgICAgICVyOCwgJXJjeAorICAgICAgICBzYmJxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBzYmJxICAgICAgJXI5LCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAlcmN4LCAlcjgKKyAgICAgICAgbW92cSAgICAgICVyMTEsICVyMTAKKyAgICAgICAgbW92cSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWJ4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorLkxfMlRBR19QQUNLRVRfMTMuMC4xOgorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdnEgICAgICAkMHgxMDAwMDAwMDAsICVyYngKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXJieAorICAgICAgICBtb3ZxICAgICAgJDAsICVyY3gKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjExCisgICAgICAgIHN1YnEgICAgICAlcjgsICVyY3gKKyAgICAgICAgc2JicSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgc2JicSAgICAgICVyOSwgJXJieAorICAgICAgICBtb3ZxICAgICAgJXJjeCwgJXI4CisgICAgICAgIG1vdnEgICAgICAlcjExLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMsICVyZGkKKyAgICAgICAgYWRkbCAgICAgICQ1MzY4NzA5MTIsICVlZGkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICBORUdfWkVSTyglcmlwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMToKKy4uQjEuNDoKKyAgICAgICAgYWRkcSAgICAgICQxNiwgJXJzcAorLi5fX190YWdfdmFsdWVfc2luLjY6CisgICAgICAgIHBvcHEgICAgICAlcmJ4CisuLl9fX3RhZ192YWx1ZV9zaW4uODoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfc2luLjk6CitFTkQoc2luKQorIyAtLSBFbmQgIHNpbgorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorT05FSEFMRjoKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLnR5cGUJT05FSEFMRixAb2JqZWN0CisJLnNpemUJT05FSEFMRiwxNgorCS5hbGlnbiAxNgorUF8yOgorCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzI4OTM1MzcKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLnR5cGUJUF8yLEBvYmplY3QKKwkuc2l6ZQlQXzIsMTYKKwkuYWxpZ24gMTYKK1NDXzQ6CisJLmxvbmcJMjc3MzkyNzczMgorCS5sb25nCTEwNTMyMzY3MDcKKwkubG9uZwk0MzYzMTQxMzgKKwkubG9uZwkxMDU2NTcxODA4CisJLnR5cGUJU0NfNCxAb2JqZWN0CisJLnNpemUJU0NfNCwxNgorCS5hbGlnbiAxNgorQ3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkzMjE1MzMwMjgyCisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMTA3MDc2NTA2MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkzMTYxODM4MjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMzIxNjIxMTEwNQorCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkxMDcxMTUyNjEwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjA4NzgzMTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcwMjM2MjgxCisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMzIxNTcyNzkwMworCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkxMDcyNjUyOTUxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDMyNTc4MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkzMjE3MTA5OTY0CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTEwNzIyMTcyMTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYyNjg2OTQ1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTEwNzA0MDMwNzAKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkxMDcxOTI2NTE1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMzQ1MDYwMgorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTEwNjk5MTI2NzkKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkxMDcxNzYxMjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc1MjE1NworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTEwNjk0MzE0MDAKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkxMDcxNTI0NzAxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMjc5NjgwOQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkxMDY2NjQyNjk0CisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTEwNzAxMzU0ODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMzE2MDU2NzA2NQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkxMDY3ODQ2NjM0CisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMzIxODI0ODcxMAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDE0MzU0NTczCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMTA2ODcyNzQ1NworCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkzMjE4NjM2MjU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTMzOTQ2NjkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkzMjE3NzE5OTI5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTMyMTk1NjI2NTQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1Nzk5MDkyCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMTA2ODI0NDI1NQorCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkzMjIwMTM2NTk5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTgwOTQzMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkxMDY5NjI2MzE2CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTMyMTk3MDA4NjQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1MjAzMjk3CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTMyMTc4ODY3MTgKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkzMjE5NDEwMTYzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDkzNDI1MAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTMyMTczOTYzMjcKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkzMjE5MjQ0ODU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzIzNTgwNQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTMyMTY5MTUwNDgKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkzMjE5MDA4MzQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDI4MDQ1NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkzMjE0MTI2MzQyCisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTMyMTc2MTkxMjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTAxMzA4MzQxNworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCUN0YWJsZSxAb2JqZWN0CisJLnNpemUJQ3RhYmxlLDIwNDgKKwkuYWxpZ24gMTYKK1NDXzI6CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLnR5cGUJU0NfMixAb2JqZWN0CisJLnNpemUJU0NfMiwxNgorCS5hbGlnbiAxNgorU0NfMzoKKwkubG9uZwk0MzYzMTQxMzgKKwkubG9uZwkzMjA3MjAxMTg0CisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMzIxMDEzMzg2OAorCS50eXBlCVNDXzMsQG9iamVjdAorCS5zaXplCVNDXzMsMTYKKwkuYWxpZ24gMTYKK1NDXzE6CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTczODA2OTMKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS50eXBlCVNDXzEsQG9iamVjdAorCS5zaXplCVNDXzEsMTYKKwkuYWxpZ24gMTYKK1BJX0lOVl9UQUJMRToKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3MzQyNjExMDIKKwkubG9uZwkxMzEzMDg0NzEzCisJLmxvbmcJNDIzMDQzNjgxNworCS5sb25nCTQxMTM4ODI1NjAKKwkubG9uZwkzNjgwNjcxMTI5CisJLmxvbmcJMTAxMTA2MDgwMQorCS5sb25nCTQyNjY3NDY3OTUKKwkubG9uZwkzNzM2ODQ3NzEzCisJLmxvbmcJMzA3MjYxODA0MgorCS5sb25nCTExMTIzOTY1MTIKKwkubG9uZwkxMDU0NTk0MzQKKwkubG9uZwkxNjQ3MjkzNzIKKwkubG9uZwk0MjYzMzczNTk2CisJLmxvbmcJMjk3MjI5NzAyMgorCS5sb25nCTM5MDA4NDc2MDUKKwkubG9uZwk3ODQwMjQ3MDgKKwkubG9uZwkzOTE5MzQzNjU0CisJLmxvbmcJMzAyNjE1NzEyMQorCS5sb25nCTk2NTg1ODg3MworCS5sb25nCTIyMDMyNjk2MjAKKwkubG9uZwkyNjI1OTIwOTA3CisJLmxvbmcJMzE4NzIyMjU4NworCS5sb25nCTUzNjM4NTUzNQorCS5sb25nCTM3MjQ5MDg1NTkKKwkubG9uZwk0MDEyODM5MzA3CisJLmxvbmcJMTUxMDYzMjczNQorCS5sb25nCTE4MzIyODc5NTEKKwkubG9uZwk2Njc2MTc3MTkKKwkubG9uZwkxMzMwMDAzODE0CisJLmxvbmcJMjY1NzA4NTk5NworCS5sb25nCTE5NjU1Mzc5OTEKKwkubG9uZwkzOTU3NzE1MzIzCisJLmxvbmcJMTAyMzg4Mzc2NworCS5sb25nCTIzMjA2NjczNzAKKwkubG9uZwkxODExNjM2MTQ1CisJLmxvbmcJNTI5MzU4MDg4CisJLmxvbmcJMTQ0MzA0OTU0MgorCS5sb25nCTQyMzU5NDY5MjMKKwkubG9uZwk0MDQwMTQ1OTUzCisJLnR5cGUJUElfSU5WX1RBQkxFLEBvYmplY3QKKwkuc2l6ZQlQSV9JTlZfVEFCTEUsMTY0CisJLnNwYWNlIDEyLCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorUElfNDoKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTQwNzI3OTc2OQorCS5sb25nCTEwNDY3NTg0NDUKKwkudHlwZQlQSV80LEBvYmplY3QKKwkuc2l6ZQlQSV80LDE2CisJLmFsaWduIDgKK1BJMzJJTlY6CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzYxMjU0ODgKKwkudHlwZQlQSTMySU5WLEBvYmplY3QKKwkuc2l6ZQlQSTMySU5WLDgKKwkuYWxpZ24gOAorU0hJRlRFUjoKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS50eXBlCVNISUZURVIsQG9iamVjdAorCS5zaXplCVNISUZURVIsOAorCS5hbGlnbiA4CitTSUdOX01BU0s6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkudHlwZQlTSUdOX01BU0ssQG9iamVjdAorCS5zaXplCVNJR05fTUFTSyw4CisJLmFsaWduIDgKK1BfMzoKKwkubG9uZwk3NzE5NzczMzEKKwkubG9uZwk5OTYzNTAzNDYKKwkudHlwZQlQXzMsQG9iamVjdAorCS5zaXplCVBfMyw4CisJLmFsaWduIDgKK0FMTF9PTkVTOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkxMDcyNjkzMjQ3CisJLnR5cGUJQUxMX09ORVMsQG9iamVjdAorCS5zaXplCUFMTF9PTkVTLDgKKwkuYWxpZ24gOAorVFdPX1BPV181NToKKwkubG9uZwkwCisJLmxvbmcJMTEzMDM2NDkyOAorCS50eXBlCVRXT19QT1dfNTUsQG9iamVjdAorCS5zaXplCVRXT19QT1dfNTUsOAorCS5hbGlnbiA4CitUV09fUE9XX001NToKKwkubG9uZwkwCisJLmxvbmcJMTAxNTAyMTU2OAorCS50eXBlCVRXT19QT1dfTTU1LEBvYmplY3QKKwkuc2l6ZQlUV09fUE9XX001NSw4CisJLmFsaWduIDgKK1BfMToKKwkubG9uZwkxNDEzNDgwNDQ4CisJLmxvbmcJMTA2OTA5NzQ2NworCS50eXBlCVBfMSxAb2JqZWN0CisJLnNpemUJUF8xLDgKKwkuYWxpZ24gOAorTkVHX1pFUk86CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkudHlwZQlORUdfWkVSTyxAb2JqZWN0CisJLnNpemUJTkVHX1pFUk8sOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAyYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Npbi4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luLjktLi5fX190YWdfdmFsdWVfc2luLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Npbi4zLS4uX19fdGFnX3ZhbHVlX3Npbi4xCisJLjRieXRlIDB4MDI4MzEwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Npbi41LS4uX19fdGFnX3ZhbHVlX3Npbi4zCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luLjYtLi5fX190YWdfdmFsdWVfc2luLjUKKwkuNGJ5dGUgMHgwNGMzMTAwZQorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW4uOC0uLl9fX3RhZ192YWx1ZV9zaW4uNgorCS4yYnl0ZSAweDA4MGUKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zX3Rhbi5TIGIvbGlibS94ODZfNjQvc190YW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NGNiMDQ0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc190YW4uUwpAQCAtMCwwICsxLDIyMzkgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBQb2x5bm9taWFscyBjb2VmZmljaWVudHMgYW5kIG90aGVyIGNvbnN0YW50cy4KKy8vCisvLyBOb3RlIHRoYXQgaW4gdGhpcyBhbGdvcml0aG0sIHRoZXJlIGlzIGEgZGlmZmVyZW50IHBvbHlub21pYWwgZm9yCisvLyBlYWNoIGJyZWFrcG9pbnQsIHNvIHRoZXJlIGFyZSAzMiBzZXRzIG9mIHBvbHlub21pYWwgY29lZmZpY2llbnRzCisvLyBhcyB3ZWxsIGFzIDMyIGluc3RhbmNlcyBvZiB0aGUgb3RoZXIgY29uc3RhbnRzLgorLy8KKy8vIFRoZSBwb2x5bm9taWFsIGNvZWZmaWNpZW50cyBhbmQgY29uc3RhbnRzIGFyZSBvZmZzZXQgZnJvbSB0aGUgc3RhcnQKKy8vIG9mIHRoZSBtYWluIGJsb2NrIGFzIGZvbGxvd3M6CisvLworLy8gICAwOiAgYzggfCBjMAorLy8gIDE2OiAgYzkgfCBjMQorLy8gIDMyOiBjMTAgfCBjMgorLy8gIDQ4OiBjMTEgfCBjMworLy8gIDY0OiBjMTIgfCBjNAorLy8gIDgwOiBjMTMgfCBjNQorLy8gIDk2OiBjMTQgfCBjNgorLy8gMTEyOiBjMTUgfCBjNworLy8gMTI4OiBUX2hpCisvLyAxMzY6IFRfbG8KKy8vIDE0NDogU2lnbWEKKy8vIDE1MjogVF9obAorLy8gMTYwOiBUYXUKKy8vIDE2ODogTWFzaworLy8gMTc2OiAoZW5kIG9mIGJsb2NrKQorLy8KKy8vIFRoZSB0b3RhbCB0YWJsZSBzaXplIGlzIHRoZXJlZm9yZSA1NjMyIGJ5dGVzLgorLy8KKy8vIE5vdGUgdGhhdCBjMCBhbmQgYzEgYXJlIGFsd2F5cyB6ZXJvLiBXZSBjb3VsZCB0cnkgc3RvcmluZworLy8gb3RoZXIgY29uc3RhbnRzIGhlcmUsIGFuZCBqdXN0IGxvYWRpbmcgdGhlIGxvdyBwYXJ0IG9mIHRoZQorLy8gU0lNRCByZWdpc3RlciBpbiB0aGVzZSBjYXNlcywgYWZ0ZXIgZW5zdXJpbmcgdGhlIGhpZ2ggcGFydAorLy8gaXMgemVyby4KKy8vCisvLyBUaGUgaGlnaGVyIHRlcm1zIG9mIHRoZSBwb2x5bm9taWFsIGFyZSBjb21wdXRlZCBpbiB0aGUgKmxvdyoKKy8vIHBhcnQgb2YgdGhlIFNJTUQgcmVnaXN0ZXIuIFRoaXMgaXMgc28gd2UgY2FuIG92ZXJsYXAgdGhlCisvLyBtdWx0aXBsaWNhdGlvbiBieSByXjggYW5kIHRoZSB1bnBhY2tpbmcgb2YgdGhlIG90aGVyIHBhcnQuCisvLworLy8gVGhlIGNvbnN0YW50cyBhcmU6CisvLyBUX2hpICsgVF9sbyA9IGFjY3VyYXRlIGNvbnN0YW50IHRlcm0gaW4gcG93ZXIgc2VyaWVzCisvLyBTaWdtYSArIFRfaGwgPSBhY2N1cmF0ZSBjb2VmZmljaWVudCBvZiByIGluIHBvd2VyIHNlcmllcyAoU2lnbWE9MSBiaXQpCisvLyBUYXUgPSBtdWx0aXBsaWVyIGZvciB0aGUgcmVjaXByb2NhbCwgYWx3YXlzIC0xIG9yIDAKKy8vCisvLyBUaGUgYmFzaWMgcmVjb25zdHJ1Y3Rpb24gZm9ybXVsYSB1c2luZyB0aGVzZSBjb25zdGFudHMgaXM6CisvLworLy8gSGlnaCA9IHRhdSAqIHJlY2lwX2hpICsgdF9oaQorLy8gTWVkID0gKHNnbiAqIHIgKyB0X2hsICogcilfaGkKKy8vIExvdyA9IChzZ24gKiByICsgdF9obCAqIHIpX2xvICsKKy8vICAgICAgIHRhdSAqIHJlY2lwX2xvICsgVF9sbyArIChUX2hsICsgc2lnbWEpICogYyArIHBvbAorLy8KKy8vIHdoZXJlIHBvbCA9IGMwICsgYzEgKiByICsgYzIgKiByXjIgKyAuLi4gKyBjMTUgKiByXjE1CisvLworLy8gKGMwID0gYzEgPSAwLCBidXQgdXNpbmcgdGhlbSBrZWVwcyBTSU1EIHJlZ3VsYXJpdHkpCisvLworLy8gV2UgdGhlbiBkbyBhIGNvbXBlbnNhdGVkIHN1bSBIaWdoICsgTWVkLCBhZGQgdGhlIGxvdyBwYXJ0cyB0b2dldGhlcgorLy8gYW5kIHRoZW4gZG8gdGhlIGZpbmFsIHN1bS4KKy8vCisvLyBIZXJlIHJlY2lwX2hpICsgcmVjaXBfbG8gaXMgYW4gYWNjdXJhdGUgcmVjaXByb2NhbCBvZiB0aGUgcmVtYWluZGVyCisvLyBtb2R1bG8gcGkvMgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgdGFuKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHRhbihJTkYpID0gTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHRhbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICB0YW4KK0VOVFJZKHRhbikKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV90YW4uMToKKyAgICAgICAgcHVzaHEgICAgICVyYngKKy4uX19fdGFnX3ZhbHVlX3Rhbi4zOgorICAgICAgICBzdWJxICAgICAgJDE2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV90YW4uNToKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzE0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjcwLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMQorICAgICAgICBtb3ZhcGQgICAgT05FSEFMRiglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIE1VTDE2KCVyaXApLCAleG1tNgorICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBzaWduX21hc2soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIFBJMzJJTlYoJXJpcCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBjdnR0c2Qyc2kgJXhtbTcsICVlZHgKKyAgICAgICAgY3Z0dHBkMmRxICV4bW0xLCAleG1tMQorICAgICAgICBjdnRkcTJwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFBfMSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgIFFRXzIoJXJpcCksICV4bW01CisgICAgICAgIGFkZHEgICAgICAkNDY5MjQ4LCAlcmR4CisgICAgICAgIG1vdmFwZCAgICBQXzIoJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYW5kcSAgICAgICQzMSwgJXJkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG1vdnEgICAgICAlcmR4LCAlcmN4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2hscSAgICAgICQxLCAlcmN4CisgICAgICAgIHN1YnBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgYWRkcSAgICAgICVyY3gsICVyZHgKKyAgICAgICAgc2hscSAgICAgICQyLCAlcmN4CisgICAgICAgIGFkZHEgICAgICAlcmN4LCAlcmR4CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMgorICAgICAgICBzdWJwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBPTkUoJXJpcCksICV4bW02CisgICAgICAgIHNobHEgICAgICAkNCwgJXJkeAorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIGFuZHBkICAgICBNQVNLXzM1KCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIHN1YnBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgdW5wY2tocGQgICV4bW0wLCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIHN1YnBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDE2KCVyYXgpLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNDgoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDk2KCVyYXgpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAoJXJheCksICV4bW03CisgICAgICAgIGFkZHBkICAgICAzMiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgODAoJXJheCksICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDExMiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIDY0KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIDE0NCglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHVucGNraHBkICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICB1bnBja2hwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIDE0NCglcmF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tocGQgICV4bW0yLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgMTUyKCVyYXgpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIGFkZHNkICAgICAxMzYoJXJheCksICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgT05FKCVyaXApLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIG1vdnEgICAgICAxNjgoJXJheCksICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgMTYwKCVyYXgpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIHN1YnNkICAgICAxMjgoJXJheCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTU5MDQsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZxICAgICAgUV8xMSglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIFFfOSglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgUV83KCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIGFkZHNkICAgICBRXzUoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIFFfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzMuMC4xOgorICAgICAgICBtb3ZxICAgICAgVFdPX1BPV181NSglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG11bHNkICAgICBUV09fUE9XX001NSglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMi4wLjE6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8xLjAuMToKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MjI0LCAlZWN4CisgICAgICAgIHNocmwgICAgICAkNywgJWVjeAorICAgICAgICBhbmRsICAgICAgJDY1NTMyLCAlZWN4CisgICAgICAgIGxlYSAgICAgICBQSV9JTlZfVEFCTEUoJXJpcCksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlcmF4CisgICAgICAgIG1vdmwgICAgICAyMCglcmN4KSwgJXIxMGQKKyAgICAgICAgbW92bCAgICAgIDI0KCVyY3gpLCAlcjhkCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNocnEgICAgICAkMjEsICVyYXgKKyAgICAgICAgb3JsICAgICAgICQtMjE0NzQ4MzY0OCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDExLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJXI5ZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXIxMAorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjgKKyAgICAgICAgbW92bCAgICAgIDE2KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAxMiglcmN4KSwgJWVkaQorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVyMTFkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyOQorICAgICAgICBhZGRxICAgICAgJXI4LCAlcjExCisgICAgICAgIG1vdmwgICAgICAlcjExZCwgJXI4ZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcjkKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVyMTBkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcnNpCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjEwCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlcjExZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcnNpCisgICAgICAgIGFkZHEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcnNpLCAlcjEwCisgICAgICAgIGFkZHEgICAgICAlcjksICVyMTAKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXJieAorICAgICAgICBvcnEgICAgICAgJXJieCwgJXI4CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjExCisgICAgICAgIG1vdmwgICAgICA4KCVyY3gpLCAlcjlkCisgICAgICAgIG1vdmwgICAgICA0KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyZGksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92cSAgICAgICVyOSwgJXJkaQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlcjlkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92bCAgICAgICVyMTFkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjksICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyZGkKKyAgICAgICAgbW92cSAgICAgICVyc2ksICVyOQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJzaQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyMTAKKyAgICAgICAgb3JxICAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICglcmN4KSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJzaQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXJzaSwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcmRpLCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyZHgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVieAorICAgICAgICBsZWEgICAgICAgUElfSU5WX1RBQkxFKCVyaXApLCAlcmRpCisgICAgICAgIHN1YnEgICAgICAlcmRpLCAlcmN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTksICVlY3gKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVzaQorICAgICAgICBhbmRsICAgICAgJWVieCwgJWVzaQorICAgICAgICBzaHJsICAgICAgJDQsICVlYngKKyAgICAgICAgYW5kbCAgICAgICQyMDQ3LCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAkMTAyMywgJWVieAorICAgICAgICBzdWJsICAgICAgJWVieCwgJWVjeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXI5CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMzIsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMQorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDI5LCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlZGkKKyAgICAgICAgYW5kbCAgICAgICQxMDczNzQxODIzLCAlcjlkCisgICAgICAgIHRlc3RsICAgICAkNTM2ODcwOTEyLCAlcjlkCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVieAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyMTEsICVyOQorLkxfMlRBR19QQUNLRVRfNy4wLjE6CisuTF8yVEFHX1BBQ0tFVF84LjAuMToKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjE6CisgICAgICAgIGJzciAgICAgICAlcjksICVyMTEKKyAgICAgICAgbW92bCAgICAgICQyOSwgJWVjeAorICAgICAgICBzdWJsICAgICAgJXIxMWQsICVlY3gKKyAgICAgICAgamxlICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMQorICAgICAgICBzaGxxICAgICAgJWNsLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyYXgKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXIxMAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyYXgKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXI4CisgICAgICAgIG9ycSAgICAgICAlcmF4LCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyOCwgJXIxMAorLkxfMlRBR19QQUNLRVRfMTIuMC4xOgorICAgICAgICBjdnRzaTJzZHEgJXI5LCAleG1tMAorICAgICAgICBzaHJxICAgICAgJDEsICVyMTAKKyAgICAgICAgY3Z0c2kyc2RxICVyMTAsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlc2ksICVlZHgKKyAgICAgICAgeG9ybCAgICAgICVlYngsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgUElfNCglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDgrUElfNCglcmlwKSwgJXhtbTcKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJsICAgICAgJDEwMDgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHNobGwgICAgICAkMTYsICVlc2kKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDMwLCAlZWRpCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRsICAgICAgJWVzaSwgJWVkaQorICAgICAgICB4b3JsICAgICAgJWVzaSwgJWVkaQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWF4CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgUEkzMklOViglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92ZGR1cCAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgc2lnbl9tYXNrKCVyaXApLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92ZGR1cCAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgT05FSEFMRiglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIE1VTDE2KCVyaXApLCAleG1tNgorICAgICAgICBvcnBzICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNQorICAgICAgICB1bnBja2hwZCAgJXhtbTUsICV4bW01CisgICAgICAgIGN2dHRzZDJzaSAleG1tNSwgJWVkeAorICAgICAgICBjdnR0cGQyZHEgJXhtbTEsICV4bW0xCisgICAgICAgIGN2dGRxMnBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgUF8xKCVyaXApLCAleG1tMworICAgICAgICBtb3ZxICAgICAgUVFfMiglcmlwKSwgJXhtbTUKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkNDY5MjQ4LCAlZWR4CisgICAgICAgIG1vdmFwZCAgICBQXzIoJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMSwgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2hsbCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YnBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgc2hsbCAgICAgICQyLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMgorICAgICAgICBzdWJwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBPTkUoJXJpcCksICV4bW02CisgICAgICAgIHNobGwgICAgICAkNCwgJWVkeAorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIGFuZHBkICAgICBNQVNLXzM1KCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIHN1YnBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgdW5wY2tocGQgICV4bW0wLCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIHN1YnBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0OCglcmF4KSwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTYoJXJheCksICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDk2KCVyYXgpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICglcmF4KSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgIDMyKCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHBkICAgICA4MCglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTEyKCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNjQoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgMTQ0KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHVucGNraHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgMTQ0KCVyYXgpLCAleG1tNworICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAxNTIoJXJheCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgIDEzNiglcmF4KSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBPTkUoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIDE2OCglcmF4KSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAxNjAoJXJheCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgIDEyOCglcmF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfOS4wLjE6CisgICAgICAgIGFkZGwgICAgICAkNjQsICVlZHgKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI4LCAlcjEwCisgICAgICAgIG1vdnEgICAgICAkMCwgJXI4CisgICAgICAgIGNtcHEgICAgICAkMCwgJXI5CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjEKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjE6CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjEKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmF4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyOQorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNobHEgICAgICAlY2wsICVyYXgKKyAgICAgICAgb3JxICAgICAgICVyYXgsICVyMTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMQorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisgICAgICAgIG5vdGwgICAgICAlZWN4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAlY2wsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmRpCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMQorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDIsICVyZGkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4xCisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJDEwNzM3NDE4MjQsICVlYngKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVieAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyMTEsICVyOQorICAgICAgICBzaGxxICAgICAgJDMyLCAlcmJ4CisgICAgICAgIGFkZGwgICAgICAkMTA3Mzc0MTgyNCwgJWVkaQorICAgICAgICBtb3ZxICAgICAgJDAsICVyY3gKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjExCisgICAgICAgIHN1YnEgICAgICAlcjgsICVyY3gKKyAgICAgICAgc2JicSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgc2JicSAgICAgICVyOSwgJXJieAorICAgICAgICBtb3ZxICAgICAgJXJjeCwgJXI4CisgICAgICAgIG1vdnEgICAgICAlcjExLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVieAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzEzLjAuMToKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZxICAgICAgJDB4MTAwMDAwMDAwLCAlcmJ4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyYngKKyAgICAgICAgbW92cSAgICAgICQwLCAlcmN4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXIxMQorICAgICAgICBzdWJxICAgICAgJXI4LCAlcmN4CisgICAgICAgIHNiYnEgICAgICAlcjEwLCAlcjExCisgICAgICAgIHNiYnEgICAgICAlcjksICVyYngKKyAgICAgICAgbW92cSAgICAgICVyY3gsICVyOAorICAgICAgICBtb3ZxICAgICAgJXIxMSwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXJieCwgJXI5CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYngKKyAgICAgICAgc2hycSAgICAgICQyLCAlcmRpCisgICAgICAgIGFkZGwgICAgICAkMTA3Mzc0MTgyNCwgJWVkaQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjEKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIE5FR19aRVJPKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglcnNwKQorLkxfMlRBR19QQUNLRVRfMTQuMC4xOgorLi5CMS40OgorICAgICAgICBhZGRxICAgICAgJDE2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV90YW4uNjoKKyAgICAgICAgcG9wcSAgICAgICVyYngKKy4uX19fdGFnX3ZhbHVlX3Rhbi44OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV90YW4uOToKK0VORCh0YW4pCisjIC0tIEVuZCAgdGFuCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitPTkVIQUxGOgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkudHlwZQlPTkVIQUxGLEBvYmplY3QKKwkuc2l6ZQlPTkVIQUxGLDE2CisJLmFsaWduIDE2CitNVUwxNjoKKwkubG9uZwkwCisJLmxvbmcJMTA3Njg4NzU1MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJTVVMMTYsQG9iamVjdAorCS5zaXplCU1VTDE2LDE2CisJLmFsaWduIDE2CitzaWduX21hc2s6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCXNpZ25fbWFzayxAb2JqZWN0CisJLnNpemUJc2lnbl9tYXNrLDE2CisJLmFsaWduIDE2CitQSTMySU5WOgorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDcxOTMxMTg0CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzYxMjU0ODgKKwkudHlwZQlQSTMySU5WLEBvYmplY3QKKwkuc2l6ZQlQSTMySU5WLDE2CisJLmFsaWduIDE2CitQXzE6CisJLmxvbmcJMTQxMzc1ODk3NgorCS5sb25nCTEwNjkwOTc0NjcKKwkubG9uZwkxNDEzNzQyNTkyCisJLmxvbmcJMTA2OTA5NzQ2NworCS50eXBlCVBfMSxAb2JqZWN0CisJLnNpemUJUF8xLDE2CisJLmFsaWduIDE2CitQXzI6CisJLmxvbmcJMTczNDgxOTg0MAorCS5sb25nCTMxNzQyMjk5NDUKKwkubG9uZwkxMjgwMDQ5MTUyCisJLmxvbmcJMTAyODAzMzU3MQorCS50eXBlCVBfMixAb2JqZWN0CisJLnNpemUJUF8yLDE2CisJLmFsaWduIDE2CitQXzM6CisJLmxvbmcJOTIzMjE5MDE4CisJLmxvbmcJOTg0MTMwMjcyCisJLmxvbmcJNTc3MDExODkKKwkubG9uZwk5ODgzODM3OTAKKwkudHlwZQlQXzMsQG9iamVjdAorCS5zaXplCVBfMywxNgorCS5hbGlnbiAxNgorQ3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjg0NTg5MzA2CisJLmxvbmcJMTA2NjgyMDg1MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkxMDY1NDk0MjQzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjM2Mjg5NTA0CisJLmxvbmcJMTA2NDEzNTk5NworCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNjk2MTc0MjUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTE2MDQ3NjEzMQorCS5sb25nCTEwNjI3MjIxMDIKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkxMDY4MjEyNjY2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTMxMzAzODIzNQorCS5sb25nCTEwNjY3NDU3MzEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMTM4NzgzNDIKKwkubG9uZwkxMDY3MTUyNjE4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNjYzNDI2ODMzCisJLmxvbmcJMTA2NTcyNTI4MworCS5sb25nCTM2OTMyODQyNTEKKwkubG9uZwkxMDY5MTE4ODA4CisJLmxvbmcJNjUwODUyMjMyCisJLmxvbmcJMTA2NTg4MjM3NgorCS5sb25nCTE5OTYyNDUzODEKKwkubG9uZwkxMDcxMDAwMjY1CisJLmxvbmcJMjAwODc0NjE3MAorCS5sb25nCTEwNjQ2NjQxOTcKKwkubG9uZwkzMDU1ODQyNTkzCisJLmxvbmcJMTA2ODU3ODg0NgorCS5sb25nCTE0OTU0MDYzNDgKKwkubG9uZwkxMDY0NjUyNDM3CisJLmxvbmcJMjI2OTUzMDE1NworCS5sb25nCTEwNjk3MTEyMzUKKwkubG9uZwkyODU1NjM2OTYKKwkubG9uZwkxMDYzNTc2NDY1CisJLmxvbmcJMTA0Njg5NzQ0MAorCS5sb25nCTEwNjc3MDU4NjUKKwkubG9uZwkyMzM0Mjk3MzEKKwkubG9uZwkxMDYzNDUzMTUxCisJLmxvbmcJNTIyMDQ1OTU4CisJLmxvbmcJMTA2ODQ3NjU5MAorCS5sb25nCTIzNTQ3ODU2OTgKKwkubG9uZwkxMDY5MTAyNzc5CisJLmxvbmcJMTMxNzU5OTE0MQorCS5sb25nCTEwMTI0MzIxMzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI4MjgyMzAxMDUKKwkubG9uZwkxMDY1NjA2NjI2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE1MTI1NDU5NTUKKwkubG9uZwkxMDY4MTE5MDQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3MDQ4Njk4CisJLmxvbmcJMTA2NzkwOTQ1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjMwMDIwMDQ1MAorCS5sb25nCTEwNjcyNTQ3NjcKKwkubG9uZwkzNTkzMjUwMjk2CisJLmxvbmcJMTA3MDIzMzU2MQorCS5sb25nCTMwMDkzNjU1NDQKKwkubG9uZwkxMDY2OTAyMTE3CisJLmxvbmcJMTEyNzM3MzA1MAorCS5sb25nCTEwNzExNzM0NTcKKwkubG9uZwkzMDQ2MTAzMzA1CisJLmxvbmcJMTA2NjM3MTI5OQorCS5sb25nCTI0NTgzNDAyCisJLmxvbmcJMTA2OTcyMzk4OAorCS5sb25nCTQwODI1MTE3NTgKKwkubG9uZwkxMDY1OTE0MTk5CisJLmxvbmcJMzIyMzg4OTY5OQorCS5sb25nCTEwNzAwMjAzNjcKKwkubG9uZwk1NDg5Mjc5ODQKKwkubG9uZwkxMDY1NDE1NzU2CisJLmxvbmcJNTU4MDY1ODk3CisJLmxvbmcJMTA2ODk0OTQxOAorCS5sb25nCTY4MDA3MzMxNQorCS5sb25nCTEwNjQ5NDA3MjYKKwkubG9uZwkzODg4NzMyMDAKKwkubG9uZwkxMDY4OTQ0MjcwCisJLmxvbmcJMzc2MzY3OTU3NgorCS5sb25nCTEwNzAxNjc1NDEKKwkubG9uZwkxNDk3MzYwNDA0CisJLmxvbmcJMTAwOTcxMDU0NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNjQ5MzExNTIKKwkubG9uZwkxMDY3NzI5NDExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0Njc1ODI3ODIKKwkubG9uZwkxMDY5MjU2Mzg5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNjIxNTAwOTYKKwkubG9uZwkxMDY4OTQ2NDIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNzAyNzk0MjM3CisJLmxvbmcJMTA2ODU3OTE1MgorCS5sb25nCTM2MzE5MTkyOTEKKwkubG9uZwkxMDcwOTM2OTI2CisJLmxvbmcJMzQ1NjgyMTQxMworCS5sb25nCTEwNjgyMTcyMTgKKwkubG9uZwkyMDMxMzY2NDM4CisJLmxvbmcJMTA3MTQ5NTc0NQorCS5sb25nCTE1OTY2NjQwMjAKKwkubG9uZwkxMDY3Nzk5MjgxCisJLmxvbmcJMTUwOTAzODcwMQorCS5sb25nCTEwNzA2MDE2NDMKKwkubG9uZwk1ODMxNzE0NzcKKwkubG9uZwkxMDY3NTEwMTQ4CisJLmxvbmcJMzc4NTM0NDY4MgorCS5sb25nCTEwNzA2MTg0NzYKKwkubG9uZwkyNDAyMDM2MDQ4CisJLmxvbmcJMTA2NzA3NTczNgorCS5sb25nCTMyMzMwMTg0MTIKKwkubG9uZwkxMDY5OTEzMTg2CisJLmxvbmcJNDExMjgwNTY4CisJLmxvbmcJMTA2NjcxMDU1NgorCS5sb25nCTEwNjU1ODQxOTIKKwkubG9uZwkxMDY5NzQ3ODk2CisJLmxvbmcJODk1MjQ3MzI0CisJLmxvbmcJMTA3MDgxOTg0OAorCS5sb25nCTUwMDA3ODkwOQorCS5sb25nCTMxNjEyODg3ODEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTcyOTk4Mzg0MworCS5sb25nCTEwNjg5OTQxOTQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQ1ODc5NDU2MgorCS5sb25nCTEwNzAzOTg1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTc3Nzc0ODkKKwkubG9uZwkxMDcwMTM3NjM3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDI0MzU5NTE3CisJLmxvbmcJMTA2OTg3NjUzMQorCS5sb25nCTI2MTYwNDAyMzgKKwkubG9uZwkxMDcxNTgyOTM3CisJLmxvbmcJMTYwOTAyNDYzNgorCS5sb25nCTEwNjk2NzUwODgKKwkubG9uZwkyNTI5MjQwNTQ5CisJLmxvbmcJMTA3MTgzNjYzMworCS5sb25nCTE1MTAxMjg2MDAKKwkubG9uZwkxMDY5NDQwMTEzCisJLmxvbmcJMjI1MTY5NzE4NAorCS5sb25nCTEwNzEyNTM2ODcKKwkubG9uZwkxMjYyNzYxNDUzCisJLmxvbmcJMTA2OTE0Mjg1MAorCS5sb25nCTEyNjMwOTE4NTcKKwkubG9uZwkxMDcxMTkwNDYxCisJLmxvbmcJMzA0MzM4MzQ4NgorCS5sb25nCTEwNjg4ODUxOTEKKwkubG9uZwkyNDc2OTMyNDcwCisJLmxvbmcJMTA3MDg0MjAwMgorCS5sb25nCTM2NTk5OTUwMjgKKwkubG9uZwkxMDY4NjY5MjAwCisJLmxvbmcJODU1ODkxNzU1CisJLmxvbmcJMTA3MDY5Njg5NAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcxMjg0ODU3CisJLmxvbmcJMzA2MjYzMzU3NQorCS5sb25nCTEwMTQwMDg2MjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI1NTA5NDA0NzEKKwkubG9uZwkxMDY5OTM4MjAxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0MjI4MDcyOTcKKwkubG9uZwkxMDcxNjQwODQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTUxNjU4MDUzCisJLmxvbmcJMTA3MTQ5NDcxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJOTI5NjA3MDcxCisJLmxvbmcJMTA3MTM0NjM0MAorCS5sb25nCTEwMzcwNDkwMzQKKwkubG9uZwkxMDcyMDM3MzA1CisJLmxvbmcJMjc4NjkyODY1NworCS5sb25nCTEwNzEyMTUyODIKKwkubG9uZwkxNDQ3NDA2ODU5CisJLmxvbmcJMTA3MjI2NTIwOQorCS5sb25nCTM0OTA5NTIxMDcKKwkubG9uZwkxMDcxMDkwODUxCisJLmxvbmcJMzIwNTIzMjkxNgorCS5sb25nCTEwNzE5Njg2NTgKKwkubG9uZwkxMjk3MzQ0MzA0CisJLmxvbmcJMTA3MDk3NzEyMAorCS5sb25nCTEwNjYxMTA5NzYKKwkubG9uZwkxMDcxOTQ2MDM1CisJLmxvbmcJMzgwMzcyMTQ4MAorCS5sb25nCTEwNzA4NzEwODIKKwkubG9uZwkxNDk2NzU0MjI5CisJLmxvbmcJMTA3MTgwNzIwMQorCS5sb25nCTI5ODI1NTA2ODMKKwkubG9uZwkxMDcwNzczMjQzCisJLmxvbmcJNDAxNDQ0MTk4OQorCS5sb25nCTEwNzE3MzYyMjIKKwkubG9uZwk0MTk5NjgyMzYKKwkubG9uZwkxMDcxNzE3MDQ3CisJLmxvbmcJMzQ1MTI2NjUzOAorCS5sb25nCTMxNjM0NDQ4MTEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI5NjAyNjcyMzUKKwkubG9uZwkxMDcwNzQ1ODQxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTcyNDMyMjc2OAorCS5sb25nCTEwNzI4ODEzMDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTY0MzE1MzA0OAorCS5sb25nCTEwNzI5MDU4MTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyODUwNzk0NTgKKwkubG9uZwkxMDcyOTI4NTU4CisJLmxvbmcJMzkxMjUyNDczMworCS5sb25nCTEwNzI2MjI5ODMKKwkubG9uZwkxMTgzNjIyNzIKKwkubG9uZwkxMDcyOTUyNzU0CisJLmxvbmcJNDEwNzc2Nzk3MgorCS5sb25nCTEwNzI4Mjc0MDgKKwkubG9uZwkyNjg5NTAyODgzCisJLmxvbmcJMTA3Mjk3NjkyMgorCS5sb25nCTk0NjUyMzM0NworCS5sb25nCTEwNzI3NzI3NjYKKwkubG9uZwk1NzMyMDQxODkKKwkubG9uZwkxMDczMDAxNzYxCisJLmxvbmcJNTgxNTMxNTE4CisJLmxvbmcJMTA3MjgyNjM5MQorCS5sb25nCTEzODYyMzY1MjYKKwkubG9uZwkxMDczMDI2OTU5CisJLmxvbmcJMzcxODkwNTkwNQorCS5sb25nCTEwNzI4MzI4MjMKKwkubG9uZwkxMTQ1NTU4MTQwCisJLmxvbmcJMTA3MzA1MjY3MworCS5sb25nCTUxMzU3MjYzNworCS5sb25nCTEwNzI4NjE5NjkKKwkubG9uZwk3MTY3MDAwNDgKKwkubG9uZwkxMDcxOTk3MzY4CisJLmxvbmcJNTQ3MTI2NzY5CisJLmxvbmcJMTAxNTUyMzUyNQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTA5NzkwNzM5OAorCS5sb25nCTEwNzE0MjAxMjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzM0OTg5MjQ0MgorCS5sb25nCTEwNzQyOTAyMTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM5MTMxOTc0MDUKKwkubG9uZwkxMDc0NTAxMTgxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNDk0MDM0NTIyCisJLmxvbmcJMTA3NDczOTE3MAorCS5sb25nCTEyNjQ3Mzg3NjMKKwkubG9uZwkxMDczMDg0ODA0CisJLmxvbmcJMTUyMDI5MzkwNgorCS5sb25nCTEwNzQ4OTk2MzIKKwkubG9uZwkxOTU4OTM2NjAwCisJLmxvbmcJMTA3MzQxMTQ5MworCS5sb25nCTIxMzM2NDk2MzUKKwkubG9uZwkxMDc1MDUyMTcxCisJLmxvbmcJNDI3MDc0MDczMAorCS5sb25nCTEwNzM1NzQ3MDgKKwkubG9uZwkxNzI4OTMwMTg5CisJLmxvbmcJMTA3NTIyNDg0NAorCS5sb25nCTEzMDM5OTg1NTIKKwkubG9uZwkxMDczNzk5MTg2CisJLmxvbmcJNjE4NjExOTMzCisJLmxvbmcJMTA3NTQyMDI1NQorCS5sb25nCTE3Njk4MjgwNDYKKwkubG9uZwkxMDczOTM4NTQyCisJLmxvbmcJMjIwMDUzNzk4NgorCS5sb25nCTEwNzU2NDE0MjEKKwkubG9uZwk0MzMzNjExMTAKKwkubG9uZwkxMDc0MTA1MzY5CisJLmxvbmcJNzE5NTk1NjAwCisJLmxvbmcJMTA3MjMxNzE4NAorCS5sb25nCTI5NDUyNzIwNgorCS5sb25nCTMxNjIxNDAwODgKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTM4MTE3ODgyMTYKKwkubG9uZwkzMjE4NDAwNTUwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE3MDQzNTIxMDIKKwkubG9uZwkxMDc1OTQzMDAxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjg0NTg5MzA2CisJLmxvbmcJMTA3NjI1ODAzNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjIxMTI2NDI5MQorCS5sb25nCTEwNzY2NTkwMTAKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkxMDc3MDI4NTc5CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzQwOTEzNDkKKwkubG9uZwk4NzY5NDM2NzMKKwkubG9uZwkxMDc3MzUzNjIyCisJLmxvbmcJMjg2MzMxMTUzMQorCS5sb25nCTEwNzQ0NDA4NzQKKwkubG9uZwkyMzYyODk1MDQKKwkubG9uZwkxMDc3NzY3NDg1CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA3NDg2MDMwNQorCS5sb25nCTI4MDU0NzMzMTEKKwkubG9uZwkxMDc4MTE1Mjc4CisJLmxvbmcJOTU0NDM3MTgKKwkubG9uZwkxMDc1MTYzMjI3CisJLmxvbmcJMTE2MDQ3NjEzMQorCS5sb25nCTEwNzg0NTA3NDIKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkxMDc1NTUyNjk4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTMzMDE2NTk3MQorCS5sb25nCTMyMDc4NTA3NDUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNzUzNjYyMworCS5sb25nCTEwNTkxMDkwOTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0OTIxMjA4NDkKKwkubG9uZwkzMjA1MTUxNDc1CisJLmxvbmcJNjAyMTg1NzA1CisJLmxvbmcJMzIxNTY3ODA5MgorCS5sb25nCTc2MDQyMjk1OAorCS5sb25nCTEwNTYzMTI1OTcKKwkubG9uZwk1NTUxMjc4ODkKKwkubG9uZwkxMDY3NTQ1MjY2CisJLmxvbmcJMzEzOTc4NDEyNAorCS5sb25nCTMyMDI0NzA4MzcKKwkubG9uZwkzNjkwNTQ0MDE0CisJLmxvbmcJMzIxMzE1MDE3MQorCS5sb25nCTk1NzA3OTE1CisJLmxvbmcJMTA1MzYzNTQyOAorCS5sb25nCTQwMDMxMTQ0MDcKKwkubG9uZwkxMDY0NTgxNDEyCisJLmxvbmcJMjAzNDkyNjIzMQorCS5sb25nCTMxOTk3MTExNjEKKwkubG9uZwkzNzU5NTM2MDIzCisJLmxvbmcJMzIxMDU1OTk4OQorCS5sb25nCTM4MjY5MjgyMTQKKwkubG9uZwkxMDUwODkzODE5CisJLmxvbmcJMzgzNzk2MDc4NQorCS5sb25nCTEwNjE3OTAzNzkKKwkubG9uZwkxNTI2MzI1MjQ4CisJLmxvbmcJMzIxNzk2NzU2NgorCS5sb25nCTIzNTY0MjY1MjEKKwkubG9uZwkxMDI1NDIzNDU2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0NTc3Mjg5NzUKKwkubG9uZwkxMDcxMDg4Mjc2CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzOTg0NjI2MDgKKwkubG9uZwkzMjA3MzAzOTY4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjIwNTk4MworCS5sb25nCTEwNTg0NjEyMTMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTU2MjI2MjM4CisJLmxvbmcJMzIwNDUyODYxMgorCS5sb25nCTI3NTQ3MDY1NDEKKwkubG9uZwkzMjE1MzU5NTExCisJLmxvbmcJMjE4Nzc5OTgyMworCS5sb25nCTEwNTU2MzQ0MzcKKwkubG9uZwk3OTAzMjM3NDIKKwkubG9uZwkxMDY3NDAyNTg3CisJLmxvbmcJMTM3MjM4NTg0OAorCS5sb25nCTMyMDE2NTE0NzkKKwkubG9uZwk0MDk3MjkyNzE2CisJLmxvbmcJMzIxMjg1NjMwMgorCS5sb25nCTMzNDgyMTAzNTcKKwkubG9uZwkxMDUyODMwMDk5CisJLmxvbmcJMjQ0Mjc5NjQ2NgorCS5sb25nCTEwNjQzMzc2MDIKKwkubG9uZwk4NjI2MDgxNDIKKwkubG9uZwkzMTk4ODMwNzU0CisJLmxvbmcJMTcwMjk2MTUyCisJLmxvbmcJMzIxMDA2MDg2NworCS5sb25nCTM3NTU1NzE0MjgKKwkubG9uZwkxMDQ5OTMzMzQzCisJLmxvbmcJMzYxNDg2NjAwOAorCS5sb25nCTEwNjEzNjE2NzAKKwkubG9uZwk3MTk5Nzg0OTYKKwkubG9uZwkzMjE3NjY5MDk2CisJLmxvbmcJMTk5ODg0MjQ2NQorCS5sb25nCTMxNzQ3MDM5NzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3NDkxNTY2MDcKKwkubG9uZwkxMDcxMDQ4MjU4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTMxMjA0OTg2MzgKKwkubG9uZwkzMjA2NzQ5MzA0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNzczNTc4MTE0CisJLmxvbmcJMTA1ODAwOTMxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjAzMDc4MzY3NgorCS5sb25nCTMyMDM4MTc4NzMKKwkubG9uZwkyMjIzNjU0NTk4CisJLmxvbmcJMzIxNTA3MTkzNgorCS5sb25nCTI5NzYxMzQ2NTAKKwkubG9uZwkxMDU0OTg3MjQ0CisJLmxvbmcJNzA2MzkwMDY2CisJLmxvbmcJMTA2NzIxNzM4NgorCS5sb25nCTQyNTg0Mzc2MTUKKwkubG9uZwkzMjAwOTAwMzc4CisJLmxvbmcJMTA2NjI1Mjk3NQorCS5sb25nCTMyMTIzOTEyNjcKKwkubG9uZwk4MTU3Nzc1MTQKKwkubG9uZwkxMDUxOTg5NDYyCisJLmxvbmcJMzIwMjc0NTQ1NworCS5sb25nCTEwNjQwMTA2ODIKKwkubG9uZwkyNDkzNTU2Mzc1CisJLmxvbmcJMzE5ODAwNDc1MworCS5sb25nCTEwNDYyNDMyNTEKKwkubG9uZwkzMjA5Njc4OTcxCisJLmxvbmcJMjU5MzA3ODg0NgorCS5sb25nCTEwNDkwMTc3MTcKKwkubG9uZwkyNzYzOTYyMjc2CisJLmxvbmcJMTA2MDk3MDE2MQorCS5sb25nCTcwMTQ4MDk2MAorCS5sb25nCTMyMTczNzc3NDIKKwkubG9uZwkzMjA1ODYyMjMyCisJLmxvbmcJMzE3NDY2MDkxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI2NzAxNjgxMgorCS5sb25nCTEwNzEwMTU2NjQKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMjEwNzE1NTc5OAorCS5sb25nCTMyMDYxNjY4NzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NDI5OTIxMjkKKwkubG9uZwkxMDU3NDI0NTc4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxOTM2OTkyODExCisJLmxvbmcJMzIwMzIwNDQyNgorCS5sb25nCTE0ODUwNjM1NTkKKwkubG9uZwkzMjE0NjgyNjQzCisJLmxvbmcJMTQzMjkxNDU1MworCS5sb25nCTEwNTQzMTkzOTgKKwkubG9uZwkzOTk2MzgxNjU0CisJLmxvbmcJMTA2NzA3NTgyOAorCS5sb25nCTI4MzMwMjkyNTYKKwkubG9uZwkzMjAwMjIzNTQ1CisJLmxvbmcJMjg2NjA2Njg3MgorCS5sb25nCTMyMTE5ODI2NjIKKwkubG9uZwkyNDMyODg4NzM3CisJLmxvbmcJMTA1MTIzNDE3OAorCS5sb25nCTM2Njk3NjQ1NTkKKwkubG9uZwkxMDYzNzQ4MTM2CisJLmxvbmcJMjQ1ODQ5Njk1MgorCS5sb25nCTMxOTcxNzA3NzQKKwkubG9uZwkxOTQ4MjM0OTg5CisJLmxvbmcJMzIwOTA5ODE0NworCS5sb25nCTI4NDM2OTg3ODcKKwkubG9uZwkxMDQ4MTYzNTE5CisJLmxvbmcJMzM5ODA0MTQwNworCS5sb25nCTEwNjA1NTk3MjgKKwkubG9uZwkyODI5MjMwMDgwCisJLmxvbmcJMzIxNzA5MjExNQorCS5sb25nCTEwMzQwNDY0MzMKKwkubG9uZwkzMTc0MjcxOTAzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyOTg2NzUzMDUKKwkubG9uZwkxMDcwOTg5ODIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTQzNzYwMzIyMworCS5sb25nCTMyMDU1ODk3NjEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTc1OTMzMDM1MgorCS5sb25nCTEwNTcwNDg1MTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMxMDc0NjMzNjgKKwkubG9uZwkzMjAyNTA3OTg4CisJLmxvbmcJMzE0NDQ2NTE3NgorCS5sb25nCTMyMTQxOTE1MDAKKwkubG9uZwkyMjkwOTYxODEwCisJLmxvbmcJMTA1Mzg0MTAzNQorCS5sb25nCTE2MTgxNTMzNDAKKwkubG9uZwkxMDY2OTcxNTQ3CisJLmxvbmcJMzgzNjg2OTM5MworCS5sb25nCTMxOTk0MDAyNzIKKwkubG9uZwk1ODQwMzIxMTYKKwkubG9uZwkzMjExNDY5MjYxCisJLmxvbmcJMTI0NTcwNDM1OAorCS5sb25nCTEwNTA2MjY0NjIKKwkubG9uZwk0MjQ3NDg3NDM4CisJLmxvbmcJMTA2MzU2MTk0MworCS5sb25nCTE2NjkwMzQ5MjcKKwkubG9uZwkzMTk2Mjc0ODEyCisJLmxvbmcJMzg0NDIzMzQ5OAorCS5sb25nCTMyMDg2MjYzMjIKKwkubG9uZwkyNzA2OTU4NTI0CisJLmxvbmcJMTA0NzQxMTM3NAorCS5sb25nCTM4NTcxOTkwOTgKKwkubG9uZwkxMDYwMjgxNjQ3CisJLmxvbmcJMzU5MzkwNDEyOAorCS5sb25nCTMyMTY1OTA3MTkKKwkubG9uZwkzMjY3NTQ3ODM2CisJLmxvbmcJMzE3MjE2MzMyMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDA3NjcxMjIyNworCS5sb25nCTEwNzA5NzAyMTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzI5MDA5MDM0MAorCS5sb25nCTMyMDQ3OTM0ODUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2ODU3NjAzNjcKKwkubG9uZwkxMDU2NjY4MzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjU1MTYzOTQ5CisJLmxvbmcJMzIwMTY3NDkxNworCS5sb25nCTYyODc1MDU3NQorCS5sb25nCTMyMTM1NjY4NzIKKwkubG9uZwk2ODAxNDA1MDUKKwkubG9uZwkxMDUzMjk5Nzc3CisJLmxvbmcJMjk1NDQ2NDcwOQorCS5sb25nCTEwNjY5MDAwMjYKKwkubG9uZwk4MDMyMDE2MTkKKwkubG9uZwkzMTk4NTE2NDM1CisJLmxvbmcJMTQ2NjMxNTYzMQorCS5sb25nCTMyMTA4MzcxNjIKKwkubG9uZwkxNjExMjIwMTYzCisJLmxvbmcJMTA0OTk3MjQzOAorCS5sb25nCTI3NjYxODcyNTYKKwkubG9uZwkxMDYzNDM3ODk0CisJLmxvbmcJMTgwNDU3OTQ4NAorCS5sb25nCTMxOTUzMzE0OTEKKwkubG9uZwkzNjk1OTY5Mjg5CisJLmxvbmcJMzIwNzg1NDQxOAorCS5sb25nCTI2MTcyMzgzNzMKKwkubG9uZwkxMDQ2Njc1OTQ4CisJLmxvbmcJMzA5NTgzMDA4NAorCS5sb25nCTEwNjAwOTUzMzQKKwkubG9uZwkzNzg5NTcwMDQ4CisJLmxvbmcJMzIxNjAzNDkxNAorCS5sb25nCTIzODI2NTU5CisJLmxvbmcJMzE3MjA0ODA2MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzg3MDkzOTM4NgorCS5sb25nCTEwNzA5NTY0NjcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTU3MTc1ODc1OAorCS5sb25nCTMyMDM2NzI1MzUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAyNjM3MworCS5sb25nCTEwNTY0MTYzODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MTM3NjYyOTgKKwkubG9uZwkzMjAwNTIzMzI2CisJLmxvbmcJMjUwNzA2ODczNAorCS5sb25nCTMyMTI1MDIwMDQKKwkubG9uZwk0MDAwNjQ4ODE4CisJLmxvbmcJMTA1MzAwMzgwMworCS5sb25nCTI0NDY2MDczNDkKKwkubG9uZwkxMDY2ODU4MjU5CisJLmxvbmcJOTEyNjYyMTI0CisJLmxvbmcJMzE5NzMzMzAwMQorCS5sb25nCTEzNDk0ODk1MzcKKwkubG9uZwkzMjA5NzY1NjA4CisJLmxvbmcJMzQxMjk3MjYwNworCS5sb25nCTEwNDk2NDE0MDEKKwkubG9uZwkxNzIxMjgzMzI3CisJLmxvbmcJMTA2MzM2Njg1NQorCS5sb25nCTE0NjY2OTE4ODMKKwkubG9uZwkzMTk0MTE2NzQ2CisJLmxvbmcJMzg1MjUyODA5MgorCS5sb25nCTMyMDY3NjA4NjEKKwkubG9uZwkyODU0NDMyOTMKKwkubG9uZwkxMDQ2MTU4MzgwCisJLmxvbmcJMTc1ODczOTg5NAorCS5sb25nCTEwNTk4OTU0NDkKKwkubG9uZwkxODU4NzgxMTg0CisJLmxvbmcJMzIxNDk4NDIxMgorCS5sb25nCTM0NDc1NzU5NDgKKwkubG9uZwkxMDI0Njc1ODU1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjQyMDM4MDExCisJLmxvbmcJMTA3MDk0ODMyMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzM3NjExNDU0CisJLmxvbmcJMTA1NjMzNjUyNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM1OTQ3OTA1MjcKKwkubG9uZwkxMDUyOTExNjIxCisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2Njg0NDUyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzAzMDUxNjE4CisJLmxvbmcJMTA0OTQ1NjA1MAorCS5sb25nCTMxNTQxODc2MjMKKwkubG9uZwkxMDYzMzQzNzIyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTUyODA2MTc4OAorCS5sb25nCTEwNDU5NDQ5MTAKKwkubG9uZwkyNDY5NzE5ODE5CisJLmxvbmcJMTA1OTgzMTE1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTE1NzE3NTg3NTgKKwkubG9uZwkxMDU2MTg4ODg3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTMwMjYzNzMKKwkubG9uZwkxMDU2NDE2MzgxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxOTEzNzY2Mjk4CisJLmxvbmcJMTA1MzAzOTY3OAorCS5sb25nCTI1MDcwNjg3MzQKKwkubG9uZwkxMDY1MDE4MzU2CisJLmxvbmcJNDAwMDY0ODgxOAorCS5sb25nCTEwNTMwMDM4MDMKKwkubG9uZwkyNDQ2NjA3MzQ5CisJLmxvbmcJMTA2Njg1ODI1OQorCS5sb25nCTkxMjY2MjEyNAorCS5sb25nCTEwNDk4NDkzNTMKKwkubG9uZwkxMzQ5NDg5NTM3CisJLmxvbmcJMTA2MjI4MTk2MAorCS5sb25nCTM0MTI5NzI2MDcKKwkubG9uZwkxMDQ5NjQxNDAxCisJLmxvbmcJMTcyMTI4MzMyNworCS5sb25nCTEwNjMzNjY4NTUKKwkubG9uZwkxNDY2NjkxODgzCisJLmxvbmcJMTA0NjYzMzA5OAorCS5sb25nCTM4NTI1MjgwOTIKKwkubG9uZwkxMDU5Mjc3MjEzCisJLmxvbmcJMjg1NDQzMjkzCisJLmxvbmcJMTA0NjE1ODM4MAorCS5sb25nCTE3NTg3Mzk4OTQKKwkubG9uZwkxMDU5ODk1NDQ5CisJLmxvbmcJMTg1ODc4MTE4NAorCS5sb25nCTEwNjc1MDA1NjQKKwkubG9uZwkzNDQ3NTc1OTQ4CisJLmxvbmcJMzE3MjE1OTUwMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI0MjAzODAxMQorCS5sb25nCTEwNzA5NDgzMjAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzI5MDA5MDM0MAorCS5sb25nCTEwNTczMDk4MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2ODU3NjAzNjcKKwkubG9uZwkxMDU2NjY4MzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjU1MTYzOTQ5CisJLmxvbmcJMTA1NDE5MTI2OQorCS5sb25nCTYyODc1MDU3NQorCS5sb25nCTEwNjYwODMyMjQKKwkubG9uZwk2ODAxNDA1MDUKKwkubG9uZwkxMDUzMjk5Nzc3CisJLmxvbmcJMjk1NDQ2NDcwOQorCS5sb25nCTEwNjY5MDAwMjYKKwkubG9uZwk4MDMyMDE2MTkKKwkubG9uZwkxMDUxMDMyNzg3CisJLmxvbmcJMTQ2NjMxNTYzMQorCS5sb25nCTEwNjMzNTM1MTQKKwkubG9uZwkxNjExMjIwMTYzCisJLmxvbmcJMTA0OTk3MjQzOAorCS5sb25nCTI3NjYxODcyNTYKKwkubG9uZwkxMDYzNDM3ODk0CisJLmxvbmcJMTgwNDU3OTQ4NAorCS5sb25nCTEwNDc4NDc4NDMKKwkubG9uZwkzNjk1OTY5Mjg5CisJLmxvbmcJMTA2MDM3MDc3MAorCS5sb25nCTI2MTcyMzgzNzMKKwkubG9uZwkxMDQ2Njc1OTQ4CisJLmxvbmcJMzA5NTgzMDA4NAorCS5sb25nCTEwNjAwOTUzMzQKKwkubG9uZwkzNzg5NTcwMDQ4CisJLmxvbmcJMTA2ODU1MTI2NgorCS5sb25nCTIzODI2NTU5CisJLmxvbmcJMTAyNDU2NDQxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzg3MDkzOTM4NgorCS5sb25nCTEwNzA5NTY0NjcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJNDM3NjAzMjIzCisJLmxvbmcJMTA1ODEwNjExMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzU5MzMwMzUyCisJLmxvbmcJMTA1NzA0ODUxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzEwNzQ2MzM2OAorCS5sb25nCTEwNTUwMjQzNDAKKwkubG9uZwkzMTQ0NDY1MTc2CisJLmxvbmcJMTA2NjcwNzg1MgorCS5sb25nCTIyOTA5NjE4MTAKKwkubG9uZwkxMDUzODQxMDM1CisJLmxvbmcJMTYxODE1MzM0MAorCS5sb25nCTEwNjY5NzE1NDcKKwkubG9uZwkzODM2ODY5MzkzCisJLmxvbmcJMTA1MTkxNjYyNAorCS5sb25nCTU4NDAzMjExNgorCS5sb25nCTEwNjM5ODU2MTMKKwkubG9uZwkxMjQ1NzA0MzU4CisJLmxvbmcJMTA1MDYyNjQ2MgorCS5sb25nCTQyNDc0ODc0MzgKKwkubG9uZwkxMDYzNTYxOTQzCisJLmxvbmcJMTY2OTAzNDkyNworCS5sb25nCTEwNDg3OTExNjQKKwkubG9uZwkzODQ0MjMzNDk4CisJLmxvbmcJMTA2MTE0MjY3NAorCS5sb25nCTI3MDY5NTg1MjQKKwkubG9uZwkxMDQ3NDExMzc0CisJLmxvbmcJMzg1NzE5OTA5OAorCS5sb25nCTEwNjAyODE2NDcKKwkubG9uZwkzNTkzOTA0MTI4CisJLmxvbmcJMTA2OTEwNzA3MQorCS5sb25nCTMyNjc1NDc4MzYKKwkubG9uZwkxMDI0Njc5NjczCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0MDc2NzEyMjI3CisJLmxvbmcJMTA3MDk3MDIxNAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkyMTA3MTU1Nzk4CisJLmxvbmcJMTA1ODY4MzIyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjY0Mjk5MjEyOQorCS5sb25nCTEwNTc0MjQ1NzgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MzY5OTI4MTEKKwkubG9uZwkxMDU1NzIwNzc4CisJLmxvbmcJMTQ4NTA2MzU1OQorCS5sb25nCTEwNjcxOTg5OTUKKwkubG9uZwkxNDMyOTE0NTUzCisJLmxvbmcJMTA1NDMxOTM5OAorCS5sb25nCTM5OTYzODE2NTQKKwkubG9uZwkxMDY3MDc1ODI4CisJLmxvbmcJMjgzMzAyOTI1NgorCS5sb25nCTEwNTI3Mzk4OTcKKwkubG9uZwkyODY2MDY2ODcyCisJLmxvbmcJMTA2NDQ5OTAxNAorCS5sb25nCTI0MzI4ODg3MzcKKwkubG9uZwkxMDUxMjM0MTc4CisJLmxvbmcJMzY2OTc2NDU1OQorCS5sb25nCTEwNjM3NDgxMzYKKwkubG9uZwkyNDU4NDk2OTUyCisJLmxvbmcJMTA0OTY4NzEyNgorCS5sb25nCTE5NDgyMzQ5ODkKKwkubG9uZwkxMDYxNjE0NDk5CisJLmxvbmcJMjg0MzY5ODc4NworCS5sb25nCTEwNDgxNjM1MTkKKwkubG9uZwkzMzk4MDQxNDA3CisJLmxvbmcJMTA2MDU1OTcyOAorCS5sb25nCTI4MjkyMzAwODAKKwkubG9uZwkxMDY5NjA4NDY3CisJLmxvbmcJMTAzNDA0NjQzMworCS5sb25nCTEwMjY3ODgyNTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI5ODY3NTMwNQorCS5sb25nCTEwNzA5ODk4MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzEyMDQ5ODYzOAorCS5sb25nCTEwNTkyNjU2NTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3NzM1NzgxMTQKKwkubG9uZwkxMDU4MDA5MzEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMDMwNzgzNjc2CisJLmxvbmcJMTA1NjMzNDIyNQorCS5sb25nCTIyMjM2NTQ1OTgKKwkubG9uZwkxMDY3NTg4Mjg4CisJLmxvbmcJMjk3NjEzNDY1MAorCS5sb25nCTEwNTQ5ODcyNDQKKwkubG9uZwk3MDYzOTAwNjYKKwkubG9uZwkxMDY3MjE3Mzg2CisJLmxvbmcJNDI1ODQzNzYxNQorCS5sb25nCTEwNTM0MTY3MzAKKwkubG9uZwkxMDY2MjUyOTc1CisJLmxvbmcJMTA2NDkwNzYxOQorCS5sb25nCTgxNTc3NzUxNAorCS5sb25nCTEwNTE5ODk0NjIKKwkubG9uZwkzMjAyNzQ1NDU3CisJLmxvbmcJMTA2NDAxMDY4MgorCS5sb25nCTI0OTM1NTYzNzUKKwkubG9uZwkxMDUwNTIxMTA1CisJLmxvbmcJMTA0NjI0MzI1MQorCS5sb25nCTEwNjIxOTUzMjMKKwkubG9uZwkyNTkzMDc4ODQ2CisJLmxvbmcJMTA0OTAxNzcxNworCS5sb25nCTI3NjM5NjIyNzYKKwkubG9uZwkxMDYwOTcwMTYxCisJLmxvbmcJNzAxNDgwOTYwCisJLmxvbmcJMTA2OTg5NDA5NAorCS5sb25nCTMyMDU4NjIyMzIKKwkubG9uZwkxMDI3MTc3MjY3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjY3MDE2ODEyCisJLmxvbmcJMTA3MTAxNTY2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxMzk4NDYyNjA4CisJLmxvbmcJMTA1OTgyMDMyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjYyMDU5ODMKKwkubG9uZwkxMDU4NDYxMjEzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk1NjIyNjIzOAorCS5sb25nCTEwNTcwNDQ5NjQKKwkubG9uZwkyNzU0NzA2NTQxCisJLmxvbmcJMTA2Nzg3NTg2MworCS5sb25nCTIxODc3OTk4MjMKKwkubG9uZwkxMDU1NjM0NDM3CisJLmxvbmcJNzkwMzIzNzQyCisJLmxvbmcJMTA2NzQwMjU4NworCS5sb25nCTEzNzIzODU4NDgKKwkubG9uZwkxMDU0MTY3ODMxCisJLmxvbmcJNDA5NzI5MjcxNgorCS5sb25nCTEwNjUzNzI2NTQKKwkubG9uZwkzMzQ4MjEwMzU3CisJLmxvbmcJMTA1MjgzMDA5OQorCS5sb25nCTI0NDI3OTY0NjYKKwkubG9uZwkxMDY0MzM3NjAyCisJLmxvbmcJODYyNjA4MTQyCisJLmxvbmcJMTA1MTM0NzEwNgorCS5sb25nCTE3MDI5NjE1MgorCS5sb25nCTEwNjI1NzcyMTkKKwkubG9uZwkzNzU1NTcxNDI4CisJLmxvbmcJMTA0OTkzMzM0MworCS5sb25nCTM2MTQ4NjYwMDgKKwkubG9uZwkxMDYxMzYxNjcwCisJLmxvbmcJNzE5OTc4NDk2CisJLmxvbmcJMTA3MDE4NTQ0OAorCS5sb25nCTE5OTg4NDI0NjUKKwkubG9uZwkxMDI3MjIwMzI5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNzQ5MTU2NjA3CisJLmxvbmcJMTA3MTA0ODI1OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxMzMwMTY1OTcxCisJLmxvbmcJMTA2MDM2NzA5NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE3NTM2NjIzCisJLmxvbmcJMTA1OTEwOTA5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQ5MjEyMDg0OQorCS5sb25nCTEwNTc2Njc4MjcKKwkubG9uZwk2MDIxODU3MDUKKwkubG9uZwkxMDY4MTk0NDQ0CisJLmxvbmcJNzYwNDIyOTU4CisJLmxvbmcJMTA1NjMxMjU5NworCS5sb25nCTU1NTEyNzg4OQorCS5sb25nCTEwNjc1NDUyNjYKKwkubG9uZwkzMTM5Nzg0MTI0CisJLmxvbmcJMTA1NDk4NzE4OQorCS5sb25nCTM2OTA1NDQwMTQKKwkubG9uZwkxMDY1NjY2NTIzCisJLmxvbmcJOTU3MDc5MTUKKwkubG9uZwkxMDUzNjM1NDI4CisJLmxvbmcJNDAwMzExNDQwNworCS5sb25nCTEwNjQ1ODE0MTIKKwkubG9uZwkyMDM0OTI2MjMxCisJLmxvbmcJMTA1MjIyNzUxMworCS5sb25nCTM3NTk1MzYwMjMKKwkubG9uZwkxMDYzMDc2MzQxCisJLmxvbmcJMzgyNjkyODIxNAorCS5sb25nCTEwNTA4OTM4MTkKKwkubG9uZwkzODM3OTYwNzg1CisJLmxvbmcJMTA2MTc5MDM3OQorCS5sb25nCTE1MjYzMjUyNDgKKwkubG9uZwkxMDcwNDgzOTE4CisJLmxvbmcJMjM1NjQyNjUyMQorCS5sb25nCTMxNzI5MDcxMDQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQ1NzcyODk3NQorCS5sb25nCTEwNzEwODgyNzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTcwNDM1MjEwMgorCS5sb25nCTMyMjM0MjY2NDkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDc2MjU4MDM2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjExMjY0MjkxCisJLmxvbmcJMzIyNDE0MjY1OAorCS5sb25nCTAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNzcwMjg1NzkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3NDA5MTM0OQorCS5sb25nCTg3Njk0MzY3MworCS5sb25nCTMyMjQ4MzcyNzAKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMzIyMTkyNDUyMgorCS5sb25nCTIzNjI4OTUwNAorCS5sb25nCTEwNzc3Njc0ODUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDc0ODYwMzA1CisJLmxvbmcJMjgwNTQ3MzMxMQorCS5sb25nCTMyMjU1OTg5MjYKKwkubG9uZwk5NTQ0MzcxOAorCS5sb25nCTMyMjI2NDY4NzUKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA3ODQ1MDc0MgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNzU1NTI2OTgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzQ5ODkyNDQyCisJLmxvbmcJMzIyMTc3Mzg2MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzkxMzE5NzQwNQorCS5sb25nCTEwNzQ1MDExODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0OTQwMzQ1MjIKKwkubG9uZwkzMjIyMjIyODE4CisJLmxvbmcJMTI2NDczODc2MworCS5sb25nCTMyMjA1Njg0NTIKKwkubG9uZwkxNTIwMjkzOTA2CisJLmxvbmcJMTA3NDg5OTYzMgorCS5sb25nCTE5NTg5MzY2MDAKKwkubG9uZwkxMDczNDExNDkzCisJLmxvbmcJMjEzMzY0OTYzNQorCS5sb25nCTMyMjI1MzU4MTkKKwkubG9uZwk0MjcwNzQwNzMwCisJLmxvbmcJMzIyMTA1ODM1NgorCS5sb25nCTE3Mjg5MzAxODkKKwkubG9uZwkxMDc1MjI0ODQ0CisJLmxvbmcJMTMwMzk5ODU1MgorCS5sb25nCTEwNzM3OTkxODYKKwkubG9uZwk2MTg2MTE5MzMKKwkubG9uZwkzMjIyOTAzOTAzCisJLmxvbmcJMTc2OTgyODA0NgorCS5sb25nCTMyMjE0MjIxOTAKKwkubG9uZwkyMjAwNTM3OTg2CisJLmxvbmcJMTA3NTY0MTQyMQorCS5sb25nCTQzMzM2MTExMAorCS5sb25nCTEwNzQxMDUzNjkKKwkubG9uZwk3MTk1OTU2MDAKKwkubG9uZwkzMjE5ODAwODMyCisJLmxvbmcJMjk0NTI3MjA2CisJLmxvbmcJMTAxNDY1NjQ0MAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzgxMTc4ODIxNgorCS5sb25nCTMyMTg0MDA1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzI0MzIyNzY4CisJLmxvbmcJMzIyMDM2NDk1NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNjQzMTUzMDQ4CisJLmxvbmcJMTA3MjkwNTgxNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI4NTA3OTQ1OAorCS5sb25nCTMyMjA0MTIyMDYKKwkubG9uZwkzOTEyNTI0NzMzCisJLmxvbmcJMzIyMDEwNjYzMQorCS5sb25nCTExODM2MjI3MgorCS5sb25nCTEwNzI5NTI3NTQKKwkubG9uZwk0MTA3NzY3OTcyCisJLmxvbmcJMTA3MjgyNzQwOAorCS5sb25nCTI2ODk1MDI4ODMKKwkubG9uZwkzMjIwNDYwNTcwCisJLmxvbmcJOTQ2NTIzMzQ3CisJLmxvbmcJMzIyMDI1NjQxNAorCS5sb25nCTU3MzIwNDE4OQorCS5sb25nCTEwNzMwMDE3NjEKKwkubG9uZwk1ODE1MzE1MTgKKwkubG9uZwkxMDcyODI2MzkxCisJLmxvbmcJMTM4NjIzNjUyNgorCS5sb25nCTMyMjA1MTA2MDcKKwkubG9uZwkzNzE4OTA1OTA1CisJLmxvbmcJMzIyMDMxNjQ3MQorCS5sb25nCTExNDU1NTgxNDAKKwkubG9uZwkxMDczMDUyNjczCisJLmxvbmcJNTEzNTcyNjM3CisJLmxvbmcJMTA3Mjg2MTk2OQorCS5sb25nCTcxNjcwMDA0OAorCS5sb25nCTMyMTk0ODEwMTYKKwkubG9uZwk1NDcxMjY3NjkKKwkubG9uZwkzMTYzMDA3MTczCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxMDk3OTA3Mzk4CisJLmxvbmcJMTA3MTQyMDEyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNDIyODA3Mjk3CisJLmxvbmcJMzIxOTEyNDQ5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTE1MTY1ODA1MworCS5sb25nCTEwNzE0OTQ3MTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTkyOTYwNzA3MQorCS5sb25nCTMyMTg4Mjk5ODgKKwkubG9uZwkxMDM3MDQ5MDM0CisJLmxvbmcJMzIxOTUyMDk1MworCS5sb25nCTI3ODY5Mjg2NTcKKwkubG9uZwkxMDcxMjE1MjgyCisJLmxvbmcJMTQ0NzQwNjg1OQorCS5sb25nCTEwNzIyNjUyMDkKKwkubG9uZwkzNDkwOTUyMTA3CisJLmxvbmcJMzIxODU3NDQ5OQorCS5sb25nCTMyMDUyMzI5MTYKKwkubG9uZwkzMjE5NDUyMzA2CisJLmxvbmcJMTI5NzM0NDMwNAorCS5sb25nCTEwNzA5NzcxMjAKKwkubG9uZwkxMDY2MTEwOTc2CisJLmxvbmcJMTA3MTk0NjAzNQorCS5sb25nCTM4MDM3MjE0ODAKKwkubG9uZwkzMjE4MzU0NzMwCisJLmxvbmcJMTQ5Njc1NDIyOQorCS5sb25nCTMyMTkyOTA4NDkKKwkubG9uZwkyOTgyNTUwNjgzCisJLmxvbmcJMTA3MDc3MzI0MworCS5sb25nCTQwMTQ0NDE5ODkKKwkubG9uZwkxMDcxNzM2MjIyCisJLmxvbmcJNDE5OTY4MjM2CisJLmxvbmcJMzIxOTIwMDY5NQorCS5sb25nCTM0NTEyNjY1MzgKKwkubG9uZwkxMDE1OTYxMTYzCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyOTYwMjY3MjM1CisJLmxvbmcJMTA3MDc0NTg0MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDU4Nzk0NTYyCisJLmxvbmcJMzIxNzg4MjE5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1Nzc3NzQ4OQorCS5sb25nCTEwNzAxMzc2MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMjQzNTk1MTcKKwkubG9uZwkzMjE3MzYwMTc5CisJLmxvbmcJMjYxNjA0MDIzOAorCS5sb25nCTMyMTkwNjY1ODUKKwkubG9uZwkxNjA5MDI0NjM2CisJLmxvbmcJMTA2OTY3NTA4OAorCS5sb25nCTI1MjkyNDA1NDkKKwkubG9uZwkxMDcxODM2NjMzCisJLmxvbmcJMTUxMDEyODYwMAorCS5sb25nCTMyMTY5MjM3NjEKKwkubG9uZwkyMjUxNjk3MTg0CisJLmxvbmcJMzIxODczNzMzNQorCS5sb25nCTEyNjI3NjE0NTMKKwkubG9uZwkxMDY5MTQyODUwCisJLmxvbmcJMTI2MzA5MTg1NworCS5sb25nCTEwNzExOTA0NjEKKwkubG9uZwkzMDQzMzgzNDg2CisJLmxvbmcJMzIxNjM2ODgzOQorCS5sb25nCTI0NzY5MzI0NzAKKwkubG9uZwkzMjE4MzI1NjUwCisJLmxvbmcJMzY1OTk5NTAyOAorCS5sb25nCTEwNjg2NjkyMDAKKwkubG9uZwk4NTU4OTE3NTUKKwkubG9uZwkxMDcwNjk2ODk0CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTg3Njg1MDUKKwkubG9uZwkzMDYyNjMzNTc1CisJLmxvbmcJMzE2MTQ5MjI3MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU1MDk0MDQ3MQorCS5sb25nCTEwNjk5MzgyMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ2NzU4Mjc4MgorCS5sb25nCTMyMTY3NDAwMzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE2MjE1MDA5NgorCS5sb25nCTEwNjg5NDY0MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3MDI3OTQyMzcKKwkubG9uZwkzMjE2MDYyODAwCisJLmxvbmcJMzYzMTkxOTI5MQorCS5sb25nCTMyMTg0MjA1NzQKKwkubG9uZwkzNDU2ODIxNDEzCisJLmxvbmcJMTA2ODIxNzIxOAorCS5sb25nCTIwMzEzNjY0MzgKKwkubG9uZwkxMDcxNDk1NzQ1CisJLmxvbmcJMTU5NjY2NDAyMAorCS5sb25nCTMyMTUyODI5MjkKKwkubG9uZwkxNTA5MDM4NzAxCisJLmxvbmcJMzIxODA4NTI5MQorCS5sb25nCTU4MzE3MTQ3NworCS5sb25nCTEwNjc1MTAxNDgKKwkubG9uZwkzNzg1MzQ0NjgyCisJLmxvbmcJMTA3MDYxODQ3NgorCS5sb25nCTI0MDIwMzYwNDgKKwkubG9uZwkzMjE0NTU5Mzg0CisJLmxvbmcJMzIzMzAxODQxMgorCS5sb25nCTMyMTczOTY4MzQKKwkubG9uZwk0MTEyODA1NjgKKwkubG9uZwkxMDY2NzEwNTU2CisJLmxvbmcJMTA2NTU4NDE5MgorCS5sb25nCTEwNjk3NDc4OTYKKwkubG9uZwk4OTUyNDczMjQKKwkubG9uZwkzMjE4MzAzNDk2CisJLmxvbmcJNTAwMDc4OTA5CisJLmxvbmcJMTAxMzgwNTEzMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNzI5OTgzODQzCisJLmxvbmcJMTA2ODk5NDE5NAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNTEyNTQ1OTU1CisJLmxvbmcJMzIxNTYwMjY5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEyNzA0ODY5OAorCS5sb25nCTEwNjc5MDk0NTkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIzMDAyMDA0NTAKKwkubG9uZwkzMjE0NzM4NDE1CisJLmxvbmcJMzU5MzI1MDI5NgorCS5sb25nCTMyMTc3MTcyMDkKKwkubG9uZwkzMDA5MzY1NTQ0CisJLmxvbmcJMTA2NjkwMjExNworCS5sb25nCTExMjczNzMwNTAKKwkubG9uZwkxMDcxMTczNDU3CisJLmxvbmcJMzA0NjEwMzMwNQorCS5sb25nCTMyMTM4NTQ5NDcKKwkubG9uZwkyNDU4MzQwMgorCS5sb25nCTMyMTcyMDc2MzYKKwkubG9uZwk0MDgyNTExNzU4CisJLmxvbmcJMTA2NTkxNDE5OQorCS5sb25nCTMyMjM4ODk2OTkKKwkubG9uZwkxMDcwMDIwMzY3CisJLmxvbmcJNTQ4OTI3OTg0CisJLmxvbmcJMzIxMjg5OTQwNAorCS5sb25nCTU1ODA2NTg5NworCS5sb25nCTMyMTY0MzMwNjYKKwkubG9uZwk2ODAwNzMzMTUKKwkubG9uZwkxMDY0OTQwNzI2CisJLmxvbmcJMzg4ODczMjAwCisJLmxvbmcJMTA2ODk0NDI3MAorCS5sb25nCTM3NjM2Nzk1NzYKKwkubG9uZwkzMjE3NjUxMTg5CisJLmxvbmcJMTQ5NzM2MDQwNAorCS5sb25nCTMxNTcxOTQxOTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTY0OTMxMTUyCisJLmxvbmcJMTA2NzcyOTQxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzEzMDM4MjM1CisJLmxvbmcJMzIxNDIyOTM3OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAxMzg3ODM0MgorCS5sb25nCTEwNjcxNTI2MTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2NjM0MjY4MzMKKwkubG9uZwkzMjEzMjA4OTMxCisJLmxvbmcJMzY5MzI4NDI1MQorCS5sb25nCTMyMTY2MDI0NTYKKwkubG9uZwk2NTA4NTIyMzIKKwkubG9uZwkxMDY1ODgyMzc2CisJLmxvbmcJMTk5NjI0NTM4MQorCS5sb25nCTEwNzEwMDAyNjUKKwkubG9uZwkyMDA4NzQ2MTcwCisJLmxvbmcJMzIxMjE0Nzg0NQorCS5sb25nCTMwNTU4NDI1OTMKKwkubG9uZwkzMjE2MDYyNDk0CisJLmxvbmcJMTQ5NTQwNjM0OAorCS5sb25nCTEwNjQ2NTI0MzcKKwkubG9uZwkyMjY5NTMwMTU3CisJLmxvbmcJMTA2OTcxMTIzNQorCS5sb25nCTI4NTU2MzY5NgorCS5sb25nCTMyMTEwNjAxMTMKKwkubG9uZwkxMDQ2ODk3NDQwCisJLmxvbmcJMzIxNTE4OTUxMworCS5sb25nCTIzMzQyOTczMQorCS5sb25nCTEwNjM0NTMxNTEKKwkubG9uZwk1MjIwNDU5NTgKKwkubG9uZwkxMDY4NDc2NTkwCisJLmxvbmcJMjM1NDc4NTY5OAorCS5sb25nCTMyMTY1ODY0MjcKKwkubG9uZwkxMzE3NTk5MTQxCisJLmxvbmcJMzE1OTkxNTc4MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjgyODIzMDEwNQorCS5sb25nCTEwNjU2MDY2MjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJQ3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlDdGFibGUsNTYzMgorCS5hbGlnbiAxNgorTUFTS18zNToKKwkubG9uZwk0Mjk0NzA1MTUyCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJTUFTS18zNSxAb2JqZWN0CisJLnNpemUJTUFTS18zNSwxNgorCS5hbGlnbiAxNgorUV8xMToKKwkubG9uZwkzMTAzNjczNzE5CisJLmxvbmcJMTA2NTUwOTAxOAorCS50eXBlCVFfMTEsQG9iamVjdAorCS5zaXplCVFfMTEsOAorCS5zcGFjZSA4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorUV85OgorCS5sb25nCTMyMTMxMzAzMDcKKwkubG9uZwkxMDY2ODIwNzY4CisJLnR5cGUJUV85LEBvYmplY3QKKwkuc2l6ZQlRXzksOAorCS5zcGFjZSA4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorUV83OgorCS5sb25nCTEzODg2MjgxMzkKKwkubG9uZwkxMDY4MjEyNjY2CisJLnR5cGUJUV83LEBvYmplY3QKKwkuc2l6ZQlRXzcsOAorCS5zcGFjZSA4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorUV81OgorCS5sb25nCTI4NTgxMjU1MAorCS5sb25nCTEwNjk2MTc0MjUKKwkudHlwZQlRXzUsQG9iamVjdAorCS5zaXplCVFfNSw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitRXzM6CisJLmxvbmcJMTQzMTY1NTk1NAorCS5sb25nCTEwNzA5NDU2MjEKKwkudHlwZQlRXzMsQG9iamVjdAorCS5zaXplCVFfMyw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitQSV9JTlZfVEFCTEU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNzM0MjYxMTAyCisJLmxvbmcJMTMxMzA4NDcxMworCS5sb25nCTQyMzA0MzY4MTcKKwkubG9uZwk0MTEzODgyNTYwCisJLmxvbmcJMzY4MDY3MTEyOQorCS5sb25nCTEwMTEwNjA4MDEKKwkubG9uZwk0MjY2NzQ2Nzk1CisJLmxvbmcJMzczNjg0NzcxMworCS5sb25nCTMwNzI2MTgwNDIKKwkubG9uZwkxMTEyMzk2NTEyCisJLmxvbmcJMTA1NDU5NDM0CisJLmxvbmcJMTY0NzI5MzcyCisJLmxvbmcJNDI2MzM3MzU5NgorCS5sb25nCTI5NzIyOTcwMjIKKwkubG9uZwkzOTAwODQ3NjA1CisJLmxvbmcJNzg0MDI0NzA4CisJLmxvbmcJMzkxOTM0MzY1NAorCS5sb25nCTMwMjYxNTcxMjEKKwkubG9uZwk5NjU4NTg4NzMKKwkubG9uZwkyMjAzMjY5NjIwCisJLmxvbmcJMjYyNTkyMDkwNworCS5sb25nCTMxODcyMjI1ODcKKwkubG9uZwk1MzYzODU1MzUKKwkubG9uZwkzNzI0OTA4NTU5CisJLmxvbmcJNDAxMjgzOTMwNworCS5sb25nCTE1MTA2MzI3MzUKKwkubG9uZwkxODMyMjg3OTUxCisJLmxvbmcJNjY3NjE3NzE5CisJLmxvbmcJMTMzMDAwMzgxNAorCS5sb25nCTI2NTcwODU5OTcKKwkubG9uZwkxOTY1NTM3OTkxCisJLmxvbmcJMzk1NzcxNTMyMworCS5sb25nCTEwMjM4ODM3NjcKKwkubG9uZwkyMzIwNjY3MzcwCisJLmxvbmcJMTgxMTYzNjE0NQorCS5sb25nCTUyOTM1ODA4OAorCS5sb25nCTE0NDMwNDk1NDIKKwkubG9uZwk0MjM1OTQ2OTIzCisJLmxvbmcJNDA0MDE0NTk1MworCS50eXBlCVBJX0lOVl9UQUJMRSxAb2JqZWN0CisJLnNpemUJUElfSU5WX1RBQkxFLDE2NAorCS5zcGFjZSAxMiwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK1BJXzQ6CisJLmxvbmcJMAorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwkxMTc1NTYxNzY2CisJLmxvbmcJMTA0ODkwODA0MworCS50eXBlCVBJXzQsQG9iamVjdAorCS5zaXplCVBJXzQsMTYKKwkuYWxpZ24gOAorUVFfMjoKKwkubG9uZwkxNzM0ODE2Njg3CisJLmxvbmcJMTAyNjc0NjI5NworCS50eXBlCVFRXzIsQG9iamVjdAorCS5zaXplCVFRXzIsOAorCS5hbGlnbiA4CitPTkU6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkUsQG9iamVjdAorCS5zaXplCU9ORSw4CisJLmFsaWduIDgKK1RXT19QT1dfNTU6CisJLmxvbmcJMAorCS5sb25nCTExMzAzNjQ5MjgKKwkudHlwZQlUV09fUE9XXzU1LEBvYmplY3QKKwkuc2l6ZQlUV09fUE9XXzU1LDgKKwkuYWxpZ24gOAorVFdPX1BPV19NNTU6CisJLmxvbmcJMAorCS5sb25nCTEwMTUwMjE1NjgKKwkudHlwZQlUV09fUE9XX001NSxAb2JqZWN0CisJLnNpemUJVFdPX1BPV19NNTUsOAorCS5hbGlnbiA0CitORUdfWkVSTzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCU5FR19aRVJPLEBvYmplY3QKKwkuc2l6ZQlORUdfWkVSTyw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDJjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfdGFuLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW4uOS0uLl9fX3RhZ192YWx1ZV90YW4uMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfdGFuLjMtLi5fX190YWdfdmFsdWVfdGFuLjEKKwkuNGJ5dGUgMHgwMjgzMTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfdGFuLjUtLi5fX190YWdfdmFsdWVfdGFuLjMKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW4uNi0uLl9fX3RhZ192YWx1ZV90YW4uNQorCS40Ynl0ZSAweDA0YzMxMDBlCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Rhbi44LS4uX19fdGFnX3ZhbHVlX3Rhbi42CisJLjJieXRlIDB4MDgwZQorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfdGFuaC5TIGIvbGlibS94ODZfNjQvc190YW5oLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM4ZjliZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NfdGFuaC5TCkBAIC0wLDAgKzEsMTM5MiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIHRhbmgoeCk9KGV4cCh4KS1leHAoLXgpKS8oZXhwKHgpK2V4cCgteCkpPSgxLWV4cCgtMip4KSkvKDErZXhwKC0yKngpKQorLy8KKy8vIExldCB8eHw9eEgreEwgKHVwcGVyIDI2IGJpdHMsIGxvd2VyIDI3IGJpdHMpCisvLyBsb2cyKGUpIHJvdW5kZWQgdG8gMjYgYml0cyAoaGlnaCBwYXJ0KSBwbHVzIGEgZG91YmxlIHByZWNpc2lvbiBsb3cgcGFydCBpcworLy8gICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vIExldCB4SCpMMkVIPWsrZityYCwgd2hlcmUgKGsrZikqMl44KjI9aW50KHhIKkwyRUgqMl45KSwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI4LCBrIGludGVnZXIKKy8vIDJeey1mfSBpcyBhcHByb3hpbWF0ZWQgYXMgVG5bZl0rRG5bZl0KKy8vIFRuIHN0b3JlcyB0aGUgaGlnaCA1MyBiaXRzLCBEbiBzdG9yZXMgKDJeey1mfS1UbltmXSkgcm91bmRlZCB0byBkb3VibGUgcHJlY2lzaW9uCisvLworLy8gIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey05fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgZm9yIHx4fCBpbiBbMjMvNjQsMyoyXjcpCisvLyBlXnstMip8eHx9PTJeey1rLWZ9KjJeey1yfSB+IDJeey1rfSooVG4rRG4pKigxK3ApPShUMCtEMCkqKDErcCkKKy8vCisvLyBGb3IgfHh8IGluIFsyXnstNH0sMl41KToKKy8vICAgICAgICAgMl57LXJ9LTEgfiBwPWMxKnIrYzIqcl4yKy4uK2M1KnJeNQorLy8gICAgICBMZXQgUj0xLygxK1QwK3AqVDApLCB0cnVuY2F0ZWQgdG8gMzUgc2lnbmlmaWNhbnQgYml0cworLy8gIFI9MS8oMStUMCtEMCtwKihUMCtEMCkpKigxK2VwcyksIHxlcHN8PDJeey0zM30KKy8vICAxK1QwK0QwK3AqKFQwK0QwKT1LSCtLTCwgd2hlcmUKKy8vICAgICAgIEtIPSgxK1QwK2MxKnIqVDApX2hpZ2ggKGxlYWRpbmcgMTcgYml0cykKKy8vICAgICAgIEtMPVQwX2xvdytEMCsoYzEqcipUMClfbG93K2MxKnIqRDArKGMyKnJeMisuLmM1KnJeNSkqVDAKKy8vICBlcHMgfiAoUipLSC0xKStSKktMCisvLyAgMS8oMStUMCtEMCtwKihUMCtEMCkpIH4gUi1SKmVwcworLy8gIFRoZSByZXN1bHQgaXMgYXBwcm94aW1hdGVkIGFzICgxLVQwLUQwLShUMCtEMCkqcCkqKFItUiplcHMpCisvLyAgMS1UMC1EMC0oVDArRDApKnA9LSgoS0gtMikrS0wpCisvLyAgICBUaGUgcmVzdWx0IGlzIGZvcm1lZCBhcworLy8gICAgKEtILTIpKlIrKC0oS0gtMikqUiplcHMrKEtMKlItS0wqUiplcHMpKSwgd2l0aCB0aGUgY29ycmVjdCBzaWduCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0IGF0IHRoZSBlbmQKKy8vCisvLyBGb3IgfHh8IGluIFsyXnstNjR9LDJeey00fSk6CisvLyAgQSBUYXlsb3Igc2VyaWVzIGV4cGFuc2lvbiBpcyB1c2VkICAoeCtwMyp4XjMrLi4rcDEzKnheezEzfSkKKy8vCisvLyBGb3IgfHh8PDJeey02NH06ICB4IGlzIHJldHVybmVkCisvLworLy8gRm9yIHx4fD49Ml4zMjogcmV0dXJuICsvLTEKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHRhbmgoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgdGFuaChJTkYpID0gdGhhdCBJTkYKKy8vICB0YW5oKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHRhbmgKK0VOVFJZKHRhbmgpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfdGFuaC4xOgorICAgICAgICBwdXNocSAgICAgJXJzaQorLi5fX190YWdfdmFsdWVfdGFuaC4zOgorLi5CMS4yOgorICAgICAgICBtb3ZzZCAgICAgSEFMRk1BU0soJXJpcCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIEwyRSglcmlwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgrTDJFKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIFNoaWZ0ZXIoJXJpcCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjMwNCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE0NCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmFwZCAgICBjdiglcmlwKSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDI1NSwgJWVjeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBsZWEgICAgICAgVDJfbmVnX2YoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyOCwlcmN4LDgpLCAleG1tNQorICAgICAgICBzaHJsICAgICAgJDQsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ2NTUyMCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIG5lZ2wgICAgICAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2K2N2KCVyaXApLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMzIrY3YoJXJpcCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNzgsICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgYW5kcGQgICAgIE1BU0szKCVyaXApLCAleG1tNAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG1vdnNkICAgICBSTUFTSyglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBhbmRwZCAgICAgTUFTSzMoJXJpcCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW00LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgVFdPTUFTSyglcmlwKSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICB4b3JsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8wLjAuMToKKyAgICAgICAgYWRkbCAgICAgICQ5NjAsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxMTA0LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorICAgICAgICBtb3ZhcGQgICAgcHYoJXJpcCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMTYrcHYoJXJpcCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDMyK3B2KCVyaXApLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTY0NDgsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisgICAgICAgIGNtcGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4xCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNzM5MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzIuMC4xOgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTUzNDQsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgb3JsICAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVheAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF82LjAuMToKKy4uQjEuNDoKKyAgICAgICAgcG9wcSAgICAgICVyY3gKKy4uX19fdGFnX3ZhbHVlX3RhbmguNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfdGFuaC41OgorRU5EKHRhbmgpCisjIC0tIEVuZCAgdGFuaAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorTDJFOgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDgyNTk0NjMxCisJLmxvbmcJNDE2NjkwMTU3MgorCS5sb25nCTEwNTUxNzQxNTUKKwkudHlwZQlMMkUsQG9iamVjdAorCS5zaXplCUwyRSwxNgorCS5hbGlnbiAxNgorU2hpZnRlcjoKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkzMjc1MjI3MTM2CisJLnR5cGUJU2hpZnRlcixAb2JqZWN0CisJLnNpemUJU2hpZnRlciwxNgorCS5hbGlnbiAxNgorY3Y6CisJLmxvbmcJMzg4NDYwNzI4MQorCS5sb25nCTMxNjgxMzExOTkKKwkubG9uZwkzNjA3NDA0NzM1CisJLmxvbmcJMzE5MDU4MjAyNAorCS5sb25nCTE4NzQ0ODA3NTkKKwkubG9uZwkxMDMyMDQxMTMxCisJLmxvbmcJNDI4Njc2MDMzNAorCS5sb25nCTEwNTM3MzY4OTMKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMTE0NDc3MAorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJY3YsQG9iamVjdAorCS5zaXplCWN2LDQ4CisJLmFsaWduIDE2CitUMl9uZWdfZjoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTc5NzkyMzgwMQorCS5sb25nCTEwNzI2ODc1NzcKKwkubG9uZwkxOTUwNTQ3NDI3CisJLmxvbmcJMTAxMzIyOTA1OQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzI2ODE5MjIKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMjA2NzE4OAorCS5sb25nCTkxNTU5MjQ2OAorCS5sb25nCTEwNzI2NzYyODIKKwkubG9uZwkzNTI5NDc4OTQKKwkubG9uZwkzMTYxMDI0MzcxCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzI2NzA2NTcKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNDQ1MDI1OQorCS5sb25nCTM1OTI5MjI1CisJLmxvbmcJMTA3MjY2NTA0OAorCS5sb25nCTI4MDk3ODgwNDEKKwkubG9uZwkzMTU5NDM2OTY4CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTIwMzg5NzM2ODgKKwkubG9uZwkxMDcyNjUzODc0CisJLmxvbmcJODkyOTQxMzc0CisJLmxvbmcJMTAxNjA0NjQ1OQorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTEyMjI0NzIzMDgKKwkubG9uZwkxMDcyNjQyNzYxCisJLmxvbmcJMTA1NDM1NzQ3MAorCS5sb25nCTMxNjEwMjEwMTgKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDcyNjM3MjI3CisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTUyNTk1NTcKKwkubG9uZwk0ODE3MDYyODIKKwkubG9uZwkxMDcyNjMxNzA4CisJLmxvbmcJMTY5NjA3OTE3MworCS5sb25nCTMxNjI3MTA1MjgKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MjYyNjIwMworCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE1OTI0NzI0CisJLmxvbmcJMjcxOTUxNTkyMAorCS5sb25nCTEwNzI2MjA3MTQKKwkubG9uZwkyNzYwMzMyOTQxCisJLmxvbmcJMTAxNTEzNzkzMworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzI2MTUyNDAKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2MzMyOTUyMworCS5sb25nCTIyNTYzMjUyMzAKKwkubG9uZwkxMDcyNjA5NzgwCisJLmxvbmcJNTgwMTE3NzQ2CisJLmxvbmcJMTAxNTMxNzI5NQorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDcyNjA0MzM1CisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2MzQ2MjY5MQorCS5sb25nCTIwMDk5NzA0OTYKKwkubG9uZwkxMDcyNTk4OTA1CisJLmxvbmcJMjE1OTAzOTY2NQorCS5sb25nCTMxNjI1NzI5NDgKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJNjEwNzU4MDA2CisJLmxvbmcJMTA3MjU4ODA4OQorCS5sb25nCTE5NjUyMDkzOTcKKwkubG9uZwkzMTYxODY2MjMyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTk5MTM1ODQ4MgorCS5sb25nCTEwNzI1NzczMzEKKwkubG9uZwk4Mzg3MTUwMTkKKwkubG9uZwkzMTYzMTU3NjY4CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MjU3MTk3NAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTYzMDEwNTk5CisJLmxvbmcJMTc5NjgzMjUzNQorCS5sb25nCTEwNzI1NjY2MzEKKwkubG9uZwkzMTc2OTU1NzE2CisJLmxvbmcJMzE2MDU4NTUxMworCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTE2Nzk1NTgyMzIKKwkubG9uZwkxMDcyNTU1OTg5CisJLmxvbmcJMjM5MDM0MjI4NworCS5sb25nCTMxNjMzMzM5NzAKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MjU1MDY4OQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE1MjA4NTM1CisJLmxvbmcJMzU5NDE1ODg2OQorCS5sb25nCTEwNzI1NDU0MDQKKwkubG9uZwkyNDU2NTIxNzAwCisJLmxvbmcJMzE2MzI1NjU2MQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MjU0MDEzNAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE1ODE2OTYwCisJLmxvbmcJMTkxMjU2MTc4MQorCS5sb25nCTEwNzI1MzQ4NzcKKwkubG9uZwkzMTQ3NDk1MTAyCisJLmxvbmcJMTAxNTY3ODI1MworCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM4OTg3OTU3MzEKKwkubG9uZwkxMDcyNTI0NDA2CisJLmxvbmcJMTI0OTk5NDE0NAorCS5sb25nCTEwMTE4Njk4MTgKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MjUxOTE5MgorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE0MTY0NzM4CisJLmxvbmcJMzkzOTE0ODI0NgorCS5sb25nCTEwNzI1MTM5OTIKKwkubG9uZwkzMjEwMzUyMTQ4CisJLmxvbmcJMTAxNTI3NDMyMworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzI1MDg4MDcKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2MzM3NTczOQorCS5sb25nCTcyMTk5NjEzNgorCS5sb25nCTEwNzI1MDM2MzUKKwkubG9uZwk1NjM3NTQ3MzQKKwkubG9uZwkxMDE1MzcxMzE4CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzI0OTg0NzcKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2MzMzOTgzMQorCS5sb25nCTE1MzI3MzQzMjQKKwkubG9uZwkxMDcyNDkzMzMzCisJLmxvbmcJMzA5NDIxNjUzNQorCS5sb25nCTMxNjMxNjI4NTcKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MjQ4ODIwMworCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYyMzYzOTYzCisJLmxvbmcJNzc4OTAxMTA5CisJLmxvbmcJMTA3MjQ4MzA4NworCS5sb25nCTIyNDgxODM5NTUKKwkubG9uZwkzMTYxMjY4NzUxCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzI0Nzc5ODQKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxMzI1MzA2NworCS5sb25nCTE0NjQ5NzY2MDMKKwkubG9uZwkxMDcyNDcyODk2CisJLmxvbmcJMzUwNzI5MjQwNQorCS5sb25nCTMxNjE5Nzc1MzQKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJMjMwNzQ0Mjk5NQorCS5sb25nCTEwNzI0NjI3NjAKKwkubG9uZwkzMTkwMTE3NzIxCisJLmxvbmcJMzE2MjQwNDUzOQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzI0NTc3MTMKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNTE4NzUzMworCS5sb25nCTIwMjk3MTQyMTAKKwkubG9uZwkxMDcyNDUyNjc5CisJLmxvbmcJNjEzNjYwMDc5CisJLmxvbmcJMTAxNTA5OTE0MworCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDcyNDQ3NjU5CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTU3NjAxODMKKwkubG9uZwkzNjU3MDY1NzcyCisJLmxvbmcJMTA3MjQ0MjY1MgorCS5sb25nCTM5OTAyNTYyMworCS5sb25nCTMxNjI5NTcwNzgKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MjQzNzY1OQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE0MDQyNzI1CisJLmxvbmcJMTYzMTY5NTY3NworCS5sb25nCTEwNzI0MzI2ODAKKwkubG9uZwkyNzE3NjMzMDc2CisJLmxvbmcJMzE2MjM0NDAyNgorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDcyNDI3NzE0CisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjM0ODc2OTAKKwkubG9uZwkzMjg3NTIzODQ3CisJLmxvbmcJMTA3MjQyMjc2MQorCS5sb25nCTE2MjU5NzE1MzkKKwkubG9uZwkzMTU3MDA5OTU1CisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTMwODAzNTE1MTkKKwkubG9uZwkxMDcyNDEyODk2CisJLmxvbmcJMzM3OTEyNjc4OAorCS5sb25nCTMxNTcyMTgwMDEKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDcyNDA3OTg0CisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2MzQ4NzQ0MworCS5sb25nCTQwNjI2NjEwOTIKKwkubG9uZwkxMDcyNDAzMDg0CisJLmxvbmcJMTQyMjYxNjAwNgorCS5sb25nCTMxNjMyNTUzMTgKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MjM5ODE5OAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYwNzU4MzUxCisJLmxvbmcJNzAzNzEwNTA2CisJLmxvbmcJMTA3MjM5MzMyNgorCS5sb25nCTEzODQ2NjA4NDYKKwkubG9uZwkxMDE1MTk1ODkxCisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzIzODg0NjYKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2MzMyMDc5OQorCS5sb25nCTM2NDMzMzQ4OQorCS5sb25nCTEwNzIzODM2MjAKKwkubG9uZwkzOTIzNzM3NzQ0CisJLmxvbmcJMzE2MTQyMTM3MworCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDcyMzc4Nzg2CisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE1OTUyMzQyMgorCS5sb25nCTE4MjIwNjcwMjYKKwkubG9uZwkxMDcyMzczOTY2CisJLmxvbmcJMTI0MTk5NDk1NgorCS5sb25nCTEwMTUzNDAyOTAKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkzODYxMDUwMTExCisJLmxvbmcJMTA3MjM2NDM2NAorCS5sb25nCTI1NDg5Mzc3MworCS5sb25nCTMxNjI4MTMxODAKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwk5NzcwMjA3ODgKKwkubG9uZwkxMDcyMzU0ODE1CisJLmxvbmcJMzA2NTEwMDUxNworCS5sb25nCTEwMTU1NDE1NjMKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJNTU3MTQ5ODgyCisJLmxvbmcJMTA3MjM0NTMxNworCS5sb25nCTM2NzI3MjA3MDkKKwkubG9uZwkxMDE0NTM3MjY1CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMTQwNTE2OTI0MQorCS5sb25nCTEwNzIzMzU4NzAKKwkubG9uZwkyOTk4NTM5Njg5CisJLmxvbmcJMzE2MjgzMDk1MQorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzIzMzExNjYKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNTc5NDU1OAorCS5sb25nCTIzMzEyNzEyNTAKKwkubG9uZwkxMDcyMzI2NDc0CisJLmxvbmcJODEyMDU3NDQ2CisJLmxvbmcJMTAxMjIwNzQ0NgorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDcyMzIxNzk1CisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjMzNjkzMjYKKwkubG9uZwkyMTUyMDczOTQ0CisJLmxvbmcJMTA3MjMxNzEyOQorCS5sb25nCTE0ODY4NjA1NzYKKwkubG9uZwkzMTYzMjAzNDU2CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzIzMTI0NzUKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNTQyNzE2NAorCS5sb25nCTM5ODU1NTM1OTUKKwkubG9uZwkxMDcyMzA3ODM0CisJLmxvbmcJNDAwMjE0NjA2MgorCS5sb25nCTEwMTU4MzQxMzYKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJMjM2NjEwODMxOAorCS5sb25nCTEwNzIyOTg1OTAKKwkubG9uZwkyODY3OTg1MTAyCisJLmxvbmcJMzE2MTc2MjI1NAorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzIyOTM5ODcKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxMzQ1ODEyMgorCS5sb25nCTQyNDM5MjkxNworCS5sb25nCTEwNzIyODkzOTYKKwkubG9uZwkyNzQ5MjAyOTk1CisJLmxvbmcJMzE2MjgzODcxOAorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDcyMjg0ODE3CisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTM3NDI2NjIKKwkubG9uZwkxMjk3MzUwMTU3CisJLmxvbmcJMTA3MjI4MDI1MQorCS5sb25nCTEzMDgwMjIwNDAKKwkubG9uZwkzMTYzNDEyNTU4CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzIyNzU2OTcKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MjYwMDM4MQorCS5sb25nCTM4MzMyMDk1MDYKKwkubG9uZwkxMDcyMjcxMTU1CisJLmxvbmcJMjcyMjkyMDY4NAorCS5sb25nCTEwMTM3NTQ4NDIKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMjU5MTQ1MzM2MworCS5sb25nCTEwNzIyNjIxMDkKKwkubG9uZwkyMTMyMzk2MTgyCisJLmxvbmcJMzE1OTA3NDE5OAorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDcyMjU3NjA0CisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjA4MjA2MDQKKwkubG9uZwk3Mjc2ODUzNDkKKwkubG9uZwkxMDcyMjUzMTEyCisJLmxvbmcJMjAzODI0NjgwOQorCS5sb25nCTMxNjIzNTg3NDIKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MjI0ODYzMQorCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTU5ODQyNzU5CisJLmxvbmcJMTQwMzY2MjMwNgorCS5sb25nCTEwNzIyNDQxNjMKKwkubG9uZwkyNzg4ODA5NTk5CisJLmxvbmcJMzE2MTY3MTAwNworCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzIyMzk3MDcKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTYzNDEyMDg5CisJLmxvbmcJMzQ5MjI5Mzc3MAorCS5sb25nCTEwNzIyMzUyNjIKKwkubG9uZwkyMjQ4MDMyMjEwCisJLmxvbmcJMTAxNTM4NjgyNgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkxNTc3NjA4OTIxCisJLmxvbmcJMTA3MjIyNjQxMAorCS5sb25nCTE4NzU0ODk1MTAKKwkubG9uZwkzMTYyOTY4Mzk0CisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MjIyMjAwMgorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjA0NjI2ODYKKwkubG9uZwkzMTM0NTkyODg4CisJLmxvbmcJMTA3MjIxNzYwNQorCS5sb25nCTQyMzIyNjY4NjIKKwkubG9uZwkxMDE1OTkxMTM0CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzIyMTMyMjEKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNTQ3NDY3MworCS5sb25nCTI3NTkzNTAyODcKKwkubG9uZwkxMDcyMjA4ODQ4CisJLmxvbmcJMTE0ODUyNjYzNAorCS5sb25nCTEwMTU4OTQ5MzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMzY0MzkwOTE3NAorCS5sb25nCTEwNzIyMDAxMzgKKwkubG9uZwkzNTM3NTg2MTA5CisJLmxvbmcJMTAxNDM1NDY0NworCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDcyMTk1ODAxCisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjM1MzkxOTIKKwkubG9uZwkzOTYzMTk1MjEKKwkubG9uZwkxMDcyMTkxNDc2CisJLmxvbmcJNDE3MjQyMDgxNgorCS5sb25nCTMxNTkwNzQ2MzIKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MjE4NzE2MgorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYyMDM1ODQ0CisJLmxvbmcJNTE1NDU3NTI3CisJLmxvbmcJMTA3MjE4Mjg2MAorCS5sb25nCTgzNjcwOTMzMworCS5sb25nCTEwMTU2NTEyMjYKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMjkxNjE1NzE0NQorCS5sb25nCTEwNzIxNzQyOTAKKwkubG9uZwkyMTk0ODc1NjUKKwkubG9uZwkxMDE1MzA5MzY3CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTIyMjQxNDU1NTMKKwkubG9uZwkxMDcyMTY1NzY3CisJLmxvbmcJMzQ4MjUyMjAzMAorCS5sb25nCTMxNjE0ODkxNjkKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDcyMTYxNTIzCisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTI5NDgyMjYKKwkubG9uZwkxNjYwOTEzMzkyCisJLmxvbmcJMTA3MjE1NzI5MAorCS5sb25nCTQyMTg1OTk2MDQKKwkubG9uZwkxMDE1MTM1NzA3CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDcyMTUzMDY5CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTYwMDkyOTIKKwkubG9uZwkxNTg3ODE0MDMKKwkubG9uZwkxMDcyMTQ4ODU5CisJLmxvbmcJMjIyMTQ2NDcxMgorCS5sb25nCTMxNjMyODY0NTMKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MjE0NDY2MAorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYxNzI0Mjc5CisJLmxvbmcJOTUwODAzNzAyCisJLmxvbmcJMTA3MjE0MDQ3MworCS5sb25nCTE2NTUzNjQ5MjYKKwkubG9uZwkxMDE1MjM3MDMyCisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzIxMzYyOTcKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE1NTcyMTUyCisJLmxvbmcJMjk4MDgwMjA1NworCS5sb25nCTEwNzIxMzIxMzIKKwkubG9uZwkzNzg2MTk4OTYKKwkubG9uZwkxMDE1NzczMzAzCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzIxMjc5NzkKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MjUxNDUyMQorCS5sb25nCTkwMzMzNDkwOQorCS5sb25nCTEwNzIxMjM4MzcKKwkubG9uZwkxNjM2NDYyMTA4CisJLmxvbmcJMTAxNTAzOTk5NworCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDcyMTE5NzA2CisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjI1NDg0NDEKKwkubG9uZwkyMjYzNTM1NzU0CisJLmxvbmcJMTA3MjExNTU4NgorCS5sb25nCTc1MjIzMzU4NgorCS5sb25nCTMxNjI2MzkwMDgKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MjExMTQ3NworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYxNTUwNDA3CisJLmxvbmcJMTcyNzI3ODcyNworCS5sb25nCTEwNzIxMDczODAKKwkubG9uZwkzNTYyNzEwNjIzCisJLmxvbmcJMTAxMTQ3MTk0MAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTI1NTU5ODQ2MTMKKwkubG9uZwkxMDcyMDk5MjE4CisJLmxvbmcJMjY1MjU1NTQ0MgorCS5sb25nCTMxNjI1NTI2OTIKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MjA5NTE1NAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYwMTI5MDgyCisJLmxvbmcJMzcyMTY4ODY0NQorCS5sb25nCTEwNzIwOTExMDAKKwkubG9uZwkzMDY5Mjc2OTM3CisJLmxvbmcJMTAxNTgzOTQwMQorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDcyMDg3MDU4CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjA1NzQyOTQKKwkubG9uZwk0MjAxOTc3NjYyCisJLmxvbmcJMTA3MjA4MzAyNgorCS5sb25nCTc0ODMzMDI1NAorCS5sb25nCTEwMTM1OTQzNTcKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkyOTc5OTYwMTIwCisJLmxvbmcJMTA3MjA3NDk5NgorCS5sb25nCTI1OTkxMDk3MjUKKwkubG9uZwkxMDE0NDk4NDkzCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTMzMzkyMDM1NzQKKwkubG9uZwkxMDcyMDY3MDA5CisJLmxvbmcJMTQ4MzQ5Nzc4MAorCS5sb25nCTMxNjI0MDg3NTQKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MjA2MzAzMgorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTYzMjcyNzEzCisJLmxvbmcJNDI3Mzc3MDQyMworCS5sb25nCTEwNzIwNTkwNjUKKwkubG9uZwkzMzgzMTgwODA5CisJLmxvbmcJMzE2MzIxODkwMQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzIwNTUxMTAKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MjI2MTU2NAorCS5sb25nCTQ4ODE4ODQxMworCS5sb25nCTEwNzIwNTExNjUKKwkubG9uZwkzMTk5ODIxMDI5CisJLmxvbmcJMTAxNTU2NDA0OAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDcyMDQ3MjMwCisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjI3MzU1NTMKKwkubG9uZwkzODcyMjU3NzgwCisJLmxvbmcJMTA3MjA0MzMwNgorCS5sb25nCTEyNTM1OTIxMDMKKwkubG9uZwkxMDE1OTU4MzM0CisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTU1MTM0OTEwNQorCS5sb25nCTEwNzIwMzU0OTEKKwkubG9uZwkzODIxOTE2MDUwCisJLmxvbmcJMzE2MjEwNjU4OQorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjQyNTk4MTg0MworCS5sb25nCTEwNzIwMjc3MTcKKwkubG9uZwkyODMwMzkwODUxCisJLmxvbmcJMzE2MzM0NjU5OQorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDcyMDIzODQ2CisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMDk1MzU3NzEKKwkubG9uZwk0MjIyMTIyNDk5CisJLmxvbmcJMTA3MjAxOTk4NQorCS5sb25nCTEyNzczNzgwNzQKKwkubG9uZwkzMTYzMjU2NzM3CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzIwMTYxMzUKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTU0Mjc2NjAKKwkubG9uZwk2NzEwMjUxMDAKKwkubG9uZwkxMDcyMDEyMjk2CisJLmxvbmcJMzgzMjAxNDM1MQorCS5sb25nCTMxNjMwMjIwMzAKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MjAwODQ2NgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE0MTQyNDMzCisJLmxvbmcJMzY4OTA3MTgyMworCS5sb25nCTEwNzIwMDQ2NDcKKwkubG9uZwkyMzIxMDA0OTk2CisJLmxvbmcJMzE2MjU1MjcxNgorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzNzIzMDM4OTMwCisJLmxvbmcJMTA3MTk5NzA0MAorCS5sb25nCTM3ODQ2NTI2NAorCS5sb25nCTMxNjI1Njk1ODIKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJNDEwOTgwNjg4NworCS5sb25nCTEwNzE5ODk0NzQKKwkubG9uZwk0MjI0MDM5NjYKKwkubG9uZwkxMDE0NDY5MjI5CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMzg5NjQ2MzA4NworCS5sb25nCTEwNzE5ODE5NDkKKwkubG9uZwkxMTM5Nzk3ODczCisJLmxvbmcJMzE2MTIzMzgwNQorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDcxOTc4MjAyCisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjI0NzAwMjEKKwkubG9uZwkyMTM1MjQxMTk4CisJLmxvbmcJMTA3MTk3NDQ2NQorCS5sb25nCTEyMzY3NDc4NzEKKwkubG9uZwkxMDEzNTg5MTQ3CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzE5NzA3MzgKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2MjgxMzE5MworCS5sb25nCTIxNzg0NjA2NzEKKwkubG9uZwkxMDcxOTY3MDIxCisJLmxvbmcJNzc3ODc4MDk4CisJLmxvbmcJMzE2Mjg0MjQ5MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDcxOTYzMzE0CisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTU2MDY0OTEKKwkubG9uZwkzMDg4NTY0NTAwCisJLmxvbmcJMTA3MTk1OTYxNworCS5sb25nCTE3NjIzMTE1MTcKKwkubG9uZwkxMDE1MDQ1NjczCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTM5MzMwNTkwMzEKKwkubG9uZwkxMDcxOTUyMjUzCisJLmxvbmcJMjEzMzM2Njc2OAorCS5sb25nCTMxNjE1MzE4MzIKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3MTk0ODU4NgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE1NjYzNDU4CisJLmxvbmcJMzc4NDQ4NjYxMAorCS5sb25nCTEwNzE5NDQ5MjkKKwkubG9uZwkxNTgxODgzMDQwCisJLmxvbmcJMzE2MTY5ODk1MworCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcxOTQxMjgyCisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTMxNzA1OTUKKwkubG9uZwkxNzIwMzk4MzkxCisJLmxvbmcJMTA3MTkzNzY0NQorCS5sb25nCTM5ODA2Nzg5NjMKKwkubG9uZwkzMTYzMzAwMDgwCisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTExMTgyOTQ1NzgKKwkubG9uZwkxMDcxOTMwNDAwCisJLmxvbmcJMjE5NzQ5NTY5NAorCS5sb25nCTMxNTk5MDk0MDEKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3MTkyNjc5MgorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMDM0Mjc3OAorCS5sb25nCTEwNjU2NjI5MzIKKwkubG9uZwkxMDcxOTIzMTk0CisJLmxvbmcJMjUzMzY3MDkxNQorCS5sb25nCTEwMTQ1MzAyMzgKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3MTkxOTYwNQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYxNTczMzQxCisJLmxvbmcJNjU0OTE5MzA2CisJLmxvbmcJMTA3MTkxNjAyNworCS5sb25nCTMyMzI5NjE3NTcKKwkubG9uZwkzMTYzMDQ3NDY5CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3MTkxMjQ1OAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNTkyOTA3MjkKKwkubG9uZwkzMjc4MzQ4MzI0CisJLmxvbmcJMTA3MTkwODg5OAorCS5sb25nCTMwNjk0OTc0MTYKKwkubG9uZwkxMDE0NzUwNzEyCisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkzNzQzMTc1MDI5CisJLmxvbmcJMTA3MTkwMTgwOAorCS5sb25nCTIwNzI4MTI0OTAKKwkubG9uZwkzMTYyMTc1MDc1CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzE4OTgyNzgKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE0Njg0MTY5CisJLmxvbmcJMTE1NjQ0MDQzNQorCS5sb25nCTEwNzE4OTQ3NTcKKwkubG9uZwkyMzUxNDUxMjQ5CisJLmxvbmcJMTAxMzk2NzA1NgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcxODkxMjQ1CisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2MzQ4ODI0OAorCS5sb25nCTMyMTk5NDI2NDQKKwkubG9uZwkxMDcxODg3NzQzCisJLmxvbmcJMzc5ODk5MDYxNgorCS5sb25nCTEwMTUzNjg4MDYKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwk0NjA0MDcwMjMKKwkubG9uZwkxMDcxODgwNzY4CisJLmxvbmcJNDIzNzE3NTA5MgorCS5sb25nCTMxNjMxMzg0NjkKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJNTg5MTk4NjY2CisJLmxvbmcJMTA3MTg3MzgzMAorCS5sb25nCTI2NjQzNDYxNzIKKwkubG9uZwkzMTYzMTU3OTYyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMjczMjQ5Mjg1OQorCS5sb25nCTEwNzE4NjY5MjkKKwkubG9uZwkyNjkxNDc5NjQ2CisJLmxvbmcJMzE2MjI1NTY4NAorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcxODYzNDkzCisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjIyMDEzMjYKKwkubG9uZwkxNzI2MjE2NzQ5CisJLmxvbmcJMTA3MTg2MDA2NgorCS5sb25nCTI0NjY4MDgyMjgKKwkubG9uZwkzMTYxNjc2NDA1CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzE4NTY2NDgKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNTIyODE5MworCS5sb25nCTEwMDA5MjU3NDYKKwkubG9uZwkxMDcxODUzMjQwCisJLmxvbmcJMTAxODQ5MTY3MgorCS5sb25nCTMxNjMzMDk1NDQKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMzk5MTg0MzU4MQorCS5sb25nCTEwNzE4NDY0NTAKKwkubG9uZwk0MDkyODUzNDU3CisJLmxvbmcJMTAxNDU4NTc2MworCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzE4NDMwNzAKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNDQyODc3OAorCS5sb25nCTEyNTM5MzUyMTEKKwkubG9uZwkxMDcxODM5Njk4CisJLmxvbmcJMTM5NTM4MjkzMQorCS5sb25nCTMxNTk3MDI2MTMKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3MTgzNjMzNQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDEzMDQxNjc5CisJLmxvbmcJNTI2NjUyODA5CisJLmxvbmcJMTA3MTgzMjk4MgorCS5sb25nCTQyMjM0NTk3MzYKKwkubG9uZwkxMDE1ODc5Mzc1CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzE4Mjk2MzcKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNTAyMjE1MQorCS5sb25nCTk2NDEwNzA1NQorCS5sb25nCTEwNzE4MjYzMDIKKwkubG9uZwkyODAwNDM5NTg4CisJLmxvbmcJMzE2MjgzMzIyMQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcxODIyOTc1CisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTczMzA2NTIKKwkubG9uZwkxNzI0OTc2OTE1CisJLmxvbmcJMTA3MTgxOTY1OAorCS5sb25nCTQyMDkwOTIyMworCS5sb25nCTMxNjMxMTczNzkKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3MTgxNjM0OQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE0MzcxMDQ4CisJLmxvbmcJMTk3MjQ4NDk3NgorCS5sb25nCTEwNzE4MTMwNTAKKwkubG9uZwk2NzUyOTAzMDEKKwkubG9uZwkzMTYxNjQwMDUwCisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzE4MDk3NTkKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2MzE4MDA5MAorCS5sb25nCTg3NDM3MjkwNQorCS5sb25nCTEwNzE4MDY0NzgKKwkubG9uZwkxMDAyNjM3ODgKKwkubG9uZwkxMDE1OTQwNzMyCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzE4MDMyMDUKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNDE1MjQ5OQorCS5sb25nCTE4OTc4NDQzNDEKKwkubG9uZwkxMDcxNzk5OTQxCisJLmxvbmcJMTI1NDMwMDQ2MAorCS5sb25nCTEwMTUyNzU5MzgKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3MTc5NjY4NgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE0Njc3ODQ1CisJLmxvbmcJNDIxOTYwNjAyNgorCS5sb25nCTEwNzE3OTM0MzkKKwkubG9uZwkyNDM0NTc0NzQyCisJLmxvbmcJMTAxNDY4MTU0OAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNzI1ODQzNjY1CisJLmxvbmcJMTA3MTc4Njk3MworCS5sb25nCTE0MzM5MTcwODcKKwkubG9uZwkxMDE0ODM4NTIzCisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzE3ODM3NTMKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNDE0NzQ1NAorCS5sb25nCTg5NzA5OTgwMQorCS5sb25nCTEwNzE3ODA1NDIKKwkubG9uZwk3NTQ3NTYyOTcKKwkubG9uZwkxMDE1MjQxMDA1CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTIyMTgzMTUzNDEKKwkubG9uZwkxMDcxNzc0MTQ1CisJLmxvbmcJMjY5NDI5NTM4OAorCS5sb25nCTMxNjMyODg4NjgKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcxNzcwOTYwCisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYyNjI3OTkyCisJLmxvbmcJMTU4ODg3MTIwNworCS5sb25nCTEwNzE3Njc3ODMKKwkubG9uZwkxNDM0Mzk1ODIKKwkubG9uZwkzMTYyOTYzNDE2CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MTc2NDYxNQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNTkzOTQzOAorCS5sb25nCTI1MDI0MzM4OTkKKwkubG9uZwkxMDcxNzYxNDU1CisJLmxvbmcJMjE0ODU5NTkxMworCS5sb25nCTEwMTUwMjM5OTEKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MTc1ODMwNAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjMxMTY0MjIKKwkubG9uZwk0MTYyMDMwMTA4CisJLmxvbmcJMTA3MTc1NTE2MQorCS5sb25nCTI3NjM0Mjg0ODAKKwkubG9uZwkxMDE1NTI5MzQ5CisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTE0ODAwMjMzNDMKKwkubG9uZwkxMDcxNzQ4OTAyCisJLmxvbmcJMjI0NzE5NjE2OAorCS5sb25nCTEwMTUzMjc0NTMKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcxNzQ1Nzg1CisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjI1NzQ4ODMKKwkubG9uZwkyMjU3OTU5ODcyCisJLmxvbmcJMTA3MTc0MjY3NgorCS5sb25nCTM4MDI5NDYxNDgKKwkubG9uZwkxMDEyOTY0OTI3CisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzE3Mzk1NzYKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MTU1OTEwNQorCS5sb25nCTE0MTY3NDE4MjYKKwkubG9uZwkxMDcxNzM2NDg0CisJLmxvbmcJMjE5NjM4MDIxMAorCS5sb25nCTEwMTE0MTM1NjMKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjQ3MTQ0MDY4NgorCS5sb25nCTEwNzE3MzAzMjUKKwkubG9uZwk5Njg4MzYyNjcKKwkubG9uZwkzMTYyMjE0ODg4CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTM1MTQwNTIyNworCS5sb25nCTEwNzE3MjQyMDAKKwkubG9uZwkzMTI1MzM3MzI4CisJLmxvbmcJMzE1OTgyMjQ3OQorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkyODc1MDc1MjU0CisJLmxvbmcJMTA3MTcxODEwNworCS5sb25nCTQxNDQyMzMzMzAKKwkubG9uZwkzMTYzMzMzNzE2CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzE3MTUwNzMKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYyOTQ4ODgwCisJLmxvbmcJNjg1MTg3OTAyCisJLmxvbmcJMTA3MTcxMjA0OAorCS5sb25nCTM3ODczMTk4OQorCS5sb25nCTEwMTQ4NDMxMTUKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJMTYwODQ5MzUwOQorCS5sb25nCTEwNzE3MDYwMjEKKwkubG9uZwkzMTU5NjIyMTcxCisJLmxvbmcJMzE2MjgwNzczNworCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzE3MDMwMjAKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDA5NzkzNTU5CisJLmxvbmcJNTkwOTYyMTU2CisJLmxvbmcJMTA3MTcwMDAyNworCS5sb25nCTM4MjkzNDY2NjYKKwkubG9uZwkzMTYzMjc1NTk3CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3MTY5NzA0MgorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTUwMjk0NjgKKwkubG9uZwkxMTcyNTk3ODkzCisJLmxvbmcJMTA3MTY5NDA2NQorCS5sb25nCTExNDQzMzI2MworCS5sb25nCTEwMTUzNDc1OTMKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MTY5MTA5NgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE1NTg4Mzk4CisJLmxvbmcJMjYwMjUxNDcxMworCS5sb25nCTEwNzE2ODgxMzUKKwkubG9uZwkyMjY4OTI5MzM2CisJLmxvbmcJMTAxNDM1NDI4NAorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcxNjg1MTgyCisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNTEwNTY1NgorCS5sb25nCTQxMzM4ODE4MjQKKwkubG9uZwkxMDcxNjgyMjM3CisJLmxvbmcJMjE0ODE1NTM0NQorCS5sb25nCTMxNjI5MzEyOTkKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3Mjg5MzQ0NTQKKwkubG9uZwkxMDcxNjc2MzcyCisJLmxvbmcJMTQxMzg0MjY4OAorCS5sb25nCTEwMTQxNzg2MTIKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkyMzg4MjEyNTcKKwkubG9uZwkxMDcxNjcwNTM4CisJLmxvbmcJMTQ2OTY5NDg3MQorCS5sb25nCTMxNjI4ODQ5ODcKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMTkyODc0NjE2MQorCS5sb25nCTEwNzE2NjQ3MzUKKwkubG9uZwk5ODM2MTc2NzYKKwkubG9uZwkxMDE0Mjg1MTc3CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJNzcyOTE0MTI0CisJLmxvbmcJMTA3MTY1ODk2NAorCS5sb25nCTQwMDQzNzI3NjIKKwkubG9uZwkxMDEyMjMwMTYxCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTMzOTQxMTU4NQorCS5sb25nCTEwNzE2NTMyMjQKKwkubG9uZwkyNjQ1ODg5ODIKKwkubG9uZwkzMTYxNjM2NjU3CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzE2NTAzNjUKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNTc2NzMzNworCS5sb25nCTQyMDAyNTA1NTkKKwkubG9uZwkxMDcxNjQ3NTE0CisJLmxvbmcJMjgwODEyNzM0NQorCS5sb25nCTMxNjE3ODE5MzgKKwkudHlwZQlUMl9uZWdfZixAb2JqZWN0CisJLnNpemUJVDJfbmVnX2YsNDA5NgorCS5zcGFjZSA1MTIsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitNQVNLMzoKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4MAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLnR5cGUJTUFTSzMsQG9iamVjdAorCS5zaXplCU1BU0szLDE2CisJLmFsaWduIDE2CitSTUFTSzoKKwkubG9uZwk0Mjk0NzA1MTUyCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ3MDUxNTIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLnR5cGUJUk1BU0ssQG9iamVjdAorCS5zaXplCVJNQVNLLDE2CisJLmFsaWduIDE2CitwdjoKKwkubG9uZwkyMzYyODk1MDMKKwkubG9uZwkxMDY0MTM1OTk3CisJLmxvbmcJNDYzNTgzNzcyCisJLmxvbmcJMzIxNTY5NjMxNAorCS5sb25nCTE0NDExODYzNjUKKwkubG9uZwkzMjEyOTc3ODkxCisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2OTYxNzQyNQorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDY2ODIwODUyCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTg0MjkyNjkKKwkudHlwZQlwdixAb2JqZWN0CisJLnNpemUJcHYsNDgKKwkuYWxpZ24gNAorSEFMRk1BU0s6CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTIxNDc0ODM2NDcKKwkudHlwZQlIQUxGTUFTSyxAb2JqZWN0CisJLnNpemUJSEFMRk1BU0ssOAorCS5hbGlnbiA0CitPTkVNQVNLOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJT05FTUFTSyxAb2JqZWN0CisJLnNpemUJT05FTUFTSyw4CisJLmFsaWduIDQKK1RXT01BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkudHlwZQlUV09NQVNLLEBvYmplY3QKKwkuc2l6ZQlUV09NQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW5oLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW5oLjUtLi5fX190YWdfdmFsdWVfdGFuaC4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW5oLjMtLi5fX190YWdfdmFsdWVfdGFuaC4xCisJLjJieXRlIDB4MTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfdGFuaC40LS4uX19fdGFnX3ZhbHVlX3RhbmguMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc3FydC5TIGIvbGlibS94ODZfNjQvc3FydC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlOTcwMjYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zcXJ0LlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0KQorc3FydHNkICV4bW0wLCV4bW0wCityZXRxCitFTkQoc3FydCkKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NxcnRmLlMgYi9saWJtL3g4Nl82NC9zcXJ0Zi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxMDQwN2YKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zcXJ0Zi5TCkBAIC0wLDAgKzEsMzYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc3FydGYpCitzcXJ0c3MgJXhtbTAsJXhtbTAKK3JldHEKK0VORChzcXJ0ZikKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3RydW5jLlMgYi9saWJtL3g4Nl82NC90cnVuYy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlMThiNDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC90cnVuYy5TCkBAIC0wLDAgKzEsMzYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkodHJ1bmMpCityb3VuZHNkICQweDMsJXhtbTAsJXhtbTAKK3JldHEKK0VORCh0cnVuYykKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3RydW5jZi5TIGIvbGlibS94ODZfNjQvdHJ1bmNmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWVlZTFkNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3RydW5jZi5TCkBAIC0wLDAgKzEsMzYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkodHJ1bmNmKQorcm91bmRzcyAkMHgzLCV4bW0wLCV4bW0wCityZXRxCitFTkQodHJ1bmNmKQpkaWZmIC0tZ2l0IGEvbGlic3RkYysrL2luY2x1ZGUvY21hdGggYi9saWJzdGRjKysvaW5jbHVkZS9jbWF0aAppbmRleCBiZTcwMzQzLi5hMTViMmFjIDEwMDY0NAotLS0gYS9saWJzdGRjKysvaW5jbHVkZS9jbWF0aAorKysgYi9saWJzdGRjKysvaW5jbHVkZS9jbWF0aApAQCAtMzEsNyArMzEsNyBAQAogI2RlZmluZSBCSU9OSUNfTElCU1REQ1BQX0lOQ0xVREVfQ01BVEhfXwogCiAvKgotICogU3RhbmRhcmQgQysrIExpYnJhcnkgd3JhcHBlciBhcm91bmQgdGhlIEMgdGltZS5oIGhlYWRlciBmaWxlLgorICogU3RhbmRhcmQgQysrIExpYnJhcnkgd3JhcHBlciBhcm91bmQgdGhlIEMgbWF0aC5oIGhlYWRlciBmaWxlLgogICovCiAKICNpbmNsdWRlIDxjc3RkZGVmPgpkaWZmIC0tZ2l0IGEvbGlic3RkYysrL2luY2x1ZGUvbmV3IGIvbGlic3RkYysrL2luY2x1ZGUvbmV3CmluZGV4IDAyNTNlOGIuLmM1YTQzZGUgMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy9pbmNsdWRlL25ldworKysgYi9saWJzdGRjKysvaW5jbHVkZS9uZXcKQEAgLTEzLDE5ICsxMywxOSBAQAogCiB2b2lkKiBvcGVyYXRvciBuZXcoc3RkOjpzaXplX3QpOwogdm9pZCogb3BlcmF0b3IgbmV3W10oc3RkOjpzaXplX3QpOwotdm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqKTsKLXZvaWQgIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqKTsKK3ZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKikgdGhyb3coKTsKK3ZvaWQgIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqKSB0aHJvdygpOwogdm9pZCogb3BlcmF0b3IgbmV3KHN0ZDo6c2l6ZV90LCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpOwogdm9pZCogb3BlcmF0b3IgbmV3W10oc3RkOjpzaXplX3QsIGNvbnN0IHN0ZDo6bm90aHJvd190Jik7Ci12b2lkICBvcGVyYXRvciBkZWxldGUodm9pZCosIGNvbnN0IHN0ZDo6bm90aHJvd190Jik7Ci12b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiwgY29uc3Qgc3RkOjpub3Rocm93X3QmKTsKK3ZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiwgY29uc3Qgc3RkOjpub3Rocm93X3QmKSB0aHJvdygpOwordm9pZCAgb3BlcmF0b3IgZGVsZXRlW10odm9pZCosIGNvbnN0IHN0ZDo6bm90aHJvd190JikgdGhyb3coKTsKIAogaW5saW5lIHZvaWQqIG9wZXJhdG9yIG5ldyhzdGQ6OnNpemVfdCwgdm9pZCogcCkgeyByZXR1cm4gcDsgfQogaW5saW5lIHZvaWQqIG9wZXJhdG9yIG5ld1tdKHN0ZDo6c2l6ZV90LCB2b2lkKiBwKSB7IHJldHVybiBwOyB9CiAKIC8vIHRoZXNlIG5leHQgdHdvIGFyZSBub3QgcmVhbGx5IHJlcXVpcmVkLCBzaW5jZSBleGNlcHRpb25zIGFyZSBvZmYKLWlubGluZSB2b2lkICBvcGVyYXRvciBkZWxldGUodm9pZCosIHZvaWQqKSB7IH0KLWlubGluZSB2b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiwgdm9pZCopIHsgfQoraW5saW5lIHZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiwgdm9pZCopIHRocm93KCkgeyB9CitpbmxpbmUgdm9pZCAgb3BlcmF0b3IgZGVsZXRlW10odm9pZCosIHZvaWQqKSB0aHJvdygpIHsgfQogCiB9ICAvLyBleHRlcm4gQysrCiAKZGlmZiAtLWdpdCBhL2xpbmtlci9BbmRyb2lkLm1rIGIvbGlua2VyL0FuZHJvaWQubWsKaW5kZXggNDI5ODAzMi4uNWJkYzJmOSAxMDA2NDQKLS0tIGEvbGlua2VyL0FuZHJvaWQubWsKKysrIGIvbGlua2VyL0FuZHJvaWQubWsKQEAgLTcsOCArNywxMCBAQAogICAgIGRsZmNuLmNwcCBcCiAgICAgbGlua2VyLmNwcCBcCiAgICAgbGlua2VyX2FsbG9jYXRvci5jcHAgXAorICAgIGxpbmtlcl9ibG9ja19hbGxvY2F0b3IuY3BwIFwKICAgICBsaW5rZXJfZW52aXJvbi5jcHAgXAogICAgIGxpbmtlcl9saWJjX3N1cHBvcnQuYyBcCisgICAgbGlua2VyX21lbW9yeS5jcHAgXAogICAgIGxpbmtlcl9waGRyLmNwcCBcCiAgICAgcnQuY3BwIFwKIApAQCAtMTYsOSArMTgsMTIgQEAKIExPQ0FMX1NSQ19GSUxFU19hcm02NCAgIDo9IGFyY2gvYXJtNjQvYmVnaW4uUwogTE9DQUxfU1JDX0ZJTEVTX3g4NiAgICAgOj0gYXJjaC94ODYvYmVnaW4uYwogTE9DQUxfU1JDX0ZJTEVTX3g4Nl82NCAgOj0gYXJjaC94ODZfNjQvYmVnaW4uUwotTE9DQUxfU1JDX0ZJTEVTX21pcHMgICAgOj0gYXJjaC9taXBzL2JlZ2luLlMKLUxPQ0FMX1NSQ19GSUxFU19taXBzNjQgIDo9IGFyY2gvbWlwczY0L2JlZ2luLlMKK0xPQ0FMX1NSQ19GSUxFU19taXBzICAgIDo9IGFyY2gvbWlwcy9iZWdpbi5TIGxpbmtlcl9taXBzLmNwcAorTE9DQUxfU1JDX0ZJTEVTX21pcHM2NCAgOj0gYXJjaC9taXBzNjQvYmVnaW4uUyBsaW5rZXJfbWlwcy5jcHAKIAorIyAtc2hhcmVkIGlzIHVzZWQgdG8gb3ZlcndyaXRlIHRoZSAtQnN0YXRpYyBhbmQgLXN0YXRpYworIyBmbGFncyB0cmlnZ2VyZWQgYnkgTE9DQUxfRk9SQ0VfU1RBVElDX0VYRUNVVEFCTEUuCisjIFRoaXMgZHluYW1pYyBsaW5rZXIgaXMgYWN0dWFsbHkgYSBzaGFyZWQgb2JqZWN0IGxpbmtlZCB3aXRoIHN0YXRpYyBsaWJyYXJpZXMuCiBMT0NBTF9MREZMQUdTIDo9IFwKICAgICAtc2hhcmVkIFwKICAgICAtV2wsLUJzeW1ib2xpYyBcCkBAIC0zNSw2ICs0MCwxMSBAQAogCiBMT0NBTF9DUFBGTEFHUyArPSBcCiAgICAgLXN0ZD1nbnUrKzExIFwKKyAgICAtV29sZC1zdHlsZS1jYXN0IFwKKworaWZlcSAoJChUQVJHRVRfSVNfNjRfQklUKSx0cnVlKQorTE9DQUxfQ1BQRkxBR1MgKz0gLURUQVJHRVRfSVNfNjRfQklUCitlbmRpZgogCiAjIFdlIG5lZWQgdG8gYWNjZXNzIEJpb25pYyBwcml2YXRlIGhlYWRlcnMgaW4gdGhlIGxpbmtlci4KIExPQ0FMX0NGTEFHUyArPSAtSSQoTE9DQUxfUEFUSCkvLi4vbGliYy8KQEAgLTQ1LDEzICs1NSwxMSBAQAogIyBUT0RPOiBzcGxpdCBvdXQgdGhlIGFzZmxhZ3MuCiBMT0NBTF9BU0ZMQUdTIDo9ICQoTE9DQUxfQ0ZMQUdTKQogCi1MT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsgJChMT0NBTF9QQVRIKS9saW5rZXJfZXhlY3V0YWJsZS5taworTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCiAKLUxPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliY19ub21hbGxvYworTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJjX25vbWFsbG9jIGxpYnppcGFyY2hpdmUgbGlidXRpbHMgbGlieiBsaWJsb2cKIAotTE9DQUxfRk9SQ0VfU1RBVElDX0VYRUNVVEFCTEUgOj0gdHJ1ZSAjIG5vdCBuZWNlc3Nhcnkgd2hlbiBub3QgaW5jbHVkaW5nIEJVSUxEX0VYRUNVVEFCTEUKLQotTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWCA6PSAkKGxpbmtlcl8ybmRfYXJjaF92YXJfcHJlZml4KQorTE9DQUxfRk9SQ0VfU1RBVElDX0VYRUNVVEFCTEUgOj0gdHJ1ZQogCiBMT0NBTF9NT0RVTEUgOj0gbGlua2VyCiBMT0NBTF9NT0RVTEVfU1RFTV8zMiA6PSBsaW5rZXIKQEAgLTYyLDE3ICs3MCwxNCBAQAogIyBtZWFuaW5nZnVsIG5hbWUgcmVzb2x1dGlvbi4KIExPQ0FMX1NUUklQX01PRFVMRSA6PSBrZWVwX3N5bWJvbHMKIAotaW5jbHVkZSAkKExPQ0FMX1BBVEgpL2xpbmtlcl9leGVjdXRhYmxlLm1rCi1pZmRlZiBUQVJHRVRfMk5EX0FSQ0gKLUxPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVggOj0gJChUQVJHRVRfMk5EX0FSQ0hfVkFSX1BSRUZJWCkKLU9WRVJSSURFX0JVSUxUX01PRFVMRV9QQVRIIDo9Ci1MT0NBTF9CVUlMVF9NT0RVTEUgOj0KLUxPQ0FMX0lOU1RBTExFRF9NT0RVTEUgOj0KLUxPQ0FMX01PRFVMRV9TVEVNIDo9Ci1MT0NBTF9CVUlMVF9NT0RVTEVfU1RFTSA6PQotTE9DQUxfSU5TVEFMTEVEX01PRFVMRV9TVEVNIDo9Ci1MT0NBTF9JTlRFUk1FRElBVEVfVEFSR0VUUyA6PQotaW5jbHVkZSAkKExPQ0FMX1BBVEgpL2xpbmtlcl9leGVjdXRhYmxlLm1rCi1lbmRpZgorIyBJbnNlcnQgYW4gZXh0cmEgb2JqY29weSBzdGVwIHRvIGFkZCBwcmVmaXggdG8gc3ltYm9scy4gVGhpcyBpcyBuZWVkZWQgdG8gcHJldmVudCBnZGIKKyMgbG9va2luZyB1cCBzeW1ib2xzIGluIHRoZSBsaW5rZXIgYnkgbWlzdGFrZS4KKyMKKyMgTm90ZSB3ZSBhcmUgdXNpbmcgIj0iIGluc3RlYWQgb2YgIjo9IiB0byBkZWZlciB0aGUgZXZhbHVhdGlvbiwKKyMgYmVjYXVzZSBMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYIG9yIGxpbmtlZF9tb2R1bGUgaXNuJ3Qgc2V0IHByb3Blcmx5IHlldCBhdCB0aGlzIHBvaW50LgorTE9DQUxfUE9TVF9MSU5LX0NNRCA9ICQoaGlkZSkgJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX09CSkNPUFkpIFwKKyAgLS1wcmVmaXgtc3ltYm9scz1fX2RsXyAkKGxpbmtlZF9tb2R1bGUpCisKK2luY2x1ZGUgJChCVUlMRF9FWEVDVVRBQkxFKQogCiBpbmNsdWRlICQoY2FsbCBmaXJzdC1tYWtlZmlsZXMtdW5kZXIsJChMT0NBTF9QQVRIKSkKZGlmZiAtLWdpdCBhL2xpbmtlci9kZWJ1Z2dlci5jcHAgYi9saW5rZXIvZGVidWdnZXIuY3BwCmluZGV4IGFjNDY2YTUuLjM1N2ZiZGMgMTAwNjQ0Ci0tLSBhL2xpbmtlci9kZWJ1Z2dlci5jcHAKKysrIGIvbGlua2VyL2RlYnVnZ2VyLmNwcApAQCAtMzAsOSArMzAsMTEgQEAKIAogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHN5cy9wcmN0bC5oPgogI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KQEAgLTQxLDggKzQzLDEwIEBACiAKIGV4dGVybiAiQyIgaW50IHRna2lsbChpbnQgdGdpZCwgaW50IHRpZCwgaW50IHNpZyk7CiAKLSNpZiBfX0xQNjRfXwotI2RlZmluZSBERUJVR0dFUl9TT0NLRVRfTkFNRSAiYW5kcm9pZDpkZWJ1Z2dlcmQ2NCIKKy8vIENyYXNoIGFjdGlvbnMgaGF2ZSB0byBiZSBzZW50IHRvIHRoZSBwcm9wZXIgZGVidWdnZXJkLgorLy8gT24gNjQgYml0IHN5c3RlbXMsIHRoZSAzMiBiaXQgZGVidWdnZXJkIGlzIG5hbWVkIGRpZmZlcmVudGx5LgorI2lmIGRlZmluZWQoVEFSR0VUX0lTXzY0X0JJVCkgJiYgIWRlZmluZWQoX19MUDY0X18pCisjZGVmaW5lIERFQlVHR0VSX1NPQ0tFVF9OQU1FICJhbmRyb2lkOmRlYnVnZ2VyZDMyIgogI2Vsc2UKICNkZWZpbmUgREVCVUdHRVJfU09DS0VUX05BTUUgImFuZHJvaWQ6ZGVidWdnZXJkIgogI2VuZGlmCkBAIC01NywxNSArNjEsMTAgQEAKIH07CiAKIC8qIG1lc3NhZ2Ugc2VudCBvdmVyIHRoZSBzb2NrZXQgKi8KLXN0cnVjdCBkZWJ1Z2dlcl9tc2dfdCB7Ci0gIC8vIHZlcnNpb24gMSBpbmNsdWRlZDoKLSAgZGVidWdnZXJfYWN0aW9uX3QgYWN0aW9uOworc3RydWN0IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGRlYnVnZ2VyX21zZ190IHsKKyAgaW50MzJfdCBhY3Rpb247CiAgIHBpZF90IHRpZDsKLQotICAvLyB2ZXJzaW9uIDIgYWRkZWQ6Ci0gIHVpbnRwdHJfdCBhYm9ydF9tc2dfYWRkcmVzczsKLQotICAvLyB2ZXJzaW9uIDMgYWRkZWQ6CisgIHVpbnQ2NF90IGFib3J0X21zZ19hZGRyZXNzOwogICBpbnQzMl90IG9yaWdpbmFsX3NpX2NvZGU7CiB9OwogCkBAIC0xNTQsNyArMTUzLDcgQEAKICAgfQogCiAgIGNoYXIgdGhyZWFkX25hbWVbTUFYX1RBU0tfTkFNRV9MRU4gKyAxXTsgLy8gb25lIG1vcmUgZm9yIHRlcm1pbmF0aW9uCi0gIGlmIChwcmN0bChQUl9HRVRfTkFNRSwgKHVuc2lnbmVkIGxvbmcpdGhyZWFkX25hbWUsIDAsIDAsIDApICE9IDApIHsKKyAgaWYgKHByY3RsKFBSX0dFVF9OQU1FLCByZWludGVycHJldF9jYXN0PHVuc2lnbmVkIGxvbmc+KHRocmVhZF9uYW1lKSwgMCwgMCwgMCkgIT0gMCkgewogICAgIHN0cmNweSh0aHJlYWRfbmFtZSwgIjxuYW1lIHVua25vd24+Iik7CiAgIH0gZWxzZSB7CiAgICAgLy8gc2hvcnQgbmFtZXMgYXJlIG51bGwgdGVybWluYXRlZCBieSBwcmN0bCwgYnV0IHRoZSBtYW4gcGFnZQpAQCAtMjE1LDYgKzIxNCwyMyBAQAogICAgIHJldHVybjsKICAgfQogCisgIC8vIE11dGV4IHRvIHByZXZlbnQgbXVsdGlwbGUgY3Jhc2hpbmcgdGhyZWFkcyBmcm9tIHRyeWluZyB0byB0YWxrCisgIC8vIHRvIGRlYnVnZ2VyZCBhdCB0aGUgc2FtZSB0aW1lLgorICBzdGF0aWMgcHRocmVhZF9tdXRleF90IGNyYXNoX211dGV4ID0gUFRIUkVBRF9NVVRFWF9JTklUSUFMSVpFUjsKKyAgaW50IHJldCA9IHB0aHJlYWRfbXV0ZXhfdHJ5bG9jaygmY3Jhc2hfbXV0ZXgpOworICBpZiAocmV0ICE9IDApIHsKKyAgICBpZiAocmV0ID09IEVCVVNZKSB7CisgICAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19JTkZPLCAibGliYyIsCisgICAgICAgICAgIkFub3RoZXIgdGhyZWFkIGNvbnRhY3RlZCBkZWJ1Z2dlcmQgZmlyc3Q7IG5vdCBjb250YWN0aW5nIGRlYnVnZ2VyZC4iKTsKKyAgICAgIC8vIFRoaXMgd2lsbCBuZXZlciBjb21wbGV0ZSBzaW5jZSB0aGUgbG9jayBpcyBuZXZlciByZWxlYXNlZC4KKyAgICAgIHB0aHJlYWRfbXV0ZXhfbG9jaygmY3Jhc2hfbXV0ZXgpOworICAgIH0gZWxzZSB7CisgICAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19JTkZPLCAibGliYyIsCisgICAgICAgICAgICAgICAgICAgICAgICAicHRocmVhZF9tdXRleF90cnlsb2NrIGZhaWxlZDogJXMiLCBzdHJlcnJvcihyZXQpKTsKKyAgICB9CisgICAgcmV0dXJuOworICB9CisKICAgaW50IHMgPSBzb2NrZXRfYWJzdHJhY3RfY2xpZW50KERFQlVHR0VSX1NPQ0tFVF9OQU1FLCBTT0NLX1NUUkVBTSB8IFNPQ0tfQ0xPRVhFQyk7CiAgIGlmIChzID09IC0xKSB7CiAgICAgX19saWJjX2Zvcm1hdF9sb2coQU5EUk9JRF9MT0dfRkFUQUwsICJsaWJjIiwgIlVuYWJsZSB0byBvcGVuIGNvbm5lY3Rpb24gdG8gZGVidWdnZXJkOiAlcyIsCkBAIC0yMzEsNyArMjQ3LDcgQEAKICAgbXNnLnRpZCA9IGdldHRpZCgpOwogICBtc2cuYWJvcnRfbXNnX2FkZHJlc3MgPSByZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oZ19hYm9ydF9tZXNzYWdlKTsKICAgbXNnLm9yaWdpbmFsX3NpX2NvZGUgPSAoaW5mbyAhPSBudWxscHRyKSA/IGluZm8tPnNpX2NvZGUgOiAwOwotICBpbnQgcmV0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKHdyaXRlKHMsICZtc2csIHNpemVvZihtc2cpKSk7CisgIHJldCA9IFRFTVBfRkFJTFVSRV9SRVRSWSh3cml0ZShzLCAmbXNnLCBzaXplb2YobXNnKSkpOwogICBpZiAocmV0ID09IHNpemVvZihtc2cpKSB7CiAgICAgY2hhciBkZWJ1Z2dlcmRfYWNrOwogICAgIHJldCA9IFRFTVBfRkFJTFVSRV9SRVRSWShyZWFkKHMsICZkZWJ1Z2dlcmRfYWNrLCAxKSk7CmRpZmYgLS1naXQgYS9saW5rZXIvZGxmY24uY3BwIGIvbGlua2VyL2RsZmNuLmNwcAppbmRleCAzZWI1YmVhLi4wNTdjMjE3IDEwMDY0NAotLS0gYS9saW5rZXIvZGxmY24uY3BwCisrKyBiL2xpbmtlci9kbGZjbi5jcHAKQEAgLTIwLDYgKzIwLDcgQEAKICNpbmNsdWRlIDxwdGhyZWFkLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxhbmRyb2lkL2RsZXh0Lmg+CiAKICNpbmNsdWRlIDxiaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5oPgpAQCAtMjksNyArMzAsNyBAQAogCiAvKiBUaGlzIGZpbGUgaGlqYWNrcyB0aGUgc3ltYm9scyBzdHViYmVkIG91dCBpbiBsaWJkbC5zby4gKi8KIAotc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBnX2RsX211dGV4ID0gUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVElBTElaRVI7CitzdGF0aWMgcHRocmVhZF9tdXRleF90IGdfZGxfbXV0ZXggPSBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUl9OUDsKIAogc3RhdGljIGNvbnN0IGNoYXIqIF9fYmlvbmljX3NldF9kbGVycm9yKGNoYXIqIG5ld192YWx1ZSkgewogICBjaGFyKiogZGxlcnJvcl9zbG90ID0gJnJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcioqPihfX2dldF90bHMoKSlbVExTX1NMT1RfRExFUlJPUl07CkBAIC05OSwxNyArMTAwLDEyIEBACiAgIH0KIAogICBzb2luZm8qIGZvdW5kID0gbnVsbHB0cjsKLSAgRWxmVyhTeW0pKiBzeW0gPSBudWxscHRyOwotICBpZiAoaGFuZGxlID09IFJUTERfREVGQVVMVCkgewotICAgIHN5bSA9IGRsc3ltX2xpbmVhcl9sb29rdXAoc3ltYm9sLCAmZm91bmQsIG51bGxwdHIpOwotICB9IGVsc2UgaWYgKGhhbmRsZSA9PSBSVExEX05FWFQpIHsKLSAgICB2b2lkKiBjYWxsZXJfYWRkciA9IF9fYnVpbHRpbl9yZXR1cm5fYWRkcmVzcygwKTsKLSAgICBzb2luZm8qIHNpID0gZmluZF9jb250YWluaW5nX2xpYnJhcnkoY2FsbGVyX2FkZHIpOworICBjb25zdCBFbGZXKFN5bSkqIHN5bSA9IG51bGxwdHI7CisgIHZvaWQqIGNhbGxlcl9hZGRyID0gX19idWlsdGluX3JldHVybl9hZGRyZXNzKDApOworICBzb2luZm8qIGNhbGxlciA9IGZpbmRfY29udGFpbmluZ19saWJyYXJ5KGNhbGxlcl9hZGRyKTsKIAotICAgIHN5bSA9IG51bGxwdHI7Ci0gICAgaWYgKHNpICYmIHNpLT5uZXh0KSB7Ci0gICAgICBzeW0gPSBkbHN5bV9saW5lYXJfbG9va3VwKHN5bWJvbCwgJmZvdW5kLCBzaS0+bmV4dCk7Ci0gICAgfQorICBpZiAoaGFuZGxlID09IFJUTERfREVGQVVMVCB8fCBoYW5kbGUgPT0gUlRMRF9ORVhUKSB7CisgICAgc3ltID0gZGxzeW1fbGluZWFyX2xvb2t1cChzeW1ib2wsICZmb3VuZCwgY2FsbGVyLCBoYW5kbGUpOwogICB9IGVsc2UgewogICAgIHN5bSA9IGRsc3ltX2hhbmRsZV9sb29rdXAocmVpbnRlcnByZXRfY2FzdDxzb2luZm8qPihoYW5kbGUpLCAmZm91bmQsIHN5bWJvbCk7CiAgIH0KQEAgLTE0MCwxMiArMTM2LDEyIEBACiAKICAgbWVtc2V0KGluZm8sIDAsIHNpemVvZihEbF9pbmZvKSk7CiAKLSAgaW5mby0+ZGxpX2ZuYW1lID0gc2ktPm5hbWU7CisgIGluZm8tPmRsaV9mbmFtZSA9IHNpLT5nZXRfcmVhbHBhdGgoKTsKICAgLy8gQWRkcmVzcyBhdCB3aGljaCB0aGUgc2hhcmVkIG9iamVjdCBpcyBsb2FkZWQuCiAgIGluZm8tPmRsaV9mYmFzZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNpLT5iYXNlKTsKIAogICAvLyBEZXRlcm1pbmUgaWYgYW55IHN5bWJvbCBpbiB0aGUgbGlicmFyeSBjb250YWlucyB0aGUgc3BlY2lmaWVkIGFkZHJlc3MuCi0gIEVsZlcoU3ltKSogc3ltID0gZGxhZGRyX2ZpbmRfc3ltYm9sKHNpLCBhZGRyKTsKKyAgRWxmVyhTeW0pKiBzeW0gPSBzaS0+ZmluZF9zeW1ib2xfYnlfYWRkcmVzcyhhZGRyKTsKICAgaWYgKHN5bSAhPSBudWxscHRyKSB7CiAgICAgaW5mby0+ZGxpX3NuYW1lID0gc2ktPmdldF9zdHJpbmcoc3ltLT5zdF9uYW1lKTsKICAgICBpbmZvLT5kbGlfc2FkZHIgPSByZWludGVycHJldF9jYXN0PHZvaWQqPihzaS0+cmVzb2x2ZV9zeW1ib2xfYWRkcmVzcyhzeW0pKTsKQEAgLTIzMiwyMSArMjI4LDI4IEBACiBzdGF0aWMgdW5zaWduZWQgZ19saWJkbF9jaGFpbnNbXSA9IHsgMCwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMCB9OwogI2VuZGlmCiAKLXN0YXRpYyBzb2luZm8gX19saWJkbF9pbmZvKCJsaWJkbC5zbyIsIG51bGxwdHIsIDApOworc3RhdGljIHVpbnQ4X3QgX19saWJkbF9pbmZvX2J1ZltzaXplb2Yoc29pbmZvKV0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworc3RhdGljIHNvaW5mbyogX19saWJkbF9pbmZvID0gbnVsbHB0cjsKIAogLy8gVGhpcyBpcyB1c2VkIGJ5IHRoZSBkeW5hbWljIGxpbmtlci4gRXZlcnkgcHJvY2VzcyBnZXRzIHRoZXNlIHN5bWJvbHMgZm9yIGZyZWUuCiBzb2luZm8qIGdldF9saWJkbF9pbmZvKCkgewotICBpZiAoKF9fbGliZGxfaW5mby5mbGFncyAmIEZMQUdfTElOS0VEKSA9PSAwKSB7Ci0gICAgX19saWJkbF9pbmZvLmZsYWdzIHw9IEZMQUdfTElOS0VEOwotICAgIF9fbGliZGxfaW5mby5zdHJ0YWIgPSBBTkRST0lEX0xJQkRMX1NUUlRBQjsKLSAgICBfX2xpYmRsX2luZm8uc3ltdGFiID0gZ19saWJkbF9zeW10YWI7Ci0gICAgX19saWJkbF9pbmZvLm5idWNrZXQgPSBzaXplb2YoZ19saWJkbF9idWNrZXRzKS9zaXplb2YodW5zaWduZWQpOwotICAgIF9fbGliZGxfaW5mby5uY2hhaW4gPSBzaXplb2YoZ19saWJkbF9jaGFpbnMpL3NpemVvZih1bnNpZ25lZCk7Ci0gICAgX19saWJkbF9pbmZvLmJ1Y2tldCA9IGdfbGliZGxfYnVja2V0czsKLSAgICBfX2xpYmRsX2luZm8uY2hhaW4gPSBnX2xpYmRsX2NoYWluczsKLSAgICBfX2xpYmRsX2luZm8ucmVmX2NvdW50ID0gMTsKLSAgICBfX2xpYmRsX2luZm8uc3RydGFiX3NpemUgPSBzaXplb2YoQU5EUk9JRF9MSUJETF9TVFJUQUIpOworICBpZiAoX19saWJkbF9pbmZvID09IG51bGxwdHIpIHsKKyAgICBfX2xpYmRsX2luZm8gPSBuZXcgKF9fbGliZGxfaW5mb19idWYpIHNvaW5mbygibGliZGwuc28iLCBudWxscHRyLCAwLCBSVExEX0dMT0JBTCk7CisgICAgX19saWJkbF9pbmZvLT5mbGFnc18gfD0gRkxBR19MSU5LRUQ7CisgICAgX19saWJkbF9pbmZvLT5zdHJ0YWJfID0gQU5EUk9JRF9MSUJETF9TVFJUQUI7CisgICAgX19saWJkbF9pbmZvLT5zeW10YWJfID0gZ19saWJkbF9zeW10YWI7CisgICAgX19saWJkbF9pbmZvLT5uYnVja2V0XyA9IHNpemVvZihnX2xpYmRsX2J1Y2tldHMpL3NpemVvZih1bnNpZ25lZCk7CisgICAgX19saWJkbF9pbmZvLT5uY2hhaW5fID0gc2l6ZW9mKGdfbGliZGxfY2hhaW5zKS9zaXplb2YodW5zaWduZWQpOworICAgIF9fbGliZGxfaW5mby0+YnVja2V0XyA9IGdfbGliZGxfYnVja2V0czsKKyAgICBfX2xpYmRsX2luZm8tPmNoYWluXyA9IGdfbGliZGxfY2hhaW5zOworICAgIF9fbGliZGxfaW5mby0+cmVmX2NvdW50XyA9IDE7CisgICAgX19saWJkbF9pbmZvLT5zdHJ0YWJfc2l6ZV8gPSBzaXplb2YoQU5EUk9JRF9MSUJETF9TVFJUQUIpOworICAgIF9fbGliZGxfaW5mby0+bG9jYWxfZ3JvdXBfcm9vdF8gPSBfX2xpYmRsX2luZm87CisgICAgX19saWJkbF9pbmZvLT5zb25hbWVfID0gImxpYmRsLnNvIjsKKyNpZiBkZWZpbmVkKF9fYXJtX18pCisgICAgc3RybGNweShfX2xpYmRsX2luZm8tPm9sZF9uYW1lXywgX19saWJkbF9pbmZvLT5zb25hbWVfLCBzaXplb2YoX19saWJkbF9pbmZvLT5vbGRfbmFtZV8pKTsKKyNlbmRpZgogICB9CiAKLSAgcmV0dXJuICZfX2xpYmRsX2luZm87CisgIHJldHVybiBfX2xpYmRsX2luZm87CiB9CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VkX2xpc3QuaCBiL2xpbmtlci9saW5rZWRfbGlzdC5oCmluZGV4IDRlNjJlMjAuLjgwMDNkYmYgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZWRfbGlzdC5oCisrKyBiL2xpbmtlci9saW5rZWRfbGlzdC5oCkBAIC0zNiw2ICszNiwxMiBAQAogICAgIGNsZWFyKCk7CiAgIH0KIAorICBMaW5rZWRMaXN0KExpbmtlZExpc3QmJiB0aGF0KSB7CisgICAgdGhpcy0+aGVhZF8gPSB0aGF0LmhlYWRfOworICAgIHRoaXMtPnRhaWxfID0gdGhhdC50YWlsXzsKKyAgICB0aGF0LmhlYWRfID0gdGhhdC50YWlsXyA9IG51bGxwdHI7CisgIH0KKwogICB2b2lkIHB1c2hfZnJvbnQoVCogY29uc3QgZWxlbWVudCkgewogICAgIExpbmtlZExpc3RFbnRyeTxUPiogbmV3X2VudHJ5ID0gQWxsb2NhdG9yOjphbGxvYygpOwogICAgIG5ld19lbnRyeS0+bmV4dCA9IGhlYWRfOwpAQCAtNzUsNiArODEsMTQgQEAKICAgICByZXR1cm4gZWxlbWVudDsKICAgfQogCisgIFQqIGZyb250KCkgY29uc3QgeworICAgIGlmIChoZWFkXyA9PSBudWxscHRyKSB7CisgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICByZXR1cm4gaGVhZF8tPmVsZW1lbnQ7CisgIH0KKwogICB2b2lkIGNsZWFyKCkgewogICAgIHdoaWxlIChoZWFkXyAhPSBudWxscHRyKSB7CiAgICAgICBMaW5rZWRMaXN0RW50cnk8VD4qIHAgPSBoZWFkXzsKQEAgLTg2LDcgKzEwMCw3IEBACiAgIH0KIAogICB0ZW1wbGF0ZTx0eXBlbmFtZSBGPgotICB2b2lkIGZvcl9lYWNoKEYgYWN0aW9uKSB7CisgIHZvaWQgZm9yX2VhY2goRiBhY3Rpb24pIGNvbnN0IHsKICAgICB2aXNpdChbJl0gKFQqIHNpKSB7CiAgICAgICBhY3Rpb24oc2kpOwogICAgICAgcmV0dXJuIHRydWU7CkBAIC05NCw3ICsxMDgsNyBAQAogICB9CiAKICAgdGVtcGxhdGU8dHlwZW5hbWUgRj4KLSAgYm9vbCB2aXNpdChGIGFjdGlvbikgeworICBib29sIHZpc2l0KEYgYWN0aW9uKSBjb25zdCB7CiAgICAgZm9yIChMaW5rZWRMaXN0RW50cnk8VD4qIGUgPSBoZWFkXzsgZSAhPSBudWxscHRyOyBlID0gZS0+bmV4dCkgewogICAgICAgaWYgKCFhY3Rpb24oZS0+ZWxlbWVudCkpIHsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMTIyLDYgKzEzNiwxNyBAQAogICAgIH0KICAgfQogCisgIHRlbXBsYXRlPHR5cGVuYW1lIEY+CisgIFQqIGZpbmRfaWYoRiBwcmVkaWNhdGUpIGNvbnN0IHsKKyAgICBmb3IgKExpbmtlZExpc3RFbnRyeTxUPiogZSA9IGhlYWRfOyBlICE9IG51bGxwdHI7IGUgPSBlLT5uZXh0KSB7CisgICAgICBpZiAocHJlZGljYXRlKGUtPmVsZW1lbnQpKSB7CisgICAgICAgIHJldHVybiBlLT5lbGVtZW50OworICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBudWxscHRyOworICB9CisKICAgc2l6ZV90IGNvcHlfdG9fYXJyYXkoVCogYXJyYXlbXSwgc2l6ZV90IGFycmF5X2xlbmd0aCkgY29uc3QgewogICAgIHNpemVfdCBzeiA9IDA7CiAgICAgZm9yIChMaW5rZWRMaXN0RW50cnk8VD4qIGUgPSBoZWFkXzsgc3ogPCBhcnJheV9sZW5ndGggJiYgZSAhPSBudWxscHRyOyBlID0gZS0+bmV4dCkgewpAQCAtMTQwLDYgKzE2NSwxMiBAQAogICAgIHJldHVybiBmYWxzZTsKICAgfQogCisgIHN0YXRpYyBMaW5rZWRMaXN0IG1ha2VfbGlzdChUKiBjb25zdCBlbGVtZW50KSB7CisgICAgTGlua2VkTGlzdDxULCBBbGxvY2F0b3I+IG9uZV9lbGVtZW50X2xpc3Q7CisgICAgb25lX2VsZW1lbnRfbGlzdC5wdXNoX2JhY2soZWxlbWVudCk7CisgICAgcmV0dXJuIG9uZV9lbGVtZW50X2xpc3Q7CisgIH0KKwogIHByaXZhdGU6CiAgIExpbmtlZExpc3RFbnRyeTxUPiogaGVhZF87CiAgIExpbmtlZExpc3RFbnRyeTxUPiogdGFpbF87CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyLmNwcCBiL2xpbmtlci9saW5rZXIuY3BwCmluZGV4IDU0ODY3ZGMuLmJlN2IxMGMgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZXIuY3BwCisrKyBiL2xpbmtlci9saW5rZXIuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCwgMjAwOSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBDb3B5cmlnaHQgKEMpIDIwMDggVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTM1LDkgKzM1LDEzIEBACiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyNpbmNsdWRlIDxzeXMvcGVyc29uYWxpdHkuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2luY2x1ZGUgPG5ldz4KKyNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8dmVjdG9yPgogCiAvLyBQcml2YXRlIEMgbGlicmFyeSBoZWFkZXJzLgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3Rscy5oIgpAQCAtNDgsMTAgKzUyLDE0IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9VbmlxdWVQdHIuaCIKIAogI2luY2x1ZGUgImxpbmtlci5oIgorI2luY2x1ZGUgImxpbmtlcl9ibG9ja19hbGxvY2F0b3IuaCIKICNpbmNsdWRlICJsaW5rZXJfZGVidWcuaCIKICNpbmNsdWRlICJsaW5rZXJfZW52aXJvbi5oIgorI2luY2x1ZGUgImxpbmtlcl9zbGViMTI4LmgiCiAjaW5jbHVkZSAibGlua2VyX3BoZHIuaCIKLSNpbmNsdWRlICJsaW5rZXJfYWxsb2NhdG9yLmgiCisjaW5jbHVkZSAibGlua2VyX3JlbG9jcy5oIgorI2luY2x1ZGUgImxpbmtlcl9yZWxvY19pdGVyYXRvcnMuaCIKKyNpbmNsdWRlICJ6aXBhcmNoaXZlL3ppcF9hcmNoaXZlLmgiCiAKIC8qID4+PiBJTVBPUlRBTlQgTk9URSAtIFJFQUQgTUUgQkVGT1JFIE1PRElGWUlORyA8PDwKICAqCkBAIC02OCwyMyArNzYsMTQgQEAKICAqICAgYW5kIE5PRVhFQwogICovCiAKLSNpZiBkZWZpbmVkKF9fTFA2NF9fKQotI2RlZmluZSBTRUFSQ0hfTkFNRSh4KSB4Ci0jZWxzZQotLy8gTnZpZGlhIGRyaXZlcnMgYXJlIHJlbHlpbmcgb24gdGhlIGJ1ZzoKLS8vIGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmRyb2lkL2lzc3Vlcy9kZXRhaWw/aWQ9NjY3MAotLy8gc28gd2UgY29udGludWUgdG8gdXNlIGJhc2UtbmFtZSBsb29rdXAgZm9yIGxwMzIKLXN0YXRpYyBjb25zdCBjaGFyKiBnZXRfYmFzZV9uYW1lKGNvbnN0IGNoYXIqIG5hbWUpIHsKLSAgY29uc3QgY2hhciogYm5hbWUgPSBzdHJyY2hyKG5hbWUsICcvJyk7Ci0gIHJldHVybiBibmFtZSA/IGJuYW1lICsgMSA6IG5hbWU7Ci19Ci0jZGVmaW5lIFNFQVJDSF9OQU1FKHgpIGdldF9iYXNlX25hbWUoeCkKLSNlbmRpZgorLy8gT3ZlcnJpZGUgbWFjcm9zIHRvIHVzZSBDKysgc3R5bGUgY2FzdHMKKyN1bmRlZiBFTEZfU1RfVFlQRQorI2RlZmluZSBFTEZfU1RfVFlQRSh4KSAoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHgpICYgMHhmKQogCiBzdGF0aWMgRWxmVyhBZGRyKSBnZXRfZWxmX2V4ZWNfbG9hZF9iaWFzKGNvbnN0IEVsZlcoRWhkcikqIGVsZik7CiAKLXN0YXRpYyBMaW5rZXJBbGxvY2F0b3I8c29pbmZvPiBnX3NvaW5mb19hbGxvY2F0b3I7Ci1zdGF0aWMgTGlua2VyQWxsb2NhdG9yPExpbmtlZExpc3RFbnRyeTxzb2luZm8+PiBnX3NvaW5mb19saW5rc19hbGxvY2F0b3I7CitzdGF0aWMgTGlua2VyVHlwZUFsbG9jYXRvcjxzb2luZm8+IGdfc29pbmZvX2FsbG9jYXRvcjsKK3N0YXRpYyBMaW5rZXJUeXBlQWxsb2NhdG9yPExpbmtlZExpc3RFbnRyeTxzb2luZm8+PiBnX3NvaW5mb19saW5rc19hbGxvY2F0b3I7CiAKIHN0YXRpYyBzb2luZm8qIHNvbGlzdDsKIHN0YXRpYyBzb2luZm8qIHNvbmV4dDsKQEAgLTEwMSwzMiArMTAwLDE4IEBACiAgIG51bGxwdHIKIH07CiAKLSNkZWZpbmUgTERQQVRIX0JVRlNJWkUgKExEUEFUSF9NQVgqNjQpCi0jZGVmaW5lIExEUEFUSF9NQVggOAorc3RhdGljIGNvbnN0IEVsZlcoVmVyc3ltKSBrVmVyc3ltTm90TmVlZGVkID0gMDsKK3N0YXRpYyBjb25zdCBFbGZXKFZlcnN5bSkga1ZlcnN5bUdsb2JhbCA9IDE7CiAKLSNkZWZpbmUgTERQUkVMT0FEX0JVRlNJWkUgKExEUFJFTE9BRF9NQVgqNjQpCi0jZGVmaW5lIExEUFJFTE9BRF9NQVggOAorc3RhdGljIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBnX2xkX2xpYnJhcnlfcGF0aHM7CitzdGF0aWMgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IGdfbGRfcHJlbG9hZF9uYW1lczsKIAotc3RhdGljIGNoYXIgZ19sZF9saWJyYXJ5X3BhdGhzX2J1ZmZlcltMRFBBVEhfQlVGU0laRV07Ci1zdGF0aWMgY29uc3QgY2hhciogZ19sZF9saWJyYXJ5X3BhdGhzW0xEUEFUSF9NQVggKyAxXTsKLQotc3RhdGljIGNoYXIgZ19sZF9wcmVsb2Fkc19idWZmZXJbTERQUkVMT0FEX0JVRlNJWkVdOwotc3RhdGljIGNvbnN0IGNoYXIqIGdfbGRfcHJlbG9hZF9uYW1lc1tMRFBSRUxPQURfTUFYICsgMV07Ci0KLXN0YXRpYyBzb2luZm8qIGdfbGRfcHJlbG9hZHNbTERQUkVMT0FEX01BWCArIDFdOworc3RhdGljIHN0ZDo6dmVjdG9yPHNvaW5mbyo+IGdfbGRfcHJlbG9hZHM7CiAKIF9fTElCQ19ISURERU5fXyBpbnQgZ19sZF9kZWJ1Z192ZXJib3NpdHk7CiAKIF9fTElCQ19ISURERU5fXyBhYm9ydF9tc2dfdCogZ19hYm9ydF9tZXNzYWdlID0gbnVsbHB0cjsgLy8gRm9yIGRlYnVnZ2VyZC4KIAotZW51bSBSZWxvY2F0aW9uS2luZCB7Ci0gIGtSZWxvY0Fic29sdXRlID0gMCwKLSAga1JlbG9jUmVsYXRpdmUsCi0gIGtSZWxvY0NvcHksCi0gIGtSZWxvY1N5bWJvbCwKLSAga1JlbG9jTWF4Ci19OwotCiAjaWYgU1RBVFMKIHN0cnVjdCBsaW5rZXJfc3RhdHNfdCB7CiAgIGludCBjb3VudFtrUmVsb2NNYXhdOwpAQCAtMTM0LDQzICsxMTksMTcgQEAKIAogc3RhdGljIGxpbmtlcl9zdGF0c190IGxpbmtlcl9zdGF0czsKIAotc3RhdGljIHZvaWQgY291bnRfcmVsb2NhdGlvbihSZWxvY2F0aW9uS2luZCBraW5kKSB7Cit2b2lkIGNvdW50X3JlbG9jYXRpb24oUmVsb2NhdGlvbktpbmQga2luZCkgewogICArK2xpbmtlcl9zdGF0cy5jb3VudFtraW5kXTsKIH0KICNlbHNlCi1zdGF0aWMgdm9pZCBjb3VudF9yZWxvY2F0aW9uKFJlbG9jYXRpb25LaW5kKSB7Cit2b2lkIGNvdW50X3JlbG9jYXRpb24oUmVsb2NhdGlvbktpbmQpIHsKIH0KICNlbmRpZgogCiAjaWYgQ09VTlRfUEFHRVMKLXN0YXRpYyB1bnNpZ25lZCBiaXRtYXNrWzQwOTZdOwotI2lmIGRlZmluZWQoX19MUDY0X18pCi0jZGVmaW5lIE1BUksob2Zmc2V0KSBcCi0gICAgZG8geyBcCi0gICAgICBpZiAoKCgob2Zmc2V0KSA+PiAxMikgPj4gNSkgPCA0MDk2KSBcCi0gICAgICAgICAgYml0bWFza1soKG9mZnNldCkgPj4gMTIpID4+IDVdIHw9ICgxIDw8ICgoKG9mZnNldCkgPj4gMTIpICYgMzEpKTsgXAotICAgIH0gd2hpbGUgKDApCi0jZWxzZQotI2RlZmluZSBNQVJLKG9mZnNldCkgXAotICAgIGRvIHsgXAotICAgICAgYml0bWFza1soKG9mZnNldCkgPj4gMTIpID4+IDNdIHw9ICgxIDw8ICgoKG9mZnNldCkgPj4gMTIpICYgNykpOyBcCi0gICAgfSB3aGlsZSAoMCkKK3VpbnQzMl90IGJpdG1hc2tbNDA5Nl07CiAjZW5kaWYKLSNlbHNlCi0jZGVmaW5lIE1BUksoeCkgZG8ge30gd2hpbGUgKDApCi0jZW5kaWYKLQotLy8gWW91IHNob3VsZG4ndCB0cnkgdG8gY2FsbCBtZW1vcnktYWxsb2NhdGluZyBmdW5jdGlvbnMgaW4gdGhlIGR5bmFtaWMgbGlua2VyLgotLy8gR3VhcmQgYWdhaW5zdCB0aGUgbW9zdCBvYnZpb3VzIG9uZXMuCi0jZGVmaW5lIERJU0FMTE9XX0FMTE9DQVRJT04ocmV0dXJuX3R5cGUsIG5hbWUsIC4uLikgXAotICAgIHJldHVybl90eXBlIG5hbWUgX19WQV9BUkdTX18gXAotICAgIHsgXAotICAgICAgX19saWJjX2ZhdGFsKCJFUlJPUjogIiAjbmFtZSAiIGNhbGxlZCBmcm9tIHRoZSBkeW5hbWljIGxpbmtlciFcbiIpOyBcCi0gICAgfQotRElTQUxMT1dfQUxMT0NBVElPTih2b2lkKiwgbWFsbG9jLCAoc2l6ZV90IHUgX191bnVzZWQpKTsKLURJU0FMTE9XX0FMTE9DQVRJT04odm9pZCwgZnJlZSwgKHZvaWQqIHUgX191bnVzZWQpKTsKLURJU0FMTE9XX0FMTE9DQVRJT04odm9pZCosIHJlYWxsb2MsICh2b2lkKiB1MSBfX3VudXNlZCwgc2l6ZV90IHUyIF9fdW51c2VkKSk7Ci1ESVNBTExPV19BTExPQ0FUSU9OKHZvaWQqLCBjYWxsb2MsIChzaXplX3QgdTEgX191bnVzZWQsIHNpemVfdCB1MiBfX3VudXNlZCkpOwogCiBzdGF0aWMgY2hhciBfX2xpbmtlcl9kbF9lcnJfYnVmWzc2OF07CiAKQEAgLTE4NCwxNyArMTQzLDIxIEBACiAKIC8vIFRoaXMgZnVuY3Rpb24gaXMgYW4gZW1wdHkgc3R1YiB3aGVyZSBHREIgbG9jYXRlcyBhIGJyZWFrcG9pbnQgdG8gZ2V0IG5vdGlmaWVkCiAvLyBhYm91dCBsaW5rZXIgYWN0aXZpdHkuCi1leHRlcm4gIkMiIHZvaWQgX19hdHRyaWJ1dGVfXygobm9pbmxpbmUpKSBfX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJkZWZhdWx0IikpKSBydGxkX2RiX2RsYWN0aXZpdHkoKTsKK2V4dGVybiAiQyIKK3ZvaWQgX19hdHRyaWJ1dGVfXygobm9pbmxpbmUpKSBfX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJkZWZhdWx0IikpKSBydGxkX2RiX2RsYWN0aXZpdHkoKTsKIAogc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBnX19yX2RlYnVnX211dGV4ID0gUFRIUkVBRF9NVVRFWF9JTklUSUFMSVpFUjsKLXN0YXRpYyByX2RlYnVnIF9yX2RlYnVnID0gezEsIG51bGxwdHIsIHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PigmcnRsZF9kYl9kbGFjdGl2aXR5KSwgcl9kZWJ1Zzo6UlRfQ09OU0lTVEVOVCwgMH07CitzdGF0aWMgcl9kZWJ1ZyBfcl9kZWJ1ZyA9CisgICAgezEsIG51bGxwdHIsIHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PigmcnRsZF9kYl9kbGFjdGl2aXR5KSwgcl9kZWJ1Zzo6UlRfQ09OU0lTVEVOVCwgMH07CisKIHN0YXRpYyBsaW5rX21hcCogcl9kZWJ1Z190YWlsID0gMDsKIAogc3RhdGljIHZvaWQgaW5zZXJ0X3NvaW5mb19pbnRvX2RlYnVnX21hcChzb2luZm8qIGluZm8pIHsKICAgLy8gQ29weSB0aGUgbmVjZXNzYXJ5IGZpZWxkcyBpbnRvIHRoZSBkZWJ1ZyBzdHJ1Y3R1cmUuCiAgIGxpbmtfbWFwKiBtYXAgPSAmKGluZm8tPmxpbmtfbWFwX2hlYWQpOwogICBtYXAtPmxfYWRkciA9IGluZm8tPmxvYWRfYmlhczsKLSAgbWFwLT5sX25hbWUgPSByZWludGVycHJldF9jYXN0PGNoYXIqPihpbmZvLT5uYW1lKTsKKyAgLy8gbGlua19tYXAgbF9uYW1lIGZpZWxkIGlzIG5vdCBjb25zdC4KKyAgbWFwLT5sX25hbWUgPSBjb25zdF9jYXN0PGNoYXIqPihpbmZvLT5nZXRfcmVhbHBhdGgoKSk7CiAgIG1hcC0+bF9sZCA9IGluZm8tPmR5bmFtaWM7CiAKICAgLy8gU3RpY2sgdGhlIG5ldyBsaWJyYXJ5IGF0IHRoZSBlbmQgb2YgdGhlIGxpc3QuCkBAIC0yMjksNyArMTkyLDcgQEAKIH0KIAogc3RhdGljIHZvaWQgbm90aWZ5X2dkYl9vZl9sb2FkKHNvaW5mbyogaW5mbykgewotICBpZiAoaW5mby0+ZmxhZ3MgJiBGTEFHX0VYRSkgeworICBpZiAoaW5mby0+aXNfbWFpbl9leGVjdXRhYmxlKCkpIHsKICAgICAvLyBHREIgYWxyZWFkeSBrbm93cyBhYm91dCB0aGUgbWFpbiBleGVjdXRhYmxlCiAgICAgcmV0dXJuOwogICB9CkBAIC0yNDYsNyArMjA5LDcgQEAKIH0KIAogc3RhdGljIHZvaWQgbm90aWZ5X2dkYl9vZl91bmxvYWQoc29pbmZvKiBpbmZvKSB7Ci0gIGlmIChpbmZvLT5mbGFncyAmIEZMQUdfRVhFKSB7CisgIGlmIChpbmZvLT5pc19tYWluX2V4ZWN1dGFibGUoKSkgewogICAgIC8vIEdEQiBhbHJlYWR5IGtub3dzIGFib3V0IHRoZSBtYWluIGV4ZWN1dGFibGUKICAgICByZXR1cm47CiAgIH0KQEAgLTI3NywxOCArMjQwLDE0IEBACiAgIGdfc29pbmZvX2xpbmtzX2FsbG9jYXRvci5mcmVlKGVudHJ5KTsKIH0KIAotc3RhdGljIHZvaWQgcHJvdGVjdF9kYXRhKGludCBwcm90ZWN0aW9uKSB7Ci0gIGdfc29pbmZvX2FsbG9jYXRvci5wcm90ZWN0X2FsbChwcm90ZWN0aW9uKTsKLSAgZ19zb2luZm9fbGlua3NfYWxsb2NhdG9yLnByb3RlY3RfYWxsKHByb3RlY3Rpb24pOwotfQotCi1zdGF0aWMgc29pbmZvKiBzb2luZm9fYWxsb2MoY29uc3QgY2hhciogbmFtZSwgc3RydWN0IHN0YXQqIGZpbGVfc3RhdCwgb2ZmNjRfdCBmaWxlX29mZnNldCkgewotICBpZiAoc3RybGVuKG5hbWUpID49IFNPSU5GT19OQU1FX0xFTikgeworc3RhdGljIHNvaW5mbyogc29pbmZvX2FsbG9jKGNvbnN0IGNoYXIqIG5hbWUsIHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2ZmNjRfdCBmaWxlX29mZnNldCwgdWludDMyX3QgcnRsZF9mbGFncykgeworICBpZiAoc3RybGVuKG5hbWUpID49IFBBVEhfTUFYKSB7CiAgICAgRExfRVJSKCJsaWJyYXJ5IG5hbWUgXCIlc1wiIHRvbyBsb25nIiwgbmFtZSk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KIAotICBzb2luZm8qIHNpID0gbmV3IChnX3NvaW5mb19hbGxvY2F0b3IuYWxsb2MoKSkgc29pbmZvKG5hbWUsIGZpbGVfc3RhdCwgZmlsZV9vZmZzZXQpOworICBzb2luZm8qIHNpID0gbmV3IChnX3NvaW5mb19hbGxvY2F0b3IuYWxsb2MoKSkgc29pbmZvKG5hbWUsIGZpbGVfc3RhdCwgZmlsZV9vZmZzZXQsIHJ0bGRfZmxhZ3MpOwogCiAgIHNvbmV4dC0+bmV4dCA9IHNpOwogICBzb25leHQgPSBzaTsKQEAgLTMwOCw3ICsyNjcsNyBAQAogCiAgIHNvaW5mbyAqcHJldiA9IG51bGxwdHIsICp0cmF2OwogCi0gIFRSQUNFKCJuYW1lICVzOiBmcmVlaW5nIHNvaW5mbyBAICVwIiwgc2ktPm5hbWUsIHNpKTsKKyAgVFJBQ0UoIm5hbWUgJXM6IGZyZWVpbmcgc29pbmZvIEAgJXAiLCBzaS0+Z2V0X3NvbmFtZSgpLCBzaSk7CiAKICAgZm9yICh0cmF2ID0gc29saXN0OyB0cmF2ICE9IG51bGxwdHI7IHRyYXYgPSB0cmF2LT5uZXh0KSB7CiAgICAgaWYgKHRyYXYgPT0gc2kpIHsKQEAgLTMxNiw5ICsyNzUsMTAgQEAKICAgICB9CiAgICAgcHJldiA9IHRyYXY7CiAgIH0KKwogICBpZiAodHJhdiA9PSBudWxscHRyKSB7CiAgICAgLy8gc2kgd2FzIG5vdCBpbiBzb2xpc3QKLSAgICBETF9FUlIoIm5hbWUgXCIlc1wiIGlzIG5vdCBpbiBzb2xpc3QhIiwgc2ktPm5hbWUpOworICAgIERMX0VSUigibmFtZSBcIiVzXCJAJXAgaXMgbm90IGluIHNvbGlzdCEiLCBzaS0+Z2V0X3NvbmFtZSgpLCBzaSk7CiAgICAgcmV0dXJuOwogICB9CiAKQEAgLTMzNSw0MSArMjk1LDQ4IEBACiAgIGdfc29pbmZvX2FsbG9jYXRvci5mcmVlKHNpKTsKIH0KIAotCiBzdGF0aWMgdm9pZCBwYXJzZV9wYXRoKGNvbnN0IGNoYXIqIHBhdGgsIGNvbnN0IGNoYXIqIGRlbGltaXRlcnMsCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqKiBhcnJheSwgY2hhciogYnVmLCBzaXplX3QgYnVmX3NpemUsIHNpemVfdCBtYXhfY291bnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+KiBwYXRocykgewogICBpZiAocGF0aCA9PSBudWxscHRyKSB7CiAgICAgcmV0dXJuOwogICB9CiAKLSAgc2l6ZV90IGxlbiA9IHN0cmxjcHkoYnVmLCBwYXRoLCBidWZfc2l6ZSk7CisgIHBhdGhzLT5jbGVhcigpOwogCi0gIHNpemVfdCBpID0gMDsKLSAgY2hhciogYnVmX3AgPSBidWY7Ci0gIHdoaWxlIChpIDwgbWF4X2NvdW50ICYmIChhcnJheVtpXSA9IHN0cnNlcCgmYnVmX3AsIGRlbGltaXRlcnMpKSkgewotICAgIGlmICgqYXJyYXlbaV0gIT0gJ1wwJykgewotICAgICAgKytpOworICBmb3IgKGNvbnN0IGNoYXIgKnAgPSBwYXRoOyA7ICsrcCkgeworICAgIHNpemVfdCBsZW4gPSBzdHJjc3BuKHAsIGRlbGltaXRlcnMpOworICAgIC8vIHNraXAgZW1wdHkgdG9rZW5zCisgICAgaWYgKGxlbiA9PSAwKSB7CisgICAgICBjb250aW51ZTsKICAgICB9Ci0gIH0KIAotICAvLyBGb3JnZXQgdGhlIGxhc3QgcGF0aCBpZiB3ZSBoYWQgdG8gdHJ1bmNhdGU7IHRoaXMgb2NjdXJzIGlmIHRoZSAybmQgdG8KLSAgLy8gbGFzdCBjaGFyIGlzbid0ICdcMCcgKGkuZS4gd2Fzbid0IG9yaWdpbmFsbHkgYSBkZWxpbWl0ZXIpLgotICBpZiAoaSA+IDAgJiYgbGVuID49IGJ1Zl9zaXplICYmIGJ1ZltidWZfc2l6ZSAtIDJdICE9ICdcMCcpIHsKLSAgICBhcnJheVtpIC0gMV0gPSBudWxscHRyOwotICB9IGVsc2UgewotICAgIGFycmF5W2ldID0gbnVsbHB0cjsKKyAgICBwYXRocy0+cHVzaF9iYWNrKHN0ZDo6c3RyaW5nKHAsIGxlbikpOworICAgIHAgKz0gbGVuOworCisgICAgaWYgKCpwID09ICdcMCcpIHsKKyAgICAgIGJyZWFrOworICAgIH0KICAgfQogfQogCiBzdGF0aWMgdm9pZCBwYXJzZV9MRF9MSUJSQVJZX1BBVEgoY29uc3QgY2hhciogcGF0aCkgewotICBwYXJzZV9wYXRoKHBhdGgsICI6IiwgZ19sZF9saWJyYXJ5X3BhdGhzLAotICAgICAgICAgICAgIGdfbGRfbGlicmFyeV9wYXRoc19idWZmZXIsIHNpemVvZihnX2xkX2xpYnJhcnlfcGF0aHNfYnVmZmVyKSwgTERQQVRIX01BWCk7CisgIHBhcnNlX3BhdGgocGF0aCwgIjoiLCAmZ19sZF9saWJyYXJ5X3BhdGhzKTsKIH0KIAogc3RhdGljIHZvaWQgcGFyc2VfTERfUFJFTE9BRChjb25zdCBjaGFyKiBwYXRoKSB7CiAgIC8vIFdlIGhhdmUgaGlzdG9yaWNhbGx5IHN1cHBvcnRlZCAnOicgYXMgd2VsbCBhcyAnICcgaW4gTERfUFJFTE9BRC4KLSAgcGFyc2VfcGF0aChwYXRoLCAiIDoiLCBnX2xkX3ByZWxvYWRfbmFtZXMsCi0gICAgICAgICAgICAgZ19sZF9wcmVsb2Fkc19idWZmZXIsIHNpemVvZihnX2xkX3ByZWxvYWRzX2J1ZmZlciksIExEUFJFTE9BRF9NQVgpOworICBwYXJzZV9wYXRoKHBhdGgsICIgOiIsICZnX2xkX3ByZWxvYWRfbmFtZXMpOworfQorCitzdGF0aWMgYm9vbCByZWFscGF0aF9mZChpbnQgZmQsIHN0ZDo6c3RyaW5nKiByZWFscGF0aCkgeworICBzdGQ6OnZlY3RvcjxjaGFyPiBidWYoUEFUSF9NQVgpLCBwcm9jX3NlbGZfZmQoUEFUSF9NQVgpOworICBzbnByaW50ZigmcHJvY19zZWxmX2ZkWzBdLCBwcm9jX3NlbGZfZmQuc2l6ZSgpLCAiL3Byb2Mvc2VsZi9mZC8lZCIsIGZkKTsKKyAgaWYgKHJlYWRsaW5rKCZwcm9jX3NlbGZfZmRbMF0sICZidWZbMF0sIGJ1Zi5zaXplKCkpID09IC0xKSB7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgKnJlYWxwYXRoID0gc3RkOjpzdHJpbmcoJmJ1ZlswXSk7CisgIHJldHVybiB0cnVlOwogfQogCiAjaWYgZGVmaW5lZChfX2FybV9fKQpAQCAtMzgzLDEyICszNTAsMTIgQEAKIC8vCiAvLyBUaGlzIGZ1bmN0aW9uIGlzIGV4cG9zZWQgdmlhIGRsZmNuLmNwcCBhbmQgbGliZGwuc28uCiBfVW53aW5kX1B0ciBkbF91bndpbmRfZmluZF9leGlkeChfVW53aW5kX1B0ciBwYywgaW50KiBwY291bnQpIHsKLSAgdW5zaWduZWQgYWRkciA9ICh1bnNpZ25lZClwYzsKKyAgdWludHB0cl90IGFkZHIgPSByZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4ocGMpOwogCiAgIGZvciAoc29pbmZvKiBzaSA9IHNvbGlzdDsgc2kgIT0gMDsgc2kgPSBzaS0+bmV4dCkgewogICAgIGlmICgoYWRkciA+PSBzaS0+YmFzZSkgJiYgKGFkZHIgPCAoc2ktPmJhc2UgKyBzaS0+c2l6ZSkpKSB7CiAgICAgICAgICpwY291bnQgPSBzaS0+QVJNX2V4aWR4X2NvdW50OwotICAgICAgICByZXR1cm4gKF9VbndpbmRfUHRyKXNpLT5BUk1fZXhpZHg7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PF9VbndpbmRfUHRyPihzaS0+QVJNX2V4aWR4KTsKICAgICB9CiAgIH0KICAgKnBjb3VudCA9IDA7CkBAIC00MTUsNzMgKzM4MiwzMjkgQEAKICAgcmV0dXJuIHJ2OwogfQogCi1zdGF0aWMgRWxmVyhTeW0pKiBzb2luZm9fZWxmX2xvb2t1cChzb2luZm8qIHNpLCB1bnNpZ25lZCBoYXNoLCBjb25zdCBjaGFyKiBuYW1lKSB7Ci0gIEVsZlcoU3ltKSogc3ltdGFiID0gc2ktPnN5bXRhYjsKLQotICBUUkFDRV9UWVBFKExPT0tVUCwgIlNFQVJDSCAlcyBpbiAlc0AlcCAleCAlemQiLAotICAgICAgICAgICAgIG5hbWUsIHNpLT5uYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzaS0+YmFzZSksIGhhc2gsIGhhc2ggJSBzaS0+bmJ1Y2tldCk7Ci0KLSAgZm9yICh1bnNpZ25lZCBuID0gc2ktPmJ1Y2tldFtoYXNoICUgc2ktPm5idWNrZXRdOyBuICE9IDA7IG4gPSBzaS0+Y2hhaW5bbl0pIHsKLSAgICBFbGZXKFN5bSkqIHMgPSBzeW10YWIgKyBuOwotICAgIGlmIChzdHJjbXAoc2ktPmdldF9zdHJpbmcocy0+c3RfbmFtZSksIG5hbWUpKSBjb250aW51ZTsKLQotICAgIC8vIG9ubHkgY29uY2VybiBvdXJzZWx2ZXMgd2l0aCBnbG9iYWwgYW5kIHdlYWsgc3ltYm9sIGRlZmluaXRpb25zCi0gICAgc3dpdGNoIChFTEZfU1RfQklORChzLT5zdF9pbmZvKSkgewotICAgICAgY2FzZSBTVEJfR0xPQkFMOgotICAgICAgY2FzZSBTVEJfV0VBSzoKLSAgICAgICAgaWYgKHMtPnN0X3NobmR4ID09IFNITl9VTkRFRikgewotICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0KLSAgICAgICAgVFJBQ0VfVFlQRShMT09LVVAsICJGT1VORCAlcyBpbiAlcyAoJXApICV6ZCIsCi0gICAgICAgICAgICAgICAgIG5hbWUsIHNpLT5uYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksCi0gICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4ocy0+c3Rfc2l6ZSkpOwotICAgICAgICByZXR1cm4gczsKLSAgICAgIGNhc2UgU1RCX0xPQ0FMOgotICAgICAgICBjb250aW51ZTsKLSAgICAgIGRlZmF1bHQ6Ci0gICAgICAgIF9fbGliY19mYXRhbCgiRVJST1I6IFVuZXhwZWN0ZWQgU1RfQklORCB2YWx1ZTogJWQgZm9yICclcycgaW4gJyVzJyIsCi0gICAgICAgICAgICBFTEZfU1RfQklORChzLT5zdF9pbmZvKSwgbmFtZSwgc2ktPm5hbWUpOwotICAgIH0KK2NvbnN0IEVsZlcoVmVyc3ltKSogc29pbmZvOjpnZXRfdmVyc3ltKHNpemVfdCBuKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMikgJiYgdmVyc3ltXyAhPSBudWxscHRyKSB7CisgICAgcmV0dXJuIHZlcnN5bV8gKyBuOwogICB9CiAKLSAgVFJBQ0VfVFlQRShMT09LVVAsICJOT1QgRk9VTkQgJXMgaW4gJXNAJXAgJXggJXpkIiwKLSAgICAgICAgICAgICBuYW1lLCBzaS0+bmFtZSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oc2ktPmJhc2UpLCBoYXNoLCBoYXNoICUgc2ktPm5idWNrZXQpOwotCi0KICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXNvaW5mbzo6c29pbmZvKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsIG9mZjY0X3QgZmlsZV9vZmZzZXQpIHsKK0VsZlcoQWRkcikgc29pbmZvOjpnZXRfdmVybmVlZF9wdHIoKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMikpIHsKKyAgICByZXR1cm4gdmVybmVlZF9wdHJfOworICB9CisKKyAgcmV0dXJuIDA7Cit9CisKK3NpemVfdCBzb2luZm86OmdldF92ZXJuZWVkX2NudCgpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiB2ZXJuZWVkX2NudF87CisgIH0KKworICByZXR1cm4gMDsKK30KKworRWxmVyhBZGRyKSBzb2luZm86OmdldF92ZXJkZWZfcHRyKCkgY29uc3QgeworICBpZiAoaGFzX21pbl92ZXJzaW9uKDIpKSB7CisgICAgcmV0dXJuIHZlcmRlZl9wdHJfOworICB9CisKKyAgcmV0dXJuIDA7Cit9CisKK3NpemVfdCBzb2luZm86OmdldF92ZXJkZWZfY250KCkgY29uc3QgeworICBpZiAoaGFzX21pbl92ZXJzaW9uKDIpKSB7CisgICAgcmV0dXJuIHZlcmRlZl9jbnRfOworICB9CisKKyAgcmV0dXJuIDA7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIEY+CitzdGF0aWMgYm9vbCBmb3JfZWFjaF92ZXJkZWYoY29uc3Qgc29pbmZvKiBzaSwgRiBmdW5jdG9yKSB7CisgIGlmICghc2ktPmhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgdWludHB0cl90IHZlcmRlZl9wdHIgPSBzaS0+Z2V0X3ZlcmRlZl9wdHIoKTsKKyAgaWYgKHZlcmRlZl9wdHIgPT0gMCkgeworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgc2l6ZV90IG9mZnNldCA9IDA7CisKKyAgc2l6ZV90IHZlcmRlZl9jbnQgPSBzaS0+Z2V0X3ZlcmRlZl9jbnQoKTsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGk8dmVyZGVmX2NudDsgKytpKSB7CisgICAgY29uc3QgRWxmVyhWZXJkZWYpKiB2ZXJkZWYgPSByZWludGVycHJldF9jYXN0PEVsZlcoVmVyZGVmKSo+KHZlcmRlZl9wdHIgKyBvZmZzZXQpOworICAgIHNpemVfdCB2ZXJkYXV4X29mZnNldCA9IG9mZnNldCArIHZlcmRlZi0+dmRfYXV4OworICAgIG9mZnNldCArPSB2ZXJkZWYtPnZkX25leHQ7CisKKyAgICBpZiAodmVyZGVmLT52ZF92ZXJzaW9uICE9IDEpIHsKKyAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgdmVyZGVmWyV6ZF0gdmRfdmVyc2lvbjogJWQgKGV4cGVjdGVkIDEpIGxpYnJhcnk6ICVzIiwKKyAgICAgICAgICBpLCB2ZXJkZWYtPnZkX3ZlcnNpb24sIHNpLT5nZXRfc29uYW1lKCkpOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmICgodmVyZGVmLT52ZF9mbGFncyAmIFZFUl9GTEdfQkFTRSkgIT0gMCkgeworICAgICAgLy8gInRoaXMgaXMgdGhlIHZlcnNpb24gb2YgdGhlIGZpbGUgaXRzZWxmLiAgSXQgbXVzdCBub3QgYmUgdXNlZCBmb3IKKyAgICAgIC8vICBtYXRjaGluZyBhIHN5bWJvbC4gSXQgY2FuIGJlIHVzZWQgdG8gbWF0Y2ggcmVmZXJlbmNlcy4iCisgICAgICAvLworICAgICAgLy8gaHR0cDovL3d3dy5ha2thZGlhLm9yZy9kcmVwcGVyL3N5bWJvbC12ZXJzaW9uaW5nCisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICBpZiAodmVyZGVmLT52ZF9jbnQgPT0gMCkgeworICAgICAgRExfRVJSKCJpbnZhbGlkIHZlcmRlZlslemRdIHZkX2NudCA9PSAwICh2ZXJzaW9uIHdpdGhvdXQgYSBuYW1lKSIsIGkpOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGNvbnN0IEVsZlcoVmVyZGF1eCkqIHZlcmRhdXggPSByZWludGVycHJldF9jYXN0PEVsZlcoVmVyZGF1eCkqPih2ZXJkZWZfcHRyICsgdmVyZGF1eF9vZmZzZXQpOworCisgICAgaWYgKGZ1bmN0b3IoaSwgdmVyZGVmLCB2ZXJkYXV4KSA9PSB0cnVlKSB7CisgICAgICBicmVhazsKKyAgICB9CisgIH0KKworICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBzb2luZm86OmZpbmRfdmVyZGVmX3ZlcnNpb25faW5kZXgoY29uc3QgdmVyc2lvbl9pbmZvKiB2aSwgRWxmVyhWZXJzeW0pKiB2ZXJzeW0pIGNvbnN0IHsKKyAgaWYgKHZpID09IG51bGxwdHIpIHsKKyAgICAqdmVyc3ltID0ga1ZlcnN5bU5vdE5lZWRlZDsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgICp2ZXJzeW0gPSBrVmVyc3ltR2xvYmFsOworCisgIHJldHVybiBmb3JfZWFjaF92ZXJkZWYodGhpcywKKyAgICBbJl0oc2l6ZV90LCBjb25zdCBFbGZXKFZlcmRlZikqIHZlcmRlZiwgY29uc3QgRWxmVyhWZXJkYXV4KSogdmVyZGF1eCkgeworICAgICAgaWYgKHZlcmRlZi0+dmRfaGFzaCA9PSB2aS0+ZWxmX2hhc2ggJiYKKyAgICAgICAgICBzdHJjbXAodmktPm5hbWUsIGdldF9zdHJpbmcodmVyZGF1eC0+dmRhX25hbWUpKSA9PSAwKSB7CisgICAgICAgICp2ZXJzeW0gPSB2ZXJkZWYtPnZkX25keDsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICB9CisKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICk7Cit9CisKK2Jvb2wgc29pbmZvOjpmaW5kX3N5bWJvbF9ieV9uYW1lKFN5bWJvbE5hbWUmIHN5bWJvbF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmVyc2lvbl9pbmZvKiB2aSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVsZlcoU3ltKSoqIHN5bWJvbCkgY29uc3QgeworICB1aW50MzJfdCBzeW1ib2xfaW5kZXg7CisgIGJvb2wgc3VjY2VzcyA9CisgICAgICBpc19nbnVfaGFzaCgpID8KKyAgICAgIGdudV9sb29rdXAoc3ltYm9sX25hbWUsIHZpLCAmc3ltYm9sX2luZGV4KSA6CisgICAgICBlbGZfbG9va3VwKHN5bWJvbF9uYW1lLCB2aSwgJnN5bWJvbF9pbmRleCk7CisKKyAgaWYgKHN1Y2Nlc3MpIHsKKyAgICAqc3ltYm9sID0gc3ltYm9sX2luZGV4ID09IDAgPyBudWxscHRyIDogc3ltdGFiXyArIHN5bWJvbF9pbmRleDsKKyAgfQorCisgIHJldHVybiBzdWNjZXNzOworfQorCitzdGF0aWMgYm9vbCBpc19zeW1ib2xfZ2xvYmFsX2FuZF9kZWZpbmVkKGNvbnN0IHNvaW5mbyogc2ksIGNvbnN0IEVsZlcoU3ltKSogcykgeworICBpZiAoRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgPT0gU1RCX0dMT0JBTCB8fAorICAgICAgRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgPT0gU1RCX1dFQUspIHsKKyAgICByZXR1cm4gcy0+c3Rfc2huZHggIT0gU0hOX1VOREVGOworICB9IGVsc2UgaWYgKEVMRl9TVF9CSU5EKHMtPnN0X2luZm8pICE9IFNUQl9MT0NBTCkgeworICAgIERMX1dBUk4oInVuZXhwZWN0ZWQgU1RfQklORCB2YWx1ZTogJWQgZm9yICclcycgaW4gJyVzJyIsCisgICAgICAgIEVMRl9TVF9CSU5EKHMtPnN0X2luZm8pLCBzaS0+Z2V0X3N0cmluZyhzLT5zdF9uYW1lKSwgc2ktPmdldF9zb25hbWUoKSk7CisgIH0KKworICByZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyBjb25zdCBFbGZXKFZlcnN5bSkga1ZlcnN5bUhpZGRlbkJpdCA9IDB4ODAwMDsKKworc3RhdGljIGlubGluZSBib29sIGlzX3ZlcnN5bV9oaWRkZW4oY29uc3QgRWxmVyhWZXJzeW0pKiB2ZXJzeW0pIHsKKyAgLy8gdGhlIHN5bWJvbCBpcyBoaWRkZW4gaWYgYml0IDE1IG9mIHZlcnN5bSBpcyBzZXQuCisgIHJldHVybiB2ZXJzeW0gIT0gbnVsbHB0ciAmJiAoKnZlcnN5bSAmIGtWZXJzeW1IaWRkZW5CaXQpICE9IDA7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBjaGVja19zeW1ib2xfdmVyc2lvbihjb25zdCBFbGZXKFZlcnN5bSkgdmVybmVlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFbGZXKFZlcnN5bSkqIHZlcmRlZikgeworICByZXR1cm4gdmVybmVlZCA9PSBrVmVyc3ltTm90TmVlZGVkIHx8CisgICAgICB2ZXJkZWYgPT0gbnVsbHB0ciB8fAorICAgICAgdmVybmVlZCA9PSAoKnZlcmRlZiAmIH5rVmVyc3ltSGlkZGVuQml0KTsKK30KKworYm9vbCBzb2luZm86OmdudV9sb29rdXAoU3ltYm9sTmFtZSYgc3ltYm9sX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLAorICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QqIHN5bWJvbF9pbmRleCkgY29uc3QgeworICB1aW50MzJfdCBoYXNoID0gc3ltYm9sX25hbWUuZ251X2hhc2goKTsKKyAgdWludDMyX3QgaDIgPSBoYXNoID4+IGdudV9zaGlmdDJfOworCisgIHVpbnQzMl90IGJsb29tX21hc2tfYml0cyA9IHNpemVvZihFbGZXKEFkZHIpKSo4OworICB1aW50MzJfdCB3b3JkX251bSA9IChoYXNoIC8gYmxvb21fbWFza19iaXRzKSAmIGdudV9tYXNrd29yZHNfOworICBFbGZXKEFkZHIpIGJsb29tX3dvcmQgPSBnbnVfYmxvb21fZmlsdGVyX1t3b3JkX251bV07CisKKyAgKnN5bWJvbF9pbmRleCA9IDA7CisKKyAgVFJBQ0VfVFlQRShMT09LVVAsICJTRUFSQ0ggJXMgaW4gJXNAJXAgKGdudSkiLAorICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSk7CisKKyAgLy8gdGVzdCBhZ2FpbnN0IGJsb29tIGZpbHRlcgorICBpZiAoKDEgJiAoYmxvb21fd29yZCA+PiAoaGFzaCAlIGJsb29tX21hc2tfYml0cykpICYgKGJsb29tX3dvcmQgPj4gKGgyICUgYmxvb21fbWFza19iaXRzKSkpID09IDApIHsKKyAgICBUUkFDRV9UWVBFKExPT0tVUCwgIk5PVCBGT1VORCAlcyBpbiAlc0AlcCIsCisgICAgICAgIHN5bWJvbF9uYW1lLmdldF9uYW1lKCksIGdldF9zb25hbWUoKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSkpOworCisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICAvLyBibG9vbSB0ZXN0IHNheXMgInByb2JhYmx5IHllcyIuLi4KKyAgdWludDMyX3QgbiA9IGdudV9idWNrZXRfW2hhc2ggJSBnbnVfbmJ1Y2tldF9dOworCisgIGlmIChuID09IDApIHsKKyAgICBUUkFDRV9UWVBFKExPT0tVUCwgIk5PVCBGT1VORCAlcyBpbiAlc0AlcCIsCisgICAgICAgIHN5bWJvbF9uYW1lLmdldF9uYW1lKCksIGdldF9zb25hbWUoKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSkpOworCisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICAvLyBsb29rdXAgdmVyc3ltIGZvciB0aGUgdmVyc2lvbiBkZWZpbml0aW9uIGluIHRoaXMgbGlicmFyeQorICAvLyBub3RlIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gInZlcnNpb24gaXMgbm90IHJlcXVlc3RlZCIgKHZpID09IG51bGxwdHIpCisgIC8vIGFuZCAidmVyc2lvbiBub3QgZm91bmQiLiBJbiB0aGUgZmlyc3QgY2FzZSB2ZXJuZWVkIGlzIGtWZXJzeW1Ob3ROZWVkZWQKKyAgLy8gd2hpY2ggaW1wbGllcyB0aGF0IHRoZSBkZWZhdWx0IHZlcnNpb24gY2FuIGJlIGFjY2VwdGVkOyB0aGUgc2Vjb25kIGNhc2UgcmVzdWx0cyBpbgorICAvLyB2ZXJuZWVkID0gMSAoa1ZlcnN5bUdsb2JhbCkgYW5kIGltcGxpZXMgdGhhdCB3ZSBzaG91bGQgaWdub3JlIHZlcnNpb25lZCBzeW1ib2xzCisgIC8vIGZvciB0aGlzIGxpYnJhcnkgYW5kIGNvbnNpZGVyIG9ubHkgKmdsb2JhbCogb25lcy4KKyAgRWxmVyhWZXJzeW0pIHZlcm5lZWQgPSAwOworICBpZiAoIWZpbmRfdmVyZGVmX3ZlcnNpb25faW5kZXgodmksICZ2ZXJuZWVkKSkgeworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIGRvIHsKKyAgICBFbGZXKFN5bSkqIHMgPSBzeW10YWJfICsgbjsKKyAgICBjb25zdCBFbGZXKFZlcnN5bSkqIHZlcmRlZiA9IGdldF92ZXJzeW0obik7CisgICAgLy8gc2tpcCBoaWRkZW4gdmVyc2lvbnMgd2hlbiB2ZXJuZWVkID09IGtWZXJzeW1Ob3ROZWVkZWQgKDApCisgICAgaWYgKHZlcm5lZWQgPT0ga1ZlcnN5bU5vdE5lZWRlZCAmJiBpc192ZXJzeW1faGlkZGVuKHZlcmRlZikpIHsKKyAgICAgICAgY29udGludWU7CisgICAgfQorICAgIGlmICgoKGdudV9jaGFpbl9bbl0gXiBoYXNoKSA+PiAxKSA9PSAwICYmCisgICAgICAgIGNoZWNrX3N5bWJvbF92ZXJzaW9uKHZlcm5lZWQsIHZlcmRlZikgJiYKKyAgICAgICAgc3RyY21wKGdldF9zdHJpbmcocy0+c3RfbmFtZSksIHN5bWJvbF9uYW1lLmdldF9uYW1lKCkpID09IDAgJiYKKyAgICAgICAgaXNfc3ltYm9sX2dsb2JhbF9hbmRfZGVmaW5lZCh0aGlzLCBzKSkgeworICAgICAgVFJBQ0VfVFlQRShMT09LVVAsICJGT1VORCAlcyBpbiAlcyAoJXApICV6ZCIsCisgICAgICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksCisgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzLT5zdF9zaXplKSk7CisgICAgICAqc3ltYm9sX2luZGV4ID0gbjsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgfSB3aGlsZSAoKGdudV9jaGFpbl9bbisrXSAmIDEpID09IDApOworCisgIFRSQUNFX1RZUEUoTE9PS1VQLCAiTk9UIEZPVU5EICVzIGluICVzQCVwIiwKKyAgICAgICAgICAgICBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpLCBnZXRfc29uYW1lKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpKTsKKworICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBzb2luZm86OmVsZl9sb29rdXAoU3ltYm9sTmFtZSYgc3ltYm9sX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLAorICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QqIHN5bWJvbF9pbmRleCkgY29uc3QgeworICB1aW50MzJfdCBoYXNoID0gc3ltYm9sX25hbWUuZWxmX2hhc2goKTsKKworICBUUkFDRV9UWVBFKExPT0tVUCwgIlNFQVJDSCAlcyBpbiAlc0AlcCBoPSV4KGVsZikgJXpkIiwKKyAgICAgICAgICAgICBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpLCBnZXRfc29uYW1lKCksCisgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSksIGhhc2gsIGhhc2ggJSBuYnVja2V0Xyk7CisKKyAgRWxmVyhWZXJzeW0pIHZlcm5lZWQgPSAwOworICBpZiAoIWZpbmRfdmVyZGVmX3ZlcnNpb25faW5kZXgodmksICZ2ZXJuZWVkKSkgeworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIGZvciAodWludDMyX3QgbiA9IGJ1Y2tldF9baGFzaCAlIG5idWNrZXRfXTsgbiAhPSAwOyBuID0gY2hhaW5fW25dKSB7CisgICAgRWxmVyhTeW0pKiBzID0gc3ltdGFiXyArIG47CisgICAgY29uc3QgRWxmVyhWZXJzeW0pKiB2ZXJkZWYgPSBnZXRfdmVyc3ltKG4pOworCisgICAgLy8gc2tpcCBoaWRkZW4gdmVyc2lvbnMgd2hlbiB2ZXJuZWVkID09IDAKKyAgICBpZiAodmVybmVlZCA9PSBrVmVyc3ltTm90TmVlZGVkICYmIGlzX3ZlcnN5bV9oaWRkZW4odmVyZGVmKSkgeworICAgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICBpZiAoY2hlY2tfc3ltYm9sX3ZlcnNpb24odmVybmVlZCwgdmVyZGVmKSAmJgorICAgICAgICBzdHJjbXAoZ2V0X3N0cmluZyhzLT5zdF9uYW1lKSwgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSkgPT0gMCAmJgorICAgICAgICBpc19zeW1ib2xfZ2xvYmFsX2FuZF9kZWZpbmVkKHRoaXMsIHMpKSB7CisgICAgICBUUkFDRV9UWVBFKExPT0tVUCwgIkZPVU5EICVzIGluICVzICglcCkgJXpkIiwKKyAgICAgICAgICAgICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLAorICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksCisgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4ocy0+c3Rfc2l6ZSkpOworICAgICAgKnN5bWJvbF9pbmRleCA9IG47CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgIH0KKworICBUUkFDRV9UWVBFKExPT0tVUCwgIk5PVCBGT1VORCAlcyBpbiAlc0AlcCAleCAlemQiLAorICAgICAgICAgICAgIHN5bWJvbF9uYW1lLmdldF9uYW1lKCksIGdldF9zb25hbWUoKSwKKyAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSwgaGFzaCwgaGFzaCAlIG5idWNrZXRfKTsKKworICAqc3ltYm9sX2luZGV4ID0gMDsKKyAgcmV0dXJuIHRydWU7Cit9CisKK3NvaW5mbzo6c29pbmZvKGNvbnN0IGNoYXIqIHJlYWxwYXRoLCBjb25zdCBzdHJ1Y3Qgc3RhdCogZmlsZV9zdGF0LAorICAgICAgICAgICAgICAgb2ZmNjRfdCBmaWxlX29mZnNldCwgaW50IHJ0bGRfZmxhZ3MpIHsKICAgbWVtc2V0KHRoaXMsIDAsIHNpemVvZigqdGhpcykpOwogCi0gIHN0cmxjcHkodGhpcy0+bmFtZSwgbmFtZSwgc2l6ZW9mKHRoaXMtPm5hbWUpKTsKLSAgZmxhZ3MgPSBGTEFHX05FV19TT0lORk87Ci0gIHZlcnNpb24gPSBTT0lORk9fVkVSU0lPTjsKKyAgaWYgKHJlYWxwYXRoICE9IG51bGxwdHIpIHsKKyAgICByZWFscGF0aF8gPSByZWFscGF0aDsKKyAgfQorCisgIGZsYWdzXyA9IEZMQUdfTkVXX1NPSU5GTzsKKyAgdmVyc2lvbl8gPSBTT0lORk9fVkVSU0lPTjsKIAogICBpZiAoZmlsZV9zdGF0ICE9IG51bGxwdHIpIHsKLSAgICB0aGlzLT5zdF9kZXYgPSBmaWxlX3N0YXQtPnN0X2RldjsKLSAgICB0aGlzLT5zdF9pbm8gPSBmaWxlX3N0YXQtPnN0X2lubzsKLSAgICB0aGlzLT5maWxlX29mZnNldCA9IGZpbGVfb2Zmc2V0OworICAgIHRoaXMtPnN0X2Rldl8gPSBmaWxlX3N0YXQtPnN0X2RldjsKKyAgICB0aGlzLT5zdF9pbm9fID0gZmlsZV9zdGF0LT5zdF9pbm87CisgICAgdGhpcy0+ZmlsZV9vZmZzZXRfID0gZmlsZV9vZmZzZXQ7CiAgIH0KKworICB0aGlzLT5ydGxkX2ZsYWdzXyA9IHJ0bGRfZmxhZ3M7CiB9CiAKLXN0YXRpYyB1bnNpZ25lZCBlbGZoYXNoKGNvbnN0IGNoYXIqIF9uYW1lKSB7Ci0gIGNvbnN0IHVuc2lnbmVkIGNoYXIqIG5hbWUgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVuc2lnbmVkIGNoYXIqPihfbmFtZSk7Ci0gIHVuc2lnbmVkIGggPSAwLCBnOwogCi0gIHdoaWxlICgqbmFtZSkgewotICAgIGggPSAoaCA8PCA0KSArICpuYW1lKys7Ci0gICAgZyA9IGggJiAweGYwMDAwMDAwOwotICAgIGggXj0gZzsKLSAgICBoIF49IGcgPj4gMjQ7Cit1aW50MzJfdCBTeW1ib2xOYW1lOjplbGZfaGFzaCgpIHsKKyAgaWYgKCFoYXNfZWxmX2hhc2hfKSB7CisgICAgY29uc3QgdWludDhfdCogbmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+KG5hbWVfKTsKKyAgICB1aW50MzJfdCBoID0gMCwgZzsKKworICAgIHdoaWxlICgqbmFtZSkgeworICAgICAgaCA9IChoIDw8IDQpICsgKm5hbWUrKzsKKyAgICAgIGcgPSBoICYgMHhmMDAwMDAwMDsKKyAgICAgIGggXj0gZzsKKyAgICAgIGggXj0gZyA+PiAyNDsKKyAgICB9CisKKyAgICBlbGZfaGFzaF8gPSBoOworICAgIGhhc19lbGZfaGFzaF8gPSB0cnVlOwogICB9Ci0gIHJldHVybiBoOworCisgIHJldHVybiBlbGZfaGFzaF87CiB9CiAKLXN0YXRpYyBFbGZXKFN5bSkqIHNvaW5mb19kb19sb29rdXAoc29pbmZvKiBzaSwgY29uc3QgY2hhciogbmFtZSwgc29pbmZvKiogbHNpKSB7Ci0gIHVuc2lnbmVkIGVsZl9oYXNoID0gZWxmaGFzaChuYW1lKTsKLSAgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKK3VpbnQzMl90IFN5bWJvbE5hbWU6OmdudV9oYXNoKCkgeworICBpZiAoIWhhc19nbnVfaGFzaF8pIHsKKyAgICB1aW50MzJfdCBoID0gNTM4MTsKKyAgICBjb25zdCB1aW50OF90KiBuYW1lID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4obmFtZV8pOworICAgIHdoaWxlICgqbmFtZSAhPSAwKSB7CisgICAgICBoICs9IChoIDw8IDUpICsgKm5hbWUrKzsgLy8gaCozMyArIGMgPSBoICsgaCAqIDMyICsgYyA9IGggKyBoIDw8IDUgKyBjCisgICAgfQorCisgICAgZ251X2hhc2hfID0gIGg7CisgICAgaGFzX2dudV9oYXNoXyA9IHRydWU7CisgIH0KKworICByZXR1cm4gZ251X2hhc2hfOworfQorCitib29sIHNvaW5mb19kb19sb29rdXAoc29pbmZvKiBzaV9mcm9tLCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLAorICAgICAgICAgICAgICAgICAgICAgIHNvaW5mbyoqIHNpX2ZvdW5kX2luLCBjb25zdCBzb2luZm86OnNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm86OnNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwLCBjb25zdCBFbGZXKFN5bSkqKiBzeW1ib2wpIHsKKyAgU3ltYm9sTmFtZSBzeW1ib2xfbmFtZShuYW1lKTsKKyAgY29uc3QgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKIAogICAvKiAiVGhpcyBlbGVtZW50J3MgcHJlc2VuY2UgaW4gYSBzaGFyZWQgb2JqZWN0IGxpYnJhcnkgYWx0ZXJzIHRoZSBkeW5hbWljIGxpbmtlcidzCiAgICAqIHN5bWJvbCByZXNvbHV0aW9uIGFsZ29yaXRobSBmb3IgcmVmZXJlbmNlcyB3aXRoaW4gdGhlIGxpYnJhcnkuIEluc3RlYWQgb2Ygc3RhcnRpbmcKQEAgLTQ5NCw3OCArNzE3LDExMCBAQAogICAgKiBOb3RlIHRoYXQgdGhpcyBpcyB1bmxpa2VseSBzaW5jZSBzdGF0aWMgbGlua2VyIGF2b2lkcyBnZW5lcmF0aW5nCiAgICAqIHJlbG9jYXRpb25zIGZvciAtQnN5bWJvbGljIGxpbmtlZCBkeW5hbWljIGV4ZWN1dGFibGVzLgogICAgKi8KLSAgaWYgKHNpLT5oYXNfRFRfU1lNQk9MSUMpIHsKLSAgICBERUJVRygiJXM6IGxvb2tpbmcgdXAgJXMgaW4gbG9jYWwgc2NvcGUgKERUX1NZTUJPTElDKSIsIHNpLT5uYW1lLCBuYW1lKTsKLSAgICBzID0gc29pbmZvX2VsZl9sb29rdXAoc2ksIGVsZl9oYXNoLCBuYW1lKTsKKyAgaWYgKHNpX2Zyb20tPmhhc19EVF9TWU1CT0xJQykgeworICAgIERFQlVHKCIlczogbG9va2luZyB1cCAlcyBpbiBsb2NhbCBzY29wZSAoRFRfU1lNQk9MSUMpIiwgc2lfZnJvbS0+Z2V0X3NvbmFtZSgpLCBuYW1lKTsKKyAgICBpZiAoIXNpX2Zyb20tPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIHZpLCAmcykpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKICAgICBpZiAocyAhPSBudWxscHRyKSB7Ci0gICAgICAqbHNpID0gc2k7CisgICAgICAqc2lfZm91bmRfaW4gPSBzaV9mcm9tOwogICAgIH0KICAgfQogCi0gIGlmIChzID09IG51bGxwdHIgJiYgc29tYWluICE9IG51bGxwdHIpIHsKLSAgICAvLyAxLiBMb29rIGZvciBpdCBpbiB0aGUgbWFpbiBleGVjdXRhYmxlIHVubGVzcyB3ZSBhbHJlYWR5IGRpZC4KLSAgICBpZiAoc2kgIT0gc29tYWluIHx8ICFzaS0+aGFzX0RUX1NZTUJPTElDKSB7Ci0gICAgICBERUJVRygiJXM6IGxvb2tpbmcgdXAgJXMgaW4gZXhlY3V0YWJsZSAlcyIsCi0gICAgICAgICAgICBzaS0+bmFtZSwgbmFtZSwgc29tYWluLT5uYW1lKTsKLSAgICAgIHMgPSBzb2luZm9fZWxmX2xvb2t1cChzb21haW4sIGVsZl9oYXNoLCBuYW1lKTsKLSAgICAgIGlmIChzICE9IG51bGxwdHIpIHsKLSAgICAgICAgKmxzaSA9IHNvbWFpbjsKLSAgICAgIH0KLSAgICB9Ci0KLSAgICAvLyAyLiBMb29rIGZvciBpdCBpbiB0aGUgbGRfcHJlbG9hZHMKLSAgICBpZiAocyA9PSBudWxscHRyKSB7Ci0gICAgICBmb3IgKGludCBpID0gMDsgZ19sZF9wcmVsb2Fkc1tpXSAhPSBOVUxMOyBpKyspIHsKLSAgICAgICAgcyA9IHNvaW5mb19lbGZfbG9va3VwKGdfbGRfcHJlbG9hZHNbaV0sIGVsZl9oYXNoLCBuYW1lKTsKLSAgICAgICAgaWYgKHMgIT0gbnVsbHB0cikgewotICAgICAgICAgICpsc2kgPSBnX2xkX3ByZWxvYWRzW2ldOwotICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICB9Ci0gICAgfQotICB9Ci0KLSAgLyogTG9vayBmb3Igc3ltYm9scyBpbiB0aGUgbG9jYWwgc2NvcGUgKHRoZSBvYmplY3Qgd2hvIGlzCi0gICAqIHNlYXJjaGluZykuIFRoaXMgaGFwcGVucyB3aXRoIEMrKyB0ZW1wbGF0ZXMgb24geDg2IGZvciBzb21lCi0gICAqIHJlYXNvbi4KLSAgICoKLSAgICogTm90ZXMgb24gd2VhayBzeW1ib2xzOgotICAgKiBUaGUgRUxGIHNwZWNzIGFyZSBhbWJpZ3VvdXMgYWJvdXQgdHJlYXRtZW50IG9mIHdlYWsgZGVmaW5pdGlvbnMgaW4KLSAgICogZHluYW1pYyBsaW5raW5nLiAgU29tZSBzeXN0ZW1zIHJldHVybiB0aGUgZmlyc3QgZGVmaW5pdGlvbiBmb3VuZAotICAgKiBhbmQgc29tZSB0aGUgZmlyc3Qgbm9uLXdlYWsgZGVmaW5pdGlvbi4gICBUaGlzIGlzIHN5c3RlbSBkZXBlbmRlbnQuCi0gICAqIEhlcmUgd2UgcmV0dXJuIHRoZSBmaXJzdCBkZWZpbml0aW9uIGZvdW5kIGZvciBzaW1wbGljaXR5LiAgKi8KLQotICBpZiAocyA9PSBudWxscHRyICYmICFzaS0+aGFzX0RUX1NZTUJPTElDKSB7Ci0gICAgREVCVUcoIiVzOiBsb29raW5nIHVwICVzIGluIGxvY2FsIHNjb3BlIiwgc2ktPm5hbWUsIG5hbWUpOwotICAgIHMgPSBzb2luZm9fZWxmX2xvb2t1cChzaSwgZWxmX2hhc2gsIG5hbWUpOwotICAgIGlmIChzICE9IG51bGxwdHIpIHsKLSAgICAgICpsc2kgPSBzaTsKLSAgICB9Ci0gIH0KLQorICAvLyAxLiBMb29rIGZvciBpdCBpbiBnbG9iYWxfZ3JvdXAKICAgaWYgKHMgPT0gbnVsbHB0cikgewotICAgIHNpLT5nZXRfY2hpbGRyZW4oKS52aXNpdChbJl0oc29pbmZvKiBjaGlsZCkgewotICAgICAgREVCVUcoIiVzOiBsb29raW5nIHVwICVzIGluICVzIiwgc2ktPm5hbWUsIG5hbWUsIGNoaWxkLT5uYW1lKTsKLSAgICAgIHMgPSBzb2luZm9fZWxmX2xvb2t1cChjaGlsZCwgZWxmX2hhc2gsIG5hbWUpOwotICAgICAgaWYgKHMgIT0gbnVsbHB0cikgewotICAgICAgICAqbHNpID0gY2hpbGQ7CisgICAgYm9vbCBlcnJvciA9IGZhbHNlOworICAgIGdsb2JhbF9ncm91cC52aXNpdChbJl0oc29pbmZvKiBnbG9iYWxfc2kpIHsKKyAgICAgIERFQlVHKCIlczogbG9va2luZyB1cCAlcyBpbiAlcyAoZnJvbSBnbG9iYWwgZ3JvdXApIiwKKyAgICAgICAgICBzaV9mcm9tLT5nZXRfc29uYW1lKCksIG5hbWUsIGdsb2JhbF9zaS0+Z2V0X3NvbmFtZSgpKTsKKyAgICAgIGlmICghZ2xvYmFsX3NpLT5maW5kX3N5bWJvbF9ieV9uYW1lKHN5bWJvbF9uYW1lLCB2aSwgJnMpKSB7CisgICAgICAgIGVycm9yID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgfQorCisgICAgICBpZiAocyAhPSBudWxscHRyKSB7CisgICAgICAgICpzaV9mb3VuZF9pbiA9IGdsb2JhbF9zaTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorCiAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9KTsKKworICAgIGlmIChlcnJvcikgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgfQorCisgIC8vIDIuIExvb2sgZm9yIGl0IGluIHRoZSBsb2NhbCBncm91cAorICBpZiAocyA9PSBudWxscHRyKSB7CisgICAgYm9vbCBlcnJvciA9IGZhbHNlOworICAgIGxvY2FsX2dyb3VwLnZpc2l0KFsmXShzb2luZm8qIGxvY2FsX3NpKSB7CisgICAgICBpZiAobG9jYWxfc2kgPT0gc2lfZnJvbSAmJiBzaV9mcm9tLT5oYXNfRFRfU1lNQk9MSUMpIHsKKyAgICAgICAgLy8gd2UgYWxyZWFkeSBkaWQgdGhpcyAtIHNraXAKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICB9CisKKyAgICAgIERFQlVHKCIlczogbG9va2luZyB1cCAlcyBpbiAlcyAoZnJvbSBsb2NhbCBncm91cCkiLAorICAgICAgICAgIHNpX2Zyb20tPmdldF9zb25hbWUoKSwgbmFtZSwgbG9jYWxfc2ktPmdldF9zb25hbWUoKSk7CisgICAgICBpZiAoIWxvY2FsX3NpLT5maW5kX3N5bWJvbF9ieV9uYW1lKHN5bWJvbF9uYW1lLCB2aSwgJnMpKSB7CisgICAgICAgIGVycm9yID0gdHJ1ZTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorCisgICAgICBpZiAocyAhPSBudWxscHRyKSB7CisgICAgICAgICpzaV9mb3VuZF9pbiA9IGxvY2FsX3NpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0pOworCisgICAgaWYgKGVycm9yKSB7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQogICB9CiAKICAgaWYgKHMgIT0gbnVsbHB0cikgewogICAgIFRSQUNFX1RZUEUoTE9PS1VQLCAic2kgJXMgc3ltICVzIHMtPnN0X3ZhbHVlID0gJXAsICIKICAgICAgICAgICAgICAgICJmb3VuZCBpbiAlcywgYmFzZSA9ICVwLCBsb2FkIGJpYXMgPSAlcCIsCi0gICAgICAgICAgICAgICBzaS0+bmFtZSwgbmFtZSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocy0+c3RfdmFsdWUpLAotICAgICAgICAgICAgICAgKCpsc2kpLT5uYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPigoKmxzaSktPmJhc2UpLAotICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oKCpsc2kpLT5sb2FkX2JpYXMpKTsKKyAgICAgICAgICAgICAgIHNpX2Zyb20tPmdldF9zb25hbWUoKSwgbmFtZSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocy0+c3RfdmFsdWUpLAorICAgICAgICAgICAgICAgKCpzaV9mb3VuZF9pbiktPmdldF9zb25hbWUoKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oKCpzaV9mb3VuZF9pbiktPmJhc2UpLAorICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oKCpzaV9mb3VuZF9pbiktPmxvYWRfYmlhcykpOwogICB9CiAKLSAgcmV0dXJuIHM7CisgICpzeW1ib2wgPSBzOworICByZXR1cm4gdHJ1ZTsKIH0KIAorY2xhc3MgUHJvdGVjdGVkRGF0YUd1YXJkIHsKKyBwdWJsaWM6CisgIFByb3RlY3RlZERhdGFHdWFyZCgpIHsKKyAgICBpZiAocmVmX2NvdW50XysrID09IDApIHsKKyAgICAgIHByb3RlY3RfZGF0YShQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKTsKKyAgICB9CisgIH0KKworICB+UHJvdGVjdGVkRGF0YUd1YXJkKCkgeworICAgIGlmIChyZWZfY291bnRfID09IDApIHsgLy8gb3ZlcmZsb3cKKyAgICAgIF9fbGliY19mYXRhbCgiVG9vIG1hbnkgbmVzdGVkIGNhbGxzIHRvIGRsb3BlbigpIik7CisgICAgfQorCisgICAgaWYgKC0tcmVmX2NvdW50XyA9PSAwKSB7CisgICAgICBwcm90ZWN0X2RhdGEoUFJPVF9SRUFEKTsKKyAgICB9CisgIH0KKyBwcml2YXRlOgorICB2b2lkIHByb3RlY3RfZGF0YShpbnQgcHJvdGVjdGlvbikgeworICAgIGdfc29pbmZvX2FsbG9jYXRvci5wcm90ZWN0X2FsbChwcm90ZWN0aW9uKTsKKyAgICBnX3NvaW5mb19saW5rc19hbGxvY2F0b3IucHJvdGVjdF9hbGwocHJvdGVjdGlvbik7CisgIH0KKworICBzdGF0aWMgc2l6ZV90IHJlZl9jb3VudF87Cit9OworCitzaXplX3QgUHJvdGVjdGVkRGF0YUd1YXJkOjpyZWZfY291bnRfID0gMDsKKwogLy8gRWFjaCBzaXplIGhhcyBpdCdzIG93biBhbGxvY2F0b3IuCiB0ZW1wbGF0ZTxzaXplX3Qgc2l6ZT4KIGNsYXNzIFNpemVCYXNlZEFsbG9jYXRvciB7CkBAIC02NDEsMzMgKzg5Niw2NCBAQAogdHlwZWRlZiBsaW5rZWRfbGlzdF90PExvYWRUYXNrPiBMb2FkVGFza0xpc3Q7CiAKIAotLy8gVGhpcyBpcyB1c2VkIGJ5IGRsc3ltKDMpLiAgSXQgcGVyZm9ybXMgc3ltYm9sIGxvb2t1cCBvbmx5IHdpdGhpbiB0aGUKLS8vIHNwZWNpZmllZCBzb2luZm8gb2JqZWN0IGFuZCBpdHMgZGVwZW5kZW5jaWVzIGluIGJyZWFkdGggZmlyc3Qgb3JkZXIuCi1FbGZXKFN5bSkqIGRsc3ltX2hhbmRsZV9sb29rdXAoc29pbmZvKiBzaSwgc29pbmZvKiogZm91bmQsIGNvbnN0IGNoYXIqIG5hbWUpIHsKKy8vIFRoaXMgZnVuY3Rpb24gd2Fsa3MgZG93biB0aGUgdHJlZSBvZiBzb2luZm8gZGVwZW5kZW5jaWVzCisvLyBpbiBicmVhZHRoLWZpcnN0IG9yZGVyIGFuZAorLy8gICAqIGNhbGxzIGFjdGlvbihzb2luZm8qIHNpKSBmb3IgZWFjaCBub2RlLCBhbmQKKy8vICAgKiB0ZXJtaW5hdGVzIHdhbGsgaWYgYWN0aW9uIHJldHVybnMgZmFsc2UuCisvLworLy8gd2Fsa19kZXBlbmRlbmNpZXNfdHJlZSByZXR1cm5zIGZhbHNlIGlmIHdhbGsgd2FzIHRlcm1pbmF0ZWQKKy8vIGJ5IHRoZSBhY3Rpb24gYW5kIHRydWUgb3RoZXJ3aXNlLgordGVtcGxhdGU8dHlwZW5hbWUgRj4KK3N0YXRpYyBib29sIHdhbGtfZGVwZW5kZW5jaWVzX3RyZWUoc29pbmZvKiByb290X3NvaW5mb3NbXSwgc2l6ZV90IHJvb3Rfc29pbmZvc19zaXplLCBGIGFjdGlvbikgewogICBTb2luZm9MaW5rZWRMaXN0IHZpc2l0X2xpc3Q7CiAgIFNvaW5mb0xpbmtlZExpc3QgdmlzaXRlZDsKIAotICB2aXNpdF9saXN0LnB1c2hfYmFjayhzaSk7Ci0gIHNvaW5mbyogY3VycmVudF9zb2luZm87Ci0gIHdoaWxlICgoY3VycmVudF9zb2luZm8gPSB2aXNpdF9saXN0LnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7Ci0gICAgaWYgKHZpc2l0ZWQuY29udGFpbnMoY3VycmVudF9zb2luZm8pKSB7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcm9vdF9zb2luZm9zX3NpemU7ICsraSkgeworICAgIHZpc2l0X2xpc3QucHVzaF9iYWNrKHJvb3Rfc29pbmZvc1tpXSk7CisgIH0KKworICBzb2luZm8qIHNpOworICB3aGlsZSAoKHNpID0gdmlzaXRfbGlzdC5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgeworICAgIGlmICh2aXNpdGVkLmNvbnRhaW5zKHNpKSkgewogICAgICAgY29udGludWU7CiAgICAgfQogCi0gICAgRWxmVyhTeW0pKiByZXN1bHQgPSBzb2luZm9fZWxmX2xvb2t1cChjdXJyZW50X3NvaW5mbywgZWxmaGFzaChuYW1lKSwgbmFtZSk7Ci0KLSAgICBpZiAocmVzdWx0ICE9IG51bGxwdHIpIHsKLSAgICAgICpmb3VuZCA9IGN1cnJlbnRfc29pbmZvOwotICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICBpZiAoIWFjdGlvbihzaSkpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgdmlzaXRlZC5wdXNoX2JhY2soY3VycmVudF9zb2luZm8pOwogCi0gICAgY3VycmVudF9zb2luZm8tPmdldF9jaGlsZHJlbigpLmZvcl9lYWNoKFsmXShzb2luZm8qIGNoaWxkKSB7CisgICAgdmlzaXRlZC5wdXNoX2JhY2soc2kpOworCisgICAgc2ktPmdldF9jaGlsZHJlbigpLmZvcl9lYWNoKFsmXShzb2luZm8qIGNoaWxkKSB7CiAgICAgICB2aXNpdF9saXN0LnB1c2hfYmFjayhjaGlsZCk7CiAgICAgfSk7CiAgIH0KIAotICByZXR1cm4gbnVsbHB0cjsKKyAgcmV0dXJuIHRydWU7Cit9CisKKworLy8gVGhpcyBpcyB1c2VkIGJ5IGRsc3ltKDMpLiAgSXQgcGVyZm9ybXMgc3ltYm9sIGxvb2t1cCBvbmx5IHdpdGhpbiB0aGUKKy8vIHNwZWNpZmllZCBzb2luZm8gb2JqZWN0IGFuZCBpdHMgZGVwZW5kZW5jaWVzIGluIGJyZWFkdGggZmlyc3Qgb3JkZXIuCitjb25zdCBFbGZXKFN5bSkqIGRsc3ltX2hhbmRsZV9sb29rdXAoc29pbmZvKiBzaSwgc29pbmZvKiogZm91bmQsIGNvbnN0IGNoYXIqIG5hbWUpIHsKKyAgY29uc3QgRWxmVyhTeW0pKiByZXN1bHQgPSBudWxscHRyOworICBTeW1ib2xOYW1lIHN5bWJvbF9uYW1lKG5hbWUpOworCisgIHdhbGtfZGVwZW5kZW5jaWVzX3RyZWUoJnNpLCAxLCBbJl0oc29pbmZvKiBjdXJyZW50X3NvaW5mbykgeworICAgIGlmICghY3VycmVudF9zb2luZm8tPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIG51bGxwdHIsICZyZXN1bHQpKSB7CisgICAgICByZXN1bHQgPSBudWxscHRyOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChyZXN1bHQgIT0gbnVsbHB0cikgeworICAgICAgKmZvdW5kID0gY3VycmVudF9zb2luZm87CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7CisgIH0pOworCisgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIFRoaXMgaXMgdXNlZCBieSBkbHN5bSgzKSB0byBwZXJmb3JtcyBhIGdsb2JhbCBzeW1ib2wgbG9va3VwLiBJZiB0aGUKQEAgLTY3NSwyMiArOTYxLDY1IEBACiAgICBiZWdpbm5pbmcgb2YgdGhlIGdsb2JhbCBzb2xpc3QuIE90aGVyd2lzZSB0aGUgc2VhcmNoIHN0YXJ0cyBhdCB0aGUKICAgIHNwZWNpZmllZCBzb2luZm8gKGZvciBSVExEX05FWFQpLgogICovCi1FbGZXKFN5bSkqIGRsc3ltX2xpbmVhcl9sb29rdXAoY29uc3QgY2hhciogbmFtZSwgc29pbmZvKiogZm91bmQsIHNvaW5mbyogc3RhcnQpIHsKLSAgdW5zaWduZWQgZWxmX2hhc2ggPSBlbGZoYXNoKG5hbWUpOworY29uc3QgRWxmVyhTeW0pKiBkbHN5bV9saW5lYXJfbG9va3VwKGNvbnN0IGNoYXIqIG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29pbmZvKiogZm91bmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29pbmZvKiBjYWxsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCogaGFuZGxlKSB7CisgIFN5bWJvbE5hbWUgc3ltYm9sX25hbWUobmFtZSk7CiAKLSAgaWYgKHN0YXJ0ID09IG51bGxwdHIpIHsKLSAgICBzdGFydCA9IHNvbGlzdDsKKyAgc29pbmZvKiBzdGFydCA9IHNvbGlzdDsKKworICBpZiAoaGFuZGxlID09IFJUTERfTkVYVCkgeworICAgIGlmIChjYWxsZXIgPT0gbnVsbHB0ciB8fCBjYWxsZXItPm5leHQgPT0gbnVsbHB0cikgeworICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfSBlbHNlIHsKKyAgICAgIHN0YXJ0ID0gY2FsbGVyLT5uZXh0OworICAgIH0KICAgfQogCi0gIEVsZlcoU3ltKSogcyA9IG51bGxwdHI7Ci0gIGZvciAoc29pbmZvKiBzaSA9IHN0YXJ0OyAocyA9PSBudWxscHRyKSAmJiAoc2kgIT0gbnVsbHB0cik7IHNpID0gc2ktPm5leHQpIHsKLSAgICBzID0gc29pbmZvX2VsZl9sb29rdXAoc2ksIGVsZl9oYXNoLCBuYW1lKTsKKyAgY29uc3QgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKKyAgZm9yIChzb2luZm8qIHNpID0gc3RhcnQ7IHNpICE9IG51bGxwdHI7IHNpID0gc2ktPm5leHQpIHsKKyAgICBpZiAoKHNpLT5nZXRfcnRsZF9mbGFncygpICYgUlRMRF9HTE9CQUwpID09IDApIHsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGlmICghc2ktPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIG51bGxwdHIsICZzKSkgeworICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCiAgICAgaWYgKHMgIT0gbnVsbHB0cikgewogICAgICAgKmZvdW5kID0gc2k7CiAgICAgICBicmVhazsKICAgICB9CiAgIH0KIAorICAvLyBJZiBub3QgZm91bmQgLSBsb29rIGludG8gbG9jYWxfZ3JvdXAgdW5sZXNzCisgIC8vIGNhbGxlciBpcyBwYXJ0IG9mIHRoZSBnbG9iYWwgZ3JvdXAgaW4gd2hpY2gKKyAgLy8gY2FzZSB3ZSBhbHJlYWR5IGRpZCBpdC4KKyAgaWYgKHMgPT0gbnVsbHB0ciAmJiBjYWxsZXIgIT0gbnVsbHB0ciAmJgorICAgICAgKGNhbGxlci0+Z2V0X3J0bGRfZmxhZ3MoKSAmIFJUTERfR0xPQkFMKSA9PSAwKSB7CisgICAgc29pbmZvKiBsb2NhbF9ncm91cF9yb290ID0gY2FsbGVyLT5nZXRfbG9jYWxfZ3JvdXBfcm9vdCgpOworCisgICAgaWYgKGhhbmRsZSA9PSBSVExEX0RFRkFVTFQpIHsKKyAgICAgIHN0YXJ0ID0gbG9jYWxfZ3JvdXBfcm9vdDsKKyAgICB9CisKKyAgICBmb3IgKHNvaW5mbyogc2kgPSBzdGFydDsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgeworICAgICAgaWYgKHNpLT5nZXRfbG9jYWxfZ3JvdXBfcm9vdCgpICE9IGxvY2FsX2dyb3VwX3Jvb3QpIHsKKyAgICAgICAgYnJlYWs7CisgICAgICB9CisKKyAgICAgIGlmICghc2ktPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIG51bGxwdHIsICZzKSkgeworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgIH0KKworICAgICAgaWYgKHMgIT0gbnVsbHB0cikgeworICAgICAgICAqZm91bmQgPSBzaTsKKyAgICAgICAgYnJlYWs7CisgICAgICB9CisgICAgfQorICB9CisKICAgaWYgKHMgIT0gbnVsbHB0cikgewogICAgIFRSQUNFX1RZUEUoTE9PS1VQLCAiJXMgcy0+c3RfdmFsdWUgPSAlcCwgZm91bmQtPmJhc2UgPSAlcCIsCiAgICAgICAgICAgICAgICBuYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KCgqZm91bmQpLT5iYXNlKSk7CkBAIC03MDksMTYgKzEwMzgsNDUgQEAKICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUVsZlcoU3ltKSogZGxhZGRyX2ZpbmRfc3ltYm9sKHNvaW5mbyogc2ksIGNvbnN0IHZvaWQqIGFkZHIpIHsKLSAgRWxmVyhBZGRyKSBzb2FkZHIgPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcik+KGFkZHIpIC0gc2ktPmJhc2U7CitFbGZXKFN5bSkqIHNvaW5mbzo6ZmluZF9zeW1ib2xfYnlfYWRkcmVzcyhjb25zdCB2b2lkKiBhZGRyKSB7CisgIHJldHVybiBpc19nbnVfaGFzaCgpID8gZ251X2FkZHJfbG9va3VwKGFkZHIpIDogZWxmX2FkZHJfbG9va3VwKGFkZHIpOworfQorCitzdGF0aWMgYm9vbCBzeW1ib2xfbWF0Y2hlc19zb2FkZHIoY29uc3QgRWxmVyhTeW0pKiBzeW0sIEVsZlcoQWRkcikgc29hZGRyKSB7CisgIHJldHVybiBzeW0tPnN0X3NobmR4ICE9IFNITl9VTkRFRiAmJgorICAgICAgc29hZGRyID49IHN5bS0+c3RfdmFsdWUgJiYKKyAgICAgIHNvYWRkciA8IHN5bS0+c3RfdmFsdWUgKyBzeW0tPnN0X3NpemU7Cit9CisKK0VsZlcoU3ltKSogc29pbmZvOjpnbnVfYWRkcl9sb29rdXAoY29uc3Qgdm9pZCogYWRkcikgeworICBFbGZXKEFkZHIpIHNvYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKT4oYWRkcikgLSBsb2FkX2JpYXM7CisKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBnbnVfbmJ1Y2tldF87ICsraSkgeworICAgIHVpbnQzMl90IG4gPSBnbnVfYnVja2V0X1tpXTsKKworICAgIGlmIChuID09IDApIHsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGRvIHsKKyAgICAgIEVsZlcoU3ltKSogc3ltID0gc3ltdGFiXyArIG47CisgICAgICBpZiAoc3ltYm9sX21hdGNoZXNfc29hZGRyKHN5bSwgc29hZGRyKSkgeworICAgICAgICByZXR1cm4gc3ltOworICAgICAgfQorICAgIH0gd2hpbGUgKChnbnVfY2hhaW5fW24rK10gJiAxKSA9PSAwKTsKKyAgfQorCisgIHJldHVybiBudWxscHRyOworfQorCitFbGZXKFN5bSkqIHNvaW5mbzo6ZWxmX2FkZHJfbG9va3VwKGNvbnN0IHZvaWQqIGFkZHIpIHsKKyAgRWxmVyhBZGRyKSBzb2FkZHIgPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcik+KGFkZHIpIC0gbG9hZF9iaWFzOwogCiAgIC8vIFNlYXJjaCB0aGUgbGlicmFyeSdzIHN5bWJvbCB0YWJsZSBmb3IgYW55IGRlZmluZWQgc3ltYm9sIHdoaWNoCiAgIC8vIGNvbnRhaW5zIHRoaXMgYWRkcmVzcy4KLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaS0+bmNoYWluOyArK2kpIHsKLSAgICBFbGZXKFN5bSkqIHN5bSA9ICZzaS0+c3ltdGFiW2ldOwotICAgIGlmIChzeW0tPnN0X3NobmR4ICE9IFNITl9VTkRFRiAmJgotICAgICAgICBzb2FkZHIgPj0gc3ltLT5zdF92YWx1ZSAmJgotICAgICAgICBzb2FkZHIgPCBzeW0tPnN0X3ZhbHVlICsgc3ltLT5zdF9zaXplKSB7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbmNoYWluXzsgKytpKSB7CisgICAgRWxmVyhTeW0pKiBzeW0gPSBzeW10YWJfICsgaTsKKyAgICBpZiAoc3ltYm9sX21hdGNoZXNfc29hZGRyKHN5bSwgc29hZGRyKSkgewogICAgICAgcmV0dXJuIHN5bTsKICAgICB9CiAgIH0KQEAgLTcyNiw0MSArMTA4NCwxNDEgQEAKICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXN0YXRpYyBpbnQgb3Blbl9saWJyYXJ5X29uX3BhdGgoY29uc3QgY2hhciogbmFtZSwgY29uc3QgY2hhciogY29uc3QgcGF0aHNbXSkgeworc3RhdGljIGludCBvcGVuX2xpYnJhcnlfaW5femlwZmlsZShjb25zdCBjaGFyKiBjb25zdCBwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmY2NF90KiBmaWxlX29mZnNldCkgeworICBUUkFDRSgiVHJ5aW5nIHppcCBmaWxlIG9wZW4gZnJvbSBwYXRoICclcyciLCBwYXRoKTsKKworICAvLyBUcmVhdCBhbiAnIScgY2hhcmFjdGVyIGluc2lkZSBhIHBhdGggYXMgdGhlIHNlcGFyYXRvciBiZXR3ZWVuIHRoZSBuYW1lCisgIC8vIG9mIHRoZSB6aXAgZmlsZSBvbiBkaXNrIGFuZCB0aGUgc3ViZGlyZWN0b3J5IHRvIHNlYXJjaCB3aXRoaW4gaXQuCisgIC8vIEZvciBleGFtcGxlLCBpZiBwYXRoIGlzICJmb28uemlwIWJhci9iYXMveC5zbyIsIHRoZW4gd2Ugc2VhcmNoIGZvcgorICAvLyAiYmFyL2Jhcy94LnNvIiB3aXRoaW4gImZvby56aXAiLgorICBjb25zdCBjaGFyKiBzZXBhcmF0b3IgPSBzdHJjaHIocGF0aCwgJyEnKTsKKyAgaWYgKHNlcGFyYXRvciA9PSBudWxscHRyKSB7CisgICAgcmV0dXJuIC0xOworICB9CisKICAgY2hhciBidWZbNTEyXTsKLSAgZm9yIChzaXplX3QgaSA9IDA7IHBhdGhzW2ldICE9IG51bGxwdHI7ICsraSkgewotICAgIGludCBuID0gX19saWJjX2Zvcm1hdF9idWZmZXIoYnVmLCBzaXplb2YoYnVmKSwgIiVzLyVzIiwgcGF0aHNbaV0sIG5hbWUpOwotICAgIGlmIChuIDwgMCB8fCBuID49IHN0YXRpY19jYXN0PGludD4oc2l6ZW9mKGJ1ZikpKSB7Ci0gICAgICBQUklOVCgiV2FybmluZzogaWdub3JpbmcgdmVyeSBsb25nIGxpYnJhcnkgcGF0aDogJXMvJXMiLCBwYXRoc1tpXSwgbmFtZSk7CisgIGlmIChzdHJsY3B5KGJ1ZiwgcGF0aCwgc2l6ZW9mKGJ1ZikpID49IHNpemVvZihidWYpKSB7CisgICAgUFJJTlQoIldhcm5pbmc6IGlnbm9yaW5nIHZlcnkgbG9uZyBsaWJyYXJ5IHBhdGg6ICVzIiwgcGF0aCk7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgYnVmW3NlcGFyYXRvciAtIHBhdGhdID0gJ1wwJzsKKworICBjb25zdCBjaGFyKiB6aXBfcGF0aCA9IGJ1ZjsKKyAgY29uc3QgY2hhciogZmlsZV9wYXRoID0gJmJ1ZltzZXBhcmF0b3IgLSBwYXRoICsgMV07CisgIGludCBmZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKHppcF9wYXRoLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOworICBpZiAoZmQgPT0gLTEpIHsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICBaaXBBcmNoaXZlSGFuZGxlIGhhbmRsZTsKKyAgaWYgKE9wZW5BcmNoaXZlRmQoZmQsICIiLCAmaGFuZGxlLCBmYWxzZSkgIT0gMCkgeworICAgIC8vIGludmFsaWQgemlwLWZpbGUgKD8pCisgICAgY2xvc2UoZmQpOworICAgIHJldHVybiAtMTsKKyAgfQorCisgIGF1dG8gYXJjaGl2ZV9ndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZdKCkgeworICAgIENsb3NlQXJjaGl2ZShoYW5kbGUpOworICB9KTsKKworICBaaXBFbnRyeSBlbnRyeTsKKworICBpZiAoRmluZEVudHJ5KGhhbmRsZSwgWmlwRW50cnlOYW1lKGZpbGVfcGF0aCksICZlbnRyeSkgIT0gMCkgeworICAgIC8vIEVudHJ5IHdhcyBub3QgZm91bmQuCisgICAgY2xvc2UoZmQpOworICAgIHJldHVybiAtMTsKKyAgfQorCisgIC8vIENoZWNrIGlmIGl0IGlzIHByb3Blcmx5IHN0b3JlZAorICBpZiAoZW50cnkubWV0aG9kICE9IGtDb21wcmVzc1N0b3JlZCB8fCAoZW50cnkub2Zmc2V0ICUgUEFHRV9TSVpFKSAhPSAwKSB7CisgICAgY2xvc2UoZmQpOworICAgIHJldHVybiAtMTsKKyAgfQorCisgICpmaWxlX29mZnNldCA9IGVudHJ5Lm9mZnNldDsKKyAgcmV0dXJuIGZkOworfQorCitzdGF0aWMgYm9vbCBmb3JtYXRfcGF0aChjaGFyKiBidWYsIHNpemVfdCBidWZfc2l6ZSwgY29uc3QgY2hhciogcGF0aCwgY29uc3QgY2hhciogbmFtZSkgeworICBpbnQgbiA9IF9fbGliY19mb3JtYXRfYnVmZmVyKGJ1ZiwgYnVmX3NpemUsICIlcy8lcyIsIHBhdGgsIG5hbWUpOworICBpZiAobiA8IDAgfHwgbiA+PSBzdGF0aWNfY2FzdDxpbnQ+KGJ1Zl9zaXplKSkgeworICAgIFBSSU5UKCJXYXJuaW5nOiBpZ25vcmluZyB2ZXJ5IGxvbmcgbGlicmFyeSBwYXRoOiAlcy8lcyIsIHBhdGgsIG5hbWUpOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIHJldHVybiB0cnVlOworfQorCitzdGF0aWMgaW50IG9wZW5fbGlicmFyeV9vbl9kZWZhdWx0X3BhdGgoY29uc3QgY2hhciogbmFtZSwgb2ZmNjRfdCogZmlsZV9vZmZzZXQpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGtEZWZhdWx0TGRQYXRoc1tpXSAhPSBudWxscHRyOyArK2kpIHsKKyAgICBjaGFyIGJ1Zls1MTJdOworICAgIGlmICghZm9ybWF0X3BhdGgoYnVmLCBzaXplb2YoYnVmKSwga0RlZmF1bHRMZFBhdGhzW2ldLCBuYW1lKSkgewogICAgICAgY29udGludWU7CiAgICAgfQorCiAgICAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oYnVmLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOwogICAgIGlmIChmZCAhPSAtMSkgeworICAgICAgKmZpbGVfb2Zmc2V0ID0gMDsKKyAgICAgIHJldHVybiBmZDsKKyAgICB9CisgIH0KKworICByZXR1cm4gLTE7Cit9CisKK3N0YXRpYyBpbnQgb3Blbl9saWJyYXJ5X29uX2xkX2xpYnJhcnlfcGF0aChjb25zdCBjaGFyKiBuYW1lLCBvZmY2NF90KiBmaWxlX29mZnNldCkgeworICBmb3IgKGNvbnN0IGF1dG8mIHBhdGhfc3RyIDogZ19sZF9saWJyYXJ5X3BhdGhzKSB7CisgICAgY2hhciBidWZbNTEyXTsKKyAgICBjb25zdCBjaGFyKiBjb25zdCBwYXRoID0gcGF0aF9zdHIuY19zdHIoKTsKKyAgICBpZiAoIWZvcm1hdF9wYXRoKGJ1Ziwgc2l6ZW9mKGJ1ZiksIHBhdGgsIG5hbWUpKSB7CisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICBpbnQgZmQgPSAtMTsKKyAgICBpZiAoc3RyY2hyKGJ1ZiwgJyEnKSAhPSBudWxscHRyKSB7CisgICAgICBmZCA9IG9wZW5fbGlicmFyeV9pbl96aXBmaWxlKGJ1ZiwgZmlsZV9vZmZzZXQpOworICAgIH0KKworICAgIGlmIChmZCA9PSAtMSkgeworICAgICAgZmQgPSBURU1QX0ZBSUxVUkVfUkVUUlkob3BlbihidWYsIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CisgICAgICBpZiAoZmQgIT0gLTEpIHsKKyAgICAgICAgKmZpbGVfb2Zmc2V0ID0gMDsKKyAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoZmQgIT0gLTEpIHsKICAgICAgIHJldHVybiBmZDsKICAgICB9CiAgIH0KKwogICByZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyBpbnQgb3Blbl9saWJyYXJ5KGNvbnN0IGNoYXIqIG5hbWUpIHsKK3N0YXRpYyBpbnQgb3Blbl9saWJyYXJ5KGNvbnN0IGNoYXIqIG5hbWUsIG9mZjY0X3QqIGZpbGVfb2Zmc2V0KSB7CiAgIFRSQUNFKCJbIG9wZW5pbmcgJXMgXSIsIG5hbWUpOwogCiAgIC8vIElmIHRoZSBuYW1lIGNvbnRhaW5zIGEgc2xhc2gsIHdlIHNob3VsZCBhdHRlbXB0IHRvIG9wZW4gaXQgZGlyZWN0bHkgYW5kIG5vdCBzZWFyY2ggdGhlIHBhdGhzLgogICBpZiAoc3RyY2hyKG5hbWUsICcvJykgIT0gbnVsbHB0cikgeworICAgIGlmIChzdHJjaHIobmFtZSwgJyEnKSAhPSBudWxscHRyKSB7CisgICAgICBpbnQgZmQgPSBvcGVuX2xpYnJhcnlfaW5femlwZmlsZShuYW1lLCBmaWxlX29mZnNldCk7CisgICAgICBpZiAoZmQgIT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIGZkOworICAgICAgfQorICAgIH0KKwogICAgIGludCBmZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKG5hbWUsIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CiAgICAgaWYgKGZkICE9IC0xKSB7Ci0gICAgICByZXR1cm4gZmQ7CisgICAgICAqZmlsZV9vZmZzZXQgPSAwOwogICAgIH0KLSAgICAvLyAuLi5idXQgbnZpZGlhIGJpbmFyeSBibG9icyAoYXQgbGVhc3QpIHJlbHkgb24gdGhpcyBiZWhhdmlvciwgc28gZmFsbCB0aHJvdWdoIGZvciBub3cuCi0jaWYgZGVmaW5lZChfX0xQNjRfXykKLSAgICByZXR1cm4gLTE7Ci0jZW5kaWYKKyAgICByZXR1cm4gZmQ7CiAgIH0KIAogICAvLyBPdGhlcndpc2Ugd2UgdHJ5IExEX0xJQlJBUllfUEFUSCBmaXJzdCwgYW5kIGZhbGwgYmFjayB0byB0aGUgYnVpbHQtaW4gd2VsbCBrbm93biBwYXRocy4KLSAgaW50IGZkID0gb3Blbl9saWJyYXJ5X29uX3BhdGgobmFtZSwgZ19sZF9saWJyYXJ5X3BhdGhzKTsKKyAgaW50IGZkID0gb3Blbl9saWJyYXJ5X29uX2xkX2xpYnJhcnlfcGF0aChuYW1lLCBmaWxlX29mZnNldCk7CiAgIGlmIChmZCA9PSAtMSkgewotICAgIGZkID0gb3Blbl9saWJyYXJ5X29uX3BhdGgobmFtZSwga0RlZmF1bHRMZFBhdGhzKTsKKyAgICBmZCA9IG9wZW5fbGlicmFyeV9vbl9kZWZhdWx0X3BhdGgobmFtZSwgZmlsZV9vZmZzZXQpOwogICB9CiAgIHJldHVybiBmZDsKIH0KQEAgLTc3NCw3ICsxMjMyLDkgQEAKICAgfQogfQogCi1zdGF0aWMgc29pbmZvKiBsb2FkX2xpYnJhcnkoTG9hZFRhc2tMaXN0JiBsb2FkX3Rhc2tzLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgZGxmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKK3N0YXRpYyBzb2luZm8qIGxvYWRfbGlicmFyeShMb2FkVGFza0xpc3QmIGxvYWRfdGFza3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogbmFtZSwgaW50IHJ0bGRfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKICAgaW50IGZkID0gLTE7CiAgIG9mZjY0X3QgZmlsZV9vZmZzZXQgPSAwOwogICBTY29wZWRGZCBmaWxlX2d1YXJkKC0xKTsKQEAgLTc4Niw3ICsxMjQ2LDcgQEAKICAgICB9CiAgIH0gZWxzZSB7CiAgICAgLy8gT3BlbiB0aGUgZmlsZS4KLSAgICBmZCA9IG9wZW5fbGlicmFyeShuYW1lKTsKKyAgICBmZCA9IG9wZW5fbGlicmFyeShuYW1lLCAmZmlsZV9vZmZzZXQpOwogICAgIGlmIChmZCA9PSAtMSkgewogICAgICAgRExfRVJSKCJsaWJyYXJ5IFwiJXNcIiBub3QgZm91bmQiLCBuYW1lKTsKICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtNzk5LDM4ICsxMjU5LDU2IEBACiAgICAgRExfRVJSKCJmaWxlIG9mZnNldCBmb3IgdGhlIGxpYnJhcnkgXCIlc1wiIGlzIG5vdCBwYWdlLWFsaWduZWQ6ICUiIFBSSWQ2NCwgbmFtZSwgZmlsZV9vZmZzZXQpOwogICAgIHJldHVybiBudWxscHRyOwogICB9CisgIGlmIChmaWxlX29mZnNldCA8IDApIHsKKyAgICBETF9FUlIoImZpbGUgb2Zmc2V0IGZvciB0aGUgbGlicmFyeSBcIiVzXCIgaXMgbmVnYXRpdmU6ICUiIFBSSWQ2NCwgbmFtZSwgZmlsZV9vZmZzZXQpOworICAgIHJldHVybiBudWxscHRyOworICB9CiAKICAgc3RydWN0IHN0YXQgZmlsZV9zdGF0OwogICBpZiAoVEVNUF9GQUlMVVJFX1JFVFJZKGZzdGF0KGZkLCAmZmlsZV9zdGF0KSkgIT0gMCkgewogICAgIERMX0VSUigidW5hYmxlIHRvIHN0YXQgZmlsZSBmb3IgdGhlIGxpYnJhcnkgXCIlc1wiOiAlcyIsIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KKyAgaWYgKGZpbGVfb2Zmc2V0ID49IGZpbGVfc3RhdC5zdF9zaXplKSB7CisgICAgRExfRVJSKCJmaWxlIG9mZnNldCBmb3IgdGhlIGxpYnJhcnkgXCIlc1wiID49IGZpbGUgc2l6ZTogJSIgUFJJZDY0ICIgPj0gJSIgUFJJZDY0LAorICAgICAgICBuYW1lLCBmaWxlX29mZnNldCwgZmlsZV9zdGF0LnN0X3NpemUpOworICAgIHJldHVybiBudWxscHRyOworICB9CiAKICAgLy8gQ2hlY2sgZm9yIHN5bWxpbmsgYW5kIG90aGVyIHNpdHVhdGlvbnMgd2hlcmUKLSAgLy8gZmlsZSBjYW4gaGF2ZSBkaWZmZXJlbnQgbmFtZXMuCi0gIGZvciAoc29pbmZvKiBzaSA9IHNvbGlzdDsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgewotICAgIGlmIChzaS0+Z2V0X3N0X2RldigpICE9IDAgJiYKLSAgICAgICAgc2ktPmdldF9zdF9pbm8oKSAhPSAwICYmCi0gICAgICAgIHNpLT5nZXRfc3RfZGV2KCkgPT0gZmlsZV9zdGF0LnN0X2RldiAmJgotICAgICAgICBzaS0+Z2V0X3N0X2lubygpID09IGZpbGVfc3RhdC5zdF9pbm8gJiYKLSAgICAgICAgc2ktPmdldF9maWxlX29mZnNldCgpID09IGZpbGVfb2Zmc2V0KSB7Ci0gICAgICBUUkFDRSgibGlicmFyeSBcIiVzXCIgaXMgYWxyZWFkeSBsb2FkZWQgdW5kZXIgZGlmZmVyZW50IG5hbWUvcGF0aCBcIiVzXCIgLSB3aWxsIHJldHVybiBleGlzdGluZyBzb2luZm8iLCBuYW1lLCBzaS0+bmFtZSk7Ci0gICAgICByZXR1cm4gc2k7CisgIC8vIGZpbGUgY2FuIGhhdmUgZGlmZmVyZW50IG5hbWVzLCB1bmxlc3MgQU5EUk9JRF9ETEVYVF9GT1JDRV9MT0FEIGlzIHNldAorICBpZiAoZXh0aW5mbyA9PSBudWxscHRyIHx8IChleHRpbmZvLT5mbGFncyAmIEFORFJPSURfRExFWFRfRk9SQ0VfTE9BRCkgPT0gMCkgeworICAgIGZvciAoc29pbmZvKiBzaSA9IHNvbGlzdDsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgeworICAgICAgaWYgKHNpLT5nZXRfc3RfZGV2KCkgIT0gMCAmJgorICAgICAgICAgIHNpLT5nZXRfc3RfaW5vKCkgIT0gMCAmJgorICAgICAgICAgIHNpLT5nZXRfc3RfZGV2KCkgPT0gZmlsZV9zdGF0LnN0X2RldiAmJgorICAgICAgICAgIHNpLT5nZXRfc3RfaW5vKCkgPT0gZmlsZV9zdGF0LnN0X2lubyAmJgorICAgICAgICAgIHNpLT5nZXRfZmlsZV9vZmZzZXQoKSA9PSBmaWxlX29mZnNldCkgeworICAgICAgICBUUkFDRSgibGlicmFyeSBcIiVzXCIgaXMgYWxyZWFkeSBsb2FkZWQgdW5kZXIgZGlmZmVyZW50IG5hbWUvcGF0aCBcIiVzXCIgLSAiCisgICAgICAgICAgICAid2lsbCByZXR1cm4gZXhpc3Rpbmcgc29pbmZvIiwgbmFtZSwgc2ktPmdldF9yZWFscGF0aCgpKTsKKyAgICAgICAgcmV0dXJuIHNpOworICAgICAgfQogICAgIH0KICAgfQogCi0gIGlmICgoZGxmbGFncyAmIFJUTERfTk9MT0FEKSAhPSAwKSB7CisgIGlmICgocnRsZF9mbGFncyAmIFJUTERfTk9MT0FEKSAhPSAwKSB7CiAgICAgRExfRVJSKCJsaWJyYXJ5IFwiJXNcIiB3YXNuJ3QgbG9hZGVkIGFuZCBSVExEX05PTE9BRCBwcmV2ZW50ZWQgaXQiLCBuYW1lKTsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCisgIHN0ZDo6c3RyaW5nIHJlYWxwYXRoID0gbmFtZTsKKyAgaWYgKCFyZWFscGF0aF9mZChmZCwgJnJlYWxwYXRoKSkgeworICAgIFBSSU5UKCJjYW5ub3QgcmVzb2x2ZSByZWFscGF0aCBmb3IgdGhlIGxpYnJhcnkgXCIlc1wiOiAlcyIsIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgcmVhbHBhdGggPSBuYW1lOworICB9CisKICAgLy8gUmVhZCB0aGUgRUxGIGhlYWRlciBhbmQgbG9hZCB0aGUgc2VnbWVudHMuCi0gIEVsZlJlYWRlciBlbGZfcmVhZGVyKG5hbWUsIGZkLCBmaWxlX29mZnNldCk7CisgIEVsZlJlYWRlciBlbGZfcmVhZGVyKHJlYWxwYXRoLmNfc3RyKCksIGZkLCBmaWxlX29mZnNldCk7CiAgIGlmICghZWxmX3JlYWRlci5Mb2FkKGV4dGluZm8pKSB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KIAotICBzb2luZm8qIHNpID0gc29pbmZvX2FsbG9jKFNFQVJDSF9OQU1FKG5hbWUpLCAmZmlsZV9zdGF0LCBmaWxlX29mZnNldCk7CisgIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MocmVhbHBhdGguY19zdHIoKSwgJmZpbGVfc3RhdCwgZmlsZV9vZmZzZXQsIHJ0bGRfZmxhZ3MpOwogICBpZiAoc2kgPT0gbnVsbHB0cikgewogICAgIHJldHVybiBudWxscHRyOwogICB9CkBAIC04NDAsNyArMTMxOCw3IEBACiAgIHNpLT5waG51bSA9IGVsZl9yZWFkZXIucGhkcl9jb3VudCgpOwogICBzaS0+cGhkciA9IGVsZl9yZWFkZXIubG9hZGVkX3BoZHIoKTsKIAotICBpZiAoIXNpLT5QcmVsaW5rSW1hZ2UoKSkgeworICBpZiAoIXNpLT5wcmVsaW5rX2ltYWdlKCkpIHsKICAgICBzb2luZm9fZnJlZShzaSk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KQEAgLTg1MiwyNSArMTMzMCwzMCBAQAogICByZXR1cm4gc2k7CiB9CiAKLXN0YXRpYyBzb2luZm8gKmZpbmRfbG9hZGVkX2xpYnJhcnlfYnlfbmFtZShjb25zdCBjaGFyKiBuYW1lKSB7Ci0gIGNvbnN0IGNoYXIqIHNlYXJjaF9uYW1lID0gU0VBUkNIX05BTUUobmFtZSk7CitzdGF0aWMgc29pbmZvICpmaW5kX2xvYWRlZF9saWJyYXJ5X2J5X3NvbmFtZShjb25zdCBjaGFyKiBuYW1lKSB7CisgIC8vIElnbm9yZSBmaWxlbmFtZSB3aXRoIHBhdGguCisgIGlmIChzdHJjaHIobmFtZSwgJy8nKSAhPSBudWxscHRyKSB7CisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KKwogICBmb3IgKHNvaW5mbyogc2kgPSBzb2xpc3Q7IHNpICE9IG51bGxwdHI7IHNpID0gc2ktPm5leHQpIHsKLSAgICBpZiAoIXN0cmNtcChzZWFyY2hfbmFtZSwgc2ktPm5hbWUpKSB7CisgICAgY29uc3QgY2hhciogc29uYW1lID0gc2ktPmdldF9zb25hbWUoKTsKKyAgICBpZiAoc29uYW1lICE9IG51bGxwdHIgJiYgKHN0cmNtcChuYW1lLCBzb25hbWUpID09IDApKSB7CiAgICAgICByZXR1cm4gc2k7CiAgICAgfQogICB9CiAgIHJldHVybiBudWxscHRyOwogfQogCi1zdGF0aWMgc29pbmZvKiBmaW5kX2xpYnJhcnlfaW50ZXJuYWwoTG9hZFRhc2tMaXN0JiBsb2FkX3Rhc2tzLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgZGxmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKLQotICBzb2luZm8qIHNpID0gZmluZF9sb2FkZWRfbGlicmFyeV9ieV9uYW1lKG5hbWUpOworc3RhdGljIHNvaW5mbyogZmluZF9saWJyYXJ5X2ludGVybmFsKExvYWRUYXNrTGlzdCYgbG9hZF90YXNrcywgY29uc3QgY2hhciogbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcnRsZF9mbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKKyAgc29pbmZvKiBzaSA9IGZpbmRfbG9hZGVkX2xpYnJhcnlfYnlfc29uYW1lKG5hbWUpOwogCiAgIC8vIExpYnJhcnkgbWlnaHQgc3RpbGwgYmUgbG9hZGVkLCB0aGUgYWNjdXJhdGUgZGV0ZWN0aW9uCiAgIC8vIG9mIHRoaXMgZmFjdCBpcyBkb25lIGJ5IGxvYWRfbGlicmFyeS4KICAgaWYgKHNpID09IG51bGxwdHIpIHsKLSAgICBUUkFDRSgiWyAnJXMnIGhhcyBub3QgYmVlbiBmb3VuZCBieSBuYW1lLiAgVHJ5aW5nIGhhcmRlci4uLl0iLCBuYW1lKTsKLSAgICBzaSA9IGxvYWRfbGlicmFyeShsb2FkX3Rhc2tzLCBuYW1lLCBkbGZsYWdzLCBleHRpbmZvKTsKKyAgICBUUkFDRSgiWyAnJXMnIGhhcyBub3QgYmVlbiBmb3VuZCBieSBzb25hbWUuICBUcnlpbmcgaGFyZGVyLi4uXSIsIG5hbWUpOworICAgIHNpID0gbG9hZF9saWJyYXJ5KGxvYWRfdGFza3MsIG5hbWUsIHJ0bGRfZmxhZ3MsIGV4dGluZm8pOwogICB9CiAKICAgcmV0dXJuIHNpOwpAQCAtODc4LDM0ICsxMzYxLDUyIEBACiAKIHN0YXRpYyB2b2lkIHNvaW5mb191bmxvYWQoc29pbmZvKiBzaSk7CiAKLXN0YXRpYyBib29sIGlzX3JlY3Vyc2l2ZShzb2luZm8qIHNpLCBzb2luZm8qIHBhcmVudCkgewotICBpZiAocGFyZW50ID09IG51bGxwdHIpIHsKLSAgICByZXR1cm4gZmFsc2U7CisvLyBUT0RPOiB0aGlzIGlzIHNsaWdodGx5IHVudXN1YWwgd2F5IHRvIGNvbnN0cnVjdAorLy8gdGhlIGdsb2JhbCBncm91cCBmb3IgcmVsb2NhdGlvbi4gTm90IGV2ZXJ5IFJUTERfR0xPQkFMCisvLyBsaWJyYXJ5IGlzIGluY2x1ZGVkIGluIHRoaXMgZ3JvdXAgZm9yIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5CisvLyByZWFzb25zLgorLy8KKy8vIFRoaXMgZ3JvdXAgY29uc2lzdHMgb2YgdGhlIG1haW4gZXhlY3V0YWJsZSwgTERfUFJFTE9BRHMKKy8vIGFuZCBsaWJyYXJpZXMgd2l0aCB0aGUgREZfMV9HTE9CQUwgZmxhZyBzZXQuCitzdGF0aWMgc29pbmZvOjpzb2luZm9fbGlzdF90IG1ha2VfZ2xvYmFsX2dyb3VwKCkgeworICBzb2luZm86OnNvaW5mb19saXN0X3QgZ2xvYmFsX2dyb3VwOworICBmb3IgKHNvaW5mbyogc2kgPSBzb21haW47IHNpICE9IG51bGxwdHI7IHNpID0gc2ktPm5leHQpIHsKKyAgICBpZiAoKHNpLT5nZXRfZHRfZmxhZ3NfMSgpICYgREZfMV9HTE9CQUwpICE9IDApIHsKKyAgICAgIGdsb2JhbF9ncm91cC5wdXNoX2JhY2soc2kpOworICAgIH0KICAgfQogCi0gIGlmIChzaSA9PSBwYXJlbnQpIHsKLSAgICBETF9FUlIoInJlY3Vyc2l2ZSBsaW5rIHRvIFwiJXNcIiIsIHNpLT5uYW1lKTsKLSAgICByZXR1cm4gdHJ1ZTsKLSAgfQotCi0gIHJldHVybiAhcGFyZW50LT5nZXRfcGFyZW50cygpLnZpc2l0KFsmXShzb2luZm8qIGdyYW5kcGFyZW50KSB7Ci0gICAgcmV0dXJuICFpc19yZWN1cnNpdmUoc2ksIGdyYW5kcGFyZW50KTsKLSAgfSk7CisgIHJldHVybiBnbG9iYWxfZ3JvdXA7CiB9CiAKLXN0YXRpYyBib29sIGZpbmRfbGlicmFyaWVzKGNvbnN0IGNoYXIqIGNvbnN0IGxpYnJhcnlfbmFtZXNbXSwgc2l6ZV90IGxpYnJhcnlfbmFtZXNfc2l6ZSwgc29pbmZvKiBzb2luZm9zW10sCi0gICAgc29pbmZvKiBsZF9wcmVsb2Fkc1tdLCBzaXplX3QgbGRfcHJlbG9hZHNfc2l6ZSwgaW50IGRsZmxhZ3MsIGNvbnN0IGFuZHJvaWRfZGxleHRpbmZvKiBleHRpbmZvKSB7CitzdGF0aWMgYm9vbCBmaW5kX2xpYnJhcmllcyhzb2luZm8qIHN0YXJ0X3dpdGgsIGNvbnN0IGNoYXIqIGNvbnN0IGxpYnJhcnlfbmFtZXNbXSwKKyAgICAgIHNpemVfdCBsaWJyYXJ5X25hbWVzX2NvdW50LCBzb2luZm8qIHNvaW5mb3NbXSwgc3RkOjp2ZWN0b3I8c29pbmZvKj4qIGxkX3ByZWxvYWRzLAorICAgICAgc2l6ZV90IGxkX3ByZWxvYWRzX2NvdW50LCBpbnQgcnRsZF9mbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKICAgLy8gU3RlcCAwOiBwcmVwYXJlLgogICBMb2FkVGFza0xpc3QgbG9hZF90YXNrczsKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBsaWJyYXJ5X25hbWVzX3NpemU7ICsraSkgeworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxpYnJhcnlfbmFtZXNfY291bnQ7ICsraSkgewogICAgIGNvbnN0IGNoYXIqIG5hbWUgPSBsaWJyYXJ5X25hbWVzW2ldOwotICAgIGxvYWRfdGFza3MucHVzaF9iYWNrKExvYWRUYXNrOjpjcmVhdGUobmFtZSwgbnVsbHB0cikpOworICAgIGxvYWRfdGFza3MucHVzaF9iYWNrKExvYWRUYXNrOjpjcmVhdGUobmFtZSwgc3RhcnRfd2l0aCkpOwogICB9CiAKLSAgLy8gTGlicmFyaWVzIGFkZGVkIHRvIHRoaXMgbGlzdCBpbiByZXZlcnNlIG9yZGVyIHNvIHRoYXQgd2UgY2FuCi0gIC8vIHN0YXJ0IGxpbmtpbmcgZnJvbSBib3R0b20tdXAgLSBzZWUgc3RlcCAyLgotICBTb2luZm9MaW5rZWRMaXN0IGZvdW5kX2xpYnM7Ci0gIHNpemVfdCBzb2luZm9zX3NpemUgPSAwOworICAvLyBDb25zdHJ1Y3QgZ2xvYmFsX2dyb3VwLgorICBzb2luZm86OnNvaW5mb19saXN0X3QgZ2xvYmFsX2dyb3VwID0gbWFrZV9nbG9iYWxfZ3JvdXAoKTsKKworICAvLyBJZiBzb2luZm9zIGFycmF5IGlzIG51bGwgYWxsb2NhdGUgb25lIG9uIHN0YWNrLgorICAvLyBUaGUgYXJyYXkgaXMgbmVlZGVkIGluIGNhc2Ugb2YgZmFpbHVyZTsgZm9yIGV4YW1wbGUKKyAgLy8gd2hlbiBsaWJyYXJ5X25hbWVzW10gPSB7bGlib25lLnNvLCBsaWJ0d28uc299IGFuZCBsaWJvbmUuc28KKyAgLy8gaXMgbG9hZGVkIGNvcnJlY3RseSBidXQgbGlidHdvLnNvIGZhaWxlZCBmb3Igc29tZSByZWFzb24uCisgIC8vIEluIHRoaXMgY2FzZSBsaWJvbmUuc28gc2hvdWxkIGJlIHVubG9hZGVkIG9uIHJldHVybi4KKyAgLy8gU2VlIGFsc28gaW1wbGVtZW50YXRpb24gb2YgZmFpbHVyZV9ndWFyZCBiZWxvdy4KKworICBpZiAoc29pbmZvcyA9PSBudWxscHRyKSB7CisgICAgc2l6ZV90IHNvaW5mb3Nfc2l6ZSA9IHNpemVvZihzb2luZm8qKSpsaWJyYXJ5X25hbWVzX2NvdW50OworICAgIHNvaW5mb3MgPSByZWludGVycHJldF9jYXN0PHNvaW5mbyoqPihhbGxvY2Eoc29pbmZvc19zaXplKSk7CisgICAgbWVtc2V0KHNvaW5mb3MsIDAsIHNvaW5mb3Nfc2l6ZSk7CisgIH0KKworICAvLyBsaXN0IG9mIGxpYnJhcmllcyB0byBsaW5rIC0gc2VlIHN0ZXAgMi4KKyAgc2l6ZV90IHNvaW5mb3NfY291bnQgPSAwOwogCiAgIGF1dG8gZmFpbHVyZV9ndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZdKCkgewogICAgIC8vIEhvdXNla2VlcGluZwpAQCAtOTEzLDEwNCArMTQxNCwxODIgQEAKICAgICAgIExvYWRUYXNrOjpkZWxldGVyKHQpOwogICAgIH0pOwogCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGk8c29pbmZvc19zaXplOyArK2kpIHsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaTxzb2luZm9zX2NvdW50OyArK2kpIHsKICAgICAgIHNvaW5mb191bmxvYWQoc29pbmZvc1tpXSk7CiAgICAgfQogICB9KTsKIAogICAvLyBTdGVwIDE6IGxvYWQgYW5kIHByZS1saW5rIGFsbCBEVF9ORUVERUQgbGlicmFyaWVzIGluIGJyZWFkdGggZmlyc3Qgb3JkZXIuCi0gIGZvciAoTG9hZFRhc2s6OnVuaXF1ZV9wdHIgdGFzayhsb2FkX3Rhc2tzLnBvcF9mcm9udCgpKTsgdGFzay5nZXQoKSAhPSBudWxscHRyOyB0YXNrLnJlc2V0KGxvYWRfdGFza3MucG9wX2Zyb250KCkpKSB7Ci0gICAgc29pbmZvKiBzaSA9IGZpbmRfbGlicmFyeV9pbnRlcm5hbChsb2FkX3Rhc2tzLCB0YXNrLT5nZXRfbmFtZSgpLCBkbGZsYWdzLCBleHRpbmZvKTsKKyAgZm9yIChMb2FkVGFzazo6dW5pcXVlX3B0ciB0YXNrKGxvYWRfdGFza3MucG9wX2Zyb250KCkpOworICAgICAgdGFzay5nZXQoKSAhPSBudWxscHRyOyB0YXNrLnJlc2V0KGxvYWRfdGFza3MucG9wX2Zyb250KCkpKSB7CisgICAgc29pbmZvKiBzaSA9IGZpbmRfbGlicmFyeV9pbnRlcm5hbChsb2FkX3Rhc2tzLCB0YXNrLT5nZXRfbmFtZSgpLCBydGxkX2ZsYWdzLCBleHRpbmZvKTsKICAgICBpZiAoc2kgPT0gbnVsbHB0cikgewogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIAogICAgIHNvaW5mbyogbmVlZGVkX2J5ID0gdGFzay0+Z2V0X25lZWRlZF9ieSgpOwogCi0gICAgaWYgKGlzX3JlY3Vyc2l2ZShzaSwgbmVlZGVkX2J5KSkgewotICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIHNpLT5yZWZfY291bnQrKzsKICAgICBpZiAobmVlZGVkX2J5ICE9IG51bGxwdHIpIHsKICAgICAgIG5lZWRlZF9ieS0+YWRkX2NoaWxkKHNpKTsKICAgICB9Ci0gICAgZm91bmRfbGlicy5wdXNoX2Zyb250KHNpKTsKIAotICAgIC8vIFdoZW4gbGRfcHJlbG9hZHMgaXMgbm90IG51bGwgZmlyc3QKLSAgICAvLyBsZF9wcmVsb2Fkc19zaXplIGxpYnMgYXJlIGluIGZhY3QgbGRfcHJlbG9hZHMuCi0gICAgaWYgKGxkX3ByZWxvYWRzICE9IG51bGxwdHIgJiYgc29pbmZvc19zaXplIDwgbGRfcHJlbG9hZHNfc2l6ZSkgewotICAgICAgbGRfcHJlbG9hZHNbc29pbmZvc19zaXplXSA9IHNpOworICAgIGlmIChzaS0+aXNfbGlua2VkKCkpIHsKKyAgICAgIHNpLT5pbmNyZW1lbnRfcmVmX2NvdW50KCk7CiAgICAgfQogCi0gICAgaWYgKHNvaW5mb3Nfc2l6ZTxsaWJyYXJ5X25hbWVzX3NpemUpIHsKLSAgICAgIHNvaW5mb3Nbc29pbmZvc19zaXplKytdID0gc2k7CisgICAgLy8gV2hlbiBsZF9wcmVsb2FkcyBpcyBub3QgbnVsbCwgdGhlIGZpcnN0CisgICAgLy8gbGRfcHJlbG9hZHNfY291bnQgbGlicyBhcmUgaW4gZmFjdCBsZF9wcmVsb2Fkcy4KKyAgICBpZiAobGRfcHJlbG9hZHMgIT0gbnVsbHB0ciAmJiBzb2luZm9zX2NvdW50IDwgbGRfcHJlbG9hZHNfY291bnQpIHsKKyAgICAgIC8vIEFkZCBMRF9QUkVMT0FEZWQgbGlicmFyaWVzIHRvIHRoZSBnbG9iYWwgZ3JvdXAgZm9yIGZ1dHVyZSBydW5zLgorICAgICAgLy8gVGhlcmUgaXMgbm8gbmVlZCB0byBleHBsaWNpdGx5IGFkZCB0aGVtIHRvIHRoZSBnbG9iYWwgZ3JvdXAKKyAgICAgIC8vIGZvciB0aGlzIHJ1biBiZWNhdXNlIHRoZXkgYXJlIGdvaW5nIHRvIGFwcGVhciBpbiB0aGUgbG9jYWwKKyAgICAgIC8vIGdyb3VwIGluIHRoZSBjb3JyZWN0IG9yZGVyLgorICAgICAgc2ktPnNldF9kdF9mbGFnc18xKHNpLT5nZXRfZHRfZmxhZ3NfMSgpIHwgREZfMV9HTE9CQUwpOworICAgICAgbGRfcHJlbG9hZHMtPnB1c2hfYmFjayhzaSk7CisgICAgfQorCisgICAgaWYgKHNvaW5mb3NfY291bnQgPCBsaWJyYXJ5X25hbWVzX2NvdW50KSB7CisgICAgICBzb2luZm9zW3NvaW5mb3NfY291bnQrK10gPSBzaTsKICAgICB9CiAgIH0KIAogICAvLyBTdGVwIDI6IGxpbmsgbGlicmFyaWVzLgotICBzb2luZm8qIHNpOwotICB3aGlsZSAoKHNpID0gZm91bmRfbGlicy5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgewotICAgIGlmICgoc2ktPmZsYWdzICYgRkxBR19MSU5LRUQpID09IDApIHsKLSAgICAgIGlmICghc2ktPkxpbmtJbWFnZShleHRpbmZvKSkgeworICBzb2luZm86OnNvaW5mb19saXN0X3QgbG9jYWxfZ3JvdXA7CisgIHdhbGtfZGVwZW5kZW5jaWVzX3RyZWUoCisgICAgICBzdGFydF93aXRoID09IG51bGxwdHIgPyBzb2luZm9zIDogJnN0YXJ0X3dpdGgsCisgICAgICBzdGFydF93aXRoID09IG51bGxwdHIgPyBzb2luZm9zX2NvdW50IDogMSwKKyAgICAgIFsmXSAoc29pbmZvKiBzaSkgeworICAgIGxvY2FsX2dyb3VwLnB1c2hfYmFjayhzaSk7CisgICAgcmV0dXJuIHRydWU7CisgIH0pOworCisgIC8vIFdlIG5lZWQgdG8gaW5jcmVtZW50IHJlZl9jb3VudCBpbiBjYXNlCisgIC8vIHRoZSByb290IG9mIHRoZSBsb2NhbCBncm91cCB3YXMgbm90IGxpbmtlZC4KKyAgYm9vbCB3YXNfbG9jYWxfZ3JvdXBfcm9vdF9saW5rZWQgPSBsb2NhbF9ncm91cC5mcm9udCgpLT5pc19saW5rZWQoKTsKKworICBib29sIGxpbmtlZCA9IGxvY2FsX2dyb3VwLnZpc2l0KFsmXShzb2luZm8qIHNpKSB7CisgICAgaWYgKCFzaS0+aXNfbGlua2VkKCkpIHsKKyAgICAgIGlmICghc2ktPmxpbmtfaW1hZ2UoZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCwgZXh0aW5mbykpIHsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgfQotICAgICAgc2ktPmZsYWdzIHw9IEZMQUdfTElOS0VEOworICAgICAgc2ktPnNldF9saW5rZWQoKTsKICAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfSk7CisKKyAgaWYgKGxpbmtlZCkgeworICAgIGZhaWx1cmVfZ3VhcmQuZGlzYWJsZSgpOwogICB9CiAKLSAgLy8gQWxsIGlzIHdlbGwgLSBmb3VuZF9saWJzIGFuZCBsb2FkX3Rhc2tzIGFyZSBlbXB0eSBhdCB0aGlzIHBvaW50Ci0gIC8vIGFuZCBhbGwgbGlicyBhcmUgc3VjY2Vzc2Z1bGx5IGxpbmtlZC4KLSAgZmFpbHVyZV9ndWFyZC5kaXNhYmxlKCk7Ci0gIHJldHVybiB0cnVlOworICBpZiAoIXdhc19sb2NhbF9ncm91cF9yb290X2xpbmtlZCkgeworICAgIGxvY2FsX2dyb3VwLmZyb250KCktPmluY3JlbWVudF9yZWZfY291bnQoKTsKKyAgfQorCisgIHJldHVybiBsaW5rZWQ7CiB9CiAKLXN0YXRpYyBzb2luZm8qIGZpbmRfbGlicmFyeShjb25zdCBjaGFyKiBuYW1lLCBpbnQgZGxmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKLSAgaWYgKG5hbWUgPT0gbnVsbHB0cikgewotICAgIHNvbWFpbi0+cmVmX2NvdW50Kys7Ci0gICAgcmV0dXJuIHNvbWFpbjsKLSAgfQotCitzdGF0aWMgc29pbmZvKiBmaW5kX2xpYnJhcnkoY29uc3QgY2hhciogbmFtZSwgaW50IHJ0bGRfZmxhZ3MsIGNvbnN0IGFuZHJvaWRfZGxleHRpbmZvKiBleHRpbmZvKSB7CiAgIHNvaW5mbyogc2k7CiAKLSAgaWYgKCFmaW5kX2xpYnJhcmllcygmbmFtZSwgMSwgJnNpLCBudWxscHRyLCAwLCBkbGZsYWdzLCBleHRpbmZvKSkgeworICBpZiAobmFtZSA9PSBudWxscHRyKSB7CisgICAgc2kgPSBzb21haW47CisgIH0gZWxzZSBpZiAoIWZpbmRfbGlicmFyaWVzKG51bGxwdHIsICZuYW1lLCAxLCAmc2ksIG51bGxwdHIsIDAsIHJ0bGRfZmxhZ3MsIGV4dGluZm8pKSB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KIAogICByZXR1cm4gc2k7CiB9CiAKLXN0YXRpYyB2b2lkIHNvaW5mb191bmxvYWQoc29pbmZvKiBzaSkgewotICBpZiAoc2ktPnJlZl9jb3VudCA9PSAxKSB7Ci0gICAgVFJBQ0UoInVubG9hZGluZyAnJXMnIiwgc2ktPm5hbWUpOwotICAgIHNpLT5DYWxsRGVzdHJ1Y3RvcnMoKTsKK3N0YXRpYyB2b2lkIHNvaW5mb191bmxvYWQoc29pbmZvKiByb290KSB7CisgIC8vIE5vdGUgdGhhdCB0aGUgbGlicmFyeSBjYW4gYmUgbG9hZGVkIGJ1dCBub3QgbGlua2VkOworICAvLyBpbiB3aGljaCBjYXNlIHRoZXJlIGlzIG5vIHJvb3QgYnV0IHdlIHN0aWxsIG5lZWQKKyAgLy8gdG8gd2FsayB0aGUgdHJlZSBhbmQgdW5sb2FkIHNvaW5mb3MgaW52b2x2ZWQuCisgIC8vCisgIC8vIFRoaXMgaGFwcGVucyBvbiB1bnN1Y2Nlc3NmdWwgZGxvcGVuLCB3aGVuIG9uZSBvZgorICAvLyB0aGUgRFRfTkVFREVEIGxpYnJhcmllcyBjb3VsZCBub3QgYmUgbGlua2VkL2ZvdW5kLgorICBpZiAocm9vdC0+aXNfbGlua2VkKCkpIHsKKyAgICByb290ID0gcm9vdC0+Z2V0X2xvY2FsX2dyb3VwX3Jvb3QoKTsKKyAgfQogCi0gICAgaWYgKHNpLT5oYXNfbWluX3ZlcnNpb24oMCkpIHsKLSAgICAgIHNvaW5mbyogY2hpbGQgPSBudWxscHRyOwotICAgICAgd2hpbGUgKChjaGlsZCA9IHNpLT5nZXRfY2hpbGRyZW4oKS5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgewotICAgICAgICBUUkFDRSgiJXMgbmVlZHMgdG8gdW5sb2FkICVzIiwgc2ktPm5hbWUsIGNoaWxkLT5uYW1lKTsKLSAgICAgICAgc29pbmZvX3VubG9hZChjaGlsZCk7CisgIGlmICghcm9vdC0+Y2FuX3VubG9hZCgpKSB7CisgICAgVFJBQ0UoIm5vdCB1bmxvYWRpbmcgJyVzJyAtIHRoZSBiaW5hcnkgaXMgZmxhZ2dlZCB3aXRoIE5PREVMRVRFIiwgcm9vdC0+Z2V0X3NvbmFtZSgpKTsKKyAgICByZXR1cm47CisgIH0KKworICBzaXplX3QgcmVmX2NvdW50ID0gcm9vdC0+aXNfbGlua2VkKCkgPyByb290LT5kZWNyZW1lbnRfcmVmX2NvdW50KCkgOiAwOworCisgIGlmIChyZWZfY291bnQgPT0gMCkgeworICAgIHNvaW5mbzo6c29pbmZvX2xpc3RfdCBsb2NhbF91bmxvYWRfbGlzdDsKKyAgICBzb2luZm86OnNvaW5mb19saXN0X3QgZXh0ZXJuYWxfdW5sb2FkX2xpc3Q7CisgICAgc29pbmZvOjpzb2luZm9fbGlzdF90IGRlcHRoX2ZpcnN0X2xpc3Q7CisgICAgZGVwdGhfZmlyc3RfbGlzdC5wdXNoX2JhY2socm9vdCk7CisgICAgc29pbmZvKiBzaSA9IG51bGxwdHI7CisKKyAgICB3aGlsZSAoKHNpID0gZGVwdGhfZmlyc3RfbGlzdC5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgeworICAgICAgaWYgKGxvY2FsX3VubG9hZF9saXN0LmNvbnRhaW5zKHNpKSkgeworICAgICAgICBjb250aW51ZTsKICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgZm9yX2VhY2hfZHRfbmVlZGVkKHNpLCBbJl0gKGNvbnN0IGNoYXIqIGxpYnJhcnlfbmFtZSkgewotICAgICAgICBUUkFDRSgiZGVwcmVjYXRlZCAob2xkIGZvcm1hdCBvZiBzb2luZm8pOiAlcyBuZWVkcyB0byB1bmxvYWQgJXMiLCBzaS0+bmFtZSwgbGlicmFyeV9uYW1lKTsKLSAgICAgICAgc29pbmZvKiBuZWVkZWQgPSBmaW5kX2xpYnJhcnkobGlicmFyeV9uYW1lLCBSVExEX05PTE9BRCwgbnVsbHB0cik7Ci0gICAgICAgIGlmIChuZWVkZWQgIT0gbnVsbHB0cikgewotICAgICAgICAgIHNvaW5mb191bmxvYWQobmVlZGVkKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAvLyBOb3QgZm91bmQ6IGZvciBleGFtcGxlIGlmIHN5bWxpbmsgd2FzIGRlbGV0ZWQgYmV0d2VlbiBkbG9wZW4gYW5kIGRsY2xvc2UKLSAgICAgICAgICAvLyBTaW5jZSB3ZSBjYW5ub3QgcmVhbGx5IGhhbmRsZSBlcnJvcnMgYXQgdGhpcyBwb2ludCAtIHByaW50IGFuZCBjb250aW51ZS4KLSAgICAgICAgICBQUklOVCgid2FybmluZzogY291bGRuJ3QgZmluZCAlcyBuZWVkZWQgYnkgJXMgb24gdW5sb2FkLiIsIGxpYnJhcnlfbmFtZSwgc2ktPm5hbWUpOworCisgICAgICBsb2NhbF91bmxvYWRfbGlzdC5wdXNoX2JhY2soc2kpOworCisgICAgICBpZiAoc2ktPmhhc19taW5fdmVyc2lvbigwKSkgeworICAgICAgICBzb2luZm8qIGNoaWxkID0gbnVsbHB0cjsKKyAgICAgICAgd2hpbGUgKChjaGlsZCA9IHNpLT5nZXRfY2hpbGRyZW4oKS5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgeworICAgICAgICAgIFRSQUNFKCIlc0AlcCBuZWVkcyB0byB1bmxvYWQgJXNAJXAiLCBzaS0+Z2V0X3NvbmFtZSgpLCBzaSwgY2hpbGQtPmdldF9zb25hbWUoKSwgY2hpbGQpOworICAgICAgICAgIGlmIChsb2NhbF91bmxvYWRfbGlzdC5jb250YWlucyhjaGlsZCkpIHsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGQtPmlzX2xpbmtlZCgpICYmIGNoaWxkLT5nZXRfbG9jYWxfZ3JvdXBfcm9vdCgpICE9IHJvb3QpIHsKKyAgICAgICAgICAgIGV4dGVybmFsX3VubG9hZF9saXN0LnB1c2hfYmFjayhjaGlsZCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGRlcHRoX2ZpcnN0X2xpc3QucHVzaF9mcm9udChjaGlsZCk7CisgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICB9KTsKKyAgICAgIH0gZWxzZSB7CisjaWYgIWRlZmluZWQoX19hcm1fXykKKyAgICAgICAgX19saWJjX2ZhdGFsKCJzb2luZm8gZm9yIFwiJXNcIkAlcCBoYXMgbm8gdmVyc2lvbiIsIHNpLT5nZXRfc29uYW1lKCksIHNpKTsKKyNlbHNlCisgICAgICAgIFBSSU5UKCJ3YXJuaW5nOiBzb2luZm8gZm9yIFwiJXNcIkAlcCBoYXMgbm8gdmVyc2lvbiIsIHNpLT5nZXRfc29uYW1lKCksIHNpKTsKKyAgICAgICAgZm9yX2VhY2hfZHRfbmVlZGVkKHNpLCBbJl0gKGNvbnN0IGNoYXIqIGxpYnJhcnlfbmFtZSkgeworICAgICAgICAgIFRSQUNFKCJkZXByZWNhdGVkIChvbGQgZm9ybWF0IG9mIHNvaW5mbyk6ICVzIG5lZWRzIHRvIHVubG9hZCAlcyIsCisgICAgICAgICAgICAgIHNpLT5nZXRfc29uYW1lKCksIGxpYnJhcnlfbmFtZSk7CisKKyAgICAgICAgICBzb2luZm8qIG5lZWRlZCA9IGZpbmRfbGlicmFyeShsaWJyYXJ5X25hbWUsIFJUTERfTk9MT0FELCBudWxscHRyKTsKKyAgICAgICAgICBpZiAobmVlZGVkICE9IG51bGxwdHIpIHsKKyAgICAgICAgICAgIC8vIE5vdCBmb3VuZDogZm9yIGV4YW1wbGUgaWYgc3ltbGluayB3YXMgZGVsZXRlZCBiZXR3ZWVuIGRsb3BlbiBhbmQgZGxjbG9zZQorICAgICAgICAgICAgLy8gU2luY2Ugd2UgY2Fubm90IHJlYWxseSBoYW5kbGUgZXJyb3JzIGF0IHRoaXMgcG9pbnQgLSBwcmludCBhbmQgY29udGludWUuCisgICAgICAgICAgICBQUklOVCgid2FybmluZzogY291bGRuJ3QgZmluZCAlcyBuZWVkZWQgYnkgJXMgb24gdW5sb2FkLiIsCisgICAgICAgICAgICAgICAgbGlicmFyeV9uYW1lLCBzaS0+Z2V0X3NvbmFtZSgpKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9IGVsc2UgaWYgKGxvY2FsX3VubG9hZF9saXN0LmNvbnRhaW5zKG5lZWRlZCkpIHsKKyAgICAgICAgICAgIC8vIGFscmVhZHkgdmlzaXRlZAorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0gZWxzZSBpZiAobmVlZGVkLT5pc19saW5rZWQoKSAmJiBuZWVkZWQtPmdldF9sb2NhbF9ncm91cF9yb290KCkgIT0gcm9vdCkgeworICAgICAgICAgICAgLy8gZXh0ZXJuYWwgZ3JvdXAKKyAgICAgICAgICAgIGV4dGVybmFsX3VubG9hZF9saXN0LnB1c2hfYmFjayhuZWVkZWQpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBsb2NhbCBncm91cAorICAgICAgICAgICAgZGVwdGhfZmlyc3RfbGlzdC5wdXNoX2Zyb250KG5lZWRlZCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyNlbmRpZgorICAgICAgfQogICAgIH0KIAotICAgIG5vdGlmeV9nZGJfb2ZfdW5sb2FkKHNpKTsKLSAgICBzaS0+cmVmX2NvdW50ID0gMDsKLSAgICBzb2luZm9fZnJlZShzaSk7CisgICAgbG9jYWxfdW5sb2FkX2xpc3QuZm9yX2VhY2goW10oc29pbmZvKiBzaSkgeworICAgICAgc2ktPmNhbGxfZGVzdHJ1Y3RvcnMoKTsKKyAgICB9KTsKKworICAgIHdoaWxlICgoc2kgPSBsb2NhbF91bmxvYWRfbGlzdC5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgeworICAgICAgbm90aWZ5X2dkYl9vZl91bmxvYWQoc2kpOworICAgICAgc29pbmZvX2ZyZWUoc2kpOworICAgIH0KKworICAgIHdoaWxlICgoc2kgPSBleHRlcm5hbF91bmxvYWRfbGlzdC5wb3BfZnJvbnQoKSkgIT0gbnVsbHB0cikgeworICAgICAgc29pbmZvX3VubG9hZChzaSk7CisgICAgfQogICB9IGVsc2UgewotICAgIHNpLT5yZWZfY291bnQtLTsKLSAgICBUUkFDRSgibm90IHVubG9hZGluZyAnJXMnLCBkZWNyZW1lbnRpbmcgcmVmX2NvdW50IHRvICV6ZCIsIHNpLT5uYW1lLCBzaS0+cmVmX2NvdW50KTsKKyAgICBUUkFDRSgibm90IHVubG9hZGluZyAnJXMnIGdyb3VwLCBkZWNyZW1lbnRpbmcgcmVmX2NvdW50IHRvICV6ZCIsIHJvb3QtPmdldF9zb25hbWUoKSwgcmVmX2NvdW50KTsKICAgfQogfQogCkBAIC0xMDI0LDggKzE2MDMsOCBAQAogICAvLyBzbnByaW50ZiBhZ2Fpbi4KICAgc2l6ZV90IHJlcXVpcmVkX2xlbiA9IHN0cmxlbihrRGVmYXVsdExkUGF0aHNbMF0pICsgc3RybGVuKGtEZWZhdWx0TGRQYXRoc1sxXSkgKyAyOwogICBpZiAoYnVmZmVyX3NpemUgPCByZXF1aXJlZF9sZW4pIHsKLSAgICBfX2xpYmNfZmF0YWwoImFuZHJvaWRfZ2V0X0xEX0xJQlJBUllfUEFUSCBmYWlsZWQsIGJ1ZmZlciB0b28gc21hbGw6IGJ1ZmZlciBsZW4gJXp1LCByZXF1aXJlZCBsZW4gJXp1IiwKLSAgICAgICAgICAgICAgICAgYnVmZmVyX3NpemUsIHJlcXVpcmVkX2xlbik7CisgICAgX19saWJjX2ZhdGFsKCJhbmRyb2lkX2dldF9MRF9MSUJSQVJZX1BBVEggZmFpbGVkLCBidWZmZXIgdG9vIHNtYWxsOiAiCisgICAgICAgICAgICAgICAgICJidWZmZXIgbGVuICV6dSwgcmVxdWlyZWQgbGVuICV6dSIsIGJ1ZmZlcl9zaXplLCByZXF1aXJlZF9sZW4pOwogICB9CiAgIGNoYXIqIGVuZCA9IHN0cGNweShidWZmZXIsIGtEZWZhdWx0TGRQYXRoc1swXSk7CiAgICplbmQgPSAnOic7CkBAIC0xMDMzLDEzICsxNjEyLDExIEBACiB9CiAKIHZvaWQgZG9fYW5kcm9pZF91cGRhdGVfTERfTElCUkFSWV9QQVRIKGNvbnN0IGNoYXIqIGxkX2xpYnJhcnlfcGF0aCkgewotICBpZiAoIWdldF9BVF9TRUNVUkUoKSkgewotICAgIHBhcnNlX0xEX0xJQlJBUllfUEFUSChsZF9saWJyYXJ5X3BhdGgpOwotICB9CisgIHBhcnNlX0xEX0xJQlJBUllfUEFUSChsZF9saWJyYXJ5X3BhdGgpOwogfQogCiBzb2luZm8qIGRvX2Rsb3Blbihjb25zdCBjaGFyKiBuYW1lLCBpbnQgZmxhZ3MsIGNvbnN0IGFuZHJvaWRfZGxleHRpbmZvKiBleHRpbmZvKSB7Ci0gIGlmICgoZmxhZ3MgJiB+KFJUTERfTk9XfFJUTERfTEFaWXxSVExEX0xPQ0FMfFJUTERfR0xPQkFMfFJUTERfTk9MT0FEKSkgIT0gMCkgeworICBpZiAoKGZsYWdzICYgfihSVExEX05PV3xSVExEX0xBWll8UlRMRF9MT0NBTHxSVExEX0dMT0JBTHxSVExEX05PREVMRVRFfFJUTERfTk9MT0FEKSkgIT0gMCkgewogICAgIERMX0VSUigiaW52YWxpZCBmbGFncyB0byBkbG9wZW46ICV4IiwgZmxhZ3MpOwogICAgIHJldHVybiBudWxscHRyOwogICB9CkBAIC0xMDUwLDYwICsxNjI3LDE5NyBAQAogICAgIH0KICAgICBpZiAoKGV4dGluZm8tPmZsYWdzICYgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRCkgPT0gMCAmJgogICAgICAgICAoZXh0aW5mby0+ZmxhZ3MgJiBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEX09GRlNFVCkgIT0gMCkgewotICAgICAgRExfRVJSKCJpbnZhbGlkIGV4dGVuZGVkIGZsYWcgY29tYmluYXRpb24gKEFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkRfT0ZGU0VUIHdpdGhvdXQgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRCk6IDB4JSIgUFJJeDY0LCBleHRpbmZvLT5mbGFncyk7CisgICAgICBETF9FUlIoImludmFsaWQgZXh0ZW5kZWQgZmxhZyBjb21iaW5hdGlvbiAoQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQgd2l0aG91dCAiCisgICAgICAgICAgIkFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkQpOiAweCUiIFBSSXg2NCwgZXh0aW5mby0+ZmxhZ3MpOwogICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogICB9Ci0gIHByb3RlY3RfZGF0YShQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKTsKKworICBQcm90ZWN0ZWREYXRhR3VhcmQgZ3VhcmQ7CiAgIHNvaW5mbyogc2kgPSBmaW5kX2xpYnJhcnkobmFtZSwgZmxhZ3MsIGV4dGluZm8pOwogICBpZiAoc2kgIT0gbnVsbHB0cikgewotICAgIHNpLT5DYWxsQ29uc3RydWN0b3JzKCk7CisgICAgc2ktPmNhbGxfY29uc3RydWN0b3JzKCk7CiAgIH0KLSAgcHJvdGVjdF9kYXRhKFBST1RfUkVBRCk7CiAgIHJldHVybiBzaTsKIH0KIAogdm9pZCBkb19kbGNsb3NlKHNvaW5mbyogc2kpIHsKLSAgcHJvdGVjdF9kYXRhKFBST1RfUkVBRCB8IFBST1RfV1JJVEUpOworICBQcm90ZWN0ZWREYXRhR3VhcmQgZ3VhcmQ7CiAgIHNvaW5mb191bmxvYWQoc2kpOwotICBwcm90ZWN0X2RhdGEoUFJPVF9SRUFEKTsKIH0KIAogc3RhdGljIEVsZlcoQWRkcikgY2FsbF9pZnVuY19yZXNvbHZlcihFbGZXKEFkZHIpIHJlc29sdmVyX2FkZHIpIHsKICAgdHlwZWRlZiBFbGZXKEFkZHIpICgqaWZ1bmNfcmVzb2x2ZXJfdCkodm9pZCk7CiAgIGlmdW5jX3Jlc29sdmVyX3QgaWZ1bmNfcmVzb2x2ZXIgPSByZWludGVycHJldF9jYXN0PGlmdW5jX3Jlc29sdmVyX3Q+KHJlc29sdmVyX2FkZHIpOwogICBFbGZXKEFkZHIpIGlmdW5jX2FkZHIgPSBpZnVuY19yZXNvbHZlcigpOwotICBUUkFDRV9UWVBFKFJFTE8sICJDYWxsZWQgaWZ1bmNfcmVzb2x2ZXJAJXAuIFRoZSByZXN1bHQgaXMgJXAiLCBpZnVuY19yZXNvbHZlciwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oaWZ1bmNfYWRkcikpOworICBUUkFDRV9UWVBFKFJFTE8sICJDYWxsZWQgaWZ1bmNfcmVzb2x2ZXJAJXAuIFRoZSByZXN1bHQgaXMgJXAiLAorICAgICAgaWZ1bmNfcmVzb2x2ZXIsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGlmdW5jX2FkZHIpKTsKIAogICByZXR1cm4gaWZ1bmNfYWRkcjsKIH0KIAorY29uc3QgdmVyc2lvbl9pbmZvKiBWZXJzaW9uVHJhY2tlcjo6Z2V0X3ZlcnNpb25faW5mbyhFbGZXKFZlcnN5bSkgc291cmNlX3N5bXZlcikgY29uc3QgeworICBpZiAoc291cmNlX3N5bXZlciA8IDIgfHwKKyAgICAgIHNvdXJjZV9zeW12ZXIgPj0gdmVyc2lvbl9pbmZvcy5zaXplKCkgfHwKKyAgICAgIHZlcnNpb25faW5mb3Nbc291cmNlX3N5bXZlcl0ubmFtZSA9PSBudWxscHRyKSB7CisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KKworICByZXR1cm4gJnZlcnNpb25faW5mb3Nbc291cmNlX3N5bXZlcl07Cit9CisKK3ZvaWQgVmVyc2lvblRyYWNrZXI6OmFkZF92ZXJzaW9uX2luZm8oc2l6ZV90IHNvdXJjZV9pbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmVyhXb3JkKSBlbGZfaGFzaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogdmVyX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mbyogdGFyZ2V0X3NpKSB7CisgIGlmIChzb3VyY2VfaW5kZXggPj0gdmVyc2lvbl9pbmZvcy5zaXplKCkpIHsKKyAgICB2ZXJzaW9uX2luZm9zLnJlc2l6ZShzb3VyY2VfaW5kZXgrMSk7CisgIH0KKworICB2ZXJzaW9uX2luZm9zW3NvdXJjZV9pbmRleF0uZWxmX2hhc2ggPSBlbGZfaGFzaDsKKyAgdmVyc2lvbl9pbmZvc1tzb3VyY2VfaW5kZXhdLm5hbWUgPSB2ZXJfbmFtZTsKKyAgdmVyc2lvbl9pbmZvc1tzb3VyY2VfaW5kZXhdLnRhcmdldF9zaSA9IHRhcmdldF9zaTsKK30KKworYm9vbCBWZXJzaW9uVHJhY2tlcjo6aW5pdF92ZXJuZWVkKGNvbnN0IHNvaW5mbyogc2lfZnJvbSkgeworICB1aW50cHRyX3QgdmVybmVlZF9wdHIgPSBzaV9mcm9tLT5nZXRfdmVybmVlZF9wdHIoKTsKKworICBpZiAodmVybmVlZF9wdHIgPT0gMCkgeworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgc2l6ZV90IHZlcm5lZWRfY250ID0gc2lfZnJvbS0+Z2V0X3Zlcm5lZWRfY250KCk7CisKKyAgZm9yIChzaXplX3QgaSA9IDAsIG9mZnNldCA9IDA7IGk8dmVybmVlZF9jbnQ7ICsraSkgeworICAgIGNvbnN0IEVsZlcoVmVybmVlZCkqIHZlcm5lZWQgPSByZWludGVycHJldF9jYXN0PEVsZlcoVmVybmVlZCkqPih2ZXJuZWVkX3B0ciArIG9mZnNldCk7CisgICAgc2l6ZV90IHZlcm5hdXhfb2Zmc2V0ID0gb2Zmc2V0ICsgdmVybmVlZC0+dm5fYXV4OworICAgIG9mZnNldCArPSB2ZXJuZWVkLT52bl9uZXh0OworCisgICAgaWYgKHZlcm5lZWQtPnZuX3ZlcnNpb24gIT0gMSkgeworICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCB2ZXJuZWVkWyV6ZF0gdm5fdmVyc2lvbjogJWQgKGV4cGVjdGVkIDEpIiwgaSwgdmVybmVlZC0+dm5fdmVyc2lvbik7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgY29uc3QgY2hhciogdGFyZ2V0X3NvbmFtZSA9IHNpX2Zyb20tPmdldF9zdHJpbmcodmVybmVlZC0+dm5fZmlsZSk7CisgICAgLy8gZmluZCBpdCBpbiBkZXBlbmRlbmNpZXMKKyAgICBzb2luZm8qIHRhcmdldF9zaSA9IHNpX2Zyb20tPmdldF9jaGlsZHJlbigpLmZpbmRfaWYoWyZdKGNvbnN0IHNvaW5mbyogc2kpIHsKKyAgICAgIHJldHVybiBzdHJjbXAoc2ktPmdldF9zb25hbWUoKSwgdGFyZ2V0X3NvbmFtZSkgPT0gMDsKKyAgICB9KTsKKworICAgIGlmICh0YXJnZXRfc2kgPT0gbnVsbHB0cikgeworICAgICAgRExfRVJSKCJjYW5ub3QgZmluZCBcIiVzXCIgZnJvbSB2ZXJuZWVkWyV6ZF0gaW4gRFRfTkVFREVEIGxpc3QgZm9yIFwiJXNcIiIsCisgICAgICAgICAgdGFyZ2V0X3NvbmFtZSwgaSwgc2lfZnJvbS0+Z2V0X3NvbmFtZSgpKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBmb3IgKHNpemVfdCBqID0gMDsgajx2ZXJuZWVkLT52bl9jbnQ7ICsraikgeworICAgICAgY29uc3QgRWxmVyhWZXJuYXV4KSogdmVybmF1eCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhWZXJuYXV4KSo+KHZlcm5lZWRfcHRyICsgdmVybmF1eF9vZmZzZXQpOworICAgICAgdmVybmF1eF9vZmZzZXQgKz0gdmVybmF1eC0+dm5hX25leHQ7CisKKyAgICAgIGNvbnN0IEVsZlcoV29yZCkgZWxmX2hhc2ggPSB2ZXJuYXV4LT52bmFfaGFzaDsKKyAgICAgIGNvbnN0IGNoYXIqIHZlcl9uYW1lID0gc2lfZnJvbS0+Z2V0X3N0cmluZyh2ZXJuYXV4LT52bmFfbmFtZSk7CisgICAgICBFbGZXKEhhbGYpIHNvdXJjZV9pbmRleCA9IHZlcm5hdXgtPnZuYV9vdGhlcjsKKworICAgICAgYWRkX3ZlcnNpb25faW5mbyhzb3VyY2VfaW5kZXgsIGVsZl9oYXNoLCB2ZXJfbmFtZSwgdGFyZ2V0X3NpKTsKKyAgICB9CisgIH0KKworICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBWZXJzaW9uVHJhY2tlcjo6aW5pdF92ZXJkZWYoY29uc3Qgc29pbmZvKiBzaV9mcm9tKSB7CisgIHJldHVybiBmb3JfZWFjaF92ZXJkZWYoc2lfZnJvbSwKKyAgICBbJl0oc2l6ZV90LCBjb25zdCBFbGZXKFZlcmRlZikqIHZlcmRlZiwgY29uc3QgRWxmVyhWZXJkYXV4KSogdmVyZGF1eCkgeworICAgICAgYWRkX3ZlcnNpb25faW5mbyh2ZXJkZWYtPnZkX25keCwgdmVyZGVmLT52ZF9oYXNoLAorICAgICAgICAgIHNpX2Zyb20tPmdldF9zdHJpbmcodmVyZGF1eC0+dmRhX25hbWUpLCBzaV9mcm9tKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICk7Cit9CisKK2Jvb2wgVmVyc2lvblRyYWNrZXI6OmluaXQoY29uc3Qgc29pbmZvKiBzaV9mcm9tKSB7CisgIGlmICghc2lfZnJvbS0+aGFzX21pbl92ZXJzaW9uKDIpKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICByZXR1cm4gaW5pdF92ZXJuZWVkKHNpX2Zyb20pICYmIGluaXRfdmVyZGVmKHNpX2Zyb20pOworfQorCisjaWYgIWRlZmluZWQoX19taXBzX18pCiAjaWYgZGVmaW5lZChVU0VfUkVMQSkKLWludCBzb2luZm86OlJlbG9jYXRlKEVsZlcoUmVsYSkqIHJlbGEsIHVuc2lnbmVkIGNvdW50KSB7Ci0gIGZvciAoc2l6ZV90IGlkeCA9IDA7IGlkeCA8IGNvdW50OyArK2lkeCwgKytyZWxhKSB7Ci0gICAgdW5zaWduZWQgdHlwZSA9IEVMRlcoUl9UWVBFKShyZWxhLT5yX2luZm8pOwotICAgIHVuc2lnbmVkIHN5bSA9IEVMRlcoUl9TWU0pKHJlbGEtPnJfaW5mbyk7Ci0gICAgRWxmVyhBZGRyKSByZWxvYyA9IHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KHJlbGEtPnJfb2Zmc2V0ICsgbG9hZF9iaWFzKTsKK3N0YXRpYyBFbGZXKEFkZHIpIGdldF9hZGRlbmQoRWxmVyhSZWxhKSogcmVsYSwgRWxmVyhBZGRyKSByZWxvY19hZGRyIF9fdW51c2VkKSB7CisgIHJldHVybiByZWxhLT5yX2FkZGVuZDsKK30KKyNlbHNlCitzdGF0aWMgRWxmVyhBZGRyKSBnZXRfYWRkZW5kKEVsZlcoUmVsKSogcmVsLCBFbGZXKEFkZHIpIHJlbG9jX2FkZHIpIHsKKyAgaWYgKEVMRlcoUl9UWVBFKShyZWwtPnJfaW5mbykgPT0gUl9HRU5FUklDX1JFTEFUSVZFIHx8CisgICAgICBFTEZXKFJfVFlQRSkocmVsLT5yX2luZm8pID09IFJfR0VORVJJQ19JUkVMQVRJVkUpIHsKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jX2FkZHIpOworICB9CisgIHJldHVybiAwOworfQorI2VuZGlmCisKK3RlbXBsYXRlPHR5cGVuYW1lIEVsZlJlbEl0ZXJhdG9yVD4KK2Jvb2wgc29pbmZvOjpyZWxvY2F0ZShFbGZSZWxJdGVyYXRvclQmJiByZWxfaXRlcmF0b3IsIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBsb2NhbF9ncm91cCkgeworICBWZXJzaW9uVHJhY2tlciB2ZXJzaW9uX3RyYWNrZXI7CisKKyAgaWYgKCF2ZXJzaW9uX3RyYWNrZXIuaW5pdCh0aGlzKSkgeworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIGZvciAoc2l6ZV90IGlkeCA9IDA7IHJlbF9pdGVyYXRvci5oYXNfbmV4dCgpOyArK2lkeCkgeworICAgIGNvbnN0IGF1dG8gcmVsID0gcmVsX2l0ZXJhdG9yLm5leHQoKTsKKyAgICBpZiAocmVsID09IG51bGxwdHIpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBFbGZXKFdvcmQpIHR5cGUgPSBFTEZXKFJfVFlQRSkocmVsLT5yX2luZm8pOworICAgIEVsZlcoV29yZCkgc3ltID0gRUxGVyhSX1NZTSkocmVsLT5yX2luZm8pOworCisgICAgRWxmVyhBZGRyKSByZWxvYyA9IHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KHJlbC0+cl9vZmZzZXQgKyBsb2FkX2JpYXMpOwogICAgIEVsZlcoQWRkcikgc3ltX2FkZHIgPSAwOwogICAgIGNvbnN0IGNoYXIqIHN5bV9uYW1lID0gbnVsbHB0cjsKKyAgICBFbGZXKEFkZHIpIGFkZGVuZCA9IGdldF9hZGRlbmQocmVsLCByZWxvYyk7CiAKLSAgICBERUJVRygiUHJvY2Vzc2luZyAnJXMnIHJlbG9jYXRpb24gYXQgaW5kZXggJXpkIiwgbmFtZSwgaWR4KTsKLSAgICBpZiAodHlwZSA9PSAwKSB7IC8vIFJfKl9OT05FCisgICAgREVCVUcoIlByb2Nlc3NpbmcgJyVzJyByZWxvY2F0aW9uIGF0IGluZGV4ICV6ZCIsIGdldF9zb25hbWUoKSwgaWR4KTsKKyAgICBpZiAodHlwZSA9PSBSX0dFTkVSSUNfTk9ORSkgewogICAgICAgY29udGludWU7CiAgICAgfQogCi0gICAgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKKyAgICBjb25zdCBFbGZXKFN5bSkqIHMgPSBudWxscHRyOwogICAgIHNvaW5mbyogbHNpID0gbnVsbHB0cjsKIAogICAgIGlmIChzeW0gIT0gMCkgewotICAgICAgc3ltX25hbWUgPSBnZXRfc3RyaW5nKHN5bXRhYltzeW1dLnN0X25hbWUpOwotICAgICAgcyA9IHNvaW5mb19kb19sb29rdXAodGhpcywgc3ltX25hbWUsICZsc2kpOworICAgICAgc3ltX25hbWUgPSBnZXRfc3RyaW5nKHN5bXRhYl9bc3ltXS5zdF9uYW1lKTsKKyAgICAgIGNvbnN0IEVsZlcoVmVyc3ltKSogc3ltX3Zlcl9wdHIgPSBnZXRfdmVyc3ltKHN5bSk7CisgICAgICBFbGZXKFZlcnN5bSkgc3ltX3ZlciA9IHN5bV92ZXJfcHRyID09IG51bGxwdHIgPyAwIDogKnN5bV92ZXJfcHRyOworCisgICAgICBpZiAoc3ltX3ZlciA9PSBWRVJfTkRYX0xPQ0FMIHx8IHN5bV92ZXIgPT0gVkVSX05EWF9HTE9CQUwpIHsKKyAgICAgICAgLy8gdGhlcmUgaXMgbm8gdmVyc2lvbiBpbmZvIGZvciB0aGlzIG9uZQorICAgICAgICBpZiAoIXNvaW5mb19kb19sb29rdXAodGhpcywgc3ltX25hbWUsIG51bGxwdHIsICZsc2ksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXAsICZzKSkgeworICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAgICAgfSBlbHNlIHsKKyAgICAgICAgY29uc3QgdmVyc2lvbl9pbmZvKiB2aSA9IHZlcnNpb25fdHJhY2tlci5nZXRfdmVyc2lvbl9pbmZvKHN5bV92ZXIpOworCisgICAgICAgIGlmICh2aSA9PSBudWxscHRyKSB7CisgICAgICAgICAgRExfRVJSKCJjYW5ub3QgZmluZCB2ZXJuZWVkL3ZlcmRlZiBmb3IgdmVyc2lvbiBpbmRleD0lZCAiCisgICAgICAgICAgICAgICJyZWZlcmVuY2VkIGJ5IHN5bWJvbCBcIiVzXCIgYXQgXCIlc1wiIiwgc3ltX3Zlciwgc3ltX25hbWUsIGdldF9zb25hbWUoKSk7CisgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisKKyAgICAgICAgaWYgKCFzb2luZm9fZG9fbG9va3VwKHRoaXMsIHN5bV9uYW1lLCB2aSwgJmxzaSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCwgJnMpKSB7CisgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICB9CiAgICAgICBpZiAocyA9PSBudWxscHRyKSB7CiAgICAgICAgIC8vIFdlIG9ubHkgYWxsb3cgYW4gdW5kZWZpbmVkIHN5bWJvbCBpZiB0aGlzIGlzIGEgd2VhayByZWZlcmVuY2UuLi4KLSAgICAgICAgcyA9ICZzeW10YWJbc3ltXTsKKyAgICAgICAgcyA9ICZzeW10YWJfW3N5bV07CiAgICAgICAgIGlmIChFTEZfU1RfQklORChzLT5zdF9pbmZvKSAhPSBTVEJfV0VBSykgewotICAgICAgICAgIERMX0VSUigiY2Fubm90IGxvY2F0ZSBzeW1ib2wgXCIlc1wiIHJlZmVyZW5jZWQgYnkgXCIlc1wiLi4uIiwgc3ltX25hbWUsIG5hbWUpOwotICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICBETF9FUlIoImNhbm5vdCBsb2NhdGUgc3ltYm9sIFwiJXNcIiByZWZlcmVuY2VkIGJ5IFwiJXNcIi4uLiIsIHN5bV9uYW1lLCBnZXRfc29uYW1lKCkpOworICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIElISTAwNDRDIEFBRUxGIDQuNS4xLjE6CkBAIC0xMTE5LDM2ICsxODMzLDQwIEBACiAgICAgICAgICAqLwogCiAgICAgICAgIHN3aXRjaCAodHlwZSkgeworICAgICAgICAgIGNhc2UgUl9HRU5FUklDX0pVTVBfU0xPVDoKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19HTE9CX0RBVDoKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19SRUxBVElWRToKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19JUkVMQVRJVkU6CiAjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykKLSAgICAgICAgICBjYXNlIFJfQUFSQ0g2NF9KVU1QX1NMT1Q6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfR0xPQl9EQVQ6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTNjQ6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTMzI6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTMTY6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfUkVMQVRJVkU6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfSVJFTEFUSVZFOgorI2VsaWYgZGVmaW5lZChfX3g4Nl82NF9fKQorICAgICAgICAgIGNhc2UgUl9YODZfNjRfMzI6CisgICAgICAgICAgY2FzZSBSX1g4Nl82NF82NDoKKyNlbGlmIGRlZmluZWQoX19hcm1fXykKKyAgICAgICAgICBjYXNlIFJfQVJNX0FCUzMyOgorI2VsaWYgZGVmaW5lZChfX2kzODZfXykKKyAgICAgICAgICBjYXNlIFJfMzg2XzMyOgorI2VuZGlmCiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogVGhlIHN5bV9hZGRyIHdhcyBpbml0aWFsaXplZCB0byBiZSB6ZXJvIGFib3ZlLCBvciB0aGUgcmVsb2NhdGlvbgogICAgICAgICAgICAgICogY29kZSBiZWxvdyBkb2VzIG5vdCBjYXJlIGFib3V0IHZhbHVlIG9mIHN5bV9hZGRyLgogICAgICAgICAgICAgICogTm8gbmVlZCB0byBkbyBhbnl0aGluZy4KICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgYnJlYWs7Ci0jZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCi0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9KVU1QX1NMT1Q6Ci0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9HTE9CX0RBVDoKLSAgICAgICAgICBjYXNlIFJfWDg2XzY0XzMyOgotICAgICAgICAgIGNhc2UgUl9YODZfNjRfNjQ6Ci0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9SRUxBVElWRToKLSAgICAgICAgICBjYXNlIFJfWDg2XzY0X0lSRUxBVElWRToKLSAgICAgICAgICAgIC8vIE5vIG5lZWQgdG8gZG8gYW55dGhpbmcuCi0gICAgICAgICAgICBicmVhazsKKyNpZiBkZWZpbmVkKF9feDg2XzY0X18pCiAgICAgICAgICAgY2FzZSBSX1g4Nl82NF9QQzMyOgogICAgICAgICAgICAgc3ltX2FkZHIgPSByZWxvYzsKICAgICAgICAgICAgIGJyZWFrOworI2VsaWYgZGVmaW5lZChfX2kzODZfXykKKyAgICAgICAgICBjYXNlIFJfMzg2X1BDMzI6CisgICAgICAgICAgICBzeW1fYWRkciA9IHJlbG9jOworICAgICAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgRExfRVJSKCJ1bmtub3duIHdlYWsgcmVsb2MgdHlwZSAlZCBAICVwICglenUpIiwgdHlwZSwgcmVsYSwgaWR4KTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIERMX0VSUigidW5rbm93biB3ZWFrIHJlbG9jIHR5cGUgJWQgQCAlcCAoJXp1KSIsIHR5cGUsIHJlbCwgaWR4KTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gV2UgZ290IGEgZGVmaW5pdGlvbi4KQEAgLTExNTgsMjk5ICsxODc2LDE3NiBAQAogICAgIH0KIAogICAgIHN3aXRjaCAodHlwZSkgeworICAgICAgY2FzZSBSX0dFTkVSSUNfSlVNUF9TTE9UOgorICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKKyAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBKTVBfU0xPVCAlMTZwIDwtICUxNnAgJXNcbiIsCisgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLAorICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+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+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEdMT0JfREFUICUwOHggPC0gJTA4eCAlcyIsIHJlbG9jLCBzeW1fYWRkciwgc3ltX25hbWUpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHI7Ci0gICAgICAgIGJyZWFrOworI2VsaWYgZGVmaW5lZChfX2FybV9fKQogICAgICAgY2FzZSBSX0FSTV9BQlMzMjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NBYnNvbHV0ZSk7CiAgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CkBAIC0xNDcwLDI1ICsyMDY1LDEzIEBACiAgICAgICAgICAqCiAgICAgICAgICAqIGh0dHA6Ly9pbmZvY2VudGVyLmFybS5jb20vaGVscC90b3BpYy9jb20uYXJtLmRvYy5paGkwMDQ0ZC9JSEkwMDQ0RF9hYWVsZi5wZGYKICAgICAgICAgICoKLSAgICAgICAgICogU2VjdGlvbiA0LjcuMS4xMCAiRHluYW1pYyByZWxvY2F0aW9ucyIKKyAgICAgICAgICogU2VjdGlvbiA0LjYuMS4xMCAiRHluYW1pYyByZWxvY2F0aW9ucyIKICAgICAgICAgICogUl9BUk1fQ09QWSBtYXkgb25seSBhcHBlYXIgaW4gZXhlY3V0YWJsZSBvYmplY3RzIHdoZXJlIGVfdHlwZSBpcwogICAgICAgICAgKiBzZXQgdG8gRVRfRVhFQy4KICAgICAgICAgICovCi0gICAgICAgIERMX0VSUigiJXMgUl9BUk1fQ09QWSByZWxvY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCIsIG5hbWUpOwotICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIERMX0VSUigiJXMgUl9BUk1fQ09QWSByZWxvY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCIsIGdldF9zb25hbWUoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKICNlbGlmIGRlZmluZWQoX19pMzg2X18pCi0gICAgICBjYXNlIFJfMzg2X0pNUF9TTE9UOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKLSAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBKTVBfU0xPVCAlMDh4IDwtICUwOHggJXMiLCByZWxvYywgc3ltX2FkZHIsIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyOwotICAgICAgICBicmVhazsKLSAgICAgIGNhc2UgUl8zODZfR0xPQl9EQVQ6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEdMT0JfREFUICUwOHggPC0gJTA4eCAlcyIsIHJlbG9jLCBzeW1fYWRkciwgc3ltX25hbWUpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHI7Ci0gICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSXzM4Nl8zMjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7CiAgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CkBAIC0xNTAyLDEyNCArMjA4NSwyMyBAQAogICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgLSByZWxvYyksIHN5bV9hZGRyLCByZWxvYywgc3ltX25hbWUpOwogICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciAtIHJlbG9jKTsKICAgICAgICAgYnJlYWs7Ci0jZWxpZiBkZWZpbmVkKF9fbWlwc19fKQotICAgICAgY2FzZSBSX01JUFNfUkVMMzI6Ci0jaWYgZGVmaW5lZChfX0xQNjRfXykKLSAgICAgICAgLy8gTUlQUyBFbGY2NF9SZWwgZW50cmllcyBjb250YWluIGNvbXBvdW5kIHJlbG9jYXRpb25zCi0gICAgICAgIC8vIFdlIG9ubHkgaGFuZGxlIHRoZSBSX01JUFNfTk9ORXxSX01JUFNfNjR8Ul9NSVBTX1JFTDMyIGNhc2UKLSAgICAgICAgaWYgKEVMRjY0X1JfVFlQRTIocmVsLT5yX2luZm8pICE9IFJfTUlQU182NCB8fAotICAgICAgICAgICAgRUxGNjRfUl9UWVBFMyhyZWwtPnJfaW5mbykgIT0gUl9NSVBTX05PTkUpIHsKLSAgICAgICAgICBETF9FUlIoIlVuZXhwZWN0ZWQgY29tcG91bmQgcmVsb2NhdGlvbiB0eXBlOiVkIHR5cGUyOiVkIHR5cGUzOiVkIEAgJXAgKCV6dSkiLAotICAgICAgICAgICAgICAgICB0eXBlLCAodW5zaWduZWQpRUxGNjRfUl9UWVBFMihyZWwtPnJfaW5mbyksCi0gICAgICAgICAgICAgICAgICh1bnNpZ25lZClFTEY2NF9SX1RZUEUzKHJlbC0+cl9pbmZvKSwgcmVsLCBpZHgpOwotICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQogI2VuZGlmCi0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJFTDMyICUwOHp4IDwtICUwOHp4ICVzIiwgc3RhdGljX2Nhc3Q8c2l6ZV90PihyZWxvYyksCi0gICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1fYWRkciksIHN5bV9uYW1lID8gc3ltX25hbWUgOiAiKlNFQ1RJT05IRFIqIik7Ci0gICAgICAgIGlmIChzKSB7Ci0gICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSBzeW1fYWRkcjsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IGJhc2U7Ci0gICAgICAgIH0KLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQotI2lmIGRlZmluZWQoX19hcm1fXykKLSAgICAgIGNhc2UgUl9BUk1fUkVMQVRJVkU6Ci0jZWxpZiBkZWZpbmVkKF9faTM4Nl9fKQotICAgICAgY2FzZSBSXzM4Nl9SRUxBVElWRToKLSNlbmRpZgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1JlbGF0aXZlKTsKLSAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKLSAgICAgICAgaWYgKHN5bSkgewotICAgICAgICAgIERMX0VSUigib2RkIFJFTEFUSVZFIGZvcm0uLi4iKTsKLSAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUxBVElWRSAlcCA8LSArJXAiLAotICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlbG9jKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSkpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IGJhc2U7Ci0gICAgICAgIGJyZWFrOwotI2lmIGRlZmluZWQoX19pMzg2X18pCi0gICAgICBjYXNlIFJfMzg2X0lSRUxBVElWRToKLSAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7Ci0gICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSVJFTEFUSVZFICVwIDwtICVwIiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBjYWxsX2lmdW5jX3Jlc29sdmVyKGJhc2UgKyAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpKTsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQogICAgICAgZGVmYXVsdDoKICAgICAgICAgRExfRVJSKCJ1bmtub3duIHJlbG9jIHR5cGUgJWQgQCAlcCAoJXp1KSIsIHR5cGUsIHJlbCwgaWR4KTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgfQotICByZXR1cm4gMDsKLX0KLSNlbmRpZgotCi0jaWYgZGVmaW5lZChfX21pcHNfXykKLXN0YXRpYyBib29sIG1pcHNfcmVsb2NhdGVfZ290KHNvaW5mbyogc2kpIHsKLSAgRWxmVyhBZGRyKSoqIGdvdCA9IHNpLT5wbHRfZ290OwotICBpZiAoZ290ID09IG51bGxwdHIpIHsKLSAgICByZXR1cm4gdHJ1ZTsKLSAgfQotICB1bnNpZ25lZCBsb2NhbF9nb3RubyA9IHNpLT5taXBzX2xvY2FsX2dvdG5vOwotICB1bnNpZ25lZCBnb3RzeW0gPSBzaS0+bWlwc19nb3RzeW07Ci0gIHVuc2lnbmVkIHN5bXRhYm5vID0gc2ktPm1pcHNfc3ltdGFibm87Ci0gIEVsZlcoU3ltKSogc3ltdGFiID0gc2ktPnN5bXRhYjsKLQotICAvLyBnb3RbMF0gaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGxhenkgcmVzb2x2ZXIgZnVuY3Rpb24uCi0gIC8vIGdvdFsxXSBtYXkgYmUgdXNlZCBmb3IgYSBHTlUgZXh0ZW5zaW9uLgotICAvLyBTZXQgaXQgdG8gYSByZWNvZ25pemFibGUgYWRkcmVzcyBpbiBjYXNlIHNvbWVvbmUgY2FsbHMgaXQgKHNob3VsZCBiZSBfcnRsZF9iaW5kX3N0YXJ0KS4KLSAgLy8gRklYTUU6IG1heWJlIHRoaXMgc2hvdWxkIGJlIGluIGEgc2VwYXJhdGUgcm91dGluZT8KLSAgaWYgKChzaS0+ZmxhZ3MgJiBGTEFHX0xJTktFUikgPT0gMCkgewotICAgIHNpemVfdCBnID0gMDsKLSAgICBnb3RbZysrXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KDB4ZGVhZGJlZWYpOwotICAgIGlmIChyZWludGVycHJldF9jYXN0PGludHB0cl90Pihnb3RbZ10pIDwgMCkgewotICAgICAgZ290W2crK10gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPigweGRlYWRmZWVkKTsKLSAgICB9Ci0gICAgLy8gUmVsb2NhdGUgdGhlIGxvY2FsIEdPVCBlbnRyaWVzLgotICAgIGZvciAoOyBnIDwgbG9jYWxfZ290bm87IGcrKykgewotICAgICAgZ290W2ddID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGdvdFtnXSkgKyBzaS0+bG9hZF9iaWFzKTsKLSAgICB9Ci0gIH0KLQotICAvLyBOb3cgZm9yIHRoZSBnbG9iYWwgR09UIGVudHJpZXMuLi4KLSAgRWxmVyhTeW0pKiBzeW0gPSBzeW10YWIgKyBnb3RzeW07Ci0gIGdvdCA9IHNpLT5wbHRfZ290ICsgbG9jYWxfZ290bm87Ci0gIGZvciAoc2l6ZV90IGcgPSBnb3RzeW07IGcgPCBzeW10YWJubzsgZysrLCBzeW0rKywgZ290KyspIHsKLSAgICAvLyBUaGlzIGlzIGFuIHVuZGVmaW5lZCByZWZlcmVuY2UuLi4gdHJ5IHRvIGxvY2F0ZSBpdC4KLSAgICBjb25zdCBjaGFyKiBzeW1fbmFtZSA9IHNpLT5nZXRfc3RyaW5nKHN5bS0+c3RfbmFtZSk7Ci0gICAgc29pbmZvKiBsc2kgPSBudWxscHRyOwotICAgIEVsZlcoU3ltKSogcyA9IHNvaW5mb19kb19sb29rdXAoc2ksIHN5bV9uYW1lLCAmbHNpKTsKLSAgICBpZiAocyA9PSBudWxscHRyKSB7Ci0gICAgICAvLyBXZSBvbmx5IGFsbG93IGFuIHVuZGVmaW5lZCBzeW1ib2wgaWYgdGhpcyBpcyBhIHdlYWsgcmVmZXJlbmNlLgotICAgICAgcyA9ICZzeW10YWJbZ107Ci0gICAgICBpZiAoRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgIT0gU1RCX1dFQUspIHsKLSAgICAgICAgRExfRVJSKCJjYW5ub3QgbG9jYXRlIFwiJXNcIi4uLiIsIHN5bV9uYW1lKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgfQotICAgICAgKmdvdCA9IDA7Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8vIEZJWE1FOiBpcyB0aGlzIHN1ZmZpY2llbnQ/Ci0gICAgICAvLyBGb3IgcmVmZXJlbmNlIHNlZSBOZXRCU0QgbGluayBsb2FkZXIKLSAgICAgIC8vIGh0dHA6Ly9jdnN3ZWIubmV0YnNkLm9yZy9ic2R3ZWIuY2dpL3NyYy9saWJleGVjL2xkLmVsZl9zby9hcmNoL21pcHMvbWlwc19yZWxvYy5jP3Jldj0xLjUzJmNvbnRlbnQtdHlwZT10ZXh0L3gtY3Zzd2ViLW1hcmt1cAotICAgICAgKmdvdCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KGxzaS0+cmVzb2x2ZV9zeW1ib2xfYWRkcmVzcyhzKSk7CiAgICAgfQogICB9CiAgIHJldHVybiB0cnVlOwogfQotI2VuZGlmCisjZW5kaWYgIC8vICFkZWZpbmVkKF9fbWlwc19fKQogCi12b2lkIHNvaW5mbzo6Q2FsbEFycmF5KGNvbnN0IGNoYXIqIGFycmF5X25hbWUgX191bnVzZWQsIGxpbmtlcl9mdW5jdGlvbl90KiBmdW5jdGlvbnMsIHNpemVfdCBjb3VudCwgYm9vbCByZXZlcnNlKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9hcnJheShjb25zdCBjaGFyKiBhcnJheV9uYW1lIF9fdW51c2VkLCBsaW5rZXJfZnVuY3Rpb25fdCogZnVuY3Rpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGNvdW50LCBib29sIHJldmVyc2UpIHsKICAgaWYgKGZ1bmN0aW9ucyA9PSBudWxscHRyKSB7CiAgICAgcmV0dXJuOwogICB9CiAKLSAgVFJBQ0UoIlsgQ2FsbGluZyAlcyAoc2l6ZSAlemQpIEAgJXAgZm9yICclcycgXSIsIGFycmF5X25hbWUsIGNvdW50LCBmdW5jdGlvbnMsIG5hbWUpOworICBUUkFDRSgiWyBDYWxsaW5nICVzIChzaXplICV6ZCkgQCAlcCBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgY291bnQsIGZ1bmN0aW9ucywgZ2V0X3NvbmFtZSgpKTsKIAogICBpbnQgYmVnaW4gPSByZXZlcnNlID8gKGNvdW50IC0gMSkgOiAwOwogICBpbnQgZW5kID0gcmV2ZXJzZSA/IC0xIDogY291bnQ7CkBAIC0xNjI3LDMzICsyMTA5LDI5IEBACiAKICAgZm9yIChpbnQgaSA9IGJlZ2luOyBpICE9IGVuZDsgaSArPSBzdGVwKSB7CiAgICAgVFJBQ0UoIlsgJXNbJWRdID09ICVwIF0iLCBhcnJheV9uYW1lLCBpLCBmdW5jdGlvbnNbaV0pOwotICAgIENhbGxGdW5jdGlvbigiZnVuY3Rpb24iLCBmdW5jdGlvbnNbaV0pOworICAgIGNhbGxfZnVuY3Rpb24oImZ1bmN0aW9uIiwgZnVuY3Rpb25zW2ldKTsKICAgfQogCi0gIFRSQUNFKCJbIERvbmUgY2FsbGluZyAlcyBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgbmFtZSk7CisgIFRSQUNFKCJbIERvbmUgY2FsbGluZyAlcyBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgZ2V0X3NvbmFtZSgpKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxGdW5jdGlvbihjb25zdCBjaGFyKiBmdW5jdGlvbl9uYW1lIF9fdW51c2VkLCBsaW5rZXJfZnVuY3Rpb25fdCBmdW5jdGlvbikgewordm9pZCBzb2luZm86OmNhbGxfZnVuY3Rpb24oY29uc3QgY2hhciogZnVuY3Rpb25fbmFtZSBfX3VudXNlZCwgbGlua2VyX2Z1bmN0aW9uX3QgZnVuY3Rpb24pIHsKICAgaWYgKGZ1bmN0aW9uID09IG51bGxwdHIgfHwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGZ1bmN0aW9uKSA9PSBzdGF0aWNfY2FzdDx1aW50cHRyX3Q+KC0xKSkgewogICAgIHJldHVybjsKICAgfQogCi0gIFRSQUNFKCJbIENhbGxpbmcgJXMgQCAlcCBmb3IgJyVzJyBdIiwgZnVuY3Rpb25fbmFtZSwgZnVuY3Rpb24sIG5hbWUpOworICBUUkFDRSgiWyBDYWxsaW5nICVzIEAgJXAgZm9yICclcycgXSIsIGZ1bmN0aW9uX25hbWUsIGZ1bmN0aW9uLCBnZXRfc29uYW1lKCkpOwogICBmdW5jdGlvbigpOwotICBUUkFDRSgiWyBEb25lIGNhbGxpbmcgJXMgQCAlcCBmb3IgJyVzJyBdIiwgZnVuY3Rpb25fbmFtZSwgZnVuY3Rpb24sIG5hbWUpOwotCi0gIC8vIFRoZSBmdW5jdGlvbiBtYXkgaGF2ZSBjYWxsZWQgZGxvcGVuKDMpIG9yIGRsY2xvc2UoMyksIHNvIHdlIG5lZWQgdG8gZW5zdXJlIG91ciBkYXRhIHN0cnVjdHVyZXMKLSAgLy8gYXJlIHN0aWxsIHdyaXRhYmxlLiBUaGlzIGhhcHBlbnMgd2l0aCBvdXIgZGVidWcgbWFsbG9jIChzZWUgaHR0cDovL2IvNzk0MTcxNikuCi0gIHByb3RlY3RfZGF0YShQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKTsKKyAgVFJBQ0UoIlsgRG9uZSBjYWxsaW5nICVzIEAgJXAgZm9yICclcycgXSIsIGZ1bmN0aW9uX25hbWUsIGZ1bmN0aW9uLCBnZXRfc29uYW1lKCkpOwogfQogCi12b2lkIHNvaW5mbzo6Q2FsbFByZUluaXRDb25zdHJ1Y3RvcnMoKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9wcmVfaW5pdF9jb25zdHJ1Y3RvcnMoKSB7CiAgIC8vIERUX1BSRUlOSVRfQVJSQVkgZnVuY3Rpb25zIGFyZSBjYWxsZWQgYmVmb3JlIGFueSBvdGhlciBjb25zdHJ1Y3RvcnMgZm9yIGV4ZWN1dGFibGVzLAogICAvLyBidXQgaWdub3JlZCBpbiBhIHNoYXJlZCBsaWJyYXJ5LgotICBDYWxsQXJyYXkoIkRUX1BSRUlOSVRfQVJSQVkiLCBwcmVpbml0X2FycmF5LCBwcmVpbml0X2FycmF5X2NvdW50LCBmYWxzZSk7CisgIGNhbGxfYXJyYXkoIkRUX1BSRUlOSVRfQVJSQVkiLCBwcmVpbml0X2FycmF5XywgcHJlaW5pdF9hcnJheV9jb3VudF8sIGZhbHNlKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxDb25zdHJ1Y3RvcnMoKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9jb25zdHJ1Y3RvcnMoKSB7CiAgIGlmIChjb25zdHJ1Y3RvcnNfY2FsbGVkKSB7CiAgICAgcmV0dXJuOwogICB9CkBAIC0xNjcwLDM0ICsyMTQ4LDM0IEBACiAgIC8vICAgIG91dCBhYm92ZSwgdGhlIGxpYmMgY29uc3RydWN0b3Igd2lsbCBiZSBjYWxsZWQgYWdhaW4gKHJlY3Vyc2l2ZWx5ISkuCiAgIGNvbnN0cnVjdG9yc19jYWxsZWQgPSB0cnVlOwogCi0gIGlmICgoZmxhZ3MgJiBGTEFHX0VYRSkgPT0gMCAmJiBwcmVpbml0X2FycmF5ICE9IG51bGxwdHIpIHsKKyAgaWYgKCFpc19tYWluX2V4ZWN1dGFibGUoKSAmJiBwcmVpbml0X2FycmF5XyAhPSBudWxscHRyKSB7CiAgICAgLy8gVGhlIEdOVSBkeW5hbWljIGxpbmtlciBzaWxlbnRseSBpZ25vcmVzIHRoZXNlLCBidXQgd2Ugd2FybiB0aGUgZGV2ZWxvcGVyLgogICAgIFBSSU5UKCJcIiVzXCI6IGlnbm9yaW5nICV6ZC1lbnRyeSBEVF9QUkVJTklUX0FSUkFZIGluIHNoYXJlZCBsaWJyYXJ5ISIsCi0gICAgICAgICAgbmFtZSwgcHJlaW5pdF9hcnJheV9jb3VudCk7CisgICAgICAgICAgZ2V0X3NvbmFtZSgpLCBwcmVpbml0X2FycmF5X2NvdW50Xyk7CiAgIH0KIAogICBnZXRfY2hpbGRyZW4oKS5mb3JfZWFjaChbXSAoc29pbmZvKiBzaSkgewotICAgIHNpLT5DYWxsQ29uc3RydWN0b3JzKCk7CisgICAgc2ktPmNhbGxfY29uc3RydWN0b3JzKCk7CiAgIH0pOwogCi0gIFRSQUNFKCJcIiVzXCI6IGNhbGxpbmcgY29uc3RydWN0b3JzIiwgbmFtZSk7CisgIFRSQUNFKCJcIiVzXCI6IGNhbGxpbmcgY29uc3RydWN0b3JzIiwgZ2V0X3NvbmFtZSgpKTsKIAogICAvLyBEVF9JTklUIHNob3VsZCBiZSBjYWxsZWQgYmVmb3JlIERUX0lOSVRfQVJSQVkgaWYgYm90aCBhcmUgcHJlc2VudC4KLSAgQ2FsbEZ1bmN0aW9uKCJEVF9JTklUIiwgaW5pdF9mdW5jKTsKLSAgQ2FsbEFycmF5KCJEVF9JTklUX0FSUkFZIiwgaW5pdF9hcnJheSwgaW5pdF9hcnJheV9jb3VudCwgZmFsc2UpOworICBjYWxsX2Z1bmN0aW9uKCJEVF9JTklUIiwgaW5pdF9mdW5jXyk7CisgIGNhbGxfYXJyYXkoIkRUX0lOSVRfQVJSQVkiLCBpbml0X2FycmF5XywgaW5pdF9hcnJheV9jb3VudF8sIGZhbHNlKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxEZXN0cnVjdG9ycygpIHsKK3ZvaWQgc29pbmZvOjpjYWxsX2Rlc3RydWN0b3JzKCkgewogICBpZiAoIWNvbnN0cnVjdG9yc19jYWxsZWQpIHsKICAgICByZXR1cm47CiAgIH0KLSAgVFJBQ0UoIlwiJXNcIjogY2FsbGluZyBkZXN0cnVjdG9ycyIsIG5hbWUpOworICBUUkFDRSgiXCIlc1wiOiBjYWxsaW5nIGRlc3RydWN0b3JzIiwgZ2V0X3NvbmFtZSgpKTsKIAogICAvLyBEVF9GSU5JX0FSUkFZIG11c3QgYmUgcGFyc2VkIGluIHJldmVyc2Ugb3JkZXIuCi0gIENhbGxBcnJheSgiRFRfRklOSV9BUlJBWSIsIGZpbmlfYXJyYXksIGZpbmlfYXJyYXlfY291bnQsIHRydWUpOworICBjYWxsX2FycmF5KCJEVF9GSU5JX0FSUkFZIiwgZmluaV9hcnJheV8sIGZpbmlfYXJyYXlfY291bnRfLCB0cnVlKTsKIAogICAvLyBEVF9GSU5JIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgRFRfRklOSV9BUlJBWSBpZiBib3RoIGFyZSBwcmVzZW50LgotICBDYWxsRnVuY3Rpb24oIkRUX0ZJTkkiLCBmaW5pX2Z1bmMpOworICBjYWxsX2Z1bmN0aW9uKCJEVF9GSU5JIiwgZmluaV9mdW5jXyk7CiAKICAgLy8gVGhpcyBpcyBuZWVkZWQgb24gc2Vjb25kIGNhbGwgdG8gZGxvcGVuCiAgIC8vIGFmdGVyIGxpYnJhcnkgaGFzIGJlZW4gdW5sb2FkZWQgd2l0aCBSVExEX05PREVMRVRFCkBAIC0xNzA2LDggKzIxODQsOCBAQAogCiB2b2lkIHNvaW5mbzo6YWRkX2NoaWxkKHNvaW5mbyogY2hpbGQpIHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgewotICAgIGNoaWxkLT5wYXJlbnRzLnB1c2hfYmFjayh0aGlzKTsKLSAgICB0aGlzLT5jaGlsZHJlbi5wdXNoX2JhY2soY2hpbGQpOworICAgIGNoaWxkLT5wYXJlbnRzXy5wdXNoX2JhY2sodGhpcyk7CisgICAgdGhpcy0+Y2hpbGRyZW5fLnB1c2hfYmFjayhjaGlsZCk7CiAgIH0KIH0KIApAQCAtMTcxNyw2OCArMjE5NSwxMzAgQEAKICAgfQogCiAgIC8vIDEuIFVudGllIGNvbm5lY3RlZCBzb2luZm9zIGZyb20gJ3RoaXMnLgotICBjaGlsZHJlbi5mb3JfZWFjaChbJl0gKHNvaW5mbyogY2hpbGQpIHsKLSAgICBjaGlsZC0+cGFyZW50cy5yZW1vdmVfaWYoWyZdIChjb25zdCBzb2luZm8qIHBhcmVudCkgeworICBjaGlsZHJlbl8uZm9yX2VhY2goWyZdIChzb2luZm8qIGNoaWxkKSB7CisgICAgY2hpbGQtPnBhcmVudHNfLnJlbW92ZV9pZihbJl0gKGNvbnN0IHNvaW5mbyogcGFyZW50KSB7CiAgICAgICByZXR1cm4gcGFyZW50ID09IHRoaXM7CiAgICAgfSk7CiAgIH0pOwogCi0gIHBhcmVudHMuZm9yX2VhY2goWyZdIChzb2luZm8qIHBhcmVudCkgewotICAgIHBhcmVudC0+Y2hpbGRyZW4ucmVtb3ZlX2lmKFsmXSAoY29uc3Qgc29pbmZvKiBjaGlsZCkgeworICBwYXJlbnRzXy5mb3JfZWFjaChbJl0gKHNvaW5mbyogcGFyZW50KSB7CisgICAgcGFyZW50LT5jaGlsZHJlbl8ucmVtb3ZlX2lmKFsmXSAoY29uc3Qgc29pbmZvKiBjaGlsZCkgewogICAgICAgcmV0dXJuIGNoaWxkID09IHRoaXM7CiAgICAgfSk7CiAgIH0pOwogCiAgIC8vIDIuIE9uY2UgZXZlcnl0aGluZyB1bnRpZWQgLSBjbGVhciBsb2NhbCBsaXN0cy4KLSAgcGFyZW50cy5jbGVhcigpOwotICBjaGlsZHJlbi5jbGVhcigpOworICBwYXJlbnRzXy5jbGVhcigpOworICBjaGlsZHJlbl8uY2xlYXIoKTsKIH0KIAotZGV2X3Qgc29pbmZvOjpnZXRfc3RfZGV2KCkgeworZGV2X3Qgc29pbmZvOjpnZXRfc3RfZGV2KCkgY29uc3QgewogICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7Ci0gICAgcmV0dXJuIHN0X2RldjsKKyAgICByZXR1cm4gc3RfZGV2XzsKICAgfQogCiAgIHJldHVybiAwOwogfTsKIAotaW5vX3Qgc29pbmZvOjpnZXRfc3RfaW5vKCkgeworaW5vX3Qgc29pbmZvOjpnZXRfc3RfaW5vKCkgY29uc3QgewogICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7Ci0gICAgcmV0dXJuIHN0X2lubzsKKyAgICByZXR1cm4gc3RfaW5vXzsKICAgfQogCiAgIHJldHVybiAwOwogfQogCi1vZmY2NF90IHNvaW5mbzo6Z2V0X2ZpbGVfb2Zmc2V0KCkgeworb2ZmNjRfdCBzb2luZm86OmdldF9maWxlX29mZnNldCgpIGNvbnN0IHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigxKSkgewotICAgIHJldHVybiBmaWxlX29mZnNldDsKKyAgICByZXR1cm4gZmlsZV9vZmZzZXRfOwogICB9CiAKICAgcmV0dXJuIDA7CiB9CiAKK3VpbnQzMl90IHNvaW5mbzo6Z2V0X3J0bGRfZmxhZ3MoKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMSkpIHsKKyAgICByZXR1cm4gcnRsZF9mbGFnc187CisgIH0KKworICByZXR1cm4gMDsKK30KKwordWludDMyX3Qgc29pbmZvOjpnZXRfZHRfZmxhZ3NfMSgpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigxKSkgeworICAgIHJldHVybiBkdF9mbGFnc18xXzsKKyAgfQorCisgIHJldHVybiAwOworfQorCit2b2lkIHNvaW5mbzo6c2V0X2R0X2ZsYWdzXzEodWludDMyX3QgZHRfZmxhZ3NfMSkgeworICBpZiAoaGFzX21pbl92ZXJzaW9uKDEpKSB7CisgICAgaWYgKChkdF9mbGFnc18xICYgREZfMV9HTE9CQUwpICE9IDApIHsKKyAgICAgIHJ0bGRfZmxhZ3NfIHw9IFJUTERfR0xPQkFMOworICAgIH0KKworICAgIGlmICgoZHRfZmxhZ3NfMSAmIERGXzFfTk9ERUxFVEUpICE9IDApIHsKKyAgICAgIHJ0bGRfZmxhZ3NfIHw9IFJUTERfTk9ERUxFVEU7CisgICAgfQorCisgICAgZHRfZmxhZ3NfMV8gPSBkdF9mbGFnc18xOworICB9Cit9CisKK2NvbnN0IGNoYXIqIHNvaW5mbzo6Z2V0X3JlYWxwYXRoKCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiByZWFscGF0aF8uY19zdHIoKTsKKyAgfSBlbHNlIHsKKyAgICByZXR1cm4gb2xkX25hbWVfOworICB9CisjZWxzZQorICByZXR1cm4gcmVhbHBhdGhfLmNfc3RyKCk7CisjZW5kaWYKK30KKworY29uc3QgY2hhciogc29pbmZvOjpnZXRfc29uYW1lKCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiBzb25hbWVfOworICB9IGVsc2UgeworICAgIHJldHVybiBvbGRfbmFtZV87CisgIH0KKyNlbHNlCisgIHJldHVybiBzb25hbWVfOworI2VuZGlmCit9CisKIC8vIFRoaXMgaXMgYSByZXR1cm4gb24gZ2V0X2NoaWxkcmVuKCkvZ2V0X3BhcmVudHMoKSBpZgogLy8gJ3RoaXMtPmZsYWdzJyBkb2VzIG5vdCBoYXZlIEZMQUdfTkVXX1NPSU5GTyBzZXQuCiBzdGF0aWMgc29pbmZvOjpzb2luZm9fbGlzdF90IGdfZW1wdHlfbGlzdDsKIAogc29pbmZvOjpzb2luZm9fbGlzdF90JiBzb2luZm86OmdldF9jaGlsZHJlbigpIHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgewotICAgIHJldHVybiB0aGlzLT5jaGlsZHJlbjsKKyAgICByZXR1cm4gY2hpbGRyZW5fOworICB9CisKKyAgcmV0dXJuIGdfZW1wdHlfbGlzdDsKK30KKworY29uc3Qgc29pbmZvOjpzb2luZm9fbGlzdF90JiBzb2luZm86OmdldF9jaGlsZHJlbigpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgeworICAgIHJldHVybiBjaGlsZHJlbl87CiAgIH0KIAogICByZXR1cm4gZ19lbXB0eV9saXN0OwogfQogCiBzb2luZm86OnNvaW5mb19saXN0X3QmIHNvaW5mbzo6Z2V0X3BhcmVudHMoKSB7Ci0gIGlmICgodGhpcy0+ZmxhZ3MgJiBGTEFHX05FV19TT0lORk8pID09IDApIHsKLSAgICByZXR1cm4gZ19lbXB0eV9saXN0OworICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7CisgICAgcmV0dXJuIHBhcmVudHNfOwogICB9CiAKLSAgcmV0dXJuIHRoaXMtPnBhcmVudHM7CisgIHJldHVybiBnX2VtcHR5X2xpc3Q7CiB9CiAKLUVsZlcoQWRkcikgc29pbmZvOjpyZXNvbHZlX3N5bWJvbF9hZGRyZXNzKEVsZlcoU3ltKSogcykgeworRWxmVyhBZGRyKSBzb2luZm86OnJlc29sdmVfc3ltYm9sX2FkZHJlc3MoY29uc3QgRWxmVyhTeW0pKiBzKSBjb25zdCB7CiAgIGlmIChFTEZfU1RfVFlQRShzLT5zdF9pbmZvKSA9PSBTVFRfR05VX0lGVU5DKSB7CiAgICAgcmV0dXJuIGNhbGxfaWZ1bmNfcmVzb2x2ZXIocy0+c3RfdmFsdWUgKyBsb2FkX2JpYXMpOwogICB9CkBAIC0xNzg3LDExICsyMzI3LDUyIEBACiB9CiAKIGNvbnN0IGNoYXIqIHNvaW5mbzo6Z2V0X3N0cmluZyhFbGZXKFdvcmQpIGluZGV4KSBjb25zdCB7Ci0gIGlmIChoYXNfbWluX3ZlcnNpb24oMSkgJiYgKGluZGV4ID49IHN0cnRhYl9zaXplKSkgewotICAgIF9fbGliY19mYXRhbCgiJXM6IHN0cnRhYiBvdXQgb2YgYm91bmRzIGVycm9yOyBTVFJTWj0lemQsIG5hbWU9JWQiLCBuYW1lLCBzdHJ0YWJfc2l6ZSwgaW5kZXgpOworICBpZiAoaGFzX21pbl92ZXJzaW9uKDEpICYmIChpbmRleCA+PSBzdHJ0YWJfc2l6ZV8pKSB7CisgICAgX19saWJjX2ZhdGFsKCIlczogc3RydGFiIG91dCBvZiBib3VuZHMgZXJyb3I7IFNUUlNaPSV6ZCwgbmFtZT0lZCIsCisgICAgICAgIGdldF9zb25hbWUoKSwgc3RydGFiX3NpemVfLCBpbmRleCk7CiAgIH0KIAotICByZXR1cm4gc3RydGFiICsgaW5kZXg7CisgIHJldHVybiBzdHJ0YWJfICsgaW5kZXg7Cit9CisKK2Jvb2wgc29pbmZvOjppc19nbnVfaGFzaCgpIGNvbnN0IHsKKyAgcmV0dXJuIChmbGFnc18gJiBGTEFHX0dOVV9IQVNIKSAhPSAwOworfQorCitib29sIHNvaW5mbzo6Y2FuX3VubG9hZCgpIGNvbnN0IHsKKyAgcmV0dXJuIChnZXRfcnRsZF9mbGFncygpICYgKFJUTERfTk9ERUxFVEUgfCBSVExEX0dMT0JBTCkpID09IDA7Cit9CisKK2Jvb2wgc29pbmZvOjppc19saW5rZWQoKSBjb25zdCB7CisgIHJldHVybiAoZmxhZ3NfICYgRkxBR19MSU5LRUQpICE9IDA7Cit9CisKK2Jvb2wgc29pbmZvOjppc19tYWluX2V4ZWN1dGFibGUoKSBjb25zdCB7CisgIHJldHVybiAoZmxhZ3NfICYgRkxBR19FWEUpICE9IDA7Cit9CisKK3ZvaWQgc29pbmZvOjpzZXRfbGlua2VkKCkgeworICBmbGFnc18gfD0gRkxBR19MSU5LRUQ7Cit9CisKK3ZvaWQgc29pbmZvOjpzZXRfbGlua2VyX2ZsYWcoKSB7CisgIGZsYWdzXyB8PSBGTEFHX0xJTktFUjsKK30KKwordm9pZCBzb2luZm86OnNldF9tYWluX2V4ZWN1dGFibGUoKSB7CisgIGZsYWdzXyB8PSBGTEFHX0VYRTsKK30KKwordm9pZCBzb2luZm86OmluY3JlbWVudF9yZWZfY291bnQoKSB7CisgIGxvY2FsX2dyb3VwX3Jvb3RfLT5yZWZfY291bnRfKys7Cit9CisKK3NpemVfdCBzb2luZm86OmRlY3JlbWVudF9yZWZfY291bnQoKSB7CisgIHJldHVybiAtLWxvY2FsX2dyb3VwX3Jvb3RfLT5yZWZfY291bnRfOworfQorCitzb2luZm8qIHNvaW5mbzo6Z2V0X2xvY2FsX2dyb3VwX3Jvb3QoKSBjb25zdCB7CisgIHJldHVybiBsb2NhbF9ncm91cF9yb290XzsKIH0KIAogLyogRm9yY2UgYW55IG9mIHRoZSBjbG9zZWQgc3RkaW4sIHN0ZG91dCBhbmQgc3RkZXJyIHRvIGJlIGFzc29jaWF0ZWQgd2l0aApAQCAtMTg1NSwyMSArMjQzNiwyMSBAQAogICByZXR1cm4gcmV0dXJuX3ZhbHVlOwogfQogCi1ib29sIHNvaW5mbzo6UHJlbGlua0ltYWdlKCkgeworYm9vbCBzb2luZm86OnByZWxpbmtfaW1hZ2UoKSB7CiAgIC8qIEV4dHJhY3QgZHluYW1pYyBzZWN0aW9uICovCiAgIEVsZlcoV29yZCkgZHluYW1pY19mbGFncyA9IDA7CiAgIHBoZHJfdGFibGVfZ2V0X2R5bmFtaWNfc2VjdGlvbihwaGRyLCBwaG51bSwgbG9hZF9iaWFzLCAmZHluYW1pYywgJmR5bmFtaWNfZmxhZ3MpOwogCiAgIC8qIFdlIGNhbid0IGxvZyBhbnl0aGluZyB1bnRpbCB0aGUgbGlua2VyIGlzIHJlbG9jYXRlZCAqLwotICBib29sIHJlbG9jYXRpbmdfbGlua2VyID0gKGZsYWdzICYgRkxBR19MSU5LRVIpICE9IDA7CisgIGJvb2wgcmVsb2NhdGluZ19saW5rZXIgPSAoZmxhZ3NfICYgRkxBR19MSU5LRVIpICE9IDA7CiAgIGlmICghcmVsb2NhdGluZ19saW5rZXIpIHsKLSAgICBJTkZPKCJbIGxpbmtpbmcgJXMgXSIsIG5hbWUpOwotICAgIERFQlVHKCJzaS0+YmFzZSA9ICVwIHNpLT5mbGFncyA9IDB4JTA4eCIsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBmbGFncyk7CisgICAgSU5GTygiWyBsaW5raW5nICVzIF0iLCBnZXRfc29uYW1lKCkpOworICAgIERFQlVHKCJzaS0+YmFzZSA9ICVwIHNpLT5mbGFncyA9IDB4JTA4eCIsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBmbGFnc18pOwogICB9CiAKICAgaWYgKGR5bmFtaWMgPT0gbnVsbHB0cikgewogICAgIGlmICghcmVsb2NhdGluZ19saW5rZXIpIHsKLSAgICAgIERMX0VSUigibWlzc2luZyBQVF9EWU5BTUlDIGluIFwiJXNcIiIsIG5hbWUpOworICAgICAgRExfRVJSKCJtaXNzaW5nIFBUX0RZTkFNSUMgaW4gXCIlc1wiIiwgZ2V0X3NvbmFtZSgpKTsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogICB9IGVsc2UgewpAQCAtMTg4NCwzOCArMjQ2NSw2NCBAQAogI2VuZGlmCiAKICAgLy8gRXh0cmFjdCB1c2VmdWwgaW5mb3JtYXRpb24gZnJvbSBkeW5hbWljIHNlY3Rpb24uCisgIC8vIE5vdGUgdGhhdDogIkV4Y2VwdCBmb3IgdGhlIERUX05VTEwgZWxlbWVudCBhdCB0aGUgZW5kIG9mIHRoZSBhcnJheSwKKyAgLy8gYW5kIHRoZSByZWxhdGl2ZSBvcmRlciBvZiBEVF9ORUVERUQgZWxlbWVudHMsIGVudHJpZXMgbWF5IGFwcGVhciBpbiBhbnkgb3JkZXIuIgorICAvLworICAvLyBzb3VyY2U6IGh0dHA6Ly93d3cuc2NvLmNvbS9kZXZlbG9wZXJzL2dhYmkvMTk5OC0wNC0yOS9jaDUuZHluYW1pYy5odG1sCiAgIHVpbnQzMl90IG5lZWRlZF9jb3VudCA9IDA7CiAgIGZvciAoRWxmVyhEeW4pKiBkID0gZHluYW1pYzsgZC0+ZF90YWcgIT0gRFRfTlVMTDsgKytkKSB7CiAgICAgREVCVUcoImQgPSAlcCwgZFswXSh0YWcpID0gJXAgZFsxXSh2YWwpID0gJXAiLAogICAgICAgICAgIGQsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGQtPmRfdGFnKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZC0+ZF91bi5kX3ZhbCkpOwogICAgIHN3aXRjaCAoZC0+ZF90YWcpIHsKICAgICAgIGNhc2UgRFRfU09OQU1FOgotICAgICAgICAvLyBUT0RPOiBnbGliYyBkeW5hbWljIGxpbmtlciB1c2VzIHRoaXMgbmFtZSBmb3IKLSAgICAgICAgLy8gaW5pdGlhbCBsaWJyYXJ5IGxvb2t1cDsgY29uc2lkZXIgZG9pbmcgdGhlIHNhbWUgaGVyZS4KKyAgICAgICAgLy8gdGhpcyBpcyBwYXJzZWQgYWZ0ZXIgd2UgaGF2ZSBzdHJ0YWIgaW5pdGlhbGl6ZWQgKHNlZSBiZWxvdykuCiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX0hBU0g6Ci0gICAgICAgIG5idWNrZXQgPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cilbMF07Ci0gICAgICAgIG5jaGFpbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKVsxXTsKLSAgICAgICAgYnVja2V0ID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIgKyA4KTsKLSAgICAgICAgY2hhaW4gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0ciArIDggKyBuYnVja2V0ICogNCk7CisgICAgICAgIG5idWNrZXRfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzBdOworICAgICAgICBuY2hhaW5fID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzFdOworICAgICAgICBidWNrZXRfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIgKyA4KTsKKyAgICAgICAgY2hhaW5fID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIgKyA4ICsgbmJ1Y2tldF8gKiA0KTsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfR05VX0hBU0g6CisgICAgICAgIGdudV9uYnVja2V0XyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKVswXTsKKyAgICAgICAgLy8gc2tpcCBzeW1uZHgKKyAgICAgICAgZ251X21hc2t3b3Jkc18gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cilbMl07CisgICAgICAgIGdudV9zaGlmdDJfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzNdOworCisgICAgICAgIGdudV9ibG9vbV9maWx0ZXJfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0ciArIDE2KTsKKyAgICAgICAgZ251X2J1Y2tldF8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4oZ251X2Jsb29tX2ZpbHRlcl8gKyBnbnVfbWFza3dvcmRzXyk7CisgICAgICAgIC8vIGFtZW5kIGNoYWluIGZvciBzeW1uZHggPSBoZWFkZXJbMV0KKyAgICAgICAgZ251X2NoYWluXyA9IGdudV9idWNrZXRfICsgZ251X25idWNrZXRfIC0KKyAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKVsxXTsKKworICAgICAgICBpZiAoIXBvd2Vyb2YyKGdudV9tYXNrd29yZHNfKSkgeworICAgICAgICAgIERMX0VSUigiaW52YWxpZCBtYXNrd29yZHMgZm9yIGdudV9oYXNoID0gMHgleCwgaW4gXCIlc1wiIGV4cGVjdGluZyBwb3dlciB0byB0d28iLAorICAgICAgICAgICAgICBnbnVfbWFza3dvcmRzXywgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAgICAgICAtLWdudV9tYXNrd29yZHNfOworCisgICAgICAgIGZsYWdzXyB8PSBGTEFHX0dOVV9IQVNIOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9TVFJUQUI6Ci0gICAgICAgIHN0cnRhYiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBzdHJ0YWJfID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1NUUlNaOgotICAgICAgICBzdHJ0YWJfc2l6ZSA9IGQtPmRfdW4uZF92YWw7CisgICAgICAgIHN0cnRhYl9zaXplXyA9IGQtPmRfdW4uZF92YWw7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1NZTVRBQjoKLSAgICAgICAgc3ltdGFiID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFN5bSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgc3ltdGFiXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhTeW0pKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1NZTUVOVDoKICAgICAgICAgaWYgKGQtPmRfdW4uZF92YWwgIT0gc2l6ZW9mKEVsZlcoU3ltKSkpIHsKLSAgICAgICAgICBETF9FUlIoImludmFsaWQgRFRfU1lNRU5UOiAlemQiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KGQtPmRfdW4uZF92YWwpKTsKKyAgICAgICAgICBETF9FUlIoImludmFsaWQgRFRfU1lNRU5UOiAlemQgaW4gXCIlc1wiIiwKKyAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihkLT5kX3VuLmRfdmFsKSwgZ2V0X3JlYWxwYXRoKCkpOwogICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTE5MjMsMTIgKzI1MzAsMTIgQEAKICAgICAgIGNhc2UgRFRfUExUUkVMOgogI2lmIGRlZmluZWQoVVNFX1JFTEEpCiAgICAgICAgIGlmIChkLT5kX3VuLmRfdmFsICE9IERUX1JFTEEpIHsKLSAgICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1BMVFJFTCBpbiBcIiVzXCI7IGV4cGVjdGVkIERUX1JFTEEiLCBuYW1lKTsKKyAgICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1BMVFJFTCBpbiBcIiVzXCI7IGV4cGVjdGVkIERUX1JFTEEiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAjZWxzZQogICAgICAgICBpZiAoZC0+ZF91bi5kX3ZhbCAhPSBEVF9SRUwpIHsKLSAgICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1BMVFJFTCBpbiBcIiVzXCI7IGV4cGVjdGVkIERUX1JFTCIsIG5hbWUpOworICAgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUExUUkVMIGluIFwiJXNcIjsgZXhwZWN0ZWQgRFRfUkVMIiwgZ2V0X3JlYWxwYXRoKCkpOwogICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogI2VuZGlmCkBAIC0xOTM2LDI0ICsyNTQzLDI0IEBACiAKICAgICAgIGNhc2UgRFRfSk1QUkVMOgogI2lmIGRlZmluZWQoVVNFX1JFTEEpCi0gICAgICAgIHBsdF9yZWxhID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbGEpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIHBsdF9yZWxhXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhSZWxhKSo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOwogI2Vsc2UKLSAgICAgICAgcGx0X3JlbCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhSZWwpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIHBsdF9yZWxfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbCkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKICNlbmRpZgogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9QTFRSRUxTWjoKICNpZiBkZWZpbmVkKFVTRV9SRUxBKQotICAgICAgICBwbHRfcmVsYV9jb3VudCA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWxhKSk7CisgICAgICAgIHBsdF9yZWxhX2NvdW50XyA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWxhKSk7CiAjZWxzZQotICAgICAgICBwbHRfcmVsX2NvdW50ID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbCkpOworICAgICAgICBwbHRfcmVsX2NvdW50XyA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWwpKTsKICNlbmRpZgogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9QTFRHT1Q6CiAjaWYgZGVmaW5lZChfX21pcHNfXykKICAgICAgICAgLy8gVXNlZCBieSBtaXBzIGFuZCBtaXBzNjQuCi0gICAgICAgIHBsdF9nb3QgPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIHBsdF9nb3RfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKio+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOwogI2VuZGlmCiAgICAgICAgIC8vIElnbm9yZSBmb3Igb3RoZXIgcGxhdGZvcm1zLi4uIChiZWNhdXNlIFJUTERfTEFaWSBpcyBub3Qgc3VwcG9ydGVkKQogICAgICAgICBicmVhazsKQEAgLTE5NjksMTcgKzI1NzYsMzMgQEAKICAgICAgICAgaWYgKChkeW5hbWljX2ZsYWdzICYgUEZfVykgIT0gMCkgewogICAgICAgICAgIGQtPmRfdW4uZF92YWwgPSByZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oJl9yX2RlYnVnKTsKICAgICAgICAgfQotICAgICAgICBicmVhazsKICNlbmRpZgorICAgICAgICBicmVhazsKICNpZiBkZWZpbmVkKFVTRV9SRUxBKQogICAgICAgY2FzZSBEVF9SRUxBOgotICAgICAgICByZWxhID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbGEpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIHJlbGFfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbGEpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1JFTEFTWjoKLSAgICAgICAgcmVsYV9jb3VudCA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWxhKSk7CisgICAgICAgIHJlbGFfY291bnRfID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbGEpKTsKICAgICAgICAgYnJlYWs7CiAKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUxBOgorICAgICAgICBhbmRyb2lkX3JlbG9jc18gPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUxBU1o6CisgICAgICAgIGFuZHJvaWRfcmVsb2NzX3NpemVfID0gZC0+ZF91bi5kX3ZhbDsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUw6CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfQU5EUk9JRF9SRUwgaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUxTWjoKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9BTkRST0lEX1JFTFNaIGluIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgICBjYXNlIERUX1JFTEFFTlQ6CiAgICAgICAgIGlmIChkLT5kX3VuLmRfdmFsICE9IHNpemVvZihFbGZXKFJlbGEpKSkgewogICAgICAgICAgIERMX0VSUigiaW52YWxpZCBEVF9SRUxBRU5UOiAlemQiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KGQtPmRfdW4uZF92YWwpKTsKQEAgLTE5OTIsMTkgKzI2MTUsMjAgQEAKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUkVMOgotICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1JFTCBpbiBcIiVzXCIiLCBuYW1lKTsKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9SRUwgaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAgIGNhc2UgRFRfUkVMU1o6Ci0gICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMU1ogaW4gXCIlc1wiIiwgbmFtZSk7CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMU1ogaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOwogICAgICAgICByZXR1cm4gZmFsc2U7CisKICNlbHNlCiAgICAgICBjYXNlIERUX1JFTDoKLSAgICAgICAgcmVsID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbCkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgcmVsXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhSZWwpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1JFTFNaOgotICAgICAgICByZWxfY291bnQgPSBkLT5kX3VuLmRfdmFsIC8gc2l6ZW9mKEVsZlcoUmVsKSk7CisgICAgICAgIHJlbF9jb3VudF8gPSBkLT5kX3VuLmRfdmFsIC8gc2l6ZW9mKEVsZlcoUmVsKSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1JFTEVOVDoKQEAgLTIwMTQsNiArMjYzOCwyMiBAQAogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogCisgICAgICBjYXNlIERUX0FORFJPSURfUkVMOgorICAgICAgICBhbmRyb2lkX3JlbG9jc18gPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUxTWjoKKyAgICAgICAgYW5kcm9pZF9yZWxvY3Nfc2l6ZV8gPSBkLT5kX3VuLmRfdmFsOworICAgICAgICBicmVhazsKKworICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTEE6CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfQU5EUk9JRF9SRUxBIGluIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICBjYXNlIERUX0FORFJPSURfUkVMQVNaOgorICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX0FORFJPSURfUkVMQVNaIGluIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgICAvLyAiSW5kaWNhdGVzIHRoYXQgYWxsIFJFTEFUSVZFIHJlbG9jYXRpb25zIGhhdmUgYmVlbiBjb25jYXRlbmF0ZWQgdG9nZXRoZXIsCiAgICAgICAvLyBhbmQgc3BlY2lmaWVzIHRoZSBSRUxBVElWRSByZWxvY2F0aW9uIGNvdW50LiIKICAgICAgIC8vCkBAIC0yMDIxLDUwICsyNjYxLDU2IEBACiAgICAgICAvLyBOb3QgY3VycmVudGx5IHVzZWQgYnkgYmlvbmljIGxpbmtlciAtIGlnbm9yZWQuCiAgICAgICBjYXNlIERUX1JFTENPVU5UOgogICAgICAgICBicmVhazsKKwogICAgICAgY2FzZSBEVF9SRUxBOgotICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1JFTEEgaW4gXCIlc1wiIiwgbmFtZSk7CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMQSBpbiBcIiVzXCIiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgY2FzZSBEVF9SRUxBU1o6CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMQVNaIGluIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAjZW5kaWYKICAgICAgIGNhc2UgRFRfSU5JVDoKLSAgICAgICAgaW5pdF9mdW5jID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdD4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7Ci0gICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX0lOSVQpIGZvdW5kIGF0ICVwIiwgbmFtZSwgaW5pdF9mdW5jKTsKKyAgICAgICAgaW5pdF9mdW5jXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8bGlua2VyX2Z1bmN0aW9uX3Q+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBERUJVRygiJXMgY29uc3RydWN0b3JzIChEVF9JTklUKSBmb3VuZCBhdCAlcCIsIGdldF9yZWFscGF0aCgpLCBpbml0X2Z1bmNfKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfRklOSToKLSAgICAgICAgZmluaV9mdW5jID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdD4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7Ci0gICAgICAgIERFQlVHKCIlcyBkZXN0cnVjdG9ycyAoRFRfRklOSSkgZm91bmQgYXQgJXAiLCBuYW1lLCBmaW5pX2Z1bmMpOworICAgICAgICBmaW5pX2Z1bmNfID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdD4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIERFQlVHKCIlcyBkZXN0cnVjdG9ycyAoRFRfRklOSSkgZm91bmQgYXQgJXAiLCBnZXRfcmVhbHBhdGgoKSwgZmluaV9mdW5jXyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX0lOSVRfQVJSQVk6Ci0gICAgICAgIGluaXRfYXJyYXkgPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7Ci0gICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX0lOSVRfQVJSQVkpIGZvdW5kIGF0ICVwIiwgbmFtZSwgaW5pdF9hcnJheSk7CisgICAgICAgIGluaXRfYXJyYXlfID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBERUJVRygiJXMgY29uc3RydWN0b3JzIChEVF9JTklUX0FSUkFZKSBmb3VuZCBhdCAlcCIsIGdldF9yZWFscGF0aCgpLCBpbml0X2FycmF5Xyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX0lOSVRfQVJSQVlTWjoKLSAgICAgICAgaW5pdF9hcnJheV9jb3VudCA9ICgodW5zaWduZWQpZC0+ZF91bi5kX3ZhbCkgLyBzaXplb2YoRWxmVyhBZGRyKSk7CisgICAgICAgIGluaXRfYXJyYXlfY291bnRfID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGQtPmRfdW4uZF92YWwpIC8gc2l6ZW9mKEVsZlcoQWRkcikpOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9GSU5JX0FSUkFZOgotICAgICAgICBmaW5pX2FycmF5ID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOwotICAgICAgICBERUJVRygiJXMgZGVzdHJ1Y3RvcnMgKERUX0ZJTklfQVJSQVkpIGZvdW5kIGF0ICVwIiwgbmFtZSwgZmluaV9hcnJheSk7CisgICAgICAgIGZpbmlfYXJyYXlfID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBERUJVRygiJXMgZGVzdHJ1Y3RvcnMgKERUX0ZJTklfQVJSQVkpIGZvdW5kIGF0ICVwIiwgZ2V0X3JlYWxwYXRoKCksIGZpbmlfYXJyYXlfKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfRklOSV9BUlJBWVNaOgotICAgICAgICBmaW5pX2FycmF5X2NvdW50ID0gKCh1bnNpZ25lZClkLT5kX3VuLmRfdmFsKSAvIHNpemVvZihFbGZXKEFkZHIpKTsKKyAgICAgICAgZmluaV9hcnJheV9jb3VudF8gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZC0+ZF91bi5kX3ZhbCkgLyBzaXplb2YoRWxmVyhBZGRyKSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1BSRUlOSVRfQVJSQVk6Ci0gICAgICAgIHByZWluaXRfYXJyYXkgPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7Ci0gICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX1BSRUlOSVRfQVJSQVkpIGZvdW5kIGF0ICVwIiwgbmFtZSwgcHJlaW5pdF9hcnJheSk7CisgICAgICAgIHByZWluaXRfYXJyYXlfID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBERUJVRygiJXMgY29uc3RydWN0b3JzIChEVF9QUkVJTklUX0FSUkFZKSBmb3VuZCBhdCAlcCIsIGdldF9yZWFscGF0aCgpLCBwcmVpbml0X2FycmF5Xyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1BSRUlOSVRfQVJSQVlTWjoKLSAgICAgICAgcHJlaW5pdF9hcnJheV9jb3VudCA9ICgodW5zaWduZWQpZC0+ZF91bi5kX3ZhbCkgLyBzaXplb2YoRWxmVyhBZGRyKSk7CisgICAgICAgIHByZWluaXRfYXJyYXlfY291bnRfID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGQtPmRfdW4uZF92YWwpIC8gc2l6ZW9mKEVsZlcoQWRkcikpOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9URVhUUkVMOgogI2lmIGRlZmluZWQoX19MUDY0X18pCi0gICAgICAgIERMX0VSUigidGV4dCByZWxvY2F0aW9ucyAoRFRfVEVYVFJFTCkgZm91bmQgaW4gNjQtYml0IEVMRiBmaWxlIFwiJXNcIiIsIG5hbWUpOworICAgICAgICBETF9FUlIoInRleHQgcmVsb2NhdGlvbnMgKERUX1RFWFRSRUwpIGZvdW5kIGluIDY0LWJpdCBFTEYgZmlsZSBcIiVzXCIiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICNlbHNlCiAgICAgICAgIGhhc190ZXh0X3JlbG9jYXRpb25zID0gdHJ1ZTsKQEAgLTIwODIsNyArMjcyOCw3IEBACiAgICAgICBjYXNlIERUX0ZMQUdTOgogICAgICAgICBpZiAoZC0+ZF91bi5kX3ZhbCAmIERGX1RFWFRSRUwpIHsKICNpZiBkZWZpbmVkKF9fTFA2NF9fKQotICAgICAgICAgIERMX0VSUigidGV4dCByZWxvY2F0aW9ucyAoREZfVEVYVFJFTCkgZm91bmQgaW4gNjQtYml0IEVMRiBmaWxlIFwiJXNcIiIsIG5hbWUpOworICAgICAgICAgIERMX0VSUigidGV4dCByZWxvY2F0aW9ucyAoREZfVEVYVFJFTCkgZm91bmQgaW4gNjQtYml0IEVMRiBmaWxlIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAjZWxzZQogICAgICAgICAgIGhhc190ZXh0X3JlbG9jYXRpb25zID0gdHJ1ZTsKQEAgLTIwOTQsMTIgKzI3NDAsOSBAQAogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9GTEFHU18xOgotICAgICAgICBpZiAoKGQtPmRfdW4uZF92YWwgJiBERl8xX0dMT0JBTCkgIT0gMCkgewotICAgICAgICAgIHJ0bGRfZmxhZ3MgfD0gUlRMRF9HTE9CQUw7Ci0gICAgICAgIH0KLSAgICAgICAgLy8gVE9ETzogSW1wbGVtZW50IG90aGVyIGZsYWdzCisgICAgICAgIHNldF9kdF9mbGFnc18xKGQtPmRfdW4uZF92YWwpOwogCi0gICAgICAgIGlmICgoZC0+ZF91bi5kX3ZhbCAmIH4oREZfMV9OT1cgfCBERl8xX0dMT0JBTCkpICE9IDApIHsKKyAgICAgICAgaWYgKChkLT5kX3VuLmRfdmFsICYgflNVUFBPUlRFRF9EVF9GTEFHU18xKSAhPSAwKSB7CiAgICAgICAgICAgRExfV0FSTigiVW5zdXBwb3J0ZWQgZmxhZ3MgRFRfRkxBR1NfMT0lcCIsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGQtPmRfdW4uZF92YWwpKTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTIxMTEsNiArMjc1NCwxNCBAQAogICAgICAgICAgICpkcCA9ICZfcl9kZWJ1ZzsKICAgICAgICAgfQogICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgRFRfTUlQU19STERfTUFQMjoKKyAgICAgICAgLy8gU2V0IHRoZSBEVF9NSVBTX1JMRF9NQVAyIGVudHJ5IHRvIHRoZSBhZGRyZXNzIG9mIF9yX2RlYnVnIGZvciBHREIuCisgICAgICAgIHsKKyAgICAgICAgICByX2RlYnVnKiogZHAgPSByZWludGVycHJldF9jYXN0PHJfZGVidWcqKj4oCisgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKT4oZCkgKyBkLT5kX3VuLmRfdmFsKTsKKyAgICAgICAgICAqZHAgPSAmX3JfZGVidWc7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfTUlQU19STERfVkVSU0lPTjoKICAgICAgIGNhc2UgRFRfTUlQU19GTEFHUzoKQEAgLTIxMTksMTE3ICsyNzcwLDE3NSBAQAogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9NSVBTX1NZTVRBQk5POgotICAgICAgICBtaXBzX3N5bXRhYm5vID0gZC0+ZF91bi5kX3ZhbDsKKyAgICAgICAgbWlwc19zeW10YWJub18gPSBkLT5kX3VuLmRfdmFsOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9NSVBTX0xPQ0FMX0dPVE5POgotICAgICAgICBtaXBzX2xvY2FsX2dvdG5vID0gZC0+ZF91bi5kX3ZhbDsKKyAgICAgICAgbWlwc19sb2NhbF9nb3Rub18gPSBkLT5kX3VuLmRfdmFsOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9NSVBTX0dPVFNZTToKLSAgICAgICAgbWlwc19nb3RzeW0gPSBkLT5kX3VuLmRfdmFsOworICAgICAgICBtaXBzX2dvdHN5bV8gPSBkLT5kX3VuLmRfdmFsOwogICAgICAgICBicmVhazsKICNlbmRpZgogICAgICAgLy8gSWdub3JlZDogIkl0cyB1c2UgaGFzIGJlZW4gc3VwZXJzZWRlZCBieSB0aGUgREZfQklORF9OT1cgZmxhZyIKICAgICAgIGNhc2UgRFRfQklORF9OT1c6CiAgICAgICAgIGJyZWFrOwogCi0gICAgICAvLyBJZ25vcmU6IGJpb25pYyBkb2VzIG5vdCBzdXBwb3J0IHN5bWJvbCB2ZXJzaW9uaW5nLi4uCiAgICAgICBjYXNlIERUX1ZFUlNZTToKKyAgICAgICAgdmVyc3ltXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhWZXJzeW0pKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIGJyZWFrOworCiAgICAgICBjYXNlIERUX1ZFUkRFRjoKKyAgICAgICAgdmVyZGVmX3B0cl8gPSBsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyOworICAgICAgICBicmVhazsKICAgICAgIGNhc2UgRFRfVkVSREVGTlVNOgorICAgICAgICB2ZXJkZWZfY250XyA9IGQtPmRfdW4uZF92YWw7CisgICAgICAgIGJyZWFrOworCisgICAgICBjYXNlIERUX1ZFUk5FRUQ6CisgICAgICAgIHZlcm5lZWRfcHRyXyA9IGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHI7CisgICAgICAgIGJyZWFrOworCisgICAgICBjYXNlIERUX1ZFUk5FRUROVU06CisgICAgICAgIHZlcm5lZWRfY250XyA9IGQtPmRfdW4uZF92YWw7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBkZWZhdWx0OgogICAgICAgICBpZiAoIXJlbG9jYXRpbmdfbGlua2VyKSB7Ci0gICAgICAgICAgRExfV0FSTigiJXM6IHVudXNlZCBEVCBlbnRyeTogdHlwZSAlcCBhcmcgJXAiLCBuYW1lLAorICAgICAgICAgIERMX1dBUk4oIiVzOiB1bnVzZWQgRFQgZW50cnk6IHR5cGUgJXAgYXJnICVwIiwgZ2V0X3JlYWxwYXRoKCksCiAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGQtPmRfdGFnKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZC0+ZF91bi5kX3ZhbCkpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgfQogCisgIC8vIHNlY29uZCBwYXNzIC0gcGFyc2UgZW50cmllcyByZWx5aW5nIG9uIHN0cnRhYgorICBmb3IgKEVsZlcoRHluKSogZCA9IGR5bmFtaWM7IGQtPmRfdGFnICE9IERUX05VTEw7ICsrZCkgeworICAgIGlmIChkLT5kX3RhZyA9PSBEVF9TT05BTUUpIHsKKyAgICAgIHNvbmFtZV8gPSBnZXRfc3RyaW5nKGQtPmRfdW4uZF92YWwpOworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgICAgIHN0cmxjcHkob2xkX25hbWVfLCBzb25hbWVfLCBzaXplb2Yob2xkX25hbWVfKSk7CisjZW5kaWYKKyAgICAgIGJyZWFrOworICAgIH0KKyAgfQorCiAgIERFQlVHKCJzaS0+YmFzZSA9ICVwLCBzaS0+c3RydGFiID0gJXAsIHNpLT5zeW10YWIgPSAlcCIsCi0gICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBzdHJ0YWIsIHN5bXRhYik7CisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBzdHJ0YWJfLCBzeW10YWJfKTsKIAogICAvLyBTYW5pdHkgY2hlY2tzLgogICBpZiAocmVsb2NhdGluZ19saW5rZXIgJiYgbmVlZGVkX2NvdW50ICE9IDApIHsKICAgICBETF9FUlIoImxpbmtlciBjYW5ub3QgaGF2ZSBEVF9ORUVERUQgZGVwZW5kZW5jaWVzIG9uIG90aGVyIGxpYnJhcmllcyIpOwogICAgIHJldHVybiBmYWxzZTsKICAgfQotICBpZiAobmJ1Y2tldCA9PSAwKSB7Ci0gICAgRExfRVJSKCJlbXB0eS9taXNzaW5nIERUX0hBU0ggaW4gXCIlc1wiIChidWlsdCB3aXRoIC0taGFzaC1zdHlsZT1nbnU/KSIsIG5hbWUpOworICBpZiAobmJ1Y2tldF8gPT0gMCAmJiBnbnVfbmJ1Y2tldF8gPT0gMCkgeworICAgIERMX0VSUigiZW1wdHkvbWlzc2luZyBEVF9IQVNIL0RUX0dOVV9IQVNIIGluIFwiJXNcIiAiCisgICAgICAgICIobmV3IGhhc2ggdHlwZSBmcm9tIHRoZSBmdXR1cmU/KSIsIGdldF9zb25hbWUoKSk7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9Ci0gIGlmIChzdHJ0YWIgPT0gMCkgewotICAgIERMX0VSUigiZW1wdHkvbWlzc2luZyBEVF9TVFJUQUIgaW4gXCIlc1wiIiwgbmFtZSk7CisgIGlmIChzdHJ0YWJfID09IDApIHsKKyAgICBETF9FUlIoImVtcHR5L21pc3NpbmcgRFRfU1RSVEFCIGluIFwiJXNcIiIsIGdldF9zb25hbWUoKSk7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9Ci0gIGlmIChzeW10YWIgPT0gMCkgewotICAgIERMX0VSUigiZW1wdHkvbWlzc2luZyBEVF9TWU1UQUIgaW4gXCIlc1wiIiwgbmFtZSk7CisgIGlmIChzeW10YWJfID09IDApIHsKKyAgICBETF9FUlIoImVtcHR5L21pc3NpbmcgRFRfU1lNVEFCIGluIFwiJXNcIiIsIGdldF9zb25hbWUoKSk7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9CiAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIHNvaW5mbzo6TGlua0ltYWdlKGNvbnN0IGFuZHJvaWRfZGxleHRpbmZvKiBleHRpbmZvKSB7Citib29sIHNvaW5mbzo6bGlua19pbWFnZShjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKKworICBsb2NhbF9ncm91cF9yb290XyA9IGxvY2FsX2dyb3VwLmZyb250KCk7CisgIGlmIChsb2NhbF9ncm91cF9yb290XyA9PSBudWxscHRyKSB7CisgICAgbG9jYWxfZ3JvdXBfcm9vdF8gPSB0aGlzOworICB9CiAKICNpZiAhZGVmaW5lZChfX0xQNjRfXykKICAgaWYgKGhhc190ZXh0X3JlbG9jYXRpb25zKSB7CiAgICAgLy8gTWFrZSBzZWdtZW50cyB3cml0YWJsZSB0byBhbGxvdyB0ZXh0IHJlbG9jYXRpb25zIHRvIHdvcmsgcHJvcGVybHkuIFdlIHdpbGwgbGF0ZXIgY2FsbAogICAgIC8vIHBoZHJfdGFibGVfcHJvdGVjdF9zZWdtZW50cygpIGFmdGVyIGFsbCBvZiB0aGVtIGFyZSBhcHBsaWVkIGFuZCBhbGwgY29uc3RydWN0b3JzIGFyZSBydW4uCiAgICAgRExfV0FSTigiJXMgaGFzIHRleHQgcmVsb2NhdGlvbnMuIFRoaXMgaXMgd2FzdGluZyBtZW1vcnkgYW5kIHByZXZlbnRzICIKLSAgICAgICAgICAgICJzZWN1cml0eSBoYXJkZW5pbmcuIFBsZWFzZSBmaXguIiwgbmFtZSk7CisgICAgICAgICAgICAic2VjdXJpdHkgaGFyZGVuaW5nLiBQbGVhc2UgZml4LiIsIGdldF9zb25hbWUoKSk7CiAgICAgaWYgKHBoZHJfdGFibGVfdW5wcm90ZWN0X3NlZ21lbnRzKHBoZHIsIHBobnVtLCBsb2FkX2JpYXMpIDwgMCkgewogICAgICAgRExfRVJSKCJjYW4ndCB1bnByb3RlY3QgbG9hZGFibGUgc2VnbWVudHMgZm9yIFwiJXNcIjogJXMiLAotICAgICAgICAgICAgIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgICAgICAgICAgZ2V0X3NvbmFtZSgpLCBzdHJlcnJvcihlcnJubykpOwogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgfQogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKFVTRV9SRUxBKQotICBpZiAocmVsYSAhPSBudWxscHRyKSB7Ci0gICAgREVCVUcoIlsgcmVsb2NhdGluZyAlcyBdIiwgbmFtZSk7Ci0gICAgaWYgKFJlbG9jYXRlKHJlbGEsIHJlbGFfY291bnQpKSB7CisgIGlmIChhbmRyb2lkX3JlbG9jc18gIT0gbnVsbHB0cikgeworICAgIC8vIGNoZWNrIHNpZ25hdHVyZQorICAgIGlmIChhbmRyb2lkX3JlbG9jc19zaXplXyA+IDMgJiYKKyAgICAgICAgYW5kcm9pZF9yZWxvY3NfWzBdID09ICdBJyAmJgorICAgICAgICBhbmRyb2lkX3JlbG9jc19bMV0gPT0gJ1AnICYmCisgICAgICAgIGFuZHJvaWRfcmVsb2NzX1syXSA9PSAnUycgJiYKKyAgICAgICAgYW5kcm9pZF9yZWxvY3NfWzNdID09ICcyJykgeworICAgICAgREVCVUcoIlsgYW5kcm9pZCByZWxvY2F0aW5nICVzIF0iLCBnZXRfc29uYW1lKCkpOworCisgICAgICBib29sIHJlbG9jYXRlZCA9IGZhbHNlOworICAgICAgY29uc3QgdWludDhfdCogcGFja2VkX3JlbG9jcyA9IGFuZHJvaWRfcmVsb2NzXyArIDQ7CisgICAgICBjb25zdCBzaXplX3QgcGFja2VkX3JlbG9jc19zaXplID0gYW5kcm9pZF9yZWxvY3Nfc2l6ZV8gLSA0OworCisgICAgICByZWxvY2F0ZWQgPSByZWxvY2F0ZSgKKyAgICAgICAgICBwYWNrZWRfcmVsb2NfaXRlcmF0b3I8c2xlYjEyOF9kZWNvZGVyPigKKyAgICAgICAgICAgIHNsZWIxMjhfZGVjb2RlcihwYWNrZWRfcmVsb2NzLCBwYWNrZWRfcmVsb2NzX3NpemUpKSwKKyAgICAgICAgICBnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwKTsKKworICAgICAgaWYgKCFyZWxvY2F0ZWQpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICBETF9FUlIoImJhZCBhbmRyb2lkIHJlbG9jYXRpb24gaGVhZGVyLiIpOwogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgfQotICBpZiAocGx0X3JlbGEgIT0gbnVsbHB0cikgewotICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgcGx0IF0iLCBuYW1lKTsKLSAgICBpZiAoUmVsb2NhdGUocGx0X3JlbGEsIHBsdF9yZWxhX2NvdW50KSkgeworCisjaWYgZGVmaW5lZChVU0VfUkVMQSkKKyAgaWYgKHJlbGFfICE9IG51bGxwdHIpIHsKKyAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIF0iLCBnZXRfc29uYW1lKCkpOworICAgIGlmICghcmVsb2NhdGUocGxhaW5fcmVsb2NfaXRlcmF0b3IocmVsYV8sIHJlbGFfY291bnRfKSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCkpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgIH0KKyAgaWYgKHBsdF9yZWxhXyAhPSBudWxscHRyKSB7CisgICAgREVCVUcoIlsgcmVsb2NhdGluZyAlcyBwbHQgXSIsIGdldF9zb25hbWUoKSk7CisgICAgaWYgKCFyZWxvY2F0ZShwbGFpbl9yZWxvY19pdGVyYXRvcihwbHRfcmVsYV8sIHBsdF9yZWxhX2NvdW50XyksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXApKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9CiAjZWxzZQotICBpZiAocmVsICE9IG51bGxwdHIpIHsKLSAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIF0iLCBuYW1lKTsKLSAgICBpZiAoUmVsb2NhdGUocmVsLCByZWxfY291bnQpKSB7CisgIGlmIChyZWxfICE9IG51bGxwdHIpIHsKKyAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIF0iLCBnZXRfc29uYW1lKCkpOworICAgIGlmICghcmVsb2NhdGUocGxhaW5fcmVsb2NfaXRlcmF0b3IocmVsXywgcmVsX2NvdW50XyksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXApKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9Ci0gIGlmIChwbHRfcmVsICE9IG51bGxwdHIpIHsKLSAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIHBsdCBdIiwgbmFtZSk7Ci0gICAgaWYgKFJlbG9jYXRlKHBsdF9yZWwsIHBsdF9yZWxfY291bnQpKSB7CisgIGlmIChwbHRfcmVsXyAhPSBudWxscHRyKSB7CisgICAgREVCVUcoIlsgcmVsb2NhdGluZyAlcyBwbHQgXSIsIGdldF9zb25hbWUoKSk7CisgICAgaWYgKCFyZWxvY2F0ZShwbGFpbl9yZWxvY19pdGVyYXRvcihwbHRfcmVsXywgcGx0X3JlbF9jb3VudF8pLCBnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwKSkgewogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgfQogI2VuZGlmCiAKICNpZiBkZWZpbmVkKF9fbWlwc19fKQotICBpZiAoIW1pcHNfcmVsb2NhdGVfZ290KHRoaXMpKSB7CisgIGlmICghbWlwc19yZWxvY2F0ZV9nb3QoZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCkpIHsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KICNlbmRpZgogCi0gIERFQlVHKCJbIGZpbmlzaGVkIGxpbmtpbmcgJXMgXSIsIG5hbWUpOworICBERUJVRygiWyBmaW5pc2hlZCBsaW5raW5nICVzIF0iLCBnZXRfc29uYW1lKCkpOwogCiAjaWYgIWRlZmluZWQoX19MUDY0X18pCiAgIGlmIChoYXNfdGV4dF9yZWxvY2F0aW9ucykgewogICAgIC8vIEFsbCByZWxvY2F0aW9ucyBhcmUgZG9uZSwgd2UgY2FuIHByb3RlY3Qgb3VyIHNlZ21lbnRzIGJhY2sgdG8gcmVhZC1vbmx5LgogICAgIGlmIChwaGRyX3RhYmxlX3Byb3RlY3Rfc2VnbWVudHMocGhkciwgcGhudW0sIGxvYWRfYmlhcykgPCAwKSB7CiAgICAgICBETF9FUlIoImNhbid0IHByb3RlY3Qgc2VnbWVudHMgZm9yIFwiJXNcIjogJXMiLAotICAgICAgICAgICAgIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgICAgICAgICAgZ2V0X3NvbmFtZSgpLCBzdHJlcnJvcihlcnJubykpOwogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgfQpAQCAtMjIzOCw3ICsyOTQ3LDcgQEAKICAgLyogV2UgY2FuIGFsc28gdHVybiBvbiBHTlUgUkVMUk8gcHJvdGVjdGlvbiAqLwogICBpZiAocGhkcl90YWJsZV9wcm90ZWN0X2dudV9yZWxybyhwaGRyLCBwaG51bSwgbG9hZF9iaWFzKSA8IDApIHsKICAgICBETF9FUlIoImNhbid0IGVuYWJsZSBHTlUgUkVMUk8gcHJvdGVjdGlvbiBmb3IgXCIlc1wiOiAlcyIsCi0gICAgICAgICAgIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgICAgICAgIGdldF9zb25hbWUoKSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KIApAQCAtMjI0NywxNCArMjk1NiwxNCBAQAogICAgIGlmIChwaGRyX3RhYmxlX3NlcmlhbGl6ZV9nbnVfcmVscm8ocGhkciwgcGhudW0sIGxvYWRfYmlhcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGluZm8tPnJlbHJvX2ZkKSA8IDApIHsKICAgICAgIERMX0VSUigiZmFpbGVkIHNlcmlhbGl6aW5nIEdOVSBSRUxSTyBzZWN0aW9uIGZvciBcIiVzXCI6ICVzIiwKLSAgICAgICAgICAgICBuYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICAgIGdldF9zb25hbWUoKSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0gZWxzZSBpZiAoZXh0aW5mbyAmJiAoZXh0aW5mby0+ZmxhZ3MgJiBBTkRST0lEX0RMRVhUX1VTRV9SRUxSTykpIHsKICAgICBpZiAocGhkcl90YWJsZV9tYXBfZ251X3JlbHJvKHBoZHIsIHBobnVtLCBsb2FkX2JpYXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRpbmZvLT5yZWxyb19mZCkgPCAwKSB7CiAgICAgICBETF9FUlIoImZhaWxlZCBtYXBwaW5nIEdOVSBSRUxSTyBzZWN0aW9uIGZvciBcIiVzXCI6ICVzIiwKLSAgICAgICAgICAgICBuYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICAgIGdldF9zb25hbWUoKSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0KQEAgLTIyNzUsNyArMjk4NCw3IEBACiAgICAgcmV0dXJuOwogICB9CiAKLSAgc29pbmZvKiBzaSA9IHNvaW5mb19hbGxvYygiW3Zkc29dIiwgbnVsbHB0ciwgMCk7CisgIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MoIlt2ZHNvXSIsIG51bGxwdHIsIDAsIDApOwogCiAgIHNpLT5waGRyID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFBoZHIpKj4ocmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oZWhkcl92ZHNvKSArIGVoZHJfdmRzby0+ZV9waG9mZik7CiAgIHNpLT5waG51bSA9IGVoZHJfdmRzby0+ZV9waG51bTsKQEAgLTIyODMsOCArMjk5Miw4IEBACiAgIHNpLT5zaXplID0gcGhkcl90YWJsZV9nZXRfbG9hZF9zaXplKHNpLT5waGRyLCBzaS0+cGhudW0pOwogICBzaS0+bG9hZF9iaWFzID0gZ2V0X2VsZl9leGVjX2xvYWRfYmlhcyhlaGRyX3Zkc28pOwogCi0gIHNpLT5QcmVsaW5rSW1hZ2UoKTsKLSAgc2ktPkxpbmtJbWFnZShudWxscHRyKTsKKyAgc2ktPnByZWxpbmtfaW1hZ2UoKTsKKyAgc2ktPmxpbmtfaW1hZ2UoZ19lbXB0eV9saXN0LCBzb2luZm86OnNvaW5mb19saXN0X3Q6Om1ha2VfbGlzdChzaSksIG51bGxwdHIpOwogI2VuZGlmCiB9CiAKQEAgLTIyOTYsNyArMzAwNSwxMiBAQAogI2Vsc2UKICNkZWZpbmUgTElOS0VSX1BBVEggIi9zeXN0ZW0vYmluL2xpbmtlciIKICNlbmRpZgotc3RhdGljIHNvaW5mbyBsaW5rZXJfc29pbmZvX2Zvcl9nZGIoTElOS0VSX1BBVEgsIG51bGxwdHIsIDApOworCisvLyBUaGlzIGlzIGRvbmUgdG8gYXZvaWQgY2FsbGluZyBjLXRvciBwcmVtYXR1cmVseQorLy8gYmVjYXVzZSBzb2luZm8gYy10b3IgbmVlZHMgbWVtb3J5IGFsbG9jYXRvcgorLy8gd2hpY2ggbWlnaHQgYmUgaW5pdGlhbGl6ZWQgYWZ0ZXIgZ2xvYmFsIHZhcmlhYmxlcy4KK3N0YXRpYyB1aW50OF90IGxpbmtlcl9zb2luZm9fZm9yX2dkYl9idWZbc2l6ZW9mKHNvaW5mbyldIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKK3N0YXRpYyBzb2luZm8qIGxpbmtlcl9zb2luZm9fZm9yX2dkYiA9IG51bGxwdHI7CiAKIC8qIGdkYiBleHBlY3RzIHRoZSBsaW5rZXIgdG8gYmUgaW4gdGhlIGRlYnVnIHNoYXJlZCBvYmplY3QgbGlzdC4KICAqIFdpdGhvdXQgdGhpcywgZ2RiIGhhcyB0cm91YmxlIGxvY2F0aW5nIHRoZSBsaW5rZXIncyAiLnRleHQiCkBAIC0yMzA2LDcgKzMwMjAsOSBAQAogICogYmUgb24gdGhlIHNvaW5mbyBsaXN0LgogICovCiBzdGF0aWMgdm9pZCBpbml0X2xpbmtlcl9pbmZvX2Zvcl9nZGIoRWxmVyhBZGRyKSBsaW5rZXJfYmFzZSkgewotICBsaW5rZXJfc29pbmZvX2Zvcl9nZGIuYmFzZSA9IGxpbmtlcl9iYXNlOworICBsaW5rZXJfc29pbmZvX2Zvcl9nZGIgPSBuZXcgKGxpbmtlcl9zb2luZm9fZm9yX2dkYl9idWYpIHNvaW5mbyhMSU5LRVJfUEFUSCwgbnVsbHB0ciwgMCwgMCk7CisKKyAgbGlua2VyX3NvaW5mb19mb3JfZ2RiLT5iYXNlID0gbGlua2VyX2Jhc2U7CiAKICAgLyoKICAgICogU2V0IHRoZSBkeW5hbWljIGZpZWxkIGluIHRoZSBsaW5rIG1hcCBvdGhlcndpc2UgZ2RiIHdpbGwgY29tcGxhaW4gd2l0aApAQCAtMjMxNyw4ICszMDMzLDggQEAKICAgRWxmVyhFaGRyKSogZWxmX2hkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhFaGRyKSo+KGxpbmtlcl9iYXNlKTsKICAgRWxmVyhQaGRyKSogcGhkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhQaGRyKSo+KGxpbmtlcl9iYXNlICsgZWxmX2hkci0+ZV9waG9mZik7CiAgIHBoZHJfdGFibGVfZ2V0X2R5bmFtaWNfc2VjdGlvbihwaGRyLCBlbGZfaGRyLT5lX3BobnVtLCBsaW5rZXJfYmFzZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZsaW5rZXJfc29pbmZvX2Zvcl9nZGIuZHluYW1pYywgbnVsbHB0cik7Ci0gIGluc2VydF9zb2luZm9faW50b19kZWJ1Z19tYXAoJmxpbmtlcl9zb2luZm9fZm9yX2dkYik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbGlua2VyX3NvaW5mb19mb3JfZ2RiLT5keW5hbWljLCBudWxscHRyKTsKKyAgaW5zZXJ0X3NvaW5mb19pbnRvX2RlYnVnX21hcChsaW5rZXJfc29pbmZvX2Zvcl9nZGIpOwogfQogCiAvKgpAQCAtMjM1OCwxNSArMzA3NCwyMSBAQAogICAgIGxkcHJlbG9hZF9lbnYgPSBsaW5rZXJfZW52X2dldCgiTERfUFJFTE9BRCIpOwogICB9CiAKKyNpZiAhZGVmaW5lZChfX0xQNjRfXykKKyAgaWYgKHBlcnNvbmFsaXR5KFBFUl9MSU5VWDMyKSA9PSAtMSkgeworICAgIF9fbGliY19mYXRhbCgiZXJyb3Igc2V0dGluZyBQRVJfTElOVVgzMiBwZXJzb25hbGl0eTogJXMiLCBzdHJlcnJvcihlcnJubykpOworICB9CisjZW5kaWYKKwogICBJTkZPKCJbIGFuZHJvaWQgbGlua2VyICYgZGVidWdnZXIgXSIpOwogCi0gIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MoYXJncy5hcmd2WzBdLCBudWxscHRyLCAwKTsKKyAgc29pbmZvKiBzaSA9IHNvaW5mb19hbGxvYyhhcmdzLmFyZ3ZbMF0sIG51bGxwdHIsIDAsIFJUTERfR0xPQkFMKTsKICAgaWYgKHNpID09IG51bGxwdHIpIHsKICAgICBleGl0KEVYSVRfRkFJTFVSRSk7CiAgIH0KIAogICAvKiBib290c3RyYXAgdGhlIGxpbmsgbWFwLCB0aGUgbWFpbiBleGUgYWx3YXlzIG5lZWRzIHRvIGJlIGZpcnN0ICovCi0gIHNpLT5mbGFncyB8PSBGTEFHX0VYRTsKKyAgc2ktPnNldF9tYWluX2V4ZWN1dGFibGUoKTsKICAgbGlua19tYXAqIG1hcCA9ICYoc2ktPmxpbmtfbWFwX2hlYWQpOwogCiAgIG1hcC0+bF9hZGRyID0gMDsKQEAgLTIzOTksNyArMzEyMSw2IEBACiAgICAgfQogICB9CiAgIHNpLT5keW5hbWljID0gbnVsbHB0cjsKLSAgc2ktPnJlZl9jb3VudCA9IDE7CiAKICAgRWxmVyhFaGRyKSogZWxmX2hkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhFaGRyKSo+KHNpLT5iYXNlKTsKICAgaWYgKGVsZl9oZHItPmVfdHlwZSAhPSBFVF9EWU4pIHsKQEAgLTI0MTMsMTcgKzMxMzQsMjEgQEAKIAogICBzb21haW4gPSBzaTsKIAotICBpZiAoIXNpLT5QcmVsaW5rSW1hZ2UoKSkgeworICBpZiAoIXNpLT5wcmVsaW5rX2ltYWdlKCkpIHsKICAgICBfX2xpYmNfZm9ybWF0X2ZkKDIsICJDQU5OT1QgTElOSyBFWEVDVVRBQkxFOiAlc1xuIiwgbGlua2VyX2dldF9lcnJvcl9idWZmZXIoKSk7CiAgICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICB9CiAKKyAgLy8gYWRkIHNvbWFpbiB0byBnbG9iYWwgZ3JvdXAKKyAgc2ktPnNldF9kdF9mbGFnc18xKHNpLT5nZXRfZHRfZmxhZ3NfMSgpIHwgREZfMV9HTE9CQUwpOworCiAgIC8vIExvYWQgbGRfcHJlbG9hZHMgYW5kIGRlcGVuZGVuY2llcy4KICAgU3RyaW5nTGlua2VkTGlzdCBuZWVkZWRfbGlicmFyeV9uYW1lX2xpc3Q7CiAgIHNpemVfdCBuZWVkZWRfbGlicmFyaWVzX2NvdW50ID0gMDsKICAgc2l6ZV90IGxkX3ByZWxvYWRzX2NvdW50ID0gMDsKLSAgd2hpbGUgKGdfbGRfcHJlbG9hZF9uYW1lc1tsZF9wcmVsb2Fkc19jb3VudF0gIT0gbnVsbHB0cikgewotICAgIG5lZWRlZF9saWJyYXJ5X25hbWVfbGlzdC5wdXNoX2JhY2soZ19sZF9wcmVsb2FkX25hbWVzW2xkX3ByZWxvYWRzX2NvdW50KytdKTsKKworICBmb3IgKGNvbnN0IGF1dG8mIGxkX3ByZWxvYWRfbmFtZSA6IGdfbGRfcHJlbG9hZF9uYW1lcykgeworICAgIG5lZWRlZF9saWJyYXJ5X25hbWVfbGlzdC5wdXNoX2JhY2sobGRfcHJlbG9hZF9uYW1lLmNfc3RyKCkpOwogICAgICsrbmVlZGVkX2xpYnJhcmllc19jb3VudDsKICAgfQogCkBAIC0yNDMzLDM2ICszMTU4LDM4IEBACiAgIH0pOwogCiAgIGNvbnN0IGNoYXIqIG5lZWRlZF9saWJyYXJ5X25hbWVzW25lZWRlZF9saWJyYXJpZXNfY291bnRdOwotICBzb2luZm8qIG5lZWRlZF9saWJyYXJ5X3NpW25lZWRlZF9saWJyYXJpZXNfY291bnRdOwogCiAgIG1lbXNldChuZWVkZWRfbGlicmFyeV9uYW1lcywgMCwgc2l6ZW9mKG5lZWRlZF9saWJyYXJ5X25hbWVzKSk7CiAgIG5lZWRlZF9saWJyYXJ5X25hbWVfbGlzdC5jb3B5X3RvX2FycmF5KG5lZWRlZF9saWJyYXJ5X25hbWVzLCBuZWVkZWRfbGlicmFyaWVzX2NvdW50KTsKIAotICBpZiAobmVlZGVkX2xpYnJhcmllc19jb3VudCA+IDAgJiYgIWZpbmRfbGlicmFyaWVzKG5lZWRlZF9saWJyYXJ5X25hbWVzLCBuZWVkZWRfbGlicmFyaWVzX2NvdW50LCBuZWVkZWRfbGlicmFyeV9zaSwgZ19sZF9wcmVsb2FkcywgbGRfcHJlbG9hZHNfY291bnQsIDAsIG51bGxwdHIpKSB7Ci0gICAgX19saWJjX2Zvcm1hdF9mZCgyLCAiQ0FOTk9UIExJTksgRVhFQ1VUQUJMRSBERVBFTkRFTkNJRVM6ICVzXG4iLCBsaW5rZXJfZ2V0X2Vycm9yX2J1ZmZlcigpKTsKLSAgICBleGl0KEVYSVRfRkFJTFVSRSk7Ci0gIH0KLQotICBmb3IgKHNpemVfdCBpID0gMDsgaTxuZWVkZWRfbGlicmFyaWVzX2NvdW50OyArK2kpIHsKLSAgICBzaS0+YWRkX2NoaWxkKG5lZWRlZF9saWJyYXJ5X3NpW2ldKTsKLSAgfQotCi0gIGlmICghc2ktPkxpbmtJbWFnZShudWxscHRyKSkgeworICBpZiAobmVlZGVkX2xpYnJhcmllc19jb3VudCA+IDAgJiYKKyAgICAgICFmaW5kX2xpYnJhcmllcyhzaSwgbmVlZGVkX2xpYnJhcnlfbmFtZXMsIG5lZWRlZF9saWJyYXJpZXNfY291bnQsIG51bGxwdHIsCisgICAgICAgICAgJmdfbGRfcHJlbG9hZHMsIGxkX3ByZWxvYWRzX2NvdW50LCBSVExEX0dMT0JBTCwgbnVsbHB0cikpIHsKICAgICBfX2xpYmNfZm9ybWF0X2ZkKDIsICJDQU5OT1QgTElOSyBFWEVDVVRBQkxFOiAlc1xuIiwgbGlua2VyX2dldF9lcnJvcl9idWZmZXIoKSk7CiAgICAgZXhpdChFWElUX0ZBSUxVUkUpOworICB9IGVsc2UgaWYgKG5lZWRlZF9saWJyYXJpZXNfY291bnQgPT0gMCkgeworICAgIGlmICghc2ktPmxpbmtfaW1hZ2UoZ19lbXB0eV9saXN0LCBzb2luZm86OnNvaW5mb19saXN0X3Q6Om1ha2VfbGlzdChzaSksIG51bGxwdHIpKSB7CisgICAgICBfX2xpYmNfZm9ybWF0X2ZkKDIsICJDQU5OT1QgTElOSyBFWEVDVVRBQkxFOiAlc1xuIiwgbGlua2VyX2dldF9lcnJvcl9idWZmZXIoKSk7CisgICAgICBleGl0KEVYSVRfRkFJTFVSRSk7CisgICAgfQorICAgIHNpLT5pbmNyZW1lbnRfcmVmX2NvdW50KCk7CiAgIH0KIAogICBhZGRfdmRzbyhhcmdzKTsKIAotICBzaS0+Q2FsbFByZUluaXRDb25zdHJ1Y3RvcnMoKTsKKyAgeworICAgIFByb3RlY3RlZERhdGFHdWFyZCBndWFyZDsKIAotICAvKiBBZnRlciB0aGUgUHJlbGlua0ltYWdlLCB0aGUgc2ktPmxvYWRfYmlhcyBpcyBpbml0aWFsaXplZC4KLSAgICogRm9yIHNvIGxpYiwgdGhlIG1hcC0+bF9hZGRyIHdpbGwgYmUgdXBkYXRlZCBpbiBub3RpZnlfZ2RiX29mX2xvYWQuCi0gICAqIFdlIG5lZWQgdG8gdXBkYXRlIHRoaXMgdmFsdWUgZm9yIHNvIGV4ZSBoZXJlLiBTbyBVbndpbmRfQmFja3RyYWNlCi0gICAqIGZvciBzb21lIGFyY2ggbGlrZSB4ODYgY291bGQgd29yayBjb3JyZWN0bHkgd2l0aGluIHNvIGV4ZS4KLSAgICovCi0gIG1hcC0+bF9hZGRyID0gc2ktPmxvYWRfYmlhczsKLSAgc2ktPkNhbGxDb25zdHJ1Y3RvcnMoKTsKKyAgICBzaS0+Y2FsbF9wcmVfaW5pdF9jb25zdHJ1Y3RvcnMoKTsKKworICAgIC8qIEFmdGVyIHRoZSBwcmVsaW5rX2ltYWdlLCB0aGUgc2ktPmxvYWRfYmlhcyBpcyBpbml0aWFsaXplZC4KKyAgICAgKiBGb3Igc28gbGliLCB0aGUgbWFwLT5sX2FkZHIgd2lsbCBiZSB1cGRhdGVkIGluIG5vdGlmeV9nZGJfb2ZfbG9hZC4KKyAgICAgKiBXZSBuZWVkIHRvIHVwZGF0ZSB0aGlzIHZhbHVlIGZvciBzbyBleGUgaGVyZS4gU28gVW53aW5kX0JhY2t0cmFjZQorICAgICAqIGZvciBzb21lIGFyY2ggbGlrZSB4ODYgY291bGQgd29yayBjb3JyZWN0bHkgd2l0aGluIHNvIGV4ZS4KKyAgICAgKi8KKyAgICBtYXAtPmxfYWRkciA9IHNpLT5sb2FkX2JpYXM7CisgICAgc2ktPmNhbGxfY29uc3RydWN0b3JzKCk7CisgIH0KIAogI2lmIFRJTUlORwogICBnZXR0aW1lb2ZkYXkoJnQxLCBudWxscHRyKTsKQEAgLTI1MDUsNyArMzIzMiw3IEBACiAgIGZmbHVzaChzdGRvdXQpOwogI2VuZGlmCiAKLSAgVFJBQ0UoIlsgUmVhZHkgdG8gZXhlY3V0ZSAnJXMnIEAgJXAgXSIsIHNpLT5uYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzaS0+ZW50cnkpKTsKKyAgVFJBQ0UoIlsgUmVhZHkgdG8gZXhlY3V0ZSAnJXMnIEAgJXAgXSIsIHNpLT5nZXRfc29uYW1lKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNpLT5lbnRyeSkpOwogICByZXR1cm4gc2ktPmVudHJ5OwogfQogCkBAIC0yNTUxLDcgKzMyNzgsNyBAQAogICBFbGZXKEVoZHIpKiBlbGZfaGRyID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEVoZHIpKj4obGlua2VyX2FkZHIpOwogICBFbGZXKFBoZHIpKiBwaGRyID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFBoZHIpKj4obGlua2VyX2FkZHIgKyBlbGZfaGRyLT5lX3Bob2ZmKTsKIAotICBzb2luZm8gbGlua2VyX3NvKCJbZHluYW1pYyBsaW5rZXJdIiwgbnVsbHB0ciwgMCk7CisgIHNvaW5mbyBsaW5rZXJfc28obnVsbHB0ciwgbnVsbHB0ciwgMCwgMCk7CiAKICAgLy8gSWYgdGhlIGxpbmtlciBpcyBub3QgYWN0aW5nIGFzIFBUX0lOVEVSUCBlbnRyeV9wb2ludCBpcyBlcXVhbCB0bwogICAvLyBfc3RhcnQuIFdoaWNoIG1lYW5zIHRoYXQgdGhlIGxpbmtlciBpcyBydW5uaW5nIGFzIGFuIGV4ZWN1dGFibGUgYW5kCkBAIC0yNTY5LDkgKzMyOTYsMTUgQEAKICAgbGlua2VyX3NvLmR5bmFtaWMgPSBudWxscHRyOwogICBsaW5rZXJfc28ucGhkciA9IHBoZHI7CiAgIGxpbmtlcl9zby5waG51bSA9IGVsZl9oZHItPmVfcGhudW07Ci0gIGxpbmtlcl9zby5mbGFncyB8PSBGTEFHX0xJTktFUjsKKyAgbGlua2VyX3NvLnNldF9saW5rZXJfZmxhZygpOwogCi0gIGlmICghKGxpbmtlcl9zby5QcmVsaW5rSW1hZ2UoKSAmJiBsaW5rZXJfc28uTGlua0ltYWdlKG51bGxwdHIpKSkgeworICAvLyBUaGlzIG1pZ2h0IG5vdCBiZSBvYnZpb3VzLi4uIFRoZSByZWFzb25zIHdoeSB3ZSBwYXNzIGdfZW1wdHlfbGlzdAorICAvLyBpbiBwbGFjZSBvZiBsb2NhbF9ncm91cCBoZXJlIGFyZSAoMSkgd2UgZG8gbm90IHJlYWxseSBuZWVkIGl0LCBiZWNhdXNlCisgIC8vIGxpbmtlciBpcyBidWlsdCB3aXRoIERUX1NZTUJPTElDIGFuZCB0aGVyZWZvcmUgcmVsb2NhdGVzIGl0cyBzeW1ib2xzIGFnYWluc3QKKyAgLy8gaXRzZWxmIHdpdGhvdXQgaGF2aW5nIHRvIGxvb2sgaW50byBsb2NhbF9ncm91cCBhbmQgKDIpIGFsbG9jYXRvcnMKKyAgLy8gYXJlIG5vdCB5ZXQgaW5pdGlhbGl6ZWQsIGFuZCB0aGVyZWZvcmUgd2UgY2Fubm90IHVzZSBsaW5rZWRfbGlzdC5wdXNoXyoKKyAgLy8gZnVuY3Rpb25zIGF0IHRoaXMgcG9pbnQuCisgIGlmICghKGxpbmtlcl9zby5wcmVsaW5rX2ltYWdlKCkgJiYgbGlua2VyX3NvLmxpbmtfaW1hZ2UoZ19lbXB0eV9saXN0LCBnX2VtcHR5X2xpc3QsIG51bGxwdHIpKSkgewogICAgIC8vIEl0IHdvdWxkIGJlIG5pY2UgdG8gcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSwgYnV0IGlmIHRoZSBsaW5rZXIKICAgICAvLyBjYW4ndCBsaW5rIGl0c2VsZiwgdGhlcmUncyBubyBndWFyYW50ZWUgdGhhdCB3ZSdsbCBiZSBhYmxlIHRvCiAgICAgLy8gY2FsbCB3cml0ZSgpIChiZWNhdXNlIGl0IGludm9sdmVzIGEgR09UIHJlZmVyZW5jZSkuIFdlIG1heSBhcwpAQCAtMjU4Niw3ICszMzE5LDcgQEAKICAgX19saWJjX2luaXRfdGxzKGFyZ3MpOwogCiAgIC8vIEluaXRpYWxpemUgdGhlIGxpbmtlcidzIG93biBnbG9iYWwgdmFyaWFibGVzCi0gIGxpbmtlcl9zby5DYWxsQ29uc3RydWN0b3JzKCk7CisgIGxpbmtlcl9zby5jYWxsX2NvbnN0cnVjdG9ycygpOwogCiAgIC8vIEluaXRpYWxpemUgc3RhdGljIHZhcmlhYmxlcy4gTm90ZSB0aGF0IGluIG9yZGVyIHRvCiAgIC8vIGdldCBjb3JyZWN0IGxpYmRsX2luZm8gd2UgbmVlZCB0byBjYWxsIGNvbnN0cnVjdG9ycwpAQCAtMjU5OSw3ICszMzMyLDcgQEAKICAgYXJncy5hYm9ydF9tZXNzYWdlX3B0ciA9ICZnX2Fib3J0X21lc3NhZ2U7CiAgIEVsZlcoQWRkcikgc3RhcnRfYWRkcmVzcyA9IF9fbGlua2VyX2luaXRfcG9zdF9yZWxvY2F0aW9uKGFyZ3MsIGxpbmtlcl9hZGRyKTsKIAotICBwcm90ZWN0X2RhdGEoUFJPVF9SRUFEKTsKKyAgSU5GTygiWyBqdW1waW5nIHRvIF9zdGFydCBdIik7CiAKICAgLy8gUmV0dXJuIHRoZSBhZGRyZXNzIHRoYXQgdGhlIGNhbGxpbmcgYXNzZW1ibHkgc3R1YiBzaG91bGQganVtcCB0by4KICAgcmV0dXJuIHN0YXJ0X2FkZHJlc3M7CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyLmggYi9saW5rZXIvbGlua2VyLmgKaW5kZXggZmEzOGM3Zi4uZGFlMzk3MiAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlci5oCisrKyBiL2xpbmtlci9saW5rZXIuaApAQCAtMzksNiArMzksOSBAQAogI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCiAjaW5jbHVkZSAibGlua2VkX2xpc3QuaCIKIAorI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKICNkZWZpbmUgRExfRVJSKGZtdCwgeC4uLikgXAogICAgIGRvIHsgXAogICAgICAgX19saWJjX2Zvcm1hdF9idWZmZXIobGlua2VyX2dldF9lcnJvcl9idWZmZXIoKSwgbGlua2VyX2dldF9lcnJvcl9idWZmZXJfc2l6ZSgpLCBmbXQsICMjeCk7IFwKQEAgLTg3LDExICs5MCwxNiBAQAogI2RlZmluZSBGTEFHX0xJTktFRCAgICAgMHgwMDAwMDAwMQogI2RlZmluZSBGTEFHX0VYRSAgICAgICAgMHgwMDAwMDAwNCAvLyBUaGUgbWFpbiBleGVjdXRhYmxlCiAjZGVmaW5lIEZMQUdfTElOS0VSICAgICAweDAwMDAwMDEwIC8vIFRoZSBsaW5rZXIgaXRzZWxmCisjZGVmaW5lIEZMQUdfR05VX0hBU0ggICAweDAwMDAwMDQwIC8vIHVzZXMgZ251IGhhc2gKICNkZWZpbmUgRkxBR19ORVdfU09JTkZPIDB4NDAwMDAwMDAgLy8gbmV3IHNvaW5mbyBmb3JtYXQKIAotI2RlZmluZSBTT0lORk9fVkVSU0lPTiAwCisjZGVmaW5lIFNVUFBPUlRFRF9EVF9GTEFHU18xIChERl8xX05PVyB8IERGXzFfR0xPQkFMIHwgREZfMV9OT0RFTEVURSkKIAorI2RlZmluZSBTT0lORk9fVkVSU0lPTiAyCisKKyNpZiBkZWZpbmVkKF9fYXJtX18pCiAjZGVmaW5lIFNPSU5GT19OQU1FX0xFTiAxMjgKKyNlbmRpZgogCiB0eXBlZGVmIHZvaWQgKCpsaW5rZXJfZnVuY3Rpb25fdCkoKTsKIApAQCAtMTAzLDkxICsxMTEsMTQ3IEBACiBzdHJ1Y3Qgc29pbmZvOwogCiBjbGFzcyBTb2luZm9MaXN0QWxsb2NhdG9yIHsKLXB1YmxpYzoKKyBwdWJsaWM6CiAgIHN0YXRpYyBMaW5rZWRMaXN0RW50cnk8c29pbmZvPiogYWxsb2MoKTsKICAgc3RhdGljIHZvaWQgZnJlZShMaW5rZWRMaXN0RW50cnk8c29pbmZvPiogZW50cnkpOwotcHJpdmF0ZToKKworIHByaXZhdGU6CiAgIC8vIHVuY29uc3RydWN0YWJsZQogICBESVNBTExPV19JTVBMSUNJVF9DT05TVFJVQ1RPUlMoU29pbmZvTGlzdEFsbG9jYXRvcik7CiB9OwogCitjbGFzcyBTeW1ib2xOYW1lIHsKKyBwdWJsaWM6CisgIGV4cGxpY2l0IFN5bWJvbE5hbWUoY29uc3QgY2hhciogbmFtZSkKKyAgICAgIDogbmFtZV8obmFtZSksIGhhc19lbGZfaGFzaF8oZmFsc2UpLCBoYXNfZ251X2hhc2hfKGZhbHNlKSwKKyAgICAgICAgZWxmX2hhc2hfKDApLCBnbnVfaGFzaF8oMCkgeyB9CisKKyAgY29uc3QgY2hhciogZ2V0X25hbWUoKSB7CisgICAgcmV0dXJuIG5hbWVfOworICB9CisKKyAgdWludDMyX3QgZWxmX2hhc2goKTsKKyAgdWludDMyX3QgZ251X2hhc2goKTsKKworIHByaXZhdGU6CisgIGNvbnN0IGNoYXIqIG5hbWVfOworICBib29sIGhhc19lbGZfaGFzaF87CisgIGJvb2wgaGFzX2dudV9oYXNoXzsKKyAgdWludDMyX3QgZWxmX2hhc2hfOworICB1aW50MzJfdCBnbnVfaGFzaF87CisKKyAgRElTQUxMT1dfSU1QTElDSVRfQ09OU1RSVUNUT1JTKFN5bWJvbE5hbWUpOworfTsKKworc3RydWN0IHZlcnNpb25faW5mbyB7CisgIHZlcnNpb25faW5mbygpIDogZWxmX2hhc2goMCksIG5hbWUobnVsbHB0ciksIHRhcmdldF9zaShudWxscHRyKSB7fQorCisgIHVpbnQzMl90IGVsZl9oYXNoOworICBjb25zdCBjaGFyKiBuYW1lOworICBjb25zdCBzb2luZm8qIHRhcmdldF9zaTsKK307CisKKy8vIENsYXNzIHVzZWQgY29uc3RydWN0IHZlcnNpb24gZGVwZW5kZW5jeSBncmFwaC4KK2NsYXNzIFZlcnNpb25UcmFja2VyIHsKKyBwdWJsaWM6CisgIFZlcnNpb25UcmFja2VyKCkgPSBkZWZhdWx0OworICBib29sIGluaXQoY29uc3Qgc29pbmZvKiBzaV9mcm9tKTsKKworICBjb25zdCB2ZXJzaW9uX2luZm8qIGdldF92ZXJzaW9uX2luZm8oRWxmVyhWZXJzeW0pIHNvdXJjZV9zeW12ZXIpIGNvbnN0OworIHByaXZhdGU6CisgIGJvb2wgaW5pdF92ZXJuZWVkKGNvbnN0IHNvaW5mbyogc2lfZnJvbSk7CisgIGJvb2wgaW5pdF92ZXJkZWYoY29uc3Qgc29pbmZvKiBzaV9mcm9tKTsKKyAgdm9pZCBhZGRfdmVyc2lvbl9pbmZvKHNpemVfdCBzb3VyY2VfaW5kZXgsIEVsZlcoV29yZCkgZWxmX2hhc2gsCisgICAgICBjb25zdCBjaGFyKiB2ZXJfbmFtZSwgY29uc3Qgc29pbmZvKiB0YXJnZXRfc2kpOworCisgIHN0ZDo6dmVjdG9yPHZlcnNpb25faW5mbz4gdmVyc2lvbl9pbmZvczsKKworICBESVNBTExPV19DT1BZX0FORF9BU1NJR04oVmVyc2lvblRyYWNrZXIpOworfTsKKwogc3RydWN0IHNvaW5mbyB7CiAgcHVibGljOgogICB0eXBlZGVmIExpbmtlZExpc3Q8c29pbmZvLCBTb2luZm9MaXN0QWxsb2NhdG9yPiBzb2luZm9fbGlzdF90OworI2lmIGRlZmluZWQoX19hcm1fXykKKyBwcml2YXRlOgorICBjaGFyIG9sZF9uYW1lX1tTT0lORk9fTkFNRV9MRU5dOworI2VuZGlmCiAgcHVibGljOgotICBjaGFyIG5hbWVbU09JTkZPX05BTUVfTEVOXTsKICAgY29uc3QgRWxmVyhQaGRyKSogcGhkcjsKICAgc2l6ZV90IHBobnVtOwogICBFbGZXKEFkZHIpIGVudHJ5OwogICBFbGZXKEFkZHIpIGJhc2U7CiAgIHNpemVfdCBzaXplOwogCi0jaWZuZGVmIF9fTFA2NF9fCisjaWYgZGVmaW5lZChfX2FybV9fKQogICB1aW50MzJfdCB1bnVzZWQxOyAgLy8gRE8gTk9UIFVTRSwgbWFpbnRhaW5lZCBmb3IgY29tcGF0aWJpbGl0eS4KICNlbmRpZgogCiAgIEVsZlcoRHluKSogZHluYW1pYzsKIAotI2lmbmRlZiBfX0xQNjRfXworI2lmIGRlZmluZWQoX19hcm1fXykKICAgdWludDMyX3QgdW51c2VkMjsgLy8gRE8gTk9UIFVTRSwgbWFpbnRhaW5lZCBmb3IgY29tcGF0aWJpbGl0eQogICB1aW50MzJfdCB1bnVzZWQzOyAvLyBETyBOT1QgVVNFLCBtYWludGFpbmVkIGZvciBjb21wYXRpYmlsaXR5CiAjZW5kaWYKIAogICBzb2luZm8qIG5leHQ7Ci0gIHVuc2lnbmVkIGZsYWdzOwotCiAgcHJpdmF0ZToKLSAgY29uc3QgY2hhciogc3RydGFiOwotIHB1YmxpYzoKLSAgRWxmVyhTeW0pKiBzeW10YWI7CisgIHVpbnQzMl90IGZsYWdzXzsKIAotICBzaXplX3QgbmJ1Y2tldDsKLSAgc2l6ZV90IG5jaGFpbjsKLSAgdW5zaWduZWQqIGJ1Y2tldDsKLSAgdW5zaWduZWQqIGNoYWluOworICBjb25zdCBjaGFyKiBzdHJ0YWJfOworICBFbGZXKFN5bSkqIHN5bXRhYl87CisKKyAgc2l6ZV90IG5idWNrZXRfOworICBzaXplX3QgbmNoYWluXzsKKyAgdWludDMyX3QqIGJ1Y2tldF87CisgIHVpbnQzMl90KiBjaGFpbl87CiAKICNpZiBkZWZpbmVkKF9fbWlwc19fKSB8fCAhZGVmaW5lZChfX0xQNjRfXykKICAgLy8gVGhpcyBpcyBvbmx5IHVzZWQgYnkgbWlwcyBhbmQgbWlwczY0LCBidXQgbmVlZHMgdG8gYmUgaGVyZSBmb3IKICAgLy8gYWxsIDMyLWJpdCBhcmNoaXRlY3R1cmVzIHRvIHByZXNlcnZlIGJpbmFyeSBjb21wYXRpYmlsaXR5LgotICBFbGZXKEFkZHIpKiogcGx0X2dvdDsKKyAgRWxmVyhBZGRyKSoqIHBsdF9nb3RfOwogI2VuZGlmCiAKICNpZiBkZWZpbmVkKFVTRV9SRUxBKQotICBFbGZXKFJlbGEpKiBwbHRfcmVsYTsKLSAgc2l6ZV90IHBsdF9yZWxhX2NvdW50OworICBFbGZXKFJlbGEpKiBwbHRfcmVsYV87CisgIHNpemVfdCBwbHRfcmVsYV9jb3VudF87CiAKLSAgRWxmVyhSZWxhKSogcmVsYTsKLSAgc2l6ZV90IHJlbGFfY291bnQ7CisgIEVsZlcoUmVsYSkqIHJlbGFfOworICBzaXplX3QgcmVsYV9jb3VudF87CiAjZWxzZQotICBFbGZXKFJlbCkqIHBsdF9yZWw7Ci0gIHNpemVfdCBwbHRfcmVsX2NvdW50OworICBFbGZXKFJlbCkqIHBsdF9yZWxfOworICBzaXplX3QgcGx0X3JlbF9jb3VudF87CiAKLSAgRWxmVyhSZWwpKiByZWw7Ci0gIHNpemVfdCByZWxfY291bnQ7CisgIEVsZlcoUmVsKSogcmVsXzsKKyAgc2l6ZV90IHJlbF9jb3VudF87CiAjZW5kaWYKIAotICBsaW5rZXJfZnVuY3Rpb25fdCogcHJlaW5pdF9hcnJheTsKLSAgc2l6ZV90IHByZWluaXRfYXJyYXlfY291bnQ7CisgIGxpbmtlcl9mdW5jdGlvbl90KiBwcmVpbml0X2FycmF5XzsKKyAgc2l6ZV90IHByZWluaXRfYXJyYXlfY291bnRfOwogCi0gIGxpbmtlcl9mdW5jdGlvbl90KiBpbml0X2FycmF5OwotICBzaXplX3QgaW5pdF9hcnJheV9jb3VudDsKLSAgbGlua2VyX2Z1bmN0aW9uX3QqIGZpbmlfYXJyYXk7Ci0gIHNpemVfdCBmaW5pX2FycmF5X2NvdW50OworICBsaW5rZXJfZnVuY3Rpb25fdCogaW5pdF9hcnJheV87CisgIHNpemVfdCBpbml0X2FycmF5X2NvdW50XzsKKyAgbGlua2VyX2Z1bmN0aW9uX3QqIGZpbmlfYXJyYXlfOworICBzaXplX3QgZmluaV9hcnJheV9jb3VudF87CiAKLSAgbGlua2VyX2Z1bmN0aW9uX3QgaW5pdF9mdW5jOwotICBsaW5rZXJfZnVuY3Rpb25fdCBmaW5pX2Z1bmM7CisgIGxpbmtlcl9mdW5jdGlvbl90IGluaXRfZnVuY187CisgIGxpbmtlcl9mdW5jdGlvbl90IGZpbmlfZnVuY187CiAKICNpZiBkZWZpbmVkKF9fYXJtX18pCisgcHVibGljOgogICAvLyBBUk0gRUFCSSBzZWN0aW9uIHVzZWQgZm9yIHN0YWNrIHVud2luZGluZy4KLSAgdW5zaWduZWQqIEFSTV9leGlkeDsKKyAgdWludDMyX3QqIEFSTV9leGlkeDsKICAgc2l6ZV90IEFSTV9leGlkeF9jb3VudDsKKyBwcml2YXRlOgogI2VsaWYgZGVmaW5lZChfX21pcHNfXykKLSAgdW5zaWduZWQgbWlwc19zeW10YWJubzsKLSAgdW5zaWduZWQgbWlwc19sb2NhbF9nb3RubzsKLSAgdW5zaWduZWQgbWlwc19nb3RzeW07Ci0jZW5kaWYKKyAgdWludDMyX3QgbWlwc19zeW10YWJub187CisgIHVpbnQzMl90IG1pcHNfbG9jYWxfZ290bm9fOworICB1aW50MzJfdCBtaXBzX2dvdHN5bV87CisgIGJvb2wgbWlwc19yZWxvY2F0ZV9nb3QoY29uc3Qgc29pbmZvX2xpc3RfdCYgZ2xvYmFsX2dyb3VwLCBjb25zdCBzb2luZm9fbGlzdF90JiBsb2NhbF9ncm91cCk7CiAKLSAgc2l6ZV90IHJlZl9jb3VudDsKKyNlbmRpZgorICBzaXplX3QgcmVmX2NvdW50XzsKKyBwdWJsaWM6CiAgIGxpbmtfbWFwIGxpbmtfbWFwX2hlYWQ7CiAKICAgYm9vbCBjb25zdHJ1Y3RvcnNfY2FsbGVkOwpAQCAtMjAxLDczICsyNjUsMTU3IEBACiAjZW5kaWYKICAgYm9vbCBoYXNfRFRfU1lNQk9MSUM7CiAKLSAgc29pbmZvKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsIG9mZjY0X3QgZmlsZV9vZmZzZXQpOworIHB1YmxpYzoKKyAgc29pbmZvKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsIG9mZjY0X3QgZmlsZV9vZmZzZXQsIGludCBydGxkX2ZsYWdzKTsKIAotICB2b2lkIENhbGxDb25zdHJ1Y3RvcnMoKTsKLSAgdm9pZCBDYWxsRGVzdHJ1Y3RvcnMoKTsKLSAgdm9pZCBDYWxsUHJlSW5pdENvbnN0cnVjdG9ycygpOwotICBib29sIFByZWxpbmtJbWFnZSgpOwotICBib29sIExpbmtJbWFnZShjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbyk7CisgIHZvaWQgY2FsbF9jb25zdHJ1Y3RvcnMoKTsKKyAgdm9pZCBjYWxsX2Rlc3RydWN0b3JzKCk7CisgIHZvaWQgY2FsbF9wcmVfaW5pdF9jb25zdHJ1Y3RvcnMoKTsKKyAgYm9vbCBwcmVsaW5rX2ltYWdlKCk7CisgIGJvb2wgbGlua19pbWFnZShjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pOwogCiAgIHZvaWQgYWRkX2NoaWxkKHNvaW5mbyogY2hpbGQpOwogICB2b2lkIHJlbW92ZV9hbGxfbGlua3MoKTsKIAotICBpbm9fdCBnZXRfc3RfaW5vKCk7Ci0gIGRldl90IGdldF9zdF9kZXYoKTsKLSAgb2ZmNjRfdCBnZXRfZmlsZV9vZmZzZXQoKTsKKyAgaW5vX3QgZ2V0X3N0X2lubygpIGNvbnN0OworICBkZXZfdCBnZXRfc3RfZGV2KCkgY29uc3Q7CisgIG9mZjY0X3QgZ2V0X2ZpbGVfb2Zmc2V0KCkgY29uc3Q7CisKKyAgdWludDMyX3QgZ2V0X3J0bGRfZmxhZ3MoKSBjb25zdDsKKyAgdWludDMyX3QgZ2V0X2R0X2ZsYWdzXzEoKSBjb25zdDsKKyAgdm9pZCBzZXRfZHRfZmxhZ3NfMSh1aW50MzJfdCBkdF9mbGFnc18xKTsKIAogICBzb2luZm9fbGlzdF90JiBnZXRfY2hpbGRyZW4oKTsKKyAgY29uc3Qgc29pbmZvX2xpc3RfdCYgZ2V0X2NoaWxkcmVuKCkgY29uc3Q7CisKICAgc29pbmZvX2xpc3RfdCYgZ2V0X3BhcmVudHMoKTsKIAotICBFbGZXKEFkZHIpIHJlc29sdmVfc3ltYm9sX2FkZHJlc3MoRWxmVyhTeW0pKiBzKTsKKyAgYm9vbCBmaW5kX3N5bWJvbF9ieV9uYW1lKFN5bWJvbE5hbWUmIHN5bWJvbF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmVyc2lvbl9pbmZvKiB2aSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVsZlcoU3ltKSoqIHN5bWJvbCkgY29uc3Q7CisKKyAgRWxmVyhTeW0pKiBmaW5kX3N5bWJvbF9ieV9hZGRyZXNzKGNvbnN0IHZvaWQqIGFkZHIpOworICBFbGZXKEFkZHIpIHJlc29sdmVfc3ltYm9sX2FkZHJlc3MoY29uc3QgRWxmVyhTeW0pKiBzKSBjb25zdDsKIAogICBjb25zdCBjaGFyKiBnZXRfc3RyaW5nKEVsZlcoV29yZCkgaW5kZXgpIGNvbnN0OworICBib29sIGNhbl91bmxvYWQoKSBjb25zdDsKKyAgYm9vbCBpc19nbnVfaGFzaCgpIGNvbnN0OwogCi0gIGJvb2wgaW5saW5lIGhhc19taW5fdmVyc2lvbih1aW50MzJfdCBtaW5fdmVyc2lvbikgY29uc3QgewotICAgIHJldHVybiAoZmxhZ3MgJiBGTEFHX05FV19TT0lORk8pICE9IDAgJiYgdmVyc2lvbiA+PSBtaW5fdmVyc2lvbjsKLSAgfQotIHByaXZhdGU6Ci0gIHZvaWQgQ2FsbEFycmF5KGNvbnN0IGNoYXIqIGFycmF5X25hbWUsIGxpbmtlcl9mdW5jdGlvbl90KiBmdW5jdGlvbnMsIHNpemVfdCBjb3VudCwgYm9vbCByZXZlcnNlKTsKLSAgdm9pZCBDYWxsRnVuY3Rpb24oY29uc3QgY2hhciogZnVuY3Rpb25fbmFtZSwgbGlua2VyX2Z1bmN0aW9uX3QgZnVuY3Rpb24pOwotI2lmIGRlZmluZWQoVVNFX1JFTEEpCi0gIGludCBSZWxvY2F0ZShFbGZXKFJlbGEpKiByZWxhLCB1bnNpZ25lZCBjb3VudCk7CisgIGJvb2wgaW5saW5lIGhhc19taW5fdmVyc2lvbih1aW50MzJfdCBtaW5fdmVyc2lvbiBfX3VudXNlZCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgICByZXR1cm4gKGZsYWdzXyAmIEZMQUdfTkVXX1NPSU5GTykgIT0gMCAmJiB2ZXJzaW9uXyA+PSBtaW5fdmVyc2lvbjsKICNlbHNlCi0gIGludCBSZWxvY2F0ZShFbGZXKFJlbCkqIHJlbCwgdW5zaWduZWQgY291bnQpOworICAgIHJldHVybiB0cnVlOwogI2VuZGlmCisgIH0KKworICBib29sIGlzX2xpbmtlZCgpIGNvbnN0OworICBib29sIGlzX21haW5fZXhlY3V0YWJsZSgpIGNvbnN0OworCisgIHZvaWQgc2V0X2xpbmtlZCgpOworICB2b2lkIHNldF9saW5rZXJfZmxhZygpOworICB2b2lkIHNldF9tYWluX2V4ZWN1dGFibGUoKTsKKworICB2b2lkIGluY3JlbWVudF9yZWZfY291bnQoKTsKKyAgc2l6ZV90IGRlY3JlbWVudF9yZWZfY291bnQoKTsKKworICBzb2luZm8qIGdldF9sb2NhbF9ncm91cF9yb290KCkgY29uc3Q7CisKKyAgY29uc3QgY2hhciogZ2V0X3NvbmFtZSgpIGNvbnN0OworICBjb25zdCBjaGFyKiBnZXRfcmVhbHBhdGgoKSBjb25zdDsKKyAgY29uc3QgRWxmVyhWZXJzeW0pKiBnZXRfdmVyc3ltKHNpemVfdCBuKSBjb25zdDsKKyAgRWxmVyhBZGRyKSBnZXRfdmVybmVlZF9wdHIoKSBjb25zdDsKKyAgc2l6ZV90IGdldF92ZXJuZWVkX2NudCgpIGNvbnN0OworICBFbGZXKEFkZHIpIGdldF92ZXJkZWZfcHRyKCkgY29uc3Q7CisgIHNpemVfdCBnZXRfdmVyZGVmX2NudCgpIGNvbnN0OworCisgIGJvb2wgZmluZF92ZXJkZWZfdmVyc2lvbl9pbmRleChjb25zdCB2ZXJzaW9uX2luZm8qIHZpLCBFbGZXKFZlcnN5bSkqIHZlcnN5bSkgY29uc3Q7CisKKyBwcml2YXRlOgorICBib29sIGVsZl9sb29rdXAoU3ltYm9sTmFtZSYgc3ltYm9sX25hbWUsIGNvbnN0IHZlcnNpb25faW5mbyogdmksIHVpbnQzMl90KiBzeW1ib2xfaW5kZXgpIGNvbnN0OworICBFbGZXKFN5bSkqIGVsZl9hZGRyX2xvb2t1cChjb25zdCB2b2lkKiBhZGRyKTsKKyAgYm9vbCBnbnVfbG9va3VwKFN5bWJvbE5hbWUmIHN5bWJvbF9uYW1lLCBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLCB1aW50MzJfdCogc3ltYm9sX2luZGV4KSBjb25zdDsKKyAgRWxmVyhTeW0pKiBnbnVfYWRkcl9sb29rdXAoY29uc3Qgdm9pZCogYWRkcik7CisKKyAgdm9pZCBjYWxsX2FycmF5KGNvbnN0IGNoYXIqIGFycmF5X25hbWUsIGxpbmtlcl9mdW5jdGlvbl90KiBmdW5jdGlvbnMsIHNpemVfdCBjb3VudCwgYm9vbCByZXZlcnNlKTsKKyAgdm9pZCBjYWxsX2Z1bmN0aW9uKGNvbnN0IGNoYXIqIGZ1bmN0aW9uX25hbWUsIGxpbmtlcl9mdW5jdGlvbl90IGZ1bmN0aW9uKTsKKyAgdGVtcGxhdGU8dHlwZW5hbWUgRWxmUmVsSXRlcmF0b3JUPgorICBib29sIHJlbG9jYXRlKEVsZlJlbEl0ZXJhdG9yVCYmIHJlbF9pdGVyYXRvciwgY29uc3Qgc29pbmZvX2xpc3RfdCYgZ2xvYmFsX2dyb3VwLAorICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwKTsKIAogIHByaXZhdGU6CiAgIC8vIFRoaXMgcGFydCBvZiB0aGUgc3RydWN0dXJlIGlzIG9ubHkgYXZhaWxhYmxlCiAgIC8vIHdoZW4gRkxBR19ORVdfU09JTkZPIGlzIHNldCBpbiB0aGlzLT5mbGFncy4KLSAgdWludDMyX3QgdmVyc2lvbjsKKyAgdWludDMyX3QgdmVyc2lvbl87CiAKICAgLy8gdmVyc2lvbiA+PSAwCi0gIGRldl90IHN0X2RldjsKLSAgaW5vX3Qgc3RfaW5vOworICBkZXZfdCBzdF9kZXZfOworICBpbm9fdCBzdF9pbm9fOwogCiAgIC8vIGRlcGVuZGVuY3kgZ3JhcGgKLSAgc29pbmZvX2xpc3RfdCBjaGlsZHJlbjsKLSAgc29pbmZvX2xpc3RfdCBwYXJlbnRzOworICBzb2luZm9fbGlzdF90IGNoaWxkcmVuXzsKKyAgc29pbmZvX2xpc3RfdCBwYXJlbnRzXzsKIAogICAvLyB2ZXJzaW9uID49IDEKLSAgb2ZmNjRfdCBmaWxlX29mZnNldDsKLSAgaW50IHJ0bGRfZmxhZ3M7Ci0gIHNpemVfdCBzdHJ0YWJfc2l6ZTsKKyAgb2ZmNjRfdCBmaWxlX29mZnNldF87CisgIHVpbnQzMl90IHJ0bGRfZmxhZ3NfOworICB1aW50MzJfdCBkdF9mbGFnc18xXzsKKyAgc2l6ZV90IHN0cnRhYl9zaXplXzsKKworICAvLyB2ZXJzaW9uID49IDIKKworICBzaXplX3QgZ251X25idWNrZXRfOworICB1aW50MzJfdCogZ251X2J1Y2tldF87CisgIHVpbnQzMl90KiBnbnVfY2hhaW5fOworICB1aW50MzJfdCBnbnVfbWFza3dvcmRzXzsKKyAgdWludDMyX3QgZ251X3NoaWZ0Ml87CisgIEVsZlcoQWRkcikqIGdudV9ibG9vbV9maWx0ZXJfOworCisgIHNvaW5mbyogbG9jYWxfZ3JvdXBfcm9vdF87CisKKyAgdWludDhfdCogYW5kcm9pZF9yZWxvY3NfOworICBzaXplX3QgYW5kcm9pZF9yZWxvY3Nfc2l6ZV87CisKKyAgY29uc3QgY2hhciogc29uYW1lXzsKKyAgc3RkOjpzdHJpbmcgcmVhbHBhdGhfOworCisgIGNvbnN0IEVsZlcoVmVyc3ltKSogdmVyc3ltXzsKKworICBFbGZXKEFkZHIpIHZlcmRlZl9wdHJfOworICBzaXplX3QgdmVyZGVmX2NudF87CisKKyAgRWxmVyhBZGRyKSB2ZXJuZWVkX3B0cl87CisgIHNpemVfdCB2ZXJuZWVkX2NudF87CiAKICAgZnJpZW5kIHNvaW5mbyogZ2V0X2xpYmRsX2luZm8oKTsKIH07CiAKLWV4dGVybiBzb2luZm8qIGdldF9saWJkbF9pbmZvKCk7Citib29sIHNvaW5mb19kb19sb29rdXAoc29pbmZvKiBzaV9mcm9tLCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLAorICAgICAgICAgICAgICAgICAgICAgIHNvaW5mbyoqIHNpX2ZvdW5kX2luLCBjb25zdCBzb2luZm86OnNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm86OnNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwLCBjb25zdCBFbGZXKFN5bSkqKiBzeW1ib2wpOworCitlbnVtIFJlbG9jYXRpb25LaW5kIHsKKyAga1JlbG9jQWJzb2x1dGUgPSAwLAorICBrUmVsb2NSZWxhdGl2ZSwKKyAga1JlbG9jQ29weSwKKyAga1JlbG9jU3ltYm9sLAorICBrUmVsb2NNYXgKK307CisKK3ZvaWQgY291bnRfcmVsb2NhdGlvbihSZWxvY2F0aW9uS2luZCBraW5kKTsKKworc29pbmZvKiBnZXRfbGliZGxfaW5mbygpOwogCiB2b2lkIGRvX2FuZHJvaWRfZ2V0X0xEX0xJQlJBUllfUEFUSChjaGFyKiwgc2l6ZV90KTsKIHZvaWQgZG9fYW5kcm9pZF91cGRhdGVfTERfTElCUkFSWV9QQVRIKGNvbnN0IGNoYXIqIGxkX2xpYnJhcnlfcGF0aCk7CiBzb2luZm8qIGRvX2Rsb3Blbihjb25zdCBjaGFyKiBuYW1lLCBpbnQgZmxhZ3MsIGNvbnN0IGFuZHJvaWRfZGxleHRpbmZvKiBleHRpbmZvKTsKIHZvaWQgZG9fZGxjbG9zZShzb2luZm8qIHNpKTsKIAotRWxmVyhTeW0pKiBkbHN5bV9saW5lYXJfbG9va3VwKGNvbnN0IGNoYXIqIG5hbWUsIHNvaW5mbyoqIGZvdW5kLCBzb2luZm8qIHN0YXJ0KTsKK2NvbnN0IEVsZlcoU3ltKSogZGxzeW1fbGluZWFyX2xvb2t1cChjb25zdCBjaGFyKiBuYW1lLCBzb2luZm8qKiBmb3VuZCwgc29pbmZvKiBjYWxsZXIsIHZvaWQqIGhhbmRsZSk7CiBzb2luZm8qIGZpbmRfY29udGFpbmluZ19saWJyYXJ5KGNvbnN0IHZvaWQqIGFkZHIpOwogCi1FbGZXKFN5bSkqIGRsYWRkcl9maW5kX3N5bWJvbChzb2luZm8qIHNpLCBjb25zdCB2b2lkKiBhZGRyKTsKLUVsZlcoU3ltKSogZGxzeW1faGFuZGxlX2xvb2t1cChzb2luZm8qIHNpLCBzb2luZm8qKiBmb3VuZCwgY29uc3QgY2hhciogbmFtZSk7Citjb25zdCBFbGZXKFN5bSkqIGRsc3ltX2hhbmRsZV9sb29rdXAoc29pbmZvKiBzaSwgc29pbmZvKiogZm91bmQsIGNvbnN0IGNoYXIqIG5hbWUpOwogCiB2b2lkIGRlYnVnZ2VyZF9pbml0KCk7CiBleHRlcm4gIkMiIGFib3J0X21zZ190KiBnX2Fib3J0X21lc3NhZ2U7CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5jcHAgYi9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5jcHAKaW5kZXggOTIyMjBlOC4uMWIxNmNmMSAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlcl9hbGxvY2F0b3IuY3BwCisrKyBiL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKICAqCiAgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKICAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KQEAgLTEzLDEyMCArMTMsMzM0IEBACiAgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLworCiAjaW5jbHVkZSAibGlua2VyX2FsbG9jYXRvci5oIgotI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSAibGlua2VyLmgiCisKKyNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3lzL21tYW4uaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3ByY3RsLmgiCiAKLXN0cnVjdCBMaW5rZXJBbGxvY2F0b3JQYWdlIHsKLSAgTGlua2VyQWxsb2NhdG9yUGFnZSogbmV4dDsKLSAgdWludDhfdCBieXRlc1tQQUdFX1NJWkUtc2l6ZW9mKExpbmtlckFsbG9jYXRvclBhZ2UqKV07Ci19OworLy8KKy8vIExpbmtlck1lbWVvcnlBbGxvY2F0b3IgaXMgZ2VuZXJhbCBwdXJwb3NlIGFsbG9jYXRvcgorLy8gZGVzaWduZWQgdG8gcHJvdmlkZSB0aGUgc2FtZSBmdW5jdGlvbmFsaXR5IGFzIHRoZSBtYWxsb2MvZnJlZS9yZWFsbG9jCisvLyBsaWJjIGZ1bmN0aW9ucy4KKy8vCisvLyBPbiBhbGxvYzoKKy8vIElmIHNpemUgaXMgPj0gMWsgYWxsb2NhdG9yIHByb3hpZXMgbWFsbG9jIGNhbGwgZGlyZWN0bHkgdG8gbW1hcAorLy8gSWYgc2l6ZSA8IDFrIGFsbG9jYXRvciB1c2VzIFNtYWxsT2JqZWN0QWxsb2NhdG9yIGZvciB0aGUgc2l6ZQorLy8gcm91bmRlZCB1cCB0byB0aGUgbmVhcmVzdCBwb3dlciBvZiB0d28uCisvLworLy8gT24gZnJlZToKKy8vCisvLyBGb3IgYSBwb2ludGVyIGFsbG9jYXRlZCB1c2luZyBwcm94eS10by1tbWFwIGFsbG9jYXRvciB1bm1hcHMKKy8vIHRoZSBtZW1vcnkuCisvLworLy8gRm9yIGEgcG9pbnRlciBhbGxvY2F0ZWQgdXNpbmcgU21hbGxPYmplY3RBbGxvY2F0b3IgaXQgYWRkcworLy8gdGhlIGJsb2NrIHRvIGZyZWVfYmxvY2tzX2xpc3RfLiBJZiB0aGUgbnVtYmVyIG9mIGZyZWUgcGFnZXMgcmVhY2hlcyAyLAorLy8gU21hbGxPYmplY3RBbGxvY2F0b3IgbXVubWFwcyBvbmUgb2YgdGhlIHBhZ2VzIGtlZXBpbmcgdGhlIG90aGVyIG9uZQorLy8gaW4gcmVzZXJ2ZS4KIAotc3RydWN0IEZyZWVCbG9ja0luZm8gewotICB2b2lkKiBuZXh0X2Jsb2NrOwotICBzaXplX3QgbnVtX2ZyZWVfYmxvY2tzOwotfTsKK3N0YXRpYyBjb25zdCBjaGFyIGtTaWduYXR1cmVbNF0gPSB7J0wnLCAnTScsICdBJywgMX07CiAKLUxpbmtlckJsb2NrQWxsb2NhdG9yOjpMaW5rZXJCbG9ja0FsbG9jYXRvcihzaXplX3QgYmxvY2tfc2l6ZSkKLSAgOiBibG9ja19zaXplXyhibG9ja19zaXplIDwgc2l6ZW9mKEZyZWVCbG9ja0luZm8pID8gc2l6ZW9mKEZyZWVCbG9ja0luZm8pIDogYmxvY2tfc2l6ZSksCi0gICAgcGFnZV9saXN0XyhudWxscHRyKSwKLSAgICBmcmVlX2Jsb2NrX2xpc3RfKG51bGxwdHIpCi17fQorc3RhdGljIGNvbnN0IHNpemVfdCBrU21hbGxPYmplY3RNYXhTaXplID0gMSA8PCBrU21hbGxPYmplY3RNYXhTaXplTG9nMjsKIAotdm9pZCogTGlua2VyQmxvY2tBbGxvY2F0b3I6OmFsbG9jKCkgewotICBpZiAoZnJlZV9ibG9ja19saXN0XyA9PSBudWxscHRyKSB7Ci0gICAgY3JlYXRlX25ld19wYWdlKCk7Ci0gIH0KKy8vIFRoaXMgdHlwZSBpcyB1c2VkIGZvciBsYXJnZSBhbGxvY2F0aW9ucyAod2l0aCBzaXplID4xaykKK3N0YXRpYyBjb25zdCB1aW50MzJfdCBrTGFyZ2VPYmplY3QgPSAxMTE7CiAKLSAgRnJlZUJsb2NrSW5mbyogYmxvY2tfaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KGZyZWVfYmxvY2tfbGlzdF8pOwotICBpZiAoYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzID4gMSkgewotICAgIEZyZWVCbG9ja0luZm8qIG5leHRfYmxvY2tfaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KAotICAgICAgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oZnJlZV9ibG9ja19saXN0XykgKyBibG9ja19zaXplXyk7Ci0gICAgbmV4dF9ibG9ja19pbmZvLT5uZXh0X2Jsb2NrID0gYmxvY2tfaW5mby0+bmV4dF9ibG9jazsKLSAgICBuZXh0X2Jsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyA9IGJsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyAtIDE7Ci0gICAgZnJlZV9ibG9ja19saXN0XyA9IG5leHRfYmxvY2tfaW5mbzsKLSAgfSBlbHNlIHsKLSAgICBmcmVlX2Jsb2NrX2xpc3RfID0gYmxvY2tfaW5mby0+bmV4dF9ibG9jazsKLSAgfQotCi0gIG1lbXNldChibG9ja19pbmZvLCAwLCBibG9ja19zaXplXyk7Ci0KLSAgcmV0dXJuIGJsb2NrX2luZm87Citib29sIG9wZXJhdG9yPChjb25zdCBzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQmIG9uZSwgY29uc3Qgc21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkJiB0d28pIHsKKyAgcmV0dXJuIG9uZS5wYWdlX2FkZHIgPCB0d28ucGFnZV9hZGRyOwogfQogCi12b2lkIExpbmtlckJsb2NrQWxsb2NhdG9yOjpmcmVlKHZvaWQqIGJsb2NrKSB7Ci0gIGlmIChibG9jayA9PSBudWxscHRyKSB7CitzdGF0aWMgaW5saW5lIHVpbnQxNl90IGxvZzIoc2l6ZV90IG51bWJlcikgeworICB1aW50MTZfdCByZXN1bHQgPSAwOworICBudW1iZXItLTsKKworICB3aGlsZSAobnVtYmVyICE9IDApIHsKKyAgICByZXN1bHQrKzsKKyAgICBudW1iZXIgPj49IDE7CisgIH0KKworICByZXR1cm4gcmVzdWx0OworfQorCitMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6TGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3IoKQorICAgIDogdHlwZV8oMCksIG5hbWVfKG51bGxwdHIpLCBibG9ja19zaXplXygwKSwgZnJlZV9wYWdlc19jbnRfKDApLCBmcmVlX2Jsb2Nrc19saXN0XyhudWxscHRyKSB7fQorCit2b2lkKiBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6YWxsb2MoKSB7CisgIGlmIChmcmVlX2Jsb2Nrc19saXN0XyA9PSBudWxscHRyKSB7CisgICAgYWxsb2NfcGFnZSgpOworICB9CisKKyAgc21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCogYmxvY2tfcmVjb3JkID0gZnJlZV9ibG9ja3NfbGlzdF87CisgIGlmIChibG9ja19yZWNvcmQtPmZyZWVfYmxvY2tzX2NudCA+IDEpIHsKKyAgICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBuZXh0X2ZyZWUgPSByZWludGVycHJldF9jYXN0PHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqPigKKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx1aW50OF90Kj4oYmxvY2tfcmVjb3JkKSArIGJsb2NrX3NpemVfKTsKKyAgICBuZXh0X2ZyZWUtPm5leHQgPSBibG9ja19yZWNvcmQtPm5leHQ7CisgICAgbmV4dF9mcmVlLT5mcmVlX2Jsb2Nrc19jbnQgPSBibG9ja19yZWNvcmQtPmZyZWVfYmxvY2tzX2NudCAtIDE7CisgICAgZnJlZV9ibG9ja3NfbGlzdF8gPSBuZXh0X2ZyZWU7CisgIH0gZWxzZSB7CisgICAgZnJlZV9ibG9ja3NfbGlzdF8gPSBibG9ja19yZWNvcmQtPm5leHQ7CisgIH0KKworICAvLyBib29ra2VlcGluZy4uLgorICBhdXRvIHBhZ2VfcmVjb3JkID0gZmluZF9wYWdlX3JlY29yZChibG9ja19yZWNvcmQpOworCisgIGlmIChwYWdlX3JlY29yZC0+YWxsb2NhdGVkX2Jsb2Nrc19jbnQgPT0gMCkgeworICAgIGZyZWVfcGFnZXNfY250Xy0tOworICB9CisKKyAgcGFnZV9yZWNvcmQtPmZyZWVfYmxvY2tzX2NudC0tOworICBwYWdlX3JlY29yZC0+YWxsb2NhdGVkX2Jsb2Nrc19jbnQrKzsKKworICBtZW1zZXQoYmxvY2tfcmVjb3JkLCAwLCBibG9ja19zaXplXyk7CisKKyAgcmV0dXJuIGJsb2NrX3JlY29yZDsKK30KKwordm9pZCBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6ZnJlZV9wYWdlKGxpbmtlcl92ZWN0b3JfdDo6aXRlcmF0b3IgcGFnZV9yZWNvcmQpIHsKKyAgdm9pZCogcGFnZV9zdGFydCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHBhZ2VfcmVjb3JkLT5wYWdlX2FkZHIpOworICB2b2lkKiBwYWdlX2VuZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwYWdlX3N0YXJ0KSArIFBBR0VfU0laRSk7CisKKyAgd2hpbGUgKGZyZWVfYmxvY2tzX2xpc3RfICE9IG51bGxwdHIgJiYKKyAgICAgIGZyZWVfYmxvY2tzX2xpc3RfID4gcGFnZV9zdGFydCAmJgorICAgICAgZnJlZV9ibG9ja3NfbGlzdF8gPCBwYWdlX2VuZCkgeworICAgIGZyZWVfYmxvY2tzX2xpc3RfID0gZnJlZV9ibG9ja3NfbGlzdF8tPm5leHQ7CisgIH0KKworICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBjdXJyZW50ID0gZnJlZV9ibG9ja3NfbGlzdF87CisKKyAgd2hpbGUgKGN1cnJlbnQgIT0gbnVsbHB0cikgeworICAgIHdoaWxlIChjdXJyZW50LT5uZXh0ID4gcGFnZV9zdGFydCAmJiBjdXJyZW50LT5uZXh0IDwgcGFnZV9lbmQpIHsKKyAgICAgIGN1cnJlbnQtPm5leHQgPSBjdXJyZW50LT5uZXh0LT5uZXh0OworICAgIH0KKworICAgIGN1cnJlbnQgPSBjdXJyZW50LT5uZXh0OworICB9CisKKyAgbXVubWFwKHBhZ2Vfc3RhcnQsIFBBR0VfU0laRSk7CisgIHBhZ2VfcmVjb3Jkc18uZXJhc2UocGFnZV9yZWNvcmQpOworICBmcmVlX3BhZ2VzX2NudF8tLTsKK30KKwordm9pZCBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6ZnJlZSh2b2lkKiBwdHIpIHsKKyAgYXV0byBwYWdlX3JlY29yZCA9IGZpbmRfcGFnZV9yZWNvcmQocHRyKTsKKworICBzc2l6ZV90IG9mZnNldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIpIC0gc2l6ZW9mKHBhZ2VfaW5mbyk7CisKKyAgaWYgKG9mZnNldCAlIGJsb2NrX3NpemVfICE9IDApIHsKKyAgICBfX2xpYmNfZmF0YWwoImludmFsaWQgcG9pbnRlcjogJXAgKGJsb2NrX3NpemU9JXpkKSIsIHB0ciwgYmxvY2tfc2l6ZV8pOworICB9CisKKyAgbWVtc2V0KHB0ciwgMCwgYmxvY2tfc2l6ZV8pOworICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBibG9ja19yZWNvcmQgPSByZWludGVycHJldF9jYXN0PHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqPihwdHIpOworCisgIGJsb2NrX3JlY29yZC0+bmV4dCA9IGZyZWVfYmxvY2tzX2xpc3RfOworICBibG9ja19yZWNvcmQtPmZyZWVfYmxvY2tzX2NudCA9IDE7CisKKyAgZnJlZV9ibG9ja3NfbGlzdF8gPSBibG9ja19yZWNvcmQ7CisKKyAgcGFnZV9yZWNvcmQtPmZyZWVfYmxvY2tzX2NudCsrOworICBwYWdlX3JlY29yZC0+YWxsb2NhdGVkX2Jsb2Nrc19jbnQtLTsKKworICBpZiAocGFnZV9yZWNvcmQtPmFsbG9jYXRlZF9ibG9ja3NfY250ID09IDApIHsKKyAgICBpZiAoZnJlZV9wYWdlc19jbnRfKysgPiAxKSB7CisgICAgICAvLyBpZiB3ZSBhbHJlYWR5IGhhdmUgYSBmcmVlIHBhZ2UgLSB1bm1hcCB0aGlzIG9uZS4KKyAgICAgIGZyZWVfcGFnZShwYWdlX3JlY29yZCk7CisgICAgfQorICB9Cit9CisKK3ZvaWQgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3I6OmluaXQodWludDMyX3QgdHlwZSwgc2l6ZV90IGJsb2NrX3NpemUsIGNvbnN0IGNoYXIqIG5hbWUpIHsKKyAgdHlwZV8gPSB0eXBlOworICBibG9ja19zaXplXyA9IGJsb2NrX3NpemU7CisgIG5hbWVfID0gbmFtZTsKK30KKworbGlua2VyX3ZlY3Rvcl90OjppdGVyYXRvciBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6ZmluZF9wYWdlX3JlY29yZCh2b2lkKiBwdHIpIHsKKyAgdm9pZCogYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KFBBR0VfU1RBUlQocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHB0cikpKTsKKyAgc21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkIGJvdW5kYXJ5OworICBib3VuZGFyeS5wYWdlX2FkZHIgPSBhZGRyOworICBsaW5rZXJfdmVjdG9yX3Q6Oml0ZXJhdG9yIGl0ID0gc3RkOjpsb3dlcl9ib3VuZCgKKyAgICAgIHBhZ2VfcmVjb3Jkc18uYmVnaW4oKSwgcGFnZV9yZWNvcmRzXy5lbmQoKSwgYm91bmRhcnkpOworCisgIGlmIChpdCA9PSBwYWdlX3JlY29yZHNfLmVuZCgpIHx8IGl0LT5wYWdlX2FkZHIgIT0gYWRkcikgeworICAgIC8vIG5vdCBmb3VuZC4uLgorICAgIF9fbGliY19mYXRhbCgicGFnZSByZWNvcmQgZm9yICVwIHdhcyBub3QgZm91bmQgKGJsb2NrX3NpemU9JXpkKSIsIHB0ciwgYmxvY2tfc2l6ZV8pOworICB9CisKKyAgcmV0dXJuIGl0OworfQorCit2b2lkIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjpjcmVhdGVfcGFnZV9yZWNvcmQodm9pZCogcGFnZV9hZGRyLCBzaXplX3QgZnJlZV9ibG9ja3NfY250KSB7CisgIHNtYWxsX29iamVjdF9wYWdlX3JlY29yZCByZWNvcmQ7CisgIHJlY29yZC5wYWdlX2FkZHIgPSBwYWdlX2FkZHI7CisgIHJlY29yZC5mcmVlX2Jsb2Nrc19jbnQgPSBmcmVlX2Jsb2Nrc19jbnQ7CisgIHJlY29yZC5hbGxvY2F0ZWRfYmxvY2tzX2NudCA9IDA7CisKKyAgbGlua2VyX3ZlY3Rvcl90OjppdGVyYXRvciBpdCA9IHN0ZDo6bG93ZXJfYm91bmQoCisgICAgICBwYWdlX3JlY29yZHNfLmJlZ2luKCksIHBhZ2VfcmVjb3Jkc18uZW5kKCksIHJlY29yZCk7CisgIHBhZ2VfcmVjb3Jkc18uaW5zZXJ0KGl0LCByZWNvcmQpOworfQorCit2b2lkIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjphbGxvY19wYWdlKCkgeworICB2b2lkKiBtYXBfcHRyID0gbW1hcChudWxscHRyLCBQQUdFX1NJWkUsCisgICAgICBQUk9UX1JFQUR8UFJPVF9XUklURSwgTUFQX1BSSVZBVEV8TUFQX0FOT05ZTU9VUywgMCwgMCk7CisgIGlmIChtYXBfcHRyID09IE1BUF9GQUlMRUQpIHsKKyAgICBfX2xpYmNfZmF0YWwoIm1tYXAgZmFpbGVkIik7CisgIH0KKworICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgbWFwX3B0ciwgUEFHRV9TSVpFLCBuYW1lXyk7CisKKyAgbWVtc2V0KG1hcF9wdHIsIDAsIFBBR0VfU0laRSk7CisKKyAgcGFnZV9pbmZvKiBpbmZvID0gcmVpbnRlcnByZXRfY2FzdDxwYWdlX2luZm8qPihtYXBfcHRyKTsKKyAgbWVtY3B5KGluZm8tPnNpZ25hdHVyZSwga1NpZ25hdHVyZSwgc2l6ZW9mKGtTaWduYXR1cmUpKTsKKyAgaW5mby0+dHlwZSA9IHR5cGVfOworICBpbmZvLT5hbGxvY2F0b3JfYWRkciA9IHRoaXM7CisKKyAgc2l6ZV90IGZyZWVfYmxvY2tzX2NudCA9IChQQUdFX1NJWkUgLSBzaXplb2YocGFnZV9pbmZvKSkvYmxvY2tfc2l6ZV87CisKKyAgY3JlYXRlX3BhZ2VfcmVjb3JkKG1hcF9wdHIsIGZyZWVfYmxvY2tzX2NudCk7CisKKyAgc21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCogZmlyc3RfYmxvY2sgPSByZWludGVycHJldF9jYXN0PHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqPihpbmZvICsgMSk7CisKKyAgZmlyc3RfYmxvY2stPm5leHQgPSBmcmVlX2Jsb2Nrc19saXN0XzsKKyAgZmlyc3RfYmxvY2stPmZyZWVfYmxvY2tzX2NudCA9IGZyZWVfYmxvY2tzX2NudDsKKworICBmcmVlX2Jsb2Nrc19saXN0XyA9IGZpcnN0X2Jsb2NrOworfQorCisKK0xpbmtlck1lbW9yeUFsbG9jYXRvcjo6TGlua2VyTWVtb3J5QWxsb2NhdG9yKCkgeworICBzdGF0aWMgY29uc3QgY2hhciogYWxsb2NhdG9yX25hbWVzW2tTbWFsbE9iamVjdEFsbG9jYXRvcnNDb3VudF0gPSB7CisgICAgImxpbmtlcl9hbGxvY18xNiIsIC8vIDJeNAorICAgICJsaW5rZXJfYWxsb2NfMzIiLCAvLyAyXjUKKyAgICAibGlua2VyX2FsbG9jXzY0IiwgLy8gYW5kIHNvIG9uLi4uCisgICAgImxpbmtlcl9hbGxvY18xMjgiLAorICAgICJsaW5rZXJfYWxsb2NfMjU2IiwKKyAgICAibGlua2VyX2FsbG9jXzUxMiIsCisgICAgImxpbmtlcl9hbGxvY18xMDI0IiwgLy8gMl4xMAorICB9OworCisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwga1NtYWxsT2JqZWN0QWxsb2NhdG9yc0NvdW50OyArK2kpIHsKKyAgICB1aW50MzJfdCB0eXBlID0gaSArIGtTbWFsbE9iamVjdE1pblNpemVMb2cyOworICAgIGFsbG9jYXRvcnNfW2ldLmluaXQodHlwZSwgMSA8PCB0eXBlLCBhbGxvY2F0b3JfbmFtZXNbaV0pOworICB9Cit9CisKK3ZvaWQqIExpbmtlck1lbW9yeUFsbG9jYXRvcjo6YWxsb2NfbW1hcChzaXplX3Qgc2l6ZSkgeworICBzaXplX3QgYWxsb2NhdGVkX3NpemUgPSBQQUdFX0VORChzaXplICsgc2l6ZW9mKHBhZ2VfaW5mbykpOworICB2b2lkKiBtYXBfcHRyID0gbW1hcChudWxscHRyLCBhbGxvY2F0ZWRfc2l6ZSwKKyAgICAgIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBNQVBfUFJJVkFURXxNQVBfQU5PTllNT1VTLCAwLCAwKTsKKworICBpZiAobWFwX3B0ciA9PSBNQVBfRkFJTEVEKSB7CisgICAgX19saWJjX2ZhdGFsKCJtbWFwIGZhaWxlZCIpOworICB9CisKKyAgcHJjdGwoUFJfU0VUX1ZNQSwgUFJfU0VUX1ZNQV9BTk9OX05BTUUsIG1hcF9wdHIsIGFsbG9jYXRlZF9zaXplLCAibGlua2VyX2FsbG9jX2xvYiIpOworCisgIG1lbXNldChtYXBfcHRyLCAwLCBhbGxvY2F0ZWRfc2l6ZSk7CisKKyAgcGFnZV9pbmZvKiBpbmZvID0gcmVpbnRlcnByZXRfY2FzdDxwYWdlX2luZm8qPihtYXBfcHRyKTsKKyAgbWVtY3B5KGluZm8tPnNpZ25hdHVyZSwga1NpZ25hdHVyZSwgc2l6ZW9mKGtTaWduYXR1cmUpKTsKKyAgaW5mby0+dHlwZSA9IGtMYXJnZU9iamVjdDsKKyAgaW5mby0+YWxsb2NhdGVkX3NpemUgPSBhbGxvY2F0ZWRfc2l6ZTsKKworICByZXR1cm4gaW5mbyArIDE7Cit9CisKK3ZvaWQqIExpbmtlck1lbW9yeUFsbG9jYXRvcjo6YWxsb2Moc2l6ZV90IHNpemUpIHsKKyAgLy8gdHJlYXQgYWxsb2MoMCkgYXMgYWxsb2MoMSkKKyAgaWYgKHNpemUgPT0gMCkgeworICAgIHNpemUgPSAxOworICB9CisKKyAgaWYgKHNpemUgPiBrU21hbGxPYmplY3RNYXhTaXplKSB7CisgICAgcmV0dXJuIGFsbG9jX21tYXAoc2l6ZSk7CisgIH0KKworICB1aW50MTZfdCBsb2cyX3NpemUgPSBsb2cyKHNpemUpOworCisgIGlmIChsb2cyX3NpemUgPCBrU21hbGxPYmplY3RNaW5TaXplTG9nMikgeworICAgIGxvZzJfc2l6ZSA9IGtTbWFsbE9iamVjdE1pblNpemVMb2cyOworICB9CisKKyAgcmV0dXJuIGdldF9zbWFsbF9vYmplY3RfYWxsb2NhdG9yKGxvZzJfc2l6ZSktPmFsbG9jKCk7Cit9CisKK3BhZ2VfaW5mbyogTGlua2VyTWVtb3J5QWxsb2NhdG9yOjpnZXRfcGFnZV9pbmZvKHZvaWQqIHB0cikgeworICBwYWdlX2luZm8qIGluZm8gPSByZWludGVycHJldF9jYXN0PHBhZ2VfaW5mbyo+KFBBR0VfU1RBUlQocmVpbnRlcnByZXRfY2FzdDxzaXplX3Q+KHB0cikpKTsKKyAgaWYgKG1lbWNtcChpbmZvLT5zaWduYXR1cmUsIGtTaWduYXR1cmUsIHNpemVvZihrU2lnbmF0dXJlKSkgIT0gMCkgeworICAgIF9fbGliY19mYXRhbCgiaW52YWxpZCBwb2ludGVyICVwIChwYWdlIHNpZ25hdHVyZSBtaXNtYXRjaCkiLCBwdHIpOworICB9CisKKyAgcmV0dXJuIGluZm87Cit9CisKK3ZvaWQqIExpbmtlck1lbW9yeUFsbG9jYXRvcjo6cmVhbGxvYyh2b2lkKiBwdHIsIHNpemVfdCBzaXplKSB7CisgIGlmIChwdHIgPT0gbnVsbHB0cikgeworICAgIHJldHVybiBhbGxvYyhzaXplKTsKKyAgfQorCisgIGlmIChzaXplID09IDApIHsKKyAgICBmcmVlKHB0cik7CisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KKworICBwYWdlX2luZm8qIGluZm8gPSBnZXRfcGFnZV9pbmZvKHB0cik7CisKKyAgc2l6ZV90IG9sZF9zaXplID0gMDsKKworICBpZiAoaW5mby0+dHlwZSA9PSBrTGFyZ2VPYmplY3QpIHsKKyAgICBvbGRfc2l6ZSA9IGluZm8tPmFsbG9jYXRlZF9zaXplIC0gc2l6ZW9mKHBhZ2VfaW5mbyk7CisgIH0gZWxzZSB7CisgICAgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3IqIGFsbG9jYXRvciA9IGdldF9zbWFsbF9vYmplY3RfYWxsb2NhdG9yKGluZm8tPnR5cGUpOworICAgIGlmIChhbGxvY2F0b3IgIT0gaW5mby0+YWxsb2NhdG9yX2FkZHIpIHsKKyAgICAgIF9fbGliY19mYXRhbCgiaW52YWxpZCBwb2ludGVyICVwIChwYWdlIHNpZ25hdHVyZSBtaXNtYXRjaCkiLCBwdHIpOworICAgIH0KKworICAgIG9sZF9zaXplID0gYWxsb2NhdG9yLT5nZXRfYmxvY2tfc2l6ZSgpOworICB9CisKKyAgaWYgKG9sZF9zaXplIDwgc2l6ZSkgeworICAgIHZvaWQgKnJlc3VsdCA9IGFsbG9jKHNpemUpOworICAgIG1lbWNweShyZXN1bHQsIHB0ciwgb2xkX3NpemUpOworICAgIGZyZWUocHRyKTsKKyAgICByZXR1cm4gcmVzdWx0OworICB9CisKKyAgcmV0dXJuIHB0cjsKK30KKwordm9pZCBMaW5rZXJNZW1vcnlBbGxvY2F0b3I6OmZyZWUodm9pZCogcHRyKSB7CisgIGlmIChwdHIgPT0gbnVsbHB0cikgewogICAgIHJldHVybjsKICAgfQogCi0gIExpbmtlckFsbG9jYXRvclBhZ2UqIHBhZ2UgPSBmaW5kX3BhZ2UoYmxvY2spOworICBwYWdlX2luZm8qIGluZm8gPSBnZXRfcGFnZV9pbmZvKHB0cik7CiAKLSAgaWYgKHBhZ2UgPT0gbnVsbHB0cikgewotICAgIGFib3J0KCk7Ci0gIH0KLQotICBzc2l6ZV90IG9mZnNldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGJsb2NrKSAtIHBhZ2UtPmJ5dGVzOwotCi0gIGlmIChvZmZzZXQgJSBibG9ja19zaXplXyAhPSAwKSB7Ci0gICAgYWJvcnQoKTsKLSAgfQotCi0gIG1lbXNldChibG9jaywgMCwgYmxvY2tfc2l6ZV8pOwotCi0gIEZyZWVCbG9ja0luZm8qIGJsb2NrX2luZm8gPSByZWludGVycHJldF9jYXN0PEZyZWVCbG9ja0luZm8qPihibG9jayk7Ci0KLSAgYmxvY2tfaW5mby0+bmV4dF9ibG9jayA9IGZyZWVfYmxvY2tfbGlzdF87Ci0gIGJsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyA9IDE7Ci0KLSAgZnJlZV9ibG9ja19saXN0XyA9IGJsb2NrX2luZm87Ci19Ci0KLXZvaWQgTGlua2VyQmxvY2tBbGxvY2F0b3I6OnByb3RlY3RfYWxsKGludCBwcm90KSB7Ci0gIGZvciAoTGlua2VyQWxsb2NhdG9yUGFnZSogcGFnZSA9IHBhZ2VfbGlzdF87IHBhZ2UgIT0gbnVsbHB0cjsgcGFnZSA9IHBhZ2UtPm5leHQpIHsKLSAgICBpZiAobXByb3RlY3QocGFnZSwgUEFHRV9TSVpFLCBwcm90KSA9PSAtMSkgewotICAgICAgYWJvcnQoKTsKLSAgICB9Ci0gIH0KLX0KLQotdm9pZCBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6Y3JlYXRlX25ld19wYWdlKCkgewotICBMaW5rZXJBbGxvY2F0b3JQYWdlKiBwYWdlID0gcmVpbnRlcnByZXRfY2FzdDxMaW5rZXJBbGxvY2F0b3JQYWdlKj4obW1hcChudWxscHRyLCBQQUdFX1NJWkUsCi0gICAgICBQUk9UX1JFQUR8UFJPVF9XUklURSwgTUFQX1BSSVZBVEV8TUFQX0FOT05ZTU9VUywgMCwgMCkpOwotICBpZiAocGFnZSA9PSBNQVBfRkFJTEVEKSB7Ci0gICAgYWJvcnQoKTsgLy8gb29tCi0gIH0KLQotICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgcGFnZSwgUEFHRV9TSVpFLCAibGlua2VyX2FsbG9jIik7Ci0KLSAgbWVtc2V0KHBhZ2UsIDAsIFBBR0VfU0laRSk7Ci0KLSAgRnJlZUJsb2NrSW5mbyogZmlyc3RfYmxvY2sgPSByZWludGVycHJldF9jYXN0PEZyZWVCbG9ja0luZm8qPihwYWdlLT5ieXRlcyk7Ci0gIGZpcnN0X2Jsb2NrLT5uZXh0X2Jsb2NrID0gZnJlZV9ibG9ja19saXN0XzsKLSAgZmlyc3RfYmxvY2stPm51bV9mcmVlX2Jsb2NrcyA9IChQQUdFX1NJWkUgLSBzaXplb2YoTGlua2VyQWxsb2NhdG9yUGFnZSopKS9ibG9ja19zaXplXzsKLQotICBmcmVlX2Jsb2NrX2xpc3RfID0gZmlyc3RfYmxvY2s7Ci0KLSAgcGFnZS0+bmV4dCA9IHBhZ2VfbGlzdF87Ci0gIHBhZ2VfbGlzdF8gPSBwYWdlOwotfQotCi1MaW5rZXJBbGxvY2F0b3JQYWdlKiBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6ZmluZF9wYWdlKHZvaWQqIGJsb2NrKSB7Ci0gIGlmIChibG9jayA9PSBudWxscHRyKSB7Ci0gICAgYWJvcnQoKTsKLSAgfQotCi0gIExpbmtlckFsbG9jYXRvclBhZ2UqIHBhZ2UgPSBwYWdlX2xpc3RfOwotICB3aGlsZSAocGFnZSAhPSBudWxscHRyKSB7Ci0gICAgY29uc3QgdWludDhfdCogcGFnZV9wdHIgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4X3QqPihwYWdlKTsKLSAgICBpZiAoYmxvY2sgPj0gKHBhZ2VfcHRyICsgc2l6ZW9mKHBhZ2UtPm5leHQpKSAmJiBibG9jayA8IChwYWdlX3B0ciArIFBBR0VfU0laRSkpIHsKLSAgICAgIHJldHVybiBwYWdlOworICBpZiAoaW5mby0+dHlwZSA9PSBrTGFyZ2VPYmplY3QpIHsKKyAgICBtdW5tYXAoaW5mbywgaW5mby0+YWxsb2NhdGVkX3NpemUpOworICB9IGVsc2UgeworICAgIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yKiBhbGxvY2F0b3IgPSBnZXRfc21hbGxfb2JqZWN0X2FsbG9jYXRvcihpbmZvLT50eXBlKTsKKyAgICBpZiAoYWxsb2NhdG9yICE9IGluZm8tPmFsbG9jYXRvcl9hZGRyKSB7CisgICAgICBfX2xpYmNfZmF0YWwoImludmFsaWQgcG9pbnRlciAlcCAoaW52YWxpZCBhbGxvY2F0b3IgYWRkcmVzcyBmb3IgdGhlIHBhZ2UpIiwgcHRyKTsKICAgICB9CiAKLSAgICBwYWdlID0gcGFnZS0+bmV4dDsKKyAgICBhbGxvY2F0b3ItPmZyZWUocHRyKTsKKyAgfQorfQorCitMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvciogTGlua2VyTWVtb3J5QWxsb2NhdG9yOjpnZXRfc21hbGxfb2JqZWN0X2FsbG9jYXRvcih1aW50MzJfdCB0eXBlKSB7CisgIGlmICh0eXBlIDwga1NtYWxsT2JqZWN0TWluU2l6ZUxvZzIgfHwgdHlwZSA+IGtTbWFsbE9iamVjdE1heFNpemVMb2cyKSB7CisgICAgX19saWJjX2ZhdGFsKCJpbnZhbGlkIHR5cGU6ICV1IiwgdHlwZSk7CiAgIH0KIAotICBhYm9ydCgpOworICByZXR1cm4gJmFsbG9jYXRvcnNfW3R5cGUgLSBrU21hbGxPYmplY3RNaW5TaXplTG9nMl07CiB9CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5oIGIvbGlua2VyL2xpbmtlcl9hbGxvY2F0b3IuaAppbmRleCA1ZDM1NjNmLi4yYWRhZDU2IDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5oCisrKyBiL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CiAgKgogICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CiAgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCkBAIC0xOCw1MyArMTgsMTI2IEBACiAjZGVmaW5lIF9fTElOS0VSX0FMTE9DQVRPUl9ICiAKICNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxsaW1pdHMuaD4KLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19tYWNyb3MuaCIKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorI2luY2x1ZGUgPHN0ZGRlZi5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgogCi1zdHJ1Y3QgTGlua2VyQWxsb2NhdG9yUGFnZTsKKyNpbmNsdWRlIDx2ZWN0b3I+CiAKLS8qCi0gKiBUaGlzIGNsYXNzIGlzIGEgbm9uLXRlbXBsYXRlIHZlcnNpb24gb2YgdGhlIExpbmtlckFsbG9jYXRvcgotICogSXQga2VlcHMgY29kZSBpbnNpZGUgLmNwcCBmaWxlIGJ5IGtlZXBpbmcgdGhlIGludGVyZmFjZQotICogdGVtcGxhdGUtZnJlZS4KLSAqCi0gKiBQbGVhc2UgdXNlIExpbmtlckFsbG9jYXRvcjx0eXBlPiB3aGVyZSBwb3NzaWJsZSAoZXZlcnl3aGVyZSkuCi0gKi8KLWNsYXNzIExpbmtlckJsb2NrQWxsb2NhdG9yIHsKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19wcmN0bC5oIgorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKK2NvbnN0IHVpbnQzMl90IGtTbWFsbE9iamVjdE1heFNpemVMb2cyID0gMTA7Citjb25zdCB1aW50MzJfdCBrU21hbGxPYmplY3RNaW5TaXplTG9nMiA9IDQ7Citjb25zdCB1aW50MzJfdCBrU21hbGxPYmplY3RBbGxvY2F0b3JzQ291bnQgPSBrU21hbGxPYmplY3RNYXhTaXplTG9nMiAtIGtTbWFsbE9iamVjdE1pblNpemVMb2cyICsgMTsKKworY2xhc3MgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3I7CisKKy8vIFRoaXMgc3RydWN0dXJlIGlzIHBsYWNlZCBhdCB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggYWRkcmVzc2FibGUgcGFnZQorLy8gYW5kIGhhcyBhbGwgaW5mb3JtYXRpb24gd2UgbmVlZCB0byBmaW5kIHRoZSBjb3JyZXNwb25kaW5nIG1lbW9yeSBhbGxvY2F0b3IuCitzdHJ1Y3QgcGFnZV9pbmZvIHsKKyAgY2hhciBzaWduYXR1cmVbNF07CisgIHVpbnQzMl90IHR5cGU7CisgIHVuaW9uIHsKKyAgICAvLyB3ZSB1c2UgYWxsb2NhdGVkX3NpemUgZm9yIGxhcmdlIG9iamVjdHMgYWxsb2NhdG9yCisgICAgc2l6ZV90IGFsbG9jYXRlZF9zaXplOworICAgIC8vIGFuZCBhbGxvY2F0b3JfYWRkciBmb3Igc21hbGwgb25lcy4KKyAgICBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvciogYWxsb2NhdG9yX2FkZHI7CisgIH07Cit9OworCitzdHJ1Y3Qgc21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkIHsKKyAgdm9pZCogcGFnZV9hZGRyOworICBzaXplX3QgZnJlZV9ibG9ja3NfY250OworICBzaXplX3QgYWxsb2NhdGVkX2Jsb2Nrc19jbnQ7Cit9OworCisvLyBmb3IgbG93ZXJfYm91bmQuLi4KK2Jvb2wgb3BlcmF0b3I8KGNvbnN0IHNtYWxsX29iamVjdF9wYWdlX3JlY29yZCYgb25lLCBjb25zdCBzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQmIHR3byk7CisKK3N0cnVjdCBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkIHsKKyAgc21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCogbmV4dDsKKyAgc2l6ZV90IGZyZWVfYmxvY2tzX2NudDsKK307CisKKy8vIFRoaXMgaXMgaW1wbGVtZW50YXRpb24gZm9yIHN0ZDo6dmVjdG9yIGFsbG9jYXRvcgordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitjbGFzcyBsaW5rZXJfdmVjdG9yX2FsbG9jYXRvciB7CiAgcHVibGljOgotICBleHBsaWNpdCBMaW5rZXJCbG9ja0FsbG9jYXRvcihzaXplX3QgYmxvY2tfc2l6ZSk7CisgIHR5cGVkZWYgVCB2YWx1ZV90eXBlOworICB0eXBlZGVmIFQqIHBvaW50ZXI7CisgIHR5cGVkZWYgY29uc3QgVCogY29uc3RfcG9pbnRlcjsKKyAgdHlwZWRlZiBUJiByZWZlcmVuY2U7CisgIHR5cGVkZWYgY29uc3QgVCYgY29uc3RfcmVmZXJlbmNlOworICB0eXBlZGVmIHNpemVfdCBzaXplX3R5cGU7CisgIHR5cGVkZWYgcHRyZGlmZl90IGRpZmZlcmVuY2VfdHlwZTsKIAorICBUKiBhbGxvY2F0ZShzaXplX3QgbiwgY29uc3QgVCogaGludCA9IG51bGxwdHIpIHsKKyAgICBzaXplX3Qgc2l6ZSA9IG4gKiBzaXplb2YoVCk7CisgICAgdm9pZCogcHRyID0gbW1hcChjb25zdF9jYXN0PFQqPihoaW50KSwgc2l6ZSwKKyAgICAgICAgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIDAsIDApOworICAgIGlmIChwdHIgPT0gTUFQX0ZBSUxFRCkgeworICAgICAgLy8gU3BlYyBzYXlzIHdlIG5lZWQgdG8gdGhyb3cgc3RkOjpiYWRfYWxsb2MgaGVyZSBidXQgYmVjYXVzZSBvdXIKKyAgICAgIC8vIGNvZGUgZG9lcyBub3Qgc3VwcG9ydCBleGNlcHRpb24gaGFuZGxpbmcgYW55d2F5cyAtIHdlIGFyZSBnb2luZyB0byBhYm9ydC4KKyAgICAgIF9fbGliY19mYXRhbCgibW1hcCBmYWlsZWQiKTsKKyAgICB9CisKKyAgICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgcHRyLCBzaXplLCAibGlua2VyX2FsbG9jX3ZlY3RvciIpOworCisgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KHB0cik7CisgIH0KKworICB2b2lkIGRlYWxsb2NhdGUoVCogcHRyLCBzaXplX3QgbikgeworICAgIG11bm1hcChwdHIsIG4gKiBzaXplb2YoVCkpOworICB9Cit9OworCit0eXBlZGVmCisgICAgc3RkOjp2ZWN0b3I8c21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkLCBsaW5rZXJfdmVjdG9yX2FsbG9jYXRvcjxzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQ+PgorICAgIGxpbmtlcl92ZWN0b3JfdDsKKworCitjbGFzcyBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvciB7CisgcHVibGljOgorICBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcigpOworICB2b2lkIGluaXQodWludDMyX3QgdHlwZSwgc2l6ZV90IGJsb2NrX3NpemUsIGNvbnN0IGNoYXIqIG5hbWUpOwogICB2b2lkKiBhbGxvYygpOwotICB2b2lkIGZyZWUodm9pZCogYmxvY2spOwotICB2b2lkIHByb3RlY3RfYWxsKGludCBwcm90KTsKKyAgdm9pZCBmcmVlKHZvaWQqIHB0cik7CiAKKyAgc2l6ZV90IGdldF9ibG9ja19zaXplKCkgY29uc3QgeyByZXR1cm4gYmxvY2tfc2l6ZV87IH0KICBwcml2YXRlOgotICB2b2lkIGNyZWF0ZV9uZXdfcGFnZSgpOwotICBMaW5rZXJBbGxvY2F0b3JQYWdlKiBmaW5kX3BhZ2Uodm9pZCogYmxvY2spOworICB2b2lkIGFsbG9jX3BhZ2UoKTsKKyAgdm9pZCBmcmVlX3BhZ2UobGlua2VyX3ZlY3Rvcl90OjppdGVyYXRvciBwYWdlX3JlY29yZCk7CisgIGxpbmtlcl92ZWN0b3JfdDo6aXRlcmF0b3IgZmluZF9wYWdlX3JlY29yZCh2b2lkKiBwdHIpOworICB2b2lkIGNyZWF0ZV9wYWdlX3JlY29yZCh2b2lkKiBwYWdlX2FkZHIsIHNpemVfdCBmcmVlX2Jsb2Nrc19jbnQpOwogCisgIHVpbnQzMl90IHR5cGVfOworICBjb25zdCBjaGFyKiBuYW1lXzsKICAgc2l6ZV90IGJsb2NrX3NpemVfOwotICBMaW5rZXJBbGxvY2F0b3JQYWdlKiBwYWdlX2xpc3RfOwotICB2b2lkKiBmcmVlX2Jsb2NrX2xpc3RfOwogCi0gIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihMaW5rZXJCbG9ja0FsbG9jYXRvcik7CisgIHNpemVfdCBmcmVlX3BhZ2VzX2NudF87CisgIHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqIGZyZWVfYmxvY2tzX2xpc3RfOworCisgIC8vIHNvcnRlZCB2ZWN0b3Igb2YgcGFnZSByZWNvcmRzCisgIGxpbmtlcl92ZWN0b3JfdCBwYWdlX3JlY29yZHNfOwogfTsKIAotLyoKLSAqIFdlIGNhbid0IHVzZSBtYWxsb2MoMykgaW4gdGhlIGR5bmFtaWMgbGlua2VyLgotICoKLSAqIEEgc2ltcGxlIGFsbG9jYXRvciBmb3IgdGhlIGR5bmFtaWMgbGlua2VyLiBBbiBhbGxvY2F0b3IgYWxsb2NhdGVzIGluc3RhbmNlcwotICogb2YgYSBzaW5nbGUgZml4ZWQtc2l6ZSB0eXBlLiBBbGxvY2F0aW9ucyBhcmUgYmFja2VkIGJ5IHBhZ2Utc2l6ZWQgcHJpdmF0ZQotICogYW5vbnltb3VzIG1tYXBzLgotICovCi10ZW1wbGF0ZTx0eXBlbmFtZSBUPgotY2xhc3MgTGlua2VyQWxsb2NhdG9yIHsKK2NsYXNzIExpbmtlck1lbW9yeUFsbG9jYXRvciB7CiAgcHVibGljOgotICBMaW5rZXJBbGxvY2F0b3IoKSA6IGJsb2NrX2FsbG9jYXRvcl8oc2l6ZW9mKFQpKSB7fQotICBUKiBhbGxvYygpIHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KGJsb2NrX2FsbG9jYXRvcl8uYWxsb2MoKSk7IH0KLSAgdm9pZCBmcmVlKFQqIHQpIHsgYmxvY2tfYWxsb2NhdG9yXy5mcmVlKHQpOyB9Ci0gIHZvaWQgcHJvdGVjdF9hbGwoaW50IHByb3QpIHsgYmxvY2tfYWxsb2NhdG9yXy5wcm90ZWN0X2FsbChwcm90KTsgfQorICBMaW5rZXJNZW1vcnlBbGxvY2F0b3IoKTsKKyAgdm9pZCogYWxsb2Moc2l6ZV90IHNpemUpOworCisgIC8vIE5vdGUgdGhhdCB0aGlzIGltcGxlbWVudGF0aW9uIG9mIHJlYWxsb2MgbmV2ZXIgc2hyaW5rcyBhbGxvY2F0aW9uCisgIHZvaWQqIHJlYWxsb2Modm9pZCogcHRyLCBzaXplX3Qgc2l6ZSk7CisgIHZvaWQgZnJlZSh2b2lkKiBwdHIpOwogIHByaXZhdGU6Ci0gIExpbmtlckJsb2NrQWxsb2NhdG9yIGJsb2NrX2FsbG9jYXRvcl87Ci0gIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihMaW5rZXJBbGxvY2F0b3IpOworICB2b2lkKiBhbGxvY19tbWFwKHNpemVfdCBzaXplKTsKKyAgcGFnZV9pbmZvKiBnZXRfcGFnZV9pbmZvKHZvaWQqIHB0cik7CisgIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yKiBnZXRfc21hbGxfb2JqZWN0X2FsbG9jYXRvcih1aW50MzJfdCB0eXBlKTsKKworICBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvciBhbGxvY2F0b3JzX1trU21hbGxPYmplY3RBbGxvY2F0b3JzQ291bnRdOwogfTsKLSNlbmRpZiAvLyBfX0xJTktFUl9BTExPQ0FUT1JfSAorCisKKyNlbmRpZiAgLyogX19MSU5LRVJfQUxMT0NBVE9SX0ggKi8KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfYmxvY2tfYWxsb2NhdG9yLmNwcCBiL2xpbmtlci9saW5rZXJfYmxvY2tfYWxsb2NhdG9yLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYzlhNzViCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9ibG9ja19hbGxvY2F0b3IuY3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgImxpbmtlcl9ibG9ja19hbGxvY2F0b3IuaCIKKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19wcmN0bC5oIgorCitzdHJ1Y3QgTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlIHsKKyAgTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKiBuZXh0OworICB1aW50OF90IGJ5dGVzW1BBR0VfU0laRS1zaXplb2YoTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKildOworfTsKKworc3RydWN0IEZyZWVCbG9ja0luZm8geworICB2b2lkKiBuZXh0X2Jsb2NrOworICBzaXplX3QgbnVtX2ZyZWVfYmxvY2tzOworfTsKKworTGlua2VyQmxvY2tBbGxvY2F0b3I6OkxpbmtlckJsb2NrQWxsb2NhdG9yKHNpemVfdCBibG9ja19zaXplKQorICA6IGJsb2NrX3NpemVfKGJsb2NrX3NpemUgPCBzaXplb2YoRnJlZUJsb2NrSW5mbykgPyBzaXplb2YoRnJlZUJsb2NrSW5mbykgOiBibG9ja19zaXplKSwKKyAgICBwYWdlX2xpc3RfKG51bGxwdHIpLAorICAgIGZyZWVfYmxvY2tfbGlzdF8obnVsbHB0cikKK3t9CisKK3ZvaWQqIExpbmtlckJsb2NrQWxsb2NhdG9yOjphbGxvYygpIHsKKyAgaWYgKGZyZWVfYmxvY2tfbGlzdF8gPT0gbnVsbHB0cikgeworICAgIGNyZWF0ZV9uZXdfcGFnZSgpOworICB9CisKKyAgRnJlZUJsb2NrSW5mbyogYmxvY2tfaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KGZyZWVfYmxvY2tfbGlzdF8pOworICBpZiAoYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzID4gMSkgeworICAgIEZyZWVCbG9ja0luZm8qIG5leHRfYmxvY2tfaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KAorICAgICAgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oZnJlZV9ibG9ja19saXN0XykgKyBibG9ja19zaXplXyk7CisgICAgbmV4dF9ibG9ja19pbmZvLT5uZXh0X2Jsb2NrID0gYmxvY2tfaW5mby0+bmV4dF9ibG9jazsKKyAgICBuZXh0X2Jsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyA9IGJsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyAtIDE7CisgICAgZnJlZV9ibG9ja19saXN0XyA9IG5leHRfYmxvY2tfaW5mbzsKKyAgfSBlbHNlIHsKKyAgICBmcmVlX2Jsb2NrX2xpc3RfID0gYmxvY2tfaW5mby0+bmV4dF9ibG9jazsKKyAgfQorCisgIG1lbXNldChibG9ja19pbmZvLCAwLCBibG9ja19zaXplXyk7CisKKyAgcmV0dXJuIGJsb2NrX2luZm87Cit9CisKK3ZvaWQgTGlua2VyQmxvY2tBbGxvY2F0b3I6OmZyZWUodm9pZCogYmxvY2spIHsKKyAgaWYgKGJsb2NrID09IG51bGxwdHIpIHsKKyAgICByZXR1cm47CisgIH0KKworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIHBhZ2UgPSBmaW5kX3BhZ2UoYmxvY2spOworCisgIGlmIChwYWdlID09IG51bGxwdHIpIHsKKyAgICBhYm9ydCgpOworICB9CisKKyAgc3NpemVfdCBvZmZzZXQgPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihibG9jaykgLSBwYWdlLT5ieXRlczsKKworICBpZiAob2Zmc2V0ICUgYmxvY2tfc2l6ZV8gIT0gMCkgeworICAgIGFib3J0KCk7CisgIH0KKworICBtZW1zZXQoYmxvY2ssIDAsIGJsb2NrX3NpemVfKTsKKworICBGcmVlQmxvY2tJbmZvKiBibG9ja19pbmZvID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4oYmxvY2spOworCisgIGJsb2NrX2luZm8tPm5leHRfYmxvY2sgPSBmcmVlX2Jsb2NrX2xpc3RfOworICBibG9ja19pbmZvLT5udW1fZnJlZV9ibG9ja3MgPSAxOworCisgIGZyZWVfYmxvY2tfbGlzdF8gPSBibG9ja19pbmZvOworfQorCit2b2lkIExpbmtlckJsb2NrQWxsb2NhdG9yOjpwcm90ZWN0X2FsbChpbnQgcHJvdCkgeworICBmb3IgKExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSogcGFnZSA9IHBhZ2VfbGlzdF87IHBhZ2UgIT0gbnVsbHB0cjsgcGFnZSA9IHBhZ2UtPm5leHQpIHsKKyAgICBpZiAobXByb3RlY3QocGFnZSwgUEFHRV9TSVpFLCBwcm90KSA9PSAtMSkgeworICAgICAgYWJvcnQoKTsKKyAgICB9CisgIH0KK30KKwordm9pZCBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6Y3JlYXRlX25ld19wYWdlKCkgeworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIHBhZ2UgPSByZWludGVycHJldF9jYXN0PExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSo+KAorICAgICAgbW1hcChudWxscHRyLCBQQUdFX1NJWkUsIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBNQVBfUFJJVkFURXxNQVBfQU5PTllNT1VTLCAwLCAwKSk7CisKKyAgaWYgKHBhZ2UgPT0gTUFQX0ZBSUxFRCkgeworICAgIGFib3J0KCk7IC8vIG9vbQorICB9CisKKyAgcHJjdGwoUFJfU0VUX1ZNQSwgUFJfU0VUX1ZNQV9BTk9OX05BTUUsIHBhZ2UsIFBBR0VfU0laRSwgImxpbmtlcl9hbGxvYyIpOworCisgIG1lbXNldChwYWdlLCAwLCBQQUdFX1NJWkUpOworCisgIEZyZWVCbG9ja0luZm8qIGZpcnN0X2Jsb2NrID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4ocGFnZS0+Ynl0ZXMpOworICBmaXJzdF9ibG9jay0+bmV4dF9ibG9jayA9IGZyZWVfYmxvY2tfbGlzdF87CisgIGZpcnN0X2Jsb2NrLT5udW1fZnJlZV9ibG9ja3MgPSAoUEFHRV9TSVpFIC0gc2l6ZW9mKExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSopKS9ibG9ja19zaXplXzsKKworICBmcmVlX2Jsb2NrX2xpc3RfID0gZmlyc3RfYmxvY2s7CisKKyAgcGFnZS0+bmV4dCA9IHBhZ2VfbGlzdF87CisgIHBhZ2VfbGlzdF8gPSBwYWdlOworfQorCitMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIExpbmtlckJsb2NrQWxsb2NhdG9yOjpmaW5kX3BhZ2Uodm9pZCogYmxvY2spIHsKKyAgaWYgKGJsb2NrID09IG51bGxwdHIpIHsKKyAgICBhYm9ydCgpOworICB9CisKKyAgTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKiBwYWdlID0gcGFnZV9saXN0XzsKKyAgd2hpbGUgKHBhZ2UgIT0gbnVsbHB0cikgeworICAgIGNvbnN0IHVpbnQ4X3QqIHBhZ2VfcHRyID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4ocGFnZSk7CisgICAgaWYgKGJsb2NrID49IChwYWdlX3B0ciArIHNpemVvZihwYWdlLT5uZXh0KSkgJiYgYmxvY2sgPCAocGFnZV9wdHIgKyBQQUdFX1NJWkUpKSB7CisgICAgICByZXR1cm4gcGFnZTsKKyAgICB9CisKKyAgICBwYWdlID0gcGFnZS0+bmV4dDsKKyAgfQorCisgIGFib3J0KCk7Cit9CmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oIGIvbGlua2VyL2xpbmtlcl9ibG9ja19hbGxvY2F0b3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjliOTk1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9ibG9ja19hbGxvY2F0b3IuaApAQCAtMCwwICsxLDgxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBfX0xJTktFUl9CTE9DS19BTExPQ0FUT1JfSAorI2RlZmluZSBfX0xJTktFUl9CTE9DS19BTExPQ0FUT1JfSAorCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfbWFjcm9zLmgiCisKK3N0cnVjdCBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2U7CisKKy8qCisgKiBUaGlzIGNsYXNzIGlzIGEgbm9uLXRlbXBsYXRlIHZlcnNpb24gb2YgdGhlIExpbmtlclR5cGVBbGxvY2F0b3IKKyAqIEl0IGtlZXBzIGNvZGUgaW5zaWRlIC5jcHAgZmlsZSBieSBrZWVwaW5nIHRoZSBpbnRlcmZhY2UKKyAqIHRlbXBsYXRlLWZyZWUuCisgKgorICogUGxlYXNlIHVzZSBMaW5rZXJUeXBlQWxsb2NhdG9yPHR5cGU+IHdoZXJlIHBvc3NpYmxlIChldmVyeXdoZXJlKS4KKyAqLworY2xhc3MgTGlua2VyQmxvY2tBbGxvY2F0b3IgeworIHB1YmxpYzoKKyAgZXhwbGljaXQgTGlua2VyQmxvY2tBbGxvY2F0b3Ioc2l6ZV90IGJsb2NrX3NpemUpOworCisgIHZvaWQqIGFsbG9jKCk7CisgIHZvaWQgZnJlZSh2b2lkKiBibG9jayk7CisgIHZvaWQgcHJvdGVjdF9hbGwoaW50IHByb3QpOworCisgcHJpdmF0ZToKKyAgdm9pZCBjcmVhdGVfbmV3X3BhZ2UoKTsKKyAgTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKiBmaW5kX3BhZ2Uodm9pZCogYmxvY2spOworCisgIHNpemVfdCBibG9ja19zaXplXzsKKyAgTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKiBwYWdlX2xpc3RfOworICB2b2lkKiBmcmVlX2Jsb2NrX2xpc3RfOworCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihMaW5rZXJCbG9ja0FsbG9jYXRvcik7Cit9OworCisvKgorICogQSBzaW1wbGUgYWxsb2NhdG9yIGZvciB0aGUgZHluYW1pYyBsaW5rZXIuIEFuIGFsbG9jYXRvciBhbGxvY2F0ZXMgaW5zdGFuY2VzCisgKiBvZiBhIHNpbmdsZSBmaXhlZC1zaXplIHR5cGUuIEFsbG9jYXRpb25zIGFyZSBiYWNrZWQgYnkgcGFnZS1zaXplZCBwcml2YXRlCisgKiBhbm9ueW1vdXMgbW1hcHMuCisgKgorICogVGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhpcyBhbGxvY2F0b3IgYW5kIExpbmtlck1lbW9yeUFsbG9jYXRvciBhcmU6CisgKiAxLiBUaGlzIGFsbG9jYXRvciBtYW5hZ2VzIHNwYWNlIG1vcmUgZWZmaWNpZW50bHkuIExpbmtlck1lbW9yeUFsbG9jYXRvcgorICogICAgb3BlcmF0ZXMgaW4gcG93ZXItb2YtdHdvIHNpemVkIGJsb2NrcyB1cCB0byAxaywgd2hlbiB0aGlzIGltcGxlbWVudGF0aW9uCisgKiAgICBzcGxpdHMgdGhlIHBhZ2UgdG8gYWxpZ25lZCBzaXplIG9mIHN0cnVjdHVyZTsgRm9yIGV4YW1wbGUgZm9yIHN0cnVjdHVyZXMKKyAqICAgIHdpdGggc2l6ZSA1MTMgdGhpcyBhbGxvY2F0b3Igd2lsbCB1c2UgNTE2ICg1MjAgZm9yIGxwNjQpIGJ5dGVzIG9mIGRhdGEKKyAqICAgIHdoZXJlIGdlbmVyYWxpemVkIGltcGxlbWVudGF0aW9uIGlzIGdvaW5nIHRvIHVzZSAxMDI0IHNpemVkIGJsb2Nrcy4KKyAqCisgKiAyLiBUaGlzIGFsbG9jYXRvciBkb2VzIG5vdCBtdW5tYXAgYWxsb2NhdGVkIG1lbW9yeSwgd2hlcmUgTGlua2VyTWVtb3J5QWxsb2NhdG9yIGRvZXMuCisgKgorICogMy4gVGhpcyBhbGxvY2F0b3IgcHJvdmlkZXMgbXByb3RlY3Qgc2VydmljZXMgdG8gdGhlIHVzZXIsIHdoZXJlIExpbmtlck1lbW9yeUFsbG9jYXRvcgorICogICAgYWx3YXlzIHRyZWF0cyBpdCdzIG1lbW9yeSBhcyBSRUFEfFdSSVRFLgorICovCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPgorY2xhc3MgTGlua2VyVHlwZUFsbG9jYXRvciB7CisgcHVibGljOgorICBMaW5rZXJUeXBlQWxsb2NhdG9yKCkgOiBibG9ja19hbGxvY2F0b3JfKHNpemVvZihUKSkge30KKyAgVCogYWxsb2MoKSB7IHJldHVybiByZWludGVycHJldF9jYXN0PFQqPihibG9ja19hbGxvY2F0b3JfLmFsbG9jKCkpOyB9CisgIHZvaWQgZnJlZShUKiB0KSB7IGJsb2NrX2FsbG9jYXRvcl8uZnJlZSh0KTsgfQorICB2b2lkIHByb3RlY3RfYWxsKGludCBwcm90KSB7IGJsb2NrX2FsbG9jYXRvcl8ucHJvdGVjdF9hbGwocHJvdCk7IH0KKyBwcml2YXRlOgorICBMaW5rZXJCbG9ja0FsbG9jYXRvciBibG9ja19hbGxvY2F0b3JfOworICBESVNBTExPV19DT1BZX0FORF9BU1NJR04oTGlua2VyVHlwZUFsbG9jYXRvcik7Cit9OworCisjZW5kaWYgLy8gX19MSU5LRVJfQkxPQ0tfQUxMT0NBVE9SX0gKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfZGVidWcuaCBiL2xpbmtlci9saW5rZXJfZGVidWcuaAppbmRleCAwYzdhNzg0Li41ZGVkNWFiIDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyX2RlYnVnLmgKKysrIGIvbGlua2VyL2xpbmtlcl9kZWJ1Zy5oCkBAIC04Miw0ICs4MiwyMyBAQAogCiAjZGVmaW5lIFRSQUNFX1RZUEUodCwgeC4uLikgICBkbyB7IGlmIChET19UUkFDRV8jI3QpIHsgVFJBQ0UoeCk7IH0gfSB3aGlsZSAoMCkKIAorI2lmIENPVU5UX1BBR0VTCitleHRlcm4gdWludDMyX3QgYml0bWFza1tdOworI2lmIGRlZmluZWQoX19MUDY0X18pCisjZGVmaW5lIE1BUksob2Zmc2V0KSBcCisgICAgZG8geyBcCisgICAgICBpZiAoKCgob2Zmc2V0KSA+PiAxMikgPj4gNSkgPCA0MDk2KSBcCisgICAgICAgICAgYml0bWFza1soKG9mZnNldCkgPj4gMTIpID4+IDVdIHw9ICgxIDw8ICgoKG9mZnNldCkgPj4gMTIpICYgMzEpKTsgXAorICAgIH0gd2hpbGUgKDApCisjZWxzZQorI2RlZmluZSBNQVJLKG9mZnNldCkgXAorICAgIGRvIHsgXAorICAgICAgYml0bWFza1soKG9mZnNldCkgPj4gMTIpID4+IDNdIHw9ICgxIDw8ICgoKG9mZnNldCkgPj4gMTIpICYgNykpOyBcCisgICAgfSB3aGlsZSAoMCkKKyNlbmRpZgorI2Vsc2UKKyNkZWZpbmUgTUFSSyh4KSBkbyB7fSB3aGlsZSAoMCkKKworI2VuZGlmCisKICNlbmRpZiAvKiBfTElOS0VSX0RFQlVHX0hfICovCmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX2Vudmlyb24uY3BwIGIvbGlua2VyL2xpbmtlcl9lbnZpcm9uLmNwcAppbmRleCBkYWVlNTZmLi45YTBmMDA5IDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyX2Vudmlyb24uY3BwCisrKyBiL2xpbmtlci9saW5rZXJfZW52aXJvbi5jcHAKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlIDxsaW51eC9hdXh2ZWMuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2luY2x1ZGUgInByaXZhdGUvS2VybmVsQXJndW1lbnRCbG9jay5oIgpAQCAtMTE0LDYgKzExNSw3IEBACiAgICAgICAiR0NPTlZfUEFUSCIsCiAgICAgICAiR0VUQ09ORl9ESVIiLAogICAgICAgIkhPU1RBTElBU0VTIiwKKyAgICAgICJKRV9NQUxMT0NfQ09ORiIsCiAgICAgICAiTERfQU9VVF9MSUJSQVJZX1BBVEgiLAogICAgICAgIkxEX0FPVVRfUFJFTE9BRCIsCiAgICAgICAiTERfQVVESVQiLApAQCAtMTI5LDYgKzEzMSw3IEBACiAgICAgICAiTE9DQUxET01BSU4iLAogICAgICAgIkxPQ1BBVEgiLAogICAgICAgIk1BTExPQ19DSEVDS18iLAorICAgICAgIk1BTExPQ19DT05GIiwKICAgICAgICJNQUxMT0NfVFJBQ0UiLAogICAgICAgIk5JU19QQVRIIiwKICAgICAgICJOTFNQQVRIIiwKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfZXhlY3V0YWJsZS5tayBiL2xpbmtlci9saW5rZXJfZXhlY3V0YWJsZS5tawpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTU5NmE0OC4uMDAwMDAwMAotLS0gYS9saW5rZXIvbGlua2VyX2V4ZWN1dGFibGUubWsKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0KLSMKLSMgSW5zdGVhZCBvZiBpbmNsdWRpbmcgJChCVUlMRF9FWEVDVVRBQkxFKSwgd2UgZXhlY3V0ZSB0aGUgc3RlcHMgdG8gY3JlYXRlIGFuIGV4ZWN1dGFibGUgYnkKLSMgaGFuZCwgYXMgd2Ugd2FudCB0byBpbnNlcnQgYW4gZXh0cmEgb2JqY29weSBzdGVwIHRoYXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgYnVpbGQKLSMgc3lzdGVtLCBhbmQgaXMgcHJvYmFibHkgc3BlY2lmaWMgdGhlIGxpbmtlciBvbmx5LCBzbyB0aGVyZSdzIG5vIG5lZWQgdG8gbW9kaWZ5IHRoZSBidWlsZAotIyBzeXN0ZW0gZm9yIHRoZSBwdXJwb3NlLgotIwotCi1MT0NBTF9NT0RVTEVfQ0xBU1MgOj0gRVhFQ1VUQUJMRVMKLUxPQ0FMX01PRFVMRV9TVUZGSVggOj0gJChUQVJHRVRfRVhFQ1VUQUJMRV9TVUZGSVgpCi0KLSMgQ2xhbmcgY2FsbHMgL3Vzci9iaW4vbGQ6IHVucmVjb2duaXplZCBvcHRpb24gJy0taWNmPXNhZmUnLCBodHRwOi8vYi8xNzQwMzY3NC4KLUxPQ0FMX0NMQU5HIDo9IGZhbHNlCi1pbmNsdWRlICQoQlVJTERfU1lTVEVNKS9keW5hbWljX2JpbmFyeS5tawotCi0jIFNlZSBidWlsZC9jb3JlL2V4ZWN1dGFibGVfaW50ZXJuYWwubWsKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0dMT0JBTF9MRF9ESVJTIDo9ICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9HTE9CQUxfTERfRElSUykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0dMT0JBTF9MREZMQUdTIDo9ICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9HTE9CQUxfTERGTEFHUykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0ZET19MSUIgOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0ZET19MSUIpCi0kKGxpbmtlZF9tb2R1bGUpOiBQUklWQVRFX1RBUkdFVF9MSUJHQ0MgOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0xJQkdDQykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0NSVEJFR0lOX0RZTkFNSUNfTyA6PSAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClUQVJHRVRfQ1JUQkVHSU5fRFlOQU1JQ19PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfQ1JUQkVHSU5fU1RBVElDX08gOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0NSVEJFR0lOX1NUQVRJQ19PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfQ1JURU5EX08gOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0NSVEVORF9PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfT0JKQ09QWSA6PSAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClUQVJHRVRfT0JKQ09QWSkKLSQobGlua2VkX21vZHVsZSk6ICQoVEFSR0VUX0NSVEJFR0lOX1NUQVRJQ19PKSAkKGFsbF9vYmplY3RzKSAkKGFsbF9saWJyYXJpZXMpICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9DUlRFTkRfTykKLQkkKHRyYW5zZm9ybS1vLXRvLXN0YXRpYy1leGVjdXRhYmxlKQotCUBlY2hvICJ0YXJnZXQgUHJlZml4U3ltYm9sczogJChQUklWQVRFX01PRFVMRSkgKCRAKSIKLQkkKGhpZGUpICQoUFJJVkFURV9UQVJHRVRfT0JKQ09QWSkgLS1wcmVmaXgtc3ltYm9scz1fX2RsXyAkQApkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9saWJjX3N1cHBvcnQuYyBiL2xpbmtlci9saW5rZXJfbGliY19zdXBwb3J0LmMKaW5kZXggMTdkYjZkNC4uNGM0OTM4NCAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlcl9saWJjX3N1cHBvcnQuYworKysgYi9saW5rZXIvbGlua2VyX2xpYmNfc3VwcG9ydC5jCkBAIC0xNSwzICsxNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgIi4uL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL19fZHNvX2hhbmRsZS5oIgorCitpbnQgYXRleGl0KHZvaWQgKCpmdW5jdGlvbikodm9pZCkgX19hdHRyaWJ1dGVfXygoX191bnVzZWRfXykpKSB7CisgIHJldHVybiAtMTsKK30KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfbWVtb3J5LmNwcCBiL2xpbmtlci9saW5rZXJfbWVtb3J5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODkyZDAyCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9tZW1vcnkuY3BwCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSAibGlua2VyX2FsbG9jYXRvci5oIgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisKK3N0YXRpYyBMaW5rZXJNZW1vcnlBbGxvY2F0b3IgZ19saW5rZXJfYWxsb2NhdG9yOworCit2b2lkKiBtYWxsb2Moc2l6ZV90IGJ5dGVfY291bnQpIHsKKyAgcmV0dXJuIGdfbGlua2VyX2FsbG9jYXRvci5hbGxvYyhieXRlX2NvdW50KTsKK30KKwordm9pZCogY2FsbG9jKHNpemVfdCBpdGVtX2NvdW50LCBzaXplX3QgaXRlbV9zaXplKSB7CisgIHJldHVybiBnX2xpbmtlcl9hbGxvY2F0b3IuYWxsb2MoaXRlbV9jb3VudCppdGVtX3NpemUpOworfQorCit2b2lkKiByZWFsbG9jKHZvaWQqIHAsIHNpemVfdCBieXRlX2NvdW50KSB7CisgIHJldHVybiBnX2xpbmtlcl9hbGxvY2F0b3IucmVhbGxvYyhwLCBieXRlX2NvdW50KTsKK30KKwordm9pZCBmcmVlKHZvaWQqIHB0cikgeworICBnX2xpbmtlcl9hbGxvY2F0b3IuZnJlZShwdHIpOworfQorCmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX21pcHMuY3BwIGIvbGlua2VyL2xpbmtlcl9taXBzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzY5ZjgyCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9taXBzLmNwcApAQCAtMCwwICsxLDE5NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAibGlua2VyLmgiCisjaW5jbHVkZSAibGlua2VyX2RlYnVnLmgiCisjaW5jbHVkZSAibGlua2VyX3JlbG9jcy5oIgorI2luY2x1ZGUgImxpbmtlcl9yZWxvY19pdGVyYXRvcnMuaCIKKyNpbmNsdWRlICJsaW5rZXJfc2xlYjEyOC5oIgorCit0ZW1wbGF0ZSBib29sIHNvaW5mbzo6cmVsb2NhdGU8cGxhaW5fcmVsb2NfaXRlcmF0b3I+KHBsYWluX3JlbG9jX2l0ZXJhdG9yJiYgcmVsX2l0ZXJhdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwKTsKKwordGVtcGxhdGUgYm9vbCBzb2luZm86OnJlbG9jYXRlPHBhY2tlZF9yZWxvY19pdGVyYXRvcjxzbGViMTI4X2RlY29kZXI+PigKKyAgICBwYWNrZWRfcmVsb2NfaXRlcmF0b3I8c2xlYjEyOF9kZWNvZGVyPiYmIHJlbF9pdGVyYXRvciwKKyAgICBjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsCisgICAgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXApOworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRWxmUmVsSXRlcmF0b3JUPgorYm9vbCBzb2luZm86OnJlbG9jYXRlKEVsZlJlbEl0ZXJhdG9yVCYmIHJlbF9pdGVyYXRvciwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXApIHsKKyAgVmVyc2lvblRyYWNrZXIgdmVyc2lvbl90cmFja2VyOworCisgIGlmICghdmVyc2lvbl90cmFja2VyLmluaXQodGhpcykpIHsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICBmb3IgKHNpemVfdCBpZHggPSAwOyByZWxfaXRlcmF0b3IuaGFzX25leHQoKTsgKytpZHgpIHsKKyAgICBjb25zdCBhdXRvIHJlbCA9IHJlbF9pdGVyYXRvci5uZXh0KCk7CisKKyAgICBpZiAocmVsID09IG51bGxwdHIpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBFbGZXKFdvcmQpIHR5cGUgPSBFTEZXKFJfVFlQRSkocmVsLT5yX2luZm8pOworICAgIEVsZlcoV29yZCkgc3ltID0gRUxGVyhSX1NZTSkocmVsLT5yX2luZm8pOworCisgICAgRWxmVyhBZGRyKSByZWxvYyA9IHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KHJlbC0+cl9vZmZzZXQgKyBsb2FkX2JpYXMpOworICAgIEVsZlcoQWRkcikgc3ltX2FkZHIgPSAwOworICAgIGNvbnN0IGNoYXIqIHN5bV9uYW1lID0gbnVsbHB0cjsKKworICAgIERFQlVHKCJQcm9jZXNzaW5nICclcycgcmVsb2NhdGlvbiBhdCBpbmRleCAlemQiLCBnZXRfc29uYW1lKCksIGlkeCk7CisgICAgaWYgKHR5cGUgPT0gUl9HRU5FUklDX05PTkUpIHsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGNvbnN0IEVsZlcoU3ltKSogcyA9IG51bGxwdHI7CisgICAgc29pbmZvKiBsc2kgPSBudWxscHRyOworCisgICAgaWYgKHN5bSAhPSAwKSB7CisgICAgICBzeW1fbmFtZSA9IGdldF9zdHJpbmcoc3ltdGFiX1tzeW1dLnN0X25hbWUpOworICAgICAgY29uc3QgRWxmVyhWZXJzeW0pKiBzeW1fdmVyX3B0ciA9IGdldF92ZXJzeW0oc3ltKTsKKyAgICAgIEVsZlcoVmVyc3ltKSBzeW1fdmVyID0gc3ltX3Zlcl9wdHIgPT0gbnVsbHB0ciA/IDAgOiAqc3ltX3Zlcl9wdHI7CisKKyAgICAgIGlmIChzeW1fdmVyID09IFZFUl9ORFhfTE9DQUwgfHwgc3ltX3ZlciA9PSBWRVJfTkRYX0dMT0JBTCkgeworICAgICAgICAvLyB0aGVyZSBpcyBubyB2ZXJzaW9uIGluZm8gZm9yIHRoaXMgb25lCisgICAgICAgIGlmICghc29pbmZvX2RvX2xvb2t1cCh0aGlzLCBzeW1fbmFtZSwgbnVsbHB0ciwgJmxzaSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCwgJnMpKSB7CisgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICBjb25zdCB2ZXJzaW9uX2luZm8qIHZpID0gdmVyc2lvbl90cmFja2VyLmdldF92ZXJzaW9uX2luZm8oc3ltX3Zlcik7CisKKyAgICAgICAgaWYgKHZpID09IG51bGxwdHIpIHsKKyAgICAgICAgICBETF9FUlIoImNhbm5vdCBmaW5kIHZlcm5lZWQvdmVyZGVmIGZvciB2ZXJzaW9uIGluZGV4PSVkICIKKyAgICAgICAgICAgICAgInJlZmVyZW5jZWQgYnkgc3ltYm9sIFwiJXNcIiBhdCBcIiVzXCIiLCBzeW1fdmVyLCBzeW1fbmFtZSwgZ2V0X3NvbmFtZSgpKTsKKyAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKworICAgICAgICBpZiAoIXNvaW5mb19kb19sb29rdXAodGhpcywgc3ltX25hbWUsIHZpLCAmbHNpLCBnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwLCAmcykpIHsKKyAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgaWYgKHMgPT0gbnVsbHB0cikgeworICAgICAgICAvLyBtaXBzIGRvZXMgbm90IHN1cHBvcnQgcmVsb2NhdGlvbiB3aXRoIHdlYWstdW5kZWZpbmVkIHN5bWJvbHMKKyAgICAgICAgRExfRVJSKCJjYW5ub3QgbG9jYXRlIHN5bWJvbCBcIiVzXCIgcmVmZXJlbmNlZCBieSBcIiVzXCIuLi4iLCBzeW1fbmFtZSwgZ2V0X3NvbmFtZSgpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gV2UgZ290IGEgZGVmaW5pdGlvbi4KKyAgICAgICAgc3ltX2FkZHIgPSBsc2ktPnJlc29sdmVfc3ltYm9sX2FkZHJlc3Mocyk7CisgICAgICB9CisgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1N5bWJvbCk7CisgICAgfQorCisgICAgc3dpdGNoICh0eXBlKSB7CisgICAgICBjYXNlIFJfTUlQU19SRUwzMjoKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICAgICAgICAvLyBNSVBTIEVsZjY0X1JlbCBlbnRyaWVzIGNvbnRhaW4gY29tcG91bmQgcmVsb2NhdGlvbnMKKyAgICAgICAgLy8gV2Ugb25seSBoYW5kbGUgdGhlIFJfTUlQU19OT05FfFJfTUlQU182NHxSX01JUFNfUkVMMzIgY2FzZQorICAgICAgICBpZiAoRUxGNjRfUl9UWVBFMihyZWwtPnJfaW5mbykgIT0gUl9NSVBTXzY0IHx8CisgICAgICAgICAgICBFTEY2NF9SX1RZUEUzKHJlbC0+cl9pbmZvKSAhPSBSX01JUFNfTk9ORSkgeworICAgICAgICAgIERMX0VSUigiVW5leHBlY3RlZCBjb21wb3VuZCByZWxvY2F0aW9uIHR5cGU6JWQgdHlwZTI6JWQgdHlwZTM6JWQgQCAlcCAoJXp1KSIsCisgICAgICAgICAgICAgICAgIHR5cGUsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihFTEY2NF9SX1RZUEUyKHJlbC0+cl9pbmZvKSksCisgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHVuc2lnbmVkPihFTEY2NF9SX1RZUEUzKHJlbC0+cl9pbmZvKSksIHJlbCwgaWR4KTsKKyAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyNlbmRpZgorICAgICAgICBjb3VudF9yZWxvY2F0aW9uKHMgPT0gbnVsbHB0ciA/IGtSZWxvY0Fic29sdXRlIDoga1JlbG9jUmVsYXRpdmUpOworICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOworICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJFTDMyICUwOHp4IDwtICUwOHp4ICVzIiwgc3RhdGljX2Nhc3Q8c2l6ZV90PihyZWxvYyksCisgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1fYWRkciksIHN5bV9uYW1lID8gc3ltX25hbWUgOiAiKlNFQ1RJT05IRFIqIik7CisgICAgICAgIGlmIChzICE9IG51bGxwdHIpIHsKKyAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IHN5bV9hZGRyOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgKz0gYmFzZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIGRlZmF1bHQ6CisgICAgICAgIERMX0VSUigidW5rbm93biByZWxvYyB0eXBlICVkIEAgJXAgKCV6dSkiLCB0eXBlLCByZWwsIGlkeCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgIH0KKyAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgc29pbmZvOjptaXBzX3JlbG9jYXRlX2dvdChjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXApIHsKKyAgRWxmVyhBZGRyKSoqIGdvdCA9IHBsdF9nb3RfOworICBpZiAoZ290ID09IG51bGxwdHIpIHsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIC8vIGdvdFswXSBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgbGF6eSByZXNvbHZlciBmdW5jdGlvbi4KKyAgLy8gZ290WzFdIG1heSBiZSB1c2VkIGZvciBhIEdOVSBleHRlbnNpb24uCisgIC8vIFNldCBpdCB0byBhIHJlY29nbml6YWJsZSBhZGRyZXNzIGluIGNhc2Ugc29tZW9uZSBjYWxscyBpdCAoc2hvdWxkIGJlIF9ydGxkX2JpbmRfc3RhcnQpLgorICAvLyBGSVhNRTogbWF5YmUgdGhpcyBzaG91bGQgYmUgaW4gYSBzZXBhcmF0ZSByb3V0aW5lPworICBpZiAoKGZsYWdzXyAmIEZMQUdfTElOS0VSKSA9PSAwKSB7CisgICAgc2l6ZV90IGcgPSAwOworICAgIGdvdFtnKytdID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4oMHhkZWFkYmVlZik7CisgICAgaWYgKHJlaW50ZXJwcmV0X2Nhc3Q8aW50cHRyX3Q+KGdvdFtnXSkgPCAwKSB7CisgICAgICBnb3RbZysrXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KDB4ZGVhZGZlZWQpOworICAgIH0KKyAgICAvLyBSZWxvY2F0ZSB0aGUgbG9jYWwgR09UIGVudHJpZXMuCisgICAgZm9yICg7IGcgPCBtaXBzX2xvY2FsX2dvdG5vXzsgZysrKSB7CisgICAgICBnb3RbZ10gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oZ290W2ddKSArIGxvYWRfYmlhcyk7CisgICAgfQorICB9CisKKyAgLy8gTm93IGZvciB0aGUgZ2xvYmFsIEdPVCBlbnRyaWVzLi4uCisgIEVsZlcoU3ltKSogc3ltID0gc3ltdGFiXyArIG1pcHNfZ290c3ltXzsKKyAgZ290ID0gcGx0X2dvdF8gKyBtaXBzX2xvY2FsX2dvdG5vXzsKKyAgZm9yIChzaXplX3QgZyA9IG1pcHNfZ290c3ltXzsgZyA8IG1pcHNfc3ltdGFibm9fOyBnKyssIHN5bSsrLCBnb3QrKykgeworICAgIC8vIFRoaXMgaXMgYW4gdW5kZWZpbmVkIHJlZmVyZW5jZS4uLiB0cnkgdG8gbG9jYXRlIGl0LgorICAgIGNvbnN0IGNoYXIqIHN5bV9uYW1lID0gZ2V0X3N0cmluZyhzeW0tPnN0X25hbWUpOworICAgIHNvaW5mbyogbHNpID0gbnVsbHB0cjsKKyAgICBjb25zdCBFbGZXKFN5bSkqIHMgPSBudWxscHRyOworICAgIGlmICghc29pbmZvX2RvX2xvb2t1cCh0aGlzLCBzeW1fbmFtZSwgbnVsbHB0ciwgJmxzaSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCwgJnMpKSB7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKHMgPT0gbnVsbHB0cikgeworICAgICAgLy8gV2Ugb25seSBhbGxvdyBhbiB1bmRlZmluZWQgc3ltYm9sIGlmIHRoaXMgaXMgYSB3ZWFrIHJlZmVyZW5jZS4KKyAgICAgIHMgPSAmc3ltdGFiX1tnXTsKKyAgICAgIGlmIChFTEZfU1RfQklORChzLT5zdF9pbmZvKSAhPSBTVEJfV0VBSykgeworICAgICAgICBETF9FUlIoImNhbm5vdCBsb2NhdGUgXCIlc1wiLi4uIiwgc3ltX25hbWUpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICAqZ290ID0gMDsKKyAgICB9IGVsc2UgeworICAgICAgLy8gRklYTUU6IGlzIHRoaXMgc3VmZmljaWVudD8KKyAgICAgIC8vIEZvciByZWZlcmVuY2Ugc2VlIE5ldEJTRCBsaW5rIGxvYWRlcgorICAgICAgLy8gaHR0cDovL2N2c3dlYi5uZXRic2Qub3JnL2JzZHdlYi5jZ2kvc3JjL2xpYmV4ZWMvbGQuZWxmX3NvL2FyY2gvbWlwcy9taXBzX3JlbG9jLmM/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+KHBhZ2VzaXplIC8gc2l6ZW9mKGludCkpOyArK2kpIHsKKyAgICBBU1NFUlRfRVEoaSwgKmludF9wdHIrKyk7CisgIH0KKworICBBU1NFUlRfRVEoMCwgbXVubWFwKG1hcCwgcGFnZXNpemUpKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19wZXJzb25hbGl0eV90ZXN0LmNwcCBiL3Rlc3RzL3N5c19wZXJzb25hbGl0eV90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NWEwMjNkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvc3lzX3BlcnNvbmFsaXR5X3Rlc3QuY3BwCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPHN5cy9wZXJzb25hbGl0eS5oPgorCitURVNUKHN5c19wZXJzb25hbGl0eSwgY3VycmVudF9wZXJzb25hKSB7CisgIGludCBwZXJzb25hID0gcGVyc29uYWxpdHkoMHhmZmZmZmZmZik7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorI2lmIGRlZmluZWQoX19MUDY0X18pCisgIEFTU0VSVF9FUShQRVJfTElOVVgsIHBlcnNvbmEpOworI2Vsc2UKKyAgQVNTRVJUX0VRKFBFUl9MSU5VWDMyLCBwZXJzb25hKTsKKyNlbmRpZgorI2Vsc2UKKyAgLy8gR0xJQkMgZG9lcyBub3Qgc2V0IHBlcnNvbmEgcHJpb3IgcHJvY2VzcyBzdGFydHVwIC0gaXQgaXMgYWx3YXlzIFBFUl9MSU5VWDsKKyAgQVNTRVJUX0VRKFBFUl9MSU5VWCwgcGVyc29uYSk7CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19yZXNvdXJjZV90ZXN0LmNwcCBiL3Rlc3RzL3N5c19yZXNvdXJjZV90ZXN0LmNwcAppbmRleCA0ZTJkMGJhLi44Y2VmYzY1IDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfcmVzb3VyY2VfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzX3Jlc291cmNlX3Rlc3QuY3BwCkBAIC0xOCwxNyArMTgsNiBAQAogCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KIAotI2lmIGRlZmluZWQoX19HTElCQ19fKQotLyogVGhlIGhvc3QgZ2xpYmMgd2UncmUgY3VycmVudGx5IGJ1aWxkaW5nIHdpdGggZG9lc24ndCBoYXZlIHBybGltaXQ2NCB5ZXQuICovCi1zdGF0aWMgaW50IHBybGltaXQ2NChwaWRfdCwgaW50IHJlc291cmNlLCBjb25zdCBzdHJ1Y3QgcmxpbWl0NjQqIG5ld19saW1pdCwgc3RydWN0IHJsaW1pdDY0KiBvbGRfbGltaXQpIHsKLSAgaWYgKG5ld19saW1pdCAhPSBOVUxMKSB7Ci0gICAgcmV0dXJuIHNldHJsaW1pdDY0KHJlc291cmNlLCBuZXdfbGltaXQpOwotICB9IGVsc2UgewotICAgIHJldHVybiBnZXRybGltaXQ2NChyZXNvdXJjZSwgb2xkX2xpbWl0KTsKLSAgfQotfQotI2VuZGlmCi0KIFRFU1Qoc3lzX3Jlc291cmNlLCBybGltaXRfc3RydWN0X3NpemUpIHsKICNpZiBkZWZpbmVkKF9fTFA2NF9fKSB8fCBkZWZpbmVkKF9fR0xJQkNfXykKICAgQVNTRVJUX0VRKHNpemVvZihybGltaXQpLCBzaXplb2YocmxpbWl0NjQpKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19zb2NrZXRfdGVzdC5jcHAgYi90ZXN0cy9zeXNfc29ja2V0X3Rlc3QuY3BwCmluZGV4IDBiZGUwMjQuLjhmNWFmYWMgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3N5c19zb2NrZXRfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzX3NvY2tldF90ZXN0LmNwcApAQCAtMjIsMjggKzIyLDE2IEBACiAjaW5jbHVkZSA8c3lzL3VuLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KIAotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgI2RlZmluZSBBQ0NFUFQ0X1NVUFBPUlRFRCAxCi0gICNkZWZpbmUgUkVDVk1NU0dfU1VQUE9SVEVEIDEKLSAgI2RlZmluZSBTRU5ETU1TR19TVVBQT1JURUQgMQotI2VsaWYgZGVmaW5lZChfX0dMSUJDX1BSRVJFUSkKLSAgI2lmIF9fR0xJQkNfUFJFUkVRKDIsIDkpCi0gICAgI2RlZmluZSBBQ0NFUFQ0X1NVUFBPUlRFRCAxCi0gICNlbmRpZgotICAjaWYgX19HTElCQ19QUkVSRVEoMiwgMTIpCi0gICAgI2RlZmluZSBSRUNWTU1TR19TVVBQT1JURUQgMQotICAjZW5kaWYKLSAgI2lmIF9fR0xJQkNfUFJFUkVRKDIsIDE0KQotICAgICNkZWZpbmUgU0VORE1NU0dfU1VQUE9SVEVEIDEKLSAgI2VuZGlmCi0jZW5kaWYKLQotI2lmIGRlZmluZWQoQUNDRVBUNF9TVVBQT1JURUQpIHx8IGRlZmluZWQoUkVDVk1NU0dfU1VQUE9SVEVEKSB8fCBkZWZpbmVkKFNFTkRNTVNHX1NVUFBPUlRFRCkKLQotI2RlZmluZSBTT0NLX1BBVEggInRlc3QiCitzdHJ1Y3QgQ29ubmVjdERhdGEgeworICBib29sICgqY2FsbGJhY2tfZm4pKGludCk7CisgIGNvbnN0IGNoYXIqIHNvY2tfcGF0aDsKKyAgQ29ubmVjdERhdGEoYm9vbCAoKmNhbGxiYWNrX2Z1bmMpKGludCksIGNvbnN0IGNoYXIqIHNvY2tldF9wYXRoKQorICAgOiBjYWxsYmFja19mbihjYWxsYmFja19mdW5jKSwgc29ja19wYXRoKHNvY2tldF9wYXRoKSB7fQorfTsKIAogc3RhdGljIHZvaWQqIENvbm5lY3RGbih2b2lkKiBkYXRhKSB7Ci0gIGJvb2wgKCpjYWxsYmFja19mbikoaW50KSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Ym9vbCAoKikoaW50KT4oZGF0YSk7CisgIENvbm5lY3REYXRhKiBwZGF0YSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Q29ubmVjdERhdGEqPihkYXRhKTsKKyAgYm9vbCAoKmNhbGxiYWNrX2ZuKShpbnQpID0gcGRhdGEtPmNhbGxiYWNrX2ZuOwogICB2b2lkKiByZXR1cm5fdmFsdWUgPSBOVUxMOwogCiAgIGludCBmZCA9IHNvY2tldChQRl9VTklYLCBTT0NLX1NFUVBBQ0tFVCB8IFNPQ0tfQ0xPRVhFQyB8IFNPQ0tfTk9OQkxPQ0ssIDApOwpAQCAtNTYsNyArNDQsNyBAQAogICBtZW1zZXQoJmFkZHIsIDAsIHNpemVvZihhZGRyKSk7CiAgIGFkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7CiAgIGFkZHIuc3VuX3BhdGhbMF0gPSAnXDAnOwotICBzdHJjcHkoYWRkci5zdW5fcGF0aCArIDEsIFNPQ0tfUEFUSCk7CisgIHN0cmNweShhZGRyLnN1bl9wYXRoICsgMSwgcGRhdGEtPnNvY2tfcGF0aCk7CiAKICAgaWYgKGNvbm5lY3QoZmQsIHJlaW50ZXJwcmV0X2Nhc3Q8c3RydWN0IHNvY2thZGRyKj4oJmFkZHIpLCBzaXplb2YoYWRkcikpIDwgMCkgewogICAgIEdURVNUX0xPR18oRVJST1IpIDw8ICJjb25uZWN0IGNhbGwgZmFpbGVkOiAiIDw8IHN0cmVycm9yKGVycm5vKTsKQEAgLTcyLDcgKzYwLDcgQEAKIH0KIAogc3RhdGljIHZvaWQgUnVuVGVzdCh2b2lkICgqdGVzdF9mbikoc3RydWN0IHNvY2thZGRyX3VuKiwgaW50KSwKLSAgICAgICAgICAgICAgICAgICAgYm9vbCAoKmNhbGxiYWNrX2ZuKShpbnQgZmQpKSB7CisgICAgICAgICAgICAgICAgICAgIGJvb2wgKCpjYWxsYmFja19mbikoaW50IGZkKSwgY29uc3QgY2hhciogc29ja19wYXRoKSB7CiAgIGludCBmZCA9IHNvY2tldChQRl9VTklYLCBTT0NLX1NFUVBBQ0tFVCwgMCk7CiAgIEFTU0VSVF9ORShmZCwgLTEpIDw8IHN0cmVycm9yKGVycm5vKTsKIApAQCAtODAsMTQgKzY4LDE2IEBACiAgIG1lbXNldCgmYWRkciwgMCwgc2l6ZW9mKGFkZHIpKTsKICAgYWRkci5zdW5fZmFtaWx5ID0gQUZfVU5JWDsKICAgYWRkci5zdW5fcGF0aFswXSA9ICdcMCc7Ci0gIHN0cmNweShhZGRyLnN1bl9wYXRoICsgMSwgU09DS19QQVRIKTsKKyAgc3RyY3B5KGFkZHIuc3VuX3BhdGggKyAxLCBzb2NrX3BhdGgpOwogCiAgIEFTU0VSVF9ORSgtMSwgYmluZChmZCwgcmVpbnRlcnByZXRfY2FzdDxzdHJ1Y3Qgc29ja2FkZHIqPigmYWRkciksIHNpemVvZihhZGRyKSkpIDw8IHN0cmVycm9yKGVycm5vKTsKIAogICBBU1NFUlRfTkUoLTEsIGxpc3RlbihmZCwgMSkpIDw8IHN0cmVycm9yKGVycm5vKTsKIAorICBDb25uZWN0RGF0YSBjb25uZWN0X2RhdGEoY2FsbGJhY2tfZm4sIHNvY2tfcGF0aCk7CisKICAgcHRocmVhZF90IHRocmVhZDsKLSAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIE5VTEwsIENvbm5lY3RGbiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oY2FsbGJhY2tfZm4pKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkLCBOVUxMLCBDb25uZWN0Rm4sICZjb25uZWN0X2RhdGEpKTsKIAogICBmZF9zZXQgcmVhZF9zZXQ7CiAgIEZEX1pFUk8oJnJlYWRfc2V0KTsKQEAgLTEwNSwxOCArOTUsMTIgQEAKIAogICBjbG9zZShmZCk7CiB9Ci0jZW5kaWYKIAogVEVTVChzeXNfc29ja2V0LCBhY2NlcHQ0X2Vycm9yKSB7Ci0jaWYgZGVmaW5lZChBQ0NFUFQ0X1NVUFBPUlRFRCkKICAgQVNTRVJUX0VRKC0xLCBhY2NlcHQ0KC0xLCBOVUxMLCBOVUxMLCAwKSk7CiAgIEFTU0VSVF9FUShFQkFERiwgZXJybm8pOwotI2Vsc2UKLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYKIH0KIAotI2lmIGRlZmluZWQoQUNDRVBUNF9TVVBQT1JURUQpCiBzdGF0aWMgdm9pZCBUZXN0QWNjZXB0NChzdHJ1Y3Qgc29ja2FkZHJfdW4qIGFkZHIsIGludCBmZCkgewogICBzb2NrbGVuX3QgbGVuID0gc2l6ZW9mKCphZGRyKTsKICAgaW50IGZkX2FjYyA9IGFjY2VwdDQoZmQsIHJlaW50ZXJwcmV0X2Nhc3Q8c3RydWN0IHNvY2thZGRyKj4oYWRkciksICZsZW4sIFNPQ0tfQ0xPRVhFQyk7CkBAIC0xMjcsMTcgKzExMSwxMSBAQAogCiAgIGNsb3NlKGZkX2FjYyk7CiB9Ci0jZW5kaWYKIAogVEVTVChzeXNfc29ja2V0LCBhY2NlcHQ0X3Ntb2tlKSB7Ci0jaWYgZGVmaW5lZChBQ0NFUFQ0X1NVUFBPUlRFRCkKLSAgUnVuVGVzdChUZXN0QWNjZXB0NCwgTlVMTCk7Ci0jZWxzZQotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZgorICBSdW5UZXN0KFRlc3RBY2NlcHQ0LCBOVUxMLCAidGVzdF9hY2NlcHQiKTsKIH0KIAotI2lmIGRlZmluZWQoUkVDVk1NU0dfU1VQUE9SVEVEKQogY29uc3QgY2hhciogZ19SZWN2TXNnc1tdID0gewogICAiUkVDVk1NU0dfT05FIiwKICAgIlJFQ1ZNTVNHX1RXTyIsCkBAIC0xODgsMjYgKzE2NiwxNiBAQAogCiAgIGNsb3NlKGZkX2FjYyk7CiB9Ci0jZW5kaWYKIAogVEVTVChzeXNfc29ja2V0LCByZWN2bW1zZ19zbW9rZSkgewotI2lmIGRlZmluZWQoUkVDVk1NU0dfU1VQUE9SVEVEKQotICBSdW5UZXN0KFRlc3RSZWN2TU1zZywgU2VuZE11bHRpcGxlKTsKLSNlbHNlCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmCisgIFJ1blRlc3QoVGVzdFJlY3ZNTXNnLCBTZW5kTXVsdGlwbGUsICJ0ZXN0X3Jldm1tc2ciKTsKIH0KIAogVEVTVChzeXNfc29ja2V0LCByZWN2bW1zZ19lcnJvcikgewotI2lmIGRlZmluZWQoUkVDVk1NU0dfU1VQUE9SVEVEKQogICBBU1NFUlRfRVEoLTEsIHJlY3ZtbXNnKC0xLCBOVUxMLCAwLCAwLCBOVUxMKSk7CiAgIEFTU0VSVF9FUShFQkFERiwgZXJybm8pOwotI2Vsc2UKLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYKIH0KIAotI2lmIGRlZmluZWQoU0VORE1NU0dfU1VQUE9SVEVEKQogY29uc3QgY2hhciogZ19TZW5kTXNnc1tdID0gewogICAiTVNHX09ORSIsCiAgICJNU0dfVFdPIiwKQEAgLTI1NiwyMSArMjI0LDEyIEBACiAKICAgY2xvc2UoZmRfYWNjKTsKIH0KLSNlbmRpZgogCiBURVNUKHN5c19zb2NrZXQsIHNlbmRtbXNnX3Ntb2tlKSB7Ci0jaWYgZGVmaW5lZChTRU5ETU1TR19TVVBQT1JURUQpCi0gIFJ1blRlc3QoVGVzdFNlbmRNTXNnLCBTZW5kTU1zZyk7Ci0jZWxzZQotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZgorICBSdW5UZXN0KFRlc3RTZW5kTU1zZywgU2VuZE1Nc2csICJ0ZXN0X3NlbmRtbXNnIik7CiB9CiAKIFRFU1Qoc3lzX3NvY2tldCwgc2VuZG1tc2dfZXJyb3IpIHsKLSNpZiBkZWZpbmVkKFNFTkRNTVNHX1NVUFBPUlRFRCkKICAgQVNTRVJUX0VRKC0xLCBzZW5kbW1zZygtMSwgTlVMTCwgMCwgMCkpOwogICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKLSNlbHNlCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmCiB9CmRpZmYgLS1naXQgYS90ZXN0cy9zeXNfc3RhdF90ZXN0LmNwcCBiL3Rlc3RzL3N5c19zdGF0X3Rlc3QuY3BwCmluZGV4IDY0MDQ5YWIuLjdjMzg3YmEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3N5c19zdGF0X3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3N5c19zdGF0X3Rlc3QuY3BwCkBAIC01NSw2ICs1NSwxOCBAQAogICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKIH0KIAorVEVTVChzeXNfc3RhdCwgbWtmaWZvX2ZhaWx1cmUpIHsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoLTEsIG1rZmlmbygiLyIsIDA2NjYpKTsKKyAgQVNTRVJUX0VRKEVFWElTVCwgZXJybm8pOworfQorCitURVNUKHN5c19zdGF0LCBta2ZpZm9hdF9mYWlsdXJlKSB7CisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBta2ZpZm9hdCgtMiwgIngiLCAwNjY2KSk7CisgIEFTU0VSVF9FUShFQkFERiwgZXJybm8pOworfQorCiBURVNUKHN5c19zdGF0LCBta2ZpZm8pIHsKICAgaWYgKGdldHVpZCgpID09IDApIHsKICAgICAvLyBSYWN5IGJ1dCBwcm9iYWJseSBzdWZmaWNpZW50IHdheSB0byBnZXQgYSBzdWl0YWJsZSBmaWxlbmFtZS4KQEAgLTcwLDYgKzgyLDcgQEAKICAgICBBU1NFUlRfVFJVRShTX0lTRklGTyhzYi5zdF9tb2RlKSk7CiAgICAgdW5saW5rKHBhdGguY19zdHIoKSk7CiAgIH0gZWxzZSB7CisgICAgLy8gU0VMaW51eCBwb2xpY3kgZm9yYmlkcyB1cyBmcm9tIGNyZWF0aW5nIEZJRk9zLiBodHRwOi8vYi8xNzY0NjcwMi4KICAgICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3Qgb25seSBwZXJmb3JtcyBhIHRlc3Qgd2hlbiBydW4gYXMgcm9vdC4iOwogICB9CiB9CkBAIC04MiwzICs5NSwxOTMgQEAKICAgQVNTRVJUX0VRKDAsIGZzdGF0NjQoZmQsICZzYikpOwogICBjbG9zZShmZCk7CiB9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X0VGQVVMVF9maWxlKSB7CisgIEFTU0VSVF9FUSgtMSwgZmNobW9kYXQoQVRfRkRDV0QsIChjaGFyICopIDB4MSwgMDc1MSwgMCkpOworICBBU1NFUlRfRVEoRUZBVUxULCBlcnJubyk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X0FUX1NZTUxJTktfTk9GT0xMT1dfRUZBVUxUX2ZpbGUpIHsKKyAgQVNTRVJUX0VRKC0xLCBmY2htb2RhdChBVF9GRENXRCwgKGNoYXIgKikgMHgxLCAwNzUxLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICBBU1NFUlRfRVEoRUZBVUxULCBlcnJubyk7CisjZWxzZQorICAvLyBnbGliYyAyLjE5IGRvZXMgbm90IGltcGxlbWVudCBBVF9TWU1MSU5LX05PRk9MTE9XIGFuZCBhbHdheXMKKyAgLy8gcmV0dXJucyBFTk9UU1VQCisgIEFTU0VSVF9FUShFTk9UU1VQLCBlcnJubyk7CisjZW5kaWYKK30KKworVEVTVChzeXNfc3RhdCwgZmNobW9kYXRfYmFkX2ZsYWdzKSB7CisgIEFTU0VSVF9FUSgtMSwgZmNobW9kYXQoQVRfRkRDV0QsICIvYmxhaCIsIDA3NTEsIH5BVF9TWU1MSU5LX05PRk9MTE9XKSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVChzeXNfc3RhdCwgZmNobW9kYXRfYmFkX2ZsYWdzX0FMTCkgeworICBBU1NFUlRfRVEoLTEsIGZjaG1vZGF0KEFUX0ZEQ1dELCAiL2JsYWgiLCAwNzUxLCB+MCkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X25vbmV4aXN0YW50X2ZpbGUpIHsKKyAgQVNTRVJUX0VRKC0xLCBmY2htb2RhdChBVF9GRENXRCwgIi9ibGFoIiwgMDc1MSwgMCkpOworICBBU1NFUlRfRVEoRU5PRU5ULCBlcnJubyk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X0FUX1NZTUxJTktfTk9GT0xMT1dfbm9uZXhpc3RhbnRfZmlsZSkgeworICBBU1NFUlRfRVEoLTEsIGZjaG1vZGF0KEFUX0ZEQ1dELCAiL2JsYWgiLCAwNzUxLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICBBU1NFUlRfRVEoRU5PRU5ULCBlcnJubyk7CisjZWxzZQorICAvLyBnbGliYyAyLjE5IGRvZXMgbm90IGltcGxlbWVudCBBVF9TWU1MSU5LX05PRk9MTE9XIGFuZCBhbHdheXMKKyAgLy8gcmV0dXJucyBFTk9UU1VQCisgIEFTU0VSVF9FUShFTk9UU1VQLCBlcnJubyk7CisjZW5kaWYKK30KKworc3RhdGljIHZvaWQgQXNzZXJ0RmlsZU1vZGVFcXVhbHMobW9kZV90IGV4cGVjdGVkX21vZGUsIGNvbnN0IGNoYXIqIGZpbGVuYW1lKSB7CisgIHN0cnVjdCBzdGF0IHNiOworICBBU1NFUlRfRVEoMCwgc3RhdChmaWxlbmFtZSwgJnNiKSk7CisgIG1vZGVfdCBtYXNrID0gU19JUldYVSB8IFNfSVJXWEcgfCBTX0lSV1hPOworICBBU1NFUlRfRVEoZXhwZWN0ZWRfbW9kZSAmIG1hc2ssIHN0YXRpY19jYXN0PG1vZGVfdD4oc2Iuc3RfbW9kZSkgJiBtYXNrKTsKK30KKworVEVTVChzeXNfc3RhdCwgZmNobW9kYXRfZmlsZSkgeworICBUZW1wb3JhcnlGaWxlIHRmOworCisgIEFTU0VSVF9FUSgwLCBmY2htb2RhdChBVF9GRENXRCwgdGYuZmlsZW5hbWUsIDA3NTEsIDApKTsKKyAgQXNzZXJ0RmlsZU1vZGVFcXVhbHMoMDc1MSwgdGYuZmlsZW5hbWUpOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9BVF9TWU1MSU5LX05PRk9MTE9XX2ZpbGUpIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKyAgZXJybm8gPSAwOworICBpbnQgcmVzdWx0ID0gZmNobW9kYXQoQVRfRkRDV0QsIHRmLmZpbGVuYW1lLCAwNzUxLCBBVF9TWU1MSU5LX05PRk9MTE9XKTsKKworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgQVNTRVJUX0VRKDAsIHJlc3VsdCk7CisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CisgIEFzc2VydEZpbGVNb2RlRXF1YWxzKDA3NTEsIHRmLmZpbGVuYW1lKTsKKyNlbHNlCisgIC8vIGdsaWJjIDIuMTkgZG9lcyBub3QgaW1wbGVtZW50IEFUX1NZTUxJTktfTk9GT0xMT1cgYW5kIGFsd2F5cworICAvLyByZXR1cm5zIEVOT1RTVVAKKyAgQVNTRVJUX0VRKC0xLCByZXN1bHQpOworICBBU1NFUlRfRVEoRU5PVFNVUCwgZXJybm8pOworI2VuZGlmCit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X3N5bWxpbmspIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKyAgY2hhciBsaW5rbmFtZVsyNTVdOworCisgIHNucHJpbnRmKGxpbmtuYW1lLCBzaXplb2YobGlua25hbWUpLCAiJXMubGluayIsIHRmLmZpbGVuYW1lKTsKKworICBBU1NFUlRfRVEoMCwgc3ltbGluayh0Zi5maWxlbmFtZSwgbGlua25hbWUpKTsKKyAgQVNTRVJUX0VRKDAsIGZjaG1vZGF0KEFUX0ZEQ1dELCBsaW5rbmFtZSwgMDc1MSwgMCkpOworICBBc3NlcnRGaWxlTW9kZUVxdWFscygwNzUxLCB0Zi5maWxlbmFtZSk7CisgIHVubGluayhsaW5rbmFtZSk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X2RhbmdsaW5nX3N5bWxpbmspIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKyAgY2hhciBsaW5rbmFtZVsyNTVdOworICBjaGFyIHRhcmdldFsyNTVdOworCisgIHNucHJpbnRmKGxpbmtuYW1lLCBzaXplb2YobGlua25hbWUpLCAiJXMubGluayIsIHRmLmZpbGVuYW1lKTsKKyAgc25wcmludGYodGFyZ2V0LCBzaXplb2YodGFyZ2V0KSwgIiVzLmRvZXNub3RleGlzdCIsIHRmLmZpbGVuYW1lKTsKKworICBBU1NFUlRfRVEoMCwgc3ltbGluayh0YXJnZXQsIGxpbmtuYW1lKSk7CisgIEFTU0VSVF9FUSgtMSwgZmNobW9kYXQoQVRfRkRDV0QsIGxpbmtuYW1lLCAwNzUxLCAwKSk7CisgIEFTU0VSVF9FUShFTk9FTlQsIGVycm5vKTsKKyAgdW5saW5rKGxpbmtuYW1lKTsKK30KKworc3RhdGljIHZvaWQgQXNzZXJ0U3ltbGlua01vZGVFcXVhbHMobW9kZV90IGV4cGVjdGVkX21vZGUsIGNvbnN0IGNoYXIqIGxpbmtuYW1lKSB7CisgIHN0cnVjdCBzdGF0IHNiOworICBBU1NFUlRfRVEoMCwgZnN0YXRhdChBVF9GRENXRCwgbGlua25hbWUsICZzYiwgQVRfU1lNTElOS19OT0ZPTExPVykpOworICBtb2RlX3QgbWFzayA9IFNfSVJXWFUgfCBTX0lSV1hHIHwgU19JUldYTzsKKyAgQVNTRVJUX0VRKGV4cGVjdGVkX21vZGUgJiBtYXNrLCBzdGF0aWNfY2FzdDxtb2RlX3Q+KHNiLnN0X21vZGUpICYgbWFzayk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X0FUX1NZTUxJTktfTk9GT0xMT1dfd2l0aF9zeW1saW5rKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisgIHN0cnVjdCBzdGF0IHRmX3NiOworICBBU1NFUlRfRVEoMCwgc3RhdCh0Zi5maWxlbmFtZSwgJnRmX3NiKSk7CisKKyAgY2hhciBsaW5rbmFtZVsyNTVdOworICBzbnByaW50ZihsaW5rbmFtZSwgc2l6ZW9mKGxpbmtuYW1lKSwgIiVzLmxpbmsiLCB0Zi5maWxlbmFtZSk7CisKKyAgQVNTRVJUX0VRKDAsIHN5bWxpbmsodGYuZmlsZW5hbWUsIGxpbmtuYW1lKSk7CisgIGludCByZXN1bHQgPSBmY2htb2RhdChBVF9GRENXRCwgbGlua25hbWUsIDA3NTEsIEFUX1NZTUxJTktfTk9GT0xMT1cpOworICAvLyBJdCBkZXBlbmRzIG9uIHRoZSBrZXJuZWwgd2hldGhlciBjaG1vZCBvcGVyYXRpb24gb24gc3ltbGluayBpcyBhbGxvd2VkLgorICBpZiAocmVzdWx0ID09IDApIHsKKyAgICBBc3NlcnRTeW1saW5rTW9kZUVxdWFscygwNzUxLCBsaW5rbmFtZSk7CisgIH0gZWxzZSB7CisgICAgQVNTRVJUX0VRKC0xLCByZXN1bHQpOworICAgIEFTU0VSVF9FUShFTk9UU1VQLCBlcnJubyk7CisgIH0KKworICAvLyBUYXJnZXQgZmlsZSBtb2RlIHNob3VsZG4ndCBiZSBtb2RpZmllZC4KKyAgQXNzZXJ0RmlsZU1vZGVFcXVhbHModGZfc2Iuc3RfbW9kZSwgdGYuZmlsZW5hbWUpOworICB1bmxpbmsobGlua25hbWUpOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9BVF9TWU1MSU5LX05PRk9MTE9XX3dpdGhfZGFuZ2xpbmdfc3ltbGluaykgeworICBUZW1wb3JhcnlGaWxlIHRmOworCisgIGNoYXIgbGlua25hbWVbMjU1XTsKKyAgY2hhciB0YXJnZXRbMjU1XTsKKyAgc25wcmludGYobGlua25hbWUsIHNpemVvZihsaW5rbmFtZSksICIlcy5saW5rIiwgdGYuZmlsZW5hbWUpOworICBzbnByaW50Zih0YXJnZXQsIHNpemVvZih0YXJnZXQpLCAiJXMuZG9lc25vdGV4aXN0IiwgdGYuZmlsZW5hbWUpOworCisgIEFTU0VSVF9FUSgwLCBzeW1saW5rKHRhcmdldCwgbGlua25hbWUpKTsKKyAgaW50IHJlc3VsdCA9IGZjaG1vZGF0KEFUX0ZEQ1dELCBsaW5rbmFtZSwgMDc1MSwgQVRfU1lNTElOS19OT0ZPTExPVyk7CisgIC8vIEl0IGRlcGVuZHMgb24gdGhlIGtlcm5lbCB3aGV0aGVyIGNobW9kIG9wZXJhdGlvbiBvbiBzeW1saW5rIGlzIGFsbG93ZWQuCisgIGlmIChyZXN1bHQgPT0gMCkgeworICAgIEFzc2VydFN5bWxpbmtNb2RlRXF1YWxzKDA3NTEsIGxpbmtuYW1lKTsKKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfRVEoLTEsIHJlc3VsdCk7CisgICAgQVNTRVJUX0VRKEVOT1RTVVAsIGVycm5vKTsKKyAgfQorCisgIHVubGluayhsaW5rbmFtZSk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZhY2Nlc3NhdF9FSU5WQUwpIHsKKyAgQVNTRVJUX0VRKC0xLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBGX09LLCB+QVRfU1lNTElOS19OT0ZPTExPVykpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICBBU1NFUlRfRVEoLTEsIGZhY2Nlc3NhdChBVF9GRENXRCwgIi9kZXYvbnVsbCIsIH4oUl9PSyB8IFdfT0sgfCBYX09LKSwgMCkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjZWxzZQorICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgfihSX09LIHwgV19PSyB8IFhfT0spLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisgIEFTU0VSVF9FUSgtMSwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgfihSX09LIHwgV19PSyB8IFhfT0spLCAwKSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyNlbmRpZgorfQorCitURVNUKHN5c19zdGF0LCBmYWNjZXNzYXRfQVRfU1lNTElOS19OT0ZPTExPV19FSU5WQUwpIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIC8vIEFuZHJvaWQgZG9lc24ndCBzdXBwb3J0IEFUX1NZTUxJTktfTk9GT0xMT1cKKyAgQVNTRVJUX0VRKC0xLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBGX09LLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyNlbHNlCisgIEFTU0VSVF9FUSgwLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBGX09LLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisjZW5kaWYKK30KKworVEVTVChzeXNfc3RhdCwgZmFjY2Vzc2F0X2Rldl9udWxsKSB7CisgIEFTU0VSVF9FUSgwLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBGX09LLCAwKSk7CisgIEFTU0VSVF9FUSgwLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBSX09LLCAwKSk7CisgIEFTU0VSVF9FUSgwLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBXX09LLCAwKSk7CisgIEFTU0VSVF9FUSgwLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBSX09LfFdfT0ssIDApKTsKK30KKworVEVTVChzeXNfc3RhdCwgZmFjY2Vzc2F0X25vbmV4aXN0YW50KSB7CisgIEFTU0VSVF9FUSgtMSwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2JsYWgiLCBGX09LLCBBVF9TWU1MSU5LX05PRk9MTE9XKSk7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBBbmRyb2lkIGRvZXNuJ3Qgc3VwcG9ydCBBVF9TWU1MSU5LX05PRk9MTE9XCisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyNlbHNlCisgIEFTU0VSVF9FUShFTk9FTlQsIGVycm5vKTsKKyNlbmRpZgorfQpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzX3N0YXR2ZnNfdGVzdC5jcHAgYi90ZXN0cy9zeXNfc3RhdHZmc190ZXN0LmNwcAppbmRleCA2YjE5ZTEzLi5iZmY5ZTIwIDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfc3RhdHZmc190ZXN0LmNwcAorKysgYi90ZXN0cy9zeXNfc3RhdHZmc190ZXN0LmNwcApAQCAtMzAsNiArMzAsMTEgQEAKICAgRVhQRUNUX0VRKDBVLCBzYi5mX2ZmcmVlKTsKICAgRVhQRUNUX0VRKDBVLCBzYi5mX2ZzaWQpOwogICBFWFBFQ1RfRVEoMjU1VSwgc2IuZl9uYW1lbWF4KTsKKworICAvLyBUaGUga2VybmVsIHNldHMgYSBwcml2YXRlIGJpdCB0byBpbmRpY2F0ZSB0aGF0IGZfZmxhZ3MgaXMgdmFsaWQuCisgIC8vIFRoaXMgZmxhZyBpcyBub3Qgc3VwcG9zZWQgdG8gYmUgZXhwb3NlZCB0byBsaWJjIGNsaWVudHMuCisgIHN0YXRpYyBjb25zdCB1aW50MzJfdCBTVF9WQUxJRCA9IDB4MDAyMDsKKyAgRVhQRUNUX1RSVUUoKHNiLmZfZmxhZyAmIFNUX1ZBTElEKSA9PSAwKSA8PCBzYi5mX2ZsYWc7CiB9CiAKIFRFU1Qoc3lzX3N0YXR2ZnMsIHN0YXR2ZnMpIHsKQEAgLTUxLDYgKzU2LDcgQEAKICAgY2xvc2UoZmQpOwogICBDaGVjayhzYik7CiB9CisKIFRFU1Qoc3lzX3N0YXR2ZnMsIGZzdGF0dmZzNjQpIHsKICAgc3RydWN0IHN0YXR2ZnM2NCBzYjsKICAgaW50IGZkID0gb3BlbigiL3Byb2MiLCBPX1JET05MWSk7CmRpZmYgLS1naXQgYS90ZXN0cy9zeXNfc3lzaW5mb190ZXN0LmNwcCBiL3Rlc3RzL3N5c19zeXNpbmZvX3Rlc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIwMGUxM2YKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9zeXNfc3lzaW5mb190ZXN0LmNwcApAQCAtMCwwICsxLDMzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKKyNpbmNsdWRlIDxzeXMvc3lzaW5mby5oPgorCitURVNUKHN5c19zeXNpbmZvLCBzbW9rZSkgeworICBpbnQgbnByb2Nlc3NvciA9IGdldF9ucHJvY3MoKTsKKyAgQVNTRVJUX0dUKG5wcm9jZXNzb3IsIDApOworCisgIGludCBucHJvY2Vzc29yX2NvbmYgPSBnZXRfbnByb2NzX2NvbmYoKTsKKyAgQVNTRVJUX0dFKG5wcm9jZXNzb3JfY29uZiwgbnByb2Nlc3Nvcik7CisKKyAgbG9uZyBhdmFpbF9waHlzX3BhZ2VzID0gZ2V0X2F2cGh5c19wYWdlcygpOworICBBU1NFUlRfR1QoYXZhaWxfcGh5c19wYWdlcywgMCk7CisKKyAgbG9uZyBwaHlzX3BhZ2VzID0gZ2V0X3BoeXNfcGFnZXMoKTsKKyAgQVNTRVJUX0dFKHBoeXNfcGFnZXMsIGF2YWlsX3BoeXNfcGFnZXMpOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzX3Zmc190ZXN0LmNwcCBiL3Rlc3RzL3N5c192ZnNfdGVzdC5jcHAKaW5kZXggNGIwNTY2MC4uYTUyMTk2NyAxMDA2NDQKLS0tIGEvdGVzdHMvc3lzX3Zmc190ZXN0LmNwcAorKysgYi90ZXN0cy9zeXNfdmZzX3Rlc3QuY3BwCkBAIC0zMSw2ICszMSwxMSBAQAogICBFWFBFQ1RfRVEoMCwgc2IuZl9mc2lkLl9fdmFsWzBdKTsKICAgRVhQRUNUX0VRKDAsIHNiLmZfZnNpZC5fX3ZhbFsxXSk7CiAgIEVYUEVDVF9FUSgyNTUsIHN0YXRpY19jYXN0PGludD4oc2IuZl9uYW1lbGVuKSk7CisKKyAgLy8gVGhlIGtlcm5lbCBzZXRzIGEgcHJpdmF0ZSBiaXQgdG8gaW5kaWNhdGUgdGhhdCBmX2ZsYWdzIGlzIHZhbGlkLgorICAvLyBUaGlzIGZsYWcgaXMgbm90IHN1cHBvc2VkIHRvIGJlIGV4cG9zZWQgdG8gbGliYyBjbGllbnRzLgorICBzdGF0aWMgY29uc3QgdWludDMyX3QgU1RfVkFMSUQgPSAweDAwMjA7CisgIEVYUEVDVF9UUlVFKChzYi5mX2ZsYWdzICYgU1RfVkFMSUQpID09IDApIDw8IHNiLmZfZmxhZ3M7CiB9CiAKIFRFU1Qoc3lzX3Zmcywgc3RhdGZzKSB7CkBAIC01Miw2ICs1Nyw3IEBACiAgIGNsb3NlKGZkKTsKICAgQ2hlY2soc2IpOwogfQorCiBURVNUKHN5c192ZnMsIGZzdGF0ZnM2NCkgewogICBzdHJ1Y3Qgc3RhdGZzNjQgc2I7CiAgIGludCBmZCA9IG9wZW4oIi9wcm9jIiwgT19SRE9OTFkpOwpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzdGVtX3Byb3BlcnRpZXNfdGVzdC5jcHAgYi90ZXN0cy9zeXN0ZW1fcHJvcGVydGllc190ZXN0LmNwcAppbmRleCBiZmQ1ODU0Li5jN2JmZWU2IDEwMDY0NAotLS0gYS90ZXN0cy9zeXN0ZW1fcHJvcGVydGllc190ZXN0LmNwcAorKysgYi90ZXN0cy9zeXN0ZW1fcHJvcGVydGllc190ZXN0LmNwcApAQCAtMTUsOCArMTUsMTAgQEAKICAqLwogCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLSNpbmNsdWRlIDxzeXMvd2FpdC5oPgorI2luY2x1ZGUgIkJpb25pY0RlYXRoVGVzdC5oIgorCiAjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHN0cmluZz4KIApAQCAtMzk4LDkgKzQwMCwxMCBAQAogICAgICAgICAgV1RFUk1TSUcoZXhpdF9zdGF0dXMpID09IFNJR0FCUlQpOwogfQogCi1URVNUKHByb3BlcnRpZXNfRGVhdGhUZXN0LCByZWFkX29ubHkpIHsKK2NsYXNzIHByb3BlcnRpZXNfRGVhdGhUZXN0IDogcHVibGljIEJpb25pY0RlYXRoVGVzdCB7fTsKKworVEVTVF9GKHByb3BlcnRpZXNfRGVhdGhUZXN0LCByZWFkX29ubHkpIHsKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKIAogICAvLyBUaGlzIHRlc3Qgb25seSBtYWtlcyBzZW5zZSBpZiB3ZSdyZSB0YWxraW5nIHRvIHRoZSByZWFsIHN5c3RlbSBwcm9wZXJ0eSBzZXJ2aWNlLgogICBzdHJ1Y3Qgc3RhdCBzYjsKZGlmZiAtLWdpdCBhL3Rlc3RzL3RpbWVfdGVzdC5jcHAgYi90ZXN0cy90aW1lX3Rlc3QuY3BwCmluZGV4IDk3ZTM3MWMuLmMzN2RmMzYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3RpbWVfdGVzdC5jcHAKKysrIGIvdGVzdHMvdGltZV90ZXN0LmNwcApAQCAtMTcsMTcgKzE3LDE5IEBACiAjaW5jbHVkZSA8dGltZS5oPgogCiAjaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxmZWF0dXJlcy5oPgogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAjaW5jbHVkZSA8cHRocmVhZC5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgotI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgogI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxhdG9taWM+CiAKICNpbmNsdWRlICJTY29wZWRTaWduYWxIYW5kbGVyLmgiCiAKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19jb25zdGFudHMuaCIKKwogVEVTVCh0aW1lLCBnbXRpbWUpIHsKICAgdGltZV90IHQgPSAwOwogICB0bSogYnJva2VuX2Rvd24gPSBnbXRpbWUoJnQpOwpAQCAtNzEsNiArNzMsMzAgQEAKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0LCAmcmVzdWx0KSk7CiB9CiAKK1RFU1QodGltZSwgbWt0aW1lX2VtcHR5X1RaKSB7CisgIC8vIHR6Y29kZSB1c2VkIHRvIGhhdmUgYSBidWcgd2hlcmUgaXQgZGlkbid0IHJlaW5pdGlhbGl6ZSBzb21lIGludGVybmFsIHN0YXRlLgorCisgIC8vIENob29zZSBhIHRpbWUgd2hlcmUgRFNUIGlzIHNldC4KKyAgc3RydWN0IHRtIHQ7CisgIG1lbXNldCgmdCwgMCwgc2l6ZW9mKHRtKSk7CisgIHQudG1feWVhciA9IDE5ODAgLSAxOTAwOworICB0LnRtX21vbiA9IDY7CisgIHQudG1fbWRheSA9IDI7CisKKyAgc2V0ZW52KCJUWiIsICJBbWVyaWNhL0xvc19BbmdlbGVzIiwgMSk7CisgIHR6c2V0KCk7CisgIEFTU0VSVF9FUShzdGF0aWNfY2FzdDx0aW1lX3Q+KDMzMTM3MjgwMFUpLCBta3RpbWUoJnQpKTsKKworICBtZW1zZXQoJnQsIDAsIHNpemVvZih0bSkpOworICB0LnRtX3llYXIgPSAxOTgwIC0gMTkwMDsKKyAgdC50bV9tb24gPSA2OworICB0LnRtX21kYXkgPSAyOworCisgIHNldGVudigiVFoiLCAiIiwgMSk7IC8vIEltcGxpZXMgVVRDLgorICB0enNldCgpOworICBBU1NFUlRfRVEoc3RhdGljX2Nhc3Q8dGltZV90PigzMzEzNDQwMDBVKSwgbWt0aW1lKCZ0KSk7Cit9CisKIFRFU1QodGltZSwgbWt0aW1lXzEwMzEwOTI5KSB7CiAgIHN0cnVjdCB0bSB0OwogICBtZW1zZXQoJnQsIDAsIHNpemVvZih0bSkpOwpAQCAtMjA1LDcgKzIzMSw3IEBACiAKIHN0cnVjdCBDb3VudGVyIHsKICBwcml2YXRlOgotICBhdG9taWNfaW50IHZhbHVlOworICBzdGQ6OmF0b21pYzxpbnQ+IHZhbHVlOwogICB0aW1lcl90IHRpbWVyX2lkOwogICBzaWdldmVudF90IHNlOwogICBib29sIHRpbWVyX3ZhbGlkOwpAQCAtMjE3LDE0ICsyNDMsMTMgQEAKICAgfQogCiAgcHVibGljOgotICBDb3VudGVyKHZvaWQgKCpmbikoc2lndmFsX3QpKSA6IHZhbHVlKEFUT01JQ19WQVJfSU5JVCgwKSksIHRpbWVyX3ZhbGlkKGZhbHNlKSB7CisgIENvdW50ZXIodm9pZCAoKmZuKShzaWd2YWxfdCkpIDogdmFsdWUoMCksIHRpbWVyX3ZhbGlkKGZhbHNlKSB7CiAgICAgbWVtc2V0KCZzZSwgMCwgc2l6ZW9mKHNlKSk7CiAgICAgc2Uuc2lnZXZfbm90aWZ5ID0gU0lHRVZfVEhSRUFEOwogICAgIHNlLnNpZ2V2X25vdGlmeV9mdW5jdGlvbiA9IGZuOwogICAgIHNlLnNpZ2V2X3ZhbHVlLnNpdmFsX3B0ciA9IHRoaXM7CiAgICAgQ3JlYXRlKCk7CiAgIH0KLQogICB2b2lkIERlbGV0ZVRpbWVyKCkgewogICAgIEFTU0VSVF9UUlVFKHRpbWVyX3ZhbGlkKTsKICAgICBBU1NFUlRfRVEoMCwgdGltZXJfZGVsZXRlKHRpbWVyX2lkKSk7CkBAIC0yMzcsOCArMjYyLDggQEAKICAgICB9CiAgIH0KIAotICBpbnQgVmFsdWUoKSB7Ci0gICAgcmV0dXJuIGF0b21pY19sb2FkKCZ2YWx1ZSk7CisgIGludCBWYWx1ZSgpIGNvbnN0IHsKKyAgICByZXR1cm4gdmFsdWU7CiAgIH0KIAogICB2b2lkIFNldFRpbWUodGltZV90IHZhbHVlX3MsIHRpbWVfdCB2YWx1ZV9ucywgdGltZV90IGludGVydmFsX3MsIHRpbWVfdCBpbnRlcnZhbF9ucykgewpAQCAtMjQ2LDIxICsyNzEsMjEgQEAKICAgfQogCiAgIGJvb2wgVmFsdWVVcGRhdGVkKCkgewotICAgIGludCBjdXJyZW50X3ZhbHVlID0gYXRvbWljX2xvYWQoJnZhbHVlKTsKKyAgICBpbnQgY3VycmVudF92YWx1ZSA9IHZhbHVlOwogICAgIHRpbWVfdCBzdGFydCA9IHRpbWUoTlVMTCk7Ci0gICAgd2hpbGUgKGN1cnJlbnRfdmFsdWUgPT0gYXRvbWljX2xvYWQoJnZhbHVlKSAmJiAodGltZShOVUxMKSAtIHN0YXJ0KSA8IDUpIHsKKyAgICB3aGlsZSAoY3VycmVudF92YWx1ZSA9PSB2YWx1ZSAmJiAodGltZShOVUxMKSAtIHN0YXJ0KSA8IDUpIHsKICAgICB9Ci0gICAgcmV0dXJuIGN1cnJlbnRfdmFsdWUgIT0gYXRvbWljX2xvYWQoJnZhbHVlKTsKKyAgICByZXR1cm4gY3VycmVudF92YWx1ZSAhPSB2YWx1ZTsKICAgfQogCiAgIHN0YXRpYyB2b2lkIENvdW50Tm90aWZ5RnVuY3Rpb24oc2lndmFsX3QgdmFsdWUpIHsKICAgICBDb3VudGVyKiBjZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Q291bnRlcio+KHZhbHVlLnNpdmFsX3B0cik7Ci0gICAgYXRvbWljX2ZldGNoX2FkZCgmY2QtPnZhbHVlLCAxKTsKKyAgICArK2NkLT52YWx1ZTsKICAgfQogCiAgIHN0YXRpYyB2b2lkIENvdW50QW5kRGlzYXJtTm90aWZ5RnVuY3Rpb24oc2lndmFsX3QgdmFsdWUpIHsKICAgICBDb3VudGVyKiBjZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Q291bnRlcio+KHZhbHVlLnNpdmFsX3B0cik7Ci0gICAgYXRvbWljX2ZldGNoX2FkZCgmY2QtPnZhbHVlLCAxKTsKKyAgICArK2NkLT52YWx1ZTsKIAogICAgIC8vIFNldHRpbmcgdGhlIGluaXRpYWwgZXhwaXJhdGlvbiB0aW1lIHRvIDAgZGlzYXJtcyB0aGUgdGltZXIuCiAgICAgY2QtPlNldFRpbWUoMCwgMCwgMSwgMCk7CkBAIC00NjIsMTAgKzQ4Nyw1OSBAQAogICB0czIudHZfbnNlYyAtPSB0czEudHZfbnNlYzsKICAgaWYgKHRzMi50dl9uc2VjIDwgMCkgewogICAgIC0tdHMyLnR2X3NlYzsKLSAgICB0czIudHZfbnNlYyArPSAxMDAwMDAwMDAwOworICAgIHRzMi50dl9uc2VjICs9IE5TX1BFUl9TOwogICB9CiAKICAgLy8gU2hvdWxkIGJlIGxlc3MgdGhhbiAoYSB2ZXJ5IGdlbmVyb3VzLCB0byB0cnkgdG8gYXZvaWQgZmxha2luZXNzKSAxMDAwMDAwbnMuCiAgIEFTU0VSVF9FUSgwLCB0czIudHZfc2VjKTsKICAgQVNTRVJUX0xUKHRzMi50dl9uc2VjLCAxMDAwMDAwKTsKIH0KKworVEVTVCh0aW1lLCBjbG9jaykgeworICAvLyBjbG9jaygzKSBpcyBoYXJkIHRvIHRlc3QsIGJ1dCBhIDFzIHNsZWVwIHNob3VsZCBjb3N0IGxlc3MgdGhhbiAxbXMuCisgIGNsb2NrX3QgdDAgPSBjbG9jaygpOworICBzbGVlcCgxKTsKKyAgY2xvY2tfdCB0MSA9IGNsb2NrKCk7CisgIEFTU0VSVF9MVCh0MSAtIHQwLCBDTE9DS1NfUEVSX1NFQyAvIDEwMDApOworfQorCitwaWRfdCBHZXRJbnZhbGlkUGlkKCkgeworICBGSUxFKiBmcCA9IGZvcGVuKCIvcHJvYy9zeXMva2VybmVsL3BpZF9tYXgiLCAiciIpOworICBsb25nIHBpZF9tYXg7CisgIGZzY2FuZihmcCwgIiVsZCIsICZwaWRfbWF4KTsKKyAgcGlkX3QgaW52YWxpZF9waWQgPSBzdGF0aWNfY2FzdDxwaWRfdD4ocGlkX21heCArIDEpOworICBmY2xvc2UoZnApOworICByZXR1cm4gaW52YWxpZF9waWQ7Cit9CisKK1RFU1QodGltZSwgY2xvY2tfZ2V0Y3B1Y2xvY2tpZCkgeworICAvLyBGb3IgY3VycmVudCBwcm9jZXNzLgorICBjbG9ja2lkX3QgY2xvY2tpZDsKKyAgQVNTRVJUX0VRKDAsIGNsb2NrX2dldGNwdWNsb2NraWQoZ2V0cGlkKCksICZjbG9ja2lkKSk7CisKKyAgdGltZXNwZWMgdHM7CisgIEFTU0VSVF9FUSgwLCBjbG9ja19nZXR0aW1lKGNsb2NraWQsICZ0cykpOworCisgIC8vIEZvciBwYXJlbnQgcHJvY2Vzcy4KKyAgQVNTRVJUX0VRKDAsIGNsb2NrX2dldGNwdWNsb2NraWQoZ2V0cHBpZCgpLCAmY2xvY2tpZCkpOworICBBU1NFUlRfRVEoMCwgY2xvY2tfZ2V0dGltZShjbG9ja2lkLCAmdHMpKTsKKworICAvLyBGb3IgaW52YWxpZCBwcm9jZXNzLgorICAvLyBXZSBjYW4ndCB1c2UgLTEgZm9yIGludmFsaWQgcGlkIGhlcmUsIGJlY2F1c2UgY2xvY2tfZ2V0Y3B1Y2xvY2tpZCgpIGNhbid0IGRldGVjdCBpdC4KKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoRVNSQ0gsIGNsb2NrX2dldGNwdWNsb2NraWQoR2V0SW52YWxpZFBpZCgpLCAmY2xvY2tpZCkpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworfQorCitURVNUKHRpbWUsIGNsb2NrX3NldHRpbWUpIHsKKyAgZXJybm8gPSAwOworICB0aW1lc3BlYyB0czsKKyAgQVNTRVJUX0VRKC0xLCBjbG9ja19zZXR0aW1lKC0xLCAmdHMpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHRpbWUsIGNsb2NrX25hbm9zbGVlcCkgeworICB0aW1lc3BlYyBpbjsKKyAgdGltZXNwZWMgb3V0OworICBBU1NFUlRfRVEoRUlOVkFMLCBjbG9ja19uYW5vc2xlZXAoLTEsIDAsICZpbiwgJm91dCkpOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvdWNoYXJfdGVzdC5jcHAgYi90ZXN0cy91Y2hhcl90ZXN0LmNwcAppbmRleCBlY2EzYzVlLi5jODg3ZjhhIDEwMDY0NAotLS0gYS90ZXN0cy91Y2hhcl90ZXN0LmNwcAorKysgYi90ZXN0cy91Y2hhcl90ZXN0LmNwcApAQCAtMTksNyArMTksNiBAQAogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKICNkZWZpbmUgSEFWRV9VQ0hBUiAxCiAjZWxpZiBkZWZpbmVkKF9fR0xJQkNfXykKLSNpbmNsdWRlIDxmZWF0dXJlcy5oPgogI2RlZmluZSBIQVZFX1VDSEFSIF9fR0xJQkNfUFJFUkVRKDIsIDE2KQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL3Rlc3RzL3VuaXN0ZF90ZXN0LmNwcCBiL3Rlc3RzL3VuaXN0ZF90ZXN0LmNwcAppbmRleCA4MTk1ZWE4Li5mNTRhNDYxIDEwMDY0NAotLS0gYS90ZXN0cy91bmlzdGRfdGVzdC5jcHAKKysrIGIvdGVzdHMvdW5pc3RkX3Rlc3QuY3BwCkBAIC0xNSw2ICsxNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisjaW5jbHVkZSAiQmlvbmljRGVhdGhUZXN0LmgiCiAjaW5jbHVkZSAiU2NvcGVkU2lnbmFsSGFuZGxlci5oIgogI2luY2x1ZGUgIlRlbXBvcmFyeUZpbGUuaCIKIApAQCAtMjIsMTQgKzIzLDEyIEBACiAjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KICNpbmNsdWRlIDxzeXMvc3lzY2FsbC5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy91dHNuYW1lLmg+CiAjaW5jbHVkZSA8c3lzL3dhaXQuaD4KLQotVEVTVCh1bmlzdGQsIHN5c2NvbmZfU0NfTU9OT1RPTklDX0NMT0NLKSB7Ci0gIEFTU0VSVF9HVChzeXNjb25mKF9TQ19NT05PVE9OSUNfQ0xPQ0spLCAwKTsKLX0KKyNpbmNsdWRlIDx1bmlzdGQuaD4KIAogc3RhdGljIHZvaWQqIGdldF9icmsoKSB7CiAgIHJldHVybiBzYnJrKDApOwpAQCAtMjQ3LDggKzI0Niw2IEBACiB9CiAKIFRFU1QodW5pc3RkLCB1bnNldGVudl9FSU5WQUwpIHsKLSAgRVhQRUNUX0VRKC0xLCB1bnNldGVudihOVUxMKSk7Ci0gIEVYUEVDVF9FUShFSU5WQUwsIGVycm5vKTsKICAgRVhQRUNUX0VRKC0xLCB1bnNldGVudigiIikpOwogICBFWFBFQ1RfRVEoRUlOVkFMLCBlcnJubyk7CiAgIEVYUEVDVF9FUSgtMSwgdW5zZXRlbnYoImE9YiIpKTsKQEAgLTQ2MiwzICs0NTksMzY0IEBACiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2pvaW4odCwgJnJlc3VsdCkpOwogICBBU1NFUlRfRVEoTlVMTCwgcmVzdWx0KTsKIH0KKworY2xhc3MgdW5pc3RkX0RlYXRoVGVzdCA6IHB1YmxpYyBCaW9uaWNEZWF0aFRlc3Qge307CisKK1RFU1RfRih1bmlzdGRfRGVhdGhUZXN0LCBhYm9ydCkgeworICBBU1NFUlRfRVhJVChhYm9ydCgpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworfQorCitURVNUKHVuaXN0ZCwgc2V0aG9zdG5hbWUpIHsKKyAgLy8gVGhlIHBlcm1pc3Npb25zIGNoZWNrIGhhcHBlbnMgYmVmb3JlIHRoZSBhcmd1bWVudCBjaGVjaywgc28gdGhpcyB3aWxsCisgIC8vIGZhaWwgZm9yIGEgZGlmZmVyZW50IHJlYXNvbiBpZiB5b3UncmUgcnVubmluZyBhcyByb290IHRoYW4gaWYgeW91J3JlCisgIC8vIG5vdCwgYnV0IGl0J2xsIGZhaWwgZWl0aGVyIHdheS4gQ2hlY2tpbmcgdGhhdCB3ZSBoYXZlIHRoZSBzeW1ib2wgaXMgYWJvdXQKKyAgLy8gYWxsIHdlIGNhbiBkbyBmb3Igc2V0aG9zdG5hbWUoMikuCisgIEFTU0VSVF9FUSgtMSwgc2V0aG9zdG5hbWUoIiIsIC0xKSk7Cit9CisKK1RFU1QodW5pc3RkLCBnZXRob3N0bmFtZSkgeworICBjaGFyIGhvc3RuYW1lW0hPU1RfTkFNRV9NQVggKyAxXTsKKyAgbWVtc2V0KGhvc3RuYW1lLCAwLCBzaXplb2YoaG9zdG5hbWUpKTsKKworICAvLyBDYW4gd2UgZ2V0IHRoZSBob3N0bmFtZSB3aXRoIGEgYmlnIGJ1ZmZlcj8KKyAgQVNTRVJUX0VRKDAsIGdldGhvc3RuYW1lKGhvc3RuYW1lLCBIT1NUX05BTUVfTUFYKSk7CisKKyAgLy8gQ2FuIHdlIGdldCB0aGUgaG9zdG5hbWUgd2l0aCBhIHJpZ2h0LXNpemVkIGJ1ZmZlcj8KKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoMCwgZ2V0aG9zdG5hbWUoaG9zdG5hbWUsIHN0cmxlbihob3N0bmFtZSkgKyAxKSk7CisKKyAgLy8gRG9lcyB1bmFtZSgyKSBhZ3JlZT8KKyAgdXRzbmFtZSBidWY7CisgIEFTU0VSVF9FUSgwLCB1bmFtZSgmYnVmKSk7CisgIEFTU0VSVF9FUSgwLCBzdHJuY21wKGhvc3RuYW1lLCBidWYubm9kZW5hbWUsIFNZU19OTUxOKSk7CisgIEFTU0VSVF9HVChzdHJsZW4oaG9zdG5hbWUpLCAwVSk7CisKKyAgLy8gRG8gd2UgY29ycmVjdGx5IGRldGVjdCB0cnVuY2F0aW9uPworICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUSgtMSwgZ2V0aG9zdG5hbWUoaG9zdG5hbWUsIHN0cmxlbihob3N0bmFtZSkpKTsKKyAgQVNTRVJUX0VRKEVOQU1FVE9PTE9ORywgZXJybm8pOworfQorCitURVNUKHVuaXN0ZCwgcGF0aGNvbmZfZnBhdGhjb25mKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisgIGxvbmcgcmMgPSAwTDsKKyAgLy8gQXMgYSBmaWxlIHN5c3RlbSdzIGJsb2NrIHNpemUgaXMgYWx3YXlzIHBvd2VyIG9mIDIsIHRoZSBjb25maWd1cmUgdmFsdWVzCisgIC8vIGZvciBBTExPQyBhbmQgWEZFUiBzaG91bGQgYmUgcG93ZXIgb2YgMiBhcyB3ZWxsLgorICByYyA9IHBhdGhjb25mKHRmLmZpbGVuYW1lLCBfUENfQUxMT0NfU0laRV9NSU4pOworICBBU1NFUlRfVFJVRShyYyA+IDAgJiYgcG93ZXJvZjIocmMpKTsKKyAgcmMgPSBwYXRoY29uZih0Zi5maWxlbmFtZSwgX1BDX1JFQ19NSU5fWEZFUl9TSVpFKTsKKyAgQVNTRVJUX1RSVUUocmMgPiAwICYmIHBvd2Vyb2YyKHJjKSk7CisgIHJjID0gcGF0aGNvbmYodGYuZmlsZW5hbWUsIF9QQ19SRUNfWEZFUl9BTElHTik7CisgIEFTU0VSVF9UUlVFKHJjID4gMCAmJiBwb3dlcm9mMihyYykpOworCisgIHJjID0gZnBhdGhjb25mKHRmLmZkLCBfUENfQUxMT0NfU0laRV9NSU4pOworICBBU1NFUlRfVFJVRShyYyA+IDAgJiYgcG93ZXJvZjIocmMpKTsKKyAgcmMgPSBmcGF0aGNvbmYodGYuZmQsIF9QQ19SRUNfTUlOX1hGRVJfU0laRSk7CisgIEFTU0VSVF9UUlVFKHJjID4gMCAmJiBwb3dlcm9mMihyYykpOworICByYyA9IGZwYXRoY29uZih0Zi5mZCwgX1BDX1JFQ19YRkVSX0FMSUdOKTsKKyAgQVNTRVJUX1RSVUUocmMgPiAwICYmIHBvd2Vyb2YyKHJjKSk7Cit9CisKKworVEVTVCh1bmlzdGQsIF9QT1NJWF9tYWNyb3Nfc21va2UpIHsKKyAgLy8gTWFrZSBhIHRpZ2h0IHZlcmlmaWNhdGlvbiBvZiBfUE9TSVhfKiAvIF9QT1NJWDJfKiAvIF9YT1BFTl8qIG1hY3JvcywgdG8gcHJldmVudCBjaGFuZ2UgYnkgbWlzdGFrZS4KKyAgLy8gVmVyaWZ5IGFjY29yZGluZyB0byBQT1NJWC4xLTIwMDguCisgIEVYUEVDVF9FUSgyMDA4MDlMLCBfUE9TSVhfVkVSU0lPTik7CisKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfQURWSVNPUllfSU5GTyk7CisgIEVYUEVDVF9HVChfUE9TSVhfQUlPX0xJU1RJT19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX0FJT19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX0FSR19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX0NISUxEX01BWCwgMCk7CisgIEVYUEVDVF9ORShfUE9TSVhfQ0hPV05fUkVTVFJJQ1RFRCwgLTEpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9DTE9DS19TRUxFQ1RJT04pOworICBFWFBFQ1RfRVEoMCwgX1BPU0lYX0NQVVRJTUUpOyAgICAgICAgICAgICAvLyBVc2Ugc3lzY29uZiB0byBkZXRlY3Qgc3VwcG9ydCBhdCBydW50aW1lLgorICBFWFBFQ1RfR1QoX1BPU0lYX0RFTEFZVElNRVJfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfRlNZTkMpOworICBFWFBFQ1RfR1QoX1BPU0lYX0hPU1RfTkFNRV9NQVgsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9JUFY2KTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9KT0JfQ09OVFJPTCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfTElOS19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX0xPR0lOX05BTUVfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfTUFQUEVEX0ZJTEVTKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9NQVhfQ0FOT04sIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX01BWF9JTlBVVCwgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX01FTUxPQ0spOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9NRU1MT0NLX1JBTkdFKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfTUVNT1JZX1BST1RFQ1RJT04pOworICBFWFBFQ1RfRVEoMCwgX1BPU0lYX01PTk9UT05JQ19DTE9DSyk7CisgIEVYUEVDVF9HVChfUE9TSVhfTVFfT1BFTl9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX01RX1BSSU9fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9OQU1FX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfTkdST1VQU19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX05PX1RSVU5DLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9PUEVOX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfUEFUSF9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1BJUEVfQlVGLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1JBV19TT0NLRVRTKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfUkVBREVSX1dSSVRFUl9MT0NLUyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1JFQUxUSU1FX1NJR05BTFMpOworICBFWFBFQ1RfR1QoX1BPU0lYX1JFR0VYUCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfUkVfRFVQX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU0FWRURfSURTLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfU0VNQVBIT1JFUyk7CisgIEVYUEVDVF9HVChfUE9TSVhfU0VNX05TRU1TX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU0VNX1ZBTFVFX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU0hFTEwsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1NJR1FVRVVFX01BWCwgMCk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1NQT1JBRElDX1NFUlZFUik7CisgIEVYUEVDVF9HVChfUE9TSVhfU1NJWkVfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9TVFJFQU1fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9TWU1MSU5LX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU1lNTE9PUF9NQVgsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9TWU5DSFJPTklaRURfSU8pOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USFJFQURTKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEX0FUVFJfU1RBQ0tBRERSKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEX0FUVFJfU1RBQ0tTSVpFKTsKKyAgRVhQRUNUX0VRKDAsIF9QT1NJWF9USFJFQURfQ1BVVElNRSk7ICAgICAgIC8vIFVzZSBzeXNjb25mIHRvIGRldGVjdCBzdXBwb3J0IGF0IHJ1bnRpbWUuCisgIEVYUEVDVF9HVChfUE9TSVhfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUywgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVEhSRUFEX0tFWVNfTUFYLCAxMjgpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USFJFQURfUFJJT1JJVFlfU0NIRURVTElORyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1RIUkVBRF9QUklPX0lOSEVSSVQpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USFJFQURfUFJJT19QUk9URUNUKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVEhSRUFEX1JPQlVTVF9QUklPX1BST1RFQ1QpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USFJFQURfU0FGRV9GVU5DVElPTlMpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9USFJFQURfU1BPUkFESUNfU0VSVkVSKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9USFJFQURfVEhSRUFEU19NQVgsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USU1FT1VUUyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1RJTUVSUyk7CisgIEVYUEVDVF9HVChfUE9TSVhfVElNRVJfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVFJBQ0UpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9UUkFDRV9FVkVOVF9GSUxURVIpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9UUkFDRV9JTkhFUklUKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVFJBQ0VfTE9HKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9UVFlfTkFNRV9NQVgsIDApOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9UWVBFRF9NRU1PUllfT0JKRUNUUyk7CisgIEVYUEVDVF9HVChfUE9TSVhfVFpOQU1FX01BWCwgMCk7CisgIEVYUEVDVF9ORSgtMSwgX1BPU0lYX1ZESVNBQkxFKTsKKworICBFWFBFQ1RfR1QoX1BPU0lYMl9CQ19CQVNFX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVgyX0JDX0RJTV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYMl9CQ19TQ0FMRV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYMl9CQ19TVFJJTkdfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfQ0hBUkNMQVNTX05BTUVfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfQ09MTF9XRUlHSFRTX01BWCwgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYMl9DX0JJTkQpOworICBFWFBFQ1RfR1QoX1BPU0lYMl9FWFBSX05FU1RfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfTElORV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYMl9SRV9EVVBfTUFYLCAwKTsKKworICBFWFBFQ1RfRVEoNzAwLCBfWE9QRU5fVkVSU0lPTik7CisgIEVYUEVDVF9HVChfWE9QRU5fSU9WX01BWCwgMCk7CisgIEVYUEVDVF9HVChfWE9QRU5fVU5JWCwgMCk7CisKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIC8vIFRoZXNlIHRlc3RzIG9ubHkgcGFzcyBvbiBiaW9uaWMsIGFzIGJpb25pYyBhbmQgZ2xpYmMgaGFzIGRpZmZlcmVudCBzdXBwb3J0IG9uIHRoZXNlIG1hY3Jvcy4KKyAgLy8gTWFjcm9zIGxpa2UgX1BPU0lYX0FTWU5DSFJPTk9VU19JTyBhcmUgbm90IHN1cHBvcnRlZCBvbiBiaW9uaWMgeWV0LgorICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9BU1lOQ0hST05PVVNfSU8pOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9CQVJSSUVSUyk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX01FU1NBR0VfUEFTU0lORyk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1BSSU9SSVRJWkVEX0lPKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfU0hBUkVEX01FTU9SWV9PQkpFQ1RTKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfU1BBV04pOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9TUElOX0xPQ0tTKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVEhSRUFEX1BST0NFU1NfU0hBUkVEKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVEhSRUFEX1JPQlVTVF9QUklPX0lOSEVSSVQpOworCisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYMl9WRVJTSU9OKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVgyX0NIQVJfVEVSTSk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYMl9DX0RFVik7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYMl9MT0NBTEVERUYpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWDJfU1dfREVWKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVgyX1VQRSk7CisKKyAgRVhQRUNUX0VRKC0xLCBfWE9QRU5fRU5IX0kxOE4pOworICBFWFBFQ1RfRVEoLTEsIF9YT1BFTl9DUllQVCk7CisgIEVYUEVDVF9FUSgtMSwgX1hPUEVOX0xFR0FDWSk7CisgIEVYUEVDVF9FUSgtMSwgX1hPUEVOX1JFQUxUSU1FKTsKKyAgRVhQRUNUX0VRKC0xLCBfWE9QRU5fUkVBTFRJTUVfVEhSRUFEUyk7CisgIEVYUEVDVF9FUSgtMSwgX1hPUEVOX1NITSk7CisKKyNlbmRpZiAvLyBkZWZpbmVkKF9fQklPTklDX18pCit9CisKKyNkZWZpbmUgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQobmFtZSkgVmVyaWZ5U3lzY29uZihuYW1lLCAjbmFtZSwgW10obG9uZyB2KXtyZXR1cm4gdiA9PSAtMTt9KQorCisvLyBzeXNjb25mKCkgbWVhbnMgdW5saW1pdGVkIHdoZW4gaXQgcmV0dXJucyAtMSB3aXRoIGVycm5vIHVuY2hhbmdlZC4KKyNkZWZpbmUgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUobmFtZSkgXAorICBWZXJpZnlTeXNjb25mKG5hbWUsICNuYW1lLCBbXShsb25nIHYpe3JldHVybiAodiA+IDAgfHwgdiA9PSAtMSk7fSkKKworI2RlZmluZSBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKG5hbWUpIFwKKyAgVmVyaWZ5U3lzY29uZihuYW1lLCAjbmFtZSwgW10obG9uZyB2KXtyZXR1cm4gdiA9PSBfUE9TSVhfVkVSU0lPTjt9KQorCitzdGF0aWMgdm9pZCBWZXJpZnlTeXNjb25mKGludCBvcHRpb24sIGNvbnN0IGNoYXIgKm9wdGlvbl9uYW1lLCBib29sICgqdmVyaWZ5KShsb25nKSkgeworICBlcnJubyA9IDA7CisgIGxvbmcgcmV0ID0gc3lzY29uZihvcHRpb24pOworICBFWFBFQ1RfVFJVRSgwID09IGVycm5vICYmIHZlcmlmeShyZXQpKSA8PCAibmFtZSA9ICIgPDwgb3B0aW9uX25hbWUgPDwgIiwgcmV0ID0gIgorICAgICAgPDwgcmV0IDw8IiwgRXJyb3IgTWVzc2FnZTogIiA8PCBzdHJlcnJvcihlcnJubyk7Cit9CisKK1RFU1QodW5pc3RkLCBzeXNjb25mKSB7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX0FEVklTT1JZX0lORk8pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQVJHX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19CQ19CQVNFX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19CQ19ESU1fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0JDX1NDQUxFX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19DSElMRF9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQ0xLX1RDSyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19DT0xMX1dFSUdIVFNfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfQ1BVVElNRSk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19FWFBSX05FU1RfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0xJTkVfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX05HUk9VUFNfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX09QRU5fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1BBU1NfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfMl9DX0JJTkQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9GT1JUX0RFVik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX0ZPUlRfUlVOKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfVVBFKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0pPQl9DT05UUk9MKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1NBVkVEX0lEUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1ZFUlNJT04pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfUkVfRFVQX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19TVFJFQU1fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RaTkFNRV9NQVgpOworICBWZXJpZnlTeXNjb25mKF9TQ19YT1BFTl9WRVJTSU9OLCAiX1NDX1hPUEVOX1ZFUlNJT04iLCBbXShsb25nIHYpe3JldHVybiB2ID09IF9YT1BFTl9WRVJTSU9OO30pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQVRFWElUX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19JT1ZfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1BBR0VTSVpFKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1BBR0VfU0laRSk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19YT1BFTl9VTklYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0FJT19MSVNUSU9fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0FJT19NQVgpOworICBWZXJpZnlTeXNjb25mKF9TQ19BSU9fUFJJT19ERUxUQV9NQVgsICJfU0NfQUlPX1BSSU9fREVMVEFfTUFYIiwgW10obG9uZyB2KXtyZXR1cm4gdiA+PSAwO30pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfREVMQVlUSU1FUl9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfTVFfT1BFTl9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfTVFfUFJJT19NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfUlRTSUdfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1NFTV9OU0VNU19NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfU0VNX1ZBTFVFX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19USU1FUl9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19GU1lOQyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX01BUFBFRF9GSUxFUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX01FTUxPQ0spOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19NRU1MT0NLX1JBTkdFKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfTUVNT1JZX1BST1RFQ1RJT04pOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19QUklPUklUWV9TQ0hFRFVMSU5HKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfUkVBTFRJTUVfU0lHTkFMUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1NFTUFQSE9SRVMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19TWU5DSFJPTklaRURfSU8pOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USU1FUlMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfR0VUR1JfUl9TSVpFX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19HRVRQV19SX1NJWkVfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0xPR0lOX05BTUVfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfVEhSRUFEX0tFWVNfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RIUkVBRF9TVEFDS19NSU4pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfVEhSRUFEX1RIUkVBRFNfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RUWV9OQU1FX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1RIUkVBRFMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfQVRUUl9TVEFDS0FERFIpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfQVRUUl9TVEFDS1NJWkUpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfUFJJT1JJVFlfU0NIRURVTElORyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1RIUkVBRF9QUklPX0lOSEVSSVQpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfUFJJT19QUk9URUNUKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVEhSRUFEX1NBRkVfRlVOQ1RJT05TKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX05QUk9DRVNTT1JTX0NPTkYpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfTlBST0NFU1NPUlNfT05MTik7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19QSFlTX1BBR0VTKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0FWUEhZU19QQUdFUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX01PTk9UT05JQ19DTE9DSyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1BCUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1BCU19BQ0NPVU5USU5HKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfUEJTX0NIRUNLUE9JTlQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9QQlNfTE9DQVRFKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfUEJTX01FU1NBR0UpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9QQlNfVFJBQ0spOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19DTE9DS19TRUxFQ1RJT04pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfSE9TVF9OQU1FX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX0lQVjYpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19SQVdfU09DS0VUUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1JFQURFUl9XUklURVJfTE9DS1MpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfUkVHRVhQKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1NIRUxMKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1NQT1JBRElDX1NFUlZFUik7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19TWU1MT09QX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1RIUkVBRF9DUFVUSU1FKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RIUkVBRF9TUE9SQURJQ19TRVJWRVIpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USU1FT1VUUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19UUkFDRSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19UUkFDRV9FVkVOVF9GSUxURVIpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfRVZFTlRfTkFNRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfSU5IRVJJVCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19UUkFDRV9MT0cpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfTkFNRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfU1lTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19UUkFDRV9VU0VSX0VWRU5UX01BWCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19UWVBFRF9NRU1PUllfT0JKRUNUUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9TVFJFQU1TKTsKKworI2lmIGRlZmluZWQoX19MUDY0X18pCisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19WN19JTFAzMl9PRkYzMik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19WN19JTFAzMl9PRkZCSUcpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfVjdfTFA2NF9PRkY2NCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19WN19MUEJJR19PRkZCSUcpOworI2Vsc2UKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1Y3X0lMUDMyX09GRjMyKTsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIC8vIGJpb25pYyBkb2VzIG5vdCBzdXBwb3J0IDY0IGJpdHMgb2ZmX3QgdHlwZSBvbiAzMmJpdCBtYWNoaW5lLgorICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVjdfSUxQMzJfT0ZGQklHKTsKKyNlbmRpZgorICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVjdfTFA2NF9PRkY2NCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19WN19MUEJJR19PRkZCSUcpOworI2VuZGlmCisKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIC8vIFRlc3RzIGNhbiBvbmx5IHJ1biBvbiBiaW9uaWMsIGFzIGJpb25pYyBhbmQgZ2xpYmMgaGF2ZSBkaWZmZXJlbnQgc3VwcG9ydCBmb3IgdGhlc2Ugb3B0aW9ucy4KKyAgLy8gQmVsb3cgb3B0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCBvbiBiaW9uaWMgeWV0LgorICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfQVNZTkNIUk9OT1VTX0lPKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX0JBUlJJRVJTKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX01FU1NBR0VfUEFTU0lORyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19QUklPUklUSVpFRF9JTyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19TSEFSRURfTUVNT1JZX09CSkVDVFMpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfU1BBV04pOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfU1BJTl9MT0NLUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19USFJFQURfUFJPQ0VTU19TSEFSRUQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVEhSRUFEX1JPQlVTVF9QUklPX0lOSEVSSVQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVEhSRUFEX1JPQlVTVF9QUklPX1BST1RFQ1QpOworCisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX0NfREVWKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfQ0hBUl9URVJNKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfTE9DQUxFREVGKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfU1dfREVWKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfVkVSU0lPTik7CisKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1hPUEVOX0NSWVBUKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1hPUEVOX0VOSF9JMThOKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1hPUEVOX0xFR0FDWSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9SRUFMVElNRSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9SRUFMVElNRV9USFJFQURTKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1hPUEVOX1NITSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9VVUNQKTsKKyNlbmRpZiAvLyBkZWZpbmVkKF9fQklPTklDX18pCit9CisKK1RFU1QodW5pc3RkLCBkdXAyX3NhbWUpIHsKKyAgLy8gUE9TSVggc2F5cyBvZiBkdXAyOgorICAvLyBJZiBmaWxkZXMyIGlzIGFscmVhZHkgYSB2YWxpZCBvcGVuIGZpbGUgZGVzY3JpcHRvciAuLi4KKyAgLy8gW2FuZF0gZmlsZGVzIGlzIGVxdWFsIHRvIGZpbGRlczIgLi4uIGR1cDIoKSBzaGFsbCByZXR1cm4KKyAgLy8gZmlsZGVzMiB3aXRob3V0IGNsb3NpbmcgaXQuCisgIC8vIFRoaXMgaXNuJ3QgdHJ1ZSBvZiBkdXAzKDIpLCBzbyB3ZSBuZWVkIHRvIG1hbnVhbGx5IGltcGxlbWVudCB0aGF0LgorCisgIC8vIEVxdWFsIGFuZCB2YWxpZC4KKyAgaW50IGZkID0gb3BlbigiL3Byb2MvdmVyc2lvbiIsIE9fUkRPTkxZKTsKKyAgQVNTRVJUX1RSVUUoZmQgIT0gLTEpOworICBBU1NFUlRfRVEoZmQsIGR1cDIoZmQsIGZkKSk7CisgIEFTU0VSVF9FUSgwLCBjbG9zZShmZCkpOyAvLyBDaGVjayB0aGF0IGR1cDIgZGlkbid0IGNsb3NlIGZkLgorCisgIC8vIEVxdWFsLCBidXQgaW52YWxpZC4KKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoLTEsIGR1cDIoZmQsIGZkKSk7CisgIEFTU0VSVF9FUShFQkFERiwgZXJybm8pOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvdXRpbHMuaCBiL3Rlc3RzL3V0aWxzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQwMTJhMwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL3V0aWxzLmgKQEAgLTAsMCArMSw4NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgX19URVNUX1VUSUxTX0gKKyNkZWZpbmUgX19URVNUX1VUSUxTX0gKKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisKKyNpbmNsdWRlICJwcml2YXRlL1Njb3BlR3VhcmQuaCIKKworc3RydWN0IG1hcF9yZWNvcmQgeworICB1aW50cHRyX3QgYWRkcl9zdGFydDsKKyAgdWludHB0cl90IGFkZHJfZW5kOworCisgIGludCBwZXJtczsKKworICBzaXplX3Qgb2Zmc2V0OworCisgIGRldl90IGRldmljZTsKKyAgaW5vX3QgaW5vZGU7CisKKyAgc3RkOjpzdHJpbmcgcGF0aG5hbWU7Cit9OworCitjbGFzcyBNYXBzIHsKKyBwdWJsaWM6CisgIHN0YXRpYyBib29sIHBhcnNlX21hcHMoc3RkOjp2ZWN0b3I8bWFwX3JlY29yZD4qIG1hcHMpIHsKKyAgICBjaGFyIHBhdGhbNjRdOworICAgIHNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIi9wcm9jL3NlbGYvdGFzay8lZC9tYXBzIiwgZ2V0cGlkKCkpOworICAgIEZJTEUqIGZwID0gZm9wZW4ocGF0aCwgInJlIik7CisgICAgaWYgKGZwID09IG51bGxwdHIpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBhdXRvIGZwX2d1YXJkID0gbWFrZV9zY29wZV9ndWFyZChbJl0oKSB7CisgICAgICBmY2xvc2UoZnApOworICAgIH0pOworCisgICAgY2hhciBsaW5lW0JVRlNJWl07CisgICAgd2hpbGUgKGZnZXRzKGxpbmUsIHNpemVvZihsaW5lKSwgZnApICE9IG51bGxwdHIpIHsKKyAgICAgIG1hcF9yZWNvcmQgcmVjb3JkOworICAgICAgdWludDMyX3QgZGV2X21ham9yLCBkZXZfbWlub3I7CisgICAgICBjaGFyIHBhdGhzdHJbQlVGU0laXTsKKyAgICAgIGNoYXIgcHJvdFs1XTsgLy8gc2l6ZW9mKCJyd3hwIikKKyAgICAgIGlmIChzc2NhbmYobGluZSwgIiUiIFNDTnhQVFIgIi0lIiBTQ054UFRSICIgJTRzICUiIFNDTnhQVFIgIiAleDoleCAlbHUgJXMiLAorICAgICAgICAgICAgJnJlY29yZC5hZGRyX3N0YXJ0LCAmcmVjb3JkLmFkZHJfZW5kLCBwcm90LCAmcmVjb3JkLm9mZnNldCwKKyAgICAgICAgICAgICZkZXZfbWFqb3IsICZkZXZfbWlub3IsICZyZWNvcmQuaW5vZGUsIHBhdGhzdHIpID09IDgpIHsKKyAgICAgICAgcmVjb3JkLnBlcm1zID0gMDsKKyAgICAgICAgaWYgKHByb3RbMF0gPT0gJ3InKSB7CisgICAgICAgICAgcmVjb3JkLnBlcm1zIHw9IFBST1RfUkVBRDsKKyAgICAgICAgfQorICAgICAgICBpZiAocHJvdFsxXSA9PSAndycpIHsKKyAgICAgICAgICByZWNvcmQucGVybXMgfD0gUFJPVF9XUklURTsKKyAgICAgICAgfQorICAgICAgICBpZiAocHJvdFsyXSA9PSAneCcpIHsKKyAgICAgICAgICByZWNvcmQucGVybXMgfD0gUFJPVF9FWEVDOworICAgICAgICB9CisKKyAgICAgICAgLy8gVE9ETzogcGFyc2Ugc2hhcmVkL3ByaXZhdGU/CisKKyAgICAgICAgcmVjb3JkLmRldmljZSA9IG1ha2VkZXYoZGV2X21ham9yLCBkZXZfbWlub3IpOworICAgICAgICByZWNvcmQucGF0aG5hbWUgPSBwYXRoc3RyOworICAgICAgICBtYXBzLT5wdXNoX2JhY2socmVjb3JkKTsKKyAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorfTsKKworI2VuZGlmCmRpZmYgLS1naXQgYS90ZXN0cy91dG1wX3Rlc3QuY3BwIGIvdGVzdHMvdXRtcF90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjExMTBkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvdXRtcF90ZXN0LmNwcApAQCAtMCwwICsxLDI1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKKyNpbmNsdWRlIDx1dG1wLmg+CisKK1RFU1QodXRtcCwgbG9naW5fdHR5KSB7CisgIC8vIGxvZ2luX3R0eSBpcyB0ZXN0ZWQgaW5kaXJlY3RseSBieSB0aGUgb3BlbnB0eSBhbmQgZm9ya3B0eSB0ZXN0cy4KKyAgLy8gVGhpcyB0ZXN0IGp1c3QgY2hlY2tzIHRoYXQgd2UncmUgZXhwb3J0aW5nIHRoZSBzeW1ib2wgaW5kZXBlbmRlbnRseS4KKyAgQVNTRVJUX0VRKC0xLCBsb2dpbl90dHkoLTEpKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3djaGFyX3Rlc3QuY3BwIGIvdGVzdHMvd2NoYXJfdGVzdC5jcHAKaW5kZXggZDAyYzRiZi4uZTg2ZDU2ZCAxMDA2NDQKLS0tIGEvdGVzdHMvd2NoYXJfdGVzdC5jcHAKKysrIGIvdGVzdHMvd2NoYXJfdGVzdC5jcHAKQEAgLTIyLDYgKzIyLDggQEAKICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx3Y2hhci5oPgogCisjZGVmaW5lIE5VTV9XQ0hBUlMobnVtX2J5dGVzKSAobnVtX2J5dGVzL3NpemVvZih3Y2hhcl90KSkKKwogVEVTVCh3Y2hhciwgc2l6ZW9mX3djaGFyX3QpIHsKICAgRVhQRUNUX0VRKDRVLCBzaXplb2Yod2NoYXJfdCkpOwogICBFWFBFQ1RfRVEoNFUsIHNpemVvZih3aW50X3QpKTsKQEAgLTIzMiw2ICsyMzQsMTEgQEAKICAgQVNTRVJUX0VRKE5VTEwsIHdjc3N0cihoYXlzdGFjaywgYmFkX25lZWRsZSkpOwogfQogCitURVNUKHdjaGFyLCB3Y3NzdHJfODAxOTkpIHsKKyAgLy8gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmRyb2lkL2lzc3Vlcy9kZXRhaWw/aWQ9ODAxOTkKKyAgQVNTRVJUX1RSVUUod2Nzc3RyKEwicm9tcm9tIiwgTCJyb20iKSAhPSBOVUxMKTsKK30KKwogVEVTVCh3Y2hhciwgbWJ0b3djKSB7CiAgIHdjaGFyX3Qgb3V0WzhdOwogCkBAIC0zNDMsNyArMzUwLDcgQEAKICAgLy8gQ2hlY2sgdGhhdCB2YWxpZCBoYXMgYWR2YW5jZWQgdG8gdGhlIG5leHQgdW5yZWFkIGNoYXJhY3Rlci4KICAgQVNTRVJUX0VRKCdlJywgKnZhbGlkKTsKIAotICB3bWVtc2V0KG91dCwgTCd4Jywgc2l6ZW9mKG91dCkgLyBzaXplb2Yod2NoYXJfdCkpOworICB3bWVtc2V0KG91dCwgTCd4JywgTlVNX1dDSEFSUyhzaXplb2Yob3V0KSkpOwogICBBU1NFUlRfRVEoMlUsIG1ic3J0b3djcyhvdXQsICZ2YWxpZCwgNCwgcHMpKTsKICAgQVNTRVJUX0VRKEwnZScsIG91dFswXSk7CiAgIEFTU0VSVF9FUShMJ2YnLCBvdXRbMV0pOwpAQCAtNDUwLDE3ICs0NTcsODUgQEAKICAgRVhQRUNUX1NUUkVRKEwiU3VuIE1hciAxMCAwMDowMDowMCAyMTAwIiwgYnVmKTsKIH0KIAotVEVTVCh3Y2hhciwgd21lbW1vdmUpIHsKK1RFU1Qod2NoYXIsIHdtZW1tb3ZlX3Ntb2tlKSB7CiAgIGNvbnN0IHdjaGFyX3QgY29uc3Rfd3N0cltdID0gTCJUaGlzIGlzIGEgdGVzdCBvZiBzb21ldGhpbmcgb3Igb3RoZXIuLi4uLiI7Ci0gIHdjaGFyX3QqIHdzdHIgPSBuZXcgd2NoYXJfdFtzaXplb2YoY29uc3Rfd3N0cildOworICB3Y2hhcl90IHdzdHJbTlVNX1dDSEFSUyhzaXplb2YoY29uc3Rfd3N0cikpXTsKIAotICB3bWVtbW92ZSh3c3RyLCBjb25zdF93c3RyLCBzaXplb2YoY29uc3Rfd3N0cikvc2l6ZW9mKHdjaGFyX3QpKTsKKyAgRVhQRUNUX0VRKHdzdHIsIHdtZW1tb3ZlKHdzdHIsIGNvbnN0X3dzdHIsIE5VTV9XQ0hBUlMoc2l6ZW9mKGNvbnN0X3dzdHIpKSkpOwogICBFWFBFQ1RfU1RSRVEoY29uc3Rfd3N0ciwgd3N0cik7CiAKLSAgd21lbW1vdmUod3N0cis1LCB3c3RyLCBzaXplb2YoY29uc3Rfd3N0cikvc2l6ZW9mKHdjaGFyX3QpIC0gNik7CisgIEVYUEVDVF9FUSh3c3RyKzUsIHdtZW1tb3ZlKHdzdHIrNSwgd3N0ciwgTlVNX1dDSEFSUyhzaXplb2YoY29uc3Rfd3N0cikpIC0gNikpOwogICBFWFBFQ1RfU1RSRVEoTCJUaGlzIFRoaXMgaXMgYSB0ZXN0IG9mIHNvbWV0aGluZyBvciBvdGhlciIsIHdzdHIpOwogfQogCitURVNUKHdjaGFyLCB3bWVtY3B5X3Ntb2tlKSB7CisgIGNvbnN0IHdjaGFyX3Qgc3JjW10gPSBMIlNvdXJjZSBzdHJpbmciOworICB3Y2hhcl90IGRzdFtOVU1fV0NIQVJTKHNpemVvZihzcmMpKV07CisKKyAgRVhQRUNUX0VRKGRzdCwgd21lbWNweShkc3QsIHNyYywgTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSkpKTsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgc3JjKTsKK30KKworVEVTVCh3Y2hhciwgd2NwY3B5X3Ntb2tlKSB7CisgIGNvbnN0IHdjaGFyX3Qgc3JjW10gPSBMIlNvdXJjZSBzdHJpbmciOworICB3Y2hhcl90IGRzdFtOVU1fV0NIQVJTKHNpemVvZihzcmMpKV07CisKKyAgRVhQRUNUX0VRKGRzdCArIE5VTV9XQ0hBUlMoc2l6ZW9mKHNyYykpIC0gMSwgd2NwY3B5KGRzdCwgc3JjKSk7CisgIEVYUEVDVF9TVFJFUShkc3QsIHNyYyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjcG5jcHlfc21va2UpIHsKKyAgY29uc3Qgd2NoYXJfdCBzcmNbXSA9IEwiU291cmNlIHN0cmluZyI7CisgIHdjaGFyX3QgZHN0W05VTV9XQ0hBUlMoc2l6ZW9mKHNyYykpICsgNV07CisKKyAgc2l6ZV90IHNyY19sZW4gPSBOVU1fV0NIQVJTKHNpemVvZihzcmMpKSAtIDE7CisgIEVYUEVDVF9FUShkc3QgKyBzcmNfbGVuLCB3Y3BuY3B5KGRzdCwgc3JjLCBzcmNfbGVuICsgMSkpOworICBFWFBFQ1RfU1RSRVEoZHN0LCBzcmMpOworCisgIEVYUEVDVF9FUShkc3QgKyA2LCB3Y3BuY3B5KGRzdCwgc3JjLCA2KSk7CisgIGRzdFs2XSA9IEwnXDAnOworICBFWFBFQ1RfU1RSRVEoZHN0LCBMIlNvdXJjZSIpOworCisgIHdtZW1zZXQoZHN0LCBMJ3gnLCBOVU1fV0NIQVJTKHNpemVvZihkc3QpKSk7CisgIEVYUEVDVF9FUShkc3QgKyBzcmNfbGVuLCB3Y3BuY3B5KGRzdCwgc3JjLCBzcmNfbGVuICsgNCkpOworICBFWFBFQ1RfU1RSRVEoZHN0LCBzcmMpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW5dLCBMJ1wwJyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbisxXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rMl0sIEwnXDAnKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuKzNdLCBMJ1wwJyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbis0XSwgTCd4Jyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjc2NweV9zbW9rZSkgeworICBjb25zdCB3Y2hhcl90IHNyY1tdID0gTCJTb3VyY2Ugc3RyaW5nIjsKKyAgd2NoYXJfdCBkc3RbTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSldOworCisgIEVYUEVDVF9FUShkc3QsIHdjc2NweShkc3QsIHNyYykpOworICBFWFBFQ1RfU1RSRVEoc3JjLCBkc3QpOworfQorCitURVNUKHdjaGFyLCB3Y3NuY3B5X3Ntb2tlKSB7CisgIGNvbnN0IHdjaGFyX3Qgc3JjW10gPSBMIlNvdXJjZSBzdHJpbmciOworICB3Y2hhcl90IGRzdFtOVU1fV0NIQVJTKHNpemVvZihzcmMpKSArIDVdOworCisgIHNpemVfdCBzcmNfbGVuID0gTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSkgLSAxOworICBFWFBFQ1RfRVEoZHN0LCB3Y3NuY3B5KGRzdCwgc3JjLCBzcmNfbGVuICsgMSkpOworICBFWFBFQ1RfU1RSRVEoZHN0LCBzcmMpOworCisgIEVYUEVDVF9FUShkc3QsIHdjc25jcHkoZHN0LCBzcmMsIDYpKTsKKyAgZHN0WzZdID0gTCdcMCc7CisgIEVYUEVDVF9TVFJFUShkc3QsIEwiU291cmNlIik7CisKKyAgd21lbXNldChkc3QsIEwneCcsIE5VTV9XQ0hBUlMoc2l6ZW9mKGRzdCkpKTsKKyAgRVhQRUNUX0VRKGRzdCwgd2NzbmNweShkc3QsIHNyYywgc3JjX2xlbiArIDQpKTsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgc3JjKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rMV0sIEwnXDAnKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuKzJdLCBMJ1wwJyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbiszXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rNF0sIEwneCcpOworfQorCiBURVNUKHdjaGFyLCBtYnJ0b3djXzE1NDM5NTU0KSB7CiAgIC8vIGh0dHA6Ly9iLzE1NDM5NTU0CiAgIEFTU0VSVF9TVFJFUSgiQy5VVEYtOCIsIHNldGxvY2FsZShMQ19DVFlQRSwgIkMuVVRGLTgiKSk7CkBAIC00ODksMyArNTY0LDExMSBAQAogICBFWFBFQ1RfRVEoNFUsIG4pOwogICBFWFBFQ1RfRVEoTCfwpK2iJywgd2MpOwogfQorCitURVNUKHdjaGFyLCBvcGVuX3dtZW1zdHJlYW0pIHsKKyAgd2NoYXJfdCogcCA9IG51bGxwdHI7CisgIHNpemVfdCBzaXplID0gMDsKKyAgRklMRSogZnAgPSBvcGVuX3dtZW1zdHJlYW0oJnAsICZzaXplKTsKKyAgQVNTRVJUX05FKEVPRiwgZnB1dHdzKEwiaGVsbG8sIHdvcmxkISIsIGZwKSk7CisgIGZjbG9zZShmcCk7CisKKyAgQVNTRVJUX1NUUkVRKEwiaGVsbG8sIHdvcmxkISIsIHApOworICBBU1NFUlRfRVEod2NzbGVuKEwiaGVsbG8sIHdvcmxkISIpLCBzaXplKTsKKyAgZnJlZShwKTsKK30KKworVEVTVChzdGRpbywgb3Blbl93bWVtc3RyZWFtX0VJTlZBTCkgeworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgd2NoYXJfdCogcDsKKyAgc2l6ZV90IHNpemU7CisKKyAgLy8gSW52YWxpZCBidWZmZXIuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKG51bGxwdHIsIG9wZW5fd21lbXN0cmVhbShudWxscHRyLCAmc2l6ZSkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisKKyAgLy8gSW52YWxpZCBzaXplLgorICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUShudWxscHRyLCBvcGVuX3dtZW1zdHJlYW0oJnAsIG51bGxwdHIpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CisjZW5kaWYKK30KKworVEVTVCh3Y2hhciwgd2NzdG9sX0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHdjc3RvbChMIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvbChMIjEyMyIsIE5VTEwsIDEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG9sKEwiMTIzIiwgTlVMTCwgMzcpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjc3RvbGxfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG9sbChMIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvbGwoTCIxMjMiLCBOVUxMLCAxKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvbGwoTCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh3Y2hhciwgd2NzdG91bF9FSU5WQUwpIHsKKyAgZXJybm8gPSAwOworICB3Y3N0b3VsKEwiMTIzIiwgTlVMTCwgLTEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bChMIjEyMyIsIE5VTEwsIDEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bChMIjEyMyIsIE5VTEwsIDM3KTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHdjaGFyLCB3Y3N0b3VsbF9FSU5WQUwpIHsKKyAgZXJybm8gPSAwOworICB3Y3N0b3VsbChMIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdWxsKEwiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b3VsbChMIjEyMyIsIE5VTEwsIDM3KTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHdjaGFyLCB3Y3N0b2xsX2xfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG9sbF9sKEwiMTIzIiwgTlVMTCwgLTEsIExDX0dMT0JBTF9MT0NBTEUpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG9sbF9sKEwiMTIzIiwgTlVMTCwgMSwgTENfR0xPQkFMX0xPQ0FMRSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b2xsX2woTCIxMjMiLCBOVUxMLCAzNywgTENfR0xPQkFMX0xPQ0FMRSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh3Y2hhciwgd2NzdG91bGxfbF9FSU5WQUwpIHsKKyAgZXJybm8gPSAwOworICB3Y3N0b3VsbF9sKEwiMTIzIiwgTlVMTCwgLTEsIExDX0dMT0JBTF9MT0NBTEUpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bGxfbChMIjEyMyIsIE5VTEwsIDEsIExDX0dMT0JBTF9MT0NBTEUpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bGxfbChMIjEyMyIsIE5VTEwsIDM3LCBMQ19HTE9CQUxfTE9DQUxFKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHdjaGFyLCB3bWVtcGNweSkgeworICB3Y2hhcl90IGRzdFs2XTsKKyAgQVNTRVJUX0VRKCZkc3RbNF0sIHdtZW1wY3B5KGRzdCwgTCJoZWxsbyIsIDQpKTsKK30KZGlmZiAtLWdpdCBhL3Rvb2xzL0FuZHJvaWQubWsgYi90b29scy9BbmRyb2lkLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkZDY2ZmUKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9BbmRyb2lkLm1rCkBAIC0wLDAgKzEsMTkgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisKK0xPQ0FMX1BBVEggOj0gJChjYWxsIG15LWRpcikKKworaW5jbHVkZSAkKGNhbGwgYWxsLXN1YmRpci1tYWtlZmlsZXMpCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi8uZ2l0aWdub3JlIGIvdG9vbHMvYmlvbmljYmIvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMGZmMDY0Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvYmlvbmljYmIvLmdpdGlnbm9yZQpAQCAtMCwwICsxLDU4IEBACitjb25maWcucHkKKyouanNvbgorb2F1dGguc3RvcmFnZQorCisjIEJ5dGUtY29tcGlsZWQgLyBvcHRpbWl6ZWQgLyBETEwgZmlsZXMKK19fcHljYWNoZV9fLworKi5weVtjb2RdCisKKyMgQyBleHRlbnNpb25zCisqLnNvCisKKyMgRGlzdHJpYnV0aW9uIC8gcGFja2FnaW5nCisuUHl0aG9uCitlbnYvCitidWlsZC8KK2RldmVsb3AtZWdncy8KK2Rpc3QvCitkb3dubG9hZHMvCitlZ2dzLworbGliLworbGliNjQvCitwYXJ0cy8KK3NkaXN0LwordmFyLworKi5lZ2ctaW5mby8KKy5pbnN0YWxsZWQuY2ZnCisqLmVnZworCisjIFB5SW5zdGFsbGVyCisjICBVc3VhbGx5IHRoZXNlIGZpbGVzIGFyZSB3cml0dGVuIGJ5IGEgcHl0aG9uIHNjcmlwdCBmcm9tIGEgdGVtcGxhdGUKKyMgIGJlZm9yZSBQeUluc3RhbGxlciBidWlsZHMgdGhlIGV4ZSwgc28gYXMgdG8gaW5qZWN0IGRhdGUvb3RoZXIgaW5mb3MgaW50byBpdC4KKyoubWFuaWZlc3QKKyouc3BlYworCisjIEluc3RhbGxlciBsb2dzCitwaXAtbG9nLnR4dAorcGlwLWRlbGV0ZS10aGlzLWRpcmVjdG9yeS50eHQKKworIyBVbml0IHRlc3QgLyBjb3ZlcmFnZSByZXBvcnRzCitodG1sY292LworLnRveC8KKy5jb3ZlcmFnZQorLmNhY2hlCitub3NldGVzdHMueG1sCitjb3ZlcmFnZS54bWwKKworIyBUcmFuc2xhdGlvbnMKKyoubW8KKyoucG90CisKKyMgRGphbmdvIHN0dWZmOgorKi5sb2cKKworIyBTcGhpbnggZG9jdW1lbnRhdGlvbgorZG9jcy9fYnVpbGQvCisKKyMgUHlCdWlsZGVyCit0YXJnZXQvCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi9SRUFETUUubWQgYi90b29scy9iaW9uaWNiYi9SRUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTI4NTk4NAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiL1JFQURNRS5tZApAQCAtMCwwICsxLDg5IEBACitiaW9uaWNiYgorPT09PT09PT0KKworVGhlIGJpb25pYyBidWlsZGJvdCBjb250YWlucyB0d28gc2VydmljZXM6IGEgZ21haWwgcG9sbGluZyBzZXJ2aWNlLCBhbmQgYSB3ZWIKK3NlcnZpY2UgdGhhdCBpbnRlcmFjdHMgd2l0aCBnZXJyaXQuCisKK0RlcGVuZGVuY2llcworLS0tLS0tLS0tLS0tCisKKyAqIFB5dGhvbiAyLjcKKyAqIFtBZHZhbmNlZCBQeXRob24gU2NoZWR1bGVyXShodHRwczovL2Fwc2NoZWR1bGVyLnJlYWR0aGVkb2NzLm9yZy9lbi9sYXRlc3QvKQorICogW0ZsYXNrXShodHRwOi8vZmxhc2sucG9jb28ub3JnLykKKyAqIFtHb29nbGUgQVBJIENsaWVudCBMaWJyYXJ5XShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9hcGktY2xpZW50LWxpYnJhcnkvcHl0aG9uL3N0YXJ0L2luc3RhbGxhdGlvbikKKyAqIFtqZW5raW5zYXBpXShodHRwczovL3B5cGkucHl0aG9uLm9yZy9weXBpL2plbmtpbnNhcGkpCisgKiBbUmVxdWVzdHNdKGh0dHA6Ly9kb2NzLnB5dGhvbi1yZXF1ZXN0cy5vcmcvZW4vbGF0ZXN0LykKKworU2V0dXAKKy0tLS0tCisKK0NyZWF0ZSBhIGBjb25maWcucHlgIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgc291cmNlcy4gVGhlIHN0cnVjdHVyZSBvZiB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBpcyBhcyBmb2xsb3dzOgorCitgYGBweXRob24KK2NsaWVudF9zZWNyZXRfZmlsZSA9ICdDTElFTlRfU0VDUkVUX0ZJTEUuanNvbicKK2J1aWxkX2xpc3RlbmVyX3VybCA9ICdCVUlMRF9MSVNURU5FUl9VUkwnCitqZW5raW5zX3VybCA9ICdKRU5LSU5TX1VSTCcKK2plbmtpbnNfY3JlZGVudGlhbHMgPSB7CisgICAgJ3VzZXJuYW1lJzogJ0pFTktJTlNfVVNFUk5BTUUnLAorICAgICdwYXNzd29yZCc6ICdKRU5LSU5TX1BBU1NXT1JEJywKK30KK2BgYAorCitUaGUgY2xpZW50IHNlY3JldCBmaWxlIGNvbWVzIGZyb20gdGhlIEdtYWlsIEFQSSBwYWdlIG9mIHRoZSBbR29vZ2xlIERldmVsb3BlcnMKK0NvbnNvbGVdKGh0dHBzOi8vY29uc29sZS5kZXZlbG9wZXJzLmdvb2dsZS5jb20vKS4gVGhlIEplbmtpbnMgY3JlZGVudGlhbHMgYXJlCitmb3IgYSBKZW5raW5zIGFjY291bnQgdGhhdCBoYXMgdGhlIGFwcHJvcHJpYXRlIHBlcm1pc3Npb25zIHRvIGxhdW5jaCB0aGUgam9icwordGhlIGJ1aWxkYm90IHdpbGwgdXNlLgorCitZb3Ugd2lsbCBhbHNvIG5lZWQgdG8gYWRkIHRoZSBIVFRQIHBhc3N3b3JkIGZvciB0aGUgYnVpbGRib3QncyBHZXJyaXQgYWNjb3VudCB0bworYH4vLm5ldHJjYC4gVGhlIEhUVFAgcGFzc3dvcmQgY2FuIGJlIG9idGFpbmVkIGZyb20gdGhlIFtHZXJyaXQgSFRUUCBwYXNzd29yZAorc2V0dGluZ3NdKGh0dHBzOi8vYW5kcm9pZC1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbS8jL3NldHRpbmdzL2h0dHAtcGFzc3dvcmQpLgorCitUbyBsYXVuY2ggdGhlIHNlcnZpY2VzOgorCitgYGBiYXNoCiskIHB5dGhvbiBidWlsZF9saXN0ZW5lci5weSA+YnVpbGQubG9nIDI+JjEgJgorJCBweXRob24gZ21haWxfbGlzdGVuZXIucHkgPm1haWwubG9nIDI+JjEgJgorYGBgCisKK1RoZSBtYWlsIGxpc3RlbmVyIHdpbGwgZGlyZWN0IHlvdXIgYnJvd3NlciB0byBhbiBhdXRoZW50aWNhdGlvbiBwYWdlIGZvciB0aGUKK0dtYWlsIEFQSS4KKworZ21haWxcX2xpc3RlbmVyLnB5CistLS0tLS0tLS0tLS0tLS0tLS0KKworQmlvbmljYmIgcG9sbHMgYSBnbWFpbCBhY2NvdW50IHRvIGZpbmQgY2hhbmdlcyB0aGF0IG5lZWQgdG8gYmUgYnVpbHQuIFRoZSBnbWFpbAorYWNjb3VudCBuZWVkcyB0byBoYXZlIGEgZ2Vycml0IGFjY291bnQgc2V0IHVwIHdpdGggcHJvamVjdCB3YXRjaGVzIG9uIGFueXRoaW5nCitpdCBmaW5kcyBpbnRlcmVzdGluZy4gVGhpcyBpcyBhIHJhdGhlciB1Z2x5IGhhY2ssIGJ1dCBpdCBzZWVtcyB0byBiZSB0aGUKK3NpbXBsZXN0IG9wdGlvbiBhdmFpbGFibGUuCisKK0dlcnJpdCBkb2VzIG9mZmVyIGEgc3RyZWFtaW5nIG5vdGlmaWNhdGlvbiBzZXJ2aWNlIHRoYXQgd291bGQgYmUgX2Zhcl8gYmV0dGVyLAorYnV0IGl0IGlzIG9ubHkgYXZhaWxhYmxlIG92ZXIgYW4gU1NIIGNvbmVjdGlvbiB0byBnZXJyaXQsIGFuZCB0aGUgQU9TUCBnZXJyaXQKK2RvZXMgbm90IHN1cHBvcnQgdGhpcyBjb25uZWN0aW9uLgorCitBbm90aGVyIG9wdGlvbiB3b3VsZCBiZSBwb2xsaW5nIGdlcnJpdCBpdHNlbGYsIGJ1dCB3ZSdkIGhhdmUgdG8gcHJvY2VzcyBlYWNoCitjaGFuZ2UgZXZlcnkgdGltZSB0byBzZWUgaWYgaXQgc2hvdWxkIGJlIGJ1aWx0LCB3aGVyZWFzIHByb2plY3Qgd2F0Y2hlcyBhbGxvdyB1cwordG8gdHJlYXQgdGhlc2UgYXMgc2VtaS1wdXNoIG5vdGlmaWNhdGlvbnMgKHdlIHN0aWxsIGhhdmUgdG8gcG9sbCBnbWFpbCkuCisKK09uZSBkcmF3YmFjayB0byB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgaXQncyBhIGhhc3NsZSB0byBzZXQgdXAgdGhlIHByb2plY3QKK3dhdGNoZXMgZm9yIGEgbGFyZ2UgbnVtYmVyIG9mIHByb2plY3RzLiBTaW5jZSBiaW9uaWNiYiBpcyBvbmx5IGludGVyZXN0ZWQgaW4gYQorc21hbGwgc3Vic2V0IG9mIHByb2plY3RzLCB0aGlzIGlzIGEgbm9uLWlzc3VlLgorCitJZiB0aGUgYnVpbGRib3QgaGFzIGFwcGxpZWQgVmVyaWZpZWQtMSB0byBhIHBhdGNoc2V0LCB0aGUgdXNlciBtYXkgYWRkIHRoZWlyIG93bgorVmVyaWZpZWQrMSB0byB0aGUgY2hhbmdlIGFuZCB0aGUgYnVpbGRib3Qgd2lsbCByZW1vdmUgaXRzIHJlamVjdGlvbiB0aGUgbmV4dAordGltZSB0aGUgc2VydmljZXMgcG9sbHMgKGJ5IGRlZmF1bHQsIGV2ZXJ5IGZpdmUgbWludXRlcykuCisKK1RoZSBzZXJ2aWNlIHdpbGwgYWxzbyBsaXN0ZW4gZm9yIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6CisKKyAqIGBiaW9uaWNiYjpjbGVhbmA6IFNvbWV0aGluZyBpcyB2ZXJ5IGJyb2tlbiBhbmQgdGhlIGJ1aWxkYm90J3Mgb3V0cHV0CisgICBkaXJlY3RvcnkgbmVlZHMgdG8gYmUgbnVrZWQuCisgKiBgYmlvbmljYmI6cmV0cnlgOiBTb21ldGhpbmcgd2VudCB3cm9uZyBhbmQgdGhlIGJ1aWxkYm90IHNob3VsZCByZXRyeSB0aGUKKyAgIGJ1aWxkLgorCitidWlsZFxfbGlzdGVuZXIucHkKKy0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgYnVpbGQgbGlzdGVuZXIgc2VydmljZSByZXNwb25kcyB0byBIVFRQIFBPU1QgZXZlbnRzIHNlbnQgZnJvbSBKZW5raW5zIGFuZAordXBkYXRlcyBDTHMgYWNjb3JkaW5nbHkuIFRoZSBvbmx5IG90aGVyIEFQSSBlbmRwb2ludCBpcyBgL2Ryb3AtcmVqZWN0aW9uYCwgd2hpY2gKK3dpbGwgcmVtb3ZlIGEgVmVyaWZpZWQtMSBmcm9tIGEgcHJldmlvdXNseSByZWplY3RlZCBwYXRjaHNldC4gVGhlIGFjdHVhbGx5CitpbnZvY2F0aW9uIG9mIHRoaXMgaXMgaGFuZGxlZCBieSB0aGUgZ21haWwgbGlzdGVuZXIuCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi9iaW9uaWNiYi5weSBiL3Rvb2xzL2Jpb25pY2JiL2Jpb25pY2JiLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3ODZiMjcKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi9iaW9uaWNiYi5weQpAQCAtMCwwICsxLDEzNCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMgorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2ltcG9ydCBqc29uCitpbXBvcnQgbG9nZ2luZworaW1wb3J0IG9zCisKK2Zyb20gYXBzY2hlZHVsZXIuc2NoZWR1bGVycy5iYWNrZ3JvdW5kIGltcG9ydCBCYWNrZ3JvdW5kU2NoZWR1bGVyCitmcm9tIGZsYXNrIGltcG9ydCBGbGFzaywgcmVxdWVzdAoraW1wb3J0IHJlcXVlc3RzCisKK2ltcG9ydCBnZXJyaXQKK2ltcG9ydCB0YXNrcworCithcHAgPSBGbGFzayhfX25hbWVfXykKKworCitkZWYgZ2Vycml0X3VybChlbmRwb2ludCk6CisgICAgZ2Vycml0X2Jhc2VfdXJsID0gJ2h0dHBzOi8vYW5kcm9pZC1yZXZpZXcuZ29vZ2xlc291cmNlLmNvbScKKyAgICByZXR1cm4gZ2Vycml0X2Jhc2VfdXJsICsgZW5kcG9pbnQKKworCitAYXBwLnJvdXRlKCcvJywgbWV0aG9kcz1bJ1BPU1QnXSkKK2RlZiBoYW5kbGVfYnVpbGRfbWVzc2FnZSgpOgorICAgIHJlc3VsdCA9IGpzb24ubG9hZHMocmVxdWVzdC5kYXRhKQorCisgICAgbmFtZSA9IHJlc3VsdFsnbmFtZSddCisgICAgbnVtYmVyID0gcmVzdWx0WydidWlsZCddWydudW1iZXInXQorICAgIHN0YXR1cyA9IHJlc3VsdFsnYnVpbGQnXVsnc3RhdHVzJ10KKyAgICBnb191cmwgPSAnaHR0cDovL2dvL2Jpb25pY2JiLycgKyByZXN1bHRbJ2J1aWxkJ11bJ3VybCddCisgICAgZnVsbF91cmwgPSByZXN1bHRbJ2J1aWxkJ11bJ2Z1bGxfdXJsJ10KKyAgICBwYXJhbXMgPSByZXN1bHRbJ2J1aWxkJ11bJ3BhcmFtZXRlcnMnXQorICAgIGNoYW5nZV9pZCA9IHBhcmFtc1snQ0hBTkdFX0lEJ10KKyAgICByZWYgPSBwYXJhbXNbJ1JFRiddCisgICAgcGF0Y2hfc2V0ID0gcmVmLnNwbGl0KCcvJylbLTFdCisKKyAgICBsb2dnaW5nLmRlYnVnKCclcyAjJXMgJXM6ICVzJywgbmFtZSwgbnVtYmVyLCBzdGF0dXMsIGZ1bGxfdXJsKQorCisgICAgIyBiaW9uaWMtbGludCBpcyBhbHdheXMgYnJva2VuLCBzbyB3ZSBkb24ndCB3YW50IHRvIHJlamVjdCBjaGFuZ2VzIGZvcgorICAgICMgdGhvc2UgZmFpbHVyZXMgdW50aWwgd2UgY2xlYW4gdGhpbmdzIHVwLgorICAgIGlmIG5hbWUgPT0gJ2Jpb25pYy1wcmVzdWJtaXQnOgorICAgICAgICBtZXNzYWdlX2xpbmVzID0gWyd7fSAje30gY2hlY2tidWlsZCB7fToge30nLmZvcm1hdCgKKyAgICAgICAgICAgIG5hbWUsIG51bWJlciwgc3RhdHVzLCBnb191cmwpXQorICAgICAgICBpZiBzdGF0dXMgPT0gJ0ZBSUxVUkUnOgorICAgICAgICAgICAgbWVzc2FnZV9saW5lcyArPSBbJ0lmIHlvdSBiZWxpZXZlIHRoaXMgVmVyaWZpZWQtMSB3YXMgaW4gZXJyb3IsICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcrMSB0aGUgY2hhbmdlIGFuZCBiaW9uaWNiYiB3aWxsIHJlbW92ZSB0aGUgLTEgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Nob3J0bHkuJ10KKworICAgICAgICByZXF1ZXN0X2RhdGEgPSB7CisgICAgICAgICAgICAnbWVzc2FnZSc6ICdcbicuam9pbihtZXNzYWdlX2xpbmVzKQorICAgICAgICB9CisKKyAgICAgICAgbGFiZWwgPSAnVmVyaWZpZWQnCisgICAgICAgIGlmIHN0YXR1cyA9PSAnRkFJTFVSRSc6CisgICAgICAgICAgICByZXF1ZXN0X2RhdGFbJ2xhYmVscyddID0ge2xhYmVsOiAtMX0KKyAgICAgICAgZWxpZiBzdGF0dXMgPT0gJ1NVQ0NFU1MnOgorICAgICAgICAgICAgcmVxdWVzdF9kYXRhWydsYWJlbHMnXSA9IHtsYWJlbDogKzF9CisKKyAgICAgICAgdXJsID0gZ2Vycml0X3VybCgnL2EvY2hhbmdlcy97fS9yZXZpc2lvbnMve30vcmV2aWV3Jy5mb3JtYXQoY2hhbmdlX2lkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRjaF9zZXQpKQorCisgICAgICAgIGhlYWRlcnMgPSB7J0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnfQorICAgICAgICBsb2dnaW5nLmRlYnVnKCdQT1NUICVzOiAlcycsIHVybCwgcmVxdWVzdF9kYXRhKQorICAgICAgICByZXF1ZXN0cy5wb3N0KHVybCwgaGVhZGVycz1oZWFkZXJzLCBqc29uPXJlcXVlc3RfZGF0YSkKKyAgICBlbGlmIG5hbWUgPT0gJ2NsZWFuLWJpb25pYy1wcmVzdWJtaXQnOgorICAgICAgICByZXF1ZXN0X2RhdGEgPSB7J21lc3NhZ2UnOiAnb3V0LyBkaXJlY3RvcnkgcmVtb3ZlZCd9CisgICAgICAgIHVybCA9IGdlcnJpdF91cmwoJy9hL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L3JldmlldycuZm9ybWF0KGNoYW5nZV9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0Y2hfc2V0KSkKKyAgICAgICAgaGVhZGVycyA9IHsnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb247Y2hhcnNldD1VVEYtOCd9CisgICAgICAgIGxvZ2dpbmcuZGVidWcoJ1BPU1QgJXM6ICVzJywgdXJsLCByZXF1ZXN0X2RhdGEpCisgICAgICAgIHJlcXVlc3RzLnBvc3QodXJsLCBoZWFkZXJzPWhlYWRlcnMsIGpzb249cmVxdWVzdF9kYXRhKQorICAgIGVsaWYgbmFtZSA9PSAnYmlvbmljLWxpbnQnOgorICAgICAgICBsb2dnaW5nLndhcm5pbmcoJ1Jlc3VsdCBmb3IgYmlvbmljLWxpbnQgaWdub3JlZCcpCisgICAgZWxzZToKKyAgICAgICAgbG9nZ2luZy5lcnJvcignVW5rbm93biBwcm9qZWN0OiAlcycsIG5hbWUpCisgICAgcmV0dXJuICcnCisKKworQGFwcC5yb3V0ZSgnL2Ryb3AtcmVqZWN0aW9uJywgbWV0aG9kcz1bJ1BPU1QnXSkKK2RlZiBkcm9wX3JlamVjdGlvbigpOgorICAgIHJldmlzaW9uX2luZm8gPSBqc29uLmxvYWRzKHJlcXVlc3QuZGF0YSkKKworICAgIGNoYW5nZV9pZCA9IHJldmlzaW9uX2luZm9bJ2NoYW5nZWlkJ10KKyAgICBwYXRjaF9zZXQgPSByZXZpc2lvbl9pbmZvWydwYXRjaHNldCddCisKKyAgICBiYl9lbWFpbCA9ICdiaW9uaWNiYkBhbmRyb2lkLmNvbScKKyAgICBsYWJlbHMgPSBnZXJyaXQuZ2V0X2xhYmVscyhjaGFuZ2VfaWQsIHBhdGNoX3NldCkKKyAgICBpZiBiYl9lbWFpbCBpbiBsYWJlbHNbJ1ZlcmlmaWVkJ106CisgICAgICAgIGJiX3JldmlldyA9IGxhYmVsc1snVmVyaWZpZWQnXVtiYl9lbWFpbF0KKyAgICBlbHNlOgorICAgICAgICBiYl9yZXZpZXcgPSAwCisKKyAgICBpZiBiYl9yZXZpZXcgPj0gMDoKKyAgICAgICAgbG9nZ2luZy5pbmZvKCdObyByZWplY3Rpb24gdG8gZHJvcDogJXMgJXMnLCBjaGFuZ2VfaWQsIHBhdGNoX3NldCkKKyAgICAgICAgcmV0dXJuICcnCisKKyAgICBsb2dnaW5nLmluZm8oJ0Ryb3BwaW5nIHJlamVjdGlvbjogJXMgJXMnLCBjaGFuZ2VfaWQsIHBhdGNoX3NldCkKKworICAgIHJlcXVlc3RfZGF0YSA9IHsnbGFiZWxzJzogeydWZXJpZmllZCc6IDB9fQorICAgIHVybCA9IGdlcnJpdF91cmwoJy9hL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L3JldmlldycuZm9ybWF0KGNoYW5nZV9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRjaF9zZXQpKQorICAgIGhlYWRlcnMgPSB7J0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnfQorICAgIGxvZ2dpbmcuZGVidWcoJ1BPU1QgJXM6ICVzJywgdXJsLCByZXF1ZXN0X2RhdGEpCisgICAgcmVxdWVzdHMucG9zdCh1cmwsIGhlYWRlcnM9aGVhZGVycywganNvbj1yZXF1ZXN0X2RhdGEpCisgICAgcmV0dXJuICcnCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuSU5GTykKKyAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigpCisgICAgZmggPSBsb2dnaW5nLkZpbGVIYW5kbGVyKCdiaW9uaWNiYi5sb2cnKQorICAgIGZoLnNldExldmVsKGxvZ2dpbmcuSU5GTykKKyAgICBsb2dnZXIuYWRkSGFuZGxlcihmaCkKKworICAgICMgUHJldmVudCB0aGUgam9iIGZyb20gYmVpbmcgcmVzY2hlZHVsZWQgYnkgdGhlIHJlbG9hZGVyLgorICAgIGlmIG9zLmVudmlyb24uZ2V0KCdXRVJLWkVVR19SVU5fTUFJTicpID09ICd0cnVlJzoKKyAgICAgICAgc2NoZWR1bGVyID0gQmFja2dyb3VuZFNjaGVkdWxlcigpCisgICAgICAgIHNjaGVkdWxlci5zdGFydCgpCisgICAgICAgIHNjaGVkdWxlci5hZGRfam9iKHRhc2tzLmdldF9hbmRfcHJvY2Vzc19qb2JzLCAnaW50ZXJ2YWwnLCBtaW51dGVzPTUpCisKKyAgICBhcHAucnVuKGhvc3Q9JzAuMC4wLjAnLCBkZWJ1Zz1UcnVlKQpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvZ2Vycml0LnB5IGIvdG9vbHMvYmlvbmljYmIvZ2Vycml0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljNjJjNmEKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi9nZXJyaXQucHkKQEAgLTAsMCArMSw4MCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2ltcG9ydCBqc29uCitpbXBvcnQgcmVxdWVzdHMKKworCitjbGFzcyBHZXJyaXRFcnJvcihSdW50aW1lRXJyb3IpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb2RlLCB1cmwpOgorICAgICAgICBzZWxmLmNvZGUgPSBjb2RlCisgICAgICAgIHNlbGYudXJsID0gdXJsCisgICAgICAgIHN1cGVyKEdlcnJpdEVycm9yLCBzZWxmKS5fX2luaXRfXygnRXJyb3Ige306IHt9Jy5mb3JtYXQoY29kZSwgdXJsKSkKKworCitkZWYgZ2V0X2NvbW1pdChjaGFuZ2VfaWQsIHJldmlzaW9uKToKKyAgICByZXR1cm4ganNvbi5sb2FkcygKKyAgICAgICAgY2FsbCgnL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L2NvbW1pdCcuZm9ybWF0KGNoYW5nZV9pZCwgcmV2aXNpb24pKSkKKworCitkZWYgZ2V0X2ZpbGVzX2Zvcl9yZXZpc2lvbihjaGFuZ2VfaWQsIHJldmlzaW9uKToKKyAgICByZXR1cm4ganNvbi5sb2FkcygKKyAgICAgICAgY2FsbCgnL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L2ZpbGVzJy5mb3JtYXQoCisgICAgICAgICAgICBjaGFuZ2VfaWQsIHJldmlzaW9uKSkpLmtleXMoKQorCisKK2RlZiBjYWxsKGVuZHBvaW50LCBtZXRob2Q9J0dFVCcpOgorICAgIGlmIG1ldGhvZCAhPSAnR0VUJzoKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcignQ3VycmVudGx5IG9ubHkgSFRUUCBHRVQgaXMgc3VwcG9ydGVkLicpCisgICAgZ2Vycml0X3VybCA9ICdodHRwczovL2FuZHJvaWQtcmV2aWV3Lmdvb2dsZXNvdXJjZS5jb20nCisgICAgdXJsID0gZ2Vycml0X3VybCArIGVuZHBvaW50CisgICAgcmVzcG9uc2UgPSByZXF1ZXN0cy5nZXQodXJsKQorICAgIGlmIHJlc3BvbnNlLnN0YXR1c19jb2RlICE9IDIwMDoKKyAgICAgICAgcmFpc2UgR2Vycml0RXJyb3IocmVzcG9uc2Uuc3RhdHVzX2NvZGUsIHVybCkKKyAgICByZXR1cm4gcmVzcG9uc2UudGV4dFs1Ol0KKworCitkZWYgcmVmX2Zvcl9jaGFuZ2UoY2hhbmdlX2lkKToKKyAgICBlbmRwb2ludCA9ICcvY2hhbmdlcy97fS9kZXRhaWw/bz1DVVJSRU5UX1JFVklTSU9OJy5mb3JtYXQoY2hhbmdlX2lkKQorICAgIGNoYW5nZSA9IGpzb24ubG9hZHMoY2FsbChlbmRwb2ludCkpCisgICAgY29tbWl0ID0gY2hhbmdlWydjdXJyZW50X3JldmlzaW9uJ10KKyAgICByZXR1cm4gY2hhbmdlWydyZXZpc2lvbnMnXVtjb21taXRdWydmZXRjaCddWydodHRwJ11bJ3JlZiddCisKKworZGVmIGdldF9sYWJlbHMoY2hhbmdlX2lkLCBwYXRjaF9zZXQpOgorICAgICIiIlJldHVybnMgbGFiZWxzIGF0dGFjaGVkIHRvIGEgcmV2aXNpb24uCisKKyAgICBSZXR1cm5lZCBkYXRhIGlzIGluIHRoZSBmb2xsb3dpbmcgZm9ybWF0OgorICAgIHsKKyAgICAgICAgJ0NvZGUtUmV2aWV3JzogeworICAgICAgICAgICAgPGVtYWlsPjogPHZhbHVlPiwKKyAgICAgICAgICAgIC4uLgorICAgICAgICB9LAorICAgICAgICAnVmVyaWZpZWQnOiB7CisgICAgICAgICAgICA8ZW1haWw+OiA8dmFsdWU+LAorICAgICAgICAgICAgLi4uCisgICAgICAgIH0KKyAgICB9CisgICAgIiIiCisgICAgZGV0YWlscyA9IGpzb24ubG9hZHMoY2FsbCgnL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L3JldmlldycuZm9ybWF0KAorICAgICAgICBjaGFuZ2VfaWQsIHBhdGNoX3NldCkpKQorICAgIGxhYmVscyA9IHsnQ29kZS1SZXZpZXcnOiB7fSwgJ1ZlcmlmaWVkJzoge319CisgICAgZm9yIHJldmlldyBpbiBkZXRhaWxzWydsYWJlbHMnXVsnQ29kZS1SZXZpZXcnXVsnYWxsJ106CisgICAgICAgIGlmICd2YWx1ZScgaW4gcmV2aWV3IGFuZCAnZW1haWwnIGluIHJldmlldzoKKyAgICAgICAgICAgIGxhYmVsc1snQ29kZS1SZXZpZXcnXVtyZXZpZXdbJ2VtYWlsJ11dID0gaW50KHJldmlld1sndmFsdWUnXSkKKyAgICBmb3IgcmV2aWV3IGluIGRldGFpbHNbJ2xhYmVscyddWydWZXJpZmllZCddWydhbGwnXToKKyAgICAgICAgaWYgJ3ZhbHVlJyBpbiByZXZpZXcgYW5kICdlbWFpbCcgaW4gcmV2aWV3OgorICAgICAgICAgICAgbGFiZWxzWydWZXJpZmllZCddW3Jldmlld1snZW1haWwnXV0gPSBpbnQocmV2aWV3Wyd2YWx1ZSddKQorICAgIHJldHVybiBsYWJlbHMKZGlmZiAtLWdpdCBhL3Rvb2xzL2Jpb25pY2JiL2dtYWlsLnB5IGIvdG9vbHMvYmlvbmljYmIvZ21haWwucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjA4OGFkNgotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiL2dtYWlsLnB5CkBAIC0wLDAgKzEsNzEgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCitpbXBvcnQgYmFzZTY0CitpbXBvcnQgaHR0cGxpYjIKKworaW1wb3J0IGNvbmZpZworCisKK2RlZiBnZXRfYm9keShtc2cpOgorICAgIGlmICdhdHRhY2htZW50SWQnIGluIG1zZ1sncGF5bG9hZCddWydib2R5J106CisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoJ0hhbmRsaW5nIG9mIG1lc3NhZ2VzIGNvbnRhaW5lZCBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2F0dGFjaG1lbnRzIG5vdCB5ZXQgaW1wbGVtZW50ZWQuJykKKyAgICBiNjRfYm9keSA9IG1zZ1sncGF5bG9hZCddWydib2R5J11bJ2RhdGEnXQorICAgIHJldHVybiBiYXNlNjQudXJsc2FmZV9iNjRkZWNvZGUoYjY0X2JvZHkuZW5jb2RlKCdBU0NJSScpKQorCisKK2RlZiBidWlsZF9zZXJ2aWNlKCk6CisgICAgZnJvbSBhcGljbGllbnQuZGlzY292ZXJ5IGltcG9ydCBidWlsZAorICAgIGZyb20gb2F1dGgyY2xpZW50LmNsaWVudCBpbXBvcnQgZmxvd19mcm9tX2NsaWVudHNlY3JldHMKKyAgICBmcm9tIG9hdXRoMmNsaWVudC5maWxlIGltcG9ydCBTdG9yYWdlCisgICAgZnJvbSBvYXV0aDJjbGllbnQudG9vbHMgaW1wb3J0IHJ1bgorCisgICAgT0FVVEhfU0NPUEUgPSAnaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vYXV0aC9nbWFpbC5tb2RpZnknCisgICAgU1RPUkFHRSA9IFN0b3JhZ2UoJ29hdXRoLnN0b3JhZ2UnKQorCisgICAgIyBTdGFydCB0aGUgT0F1dGggZmxvdyB0byByZXRyaWV2ZSBjcmVkZW50aWFscworICAgIGZsb3cgPSBmbG93X2Zyb21fY2xpZW50c2VjcmV0cyhjb25maWcuY2xpZW50X3NlY3JldF9maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY29wZT1PQVVUSF9TQ09QRSkKKyAgICBodHRwID0gaHR0cGxpYjIuSHR0cCgpCisKKyAgICAjIFRyeSB0byByZXRyaWV2ZSBjcmVkZW50aWFscyBmcm9tIHN0b3JhZ2Ugb3IgcnVuIHRoZSBmbG93IHRvIGdlbmVyYXRlIHRoZW0KKyAgICBjcmVkZW50aWFscyA9IFNUT1JBR0UuZ2V0KCkKKyAgICBpZiBjcmVkZW50aWFscyBpcyBOb25lIG9yIGNyZWRlbnRpYWxzLmludmFsaWQ6CisgICAgICAgIGNyZWRlbnRpYWxzID0gcnVuKGZsb3csIFNUT1JBR0UsIGh0dHA9aHR0cCkKKworICAgIGh0dHAgPSBjcmVkZW50aWFscy5hdXRob3JpemUoaHR0cCkKKyAgICByZXR1cm4gYnVpbGQoJ2dtYWlsJywgJ3YxJywgaHR0cD1odHRwKQorCisKK2RlZiBnZXRfZ2Vycml0X2xhYmVsKGxhYmVscyk6CisgICAgZm9yIGxhYmVsIGluIGxhYmVsczoKKyAgICAgICAgaWYgbGFiZWxbJ25hbWUnXSA9PSAnZ2Vycml0JzoKKyAgICAgICAgICAgIHJldHVybiBsYWJlbFsnaWQnXQorICAgIHJldHVybiBOb25lCisKKworZGVmIGdldF9hbGxfbWVzc2FnZXMoc2VydmljZSwgbGFiZWwpOgorICAgIG1zZ3MgPSBbXQorICAgIHJlc3BvbnNlID0gc2VydmljZS51c2VycygpLm1lc3NhZ2VzKCkubGlzdCgKKyAgICAgICAgdXNlcklkPSdtZScsIGxhYmVsSWRzPWxhYmVsKS5leGVjdXRlKCkKKyAgICBpZiAnbWVzc2FnZXMnIGluIHJlc3BvbnNlOgorICAgICAgICBtc2dzLmV4dGVuZChyZXNwb25zZVsnbWVzc2FnZXMnXSkKKyAgICB3aGlsZSAnbmV4dFBhZ2VUb2tlbicgaW4gcmVzcG9uc2U6CisgICAgICAgIHBhZ2VfdG9rZW4gPSByZXNwb25zZVsnbmV4dFBhZ2VUb2tlbiddCisgICAgICAgIHJlc3BvbnNlID0gc2VydmljZS51c2VycygpLm1lc3NhZ2VzKCkubGlzdCgKKyAgICAgICAgICAgIHVzZXJJZD0nbWUnLCBwYWdlVG9rZW49cGFnZV90b2tlbikuZXhlY3V0ZSgpCisgICAgICAgIG1zZ3MuZXh0ZW5kKHJlc3BvbnNlWydtZXNzYWdlcyddKQorICAgIHJldHVybiBtc2dzCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi9wcmVzdWJtaXQucHkgYi90b29scy9iaW9uaWNiYi9wcmVzdWJtaXQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2M2ZjNjYwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiL3ByZXN1Ym1pdC5weQpAQCAtMCwwICsxLDIwMyBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2Zyb20gX19mdXR1cmVfXyBpbXBvcnQgYWJzb2x1dGVfaW1wb3J0CisKK2ltcG9ydCBqc29uCitpbXBvcnQgbG9nZ2luZworaW1wb3J0IG9zLnBhdGgKK2ltcG9ydCByZQoraW1wb3J0IHJlcXVlc3RzCisKK2ltcG9ydCBqZW5raW5zYXBpCisKK2ltcG9ydCBnZXJyaXQKKworaW1wb3J0IGNvbmZpZworCisKK2RlZiBpc191bnRydXN0ZWRfY29tbWl0dGVyKGNoYW5nZV9pZCwgcGF0Y2hfc2V0KToKKyAgICAjIFRPRE8oZGFuYWxiZXJ0KTogTmVlZHMgdG8gYmUgYmFzZWQgb24gdGhlIGFjY291bnQgdGhhdCBtYWRlIHRoZSBjb21tZW50LgorICAgIGNvbW1pdCA9IGdlcnJpdC5nZXRfY29tbWl0KGNoYW5nZV9pZCwgcGF0Y2hfc2V0KQorICAgIGNvbW1pdHRlciA9IGNvbW1pdFsnY29tbWl0dGVyJ11bJ2VtYWlsJ10KKyAgICByZXR1cm4gbm90IGNvbW1pdHRlci5lbmRzd2l0aCgnQGdvb2dsZS5jb20nKQorCisKK2RlZiBjb250YWluc19jbGVhbnNwZWMoY2hhbmdlX2lkLCBwYXRjaF9zZXQpOgorICAgIGZpbGVzID0gZ2Vycml0LmdldF9maWxlc19mb3JfcmV2aXNpb24oY2hhbmdlX2lkLCBwYXRjaF9zZXQpCisgICAgcmV0dXJuICdDbGVhblNwZWMubWsnIGluIFtvcy5wYXRoLmJhc2VuYW1lKGYpIGZvciBmIGluIGZpbGVzXQorCisKK2RlZiBjb250YWluc19iaW9uaWNiYihjaGFuZ2VfaWQsIHBhdGNoX3NldCk6CisgICAgZmlsZXMgPSBnZXJyaXQuZ2V0X2ZpbGVzX2Zvcl9yZXZpc2lvbihjaGFuZ2VfaWQsIHBhdGNoX3NldCkKKyAgICByZXR1cm4gYW55KCd0b29scy9iaW9uaWNiYicgaW4gZiBmb3IgZiBpbiBmaWxlcykKKworCitkZWYgc2hvdWxkX3NraXBfYnVpbGQoaW5mbyk6CisgICAgaWYgaW5mb1snTWVzc2FnZVR5cGUnXSBub3QgaW4gKCduZXdjaGFuZ2UnLCAnbmV3cGF0Y2hzZXQnLCAnY29tbWVudCcpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdzaG91bGRfc2tpcF9idWlsZCgpIGlzIG9ubHkgdmFsaWQgZm9yIG5ldyAnCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2NoYW5nZXMsIHBhdGNoIHNldHMsIGFuZCBjb21taXRzLicpCisKKyAgICBjaGFuZ2VfaWQgPSBpbmZvWydDaGFuZ2UtSWQnXQorICAgIHBhdGNoX3NldCA9IGluZm9bJ1BhdGNoU2V0J10KKworICAgIGNoZWNrcyA9IFsKKyAgICAgICAgaXNfdW50cnVzdGVkX2NvbW1pdHRlciwKKyAgICAgICAgY29udGFpbnNfY2xlYW5zcGVjLAorICAgICAgICBjb250YWluc19iaW9uaWNiYiwKKyAgICBdCisgICAgZm9yIGNoZWNrIGluIGNoZWNrczoKKyAgICAgICAgaWYgY2hlY2soY2hhbmdlX2lkLCBwYXRjaF9zZXQpOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICByZXR1cm4gRmFsc2UKKworCitkZWYgY2xlYW5fcHJvamVjdChkcnlfcnVuKToKKyAgICB1c2VybmFtZSA9IGNvbmZpZy5qZW5raW5zX2NyZWRlbnRpYWxzWyd1c2VybmFtZSddCisgICAgcGFzc3dvcmQgPSBjb25maWcuamVua2luc19jcmVkZW50aWFsc1sncGFzc3dvcmQnXQorICAgIGplbmtpbnNfdXJsID0gY29uZmlnLmplbmtpbnNfdXJsCisgICAgamVua2lucyA9IGplbmtpbnNhcGkuYXBpLkplbmtpbnMoamVua2luc191cmwsIHVzZXJuYW1lLCBwYXNzd29yZCkKKworICAgIGJ1aWxkID0gJ2NsZWFuLWJpb25pYy1wcmVzdWJtaXQnCisgICAgaWYgYnVpbGQgaW4gamVua2luczoKKyAgICAgICAgaWYgbm90IGRyeV9ydW46CisgICAgICAgICAgICBqb2IgPSBqZW5raW5zW2J1aWxkXS5pbnZva2UoKQorICAgICAgICAgICAgdXJsID0gam9iLmdldF9idWlsZCgpLmJhc2V1cmwKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHVybCA9ICdEUllfUlVOX1VSTCcKKyAgICAgICAgbG9nZ2luZy5pbmZvKCdDbGVhbmluZzogJXMgJXMnLCBidWlsZCwgdXJsKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ0ZhaWxlZCB0byBjbGVhbjogY291bGQgbm90IGZpbmQgcHJvamVjdCAlcycsIGJ1aWxkKQorICAgIHJldHVybiBUcnVlCisKKworZGVmIGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sIGx1bmNoX3RhcmdldD1Ob25lKToKKyAgICBwcm9qZWN0X3RvX2plbmtpbnNfbWFwID0geworICAgICAgICAncGxhdGZvcm0vYmlvbmljJzogJ2Jpb25pYy1wcmVzdWJtaXQnLAorICAgICAgICAncGxhdGZvcm0vYnVpbGQnOiAnYmlvbmljLXByZXN1Ym1pdCcsCisgICAgICAgICdwbGF0Zm9ybS9leHRlcm5hbC9qZW1hbGxvYyc6ICdiaW9uaWMtcHJlc3VibWl0JywKKyAgICAgICAgJ3BsYXRmb3JtL2V4dGVybmFsL2xpYmN4eCc6ICdiaW9uaWMtcHJlc3VibWl0JywKKyAgICAgICAgJ3BsYXRmb3JtL2V4dGVybmFsL2xpYmN4eGFiaSc6ICdiaW9uaWMtcHJlc3VibWl0JywKKyAgICAgICAgJ3BsYXRmb3JtL2V4dGVybmFsL2NvbXBpbGVyLXJ0JzogJ2Jpb25pYy1wcmVzdWJtaXQnLAorICAgIH0KKworICAgIHVzZXJuYW1lID0gY29uZmlnLmplbmtpbnNfY3JlZGVudGlhbHNbJ3VzZXJuYW1lJ10KKyAgICBwYXNzd29yZCA9IGNvbmZpZy5qZW5raW5zX2NyZWRlbnRpYWxzWydwYXNzd29yZCddCisgICAgamVua2luc191cmwgPSBjb25maWcuamVua2luc191cmwKKyAgICBqZW5raW5zID0gamVua2luc2FwaS5hcGkuSmVua2lucyhqZW5raW5zX3VybCwgdXNlcm5hbWUsIHBhc3N3b3JkKQorCisgICAgcHJvamVjdCA9IGdlcnJpdF9pbmZvWydQcm9qZWN0J10KKyAgICBjaGFuZ2VfaWQgPSBnZXJyaXRfaW5mb1snQ2hhbmdlLUlkJ10KKyAgICBpZiBwcm9qZWN0IGluIHByb2plY3RfdG9famVua2luc19tYXA6CisgICAgICAgIGJ1aWxkID0gcHJvamVjdF90b19qZW5raW5zX21hcFtwcm9qZWN0XQorICAgIGVsc2U6CisgICAgICAgIGJ1aWxkID0gJ2Jpb25pYy1wcmVzdWJtaXQnCisKKyAgICBpZiBidWlsZCBpbiBqZW5raW5zOgorICAgICAgICBwcm9qZWN0X3BhdGggPSAnLycuam9pbihwcm9qZWN0LnNwbGl0KCcvJylbMTpdKQorICAgICAgICBpZiBub3QgcHJvamVjdF9wYXRoOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdib2d1cyBwcm9qZWN0OiB7fScuZm9ybWF0KHByb2plY3QpKQorICAgICAgICBpZiBwcm9qZWN0X3BhdGguc3RhcnRzd2l0aCgncGxhdGZvcm0vJyk6CisgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0JhZCBwcm9qZWN0IG1hcHBpbmc6IHt9ID0+IHt9Jy5mb3JtYXQoCisgICAgICAgICAgICAgICAgcHJvamVjdCwgcHJvamVjdF9wYXRoKSkKKyAgICAgICAgcmVmID0gZ2Vycml0LnJlZl9mb3JfY2hhbmdlKGNoYW5nZV9pZCkKKyAgICAgICAgcGFyYW1zID0geworICAgICAgICAgICAgJ1JFRic6IHJlZiwKKyAgICAgICAgICAgICdDSEFOR0VfSUQnOiBjaGFuZ2VfaWQsCisgICAgICAgICAgICAnUFJPSkVDVCc6IHByb2plY3RfcGF0aAorICAgICAgICB9CisgICAgICAgIGlmIGx1bmNoX3RhcmdldCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHBhcmFtc1snTFVOQ0hfVEFSR0VUJ10gPSBsdW5jaF90YXJnZXQKKyAgICAgICAgaWYgbm90IGRyeV9ydW46CisgICAgICAgICAgICBfID0gamVua2luc1tidWlsZF0uaW52b2tlKGJ1aWxkX3BhcmFtcz1wYXJhbXMpCisgICAgICAgICAgICAjIGh0dHBzOi8vaXNzdWVzLmplbmtpbnMtY2kub3JnL2Jyb3dzZS9KRU5LSU5TLTI3MjU2CisgICAgICAgICAgICAjIHVybCA9IGpvYi5nZXRfYnVpbGQoKS5iYXNldXJsCisgICAgICAgICAgICB1cmwgPSAnVVJMIFVOQVZBSUxBQkxFJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgdXJsID0gJ0RSWV9SVU5fVVJMJworICAgICAgICBsb2dnaW5nLmluZm8oJ0J1aWxkaW5nOiAlcyA9PiAlcyAlcyAlcycsIHByb2plY3QsIGJ1aWxkLCB1cmwsCisgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VfaWQpCisgICAgZWxzZToKKyAgICAgICAgbG9nZ2luZy5lcnJvcignVW5rbm93biBidWlsZDogJXMgPT4gJXMgJXMnLCBwcm9qZWN0LCBidWlsZCwgY2hhbmdlX2lkKQorICAgIHJldHVybiBUcnVlCisKKworZGVmIGhhbmRsZV9jaGFuZ2UoZ2Vycml0X2luZm8sIF8sIGRyeV9ydW4pOgorICAgIGlmIHNob3VsZF9za2lwX2J1aWxkKGdlcnJpdF9pbmZvKToKKyAgICAgICAgcmV0dXJuIFRydWUKKyAgICByZXR1cm4gYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1bikKKworCitkZWYgZHJvcF9yZWplY3Rpb24oZ2Vycml0X2luZm8sIGRyeV9ydW4pOgorICAgIHJlcXVlc3RfZGF0YSA9IHsKKyAgICAgICAgJ2NoYW5nZWlkJzogZ2Vycml0X2luZm9bJ0NoYW5nZS1JZCddLAorICAgICAgICAncGF0Y2hzZXQnOiBnZXJyaXRfaW5mb1snUGF0Y2hTZXQnXQorICAgIH0KKyAgICB1cmwgPSAne30ve30nLmZvcm1hdChjb25maWcuYnVpbGRfbGlzdGVuZXJfdXJsLCAnZHJvcC1yZWplY3Rpb24nKQorICAgIGhlYWRlcnMgPSB7J0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnfQorICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXF1ZXN0cy5wb3N0KHVybCwgaGVhZGVycz1oZWFkZXJzLCBkYXRhPWpzb24uZHVtcHMocmVxdWVzdF9kYXRhKSkKKyAgICAgICAgZXhjZXB0IHJlcXVlc3RzLmV4Y2VwdGlvbnMuQ29ubmVjdGlvbkVycm9yIGFzIGV4OgorICAgICAgICAgICAgbG9nZ2luZy5lcnJvcignRmFpbGVkIHRvIGRyb3AgcmVqZWN0aW9uOiAlcycsIGV4KQorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgbG9nZ2luZy5pbmZvKCdEcm9wcGVkIHJlamVjdGlvbjogJXMnLCBnZXJyaXRfaW5mb1snQ2hhbmdlLUlkJ10pCisgICAgcmV0dXJuIFRydWUKKworCitkZWYgaGFuZGxlX2NvbW1lbnQoZ2Vycml0X2luZm8sIGJvZHksIGRyeV9ydW4pOgorICAgIGlmICdWZXJpZmllZCsxJyBpbiBib2R5OgorICAgICAgICBkcm9wX3JlamVjdGlvbihnZXJyaXRfaW5mbywgZHJ5X3J1bikKKworICAgIGlmIHNob3VsZF9za2lwX2J1aWxkKGdlcnJpdF9pbmZvKToKKyAgICAgICAgcmV0dXJuIFRydWUKKworICAgIGNvbW1hbmRfbWFwID0geworICAgICAgICAnY2xlYW4nOiBsYW1iZGE6IGNsZWFuX3Byb2plY3QoZHJ5X3J1biksCisgICAgICAgICdyZXRyeSc6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biksCisKKyAgICAgICAgJ2FybSc6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsdW5jaF90YXJnZXQ9J2Fvc3BfYXJtLWVuZycpLAorICAgICAgICAnYWFyY2g2NCc6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHVuY2hfdGFyZ2V0PSdhb3NwX2FybTY0LWVuZycpLAorICAgICAgICAnbWlwcyc6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHVuY2hfdGFyZ2V0PSdhb3NwX21pcHMtZW5nJyksCisgICAgICAgICdtaXBzNjQnOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHVuY2hfdGFyZ2V0PSdhb3NwX21pcHM2NC1lbmcnKSwKKyAgICAgICAgJ3g4Nic6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsdW5jaF90YXJnZXQ9J2Fvc3BfeDg2LWVuZycpLAorICAgICAgICAneDg2XzY0JzogbGFtYmRhOiBidWlsZF9wcm9qZWN0KGdlcnJpdF9pbmZvLCBkcnlfcnVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx1bmNoX3RhcmdldD0nYW9zcF94ODZfNjQtZW5nJyksCisgICAgfQorCisgICAgZGVmIGhhbmRsZV91bmtub3duX2NvbW1hbmQoKToKKyAgICAgICAgcGFzcyAgICAjIFRPRE8oZGFuYWxiZXJ0KTogc2hvdWxkIGNvbXBsYWluIHRvIHRoZSBjb21tZW50ZXIuCisKKyAgICBjb21tYW5kcyA9IFttYXRjaC5ncm91cCgxKS5zdHJpcCgpIGZvciBtYXRjaCBpbgorICAgICAgICAgICAgICAgIHJlLmZpbmRpdGVyKHInXmJpb25pY2JiOlxzKiguKykkJywgYm9keSwgZmxhZ3M9cmUuTVVMVElMSU5FKV0KKworICAgIGZvciBjb21tYW5kIGluIGNvbW1hbmRzOgorICAgICAgICBpZiBjb21tYW5kIGluIGNvbW1hbmRfbWFwOgorICAgICAgICAgICAgY29tbWFuZF9tYXBbY29tbWFuZF0oKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaGFuZGxlX3Vua25vd25fY29tbWFuZCgpCisKKyAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBza2lwX2hhbmRsZXIoZ2Vycml0X2luZm8sIF8sIF9fKToKKyAgICBsb2dnaW5nLmluZm8oJ1NraXBwaW5nICVzOiAlcycsIGdlcnJpdF9pbmZvWydNZXNzYWdlVHlwZSddLAorICAgICAgICAgICAgICAgICBnZXJyaXRfaW5mb1snQ2hhbmdlLUlkJ10pCisgICAgcmV0dXJuIFRydWUKZGlmZiAtLWdpdCBhL3Rvb2xzL2Jpb25pY2JiL3Rhc2tzLnB5IGIvdG9vbHMvYmlvbmljYmIvdGFza3MucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGMzOWE5OAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiL3Rhc2tzLnB5CkBAIC0wLDAgKzEsMTA4IEBACisjCisjIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAnTGljZW5zZScpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworaW1wb3J0IGh0dHBsaWIKK2ltcG9ydCBodHRwbGliMgoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCByZQoraW1wb3J0IHNvY2tldAorCitpbXBvcnQgYXBpY2xpZW50LmVycm9ycworCitpbXBvcnQgZ2Vycml0CitpbXBvcnQgZ21haWwKK2ltcG9ydCBwcmVzdWJtaXQKKworCitkZWYgZ2V0X2dlcnJpdF9pbmZvKGJvZHkpOgorICAgIGluZm8gPSB7fQorICAgIGdlcnJpdF9wYXR0ZXJuID0gcideR2Vycml0LShcUyspOiAoLispJCcKKyAgICBmb3IgbWF0Y2ggaW4gcmUuZmluZGl0ZXIoZ2Vycml0X3BhdHRlcm4sIGJvZHksIGZsYWdzPXJlLk1VTFRJTElORSk6CisgICAgICAgIGluZm9bbWF0Y2guZ3JvdXAoMSldID0gbWF0Y2guZ3JvdXAoMikuc3RyaXAoKQorICAgIHJldHVybiBpbmZvCisKKworZGVmIHByb2Nlc3NfbWVzc2FnZShtc2csIGRyeV9ydW4pOgorICAgIHRyeToKKyAgICAgICAgYm9keSA9IGdtYWlsLmdldF9ib2R5KG1zZykKKyAgICAgICAgZ2Vycml0X2luZm8gPSBnZXRfZ2Vycml0X2luZm8oYm9keSkKKyAgICAgICAgaWYgbm90IGdlcnJpdF9pbmZvOgorICAgICAgICAgICAgbG9nZ2luZy5mYXRhbCgnTm8gR2Vycml0IGluZm8gZm91bmQ6ICVzJywgbXNnLnN1YmplY3QpCisgICAgICAgIG1zZ190eXBlID0gZ2Vycml0X2luZm9bJ01lc3NhZ2VUeXBlJ10KKyAgICAgICAgaGFuZGxlcnMgPSB7CisgICAgICAgICAgICAnY29tbWVudCc6IHByZXN1Ym1pdC5oYW5kbGVfY29tbWVudCwKKyAgICAgICAgICAgICduZXdjaGFuZ2UnOiBwcmVzdWJtaXQuaGFuZGxlX2NoYW5nZSwKKyAgICAgICAgICAgICduZXdwYXRjaHNldCc6IHByZXN1Ym1pdC5oYW5kbGVfY2hhbmdlLAorCisgICAgICAgICAgICAnYWJhbmRvbic6IHByZXN1Ym1pdC5za2lwX2hhbmRsZXIsCisgICAgICAgICAgICAnbWVyZ2UtZmFpbGVkJzogcHJlc3VibWl0LnNraXBfaGFuZGxlciwKKyAgICAgICAgICAgICdtZXJnZWQnOiBwcmVzdWJtaXQuc2tpcF9oYW5kbGVyLAorICAgICAgICAgICAgJ3Jlc3RvcmUnOiBwcmVzdWJtaXQuc2tpcF9oYW5kbGVyLAorICAgICAgICAgICAgJ3JldmVydCc6IHByZXN1Ym1pdC5za2lwX2hhbmRsZXIsCisgICAgICAgIH0KKworICAgICAgICBtZXNzYWdlX3R5cGUgPSBnZXJyaXRfaW5mb1snTWVzc2FnZVR5cGUnXQorICAgICAgICBpZiBtZXNzYWdlX3R5cGUgaW4gaGFuZGxlcnM6CisgICAgICAgICAgICByZXR1cm4gaGFuZGxlcnNbbWVzc2FnZV90eXBlXShnZXJyaXRfaW5mbywgYm9keSwgZHJ5X3J1bikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dpbmcud2FybmluZygnTWVzc2FnZVR5cGUgJXMgdW5oYW5kbGVkLicsIG1zZ190eXBlKQorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBleGNlcHQgTm90SW1wbGVtZW50ZWRFcnJvciBhcyBleDoKKyAgICAgICAgbG9nZ2luZy5lcnJvcigiJXMiLCBleCkKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZXhjZXB0IGdlcnJpdC5HZXJyaXRFcnJvciBhcyBleDoKKyAgICAgICAgY2hhbmdlX2lkID0gZ2Vycml0X2luZm9bJ0NoYW5nZS1JZCddCisgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ0dlcnJpdCBlcnJvciAoJWQpOiAlcyAlcycsIGV4LmNvZGUsIGNoYW5nZV9pZCwgZXgudXJsKQorICAgICAgICByZXR1cm4gZXguY29kZSA9PSA0MDQKKworCitkZWYgZ2V0X2FuZF9wcm9jZXNzX2pvYnMoKToKKyAgICBkcnlfcnVuID0gRmFsc2UKKworICAgIGdtYWlsX3NlcnZpY2UgPSBnbWFpbC5idWlsZF9zZXJ2aWNlKCkKKyAgICBtc2dfc2VydmljZSA9IGdtYWlsX3NlcnZpY2UudXNlcnMoKS5tZXNzYWdlcygpCisKKyAgICAjIFdlIHJ1biBpbiBhIGxvb3AgYmVjYXVzZSBzb21lIG9mIHRoZSBleGNlcHRpb25zIHRocm93biBoZXJlIG1lYW4gd2UganVzdAorICAgICMgbmVlZCB0byByZXRyeS4gRm9yIGVycm9ycyB3aGVyZSB3ZSBzaG91bGQgYmFjayBvZmYgKHR5cGljYWxseSBhbnkgZ21haWwKKyAgICAjIEFQSSBleGNlcHRpb25zKSwgcHJvY2Vzc19jaGFuZ2VzIGNhdGNoZXMgdGhlIGVycm9yIGFuZCByZXR1cm5zIG5vcm1hbGx5LgorICAgIHdoaWxlIFRydWU6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHByb2Nlc3NfY2hhbmdlcyhnbWFpbF9zZXJ2aWNlLCBtc2dfc2VydmljZSwgZHJ5X3J1bikKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBleGNlcHQgaHR0cGxpYi5CYWRTdGF0dXNMaW5lOgorICAgICAgICAgICAgcGFzcworICAgICAgICBleGNlcHQgaHR0cGxpYjIuU2VydmVyTm90Rm91bmRFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKworCitkZWYgcHJvY2Vzc19jaGFuZ2VzKGdtYWlsX3NlcnZpY2UsIG1zZ19zZXJ2aWNlLCBkcnlfcnVuKToKKyAgICB0cnk6CisgICAgICAgIGxhYmVscyA9IGdtYWlsX3NlcnZpY2UudXNlcnMoKS5sYWJlbHMoKS5saXN0KHVzZXJJZD0nbWUnKS5leGVjdXRlKCkKKyAgICAgICAgaWYgbm90IGxhYmVsc1snbGFiZWxzJ106CisgICAgICAgICAgICBsb2dnaW5nLmVycm9yKCdDb3VsZCBub3QgcmV0cmlldmUgR21haWwgbGFiZWxzJykKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBsYWJlbF9pZCA9IGdtYWlsLmdldF9nZXJyaXRfbGFiZWwobGFiZWxzWydsYWJlbHMnXSkKKyAgICAgICAgaWYgbm90IGxhYmVsX2lkOgorICAgICAgICAgICAgbG9nZ2luZy5lcnJvcignQ291bGQgbm90IGZpbmQgZ2Vycml0IGxhYmVsJykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGZvciBtc2cgaW4gZ21haWwuZ2V0X2FsbF9tZXNzYWdlcyhnbWFpbF9zZXJ2aWNlLCBsYWJlbF9pZCk6CisgICAgICAgICAgICBtc2cgPSBtc2dfc2VydmljZS5nZXQodXNlcklkPSdtZScsIGlkPW1zZ1snaWQnXSkuZXhlY3V0ZSgpCisgICAgICAgICAgICBpZiBwcm9jZXNzX21lc3NhZ2UobXNnLCBkcnlfcnVuKSBhbmQgbm90IGRyeV9ydW46CisgICAgICAgICAgICAgICAgbXNnX3NlcnZpY2UudHJhc2godXNlcklkPSdtZScsIGlkPW1zZ1snaWQnXSkuZXhlY3V0ZSgpCisgICAgZXhjZXB0IGFwaWNsaWVudC5lcnJvcnMuSHR0cEVycm9yIGFzIGV4OgorICAgICAgICBsb2dnaW5nLmVycm9yKCdBUEkgQ2xpZW50IEhUVFAgZXJyb3I6ICVzJywgZXgpCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi90ZXN0X3Rhc2tzLnB5IGIvdG9vbHMvYmlvbmljYmIvdGVzdF90YXNrcy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzZjYmFkCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvYmlvbmljYmIvdGVzdF90YXNrcy5weQpAQCAtMCwwICsxLDk0IEBACitpbXBvcnQgbW9jaworaW1wb3J0IHVuaXR0ZXN0CisKK2ltcG9ydCBwcmVzdWJtaXQKKworCitjbGFzcyBUZXN0U2hvdWxkU2tpcEJ1aWxkKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2Jpb25pY2JiJykKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2NsZWFuc3BlYycpCisgICAgQG1vY2sucGF0Y2goJ2dlcnJpdC5nZXRfY29tbWl0JykKKyAgICBkZWYgdGVzdF9hY2NlcHRzX2dvb2dsZXJzKHNlbGYsIG1vY2tfY29tbWl0LCAqb3RoZXJfY2hlY2tzKToKKyAgICAgICAgbW9ja19jb21taXQucmV0dXJuX3ZhbHVlID0geworICAgICAgICAgICAgJ2NvbW1pdHRlcic6IHsnZW1haWwnOiAnZ29vZ2xlckBnb29nbGUuY29tJ30KKyAgICAgICAgfQorCisgICAgICAgIGZvciBvdGhlcl9jaGVjayBpbiBvdGhlcl9jaGVja3M6CisgICAgICAgICAgICBvdGhlcl9jaGVjay5yZXR1cm5fdmFsdWUgPSBGYWxzZQorCisgICAgICAgIGZvciBtZXNzYWdlX3R5cGUgaW4gKCduZXdjaGFuZ2UnLCAnbmV3cGF0Y2hzZXQnLCAnY29tbWVudCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShwcmVzdWJtaXQuc2hvdWxkX3NraXBfYnVpbGQoeworICAgICAgICAgICAgICAgICdNZXNzYWdlVHlwZSc6IG1lc3NhZ2VfdHlwZSwKKyAgICAgICAgICAgICAgICAnQ2hhbmdlLUlkJzogJycsCisgICAgICAgICAgICAgICAgJ1BhdGNoU2V0JzogJycsCisgICAgICAgICAgICB9KSkKKworICAgIEBtb2NrLnBhdGNoKCdwcmVzdWJtaXQuY29udGFpbnNfYmlvbmljYmInKQorICAgIEBtb2NrLnBhdGNoKCdwcmVzdWJtaXQuY29udGFpbnNfY2xlYW5zcGVjJykKKyAgICBAbW9jay5wYXRjaCgnZ2Vycml0LmdldF9jb21taXQnKQorICAgIGRlZiB0ZXN0X3JlamVjdHNfZ29vZ2xpc2hfZG9tYWlucyhzZWxmLCBtb2NrX2NvbW1pdCwgKm90aGVyX2NoZWNrcyk6CisgICAgICAgIG1vY2tfY29tbWl0LnJldHVybl92YWx1ZSA9IHsKKyAgICAgICAgICAgICdjb21taXR0ZXInOiB7J2VtYWlsJzogJ2Zha2Vnb29nbGVyQGdvb2dsZS5jb20uZmFrZS5jb20nfQorICAgICAgICB9CisKKyAgICAgICAgZm9yIG90aGVyX2NoZWNrIGluIG90aGVyX2NoZWNrczoKKyAgICAgICAgICAgIG90aGVyX2NoZWNrLnJldHVybl92YWx1ZSA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1lc3NhZ2VfdHlwZSBpbiAoJ25ld2NoYW5nZScsICduZXdwYXRjaHNldCcsICdjb21tZW50Jyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocHJlc3VibWl0LnNob3VsZF9za2lwX2J1aWxkKHsKKyAgICAgICAgICAgICAgICAnTWVzc2FnZVR5cGUnOiBtZXNzYWdlX3R5cGUsCisgICAgICAgICAgICAgICAgJ0NoYW5nZS1JZCc6ICcnLAorICAgICAgICAgICAgICAgICdQYXRjaFNldCc6ICcnLAorICAgICAgICAgICAgfSkpCisKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2Jpb25pY2JiJykKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2NsZWFuc3BlYycpCisgICAgQG1vY2sucGF0Y2goJ2dlcnJpdC5nZXRfY29tbWl0JykKKyAgICBkZWYgdGVzdF9yZWplY3RzX25vbl9nb29nbGVycyhzZWxmLCBtb2NrX2NvbW1pdCwgKm90aGVyX2NoZWNrcyk6CisgICAgICAgIG1vY2tfY29tbWl0LnJldHVybl92YWx1ZSA9IHsKKyAgICAgICAgICAgICdjb21taXR0ZXInOiB7J2VtYWlsJzogJ2pvaG5kb2VAZXhhbXBsZS5jb20nfQorICAgICAgICB9CisKKyAgICAgICAgZm9yIG90aGVyX2NoZWNrIGluIG90aGVyX2NoZWNrczoKKyAgICAgICAgICAgIG90aGVyX2NoZWNrLnJldHVybl92YWx1ZSA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1lc3NhZ2VfdHlwZSBpbiAoJ25ld2NoYW5nZScsICduZXdwYXRjaHNldCcsICdjb21tZW50Jyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocHJlc3VibWl0LnNob3VsZF9za2lwX2J1aWxkKHsKKyAgICAgICAgICAgICAgICAnTWVzc2FnZVR5cGUnOiBtZXNzYWdlX3R5cGUsCisgICAgICAgICAgICAgICAgJ0NoYW5nZS1JZCc6ICcnLAorICAgICAgICAgICAgICAgICdQYXRjaFNldCc6ICcnLAorICAgICAgICAgICAgfSkpCisKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2Jpb25pY2JiJykKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmlzX3VudHJ1c3RlZF9jb21taXR0ZXInKQorICAgIEBtb2NrLnBhdGNoKCdnZXJyaXQuZ2V0X2ZpbGVzX2Zvcl9yZXZpc2lvbicpCisgICAgZGVmIHRlc3Rfc2tpcHNfY2xlYW5zcGVjcyhzZWxmLCBtb2NrX2ZpbGVzLCAqb3RoZXJfY2hlY2tzKToKKyAgICAgICAgbW9ja19maWxlcy5yZXR1cm5fdmFsdWUgPSBbJ2Zvby9DbGVhblNwZWMubWsnXQorICAgICAgICBmb3Igb3RoZXJfY2hlY2sgaW4gb3RoZXJfY2hlY2tzOgorICAgICAgICAgICAgb3RoZXJfY2hlY2sucmV0dXJuX3ZhbHVlID0gRmFsc2UKKworICAgICAgICBmb3IgbWVzc2FnZV90eXBlIGluICgnbmV3Y2hhbmdlJywgJ25ld3BhdGNoc2V0JywgJ2NvbW1lbnQnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwcmVzdWJtaXQuc2hvdWxkX3NraXBfYnVpbGQoeworICAgICAgICAgICAgICAgICdNZXNzYWdlVHlwZSc6IG1lc3NhZ2VfdHlwZSwKKyAgICAgICAgICAgICAgICAnQ2hhbmdlLUlkJzogJycsCisgICAgICAgICAgICAgICAgJ1BhdGNoU2V0JzogJycsCisgICAgICAgICAgICB9KSkKKworICAgIEBtb2NrLnBhdGNoKCdwcmVzdWJtaXQuY29udGFpbnNfY2xlYW5zcGVjJykKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmlzX3VudHJ1c3RlZF9jb21taXR0ZXInKQorICAgIEBtb2NrLnBhdGNoKCdnZXJyaXQuZ2V0X2ZpbGVzX2Zvcl9yZXZpc2lvbicpCisgICAgZGVmIHRlc3Rfc2tpcHNfYmlvbmljYmIoc2VsZiwgbW9ja19maWxlcywgKm90aGVyX2NoZWNrcyk6CisgICAgICAgIG1vY2tfZmlsZXMucmV0dXJuX3ZhbHVlID0gWyd0b29scy9iaW9uaWNiYi9jb21tb24uc2gnXQorICAgICAgICBmb3Igb3RoZXJfY2hlY2sgaW4gb3RoZXJfY2hlY2tzOgorICAgICAgICAgICAgb3RoZXJfY2hlY2sucmV0dXJuX3ZhbHVlID0gRmFsc2UKKworICAgICAgICBmb3IgbWVzc2FnZV90eXBlIGluICgnbmV3Y2hhbmdlJywgJ25ld3BhdGNoc2V0JywgJ2NvbW1lbnQnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwcmVzdWJtaXQuc2hvdWxkX3NraXBfYnVpbGQoeworICAgICAgICAgICAgICAgICdNZXNzYWdlVHlwZSc6IG1lc3NhZ2VfdHlwZSwKKyAgICAgICAgICAgICAgICAnQ2hhbmdlLUlkJzogJycsCisgICAgICAgICAgICAgICAgJ1BhdGNoU2V0JzogJycsCisgICAgICAgICAgICB9KSkKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oKQpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvQW5kcm9pZC5tayBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL0FuZHJvaWQubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzVkYmE3MQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL0FuZHJvaWQubWsKQEAgLTAsMCArMSw5NyBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKworY29tbW9uX2NwcGZsYWdzIDo9IC1XYWxsIC1XZXh0cmEgLVd1bnVzZWQgLVdlcnJvciAtV29sZC1zdHlsZS1jYXN0CisKK0xPQ0FMX1BBVEggOj0gJChjYWxsIG15LWRpcikKKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX0NQUF9FWFRFTlNJT04gOj0gLmNjCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSBcCisgIHNyYy9kZWJ1Zy5jYyBcCisgIHNyYy9kZWx0YV9lbmNvZGVyLmNjIFwKKyAgc3JjL2VsZl9maWxlLmNjIFwKKyAgc3JjL3BhY2tlci5jYyBcCisgIHNyYy9zbGViMTI4LmNjIFwKKworTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJlbGYKK0xPQ0FMX0NfSU5DTFVERVMgOj0gZXh0ZXJuYWwvZWxmdXRpbHMvc3JjL2xpYmVsZgorTE9DQUxfTU9EVUxFIDo9IGxpYl9yZWxvY2F0aW9uX3BhY2tlcgorCitMT0NBTF9DUFBGTEFHUyA6PSAkKGNvbW1vbl9jcHBmbGFncykKKworTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCisKK2luY2x1ZGUgJChCVUlMRF9IT1NUX1NUQVRJQ19MSUJSQVJZKQorCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKKworTE9DQUxfQ1BQX0VYVEVOU0lPTiA6PSAuY2MKKworTE9DQUxfU1JDX0ZJTEVTIDo9IHNyYy9tYWluLmNjCitMT0NBTF9TVEFUSUNfTElCUkFSSUVTIDo9IGxpYl9yZWxvY2F0aW9uX3BhY2tlciBsaWJlbGYKKworIyBTdGF0aWNhbGx5IGxpbmtpbmcgbGliYysrIHRvIG1ha2UgaXQgd29yayBmcm9tIHByZWJ1aWx0cworTE9DQUxfQ1hYX1NUTCA6PSBsaWJjKytfc3RhdGljCitMT0NBTF9DX0lOQ0xVREVTIDo9IGV4dGVybmFsL2VsZnV0aWxzL3NyYy9saWJlbGYgbGlibmF0aXZlaGVscGVyL2luY2x1ZGUKKworTE9DQUxfTU9EVUxFIDo9IHJlbG9jYXRpb25fcGFja2VyCisKK0xPQ0FMX0NQUEZMQUdTIDo9ICQoY29tbW9uX2NwcGZsYWdzKQorCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKKworaW5jbHVkZSAkKEJVSUxEX0hPU1RfRVhFQ1VUQUJMRSkKKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX0NQUF9FWFRFTlNJT04gOj0gLmNjCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSBcCisgIHNyYy9kZWJ1Z191bml0dGVzdC5jYyBcCisgIHNyYy9kZWx0YV9lbmNvZGVyX3VuaXR0ZXN0LmNjIFwKKyAgc3JjL2VsZl9maWxlX3VuaXR0ZXN0LmNjIFwKKyAgc3JjL3NsZWIxMjhfdW5pdHRlc3QuY2MgXAorICBzcmMvcGFja2VyX3VuaXR0ZXN0LmNjIFwKKworTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJfcmVsb2NhdGlvbl9wYWNrZXIgbGliZWxmCitMT0NBTF9DX0lOQ0xVREVTIDo9IGV4dGVybmFsL2VsZnV0aWxzL3NyYy9saWJlbGYKKworTE9DQUxfQ1BQRkxBR1MgOj0gJChjb21tb25fY3BwZmxhZ3MpCisKK0xPQ0FMX01PRFVMRSA6PSByZWxvY2F0aW9uX3BhY2tlcl91bml0X3Rlc3RzCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKKworaW5jbHVkZSAkKEJVSUxEX0hPU1RfTkFUSVZFX1RFU1QpCisKKyMgJCgxKSBsaWJyYXJ5IG5hbWUKK2RlZmluZSBjb3B5LXRlc3QtbGlicmFyeQoraW5jbHVkZSAkKENMRUFSX1ZBUlMpCitMT0NBTF9JU19IT1NUX01PRFVMRSA6PSB0cnVlCitMT0NBTF9NT0RVTEUgOj0gJCgxKQorTE9DQUxfTU9EVUxFX0NMQVNTIDo9IFNIQVJFRF9MSUJSQVJJRVMKK0xPQ0FMX01PRFVMRV9QQVRIIDo9ICQoSE9TVF9PVVRfRVhFQ1VUQUJMRVMpCitMT0NBTF9TVFJJUF9NT0RVTEUgOj0gZmFsc2UKK0xPQ0FMX1NSQ19GSUxFUyA6PSB0ZXN0X2RhdGEvJCgxKQoraW5jbHVkZSAkKEJVSUxEX1BSRUJVSUxUKQorZW5kZWYKKworJChldmFsICQoY2FsbCBjb3B5LXRlc3QtbGlicmFyeSxlbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzIuc28pKQorJChldmFsICQoY2FsbCBjb3B5LXRlc3QtbGlicmFyeSxlbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzJfcGFja2VkLnNvKSkKKyQoZXZhbCAkKGNhbGwgY29weS10ZXN0LWxpYnJhcnksZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0LnNvKSkKKyQoZXZhbCAkKGNhbGwgY29weS10ZXN0LWxpYnJhcnksZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0X3BhY2tlZC5zbykpCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9MSUNFTlNFIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvTElDRU5TRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NzJiYjJlCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvTElDRU5TRQpAQCAtMCwwICsxLDI3IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vCisvLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKy8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKy8vIG1ldDoKKy8vCisvLyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisvLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisvLyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKy8vIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKy8vIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKy8vIGRpc3RyaWJ1dGlvbi4KKy8vICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKy8vIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisvLworLy8gVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworLy8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorLy8gQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKy8vIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisvLyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKy8vIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKy8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOWQ3YWIwCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlYnVnLmNjCkBAIC0wLDAgKzEsNTUgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworI2luY2x1ZGUgImRlYnVnLmgiCisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxpb3N0cmVhbT4KKyNpbmNsdWRlIDxzdHJpbmc+CisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIENvbnN0cnVjdCBhIG5ldyBtZXNzYWdlIGxvZ2dlci4gIFByaW50cyBpZiBsZXZlbCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8KKy8vIHRoZSBsZXZlbCBzZXQgd2l0aCBTZXRWZXJib3NlKCkgYW5kIHByZWRpY2F0ZSBpcyB0cnVlLgorTG9nZ2VyOjpMb2dnZXIoU2V2ZXJpdHkgc2V2ZXJpdHksIGludCBsZXZlbCwgYm9vbCBwcmVkaWNhdGUpIHsKKyAgc2V2ZXJpdHlfID0gc2V2ZXJpdHk7CisgIGxldmVsXyA9IGxldmVsOworICBwcmVkaWNhdGVfID0gcHJlZGljYXRlOworfQorCisvLyBPbiBkZXN0cnVjdGlvbiwgZmx1c2ggYW5kIHByaW50IHRoZSBzdHJpbmdzIGFjY3VtdWxhdGVkLiAgQWJvcnQgaWYgRkFUQUwuCitMb2dnZXI6On5Mb2dnZXIoKSB7CisgIGlmIChwcmVkaWNhdGVfKSB7CisgICAgaWYgKGxldmVsXyA8PSBtYXhfbGV2ZWxfKSB7CisgICAgICBzdGQ6Om9zdHJlYW0qIGxvZyA9IHNldmVyaXR5XyA9PSBJTkZPID8gaW5mb19zdHJlYW1fIDogZXJyb3Jfc3RyZWFtXzsKKyAgICAgIHN0ZDo6c3RyaW5nIHRhZzsKKyAgICAgIHN3aXRjaCAoc2V2ZXJpdHlfKSB7CisgICAgICAgIGNhc2UgSU5GTzogdGFnID0gIklORk8iOyBicmVhazsKKyAgICAgICAgY2FzZSBXQVJOSU5HOiB0YWcgPSAiV0FSTklORyI7IGJyZWFrOworICAgICAgICBjYXNlIEVSUk9SOiB0YWcgPSAiRVJST1IiOyBicmVhazsKKyAgICAgICAgY2FzZSBGQVRBTDogdGFnID0gIkZBVEFMIjsgYnJlYWs7CisgICAgICB9CisgICAgICBzdHJlYW1fLmZsdXNoKCk7CisgICAgICAqbG9nIDw8IHRhZyA8PCAiOiAiIDw8IHN0cmVhbV8uc3RyKCkgPDwgc3RkOjplbmRsOworICAgIH0KKyAgICBpZiAoc2V2ZXJpdHlfID09IEZBVEFMKQorICAgICAgYWJvcnQoKTsKKyAgfQorfQorCisvLyBSZXNldCB0byBpbml0aWFsIHN0YXRlLgordm9pZCBMb2dnZXI6OlJlc2V0KCkgeworICBtYXhfbGV2ZWxfID0gLTE7CisgIGluZm9fc3RyZWFtXyA9ICZzdGQ6OmNvdXQ7CisgIGVycm9yX3N0cmVhbV8gPSAmc3RkOjpjZXJyOworfQorCisvLyBWZXJib3NpdHkuICBOb3QgdGhyZWFkLXNhZmUuCitpbnQgTG9nZ2VyOjptYXhfbGV2ZWxfID0gLTE7CisKKy8vIExvZ2dpbmcgc3RyZWFtcy4gIE5vdCB0aHJlYWQtc2FmZS4KK3N0ZDo6b3N0cmVhbSogTG9nZ2VyOjppbmZvX3N0cmVhbV8gPSAmc3RkOjpjb3V0Oworc3RkOjpvc3RyZWFtKiBMb2dnZXI6OmVycm9yX3N0cmVhbV8gPSAmc3RkOjpjZXJyOworCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5oIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlYnVnLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDhiZTZjMQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5oCkBAIC0wLDAgKzEsMTE1IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8vIExvZ2dpbmcgYW5kIGNoZWNrcy4gIEF2b2lkcyBhIGRlcGVuZGVuY3kgb24gYmFzZS4KKy8vCisvLyBMT0codGFnKSBwcmludHMgbWVzc2FnZXMuICBUYWdzIGFyZSBJTkZPLCBXQVJOSU5HLCBFUlJPUiBhbmQgRkFUQUwuCisvLyBJTkZPIHByaW50cyB0byBzdGRvdXQsIHRoZSBvdGhlcnMgdG8gc3RkZXJyLiAgRkFUQUwgYWJvcnRzIGFmdGVyIHByaW50aW5nLgorLy8KKy8vIExPR19JRih0YWcsIHByZWRpY2F0ZSkgbG9ncyBpZiBwcmVkaWNhdGUgZXZhbHVhdGVzIHRvIHRydWUsIGVsc2Ugc2lsZW50LgorLy8KKy8vIFZMT0cobGV2ZWwpIGxvZ3MgSU5GTyBtZXNzYWdlcyB3aGVyZSBsZXZlbCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlCisvLyB2ZXJib3NpdHkgbGV2ZWwgc2V0IHdpdGggU2V0VmVyYm9zZSgpLgorLy8KKy8vIFZMT0dfSUYobGV2ZWwsIHByZWRpY2F0ZSkgbG9ncyBJTkZPIGlmIHByZWRpY2F0ZSBldmFsdWF0ZXMgdG8gdHJ1ZSwKKy8vIGVsc2Ugc2lsZW50LgorLy8KKy8vIENIRUNLKHByZWRpY2F0ZSkgbG9ncyBhIEZBVEFMIGVycm9yIGlmIHByZWRpY2F0ZSBpcyBmYWxzZS4KKy8vIE5PVFJFQUNIRUQoKSBhbHdheXMgYWJvcnRzLgorLy8gTG9nIHN0cmVhbXMgY2FuIGJlIGNoYW5nZWQgd2l0aCBTZXRTdHJlYW1zKCkuICBMb2dnaW5nIGlzIG5vdCB0aHJlYWQtc2FmZS4KKy8vCisKKyNpZm5kZWYgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0RFQlVHX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19ERUJVR19IXworCisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8b3N0cmVhbT4KKyNpbmNsdWRlIDxzc3RyZWFtPgorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCitjbGFzcyBMb2dnZXIgeworIHB1YmxpYzoKKyAgZW51bSBTZXZlcml0eSB7SU5GTyA9IDAsIFdBUk5JTkcsIEVSUk9SLCBGQVRBTH07CisKKyAgLy8gQ29uc3RydWN0IGEgbmV3IG1lc3NhZ2UgbG9nZ2VyLiAgUHJpbnRzIGlmIGxldmVsIGlzIGxlc3MgdGhhbiBvcgorICAvLyBlcXVhbCB0byB0aGUgbGV2ZWwgc2V0IHdpdGggU2V0VmVyYm9zZSgpIGFuZCBwcmVkaWNhdGUgaXMgdHJ1ZS4KKyAgLy8gfHNldmVyaXR5fCBpcyBhbiBlbnVtZXJhdGVkIHNldmVyaXR5LgorICAvLyB8bGV2ZWx8IGlzIHRoZSB2ZXJib3NpdHkgbGV2ZWwuCisgIC8vIHxwcmVkaWNhdGV8IGNvbnRyb2xzIGlmIHRoZSBsb2dnZXIgcHJpbnRzIG9yIGlzIHNpbGVudC4KKyAgTG9nZ2VyKFNldmVyaXR5IHNldmVyaXR5LCBpbnQgbGV2ZWwsIGJvb2wgcHJlZGljYXRlKTsKKworICAvLyBPbiBkZXN0cnVjdGlvbiwgZmx1c2ggYW5kIHByaW50IHRoZSBzdHJpbmdzIGFjY3VtdWxhdGVkIGluIHN0cmVhbV8uCisgIH5Mb2dnZXIoKTsKKworICAvLyBSZXR1cm4gdGhlIHN0cmVhbSBmb3IgdGhpcyBsb2dnZXIuCisgIHN0ZDo6b3N0cmVhbSYgR2V0U3RyZWFtKCkgeyByZXR1cm4gc3RyZWFtXzsgfQorCisgIC8vIFNldCB2ZXJib3NpdHkgbGV2ZWwuICBNZXNzYWdlcyB3aXRoIGEgbGV2ZWwgbGVzcyB0aGFuIG9yIGVxdWFsIHRvCisgIC8vIHRoaXMgbGV2ZWwgYXJlIHByaW50ZWQsIG90aGVycyBhcmUgZGlzY2FyZGVkLiAgU3RhdGljLCBub3QgdGhyZWFkLXNhZmUuCisgIHN0YXRpYyB2b2lkIFNldFZlcmJvc2UoaW50IGxldmVsKSB7IG1heF9sZXZlbF8gPSBsZXZlbDsgfQorCisgIC8vIFNldCBpbmZvIGFuZCBlcnJvciBsb2dnaW5nIHN0cmVhbXMuICBTdGF0aWMsIG5vdCB0aHJlYWQtc2FmZS4KKyAgc3RhdGljIHZvaWQgU2V0U3RyZWFtcyhzdGQ6Om9zdHJlYW0qIGluZm9fc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6b3N0cmVhbSogZXJyb3Jfc3RyZWFtKSB7CisgICAgaW5mb19zdHJlYW1fID0gaW5mb19zdHJlYW07CisgICAgZXJyb3Jfc3RyZWFtXyA9IGVycm9yX3N0cmVhbTsKKyAgfQorCisgIC8vIFJlc2V0IHRvIGluaXRpYWwgc3RhdGUuCisgIHN0YXRpYyB2b2lkIFJlc2V0KCk7CisKKyBwcml2YXRlOgorICAvLyBNZXNzYWdlIHNldmVyaXR5LCB2ZXJib3NpdHkgbGV2ZWwsIGFuZCBwcmVkaWNhdGUuCisgIFNldmVyaXR5IHNldmVyaXR5XzsKKyAgaW50IGxldmVsXzsKKyAgYm9vbCBwcmVkaWNhdGVfOworCisgIC8vIFN0cmluZyBzdHJlYW0sIGFjY3VtdWxhdGVzIG1lc3NhZ2UgdGV4dC4KKyAgc3RkOjpvc3RyaW5nc3RyZWFtIHN0cmVhbV87CisKKyAgLy8gVmVyYm9zaXR5IGZvciBJTkZPIG1lc3NhZ2VzLiAgTm90IHRocmVhZC1zYWZlLgorICBzdGF0aWMgaW50IG1heF9sZXZlbF87CisKKyAgLy8gTG9nZ2luZyBzdHJlYW1zLiAgTm90IHRocmVhZC1zYWZlLgorICBzdGF0aWMgc3RkOjpvc3RyZWFtKiBpbmZvX3N0cmVhbV87CisgIHN0YXRpYyBzdGQ6Om9zdHJlYW0qIGVycm9yX3N0cmVhbV87Cit9OworCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKKworLy8gTWFrZSBsb2dnaW5nIHNldmVyaXRpZXMgdmlzaWJsZSBnbG9iYWxseS4KK3R5cGVkZWYgcmVsb2NhdGlvbl9wYWNrZXI6OkxvZ2dlcjo6U2V2ZXJpdHkgTG9nU2V2ZXJpdHk7Cit1c2luZyBMb2dTZXZlcml0eTo6SU5GTzsKK3VzaW5nIExvZ1NldmVyaXR5OjpXQVJOSU5HOwordXNpbmcgTG9nU2V2ZXJpdHk6OkVSUk9SOwordXNpbmcgTG9nU2V2ZXJpdHk6OkZBVEFMOworCisvLyBMT0coc2V2ZXJpdHkpIHByaW50cyBhIG1lc3NhZ2Ugd2l0aCB0aGUgZ2l2ZW4gc2V2ZXJpdHksIGFuZCBhYm9ydHMgaWYKKy8vIHNldmVyaXR5IGlzIEZBVEFMLiAgTE9HX0lGKHNldmVyaXR5LCBwcmVkaWNhdGUpIGRvZXMgdGhlIHNhbWUgYnV0IG9ubHkgaWYKKy8vIHByZWRpY2F0ZSBpcyB0cnVlLiAgSU5UX01JTiBpcyBndWFyYW50ZWVkIHRvIGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0bworLy8gYW55IHZlcmJvc2l0eSBsZXZlbC4KKyNkZWZpbmUgTE9HKHNldmVyaXR5KSBcCisgICAgKHJlbG9jYXRpb25fcGFja2VyOjpMb2dnZXIoc2V2ZXJpdHksIElOVF9NSU4sIHRydWUpLkdldFN0cmVhbSgpKQorI2RlZmluZSBMT0dfSUYoc2V2ZXJpdHksIHByZWRpY2F0ZSkgXAorICAgIChyZWxvY2F0aW9uX3BhY2tlcjo6TG9nZ2VyKHNldmVyaXR5LCBJTlRfTUlOLCAocHJlZGljYXRlKSkuR2V0U3RyZWFtKCkpCisKKy8vIFZMT0cobGV2ZWwpIHByaW50cyBpdHMgbWVzc2FnZSBhcyBJTkZPIGlmIGxldmVsIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0bworLy8gdGhlIGN1cnJlbnQgdmVyYm9zaXR5IGxldmVsLgorI2RlZmluZSBWTE9HKGxldmVsKSBcCisgICAgKHJlbG9jYXRpb25fcGFja2VyOjpMb2dnZXIoSU5GTywgKGxldmVsKSwgdHJ1ZSkuR2V0U3RyZWFtKCkpCisjZGVmaW5lIFZMT0dfSUYobGV2ZWwsIHByZWRpY2F0ZSkgXAorICAgIChyZWxvY2F0aW9uX3BhY2tlcjo6TG9nZ2VyKElORk8sIChsZXZlbCksIChwcmVkaWNhdGUpKS5HZXRTdHJlYW0oKSkKKworLy8gQ0hFQ0socHJlZGljYXRlKSBmYWlscyB3aXRoIGEgRkFUQUwgbG9nIG1lc3NhZ2UgaWYgcHJlZGljYXRlIGlzIGZhbHNlLgorI2RlZmluZSBDSEVDSyhwcmVkaWNhdGUpIChMT0dfSUYoRkFUQUwsICEocHJlZGljYXRlKSkgXAorICAgIDw8IF9fRklMRV9fIDw8ICI6IiA8PCBfX0xJTkVfXyA8PCAiOiAiIFwKKyAgICA8PCBfX0ZVTkNUSU9OX18gPDwgIjogQ0hFQ0sgJyIgI3ByZWRpY2F0ZSAiJyBmYWlsZWQiKQorCisvLyBOT1RSRUFDSEVEKCkgYWx3YXlzIGZhaWxzIHdpdGggYSBGQVRBTCBsb2cgbWVzc2FnZS4KKyNkZWZpbmUgTk9UUkVBQ0hFRChfKSAoTE9HKEZBVEFMKSBcCisgICAgPDwgX19GSUxFX18gPDwgIjoiIDw8IF9fTElORV9fIDw8ICI6ICIgXAorICAgIDw8IF9fRlVOQ1RJT05fXyA8PCAiOiBOT1RSRUFDSEVEKCkgaGl0IikKKworI2VuZGlmICAvLyBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfREVCVUdfSF8KZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Z191bml0dGVzdC5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Z191bml0dGVzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzFlMmFlCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlYnVnX3VuaXR0ZXN0LmNjCkBAIC0wLDAgKzEsMTIyIEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorCisjaW5jbHVkZSA8c3N0cmVhbT4KKyNpbmNsdWRlICJndGVzdC9ndGVzdC5oIgorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCitURVNUKERlYnVnLCBMb2cpIHsKKyAgTG9nZ2VyOjpSZXNldCgpOworICBzdGQ6Om9zdHJpbmdzdHJlYW0gaW5mbzsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGVycm9yOworICBMb2dnZXI6OlNldFN0cmVhbXMoJmluZm8sICZlcnJvcik7CisKKyAgTE9HKElORk8pIDw8ICJJTkZPIGxvZyBtZXNzYWdlIjsKKyAgTE9HKFdBUk5JTkcpIDw8ICJXQVJOSU5HIGxvZyBtZXNzYWdlIjsKKyAgTE9HKEVSUk9SKSA8PCAiRVJST1IgbG9nIG1lc3NhZ2UiOworCisgIEVYUEVDVF9FUSgiSU5GTzogSU5GTyBsb2cgbWVzc2FnZVxuIiwgaW5mby5zdHIoKSk7CisgIEVYUEVDVF9FUSgiV0FSTklORzogV0FSTklORyBsb2cgbWVzc2FnZVxuIgorICAgICAgICAgICAgIkVSUk9SOiBFUlJPUiBsb2cgbWVzc2FnZVxuIiwgZXJyb3Iuc3RyKCkpOworICBMb2dnZXI6OlJlc2V0KCk7Cit9CisKK1RFU1QoRGVidWcsIExvZ0lmKSB7CisgIExvZ2dlcjo6UmVzZXQoKTsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGluZm87CisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBlcnJvcjsKKyAgTG9nZ2VyOjpTZXRTdHJlYW1zKCZpbmZvLCAmZXJyb3IpOworCisgIExPR19JRihJTkZPLCB0cnVlKSA8PCAiSU5GTyBsb2cgbWVzc2FnZSI7CisgIExPR19JRihJTkZPLCBmYWxzZSkgPDwgIklORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBMT0dfSUYoV0FSTklORywgdHJ1ZSkgPDwgIldBUk5JTkcgbG9nIG1lc3NhZ2UiOworICBMT0dfSUYoV0FSTklORywgZmFsc2UpIDw8ICJXQVJOSU5HIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgTE9HX0lGKEVSUk9SLCB0cnVlKSA8PCAiRVJST1IgbG9nIG1lc3NhZ2UiOworICBMT0dfSUYoRVJST1IsIGZhbHNlKSA8PCAiRVJST1IgbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBMT0dfSUYoRkFUQUwsIGZhbHNlKSA8PCAiRkFUQUwgbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworCisgIEVYUEVDVF9FUSgiSU5GTzogSU5GTyBsb2cgbWVzc2FnZVxuIiwgaW5mby5zdHIoKSk7CisgIEVYUEVDVF9FUSgiV0FSTklORzogV0FSTklORyBsb2cgbWVzc2FnZVxuIgorICAgICAgICAgICAgIkVSUk9SOiBFUlJPUiBsb2cgbWVzc2FnZVxuIiwgZXJyb3Iuc3RyKCkpOworICBMb2dnZXI6OlJlc2V0KCk7Cit9CisKK1RFU1QoRGVidWcsIFZsb2cpIHsKKyAgTG9nZ2VyOjpSZXNldCgpOworICBzdGQ6Om9zdHJpbmdzdHJlYW0gaW5mbzsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGVycm9yOworICBMb2dnZXI6OlNldFN0cmVhbXMoJmluZm8sICZlcnJvcik7CisKKyAgVkxPRygwKSA8PCAiVkxPRyAwIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HKDEpIDw8ICJWTE9HIDEgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisgIFZMT0coMikgPDwgIlZMT0cgMiBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKworICBFWFBFQ1RfRVEoIiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIiIsIGVycm9yLnN0cigpKTsKKworICBMb2dnZXI6OlNldFZlcmJvc2UoMSk7CisKKyAgVkxPRygwKSA8PCAiVkxPRyAwIElORk8gbG9nIG1lc3NhZ2UiOworICBWTE9HKDEpIDw8ICJWTE9HIDEgSU5GTyBsb2cgbWVzc2FnZSI7CisgIFZMT0coMikgPDwgIlZMT0cgMiBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKworICBFWFBFQ1RfRVEoIklORk86IFZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlXG4iCisgICAgICAgICAgICAiSU5GTzogVkxPRyAxIElORk8gbG9nIG1lc3NhZ2VcbiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIiIsIGVycm9yLnN0cigpKTsKKyAgTG9nZ2VyOjpSZXNldCgpOworfQorCitURVNUKERlYnVnLCBWbG9nSWYpIHsKKyAgTG9nZ2VyOjpSZXNldCgpOworICBzdGQ6Om9zdHJpbmdzdHJlYW0gaW5mbzsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGVycm9yOworICBMb2dnZXI6OlNldFN0cmVhbXMoJmluZm8sICZlcnJvcik7CisKKyAgVkxPR19JRigwLCB0cnVlKSA8PCAiVkxPRyAwIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HX0lGKDEsIHRydWUpIDw8ICJWTE9HIDEgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisgIFZMT0dfSUYoMiwgdHJ1ZSkgPDwgIlZMT0cgMiBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKworICBFWFBFQ1RfRVEoIiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIiIsIGVycm9yLnN0cigpKTsKKworICBMb2dnZXI6OlNldFZlcmJvc2UoMSk7CisKKyAgVkxPR19JRigwLCB0cnVlKSA8PCAiVkxPRyAwIElORk8gbG9nIG1lc3NhZ2UiOworICBWTE9HX0lGKDAsIGZhbHNlKSA8PCAiVkxPRyAwIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HX0lGKDEsIHRydWUpIDw8ICJWTE9HIDEgSU5GTyBsb2cgbWVzc2FnZSI7CisgIFZMT0dfSUYoMSwgZmFsc2UpIDw8ICJWTE9HIDEgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisgIFZMT0dfSUYoMiwgdHJ1ZSkgPDwgIlZMT0cgMiBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgVkxPR19JRigyLCBmYWxzZSkgPDwgIlZMT0cgMiBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKworICBFWFBFQ1RfRVEoIklORk86IFZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlXG4iCisgICAgICAgICAgICAiSU5GTzogVkxPRyAxIElORk8gbG9nIG1lc3NhZ2VcbiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIiIsIGVycm9yLnN0cigpKTsKKyAgTG9nZ2VyOjpSZXNldCgpOworfQorCitURVNUKERlYnVnRGVhdGhUZXN0LCBGYXRhbCkgeworICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CisgIExvZ2dlcjo6UmVzZXQoKTsKKyAgRVhQRUNUX0RFQVRIKExPRyhGQVRBTCkgPDwgIkZBVEFMIGxvZyBtZXNzYWdlIiwgIkZBVEFMOiBGQVRBTCBsb2cgbWVzc2FnZSIpOworICBFWFBFQ1RfREVBVEgoCisgICAgICBMT0dfSUYoRkFUQUwsIHRydWUpIDw8ICJGQVRBTCBsb2cgbWVzc2FnZSIsICJGQVRBTDogRkFUQUwgbG9nIG1lc3NhZ2UiKTsKK30KKworVEVTVChEZWJ1Z0RlYXRoVGVzdCwgQ2hlY2spIHsKKyAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOworICBMb2dnZXI6OlJlc2V0KCk7CisgIENIRUNLKDAgPT0gMCk7CisgIEVYUEVDVF9ERUFUSChDSEVDSygwID09IDEpLCAiRkFUQUw6IC4qOi4qOiAuKjogQ0hFQ0sgJzAgPT0gMScgZmFpbGVkIik7Cit9CisKK1RFU1QoRGVidWdEZWF0aFRlc3QsIE5vdFJlYWNoZWQpIHsKKyAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOworICBMb2dnZXI6OlJlc2V0KCk7CisgIEVYUEVDVF9ERUFUSChOT1RSRUFDSEVEKCksICJGQVRBTDogLio6Lio6IC4qOiBOT1RSRUFDSEVEXFwoXFwpIGhpdCIpOworfQorCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyLmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXIuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODM0OWQ3YwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyLmNjCkBAIC0wLDAgKzEsMzA3IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJkZWx0YV9lbmNvZGVyLmgiCisKKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorCitzdGF0aWMgY29uc3RleHByIHVpbnQzMl90IFJFTE9DQVRJT05fR1JPVVBFRF9CWV9JTkZPX0ZMQUcgPSAxOworc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBSRUxPQ0FUSU9OX0dST1VQRURfQllfT0ZGU0VUX0RFTFRBX0ZMQUcgPSAyOworc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBSRUxPQ0FUSU9OX0dST1VQRURfQllfQURERU5EX0ZMQUcgPSA0Oworc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkRfRkxBRyA9IDg7CisKK3N0YXRpYyBib29sIGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9pbmZvKHVpbnQ2NF90IGZsYWdzKSB7CisgIHJldHVybiAoZmxhZ3MgJiBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GT19GTEFHKSAhPSAwOworfQorCitzdGF0aWMgYm9vbCBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKHVpbnQ2NF90IGZsYWdzKSB7CisgIHJldHVybiAoZmxhZ3MgJiBSRUxPQ0FUSU9OX0dST1VQRURfQllfT0ZGU0VUX0RFTFRBX0ZMQUcpICE9IDA7Cit9CisKK3N0YXRpYyBib29sIGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9hZGRlbmQodWludDY0X3QgZmxhZ3MpIHsKKyAgcmV0dXJuIChmbGFncyAmIFJFTE9DQVRJT05fR1JPVVBFRF9CWV9BRERFTkRfRkxBRykgIT0gMDsKK30KKworc3RhdGljIGJvb2wgaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKHVpbnQ2NF90IGZsYWdzKSB7CisgIHJldHVybiAoZmxhZ3MgJiBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkRfRkxBRykgIT0gMDsKK30KKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworLy8gRW5jb2RlIHJlbG9jYXRpb25zIGludG8gYSBkZWx0YSBlbmNvZGVkIChwYWNrZWQpIHJlcHJlc2VudGF0aW9uLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPjo6RW5jb2RlKGNvbnN0IHN0ZDo6dmVjdG9yPEVsZlJlbGE+JiByZWxvY2F0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPEVsZkFkZHI+KiBwYWNrZWQpIHsKKyAgaWYgKHJlbG9jYXRpb25zLnNpemUoKSA9PSAwKQorICAgIHJldHVybjsKKworICAvLyBTdGFydCB3aXRoIHRoZSByZWxvY2F0aW9uIGNvdW50LCB0aGVuIGFwcGVuZCBncm91cHMKKyAgLy8gVE9ETyhkaW1pdHJ5KTogd2UgbWlnaHQgd2FudCB0byBtb3ZlIGl0IHRvIERUX0FORFJPSURfUkVMQ09VTlQgc2VjdGlvbgorICBwYWNrZWQtPnB1c2hfYmFjayhzdGF0aWNfY2FzdDxFbGZBZGRyPihyZWxvY2F0aW9ucy5zaXplKCkpKTsKKworICAvLyBsZXRzIHdyaXRlIHN0YXJ0aW5nIG9mZnNldCAob2Zmc2V0IG9mIHRoZSBmaXJzdCByZWxvYyAtIGZpcnN0IGRlbHRhKQorICBFbGZBZGRyIHN0YXJ0X29mZnNldCA9IHJlbG9jYXRpb25zLnNpemUoKSA+IDEgPworICAgICAgcmVsb2NhdGlvbnNbMF0ucl9vZmZzZXQgLSAocmVsb2NhdGlvbnNbMV0ucl9vZmZzZXQgLSByZWxvY2F0aW9uc1swXS5yX29mZnNldCkgOgorICAgICAgcmVsb2NhdGlvbnNbMF0ucl9vZmZzZXQ7CisKKyAgcGFja2VkLT5wdXNoX2JhY2soc3RhcnRfb2Zmc2V0KTsKKworICAvLyB0aGlzIG9uZSBpcyB1c2VkIHRvIGNhbGN1bGF0ZSBkZWx0YQorICBFbGZBZGRyIHByZXZpb3VzX2FkZGVuZCA9IDA7CisgIEVsZkFkZHIgcHJldmlvdXNfb2Zmc2V0ID0gc3RhcnRfb2Zmc2V0OworCisgIGZvciAoc2l6ZV90IGdyb3VwX3N0YXJ0ID0gMDsgZ3JvdXBfc3RhcnQgPCByZWxvY2F0aW9ucy5zaXplKCk7ICkgeworICAgIEVsZkFkZHIgZ3JvdXBfZmxhZ3MgPSAwOworICAgIEVsZkFkZHIgZ3JvdXBfb2Zmc2V0X2RlbHRhID0gMDsKKyAgICBFbGZBZGRyIGdyb3VwX2FkZGVuZCA9IDA7CisgICAgRWxmQWRkciBncm91cF9pbmZvID0gMDsKKworICAgIEVsZkFkZHIgZ3JvdXBfc2l6ZSA9IDA7CisKKyAgICBEZXRlY3RHcm91cChyZWxvY2F0aW9ucywgZ3JvdXBfc3RhcnQsIHByZXZpb3VzX29mZnNldCwgJmdyb3VwX3NpemUsICZncm91cF9mbGFncywKKyAgICAgICAgJmdyb3VwX29mZnNldF9kZWx0YSwgJmdyb3VwX2luZm8sICZncm91cF9hZGRlbmQpOworCisgICAgLy8gd3JpdGUgdGhlIGdyb3VwIGhlYWRlcgorICAgIHBhY2tlZC0+cHVzaF9iYWNrKGdyb3VwX3NpemUpOworICAgIHBhY2tlZC0+cHVzaF9iYWNrKGdyb3VwX2ZsYWdzKTsKKworICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKGdyb3VwX2ZsYWdzKSkgeworICAgICAgcGFja2VkLT5wdXNoX2JhY2soZ3JvdXBfb2Zmc2V0X2RlbHRhKTsKKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2luZm8oZ3JvdXBfZmxhZ3MpKSB7CisgICAgICBwYWNrZWQtPnB1c2hfYmFjayhncm91cF9pbmZvKTsKKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSAmJgorICAgICAgICBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKGdyb3VwX2ZsYWdzKSkgeworICAgICAgcGFja2VkLT5wdXNoX2JhY2soZ3JvdXBfYWRkZW5kIC0gcHJldmlvdXNfYWRkZW5kKTsKKyAgICAgIHByZXZpb3VzX2FkZGVuZCA9IGdyb3VwX2FkZGVuZDsKKyAgICB9CisKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRpY19jYXN0PHNpemVfdD4oZ3JvdXBfc2l6ZSk7ICsraSkgeworICAgICAgQ0hFQ0soKGdyb3VwX3N0YXJ0ICsgaSkgPCByZWxvY2F0aW9ucy5zaXplKCkpOworICAgICAgY29uc3QgRWxmUmVsYSogcmVsb2NhdGlvbiA9ICZyZWxvY2F0aW9uc1tncm91cF9zdGFydCArIGldOworCisgICAgICBpZiAoIWlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9vZmZzZXRfZGVsdGEoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICAgIHBhY2tlZC0+cHVzaF9iYWNrKHJlbG9jYXRpb24tPnJfb2Zmc2V0IC0gcHJldmlvdXNfb2Zmc2V0KTsKKyAgICAgIH0KKyAgICAgIHByZXZpb3VzX29mZnNldCA9IHJlbG9jYXRpb24tPnJfb2Zmc2V0OworCisgICAgICBpZiAoIWlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9pbmZvKGdyb3VwX2ZsYWdzKSkgeworICAgICAgICBwYWNrZWQtPnB1c2hfYmFjayhyZWxvY2F0aW9uLT5yX2luZm8pOworICAgICAgfQorCisgICAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSAmJgorICAgICAgICAgICFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKGdyb3VwX2ZsYWdzKSkgeworICAgICAgICBwYWNrZWQtPnB1c2hfYmFjayhyZWxvY2F0aW9uLT5yX2FkZGVuZCAtIHByZXZpb3VzX2FkZGVuZCk7CisgICAgICAgIHByZXZpb3VzX2FkZGVuZCA9IHJlbG9jYXRpb24tPnJfYWRkZW5kOworICAgICAgfQorICAgIH0KKworICAgIC8vIElmIHRoZSByZWxvY2F0aW9uIGdyb3VwIGRvZXMgbm90IGhhdmUgYW4gYWRkZW5kIC0gcmVzZXQgaXQgdG8gMAorICAgIC8vIHRvIHNpbXBsaWZ5IGFkZGVuZCBjb21wdXRhdGlvbiBmb3IgdGhlIGdyb3VwIGZvbGxvd2luZyB0aGlzIG9uZS4KKyAgICBpZiAoIWlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZChncm91cF9mbGFncykpIHsKKyAgICAgIHByZXZpb3VzX2FkZGVuZCA9IDA7CisgICAgfQorCisgICAgZ3JvdXBfc3RhcnQgKz0gZ3JvdXBfc2l6ZTsKKyAgfQorfQorCisvLyBEZWNvZGUgcmVsb2NhdGlvbnMgZnJvbSBhIGRlbHRhIGVuY29kZWQgKHBhY2tlZCkgcmVwcmVzZW50YXRpb24uCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgordm9pZCBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+OjpEZWNvZGUoY29uc3Qgc3RkOjp2ZWN0b3I8RWxmQWRkcj4mIHBhY2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPEVsZlJlbGE+KiByZWxvY2F0aW9ucykgeworICBpZiAocGFja2VkLnNpemUoKSA8IDUpIHsKKyAgICByZXR1cm47CisgIH0KKworICBzaXplX3QgbmR4ID0gMDsKKyAgRWxmQWRkciBjdXJyZW50X2NvdW50ID0gMDsKKyAgRWxmQWRkciB0b3RhbF9jb3VudCA9IHBhY2tlZFtuZHgrK107CisKKyAgRWxmQWRkciBvZmZzZXQgPSBwYWNrZWRbbmR4KytdOworICBFbGZBZGRyIGluZm8gPSAwOworICBFbGZBZGRyIGFkZGVuZCA9IDA7CisKKyAgd2hpbGUoY3VycmVudF9jb3VudCA8IHRvdGFsX2NvdW50KSB7CisgICAgLy8gcmVhZCBncm91cAorICAgIEVsZkFkZHIgZ3JvdXBfc2l6ZSA9IHBhY2tlZFtuZHgrK107CisgICAgRWxmQWRkciBncm91cF9mbGFncyA9IHBhY2tlZFtuZHgrK107CisgICAgRWxmQWRkciBncm91cF9vZmZzZXRfZGVsdGEgPSAwOworCisgICAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9vZmZzZXRfZGVsdGEoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICBncm91cF9vZmZzZXRfZGVsdGEgPSBwYWNrZWRbbmR4KytdOworICAgIH0KKworICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfaW5mbyhncm91cF9mbGFncykpIHsKKyAgICAgIGluZm8gPSBwYWNrZWRbbmR4KytdOworICAgIH0KKworICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoZ3JvdXBfZmxhZ3MpICYmCisgICAgICAgIGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9hZGRlbmQoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICBhZGRlbmQgKz0gcGFja2VkW25keCsrXTsKKyAgICB9CisKKyAgICAvLyBub3cgcmVhZCBub3QgZ3JvdXBlZCBpbmZvCisgICAgZm9yIChFbGZBZGRyIGkgPSAwOyBpPGdyb3VwX3NpemU7ICsraSkgeworICAgICAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9vZmZzZXRfZGVsdGEoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICAgIG9mZnNldCArPSBncm91cF9vZmZzZXRfZGVsdGE7CisgICAgICB9IGVsc2UgeworICAgICAgICBvZmZzZXQgKz0gcGFja2VkW25keCsrXTsKKyAgICAgIH0KKworICAgICAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfaW5mbyhncm91cF9mbGFncykpIHsKKyAgICAgICAgaW5mbyA9IHBhY2tlZFtuZHgrK107CisgICAgICB9CisKKyAgICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoZ3JvdXBfZmxhZ3MpICYmCisgICAgICAgICAgIWlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9hZGRlbmQoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICAgIGFkZGVuZCArPSBwYWNrZWRbbmR4KytdOworICAgICAgfQorCisgICAgICBFbGZSZWxhIHJlbG9jOworICAgICAgcmVsb2Mucl9vZmZzZXQgPSBvZmZzZXQ7CisgICAgICByZWxvYy5yX2luZm8gPSBpbmZvOworICAgICAgcmVsb2Mucl9hZGRlbmQgPSBpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoZ3JvdXBfZmxhZ3MpID8gYWRkZW5kIDogMDsKKyAgICAgIHJlbG9jYXRpb25zLT5wdXNoX2JhY2socmVsb2MpOworICAgIH0KKworICAgIGlmICghaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSkgeworICAgICAgYWRkZW5kID0gMDsKKyAgICB9CisKKyAgICBjdXJyZW50X2NvdW50ICs9IGdyb3VwX3NpemU7CisgIH0KK30KKworLy8gVGhpcyBmdW5jdGlvbiBkZXRlY3RzIGEgd2F5IHRvIGdyb3VwIHJlbG9jX29uZSBhbmQgcmVsb2NfdHdvLCBzZXRzIHVwIGdyb3VwX2ZsYWdzCisvLyBhbmQgaW5pdGlhbGl6ZXMgdmFsdWVzIGZvciBjb3JyZXNwb25kaW5nIGdyb3VwXyBmaWVsZHMuIEZvciBleGFtcGxlIGlmIHJlbG9jYXRpb25zCisvLyBjYW4gYmUgZ3JvdXBlZCBieSByX2luZm8gdGhlIGZ1bmN0aW9uIHdpbGwgc2V0IGdyb3VwX2luZm8gdmFyaWFibGUuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgordm9pZCBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+OjpEZXRlY3RHcm91cEZpZWxkcyhjb25zdCBFbGZSZWxhJiByZWxvY19vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVsZlJlbGEmIHJlbG9jX3R3bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciBjdXJyZW50X29mZnNldF9kZWx0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX29mZnNldF9kZWx0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfYWRkZW5kKSB7CisgICpncm91cF9mbGFncyA9IDA7CisKKyAgY29uc3QgRWxmQWRkciBvZmZzZXRfZGVsdGEgPSBzdGF0aWNfY2FzdDxFbGZBZGRyPihyZWxvY190d28ucl9vZmZzZXQpIC0KKyAgICAgIHN0YXRpY19jYXN0PEVsZkFkZHI+KHJlbG9jX29uZS5yX29mZnNldCk7CisKKyAgaWYgKG9mZnNldF9kZWx0YSA9PSBjdXJyZW50X29mZnNldF9kZWx0YSkgeworICAgICpncm91cF9mbGFncyB8PSBSRUxPQ0FUSU9OX0dST1VQRURfQllfT0ZGU0VUX0RFTFRBX0ZMQUc7CisgICAgaWYgKGdyb3VwX29mZnNldF9kZWx0YSAhPSBudWxscHRyKSB7CisgICAgICAqZ3JvdXBfb2Zmc2V0X2RlbHRhID0gY3VycmVudF9vZmZzZXRfZGVsdGE7CisgICAgfQorICB9CisKKyAgaWYgKHJlbG9jX29uZS5yX2luZm8gPT0gcmVsb2NfdHdvLnJfaW5mbykgeworICAgICpncm91cF9mbGFncyB8PSBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GT19GTEFHOworICAgIGlmIChncm91cF9pbmZvICE9IG51bGxwdHIpIHsKKyAgICAgICpncm91cF9pbmZvID0gcmVsb2Nfb25lLnJfaW5mbzsKKyAgICB9CisgIH0KKworICBpZiAocmVsb2Nfb25lLnJfYWRkZW5kICE9IDAgfHwgcmVsb2NfdHdvLnJfYWRkZW5kICE9IDApIHsKKyAgICAqZ3JvdXBfZmxhZ3MgfD0gUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUc7CisgICAgaWYgKHJlbG9jX29uZS5yX2FkZGVuZCA9PSByZWxvY190d28ucl9hZGRlbmQpIHsKKyAgICAgICpncm91cF9mbGFncyB8PSBSRUxPQ0FUSU9OX0dST1VQRURfQllfQURERU5EX0ZMQUc7CisgICAgICBpZiAoZ3JvdXBfYWRkZW5kICE9IG51bGxwdHIpIHsKKyAgICAgICAgKmdyb3VwX2FkZGVuZCA9IHJlbG9jX29uZS5yX2FkZGVuZDsKKyAgICAgIH0KKyAgICB9CisgIH0KK30KKworLy8gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGRldGVjdCBpZiB0aGVyZSBpcyBiZXR0ZXIgZ3JvdXAgYXZhaWxhYmxlCisvLyBkdXJpbmcgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPjo6RGV0ZWN0R3JvdXAgcHJvY2Vzc2luZy4KKy8vIEN1cnJlbnQgaW1wbGVtZW50YXRpb24gcHJlZmVycyBoYXZpbmcgZ3JvdXBzIHdpdGhvdXQgYWRkZW5kICg9PSB6ZXJvIGFkZGVuZCkKKy8vIHRvIGFueSBvdGhlciBncm91cHMgZmllbGQgd2l0aCB0aGUgcmF0aW8gMzoxLiBUaGlzIGlzIGJlY2F1c2UgYWRkZW5kIHRlbmRzCisvLyB0byBiZSBtb3JlIHVuZXZlbmx5IGRpc3RyaWJ1dGVkIHRoYW4gb3RoZXIgZmllbGRzLgorc3RhdGljIHVpbnQzMl90IGdyb3VwX3dlaWdodCh1aW50NjRfdCBmbGFncykgeworICB1aW50MzJfdCB3ZWlnaHQgPSAwOworICBpZiAoIWlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZChmbGFncykpIHsKKyAgICB3ZWlnaHQgKz0gMzsKKyAgfSBlbHNlIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKGZsYWdzKSkgeworICAgIHdlaWdodCArPSAxOworICB9CisKKyAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9vZmZzZXRfZGVsdGEoZmxhZ3MpKSB7CisgICAgd2VpZ2h0ICs9IDE7CisgIH0KKworICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2luZm8oZmxhZ3MpKSB7CisgICAgd2VpZ2h0ICs9IDE7CisgIH0KKworICByZXR1cm4gd2VpZ2h0OworfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgordm9pZCBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+OjpEZXRlY3RHcm91cChjb25zdCBzdGQ6OnZlY3RvcjxFbGZSZWxhPiYgcmVsb2NhdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgZ3JvdXBfc3RhcnRzX3dpdGgsIEVsZkFkZHIgcHJldmlvdXNfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfc2l6ZSwgRWxmQWRkciogZ3JvdXBfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9vZmZzZXRfZGVsdGEsIEVsZkFkZHIqIGdyb3VwX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9hZGRlbmQpIHsKKyAgQ0hFQ0soZ3JvdXBfc3RhcnRzX3dpdGggPCByZWxvY2F0aW9ucy5zaXplKCkpOworICBDSEVDSyhncm91cF9mbGFncyAhPSBudWxscHRyKTsKKworICBjb25zdCBFbGZSZWxhJiByZWxvY19vbmUgPSByZWxvY2F0aW9uc1tncm91cF9zdGFydHNfd2l0aCsrXTsKKyAgaWYgKGdyb3VwX3N0YXJ0c193aXRoID09IHJlbG9jYXRpb25zLnNpemUoKSkgeworICAgICpncm91cF9mbGFncyA9IHJlbG9jX29uZS5yX2FkZGVuZCA9PSAwID8gMCA6IFJFTE9DQVRJT05fR1JPVVBfSEFTX0FEREVORF9GTEFHOworICAgICpncm91cF9zaXplID0gMTsKKyAgICByZXR1cm47CisgIH0KKworICBjb25zdCBFbGZBZGRyIG9mZnNldF9kZWx0YSA9IHJlbG9jX29uZS5yX29mZnNldCAtIHByZXZpb3VzX29mZnNldDsKKworICAvLyBkZXRlY3QgZ3JvdXBfZmxhZ3MKKyAgRGV0ZWN0R3JvdXBGaWVsZHMocmVsb2Nfb25lLCByZWxvY2F0aW9uc1tncm91cF9zdGFydHNfd2l0aF0sIG9mZnNldF9kZWx0YSwgZ3JvdXBfZmxhZ3MsCisgICAgICBncm91cF9vZmZzZXRfZGVsdGEsIGdyb3VwX2luZm8sIGdyb3VwX2FkZGVuZCk7CisKKyAgaWYgKGdyb3VwX3N0YXJ0c193aXRoICsgMSA9PSByZWxvY2F0aW9ucy5zaXplKCkpIHsKKyAgICAqZ3JvdXBfc2l6ZSA9IDI7CisgICAgcmV0dXJuOworICB9CisKKyAgRWxmQWRkciBjbnQgPSAxOworICBmb3IgKHNpemVfdCBpID0gZ3JvdXBfc3RhcnRzX3dpdGg7IGkgPCByZWxvY2F0aW9ucy5zaXplKCkgLSAxOyArK2kpIHsKKyAgICBFbGZBZGRyIGNhbmRpZGF0ZV9mbGFnczsKKyAgICAvLyBjaGVjayBpZiBuZXh0IGdyb3VwIChyZWxvY19jdXJyZW50OyByZWxvY19uZXh0KSBoYXMgYmV0dGVyIGdyb3VwZWRfYnkgZmxhZ3MKKyAgICBEZXRlY3RHcm91cEZpZWxkcyhyZWxvY2F0aW9uc1tpXSwgcmVsb2NhdGlvbnNbaSsxXSwgb2Zmc2V0X2RlbHRhLCAmY2FuZGlkYXRlX2ZsYWdzLAorICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyKTsKKworICAgIGlmIChncm91cF93ZWlnaHQoKmdyb3VwX2ZsYWdzKSA8IGdyb3VwX3dlaWdodChjYW5kaWRhdGVfZmxhZ3MpKSB7CisgICAgICBicmVhazsKKyAgICB9CisgICAgY250Kys7CisKKyAgICBpZiAoY2FuZGlkYXRlX2ZsYWdzICE9ICpncm91cF9mbGFncykgeworICAgICAgYnJlYWs7CisgICAgfQorCisgICAgaWYgKGkgKyAxID09IHJlbG9jYXRpb25zLnNpemUoKSAtIDEpIHsgLy8gbGFzdCBvbmUKKyAgICAgIGNudCsrOworICAgIH0KKyAgfQorCisgIC8vIGlmIGFzIGEgcmVzdWx0IG9mIGNoZWNraW5nIGNhbmRpZGF0ZXMgd2UgZW5kZWQgdXAgd2l0aCBjbnQgPT0gMQorICAvLyByZXNldCBmbGFncyB0byB0aGUgZGVmYXVsdCBzdGF0ZQorICBpZiAoY250ID09IDEpIHsKKyAgICAqZ3JvdXBfZmxhZ3MgPSByZWxvY19vbmUucl9hZGRlbmQgPT0gMCA/IDAgOiBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkRfRkxBRzsKKyAgfQorCisgICpncm91cF9zaXplID0gY250OworfQorCit0ZW1wbGF0ZSBjbGFzcyBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEYzMl90cmFpdHM+OwordGVtcGxhdGUgY2xhc3MgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGNjRfdHJhaXRzPjsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVsdGFfZW5jb2Rlci5oIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NmMzMjRjCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXIuaApAQCAtMCwwICsxLDEzMiBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBEZWx0YSBlbmNvZGUgYW5kIGRlY29kZSBSRUwvUkVMQSBzZWN0aW9uIG9mIGVsZiBmaWxlLgorLy8KKy8vIFRoZSBlbmNvZGVkIGRhdGEgZm9ybWF0IGlzIHNlcXVlbmNlIG9mIGVsZW1lbnRzIG9mIEVsZkFkZHIgdHlwZSAodW5zaWduZWQgbG9uZyk6CisvLworLy8gWzAwXSByZWxvY2F0aW9uX2NvdW50IC0gdGhlIHRvdGFsIGNvdW50IG9mIHJlbG9jYXRpb25zCisvLyBbMDFdIGluaXRpYWwgcl9vZmZzZXQgLSB0aGlzIGlzIGluaXRpYWwgcl9vZmZzZXQgZm9yIHRoZQorLy8gICAgICAgICAgICAgICAgICAgICAgICAgcmVsb2NhdGlvbiB0YWJsZS4KKy8vIGZvbGxvd2VkIGJ5IGdyb3VwIHN0cnVjdHVyZXM6CisvLyBbMDJdIGdyb3VwCisvLyAuLi4KKy8vIFtubl0gZ3JvdXAKKworLy8gdGhlIGdlbmVyYWxpemVkIGZvcm1hdCBvZiB0aGUgZ3JvdXAgaXMgKCEgLSBhbHdheXMgcHJlc2VudCA/IC0gZGVwZW5kcyBvbiBncm91cF9mbGFncyk6CisvLyAtLS0tLS0tLS0tLS0tLQorLy8gISBncm91cF9zaXplCisvLyAhIGdyb3VwX2ZsYWdzCisvLyA/IGdyb3VwX3Jfb2Zmc2V0X2RlbHRhIHdoZW4gUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQSBmbGFnIGlzIHNldAorLy8gPyBncm91cF9yX2luZm8gd2hlbiBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GTyBmbGFnIGlzIHNldAorLy8gPyBncm91cF9yX2FkZGVuZF9ncm91cF9kZWx0YSB3aGVuIFJFTE9DQVRJT05fR1JPVVBfSEFTX0FEREVORCBhbmQgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0FEREVORAorLy8gICBmbGFnIGlzIHNldAorLy8KKy8vIFRoZSBncm91cCBkZXNjcmlwdGlvbiBpcyBmb2xsb3dlZCBieSBpbmRpdmlkdWFsIHJlbG9jYXRpb25zLgorLy8gcGxlYXNlIG5vdGUgdGhhdCB0aGVyZSBpcyBhIGNhc2Ugd2hlbiBpbmRpdmlkdWFsIHJlbG9jYXRpb24KKy8vIHNlY3Rpb24gY291bGQgYmUgZW1wdHkgLSB0aGF0IGlzIGlmIGV2ZXJ5IGZpZWxkIGVuZHMgdXAgZ3JvdXBlZC4KKy8vCisvLyBUaGUgZm9ybWF0IGZvciBpbmRpdmlkdWFsIHJlbG9jYXRpb25zIHNlY3Rpb24gaXM6CisvLyA/IHJfb2Zmc2V0X2RlbHRhIC0gd2hlbiBSRUxPQ0FUSU9OX0dST1VQRURfQllfT0ZGU0VUX0RFTFRBIGlzIG5vdCBzZXQKKy8vID8gcl9pbmZvIC0gd2hlbiBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GTyBmbGFnIGlzIG5vdCBzZXQKKy8vID8gcl9hZGRlbmRfZGVsdGEgLSBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkQgaXMgc2V0IGFuZCBSRUxPQ0FUSU9OX0dST1VQRURfQllfQURERU5EIGlzIG5vdCBzZXQKKy8vCisvLyBGb3IgZXhhbXBsZSBsZXRzIHBhY2sgdGhlIGZvbGxvd2luZyByZWxvY2F0aW9uczoKKy8vCisvLyBSZWxvY2F0aW9uIHNlY3Rpb24gJy5yZWxhLmR5bicgYXQgb2Zmc2V0IDB4YmY1OCBjb250YWlucyA5MzkgZW50cmllczoKKy8vICAgICBPZmZzZXQgICAgICAgICAgICAgSW5mbyAgICAgICAgICAgICBUeXBlICAgICAgICAgICAgICAgU3ltYm9sJ3MgVmFsdWUgIFN5bWJvbCdzIE5hbWUgKyBBZGRlbmQKKy8vICAgICAwMDAwMDAwMDAwMGEyMTc4ICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3N2E4CisvLyAgICAgMDAwMDAwMDAwMDBhMjE4MCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzdjYworLy8gICAgIDAwMDAwMDAwMDAwYTIxODggIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc3ZTAKKy8vICAgICAwMDAwMDAwMDAwMGEyMTkwICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3N2Y0CisvLyAgICAgMDAwMDAwMDAwMDBhMjE5OCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzgwNAorLy8gICAgIDAwMDAwMDAwMDAwYTIxYTAgIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4MTgKKy8vICAgICAwMDAwMDAwMDAwMGEyMWE4ICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3ODJjCisvLyAgICAgMDAwMDAwMDAwMDBhMjFiMCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzg0MAorLy8gICAgIDAwMDAwMDAwMDAwYTIxYjggIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4NTQKKy8vICAgICAwMDAwMDAwMDAwMGEyMWMwICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3ODY4CisvLyAgICAgMDAwMDAwMDAwMDBhMjFjOCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzg3YworLy8gICAgIDAwMDAwMDAwMDAwYTIxZDAgIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4OTAKKy8vICAgICAwMDAwMDAwMDAwMGEyMWQ4ICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3OGE0CisvLyAgICAgMDAwMDAwMDAwMDBhMjFlOCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzhiOAorLy8KKy8vIFRoZSBoZWFkZXIgaXMgZ29pbmcgdG8gYmUKKy8vIFswMF0gMTQgICAgICAgICAgICAgICAgIDwtIGNvdW50CisvLyBbMDFdIDB4MDAwMDAwMDAwMDBhMjE3MCA8LSBpbml0aWFsIHJlbG9jYXRpb24gKGZpcnN0IHJlbG9jYXRpb24gLSBkZWx0YSwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBkZWx0YSBpcyA4IGluIHRoaXMgY2FzZSkKKy8vIC0tIHN0YXJ0aW5nIHRoZSBmaXJzdCBhbmQgb25seSBncm91cAorLy8gWzAzXSAxNCAgICAgICAgICAgICAgICAgPC0gZ3JvdXAgc2l6ZQorLy8gWzAzXSAweGIgICAgICAgICAgICAgICAgPC0gZmxhZ3MgUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EIHwgUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQQorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GTworLy8gWzA0XSA4ICAgICAgICAgICAgICAgICAgPC0gb2Zmc2V0IGRlbHRhCisvLyBbMDVdIDB4NDAzICAgICAgICAgICAgICA8LSByX2luZm8KKy8vIC0tIGVuZCBvZiBncm91cCBkZWZpbml0aW9uLCBzdGFydGluZyBsaXN0IG9mIHJfYWRkZW5kIGRlbHRhcworLy8gWzA2XSAweDE3N2E4CisvLyBbMDddIDB4MjQgICAgICAgICAgICAgICA9IDE3N2NjIC0gMTc3YTgKKy8vIFswOF0gMHgxNCAgICAgICAgICAgICAgID0gMTc3ZTAgLSAxNzdjYworLy8gWzA5XSAweDE0ICAgICAgICAgICAgICAgPSAxNzdmNCAtIDE3N2UwCisvLyBbMTBdIDB4MTAgICAgICAgICAgICAgICA9IDE3ODA0IC0gMTc3ZjQKKy8vIFsxMV0gMHgxNCAgICAgICAgICAgICAgID0gMTc4MTggLSAxNzgwNAorLy8gWzEyXSAweDE0ICAgICAgICAgICAgICAgPSAxNzgyYyAtIDE3ODE4CisvLyBbMTNdIDB4MTQgICAgICAgICAgICAgICA9IDE3ODQwIC0gMTc4MmMKKy8vIFsxNF0gMHgxNCAgICAgICAgICAgICAgID0gMTc4NTQgLSAxNzg0MAorLy8gWzE1XSAweDE0ICAgICAgICAgICAgICAgPSAxNzg2OCAtIDE3ODU0CisvLyBbMTZdIDB4MTQgICAgICAgICAgICAgICA9IDE3ODdjIC0gMTc4NjgKKy8vIFsxN10gMHgxNCAgICAgICAgICAgICAgID0gMTc4OTAgLSAxNzg3YworLy8gWzE4XSAweDE0ICAgICAgICAgICAgICAgPSAxNzhhNCAtIDE3ODkwCisvLyBbMTldIDB4MTQgICAgICAgICAgICAgICA9IDE3OGI4IC0gMTc4YTQKKy8vIC0tIHRoZSBlbmQuCisKKy8vIFRPRE8gKGRpbWl0cnkpOiBjb25zaWRlciB1c2luZyByX2FkZGVuZF9ncm91cF9kZWx0YSBpbiB0aGUgd2F5IHdlIHVzZSBncm91cCBvZmZzZXQgZGVsdGEsIGl0IGNhbgorLy8gICAgICAgICAgICAgICAgIHNhdmUgdXMgbW9yZSBieXRlcy4uLgorCisvLyBUaGUgaW5wdXQgZW5kcyB3aGVuIHN1bShncm91cF9zaXplKSA9PSByZWxvY2F0aW9uX2NvdW50CisKKyNpZm5kZWYgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0RFTFRBX0VOQ09ERVJfSF8KKyNkZWZpbmUgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0RFTFRBX0VOQ09ERVJfSF8KKworI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgImVsZi5oIgorI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworLy8gQSBSZWxvY2F0aW9uRGVsdGFDb2RlYyBwYWNrcyB2ZWN0b3JzIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zIHdpdGgKKy8vIGFkZGVuZHMgaW50byBtb3JlIGNvbXBhY3QgZm9ybXMsIGFuZCB1bnBhY2tzIHRoZW0gdG8gcmVwcm9kdWNlIHRoZQorLy8gcHJlLXBhY2tlZCBkYXRhLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK2NsYXNzIFJlbG9jYXRpb25EZWx0YUNvZGVjIHsKKyBwdWJsaWM6CisgIHR5cGVkZWYgdHlwZW5hbWUgRUxGOjpBZGRyIEVsZkFkZHI7CisgIHR5cGVkZWYgdHlwZW5hbWUgRUxGOjpSZWxhIEVsZlJlbGE7CisKKyAgLy8gRW5jb2RlIHJlbG9jYXRpb25zIHdpdGggYWRkZW5kcyBpbnRvIGEgbW9yZSBjb21wYWN0IGZvcm0uCisgIC8vIHxyZWxvY2F0aW9uc3wgaXMgYSB2ZWN0b3Igb2YgcmVsYXRpdmUgcmVsb2NhdGlvbiB3aXRoIGFkZGVuZCBzdHJ1Y3RzLgorICAvLyB8cGFja2VkfCBpcyB0aGUgdmVjdG9yIG9mIHBhY2tlZCB3b3JkcyBpbnRvIHdoaWNoIHJlbG9jYXRpb25zIGFyZSBwYWNrZWQuCisgIHN0YXRpYyB2b2lkIEVuY29kZShjb25zdCBzdGQ6OnZlY3RvcjxFbGZSZWxhPiYgcmVsb2NhdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxFbGZBZGRyPiogcGFja2VkKTsKKworICAvLyBEZWNvZGUgcmVsYXRpdmUgcmVsb2NhdGlvbnMgd2l0aCBhZGRlbmRzIGZyb20gdGhlaXIgbW9yZSBjb21wYWN0IGZvcm0uCisgIC8vIHxwYWNrZWR8IGlzIHRoZSB2ZWN0b3Igb2YgcGFja2VkIHJlbG9jYXRpb25zLgorICAvLyB8cmVsb2NhdGlvbnN8IGlzIGEgdmVjdG9yIG9mIHVucGFja2VkIHJlbGF0aXZlIHJlbG9jYXRpb25zLgorICBzdGF0aWMgdm9pZCBEZWNvZGUoY29uc3Qgc3RkOjp2ZWN0b3I8RWxmQWRkcj4mIHBhY2tlZCwKKyAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPEVsZlJlbGE+KiByZWxvY2F0aW9ucyk7CisKKyBwcml2YXRlOgorICBzdGF0aWMgdm9pZCBEZXRlY3RHcm91cChjb25zdCBzdGQ6OnZlY3RvcjxFbGZSZWxhPiYgcmVsb2NhdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBncm91cF9zdGFydHNfd2l0aCwgRWxmQWRkciBwcmV2aW91c19vZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX3NpemUsIEVsZkFkZHIqIGdyb3VwX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9vZmZzZXRfZGVsdGEsIEVsZkFkZHIqIGdyb3VwX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX2FkZGVuZCk7CisKKyAgc3RhdGljIHZvaWQgRGV0ZWN0R3JvdXBGaWVsZHMoY29uc3QgRWxmUmVsYSYgcmVsb2Nfb25lLCBjb25zdCBFbGZSZWxhJiByZWxvY190d28sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIgY3VycmVudF9vZmZzZXRfZGVsdGEsIEVsZkFkZHIqIGdyb3VwX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9vZmZzZXRfZGVsdGEsIEVsZkFkZHIqIGdyb3VwX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX2FkZGVuZCk7Cit9OworCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKKworI2VuZGlmICAvLyBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfREVMVEFfRU5DT0RFUl9IXwpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXJfdW5pdHRlc3QuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVsdGFfZW5jb2Rlcl91bml0dGVzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNmQ5Yzk2Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXJfdW5pdHRlc3QuY2MKQEAgLTAsMCArMSwyMjMgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworI2luY2x1ZGUgImRlbHRhX2VuY29kZXIuaCIKKworI2luY2x1ZGUgPHZlY3Rvcj4KKyNpbmNsdWRlICJlbGYuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC5oIgorCituYW1lc3BhY2UgeworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK3ZvaWQgQWRkUmVsb2NhdGlvbih1aW50MzJfdCBhZGRyLAorICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZm8sCisgICAgICAgICAgICAgICAgICAgaW50MzJfdCBhZGRlbmQsCisgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8VD4qIHJlbG9jYXRpb25zKSB7CisgIFQgcmVsb2NhdGlvbjsKKyAgcmVsb2NhdGlvbi5yX29mZnNldCA9IGFkZHI7CisgIHJlbG9jYXRpb24ucl9pbmZvID0gaW5mbzsKKyAgcmVsb2NhdGlvbi5yX2FkZGVuZCA9IGFkZGVuZDsKKyAgcmVsb2NhdGlvbnMtPnB1c2hfYmFjayhyZWxvY2F0aW9uKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIFQ+Citib29sIENoZWNrUmVsb2NhdGlvbih1aW50MzJfdCBhZGRyLAorICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaW5mbywKKyAgICAgICAgICAgICAgICAgICAgIGludDMyX3QgYWRkZW5kLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgVCYgcmVsb2NhdGlvbikgeworICByZXR1cm4gcmVsb2NhdGlvbi5yX29mZnNldCA9PSBhZGRyICYmCisgICAgICByZWxvY2F0aW9uLnJfaW5mbyA9PSBpbmZvICYmCisgICAgICByZWxvY2F0aW9uLnJfYWRkZW5kID09IGFkZGVuZDsKK30KKworfSAgLy8gbmFtZXNwYWNlCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBlbmNvZGUoKSB7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6QWRkcj4gcGFja2VkOworCisgIFJlbG9jYXRpb25EZWx0YUNvZGVjPEVMRj4gY29kZWM7CisKKyAgY29kZWMuRW5jb2RlKHJlbG9jYXRpb25zLCAmcGFja2VkKTsKKworICBBU1NFUlRfRVEoMFUsIHBhY2tlZC5zaXplKCkpOworCisgIC8vIEluaXRpYWwgcmVsb2NhdGlvbi4KKyAgQWRkUmVsb2NhdGlvbigweGYwMGQwMDAwLCAxMVUsIDEwMDAwLCAmcmVsb2NhdGlvbnMpOworCisgIGNvZGVjLkVuY29kZShyZWxvY2F0aW9ucywgJnBhY2tlZCk7CisKKyAgLy8gc2l6ZSBvZiByZWxvYyB0YWJsZSwgc2l6ZSBvZiBncm91cCwgZmxhZ3MsIDMgZmllbGRzLCB6ZXJvCisgIEVYUEVDVF9FUSg3VSwgcGFja2VkLnNpemUoKSk7CisgIC8vIE9uZSBwYWlyIHByZXNlbnQuCisgIHNpemVfdCBuZHggPSAwOworICBFWFBFQ1RfRVEoMVUsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHhmMDBkMDAwMCwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgxVSwgcGFja2VkW25keCsrXSk7IC8vIGdyb3VwX3NpemUKKyAgRVhQRUNUX0VRKDhVLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgLy8gRGVsdGEgZnJvbSB0aGUgbmV1dHJhbCBlbGVtZW50IGlzIHplcm8KKyAgRVhQRUNUX0VRKDBVLCBwYWNrZWRbbmR4KytdKTsgLy8gb2Zmc2V0X2RlbHRhCisgIEVYUEVDVF9FUSgxMVUsIHBhY2tlZFtuZHgrK10pOyAvLyBpbmZvCisgIEVYUEVDVF9FUSgxMDAwMFUsIHBhY2tlZFtuZHgrK10pOyAvLyBhZGRlbmRfZGVsdGEKKworICAvLyBBZGQgYSBzZWNvbmQgcmVsb2NhdGlvbiwgNCBieXRlIG9mZnNldCBkZWx0YSwgMTIgYnl0ZSBhZGRlbmQgZGVsdGEuCisgIC8vIHNhbWUgaW5mbworICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDAwMDQsIDExVSwgMTAwMTIsICZyZWxvY2F0aW9ucyk7CisKKyAgcGFja2VkLmNsZWFyKCk7CisgIGNvZGVjLkVuY29kZShyZWxvY2F0aW9ucywgJnBhY2tlZCk7CisKKyAgbmR4ID0gMDsKKyAgRVhQRUNUX0VRKDhVLCBwYWNrZWQuc2l6ZSgpKTsKKworICBFWFBFQ1RfRVEoMlUsIHBhY2tlZFtuZHgrK10pOyAvLyByZWxvY3MgY291bnQKKyAgRVhQRUNUX0VRKDB4ZjAwY2ZmZmMsIHBhY2tlZFtuZHgrK10pOyAvLyBpbml0aWFsIG9mZnNldAorICBFWFBFQ1RfRVEoMlUsIHBhY2tlZFtuZHgrK10pOyAvLyBncm91cCBjb3VudAorICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgRVhQRUNUX0VRKDRVLCBwYWNrZWRbbmR4KytdKTsgLy8gZ3JvdXAgb2Zmc2V0IGRlbHRhCisgIEVYUEVDVF9FUSgxMVUsIHBhY2tlZFtuZHgrK10pOyAvLyBpbmZvCisKKyAgRVhQRUNUX0VRKDEwMDAwVSwgcGFja2VkW25keCsrXSk7IC8vIGFkZGVuZCBkZWx0YQorICBFWFBFQ1RfRVEoMTJVLCBwYWNrZWRbbmR4KytdKTsgLy8gYWRkZW5kIGRlbHRhCisKKyAgLy8gQWRkIGEgdGhpcmQgcmVsb2NhdGlvbiwgNCBieXRlIG9mZnNldCBkZWx0YSwgMTIgYnl0ZSBhZGRlbmQgZGVsdGEuCisgIC8vIGRpZmZlcmVudCBpbmZvCisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMDAwOCwgNDFVLCAxMDAyNCwgJnJlbG9jYXRpb25zKTsKKworICAvLyBBZGQgdGhyZWUgbW9yZSByZWxvY2F0aW9ucywgOCBieXRlIG9mZnNldCBkZWx0YXMsIC0yNCBieXRlIGFkZGVuZCBkZWx0YXMuCisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMDAxMCwgNDJVLCAxMDAwMCwgJnJlbG9jYXRpb25zKTsKKyAgQWRkUmVsb2NhdGlvbigweGYwMGQwMDE4LCA0MlUsIDk5NzYsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMDAyMCwgNDJVLCA5OTUyLCAmcmVsb2NhdGlvbnMpOworCisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMjAyOCwgMTA0MlUsIDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMjAzMCwgMzQ0MlUsIDAsICZyZWxvY2F0aW9ucyk7CisKKyAgcGFja2VkLmNsZWFyKCk7CisgIGNvZGVjLkVuY29kZShyZWxvY2F0aW9ucywgJnBhY2tlZCk7CisKKyAgbmR4ID0gMDsKKyAgRVhQRUNUX0VRKDI2VSwgcGFja2VkLnNpemUoKSk7CisgIC8vIFRvdGFsIG51bWJlciBvZiByZWxvY3MKKyAgRVhQRUNUX0VRKDhVLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4ZjAwY2ZmZmMsIHBhY2tlZFtuZHgrK10pOworICAvLyAyIGluIGZpcnN0IGdyb3VwCisgIEVYUEVDVF9FUSgyVSwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgxMVUsIHBhY2tlZFtuZHgrK10pOyAvL2ZsYWdzCisgIEVYUEVDVF9FUSg0VSwgcGFja2VkW25keCsrXSk7IC8vIGdyb3VwIG9mZnNldCBkZWx0YQorICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy8gaW5mbworCisgIC8vIEluaXRpYWwgcmVsb2NhdGlvbi4KKyAgRVhQRUNUX0VRKDEwMDAwVSwgcGFja2VkW25keCsrXSk7IC8vIGFkZGVuZCBkZWx0YQorICAvLyBUd28gcmVsb2NhdGlvbnMsIDQgYnl0ZSBvZmZzZXQgZGVsdGFzLCAxMiBieXRlIGFkZGVuZCBkZWx0YXMuCisgIEVYUEVDVF9FUSgxMlUsIHBhY2tlZFtuZHgrK10pOyAvLyBhZGRlbmQgZGVsdGEKKworICAvLyBzZWNvbmQgZ3JvdXAgaGFzIG9ubHkgb25lIHJlbG9jCisgIEVYUEVDVF9FUSgxVSwgcGFja2VkW25keCsrXSk7IC8vIGNvdW50CisgIEVYUEVDVF9FUSg4VSwgcGFja2VkW25keCsrXSk7IC8vIGZsYWdzCisKKyAgRVhQRUNUX0VRKDRVLCBwYWNrZWRbbmR4KytdKTsgLy8gb2Zmc2V0IGRlbHRhCisgIEVYUEVDVF9FUSg0MVUsIHBhY2tlZFtuZHgrK10pOyAvLyBpbmZvCisgIEVYUEVDVF9FUSgxMlUsIHBhY2tlZFtuZHgrK10pOyAvLyBhZGRlbmQgZGVsdGEKKworICAvLyBuZXh0IC0gMyByZWxvY3MgZ3JvdXBlZCBieSBpbmZvCisgIEVYUEVDVF9FUSgzVSwgcGFja2VkW25keCsrXSk7IC8vIGNvdW50CisgIEVYUEVDVF9FUSgxMVUsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworICBFWFBFQ1RfRVEoOFUsIHBhY2tlZFtuZHgrK10pOyAvLyBncm91cCBvZmZzZXQgZGVsdGEKKyAgRVhQRUNUX0VRKDQyVSwgcGFja2VkW25keCsrXSk7IC8vIGluZm8KKyAgLy8gVGhyZWUgcmVsb2NhdGlvbnMsIDggYnl0ZSBvZmZzZXQgZGVsdGFzLCAtMjQgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBFWFBFQ1RfRVEoc3RhdGljX2Nhc3Q8dHlwZW5hbWUgRUxGOjpBZGRyPigtMjQpLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHR5cGVuYW1lIEVMRjo6QWRkcj4oLTI0KSwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx0eXBlbmFtZSBFTEY6OkFkZHI+KC0yNCksIHBhY2tlZFtuZHgrK10pOworCisgIC8vIGFuZCBsYXN0IC0gMiByZWxvY2F0aW9ucyB3aXRob3V0IGFkZGVuZAorICBFWFBFQ1RfRVEoMlUsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMFUsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworICAvLyBvZmZzZXRfZGVsdGFzIGFuZCByX2luZm9zIGZvciBuZXh0IDIgcmVsb2NhdGlvbnMKKyAgRVhQRUNUX0VRKDB4MjAwOFUsIHBhY2tlZFtuZHgrK10pOyAvLyBvZmZzZXQgZGVsdGEKKyAgRVhQRUNUX0VRKDEwNDJVLCBwYWNrZWRbbmR4KytdKTsgLy8gcl9pbmZvCisgIEVYUEVDVF9FUSgweDhVLCBwYWNrZWRbbmR4KytdKTsgLy8gb2Zmc2V0IGRlbHRhCisgIEVYUEVDVF9FUSgzNDQyVSwgcGFja2VkW25keCsrXSk7IC8vIHJfaW5mbworCisgIEVYUEVDVF9FUShwYWNrZWQuc2l6ZSgpLCBuZHgpOworfQorCitURVNUKERlbHRhLCBFbmNvZGUzMikgeworICBlbmNvZGU8RUxGMzJfdHJhaXRzPigpOworfQorCitURVNUKERlbHRhLCBFbmNvZGU2NCkgeworICBlbmNvZGU8RUxGNjRfdHJhaXRzPigpOworfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgZGVjb2RlKCkgeworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OkFkZHI+IHBhY2tlZDsKKyAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiByZWxvY2F0aW9uczsKKworICBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+IGNvZGVjOworICBjb2RlYy5EZWNvZGUocGFja2VkLCAmcmVsb2NhdGlvbnMpOworCisgIEVYUEVDVF9FUSgwVSwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKworICAvLyBTaXggcGFpcnMuCisgIHBhY2tlZC5wdXNoX2JhY2soNlUpOyAvLyBjb3VudAorICBwYWNrZWQucHVzaF9iYWNrKDB4YzBkZGZmZmMpOyAvLyBiYXNlIG9mZnNldAorICBwYWNrZWQucHVzaF9iYWNrKDNVKTsgLy8gZ3JvdXAgY291bnQKKyAgcGFja2VkLnB1c2hfYmFjaygxMVUpOyAvLyBmbGFncworICBwYWNrZWQucHVzaF9iYWNrKDRVKTsgLy8gb2Zmc2V0IGRlbHRhCisgIHBhY2tlZC5wdXNoX2JhY2soMTFVKTsgLy8gaW5mbworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIHBhY2tlZC5wdXNoX2JhY2soMTAwMDBVKTsKKyAgLy8gVHdvIHJlbG9jYXRpb25zLCA0IGJ5dGUgb2Zmc2V0IGRlbHRhcywgMTIgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBwYWNrZWQucHVzaF9iYWNrKDEyVSk7IC8vIGFkZGVuZAorICBwYWNrZWQucHVzaF9iYWNrKDEyVSk7IC8vIGFkZGVuZAorCisgIC8vIFRocmVlIHJlbG9jYXRpb25zLCA4IGJ5dGUgb2Zmc2V0IGRlbHRhcywgLTI0IGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgcGFja2VkLnB1c2hfYmFjaygxVSk7IC8vIGdyb3VwIGNvdW50CisgIHBhY2tlZC5wdXNoX2JhY2soOVUpOyAvLyBmbGFncworICBwYWNrZWQucHVzaF9iYWNrKDExVSk7IC8vIGluZm8KKworICBwYWNrZWQucHVzaF9iYWNrKDhVKTsKKyAgcGFja2VkLnB1c2hfYmFjayhzdGF0aWNfY2FzdDx0eXBlbmFtZSBFTEY6OkFkZHI+KC0yNCkpOworICAvLyBuZXh0IGdyb3VwIHdpdGggMiByZWxvY3MKKyAgcGFja2VkLnB1c2hfYmFjaygyVSk7IC8vIGdyb3VwIGNvdW50CisgIHBhY2tlZC5wdXNoX2JhY2soMTFVKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjayg4VSk7IC8vIG9mZnNldAorICBwYWNrZWQucHVzaF9iYWNrKDQyVSk7IC8vIGluZm8KKworICBwYWNrZWQucHVzaF9iYWNrKHN0YXRpY19jYXN0PHR5cGVuYW1lIEVMRjo6QWRkcj4oLTI0KSk7IC8vIGFkZGVuZAorICBwYWNrZWQucHVzaF9iYWNrKHN0YXRpY19jYXN0PHR5cGVuYW1lIEVMRjo6QWRkcj4oLTI0KSk7IC8vIGFkZGVuZAorCisgIHJlbG9jYXRpb25zLmNsZWFyKCk7CisgIGNvZGVjLkRlY29kZShwYWNrZWQsICZyZWxvY2F0aW9ucyk7CisKKyAgRVhQRUNUX0VRKDZVLCByZWxvY2F0aW9ucy5zaXplKCkpOworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbigweGMwZGUwMDAwLCAxMVUsIDEwMDAwLCByZWxvY2F0aW9uc1swXSkpOworICAvLyBUd28gcmVsb2NhdGlvbnMsIDQgYnl0ZSBvZmZzZXQgZGVsdGFzLCAxMiBieXRlIGFkZGVuZCBkZWx0YXMuCisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbigweGMwZGUwMDA0LCAxMVUsIDEwMDEyLCByZWxvY2F0aW9uc1sxXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb24oMHhjMGRlMDAwOCwgMTFVLCAxMDAyNCwgcmVsb2NhdGlvbnNbMl0pKTsKKyAgLy8gVGhyZWUgcmVsb2NhdGlvbnMsIDggYnl0ZSBvZmZzZXQgZGVsdGFzLCAtMjQgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb24oMHhjMGRlMDAxMCwgMTFVLCAxMDAwMCwgcmVsb2NhdGlvbnNbM10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uKDB4YzBkZTAwMTgsIDQyVSwgOTk3NiwgcmVsb2NhdGlvbnNbNF0pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uKDB4YzBkZTAwMjAsIDQyVSwgOTk1MiwgcmVsb2NhdGlvbnNbNV0pKTsKK30KKworVEVTVChEZWx0YSwgRGVjb2RlMzIpIHsKKyAgZGVjb2RlPEVMRjMyX3RyYWl0cz4oKTsKK30KKworVEVTVChEZWx0YSwgRGVjb2RlNjQpIHsKKyAgZGVjb2RlPEVMRjY0X3RyYWl0cz4oKTsKK30KKworLy8gVE9ETyAoZGltaXRyeSk6IGFkZCBtb3JlIHRlc3RzIChmaXggYnkgMTkgSmFudWFyeSAyMDM4IDAzOjE0OjA3IFVUQykKKy8vIFRPRE8gKGRpbXRpcnkpOiAxLiBJbmNvcnJlY3QgcGFja2VkIGFycmF5IGZvciBkZWNvZGUKKy8vIFRPRE8gKGRpbXRpcnkpOiAyLiBUcnkgdG8gY2F0Y2ggc2l0dWF0aW9uIHdoZXJlIGl0IGlzIGxpa2VseSB0byBnZXQgc2VyaWVzIG9mIGdyb3VwcyB3aXRoIHNpemUgMQorCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfZmlsZS5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfZmlsZS5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOGRkZGU2Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2VsZl9maWxlLmNjCkBAIC0wLDAgKzEsODk3IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8vIEltcGxlbWVudGF0aW9uIG5vdGVzOgorLy8KKy8vIFdlIG5lZWQgdG8gcmVtb3ZlIGEgcGllY2UgZnJvbSB0aGUgRUxGIHNoYXJlZCBsaWJyYXJ5LiAgSG93ZXZlciwgd2UgYWxzbworLy8gd2FudCB0byBhdm9pZCBmaXhpbmcgRFdBUkYgY2ZpIGRhdGEgYW5kIHJlbGF0aXZlIHJlbG9jYXRpb24gYWRkcmVzc2VzLgorLy8gU28gYWZ0ZXIgcGFja2luZyB3ZSBzaGlmdCBvZmZldHMgYW5kIHN0YXJ0aW5nIGFkZHJlc3Mgb2YgdGhlIFJYIHNlZ21lbnQKKy8vIHdoaWxlIHByZXNlcnZpbmcgY29kZS9kYXRhIHZhZGRycyBsb2NhdGlvbi4KKy8vIFRoaXMgcmVxdWlyZXMgc29tZSBmaXh1cHMgZm9yIHN5bXRhYi9oYXNoL2dudV9oYXNoIGR5bmFtaWMgc2VjdGlvbiBhZGRyZXNzZXMuCisKKyNpbmNsdWRlICJlbGZfZmlsZS5oIgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8YWxnb3JpdGhtPgorI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKyNpbmNsdWRlICJsaWJlbGYuaCIKKyNpbmNsdWRlICJwYWNrZXIuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworLy8gT3V0LW9mLWJhbmQgZHluYW1pYyB0YWdzIHVzZWQgdG8gaW5kaWNhdGUgdGhlIG9mZnNldCBhbmQgc2l6ZSBvZiB0aGUKKy8vIGFuZHJvaWQgcGFja2VkIHJlbG9jYXRpb25zIHNlY3Rpb24uCitzdGF0aWMgY29uc3RleHByIGludDMyX3QgRFRfQU5EUk9JRF9SRUwgPSBEVF9MT09TICsgMjsKK3N0YXRpYyBjb25zdGV4cHIgaW50MzJfdCBEVF9BTkRST0lEX1JFTFNaID0gRFRfTE9PUyArIDM7CisKK3N0YXRpYyBjb25zdGV4cHIgaW50MzJfdCBEVF9BTkRST0lEX1JFTEEgPSBEVF9MT09TICsgNDsKK3N0YXRpYyBjb25zdGV4cHIgaW50MzJfdCBEVF9BTkRST0lEX1JFTEFTWiA9IERUX0xPT1MgKyA1OworCitzdGF0aWMgY29uc3RleHByIHVpbnQzMl90IFNIVF9BTkRST0lEX1JFTCA9IFNIVF9MT09TICsgMTsKK3N0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgU0hUX0FORFJPSURfUkVMQSA9IFNIVF9MT09TICsgMjsKKworLy8gQWxpZ25tZW50IHRvIHByZXNlcnZlLCBpbiBieXRlcy4gIFRoaXMgbXVzdCBiZSBhdCBsZWFzdCBhcyBsYXJnZSBhcyB0aGUKKy8vIGxhcmdlc3QgZF9hbGlnbiBhbmQgc2hfYWRkcmFsaWduIHZhbHVlcyBmb3VuZCBpbiB0aGUgbG9hZGVkIGZpbGUuCisvLyBPdXQgb2YgY2F1dGlvbiBmb3IgUkVMUk8gcGFnZSBhbGlnbm1lbnQsIHdlIHByZXNlcnZlIHRvIGEgY29tcGxldGUgdGFyZ2V0CisvLyBwYWdlLiAgU2VlIGh0dHA6Ly93d3cuYWlycy5jb20vYmxvZy9hcmNoaXZlcy8xODkuCitzdGF0aWMgY29uc3RleHByIHNpemVfdCBrUHJlc2VydmVBbGlnbm1lbnQgPSA0MDk2OworCisvLyBHZXQgc2VjdGlvbiBkYXRhLiAgQ2hlY2tzIHRoYXQgdGhlIHNlY3Rpb24gaGFzIGV4YWN0bHkgb25lIGRhdGEgZW50cnksCisvLyBzbyB0aGF0IHRoZSBzZWN0aW9uIHNpemUgYW5kIHRoZSBkYXRhIHNpemUgYXJlIHRoZSBzYW1lLiAgVHJ1ZSBpbgorLy8gcHJhY3RpY2UgZm9yIGFsbCBzZWN0aW9ucyB3ZSByZXNpemUgd2hlbiBwYWNraW5nIG9yIHVucGFja2luZy4gIERvbmUKKy8vIGJ5IGVuc3VyaW5nIHRoYXQgYSBjYWxsIHRvIGVsZl9nZXRkYXRhKHNlY3Rpb24sIGRhdGEpIHJldHVybnMgTlVMTCBhcworLy8gdGhlIG5leHQgZGF0YSBlbnRyeS4KK3N0YXRpYyBFbGZfRGF0YSogR2V0U2VjdGlvbkRhdGEoRWxmX1Njbiogc2VjdGlvbikgeworICBFbGZfRGF0YSogZGF0YSA9IGVsZl9nZXRkYXRhKHNlY3Rpb24sIE5VTEwpOworICBDSEVDSyhkYXRhICYmIGVsZl9nZXRkYXRhKHNlY3Rpb24sIGRhdGEpID09IE5VTEwpOworICByZXR1cm4gZGF0YTsKK30KKworLy8gUmV3cml0ZSBzZWN0aW9uIGRhdGEuICBBbGxvY2F0ZXMgbmV3IGRhdGEgYW5kIG1ha2VzIGl0IHRoZSBkYXRhIGVsZW1lbnQncworLy8gYnVmZmVyLiAgUmVsaWVzIG9uIHByb2dyYW0gZXhpdCB0byBmcmVlIGFsbG9jYXRlZCBkYXRhLgorc3RhdGljIHZvaWQgUmV3cml0ZVNlY3Rpb25EYXRhKEVsZl9TY24qIHNlY3Rpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9pZCogc2VjdGlvbl9kYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBzaXplKSB7CisgIEVsZl9EYXRhKiBkYXRhID0gR2V0U2VjdGlvbkRhdGEoc2VjdGlvbik7CisgIENIRUNLKHNpemUgPT0gZGF0YS0+ZF9zaXplKTsKKyAgdWludDhfdCogYXJlYSA9IG5ldyB1aW50OF90W3NpemVdOworICBtZW1jcHkoYXJlYSwgc2VjdGlvbl9kYXRhLCBzaXplKTsKKyAgZGF0YS0+ZF9idWYgPSBhcmVhOworfQorCisvLyBWZXJib3NlIEVMRiBoZWFkZXIgbG9nZ2luZy4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFaGRyPgorc3RhdGljIHZvaWQgVmVyYm9zZUxvZ0VsZkhlYWRlcihjb25zdCBFaGRyKiBlbGZfaGVhZGVyKSB7CisgIFZMT0coMSkgPDwgImVfcGhvZmYgPSAiIDw8IGVsZl9oZWFkZXItPmVfcGhvZmY7CisgIFZMT0coMSkgPDwgImVfc2hvZmYgPSAiIDw8IGVsZl9oZWFkZXItPmVfc2hvZmY7CisgIFZMT0coMSkgPDwgImVfZWhzaXplID0gIiA8PCBlbGZfaGVhZGVyLT5lX2Voc2l6ZTsKKyAgVkxPRygxKSA8PCAiZV9waGVudHNpemUgPSAiIDw8IGVsZl9oZWFkZXItPmVfcGhlbnRzaXplOworICBWTE9HKDEpIDw8ICJlX3BobnVtID0gIiA8PCBlbGZfaGVhZGVyLT5lX3BobnVtOworICBWTE9HKDEpIDw8ICJlX3NobnVtID0gIiA8PCBlbGZfaGVhZGVyLT5lX3NobnVtOworICBWTE9HKDEpIDw8ICJlX3Noc3RybmR4ID0gIiA8PCBlbGZfaGVhZGVyLT5lX3Noc3RybmR4OworfQorCisvLyBWZXJib3NlIEVMRiBwcm9ncmFtIGhlYWRlciBsb2dnaW5nLgordGVtcGxhdGUgPHR5cGVuYW1lIFBoZHI+CitzdGF0aWMgdm9pZCBWZXJib3NlTG9nUHJvZ3JhbUhlYWRlcihzaXplX3QgcHJvZ3JhbV9oZWFkZXJfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFBoZHIqIHByb2dyYW1faGVhZGVyKSB7CisgIHN0ZDo6c3RyaW5nIHR5cGU7CisgIHN3aXRjaCAocHJvZ3JhbV9oZWFkZXItPnBfdHlwZSkgeworICAgIGNhc2UgUFRfTlVMTDogdHlwZSA9ICJOVUxMIjsgYnJlYWs7CisgICAgY2FzZSBQVF9MT0FEOiB0eXBlID0gIkxPQUQiOyBicmVhazsKKyAgICBjYXNlIFBUX0RZTkFNSUM6IHR5cGUgPSAiRFlOQU1JQyI7IGJyZWFrOworICAgIGNhc2UgUFRfSU5URVJQOiB0eXBlID0gIklOVEVSUCI7IGJyZWFrOworICAgIGNhc2UgUFRfUEhEUjogdHlwZSA9ICJQSERSIjsgYnJlYWs7CisgICAgY2FzZSBQVF9HTlVfUkVMUk86IHR5cGUgPSAiR05VX1JFTFJPIjsgYnJlYWs7CisgICAgY2FzZSBQVF9HTlVfU1RBQ0s6IHR5cGUgPSAiR05VX1NUQUNLIjsgYnJlYWs7CisgICAgY2FzZSBQVF9BUk1fRVhJRFg6IHR5cGUgPSAiRVhJRFgiOyBicmVhazsKKyAgICBkZWZhdWx0OiB0eXBlID0gIihPVEhFUikiOyBicmVhazsKKyAgfQorICBWTE9HKDEpIDw8ICJwaGRyWyIgPDwgcHJvZ3JhbV9oZWFkZXJfaW5kZXggPDwgIl0gOiAiIDw8IHR5cGU7CisgIFZMT0coMSkgPDwgIiAgcF9vZmZzZXQgPSAiIDw8IHByb2dyYW1faGVhZGVyLT5wX29mZnNldDsKKyAgVkxPRygxKSA8PCAiICBwX3ZhZGRyID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF92YWRkcjsKKyAgVkxPRygxKSA8PCAiICBwX3BhZGRyID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF9wYWRkcjsKKyAgVkxPRygxKSA8PCAiICBwX2ZpbGVzeiA9ICIgPDwgcHJvZ3JhbV9oZWFkZXItPnBfZmlsZXN6OworICBWTE9HKDEpIDw8ICIgIHBfbWVtc3ogPSAiIDw8IHByb2dyYW1faGVhZGVyLT5wX21lbXN6OworICBWTE9HKDEpIDw8ICIgIHBfZmxhZ3MgPSAiIDw8IHByb2dyYW1faGVhZGVyLT5wX2ZsYWdzOworICBWTE9HKDEpIDw8ICIgIHBfYWxpZ24gPSAiIDw8IHByb2dyYW1faGVhZGVyLT5wX2FsaWduOworfQorCisvLyBWZXJib3NlIEVMRiBzZWN0aW9uIGhlYWRlciBsb2dnaW5nLgordGVtcGxhdGUgPHR5cGVuYW1lIFNoZHI+CitzdGF0aWMgdm9pZCBWZXJib3NlTG9nU2VjdGlvbkhlYWRlcihjb25zdCBzdGQ6OnN0cmluZyYgc2VjdGlvbl9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTaGRyKiBzZWN0aW9uX2hlYWRlcikgeworICBWTE9HKDEpIDw8ICJzZWN0aW9uICIgPDwgc2VjdGlvbl9uYW1lOworICBWTE9HKDEpIDw8ICIgIHNoX2FkZHIgPSAiIDw8IHNlY3Rpb25faGVhZGVyLT5zaF9hZGRyOworICBWTE9HKDEpIDw8ICIgIHNoX29mZnNldCA9ICIgPDwgc2VjdGlvbl9oZWFkZXItPnNoX29mZnNldDsKKyAgVkxPRygxKSA8PCAiICBzaF9zaXplID0gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfc2l6ZTsKKyAgVkxPRygxKSA8PCAiICBzaF9lbnRzaXplID0gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfZW50c2l6ZTsKKyAgVkxPRygxKSA8PCAiICBzaF9hZGRyYWxpZ24gPSAiIDw8IHNlY3Rpb25faGVhZGVyLT5zaF9hZGRyYWxpZ247Cit9CisKKy8vIFZlcmJvc2UgRUxGIHNlY3Rpb24gZGF0YSBsb2dnaW5nLgorc3RhdGljIHZvaWQgVmVyYm9zZUxvZ1NlY3Rpb25EYXRhKGNvbnN0IEVsZl9EYXRhKiBkYXRhKSB7CisgIFZMT0coMSkgPDwgIiAgZGF0YSI7CisgIFZMT0coMSkgPDwgIiAgICBkX2J1ZiA9ICIgPDwgZGF0YS0+ZF9idWY7CisgIFZMT0coMSkgPDwgIiAgICBkX29mZiA9ICIgPDwgZGF0YS0+ZF9vZmY7CisgIFZMT0coMSkgPDwgIiAgICBkX3NpemUgPSAiIDw8IGRhdGEtPmRfc2l6ZTsKKyAgVkxPRygxKSA8PCAiICAgIGRfYWxpZ24gPSAiIDw8IGRhdGEtPmRfYWxpZ247Cit9CisKKy8vIExvYWQgdGhlIGNvbXBsZXRlIEVMRiBmaWxlIGludG8gYSBtZW1vcnkgaW1hZ2UgaW4gbGliZWxmLCBhbmQgaWRlbnRpZnkKKy8vIHRoZSAucmVsLmR5biBvciAucmVsYS5keW4sIC5keW5hbWljLCBhbmQgLmFuZHJvaWQucmVsLmR5biBvcgorLy8gLmFuZHJvaWQucmVsYS5keW4gc2VjdGlvbnMuICBOby1vcCBpZiB0aGUgRUxGIGZpbGUgaGFzIGFscmVhZHkgYmVlbiBsb2FkZWQuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorYm9vbCBFbGZGaWxlPEVMRj46OkxvYWQoKSB7CisgIGlmIChlbGZfKQorICAgIHJldHVybiB0cnVlOworCisgIEVsZiogZWxmID0gZWxmX2JlZ2luKGZkXywgRUxGX0NfUkRXUiwgTlVMTCk7CisgIENIRUNLKGVsZik7CisKKyAgaWYgKGVsZl9raW5kKGVsZikgIT0gRUxGX0tfRUxGKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiRmlsZSBub3QgaW4gRUxGIGZvcm1hdCI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgYXV0byBlbGZfaGVhZGVyID0gRUxGOjpnZXRlaGRyKGVsZik7CisgIGlmICghZWxmX2hlYWRlcikgeworICAgIExPRyhFUlJPUikgPDwgIkZhaWxlZCB0byBsb2FkIEVMRiBoZWFkZXI6ICIgPDwgZWxmX2Vycm1zZyhlbGZfZXJybm8oKSk7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgaWYgKGVsZl9oZWFkZXItPmVfdHlwZSAhPSBFVF9EWU4pIHsKKyAgICBMT0coRVJST1IpIDw8ICJFTEYgZmlsZSBpcyBub3QgYSBzaGFyZWQgb2JqZWN0IjsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICAvLyBSZXF1aXJlIHRoYXQgb3VyIGVuZGlhbm5lc3MgbWF0Y2hlcyB0aGF0IG9mIHRoZSB0YXJnZXQsIGFuZCB0aGF0IGJvdGgKKyAgLy8gYXJlIGxpdHRsZS1lbmRpYW4uICBTYWZlIGZvciBhbGwgY3VycmVudCBidWlsZC90YXJnZXQgY29tYmluYXRpb25zLgorICBjb25zdCBpbnQgZW5kaWFuID0gZWxmX2hlYWRlci0+ZV9pZGVudFtFSV9EQVRBXTsKKyAgQ0hFQ0soZW5kaWFuID09IEVMRkRBVEEyTFNCKTsKKyAgQ0hFQ0soX19CWVRFX09SREVSX18gPT0gX19PUkRFUl9MSVRUTEVfRU5ESUFOX18pOworCisgIGNvbnN0IGludCBmaWxlX2NsYXNzID0gZWxmX2hlYWRlci0+ZV9pZGVudFtFSV9DTEFTU107CisgIFZMT0coMSkgPDwgImVuZGlhbiA9ICIgPDwgZW5kaWFuIDw8ICIsIGZpbGUgY2xhc3MgPSAiIDw8IGZpbGVfY2xhc3M7CisgIFZlcmJvc2VMb2dFbGZIZWFkZXIoZWxmX2hlYWRlcik7CisKKyAgYXV0byBlbGZfcHJvZ3JhbV9oZWFkZXIgPSBFTEY6OmdldHBoZHIoZWxmKTsKKyAgQ0hFQ0soZWxmX3Byb2dyYW1faGVhZGVyICE9IG51bGxwdHIpOworCisgIGNvbnN0IHR5cGVuYW1lIEVMRjo6UGhkciogZHluYW1pY19wcm9ncmFtX2hlYWRlciA9IE5VTEw7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZWxmX2hlYWRlci0+ZV9waG51bTsgKytpKSB7CisgICAgYXV0byBwcm9ncmFtX2hlYWRlciA9ICZlbGZfcHJvZ3JhbV9oZWFkZXJbaV07CisgICAgVmVyYm9zZUxvZ1Byb2dyYW1IZWFkZXIoaSwgcHJvZ3JhbV9oZWFkZXIpOworCisgICAgaWYgKHByb2dyYW1faGVhZGVyLT5wX3R5cGUgPT0gUFRfRFlOQU1JQykgeworICAgICAgQ0hFQ0soZHluYW1pY19wcm9ncmFtX2hlYWRlciA9PSBOVUxMKTsKKyAgICAgIGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgPSBwcm9ncmFtX2hlYWRlcjsKKyAgICB9CisgIH0KKyAgQ0hFQ0soZHluYW1pY19wcm9ncmFtX2hlYWRlciAhPSBudWxscHRyKTsKKworICBzaXplX3Qgc3RyaW5nX2luZGV4OworICBlbGZfZ2V0c2hkcnN0cm5keChlbGYsICZzdHJpbmdfaW5kZXgpOworCisgIC8vIE5vdGVzIG9mIHRoZSBkeW5hbWljIHJlbG9jYXRpb25zLCBwYWNrZWQgcmVsb2NhdGlvbnMsIGFuZCAuZHluYW1pYworICAvLyBzZWN0aW9ucy4gIEZvdW5kIHdoaWxlIGl0ZXJhdGluZyBzZWN0aW9ucywgYW5kIGxhdGVyIHN0b3JlZCBpbiBjbGFzcworICAvLyBhdHRyaWJ1dGVzLgorICBFbGZfU2NuKiBmb3VuZF9yZWxvY2F0aW9uc19zZWN0aW9uID0gbnVsbHB0cjsKKyAgRWxmX1NjbiogZm91bmRfZHluYW1pY19zZWN0aW9uID0gbnVsbHB0cjsKKworICAvLyBOb3RlcyBvZiByZWxvY2F0aW9uIHNlY3Rpb24gdHlwZXMgc2Vlbi4gIFdlIHJlcXVpcmUgb25lIG9yIHRoZSBvdGhlciBvZgorICAvLyB0aGVzZTsgYm90aCBpcyB1bnN1cHBvcnRlZC4KKyAgYm9vbCBoYXNfcmVsX3JlbG9jYXRpb25zID0gZmFsc2U7CisgIGJvb2wgaGFzX3JlbGFfcmVsb2NhdGlvbnMgPSBmYWxzZTsKKyAgYm9vbCBoYXNfYW5kcm9pZF9yZWxvY2F0aW9ucyA9IGZhbHNlOworCisgIEVsZl9TY24qIHNlY3Rpb24gPSBOVUxMOworICB3aGlsZSAoKHNlY3Rpb24gPSBlbGZfbmV4dHNjbihlbGYsIHNlY3Rpb24pKSAhPSBudWxscHRyKSB7CisgICAgYXV0byBzZWN0aW9uX2hlYWRlciA9IEVMRjo6Z2V0c2hkcihzZWN0aW9uKTsKKyAgICBzdGQ6OnN0cmluZyBuYW1lID0gZWxmX3N0cnB0cihlbGYsIHN0cmluZ19pbmRleCwgc2VjdGlvbl9oZWFkZXItPnNoX25hbWUpOworICAgIFZlcmJvc2VMb2dTZWN0aW9uSGVhZGVyKG5hbWUsIHNlY3Rpb25faGVhZGVyKTsKKworICAgIC8vIE5vdGUgcmVsb2NhdGlvbiBzZWN0aW9uIHR5cGVzLgorICAgIGlmIChzZWN0aW9uX2hlYWRlci0+c2hfdHlwZSA9PSBTSFRfUkVMIHx8IHNlY3Rpb25faGVhZGVyLT5zaF90eXBlID09IFNIVF9BTkRST0lEX1JFTCkgeworICAgICAgaGFzX3JlbF9yZWxvY2F0aW9ucyA9IHRydWU7CisgICAgfQorICAgIGlmIChzZWN0aW9uX2hlYWRlci0+c2hfdHlwZSA9PSBTSFRfUkVMQSB8fCBzZWN0aW9uX2hlYWRlci0+c2hfdHlwZSA9PSBTSFRfQU5EUk9JRF9SRUxBKSB7CisgICAgICBoYXNfcmVsYV9yZWxvY2F0aW9ucyA9IHRydWU7CisgICAgfQorCisgICAgLy8gTm90ZSBzcGVjaWFsIHNlY3Rpb25zIGFzIHdlIGVuY291bnRlciB0aGVtLgorICAgIGlmICgobmFtZSA9PSAiLnJlbC5keW4iIHx8IG5hbWUgPT0gIi5yZWxhLmR5biIpICYmCisgICAgICAgIHNlY3Rpb25faGVhZGVyLT5zaF9zaXplID4gMCkgeworICAgICAgZm91bmRfcmVsb2NhdGlvbnNfc2VjdGlvbiA9IHNlY3Rpb247CisKKyAgICAgIC8vIE5vdGUgaWYgcmVsb2NhdGlvbiBzZWN0aW9uIGlzIGFscmVhZHkgcGFja2VkCisgICAgICBoYXNfYW5kcm9pZF9yZWxvY2F0aW9ucyA9CisgICAgICAgICAgc2VjdGlvbl9oZWFkZXItPnNoX3R5cGUgPT0gU0hUX0FORFJPSURfUkVMIHx8CisgICAgICAgICAgc2VjdGlvbl9oZWFkZXItPnNoX3R5cGUgPT0gU0hUX0FORFJPSURfUkVMQTsKKyAgICB9CisKKyAgICBpZiAoc2VjdGlvbl9oZWFkZXItPnNoX29mZnNldCA9PSBkeW5hbWljX3Byb2dyYW1faGVhZGVyLT5wX29mZnNldCkgeworICAgICAgZm91bmRfZHluYW1pY19zZWN0aW9uID0gc2VjdGlvbjsKKyAgICB9CisKKyAgICAvLyBFbnN1cmUgd2UgcHJlc2VydmUgYWxpZ25tZW50LCByZXBlYXRlZCBsYXRlciBmb3IgdGhlIGRhdGEgYmxvY2socykuCisgICAgQ0hFQ0soc2VjdGlvbl9oZWFkZXItPnNoX2FkZHJhbGlnbiA8PSBrUHJlc2VydmVBbGlnbm1lbnQpOworCisgICAgRWxmX0RhdGEqIGRhdGEgPSBOVUxMOworICAgIHdoaWxlICgoZGF0YSA9IGVsZl9nZXRkYXRhKHNlY3Rpb24sIGRhdGEpKSAhPSBOVUxMKSB7CisgICAgICBDSEVDSyhkYXRhLT5kX2FsaWduIDw9IGtQcmVzZXJ2ZUFsaWdubWVudCk7CisgICAgICBWZXJib3NlTG9nU2VjdGlvbkRhdGEoZGF0YSk7CisgICAgfQorICB9CisKKyAgLy8gTG9hZGluZyBmYWlsZWQgaWYgd2UgZGlkIG5vdCBmaW5kIHRoZSByZXF1aXJlZCBzcGVjaWFsIHNlY3Rpb25zLgorICBpZiAoIWZvdW5kX3JlbG9jYXRpb25zX3NlY3Rpb24pIHsKKyAgICBMT0coRVJST1IpIDw8ICJNaXNzaW5nIG9yIGVtcHR5IC5yZWwuZHluIG9yIC5yZWxhLmR5biBzZWN0aW9uIjsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKyAgaWYgKCFmb3VuZF9keW5hbWljX3NlY3Rpb24pIHsKKyAgICBMT0coRVJST1IpIDw8ICJNaXNzaW5nIC5keW5hbWljIHNlY3Rpb24iOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIC8vIExvYWRpbmcgZmFpbGVkIGlmIHdlIGNvdWxkIG5vdCBpZGVudGlmeSB0aGUgcmVsb2NhdGlvbnMgdHlwZS4KKyAgaWYgKCFoYXNfcmVsX3JlbG9jYXRpb25zICYmICFoYXNfcmVsYV9yZWxvY2F0aW9ucykgeworICAgIExPRyhFUlJPUikgPDwgIk5vIHJlbG9jYXRpb25zIHNlY3Rpb25zIGZvdW5kIjsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKyAgaWYgKGhhc19yZWxfcmVsb2NhdGlvbnMgJiYgaGFzX3JlbGFfcmVsb2NhdGlvbnMpIHsKKyAgICBMT0coRVJST1IpIDw8ICJNdWx0aXBsZSByZWxvY2F0aW9ucyBzZWN0aW9ucyB3aXRoIGRpZmZlcmVudCB0eXBlcyBmb3VuZCwgIgorICAgICAgICAgICAgICAgPDwgIm5vdCBjdXJyZW50bHkgc3VwcG9ydGVkIjsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICBlbGZfID0gZWxmOworICByZWxvY2F0aW9uc19zZWN0aW9uXyA9IGZvdW5kX3JlbG9jYXRpb25zX3NlY3Rpb247CisgIGR5bmFtaWNfc2VjdGlvbl8gPSBmb3VuZF9keW5hbWljX3NlY3Rpb247CisgIHJlbG9jYXRpb25zX3R5cGVfID0gaGFzX3JlbF9yZWxvY2F0aW9ucyA/IFJFTCA6IFJFTEE7CisgIGhhc19hbmRyb2lkX3JlbG9jYXRpb25zXyA9IGhhc19hbmRyb2lkX3JlbG9jYXRpb25zOworICByZXR1cm4gdHJ1ZTsKK30KKworLy8gSGVscGVyIGZvciBSZXNpemVTZWN0aW9uKCkuICBBZGp1c3QgdGhlIG1haW4gRUxGIGhlYWRlciBmb3IgdGhlIGhvbGUuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgQWRqdXN0RWxmSGVhZGVyRm9ySG9sZSh0eXBlbmFtZSBFTEY6OkVoZHIqIGVsZl9oZWFkZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6T2ZmIGhvbGVfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzaXplX3QgaG9sZV9zaXplKSB7CisgIGlmIChlbGZfaGVhZGVyLT5lX3Bob2ZmID4gaG9sZV9zdGFydCkgeworICAgIGVsZl9oZWFkZXItPmVfcGhvZmYgKz0gaG9sZV9zaXplOworICAgIFZMT0coMSkgPDwgImVfcGhvZmYgYWRqdXN0ZWQgdG8gIiA8PCBlbGZfaGVhZGVyLT5lX3Bob2ZmOworICB9CisgIGlmIChlbGZfaGVhZGVyLT5lX3Nob2ZmID4gaG9sZV9zdGFydCkgeworICAgIGVsZl9oZWFkZXItPmVfc2hvZmYgKz0gaG9sZV9zaXplOworICAgIFZMT0coMSkgPDwgImVfc2hvZmYgYWRqdXN0ZWQgdG8gIiA8PCBlbGZfaGVhZGVyLT5lX3Nob2ZmOworICB9Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgQWRqdXN0IGFsbCBzZWN0aW9uIGhlYWRlcnMgZm9yIHRoZSBob2xlLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIEFkanVzdFNlY3Rpb25IZWFkZXJzRm9ySG9sZShFbGYqIGVsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzaXplX3QgaG9sZV9zaXplKSB7CisgIHNpemVfdCBzdHJpbmdfaW5kZXg7CisgIGVsZl9nZXRzaGRyc3RybmR4KGVsZiwgJnN0cmluZ19pbmRleCk7CisKKyAgRWxmX1Njbiogc2VjdGlvbiA9IE5VTEw7CisgIHdoaWxlICgoc2VjdGlvbiA9IGVsZl9uZXh0c2NuKGVsZiwgc2VjdGlvbikpICE9IE5VTEwpIHsKKyAgICBhdXRvIHNlY3Rpb25faGVhZGVyID0gRUxGOjpnZXRzaGRyKHNlY3Rpb24pOworICAgIHN0ZDo6c3RyaW5nIG5hbWUgPSBlbGZfc3RycHRyKGVsZiwgc3RyaW5nX2luZGV4LCBzZWN0aW9uX2hlYWRlci0+c2hfbmFtZSk7CisKKyAgICBpZiAoc2VjdGlvbl9oZWFkZXItPnNoX29mZnNldCA+IGhvbGVfc3RhcnQpIHsKKyAgICAgIHNlY3Rpb25faGVhZGVyLT5zaF9vZmZzZXQgKz0gaG9sZV9zaXplOworICAgICAgVkxPRygxKSA8PCAic2VjdGlvbiAiIDw8IG5hbWUKKyAgICAgICAgICAgICAgPDwgIiBzaF9vZmZzZXQgYWRqdXN0ZWQgdG8gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfb2Zmc2V0OworICAgIH0gZWxzZSB7CisgICAgICBzZWN0aW9uX2hlYWRlci0+c2hfYWRkciAtPSBob2xlX3NpemU7CisgICAgICBWTE9HKDEpIDw8ICJzZWN0aW9uICIgPDwgbmFtZQorICAgICAgICAgICAgICA8PCAiIHNoX2FkZHIgYWRqdXN0ZWQgdG8gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfYWRkcjsKKyAgICB9CisgIH0KK30KKworLy8gSGVscGVyIGZvciBSZXNpemVTZWN0aW9uKCkuICBBZGp1c3QgdGhlIG9mZnNldHMgb2YgYW55IHByb2dyYW0gaGVhZGVycworLy8gdGhhdCBoYXZlIG9mZnNldHMgY3VycmVudGx5IGJleW9uZCB0aGUgaG9sZSBzdGFydC4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBBZGp1c3RQcm9ncmFtSGVhZGVyT2Zmc2V0cyh0eXBlbmFtZSBFTEY6OlBoZHIqIHByb2dyYW1faGVhZGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBjb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6T2ZmIGhvbGVfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2l6ZV90IGhvbGVfc2l6ZSkgeworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICB0eXBlbmFtZSBFTEY6OlBoZHIqIHByb2dyYW1faGVhZGVyID0gJnByb2dyYW1faGVhZGVyc1tpXTsKKworICAgIGlmIChwcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQgPiBob2xlX3N0YXJ0KSB7CisgICAgICAvLyBUaGUgaG9sZSBzdGFydCBpcyBwYXN0IHRoaXMgc2VnbWVudCwgc28gYWRqdXN0IG9mZnNldC4KKyAgICAgIHByb2dyYW1faGVhZGVyLT5wX29mZnNldCArPSBob2xlX3NpemU7CisgICAgICBWTE9HKDEpIDw8ICJwaGRyWyIgPDwgaQorICAgICAgICAgICAgICA8PCAiXSBwX29mZnNldCBhZGp1c3RlZCB0byAiPDwgcHJvZ3JhbV9oZWFkZXItPnBfb2Zmc2V0OworICAgIH0gZWxzZSB7CisgICAgICBwcm9ncmFtX2hlYWRlci0+cF92YWRkciAtPSBob2xlX3NpemU7CisgICAgICBwcm9ncmFtX2hlYWRlci0+cF9wYWRkciAtPSBob2xlX3NpemU7CisgICAgICBWTE9HKDEpIDw8ICJwaGRyWyIgPDwgaQorICAgICAgICAgICAgICA8PCAiXSBwX3ZhZGRyIGFkanVzdGVkIHRvICI8PCBwcm9ncmFtX2hlYWRlci0+cF92YWRkcgorICAgICAgICAgICAgICA8PCAiOyBwX3BhZGRyIGFkanVzdGVkIHRvICI8PCBwcm9ncmFtX2hlYWRlci0+cF9wYWRkcjsKKyAgICB9CisgIH0KK30KKworLy8gSGVscGVyIGZvciBSZXNpemVTZWN0aW9uKCkuICBGaW5kIHRoZSBmaXJzdCBsb2FkYWJsZSBzZWdtZW50IGluIHRoZQorLy8gZmlsZS4gIFdlIGV4cGVjdCBpdCB0byBtYXAgZnJvbSBmaWxlIG9mZnNldCB6ZXJvLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB0eXBlbmFtZSBFTEY6OlBoZHIqIEZpbmRMb2FkU2VnbWVudEZvckhvbGUodHlwZW5hbWUgRUxGOjpQaGRyKiBwcm9ncmFtX2hlYWRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBjb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW5hbWUgRUxGOjpPZmYgaG9sZV9zdGFydCkgeworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICB0eXBlbmFtZSBFTEY6OlBoZHIqIHByb2dyYW1faGVhZGVyID0gJnByb2dyYW1faGVhZGVyc1tpXTsKKworICAgIGlmIChwcm9ncmFtX2hlYWRlci0+cF90eXBlID09IFBUX0xPQUQgJiYKKyAgICAgICAgcHJvZ3JhbV9oZWFkZXItPnBfb2Zmc2V0IDw9IGhvbGVfc3RhcnQgJiYKKyAgICAgICAgKHByb2dyYW1faGVhZGVyLT5wX29mZnNldCArIHByb2dyYW1faGVhZGVyLT5wX2ZpbGVzeikgPj0gaG9sZV9zdGFydCApIHsKKyAgICAgIHJldHVybiBwcm9ncmFtX2hlYWRlcjsKKyAgICB9CisgIH0KKyAgTE9HKEZBVEFMKSA8PCAiQ2Fubm90IGxvY2F0ZSBhIExPQUQgc2VnbWVudCB3aXRoIGhvbGVfc3RhcnQ9MHgiIDw8IHN0ZDo6aGV4IDw8IGhvbGVfc3RhcnQ7CisgIE5PVFJFQUNIRUQoKTsKKworICByZXR1cm4gbnVsbHB0cjsKK30KKworLy8gSGVscGVyIGZvciBSZXNpemVTZWN0aW9uKCkuICBSZXdyaXRlIHByb2dyYW0gaGVhZGVycy4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBSZXdyaXRlUHJvZ3JhbUhlYWRlcnNGb3JIb2xlKEVsZiogZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2l6ZV90IGhvbGVfc2l6ZSkgeworICBjb25zdCB0eXBlbmFtZSBFTEY6OkVoZHIqIGVsZl9oZWFkZXIgPSBFTEY6OmdldGVoZHIoZWxmKTsKKyAgQ0hFQ0soZWxmX2hlYWRlcik7CisKKyAgdHlwZW5hbWUgRUxGOjpQaGRyKiBlbGZfcHJvZ3JhbV9oZWFkZXIgPSBFTEY6OmdldHBoZHIoZWxmKTsKKyAgQ0hFQ0soZWxmX3Byb2dyYW1faGVhZGVyKTsKKworICBjb25zdCBzaXplX3QgcHJvZ3JhbV9oZWFkZXJfY291bnQgPSBlbGZfaGVhZGVyLT5lX3BobnVtOworCisgIC8vIExvY2F0ZSB0aGUgc2VnbWVudCB0aGF0IHdlIGNhbiBvdmVyd3JpdGUgdG8gZm9ybSB0aGUgbmV3IExPQUQgZW50cnksCisgIC8vIGFuZCB0aGUgc2VnbWVudCB0aGF0IHdlIGFyZSBnb2luZyB0byBzcGxpdCBpbnRvIHR3byBwYXJ0cy4KKyAgdHlwZW5hbWUgRUxGOjpQaGRyKiB0YXJnZXRfbG9hZF9oZWFkZXIgPQorICAgICAgRmluZExvYWRTZWdtZW50Rm9ySG9sZTxFTEY+KGVsZl9wcm9ncmFtX2hlYWRlciwgcHJvZ3JhbV9oZWFkZXJfY291bnQsIGhvbGVfc3RhcnQpOworCisgIFZMT0coMSkgPDwgInBoZHJbIiA8PCB0YXJnZXRfbG9hZF9oZWFkZXIgLSBlbGZfcHJvZ3JhbV9oZWFkZXIgPDwgIl0gYWRqdXN0IjsKKyAgLy8gQWRqdXN0IFBUX0xPQUQgcHJvZ3JhbSBoZWFkZXIgbWVtc3ogYW5kIGZpbGVzegorICB0YXJnZXRfbG9hZF9oZWFkZXItPnBfZmlsZXN6ICs9IGhvbGVfc2l6ZTsKKyAgdGFyZ2V0X2xvYWRfaGVhZGVyLT5wX21lbXN6ICs9IGhvbGVfc2l6ZTsKKworICAvLyBBZGp1c3QgdGhlIG9mZnNldHMgYW5kIHBfdmFkZHJzCisgIEFkanVzdFByb2dyYW1IZWFkZXJPZmZzZXRzPEVMRj4oZWxmX3Byb2dyYW1faGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2dyYW1faGVhZGVyX2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhvbGVfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9sZV9zaXplKTsKK30KKworLy8gSGVscGVyIGZvciBSZXNpemVTZWN0aW9uKCkuICBMb2NhdGUgYW5kIHJldHVybiB0aGUgZHluYW1pYyBzZWN0aW9uLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyBFbGZfU2NuKiBHZXREeW5hbWljU2VjdGlvbihFbGYqIGVsZikgeworICBjb25zdCB0eXBlbmFtZSBFTEY6OkVoZHIqIGVsZl9oZWFkZXIgPSBFTEY6OmdldGVoZHIoZWxmKTsKKyAgQ0hFQ0soZWxmX2hlYWRlcik7CisKKyAgY29uc3QgdHlwZW5hbWUgRUxGOjpQaGRyKiBlbGZfcHJvZ3JhbV9oZWFkZXIgPSBFTEY6OmdldHBoZHIoZWxmKTsKKyAgQ0hFQ0soZWxmX3Byb2dyYW1faGVhZGVyKTsKKworICAvLyBGaW5kIHRoZSBwcm9ncmFtIGhlYWRlciB0aGF0IGRlc2NyaWJlcyB0aGUgZHluYW1pYyBzZWN0aW9uLgorICBjb25zdCB0eXBlbmFtZSBFTEY6OlBoZHIqIGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgPSBOVUxMOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGVsZl9oZWFkZXItPmVfcGhudW07ICsraSkgeworICAgIGNvbnN0IHR5cGVuYW1lIEVMRjo6UGhkciogcHJvZ3JhbV9oZWFkZXIgPSAmZWxmX3Byb2dyYW1faGVhZGVyW2ldOworCisgICAgaWYgKHByb2dyYW1faGVhZGVyLT5wX3R5cGUgPT0gUFRfRFlOQU1JQykgeworICAgICAgZHluYW1pY19wcm9ncmFtX2hlYWRlciA9IHByb2dyYW1faGVhZGVyOworICAgIH0KKyAgfQorICBDSEVDSyhkeW5hbWljX3Byb2dyYW1faGVhZGVyKTsKKworICAvLyBOb3cgZmluZCB0aGUgc2VjdGlvbiB3aXRoIHRoZSBzYW1lIG9mZnNldCBhcyB0aGlzIHByb2dyYW0gaGVhZGVyLgorICBFbGZfU2NuKiBkeW5hbWljX3NlY3Rpb24gPSBOVUxMOworICBFbGZfU2NuKiBzZWN0aW9uID0gTlVMTDsKKyAgd2hpbGUgKChzZWN0aW9uID0gZWxmX25leHRzY24oZWxmLCBzZWN0aW9uKSkgIT0gTlVMTCkgeworICAgIHR5cGVuYW1lIEVMRjo6U2hkciogc2VjdGlvbl9oZWFkZXIgPSBFTEY6OmdldHNoZHIoc2VjdGlvbik7CisKKyAgICBpZiAoc2VjdGlvbl9oZWFkZXItPnNoX29mZnNldCA9PSBkeW5hbWljX3Byb2dyYW1faGVhZGVyLT5wX29mZnNldCkgeworICAgICAgZHluYW1pY19zZWN0aW9uID0gc2VjdGlvbjsKKyAgICB9CisgIH0KKyAgQ0hFQ0soZHluYW1pY19zZWN0aW9uICE9IE5VTEwpOworCisgIHJldHVybiBkeW5hbWljX3NlY3Rpb247Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgQWRqdXN0IHRoZSAuZHluYW1pYyBzZWN0aW9uIGZvciB0aGUgaG9sZS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Cit2b2lkIEVsZkZpbGU8RUxGPjo6QWRqdXN0RHluYW1pY1NlY3Rpb25Gb3JIb2xlKEVsZl9TY24qIGR5bmFtaWNfc2VjdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW5hbWUgRUxGOjpPZmYgaG9sZV9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NpemVfdCBob2xlX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbG9jYXRpb25zX3R5cGVfdCByZWxvY2F0aW9uc190eXBlKSB7CisgIENIRUNLKHJlbG9jYXRpb25zX3R5cGUgIT0gTk9ORSk7CisgIEVsZl9EYXRhKiBkYXRhID0gR2V0U2VjdGlvbkRhdGEoZHluYW1pY19zZWN0aW9uKTsKKworICBhdXRvIGR5bmFtaWNfYmFzZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dHlwZW5hbWUgRUxGOjpEeW4qPihkYXRhLT5kX2J1Zik7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6RHluPiBkeW5hbWljcygKKyAgICAgIGR5bmFtaWNfYmFzZSwKKyAgICAgIGR5bmFtaWNfYmFzZSArIGRhdGEtPmRfc2l6ZSAvIHNpemVvZihkeW5hbWljc1swXSkpOworCisgIGlmIChob2xlX3NpemUgPiAwKSB7IC8vIGV4cGFuZGluZworICAgIGhvbGVfc3RhcnQgKz0gaG9sZV9zaXplOworICB9CisKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkeW5hbWljcy5zaXplKCk7ICsraSkgeworICAgIHR5cGVuYW1lIEVMRjo6RHluKiBkeW5hbWljID0gJmR5bmFtaWNzW2ldOworICAgIGNvbnN0IHR5cGVuYW1lIEVMRjo6U3dvcmQgdGFnID0gZHluYW1pYy0+ZF90YWc7CisKKyAgICAvLyBBbnkgdGFncyB0aGF0IGhvbGQgb2Zmc2V0cyBhcmUgYWRqdXN0bWVudCBjYW5kaWRhdGVzLgorICAgIGNvbnN0IGJvb2wgaXNfYWRqdXN0YWJsZSA9ICh0YWcgPT0gRFRfUExUR09UIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9IQVNIIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9HTlVfSEFTSCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfU1RSVEFCIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9TWU1UQUIgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX1JFTEEgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX0lOSVQgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX0ZJTkkgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX1JFTCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfSk1QUkVMIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9JTklUX0FSUkFZIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9GSU5JX0FSUkFZIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9WRVJTWU0gfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX1ZFUk5FRUQgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX1ZFUkRFRiB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfQU5EUk9JRF9SRUx8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfQU5EUk9JRF9SRUxBKTsKKworICAgIGlmIChpc19hZGp1c3RhYmxlICYmIGR5bmFtaWMtPmRfdW4uZF9wdHIgPD0gaG9sZV9zdGFydCkgeworICAgICAgZHluYW1pYy0+ZF91bi5kX3B0ciAtPSBob2xlX3NpemU7CisgICAgICBWTE9HKDEpIDw8ICJkeW5hbWljWyIgPDwgaSA8PCAiXSAiIDw8IGR5bmFtaWMtPmRfdGFnCisgICAgICAgICAgICAgIDw8ICIgZF9wdHIgYWRqdXN0ZWQgdG8gIiA8PCBkeW5hbWljLT5kX3VuLmRfcHRyOworICAgIH0KKworICAgIC8vIERUX1JFTFNaIG9yIERUX1JFTEFTWiBpbmRpY2F0ZSB0aGUgb3ZlcmFsbCBzaXplIG9mIHJlbG9jYXRpb25zLgorICAgIC8vIE9ubHkgb25lIHdpbGwgYmUgcHJlc2VudC4gIEFkanVzdCBieSBob2xlIHNpemUuCisgICAgaWYgKHRhZyA9PSBEVF9SRUxTWiB8fCB0YWcgPT0gRFRfUkVMQVNaIHx8IHRhZyA9PSBEVF9BTkRST0lEX1JFTFNaIHx8IHRhZyA9PSBEVF9BTkRST0lEX1JFTEFTWikgeworICAgICAgZHluYW1pYy0+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+KHJlbG9jc19zbywgcGFja2VkX3JlbG9jc19zbyk7CisgICAgfSBlbHNlIHsKKyAgICAgIFByb2Nlc3NVbnBhY2s8RUxGNjRfdHJhaXRzPihyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworICAgIH0KKyAgfQorfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgUHJvY2Vzc1BhY2soRklMRSogcmVsb2NzX3NvLCBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvKSB7CisgIHJlbG9jYXRpb25fcGFja2VyOjpFbGZGaWxlPEVMRj4gZWxmX2ZpbGUoZmlsZW5vKHJlbG9jc19zbykpOworCisgIC8vIEVuc3VyZSB1bnBhY2tpbmcgZmFpbHMgKG5vdCBwYWNrZWQpLgorICBFWFBFQ1RfRkFMU0UoZWxmX2ZpbGUuVW5wYWNrUmVsb2NhdGlvbnMoKSk7CisKKyAgLy8gUGFjayByZWxvY2F0aW9ucywgYW5kIGNoZWNrIGZpbGVzIGFyZSBub3cgaWRlbnRpY2FsLgorICBFWFBFQ1RfVFJVRShlbGZfZmlsZS5QYWNrUmVsb2NhdGlvbnMoKSk7CisgIENoZWNrRmlsZUNvbnRlbnRzRXF1YWwocmVsb2NzX3NvLCBwYWNrZWRfcmVsb2NzX3NvKTsKKworICBDbG9zZVJlbG9jc1Rlc3RGaWxlcyhyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworfQorCitzdGF0aWMgdm9pZCBSdW5QYWNrUmVsb2NhdGlvbnNUZXN0Rm9yKGNvbnN0IHN0ZDo6c3RyaW5nJiBhcmNoKSB7CisgIEFTU0VSVF9ORShzdGF0aWNfY2FzdDx1aW50MzJfdD4oRVZfTk9ORSksIGVsZl92ZXJzaW9uKEVWX0NVUlJFTlQpKTsKKworICBGSUxFKiByZWxvY3Nfc28gPSBOVUxMOworICBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvID0gTlVMTDsKKyAgT3BlblJlbG9jc1Rlc3RGaWxlcyhhcmNoLCAmcmVsb2NzX3NvLCAmcGFja2VkX3JlbG9jc19zbyk7CisKKyAgaWYgKHJlbG9jc19zbyAhPSBOVUxMICYmIHBhY2tlZF9yZWxvY3Nfc28gIT0gTlVMTCkgeworICAgIC8vIGxldHMgZGV0ZWN0IGVsZiBjbGFzcworICAgIEFTU0VSVF9FUSgwLCBmc2VlayhwYWNrZWRfcmVsb2NzX3NvLCBFSV9DTEFTUywgU0VFS19TRVQpKQorICAgICAgICA8PCAiSW52YWxpZCBmaWxlIGxlbmd0aDogIiA8PCBzdHJlcnJvcihlcnJubyk7CisgICAgdWludDhfdCBlbGZfY2xhc3MgPSAwOworICAgIEFTU0VSVF9FUSgxVSwgZnJlYWQoJmVsZl9jbGFzcywgMSwgMSwgcGFja2VkX3JlbG9jc19zbykpOworICAgIGZzZWVrKHBhY2tlZF9yZWxvY3Nfc28sIDAsIFNFRUtfU0VUKTsKKyAgICBpZiAoZWxmX2NsYXNzID09IEVMRkNMQVNTMzIpIHsKKyAgICAgIFByb2Nlc3NQYWNrPEVMRjMyX3RyYWl0cz4ocmVsb2NzX3NvLCBwYWNrZWRfcmVsb2NzX3NvKTsKKyAgICB9IGVsc2UgeworICAgICAgUHJvY2Vzc1BhY2s8RUxGNjRfdHJhaXRzPihyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworICAgIH0KKyAgfQorfQorCit9ICAvLyBuYW1lc3BhY2UKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworVEVTVChFbGZGaWxlLCBQYWNrUmVsb2NhdGlvbnNBcm0zMikgeworICBSdW5QYWNrUmVsb2NhdGlvbnNUZXN0Rm9yKCJhcm0zMiIpOworfQorCitURVNUKEVsZkZpbGUsIFBhY2tSZWxvY2F0aW9uc0FybTY0KSB7CisgIFJ1blBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTY0Iik7Cit9CisKK1RFU1QoRWxmRmlsZSwgVW5wYWNrUmVsb2NhdGlvbnNBcm0zMikgeworICBSdW5VbnBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTMyIik7Cit9CisKK1RFU1QoRWxmRmlsZSwgVW5wYWNrUmVsb2NhdGlvbnNBcm02NCkgeworICBSdW5VbnBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTY0Iik7Cit9CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2VsZl90cmFpdHMuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfdHJhaXRzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDFiMDZjOAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfdHJhaXRzLmgKQEAgLTAsMCArMSw2NCBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBUYXJnZXQtc3BlY2lmaWMgRUxGIHR5cGUgdHJhaXRzLgorCisjaWZuZGVmIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfVFJBSVRTX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfVFJBSVRTX0hfCisKKyNpbmNsdWRlICJlbGYuaCIKKyNpbmNsdWRlICJsaWJlbGYuaCIKKworLy8gRUxGIGlzIGEgdHJhaXRzIHN0cnVjdHVyZSB1c2VkIHRvIHByb3ZpZGUgY29udmVuaWVudCBhbGlhc2VzIGZvcgorLy8gMzIvNjQgYml0IEVsZiB0eXBlcyBhbmQgZnVuY3Rpb25zLCBkZXBlbmRpbmcgb24gdGhlIHRhcmdldCBmaWxlLgorCitzdHJ1Y3QgRUxGMzJfdHJhaXRzIHsKKyAgdHlwZWRlZiBFbGYzMl9BZGRyIEFkZHI7CisgIHR5cGVkZWYgRWxmMzJfRHluIER5bjsKKyAgdHlwZWRlZiBFbGYzMl9FaGRyIEVoZHI7CisgIHR5cGVkZWYgRWxmMzJfT2ZmIE9mZjsKKyAgdHlwZWRlZiBFbGYzMl9QaGRyIFBoZHI7CisgIHR5cGVkZWYgRWxmMzJfUmVsIFJlbDsKKyAgdHlwZWRlZiBFbGYzMl9SZWxhIFJlbGE7CisgIHR5cGVkZWYgRWxmMzJfU2hkciBTaGRyOworICB0eXBlZGVmIEVsZjMyX1N3b3JkIFN3b3JkOworICB0eXBlZGVmIEVsZjMyX1N4d29yZCBTeHdvcmQ7CisgIHR5cGVkZWYgRWxmMzJfU3ltIFN5bTsKKyAgdHlwZWRlZiBFbGYzMl9Xb3JkIFdvcmQ7CisgIHR5cGVkZWYgRWxmMzJfWHdvcmQgWHdvcmQ7CisgIHR5cGVkZWYgRWxmMzJfSGFsZiBIYWxmOworCisgIHN0YXRpYyBpbmxpbmUgRWhkciogZ2V0ZWhkcihFbGYqIGVsZikgeyByZXR1cm4gZWxmMzJfZ2V0ZWhkcihlbGYpOyB9CisgIHN0YXRpYyBpbmxpbmUgUGhkciogZ2V0cGhkcihFbGYqIGVsZikgeyByZXR1cm4gZWxmMzJfZ2V0cGhkcihlbGYpOyB9CisgIHN0YXRpYyBpbmxpbmUgU2hkciogZ2V0c2hkcihFbGZfU2NuKiBzY24pIHsgcmV0dXJuIGVsZjMyX2dldHNoZHIoc2NuKTsgfQorICBzdGF0aWMgaW5saW5lIFdvcmQgZWxmX3JfdHlwZShXb3JkIGluZm8pIHsgcmV0dXJuIEVMRjMyX1JfVFlQRShpbmZvKTsgfQorICBzdGF0aWMgaW5saW5lIGludCBlbGZfc3RfdHlwZSh1aW50OF90IGluZm8pIHsgcmV0dXJuIEVMRjMyX1NUX1RZUEUoaW5mbyk7IH0KKyAgc3RhdGljIGlubGluZSBXb3JkIGVsZl9yX3N5bShXb3JkIGluZm8pIHsgcmV0dXJuIEVMRjMyX1JfU1lNKGluZm8pOyB9Cit9OworCitzdHJ1Y3QgRUxGNjRfdHJhaXRzIHsKKyAgdHlwZWRlZiBFbGY2NF9BZGRyIEFkZHI7CisgIHR5cGVkZWYgRWxmNjRfRHluIER5bjsKKyAgdHlwZWRlZiBFbGY2NF9FaGRyIEVoZHI7CisgIHR5cGVkZWYgRWxmNjRfT2ZmIE9mZjsKKyAgdHlwZWRlZiBFbGY2NF9QaGRyIFBoZHI7CisgIHR5cGVkZWYgRWxmNjRfUmVsIFJlbDsKKyAgdHlwZWRlZiBFbGY2NF9SZWxhIFJlbGE7CisgIHR5cGVkZWYgRWxmNjRfU2hkciBTaGRyOworICB0eXBlZGVmIEVsZjY0X1N3b3JkIFN3b3JkOworICB0eXBlZGVmIEVsZjY0X1N4d29yZCBTeHdvcmQ7CisgIHR5cGVkZWYgRWxmNjRfU3ltIFN5bTsKKyAgdHlwZWRlZiBFbGY2NF9Xb3JkIFdvcmQ7CisgIHR5cGVkZWYgRWxmNjRfWHdvcmQgWHdvcmQ7CisgIHR5cGVkZWYgRWxmNjRfSGFsZiBIYWxmOworCisgIHN0YXRpYyBpbmxpbmUgRWhkciogZ2V0ZWhkcihFbGYqIGVsZikgeyByZXR1cm4gZWxmNjRfZ2V0ZWhkcihlbGYpOyB9CisgIHN0YXRpYyBpbmxpbmUgUGhkciogZ2V0cGhkcihFbGYqIGVsZikgeyByZXR1cm4gZWxmNjRfZ2V0cGhkcihlbGYpOyB9CisgIHN0YXRpYyBpbmxpbmUgU2hkciogZ2V0c2hkcihFbGZfU2NuKiBzY24pIHsgcmV0dXJuIGVsZjY0X2dldHNoZHIoc2NuKTsgfQorICBzdGF0aWMgaW5saW5lIFh3b3JkIGVsZl9yX3R5cGUoWHdvcmQgaW5mbykgeyByZXR1cm4gRUxGNjRfUl9UWVBFKGluZm8pOyB9CisgIHN0YXRpYyBpbmxpbmUgaW50IGVsZl9zdF90eXBlKHVpbnQ4X3QgaW5mbykgeyByZXR1cm4gRUxGNjRfU1RfVFlQRShpbmZvKTsgfQorICBzdGF0aWMgaW5saW5lIFdvcmQgZWxmX3Jfc3ltKFh3b3JkIGluZm8pIHsgcmV0dXJuIEVMRjY0X1JfU1lNKGluZm8pOyB9Cit9OworCisjZW5kaWYgIC8vIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfVFJBSVRTX0hfCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvbWFpbi5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9tYWluLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhlOWRlNmQKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvbWFpbi5jYwpAQCAtMCwwICsxLDE1MCBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBUb29sIHRvIHBhY2sgYW5kIHVucGFjayByZWxhdGl2ZSByZWxvY2F0aW9ucyBpbiBhIHNoYXJlZCBsaWJyYXJ5LgorLy8KKy8vIEludm9rZSB3aXRoIC12IHRvIHRyYWNlIGFjdGlvbnMgdGFrZW4gd2hlbiBwYWNraW5nIG9yIHVucGFja2luZy4KKy8vIEludm9rZSB3aXRoIC1wIHRvIHBhZCByZW1vdmVkIHJlbG9jYXRpb25zIHdpdGggUl8qX05PTkUuICBTdXBwcmVzc2VzCisvLyBzaHJpbmtpbmcgb2YgLnJlbC5keW4uCisvLyBTZWUgUHJpbnRVc2FnZSgpIGJlbG93IGZvciBmdWxsIHVzYWdlIGRldGFpbHMuCisvLworLy8gTk9URTogQnJlYWtzIHdpdGggbGliZWxmIDAuMTUyLCB3aGljaCBpcyBidWdneS4gIGxpYmVsZiAwLjE1OCB3b3Jrcy4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxnZXRvcHQuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0cmluZz4KKworI2luY2x1ZGUgImRlYnVnLmgiCisjaW5jbHVkZSAiZWxmX2ZpbGUuaCIKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisjaW5jbHVkZSAibGliZWxmLmgiCisKKyNpbmNsdWRlICJuYXRpdmVoZWxwZXIvU2NvcGVkRmQuaCIKKworc3RhdGljIHZvaWQgUHJpbnRVc2FnZShjb25zdCBjaGFyKiBhcmd2MCkgeworICBzdGQ6OnN0cmluZyB0ZW1wb3JhcnkgPSBhcmd2MDsKKyAgY29uc3Qgc2l6ZV90IGxhc3Rfc2xhc2ggPSB0ZW1wb3JhcnkuZmluZF9sYXN0X29mKCIvIik7CisgIGlmIChsYXN0X3NsYXNoICE9IHRlbXBvcmFyeS5ucG9zKSB7CisgICAgdGVtcG9yYXJ5LmVyYXNlKDAsIGxhc3Rfc2xhc2ggKyAxKTsKKyAgfQorICBjb25zdCBjaGFyKiBiYXNlbmFtZSA9IHRlbXBvcmFyeS5jX3N0cigpOworCisgIHByaW50ZigKKyAgICAgICJVc2FnZTogJXMgWy11XSBbLXZdIFstcF0gZmlsZVxuXG4iCisgICAgICAiUGFjayBvciB1bnBhY2sgcmVsYXRpdmUgcmVsb2NhdGlvbnMgaW4gYSBzaGFyZWQgbGlicmFyeS5cblxuIgorICAgICAgIiAgLXUsIC0tdW5wYWNrICAgdW5wYWNrIHByZXZpb3VzbHkgcGFja2VkIHJlbGF0aXZlIHJlbG9jYXRpb25zXG4iCisgICAgICAiICAtdiwgLS12ZXJib3NlICB0cmFjZSBvYmplY3QgZmlsZSBtb2RpZmljYXRpb25zIChmb3IgZGVidWdnaW5nKVxuIgorICAgICAgIiAgLXAsIC0tcGFkICAgICAgZG8gbm90IHNocmluayByZWxvY2F0aW9ucywgYnV0IHBhZCAoZm9yIGRlYnVnZ2luZylcblxuIiwKKyAgICAgIGJhc2VuYW1lKTsKKworICBwcmludGYoCisgICAgICAiRGVidWcgc2VjdGlvbnMgYXJlIG5vdCBoYW5kbGVkLCBzbyBwYWNraW5nIHNob3VsZCBub3QgYmUgdXNlZCBvblxuIgorICAgICAgInNoYXJlZCBsaWJyYXJpZXMgY29tcGlsZWQgZm9yIGRlYnVnZ2luZyBvciBvdGhlcndpc2UgdW5zdHJpcHBlZC5cbiIpOworfQorCitpbnQgbWFpbihpbnQgYXJnYywgY2hhciogYXJndltdKSB7CisgIGJvb2wgaXNfdW5wYWNraW5nID0gZmFsc2U7CisgIGJvb2wgaXNfdmVyYm9zZSA9IGZhbHNlOworICBib29sIGlzX3BhZGRpbmcgPSBmYWxzZTsKKworICBzdGF0aWMgY29uc3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKyAgICB7InVucGFjayIsIDAsIDAsICd1J30sIHsidmVyYm9zZSIsIDAsIDAsICd2J30sIHsicGFkIiwgMCwgMCwgJ3AnfSwKKyAgICB7ImhlbHAiLCAwLCAwLCAnaCd9LCB7TlVMTCwgMCwgMCwgMH0KKyAgfTsKKyAgYm9vbCBoYXNfb3B0aW9ucyA9IHRydWU7CisgIHdoaWxlIChoYXNfb3B0aW9ucykgeworICAgIGludCBjID0gZ2V0b3B0X2xvbmcoYXJnYywgYXJndiwgInV2cGgiLCBvcHRpb25zLCBOVUxMKTsKKyAgICBzd2l0Y2ggKGMpIHsKKyAgICAgIGNhc2UgJ3UnOgorICAgICAgICBpc191bnBhY2tpbmcgPSB0cnVlOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgJ3YnOgorICAgICAgICBpc192ZXJib3NlID0gdHJ1ZTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlICdwJzoKKyAgICAgICAgaXNfcGFkZGluZyA9IHRydWU7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSAnaCc6CisgICAgICAgIFByaW50VXNhZ2UoYXJndlswXSk7CisgICAgICAgIHJldHVybiAwOworICAgICAgY2FzZSAnPyc6CisgICAgICAgIExPRyhJTkZPKSA8PCAiVHJ5ICciIDw8IGFyZ3ZbMF0gPDwgIiAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiI7CisgICAgICAgIHJldHVybiAxOworICAgICAgY2FzZSAtMToKKyAgICAgICAgaGFzX29wdGlvbnMgPSBmYWxzZTsKKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICBOT1RSRUFDSEVEKCk7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgfQorICBpZiAob3B0aW5kICE9IGFyZ2MgLSAxKSB7CisgICAgTE9HKElORk8pIDw8ICJUcnkgJyIgPDwgYXJndlswXSA8PCAiIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIjsKKyAgICByZXR1cm4gMTsKKyAgfQorCisgIGlmIChlbGZfdmVyc2lvbihFVl9DVVJSRU5UKSA9PSBFVl9OT05FKSB7CisgICAgTE9HKFdBUk5JTkcpIDw8ICJFbGYgTGlicmFyeSBpcyBvdXQgb2YgZGF0ZSEiOworICB9CisKKyAgY29uc3QgY2hhciogZmlsZSA9IGFyZ3ZbYXJnYyAtIDFdOworICBTY29wZWRGZCBmZChvcGVuKGZpbGUsIE9fUkRXUikpOworICBpZiAoZmQuZ2V0KCkgPT0gLTEpIHsKKyAgICBMT0coRVJST1IpIDw8IGZpbGUgPDwgIjogIiA8PCBzdHJlcnJvcihlcnJubyk7CisgICAgcmV0dXJuIDE7CisgIH0KKworICBpZiAoaXNfdmVyYm9zZSkKKyAgICByZWxvY2F0aW9uX3BhY2tlcjo6TG9nZ2VyOjpTZXRWZXJib3NlKDEpOworCisgIC8vIFdlIG5lZWQgdG8gZGV0ZWN0IGVsZiBjbGFzcyBpbiBvcmRlciB0byBjcmVhdGUKKyAgLy8gY29ycmVjdCBpbXBsZW1lbnRhdGlvbgorICB1aW50OF90IGVfaWRlbnRbRUlfTklERU5UXTsKKyAgaWYgKFRFTVBfRkFJTFVSRV9SRVRSWShyZWFkKGZkLmdldCgpLCBlX2lkZW50LCBFSV9OSURFTlQpICE9IEVJX05JREVOVCkpIHsKKyAgICBMT0coRVJST1IpIDw8IGZpbGUgPDwgIjogZmFpbGVkIHRvIHJlYWQgZWxmIGhlYWRlcjoiIDw8IHN0cmVycm9yKGVycm5vKTsKKyAgICByZXR1cm4gMTsKKyAgfQorCisgIGlmIChURU1QX0ZBSUxVUkVfUkVUUlkobHNlZWsoZmQuZ2V0KCksIDAsIFNFRUtfU0VUKSkgIT0gMCkgeworICAgIExPRyhFUlJPUikgPDwgZmlsZSA8PCAiOiBsc2VlayB0byAwIGZhaWxlZDoiIDw8IHN0cmVycm9yKGVycm5vKTsKKyAgICByZXR1cm4gMTsKKyAgfQorCisgIGJvb2wgc3RhdHVzID0gZmFsc2U7CisKKyAgaWYgKGVfaWRlbnRbRUlfQ0xBU1NdID09IEVMRkNMQVNTMzIpIHsKKyAgICByZWxvY2F0aW9uX3BhY2tlcjo6RWxmRmlsZTxFTEYzMl90cmFpdHM+IGVsZl9maWxlKGZkLmdldCgpKTsKKyAgICBlbGZfZmlsZS5TZXRQYWRkaW5nKGlzX3BhZGRpbmcpOworCisgICAgaWYgKGlzX3VucGFja2luZykgeworICAgICAgc3RhdHVzID0gZWxmX2ZpbGUuVW5wYWNrUmVsb2NhdGlvbnMoKTsKKyAgICB9IGVsc2UgeworICAgICAgc3RhdHVzID0gZWxmX2ZpbGUuUGFja1JlbG9jYXRpb25zKCk7CisgICAgfQorICB9IGVsc2UgaWYgKGVfaWRlbnRbRUlfQ0xBU1NdID09IEVMRkNMQVNTNjQpIHsKKyAgICByZWxvY2F0aW9uX3BhY2tlcjo6RWxmRmlsZTxFTEY2NF90cmFpdHM+IGVsZl9maWxlKGZkLmdldCgpKTsKKyAgICBlbGZfZmlsZS5TZXRQYWRkaW5nKGlzX3BhZGRpbmcpOworCisgICAgaWYgKGlzX3VucGFja2luZykgeworICAgICAgc3RhdHVzID0gZWxmX2ZpbGUuVW5wYWNrUmVsb2NhdGlvbnMoKTsKKyAgICB9IGVsc2UgeworICAgICAgc3RhdHVzID0gZWxmX2ZpbGUuUGFja1JlbG9jYXRpb25zKCk7CisgICAgfQorICB9IGVsc2UgeworICAgIExPRyhFUlJPUikgPDwgZmlsZSA8PCAiOiB1bmtub3duIEVMRkNMQVNTOiAiIDw8IGVfaWRlbnRbRUlfQ0xBU1NdOworICAgIHJldHVybiAxOworICB9CisKKyAgaWYgKCFzdGF0dXMpIHsKKyAgICBMT0coRVJST1IpIDw8IGZpbGUgPDwgIjogZmFpbGVkIHRvIHBhY2svdW5wYWNrIGZpbGUiOworICAgIHJldHVybiAxOworICB9CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvcGFja2VyLmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzM2MTFmCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5jYwpAQCAtMCwwICsxLDY3IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJwYWNrZXIuaCIKKworI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgImRlYnVnLmgiCisjaW5jbHVkZSAiZGVsdGFfZW5jb2Rlci5oIgorI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKyNpbmNsdWRlICJzbGViMTI4LmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIFBhY2sgcmVsb2NhdGlvbnMgaW50byBhIGdyb3VwIGVuY29kZWQgcGFja2VkIHJlcHJlc2VudGF0aW9uLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvblBhY2tlcjxFTEY+OjpQYWNrUmVsb2NhdGlvbnMoY29uc3Qgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiYgcmVsb2NhdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+KiBwYWNrZWQpIHsKKyAgLy8gUnVuLWxlbmd0aCBlbmNvZGUuCisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6QWRkcj4gcGFja2VkX3dvcmRzOworICBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+IGNvZGVjOworICBjb2RlYy5FbmNvZGUocmVsb2NhdGlvbnMsICZwYWNrZWRfd29yZHMpOworCisgIC8vIElmIGluc3VmZmljaWVudCBkYXRhIGRvIG5vdGhpbmcuCisgIGlmIChwYWNrZWRfd29yZHMuZW1wdHkoKSkKKyAgICByZXR1cm47CisKKyAgU2xlYjEyOEVuY29kZXI8dHlwZW5hbWUgRUxGOjpBZGRyPiBzbGViMTI4X2VuY29kZXI7CisKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gc2xlYjEyOF9wYWNrZWQ7CisKKyAgc2xlYjEyOF9lbmNvZGVyLkVucXVldWVBbGwocGFja2VkX3dvcmRzKTsKKyAgc2xlYjEyOF9lbmNvZGVyLkdldEVuY29kaW5nKCZzbGViMTI4X3BhY2tlZCk7CisKKyAgcGFja2VkLT5wdXNoX2JhY2soJ0EnKTsKKyAgcGFja2VkLT5wdXNoX2JhY2soJ1AnKTsKKyAgcGFja2VkLT5wdXNoX2JhY2soJ1MnKTsKKyAgcGFja2VkLT5wdXNoX2JhY2soJzInKTsKKyAgcGFja2VkLT5pbnNlcnQocGFja2VkLT5lbmQoKSwgc2xlYjEyOF9wYWNrZWQuYmVnaW4oKSwgc2xlYjEyOF9wYWNrZWQuZW5kKCkpOworfQorCisvLyBVbnBhY2sgcmVsYXRpdmUgcmVsb2NhdGlvbnMgZnJvbSBhIHJ1bi1sZW5ndGggZW5jb2RlZCBwYWNrZWQKKy8vIHJlcHJlc2VudGF0aW9uLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvblBhY2tlcjxFTEY+OjpVbnBhY2tSZWxvY2F0aW9ucygKKyAgICBjb25zdCBzdGQ6OnZlY3Rvcjx1aW50OF90PiYgcGFja2VkLAorICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4qIHJlbG9jYXRpb25zKSB7CisKKyAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpBZGRyPiBwYWNrZWRfd29yZHM7CisgIENIRUNLKHBhY2tlZC5zaXplKCkgPiA0ICYmCisgICAgICAgIHBhY2tlZFswXSA9PSAnQScgJiYKKyAgICAgICAgcGFja2VkWzFdID09ICdQJyAmJgorICAgICAgICBwYWNrZWRbMl0gPT0gJ1MnICYmCisgICAgICAgIHBhY2tlZFszXSA9PSAnMicpOworCisgIFNsZWIxMjhEZWNvZGVyPHR5cGVuYW1lIEVMRjo6QWRkcj4gZGVjb2RlcihwYWNrZWQsIDQpOworICBkZWNvZGVyLkRlcXVldWVBbGwoJnBhY2tlZF93b3Jkcyk7CisKKyAgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPiBjb2RlYzsKKyAgY29kZWMuRGVjb2RlKHBhY2tlZF93b3JkcywgcmVsb2NhdGlvbnMpOworfQorCit0ZW1wbGF0ZSBjbGFzcyBSZWxvY2F0aW9uUGFja2VyPEVMRjMyX3RyYWl0cz47Cit0ZW1wbGF0ZSBjbGFzcyBSZWxvY2F0aW9uUGFja2VyPEVMRjY0X3RyYWl0cz47CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5oIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzZjUwZTIKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvcGFja2VyLmgKQEAgLTAsMCArMSwzNyBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBQYWNrIHJlbGF0aXZlIHJlbG9jYXRpb25zIGludG8gYSBtb3JlIGNvbXBhY3QgZm9ybS4KKworI2lmbmRlZiBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfUEFDS0VSX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19QQUNLRVJfSF8KKworI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgImVsZi5oIgorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCisvLyBBIFJlbG9jYXRpb25QYWNrZXIgcGFja3MgdmVjdG9ycyBvZiByZWxvY2F0aW9ucyBpbnRvIG1vcmUKKy8vIGNvbXBhY3QgZm9ybXMsIGFuZCB1bnBhY2tzIHRoZW0gdG8gcmVwcm9kdWNlIHRoZSBwcmUtcGFja2VkIGRhdGEuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorY2xhc3MgUmVsb2NhdGlvblBhY2tlciB7CisgcHVibGljOgorICAvLyBQYWNrIHJlbG9jYXRpb25zIGludG8gYSBtb3JlIGNvbXBhY3QgZm9ybS4KKyAgLy8gfHJlbG9jYXRpb25zfCBpcyBhIHZlY3RvciBvZiByZWxvY2F0aW9uIHN0cnVjdHMuCisgIC8vIHxwYWNrZWR8IGlzIHRoZSB2ZWN0b3Igb2YgcGFja2VkIGJ5dGVzIGludG8gd2hpY2ggcmVsb2NhdGlvbnMgYXJlIHBhY2tlZC4KKyAgc3RhdGljIHZvaWQgUGFja1JlbG9jYXRpb25zKGNvbnN0IHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4mIHJlbG9jYXRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dWludDhfdD4qIHBhY2tlZCk7CisKKyAgLy8gVW5wYWNrIHJlbG9jYXRpb25zIGZyb20gdGhlaXIgbW9yZSBjb21wYWN0IGZvcm0uCisgIC8vIHxwYWNrZWR8IGlzIHRoZSB2ZWN0b3Igb2YgcGFja2VkIHJlbG9jYXRpb25zLgorICAvLyB8cmVsb2NhdGlvbnN8IGlzIGEgdmVjdG9yIG9mIHVucGFja2VkIHJlbG9jYXRpb24gc3RydWN0cy4KKyAgc3RhdGljIHZvaWQgVW5wYWNrUmVsb2NhdGlvbnMoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4mIHBhY2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiogcmVsb2NhdGlvbnMpOworfTsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCisKKyNlbmRpZiAgLy8gVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX1BBQ0tFUl9IXwpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlcl91bml0dGVzdC5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXJfdW5pdHRlc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDI0YjkyYwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXJfdW5pdHRlc3QuY2MKQEAgLTAsMCArMSwzMDAgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworI2luY2x1ZGUgInBhY2tlci5oIgorCisjaW5jbHVkZSA8dmVjdG9yPgorI2luY2x1ZGUgImVsZi5oIgorI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC5oIgorCisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBBZGRSZWxvY2F0aW9uKHR5cGVuYW1lIEVMRjo6QWRkciBhZGRyLAorICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6WHdvcmQgaW5mbywKKyAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6OlN4d29yZCBhZGRlbmQsCisgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiogcmVsb2NhdGlvbnMpIHsKKyAgdHlwZW5hbWUgRUxGOjpSZWxhIHJlbG9jYXRpb247CisgIHJlbG9jYXRpb24ucl9vZmZzZXQgPSBhZGRyOworICByZWxvY2F0aW9uLnJfaW5mbyA9IGluZm87CisgIHJlbG9jYXRpb24ucl9hZGRlbmQgPSBhZGRlbmQ7CisKKyAgcmVsb2NhdGlvbnMtPnB1c2hfYmFjayhyZWxvY2F0aW9uKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyBib29sIENoZWNrUmVsb2NhdGlvbih0eXBlbmFtZSBFTEY6OkFkZHIgYWRkciwKKyAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6WHdvcmQgaW5mbywKKyAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6U3h3b3JkIGFkZGVuZCwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHR5cGVuYW1lIEVMRjo6UmVsYSYgcmVsb2NhdGlvbikgeworICByZXR1cm4gcmVsb2NhdGlvbi5yX29mZnNldCA9PSBhZGRyICYmCisgICAgICByZWxvY2F0aW9uLnJfaW5mbyA9PSBpbmZvICYmCisgICAgICByZWxvY2F0aW9uLnJfYWRkZW5kID09IGFkZGVuZDsKK30KKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIERvUGFja05vQWRkZW5kKCkgeworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+IHJlbG9jYXRpb25zOworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBwYWNrZWQ7CisgIGJvb2wgaXNfMzIgPSBzaXplb2YodHlwZW5hbWUgRUxGOjpBZGRyKSA9PSA0OworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDAwLCAweDExLCAwLCAmcmVsb2NhdGlvbnMpOworICAvLyBUd28gbW9yZSByZWxvY2F0aW9ucywgNCBieXRlIGRlbHRhcy4KKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDQsIDB4MTEsIDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDA4LCAweDExLCAwLCAmcmVsb2NhdGlvbnMpOworICAvLyBUaHJlZSBtb3JlIHJlbG9jYXRpb25zLCA4IGJ5dGUgZGVsdGFzLgorICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAxMCwgMHgxMSwgMCwgJnJlbG9jYXRpb25zKTsKKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMTgsIDB4MTEsIDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDIwLCAweDExLCAwLCAmcmVsb2NhdGlvbnMpOworCisgIFJlbG9jYXRpb25QYWNrZXI8RUxGPiBwYWNrZXI7CisKKyAgcGFja2VkLmNsZWFyKCk7CisgIHBhY2tlci5QYWNrUmVsb2NhdGlvbnMocmVsb2NhdGlvbnMsICZwYWNrZWQpOworCisgIEFTU0VSVF9FUSgxOFUsIHBhY2tlZC5zaXplKCkpOworICAvLyBJZGVudGlmaWVyLgorICBzaXplX3QgbmR4ID0gMDsKKyAgRVhQRUNUX0VRKCdBJywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgnUCcsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoJ1MnLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKCcyJywgcGFja2VkW25keCsrXSk7CisgIC8vIHJlbG9jYXRpb24gY291bnQKKyAgRVhQRUNUX0VRKDYsIHBhY2tlZFtuZHgrK10pOworICAvLyBiYXNlIHJlbG9jYXRpb24gPSAweGQxY2RmZmZjIC0+IGZjLCBmZiwgYjcsIDhlLCA3ZC8wZCAoMzIvNjRiaXQpCisgIEVYUEVDVF9FUSgweGZjLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHhiNywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweDhlLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKGlzXzMyID8gMHg3ZCA6IDB4MGQsIHBhY2tlZFtuZHgrK10pOworICAvLyBmaXJzdCBncm91cAorICBFWFBFQ1RfRVEoMywgcGFja2VkW25keCsrXSk7ICAvLyBzaXplCisgIEVYUEVDVF9FUSgzLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgRVhQRUNUX0VRKDQsIHBhY2tlZFtuZHgrK10pOyAvLyByX29mZnNldF9kZWx0YQorICBFWFBFQ1RfRVEoMHgxMSwgcGFja2VkW25keCsrXSk7IC8vIHJfaW5mbworICAvLyBzZWNvbmQgZ3JvdXAKKyAgRVhQRUNUX0VRKDMsIHBhY2tlZFtuZHgrK10pOyAgLy8gc2l6ZQorICBFWFBFQ1RfRVEoMywgcGFja2VkW25keCsrXSk7IC8vIGZsYWdzCisgIEVYUEVDVF9FUSg4LCBwYWNrZWRbbmR4KytdKTsgLy8gcl9vZmZzZXRfZGVsdGEKKyAgRVhQRUNUX0VRKDB4MTEsIHBhY2tlZFtuZHgrK10pOyAvLyByX2luZm8KKworICBFWFBFQ1RfRVEobmR4LCBwYWNrZWQuc2l6ZSgpKTsKK30KKworVEVTVChQYWNrZXIsIFBhY2tOb0FkZGVuZDMyKSB7CisgIERvUGFja05vQWRkZW5kPEVMRjMyX3RyYWl0cz4oKTsKK30KKworVEVTVChQYWNrZXIsIFBhY2tOb0FkZGVuZDY0KSB7CisgIERvUGFja05vQWRkZW5kPEVMRjY0X3RyYWl0cz4oKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIERvVW5wYWNrTm9BZGRlbmQoKSB7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+IHBhY2tlZDsKKyAgYm9vbCBpc18zMiA9IHNpemVvZih0eXBlbmFtZSBFTEY6OkFkZHIpID09IDQ7CisgIHBhY2tlZC5wdXNoX2JhY2soJ0EnKTsKKyAgcGFja2VkLnB1c2hfYmFjaygnUCcpOworICBwYWNrZWQucHVzaF9iYWNrKCdTJyk7CisgIHBhY2tlZC5wdXNoX2JhY2soJzInKTsKKyAgLy8gcmVsb2NhdGlvbiBjb3VudAorICBwYWNrZWQucHVzaF9iYWNrKDYpOworICAvLyBiYXNlIHJlbG9jYXRpb24gPSAweGQxY2RmZmZjIC0+IGZjLCBmZiwgYjcsIDhlLCA3ZC8wZCAoMzIvNjRiaXQpCisgIHBhY2tlZC5wdXNoX2JhY2soMHhmYyk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHhmZik7CisgIHBhY2tlZC5wdXNoX2JhY2soMHhiNyk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHg4ZSk7CisgIHBhY2tlZC5wdXNoX2JhY2soaXNfMzIgPyAweDdkIDogMHgwZCk7CisgIC8vIGZpcnN0IGdyb3VwCisgIHBhY2tlZC5wdXNoX2JhY2soMyk7ICAvLyBzaXplCisgIHBhY2tlZC5wdXNoX2JhY2soMyk7IC8vIGZsYWdzCisgIHBhY2tlZC5wdXNoX2JhY2soNCk7IC8vIHJfb2Zmc2V0X2RlbHRhCisgIHBhY2tlZC5wdXNoX2JhY2soMHgxMSk7IC8vIHJfaW5mbworICAvLyBzZWNvbmQgZ3JvdXAKKyAgcGFja2VkLnB1c2hfYmFjaygzKTsgIC8vIHNpemUKKyAgcGFja2VkLnB1c2hfYmFjaygzKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjayg4KTsgLy8gcl9vZmZzZXRfZGVsdGEKKyAgcGFja2VkLnB1c2hfYmFjaygweDExKTsgLy8gcl9pbmZvCisKKyAgUmVsb2NhdGlvblBhY2tlcjxFTEY+IHBhY2tlcjsKKyAgcGFja2VyLlVucGFja1JlbG9jYXRpb25zKHBhY2tlZCwgJnJlbG9jYXRpb25zKTsKKworICBzaXplX3QgbmR4ID0gMDsKKyAgRVhQRUNUX0VRKDZVLCByZWxvY2F0aW9ucy5zaXplKCkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDAwLCAweDExLCAwLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwNCwgMHgxMSwgMCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDgsIDB4MTEsIDAsIHJlbG9jYXRpb25zW25keCsrXSkpOworCisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMTAsIDB4MTEsIDAsIHJlbG9jYXRpb25zW25keCsrXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDE4LCAweDExLCAwLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAyMCwgMHgxMSwgMCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisKKyAgRVhQRUNUX0VRKG5keCwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKK30KKworVEVTVChQYWNrZXIsIFVucGFja05vQWRkZW5kMzIpIHsKKyAgRG9VbnBhY2tOb0FkZGVuZDxFTEYzMl90cmFpdHM+KCk7Cit9CisKK1RFU1QoUGFja2VyLCBVbnBhY2tOb0FkZGVuZDY0KSB7CisgIERvVW5wYWNrTm9BZGRlbmQ8RUxGNjRfdHJhaXRzPigpOworfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgRG9QYWNrV2l0aEFkZGVuZCgpIHsKKyAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiByZWxvY2F0aW9uczsKKworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDAwLCAweDAxLCAxMDAyNCwgJnJlbG9jYXRpb25zKTsKKyAgLy8gVHdvIG1vcmUgcmVsb2NhdGlvbnMsIDQgYnl0ZSBvZmZzZXQgZGVsdGFzLCAxMiBieXRlIGFkZGVuZCBkZWx0YXMuCisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDA0LCAweDAxLCAxMDAxMiwgJnJlbG9jYXRpb25zKTsKKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDgsIDB4MDEsIDEwMDI0LCAmcmVsb2NhdGlvbnMpOworICAvLyBUaHJlZSBtb3JlIHJlbG9jYXRpb25zLCA4IGJ5dGUgZGVsdGFzLCAtMjQgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAxMCwgMHgwMSwgMTAwMDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDE4LCAweDAxLCA5OTc2LCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAyMCwgMHgwMSwgOTk1MiwgJnJlbG9jYXRpb25zKTsKKworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBwYWNrZWQ7CisKKyAgUmVsb2NhdGlvblBhY2tlcjxFTEY+IHBhY2tlcjsKKworICBwYWNrZWQuY2xlYXIoKTsKKyAgcGFja2VyLlBhY2tSZWxvY2F0aW9ucyhyZWxvY2F0aW9ucywgJnBhY2tlZCk7CisKKyAgRVhQRUNUX0VRKDI2VSwgcGFja2VkLnNpemUoKSk7CisgIHNpemVfdCBuZHggPSAwOworICAvLyBJZGVudGlmaWVyLgorICBFWFBFQ1RfRVEoJ0EnLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKCdQJywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgnUycsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoJzInLCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gUmVsb2NhdGlvbiBjb3VudAorICBFWFBFQ1RfRVEoNlUsIHBhY2tlZFtuZHgrK10pOworICAvLyBiYXNlIHJlbG9jYXRpb24gPSAweGQxY2RmZmZjIC0+IGZjLCBmZiwgYjcsIDhlLCAwZC83ZCAoZGVwZW5kaW5nIG9uIEVMRjo6QWRkcikKKyAgRVhQRUNUX0VRKDB4ZmMsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHhmZiwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweGI3LCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4OGUsIHBhY2tlZFtuZHgrK10pOworICBpZiAoc2l6ZW9mKHR5cGVuYW1lIEVMRjo6QWRkcikgPT0gOCkgeworICAgIC8vIHBvc2l0aXZlIGZvciB1aW50NjRfdAorICAgIEVYUEVDVF9FUSgweDBkLCBwYWNrZWRbbmR4KytdKTsKKyAgfSBlbHNlIHsKKyAgICAvLyBuZWdhdGl2ZSBmb3IgdWludDMyX3QKKyAgICBFWFBFQ1RfRVEoMHg3ZCwgcGFja2VkW25keCsrXSk7CisgIH0KKyAgLy8gZ3JvdXAgMQorICBFWFBFQ1RfRVEoMHgwMywgcGFja2VkW25keCsrXSk7IC8vIHNpemUKKyAgRVhQRUNUX0VRKDB4MGIsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworICBFWFBFQ1RfRVEoMHgwNCwgcGFja2VkW25keCsrXSk7IC8vIHJfb2Zmc2V0X2RlbHRhCisgIEVYUEVDVF9FUSgweDAxLCBwYWNrZWRbbmR4KytdKTsgLy8gcl9pbmZvCisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMTogMTAwMjQgPSAweGE4LCAweGNlLCAweDgwCisgIEVYUEVDVF9FUSgweGE4LCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4Y2UsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHgwMCwgcGFja2VkW25keCsrXSk7CisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMjogLTEyID0gMHg3NAorICBFWFBFQ1RfRVEoMHg3NCwgcGFja2VkW25keCsrXSk7CisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMzogKzEyID0gMHgwYworICBFWFBFQ1RfRVEoMHgwYywgcGFja2VkW25keCsrXSk7CisKKyAgLy8gZ3JvdXAgMgorICBFWFBFQ1RfRVEoMHgwMywgcGFja2VkW25keCsrXSk7IC8vIHNpemUKKyAgRVhQRUNUX0VRKDB4MGIsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworICBFWFBFQ1RfRVEoMHgwOCwgcGFja2VkW25keCsrXSk7IC8vIHJfb2Zmc2V0X2RlbHRhCisgIEVYUEVDVF9FUSgweDAxLCBwYWNrZWRbbmR4KytdKTsgLy8gcl9pbmZvCisKKyAgLy8gZ3JvdXAgMiAtIGFkZGVuZCAxOiAtMjQgPSAweDY4CisgIEVYUEVDVF9FUSgweDY4LCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gZ3JvdXAgMiAtIGFkZGVuZCAyOiAtMjQgPSAweDY4CisgIEVYUEVDVF9FUSgweDY4LCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gZ3JvdXAgMiAtIGFkZGVuZCAzOiAtMjQgPSAweDY4CisgIEVYUEVDVF9FUSgweDY4LCBwYWNrZWRbbmR4KytdKTsKKworICBFWFBFQ1RfRVEobmR4LCBwYWNrZWQuc2l6ZSgpKTsKK30KKworVEVTVChQYWNrZXIsIFBhY2tXaXRoQWRkZW5kKSB7CisgIERvUGFja1dpdGhBZGRlbmQ8RUxGMzJfdHJhaXRzPigpOworICBEb1BhY2tXaXRoQWRkZW5kPEVMRjY0X3RyYWl0cz4oKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIERvVW5wYWNrV2l0aEFkZGVuZCgpIHsKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gcGFja2VkOworICAvLyBJZGVudGlmaWVyLgorICBwYWNrZWQucHVzaF9iYWNrKCdBJyk7CisgIHBhY2tlZC5wdXNoX2JhY2soJ1AnKTsKKyAgcGFja2VkLnB1c2hfYmFjaygnUycpOworICBwYWNrZWQucHVzaF9iYWNrKCcyJyk7CisgIC8vIFJlbG9jYXRpb24gY291bnQKKyAgcGFja2VkLnB1c2hfYmFjayg2VSk7CisgIC8vIGJhc2UgcmVsb2NhdGlvbiA9IDB4ZDFjZGZmZmMgLT4gZmMsIGZmLCBiNywgOGUsIDBkCisgIHBhY2tlZC5wdXNoX2JhY2soMHhmYyk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHhmZik7CisgIHBhY2tlZC5wdXNoX2JhY2soMHhiNyk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHg4ZSk7CisgIGlmIChzaXplb2YodHlwZW5hbWUgRUxGOjpBZGRyKSA9PSA4KSB7CisgICAgLy8gcG9zaXRpdmUgZm9yIHVpbnQ2NF90CisgICAgcGFja2VkLnB1c2hfYmFjaygweDBkKTsKKyAgfSBlbHNlIHsKKyAgICAvLyBuZWdhdGl2ZSBmb3IgdWludDMyX3QKKyAgICBwYWNrZWQucHVzaF9iYWNrKDB4N2QpOworICB9CisgIC8vIGdyb3VwIDEKKyAgcGFja2VkLnB1c2hfYmFjaygweDAzKTsgLy8gc2l6ZQorICBwYWNrZWQucHVzaF9iYWNrKDB4MGIpOyAvLyBmbGFncworICBwYWNrZWQucHVzaF9iYWNrKDB4MDQpOyAvLyByX29mZnNldF9kZWx0YQorICBwYWNrZWQucHVzaF9iYWNrKDB4MDEpOyAvLyByX2luZm8KKyAgLy8gZ3JvdXAgMSAtIGFkZGVuZCAxOiAxMDAyNCA9IDB4YTgsIDB4Y2UsIDB4ODAKKyAgcGFja2VkLnB1c2hfYmFjaygweGE4KTsKKyAgcGFja2VkLnB1c2hfYmFjaygweGNlKTsKKyAgcGFja2VkLnB1c2hfYmFjaygweDAwKTsKKyAgLy8gZ3JvdXAgMSAtIGFkZGVuZCAyOiAtMTIgPSAweDc0CisgIHBhY2tlZC5wdXNoX2JhY2soMHg3NCk7CisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMzogKzEyID0gMHgwYworICBwYWNrZWQucHVzaF9iYWNrKDB4MGMpOworCisgIC8vIGdyb3VwIDIKKyAgcGFja2VkLnB1c2hfYmFjaygweDAzKTsgLy8gc2l6ZQorICBwYWNrZWQucHVzaF9iYWNrKDB4MGIpOyAvLyBmbGFncworICBwYWNrZWQucHVzaF9iYWNrKDB4MDgpOyAvLyByX29mZnNldF9kZWx0YQorICBwYWNrZWQucHVzaF9iYWNrKDB4MDEpOyAvLyByX2luZm8KKworICAvLyBncm91cCAyIC0gYWRkZW5kIDE6IC0yNCA9IDB4NjgKKyAgcGFja2VkLnB1c2hfYmFjaygweDY4KTsKKyAgLy8gZ3JvdXAgMiAtIGFkZGVuZCAyOiAtMjQgPSAweDY4CisgIHBhY2tlZC5wdXNoX2JhY2soMHg2OCk7CisgIC8vIGdyb3VwIDIgLSBhZGRlbmQgMzogLTI0ID0gMHg2OAorICBwYWNrZWQucHVzaF9iYWNrKDB4NjgpOworCisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisKKyAgUmVsb2NhdGlvblBhY2tlcjxFTEY+IHBhY2tlcjsKKworICByZWxvY2F0aW9ucy5jbGVhcigpOworICBwYWNrZXIuVW5wYWNrUmVsb2NhdGlvbnMocGFja2VkLCAmcmVsb2NhdGlvbnMpOworCisgIEVYUEVDVF9FUSg2VSwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKyAgc2l6ZV90IG5keCA9IDA7CisgIC8vIEluaXRpYWwgcmVsb2NhdGlvbi4KKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwMCwgMHgwMSwgMTAwMjQsIHJlbG9jYXRpb25zW25keCsrXSkpOworICAvLyBUd28gbW9yZSByZWxvY2F0aW9ucywgNCBieXRlIG9mZnNldCBkZWx0YXMsIDEyIGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwNCwgMHgwMSwgMTAwMTIsIHJlbG9jYXRpb25zW25keCsrXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDA4LCAweDAxLCAxMDAyNCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisgIC8vIFRocmVlIG1vcmUgcmVsb2NhdGlvbnMsIDggYnl0ZSBvZmZzZXQgZGVsdGFzLCAtMjQgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDEwLCAweDAxLCAxMDAwMCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMTgsIDB4MDEsIDk5NzYsIHJlbG9jYXRpb25zW25keCsrXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDIwLCAweDAxLCA5OTUyLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKworICBFWFBFQ1RfRVEobmR4LCByZWxvY2F0aW9ucy5zaXplKCkpOworfQorCitURVNUKFBhY2tlciwgVW5wYWNrV2l0aEFkZGVuZCkgeworICBEb1VucGFja1dpdGhBZGRlbmQ8RUxGMzJfdHJhaXRzPigpOworICBEb1VucGFja1dpdGhBZGRlbmQ8RUxGNjRfdHJhaXRzPigpOworfQorCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4LmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjguY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTJjMjFlMwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4LmNjCkBAIC0wLDAgKzEsMTMxIEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJzbGViMTI4LmgiCisKKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisKK25hbWVzcGFjZSB7CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorY2xhc3MgdWludF90cmFpdHMge307CisKK3RlbXBsYXRlIDw+CitjbGFzcyB1aW50X3RyYWl0czx1aW50NjRfdD4geworIHB1YmxpYzoKKyAgdHlwZWRlZiBpbnQ2NF90IGludF90OworfTsKKwordGVtcGxhdGUgPD4KK2NsYXNzIHVpbnRfdHJhaXRzPHVpbnQzMl90PiB7CisgcHVibGljOgorICB0eXBlZGVmIGludDMyX3QgaW50X3Q7Cit9OworCit9CisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIEVtcHR5IGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yIHRvIHNpbGVuY2UgY2hyb21pdW0tc3R5bGUuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90PgorU2xlYjEyOEVuY29kZXI8dWludF90Pjo6U2xlYjEyOEVuY29kZXIoKSB7IH0KKwordGVtcGxhdGUgPHR5cGVuYW1lIHVpbnRfdD4KK1NsZWIxMjhFbmNvZGVyPHVpbnRfdD46On5TbGViMTI4RW5jb2RlcigpIHsgfQorCisvLyBBZGQgYSBzaW5nbGUgdmFsdWUgdG8gdGhlIGVuY29kaW5nLiAgVmFsdWVzIGFyZSBlbmNvZGVkIHdpdGggdmFyaWFibGUKKy8vIGxlbmd0aC4gIFRoZSBsZWFzdCBzaWduaWZpY2FudCA3IGJpdHMgb2YgZWFjaCBieXRlIGhvbGQgNyBiaXRzIG9mIGRhdGEsCisvLyBhbmQgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IGlzIHNldCBvbiBlYWNoIGJ5dGUgZXhjZXB0IHRoZSBsYXN0LiAgVGhlCisvLyB2YWx1ZSBpcyBzaWduIGV4dGVuZGVkIHVwIHRvIGEgbXVsdGlwbGUgb2YgNyBiaXRzIChlbnN1cmluZyB0aGF0IHRoZQorLy8gbW9zdCBzaWduaWZpY2FudCBiaXQgaXMgemVybyBmb3IgYSBwb3NpdGl2ZSBudW1iZXIgYW5kIG9uZSBmb3IgYQorLy8gbmVnYXRpdmUgbnVtYmVyKS4KK3RlbXBsYXRlIDx0eXBlbmFtZSB1aW50X3Q+Cit2b2lkIFNsZWIxMjhFbmNvZGVyPHVpbnRfdD46OkVucXVldWUodWludF90IHZhbHVlKSB7CisgIHR5cGVkZWYgdHlwZW5hbWUgdWludF90cmFpdHM8dWludF90Pjo6aW50X3QgaW50X3Q7CisgIHN0YXRpYyBjb25zdCBzaXplX3Qgc2l6ZSA9IENIQVJfQklUICogc2l6ZW9mKHZhbHVlKTsKKworICBib29sIG1vcmUgPSB0cnVlOworICBjb25zdCBib29sIG5lZ2F0aXZlID0gc3RhdGljX2Nhc3Q8aW50X3Q+KHZhbHVlKSA8IDA7CisKKyAgd2hpbGUgKG1vcmUpIHsKKyAgICB1aW50OF90IGJ5dGUgPSB2YWx1ZSAmIDEyNzsKKyAgICB2YWx1ZSA+Pj0gNzsKKworICAgIC8vIFNpZ24gZXh0ZW5kIGlmIGVuY29kaW5nIGEgLXZlIHZhbHVlLgorICAgIGlmIChuZWdhdGl2ZSkKKyAgICAgIHZhbHVlIHw9IC0oc3RhdGljX2Nhc3Q8dWludF90PigxKSA8PCAoc2l6ZSAtIDcpKTsKKworICAgIC8vIFRoZSBzaWduIGJpdCBvZiBieXRlIGlzIHNlY29uZCBoaWdoIG9yZGVyIGJpdC4KKyAgICBjb25zdCBib29sIHNpZ25fYml0ID0gYnl0ZSAmIDY0OworICAgIGlmICgodmFsdWUgPT0gMCAmJiAhc2lnbl9iaXQpIHx8ICh2YWx1ZSA9PSBzdGF0aWNfY2FzdDx1aW50X3Q+KC0xKSAmJiBzaWduX2JpdCkpCisgICAgICBtb3JlID0gZmFsc2U7CisgICAgZWxzZQorICAgICAgYnl0ZSB8PSAxMjg7CisgICAgZW5jb2RpbmdfLnB1c2hfYmFjayhieXRlKTsKKyAgfQorfQorCisvLyBBZGQgYSB2ZWN0b3Igb2YgdmFsdWVzIHRvIHRoZSBlbmNvZGluZy4KK3RlbXBsYXRlIDx0eXBlbmFtZSB1aW50X3Q+Cit2b2lkIFNsZWIxMjhFbmNvZGVyPHVpbnRfdD46OkVucXVldWVBbGwoY29uc3Qgc3RkOjp2ZWN0b3I8dWludF90PiYgdmFsdWVzKSB7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdmFsdWVzLnNpemUoKTsgKytpKSB7CisgICAgRW5xdWV1ZSh2YWx1ZXNbaV0pOworICB9Cit9CisKKy8vIENyZWF0ZSBhIG5ldyBkZWNvZGVyIGZvciB0aGUgZ2l2ZW4gZW5jb2RlZCBzdHJlYW0uCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90PgorU2xlYjEyOERlY29kZXI8dWludF90Pjo6U2xlYjEyOERlY29kZXIoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4mIGVuY29kaW5nLCBzaXplX3Qgc3RhcnRfd2l0aCkgeworICBlbmNvZGluZ18gPSBlbmNvZGluZzsKKyAgY3Vyc29yXyA9IHN0YXJ0X3dpdGg7Cit9CisKKy8vIEVtcHR5IGRlc3RydWN0b3IgdG8gc2lsZW5jZSBjaHJvbWl1bS1zdHlsZS4KK3RlbXBsYXRlIDx0eXBlbmFtZSB1aW50X3Q+CitTbGViMTI4RGVjb2Rlcjx1aW50X3Q+Ojp+U2xlYjEyOERlY29kZXIoKSB7IH0KKworLy8gRGVjb2RlIGFuZCByZXRyaWV2ZSBhIHNpbmdsZSB2YWx1ZSBmcm9tIHRoZSBlbmNvZGluZy4gIENvbnN1bWUgYnl0ZXMKKy8vIHVudGlsIG9uZSB3aXRob3V0IGl0cyBtb3N0IHNpZ25pZmljYW50IGJpdCBpcyBmb3VuZCwgYW5kIHJlLWZvcm0gdGhlCisvLyB2YWx1ZSBmcm9tIHRoZSA3IGJpdCBmaWVsZHMgb2YgdGhlIGJ5dGVzIGNvbnN1bWVkLgordGVtcGxhdGUgPHR5cGVuYW1lIHVpbnRfdD4KK3VpbnRfdCBTbGViMTI4RGVjb2Rlcjx1aW50X3Q+OjpEZXF1ZXVlKCkgeworICB1aW50X3QgdmFsdWUgPSAwOworICBzdGF0aWMgY29uc3Qgc2l6ZV90IHNpemUgPSBDSEFSX0JJVCAqIHNpemVvZih2YWx1ZSk7CisKKyAgc2l6ZV90IHNoaWZ0ID0gMDsKKyAgdWludDhfdCBieXRlOworCisgIC8vIExvb3AgdW50aWwgd2UgcmVhY2ggYSBieXRlIHdpdGggaXRzIGhpZ2ggb3JkZXIgYml0IGNsZWFyLgorICBkbyB7CisgICAgYnl0ZSA9IGVuY29kaW5nX1tjdXJzb3JfKytdOworICAgIHZhbHVlIHw9IChzdGF0aWNfY2FzdDx1aW50X3Q+KGJ5dGUgJiAxMjcpIDw8IHNoaWZ0KTsKKyAgICBzaGlmdCArPSA3OworICB9IHdoaWxlIChieXRlICYgMTI4KTsKKworICAvLyBUaGUgc2lnbiBiaXQgaXMgc2Vjb25kIGhpZ2ggb3JkZXIgYml0IG9mIHRoZSBmaW5hbCBieXRlIGRlY29kZWQuCisgIC8vIFNpZ24gZXh0ZW5kIGlmIHZhbHVlIGlzIC12ZSBhbmQgd2UgZGlkIG5vdCBzaGlmdCBhbGwgb2YgaXQuCisgIGlmIChzaGlmdCA8IHNpemUgJiYgKGJ5dGUgJiA2NCkpCisgICAgdmFsdWUgfD0gLShzdGF0aWNfY2FzdDx1aW50X3Q+KDEpIDw8IHNoaWZ0KTsKKworICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludF90Pih2YWx1ZSk7Cit9CisKKy8vIERlY29kZSBhbmQgcmV0cmlldmUgYWxsIHJlbWFpbmluZyB2YWx1ZXMgZnJvbSB0aGUgZW5jb2RpbmcuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90Pgordm9pZCBTbGViMTI4RGVjb2Rlcjx1aW50X3Q+OjpEZXF1ZXVlQWxsKHN0ZDo6dmVjdG9yPHVpbnRfdD4qIHZhbHVlcykgeworICB3aGlsZSAoY3Vyc29yXyA8IGVuY29kaW5nXy5zaXplKCkpIHsKKyAgICB2YWx1ZXMtPnB1c2hfYmFjayhEZXF1ZXVlKCkpOworICB9Cit9CisKK3RlbXBsYXRlIGNsYXNzIFNsZWIxMjhFbmNvZGVyPHVpbnQzMl90PjsKK3RlbXBsYXRlIGNsYXNzIFNsZWIxMjhFbmNvZGVyPHVpbnQ2NF90PjsKK3RlbXBsYXRlIGNsYXNzIFNsZWIxMjhEZWNvZGVyPHVpbnQzMl90PjsKK3RlbXBsYXRlIGNsYXNzIFNsZWIxMjhEZWNvZGVyPHVpbnQ2NF90PjsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvc2xlYjEyOC5oIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYTYzZjY2Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjguaApAQCAtMCwwICsxLDc2IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8vIFNMRUIxMjggZW5jb2RlciBhbmQgZGVjb2RlciBmb3IgcGFja2VkIHJlbGF0aXZlIHJlbG9jYXRpb25zLgorLy8KKy8vIFBhY2tlZCByZWxvY2F0aW9ucyBjb25zaXN0IG9mIGEgbGFyZ2UgbnVtYmVyIG9mIHJlbGF0aXZlbHkgc21hbGwKKy8vIGludGVnZXIgdmFsdWVzLiAgRW5jb2RpbmcgdGhlc2UgYXMgTEVCMTI4IHNhdmVzIHNwYWNlLgorLy8KKy8vIEZvciBtb3JlIG9uIExFQjEyOCBzZWUgaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MRUIxMjguCisKKyNpZm5kZWYgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX1NMRUIxMjhfSF8KKyNkZWZpbmUgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX1NMRUIxMjhfSF8KKworI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworLy8gRW5jb2RlIHBhY2tlZCB3b3JkcyBhcyBhIHNpZ25lZCBMRUIxMjggYnl0ZSBzdHJlYW0uCit0ZW1wbGF0ZTx0eXBlbmFtZSBpbnRfdD4KK2NsYXNzIFNsZWIxMjhFbmNvZGVyIHsKKyBwdWJsaWM6CisgIC8vIEV4cGxpY2l0IChidXQgZW1wdHkpIGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yLCBmb3IgY2hyb21pdW0tc3R5bGUuCisgIFNsZWIxMjhFbmNvZGVyKCk7CisgIH5TbGViMTI4RW5jb2RlcigpOworCisgIC8vIEFkZCBhIHZhbHVlIHRvIHRoZSBlbmNvZGluZyBzdHJlYW0uCisgIC8vIHx2YWx1ZXwgaXMgdGhlIHNpZ25lZCBpbnQgdG8gYWRkLgorICB2b2lkIEVucXVldWUoaW50X3QgdmFsdWUpOworCisgIC8vIEFkZCBhIHZlY3RvciBvZiB2YWx1ZXMgdG8gdGhlIGVuY29kaW5nIHN0cmVhbS4KKyAgLy8gfHZhbHVlc3wgaXMgdGhlIHZlY3RvciBvZiBzaWduZWQgaW50cyB0byBhZGQuCisgIHZvaWQgRW5xdWV1ZUFsbChjb25zdCBzdGQ6OnZlY3RvcjxpbnRfdD4mIHZhbHVlcyk7CisKKyAgLy8gUmV0cmlldmUgdGhlIGVuY29kZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlcy4KKyAgLy8gfGVuY29kaW5nfCBpcyB0aGUgcmV0dXJuZWQgdmVjdG9yIG9mIGVuY29kZWQgZGF0YS4KKyAgdm9pZCBHZXRFbmNvZGluZyhzdGQ6OnZlY3Rvcjx1aW50OF90PiogZW5jb2RpbmcpIHsgKmVuY29kaW5nID0gZW5jb2RpbmdfOyB9CisKKyBwcml2YXRlOgorICAvLyBHcm93YWJsZSB2ZWN0b3IgaG9sZGluZyB0aGUgZW5jb2RlZCBMRUIxMjggc3RyZWFtLgorICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBlbmNvZGluZ187Cit9OworCisvLyBEZWNvZGUgYSBMRUIxMjggYnl0ZSBzdHJlYW0gdG8gcHJvZHVjZSBwYWNrZWQgd29yZHMuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgaW50X3Q+CitjbGFzcyBTbGViMTI4RGVjb2RlciB7CisgcHVibGljOgorICAvLyBDcmVhdGUgYSBuZXcgZGVjb2RlciBmb3IgdGhlIGdpdmVuIGVuY29kZWQgc3RyZWFtLgorICAvLyB8ZW5jb2Rpbmd8IGlzIHRoZSB2ZWN0b3Igb2YgZW5jb2RlZCBkYXRhLgorICBleHBsaWNpdCBTbGViMTI4RGVjb2Rlcihjb25zdCBzdGQ6OnZlY3Rvcjx1aW50OF90PiYgZW5jb2RpbmcsIHNpemVfdCBzdGFydF93aXRoKTsKKworICAvLyBFeHBsaWNpdCAoYnV0IGVtcHR5KSBkZXN0cnVjdG9yLCBmb3IgY2hyb21pdW0tc3R5bGUuCisgIH5TbGViMTI4RGVjb2RlcigpOworCisgIC8vIFJldHJpZXZlIHRoZSBuZXh0IHZhbHVlIGZyb20gdGhlIGVuY29kZWQgc3RyZWFtLgorICBpbnRfdCBEZXF1ZXVlKCk7CisKKyAgLy8gUmV0cmlldmUgYWxsIHJlbWFpbmluZyB2YWx1ZXMgZnJvbSB0aGUgZW5jb2RlZCBzdHJlYW0uCisgIC8vIHx2YWx1ZXN8IGlzIHRoZSB2ZWN0b3Igb2YgZGVjb2RlZCBkYXRhLgorICB2b2lkIERlcXVldWVBbGwoc3RkOjp2ZWN0b3I8aW50X3Q+KiB2YWx1ZXMpOworCisgcHJpdmF0ZToKKyAgLy8gRW5jb2RlZCBMRUIxMjggc3RyZWFtLgorICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBlbmNvZGluZ187CisKKyAgLy8gQ3Vyc29yIGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RyZWFtIHJldHJpZXZhbCBwb2ludC4KKyAgc2l6ZV90IGN1cnNvcl87Cit9OworCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKKworI2VuZGlmICAvLyBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfU0xFQjEyOF9IXwpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjhfdW5pdHRlc3QuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvc2xlYjEyOF91bml0dGVzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OWE1NTNjCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjhfdW5pdHRlc3QuY2MKQEAgLTAsMCArMSwxNjYgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworI2luY2x1ZGUgInNsZWIxMjguaCIKKworI2luY2x1ZGUgPHZlY3Rvcj4KKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworVEVTVChTbGViMTI4LCBFbmNvZGVyNjQpIHsKKyAgc3RkOjp2ZWN0b3I8dWludDY0X3Q+IHZhbHVlczsKKyAgdmFsdWVzLnB1c2hfYmFjayg2MjQ0ODVVKTsKKyAgdmFsdWVzLnB1c2hfYmFjaygwVSk7CisgIHZhbHVlcy5wdXNoX2JhY2soMVUpOworICB2YWx1ZXMucHVzaF9iYWNrKDYzVSk7CisgIHZhbHVlcy5wdXNoX2JhY2soNjRVKTsKKyAgdmFsdWVzLnB1c2hfYmFjayhzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTEpKTsKKyAgdmFsdWVzLnB1c2hfYmFjayhzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTYyNDQ4NSkpOworCisgIFNsZWIxMjhFbmNvZGVyPHVpbnQ2NF90PiBlbmNvZGVyOworICBlbmNvZGVyLkVucXVldWVBbGwodmFsdWVzKTsKKworICBlbmNvZGVyLkVucXVldWUoMjE0NzQ4MzY0N1UpOworICBlbmNvZGVyLkVucXVldWUoc3RhdGljX2Nhc3Q8dWludDY0X3Q+KC0yMTQ3NDgzNjQ4KSk7CisgIGVuY29kZXIuRW5xdWV1ZSg5MjIzMzcyMDM2ODU0Nzc1ODA3VUxMKTsKKyAgZW5jb2Rlci5FbnF1ZXVlKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtOTIyMzM3MjAzNjg1NDc3NTgwN0xMIC0gMSkpOworCisgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+IGVuY29kaW5nOworICBlbmNvZGVyLkdldEVuY29kaW5nKCZlbmNvZGluZyk7CisKKyAgRVhQRUNUX0VRKDQydSwgZW5jb2Rpbmcuc2l6ZSgpKTsKKyAgLy8gNjI0NDg1CisgIEVYUEVDVF9FUSgweGU1LCBlbmNvZGluZ1swXSk7CisgIEVYUEVDVF9FUSgweDhlLCBlbmNvZGluZ1sxXSk7CisgIEVYUEVDVF9FUSgweDI2LCBlbmNvZGluZ1syXSk7CisgIC8vIDAKKyAgRVhQRUNUX0VRKDB4MDAsIGVuY29kaW5nWzNdKTsKKyAgLy8gMQorICBFWFBFQ1RfRVEoMHgwMSwgZW5jb2RpbmdbNF0pOworICAvLyA2MworICBFWFBFQ1RfRVEoMHgzZiwgZW5jb2RpbmdbNV0pOworICAvLyA2NAorICBFWFBFQ1RfRVEoMHhjMCwgZW5jb2RpbmdbNl0pOworICBFWFBFQ1RfRVEoMHgwMCwgZW5jb2RpbmdbN10pOworICAvLyAtMQorICBFWFBFQ1RfRVEoMHg3ZiwgZW5jb2RpbmdbOF0pOworICAvLyAtNjI0NDg1CisgIEVYUEVDVF9FUSgweDliLCBlbmNvZGluZ1s5XSk7CisgIEVYUEVDVF9FUSgweGYxLCBlbmNvZGluZ1sxMF0pOworICBFWFBFQ1RfRVEoMHg1OSwgZW5jb2RpbmdbMTFdKTsKKyAgLy8gMjE0NzQ4MzY0NworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMTJdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzEzXSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1sxNF0pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMTVdKTsKKyAgRVhQRUNUX0VRKDB4MDcsIGVuY29kaW5nWzE2XSk7CisgIC8vIC0yMTQ3NDgzNjQ4CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1sxN10pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMThdKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzE5XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1syMF0pOworICBFWFBFQ1RfRVEoMHg3OCwgZW5jb2RpbmdbMjFdKTsKKyAgLy8gOTIyMzM3MjAzNjg1NDc3NTgwNworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMjJdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzIzXSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1syNF0pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMjVdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzI2XSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1syN10pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMjhdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzI5XSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1szMF0pOworICBFWFBFQ1RfRVEoMHgwMCwgZW5jb2RpbmdbMzFdKTsKKyAgLy8gLTkyMjMzNzIwMzY4NTQ3NzU4MDgKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzMyXSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szM10pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMzRdKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzM1XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szNl0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMzddKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzM4XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szOV0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbNDBdKTsKKyAgRVhQRUNUX0VRKDB4N2YsIGVuY29kaW5nWzQxXSk7Cit9CisKK1RFU1QoU2xlYjEyOCwgRGVjb2RlcikgeworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBlbmNvZGluZzsKKyAgLy8gNjI0NDg1CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGU1KTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4OGUpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHgyNik7CisgIC8vIDAKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4MDApOworICAvLyAxCisgIGVuY29kaW5nLnB1c2hfYmFjaygweDAxKTsKKyAgLy8gNjMKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4M2YpOworICAvLyA2NAorICBlbmNvZGluZy5wdXNoX2JhY2soMHhjMCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDAwKTsKKyAgLy8gLTEKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4N2YpOworICAvLyAtNjI0NDg1CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDliKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZjEpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg1OSk7CisgIC8vIDIxNDc0ODM2NDcKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHgwNyk7CisgIC8vIC0yMTQ3NDgzNjQ4CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4NzgpOworICAvLyA5MjIzMzcyMDM2ODU0Nzc1ODA3CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDAwKTsKKyAgLy8gLTkyMjMzNzIwMzY4NTQ3NzU4MDgKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4N2YpOworCisgIFNsZWIxMjhEZWNvZGVyPHVpbnQ2NF90PiBkZWNvZGVyKGVuY29kaW5nLCAwKTsKKworICBFWFBFQ1RfRVEoNjI0NDg1VSwgZGVjb2Rlci5EZXF1ZXVlKCkpOworCisgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiBkZXF1ZXVlZDsKKyAgZGVjb2Rlci5EZXF1ZXVlQWxsKCZkZXF1ZXVlZCk7CisKKyAgRVhQRUNUX0VRKDEwVSwgZGVxdWV1ZWQuc2l6ZSgpKTsKKyAgRVhQRUNUX0VRKDBVLCBkZXF1ZXVlZFswXSk7CisgIEVYUEVDVF9FUSgxVSwgZGVxdWV1ZWRbMV0pOworICBFWFBFQ1RfRVEoNjNVLCBkZXF1ZXVlZFsyXSk7CisgIEVYUEVDVF9FUSg2NFUsIGRlcXVldWVkWzNdKTsKKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtMSksIGRlcXVldWVkWzRdKTsKKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtNjI0NDg1KSwgZGVxdWV1ZWRbNV0pOworICBFWFBFQ1RfRVEoMjE0NzQ4MzY0N1UsIGRlcXVldWVkWzZdKTsKKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtMjE0NzQ4MzY0OCksIGRlcXVldWVkWzddKTsKKyAgRVhQRUNUX0VRKDkyMjMzNzIwMzY4NTQ3NzU4MDdVTEwsIGRlcXVldWVkWzhdKTsKKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtOTIyMzM3MjAzNjg1NDc3NTgwN0xMIC0gMSksIGRlcXVldWVkWzldKTsKK30KKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzLmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jcy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZTFmYTc0Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jcy5jYwpAQCAtMCwwICsxLDEwMTQgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gVGVzdCBkYXRhIGZvciBwYWNraW5nL3VucGFja2luZy4gIFdoZW4gY29tcGlsZWQsIGNyZWF0ZXMgYSBydW4gb2YKKy8vIHJlbGF0aXZlIHJlbG9jYXRpb25zLgorLy8KKy8vIFNlZSBnZW5lcmF0ZV9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3Muc2ggZm9yIGluc3RydWN0aW9ucyBvbiBob3cgdG8gYnVpbGQKKy8vIHVuaXQgdGVzdCBkYXRhIGZyb20gdGhpcyBzb3VyY2UgZmlsZS4KKworY29uc3QgaW50IGkgPSAwOworCisvLyBHZW5lcmF0b3I6CisvLyBweXRob24gLWMgJ2ZvciBpIGluIHhyYW5nZSgwLDEwMDApOnByaW50ImNvbnN0IHZvaWQqIHBvaW50ZXJfJWQgPSAmaTsiJWknCitjb25zdCB2b2lkKiBwb2ludGVyXzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTkgPSAmaTsKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzIuc28gYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyLnNvCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjZjZTZkMGMKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyLnNvCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzJfcGFja2VkLnNvIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm0zMl9wYWNrZWQuc28KbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNmFjMmVlZgotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzJfcGFja2VkLnNvCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtNjQuc28gYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0LnNvCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjk0NWI0NTAKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0LnNvCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtNjRfcGFja2VkLnNvIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm02NF9wYWNrZWQuc28KbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYTJiMDAzOQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtNjRfcGFja2VkLnNvCkJpbmFyeSBmaWxlcyBkaWZmZXIK